From 6fad7d4305c046f7bec5cee982f485c7ac745184 Mon Sep 17 00:00:00 2001 From: Aimocs Date: Mon, 10 Jun 2024 13:02:24 +0545 Subject: [PATCH] added new --- dist/index.js | 6 +- dist/licenses.txt | 32 +- myignorefile1.txt | 4 + myignorefile2.txt | 3 + package-lock.json | 9452 +++++++++++++++++++++++++++++++++++++++++++++ package.json | 3 +- src/main.ts | 156 +- yarn.lock | 1461 +++---- 8 files changed, 10291 insertions(+), 826 deletions(-) create mode 100644 myignorefile1.txt create mode 100644 myignorefile2.txt create mode 100644 package-lock.json diff --git a/dist/index.js b/dist/index.js index 8484a10..c36e695 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1,5 +1,5 @@ -(()=>{var e={9538:function(e,t,n){"use strict";var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){if(s===undefined)s=n;var i=Object.getOwnPropertyDescriptor(t,n);if(!i||("get"in i?!t.__esModule:i.writable||i.configurable)){i={enumerable:true,get:function(){return t[n]}}}Object.defineProperty(e,s,i)}:function(e,t,n,s){if(s===undefined)s=n;e[s]=t[n]});var i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.prototype.hasOwnProperty.call(e,n))s(t,e,n);i(t,e);return t};var h=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:true});t.file_to_string=t.delete_folder=t.is_uploadable=t.parse_ignored=t.parse_uploads=t.main=void 0;const l=n(2186);const u=h(n(2002));const g=h(n(7684));const f=o(n(7147));const E={dot:true,matchBase:true};function parse_uploads(e){const t=e.split("\n").filter((e=>e!=""));const n=[];if(t.length===0)throw new Error("No uploads were defined, please ensure you enter destinations to upload your files!");t.forEach((e=>{const[t,s]=e.trim().split("=>");if(!t||!s)return;n.push({from:t.trim(),to:s.trim()})}));return n}t.parse_uploads=parse_uploads;function parse_ignored(e){return e.trim().split("\n").map(Function.prototype.call,String.prototype.trim).filter((e=>e!=""))}t.parse_ignored=parse_ignored;function is_uploadable(e,t){return!t.some((t=>(0,u.default)(e,t,E)))}t.is_uploadable=is_uploadable;async function delete_folder(e,t){(0,l.debug)(`Deleting existing files for ${t}...`);try{await e.rmdir(t,true);(0,l.debug)(`${t} has been deleted.`)}catch(e){(0,l.warning)(`Unable to delete existing files for ${t} before upload. ${e}`)}}t.delete_folder=delete_folder;function file_to_string(e){if(e===""){return""}return f.readFileSync(e,{encoding:"utf8"})}t.file_to_string=file_to_string;async function main(e){try{const t=(0,l.getInput)("server");const n=(0,l.getInput)("username");const s=(0,l.getInput)("password");const i=(0,l.getInput)("passphrase");const o=(0,l.getInput)("key");const h=+(0,l.getInput)("port");const u=(0,l.getBooleanInput)("dry-run");const f=parse_uploads((0,l.getInput)("uploads"));const E=parse_ignored((0,l.getInput)("ignore"));const I=(0,l.getBooleanInput)("delete");if(E.length==0){E.push(...parse_ignored(file_to_string((0,l.getInput)("ignore-from"))))}(0,l.debug)(`Connecting to ${t} as ${n} on port ${h}`);await e.connect({host:t,username:n,password:s,port:h,privateKey:o,passphrase:i});const C=(0,g.default)(1);const B=[];if(I&&!u){(0,l.debug)("Deleting folders...");for(const t of f){B.push(C((()=>delete_folder(e,t.to))))}await Promise.allSettled(B);B.splice(0,B.length)}(0,l.debug)("Preparing upload...");for(const t of f){(0,l.debug)(`Processing ${t.from} to ${t.to}`);B.push(C((()=>e.uploadDir(t.from,t.to,{filter:e=>{if(is_uploadable(e,E)){if(u){console.log(`${e} would have been uploaded`);return false}else{(0,l.debug)(`Uploading ${e}`);return true}}(0,l.debug)(`Skipping ${e}`);return false}}))))}await Promise.allSettled(B);(0,l.debug)("Upload process complete.");await e.end();(0,l.debug)("Session ended.")}catch(e){(0,l.setFailed)(e.message)}}t.main=main},7351:function(e,t,n){"use strict";var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){if(s===undefined)s=n;Object.defineProperty(e,s,{enumerable:true,get:function(){return t[n]}})}:function(e,t,n,s){if(s===undefined)s=n;e[s]=t[n]});var i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.hasOwnProperty.call(e,n))s(t,e,n);i(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.issue=t.issueCommand=void 0;const h=o(n(2037));const l=n(5278);function issueCommand(e,t,n){const s=new Command(e,t,n);process.stdout.write(s.toString()+h.EOL)}t.issueCommand=issueCommand;function issue(e,t=""){issueCommand(e,{},t)}t.issue=issue;const u="::";class Command{constructor(e,t,n){if(!e){e="missing.command"}this.command=e;this.properties=t;this.message=n}toString(){let e=u+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let t=true;for(const n in this.properties){if(this.properties.hasOwnProperty(n)){const s=this.properties[n];if(s){if(t){t=false}else{e+=","}e+=`${n}=${escapeProperty(s)}`}}}}e+=`${u}${escapeData(this.message)}`;return e}}function escapeData(e){return l.toCommandValue(e).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}function escapeProperty(e){return l.toCommandValue(e).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}},2186:function(e,t,n){"use strict";var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){if(s===undefined)s=n;Object.defineProperty(e,s,{enumerable:true,get:function(){return t[n]}})}:function(e,t,n,s){if(s===undefined)s=n;e[s]=t[n]});var i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.hasOwnProperty.call(e,n))s(t,e,n);i(t,e);return t};var h=this&&this.__awaiter||function(e,t,n,s){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,i){function fulfilled(e){try{step(s.next(e))}catch(e){i(e)}}function rejected(e){try{step(s["throw"](e))}catch(e){i(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.getIDToken=t.getState=t.saveState=t.group=t.endGroup=t.startGroup=t.info=t.notice=t.warning=t.error=t.debug=t.isDebug=t.setFailed=t.setCommandEcho=t.setOutput=t.getBooleanInput=t.getMultilineInput=t.getInput=t.addPath=t.setSecret=t.exportVariable=t.ExitCode=void 0;const l=n(7351);const u=n(717);const g=n(5278);const f=o(n(2037));const E=o(n(1017));const I=n(8041);var C;(function(e){e[e["Success"]=0]="Success";e[e["Failure"]=1]="Failure"})(C=t.ExitCode||(t.ExitCode={}));function exportVariable(e,t){const n=g.toCommandValue(t);process.env[e]=n;const s=process.env["GITHUB_ENV"]||"";if(s){return u.issueFileCommand("ENV",u.prepareKeyValueMessage(e,t))}l.issueCommand("set-env",{name:e},n)}t.exportVariable=exportVariable;function setSecret(e){l.issueCommand("add-mask",{},e)}t.setSecret=setSecret;function addPath(e){const t=process.env["GITHUB_PATH"]||"";if(t){u.issueFileCommand("PATH",e)}else{l.issueCommand("add-path",{},e)}process.env["PATH"]=`${e}${E.delimiter}${process.env["PATH"]}`}t.addPath=addPath;function getInput(e,t){const n=process.env[`INPUT_${e.replace(/ /g,"_").toUpperCase()}`]||"";if(t&&t.required&&!n){throw new Error(`Input required and not supplied: ${e}`)}if(t&&t.trimWhitespace===false){return n}return n.trim()}t.getInput=getInput;function getMultilineInput(e,t){const n=getInput(e,t).split("\n").filter((e=>e!==""));if(t&&t.trimWhitespace===false){return n}return n.map((e=>e.trim()))}t.getMultilineInput=getMultilineInput;function getBooleanInput(e,t){const n=["true","True","TRUE"];const s=["false","False","FALSE"];const i=getInput(e,t);if(n.includes(i))return true;if(s.includes(i))return false;throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${e}\n`+`Support boolean input list: \`true | True | TRUE | false | False | FALSE\``)}t.getBooleanInput=getBooleanInput;function setOutput(e,t){const n=process.env["GITHUB_OUTPUT"]||"";if(n){return u.issueFileCommand("OUTPUT",u.prepareKeyValueMessage(e,t))}process.stdout.write(f.EOL);l.issueCommand("set-output",{name:e},g.toCommandValue(t))}t.setOutput=setOutput;function setCommandEcho(e){l.issue("echo",e?"on":"off")}t.setCommandEcho=setCommandEcho;function setFailed(e){process.exitCode=C.Failure;error(e)}t.setFailed=setFailed;function isDebug(){return process.env["RUNNER_DEBUG"]==="1"}t.isDebug=isDebug;function debug(e){l.issueCommand("debug",{},e)}t.debug=debug;function error(e,t={}){l.issueCommand("error",g.toCommandProperties(t),e instanceof Error?e.toString():e)}t.error=error;function warning(e,t={}){l.issueCommand("warning",g.toCommandProperties(t),e instanceof Error?e.toString():e)}t.warning=warning;function notice(e,t={}){l.issueCommand("notice",g.toCommandProperties(t),e instanceof Error?e.toString():e)}t.notice=notice;function info(e){process.stdout.write(e+f.EOL)}t.info=info;function startGroup(e){l.issue("group",e)}t.startGroup=startGroup;function endGroup(){l.issue("endgroup")}t.endGroup=endGroup;function group(e,t){return h(this,void 0,void 0,(function*(){startGroup(e);let n;try{n=yield t()}finally{endGroup()}return n}))}t.group=group;function saveState(e,t){const n=process.env["GITHUB_STATE"]||"";if(n){return u.issueFileCommand("STATE",u.prepareKeyValueMessage(e,t))}l.issueCommand("save-state",{name:e},g.toCommandValue(t))}t.saveState=saveState;function getState(e){return process.env[`STATE_${e}`]||""}t.getState=getState;function getIDToken(e){return h(this,void 0,void 0,(function*(){return yield I.OidcClient.getIDToken(e)}))}t.getIDToken=getIDToken;var B=n(1327);Object.defineProperty(t,"summary",{enumerable:true,get:function(){return B.summary}});var Q=n(1327);Object.defineProperty(t,"markdownSummary",{enumerable:true,get:function(){return Q.markdownSummary}});var p=n(2981);Object.defineProperty(t,"toPosixPath",{enumerable:true,get:function(){return p.toPosixPath}});Object.defineProperty(t,"toWin32Path",{enumerable:true,get:function(){return p.toWin32Path}});Object.defineProperty(t,"toPlatformPath",{enumerable:true,get:function(){return p.toPlatformPath}})},717:function(e,t,n){"use strict";var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){if(s===undefined)s=n;Object.defineProperty(e,s,{enumerable:true,get:function(){return t[n]}})}:function(e,t,n,s){if(s===undefined)s=n;e[s]=t[n]});var i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.hasOwnProperty.call(e,n))s(t,e,n);i(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.prepareKeyValueMessage=t.issueFileCommand=void 0;const h=o(n(7147));const l=o(n(2037));const u=n(5840);const g=n(5278);function issueFileCommand(e,t){const n=process.env[`GITHUB_${e}`];if(!n){throw new Error(`Unable to find environment variable for file command ${e}`)}if(!h.existsSync(n)){throw new Error(`Missing file at path: ${n}`)}h.appendFileSync(n,`${g.toCommandValue(t)}${l.EOL}`,{encoding:"utf8"})}t.issueFileCommand=issueFileCommand;function prepareKeyValueMessage(e,t){const n=`ghadelimiter_${u.v4()}`;const s=g.toCommandValue(t);if(e.includes(n)){throw new Error(`Unexpected input: name should not contain the delimiter "${n}"`)}if(s.includes(n)){throw new Error(`Unexpected input: value should not contain the delimiter "${n}"`)}return`${e}<<${n}${l.EOL}${s}${l.EOL}${n}`}t.prepareKeyValueMessage=prepareKeyValueMessage},8041:function(e,t,n){"use strict";var s=this&&this.__awaiter||function(e,t,n,s){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,i){function fulfilled(e){try{step(s.next(e))}catch(e){i(e)}}function rejected(e){try{step(s["throw"](e))}catch(e){i(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.OidcClient=void 0;const i=n(6255);const o=n(5526);const h=n(2186);class OidcClient{static createHttpClient(e=true,t=10){const n={allowRetries:e,maxRetries:t};return new i.HttpClient("actions/oidc-client",[new o.BearerCredentialHandler(OidcClient.getRequestToken())],n)}static getRequestToken(){const e=process.env["ACTIONS_ID_TOKEN_REQUEST_TOKEN"];if(!e){throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable")}return e}static getIDTokenUrl(){const e=process.env["ACTIONS_ID_TOKEN_REQUEST_URL"];if(!e){throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable")}return e}static getCall(e){var t;return s(this,void 0,void 0,(function*(){const n=OidcClient.createHttpClient();const s=yield n.getJson(e).catch((e=>{throw new Error(`Failed to get ID Token. \n \n Error Code : ${e.statusCode}\n \n Error Message: ${e.message}`)}));const i=(t=s.result)===null||t===void 0?void 0:t.value;if(!i){throw new Error("Response json body do not have ID Token field")}return i}))}static getIDToken(e){return s(this,void 0,void 0,(function*(){try{let t=OidcClient.getIDTokenUrl();if(e){const n=encodeURIComponent(e);t=`${t}&audience=${n}`}h.debug(`ID token url is ${t}`);const n=yield OidcClient.getCall(t);h.setSecret(n);return n}catch(e){throw new Error(`Error message: ${e.message}`)}}))}}t.OidcClient=OidcClient},2981:function(e,t,n){"use strict";var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){if(s===undefined)s=n;Object.defineProperty(e,s,{enumerable:true,get:function(){return t[n]}})}:function(e,t,n,s){if(s===undefined)s=n;e[s]=t[n]});var i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.hasOwnProperty.call(e,n))s(t,e,n);i(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.toPlatformPath=t.toWin32Path=t.toPosixPath=void 0;const h=o(n(1017));function toPosixPath(e){return e.replace(/[\\]/g,"/")}t.toPosixPath=toPosixPath;function toWin32Path(e){return e.replace(/[/]/g,"\\")}t.toWin32Path=toWin32Path;function toPlatformPath(e){return e.replace(/[/\\]/g,h.sep)}t.toPlatformPath=toPlatformPath},1327:function(e,t,n){"use strict";var s=this&&this.__awaiter||function(e,t,n,s){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,i){function fulfilled(e){try{step(s.next(e))}catch(e){i(e)}}function rejected(e){try{step(s["throw"](e))}catch(e){i(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.summary=t.markdownSummary=t.SUMMARY_DOCS_URL=t.SUMMARY_ENV_VAR=void 0;const i=n(2037);const o=n(7147);const{access:h,appendFile:l,writeFile:u}=o.promises;t.SUMMARY_ENV_VAR="GITHUB_STEP_SUMMARY";t.SUMMARY_DOCS_URL="https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";class Summary{constructor(){this._buffer=""}filePath(){return s(this,void 0,void 0,(function*(){if(this._filePath){return this._filePath}const e=process.env[t.SUMMARY_ENV_VAR];if(!e){throw new Error(`Unable to find environment variable for $${t.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`)}try{yield h(e,o.constants.R_OK|o.constants.W_OK)}catch(t){throw new Error(`Unable to access summary file: '${e}'. Check if the file has correct read/write permissions.`)}this._filePath=e;return this._filePath}))}wrap(e,t,n={}){const s=Object.entries(n).map((([e,t])=>` ${e}="${t}"`)).join("");if(!t){return`<${e}${s}>`}return`<${e}${s}>${t}`}write(e){return s(this,void 0,void 0,(function*(){const t=!!(e===null||e===void 0?void 0:e.overwrite);const n=yield this.filePath();const s=t?u:l;yield s(n,this._buffer,{encoding:"utf8"});return this.emptyBuffer()}))}clear(){return s(this,void 0,void 0,(function*(){return this.emptyBuffer().write({overwrite:true})}))}stringify(){return this._buffer}isEmptyBuffer(){return this._buffer.length===0}emptyBuffer(){this._buffer="";return this}addRaw(e,t=false){this._buffer+=e;return t?this.addEOL():this}addEOL(){return this.addRaw(i.EOL)}addCodeBlock(e,t){const n=Object.assign({},t&&{lang:t});const s=this.wrap("pre",this.wrap("code",e),n);return this.addRaw(s).addEOL()}addList(e,t=false){const n=t?"ol":"ul";const s=e.map((e=>this.wrap("li",e))).join("");const i=this.wrap(n,s);return this.addRaw(i).addEOL()}addTable(e){const t=e.map((e=>{const t=e.map((e=>{if(typeof e==="string"){return this.wrap("td",e)}const{header:t,data:n,colspan:s,rowspan:i}=e;const o=t?"th":"td";const h=Object.assign(Object.assign({},s&&{colspan:s}),i&&{rowspan:i});return this.wrap(o,n,h)})).join("");return this.wrap("tr",t)})).join("");const n=this.wrap("table",t);return this.addRaw(n).addEOL()}addDetails(e,t){const n=this.wrap("details",this.wrap("summary",e)+t);return this.addRaw(n).addEOL()}addImage(e,t,n){const{width:s,height:i}=n||{};const o=Object.assign(Object.assign({},s&&{width:s}),i&&{height:i});const h=this.wrap("img",null,Object.assign({src:e,alt:t},o));return this.addRaw(h).addEOL()}addHeading(e,t){const n=`h${t}`;const s=["h1","h2","h3","h4","h5","h6"].includes(n)?n:"h1";const i=this.wrap(s,e);return this.addRaw(i).addEOL()}addSeparator(){const e=this.wrap("hr",null);return this.addRaw(e).addEOL()}addBreak(){const e=this.wrap("br",null);return this.addRaw(e).addEOL()}addQuote(e,t){const n=Object.assign({},t&&{cite:t});const s=this.wrap("blockquote",e,n);return this.addRaw(s).addEOL()}addLink(e,t){const n=this.wrap("a",e,{href:t});return this.addRaw(n).addEOL()}}const g=new Summary;t.markdownSummary=g;t.summary=g},5278:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.toCommandProperties=t.toCommandValue=void 0;function toCommandValue(e){if(e===null||e===undefined){return""}else if(typeof e==="string"||e instanceof String){return e}return JSON.stringify(e)}t.toCommandValue=toCommandValue;function toCommandProperties(e){if(!Object.keys(e).length){return{}}return{title:e.title,file:e.file,line:e.startLine,endLine:e.endLine,col:e.startColumn,endColumn:e.endColumn}}t.toCommandProperties=toCommandProperties},5526:function(e,t){"use strict";var n=this&&this.__awaiter||function(e,t,n,s){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,i){function fulfilled(e){try{step(s.next(e))}catch(e){i(e)}}function rejected(e){try{step(s["throw"](e))}catch(e){i(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.PersonalAccessTokenCredentialHandler=t.BearerCredentialHandler=t.BasicCredentialHandler=void 0;class BasicCredentialHandler{constructor(e,t){this.username=e;this.password=t}prepareRequest(e){if(!e.headers){throw Error("The request has no headers")}e.headers["Authorization"]=`Basic ${Buffer.from(`${this.username}:${this.password}`).toString("base64")}`}canHandleAuthentication(){return false}handleAuthentication(){return n(this,void 0,void 0,(function*(){throw new Error("not implemented")}))}}t.BasicCredentialHandler=BasicCredentialHandler;class BearerCredentialHandler{constructor(e){this.token=e}prepareRequest(e){if(!e.headers){throw Error("The request has no headers")}e.headers["Authorization"]=`Bearer ${this.token}`}canHandleAuthentication(){return false}handleAuthentication(){return n(this,void 0,void 0,(function*(){throw new Error("not implemented")}))}}t.BearerCredentialHandler=BearerCredentialHandler;class PersonalAccessTokenCredentialHandler{constructor(e){this.token=e}prepareRequest(e){if(!e.headers){throw Error("The request has no headers")}e.headers["Authorization"]=`Basic ${Buffer.from(`PAT:${this.token}`).toString("base64")}`}canHandleAuthentication(){return false}handleAuthentication(){return n(this,void 0,void 0,(function*(){throw new Error("not implemented")}))}}t.PersonalAccessTokenCredentialHandler=PersonalAccessTokenCredentialHandler},6255:function(e,t,n){"use strict";var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){if(s===undefined)s=n;var i=Object.getOwnPropertyDescriptor(t,n);if(!i||("get"in i?!t.__esModule:i.writable||i.configurable)){i={enumerable:true,get:function(){return t[n]}}}Object.defineProperty(e,s,i)}:function(e,t,n,s){if(s===undefined)s=n;e[s]=t[n]});var i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.prototype.hasOwnProperty.call(e,n))s(t,e,n);i(t,e);return t};var h=this&&this.__awaiter||function(e,t,n,s){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,i){function fulfilled(e){try{step(s.next(e))}catch(e){i(e)}}function rejected(e){try{step(s["throw"](e))}catch(e){i(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.HttpClient=t.isHttps=t.HttpClientResponse=t.HttpClientError=t.getProxyUrl=t.MediaTypes=t.Headers=t.HttpCodes=void 0;const l=o(n(3685));const u=o(n(5687));const g=o(n(9835));const f=o(n(4294));const E=n(1773);var I;(function(e){e[e["OK"]=200]="OK";e[e["MultipleChoices"]=300]="MultipleChoices";e[e["MovedPermanently"]=301]="MovedPermanently";e[e["ResourceMoved"]=302]="ResourceMoved";e[e["SeeOther"]=303]="SeeOther";e[e["NotModified"]=304]="NotModified";e[e["UseProxy"]=305]="UseProxy";e[e["SwitchProxy"]=306]="SwitchProxy";e[e["TemporaryRedirect"]=307]="TemporaryRedirect";e[e["PermanentRedirect"]=308]="PermanentRedirect";e[e["BadRequest"]=400]="BadRequest";e[e["Unauthorized"]=401]="Unauthorized";e[e["PaymentRequired"]=402]="PaymentRequired";e[e["Forbidden"]=403]="Forbidden";e[e["NotFound"]=404]="NotFound";e[e["MethodNotAllowed"]=405]="MethodNotAllowed";e[e["NotAcceptable"]=406]="NotAcceptable";e[e["ProxyAuthenticationRequired"]=407]="ProxyAuthenticationRequired";e[e["RequestTimeout"]=408]="RequestTimeout";e[e["Conflict"]=409]="Conflict";e[e["Gone"]=410]="Gone";e[e["TooManyRequests"]=429]="TooManyRequests";e[e["InternalServerError"]=500]="InternalServerError";e[e["NotImplemented"]=501]="NotImplemented";e[e["BadGateway"]=502]="BadGateway";e[e["ServiceUnavailable"]=503]="ServiceUnavailable";e[e["GatewayTimeout"]=504]="GatewayTimeout"})(I||(t.HttpCodes=I={}));var C;(function(e){e["Accept"]="accept";e["ContentType"]="content-type"})(C||(t.Headers=C={}));var B;(function(e){e["ApplicationJson"]="application/json"})(B||(t.MediaTypes=B={}));function getProxyUrl(e){const t=g.getProxyUrl(new URL(e));return t?t.href:""}t.getProxyUrl=getProxyUrl;const Q=[I.MovedPermanently,I.ResourceMoved,I.SeeOther,I.TemporaryRedirect,I.PermanentRedirect];const p=[I.BadGateway,I.ServiceUnavailable,I.GatewayTimeout];const y=["OPTIONS","GET","DELETE","HEAD"];const w=10;const b=5;class HttpClientError extends Error{constructor(e,t){super(e);this.name="HttpClientError";this.statusCode=t;Object.setPrototypeOf(this,HttpClientError.prototype)}}t.HttpClientError=HttpClientError;class HttpClientResponse{constructor(e){this.message=e}readBody(){return h(this,void 0,void 0,(function*(){return new Promise((e=>h(this,void 0,void 0,(function*(){let t=Buffer.alloc(0);this.message.on("data",(e=>{t=Buffer.concat([t,e])}));this.message.on("end",(()=>{e(t.toString())}))}))))}))}readBodyBuffer(){return h(this,void 0,void 0,(function*(){return new Promise((e=>h(this,void 0,void 0,(function*(){const t=[];this.message.on("data",(e=>{t.push(e)}));this.message.on("end",(()=>{e(Buffer.concat(t))}))}))))}))}}t.HttpClientResponse=HttpClientResponse;function isHttps(e){const t=new URL(e);return t.protocol==="https:"}t.isHttps=isHttps;class HttpClient{constructor(e,t,n){this._ignoreSslError=false;this._allowRedirects=true;this._allowRedirectDowngrade=false;this._maxRedirects=50;this._allowRetries=false;this._maxRetries=1;this._keepAlive=false;this._disposed=false;this.userAgent=e;this.handlers=t||[];this.requestOptions=n;if(n){if(n.ignoreSslError!=null){this._ignoreSslError=n.ignoreSslError}this._socketTimeout=n.socketTimeout;if(n.allowRedirects!=null){this._allowRedirects=n.allowRedirects}if(n.allowRedirectDowngrade!=null){this._allowRedirectDowngrade=n.allowRedirectDowngrade}if(n.maxRedirects!=null){this._maxRedirects=Math.max(n.maxRedirects,0)}if(n.keepAlive!=null){this._keepAlive=n.keepAlive}if(n.allowRetries!=null){this._allowRetries=n.allowRetries}if(n.maxRetries!=null){this._maxRetries=n.maxRetries}}}options(e,t){return h(this,void 0,void 0,(function*(){return this.request("OPTIONS",e,null,t||{})}))}get(e,t){return h(this,void 0,void 0,(function*(){return this.request("GET",e,null,t||{})}))}del(e,t){return h(this,void 0,void 0,(function*(){return this.request("DELETE",e,null,t||{})}))}post(e,t,n){return h(this,void 0,void 0,(function*(){return this.request("POST",e,t,n||{})}))}patch(e,t,n){return h(this,void 0,void 0,(function*(){return this.request("PATCH",e,t,n||{})}))}put(e,t,n){return h(this,void 0,void 0,(function*(){return this.request("PUT",e,t,n||{})}))}head(e,t){return h(this,void 0,void 0,(function*(){return this.request("HEAD",e,null,t||{})}))}sendStream(e,t,n,s){return h(this,void 0,void 0,(function*(){return this.request(e,t,n,s)}))}getJson(e,t={}){return h(this,void 0,void 0,(function*(){t[C.Accept]=this._getExistingOrDefaultHeader(t,C.Accept,B.ApplicationJson);const n=yield this.get(e,t);return this._processResponse(n,this.requestOptions)}))}postJson(e,t,n={}){return h(this,void 0,void 0,(function*(){const s=JSON.stringify(t,null,2);n[C.Accept]=this._getExistingOrDefaultHeader(n,C.Accept,B.ApplicationJson);n[C.ContentType]=this._getExistingOrDefaultHeader(n,C.ContentType,B.ApplicationJson);const i=yield this.post(e,s,n);return this._processResponse(i,this.requestOptions)}))}putJson(e,t,n={}){return h(this,void 0,void 0,(function*(){const s=JSON.stringify(t,null,2);n[C.Accept]=this._getExistingOrDefaultHeader(n,C.Accept,B.ApplicationJson);n[C.ContentType]=this._getExistingOrDefaultHeader(n,C.ContentType,B.ApplicationJson);const i=yield this.put(e,s,n);return this._processResponse(i,this.requestOptions)}))}patchJson(e,t,n={}){return h(this,void 0,void 0,(function*(){const s=JSON.stringify(t,null,2);n[C.Accept]=this._getExistingOrDefaultHeader(n,C.Accept,B.ApplicationJson);n[C.ContentType]=this._getExistingOrDefaultHeader(n,C.ContentType,B.ApplicationJson);const i=yield this.patch(e,s,n);return this._processResponse(i,this.requestOptions)}))}request(e,t,n,s){return h(this,void 0,void 0,(function*(){if(this._disposed){throw new Error("Client has already been disposed.")}const i=new URL(t);let o=this._prepareRequest(e,i,s);const h=this._allowRetries&&y.includes(e)?this._maxRetries+1:1;let l=0;let u;do{u=yield this.requestRaw(o,n);if(u&&u.message&&u.message.statusCode===I.Unauthorized){let e;for(const t of this.handlers){if(t.canHandleAuthentication(u)){e=t;break}}if(e){return e.handleAuthentication(this,o,n)}else{return u}}let t=this._maxRedirects;while(u.message.statusCode&&Q.includes(u.message.statusCode)&&this._allowRedirects&&t>0){const h=u.message.headers["location"];if(!h){break}const l=new URL(h);if(i.protocol==="https:"&&i.protocol!==l.protocol&&!this._allowRedirectDowngrade){throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.")}yield u.readBody();if(l.hostname!==i.hostname){for(const e in s){if(e.toLowerCase()==="authorization"){delete s[e]}}}o=this._prepareRequest(e,l,s);u=yield this.requestRaw(o,n);t--}if(!u.message.statusCode||!p.includes(u.message.statusCode)){return u}l+=1;if(l{function callbackForResult(e,t){if(e){s(e)}else if(!t){s(new Error("Unknown error"))}else{n(t)}}this.requestRawWithCallback(e,t,callbackForResult)}))}))}requestRawWithCallback(e,t,n){if(typeof t==="string"){if(!e.options.headers){e.options.headers={}}e.options.headers["Content-Length"]=Buffer.byteLength(t,"utf8")}let s=false;function handleResult(e,t){if(!s){s=true;n(e,t)}}const i=e.httpModule.request(e.options,(e=>{const t=new HttpClientResponse(e);handleResult(undefined,t)}));let o;i.on("socket",(e=>{o=e}));i.setTimeout(this._socketTimeout||3*6e4,(()=>{if(o){o.end()}handleResult(new Error(`Request timeout: ${e.options.path}`))}));i.on("error",(function(e){handleResult(e)}));if(t&&typeof t==="string"){i.write(t,"utf8")}if(t&&typeof t!=="string"){t.on("close",(function(){i.end()}));t.pipe(i)}else{i.end()}}getAgent(e){const t=new URL(e);return this._getAgent(t)}getAgentDispatcher(e){const t=new URL(e);const n=g.getProxyUrl(t);const s=n&&n.hostname;if(!s){return}return this._getProxyAgentDispatcher(t,n)}_prepareRequest(e,t,n){const s={};s.parsedUrl=t;const i=s.parsedUrl.protocol==="https:";s.httpModule=i?u:l;const o=i?443:80;s.options={};s.options.host=s.parsedUrl.hostname;s.options.port=s.parsedUrl.port?parseInt(s.parsedUrl.port):o;s.options.path=(s.parsedUrl.pathname||"")+(s.parsedUrl.search||"");s.options.method=e;s.options.headers=this._mergeHeaders(n);if(this.userAgent!=null){s.options.headers["user-agent"]=this.userAgent}s.options.agent=this._getAgent(s.parsedUrl);if(this.handlers){for(const e of this.handlers){e.prepareRequest(s.options)}}return s}_mergeHeaders(e){if(this.requestOptions&&this.requestOptions.headers){return Object.assign({},lowercaseKeys(this.requestOptions.headers),lowercaseKeys(e||{}))}return lowercaseKeys(e||{})}_getExistingOrDefaultHeader(e,t,n){let s;if(this.requestOptions&&this.requestOptions.headers){s=lowercaseKeys(this.requestOptions.headers)[t]}return e[t]||s||n}_getAgent(e){let t;const n=g.getProxyUrl(e);const s=n&&n.hostname;if(this._keepAlive&&s){t=this._proxyAgent}if(this._keepAlive&&!s){t=this._agent}if(t){return t}const i=e.protocol==="https:";let o=100;if(this.requestOptions){o=this.requestOptions.maxSockets||l.globalAgent.maxSockets}if(n&&n.hostname){const e={maxSockets:o,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})};let s;const h=n.protocol==="https:";if(i){s=h?f.httpsOverHttps:f.httpsOverHttp}else{s=h?f.httpOverHttps:f.httpOverHttp}t=s(e);this._proxyAgent=t}if(this._keepAlive&&!t){const e={keepAlive:this._keepAlive,maxSockets:o};t=i?new u.Agent(e):new l.Agent(e);this._agent=t}if(!t){t=i?u.globalAgent:l.globalAgent}if(i&&this._ignoreSslError){t.options=Object.assign(t.options||{},{rejectUnauthorized:false})}return t}_getProxyAgentDispatcher(e,t){let n;if(this._keepAlive){n=this._proxyAgentDispatcher}if(n){return n}const s=e.protocol==="https:";n=new E.ProxyAgent(Object.assign({uri:t.href,pipelining:!this._keepAlive?0:1},(t.username||t.password)&&{token:`${t.username}:${t.password}`}));this._proxyAgentDispatcher=n;if(s&&this._ignoreSslError){n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:false})}return n}_performExponentialBackoff(e){return h(this,void 0,void 0,(function*(){e=Math.min(w,e);const t=b*Math.pow(2,e);return new Promise((e=>setTimeout((()=>e()),t)))}))}_processResponse(e,t){return h(this,void 0,void 0,(function*(){return new Promise(((n,s)=>h(this,void 0,void 0,(function*(){const i=e.message.statusCode||0;const o={statusCode:i,result:null,headers:{}};if(i===I.NotFound){n(o)}function dateTimeDeserializer(e,t){if(typeof t==="string"){const e=new Date(t);if(!isNaN(e.valueOf())){return e}}return t}let h;let l;try{l=yield e.readBody();if(l&&l.length>0){if(t&&t.deserializeDates){h=JSON.parse(l,dateTimeDeserializer)}else{h=JSON.parse(l)}o.result=h}o.headers=e.message.headers}catch(e){}if(i>299){let e;if(h&&h.message){e=h.message}else if(l&&l.length>0){e=l}else{e=`Failed request: (${i})`}const t=new HttpClientError(e,i);t.result=o.result;s(t)}else{n(o)}}))))}))}}t.HttpClient=HttpClient;const lowercaseKeys=e=>Object.keys(e).reduce(((t,n)=>(t[n.toLowerCase()]=e[n],t)),{})},9835:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.checkBypass=t.getProxyUrl=void 0;function getProxyUrl(e){const t=e.protocol==="https:";if(checkBypass(e)){return undefined}const n=(()=>{if(t){return process.env["https_proxy"]||process.env["HTTPS_PROXY"]}else{return process.env["http_proxy"]||process.env["HTTP_PROXY"]}})();if(n){try{return new URL(n)}catch(e){if(!n.startsWith("http://")&&!n.startsWith("https://"))return new URL(`http://${n}`)}}else{return undefined}}t.getProxyUrl=getProxyUrl;function checkBypass(e){if(!e.hostname){return false}const t=e.hostname;if(isLoopbackAddress(t)){return true}const n=process.env["no_proxy"]||process.env["NO_PROXY"]||"";if(!n){return false}let s;if(e.port){s=Number(e.port)}else if(e.protocol==="http:"){s=80}else if(e.protocol==="https:"){s=443}const i=[e.hostname.toUpperCase()];if(typeof s==="number"){i.push(`${i[0]}:${s}`)}for(const e of n.split(",").map((e=>e.trim().toUpperCase())).filter((e=>e))){if(e==="*"||i.some((t=>t===e||t.endsWith(`.${e}`)||e.startsWith(".")&&t.endsWith(`${e}`)))){return true}}return false}t.checkBypass=checkBypass;function isLoopbackAddress(e){const t=e.toLowerCase();return t==="localhost"||t.startsWith("127.")||t.startsWith("[::1]")||t.startsWith("[0:0:0:0:0:0:0:1]")}},9348:e=>{e.exports={newInvalidAsn1Error:function(e){var t=new Error;t.name="InvalidAsn1Error";t.message=e||"";return t}}},194:(e,t,n)=>{var s=n(9348);var i=n(2473);var o=n(290);var h=n(3200);e.exports={Reader:o,Writer:h};for(var l in i){if(i.hasOwnProperty(l))e.exports[l]=i[l]}for(var u in s){if(s.hasOwnProperty(u))e.exports[u]=s[u]}},290:(e,t,n)=>{var s=n(9491);var i=n(5118).Buffer;var o=n(2473);var h=n(9348);var l=h.newInvalidAsn1Error;function Reader(e){if(!e||!i.isBuffer(e))throw new TypeError("data must be a node Buffer");this._buf=e;this._size=e.length;this._len=0;this._offset=0}Object.defineProperty(Reader.prototype,"length",{enumerable:true,get:function(){return this._len}});Object.defineProperty(Reader.prototype,"offset",{enumerable:true,get:function(){return this._offset}});Object.defineProperty(Reader.prototype,"remain",{get:function(){return this._size-this._offset}});Object.defineProperty(Reader.prototype,"buffer",{get:function(){return this._buf.slice(this._offset)}});Reader.prototype.readByte=function(e){if(this._size-this._offset<1)return null;var t=this._buf[this._offset]&255;if(!e)this._offset+=1;return t};Reader.prototype.peek=function(){return this.readByte(true)};Reader.prototype.readLength=function(e){if(e===undefined)e=this._offset;if(e>=this._size)return null;var t=this._buf[e++]&255;if(t===null)return null;if((t&128)===128){t&=127;if(t===0)throw l("Indefinite length not supported");if(t>4)throw l("encoding too long");if(this._size-ethis._size-s)return null;this._offset=s;if(this.length===0)return t?i.alloc(0):"";var h=this._buf.slice(this._offset,this._offset+this.length);this._offset+=this.length;return t?h:h.toString("utf8")};Reader.prototype.readOID=function(e){if(!e)e=o.OID;var t=this.readString(e,true);if(t===null)return null;var n=[];var s=0;for(var i=0;i>0);return n.join(".")};Reader.prototype._readTag=function(e){s.ok(e!==undefined);var t=this.peek();if(t===null)return null;if(t!==e)throw l("Expected 0x"+e.toString(16)+": got 0x"+t.toString(16));var n=this.readLength(this._offset+1);if(n===null)return null;if(this.length>4)throw l("Integer too long: "+this.length);if(this.length>this._size-n)return null;this._offset=n;var i=this._buf[this._offset];var o=0;for(var h=0;h>0};e.exports=Reader},2473:e=>{e.exports={EOC:0,Boolean:1,Integer:2,BitString:3,OctetString:4,Null:5,OID:6,ObjectDescriptor:7,External:8,Real:9,Enumeration:10,PDV:11,Utf8String:12,RelativeOID:13,Sequence:16,Set:17,NumericString:18,PrintableString:19,T61String:20,VideotexString:21,IA5String:22,UTCTime:23,GeneralizedTime:24,GraphicString:25,VisibleString:26,GeneralString:28,UniversalString:29,CharacterString:30,BMPString:31,Constructor:32,Context:128}},3200:(e,t,n)=>{var s=n(9491);var i=n(5118).Buffer;var o=n(2473);var h=n(9348);var l=h.newInvalidAsn1Error;var u={size:1024,growthFactor:8};function merge(e,t){s.ok(e);s.equal(typeof e,"object");s.ok(t);s.equal(typeof t,"object");var n=Object.getOwnPropertyNames(e);n.forEach((function(n){if(t[n])return;var s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s)}));return t}function Writer(e){e=merge(u,e||{});this._buf=i.alloc(e.size||1024);this._size=this._buf.length;this._offset=0;this._options=e;this._seq=[]}Object.defineProperty(Writer.prototype,"buffer",{get:function(){if(this._seq.length)throw l(this._seq.length+" unended sequence(s)");return this._buf.slice(0,this._offset)}});Writer.prototype.writeByte=function(e){if(typeof e!=="number")throw new TypeError("argument must be a Number");this._ensure(1);this._buf[this._offset++]=e};Writer.prototype.writeInt=function(e,t){if(typeof e!=="number")throw new TypeError("argument must be a Number");if(typeof t!=="number")t=o.Integer;var n=4;while(((e&4286578688)===0||(e&4286578688)===4286578688>>0)&&n>1){n--;e<<=8}if(n>4)throw l("BER ints cannot be > 0xffffffff");this._ensure(2+n);this._buf[this._offset++]=t;this._buf[this._offset++]=n;while(n-- >0){this._buf[this._offset++]=(e&4278190080)>>>24;e<<=8}};Writer.prototype.writeNull=function(){this.writeByte(o.Null);this.writeByte(0)};Writer.prototype.writeEnumeration=function(e,t){if(typeof e!=="number")throw new TypeError("argument must be a Number");if(typeof t!=="number")t=o.Enumeration;return this.writeInt(e,t)};Writer.prototype.writeBoolean=function(e,t){if(typeof e!=="boolean")throw new TypeError("argument must be a Boolean");if(typeof t!=="number")t=o.Boolean;this._ensure(3);this._buf[this._offset++]=t;this._buf[this._offset++]=1;this._buf[this._offset++]=e?255:0};Writer.prototype.writeString=function(e,t){if(typeof e!=="string")throw new TypeError("argument must be a string (was: "+typeof e+")");if(typeof t!=="number")t=o.OctetString;var n=i.byteLength(e);this.writeByte(t);this.writeLength(n);if(n){this._ensure(n);this._buf.write(e,this._offset);this._offset+=n}};Writer.prototype.writeBuffer=function(e,t){if(typeof t!=="number")throw new TypeError("tag must be a number");if(!i.isBuffer(e))throw new TypeError("argument must be a buffer");this.writeByte(t);this.writeLength(e.length);this._ensure(e.length);e.copy(this._buf,this._offset,0,e.length);this._offset+=e.length};Writer.prototype.writeStringArray=function(e){if(!e instanceof Array)throw new TypeError("argument must be an Array[String]");var t=this;e.forEach((function(e){t.writeString(e)}))};Writer.prototype.writeOID=function(e,t){if(typeof e!=="string")throw new TypeError("argument must be a string");if(typeof t!=="number")t=o.OID;if(!/^([0-9]+\.){3,}[0-9]+$/.test(e))throw new Error("argument is not a valid OID string");function encodeOctet(e,t){if(t<128){e.push(t)}else if(t<16384){e.push(t>>>7|128);e.push(t&127)}else if(t<2097152){e.push(t>>>14|128);e.push((t>>>7|128)&255);e.push(t&127)}else if(t<268435456){e.push(t>>>21|128);e.push((t>>>14|128)&255);e.push((t>>>7|128)&255);e.push(t&127)}else{e.push((t>>>28|128)&255);e.push((t>>>21|128)&255);e.push((t>>>14|128)&255);e.push((t>>>7|128)&255);e.push(t&127)}}var n=e.split(".");var s=[];s.push(parseInt(n[0],10)*40+parseInt(n[1],10));n.slice(2).forEach((function(e){encodeOctet(s,parseInt(e,10))}));var i=this;this._ensure(2+s.length);this.writeByte(t);this.writeLength(s.length);s.forEach((function(e){i.writeByte(e)}))};Writer.prototype.writeLength=function(e){if(typeof e!=="number")throw new TypeError("argument must be a Number");this._ensure(4);if(e<=127){this._buf[this._offset++]=e}else if(e<=255){this._buf[this._offset++]=129;this._buf[this._offset++]=e}else if(e<=65535){this._buf[this._offset++]=130;this._buf[this._offset++]=e>>8;this._buf[this._offset++]=e}else if(e<=16777215){this._buf[this._offset++]=131;this._buf[this._offset++]=e>>16;this._buf[this._offset++]=e>>8;this._buf[this._offset++]=e}else{throw l("Length too long (> 4 bytes)")}};Writer.prototype.startSequence=function(e){if(typeof e!=="number")e=o.Sequence|o.Constructor;this.writeByte(e);this._seq.push(this._offset);this._ensure(3);this._offset+=3};Writer.prototype.endSequence=function(){var e=this._seq.pop();var t=e+3;var n=this._offset-t;if(n<=127){this._shift(t,n,-2);this._buf[e]=n}else if(n<=255){this._shift(t,n,-1);this._buf[e]=129;this._buf[e+1]=n}else if(n<=65535){this._buf[e]=130;this._buf[e+1]=n>>8;this._buf[e+2]=n}else if(n<=16777215){this._shift(t,n,1);this._buf[e]=131;this._buf[e+1]=n>>16;this._buf[e+2]=n>>8;this._buf[e+3]=n}else{throw l("Sequence too long")}};Writer.prototype._shift=function(e,t,n){s.ok(e!==undefined);s.ok(t!==undefined);s.ok(n);this._buf.copy(this._buf,e+n,e,e+t);this._offset+=n};Writer.prototype._ensure=function(e){s.ok(e);if(this._size-this._offset{var s=n(194);e.exports={Ber:s,BerReader:s.Reader,BerWriter:s.Writer}},9417:e=>{"use strict";e.exports=balanced;function balanced(e,t,n){if(e instanceof RegExp)e=maybeMatch(e,n);if(t instanceof RegExp)t=maybeMatch(t,n);var s=range(e,t,n);return s&&{start:s[0],end:s[1],pre:n.slice(0,s[0]),body:n.slice(s[0]+e.length,s[1]),post:n.slice(s[1]+t.length)}}function maybeMatch(e,t){var n=t.match(e);return n?n[0]:null}balanced.range=range;function range(e,t,n){var s,i,o,h,l;var u=n.indexOf(e);var g=n.indexOf(t,u+1);var f=u;if(u>=0&&g>0){if(e===t){return[u,g]}s=[];o=n.length;while(f>=0&&!l){if(f==u){s.push(f);u=n.indexOf(e,f+1)}else if(s.length==1){l=[s.pop(),g]}else{i=s.pop();if(i=0?u:g}if(s.length){l=[o,h]}}return l}},5447:(e,t,n)=>{"use strict";var s=n(8729).lowlevel.crypto_hash;var i=0;var Blowfish=function(){this.S=[new Uint32Array([3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946]),new Uint32Array([1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055]),new Uint32Array([3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504]),new Uint32Array([976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462])];this.P=new Uint32Array([608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731])};function F(e,t,n){return(e[0][t[n+3]]+e[1][t[n+2]]^e[2][t[n+1]])+e[3][t[n]]}Blowfish.prototype.encipher=function(e,t){if(t===undefined){t=new Uint8Array(e.buffer);if(e.byteOffset!==0)t=t.subarray(e.byteOffset)}e[0]^=this.P[0];for(var n=1;n<16;n+=2){e[1]^=F(this.S,t,0)^this.P[n];e[0]^=F(this.S,t,4)^this.P[n+1]}var s=e[0];e[0]=e[1]^this.P[17];e[1]=s};Blowfish.prototype.decipher=function(e){var t=new Uint8Array(e.buffer);if(e.byteOffset!==0)t=t.subarray(e.byteOffset);e[0]^=this.P[17];for(var n=16;n>0;n-=2){e[1]^=F(this.S,t,0)^this.P[n];e[0]^=F(this.S,t,4)^this.P[n-1]}var s=e[0];e[0]=e[1]^this.P[0];e[1]=s};function stream2word(e,t){var n,s=0;for(n=0;n<4;n++,i++){if(i>=t)i=0;s=s<<8|e[i]}return s}Blowfish.prototype.expand0state=function(e,t){var n=new Uint32Array(2),s,o;var h=new Uint8Array(n.buffer);for(s=0,i=0;s<18;s++){this.P[s]^=stream2word(e,t)}i=0;for(s=0;s<18;s+=2){this.encipher(n,h);this.P[s]=n[0];this.P[s+1]=n[1]}for(s=0;s<4;s++){for(o=0;o<256;o+=2){this.encipher(n,h);this.S[s][o]=n[0];this.S[s][o+1]=n[1]}}};Blowfish.prototype.expandstate=function(e,t,n,s){var o=new Uint32Array(2),h,l;for(h=0,i=0;h<18;h++){this.P[h]^=stream2word(n,s)}for(h=0,i=0;h<18;h+=2){o[0]^=stream2word(e,t);o[1]^=stream2word(e,t);this.encipher(o);this.P[h]=o[0];this.P[h+1]=o[1]}for(h=0;h<4;h++){for(l=0;l<256;l+=2){o[0]^=stream2word(e,t);o[1]^=stream2word(e,t);this.encipher(o);this.S[h][l]=o[0];this.S[h][l+1]=o[1]}}i=0};Blowfish.prototype.enc=function(e,t){for(var n=0;n>>24;n[4*h+2]=i[h]>>>16;n[4*h+1]=i[h]>>>8;n[4*h+0]=i[h]}}function bcrypt_pbkdf(e,t,n,i,o,l,u){var g=new Uint8Array(64),f=new Uint8Array(64),E=new Uint8Array(h),I=new Uint8Array(h),C=new Uint8Array(i+4),B,Q,p,y,w,b,R=l;if(u<1)return-1;if(t===0||i===0||l===0||l>E.byteLength*E.byteLength||i>1<<20)return-1;y=Math.floor((l+E.byteLength-1)/E.byteLength);p=Math.floor((l+y-1)/y);for(B=0;B0;b++){C[i+0]=b>>>24;C[i+1]=b>>>16;C[i+2]=b>>>8;C[i+3]=b;s(f,C,i+4);bcrypt_hash(g,f,I);for(B=E.byteLength;B--;)E[B]=I[B];for(B=1;B=R)break;o[w]=E[B]}l-=B}return 0}e.exports={BLOCKS:o,HASHSIZE:h,hash:bcrypt_hash,pbkdf:bcrypt_pbkdf}},3717:(e,t,n)=>{var s=n(9417);e.exports=expandTop;var i="\0SLASH"+Math.random()+"\0";var o="\0OPEN"+Math.random()+"\0";var h="\0CLOSE"+Math.random()+"\0";var l="\0COMMA"+Math.random()+"\0";var u="\0PERIOD"+Math.random()+"\0";function numeric(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function escapeBraces(e){return e.split("\\\\").join(i).split("\\{").join(o).split("\\}").join(h).split("\\,").join(l).split("\\.").join(u)}function unescapeBraces(e){return e.split(i).join("\\").split(o).join("{").split(h).join("}").split(l).join(",").split(u).join(".")}function parseCommaParts(e){if(!e)return[""];var t=[];var n=s("{","}",e);if(!n)return e.split(",");var i=n.pre;var o=n.body;var h=n.post;var l=i.split(",");l[l.length-1]+="{"+o+"}";var u=parseCommaParts(h);if(h.length){l[l.length-1]+=u.shift();l.push.apply(l,u)}t.push.apply(t,l);return t}function expandTop(e){if(!e)return[];if(e.substr(0,2)==="{}"){e="\\{\\}"+e.substr(2)}return expand(escapeBraces(e),true).map(unescapeBraces)}function embrace(e){return"{"+e+"}"}function isPadded(e){return/^-?0\d/.test(e)}function lte(e,t){return e<=t}function gte(e,t){return e>=t}function expand(e,t){var n=[];var i=s("{","}",e);if(!i)return[e];var o=i.pre;var l=i.post.length?expand(i.post,false):[""];if(/\$$/.test(i.pre)){for(var u=0;u=0;if(!I&&!C){if(i.post.match(/,.*\}/)){e=i.pre+"{"+i.body+h+i.post;return expand(e)}return[e]}var B;if(I){B=i.body.split(/\.\./)}else{B=parseCommaParts(i.body);if(B.length===1){B=expand(B[0],false).map(embrace);if(B.length===1){return l.map((function(e){return i.pre+B[0]+e}))}}}var Q;if(I){var p=numeric(B[0]);var y=numeric(B[1]);var w=Math.max(B[0].length,B[1].length);var b=B.length==3?Math.abs(numeric(B[2])):1;var R=lte;var k=y0){var v=new Array(L+1).join("0");if(D<0)U="-"+v+U.slice(1);else U=v+U}}}Q.push(U)}}else{Q=[];for(var T=0;T{var t=Object.prototype.toString;var n=typeof Buffer!=="undefined"&&typeof Buffer.alloc==="function"&&typeof Buffer.allocUnsafe==="function"&&typeof Buffer.from==="function";function isArrayBuffer(e){return t.call(e).slice(8,-1)==="ArrayBuffer"}function fromArrayBuffer(e,t,s){t>>>=0;var i=e.byteLength-t;if(i<0){throw new RangeError("'offset' is out of bounds")}if(s===undefined){s=i}else{s>>>=0;if(s>i){throw new RangeError("'length' is out of bounds")}}return n?Buffer.from(e.slice(t,t+s)):new Buffer(new Uint8Array(e.slice(t,t+s)))}function fromString(e,t){if(typeof t!=="string"||t===""){t="utf8"}if(!Buffer.isEncoding(t)){throw new TypeError('"encoding" must be a valid string encoding')}return n?Buffer.from(e,t):new Buffer(e,t)}function bufferFrom(e,t,s){if(typeof e==="number"){throw new TypeError('"value" argument must not be a number')}if(isArrayBuffer(e)){return fromArrayBuffer(e,t,s)}if(typeof e==="string"){return fromString(e,t)}return n?Buffer.from(e):new Buffer(e)}e.exports=bufferFrom},5107:(e,t,n)=>{var s=n(1642).Writable;var i=n(4124);var o=n(3018);if(typeof Uint8Array==="undefined"){var h=n(5027).U2}else{var h=Uint8Array}function ConcatStream(e,t){if(!(this instanceof ConcatStream))return new ConcatStream(e,t);if(typeof e==="function"){t=e;e={}}if(!e)e={};var n=e.encoding;var i=false;if(!n){i=true}else{n=String(n).toLowerCase();if(n==="u8"||n==="uint8"){n="uint8array"}}s.call(this,{objectMode:true});this.encoding=n;this.shouldInferEncoding=i;if(t)this.on("finish",(function(){t(this.getBody())}));this.body=[]}e.exports=ConcatStream;i(ConcatStream,s);ConcatStream.prototype._write=function(e,t,n){this.body.push(e);n()};ConcatStream.prototype.inferEncoding=function(e){var t=e===undefined?this.body[0]:e;if(Buffer.isBuffer(t))return"buffer";if(typeof Uint8Array!=="undefined"&&t instanceof Uint8Array)return"uint8array";if(Array.isArray(t))return"array";if(typeof t==="string")return"string";if(Object.prototype.toString.call(t)==="[object Object]")return"object";return"buffer"};ConcatStream.prototype.getBody=function(){if(!this.encoding&&this.body.length===0)return[];if(this.shouldInferEncoding)this.encoding=this.inferEncoding();if(this.encoding==="array")return arrayConcat(this.body);if(this.encoding==="string")return stringConcat(this.body);if(this.encoding==="buffer")return bufferConcat(this.body);if(this.encoding==="uint8array")return u8Concat(this.body);return this.body};var l=Array.isArray||function(e){return Object.prototype.toString.call(e)=="[object Array]"};function isArrayish(e){return/Array\]$/.test(Object.prototype.toString.call(e))}function isBufferish(e){return typeof e==="string"||isArrayish(e)||e&&typeof e.subarray==="function"}function stringConcat(e){var t=[];var n=false;for(var s=0;s{"use strict";const s=n(4240);e.exports=s.getCPUInfo},2997:e=>{"use strict";function assign(e,t){for(const n in t){Object.defineProperty(e,n,{value:t[n],enumerable:true,configurable:true})}return e}function createError(e,t,n){if(!e||typeof e==="string"){throw new TypeError("Please pass an Error to err-code")}if(!n){n={}}if(typeof t==="object"){n=t;t=undefined}if(t!=null){n.code=t}try{return assign(e,n)}catch(t){n.message=e.message;n.stack=e.stack;const ErrClass=function(){};ErrClass.prototype=Object.create(Object.getPrototypeOf(e));return assign(new ErrClass,n)}}e.exports=createError},4124:(e,t,n)=>{try{var s=n(3837);if(typeof s.inherits!=="function")throw"";e.exports=s.inherits}catch(t){e.exports=n(8544)}},8544:e=>{if(typeof Object.create==="function"){e.exports=function inherits(e,t){if(t){e.super_=t;e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}})}}}else{e.exports=function inherits(e,t){if(t){e.super_=t;var TempCtor=function(){};TempCtor.prototype=t.prototype;e.prototype=new TempCtor;e.prototype.constructor=e}}}},7684:(e,t,n)=>{"use strict";const s=n(5185);const pLimit=e=>{if(!((Number.isInteger(e)||e===Infinity)&&e>0)){throw new TypeError("Expected `concurrency` to be a number from 1 and up")}const t=new s;let n=0;const next=()=>{n--;if(t.size>0){t.dequeue()()}};const run=async(e,t,...s)=>{n++;const i=(async()=>e(...s))();t(i);try{await i}catch{}next()};const enqueue=(s,i,...o)=>{t.enqueue(run.bind(null,s,i,...o));(async()=>{await Promise.resolve();if(n0){t.dequeue()()}})()};const generator=(e,...t)=>new Promise((n=>{enqueue(e,n,...t)}));Object.defineProperties(generator,{activeCount:{get:()=>n},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}}});return generator};e.exports=pLimit},4742:(e,t,n)=>{"use strict";var s=n(2997);var i=n(1604);var o=Object.prototype.hasOwnProperty;function isRetryError(e){return e&&e.code==="EPROMISERETRY"&&o.call(e,"retried")}function promiseRetry(e,t){var n;var o;if(typeof e==="object"&&typeof t==="function"){n=t;t=e;e=n}o=i.operation(t);return new Promise((function(t,n){o.attempt((function(i){Promise.resolve().then((function(){return e((function(e){if(isRetryError(e)){e=e.retried}throw s(new Error("Retrying"),"EPROMISERETRY",{retried:e})}),i)})).then(t,(function(e){if(isRetryError(e)){e=e.retried;if(o.retry(e||new Error)){return}}n(e)}))}))}))}e.exports=promiseRetry},7214:e=>{"use strict";const t={};function createErrorType(e,n,s){if(!s){s=Error}function getMessage(e,t,s){if(typeof n==="string"){return n}else{return n(e,t,s)}}class NodeError extends s{constructor(e,t,n){super(getMessage(e,t,n))}}NodeError.prototype.name=s.name;NodeError.prototype.code=e;t[e]=NodeError}function oneOf(e,t){if(Array.isArray(e)){const n=e.length;e=e.map((e=>String(e)));if(n>2){return`one of ${t} ${e.slice(0,n-1).join(", ")}, or `+e[n-1]}else if(n===2){return`one of ${t} ${e[0]} or ${e[1]}`}else{return`of ${t} ${e[0]}`}}else{return`of ${t} ${String(e)}`}}function startsWith(e,t,n){return e.substr(!n||n<0?0:+n,t.length)===t}function endsWith(e,t,n){if(n===undefined||n>e.length){n=e.length}return e.substring(n-t.length,n)===t}function includes(e,t,n){if(typeof n!=="number"){n=0}if(n+t.length>e.length){return false}else{return e.indexOf(t,n)!==-1}}createErrorType("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError);createErrorType("ERR_INVALID_ARG_TYPE",(function(e,t,n){let s;if(typeof t==="string"&&startsWith(t,"not ")){s="must not be";t=t.replace(/^not /,"")}else{s="must be"}let i;if(endsWith(e," argument")){i=`The ${e} ${s} ${oneOf(t,"type")}`}else{const n=includes(e,".")?"property":"argument";i=`The "${e}" ${n} ${s} ${oneOf(t,"type")}`}i+=`. Received type ${typeof n}`;return i}),TypeError);createErrorType("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");createErrorType("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"}));createErrorType("ERR_STREAM_PREMATURE_CLOSE","Premature close");createErrorType("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"}));createErrorType("ERR_MULTIPLE_CALLBACK","Callback called multiple times");createErrorType("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");createErrorType("ERR_STREAM_WRITE_AFTER_END","write after end");createErrorType("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);createErrorType("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError);createErrorType("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");e.exports.q=t},1359:(e,t,n)=>{"use strict";var s=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=Duplex;var i=n(1433);var o=n(6993);n(4124)(Duplex,i);{var h=s(o.prototype);for(var l=0;l{"use strict";e.exports=PassThrough;var s=n(4415);n(4124)(PassThrough,s);function PassThrough(e){if(!(this instanceof PassThrough))return new PassThrough(e);s.call(this,e)}PassThrough.prototype._transform=function(e,t,n){n(null,e)}},1433:(e,t,n)=>{"use strict";e.exports=Readable;var s;Readable.ReadableState=ReadableState;var i=n(2361).EventEmitter;var o=function EElistenerCount(e,t){return e.listeners(t).length};var h=n(2387);var l=n(4300).Buffer;var u=(typeof global!=="undefined"?global:typeof window!=="undefined"?window:typeof self!=="undefined"?self:{}).Uint8Array||function(){};function _uint8ArrayToBuffer(e){return l.from(e)}function _isUint8Array(e){return l.isBuffer(e)||e instanceof u}var g=n(3837);var f;if(g&&g.debuglog){f=g.debuglog("stream")}else{f=function debug(){}}var E=n(6522);var I=n(7049);var C=n(9948),B=C.getHighWaterMark;var Q=n(7214).q,p=Q.ERR_INVALID_ARG_TYPE,y=Q.ERR_STREAM_PUSH_AFTER_EOF,w=Q.ERR_METHOD_NOT_IMPLEMENTED,b=Q.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;var R;var k;var _;n(4124)(Readable,h);var D=I.errorOrDestroy;var U=["error","close","destroy","pause","resume"];function prependListener(e,t,n){if(typeof e.prependListener==="function")return e.prependListener(t,n);if(!e._events||!e._events[t])e.on(t,n);else if(Array.isArray(e._events[t]))e._events[t].unshift(n);else e._events[t]=[n,e._events[t]]}function ReadableState(e,t,i){s=s||n(1359);e=e||{};if(typeof i!=="boolean")i=t instanceof s;this.objectMode=!!e.objectMode;if(i)this.objectMode=this.objectMode||!!e.readableObjectMode;this.highWaterMark=B(this,e,"readableHighWaterMark",i);this.buffer=new E;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.paused=true;this.emitClose=e.emitClose!==false;this.autoDestroy=!!e.autoDestroy;this.destroyed=false;this.defaultEncoding=e.defaultEncoding||"utf8";this.awaitDrain=0;this.readingMore=false;this.decoder=null;this.encoding=null;if(e.encoding){if(!R)R=n(4841).s;this.decoder=new R(e.encoding);this.encoding=e.encoding}}function Readable(e){s=s||n(1359);if(!(this instanceof Readable))return new Readable(e);var t=this instanceof s;this._readableState=new ReadableState(e,this,t);this.readable=true;if(e){if(typeof e.read==="function")this._read=e.read;if(typeof e.destroy==="function")this._destroy=e.destroy}h.call(this)}Object.defineProperty(Readable.prototype,"destroyed",{enumerable:false,get:function get(){if(this._readableState===undefined){return false}return this._readableState.destroyed},set:function set(e){if(!this._readableState){return}this._readableState.destroyed=e}});Readable.prototype.destroy=I.destroy;Readable.prototype._undestroy=I.undestroy;Readable.prototype._destroy=function(e,t){t(e)};Readable.prototype.push=function(e,t){var n=this._readableState;var s;if(!n.objectMode){if(typeof e==="string"){t=t||n.defaultEncoding;if(t!==n.encoding){e=l.from(e,t);t=""}s=true}}else{s=true}return readableAddChunk(this,e,t,false,s)};Readable.prototype.unshift=function(e){return readableAddChunk(this,e,null,true,false)};function readableAddChunk(e,t,n,s,i){f("readableAddChunk",t);var o=e._readableState;if(t===null){o.reading=false;onEofChunk(e,o)}else{var h;if(!i)h=chunkInvalid(o,t);if(h){D(e,h)}else if(o.objectMode||t&&t.length>0){if(typeof t!=="string"&&!o.objectMode&&Object.getPrototypeOf(t)!==l.prototype){t=_uint8ArrayToBuffer(t)}if(s){if(o.endEmitted)D(e,new b);else addChunk(e,o,t,true)}else if(o.ended){D(e,new y)}else if(o.destroyed){return false}else{o.reading=false;if(o.decoder&&!n){t=o.decoder.write(t);if(o.objectMode||t.length!==0)addChunk(e,o,t,false);else maybeReadMore(e,o)}else{addChunk(e,o,t,false)}}}else if(!s){o.reading=false;maybeReadMore(e,o)}}return!o.ended&&(o.length=L){e=L}else{e--;e|=e>>>1;e|=e>>>2;e|=e>>>4;e|=e>>>8;e|=e>>>16;e++}return e}function howMuchToRead(e,t){if(e<=0||t.length===0&&t.ended)return 0;if(t.objectMode)return 1;if(e!==e){if(t.flowing&&t.length)return t.buffer.head.data.length;else return t.length}if(e>t.highWaterMark)t.highWaterMark=computeNewHighWaterMark(e);if(e<=t.length)return e;if(!t.ended){t.needReadable=true;return 0}return t.length}Readable.prototype.read=function(e){f("read",e);e=parseInt(e,10);var t=this._readableState;var n=e;if(e!==0)t.emittedReadable=false;if(e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended)){f("read: emitReadable",t.length,t.ended);if(t.length===0&&t.ended)endReadable(this);else emitReadable(this);return null}e=howMuchToRead(e,t);if(e===0&&t.ended){if(t.length===0)endReadable(this);return null}var s=t.needReadable;f("need readable",s);if(t.length===0||t.length-e0)i=fromList(e,t);else i=null;if(i===null){t.needReadable=t.length<=t.highWaterMark;e=0}else{t.length-=e;t.awaitDrain=0}if(t.length===0){if(!t.ended)t.needReadable=true;if(n!==e&&t.ended)endReadable(this)}if(i!==null)this.emit("data",i);return i};function onEofChunk(e,t){f("onEofChunk");if(t.ended)return;if(t.decoder){var n=t.decoder.end();if(n&&n.length){t.buffer.push(n);t.length+=t.objectMode?1:n.length}}t.ended=true;if(t.sync){emitReadable(e)}else{t.needReadable=false;if(!t.emittedReadable){t.emittedReadable=true;emitReadable_(e)}}}function emitReadable(e){var t=e._readableState;f("emitReadable",t.needReadable,t.emittedReadable);t.needReadable=false;if(!t.emittedReadable){f("emitReadable",t.flowing);t.emittedReadable=true;process.nextTick(emitReadable_,e)}}function emitReadable_(e){var t=e._readableState;f("emitReadable_",t.destroyed,t.length,t.ended);if(!t.destroyed&&(t.length||t.ended)){e.emit("readable");t.emittedReadable=false}t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark;flow(e)}function maybeReadMore(e,t){if(!t.readingMore){t.readingMore=true;process.nextTick(maybeReadMore_,e,t)}}function maybeReadMore_(e,t){while(!t.reading&&!t.ended&&(t.length1&&indexOf(s.pipes,e)!==-1)&&!u){f("false write response, pause",s.awaitDrain);s.awaitDrain++}n.pause()}}function onerror(t){f("onerror",t);unpipe();e.removeListener("error",onerror);if(o(e,"error")===0)D(e,t)}prependListener(e,"error",onerror);function onclose(){e.removeListener("finish",onfinish);unpipe()}e.once("close",onclose);function onfinish(){f("onfinish");e.removeListener("close",onclose);unpipe()}e.once("finish",onfinish);function unpipe(){f("unpipe");n.unpipe(e)}e.emit("pipe",n);if(!s.flowing){f("pipe resume");n.resume()}return e};function pipeOnDrain(e){return function pipeOnDrainFunctionResult(){var t=e._readableState;f("pipeOnDrain",t.awaitDrain);if(t.awaitDrain)t.awaitDrain--;if(t.awaitDrain===0&&o(e,"data")){t.flowing=true;flow(e)}}}Readable.prototype.unpipe=function(e){var t=this._readableState;var n={hasUnpiped:false};if(t.pipesCount===0)return this;if(t.pipesCount===1){if(e&&e!==t.pipes)return this;if(!e)e=t.pipes;t.pipes=null;t.pipesCount=0;t.flowing=false;if(e)e.emit("unpipe",this,n);return this}if(!e){var s=t.pipes;var i=t.pipesCount;t.pipes=null;t.pipesCount=0;t.flowing=false;for(var o=0;o0;if(s.flowing!==false)this.resume()}else if(e==="readable"){if(!s.endEmitted&&!s.readableListening){s.readableListening=s.needReadable=true;s.flowing=false;s.emittedReadable=false;f("on readable",s.length,s.reading);if(s.length){emitReadable(this)}else if(!s.reading){process.nextTick(nReadingNextTick,this)}}}return n};Readable.prototype.addListener=Readable.prototype.on;Readable.prototype.removeListener=function(e,t){var n=h.prototype.removeListener.call(this,e,t);if(e==="readable"){process.nextTick(updateReadableListening,this)}return n};Readable.prototype.removeAllListeners=function(e){var t=h.prototype.removeAllListeners.apply(this,arguments);if(e==="readable"||e===undefined){process.nextTick(updateReadableListening,this)}return t};function updateReadableListening(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0;if(t.resumeScheduled&&!t.paused){t.flowing=true}else if(e.listenerCount("data")>0){e.resume()}}function nReadingNextTick(e){f("readable nexttick read 0");e.read(0)}Readable.prototype.resume=function(){var e=this._readableState;if(!e.flowing){f("resume");e.flowing=!e.readableListening;resume(this,e)}e.paused=false;return this};function resume(e,t){if(!t.resumeScheduled){t.resumeScheduled=true;process.nextTick(resume_,e,t)}}function resume_(e,t){f("resume",t.reading);if(!t.reading){e.read(0)}t.resumeScheduled=false;e.emit("resume");flow(e);if(t.flowing&&!t.reading)e.read(0)}Readable.prototype.pause=function(){f("call pause flowing=%j",this._readableState.flowing);if(this._readableState.flowing!==false){f("pause");this._readableState.flowing=false;this.emit("pause")}this._readableState.paused=true;return this};function flow(e){var t=e._readableState;f("flow",t.flowing);while(t.flowing&&e.read()!==null);}Readable.prototype.wrap=function(e){var t=this;var n=this._readableState;var s=false;e.on("end",(function(){f("wrapped end");if(n.decoder&&!n.ended){var e=n.decoder.end();if(e&&e.length)t.push(e)}t.push(null)}));e.on("data",(function(i){f("wrapped data");if(n.decoder)i=n.decoder.write(i);if(n.objectMode&&(i===null||i===undefined))return;else if(!n.objectMode&&(!i||!i.length))return;var o=t.push(i);if(!o){s=true;e.pause()}}));for(var i in e){if(this[i]===undefined&&typeof e[i]==="function"){this[i]=function methodWrap(t){return function methodWrapReturnFunction(){return e[t].apply(e,arguments)}}(i)}}for(var o=0;o=t.length){if(t.decoder)n=t.buffer.join("");else if(t.buffer.length===1)n=t.buffer.first();else n=t.buffer.concat(t.length);t.buffer.clear()}else{n=t.buffer.consume(e,t.decoder)}return n}function endReadable(e){var t=e._readableState;f("endReadable",t.endEmitted);if(!t.endEmitted){t.ended=true;process.nextTick(endReadableNT,t,e)}}function endReadableNT(e,t){f("endReadableNT",e.endEmitted,e.length);if(!e.endEmitted&&e.length===0){e.endEmitted=true;t.readable=false;t.emit("end");if(e.autoDestroy){var n=t._writableState;if(!n||n.autoDestroy&&n.finished){t.destroy()}}}}if(typeof Symbol==="function"){Readable.from=function(e,t){if(_===undefined){_=n(9082)}return _(Readable,e,t)}}function indexOf(e,t){for(var n=0,s=e.length;n{"use strict";e.exports=Transform;var s=n(7214).q,i=s.ERR_METHOD_NOT_IMPLEMENTED,o=s.ERR_MULTIPLE_CALLBACK,h=s.ERR_TRANSFORM_ALREADY_TRANSFORMING,l=s.ERR_TRANSFORM_WITH_LENGTH_0;var u=n(1359);n(4124)(Transform,u);function afterTransform(e,t){var n=this._transformState;n.transforming=false;var s=n.writecb;if(s===null){return this.emit("error",new o)}n.writechunk=null;n.writecb=null;if(t!=null)this.push(t);s(e);var i=this._readableState;i.reading=false;if(i.needReadable||i.length{"use strict";e.exports=Writable;function WriteReq(e,t,n){this.chunk=e;this.encoding=t;this.callback=n;this.next=null}function CorkedRequest(e){var t=this;this.next=null;this.entry=null;this.finish=function(){onCorkedFinish(t,e)}}var s;Writable.WritableState=WritableState;var i={deprecate:n(7127)};var o=n(2387);var h=n(4300).Buffer;var l=(typeof global!=="undefined"?global:typeof window!=="undefined"?window:typeof self!=="undefined"?self:{}).Uint8Array||function(){};function _uint8ArrayToBuffer(e){return h.from(e)}function _isUint8Array(e){return h.isBuffer(e)||e instanceof l}var u=n(7049);var g=n(9948),f=g.getHighWaterMark;var E=n(7214).q,I=E.ERR_INVALID_ARG_TYPE,C=E.ERR_METHOD_NOT_IMPLEMENTED,B=E.ERR_MULTIPLE_CALLBACK,Q=E.ERR_STREAM_CANNOT_PIPE,p=E.ERR_STREAM_DESTROYED,y=E.ERR_STREAM_NULL_VALUES,w=E.ERR_STREAM_WRITE_AFTER_END,b=E.ERR_UNKNOWN_ENCODING;var R=u.errorOrDestroy;n(4124)(Writable,o);function nop(){}function WritableState(e,t,i){s=s||n(1359);e=e||{};if(typeof i!=="boolean")i=t instanceof s;this.objectMode=!!e.objectMode;if(i)this.objectMode=this.objectMode||!!e.writableObjectMode;this.highWaterMark=f(this,e,"writableHighWaterMark",i);this.finalCalled=false;this.needDrain=false;this.ending=false;this.ended=false;this.finished=false;this.destroyed=false;var o=e.decodeStrings===false;this.decodeStrings=!o;this.defaultEncoding=e.defaultEncoding||"utf8";this.length=0;this.writing=false;this.corked=0;this.sync=true;this.bufferProcessing=false;this.onwrite=function(e){onwrite(t,e)};this.writecb=null;this.writelen=0;this.bufferedRequest=null;this.lastBufferedRequest=null;this.pendingcb=0;this.prefinished=false;this.errorEmitted=false;this.emitClose=e.emitClose!==false;this.autoDestroy=!!e.autoDestroy;this.bufferedRequestCount=0;this.corkedRequestsFree=new CorkedRequest(this)}WritableState.prototype.getBuffer=function getBuffer(){var e=this.bufferedRequest;var t=[];while(e){t.push(e);e=e.next}return t};(function(){try{Object.defineProperty(WritableState.prototype,"buffer",{get:i.deprecate((function writableStateBufferGetter(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer "+"instead.","DEP0003")})}catch(e){}})();var k;if(typeof Symbol==="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]==="function"){k=Function.prototype[Symbol.hasInstance];Object.defineProperty(Writable,Symbol.hasInstance,{value:function value(e){if(k.call(this,e))return true;if(this!==Writable)return false;return e&&e._writableState instanceof WritableState}})}else{k=function realHasInstance(e){return e instanceof this}}function Writable(e){s=s||n(1359);var t=this instanceof s;if(!t&&!k.call(Writable,this))return new Writable(e);this._writableState=new WritableState(e,this,t);this.writable=true;if(e){if(typeof e.write==="function")this._write=e.write;if(typeof e.writev==="function")this._writev=e.writev;if(typeof e.destroy==="function")this._destroy=e.destroy;if(typeof e.final==="function")this._final=e.final}o.call(this)}Writable.prototype.pipe=function(){R(this,new Q)};function writeAfterEnd(e,t){var n=new w;R(e,n);process.nextTick(t,n)}function validChunk(e,t,n,s){var i;if(n===null){i=new y}else if(typeof n!=="string"&&!t.objectMode){i=new I("chunk",["string","Buffer"],n)}if(i){R(e,i);process.nextTick(s,i);return false}return true}Writable.prototype.write=function(e,t,n){var s=this._writableState;var i=false;var o=!s.objectMode&&_isUint8Array(e);if(o&&!h.isBuffer(e)){e=_uint8ArrayToBuffer(e)}if(typeof t==="function"){n=t;t=null}if(o)t="buffer";else if(!t)t=s.defaultEncoding;if(typeof n!=="function")n=nop;if(s.ending)writeAfterEnd(this,n);else if(o||validChunk(this,s,e,n)){s.pendingcb++;i=writeOrBuffer(this,s,o,e,t,n)}return i};Writable.prototype.cork=function(){this._writableState.corked++};Writable.prototype.uncork=function(){var e=this._writableState;if(e.corked){e.corked--;if(!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest)clearBuffer(this,e)}};Writable.prototype.setDefaultEncoding=function setDefaultEncoding(e){if(typeof e==="string")e=e.toLowerCase();if(!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new b(e);this._writableState.defaultEncoding=e;return this};Object.defineProperty(Writable.prototype,"writableBuffer",{enumerable:false,get:function get(){return this._writableState&&this._writableState.getBuffer()}});function decodeChunk(e,t,n){if(!e.objectMode&&e.decodeStrings!==false&&typeof t==="string"){t=h.from(t,n)}return t}Object.defineProperty(Writable.prototype,"writableHighWaterMark",{enumerable:false,get:function get(){return this._writableState.highWaterMark}});function writeOrBuffer(e,t,n,s,i,o){if(!n){var h=decodeChunk(t,s,i);if(s!==h){n=true;i="buffer";s=h}}var l=t.objectMode?1:s.length;t.length+=l;var u=t.length{"use strict";var s;function _defineProperty(e,t,n){t=_toPropertyKey(t);if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function _toPropertyKey(e){var t=_toPrimitive(e,"string");return typeof t==="symbol"?t:String(t)}function _toPrimitive(e,t){if(typeof e!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==undefined){var s=n.call(e,t||"default");if(typeof s!=="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var i=n(6080);var o=Symbol("lastResolve");var h=Symbol("lastReject");var l=Symbol("error");var u=Symbol("ended");var g=Symbol("lastPromise");var f=Symbol("handlePromise");var E=Symbol("stream");function createIterResult(e,t){return{value:e,done:t}}function readAndResolve(e){var t=e[o];if(t!==null){var n=e[E].read();if(n!==null){e[g]=null;e[o]=null;e[h]=null;t(createIterResult(n,false))}}}function onReadable(e){process.nextTick(readAndResolve,e)}function wrapForNext(e,t){return function(n,s){e.then((function(){if(t[u]){n(createIterResult(undefined,true));return}t[f](n,s)}),s)}}var I=Object.getPrototypeOf((function(){}));var C=Object.setPrototypeOf((s={get stream(){return this[E]},next:function next(){var e=this;var t=this[l];if(t!==null){return Promise.reject(t)}if(this[u]){return Promise.resolve(createIterResult(undefined,true))}if(this[E].destroyed){return new Promise((function(t,n){process.nextTick((function(){if(e[l]){n(e[l])}else{t(createIterResult(undefined,true))}}))}))}var n=this[g];var s;if(n){s=new Promise(wrapForNext(n,this))}else{var i=this[E].read();if(i!==null){return Promise.resolve(createIterResult(i,false))}s=new Promise(this[f])}this[g]=s;return s}},_defineProperty(s,Symbol.asyncIterator,(function(){return this})),_defineProperty(s,"return",(function _return(){var e=this;return new Promise((function(t,n){e[E].destroy(null,(function(e){if(e){n(e);return}t(createIterResult(undefined,true))}))}))})),s),I);var B=function createReadableStreamAsyncIterator(e){var t;var n=Object.create(C,(t={},_defineProperty(t,E,{value:e,writable:true}),_defineProperty(t,o,{value:null,writable:true}),_defineProperty(t,h,{value:null,writable:true}),_defineProperty(t,l,{value:null,writable:true}),_defineProperty(t,u,{value:e._readableState.endEmitted,writable:true}),_defineProperty(t,f,{value:function value(e,t){var s=n[E].read();if(s){n[g]=null;n[o]=null;n[h]=null;e(createIterResult(s,false))}else{n[o]=e;n[h]=t}},writable:true}),t));n[g]=null;i(e,(function(e){if(e&&e.code!=="ERR_STREAM_PREMATURE_CLOSE"){var t=n[h];if(t!==null){n[g]=null;n[o]=null;n[h]=null;t(e)}n[l]=e;return}var s=n[o];if(s!==null){n[g]=null;n[o]=null;n[h]=null;s(createIterResult(undefined,true))}n[u]=true}));e.on("readable",onReadable.bind(null,n));return n};e.exports=B},6522:(e,t,n)=>{"use strict";function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,s)}return n}function _objectSpread(e){for(var t=1;t0)this.tail.next=t;else this.head=t;this.tail=t;++this.length}},{key:"unshift",value:function unshift(e){var t={data:e,next:this.head};if(this.length===0)this.tail=t;this.head=t;++this.length}},{key:"shift",value:function shift(){if(this.length===0)return;var e=this.head.data;if(this.length===1)this.head=this.tail=null;else this.head=this.head.next;--this.length;return e}},{key:"clear",value:function clear(){this.head=this.tail=null;this.length=0}},{key:"join",value:function join(e){if(this.length===0)return"";var t=this.head;var n=""+t.data;while(t=t.next)n+=e+t.data;return n}},{key:"concat",value:function concat(e){if(this.length===0)return i.alloc(0);var t=i.allocUnsafe(e>>>0);var n=this.head;var s=0;while(n){copyBuffer(n.data,t,s);s+=n.data.length;n=n.next}return t}},{key:"consume",value:function consume(e,t){var n;if(ei.length?i.length:e;if(o===i.length)s+=i;else s+=i.slice(0,e);e-=o;if(e===0){if(o===i.length){++n;if(t.next)this.head=t.next;else this.head=this.tail=null}else{this.head=t;t.data=i.slice(o)}break}++n}this.length-=n;return s}},{key:"_getBuffer",value:function _getBuffer(e){var t=i.allocUnsafe(e);var n=this.head;var s=1;n.data.copy(t);e-=n.data.length;while(n=n.next){var o=n.data;var h=e>o.length?o.length:e;o.copy(t,t.length-e,0,h);e-=h;if(e===0){if(h===o.length){++s;if(n.next)this.head=n.next;else this.head=this.tail=null}else{this.head=n;n.data=o.slice(h)}break}++s}this.length-=s;return t}},{key:l,value:function value(e,t){return h(this,_objectSpread(_objectSpread({},t),{},{depth:0,customInspect:false}))}}]);return BufferList}()},7049:e=>{"use strict";function destroy(e,t){var n=this;var s=this._readableState&&this._readableState.destroyed;var i=this._writableState&&this._writableState.destroyed;if(s||i){if(t){t(e)}else if(e){if(!this._writableState){process.nextTick(emitErrorNT,this,e)}else if(!this._writableState.errorEmitted){this._writableState.errorEmitted=true;process.nextTick(emitErrorNT,this,e)}}return this}if(this._readableState){this._readableState.destroyed=true}if(this._writableState){this._writableState.destroyed=true}this._destroy(e||null,(function(e){if(!t&&e){if(!n._writableState){process.nextTick(emitErrorAndCloseNT,n,e)}else if(!n._writableState.errorEmitted){n._writableState.errorEmitted=true;process.nextTick(emitErrorAndCloseNT,n,e)}else{process.nextTick(emitCloseNT,n)}}else if(t){process.nextTick(emitCloseNT,n);t(e)}else{process.nextTick(emitCloseNT,n)}}));return this}function emitErrorAndCloseNT(e,t){emitErrorNT(e,t);emitCloseNT(e)}function emitCloseNT(e){if(e._writableState&&!e._writableState.emitClose)return;if(e._readableState&&!e._readableState.emitClose)return;e.emit("close")}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(e,t){e.emit("error",t)}function errorOrDestroy(e,t){var n=e._readableState;var s=e._writableState;if(n&&n.autoDestroy||s&&s.autoDestroy)e.destroy(t);else e.emit("error",t)}e.exports={destroy:destroy,undestroy:undestroy,errorOrDestroy:errorOrDestroy}},6080:(e,t,n)=>{"use strict";var s=n(7214).q.ERR_STREAM_PREMATURE_CLOSE;function once(e){var t=false;return function(){if(t)return;t=true;for(var n=arguments.length,s=new Array(n),i=0;i{"use strict";function asyncGeneratorStep(e,t,n,s,i,o,h){try{var l=e[o](h);var u=l.value}catch(e){n(e);return}if(l.done){t(u)}else{Promise.resolve(u).then(s,i)}}function _asyncToGenerator(e){return function(){var t=this,n=arguments;return new Promise((function(s,i){var o=e.apply(t,n);function _next(e){asyncGeneratorStep(o,s,i,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep(o,s,i,_next,_throw,"throw",e)}_next(undefined)}))}}function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,s)}return n}function _objectSpread(e){for(var t=1;t{"use strict";var s;function once(e){var t=false;return function(){if(t)return;t=true;e.apply(void 0,arguments)}}var i=n(7214).q,o=i.ERR_MISSING_ARGS,h=i.ERR_STREAM_DESTROYED;function noop(e){if(e)throw e}function isRequest(e){return e.setHeader&&typeof e.abort==="function"}function destroyer(e,t,i,o){o=once(o);var l=false;e.on("close",(function(){l=true}));if(s===undefined)s=n(6080);s(e,{readable:t,writable:i},(function(e){if(e)return o(e);l=true;o()}));var u=false;return function(t){if(l)return;if(u)return;u=true;if(isRequest(e))return e.abort();if(typeof e.destroy==="function")return e.destroy();o(t||new h("pipe"))}}function call(e){e()}function pipe(e,t){return e.pipe(t)}function popCallback(e){if(!e.length)return noop;if(typeof e[e.length-1]!=="function")return noop;return e.pop()}function pipeline(){for(var e=arguments.length,t=new Array(e),n=0;n0;return destroyer(e,o,l,(function(e){if(!i)i=e;if(e)h.forEach(call);if(o)return;h.forEach(call);s(i)}))}));return t.reduce(pipe)}e.exports=pipeline},9948:(e,t,n)=>{"use strict";var s=n(7214).q.ERR_INVALID_OPT_VALUE;function highWaterMarkFrom(e,t,n){return e.highWaterMark!=null?e.highWaterMark:t?e[n]:null}function getHighWaterMark(e,t,n,i){var o=highWaterMarkFrom(t,i,n);if(o!=null){if(!(isFinite(o)&&Math.floor(o)===o)||o<0){var h=i?n:"highWaterMark";throw new s(h,o)}return Math.floor(o)}return e.objectMode?16:16*1024}e.exports={getHighWaterMark:getHighWaterMark}},2387:(e,t,n)=>{e.exports=n(2781)},1642:(e,t,n)=>{var s=n(2781);if(process.env.READABLE_STREAM==="disable"&&s){e.exports=s.Readable;Object.assign(e.exports,s);e.exports.Stream=s}else{t=e.exports=n(1433);t.Stream=s||t;t.Readable=t;t.Writable=n(6993);t.Duplex=n(1359);t.Transform=n(4415);t.PassThrough=n(1542);t.finished=n(6080);t.pipeline=n(6989)}},1604:(e,t,n)=>{e.exports=n(6244)},6244:(e,t,n)=>{var s=n(5369);t.operation=function(e){var n=t.timeouts(e);return new s(n,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})};t.timeouts=function(e){if(e instanceof Array){return[].concat(e)}var t={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:Infinity,randomize:false};for(var n in e){t[n]=e[n]}if(t.minTimeout>t.maxTimeout){throw new Error("minTimeout is greater than maxTimeout")}var s=[];for(var i=0;i{function RetryOperation(e,t){if(typeof t==="boolean"){t={forever:t}}this._originalTimeouts=JSON.parse(JSON.stringify(e));this._timeouts=e;this._options=t||{};this._maxRetryTime=t&&t.maxRetryTime||Infinity;this._fn=null;this._errors=[];this._attempts=1;this._operationTimeout=null;this._operationTimeoutCb=null;this._timeout=null;this._operationStart=null;if(this._options.forever){this._cachedTimeouts=this._timeouts.slice(0)}}e.exports=RetryOperation;RetryOperation.prototype.reset=function(){this._attempts=1;this._timeouts=this._originalTimeouts};RetryOperation.prototype.stop=function(){if(this._timeout){clearTimeout(this._timeout)}this._timeouts=[];this._cachedTimeouts=null};RetryOperation.prototype.retry=function(e){if(this._timeout){clearTimeout(this._timeout)}if(!e){return false}var t=(new Date).getTime();if(e&&t-this._operationStart>=this._maxRetryTime){this._errors.unshift(new Error("RetryOperation timeout occurred"));return false}this._errors.push(e);var n=this._timeouts.shift();if(n===undefined){if(this._cachedTimeouts){this._errors.splice(this._errors.length-1,this._errors.length);this._timeouts=this._cachedTimeouts.slice(0);n=this._timeouts.shift()}else{return false}}var s=this;var i=setTimeout((function(){s._attempts++;if(s._operationTimeoutCb){s._timeout=setTimeout((function(){s._operationTimeoutCb(s._attempts)}),s._operationTimeout);if(s._options.unref){s._timeout.unref()}}s._fn(s._attempts)}),n);if(this._options.unref){i.unref()}return true};RetryOperation.prototype.attempt=function(e,t){this._fn=e;if(t){if(t.timeout){this._operationTimeout=t.timeout}if(t.cb){this._operationTimeoutCb=t.cb}}var n=this;if(this._operationTimeoutCb){this._timeout=setTimeout((function(){n._operationTimeoutCb()}),n._operationTimeout)}this._operationStart=(new Date).getTime();this._fn(this._attempts)};RetryOperation.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated");this.attempt(e)};RetryOperation.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated");this.attempt(e)};RetryOperation.prototype.start=RetryOperation.prototype.try;RetryOperation.prototype.errors=function(){return this._errors};RetryOperation.prototype.attempts=function(){return this._attempts};RetryOperation.prototype.mainError=function(){if(this._errors.length===0){return null}var e={};var t=null;var n=0;for(var s=0;s=n){t=i;n=h}}return t}},1867:(e,t,n)=>{ +(()=>{var __webpack_modules__={9538:function(e,t,n){"use strict";var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){if(s===undefined)s=n;var i=Object.getOwnPropertyDescriptor(t,n);if(!i||("get"in i?!t.__esModule:i.writable||i.configurable)){i={enumerable:true,get:function(){return t[n]}}}Object.defineProperty(e,s,i)}:function(e,t,n,s){if(s===undefined)s=n;e[s]=t[n]});var i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.prototype.hasOwnProperty.call(e,n))s(t,e,n);i(t,e);return t};var h=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:true});t.file_to_string=t.delete_folder=t.is_uploadable=t.parse_ignored=t.parse_uploads=t.main=void 0;const l=n(2186);const u=h(n(2002));const g=h(n(7684));const f=o(n(7147));const E={dot:true,matchBase:true};function parse_uploads(e){const t=e.split("\n").filter((e=>e!=""));const n=[];if(t.length===0)throw new Error("No uploads were defined, please ensure you enter destinations to upload your files!");t.forEach((e=>{const[t,s]=e.trim().split("=>");if(!t||!s)return;n.push({from:t.trim(),to:s.trim()})}));return n}t.parse_uploads=parse_uploads;function parse_ignored(e){return e.trim().split("\n").map(Function.prototype.call,String.prototype.trim).filter((e=>e!=""))}t.parse_ignored=parse_ignored;function is_uploadable(e,t){return!t.some((t=>(0,u.default)(e,t,E)))}t.is_uploadable=is_uploadable;async function delete_folder(e,t){(0,l.debug)(`Deleting existing files for ${t}...`);try{await e.rmdir(t,true);(0,l.debug)(`${t} has been deleted.`)}catch(e){(0,l.warning)(`Unable to delete existing files for ${t} before upload. ${e}`)}}t.delete_folder=delete_folder;function file_to_string(e){if(e===""){return""}return f.readFileSync(e,{encoding:"utf8"})}t.file_to_string=file_to_string;async function getRemoteFileSizes(e,t,n){(0,l.debug)(`Getting file sizes in ${t}`);if(t==="./"){t="."}const s={};const processDirectory=async t=>{const n=await e.list(t);for(const e of n){const n=`${t}/${e.name}`;const i=`${t}/${e.name}`;if(e.type==="-"){s[i]=e.size}else if(e.type==="d"){await processDirectory(n)}}};await processDirectory(t);return s}async function main(e){try{const t=(0,l.getInput)("server");const n=(0,l.getInput)("username");const s=(0,l.getInput)("password");const i=(0,l.getInput)("passphrase");const o=(0,l.getInput)("key");const h=+(0,l.getInput)("port");const u=(0,l.getBooleanInput)("dry-run");const E=parse_uploads((0,l.getInput)("uploads"));const I=parse_ignored((0,l.getInput)("ignore"));const C=(0,l.getBooleanInput)("delete");const B=(0,l.getBooleanInput)("compare");if(I.length==0){I.push(...parse_ignored(file_to_string((0,l.getInput)("ignore-from"))))}(0,l.debug)(`Connecting to ${t} as ${n} on port ${h}`);await e.connect({host:t,username:n,password:s,port:h,privateKey:o,passphrase:i});const Q=(0,g.default)(1);const p=[];if(C&&!u){(0,l.debug)("Deleting folders...");for(const t of E){p.push(Q((()=>delete_folder(e,t.to))))}await Promise.allSettled(p);p.splice(0,p.length)}const y=[];for(const t of E){y.push(await Q((()=>getRemoteFileSizes(e,t.to,t.from))))}(0,l.debug)("Preparing upload...");if(B){let t=0;for(const n of E){(0,l.debug)(`Processing ${n.from} to ${n.to}`);p.push(Q((async()=>{await e.uploadDir(n.from,n.to,{filter:e=>{if(is_uploadable(e,I)){if(`./${e}`in y[t]){if(y[t][`./${e}`]!==f.statSync(e).size){if(u){(0,l.debug)(`${e} would have been uploaded because it has changed`);return false}else{(0,l.debug)(`Uploading ${e} because it has changed`);return true}}}else{if(u){(0,l.debug)(`${e} would have been uploaded because it does not exist`);return false}else{(0,l.debug)(`Uploading ${e} because it does not exist`);return true}}}(0,l.debug)(`Skipping ${e}`);return false}});t++})))}}else{for(const t of E){(0,l.debug)(`Processing ${t.from} to ${t.to}`);p.push(Q((()=>e.uploadDir(t.from,t.to,{filter:e=>{if(is_uploadable(e,I)){if(u){console.log(`${e} would have been uploaded`);return false}else{(0,l.debug)(`Uploading ${e}`);return true}}(0,l.debug)(`Skipping ${e}`);return false}}))))}}await Promise.allSettled(p);(0,l.debug)("Upload process complete.");await e.end();(0,l.debug)("Session ended.")}catch(e){(0,l.setFailed)(e.message)}}t.main=main},7351:function(e,t,n){"use strict";var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){if(s===undefined)s=n;Object.defineProperty(e,s,{enumerable:true,get:function(){return t[n]}})}:function(e,t,n,s){if(s===undefined)s=n;e[s]=t[n]});var i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.hasOwnProperty.call(e,n))s(t,e,n);i(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.issue=t.issueCommand=void 0;const h=o(n(2037));const l=n(5278);function issueCommand(e,t,n){const s=new Command(e,t,n);process.stdout.write(s.toString()+h.EOL)}t.issueCommand=issueCommand;function issue(e,t=""){issueCommand(e,{},t)}t.issue=issue;const u="::";class Command{constructor(e,t,n){if(!e){e="missing.command"}this.command=e;this.properties=t;this.message=n}toString(){let e=u+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let t=true;for(const n in this.properties){if(this.properties.hasOwnProperty(n)){const s=this.properties[n];if(s){if(t){t=false}else{e+=","}e+=`${n}=${escapeProperty(s)}`}}}}e+=`${u}${escapeData(this.message)}`;return e}}function escapeData(e){return l.toCommandValue(e).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}function escapeProperty(e){return l.toCommandValue(e).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}},2186:function(e,t,n){"use strict";var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){if(s===undefined)s=n;Object.defineProperty(e,s,{enumerable:true,get:function(){return t[n]}})}:function(e,t,n,s){if(s===undefined)s=n;e[s]=t[n]});var i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.hasOwnProperty.call(e,n))s(t,e,n);i(t,e);return t};var h=this&&this.__awaiter||function(e,t,n,s){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,i){function fulfilled(e){try{step(s.next(e))}catch(e){i(e)}}function rejected(e){try{step(s["throw"](e))}catch(e){i(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.getIDToken=t.getState=t.saveState=t.group=t.endGroup=t.startGroup=t.info=t.notice=t.warning=t.error=t.debug=t.isDebug=t.setFailed=t.setCommandEcho=t.setOutput=t.getBooleanInput=t.getMultilineInput=t.getInput=t.addPath=t.setSecret=t.exportVariable=t.ExitCode=void 0;const l=n(7351);const u=n(717);const g=n(5278);const f=o(n(2037));const E=o(n(1017));const I=n(8041);var C;(function(e){e[e["Success"]=0]="Success";e[e["Failure"]=1]="Failure"})(C=t.ExitCode||(t.ExitCode={}));function exportVariable(e,t){const n=g.toCommandValue(t);process.env[e]=n;const s=process.env["GITHUB_ENV"]||"";if(s){return u.issueFileCommand("ENV",u.prepareKeyValueMessage(e,t))}l.issueCommand("set-env",{name:e},n)}t.exportVariable=exportVariable;function setSecret(e){l.issueCommand("add-mask",{},e)}t.setSecret=setSecret;function addPath(e){const t=process.env["GITHUB_PATH"]||"";if(t){u.issueFileCommand("PATH",e)}else{l.issueCommand("add-path",{},e)}process.env["PATH"]=`${e}${E.delimiter}${process.env["PATH"]}`}t.addPath=addPath;function getInput(e,t){const n=process.env[`INPUT_${e.replace(/ /g,"_").toUpperCase()}`]||"";if(t&&t.required&&!n){throw new Error(`Input required and not supplied: ${e}`)}if(t&&t.trimWhitespace===false){return n}return n.trim()}t.getInput=getInput;function getMultilineInput(e,t){const n=getInput(e,t).split("\n").filter((e=>e!==""));if(t&&t.trimWhitespace===false){return n}return n.map((e=>e.trim()))}t.getMultilineInput=getMultilineInput;function getBooleanInput(e,t){const n=["true","True","TRUE"];const s=["false","False","FALSE"];const i=getInput(e,t);if(n.includes(i))return true;if(s.includes(i))return false;throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${e}\n`+`Support boolean input list: \`true | True | TRUE | false | False | FALSE\``)}t.getBooleanInput=getBooleanInput;function setOutput(e,t){const n=process.env["GITHUB_OUTPUT"]||"";if(n){return u.issueFileCommand("OUTPUT",u.prepareKeyValueMessage(e,t))}process.stdout.write(f.EOL);l.issueCommand("set-output",{name:e},g.toCommandValue(t))}t.setOutput=setOutput;function setCommandEcho(e){l.issue("echo",e?"on":"off")}t.setCommandEcho=setCommandEcho;function setFailed(e){process.exitCode=C.Failure;error(e)}t.setFailed=setFailed;function isDebug(){return process.env["RUNNER_DEBUG"]==="1"}t.isDebug=isDebug;function debug(e){l.issueCommand("debug",{},e)}t.debug=debug;function error(e,t={}){l.issueCommand("error",g.toCommandProperties(t),e instanceof Error?e.toString():e)}t.error=error;function warning(e,t={}){l.issueCommand("warning",g.toCommandProperties(t),e instanceof Error?e.toString():e)}t.warning=warning;function notice(e,t={}){l.issueCommand("notice",g.toCommandProperties(t),e instanceof Error?e.toString():e)}t.notice=notice;function info(e){process.stdout.write(e+f.EOL)}t.info=info;function startGroup(e){l.issue("group",e)}t.startGroup=startGroup;function endGroup(){l.issue("endgroup")}t.endGroup=endGroup;function group(e,t){return h(this,void 0,void 0,(function*(){startGroup(e);let n;try{n=yield t()}finally{endGroup()}return n}))}t.group=group;function saveState(e,t){const n=process.env["GITHUB_STATE"]||"";if(n){return u.issueFileCommand("STATE",u.prepareKeyValueMessage(e,t))}l.issueCommand("save-state",{name:e},g.toCommandValue(t))}t.saveState=saveState;function getState(e){return process.env[`STATE_${e}`]||""}t.getState=getState;function getIDToken(e){return h(this,void 0,void 0,(function*(){return yield I.OidcClient.getIDToken(e)}))}t.getIDToken=getIDToken;var B=n(1327);Object.defineProperty(t,"summary",{enumerable:true,get:function(){return B.summary}});var Q=n(1327);Object.defineProperty(t,"markdownSummary",{enumerable:true,get:function(){return Q.markdownSummary}});var p=n(2981);Object.defineProperty(t,"toPosixPath",{enumerable:true,get:function(){return p.toPosixPath}});Object.defineProperty(t,"toWin32Path",{enumerable:true,get:function(){return p.toWin32Path}});Object.defineProperty(t,"toPlatformPath",{enumerable:true,get:function(){return p.toPlatformPath}})},717:function(e,t,n){"use strict";var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){if(s===undefined)s=n;Object.defineProperty(e,s,{enumerable:true,get:function(){return t[n]}})}:function(e,t,n,s){if(s===undefined)s=n;e[s]=t[n]});var i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.hasOwnProperty.call(e,n))s(t,e,n);i(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.prepareKeyValueMessage=t.issueFileCommand=void 0;const h=o(n(7147));const l=o(n(2037));const u=n(5840);const g=n(5278);function issueFileCommand(e,t){const n=process.env[`GITHUB_${e}`];if(!n){throw new Error(`Unable to find environment variable for file command ${e}`)}if(!h.existsSync(n)){throw new Error(`Missing file at path: ${n}`)}h.appendFileSync(n,`${g.toCommandValue(t)}${l.EOL}`,{encoding:"utf8"})}t.issueFileCommand=issueFileCommand;function prepareKeyValueMessage(e,t){const n=`ghadelimiter_${u.v4()}`;const s=g.toCommandValue(t);if(e.includes(n)){throw new Error(`Unexpected input: name should not contain the delimiter "${n}"`)}if(s.includes(n)){throw new Error(`Unexpected input: value should not contain the delimiter "${n}"`)}return`${e}<<${n}${l.EOL}${s}${l.EOL}${n}`}t.prepareKeyValueMessage=prepareKeyValueMessage},8041:function(e,t,n){"use strict";var s=this&&this.__awaiter||function(e,t,n,s){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,i){function fulfilled(e){try{step(s.next(e))}catch(e){i(e)}}function rejected(e){try{step(s["throw"](e))}catch(e){i(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.OidcClient=void 0;const i=n(6255);const o=n(5526);const h=n(2186);class OidcClient{static createHttpClient(e=true,t=10){const n={allowRetries:e,maxRetries:t};return new i.HttpClient("actions/oidc-client",[new o.BearerCredentialHandler(OidcClient.getRequestToken())],n)}static getRequestToken(){const e=process.env["ACTIONS_ID_TOKEN_REQUEST_TOKEN"];if(!e){throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable")}return e}static getIDTokenUrl(){const e=process.env["ACTIONS_ID_TOKEN_REQUEST_URL"];if(!e){throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable")}return e}static getCall(e){var t;return s(this,void 0,void 0,(function*(){const n=OidcClient.createHttpClient();const s=yield n.getJson(e).catch((e=>{throw new Error(`Failed to get ID Token. \n \n Error Code : ${e.statusCode}\n \n Error Message: ${e.message}`)}));const i=(t=s.result)===null||t===void 0?void 0:t.value;if(!i){throw new Error("Response json body do not have ID Token field")}return i}))}static getIDToken(e){return s(this,void 0,void 0,(function*(){try{let t=OidcClient.getIDTokenUrl();if(e){const n=encodeURIComponent(e);t=`${t}&audience=${n}`}h.debug(`ID token url is ${t}`);const n=yield OidcClient.getCall(t);h.setSecret(n);return n}catch(e){throw new Error(`Error message: ${e.message}`)}}))}}t.OidcClient=OidcClient},2981:function(e,t,n){"use strict";var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){if(s===undefined)s=n;Object.defineProperty(e,s,{enumerable:true,get:function(){return t[n]}})}:function(e,t,n,s){if(s===undefined)s=n;e[s]=t[n]});var i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.hasOwnProperty.call(e,n))s(t,e,n);i(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.toPlatformPath=t.toWin32Path=t.toPosixPath=void 0;const h=o(n(1017));function toPosixPath(e){return e.replace(/[\\]/g,"/")}t.toPosixPath=toPosixPath;function toWin32Path(e){return e.replace(/[/]/g,"\\")}t.toWin32Path=toWin32Path;function toPlatformPath(e){return e.replace(/[/\\]/g,h.sep)}t.toPlatformPath=toPlatformPath},1327:function(e,t,n){"use strict";var s=this&&this.__awaiter||function(e,t,n,s){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,i){function fulfilled(e){try{step(s.next(e))}catch(e){i(e)}}function rejected(e){try{step(s["throw"](e))}catch(e){i(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.summary=t.markdownSummary=t.SUMMARY_DOCS_URL=t.SUMMARY_ENV_VAR=void 0;const i=n(2037);const o=n(7147);const{access:h,appendFile:l,writeFile:u}=o.promises;t.SUMMARY_ENV_VAR="GITHUB_STEP_SUMMARY";t.SUMMARY_DOCS_URL="https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";class Summary{constructor(){this._buffer=""}filePath(){return s(this,void 0,void 0,(function*(){if(this._filePath){return this._filePath}const e=process.env[t.SUMMARY_ENV_VAR];if(!e){throw new Error(`Unable to find environment variable for $${t.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`)}try{yield h(e,o.constants.R_OK|o.constants.W_OK)}catch(t){throw new Error(`Unable to access summary file: '${e}'. Check if the file has correct read/write permissions.`)}this._filePath=e;return this._filePath}))}wrap(e,t,n={}){const s=Object.entries(n).map((([e,t])=>` ${e}="${t}"`)).join("");if(!t){return`<${e}${s}>`}return`<${e}${s}>${t}`}write(e){return s(this,void 0,void 0,(function*(){const t=!!(e===null||e===void 0?void 0:e.overwrite);const n=yield this.filePath();const s=t?u:l;yield s(n,this._buffer,{encoding:"utf8"});return this.emptyBuffer()}))}clear(){return s(this,void 0,void 0,(function*(){return this.emptyBuffer().write({overwrite:true})}))}stringify(){return this._buffer}isEmptyBuffer(){return this._buffer.length===0}emptyBuffer(){this._buffer="";return this}addRaw(e,t=false){this._buffer+=e;return t?this.addEOL():this}addEOL(){return this.addRaw(i.EOL)}addCodeBlock(e,t){const n=Object.assign({},t&&{lang:t});const s=this.wrap("pre",this.wrap("code",e),n);return this.addRaw(s).addEOL()}addList(e,t=false){const n=t?"ol":"ul";const s=e.map((e=>this.wrap("li",e))).join("");const i=this.wrap(n,s);return this.addRaw(i).addEOL()}addTable(e){const t=e.map((e=>{const t=e.map((e=>{if(typeof e==="string"){return this.wrap("td",e)}const{header:t,data:n,colspan:s,rowspan:i}=e;const o=t?"th":"td";const h=Object.assign(Object.assign({},s&&{colspan:s}),i&&{rowspan:i});return this.wrap(o,n,h)})).join("");return this.wrap("tr",t)})).join("");const n=this.wrap("table",t);return this.addRaw(n).addEOL()}addDetails(e,t){const n=this.wrap("details",this.wrap("summary",e)+t);return this.addRaw(n).addEOL()}addImage(e,t,n){const{width:s,height:i}=n||{};const o=Object.assign(Object.assign({},s&&{width:s}),i&&{height:i});const h=this.wrap("img",null,Object.assign({src:e,alt:t},o));return this.addRaw(h).addEOL()}addHeading(e,t){const n=`h${t}`;const s=["h1","h2","h3","h4","h5","h6"].includes(n)?n:"h1";const i=this.wrap(s,e);return this.addRaw(i).addEOL()}addSeparator(){const e=this.wrap("hr",null);return this.addRaw(e).addEOL()}addBreak(){const e=this.wrap("br",null);return this.addRaw(e).addEOL()}addQuote(e,t){const n=Object.assign({},t&&{cite:t});const s=this.wrap("blockquote",e,n);return this.addRaw(s).addEOL()}addLink(e,t){const n=this.wrap("a",e,{href:t});return this.addRaw(n).addEOL()}}const g=new Summary;t.markdownSummary=g;t.summary=g},5278:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.toCommandProperties=t.toCommandValue=void 0;function toCommandValue(e){if(e===null||e===undefined){return""}else if(typeof e==="string"||e instanceof String){return e}return JSON.stringify(e)}t.toCommandValue=toCommandValue;function toCommandProperties(e){if(!Object.keys(e).length){return{}}return{title:e.title,file:e.file,line:e.startLine,endLine:e.endLine,col:e.startColumn,endColumn:e.endColumn}}t.toCommandProperties=toCommandProperties},5526:function(e,t){"use strict";var n=this&&this.__awaiter||function(e,t,n,s){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,i){function fulfilled(e){try{step(s.next(e))}catch(e){i(e)}}function rejected(e){try{step(s["throw"](e))}catch(e){i(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.PersonalAccessTokenCredentialHandler=t.BearerCredentialHandler=t.BasicCredentialHandler=void 0;class BasicCredentialHandler{constructor(e,t){this.username=e;this.password=t}prepareRequest(e){if(!e.headers){throw Error("The request has no headers")}e.headers["Authorization"]=`Basic ${Buffer.from(`${this.username}:${this.password}`).toString("base64")}`}canHandleAuthentication(){return false}handleAuthentication(){return n(this,void 0,void 0,(function*(){throw new Error("not implemented")}))}}t.BasicCredentialHandler=BasicCredentialHandler;class BearerCredentialHandler{constructor(e){this.token=e}prepareRequest(e){if(!e.headers){throw Error("The request has no headers")}e.headers["Authorization"]=`Bearer ${this.token}`}canHandleAuthentication(){return false}handleAuthentication(){return n(this,void 0,void 0,(function*(){throw new Error("not implemented")}))}}t.BearerCredentialHandler=BearerCredentialHandler;class PersonalAccessTokenCredentialHandler{constructor(e){this.token=e}prepareRequest(e){if(!e.headers){throw Error("The request has no headers")}e.headers["Authorization"]=`Basic ${Buffer.from(`PAT:${this.token}`).toString("base64")}`}canHandleAuthentication(){return false}handleAuthentication(){return n(this,void 0,void 0,(function*(){throw new Error("not implemented")}))}}t.PersonalAccessTokenCredentialHandler=PersonalAccessTokenCredentialHandler},6255:function(e,t,n){"use strict";var s=this&&this.__createBinding||(Object.create?function(e,t,n,s){if(s===undefined)s=n;var i=Object.getOwnPropertyDescriptor(t,n);if(!i||("get"in i?!t.__esModule:i.writable||i.configurable)){i={enumerable:true,get:function(){return t[n]}}}Object.defineProperty(e,s,i)}:function(e,t,n,s){if(s===undefined)s=n;e[s]=t[n]});var i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)if(n!=="default"&&Object.prototype.hasOwnProperty.call(e,n))s(t,e,n);i(t,e);return t};var h=this&&this.__awaiter||function(e,t,n,s){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,i){function fulfilled(e){try{step(s.next(e))}catch(e){i(e)}}function rejected(e){try{step(s["throw"](e))}catch(e){i(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((s=s.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.HttpClient=t.isHttps=t.HttpClientResponse=t.HttpClientError=t.getProxyUrl=t.MediaTypes=t.Headers=t.HttpCodes=void 0;const l=o(n(3685));const u=o(n(5687));const g=o(n(9835));const f=o(n(4294));const E=n(1773);var I;(function(e){e[e["OK"]=200]="OK";e[e["MultipleChoices"]=300]="MultipleChoices";e[e["MovedPermanently"]=301]="MovedPermanently";e[e["ResourceMoved"]=302]="ResourceMoved";e[e["SeeOther"]=303]="SeeOther";e[e["NotModified"]=304]="NotModified";e[e["UseProxy"]=305]="UseProxy";e[e["SwitchProxy"]=306]="SwitchProxy";e[e["TemporaryRedirect"]=307]="TemporaryRedirect";e[e["PermanentRedirect"]=308]="PermanentRedirect";e[e["BadRequest"]=400]="BadRequest";e[e["Unauthorized"]=401]="Unauthorized";e[e["PaymentRequired"]=402]="PaymentRequired";e[e["Forbidden"]=403]="Forbidden";e[e["NotFound"]=404]="NotFound";e[e["MethodNotAllowed"]=405]="MethodNotAllowed";e[e["NotAcceptable"]=406]="NotAcceptable";e[e["ProxyAuthenticationRequired"]=407]="ProxyAuthenticationRequired";e[e["RequestTimeout"]=408]="RequestTimeout";e[e["Conflict"]=409]="Conflict";e[e["Gone"]=410]="Gone";e[e["TooManyRequests"]=429]="TooManyRequests";e[e["InternalServerError"]=500]="InternalServerError";e[e["NotImplemented"]=501]="NotImplemented";e[e["BadGateway"]=502]="BadGateway";e[e["ServiceUnavailable"]=503]="ServiceUnavailable";e[e["GatewayTimeout"]=504]="GatewayTimeout"})(I||(t.HttpCodes=I={}));var C;(function(e){e["Accept"]="accept";e["ContentType"]="content-type"})(C||(t.Headers=C={}));var B;(function(e){e["ApplicationJson"]="application/json"})(B||(t.MediaTypes=B={}));function getProxyUrl(e){const t=g.getProxyUrl(new URL(e));return t?t.href:""}t.getProxyUrl=getProxyUrl;const Q=[I.MovedPermanently,I.ResourceMoved,I.SeeOther,I.TemporaryRedirect,I.PermanentRedirect];const p=[I.BadGateway,I.ServiceUnavailable,I.GatewayTimeout];const y=["OPTIONS","GET","DELETE","HEAD"];const w=10;const b=5;class HttpClientError extends Error{constructor(e,t){super(e);this.name="HttpClientError";this.statusCode=t;Object.setPrototypeOf(this,HttpClientError.prototype)}}t.HttpClientError=HttpClientError;class HttpClientResponse{constructor(e){this.message=e}readBody(){return h(this,void 0,void 0,(function*(){return new Promise((e=>h(this,void 0,void 0,(function*(){let t=Buffer.alloc(0);this.message.on("data",(e=>{t=Buffer.concat([t,e])}));this.message.on("end",(()=>{e(t.toString())}))}))))}))}readBodyBuffer(){return h(this,void 0,void 0,(function*(){return new Promise((e=>h(this,void 0,void 0,(function*(){const t=[];this.message.on("data",(e=>{t.push(e)}));this.message.on("end",(()=>{e(Buffer.concat(t))}))}))))}))}}t.HttpClientResponse=HttpClientResponse;function isHttps(e){const t=new URL(e);return t.protocol==="https:"}t.isHttps=isHttps;class HttpClient{constructor(e,t,n){this._ignoreSslError=false;this._allowRedirects=true;this._allowRedirectDowngrade=false;this._maxRedirects=50;this._allowRetries=false;this._maxRetries=1;this._keepAlive=false;this._disposed=false;this.userAgent=e;this.handlers=t||[];this.requestOptions=n;if(n){if(n.ignoreSslError!=null){this._ignoreSslError=n.ignoreSslError}this._socketTimeout=n.socketTimeout;if(n.allowRedirects!=null){this._allowRedirects=n.allowRedirects}if(n.allowRedirectDowngrade!=null){this._allowRedirectDowngrade=n.allowRedirectDowngrade}if(n.maxRedirects!=null){this._maxRedirects=Math.max(n.maxRedirects,0)}if(n.keepAlive!=null){this._keepAlive=n.keepAlive}if(n.allowRetries!=null){this._allowRetries=n.allowRetries}if(n.maxRetries!=null){this._maxRetries=n.maxRetries}}}options(e,t){return h(this,void 0,void 0,(function*(){return this.request("OPTIONS",e,null,t||{})}))}get(e,t){return h(this,void 0,void 0,(function*(){return this.request("GET",e,null,t||{})}))}del(e,t){return h(this,void 0,void 0,(function*(){return this.request("DELETE",e,null,t||{})}))}post(e,t,n){return h(this,void 0,void 0,(function*(){return this.request("POST",e,t,n||{})}))}patch(e,t,n){return h(this,void 0,void 0,(function*(){return this.request("PATCH",e,t,n||{})}))}put(e,t,n){return h(this,void 0,void 0,(function*(){return this.request("PUT",e,t,n||{})}))}head(e,t){return h(this,void 0,void 0,(function*(){return this.request("HEAD",e,null,t||{})}))}sendStream(e,t,n,s){return h(this,void 0,void 0,(function*(){return this.request(e,t,n,s)}))}getJson(e,t={}){return h(this,void 0,void 0,(function*(){t[C.Accept]=this._getExistingOrDefaultHeader(t,C.Accept,B.ApplicationJson);const n=yield this.get(e,t);return this._processResponse(n,this.requestOptions)}))}postJson(e,t,n={}){return h(this,void 0,void 0,(function*(){const s=JSON.stringify(t,null,2);n[C.Accept]=this._getExistingOrDefaultHeader(n,C.Accept,B.ApplicationJson);n[C.ContentType]=this._getExistingOrDefaultHeader(n,C.ContentType,B.ApplicationJson);const i=yield this.post(e,s,n);return this._processResponse(i,this.requestOptions)}))}putJson(e,t,n={}){return h(this,void 0,void 0,(function*(){const s=JSON.stringify(t,null,2);n[C.Accept]=this._getExistingOrDefaultHeader(n,C.Accept,B.ApplicationJson);n[C.ContentType]=this._getExistingOrDefaultHeader(n,C.ContentType,B.ApplicationJson);const i=yield this.put(e,s,n);return this._processResponse(i,this.requestOptions)}))}patchJson(e,t,n={}){return h(this,void 0,void 0,(function*(){const s=JSON.stringify(t,null,2);n[C.Accept]=this._getExistingOrDefaultHeader(n,C.Accept,B.ApplicationJson);n[C.ContentType]=this._getExistingOrDefaultHeader(n,C.ContentType,B.ApplicationJson);const i=yield this.patch(e,s,n);return this._processResponse(i,this.requestOptions)}))}request(e,t,n,s){return h(this,void 0,void 0,(function*(){if(this._disposed){throw new Error("Client has already been disposed.")}const i=new URL(t);let o=this._prepareRequest(e,i,s);const h=this._allowRetries&&y.includes(e)?this._maxRetries+1:1;let l=0;let u;do{u=yield this.requestRaw(o,n);if(u&&u.message&&u.message.statusCode===I.Unauthorized){let e;for(const t of this.handlers){if(t.canHandleAuthentication(u)){e=t;break}}if(e){return e.handleAuthentication(this,o,n)}else{return u}}let t=this._maxRedirects;while(u.message.statusCode&&Q.includes(u.message.statusCode)&&this._allowRedirects&&t>0){const h=u.message.headers["location"];if(!h){break}const l=new URL(h);if(i.protocol==="https:"&&i.protocol!==l.protocol&&!this._allowRedirectDowngrade){throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.")}yield u.readBody();if(l.hostname!==i.hostname){for(const e in s){if(e.toLowerCase()==="authorization"){delete s[e]}}}o=this._prepareRequest(e,l,s);u=yield this.requestRaw(o,n);t--}if(!u.message.statusCode||!p.includes(u.message.statusCode)){return u}l+=1;if(l{function callbackForResult(e,t){if(e){s(e)}else if(!t){s(new Error("Unknown error"))}else{n(t)}}this.requestRawWithCallback(e,t,callbackForResult)}))}))}requestRawWithCallback(e,t,n){if(typeof t==="string"){if(!e.options.headers){e.options.headers={}}e.options.headers["Content-Length"]=Buffer.byteLength(t,"utf8")}let s=false;function handleResult(e,t){if(!s){s=true;n(e,t)}}const i=e.httpModule.request(e.options,(e=>{const t=new HttpClientResponse(e);handleResult(undefined,t)}));let o;i.on("socket",(e=>{o=e}));i.setTimeout(this._socketTimeout||3*6e4,(()=>{if(o){o.end()}handleResult(new Error(`Request timeout: ${e.options.path}`))}));i.on("error",(function(e){handleResult(e)}));if(t&&typeof t==="string"){i.write(t,"utf8")}if(t&&typeof t!=="string"){t.on("close",(function(){i.end()}));t.pipe(i)}else{i.end()}}getAgent(e){const t=new URL(e);return this._getAgent(t)}getAgentDispatcher(e){const t=new URL(e);const n=g.getProxyUrl(t);const s=n&&n.hostname;if(!s){return}return this._getProxyAgentDispatcher(t,n)}_prepareRequest(e,t,n){const s={};s.parsedUrl=t;const i=s.parsedUrl.protocol==="https:";s.httpModule=i?u:l;const o=i?443:80;s.options={};s.options.host=s.parsedUrl.hostname;s.options.port=s.parsedUrl.port?parseInt(s.parsedUrl.port):o;s.options.path=(s.parsedUrl.pathname||"")+(s.parsedUrl.search||"");s.options.method=e;s.options.headers=this._mergeHeaders(n);if(this.userAgent!=null){s.options.headers["user-agent"]=this.userAgent}s.options.agent=this._getAgent(s.parsedUrl);if(this.handlers){for(const e of this.handlers){e.prepareRequest(s.options)}}return s}_mergeHeaders(e){if(this.requestOptions&&this.requestOptions.headers){return Object.assign({},lowercaseKeys(this.requestOptions.headers),lowercaseKeys(e||{}))}return lowercaseKeys(e||{})}_getExistingOrDefaultHeader(e,t,n){let s;if(this.requestOptions&&this.requestOptions.headers){s=lowercaseKeys(this.requestOptions.headers)[t]}return e[t]||s||n}_getAgent(e){let t;const n=g.getProxyUrl(e);const s=n&&n.hostname;if(this._keepAlive&&s){t=this._proxyAgent}if(this._keepAlive&&!s){t=this._agent}if(t){return t}const i=e.protocol==="https:";let o=100;if(this.requestOptions){o=this.requestOptions.maxSockets||l.globalAgent.maxSockets}if(n&&n.hostname){const e={maxSockets:o,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})};let s;const h=n.protocol==="https:";if(i){s=h?f.httpsOverHttps:f.httpsOverHttp}else{s=h?f.httpOverHttps:f.httpOverHttp}t=s(e);this._proxyAgent=t}if(this._keepAlive&&!t){const e={keepAlive:this._keepAlive,maxSockets:o};t=i?new u.Agent(e):new l.Agent(e);this._agent=t}if(!t){t=i?u.globalAgent:l.globalAgent}if(i&&this._ignoreSslError){t.options=Object.assign(t.options||{},{rejectUnauthorized:false})}return t}_getProxyAgentDispatcher(e,t){let n;if(this._keepAlive){n=this._proxyAgentDispatcher}if(n){return n}const s=e.protocol==="https:";n=new E.ProxyAgent(Object.assign({uri:t.href,pipelining:!this._keepAlive?0:1},(t.username||t.password)&&{token:`${t.username}:${t.password}`}));this._proxyAgentDispatcher=n;if(s&&this._ignoreSslError){n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:false})}return n}_performExponentialBackoff(e){return h(this,void 0,void 0,(function*(){e=Math.min(w,e);const t=b*Math.pow(2,e);return new Promise((e=>setTimeout((()=>e()),t)))}))}_processResponse(e,t){return h(this,void 0,void 0,(function*(){return new Promise(((n,s)=>h(this,void 0,void 0,(function*(){const i=e.message.statusCode||0;const o={statusCode:i,result:null,headers:{}};if(i===I.NotFound){n(o)}function dateTimeDeserializer(e,t){if(typeof t==="string"){const e=new Date(t);if(!isNaN(e.valueOf())){return e}}return t}let h;let l;try{l=yield e.readBody();if(l&&l.length>0){if(t&&t.deserializeDates){h=JSON.parse(l,dateTimeDeserializer)}else{h=JSON.parse(l)}o.result=h}o.headers=e.message.headers}catch(e){}if(i>299){let e;if(h&&h.message){e=h.message}else if(l&&l.length>0){e=l}else{e=`Failed request: (${i})`}const t=new HttpClientError(e,i);t.result=o.result;s(t)}else{n(o)}}))))}))}}t.HttpClient=HttpClient;const lowercaseKeys=e=>Object.keys(e).reduce(((t,n)=>(t[n.toLowerCase()]=e[n],t)),{})},9835:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.checkBypass=t.getProxyUrl=void 0;function getProxyUrl(e){const t=e.protocol==="https:";if(checkBypass(e)){return undefined}const n=(()=>{if(t){return process.env["https_proxy"]||process.env["HTTPS_PROXY"]}else{return process.env["http_proxy"]||process.env["HTTP_PROXY"]}})();if(n){try{return new URL(n)}catch(e){if(!n.startsWith("http://")&&!n.startsWith("https://"))return new URL(`http://${n}`)}}else{return undefined}}t.getProxyUrl=getProxyUrl;function checkBypass(e){if(!e.hostname){return false}const t=e.hostname;if(isLoopbackAddress(t)){return true}const n=process.env["no_proxy"]||process.env["NO_PROXY"]||"";if(!n){return false}let s;if(e.port){s=Number(e.port)}else if(e.protocol==="http:"){s=80}else if(e.protocol==="https:"){s=443}const i=[e.hostname.toUpperCase()];if(typeof s==="number"){i.push(`${i[0]}:${s}`)}for(const e of n.split(",").map((e=>e.trim().toUpperCase())).filter((e=>e))){if(e==="*"||i.some((t=>t===e||t.endsWith(`.${e}`)||e.startsWith(".")&&t.endsWith(`${e}`)))){return true}}return false}t.checkBypass=checkBypass;function isLoopbackAddress(e){const t=e.toLowerCase();return t==="localhost"||t.startsWith("127.")||t.startsWith("[::1]")||t.startsWith("[0:0:0:0:0:0:0:1]")}},9348:e=>{e.exports={newInvalidAsn1Error:function(e){var t=new Error;t.name="InvalidAsn1Error";t.message=e||"";return t}}},194:(e,t,n)=>{var s=n(9348);var i=n(2473);var o=n(290);var h=n(3200);e.exports={Reader:o,Writer:h};for(var l in i){if(i.hasOwnProperty(l))e.exports[l]=i[l]}for(var u in s){if(s.hasOwnProperty(u))e.exports[u]=s[u]}},290:(e,t,n)=>{var s=n(9491);var i=n(5118).Buffer;var o=n(2473);var h=n(9348);var l=h.newInvalidAsn1Error;function Reader(e){if(!e||!i.isBuffer(e))throw new TypeError("data must be a node Buffer");this._buf=e;this._size=e.length;this._len=0;this._offset=0}Object.defineProperty(Reader.prototype,"length",{enumerable:true,get:function(){return this._len}});Object.defineProperty(Reader.prototype,"offset",{enumerable:true,get:function(){return this._offset}});Object.defineProperty(Reader.prototype,"remain",{get:function(){return this._size-this._offset}});Object.defineProperty(Reader.prototype,"buffer",{get:function(){return this._buf.slice(this._offset)}});Reader.prototype.readByte=function(e){if(this._size-this._offset<1)return null;var t=this._buf[this._offset]&255;if(!e)this._offset+=1;return t};Reader.prototype.peek=function(){return this.readByte(true)};Reader.prototype.readLength=function(e){if(e===undefined)e=this._offset;if(e>=this._size)return null;var t=this._buf[e++]&255;if(t===null)return null;if((t&128)===128){t&=127;if(t===0)throw l("Indefinite length not supported");if(t>4)throw l("encoding too long");if(this._size-ethis._size-s)return null;this._offset=s;if(this.length===0)return t?i.alloc(0):"";var h=this._buf.slice(this._offset,this._offset+this.length);this._offset+=this.length;return t?h:h.toString("utf8")};Reader.prototype.readOID=function(e){if(!e)e=o.OID;var t=this.readString(e,true);if(t===null)return null;var n=[];var s=0;for(var i=0;i>0);return n.join(".")};Reader.prototype._readTag=function(e){s.ok(e!==undefined);var t=this.peek();if(t===null)return null;if(t!==e)throw l("Expected 0x"+e.toString(16)+": got 0x"+t.toString(16));var n=this.readLength(this._offset+1);if(n===null)return null;if(this.length>4)throw l("Integer too long: "+this.length);if(this.length>this._size-n)return null;this._offset=n;var i=this._buf[this._offset];var o=0;for(var h=0;h>0};e.exports=Reader},2473:e=>{e.exports={EOC:0,Boolean:1,Integer:2,BitString:3,OctetString:4,Null:5,OID:6,ObjectDescriptor:7,External:8,Real:9,Enumeration:10,PDV:11,Utf8String:12,RelativeOID:13,Sequence:16,Set:17,NumericString:18,PrintableString:19,T61String:20,VideotexString:21,IA5String:22,UTCTime:23,GeneralizedTime:24,GraphicString:25,VisibleString:26,GeneralString:28,UniversalString:29,CharacterString:30,BMPString:31,Constructor:32,Context:128}},3200:(e,t,n)=>{var s=n(9491);var i=n(5118).Buffer;var o=n(2473);var h=n(9348);var l=h.newInvalidAsn1Error;var u={size:1024,growthFactor:8};function merge(e,t){s.ok(e);s.equal(typeof e,"object");s.ok(t);s.equal(typeof t,"object");var n=Object.getOwnPropertyNames(e);n.forEach((function(n){if(t[n])return;var s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s)}));return t}function Writer(e){e=merge(u,e||{});this._buf=i.alloc(e.size||1024);this._size=this._buf.length;this._offset=0;this._options=e;this._seq=[]}Object.defineProperty(Writer.prototype,"buffer",{get:function(){if(this._seq.length)throw l(this._seq.length+" unended sequence(s)");return this._buf.slice(0,this._offset)}});Writer.prototype.writeByte=function(e){if(typeof e!=="number")throw new TypeError("argument must be a Number");this._ensure(1);this._buf[this._offset++]=e};Writer.prototype.writeInt=function(e,t){if(typeof e!=="number")throw new TypeError("argument must be a Number");if(typeof t!=="number")t=o.Integer;var n=4;while(((e&4286578688)===0||(e&4286578688)===4286578688>>0)&&n>1){n--;e<<=8}if(n>4)throw l("BER ints cannot be > 0xffffffff");this._ensure(2+n);this._buf[this._offset++]=t;this._buf[this._offset++]=n;while(n-- >0){this._buf[this._offset++]=(e&4278190080)>>>24;e<<=8}};Writer.prototype.writeNull=function(){this.writeByte(o.Null);this.writeByte(0)};Writer.prototype.writeEnumeration=function(e,t){if(typeof e!=="number")throw new TypeError("argument must be a Number");if(typeof t!=="number")t=o.Enumeration;return this.writeInt(e,t)};Writer.prototype.writeBoolean=function(e,t){if(typeof e!=="boolean")throw new TypeError("argument must be a Boolean");if(typeof t!=="number")t=o.Boolean;this._ensure(3);this._buf[this._offset++]=t;this._buf[this._offset++]=1;this._buf[this._offset++]=e?255:0};Writer.prototype.writeString=function(e,t){if(typeof e!=="string")throw new TypeError("argument must be a string (was: "+typeof e+")");if(typeof t!=="number")t=o.OctetString;var n=i.byteLength(e);this.writeByte(t);this.writeLength(n);if(n){this._ensure(n);this._buf.write(e,this._offset);this._offset+=n}};Writer.prototype.writeBuffer=function(e,t){if(typeof t!=="number")throw new TypeError("tag must be a number");if(!i.isBuffer(e))throw new TypeError("argument must be a buffer");this.writeByte(t);this.writeLength(e.length);this._ensure(e.length);e.copy(this._buf,this._offset,0,e.length);this._offset+=e.length};Writer.prototype.writeStringArray=function(e){if(!e instanceof Array)throw new TypeError("argument must be an Array[String]");var t=this;e.forEach((function(e){t.writeString(e)}))};Writer.prototype.writeOID=function(e,t){if(typeof e!=="string")throw new TypeError("argument must be a string");if(typeof t!=="number")t=o.OID;if(!/^([0-9]+\.){3,}[0-9]+$/.test(e))throw new Error("argument is not a valid OID string");function encodeOctet(e,t){if(t<128){e.push(t)}else if(t<16384){e.push(t>>>7|128);e.push(t&127)}else if(t<2097152){e.push(t>>>14|128);e.push((t>>>7|128)&255);e.push(t&127)}else if(t<268435456){e.push(t>>>21|128);e.push((t>>>14|128)&255);e.push((t>>>7|128)&255);e.push(t&127)}else{e.push((t>>>28|128)&255);e.push((t>>>21|128)&255);e.push((t>>>14|128)&255);e.push((t>>>7|128)&255);e.push(t&127)}}var n=e.split(".");var s=[];s.push(parseInt(n[0],10)*40+parseInt(n[1],10));n.slice(2).forEach((function(e){encodeOctet(s,parseInt(e,10))}));var i=this;this._ensure(2+s.length);this.writeByte(t);this.writeLength(s.length);s.forEach((function(e){i.writeByte(e)}))};Writer.prototype.writeLength=function(e){if(typeof e!=="number")throw new TypeError("argument must be a Number");this._ensure(4);if(e<=127){this._buf[this._offset++]=e}else if(e<=255){this._buf[this._offset++]=129;this._buf[this._offset++]=e}else if(e<=65535){this._buf[this._offset++]=130;this._buf[this._offset++]=e>>8;this._buf[this._offset++]=e}else if(e<=16777215){this._buf[this._offset++]=131;this._buf[this._offset++]=e>>16;this._buf[this._offset++]=e>>8;this._buf[this._offset++]=e}else{throw l("Length too long (> 4 bytes)")}};Writer.prototype.startSequence=function(e){if(typeof e!=="number")e=o.Sequence|o.Constructor;this.writeByte(e);this._seq.push(this._offset);this._ensure(3);this._offset+=3};Writer.prototype.endSequence=function(){var e=this._seq.pop();var t=e+3;var n=this._offset-t;if(n<=127){this._shift(t,n,-2);this._buf[e]=n}else if(n<=255){this._shift(t,n,-1);this._buf[e]=129;this._buf[e+1]=n}else if(n<=65535){this._buf[e]=130;this._buf[e+1]=n>>8;this._buf[e+2]=n}else if(n<=16777215){this._shift(t,n,1);this._buf[e]=131;this._buf[e+1]=n>>16;this._buf[e+2]=n>>8;this._buf[e+3]=n}else{throw l("Sequence too long")}};Writer.prototype._shift=function(e,t,n){s.ok(e!==undefined);s.ok(t!==undefined);s.ok(n);this._buf.copy(this._buf,e+n,e,e+t);this._offset+=n};Writer.prototype._ensure=function(e){s.ok(e);if(this._size-this._offset{var s=n(194);e.exports={Ber:s,BerReader:s.Reader,BerWriter:s.Writer}},9417:e=>{"use strict";e.exports=balanced;function balanced(e,t,n){if(e instanceof RegExp)e=maybeMatch(e,n);if(t instanceof RegExp)t=maybeMatch(t,n);var s=range(e,t,n);return s&&{start:s[0],end:s[1],pre:n.slice(0,s[0]),body:n.slice(s[0]+e.length,s[1]),post:n.slice(s[1]+t.length)}}function maybeMatch(e,t){var n=t.match(e);return n?n[0]:null}balanced.range=range;function range(e,t,n){var s,i,o,h,l;var u=n.indexOf(e);var g=n.indexOf(t,u+1);var f=u;if(u>=0&&g>0){if(e===t){return[u,g]}s=[];o=n.length;while(f>=0&&!l){if(f==u){s.push(f);u=n.indexOf(e,f+1)}else if(s.length==1){l=[s.pop(),g]}else{i=s.pop();if(i=0?u:g}if(s.length){l=[o,h]}}return l}},5447:(e,t,n)=>{"use strict";var s=n(8729).lowlevel.crypto_hash;var i=0;var Blowfish=function(){this.S=[new Uint32Array([3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946]),new Uint32Array([1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055]),new Uint32Array([3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504]),new Uint32Array([976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462])];this.P=new Uint32Array([608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731])};function F(e,t,n){return(e[0][t[n+3]]+e[1][t[n+2]]^e[2][t[n+1]])+e[3][t[n]]}Blowfish.prototype.encipher=function(e,t){if(t===undefined){t=new Uint8Array(e.buffer);if(e.byteOffset!==0)t=t.subarray(e.byteOffset)}e[0]^=this.P[0];for(var n=1;n<16;n+=2){e[1]^=F(this.S,t,0)^this.P[n];e[0]^=F(this.S,t,4)^this.P[n+1]}var s=e[0];e[0]=e[1]^this.P[17];e[1]=s};Blowfish.prototype.decipher=function(e){var t=new Uint8Array(e.buffer);if(e.byteOffset!==0)t=t.subarray(e.byteOffset);e[0]^=this.P[17];for(var n=16;n>0;n-=2){e[1]^=F(this.S,t,0)^this.P[n];e[0]^=F(this.S,t,4)^this.P[n-1]}var s=e[0];e[0]=e[1]^this.P[0];e[1]=s};function stream2word(e,t){var n,s=0;for(n=0;n<4;n++,i++){if(i>=t)i=0;s=s<<8|e[i]}return s}Blowfish.prototype.expand0state=function(e,t){var n=new Uint32Array(2),s,o;var h=new Uint8Array(n.buffer);for(s=0,i=0;s<18;s++){this.P[s]^=stream2word(e,t)}i=0;for(s=0;s<18;s+=2){this.encipher(n,h);this.P[s]=n[0];this.P[s+1]=n[1]}for(s=0;s<4;s++){for(o=0;o<256;o+=2){this.encipher(n,h);this.S[s][o]=n[0];this.S[s][o+1]=n[1]}}};Blowfish.prototype.expandstate=function(e,t,n,s){var o=new Uint32Array(2),h,l;for(h=0,i=0;h<18;h++){this.P[h]^=stream2word(n,s)}for(h=0,i=0;h<18;h+=2){o[0]^=stream2word(e,t);o[1]^=stream2word(e,t);this.encipher(o);this.P[h]=o[0];this.P[h+1]=o[1]}for(h=0;h<4;h++){for(l=0;l<256;l+=2){o[0]^=stream2word(e,t);o[1]^=stream2word(e,t);this.encipher(o);this.S[h][l]=o[0];this.S[h][l+1]=o[1]}}i=0};Blowfish.prototype.enc=function(e,t){for(var n=0;n>>24;n[4*h+2]=i[h]>>>16;n[4*h+1]=i[h]>>>8;n[4*h+0]=i[h]}}function bcrypt_pbkdf(e,t,n,i,o,l,u){var g=new Uint8Array(64),f=new Uint8Array(64),E=new Uint8Array(h),I=new Uint8Array(h),C=new Uint8Array(i+4),B,Q,p,y,w,b,R=l;if(u<1)return-1;if(t===0||i===0||l===0||l>E.byteLength*E.byteLength||i>1<<20)return-1;y=Math.floor((l+E.byteLength-1)/E.byteLength);p=Math.floor((l+y-1)/y);for(B=0;B0;b++){C[i+0]=b>>>24;C[i+1]=b>>>16;C[i+2]=b>>>8;C[i+3]=b;s(f,C,i+4);bcrypt_hash(g,f,I);for(B=E.byteLength;B--;)E[B]=I[B];for(B=1;B=R)break;o[w]=E[B]}l-=B}return 0}e.exports={BLOCKS:o,HASHSIZE:h,hash:bcrypt_hash,pbkdf:bcrypt_pbkdf}},3717:(e,t,n)=>{var s=n(9417);e.exports=expandTop;var i="\0SLASH"+Math.random()+"\0";var o="\0OPEN"+Math.random()+"\0";var h="\0CLOSE"+Math.random()+"\0";var l="\0COMMA"+Math.random()+"\0";var u="\0PERIOD"+Math.random()+"\0";function numeric(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function escapeBraces(e){return e.split("\\\\").join(i).split("\\{").join(o).split("\\}").join(h).split("\\,").join(l).split("\\.").join(u)}function unescapeBraces(e){return e.split(i).join("\\").split(o).join("{").split(h).join("}").split(l).join(",").split(u).join(".")}function parseCommaParts(e){if(!e)return[""];var t=[];var n=s("{","}",e);if(!n)return e.split(",");var i=n.pre;var o=n.body;var h=n.post;var l=i.split(",");l[l.length-1]+="{"+o+"}";var u=parseCommaParts(h);if(h.length){l[l.length-1]+=u.shift();l.push.apply(l,u)}t.push.apply(t,l);return t}function expandTop(e){if(!e)return[];if(e.substr(0,2)==="{}"){e="\\{\\}"+e.substr(2)}return expand(escapeBraces(e),true).map(unescapeBraces)}function embrace(e){return"{"+e+"}"}function isPadded(e){return/^-?0\d/.test(e)}function lte(e,t){return e<=t}function gte(e,t){return e>=t}function expand(e,t){var n=[];var i=s("{","}",e);if(!i)return[e];var o=i.pre;var l=i.post.length?expand(i.post,false):[""];if(/\$$/.test(i.pre)){for(var u=0;u=0;if(!I&&!C){if(i.post.match(/,.*\}/)){e=i.pre+"{"+i.body+h+i.post;return expand(e)}return[e]}var B;if(I){B=i.body.split(/\.\./)}else{B=parseCommaParts(i.body);if(B.length===1){B=expand(B[0],false).map(embrace);if(B.length===1){return l.map((function(e){return i.pre+B[0]+e}))}}}var Q;if(I){var p=numeric(B[0]);var y=numeric(B[1]);var w=Math.max(B[0].length,B[1].length);var b=B.length==3?Math.abs(numeric(B[2])):1;var R=lte;var k=y0){var v=new Array(L+1).join("0");if(D<0)U="-"+v+U.slice(1);else U=v+U}}}Q.push(U)}}else{Q=[];for(var T=0;T{var t=Object.prototype.toString;var n=typeof Buffer!=="undefined"&&typeof Buffer.alloc==="function"&&typeof Buffer.allocUnsafe==="function"&&typeof Buffer.from==="function";function isArrayBuffer(e){return t.call(e).slice(8,-1)==="ArrayBuffer"}function fromArrayBuffer(e,t,s){t>>>=0;var i=e.byteLength-t;if(i<0){throw new RangeError("'offset' is out of bounds")}if(s===undefined){s=i}else{s>>>=0;if(s>i){throw new RangeError("'length' is out of bounds")}}return n?Buffer.from(e.slice(t,t+s)):new Buffer(new Uint8Array(e.slice(t,t+s)))}function fromString(e,t){if(typeof t!=="string"||t===""){t="utf8"}if(!Buffer.isEncoding(t)){throw new TypeError('"encoding" must be a valid string encoding')}return n?Buffer.from(e,t):new Buffer(e,t)}function bufferFrom(e,t,s){if(typeof e==="number"){throw new TypeError('"value" argument must not be a number')}if(isArrayBuffer(e)){return fromArrayBuffer(e,t,s)}if(typeof e==="string"){return fromString(e,t)}return n?Buffer.from(e):new Buffer(e)}e.exports=bufferFrom},5107:(e,t,n)=>{var s=n(1642).Writable;var i=n(4124);var o=n(3018);if(typeof Uint8Array==="undefined"){var h=n(5027).U2}else{var h=Uint8Array}function ConcatStream(e,t){if(!(this instanceof ConcatStream))return new ConcatStream(e,t);if(typeof e==="function"){t=e;e={}}if(!e)e={};var n=e.encoding;var i=false;if(!n){i=true}else{n=String(n).toLowerCase();if(n==="u8"||n==="uint8"){n="uint8array"}}s.call(this,{objectMode:true});this.encoding=n;this.shouldInferEncoding=i;if(t)this.on("finish",(function(){t(this.getBody())}));this.body=[]}e.exports=ConcatStream;i(ConcatStream,s);ConcatStream.prototype._write=function(e,t,n){this.body.push(e);n()};ConcatStream.prototype.inferEncoding=function(e){var t=e===undefined?this.body[0]:e;if(Buffer.isBuffer(t))return"buffer";if(typeof Uint8Array!=="undefined"&&t instanceof Uint8Array)return"uint8array";if(Array.isArray(t))return"array";if(typeof t==="string")return"string";if(Object.prototype.toString.call(t)==="[object Object]")return"object";return"buffer"};ConcatStream.prototype.getBody=function(){if(!this.encoding&&this.body.length===0)return[];if(this.shouldInferEncoding)this.encoding=this.inferEncoding();if(this.encoding==="array")return arrayConcat(this.body);if(this.encoding==="string")return stringConcat(this.body);if(this.encoding==="buffer")return bufferConcat(this.body);if(this.encoding==="uint8array")return u8Concat(this.body);return this.body};var l=Array.isArray||function(e){return Object.prototype.toString.call(e)=="[object Array]"};function isArrayish(e){return/Array\]$/.test(Object.prototype.toString.call(e))}function isBufferish(e){return typeof e==="string"||isArrayish(e)||e&&typeof e.subarray==="function"}function stringConcat(e){var t=[];var n=false;for(var s=0;s{"use strict";function assign(e,t){for(const n in t){Object.defineProperty(e,n,{value:t[n],enumerable:true,configurable:true})}return e}function createError(e,t,n){if(!e||typeof e==="string"){throw new TypeError("Please pass an Error to err-code")}if(!n){n={}}if(typeof t==="object"){n=t;t=undefined}if(t!=null){n.code=t}try{return assign(e,n)}catch(t){n.message=e.message;n.stack=e.stack;const ErrClass=function(){};ErrClass.prototype=Object.create(Object.getPrototypeOf(e));return assign(new ErrClass,n)}}e.exports=createError},4124:(e,t,n)=>{try{var s=n(3837);if(typeof s.inherits!=="function")throw"";e.exports=s.inherits}catch(t){e.exports=n(8544)}},8544:e=>{if(typeof Object.create==="function"){e.exports=function inherits(e,t){if(t){e.super_=t;e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}})}}}else{e.exports=function inherits(e,t){if(t){e.super_=t;var TempCtor=function(){};TempCtor.prototype=t.prototype;e.prototype=new TempCtor;e.prototype.constructor=e}}}},7684:(e,t,n)=>{"use strict";const s=n(5185);const pLimit=e=>{if(!((Number.isInteger(e)||e===Infinity)&&e>0)){throw new TypeError("Expected `concurrency` to be a number from 1 and up")}const t=new s;let n=0;const next=()=>{n--;if(t.size>0){t.dequeue()()}};const run=async(e,t,...s)=>{n++;const i=(async()=>e(...s))();t(i);try{await i}catch{}next()};const enqueue=(s,i,...o)=>{t.enqueue(run.bind(null,s,i,...o));(async()=>{await Promise.resolve();if(n0){t.dequeue()()}})()};const generator=(e,...t)=>new Promise((n=>{enqueue(e,n,...t)}));Object.defineProperties(generator,{activeCount:{get:()=>n},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}}});return generator};e.exports=pLimit},4742:(e,t,n)=>{"use strict";var s=n(2997);var i=n(1604);var o=Object.prototype.hasOwnProperty;function isRetryError(e){return e&&e.code==="EPROMISERETRY"&&o.call(e,"retried")}function promiseRetry(e,t){var n;var o;if(typeof e==="object"&&typeof t==="function"){n=t;t=e;e=n}o=i.operation(t);return new Promise((function(t,n){o.attempt((function(i){Promise.resolve().then((function(){return e((function(e){if(isRetryError(e)){e=e.retried}throw s(new Error("Retrying"),"EPROMISERETRY",{retried:e})}),i)})).then(t,(function(e){if(isRetryError(e)){e=e.retried;if(o.retry(e||new Error)){return}}n(e)}))}))}))}e.exports=promiseRetry},7214:e=>{"use strict";const t={};function createErrorType(e,n,s){if(!s){s=Error}function getMessage(e,t,s){if(typeof n==="string"){return n}else{return n(e,t,s)}}class NodeError extends s{constructor(e,t,n){super(getMessage(e,t,n))}}NodeError.prototype.name=s.name;NodeError.prototype.code=e;t[e]=NodeError}function oneOf(e,t){if(Array.isArray(e)){const n=e.length;e=e.map((e=>String(e)));if(n>2){return`one of ${t} ${e.slice(0,n-1).join(", ")}, or `+e[n-1]}else if(n===2){return`one of ${t} ${e[0]} or ${e[1]}`}else{return`of ${t} ${e[0]}`}}else{return`of ${t} ${String(e)}`}}function startsWith(e,t,n){return e.substr(!n||n<0?0:+n,t.length)===t}function endsWith(e,t,n){if(n===undefined||n>e.length){n=e.length}return e.substring(n-t.length,n)===t}function includes(e,t,n){if(typeof n!=="number"){n=0}if(n+t.length>e.length){return false}else{return e.indexOf(t,n)!==-1}}createErrorType("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError);createErrorType("ERR_INVALID_ARG_TYPE",(function(e,t,n){let s;if(typeof t==="string"&&startsWith(t,"not ")){s="must not be";t=t.replace(/^not /,"")}else{s="must be"}let i;if(endsWith(e," argument")){i=`The ${e} ${s} ${oneOf(t,"type")}`}else{const n=includes(e,".")?"property":"argument";i=`The "${e}" ${n} ${s} ${oneOf(t,"type")}`}i+=`. Received type ${typeof n}`;return i}),TypeError);createErrorType("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");createErrorType("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"}));createErrorType("ERR_STREAM_PREMATURE_CLOSE","Premature close");createErrorType("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"}));createErrorType("ERR_MULTIPLE_CALLBACK","Callback called multiple times");createErrorType("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");createErrorType("ERR_STREAM_WRITE_AFTER_END","write after end");createErrorType("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);createErrorType("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError);createErrorType("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");e.exports.q=t},1359:(e,t,n)=>{"use strict";var s=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=Duplex;var i=n(1433);var o=n(6993);n(4124)(Duplex,i);{var h=s(o.prototype);for(var l=0;l{"use strict";e.exports=PassThrough;var s=n(4415);n(4124)(PassThrough,s);function PassThrough(e){if(!(this instanceof PassThrough))return new PassThrough(e);s.call(this,e)}PassThrough.prototype._transform=function(e,t,n){n(null,e)}},1433:(e,t,n)=>{"use strict";e.exports=Readable;var s;Readable.ReadableState=ReadableState;var i=n(2361).EventEmitter;var o=function EElistenerCount(e,t){return e.listeners(t).length};var h=n(2387);var l=n(4300).Buffer;var u=(typeof global!=="undefined"?global:typeof window!=="undefined"?window:typeof self!=="undefined"?self:{}).Uint8Array||function(){};function _uint8ArrayToBuffer(e){return l.from(e)}function _isUint8Array(e){return l.isBuffer(e)||e instanceof u}var g=n(3837);var f;if(g&&g.debuglog){f=g.debuglog("stream")}else{f=function debug(){}}var E=n(6522);var I=n(7049);var C=n(9948),B=C.getHighWaterMark;var Q=n(7214).q,p=Q.ERR_INVALID_ARG_TYPE,y=Q.ERR_STREAM_PUSH_AFTER_EOF,w=Q.ERR_METHOD_NOT_IMPLEMENTED,b=Q.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;var R;var k;var _;n(4124)(Readable,h);var D=I.errorOrDestroy;var U=["error","close","destroy","pause","resume"];function prependListener(e,t,n){if(typeof e.prependListener==="function")return e.prependListener(t,n);if(!e._events||!e._events[t])e.on(t,n);else if(Array.isArray(e._events[t]))e._events[t].unshift(n);else e._events[t]=[n,e._events[t]]}function ReadableState(e,t,i){s=s||n(1359);e=e||{};if(typeof i!=="boolean")i=t instanceof s;this.objectMode=!!e.objectMode;if(i)this.objectMode=this.objectMode||!!e.readableObjectMode;this.highWaterMark=B(this,e,"readableHighWaterMark",i);this.buffer=new E;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.paused=true;this.emitClose=e.emitClose!==false;this.autoDestroy=!!e.autoDestroy;this.destroyed=false;this.defaultEncoding=e.defaultEncoding||"utf8";this.awaitDrain=0;this.readingMore=false;this.decoder=null;this.encoding=null;if(e.encoding){if(!R)R=n(4841).s;this.decoder=new R(e.encoding);this.encoding=e.encoding}}function Readable(e){s=s||n(1359);if(!(this instanceof Readable))return new Readable(e);var t=this instanceof s;this._readableState=new ReadableState(e,this,t);this.readable=true;if(e){if(typeof e.read==="function")this._read=e.read;if(typeof e.destroy==="function")this._destroy=e.destroy}h.call(this)}Object.defineProperty(Readable.prototype,"destroyed",{enumerable:false,get:function get(){if(this._readableState===undefined){return false}return this._readableState.destroyed},set:function set(e){if(!this._readableState){return}this._readableState.destroyed=e}});Readable.prototype.destroy=I.destroy;Readable.prototype._undestroy=I.undestroy;Readable.prototype._destroy=function(e,t){t(e)};Readable.prototype.push=function(e,t){var n=this._readableState;var s;if(!n.objectMode){if(typeof e==="string"){t=t||n.defaultEncoding;if(t!==n.encoding){e=l.from(e,t);t=""}s=true}}else{s=true}return readableAddChunk(this,e,t,false,s)};Readable.prototype.unshift=function(e){return readableAddChunk(this,e,null,true,false)};function readableAddChunk(e,t,n,s,i){f("readableAddChunk",t);var o=e._readableState;if(t===null){o.reading=false;onEofChunk(e,o)}else{var h;if(!i)h=chunkInvalid(o,t);if(h){D(e,h)}else if(o.objectMode||t&&t.length>0){if(typeof t!=="string"&&!o.objectMode&&Object.getPrototypeOf(t)!==l.prototype){t=_uint8ArrayToBuffer(t)}if(s){if(o.endEmitted)D(e,new b);else addChunk(e,o,t,true)}else if(o.ended){D(e,new y)}else if(o.destroyed){return false}else{o.reading=false;if(o.decoder&&!n){t=o.decoder.write(t);if(o.objectMode||t.length!==0)addChunk(e,o,t,false);else maybeReadMore(e,o)}else{addChunk(e,o,t,false)}}}else if(!s){o.reading=false;maybeReadMore(e,o)}}return!o.ended&&(o.length=L){e=L}else{e--;e|=e>>>1;e|=e>>>2;e|=e>>>4;e|=e>>>8;e|=e>>>16;e++}return e}function howMuchToRead(e,t){if(e<=0||t.length===0&&t.ended)return 0;if(t.objectMode)return 1;if(e!==e){if(t.flowing&&t.length)return t.buffer.head.data.length;else return t.length}if(e>t.highWaterMark)t.highWaterMark=computeNewHighWaterMark(e);if(e<=t.length)return e;if(!t.ended){t.needReadable=true;return 0}return t.length}Readable.prototype.read=function(e){f("read",e);e=parseInt(e,10);var t=this._readableState;var n=e;if(e!==0)t.emittedReadable=false;if(e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended)){f("read: emitReadable",t.length,t.ended);if(t.length===0&&t.ended)endReadable(this);else emitReadable(this);return null}e=howMuchToRead(e,t);if(e===0&&t.ended){if(t.length===0)endReadable(this);return null}var s=t.needReadable;f("need readable",s);if(t.length===0||t.length-e0)i=fromList(e,t);else i=null;if(i===null){t.needReadable=t.length<=t.highWaterMark;e=0}else{t.length-=e;t.awaitDrain=0}if(t.length===0){if(!t.ended)t.needReadable=true;if(n!==e&&t.ended)endReadable(this)}if(i!==null)this.emit("data",i);return i};function onEofChunk(e,t){f("onEofChunk");if(t.ended)return;if(t.decoder){var n=t.decoder.end();if(n&&n.length){t.buffer.push(n);t.length+=t.objectMode?1:n.length}}t.ended=true;if(t.sync){emitReadable(e)}else{t.needReadable=false;if(!t.emittedReadable){t.emittedReadable=true;emitReadable_(e)}}}function emitReadable(e){var t=e._readableState;f("emitReadable",t.needReadable,t.emittedReadable);t.needReadable=false;if(!t.emittedReadable){f("emitReadable",t.flowing);t.emittedReadable=true;process.nextTick(emitReadable_,e)}}function emitReadable_(e){var t=e._readableState;f("emitReadable_",t.destroyed,t.length,t.ended);if(!t.destroyed&&(t.length||t.ended)){e.emit("readable");t.emittedReadable=false}t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark;flow(e)}function maybeReadMore(e,t){if(!t.readingMore){t.readingMore=true;process.nextTick(maybeReadMore_,e,t)}}function maybeReadMore_(e,t){while(!t.reading&&!t.ended&&(t.length1&&indexOf(s.pipes,e)!==-1)&&!u){f("false write response, pause",s.awaitDrain);s.awaitDrain++}n.pause()}}function onerror(t){f("onerror",t);unpipe();e.removeListener("error",onerror);if(o(e,"error")===0)D(e,t)}prependListener(e,"error",onerror);function onclose(){e.removeListener("finish",onfinish);unpipe()}e.once("close",onclose);function onfinish(){f("onfinish");e.removeListener("close",onclose);unpipe()}e.once("finish",onfinish);function unpipe(){f("unpipe");n.unpipe(e)}e.emit("pipe",n);if(!s.flowing){f("pipe resume");n.resume()}return e};function pipeOnDrain(e){return function pipeOnDrainFunctionResult(){var t=e._readableState;f("pipeOnDrain",t.awaitDrain);if(t.awaitDrain)t.awaitDrain--;if(t.awaitDrain===0&&o(e,"data")){t.flowing=true;flow(e)}}}Readable.prototype.unpipe=function(e){var t=this._readableState;var n={hasUnpiped:false};if(t.pipesCount===0)return this;if(t.pipesCount===1){if(e&&e!==t.pipes)return this;if(!e)e=t.pipes;t.pipes=null;t.pipesCount=0;t.flowing=false;if(e)e.emit("unpipe",this,n);return this}if(!e){var s=t.pipes;var i=t.pipesCount;t.pipes=null;t.pipesCount=0;t.flowing=false;for(var o=0;o0;if(s.flowing!==false)this.resume()}else if(e==="readable"){if(!s.endEmitted&&!s.readableListening){s.readableListening=s.needReadable=true;s.flowing=false;s.emittedReadable=false;f("on readable",s.length,s.reading);if(s.length){emitReadable(this)}else if(!s.reading){process.nextTick(nReadingNextTick,this)}}}return n};Readable.prototype.addListener=Readable.prototype.on;Readable.prototype.removeListener=function(e,t){var n=h.prototype.removeListener.call(this,e,t);if(e==="readable"){process.nextTick(updateReadableListening,this)}return n};Readable.prototype.removeAllListeners=function(e){var t=h.prototype.removeAllListeners.apply(this,arguments);if(e==="readable"||e===undefined){process.nextTick(updateReadableListening,this)}return t};function updateReadableListening(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0;if(t.resumeScheduled&&!t.paused){t.flowing=true}else if(e.listenerCount("data")>0){e.resume()}}function nReadingNextTick(e){f("readable nexttick read 0");e.read(0)}Readable.prototype.resume=function(){var e=this._readableState;if(!e.flowing){f("resume");e.flowing=!e.readableListening;resume(this,e)}e.paused=false;return this};function resume(e,t){if(!t.resumeScheduled){t.resumeScheduled=true;process.nextTick(resume_,e,t)}}function resume_(e,t){f("resume",t.reading);if(!t.reading){e.read(0)}t.resumeScheduled=false;e.emit("resume");flow(e);if(t.flowing&&!t.reading)e.read(0)}Readable.prototype.pause=function(){f("call pause flowing=%j",this._readableState.flowing);if(this._readableState.flowing!==false){f("pause");this._readableState.flowing=false;this.emit("pause")}this._readableState.paused=true;return this};function flow(e){var t=e._readableState;f("flow",t.flowing);while(t.flowing&&e.read()!==null);}Readable.prototype.wrap=function(e){var t=this;var n=this._readableState;var s=false;e.on("end",(function(){f("wrapped end");if(n.decoder&&!n.ended){var e=n.decoder.end();if(e&&e.length)t.push(e)}t.push(null)}));e.on("data",(function(i){f("wrapped data");if(n.decoder)i=n.decoder.write(i);if(n.objectMode&&(i===null||i===undefined))return;else if(!n.objectMode&&(!i||!i.length))return;var o=t.push(i);if(!o){s=true;e.pause()}}));for(var i in e){if(this[i]===undefined&&typeof e[i]==="function"){this[i]=function methodWrap(t){return function methodWrapReturnFunction(){return e[t].apply(e,arguments)}}(i)}}for(var o=0;o=t.length){if(t.decoder)n=t.buffer.join("");else if(t.buffer.length===1)n=t.buffer.first();else n=t.buffer.concat(t.length);t.buffer.clear()}else{n=t.buffer.consume(e,t.decoder)}return n}function endReadable(e){var t=e._readableState;f("endReadable",t.endEmitted);if(!t.endEmitted){t.ended=true;process.nextTick(endReadableNT,t,e)}}function endReadableNT(e,t){f("endReadableNT",e.endEmitted,e.length);if(!e.endEmitted&&e.length===0){e.endEmitted=true;t.readable=false;t.emit("end");if(e.autoDestroy){var n=t._writableState;if(!n||n.autoDestroy&&n.finished){t.destroy()}}}}if(typeof Symbol==="function"){Readable.from=function(e,t){if(_===undefined){_=n(9082)}return _(Readable,e,t)}}function indexOf(e,t){for(var n=0,s=e.length;n{"use strict";e.exports=Transform;var s=n(7214).q,i=s.ERR_METHOD_NOT_IMPLEMENTED,o=s.ERR_MULTIPLE_CALLBACK,h=s.ERR_TRANSFORM_ALREADY_TRANSFORMING,l=s.ERR_TRANSFORM_WITH_LENGTH_0;var u=n(1359);n(4124)(Transform,u);function afterTransform(e,t){var n=this._transformState;n.transforming=false;var s=n.writecb;if(s===null){return this.emit("error",new o)}n.writechunk=null;n.writecb=null;if(t!=null)this.push(t);s(e);var i=this._readableState;i.reading=false;if(i.needReadable||i.length{"use strict";e.exports=Writable;function WriteReq(e,t,n){this.chunk=e;this.encoding=t;this.callback=n;this.next=null}function CorkedRequest(e){var t=this;this.next=null;this.entry=null;this.finish=function(){onCorkedFinish(t,e)}}var s;Writable.WritableState=WritableState;var i={deprecate:n(7127)};var o=n(2387);var h=n(4300).Buffer;var l=(typeof global!=="undefined"?global:typeof window!=="undefined"?window:typeof self!=="undefined"?self:{}).Uint8Array||function(){};function _uint8ArrayToBuffer(e){return h.from(e)}function _isUint8Array(e){return h.isBuffer(e)||e instanceof l}var u=n(7049);var g=n(9948),f=g.getHighWaterMark;var E=n(7214).q,I=E.ERR_INVALID_ARG_TYPE,C=E.ERR_METHOD_NOT_IMPLEMENTED,B=E.ERR_MULTIPLE_CALLBACK,Q=E.ERR_STREAM_CANNOT_PIPE,p=E.ERR_STREAM_DESTROYED,y=E.ERR_STREAM_NULL_VALUES,w=E.ERR_STREAM_WRITE_AFTER_END,b=E.ERR_UNKNOWN_ENCODING;var R=u.errorOrDestroy;n(4124)(Writable,o);function nop(){}function WritableState(e,t,i){s=s||n(1359);e=e||{};if(typeof i!=="boolean")i=t instanceof s;this.objectMode=!!e.objectMode;if(i)this.objectMode=this.objectMode||!!e.writableObjectMode;this.highWaterMark=f(this,e,"writableHighWaterMark",i);this.finalCalled=false;this.needDrain=false;this.ending=false;this.ended=false;this.finished=false;this.destroyed=false;var o=e.decodeStrings===false;this.decodeStrings=!o;this.defaultEncoding=e.defaultEncoding||"utf8";this.length=0;this.writing=false;this.corked=0;this.sync=true;this.bufferProcessing=false;this.onwrite=function(e){onwrite(t,e)};this.writecb=null;this.writelen=0;this.bufferedRequest=null;this.lastBufferedRequest=null;this.pendingcb=0;this.prefinished=false;this.errorEmitted=false;this.emitClose=e.emitClose!==false;this.autoDestroy=!!e.autoDestroy;this.bufferedRequestCount=0;this.corkedRequestsFree=new CorkedRequest(this)}WritableState.prototype.getBuffer=function getBuffer(){var e=this.bufferedRequest;var t=[];while(e){t.push(e);e=e.next}return t};(function(){try{Object.defineProperty(WritableState.prototype,"buffer",{get:i.deprecate((function writableStateBufferGetter(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer "+"instead.","DEP0003")})}catch(e){}})();var k;if(typeof Symbol==="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]==="function"){k=Function.prototype[Symbol.hasInstance];Object.defineProperty(Writable,Symbol.hasInstance,{value:function value(e){if(k.call(this,e))return true;if(this!==Writable)return false;return e&&e._writableState instanceof WritableState}})}else{k=function realHasInstance(e){return e instanceof this}}function Writable(e){s=s||n(1359);var t=this instanceof s;if(!t&&!k.call(Writable,this))return new Writable(e);this._writableState=new WritableState(e,this,t);this.writable=true;if(e){if(typeof e.write==="function")this._write=e.write;if(typeof e.writev==="function")this._writev=e.writev;if(typeof e.destroy==="function")this._destroy=e.destroy;if(typeof e.final==="function")this._final=e.final}o.call(this)}Writable.prototype.pipe=function(){R(this,new Q)};function writeAfterEnd(e,t){var n=new w;R(e,n);process.nextTick(t,n)}function validChunk(e,t,n,s){var i;if(n===null){i=new y}else if(typeof n!=="string"&&!t.objectMode){i=new I("chunk",["string","Buffer"],n)}if(i){R(e,i);process.nextTick(s,i);return false}return true}Writable.prototype.write=function(e,t,n){var s=this._writableState;var i=false;var o=!s.objectMode&&_isUint8Array(e);if(o&&!h.isBuffer(e)){e=_uint8ArrayToBuffer(e)}if(typeof t==="function"){n=t;t=null}if(o)t="buffer";else if(!t)t=s.defaultEncoding;if(typeof n!=="function")n=nop;if(s.ending)writeAfterEnd(this,n);else if(o||validChunk(this,s,e,n)){s.pendingcb++;i=writeOrBuffer(this,s,o,e,t,n)}return i};Writable.prototype.cork=function(){this._writableState.corked++};Writable.prototype.uncork=function(){var e=this._writableState;if(e.corked){e.corked--;if(!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest)clearBuffer(this,e)}};Writable.prototype.setDefaultEncoding=function setDefaultEncoding(e){if(typeof e==="string")e=e.toLowerCase();if(!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new b(e);this._writableState.defaultEncoding=e;return this};Object.defineProperty(Writable.prototype,"writableBuffer",{enumerable:false,get:function get(){return this._writableState&&this._writableState.getBuffer()}});function decodeChunk(e,t,n){if(!e.objectMode&&e.decodeStrings!==false&&typeof t==="string"){t=h.from(t,n)}return t}Object.defineProperty(Writable.prototype,"writableHighWaterMark",{enumerable:false,get:function get(){return this._writableState.highWaterMark}});function writeOrBuffer(e,t,n,s,i,o){if(!n){var h=decodeChunk(t,s,i);if(s!==h){n=true;i="buffer";s=h}}var l=t.objectMode?1:s.length;t.length+=l;var u=t.length{"use strict";var s;function _defineProperty(e,t,n){t=_toPropertyKey(t);if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function _toPropertyKey(e){var t=_toPrimitive(e,"string");return typeof t==="symbol"?t:String(t)}function _toPrimitive(e,t){if(typeof e!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==undefined){var s=n.call(e,t||"default");if(typeof s!=="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var i=n(6080);var o=Symbol("lastResolve");var h=Symbol("lastReject");var l=Symbol("error");var u=Symbol("ended");var g=Symbol("lastPromise");var f=Symbol("handlePromise");var E=Symbol("stream");function createIterResult(e,t){return{value:e,done:t}}function readAndResolve(e){var t=e[o];if(t!==null){var n=e[E].read();if(n!==null){e[g]=null;e[o]=null;e[h]=null;t(createIterResult(n,false))}}}function onReadable(e){process.nextTick(readAndResolve,e)}function wrapForNext(e,t){return function(n,s){e.then((function(){if(t[u]){n(createIterResult(undefined,true));return}t[f](n,s)}),s)}}var I=Object.getPrototypeOf((function(){}));var C=Object.setPrototypeOf((s={get stream(){return this[E]},next:function next(){var e=this;var t=this[l];if(t!==null){return Promise.reject(t)}if(this[u]){return Promise.resolve(createIterResult(undefined,true))}if(this[E].destroyed){return new Promise((function(t,n){process.nextTick((function(){if(e[l]){n(e[l])}else{t(createIterResult(undefined,true))}}))}))}var n=this[g];var s;if(n){s=new Promise(wrapForNext(n,this))}else{var i=this[E].read();if(i!==null){return Promise.resolve(createIterResult(i,false))}s=new Promise(this[f])}this[g]=s;return s}},_defineProperty(s,Symbol.asyncIterator,(function(){return this})),_defineProperty(s,"return",(function _return(){var e=this;return new Promise((function(t,n){e[E].destroy(null,(function(e){if(e){n(e);return}t(createIterResult(undefined,true))}))}))})),s),I);var B=function createReadableStreamAsyncIterator(e){var t;var n=Object.create(C,(t={},_defineProperty(t,E,{value:e,writable:true}),_defineProperty(t,o,{value:null,writable:true}),_defineProperty(t,h,{value:null,writable:true}),_defineProperty(t,l,{value:null,writable:true}),_defineProperty(t,u,{value:e._readableState.endEmitted,writable:true}),_defineProperty(t,f,{value:function value(e,t){var s=n[E].read();if(s){n[g]=null;n[o]=null;n[h]=null;e(createIterResult(s,false))}else{n[o]=e;n[h]=t}},writable:true}),t));n[g]=null;i(e,(function(e){if(e&&e.code!=="ERR_STREAM_PREMATURE_CLOSE"){var t=n[h];if(t!==null){n[g]=null;n[o]=null;n[h]=null;t(e)}n[l]=e;return}var s=n[o];if(s!==null){n[g]=null;n[o]=null;n[h]=null;s(createIterResult(undefined,true))}n[u]=true}));e.on("readable",onReadable.bind(null,n));return n};e.exports=B},6522:(e,t,n)=>{"use strict";function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,s)}return n}function _objectSpread(e){for(var t=1;t0)this.tail.next=t;else this.head=t;this.tail=t;++this.length}},{key:"unshift",value:function unshift(e){var t={data:e,next:this.head};if(this.length===0)this.tail=t;this.head=t;++this.length}},{key:"shift",value:function shift(){if(this.length===0)return;var e=this.head.data;if(this.length===1)this.head=this.tail=null;else this.head=this.head.next;--this.length;return e}},{key:"clear",value:function clear(){this.head=this.tail=null;this.length=0}},{key:"join",value:function join(e){if(this.length===0)return"";var t=this.head;var n=""+t.data;while(t=t.next)n+=e+t.data;return n}},{key:"concat",value:function concat(e){if(this.length===0)return i.alloc(0);var t=i.allocUnsafe(e>>>0);var n=this.head;var s=0;while(n){copyBuffer(n.data,t,s);s+=n.data.length;n=n.next}return t}},{key:"consume",value:function consume(e,t){var n;if(ei.length?i.length:e;if(o===i.length)s+=i;else s+=i.slice(0,e);e-=o;if(e===0){if(o===i.length){++n;if(t.next)this.head=t.next;else this.head=this.tail=null}else{this.head=t;t.data=i.slice(o)}break}++n}this.length-=n;return s}},{key:"_getBuffer",value:function _getBuffer(e){var t=i.allocUnsafe(e);var n=this.head;var s=1;n.data.copy(t);e-=n.data.length;while(n=n.next){var o=n.data;var h=e>o.length?o.length:e;o.copy(t,t.length-e,0,h);e-=h;if(e===0){if(h===o.length){++s;if(n.next)this.head=n.next;else this.head=this.tail=null}else{this.head=n;n.data=o.slice(h)}break}++s}this.length-=s;return t}},{key:l,value:function value(e,t){return h(this,_objectSpread(_objectSpread({},t),{},{depth:0,customInspect:false}))}}]);return BufferList}()},7049:e=>{"use strict";function destroy(e,t){var n=this;var s=this._readableState&&this._readableState.destroyed;var i=this._writableState&&this._writableState.destroyed;if(s||i){if(t){t(e)}else if(e){if(!this._writableState){process.nextTick(emitErrorNT,this,e)}else if(!this._writableState.errorEmitted){this._writableState.errorEmitted=true;process.nextTick(emitErrorNT,this,e)}}return this}if(this._readableState){this._readableState.destroyed=true}if(this._writableState){this._writableState.destroyed=true}this._destroy(e||null,(function(e){if(!t&&e){if(!n._writableState){process.nextTick(emitErrorAndCloseNT,n,e)}else if(!n._writableState.errorEmitted){n._writableState.errorEmitted=true;process.nextTick(emitErrorAndCloseNT,n,e)}else{process.nextTick(emitCloseNT,n)}}else if(t){process.nextTick(emitCloseNT,n);t(e)}else{process.nextTick(emitCloseNT,n)}}));return this}function emitErrorAndCloseNT(e,t){emitErrorNT(e,t);emitCloseNT(e)}function emitCloseNT(e){if(e._writableState&&!e._writableState.emitClose)return;if(e._readableState&&!e._readableState.emitClose)return;e.emit("close")}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(e,t){e.emit("error",t)}function errorOrDestroy(e,t){var n=e._readableState;var s=e._writableState;if(n&&n.autoDestroy||s&&s.autoDestroy)e.destroy(t);else e.emit("error",t)}e.exports={destroy:destroy,undestroy:undestroy,errorOrDestroy:errorOrDestroy}},6080:(e,t,n)=>{"use strict";var s=n(7214).q.ERR_STREAM_PREMATURE_CLOSE;function once(e){var t=false;return function(){if(t)return;t=true;for(var n=arguments.length,s=new Array(n),i=0;i{"use strict";function asyncGeneratorStep(e,t,n,s,i,o,h){try{var l=e[o](h);var u=l.value}catch(e){n(e);return}if(l.done){t(u)}else{Promise.resolve(u).then(s,i)}}function _asyncToGenerator(e){return function(){var t=this,n=arguments;return new Promise((function(s,i){var o=e.apply(t,n);function _next(e){asyncGeneratorStep(o,s,i,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep(o,s,i,_next,_throw,"throw",e)}_next(undefined)}))}}function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,s)}return n}function _objectSpread(e){for(var t=1;t{"use strict";var s;function once(e){var t=false;return function(){if(t)return;t=true;e.apply(void 0,arguments)}}var i=n(7214).q,o=i.ERR_MISSING_ARGS,h=i.ERR_STREAM_DESTROYED;function noop(e){if(e)throw e}function isRequest(e){return e.setHeader&&typeof e.abort==="function"}function destroyer(e,t,i,o){o=once(o);var l=false;e.on("close",(function(){l=true}));if(s===undefined)s=n(6080);s(e,{readable:t,writable:i},(function(e){if(e)return o(e);l=true;o()}));var u=false;return function(t){if(l)return;if(u)return;u=true;if(isRequest(e))return e.abort();if(typeof e.destroy==="function")return e.destroy();o(t||new h("pipe"))}}function call(e){e()}function pipe(e,t){return e.pipe(t)}function popCallback(e){if(!e.length)return noop;if(typeof e[e.length-1]!=="function")return noop;return e.pop()}function pipeline(){for(var e=arguments.length,t=new Array(e),n=0;n0;return destroyer(e,o,l,(function(e){if(!i)i=e;if(e)h.forEach(call);if(o)return;h.forEach(call);s(i)}))}));return t.reduce(pipe)}e.exports=pipeline},9948:(e,t,n)=>{"use strict";var s=n(7214).q.ERR_INVALID_OPT_VALUE;function highWaterMarkFrom(e,t,n){return e.highWaterMark!=null?e.highWaterMark:t?e[n]:null}function getHighWaterMark(e,t,n,i){var o=highWaterMarkFrom(t,i,n);if(o!=null){if(!(isFinite(o)&&Math.floor(o)===o)||o<0){var h=i?n:"highWaterMark";throw new s(h,o)}return Math.floor(o)}return e.objectMode?16:16*1024}e.exports={getHighWaterMark:getHighWaterMark}},2387:(e,t,n)=>{e.exports=n(2781)},1642:(e,t,n)=>{var s=n(2781);if(process.env.READABLE_STREAM==="disable"&&s){e.exports=s.Readable;Object.assign(e.exports,s);e.exports.Stream=s}else{t=e.exports=n(1433);t.Stream=s||t;t.Readable=t;t.Writable=n(6993);t.Duplex=n(1359);t.Transform=n(4415);t.PassThrough=n(1542);t.finished=n(6080);t.pipeline=n(6989)}},1604:(e,t,n)=>{e.exports=n(6244)},6244:(e,t,n)=>{var s=n(5369);t.operation=function(e){var n=t.timeouts(e);return new s(n,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})};t.timeouts=function(e){if(e instanceof Array){return[].concat(e)}var t={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:Infinity,randomize:false};for(var n in e){t[n]=e[n]}if(t.minTimeout>t.maxTimeout){throw new Error("minTimeout is greater than maxTimeout")}var s=[];for(var i=0;i{function RetryOperation(e,t){if(typeof t==="boolean"){t={forever:t}}this._originalTimeouts=JSON.parse(JSON.stringify(e));this._timeouts=e;this._options=t||{};this._maxRetryTime=t&&t.maxRetryTime||Infinity;this._fn=null;this._errors=[];this._attempts=1;this._operationTimeout=null;this._operationTimeoutCb=null;this._timeout=null;this._operationStart=null;if(this._options.forever){this._cachedTimeouts=this._timeouts.slice(0)}}e.exports=RetryOperation;RetryOperation.prototype.reset=function(){this._attempts=1;this._timeouts=this._originalTimeouts};RetryOperation.prototype.stop=function(){if(this._timeout){clearTimeout(this._timeout)}this._timeouts=[];this._cachedTimeouts=null};RetryOperation.prototype.retry=function(e){if(this._timeout){clearTimeout(this._timeout)}if(!e){return false}var t=(new Date).getTime();if(e&&t-this._operationStart>=this._maxRetryTime){this._errors.unshift(new Error("RetryOperation timeout occurred"));return false}this._errors.push(e);var n=this._timeouts.shift();if(n===undefined){if(this._cachedTimeouts){this._errors.splice(this._errors.length-1,this._errors.length);this._timeouts=this._cachedTimeouts.slice(0);n=this._timeouts.shift()}else{return false}}var s=this;var i=setTimeout((function(){s._attempts++;if(s._operationTimeoutCb){s._timeout=setTimeout((function(){s._operationTimeoutCb(s._attempts)}),s._operationTimeout);if(s._options.unref){s._timeout.unref()}}s._fn(s._attempts)}),n);if(this._options.unref){i.unref()}return true};RetryOperation.prototype.attempt=function(e,t){this._fn=e;if(t){if(t.timeout){this._operationTimeout=t.timeout}if(t.cb){this._operationTimeoutCb=t.cb}}var n=this;if(this._operationTimeoutCb){this._timeout=setTimeout((function(){n._operationTimeoutCb()}),n._operationTimeout)}this._operationStart=(new Date).getTime();this._fn(this._attempts)};RetryOperation.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated");this.attempt(e)};RetryOperation.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated");this.attempt(e)};RetryOperation.prototype.start=RetryOperation.prototype.try;RetryOperation.prototype.errors=function(){return this._errors};RetryOperation.prototype.attempts=function(){return this._attempts};RetryOperation.prototype.mainError=function(){if(this._errors.length===0){return null}var e={};var t=null;var n=0;for(var s=0;s=n){t=i;n=h}}return t}},1867:(e,t,n)=>{ /*! safe-buffer. MIT License. Feross Aboukhadijeh */ -var s=n(4300);var i=s.Buffer;function copyProps(e,t){for(var n in e){t[n]=e[n]}}if(i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow){e.exports=s}else{copyProps(s,t);t.Buffer=SafeBuffer}function SafeBuffer(e,t,n){return i(e,t,n)}SafeBuffer.prototype=Object.create(i.prototype);copyProps(i,SafeBuffer);SafeBuffer.from=function(e,t,n){if(typeof e==="number"){throw new TypeError("Argument must not be a number")}return i(e,t,n)};SafeBuffer.alloc=function(e,t,n){if(typeof e!=="number"){throw new TypeError("Argument must be a number")}var s=i(e);if(t!==undefined){if(typeof n==="string"){s.fill(t,n)}else{s.fill(t)}}else{s.fill(0)}return s};SafeBuffer.allocUnsafe=function(e){if(typeof e!=="number"){throw new TypeError("Argument must be a number")}return i(e)};SafeBuffer.allocUnsafeSlow=function(e){if(typeof e!=="number"){throw new TypeError("Argument must be a number")}return s.SlowBuffer(e)}},5118:(e,t,n)=>{"use strict";var s=n(4300);var i=s.Buffer;var o={};var h;for(h in s){if(!s.hasOwnProperty(h))continue;if(h==="SlowBuffer"||h==="Buffer")continue;o[h]=s[h]}var l=o.Buffer={};for(h in i){if(!i.hasOwnProperty(h))continue;if(h==="allocUnsafe"||h==="allocUnsafeSlow")continue;l[h]=i[h]}o.Buffer.prototype=i.prototype;if(!l.from||l.from===Uint8Array.from){l.from=function(e,t,n){if(typeof e==="number"){throw new TypeError('The "value" argument must not be of type number. Received type '+typeof e)}if(e&&typeof e.length==="undefined"){throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}return i(e,t,n)}}if(!l.alloc){l.alloc=function(e,t,n){if(typeof e!=="number"){throw new TypeError('The "size" argument must be of type number. Received type '+typeof e)}if(e<0||e>=2*(1<<30)){throw new RangeError('The value "'+e+'" is invalid for option "size"')}var s=i(e);if(!t||t.length===0){s.fill(0)}else if(typeof n==="string"){s.fill(t,n)}else{s.fill(t)}return s}}if(!o.kStringMaxLength){try{o.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch(e){}}if(!o.constants){o.constants={MAX_LENGTH:o.kMaxLength};if(o.kStringMaxLength){o.constants.MAX_STRING_LENGTH=o.kStringMaxLength}}e.exports=o},3232:e=>{const t={generic:"ERR_GENERIC_CLIENT",connect:"ERR_NOT_CONNECTED",badPath:"ERR_BAD_PATH",permission:"EACCES",notexist:"ENOENT",notdir:"ENOTDIR",badAuth:"ERR_BAD_AUTH"};const n={writeFile:1,readFile:2,writeDir:3,readDir:4,readObj:5,writeObj:6};e.exports={errorCode:t,targetType:n}},7551:(e,t,n)=>{"use strict";const{Client:s}=n(5869);const i=n(7147);const o=n(5107);const h=n(4742);const{join:l,parse:u}=n(1017);const{globalListener:g,addTempListeners:f,removeTempListeners:E,haveConnection:I,normalizeRemotePath:C,localExists:B,haveLocalAccess:Q,haveLocalCreate:p}=n(9432);const{errorCode:y}=n(3232);class SftpClient{constructor(e){this.version="9.0.4";this.client=new s;this.sftp=undefined;this.clientName=e?e:"sftp";this.endCalled=false;this.errorHandled=false;this.closeHandled=false;this.endHandled=false;this.remotePlatform="unix";this.debug=undefined;this.client.on("close",g(this,"close"));this.client.on("end",g(this,"end"));this.client.on("error",g(this,"error"))}debugMsg(e,t){if(this.debug){if(t){this.debug(`CLIENT[${this.clientName}]: ${e} ${JSON.stringify(t,null," ")}`)}else{this.debug(`CLIENT[${this.clientName}]: ${e}`)}}}fmtError(e,t="sftp",n,s){let i="";let o="";const h=s?` after ${s} ${s>1?"attempts":"attempt"}`:"";if(e===undefined){i=`${t}: Undefined error - probably a bug!`;o=y.generic}else if(typeof e==="string"){i=`${t}: ${e}${h}`;o=n?n:y.generic}else if(e.custom){i=`${t}->${e.message}${h}`;o=e.code}else{switch(e.code){case"ENOTFOUND":i=`${t}: Address lookup failed for host${h}`;break;case"ECONNREFUSED":i=`${t}: Remote host refused connection${h}`;break;case"ECONNRESET":i=`${t}: Remote host has reset the connection: ${e.message}${h}`;break;default:i=`${t}: ${e.message}${h}`}o=e.code?e.code:y.generic}const l=new Error(i);l.code=o;l.custom=true;this.debugMsg(`${l.message} (${l.code})`);return l}on(e,t){this.client.prependListener(e,t)}removeListener(e,t){this.client.removeListener(e,t)}_resetEventFlags(){this.closeHandled=false;this.endHandled=false;this.errorHandled=false}getConnection(e){let t,n;return new Promise(((s,i)=>{n=f(this,"getConnection",i);t=()=>{this.debugMsg("getConnection ready listener: got connection - promise resolved");s(true)};this.on("ready",t);try{this.client.connect(e)}catch(e){this.debugMsg(`getConnection: ${e.message}`);i(e)}})).finally((()=>{this.removeListener("ready",t);E(this,n,"getConnection")}))}getSftpChannel(){return new Promise(((e,t)=>{this.client.sftp(((n,s)=>{if(n){t(this.fmtError(n,"getSftpChannel",n.code))}else{this.sftp=s;e(s)}}))}))}async connect(e){let t;try{t=f(this,"connect");if(e.debug){this.debug=e.debug;this.debugMsg("connect: Debugging turned on");this.debugMsg(`ssh2-sftp-client Version: ${this.version} `,process.versions)}if(this.sftp){throw this.fmtError("An existing SFTP connection is already defined","connect",y.connect)}const n={retries:e.retries??1,factor:e.factor??2,minTimeout:e.retry_minTimeout??25e3};await h(n,(async(t,n)=>{try{this.debugMsg(`connect: Connect attempt ${n}`);await this.getConnection(e)}catch(e){switch(e.code){case"ENOTFOUND":case"ECONNREFUSED":case"ERR_SOCKET_BAD_PORT":throw e;case undefined:{if(e.message.endsWith("All configured authentication methods failed")||e.message.startsWith("Cannot parse privateKey")){throw e}t(e);break}default:t(e)}}}));const s=await this.getSftpChannel();return s}catch(e){this.end();throw e.custom?e:this.fmtError(e,"connect")}finally{E(this,t,"connect")}}realPath(e,t=true){let n;return new Promise(((s,i)=>{if(t){n=f(this,"realPath",i)}this.debugMsg(`realPath -> ${e}`);this.sftp.realpath(e,((t,n)=>{if(t){if(t.code===2){this.debugMsg('realPath <- ""');s("")}else{this.debugMsg(`${t.message} ${e}`,"realPath");i(this.fmtError(`${t.message} ${e}`,"realPath",t.code))}}this.debugMsg(`realPath <- ${n}`);s(n)}))})).finally((()=>{if(t){E(this,n,"realPath")}}))}cwd(){return this.realPath(".")}_xstat(e,t,n=true){let s;return new Promise(((i,o)=>{let cb=(e,n)=>{if(e){if(e.code===2||e.code===4){o(this.fmtError(`No such file: ${t}`,"_xstat",y.notexist))}else{o(this.fmtError(`${e.message} ${t}`,"_xstat",e.code))}}else{const e={mode:n.mode,uid:n.uid,gid:n.gid,size:n.size,accessTime:n.atime*1e3,modifyTime:n.mtime*1e3,isDirectory:n.isDirectory(),isFile:n.isFile(),isBlockDevice:n.isBlockDevice(),isCharacterDevice:n.isCharacterDevice(),isSymbolicLink:n.isSymbolicLink(),isFIFO:n.isFIFO(),isSocket:n.isSocket()};this.debugMsg("_xstat: result = ",e);i(e)}};if(n){s=f(this,"_xstat",o)}if(e==="stat"){this.sftp.stat(t,cb)}else{this.sftp.lstat(t,cb)}})).finally((()=>{if(n){E(this,s,"_xstat")}}))}async stat(e){try{I(this,"stat");return await this._xstat("stat",e)}catch(e){throw e.custom?e:this.fmtError(e,"stat",e.code)}}async lstat(e){try{I(this,"lstat");return await this._xstat("lstat",e)}catch(e){throw e.custom?e:this.fmtError(e,"lstat",e.code)}}async exists(e){this.debugMsg(`exists: remotePath = ${e}`);try{if(e==="."){return"d"}const t=await this.lstat(e);this.debugMsg("exists: <- ",t);if(t.isDirectory){return"d"}else if(t.isSymbolicLink){return"l"}else if(t.isFile){return"-"}else{return false}}catch(e){if(e.code===y.notexist){return false}throw e.custom?e:this.fmtError(e.message,"exists",e.code)}}list(e,t,n=true){let s;return new Promise(((i,o)=>{if(n){s=f(this,"list",o)}if(I(this,"list",o)){this.sftp.readdir(e,((n,s)=>{if(n){o(this.fmtError(`${n.message} ${e}`,"list",n.code))}else{const e=/-/gi;const n=s.map((t=>({type:t.longname.slice(0,1),name:t.filename,size:t.attrs.size,modifyTime:t.attrs.mtime*1e3,accessTime:t.attrs.atime*1e3,rights:{user:t.longname.slice(1,4).replace(e,""),group:t.longname.slice(4,7).replace(e,""),other:t.longname.slice(7,10).replace(e,"")},owner:t.attrs.uid,group:t.attrs.gid,longname:t.longname})));if(t){i(n.filter((e=>t(e))))}else{i(n)}}}))}})).finally((()=>{if(n){E(this,s,"list")}}))}get(e,t,n,s=true){let h,l,u;return new Promise(((g,E)=>{if(s){h=f(this,"get",E)}if(I(this,"get",E)){n={readStreamOptions:{...n?.readStreamOptions,autoClose:true},writeStreamOptions:{...n?.writeStreamOptions,autoClose:true},pipeOptions:{...n?.pipeOptions,end:true}};l=this.sftp.createReadStream(e,n.readStreamOptions);l.once("error",(n=>{if(t&&typeof t!=="string"&&!t.destroyed){t.destroy()}E(this.fmtError(`${n.message} ${e}`,"get",n.code))}));if(t===undefined){this.debugMsg("get resolving buffer of data");u=o((e=>{g(e)}))}else if(typeof t==="string"){this.debugMsg("get returning local file");const e=p(t);if(!e.status){E(this.fmtError(`Bad path: ${t}: ${e.details}`,"get",e.code));return}else{u=i.createWriteStream(t,n.writeStreamOptions)}}else{this.debugMsg("get: returning data into supplied stream");u=t}u.once("error",(e=>{E(this.fmtError(`${e.message} ${typeof t==="string"?t:""}`,"get",e.code))}));l.once("end",(()=>{if(typeof t==="string"){this.debugMsg("get: resolving with dst filename");g(t)}else if(t!==undefined){this.debugMsg("get: resolving with writer stream object");g(u)}}));l.pipe(u,n.pipeOptions)}})).finally((()=>{if(s){E(this,h,"get")}}))}_fastGet(e,t,n,s=true){let i;return new Promise(((o,h)=>{if(s){i=f(this,"_fastGet",h)}if(I(this,"_fastGet",h)){this.sftp.fastGet(e,t,n,(n=>{if(n){h(this.fmtError(`${n.message} Remote: ${e} Local: ${t}`))}o(`${e} was successfully download to ${t}!`)}))}})).finally((()=>{if(s){E(this,i,"_fastGet")}}))}async fastGet(e,t,n){try{const s=await this.exists(e);if(s!=="-"){const t=`${!s?"No such file ":"Not a regular file"} ${e}`;throw this.fmtError(t,"fastGet",y.badPath)}const i=p(t);if(!i.status){throw this.fmtError(`Bad path: ${t}: ${i.details}`,"fastGet",y.badPath)}return await this._fastGet(e,t,n)}catch(e){throw this.fmtError(e,"fastGet")}}_fastPut(e,t,n,s=true){let i;return new Promise(((o,h)=>{if(s){i=f(this,"_fastPut",h)}if(I(this,"_fastPut",h)){this.sftp.fastPut(e,t,n,(n=>{if(n){h(this.fmtError(`${n.message} Local: ${e} Remote: ${t}`,"fastPut",n.code))}o(`${e} was successfully uploaded to ${t}!`)}))}})).finally((()=>{if(s){E(this,i,"_fastPut")}}))}async fastPut(e,t,n){try{this.debugMsg(`fastPut -> local ${e} remote ${t}`);const s=Q(e);if(!s.status){throw this.fmtError(`Bad path: ${e}: ${s.details}`,"fastPut",s.code)}else if(s.status&&B(e)==="d"){throw this.fmtError(`Bad path: ${e} not a regular file`,"fastgPut",y.badPath)}return await this._fastPut(e,t,n)}catch(e){throw e.custom?e:this.fmtError(e.message,"fastPut",e.code)}}_put(e,t,n,s=true){let o,h,l;return new Promise(((u,g)=>{if(s){o=f(this,"_put",g)}n={readStreamOptions:{...n?.readStreamOptions,autoClose:true},writeStreamOptions:{...n?.writeStreamOptions,autoClose:true},pipeOptions:{...n?.pipeOptions,end:true}};if(I(this,"_put",g)){h=this.sftp.createWriteStream(t,n.writeStreamOptions);h.once("error",(e=>{g(this.fmtError(`Write stream error: ${e.message} ${t}`,"_put",e.code))}));h.once("close",(()=>{u(`Uploaded data stream to ${t}`)}));if(e instanceof Buffer){this.debugMsg("put source is a buffer");h.end(e)}else{l=typeof e==="string"?i.createReadStream(e,n.readStreamOptions):e;l.once("error",(t=>{g(this.fmtError(`Read stream error: ${t.message} ${typeof e==="string"?e:""}`,"_put",t.code))}));l.pipe(h,n.pipeOptions)}}})).finally((()=>{if(s){E(this,o,"_put")}}))}async put(e,t,n){try{if(typeof e==="string"){const t=Q(e);if(!t.status){throw this.fmtError(`Bad path: ${e} ${t.details}`,"put",t.code)}}return await this._put(e,t,n)}catch(e){throw e.custom?e:this.fmtError(`Re-thrown: ${e.message}`,"put",e.code)}}_append(e,t,n,s=true){let i;return new Promise(((o,h)=>{if(s){i=f(this,"_append",h)}if(I(this,"_append",h)){this.debugMsg(`append -> remote: ${t} `,n);n.flags="a";const s=this.sftp.createWriteStream(t,n);s.on("error",(e=>{h(this.fmtError(`${e.message} ${t}`,"append",e.code))}));s.on("close",(()=>{o(`Appended data to ${t}`)}));if(e instanceof Buffer){s.write(e);s.end()}else{e.pipe(s)}}})).finally((()=>{if(s){E(this,i,"_append")}}))}async append(e,t,n={}){try{if(typeof e==="string"){throw this.fmtError("Cannot append one file to another","append",y.badPath)}const s=await this.exists(t);if(s&&s==="d"){throw this.fmtError(`Bad path: ${t}: cannot append to a directory`,"append",y.badPath)}await this._append(e,t,n)}catch(e){throw e.custom?e:this.fmtError(e.message,"append",e.code)}}_doMkdir(e,t=true){let n;return new Promise(((s,i)=>{if(t){n=f(this,"_doMkdir",i)}this.sftp.mkdir(e,(t=>{if(t){if(t.code===4){i(this.fmtError(`Bad path: ${e} permission denied`,"_doMkdir",y.badPath))}else if(t.code===2){i(this.fmtError(`Bad path: ${e} parent not a directory or not exist`,"_doMkdir",y.badPath))}else{i(this.fmtError(`${t.message} ${e}`,"_doMkdir",t.code))}}else{s(`${e} directory created`)}}))})).finally((()=>{if(t){E(this,n,"_doMkdir")}}))}async _mkdir(e,t){try{const n=await C(this,e);const s=await this.exists(n);if(s&&s!=="d"){throw this.fmtError(`Bad path: ${n} already exists as a file`,"_mkdir",y.badPath)}else if(s){return`${n} already exists`}if(!t){return await this._doMkdir(n)}const i=u(n).dir;if(i){const e=await this.exists(i);if(!e){await this._mkdir(i,true)}else if(e!=="d"){throw this.fmtError(`Bad path: ${i} not a directory`,"_mkdir",y.badPath)}}return await this._doMkdir(n)}catch(t){throw t.custom?t:this.fmtError(`${t.message} ${e}`,"_mkdir",t.code)}}async mkdir(e,t=false){try{I(this,"mkdir");return await this._mkdir(e,t)}catch(e){throw this.fmtError(`${e.message}`,"mkdir",e.code)}}async rmdir(e,t=false){const _rmdir=e=>{let t;return new Promise(((n,s)=>{t=f(this,"_rmdir",s);this.debugMsg(`_rmdir: dir = ${e}`);this.sftp.rmdir(e,(t=>{if(t){s(this.fmtError(`${t.message} ${e}`,"rmdir",t.code))}n("Successfully removed directory")}))})).finally((()=>{E(this,t,"_rmdir")}))};const _delFiles=(e,t)=>{let n;return new Promise(((s,i)=>{n=f(this,"_delFiles",i);this.debugMsg(`_delFiles: path = ${e} fileList = ${t}`);let o=[];for(const n of t){o.push(this.delete(`${e}/${n.name}`,true,false))}s(o)})).then((e=>Promise.all(e))).finally((()=>{E(this,n,"_delFiles")}))};try{this.debugMsg(`rmdir: dir = ${e} recursive = ${t}`);let n=await C(this,e);let s=await this.exists(n);this.debugMsg(`rmdir: ${n} existStatus = ${s}`);if(!s){throw this.fmtError(`Bad Path: ${e}: No such directory`,"rmdir",y.badPath)}if(s!=="d"){throw this.fmtError(`Bad Path: ${e}: Not a directory`,"rmdir",y.badPath)}if(!t){this.debugMsg("rmdir: non-recursive - just try to remove it");return await _rmdir(n)}let i=await this.list(n);this.debugMsg(`rmdir: listing count = ${i.length}`);if(!i.length){this.debugMsg("rmdir: No sub dir or files, just rmdir");return await _rmdir(n)}let o=i.filter((e=>e.type!=="d"));this.debugMsg(`rmdir: dir content files to remove = ${o.length}`);let h=i.filter((e=>e.type==="d"));this.debugMsg(`rmdir: sub-directories to remove = ${h.length}`);await _delFiles(n,o);for(const e of h){await this.rmdir(`${n}/${e.name}`,true)}await _rmdir(n);return"Successfully removed directory"}catch(t){throw t.custom?t:this.fmtError(`${t.message} ${e}`,"rmdir",t.code)}}delete(e,t=false,n=true){let s;return new Promise(((i,o)=>{if(n){s=f(this,"delete",o)}this.sftp.unlink(e,(n=>{if(n){if(t&&n.code===2){i(`Successfully deleted ${e}`)}else{o(this.fmtError(`${n.message} ${e}`,"delete",n.code))}}i(`Successfully deleted ${e}`)}))})).finally((()=>{if(n){E(this,s,"delete")}}))}rename(e,t,n=true){let s;return new Promise(((i,o)=>{if(n){s=f(this,"rename",o)}if(I(this,"rename",o)){this.sftp.rename(e,t,(n=>{if(n){o(this.fmtError(`${n.message} From: ${e} To: ${t}`,"_rename",n.code))}i(`Successfully renamed ${e} to ${t}`)}))}})).finally((()=>{if(n){E(this,s,"rename")}}))}posixRename(e,t,n=true){let s;return new Promise(((i,o)=>{if(n){s=f(this,"posixRename",o)}if(I(this,"posixRename",o)){this.sftp.ext_openssh_rename(e,t,(n=>{if(n){o(this.fmtError(`${n.message} From: ${e} To: ${t}`,"_posixRename",n.code))}i(`Successful POSIX rename ${e} to ${t}`)}))}})).finally((()=>{E(this,s,"posixRename")}))}chmod(e,t,n=true){let s;return new Promise(((i,o)=>{if(n){s=f(this,"chmod",o)}if(I(this,"chmod",o)){this.sftp.chmod(e,t,(t=>{if(t){o(this.fmtError(`${t.message} ${e}`,"_chmod",t.code))}i("Successfully change file mode")}))}})).finally((()=>{if(n){E(this,s,"chmod")}}))}async uploadDir(e,t,n){const getRemoteStatus=async e=>{let t=await C(this,e);let n=await this.exists(t);if(n&&n!=="d"){throw this.fmtError(`Bad path ${t} Not a directory`,"getRemoteStatus",y.badPath)}return{remoteDir:t,remoteStatus:n}};const checkLocalStatus=e=>{const t=B(e);if(!t){throw this.fmtError(`Bad path: ${e} not exist`,"getLocalStatus",y.badPath)}if(t!=="d"){throw this.fmtError(`Bad path: ${e}: not a directory`,"getLocalStatus",y.badPath)}return t};const uploadFiles=(e,t,n,s)=>{let i;return new Promise(((o,h)=>{i=f(this,"uploadFiles",h);let u=[];for(const i of n){const n=l(e,i.name);const o=`${t}/${i.name}`;if(i.isFile()){if(s){u.push(this._fastPut(n,o,null,false))}else{u.push(this._put(n,o,null,false))}this.client.emit("upload",{source:n,destination:o})}else{this.debugMsg(`uploadFiles: File ignored: ${i.name} not a regular file`)}}o(Promise.all(u))})).then((e=>Promise.all(e))).finally((()=>{E(this,i,uploadFiles)}))};try{I(this,"uploadDir");this.debugMsg(`uploadDir: srcDir = ${e} dstDir = ${t} options = ${n}`);let{remoteDir:s,remoteStatus:o}=await getRemoteStatus(t);this.debugMsg(`uploadDir: remoteDir = ${s} remoteStatus = ${o}`);checkLocalStatus(e);if(!o){await this._mkdir(s,true)}let h=i.readdirSync(e,{encoding:"utf8",withFileTypes:true});this.debugMsg(`uploadDir: dirEntries = ${h}`);if(n?.filter){h=h.filter((t=>n.filter(l(e,t.name),t.isDirectory())))}let u=h.filter((e=>e.isDirectory()));let g=h.filter((e=>!e.isDirectory()));this.debugMsg(`uploadDir: dirUploads = ${u}`);this.debugMsg(`uploadDir: fileUploads = ${g}`);await uploadFiles(e,s,g,n?.useFastput);for(const t of u){let i=l(e,t.name);let o=`${s}/${t.name}`;await this.uploadDir(i,o,n)}return`${e} uploaded to ${t}`}catch(t){throw t.custom?t:this.fmtError(`${t.message} ${e}`,"uploadDir",t.code)}}async downloadDir(e,t,n={filter:null,useFastget:false}){const _getDownloadList=async(e,t)=>{try{let n=await this.list(e);if(t){return n.filter((n=>t(`${e}/${n.name}`,n.type==="d")))}return n}catch(e){throw e.custom?e:this.fmtError(e.message,"_getDownloadList",e.code)}};const _prepareDestination=e=>{try{const n=p(e);if(!n.status&&n.details==="permission denied"){throw this.fmtError(`Bad path: ${e}: ${n.details}`,"prepareDestination",n.code)}else if(n.status&&!n.type){i.mkdirSync(e,{recursive:true})}else if(n.status&&n.type!=="d"){throw this.fmtError(`Bad path: ${t}: not a directory`,"_prepareDestination",y.badPath)}}catch(e){throw e.custom?e:this.fmtError(e.message,"_prepareDestination",e.code)}};const _downloadFiles=(e,t,n,s)=>{let i;return new Promise(((o,h)=>{i=f(this,"_downloadFIles",h);let u=[];for(const i of n){let n=`${e}/${i.name}`;let o=l(t,i.name);if(s){u.push(this.fastGet(n,o,false))}else{u.push(this.get(n,o,false))}this.client.emit("download",{source:n,destination:o})}return o(Promise.all(u))})).finally((()=>{E(this,i,"_downloadFiles")}))};try{I(this,"downloadDir");let s=await _getDownloadList(e,n.filter);_prepareDestination(t);let i=s.filter((e=>e.type!=="d"));if(i.length){await _downloadFiles(e,t,i,n.useFastget)}let o=s.filter((e=>e.type==="d"));for(const n of o){let s=`${e}/${n.name}`;let i=l(t,n.name);await this.downloadDir(s,i)}return`${e} downloaded to ${t}`}catch(t){throw t.custom?t:this.fmtError(`${t.message}: ${e}`,"downloadDir",t.code)}}createReadStream(e,t){let n;try{n=f(this,"createReadStream");I(this,"createReadStream");const s=this.sftp.createReadStream(e,t);return s}catch(e){throw e.custom?e:this.fmtError(e.message,"createReadStream",e.code)}finally{E(this,n,"createReadStreame")}}createWriteStream(e,t){let n;try{n=f(this,"createWriteStream");I(this,"createWriteStream");const s=this.sftp.createWriteStream(e,t);return s}catch(e){throw e.custom?e:this.fmtError(e.message,"createWriteStream",e.code)}finally{E(this,n,"createWriteStream")}}_rcopy(e,t){return new Promise(((n,s)=>{const i=this.sftp.createWriteStream(t);const o=this.sftp.createReadStream(e);i.on("error",(e=>{s(this.fmtError(`${e.message} ${t}`,"_rcopy"))}));o.on("error",(t=>{s(this.fmtError(`${t.message} ${e}`,"_rcopy"))}));i.on("close",(()=>{n(`${e} copied to ${t}`)}));o.pipe(i)}))}async rcopy(e,t){let n;try{n=f(this,"rcopy");I(this,"rcopy");const s=await C(this,e);const i=await this.exists(s);if(!i){throw this.fmtError(`Source does not exist ${s}`,"rcopy",y.badPath)}if(i!=="-"){throw this.fmtError(`Source not a file ${s}`,"rcopy",y.badPath)}const o=await C(this,t);const h=await this.exists(o);if(h){throw this.fmtError(`Destination already exists ${o}`,"rcopy",y.badPath)}return this._rcopy(s,o)}catch(e){throw e.custom?e:this.fmtError(e,"rcopy")}finally{E(this,n,"rcopy")}}end(){let e,t;return new Promise(((n,s)=>{t=f(this,"end",s);this.endCalled=true;e=()=>{this.sftp=undefined;this.debugMsg("end: Connection closed");n(true)};this.on("close",e);if(this.sftp){this.client.end()}else{this.debugMsg("end: Called when no connection active");n(true)}})).finally((()=>{E(this,t,"end");this.removeListener("close",e);this.endCalled=false}))}}e.exports=SftpClient},9432:(e,t,n)=>{const s=n(7147);const i=n(1017);const{errorCode:o}=n(3232);function errorListener(e,t,n){const fn=s=>{if(e.endCalled||e.errorHandled){e.debugMsg(`${t} errorListener - ignoring handled error`);return}e.errorHandled=true;const i=new Error(`${t}: ${s.message}`);i.code=s.code;if(n){n(i)}else{throw i}};return fn}function globalListener(e,t){return()=>{if(e.endCalled||e.errorHandled||e.closeHandled){e.debugMsg(`Global ${t} event: Ignoring expected and handled event`)}else{e.debugMsg(`Global ${t} event: Handling unexpected event`);e.sftp=undefined}}}function endListener(e,t,n){const fn=function(){e.sftp=undefined;if(e.endCalled||e.endHandled||e.errorHandled){e.debugMsg(`${t} endListener - ignoring handled error`);return}e.endHandled=true;e.debugMsg(`${t} Unexpected end event - ignoring`)};return fn}function closeListener(e,t,n){const fn=function(){e.sftp=undefined;if(e.endCalled||e.closeHandled||e.errorHandled||e.endHandled){e.debugMsg(`${t} closeListener - ignoring handled error`);return}e.closeHandled=true;e.debugMsg(`${t} Unexpected close event raised - ignoring`)};return fn}function addTempListeners(e,t,n){const s={end:endListener(e,t,n),close:closeListener(e,t,n),error:errorListener(e,t,n)};e.on("end",s.end);e.on("close",s.close);e.on("error",s.error);e._resetEventFlags();return s}function removeTempListeners(e,t,n){try{e.removeListener("end",t.end);e.removeListener("close",t.close);e.removeListener("error",t.error)}catch(e){throw new Error(`${n}: Error removing temp listeners: ${e.message}`)}}function localExists(e){const t=s.statSync(e,{throwIfNoEntry:false});if(!t){return false}else if(t.isDirectory()){return"d"}else if(t.isFile()){return"-"}else{const t=new Error(`Bad path: ${e}: target must be a file or directory`);t.code=o.badPath;throw t}}function haveLocalAccess(e,t="r"){const n=s.constants.F_OK|t==="w"?s.constants.W_OK:s.constants.R_OK;try{s.accessSync(e,n);const t=localExists(e);return{status:true,type:t,details:"access OK",code:0}}catch(t){switch(t.errno){case-2:return{status:false,type:null,details:"not exist",code:-2};case-13:return{status:false,type:localExists(e),details:"permission denied",code:-13};case-20:return{status:false,type:null,details:"parent not a directory"};default:return{status:false,type:null,details:t.message}}}}function haveLocalCreate(e){const{status:t,details:n,type:s}=haveLocalAccess(e,"w");if(!t&&n==="permission denied"){return{status:t,details:n,type:s}}else if(!t){const t=i.dirname(e);const n=haveLocalAccess(t,"w");if(n.status&&n.type!=="d"){return{status:false,details:`${t}: not a directory`,type:null}}else if(!n.status){return{status:n.status,details:`${t}: ${n.details}`,type:null}}else{return{status:true,details:"access OK",type:null,code:0}}}return{status:t,details:n,type:s}}async function normalizeRemotePath(e,t){try{if(t.startsWith("..")){const n=await e.realPath("..");return`${n}/${t.slice(3)}`}else if(t.startsWith(".")){const n=await e.realPath(".");return`${n}/${t.slice(2)}`}return t}catch(e){throw new Error(`normalizeRemotePath: ${e.message}`)}}function haveConnection(e,t,n){if(!e.sftp){const e=new Error(`${t}: No SFTP connection available`);e.code=o.connect;if(n){n(e);return false}else{throw e}}return true}function sleep(e){return new Promise(((t,n)=>{try{if(isNaN(e)||e<0){n("Argument must be anumber >= 0")}else{setTimeout((()=>{t(true)}),e)}}catch(e){n(e)}}))}e.exports={globalListener:globalListener,errorListener:errorListener,endListener:endListener,closeListener:closeListener,addTempListeners:addTempListeners,removeTempListeners:removeTempListeners,haveLocalAccess:haveLocalAccess,haveLocalCreate:haveLocalCreate,normalizeRemotePath:normalizeRemotePath,localExists:localExists,haveConnection:haveConnection,sleep:sleep}},3204:(e,t,n)=>{"use strict";const{Duplex:s,Readable:i,Writable:o}=n(2781);const{CHANNEL_EXTENDED_DATATYPE:{STDERR:h}}=n(6832);const{bufferSlice:l}=n(9475);const u=32*1024;const g=2*1024*1024;const f=g/2;class ClientStderr extends i{constructor(e,t){super(t);this._channel=e}_read(e){if(this._channel._waitChanDrain){this._channel._waitChanDrain=false;if(this._channel.incoming.window<=f)windowAdjust(this._channel)}}}class ServerStderr extends o{constructor(e){super({highWaterMark:g});this._channel=e}_write(e,t,n){const s=this._channel;const i=s._client._protocol;const o=s.outgoing;const u=o.packetSize;const g=o.id;let f=o.window;const E=e.length;let I=0;if(o.state!=="open")return;while(E-I>0&&f>0){let t=E-I;if(t>f)t=f;if(t>u)t=u;if(I===0&&t===E)i.channelExtData(g,e,h);else i.channelExtData(g,l(e,I,I+t),h);I+=t;f-=t}o.window=f;if(E-I>0){if(f===0)s._waitWindow=true;if(I>0)s._chunkErr=l(e,I,E);else s._chunkErr=e;s._chunkcbErr=n;return}n()}}class Channel extends s{constructor(e,t,n){const s={highWaterMark:g,allowHalfOpen:!n||n&&n.allowHalfOpen!==false,emitClose:false};super(s);this.allowHalfOpen=s.allowHalfOpen;const i=!!(n&&n.server);this.server=i;this.type=t.type;this.subtype=undefined;this.incoming=t.incoming;this.outgoing=t.outgoing;this._callbacks=[];this._client=e;this._hasX11=false;this._exit={code:undefined,signal:undefined,dump:undefined,desc:undefined};this.stdin=this.stdout=this;if(i)this.stderr=new ServerStderr(this);else this.stderr=new ClientStderr(this,s);this._waitWindow=false;this._waitChanDrain=false;this._chunk=undefined;this._chunkcb=undefined;this._chunkErr=undefined;this._chunkcbErr=undefined;this.on("finish",onFinish).on("prefinish",onFinish);this.on("end",onEnd).on("close",onEnd)}_read(e){if(this._waitChanDrain){this._waitChanDrain=false;if(this.incoming.window<=f)windowAdjust(this)}}_write(e,t,n){const s=this._client._protocol;const i=this.outgoing;const o=i.packetSize;const h=i.id;let u=i.window;const g=e.length;let f=0;if(i.state!=="open")return;while(g-f>0&&u>0){let t=g-f;if(t>u)t=u;if(t>o)t=o;if(f===0&&t===g)s.channelData(h,e);else s.channelData(h,l(e,f,f+t));f+=t;u-=t}i.window=u;if(g-f>0){if(u===0)this._waitWindow=true;if(f>0)this._chunk=l(e,f,g);else this._chunk=e;this._chunkcb=n;return}n()}eof(){if(this.outgoing.state==="open"){this.outgoing.state="eof";this._client._protocol.channelEOF(this.outgoing.id)}}close(){if(this.outgoing.state==="open"||this.outgoing.state==="eof"){this.outgoing.state="closing";this._client._protocol.channelClose(this.outgoing.id)}}destroy(){this.end();this.close();return this}setWindow(e,t,n,s){if(this.server)throw new Error("Client-only method called in server mode");if(this.type==="session"&&(this.subtype==="shell"||this.subtype==="exec")&&this.writable&&this.outgoing.state==="open"){this._client._protocol.windowChange(this.outgoing.id,e,t,n,s)}}signal(e){if(this.server)throw new Error("Client-only method called in server mode");if(this.type==="session"&&this.writable&&this.outgoing.state==="open"){this._client._protocol.signal(this.outgoing.id,e)}}exit(e,t,n){if(!this.server)throw new Error("Server-only method called in client mode");if(this.type==="session"&&this.writable&&this.outgoing.state==="open"){if(typeof e==="number"){this._client._protocol.exitStatus(this.outgoing.id,e)}else{this._client._protocol.exitSignal(this.outgoing.id,e,t,n)}}}}function onFinish(){this.eof();if(this.server||!this.allowHalfOpen)this.close();this.writable=false}function onEnd(){this.readable=false}function windowAdjust(e){if(e.outgoing.state==="closed")return;const t=g-e.incoming.window;if(t<=0)return;e.incoming.window+=t;e._client._protocol.channelWindowAdjust(e.outgoing.id,t)}e.exports={Channel:Channel,MAX_WINDOW:g,PACKET_SIZE:u,windowAdjust:windowAdjust,WINDOW_THRESHOLD:f}},6119:(e,t,n)=>{"use strict";const{Socket:s}=n(1808);const{Duplex:i}=n(2781);const{resolve:o}=n(1017);const{readFile:h}=n(7147);const{execFile:l,spawn:u}=n(2081);const{isParsedKey:g,parseKey:f}=n(2218);const{makeBufferParser:E,readUInt32BE:I,writeUInt32BE:C,writeUInt32LE:B}=n(9475);function once(e){let t=false;return(...n)=>{if(t)return;t=true;e(...n)}}function concat(e,t){const n=Buffer.allocUnsafe(e.length+t.length);e.copy(n,0);t.copy(n,e.length);return n}function noop(){}const Q=Buffer.alloc(0);const p=E();class BaseAgent{getIdentities(e){e(new Error("Missing getIdentities() implementation"))}sign(e,t,n,s){if(typeof n==="function")s=n;s(new Error("Missing sign() implementation"))}}class OpenSSHAgent extends BaseAgent{constructor(e){super();this.socketPath=e}getStream(e){e=once(e);const t=new s;t.on("connect",(()=>{e(null,t)}));t.on("close",onFail).on("end",onFail).on("error",onFail);t.connect(this.socketPath);function onFail(){try{t.destroy()}catch{}e(new Error("Failed to connect to agent"))}}getIdentities(e){e=once(e);this.getStream(((t,n)=>{function onFail(t){if(n){try{n.destroy()}catch{}}if(!t)t=new Error("Failed to retrieve identities from agent");e(t)}if(t)return onFail(t);const s=new R(true);s.on("error",onFail);s.pipe(n).pipe(s);n.on("close",onFail).on("end",onFail).on("error",onFail);s.getIdentities(((t,s)=>{if(t)return onFail(t);try{n.destroy()}catch{}e(null,s)}))}))}sign(e,t,n,s){if(typeof n==="function"){s=n;n=undefined}else if(typeof n!=="object"||n===null){n=undefined}s=once(s);this.getStream(((i,o)=>{function onFail(e){if(o){try{o.destroy()}catch{}}if(!e)e=new Error("Failed to sign data with agent");s(e)}if(i)return onFail(i);const h=new R(true);h.on("error",onFail);h.pipe(o).pipe(h);o.on("close",onFail).on("end",onFail).on("error",onFail);h.sign(e,t,n,((e,t)=>{if(e)return onFail(e);try{o.destroy()}catch{}s(null,t)}))}))}}const y=(()=>{const e=10;const t=11;const s=12;const o=13;const h=14;const l=15;const g=n.ab+"pagent.exe";const f={[e]:new Error("Invalid pagent.exe arguments"),[t]:new Error("Pageant is not running"),[s]:new Error("pagent.exe could not create an mmap"),[o]:new Error("pagent.exe could not set mode for stdin"),[h]:new Error("pagent.exe could not set mode for stdout"),[l]:new Error("pagent.exe did not get expected input payload")};function destroy(e){e.buffer=null;if(e.proc){e.proc.kill();e.proc=undefined}}class PageantSocket extends i{constructor(){super();this.proc=undefined;this.buffer=null}_read(e){}_write(e,t,s){if(this.buffer===null){this.buffer=e}else{const t=Buffer.allocUnsafe(this.buffer.length+e.length);this.buffer.copy(t,0);e.copy(t,this.buffer.length);this.buffer=t}if(this.buffer.length<4)return s();const i=I(this.buffer,0);if(this.buffer.length-44+i)return s(new Error("Unexpected multiple agent requests"));this.buffer=null;let o;const h=this.proc=u(n.ab+"pagent.exe",[e.length]);h.stdout.on("data",(e=>{this.push(e)}));h.on("error",(e=>{o=e;s(o)}));h.on("close",(e=>{this.proc=undefined;if(!o){if(o=f[e])return s(o);s()}}));h.stdin.end(e)}_final(e){destroy(this);e()}_destroy(e,t){destroy(this);t()}}return class PageantAgent extends OpenSSHAgent{getStream(e){e(null,new PageantSocket)}}})();const w=(()=>{const e=/^!(\d+) s ([A-Z0-9]{8}-[A-Z0-9]{8}-[A-Z0-9]{8}-[A-Z0-9]{8})/;return class CygwinAgent extends OpenSSHAgent{getStream(t){t=once(t);let n=this.socketPath;let i=false;h(n,(function readCygsocket(o,u){if(o){if(i)return t(new Error("Invalid cygwin unix socket path"));l("cygpath",["-w",n],((e,s,o)=>{if(e||s.length===0)return t(new Error("Invalid cygwin unix socket path"));i=true;n=s.toString().replace(/[\r\n]/g,"");h(n,readCygsocket)}));return}const g=e.exec(u.toString("ascii"));if(!g)return t(new Error("Malformed cygwin unix socket file"));let f;let E=0;let C=false;const Q=[];let p;let y=Buffer.alloc(12);const w=parseInt(g[1],10);const b=g[2].replace(/-/g,"");const R=Buffer.allocUnsafe(16);for(let e=0,t=0;t<32;++e,t+=2)R[e]=parseInt(b.substring(t,t+2),16);for(let e=0;e<16;e+=4)B(R,I(R,e),e);tryConnect();function _onconnect(){E=0;f="secret";p.write(R)}function _ondata(e){E+=e.length;if(f==="secret"){if(E===16){E=0;f="creds";p.write(y)}return}if(f==="creds"){if(!C)Q.push(e);if(E===12){p.removeListener("connect",_onconnect);p.removeListener("data",_ondata);p.removeListener("error",onFail);p.removeListener("end",onFail);p.removeListener("close",onFail);if(C)return t(null,p);C=true;y=Buffer.concat(Q);B(y,process.pid,0);p.on("error",(()=>{}));p.destroy();tryConnect()}}}function onFail(){t(new Error("Problem negotiating cygwin unix socket security"))}function tryConnect(){p=new s;p.on("connect",_onconnect);p.on("data",_ondata);p.on("error",onFail);p.on("end",onFail);p.on("close",onFail);p.connect(w)}}))}}})();const b=/^[/\\][/\\]\.[/\\]pipe[/\\].+/;function createAgent(e){if(process.platform==="win32"&&!b.test(e)){return e==="pageant"?new y:new w(e)}return new OpenSSHAgent(e)}const R=(()=>{const e=11;const t=13;const n=5;const s=12;const o=14;const h=1<<1;const l=1<<2;const u=0;const E=1;function processResponses(e){let t;while(e[b].length){const n=e[b][0][y];if(n===undefined)break;e[b].shift();t=e.push(n)}return t}const B=Symbol("Inbound Request Type");const y=Symbol("Inbound Request Response");const w=Symbol("Inbound Request Context");class AgentInboundRequest{constructor(e,t){this[B]=e;this[y]=undefined;this[w]=t}hasResponded(){return this[y]!==undefined}getType(){return this[B]}getContext(){return this[w]}}function respond(e,t,n){t[y]=n;return processResponses(e)}function cleanup(e){e[k]=null;if(e[R]===u){const t=e[b];if(t&&t.length){e[b]=[];for(const e of t)e.cb(new Error("No reply from server"))}}try{e.end()}catch{}setImmediate((()=>{if(!e[U])e.emit("end");if(!e[D])e.emit("close")}))}function onClose(){this[D]=true}function onEnd(){this[U]=true}const b=Symbol("Requests");const R=Symbol("Agent Protocol Role");const k=Symbol("Agent Protocol Buffer");const _=Symbol("Agent Protocol Current Message Length");const D=Symbol("Agent Protocol Closed");const U=Symbol("Agent Protocol Ended");return class AgentProtocol extends i{constructor(e){super({autoDestroy:true,emitClose:false});this[R]=e?u:E;this[b]=[];this[k]=null;this[_]=-1;this.once("end",onEnd);this.once("close",onClose)}_read(e){}_write(i,g,E){if(this[k]===null)this[k]=i;else this[k]=concat(this[k],i);let C=this[k];let B=C.length;let Q=0;while(Q{process.nextTick((()=>{const t=this[U];this[U]=null;for(const n of t)n(...e)}))};this[k].getIdentities(once(((e,t)=>{if(e)return doCbs(e);if(!Array.isArray(t)){return doCbs(new Error("Agent implementation failed to provide keys"))}const n=[];for(let e of t){e=f(e);if(e instanceof Error){continue}n.push(e)}this[_]=n;this[D]=-1;doCbs()})))}else{this[U].push(e)}}else{process.nextTick(e)}}nextKey(){if(this[_]===null||++this[D]>=this[_].length){return false}return this[_][this[D]]}currentKey(){if(this[_]===null||this[D]>=this[_].length){return null}return this[_][this[D]]}pos(){if(this[_]===null||this[D]>=this[_].length){return-1}return this[D]}reset(){this[D]=-1}sign(...e){this[k].sign(...e)}}function isAgent(e){return e instanceof BaseAgent}e.exports={AgentContext:AgentContext,AgentProtocol:R,BaseAgent:BaseAgent,createAgent:createAgent,CygwinAgent:w,isAgent:isAgent,OpenSSHAgent:OpenSSHAgent,PageantAgent:y}},6063:(e,t,n)=>{"use strict";const{createHash:s,getHashes:i,randomFillSync:o}=n(6113);const{Socket:h}=n(1808);const{lookup:l}=n(9523);const u=n(2361);const g=i();const{COMPAT:f,CHANNEL_EXTENDED_DATATYPE:{STDERR:E},CHANNEL_OPEN_FAILURE:I,DEFAULT_CIPHER:C,DEFAULT_COMPRESSION:B,DEFAULT_KEX:Q,DEFAULT_MAC:p,DEFAULT_SERVER_HOST_KEY:y,DISCONNECT_REASON:w,DISCONNECT_REASON_BY_VALUE:b,SUPPORTED_CIPHER:R,SUPPORTED_COMPRESSION:k,SUPPORTED_KEX:_,SUPPORTED_MAC:D,SUPPORTED_SERVER_HOST_KEY:U}=n(6832);const{init:L}=n(5708);const v=n(9031);const{parseKey:T}=n(2218);const{SFTP:O}=n(2026);const{bufferCopy:P,makeBufferParser:x,makeError:Y,readUInt32BE:G,sigSSHToASN1:J,writeUInt32BE:W}=n(9475);const{AgentContext:V,createAgent:q,isAgent:j}=n(6119);const{Channel:z,MAX_WINDOW:$,PACKET_SIZE:ee,windowAdjust:te,WINDOW_THRESHOLD:Ae}=n(3204);const{ChannelManager:re,generateAlgorithmList:ne,isWritable:se,onChannelOpenFailure:ie,onCHANNEL_CLOSE:oe}=n(834);const ae=x();const ce=x();const he=/^OpenSSH_(?:(?![0-4])\d)|(?:\d{2,})/;const noop=e=>{};class Client extends u{constructor(){super();this.config={host:undefined,port:undefined,localAddress:undefined,localPort:undefined,forceIPv4:undefined,forceIPv6:undefined,keepaliveCountMax:undefined,keepaliveInterval:undefined,readyTimeout:undefined,ident:undefined,username:undefined,password:undefined,privateKey:undefined,tryKeyboard:undefined,agent:undefined,allowAgentFwd:undefined,authHandler:undefined,hostHashAlgo:undefined,hostHashCb:undefined,strictVendor:undefined,debug:undefined};this._agent=undefined;this._readyTimeout=undefined;this._chanMgr=undefined;this._callbacks=undefined;this._forwarding=undefined;this._forwardingUnix=undefined;this._acceptX11=undefined;this._agentFwdEnabled=undefined;this._remoteVer=undefined;this._protocol=undefined;this._sock=undefined;this._resetKA=undefined}connect(e){if(this._sock&&se(this._sock)){this.once("close",(()=>{this.connect(e)}));this.end();return this}this.config.host=e.hostname||e.host||"localhost";this.config.port=e.port||22;this.config.localAddress=typeof e.localAddress==="string"?e.localAddress:undefined;this.config.localPort=typeof e.localPort==="string"||typeof e.localPort==="number"?e.localPort:undefined;this.config.forceIPv4=e.forceIPv4||false;this.config.forceIPv6=e.forceIPv6||false;this.config.keepaliveCountMax=typeof e.keepaliveCountMax==="number"&&e.keepaliveCountMax>=0?e.keepaliveCountMax:3;this.config.keepaliveInterval=typeof e.keepaliveInterval==="number"&&e.keepaliveInterval>0?e.keepaliveInterval:0;this.config.readyTimeout=typeof e.readyTimeout==="number"&&e.readyTimeout>=0?e.readyTimeout:2e4;this.config.ident=typeof e.ident==="string"||Buffer.isBuffer(e.ident)?e.ident:undefined;const t={kex:undefined,serverHostKey:undefined,cs:{cipher:undefined,mac:undefined,compress:undefined,lang:[]},sc:undefined};let n=true;if(typeof e.algorithms==="object"&&e.algorithms!==null){t.kex=ne(e.algorithms.kex,Q,_);if(t.kex!==Q)n=false;t.serverHostKey=ne(e.algorithms.serverHostKey,y,U);if(t.serverHostKey!==y)n=false;t.cs.cipher=ne(e.algorithms.cipher,C,R);if(t.cs.cipher!==C)n=false;t.cs.mac=ne(e.algorithms.hmac,p,D);if(t.cs.mac!==p)n=false;t.cs.compress=ne(e.algorithms.compress,B,k);if(t.cs.compress!==B)n=false;if(!n)t.sc=t.cs}if(typeof e.username==="string")this.config.username=e.username;else if(typeof e.user==="string")this.config.username=e.user;else throw new Error("Invalid username");this.config.password=typeof e.password==="string"?e.password:undefined;this.config.privateKey=typeof e.privateKey==="string"||Buffer.isBuffer(e.privateKey)?e.privateKey:undefined;this.config.localHostname=typeof e.localHostname==="string"?e.localHostname:undefined;this.config.localUsername=typeof e.localUsername==="string"?e.localUsername:undefined;this.config.tryKeyboard=e.tryKeyboard===true;if(typeof e.agent==="string"&&e.agent.length)this.config.agent=q(e.agent);else if(j(e.agent))this.config.agent=e.agent;else this.config.agent=undefined;this.config.allowAgentFwd=e.agentForward===true&&this.config.agent!==undefined;let i=this.config.authHandler=typeof e.authHandler==="function"||Array.isArray(e.authHandler)?e.authHandler:undefined;this.config.strictVendor=typeof e.strictVendor==="boolean"?e.strictVendor:true;const o=this.config.debug=typeof e.debug==="function"?e.debug:undefined;if(e.agentForward===true&&!this.config.allowAgentFwd){throw new Error("You must set a valid agent path to allow agent forwarding")}let u=this._callbacks=[];this._chanMgr=new re(this);this._forwarding={};this._forwardingUnix={};this._acceptX11=0;this._agentFwdEnabled=false;this._agent=this.config.agent?this.config.agent:undefined;this._remoteVer=undefined;let f;if(this.config.privateKey){f=T(this.config.privateKey,e.passphrase);if(f instanceof Error)throw new Error(`Cannot parse privateKey: ${f.message}`);if(Array.isArray(f)){f=f[0]}if(f.getPrivatePEM()===null){throw new Error("privateKey value does not contain a (valid) private key")}}let I;if(typeof e.hostVerifier==="function"){const t=e.hostVerifier;let n;if(g.indexOf(e.hostHash)!==-1){n=s(e.hostHash)}I=(e,s)=>{if(n){n.update(e);e=n.digest("hex")}const i=t(e,s);if(i!==undefined)s(i)}}const P=this._sock=e.sock||new h;let x=false;let G=false;if(this._protocol)this._protocol.cleanup();const J=!o?undefined:(e,t,n)=>{o(`Debug output from server: ${JSON.stringify(n)}`)};let W;const ae=this._protocol=new v({ident:this.config.ident,offer:n?undefined:t,onWrite:e=>{if(se(P))P.write(e)},onError:e=>{if(e.level==="handshake")clearTimeout(this._readyTimeout);if(!ae._destruct)P.removeAllListeners("data");this.emit("error",e);try{P.end()}catch{}},onHeader:e=>{G=true;this._remoteVer=e.versions.software;if(e.greeting)this.emit("greeting",e.greeting)},onHandshakeComplete:e=>{this.emit("handshake",e);if(!x){x=true;ae.service("ssh-userauth")}},debug:o,hostVerifier:I,messageHandlers:{DEBUG:J,DISCONNECT:(e,t,n)=>{if(t!==w.BY_APPLICATION){if(!n){n=b[t];if(n===undefined)n=`Unexpected disconnection reason: ${t}`}const e=new Error(n);e.code=t;this.emit("error",e)}P.end()},SERVICE_ACCEPT:(e,t)=>{if(t==="ssh-userauth")tryNextAuth()},EXT_INFO:(e,t)=>{if(W===undefined){for(const e of t){if(e.name==="server-sig-algs"){W=e.algs;return}}W=null}},USERAUTH_BANNER:(e,t)=>{this.emit("banner",t)},USERAUTH_SUCCESS:e=>{resetKA();clearTimeout(this._readyTimeout);this.emit("ready")},USERAUTH_FAILURE:(e,t,n)=>{if(de.keyAlgos){const e=de.keyAlgos[0][0];if(o)o(`Client: ${de.type} (${e}) auth failed`);de.keyAlgos.shift();if(de.keyAlgos.length){const[e,t]=de.keyAlgos[0];switch(de.type){case"agent":ae.authPK(de.username,de.agentCtx.currentKey(),e);return;case"publickey":ae.authPK(de.username,de.key,e);return;case"hostbased":ae.authHostbased(de.username,de.key,de.localHostname,de.localUsername,e,((e,n)=>{const s=de.key.sign(e,t);if(s instanceof Error){s.message=`Error while signing with key: ${s.message}`;s.level="client-authentication";this.emit("error",s);return tryNextAuth()}n(s)}));return}}else{de.keyAlgos=undefined}}if(de.type==="agent"){const e=de.agentCtx.pos();o&&o(`Client: Agent key #${e+1} failed`);return tryNextAgentKey()}o&&o(`Client: ${de.type} auth failed`);Ie=n;Ce=t;tryNextAuth()},USERAUTH_PASSWD_CHANGEREQ:(e,t)=>{if(de.type==="password"){this.emit("change password",t,(e=>{ae.authPassword(this.config.username,this.config.password,e)}))}},USERAUTH_PK_OK:e=>{let t;let n;if(de.keyAlgos)[t,n]=de.keyAlgos[0];if(de.type==="agent"){const e=de.agentCtx.currentKey();ae.authPK(de.username,e,t,((t,s)=>{const i={hash:n};de.agentCtx.sign(e,t,i,((e,t)=>{if(e){e.level="agent";this.emit("error",e)}else{return s(t)}tryNextAgentKey()}))}))}else if(de.type==="publickey"){ae.authPK(de.username,de.key,t,((e,t)=>{const s=de.key.sign(e,n);if(s instanceof Error){s.message=`Error signing data with key: ${s.message}`;s.level="client-authentication";this.emit("error",s);return tryNextAuth()}t(s)}))}},USERAUTH_INFO_REQUEST:(e,t,n,s)=>{if(de.type==="keyboard-interactive"){const e=Array.isArray(s)?s.length:0;if(e===0){o&&o("Client: Sending automatic USERAUTH_INFO_RESPONSE");ae.authInfoRes();return}de.prompt(t,n,"",s,(e=>{ae.authInfoRes(e)}))}},REQUEST_SUCCESS:(e,t)=>{if(u.length)u.shift()(false,t)},REQUEST_FAILURE:e=>{if(u.length)u.shift()(true)},GLOBAL_REQUEST:(e,t,n,s)=>{switch(t){case"hostkeys-00@openssh.com":hostKeysProve(this,s,((e,t)=>{if(e)return;this.emit("hostkeys",t)}));if(n)ae.requestSuccess();break;default:if(n)ae.requestFailure()}},CHANNEL_OPEN:(e,t)=>{onCHANNEL_OPEN(this,t)},CHANNEL_OPEN_CONFIRMATION:(e,t)=>{const n=this._chanMgr.get(t.recipient);if(typeof n!=="function")return;const s=n.type==="sftp";const i=s?"session":n.type;const h={type:i,incoming:{id:t.recipient,window:$,packetSize:ee,state:"open"},outgoing:{id:t.sender,window:t.window,packetSize:t.packetSize,state:"open"}};const l=s?new O(this,h,{debug:o}):new z(this,h);this._chanMgr.update(t.recipient,l);n(undefined,l)},CHANNEL_OPEN_FAILURE:(e,t,n,s)=>{const i=this._chanMgr.get(t);if(typeof i!=="function")return;const o={reason:n,description:s};ie(this,t,o,i)},CHANNEL_DATA:(e,t,n)=>{const s=this._chanMgr.get(t);if(typeof s!=="object"||s===null)return;if(s.incoming.window===0)return;s.incoming.window-=n.length;if(s.push(n)===false){s._waitChanDrain=true;return}if(s.incoming.window<=Ae)te(s)},CHANNEL_EXTENDED_DATA:(e,t,n,s)=>{if(s!==E)return;const i=this._chanMgr.get(t);if(typeof i!=="object"||i===null)return;if(i.incoming.window===0)return;i.incoming.window-=n.length;if(!i.stderr.push(n)){i._waitChanDrain=true;return}if(i.incoming.window<=Ae)te(i)},CHANNEL_WINDOW_ADJUST:(e,t,n)=>{const s=this._chanMgr.get(t);if(typeof s!=="object"||s===null)return;s.outgoing.window+=n;if(s._waitWindow){s._waitWindow=false;if(s._chunk){s._write(s._chunk,null,s._chunkcb)}else if(s._chunkcb){s._chunkcb()}else if(s._chunkErr){s.stderr._write(s._chunkErr,null,s._chunkcbErr)}else if(s._chunkcbErr){s._chunkcbErr()}}},CHANNEL_SUCCESS:(e,t)=>{const n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;this._resetKA();if(n._callbacks.length)n._callbacks.shift()(false)},CHANNEL_FAILURE:(e,t)=>{const n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;this._resetKA();if(n._callbacks.length)n._callbacks.shift()(true)},CHANNEL_REQUEST:(e,t,n,s,i)=>{const o=this._chanMgr.get(t);if(typeof o!=="object"||o===null)return;const h=o._exit;if(h.code!==undefined)return;switch(n){case"exit-status":o.emit("exit",h.code=i);return;case"exit-signal":o.emit("exit",h.code=null,h.signal=`SIG${i.signal}`,h.dump=i.coreDumped,h.desc=i.errorMessage);return}if(s)e.channelFailure(o.outgoing.id)},CHANNEL_EOF:(e,t)=>{const n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;if(n.incoming.state!=="open")return;n.incoming.state="eof";if(n.readable)n.push(null);if(n.stderr.readable)n.stderr.push(null)},CHANNEL_CLOSE:(e,t)=>{oe(this,t,this._chanMgr.get(t))}}});P.pause();const ce=this.config.keepaliveInterval;const he=this.config.keepaliveCountMax;let le=0;let ue;const sendKA=()=>{if(++le>he){clearInterval(ue);if(P.readable){const e=new Error("Keepalive timeout");e.level="client-timeout";this.emit("error",e);P.destroy()}return}if(se(P)){u.push(resetKA);ae.ping()}else{clearInterval(ue)}};function resetKA(){if(ce>0){le=0;clearInterval(ue);if(se(P))ue=setInterval(sendKA,ce)}}this._resetKA=resetKA;const ge=(()=>{let e=false;return()=>{if(e)return;e=true;if(Ee&&!G){const e=Y("Connection lost before handshake","protocol",true);this.emit("error",e)}}})();const fe=(()=>{let e=false;return()=>{if(e)return;e=true;Ee=true;o&&o("Socket connected");this.emit("connect");L.then((()=>{ae.start();P.on("data",(e=>{try{ae.parse(e,0,e.length)}catch(e){this.emit("error",e);try{if(se(P))P.end()}catch{}}}));if(P.stderr&&typeof P.stderr.resume==="function")P.stderr.resume();P.resume()})).catch((e=>{this.emit("error",e);try{if(se(P))P.end()}catch{}}))}})();let Ee=false;P.on("connect",fe).on("timeout",(()=>{this.emit("timeout")})).on("error",(e=>{o&&o(`Socket error: ${e.message}`);clearTimeout(this._readyTimeout);e.level="client-socket";this.emit("error",e)})).on("end",(()=>{o&&o("Socket ended");ge();ae.cleanup();clearTimeout(this._readyTimeout);clearInterval(ue);this.emit("end")})).on("close",(()=>{o&&o("Socket closed");ge();ae.cleanup();clearTimeout(this._readyTimeout);clearInterval(ue);this.emit("close");const e=u;u=this._callbacks=[];const t=new Error("No response from server");for(let n=0;n{if(Qe)return;Qe=true;if(e===false){const e=new Error("All configured authentication methods failed");e.level="client-authentication";this.emit("error",e);this.end();return}if(typeof e==="string"){const t=e;if(Be.indexOf(t)===-1)return skipAuth(`Authentication method not allowed: ${t}`);const n=this.config.username;switch(t){case"password":e={type:t,username:n,password:this.config.password};break;case"publickey":e={type:t,username:n,key:f};break;case"hostbased":e={type:t,username:n,key:f,localHostname:this.config.localHostname,localUsername:this.config.localUsername};break;case"agent":e={type:t,username:n,agentCtx:new V(this._agent)};break;case"keyboard-interactive":e={type:t,username:n,prompt:(...e)=>this.emit("keyboard-interactive",...e)};break;case"none":e={type:t,username:n};break;default:return skipAuth(`Skipping unsupported authentication method: ${e}`)}}else if(typeof e!=="object"||e===null){return skipAuth(`Skipping invalid authentication attempt: ${e}`)}else{const t=e.username;if(typeof t!=="string"){return skipAuth(`Skipping invalid authentication attempt: ${e}`)}const n=e.type;switch(n){case"password":{const{password:s}=e;if(typeof s!=="string"&&!Buffer.isBuffer(s))return skipAuth("Skipping invalid password auth attempt");e={type:n,username:t,password:s};break}case"publickey":{const s=T(e.key,e.passphrase);if(s instanceof Error)return skipAuth("Skipping invalid key auth attempt");if(!s.isPrivateKey())return skipAuth("Skipping non-private key");e={type:n,username:t,key:s};break}case"hostbased":{const{localHostname:s,localUsername:i}=e;const o=T(e.key,e.passphrase);if(o instanceof Error||typeof s!=="string"||typeof i!=="string"){return skipAuth("Skipping invalid hostbased auth attempt")}if(!o.isPrivateKey())return skipAuth("Skipping non-private key");e={type:n,username:t,key:o,localHostname:s,localUsername:i};break}case"agent":{let s=e.agent;if(typeof s==="string"&&s.length){s=q(s)}else if(!j(s)){return skipAuth(`Skipping invalid agent: ${e.agent}`)}e={type:n,username:t,agentCtx:new V(s)};break}case"keyboard-interactive":{const{prompt:s}=e;if(typeof s!=="function"){return skipAuth("Skipping invalid keyboard-interactive auth attempt")}e={type:n,username:t,prompt:s};break}case"none":e={type:n,username:t};break;default:return skipAuth(`Skipping unsupported authentication method: ${e}`)}}de=e;try{const e=de.username;switch(de.type){case"password":ae.authPassword(e,de.password);break;case"publickey":{let t;de.keyAlgos=getKeyAlgos(this,de.key,W);if(de.keyAlgos){if(de.keyAlgos.length){t=de.keyAlgos[0][0]}else{return skipAuth("Skipping key authentication (no mutual hash algorithm)")}}ae.authPK(e,de.key,t);break}case"hostbased":{let t;let n;de.keyAlgos=getKeyAlgos(this,de.key,W);if(de.keyAlgos){if(de.keyAlgos.length){[t,n]=de.keyAlgos[0]}else{return skipAuth("Skipping hostbased authentication (no mutual hash algorithm)")}}ae.authHostbased(e,de.key,de.localHostname,de.localUsername,t,((e,t)=>{const s=de.key.sign(e,n);if(s instanceof Error){s.message=`Error while signing with key: ${s.message}`;s.level="client-authentication";this.emit("error",s);return tryNextAuth()}t(s)}));break}case"agent":de.agentCtx.init((e=>{if(e){e.level="agent";this.emit("error",e);return tryNextAuth()}tryNextAgentKey()}));break;case"keyboard-interactive":ae.authKeyboard(e);break;case"none":ae.authNone(e);break}}finally{Qe=false}};function skipAuth(e){o&&o(e);process.nextTick(tryNextAuth)}function tryNextAuth(){Qe=false;const e=i(Ce,Ie,doNextAuth);if(Qe||e===undefined)return;doNextAuth(e)}const tryNextAgentKey=()=>{if(de.type==="agent"){const e=de.agentCtx.nextKey();if(e===false){o&&o("Agent: No more keys left to try");o&&o("Client: agent auth failed");tryNextAuth()}else{const t=de.agentCtx.pos();let n;de.keyAlgos=getKeyAlgos(this,e,W);if(de.keyAlgos){if(de.keyAlgos.length){n=de.keyAlgos[0][0]}else{o&&o(`Agent: Skipping key #${t+1} (no mutual hash algorithm)`);tryNextAgentKey();return}}o&&o(`Agent: Trying key #${t+1}`);ae.authPK(de.username,e,n)}}};const startTimeout=()=>{if(this.config.readyTimeout>0){this._readyTimeout=setTimeout((()=>{const e=new Error("Timed out while waiting for handshake");e.level="client-timeout";this.emit("error",e);P.destroy()}),this.config.readyTimeout)}};if(!e.sock){let t=this.config.host;const n=this.config.forceIPv4;const s=this.config.forceIPv6;o&&o(`Client: Trying ${t} on port ${this.config.port} ...`);const doConnect=()=>{startTimeout();P.connect({host:t,port:this.config.port,localAddress:this.config.localAddress,localPort:this.config.localPort});P.setMaxListeners(0);P.setTimeout(typeof e.timeout==="number"?e.timeout:0)};if(!n&&!s||n&&s){doConnect()}else{l(t,n?4:6,((e,s,i)=>{if(e){const s=n?"IPv4":"IPv6";const i=new Error(`Error while looking up ${s} address for '${t}': ${e}`);clearTimeout(this._readyTimeout);i.level="client-dns";this.emit("error",i);this.emit("close");return}t=s;doConnect()}))}}else{startTimeout();if(typeof P.connecting==="boolean"){if(!P.connecting){fe()}}else{fe()}}return this}end(){if(this._sock&&se(this._sock)){this._protocol.disconnect(w.BY_APPLICATION);this._sock.end()}return this}destroy(){this._sock&&se(this._sock)&&this._sock.destroy();return this}exec(e,t,n){if(!this._sock||!se(this._sock))throw new Error("Not connected");if(typeof t==="function"){n=t;t={}}const s={allowHalfOpen:t.allowHalfOpen!==false};openChannel(this,"session",s,((s,i)=>{if(s){n(s);return}const o=[];function reqCb(e){if(e){i.close();n(e);return}if(o.length)o.shift()()}if(this.config.allowAgentFwd===true||t&&t.agentForward===true&&this._agent!==undefined){o.push((()=>reqAgentFwd(i,reqCb)))}if(typeof t==="object"&&t!==null){if(typeof t.env==="object"&&t.env!==null)reqEnv(i,t.env);if(typeof t.pty==="object"&&t.pty!==null||t.pty===true){o.push((()=>reqPty(i,t.pty,reqCb)))}if(typeof t.x11==="object"&&t.x11!==null||t.x11==="number"||t.x11===true){o.push((()=>reqX11(i,t.x11,reqCb)))}}o.push((()=>reqExec(i,e,t,n)));o.shift()()}));return this}shell(e,t,n){if(!this._sock||!se(this._sock))throw new Error("Not connected");if(typeof e==="function"){n=e;e=t=undefined}else if(typeof t==="function"){n=t;t=undefined}if(e&&(e.x11!==undefined||e.env!==undefined)){t=e;e=undefined}openChannel(this,"session",((s,i)=>{if(s){n(s);return}const o=[];function reqCb(e){if(e){i.close();n(e);return}if(o.length)o.shift()()}if(this.config.allowAgentFwd===true||t&&t.agentForward===true&&this._agent!==undefined){o.push((()=>reqAgentFwd(i,reqCb)))}if(e!==false)o.push((()=>reqPty(i,e,reqCb)));if(typeof t==="object"&&t!==null){if(typeof t.env==="object"&&t.env!==null)reqEnv(i,t.env);if(typeof t.x11==="object"&&t.x11!==null||t.x11==="number"||t.x11===true){o.push((()=>reqX11(i,t.x11,reqCb)))}}o.push((()=>reqShell(i,n)));o.shift()()}));return this}subsys(e,t){if(!this._sock||!se(this._sock))throw new Error("Not connected");openChannel(this,"session",((n,s)=>{if(n){t(n);return}reqSubsystem(s,e,((e,n)=>{if(e){t(e);return}t(undefined,n)}))}));return this}forwardIn(e,t,n){if(!this._sock||!se(this._sock))throw new Error("Not connected");const s=typeof n==="function";if(s){this._callbacks.push(((s,i)=>{if(s){n(s!==true?s:new Error(`Unable to bind to ${e}:${t}`));return}let o=t;if(t===0&&i&&i.length>=4){o=G(i,0);if(!(this._protocol._compatFlags&f.DYN_RPORT_BUG))t=o}this._forwarding[`${e}:${t}`]=o;n(undefined,o)}))}this._protocol.tcpipForward(e,t,s);return this}unforwardIn(e,t,n){if(!this._sock||!se(this._sock))throw new Error("Not connected");const s=typeof n==="function";if(s){this._callbacks.push((s=>{if(s){n(s!==true?s:new Error(`Unable to unbind from ${e}:${t}`));return}delete this._forwarding[`${e}:${t}`];n()}))}this._protocol.cancelTcpipForward(e,t,s);return this}forwardOut(e,t,n,s,i){if(!this._sock||!se(this._sock))throw new Error("Not connected");const o={srcIP:e,srcPort:t,dstIP:n,dstPort:s};if(typeof i!=="function")i=noop;openChannel(this,"direct-tcpip",o,i);return this}openssh_noMoreSessions(e){if(!this._sock||!se(this._sock))throw new Error("Not connected");const t=typeof e==="function";if(!this.config.strictVendor||this.config.strictVendor&&he.test(this._remoteVer)){if(t){this._callbacks.push((t=>{if(t){e(t!==true?t:new Error("Unable to disable future sessions"));return}e()}))}this._protocol.openssh_noMoreSessions(t);return this}if(!t)return this;process.nextTick(e,new Error("strictVendor enabled and server is not OpenSSH or compatible version"));return this}openssh_forwardInStreamLocal(e,t){if(!this._sock||!se(this._sock))throw new Error("Not connected");const n=typeof t==="function";if(!this.config.strictVendor||this.config.strictVendor&&he.test(this._remoteVer)){if(n){this._callbacks.push((n=>{if(n){t(n!==true?n:new Error(`Unable to bind to ${e}`));return}this._forwardingUnix[e]=true;t()}))}this._protocol.openssh_streamLocalForward(e,n);return this}if(!n)return this;process.nextTick(t,new Error("strictVendor enabled and server is not OpenSSH or compatible version"));return this}openssh_unforwardInStreamLocal(e,t){if(!this._sock||!se(this._sock))throw new Error("Not connected");const n=typeof t==="function";if(!this.config.strictVendor||this.config.strictVendor&&he.test(this._remoteVer)){if(n){this._callbacks.push((n=>{if(n){t(n!==true?n:new Error(`Unable to unbind from ${e}`));return}delete this._forwardingUnix[e];t()}))}this._protocol.openssh_cancelStreamLocalForward(e,n);return this}if(!n)return this;process.nextTick(t,new Error("strictVendor enabled and server is not OpenSSH or compatible version"));return this}openssh_forwardOutStreamLocal(e,t){if(!this._sock||!se(this._sock))throw new Error("Not connected");if(typeof t!=="function")t=noop;if(!this.config.strictVendor||this.config.strictVendor&&he.test(this._remoteVer)){openChannel(this,"direct-streamlocal@openssh.com",{socketPath:e},t);return this}process.nextTick(t,new Error("strictVendor enabled and server is not OpenSSH or compatible version"));return this}sftp(e){if(!this._sock||!se(this._sock))throw new Error("Not connected");openChannel(this,"sftp",((t,n)=>{if(t){e(t);return}reqSubsystem(n,"sftp",((t,s)=>{if(t){e(t);return}function removeListeners(){n.removeListener("ready",onReady);n.removeListener("error",onError);n.removeListener("exit",onExit);n.removeListener("close",onExit)}function onReady(){removeListeners();e(undefined,n)}function onError(t){removeListeners();e(t)}function onExit(t,n){removeListeners();let s;if(typeof t==="number")s=`Received exit code ${t} while establishing SFTP session`;else if(n!==undefined)s=`Received signal ${n} while establishing SFTP session`;else s="Received unexpected SFTP session termination";const i=new Error(s);i.code=t;i.signal=n;e(i)}n.on("ready",onReady).on("error",onError).on("exit",onExit).on("close",onExit);n._init()}))}));return this}setNoDelay(e){if(this._sock&&typeof this._sock.setNoDelay==="function")this._sock.setNoDelay(e);return this}}function openChannel(e,t,n,s){const i=$;const o=ee;if(typeof n==="function"){s=n;n={}}const wrapper=(e,t)=>{s(e,t)};wrapper.type=t;const h=e._chanMgr.add(wrapper);if(h===-1){s(new Error("No free channels available"));return}switch(t){case"session":case"sftp":e._protocol.session(h,i,o);break;case"direct-tcpip":e._protocol.directTcpip(h,i,o,n);break;case"direct-streamlocal@openssh.com":e._protocol.openssh_directStreamLocal(h,i,o,n);break;default:throw new Error(`Unsupported channel type: ${t}`)}}function reqX11(e,t,n){const s={single:false,protocol:"MIT-MAGIC-COOKIE-1",cookie:undefined,screen:0};if(typeof t==="function"){n=t}else if(typeof t==="object"&&t!==null){if(typeof t.single==="boolean")s.single=t.single;if(typeof t.screen==="number")s.screen=t.screen;if(typeof t.protocol==="string")s.protocol=t.protocol;if(typeof t.cookie==="string")s.cookie=t.cookie;else if(Buffer.isBuffer(t.cookie))s.cookie=t.cookie.hexSlice(0,t.cookie.length)}if(s.cookie===undefined)s.cookie=le();const i=typeof n==="function";if(e.outgoing.state!=="open"){if(i)n(new Error("Channel is not open"));return}if(i){e._callbacks.push((t=>{if(t){n(t!==true?t:new Error("Unable to request X11"));return}e._hasX11=true;++e._client._acceptX11;e.once("close",(()=>{if(e._client._acceptX11)--e._client._acceptX11}));n()}))}e._client._protocol.x11Forward(e.outgoing.id,s,i)}function reqPty(e,t,n){let s=24;let i=80;let o=640;let h=480;let l="vt100";let u=null;if(typeof t==="function"){n=t}else if(typeof t==="object"&&t!==null){if(typeof t.rows==="number")s=t.rows;if(typeof t.cols==="number")i=t.cols;if(typeof t.width==="number")o=t.width;if(typeof t.height==="number")h=t.height;if(typeof t.term==="string")l=t.term;if(typeof t.modes==="object")u=t.modes}const g=typeof n==="function";if(e.outgoing.state!=="open"){if(g)n(new Error("Channel is not open"));return}if(g){e._callbacks.push((e=>{if(e){n(e!==true?e:new Error("Unable to request a pseudo-terminal"));return}n()}))}e._client._protocol.pty(e.outgoing.id,s,i,h,o,l,u,g)}function reqAgentFwd(e,t){const n=typeof t==="function";if(e.outgoing.state!=="open"){n&&t(new Error("Channel is not open"));return}if(e._client._agentFwdEnabled){n&&t(false);return}e._client._agentFwdEnabled=true;e._callbacks.push((s=>{if(s){e._client._agentFwdEnabled=false;if(n){t(s!==true?s:new Error("Unable to request agent forwarding"))}return}if(n)t()}));e._client._protocol.openssh_agentForward(e.outgoing.id,true)}function reqShell(e,t){if(e.outgoing.state!=="open"){t(new Error("Channel is not open"));return}e._callbacks.push((n=>{if(n){t(n!==true?n:new Error("Unable to open shell"));return}e.subtype="shell";t(undefined,e)}));e._client._protocol.shell(e.outgoing.id,true)}function reqExec(e,t,n,s){if(e.outgoing.state!=="open"){s(new Error("Channel is not open"));return}e._callbacks.push((t=>{if(t){s(t!==true?t:new Error("Unable to exec"));return}e.subtype="exec";e.allowHalfOpen=n.allowHalfOpen!==false;s(undefined,e)}));e._client._protocol.exec(e.outgoing.id,t,true)}function reqEnv(e,t){if(e.outgoing.state!=="open")return;const n=Object.keys(t||{});for(let s=0;s{if(s){n(s!==true?s:new Error(`Unable to start subsystem: ${t}`));return}e.subtype="subsystem";n(undefined,e)}));e._client._protocol.subsystem(e.outgoing.id,t,true)}function onCHANNEL_OPEN(e,t){let n=-1;let s;const accept=()=>{const s={type:t.type,incoming:{id:n,window:$,packetSize:ee,state:"open"},outgoing:{id:t.sender,window:t.window,packetSize:t.packetSize,state:"open"}};const i=new z(e,s);e._chanMgr.update(n,i);e._protocol.channelOpenConfirm(t.sender,n,$,ee);return i};const reject=()=>{if(s===undefined){if(n===-1)s=I.RESOURCE_SHORTAGE;else s=I.CONNECT_FAILED}if(n!==-1)e._chanMgr.remove(n);e._protocol.channelOpenFail(t.sender,s,"")};const reserveChannel=()=>{n=e._chanMgr.add();if(n===-1){s=I.RESOURCE_SHORTAGE;if(e.config.debug){e.config.debug("Client: Automatic rejection of incoming channel open: "+"no channels available")}}return n!==-1};const i=t.data;switch(t.type){case"forwarded-tcpip":{const t=e._forwarding[`${i.destIP}:${i.destPort}`];if(t!==undefined&&reserveChannel()){if(i.destPort===0)i.destPort=t;e.emit("tcp connection",i,accept,reject);return}break}case"forwarded-streamlocal@openssh.com":if(e._forwardingUnix[i.socketPath]!==undefined&&reserveChannel()){e.emit("unix connection",i,accept,reject);return}break;case"auth-agent@openssh.com":if(e._agentFwdEnabled&&typeof e._agent.getStream==="function"&&reserveChannel()){e._agent.getStream(((e,t)=>{if(e)return reject();const n=accept();n.pipe(t).pipe(n)}));return}break;case"x11":if(e._acceptX11!==0&&reserveChannel()){e.emit("x11",i,accept,reject);return}break;default:s=I.UNKNOWN_CHANNEL_TYPE;if(e.config.debug){e.config.debug("Client: Automatic rejection of unsupported incoming channel open "+`type: ${t.type}`)}}if(s===undefined){s=I.ADMINISTRATIVELY_PROHIBITED;if(e.config.debug){e.config.debug("Client: Automatic rejection of unexpected incoming channel open for: "+t.type)}}reject()}const le=(()=>{const e=Buffer.allocUnsafe(16);return()=>{o(e,0,16);return e.hexSlice(0,16)}})();function makeSimpleAuthHandler(e){if(!Array.isArray(e))throw new Error("authList must be an array");let t=0;return(n,s,i)=>{if(t===e.length)return false;return e[t++]}}function hostKeysProve(e,t,n){if(!e._sock||!se(e._sock))return;if(typeof n!=="function")n=noop;if(!Array.isArray(t))throw new TypeError("Invalid keys argument type");const s=[];for(const e of t){const t=T(e);if(t instanceof Error)throw t;s.push(t)}if(!e.config.strictVendor||e.config.strictVendor&&he.test(e._remoteVer)){e._callbacks.push(((t,i)=>{if(t){n(t!==true?t:new Error("Server failed to prove supplied keys"));return}const o=[];let h=0;ae.init(i,0);while(ae.avail()){if(h===s.length)break;const t=s[h++];const n=t.getPublicSSH();const i=ae.readString();ce.init(i,0);const l=ce.readString(true);let u=ce.readString();let g;if(l!==t.type){if(t.type==="ssh-rsa"){switch(l){case"rsa-sha2-256":g="sha256";break;case"rsa-sha2-512":g="sha512";break;default:continue}}else{continue}}const f=e._protocol._kex.sessionID;const E=Buffer.allocUnsafe(4+29+4+f.length+4+n.length);let I=0;W(E,29,I);E.utf8Write("hostkeys-prove-00@openssh.com",I+=4,29);W(E,f.length,I+=29);P(f,E,0,f.length,I+=4);W(E,n.length,I+=f.length);P(n,E,0,n.length,I+=4);if(!(u=J(u,l)))continue;if(t.verify(E,u,g)===true)o.push(t)}ce.clear();ae.clear();n(null,o)}));e._protocol.openssh_hostKeysProve(s);return}process.nextTick(n,new Error("strictVendor enabled and server is not OpenSSH or compatible version"))}function getKeyAlgos(e,t,n){switch(t.type){case"ssh-rsa":if(e._protocol._compatFlags&f.IMPLY_RSA_SHA2_SIGALGS){if(!Array.isArray(n))n=["rsa-sha2-256","rsa-sha2-512"];else n=["rsa-sha2-256","rsa-sha2-512",...n]}if(Array.isArray(n)){if(n.indexOf("rsa-sha2-256")!==-1)return[["rsa-sha2-256","sha256"]];if(n.indexOf("rsa-sha2-512")!==-1)return[["rsa-sha2-512","sha512"]];if(n.indexOf("ssh-rsa")===-1)return[]}return[["ssh-rsa","sha1"]]}}e.exports=Client},2994:(e,t,n)=>{"use strict";const{Agent:s}=n(3685);const{Agent:i}=n(5687);const{connect:o}=n(4404);let h;for(const e of[s,i]){class SSHAgent extends e{constructor(e,t){super(t);this._connectCfg=e;this._defaultSrcIP=t&&t.srcIP||"localhost"}createConnection(t,s){const i=t&&t.localAddress||this._defaultSrcIP;const o=t&&t.localPort||0;const l=t.host;const u=t.port;if(h===undefined)h=n(6063);const g=new h;let f=false;g.on("ready",(()=>{g.forwardOut(i,o,l,u,((n,i)=>{f=true;if(n){g.end();return s(n)}i.once("close",(()=>g.end()));s(null,decorateStream(i,e,t))}))})).on("error",s).on("close",(()=>{if(!f)s(new Error("Unexpected connection close"))})).connect(this._connectCfg)}}t[e===s?"SSHTTPAgent":"SSHTTPSAgent"]=SSHAgent}function noop(){}function decorateStream(e,t,n){if(t===s){e.setKeepAlive=noop;e.setNoDelay=noop;e.setTimeout=noop;e.ref=noop;e.unref=noop;e.destroySoon=e.destroy;return e}n.socket=e;const i=o(n);const h=(()=>{let t=false;return()=>{if(t)return;t=true;if(e.isPaused())e.resume()}})();i.on("end",h).on("close",h);return i}},5869:(e,t,n)=>{"use strict";const{AgentProtocol:s,BaseAgent:i,createAgent:o,CygwinAgent:h,OpenSSHAgent:l,PageantAgent:u}=n(6119);const{SSHTTPAgent:g,SSHTTPSAgent:f}=n(2994);const{parseKey:E}=n(2218);const{flagsToString:I,OPEN_MODE:C,STATUS_CODE:B,stringToFlags:Q}=n(2026);e.exports={AgentProtocol:s,BaseAgent:i,createAgent:o,Client:n(6063),CygwinAgent:h,HTTPAgent:g,HTTPSAgent:f,OpenSSHAgent:l,PageantAgent:u,Server:n(2986),utils:{parseKey:E,...n(3823),sftp:{flagsToString:I,OPEN_MODE:C,STATUS_CODE:B,stringToFlags:Q}}}},3823:(e,t,n)=>{"use strict";const{createCipheriv:s,generateKeyPair:i,generateKeyPairSync:o,getCurves:h,randomBytes:l}=n(6113);const{Ber:u}=n(970);const g=n(5447).pbkdf;const{CIPHER_INFO:f}=n(5708);const E=16;const I=16;const C=h();const B=new Map(Object.entries(f));function makeArgs(e,t){if(typeof e!=="string")throw new TypeError("Key type must be a string");const n={type:"spki",format:"der"};const s={type:"pkcs8",format:"der"};switch(e.toLowerCase()){case"rsa":{if(typeof t!=="object"||t===null)throw new TypeError("Missing options object for RSA key");const e=t.bits;if(!Number.isInteger(e))throw new TypeError("RSA bits must be an integer");if(e<=0||e>16384)throw new RangeError("RSA bits must be non-zero and <= 16384");return["rsa",{modulusLength:e,publicKeyEncoding:n,privateKeyEncoding:s}]}case"ecdsa":{if(typeof t!=="object"||t===null)throw new TypeError("Missing options object for ECDSA key");if(!Number.isInteger(t.bits))throw new TypeError("ECDSA bits must be an integer");let e;switch(t.bits){case 256:e="prime256v1";break;case 384:e="secp384r1";break;case 521:e="secp521r1";break;default:throw new Error("ECDSA bits must be 256, 384, or 521")}if(!C.includes(e))throw new Error("Unsupported ECDSA bits value");return["ec",{namedCurve:e,publicKeyEncoding:n,privateKeyEncoding:s}]}case"ed25519":return["ed25519",{publicKeyEncoding:n,privateKeyEncoding:s}];default:throw new Error(`Unsupported key type: ${e}`)}}function parseDERs(e,t,n){switch(e){case"rsa":{let e=new u.Reader(n);e.readSequence();if(e.readInt()!==0)throw new Error("Unsupported version in RSA private key");e.readSequence();if(e.readOID()!=="1.2.840.113549.1.1.1")throw new Error("Bad RSA private OID");if(e.readByte()!==u.Null)throw new Error("Malformed RSA private key (expected null)");if(e.readByte()!==0){throw new Error("Malformed RSA private key (expected zero-length null)")}e=new u.Reader(e.readString(u.OctetString,true));e.readSequence();if(e.readInt()!==0)throw new Error("Unsupported version in RSA private key");const t=e.readString(u.Integer,true);const s=e.readString(u.Integer,true);const i=e.readString(u.Integer,true);const o=e.readString(u.Integer,true);const h=e.readString(u.Integer,true);e.readString(u.Integer,true);e.readString(u.Integer,true);const l=e.readString(u.Integer,true);const g=Buffer.from("ssh-rsa");const f=Buffer.allocUnsafe(4+g.length+4+t.length+4+s.length+4+i.length+4+l.length+4+o.length+4+h.length);let E=0;f.writeUInt32BE(g.length,E+=0);f.set(g,E+=4);f.writeUInt32BE(t.length,E+=g.length);f.set(t,E+=4);f.writeUInt32BE(s.length,E+=t.length);f.set(s,E+=4);f.writeUInt32BE(i.length,E+=s.length);f.set(i,E+=4);f.writeUInt32BE(l.length,E+=i.length);f.set(l,E+=4);f.writeUInt32BE(o.length,E+=l.length);f.set(o,E+=4);f.writeUInt32BE(h.length,E+=o.length);f.set(h,E+=4);const I=Buffer.allocUnsafe(4+g.length+4+s.length+4+t.length);E=0;I.writeUInt32BE(g.length,E+=0);I.set(g,E+=4);I.writeUInt32BE(s.length,E+=g.length);I.set(s,E+=4);I.writeUInt32BE(t.length,E+=s.length);I.set(t,E+=4);return{sshName:g.toString(),priv:f,pub:I}}case"ec":{let e=new u.Reader(t);e.readSequence();e.readSequence();if(e.readOID()!=="1.2.840.10045.2.1")throw new Error("Bad ECDSA public OID");e.readOID();let s=e.readString(u.BitString,true);{let e=0;for(;e0)s=s.slice(e)}e=new u.Reader(n);e.readSequence();if(e.readInt()!==0)throw new Error("Unsupported version in ECDSA private key");e.readSequence();if(e.readOID()!=="1.2.840.10045.2.1")throw new Error("Bad ECDSA private OID");const i=e.readOID();let o;switch(i){case"1.2.840.10045.3.1.7":o="nistp256";break;case"1.3.132.0.34":o="nistp384";break;case"1.3.132.0.35":o="nistp521";break;default:throw new Error("Unsupported curve in ECDSA private key")}e=new u.Reader(e.readString(u.OctetString,true));e.readSequence();if(e.readInt()!==1)throw new Error("Unsupported version in ECDSA private key");const h=Buffer.concat([Buffer.from([0]),e.readString(u.OctetString,true)]);const l=Buffer.from(`ecdsa-sha2-${o}`);o=Buffer.from(o);const g=Buffer.allocUnsafe(4+l.length+4+o.length+4+s.length+4+h.length);let f=0;g.writeUInt32BE(l.length,f+=0);g.set(l,f+=4);g.writeUInt32BE(o.length,f+=l.length);g.set(o,f+=4);g.writeUInt32BE(s.length,f+=o.length);g.set(s,f+=4);g.writeUInt32BE(h.length,f+=s.length);g.set(h,f+=4);const E=Buffer.allocUnsafe(4+l.length+4+o.length+4+s.length);f=0;E.writeUInt32BE(l.length,f+=0);E.set(l,f+=4);E.writeUInt32BE(o.length,f+=l.length);E.set(o,f+=4);E.writeUInt32BE(s.length,f+=o.length);E.set(s,f+=4);return{sshName:l.toString(),priv:g,pub:E}}case"ed25519":{let e=new u.Reader(t);e.readSequence();e.readSequence();if(e.readOID()!=="1.3.101.112")throw new Error("Bad ED25519 public OID");let s=e.readString(u.BitString,true);{let e=0;for(;e0)s=s.slice(e)}e=new u.Reader(n);e.readSequence();if(e.readInt()!==0)throw new Error("Unsupported version in ED25519 private key");e.readSequence();if(e.readOID()!=="1.3.101.112")throw new Error("Bad ED25519 private OID");e=new u.Reader(e.readString(u.OctetString,true));const i=e.readString(u.OctetString,true);const o=Buffer.from("ssh-ed25519");const h=Buffer.allocUnsafe(4+o.length+4+s.length+4+(i.length+s.length));let l=0;h.writeUInt32BE(o.length,l+=0);h.set(o,l+=4);h.writeUInt32BE(s.length,l+=o.length);h.set(s,l+=4);h.writeUInt32BE(i.length+s.length,l+=s.length);h.set(i,l+=4);h.set(s,l+=i.length);const g=Buffer.allocUnsafe(4+o.length+4+s.length);l=0;g.writeUInt32BE(o.length,l+=0);g.set(o,l+=4);g.writeUInt32BE(s.length,l+=o.length);g.set(s,l+=4);return{sshName:o.toString(),priv:h,pub:g}}}}function convertKeys(e,t,n,i){let o="new";let h;let u="";if(typeof i==="object"&&i!==null){if(typeof i.comment==="string"&&i.comment)u=i.comment;if(typeof i.format==="string"&&i.format)o=i.format;if(i.passphrase){let e;if(typeof i.passphrase==="string")e=Buffer.from(i.passphrase);else if(Buffer.isBuffer(i.passphrase))e=i.passphrase;else throw new Error("Invalid passphrase");if(i.cipher===undefined)throw new Error("Missing cipher name");const t=B.get(i.cipher);if(t===undefined)throw new Error("Invalid cipher name");if(o==="new"){let n=I;if(i.rounds!==undefined){if(!Number.isInteger(i.rounds))throw new TypeError("rounds must be an integer");if(i.rounds>0)n=i.rounds}const s=Buffer.allocUnsafe(t.keyLen+t.ivLen);const o=l(E);const u=g(e,e.length,o,o.length,s,s.length,n);if(u!==0)return new Error("Failed to generate information to encrypt key");const f=Buffer.allocUnsafe(4+o.length+4);{let e=0;f.writeUInt32BE(o.length,e+=0);f.set(o,e+=4);f.writeUInt32BE(n,e+=o.length)}h={cipher:t,cipherName:i.cipher,kdfName:"bcrypt",kdfOptions:f,key:s.slice(0,t.keyLen),iv:s.slice(t.keyLen)}}}}switch(o){case"new":{let i="-----BEGIN OPENSSH PRIVATE KEY-----\n";let o;const g=Buffer.from(h?h.cipherName:"none");const f=Buffer.from(h?h.kdfName:"none");const E=h?h.kdfOptions:Buffer.alloc(0);const I=h?h.cipher.blockLen:8;const C=parseDERs(e,t,n);const B=l(4);const Q=Buffer.from(u);const p=4+4+C.priv.length+4+Q.length;let y=[];for(let e=1;(p+y.length)%I;++e)y.push(e&255);y=Buffer.from(y);let w=Buffer.allocUnsafe(p+y.length);let b;{let e=0;w.set(B,e+=0);w.set(B,e+=4);w.set(C.priv,e+=4);w.writeUInt32BE(Q.length,e+=C.priv.length);w.set(Q,e+=4);w.set(y,e+=Q.length)}if(h){const e={authTagLength:h.cipher.authLen};const t=s(h.cipher.sslName,h.key,h.iv,e);t.setAutoPadding(false);w=Buffer.concat([t.update(w),t.final()]);if(h.cipher.authLen>0)b=t.getAuthTag();else b=Buffer.alloc(0);h.key.fill(0);h.iv.fill(0)}else{b=Buffer.alloc(0)}const R=Buffer.from("openssh-key-v1\0");const k=Buffer.allocUnsafe(R.length+4+g.length+4+f.length+4+E.length+4+4+C.pub.length+4+w.length+b.length);{let e=0;k.set(R,e+=0);k.writeUInt32BE(g.length,e+=R.length);k.set(g,e+=4);k.writeUInt32BE(f.length,e+=g.length);k.set(f,e+=4);k.writeUInt32BE(E.length,e+=f.length);k.set(E,e+=4);k.writeUInt32BE(1,e+=E.length);k.writeUInt32BE(C.pub.length,e+=4);k.set(C.pub,e+=4);k.writeUInt32BE(w.length,e+=C.pub.length);k.set(w,e+=4);k.set(b,e+=w.length)}{const e=k.base64Slice(0,k.length);let t=e.replace(/.{64}/g,"$&\n");if(e.length&63)t+="\n";i+=t}{const e=C.pub.base64Slice(0,C.pub.length);o=`${C.sshName} ${e}${u?` ${u}`:""}`}i+="-----END OPENSSH PRIVATE KEY-----\n";return{private:i,public:o}}default:throw new Error("Invalid output key format")}}function noop(){}e.exports={generateKeyPair:(e,t,n)=>{if(typeof t==="function"){n=t;t=undefined}if(typeof n!=="function")n=noop;const s=makeArgs(e,t);i(...s,((e,i,o)=>{if(e)return n(e);let h;try{h=convertKeys(s[0],i,o,t)}catch(e){return n(e)}n(null,h)}))},generateKeyPairSync:(e,t)=>{const n=makeArgs(e,t);const{publicKey:s,privateKey:i}=o(...n);return convertKeys(n[0],s,i,t)}}},9031:(e,t,n)=>{"use strict";const{inspect:s}=n(3837);const{bindingAvailable:i,NullCipher:o,NullDecipher:h}=n(5708);const{COMPAT_CHECKS:l,DISCONNECT_REASON:u,eddsaSupported:g,MESSAGE:f,SIGNALS:E,TERMINAL_MODE:I}=n(6832);const{DEFAULT_KEXINIT_CLIENT:C,DEFAULT_KEXINIT_SERVER:B,KexInit:Q,kexinit:p,onKEXPayload:y}=n(4126);const{parseKey:w}=n(2218);const b=n(172);const{bufferCopy:R,bufferFill:k,bufferSlice:_,convertSignature:D,sendPacket:U,writeUInt32BE:L}=n(9475);const{PacketReader:v,PacketWriter:T,ZlibPacketReader:O,ZlibPacketWriter:P}=n(6715);const x=n(6674).i8;const Y=new Map(Object.values(u).map((e=>[e,1])));const G=Buffer.from(`SSH-2.0-ssh2js${x}`);const J=Buffer.from(`${G}\r\n`);const W=8192;const V=1024;const q=Buffer.from([f.GLOBAL_REQUEST,0,0,0,21,107,101,101,112,97,108,105,118,101,64,111,112,101,110,115,115,104,46,99,111,109,1]);const j=Buffer.from([I.TTY_OP_END]);function noop(){}class Protocol{constructor(e){const t=e.onWrite;if(typeof t!=="function")throw new Error("Missing onWrite function");this._onWrite=e=>{t(e)};const n=e.onError;if(typeof n!=="function")throw new Error("Missing onError function");this._onError=e=>{n(e)};const h=e.debug;this._debug=typeof h==="function"?e=>{h(e)}:undefined;const l=e.onHeader;this._onHeader=typeof l==="function"?(...e)=>{l(...e)}:noop;const u=e.onPacket;this._onPacket=typeof u==="function"?()=>{u()}:noop;let g=e.onHandshakeComplete;if(typeof g!=="function")g=noop;let f;this._onHandshakeComplete=(...e)=>{this._debug&&this._debug("Handshake completed");if(f===undefined)f=true;else f=false;const t=this._queue;if(t){this._queue=undefined;this._debug&&this._debug(`Draining outbound queue (${t.length}) ...`);for(let e=0;e{this.start=undefined;if(I)this._onWrite(I);this._onWrite(y)}}_destruct(e){this._packetRW.read.cleanup();this._packetRW.write.cleanup();this._cipher&&this._cipher.free();this._decipher&&this._decipher.free();if(typeof e!=="string"||e.length===0)e="fatal error";this.parse=()=>{throw new Error(`Instance unusable after ${e}`)};this._onWrite=()=>{throw new Error(`Instance unusable after ${e}`)};this._destruct=undefined}cleanup(){this._destruct&&this._destruct()}parse(e,t,n){while(t{s=D(s,i);if(s===false)throw new Error("Error while converting handshake signature");const u=s.length;C=this._packetRW.write.allocStart;I=this._packetRW.write.alloc(1+4+o+4+14+4+9+1+4+h+4+l+4+4+h+4+u);I[C]=f.USERAUTH_REQUEST;L(I,o,++C);I.utf8Write(e,C+=4,o);L(I,14,C+=o);I.utf8Write("ssh-connection",C+=4,14);L(I,9,C+=14);I.utf8Write("publickey",C+=4,9);I[C+=9]=1;L(I,h,++C);I.utf8Write(n,C+=4,h);L(I,l,C+=h);I.set(t,C+=4);L(I,4+h+4+u,C+=l);L(I,h,C+=4);I.utf8Write(n,C+=4,h);L(I,u,C+=h);I.set(s,C+=4);this._authsQueue.push("publickey");this._debug&&this._debug("Outbound: Sending USERAUTH_REQUEST (publickey)");U(this,this._packetRW.write.finalize(I))}))}authHostbased(e,t,n,s,i,o){if(this._server)throw new Error("Client-only method called in server mode");t=w(t);if(t instanceof Error)throw new Error("Invalid key");const h=t.type;t=t.getPublicSSH();if(typeof i==="function"){o=i;i=undefined}if(!i)i=h;const l=Buffer.byteLength(e);const u=Buffer.byteLength(i);const g=t.length;const E=this._kex.sessionID;const I=E.length;const C=Buffer.byteLength(n);const B=Buffer.byteLength(s);const Q=Buffer.allocUnsafe(4+I+1+4+l+4+14+4+9+4+u+4+g+4+C+4+B);let p=0;L(Q,I,p);Q.set(E,p+=4);Q[p+=I]=f.USERAUTH_REQUEST;L(Q,l,++p);Q.utf8Write(e,p+=4,l);L(Q,14,p+=l);Q.utf8Write("ssh-connection",p+=4,14);L(Q,9,p+=14);Q.utf8Write("hostbased",p+=4,9);L(Q,u,p+=9);Q.utf8Write(i,p+=4,u);L(Q,g,p+=u);Q.set(t,p+=4);L(Q,C,p+=g);Q.utf8Write(n,p+=4,C);L(Q,B,p+=C);Q.utf8Write(s,p+=4,B);o(Q,(e=>{e=D(e,h);if(!e)throw new Error("Error while converting handshake signature");const t=e.length;const n=Q.length-I-4;p=this._packetRW.write.allocStart;const s=this._packetRW.write.alloc(n+4+4+u+4+t);R(Q,s,4+I,Q.length,p);L(s,4+u+4+t,p+=n);L(s,u,p+=4);s.utf8Write(i,p+=4,u);L(s,t,p+=u);s.set(e,p+=4);this._authsQueue.push("hostbased");this._debug&&this._debug("Outbound: Sending USERAUTH_REQUEST (hostbased)");U(this,this._packetRW.write.finalize(s))}))}authKeyboard(e){if(this._server)throw new Error("Client-only method called in server mode");const t=Buffer.byteLength(e);let n=this._packetRW.write.allocStart;const s=this._packetRW.write.alloc(1+4+t+4+14+4+20+4+4);s[n]=f.USERAUTH_REQUEST;L(s,t,++n);s.utf8Write(e,n+=4,t);L(s,14,n+=t);s.utf8Write("ssh-connection",n+=4,14);L(s,20,n+=14);s.utf8Write("keyboard-interactive",n+=4,20);L(s,0,n+=20);L(s,0,n+=4);this._authsQueue.push("keyboard-interactive");this._debug&&this._debug("Outbound: Sending USERAUTH_REQUEST (keyboard-interactive)");U(this,this._packetRW.write.finalize(s))}authNone(e){if(this._server)throw new Error("Client-only method called in server mode");const t=Buffer.byteLength(e);let n=this._packetRW.write.allocStart;const s=this._packetRW.write.alloc(1+4+t+4+14+4+4);s[n]=f.USERAUTH_REQUEST;L(s,t,++n);s.utf8Write(e,n+=4,t);L(s,14,n+=t);s.utf8Write("ssh-connection",n+=4,14);L(s,4,n+=14);s.utf8Write("none",n+=4,4);this._authsQueue.push("none");this._debug&&this._debug("Outbound: Sending USERAUTH_REQUEST (none)");U(this,this._packetRW.write.finalize(s))}authInfoRes(e){if(this._server)throw new Error("Client-only method called in server mode");let t=0;let n;if(e){n=new Array(e.length);for(let s=0;su&&g-u>4&&i[u]===83&&i[u+1]===83&&i[u+2]===72&&i[u+3]===45){const e=i.latin1Slice(l,g+1);const f=u===l?e:e.slice(u-l);const E=z.exec(f);if(!E)throw new Error("Invalid identification string");const I={greeting:u===l?"":e.slice(0,u-l),identRaw:f,versions:{protocol:E[1],software:E[2]},comments:E[3]};this._remoteIdentRaw=Buffer.from(f);this._debug&&this._debug(`Remote ident: ${s(f)}`);this._compatFlags=getCompatFlags(I);this._buffer=undefined;this._decipher=new h(0,y.bind(this,{firstPacket:true}));this._parse=parsePacket;this._onHeader(I);if(!this._destruct){return n}p(this);return t+1-o}if(this._server)throw new Error("Greetings from clients not permitted");if(++I>V)throw new Error("Max greeting lines exceeded");f=false;u=t+1;E=0}else if(f){throw new Error("Invalid header: expected newline")}else if(++E>=W){throw new Error("Header line too long")}g=t}if(!this._buffer)this._buffer=_(i,l);return t-o}function parsePacket(e,t,n){return this._decipher.decrypt(e,t,n)}function onPayload(e){this._onPacket();if(e.length===0){this._debug&&this._debug("Inbound: Skipping empty packet payload");return}e=this._packetRW.read.read(e);const t=e[0];if(t===f.USERAUTH_SUCCESS&&!this._server&&!this._authenticated){this._authenticated=true;if(this._kex.negotiated.cs.compress==="zlib@openssh.com")this._packetRW.write=new P(this);if(this._kex.negotiated.sc.compress==="zlib@openssh.com")this._packetRW.read=new O}const n=b[t];if(n===undefined){this._debug&&this._debug(`Inbound: Unsupported message type: ${t}`);return}return n(this,e)}function getCompatFlags(e){const t=e.versions.software;let n=0;for(const e of l){if(typeof e[0]==="string"){if(t===e[0])n|=e[1]}else if(e[0].test(t)){n|=e[1]}}return n}function modesToBytes(e){const t=Object.keys(e);const n=Buffer.allocUnsafe(5*t.length+1);let s=0;for(let i=0;i>>24;n[s++]=l>>>16;n[s++]=l>>>8;n[s++]=l}}n[s++]=I.TTY_OP_END;if(s{"use strict";const s=n(2361);const i=n(7147);const{constants:o}=i;const{Readable:h,Writable:l}=n(2781);const{inherits:u,isDate:g}=n(3837);const f=Buffer[Symbol.species];const{bufferCopy:E,bufferSlice:I,makeBufferParser:C,writeUInt32BE:B}=n(9475);const Q={SIZE:1,UIDGID:2,PERMISSIONS:4,ACMODTIME:8,EXTENDED:2147483648};const p=Buffer.alloc(28);const y={OK:0,EOF:1,NO_SUCH_FILE:2,PERMISSION_DENIED:3,FAILURE:4,BAD_MESSAGE:5,NO_CONNECTION:6,CONNECTION_LOST:7,OP_UNSUPPORTED:8};const w=new Map(Object.values(y).map((e=>[e,1])));const b={[y.OK]:"No error",[y.EOF]:"End of file",[y.NO_SUCH_FILE]:"No such file or directory",[y.PERMISSION_DENIED]:"Permission denied",[y.FAILURE]:"Failure",[y.BAD_MESSAGE]:"Bad message",[y.NO_CONNECTION]:"No connection",[y.CONNECTION_LOST]:"Connection lost",[y.OP_UNSUPPORTED]:"Operation unsupported"};const R={INIT:1,OPEN:3,CLOSE:4,READ:5,WRITE:6,LSTAT:7,FSTAT:8,SETSTAT:9,FSETSTAT:10,OPENDIR:11,READDIR:12,REMOVE:13,MKDIR:14,RMDIR:15,REALPATH:16,STAT:17,RENAME:18,READLINK:19,SYMLINK:20,EXTENDED:200};const k={VERSION:2,STATUS:101,HANDLE:102,DATA:103,NAME:104,ATTRS:105,EXTENDED:201};const _={READ:1,WRITE:2,APPEND:4,CREAT:8,TRUNC:16,EXCL:32};const D=2*1024;const U=2**32-1;const L=Buffer.from([0,0,0,5,R.INIT,0,0,0,3]);const v=Buffer.from([0,0,0,5,k.VERSION,0,0,0,3]);const T=/^SSH-2.0-(?:OpenSSH|dropbear)/;const O=256*1024;const P=C();const x={readable:false,writable:false,push:e=>{},once:()=>{},on:()=>{},emit:()=>{},end:()=>{}};function noop(){}class SFTP extends s{constructor(e,t,n){super();if(typeof n!=="object"||!n)n={};const s=e._protocol._remoteIdentRaw;this.server=!!n.server;this._debug=typeof n.debug==="function"?n.debug:undefined;this._isOpenSSH=s&&T.test(s);this._version=-1;this._extensions={};this._biOpt=n.biOpt;this._pktLenBytes=0;this._pktLen=0;this._pktPos=0;this._pktType=0;this._pktData=undefined;this._writeReqid=-1;this._requests={};this._maxInPktLen=O;this._maxOutPktLen=34e3;this._maxReadLen=(this._isOpenSSH?O:34e3)-D;this._maxWriteLen=(this._isOpenSSH?O:34e3)-D;this.maxOpenHandles=undefined;this._client=e;this._protocol=e._protocol;this._callbacks=[];this._hasX11=false;this._exit={code:undefined,signal:undefined,dump:undefined,desc:undefined};this._waitWindow=false;this._chunkcb=undefined;this._buffer=[];this.type=t.type;this.subtype=undefined;this.incoming=t.incoming;this.outgoing=t.outgoing;this.stderr=x;this.readable=true}push(e){if(e===null){cleanupRequests(this);if(!this.readable)return;this.readable=false;this.emit("end");return}let t=0;while(tthis._maxInPktLen){const e=this._maxInPktLen;return doFatalSFTPError(this,`Packet length ${this._pktLen} exceeds max length of ${e}`)}if(t>=e.length)return}if(this._pktPos=t.length)throw new Error("offset is out of bounds");if(n+s>t.length)throw new Error("length extends beyond buffer");if(i===null)throw new Error("null position currently unsupported");read_(this,e,t,n,s,i,o)}readData(e,t,n,s,i,o){this.read(e,t,n,s,i,o)}write(e,t,n,s,i,o){if(this.server)throw new Error("Client-only method called in server mode");if(!Buffer.isBuffer(e))throw new Error("handle is not a Buffer");if(!Buffer.isBuffer(t))throw new Error("buffer is not a Buffer");if(n>t.length)throw new Error("offset is out of bounds");if(n+s>t.length)throw new Error("length extends beyond buffer");if(i===null)throw new Error("null position currently unsupported");if(!s){o&&process.nextTick(o,undefined,0);return}const h=this._maxWriteLen;const l=Math.max(s-h,0);const u=i;if(l)s=h;const g=e.length;let f=9;const I=Buffer.allocUnsafe(4+1+4+4+g+8+4+s);B(I,I.length-4,0);I[4]=R.WRITE;const C=this._writeReqid=this._writeReqid+1&U;B(I,C,5);B(I,g,f);I.set(e,f+=4);f+=g;for(let e=7;e>=0;--e){I[f+e]=i&255;i/=256}B(I,s,f+=8);E(t,I,n,n+s,f+=4);this._requests[C]={cb:i=>{if(i){if(typeof o==="function")o(i)}else if(l){this.write(e,t,n+s,l,u+s,o)}else if(typeof o==="function"){o(undefined,n+s)}}};const Q=sendOrBuffer(this,I);if(this._debug){const e=Q?"Sent":"Buffered";this._debug(`SFTP: Outbound: ${e} WRITE (id:${C})`)}}writeData(e,t,n,s,i,o){this.write(e,t,n,s,i,o)}fastGet(e,t,n,s){if(this.server)throw new Error("Client-only method called in server mode");fastXfer(this,i,e,t,n,s)}fastPut(e,t,n,s){if(this.server)throw new Error("Client-only method called in server mode");fastXfer(i,this,e,t,n,s)}readFile(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");let s;if(typeof n==="function"){s=n}else if(typeof t==="function"){s=t;t=undefined}if(typeof t==="string")t={encoding:t,flag:"r"};else if(!t)t={encoding:null,flag:"r"};else if(typeof t!=="object")throw new TypeError("Bad arguments");const i=t.encoding;if(i&&!Buffer.isEncoding(i))throw new Error(`Unknown encoding: ${i}`);let o;let h;let l;let u=0;let g;let f=0;const E=t.flag||"r";const read=()=>{if(o===0){h=Buffer.allocUnsafe(8192);this.read(g,h,0,8192,f,afterRead)}else{this.read(g,h,u,o-u,f,afterRead)}};const afterRead=(e,t)=>{let n;if(e){n=e.code===y.EOF;if(!n){return this.close(g,(()=>s&&s(e)))}}else{n=false}if(n||o===0&&t===0)return close();f+=t;u+=t;if(o!==0){if(u===o)close();else read()}else{l.push(I(h,0,t));read()}};afterRead._wantEOFError=true;const close=()=>{this.close(g,(e=>{if(o===0){h=Buffer.concat(l,u)}else if(u{if(t)return s&&s(t);g=n;const tryStat=(t,n)=>{if(t){this.stat(e,((e,n)=>{if(e){return this.close(g,(()=>{s&&s(t)}))}tryStat(null,n)}));return}o=n.size||0;if(o===0){l=[];return read()}h=Buffer.allocUnsafe(o);read()};this.fstat(g,tryStat)}))}writeFile(e,t,n,s){if(this.server)throw new Error("Client-only method called in server mode");let i;if(typeof s==="function"){i=s}else if(typeof n==="function"){i=n;n=undefined}if(typeof n==="string")n={encoding:n,mode:438,flag:"w"};else if(!n)n={encoding:"utf8",mode:438,flag:"w"};else if(typeof n!=="object")throw new TypeError("Bad arguments");if(n.encoding&&!Buffer.isEncoding(n.encoding))throw new Error(`Unknown encoding: ${n.encoding}`);const o=n.flag||"w";this.open(e,o,n.mode,((s,h)=>{if(s){i&&i(s)}else{const s=Buffer.isBuffer(t)?t:Buffer.from(""+t,n.encoding||"utf8");const l=/a/.test(o)?null:0;if(l===null){const tryStat=(t,n)=>{if(t){this.stat(e,((e,n)=>{if(e){return this.close(h,(()=>{i&&i(t)}))}tryStat(null,n)}));return}writeAll(this,h,s,0,s.length,n.size,i)};this.fstat(h,tryStat);return}writeAll(this,h,s,0,s.length,l,i)}}))}appendFile(e,t,n,s){if(this.server)throw new Error("Client-only method called in server mode");let i;if(typeof s==="function"){i=s}else if(typeof n==="function"){i=n;n=undefined}if(typeof n==="string")n={encoding:n,mode:438,flag:"a"};else if(!n)n={encoding:"utf8",mode:438,flag:"a"};else if(typeof n!=="object")throw new TypeError("Bad arguments");if(!n.flag)n=Object.assign({flag:"a"},n);this.writeFile(e,t,n,i)}exists(e,t){if(this.server)throw new Error("Client-only method called in server mode");this.stat(e,(e=>{t&&t(e?false:true)}))}unlink(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.REMOVE;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:t};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} REMOVE`)}rename(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");const s=Buffer.byteLength(e);const i=Buffer.byteLength(t);let o=9;const h=Buffer.allocUnsafe(4+1+4+4+s+4+i);B(h,h.length-4,0);h[4]=R.RENAME;const l=this._writeReqid=this._writeReqid+1&U;B(h,l,5);B(h,s,o);h.utf8Write(e,o+=4,s);B(h,i,o+=s);h.utf8Write(t,o+=4,i);this._requests[l]={cb:n};const u=sendOrBuffer(this,h);this._debug&&this._debug(`SFTP: Outbound: ${u?"Buffered":"Sending"} RENAME`)}mkdir(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");let s=0;let i=0;if(typeof t==="function"){n=t;t=undefined}if(typeof t==="object"&&t!==null){t=attrsToBytes(t);s=t.flags;i=t.nb}const o=Buffer.byteLength(e);let h=9;const l=Buffer.allocUnsafe(4+1+4+4+o+4+i);B(l,l.length-4,0);l[4]=R.MKDIR;const u=this._writeReqid=this._writeReqid+1&U;B(l,u,5);B(l,o,h);l.utf8Write(e,h+=4,o);B(l,s,h+=o);if(i){h+=4;if(i===p.length)l.set(p,h);else E(p,l,0,i,h);h+=i}this._requests[u]={cb:n};const g=sendOrBuffer(this,l);this._debug&&this._debug(`SFTP: Outbound: ${g?"Buffered":"Sending"} MKDIR`)}rmdir(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.RMDIR;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:t};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} RMDIR`)}readdir(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");if(typeof t==="function"){n=t;t={}}if(typeof t!=="object"||t===null)t={};const s=t&&t.full?false:true;if(!Buffer.isBuffer(e)&&typeof e!=="string")throw new Error("missing directory handle or path");if(typeof e==="string"){const s=[];let i=0;const reread=(e,o)=>{if(e)return n(e);this.readdir(o,t,((e,t)=>{const h=e&&e.code===y.EOF;if(e&&!h)return this.close(o,(()=>n(e)));if(h){return this.close(o,(e=>{if(e)return n(e);n(undefined,s)}))}for(let e=0;e{if(typeof n!=="function")return;if(e)return n(e);for(let e=t.length-1;e>=0;--e){if(t[e].filename==="."||t[e].filename==="..")t.splice(e,1)}n(undefined,t)}:n};const u=sendOrBuffer(this,h);this._debug&&this._debug(`SFTP: Outbound: ${u?"Buffered":"Sending"} READDIR`)}fstat(e,t){if(this.server)throw new Error("Client-only method called in server mode");if(!Buffer.isBuffer(e))throw new Error("handle is not a Buffer");const n=e.length;let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.FSTAT;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.set(e,s+=4);this._requests[o]={cb:t};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} FSTAT`)}stat(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.STAT;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:t};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} STAT`)}lstat(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.LSTAT;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:t};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} LSTAT`)}opendir(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.OPENDIR;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:t};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} OPENDIR`)}setstat(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");let s=0;let i=0;if(typeof t==="object"&&t!==null){t=attrsToBytes(t);s=t.flags;i=t.nb}else if(typeof t==="function"){n=t}const o=Buffer.byteLength(e);let h=9;const l=Buffer.allocUnsafe(4+1+4+4+o+4+i);B(l,l.length-4,0);l[4]=R.SETSTAT;const u=this._writeReqid=this._writeReqid+1&U;B(l,u,5);B(l,o,h);l.utf8Write(e,h+=4,o);B(l,s,h+=o);if(i){h+=4;if(i===p.length)l.set(p,h);else E(p,l,0,i,h);h+=i}this._requests[u]={cb:n};const g=sendOrBuffer(this,l);this._debug&&this._debug(`SFTP: Outbound: ${g?"Buffered":"Sending"} SETSTAT`)}fsetstat(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");if(!Buffer.isBuffer(e))throw new Error("handle is not a Buffer");let s=0;let i=0;if(typeof t==="object"&&t!==null){t=attrsToBytes(t);s=t.flags;i=t.nb}else if(typeof t==="function"){n=t}const o=e.length;let h=9;const l=Buffer.allocUnsafe(4+1+4+4+o+4+i);B(l,l.length-4,0);l[4]=R.FSETSTAT;const u=this._writeReqid=this._writeReqid+1&U;B(l,u,5);B(l,o,h);l.set(e,h+=4);B(l,s,h+=o);if(i){h+=4;if(i===p.length)l.set(p,h);else E(p,l,0,i,h);h+=i}this._requests[u]={cb:n};const g=sendOrBuffer(this,l);this._debug&&this._debug(`SFTP: Outbound: ${g?"Buffered":"Sending"} FSETSTAT`)}futimes(e,t,n,s){return this.fsetstat(e,{atime:toUnixTimestamp(t),mtime:toUnixTimestamp(n)},s)}utimes(e,t,n,s){return this.setstat(e,{atime:toUnixTimestamp(t),mtime:toUnixTimestamp(n)},s)}fchown(e,t,n,s){return this.fsetstat(e,{uid:t,gid:n},s)}chown(e,t,n,s){return this.setstat(e,{uid:t,gid:n},s)}fchmod(e,t,n){return this.fsetstat(e,{mode:t},n)}chmod(e,t,n){return this.setstat(e,{mode:t},n)}readlink(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.READLINK;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:(e,n)=>{if(typeof t!=="function")return;if(e)return t(e);if(!n||!n.length)return t(new Error("Response missing link info"));t(undefined,n[0].filename)}};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} READLINK`)}symlink(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");const s=Buffer.byteLength(t);const i=Buffer.byteLength(e);let o=9;const h=Buffer.allocUnsafe(4+1+4+4+s+4+i);B(h,h.length-4,0);h[4]=R.SYMLINK;const l=this._writeReqid=this._writeReqid+1&U;B(h,l,5);if(this._isOpenSSH){B(h,i,o);h.utf8Write(e,o+=4,i);B(h,s,o+=i);h.utf8Write(t,o+=4,s)}else{B(h,s,o);h.utf8Write(t,o+=4,s);B(h,i,o+=s);h.utf8Write(e,o+=4,i)}this._requests[l]={cb:n};const u=sendOrBuffer(this,h);this._debug&&this._debug(`SFTP: Outbound: ${u?"Buffered":"Sending"} SYMLINK`)}realpath(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.REALPATH;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:(e,n)=>{if(typeof t!=="function")return;if(e)return t(e);if(!n||!n.length)return t(new Error("Response missing path info"));t(undefined,n[0].filename)}};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} REALPATH`)}ext_openssh_rename(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");const s=this._extensions["posix-rename@openssh.com"];if(!s||s!=="1")throw new Error("Server does not support this extended request");const i=Buffer.byteLength(e);const o=Buffer.byteLength(t);let h=9;const l=Buffer.allocUnsafe(4+1+4+4+24+4+i+4+o);B(l,l.length-4,0);l[4]=R.EXTENDED;const u=this._writeReqid=this._writeReqid+1&U;B(l,u,5);B(l,24,h);l.utf8Write("posix-rename@openssh.com",h+=4,24);B(l,i,h+=24);l.utf8Write(e,h+=4,i);B(l,o,h+=i);l.utf8Write(t,h+=4,o);this._requests[u]={cb:n};const g=sendOrBuffer(this,l);if(this._debug){const e=g?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} posix-rename@openssh.com`)}}ext_openssh_statvfs(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=this._extensions["statvfs@openssh.com"];if(!n||n!=="2")throw new Error("Server does not support this extended request");const s=Buffer.byteLength(e);let i=9;const o=Buffer.allocUnsafe(4+1+4+4+19+4+s);B(o,o.length-4,0);o[4]=R.EXTENDED;const h=this._writeReqid=this._writeReqid+1&U;B(o,h,5);B(o,19,i);o.utf8Write("statvfs@openssh.com",i+=4,19);B(o,s,i+=19);o.utf8Write(e,i+=4,s);this._requests[h]={extended:"statvfs@openssh.com",cb:t};const l=sendOrBuffer(this,o);if(this._debug){const e=l?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} statvfs@openssh.com`)}}ext_openssh_fstatvfs(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=this._extensions["fstatvfs@openssh.com"];if(!n||n!=="2")throw new Error("Server does not support this extended request");if(!Buffer.isBuffer(e))throw new Error("handle is not a Buffer");const s=e.length;let i=9;const o=Buffer.allocUnsafe(4+1+4+4+20+4+s);B(o,o.length-4,0);o[4]=R.EXTENDED;const h=this._writeReqid=this._writeReqid+1&U;B(o,h,5);B(o,20,i);o.utf8Write("fstatvfs@openssh.com",i+=4,20);B(o,s,i+=20);o.set(e,i+=4);this._requests[h]={extended:"fstatvfs@openssh.com",cb:t};const l=sendOrBuffer(this,o);if(this._debug){const e=l?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} fstatvfs@openssh.com`)}}ext_openssh_hardlink(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");const s=this._extensions["hardlink@openssh.com"];if(s!=="1")throw new Error("Server does not support this extended request");const i=Buffer.byteLength(e);const o=Buffer.byteLength(t);let h=9;const l=Buffer.allocUnsafe(4+1+4+4+20+4+i+4+o);B(l,l.length-4,0);l[4]=R.EXTENDED;const u=this._writeReqid=this._writeReqid+1&U;B(l,u,5);B(l,20,h);l.utf8Write("hardlink@openssh.com",h+=4,20);B(l,i,h+=20);l.utf8Write(e,h+=4,i);B(l,o,h+=i);l.utf8Write(t,h+=4,o);this._requests[u]={cb:n};const g=sendOrBuffer(this,l);if(this._debug){const e=g?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} hardlink@openssh.com`)}}ext_openssh_fsync(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=this._extensions["fsync@openssh.com"];if(n!=="1")throw new Error("Server does not support this extended request");if(!Buffer.isBuffer(e))throw new Error("handle is not a Buffer");const s=e.length;let i=9;const o=Buffer.allocUnsafe(4+1+4+4+17+4+s);B(o,o.length-4,0);o[4]=R.EXTENDED;const h=this._writeReqid=this._writeReqid+1&U;B(o,h,5);B(o,17,i);o.utf8Write("fsync@openssh.com",i+=4,17);B(o,s,i+=17);o.set(e,i+=4);this._requests[h]={cb:t};const l=sendOrBuffer(this,o);this._debug&&this._debug(`SFTP: Outbound: ${l?"Buffered":"Sending"} fsync@openssh.com`)}ext_openssh_lsetstat(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");const s=this._extensions["lsetstat@openssh.com"];if(s!=="1")throw new Error("Server does not support this extended request");let i=0;let o=0;if(typeof t==="object"&&t!==null){t=attrsToBytes(t);i=t.flags;o=t.nb}else if(typeof t==="function"){n=t}const h=Buffer.byteLength(e);let l=9;const u=Buffer.allocUnsafe(4+1+4+4+20+4+h+4+o);B(u,u.length-4,0);u[4]=R.EXTENDED;const g=this._writeReqid=this._writeReqid+1&U;B(u,g,5);B(u,20,l);u.utf8Write("lsetstat@openssh.com",l+=4,20);B(u,h,l+=20);u.utf8Write(e,l+=4,h);B(u,i,l+=h);if(o){l+=4;if(o===p.length)u.set(p,l);else E(p,u,0,o,l);l+=o}this._requests[g]={cb:n};const f=sendOrBuffer(this,u);if(this._debug){const e=f?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} lsetstat@openssh.com`)}}ext_openssh_expandPath(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=this._extensions["expand-path@openssh.com"];if(n!=="1")throw new Error("Server does not support this extended request");const s=Buffer.byteLength(e);let i=9;const o=Buffer.allocUnsafe(4+1+4+4+23+4+s);B(o,o.length-4,0);o[4]=R.EXTENDED;const h=this._writeReqid=this._writeReqid+1&U;B(o,h,5);B(o,23,i);o.utf8Write("expand-path@openssh.com",i+=4,23);B(o,s,i+=20);o.utf8Write(e,i+=4,s);this._requests[h]={cb:(e,n)=>{if(typeof t!=="function")return;if(e)return t(e);if(!n||!n.length)return t(new Error("Response missing expanded path"));t(undefined,n[0].filename)}};const l=sendOrBuffer(this,o);if(this._debug){const e=l?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} expand-path@openssh.com`)}}ext_copy_data(e,t,n,s,i,o){if(this.server)throw new Error("Client-only method called in server mode");const h=this._extensions["copy-data"];if(h!=="1")throw new Error("Server does not support this extended request");if(!Buffer.isBuffer(e))throw new Error("Source handle is not a Buffer");if(!Buffer.isBuffer(s))throw new Error("Destination handle is not a Buffer");let l=0;const u=Buffer.allocUnsafe(4+1+4+4+9+4+e.length+8+8+4+s.length+8);B(u,u.length-4,l);l+=4;u[l]=R.EXTENDED;++l;const g=this._writeReqid=this._writeReqid+1&U;B(u,g,l);l+=4;B(u,9,l);l+=4;u.utf8Write("copy-data",l,9);l+=9;B(u,e.length,l);l+=4;u.set(e,l);l+=e.length;for(let e=7;e>=0;--e){u[l+e]=t&255;t/=256}l+=8;for(let e=7;e>=0;--e){u[l+e]=n&255;n/=256}l+=8;B(u,s.length,l);l+=4;u.set(s,l);l+=s.length;for(let e=7;e>=0;--e){u[l+e]=i&255;i/=256}this._requests[g]={cb:o};const f=sendOrBuffer(this,u);if(this._debug){const e=f?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} copy-data`)}}ext_home_dir(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=this._extensions["home-directory"];if(n!=="1")throw new Error("Server does not support this extended request");if(typeof e!=="string")throw new TypeError("username is not a string");let s=0;const i=Buffer.byteLength(e);const o=Buffer.allocUnsafe(4+1+4+4+14+4+i);B(o,o.length-4,s);s+=4;o[s]=R.EXTENDED;++s;const h=this._writeReqid=this._writeReqid+1&U;B(o,h,s);s+=4;B(o,14,s);s+=4;o.utf8Write("home-directory",s,14);s+=14;B(o,i,s);s+=4;o.utf8Write(e,s,i);s+=i;this._requests[h]={cb:(e,n)=>{if(typeof t!=="function")return;if(e)return t(e);if(!n||!n.length)return t(new Error("Response missing home directory"));t(undefined,n[0].filename)}};const l=sendOrBuffer(this,o);if(this._debug){const e=l?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} home-directory`)}}ext_users_groups(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");const s=this._extensions["users-groups-by-id@openssh.com"];if(s!=="1")throw new Error("Server does not support this extended request");if(!Array.isArray(e))throw new TypeError("uids is not an array");for(const t of e){if(!Number.isInteger(t)||t<0||t>2**32-1)throw new Error("uid values must all be 32-bit unsigned integers")}if(!Array.isArray(t))throw new TypeError("gids is not an array");for(const e of t){if(!Number.isInteger(e)||e<0||e>2**32-1)throw new Error("gid values must all be 32-bit unsigned integers")}let i=0;const o=Buffer.allocUnsafe(4+1+4+4+30+4+4*e.length+4+4*t.length);B(o,o.length-4,i);i+=4;o[i]=R.EXTENDED;++i;const h=this._writeReqid=this._writeReqid+1&U;B(o,h,i);i+=4;B(o,30,i);i+=4;o.utf8Write("users-groups-by-id@openssh.com",i,30);i+=30;B(o,4*e.length,i);i+=4;for(const t of e){B(o,t,i);i+=4}B(o,4*t.length,i);i+=4;for(const e of t){B(o,e,i);i+=4}this._requests[h]={extended:"users-groups-by-id@openssh.com",cb:n};const l=sendOrBuffer(this,o);if(this._debug){const e=l?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} users-groups-by-id@openssh.com`)}}handle(e,t){if(!this.server)throw new Error("Server-only method called in client mode");if(!Buffer.isBuffer(t))throw new Error("handle is not a Buffer");const n=t.length;if(n>256)throw new Error("handle too large (> 256 bytes)");let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=k.HANDLE;B(i,e,5);B(i,n,s);if(n)i.set(t,s+=4);const o=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${o?"Buffered":"Sending"} HANDLE`)}status(e,t,n){if(!this.server)throw new Error("Server-only method called in client mode");if(!w.has(t))throw new Error(`Bad status code: ${t}`);n||(n="");const s=Buffer.byteLength(n);let i=9;const o=Buffer.allocUnsafe(4+1+4+4+4+s+4);B(o,o.length-4,0);o[4]=k.STATUS;B(o,e,5);B(o,t,i);B(o,s,i+=4);i+=4;if(s){o.utf8Write(n,i,s);i+=s}B(o,0,i);const h=sendOrBuffer(this,o);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} STATUS`)}data(e,t,n){if(!this.server)throw new Error("Server-only method called in client mode");const s=Buffer.isBuffer(t);if(!s&&typeof t!=="string")throw new Error("data is not a Buffer or string");let i;if(!s&&!n){n=undefined;i=true}const o=s?t.length:Buffer.byteLength(t,n);let h=9;const l=Buffer.allocUnsafe(4+1+4+4+o);B(l,l.length-4,0);l[4]=k.DATA;B(l,e,5);B(l,o,h);if(o){if(s)l.set(t,h+=4);else if(i)l.utf8Write(t,h+=4,o);else l.write(t,h+=4,o,n)}const u=sendOrBuffer(this,l);this._debug&&this._debug(`SFTP: Outbound: ${u?"Buffered":"Sending"} DATA`)}name(e,t){if(!this.server)throw new Error("Server-only method called in client mode");if(!Array.isArray(t)){if(typeof t!=="object"||t===null)throw new Error("names is not an object or array");t=[t]}const n=t.length;let s=0;let i;const o=[];for(let e=0;e=0;--e){Q[E+e]=C&255;C/=256}B(Q,i,E+=8);if(typeof h!=="function")h=noop;const w=l||{nb:0,position:o,off:s,origOff:s,len:undefined,overflow:undefined,cb:(s,i,o)=>{const l=w.len;const u=w.overflow;if(s){if(h._wantEOFError||s.code!==y.EOF)return h(s)}else if(o>l){return h(new Error("Received more data than requested"))}else if(o===l&&u){w.nb+=o;w.position+=o;w.off+=o;read_(e,t,n,w.off,u,w.position,h,w);return}o=o||0;if(w.origOff===0&&n.length===w.nb)i=n;else i=I(n,w.origOff,w.origOff+w.nb+o);h(undefined,w.nb+o,i,w.position)},buffer:undefined};w.len=i;w.overflow=g;w.buffer=I(n,s,s+i);e._requests[p]=w;const b=sendOrBuffer(e,Q);e._debug&&e._debug(`SFTP: Outbound: ${b?"Buffered":"Sending"} READ`)}function fastXfer(e,t,n,s,o,h){let l=64;let u=32768;let g;let f;let E;if(typeof o==="function"){h=o}else if(typeof o==="object"&&o!==null){if(typeof o.concurrency==="number"&&o.concurrency>0&&!isNaN(o.concurrency)){l=o.concurrency}if(typeof o.chunkSize==="number"&&o.chunkSize>0&&!isNaN(o.chunkSize)){u=o.chunkSize}if(typeof o.fileSize==="number"&&o.fileSize>0&&!isNaN(o.fileSize)){E=o.fileSize}if(typeof o.step==="function")g=o.step;if(typeof o.mode==="string"||typeof o.mode==="number")f=modeNum(o.mode)}let I;let C=0;let B=0;let Q=false;let p;let y;let w;let b=u*l;function onerror(n){if(Q)return;Q=true;let s=0;let o;if(p||y){o=()=>{if(--s===0)h(n)};if(p&&(e===i||e.outgoing.state==="open"))++s;if(y&&(t===i||t.outgoing.state==="open"))++s;if(p&&(e===i||e.outgoing.state==="open"))e.close(p,o);if(y&&(t===i||t.outgoing.state==="open"))t.close(y,o)}else{h(n)}}e.open(n,"r",((o,Q)=>{if(o)return onerror(o);p=Q;if(E===undefined)e.fstat(p,tryStat);else tryStat(null,{size:E});function tryStat(o,E){if(o){if(e!==i){e.stat(n,((e,t)=>{if(e)return onerror(o);tryStat(null,t)}));return}return onerror(o)}I=E.size;t.open(s,"w",((n,i)=>{if(n)return onerror(n);y=i;if(I<=0)return onerror();while(b>I){if(l===1){b=I;break}b-=u;--l}w=tryCreateBuffer(b);if(w instanceof Error)return onerror(w);if(f!==undefined){t.fchmod(y,f,(function tryAgain(e){if(e){t.chmod(s,f,(e=>tryAgain()));return}startReads()}))}else{startReads()}function onread(n,s,i,o,l,f){if(n)return onerror(n);l=l||0;t.write(y,w,l,s,o,writeCb);function writeCb(n){if(n)return onerror(n);B+=s;g&&g(B,s,I);if(s{y=undefined;if(t)return onerror(t);e.close(p,(e=>{p=undefined;if(e)return onerror(e);h()}))}));return}if(C>=I)return;const i=C+u>I?I-C:u;singleRead(l,C,i);C+=i}}function makeCb(e,t,n){return(s,i,o)=>{onread(s,i,o,t,e,n)}}function singleRead(t,n,s){e.read(p,w,t,s,n,makeCb(t,n,s))}function startReads(){let e=0;let t=0;while(CI?I-C:u;singleRead(t,C,n);t+=n;C+=n;++e}}}))}}))}function writeAll(e,t,n,s,i,o,h){const l=typeof h==="function"?h:undefined;e.write(t,n,s,i,o,((h,u)=>{if(h){return e.close(t,(()=>{l&&l(h)}))}if(u===i){e.close(t,l)}else{s+=u;i-=u;o+=u;writeAll(e,t,n,s,i,o,l)}}))}class Stats{constructor(e){this.mode=e&&e.mode;this.uid=e&&e.uid;this.gid=e&&e.gid;this.size=e&&e.size;this.atime=e&&e.atime;this.mtime=e&&e.mtime;this.extended=e&&e.extended}isDirectory(){return(this.mode&o.S_IFMT)===o.S_IFDIR}isFile(){return(this.mode&o.S_IFMT)===o.S_IFREG}isBlockDevice(){return(this.mode&o.S_IFMT)===o.S_IFBLK}isCharacterDevice(){return(this.mode&o.S_IFMT)===o.S_IFCHR}isSymbolicLink(){return(this.mode&o.S_IFMT)===o.S_IFLNK}isFIFO(){return(this.mode&o.S_IFMT)===o.S_IFIFO}isSocket(){return(this.mode&o.S_IFMT)===o.S_IFSOCK}}function attrsToBytes(e){let t=0;let n=0;if(typeof e==="object"&&e!==null){if(typeof e.size==="number"){t|=Q.SIZE;const s=e.size;p[n++]=s/72057594037927940;p[n++]=s/281474976710656;p[n++]=s/1099511627776;p[n++]=s/4294967296;p[n++]=s/16777216;p[n++]=s/65536;p[n++]=s/256;p[n++]=s}if(typeof e.uid==="number"&&typeof e.gid==="number"){t|=Q.UIDGID;const s=e.uid;const i=e.gid;p[n++]=s>>>24;p[n++]=s>>>16;p[n++]=s>>>8;p[n++]=s;p[n++]=i>>>24;p[n++]=i>>>16;p[n++]=i>>>8;p[n++]=i}if(typeof e.mode==="number"||typeof e.mode==="string"){const s=modeNum(e.mode);t|=Q.PERMISSIONS;p[n++]=s>>>24;p[n++]=s>>>16;p[n++]=s>>>8;p[n++]=s}if((typeof e.atime==="number"||g(e.atime))&&(typeof e.mtime==="number"||g(e.mtime))){const s=toUnixTimestamp(e.atime);const i=toUnixTimestamp(e.mtime);t|=Q.ACMODTIME;p[n++]=s>>>24;p[n++]=s>>>16;p[n++]=s>>>8;p[n++]=s;p[n++]=i>>>24;p[n++]=i>>>16;p[n++]=i>>>8;p[n++]=i}}return{flags:t,nb:n}}function toUnixTimestamp(e){if(typeof e==="number"&&e===e)return e;if(g(e))return parseInt(e.getTime()/1e3,10);throw new Error(`Cannot parse time: ${e}`)}function modeNum(e){if(typeof e==="number"&&e===e)return e;if(typeof e==="string")return modeNum(parseInt(e,8));throw new Error(`Cannot parse mode: ${e}`)}const Y={r:_.READ,"r+":_.READ|_.WRITE,w:_.TRUNC|_.CREAT|_.WRITE,wx:_.TRUNC|_.CREAT|_.WRITE|_.EXCL,xw:_.TRUNC|_.CREAT|_.WRITE|_.EXCL,"w+":_.TRUNC|_.CREAT|_.READ|_.WRITE,"wx+":_.TRUNC|_.CREAT|_.READ|_.WRITE|_.EXCL,"xw+":_.TRUNC|_.CREAT|_.READ|_.WRITE|_.EXCL,a:_.APPEND|_.CREAT|_.WRITE,ax:_.APPEND|_.CREAT|_.WRITE|_.EXCL,xa:_.APPEND|_.CREAT|_.WRITE|_.EXCL,"a+":_.APPEND|_.CREAT|_.READ|_.WRITE,"ax+":_.APPEND|_.CREAT|_.READ|_.WRITE|_.EXCL,"xa+":_.APPEND|_.CREAT|_.READ|_.WRITE|_.EXCL};function stringToFlags(e){const t=Y[e];return t!==undefined?t:null}const G=(()=>{const e=Object.keys(Y);return t=>{for(let n=0;n0&&n.window>0){const s=Math.min(i-o,n.window,n.packetSize);n.window-=s;if(n.window===0){e._waitWindow=true;e._chunkcb=drainBuffer}if(o===0&&s===i){e._protocol.channelData(e.outgoing.id,t)}else{e._protocol.channelData(e.outgoing.id,I(t,o,o+s))}o+=s}if(i-o>0){if(o>0)s=I(t,o,i);else s=t}return s}function drainBuffer(){this._chunkcb=undefined;const e=this._buffer;let t=0;while(t0)this._buffer=e.slice(t);return}++t}if(t>0)this._buffer=[]}function doFatalSFTPError(e,t,n){const s=new Error(t);s.level="sftp-protocol";if(!n&&e._debug)e._debug(`SFTP: Inbound: ${t}`);e.emit("error",s);e.destroy();cleanupRequests(e);return false}function cleanupRequests(e){const t=Object.keys(e._requests);if(t.length===0)return;const n=e._requests;e._requests={};const s=new Error("No response from server");for(let e=0;e{if(e._version!==-1)return doFatalSFTPError(e,"Duplicate VERSION packet");const n={};P.init(t,1);let s=P.readUInt32BE();while(P.avail()){const e=P.readString(true);const t=P.readString(true);if(t===undefined){s=undefined;break}n[e]=t}P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed VERSION packet");if(e._debug){const t=Object.keys(n);if(t.length){e._debug(`SFTP: Inbound: Received VERSION (v${s}, exts:${t})`)}else{e._debug(`SFTP: Inbound: Received VERSION (v${s})`)}}e._version=s;e._extensions=n;if(n["limits@openssh.com"]==="1"){return requestLimits(e,((t,n)=>{if(!t){if(n.maxPktLen>0)e._maxOutPktLen=n.maxPktLen;if(n.maxReadLen>0)e._maxReadLen=n.maxReadLen;if(n.maxWriteLen>0)e._maxWriteLen=n.maxWriteLen;e.maxOpenHandles=n.maxOpenHandles>0?n.maxOpenHandles:Infinity}e.emit("ready")}))}e.emit("ready")},[k.STATUS]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readUInt32BE();const i=P.readString(true);P.clear();if(e._debug){const t=JSON.stringify(i);e._debug(`SFTP: Inbound: Received STATUS (id:${n}, ${s}, ${t})`)}const o=e._requests[n];delete e._requests[n];if(o&&typeof o.cb==="function"){if(s===y.OK){o.cb();return}const e=new Error(i||b[s]||"Unknown status");e.code=s;o.cb(e)}},[k.HANDLE]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();P.clear();if(s===undefined){if(n!==undefined)delete e._requests[n];return doFatalSFTPError(e,"Malformed HANDLE packet")}e._debug&&e._debug(`SFTP: Inbound: Received HANDLE (id:${n})`);const i=e._requests[n];delete e._requests[n];if(i&&typeof i.cb==="function")i.cb(undefined,s)},[k.DATA]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();let s;if(n!==undefined){s=e._requests[n];delete e._requests[n]}if(s&&typeof s.cb==="function"){if(s.buffer){const t=P.readString(s.buffer);P.clear();if(t!==undefined){e._debug&&e._debug(`SFTP: Inbound: Received DATA (id:${n}, ${t})`);s.cb(undefined,s.buffer,t);return}}else{const t=P.readString();P.clear();if(t!==undefined){e._debug&&e._debug(`SFTP: Inbound: Received DATA (id:${n}, ${t.length})`);s.cb(undefined,t);return}}}else{const t=P.skipString();P.clear();if(t!==undefined){e._debug&&e._debug(`SFTP: Inbound: Received DATA (id:${n}, ${t})`);return}}return doFatalSFTPError(e,"Malformed DATA packet")},[k.NAME]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();let s;if(n!==undefined){s=e._requests[n];delete e._requests[n]}const i=P.readUInt32BE();if(i!==undefined){let t=[];for(let n=0;n{P.init(t,1);const n=P.readUInt32BE();let s;if(n!==undefined){s=e._requests[n];delete e._requests[n]}const i=readAttrs(e._biOpt);P.clear();if(i!==undefined){e._debug&&e._debug(`SFTP: Inbound: Received ATTRS (id:${n})`);if(s&&typeof s.cb==="function")s.cb(undefined,i);return}return doFatalSFTPError(e,"Malformed ATTRS packet")},[k.EXTENDED]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();if(n!==undefined){const t=e._requests[n];if(t){delete e._requests[n];switch(t.extended){case"statvfs@openssh.com":case"fstatvfs@openssh.com":{const s=e._biOpt;const i={f_bsize:P.readUInt64BE(s),f_frsize:P.readUInt64BE(s),f_blocks:P.readUInt64BE(s),f_bfree:P.readUInt64BE(s),f_bavail:P.readUInt64BE(s),f_files:P.readUInt64BE(s),f_ffree:P.readUInt64BE(s),f_favail:P.readUInt64BE(s),f_sid:P.readUInt64BE(s),f_flag:P.readUInt64BE(s),f_namemax:P.readUInt64BE(s)};if(i.f_namemax===undefined)break;if(e._debug){e._debug("SFTP: Inbound: Received EXTENDED_REPLY "+`(id:${n}, ${t.extended})`)}P.clear();if(typeof t.cb==="function")t.cb(undefined,i);return}case"limits@openssh.com":{const s={maxPktLen:P.readUInt64BE(),maxReadLen:P.readUInt64BE(),maxWriteLen:P.readUInt64BE(),maxOpenHandles:P.readUInt64BE()};if(s.maxOpenHandles===undefined)break;if(e._debug){e._debug("SFTP: Inbound: Received EXTENDED_REPLY "+`(id:${n}, ${t.extended})`)}P.clear();if(typeof t.cb==="function")t.cb(undefined,s);return}case"users-groups-by-id@openssh.com":{const s=P.readUInt32BE();if(s===undefined)break;const i=new Array(s);for(let e=0;e0&&h[h.length-1]===undefined){break}if(e._debug){e._debug("SFTP: Inbound: Received EXTENDED_REPLY "+`(id:${n}, ${t.extended})`)}P.clear();if(typeof t.cb==="function")t.cb(undefined,i,h);return}default:e._debug&&e._debug(`SFTP: Inbound: Received EXTENDED_REPLY (id:${n}, ???)`);P.clear();if(typeof t.cb==="function")t.cb();return}}else{e._debug&&e._debug(`SFTP: Inbound: Received EXTENDED_REPLY (id:${n}, ???)`);P.clear();return}}P.clear();return doFatalSFTPError(e,"Malformed EXTENDED_REPLY packet")}};const W={[R.INIT]:(e,t)=>{if(e._version!==-1)return doFatalSFTPError(e,"Duplicate INIT packet");const n={};P.init(t,1);let s=P.readUInt32BE();while(P.avail()){const e=P.readString(true);const t=P.readString(true);if(t===undefined){s=undefined;break}n[e]=t}P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed INIT packet");if(e._debug){const t=Object.keys(n);if(t.length){e._debug(`SFTP: Inbound: Received INIT (v${s}, exts:${t})`)}else{e._debug(`SFTP: Inbound: Received INIT (v${s})`)}}sendOrBuffer(e,v);e._version=s;e._extensions=n;e.emit("ready")},[R.OPEN]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);const i=P.readUInt32BE();const o=readAttrs(e._biOpt);P.clear();if(o===undefined)return doFatalSFTPError(e,"Malformed OPEN packet");e._debug&&e._debug(`SFTP: Inbound: Received OPEN (id:${n})`);if(!e.emit("OPEN",n,s,i,o)){e.status(n,y.OP_UNSUPPORTED)}},[R.CLOSE]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();P.clear();if(s===undefined||s.length>256)return doFatalSFTPError(e,"Malformed CLOSE packet");e._debug&&e._debug(`SFTP: Inbound: Received CLOSE (id:${n})`);if(!e.emit("CLOSE",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.READ]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();const i=P.readUInt64BE(e._biOpt);const o=P.readUInt32BE();P.clear();if(o===undefined||s.length>256)return doFatalSFTPError(e,"Malformed READ packet");e._debug&&e._debug(`SFTP: Inbound: Received READ (id:${n})`);if(!e.emit("READ",n,s,i,o)){e.status(n,y.OP_UNSUPPORTED)}},[R.WRITE]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();const i=P.readUInt64BE(e._biOpt);const o=P.readString();P.clear();if(o===undefined||s.length>256)return doFatalSFTPError(e,"Malformed WRITE packet");e._debug&&e._debug(`SFTP: Inbound: Received WRITE (id:${n})`);if(!e.emit("WRITE",n,s,i,o)){e.status(n,y.OP_UNSUPPORTED)}},[R.LSTAT]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed LSTAT packet");e._debug&&e._debug(`SFTP: Inbound: Received LSTAT (id:${n})`);if(!e.emit("LSTAT",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.FSTAT]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();P.clear();if(s===undefined||s.length>256)return doFatalSFTPError(e,"Malformed FSTAT packet");e._debug&&e._debug(`SFTP: Inbound: Received FSTAT (id:${n})`);if(!e.emit("FSTAT",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.SETSTAT]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);const i=readAttrs(e._biOpt);P.clear();if(i===undefined)return doFatalSFTPError(e,"Malformed SETSTAT packet");e._debug&&e._debug(`SFTP: Inbound: Received SETSTAT (id:${n})`);if(!e.emit("SETSTAT",n,s,i)){e.status(n,y.OP_UNSUPPORTED)}},[R.FSETSTAT]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();const i=readAttrs(e._biOpt);P.clear();if(i===undefined||s.length>256)return doFatalSFTPError(e,"Malformed FSETSTAT packet");e._debug&&e._debug(`SFTP: Inbound: Received FSETSTAT (id:${n})`);if(!e.emit("FSETSTAT",n,s,i)){e.status(n,y.OP_UNSUPPORTED)}},[R.OPENDIR]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed OPENDIR packet");e._debug&&e._debug(`SFTP: Inbound: Received OPENDIR (id:${n})`);if(!e.emit("OPENDIR",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.READDIR]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();P.clear();if(s===undefined||s.length>256)return doFatalSFTPError(e,"Malformed READDIR packet");e._debug&&e._debug(`SFTP: Inbound: Received READDIR (id:${n})`);if(!e.emit("READDIR",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.REMOVE]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed REMOVE packet");e._debug&&e._debug(`SFTP: Inbound: Received REMOVE (id:${n})`);if(!e.emit("REMOVE",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.MKDIR]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);const i=readAttrs(e._biOpt);P.clear();if(i===undefined)return doFatalSFTPError(e,"Malformed MKDIR packet");e._debug&&e._debug(`SFTP: Inbound: Received MKDIR (id:${n})`);if(!e.emit("MKDIR",n,s,i)){e.status(n,y.OP_UNSUPPORTED)}},[R.RMDIR]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed RMDIR packet");e._debug&&e._debug(`SFTP: Inbound: Received RMDIR (id:${n})`);if(!e.emit("RMDIR",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.REALPATH]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed REALPATH packet");e._debug&&e._debug(`SFTP: Inbound: Received REALPATH (id:${n})`);if(!e.emit("REALPATH",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.STAT]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed STAT packet");e._debug&&e._debug(`SFTP: Inbound: Received STAT (id:${n})`);if(!e.emit("STAT",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.RENAME]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);const i=P.readString(true);P.clear();if(i===undefined)return doFatalSFTPError(e,"Malformed RENAME packet");e._debug&&e._debug(`SFTP: Inbound: Received RENAME (id:${n})`);if(!e.emit("RENAME",n,s,i)){e.status(n,y.OP_UNSUPPORTED)}},[R.READLINK]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed READLINK packet");e._debug&&e._debug(`SFTP: Inbound: Received READLINK (id:${n})`);if(!e.emit("READLINK",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.SYMLINK]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);const i=P.readString(true);P.clear();if(i===undefined)return doFatalSFTPError(e,"Malformed SYMLINK packet");e._debug&&e._debug(`SFTP: Inbound: Received SYMLINK (id:${n})`);let o;if(e._isOpenSSH){o=e.emit("SYMLINK",n,i,s)}else{o=e.emit("SYMLINK",n,s,i)}if(!o){e.status(n,y.OP_UNSUPPORTED)}},[R.EXTENDED]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);if(s===undefined){P.clear();return doFatalSFTPError(e,"Malformed EXTENDED packet")}let i;if(P.avail())i=P.readRaw();P.clear();e._debug&&e._debug(`SFTP: Inbound: Received EXTENDED (id:${n})`);if(!e.emit("EXTENDED",n,s,i)){e.status(n,y.OP_UNSUPPORTED)}}};const{ERR_INVALID_ARG_TYPE:V,ERR_OUT_OF_RANGE:q,validateNumber:j}=n(7609);const z=128;let $;const ee=[];function allocNewPool(e){if(ee.length>0)$=ee.pop();else $=Buffer.allocUnsafe(e);$.used=0}function checkPosition(e,t){if(!Number.isSafeInteger(e)){j(e,t);if(!Number.isInteger(e))throw new q(t,"an integer",e);throw new q(t,">= 0 and <= 2 ** 53 - 1",e)}if(e<0)throw new q(t,">= 0 and <= 2 ** 53 - 1",e)}function roundUpToMultipleOf8(e){return e+7&~7}function ReadStream(e,t,n){if(n===undefined)n={};else if(typeof n==="string")n={encoding:n};else if(n===null||typeof n!=="object")throw new TypeError('"options" argument must be a string or an object');else n=Object.create(n);if(n.highWaterMark===undefined)n.highWaterMark=64*1024;n.emitClose=false;n.autoDestroy=false;h.call(this,n);this.path=t;this.flags=n.flags===undefined?"r":n.flags;this.mode=n.mode===undefined?438:n.mode;this.start=n.start;this.end=n.end;this.autoClose=n.autoClose===undefined?true:n.autoClose;this.pos=0;this.bytesRead=0;this.isClosed=false;this.handle=n.handle===undefined?null:n.handle;this.sftp=e;this._opening=false;if(this.start!==undefined){checkPosition(this.start,"start");this.pos=this.start}if(this.end===undefined){this.end=Infinity}else if(this.end!==Infinity){checkPosition(this.end,"end");if(this.start!==undefined&&this.start>this.end){throw new q("start",`<= "end" (here: ${this.end})`,this.start)}}this.on("end",(function(){if(this.autoClose)this.destroy()}));if(!Buffer.isBuffer(this.handle))this.open()}u(ReadStream,h);ReadStream.prototype.open=function(){if(this._opening)return;this._opening=true;this.sftp.open(this.path,this.flags,this.mode,((e,t)=>{this._opening=false;if(e){this.emit("error",e);if(this.autoClose)this.destroy();return}this.handle=t;this.emit("open",t);this.emit("ready");this.read()}))};ReadStream.prototype._read=function(e){if(!Buffer.isBuffer(this.handle))return this.once("open",(()=>this._read(e)));if(this.destroyed)return;if(!$||$.length-$.used{if(e){this.emit("error",e);if(this.autoClose)this.destroy();return}let o=null;if(s+n===t.used&&t===$){t.used=roundUpToMultipleOf8(t.used+i-n)}else{const e=s+n&~7;const o=roundUpToMultipleOf8(s+i);if(e-o>=z)ee.push(t.slice(o,e))}if(i>0){this.bytesRead+=i;o=t.slice(s,s+i)}this.pos+=i;this.push(o)}));$.used=roundUpToMultipleOf8($.used+n)};ReadStream.prototype._destroy=function(e,t){if(this._opening&&!Buffer.isBuffer(this.handle)){this.once("open",closeStream.bind(null,this,t,e));return}closeStream(this,t,e);this.handle=null;this._opening=false};function closeStream(e,t,n){if(!e.handle)return onclose();e.sftp.close(e.handle,onclose);function onclose(s){s=s||n;t(s);e.isClosed=true;if(!s)e.emit("close")}}ReadStream.prototype.close=function(e){this.destroy(null,e)};Object.defineProperty(ReadStream.prototype,"pending",{get(){return this.handle===null},configurable:true});function WriteStream(e,t,n){if(n===undefined)n={};else if(typeof n==="string")n={encoding:n};else if(n===null||typeof n!=="object")throw new TypeError('"options" argument must be a string or an object');else n=Object.create(n);n.emitClose=false;n.autoDestroy=false;l.call(this,n);this.path=t;this.flags=n.flags===undefined?"w":n.flags;this.mode=n.mode===undefined?438:n.mode;this.start=n.start;this.autoClose=n.autoClose===undefined?true:n.autoClose;this.pos=0;this.bytesWritten=0;this.isClosed=false;this.handle=n.handle===undefined?null:n.handle;this.sftp=e;this._opening=false;if(this.start!==undefined){checkPosition(this.start,"start");this.pos=this.start}if(n.encoding)this.setDefaultEncoding(n.encoding);this.on("finish",(function(){if(this._writableState.finalCalled)return;if(this.autoClose)this.destroy()}));if(!Buffer.isBuffer(this.handle))this.open()}u(WriteStream,l);WriteStream.prototype._final=function(e){if(this.autoClose)this.destroy();e()};WriteStream.prototype.open=function(){if(this._opening)return;this._opening=true;this.sftp.open(this.path,this.flags,this.mode,((e,t)=>{this._opening=false;if(e){this.emit("error",e);if(this.autoClose)this.destroy();return}this.handle=t;const tryAgain=e=>{if(e){this.sftp.chmod(this.path,this.mode,(e=>tryAgain()));return}if(this.flags[0]==="a"){const tryStat=(e,n)=>{if(e){this.sftp.stat(this.path,((t,n)=>{if(t){this.destroy();this.emit("error",e);return}tryStat(null,n)}));return}this.pos=n.size;this.emit("open",t);this.emit("ready")};this.sftp.fstat(t,tryStat);return}this.emit("open",t);this.emit("ready")};this.sftp.fchmod(t,this.mode,tryAgain)}))};WriteStream.prototype._write=function(e,t,n){if(!Buffer.isBuffer(e)){const t=new V("data","Buffer",e);return this.emit("error",t)}if(!Buffer.isBuffer(this.handle)){return this.once("open",(function(){this._write(e,t,n)}))}this.sftp.write(this.handle,e,0,e.length,this.pos,((e,t)=>{if(e){if(this.autoClose)this.destroy();return n(e)}this.bytesWritten+=t;n()}));this.pos+=e.length};WriteStream.prototype._writev=function(e,t){if(!Buffer.isBuffer(this.handle)){return this.once("open",(function(){this._writev(e,t)}))}const n=this.sftp;const s=this.handle;let i=e.length;const onwrite=(e,n)=>{if(e){this.destroy();return t(e)}this.bytesWritten+=n;if(--i===0)t()};for(let t=0;t{"use strict";const s=n(6113);let i;try{i=n(4137)()}catch{}const{bindingAvailable:o,CIPHER_INFO:h,MAC_INFO:l}=n(5708);const u=(()=>{if(typeof s.sign==="function"&&typeof s.verify==="function"){const e="-----BEGIN PRIVATE KEY-----\r\nMC4CAQAwBQYDK2VwBCIEIHKj+sVa9WcD"+"/q2DJUJaf43Kptc8xYuUQA4bOFj9vC8T\r\n-----END PRIVATE KEY-----";const t=Buffer.from("a");let n;let i;try{n=s.sign(null,t,e);i=s.verify(null,t,e,n)}catch{}return Buffer.isBuffer(n)&&n.length===64&&i===true}return false})();const g=typeof s.diffieHellman==="function"&&typeof s.generateKeyPairSync==="function"&&typeof s.createPublicKey==="function";const f=["ecdh-sha2-nistp256","ecdh-sha2-nistp384","ecdh-sha2-nistp521","diffie-hellman-group-exchange-sha256","diffie-hellman-group14-sha256","diffie-hellman-group15-sha512","diffie-hellman-group16-sha512","diffie-hellman-group17-sha512","diffie-hellman-group18-sha512"];if(g){f.unshift("curve25519-sha256");f.unshift("curve25519-sha256@libssh.org")}const E=f.concat(["diffie-hellman-group-exchange-sha1","diffie-hellman-group14-sha1","diffie-hellman-group1-sha1"]);const I=["ecdsa-sha2-nistp256","ecdsa-sha2-nistp384","ecdsa-sha2-nistp521","rsa-sha2-512","rsa-sha2-256","ssh-rsa"];if(u)I.unshift("ssh-ed25519");const C=I.concat(["ssh-dss"]);const B=(()=>{const e=s.getCiphers();return t=>e.includes(h[t].sslName)})();let Q=["aes128-gcm@openssh.com","aes256-gcm@openssh.com","aes128-ctr","aes192-ctr","aes256-ctr"];if(i&&i.flags&&!i.flags.aes){if(o)Q.unshift("chacha20-poly1305@openssh.com");else Q.push("chacha20-poly1305@openssh.com")}else if(o&&i&&i.arch==="x86"){Q.splice(4,0,"chacha20-poly1305@openssh.com")}else{Q.push("chacha20-poly1305@openssh.com")}Q=Q.filter(B);const p=Q.concat(["aes256-cbc","aes192-cbc","aes128-cbc","blowfish-cbc","3des-cbc","aes128-gcm","aes256-gcm","arcfour256","arcfour128","cast128-cbc","arcfour"].filter(B));const y=(()=>{const e=s.getHashes();return t=>e.includes(l[t].sslName)})();const w=["hmac-sha2-256-etm@openssh.com","hmac-sha2-512-etm@openssh.com","hmac-sha1-etm@openssh.com","hmac-sha2-256","hmac-sha2-512","hmac-sha1"].filter(y);const b=w.concat(["hmac-md5","hmac-sha2-256-96","hmac-sha2-512-96","hmac-ripemd160","hmac-sha1-96","hmac-md5-96"].filter(y));const R=["none","zlib@openssh.com","zlib"];const k=R.concat([]);const _={BAD_DHGEX:1<<0,OLD_EXIT:1<<1,DYN_RPORT_BUG:1<<2,BUG_DHGEX_LARGE:1<<3,IMPLY_RSA_SHA2_SIGALGS:1<<4};e.exports={MESSAGE:{DISCONNECT:1,IGNORE:2,UNIMPLEMENTED:3,DEBUG:4,SERVICE_REQUEST:5,SERVICE_ACCEPT:6,EXT_INFO:7,KEXINIT:20,NEWKEYS:21,KEXDH_INIT:30,KEXDH_REPLY:31,KEXDH_GEX_GROUP:31,KEXDH_GEX_INIT:32,KEXDH_GEX_REPLY:33,KEXDH_GEX_REQUEST:34,KEXECDH_INIT:30,KEXECDH_REPLY:31,USERAUTH_REQUEST:50,USERAUTH_FAILURE:51,USERAUTH_SUCCESS:52,USERAUTH_BANNER:53,USERAUTH_PASSWD_CHANGEREQ:60,USERAUTH_PK_OK:60,USERAUTH_INFO_REQUEST:60,USERAUTH_INFO_RESPONSE:61,GLOBAL_REQUEST:80,REQUEST_SUCCESS:81,REQUEST_FAILURE:82,CHANNEL_OPEN:90,CHANNEL_OPEN_CONFIRMATION:91,CHANNEL_OPEN_FAILURE:92,CHANNEL_WINDOW_ADJUST:93,CHANNEL_DATA:94,CHANNEL_EXTENDED_DATA:95,CHANNEL_EOF:96,CHANNEL_CLOSE:97,CHANNEL_REQUEST:98,CHANNEL_SUCCESS:99,CHANNEL_FAILURE:100},DISCONNECT_REASON:{HOST_NOT_ALLOWED_TO_CONNECT:1,PROTOCOL_ERROR:2,KEY_EXCHANGE_FAILED:3,RESERVED:4,MAC_ERROR:5,COMPRESSION_ERROR:6,SERVICE_NOT_AVAILABLE:7,PROTOCOL_VERSION_NOT_SUPPORTED:8,HOST_KEY_NOT_VERIFIABLE:9,CONNECTION_LOST:10,BY_APPLICATION:11,TOO_MANY_CONNECTIONS:12,AUTH_CANCELED_BY_USER:13,NO_MORE_AUTH_METHODS_AVAILABLE:14,ILLEGAL_USER_NAME:15},DISCONNECT_REASON_STR:undefined,CHANNEL_OPEN_FAILURE:{ADMINISTRATIVELY_PROHIBITED:1,CONNECT_FAILED:2,UNKNOWN_CHANNEL_TYPE:3,RESOURCE_SHORTAGE:4},TERMINAL_MODE:{TTY_OP_END:0,VINTR:1,VQUIT:2,VERASE:3,VKILL:4,VEOF:5,VEOL:6,VEOL2:7,VSTART:8,VSTOP:9,VSUSP:10,VDSUSP:11,VREPRINT:12,VWERASE:13,VLNEXT:14,VFLUSH:15,VSWTCH:16,VSTATUS:17,VDISCARD:18,IGNPAR:30,PARMRK:31,INPCK:32,ISTRIP:33,INLCR:34,IGNCR:35,ICRNL:36,IUCLC:37,IXON:38,IXANY:39,IXOFF:40,IMAXBEL:41,ISIG:50,ICANON:51,XCASE:52,ECHO:53,ECHOE:54,ECHOK:55,ECHONL:56,NOFLSH:57,TOSTOP:58,IEXTEN:59,ECHOCTL:60,ECHOKE:61,PENDIN:62,OPOST:70,OLCUC:71,ONLCR:72,OCRNL:73,ONOCR:74,ONLRET:75,CS7:90,CS8:91,PARENB:92,PARODD:93,TTY_OP_ISPEED:128,TTY_OP_OSPEED:129},CHANNEL_EXTENDED_DATATYPE:{STDERR:1},SIGNALS:["ABRT","ALRM","FPE","HUP","ILL","INT","QUIT","SEGV","TERM","USR1","USR2","KILL","PIPE"].reduce(((e,t)=>({...e,[t]:1})),{}),COMPAT:_,COMPAT_CHECKS:[["Cisco-1.25",_.BAD_DHGEX],[/^Cisco-1[.]/,_.BUG_DHGEX_LARGE],[/^[0-9.]+$/,_.OLD_EXIT],[/^OpenSSH_5[.][0-9]+/,_.DYN_RPORT_BUG],[/^OpenSSH_7[.]4/,_.IMPLY_RSA_SHA2_SIGALGS]],DEFAULT_KEX:f,SUPPORTED_KEX:E,DEFAULT_SERVER_HOST_KEY:I,SUPPORTED_SERVER_HOST_KEY:C,DEFAULT_CIPHER:Q,SUPPORTED_CIPHER:p,DEFAULT_MAC:w,SUPPORTED_MAC:b,DEFAULT_COMPRESSION:R,SUPPORTED_COMPRESSION:k,curve25519Supported:g,eddsaSupported:u};e.exports.DISCONNECT_REASON_BY_VALUE=Array.from(Object.entries(e.exports.DISCONNECT_REASON)).reduce(((e,[t,n])=>({...e,[n]:t})),{})},5708:(e,t,n)=>{"use strict";const{createCipheriv:s,createDecipheriv:i,createHmac:o,randomFillSync:h,timingSafeEqual:l}=n(6113);const{readUInt32BE:u,writeUInt32BE:g}=n(9475);const f=Buffer[Symbol.species];const E=2**32-1;const I=Buffer.alloc(0);const C=Buffer.alloc(4);const B=new Map;const Q=35e3;let p;let y;let w;let b;let R;let k;let _;try{p=n(9041);({AESGCMCipher:y,ChaChaPolyCipher:w,GenericCipher:b,AESGCMDecipher:R,ChaChaPolyDecipher:k,GenericDecipher:_}=p)}catch{}const D=1<<0;const U=(()=>{function info(e,t,n,s,i,o,h){return{sslName:e,blockLen:t,keyLen:n,ivLen:s!==0||h&D?s:t,authLen:i,discardLen:o,stream:!!(h&D)}}return{"chacha20-poly1305@openssh.com":info("chacha20",8,64,0,16,0,D),"aes128-gcm":info("aes-128-gcm",16,16,12,16,0,D),"aes256-gcm":info("aes-256-gcm",16,32,12,16,0,D),"aes128-gcm@openssh.com":info("aes-128-gcm",16,16,12,16,0,D),"aes256-gcm@openssh.com":info("aes-256-gcm",16,32,12,16,0,D),"aes128-cbc":info("aes-128-cbc",16,16,0,0,0,0),"aes192-cbc":info("aes-192-cbc",16,24,0,0,0,0),"aes256-cbc":info("aes-256-cbc",16,32,0,0,0,0),"rijndael-cbc@lysator.liu.se":info("aes-256-cbc",16,32,0,0,0,0),"3des-cbc":info("des-ede3-cbc",8,24,0,0,0,0),"blowfish-cbc":info("bf-cbc",8,16,0,0,0,0),"idea-cbc":info("idea-cbc",8,16,0,0,0,0),"cast128-cbc":info("cast-cbc",8,16,0,0,0,0),"aes128-ctr":info("aes-128-ctr",16,16,16,0,0,D),"aes192-ctr":info("aes-192-ctr",16,24,16,0,0,D),"aes256-ctr":info("aes-256-ctr",16,32,16,0,0,D),"3des-ctr":info("des-ede3",8,24,8,0,0,D),"blowfish-ctr":info("bf-ecb",8,16,8,0,0,D),"cast128-ctr":info("cast5-ecb",8,16,8,0,0,D),arcfour:info("rc4",8,16,0,0,1536,D),arcfour128:info("rc4",8,16,0,0,1536,D),arcfour256:info("rc4",8,32,0,0,1536,D),arcfour512:info("rc4",8,64,0,0,1536,D)}})();const L=(()=>{function info(e,t,n,s){return{sslName:e,len:t,actualLen:n,isETM:s}}return{"hmac-md5":info("md5",16,16,false),"hmac-md5-96":info("md5",16,12,false),"hmac-ripemd160":info("ripemd160",20,20,false),"hmac-sha1":info("sha1",20,20,false),"hmac-sha1-etm@openssh.com":info("sha1",20,20,true),"hmac-sha1-96":info("sha1",20,12,false),"hmac-sha2-256":info("sha256",32,32,false),"hmac-sha2-256-etm@openssh.com":info("sha256",32,32,true),"hmac-sha2-256-96":info("sha256",32,12,false),"hmac-sha2-512":info("sha512",64,64,false),"hmac-sha2-512-etm@openssh.com":info("sha512",64,64,true),"hmac-sha2-512-96":info("sha512",64,12,false)}})();class NullCipher{constructor(e,t){this.outSeqno=e;this._onWrite=t;this._dead=false}free(){this._dead=true}allocPacket(e){let t=4+1+e;let n=8-(t&8-1);if(n<4)n+=8;t+=n;const s=Buffer.allocUnsafe(t);g(s,t-4,0);s[4]=n;h(s,5+e,n);return s}encrypt(e){if(this._dead)return;this._onWrite(e);this.outSeqno=this.outSeqno+1>>>0}}const v=Buffer.alloc(32);const T=Buffer.alloc(16);let O;let P;let x;class ChaChaPolyCipherNative{constructor(e){const t=e.outbound;this.outSeqno=t.seqno;this._onWrite=t.onWrite;this._encKeyMain=t.cipherKey.slice(0,32);this._encKeyPktLen=t.cipherKey.slice(32);this._dead=false}free(){this._dead=true}allocPacket(e){let t=4+1+e;let n=8-(t-4&8-1);if(n<4)n+=8;t+=n;const s=Buffer.allocUnsafe(t);g(s,t-4,0);s[4]=n;h(s,5+e,n);return s}encrypt(e){if(this._dead)return;T[0]=0;g(T,this.outSeqno,12);const t=s("chacha20",this._encKeyMain,T).update(v);const n=s("chacha20",this._encKeyPktLen,T).update(e.slice(0,4));this._onWrite(n);T[0]=1;const i=s("chacha20",this._encKeyMain,T).update(e.slice(4));this._onWrite(i);x(P,n,n.length,i,i.length,t);const o=Buffer.allocUnsafe(16);o.set(new Uint8Array(O.HEAPU8.buffer,P,16),0);this._onWrite(o);this.outSeqno=this.outSeqno+1>>>0}}class ChaChaPolyCipherBinding{constructor(e){const t=e.outbound;this.outSeqno=t.seqno;this._onWrite=t.onWrite;this._instance=new w(t.cipherKey);this._dead=false}free(){this._dead=true;this._instance.free()}allocPacket(e){let t=4+1+e;let n=8-(t-4&8-1);if(n<4)n+=8;t+=n;const s=Buffer.allocUnsafe(t+16);g(s,t-4,0);s[4]=n;h(s,5+e,n);return s}encrypt(e){if(this._dead)return;this._instance.encrypt(e,this.outSeqno);this._onWrite(e);this.outSeqno=this.outSeqno+1>>>0}}class AESGCMCipherNative{constructor(e){const t=e.outbound;this.outSeqno=t.seqno;this._onWrite=t.onWrite;this._encSSLName=t.cipherInfo.sslName;this._encKey=t.cipherKey;this._encIV=t.cipherIV;this._dead=false}free(){this._dead=true}allocPacket(e){let t=4+1+e;let n=16-(t-4&16-1);if(n<4)n+=16;t+=n;const s=Buffer.allocUnsafe(t);g(s,t-4,0);s[4]=n;h(s,5+e,n);return s}encrypt(e){if(this._dead)return;const t=s(this._encSSLName,this._encKey,this._encIV);t.setAutoPadding(false);const n=e.slice(0,4);t.setAAD(n);this._onWrite(n);const i=t.update(e.slice(4));this._onWrite(i);const o=t.final();if(o.length)this._onWrite(o);const h=t.getAuthTag();this._onWrite(h);ivIncrement(this._encIV);this.outSeqno=this.outSeqno+1>>>0}}class AESGCMCipherBinding{constructor(e){const t=e.outbound;this.outSeqno=t.seqno;this._onWrite=t.onWrite;this._instance=new y(t.cipherInfo.sslName,t.cipherKey,t.cipherIV);this._dead=false}free(){this._dead=true;this._instance.free()}allocPacket(e){let t=4+1+e;let n=16-(t-4&16-1);if(n<4)n+=16;t+=n;const s=Buffer.allocUnsafe(t+16);g(s,t-4,0);s[4]=n;h(s,5+e,n);return s}encrypt(e){if(this._dead)return;this._instance.encrypt(e);this._onWrite(e);this.outSeqno=this.outSeqno+1>>>0}}class GenericCipherNative{constructor(e){const t=e.outbound;this.outSeqno=t.seqno;this._onWrite=t.onWrite;this._encBlockLen=t.cipherInfo.blockLen;this._cipherInstance=s(t.cipherInfo.sslName,t.cipherKey,t.cipherIV);this._macSSLName=t.macInfo.sslName;this._macKey=t.macKey;this._macActualLen=t.macInfo.actualLen;this._macETM=t.macInfo.isETM;this._aadLen=this._macETM?4:0;this._dead=false;const n=t.cipherInfo.discardLen;if(n){let e=B.get(n);if(e===undefined){e=Buffer.alloc(n);B.set(n,e)}this._cipherInstance.update(e)}}free(){this._dead=true}allocPacket(e){const t=this._encBlockLen;let n=4+1+e;let s=t-(n-this._aadLen&t-1);if(s<4)s+=t;n+=s;const i=Buffer.allocUnsafe(n);g(i,n-4,0);i[4]=s;h(i,5+e,s);return i}encrypt(e){if(this._dead)return;let t;if(this._macETM){const n=new Uint8Array(e.buffer,e.byteOffset,4);const s=this._cipherInstance.update(new Uint8Array(e.buffer,e.byteOffset+4,e.length-4));this._onWrite(n);this._onWrite(s);t=o(this._macSSLName,this._macKey);g(C,this.outSeqno,0);t.update(C);t.update(n);t.update(s)}else{const n=this._cipherInstance.update(e);this._onWrite(n);t=o(this._macSSLName,this._macKey);g(C,this.outSeqno,0);t.update(C);t.update(e)}let n=t.digest();if(n.length>this._macActualLen)n=n.slice(0,this._macActualLen);this._onWrite(n);this.outSeqno=this.outSeqno+1>>>0}}class GenericCipherBinding{constructor(e){const t=e.outbound;this.outSeqno=t.seqno;this._onWrite=t.onWrite;this._encBlockLen=t.cipherInfo.blockLen;this._macLen=t.macInfo.len;this._macActualLen=t.macInfo.actualLen;this._aadLen=t.macInfo.isETM?4:0;this._instance=new b(t.cipherInfo.sslName,t.cipherKey,t.cipherIV,t.macInfo.sslName,t.macKey,t.macInfo.isETM);this._dead=false}free(){this._dead=true;this._instance.free()}allocPacket(e){const t=this._encBlockLen;let n=4+1+e;let s=t-(n-this._aadLen&t-1);if(s<4)s+=t;n+=s;const i=Buffer.allocUnsafe(n+this._macLen);g(i,n-4,0);i[4]=s;h(i,5+e,s);return i}encrypt(e){if(this._dead)return;this._instance.encrypt(e,this.outSeqno);if(this._macActualLen>>0}}class NullDecipher{constructor(e,t){this.inSeqno=e;this._onPayload=t;this._len=0;this._lenBytes=0;this._packet=null;this._packetPos=0}free(){}decrypt(e,t,n){while(tQ||this._len<8||(4+this._len&7)!==0){throw new Error("Bad packet length")}if(t>=n)return}if(this._packetPos>>0;this._len=0;this._lenBytes=0;this._packet=null;this._packetPos=0;{const e=this._onPayload(s);if(e!==undefined)return e===false?t:e}}}}class ChaChaPolyDecipherNative{constructor(e){const t=e.inbound;this.inSeqno=t.seqno;this._onPayload=t.onPayload;this._decKeyMain=t.decipherKey.slice(0,32);this._decKeyPktLen=t.decipherKey.slice(32);this._len=0;this._lenBuf=Buffer.alloc(4);this._lenPos=0;this._packet=null;this._pktLen=0;this._mac=Buffer.allocUnsafe(16);this._calcMac=Buffer.allocUnsafe(16);this._macPos=0}free(){}decrypt(e,t,n){while(tQ||this._len<8||(this._len&7)!==0){throw new Error("Bad packet length")}}if(this._pktLen=n)return;const s=Math.min(this._len-this._pktLen,n-t);let i;if(t!==0||s!==n)i=new Uint8Array(e.buffer,e.byteOffset+t,s);else i=e;if(s===this._len){this._packet=i}else{if(!this._packet)this._packet=Buffer.allocUnsafe(this._len);this._packet.set(i,this._pktLen)}t+=s;this._pktLen+=s;if(this._pktLen=n)return}{const s=Math.min(16-this._macPos,n-t);if(t!==0||s!==n){this._mac.set(new Uint8Array(e.buffer,e.byteOffset+t,s),this._macPos)}else{this._mac.set(e,this._macPos)}t+=s;this._macPos+=s;if(this._macPos<16)return}T[0]=0;g(T,this.inSeqno,12);const o=s("chacha20",this._decKeyMain,T).update(v);x(P,this._lenBuf,4,this._packet,this._packet.length,o);this._calcMac.set(new Uint8Array(O.HEAPU8.buffer,P,16),0);if(!l(this._calcMac,this._mac))throw new Error("Invalid MAC");T[0]=1;const h=i("chacha20",this._decKeyMain,T).update(this._packet);const E=new f(h.buffer,h.byteOffset+1,h.length-h[0]-1);this.inSeqno=this.inSeqno+1>>>0;this._len=0;this._lenPos=0;this._packet=null;this._pktLen=0;this._macPos=0;{const e=this._onPayload(E);if(e!==undefined)return e===false?t:e}}}}class ChaChaPolyDecipherBinding{constructor(e){const t=e.inbound;this.inSeqno=t.seqno;this._onPayload=t.onPayload;this._instance=new k(t.decipherKey);this._len=0;this._lenBuf=Buffer.alloc(4);this._lenPos=0;this._packet=null;this._pktLen=0;this._mac=Buffer.allocUnsafe(16);this._macPos=0}free(){this._instance.free()}decrypt(e,t,n){while(tQ||this._len<8||(this._len&7)!==0){throw new Error("Bad packet length")}if(t>=n)return}if(this._pktLen=n)return}{const s=Math.min(16-this._macPos,n-t);if(t!==0||s!==n){this._mac.set(new Uint8Array(e.buffer,e.byteOffset+t,s),this._macPos)}else{this._mac.set(e,this._macPos)}t+=s;this._macPos+=s;if(this._macPos<16)return}this._instance.decrypt(this._packet,this._mac,this.inSeqno);const s=new f(this._packet.buffer,this._packet.byteOffset+1,this._packet.length-this._packet[0]-1);this.inSeqno=this.inSeqno+1>>>0;this._len=0;this._lenPos=0;this._packet=null;this._pktLen=0;this._macPos=0;{const e=this._onPayload(s);if(e!==undefined)return e===false?t:e}}}}class AESGCMDecipherNative{constructor(e){const t=e.inbound;this.inSeqno=t.seqno;this._onPayload=t.onPayload;this._decipherInstance=null;this._decipherSSLName=t.decipherInfo.sslName;this._decipherKey=t.decipherKey;this._decipherIV=t.decipherIV;this._len=0;this._lenBytes=0;this._packet=null;this._packetPos=0;this._pktLen=0;this._tag=Buffer.allocUnsafe(16);this._tagPos=0}free(){}decrypt(e,t,n){while(tQ||this._len<16||(this._len&15)!==0){throw new Error("Bad packet length")}this._decipherInstance=i(this._decipherSSLName,this._decipherKey,this._decipherIV);this._decipherInstance.setAutoPadding(false);this._decipherInstance.setAAD(Y(this._len))}if(this._pktLen=n)return;const s=Math.min(this._len-this._pktLen,n-t);let i;if(t!==0||s!==n){i=this._decipherInstance.update(new Uint8Array(e.buffer,e.byteOffset+t,s))}else{i=this._decipherInstance.update(e)}if(i.length){if(s===this._len){this._packet=i}else{if(!this._packet)this._packet=Buffer.allocUnsafe(this._len);this._packet.set(i,this._packetPos)}this._packetPos+=i.length}t+=s;this._pktLen+=s;if(this._pktLen=n)return}{const s=Math.min(16-this._tagPos,n-t);if(t!==0||s!==n){this._tag.set(new Uint8Array(e.buffer,e.byteOffset+t,s),this._tagPos)}else{this._tag.set(e,this._tagPos)}t+=s;this._tagPos+=s;if(this._tagPos<16)return}{this._decipherInstance.setAuthTag(this._tag);const e=this._decipherInstance.final();if(e.length){if(this._packet)this._packet.set(e,this._packetPos);else this._packet=e}}const s=!this._packet?I:new f(this._packet.buffer,this._packet.byteOffset+1,this._packet.length-this._packet[0]-1);this.inSeqno=this.inSeqno+1>>>0;ivIncrement(this._decipherIV);this._len=0;this._lenBytes=0;this._packet=null;this._packetPos=0;this._pktLen=0;this._tagPos=0;{const e=this._onPayload(s);if(e!==undefined)return e===false?t:e}}}}class AESGCMDecipherBinding{constructor(e){const t=e.inbound;this.inSeqno=t.seqno;this._onPayload=t.onPayload;this._instance=new R(t.decipherInfo.sslName,t.decipherKey,t.decipherIV);this._len=0;this._lenBytes=0;this._packet=null;this._pktLen=0;this._tag=Buffer.allocUnsafe(16);this._tagPos=0}free(){}decrypt(e,t,n){while(tQ||this._len<16||(this._len&15)!==0){throw new Error(`Bad packet length: ${this._len}`)}}if(this._pktLen=n)return;const s=Math.min(this._len-this._pktLen,n-t);let i;if(t!==0||s!==n)i=new Uint8Array(e.buffer,e.byteOffset+t,s);else i=e;if(s===this._len){this._packet=i}else{if(!this._packet)this._packet=Buffer.allocUnsafe(this._len);this._packet.set(i,this._pktLen)}t+=s;this._pktLen+=s;if(this._pktLen=n)return}{const s=Math.min(16-this._tagPos,n-t);if(t!==0||s!==n){this._tag.set(new Uint8Array(e.buffer,e.byteOffset+t,s),this._tagPos)}else{this._tag.set(e,this._tagPos)}t+=s;this._tagPos+=s;if(this._tagPos<16)return}this._instance.decrypt(this._packet,this._len,this._tag);const s=new f(this._packet.buffer,this._packet.byteOffset+1,this._packet.length-this._packet[0]-1);this.inSeqno=this.inSeqno+1>>>0;this._len=0;this._lenBytes=0;this._packet=null;this._pktLen=0;this._tagPos=0;{const e=this._onPayload(s);if(e!==undefined)return e===false?t:e}}}}class GenericDecipherNative{constructor(e){const t=e.inbound;this.inSeqno=t.seqno;this._onPayload=t.onPayload;this._decipherInstance=i(t.decipherInfo.sslName,t.decipherKey,t.decipherIV);this._decipherInstance.setAutoPadding(false);this._block=Buffer.allocUnsafe(t.macInfo.isETM?4:t.decipherInfo.blockLen);this._blockSize=t.decipherInfo.blockLen;this._blockPos=0;this._len=0;this._packet=null;this._packetPos=0;this._pktLen=0;this._mac=Buffer.allocUnsafe(t.macInfo.actualLen);this._macPos=0;this._macSSLName=t.macInfo.sslName;this._macKey=t.macKey;this._macActualLen=t.macInfo.actualLen;this._macETM=t.macInfo.isETM;this._macInstance=null;const n=t.decipherInfo.discardLen;if(n){let e=B.get(n);if(e===undefined){e=Buffer.alloc(n);B.set(n,e)}this._decipherInstance.update(e)}}free(){}decrypt(e,t,n){while(tQ||this._len<5||(h&this._blockSize-1)!==0){throw new Error("Bad packet length")}this._macInstance=o(this._macSSLName,this._macKey);g(C,this.inSeqno,0);this._macInstance.update(C);if(this._macETM){this._macInstance.update(this._block)}else{this._macInstance.update(new Uint8Array(i.buffer,i.byteOffset,4));this._pktLen=i.length-4;this._packetPos=this._pktLen;this._packet=Buffer.allocUnsafe(this._len);this._packet.set(new Uint8Array(i.buffer,i.byteOffset+4,this._packetPos),0)}if(t>=n)return}if(this._pktLen=n)return}{const s=Math.min(this._macActualLen-this._macPos,n-t);if(t!==0||s!==n){this._mac.set(new Uint8Array(e.buffer,e.byteOffset+t,s),this._macPos)}else{this._mac.set(e,this._macPos)}t+=s;this._macPos+=s;if(this._macPos>>0;this._blockPos=0;this._len=0;this._packet=null;this._packetPos=0;this._pktLen=0;this._macPos=0;this._macInstance=null;{const e=this._onPayload(i);if(e!==undefined)return e===false?t:e}}}}class GenericDecipherBinding{constructor(e){const t=e.inbound;this.inSeqno=t.seqno;this._onPayload=t.onPayload;this._instance=new _(t.decipherInfo.sslName,t.decipherKey,t.decipherIV,t.macInfo.sslName,t.macKey,t.macInfo.isETM,t.macInfo.actualLen);this._block=Buffer.allocUnsafe(t.macInfo.isETM||t.decipherInfo.stream?4:t.decipherInfo.blockLen);this._blockPos=0;this._len=0;this._packet=null;this._pktLen=0;this._mac=Buffer.allocUnsafe(t.macInfo.actualLen);this._macPos=0;this._macActualLen=t.macInfo.actualLen;this._macETM=t.macInfo.isETM}free(){this._instance.free()}decrypt(e,t,n){while(tQ||this._len<5||(i&this._block.length-1)!==0){throw new Error("Bad packet length")}if(!this._macETM){this._pktLen=this._block.length-4;if(this._pktLen){this._packet=Buffer.allocUnsafe(this._len);this._packet.set(new Uint8Array(this._block.buffer,this._block.byteOffset+4,this._pktLen),0)}}if(t>=n)return}if(this._pktLen=n)return}{const s=Math.min(this._macActualLen-this._macPos,n-t);if(t!==0||s!==n){this._mac.set(new Uint8Array(e.buffer,e.byteOffset+t,s),this._macPos)}else{this._mac.set(e,this._macPos)}t+=s;this._macPos+=s;if(this._macPos>>0;this._blockPos=0;this._len=0;this._packet=null;this._pktLen=0;this._macPos=0;this._macInstance=null;{const e=this._onPayload(s);if(e!==undefined)return e===false?t:e}}}}function ivIncrement(e){++e[11]>>>8&&++e[10]>>>8&&++e[9]>>>8&&++e[8]>>>8&&++e[7]>>>8&&++e[6]>>>8&&++e[5]>>>8&&++e[4]>>>8}const Y=(()=>{const e=Buffer.alloc(4);return t=>{e[0]=t>>>24;e[1]=t>>>16;e[2]=t>>>8;e[3]=t;return e}})();function timingSafeEquals(e,t){if(e.length!==t.length){l(e,e);return false}return l(e,t)}function createCipher(e){if(typeof e!=="object"||e===null)throw new Error("Invalid config");if(typeof e.outbound!=="object"||e.outbound===null)throw new Error("Invalid outbound");const t=e.outbound;if(typeof t.onWrite!=="function")throw new Error("Invalid outbound.onWrite");if(typeof t.cipherInfo!=="object"||t.cipherInfo===null)throw new Error("Invalid outbound.cipherInfo");if(!Buffer.isBuffer(t.cipherKey)||t.cipherKey.length!==t.cipherInfo.keyLen){throw new Error("Invalid outbound.cipherKey")}if(t.cipherInfo.ivLen&&(!Buffer.isBuffer(t.cipherIV)||t.cipherIV.length!==t.cipherInfo.ivLen)){throw new Error("Invalid outbound.cipherIV")}if(typeof t.seqno!=="number"||t.seqno<0||t.seqno>E){throw new Error("Invalid outbound.seqno")}const n=!!t.forceNative;switch(t.cipherInfo.sslName){case"aes-128-gcm":case"aes-256-gcm":return y&&!n?new AESGCMCipherBinding(e):new AESGCMCipherNative(e);case"chacha20":return w&&!n?new ChaChaPolyCipherBinding(e):new ChaChaPolyCipherNative(e);default:{if(typeof t.macInfo!=="object"||t.macInfo===null)throw new Error("Invalid outbound.macInfo");if(!Buffer.isBuffer(t.macKey)||t.macKey.length!==t.macInfo.len){throw new Error("Invalid outbound.macKey")}return b&&!n?new GenericCipherBinding(e):new GenericCipherNative(e)}}}function createDecipher(e){if(typeof e!=="object"||e===null)throw new Error("Invalid config");if(typeof e.inbound!=="object"||e.inbound===null)throw new Error("Invalid inbound");const t=e.inbound;if(typeof t.onPayload!=="function")throw new Error("Invalid inbound.onPayload");if(typeof t.decipherInfo!=="object"||t.decipherInfo===null){throw new Error("Invalid inbound.decipherInfo")}if(!Buffer.isBuffer(t.decipherKey)||t.decipherKey.length!==t.decipherInfo.keyLen){throw new Error("Invalid inbound.decipherKey")}if(t.decipherInfo.ivLen&&(!Buffer.isBuffer(t.decipherIV)||t.decipherIV.length!==t.decipherInfo.ivLen)){throw new Error("Invalid inbound.decipherIV")}if(typeof t.seqno!=="number"||t.seqno<0||t.seqno>E){throw new Error("Invalid inbound.seqno")}const n=!!t.forceNative;switch(t.decipherInfo.sslName){case"aes-128-gcm":case"aes-256-gcm":return R&&!n?new AESGCMDecipherBinding(e):new AESGCMDecipherNative(e);case"chacha20":return k&&!n?new ChaChaPolyDecipherBinding(e):new ChaChaPolyDecipherNative(e);default:{if(typeof t.macInfo!=="object"||t.macInfo===null)throw new Error("Invalid inbound.macInfo");if(!Buffer.isBuffer(t.macKey)||t.macKey.length!==t.macInfo.len){throw new Error("Invalid inbound.macKey")}return _&&!n?new GenericDecipherBinding(e):new GenericDecipherNative(e)}}}e.exports={CIPHER_INFO:U,MAC_INFO:L,bindingAvailable:!!p,init:(()=>new Promise((async(e,t)=>{try{O=await n(4989)();P=O._malloc(16);x=O.cwrap("poly1305_auth",null,["number","array","number","array","number","array"])}catch(e){return t(e)}e()})))(),NullCipher:NullCipher,createCipher:createCipher,NullDecipher:NullDecipher,createDecipher:createDecipher}},4989:(e,t,n)=>{var s=function(){var e=typeof document!=="undefined"&&document.currentScript?document.currentScript.src:undefined;if(typeof __filename!=="undefined")e=e||__filename;return function(t){t=t||{};var s;s||(s=typeof t!=="undefined"?t:{});var i,o;s.ready=new Promise((function(e,t){i=e;o=t}));var h={},l;for(l in s)s.hasOwnProperty(l)&&(h[l]=s[l]);var u="object"===typeof window,g="function"===typeof importScripts,f="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node,E="",I,C,B,Q,p;if(f)E=g?n(1017).dirname(E)+"/":__dirname+"/",I=function(e,t){var s=H(e);if(s)return t?s:s.toString();Q||(Q=n(7147));p||(p=n(1017));e=p.normalize(e);return Q.readFileSync(e,t?null:"utf8")},B=function(e){e=I(e,!0);e.buffer||(e=new Uint8Array(e));assert(e.buffer);return e},C=function(e,t,s){var i=H(e);i&&t(i);Q||(Q=n(7147));p||(p=n(1017));e=p.normalize(e);Q.readFile(e,(function(e,n){e?s(e):t(n.buffer)}))},1=h){var l=e.charCodeAt(++o);h=65536+((h&1023)<<10)|l&1023}if(127>=h){if(s>=n)break;i[s++]=h}else{if(2047>=h){if(s+1>=n)break;i[s++]=192|h>>6}else{if(65535>=h){if(s+2>=n)break;i[s++]=224|h>>12}else{if(s+3>=n)break;i[s++]=240|h>>18;i[s++]=128|h>>12&63}i[s++]=128|h>>6&63}i[s++]=128|h&63}}i[s]=0}}return t},array:function(e){var t=te(e.length);U.set(e,t);return t}},o=N(e),h=[];e=0;if(s)for(var l=0;l=s);)++i;if(16o?s+=String.fromCharCode(o):(o-=65536,s+=String.fromCharCode(55296|o>>10,56320|o&1023))}}else s+=String.fromCharCode(o)}e=s}}else e="";else e="boolean"===t?!!e:e;return e}(n);0!==e&&ee(e);return n}var _="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0,D,U,L;function ia(){var e=R.buffer;D=e;s.HEAP8=U=new Int8Array(e);s.HEAP16=new Int16Array(e);s.HEAP32=new Int32Array(e);s.HEAPU8=L=new Uint8Array(e);s.HEAPU16=new Uint16Array(e);s.HEAPU32=new Uint32Array(e);s.HEAPF32=new Float32Array(e);s.HEAPF64=new Float64Array(e)}var v,T=[],O=[],P=[];function ma(){var e=s.preRun.shift();T.unshift(e)}var x=0,Y=null,G=null;s.preloadedImages={};s.preloadedAudios={};function K(e){if(s.onAbort)s.onAbort(e);y(e);k=!0;e=new WebAssembly.RuntimeError("abort("+e+"). Build with -s ASSERTIONS=1 for more info.");o(e);throw e}var J="data:application/octet-stream;base64,",W;W="data:application/octet-stream;base64,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";if(!W.startsWith(J)){var V=W;W=s.locateFile?s.locateFile(V,E):E+V}function pa(){var e=W;try{if(e==W&&w)return new Uint8Array(w);var t=H(e);if(t)return t;if(B)return B(e);throw"both async and sync fetching of the wasm failed"}catch(e){K(e)}}function qa(){if(!w&&(u||g)){if("function"===typeof fetch&&!W.startsWith("file://"))return fetch(W,{credentials:"same-origin"}).then((function(e){if(!e.ok)throw"failed to load wasm binary file at '"+W+"'";return e.arrayBuffer()})).catch((function(){return pa()}));if(C)return new Promise((function(e,t){C(W,(function(t){e(new Uint8Array(t))}),t)}))}return Promise.resolve().then((function(){return pa()}))}function X(e){for(;0>4;i=(i&15)<<4|o>>2;var l=(o&3)<<6|h;t+=String.fromCharCode(s);64!==o&&(t+=String.fromCharCode(i));64!==h&&(t+=String.fromCharCode(l))}while(n>>=0;if(2147483648=n;n*=2){var s=t*(1+.2/n);s=Math.min(s,e+100663296);s=Math.max(e,s);0>>16);ia();var i=1;break e}catch(e){}i=void 0}if(i)return!0}return!1}};(function(){function a(e){s.asm=e.exports;R=s.asm.b;ia();v=s.asm.j;O.unshift(s.asm.c);x--;s.monitorRunDependencies&&s.monitorRunDependencies(x);0==x&&(null!==Y&&(clearInterval(Y),Y=null),G&&(e=G,G=null,e()))}function c(e){a(e.instance)}function d(t){return qa().then((function(t){return WebAssembly.instantiate(t,e)})).then(t,(function(e){y("failed to asynchronously prepare wasm: "+e);K(e)}))}var e={a:z};x++;s.monitorRunDependencies&&s.monitorRunDependencies(x);if(s.instantiateWasm)try{return s.instantiateWasm(e,a)}catch(e){return y("Module.instantiateWasm callback failed with error: "+e),!1}(function(){return w||"function"!==typeof WebAssembly.instantiateStreaming||W.startsWith(J)||W.startsWith("file://")||"function"!==typeof fetch?d(c):fetch(W,{credentials:"same-origin"}).then((function(t){return WebAssembly.instantiateStreaming(t,e).then(c,(function(e){y("wasm streaming compile failed: "+e);y("falling back to ArrayBuffer instantiation");return d(c)}))}))})().catch(o);return{}})();s.___wasm_call_ctors=function(){return(s.___wasm_call_ctors=s.asm.c).apply(null,arguments)};s._poly1305_auth=function(){return(s._poly1305_auth=s.asm.d).apply(null,arguments)};var $=s.stackSave=function(){return($=s.stackSave=s.asm.e).apply(null,arguments)},ee=s.stackRestore=function(){return(ee=s.stackRestore=s.asm.f).apply(null,arguments)},te=s.stackAlloc=function(){return(te=s.stackAlloc=s.asm.g).apply(null,arguments)};s._malloc=function(){return(s._malloc=s.asm.h).apply(null,arguments)};s._free=function(){return(s._free=s.asm.i).apply(null,arguments)};s.cwrap=function(e,t,n,s){n=n||[];var i=n.every((function(e){return"number"===e}));return"string"!==t&&i&&!s?N(e):function(){return ca(e,t,n,arguments)}};var Ae;G=function ta(){Ae||Z();Ae||(G=ta)};function Z(){function a(){if(!Ae&&(Ae=!0,s.calledRun=!0,!k)){X(O);i(s);if(s.onRuntimeInitialized)s.onRuntimeInitialized();if(s.postRun)for("function"==typeof s.postRun&&(s.postRun=[s.postRun]);s.postRun.length;){var e=s.postRun.shift();P.unshift(e)}X(P)}}if(!(0{"use strict";const s=new Array(256);[n(4126).HANDLERS,n(6475)].forEach((e=>{for(let[t,n]of Object.entries(e)){t=+t;if(isFinite(t)&&t>=0&&t{"use strict";const{bufferSlice:s,bufferParser:i,doFatalError:o,sigSSHToASN1:h,writeUInt32BE:l}=n(9475);const{CHANNEL_OPEN_FAILURE:u,COMPAT:g,MESSAGE:f,TERMINAL_MODE:E}=n(6832);const{parseKey:I}=n(2218);const C=Array.from(Object.entries(E)).reduce(((e,[t,n])=>({...e,[t]:n})),{});e.exports={[f.DISCONNECT]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readString(true);const h=i.readString();i.clear();if(h===undefined){return o(e,"Inbound: Malformed DISCONNECT packet")}e._debug&&e._debug(`Inbound: Received DISCONNECT (${n}, "${s}")`);const l=e._handlers.DISCONNECT;l&&l(e,n,s)},[f.IGNORE]:(e,t)=>{e._debug&&e._debug("Inbound: Received IGNORE")},[f.UNIMPLEMENTED]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();i.clear();if(n===undefined){return o(e,"Inbound: Malformed UNIMPLEMENTED packet")}e._debug&&e._debug(`Inbound: Received UNIMPLEMENTED (seqno ${n})`)},[f.DEBUG]:(e,t)=>{i.init(t,1);const n=i.readBool();const s=i.readString(true);const h=i.readString();i.clear();if(h===undefined){return o(e,"Inbound: Malformed DEBUG packet")}e._debug&&e._debug("Inbound: Received DEBUG");const l=e._handlers.DEBUG;l&&l(e,n,s)},[f.SERVICE_REQUEST]:(e,t)=>{i.init(t,1);const n=i.readString(true);i.clear();if(n===undefined){return o(e,"Inbound: Malformed SERVICE_REQUEST packet")}e._debug&&e._debug(`Inbound: Received SERVICE_REQUEST (${n})`);const s=e._handlers.SERVICE_REQUEST;s&&s(e,n)},[f.SERVICE_ACCEPT]:(e,t)=>{i.init(t,1);const n=i.readString(true);i.clear();if(n===undefined){return o(e,"Inbound: Malformed SERVICE_ACCEPT packet")}e._debug&&e._debug(`Inbound: Received SERVICE_ACCEPT (${n})`);const s=e._handlers.SERVICE_ACCEPT;s&&s(e,n)},[f.EXT_INFO]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();let s;if(n!==undefined){s=[];for(let e=0;e{i.init(t,1);const n=i.readString(true);const u=i.readString(true);const g=i.readString(true);let f;let E;switch(g){case"none":f=null;break;case"password":{const e=i.readBool();if(e!==undefined){f=i.readString(true);if(f!==undefined&&e){const e=i.readString(true);if(e!==undefined)f={oldPassword:f,newPassword:e};else f=undefined}}break}case"publickey":{const n=i.readBool();if(n!==undefined){const o=i.readString(true);let u=o;const g=i.readString();let I;switch(o){case"rsa-sha2-256":u="ssh-rsa";I="sha256";break;case"rsa-sha2-512":u="ssh-rsa";I="sha512";break}if(n){const n=i.pos();let E=i.readString();if(E!==undefined){if(E.length>4+o.length+4&&E.utf8Slice(4,4+o.length)===o){E=s(E,4+o.length+4)}E=h(E,u);if(E){const s=e._kex.sessionID;const i=Buffer.allocUnsafe(4+s.length+n);l(i,s.length,0);i.set(s,4);i.set(new Uint8Array(t.buffer,t.byteOffset,n),4+s.length);f={keyAlgo:u,key:g,signature:E,blob:i,hashAlgo:I}}}}else{f={keyAlgo:u,key:g,hashAlgo:I};E="publickey -- check"}}break}case"hostbased":{const n=i.readString(true);let o=n;const u=i.readString();const g=i.readString(true);const E=i.readString(true);let I;switch(n){case"rsa-sha2-256":o="ssh-rsa";I="sha256";break;case"rsa-sha2-512":o="ssh-rsa";I="sha512";break}const C=i.pos();let B=i.readString();if(B!==undefined){if(B.length>4+n.length+4&&B.utf8Slice(4,4+n.length)===n){B=s(B,4+n.length+4)}B=h(B,o);if(B!==undefined){const n=e._kex.sessionID;const s=Buffer.allocUnsafe(4+n.length+C);l(s,n.length,0);s.set(n,4);s.set(new Uint8Array(t.buffer,t.byteOffset,C),4+n.length);f={keyAlgo:o,key:u,signature:B,blob:s,localHostname:g,localUsername:E,hashAlgo:I}}}break}case"keyboard-interactive":i.skipString();f=i.readList();break;default:if(g!==undefined)f=i.readRaw()}i.clear();if(f===undefined){return o(e,"Inbound: Malformed USERAUTH_REQUEST packet")}if(E===undefined)E=g;e._authsQueue.push(g);e._debug&&e._debug(`Inbound: Received USERAUTH_REQUEST (${E})`);const I=e._handlers.USERAUTH_REQUEST;I&&I(e,n,u,g,f)},[f.USERAUTH_FAILURE]:(e,t)=>{i.init(t,1);const n=i.readList();const s=i.readBool();i.clear();if(s===undefined){return o(e,"Inbound: Malformed USERAUTH_FAILURE packet")}e._debug&&e._debug(`Inbound: Received USERAUTH_FAILURE (${n})`);e._authsQueue.shift();const h=e._handlers.USERAUTH_FAILURE;h&&h(e,n,s)},[f.USERAUTH_SUCCESS]:(e,t)=>{e._debug&&e._debug("Inbound: Received USERAUTH_SUCCESS");e._authsQueue.shift();const n=e._handlers.USERAUTH_SUCCESS;n&&n(e)},[f.USERAUTH_BANNER]:(e,t)=>{i.init(t,1);const n=i.readString(true);const s=i.readString();i.clear();if(s===undefined){return o(e,"Inbound: Malformed USERAUTH_BANNER packet")}e._debug&&e._debug("Inbound: Received USERAUTH_BANNER");const h=e._handlers.USERAUTH_BANNER;h&&h(e,n)},60:(e,t)=>{if(!e._authsQueue.length){e._debug&&e._debug("Inbound: Received payload type 60 without auth");return}switch(e._authsQueue[0]){case"password":{i.init(t,1);const n=i.readString(true);const s=i.readString();i.clear();if(s===undefined){return o(e,"Inbound: Malformed USERAUTH_PASSWD_CHANGEREQ packet")}e._debug&&e._debug("Inbound: Received USERAUTH_PASSWD_CHANGEREQ");const h=e._handlers.USERAUTH_PASSWD_CHANGEREQ;h&&h(e,n);break}case"publickey":{i.init(t,1);const n=i.readString(true);const s=i.readString();i.clear();if(s===undefined){return o(e,"Inbound: Malformed USERAUTH_PK_OK packet")}e._debug&&e._debug("Inbound: Received USERAUTH_PK_OK");e._authsQueue.shift();const h=e._handlers.USERAUTH_PK_OK;h&&h(e,n,s);break}case"keyboard-interactive":{i.init(t,1);const n=i.readString(true);const s=i.readString(true);i.readString();const h=i.readUInt32BE();let l;if(h!==undefined){l=new Array(h);let e;for(e=0;e{if(!e._authsQueue.length){e._debug&&e._debug("Inbound: Received payload type 61 without auth");return}if(e._authsQueue[0]!=="keyboard-interactive"){return o(e,"Inbound: Received unexpected payload type 61")}i.init(t,1);const n=i.readUInt32BE();let s;if(n!==undefined){s=new Array(n);let e;for(e=0;e{i.init(t,1);const n=i.readString(true);const s=i.readBool();let h;if(s!==undefined){switch(n){case"tcpip-forward":case"cancel-tcpip-forward":{const e=i.readString(true);const t=i.readUInt32BE();if(t!==undefined)h={bindAddr:e,bindPort:t};break}case"streamlocal-forward@openssh.com":case"cancel-streamlocal-forward@openssh.com":{const e=i.readString(true);if(e!==undefined)h={socketPath:e};break}case"no-more-sessions@openssh.com":h=null;break;case"hostkeys-00@openssh.com":{h=[];while(i.avail()>0){const e=i.readString();if(e===undefined){h=undefined;break}const t=I(e);if(!(t instanceof Error))h.push(t)}break}default:h=i.readRaw()}}i.clear();if(h===undefined){return o(e,"Inbound: Malformed GLOBAL_REQUEST packet")}e._debug&&e._debug(`Inbound: GLOBAL_REQUEST (${n})`);const l=e._handlers.GLOBAL_REQUEST;if(l)l(e,n,s,h);else e.requestFailure()},[f.REQUEST_SUCCESS]:(e,t)=>{const n=t.length>1?s(t,1):null;e._debug&&e._debug("Inbound: REQUEST_SUCCESS");const i=e._handlers.REQUEST_SUCCESS;i&&i(e,n)},[f.REQUEST_FAILURE]:(e,t)=>{e._debug&&e._debug("Inbound: Received REQUEST_FAILURE");const n=e._handlers.REQUEST_FAILURE;n&&n(e)},[f.CHANNEL_OPEN]:(e,t)=>{i.init(t,1);const n=i.readString(true);const s=i.readUInt32BE();const h=i.readUInt32BE();const l=i.readUInt32BE();let g;switch(n){case"forwarded-tcpip":case"direct-tcpip":{const e=i.readString(true);const t=i.readUInt32BE();const o=i.readString(true);const u=i.readUInt32BE();if(u!==undefined){g={type:n,sender:s,window:h,packetSize:l,data:{destIP:e,destPort:t,srcIP:o,srcPort:u}}}break}case"forwarded-streamlocal@openssh.com":case"direct-streamlocal@openssh.com":{const e=i.readString(true);if(e!==undefined){g={type:n,sender:s,window:h,packetSize:l,data:{socketPath:e}}}break}case"x11":{const e=i.readString(true);const t=i.readUInt32BE();if(t!==undefined){g={type:n,sender:s,window:h,packetSize:l,data:{srcIP:e,srcPort:t}}}break}default:g={type:n,sender:s,window:h,packetSize:l,data:{}}}i.clear();if(g===undefined){return o(e,"Inbound: Malformed CHANNEL_OPEN packet")}e._debug&&e._debug(`Inbound: CHANNEL_OPEN (s:${s}, ${n})`);const f=e._handlers.CHANNEL_OPEN;if(f){f(e,g)}else{e.channelOpenFail(g.sender,u.ADMINISTRATIVELY_PROHIBITED,"","")}},[f.CHANNEL_OPEN_CONFIRMATION]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readUInt32BE();const h=i.readUInt32BE();const l=i.readUInt32BE();const u=i.avail()?i.readRaw():undefined;i.clear();if(l===undefined){return o(e,"Inbound: Malformed CHANNEL_OPEN_CONFIRMATION packet")}e._debug&&e._debug(`Inbound: CHANNEL_OPEN_CONFIRMATION (r:${n}, s:${s})`);const g=e._handlers.CHANNEL_OPEN_CONFIRMATION;if(g)g(e,{recipient:n,sender:s,window:h,packetSize:l,data:u})},[f.CHANNEL_OPEN_FAILURE]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readUInt32BE();const h=i.readString(true);const l=i.readString();i.clear();if(l===undefined){return o(e,"Inbound: Malformed CHANNEL_OPEN_FAILURE packet")}e._debug&&e._debug(`Inbound: CHANNEL_OPEN_FAILURE (r:${n})`);const u=e._handlers.CHANNEL_OPEN_FAILURE;u&&u(e,n,s,h)},[f.CHANNEL_WINDOW_ADJUST]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readUInt32BE();i.clear();if(s===undefined){return o(e,"Inbound: Malformed CHANNEL_WINDOW_ADJUST packet")}e._debug&&e._debug(`Inbound: CHANNEL_WINDOW_ADJUST (r:${n}, ${s})`);const h=e._handlers.CHANNEL_WINDOW_ADJUST;h&&h(e,n,s)},[f.CHANNEL_DATA]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readString();i.clear();if(s===undefined){return o(e,"Inbound: Malformed CHANNEL_DATA packet")}e._debug&&e._debug(`Inbound: CHANNEL_DATA (r:${n}, ${s.length})`);const h=e._handlers.CHANNEL_DATA;h&&h(e,n,s)},[f.CHANNEL_EXTENDED_DATA]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readUInt32BE();const h=i.readString();i.clear();if(h===undefined){return o(e,"Inbound: Malformed CHANNEL_EXTENDED_DATA packet")}e._debug&&e._debug(`Inbound: CHANNEL_EXTENDED_DATA (r:${n}, ${h.length})`);const l=e._handlers.CHANNEL_EXTENDED_DATA;l&&l(e,n,h,s)},[f.CHANNEL_EOF]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();i.clear();if(n===undefined){return o(e,"Inbound: Malformed CHANNEL_EOF packet")}e._debug&&e._debug(`Inbound: CHANNEL_EOF (r:${n})`);const s=e._handlers.CHANNEL_EOF;s&&s(e,n)},[f.CHANNEL_CLOSE]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();i.clear();if(n===undefined){return o(e,"Inbound: Malformed CHANNEL_CLOSE packet")}e._debug&&e._debug(`Inbound: CHANNEL_CLOSE (r:${n})`);const s=e._handlers.CHANNEL_CLOSE;s&&s(e,n)},[f.CHANNEL_REQUEST]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readString(true);const h=i.readBool();let l;if(h!==undefined){switch(s){case"exit-status":l=i.readUInt32BE();e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: ${l})`);break;case"exit-signal":{let t;let o;if(e._compatFlags&g.OLD_EXIT){const e=i.readUInt32BE();switch(e){case 1:t="HUP";break;case 2:t="INT";break;case 3:t="QUIT";break;case 6:t="ABRT";break;case 9:t="KILL";break;case 14:t="ALRM";break;case 15:t="TERM";break;default:if(e!==undefined){t=`UNKNOWN (${e})`}}o=false}else{t=i.readString(true);o=i.readBool();if(o===undefined)t=undefined}const h=i.readString(true);if(i.skipString()!==undefined)l={signal:t,coreDumped:o,errorMessage:h};e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: ${t})`);break}case"pty-req":{const t=i.readString(true);const o=i.readUInt32BE();const h=i.readUInt32BE();const u=i.readUInt32BE();const g=i.readUInt32BE();const f=i.readString();if(f!==undefined){i.init(f,1);let e={};while(i.avail()){const t=i.readByte();if(t===E.TTY_OP_END)break;const n=C[t];const s=i.readUInt32BE();if(t===undefined||n===undefined||s===undefined){e=undefined;break}e[n]=s}if(e!==undefined)l={term:t,cols:o,rows:h,width:u,height:g,modes:e}}e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s})`);break}case"window-change":{const t=i.readUInt32BE();const o=i.readUInt32BE();const h=i.readUInt32BE();const u=i.readUInt32BE();if(u!==undefined)l={cols:t,rows:o,width:h,height:u};e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s})`);break}case"x11-req":{const t=i.readBool();const o=i.readString(true);const h=i.readString();const u=i.readUInt32BE();if(u!==undefined)l={single:t,protocol:o,cookie:h,screen:u};e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s})`);break}case"env":{const t=i.readString(true);const o=i.readString(true);if(o!==undefined)l={name:t,value:o};if(e._debug){e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: `+`${t}=${o})`)}break}case"shell":l=null;e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s})`);break;case"exec":l=i.readString(true);e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: ${l})`);break;case"subsystem":l=i.readString(true);e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: ${l})`);break;case"signal":l=i.readString(true);e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: ${l})`);break;case"xon-xoff":l=i.readBool();e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: ${l})`);break;case"auth-agent-req@openssh.com":l=null;e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s})`);break;default:l=i.avail()?i.readRaw():null;e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s})`)}}i.clear();if(l===undefined){return o(e,"Inbound: Malformed CHANNEL_REQUEST packet")}const u=e._handlers.CHANNEL_REQUEST;u&&u(e,n,s,h,l)},[f.CHANNEL_SUCCESS]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();i.clear();if(n===undefined){return o(e,"Inbound: Malformed CHANNEL_SUCCESS packet")}e._debug&&e._debug(`Inbound: CHANNEL_SUCCESS (r:${n})`);const s=e._handlers.CHANNEL_SUCCESS;s&&s(e,n)},[f.CHANNEL_FAILURE]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();i.clear();if(n===undefined){return o(e,"Inbound: Malformed CHANNEL_FAILURE packet")}e._debug&&e._debug(`Inbound: CHANNEL_FAILURE (r:${n})`);const s=e._handlers.CHANNEL_FAILURE;s&&s(e,n)}}},4126:(e,t,n)=>{"use strict";const{createDiffieHellman:s,createDiffieHellmanGroup:i,createECDH:o,createHash:h,createPublicKey:l,diffieHellman:u,generateKeyPairSync:g,randomFillSync:f}=n(6113);const{Ber:E}=n(970);const{COMPAT:I,curve25519Supported:C,DEFAULT_KEX:B,DEFAULT_SERVER_HOST_KEY:Q,DEFAULT_CIPHER:p,DEFAULT_MAC:y,DEFAULT_COMPRESSION:w,DISCONNECT_REASON:b,MESSAGE:R}=n(6832);const{CIPHER_INFO:k,createCipher:_,createDecipher:D,MAC_INFO:U}=n(5708);const{parseDERKey:L}=n(2218);const{bufferFill:v,bufferParser:T,convertSignature:O,doFatalError:P,FastBuffer:x,sigSSHToASN1:Y,writeUInt32BE:G}=n(9475);const{PacketReader:J,PacketWriter:W,ZlibPacketReader:V,ZlibPacketWriter:q}=n(6715);let j;const z=2048;const $=8192;const ee=Buffer.alloc(0);function kexinit(e){let t;if(e._compatFlags&I.BAD_DHGEX){const n=e._offer.lists.kex;let s=n.array;let i=false;for(let e=0;eS cipher: ${Q}`);E&&E(`Handshake: (remote) C->S cipher: ${h.cs.cipher}`);if(e._server){g=Q;u=h.cs.cipher}else{g=h.cs.cipher;u=Q}for(f=0;fS cipher");return P(e,"Handshake failed: no matching C->S cipher","handshake",b.KEY_EXCHANGE_FAILED)}n.cs.cipher=u[f];E&&E(`Handshake: C->S Cipher: ${u[f]}`);const p=o.lists.sc.cipher.array;E&&E(`Handshake: (local) S->C cipher: ${p}`);E&&E(`Handshake: (remote) S->C cipher: ${h.sc.cipher}`);if(e._server){g=p;u=h.sc.cipher}else{g=h.sc.cipher;u=p}for(f=0;fC cipher");return P(e,"Handshake failed: no matching S->C cipher","handshake",b.KEY_EXCHANGE_FAILED)}n.sc.cipher=u[f];E&&E(`Handshake: S->C cipher: ${u[f]}`);const y=o.lists.cs.mac.array;E&&E(`Handshake: (local) C->S MAC: ${y}`);E&&E(`Handshake: (remote) C->S MAC: ${h.cs.mac}`);if(k[n.cs.cipher].authLen>0){n.cs.mac="";E&&E("Handshake: C->S MAC: ")}else{if(e._server){g=y;u=h.cs.mac}else{g=h.cs.mac;u=y}for(f=0;fS MAC");return P(e,"Handshake failed: no matching C->S MAC","handshake",b.KEY_EXCHANGE_FAILED)}n.cs.mac=u[f];E&&E(`Handshake: C->S MAC: ${u[f]}`)}const w=o.lists.sc.mac.array;E&&E(`Handshake: (local) S->C MAC: ${w}`);E&&E(`Handshake: (remote) S->C MAC: ${h.sc.mac}`);if(k[n.sc.cipher].authLen>0){n.sc.mac="";E&&E("Handshake: S->C MAC: ")}else{if(e._server){g=w;u=h.sc.mac}else{g=h.sc.mac;u=w}for(f=0;fC MAC");return P(e,"Handshake failed: no matching S->C MAC","handshake",b.KEY_EXCHANGE_FAILED)}n.sc.mac=u[f];E&&E(`Handshake: S->C MAC: ${u[f]}`)}const R=o.lists.cs.compress.array;E&&E(`Handshake: (local) C->S compression: ${R}`);E&&E(`Handshake: (remote) C->S compression: ${h.cs.compress}`);if(e._server){g=R;u=h.cs.compress}else{g=h.cs.compress;u=R}for(f=0;fS compression");return P(e,"Handshake failed: no matching C->S compression","handshake",b.KEY_EXCHANGE_FAILED)}n.cs.compress=u[f];E&&E(`Handshake: C->S compression: ${u[f]}`);const _=o.lists.sc.compress.array;E&&E(`Handshake: (local) S->C compression: ${_}`);E&&E(`Handshake: (remote) S->C compression: ${h.sc.compress}`);if(e._server){g=_;u=h.sc.compress}else{g=h.sc.compress;u=_}for(f=0;fC compression");return P(e,"Handshake failed: no matching S->C compression","handshake",b.KEY_EXCHANGE_FAILED)}n.sc.compress=u[f];E&&E(`Handshake: S->C compression: ${u[f]}`);n.cs.lang="";n.sc.lang="";if(e._kex){if(!e._kexinit){kexinit(e)}e._decipher._onPayload=onKEXPayload.bind(e,{firstPacket:false})}e._kex=te(n,e,t);e._kex.remoteExtInfoEnabled=C;e._kex.start()}const te=(()=>{function convertToMpint(e){let t=0;let n=e.length;while(e[t]===0){++t;--n}let s;if(e[t]&128){s=Buffer.allocUnsafe(1+n);s[0]=0;e.copy(s,1,t);e=s}else if(n!==e.length){s=Buffer.allocUnsafe(n);e.copy(s,0,t);e=s}return e}class KeyExchange{constructor(e,t,n){this._protocol=t;this.sessionID=t._kex?t._kex.sessionID:undefined;this.negotiated=e;this.remoteExtInfoEnabled=false;this._step=1;this._public=null;this._dh=null;this._sentNEWKEYS=false;this._receivedNEWKEYS=false;this._finished=false;this._hostVerified=false;this._kexinit=t._kexinit;this._remoteKexinit=n;this._identRaw=t._identRaw;this._remoteIdentRaw=t._remoteIdentRaw;this._hostKey=undefined;this._dhData=undefined;this._sig=undefined}finish(e){if(this._finished)return false;this._finished=true;const t=this._protocol._server;const n=this.negotiated;const s=this.convertPublicKey(this._dhData);let i=this.computeSecret(this._dhData);if(i instanceof Error){i.message=`Error while computing DH secret (${this.type}): ${i.message}`;i.level="handshake";return P(this._protocol,i,b.KEY_EXCHANGE_FAILED)}const o=h(this.hashName);re(o,t?this._remoteIdentRaw:this._identRaw);re(o,t?this._identRaw:this._remoteIdentRaw);re(o,t?this._remoteKexinit:this._kexinit);re(o,t?this._kexinit:this._remoteKexinit);const l=t?this._hostKey.getPublicSSH():this._hostKey;re(o,l);if(this.type==="groupex"){const e=this.getDHParams();const t=Buffer.allocUnsafe(4);G(t,this._minBits,0);o.update(t);G(t,this._prefBits,0);o.update(t);G(t,this._maxBits,0);o.update(t);re(o,e.prime);re(o,e.generator)}re(o,t?s:this.getPublicKey());const u=t?this.getPublicKey():s;re(o,u);re(o,i);const g=o.digest();if(!t){T.init(this._sig,0);const e=T.readString(true);if(!e){return P(this._protocol,"Malformed packet while reading signature","handshake",b.KEY_EXCHANGE_FAILED)}if(e!==n.serverHostKey){return P(this._protocol,`Wrong signature type: ${e}, `+`expected: ${n.serverHostKey}`,"handshake",b.KEY_EXCHANGE_FAILED)}let t=T.readString();T.clear();if(t===undefined){return P(this._protocol,"Malformed packet while reading signature","handshake",b.KEY_EXCHANGE_FAILED)}if(!(t=Y(t,e))){return P(this._protocol,"Malformed signature","handshake",b.KEY_EXCHANGE_FAILED)}let s;{T.init(this._hostKey,0);const e=T.readString(true);const t=this._hostKey.slice(T.pos());T.clear();s=L(t,e);if(s instanceof Error){s.level="handshake";return P(this._protocol,s,b.KEY_EXCHANGE_FAILED)}}let i;switch(this.negotiated.serverHostKey){case"rsa-sha2-256":i="sha256";break;case"rsa-sha2-512":i="sha512";break}this._protocol._debug&&this._protocol._debug("Verifying signature ...");const o=s.verify(g,t,i);if(o!==true){if(o instanceof Error){this._protocol._debug&&this._protocol._debug(`Signature verification failed: ${o.stack}`)}else{this._protocol._debug&&this._protocol._debug("Signature verification failed")}return P(this._protocol,"Handshake failed: signature verification failed","handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Verified signature")}else{let e;switch(this.negotiated.serverHostKey){case"rsa-sha2-256":e="sha256";break;case"rsa-sha2-512":e="sha512";break}this._protocol._debug&&this._protocol._debug("Generating signature ...");let t=this._hostKey.sign(g,e);if(t instanceof Error){return P(this._protocol,"Handshake failed: signature generation failed for "+`${this._hostKey.type} host key: ${t.message}`,"handshake",b.KEY_EXCHANGE_FAILED)}t=O(t,this._hostKey.type);if(t===false){return P(this._protocol,"Handshake failed: signature conversion failed for "+`${this._hostKey.type} host key`,"handshake",b.KEY_EXCHANGE_FAILED)}const n=this.negotiated.serverHostKey;const s=Buffer.byteLength(n);const i=4+s+4+t.length;let o=this._protocol._packetRW.write.allocStartKEX;const h=this._protocol._packetRW.write.alloc(1+4+l.length+4+u.length+4+i,true);h[o]=R.KEXDH_REPLY;G(h,l.length,++o);h.set(l,o+=4);G(h,u.length,o+=l.length);h.set(u,o+=4);G(h,i,o+=u.length);G(h,s,o+=4);h.utf8Write(n,o+=4,s);G(h,t.length,o+=s);h.set(t,o+=4);if(this._protocol._debug){let e;switch(this.type){case"group":e="KEXDH_REPLY";break;case"groupex":e="KEXDH_GEX_REPLY";break;default:e="KEXECDH_REPLY"}this._protocol._debug(`Outbound: Sending ${e}`)}this._protocol._cipher.encrypt(this._protocol._packetRW.write.finalize(h,true))}if(t||!e)trySendNEWKEYS(this);let f;let E;const completeHandshake=e=>{if(f){trySendNEWKEYS(this);f.outbound.seqno=this._protocol._cipher.outSeqno;this._protocol._cipher.free();this._protocol._cipher=_(f);this._protocol._packetRW.write=E;f=undefined;E=undefined;this._protocol._onHandshakeComplete(n);return false}if(!this.sessionID)this.sessionID=g;{const e=Buffer.allocUnsafe(4+i.length);G(e,i.length,0);e.set(i,4);i=e}const s=k[n.cs.cipher];const o=k[n.sc.cipher];const h=generateKEXVal(s.ivLen,this.hashName,i,g,this.sessionID,"A");const l=generateKEXVal(o.ivLen,this.hashName,i,g,this.sessionID,"B");const u=generateKEXVal(s.keyLen,this.hashName,i,g,this.sessionID,"C");const I=generateKEXVal(o.keyLen,this.hashName,i,g,this.sessionID,"D");let C;let B;if(!s.authLen){C=U[n.cs.mac];B=generateKEXVal(C.len,this.hashName,i,g,this.sessionID,"E")}let Q;let p;if(!o.authLen){Q=U[n.sc.mac];p=generateKEXVal(Q.len,this.hashName,i,g,this.sessionID,"F")}const y={inbound:{onPayload:this._protocol._onPayload,seqno:this._protocol._decipher.inSeqno,decipherInfo:!t?o:s,decipherIV:!t?l:h,decipherKey:!t?I:u,macInfo:!t?Q:C,macKey:!t?p:B},outbound:{onWrite:this._protocol._onWrite,seqno:this._protocol._cipher.outSeqno,cipherInfo:t?o:s,cipherIV:t?l:h,cipherKey:t?I:u,macInfo:t?Q:C,macKey:t?p:B}};this._protocol._decipher.free();f=y;this._protocol._decipher=D(y);const w={read:undefined,write:undefined};switch(n.cs.compress){case"zlib":if(t)w.read=new V;else w.write=new q(this._protocol);break;case"zlib@openssh.com":if(this._protocol._authenticated){if(t)w.read=new V;else w.write=new q(this._protocol);break}default:if(t)w.read=new J;else w.write=new W(this._protocol)}switch(n.sc.compress){case"zlib":if(t)w.write=new q(this._protocol);else w.read=new V;break;case"zlib@openssh.com":if(this._protocol._authenticated){if(t)w.write=new q(this._protocol);else w.read=new V;break}default:if(t)w.write=new W(this._protocol);else w.read=new J}this._protocol._packetRW.read.cleanup();this._protocol._packetRW.write.cleanup();this._protocol._packetRW.read=w.read;E=w.write;this._public=null;this._dh=null;this._kexinit=this._protocol._kexinit=undefined;this._remoteKexinit=undefined;this._identRaw=undefined;this._remoteIdentRaw=undefined;this._hostKey=undefined;this._dhData=undefined;this._sig=undefined;if(!e)return completeHandshake();return false};if(t||e)this.finish=completeHandshake;if(!t)return completeHandshake(e)}start(){if(!this._protocol._server){if(this._protocol._debug){let e;switch(this.type){case"group":e="KEXDH_INIT";break;default:e="KEXECDH_INIT"}this._protocol._debug(`Outbound: Sending ${e}`)}const e=this.getPublicKey();let t=this._protocol._packetRW.write.allocStartKEX;const n=this._protocol._packetRW.write.alloc(1+4+e.length,true);n[t]=R.KEXDH_INIT;G(n,e.length,++t);n.set(e,t+=4);this._protocol._cipher.encrypt(this._protocol._packetRW.write.finalize(n,true))}}getPublicKey(){this.generateKeys();const e=this._public;if(e)return this.convertPublicKey(e)}convertPublicKey(e){let t;let n=0;let s=e.length;while(e[n]===0){++n;--s}if(e[n]&128){t=Buffer.allocUnsafe(1+s);t[0]=0;e.copy(t,1,n);return t}if(s!==e.length){t=Buffer.allocUnsafe(s);e.copy(t,0,n);e=t}return e}computeSecret(e){this.generateKeys();try{return convertToMpint(this._dh.computeSecret(e))}catch(e){return e}}parse(e){const t=e[0];switch(this._step){case 1:if(this._protocol._server){if(t!==R.KEXDH_INIT){return P(this._protocol,`Received packet ${t} instead of ${R.KEXDH_INIT}`,"handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Received DH Init");T.init(e,1);const n=T.readString();T.clear();if(n===undefined){return P(this._protocol,"Received malformed KEX*_INIT","handshake",b.KEY_EXCHANGE_FAILED)}this._dhData=n;let s=this._protocol._hostKeys[this.negotiated.serverHostKey];if(Array.isArray(s))s=s[0];this._hostKey=s;this.finish()}else{if(t!==R.KEXDH_REPLY){return P(this._protocol,`Received packet ${t} instead of ${R.KEXDH_REPLY}`,"handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Received DH Reply");T.init(e,1);let n;let s;let i;if((n=T.readString())===undefined||(s=T.readString())===undefined||(i=T.readString())===undefined){T.clear();return P(this._protocol,"Received malformed KEX*_REPLY","handshake",b.KEY_EXCHANGE_FAILED)}T.clear();T.init(n,0);const o=T.readString(true);T.clear();if(o===undefined){return P(this._protocol,"Received malformed host public key","handshake",b.KEY_EXCHANGE_FAILED)}if(o!==this.negotiated.serverHostKey){switch(this.negotiated.serverHostKey){case"rsa-sha2-256":case"rsa-sha2-512":if(o==="ssh-rsa")break;default:return P(this._protocol,"Host key does not match negotiated type","handshake",b.KEY_EXCHANGE_FAILED)}}this._hostKey=n;this._dhData=s;this._sig=i;let h=false;let l;if(this._protocol._hostVerifier===undefined){l=true;this._protocol._debug&&this._protocol._debug("Host accepted by default (no verification)")}else{l=this._protocol._hostVerifier(n,(e=>{if(h)return;h=true;if(e===false){this._protocol._debug&&this._protocol._debug("Host denied (verification failed)");return P(this._protocol,"Host denied (verification failed)","handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Host accepted (verified)");this._hostVerified=true;if(this._receivedNEWKEYS)this.finish();else trySendNEWKEYS(this)}))}if(l===undefined){++this._step;return}h=true;if(l===false){this._protocol._debug&&this._protocol._debug("Host denied (verification failed)");return P(this._protocol,"Host denied (verification failed)","handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Host accepted (verified)");this._hostVerified=true;trySendNEWKEYS(this)}++this._step;break;case 2:if(t!==R.NEWKEYS){return P(this._protocol,`Received packet ${t} instead of ${R.NEWKEYS}`,"handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Inbound: NEWKEYS");this._receivedNEWKEYS=true;++this._step;return this.finish(!this._protocol._server&&!this._hostVerified);default:return P(this._protocol,`Received unexpected packet ${t} after NEWKEYS`,"handshake",b.KEY_EXCHANGE_FAILED)}}}class Curve25519Exchange extends KeyExchange{constructor(e,...t){super(...t);this.type="25519";this.hashName=e;this._keys=null}generateKeys(){if(!this._keys)this._keys=g("x25519")}getPublicKey(){this.generateKeys();const e=this._keys.publicKey.export({type:"spki",format:"der"});return e.slice(-32)}convertPublicKey(e){let t;let n=0;let s=e.length;while(e[n]===0){++n;--s}if(e.length===32)return e;if(s!==e.length){t=Buffer.allocUnsafe(s);e.copy(t,0,n);e=t}return e}computeSecret(e){this.generateKeys();try{const t=new E.Writer;t.startSequence();t.startSequence();t.writeOID("1.3.101.110");t.endSequence();t.startSequence(E.BitString);t.writeByte(0);t._ensure(e.length);e.copy(t._buf,t._offset,0,e.length);t._offset+=e.length;t.endSequence();t.endSequence();return convertToMpint(u({privateKey:this._keys.privateKey,publicKey:l({key:t.buffer,type:"spki",format:"der"})}))}catch(e){return e}}}class ECDHExchange extends KeyExchange{constructor(e,t,...n){super(...n);this.type="ecdh";this.curveName=e;this.hashName=t}generateKeys(){if(!this._dh){this._dh=o(this.curveName);this._public=this._dh.generateKeys()}}}class DHGroupExchange extends KeyExchange{constructor(e,...t){super(...t);this.type="groupex";this.hashName=e;this._prime=null;this._generator=null;this._minBits=z;this._prefBits=dhEstimate(this.negotiated);if(this._protocol._compatFlags&I.BUG_DHGEX_LARGE)this._prefBits=Math.min(this._prefBits,4096);this._maxBits=$}start(){if(this._protocol._server)return;this._protocol._debug&&this._protocol._debug("Outbound: Sending KEXDH_GEX_REQUEST");let e=this._protocol._packetRW.write.allocStartKEX;const t=this._protocol._packetRW.write.alloc(1+4+4+4,true);t[e]=R.KEXDH_GEX_REQUEST;G(t,this._minBits,++e);G(t,this._prefBits,e+=4);G(t,this._maxBits,e+=4);this._protocol._cipher.encrypt(this._protocol._packetRW.write.finalize(t,true))}generateKeys(){if(!this._dh&&this._prime&&this._generator){this._dh=s(this._prime,this._generator);this._public=this._dh.generateKeys()}}setDHParams(e,t){if(!Buffer.isBuffer(e))throw new Error("Invalid prime value");if(!Buffer.isBuffer(t))throw new Error("Invalid generator value");this._prime=e;this._generator=t}getDHParams(){if(this._dh){return{prime:convertToMpint(this._dh.getPrime()),generator:convertToMpint(this._dh.getGenerator())}}}parse(e){const t=e[0];switch(this._step){case 1:{if(this._protocol._server){if(t!==R.KEXDH_GEX_REQUEST){return P(this._protocol,`Received packet ${t} instead of `+R.KEXDH_GEX_REQUEST,"handshake",b.KEY_EXCHANGE_FAILED)}return P(this._protocol,"Group exchange not implemented for server","handshake",b.KEY_EXCHANGE_FAILED)}if(t!==R.KEXDH_GEX_GROUP){return P(this._protocol,`Received packet ${t} instead of ${R.KEXDH_GEX_GROUP}`,"handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Received DH GEX Group");T.init(e,1);let n;let s;if((n=T.readString())===undefined||(s=T.readString())===undefined){T.clear();return P(this._protocol,"Received malformed KEXDH_GEX_GROUP","handshake",b.KEY_EXCHANGE_FAILED)}T.clear();this.setDHParams(n,s);this.generateKeys();const i=this.getPublicKey();this._protocol._debug&&this._protocol._debug("Outbound: Sending KEXDH_GEX_INIT");let o=this._protocol._packetRW.write.allocStartKEX;const h=this._protocol._packetRW.write.alloc(1+4+i.length,true);h[o]=R.KEXDH_GEX_INIT;G(h,i.length,++o);h.set(i,o+=4);this._protocol._cipher.encrypt(this._protocol._packetRW.write.finalize(h,true));++this._step;break}case 2:if(this._protocol._server){if(t!==R.KEXDH_GEX_INIT){return P(this._protocol,`Received packet ${t} instead of ${R.KEXDH_GEX_INIT}`,"handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Received DH GEX Init");return P(this._protocol,"Group exchange not implemented for server","handshake",b.KEY_EXCHANGE_FAILED)}else if(t!==R.KEXDH_GEX_REPLY){return P(this._protocol,`Received packet ${t} instead of ${R.KEXDH_GEX_REPLY}`,"handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Received DH GEX Reply");this._step=1;e[0]=R.KEXDH_REPLY;this.parse=KeyExchange.prototype.parse;this.parse(e)}}}class DHExchange extends KeyExchange{constructor(e,t,...n){super(...n);this.type="group";this.groupName=e;this.hashName=t}start(){if(!this._protocol._server){this._protocol._debug&&this._protocol._debug("Outbound: Sending KEXDH_INIT");const e=this.getPublicKey();let t=this._protocol._packetRW.write.allocStartKEX;const n=this._protocol._packetRW.write.alloc(1+4+e.length,true);n[t]=R.KEXDH_INIT;G(n,e.length,++t);n.set(e,t+=4);this._protocol._cipher.encrypt(this._protocol._packetRW.write.finalize(n,true))}}generateKeys(){if(!this._dh){this._dh=i(this.groupName);this._public=this._dh.generateKeys()}}getDHParams(){if(this._dh){return{prime:convertToMpint(this._dh.getPrime()),generator:convertToMpint(this._dh.getGenerator())}}}}return(e,...t)=>{if(typeof e!=="object"||e===null)throw new Error("Invalid negotiated argument");const n=e.kex;if(typeof n==="string"){t=[e,...t];switch(n){case"curve25519-sha256":case"curve25519-sha256@libssh.org":if(!C)break;return new Curve25519Exchange("sha256",...t);case"ecdh-sha2-nistp256":return new ECDHExchange("prime256v1","sha256",...t);case"ecdh-sha2-nistp384":return new ECDHExchange("secp384r1","sha384",...t);case"ecdh-sha2-nistp521":return new ECDHExchange("secp521r1","sha512",...t);case"diffie-hellman-group1-sha1":return new DHExchange("modp2","sha1",...t);case"diffie-hellman-group14-sha1":return new DHExchange("modp14","sha1",...t);case"diffie-hellman-group14-sha256":return new DHExchange("modp14","sha256",...t);case"diffie-hellman-group15-sha512":return new DHExchange("modp15","sha512",...t);case"diffie-hellman-group16-sha512":return new DHExchange("modp16","sha512",...t);case"diffie-hellman-group17-sha512":return new DHExchange("modp17","sha512",...t);case"diffie-hellman-group18-sha512":return new DHExchange("modp18","sha512",...t);case"diffie-hellman-group-exchange-sha1":return new DHGroupExchange("sha1",...t);case"diffie-hellman-group-exchange-sha256":return new DHGroupExchange("sha256",...t)}throw new Error(`Unsupported key exchange algorithm: ${n}`)}throw new Error(`Invalid key exchange type: ${n}`)}})();const Ae=(()=>{const e=["kex","serverHostKey",["cs","cipher"],["sc","cipher"],["cs","mac"],["sc","mac"],["cs","compress"],["sc","compress"],["cs","lang"],["sc","lang"]];return class KexInit{constructor(t){if(typeof t!=="object"||t===null)throw new TypeError("Argument must be an object");const n={kex:undefined,serverHostKey:undefined,cs:{cipher:undefined,mac:undefined,compress:undefined,lang:undefined},sc:{cipher:undefined,mac:undefined,compress:undefined,lang:undefined},all:undefined};let s=0;for(const i of e){let e;let o;let h;let l;if(typeof i==="string"){e=n;o=t[i];h=l=i}else{const s=i[0];e=n[s];l=i[1];o=t[s][l];h=`${s}.${l}`}const u={array:undefined,buffer:undefined};if(Buffer.isBuffer(o)){u.array=(""+o).split(",");u.buffer=o;s+=4+o.length}else{if(typeof o==="string")o=o.split(",");if(Array.isArray(o)){u.array=o;u.buffer=Buffer.from(o.join(","))}else{throw new TypeError(`Invalid \`${h}\` type: ${typeof o}`)}s+=4+u.buffer.length}e[l]=u}const i=Buffer.allocUnsafe(s);n.all=i;let o=0;for(const t of e){let e;if(typeof t==="string")e=n[t].buffer;else e=n[t[0]][t[1]].buffer;o=G(i,e.length,o);i.set(e,o);o+=e.length}this.totalSize=s;this.lists=n}copyAllTo(e,t){const n=this.lists.all;if(typeof t!=="number")throw new TypeError(`Invalid offset value: ${typeof t}`);if(e.length-t{const e=Buffer.allocUnsafe(4);return(t,n)=>{G(e,n.length,0);t.update(e);t.update(n)}})();function generateKEXVal(e,t,n,s,i,o){let l;if(e){let u=h(t).update(n).update(s).update(o).update(i).digest();while(u.length49){return P(this,`Received unexpected packet type ${s}`,"handshake",b.KEY_EXCHANGE_FAILED)}}return this._kex.parse(t)}function dhEstimate(e){const t=k[e.cs.cipher];const n=k[e.sc.cipher];const s=Math.max(0,t.sslName==="des-ede3-cbc"?14:t.keyLen,t.blockLen,t.ivLen,n.sslName==="des-ede3-cbc"?14:n.keyLen,n.blockLen,n.ivLen)*8;if(s<=112)return 2048;if(s<=128)return 3072;if(s<=192)return 7680;return 8192}function trySendNEWKEYS(e){if(!e._sentNEWKEYS){e._protocol._debug&&e._protocol._debug("Outbound: Sending NEWKEYS");const t=e._protocol._packetRW.write.allocStartKEX;const n=e._protocol._packetRW.write.alloc(1,true);n[t]=R.NEWKEYS;e._protocol._cipher.encrypt(e._protocol._packetRW.write.finalize(n,true));e._sentNEWKEYS=true}}e.exports={KexInit:Ae,kexinit:kexinit,onKEXPayload:onKEXPayload,DEFAULT_KEXINIT_CLIENT:new Ae({kex:B.concat(["ext-info-c"]),serverHostKey:Q,cs:{cipher:p,mac:y,compress:w,lang:[]},sc:{cipher:p,mac:y,compress:w,lang:[]}}),DEFAULT_KEXINIT_SERVER:new Ae({kex:B,serverHostKey:Q,cs:{cipher:p,mac:y,compress:w,lang:[]},sc:{cipher:p,mac:y,compress:w,lang:[]}}),HANDLERS:{[R.KEXINIT]:handleKexInit}}},2218:(e,t,n)=>{"use strict";const{createDecipheriv:s,createECDH:i,createHash:o,createHmac:h,createSign:l,createVerify:u,getCiphers:g,sign:f,verify:E}=n(6113);const I=g();const{Ber:C}=n(970);const B=n(5447).pbkdf;const{CIPHER_INFO:Q}=n(5708);const{eddsaSupported:p,SUPPORTED_CIPHER:y}=n(6832);const{bufferSlice:w,makeBufferParser:b,readString:R,readUInt32BE:k,writeUInt32BE:_}=n(9475);const D=Symbol("Hash Algorithm");const U=Symbol("Private key PEM");const L=Symbol("Public key PEM");const v=Symbol("Public key SSH");const T=Symbol("Decrypted Key");const O=Object.create(null);{const e=Object.keys(Q);for(let t=0;t=n||t<4)return false;const i=k(e,s);if(t<4+i)return false;s+=4+i}e._pos=s;return true}function genOpenSSLRSAPub(e,t){const n=new C.Writer;n.startSequence();n.startSequence();n.writeOID("1.2.840.113549.1.1.1");n.writeNull();n.endSequence();n.startSequence(C.BitString);n.writeByte(0);n.startSequence();n.writeBuffer(e,C.Integer);n.writeBuffer(t,C.Integer);n.endSequence();n.endSequence();n.endSequence();return makePEM("PUBLIC",n.buffer)}function genOpenSSHRSAPub(e,t){const n=Buffer.allocUnsafe(4+7+4+t.length+4+e.length);_(n,7,0);n.utf8Write("ssh-rsa",4,7);let s=4+7;_(n,t.length,s);n.set(t,s+=4);_(n,e.length,s+=t.length);n.set(e,s+4);return n}const x=(()=>{function genRSAASN1Buf(e,t,n,s,i,o,h,l){const u=new C.Writer;u.startSequence();u.writeInt(0,C.Integer);u.writeBuffer(e,C.Integer);u.writeBuffer(t,C.Integer);u.writeBuffer(n,C.Integer);u.writeBuffer(s,C.Integer);u.writeBuffer(i,C.Integer);u.writeBuffer(o,C.Integer);u.writeBuffer(h,C.Integer);u.writeBuffer(l,C.Integer);u.endSequence();return u.buffer}function bigIntFromBuffer(e){return BigInt(`0x${e.hexSlice(0,e.length)}`)}function bigIntToBuffer(e){let t=e.toString(16);if((t.length&1)!==0){t=`0${t}`}else{const e=t.charCodeAt(0);if(e===56||e===57||e>=97&&e<=102){t=`00${t}`}}return Buffer.from(t,"hex")}return function genOpenSSLRSAPriv(e,t,n,s,i,o){const h=bigIntFromBuffer(n);const l=bigIntToBuffer(h%(bigIntFromBuffer(i)-1n));const u=bigIntToBuffer(h%(bigIntFromBuffer(o)-1n));return makePEM("RSA PRIVATE",genRSAASN1Buf(e,t,n,i,o,l,u,s))}})();function genOpenSSLDSAPub(e,t,n,s){const i=new C.Writer;i.startSequence();i.startSequence();i.writeOID("1.2.840.10040.4.1");i.startSequence();i.writeBuffer(e,C.Integer);i.writeBuffer(t,C.Integer);i.writeBuffer(n,C.Integer);i.endSequence();i.endSequence();i.startSequence(C.BitString);i.writeByte(0);i.writeBuffer(s,C.Integer);i.endSequence();i.endSequence();return makePEM("PUBLIC",i.buffer)}function genOpenSSHDSAPub(e,t,n,s){const i=Buffer.allocUnsafe(4+7+4+e.length+4+t.length+4+n.length+4+s.length);_(i,7,0);i.utf8Write("ssh-dss",4,7);let o=4+7;_(i,e.length,o);i.set(e,o+=4);_(i,t.length,o+=e.length);i.set(t,o+=4);_(i,n.length,o+=t.length);i.set(n,o+=4);_(i,s.length,o+=n.length);i.set(s,o+4);return i}function genOpenSSLDSAPriv(e,t,n,s,i){const o=new C.Writer;o.startSequence();o.writeInt(0,C.Integer);o.writeBuffer(e,C.Integer);o.writeBuffer(t,C.Integer);o.writeBuffer(n,C.Integer);o.writeBuffer(s,C.Integer);o.writeBuffer(i,C.Integer);o.endSequence();return makePEM("DSA PRIVATE",o.buffer)}function genOpenSSLEdPub(e){const t=new C.Writer;t.startSequence();t.startSequence();t.writeOID("1.3.101.112");t.endSequence();t.startSequence(C.BitString);t.writeByte(0);t._ensure(e.length);t._buf.set(e,t._offset);t._offset+=e.length;t.endSequence();t.endSequence();return makePEM("PUBLIC",t.buffer)}function genOpenSSHEdPub(e){const t=Buffer.allocUnsafe(4+11+4+e.length);_(t,11,0);t.utf8Write("ssh-ed25519",4,11);_(t,e.length,15);t.set(e,19);return t}function genOpenSSLEdPriv(e){const t=new C.Writer;t.startSequence();t.writeInt(0,C.Integer);t.startSequence();t.writeOID("1.3.101.112");t.endSequence();t.startSequence(C.OctetString);t.writeBuffer(e,C.OctetString);t.endSequence();t.endSequence();return makePEM("PRIVATE",t.buffer)}function genOpenSSLECDSAPub(e,t){const n=new C.Writer;n.startSequence();n.startSequence();n.writeOID("1.2.840.10045.2.1");n.writeOID(e);n.endSequence();n.startSequence(C.BitString);n.writeByte(0);n._ensure(t.length);n._buf.set(t,n._offset);n._offset+=t.length;n.endSequence();n.endSequence();return makePEM("PUBLIC",n.buffer)}function genOpenSSHECDSAPub(e,t){let n;switch(e){case"1.2.840.10045.3.1.7":n="nistp256";break;case"1.3.132.0.34":n="nistp384";break;case"1.3.132.0.35":n="nistp521";break;default:return}const s=Buffer.allocUnsafe(4+19+4+8+4+t.length);_(s,19,0);s.utf8Write(`ecdsa-sha2-${n}`,4,19);_(s,8,23);s.utf8Write(n,27,8);_(s,t.length,35);s.set(t,39);return s}function genOpenSSLECDSAPriv(e,t,n){const s=new C.Writer;s.startSequence();s.writeInt(1,C.Integer);s.writeBuffer(n,C.OctetString);s.startSequence(160);s.writeOID(e);s.endSequence();s.startSequence(161);s.startSequence(C.BitString);s.writeByte(0);s._ensure(t.length);s._buf.set(t,s._offset);s._offset+=t.length;s.endSequence();s.endSequence();s.endSequence();return makePEM("EC PRIVATE",s.buffer)}function genOpenSSLECDSAPubFromPriv(e,t){const n=i(e);n.setPrivateKey(t);return n.getPublicKey()}const Y={sign:(()=>{if(typeof f==="function"){return function sign(e,t){const n=this[U];if(n===null)return new Error("No private key available");if(!t||typeof t!=="string")t=this[D];try{return f(t,e,n)}catch(e){return e}}}return function sign(e,t){const n=this[U];if(n===null)return new Error("No private key available");if(!t||typeof t!=="string")t=this[D];const s=l(t);s.update(e);try{return s.sign(n)}catch(e){return e}}})(),verify:(()=>{if(typeof E==="function"){return function verify(e,t,n){const s=this[L];if(s===null)return new Error("No public key available");if(!n||typeof n!=="string")n=this[D];try{return E(n,e,s,t)}catch(e){return e}}}return function verify(e,t,n){const s=this[L];if(s===null)return new Error("No public key available");if(!n||typeof n!=="string")n=this[D];const i=u(n);i.update(e);try{return i.verify(s,t)}catch(e){return e}}})(),isPrivateKey:function isPrivateKey(){return this[U]!==null},getPrivatePEM:function getPrivatePEM(){return this[U]},getPublicPEM:function getPublicPEM(){return this[L]},getPublicSSH:function getPublicSSH(){return this[v]},equals:function equals(e){const t=parseKey(e);if(t instanceof Error)return false;return this.type===t.type&&this[U]===t[U]&&this[L]===t[L]&&this[v]===t[v]}};function OpenSSH_Private(e,t,n,s,i,o,h){this.type=e;this.comment=t;this[U]=n;this[L]=s;this[v]=i;this[D]=o;this[T]=h}OpenSSH_Private.prototype=Y;{const e=/^-----BEGIN OPENSSH PRIVATE KEY-----(?:\r\n|\n)([\s\S]+)(?:\r\n|\n)-----END OPENSSH PRIVATE KEY-----$/;OpenSSH_Private.parse=(t,n)=>{const i=e.exec(t);if(i===null)return null;let o;const h=Buffer.from(i[1],"base64");if(h.length<31)return new Error("Malformed OpenSSH private key");const l=h.utf8Slice(0,15);if(l!=="openssh-key-v1\0")return new Error(`Unsupported OpenSSH key magic: ${l}`);const u=R(h,15,true);if(u===undefined)return new Error("Malformed OpenSSH private key");if(u!=="none"&&y.indexOf(u)===-1)return new Error(`Unsupported cipher for OpenSSH key: ${u}`);const g=R(h,h._pos,true);if(g===undefined)return new Error("Malformed OpenSSH private key");if(g!=="none"){if(u==="none")return new Error("Malformed OpenSSH private key");if(g!=="bcrypt")return new Error(`Unsupported kdf name for OpenSSH key: ${g}`);if(!n){return new Error("Encrypted private OpenSSH key detected, but no passphrase given")}}else if(u!=="none"){return new Error("Malformed OpenSSH private key")}let f;let E;let I;if(u!=="none")f=Q[u];const C=R(h,h._pos);if(C===undefined)return new Error("Malformed OpenSSH private key");if(C.length){switch(g){case"none":return new Error("Malformed OpenSSH private key");case"bcrypt":{const e=R(C,0);if(e===undefined||C._pos+4>C.length)return new Error("Malformed OpenSSH private key");const t=k(C,C._pos);const s=Buffer.allocUnsafe(f.keyLen+f.ivLen);const i=B(n,n.length,e,e.length,s,s.length,t);if(i!==0)return new Error("Failed to generate information to decrypt key");E=w(s,0,f.keyLen);I=w(s,f.keyLen,s.length);break}}}else if(g!=="none"){return new Error("Malformed OpenSSH private key")}if(h._pos+3>=h.length)return new Error("Malformed OpenSSH private key");const p=k(h,h._pos);h._pos+=4;if(p>0){for(let e=0;e0){if(h.length-h._pos{const i=e.exec(t);if(i===null)return null;let h=Buffer.from(i[3],"base64");let l=i[2];let u=false;if(l!==undefined){l=l.split(/\r\n|\n/g);for(let e=0;eg.keyLen)C=w(C,0,g.keyLen);try{const e=s(l,C,f);e.setAutoPadding(false);h=combineBuffers(e.update(h),e.final());u=true}catch(e){return e}}}}let g;let f;let E;let B;let Q;let p;let y="Malformed OpenSSH private key";if(u)y+=". Bad passphrase?";switch(i[1]){case"RSA":g="ssh-rsa";f=makePEM("RSA PRIVATE",h);try{p=new C.Reader(h);p.readSequence();p.readInt();const e=p.readString(C.Integer,true);if(e===null)return new Error(y);const t=p.readString(C.Integer,true);if(t===null)return new Error(y);E=genOpenSSLRSAPub(e,t);B=genOpenSSHRSAPub(e,t)}catch{return new Error(y)}Q="sha1";break;case"DSA":g="ssh-dss";f=makePEM("DSA PRIVATE",h);try{p=new C.Reader(h);p.readSequence();p.readInt();const e=p.readString(C.Integer,true);if(e===null)return new Error(y);const t=p.readString(C.Integer,true);if(t===null)return new Error(y);const n=p.readString(C.Integer,true);if(n===null)return new Error(y);const s=p.readString(C.Integer,true);if(s===null)return new Error(y);E=genOpenSSLDSAPub(e,t,n,s);B=genOpenSSHDSAPub(e,t,n,s)}catch{return new Error(y)}Q="sha1";break;case"EC":{let e;let t;let n;try{p=new C.Reader(h);p.readSequence();p.readInt();t=p.readString(C.OctetString,true);p.readByte();const s=p.readLength();if(s!==null){p._offset=s;n=p.readOID();if(n===null)return new Error(y);switch(n){case"1.2.840.10045.3.1.7":e="prime256v1";g="ecdsa-sha2-nistp256";Q="sha256";break;case"1.3.132.0.34":e="secp384r1";g="ecdsa-sha2-nistp384";Q="sha384";break;case"1.3.132.0.35":e="secp521r1";g="ecdsa-sha2-nistp521";Q="sha512";break;default:return new Error(`Unsupported private key EC OID: ${n}`)}}else{return new Error(y)}}catch{return new Error(y)}f=makePEM("EC PRIVATE",h);const s=genOpenSSLECDSAPubFromPriv(e,t);E=genOpenSSLECDSAPub(n,s);B=genOpenSSHECDSAPub(n,s);break}}return new OpenSSH_Old_Private(g,"",f,E,B,Q,u)}}function PPK_Private(e,t,n,s,i,o,h){this.type=e;this.comment=t;this[U]=n;this[L]=s;this[v]=i;this[D]=o;this[T]=h}PPK_Private.prototype=Y;{const e=Buffer.alloc(0);const t=Buffer.from([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);const n=Buffer.from([0,0,0,0]);const i=Buffer.from([0,0,0,1]);const l=/^PuTTY-User-Key-File-2: (ssh-(?:rsa|dss))\r?\nEncryption: (aes256-cbc|none)\r?\nComment: ([^\r\n]*)\r?\nPublic-Lines: \d+\r?\n([\s\S]+?)\r?\nPrivate-Lines: \d+\r?\n([\s\S]+?)\r?\nPrivate-MAC: ([^\r\n]+)/;PPK_Private.parse=(u,g)=>{const f=l.exec(u);if(f===null)return null;const E=f[2];const I=E!=="none";if(I&&!g){return new Error("Encrypted PPK private key detected, but no passphrase given")}let C=Buffer.from(f[5],"base64");if(I){const e=Q[E];let h=combineBuffers(o("sha1").update(n).update(g).digest(),o("sha1").update(i).update(g).digest());if(h.length>e.keyLen)h=w(h,0,e.keyLen);try{const n=s(e.sslName,h,t);n.setAutoPadding(false);C=combineBuffers(n.update(C),n.final())}catch(e){return e}}const B=f[1];const p=f[3];const y=Buffer.from(f[4],"base64");const b=f[6];const k=B.length;const D=E.length;const U=Buffer.byteLength(p);const L=y.length;const v=C.length;const T=Buffer.allocUnsafe(4+k+4+D+4+U+4+L+4+v);let O=0;_(T,k,O);T.utf8Write(B,O+=4,k);_(T,D,O+=k);T.utf8Write(E,O+=4,D);_(T,U,O+=D);T.utf8Write(p,O+=4,U);_(T,L,O+=U);T.set(y,O+=4);_(T,v,O+=L);T.set(C,O+4);if(!g)g=e;const P=h("sha1",o("sha1").update("putty-private-key-file-mac-key").update(g).digest()).update(T).digest("hex");if(P!==b){if(I){return new Error("PPK private key integrity check failed -- bad passphrase?")}return new Error("PPK private key integrity check failed")}let Y;let G;let J;y._pos=0;skipFields(y,1);switch(B){case"ssh-rsa":{const e=R(y,y._pos);if(e===undefined)return new Error("Malformed PPK public key");const t=R(y,y._pos);if(t===undefined)return new Error("Malformed PPK public key");const n=R(C,0);if(n===undefined)return new Error("Malformed PPK private key");const s=R(C,C._pos);if(s===undefined)return new Error("Malformed PPK private key");const i=R(C,C._pos);if(i===undefined)return new Error("Malformed PPK private key");const o=R(C,C._pos);if(o===undefined)return new Error("Malformed PPK private key");Y=genOpenSSLRSAPub(t,e);G=genOpenSSHRSAPub(t,e);J=x(t,e,n,o,s,i);break}case"ssh-dss":{const e=R(y,y._pos);if(e===undefined)return new Error("Malformed PPK public key");const t=R(y,y._pos);if(t===undefined)return new Error("Malformed PPK public key");const n=R(y,y._pos);if(n===undefined)return new Error("Malformed PPK public key");const s=R(y,y._pos);if(s===undefined)return new Error("Malformed PPK public key");const i=R(C,0);if(i===undefined)return new Error("Malformed PPK private key");Y=genOpenSSLDSAPub(e,t,n,s);G=genOpenSSHDSAPub(e,t,n,s);J=genOpenSSLDSAPriv(e,t,n,s,i);break}}return new PPK_Private(B,p,J,Y,G,"sha1",I)}}function OpenSSH_Public(e,t,n,s,i){this.type=e;this.comment=t;this[U]=null;this[L]=n;this[v]=s;this[D]=i;this[T]=false}OpenSSH_Public.prototype=Y;{let e;if(p)e=/^(((?:ssh-(?:rsa|dss|ed25519))|ecdsa-sha2-nistp(?:256|384|521))(?:-cert-v0[01]@openssh.com)?) ([A-Z0-9a-z/+=]+)(?:$|\s+([\S].*)?)$/;else e=/^(((?:ssh-(?:rsa|dss))|ecdsa-sha2-nistp(?:256|384|521))(?:-cert-v0[01]@openssh.com)?) ([A-Z0-9a-z/+=]+)(?:$|\s+([\S].*)?)$/;OpenSSH_Public.parse=t=>{const n=e.exec(t);if(n===null)return null;const s=n[1];const i=n[2];const o=Buffer.from(n[3],"base64");const h=n[4]||"";const l=R(o,o._pos,true);if(l===undefined||l.indexOf(i)!==0)return new Error("Malformed OpenSSH public key");return parseDER(o,i,h,s)}}function RFC4716_Public(e,t,n,s,i){this.type=e;this.comment=t;this[U]=null;this[L]=n;this[v]=s;this[D]=i;this[T]=false}RFC4716_Public.prototype=Y;{const e=/^---- BEGIN SSH2 PUBLIC KEY ----(?:\r?\n)((?:.{0,72}\r?\n)+)---- END SSH2 PUBLIC KEY ----$/;const t=/^[A-Z0-9a-z/+=\r\n]+$/;const n=/^([\x21-\x39\x3B-\x7E]{1,64}): ((?:[^\\]*\\\r?\n)*[^\r\n]+)\r?\n/gm;const s=/\\\r?\n/g;RFC4716_Public.parse=i=>{let o=e.exec(i);if(o===null)return null;const h=o[1];let l=0;let u="";while(o=n.exec(h)){const e=o[1];const t=o[2].replace(s,"");if(t.length>1024){n.lastIndex=0;return new Error("Malformed RFC4716 public key")}l=n.lastIndex;if(e.toLowerCase()==="comment"){u=t;if(u.length>1&&u.charCodeAt(0)===34&&u.charCodeAt(u.length-1)===34){u=u.slice(1,-1)}}}let g=h.slice(l);if(!t.test(g))return new Error("Malformed RFC4716 public key");g=Buffer.from(g,"base64");const f=R(g,0,true);if(f===undefined)return new Error("Malformed RFC4716 public key");let E=null;let I=null;switch(f){case"ssh-rsa":{const e=R(g,g._pos);if(e===undefined)return new Error("Malformed RFC4716 public key");const t=R(g,g._pos);if(t===undefined)return new Error("Malformed RFC4716 public key");E=genOpenSSLRSAPub(t,e);I=genOpenSSHRSAPub(t,e);break}case"ssh-dss":{const e=R(g,g._pos);if(e===undefined)return new Error("Malformed RFC4716 public key");const t=R(g,g._pos);if(t===undefined)return new Error("Malformed RFC4716 public key");const n=R(g,g._pos);if(n===undefined)return new Error("Malformed RFC4716 public key");const s=R(g,g._pos);if(s===undefined)return new Error("Malformed RFC4716 public key");E=genOpenSSLDSAPub(e,t,n,s);I=genOpenSSHDSAPub(e,t,n,s);break}default:return new Error("Malformed RFC4716 public key")}return new RFC4716_Public(f,u,E,I,"sha1")}}function parseDER(e,t,n,s){if(!isSupportedKeyType(t))return new Error(`Unsupported OpenSSH public key type: ${t}`);let i;let o;let h=null;let l=null;switch(t){case"ssh-rsa":{const t=R(e,e._pos||0);if(t===undefined)return new Error("Malformed OpenSSH public key");const n=R(e,e._pos);if(n===undefined)return new Error("Malformed OpenSSH public key");h=genOpenSSLRSAPub(n,t);l=genOpenSSHRSAPub(n,t);i="sha1";break}case"ssh-dss":{const t=R(e,e._pos||0);if(t===undefined)return new Error("Malformed OpenSSH public key");const n=R(e,e._pos);if(n===undefined)return new Error("Malformed OpenSSH public key");const s=R(e,e._pos);if(s===undefined)return new Error("Malformed OpenSSH public key");const o=R(e,e._pos);if(o===undefined)return new Error("Malformed OpenSSH public key");h=genOpenSSLDSAPub(t,n,s,o);l=genOpenSSHDSAPub(t,n,s,o);i="sha1";break}case"ssh-ed25519":{const t=R(e,e._pos||0);if(t===undefined||t.length!==32)return new Error("Malformed OpenSSH public key");h=genOpenSSLEdPub(t);l=genOpenSSHEdPub(t);i=null;break}case"ecdsa-sha2-nistp256":i="sha256";o="1.2.840.10045.3.1.7";case"ecdsa-sha2-nistp384":if(i===undefined){i="sha384";o="1.3.132.0.34"}case"ecdsa-sha2-nistp521":{if(i===undefined){i="sha512";o="1.3.132.0.35"}if(!skipFields(e,1))return new Error("Malformed OpenSSH public key");const t=R(e,e._pos||0);if(t===undefined)return new Error("Malformed OpenSSH public key");h=genOpenSSLECDSAPub(o,t);l=genOpenSSHECDSAPub(o,t);break}default:return new Error(`Unsupported OpenSSH public key type: ${t}`)}return new OpenSSH_Public(s,n,h,l,i)}function isSupportedKeyType(e){switch(e){case"ssh-rsa":case"ssh-dss":case"ecdsa-sha2-nistp256":case"ecdsa-sha2-nistp384":case"ecdsa-sha2-nistp521":return true;case"ssh-ed25519":if(p)return true;default:return false}}function isParsedKey(e){if(!e)return false;return typeof e[T]==="boolean"}function parseKey(e,t){if(isParsedKey(e))return e;let n;if(Buffer.isBuffer(e)){n=e;e=e.utf8Slice(0,e.length).trim()}else if(typeof e==="string"){e=e.trim()}else{return new Error("Key data must be a Buffer or string")}if(t!=undefined){if(typeof t==="string")t=Buffer.from(t);else if(!Buffer.isBuffer(t))return new Error("Passphrase must be a string or Buffer when supplied")}let s;if((s=OpenSSH_Private.parse(e,t))!==null)return s;if((s=OpenSSH_Old_Private.parse(e,t))!==null)return s;if((s=PPK_Private.parse(e,t))!==null)return s;if((s=OpenSSH_Public.parse(e))!==null)return s;if((s=RFC4716_Public.parse(e))!==null)return s;if(n){P.init(n,0);const t=P.readString(true);if(t!==undefined){e=P.readRaw();if(e!==undefined){s=parseDER(e,t,"",t);if(s instanceof Error)s=null}}P.clear()}if(s)return s;return new Error("Unsupported key format")}e.exports={isParsedKey:isParsedKey,isSupportedKeyType:isSupportedKeyType,parseDERKey:(e,t)=>parseDER(e,t,"",t),parseKey:parseKey}},7609:(e,t,n)=>{"use strict";const s=n(9491);const{inspect:i}=n(3837);function addNumericalSeparator(e){let t="";let n=e.length;const s=e[0]==="-"?1:0;for(;n>=s+4;n-=3)t=`_${e.slice(n-3,n)}${t}`;return`${e.slice(0,n)}${t}`}function oneOf(e,t){s(typeof t==="string","`thing` has to be of type string");if(Array.isArray(e)){const n=e.length;s(n>0,"At least one expected value needs to be specified");e=e.map((e=>String(e)));if(n>2){return`one of ${t} ${e.slice(0,n-1).join(", ")}, or `+e[n-1]}else if(n===2){return`one of ${t} ${e[0]} or ${e[1]}`}return`of ${t} ${e[0]}`}return`of ${t} ${String(e)}`}t.ERR_INTERNAL_ASSERTION=class ERR_INTERNAL_ASSERTION extends Error{constructor(e){super();Error.captureStackTrace(this,ERR_INTERNAL_ASSERTION);const t="This is caused by either a bug in ssh2 "+"or incorrect usage of ssh2 internals.\n"+"Please open an issue with this stack trace at "+"https://github.com/mscdex/ssh2/issues\n";this.message=e===undefined?t:`${e}\n${t}`}};const o=2**32;const h=(()=>{try{return new Function("return 2n ** 32n")()}catch{}})();t.ERR_OUT_OF_RANGE=class ERR_OUT_OF_RANGE extends RangeError{constructor(e,t,n,l){super();Error.captureStackTrace(this,ERR_OUT_OF_RANGE);s(t,'Missing "range" argument');let u=l?e:`The value of "${e}" is out of range.`;let g;if(Number.isInteger(n)&&Math.abs(n)>o){g=addNumericalSeparator(String(n))}else if(typeof n==="bigint"){g=String(n);if(n>h||n<-h)g=addNumericalSeparator(g);g+="n"}else{g=i(n)}u+=` It must be ${t}. Received ${g}`;this.message=u}};class ERR_INVALID_ARG_TYPE extends TypeError{constructor(e,t,n){super();Error.captureStackTrace(this,ERR_INVALID_ARG_TYPE);s(typeof e==="string",`'name' must be a string`);let i;if(typeof t==="string"&&t.startsWith("not ")){i="must not be";t=t.replace(/^not /,"")}else{i="must be"}let o;if(e.endsWith(" argument")){o=`The ${e} ${i} ${oneOf(t,"type")}`}else{const n=e.includes(".")?"property":"argument";o=`The "${e}" ${n} ${i} ${oneOf(t,"type")}`}o+=`. Received type ${typeof n}`;this.message=o}}t.ERR_INVALID_ARG_TYPE=ERR_INVALID_ARG_TYPE;t.validateNumber=function validateNumber(e,t){if(typeof e!=="number")throw new ERR_INVALID_ARG_TYPE(t,"number",e)}},9475:(e,t,n)=>{"use strict";const s=n(970).Ber;let i;const o=Buffer[Symbol.species];const h=Object.getPrototypeOf(Uint8Array.prototype).fill;function readUInt32BE(e,t){return e[t++]*16777216+e[t++]*65536+e[t++]*256+e[t]}function bufferCopy(e,t,n,s,i){if(!i)i=0;if(s>e.length)s=e.length;let o=s-n;const h=t.length-i;if(o>h)o=h;t.set(new Uint8Array(e.buffer,e.byteOffset+n,o),i);return o}function bufferSlice(e,t,n){if(n===undefined)n=e.length;return new o(e.buffer,e.byteOffset+t,n-t)}function makeBufferParser(){let e=0;let t;const n={init:(n,s)=>{t=n;e=typeof s==="number"?s:0},pos:()=>e,length:()=>t?t.length:0,avail:()=>t&&e{t=undefined},readUInt32BE:()=>{if(!t||e+3>=t.length)return;return t[e++]*16777216+t[e++]*65536+t[e++]*256+t[e++]},readUInt64BE:n=>{if(!t||e+7>=t.length)return;switch(n){case"always":return BigInt(`0x${t.hexSlice(e,e+=8)}`);case"maybe":if(t[e]>31)return BigInt(`0x${t.hexSlice(e,e+=8)}`);default:return t[e++]*72057594037927940+t[e++]*281474976710656+t[e++]*1099511627776+t[e++]*4294967296+t[e++]*16777216+t[e++]*65536+t[e++]*256+t[e++]}},skip:n=>{if(t&&n>0)e+=n},skipString:()=>{const s=n.readUInt32BE();if(s===undefined)return;e+=s;return e<=t.length?s:undefined},readByte:()=>{if(t&&e{if(t&&e{const e=n.readString(true);if(e===undefined)return;return e?e.split(","):[]},readString:(s,i)=>{if(typeof s==="number"){i=s;s=undefined}const o=n.readUInt32BE();if(o===undefined)return;if(t.length-ei){return}if(s){if(Buffer.isBuffer(s))return bufferCopy(t,s,e,e+=o);return t.utf8Slice(e,e+=o)}return bufferSlice(t,e,e+=o)},readRaw:n=>{if(!t)return;if(typeof n!=="number")return bufferSlice(t,e,e+=t.length-e);if(t.length-e>=n)return bufferSlice(t,e,e+=n)}};return n}function makeError(e,t,n){const s=new Error(e);if(typeof t==="boolean"){n=t;s.level="protocol"}else{s.level=t||"protocol"}s.fatal=!!n;return s}function writeUInt32BE(e,t,n){e[n++]=t>>>24;e[n++]=t>>>16;e[n++]=t>>>8;e[n++]=t;return n}const l=makeBufferParser();e.exports={bufferCopy:bufferCopy,bufferSlice:bufferSlice,FastBuffer:o,bufferFill:(e,t,n,s)=>h.call(e,t,n,s),makeError:makeError,doFatalError:(e,t,s,o)=>{let h;if(i===undefined)({DISCONNECT_REASON:i}=n(6832));if(t instanceof Error){h=t;if(typeof s!=="number")o=i.PROTOCOL_ERROR;else o=s}else{h=makeError(t,s,true)}if(typeof o!=="number")o=i.PROTOCOL_ERROR;e.disconnect(o);e._destruct();e._onError(h);return Infinity},readUInt32BE:readUInt32BE,writeUInt32BE:writeUInt32BE,writeUInt32LE:(e,t,n)=>{e[n++]=t;e[n++]=t>>>8;e[n++]=t>>>16;e[n++]=t>>>24;return n},makeBufferParser:makeBufferParser,bufferParser:makeBufferParser(),readString:(e,t,n,s)=>{if(typeof n==="number"){s=n;n=undefined}if(t===undefined)t=0;const i=e.length-t;if(t<0||t>=e.length||i<4)return;const o=readUInt32BE(e,t);if(i<4+o||typeof s==="number"&&o>s)return;t+=4;const h=t+o;e._pos=h;if(n){if(Buffer.isBuffer(n))return bufferCopy(e,n,t,h);return e.utf8Slice(t,h)}return bufferSlice(e,t,h)},sigSSHToASN1:(e,t)=>{switch(t){case"ssh-dss":{if(e.length>40)return e;const t=new s.Writer;t.startSequence();let n=e.slice(0,20);let i=e.slice(20);if(n[0]&128){const e=Buffer.allocUnsafe(21);e[0]=0;n.copy(e,1);n=e}else if(n[0]===0&&!(n[1]&128)){n=n.slice(1)}if(i[0]&128){const e=Buffer.allocUnsafe(21);e[0]=0;i.copy(e,1);i=e}else if(i[0]===0&&!(i[1]&128)){i=i.slice(1)}t.writeBuffer(n,s.Integer);t.writeBuffer(i,s.Integer);t.endSequence();return t.buffer}case"ecdsa-sha2-nistp256":case"ecdsa-sha2-nistp384":case"ecdsa-sha2-nistp521":{l.init(e,0);const t=l.readString();const n=l.readString();l.clear();if(t===undefined||n===undefined)return;const i=new s.Writer;i.startSequence();i.writeBuffer(t,s.Integer);i.writeBuffer(n,s.Integer);i.endSequence();return i.buffer}default:return e}},convertSignature:(e,t)=>{switch(t){case"ssh-dss":{if(e.length<=40)return e;const t=new s.Reader(e);t.readSequence();let n=t.readString(s.Integer,true);let i=t.readString(s.Integer,true);let o=0;let h=0;if(n.length<20){const e=Buffer.allocUnsafe(20);e.set(n,1);n=e;n[0]=0}if(i.length<20){const e=Buffer.allocUnsafe(20);e.set(i,1);i=e;i[0]=0}if(n.length>20&&n[0]===0)o=1;if(i.length>20&&i[0]===0)h=1;const l=Buffer.allocUnsafe(n.length-o+(i.length-h));bufferCopy(n,l,o,n.length,0);bufferCopy(i,l,h,i.length,n.length-o);return l}case"ecdsa-sha2-nistp256":case"ecdsa-sha2-nistp384":case"ecdsa-sha2-nistp521":{if(e[0]===0)return e;const t=new s.Reader(e);t.readSequence();const n=t.readString(s.Integer,true);const i=t.readString(s.Integer,true);if(n===null||i===null)return;const o=Buffer.allocUnsafe(4+n.length+4+i.length);writeUInt32BE(o,n.length,0);o.set(n,4);writeUInt32BE(o,i.length,4+n.length);o.set(i,4+4+n.length);return o}}return e},sendPacket:(e,t,n)=>{if(!n&&e._kexinit!==undefined){if(e._queue===undefined)e._queue=[];e._queue.push(t);e._debug&&e._debug("Outbound: ... packet queued");return false}e._cipher.encrypt(t);return true}}},6715:(e,t,n)=>{"use strict";const{kMaxLength:s}=n(4300);const{createInflate:i,constants:{DEFLATE:o,INFLATE:h,Z_DEFAULT_CHUNK:l,Z_DEFAULT_COMPRESSION:u,Z_DEFAULT_MEMLEVEL:g,Z_DEFAULT_STRATEGY:f,Z_DEFAULT_WINDOWBITS:E,Z_PARTIAL_FLUSH:I}}=n(9796);const C=i()._handle.constructor;function processCallback(){throw new Error("Should not get here")}function zlibOnError(e,t,n){const s=this._owner;const i=new Error(e);i.errno=t;i.code=n;s._err=i}function _close(e){if(!e._handle)return;e._handle.close();e._handle=null}class Zlib{constructor(e){const t=E;const n=u;const i=g;const o=f;const h=undefined;this._err=undefined;this._writeState=new Uint32Array(2);this._chunkSize=l;this._maxOutputLength=s;this._outBuffer=Buffer.allocUnsafe(this._chunkSize);this._outOffset=0;this._handle=new C(e);this._handle._owner=this;this._handle.onerror=zlibOnError;this._handle.init(t,n,i,o,this._writeState,processCallback,h)}writeSync(e,t){const n=this._handle;if(!n)throw new Error("Invalid Zlib instance");let s=e.length;let i=this._chunkSize-this._outOffset;let o=0;let h;let l;let u;let g=0;const f=this._writeState;let E=this._outBuffer;let C=this._outOffset;const B=this._chunkSize;while(true){n.writeSync(I,e,o,s,E,C,i);if(this._err)throw this._err;h=f[0];l=f[1];const t=s-l;const Q=i-h;if(Q>0){const e=C===0&&Q===E.length?E:E.slice(C,C+Q);C+=Q;if(!u)u=e;else if(u.push===undefined)u=[u,e];else u.push(e);g+=e.byteLength;if(g>this._maxOutputLength){_close(this);throw new Error(`Output length exceeded maximum of ${this._maxOutputLength}`)}}else if(Q!==0){throw new Error("have should not go down")}if(h===0||C>=B){i=B;C=0;E=Buffer.allocUnsafe(B)}if(h===0){o+=t;s=l}else{break}}this._outBuffer=E;this._outOffset=C;if(g===0)u=Buffer.alloc(0);if(t){u.totalLen=g;return u}if(u.push===undefined)return u;const Q=Buffer.allocUnsafe(g);for(let e=0,t=0;e{"use strict";const{Server:s}=n(1808);const i=n(2361);const{listenerCount:o}=i;const{CHANNEL_OPEN_FAILURE:h,DEFAULT_CIPHER:l,DEFAULT_COMPRESSION:u,DEFAULT_KEX:g,DEFAULT_MAC:f,DEFAULT_SERVER_HOST_KEY:E,DISCONNECT_REASON:I,DISCONNECT_REASON_BY_VALUE:C,SUPPORTED_CIPHER:B,SUPPORTED_COMPRESSION:Q,SUPPORTED_KEX:p,SUPPORTED_MAC:y,SUPPORTED_SERVER_HOST_KEY:w}=n(6832);const{init:b}=n(5708);const{KexInit:R}=n(4126);const{parseKey:k}=n(2218);const _=n(9031);const{SFTP:D}=n(2026);const{writeUInt32BE:U}=n(9475);const{Channel:L,MAX_WINDOW:v,PACKET_SIZE:T,windowAdjust:O,WINDOW_THRESHOLD:P}=n(3204);const{ChannelManager:x,generateAlgorithmList:Y,isWritable:G,onChannelOpenFailure:J,onCHANNEL_CLOSE:W}=n(834);const V=10;class AuthContext extends i{constructor(e,t,n,s,i){super();this.username=this.user=t;this.service=n;this.method=s;this._initialResponse=false;this._finalResponse=false;this._multistep=false;this._cbfinal=(e,t,n)=>{if(!this._finalResponse){this._finalResponse=true;i(this,e,t,n)}};this._protocol=e}accept(){this._cleanup&&this._cleanup();this._initialResponse=true;this._cbfinal(true)}reject(e,t){this._cleanup&&this._cleanup();this._initialResponse=true;this._cbfinal(false,e,t)}}class KeyboardAuthContext extends AuthContext{constructor(e,t,n,s,i,o){super(e,t,n,s,o);this._multistep=true;this._cb=undefined;this._onInfoResponse=e=>{const t=this._cb;if(t){this._cb=undefined;t(e)}};this.submethods=i;this.on("abort",(()=>{this._cb&&this._cb(new Error("Authentication request aborted"))}))}prompt(e,t,n,s){if(!Array.isArray(e))e=[e];if(typeof t==="function"){s=t;t=n=undefined}else if(typeof n==="function"){s=n;n=undefined}else if(typeof s!=="function"){s=undefined}for(let t=0;t{if(h===-1)return;let l;switch(h){case e:l="ssh-rsa";break;case s:l="rsa-sha2-256";break;case o:l="rsa-sha2-512";break;default:return}n[l]=t;i.push(l)}))}else{n[t.type]=t;i.push(t.type)}}const C={kex:Y(h.kex,g,p),serverHostKey:i,cs:{cipher:Y(h.cipher,l,B),mac:Y(h.hmac,f,y),compress:Y(h.compress,u,Q),lang:[]},sc:undefined};C.sc=C.cs;if(typeof t==="function")this.on("connection",t);const b=typeof e.debug==="function"?e.debug:undefined;const _=e.ident?Buffer.from(e.ident):undefined;const D=new R(C);this._srv=new s((t=>{if(this._connections>=this.maxConnections){t.destroy();return}++this._connections;t.once("close",(()=>{--this._connections}));let s;if(b){const e=`[${process.hrtime().join(".")}] `;s=t=>{b(`${e}${t}`)}}new Client(t,n,_,D,s,this,e)})).on("error",(e=>{this.emit("error",e)})).on("listening",(()=>{this.emit("listening")})).on("close",(()=>{this.emit("close")}));this._connections=0;this.maxConnections=Infinity}injectSocket(e){this._srv.emit("connection",e)}listen(...e){this._srv.listen(...e);return this}address(){return this._srv.address()}getConnections(e){this._srv.getConnections(e);return this}close(e){this._srv.close(e);return this}ref(){this._srv.ref();return this}unref(){this._srv.unref();return this}}Server.KEEPALIVE_CLIENT_INTERVAL=15e3;Server.KEEPALIVE_CLIENT_COUNT_MAX=3;class Client extends i{constructor(e,t,n,s,i,l,u){super();let g=0;let f=false;let E=[];let B;let Q;let p;const y=[];this._sock=e;this._chanMgr=new x(this);this._debug=i;this.noMoreSessions=false;this.authenticated=false;function onClientPreHeaderError(e){}this.on("error",onClientPreHeaderError);const w=!i?undefined:(e,t,n)=>{i(`Debug output from client: ${JSON.stringify(n)}`)};const R=typeof u.keepaliveInterval==="number"&&isFinite(u.keepaliveInterval)&&u.keepaliveInterval>0?u.keepaliveInterval:typeof Server.KEEPALIVE_CLIENT_INTERVAL==="number"&&isFinite(Server.KEEPALIVE_CLIENT_INTERVAL)&&Server.KEEPALIVE_CLIENT_INTERVAL>0?Server.KEEPALIVE_CLIENT_INTERVAL:-1;const k=typeof u.keepaliveCountMax==="number"&&isFinite(u.keepaliveCountMax)&&u.keepaliveCountMax>=0?u.keepaliveCountMax:typeof Server.KEEPALIVE_CLIENT_COUNT_MAX==="number"&&isFinite(Server.KEEPALIVE_CLIENT_COUNT_MAX)&&Server.KEEPALIVE_CLIENT_COUNT_MAX>=0?Server.KEEPALIVE_CLIENT_COUNT_MAX:-1;let Y=0;if(R!==-1&&k!==-1){this.once("ready",(()=>{const onClose=()=>{clearInterval(Q)};this.on("close",onClose).on("end",onClose);Q=setInterval((()=>{if(++Y>k){clearInterval(Q);const e=new Error("Keepalive timeout");e.level="client-timeout";this.emit("error",e);this.end()}else{q.ping()}}),R)}));p=()=>{Q&&Q.refresh();Y=0}}const q=this._protocol=new _({server:true,hostKeys:t,ident:n,offer:s,onPacket:p,greeting:u.greeting,banner:u.banner,onWrite:t=>{if(G(e))e.write(t)},onError:t=>{if(!q._destruct)e.removeAllListeners("data");this.emit("error",t);try{e.end()}catch{}},onHeader:t=>{this.removeListener("error",onClientPreHeaderError);const n={ip:e.remoteAddress,family:e.remoteFamily,port:e.remotePort,header:t};if(!l.emit("connection",this,n)){q.disconnect(I.BY_APPLICATION);e.end();return}if(t.greeting)this.emit("greeting",t.greeting)},onHandshakeComplete:e=>{if(++g>1)this.emit("rekey");this.emit("handshake",e)},debug:i,messageHandlers:{DEBUG:w,DISCONNECT:(t,n,s)=>{if(n!==I.BY_APPLICATION){if(!s){s=C[n];if(s===undefined)s=`Unexpected disconnection reason: ${n}`}const e=new Error(s);e.code=n;this.emit("error",e)}e.end()},CHANNEL_OPEN:(e,t)=>{if(t.type==="session"&&this.noMoreSessions||!this.authenticated){const e=h.ADMINISTRATIVELY_PROHIBITED;return q.channelOpenFail(t.sender,e)}let n=-1;let s;let l=false;let u;const reject=()=>{if(l)return;l=true;if(s===undefined){if(n===-1)s=h.RESOURCE_SHORTAGE;else s=h.CONNECT_FAILED}if(n!==-1)this._chanMgr.remove(n);q.channelOpenFail(t.sender,s,"")};const reserveChannel=()=>{n=this._chanMgr.add();if(n===-1){s=h.RESOURCE_SHORTAGE;if(i){i("Automatic rejection of incoming channel open: "+"no channels available")}}return n!==-1};const g=t.data;switch(t.type){case"session":if(o(this,"session")&&reserveChannel()){u=()=>{if(l)return;l=true;const e=new Session(this,t,n);this._chanMgr.update(n,e);q.channelOpenConfirm(t.sender,n,v,T);return e};this.emit("session",u,reject);return}break;case"direct-tcpip":if(o(this,"tcpip")&&reserveChannel()){u=()=>{if(l)return;l=true;const e={type:undefined,incoming:{id:n,window:v,packetSize:T,state:"open"},outgoing:{id:t.sender,window:t.window,packetSize:t.packetSize,state:"open"}};const s=new L(this,e,{server:true});this._chanMgr.update(n,s);q.channelOpenConfirm(t.sender,n,v,T);return s};this.emit("tcpip",u,reject,g);return}break;case"direct-streamlocal@openssh.com":if(o(this,"openssh.streamlocal")&&reserveChannel()){u=()=>{if(l)return;l=true;const e={type:undefined,incoming:{id:n,window:v,packetSize:T,state:"open"},outgoing:{id:t.sender,window:t.window,packetSize:t.packetSize,state:"open"}};const s=new L(this,e,{server:true});this._chanMgr.update(n,s);q.channelOpenConfirm(t.sender,n,v,T);return s};this.emit("openssh.streamlocal",u,reject,g);return}break;default:s=h.UNKNOWN_CHANNEL_TYPE;if(i){i("Automatic rejection of unsupported incoming channel open"+` type: ${t.type}`)}}if(s===undefined){s=h.ADMINISTRATIVELY_PROHIBITED;if(i){i("Automatic rejection of unexpected incoming channel open"+` for: ${t.type}`)}}reject()},CHANNEL_OPEN_CONFIRMATION:(e,t)=>{const n=this._chanMgr.get(t.recipient);if(typeof n!=="function")return;const s={type:n.type,incoming:{id:t.recipient,window:v,packetSize:T,state:"open"},outgoing:{id:t.sender,window:t.window,packetSize:t.packetSize,state:"open"}};const i=new L(this,s,{server:true});this._chanMgr.update(t.recipient,i);n(undefined,i)},CHANNEL_OPEN_FAILURE:(e,t,n,s)=>{const i=this._chanMgr.get(t);if(typeof i!=="function")return;const o={reason:n,description:s};J(this,t,o,i)},CHANNEL_DATA:(e,t,n)=>{let s=this._chanMgr.get(t);if(typeof s!=="object"||s===null)return;if(s.constructor===Session){s=s._channel;if(!s)return}if(s.incoming.window===0)return;s.incoming.window-=n.length;if(s.push(n)===false){s._waitChanDrain=true;return}if(s.incoming.window<=P)O(s)},CHANNEL_EXTENDED_DATA:(e,t,n,s)=>{},CHANNEL_WINDOW_ADJUST:(e,t,n)=>{let s=this._chanMgr.get(t);if(typeof s!=="object"||s===null)return;if(s.constructor===Session){s=s._channel;if(!s)return}s.outgoing.window+=n;if(s._waitWindow){s._waitWindow=false;if(s._chunk){s._write(s._chunk,null,s._chunkcb)}else if(s._chunkcb){s._chunkcb()}else if(s._chunkErr){s.stderr._write(s._chunkErr,null,s._chunkcbErr)}else if(s._chunkcbErr){s._chunkcbErr()}}},CHANNEL_SUCCESS:(e,t)=>{let n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;if(n.constructor===Session){n=n._channel;if(!n)return}if(n._callbacks.length)n._callbacks.shift()(false)},CHANNEL_FAILURE:(e,t)=>{let n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;if(n.constructor===Session){n=n._channel;if(!n)return}if(n._callbacks.length)n._callbacks.shift()(true)},CHANNEL_REQUEST:(e,t,n,s,h)=>{const l=this._chanMgr.get(t);if(typeof l!=="object"||l===null)return;let u=false;let g;let f;if(l.constructor!==Session){if(s)q.channelFailure(l.outgoing.id);return}if(s){if(n!=="shell"&&n!=="exec"&&n!=="subsystem"){g=()=>{if(u||l._ending||l._channel)return;u=true;q.channelSuccess(l._chanInfo.outgoing.id)}}f=()=>{if(u||l._ending||l._channel)return;u=true;q.channelFailure(l._chanInfo.outgoing.id)}}if(l._ending){f&&f();return}switch(n){case"env":if(o(l,"env")){l.emit("env",g,f,{key:h.name,val:h.value});return}break;case"pty-req":if(o(l,"pty")){l.emit("pty",g,f,h);return}break;case"window-change":if(o(l,"window-change"))l.emit("window-change",g,f,h);else f&&f();break;case"x11-req":if(o(l,"x11")){l.emit("x11",g,f,h);return}break;case"signal":if(o(l,"signal")){l.emit("signal",g,f,{name:h});return}break;case"auth-agent-req@openssh.com":if(o(l,"auth-agent")){l.emit("auth-agent",g,f);return}break;case"shell":if(o(l,"shell")){g=()=>{if(u||l._ending||l._channel)return;u=true;if(s)q.channelSuccess(l._chanInfo.outgoing.id);const e=new L(this,l._chanInfo,{server:true});e.subtype=l.subtype=n;l._channel=e;return e};l.emit("shell",g,f);return}break;case"exec":if(o(l,"exec")){g=()=>{if(u||l._ending||l._channel)return;u=true;if(s)q.channelSuccess(l._chanInfo.outgoing.id);const e=new L(this,l._chanInfo,{server:true});e.subtype=l.subtype=n;l._channel=e;return e};l.emit("exec",g,f,{command:h});return}break;case"subsystem":{let e=h==="sftp";g=()=>{if(u||l._ending||l._channel)return;u=true;if(s)q.channelSuccess(l._chanInfo.outgoing.id);let t;if(e){t=new D(this,l._chanInfo,{server:true,debug:i})}else{t=new L(this,l._chanInfo,{server:true});t.subtype=l.subtype=`${n}:${h}`}l._channel=t;return t};if(h==="sftp"){if(o(l,"sftp")){l.emit("sftp",g,f);return}e=false}if(o(l,"subsystem")){l.emit("subsystem",g,f,{name:h});return}break}}i&&i(`Automatic rejection of incoming channel request: ${n}`);f&&f()},CHANNEL_EOF:(e,t)=>{let n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;if(n.constructor===Session){if(!n._ending){n._ending=true;n.emit("eof");n.emit("end")}n=n._channel;if(!n)return}if(n.incoming.state!=="open")return;n.incoming.state="eof";if(n.readable)n.push(null)},CHANNEL_CLOSE:(e,t)=>{let n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;if(n.constructor===Session){n._ending=true;n.emit("close");n=n._channel;if(!n)return}W(this,t,n)},SERVICE_REQUEST:(t,n)=>{if(g===0||f||this.authenticated||n!=="ssh-userauth"){q.disconnect(I.SERVICE_NOT_AVAILABLE);e.end();return}f=true;q.serviceAccept(n)},USERAUTH_REQUEST:(t,n,s,i,h)=>{if(g===0||this.authenticated||B&&(B.username!==n||B.service!==s)||i!=="password"&&i!=="publickey"&&i!=="hostbased"&&i!=="keyboard-interactive"&&i!=="none"||E.length===V){q.disconnect(I.PROTOCOL_ERROR);e.end();return}else if(s!=="ssh-connection"){q.disconnect(I.SERVICE_NOT_AVAILABLE);e.end();return}let l;switch(i){case"keyboard-interactive":l=new KeyboardAuthContext(q,n,s,i,h,onAuthDecide);break;case"publickey":l=new PKAuthContext(q,n,s,i,h,onAuthDecide);break;case"hostbased":l=new HostbasedAuthContext(q,n,s,i,h,onAuthDecide);break;case"password":if(B&&B instanceof PwdAuthContext&&B._changeCb){const e=B._changeCb;B._changeCb=undefined;e(h.newPassword);return}l=new PwdAuthContext(q,n,s,i,h,onAuthDecide);break;case"none":l=new AuthContext(q,n,s,i,onAuthDecide);break}if(B){if(!B._initialResponse){return E.push(l)}else if(B._multistep&&!B._finalResponse){B._cleanup&&B._cleanup();B.emit("abort")}}B=l;if(o(this,"authentication"))this.emit("authentication",B);else B.reject()},USERAUTH_INFO_RESPONSE:(e,t)=>{if(B&&B instanceof KeyboardAuthContext)B._onInfoResponse(t)},GLOBAL_REQUEST:(e,t,n,s)=>{const i={type:null,buf:null};function setReply(e,t){i.type=e;i.buf=t;sendReplies()}if(n)y.push(i);if((t==="tcpip-forward"||t==="cancel-tcpip-forward"||t==="no-more-sessions@openssh.com"||t==="streamlocal-forward@openssh.com"||t==="cancel-streamlocal-forward@openssh.com")&&o(this,"request")&&this.authenticated){let e;let i;if(n){let n=false;e=e=>{if(n)return;n=true;let i;if(t==="tcpip-forward"&&s.bindPort===0&&typeof e==="number"){i=Buffer.allocUnsafe(4);U(i,e,0)}setReply("SUCCESS",i)};i=()=>{if(n)return;n=true;setReply("FAILURE")}}if(t==="no-more-sessions@openssh.com"){this.noMoreSessions=true;e&&e();return}this.emit("request",e,i,t,s)}else if(n){setReply("FAILURE")}}}});e.pause();b.then((()=>{q.start();e.on("data",(t=>{try{q.parse(t,0,t.length)}catch(t){this.emit("error",t);try{if(G(e))e.end()}catch{}}}));e.resume()})).catch((t=>{this.emit("error",t);try{if(G(e))e.end()}catch{}}));e.on("error",(e=>{e.level="socket";this.emit("error",e)})).once("end",(()=>{i&&i("Socket ended");q.cleanup();this.emit("end")})).once("close",(()=>{i&&i("Socket closed");q.cleanup();this.emit("close");const e=new Error("No response from server");this._chanMgr.cleanup(e)}));const onAuthDecide=(e,t,n,s)=>{if(B===e&&!this.authenticated){if(t){B=undefined;this.authenticated=true;q.authSuccess();E=[];this.emit("ready")}else{q.authFailure(n,s);if(E.length){B=E.pop();if(o(this,"authentication"))this.emit("authentication",B);else B.reject()}}}};function sendReplies(){while(y.length>0&&y[0].type){const e=y.shift();if(e.type==="SUCCESS")q.requestSuccess(e.buf);if(e.type==="FAILURE")q.requestFailure()}}}end(){if(this._sock&&G(this._sock)){this._protocol.disconnect(I.BY_APPLICATION);this._sock.end()}return this}x11(e,t,n){const s={originAddr:e,originPort:t};openChannel(this,"x11",s,n);return this}forwardOut(e,t,n,s,i){const o={boundAddr:e,boundPort:t,remoteAddr:n,remotePort:s};openChannel(this,"forwarded-tcpip",o,i);return this}openssh_forwardOutStreamLocal(e,t){const n={socketPath:e};openChannel(this,"forwarded-streamlocal@openssh.com",n,t);return this}rekey(e){let t;try{this._protocol.rekey()}catch(e){t=e}if(typeof e==="function"){if(t)process.nextTick(e,t);else this.once("rekey",e)}}setNoDelay(e){if(this._sock&&typeof this._sock.setNoDelay==="function")this._sock.setNoDelay(e);return this}}function openChannel(e,t,n,s){const i=v;const o=T;if(typeof n==="function"){s=n;n={}}const wrapper=(e,t)=>{s(e,t)};wrapper.type=t;const h=e._chanMgr.add(wrapper);if(h===-1){s(new Error("No free channels available"));return}switch(t){case"forwarded-tcpip":e._protocol.forwardedTcpip(h,i,o,n);break;case"x11":e._protocol.x11(h,i,o,n);break;case"forwarded-streamlocal@openssh.com":e._protocol.openssh_forwardedStreamLocal(h,i,o,n);break;default:throw new Error(`Unsupported channel type: ${t}`)}}function compareNumbers(e,t){return e-t}e.exports=Server;e.exports.IncomingClient=Client},834:(e,t,n)=>{"use strict";const{SFTP:s}=n(2026);const i=2**32-1;function onChannelOpenFailure(e,t,n,s){e._chanMgr.remove(t);if(typeof s!=="function")return;let i;if(n instanceof Error){i=n}else if(typeof n==="object"&&n!==null){i=new Error(`(SSH) Channel open failure: ${n.description}`);i.reason=n.reason}else{i=new Error("(SSH) Channel open failure: server closed channel unexpectedly");i.reason=""}s(i)}function onCHANNEL_CLOSE(e,t,n,i,o){if(typeof n==="function"){onChannelOpenFailure(e,t,i,n);return}if(typeof n!=="object"||n===null)return;if(n.incoming&&n.incoming.state==="closed")return;e._chanMgr.remove(t);if(n.server&&n.constructor.name==="Session")return;n.incoming.state="closed";if(n.readable)n.push(null);if(n.server){if(n.stderr.writable)n.stderr.end()}else if(n.stderr.readable){n.stderr.push(null)}if(n.constructor!==s&&(n.outgoing.state==="open"||n.outgoing.state==="eof")&&!o){n.close()}if(n.outgoing.state==="closing")n.outgoing.state="closed";const h=n._readableState;const l=n._writableState;if(l&&!l.ending&&!l.finished&&!o)n.end();const u=n._callbacks;n._callbacks=[];for(let e=0;en.emit("close")))}}else{let e;switch(n.type){case"direct-streamlocal@openssh.com":case"direct-tcpip":e=()=>n.emit("close");break;default:{const t=n._exit;e=()=>{if(t.code===null)n.emit("close",t.code,t.signal,t.dump,t.desc);else n.emit("close",t.code)}}}if(!n.readable||n.destroyed||h&&h.endEmitted){e()}else{n.once("end",e)}const t=n.stderr._readableState;if(!n.stderr.readable||n.stderr.destroyed||t&&t.endEmitted){n.stderr.emit("close")}else{n.stderr.once("end",(()=>n.stderr.emit("close")))}}}class ChannelManager{constructor(e){this._client=e;this._channels={};this._cur=-1;this._count=0}add(e){let t;if(this._cur=i||!isFinite(e))throw new Error(`Invalid channel id: ${e}`);if(t&&this._channels[e])this._channels[e]=t}get(e){if(typeof e!=="number"||e<0||e>=i||!isFinite(e))throw new Error(`Invalid channel id: ${e}`);return this._channels[e]}remove(e){if(typeof e!=="number"||e<0||e>=i||!isFinite(e))throw new Error(`Invalid channel id: ${e}`);if(this._channels[e]){delete this._channels[e];if(this._count)--this._count}}cleanup(e){const t=this._channels;this._channels={};this._cur=-1;this._count=0;const n=Object.keys(t);const s=this._client;for(let i=0;i{const e=Object.prototype.toString;return t=>e.call(t)==="[object RegExp]"})();function generateAlgorithmList(e,t,n){if(Array.isArray(e)&&e.length>0){for(let t=0;t=0;--e){const s=u[e];if(typeof s==="string"){if(!s||i.indexOf(s)!==-1)continue;if(n.indexOf(s)===-1)throw new Error(`Unsupported algorithm: ${s}`);if(i===t)i=i.slice();i.unshift(s)}else if(o(s)){for(let e=n.length;e>=0;--e){const o=n[e];if(s.test(o)){if(i.indexOf(o)!==-1)continue;if(i===t)i=i.slice();i.unshift(o)}}}}}break;case"remove":if(!Array.isArray(u))u=[u];if(Array.isArray(u)){for(let e=0;ee&&e.writable&&e._readableState&&e._readableState.ended===false}},4841:(e,t,n)=>{"use strict";var s=n(1867).Buffer;var i=s.isEncoding||function(e){e=""+e;switch(e&&e.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(e){if(!e)return"utf8";var t;while(true){switch(e){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 e;default:if(t)return;e=(""+e).toLowerCase();t=true}}}function normalizeEncoding(e){var t=_normalizeEncoding(e);if(typeof t!=="string"&&(s.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}t.s=StringDecoder;function StringDecoder(e){this.encoding=normalizeEncoding(e);var t;switch(this.encoding){case"utf16le":this.text=utf16Text;this.end=utf16End;t=4;break;case"utf8":this.fillLast=utf8FillLast;t=4;break;case"base64":this.text=base64Text;this.end=base64End;t=3;break;default:this.write=simpleWrite;this.end=simpleEnd;return}this.lastNeed=0;this.lastTotal=0;this.lastChar=s.allocUnsafe(t)}StringDecoder.prototype.write=function(e){if(e.length===0)return"";var t;var n;if(this.lastNeed){t=this.fillLast(e);if(t===undefined)return"";n=this.lastNeed;this.lastNeed=0}else{n=0}if(n>5===6)return 2;else if(e>>4===14)return 3;else if(e>>3===30)return 4;return e>>6===2?-1:-2}function utf8CheckIncomplete(e,t,n){var s=t.length-1;if(s=0){if(i>0)e.lastNeed=i-1;return i}if(--s=0){if(i>0)e.lastNeed=i-2;return i}if(--s=0){if(i>0){if(i===2)i=0;else e.lastNeed=i-3}return i}return 0}function utf8CheckExtraBytes(e,t,n){if((t[0]&192)!==128){e.lastNeed=0;return"�"}if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128){e.lastNeed=1;return"�"}if(e.lastNeed>2&&t.length>2){if((t[2]&192)!==128){e.lastNeed=2;return"�"}}}}function utf8FillLast(e){var t=this.lastTotal-this.lastNeed;var n=utf8CheckExtraBytes(this,e,t);if(n!==undefined)return n;if(this.lastNeed<=e.length){e.copy(this.lastChar,t,0,this.lastNeed);return this.lastChar.toString(this.encoding,0,this.lastTotal)}e.copy(this.lastChar,t,0,e.length);this.lastNeed-=e.length}function utf8Text(e,t){var n=utf8CheckIncomplete(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var s=e.length-(n-this.lastNeed);e.copy(this.lastChar,0,s);return e.toString("utf8",t,s)}function utf8End(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed)return t+"�";return t}function utf16Text(e,t){if((e.length-t)%2===0){var n=e.toString("utf16le",t);if(n){var s=n.charCodeAt(n.length-1);if(s>=55296&&s<=56319){this.lastNeed=2;this.lastTotal=4;this.lastChar[0]=e[e.length-2];this.lastChar[1]=e[e.length-1];return n.slice(0,-1)}}return n}this.lastNeed=1;this.lastTotal=2;this.lastChar[0]=e[e.length-1];return e.toString("utf16le",t,e.length-1)}function utf16End(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function base64Text(e,t){var n=(e.length-t)%3;if(n===0)return e.toString("base64",t);this.lastNeed=3-n;this.lastTotal=3;if(n===1){this.lastChar[0]=e[e.length-1]}else{this.lastChar[0]=e[e.length-2];this.lastChar[1]=e[e.length-1]}return e.toString("base64",t,e.length-n)}function base64End(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed)return t+this.lastChar.toString("base64",0,3-this.lastNeed);return t}function simpleWrite(e){return e.toString(this.encoding)}function simpleEnd(e){return e&&e.length?this.write(e):""}},4294:(e,t,n)=>{e.exports=n(4219)},4219:(e,t,n)=>{"use strict";var s=n(1808);var i=n(4404);var o=n(3685);var h=n(5687);var l=n(2361);var u=n(9491);var g=n(3837);t.httpOverHttp=httpOverHttp;t.httpsOverHttp=httpsOverHttp;t.httpOverHttps=httpOverHttps;t.httpsOverHttps=httpsOverHttps;function httpOverHttp(e){var t=new TunnelingAgent(e);t.request=o.request;return t}function httpsOverHttp(e){var t=new TunnelingAgent(e);t.request=o.request;t.createSocket=createSecureSocket;t.defaultPort=443;return t}function httpOverHttps(e){var t=new TunnelingAgent(e);t.request=h.request;return t}function httpsOverHttps(e){var t=new TunnelingAgent(e);t.request=h.request;t.createSocket=createSecureSocket;t.defaultPort=443;return t}function TunnelingAgent(e){var t=this;t.options=e||{};t.proxyOptions=t.options.proxy||{};t.maxSockets=t.options.maxSockets||o.Agent.defaultMaxSockets;t.requests=[];t.sockets=[];t.on("free",(function onFree(e,n,s,i){var o=toOptions(n,s,i);for(var h=0,l=t.requests.length;h=this.maxSockets){i.requests.push(o);return}i.createSocket(o,(function(t){t.on("free",onFree);t.on("close",onCloseOrRemove);t.on("agentRemove",onCloseOrRemove);e.onSocket(t);function onFree(){i.emit("free",t,o)}function onCloseOrRemove(e){i.removeSocket(t);t.removeListener("free",onFree);t.removeListener("close",onCloseOrRemove);t.removeListener("agentRemove",onCloseOrRemove)}}))};TunnelingAgent.prototype.createSocket=function createSocket(e,t){var n=this;var s={};n.sockets.push(s);var i=mergeOptions({},n.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:false,headers:{host:e.host+":"+e.port}});if(e.localAddress){i.localAddress=e.localAddress}if(i.proxyAuth){i.headers=i.headers||{};i.headers["Proxy-Authorization"]="Basic "+new Buffer(i.proxyAuth).toString("base64")}f("making CONNECT request");var o=n.request(i);o.useChunkedEncodingByDefault=false;o.once("response",onResponse);o.once("upgrade",onUpgrade);o.once("connect",onConnect);o.once("error",onError);o.end();function onResponse(e){e.upgrade=true}function onUpgrade(e,t,n){process.nextTick((function(){onConnect(e,t,n)}))}function onConnect(i,h,l){o.removeAllListeners();h.removeAllListeners();if(i.statusCode!==200){f("tunneling socket could not be established, statusCode=%d",i.statusCode);h.destroy();var u=new Error("tunneling socket could not be established, "+"statusCode="+i.statusCode);u.code="ECONNRESET";e.request.emit("error",u);n.removeSocket(s);return}if(l.length>0){f("got illegal response body from proxy");h.destroy();var u=new Error("got illegal response body from proxy");u.code="ECONNRESET";e.request.emit("error",u);n.removeSocket(s);return}f("tunneling connection has established");n.sockets[n.sockets.indexOf(s)]=h;return t(h)}function onError(t){o.removeAllListeners();f("tunneling socket could not be established, cause=%s\n",t.message,t.stack);var i=new Error("tunneling socket could not be established, "+"cause="+t.message);i.code="ECONNRESET";e.request.emit("error",i);n.removeSocket(s)}};TunnelingAgent.prototype.removeSocket=function removeSocket(e){var t=this.sockets.indexOf(e);if(t===-1){return}this.sockets.splice(t,1);var n=this.requests.shift();if(n){this.createSocket(n,(function(e){n.request.onSocket(e)}))}};function createSecureSocket(e,t){var n=this;TunnelingAgent.prototype.createSocket.call(n,e,(function(s){var o=e.request.getHeader("host");var h=mergeOptions({},n.options,{socket:s,servername:o?o.replace(/:.*$/,""):e.host});var l=i.connect(0,h);n.sockets[n.sockets.indexOf(s)]=l;t(l)}))}function toOptions(e,t,n){if(typeof e==="string"){return{host:e,port:t,localAddress:n}}return e}function mergeOptions(e){for(var t=1,n=arguments.length;t{(function(e){"use strict";var gf=function(e){var t,n=new Float64Array(16);if(e)for(t=0;t>24&255;e[t+1]=n>>16&255;e[t+2]=n>>8&255;e[t+3]=n&255;e[t+4]=s>>24&255;e[t+5]=s>>16&255;e[t+6]=s>>8&255;e[t+7]=s&255}function vn(e,t,n,s,i){var o,h=0;for(o=0;o>>8)-1}function crypto_verify_16(e,t,n,s){return vn(e,t,n,s,16)}function crypto_verify_32(e,t,n,s){return vn(e,t,n,s,32)}function core_salsa20(e,t,n,s){var i=s[0]&255|(s[1]&255)<<8|(s[2]&255)<<16|(s[3]&255)<<24,o=n[0]&255|(n[1]&255)<<8|(n[2]&255)<<16|(n[3]&255)<<24,h=n[4]&255|(n[5]&255)<<8|(n[6]&255)<<16|(n[7]&255)<<24,l=n[8]&255|(n[9]&255)<<8|(n[10]&255)<<16|(n[11]&255)<<24,u=n[12]&255|(n[13]&255)<<8|(n[14]&255)<<16|(n[15]&255)<<24,g=s[4]&255|(s[5]&255)<<8|(s[6]&255)<<16|(s[7]&255)<<24,f=t[0]&255|(t[1]&255)<<8|(t[2]&255)<<16|(t[3]&255)<<24,E=t[4]&255|(t[5]&255)<<8|(t[6]&255)<<16|(t[7]&255)<<24,I=t[8]&255|(t[9]&255)<<8|(t[10]&255)<<16|(t[11]&255)<<24,C=t[12]&255|(t[13]&255)<<8|(t[14]&255)<<16|(t[15]&255)<<24,B=s[8]&255|(s[9]&255)<<8|(s[10]&255)<<16|(s[11]&255)<<24,Q=n[16]&255|(n[17]&255)<<8|(n[18]&255)<<16|(n[19]&255)<<24,p=n[20]&255|(n[21]&255)<<8|(n[22]&255)<<16|(n[23]&255)<<24,y=n[24]&255|(n[25]&255)<<8|(n[26]&255)<<16|(n[27]&255)<<24,w=n[28]&255|(n[29]&255)<<8|(n[30]&255)<<16|(n[31]&255)<<24,b=s[12]&255|(s[13]&255)<<8|(s[14]&255)<<16|(s[15]&255)<<24;var R=i,k=o,_=h,D=l,U=u,L=g,v=f,T=E,O=I,P=C,x=B,Y=Q,G=p,J=y,W=w,V=b,q;for(var j=0;j<20;j+=2){q=R+G|0;U^=q<<7|q>>>32-7;q=U+R|0;O^=q<<9|q>>>32-9;q=O+U|0;G^=q<<13|q>>>32-13;q=G+O|0;R^=q<<18|q>>>32-18;q=L+k|0;P^=q<<7|q>>>32-7;q=P+L|0;J^=q<<9|q>>>32-9;q=J+P|0;k^=q<<13|q>>>32-13;q=k+J|0;L^=q<<18|q>>>32-18;q=x+v|0;W^=q<<7|q>>>32-7;q=W+x|0;_^=q<<9|q>>>32-9;q=_+W|0;v^=q<<13|q>>>32-13;q=v+_|0;x^=q<<18|q>>>32-18;q=V+Y|0;D^=q<<7|q>>>32-7;q=D+V|0;T^=q<<9|q>>>32-9;q=T+D|0;Y^=q<<13|q>>>32-13;q=Y+T|0;V^=q<<18|q>>>32-18;q=R+D|0;k^=q<<7|q>>>32-7;q=k+R|0;_^=q<<9|q>>>32-9;q=_+k|0;D^=q<<13|q>>>32-13;q=D+_|0;R^=q<<18|q>>>32-18;q=L+U|0;v^=q<<7|q>>>32-7;q=v+L|0;T^=q<<9|q>>>32-9;q=T+v|0;U^=q<<13|q>>>32-13;q=U+T|0;L^=q<<18|q>>>32-18;q=x+P|0;Y^=q<<7|q>>>32-7;q=Y+x|0;O^=q<<9|q>>>32-9;q=O+Y|0;P^=q<<13|q>>>32-13;q=P+O|0;x^=q<<18|q>>>32-18;q=V+W|0;G^=q<<7|q>>>32-7;q=G+V|0;J^=q<<9|q>>>32-9;q=J+G|0;W^=q<<13|q>>>32-13;q=W+J|0;V^=q<<18|q>>>32-18}R=R+i|0;k=k+o|0;_=_+h|0;D=D+l|0;U=U+u|0;L=L+g|0;v=v+f|0;T=T+E|0;O=O+I|0;P=P+C|0;x=x+B|0;Y=Y+Q|0;G=G+p|0;J=J+y|0;W=W+w|0;V=V+b|0;e[0]=R>>>0&255;e[1]=R>>>8&255;e[2]=R>>>16&255;e[3]=R>>>24&255;e[4]=k>>>0&255;e[5]=k>>>8&255;e[6]=k>>>16&255;e[7]=k>>>24&255;e[8]=_>>>0&255;e[9]=_>>>8&255;e[10]=_>>>16&255;e[11]=_>>>24&255;e[12]=D>>>0&255;e[13]=D>>>8&255;e[14]=D>>>16&255;e[15]=D>>>24&255;e[16]=U>>>0&255;e[17]=U>>>8&255;e[18]=U>>>16&255;e[19]=U>>>24&255;e[20]=L>>>0&255;e[21]=L>>>8&255;e[22]=L>>>16&255;e[23]=L>>>24&255;e[24]=v>>>0&255;e[25]=v>>>8&255;e[26]=v>>>16&255;e[27]=v>>>24&255;e[28]=T>>>0&255;e[29]=T>>>8&255;e[30]=T>>>16&255;e[31]=T>>>24&255;e[32]=O>>>0&255;e[33]=O>>>8&255;e[34]=O>>>16&255;e[35]=O>>>24&255;e[36]=P>>>0&255;e[37]=P>>>8&255;e[38]=P>>>16&255;e[39]=P>>>24&255;e[40]=x>>>0&255;e[41]=x>>>8&255;e[42]=x>>>16&255;e[43]=x>>>24&255;e[44]=Y>>>0&255;e[45]=Y>>>8&255;e[46]=Y>>>16&255;e[47]=Y>>>24&255;e[48]=G>>>0&255;e[49]=G>>>8&255;e[50]=G>>>16&255;e[51]=G>>>24&255;e[52]=J>>>0&255;e[53]=J>>>8&255;e[54]=J>>>16&255;e[55]=J>>>24&255;e[56]=W>>>0&255;e[57]=W>>>8&255;e[58]=W>>>16&255;e[59]=W>>>24&255;e[60]=V>>>0&255;e[61]=V>>>8&255;e[62]=V>>>16&255;e[63]=V>>>24&255}function core_hsalsa20(e,t,n,s){var i=s[0]&255|(s[1]&255)<<8|(s[2]&255)<<16|(s[3]&255)<<24,o=n[0]&255|(n[1]&255)<<8|(n[2]&255)<<16|(n[3]&255)<<24,h=n[4]&255|(n[5]&255)<<8|(n[6]&255)<<16|(n[7]&255)<<24,l=n[8]&255|(n[9]&255)<<8|(n[10]&255)<<16|(n[11]&255)<<24,u=n[12]&255|(n[13]&255)<<8|(n[14]&255)<<16|(n[15]&255)<<24,g=s[4]&255|(s[5]&255)<<8|(s[6]&255)<<16|(s[7]&255)<<24,f=t[0]&255|(t[1]&255)<<8|(t[2]&255)<<16|(t[3]&255)<<24,E=t[4]&255|(t[5]&255)<<8|(t[6]&255)<<16|(t[7]&255)<<24,I=t[8]&255|(t[9]&255)<<8|(t[10]&255)<<16|(t[11]&255)<<24,C=t[12]&255|(t[13]&255)<<8|(t[14]&255)<<16|(t[15]&255)<<24,B=s[8]&255|(s[9]&255)<<8|(s[10]&255)<<16|(s[11]&255)<<24,Q=n[16]&255|(n[17]&255)<<8|(n[18]&255)<<16|(n[19]&255)<<24,p=n[20]&255|(n[21]&255)<<8|(n[22]&255)<<16|(n[23]&255)<<24,y=n[24]&255|(n[25]&255)<<8|(n[26]&255)<<16|(n[27]&255)<<24,w=n[28]&255|(n[29]&255)<<8|(n[30]&255)<<16|(n[31]&255)<<24,b=s[12]&255|(s[13]&255)<<8|(s[14]&255)<<16|(s[15]&255)<<24;var R=i,k=o,_=h,D=l,U=u,L=g,v=f,T=E,O=I,P=C,x=B,Y=Q,G=p,J=y,W=w,V=b,q;for(var j=0;j<20;j+=2){q=R+G|0;U^=q<<7|q>>>32-7;q=U+R|0;O^=q<<9|q>>>32-9;q=O+U|0;G^=q<<13|q>>>32-13;q=G+O|0;R^=q<<18|q>>>32-18;q=L+k|0;P^=q<<7|q>>>32-7;q=P+L|0;J^=q<<9|q>>>32-9;q=J+P|0;k^=q<<13|q>>>32-13;q=k+J|0;L^=q<<18|q>>>32-18;q=x+v|0;W^=q<<7|q>>>32-7;q=W+x|0;_^=q<<9|q>>>32-9;q=_+W|0;v^=q<<13|q>>>32-13;q=v+_|0;x^=q<<18|q>>>32-18;q=V+Y|0;D^=q<<7|q>>>32-7;q=D+V|0;T^=q<<9|q>>>32-9;q=T+D|0;Y^=q<<13|q>>>32-13;q=Y+T|0;V^=q<<18|q>>>32-18;q=R+D|0;k^=q<<7|q>>>32-7;q=k+R|0;_^=q<<9|q>>>32-9;q=_+k|0;D^=q<<13|q>>>32-13;q=D+_|0;R^=q<<18|q>>>32-18;q=L+U|0;v^=q<<7|q>>>32-7;q=v+L|0;T^=q<<9|q>>>32-9;q=T+v|0;U^=q<<13|q>>>32-13;q=U+T|0;L^=q<<18|q>>>32-18;q=x+P|0;Y^=q<<7|q>>>32-7;q=Y+x|0;O^=q<<9|q>>>32-9;q=O+Y|0;P^=q<<13|q>>>32-13;q=P+O|0;x^=q<<18|q>>>32-18;q=V+W|0;G^=q<<7|q>>>32-7;q=G+V|0;J^=q<<9|q>>>32-9;q=J+G|0;W^=q<<13|q>>>32-13;q=W+J|0;V^=q<<18|q>>>32-18}e[0]=R>>>0&255;e[1]=R>>>8&255;e[2]=R>>>16&255;e[3]=R>>>24&255;e[4]=L>>>0&255;e[5]=L>>>8&255;e[6]=L>>>16&255;e[7]=L>>>24&255;e[8]=x>>>0&255;e[9]=x>>>8&255;e[10]=x>>>16&255;e[11]=x>>>24&255;e[12]=V>>>0&255;e[13]=V>>>8&255;e[14]=V>>>16&255;e[15]=V>>>24&255;e[16]=v>>>0&255;e[17]=v>>>8&255;e[18]=v>>>16&255;e[19]=v>>>24&255;e[20]=T>>>0&255;e[21]=T>>>8&255;e[22]=T>>>16&255;e[23]=T>>>24&255;e[24]=O>>>0&255;e[25]=O>>>8&255;e[26]=O>>>16&255;e[27]=O>>>24&255;e[28]=P>>>0&255;e[29]=P>>>8&255;e[30]=P>>>16&255;e[31]=P>>>24&255}function crypto_core_salsa20(e,t,n,s){core_salsa20(e,t,n,s)}function crypto_core_hsalsa20(e,t,n,s){core_hsalsa20(e,t,n,s)}var I=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function crypto_stream_salsa20_xor(e,t,n,s,i,o,h){var l=new Uint8Array(16),u=new Uint8Array(64);var g,f;for(f=0;f<16;f++)l[f]=0;for(f=0;f<8;f++)l[f]=o[f];while(i>=64){crypto_core_salsa20(u,l,h,I);for(f=0;f<64;f++)e[t+f]=n[s+f]^u[f];g=1;for(f=8;f<16;f++){g=g+(l[f]&255)|0;l[f]=g&255;g>>>=8}i-=64;t+=64;s+=64}if(i>0){crypto_core_salsa20(u,l,h,I);for(f=0;f=64){crypto_core_salsa20(h,o,i,I);for(u=0;u<64;u++)e[t+u]=h[u];l=1;for(u=8;u<16;u++){l=l+(o[u]&255)|0;o[u]=l&255;l>>>=8}n-=64;t+=64}if(n>0){crypto_core_salsa20(h,o,i,I);for(u=0;u>>13|n<<3)&8191;s=e[4]&255|(e[5]&255)<<8;this.r[2]=(n>>>10|s<<6)&7939;i=e[6]&255|(e[7]&255)<<8;this.r[3]=(s>>>7|i<<9)&8191;o=e[8]&255|(e[9]&255)<<8;this.r[4]=(i>>>4|o<<12)&255;this.r[5]=o>>>1&8190;h=e[10]&255|(e[11]&255)<<8;this.r[6]=(o>>>14|h<<2)&8191;l=e[12]&255|(e[13]&255)<<8;this.r[7]=(h>>>11|l<<5)&8065;u=e[14]&255|(e[15]&255)<<8;this.r[8]=(l>>>8|u<<8)&8191;this.r[9]=u>>>5&127;this.pad[0]=e[16]&255|(e[17]&255)<<8;this.pad[1]=e[18]&255|(e[19]&255)<<8;this.pad[2]=e[20]&255|(e[21]&255)<<8;this.pad[3]=e[22]&255|(e[23]&255)<<8;this.pad[4]=e[24]&255|(e[25]&255)<<8;this.pad[5]=e[26]&255|(e[27]&255)<<8;this.pad[6]=e[28]&255|(e[29]&255)<<8;this.pad[7]=e[30]&255|(e[31]&255)<<8};poly1305.prototype.blocks=function(e,t,n){var s=this.fin?0:1<<11;var i,o,h,l,u,g,f,E,I;var C,B,Q,p,y,w,b,R,k,_;var D=this.h[0],U=this.h[1],L=this.h[2],v=this.h[3],T=this.h[4],O=this.h[5],P=this.h[6],x=this.h[7],Y=this.h[8],G=this.h[9];var J=this.r[0],W=this.r[1],V=this.r[2],q=this.r[3],j=this.r[4],z=this.r[5],$=this.r[6],ee=this.r[7],te=this.r[8],Ae=this.r[9];while(n>=16){i=e[t+0]&255|(e[t+1]&255)<<8;D+=i&8191;o=e[t+2]&255|(e[t+3]&255)<<8;U+=(i>>>13|o<<3)&8191;h=e[t+4]&255|(e[t+5]&255)<<8;L+=(o>>>10|h<<6)&8191;l=e[t+6]&255|(e[t+7]&255)<<8;v+=(h>>>7|l<<9)&8191;u=e[t+8]&255|(e[t+9]&255)<<8;T+=(l>>>4|u<<12)&8191;O+=u>>>1&8191;g=e[t+10]&255|(e[t+11]&255)<<8;P+=(u>>>14|g<<2)&8191;f=e[t+12]&255|(e[t+13]&255)<<8;x+=(g>>>11|f<<5)&8191;E=e[t+14]&255|(e[t+15]&255)<<8;Y+=(f>>>8|E<<8)&8191;G+=E>>>5|s;I=0;C=I;C+=D*J;C+=U*(5*Ae);C+=L*(5*te);C+=v*(5*ee);C+=T*(5*$);I=C>>>13;C&=8191;C+=O*(5*z);C+=P*(5*j);C+=x*(5*q);C+=Y*(5*V);C+=G*(5*W);I+=C>>>13;C&=8191;B=I;B+=D*W;B+=U*J;B+=L*(5*Ae);B+=v*(5*te);B+=T*(5*ee);I=B>>>13;B&=8191;B+=O*(5*$);B+=P*(5*z);B+=x*(5*j);B+=Y*(5*q);B+=G*(5*V);I+=B>>>13;B&=8191;Q=I;Q+=D*V;Q+=U*W;Q+=L*J;Q+=v*(5*Ae);Q+=T*(5*te);I=Q>>>13;Q&=8191;Q+=O*(5*ee);Q+=P*(5*$);Q+=x*(5*z);Q+=Y*(5*j);Q+=G*(5*q);I+=Q>>>13;Q&=8191;p=I;p+=D*q;p+=U*V;p+=L*W;p+=v*J;p+=T*(5*Ae);I=p>>>13;p&=8191;p+=O*(5*te);p+=P*(5*ee);p+=x*(5*$);p+=Y*(5*z);p+=G*(5*j);I+=p>>>13;p&=8191;y=I;y+=D*j;y+=U*q;y+=L*V;y+=v*W;y+=T*J;I=y>>>13;y&=8191;y+=O*(5*Ae);y+=P*(5*te);y+=x*(5*ee);y+=Y*(5*$);y+=G*(5*z);I+=y>>>13;y&=8191;w=I;w+=D*z;w+=U*j;w+=L*q;w+=v*V;w+=T*W;I=w>>>13;w&=8191;w+=O*J;w+=P*(5*Ae);w+=x*(5*te);w+=Y*(5*ee);w+=G*(5*$);I+=w>>>13;w&=8191;b=I;b+=D*$;b+=U*z;b+=L*j;b+=v*q;b+=T*V;I=b>>>13;b&=8191;b+=O*W;b+=P*J;b+=x*(5*Ae);b+=Y*(5*te);b+=G*(5*ee);I+=b>>>13;b&=8191;R=I;R+=D*ee;R+=U*$;R+=L*z;R+=v*j;R+=T*q;I=R>>>13;R&=8191;R+=O*V;R+=P*W;R+=x*J;R+=Y*(5*Ae);R+=G*(5*te);I+=R>>>13;R&=8191;k=I;k+=D*te;k+=U*ee;k+=L*$;k+=v*z;k+=T*j;I=k>>>13;k&=8191;k+=O*q;k+=P*V;k+=x*W;k+=Y*J;k+=G*(5*Ae);I+=k>>>13;k&=8191;_=I;_+=D*Ae;_+=U*te;_+=L*ee;_+=v*$;_+=T*z;I=_>>>13;_&=8191;_+=O*j;_+=P*q;_+=x*V;_+=Y*W;_+=G*J;I+=_>>>13;_&=8191;I=(I<<2)+I|0;I=I+C|0;C=I&8191;I=I>>>13;B+=I;D=C;U=B;L=Q;v=p;T=y;O=w;P=b;x=R;Y=k;G=_;t+=16;n-=16}this.h[0]=D;this.h[1]=U;this.h[2]=L;this.h[3]=v;this.h[4]=T;this.h[5]=O;this.h[6]=P;this.h[7]=x;this.h[8]=Y;this.h[9]=G};poly1305.prototype.finish=function(e,t){var n=new Uint16Array(10);var s,i,o,h;if(this.leftover){h=this.leftover;this.buffer[h++]=1;for(;h<16;h++)this.buffer[h]=0;this.fin=1;this.blocks(this.buffer,0,16)}s=this.h[1]>>>13;this.h[1]&=8191;for(h=2;h<10;h++){this.h[h]+=s;s=this.h[h]>>>13;this.h[h]&=8191}this.h[0]+=s*5;s=this.h[0]>>>13;this.h[0]&=8191;this.h[1]+=s;s=this.h[1]>>>13;this.h[1]&=8191;this.h[2]+=s;n[0]=this.h[0]+5;s=n[0]>>>13;n[0]&=8191;for(h=1;h<10;h++){n[h]=this.h[h]+s;s=n[h]>>>13;n[h]&=8191}n[9]-=1<<13;i=(s^1)-1;for(h=0;h<10;h++)n[h]&=i;i=~i;for(h=0;h<10;h++)this.h[h]=this.h[h]&i|n[h];this.h[0]=(this.h[0]|this.h[1]<<13)&65535;this.h[1]=(this.h[1]>>>3|this.h[2]<<10)&65535;this.h[2]=(this.h[2]>>>6|this.h[3]<<7)&65535;this.h[3]=(this.h[3]>>>9|this.h[4]<<4)&65535;this.h[4]=(this.h[4]>>>12|this.h[5]<<1|this.h[6]<<14)&65535;this.h[5]=(this.h[6]>>>2|this.h[7]<<11)&65535;this.h[6]=(this.h[7]>>>5|this.h[8]<<8)&65535;this.h[7]=(this.h[8]>>>8|this.h[9]<<5)&65535;o=this.h[0]+this.pad[0];this.h[0]=o&65535;for(h=1;h<8;h++){o=(this.h[h]+this.pad[h]|0)+(o>>>16)|0;this.h[h]=o&65535}e[t+0]=this.h[0]>>>0&255;e[t+1]=this.h[0]>>>8&255;e[t+2]=this.h[1]>>>0&255;e[t+3]=this.h[1]>>>8&255;e[t+4]=this.h[2]>>>0&255;e[t+5]=this.h[2]>>>8&255;e[t+6]=this.h[3]>>>0&255;e[t+7]=this.h[3]>>>8&255;e[t+8]=this.h[4]>>>0&255;e[t+9]=this.h[4]>>>8&255;e[t+10]=this.h[5]>>>0&255;e[t+11]=this.h[5]>>>8&255;e[t+12]=this.h[6]>>>0&255;e[t+13]=this.h[6]>>>8&255;e[t+14]=this.h[7]>>>0&255;e[t+15]=this.h[7]>>>8&255};poly1305.prototype.update=function(e,t,n){var s,i;if(this.leftover){i=16-this.leftover;if(i>n)i=n;for(s=0;s=16){i=n-n%16;this.blocks(e,t,i);t+=i;n-=i}if(n){for(s=0;s>16&1);o[n-1]&=65535}o[15]=h[15]-32767-(o[14]>>16&1);i=o[15]>>16&1;o[14]&=65535;sel25519(h,o,1-i)}for(n=0;n<16;n++){e[2*n]=h[n]&255;e[2*n+1]=h[n]>>8}}function neq25519(e,t){var n=new Uint8Array(32),s=new Uint8Array(32);pack25519(n,e);pack25519(s,t);return crypto_verify_32(n,0,s,0)}function par25519(e){var t=new Uint8Array(32);pack25519(t,e);return t[0]&1}function unpack25519(e,t){var n;for(n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}function A(e,t,n){for(var s=0;s<16;s++)e[s]=t[s]+n[s]}function Z(e,t,n){for(var s=0;s<16;s++)e[s]=t[s]-n[s]}function M(e,t,n){var s,i,o=0,h=0,l=0,u=0,g=0,f=0,E=0,I=0,C=0,B=0,Q=0,p=0,y=0,w=0,b=0,R=0,k=0,_=0,D=0,U=0,L=0,v=0,T=0,O=0,P=0,x=0,Y=0,G=0,J=0,W=0,V=0,q=n[0],j=n[1],z=n[2],$=n[3],ee=n[4],te=n[5],Ae=n[6],re=n[7],ne=n[8],se=n[9],ie=n[10],oe=n[11],ae=n[12],ce=n[13],he=n[14],le=n[15];s=t[0];o+=s*q;h+=s*j;l+=s*z;u+=s*$;g+=s*ee;f+=s*te;E+=s*Ae;I+=s*re;C+=s*ne;B+=s*se;Q+=s*ie;p+=s*oe;y+=s*ae;w+=s*ce;b+=s*he;R+=s*le;s=t[1];h+=s*q;l+=s*j;u+=s*z;g+=s*$;f+=s*ee;E+=s*te;I+=s*Ae;C+=s*re;B+=s*ne;Q+=s*se;p+=s*ie;y+=s*oe;w+=s*ae;b+=s*ce;R+=s*he;k+=s*le;s=t[2];l+=s*q;u+=s*j;g+=s*z;f+=s*$;E+=s*ee;I+=s*te;C+=s*Ae;B+=s*re;Q+=s*ne;p+=s*se;y+=s*ie;w+=s*oe;b+=s*ae;R+=s*ce;k+=s*he;_+=s*le;s=t[3];u+=s*q;g+=s*j;f+=s*z;E+=s*$;I+=s*ee;C+=s*te;B+=s*Ae;Q+=s*re;p+=s*ne;y+=s*se;w+=s*ie;b+=s*oe;R+=s*ae;k+=s*ce;_+=s*he;D+=s*le;s=t[4];g+=s*q;f+=s*j;E+=s*z;I+=s*$;C+=s*ee;B+=s*te;Q+=s*Ae;p+=s*re;y+=s*ne;w+=s*se;b+=s*ie;R+=s*oe;k+=s*ae;_+=s*ce;D+=s*he;U+=s*le;s=t[5];f+=s*q;E+=s*j;I+=s*z;C+=s*$;B+=s*ee;Q+=s*te;p+=s*Ae;y+=s*re;w+=s*ne;b+=s*se;R+=s*ie;k+=s*oe;_+=s*ae;D+=s*ce;U+=s*he;L+=s*le;s=t[6];E+=s*q;I+=s*j;C+=s*z;B+=s*$;Q+=s*ee;p+=s*te;y+=s*Ae;w+=s*re;b+=s*ne;R+=s*se;k+=s*ie;_+=s*oe;D+=s*ae;U+=s*ce;L+=s*he;v+=s*le;s=t[7];I+=s*q;C+=s*j;B+=s*z;Q+=s*$;p+=s*ee;y+=s*te;w+=s*Ae;b+=s*re;R+=s*ne;k+=s*se;_+=s*ie;D+=s*oe;U+=s*ae;L+=s*ce;v+=s*he;T+=s*le;s=t[8];C+=s*q;B+=s*j;Q+=s*z;p+=s*$;y+=s*ee;w+=s*te;b+=s*Ae;R+=s*re;k+=s*ne;_+=s*se;D+=s*ie;U+=s*oe;L+=s*ae;v+=s*ce;T+=s*he;O+=s*le;s=t[9];B+=s*q;Q+=s*j;p+=s*z;y+=s*$;w+=s*ee;b+=s*te;R+=s*Ae;k+=s*re;_+=s*ne;D+=s*se;U+=s*ie;L+=s*oe;v+=s*ae;T+=s*ce;O+=s*he;P+=s*le;s=t[10];Q+=s*q;p+=s*j;y+=s*z;w+=s*$;b+=s*ee;R+=s*te;k+=s*Ae;_+=s*re;D+=s*ne;U+=s*se;L+=s*ie;v+=s*oe;T+=s*ae;O+=s*ce;P+=s*he;x+=s*le;s=t[11];p+=s*q;y+=s*j;w+=s*z;b+=s*$;R+=s*ee;k+=s*te;_+=s*Ae;D+=s*re;U+=s*ne;L+=s*se;v+=s*ie;T+=s*oe;O+=s*ae;P+=s*ce;x+=s*he;Y+=s*le;s=t[12];y+=s*q;w+=s*j;b+=s*z;R+=s*$;k+=s*ee;_+=s*te;D+=s*Ae;U+=s*re;L+=s*ne;v+=s*se;T+=s*ie;O+=s*oe;P+=s*ae;x+=s*ce;Y+=s*he;G+=s*le;s=t[13];w+=s*q;b+=s*j;R+=s*z;k+=s*$;_+=s*ee;D+=s*te;U+=s*Ae;L+=s*re;v+=s*ne;T+=s*se;O+=s*ie;P+=s*oe;x+=s*ae;Y+=s*ce;G+=s*he;J+=s*le;s=t[14];b+=s*q;R+=s*j;k+=s*z;_+=s*$;D+=s*ee;U+=s*te;L+=s*Ae;v+=s*re;T+=s*ne;O+=s*se;P+=s*ie;x+=s*oe;Y+=s*ae;G+=s*ce;J+=s*he;W+=s*le;s=t[15];R+=s*q;k+=s*j;_+=s*z;D+=s*$;U+=s*ee;L+=s*te;v+=s*Ae;T+=s*re;O+=s*ne;P+=s*se;x+=s*ie;Y+=s*oe;G+=s*ae;J+=s*ce;W+=s*he;V+=s*le;o+=38*k;h+=38*_;l+=38*D;u+=38*U;g+=38*L;f+=38*v;E+=38*T;I+=38*O;C+=38*P;B+=38*x;Q+=38*Y;p+=38*G;y+=38*J;w+=38*W;b+=38*V;i=1;s=o+i+65535;i=Math.floor(s/65536);o=s-i*65536;s=h+i+65535;i=Math.floor(s/65536);h=s-i*65536;s=l+i+65535;i=Math.floor(s/65536);l=s-i*65536;s=u+i+65535;i=Math.floor(s/65536);u=s-i*65536;s=g+i+65535;i=Math.floor(s/65536);g=s-i*65536;s=f+i+65535;i=Math.floor(s/65536);f=s-i*65536;s=E+i+65535;i=Math.floor(s/65536);E=s-i*65536;s=I+i+65535;i=Math.floor(s/65536);I=s-i*65536;s=C+i+65535;i=Math.floor(s/65536);C=s-i*65536;s=B+i+65535;i=Math.floor(s/65536);B=s-i*65536;s=Q+i+65535;i=Math.floor(s/65536);Q=s-i*65536;s=p+i+65535;i=Math.floor(s/65536);p=s-i*65536;s=y+i+65535;i=Math.floor(s/65536);y=s-i*65536;s=w+i+65535;i=Math.floor(s/65536);w=s-i*65536;s=b+i+65535;i=Math.floor(s/65536);b=s-i*65536;s=R+i+65535;i=Math.floor(s/65536);R=s-i*65536;o+=i-1+37*(i-1);i=1;s=o+i+65535;i=Math.floor(s/65536);o=s-i*65536;s=h+i+65535;i=Math.floor(s/65536);h=s-i*65536;s=l+i+65535;i=Math.floor(s/65536);l=s-i*65536;s=u+i+65535;i=Math.floor(s/65536);u=s-i*65536;s=g+i+65535;i=Math.floor(s/65536);g=s-i*65536;s=f+i+65535;i=Math.floor(s/65536);f=s-i*65536;s=E+i+65535;i=Math.floor(s/65536);E=s-i*65536;s=I+i+65535;i=Math.floor(s/65536);I=s-i*65536;s=C+i+65535;i=Math.floor(s/65536);C=s-i*65536;s=B+i+65535;i=Math.floor(s/65536);B=s-i*65536;s=Q+i+65535;i=Math.floor(s/65536);Q=s-i*65536;s=p+i+65535;i=Math.floor(s/65536);p=s-i*65536;s=y+i+65535;i=Math.floor(s/65536);y=s-i*65536;s=w+i+65535;i=Math.floor(s/65536);w=s-i*65536;s=b+i+65535;i=Math.floor(s/65536);b=s-i*65536;s=R+i+65535;i=Math.floor(s/65536);R=s-i*65536;o+=i-1+37*(i-1);e[0]=o;e[1]=h;e[2]=l;e[3]=u;e[4]=g;e[5]=f;e[6]=E;e[7]=I;e[8]=C;e[9]=B;e[10]=Q;e[11]=p;e[12]=y;e[13]=w;e[14]=b;e[15]=R}function S(e,t){M(e,t,t)}function inv25519(e,t){var n=gf();var s;for(s=0;s<16;s++)n[s]=t[s];for(s=253;s>=0;s--){S(n,n);if(s!==2&&s!==4)M(n,n,t)}for(s=0;s<16;s++)e[s]=n[s]}function pow2523(e,t){var n=gf();var s;for(s=0;s<16;s++)n[s]=t[s];for(s=250;s>=0;s--){S(n,n);if(s!==1)M(n,n,t)}for(s=0;s<16;s++)e[s]=n[s]}function crypto_scalarmult(e,t,n){var s=new Uint8Array(32);var i=new Float64Array(80),o,l;var u=gf(),g=gf(),f=gf(),E=gf(),I=gf(),C=gf();for(l=0;l<31;l++)s[l]=t[l];s[31]=t[31]&127|64;s[0]&=248;unpack25519(i,n);for(l=0;l<16;l++){g[l]=i[l];E[l]=u[l]=f[l]=0}u[0]=E[0]=1;for(l=254;l>=0;--l){o=s[l>>>3]>>>(l&7)&1;sel25519(u,g,o);sel25519(f,E,o);A(I,u,f);Z(u,u,f);A(f,g,E);Z(g,g,E);S(E,I);S(C,u);M(u,f,u);M(f,g,I);A(I,u,f);Z(u,u,f);S(g,u);Z(f,E,C);M(u,f,h);A(u,u,E);M(f,f,u);M(u,E,C);M(E,g,i);S(g,I);sel25519(u,g,o);sel25519(f,E,o)}for(l=0;l<16;l++){i[l+16]=u[l];i[l+32]=f[l];i[l+48]=g[l];i[l+64]=E[l]}var B=i.subarray(32);var Q=i.subarray(16);inv25519(B,B);M(Q,Q,B);pack25519(e,Q);return 0}function crypto_scalarmult_base(e,t){return crypto_scalarmult(e,t,s)}function crypto_box_keypair(e,t){randombytes(t,32);return crypto_scalarmult_base(e,t)}function crypto_box_beforenm(e,n,s){var i=new Uint8Array(32);crypto_scalarmult(i,s,n);return crypto_core_hsalsa20(e,t,i,I)}var C=crypto_secretbox;var B=crypto_secretbox_open;function crypto_box(e,t,n,s,i,o){var h=new Uint8Array(32);crypto_box_beforenm(h,i,o);return C(e,t,n,s,h)}function crypto_box_open(e,t,n,s,i,o){var h=new Uint8Array(32);crypto_box_beforenm(h,i,o);return B(e,t,n,s,h)}var Q=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function crypto_hashblocks_hl(e,t,n,s){var i=new Int32Array(16),o=new Int32Array(16),h,l,u,g,f,E,I,C,B,p,y,w,b,R,k,_,D,U,L,v,T,O,P,x,Y,G;var J=e[0],W=e[1],V=e[2],q=e[3],j=e[4],z=e[5],$=e[6],ee=e[7],te=t[0],Ae=t[1],re=t[2],ne=t[3],se=t[4],ie=t[5],oe=t[6],ae=t[7];var ce=0;while(s>=128){for(L=0;L<16;L++){v=8*L+ce;i[L]=n[v+0]<<24|n[v+1]<<16|n[v+2]<<8|n[v+3];o[L]=n[v+4]<<24|n[v+5]<<16|n[v+6]<<8|n[v+7]}for(L=0;L<80;L++){h=J;l=W;u=V;g=q;f=j;E=z;I=$;C=ee;B=te;p=Ae;y=re;w=ne;b=se;R=ie;k=oe;_=ae;T=ee;O=ae;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=(j>>>14|se<<32-14)^(j>>>18|se<<32-18)^(se>>>41-32|j<<32-(41-32));O=(se>>>14|j<<32-14)^(se>>>18|j<<32-18)^(j>>>41-32|se<<32-(41-32));P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;T=j&z^~j&$;O=se&ie^~se&oe;P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;T=Q[L*2];O=Q[L*2+1];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;T=i[L%16];O=o[L%16];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;D=Y&65535|G<<16;U=P&65535|x<<16;T=D;O=U;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=(J>>>28|te<<32-28)^(te>>>34-32|J<<32-(34-32))^(te>>>39-32|J<<32-(39-32));O=(te>>>28|J<<32-28)^(J>>>34-32|te<<32-(34-32))^(J>>>39-32|te<<32-(39-32));P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;T=J&W^J&V^W&V;O=te&Ae^te&re^Ae&re;P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;C=Y&65535|G<<16;_=P&65535|x<<16;T=g;O=w;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=D;O=U;P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;g=Y&65535|G<<16;w=P&65535|x<<16;W=h;V=l;q=u;j=g;z=f;$=E;ee=I;J=C;Ae=B;re=p;ne=y;se=w;ie=b;oe=R;ae=k;te=_;if(L%16===15){for(v=0;v<16;v++){T=i[v];O=o[v];P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=i[(v+9)%16];O=o[(v+9)%16];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;D=i[(v+1)%16];U=o[(v+1)%16];T=(D>>>1|U<<32-1)^(D>>>8|U<<32-8)^D>>>7;O=(U>>>1|D<<32-1)^(U>>>8|D<<32-8)^(U>>>7|D<<32-7);P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;D=i[(v+14)%16];U=o[(v+14)%16];T=(D>>>19|U<<32-19)^(U>>>61-32|D<<32-(61-32))^D>>>6;O=(U>>>19|D<<32-19)^(D>>>61-32|U<<32-(61-32))^(U>>>6|D<<32-6);P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;i[v]=Y&65535|G<<16;o[v]=P&65535|x<<16}}}T=J;O=te;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[0];O=t[0];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[0]=J=Y&65535|G<<16;t[0]=te=P&65535|x<<16;T=W;O=Ae;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[1];O=t[1];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[1]=W=Y&65535|G<<16;t[1]=Ae=P&65535|x<<16;T=V;O=re;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[2];O=t[2];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[2]=V=Y&65535|G<<16;t[2]=re=P&65535|x<<16;T=q;O=ne;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[3];O=t[3];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[3]=q=Y&65535|G<<16;t[3]=ne=P&65535|x<<16;T=j;O=se;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[4];O=t[4];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[4]=j=Y&65535|G<<16;t[4]=se=P&65535|x<<16;T=z;O=ie;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[5];O=t[5];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[5]=z=Y&65535|G<<16;t[5]=ie=P&65535|x<<16;T=$;O=oe;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[6];O=t[6];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[6]=$=Y&65535|G<<16;t[6]=oe=P&65535|x<<16;T=ee;O=ae;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[7];O=t[7];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[7]=ee=Y&65535|G<<16;t[7]=ae=P&65535|x<<16;ce+=128;s-=128}return s}function crypto_hash(e,t,n){var s=new Int32Array(8),i=new Int32Array(8),o=new Uint8Array(256),h,l=n;s[0]=1779033703;s[1]=3144134277;s[2]=1013904242;s[3]=2773480762;s[4]=1359893119;s[5]=2600822924;s[6]=528734635;s[7]=1541459225;i[0]=4089235720;i[1]=2227873595;i[2]=4271175723;i[3]=1595750129;i[4]=2917565137;i[5]=725511199;i[6]=4215389547;i[7]=327033209;crypto_hashblocks_hl(s,i,t,n);n%=128;for(h=0;h=0;--h){s=n[h/8|0]>>(h&7)&1;cswap(e,t,s);add(t,e);add(e,e);cswap(e,t,s)}}function scalarbase(e,t){var n=[gf(),gf(),gf(),gf()];set25519(n[0],g);set25519(n[1],f);set25519(n[2],o);M(n[3],g,f);scalarmult(e,n,t)}function crypto_sign_keypair(e,t,n){var s=new Uint8Array(64);var i=[gf(),gf(),gf(),gf()];var o;if(!n)randombytes(t,32);crypto_hash(s,t,32);s[0]&=248;s[31]&=127;s[31]|=64;scalarbase(i,s);pack(e,i);for(o=0;o<32;o++)t[o+32]=e[o];return 0}var p=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function modL(e,t){var n,s,i,o;for(s=63;s>=32;--s){n=0;for(i=s-32,o=s-12;i>8;t[i]-=n*256}t[i]+=n;t[s]=0}n=0;for(i=0;i<32;i++){t[i]+=n-(t[31]>>4)*p[i];n=t[i]>>8;t[i]&=255}for(i=0;i<32;i++)t[i]-=n*p[i];for(s=0;s<32;s++){t[s+1]+=t[s]>>8;e[s]=t[s]&255}}function reduce(e){var t=new Float64Array(64),n;for(n=0;n<64;n++)t[n]=e[n];for(n=0;n<64;n++)e[n]=0;modL(e,t)}function crypto_sign(e,t,n,s){var i=new Uint8Array(64),o=new Uint8Array(64),h=new Uint8Array(64);var l,u,g=new Float64Array(64);var f=[gf(),gf(),gf(),gf()];crypto_hash(i,s,32);i[0]&=248;i[31]&=127;i[31]|=64;var E=n+64;for(l=0;l>7)Z(e[0],i,e[0]);M(e[3],e[0],e[1]);return 0}function crypto_sign_open(e,t,n,s){var i,o;var h=new Uint8Array(32),l=new Uint8Array(64);var u=[gf(),gf(),gf(),gf()],g=[gf(),gf(),gf(),gf()];o=-1;if(n<64)return-1;if(unpackneg(g,s))return-1;for(i=0;i=0};e.sign.keyPair=function(){var e=new Uint8Array(x);var t=new Uint8Array(Y);crypto_sign_keypair(e,t);return{publicKey:e,secretKey:t}};e.sign.keyPair.fromSecretKey=function(e){checkArrayTypes(e);if(e.length!==Y)throw new Error("bad secret key size");var t=new Uint8Array(x);for(var n=0;n{var n=void 0;var s=1e5;var i=function(){var e=Object.prototype.toString,t=Object.prototype.hasOwnProperty;return{Class:function(t){return e.call(t).replace(/^\[object *|\]$/g,"")},HasProperty:function(e,t){return t in e},HasOwnProperty:function(e,n){return t.call(e,n)},IsCallable:function(e){return typeof e==="function"},ToInt32:function(e){return e>>0},ToUint32:function(e){return e>>>0}}}();var o=Math.LN2,h=Math.abs,l=Math.floor,u=Math.log,g=Math.min,f=Math.pow,E=Math.round;function configureProperties(e){if(C&&I){var t=C(e),n;for(n=0;ns)throw new RangeError("Array too large for polyfill");function makeArrayAccessor(t){I(e,t,{get:function(){return e._getter(t)},set:function(n){e._setter(t,n)},enumerable:true,configurable:false})}var t;for(t=0;t>n}function as_unsigned(e,t){var n=32-t;return e<>>n}function packI8(e){return[e&255]}function unpackI8(e){return as_signed(e[0],8)}function packU8(e){return[e&255]}function unpackU8(e){return as_unsigned(e[0],8)}function packU8Clamped(e){e=E(Number(e));return[e<0?0:e>255?255:e&255]}function packI16(e){return[e>>8&255,e&255]}function unpackI16(e){return as_signed(e[0]<<8|e[1],16)}function packU16(e){return[e>>8&255,e&255]}function unpackU16(e){return as_unsigned(e[0]<<8|e[1],16)}function packI32(e){return[e>>24&255,e>>16&255,e>>8&255,e&255]}function unpackI32(e){return as_signed(e[0]<<24|e[1]<<16|e[2]<<8|e[3],32)}function packU32(e){return[e>>24&255,e>>16&255,e>>8&255,e&255]}function unpackU32(e){return as_unsigned(e[0]<<24|e[1]<<16|e[2]<<8|e[3],32)}function packIEEE754(e,t,n){var s=(1<.5)return t+1;return t%2?t+1:t}if(e!==e){E=(1<=f(2,1-s)){E=g(l(u(e)/o),1023);I=roundToEven(e/f(2,E)*f(2,n));if(I/f(2,n)>=2){E=E+1;I=1}if(E>s){E=(1<>1}}s.reverse();l=s.join("");u=(1<0){return g*f(2,E-u)*(1+I/f(2,n))}else if(I!==0){return g*f(2,-(u-1))*(I/f(2,n))}else{return g<0?-0:0}}function unpackF64(e){return unpackIEEE754(e,11,52)}function packF64(e){return packIEEE754(e,11,52)}function unpackF32(e){return unpackIEEE754(e,8,23)}function packF32(e){return packIEEE754(e,8,23)}(function(){var e=function ArrayBuffer(e){e=i.ToInt32(e);if(e<0)throw new RangeError("ArrayBuffer size is not a small enough positive integer");this.byteLength=e;this._bytes=[];this._bytes.length=e;var t;for(t=0;tthis.buffer.byteLength){throw new RangeError("byteOffset out of range")}if(this.byteOffset%this.BYTES_PER_ELEMENT){throw new RangeError("ArrayBuffer length minus the byteOffset is not a multiple of the element size.")}if(arguments.length<3){this.byteLength=this.buffer.byteLength-this.byteOffset;if(this.byteLength%this.BYTES_PER_ELEMENT){throw new RangeError("length of buffer minus byteOffset not a multiple of the element size")}this.length=this.byteLength/this.BYTES_PER_ELEMENT}else{this.length=i.ToUint32(s);this.byteLength=this.length*this.BYTES_PER_ELEMENT}if(this.byteOffset+this.byteLength>this.buffer.byteLength){throw new RangeError("byteOffset and length reference an area beyond the end of the buffer")}}else{throw new TypeError("Unexpected argument type(s)")}this.constructor=l;configureProperties(this);makeArrayAccessors(this)};l.prototype=new s;l.prototype.BYTES_PER_ELEMENT=t;l.prototype._pack=o;l.prototype._unpack=h;l.BYTES_PER_ELEMENT=t;l.prototype._getter=function(e){if(arguments.length<1)throw new SyntaxError("Not enough arguments");e=i.ToUint32(e);if(e>=this.length){return n}var t=[],s,o;for(s=0,o=this.byteOffset+e*this.BYTES_PER_ELEMENT;s=this.length){return n}var s=this._pack(t),o,h;for(o=0,h=this.byteOffset+e*this.BYTES_PER_ELEMENT;othis.length){throw new RangeError("Offset plus length of array is out of range")}f=this.byteOffset+o*this.BYTES_PER_ELEMENT;E=n.length*this.BYTES_PER_ELEMENT;if(n.buffer===this.buffer){I=[];for(l=0,u=n.byteOffset;lthis.length){throw new RangeError("Offset plus length of array is out of range")}for(l=0;ln?n:e}e=i.ToInt32(e);t=i.ToInt32(t);if(arguments.length<1){e=0}if(arguments.length<2){t=this.length}if(e<0){e=this.length+e}if(t<0){t=this.length+t}e=clamp(e,0,this.length);t=clamp(t,0,this.length);var n=t-e;if(n<0){n=0}return new this.constructor(this.buffer,this.byteOffset+e*this.BYTES_PER_ELEMENT,n)};return l}var o=makeConstructor(1,packI8,unpackI8);var h=makeConstructor(1,packU8,unpackU8);var l=makeConstructor(1,packU8Clamped,unpackU8);var u=makeConstructor(2,packI16,unpackI16);var g=makeConstructor(2,packU16,unpackU16);var f=makeConstructor(4,packI32,unpackI32);var E=makeConstructor(4,packU32,unpackU32);var I=makeConstructor(4,packF32,unpackF32);var C=makeConstructor(8,packF64,unpackF64);t.iq=t.iq||o;t.U2=t.U2||h;t.we=t.we||l;t.M2=t.M2||u;t.HA=t.HA||g;t.ZV=t.ZV||f;t._R=t._R||E;t.$L=t.$L||I;t.I=t.I||C})();(function(){function r(e,t){return i.IsCallable(e.get)?e.get(t):e[t]}var e=function(){var e=new t.HA([4660]),n=new t.U2(e.buffer);return r(n,0)===18}();var n=function DataView(e,n,s){if(arguments.length===0){e=new t.eT(0)}else if(!(e instanceof t.eT||i.Class(e)==="ArrayBuffer")){throw new TypeError("TypeError")}this.buffer=e||new t.eT(0);this.byteOffset=i.ToUint32(n);if(this.byteOffset>this.buffer.byteLength){throw new RangeError("byteOffset out of range")}if(arguments.length<3){this.byteLength=this.buffer.byteLength-this.byteOffset}else{this.byteLength=i.ToUint32(s)}if(this.byteOffset+this.byteLength>this.buffer.byteLength){throw new RangeError("byteOffset and length reference an area beyond the end of the buffer")}configureProperties(this)};function makeGetter(n){return function(s,o){s=i.ToUint32(s);if(s+n.BYTES_PER_ELEMENT>this.byteLength){throw new RangeError("Array index out of range")}s+=this.byteOffset;var h=new t.U2(this.buffer,s,n.BYTES_PER_ELEMENT),l=[],u;for(u=0;uthis.byteLength){throw new RangeError("Array index out of range")}var l=new n([o]),u=new t.U2(l.buffer),g=[],f,E;for(f=0;f{"use strict";const s=n(3598);const i=n(412);const o=n(8045);const h=n(4634);const l=n(7931);const u=n(7890);const g=n(3983);const{InvalidArgumentError:f}=o;const E=n(4059);const I=n(2067);const C=n(8687);const B=n(6771);const Q=n(6193);const p=n(888);const y=n(7858);const{getGlobalDispatcher:w,setGlobalDispatcher:b}=n(1892);const R=n(6930);const k=n(2860);const _=n(8861);let D;try{n(6113);D=true}catch{D=false}Object.assign(i.prototype,E);e.exports.Dispatcher=i;e.exports.Client=s;e.exports.Pool=h;e.exports.BalancedPool=l;e.exports.Agent=u;e.exports.ProxyAgent=y;e.exports.DecoratorHandler=R;e.exports.RedirectHandler=k;e.exports.createRedirectInterceptor=_;e.exports.buildConnector=I;e.exports.errors=o;function makeDispatcher(e){return(t,n,s)=>{if(typeof n==="function"){s=n;n=null}if(!t||typeof t!=="string"&&typeof t!=="object"&&!(t instanceof URL)){throw new f("invalid url")}if(n!=null&&typeof n!=="object"){throw new f("invalid opts")}if(n&&n.path!=null){if(typeof n.path!=="string"){throw new f("invalid opts.path")}let e=n.path;if(!n.path.startsWith("/")){e=`/${e}`}t=new URL(g.parseOrigin(t).origin+e)}else{if(!n){n=typeof t==="object"?t:{}}t=g.parseURL(t)}const{agent:i,dispatcher:o=w()}=n;if(i){throw new f("unsupported opts.agent. Did you mean opts.client?")}return e.call(o,{...n,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:n.method||(n.body?"PUT":"GET")},s)}}e.exports.setGlobalDispatcher=b;e.exports.getGlobalDispatcher=w;if(g.nodeMajor>16||g.nodeMajor===16&&g.nodeMinor>=8){let t=null;e.exports.fetch=async function fetch(e){if(!t){t=n(4881).fetch}try{return await t(...arguments)}catch(e){if(typeof e==="object"){Error.captureStackTrace(e,this)}throw e}};e.exports.Headers=n(554).Headers;e.exports.Response=n(7823).Response;e.exports.Request=n(8359).Request;e.exports.FormData=n(2015).FormData;e.exports.File=n(8511).File;e.exports.FileReader=n(1446).FileReader;const{setGlobalOrigin:s,getGlobalOrigin:i}=n(1246);e.exports.setGlobalOrigin=s;e.exports.getGlobalOrigin=i;const{CacheStorage:o}=n(7907);const{kConstruct:h}=n(9174);e.exports.caches=new o(h)}if(g.nodeMajor>=16){const{deleteCookie:t,getCookies:s,getSetCookies:i,setCookie:o}=n(1724);e.exports.deleteCookie=t;e.exports.getCookies=s;e.exports.getSetCookies=i;e.exports.setCookie=o;const{parseMIMEType:h,serializeAMimeType:l}=n(685);e.exports.parseMIMEType=h;e.exports.serializeAMimeType=l}if(g.nodeMajor>=18&&D){const{WebSocket:t}=n(4284);e.exports.WebSocket=t}e.exports.request=makeDispatcher(E.request);e.exports.stream=makeDispatcher(E.stream);e.exports.pipeline=makeDispatcher(E.pipeline);e.exports.connect=makeDispatcher(E.connect);e.exports.upgrade=makeDispatcher(E.upgrade);e.exports.MockClient=C;e.exports.MockPool=Q;e.exports.MockAgent=B;e.exports.mockErrors=p},7890:(e,t,n)=>{"use strict";const{InvalidArgumentError:s}=n(8045);const{kClients:i,kRunning:o,kClose:h,kDestroy:l,kDispatch:u,kInterceptors:g}=n(2785);const f=n(4839);const E=n(4634);const I=n(3598);const C=n(3983);const B=n(8861);const{WeakRef:Q,FinalizationRegistry:p}=n(6436)();const y=Symbol("onConnect");const w=Symbol("onDisconnect");const b=Symbol("onConnectionError");const R=Symbol("maxRedirections");const k=Symbol("onDrain");const _=Symbol("factory");const D=Symbol("finalizer");const U=Symbol("options");function defaultFactory(e,t){return t&&t.connections===1?new I(e,t):new E(e,t)}class Agent extends f{constructor({factory:e=defaultFactory,maxRedirections:t=0,connect:n,...o}={}){super();if(typeof e!=="function"){throw new s("factory must be a function.")}if(n!=null&&typeof n!=="function"&&typeof n!=="object"){throw new s("connect must be a function or an object")}if(!Number.isInteger(t)||t<0){throw new s("maxRedirections must be a positive number")}if(n&&typeof n!=="function"){n={...n}}this[g]=o.interceptors&&o.interceptors.Agent&&Array.isArray(o.interceptors.Agent)?o.interceptors.Agent:[B({maxRedirections:t})];this[U]={...C.deepClone(o),connect:n};this[U].interceptors=o.interceptors?{...o.interceptors}:undefined;this[R]=t;this[_]=e;this[i]=new Map;this[D]=new p((e=>{const t=this[i].get(e);if(t!==undefined&&t.deref()===undefined){this[i].delete(e)}}));const h=this;this[k]=(e,t)=>{h.emit("drain",e,[h,...t])};this[y]=(e,t)=>{h.emit("connect",e,[h,...t])};this[w]=(e,t,n)=>{h.emit("disconnect",e,[h,...t],n)};this[b]=(e,t,n)=>{h.emit("connectionError",e,[h,...t],n)}}get[o](){let e=0;for(const t of this[i].values()){const n=t.deref();if(n){e+=n[o]}}return e}[u](e,t){let n;if(e.origin&&(typeof e.origin==="string"||e.origin instanceof URL)){n=String(e.origin)}else{throw new s("opts.origin must be a non-empty string or URL.")}const o=this[i].get(n);let h=o?o.deref():null;if(!h){h=this[_](e.origin,this[U]).on("drain",this[k]).on("connect",this[y]).on("disconnect",this[w]).on("connectionError",this[b]);this[i].set(n,new Q(h));this[D].register(h,n)}return h.dispatch(e,t)}async[h](){const e=[];for(const t of this[i].values()){const n=t.deref();if(n){e.push(n.close())}}await Promise.all(e)}async[l](e){const t=[];for(const n of this[i].values()){const s=n.deref();if(s){t.push(s.destroy(e))}}await Promise.all(t)}}e.exports=Agent},7032:(e,t,n)=>{const{addAbortListener:s}=n(3983);const{RequestAbortedError:i}=n(8045);const o=Symbol("kListener");const h=Symbol("kSignal");function abort(e){if(e.abort){e.abort()}else{e.onError(new i)}}function addSignal(e,t){e[h]=null;e[o]=null;if(!t){return}if(t.aborted){abort(e);return}e[h]=t;e[o]=()=>{abort(e)};s(e[h],e[o])}function removeSignal(e){if(!e[h]){return}if("removeEventListener"in e[h]){e[h].removeEventListener("abort",e[o])}else{e[h].removeListener("abort",e[o])}e[h]=null;e[o]=null}e.exports={addSignal:addSignal,removeSignal:removeSignal}},9744:(e,t,n)=>{"use strict";const{AsyncResource:s}=n(852);const{InvalidArgumentError:i,RequestAbortedError:o,SocketError:h}=n(8045);const l=n(3983);const{addSignal:u,removeSignal:g}=n(7032);class ConnectHandler extends s{constructor(e,t){if(!e||typeof e!=="object"){throw new i("invalid opts")}if(typeof t!=="function"){throw new i("invalid callback")}const{signal:n,opaque:s,responseHeaders:o}=e;if(n&&typeof n.on!=="function"&&typeof n.addEventListener!=="function"){throw new i("signal must be an EventEmitter or EventTarget")}super("UNDICI_CONNECT");this.opaque=s||null;this.responseHeaders=o||null;this.callback=t;this.abort=null;u(this,n)}onConnect(e,t){if(!this.callback){throw new o}this.abort=e;this.context=t}onHeaders(){throw new h("bad connect",null)}onUpgrade(e,t,n){const{callback:s,opaque:i,context:o}=this;g(this);this.callback=null;let h=t;if(h!=null){h=this.responseHeaders==="raw"?l.parseRawHeaders(t):l.parseHeaders(t)}this.runInAsyncScope(s,null,null,{statusCode:e,headers:h,socket:n,opaque:i,context:o})}onError(e){const{callback:t,opaque:n}=this;g(this);if(t){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(t,null,e,{opaque:n})}))}}}function connect(e,t){if(t===undefined){return new Promise(((t,n)=>{connect.call(this,e,((e,s)=>e?n(e):t(s)))}))}try{const n=new ConnectHandler(e,t);this.dispatch({...e,method:"CONNECT"},n)}catch(n){if(typeof t!=="function"){throw n}const s=e&&e.opaque;queueMicrotask((()=>t(n,{opaque:s})))}}e.exports=connect},8752:(e,t,n)=>{"use strict";const{Readable:s,Duplex:i,PassThrough:o}=n(2781);const{InvalidArgumentError:h,InvalidReturnValueError:l,RequestAbortedError:u}=n(8045);const g=n(3983);const{AsyncResource:f}=n(852);const{addSignal:E,removeSignal:I}=n(7032);const C=n(9491);const B=Symbol("resume");class PipelineRequest extends s{constructor(){super({autoDestroy:true});this[B]=null}_read(){const{[B]:e}=this;if(e){this[B]=null;e()}}_destroy(e,t){this._read();t(e)}}class PipelineResponse extends s{constructor(e){super({autoDestroy:true});this[B]=e}_read(){this[B]()}_destroy(e,t){if(!e&&!this._readableState.endEmitted){e=new u}t(e)}}class PipelineHandler extends f{constructor(e,t){if(!e||typeof e!=="object"){throw new h("invalid opts")}if(typeof t!=="function"){throw new h("invalid handler")}const{signal:n,method:s,opaque:o,onInfo:l,responseHeaders:f}=e;if(n&&typeof n.on!=="function"&&typeof n.addEventListener!=="function"){throw new h("signal must be an EventEmitter or EventTarget")}if(s==="CONNECT"){throw new h("invalid method")}if(l&&typeof l!=="function"){throw new h("invalid onInfo callback")}super("UNDICI_PIPELINE");this.opaque=o||null;this.responseHeaders=f||null;this.handler=t;this.abort=null;this.context=null;this.onInfo=l||null;this.req=(new PipelineRequest).on("error",g.nop);this.ret=new i({readableObjectMode:e.objectMode,autoDestroy:true,read:()=>{const{body:e}=this;if(e&&e.resume){e.resume()}},write:(e,t,n)=>{const{req:s}=this;if(s.push(e,t)||s._readableState.destroyed){n()}else{s[B]=n}},destroy:(e,t)=>{const{body:n,req:s,res:i,ret:o,abort:h}=this;if(!e&&!o._readableState.endEmitted){e=new u}if(h&&e){h()}g.destroy(n,e);g.destroy(s,e);g.destroy(i,e);I(this);t(e)}}).on("prefinish",(()=>{const{req:e}=this;e.push(null)}));this.res=null;E(this,n)}onConnect(e,t){const{ret:n,res:s}=this;C(!s,"pipeline cannot be retried");if(n.destroyed){throw new u}this.abort=e;this.context=t}onHeaders(e,t,n){const{opaque:s,handler:i,context:o}=this;if(e<200){if(this.onInfo){const n=this.responseHeaders==="raw"?g.parseRawHeaders(t):g.parseHeaders(t);this.onInfo({statusCode:e,headers:n})}return}this.res=new PipelineResponse(n);let h;try{this.handler=null;const n=this.responseHeaders==="raw"?g.parseRawHeaders(t):g.parseHeaders(t);h=this.runInAsyncScope(i,null,{statusCode:e,headers:n,opaque:s,body:this.res,context:o})}catch(e){this.res.on("error",g.nop);throw e}if(!h||typeof h.on!=="function"){throw new l("expected Readable")}h.on("data",(e=>{const{ret:t,body:n}=this;if(!t.push(e)&&n.pause){n.pause()}})).on("error",(e=>{const{ret:t}=this;g.destroy(t,e)})).on("end",(()=>{const{ret:e}=this;e.push(null)})).on("close",(()=>{const{ret:e}=this;if(!e._readableState.ended){g.destroy(e,new u)}}));this.body=h}onData(e){const{res:t}=this;return t.push(e)}onComplete(e){const{res:t}=this;t.push(null)}onError(e){const{ret:t}=this;this.handler=null;g.destroy(t,e)}}function pipeline(e,t){try{const n=new PipelineHandler(e,t);this.dispatch({...e,body:n.req},n);return n.ret}catch(e){return(new o).destroy(e)}}e.exports=pipeline},5448:(e,t,n)=>{"use strict";const s=n(3858);const{InvalidArgumentError:i,RequestAbortedError:o}=n(8045);const h=n(3983);const{getResolveErrorBodyCallback:l}=n(7474);const{AsyncResource:u}=n(852);const{addSignal:g,removeSignal:f}=n(7032);class RequestHandler extends u{constructor(e,t){if(!e||typeof e!=="object"){throw new i("invalid opts")}const{signal:n,method:s,opaque:o,body:l,onInfo:u,responseHeaders:f,throwOnError:E,highWaterMark:I}=e;try{if(typeof t!=="function"){throw new i("invalid callback")}if(I&&(typeof I!=="number"||I<0)){throw new i("invalid highWaterMark")}if(n&&typeof n.on!=="function"&&typeof n.addEventListener!=="function"){throw new i("signal must be an EventEmitter or EventTarget")}if(s==="CONNECT"){throw new i("invalid method")}if(u&&typeof u!=="function"){throw new i("invalid onInfo callback")}super("UNDICI_REQUEST")}catch(e){if(h.isStream(l)){h.destroy(l.on("error",h.nop),e)}throw e}this.responseHeaders=f||null;this.opaque=o||null;this.callback=t;this.res=null;this.abort=null;this.body=l;this.trailers={};this.context=null;this.onInfo=u||null;this.throwOnError=E;this.highWaterMark=I;if(h.isStream(l)){l.on("error",(e=>{this.onError(e)}))}g(this,n)}onConnect(e,t){if(!this.callback){throw new o}this.abort=e;this.context=t}onHeaders(e,t,n,i){const{callback:o,opaque:u,abort:g,context:f,responseHeaders:E,highWaterMark:I}=this;const C=E==="raw"?h.parseRawHeaders(t):h.parseHeaders(t);if(e<200){if(this.onInfo){this.onInfo({statusCode:e,headers:C})}return}const B=E==="raw"?h.parseHeaders(t):C;const Q=B["content-type"];const p=new s({resume:n,abort:g,contentType:Q,highWaterMark:I});this.callback=null;this.res=p;if(o!==null){if(this.throwOnError&&e>=400){this.runInAsyncScope(l,null,{callback:o,body:p,contentType:Q,statusCode:e,statusMessage:i,headers:C})}else{this.runInAsyncScope(o,null,null,{statusCode:e,headers:C,trailers:this.trailers,opaque:u,body:p,context:f})}}}onData(e){const{res:t}=this;return t.push(e)}onComplete(e){const{res:t}=this;f(this);h.parseHeaders(e,this.trailers);t.push(null)}onError(e){const{res:t,callback:n,body:s,opaque:i}=this;f(this);if(n){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(n,null,e,{opaque:i})}))}if(t){this.res=null;queueMicrotask((()=>{h.destroy(t,e)}))}if(s){this.body=null;h.destroy(s,e)}}}function request(e,t){if(t===undefined){return new Promise(((t,n)=>{request.call(this,e,((e,s)=>e?n(e):t(s)))}))}try{this.dispatch(e,new RequestHandler(e,t))}catch(n){if(typeof t!=="function"){throw n}const s=e&&e.opaque;queueMicrotask((()=>t(n,{opaque:s})))}}e.exports=request},5395:(e,t,n)=>{"use strict";const{finished:s,PassThrough:i}=n(2781);const{InvalidArgumentError:o,InvalidReturnValueError:h,RequestAbortedError:l}=n(8045);const u=n(3983);const{getResolveErrorBodyCallback:g}=n(7474);const{AsyncResource:f}=n(852);const{addSignal:E,removeSignal:I}=n(7032);class StreamHandler extends f{constructor(e,t,n){if(!e||typeof e!=="object"){throw new o("invalid opts")}const{signal:s,method:i,opaque:h,body:l,onInfo:g,responseHeaders:f,throwOnError:I}=e;try{if(typeof n!=="function"){throw new o("invalid callback")}if(typeof t!=="function"){throw new o("invalid factory")}if(s&&typeof s.on!=="function"&&typeof s.addEventListener!=="function"){throw new o("signal must be an EventEmitter or EventTarget")}if(i==="CONNECT"){throw new o("invalid method")}if(g&&typeof g!=="function"){throw new o("invalid onInfo callback")}super("UNDICI_STREAM")}catch(e){if(u.isStream(l)){u.destroy(l.on("error",u.nop),e)}throw e}this.responseHeaders=f||null;this.opaque=h||null;this.factory=t;this.callback=n;this.res=null;this.abort=null;this.context=null;this.trailers=null;this.body=l;this.onInfo=g||null;this.throwOnError=I||false;if(u.isStream(l)){l.on("error",(e=>{this.onError(e)}))}E(this,s)}onConnect(e,t){if(!this.callback){throw new l}this.abort=e;this.context=t}onHeaders(e,t,n,o){const{factory:l,opaque:f,context:E,callback:I,responseHeaders:C}=this;const B=C==="raw"?u.parseRawHeaders(t):u.parseHeaders(t);if(e<200){if(this.onInfo){this.onInfo({statusCode:e,headers:B})}return}this.factory=null;let Q;if(this.throwOnError&&e>=400){const n=C==="raw"?u.parseHeaders(t):B;const s=n["content-type"];Q=new i;this.callback=null;this.runInAsyncScope(g,null,{callback:I,body:Q,contentType:s,statusCode:e,statusMessage:o,headers:B})}else{if(l===null){return}Q=this.runInAsyncScope(l,null,{statusCode:e,headers:B,opaque:f,context:E});if(!Q||typeof Q.write!=="function"||typeof Q.end!=="function"||typeof Q.on!=="function"){throw new h("expected Writable")}s(Q,{readable:false},(e=>{const{callback:t,res:n,opaque:s,trailers:i,abort:o}=this;this.res=null;if(e||!n.readable){u.destroy(n,e)}this.callback=null;this.runInAsyncScope(t,null,e||null,{opaque:s,trailers:i});if(e){o()}}))}Q.on("drain",n);this.res=Q;const p=Q.writableNeedDrain!==undefined?Q.writableNeedDrain:Q._writableState&&Q._writableState.needDrain;return p!==true}onData(e){const{res:t}=this;return t?t.write(e):true}onComplete(e){const{res:t}=this;I(this);if(!t){return}this.trailers=u.parseHeaders(e);t.end()}onError(e){const{res:t,callback:n,opaque:s,body:i}=this;I(this);this.factory=null;if(t){this.res=null;u.destroy(t,e)}else if(n){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(n,null,e,{opaque:s})}))}if(i){this.body=null;u.destroy(i,e)}}}function stream(e,t,n){if(n===undefined){return new Promise(((n,s)=>{stream.call(this,e,t,((e,t)=>e?s(e):n(t)))}))}try{this.dispatch(e,new StreamHandler(e,t,n))}catch(t){if(typeof n!=="function"){throw t}const s=e&&e.opaque;queueMicrotask((()=>n(t,{opaque:s})))}}e.exports=stream},6923:(e,t,n)=>{"use strict";const{InvalidArgumentError:s,RequestAbortedError:i,SocketError:o}=n(8045);const{AsyncResource:h}=n(852);const l=n(3983);const{addSignal:u,removeSignal:g}=n(7032);const f=n(9491);class UpgradeHandler extends h{constructor(e,t){if(!e||typeof e!=="object"){throw new s("invalid opts")}if(typeof t!=="function"){throw new s("invalid callback")}const{signal:n,opaque:i,responseHeaders:o}=e;if(n&&typeof n.on!=="function"&&typeof n.addEventListener!=="function"){throw new s("signal must be an EventEmitter or EventTarget")}super("UNDICI_UPGRADE");this.responseHeaders=o||null;this.opaque=i||null;this.callback=t;this.abort=null;this.context=null;u(this,n)}onConnect(e,t){if(!this.callback){throw new i}this.abort=e;this.context=null}onHeaders(){throw new o("bad upgrade",null)}onUpgrade(e,t,n){const{callback:s,opaque:i,context:o}=this;f.strictEqual(e,101);g(this);this.callback=null;const h=this.responseHeaders==="raw"?l.parseRawHeaders(t):l.parseHeaders(t);this.runInAsyncScope(s,null,null,{headers:h,socket:n,opaque:i,context:o})}onError(e){const{callback:t,opaque:n}=this;g(this);if(t){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(t,null,e,{opaque:n})}))}}}function upgrade(e,t){if(t===undefined){return new Promise(((t,n)=>{upgrade.call(this,e,((e,s)=>e?n(e):t(s)))}))}try{const n=new UpgradeHandler(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},n)}catch(n){if(typeof t!=="function"){throw n}const s=e&&e.opaque;queueMicrotask((()=>t(n,{opaque:s})))}}e.exports=upgrade},4059:(e,t,n)=>{"use strict";e.exports.request=n(5448);e.exports.stream=n(5395);e.exports.pipeline=n(8752);e.exports.upgrade=n(6923);e.exports.connect=n(9744)},3858:(e,t,n)=>{"use strict";const s=n(9491);const{Readable:i}=n(2781);const{RequestAbortedError:o,NotSupportedError:h,InvalidArgumentError:l}=n(8045);const u=n(3983);const{ReadableStreamFrom:g,toUSVString:f}=n(3983);let E;const I=Symbol("kConsume");const C=Symbol("kReading");const B=Symbol("kBody");const Q=Symbol("abort");const p=Symbol("kContentType");e.exports=class BodyReadable extends i{constructor({resume:e,abort:t,contentType:n="",highWaterMark:s=64*1024}){super({autoDestroy:true,read:e,highWaterMark:s});this._readableState.dataEmitted=false;this[Q]=t;this[I]=null;this[B]=null;this[p]=n;this[C]=false}destroy(e){if(this.destroyed){return this}if(!e&&!this._readableState.endEmitted){e=new o}if(e){this[Q]()}return super.destroy(e)}emit(e,...t){if(e==="data"){this._readableState.dataEmitted=true}else if(e==="error"){this._readableState.errorEmitted=true}return super.emit(e,...t)}on(e,...t){if(e==="data"||e==="readable"){this[C]=true}return super.on(e,...t)}addListener(e,...t){return this.on(e,...t)}off(e,...t){const n=super.off(e,...t);if(e==="data"||e==="readable"){this[C]=this.listenerCount("data")>0||this.listenerCount("readable")>0}return n}removeListener(e,...t){return this.off(e,...t)}push(e){if(this[I]&&e!==null&&this.readableLength===0){consumePush(this[I],e);return this[C]?super.push(e):true}return super.push(e)}async text(){return consume(this,"text")}async json(){return consume(this,"json")}async blob(){return consume(this,"blob")}async arrayBuffer(){return consume(this,"arrayBuffer")}async formData(){throw new h}get bodyUsed(){return u.isDisturbed(this)}get body(){if(!this[B]){this[B]=g(this);if(this[I]){this[B].getReader();s(this[B].locked)}}return this[B]}async dump(e){let t=e&&Number.isFinite(e.limit)?e.limit:262144;const n=e&&e.signal;const abortFn=()=>{this.destroy()};let s;if(n){if(typeof n!=="object"||!("aborted"in n)){throw new l("signal must be an AbortSignal")}u.throwIfAborted(n);s=u.addAbortListener(n,abortFn)}try{for await(const e of this){u.throwIfAborted(n);t-=Buffer.byteLength(e);if(t<0){return}}}catch{u.throwIfAborted(n)}finally{if(typeof s==="function"){s()}else if(s){s[Symbol.dispose]()}}}};function isLocked(e){return e[B]&&e[B].locked===true||e[I]}function isUnusable(e){return u.isDisturbed(e)||isLocked(e)}async function consume(e,t){if(isUnusable(e)){throw new TypeError("unusable")}s(!e[I]);return new Promise(((n,s)=>{e[I]={type:t,stream:e,resolve:n,reject:s,length:0,body:[]};e.on("error",(function(e){consumeFinish(this[I],e)})).on("close",(function(){if(this[I].body!==null){consumeFinish(this[I],new o)}}));process.nextTick(consumeStart,e[I])}))}function consumeStart(e){if(e.body===null){return}const{_readableState:t}=e.stream;for(const n of t.buffer){consumePush(e,n)}if(t.endEmitted){consumeEnd(this[I])}else{e.stream.on("end",(function(){consumeEnd(this[I])}))}e.stream.resume();while(e.stream.read()!=null){}}function consumeEnd(e){const{type:t,body:s,resolve:i,stream:o,length:h}=e;try{if(t==="text"){i(f(Buffer.concat(s)))}else if(t==="json"){i(JSON.parse(Buffer.concat(s)))}else if(t==="arrayBuffer"){const e=new Uint8Array(h);let t=0;for(const n of s){e.set(n,t);t+=n.byteLength}i(e.buffer)}else if(t==="blob"){if(!E){E=n(4300).Blob}i(new E(s,{type:o[p]}))}consumeFinish(e)}catch(e){o.destroy(e)}}function consumePush(e,t){e.length+=t.length;e.body.push(t)}function consumeFinish(e,t){if(e.body===null){return}if(t){e.reject(t)}else{e.resolve()}e.type=null;e.stream=null;e.resolve=null;e.reject=null;e.length=0;e.body=null}},7474:(e,t,n)=>{const s=n(9491);const{ResponseStatusCodeError:i}=n(8045);const{toUSVString:o}=n(3983);async function getResolveErrorBodyCallback({callback:e,body:t,contentType:n,statusCode:h,statusMessage:l,headers:u}){s(t);let g=[];let f=0;for await(const e of t){g.push(e);f+=e.length;if(f>128*1024){g=null;break}}if(h===204||!n||!g){process.nextTick(e,new i(`Response status code ${h}${l?`: ${l}`:""}`,h,u));return}try{if(n.startsWith("application/json")){const t=JSON.parse(o(Buffer.concat(g)));process.nextTick(e,new i(`Response status code ${h}${l?`: ${l}`:""}`,h,u,t));return}if(n.startsWith("text/")){const t=o(Buffer.concat(g));process.nextTick(e,new i(`Response status code ${h}${l?`: ${l}`:""}`,h,u,t));return}}catch(e){}process.nextTick(e,new i(`Response status code ${h}${l?`: ${l}`:""}`,h,u))}e.exports={getResolveErrorBodyCallback:getResolveErrorBodyCallback}},7931:(e,t,n)=>{"use strict";const{BalancedPoolMissingUpstreamError:s,InvalidArgumentError:i}=n(8045);const{PoolBase:o,kClients:h,kNeedDrain:l,kAddClient:u,kRemoveClient:g,kGetDispatcher:f}=n(3198);const E=n(4634);const{kUrl:I,kInterceptors:C}=n(2785);const{parseOrigin:B}=n(3983);const Q=Symbol("factory");const p=Symbol("options");const y=Symbol("kGreatestCommonDivisor");const w=Symbol("kCurrentWeight");const b=Symbol("kIndex");const R=Symbol("kWeight");const k=Symbol("kMaxWeightPerServer");const _=Symbol("kErrorPenalty");function getGreatestCommonDivisor(e,t){if(t===0)return e;return getGreatestCommonDivisor(t,e%t)}function defaultFactory(e,t){return new E(e,t)}class BalancedPool extends o{constructor(e=[],{factory:t=defaultFactory,...n}={}){super();this[p]=n;this[b]=-1;this[w]=0;this[k]=this[p].maxWeightPerServer||100;this[_]=this[p].errorPenalty||15;if(!Array.isArray(e)){e=[e]}if(typeof t!=="function"){throw new i("factory must be a function.")}this[C]=n.interceptors&&n.interceptors.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[];this[Q]=t;for(const t of e){this.addUpstream(t)}this._updateBalancedPoolStats()}addUpstream(e){const t=B(e).origin;if(this[h].find((e=>e[I].origin===t&&e.closed!==true&&e.destroyed!==true))){return this}const n=this[Q](t,Object.assign({},this[p]));this[u](n);n.on("connect",(()=>{n[R]=Math.min(this[k],n[R]+this[_])}));n.on("connectionError",(()=>{n[R]=Math.max(1,n[R]-this[_]);this._updateBalancedPoolStats()}));n.on("disconnect",((...e)=>{const t=e[2];if(t&&t.code==="UND_ERR_SOCKET"){n[R]=Math.max(1,n[R]-this[_]);this._updateBalancedPoolStats()}}));for(const e of this[h]){e[R]=this[k]}this._updateBalancedPoolStats();return this}_updateBalancedPoolStats(){this[y]=this[h].map((e=>e[R])).reduce(getGreatestCommonDivisor,0)}removeUpstream(e){const t=B(e).origin;const n=this[h].find((e=>e[I].origin===t&&e.closed!==true&&e.destroyed!==true));if(n){this[g](n)}return this}get upstreams(){return this[h].filter((e=>e.closed!==true&&e.destroyed!==true)).map((e=>e[I].origin))}[f](){if(this[h].length===0){throw new s}const e=this[h].find((e=>!e[l]&&e.closed!==true&&e.destroyed!==true));if(!e){return}const t=this[h].map((e=>e[l])).reduce(((e,t)=>e&&t),true);if(t){return}let n=0;let i=this[h].findIndex((e=>!e[l]));while(n++this[h][i][R]&&!e[l]){i=this[b]}if(this[b]===0){this[w]=this[w]-this[y];if(this[w]<=0){this[w]=this[k]}}if(e[R]>=this[w]&&!e[l]){return e}}this[w]=this[h][i][R];this[b]=i;return this[h][i]}}e.exports=BalancedPool},6101:(e,t,n)=>{"use strict";const{kConstruct:s}=n(9174);const{urlEquals:i,fieldValues:o}=n(2396);const{kEnumerableProperty:h,isDisturbed:l}=n(3983);const{kHeadersList:u}=n(2785);const{webidl:g}=n(1744);const{Response:f,cloneResponse:E}=n(7823);const{Request:I}=n(8359);const{kState:C,kHeaders:B,kGuard:Q,kRealm:p}=n(5861);const{fetching:y}=n(4881);const{urlIsHttpHttpsScheme:w,createDeferredPromise:b,readAllBytes:R}=n(2538);const k=n(9491);const{getGlobalDispatcher:_}=n(1892);class Cache{#e;constructor(){if(arguments[0]!==s){g.illegalConstructor()}this.#e=arguments[1]}async match(e,t={}){g.brandCheck(this,Cache);g.argumentLengthCheck(arguments,1,{header:"Cache.match"});e=g.converters.RequestInfo(e);t=g.converters.CacheQueryOptions(t);const n=await this.matchAll(e,t);if(n.length===0){return}return n[0]}async matchAll(e=undefined,t={}){g.brandCheck(this,Cache);if(e!==undefined)e=g.converters.RequestInfo(e);t=g.converters.CacheQueryOptions(t);let n=null;if(e!==undefined){if(e instanceof I){n=e[C];if(n.method!=="GET"&&!t.ignoreMethod){return[]}}else if(typeof e==="string"){n=new I(e)[C]}}const s=[];if(e===undefined){for(const e of this.#e){s.push(e[1])}}else{const e=this.#t(n,t);for(const t of e){s.push(t[1])}}const i=[];for(const e of s){const t=new f(e.body?.source??null);const n=t[C].body;t[C]=e;t[C].body=n;t[B][u]=e.headersList;t[B][Q]="immutable";i.push(t)}return Object.freeze(i)}async add(e){g.brandCheck(this,Cache);g.argumentLengthCheck(arguments,1,{header:"Cache.add"});e=g.converters.RequestInfo(e);const t=[e];const n=this.addAll(t);return await n}async addAll(e){g.brandCheck(this,Cache);g.argumentLengthCheck(arguments,1,{header:"Cache.addAll"});e=g.converters["sequence"](e);const t=[];const n=[];for(const t of e){if(typeof t==="string"){continue}const e=t[C];if(!w(e.url)||e.method!=="GET"){throw g.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme when method is not GET."})}}const s=[];for(const i of e){const e=new I(i)[C];if(!w(e.url)){throw g.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme."})}e.initiator="fetch";e.destination="subresource";n.push(e);const h=b();s.push(y({request:e,dispatcher:_(),processResponse(e){if(e.type==="error"||e.status===206||e.status<200||e.status>299){h.reject(g.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}))}else if(e.headersList.contains("vary")){const t=o(e.headersList.get("vary"));for(const e of t){if(e==="*"){h.reject(g.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(const e of s){e.abort()}return}}}},processResponseEndOfBody(e){if(e.aborted){h.reject(new DOMException("aborted","AbortError"));return}h.resolve(e)}}));t.push(h.promise)}const i=Promise.all(t);const h=await i;const l=[];let u=0;for(const e of h){const t={type:"put",request:n[u],response:e};l.push(t);u++}const f=b();let E=null;try{this.#A(l)}catch(e){E=e}queueMicrotask((()=>{if(E===null){f.resolve(undefined)}else{f.reject(E)}}));return f.promise}async put(e,t){g.brandCheck(this,Cache);g.argumentLengthCheck(arguments,2,{header:"Cache.put"});e=g.converters.RequestInfo(e);t=g.converters.Response(t);let n=null;if(e instanceof I){n=e[C]}else{n=new I(e)[C]}if(!w(n.url)||n.method!=="GET"){throw g.errors.exception({header:"Cache.put",message:"Expected an http/s scheme when method is not GET"})}const s=t[C];if(s.status===206){throw g.errors.exception({header:"Cache.put",message:"Got 206 status"})}if(s.headersList.contains("vary")){const e=o(s.headersList.get("vary"));for(const t of e){if(t==="*"){throw g.errors.exception({header:"Cache.put",message:"Got * vary field value"})}}}if(s.body&&(l(s.body.stream)||s.body.stream.locked)){throw g.errors.exception({header:"Cache.put",message:"Response body is locked or disturbed"})}const i=E(s);const h=b();if(s.body!=null){const e=s.body.stream;const t=e.getReader();R(t).then(h.resolve,h.reject)}else{h.resolve(undefined)}const u=[];const f={type:"put",request:n,response:i};u.push(f);const B=await h.promise;if(i.body!=null){i.body.source=B}const Q=b();let p=null;try{this.#A(u)}catch(e){p=e}queueMicrotask((()=>{if(p===null){Q.resolve()}else{Q.reject(p)}}));return Q.promise}async delete(e,t={}){g.brandCheck(this,Cache);g.argumentLengthCheck(arguments,1,{header:"Cache.delete"});e=g.converters.RequestInfo(e);t=g.converters.CacheQueryOptions(t);let n=null;if(e instanceof I){n=e[C];if(n.method!=="GET"&&!t.ignoreMethod){return false}}else{k(typeof e==="string");n=new I(e)[C]}const s=[];const i={type:"delete",request:n,options:t};s.push(i);const o=b();let h=null;let l;try{l=this.#A(s)}catch(e){h=e}queueMicrotask((()=>{if(h===null){o.resolve(!!l?.length)}else{o.reject(h)}}));return o.promise}async keys(e=undefined,t={}){g.brandCheck(this,Cache);if(e!==undefined)e=g.converters.RequestInfo(e);t=g.converters.CacheQueryOptions(t);let n=null;if(e!==undefined){if(e instanceof I){n=e[C];if(n.method!=="GET"&&!t.ignoreMethod){return[]}}else if(typeof e==="string"){n=new I(e)[C]}}const s=b();const i=[];if(e===undefined){for(const e of this.#e){i.push(e[0])}}else{const e=this.#t(n,t);for(const t of e){i.push(t[0])}}queueMicrotask((()=>{const e=[];for(const t of i){const n=new I("https://a");n[C]=t;n[B][u]=t.headersList;n[B][Q]="immutable";n[p]=t.client;e.push(n)}s.resolve(Object.freeze(e))}));return s.promise}#A(e){const t=this.#e;const n=[...t];const s=[];const i=[];try{for(const n of e){if(n.type!=="delete"&&n.type!=="put"){throw g.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'})}if(n.type==="delete"&&n.response!=null){throw g.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"})}if(this.#t(n.request,n.options,s).length){throw new DOMException("???","InvalidStateError")}let e;if(n.type==="delete"){e=this.#t(n.request,n.options);if(e.length===0){return[]}for(const n of e){const e=t.indexOf(n);k(e!==-1);t.splice(e,1)}}else if(n.type==="put"){if(n.response==null){throw g.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"})}const i=n.request;if(!w(i.url)){throw g.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"})}if(i.method!=="GET"){throw g.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"})}if(n.options!=null){throw g.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"})}e=this.#t(n.request);for(const n of e){const e=t.indexOf(n);k(e!==-1);t.splice(e,1)}t.push([n.request,n.response]);s.push([n.request,n.response])}i.push([n.request,n.response])}return i}catch(e){this.#e.length=0;this.#e=n;throw e}}#t(e,t,n){const s=[];const i=n??this.#e;for(const n of i){const[i,o]=n;if(this.#r(e,i,o,t)){s.push(n)}}return s}#r(e,t,n=null,s){const h=new URL(e.url);const l=new URL(t.url);if(s?.ignoreSearch){l.search="";h.search=""}if(!i(h,l,true)){return false}if(n==null||s?.ignoreVary||!n.headersList.contains("vary")){return true}const u=o(n.headersList.get("vary"));for(const n of u){if(n==="*"){return false}const s=t.headersList.get(n);const i=e.headersList.get(n);if(s!==i){return false}}return true}}Object.defineProperties(Cache.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:true},match:h,matchAll:h,add:h,addAll:h,put:h,delete:h,keys:h});const D=[{key:"ignoreSearch",converter:g.converters.boolean,defaultValue:false},{key:"ignoreMethod",converter:g.converters.boolean,defaultValue:false},{key:"ignoreVary",converter:g.converters.boolean,defaultValue:false}];g.converters.CacheQueryOptions=g.dictionaryConverter(D);g.converters.MultiCacheQueryOptions=g.dictionaryConverter([...D,{key:"cacheName",converter:g.converters.DOMString}]);g.converters.Response=g.interfaceConverter(f);g.converters["sequence"]=g.sequenceConverter(g.converters.RequestInfo);e.exports={Cache:Cache}},7907:(e,t,n)=>{"use strict";const{kConstruct:s}=n(9174);const{Cache:i}=n(6101);const{webidl:o}=n(1744);const{kEnumerableProperty:h}=n(3983);class CacheStorage{#n=new Map;constructor(){if(arguments[0]!==s){o.illegalConstructor()}}async match(e,t={}){o.brandCheck(this,CacheStorage);o.argumentLengthCheck(arguments,1,{header:"CacheStorage.match"});e=o.converters.RequestInfo(e);t=o.converters.MultiCacheQueryOptions(t);if(t.cacheName!=null){if(this.#n.has(t.cacheName)){const n=this.#n.get(t.cacheName);const o=new i(s,n);return await o.match(e,t)}}else{for(const n of this.#n.values()){const o=new i(s,n);const h=await o.match(e,t);if(h!==undefined){return h}}}}async has(e){o.brandCheck(this,CacheStorage);o.argumentLengthCheck(arguments,1,{header:"CacheStorage.has"});e=o.converters.DOMString(e);return this.#n.has(e)}async open(e){o.brandCheck(this,CacheStorage);o.argumentLengthCheck(arguments,1,{header:"CacheStorage.open"});e=o.converters.DOMString(e);if(this.#n.has(e)){const t=this.#n.get(e);return new i(s,t)}const t=[];this.#n.set(e,t);return new i(s,t)}async delete(e){o.brandCheck(this,CacheStorage);o.argumentLengthCheck(arguments,1,{header:"CacheStorage.delete"});e=o.converters.DOMString(e);return this.#n.delete(e)}async keys(){o.brandCheck(this,CacheStorage);const e=this.#n.keys();return[...e]}}Object.defineProperties(CacheStorage.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:true},match:h,has:h,open:h,delete:h,keys:h});e.exports={CacheStorage:CacheStorage}},9174:e=>{"use strict";e.exports={kConstruct:Symbol("constructable")}},2396:(e,t,n)=>{"use strict";const s=n(9491);const{URLSerializer:i}=n(685);const{isValidHeaderName:o}=n(2538);function urlEquals(e,t,n=false){const s=i(e,n);const o=i(t,n);return s===o}function fieldValues(e){s(e!==null);const t=[];for(let n of e.split(",")){n=n.trim();if(!n.length){continue}else if(!o(n)){continue}t.push(n)}return t}e.exports={urlEquals:urlEquals,fieldValues:fieldValues}},3598:(e,t,n)=>{"use strict";const s=n(9491);const i=n(1808);const o=n(3685);const{pipeline:h}=n(2781);const l=n(3983);const u=n(9459);const g=n(2905);const f=n(4839);const{RequestContentLengthMismatchError:E,ResponseContentLengthMismatchError:I,InvalidArgumentError:C,RequestAbortedError:B,HeadersTimeoutError:Q,HeadersOverflowError:p,SocketError:y,InformationalError:w,BodyTimeoutError:b,HTTPParserError:R,ResponseExceededMaxSizeError:k,ClientDestroyedError:_}=n(8045);const D=n(2067);const{kUrl:U,kReset:L,kServerName:v,kClient:T,kBusy:O,kParser:P,kConnect:x,kBlocking:Y,kResuming:G,kRunning:J,kPending:W,kSize:V,kWriting:q,kQueue:j,kConnected:z,kConnecting:$,kNeedDrain:ee,kNoRef:te,kKeepAliveDefaultTimeout:Ae,kHostHeader:re,kPendingIdx:ne,kRunningIdx:se,kError:ie,kPipelining:oe,kSocket:ae,kKeepAliveTimeoutValue:ce,kMaxHeadersSize:he,kKeepAliveMaxTimeout:le,kKeepAliveTimeoutThreshold:ue,kHeadersTimeout:ge,kBodyTimeout:fe,kStrictContentLength:Ee,kConnector:de,kMaxRedirections:Ie,kMaxRequests:Ce,kCounter:Be,kClose:Qe,kDestroy:pe,kDispatch:ye,kInterceptors:we,kLocalAddress:be,kMaxResponseSize:me,kHTTPConnVersion:Re,kHost:Se,kHTTP2Session:ke,kHTTP2SessionState:_e,kHTTP2BuildRequest:De,kHTTP2CopyHeaders:Ne,kHTTP1BuildRequest:Fe}=n(2785);let Ue;try{Ue=n(5158)}catch{Ue={constants:{}}}const{constants:{HTTP2_HEADER_AUTHORITY:Le,HTTP2_HEADER_METHOD:ve,HTTP2_HEADER_PATH:Te,HTTP2_HEADER_SCHEME:Me,HTTP2_HEADER_CONTENT_LENGTH:He,HTTP2_HEADER_EXPECT:Oe,HTTP2_HEADER_STATUS:Pe}}=Ue;let xe=false;const Ye=Buffer[Symbol.species];const Ge=Symbol("kClosedResolve");const Je={};try{const e=n(7643);Je.sendHeaders=e.channel("undici:client:sendHeaders");Je.beforeConnect=e.channel("undici:client:beforeConnect");Je.connectError=e.channel("undici:client:connectError");Je.connected=e.channel("undici:client:connected")}catch{Je.sendHeaders={hasSubscribers:false};Je.beforeConnect={hasSubscribers:false};Je.connectError={hasSubscribers:false};Je.connected={hasSubscribers:false}}class Client extends f{constructor(e,{interceptors:t,maxHeaderSize:n,headersTimeout:s,socketTimeout:h,requestTimeout:u,connectTimeout:g,bodyTimeout:f,idleTimeout:E,keepAlive:I,keepAliveTimeout:B,maxKeepAliveTimeout:Q,keepAliveMaxTimeout:p,keepAliveTimeoutThreshold:y,socketPath:w,pipelining:b,tls:R,strictContentLength:k,maxCachedSessions:_,maxRedirections:L,connect:T,maxRequestsPerClient:O,localAddress:P,maxResponseSize:x,autoSelectFamily:Y,autoSelectFamilyAttemptTimeout:J,allowH2:W,maxConcurrentStreams:V}={}){super();if(I!==undefined){throw new C("unsupported keepAlive, use pipelining=0 instead")}if(h!==undefined){throw new C("unsupported socketTimeout, use headersTimeout & bodyTimeout instead")}if(u!==undefined){throw new C("unsupported requestTimeout, use headersTimeout & bodyTimeout instead")}if(E!==undefined){throw new C("unsupported idleTimeout, use keepAliveTimeout instead")}if(Q!==undefined){throw new C("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead")}if(n!=null&&!Number.isFinite(n)){throw new C("invalid maxHeaderSize")}if(w!=null&&typeof w!=="string"){throw new C("invalid socketPath")}if(g!=null&&(!Number.isFinite(g)||g<0)){throw new C("invalid connectTimeout")}if(B!=null&&(!Number.isFinite(B)||B<=0)){throw new C("invalid keepAliveTimeout")}if(p!=null&&(!Number.isFinite(p)||p<=0)){throw new C("invalid keepAliveMaxTimeout")}if(y!=null&&!Number.isFinite(y)){throw new C("invalid keepAliveTimeoutThreshold")}if(s!=null&&(!Number.isInteger(s)||s<0)){throw new C("headersTimeout must be a positive integer or zero")}if(f!=null&&(!Number.isInteger(f)||f<0)){throw new C("bodyTimeout must be a positive integer or zero")}if(T!=null&&typeof T!=="function"&&typeof T!=="object"){throw new C("connect must be a function or an object")}if(L!=null&&(!Number.isInteger(L)||L<0)){throw new C("maxRedirections must be a positive number")}if(O!=null&&(!Number.isInteger(O)||O<0)){throw new C("maxRequestsPerClient must be a positive number")}if(P!=null&&(typeof P!=="string"||i.isIP(P)===0)){throw new C("localAddress must be valid string IP address")}if(x!=null&&(!Number.isInteger(x)||x<-1)){throw new C("maxResponseSize must be a positive number")}if(J!=null&&(!Number.isInteger(J)||J<-1)){throw new C("autoSelectFamilyAttemptTimeout must be a positive number")}if(W!=null&&typeof W!=="boolean"){throw new C("allowH2 must be a valid boolean value")}if(V!=null&&(typeof V!=="number"||V<1)){throw new C("maxConcurrentStreams must be a possitive integer, greater than 0")}if(typeof T!=="function"){T=D({...R,maxCachedSessions:_,allowH2:W,socketPath:w,timeout:g,...l.nodeHasAutoSelectFamily&&Y?{autoSelectFamily:Y,autoSelectFamilyAttemptTimeout:J}:undefined,...T})}this[we]=t&&t.Client&&Array.isArray(t.Client)?t.Client:[Ve({maxRedirections:L})];this[U]=l.parseOrigin(e);this[de]=T;this[ae]=null;this[oe]=b!=null?b:1;this[he]=n||o.maxHeaderSize;this[Ae]=B==null?4e3:B;this[le]=p==null?6e5:p;this[ue]=y==null?1e3:y;this[ce]=this[Ae];this[v]=null;this[be]=P!=null?P:null;this[G]=0;this[ee]=0;this[re]=`host: ${this[U].hostname}${this[U].port?`:${this[U].port}`:""}\r\n`;this[fe]=f!=null?f:3e5;this[ge]=s!=null?s:3e5;this[Ee]=k==null?true:k;this[Ie]=L;this[Ce]=O;this[Ge]=null;this[me]=x>-1?x:-1;this[Re]="h1";this[ke]=null;this[_e]=!W?null:{openStreams:0,maxConcurrentStreams:V!=null?V:100};this[Se]=`${this[U].hostname}${this[U].port?`:${this[U].port}`:""}`;this[j]=[];this[se]=0;this[ne]=0}get pipelining(){return this[oe]}set pipelining(e){this[oe]=e;resume(this,true)}get[W](){return this[j].length-this[ne]}get[J](){return this[ne]-this[se]}get[V](){return this[j].length-this[se]}get[z](){return!!this[ae]&&!this[$]&&!this[ae].destroyed}get[O](){const e=this[ae];return e&&(e[L]||e[q]||e[Y])||this[V]>=(this[oe]||1)||this[W]>0}[x](e){connect(this);this.once("connect",e)}[ye](e,t){const n=e.origin||this[U].origin;const s=this[Re]==="h2"?g[De](n,e,t):g[Fe](n,e,t);this[j].push(s);if(this[G]){}else if(l.bodyLength(s.body)==null&&l.isIterable(s.body)){this[G]=1;process.nextTick(resume,this)}else{resume(this,true)}if(this[G]&&this[ee]!==2&&this[O]){this[ee]=2}return this[ee]<2}async[Qe](){return new Promise((e=>{if(!this[V]){e(null)}else{this[Ge]=e}}))}async[pe](e){return new Promise((t=>{const n=this[j].splice(this[ne]);for(let t=0;t{if(this[Ge]){this[Ge]();this[Ge]=null}t()};if(this[ke]!=null){l.destroy(this[ke],e);this[ke]=null;this[_e]=null}if(!this[ae]){queueMicrotask(callback)}else{l.destroy(this[ae].on("close",callback),e)}resume(this)}))}}function onHttp2SessionError(e){s(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID");this[ae][ie]=e;onError(this[T],e)}function onHttp2FrameError(e,t,n){const s=new w(`HTTP/2: "frameError" received - type ${e}, code ${t}`);if(n===0){this[ae][ie]=s;onError(this[T],s)}}function onHttp2SessionEnd(){l.destroy(this,new y("other side closed"));l.destroy(this[ae],new y("other side closed"))}function onHTTP2GoAway(e){const t=this[T];const n=new w(`HTTP/2: "GOAWAY" frame received with code ${e}`);t[ae]=null;t[ke]=null;if(t.destroyed){s(this[W]===0);const e=t[j].splice(t[se]);for(let t=0;t0){const e=t[j][t[se]];t[j][t[se]++]=null;errorRequest(t,e,n)}t[ne]=t[se];s(t[J]===0);t.emit("disconnect",t[U],[t],n);resume(t)}const We=n(953);const Ve=n(8861);const qe=Buffer.alloc(0);async function lazyllhttp(){const e=process.env.JEST_WORKER_ID?n(1145):undefined;let t;try{t=await WebAssembly.compile(Buffer.from(n(5627),"base64"))}catch(s){t=await WebAssembly.compile(Buffer.from(e||n(1145),"base64"))}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(e,t,n)=>0,wasm_on_status:(e,t,n)=>{s.strictEqual(Xe.ptr,e);const i=t-$e+Ze.byteOffset;return Xe.onStatus(new Ye(Ze.buffer,i,n))||0},wasm_on_message_begin:e=>{s.strictEqual(Xe.ptr,e);return Xe.onMessageBegin()||0},wasm_on_header_field:(e,t,n)=>{s.strictEqual(Xe.ptr,e);const i=t-$e+Ze.byteOffset;return Xe.onHeaderField(new Ye(Ze.buffer,i,n))||0},wasm_on_header_value:(e,t,n)=>{s.strictEqual(Xe.ptr,e);const i=t-$e+Ze.byteOffset;return Xe.onHeaderValue(new Ye(Ze.buffer,i,n))||0},wasm_on_headers_complete:(e,t,n,i)=>{s.strictEqual(Xe.ptr,e);return Xe.onHeadersComplete(t,Boolean(n),Boolean(i))||0},wasm_on_body:(e,t,n)=>{s.strictEqual(Xe.ptr,e);const i=t-$e+Ze.byteOffset;return Xe.onBody(new Ye(Ze.buffer,i,n))||0},wasm_on_message_complete:e=>{s.strictEqual(Xe.ptr,e);return Xe.onMessageComplete()||0}}})}let Ke=null;let je=lazyllhttp();je.catch();let Xe=null;let Ze=null;let ze=0;let $e=null;const et=1;const tt=2;const At=3;class Parser{constructor(e,t,{exports:n}){s(Number.isFinite(e[he])&&e[he]>0);this.llhttp=n;this.ptr=this.llhttp.llhttp_alloc(We.TYPE.RESPONSE);this.client=e;this.socket=t;this.timeout=null;this.timeoutValue=null;this.timeoutType=null;this.statusCode=null;this.statusText="";this.upgrade=false;this.headers=[];this.headersSize=0;this.headersMaxSize=e[he];this.shouldKeepAlive=false;this.paused=false;this.resume=this.resume.bind(this);this.bytesRead=0;this.keepAlive="";this.contentLength="";this.connection="";this.maxResponseSize=e[me]}setTimeout(e,t){this.timeoutType=t;if(e!==this.timeoutValue){u.clearTimeout(this.timeout);if(e){this.timeout=u.setTimeout(onParserTimeout,e,this);if(this.timeout.unref){this.timeout.unref()}}else{this.timeout=null}this.timeoutValue=e}else if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}}resume(){if(this.socket.destroyed||!this.paused){return}s(this.ptr!=null);s(Xe==null);this.llhttp.llhttp_resume(this.ptr);s(this.timeoutType===tt);if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}this.paused=false;this.execute(this.socket.read()||qe);this.readMore()}readMore(){while(!this.paused&&this.ptr){const e=this.socket.read();if(e===null){break}this.execute(e)}}execute(e){s(this.ptr!=null);s(Xe==null);s(!this.paused);const{socket:t,llhttp:n}=this;if(e.length>ze){if($e){n.free($e)}ze=Math.ceil(e.length/4096)*4096;$e=n.malloc(ze)}new Uint8Array(n.memory.buffer,$e,ze).set(e);try{let s;try{Ze=e;Xe=this;s=n.llhttp_execute(this.ptr,$e,e.length)}catch(e){throw e}finally{Xe=null;Ze=null}const i=n.llhttp_get_error_pos(this.ptr)-$e;if(s===We.ERROR.PAUSED_UPGRADE){this.onUpgrade(e.slice(i))}else if(s===We.ERROR.PAUSED){this.paused=true;t.unshift(e.slice(i))}else if(s!==We.ERROR.OK){const t=n.llhttp_get_error_reason(this.ptr);let o="";if(t){const e=new Uint8Array(n.memory.buffer,t).indexOf(0);o="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,t,e).toString()+")"}throw new R(o,We.ERROR[s],e.slice(i))}}catch(e){l.destroy(t,e)}}destroy(){s(this.ptr!=null);s(Xe==null);this.llhttp.llhttp_free(this.ptr);this.ptr=null;u.clearTimeout(this.timeout);this.timeout=null;this.timeoutValue=null;this.timeoutType=null;this.paused=false}onStatus(e){this.statusText=e.toString()}onMessageBegin(){const{socket:e,client:t}=this;if(e.destroyed){return-1}const n=t[j][t[se]];if(!n){return-1}}onHeaderField(e){const t=this.headers.length;if((t&1)===0){this.headers.push(e)}else{this.headers[t-1]=Buffer.concat([this.headers[t-1],e])}this.trackHeader(e.length)}onHeaderValue(e){let t=this.headers.length;if((t&1)===1){this.headers.push(e);t+=1}else{this.headers[t-1]=Buffer.concat([this.headers[t-1],e])}const n=this.headers[t-2];if(n.length===10&&n.toString().toLowerCase()==="keep-alive"){this.keepAlive+=e.toString()}else if(n.length===10&&n.toString().toLowerCase()==="connection"){this.connection+=e.toString()}else if(n.length===14&&n.toString().toLowerCase()==="content-length"){this.contentLength+=e.toString()}this.trackHeader(e.length)}trackHeader(e){this.headersSize+=e;if(this.headersSize>=this.headersMaxSize){l.destroy(this.socket,new p)}}onUpgrade(e){const{upgrade:t,client:n,socket:i,headers:o,statusCode:h}=this;s(t);const u=n[j][n[se]];s(u);s(!i.destroyed);s(i===n[ae]);s(!this.paused);s(u.upgrade||u.method==="CONNECT");this.statusCode=null;this.statusText="";this.shouldKeepAlive=null;s(this.headers.length%2===0);this.headers=[];this.headersSize=0;i.unshift(e);i[P].destroy();i[P]=null;i[T]=null;i[ie]=null;i.removeListener("error",onSocketError).removeListener("readable",onSocketReadable).removeListener("end",onSocketEnd).removeListener("close",onSocketClose);n[ae]=null;n[j][n[se]++]=null;n.emit("disconnect",n[U],[n],new w("upgrade"));try{u.onUpgrade(h,o,i)}catch(e){l.destroy(i,e)}resume(n)}onHeadersComplete(e,t,n){const{client:i,socket:o,headers:h,statusText:u}=this;if(o.destroyed){return-1}const g=i[j][i[se]];if(!g){return-1}s(!this.upgrade);s(this.statusCode<200);if(e===100){l.destroy(o,new y("bad response",l.getSocketInfo(o)));return-1}if(t&&!g.upgrade){l.destroy(o,new y("bad upgrade",l.getSocketInfo(o)));return-1}s.strictEqual(this.timeoutType,et);this.statusCode=e;this.shouldKeepAlive=n||g.method==="HEAD"&&!o[L]&&this.connection.toLowerCase()==="keep-alive";if(this.statusCode>=200){const e=g.bodyTimeout!=null?g.bodyTimeout:i[fe];this.setTimeout(e,tt)}else if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}if(g.method==="CONNECT"){s(i[J]===1);this.upgrade=true;return 2}if(t){s(i[J]===1);this.upgrade=true;return 2}s(this.headers.length%2===0);this.headers=[];this.headersSize=0;if(this.shouldKeepAlive&&i[oe]){const e=this.keepAlive?l.parseKeepAliveTimeout(this.keepAlive):null;if(e!=null){const t=Math.min(e-i[ue],i[le]);if(t<=0){o[L]=true}else{i[ce]=t}}else{i[ce]=i[Ae]}}else{o[L]=true}let f;try{f=g.onHeaders(e,h,this.resume,u)===false}catch(e){l.destroy(o,e);return-1}if(g.method==="HEAD"){return 1}if(e<200){return 1}if(o[Y]){o[Y]=false;resume(i)}return f?We.ERROR.PAUSED:0}onBody(e){const{client:t,socket:n,statusCode:i,maxResponseSize:o}=this;if(n.destroyed){return-1}const h=t[j][t[se]];s(h);s.strictEqual(this.timeoutType,tt);if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}s(i>=200);if(o>-1&&this.bytesRead+e.length>o){l.destroy(n,new k);return-1}this.bytesRead+=e.length;try{if(h.onData(e)===false){return We.ERROR.PAUSED}}catch(e){l.destroy(n,e);return-1}}onMessageComplete(){const{client:e,socket:t,statusCode:n,upgrade:i,headers:o,contentLength:h,bytesRead:u,shouldKeepAlive:g}=this;if(t.destroyed&&(!n||g)){return-1}if(i){return}const f=e[j][e[se]];s(f);s(n>=100);this.statusCode=null;this.statusText="";this.bytesRead=0;this.contentLength="";this.keepAlive="";this.connection="";s(this.headers.length%2===0);this.headers=[];this.headersSize=0;if(n<200){return}if(f.method!=="HEAD"&&h&&u!==parseInt(h,10)){l.destroy(t,new I);return-1}try{f.onComplete(o)}catch(t){errorRequest(e,f,t)}e[j][e[se]++]=null;if(t[q]){s.strictEqual(e[J],0);l.destroy(t,new w("reset"));return We.ERROR.PAUSED}else if(!g){l.destroy(t,new w("reset"));return We.ERROR.PAUSED}else if(t[L]&&e[J]===0){l.destroy(t,new w("reset"));return We.ERROR.PAUSED}else if(e[oe]===1){setImmediate(resume,e)}else{resume(e)}}}function onParserTimeout(e){const{socket:t,timeoutType:n,client:i}=e;if(n===et){if(!t[q]||t.writableNeedDrain||i[J]>1){s(!e.paused,"cannot be paused while waiting for headers");l.destroy(t,new Q)}}else if(n===tt){if(!e.paused){l.destroy(t,new b)}}else if(n===At){s(i[J]===0&&i[ce]);l.destroy(t,new w("socket idle timeout"))}}function onSocketReadable(){const{[P]:e}=this;if(e){e.readMore()}}function onSocketError(e){const{[T]:t,[P]:n}=this;s(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID");if(t[Re]!=="h2"){if(e.code==="ECONNRESET"&&n.statusCode&&!n.shouldKeepAlive){n.onMessageComplete();return}}this[ie]=e;onError(this[T],e)}function onError(e,t){if(e[J]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){s(e[ne]===e[se]);const n=e[j].splice(e[se]);for(let s=0;s0&&n.code!=="UND_ERR_INFO"){const t=e[j][e[se]];e[j][e[se]++]=null;errorRequest(e,t,n)}e[ne]=e[se];s(e[J]===0);e.emit("disconnect",e[U],[e],n);resume(e)}async function connect(e){s(!e[$]);s(!e[ae]);let{host:t,hostname:n,protocol:o,port:h}=e[U];if(n[0]==="["){const e=n.indexOf("]");s(e!==-1);const t=n.substr(1,e-1);s(i.isIP(t));n=t}e[$]=true;if(Je.beforeConnect.hasSubscribers){Je.beforeConnect.publish({connectParams:{host:t,hostname:n,protocol:o,port:h,servername:e[v],localAddress:e[be]},connector:e[de]})}try{const i=await new Promise(((s,i)=>{e[de]({host:t,hostname:n,protocol:o,port:h,servername:e[v],localAddress:e[be]},((e,t)=>{if(e){i(e)}else{s(t)}}))}));if(e.destroyed){l.destroy(i.on("error",(()=>{})),new _);return}e[$]=false;s(i);const u=i.alpnProtocol==="h2";if(u){if(!xe){xe=true;process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"})}const t=Ue.connect(e[U],{createConnection:()=>i,peerMaxConcurrentStreams:e[_e].maxConcurrentStreams});e[Re]="h2";t[T]=e;t[ae]=i;t.on("error",onHttp2SessionError);t.on("frameError",onHttp2FrameError);t.on("end",onHttp2SessionEnd);t.on("goaway",onHTTP2GoAway);t.on("close",onSocketClose);t.unref();e[ke]=t;i[ke]=t}else{if(!Ke){Ke=await je;je=null}i[te]=false;i[q]=false;i[L]=false;i[Y]=false;i[P]=new Parser(e,i,Ke)}i[Be]=0;i[Ce]=e[Ce];i[T]=e;i[ie]=null;i.on("error",onSocketError).on("readable",onSocketReadable).on("end",onSocketEnd).on("close",onSocketClose);e[ae]=i;if(Je.connected.hasSubscribers){Je.connected.publish({connectParams:{host:t,hostname:n,protocol:o,port:h,servername:e[v],localAddress:e[be]},connector:e[de],socket:i})}e.emit("connect",e[U],[e])}catch(i){if(e.destroyed){return}e[$]=false;if(Je.connectError.hasSubscribers){Je.connectError.publish({connectParams:{host:t,hostname:n,protocol:o,port:h,servername:e[v],localAddress:e[be]},connector:e[de],error:i})}if(i.code==="ERR_TLS_CERT_ALTNAME_INVALID"){s(e[J]===0);while(e[W]>0&&e[j][e[ne]].servername===e[v]){const t=e[j][e[ne]++];errorRequest(e,t,i)}}else{onError(e,i)}e.emit("connectionError",e[U],[e],i)}resume(e)}function emitDrain(e){e[ee]=0;e.emit("drain",e[U],[e])}function resume(e,t){if(e[G]===2){return}e[G]=2;_resume(e,t);e[G]=0;if(e[se]>256){e[j].splice(0,e[se]);e[ne]-=e[se];e[se]=0}}function _resume(e,t){while(true){if(e.destroyed){s(e[W]===0);return}if(e[Ge]&&!e[V]){e[Ge]();e[Ge]=null;return}const n=e[ae];if(n&&!n.destroyed&&n.alpnProtocol!=="h2"){if(e[V]===0){if(!n[te]&&n.unref){n.unref();n[te]=true}}else if(n[te]&&n.ref){n.ref();n[te]=false}if(e[V]===0){if(n[P].timeoutType!==At){n[P].setTimeout(e[ce],At)}}else if(e[J]>0&&n[P].statusCode<200){if(n[P].timeoutType!==et){const t=e[j][e[se]];const s=t.headersTimeout!=null?t.headersTimeout:e[ge];n[P].setTimeout(s,et)}}}if(e[O]){e[ee]=2}else if(e[ee]===2){if(t){e[ee]=1;process.nextTick(emitDrain,e)}else{emitDrain(e)}continue}if(e[W]===0){return}if(e[J]>=(e[oe]||1)){return}const i=e[j][e[ne]];if(e[U].protocol==="https:"&&e[v]!==i.servername){if(e[J]>0){return}e[v]=i.servername;if(n&&n.servername!==i.servername){l.destroy(n,new w("servername changed"));return}}if(e[$]){return}if(!n&&!e[ke]){connect(e);return}if(n.destroyed||n[q]||n[L]||n[Y]){return}if(e[J]>0&&!i.idempotent){return}if(e[J]>0&&(i.upgrade||i.method==="CONNECT")){return}if(e[J]>0&&l.bodyLength(i.body)!==0&&(l.isStream(i.body)||l.isAsyncIterable(i.body))){return}if(!i.aborted&&write(e,i)){e[ne]++}else{e[j].splice(e[ne],1)}}}function shouldSendContentLength(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function write(e,t){if(e[Re]==="h2"){writeH2(e,e[ke],t);return}const{body:n,method:i,path:o,host:h,upgrade:u,headers:g,blocking:f,reset:I}=t;const C=i==="PUT"||i==="POST"||i==="PATCH";if(n&&typeof n.read==="function"){n.read(0)}const Q=l.bodyLength(n);let p=Q;if(p===null){p=t.contentLength}if(p===0&&!C){p=null}if(shouldSendContentLength(i)&&p>0&&t.contentLength!==null&&t.contentLength!==p){if(e[Ee]){errorRequest(e,t,new E);return false}process.emitWarning(new E)}const y=e[ae];try{t.onConnect((n=>{if(t.aborted||t.completed){return}errorRequest(e,t,n||new B);l.destroy(y,new w("aborted"))}))}catch(n){errorRequest(e,t,n)}if(t.aborted){return false}if(i==="HEAD"){y[L]=true}if(u||i==="CONNECT"){y[L]=true}if(I!=null){y[L]=I}if(e[Ce]&&y[Be]++>=e[Ce]){y[L]=true}if(f){y[Y]=true}let b=`${i} ${o} HTTP/1.1\r\n`;if(typeof h==="string"){b+=`host: ${h}\r\n`}else{b+=e[re]}if(u){b+=`connection: upgrade\r\nupgrade: ${u}\r\n`}else if(e[oe]&&!y[L]){b+="connection: keep-alive\r\n"}else{b+="connection: close\r\n"}if(g){b+=g}if(Je.sendHeaders.hasSubscribers){Je.sendHeaders.publish({request:t,headers:b,socket:y})}if(!n||Q===0){if(p===0){y.write(`${b}content-length: 0\r\n\r\n`,"latin1")}else{s(p===null,"no body must not have content length");y.write(`${b}\r\n`,"latin1")}t.onRequestSent()}else if(l.isBuffer(n)){s(p===n.byteLength,"buffer body must have content length");y.cork();y.write(`${b}content-length: ${p}\r\n\r\n`,"latin1");y.write(n);y.uncork();t.onBodySent(n);t.onRequestSent();if(!C){y[L]=true}}else if(l.isBlobLike(n)){if(typeof n.stream==="function"){writeIterable({body:n.stream(),client:e,request:t,socket:y,contentLength:p,header:b,expectsPayload:C})}else{writeBlob({body:n,client:e,request:t,socket:y,contentLength:p,header:b,expectsPayload:C})}}else if(l.isStream(n)){writeStream({body:n,client:e,request:t,socket:y,contentLength:p,header:b,expectsPayload:C})}else if(l.isIterable(n)){writeIterable({body:n,client:e,request:t,socket:y,contentLength:p,header:b,expectsPayload:C})}else{s(false)}return true}function writeH2(e,t,n){const{body:i,method:o,path:h,host:u,upgrade:f,expectContinue:I,signal:C,headers:Q}=n;let p;if(typeof Q==="string")p=g[Ne](Q.trim());else p=Q;if(f){errorRequest(e,n,new Error("Upgrade not supported for H2"));return false}try{n.onConnect((t=>{if(n.aborted||n.completed){return}errorRequest(e,n,t||new B)}))}catch(t){errorRequest(e,n,t)}if(n.aborted){return false}let y;const b=e[_e];p[Le]=u||e[Se];p[ve]=o;if(o==="CONNECT"){t.ref();y=t.request(p,{endStream:false,signal:C});if(y.id&&!y.pending){n.onUpgrade(null,null,y);++b.openStreams}else{y.once("ready",(()=>{n.onUpgrade(null,null,y);++b.openStreams}))}y.once("close",(()=>{b.openStreams-=1;if(b.openStreams===0)t.unref()}));return true}p[Te]=h;p[Me]="https";const R=o==="PUT"||o==="POST"||o==="PATCH";if(i&&typeof i.read==="function"){i.read(0)}let k=l.bodyLength(i);if(k==null){k=n.contentLength}if(k===0||!R){k=null}if(shouldSendContentLength(o)&&k>0&&n.contentLength!=null&&n.contentLength!==k){if(e[Ee]){errorRequest(e,n,new E);return false}process.emitWarning(new E)}if(k!=null){s(i,"no body must not have content length");p[He]=`${k}`}t.ref();const _=o==="GET"||o==="HEAD";if(I){p[Oe]="100-continue";y=t.request(p,{endStream:_,signal:C});y.once("continue",writeBodyH2)}else{y=t.request(p,{endStream:_,signal:C});writeBodyH2()}++b.openStreams;y.once("response",(e=>{if(n.onHeaders(Number(e[Pe]),e,y.resume.bind(y),"")===false){y.pause()}}));y.once("end",(()=>{n.onComplete([])}));y.on("data",(e=>{if(n.onData(e)===false)y.pause()}));y.once("close",(()=>{b.openStreams-=1;if(b.openStreams===0)t.unref()}));y.once("error",(function(t){if(e[ke]&&!e[ke].destroyed&&!this.closed&&!this.destroyed){b.streams-=1;l.destroy(y,t)}}));y.once("frameError",((t,s)=>{const i=new w(`HTTP/2: "frameError" received - type ${t}, code ${s}`);errorRequest(e,n,i);if(e[ke]&&!e[ke].destroyed&&!this.closed&&!this.destroyed){b.streams-=1;l.destroy(y,i)}}));return true;function writeBodyH2(){if(!i){n.onRequestSent()}else if(l.isBuffer(i)){s(k===i.byteLength,"buffer body must have content length");y.cork();y.write(i);y.uncork();y.end();n.onBodySent(i);n.onRequestSent()}else if(l.isBlobLike(i)){if(typeof i.stream==="function"){writeIterable({client:e,request:n,contentLength:k,h2stream:y,expectsPayload:R,body:i.stream(),socket:e[ae],header:""})}else{writeBlob({body:i,client:e,request:n,contentLength:k,expectsPayload:R,h2stream:y,header:"",socket:e[ae]})}}else if(l.isStream(i)){writeStream({body:i,client:e,request:n,contentLength:k,expectsPayload:R,socket:e[ae],h2stream:y,header:""})}else if(l.isIterable(i)){writeIterable({body:i,client:e,request:n,contentLength:k,expectsPayload:R,header:"",h2stream:y,socket:e[ae]})}else{s(false)}}}function writeStream({h2stream:e,body:t,client:n,request:i,socket:o,contentLength:u,header:g,expectsPayload:f}){s(u!==0||n[J]===0,"stream body cannot be pipelined");if(n[Re]==="h2"){const n=h(t,e,(n=>{if(n){l.destroy(t,n);l.destroy(e,n)}else{i.onRequestSent()}}));n.on("data",onPipeData);n.once("end",(()=>{n.removeListener("data",onPipeData);l.destroy(n)}));function onPipeData(e){i.onBodySent(e)}return}let E=false;const I=new AsyncWriter({socket:o,request:i,contentLength:u,client:n,expectsPayload:f,header:g});const onData=function(e){if(E){return}try{if(!I.write(e)&&this.pause){this.pause()}}catch(e){l.destroy(this,e)}};const onDrain=function(){if(E){return}if(t.resume){t.resume()}};const onAbort=function(){onFinished(new B)};const onFinished=function(e){if(E){return}E=true;s(o.destroyed||o[q]&&n[J]<=1);o.off("drain",onDrain).off("error",onFinished);t.removeListener("data",onData).removeListener("end",onFinished).removeListener("error",onFinished).removeListener("close",onAbort);if(!e){try{I.end()}catch(t){e=t}}I.destroy(e);if(e&&(e.code!=="UND_ERR_INFO"||e.message!=="reset")){l.destroy(t,e)}else{l.destroy(t)}};t.on("data",onData).on("end",onFinished).on("error",onFinished).on("close",onAbort);if(t.resume){t.resume()}o.on("drain",onDrain).on("error",onFinished)}async function writeBlob({h2stream:e,body:t,client:n,request:i,socket:o,contentLength:h,header:u,expectsPayload:g}){s(h===t.size,"blob body must have content length");const f=n[Re]==="h2";try{if(h!=null&&h!==t.size){throw new E}const s=Buffer.from(await t.arrayBuffer());if(f){e.cork();e.write(s);e.uncork()}else{o.cork();o.write(`${u}content-length: ${h}\r\n\r\n`,"latin1");o.write(s);o.uncork()}i.onBodySent(s);i.onRequestSent();if(!g){o[L]=true}resume(n)}catch(t){l.destroy(f?e:o,t)}}async function writeIterable({h2stream:e,body:t,client:n,request:i,socket:o,contentLength:h,header:l,expectsPayload:u}){s(h!==0||n[J]===0,"iterator body cannot be pipelined");let g=null;function onDrain(){if(g){const e=g;g=null;e()}}const waitForDrain=()=>new Promise(((e,t)=>{s(g===null);if(o[ie]){t(o[ie])}else{g=e}}));if(n[Re]==="h2"){e.on("close",onDrain).on("drain",onDrain);try{for await(const n of t){if(o[ie]){throw o[ie]}const t=e.write(n);i.onBodySent(n);if(!t){await waitForDrain()}}}catch(t){e.destroy(t)}finally{i.onRequestSent();e.end();e.off("close",onDrain).off("drain",onDrain)}return}o.on("close",onDrain).on("drain",onDrain);const f=new AsyncWriter({socket:o,request:i,contentLength:h,client:n,expectsPayload:u,header:l});try{for await(const e of t){if(o[ie]){throw o[ie]}if(!f.write(e)){await waitForDrain()}}f.end()}catch(e){f.destroy(e)}finally{o.off("close",onDrain).off("drain",onDrain)}}class AsyncWriter{constructor({socket:e,request:t,contentLength:n,client:s,expectsPayload:i,header:o}){this.socket=e;this.request=t;this.contentLength=n;this.client=s;this.bytesWritten=0;this.expectsPayload=i;this.header=o;e[q]=true}write(e){const{socket:t,request:n,contentLength:s,client:i,bytesWritten:o,expectsPayload:h,header:l}=this;if(t[ie]){throw t[ie]}if(t.destroyed){return false}const u=Buffer.byteLength(e);if(!u){return true}if(s!==null&&o+u>s){if(i[Ee]){throw new E}process.emitWarning(new E)}t.cork();if(o===0){if(!h){t[L]=true}if(s===null){t.write(`${l}transfer-encoding: chunked\r\n`,"latin1")}else{t.write(`${l}content-length: ${s}\r\n\r\n`,"latin1")}}if(s===null){t.write(`\r\n${u.toString(16)}\r\n`,"latin1")}this.bytesWritten+=u;const g=t.write(e);t.uncork();n.onBodySent(e);if(!g){if(t[P].timeout&&t[P].timeoutType===et){if(t[P].timeout.refresh){t[P].timeout.refresh()}}}return g}end(){const{socket:e,contentLength:t,client:n,bytesWritten:s,expectsPayload:i,header:o,request:h}=this;h.onRequestSent();e[q]=false;if(e[ie]){throw e[ie]}if(e.destroyed){return}if(s===0){if(i){e.write(`${o}content-length: 0\r\n\r\n`,"latin1")}else{e.write(`${o}\r\n`,"latin1")}}else if(t===null){e.write("\r\n0\r\n\r\n","latin1")}if(t!==null&&s!==t){if(n[Ee]){throw new E}else{process.emitWarning(new E)}}if(e[P].timeout&&e[P].timeoutType===et){if(e[P].timeout.refresh){e[P].timeout.refresh()}}resume(n)}destroy(e){const{socket:t,client:n}=this;t[q]=false;if(e){s(n[J]<=1,"pipeline should only contain this request");l.destroy(t,e)}}}function errorRequest(e,t,n){try{t.onError(n);s(t.aborted)}catch(n){e.emit("error",n)}}e.exports=Client},6436:(e,t,n)=>{"use strict";const{kConnected:s,kSize:i}=n(2785);class CompatWeakRef{constructor(e){this.value=e}deref(){return this.value[s]===0&&this.value[i]===0?undefined:this.value}}class CompatFinalizer{constructor(e){this.finalizer=e}register(e,t){if(e.on){e.on("disconnect",(()=>{if(e[s]===0&&e[i]===0){this.finalizer(t)}}))}}}e.exports=function(){if(process.env.NODE_V8_COVERAGE){return{WeakRef:CompatWeakRef,FinalizationRegistry:CompatFinalizer}}return{WeakRef:global.WeakRef||CompatWeakRef,FinalizationRegistry:global.FinalizationRegistry||CompatFinalizer}}},663:e=>{"use strict";const t=1024;const n=4096;e.exports={maxAttributeValueSize:t,maxNameValuePairSize:n}},1724:(e,t,n)=>{"use strict";const{parseSetCookie:s}=n(4408);const{stringify:i,getHeadersList:o}=n(3121);const{webidl:h}=n(1744);const{Headers:l}=n(554);function getCookies(e){h.argumentLengthCheck(arguments,1,{header:"getCookies"});h.brandCheck(e,l,{strict:false});const t=e.get("cookie");const n={};if(!t){return n}for(const e of t.split(";")){const[t,...s]=e.split("=");n[t.trim()]=s.join("=")}return n}function deleteCookie(e,t,n){h.argumentLengthCheck(arguments,2,{header:"deleteCookie"});h.brandCheck(e,l,{strict:false});t=h.converters.DOMString(t);n=h.converters.DeleteCookieAttributes(n);setCookie(e,{name:t,value:"",expires:new Date(0),...n})}function getSetCookies(e){h.argumentLengthCheck(arguments,1,{header:"getSetCookies"});h.brandCheck(e,l,{strict:false});const t=o(e).cookies;if(!t){return[]}return t.map((e=>s(Array.isArray(e)?e[1]:e)))}function setCookie(e,t){h.argumentLengthCheck(arguments,2,{header:"setCookie"});h.brandCheck(e,l,{strict:false});t=h.converters.Cookie(t);const n=i(t);if(n){e.append("Set-Cookie",i(t))}}h.converters.DeleteCookieAttributes=h.dictionaryConverter([{converter:h.nullableConverter(h.converters.DOMString),key:"path",defaultValue:null},{converter:h.nullableConverter(h.converters.DOMString),key:"domain",defaultValue:null}]);h.converters.Cookie=h.dictionaryConverter([{converter:h.converters.DOMString,key:"name"},{converter:h.converters.DOMString,key:"value"},{converter:h.nullableConverter((e=>{if(typeof e==="number"){return h.converters["unsigned long long"](e)}return new Date(e)})),key:"expires",defaultValue:null},{converter:h.nullableConverter(h.converters["long long"]),key:"maxAge",defaultValue:null},{converter:h.nullableConverter(h.converters.DOMString),key:"domain",defaultValue:null},{converter:h.nullableConverter(h.converters.DOMString),key:"path",defaultValue:null},{converter:h.nullableConverter(h.converters.boolean),key:"secure",defaultValue:null},{converter:h.nullableConverter(h.converters.boolean),key:"httpOnly",defaultValue:null},{converter:h.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:h.sequenceConverter(h.converters.DOMString),key:"unparsed",defaultValue:[]}]);e.exports={getCookies:getCookies,deleteCookie:deleteCookie,getSetCookies:getSetCookies,setCookie:setCookie}},4408:(e,t,n)=>{"use strict";const{maxNameValuePairSize:s,maxAttributeValueSize:i}=n(663);const{isCTLExcludingHtab:o}=n(3121);const{collectASequenceOfCodePointsFast:h}=n(685);const l=n(9491);function parseSetCookie(e){if(o(e)){return null}let t="";let n="";let i="";let l="";if(e.includes(";")){const s={position:0};t=h(";",e,s);n=e.slice(s.position)}else{t=e}if(!t.includes("=")){l=t}else{const e={position:0};i=h("=",t,e);l=t.slice(e.position+1)}i=i.trim();l=l.trim();if(i.length+l.length>s){return null}return{name:i,value:l,...parseUnparsedAttributes(n)}}function parseUnparsedAttributes(e,t={}){if(e.length===0){return t}l(e[0]===";");e=e.slice(1);let n="";if(e.includes(";")){n=h(";",e,{position:0});e=e.slice(n.length)}else{n=e;e=""}let s="";let o="";if(n.includes("=")){const e={position:0};s=h("=",n,e);o=n.slice(e.position+1)}else{s=n}s=s.trim();o=o.trim();if(o.length>i){return parseUnparsedAttributes(e,t)}const u=s.toLowerCase();if(u==="expires"){const e=new Date(o);t.expires=e}else if(u==="max-age"){const n=o.charCodeAt(0);if((n<48||n>57)&&o[0]!=="-"){return parseUnparsedAttributes(e,t)}if(!/^\d+$/.test(o)){return parseUnparsedAttributes(e,t)}const s=Number(o);t.maxAge=s}else if(u==="domain"){let e=o;if(e[0]==="."){e=e.slice(1)}e=e.toLowerCase();t.domain=e}else if(u==="path"){let e="";if(o.length===0||o[0]!=="/"){e="/"}else{e=o}t.path=e}else if(u==="secure"){t.secure=true}else if(u==="httponly"){t.httpOnly=true}else if(u==="samesite"){let e="Default";const n=o.toLowerCase();if(n.includes("none")){e="None"}if(n.includes("strict")){e="Strict"}if(n.includes("lax")){e="Lax"}t.sameSite=e}else{t.unparsed??=[];t.unparsed.push(`${s}=${o}`)}return parseUnparsedAttributes(e,t)}e.exports={parseSetCookie:parseSetCookie,parseUnparsedAttributes:parseUnparsedAttributes}},3121:(e,t,n)=>{"use strict";const s=n(9491);const{kHeadersList:i}=n(2785);function isCTLExcludingHtab(e){if(e.length===0){return false}for(const t of e){const e=t.charCodeAt(0);if(e>=0||e<=8||(e>=10||e<=31)||e===127){return false}}}function validateCookieName(e){for(const t of e){const e=t.charCodeAt(0);if(e<=32||e>127||t==="("||t===")"||t===">"||t==="<"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"){throw new Error("Invalid cookie name")}}}function validateCookieValue(e){for(const t of e){const e=t.charCodeAt(0);if(e<33||e===34||e===44||e===59||e===92||e>126){throw new Error("Invalid header value")}}}function validateCookiePath(e){for(const t of e){const e=t.charCodeAt(0);if(e<33||t===";"){throw new Error("Invalid cookie path")}}}function validateCookieDomain(e){if(e.startsWith("-")||e.endsWith(".")||e.endsWith("-")){throw new Error("Invalid cookie domain")}}function toIMFDate(e){if(typeof e==="number"){e=new Date(e)}const t=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];const n=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];const s=t[e.getUTCDay()];const i=e.getUTCDate().toString().padStart(2,"0");const o=n[e.getUTCMonth()];const h=e.getUTCFullYear();const l=e.getUTCHours().toString().padStart(2,"0");const u=e.getUTCMinutes().toString().padStart(2,"0");const g=e.getUTCSeconds().toString().padStart(2,"0");return`${s}, ${i} ${o} ${h} ${l}:${u}:${g} GMT`}function validateCookieMaxAge(e){if(e<0){throw new Error("Invalid cookie max-age")}}function stringify(e){if(e.name.length===0){return null}validateCookieName(e.name);validateCookieValue(e.value);const t=[`${e.name}=${e.value}`];if(e.name.startsWith("__Secure-")){e.secure=true}if(e.name.startsWith("__Host-")){e.secure=true;e.domain=null;e.path="/"}if(e.secure){t.push("Secure")}if(e.httpOnly){t.push("HttpOnly")}if(typeof e.maxAge==="number"){validateCookieMaxAge(e.maxAge);t.push(`Max-Age=${e.maxAge}`)}if(e.domain){validateCookieDomain(e.domain);t.push(`Domain=${e.domain}`)}if(e.path){validateCookiePath(e.path);t.push(`Path=${e.path}`)}if(e.expires&&e.expires.toString()!=="Invalid Date"){t.push(`Expires=${toIMFDate(e.expires)}`)}if(e.sameSite){t.push(`SameSite=${e.sameSite}`)}for(const n of e.unparsed){if(!n.includes("=")){throw new Error("Invalid unparsed")}const[e,...s]=n.split("=");t.push(`${e.trim()}=${s.join("=")}`)}return t.join("; ")}let o;function getHeadersList(e){if(e[i]){return e[i]}if(!o){o=Object.getOwnPropertySymbols(e).find((e=>e.description==="headers list"));s(o,"Headers cannot be parsed")}const t=e[o];s(t);return t}e.exports={isCTLExcludingHtab:isCTLExcludingHtab,stringify:stringify,getHeadersList:getHeadersList}},2067:(e,t,n)=>{"use strict";const s=n(1808);const i=n(9491);const o=n(3983);const{InvalidArgumentError:h,ConnectTimeoutError:l}=n(8045);let u;let g;if(global.FinalizationRegistry&&!process.env.NODE_V8_COVERAGE){g=class WeakSessionCache{constructor(e){this._maxCachedSessions=e;this._sessionCache=new Map;this._sessionRegistry=new global.FinalizationRegistry((e=>{if(this._sessionCache.size=this._maxCachedSessions){const{value:e}=this._sessionCache.keys().next();this._sessionCache.delete(e)}this._sessionCache.set(e,t)}}}function buildConnector({allowH2:e,maxCachedSessions:t,socketPath:l,timeout:f,...E}){if(t!=null&&(!Number.isInteger(t)||t<0)){throw new h("maxCachedSessions must be a positive integer or zero")}const I={path:l,...E};const C=new g(t==null?100:t);f=f==null?1e4:f;e=e!=null?e:false;return function connect({hostname:t,host:h,protocol:l,port:g,servername:E,localAddress:B,httpSocket:Q},p){let y;if(l==="https:"){if(!u){u=n(4404)}E=E||I.servername||o.getServerName(h)||null;const s=E||t;const l=C.get(s)||null;i(s);y=u.connect({highWaterMark:16384,...I,servername:E,session:l,localAddress:B,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:Q,port:g||443,host:t});y.on("session",(function(e){C.set(s,e)}))}else{i(!Q,"httpSocket can only be sent on TLS update");y=s.connect({highWaterMark:64*1024,...I,localAddress:B,port:g||80,host:t})}if(I.keepAlive==null||I.keepAlive){const e=I.keepAliveInitialDelay===undefined?6e4:I.keepAliveInitialDelay;y.setKeepAlive(true,e)}const w=setupTimeout((()=>onConnectTimeout(y)),f);y.setNoDelay(true).once(l==="https:"?"secureConnect":"connect",(function(){w();if(p){const e=p;p=null;e(null,this)}})).on("error",(function(e){w();if(p){const t=p;p=null;t(e)}}));return y}}function setupTimeout(e,t){if(!t){return()=>{}}let n=null;let s=null;const i=setTimeout((()=>{n=setImmediate((()=>{if(process.platform==="win32"){s=setImmediate((()=>e()))}else{e()}}))}),t);return()=>{clearTimeout(i);clearImmediate(n);clearImmediate(s)}}function onConnectTimeout(e){o.destroy(e,new l)}e.exports=buildConnector},8045:e=>{"use strict";class UndiciError extends Error{constructor(e){super(e);this.name="UndiciError";this.code="UND_ERR"}}class ConnectTimeoutError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ConnectTimeoutError);this.name="ConnectTimeoutError";this.message=e||"Connect Timeout Error";this.code="UND_ERR_CONNECT_TIMEOUT"}}class HeadersTimeoutError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,HeadersTimeoutError);this.name="HeadersTimeoutError";this.message=e||"Headers Timeout Error";this.code="UND_ERR_HEADERS_TIMEOUT"}}class HeadersOverflowError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,HeadersOverflowError);this.name="HeadersOverflowError";this.message=e||"Headers Overflow Error";this.code="UND_ERR_HEADERS_OVERFLOW"}}class BodyTimeoutError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,BodyTimeoutError);this.name="BodyTimeoutError";this.message=e||"Body Timeout Error";this.code="UND_ERR_BODY_TIMEOUT"}}class ResponseStatusCodeError extends UndiciError{constructor(e,t,n,s){super(e);Error.captureStackTrace(this,ResponseStatusCodeError);this.name="ResponseStatusCodeError";this.message=e||"Response Status Code Error";this.code="UND_ERR_RESPONSE_STATUS_CODE";this.body=s;this.status=t;this.statusCode=t;this.headers=n}}class InvalidArgumentError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,InvalidArgumentError);this.name="InvalidArgumentError";this.message=e||"Invalid Argument Error";this.code="UND_ERR_INVALID_ARG"}}class InvalidReturnValueError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,InvalidReturnValueError);this.name="InvalidReturnValueError";this.message=e||"Invalid Return Value Error";this.code="UND_ERR_INVALID_RETURN_VALUE"}}class RequestAbortedError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,RequestAbortedError);this.name="AbortError";this.message=e||"Request aborted";this.code="UND_ERR_ABORTED"}}class InformationalError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,InformationalError);this.name="InformationalError";this.message=e||"Request information";this.code="UND_ERR_INFO"}}class RequestContentLengthMismatchError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,RequestContentLengthMismatchError);this.name="RequestContentLengthMismatchError";this.message=e||"Request body length does not match content-length header";this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}}class ResponseContentLengthMismatchError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ResponseContentLengthMismatchError);this.name="ResponseContentLengthMismatchError";this.message=e||"Response body length does not match content-length header";this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}}class ClientDestroyedError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ClientDestroyedError);this.name="ClientDestroyedError";this.message=e||"The client is destroyed";this.code="UND_ERR_DESTROYED"}}class ClientClosedError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ClientClosedError);this.name="ClientClosedError";this.message=e||"The client is closed";this.code="UND_ERR_CLOSED"}}class SocketError extends UndiciError{constructor(e,t){super(e);Error.captureStackTrace(this,SocketError);this.name="SocketError";this.message=e||"Socket error";this.code="UND_ERR_SOCKET";this.socket=t}}class NotSupportedError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,NotSupportedError);this.name="NotSupportedError";this.message=e||"Not supported error";this.code="UND_ERR_NOT_SUPPORTED"}}class BalancedPoolMissingUpstreamError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,NotSupportedError);this.name="MissingUpstreamError";this.message=e||"No upstream has been added to the BalancedPool";this.code="UND_ERR_BPL_MISSING_UPSTREAM"}}class HTTPParserError extends Error{constructor(e,t,n){super(e);Error.captureStackTrace(this,HTTPParserError);this.name="HTTPParserError";this.code=t?`HPE_${t}`:undefined;this.data=n?n.toString():undefined}}class ResponseExceededMaxSizeError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ResponseExceededMaxSizeError);this.name="ResponseExceededMaxSizeError";this.message=e||"Response content exceeded max size";this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}}e.exports={HTTPParserError:HTTPParserError,UndiciError:UndiciError,HeadersTimeoutError:HeadersTimeoutError,HeadersOverflowError:HeadersOverflowError,BodyTimeoutError:BodyTimeoutError,RequestContentLengthMismatchError:RequestContentLengthMismatchError,ConnectTimeoutError:ConnectTimeoutError,ResponseStatusCodeError:ResponseStatusCodeError,InvalidArgumentError:InvalidArgumentError,InvalidReturnValueError:InvalidReturnValueError,RequestAbortedError:RequestAbortedError,ClientDestroyedError:ClientDestroyedError,ClientClosedError:ClientClosedError,InformationalError:InformationalError,SocketError:SocketError,NotSupportedError:NotSupportedError,ResponseContentLengthMismatchError:ResponseContentLengthMismatchError,BalancedPoolMissingUpstreamError:BalancedPoolMissingUpstreamError,ResponseExceededMaxSizeError:ResponseExceededMaxSizeError}},2905:(e,t,n)=>{"use strict";const{InvalidArgumentError:s,NotSupportedError:i}=n(8045);const o=n(9491);const{kHTTP2BuildRequest:h,kHTTP2CopyHeaders:l,kHTTP1BuildRequest:u}=n(2785);const g=n(3983);const f=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/;const E=/[^\t\x20-\x7e\x80-\xff]/;const I=/[^\u0021-\u00ff]/;const C=Symbol("handler");const B={};let Q;try{const e=n(7643);B.create=e.channel("undici:request:create");B.bodySent=e.channel("undici:request:bodySent");B.headers=e.channel("undici:request:headers");B.trailers=e.channel("undici:request:trailers");B.error=e.channel("undici:request:error")}catch{B.create={hasSubscribers:false};B.bodySent={hasSubscribers:false};B.headers={hasSubscribers:false};B.trailers={hasSubscribers:false};B.error={hasSubscribers:false}}class Request{constructor(e,{path:t,method:i,body:o,headers:h,query:l,idempotent:u,blocking:E,upgrade:p,headersTimeout:y,bodyTimeout:w,reset:b,throwOnError:R,expectContinue:k},_){if(typeof t!=="string"){throw new s("path must be a string")}else if(t[0]!=="/"&&!(t.startsWith("http://")||t.startsWith("https://"))&&i!=="CONNECT"){throw new s("path must be an absolute URL or start with a slash")}else if(I.exec(t)!==null){throw new s("invalid request path")}if(typeof i!=="string"){throw new s("method must be a string")}else if(f.exec(i)===null){throw new s("invalid request method")}if(p&&typeof p!=="string"){throw new s("upgrade must be a string")}if(y!=null&&(!Number.isFinite(y)||y<0)){throw new s("invalid headersTimeout")}if(w!=null&&(!Number.isFinite(w)||w<0)){throw new s("invalid bodyTimeout")}if(b!=null&&typeof b!=="boolean"){throw new s("invalid reset")}if(k!=null&&typeof k!=="boolean"){throw new s("invalid expectContinue")}this.headersTimeout=y;this.bodyTimeout=w;this.throwOnError=R===true;this.method=i;this.abort=null;if(o==null){this.body=null}else if(g.isStream(o)){this.body=o;const e=this.body._readableState;if(!e||!e.autoDestroy){this.endHandler=function autoDestroy(){g.destroy(this)};this.body.on("end",this.endHandler)}this.errorHandler=e=>{if(this.abort){this.abort(e)}else{this.error=e}};this.body.on("error",this.errorHandler)}else if(g.isBuffer(o)){this.body=o.byteLength?o:null}else if(ArrayBuffer.isView(o)){this.body=o.buffer.byteLength?Buffer.from(o.buffer,o.byteOffset,o.byteLength):null}else if(o instanceof ArrayBuffer){this.body=o.byteLength?Buffer.from(o):null}else if(typeof o==="string"){this.body=o.length?Buffer.from(o):null}else if(g.isFormDataLike(o)||g.isIterable(o)||g.isBlobLike(o)){this.body=o}else{throw new s("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable")}this.completed=false;this.aborted=false;this.upgrade=p||null;this.path=l?g.buildURL(t,l):t;this.origin=e;this.idempotent=u==null?i==="HEAD"||i==="GET":u;this.blocking=E==null?false:E;this.reset=b==null?null:b;this.host=null;this.contentLength=null;this.contentType=null;this.headers="";this.expectContinue=k!=null?k:false;if(Array.isArray(h)){if(h.length%2!==0){throw new s("headers array must be even")}for(let e=0;e{e.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kHeadersList:Symbol("headers list"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kHTTP2BuildRequest:Symbol("http2 build request"),kHTTP1BuildRequest:Symbol("http1 build request"),kHTTP2CopyHeaders:Symbol("http2 copy headers"),kHTTPConnVersion:Symbol("http connection version")}},3983:(e,t,n)=>{"use strict";const s=n(9491);const{kDestroyed:i,kBodyUsed:o}=n(2785);const{IncomingMessage:h}=n(3685);const l=n(2781);const u=n(1808);const{InvalidArgumentError:g}=n(8045);const{Blob:f}=n(4300);const E=n(3837);const{stringify:I}=n(3477);const[C,B]=process.versions.node.split(".").map((e=>Number(e)));function nop(){}function isStream(e){return e&&typeof e==="object"&&typeof e.pipe==="function"&&typeof e.on==="function"}function isBlobLike(e){return f&&e instanceof f||e&&typeof e==="object"&&(typeof e.stream==="function"||typeof e.arrayBuffer==="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function buildURL(e,t){if(e.includes("?")||e.includes("#")){throw new Error('Query params cannot be passed when url already contains "?" or "#".')}const n=I(t);if(n){e+="?"+n}return e}function parseURL(e){if(typeof e==="string"){e=new URL(e);if(!/^https?:/.test(e.origin||e.protocol)){throw new g("Invalid URL protocol: the URL must start with `http:` or `https:`.")}return e}if(!e||typeof e!=="object"){throw new g("Invalid URL: The URL argument must be a non-null object.")}if(!/^https?:/.test(e.origin||e.protocol)){throw new g("Invalid URL protocol: the URL must start with `http:` or `https:`.")}if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&!Number.isFinite(parseInt(e.port))){throw new g("Invalid URL: port must be a valid integer or a string representation of an integer.")}if(e.path!=null&&typeof e.path!=="string"){throw new g("Invalid URL path: the path must be a string or null/undefined.")}if(e.pathname!=null&&typeof e.pathname!=="string"){throw new g("Invalid URL pathname: the pathname must be a string or null/undefined.")}if(e.hostname!=null&&typeof e.hostname!=="string"){throw new g("Invalid URL hostname: the hostname must be a string or null/undefined.")}if(e.origin!=null&&typeof e.origin!=="string"){throw new g("Invalid URL origin: the origin must be a string or null/undefined.")}const t=e.port!=null?e.port:e.protocol==="https:"?443:80;let n=e.origin!=null?e.origin:`${e.protocol}//${e.hostname}:${t}`;let s=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;if(n.endsWith("/")){n=n.substring(0,n.length-1)}if(s&&!s.startsWith("/")){s=`/${s}`}e=new URL(n+s)}return e}function parseOrigin(e){e=parseURL(e);if(e.pathname!=="/"||e.search||e.hash){throw new g("invalid url")}return e}function getHostname(e){if(e[0]==="["){const t=e.indexOf("]");s(t!==-1);return e.substr(1,t-1)}const t=e.indexOf(":");if(t===-1)return e;return e.substr(0,t)}function getServerName(e){if(!e){return null}s.strictEqual(typeof e,"string");const t=getHostname(e);if(u.isIP(t)){return""}return t}function deepClone(e){return JSON.parse(JSON.stringify(e))}function isAsyncIterable(e){return!!(e!=null&&typeof e[Symbol.asyncIterator]==="function")}function isIterable(e){return!!(e!=null&&(typeof e[Symbol.iterator]==="function"||typeof e[Symbol.asyncIterator]==="function"))}function bodyLength(e){if(e==null){return 0}else if(isStream(e)){const t=e._readableState;return t&&t.objectMode===false&&t.ended===true&&Number.isFinite(t.length)?t.length:null}else if(isBlobLike(e)){return e.size!=null?e.size:null}else if(isBuffer(e)){return e.byteLength}return null}function isDestroyed(e){return!e||!!(e.destroyed||e[i])}function isReadableAborted(e){const t=e&&e._readableState;return isDestroyed(e)&&t&&!t.endEmitted}function destroy(e,t){if(e==null||!isStream(e)||isDestroyed(e)){return}if(typeof e.destroy==="function"){if(Object.getPrototypeOf(e).constructor===h){e.socket=null}e.destroy(t)}else if(t){process.nextTick(((e,t)=>{e.emit("error",t)}),e,t)}if(e.destroyed!==true){e[i]=true}}const Q=/timeout=(\d+)/;function parseKeepAliveTimeout(e){const t=e.toString().match(Q);return t?parseInt(t[1],10)*1e3:null}function parseHeaders(e,t={}){if(!Array.isArray(e))return e;for(let n=0;n{e.close()}))}else{const t=Buffer.isBuffer(s)?s:Buffer.from(s);e.enqueue(new Uint8Array(t))}return e.desiredSize>0},async cancel(e){await t.return()}},0)}function isFormDataLike(e){return e&&typeof e==="object"&&typeof e.append==="function"&&typeof e.delete==="function"&&typeof e.get==="function"&&typeof e.getAll==="function"&&typeof e.has==="function"&&typeof e.set==="function"&&e[Symbol.toStringTag]==="FormData"}function throwIfAborted(e){if(!e){return}if(typeof e.throwIfAborted==="function"){e.throwIfAborted()}else{if(e.aborted){const e=new Error("The operation was aborted");e.name="AbortError";throw e}}}let y;function addAbortListener(e,t){if(typeof Symbol.dispose==="symbol"){if(!y){y=n(2361)}if(typeof y.addAbortListener==="function"&&"aborted"in e){return y.addAbortListener(e,t)}}if("addEventListener"in e){e.addEventListener("abort",t,{once:true});return()=>e.removeEventListener("abort",t)}e.addListener("abort",t);return()=>e.removeListener("abort",t)}const w=!!String.prototype.toWellFormed;function toUSVString(e){if(w){return`${e}`.toWellFormed()}else if(E.toUSVString){return E.toUSVString(e)}return`${e}`}const b=Object.create(null);b.enumerable=true;e.exports={kEnumerableProperty:b,nop:nop,isDisturbed:isDisturbed,isErrored:isErrored,isReadable:isReadable,toUSVString:toUSVString,isReadableAborted:isReadableAborted,isBlobLike:isBlobLike,parseOrigin:parseOrigin,parseURL:parseURL,getServerName:getServerName,isStream:isStream,isIterable:isIterable,isAsyncIterable:isAsyncIterable,isDestroyed:isDestroyed,parseRawHeaders:parseRawHeaders,parseHeaders:parseHeaders,parseKeepAliveTimeout:parseKeepAliveTimeout,destroy:destroy,bodyLength:bodyLength,deepClone:deepClone,ReadableStreamFrom:ReadableStreamFrom,isBuffer:isBuffer,validateHandler:validateHandler,getSocketInfo:getSocketInfo,isFormDataLike:isFormDataLike,buildURL:buildURL,throwIfAborted:throwIfAborted,addAbortListener:addAbortListener,nodeMajor:C,nodeMinor:B,nodeHasAutoSelectFamily:C>18||C===18&&B>=13}},4839:(e,t,n)=>{"use strict";const s=n(412);const{ClientDestroyedError:i,ClientClosedError:o,InvalidArgumentError:h}=n(8045);const{kDestroy:l,kClose:u,kDispatch:g,kInterceptors:f}=n(2785);const E=Symbol("destroyed");const I=Symbol("closed");const C=Symbol("onDestroyed");const B=Symbol("onClosed");const Q=Symbol("Intercepted Dispatch");class DispatcherBase extends s{constructor(){super();this[E]=false;this[C]=null;this[I]=false;this[B]=[]}get destroyed(){return this[E]}get closed(){return this[I]}get interceptors(){return this[f]}set interceptors(e){if(e){for(let t=e.length-1;t>=0;t--){const e=this[f][t];if(typeof e!=="function"){throw new h("interceptor must be an function")}}}this[f]=e}close(e){if(e===undefined){return new Promise(((e,t)=>{this.close(((n,s)=>n?t(n):e(s)))}))}if(typeof e!=="function"){throw new h("invalid callback")}if(this[E]){queueMicrotask((()=>e(new i,null)));return}if(this[I]){if(this[B]){this[B].push(e)}else{queueMicrotask((()=>e(null,null)))}return}this[I]=true;this[B].push(e);const onClosed=()=>{const e=this[B];this[B]=null;for(let t=0;tthis.destroy())).then((()=>{queueMicrotask(onClosed)}))}destroy(e,t){if(typeof e==="function"){t=e;e=null}if(t===undefined){return new Promise(((t,n)=>{this.destroy(e,((e,s)=>e?n(e):t(s)))}))}if(typeof t!=="function"){throw new h("invalid callback")}if(this[E]){if(this[C]){this[C].push(t)}else{queueMicrotask((()=>t(null,null)))}return}if(!e){e=new i}this[E]=true;this[C]=this[C]||[];this[C].push(t);const onDestroyed=()=>{const e=this[C];this[C]=null;for(let t=0;t{queueMicrotask(onDestroyed)}))}[Q](e,t){if(!this[f]||this[f].length===0){this[Q]=this[g];return this[g](e,t)}let n=this[g].bind(this);for(let e=this[f].length-1;e>=0;e--){n=this[f][e](n)}this[Q]=n;return n(e,t)}dispatch(e,t){if(!t||typeof t!=="object"){throw new h("handler must be an object")}try{if(!e||typeof e!=="object"){throw new h("opts must be an object.")}if(this[E]||this[C]){throw new i}if(this[I]){throw new o}return this[Q](e,t)}catch(e){if(typeof t.onError!=="function"){throw new h("invalid onError method")}t.onError(e);return false}}}e.exports=DispatcherBase},412:(e,t,n)=>{"use strict";const s=n(2361);class Dispatcher extends s{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}}e.exports=Dispatcher},1472:(e,t,n)=>{"use strict";const s=n(727);const i=n(3983);const{ReadableStreamFrom:o,isBlobLike:h,isReadableStreamLike:l,readableStreamClose:u,createDeferredPromise:g,fullyReadBody:f}=n(2538);const{FormData:E}=n(2015);const{kState:I}=n(5861);const{webidl:C}=n(1744);const{DOMException:B,structuredClone:Q}=n(1037);const{Blob:p,File:y}=n(4300);const{kBodyUsed:w}=n(2785);const b=n(9491);const{isErrored:R}=n(3983);const{isUint8Array:k,isArrayBuffer:_}=n(9830);const{File:D}=n(8511);const{parseMIMEType:U,serializeAMimeType:L}=n(685);let v=globalThis.ReadableStream;const T=y??D;const O=new TextEncoder;const P=new TextDecoder;function extractBody(e,t=false){if(!v){v=n(5356).ReadableStream}let s=null;if(e instanceof v){s=e}else if(h(e)){s=e.stream()}else{s=new v({async pull(e){e.enqueue(typeof f==="string"?O.encode(f):f);queueMicrotask((()=>u(e)))},start(){},type:undefined})}b(l(s));let g=null;let f=null;let E=null;let I=null;if(typeof e==="string"){f=e;I="text/plain;charset=UTF-8"}else if(e instanceof URLSearchParams){f=e.toString();I="application/x-www-form-urlencoded;charset=UTF-8"}else if(_(e)){f=new Uint8Array(e.slice())}else if(ArrayBuffer.isView(e)){f=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength))}else if(i.isFormDataLike(e)){const t=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`;const n=`--${t}\r\nContent-Disposition: form-data` +var s=n(4300);var i=s.Buffer;function copyProps(e,t){for(var n in e){t[n]=e[n]}}if(i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow){e.exports=s}else{copyProps(s,t);t.Buffer=SafeBuffer}function SafeBuffer(e,t,n){return i(e,t,n)}SafeBuffer.prototype=Object.create(i.prototype);copyProps(i,SafeBuffer);SafeBuffer.from=function(e,t,n){if(typeof e==="number"){throw new TypeError("Argument must not be a number")}return i(e,t,n)};SafeBuffer.alloc=function(e,t,n){if(typeof e!=="number"){throw new TypeError("Argument must be a number")}var s=i(e);if(t!==undefined){if(typeof n==="string"){s.fill(t,n)}else{s.fill(t)}}else{s.fill(0)}return s};SafeBuffer.allocUnsafe=function(e){if(typeof e!=="number"){throw new TypeError("Argument must be a number")}return i(e)};SafeBuffer.allocUnsafeSlow=function(e){if(typeof e!=="number"){throw new TypeError("Argument must be a number")}return s.SlowBuffer(e)}},5118:(e,t,n)=>{"use strict";var s=n(4300);var i=s.Buffer;var o={};var h;for(h in s){if(!s.hasOwnProperty(h))continue;if(h==="SlowBuffer"||h==="Buffer")continue;o[h]=s[h]}var l=o.Buffer={};for(h in i){if(!i.hasOwnProperty(h))continue;if(h==="allocUnsafe"||h==="allocUnsafeSlow")continue;l[h]=i[h]}o.Buffer.prototype=i.prototype;if(!l.from||l.from===Uint8Array.from){l.from=function(e,t,n){if(typeof e==="number"){throw new TypeError('The "value" argument must not be of type number. Received type '+typeof e)}if(e&&typeof e.length==="undefined"){throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}return i(e,t,n)}}if(!l.alloc){l.alloc=function(e,t,n){if(typeof e!=="number"){throw new TypeError('The "size" argument must be of type number. Received type '+typeof e)}if(e<0||e>=2*(1<<30)){throw new RangeError('The value "'+e+'" is invalid for option "size"')}var s=i(e);if(!t||t.length===0){s.fill(0)}else if(typeof n==="string"){s.fill(t,n)}else{s.fill(t)}return s}}if(!o.kStringMaxLength){try{o.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch(e){}}if(!o.constants){o.constants={MAX_LENGTH:o.kMaxLength};if(o.kStringMaxLength){o.constants.MAX_STRING_LENGTH=o.kStringMaxLength}}e.exports=o},3232:e=>{const t={generic:"ERR_GENERIC_CLIENT",connect:"ERR_NOT_CONNECTED",badPath:"ERR_BAD_PATH",permission:"EACCES",notexist:"ENOENT",notdir:"ENOTDIR",badAuth:"ERR_BAD_AUTH"};const n={writeFile:1,readFile:2,writeDir:3,readDir:4,readObj:5,writeObj:6};e.exports={errorCode:t,targetType:n}},7551:(e,t,n)=>{"use strict";const{Client:s}=n(5869);const i=n(7147);const o=n(5107);const h=n(4742);const{join:l,parse:u}=n(1017);const{globalListener:g,addTempListeners:f,removeTempListeners:E,haveConnection:I,normalizeRemotePath:C,localExists:B,haveLocalAccess:Q,haveLocalCreate:p}=n(9432);const{errorCode:y}=n(3232);class SftpClient{constructor(e){this.version="9.0.4";this.client=new s;this.sftp=undefined;this.clientName=e?e:"sftp";this.endCalled=false;this.errorHandled=false;this.closeHandled=false;this.endHandled=false;this.remotePlatform="unix";this.debug=undefined;this.client.on("close",g(this,"close"));this.client.on("end",g(this,"end"));this.client.on("error",g(this,"error"))}debugMsg(e,t){if(this.debug){if(t){this.debug(`CLIENT[${this.clientName}]: ${e} ${JSON.stringify(t,null," ")}`)}else{this.debug(`CLIENT[${this.clientName}]: ${e}`)}}}fmtError(e,t="sftp",n,s){let i="";let o="";const h=s?` after ${s} ${s>1?"attempts":"attempt"}`:"";if(e===undefined){i=`${t}: Undefined error - probably a bug!`;o=y.generic}else if(typeof e==="string"){i=`${t}: ${e}${h}`;o=n?n:y.generic}else if(e.custom){i=`${t}->${e.message}${h}`;o=e.code}else{switch(e.code){case"ENOTFOUND":i=`${t}: Address lookup failed for host${h}`;break;case"ECONNREFUSED":i=`${t}: Remote host refused connection${h}`;break;case"ECONNRESET":i=`${t}: Remote host has reset the connection: ${e.message}${h}`;break;default:i=`${t}: ${e.message}${h}`}o=e.code?e.code:y.generic}const l=new Error(i);l.code=o;l.custom=true;this.debugMsg(`${l.message} (${l.code})`);return l}on(e,t){this.client.prependListener(e,t)}removeListener(e,t){this.client.removeListener(e,t)}_resetEventFlags(){this.closeHandled=false;this.endHandled=false;this.errorHandled=false}getConnection(e){let t,n;return new Promise(((s,i)=>{n=f(this,"getConnection",i);t=()=>{this.debugMsg("getConnection ready listener: got connection - promise resolved");s(true)};this.on("ready",t);try{this.client.connect(e)}catch(e){this.debugMsg(`getConnection: ${e.message}`);i(e)}})).finally((()=>{this.removeListener("ready",t);E(this,n,"getConnection")}))}getSftpChannel(){return new Promise(((e,t)=>{this.client.sftp(((n,s)=>{if(n){t(this.fmtError(n,"getSftpChannel",n.code))}else{this.sftp=s;e(s)}}))}))}async connect(e){let t;try{t=f(this,"connect");if(e.debug){this.debug=e.debug;this.debugMsg("connect: Debugging turned on");this.debugMsg(`ssh2-sftp-client Version: ${this.version} `,process.versions)}if(this.sftp){throw this.fmtError("An existing SFTP connection is already defined","connect",y.connect)}const n={retries:e.retries??1,factor:e.factor??2,minTimeout:e.retry_minTimeout??25e3};await h(n,(async(t,n)=>{try{this.debugMsg(`connect: Connect attempt ${n}`);await this.getConnection(e)}catch(e){switch(e.code){case"ENOTFOUND":case"ECONNREFUSED":case"ERR_SOCKET_BAD_PORT":throw e;case undefined:{if(e.message.endsWith("All configured authentication methods failed")||e.message.startsWith("Cannot parse privateKey")){throw e}t(e);break}default:t(e)}}}));const s=await this.getSftpChannel();return s}catch(e){this.end();throw e.custom?e:this.fmtError(e,"connect")}finally{E(this,t,"connect")}}realPath(e,t=true){let n;return new Promise(((s,i)=>{if(t){n=f(this,"realPath",i)}this.debugMsg(`realPath -> ${e}`);this.sftp.realpath(e,((t,n)=>{if(t){if(t.code===2){this.debugMsg('realPath <- ""');s("")}else{this.debugMsg(`${t.message} ${e}`,"realPath");i(this.fmtError(`${t.message} ${e}`,"realPath",t.code))}}this.debugMsg(`realPath <- ${n}`);s(n)}))})).finally((()=>{if(t){E(this,n,"realPath")}}))}cwd(){return this.realPath(".")}_xstat(e,t,n=true){let s;return new Promise(((i,o)=>{let cb=(e,n)=>{if(e){if(e.code===2||e.code===4){o(this.fmtError(`No such file: ${t}`,"_xstat",y.notexist))}else{o(this.fmtError(`${e.message} ${t}`,"_xstat",e.code))}}else{const e={mode:n.mode,uid:n.uid,gid:n.gid,size:n.size,accessTime:n.atime*1e3,modifyTime:n.mtime*1e3,isDirectory:n.isDirectory(),isFile:n.isFile(),isBlockDevice:n.isBlockDevice(),isCharacterDevice:n.isCharacterDevice(),isSymbolicLink:n.isSymbolicLink(),isFIFO:n.isFIFO(),isSocket:n.isSocket()};this.debugMsg("_xstat: result = ",e);i(e)}};if(n){s=f(this,"_xstat",o)}if(e==="stat"){this.sftp.stat(t,cb)}else{this.sftp.lstat(t,cb)}})).finally((()=>{if(n){E(this,s,"_xstat")}}))}async stat(e){try{I(this,"stat");return await this._xstat("stat",e)}catch(e){throw e.custom?e:this.fmtError(e,"stat",e.code)}}async lstat(e){try{I(this,"lstat");return await this._xstat("lstat",e)}catch(e){throw e.custom?e:this.fmtError(e,"lstat",e.code)}}async exists(e){this.debugMsg(`exists: remotePath = ${e}`);try{if(e==="."){return"d"}const t=await this.lstat(e);this.debugMsg("exists: <- ",t);if(t.isDirectory){return"d"}else if(t.isSymbolicLink){return"l"}else if(t.isFile){return"-"}else{return false}}catch(e){if(e.code===y.notexist){return false}throw e.custom?e:this.fmtError(e.message,"exists",e.code)}}list(e,t,n=true){let s;return new Promise(((i,o)=>{if(n){s=f(this,"list",o)}if(I(this,"list",o)){this.sftp.readdir(e,((n,s)=>{if(n){o(this.fmtError(`${n.message} ${e}`,"list",n.code))}else{const e=/-/gi;const n=s.map((t=>({type:t.longname.slice(0,1),name:t.filename,size:t.attrs.size,modifyTime:t.attrs.mtime*1e3,accessTime:t.attrs.atime*1e3,rights:{user:t.longname.slice(1,4).replace(e,""),group:t.longname.slice(4,7).replace(e,""),other:t.longname.slice(7,10).replace(e,"")},owner:t.attrs.uid,group:t.attrs.gid,longname:t.longname})));if(t){i(n.filter((e=>t(e))))}else{i(n)}}}))}})).finally((()=>{if(n){E(this,s,"list")}}))}get(e,t,n,s=true){let h,l,u;return new Promise(((g,E)=>{if(s){h=f(this,"get",E)}if(I(this,"get",E)){n={readStreamOptions:{...n?.readStreamOptions,autoClose:true},writeStreamOptions:{...n?.writeStreamOptions,autoClose:true},pipeOptions:{...n?.pipeOptions,end:true}};l=this.sftp.createReadStream(e,n.readStreamOptions);l.once("error",(n=>{if(t&&typeof t!=="string"&&!t.destroyed){t.destroy()}E(this.fmtError(`${n.message} ${e}`,"get",n.code))}));if(t===undefined){this.debugMsg("get resolving buffer of data");u=o((e=>{g(e)}))}else if(typeof t==="string"){this.debugMsg("get returning local file");const e=p(t);if(!e.status){E(this.fmtError(`Bad path: ${t}: ${e.details}`,"get",e.code));return}else{u=i.createWriteStream(t,n.writeStreamOptions)}}else{this.debugMsg("get: returning data into supplied stream");u=t}u.once("error",(e=>{E(this.fmtError(`${e.message} ${typeof t==="string"?t:""}`,"get",e.code))}));l.once("end",(()=>{if(typeof t==="string"){this.debugMsg("get: resolving with dst filename");g(t)}else if(t!==undefined){this.debugMsg("get: resolving with writer stream object");g(u)}}));l.pipe(u,n.pipeOptions)}})).finally((()=>{if(s){E(this,h,"get")}}))}_fastGet(e,t,n,s=true){let i;return new Promise(((o,h)=>{if(s){i=f(this,"_fastGet",h)}if(I(this,"_fastGet",h)){this.sftp.fastGet(e,t,n,(n=>{if(n){h(this.fmtError(`${n.message} Remote: ${e} Local: ${t}`))}o(`${e} was successfully download to ${t}!`)}))}})).finally((()=>{if(s){E(this,i,"_fastGet")}}))}async fastGet(e,t,n){try{const s=await this.exists(e);if(s!=="-"){const t=`${!s?"No such file ":"Not a regular file"} ${e}`;throw this.fmtError(t,"fastGet",y.badPath)}const i=p(t);if(!i.status){throw this.fmtError(`Bad path: ${t}: ${i.details}`,"fastGet",y.badPath)}return await this._fastGet(e,t,n)}catch(e){throw this.fmtError(e,"fastGet")}}_fastPut(e,t,n,s=true){let i;return new Promise(((o,h)=>{if(s){i=f(this,"_fastPut",h)}if(I(this,"_fastPut",h)){this.sftp.fastPut(e,t,n,(n=>{if(n){h(this.fmtError(`${n.message} Local: ${e} Remote: ${t}`,"fastPut",n.code))}o(`${e} was successfully uploaded to ${t}!`)}))}})).finally((()=>{if(s){E(this,i,"_fastPut")}}))}async fastPut(e,t,n){try{this.debugMsg(`fastPut -> local ${e} remote ${t}`);const s=Q(e);if(!s.status){throw this.fmtError(`Bad path: ${e}: ${s.details}`,"fastPut",s.code)}else if(s.status&&B(e)==="d"){throw this.fmtError(`Bad path: ${e} not a regular file`,"fastgPut",y.badPath)}return await this._fastPut(e,t,n)}catch(e){throw e.custom?e:this.fmtError(e.message,"fastPut",e.code)}}_put(e,t,n,s=true){let o,h,l;return new Promise(((u,g)=>{if(s){o=f(this,"_put",g)}n={readStreamOptions:{...n?.readStreamOptions,autoClose:true},writeStreamOptions:{...n?.writeStreamOptions,autoClose:true},pipeOptions:{...n?.pipeOptions,end:true}};if(I(this,"_put",g)){h=this.sftp.createWriteStream(t,n.writeStreamOptions);h.once("error",(e=>{g(this.fmtError(`Write stream error: ${e.message} ${t}`,"_put",e.code))}));h.once("close",(()=>{u(`Uploaded data stream to ${t}`)}));if(e instanceof Buffer){this.debugMsg("put source is a buffer");h.end(e)}else{l=typeof e==="string"?i.createReadStream(e,n.readStreamOptions):e;l.once("error",(t=>{g(this.fmtError(`Read stream error: ${t.message} ${typeof e==="string"?e:""}`,"_put",t.code))}));l.pipe(h,n.pipeOptions)}}})).finally((()=>{if(s){E(this,o,"_put")}}))}async put(e,t,n){try{if(typeof e==="string"){const t=Q(e);if(!t.status){throw this.fmtError(`Bad path: ${e} ${t.details}`,"put",t.code)}}return await this._put(e,t,n)}catch(e){throw e.custom?e:this.fmtError(`Re-thrown: ${e.message}`,"put",e.code)}}_append(e,t,n,s=true){let i;return new Promise(((o,h)=>{if(s){i=f(this,"_append",h)}if(I(this,"_append",h)){this.debugMsg(`append -> remote: ${t} `,n);n.flags="a";const s=this.sftp.createWriteStream(t,n);s.on("error",(e=>{h(this.fmtError(`${e.message} ${t}`,"append",e.code))}));s.on("close",(()=>{o(`Appended data to ${t}`)}));if(e instanceof Buffer){s.write(e);s.end()}else{e.pipe(s)}}})).finally((()=>{if(s){E(this,i,"_append")}}))}async append(e,t,n={}){try{if(typeof e==="string"){throw this.fmtError("Cannot append one file to another","append",y.badPath)}const s=await this.exists(t);if(s&&s==="d"){throw this.fmtError(`Bad path: ${t}: cannot append to a directory`,"append",y.badPath)}await this._append(e,t,n)}catch(e){throw e.custom?e:this.fmtError(e.message,"append",e.code)}}_doMkdir(e,t=true){let n;return new Promise(((s,i)=>{if(t){n=f(this,"_doMkdir",i)}this.sftp.mkdir(e,(t=>{if(t){if(t.code===4){i(this.fmtError(`Bad path: ${e} permission denied`,"_doMkdir",y.badPath))}else if(t.code===2){i(this.fmtError(`Bad path: ${e} parent not a directory or not exist`,"_doMkdir",y.badPath))}else{i(this.fmtError(`${t.message} ${e}`,"_doMkdir",t.code))}}else{s(`${e} directory created`)}}))})).finally((()=>{if(t){E(this,n,"_doMkdir")}}))}async _mkdir(e,t){try{const n=await C(this,e);const s=await this.exists(n);if(s&&s!=="d"){throw this.fmtError(`Bad path: ${n} already exists as a file`,"_mkdir",y.badPath)}else if(s){return`${n} already exists`}if(!t){return await this._doMkdir(n)}const i=u(n).dir;if(i){const e=await this.exists(i);if(!e){await this._mkdir(i,true)}else if(e!=="d"){throw this.fmtError(`Bad path: ${i} not a directory`,"_mkdir",y.badPath)}}return await this._doMkdir(n)}catch(t){throw t.custom?t:this.fmtError(`${t.message} ${e}`,"_mkdir",t.code)}}async mkdir(e,t=false){try{I(this,"mkdir");return await this._mkdir(e,t)}catch(e){throw this.fmtError(`${e.message}`,"mkdir",e.code)}}async rmdir(e,t=false){const _rmdir=e=>{let t;return new Promise(((n,s)=>{t=f(this,"_rmdir",s);this.debugMsg(`_rmdir: dir = ${e}`);this.sftp.rmdir(e,(t=>{if(t){s(this.fmtError(`${t.message} ${e}`,"rmdir",t.code))}n("Successfully removed directory")}))})).finally((()=>{E(this,t,"_rmdir")}))};const _delFiles=(e,t)=>{let n;return new Promise(((s,i)=>{n=f(this,"_delFiles",i);this.debugMsg(`_delFiles: path = ${e} fileList = ${t}`);let o=[];for(const n of t){o.push(this.delete(`${e}/${n.name}`,true,false))}s(o)})).then((e=>Promise.all(e))).finally((()=>{E(this,n,"_delFiles")}))};try{this.debugMsg(`rmdir: dir = ${e} recursive = ${t}`);let n=await C(this,e);let s=await this.exists(n);this.debugMsg(`rmdir: ${n} existStatus = ${s}`);if(!s){throw this.fmtError(`Bad Path: ${e}: No such directory`,"rmdir",y.badPath)}if(s!=="d"){throw this.fmtError(`Bad Path: ${e}: Not a directory`,"rmdir",y.badPath)}if(!t){this.debugMsg("rmdir: non-recursive - just try to remove it");return await _rmdir(n)}let i=await this.list(n);this.debugMsg(`rmdir: listing count = ${i.length}`);if(!i.length){this.debugMsg("rmdir: No sub dir or files, just rmdir");return await _rmdir(n)}let o=i.filter((e=>e.type!=="d"));this.debugMsg(`rmdir: dir content files to remove = ${o.length}`);let h=i.filter((e=>e.type==="d"));this.debugMsg(`rmdir: sub-directories to remove = ${h.length}`);await _delFiles(n,o);for(const e of h){await this.rmdir(`${n}/${e.name}`,true)}await _rmdir(n);return"Successfully removed directory"}catch(t){throw t.custom?t:this.fmtError(`${t.message} ${e}`,"rmdir",t.code)}}delete(e,t=false,n=true){let s;return new Promise(((i,o)=>{if(n){s=f(this,"delete",o)}this.sftp.unlink(e,(n=>{if(n){if(t&&n.code===2){i(`Successfully deleted ${e}`)}else{o(this.fmtError(`${n.message} ${e}`,"delete",n.code))}}i(`Successfully deleted ${e}`)}))})).finally((()=>{if(n){E(this,s,"delete")}}))}rename(e,t,n=true){let s;return new Promise(((i,o)=>{if(n){s=f(this,"rename",o)}if(I(this,"rename",o)){this.sftp.rename(e,t,(n=>{if(n){o(this.fmtError(`${n.message} From: ${e} To: ${t}`,"_rename",n.code))}i(`Successfully renamed ${e} to ${t}`)}))}})).finally((()=>{if(n){E(this,s,"rename")}}))}posixRename(e,t,n=true){let s;return new Promise(((i,o)=>{if(n){s=f(this,"posixRename",o)}if(I(this,"posixRename",o)){this.sftp.ext_openssh_rename(e,t,(n=>{if(n){o(this.fmtError(`${n.message} From: ${e} To: ${t}`,"_posixRename",n.code))}i(`Successful POSIX rename ${e} to ${t}`)}))}})).finally((()=>{E(this,s,"posixRename")}))}chmod(e,t,n=true){let s;return new Promise(((i,o)=>{if(n){s=f(this,"chmod",o)}if(I(this,"chmod",o)){this.sftp.chmod(e,t,(t=>{if(t){o(this.fmtError(`${t.message} ${e}`,"_chmod",t.code))}i("Successfully change file mode")}))}})).finally((()=>{if(n){E(this,s,"chmod")}}))}async uploadDir(e,t,n){const getRemoteStatus=async e=>{let t=await C(this,e);let n=await this.exists(t);if(n&&n!=="d"){throw this.fmtError(`Bad path ${t} Not a directory`,"getRemoteStatus",y.badPath)}return{remoteDir:t,remoteStatus:n}};const checkLocalStatus=e=>{const t=B(e);if(!t){throw this.fmtError(`Bad path: ${e} not exist`,"getLocalStatus",y.badPath)}if(t!=="d"){throw this.fmtError(`Bad path: ${e}: not a directory`,"getLocalStatus",y.badPath)}return t};const uploadFiles=(e,t,n,s)=>{let i;return new Promise(((o,h)=>{i=f(this,"uploadFiles",h);let u=[];for(const i of n){const n=l(e,i.name);const o=`${t}/${i.name}`;if(i.isFile()){if(s){u.push(this._fastPut(n,o,null,false))}else{u.push(this._put(n,o,null,false))}this.client.emit("upload",{source:n,destination:o})}else{this.debugMsg(`uploadFiles: File ignored: ${i.name} not a regular file`)}}o(Promise.all(u))})).then((e=>Promise.all(e))).finally((()=>{E(this,i,uploadFiles)}))};try{I(this,"uploadDir");this.debugMsg(`uploadDir: srcDir = ${e} dstDir = ${t} options = ${n}`);let{remoteDir:s,remoteStatus:o}=await getRemoteStatus(t);this.debugMsg(`uploadDir: remoteDir = ${s} remoteStatus = ${o}`);checkLocalStatus(e);if(!o){await this._mkdir(s,true)}let h=i.readdirSync(e,{encoding:"utf8",withFileTypes:true});this.debugMsg(`uploadDir: dirEntries = ${h}`);if(n?.filter){h=h.filter((t=>n.filter(l(e,t.name),t.isDirectory())))}let u=h.filter((e=>e.isDirectory()));let g=h.filter((e=>!e.isDirectory()));this.debugMsg(`uploadDir: dirUploads = ${u}`);this.debugMsg(`uploadDir: fileUploads = ${g}`);await uploadFiles(e,s,g,n?.useFastput);for(const t of u){let i=l(e,t.name);let o=`${s}/${t.name}`;await this.uploadDir(i,o,n)}return`${e} uploaded to ${t}`}catch(t){throw t.custom?t:this.fmtError(`${t.message} ${e}`,"uploadDir",t.code)}}async downloadDir(e,t,n={filter:null,useFastget:false}){const _getDownloadList=async(e,t)=>{try{let n=await this.list(e);if(t){return n.filter((n=>t(`${e}/${n.name}`,n.type==="d")))}return n}catch(e){throw e.custom?e:this.fmtError(e.message,"_getDownloadList",e.code)}};const _prepareDestination=e=>{try{const n=p(e);if(!n.status&&n.details==="permission denied"){throw this.fmtError(`Bad path: ${e}: ${n.details}`,"prepareDestination",n.code)}else if(n.status&&!n.type){i.mkdirSync(e,{recursive:true})}else if(n.status&&n.type!=="d"){throw this.fmtError(`Bad path: ${t}: not a directory`,"_prepareDestination",y.badPath)}}catch(e){throw e.custom?e:this.fmtError(e.message,"_prepareDestination",e.code)}};const _downloadFiles=(e,t,n,s)=>{let i;return new Promise(((o,h)=>{i=f(this,"_downloadFIles",h);let u=[];for(const i of n){let n=`${e}/${i.name}`;let o=l(t,i.name);if(s){u.push(this.fastGet(n,o,false))}else{u.push(this.get(n,o,false))}this.client.emit("download",{source:n,destination:o})}return o(Promise.all(u))})).finally((()=>{E(this,i,"_downloadFiles")}))};try{I(this,"downloadDir");let s=await _getDownloadList(e,n.filter);_prepareDestination(t);let i=s.filter((e=>e.type!=="d"));if(i.length){await _downloadFiles(e,t,i,n.useFastget)}let o=s.filter((e=>e.type==="d"));for(const n of o){let s=`${e}/${n.name}`;let i=l(t,n.name);await this.downloadDir(s,i)}return`${e} downloaded to ${t}`}catch(t){throw t.custom?t:this.fmtError(`${t.message}: ${e}`,"downloadDir",t.code)}}createReadStream(e,t){let n;try{n=f(this,"createReadStream");I(this,"createReadStream");const s=this.sftp.createReadStream(e,t);return s}catch(e){throw e.custom?e:this.fmtError(e.message,"createReadStream",e.code)}finally{E(this,n,"createReadStreame")}}createWriteStream(e,t){let n;try{n=f(this,"createWriteStream");I(this,"createWriteStream");const s=this.sftp.createWriteStream(e,t);return s}catch(e){throw e.custom?e:this.fmtError(e.message,"createWriteStream",e.code)}finally{E(this,n,"createWriteStream")}}_rcopy(e,t){return new Promise(((n,s)=>{const i=this.sftp.createWriteStream(t);const o=this.sftp.createReadStream(e);i.on("error",(e=>{s(this.fmtError(`${e.message} ${t}`,"_rcopy"))}));o.on("error",(t=>{s(this.fmtError(`${t.message} ${e}`,"_rcopy"))}));i.on("close",(()=>{n(`${e} copied to ${t}`)}));o.pipe(i)}))}async rcopy(e,t){let n;try{n=f(this,"rcopy");I(this,"rcopy");const s=await C(this,e);const i=await this.exists(s);if(!i){throw this.fmtError(`Source does not exist ${s}`,"rcopy",y.badPath)}if(i!=="-"){throw this.fmtError(`Source not a file ${s}`,"rcopy",y.badPath)}const o=await C(this,t);const h=await this.exists(o);if(h){throw this.fmtError(`Destination already exists ${o}`,"rcopy",y.badPath)}return this._rcopy(s,o)}catch(e){throw e.custom?e:this.fmtError(e,"rcopy")}finally{E(this,n,"rcopy")}}end(){let e,t;return new Promise(((n,s)=>{t=f(this,"end",s);this.endCalled=true;e=()=>{this.sftp=undefined;this.debugMsg("end: Connection closed");n(true)};this.on("close",e);if(this.sftp){this.client.end()}else{this.debugMsg("end: Called when no connection active");n(true)}})).finally((()=>{E(this,t,"end");this.removeListener("close",e);this.endCalled=false}))}}e.exports=SftpClient},9432:(e,t,n)=>{const s=n(7147);const i=n(1017);const{errorCode:o}=n(3232);function errorListener(e,t,n){const fn=s=>{if(e.endCalled||e.errorHandled){e.debugMsg(`${t} errorListener - ignoring handled error`);return}e.errorHandled=true;const i=new Error(`${t}: ${s.message}`);i.code=s.code;if(n){n(i)}else{throw i}};return fn}function globalListener(e,t){return()=>{if(e.endCalled||e.errorHandled||e.closeHandled){e.debugMsg(`Global ${t} event: Ignoring expected and handled event`)}else{e.debugMsg(`Global ${t} event: Handling unexpected event`);e.sftp=undefined}}}function endListener(e,t,n){const fn=function(){e.sftp=undefined;if(e.endCalled||e.endHandled||e.errorHandled){e.debugMsg(`${t} endListener - ignoring handled error`);return}e.endHandled=true;e.debugMsg(`${t} Unexpected end event - ignoring`)};return fn}function closeListener(e,t,n){const fn=function(){e.sftp=undefined;if(e.endCalled||e.closeHandled||e.errorHandled||e.endHandled){e.debugMsg(`${t} closeListener - ignoring handled error`);return}e.closeHandled=true;e.debugMsg(`${t} Unexpected close event raised - ignoring`)};return fn}function addTempListeners(e,t,n){const s={end:endListener(e,t,n),close:closeListener(e,t,n),error:errorListener(e,t,n)};e.on("end",s.end);e.on("close",s.close);e.on("error",s.error);e._resetEventFlags();return s}function removeTempListeners(e,t,n){try{e.removeListener("end",t.end);e.removeListener("close",t.close);e.removeListener("error",t.error)}catch(e){throw new Error(`${n}: Error removing temp listeners: ${e.message}`)}}function localExists(e){const t=s.statSync(e,{throwIfNoEntry:false});if(!t){return false}else if(t.isDirectory()){return"d"}else if(t.isFile()){return"-"}else{const t=new Error(`Bad path: ${e}: target must be a file or directory`);t.code=o.badPath;throw t}}function haveLocalAccess(e,t="r"){const n=s.constants.F_OK|t==="w"?s.constants.W_OK:s.constants.R_OK;try{s.accessSync(e,n);const t=localExists(e);return{status:true,type:t,details:"access OK",code:0}}catch(t){switch(t.errno){case-2:return{status:false,type:null,details:"not exist",code:-2};case-13:return{status:false,type:localExists(e),details:"permission denied",code:-13};case-20:return{status:false,type:null,details:"parent not a directory"};default:return{status:false,type:null,details:t.message}}}}function haveLocalCreate(e){const{status:t,details:n,type:s}=haveLocalAccess(e,"w");if(!t&&n==="permission denied"){return{status:t,details:n,type:s}}else if(!t){const t=i.dirname(e);const n=haveLocalAccess(t,"w");if(n.status&&n.type!=="d"){return{status:false,details:`${t}: not a directory`,type:null}}else if(!n.status){return{status:n.status,details:`${t}: ${n.details}`,type:null}}else{return{status:true,details:"access OK",type:null,code:0}}}return{status:t,details:n,type:s}}async function normalizeRemotePath(e,t){try{if(t.startsWith("..")){const n=await e.realPath("..");return`${n}/${t.slice(3)}`}else if(t.startsWith(".")){const n=await e.realPath(".");return`${n}/${t.slice(2)}`}return t}catch(e){throw new Error(`normalizeRemotePath: ${e.message}`)}}function haveConnection(e,t,n){if(!e.sftp){const e=new Error(`${t}: No SFTP connection available`);e.code=o.connect;if(n){n(e);return false}else{throw e}}return true}function sleep(e){return new Promise(((t,n)=>{try{if(isNaN(e)||e<0){n("Argument must be anumber >= 0")}else{setTimeout((()=>{t(true)}),e)}}catch(e){n(e)}}))}e.exports={globalListener:globalListener,errorListener:errorListener,endListener:endListener,closeListener:closeListener,addTempListeners:addTempListeners,removeTempListeners:removeTempListeners,haveLocalAccess:haveLocalAccess,haveLocalCreate:haveLocalCreate,normalizeRemotePath:normalizeRemotePath,localExists:localExists,haveConnection:haveConnection,sleep:sleep}},3204:(e,t,n)=>{"use strict";const{Duplex:s,Readable:i,Writable:o}=n(2781);const{CHANNEL_EXTENDED_DATATYPE:{STDERR:h}}=n(6832);const{bufferSlice:l}=n(9475);const u=32*1024;const g=2*1024*1024;const f=g/2;class ClientStderr extends i{constructor(e,t){super(t);this._channel=e}_read(e){if(this._channel._waitChanDrain){this._channel._waitChanDrain=false;if(this._channel.incoming.window<=f)windowAdjust(this._channel)}}}class ServerStderr extends o{constructor(e){super({highWaterMark:g});this._channel=e}_write(e,t,n){const s=this._channel;const i=s._client._protocol;const o=s.outgoing;const u=o.packetSize;const g=o.id;let f=o.window;const E=e.length;let I=0;if(o.state!=="open")return;while(E-I>0&&f>0){let t=E-I;if(t>f)t=f;if(t>u)t=u;if(I===0&&t===E)i.channelExtData(g,e,h);else i.channelExtData(g,l(e,I,I+t),h);I+=t;f-=t}o.window=f;if(E-I>0){if(f===0)s._waitWindow=true;if(I>0)s._chunkErr=l(e,I,E);else s._chunkErr=e;s._chunkcbErr=n;return}n()}}class Channel extends s{constructor(e,t,n){const s={highWaterMark:g,allowHalfOpen:!n||n&&n.allowHalfOpen!==false,emitClose:false};super(s);this.allowHalfOpen=s.allowHalfOpen;const i=!!(n&&n.server);this.server=i;this.type=t.type;this.subtype=undefined;this.incoming=t.incoming;this.outgoing=t.outgoing;this._callbacks=[];this._client=e;this._hasX11=false;this._exit={code:undefined,signal:undefined,dump:undefined,desc:undefined};this.stdin=this.stdout=this;if(i)this.stderr=new ServerStderr(this);else this.stderr=new ClientStderr(this,s);this._waitWindow=false;this._waitChanDrain=false;this._chunk=undefined;this._chunkcb=undefined;this._chunkErr=undefined;this._chunkcbErr=undefined;this.on("finish",onFinish).on("prefinish",onFinish);this.on("end",onEnd).on("close",onEnd)}_read(e){if(this._waitChanDrain){this._waitChanDrain=false;if(this.incoming.window<=f)windowAdjust(this)}}_write(e,t,n){const s=this._client._protocol;const i=this.outgoing;const o=i.packetSize;const h=i.id;let u=i.window;const g=e.length;let f=0;if(i.state!=="open")return;while(g-f>0&&u>0){let t=g-f;if(t>u)t=u;if(t>o)t=o;if(f===0&&t===g)s.channelData(h,e);else s.channelData(h,l(e,f,f+t));f+=t;u-=t}i.window=u;if(g-f>0){if(u===0)this._waitWindow=true;if(f>0)this._chunk=l(e,f,g);else this._chunk=e;this._chunkcb=n;return}n()}eof(){if(this.outgoing.state==="open"){this.outgoing.state="eof";this._client._protocol.channelEOF(this.outgoing.id)}}close(){if(this.outgoing.state==="open"||this.outgoing.state==="eof"){this.outgoing.state="closing";this._client._protocol.channelClose(this.outgoing.id)}}destroy(){this.end();this.close();return this}setWindow(e,t,n,s){if(this.server)throw new Error("Client-only method called in server mode");if(this.type==="session"&&(this.subtype==="shell"||this.subtype==="exec")&&this.writable&&this.outgoing.state==="open"){this._client._protocol.windowChange(this.outgoing.id,e,t,n,s)}}signal(e){if(this.server)throw new Error("Client-only method called in server mode");if(this.type==="session"&&this.writable&&this.outgoing.state==="open"){this._client._protocol.signal(this.outgoing.id,e)}}exit(e,t,n){if(!this.server)throw new Error("Server-only method called in client mode");if(this.type==="session"&&this.writable&&this.outgoing.state==="open"){if(typeof e==="number"){this._client._protocol.exitStatus(this.outgoing.id,e)}else{this._client._protocol.exitSignal(this.outgoing.id,e,t,n)}}}}function onFinish(){this.eof();if(this.server||!this.allowHalfOpen)this.close();this.writable=false}function onEnd(){this.readable=false}function windowAdjust(e){if(e.outgoing.state==="closed")return;const t=g-e.incoming.window;if(t<=0)return;e.incoming.window+=t;e._client._protocol.channelWindowAdjust(e.outgoing.id,t)}e.exports={Channel:Channel,MAX_WINDOW:g,PACKET_SIZE:u,windowAdjust:windowAdjust,WINDOW_THRESHOLD:f}},6119:(e,t,n)=>{"use strict";const{Socket:s}=n(1808);const{Duplex:i}=n(2781);const{resolve:o}=n(1017);const{readFile:h}=n(7147);const{execFile:l,spawn:u}=n(2081);const{isParsedKey:g,parseKey:f}=n(2218);const{makeBufferParser:E,readUInt32BE:I,writeUInt32BE:C,writeUInt32LE:B}=n(9475);function once(e){let t=false;return(...n)=>{if(t)return;t=true;e(...n)}}function concat(e,t){const n=Buffer.allocUnsafe(e.length+t.length);e.copy(n,0);t.copy(n,e.length);return n}function noop(){}const Q=Buffer.alloc(0);const p=E();class BaseAgent{getIdentities(e){e(new Error("Missing getIdentities() implementation"))}sign(e,t,n,s){if(typeof n==="function")s=n;s(new Error("Missing sign() implementation"))}}class OpenSSHAgent extends BaseAgent{constructor(e){super();this.socketPath=e}getStream(e){e=once(e);const t=new s;t.on("connect",(()=>{e(null,t)}));t.on("close",onFail).on("end",onFail).on("error",onFail);t.connect(this.socketPath);function onFail(){try{t.destroy()}catch{}e(new Error("Failed to connect to agent"))}}getIdentities(e){e=once(e);this.getStream(((t,n)=>{function onFail(t){if(n){try{n.destroy()}catch{}}if(!t)t=new Error("Failed to retrieve identities from agent");e(t)}if(t)return onFail(t);const s=new R(true);s.on("error",onFail);s.pipe(n).pipe(s);n.on("close",onFail).on("end",onFail).on("error",onFail);s.getIdentities(((t,s)=>{if(t)return onFail(t);try{n.destroy()}catch{}e(null,s)}))}))}sign(e,t,n,s){if(typeof n==="function"){s=n;n=undefined}else if(typeof n!=="object"||n===null){n=undefined}s=once(s);this.getStream(((i,o)=>{function onFail(e){if(o){try{o.destroy()}catch{}}if(!e)e=new Error("Failed to sign data with agent");s(e)}if(i)return onFail(i);const h=new R(true);h.on("error",onFail);h.pipe(o).pipe(h);o.on("close",onFail).on("end",onFail).on("error",onFail);h.sign(e,t,n,((e,t)=>{if(e)return onFail(e);try{o.destroy()}catch{}s(null,t)}))}))}}const y=(()=>{const e=10;const t=11;const s=12;const o=13;const h=14;const l=15;const g=n.ab+"pagent.exe";const f={[e]:new Error("Invalid pagent.exe arguments"),[t]:new Error("Pageant is not running"),[s]:new Error("pagent.exe could not create an mmap"),[o]:new Error("pagent.exe could not set mode for stdin"),[h]:new Error("pagent.exe could not set mode for stdout"),[l]:new Error("pagent.exe did not get expected input payload")};function destroy(e){e.buffer=null;if(e.proc){e.proc.kill();e.proc=undefined}}class PageantSocket extends i{constructor(){super();this.proc=undefined;this.buffer=null}_read(e){}_write(e,t,s){if(this.buffer===null){this.buffer=e}else{const t=Buffer.allocUnsafe(this.buffer.length+e.length);this.buffer.copy(t,0);e.copy(t,this.buffer.length);this.buffer=t}if(this.buffer.length<4)return s();const i=I(this.buffer,0);if(this.buffer.length-44+i)return s(new Error("Unexpected multiple agent requests"));this.buffer=null;let o;const h=this.proc=u(n.ab+"pagent.exe",[e.length]);h.stdout.on("data",(e=>{this.push(e)}));h.on("error",(e=>{o=e;s(o)}));h.on("close",(e=>{this.proc=undefined;if(!o){if(o=f[e])return s(o);s()}}));h.stdin.end(e)}_final(e){destroy(this);e()}_destroy(e,t){destroy(this);t()}}return class PageantAgent extends OpenSSHAgent{getStream(e){e(null,new PageantSocket)}}})();const w=(()=>{const e=/^!(\d+) s ([A-Z0-9]{8}-[A-Z0-9]{8}-[A-Z0-9]{8}-[A-Z0-9]{8})/;return class CygwinAgent extends OpenSSHAgent{getStream(t){t=once(t);let n=this.socketPath;let i=false;h(n,(function readCygsocket(o,u){if(o){if(i)return t(new Error("Invalid cygwin unix socket path"));l("cygpath",["-w",n],((e,s,o)=>{if(e||s.length===0)return t(new Error("Invalid cygwin unix socket path"));i=true;n=s.toString().replace(/[\r\n]/g,"");h(n,readCygsocket)}));return}const g=e.exec(u.toString("ascii"));if(!g)return t(new Error("Malformed cygwin unix socket file"));let f;let E=0;let C=false;const Q=[];let p;let y=Buffer.alloc(12);const w=parseInt(g[1],10);const b=g[2].replace(/-/g,"");const R=Buffer.allocUnsafe(16);for(let e=0,t=0;t<32;++e,t+=2)R[e]=parseInt(b.substring(t,t+2),16);for(let e=0;e<16;e+=4)B(R,I(R,e),e);tryConnect();function _onconnect(){E=0;f="secret";p.write(R)}function _ondata(e){E+=e.length;if(f==="secret"){if(E===16){E=0;f="creds";p.write(y)}return}if(f==="creds"){if(!C)Q.push(e);if(E===12){p.removeListener("connect",_onconnect);p.removeListener("data",_ondata);p.removeListener("error",onFail);p.removeListener("end",onFail);p.removeListener("close",onFail);if(C)return t(null,p);C=true;y=Buffer.concat(Q);B(y,process.pid,0);p.on("error",(()=>{}));p.destroy();tryConnect()}}}function onFail(){t(new Error("Problem negotiating cygwin unix socket security"))}function tryConnect(){p=new s;p.on("connect",_onconnect);p.on("data",_ondata);p.on("error",onFail);p.on("end",onFail);p.on("close",onFail);p.connect(w)}}))}}})();const b=/^[/\\][/\\]\.[/\\]pipe[/\\].+/;function createAgent(e){if(process.platform==="win32"&&!b.test(e)){return e==="pageant"?new y:new w(e)}return new OpenSSHAgent(e)}const R=(()=>{const e=11;const t=13;const n=5;const s=12;const o=14;const h=1<<1;const l=1<<2;const u=0;const E=1;function processResponses(e){let t;while(e[b].length){const n=e[b][0][y];if(n===undefined)break;e[b].shift();t=e.push(n)}return t}const B=Symbol("Inbound Request Type");const y=Symbol("Inbound Request Response");const w=Symbol("Inbound Request Context");class AgentInboundRequest{constructor(e,t){this[B]=e;this[y]=undefined;this[w]=t}hasResponded(){return this[y]!==undefined}getType(){return this[B]}getContext(){return this[w]}}function respond(e,t,n){t[y]=n;return processResponses(e)}function cleanup(e){e[k]=null;if(e[R]===u){const t=e[b];if(t&&t.length){e[b]=[];for(const e of t)e.cb(new Error("No reply from server"))}}try{e.end()}catch{}setImmediate((()=>{if(!e[U])e.emit("end");if(!e[D])e.emit("close")}))}function onClose(){this[D]=true}function onEnd(){this[U]=true}const b=Symbol("Requests");const R=Symbol("Agent Protocol Role");const k=Symbol("Agent Protocol Buffer");const _=Symbol("Agent Protocol Current Message Length");const D=Symbol("Agent Protocol Closed");const U=Symbol("Agent Protocol Ended");return class AgentProtocol extends i{constructor(e){super({autoDestroy:true,emitClose:false});this[R]=e?u:E;this[b]=[];this[k]=null;this[_]=-1;this.once("end",onEnd);this.once("close",onClose)}_read(e){}_write(i,g,E){if(this[k]===null)this[k]=i;else this[k]=concat(this[k],i);let C=this[k];let B=C.length;let Q=0;while(Q{process.nextTick((()=>{const t=this[U];this[U]=null;for(const n of t)n(...e)}))};this[k].getIdentities(once(((e,t)=>{if(e)return doCbs(e);if(!Array.isArray(t)){return doCbs(new Error("Agent implementation failed to provide keys"))}const n=[];for(let e of t){e=f(e);if(e instanceof Error){continue}n.push(e)}this[_]=n;this[D]=-1;doCbs()})))}else{this[U].push(e)}}else{process.nextTick(e)}}nextKey(){if(this[_]===null||++this[D]>=this[_].length){return false}return this[_][this[D]]}currentKey(){if(this[_]===null||this[D]>=this[_].length){return null}return this[_][this[D]]}pos(){if(this[_]===null||this[D]>=this[_].length){return-1}return this[D]}reset(){this[D]=-1}sign(...e){this[k].sign(...e)}}function isAgent(e){return e instanceof BaseAgent}e.exports={AgentContext:AgentContext,AgentProtocol:R,BaseAgent:BaseAgent,createAgent:createAgent,CygwinAgent:w,isAgent:isAgent,OpenSSHAgent:OpenSSHAgent,PageantAgent:y}},6063:(e,t,n)=>{"use strict";const{createHash:s,getHashes:i,randomFillSync:o}=n(6113);const{Socket:h}=n(1808);const{lookup:l}=n(9523);const u=n(2361);const g=i();const{COMPAT:f,CHANNEL_EXTENDED_DATATYPE:{STDERR:E},CHANNEL_OPEN_FAILURE:I,DEFAULT_CIPHER:C,DEFAULT_COMPRESSION:B,DEFAULT_KEX:Q,DEFAULT_MAC:p,DEFAULT_SERVER_HOST_KEY:y,DISCONNECT_REASON:w,DISCONNECT_REASON_BY_VALUE:b,SUPPORTED_CIPHER:R,SUPPORTED_COMPRESSION:k,SUPPORTED_KEX:_,SUPPORTED_MAC:D,SUPPORTED_SERVER_HOST_KEY:U}=n(6832);const{init:L}=n(5708);const v=n(9031);const{parseKey:T}=n(2218);const{SFTP:O}=n(2026);const{bufferCopy:P,makeBufferParser:x,makeError:Y,readUInt32BE:G,sigSSHToASN1:J,writeUInt32BE:W}=n(9475);const{AgentContext:V,createAgent:q,isAgent:j}=n(6119);const{Channel:z,MAX_WINDOW:$,PACKET_SIZE:ee,windowAdjust:te,WINDOW_THRESHOLD:Ae}=n(3204);const{ChannelManager:re,generateAlgorithmList:ne,isWritable:se,onChannelOpenFailure:ie,onCHANNEL_CLOSE:oe}=n(834);const ae=x();const ce=x();const he=/^OpenSSH_(?:(?![0-4])\d)|(?:\d{2,})/;const noop=e=>{};class Client extends u{constructor(){super();this.config={host:undefined,port:undefined,localAddress:undefined,localPort:undefined,forceIPv4:undefined,forceIPv6:undefined,keepaliveCountMax:undefined,keepaliveInterval:undefined,readyTimeout:undefined,ident:undefined,username:undefined,password:undefined,privateKey:undefined,tryKeyboard:undefined,agent:undefined,allowAgentFwd:undefined,authHandler:undefined,hostHashAlgo:undefined,hostHashCb:undefined,strictVendor:undefined,debug:undefined};this._agent=undefined;this._readyTimeout=undefined;this._chanMgr=undefined;this._callbacks=undefined;this._forwarding=undefined;this._forwardingUnix=undefined;this._acceptX11=undefined;this._agentFwdEnabled=undefined;this._remoteVer=undefined;this._protocol=undefined;this._sock=undefined;this._resetKA=undefined}connect(e){if(this._sock&&se(this._sock)){this.once("close",(()=>{this.connect(e)}));this.end();return this}this.config.host=e.hostname||e.host||"localhost";this.config.port=e.port||22;this.config.localAddress=typeof e.localAddress==="string"?e.localAddress:undefined;this.config.localPort=typeof e.localPort==="string"||typeof e.localPort==="number"?e.localPort:undefined;this.config.forceIPv4=e.forceIPv4||false;this.config.forceIPv6=e.forceIPv6||false;this.config.keepaliveCountMax=typeof e.keepaliveCountMax==="number"&&e.keepaliveCountMax>=0?e.keepaliveCountMax:3;this.config.keepaliveInterval=typeof e.keepaliveInterval==="number"&&e.keepaliveInterval>0?e.keepaliveInterval:0;this.config.readyTimeout=typeof e.readyTimeout==="number"&&e.readyTimeout>=0?e.readyTimeout:2e4;this.config.ident=typeof e.ident==="string"||Buffer.isBuffer(e.ident)?e.ident:undefined;const t={kex:undefined,serverHostKey:undefined,cs:{cipher:undefined,mac:undefined,compress:undefined,lang:[]},sc:undefined};let n=true;if(typeof e.algorithms==="object"&&e.algorithms!==null){t.kex=ne(e.algorithms.kex,Q,_);if(t.kex!==Q)n=false;t.serverHostKey=ne(e.algorithms.serverHostKey,y,U);if(t.serverHostKey!==y)n=false;t.cs.cipher=ne(e.algorithms.cipher,C,R);if(t.cs.cipher!==C)n=false;t.cs.mac=ne(e.algorithms.hmac,p,D);if(t.cs.mac!==p)n=false;t.cs.compress=ne(e.algorithms.compress,B,k);if(t.cs.compress!==B)n=false;if(!n)t.sc=t.cs}if(typeof e.username==="string")this.config.username=e.username;else if(typeof e.user==="string")this.config.username=e.user;else throw new Error("Invalid username");this.config.password=typeof e.password==="string"?e.password:undefined;this.config.privateKey=typeof e.privateKey==="string"||Buffer.isBuffer(e.privateKey)?e.privateKey:undefined;this.config.localHostname=typeof e.localHostname==="string"?e.localHostname:undefined;this.config.localUsername=typeof e.localUsername==="string"?e.localUsername:undefined;this.config.tryKeyboard=e.tryKeyboard===true;if(typeof e.agent==="string"&&e.agent.length)this.config.agent=q(e.agent);else if(j(e.agent))this.config.agent=e.agent;else this.config.agent=undefined;this.config.allowAgentFwd=e.agentForward===true&&this.config.agent!==undefined;let i=this.config.authHandler=typeof e.authHandler==="function"||Array.isArray(e.authHandler)?e.authHandler:undefined;this.config.strictVendor=typeof e.strictVendor==="boolean"?e.strictVendor:true;const o=this.config.debug=typeof e.debug==="function"?e.debug:undefined;if(e.agentForward===true&&!this.config.allowAgentFwd){throw new Error("You must set a valid agent path to allow agent forwarding")}let u=this._callbacks=[];this._chanMgr=new re(this);this._forwarding={};this._forwardingUnix={};this._acceptX11=0;this._agentFwdEnabled=false;this._agent=this.config.agent?this.config.agent:undefined;this._remoteVer=undefined;let f;if(this.config.privateKey){f=T(this.config.privateKey,e.passphrase);if(f instanceof Error)throw new Error(`Cannot parse privateKey: ${f.message}`);if(Array.isArray(f)){f=f[0]}if(f.getPrivatePEM()===null){throw new Error("privateKey value does not contain a (valid) private key")}}let I;if(typeof e.hostVerifier==="function"){const t=e.hostVerifier;let n;if(g.indexOf(e.hostHash)!==-1){n=s(e.hostHash)}I=(e,s)=>{if(n){n.update(e);e=n.digest("hex")}const i=t(e,s);if(i!==undefined)s(i)}}const P=this._sock=e.sock||new h;let x=false;let G=false;if(this._protocol)this._protocol.cleanup();const J=!o?undefined:(e,t,n)=>{o(`Debug output from server: ${JSON.stringify(n)}`)};let W;const ae=this._protocol=new v({ident:this.config.ident,offer:n?undefined:t,onWrite:e=>{if(se(P))P.write(e)},onError:e=>{if(e.level==="handshake")clearTimeout(this._readyTimeout);if(!ae._destruct)P.removeAllListeners("data");this.emit("error",e);try{P.end()}catch{}},onHeader:e=>{G=true;this._remoteVer=e.versions.software;if(e.greeting)this.emit("greeting",e.greeting)},onHandshakeComplete:e=>{this.emit("handshake",e);if(!x){x=true;ae.service("ssh-userauth")}},debug:o,hostVerifier:I,messageHandlers:{DEBUG:J,DISCONNECT:(e,t,n)=>{if(t!==w.BY_APPLICATION){if(!n){n=b[t];if(n===undefined)n=`Unexpected disconnection reason: ${t}`}const e=new Error(n);e.code=t;this.emit("error",e)}P.end()},SERVICE_ACCEPT:(e,t)=>{if(t==="ssh-userauth")tryNextAuth()},EXT_INFO:(e,t)=>{if(W===undefined){for(const e of t){if(e.name==="server-sig-algs"){W=e.algs;return}}W=null}},USERAUTH_BANNER:(e,t)=>{this.emit("banner",t)},USERAUTH_SUCCESS:e=>{resetKA();clearTimeout(this._readyTimeout);this.emit("ready")},USERAUTH_FAILURE:(e,t,n)=>{if(de.keyAlgos){const e=de.keyAlgos[0][0];if(o)o(`Client: ${de.type} (${e}) auth failed`);de.keyAlgos.shift();if(de.keyAlgos.length){const[e,t]=de.keyAlgos[0];switch(de.type){case"agent":ae.authPK(de.username,de.agentCtx.currentKey(),e);return;case"publickey":ae.authPK(de.username,de.key,e);return;case"hostbased":ae.authHostbased(de.username,de.key,de.localHostname,de.localUsername,e,((e,n)=>{const s=de.key.sign(e,t);if(s instanceof Error){s.message=`Error while signing with key: ${s.message}`;s.level="client-authentication";this.emit("error",s);return tryNextAuth()}n(s)}));return}}else{de.keyAlgos=undefined}}if(de.type==="agent"){const e=de.agentCtx.pos();o&&o(`Client: Agent key #${e+1} failed`);return tryNextAgentKey()}o&&o(`Client: ${de.type} auth failed`);Ie=n;Ce=t;tryNextAuth()},USERAUTH_PASSWD_CHANGEREQ:(e,t)=>{if(de.type==="password"){this.emit("change password",t,(e=>{ae.authPassword(this.config.username,this.config.password,e)}))}},USERAUTH_PK_OK:e=>{let t;let n;if(de.keyAlgos)[t,n]=de.keyAlgos[0];if(de.type==="agent"){const e=de.agentCtx.currentKey();ae.authPK(de.username,e,t,((t,s)=>{const i={hash:n};de.agentCtx.sign(e,t,i,((e,t)=>{if(e){e.level="agent";this.emit("error",e)}else{return s(t)}tryNextAgentKey()}))}))}else if(de.type==="publickey"){ae.authPK(de.username,de.key,t,((e,t)=>{const s=de.key.sign(e,n);if(s instanceof Error){s.message=`Error signing data with key: ${s.message}`;s.level="client-authentication";this.emit("error",s);return tryNextAuth()}t(s)}))}},USERAUTH_INFO_REQUEST:(e,t,n,s)=>{if(de.type==="keyboard-interactive"){const e=Array.isArray(s)?s.length:0;if(e===0){o&&o("Client: Sending automatic USERAUTH_INFO_RESPONSE");ae.authInfoRes();return}de.prompt(t,n,"",s,(e=>{ae.authInfoRes(e)}))}},REQUEST_SUCCESS:(e,t)=>{if(u.length)u.shift()(false,t)},REQUEST_FAILURE:e=>{if(u.length)u.shift()(true)},GLOBAL_REQUEST:(e,t,n,s)=>{switch(t){case"hostkeys-00@openssh.com":hostKeysProve(this,s,((e,t)=>{if(e)return;this.emit("hostkeys",t)}));if(n)ae.requestSuccess();break;default:if(n)ae.requestFailure()}},CHANNEL_OPEN:(e,t)=>{onCHANNEL_OPEN(this,t)},CHANNEL_OPEN_CONFIRMATION:(e,t)=>{const n=this._chanMgr.get(t.recipient);if(typeof n!=="function")return;const s=n.type==="sftp";const i=s?"session":n.type;const h={type:i,incoming:{id:t.recipient,window:$,packetSize:ee,state:"open"},outgoing:{id:t.sender,window:t.window,packetSize:t.packetSize,state:"open"}};const l=s?new O(this,h,{debug:o}):new z(this,h);this._chanMgr.update(t.recipient,l);n(undefined,l)},CHANNEL_OPEN_FAILURE:(e,t,n,s)=>{const i=this._chanMgr.get(t);if(typeof i!=="function")return;const o={reason:n,description:s};ie(this,t,o,i)},CHANNEL_DATA:(e,t,n)=>{const s=this._chanMgr.get(t);if(typeof s!=="object"||s===null)return;if(s.incoming.window===0)return;s.incoming.window-=n.length;if(s.push(n)===false){s._waitChanDrain=true;return}if(s.incoming.window<=Ae)te(s)},CHANNEL_EXTENDED_DATA:(e,t,n,s)=>{if(s!==E)return;const i=this._chanMgr.get(t);if(typeof i!=="object"||i===null)return;if(i.incoming.window===0)return;i.incoming.window-=n.length;if(!i.stderr.push(n)){i._waitChanDrain=true;return}if(i.incoming.window<=Ae)te(i)},CHANNEL_WINDOW_ADJUST:(e,t,n)=>{const s=this._chanMgr.get(t);if(typeof s!=="object"||s===null)return;s.outgoing.window+=n;if(s._waitWindow){s._waitWindow=false;if(s._chunk){s._write(s._chunk,null,s._chunkcb)}else if(s._chunkcb){s._chunkcb()}else if(s._chunkErr){s.stderr._write(s._chunkErr,null,s._chunkcbErr)}else if(s._chunkcbErr){s._chunkcbErr()}}},CHANNEL_SUCCESS:(e,t)=>{const n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;this._resetKA();if(n._callbacks.length)n._callbacks.shift()(false)},CHANNEL_FAILURE:(e,t)=>{const n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;this._resetKA();if(n._callbacks.length)n._callbacks.shift()(true)},CHANNEL_REQUEST:(e,t,n,s,i)=>{const o=this._chanMgr.get(t);if(typeof o!=="object"||o===null)return;const h=o._exit;if(h.code!==undefined)return;switch(n){case"exit-status":o.emit("exit",h.code=i);return;case"exit-signal":o.emit("exit",h.code=null,h.signal=`SIG${i.signal}`,h.dump=i.coreDumped,h.desc=i.errorMessage);return}if(s)e.channelFailure(o.outgoing.id)},CHANNEL_EOF:(e,t)=>{const n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;if(n.incoming.state!=="open")return;n.incoming.state="eof";if(n.readable)n.push(null);if(n.stderr.readable)n.stderr.push(null)},CHANNEL_CLOSE:(e,t)=>{oe(this,t,this._chanMgr.get(t))}}});P.pause();const ce=this.config.keepaliveInterval;const he=this.config.keepaliveCountMax;let le=0;let ue;const sendKA=()=>{if(++le>he){clearInterval(ue);if(P.readable){const e=new Error("Keepalive timeout");e.level="client-timeout";this.emit("error",e);P.destroy()}return}if(se(P)){u.push(resetKA);ae.ping()}else{clearInterval(ue)}};function resetKA(){if(ce>0){le=0;clearInterval(ue);if(se(P))ue=setInterval(sendKA,ce)}}this._resetKA=resetKA;const ge=(()=>{let e=false;return()=>{if(e)return;e=true;if(Ee&&!G){const e=Y("Connection lost before handshake","protocol",true);this.emit("error",e)}}})();const fe=(()=>{let e=false;return()=>{if(e)return;e=true;Ee=true;o&&o("Socket connected");this.emit("connect");L.then((()=>{ae.start();P.on("data",(e=>{try{ae.parse(e,0,e.length)}catch(e){this.emit("error",e);try{if(se(P))P.end()}catch{}}}));if(P.stderr&&typeof P.stderr.resume==="function")P.stderr.resume();P.resume()})).catch((e=>{this.emit("error",e);try{if(se(P))P.end()}catch{}}))}})();let Ee=false;P.on("connect",fe).on("timeout",(()=>{this.emit("timeout")})).on("error",(e=>{o&&o(`Socket error: ${e.message}`);clearTimeout(this._readyTimeout);e.level="client-socket";this.emit("error",e)})).on("end",(()=>{o&&o("Socket ended");ge();ae.cleanup();clearTimeout(this._readyTimeout);clearInterval(ue);this.emit("end")})).on("close",(()=>{o&&o("Socket closed");ge();ae.cleanup();clearTimeout(this._readyTimeout);clearInterval(ue);this.emit("close");const e=u;u=this._callbacks=[];const t=new Error("No response from server");for(let n=0;n{if(Qe)return;Qe=true;if(e===false){const e=new Error("All configured authentication methods failed");e.level="client-authentication";this.emit("error",e);this.end();return}if(typeof e==="string"){const t=e;if(Be.indexOf(t)===-1)return skipAuth(`Authentication method not allowed: ${t}`);const n=this.config.username;switch(t){case"password":e={type:t,username:n,password:this.config.password};break;case"publickey":e={type:t,username:n,key:f};break;case"hostbased":e={type:t,username:n,key:f,localHostname:this.config.localHostname,localUsername:this.config.localUsername};break;case"agent":e={type:t,username:n,agentCtx:new V(this._agent)};break;case"keyboard-interactive":e={type:t,username:n,prompt:(...e)=>this.emit("keyboard-interactive",...e)};break;case"none":e={type:t,username:n};break;default:return skipAuth(`Skipping unsupported authentication method: ${e}`)}}else if(typeof e!=="object"||e===null){return skipAuth(`Skipping invalid authentication attempt: ${e}`)}else{const t=e.username;if(typeof t!=="string"){return skipAuth(`Skipping invalid authentication attempt: ${e}`)}const n=e.type;switch(n){case"password":{const{password:s}=e;if(typeof s!=="string"&&!Buffer.isBuffer(s))return skipAuth("Skipping invalid password auth attempt");e={type:n,username:t,password:s};break}case"publickey":{const s=T(e.key,e.passphrase);if(s instanceof Error)return skipAuth("Skipping invalid key auth attempt");if(!s.isPrivateKey())return skipAuth("Skipping non-private key");e={type:n,username:t,key:s};break}case"hostbased":{const{localHostname:s,localUsername:i}=e;const o=T(e.key,e.passphrase);if(o instanceof Error||typeof s!=="string"||typeof i!=="string"){return skipAuth("Skipping invalid hostbased auth attempt")}if(!o.isPrivateKey())return skipAuth("Skipping non-private key");e={type:n,username:t,key:o,localHostname:s,localUsername:i};break}case"agent":{let s=e.agent;if(typeof s==="string"&&s.length){s=q(s)}else if(!j(s)){return skipAuth(`Skipping invalid agent: ${e.agent}`)}e={type:n,username:t,agentCtx:new V(s)};break}case"keyboard-interactive":{const{prompt:s}=e;if(typeof s!=="function"){return skipAuth("Skipping invalid keyboard-interactive auth attempt")}e={type:n,username:t,prompt:s};break}case"none":e={type:n,username:t};break;default:return skipAuth(`Skipping unsupported authentication method: ${e}`)}}de=e;try{const e=de.username;switch(de.type){case"password":ae.authPassword(e,de.password);break;case"publickey":{let t;de.keyAlgos=getKeyAlgos(this,de.key,W);if(de.keyAlgos){if(de.keyAlgos.length){t=de.keyAlgos[0][0]}else{return skipAuth("Skipping key authentication (no mutual hash algorithm)")}}ae.authPK(e,de.key,t);break}case"hostbased":{let t;let n;de.keyAlgos=getKeyAlgos(this,de.key,W);if(de.keyAlgos){if(de.keyAlgos.length){[t,n]=de.keyAlgos[0]}else{return skipAuth("Skipping hostbased authentication (no mutual hash algorithm)")}}ae.authHostbased(e,de.key,de.localHostname,de.localUsername,t,((e,t)=>{const s=de.key.sign(e,n);if(s instanceof Error){s.message=`Error while signing with key: ${s.message}`;s.level="client-authentication";this.emit("error",s);return tryNextAuth()}t(s)}));break}case"agent":de.agentCtx.init((e=>{if(e){e.level="agent";this.emit("error",e);return tryNextAuth()}tryNextAgentKey()}));break;case"keyboard-interactive":ae.authKeyboard(e);break;case"none":ae.authNone(e);break}}finally{Qe=false}};function skipAuth(e){o&&o(e);process.nextTick(tryNextAuth)}function tryNextAuth(){Qe=false;const e=i(Ce,Ie,doNextAuth);if(Qe||e===undefined)return;doNextAuth(e)}const tryNextAgentKey=()=>{if(de.type==="agent"){const e=de.agentCtx.nextKey();if(e===false){o&&o("Agent: No more keys left to try");o&&o("Client: agent auth failed");tryNextAuth()}else{const t=de.agentCtx.pos();let n;de.keyAlgos=getKeyAlgos(this,e,W);if(de.keyAlgos){if(de.keyAlgos.length){n=de.keyAlgos[0][0]}else{o&&o(`Agent: Skipping key #${t+1} (no mutual hash algorithm)`);tryNextAgentKey();return}}o&&o(`Agent: Trying key #${t+1}`);ae.authPK(de.username,e,n)}}};const startTimeout=()=>{if(this.config.readyTimeout>0){this._readyTimeout=setTimeout((()=>{const e=new Error("Timed out while waiting for handshake");e.level="client-timeout";this.emit("error",e);P.destroy()}),this.config.readyTimeout)}};if(!e.sock){let t=this.config.host;const n=this.config.forceIPv4;const s=this.config.forceIPv6;o&&o(`Client: Trying ${t} on port ${this.config.port} ...`);const doConnect=()=>{startTimeout();P.connect({host:t,port:this.config.port,localAddress:this.config.localAddress,localPort:this.config.localPort});P.setMaxListeners(0);P.setTimeout(typeof e.timeout==="number"?e.timeout:0)};if(!n&&!s||n&&s){doConnect()}else{l(t,n?4:6,((e,s,i)=>{if(e){const s=n?"IPv4":"IPv6";const i=new Error(`Error while looking up ${s} address for '${t}': ${e}`);clearTimeout(this._readyTimeout);i.level="client-dns";this.emit("error",i);this.emit("close");return}t=s;doConnect()}))}}else{startTimeout();if(typeof P.connecting==="boolean"){if(!P.connecting){fe()}}else{fe()}}return this}end(){if(this._sock&&se(this._sock)){this._protocol.disconnect(w.BY_APPLICATION);this._sock.end()}return this}destroy(){this._sock&&se(this._sock)&&this._sock.destroy();return this}exec(e,t,n){if(!this._sock||!se(this._sock))throw new Error("Not connected");if(typeof t==="function"){n=t;t={}}const s={allowHalfOpen:t.allowHalfOpen!==false};openChannel(this,"session",s,((s,i)=>{if(s){n(s);return}const o=[];function reqCb(e){if(e){i.close();n(e);return}if(o.length)o.shift()()}if(this.config.allowAgentFwd===true||t&&t.agentForward===true&&this._agent!==undefined){o.push((()=>reqAgentFwd(i,reqCb)))}if(typeof t==="object"&&t!==null){if(typeof t.env==="object"&&t.env!==null)reqEnv(i,t.env);if(typeof t.pty==="object"&&t.pty!==null||t.pty===true){o.push((()=>reqPty(i,t.pty,reqCb)))}if(typeof t.x11==="object"&&t.x11!==null||t.x11==="number"||t.x11===true){o.push((()=>reqX11(i,t.x11,reqCb)))}}o.push((()=>reqExec(i,e,t,n)));o.shift()()}));return this}shell(e,t,n){if(!this._sock||!se(this._sock))throw new Error("Not connected");if(typeof e==="function"){n=e;e=t=undefined}else if(typeof t==="function"){n=t;t=undefined}if(e&&(e.x11!==undefined||e.env!==undefined)){t=e;e=undefined}openChannel(this,"session",((s,i)=>{if(s){n(s);return}const o=[];function reqCb(e){if(e){i.close();n(e);return}if(o.length)o.shift()()}if(this.config.allowAgentFwd===true||t&&t.agentForward===true&&this._agent!==undefined){o.push((()=>reqAgentFwd(i,reqCb)))}if(e!==false)o.push((()=>reqPty(i,e,reqCb)));if(typeof t==="object"&&t!==null){if(typeof t.env==="object"&&t.env!==null)reqEnv(i,t.env);if(typeof t.x11==="object"&&t.x11!==null||t.x11==="number"||t.x11===true){o.push((()=>reqX11(i,t.x11,reqCb)))}}o.push((()=>reqShell(i,n)));o.shift()()}));return this}subsys(e,t){if(!this._sock||!se(this._sock))throw new Error("Not connected");openChannel(this,"session",((n,s)=>{if(n){t(n);return}reqSubsystem(s,e,((e,n)=>{if(e){t(e);return}t(undefined,n)}))}));return this}forwardIn(e,t,n){if(!this._sock||!se(this._sock))throw new Error("Not connected");const s=typeof n==="function";if(s){this._callbacks.push(((s,i)=>{if(s){n(s!==true?s:new Error(`Unable to bind to ${e}:${t}`));return}let o=t;if(t===0&&i&&i.length>=4){o=G(i,0);if(!(this._protocol._compatFlags&f.DYN_RPORT_BUG))t=o}this._forwarding[`${e}:${t}`]=o;n(undefined,o)}))}this._protocol.tcpipForward(e,t,s);return this}unforwardIn(e,t,n){if(!this._sock||!se(this._sock))throw new Error("Not connected");const s=typeof n==="function";if(s){this._callbacks.push((s=>{if(s){n(s!==true?s:new Error(`Unable to unbind from ${e}:${t}`));return}delete this._forwarding[`${e}:${t}`];n()}))}this._protocol.cancelTcpipForward(e,t,s);return this}forwardOut(e,t,n,s,i){if(!this._sock||!se(this._sock))throw new Error("Not connected");const o={srcIP:e,srcPort:t,dstIP:n,dstPort:s};if(typeof i!=="function")i=noop;openChannel(this,"direct-tcpip",o,i);return this}openssh_noMoreSessions(e){if(!this._sock||!se(this._sock))throw new Error("Not connected");const t=typeof e==="function";if(!this.config.strictVendor||this.config.strictVendor&&he.test(this._remoteVer)){if(t){this._callbacks.push((t=>{if(t){e(t!==true?t:new Error("Unable to disable future sessions"));return}e()}))}this._protocol.openssh_noMoreSessions(t);return this}if(!t)return this;process.nextTick(e,new Error("strictVendor enabled and server is not OpenSSH or compatible version"));return this}openssh_forwardInStreamLocal(e,t){if(!this._sock||!se(this._sock))throw new Error("Not connected");const n=typeof t==="function";if(!this.config.strictVendor||this.config.strictVendor&&he.test(this._remoteVer)){if(n){this._callbacks.push((n=>{if(n){t(n!==true?n:new Error(`Unable to bind to ${e}`));return}this._forwardingUnix[e]=true;t()}))}this._protocol.openssh_streamLocalForward(e,n);return this}if(!n)return this;process.nextTick(t,new Error("strictVendor enabled and server is not OpenSSH or compatible version"));return this}openssh_unforwardInStreamLocal(e,t){if(!this._sock||!se(this._sock))throw new Error("Not connected");const n=typeof t==="function";if(!this.config.strictVendor||this.config.strictVendor&&he.test(this._remoteVer)){if(n){this._callbacks.push((n=>{if(n){t(n!==true?n:new Error(`Unable to unbind from ${e}`));return}delete this._forwardingUnix[e];t()}))}this._protocol.openssh_cancelStreamLocalForward(e,n);return this}if(!n)return this;process.nextTick(t,new Error("strictVendor enabled and server is not OpenSSH or compatible version"));return this}openssh_forwardOutStreamLocal(e,t){if(!this._sock||!se(this._sock))throw new Error("Not connected");if(typeof t!=="function")t=noop;if(!this.config.strictVendor||this.config.strictVendor&&he.test(this._remoteVer)){openChannel(this,"direct-streamlocal@openssh.com",{socketPath:e},t);return this}process.nextTick(t,new Error("strictVendor enabled and server is not OpenSSH or compatible version"));return this}sftp(e){if(!this._sock||!se(this._sock))throw new Error("Not connected");openChannel(this,"sftp",((t,n)=>{if(t){e(t);return}reqSubsystem(n,"sftp",((t,s)=>{if(t){e(t);return}function removeListeners(){n.removeListener("ready",onReady);n.removeListener("error",onError);n.removeListener("exit",onExit);n.removeListener("close",onExit)}function onReady(){removeListeners();e(undefined,n)}function onError(t){removeListeners();e(t)}function onExit(t,n){removeListeners();let s;if(typeof t==="number")s=`Received exit code ${t} while establishing SFTP session`;else if(n!==undefined)s=`Received signal ${n} while establishing SFTP session`;else s="Received unexpected SFTP session termination";const i=new Error(s);i.code=t;i.signal=n;e(i)}n.on("ready",onReady).on("error",onError).on("exit",onExit).on("close",onExit);n._init()}))}));return this}setNoDelay(e){if(this._sock&&typeof this._sock.setNoDelay==="function")this._sock.setNoDelay(e);return this}}function openChannel(e,t,n,s){const i=$;const o=ee;if(typeof n==="function"){s=n;n={}}const wrapper=(e,t)=>{s(e,t)};wrapper.type=t;const h=e._chanMgr.add(wrapper);if(h===-1){s(new Error("No free channels available"));return}switch(t){case"session":case"sftp":e._protocol.session(h,i,o);break;case"direct-tcpip":e._protocol.directTcpip(h,i,o,n);break;case"direct-streamlocal@openssh.com":e._protocol.openssh_directStreamLocal(h,i,o,n);break;default:throw new Error(`Unsupported channel type: ${t}`)}}function reqX11(e,t,n){const s={single:false,protocol:"MIT-MAGIC-COOKIE-1",cookie:undefined,screen:0};if(typeof t==="function"){n=t}else if(typeof t==="object"&&t!==null){if(typeof t.single==="boolean")s.single=t.single;if(typeof t.screen==="number")s.screen=t.screen;if(typeof t.protocol==="string")s.protocol=t.protocol;if(typeof t.cookie==="string")s.cookie=t.cookie;else if(Buffer.isBuffer(t.cookie))s.cookie=t.cookie.hexSlice(0,t.cookie.length)}if(s.cookie===undefined)s.cookie=le();const i=typeof n==="function";if(e.outgoing.state!=="open"){if(i)n(new Error("Channel is not open"));return}if(i){e._callbacks.push((t=>{if(t){n(t!==true?t:new Error("Unable to request X11"));return}e._hasX11=true;++e._client._acceptX11;e.once("close",(()=>{if(e._client._acceptX11)--e._client._acceptX11}));n()}))}e._client._protocol.x11Forward(e.outgoing.id,s,i)}function reqPty(e,t,n){let s=24;let i=80;let o=640;let h=480;let l="vt100";let u=null;if(typeof t==="function"){n=t}else if(typeof t==="object"&&t!==null){if(typeof t.rows==="number")s=t.rows;if(typeof t.cols==="number")i=t.cols;if(typeof t.width==="number")o=t.width;if(typeof t.height==="number")h=t.height;if(typeof t.term==="string")l=t.term;if(typeof t.modes==="object")u=t.modes}const g=typeof n==="function";if(e.outgoing.state!=="open"){if(g)n(new Error("Channel is not open"));return}if(g){e._callbacks.push((e=>{if(e){n(e!==true?e:new Error("Unable to request a pseudo-terminal"));return}n()}))}e._client._protocol.pty(e.outgoing.id,s,i,h,o,l,u,g)}function reqAgentFwd(e,t){const n=typeof t==="function";if(e.outgoing.state!=="open"){n&&t(new Error("Channel is not open"));return}if(e._client._agentFwdEnabled){n&&t(false);return}e._client._agentFwdEnabled=true;e._callbacks.push((s=>{if(s){e._client._agentFwdEnabled=false;if(n){t(s!==true?s:new Error("Unable to request agent forwarding"))}return}if(n)t()}));e._client._protocol.openssh_agentForward(e.outgoing.id,true)}function reqShell(e,t){if(e.outgoing.state!=="open"){t(new Error("Channel is not open"));return}e._callbacks.push((n=>{if(n){t(n!==true?n:new Error("Unable to open shell"));return}e.subtype="shell";t(undefined,e)}));e._client._protocol.shell(e.outgoing.id,true)}function reqExec(e,t,n,s){if(e.outgoing.state!=="open"){s(new Error("Channel is not open"));return}e._callbacks.push((t=>{if(t){s(t!==true?t:new Error("Unable to exec"));return}e.subtype="exec";e.allowHalfOpen=n.allowHalfOpen!==false;s(undefined,e)}));e._client._protocol.exec(e.outgoing.id,t,true)}function reqEnv(e,t){if(e.outgoing.state!=="open")return;const n=Object.keys(t||{});for(let s=0;s{if(s){n(s!==true?s:new Error(`Unable to start subsystem: ${t}`));return}e.subtype="subsystem";n(undefined,e)}));e._client._protocol.subsystem(e.outgoing.id,t,true)}function onCHANNEL_OPEN(e,t){let n=-1;let s;const accept=()=>{const s={type:t.type,incoming:{id:n,window:$,packetSize:ee,state:"open"},outgoing:{id:t.sender,window:t.window,packetSize:t.packetSize,state:"open"}};const i=new z(e,s);e._chanMgr.update(n,i);e._protocol.channelOpenConfirm(t.sender,n,$,ee);return i};const reject=()=>{if(s===undefined){if(n===-1)s=I.RESOURCE_SHORTAGE;else s=I.CONNECT_FAILED}if(n!==-1)e._chanMgr.remove(n);e._protocol.channelOpenFail(t.sender,s,"")};const reserveChannel=()=>{n=e._chanMgr.add();if(n===-1){s=I.RESOURCE_SHORTAGE;if(e.config.debug){e.config.debug("Client: Automatic rejection of incoming channel open: "+"no channels available")}}return n!==-1};const i=t.data;switch(t.type){case"forwarded-tcpip":{const t=e._forwarding[`${i.destIP}:${i.destPort}`];if(t!==undefined&&reserveChannel()){if(i.destPort===0)i.destPort=t;e.emit("tcp connection",i,accept,reject);return}break}case"forwarded-streamlocal@openssh.com":if(e._forwardingUnix[i.socketPath]!==undefined&&reserveChannel()){e.emit("unix connection",i,accept,reject);return}break;case"auth-agent@openssh.com":if(e._agentFwdEnabled&&typeof e._agent.getStream==="function"&&reserveChannel()){e._agent.getStream(((e,t)=>{if(e)return reject();const n=accept();n.pipe(t).pipe(n)}));return}break;case"x11":if(e._acceptX11!==0&&reserveChannel()){e.emit("x11",i,accept,reject);return}break;default:s=I.UNKNOWN_CHANNEL_TYPE;if(e.config.debug){e.config.debug("Client: Automatic rejection of unsupported incoming channel open "+`type: ${t.type}`)}}if(s===undefined){s=I.ADMINISTRATIVELY_PROHIBITED;if(e.config.debug){e.config.debug("Client: Automatic rejection of unexpected incoming channel open for: "+t.type)}}reject()}const le=(()=>{const e=Buffer.allocUnsafe(16);return()=>{o(e,0,16);return e.hexSlice(0,16)}})();function makeSimpleAuthHandler(e){if(!Array.isArray(e))throw new Error("authList must be an array");let t=0;return(n,s,i)=>{if(t===e.length)return false;return e[t++]}}function hostKeysProve(e,t,n){if(!e._sock||!se(e._sock))return;if(typeof n!=="function")n=noop;if(!Array.isArray(t))throw new TypeError("Invalid keys argument type");const s=[];for(const e of t){const t=T(e);if(t instanceof Error)throw t;s.push(t)}if(!e.config.strictVendor||e.config.strictVendor&&he.test(e._remoteVer)){e._callbacks.push(((t,i)=>{if(t){n(t!==true?t:new Error("Server failed to prove supplied keys"));return}const o=[];let h=0;ae.init(i,0);while(ae.avail()){if(h===s.length)break;const t=s[h++];const n=t.getPublicSSH();const i=ae.readString();ce.init(i,0);const l=ce.readString(true);let u=ce.readString();let g;if(l!==t.type){if(t.type==="ssh-rsa"){switch(l){case"rsa-sha2-256":g="sha256";break;case"rsa-sha2-512":g="sha512";break;default:continue}}else{continue}}const f=e._protocol._kex.sessionID;const E=Buffer.allocUnsafe(4+29+4+f.length+4+n.length);let I=0;W(E,29,I);E.utf8Write("hostkeys-prove-00@openssh.com",I+=4,29);W(E,f.length,I+=29);P(f,E,0,f.length,I+=4);W(E,n.length,I+=f.length);P(n,E,0,n.length,I+=4);if(!(u=J(u,l)))continue;if(t.verify(E,u,g)===true)o.push(t)}ce.clear();ae.clear();n(null,o)}));e._protocol.openssh_hostKeysProve(s);return}process.nextTick(n,new Error("strictVendor enabled and server is not OpenSSH or compatible version"))}function getKeyAlgos(e,t,n){switch(t.type){case"ssh-rsa":if(e._protocol._compatFlags&f.IMPLY_RSA_SHA2_SIGALGS){if(!Array.isArray(n))n=["rsa-sha2-256","rsa-sha2-512"];else n=["rsa-sha2-256","rsa-sha2-512",...n]}if(Array.isArray(n)){if(n.indexOf("rsa-sha2-256")!==-1)return[["rsa-sha2-256","sha256"]];if(n.indexOf("rsa-sha2-512")!==-1)return[["rsa-sha2-512","sha512"]];if(n.indexOf("ssh-rsa")===-1)return[]}return[["ssh-rsa","sha1"]]}}e.exports=Client},2994:(e,t,n)=>{"use strict";const{Agent:s}=n(3685);const{Agent:i}=n(5687);const{connect:o}=n(4404);let h;for(const e of[s,i]){class SSHAgent extends e{constructor(e,t){super(t);this._connectCfg=e;this._defaultSrcIP=t&&t.srcIP||"localhost"}createConnection(t,s){const i=t&&t.localAddress||this._defaultSrcIP;const o=t&&t.localPort||0;const l=t.host;const u=t.port;if(h===undefined)h=n(6063);const g=new h;let f=false;g.on("ready",(()=>{g.forwardOut(i,o,l,u,((n,i)=>{f=true;if(n){g.end();return s(n)}i.once("close",(()=>g.end()));s(null,decorateStream(i,e,t))}))})).on("error",s).on("close",(()=>{if(!f)s(new Error("Unexpected connection close"))})).connect(this._connectCfg)}}t[e===s?"SSHTTPAgent":"SSHTTPSAgent"]=SSHAgent}function noop(){}function decorateStream(e,t,n){if(t===s){e.setKeepAlive=noop;e.setNoDelay=noop;e.setTimeout=noop;e.ref=noop;e.unref=noop;e.destroySoon=e.destroy;return e}n.socket=e;const i=o(n);const h=(()=>{let t=false;return()=>{if(t)return;t=true;if(e.isPaused())e.resume()}})();i.on("end",h).on("close",h);return i}},5869:(e,t,n)=>{"use strict";const{AgentProtocol:s,BaseAgent:i,createAgent:o,CygwinAgent:h,OpenSSHAgent:l,PageantAgent:u}=n(6119);const{SSHTTPAgent:g,SSHTTPSAgent:f}=n(2994);const{parseKey:E}=n(2218);const{flagsToString:I,OPEN_MODE:C,STATUS_CODE:B,stringToFlags:Q}=n(2026);e.exports={AgentProtocol:s,BaseAgent:i,createAgent:o,Client:n(6063),CygwinAgent:h,HTTPAgent:g,HTTPSAgent:f,OpenSSHAgent:l,PageantAgent:u,Server:n(2986),utils:{parseKey:E,...n(3823),sftp:{flagsToString:I,OPEN_MODE:C,STATUS_CODE:B,stringToFlags:Q}}}},3823:(e,t,n)=>{"use strict";const{createCipheriv:s,generateKeyPair:i,generateKeyPairSync:o,getCurves:h,randomBytes:l}=n(6113);const{Ber:u}=n(970);const g=n(5447).pbkdf;const{CIPHER_INFO:f}=n(5708);const E=16;const I=16;const C=h();const B=new Map(Object.entries(f));function makeArgs(e,t){if(typeof e!=="string")throw new TypeError("Key type must be a string");const n={type:"spki",format:"der"};const s={type:"pkcs8",format:"der"};switch(e.toLowerCase()){case"rsa":{if(typeof t!=="object"||t===null)throw new TypeError("Missing options object for RSA key");const e=t.bits;if(!Number.isInteger(e))throw new TypeError("RSA bits must be an integer");if(e<=0||e>16384)throw new RangeError("RSA bits must be non-zero and <= 16384");return["rsa",{modulusLength:e,publicKeyEncoding:n,privateKeyEncoding:s}]}case"ecdsa":{if(typeof t!=="object"||t===null)throw new TypeError("Missing options object for ECDSA key");if(!Number.isInteger(t.bits))throw new TypeError("ECDSA bits must be an integer");let e;switch(t.bits){case 256:e="prime256v1";break;case 384:e="secp384r1";break;case 521:e="secp521r1";break;default:throw new Error("ECDSA bits must be 256, 384, or 521")}if(!C.includes(e))throw new Error("Unsupported ECDSA bits value");return["ec",{namedCurve:e,publicKeyEncoding:n,privateKeyEncoding:s}]}case"ed25519":return["ed25519",{publicKeyEncoding:n,privateKeyEncoding:s}];default:throw new Error(`Unsupported key type: ${e}`)}}function parseDERs(e,t,n){switch(e){case"rsa":{let e=new u.Reader(n);e.readSequence();if(e.readInt()!==0)throw new Error("Unsupported version in RSA private key");e.readSequence();if(e.readOID()!=="1.2.840.113549.1.1.1")throw new Error("Bad RSA private OID");if(e.readByte()!==u.Null)throw new Error("Malformed RSA private key (expected null)");if(e.readByte()!==0){throw new Error("Malformed RSA private key (expected zero-length null)")}e=new u.Reader(e.readString(u.OctetString,true));e.readSequence();if(e.readInt()!==0)throw new Error("Unsupported version in RSA private key");const t=e.readString(u.Integer,true);const s=e.readString(u.Integer,true);const i=e.readString(u.Integer,true);const o=e.readString(u.Integer,true);const h=e.readString(u.Integer,true);e.readString(u.Integer,true);e.readString(u.Integer,true);const l=e.readString(u.Integer,true);const g=Buffer.from("ssh-rsa");const f=Buffer.allocUnsafe(4+g.length+4+t.length+4+s.length+4+i.length+4+l.length+4+o.length+4+h.length);let E=0;f.writeUInt32BE(g.length,E+=0);f.set(g,E+=4);f.writeUInt32BE(t.length,E+=g.length);f.set(t,E+=4);f.writeUInt32BE(s.length,E+=t.length);f.set(s,E+=4);f.writeUInt32BE(i.length,E+=s.length);f.set(i,E+=4);f.writeUInt32BE(l.length,E+=i.length);f.set(l,E+=4);f.writeUInt32BE(o.length,E+=l.length);f.set(o,E+=4);f.writeUInt32BE(h.length,E+=o.length);f.set(h,E+=4);const I=Buffer.allocUnsafe(4+g.length+4+s.length+4+t.length);E=0;I.writeUInt32BE(g.length,E+=0);I.set(g,E+=4);I.writeUInt32BE(s.length,E+=g.length);I.set(s,E+=4);I.writeUInt32BE(t.length,E+=s.length);I.set(t,E+=4);return{sshName:g.toString(),priv:f,pub:I}}case"ec":{let e=new u.Reader(t);e.readSequence();e.readSequence();if(e.readOID()!=="1.2.840.10045.2.1")throw new Error("Bad ECDSA public OID");e.readOID();let s=e.readString(u.BitString,true);{let e=0;for(;e0)s=s.slice(e)}e=new u.Reader(n);e.readSequence();if(e.readInt()!==0)throw new Error("Unsupported version in ECDSA private key");e.readSequence();if(e.readOID()!=="1.2.840.10045.2.1")throw new Error("Bad ECDSA private OID");const i=e.readOID();let o;switch(i){case"1.2.840.10045.3.1.7":o="nistp256";break;case"1.3.132.0.34":o="nistp384";break;case"1.3.132.0.35":o="nistp521";break;default:throw new Error("Unsupported curve in ECDSA private key")}e=new u.Reader(e.readString(u.OctetString,true));e.readSequence();if(e.readInt()!==1)throw new Error("Unsupported version in ECDSA private key");const h=Buffer.concat([Buffer.from([0]),e.readString(u.OctetString,true)]);const l=Buffer.from(`ecdsa-sha2-${o}`);o=Buffer.from(o);const g=Buffer.allocUnsafe(4+l.length+4+o.length+4+s.length+4+h.length);let f=0;g.writeUInt32BE(l.length,f+=0);g.set(l,f+=4);g.writeUInt32BE(o.length,f+=l.length);g.set(o,f+=4);g.writeUInt32BE(s.length,f+=o.length);g.set(s,f+=4);g.writeUInt32BE(h.length,f+=s.length);g.set(h,f+=4);const E=Buffer.allocUnsafe(4+l.length+4+o.length+4+s.length);f=0;E.writeUInt32BE(l.length,f+=0);E.set(l,f+=4);E.writeUInt32BE(o.length,f+=l.length);E.set(o,f+=4);E.writeUInt32BE(s.length,f+=o.length);E.set(s,f+=4);return{sshName:l.toString(),priv:g,pub:E}}case"ed25519":{let e=new u.Reader(t);e.readSequence();e.readSequence();if(e.readOID()!=="1.3.101.112")throw new Error("Bad ED25519 public OID");let s=e.readString(u.BitString,true);{let e=0;for(;e0)s=s.slice(e)}e=new u.Reader(n);e.readSequence();if(e.readInt()!==0)throw new Error("Unsupported version in ED25519 private key");e.readSequence();if(e.readOID()!=="1.3.101.112")throw new Error("Bad ED25519 private OID");e=new u.Reader(e.readString(u.OctetString,true));const i=e.readString(u.OctetString,true);const o=Buffer.from("ssh-ed25519");const h=Buffer.allocUnsafe(4+o.length+4+s.length+4+(i.length+s.length));let l=0;h.writeUInt32BE(o.length,l+=0);h.set(o,l+=4);h.writeUInt32BE(s.length,l+=o.length);h.set(s,l+=4);h.writeUInt32BE(i.length+s.length,l+=s.length);h.set(i,l+=4);h.set(s,l+=i.length);const g=Buffer.allocUnsafe(4+o.length+4+s.length);l=0;g.writeUInt32BE(o.length,l+=0);g.set(o,l+=4);g.writeUInt32BE(s.length,l+=o.length);g.set(s,l+=4);return{sshName:o.toString(),priv:h,pub:g}}}}function convertKeys(e,t,n,i){let o="new";let h;let u="";if(typeof i==="object"&&i!==null){if(typeof i.comment==="string"&&i.comment)u=i.comment;if(typeof i.format==="string"&&i.format)o=i.format;if(i.passphrase){let e;if(typeof i.passphrase==="string")e=Buffer.from(i.passphrase);else if(Buffer.isBuffer(i.passphrase))e=i.passphrase;else throw new Error("Invalid passphrase");if(i.cipher===undefined)throw new Error("Missing cipher name");const t=B.get(i.cipher);if(t===undefined)throw new Error("Invalid cipher name");if(o==="new"){let n=I;if(i.rounds!==undefined){if(!Number.isInteger(i.rounds))throw new TypeError("rounds must be an integer");if(i.rounds>0)n=i.rounds}const s=Buffer.allocUnsafe(t.keyLen+t.ivLen);const o=l(E);const u=g(e,e.length,o,o.length,s,s.length,n);if(u!==0)return new Error("Failed to generate information to encrypt key");const f=Buffer.allocUnsafe(4+o.length+4);{let e=0;f.writeUInt32BE(o.length,e+=0);f.set(o,e+=4);f.writeUInt32BE(n,e+=o.length)}h={cipher:t,cipherName:i.cipher,kdfName:"bcrypt",kdfOptions:f,key:s.slice(0,t.keyLen),iv:s.slice(t.keyLen)}}}}switch(o){case"new":{let i="-----BEGIN OPENSSH PRIVATE KEY-----\n";let o;const g=Buffer.from(h?h.cipherName:"none");const f=Buffer.from(h?h.kdfName:"none");const E=h?h.kdfOptions:Buffer.alloc(0);const I=h?h.cipher.blockLen:8;const C=parseDERs(e,t,n);const B=l(4);const Q=Buffer.from(u);const p=4+4+C.priv.length+4+Q.length;let y=[];for(let e=1;(p+y.length)%I;++e)y.push(e&255);y=Buffer.from(y);let w=Buffer.allocUnsafe(p+y.length);let b;{let e=0;w.set(B,e+=0);w.set(B,e+=4);w.set(C.priv,e+=4);w.writeUInt32BE(Q.length,e+=C.priv.length);w.set(Q,e+=4);w.set(y,e+=Q.length)}if(h){const e={authTagLength:h.cipher.authLen};const t=s(h.cipher.sslName,h.key,h.iv,e);t.setAutoPadding(false);w=Buffer.concat([t.update(w),t.final()]);if(h.cipher.authLen>0)b=t.getAuthTag();else b=Buffer.alloc(0);h.key.fill(0);h.iv.fill(0)}else{b=Buffer.alloc(0)}const R=Buffer.from("openssh-key-v1\0");const k=Buffer.allocUnsafe(R.length+4+g.length+4+f.length+4+E.length+4+4+C.pub.length+4+w.length+b.length);{let e=0;k.set(R,e+=0);k.writeUInt32BE(g.length,e+=R.length);k.set(g,e+=4);k.writeUInt32BE(f.length,e+=g.length);k.set(f,e+=4);k.writeUInt32BE(E.length,e+=f.length);k.set(E,e+=4);k.writeUInt32BE(1,e+=E.length);k.writeUInt32BE(C.pub.length,e+=4);k.set(C.pub,e+=4);k.writeUInt32BE(w.length,e+=C.pub.length);k.set(w,e+=4);k.set(b,e+=w.length)}{const e=k.base64Slice(0,k.length);let t=e.replace(/.{64}/g,"$&\n");if(e.length&63)t+="\n";i+=t}{const e=C.pub.base64Slice(0,C.pub.length);o=`${C.sshName} ${e}${u?` ${u}`:""}`}i+="-----END OPENSSH PRIVATE KEY-----\n";return{private:i,public:o}}default:throw new Error("Invalid output key format")}}function noop(){}e.exports={generateKeyPair:(e,t,n)=>{if(typeof t==="function"){n=t;t=undefined}if(typeof n!=="function")n=noop;const s=makeArgs(e,t);i(...s,((e,i,o)=>{if(e)return n(e);let h;try{h=convertKeys(s[0],i,o,t)}catch(e){return n(e)}n(null,h)}))},generateKeyPairSync:(e,t)=>{const n=makeArgs(e,t);const{publicKey:s,privateKey:i}=o(...n);return convertKeys(n[0],s,i,t)}}},9031:(e,t,n)=>{"use strict";const{inspect:s}=n(3837);const{bindingAvailable:i,NullCipher:o,NullDecipher:h}=n(5708);const{COMPAT_CHECKS:l,DISCONNECT_REASON:u,eddsaSupported:g,MESSAGE:f,SIGNALS:E,TERMINAL_MODE:I}=n(6832);const{DEFAULT_KEXINIT_CLIENT:C,DEFAULT_KEXINIT_SERVER:B,KexInit:Q,kexinit:p,onKEXPayload:y}=n(4126);const{parseKey:w}=n(2218);const b=n(172);const{bufferCopy:R,bufferFill:k,bufferSlice:_,convertSignature:D,sendPacket:U,writeUInt32BE:L}=n(9475);const{PacketReader:v,PacketWriter:T,ZlibPacketReader:O,ZlibPacketWriter:P}=n(6715);const x=n(6674).i8;const Y=new Map(Object.values(u).map((e=>[e,1])));const G=Buffer.from(`SSH-2.0-ssh2js${x}`);const J=Buffer.from(`${G}\r\n`);const W=8192;const V=1024;const q=Buffer.from([f.GLOBAL_REQUEST,0,0,0,21,107,101,101,112,97,108,105,118,101,64,111,112,101,110,115,115,104,46,99,111,109,1]);const j=Buffer.from([I.TTY_OP_END]);function noop(){}class Protocol{constructor(e){const t=e.onWrite;if(typeof t!=="function")throw new Error("Missing onWrite function");this._onWrite=e=>{t(e)};const n=e.onError;if(typeof n!=="function")throw new Error("Missing onError function");this._onError=e=>{n(e)};const h=e.debug;this._debug=typeof h==="function"?e=>{h(e)}:undefined;const l=e.onHeader;this._onHeader=typeof l==="function"?(...e)=>{l(...e)}:noop;const u=e.onPacket;this._onPacket=typeof u==="function"?()=>{u()}:noop;let g=e.onHandshakeComplete;if(typeof g!=="function")g=noop;let f;this._onHandshakeComplete=(...e)=>{this._debug&&this._debug("Handshake completed");if(f===undefined)f=true;else f=false;const t=this._queue;if(t){this._queue=undefined;this._debug&&this._debug(`Draining outbound queue (${t.length}) ...`);for(let e=0;e{this.start=undefined;if(I)this._onWrite(I);this._onWrite(y)}}_destruct(e){this._packetRW.read.cleanup();this._packetRW.write.cleanup();this._cipher&&this._cipher.free();this._decipher&&this._decipher.free();if(typeof e!=="string"||e.length===0)e="fatal error";this.parse=()=>{throw new Error(`Instance unusable after ${e}`)};this._onWrite=()=>{throw new Error(`Instance unusable after ${e}`)};this._destruct=undefined}cleanup(){this._destruct&&this._destruct()}parse(e,t,n){while(t{s=D(s,i);if(s===false)throw new Error("Error while converting handshake signature");const u=s.length;C=this._packetRW.write.allocStart;I=this._packetRW.write.alloc(1+4+o+4+14+4+9+1+4+h+4+l+4+4+h+4+u);I[C]=f.USERAUTH_REQUEST;L(I,o,++C);I.utf8Write(e,C+=4,o);L(I,14,C+=o);I.utf8Write("ssh-connection",C+=4,14);L(I,9,C+=14);I.utf8Write("publickey",C+=4,9);I[C+=9]=1;L(I,h,++C);I.utf8Write(n,C+=4,h);L(I,l,C+=h);I.set(t,C+=4);L(I,4+h+4+u,C+=l);L(I,h,C+=4);I.utf8Write(n,C+=4,h);L(I,u,C+=h);I.set(s,C+=4);this._authsQueue.push("publickey");this._debug&&this._debug("Outbound: Sending USERAUTH_REQUEST (publickey)");U(this,this._packetRW.write.finalize(I))}))}authHostbased(e,t,n,s,i,o){if(this._server)throw new Error("Client-only method called in server mode");t=w(t);if(t instanceof Error)throw new Error("Invalid key");const h=t.type;t=t.getPublicSSH();if(typeof i==="function"){o=i;i=undefined}if(!i)i=h;const l=Buffer.byteLength(e);const u=Buffer.byteLength(i);const g=t.length;const E=this._kex.sessionID;const I=E.length;const C=Buffer.byteLength(n);const B=Buffer.byteLength(s);const Q=Buffer.allocUnsafe(4+I+1+4+l+4+14+4+9+4+u+4+g+4+C+4+B);let p=0;L(Q,I,p);Q.set(E,p+=4);Q[p+=I]=f.USERAUTH_REQUEST;L(Q,l,++p);Q.utf8Write(e,p+=4,l);L(Q,14,p+=l);Q.utf8Write("ssh-connection",p+=4,14);L(Q,9,p+=14);Q.utf8Write("hostbased",p+=4,9);L(Q,u,p+=9);Q.utf8Write(i,p+=4,u);L(Q,g,p+=u);Q.set(t,p+=4);L(Q,C,p+=g);Q.utf8Write(n,p+=4,C);L(Q,B,p+=C);Q.utf8Write(s,p+=4,B);o(Q,(e=>{e=D(e,h);if(!e)throw new Error("Error while converting handshake signature");const t=e.length;const n=Q.length-I-4;p=this._packetRW.write.allocStart;const s=this._packetRW.write.alloc(n+4+4+u+4+t);R(Q,s,4+I,Q.length,p);L(s,4+u+4+t,p+=n);L(s,u,p+=4);s.utf8Write(i,p+=4,u);L(s,t,p+=u);s.set(e,p+=4);this._authsQueue.push("hostbased");this._debug&&this._debug("Outbound: Sending USERAUTH_REQUEST (hostbased)");U(this,this._packetRW.write.finalize(s))}))}authKeyboard(e){if(this._server)throw new Error("Client-only method called in server mode");const t=Buffer.byteLength(e);let n=this._packetRW.write.allocStart;const s=this._packetRW.write.alloc(1+4+t+4+14+4+20+4+4);s[n]=f.USERAUTH_REQUEST;L(s,t,++n);s.utf8Write(e,n+=4,t);L(s,14,n+=t);s.utf8Write("ssh-connection",n+=4,14);L(s,20,n+=14);s.utf8Write("keyboard-interactive",n+=4,20);L(s,0,n+=20);L(s,0,n+=4);this._authsQueue.push("keyboard-interactive");this._debug&&this._debug("Outbound: Sending USERAUTH_REQUEST (keyboard-interactive)");U(this,this._packetRW.write.finalize(s))}authNone(e){if(this._server)throw new Error("Client-only method called in server mode");const t=Buffer.byteLength(e);let n=this._packetRW.write.allocStart;const s=this._packetRW.write.alloc(1+4+t+4+14+4+4);s[n]=f.USERAUTH_REQUEST;L(s,t,++n);s.utf8Write(e,n+=4,t);L(s,14,n+=t);s.utf8Write("ssh-connection",n+=4,14);L(s,4,n+=14);s.utf8Write("none",n+=4,4);this._authsQueue.push("none");this._debug&&this._debug("Outbound: Sending USERAUTH_REQUEST (none)");U(this,this._packetRW.write.finalize(s))}authInfoRes(e){if(this._server)throw new Error("Client-only method called in server mode");let t=0;let n;if(e){n=new Array(e.length);for(let s=0;su&&g-u>4&&i[u]===83&&i[u+1]===83&&i[u+2]===72&&i[u+3]===45){const e=i.latin1Slice(l,g+1);const f=u===l?e:e.slice(u-l);const E=z.exec(f);if(!E)throw new Error("Invalid identification string");const I={greeting:u===l?"":e.slice(0,u-l),identRaw:f,versions:{protocol:E[1],software:E[2]},comments:E[3]};this._remoteIdentRaw=Buffer.from(f);this._debug&&this._debug(`Remote ident: ${s(f)}`);this._compatFlags=getCompatFlags(I);this._buffer=undefined;this._decipher=new h(0,y.bind(this,{firstPacket:true}));this._parse=parsePacket;this._onHeader(I);if(!this._destruct){return n}p(this);return t+1-o}if(this._server)throw new Error("Greetings from clients not permitted");if(++I>V)throw new Error("Max greeting lines exceeded");f=false;u=t+1;E=0}else if(f){throw new Error("Invalid header: expected newline")}else if(++E>=W){throw new Error("Header line too long")}g=t}if(!this._buffer)this._buffer=_(i,l);return t-o}function parsePacket(e,t,n){return this._decipher.decrypt(e,t,n)}function onPayload(e){this._onPacket();if(e.length===0){this._debug&&this._debug("Inbound: Skipping empty packet payload");return}e=this._packetRW.read.read(e);const t=e[0];if(t===f.USERAUTH_SUCCESS&&!this._server&&!this._authenticated){this._authenticated=true;if(this._kex.negotiated.cs.compress==="zlib@openssh.com")this._packetRW.write=new P(this);if(this._kex.negotiated.sc.compress==="zlib@openssh.com")this._packetRW.read=new O}const n=b[t];if(n===undefined){this._debug&&this._debug(`Inbound: Unsupported message type: ${t}`);return}return n(this,e)}function getCompatFlags(e){const t=e.versions.software;let n=0;for(const e of l){if(typeof e[0]==="string"){if(t===e[0])n|=e[1]}else if(e[0].test(t)){n|=e[1]}}return n}function modesToBytes(e){const t=Object.keys(e);const n=Buffer.allocUnsafe(5*t.length+1);let s=0;for(let i=0;i>>24;n[s++]=l>>>16;n[s++]=l>>>8;n[s++]=l}}n[s++]=I.TTY_OP_END;if(s{"use strict";const s=n(2361);const i=n(7147);const{constants:o}=i;const{Readable:h,Writable:l}=n(2781);const{inherits:u,isDate:g}=n(3837);const f=Buffer[Symbol.species];const{bufferCopy:E,bufferSlice:I,makeBufferParser:C,writeUInt32BE:B}=n(9475);const Q={SIZE:1,UIDGID:2,PERMISSIONS:4,ACMODTIME:8,EXTENDED:2147483648};const p=Buffer.alloc(28);const y={OK:0,EOF:1,NO_SUCH_FILE:2,PERMISSION_DENIED:3,FAILURE:4,BAD_MESSAGE:5,NO_CONNECTION:6,CONNECTION_LOST:7,OP_UNSUPPORTED:8};const w=new Map(Object.values(y).map((e=>[e,1])));const b={[y.OK]:"No error",[y.EOF]:"End of file",[y.NO_SUCH_FILE]:"No such file or directory",[y.PERMISSION_DENIED]:"Permission denied",[y.FAILURE]:"Failure",[y.BAD_MESSAGE]:"Bad message",[y.NO_CONNECTION]:"No connection",[y.CONNECTION_LOST]:"Connection lost",[y.OP_UNSUPPORTED]:"Operation unsupported"};const R={INIT:1,OPEN:3,CLOSE:4,READ:5,WRITE:6,LSTAT:7,FSTAT:8,SETSTAT:9,FSETSTAT:10,OPENDIR:11,READDIR:12,REMOVE:13,MKDIR:14,RMDIR:15,REALPATH:16,STAT:17,RENAME:18,READLINK:19,SYMLINK:20,EXTENDED:200};const k={VERSION:2,STATUS:101,HANDLE:102,DATA:103,NAME:104,ATTRS:105,EXTENDED:201};const _={READ:1,WRITE:2,APPEND:4,CREAT:8,TRUNC:16,EXCL:32};const D=2*1024;const U=2**32-1;const L=Buffer.from([0,0,0,5,R.INIT,0,0,0,3]);const v=Buffer.from([0,0,0,5,k.VERSION,0,0,0,3]);const T=/^SSH-2.0-(?:OpenSSH|dropbear)/;const O=256*1024;const P=C();const x={readable:false,writable:false,push:e=>{},once:()=>{},on:()=>{},emit:()=>{},end:()=>{}};function noop(){}class SFTP extends s{constructor(e,t,n){super();if(typeof n!=="object"||!n)n={};const s=e._protocol._remoteIdentRaw;this.server=!!n.server;this._debug=typeof n.debug==="function"?n.debug:undefined;this._isOpenSSH=s&&T.test(s);this._version=-1;this._extensions={};this._biOpt=n.biOpt;this._pktLenBytes=0;this._pktLen=0;this._pktPos=0;this._pktType=0;this._pktData=undefined;this._writeReqid=-1;this._requests={};this._maxInPktLen=O;this._maxOutPktLen=34e3;this._maxReadLen=(this._isOpenSSH?O:34e3)-D;this._maxWriteLen=(this._isOpenSSH?O:34e3)-D;this.maxOpenHandles=undefined;this._client=e;this._protocol=e._protocol;this._callbacks=[];this._hasX11=false;this._exit={code:undefined,signal:undefined,dump:undefined,desc:undefined};this._waitWindow=false;this._chunkcb=undefined;this._buffer=[];this.type=t.type;this.subtype=undefined;this.incoming=t.incoming;this.outgoing=t.outgoing;this.stderr=x;this.readable=true}push(e){if(e===null){cleanupRequests(this);if(!this.readable)return;this.readable=false;this.emit("end");return}let t=0;while(tthis._maxInPktLen){const e=this._maxInPktLen;return doFatalSFTPError(this,`Packet length ${this._pktLen} exceeds max length of ${e}`)}if(t>=e.length)return}if(this._pktPos=t.length)throw new Error("offset is out of bounds");if(n+s>t.length)throw new Error("length extends beyond buffer");if(i===null)throw new Error("null position currently unsupported");read_(this,e,t,n,s,i,o)}readData(e,t,n,s,i,o){this.read(e,t,n,s,i,o)}write(e,t,n,s,i,o){if(this.server)throw new Error("Client-only method called in server mode");if(!Buffer.isBuffer(e))throw new Error("handle is not a Buffer");if(!Buffer.isBuffer(t))throw new Error("buffer is not a Buffer");if(n>t.length)throw new Error("offset is out of bounds");if(n+s>t.length)throw new Error("length extends beyond buffer");if(i===null)throw new Error("null position currently unsupported");if(!s){o&&process.nextTick(o,undefined,0);return}const h=this._maxWriteLen;const l=Math.max(s-h,0);const u=i;if(l)s=h;const g=e.length;let f=9;const I=Buffer.allocUnsafe(4+1+4+4+g+8+4+s);B(I,I.length-4,0);I[4]=R.WRITE;const C=this._writeReqid=this._writeReqid+1&U;B(I,C,5);B(I,g,f);I.set(e,f+=4);f+=g;for(let e=7;e>=0;--e){I[f+e]=i&255;i/=256}B(I,s,f+=8);E(t,I,n,n+s,f+=4);this._requests[C]={cb:i=>{if(i){if(typeof o==="function")o(i)}else if(l){this.write(e,t,n+s,l,u+s,o)}else if(typeof o==="function"){o(undefined,n+s)}}};const Q=sendOrBuffer(this,I);if(this._debug){const e=Q?"Sent":"Buffered";this._debug(`SFTP: Outbound: ${e} WRITE (id:${C})`)}}writeData(e,t,n,s,i,o){this.write(e,t,n,s,i,o)}fastGet(e,t,n,s){if(this.server)throw new Error("Client-only method called in server mode");fastXfer(this,i,e,t,n,s)}fastPut(e,t,n,s){if(this.server)throw new Error("Client-only method called in server mode");fastXfer(i,this,e,t,n,s)}readFile(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");let s;if(typeof n==="function"){s=n}else if(typeof t==="function"){s=t;t=undefined}if(typeof t==="string")t={encoding:t,flag:"r"};else if(!t)t={encoding:null,flag:"r"};else if(typeof t!=="object")throw new TypeError("Bad arguments");const i=t.encoding;if(i&&!Buffer.isEncoding(i))throw new Error(`Unknown encoding: ${i}`);let o;let h;let l;let u=0;let g;let f=0;const E=t.flag||"r";const read=()=>{if(o===0){h=Buffer.allocUnsafe(8192);this.read(g,h,0,8192,f,afterRead)}else{this.read(g,h,u,o-u,f,afterRead)}};const afterRead=(e,t)=>{let n;if(e){n=e.code===y.EOF;if(!n){return this.close(g,(()=>s&&s(e)))}}else{n=false}if(n||o===0&&t===0)return close();f+=t;u+=t;if(o!==0){if(u===o)close();else read()}else{l.push(I(h,0,t));read()}};afterRead._wantEOFError=true;const close=()=>{this.close(g,(e=>{if(o===0){h=Buffer.concat(l,u)}else if(u{if(t)return s&&s(t);g=n;const tryStat=(t,n)=>{if(t){this.stat(e,((e,n)=>{if(e){return this.close(g,(()=>{s&&s(t)}))}tryStat(null,n)}));return}o=n.size||0;if(o===0){l=[];return read()}h=Buffer.allocUnsafe(o);read()};this.fstat(g,tryStat)}))}writeFile(e,t,n,s){if(this.server)throw new Error("Client-only method called in server mode");let i;if(typeof s==="function"){i=s}else if(typeof n==="function"){i=n;n=undefined}if(typeof n==="string")n={encoding:n,mode:438,flag:"w"};else if(!n)n={encoding:"utf8",mode:438,flag:"w"};else if(typeof n!=="object")throw new TypeError("Bad arguments");if(n.encoding&&!Buffer.isEncoding(n.encoding))throw new Error(`Unknown encoding: ${n.encoding}`);const o=n.flag||"w";this.open(e,o,n.mode,((s,h)=>{if(s){i&&i(s)}else{const s=Buffer.isBuffer(t)?t:Buffer.from(""+t,n.encoding||"utf8");const l=/a/.test(o)?null:0;if(l===null){const tryStat=(t,n)=>{if(t){this.stat(e,((e,n)=>{if(e){return this.close(h,(()=>{i&&i(t)}))}tryStat(null,n)}));return}writeAll(this,h,s,0,s.length,n.size,i)};this.fstat(h,tryStat);return}writeAll(this,h,s,0,s.length,l,i)}}))}appendFile(e,t,n,s){if(this.server)throw new Error("Client-only method called in server mode");let i;if(typeof s==="function"){i=s}else if(typeof n==="function"){i=n;n=undefined}if(typeof n==="string")n={encoding:n,mode:438,flag:"a"};else if(!n)n={encoding:"utf8",mode:438,flag:"a"};else if(typeof n!=="object")throw new TypeError("Bad arguments");if(!n.flag)n=Object.assign({flag:"a"},n);this.writeFile(e,t,n,i)}exists(e,t){if(this.server)throw new Error("Client-only method called in server mode");this.stat(e,(e=>{t&&t(e?false:true)}))}unlink(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.REMOVE;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:t};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} REMOVE`)}rename(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");const s=Buffer.byteLength(e);const i=Buffer.byteLength(t);let o=9;const h=Buffer.allocUnsafe(4+1+4+4+s+4+i);B(h,h.length-4,0);h[4]=R.RENAME;const l=this._writeReqid=this._writeReqid+1&U;B(h,l,5);B(h,s,o);h.utf8Write(e,o+=4,s);B(h,i,o+=s);h.utf8Write(t,o+=4,i);this._requests[l]={cb:n};const u=sendOrBuffer(this,h);this._debug&&this._debug(`SFTP: Outbound: ${u?"Buffered":"Sending"} RENAME`)}mkdir(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");let s=0;let i=0;if(typeof t==="function"){n=t;t=undefined}if(typeof t==="object"&&t!==null){t=attrsToBytes(t);s=t.flags;i=t.nb}const o=Buffer.byteLength(e);let h=9;const l=Buffer.allocUnsafe(4+1+4+4+o+4+i);B(l,l.length-4,0);l[4]=R.MKDIR;const u=this._writeReqid=this._writeReqid+1&U;B(l,u,5);B(l,o,h);l.utf8Write(e,h+=4,o);B(l,s,h+=o);if(i){h+=4;if(i===p.length)l.set(p,h);else E(p,l,0,i,h);h+=i}this._requests[u]={cb:n};const g=sendOrBuffer(this,l);this._debug&&this._debug(`SFTP: Outbound: ${g?"Buffered":"Sending"} MKDIR`)}rmdir(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.RMDIR;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:t};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} RMDIR`)}readdir(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");if(typeof t==="function"){n=t;t={}}if(typeof t!=="object"||t===null)t={};const s=t&&t.full?false:true;if(!Buffer.isBuffer(e)&&typeof e!=="string")throw new Error("missing directory handle or path");if(typeof e==="string"){const s=[];let i=0;const reread=(e,o)=>{if(e)return n(e);this.readdir(o,t,((e,t)=>{const h=e&&e.code===y.EOF;if(e&&!h)return this.close(o,(()=>n(e)));if(h){return this.close(o,(e=>{if(e)return n(e);n(undefined,s)}))}for(let e=0;e{if(typeof n!=="function")return;if(e)return n(e);for(let e=t.length-1;e>=0;--e){if(t[e].filename==="."||t[e].filename==="..")t.splice(e,1)}n(undefined,t)}:n};const u=sendOrBuffer(this,h);this._debug&&this._debug(`SFTP: Outbound: ${u?"Buffered":"Sending"} READDIR`)}fstat(e,t){if(this.server)throw new Error("Client-only method called in server mode");if(!Buffer.isBuffer(e))throw new Error("handle is not a Buffer");const n=e.length;let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.FSTAT;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.set(e,s+=4);this._requests[o]={cb:t};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} FSTAT`)}stat(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.STAT;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:t};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} STAT`)}lstat(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.LSTAT;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:t};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} LSTAT`)}opendir(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.OPENDIR;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:t};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} OPENDIR`)}setstat(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");let s=0;let i=0;if(typeof t==="object"&&t!==null){t=attrsToBytes(t);s=t.flags;i=t.nb}else if(typeof t==="function"){n=t}const o=Buffer.byteLength(e);let h=9;const l=Buffer.allocUnsafe(4+1+4+4+o+4+i);B(l,l.length-4,0);l[4]=R.SETSTAT;const u=this._writeReqid=this._writeReqid+1&U;B(l,u,5);B(l,o,h);l.utf8Write(e,h+=4,o);B(l,s,h+=o);if(i){h+=4;if(i===p.length)l.set(p,h);else E(p,l,0,i,h);h+=i}this._requests[u]={cb:n};const g=sendOrBuffer(this,l);this._debug&&this._debug(`SFTP: Outbound: ${g?"Buffered":"Sending"} SETSTAT`)}fsetstat(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");if(!Buffer.isBuffer(e))throw new Error("handle is not a Buffer");let s=0;let i=0;if(typeof t==="object"&&t!==null){t=attrsToBytes(t);s=t.flags;i=t.nb}else if(typeof t==="function"){n=t}const o=e.length;let h=9;const l=Buffer.allocUnsafe(4+1+4+4+o+4+i);B(l,l.length-4,0);l[4]=R.FSETSTAT;const u=this._writeReqid=this._writeReqid+1&U;B(l,u,5);B(l,o,h);l.set(e,h+=4);B(l,s,h+=o);if(i){h+=4;if(i===p.length)l.set(p,h);else E(p,l,0,i,h);h+=i}this._requests[u]={cb:n};const g=sendOrBuffer(this,l);this._debug&&this._debug(`SFTP: Outbound: ${g?"Buffered":"Sending"} FSETSTAT`)}futimes(e,t,n,s){return this.fsetstat(e,{atime:toUnixTimestamp(t),mtime:toUnixTimestamp(n)},s)}utimes(e,t,n,s){return this.setstat(e,{atime:toUnixTimestamp(t),mtime:toUnixTimestamp(n)},s)}fchown(e,t,n,s){return this.fsetstat(e,{uid:t,gid:n},s)}chown(e,t,n,s){return this.setstat(e,{uid:t,gid:n},s)}fchmod(e,t,n){return this.fsetstat(e,{mode:t},n)}chmod(e,t,n){return this.setstat(e,{mode:t},n)}readlink(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.READLINK;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:(e,n)=>{if(typeof t!=="function")return;if(e)return t(e);if(!n||!n.length)return t(new Error("Response missing link info"));t(undefined,n[0].filename)}};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} READLINK`)}symlink(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");const s=Buffer.byteLength(t);const i=Buffer.byteLength(e);let o=9;const h=Buffer.allocUnsafe(4+1+4+4+s+4+i);B(h,h.length-4,0);h[4]=R.SYMLINK;const l=this._writeReqid=this._writeReqid+1&U;B(h,l,5);if(this._isOpenSSH){B(h,i,o);h.utf8Write(e,o+=4,i);B(h,s,o+=i);h.utf8Write(t,o+=4,s)}else{B(h,s,o);h.utf8Write(t,o+=4,s);B(h,i,o+=s);h.utf8Write(e,o+=4,i)}this._requests[l]={cb:n};const u=sendOrBuffer(this,h);this._debug&&this._debug(`SFTP: Outbound: ${u?"Buffered":"Sending"} SYMLINK`)}realpath(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=Buffer.byteLength(e);let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=R.REALPATH;const o=this._writeReqid=this._writeReqid+1&U;B(i,o,5);B(i,n,s);i.utf8Write(e,s+=4,n);this._requests[o]={cb:(e,n)=>{if(typeof t!=="function")return;if(e)return t(e);if(!n||!n.length)return t(new Error("Response missing path info"));t(undefined,n[0].filename)}};const h=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} REALPATH`)}ext_openssh_rename(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");const s=this._extensions["posix-rename@openssh.com"];if(!s||s!=="1")throw new Error("Server does not support this extended request");const i=Buffer.byteLength(e);const o=Buffer.byteLength(t);let h=9;const l=Buffer.allocUnsafe(4+1+4+4+24+4+i+4+o);B(l,l.length-4,0);l[4]=R.EXTENDED;const u=this._writeReqid=this._writeReqid+1&U;B(l,u,5);B(l,24,h);l.utf8Write("posix-rename@openssh.com",h+=4,24);B(l,i,h+=24);l.utf8Write(e,h+=4,i);B(l,o,h+=i);l.utf8Write(t,h+=4,o);this._requests[u]={cb:n};const g=sendOrBuffer(this,l);if(this._debug){const e=g?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} posix-rename@openssh.com`)}}ext_openssh_statvfs(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=this._extensions["statvfs@openssh.com"];if(!n||n!=="2")throw new Error("Server does not support this extended request");const s=Buffer.byteLength(e);let i=9;const o=Buffer.allocUnsafe(4+1+4+4+19+4+s);B(o,o.length-4,0);o[4]=R.EXTENDED;const h=this._writeReqid=this._writeReqid+1&U;B(o,h,5);B(o,19,i);o.utf8Write("statvfs@openssh.com",i+=4,19);B(o,s,i+=19);o.utf8Write(e,i+=4,s);this._requests[h]={extended:"statvfs@openssh.com",cb:t};const l=sendOrBuffer(this,o);if(this._debug){const e=l?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} statvfs@openssh.com`)}}ext_openssh_fstatvfs(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=this._extensions["fstatvfs@openssh.com"];if(!n||n!=="2")throw new Error("Server does not support this extended request");if(!Buffer.isBuffer(e))throw new Error("handle is not a Buffer");const s=e.length;let i=9;const o=Buffer.allocUnsafe(4+1+4+4+20+4+s);B(o,o.length-4,0);o[4]=R.EXTENDED;const h=this._writeReqid=this._writeReqid+1&U;B(o,h,5);B(o,20,i);o.utf8Write("fstatvfs@openssh.com",i+=4,20);B(o,s,i+=20);o.set(e,i+=4);this._requests[h]={extended:"fstatvfs@openssh.com",cb:t};const l=sendOrBuffer(this,o);if(this._debug){const e=l?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} fstatvfs@openssh.com`)}}ext_openssh_hardlink(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");const s=this._extensions["hardlink@openssh.com"];if(s!=="1")throw new Error("Server does not support this extended request");const i=Buffer.byteLength(e);const o=Buffer.byteLength(t);let h=9;const l=Buffer.allocUnsafe(4+1+4+4+20+4+i+4+o);B(l,l.length-4,0);l[4]=R.EXTENDED;const u=this._writeReqid=this._writeReqid+1&U;B(l,u,5);B(l,20,h);l.utf8Write("hardlink@openssh.com",h+=4,20);B(l,i,h+=20);l.utf8Write(e,h+=4,i);B(l,o,h+=i);l.utf8Write(t,h+=4,o);this._requests[u]={cb:n};const g=sendOrBuffer(this,l);if(this._debug){const e=g?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} hardlink@openssh.com`)}}ext_openssh_fsync(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=this._extensions["fsync@openssh.com"];if(n!=="1")throw new Error("Server does not support this extended request");if(!Buffer.isBuffer(e))throw new Error("handle is not a Buffer");const s=e.length;let i=9;const o=Buffer.allocUnsafe(4+1+4+4+17+4+s);B(o,o.length-4,0);o[4]=R.EXTENDED;const h=this._writeReqid=this._writeReqid+1&U;B(o,h,5);B(o,17,i);o.utf8Write("fsync@openssh.com",i+=4,17);B(o,s,i+=17);o.set(e,i+=4);this._requests[h]={cb:t};const l=sendOrBuffer(this,o);this._debug&&this._debug(`SFTP: Outbound: ${l?"Buffered":"Sending"} fsync@openssh.com`)}ext_openssh_lsetstat(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");const s=this._extensions["lsetstat@openssh.com"];if(s!=="1")throw new Error("Server does not support this extended request");let i=0;let o=0;if(typeof t==="object"&&t!==null){t=attrsToBytes(t);i=t.flags;o=t.nb}else if(typeof t==="function"){n=t}const h=Buffer.byteLength(e);let l=9;const u=Buffer.allocUnsafe(4+1+4+4+20+4+h+4+o);B(u,u.length-4,0);u[4]=R.EXTENDED;const g=this._writeReqid=this._writeReqid+1&U;B(u,g,5);B(u,20,l);u.utf8Write("lsetstat@openssh.com",l+=4,20);B(u,h,l+=20);u.utf8Write(e,l+=4,h);B(u,i,l+=h);if(o){l+=4;if(o===p.length)u.set(p,l);else E(p,u,0,o,l);l+=o}this._requests[g]={cb:n};const f=sendOrBuffer(this,u);if(this._debug){const e=f?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} lsetstat@openssh.com`)}}ext_openssh_expandPath(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=this._extensions["expand-path@openssh.com"];if(n!=="1")throw new Error("Server does not support this extended request");const s=Buffer.byteLength(e);let i=9;const o=Buffer.allocUnsafe(4+1+4+4+23+4+s);B(o,o.length-4,0);o[4]=R.EXTENDED;const h=this._writeReqid=this._writeReqid+1&U;B(o,h,5);B(o,23,i);o.utf8Write("expand-path@openssh.com",i+=4,23);B(o,s,i+=20);o.utf8Write(e,i+=4,s);this._requests[h]={cb:(e,n)=>{if(typeof t!=="function")return;if(e)return t(e);if(!n||!n.length)return t(new Error("Response missing expanded path"));t(undefined,n[0].filename)}};const l=sendOrBuffer(this,o);if(this._debug){const e=l?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} expand-path@openssh.com`)}}ext_copy_data(e,t,n,s,i,o){if(this.server)throw new Error("Client-only method called in server mode");const h=this._extensions["copy-data"];if(h!=="1")throw new Error("Server does not support this extended request");if(!Buffer.isBuffer(e))throw new Error("Source handle is not a Buffer");if(!Buffer.isBuffer(s))throw new Error("Destination handle is not a Buffer");let l=0;const u=Buffer.allocUnsafe(4+1+4+4+9+4+e.length+8+8+4+s.length+8);B(u,u.length-4,l);l+=4;u[l]=R.EXTENDED;++l;const g=this._writeReqid=this._writeReqid+1&U;B(u,g,l);l+=4;B(u,9,l);l+=4;u.utf8Write("copy-data",l,9);l+=9;B(u,e.length,l);l+=4;u.set(e,l);l+=e.length;for(let e=7;e>=0;--e){u[l+e]=t&255;t/=256}l+=8;for(let e=7;e>=0;--e){u[l+e]=n&255;n/=256}l+=8;B(u,s.length,l);l+=4;u.set(s,l);l+=s.length;for(let e=7;e>=0;--e){u[l+e]=i&255;i/=256}this._requests[g]={cb:o};const f=sendOrBuffer(this,u);if(this._debug){const e=f?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} copy-data`)}}ext_home_dir(e,t){if(this.server)throw new Error("Client-only method called in server mode");const n=this._extensions["home-directory"];if(n!=="1")throw new Error("Server does not support this extended request");if(typeof e!=="string")throw new TypeError("username is not a string");let s=0;const i=Buffer.byteLength(e);const o=Buffer.allocUnsafe(4+1+4+4+14+4+i);B(o,o.length-4,s);s+=4;o[s]=R.EXTENDED;++s;const h=this._writeReqid=this._writeReqid+1&U;B(o,h,s);s+=4;B(o,14,s);s+=4;o.utf8Write("home-directory",s,14);s+=14;B(o,i,s);s+=4;o.utf8Write(e,s,i);s+=i;this._requests[h]={cb:(e,n)=>{if(typeof t!=="function")return;if(e)return t(e);if(!n||!n.length)return t(new Error("Response missing home directory"));t(undefined,n[0].filename)}};const l=sendOrBuffer(this,o);if(this._debug){const e=l?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} home-directory`)}}ext_users_groups(e,t,n){if(this.server)throw new Error("Client-only method called in server mode");const s=this._extensions["users-groups-by-id@openssh.com"];if(s!=="1")throw new Error("Server does not support this extended request");if(!Array.isArray(e))throw new TypeError("uids is not an array");for(const t of e){if(!Number.isInteger(t)||t<0||t>2**32-1)throw new Error("uid values must all be 32-bit unsigned integers")}if(!Array.isArray(t))throw new TypeError("gids is not an array");for(const e of t){if(!Number.isInteger(e)||e<0||e>2**32-1)throw new Error("gid values must all be 32-bit unsigned integers")}let i=0;const o=Buffer.allocUnsafe(4+1+4+4+30+4+4*e.length+4+4*t.length);B(o,o.length-4,i);i+=4;o[i]=R.EXTENDED;++i;const h=this._writeReqid=this._writeReqid+1&U;B(o,h,i);i+=4;B(o,30,i);i+=4;o.utf8Write("users-groups-by-id@openssh.com",i,30);i+=30;B(o,4*e.length,i);i+=4;for(const t of e){B(o,t,i);i+=4}B(o,4*t.length,i);i+=4;for(const e of t){B(o,e,i);i+=4}this._requests[h]={extended:"users-groups-by-id@openssh.com",cb:n};const l=sendOrBuffer(this,o);if(this._debug){const e=l?"Buffered":"Sending";this._debug(`SFTP: Outbound: ${e} users-groups-by-id@openssh.com`)}}handle(e,t){if(!this.server)throw new Error("Server-only method called in client mode");if(!Buffer.isBuffer(t))throw new Error("handle is not a Buffer");const n=t.length;if(n>256)throw new Error("handle too large (> 256 bytes)");let s=9;const i=Buffer.allocUnsafe(4+1+4+4+n);B(i,i.length-4,0);i[4]=k.HANDLE;B(i,e,5);B(i,n,s);if(n)i.set(t,s+=4);const o=sendOrBuffer(this,i);this._debug&&this._debug(`SFTP: Outbound: ${o?"Buffered":"Sending"} HANDLE`)}status(e,t,n){if(!this.server)throw new Error("Server-only method called in client mode");if(!w.has(t))throw new Error(`Bad status code: ${t}`);n||(n="");const s=Buffer.byteLength(n);let i=9;const o=Buffer.allocUnsafe(4+1+4+4+4+s+4);B(o,o.length-4,0);o[4]=k.STATUS;B(o,e,5);B(o,t,i);B(o,s,i+=4);i+=4;if(s){o.utf8Write(n,i,s);i+=s}B(o,0,i);const h=sendOrBuffer(this,o);this._debug&&this._debug(`SFTP: Outbound: ${h?"Buffered":"Sending"} STATUS`)}data(e,t,n){if(!this.server)throw new Error("Server-only method called in client mode");const s=Buffer.isBuffer(t);if(!s&&typeof t!=="string")throw new Error("data is not a Buffer or string");let i;if(!s&&!n){n=undefined;i=true}const o=s?t.length:Buffer.byteLength(t,n);let h=9;const l=Buffer.allocUnsafe(4+1+4+4+o);B(l,l.length-4,0);l[4]=k.DATA;B(l,e,5);B(l,o,h);if(o){if(s)l.set(t,h+=4);else if(i)l.utf8Write(t,h+=4,o);else l.write(t,h+=4,o,n)}const u=sendOrBuffer(this,l);this._debug&&this._debug(`SFTP: Outbound: ${u?"Buffered":"Sending"} DATA`)}name(e,t){if(!this.server)throw new Error("Server-only method called in client mode");if(!Array.isArray(t)){if(typeof t!=="object"||t===null)throw new Error("names is not an object or array");t=[t]}const n=t.length;let s=0;let i;const o=[];for(let e=0;e=0;--e){Q[E+e]=C&255;C/=256}B(Q,i,E+=8);if(typeof h!=="function")h=noop;const w=l||{nb:0,position:o,off:s,origOff:s,len:undefined,overflow:undefined,cb:(s,i,o)=>{const l=w.len;const u=w.overflow;if(s){if(h._wantEOFError||s.code!==y.EOF)return h(s)}else if(o>l){return h(new Error("Received more data than requested"))}else if(o===l&&u){w.nb+=o;w.position+=o;w.off+=o;read_(e,t,n,w.off,u,w.position,h,w);return}o=o||0;if(w.origOff===0&&n.length===w.nb)i=n;else i=I(n,w.origOff,w.origOff+w.nb+o);h(undefined,w.nb+o,i,w.position)},buffer:undefined};w.len=i;w.overflow=g;w.buffer=I(n,s,s+i);e._requests[p]=w;const b=sendOrBuffer(e,Q);e._debug&&e._debug(`SFTP: Outbound: ${b?"Buffered":"Sending"} READ`)}function fastXfer(e,t,n,s,o,h){let l=64;let u=32768;let g;let f;let E;if(typeof o==="function"){h=o}else if(typeof o==="object"&&o!==null){if(typeof o.concurrency==="number"&&o.concurrency>0&&!isNaN(o.concurrency)){l=o.concurrency}if(typeof o.chunkSize==="number"&&o.chunkSize>0&&!isNaN(o.chunkSize)){u=o.chunkSize}if(typeof o.fileSize==="number"&&o.fileSize>0&&!isNaN(o.fileSize)){E=o.fileSize}if(typeof o.step==="function")g=o.step;if(typeof o.mode==="string"||typeof o.mode==="number")f=modeNum(o.mode)}let I;let C=0;let B=0;let Q=false;let p;let y;let w;let b=u*l;function onerror(n){if(Q)return;Q=true;let s=0;let o;if(p||y){o=()=>{if(--s===0)h(n)};if(p&&(e===i||e.outgoing.state==="open"))++s;if(y&&(t===i||t.outgoing.state==="open"))++s;if(p&&(e===i||e.outgoing.state==="open"))e.close(p,o);if(y&&(t===i||t.outgoing.state==="open"))t.close(y,o)}else{h(n)}}e.open(n,"r",((o,Q)=>{if(o)return onerror(o);p=Q;if(E===undefined)e.fstat(p,tryStat);else tryStat(null,{size:E});function tryStat(o,E){if(o){if(e!==i){e.stat(n,((e,t)=>{if(e)return onerror(o);tryStat(null,t)}));return}return onerror(o)}I=E.size;t.open(s,"w",((n,i)=>{if(n)return onerror(n);y=i;if(I<=0)return onerror();while(b>I){if(l===1){b=I;break}b-=u;--l}w=tryCreateBuffer(b);if(w instanceof Error)return onerror(w);if(f!==undefined){t.fchmod(y,f,(function tryAgain(e){if(e){t.chmod(s,f,(e=>tryAgain()));return}startReads()}))}else{startReads()}function onread(n,s,i,o,l,f){if(n)return onerror(n);l=l||0;t.write(y,w,l,s,o,writeCb);function writeCb(n){if(n)return onerror(n);B+=s;g&&g(B,s,I);if(s{y=undefined;if(t)return onerror(t);e.close(p,(e=>{p=undefined;if(e)return onerror(e);h()}))}));return}if(C>=I)return;const i=C+u>I?I-C:u;singleRead(l,C,i);C+=i}}function makeCb(e,t,n){return(s,i,o)=>{onread(s,i,o,t,e,n)}}function singleRead(t,n,s){e.read(p,w,t,s,n,makeCb(t,n,s))}function startReads(){let e=0;let t=0;while(CI?I-C:u;singleRead(t,C,n);t+=n;C+=n;++e}}}))}}))}function writeAll(e,t,n,s,i,o,h){const l=typeof h==="function"?h:undefined;e.write(t,n,s,i,o,((h,u)=>{if(h){return e.close(t,(()=>{l&&l(h)}))}if(u===i){e.close(t,l)}else{s+=u;i-=u;o+=u;writeAll(e,t,n,s,i,o,l)}}))}class Stats{constructor(e){this.mode=e&&e.mode;this.uid=e&&e.uid;this.gid=e&&e.gid;this.size=e&&e.size;this.atime=e&&e.atime;this.mtime=e&&e.mtime;this.extended=e&&e.extended}isDirectory(){return(this.mode&o.S_IFMT)===o.S_IFDIR}isFile(){return(this.mode&o.S_IFMT)===o.S_IFREG}isBlockDevice(){return(this.mode&o.S_IFMT)===o.S_IFBLK}isCharacterDevice(){return(this.mode&o.S_IFMT)===o.S_IFCHR}isSymbolicLink(){return(this.mode&o.S_IFMT)===o.S_IFLNK}isFIFO(){return(this.mode&o.S_IFMT)===o.S_IFIFO}isSocket(){return(this.mode&o.S_IFMT)===o.S_IFSOCK}}function attrsToBytes(e){let t=0;let n=0;if(typeof e==="object"&&e!==null){if(typeof e.size==="number"){t|=Q.SIZE;const s=e.size;p[n++]=s/72057594037927940;p[n++]=s/281474976710656;p[n++]=s/1099511627776;p[n++]=s/4294967296;p[n++]=s/16777216;p[n++]=s/65536;p[n++]=s/256;p[n++]=s}if(typeof e.uid==="number"&&typeof e.gid==="number"){t|=Q.UIDGID;const s=e.uid;const i=e.gid;p[n++]=s>>>24;p[n++]=s>>>16;p[n++]=s>>>8;p[n++]=s;p[n++]=i>>>24;p[n++]=i>>>16;p[n++]=i>>>8;p[n++]=i}if(typeof e.mode==="number"||typeof e.mode==="string"){const s=modeNum(e.mode);t|=Q.PERMISSIONS;p[n++]=s>>>24;p[n++]=s>>>16;p[n++]=s>>>8;p[n++]=s}if((typeof e.atime==="number"||g(e.atime))&&(typeof e.mtime==="number"||g(e.mtime))){const s=toUnixTimestamp(e.atime);const i=toUnixTimestamp(e.mtime);t|=Q.ACMODTIME;p[n++]=s>>>24;p[n++]=s>>>16;p[n++]=s>>>8;p[n++]=s;p[n++]=i>>>24;p[n++]=i>>>16;p[n++]=i>>>8;p[n++]=i}}return{flags:t,nb:n}}function toUnixTimestamp(e){if(typeof e==="number"&&e===e)return e;if(g(e))return parseInt(e.getTime()/1e3,10);throw new Error(`Cannot parse time: ${e}`)}function modeNum(e){if(typeof e==="number"&&e===e)return e;if(typeof e==="string")return modeNum(parseInt(e,8));throw new Error(`Cannot parse mode: ${e}`)}const Y={r:_.READ,"r+":_.READ|_.WRITE,w:_.TRUNC|_.CREAT|_.WRITE,wx:_.TRUNC|_.CREAT|_.WRITE|_.EXCL,xw:_.TRUNC|_.CREAT|_.WRITE|_.EXCL,"w+":_.TRUNC|_.CREAT|_.READ|_.WRITE,"wx+":_.TRUNC|_.CREAT|_.READ|_.WRITE|_.EXCL,"xw+":_.TRUNC|_.CREAT|_.READ|_.WRITE|_.EXCL,a:_.APPEND|_.CREAT|_.WRITE,ax:_.APPEND|_.CREAT|_.WRITE|_.EXCL,xa:_.APPEND|_.CREAT|_.WRITE|_.EXCL,"a+":_.APPEND|_.CREAT|_.READ|_.WRITE,"ax+":_.APPEND|_.CREAT|_.READ|_.WRITE|_.EXCL,"xa+":_.APPEND|_.CREAT|_.READ|_.WRITE|_.EXCL};function stringToFlags(e){const t=Y[e];return t!==undefined?t:null}const G=(()=>{const e=Object.keys(Y);return t=>{for(let n=0;n0&&n.window>0){const s=Math.min(i-o,n.window,n.packetSize);n.window-=s;if(n.window===0){e._waitWindow=true;e._chunkcb=drainBuffer}if(o===0&&s===i){e._protocol.channelData(e.outgoing.id,t)}else{e._protocol.channelData(e.outgoing.id,I(t,o,o+s))}o+=s}if(i-o>0){if(o>0)s=I(t,o,i);else s=t}return s}function drainBuffer(){this._chunkcb=undefined;const e=this._buffer;let t=0;while(t0)this._buffer=e.slice(t);return}++t}if(t>0)this._buffer=[]}function doFatalSFTPError(e,t,n){const s=new Error(t);s.level="sftp-protocol";if(!n&&e._debug)e._debug(`SFTP: Inbound: ${t}`);e.emit("error",s);e.destroy();cleanupRequests(e);return false}function cleanupRequests(e){const t=Object.keys(e._requests);if(t.length===0)return;const n=e._requests;e._requests={};const s=new Error("No response from server");for(let e=0;e{if(e._version!==-1)return doFatalSFTPError(e,"Duplicate VERSION packet");const n={};P.init(t,1);let s=P.readUInt32BE();while(P.avail()){const e=P.readString(true);const t=P.readString(true);if(t===undefined){s=undefined;break}n[e]=t}P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed VERSION packet");if(e._debug){const t=Object.keys(n);if(t.length){e._debug(`SFTP: Inbound: Received VERSION (v${s}, exts:${t})`)}else{e._debug(`SFTP: Inbound: Received VERSION (v${s})`)}}e._version=s;e._extensions=n;if(n["limits@openssh.com"]==="1"){return requestLimits(e,((t,n)=>{if(!t){if(n.maxPktLen>0)e._maxOutPktLen=n.maxPktLen;if(n.maxReadLen>0)e._maxReadLen=n.maxReadLen;if(n.maxWriteLen>0)e._maxWriteLen=n.maxWriteLen;e.maxOpenHandles=n.maxOpenHandles>0?n.maxOpenHandles:Infinity}e.emit("ready")}))}e.emit("ready")},[k.STATUS]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readUInt32BE();const i=P.readString(true);P.clear();if(e._debug){const t=JSON.stringify(i);e._debug(`SFTP: Inbound: Received STATUS (id:${n}, ${s}, ${t})`)}const o=e._requests[n];delete e._requests[n];if(o&&typeof o.cb==="function"){if(s===y.OK){o.cb();return}const e=new Error(i||b[s]||"Unknown status");e.code=s;o.cb(e)}},[k.HANDLE]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();P.clear();if(s===undefined){if(n!==undefined)delete e._requests[n];return doFatalSFTPError(e,"Malformed HANDLE packet")}e._debug&&e._debug(`SFTP: Inbound: Received HANDLE (id:${n})`);const i=e._requests[n];delete e._requests[n];if(i&&typeof i.cb==="function")i.cb(undefined,s)},[k.DATA]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();let s;if(n!==undefined){s=e._requests[n];delete e._requests[n]}if(s&&typeof s.cb==="function"){if(s.buffer){const t=P.readString(s.buffer);P.clear();if(t!==undefined){e._debug&&e._debug(`SFTP: Inbound: Received DATA (id:${n}, ${t})`);s.cb(undefined,s.buffer,t);return}}else{const t=P.readString();P.clear();if(t!==undefined){e._debug&&e._debug(`SFTP: Inbound: Received DATA (id:${n}, ${t.length})`);s.cb(undefined,t);return}}}else{const t=P.skipString();P.clear();if(t!==undefined){e._debug&&e._debug(`SFTP: Inbound: Received DATA (id:${n}, ${t})`);return}}return doFatalSFTPError(e,"Malformed DATA packet")},[k.NAME]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();let s;if(n!==undefined){s=e._requests[n];delete e._requests[n]}const i=P.readUInt32BE();if(i!==undefined){let t=[];for(let n=0;n{P.init(t,1);const n=P.readUInt32BE();let s;if(n!==undefined){s=e._requests[n];delete e._requests[n]}const i=readAttrs(e._biOpt);P.clear();if(i!==undefined){e._debug&&e._debug(`SFTP: Inbound: Received ATTRS (id:${n})`);if(s&&typeof s.cb==="function")s.cb(undefined,i);return}return doFatalSFTPError(e,"Malformed ATTRS packet")},[k.EXTENDED]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();if(n!==undefined){const t=e._requests[n];if(t){delete e._requests[n];switch(t.extended){case"statvfs@openssh.com":case"fstatvfs@openssh.com":{const s=e._biOpt;const i={f_bsize:P.readUInt64BE(s),f_frsize:P.readUInt64BE(s),f_blocks:P.readUInt64BE(s),f_bfree:P.readUInt64BE(s),f_bavail:P.readUInt64BE(s),f_files:P.readUInt64BE(s),f_ffree:P.readUInt64BE(s),f_favail:P.readUInt64BE(s),f_sid:P.readUInt64BE(s),f_flag:P.readUInt64BE(s),f_namemax:P.readUInt64BE(s)};if(i.f_namemax===undefined)break;if(e._debug){e._debug("SFTP: Inbound: Received EXTENDED_REPLY "+`(id:${n}, ${t.extended})`)}P.clear();if(typeof t.cb==="function")t.cb(undefined,i);return}case"limits@openssh.com":{const s={maxPktLen:P.readUInt64BE(),maxReadLen:P.readUInt64BE(),maxWriteLen:P.readUInt64BE(),maxOpenHandles:P.readUInt64BE()};if(s.maxOpenHandles===undefined)break;if(e._debug){e._debug("SFTP: Inbound: Received EXTENDED_REPLY "+`(id:${n}, ${t.extended})`)}P.clear();if(typeof t.cb==="function")t.cb(undefined,s);return}case"users-groups-by-id@openssh.com":{const s=P.readUInt32BE();if(s===undefined)break;const i=new Array(s);for(let e=0;e0&&h[h.length-1]===undefined){break}if(e._debug){e._debug("SFTP: Inbound: Received EXTENDED_REPLY "+`(id:${n}, ${t.extended})`)}P.clear();if(typeof t.cb==="function")t.cb(undefined,i,h);return}default:e._debug&&e._debug(`SFTP: Inbound: Received EXTENDED_REPLY (id:${n}, ???)`);P.clear();if(typeof t.cb==="function")t.cb();return}}else{e._debug&&e._debug(`SFTP: Inbound: Received EXTENDED_REPLY (id:${n}, ???)`);P.clear();return}}P.clear();return doFatalSFTPError(e,"Malformed EXTENDED_REPLY packet")}};const W={[R.INIT]:(e,t)=>{if(e._version!==-1)return doFatalSFTPError(e,"Duplicate INIT packet");const n={};P.init(t,1);let s=P.readUInt32BE();while(P.avail()){const e=P.readString(true);const t=P.readString(true);if(t===undefined){s=undefined;break}n[e]=t}P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed INIT packet");if(e._debug){const t=Object.keys(n);if(t.length){e._debug(`SFTP: Inbound: Received INIT (v${s}, exts:${t})`)}else{e._debug(`SFTP: Inbound: Received INIT (v${s})`)}}sendOrBuffer(e,v);e._version=s;e._extensions=n;e.emit("ready")},[R.OPEN]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);const i=P.readUInt32BE();const o=readAttrs(e._biOpt);P.clear();if(o===undefined)return doFatalSFTPError(e,"Malformed OPEN packet");e._debug&&e._debug(`SFTP: Inbound: Received OPEN (id:${n})`);if(!e.emit("OPEN",n,s,i,o)){e.status(n,y.OP_UNSUPPORTED)}},[R.CLOSE]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();P.clear();if(s===undefined||s.length>256)return doFatalSFTPError(e,"Malformed CLOSE packet");e._debug&&e._debug(`SFTP: Inbound: Received CLOSE (id:${n})`);if(!e.emit("CLOSE",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.READ]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();const i=P.readUInt64BE(e._biOpt);const o=P.readUInt32BE();P.clear();if(o===undefined||s.length>256)return doFatalSFTPError(e,"Malformed READ packet");e._debug&&e._debug(`SFTP: Inbound: Received READ (id:${n})`);if(!e.emit("READ",n,s,i,o)){e.status(n,y.OP_UNSUPPORTED)}},[R.WRITE]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();const i=P.readUInt64BE(e._biOpt);const o=P.readString();P.clear();if(o===undefined||s.length>256)return doFatalSFTPError(e,"Malformed WRITE packet");e._debug&&e._debug(`SFTP: Inbound: Received WRITE (id:${n})`);if(!e.emit("WRITE",n,s,i,o)){e.status(n,y.OP_UNSUPPORTED)}},[R.LSTAT]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed LSTAT packet");e._debug&&e._debug(`SFTP: Inbound: Received LSTAT (id:${n})`);if(!e.emit("LSTAT",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.FSTAT]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();P.clear();if(s===undefined||s.length>256)return doFatalSFTPError(e,"Malformed FSTAT packet");e._debug&&e._debug(`SFTP: Inbound: Received FSTAT (id:${n})`);if(!e.emit("FSTAT",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.SETSTAT]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);const i=readAttrs(e._biOpt);P.clear();if(i===undefined)return doFatalSFTPError(e,"Malformed SETSTAT packet");e._debug&&e._debug(`SFTP: Inbound: Received SETSTAT (id:${n})`);if(!e.emit("SETSTAT",n,s,i)){e.status(n,y.OP_UNSUPPORTED)}},[R.FSETSTAT]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();const i=readAttrs(e._biOpt);P.clear();if(i===undefined||s.length>256)return doFatalSFTPError(e,"Malformed FSETSTAT packet");e._debug&&e._debug(`SFTP: Inbound: Received FSETSTAT (id:${n})`);if(!e.emit("FSETSTAT",n,s,i)){e.status(n,y.OP_UNSUPPORTED)}},[R.OPENDIR]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed OPENDIR packet");e._debug&&e._debug(`SFTP: Inbound: Received OPENDIR (id:${n})`);if(!e.emit("OPENDIR",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.READDIR]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString();P.clear();if(s===undefined||s.length>256)return doFatalSFTPError(e,"Malformed READDIR packet");e._debug&&e._debug(`SFTP: Inbound: Received READDIR (id:${n})`);if(!e.emit("READDIR",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.REMOVE]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed REMOVE packet");e._debug&&e._debug(`SFTP: Inbound: Received REMOVE (id:${n})`);if(!e.emit("REMOVE",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.MKDIR]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);const i=readAttrs(e._biOpt);P.clear();if(i===undefined)return doFatalSFTPError(e,"Malformed MKDIR packet");e._debug&&e._debug(`SFTP: Inbound: Received MKDIR (id:${n})`);if(!e.emit("MKDIR",n,s,i)){e.status(n,y.OP_UNSUPPORTED)}},[R.RMDIR]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed RMDIR packet");e._debug&&e._debug(`SFTP: Inbound: Received RMDIR (id:${n})`);if(!e.emit("RMDIR",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.REALPATH]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed REALPATH packet");e._debug&&e._debug(`SFTP: Inbound: Received REALPATH (id:${n})`);if(!e.emit("REALPATH",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.STAT]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed STAT packet");e._debug&&e._debug(`SFTP: Inbound: Received STAT (id:${n})`);if(!e.emit("STAT",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.RENAME]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);const i=P.readString(true);P.clear();if(i===undefined)return doFatalSFTPError(e,"Malformed RENAME packet");e._debug&&e._debug(`SFTP: Inbound: Received RENAME (id:${n})`);if(!e.emit("RENAME",n,s,i)){e.status(n,y.OP_UNSUPPORTED)}},[R.READLINK]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);P.clear();if(s===undefined)return doFatalSFTPError(e,"Malformed READLINK packet");e._debug&&e._debug(`SFTP: Inbound: Received READLINK (id:${n})`);if(!e.emit("READLINK",n,s)){e.status(n,y.OP_UNSUPPORTED)}},[R.SYMLINK]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);const i=P.readString(true);P.clear();if(i===undefined)return doFatalSFTPError(e,"Malformed SYMLINK packet");e._debug&&e._debug(`SFTP: Inbound: Received SYMLINK (id:${n})`);let o;if(e._isOpenSSH){o=e.emit("SYMLINK",n,i,s)}else{o=e.emit("SYMLINK",n,s,i)}if(!o){e.status(n,y.OP_UNSUPPORTED)}},[R.EXTENDED]:(e,t)=>{P.init(t,1);const n=P.readUInt32BE();const s=P.readString(true);if(s===undefined){P.clear();return doFatalSFTPError(e,"Malformed EXTENDED packet")}let i;if(P.avail())i=P.readRaw();P.clear();e._debug&&e._debug(`SFTP: Inbound: Received EXTENDED (id:${n})`);if(!e.emit("EXTENDED",n,s,i)){e.status(n,y.OP_UNSUPPORTED)}}};const{ERR_INVALID_ARG_TYPE:V,ERR_OUT_OF_RANGE:q,validateNumber:j}=n(7609);const z=128;let $;const ee=[];function allocNewPool(e){if(ee.length>0)$=ee.pop();else $=Buffer.allocUnsafe(e);$.used=0}function checkPosition(e,t){if(!Number.isSafeInteger(e)){j(e,t);if(!Number.isInteger(e))throw new q(t,"an integer",e);throw new q(t,">= 0 and <= 2 ** 53 - 1",e)}if(e<0)throw new q(t,">= 0 and <= 2 ** 53 - 1",e)}function roundUpToMultipleOf8(e){return e+7&~7}function ReadStream(e,t,n){if(n===undefined)n={};else if(typeof n==="string")n={encoding:n};else if(n===null||typeof n!=="object")throw new TypeError('"options" argument must be a string or an object');else n=Object.create(n);if(n.highWaterMark===undefined)n.highWaterMark=64*1024;n.emitClose=false;n.autoDestroy=false;h.call(this,n);this.path=t;this.flags=n.flags===undefined?"r":n.flags;this.mode=n.mode===undefined?438:n.mode;this.start=n.start;this.end=n.end;this.autoClose=n.autoClose===undefined?true:n.autoClose;this.pos=0;this.bytesRead=0;this.isClosed=false;this.handle=n.handle===undefined?null:n.handle;this.sftp=e;this._opening=false;if(this.start!==undefined){checkPosition(this.start,"start");this.pos=this.start}if(this.end===undefined){this.end=Infinity}else if(this.end!==Infinity){checkPosition(this.end,"end");if(this.start!==undefined&&this.start>this.end){throw new q("start",`<= "end" (here: ${this.end})`,this.start)}}this.on("end",(function(){if(this.autoClose)this.destroy()}));if(!Buffer.isBuffer(this.handle))this.open()}u(ReadStream,h);ReadStream.prototype.open=function(){if(this._opening)return;this._opening=true;this.sftp.open(this.path,this.flags,this.mode,((e,t)=>{this._opening=false;if(e){this.emit("error",e);if(this.autoClose)this.destroy();return}this.handle=t;this.emit("open",t);this.emit("ready");this.read()}))};ReadStream.prototype._read=function(e){if(!Buffer.isBuffer(this.handle))return this.once("open",(()=>this._read(e)));if(this.destroyed)return;if(!$||$.length-$.used{if(e){this.emit("error",e);if(this.autoClose)this.destroy();return}let o=null;if(s+n===t.used&&t===$){t.used=roundUpToMultipleOf8(t.used+i-n)}else{const e=s+n&~7;const o=roundUpToMultipleOf8(s+i);if(e-o>=z)ee.push(t.slice(o,e))}if(i>0){this.bytesRead+=i;o=t.slice(s,s+i)}this.pos+=i;this.push(o)}));$.used=roundUpToMultipleOf8($.used+n)};ReadStream.prototype._destroy=function(e,t){if(this._opening&&!Buffer.isBuffer(this.handle)){this.once("open",closeStream.bind(null,this,t,e));return}closeStream(this,t,e);this.handle=null;this._opening=false};function closeStream(e,t,n){if(!e.handle)return onclose();e.sftp.close(e.handle,onclose);function onclose(s){s=s||n;t(s);e.isClosed=true;if(!s)e.emit("close")}}ReadStream.prototype.close=function(e){this.destroy(null,e)};Object.defineProperty(ReadStream.prototype,"pending",{get(){return this.handle===null},configurable:true});function WriteStream(e,t,n){if(n===undefined)n={};else if(typeof n==="string")n={encoding:n};else if(n===null||typeof n!=="object")throw new TypeError('"options" argument must be a string or an object');else n=Object.create(n);n.emitClose=false;n.autoDestroy=false;l.call(this,n);this.path=t;this.flags=n.flags===undefined?"w":n.flags;this.mode=n.mode===undefined?438:n.mode;this.start=n.start;this.autoClose=n.autoClose===undefined?true:n.autoClose;this.pos=0;this.bytesWritten=0;this.isClosed=false;this.handle=n.handle===undefined?null:n.handle;this.sftp=e;this._opening=false;if(this.start!==undefined){checkPosition(this.start,"start");this.pos=this.start}if(n.encoding)this.setDefaultEncoding(n.encoding);this.on("finish",(function(){if(this._writableState.finalCalled)return;if(this.autoClose)this.destroy()}));if(!Buffer.isBuffer(this.handle))this.open()}u(WriteStream,l);WriteStream.prototype._final=function(e){if(this.autoClose)this.destroy();e()};WriteStream.prototype.open=function(){if(this._opening)return;this._opening=true;this.sftp.open(this.path,this.flags,this.mode,((e,t)=>{this._opening=false;if(e){this.emit("error",e);if(this.autoClose)this.destroy();return}this.handle=t;const tryAgain=e=>{if(e){this.sftp.chmod(this.path,this.mode,(e=>tryAgain()));return}if(this.flags[0]==="a"){const tryStat=(e,n)=>{if(e){this.sftp.stat(this.path,((t,n)=>{if(t){this.destroy();this.emit("error",e);return}tryStat(null,n)}));return}this.pos=n.size;this.emit("open",t);this.emit("ready")};this.sftp.fstat(t,tryStat);return}this.emit("open",t);this.emit("ready")};this.sftp.fchmod(t,this.mode,tryAgain)}))};WriteStream.prototype._write=function(e,t,n){if(!Buffer.isBuffer(e)){const t=new V("data","Buffer",e);return this.emit("error",t)}if(!Buffer.isBuffer(this.handle)){return this.once("open",(function(){this._write(e,t,n)}))}this.sftp.write(this.handle,e,0,e.length,this.pos,((e,t)=>{if(e){if(this.autoClose)this.destroy();return n(e)}this.bytesWritten+=t;n()}));this.pos+=e.length};WriteStream.prototype._writev=function(e,t){if(!Buffer.isBuffer(this.handle)){return this.once("open",(function(){this._writev(e,t)}))}const n=this.sftp;const s=this.handle;let i=e.length;const onwrite=(e,n)=>{if(e){this.destroy();return t(e)}this.bytesWritten+=n;if(--i===0)t()};for(let t=0;t{"use strict";const s=n(6113);let i;try{i=n(7295)()}catch{}const{bindingAvailable:o,CIPHER_INFO:h,MAC_INFO:l}=n(5708);const u=(()=>{if(typeof s.sign==="function"&&typeof s.verify==="function"){const e="-----BEGIN PRIVATE KEY-----\r\nMC4CAQAwBQYDK2VwBCIEIHKj+sVa9WcD"+"/q2DJUJaf43Kptc8xYuUQA4bOFj9vC8T\r\n-----END PRIVATE KEY-----";const t=Buffer.from("a");let n;let i;try{n=s.sign(null,t,e);i=s.verify(null,t,e,n)}catch{}return Buffer.isBuffer(n)&&n.length===64&&i===true}return false})();const g=typeof s.diffieHellman==="function"&&typeof s.generateKeyPairSync==="function"&&typeof s.createPublicKey==="function";const f=["ecdh-sha2-nistp256","ecdh-sha2-nistp384","ecdh-sha2-nistp521","diffie-hellman-group-exchange-sha256","diffie-hellman-group14-sha256","diffie-hellman-group15-sha512","diffie-hellman-group16-sha512","diffie-hellman-group17-sha512","diffie-hellman-group18-sha512"];if(g){f.unshift("curve25519-sha256");f.unshift("curve25519-sha256@libssh.org")}const E=f.concat(["diffie-hellman-group-exchange-sha1","diffie-hellman-group14-sha1","diffie-hellman-group1-sha1"]);const I=["ecdsa-sha2-nistp256","ecdsa-sha2-nistp384","ecdsa-sha2-nistp521","rsa-sha2-512","rsa-sha2-256","ssh-rsa"];if(u)I.unshift("ssh-ed25519");const C=I.concat(["ssh-dss"]);const B=(()=>{const e=s.getCiphers();return t=>e.includes(h[t].sslName)})();let Q=["aes128-gcm@openssh.com","aes256-gcm@openssh.com","aes128-ctr","aes192-ctr","aes256-ctr"];if(i&&i.flags&&!i.flags.aes){if(o)Q.unshift("chacha20-poly1305@openssh.com");else Q.push("chacha20-poly1305@openssh.com")}else if(o&&i&&i.arch==="x86"){Q.splice(4,0,"chacha20-poly1305@openssh.com")}else{Q.push("chacha20-poly1305@openssh.com")}Q=Q.filter(B);const p=Q.concat(["aes256-cbc","aes192-cbc","aes128-cbc","blowfish-cbc","3des-cbc","aes128-gcm","aes256-gcm","arcfour256","arcfour128","cast128-cbc","arcfour"].filter(B));const y=(()=>{const e=s.getHashes();return t=>e.includes(l[t].sslName)})();const w=["hmac-sha2-256-etm@openssh.com","hmac-sha2-512-etm@openssh.com","hmac-sha1-etm@openssh.com","hmac-sha2-256","hmac-sha2-512","hmac-sha1"].filter(y);const b=w.concat(["hmac-md5","hmac-sha2-256-96","hmac-sha2-512-96","hmac-ripemd160","hmac-sha1-96","hmac-md5-96"].filter(y));const R=["none","zlib@openssh.com","zlib"];const k=R.concat([]);const _={BAD_DHGEX:1<<0,OLD_EXIT:1<<1,DYN_RPORT_BUG:1<<2,BUG_DHGEX_LARGE:1<<3,IMPLY_RSA_SHA2_SIGALGS:1<<4};e.exports={MESSAGE:{DISCONNECT:1,IGNORE:2,UNIMPLEMENTED:3,DEBUG:4,SERVICE_REQUEST:5,SERVICE_ACCEPT:6,EXT_INFO:7,KEXINIT:20,NEWKEYS:21,KEXDH_INIT:30,KEXDH_REPLY:31,KEXDH_GEX_GROUP:31,KEXDH_GEX_INIT:32,KEXDH_GEX_REPLY:33,KEXDH_GEX_REQUEST:34,KEXECDH_INIT:30,KEXECDH_REPLY:31,USERAUTH_REQUEST:50,USERAUTH_FAILURE:51,USERAUTH_SUCCESS:52,USERAUTH_BANNER:53,USERAUTH_PASSWD_CHANGEREQ:60,USERAUTH_PK_OK:60,USERAUTH_INFO_REQUEST:60,USERAUTH_INFO_RESPONSE:61,GLOBAL_REQUEST:80,REQUEST_SUCCESS:81,REQUEST_FAILURE:82,CHANNEL_OPEN:90,CHANNEL_OPEN_CONFIRMATION:91,CHANNEL_OPEN_FAILURE:92,CHANNEL_WINDOW_ADJUST:93,CHANNEL_DATA:94,CHANNEL_EXTENDED_DATA:95,CHANNEL_EOF:96,CHANNEL_CLOSE:97,CHANNEL_REQUEST:98,CHANNEL_SUCCESS:99,CHANNEL_FAILURE:100},DISCONNECT_REASON:{HOST_NOT_ALLOWED_TO_CONNECT:1,PROTOCOL_ERROR:2,KEY_EXCHANGE_FAILED:3,RESERVED:4,MAC_ERROR:5,COMPRESSION_ERROR:6,SERVICE_NOT_AVAILABLE:7,PROTOCOL_VERSION_NOT_SUPPORTED:8,HOST_KEY_NOT_VERIFIABLE:9,CONNECTION_LOST:10,BY_APPLICATION:11,TOO_MANY_CONNECTIONS:12,AUTH_CANCELED_BY_USER:13,NO_MORE_AUTH_METHODS_AVAILABLE:14,ILLEGAL_USER_NAME:15},DISCONNECT_REASON_STR:undefined,CHANNEL_OPEN_FAILURE:{ADMINISTRATIVELY_PROHIBITED:1,CONNECT_FAILED:2,UNKNOWN_CHANNEL_TYPE:3,RESOURCE_SHORTAGE:4},TERMINAL_MODE:{TTY_OP_END:0,VINTR:1,VQUIT:2,VERASE:3,VKILL:4,VEOF:5,VEOL:6,VEOL2:7,VSTART:8,VSTOP:9,VSUSP:10,VDSUSP:11,VREPRINT:12,VWERASE:13,VLNEXT:14,VFLUSH:15,VSWTCH:16,VSTATUS:17,VDISCARD:18,IGNPAR:30,PARMRK:31,INPCK:32,ISTRIP:33,INLCR:34,IGNCR:35,ICRNL:36,IUCLC:37,IXON:38,IXANY:39,IXOFF:40,IMAXBEL:41,ISIG:50,ICANON:51,XCASE:52,ECHO:53,ECHOE:54,ECHOK:55,ECHONL:56,NOFLSH:57,TOSTOP:58,IEXTEN:59,ECHOCTL:60,ECHOKE:61,PENDIN:62,OPOST:70,OLCUC:71,ONLCR:72,OCRNL:73,ONOCR:74,ONLRET:75,CS7:90,CS8:91,PARENB:92,PARODD:93,TTY_OP_ISPEED:128,TTY_OP_OSPEED:129},CHANNEL_EXTENDED_DATATYPE:{STDERR:1},SIGNALS:["ABRT","ALRM","FPE","HUP","ILL","INT","QUIT","SEGV","TERM","USR1","USR2","KILL","PIPE"].reduce(((e,t)=>({...e,[t]:1})),{}),COMPAT:_,COMPAT_CHECKS:[["Cisco-1.25",_.BAD_DHGEX],[/^Cisco-1[.]/,_.BUG_DHGEX_LARGE],[/^[0-9.]+$/,_.OLD_EXIT],[/^OpenSSH_5[.][0-9]+/,_.DYN_RPORT_BUG],[/^OpenSSH_7[.]4/,_.IMPLY_RSA_SHA2_SIGALGS]],DEFAULT_KEX:f,SUPPORTED_KEX:E,DEFAULT_SERVER_HOST_KEY:I,SUPPORTED_SERVER_HOST_KEY:C,DEFAULT_CIPHER:Q,SUPPORTED_CIPHER:p,DEFAULT_MAC:w,SUPPORTED_MAC:b,DEFAULT_COMPRESSION:R,SUPPORTED_COMPRESSION:k,curve25519Supported:g,eddsaSupported:u};e.exports.DISCONNECT_REASON_BY_VALUE=Array.from(Object.entries(e.exports.DISCONNECT_REASON)).reduce(((e,[t,n])=>({...e,[n]:t})),{})},5708:(e,t,n)=>{"use strict";const{createCipheriv:s,createDecipheriv:i,createHmac:o,randomFillSync:h,timingSafeEqual:l}=n(6113);const{readUInt32BE:u,writeUInt32BE:g}=n(9475);const f=Buffer[Symbol.species];const E=2**32-1;const I=Buffer.alloc(0);const C=Buffer.alloc(4);const B=new Map;const Q=35e3;let p;let y;let w;let b;let R;let k;let _;try{p=n(9623);({AESGCMCipher:y,ChaChaPolyCipher:w,GenericCipher:b,AESGCMDecipher:R,ChaChaPolyDecipher:k,GenericDecipher:_}=p)}catch{}const D=1<<0;const U=(()=>{function info(e,t,n,s,i,o,h){return{sslName:e,blockLen:t,keyLen:n,ivLen:s!==0||h&D?s:t,authLen:i,discardLen:o,stream:!!(h&D)}}return{"chacha20-poly1305@openssh.com":info("chacha20",8,64,0,16,0,D),"aes128-gcm":info("aes-128-gcm",16,16,12,16,0,D),"aes256-gcm":info("aes-256-gcm",16,32,12,16,0,D),"aes128-gcm@openssh.com":info("aes-128-gcm",16,16,12,16,0,D),"aes256-gcm@openssh.com":info("aes-256-gcm",16,32,12,16,0,D),"aes128-cbc":info("aes-128-cbc",16,16,0,0,0,0),"aes192-cbc":info("aes-192-cbc",16,24,0,0,0,0),"aes256-cbc":info("aes-256-cbc",16,32,0,0,0,0),"rijndael-cbc@lysator.liu.se":info("aes-256-cbc",16,32,0,0,0,0),"3des-cbc":info("des-ede3-cbc",8,24,0,0,0,0),"blowfish-cbc":info("bf-cbc",8,16,0,0,0,0),"idea-cbc":info("idea-cbc",8,16,0,0,0,0),"cast128-cbc":info("cast-cbc",8,16,0,0,0,0),"aes128-ctr":info("aes-128-ctr",16,16,16,0,0,D),"aes192-ctr":info("aes-192-ctr",16,24,16,0,0,D),"aes256-ctr":info("aes-256-ctr",16,32,16,0,0,D),"3des-ctr":info("des-ede3",8,24,8,0,0,D),"blowfish-ctr":info("bf-ecb",8,16,8,0,0,D),"cast128-ctr":info("cast5-ecb",8,16,8,0,0,D),arcfour:info("rc4",8,16,0,0,1536,D),arcfour128:info("rc4",8,16,0,0,1536,D),arcfour256:info("rc4",8,32,0,0,1536,D),arcfour512:info("rc4",8,64,0,0,1536,D)}})();const L=(()=>{function info(e,t,n,s){return{sslName:e,len:t,actualLen:n,isETM:s}}return{"hmac-md5":info("md5",16,16,false),"hmac-md5-96":info("md5",16,12,false),"hmac-ripemd160":info("ripemd160",20,20,false),"hmac-sha1":info("sha1",20,20,false),"hmac-sha1-etm@openssh.com":info("sha1",20,20,true),"hmac-sha1-96":info("sha1",20,12,false),"hmac-sha2-256":info("sha256",32,32,false),"hmac-sha2-256-etm@openssh.com":info("sha256",32,32,true),"hmac-sha2-256-96":info("sha256",32,12,false),"hmac-sha2-512":info("sha512",64,64,false),"hmac-sha2-512-etm@openssh.com":info("sha512",64,64,true),"hmac-sha2-512-96":info("sha512",64,12,false)}})();class NullCipher{constructor(e,t){this.outSeqno=e;this._onWrite=t;this._dead=false}free(){this._dead=true}allocPacket(e){let t=4+1+e;let n=8-(t&8-1);if(n<4)n+=8;t+=n;const s=Buffer.allocUnsafe(t);g(s,t-4,0);s[4]=n;h(s,5+e,n);return s}encrypt(e){if(this._dead)return;this._onWrite(e);this.outSeqno=this.outSeqno+1>>>0}}const v=Buffer.alloc(32);const T=Buffer.alloc(16);let O;let P;let x;class ChaChaPolyCipherNative{constructor(e){const t=e.outbound;this.outSeqno=t.seqno;this._onWrite=t.onWrite;this._encKeyMain=t.cipherKey.slice(0,32);this._encKeyPktLen=t.cipherKey.slice(32);this._dead=false}free(){this._dead=true}allocPacket(e){let t=4+1+e;let n=8-(t-4&8-1);if(n<4)n+=8;t+=n;const s=Buffer.allocUnsafe(t);g(s,t-4,0);s[4]=n;h(s,5+e,n);return s}encrypt(e){if(this._dead)return;T[0]=0;g(T,this.outSeqno,12);const t=s("chacha20",this._encKeyMain,T).update(v);const n=s("chacha20",this._encKeyPktLen,T).update(e.slice(0,4));this._onWrite(n);T[0]=1;const i=s("chacha20",this._encKeyMain,T).update(e.slice(4));this._onWrite(i);x(P,n,n.length,i,i.length,t);const o=Buffer.allocUnsafe(16);o.set(new Uint8Array(O.HEAPU8.buffer,P,16),0);this._onWrite(o);this.outSeqno=this.outSeqno+1>>>0}}class ChaChaPolyCipherBinding{constructor(e){const t=e.outbound;this.outSeqno=t.seqno;this._onWrite=t.onWrite;this._instance=new w(t.cipherKey);this._dead=false}free(){this._dead=true;this._instance.free()}allocPacket(e){let t=4+1+e;let n=8-(t-4&8-1);if(n<4)n+=8;t+=n;const s=Buffer.allocUnsafe(t+16);g(s,t-4,0);s[4]=n;h(s,5+e,n);return s}encrypt(e){if(this._dead)return;this._instance.encrypt(e,this.outSeqno);this._onWrite(e);this.outSeqno=this.outSeqno+1>>>0}}class AESGCMCipherNative{constructor(e){const t=e.outbound;this.outSeqno=t.seqno;this._onWrite=t.onWrite;this._encSSLName=t.cipherInfo.sslName;this._encKey=t.cipherKey;this._encIV=t.cipherIV;this._dead=false}free(){this._dead=true}allocPacket(e){let t=4+1+e;let n=16-(t-4&16-1);if(n<4)n+=16;t+=n;const s=Buffer.allocUnsafe(t);g(s,t-4,0);s[4]=n;h(s,5+e,n);return s}encrypt(e){if(this._dead)return;const t=s(this._encSSLName,this._encKey,this._encIV);t.setAutoPadding(false);const n=e.slice(0,4);t.setAAD(n);this._onWrite(n);const i=t.update(e.slice(4));this._onWrite(i);const o=t.final();if(o.length)this._onWrite(o);const h=t.getAuthTag();this._onWrite(h);ivIncrement(this._encIV);this.outSeqno=this.outSeqno+1>>>0}}class AESGCMCipherBinding{constructor(e){const t=e.outbound;this.outSeqno=t.seqno;this._onWrite=t.onWrite;this._instance=new y(t.cipherInfo.sslName,t.cipherKey,t.cipherIV);this._dead=false}free(){this._dead=true;this._instance.free()}allocPacket(e){let t=4+1+e;let n=16-(t-4&16-1);if(n<4)n+=16;t+=n;const s=Buffer.allocUnsafe(t+16);g(s,t-4,0);s[4]=n;h(s,5+e,n);return s}encrypt(e){if(this._dead)return;this._instance.encrypt(e);this._onWrite(e);this.outSeqno=this.outSeqno+1>>>0}}class GenericCipherNative{constructor(e){const t=e.outbound;this.outSeqno=t.seqno;this._onWrite=t.onWrite;this._encBlockLen=t.cipherInfo.blockLen;this._cipherInstance=s(t.cipherInfo.sslName,t.cipherKey,t.cipherIV);this._macSSLName=t.macInfo.sslName;this._macKey=t.macKey;this._macActualLen=t.macInfo.actualLen;this._macETM=t.macInfo.isETM;this._aadLen=this._macETM?4:0;this._dead=false;const n=t.cipherInfo.discardLen;if(n){let e=B.get(n);if(e===undefined){e=Buffer.alloc(n);B.set(n,e)}this._cipherInstance.update(e)}}free(){this._dead=true}allocPacket(e){const t=this._encBlockLen;let n=4+1+e;let s=t-(n-this._aadLen&t-1);if(s<4)s+=t;n+=s;const i=Buffer.allocUnsafe(n);g(i,n-4,0);i[4]=s;h(i,5+e,s);return i}encrypt(e){if(this._dead)return;let t;if(this._macETM){const n=new Uint8Array(e.buffer,e.byteOffset,4);const s=this._cipherInstance.update(new Uint8Array(e.buffer,e.byteOffset+4,e.length-4));this._onWrite(n);this._onWrite(s);t=o(this._macSSLName,this._macKey);g(C,this.outSeqno,0);t.update(C);t.update(n);t.update(s)}else{const n=this._cipherInstance.update(e);this._onWrite(n);t=o(this._macSSLName,this._macKey);g(C,this.outSeqno,0);t.update(C);t.update(e)}let n=t.digest();if(n.length>this._macActualLen)n=n.slice(0,this._macActualLen);this._onWrite(n);this.outSeqno=this.outSeqno+1>>>0}}class GenericCipherBinding{constructor(e){const t=e.outbound;this.outSeqno=t.seqno;this._onWrite=t.onWrite;this._encBlockLen=t.cipherInfo.blockLen;this._macLen=t.macInfo.len;this._macActualLen=t.macInfo.actualLen;this._aadLen=t.macInfo.isETM?4:0;this._instance=new b(t.cipherInfo.sslName,t.cipherKey,t.cipherIV,t.macInfo.sslName,t.macKey,t.macInfo.isETM);this._dead=false}free(){this._dead=true;this._instance.free()}allocPacket(e){const t=this._encBlockLen;let n=4+1+e;let s=t-(n-this._aadLen&t-1);if(s<4)s+=t;n+=s;const i=Buffer.allocUnsafe(n+this._macLen);g(i,n-4,0);i[4]=s;h(i,5+e,s);return i}encrypt(e){if(this._dead)return;this._instance.encrypt(e,this.outSeqno);if(this._macActualLen>>0}}class NullDecipher{constructor(e,t){this.inSeqno=e;this._onPayload=t;this._len=0;this._lenBytes=0;this._packet=null;this._packetPos=0}free(){}decrypt(e,t,n){while(tQ||this._len<8||(4+this._len&7)!==0){throw new Error("Bad packet length")}if(t>=n)return}if(this._packetPos>>0;this._len=0;this._lenBytes=0;this._packet=null;this._packetPos=0;{const e=this._onPayload(s);if(e!==undefined)return e===false?t:e}}}}class ChaChaPolyDecipherNative{constructor(e){const t=e.inbound;this.inSeqno=t.seqno;this._onPayload=t.onPayload;this._decKeyMain=t.decipherKey.slice(0,32);this._decKeyPktLen=t.decipherKey.slice(32);this._len=0;this._lenBuf=Buffer.alloc(4);this._lenPos=0;this._packet=null;this._pktLen=0;this._mac=Buffer.allocUnsafe(16);this._calcMac=Buffer.allocUnsafe(16);this._macPos=0}free(){}decrypt(e,t,n){while(tQ||this._len<8||(this._len&7)!==0){throw new Error("Bad packet length")}}if(this._pktLen=n)return;const s=Math.min(this._len-this._pktLen,n-t);let i;if(t!==0||s!==n)i=new Uint8Array(e.buffer,e.byteOffset+t,s);else i=e;if(s===this._len){this._packet=i}else{if(!this._packet)this._packet=Buffer.allocUnsafe(this._len);this._packet.set(i,this._pktLen)}t+=s;this._pktLen+=s;if(this._pktLen=n)return}{const s=Math.min(16-this._macPos,n-t);if(t!==0||s!==n){this._mac.set(new Uint8Array(e.buffer,e.byteOffset+t,s),this._macPos)}else{this._mac.set(e,this._macPos)}t+=s;this._macPos+=s;if(this._macPos<16)return}T[0]=0;g(T,this.inSeqno,12);const o=s("chacha20",this._decKeyMain,T).update(v);x(P,this._lenBuf,4,this._packet,this._packet.length,o);this._calcMac.set(new Uint8Array(O.HEAPU8.buffer,P,16),0);if(!l(this._calcMac,this._mac))throw new Error("Invalid MAC");T[0]=1;const h=i("chacha20",this._decKeyMain,T).update(this._packet);const E=new f(h.buffer,h.byteOffset+1,h.length-h[0]-1);this.inSeqno=this.inSeqno+1>>>0;this._len=0;this._lenPos=0;this._packet=null;this._pktLen=0;this._macPos=0;{const e=this._onPayload(E);if(e!==undefined)return e===false?t:e}}}}class ChaChaPolyDecipherBinding{constructor(e){const t=e.inbound;this.inSeqno=t.seqno;this._onPayload=t.onPayload;this._instance=new k(t.decipherKey);this._len=0;this._lenBuf=Buffer.alloc(4);this._lenPos=0;this._packet=null;this._pktLen=0;this._mac=Buffer.allocUnsafe(16);this._macPos=0}free(){this._instance.free()}decrypt(e,t,n){while(tQ||this._len<8||(this._len&7)!==0){throw new Error("Bad packet length")}if(t>=n)return}if(this._pktLen=n)return}{const s=Math.min(16-this._macPos,n-t);if(t!==0||s!==n){this._mac.set(new Uint8Array(e.buffer,e.byteOffset+t,s),this._macPos)}else{this._mac.set(e,this._macPos)}t+=s;this._macPos+=s;if(this._macPos<16)return}this._instance.decrypt(this._packet,this._mac,this.inSeqno);const s=new f(this._packet.buffer,this._packet.byteOffset+1,this._packet.length-this._packet[0]-1);this.inSeqno=this.inSeqno+1>>>0;this._len=0;this._lenPos=0;this._packet=null;this._pktLen=0;this._macPos=0;{const e=this._onPayload(s);if(e!==undefined)return e===false?t:e}}}}class AESGCMDecipherNative{constructor(e){const t=e.inbound;this.inSeqno=t.seqno;this._onPayload=t.onPayload;this._decipherInstance=null;this._decipherSSLName=t.decipherInfo.sslName;this._decipherKey=t.decipherKey;this._decipherIV=t.decipherIV;this._len=0;this._lenBytes=0;this._packet=null;this._packetPos=0;this._pktLen=0;this._tag=Buffer.allocUnsafe(16);this._tagPos=0}free(){}decrypt(e,t,n){while(tQ||this._len<16||(this._len&15)!==0){throw new Error("Bad packet length")}this._decipherInstance=i(this._decipherSSLName,this._decipherKey,this._decipherIV);this._decipherInstance.setAutoPadding(false);this._decipherInstance.setAAD(Y(this._len))}if(this._pktLen=n)return;const s=Math.min(this._len-this._pktLen,n-t);let i;if(t!==0||s!==n){i=this._decipherInstance.update(new Uint8Array(e.buffer,e.byteOffset+t,s))}else{i=this._decipherInstance.update(e)}if(i.length){if(s===this._len){this._packet=i}else{if(!this._packet)this._packet=Buffer.allocUnsafe(this._len);this._packet.set(i,this._packetPos)}this._packetPos+=i.length}t+=s;this._pktLen+=s;if(this._pktLen=n)return}{const s=Math.min(16-this._tagPos,n-t);if(t!==0||s!==n){this._tag.set(new Uint8Array(e.buffer,e.byteOffset+t,s),this._tagPos)}else{this._tag.set(e,this._tagPos)}t+=s;this._tagPos+=s;if(this._tagPos<16)return}{this._decipherInstance.setAuthTag(this._tag);const e=this._decipherInstance.final();if(e.length){if(this._packet)this._packet.set(e,this._packetPos);else this._packet=e}}const s=!this._packet?I:new f(this._packet.buffer,this._packet.byteOffset+1,this._packet.length-this._packet[0]-1);this.inSeqno=this.inSeqno+1>>>0;ivIncrement(this._decipherIV);this._len=0;this._lenBytes=0;this._packet=null;this._packetPos=0;this._pktLen=0;this._tagPos=0;{const e=this._onPayload(s);if(e!==undefined)return e===false?t:e}}}}class AESGCMDecipherBinding{constructor(e){const t=e.inbound;this.inSeqno=t.seqno;this._onPayload=t.onPayload;this._instance=new R(t.decipherInfo.sslName,t.decipherKey,t.decipherIV);this._len=0;this._lenBytes=0;this._packet=null;this._pktLen=0;this._tag=Buffer.allocUnsafe(16);this._tagPos=0}free(){}decrypt(e,t,n){while(tQ||this._len<16||(this._len&15)!==0){throw new Error(`Bad packet length: ${this._len}`)}}if(this._pktLen=n)return;const s=Math.min(this._len-this._pktLen,n-t);let i;if(t!==0||s!==n)i=new Uint8Array(e.buffer,e.byteOffset+t,s);else i=e;if(s===this._len){this._packet=i}else{if(!this._packet)this._packet=Buffer.allocUnsafe(this._len);this._packet.set(i,this._pktLen)}t+=s;this._pktLen+=s;if(this._pktLen=n)return}{const s=Math.min(16-this._tagPos,n-t);if(t!==0||s!==n){this._tag.set(new Uint8Array(e.buffer,e.byteOffset+t,s),this._tagPos)}else{this._tag.set(e,this._tagPos)}t+=s;this._tagPos+=s;if(this._tagPos<16)return}this._instance.decrypt(this._packet,this._len,this._tag);const s=new f(this._packet.buffer,this._packet.byteOffset+1,this._packet.length-this._packet[0]-1);this.inSeqno=this.inSeqno+1>>>0;this._len=0;this._lenBytes=0;this._packet=null;this._pktLen=0;this._tagPos=0;{const e=this._onPayload(s);if(e!==undefined)return e===false?t:e}}}}class GenericDecipherNative{constructor(e){const t=e.inbound;this.inSeqno=t.seqno;this._onPayload=t.onPayload;this._decipherInstance=i(t.decipherInfo.sslName,t.decipherKey,t.decipherIV);this._decipherInstance.setAutoPadding(false);this._block=Buffer.allocUnsafe(t.macInfo.isETM?4:t.decipherInfo.blockLen);this._blockSize=t.decipherInfo.blockLen;this._blockPos=0;this._len=0;this._packet=null;this._packetPos=0;this._pktLen=0;this._mac=Buffer.allocUnsafe(t.macInfo.actualLen);this._macPos=0;this._macSSLName=t.macInfo.sslName;this._macKey=t.macKey;this._macActualLen=t.macInfo.actualLen;this._macETM=t.macInfo.isETM;this._macInstance=null;const n=t.decipherInfo.discardLen;if(n){let e=B.get(n);if(e===undefined){e=Buffer.alloc(n);B.set(n,e)}this._decipherInstance.update(e)}}free(){}decrypt(e,t,n){while(tQ||this._len<5||(h&this._blockSize-1)!==0){throw new Error("Bad packet length")}this._macInstance=o(this._macSSLName,this._macKey);g(C,this.inSeqno,0);this._macInstance.update(C);if(this._macETM){this._macInstance.update(this._block)}else{this._macInstance.update(new Uint8Array(i.buffer,i.byteOffset,4));this._pktLen=i.length-4;this._packetPos=this._pktLen;this._packet=Buffer.allocUnsafe(this._len);this._packet.set(new Uint8Array(i.buffer,i.byteOffset+4,this._packetPos),0)}if(t>=n)return}if(this._pktLen=n)return}{const s=Math.min(this._macActualLen-this._macPos,n-t);if(t!==0||s!==n){this._mac.set(new Uint8Array(e.buffer,e.byteOffset+t,s),this._macPos)}else{this._mac.set(e,this._macPos)}t+=s;this._macPos+=s;if(this._macPos>>0;this._blockPos=0;this._len=0;this._packet=null;this._packetPos=0;this._pktLen=0;this._macPos=0;this._macInstance=null;{const e=this._onPayload(i);if(e!==undefined)return e===false?t:e}}}}class GenericDecipherBinding{constructor(e){const t=e.inbound;this.inSeqno=t.seqno;this._onPayload=t.onPayload;this._instance=new _(t.decipherInfo.sslName,t.decipherKey,t.decipherIV,t.macInfo.sslName,t.macKey,t.macInfo.isETM,t.macInfo.actualLen);this._block=Buffer.allocUnsafe(t.macInfo.isETM||t.decipherInfo.stream?4:t.decipherInfo.blockLen);this._blockPos=0;this._len=0;this._packet=null;this._pktLen=0;this._mac=Buffer.allocUnsafe(t.macInfo.actualLen);this._macPos=0;this._macActualLen=t.macInfo.actualLen;this._macETM=t.macInfo.isETM}free(){this._instance.free()}decrypt(e,t,n){while(tQ||this._len<5||(i&this._block.length-1)!==0){throw new Error("Bad packet length")}if(!this._macETM){this._pktLen=this._block.length-4;if(this._pktLen){this._packet=Buffer.allocUnsafe(this._len);this._packet.set(new Uint8Array(this._block.buffer,this._block.byteOffset+4,this._pktLen),0)}}if(t>=n)return}if(this._pktLen=n)return}{const s=Math.min(this._macActualLen-this._macPos,n-t);if(t!==0||s!==n){this._mac.set(new Uint8Array(e.buffer,e.byteOffset+t,s),this._macPos)}else{this._mac.set(e,this._macPos)}t+=s;this._macPos+=s;if(this._macPos>>0;this._blockPos=0;this._len=0;this._packet=null;this._pktLen=0;this._macPos=0;this._macInstance=null;{const e=this._onPayload(s);if(e!==undefined)return e===false?t:e}}}}function ivIncrement(e){++e[11]>>>8&&++e[10]>>>8&&++e[9]>>>8&&++e[8]>>>8&&++e[7]>>>8&&++e[6]>>>8&&++e[5]>>>8&&++e[4]>>>8}const Y=(()=>{const e=Buffer.alloc(4);return t=>{e[0]=t>>>24;e[1]=t>>>16;e[2]=t>>>8;e[3]=t;return e}})();function timingSafeEquals(e,t){if(e.length!==t.length){l(e,e);return false}return l(e,t)}function createCipher(e){if(typeof e!=="object"||e===null)throw new Error("Invalid config");if(typeof e.outbound!=="object"||e.outbound===null)throw new Error("Invalid outbound");const t=e.outbound;if(typeof t.onWrite!=="function")throw new Error("Invalid outbound.onWrite");if(typeof t.cipherInfo!=="object"||t.cipherInfo===null)throw new Error("Invalid outbound.cipherInfo");if(!Buffer.isBuffer(t.cipherKey)||t.cipherKey.length!==t.cipherInfo.keyLen){throw new Error("Invalid outbound.cipherKey")}if(t.cipherInfo.ivLen&&(!Buffer.isBuffer(t.cipherIV)||t.cipherIV.length!==t.cipherInfo.ivLen)){throw new Error("Invalid outbound.cipherIV")}if(typeof t.seqno!=="number"||t.seqno<0||t.seqno>E){throw new Error("Invalid outbound.seqno")}const n=!!t.forceNative;switch(t.cipherInfo.sslName){case"aes-128-gcm":case"aes-256-gcm":return y&&!n?new AESGCMCipherBinding(e):new AESGCMCipherNative(e);case"chacha20":return w&&!n?new ChaChaPolyCipherBinding(e):new ChaChaPolyCipherNative(e);default:{if(typeof t.macInfo!=="object"||t.macInfo===null)throw new Error("Invalid outbound.macInfo");if(!Buffer.isBuffer(t.macKey)||t.macKey.length!==t.macInfo.len){throw new Error("Invalid outbound.macKey")}return b&&!n?new GenericCipherBinding(e):new GenericCipherNative(e)}}}function createDecipher(e){if(typeof e!=="object"||e===null)throw new Error("Invalid config");if(typeof e.inbound!=="object"||e.inbound===null)throw new Error("Invalid inbound");const t=e.inbound;if(typeof t.onPayload!=="function")throw new Error("Invalid inbound.onPayload");if(typeof t.decipherInfo!=="object"||t.decipherInfo===null){throw new Error("Invalid inbound.decipherInfo")}if(!Buffer.isBuffer(t.decipherKey)||t.decipherKey.length!==t.decipherInfo.keyLen){throw new Error("Invalid inbound.decipherKey")}if(t.decipherInfo.ivLen&&(!Buffer.isBuffer(t.decipherIV)||t.decipherIV.length!==t.decipherInfo.ivLen)){throw new Error("Invalid inbound.decipherIV")}if(typeof t.seqno!=="number"||t.seqno<0||t.seqno>E){throw new Error("Invalid inbound.seqno")}const n=!!t.forceNative;switch(t.decipherInfo.sslName){case"aes-128-gcm":case"aes-256-gcm":return R&&!n?new AESGCMDecipherBinding(e):new AESGCMDecipherNative(e);case"chacha20":return k&&!n?new ChaChaPolyDecipherBinding(e):new ChaChaPolyDecipherNative(e);default:{if(typeof t.macInfo!=="object"||t.macInfo===null)throw new Error("Invalid inbound.macInfo");if(!Buffer.isBuffer(t.macKey)||t.macKey.length!==t.macInfo.len){throw new Error("Invalid inbound.macKey")}return _&&!n?new GenericDecipherBinding(e):new GenericDecipherNative(e)}}}e.exports={CIPHER_INFO:U,MAC_INFO:L,bindingAvailable:!!p,init:(()=>new Promise((async(e,t)=>{try{O=await n(4989)();P=O._malloc(16);x=O.cwrap("poly1305_auth",null,["number","array","number","array","number","array"])}catch(e){return t(e)}e()})))(),NullCipher:NullCipher,createCipher:createCipher,NullDecipher:NullDecipher,createDecipher:createDecipher}},4989:(e,t,n)=>{var s=function(){var e=typeof document!=="undefined"&&document.currentScript?document.currentScript.src:undefined;if(typeof __filename!=="undefined")e=e||__filename;return function(t){t=t||{};var s;s||(s=typeof t!=="undefined"?t:{});var i,o;s.ready=new Promise((function(e,t){i=e;o=t}));var h={},l;for(l in s)s.hasOwnProperty(l)&&(h[l]=s[l]);var u="object"===typeof window,g="function"===typeof importScripts,f="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node,E="",I,C,B,Q,p;if(f)E=g?n(1017).dirname(E)+"/":__dirname+"/",I=function(e,t){var s=H(e);if(s)return t?s:s.toString();Q||(Q=n(7147));p||(p=n(1017));e=p.normalize(e);return Q.readFileSync(e,t?null:"utf8")},B=function(e){e=I(e,!0);e.buffer||(e=new Uint8Array(e));assert(e.buffer);return e},C=function(e,t,s){var i=H(e);i&&t(i);Q||(Q=n(7147));p||(p=n(1017));e=p.normalize(e);Q.readFile(e,(function(e,n){e?s(e):t(n.buffer)}))},1=h){var l=e.charCodeAt(++o);h=65536+((h&1023)<<10)|l&1023}if(127>=h){if(s>=n)break;i[s++]=h}else{if(2047>=h){if(s+1>=n)break;i[s++]=192|h>>6}else{if(65535>=h){if(s+2>=n)break;i[s++]=224|h>>12}else{if(s+3>=n)break;i[s++]=240|h>>18;i[s++]=128|h>>12&63}i[s++]=128|h>>6&63}i[s++]=128|h&63}}i[s]=0}}return t},array:function(e){var t=te(e.length);U.set(e,t);return t}},o=N(e),h=[];e=0;if(s)for(var l=0;l=s);)++i;if(16o?s+=String.fromCharCode(o):(o-=65536,s+=String.fromCharCode(55296|o>>10,56320|o&1023))}}else s+=String.fromCharCode(o)}e=s}}else e="";else e="boolean"===t?!!e:e;return e}(n);0!==e&&ee(e);return n}var _="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0,D,U,L;function ia(){var e=R.buffer;D=e;s.HEAP8=U=new Int8Array(e);s.HEAP16=new Int16Array(e);s.HEAP32=new Int32Array(e);s.HEAPU8=L=new Uint8Array(e);s.HEAPU16=new Uint16Array(e);s.HEAPU32=new Uint32Array(e);s.HEAPF32=new Float32Array(e);s.HEAPF64=new Float64Array(e)}var v,T=[],O=[],P=[];function ma(){var e=s.preRun.shift();T.unshift(e)}var x=0,Y=null,G=null;s.preloadedImages={};s.preloadedAudios={};function K(e){if(s.onAbort)s.onAbort(e);y(e);k=!0;e=new WebAssembly.RuntimeError("abort("+e+"). Build with -s ASSERTIONS=1 for more info.");o(e);throw e}var J="data:application/octet-stream;base64,",W;W="data:application/octet-stream;base64,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";if(!W.startsWith(J)){var V=W;W=s.locateFile?s.locateFile(V,E):E+V}function pa(){var e=W;try{if(e==W&&w)return new Uint8Array(w);var t=H(e);if(t)return t;if(B)return B(e);throw"both async and sync fetching of the wasm failed"}catch(e){K(e)}}function qa(){if(!w&&(u||g)){if("function"===typeof fetch&&!W.startsWith("file://"))return fetch(W,{credentials:"same-origin"}).then((function(e){if(!e.ok)throw"failed to load wasm binary file at '"+W+"'";return e.arrayBuffer()})).catch((function(){return pa()}));if(C)return new Promise((function(e,t){C(W,(function(t){e(new Uint8Array(t))}),t)}))}return Promise.resolve().then((function(){return pa()}))}function X(e){for(;0>4;i=(i&15)<<4|o>>2;var l=(o&3)<<6|h;t+=String.fromCharCode(s);64!==o&&(t+=String.fromCharCode(i));64!==h&&(t+=String.fromCharCode(l))}while(n>>=0;if(2147483648=n;n*=2){var s=t*(1+.2/n);s=Math.min(s,e+100663296);s=Math.max(e,s);0>>16);ia();var i=1;break e}catch(e){}i=void 0}if(i)return!0}return!1}};(function(){function a(e){s.asm=e.exports;R=s.asm.b;ia();v=s.asm.j;O.unshift(s.asm.c);x--;s.monitorRunDependencies&&s.monitorRunDependencies(x);0==x&&(null!==Y&&(clearInterval(Y),Y=null),G&&(e=G,G=null,e()))}function c(e){a(e.instance)}function d(t){return qa().then((function(t){return WebAssembly.instantiate(t,e)})).then(t,(function(e){y("failed to asynchronously prepare wasm: "+e);K(e)}))}var e={a:z};x++;s.monitorRunDependencies&&s.monitorRunDependencies(x);if(s.instantiateWasm)try{return s.instantiateWasm(e,a)}catch(e){return y("Module.instantiateWasm callback failed with error: "+e),!1}(function(){return w||"function"!==typeof WebAssembly.instantiateStreaming||W.startsWith(J)||W.startsWith("file://")||"function"!==typeof fetch?d(c):fetch(W,{credentials:"same-origin"}).then((function(t){return WebAssembly.instantiateStreaming(t,e).then(c,(function(e){y("wasm streaming compile failed: "+e);y("falling back to ArrayBuffer instantiation");return d(c)}))}))})().catch(o);return{}})();s.___wasm_call_ctors=function(){return(s.___wasm_call_ctors=s.asm.c).apply(null,arguments)};s._poly1305_auth=function(){return(s._poly1305_auth=s.asm.d).apply(null,arguments)};var $=s.stackSave=function(){return($=s.stackSave=s.asm.e).apply(null,arguments)},ee=s.stackRestore=function(){return(ee=s.stackRestore=s.asm.f).apply(null,arguments)},te=s.stackAlloc=function(){return(te=s.stackAlloc=s.asm.g).apply(null,arguments)};s._malloc=function(){return(s._malloc=s.asm.h).apply(null,arguments)};s._free=function(){return(s._free=s.asm.i).apply(null,arguments)};s.cwrap=function(e,t,n,s){n=n||[];var i=n.every((function(e){return"number"===e}));return"string"!==t&&i&&!s?N(e):function(){return ca(e,t,n,arguments)}};var Ae;G=function ta(){Ae||Z();Ae||(G=ta)};function Z(){function a(){if(!Ae&&(Ae=!0,s.calledRun=!0,!k)){X(O);i(s);if(s.onRuntimeInitialized)s.onRuntimeInitialized();if(s.postRun)for("function"==typeof s.postRun&&(s.postRun=[s.postRun]);s.postRun.length;){var e=s.postRun.shift();P.unshift(e)}X(P)}}if(!(0{"use strict";const s=new Array(256);[n(4126).HANDLERS,n(6475)].forEach((e=>{for(let[t,n]of Object.entries(e)){t=+t;if(isFinite(t)&&t>=0&&t{"use strict";const{bufferSlice:s,bufferParser:i,doFatalError:o,sigSSHToASN1:h,writeUInt32BE:l}=n(9475);const{CHANNEL_OPEN_FAILURE:u,COMPAT:g,MESSAGE:f,TERMINAL_MODE:E}=n(6832);const{parseKey:I}=n(2218);const C=Array.from(Object.entries(E)).reduce(((e,[t,n])=>({...e,[t]:n})),{});e.exports={[f.DISCONNECT]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readString(true);const h=i.readString();i.clear();if(h===undefined){return o(e,"Inbound: Malformed DISCONNECT packet")}e._debug&&e._debug(`Inbound: Received DISCONNECT (${n}, "${s}")`);const l=e._handlers.DISCONNECT;l&&l(e,n,s)},[f.IGNORE]:(e,t)=>{e._debug&&e._debug("Inbound: Received IGNORE")},[f.UNIMPLEMENTED]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();i.clear();if(n===undefined){return o(e,"Inbound: Malformed UNIMPLEMENTED packet")}e._debug&&e._debug(`Inbound: Received UNIMPLEMENTED (seqno ${n})`)},[f.DEBUG]:(e,t)=>{i.init(t,1);const n=i.readBool();const s=i.readString(true);const h=i.readString();i.clear();if(h===undefined){return o(e,"Inbound: Malformed DEBUG packet")}e._debug&&e._debug("Inbound: Received DEBUG");const l=e._handlers.DEBUG;l&&l(e,n,s)},[f.SERVICE_REQUEST]:(e,t)=>{i.init(t,1);const n=i.readString(true);i.clear();if(n===undefined){return o(e,"Inbound: Malformed SERVICE_REQUEST packet")}e._debug&&e._debug(`Inbound: Received SERVICE_REQUEST (${n})`);const s=e._handlers.SERVICE_REQUEST;s&&s(e,n)},[f.SERVICE_ACCEPT]:(e,t)=>{i.init(t,1);const n=i.readString(true);i.clear();if(n===undefined){return o(e,"Inbound: Malformed SERVICE_ACCEPT packet")}e._debug&&e._debug(`Inbound: Received SERVICE_ACCEPT (${n})`);const s=e._handlers.SERVICE_ACCEPT;s&&s(e,n)},[f.EXT_INFO]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();let s;if(n!==undefined){s=[];for(let e=0;e{i.init(t,1);const n=i.readString(true);const u=i.readString(true);const g=i.readString(true);let f;let E;switch(g){case"none":f=null;break;case"password":{const e=i.readBool();if(e!==undefined){f=i.readString(true);if(f!==undefined&&e){const e=i.readString(true);if(e!==undefined)f={oldPassword:f,newPassword:e};else f=undefined}}break}case"publickey":{const n=i.readBool();if(n!==undefined){const o=i.readString(true);let u=o;const g=i.readString();let I;switch(o){case"rsa-sha2-256":u="ssh-rsa";I="sha256";break;case"rsa-sha2-512":u="ssh-rsa";I="sha512";break}if(n){const n=i.pos();let E=i.readString();if(E!==undefined){if(E.length>4+o.length+4&&E.utf8Slice(4,4+o.length)===o){E=s(E,4+o.length+4)}E=h(E,u);if(E){const s=e._kex.sessionID;const i=Buffer.allocUnsafe(4+s.length+n);l(i,s.length,0);i.set(s,4);i.set(new Uint8Array(t.buffer,t.byteOffset,n),4+s.length);f={keyAlgo:u,key:g,signature:E,blob:i,hashAlgo:I}}}}else{f={keyAlgo:u,key:g,hashAlgo:I};E="publickey -- check"}}break}case"hostbased":{const n=i.readString(true);let o=n;const u=i.readString();const g=i.readString(true);const E=i.readString(true);let I;switch(n){case"rsa-sha2-256":o="ssh-rsa";I="sha256";break;case"rsa-sha2-512":o="ssh-rsa";I="sha512";break}const C=i.pos();let B=i.readString();if(B!==undefined){if(B.length>4+n.length+4&&B.utf8Slice(4,4+n.length)===n){B=s(B,4+n.length+4)}B=h(B,o);if(B!==undefined){const n=e._kex.sessionID;const s=Buffer.allocUnsafe(4+n.length+C);l(s,n.length,0);s.set(n,4);s.set(new Uint8Array(t.buffer,t.byteOffset,C),4+n.length);f={keyAlgo:o,key:u,signature:B,blob:s,localHostname:g,localUsername:E,hashAlgo:I}}}break}case"keyboard-interactive":i.skipString();f=i.readList();break;default:if(g!==undefined)f=i.readRaw()}i.clear();if(f===undefined){return o(e,"Inbound: Malformed USERAUTH_REQUEST packet")}if(E===undefined)E=g;e._authsQueue.push(g);e._debug&&e._debug(`Inbound: Received USERAUTH_REQUEST (${E})`);const I=e._handlers.USERAUTH_REQUEST;I&&I(e,n,u,g,f)},[f.USERAUTH_FAILURE]:(e,t)=>{i.init(t,1);const n=i.readList();const s=i.readBool();i.clear();if(s===undefined){return o(e,"Inbound: Malformed USERAUTH_FAILURE packet")}e._debug&&e._debug(`Inbound: Received USERAUTH_FAILURE (${n})`);e._authsQueue.shift();const h=e._handlers.USERAUTH_FAILURE;h&&h(e,n,s)},[f.USERAUTH_SUCCESS]:(e,t)=>{e._debug&&e._debug("Inbound: Received USERAUTH_SUCCESS");e._authsQueue.shift();const n=e._handlers.USERAUTH_SUCCESS;n&&n(e)},[f.USERAUTH_BANNER]:(e,t)=>{i.init(t,1);const n=i.readString(true);const s=i.readString();i.clear();if(s===undefined){return o(e,"Inbound: Malformed USERAUTH_BANNER packet")}e._debug&&e._debug("Inbound: Received USERAUTH_BANNER");const h=e._handlers.USERAUTH_BANNER;h&&h(e,n)},60:(e,t)=>{if(!e._authsQueue.length){e._debug&&e._debug("Inbound: Received payload type 60 without auth");return}switch(e._authsQueue[0]){case"password":{i.init(t,1);const n=i.readString(true);const s=i.readString();i.clear();if(s===undefined){return o(e,"Inbound: Malformed USERAUTH_PASSWD_CHANGEREQ packet")}e._debug&&e._debug("Inbound: Received USERAUTH_PASSWD_CHANGEREQ");const h=e._handlers.USERAUTH_PASSWD_CHANGEREQ;h&&h(e,n);break}case"publickey":{i.init(t,1);const n=i.readString(true);const s=i.readString();i.clear();if(s===undefined){return o(e,"Inbound: Malformed USERAUTH_PK_OK packet")}e._debug&&e._debug("Inbound: Received USERAUTH_PK_OK");e._authsQueue.shift();const h=e._handlers.USERAUTH_PK_OK;h&&h(e,n,s);break}case"keyboard-interactive":{i.init(t,1);const n=i.readString(true);const s=i.readString(true);i.readString();const h=i.readUInt32BE();let l;if(h!==undefined){l=new Array(h);let e;for(e=0;e{if(!e._authsQueue.length){e._debug&&e._debug("Inbound: Received payload type 61 without auth");return}if(e._authsQueue[0]!=="keyboard-interactive"){return o(e,"Inbound: Received unexpected payload type 61")}i.init(t,1);const n=i.readUInt32BE();let s;if(n!==undefined){s=new Array(n);let e;for(e=0;e{i.init(t,1);const n=i.readString(true);const s=i.readBool();let h;if(s!==undefined){switch(n){case"tcpip-forward":case"cancel-tcpip-forward":{const e=i.readString(true);const t=i.readUInt32BE();if(t!==undefined)h={bindAddr:e,bindPort:t};break}case"streamlocal-forward@openssh.com":case"cancel-streamlocal-forward@openssh.com":{const e=i.readString(true);if(e!==undefined)h={socketPath:e};break}case"no-more-sessions@openssh.com":h=null;break;case"hostkeys-00@openssh.com":{h=[];while(i.avail()>0){const e=i.readString();if(e===undefined){h=undefined;break}const t=I(e);if(!(t instanceof Error))h.push(t)}break}default:h=i.readRaw()}}i.clear();if(h===undefined){return o(e,"Inbound: Malformed GLOBAL_REQUEST packet")}e._debug&&e._debug(`Inbound: GLOBAL_REQUEST (${n})`);const l=e._handlers.GLOBAL_REQUEST;if(l)l(e,n,s,h);else e.requestFailure()},[f.REQUEST_SUCCESS]:(e,t)=>{const n=t.length>1?s(t,1):null;e._debug&&e._debug("Inbound: REQUEST_SUCCESS");const i=e._handlers.REQUEST_SUCCESS;i&&i(e,n)},[f.REQUEST_FAILURE]:(e,t)=>{e._debug&&e._debug("Inbound: Received REQUEST_FAILURE");const n=e._handlers.REQUEST_FAILURE;n&&n(e)},[f.CHANNEL_OPEN]:(e,t)=>{i.init(t,1);const n=i.readString(true);const s=i.readUInt32BE();const h=i.readUInt32BE();const l=i.readUInt32BE();let g;switch(n){case"forwarded-tcpip":case"direct-tcpip":{const e=i.readString(true);const t=i.readUInt32BE();const o=i.readString(true);const u=i.readUInt32BE();if(u!==undefined){g={type:n,sender:s,window:h,packetSize:l,data:{destIP:e,destPort:t,srcIP:o,srcPort:u}}}break}case"forwarded-streamlocal@openssh.com":case"direct-streamlocal@openssh.com":{const e=i.readString(true);if(e!==undefined){g={type:n,sender:s,window:h,packetSize:l,data:{socketPath:e}}}break}case"x11":{const e=i.readString(true);const t=i.readUInt32BE();if(t!==undefined){g={type:n,sender:s,window:h,packetSize:l,data:{srcIP:e,srcPort:t}}}break}default:g={type:n,sender:s,window:h,packetSize:l,data:{}}}i.clear();if(g===undefined){return o(e,"Inbound: Malformed CHANNEL_OPEN packet")}e._debug&&e._debug(`Inbound: CHANNEL_OPEN (s:${s}, ${n})`);const f=e._handlers.CHANNEL_OPEN;if(f){f(e,g)}else{e.channelOpenFail(g.sender,u.ADMINISTRATIVELY_PROHIBITED,"","")}},[f.CHANNEL_OPEN_CONFIRMATION]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readUInt32BE();const h=i.readUInt32BE();const l=i.readUInt32BE();const u=i.avail()?i.readRaw():undefined;i.clear();if(l===undefined){return o(e,"Inbound: Malformed CHANNEL_OPEN_CONFIRMATION packet")}e._debug&&e._debug(`Inbound: CHANNEL_OPEN_CONFIRMATION (r:${n}, s:${s})`);const g=e._handlers.CHANNEL_OPEN_CONFIRMATION;if(g)g(e,{recipient:n,sender:s,window:h,packetSize:l,data:u})},[f.CHANNEL_OPEN_FAILURE]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readUInt32BE();const h=i.readString(true);const l=i.readString();i.clear();if(l===undefined){return o(e,"Inbound: Malformed CHANNEL_OPEN_FAILURE packet")}e._debug&&e._debug(`Inbound: CHANNEL_OPEN_FAILURE (r:${n})`);const u=e._handlers.CHANNEL_OPEN_FAILURE;u&&u(e,n,s,h)},[f.CHANNEL_WINDOW_ADJUST]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readUInt32BE();i.clear();if(s===undefined){return o(e,"Inbound: Malformed CHANNEL_WINDOW_ADJUST packet")}e._debug&&e._debug(`Inbound: CHANNEL_WINDOW_ADJUST (r:${n}, ${s})`);const h=e._handlers.CHANNEL_WINDOW_ADJUST;h&&h(e,n,s)},[f.CHANNEL_DATA]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readString();i.clear();if(s===undefined){return o(e,"Inbound: Malformed CHANNEL_DATA packet")}e._debug&&e._debug(`Inbound: CHANNEL_DATA (r:${n}, ${s.length})`);const h=e._handlers.CHANNEL_DATA;h&&h(e,n,s)},[f.CHANNEL_EXTENDED_DATA]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readUInt32BE();const h=i.readString();i.clear();if(h===undefined){return o(e,"Inbound: Malformed CHANNEL_EXTENDED_DATA packet")}e._debug&&e._debug(`Inbound: CHANNEL_EXTENDED_DATA (r:${n}, ${h.length})`);const l=e._handlers.CHANNEL_EXTENDED_DATA;l&&l(e,n,h,s)},[f.CHANNEL_EOF]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();i.clear();if(n===undefined){return o(e,"Inbound: Malformed CHANNEL_EOF packet")}e._debug&&e._debug(`Inbound: CHANNEL_EOF (r:${n})`);const s=e._handlers.CHANNEL_EOF;s&&s(e,n)},[f.CHANNEL_CLOSE]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();i.clear();if(n===undefined){return o(e,"Inbound: Malformed CHANNEL_CLOSE packet")}e._debug&&e._debug(`Inbound: CHANNEL_CLOSE (r:${n})`);const s=e._handlers.CHANNEL_CLOSE;s&&s(e,n)},[f.CHANNEL_REQUEST]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();const s=i.readString(true);const h=i.readBool();let l;if(h!==undefined){switch(s){case"exit-status":l=i.readUInt32BE();e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: ${l})`);break;case"exit-signal":{let t;let o;if(e._compatFlags&g.OLD_EXIT){const e=i.readUInt32BE();switch(e){case 1:t="HUP";break;case 2:t="INT";break;case 3:t="QUIT";break;case 6:t="ABRT";break;case 9:t="KILL";break;case 14:t="ALRM";break;case 15:t="TERM";break;default:if(e!==undefined){t=`UNKNOWN (${e})`}}o=false}else{t=i.readString(true);o=i.readBool();if(o===undefined)t=undefined}const h=i.readString(true);if(i.skipString()!==undefined)l={signal:t,coreDumped:o,errorMessage:h};e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: ${t})`);break}case"pty-req":{const t=i.readString(true);const o=i.readUInt32BE();const h=i.readUInt32BE();const u=i.readUInt32BE();const g=i.readUInt32BE();const f=i.readString();if(f!==undefined){i.init(f,1);let e={};while(i.avail()){const t=i.readByte();if(t===E.TTY_OP_END)break;const n=C[t];const s=i.readUInt32BE();if(t===undefined||n===undefined||s===undefined){e=undefined;break}e[n]=s}if(e!==undefined)l={term:t,cols:o,rows:h,width:u,height:g,modes:e}}e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s})`);break}case"window-change":{const t=i.readUInt32BE();const o=i.readUInt32BE();const h=i.readUInt32BE();const u=i.readUInt32BE();if(u!==undefined)l={cols:t,rows:o,width:h,height:u};e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s})`);break}case"x11-req":{const t=i.readBool();const o=i.readString(true);const h=i.readString();const u=i.readUInt32BE();if(u!==undefined)l={single:t,protocol:o,cookie:h,screen:u};e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s})`);break}case"env":{const t=i.readString(true);const o=i.readString(true);if(o!==undefined)l={name:t,value:o};if(e._debug){e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: `+`${t}=${o})`)}break}case"shell":l=null;e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s})`);break;case"exec":l=i.readString(true);e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: ${l})`);break;case"subsystem":l=i.readString(true);e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: ${l})`);break;case"signal":l=i.readString(true);e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: ${l})`);break;case"xon-xoff":l=i.readBool();e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s}: ${l})`);break;case"auth-agent-req@openssh.com":l=null;e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s})`);break;default:l=i.avail()?i.readRaw():null;e._debug&&e._debug(`Inbound: CHANNEL_REQUEST (r:${n}, ${s})`)}}i.clear();if(l===undefined){return o(e,"Inbound: Malformed CHANNEL_REQUEST packet")}const u=e._handlers.CHANNEL_REQUEST;u&&u(e,n,s,h,l)},[f.CHANNEL_SUCCESS]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();i.clear();if(n===undefined){return o(e,"Inbound: Malformed CHANNEL_SUCCESS packet")}e._debug&&e._debug(`Inbound: CHANNEL_SUCCESS (r:${n})`);const s=e._handlers.CHANNEL_SUCCESS;s&&s(e,n)},[f.CHANNEL_FAILURE]:(e,t)=>{i.init(t,1);const n=i.readUInt32BE();i.clear();if(n===undefined){return o(e,"Inbound: Malformed CHANNEL_FAILURE packet")}e._debug&&e._debug(`Inbound: CHANNEL_FAILURE (r:${n})`);const s=e._handlers.CHANNEL_FAILURE;s&&s(e,n)}}},4126:(e,t,n)=>{"use strict";const{createDiffieHellman:s,createDiffieHellmanGroup:i,createECDH:o,createHash:h,createPublicKey:l,diffieHellman:u,generateKeyPairSync:g,randomFillSync:f}=n(6113);const{Ber:E}=n(970);const{COMPAT:I,curve25519Supported:C,DEFAULT_KEX:B,DEFAULT_SERVER_HOST_KEY:Q,DEFAULT_CIPHER:p,DEFAULT_MAC:y,DEFAULT_COMPRESSION:w,DISCONNECT_REASON:b,MESSAGE:R}=n(6832);const{CIPHER_INFO:k,createCipher:_,createDecipher:D,MAC_INFO:U}=n(5708);const{parseDERKey:L}=n(2218);const{bufferFill:v,bufferParser:T,convertSignature:O,doFatalError:P,FastBuffer:x,sigSSHToASN1:Y,writeUInt32BE:G}=n(9475);const{PacketReader:J,PacketWriter:W,ZlibPacketReader:V,ZlibPacketWriter:q}=n(6715);let j;const z=2048;const $=8192;const ee=Buffer.alloc(0);function kexinit(e){let t;if(e._compatFlags&I.BAD_DHGEX){const n=e._offer.lists.kex;let s=n.array;let i=false;for(let e=0;eS cipher: ${Q}`);E&&E(`Handshake: (remote) C->S cipher: ${h.cs.cipher}`);if(e._server){g=Q;u=h.cs.cipher}else{g=h.cs.cipher;u=Q}for(f=0;fS cipher");return P(e,"Handshake failed: no matching C->S cipher","handshake",b.KEY_EXCHANGE_FAILED)}n.cs.cipher=u[f];E&&E(`Handshake: C->S Cipher: ${u[f]}`);const p=o.lists.sc.cipher.array;E&&E(`Handshake: (local) S->C cipher: ${p}`);E&&E(`Handshake: (remote) S->C cipher: ${h.sc.cipher}`);if(e._server){g=p;u=h.sc.cipher}else{g=h.sc.cipher;u=p}for(f=0;fC cipher");return P(e,"Handshake failed: no matching S->C cipher","handshake",b.KEY_EXCHANGE_FAILED)}n.sc.cipher=u[f];E&&E(`Handshake: S->C cipher: ${u[f]}`);const y=o.lists.cs.mac.array;E&&E(`Handshake: (local) C->S MAC: ${y}`);E&&E(`Handshake: (remote) C->S MAC: ${h.cs.mac}`);if(k[n.cs.cipher].authLen>0){n.cs.mac="";E&&E("Handshake: C->S MAC: ")}else{if(e._server){g=y;u=h.cs.mac}else{g=h.cs.mac;u=y}for(f=0;fS MAC");return P(e,"Handshake failed: no matching C->S MAC","handshake",b.KEY_EXCHANGE_FAILED)}n.cs.mac=u[f];E&&E(`Handshake: C->S MAC: ${u[f]}`)}const w=o.lists.sc.mac.array;E&&E(`Handshake: (local) S->C MAC: ${w}`);E&&E(`Handshake: (remote) S->C MAC: ${h.sc.mac}`);if(k[n.sc.cipher].authLen>0){n.sc.mac="";E&&E("Handshake: S->C MAC: ")}else{if(e._server){g=w;u=h.sc.mac}else{g=h.sc.mac;u=w}for(f=0;fC MAC");return P(e,"Handshake failed: no matching S->C MAC","handshake",b.KEY_EXCHANGE_FAILED)}n.sc.mac=u[f];E&&E(`Handshake: S->C MAC: ${u[f]}`)}const R=o.lists.cs.compress.array;E&&E(`Handshake: (local) C->S compression: ${R}`);E&&E(`Handshake: (remote) C->S compression: ${h.cs.compress}`);if(e._server){g=R;u=h.cs.compress}else{g=h.cs.compress;u=R}for(f=0;fS compression");return P(e,"Handshake failed: no matching C->S compression","handshake",b.KEY_EXCHANGE_FAILED)}n.cs.compress=u[f];E&&E(`Handshake: C->S compression: ${u[f]}`);const _=o.lists.sc.compress.array;E&&E(`Handshake: (local) S->C compression: ${_}`);E&&E(`Handshake: (remote) S->C compression: ${h.sc.compress}`);if(e._server){g=_;u=h.sc.compress}else{g=h.sc.compress;u=_}for(f=0;fC compression");return P(e,"Handshake failed: no matching S->C compression","handshake",b.KEY_EXCHANGE_FAILED)}n.sc.compress=u[f];E&&E(`Handshake: S->C compression: ${u[f]}`);n.cs.lang="";n.sc.lang="";if(e._kex){if(!e._kexinit){kexinit(e)}e._decipher._onPayload=onKEXPayload.bind(e,{firstPacket:false})}e._kex=te(n,e,t);e._kex.remoteExtInfoEnabled=C;e._kex.start()}const te=(()=>{function convertToMpint(e){let t=0;let n=e.length;while(e[t]===0){++t;--n}let s;if(e[t]&128){s=Buffer.allocUnsafe(1+n);s[0]=0;e.copy(s,1,t);e=s}else if(n!==e.length){s=Buffer.allocUnsafe(n);e.copy(s,0,t);e=s}return e}class KeyExchange{constructor(e,t,n){this._protocol=t;this.sessionID=t._kex?t._kex.sessionID:undefined;this.negotiated=e;this.remoteExtInfoEnabled=false;this._step=1;this._public=null;this._dh=null;this._sentNEWKEYS=false;this._receivedNEWKEYS=false;this._finished=false;this._hostVerified=false;this._kexinit=t._kexinit;this._remoteKexinit=n;this._identRaw=t._identRaw;this._remoteIdentRaw=t._remoteIdentRaw;this._hostKey=undefined;this._dhData=undefined;this._sig=undefined}finish(e){if(this._finished)return false;this._finished=true;const t=this._protocol._server;const n=this.negotiated;const s=this.convertPublicKey(this._dhData);let i=this.computeSecret(this._dhData);if(i instanceof Error){i.message=`Error while computing DH secret (${this.type}): ${i.message}`;i.level="handshake";return P(this._protocol,i,b.KEY_EXCHANGE_FAILED)}const o=h(this.hashName);re(o,t?this._remoteIdentRaw:this._identRaw);re(o,t?this._identRaw:this._remoteIdentRaw);re(o,t?this._remoteKexinit:this._kexinit);re(o,t?this._kexinit:this._remoteKexinit);const l=t?this._hostKey.getPublicSSH():this._hostKey;re(o,l);if(this.type==="groupex"){const e=this.getDHParams();const t=Buffer.allocUnsafe(4);G(t,this._minBits,0);o.update(t);G(t,this._prefBits,0);o.update(t);G(t,this._maxBits,0);o.update(t);re(o,e.prime);re(o,e.generator)}re(o,t?s:this.getPublicKey());const u=t?this.getPublicKey():s;re(o,u);re(o,i);const g=o.digest();if(!t){T.init(this._sig,0);const e=T.readString(true);if(!e){return P(this._protocol,"Malformed packet while reading signature","handshake",b.KEY_EXCHANGE_FAILED)}if(e!==n.serverHostKey){return P(this._protocol,`Wrong signature type: ${e}, `+`expected: ${n.serverHostKey}`,"handshake",b.KEY_EXCHANGE_FAILED)}let t=T.readString();T.clear();if(t===undefined){return P(this._protocol,"Malformed packet while reading signature","handshake",b.KEY_EXCHANGE_FAILED)}if(!(t=Y(t,e))){return P(this._protocol,"Malformed signature","handshake",b.KEY_EXCHANGE_FAILED)}let s;{T.init(this._hostKey,0);const e=T.readString(true);const t=this._hostKey.slice(T.pos());T.clear();s=L(t,e);if(s instanceof Error){s.level="handshake";return P(this._protocol,s,b.KEY_EXCHANGE_FAILED)}}let i;switch(this.negotiated.serverHostKey){case"rsa-sha2-256":i="sha256";break;case"rsa-sha2-512":i="sha512";break}this._protocol._debug&&this._protocol._debug("Verifying signature ...");const o=s.verify(g,t,i);if(o!==true){if(o instanceof Error){this._protocol._debug&&this._protocol._debug(`Signature verification failed: ${o.stack}`)}else{this._protocol._debug&&this._protocol._debug("Signature verification failed")}return P(this._protocol,"Handshake failed: signature verification failed","handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Verified signature")}else{let e;switch(this.negotiated.serverHostKey){case"rsa-sha2-256":e="sha256";break;case"rsa-sha2-512":e="sha512";break}this._protocol._debug&&this._protocol._debug("Generating signature ...");let t=this._hostKey.sign(g,e);if(t instanceof Error){return P(this._protocol,"Handshake failed: signature generation failed for "+`${this._hostKey.type} host key: ${t.message}`,"handshake",b.KEY_EXCHANGE_FAILED)}t=O(t,this._hostKey.type);if(t===false){return P(this._protocol,"Handshake failed: signature conversion failed for "+`${this._hostKey.type} host key`,"handshake",b.KEY_EXCHANGE_FAILED)}const n=this.negotiated.serverHostKey;const s=Buffer.byteLength(n);const i=4+s+4+t.length;let o=this._protocol._packetRW.write.allocStartKEX;const h=this._protocol._packetRW.write.alloc(1+4+l.length+4+u.length+4+i,true);h[o]=R.KEXDH_REPLY;G(h,l.length,++o);h.set(l,o+=4);G(h,u.length,o+=l.length);h.set(u,o+=4);G(h,i,o+=u.length);G(h,s,o+=4);h.utf8Write(n,o+=4,s);G(h,t.length,o+=s);h.set(t,o+=4);if(this._protocol._debug){let e;switch(this.type){case"group":e="KEXDH_REPLY";break;case"groupex":e="KEXDH_GEX_REPLY";break;default:e="KEXECDH_REPLY"}this._protocol._debug(`Outbound: Sending ${e}`)}this._protocol._cipher.encrypt(this._protocol._packetRW.write.finalize(h,true))}if(t||!e)trySendNEWKEYS(this);let f;let E;const completeHandshake=e=>{if(f){trySendNEWKEYS(this);f.outbound.seqno=this._protocol._cipher.outSeqno;this._protocol._cipher.free();this._protocol._cipher=_(f);this._protocol._packetRW.write=E;f=undefined;E=undefined;this._protocol._onHandshakeComplete(n);return false}if(!this.sessionID)this.sessionID=g;{const e=Buffer.allocUnsafe(4+i.length);G(e,i.length,0);e.set(i,4);i=e}const s=k[n.cs.cipher];const o=k[n.sc.cipher];const h=generateKEXVal(s.ivLen,this.hashName,i,g,this.sessionID,"A");const l=generateKEXVal(o.ivLen,this.hashName,i,g,this.sessionID,"B");const u=generateKEXVal(s.keyLen,this.hashName,i,g,this.sessionID,"C");const I=generateKEXVal(o.keyLen,this.hashName,i,g,this.sessionID,"D");let C;let B;if(!s.authLen){C=U[n.cs.mac];B=generateKEXVal(C.len,this.hashName,i,g,this.sessionID,"E")}let Q;let p;if(!o.authLen){Q=U[n.sc.mac];p=generateKEXVal(Q.len,this.hashName,i,g,this.sessionID,"F")}const y={inbound:{onPayload:this._protocol._onPayload,seqno:this._protocol._decipher.inSeqno,decipherInfo:!t?o:s,decipherIV:!t?l:h,decipherKey:!t?I:u,macInfo:!t?Q:C,macKey:!t?p:B},outbound:{onWrite:this._protocol._onWrite,seqno:this._protocol._cipher.outSeqno,cipherInfo:t?o:s,cipherIV:t?l:h,cipherKey:t?I:u,macInfo:t?Q:C,macKey:t?p:B}};this._protocol._decipher.free();f=y;this._protocol._decipher=D(y);const w={read:undefined,write:undefined};switch(n.cs.compress){case"zlib":if(t)w.read=new V;else w.write=new q(this._protocol);break;case"zlib@openssh.com":if(this._protocol._authenticated){if(t)w.read=new V;else w.write=new q(this._protocol);break}default:if(t)w.read=new J;else w.write=new W(this._protocol)}switch(n.sc.compress){case"zlib":if(t)w.write=new q(this._protocol);else w.read=new V;break;case"zlib@openssh.com":if(this._protocol._authenticated){if(t)w.write=new q(this._protocol);else w.read=new V;break}default:if(t)w.write=new W(this._protocol);else w.read=new J}this._protocol._packetRW.read.cleanup();this._protocol._packetRW.write.cleanup();this._protocol._packetRW.read=w.read;E=w.write;this._public=null;this._dh=null;this._kexinit=this._protocol._kexinit=undefined;this._remoteKexinit=undefined;this._identRaw=undefined;this._remoteIdentRaw=undefined;this._hostKey=undefined;this._dhData=undefined;this._sig=undefined;if(!e)return completeHandshake();return false};if(t||e)this.finish=completeHandshake;if(!t)return completeHandshake(e)}start(){if(!this._protocol._server){if(this._protocol._debug){let e;switch(this.type){case"group":e="KEXDH_INIT";break;default:e="KEXECDH_INIT"}this._protocol._debug(`Outbound: Sending ${e}`)}const e=this.getPublicKey();let t=this._protocol._packetRW.write.allocStartKEX;const n=this._protocol._packetRW.write.alloc(1+4+e.length,true);n[t]=R.KEXDH_INIT;G(n,e.length,++t);n.set(e,t+=4);this._protocol._cipher.encrypt(this._protocol._packetRW.write.finalize(n,true))}}getPublicKey(){this.generateKeys();const e=this._public;if(e)return this.convertPublicKey(e)}convertPublicKey(e){let t;let n=0;let s=e.length;while(e[n]===0){++n;--s}if(e[n]&128){t=Buffer.allocUnsafe(1+s);t[0]=0;e.copy(t,1,n);return t}if(s!==e.length){t=Buffer.allocUnsafe(s);e.copy(t,0,n);e=t}return e}computeSecret(e){this.generateKeys();try{return convertToMpint(this._dh.computeSecret(e))}catch(e){return e}}parse(e){const t=e[0];switch(this._step){case 1:if(this._protocol._server){if(t!==R.KEXDH_INIT){return P(this._protocol,`Received packet ${t} instead of ${R.KEXDH_INIT}`,"handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Received DH Init");T.init(e,1);const n=T.readString();T.clear();if(n===undefined){return P(this._protocol,"Received malformed KEX*_INIT","handshake",b.KEY_EXCHANGE_FAILED)}this._dhData=n;let s=this._protocol._hostKeys[this.negotiated.serverHostKey];if(Array.isArray(s))s=s[0];this._hostKey=s;this.finish()}else{if(t!==R.KEXDH_REPLY){return P(this._protocol,`Received packet ${t} instead of ${R.KEXDH_REPLY}`,"handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Received DH Reply");T.init(e,1);let n;let s;let i;if((n=T.readString())===undefined||(s=T.readString())===undefined||(i=T.readString())===undefined){T.clear();return P(this._protocol,"Received malformed KEX*_REPLY","handshake",b.KEY_EXCHANGE_FAILED)}T.clear();T.init(n,0);const o=T.readString(true);T.clear();if(o===undefined){return P(this._protocol,"Received malformed host public key","handshake",b.KEY_EXCHANGE_FAILED)}if(o!==this.negotiated.serverHostKey){switch(this.negotiated.serverHostKey){case"rsa-sha2-256":case"rsa-sha2-512":if(o==="ssh-rsa")break;default:return P(this._protocol,"Host key does not match negotiated type","handshake",b.KEY_EXCHANGE_FAILED)}}this._hostKey=n;this._dhData=s;this._sig=i;let h=false;let l;if(this._protocol._hostVerifier===undefined){l=true;this._protocol._debug&&this._protocol._debug("Host accepted by default (no verification)")}else{l=this._protocol._hostVerifier(n,(e=>{if(h)return;h=true;if(e===false){this._protocol._debug&&this._protocol._debug("Host denied (verification failed)");return P(this._protocol,"Host denied (verification failed)","handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Host accepted (verified)");this._hostVerified=true;if(this._receivedNEWKEYS)this.finish();else trySendNEWKEYS(this)}))}if(l===undefined){++this._step;return}h=true;if(l===false){this._protocol._debug&&this._protocol._debug("Host denied (verification failed)");return P(this._protocol,"Host denied (verification failed)","handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Host accepted (verified)");this._hostVerified=true;trySendNEWKEYS(this)}++this._step;break;case 2:if(t!==R.NEWKEYS){return P(this._protocol,`Received packet ${t} instead of ${R.NEWKEYS}`,"handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Inbound: NEWKEYS");this._receivedNEWKEYS=true;++this._step;return this.finish(!this._protocol._server&&!this._hostVerified);default:return P(this._protocol,`Received unexpected packet ${t} after NEWKEYS`,"handshake",b.KEY_EXCHANGE_FAILED)}}}class Curve25519Exchange extends KeyExchange{constructor(e,...t){super(...t);this.type="25519";this.hashName=e;this._keys=null}generateKeys(){if(!this._keys)this._keys=g("x25519")}getPublicKey(){this.generateKeys();const e=this._keys.publicKey.export({type:"spki",format:"der"});return e.slice(-32)}convertPublicKey(e){let t;let n=0;let s=e.length;while(e[n]===0){++n;--s}if(e.length===32)return e;if(s!==e.length){t=Buffer.allocUnsafe(s);e.copy(t,0,n);e=t}return e}computeSecret(e){this.generateKeys();try{const t=new E.Writer;t.startSequence();t.startSequence();t.writeOID("1.3.101.110");t.endSequence();t.startSequence(E.BitString);t.writeByte(0);t._ensure(e.length);e.copy(t._buf,t._offset,0,e.length);t._offset+=e.length;t.endSequence();t.endSequence();return convertToMpint(u({privateKey:this._keys.privateKey,publicKey:l({key:t.buffer,type:"spki",format:"der"})}))}catch(e){return e}}}class ECDHExchange extends KeyExchange{constructor(e,t,...n){super(...n);this.type="ecdh";this.curveName=e;this.hashName=t}generateKeys(){if(!this._dh){this._dh=o(this.curveName);this._public=this._dh.generateKeys()}}}class DHGroupExchange extends KeyExchange{constructor(e,...t){super(...t);this.type="groupex";this.hashName=e;this._prime=null;this._generator=null;this._minBits=z;this._prefBits=dhEstimate(this.negotiated);if(this._protocol._compatFlags&I.BUG_DHGEX_LARGE)this._prefBits=Math.min(this._prefBits,4096);this._maxBits=$}start(){if(this._protocol._server)return;this._protocol._debug&&this._protocol._debug("Outbound: Sending KEXDH_GEX_REQUEST");let e=this._protocol._packetRW.write.allocStartKEX;const t=this._protocol._packetRW.write.alloc(1+4+4+4,true);t[e]=R.KEXDH_GEX_REQUEST;G(t,this._minBits,++e);G(t,this._prefBits,e+=4);G(t,this._maxBits,e+=4);this._protocol._cipher.encrypt(this._protocol._packetRW.write.finalize(t,true))}generateKeys(){if(!this._dh&&this._prime&&this._generator){this._dh=s(this._prime,this._generator);this._public=this._dh.generateKeys()}}setDHParams(e,t){if(!Buffer.isBuffer(e))throw new Error("Invalid prime value");if(!Buffer.isBuffer(t))throw new Error("Invalid generator value");this._prime=e;this._generator=t}getDHParams(){if(this._dh){return{prime:convertToMpint(this._dh.getPrime()),generator:convertToMpint(this._dh.getGenerator())}}}parse(e){const t=e[0];switch(this._step){case 1:{if(this._protocol._server){if(t!==R.KEXDH_GEX_REQUEST){return P(this._protocol,`Received packet ${t} instead of `+R.KEXDH_GEX_REQUEST,"handshake",b.KEY_EXCHANGE_FAILED)}return P(this._protocol,"Group exchange not implemented for server","handshake",b.KEY_EXCHANGE_FAILED)}if(t!==R.KEXDH_GEX_GROUP){return P(this._protocol,`Received packet ${t} instead of ${R.KEXDH_GEX_GROUP}`,"handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Received DH GEX Group");T.init(e,1);let n;let s;if((n=T.readString())===undefined||(s=T.readString())===undefined){T.clear();return P(this._protocol,"Received malformed KEXDH_GEX_GROUP","handshake",b.KEY_EXCHANGE_FAILED)}T.clear();this.setDHParams(n,s);this.generateKeys();const i=this.getPublicKey();this._protocol._debug&&this._protocol._debug("Outbound: Sending KEXDH_GEX_INIT");let o=this._protocol._packetRW.write.allocStartKEX;const h=this._protocol._packetRW.write.alloc(1+4+i.length,true);h[o]=R.KEXDH_GEX_INIT;G(h,i.length,++o);h.set(i,o+=4);this._protocol._cipher.encrypt(this._protocol._packetRW.write.finalize(h,true));++this._step;break}case 2:if(this._protocol._server){if(t!==R.KEXDH_GEX_INIT){return P(this._protocol,`Received packet ${t} instead of ${R.KEXDH_GEX_INIT}`,"handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Received DH GEX Init");return P(this._protocol,"Group exchange not implemented for server","handshake",b.KEY_EXCHANGE_FAILED)}else if(t!==R.KEXDH_GEX_REPLY){return P(this._protocol,`Received packet ${t} instead of ${R.KEXDH_GEX_REPLY}`,"handshake",b.KEY_EXCHANGE_FAILED)}this._protocol._debug&&this._protocol._debug("Received DH GEX Reply");this._step=1;e[0]=R.KEXDH_REPLY;this.parse=KeyExchange.prototype.parse;this.parse(e)}}}class DHExchange extends KeyExchange{constructor(e,t,...n){super(...n);this.type="group";this.groupName=e;this.hashName=t}start(){if(!this._protocol._server){this._protocol._debug&&this._protocol._debug("Outbound: Sending KEXDH_INIT");const e=this.getPublicKey();let t=this._protocol._packetRW.write.allocStartKEX;const n=this._protocol._packetRW.write.alloc(1+4+e.length,true);n[t]=R.KEXDH_INIT;G(n,e.length,++t);n.set(e,t+=4);this._protocol._cipher.encrypt(this._protocol._packetRW.write.finalize(n,true))}}generateKeys(){if(!this._dh){this._dh=i(this.groupName);this._public=this._dh.generateKeys()}}getDHParams(){if(this._dh){return{prime:convertToMpint(this._dh.getPrime()),generator:convertToMpint(this._dh.getGenerator())}}}}return(e,...t)=>{if(typeof e!=="object"||e===null)throw new Error("Invalid negotiated argument");const n=e.kex;if(typeof n==="string"){t=[e,...t];switch(n){case"curve25519-sha256":case"curve25519-sha256@libssh.org":if(!C)break;return new Curve25519Exchange("sha256",...t);case"ecdh-sha2-nistp256":return new ECDHExchange("prime256v1","sha256",...t);case"ecdh-sha2-nistp384":return new ECDHExchange("secp384r1","sha384",...t);case"ecdh-sha2-nistp521":return new ECDHExchange("secp521r1","sha512",...t);case"diffie-hellman-group1-sha1":return new DHExchange("modp2","sha1",...t);case"diffie-hellman-group14-sha1":return new DHExchange("modp14","sha1",...t);case"diffie-hellman-group14-sha256":return new DHExchange("modp14","sha256",...t);case"diffie-hellman-group15-sha512":return new DHExchange("modp15","sha512",...t);case"diffie-hellman-group16-sha512":return new DHExchange("modp16","sha512",...t);case"diffie-hellman-group17-sha512":return new DHExchange("modp17","sha512",...t);case"diffie-hellman-group18-sha512":return new DHExchange("modp18","sha512",...t);case"diffie-hellman-group-exchange-sha1":return new DHGroupExchange("sha1",...t);case"diffie-hellman-group-exchange-sha256":return new DHGroupExchange("sha256",...t)}throw new Error(`Unsupported key exchange algorithm: ${n}`)}throw new Error(`Invalid key exchange type: ${n}`)}})();const Ae=(()=>{const e=["kex","serverHostKey",["cs","cipher"],["sc","cipher"],["cs","mac"],["sc","mac"],["cs","compress"],["sc","compress"],["cs","lang"],["sc","lang"]];return class KexInit{constructor(t){if(typeof t!=="object"||t===null)throw new TypeError("Argument must be an object");const n={kex:undefined,serverHostKey:undefined,cs:{cipher:undefined,mac:undefined,compress:undefined,lang:undefined},sc:{cipher:undefined,mac:undefined,compress:undefined,lang:undefined},all:undefined};let s=0;for(const i of e){let e;let o;let h;let l;if(typeof i==="string"){e=n;o=t[i];h=l=i}else{const s=i[0];e=n[s];l=i[1];o=t[s][l];h=`${s}.${l}`}const u={array:undefined,buffer:undefined};if(Buffer.isBuffer(o)){u.array=(""+o).split(",");u.buffer=o;s+=4+o.length}else{if(typeof o==="string")o=o.split(",");if(Array.isArray(o)){u.array=o;u.buffer=Buffer.from(o.join(","))}else{throw new TypeError(`Invalid \`${h}\` type: ${typeof o}`)}s+=4+u.buffer.length}e[l]=u}const i=Buffer.allocUnsafe(s);n.all=i;let o=0;for(const t of e){let e;if(typeof t==="string")e=n[t].buffer;else e=n[t[0]][t[1]].buffer;o=G(i,e.length,o);i.set(e,o);o+=e.length}this.totalSize=s;this.lists=n}copyAllTo(e,t){const n=this.lists.all;if(typeof t!=="number")throw new TypeError(`Invalid offset value: ${typeof t}`);if(e.length-t{const e=Buffer.allocUnsafe(4);return(t,n)=>{G(e,n.length,0);t.update(e);t.update(n)}})();function generateKEXVal(e,t,n,s,i,o){let l;if(e){let u=h(t).update(n).update(s).update(o).update(i).digest();while(u.length49){return P(this,`Received unexpected packet type ${s}`,"handshake",b.KEY_EXCHANGE_FAILED)}}return this._kex.parse(t)}function dhEstimate(e){const t=k[e.cs.cipher];const n=k[e.sc.cipher];const s=Math.max(0,t.sslName==="des-ede3-cbc"?14:t.keyLen,t.blockLen,t.ivLen,n.sslName==="des-ede3-cbc"?14:n.keyLen,n.blockLen,n.ivLen)*8;if(s<=112)return 2048;if(s<=128)return 3072;if(s<=192)return 7680;return 8192}function trySendNEWKEYS(e){if(!e._sentNEWKEYS){e._protocol._debug&&e._protocol._debug("Outbound: Sending NEWKEYS");const t=e._protocol._packetRW.write.allocStartKEX;const n=e._protocol._packetRW.write.alloc(1,true);n[t]=R.NEWKEYS;e._protocol._cipher.encrypt(e._protocol._packetRW.write.finalize(n,true));e._sentNEWKEYS=true}}e.exports={KexInit:Ae,kexinit:kexinit,onKEXPayload:onKEXPayload,DEFAULT_KEXINIT_CLIENT:new Ae({kex:B.concat(["ext-info-c"]),serverHostKey:Q,cs:{cipher:p,mac:y,compress:w,lang:[]},sc:{cipher:p,mac:y,compress:w,lang:[]}}),DEFAULT_KEXINIT_SERVER:new Ae({kex:B,serverHostKey:Q,cs:{cipher:p,mac:y,compress:w,lang:[]},sc:{cipher:p,mac:y,compress:w,lang:[]}}),HANDLERS:{[R.KEXINIT]:handleKexInit}}},2218:(e,t,n)=>{"use strict";const{createDecipheriv:s,createECDH:i,createHash:o,createHmac:h,createSign:l,createVerify:u,getCiphers:g,sign:f,verify:E}=n(6113);const I=g();const{Ber:C}=n(970);const B=n(5447).pbkdf;const{CIPHER_INFO:Q}=n(5708);const{eddsaSupported:p,SUPPORTED_CIPHER:y}=n(6832);const{bufferSlice:w,makeBufferParser:b,readString:R,readUInt32BE:k,writeUInt32BE:_}=n(9475);const D=Symbol("Hash Algorithm");const U=Symbol("Private key PEM");const L=Symbol("Public key PEM");const v=Symbol("Public key SSH");const T=Symbol("Decrypted Key");const O=Object.create(null);{const e=Object.keys(Q);for(let t=0;t=n||t<4)return false;const i=k(e,s);if(t<4+i)return false;s+=4+i}e._pos=s;return true}function genOpenSSLRSAPub(e,t){const n=new C.Writer;n.startSequence();n.startSequence();n.writeOID("1.2.840.113549.1.1.1");n.writeNull();n.endSequence();n.startSequence(C.BitString);n.writeByte(0);n.startSequence();n.writeBuffer(e,C.Integer);n.writeBuffer(t,C.Integer);n.endSequence();n.endSequence();n.endSequence();return makePEM("PUBLIC",n.buffer)}function genOpenSSHRSAPub(e,t){const n=Buffer.allocUnsafe(4+7+4+t.length+4+e.length);_(n,7,0);n.utf8Write("ssh-rsa",4,7);let s=4+7;_(n,t.length,s);n.set(t,s+=4);_(n,e.length,s+=t.length);n.set(e,s+4);return n}const x=(()=>{function genRSAASN1Buf(e,t,n,s,i,o,h,l){const u=new C.Writer;u.startSequence();u.writeInt(0,C.Integer);u.writeBuffer(e,C.Integer);u.writeBuffer(t,C.Integer);u.writeBuffer(n,C.Integer);u.writeBuffer(s,C.Integer);u.writeBuffer(i,C.Integer);u.writeBuffer(o,C.Integer);u.writeBuffer(h,C.Integer);u.writeBuffer(l,C.Integer);u.endSequence();return u.buffer}function bigIntFromBuffer(e){return BigInt(`0x${e.hexSlice(0,e.length)}`)}function bigIntToBuffer(e){let t=e.toString(16);if((t.length&1)!==0){t=`0${t}`}else{const e=t.charCodeAt(0);if(e===56||e===57||e>=97&&e<=102){t=`00${t}`}}return Buffer.from(t,"hex")}return function genOpenSSLRSAPriv(e,t,n,s,i,o){const h=bigIntFromBuffer(n);const l=bigIntToBuffer(h%(bigIntFromBuffer(i)-1n));const u=bigIntToBuffer(h%(bigIntFromBuffer(o)-1n));return makePEM("RSA PRIVATE",genRSAASN1Buf(e,t,n,i,o,l,u,s))}})();function genOpenSSLDSAPub(e,t,n,s){const i=new C.Writer;i.startSequence();i.startSequence();i.writeOID("1.2.840.10040.4.1");i.startSequence();i.writeBuffer(e,C.Integer);i.writeBuffer(t,C.Integer);i.writeBuffer(n,C.Integer);i.endSequence();i.endSequence();i.startSequence(C.BitString);i.writeByte(0);i.writeBuffer(s,C.Integer);i.endSequence();i.endSequence();return makePEM("PUBLIC",i.buffer)}function genOpenSSHDSAPub(e,t,n,s){const i=Buffer.allocUnsafe(4+7+4+e.length+4+t.length+4+n.length+4+s.length);_(i,7,0);i.utf8Write("ssh-dss",4,7);let o=4+7;_(i,e.length,o);i.set(e,o+=4);_(i,t.length,o+=e.length);i.set(t,o+=4);_(i,n.length,o+=t.length);i.set(n,o+=4);_(i,s.length,o+=n.length);i.set(s,o+4);return i}function genOpenSSLDSAPriv(e,t,n,s,i){const o=new C.Writer;o.startSequence();o.writeInt(0,C.Integer);o.writeBuffer(e,C.Integer);o.writeBuffer(t,C.Integer);o.writeBuffer(n,C.Integer);o.writeBuffer(s,C.Integer);o.writeBuffer(i,C.Integer);o.endSequence();return makePEM("DSA PRIVATE",o.buffer)}function genOpenSSLEdPub(e){const t=new C.Writer;t.startSequence();t.startSequence();t.writeOID("1.3.101.112");t.endSequence();t.startSequence(C.BitString);t.writeByte(0);t._ensure(e.length);t._buf.set(e,t._offset);t._offset+=e.length;t.endSequence();t.endSequence();return makePEM("PUBLIC",t.buffer)}function genOpenSSHEdPub(e){const t=Buffer.allocUnsafe(4+11+4+e.length);_(t,11,0);t.utf8Write("ssh-ed25519",4,11);_(t,e.length,15);t.set(e,19);return t}function genOpenSSLEdPriv(e){const t=new C.Writer;t.startSequence();t.writeInt(0,C.Integer);t.startSequence();t.writeOID("1.3.101.112");t.endSequence();t.startSequence(C.OctetString);t.writeBuffer(e,C.OctetString);t.endSequence();t.endSequence();return makePEM("PRIVATE",t.buffer)}function genOpenSSLECDSAPub(e,t){const n=new C.Writer;n.startSequence();n.startSequence();n.writeOID("1.2.840.10045.2.1");n.writeOID(e);n.endSequence();n.startSequence(C.BitString);n.writeByte(0);n._ensure(t.length);n._buf.set(t,n._offset);n._offset+=t.length;n.endSequence();n.endSequence();return makePEM("PUBLIC",n.buffer)}function genOpenSSHECDSAPub(e,t){let n;switch(e){case"1.2.840.10045.3.1.7":n="nistp256";break;case"1.3.132.0.34":n="nistp384";break;case"1.3.132.0.35":n="nistp521";break;default:return}const s=Buffer.allocUnsafe(4+19+4+8+4+t.length);_(s,19,0);s.utf8Write(`ecdsa-sha2-${n}`,4,19);_(s,8,23);s.utf8Write(n,27,8);_(s,t.length,35);s.set(t,39);return s}function genOpenSSLECDSAPriv(e,t,n){const s=new C.Writer;s.startSequence();s.writeInt(1,C.Integer);s.writeBuffer(n,C.OctetString);s.startSequence(160);s.writeOID(e);s.endSequence();s.startSequence(161);s.startSequence(C.BitString);s.writeByte(0);s._ensure(t.length);s._buf.set(t,s._offset);s._offset+=t.length;s.endSequence();s.endSequence();s.endSequence();return makePEM("EC PRIVATE",s.buffer)}function genOpenSSLECDSAPubFromPriv(e,t){const n=i(e);n.setPrivateKey(t);return n.getPublicKey()}const Y={sign:(()=>{if(typeof f==="function"){return function sign(e,t){const n=this[U];if(n===null)return new Error("No private key available");if(!t||typeof t!=="string")t=this[D];try{return f(t,e,n)}catch(e){return e}}}return function sign(e,t){const n=this[U];if(n===null)return new Error("No private key available");if(!t||typeof t!=="string")t=this[D];const s=l(t);s.update(e);try{return s.sign(n)}catch(e){return e}}})(),verify:(()=>{if(typeof E==="function"){return function verify(e,t,n){const s=this[L];if(s===null)return new Error("No public key available");if(!n||typeof n!=="string")n=this[D];try{return E(n,e,s,t)}catch(e){return e}}}return function verify(e,t,n){const s=this[L];if(s===null)return new Error("No public key available");if(!n||typeof n!=="string")n=this[D];const i=u(n);i.update(e);try{return i.verify(s,t)}catch(e){return e}}})(),isPrivateKey:function isPrivateKey(){return this[U]!==null},getPrivatePEM:function getPrivatePEM(){return this[U]},getPublicPEM:function getPublicPEM(){return this[L]},getPublicSSH:function getPublicSSH(){return this[v]},equals:function equals(e){const t=parseKey(e);if(t instanceof Error)return false;return this.type===t.type&&this[U]===t[U]&&this[L]===t[L]&&this[v]===t[v]}};function OpenSSH_Private(e,t,n,s,i,o,h){this.type=e;this.comment=t;this[U]=n;this[L]=s;this[v]=i;this[D]=o;this[T]=h}OpenSSH_Private.prototype=Y;{const e=/^-----BEGIN OPENSSH PRIVATE KEY-----(?:\r\n|\n)([\s\S]+)(?:\r\n|\n)-----END OPENSSH PRIVATE KEY-----$/;OpenSSH_Private.parse=(t,n)=>{const i=e.exec(t);if(i===null)return null;let o;const h=Buffer.from(i[1],"base64");if(h.length<31)return new Error("Malformed OpenSSH private key");const l=h.utf8Slice(0,15);if(l!=="openssh-key-v1\0")return new Error(`Unsupported OpenSSH key magic: ${l}`);const u=R(h,15,true);if(u===undefined)return new Error("Malformed OpenSSH private key");if(u!=="none"&&y.indexOf(u)===-1)return new Error(`Unsupported cipher for OpenSSH key: ${u}`);const g=R(h,h._pos,true);if(g===undefined)return new Error("Malformed OpenSSH private key");if(g!=="none"){if(u==="none")return new Error("Malformed OpenSSH private key");if(g!=="bcrypt")return new Error(`Unsupported kdf name for OpenSSH key: ${g}`);if(!n){return new Error("Encrypted private OpenSSH key detected, but no passphrase given")}}else if(u!=="none"){return new Error("Malformed OpenSSH private key")}let f;let E;let I;if(u!=="none")f=Q[u];const C=R(h,h._pos);if(C===undefined)return new Error("Malformed OpenSSH private key");if(C.length){switch(g){case"none":return new Error("Malformed OpenSSH private key");case"bcrypt":{const e=R(C,0);if(e===undefined||C._pos+4>C.length)return new Error("Malformed OpenSSH private key");const t=k(C,C._pos);const s=Buffer.allocUnsafe(f.keyLen+f.ivLen);const i=B(n,n.length,e,e.length,s,s.length,t);if(i!==0)return new Error("Failed to generate information to decrypt key");E=w(s,0,f.keyLen);I=w(s,f.keyLen,s.length);break}}}else if(g!=="none"){return new Error("Malformed OpenSSH private key")}if(h._pos+3>=h.length)return new Error("Malformed OpenSSH private key");const p=k(h,h._pos);h._pos+=4;if(p>0){for(let e=0;e0){if(h.length-h._pos{const i=e.exec(t);if(i===null)return null;let h=Buffer.from(i[3],"base64");let l=i[2];let u=false;if(l!==undefined){l=l.split(/\r\n|\n/g);for(let e=0;eg.keyLen)C=w(C,0,g.keyLen);try{const e=s(l,C,f);e.setAutoPadding(false);h=combineBuffers(e.update(h),e.final());u=true}catch(e){return e}}}}let g;let f;let E;let B;let Q;let p;let y="Malformed OpenSSH private key";if(u)y+=". Bad passphrase?";switch(i[1]){case"RSA":g="ssh-rsa";f=makePEM("RSA PRIVATE",h);try{p=new C.Reader(h);p.readSequence();p.readInt();const e=p.readString(C.Integer,true);if(e===null)return new Error(y);const t=p.readString(C.Integer,true);if(t===null)return new Error(y);E=genOpenSSLRSAPub(e,t);B=genOpenSSHRSAPub(e,t)}catch{return new Error(y)}Q="sha1";break;case"DSA":g="ssh-dss";f=makePEM("DSA PRIVATE",h);try{p=new C.Reader(h);p.readSequence();p.readInt();const e=p.readString(C.Integer,true);if(e===null)return new Error(y);const t=p.readString(C.Integer,true);if(t===null)return new Error(y);const n=p.readString(C.Integer,true);if(n===null)return new Error(y);const s=p.readString(C.Integer,true);if(s===null)return new Error(y);E=genOpenSSLDSAPub(e,t,n,s);B=genOpenSSHDSAPub(e,t,n,s)}catch{return new Error(y)}Q="sha1";break;case"EC":{let e;let t;let n;try{p=new C.Reader(h);p.readSequence();p.readInt();t=p.readString(C.OctetString,true);p.readByte();const s=p.readLength();if(s!==null){p._offset=s;n=p.readOID();if(n===null)return new Error(y);switch(n){case"1.2.840.10045.3.1.7":e="prime256v1";g="ecdsa-sha2-nistp256";Q="sha256";break;case"1.3.132.0.34":e="secp384r1";g="ecdsa-sha2-nistp384";Q="sha384";break;case"1.3.132.0.35":e="secp521r1";g="ecdsa-sha2-nistp521";Q="sha512";break;default:return new Error(`Unsupported private key EC OID: ${n}`)}}else{return new Error(y)}}catch{return new Error(y)}f=makePEM("EC PRIVATE",h);const s=genOpenSSLECDSAPubFromPriv(e,t);E=genOpenSSLECDSAPub(n,s);B=genOpenSSHECDSAPub(n,s);break}}return new OpenSSH_Old_Private(g,"",f,E,B,Q,u)}}function PPK_Private(e,t,n,s,i,o,h){this.type=e;this.comment=t;this[U]=n;this[L]=s;this[v]=i;this[D]=o;this[T]=h}PPK_Private.prototype=Y;{const e=Buffer.alloc(0);const t=Buffer.from([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);const n=Buffer.from([0,0,0,0]);const i=Buffer.from([0,0,0,1]);const l=/^PuTTY-User-Key-File-2: (ssh-(?:rsa|dss))\r?\nEncryption: (aes256-cbc|none)\r?\nComment: ([^\r\n]*)\r?\nPublic-Lines: \d+\r?\n([\s\S]+?)\r?\nPrivate-Lines: \d+\r?\n([\s\S]+?)\r?\nPrivate-MAC: ([^\r\n]+)/;PPK_Private.parse=(u,g)=>{const f=l.exec(u);if(f===null)return null;const E=f[2];const I=E!=="none";if(I&&!g){return new Error("Encrypted PPK private key detected, but no passphrase given")}let C=Buffer.from(f[5],"base64");if(I){const e=Q[E];let h=combineBuffers(o("sha1").update(n).update(g).digest(),o("sha1").update(i).update(g).digest());if(h.length>e.keyLen)h=w(h,0,e.keyLen);try{const n=s(e.sslName,h,t);n.setAutoPadding(false);C=combineBuffers(n.update(C),n.final())}catch(e){return e}}const B=f[1];const p=f[3];const y=Buffer.from(f[4],"base64");const b=f[6];const k=B.length;const D=E.length;const U=Buffer.byteLength(p);const L=y.length;const v=C.length;const T=Buffer.allocUnsafe(4+k+4+D+4+U+4+L+4+v);let O=0;_(T,k,O);T.utf8Write(B,O+=4,k);_(T,D,O+=k);T.utf8Write(E,O+=4,D);_(T,U,O+=D);T.utf8Write(p,O+=4,U);_(T,L,O+=U);T.set(y,O+=4);_(T,v,O+=L);T.set(C,O+4);if(!g)g=e;const P=h("sha1",o("sha1").update("putty-private-key-file-mac-key").update(g).digest()).update(T).digest("hex");if(P!==b){if(I){return new Error("PPK private key integrity check failed -- bad passphrase?")}return new Error("PPK private key integrity check failed")}let Y;let G;let J;y._pos=0;skipFields(y,1);switch(B){case"ssh-rsa":{const e=R(y,y._pos);if(e===undefined)return new Error("Malformed PPK public key");const t=R(y,y._pos);if(t===undefined)return new Error("Malformed PPK public key");const n=R(C,0);if(n===undefined)return new Error("Malformed PPK private key");const s=R(C,C._pos);if(s===undefined)return new Error("Malformed PPK private key");const i=R(C,C._pos);if(i===undefined)return new Error("Malformed PPK private key");const o=R(C,C._pos);if(o===undefined)return new Error("Malformed PPK private key");Y=genOpenSSLRSAPub(t,e);G=genOpenSSHRSAPub(t,e);J=x(t,e,n,o,s,i);break}case"ssh-dss":{const e=R(y,y._pos);if(e===undefined)return new Error("Malformed PPK public key");const t=R(y,y._pos);if(t===undefined)return new Error("Malformed PPK public key");const n=R(y,y._pos);if(n===undefined)return new Error("Malformed PPK public key");const s=R(y,y._pos);if(s===undefined)return new Error("Malformed PPK public key");const i=R(C,0);if(i===undefined)return new Error("Malformed PPK private key");Y=genOpenSSLDSAPub(e,t,n,s);G=genOpenSSHDSAPub(e,t,n,s);J=genOpenSSLDSAPriv(e,t,n,s,i);break}}return new PPK_Private(B,p,J,Y,G,"sha1",I)}}function OpenSSH_Public(e,t,n,s,i){this.type=e;this.comment=t;this[U]=null;this[L]=n;this[v]=s;this[D]=i;this[T]=false}OpenSSH_Public.prototype=Y;{let e;if(p)e=/^(((?:ssh-(?:rsa|dss|ed25519))|ecdsa-sha2-nistp(?:256|384|521))(?:-cert-v0[01]@openssh.com)?) ([A-Z0-9a-z/+=]+)(?:$|\s+([\S].*)?)$/;else e=/^(((?:ssh-(?:rsa|dss))|ecdsa-sha2-nistp(?:256|384|521))(?:-cert-v0[01]@openssh.com)?) ([A-Z0-9a-z/+=]+)(?:$|\s+([\S].*)?)$/;OpenSSH_Public.parse=t=>{const n=e.exec(t);if(n===null)return null;const s=n[1];const i=n[2];const o=Buffer.from(n[3],"base64");const h=n[4]||"";const l=R(o,o._pos,true);if(l===undefined||l.indexOf(i)!==0)return new Error("Malformed OpenSSH public key");return parseDER(o,i,h,s)}}function RFC4716_Public(e,t,n,s,i){this.type=e;this.comment=t;this[U]=null;this[L]=n;this[v]=s;this[D]=i;this[T]=false}RFC4716_Public.prototype=Y;{const e=/^---- BEGIN SSH2 PUBLIC KEY ----(?:\r?\n)((?:.{0,72}\r?\n)+)---- END SSH2 PUBLIC KEY ----$/;const t=/^[A-Z0-9a-z/+=\r\n]+$/;const n=/^([\x21-\x39\x3B-\x7E]{1,64}): ((?:[^\\]*\\\r?\n)*[^\r\n]+)\r?\n/gm;const s=/\\\r?\n/g;RFC4716_Public.parse=i=>{let o=e.exec(i);if(o===null)return null;const h=o[1];let l=0;let u="";while(o=n.exec(h)){const e=o[1];const t=o[2].replace(s,"");if(t.length>1024){n.lastIndex=0;return new Error("Malformed RFC4716 public key")}l=n.lastIndex;if(e.toLowerCase()==="comment"){u=t;if(u.length>1&&u.charCodeAt(0)===34&&u.charCodeAt(u.length-1)===34){u=u.slice(1,-1)}}}let g=h.slice(l);if(!t.test(g))return new Error("Malformed RFC4716 public key");g=Buffer.from(g,"base64");const f=R(g,0,true);if(f===undefined)return new Error("Malformed RFC4716 public key");let E=null;let I=null;switch(f){case"ssh-rsa":{const e=R(g,g._pos);if(e===undefined)return new Error("Malformed RFC4716 public key");const t=R(g,g._pos);if(t===undefined)return new Error("Malformed RFC4716 public key");E=genOpenSSLRSAPub(t,e);I=genOpenSSHRSAPub(t,e);break}case"ssh-dss":{const e=R(g,g._pos);if(e===undefined)return new Error("Malformed RFC4716 public key");const t=R(g,g._pos);if(t===undefined)return new Error("Malformed RFC4716 public key");const n=R(g,g._pos);if(n===undefined)return new Error("Malformed RFC4716 public key");const s=R(g,g._pos);if(s===undefined)return new Error("Malformed RFC4716 public key");E=genOpenSSLDSAPub(e,t,n,s);I=genOpenSSHDSAPub(e,t,n,s);break}default:return new Error("Malformed RFC4716 public key")}return new RFC4716_Public(f,u,E,I,"sha1")}}function parseDER(e,t,n,s){if(!isSupportedKeyType(t))return new Error(`Unsupported OpenSSH public key type: ${t}`);let i;let o;let h=null;let l=null;switch(t){case"ssh-rsa":{const t=R(e,e._pos||0);if(t===undefined)return new Error("Malformed OpenSSH public key");const n=R(e,e._pos);if(n===undefined)return new Error("Malformed OpenSSH public key");h=genOpenSSLRSAPub(n,t);l=genOpenSSHRSAPub(n,t);i="sha1";break}case"ssh-dss":{const t=R(e,e._pos||0);if(t===undefined)return new Error("Malformed OpenSSH public key");const n=R(e,e._pos);if(n===undefined)return new Error("Malformed OpenSSH public key");const s=R(e,e._pos);if(s===undefined)return new Error("Malformed OpenSSH public key");const o=R(e,e._pos);if(o===undefined)return new Error("Malformed OpenSSH public key");h=genOpenSSLDSAPub(t,n,s,o);l=genOpenSSHDSAPub(t,n,s,o);i="sha1";break}case"ssh-ed25519":{const t=R(e,e._pos||0);if(t===undefined||t.length!==32)return new Error("Malformed OpenSSH public key");h=genOpenSSLEdPub(t);l=genOpenSSHEdPub(t);i=null;break}case"ecdsa-sha2-nistp256":i="sha256";o="1.2.840.10045.3.1.7";case"ecdsa-sha2-nistp384":if(i===undefined){i="sha384";o="1.3.132.0.34"}case"ecdsa-sha2-nistp521":{if(i===undefined){i="sha512";o="1.3.132.0.35"}if(!skipFields(e,1))return new Error("Malformed OpenSSH public key");const t=R(e,e._pos||0);if(t===undefined)return new Error("Malformed OpenSSH public key");h=genOpenSSLECDSAPub(o,t);l=genOpenSSHECDSAPub(o,t);break}default:return new Error(`Unsupported OpenSSH public key type: ${t}`)}return new OpenSSH_Public(s,n,h,l,i)}function isSupportedKeyType(e){switch(e){case"ssh-rsa":case"ssh-dss":case"ecdsa-sha2-nistp256":case"ecdsa-sha2-nistp384":case"ecdsa-sha2-nistp521":return true;case"ssh-ed25519":if(p)return true;default:return false}}function isParsedKey(e){if(!e)return false;return typeof e[T]==="boolean"}function parseKey(e,t){if(isParsedKey(e))return e;let n;if(Buffer.isBuffer(e)){n=e;e=e.utf8Slice(0,e.length).trim()}else if(typeof e==="string"){e=e.trim()}else{return new Error("Key data must be a Buffer or string")}if(t!=undefined){if(typeof t==="string")t=Buffer.from(t);else if(!Buffer.isBuffer(t))return new Error("Passphrase must be a string or Buffer when supplied")}let s;if((s=OpenSSH_Private.parse(e,t))!==null)return s;if((s=OpenSSH_Old_Private.parse(e,t))!==null)return s;if((s=PPK_Private.parse(e,t))!==null)return s;if((s=OpenSSH_Public.parse(e))!==null)return s;if((s=RFC4716_Public.parse(e))!==null)return s;if(n){P.init(n,0);const t=P.readString(true);if(t!==undefined){e=P.readRaw();if(e!==undefined){s=parseDER(e,t,"",t);if(s instanceof Error)s=null}}P.clear()}if(s)return s;return new Error("Unsupported key format")}e.exports={isParsedKey:isParsedKey,isSupportedKeyType:isSupportedKeyType,parseDERKey:(e,t)=>parseDER(e,t,"",t),parseKey:parseKey}},7609:(e,t,n)=>{"use strict";const s=n(9491);const{inspect:i}=n(3837);function addNumericalSeparator(e){let t="";let n=e.length;const s=e[0]==="-"?1:0;for(;n>=s+4;n-=3)t=`_${e.slice(n-3,n)}${t}`;return`${e.slice(0,n)}${t}`}function oneOf(e,t){s(typeof t==="string","`thing` has to be of type string");if(Array.isArray(e)){const n=e.length;s(n>0,"At least one expected value needs to be specified");e=e.map((e=>String(e)));if(n>2){return`one of ${t} ${e.slice(0,n-1).join(", ")}, or `+e[n-1]}else if(n===2){return`one of ${t} ${e[0]} or ${e[1]}`}return`of ${t} ${e[0]}`}return`of ${t} ${String(e)}`}t.ERR_INTERNAL_ASSERTION=class ERR_INTERNAL_ASSERTION extends Error{constructor(e){super();Error.captureStackTrace(this,ERR_INTERNAL_ASSERTION);const t="This is caused by either a bug in ssh2 "+"or incorrect usage of ssh2 internals.\n"+"Please open an issue with this stack trace at "+"https://github.com/mscdex/ssh2/issues\n";this.message=e===undefined?t:`${e}\n${t}`}};const o=2**32;const h=(()=>{try{return new Function("return 2n ** 32n")()}catch{}})();t.ERR_OUT_OF_RANGE=class ERR_OUT_OF_RANGE extends RangeError{constructor(e,t,n,l){super();Error.captureStackTrace(this,ERR_OUT_OF_RANGE);s(t,'Missing "range" argument');let u=l?e:`The value of "${e}" is out of range.`;let g;if(Number.isInteger(n)&&Math.abs(n)>o){g=addNumericalSeparator(String(n))}else if(typeof n==="bigint"){g=String(n);if(n>h||n<-h)g=addNumericalSeparator(g);g+="n"}else{g=i(n)}u+=` It must be ${t}. Received ${g}`;this.message=u}};class ERR_INVALID_ARG_TYPE extends TypeError{constructor(e,t,n){super();Error.captureStackTrace(this,ERR_INVALID_ARG_TYPE);s(typeof e==="string",`'name' must be a string`);let i;if(typeof t==="string"&&t.startsWith("not ")){i="must not be";t=t.replace(/^not /,"")}else{i="must be"}let o;if(e.endsWith(" argument")){o=`The ${e} ${i} ${oneOf(t,"type")}`}else{const n=e.includes(".")?"property":"argument";o=`The "${e}" ${n} ${i} ${oneOf(t,"type")}`}o+=`. Received type ${typeof n}`;this.message=o}}t.ERR_INVALID_ARG_TYPE=ERR_INVALID_ARG_TYPE;t.validateNumber=function validateNumber(e,t){if(typeof e!=="number")throw new ERR_INVALID_ARG_TYPE(t,"number",e)}},9475:(e,t,n)=>{"use strict";const s=n(970).Ber;let i;const o=Buffer[Symbol.species];const h=Object.getPrototypeOf(Uint8Array.prototype).fill;function readUInt32BE(e,t){return e[t++]*16777216+e[t++]*65536+e[t++]*256+e[t]}function bufferCopy(e,t,n,s,i){if(!i)i=0;if(s>e.length)s=e.length;let o=s-n;const h=t.length-i;if(o>h)o=h;t.set(new Uint8Array(e.buffer,e.byteOffset+n,o),i);return o}function bufferSlice(e,t,n){if(n===undefined)n=e.length;return new o(e.buffer,e.byteOffset+t,n-t)}function makeBufferParser(){let e=0;let t;const n={init:(n,s)=>{t=n;e=typeof s==="number"?s:0},pos:()=>e,length:()=>t?t.length:0,avail:()=>t&&e{t=undefined},readUInt32BE:()=>{if(!t||e+3>=t.length)return;return t[e++]*16777216+t[e++]*65536+t[e++]*256+t[e++]},readUInt64BE:n=>{if(!t||e+7>=t.length)return;switch(n){case"always":return BigInt(`0x${t.hexSlice(e,e+=8)}`);case"maybe":if(t[e]>31)return BigInt(`0x${t.hexSlice(e,e+=8)}`);default:return t[e++]*72057594037927940+t[e++]*281474976710656+t[e++]*1099511627776+t[e++]*4294967296+t[e++]*16777216+t[e++]*65536+t[e++]*256+t[e++]}},skip:n=>{if(t&&n>0)e+=n},skipString:()=>{const s=n.readUInt32BE();if(s===undefined)return;e+=s;return e<=t.length?s:undefined},readByte:()=>{if(t&&e{if(t&&e{const e=n.readString(true);if(e===undefined)return;return e?e.split(","):[]},readString:(s,i)=>{if(typeof s==="number"){i=s;s=undefined}const o=n.readUInt32BE();if(o===undefined)return;if(t.length-ei){return}if(s){if(Buffer.isBuffer(s))return bufferCopy(t,s,e,e+=o);return t.utf8Slice(e,e+=o)}return bufferSlice(t,e,e+=o)},readRaw:n=>{if(!t)return;if(typeof n!=="number")return bufferSlice(t,e,e+=t.length-e);if(t.length-e>=n)return bufferSlice(t,e,e+=n)}};return n}function makeError(e,t,n){const s=new Error(e);if(typeof t==="boolean"){n=t;s.level="protocol"}else{s.level=t||"protocol"}s.fatal=!!n;return s}function writeUInt32BE(e,t,n){e[n++]=t>>>24;e[n++]=t>>>16;e[n++]=t>>>8;e[n++]=t;return n}const l=makeBufferParser();e.exports={bufferCopy:bufferCopy,bufferSlice:bufferSlice,FastBuffer:o,bufferFill:(e,t,n,s)=>h.call(e,t,n,s),makeError:makeError,doFatalError:(e,t,s,o)=>{let h;if(i===undefined)({DISCONNECT_REASON:i}=n(6832));if(t instanceof Error){h=t;if(typeof s!=="number")o=i.PROTOCOL_ERROR;else o=s}else{h=makeError(t,s,true)}if(typeof o!=="number")o=i.PROTOCOL_ERROR;e.disconnect(o);e._destruct();e._onError(h);return Infinity},readUInt32BE:readUInt32BE,writeUInt32BE:writeUInt32BE,writeUInt32LE:(e,t,n)=>{e[n++]=t;e[n++]=t>>>8;e[n++]=t>>>16;e[n++]=t>>>24;return n},makeBufferParser:makeBufferParser,bufferParser:makeBufferParser(),readString:(e,t,n,s)=>{if(typeof n==="number"){s=n;n=undefined}if(t===undefined)t=0;const i=e.length-t;if(t<0||t>=e.length||i<4)return;const o=readUInt32BE(e,t);if(i<4+o||typeof s==="number"&&o>s)return;t+=4;const h=t+o;e._pos=h;if(n){if(Buffer.isBuffer(n))return bufferCopy(e,n,t,h);return e.utf8Slice(t,h)}return bufferSlice(e,t,h)},sigSSHToASN1:(e,t)=>{switch(t){case"ssh-dss":{if(e.length>40)return e;const t=new s.Writer;t.startSequence();let n=e.slice(0,20);let i=e.slice(20);if(n[0]&128){const e=Buffer.allocUnsafe(21);e[0]=0;n.copy(e,1);n=e}else if(n[0]===0&&!(n[1]&128)){n=n.slice(1)}if(i[0]&128){const e=Buffer.allocUnsafe(21);e[0]=0;i.copy(e,1);i=e}else if(i[0]===0&&!(i[1]&128)){i=i.slice(1)}t.writeBuffer(n,s.Integer);t.writeBuffer(i,s.Integer);t.endSequence();return t.buffer}case"ecdsa-sha2-nistp256":case"ecdsa-sha2-nistp384":case"ecdsa-sha2-nistp521":{l.init(e,0);const t=l.readString();const n=l.readString();l.clear();if(t===undefined||n===undefined)return;const i=new s.Writer;i.startSequence();i.writeBuffer(t,s.Integer);i.writeBuffer(n,s.Integer);i.endSequence();return i.buffer}default:return e}},convertSignature:(e,t)=>{switch(t){case"ssh-dss":{if(e.length<=40)return e;const t=new s.Reader(e);t.readSequence();let n=t.readString(s.Integer,true);let i=t.readString(s.Integer,true);let o=0;let h=0;if(n.length<20){const e=Buffer.allocUnsafe(20);e.set(n,1);n=e;n[0]=0}if(i.length<20){const e=Buffer.allocUnsafe(20);e.set(i,1);i=e;i[0]=0}if(n.length>20&&n[0]===0)o=1;if(i.length>20&&i[0]===0)h=1;const l=Buffer.allocUnsafe(n.length-o+(i.length-h));bufferCopy(n,l,o,n.length,0);bufferCopy(i,l,h,i.length,n.length-o);return l}case"ecdsa-sha2-nistp256":case"ecdsa-sha2-nistp384":case"ecdsa-sha2-nistp521":{if(e[0]===0)return e;const t=new s.Reader(e);t.readSequence();const n=t.readString(s.Integer,true);const i=t.readString(s.Integer,true);if(n===null||i===null)return;const o=Buffer.allocUnsafe(4+n.length+4+i.length);writeUInt32BE(o,n.length,0);o.set(n,4);writeUInt32BE(o,i.length,4+n.length);o.set(i,4+4+n.length);return o}}return e},sendPacket:(e,t,n)=>{if(!n&&e._kexinit!==undefined){if(e._queue===undefined)e._queue=[];e._queue.push(t);e._debug&&e._debug("Outbound: ... packet queued");return false}e._cipher.encrypt(t);return true}}},6715:(e,t,n)=>{"use strict";const{kMaxLength:s}=n(4300);const{createInflate:i,constants:{DEFLATE:o,INFLATE:h,Z_DEFAULT_CHUNK:l,Z_DEFAULT_COMPRESSION:u,Z_DEFAULT_MEMLEVEL:g,Z_DEFAULT_STRATEGY:f,Z_DEFAULT_WINDOWBITS:E,Z_PARTIAL_FLUSH:I}}=n(9796);const C=i()._handle.constructor;function processCallback(){throw new Error("Should not get here")}function zlibOnError(e,t,n){const s=this._owner;const i=new Error(e);i.errno=t;i.code=n;s._err=i}function _close(e){if(!e._handle)return;e._handle.close();e._handle=null}class Zlib{constructor(e){const t=E;const n=u;const i=g;const o=f;const h=undefined;this._err=undefined;this._writeState=new Uint32Array(2);this._chunkSize=l;this._maxOutputLength=s;this._outBuffer=Buffer.allocUnsafe(this._chunkSize);this._outOffset=0;this._handle=new C(e);this._handle._owner=this;this._handle.onerror=zlibOnError;this._handle.init(t,n,i,o,this._writeState,processCallback,h)}writeSync(e,t){const n=this._handle;if(!n)throw new Error("Invalid Zlib instance");let s=e.length;let i=this._chunkSize-this._outOffset;let o=0;let h;let l;let u;let g=0;const f=this._writeState;let E=this._outBuffer;let C=this._outOffset;const B=this._chunkSize;while(true){n.writeSync(I,e,o,s,E,C,i);if(this._err)throw this._err;h=f[0];l=f[1];const t=s-l;const Q=i-h;if(Q>0){const e=C===0&&Q===E.length?E:E.slice(C,C+Q);C+=Q;if(!u)u=e;else if(u.push===undefined)u=[u,e];else u.push(e);g+=e.byteLength;if(g>this._maxOutputLength){_close(this);throw new Error(`Output length exceeded maximum of ${this._maxOutputLength}`)}}else if(Q!==0){throw new Error("have should not go down")}if(h===0||C>=B){i=B;C=0;E=Buffer.allocUnsafe(B)}if(h===0){o+=t;s=l}else{break}}this._outBuffer=E;this._outOffset=C;if(g===0)u=Buffer.alloc(0);if(t){u.totalLen=g;return u}if(u.push===undefined)return u;const Q=Buffer.allocUnsafe(g);for(let e=0,t=0;e{"use strict";const{Server:s}=n(1808);const i=n(2361);const{listenerCount:o}=i;const{CHANNEL_OPEN_FAILURE:h,DEFAULT_CIPHER:l,DEFAULT_COMPRESSION:u,DEFAULT_KEX:g,DEFAULT_MAC:f,DEFAULT_SERVER_HOST_KEY:E,DISCONNECT_REASON:I,DISCONNECT_REASON_BY_VALUE:C,SUPPORTED_CIPHER:B,SUPPORTED_COMPRESSION:Q,SUPPORTED_KEX:p,SUPPORTED_MAC:y,SUPPORTED_SERVER_HOST_KEY:w}=n(6832);const{init:b}=n(5708);const{KexInit:R}=n(4126);const{parseKey:k}=n(2218);const _=n(9031);const{SFTP:D}=n(2026);const{writeUInt32BE:U}=n(9475);const{Channel:L,MAX_WINDOW:v,PACKET_SIZE:T,windowAdjust:O,WINDOW_THRESHOLD:P}=n(3204);const{ChannelManager:x,generateAlgorithmList:Y,isWritable:G,onChannelOpenFailure:J,onCHANNEL_CLOSE:W}=n(834);const V=10;class AuthContext extends i{constructor(e,t,n,s,i){super();this.username=this.user=t;this.service=n;this.method=s;this._initialResponse=false;this._finalResponse=false;this._multistep=false;this._cbfinal=(e,t,n)=>{if(!this._finalResponse){this._finalResponse=true;i(this,e,t,n)}};this._protocol=e}accept(){this._cleanup&&this._cleanup();this._initialResponse=true;this._cbfinal(true)}reject(e,t){this._cleanup&&this._cleanup();this._initialResponse=true;this._cbfinal(false,e,t)}}class KeyboardAuthContext extends AuthContext{constructor(e,t,n,s,i,o){super(e,t,n,s,o);this._multistep=true;this._cb=undefined;this._onInfoResponse=e=>{const t=this._cb;if(t){this._cb=undefined;t(e)}};this.submethods=i;this.on("abort",(()=>{this._cb&&this._cb(new Error("Authentication request aborted"))}))}prompt(e,t,n,s){if(!Array.isArray(e))e=[e];if(typeof t==="function"){s=t;t=n=undefined}else if(typeof n==="function"){s=n;n=undefined}else if(typeof s!=="function"){s=undefined}for(let t=0;t{if(h===-1)return;let l;switch(h){case e:l="ssh-rsa";break;case s:l="rsa-sha2-256";break;case o:l="rsa-sha2-512";break;default:return}n[l]=t;i.push(l)}))}else{n[t.type]=t;i.push(t.type)}}const C={kex:Y(h.kex,g,p),serverHostKey:i,cs:{cipher:Y(h.cipher,l,B),mac:Y(h.hmac,f,y),compress:Y(h.compress,u,Q),lang:[]},sc:undefined};C.sc=C.cs;if(typeof t==="function")this.on("connection",t);const b=typeof e.debug==="function"?e.debug:undefined;const _=e.ident?Buffer.from(e.ident):undefined;const D=new R(C);this._srv=new s((t=>{if(this._connections>=this.maxConnections){t.destroy();return}++this._connections;t.once("close",(()=>{--this._connections}));let s;if(b){const e=`[${process.hrtime().join(".")}] `;s=t=>{b(`${e}${t}`)}}new Client(t,n,_,D,s,this,e)})).on("error",(e=>{this.emit("error",e)})).on("listening",(()=>{this.emit("listening")})).on("close",(()=>{this.emit("close")}));this._connections=0;this.maxConnections=Infinity}injectSocket(e){this._srv.emit("connection",e)}listen(...e){this._srv.listen(...e);return this}address(){return this._srv.address()}getConnections(e){this._srv.getConnections(e);return this}close(e){this._srv.close(e);return this}ref(){this._srv.ref();return this}unref(){this._srv.unref();return this}}Server.KEEPALIVE_CLIENT_INTERVAL=15e3;Server.KEEPALIVE_CLIENT_COUNT_MAX=3;class Client extends i{constructor(e,t,n,s,i,l,u){super();let g=0;let f=false;let E=[];let B;let Q;let p;const y=[];this._sock=e;this._chanMgr=new x(this);this._debug=i;this.noMoreSessions=false;this.authenticated=false;function onClientPreHeaderError(e){}this.on("error",onClientPreHeaderError);const w=!i?undefined:(e,t,n)=>{i(`Debug output from client: ${JSON.stringify(n)}`)};const R=typeof u.keepaliveInterval==="number"&&isFinite(u.keepaliveInterval)&&u.keepaliveInterval>0?u.keepaliveInterval:typeof Server.KEEPALIVE_CLIENT_INTERVAL==="number"&&isFinite(Server.KEEPALIVE_CLIENT_INTERVAL)&&Server.KEEPALIVE_CLIENT_INTERVAL>0?Server.KEEPALIVE_CLIENT_INTERVAL:-1;const k=typeof u.keepaliveCountMax==="number"&&isFinite(u.keepaliveCountMax)&&u.keepaliveCountMax>=0?u.keepaliveCountMax:typeof Server.KEEPALIVE_CLIENT_COUNT_MAX==="number"&&isFinite(Server.KEEPALIVE_CLIENT_COUNT_MAX)&&Server.KEEPALIVE_CLIENT_COUNT_MAX>=0?Server.KEEPALIVE_CLIENT_COUNT_MAX:-1;let Y=0;if(R!==-1&&k!==-1){this.once("ready",(()=>{const onClose=()=>{clearInterval(Q)};this.on("close",onClose).on("end",onClose);Q=setInterval((()=>{if(++Y>k){clearInterval(Q);const e=new Error("Keepalive timeout");e.level="client-timeout";this.emit("error",e);this.end()}else{q.ping()}}),R)}));p=()=>{Q&&Q.refresh();Y=0}}const q=this._protocol=new _({server:true,hostKeys:t,ident:n,offer:s,onPacket:p,greeting:u.greeting,banner:u.banner,onWrite:t=>{if(G(e))e.write(t)},onError:t=>{if(!q._destruct)e.removeAllListeners("data");this.emit("error",t);try{e.end()}catch{}},onHeader:t=>{this.removeListener("error",onClientPreHeaderError);const n={ip:e.remoteAddress,family:e.remoteFamily,port:e.remotePort,header:t};if(!l.emit("connection",this,n)){q.disconnect(I.BY_APPLICATION);e.end();return}if(t.greeting)this.emit("greeting",t.greeting)},onHandshakeComplete:e=>{if(++g>1)this.emit("rekey");this.emit("handshake",e)},debug:i,messageHandlers:{DEBUG:w,DISCONNECT:(t,n,s)=>{if(n!==I.BY_APPLICATION){if(!s){s=C[n];if(s===undefined)s=`Unexpected disconnection reason: ${n}`}const e=new Error(s);e.code=n;this.emit("error",e)}e.end()},CHANNEL_OPEN:(e,t)=>{if(t.type==="session"&&this.noMoreSessions||!this.authenticated){const e=h.ADMINISTRATIVELY_PROHIBITED;return q.channelOpenFail(t.sender,e)}let n=-1;let s;let l=false;let u;const reject=()=>{if(l)return;l=true;if(s===undefined){if(n===-1)s=h.RESOURCE_SHORTAGE;else s=h.CONNECT_FAILED}if(n!==-1)this._chanMgr.remove(n);q.channelOpenFail(t.sender,s,"")};const reserveChannel=()=>{n=this._chanMgr.add();if(n===-1){s=h.RESOURCE_SHORTAGE;if(i){i("Automatic rejection of incoming channel open: "+"no channels available")}}return n!==-1};const g=t.data;switch(t.type){case"session":if(o(this,"session")&&reserveChannel()){u=()=>{if(l)return;l=true;const e=new Session(this,t,n);this._chanMgr.update(n,e);q.channelOpenConfirm(t.sender,n,v,T);return e};this.emit("session",u,reject);return}break;case"direct-tcpip":if(o(this,"tcpip")&&reserveChannel()){u=()=>{if(l)return;l=true;const e={type:undefined,incoming:{id:n,window:v,packetSize:T,state:"open"},outgoing:{id:t.sender,window:t.window,packetSize:t.packetSize,state:"open"}};const s=new L(this,e,{server:true});this._chanMgr.update(n,s);q.channelOpenConfirm(t.sender,n,v,T);return s};this.emit("tcpip",u,reject,g);return}break;case"direct-streamlocal@openssh.com":if(o(this,"openssh.streamlocal")&&reserveChannel()){u=()=>{if(l)return;l=true;const e={type:undefined,incoming:{id:n,window:v,packetSize:T,state:"open"},outgoing:{id:t.sender,window:t.window,packetSize:t.packetSize,state:"open"}};const s=new L(this,e,{server:true});this._chanMgr.update(n,s);q.channelOpenConfirm(t.sender,n,v,T);return s};this.emit("openssh.streamlocal",u,reject,g);return}break;default:s=h.UNKNOWN_CHANNEL_TYPE;if(i){i("Automatic rejection of unsupported incoming channel open"+` type: ${t.type}`)}}if(s===undefined){s=h.ADMINISTRATIVELY_PROHIBITED;if(i){i("Automatic rejection of unexpected incoming channel open"+` for: ${t.type}`)}}reject()},CHANNEL_OPEN_CONFIRMATION:(e,t)=>{const n=this._chanMgr.get(t.recipient);if(typeof n!=="function")return;const s={type:n.type,incoming:{id:t.recipient,window:v,packetSize:T,state:"open"},outgoing:{id:t.sender,window:t.window,packetSize:t.packetSize,state:"open"}};const i=new L(this,s,{server:true});this._chanMgr.update(t.recipient,i);n(undefined,i)},CHANNEL_OPEN_FAILURE:(e,t,n,s)=>{const i=this._chanMgr.get(t);if(typeof i!=="function")return;const o={reason:n,description:s};J(this,t,o,i)},CHANNEL_DATA:(e,t,n)=>{let s=this._chanMgr.get(t);if(typeof s!=="object"||s===null)return;if(s.constructor===Session){s=s._channel;if(!s)return}if(s.incoming.window===0)return;s.incoming.window-=n.length;if(s.push(n)===false){s._waitChanDrain=true;return}if(s.incoming.window<=P)O(s)},CHANNEL_EXTENDED_DATA:(e,t,n,s)=>{},CHANNEL_WINDOW_ADJUST:(e,t,n)=>{let s=this._chanMgr.get(t);if(typeof s!=="object"||s===null)return;if(s.constructor===Session){s=s._channel;if(!s)return}s.outgoing.window+=n;if(s._waitWindow){s._waitWindow=false;if(s._chunk){s._write(s._chunk,null,s._chunkcb)}else if(s._chunkcb){s._chunkcb()}else if(s._chunkErr){s.stderr._write(s._chunkErr,null,s._chunkcbErr)}else if(s._chunkcbErr){s._chunkcbErr()}}},CHANNEL_SUCCESS:(e,t)=>{let n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;if(n.constructor===Session){n=n._channel;if(!n)return}if(n._callbacks.length)n._callbacks.shift()(false)},CHANNEL_FAILURE:(e,t)=>{let n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;if(n.constructor===Session){n=n._channel;if(!n)return}if(n._callbacks.length)n._callbacks.shift()(true)},CHANNEL_REQUEST:(e,t,n,s,h)=>{const l=this._chanMgr.get(t);if(typeof l!=="object"||l===null)return;let u=false;let g;let f;if(l.constructor!==Session){if(s)q.channelFailure(l.outgoing.id);return}if(s){if(n!=="shell"&&n!=="exec"&&n!=="subsystem"){g=()=>{if(u||l._ending||l._channel)return;u=true;q.channelSuccess(l._chanInfo.outgoing.id)}}f=()=>{if(u||l._ending||l._channel)return;u=true;q.channelFailure(l._chanInfo.outgoing.id)}}if(l._ending){f&&f();return}switch(n){case"env":if(o(l,"env")){l.emit("env",g,f,{key:h.name,val:h.value});return}break;case"pty-req":if(o(l,"pty")){l.emit("pty",g,f,h);return}break;case"window-change":if(o(l,"window-change"))l.emit("window-change",g,f,h);else f&&f();break;case"x11-req":if(o(l,"x11")){l.emit("x11",g,f,h);return}break;case"signal":if(o(l,"signal")){l.emit("signal",g,f,{name:h});return}break;case"auth-agent-req@openssh.com":if(o(l,"auth-agent")){l.emit("auth-agent",g,f);return}break;case"shell":if(o(l,"shell")){g=()=>{if(u||l._ending||l._channel)return;u=true;if(s)q.channelSuccess(l._chanInfo.outgoing.id);const e=new L(this,l._chanInfo,{server:true});e.subtype=l.subtype=n;l._channel=e;return e};l.emit("shell",g,f);return}break;case"exec":if(o(l,"exec")){g=()=>{if(u||l._ending||l._channel)return;u=true;if(s)q.channelSuccess(l._chanInfo.outgoing.id);const e=new L(this,l._chanInfo,{server:true});e.subtype=l.subtype=n;l._channel=e;return e};l.emit("exec",g,f,{command:h});return}break;case"subsystem":{let e=h==="sftp";g=()=>{if(u||l._ending||l._channel)return;u=true;if(s)q.channelSuccess(l._chanInfo.outgoing.id);let t;if(e){t=new D(this,l._chanInfo,{server:true,debug:i})}else{t=new L(this,l._chanInfo,{server:true});t.subtype=l.subtype=`${n}:${h}`}l._channel=t;return t};if(h==="sftp"){if(o(l,"sftp")){l.emit("sftp",g,f);return}e=false}if(o(l,"subsystem")){l.emit("subsystem",g,f,{name:h});return}break}}i&&i(`Automatic rejection of incoming channel request: ${n}`);f&&f()},CHANNEL_EOF:(e,t)=>{let n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;if(n.constructor===Session){if(!n._ending){n._ending=true;n.emit("eof");n.emit("end")}n=n._channel;if(!n)return}if(n.incoming.state!=="open")return;n.incoming.state="eof";if(n.readable)n.push(null)},CHANNEL_CLOSE:(e,t)=>{let n=this._chanMgr.get(t);if(typeof n!=="object"||n===null)return;if(n.constructor===Session){n._ending=true;n.emit("close");n=n._channel;if(!n)return}W(this,t,n)},SERVICE_REQUEST:(t,n)=>{if(g===0||f||this.authenticated||n!=="ssh-userauth"){q.disconnect(I.SERVICE_NOT_AVAILABLE);e.end();return}f=true;q.serviceAccept(n)},USERAUTH_REQUEST:(t,n,s,i,h)=>{if(g===0||this.authenticated||B&&(B.username!==n||B.service!==s)||i!=="password"&&i!=="publickey"&&i!=="hostbased"&&i!=="keyboard-interactive"&&i!=="none"||E.length===V){q.disconnect(I.PROTOCOL_ERROR);e.end();return}else if(s!=="ssh-connection"){q.disconnect(I.SERVICE_NOT_AVAILABLE);e.end();return}let l;switch(i){case"keyboard-interactive":l=new KeyboardAuthContext(q,n,s,i,h,onAuthDecide);break;case"publickey":l=new PKAuthContext(q,n,s,i,h,onAuthDecide);break;case"hostbased":l=new HostbasedAuthContext(q,n,s,i,h,onAuthDecide);break;case"password":if(B&&B instanceof PwdAuthContext&&B._changeCb){const e=B._changeCb;B._changeCb=undefined;e(h.newPassword);return}l=new PwdAuthContext(q,n,s,i,h,onAuthDecide);break;case"none":l=new AuthContext(q,n,s,i,onAuthDecide);break}if(B){if(!B._initialResponse){return E.push(l)}else if(B._multistep&&!B._finalResponse){B._cleanup&&B._cleanup();B.emit("abort")}}B=l;if(o(this,"authentication"))this.emit("authentication",B);else B.reject()},USERAUTH_INFO_RESPONSE:(e,t)=>{if(B&&B instanceof KeyboardAuthContext)B._onInfoResponse(t)},GLOBAL_REQUEST:(e,t,n,s)=>{const i={type:null,buf:null};function setReply(e,t){i.type=e;i.buf=t;sendReplies()}if(n)y.push(i);if((t==="tcpip-forward"||t==="cancel-tcpip-forward"||t==="no-more-sessions@openssh.com"||t==="streamlocal-forward@openssh.com"||t==="cancel-streamlocal-forward@openssh.com")&&o(this,"request")&&this.authenticated){let e;let i;if(n){let n=false;e=e=>{if(n)return;n=true;let i;if(t==="tcpip-forward"&&s.bindPort===0&&typeof e==="number"){i=Buffer.allocUnsafe(4);U(i,e,0)}setReply("SUCCESS",i)};i=()=>{if(n)return;n=true;setReply("FAILURE")}}if(t==="no-more-sessions@openssh.com"){this.noMoreSessions=true;e&&e();return}this.emit("request",e,i,t,s)}else if(n){setReply("FAILURE")}}}});e.pause();b.then((()=>{q.start();e.on("data",(t=>{try{q.parse(t,0,t.length)}catch(t){this.emit("error",t);try{if(G(e))e.end()}catch{}}}));e.resume()})).catch((t=>{this.emit("error",t);try{if(G(e))e.end()}catch{}}));e.on("error",(e=>{e.level="socket";this.emit("error",e)})).once("end",(()=>{i&&i("Socket ended");q.cleanup();this.emit("end")})).once("close",(()=>{i&&i("Socket closed");q.cleanup();this.emit("close");const e=new Error("No response from server");this._chanMgr.cleanup(e)}));const onAuthDecide=(e,t,n,s)=>{if(B===e&&!this.authenticated){if(t){B=undefined;this.authenticated=true;q.authSuccess();E=[];this.emit("ready")}else{q.authFailure(n,s);if(E.length){B=E.pop();if(o(this,"authentication"))this.emit("authentication",B);else B.reject()}}}};function sendReplies(){while(y.length>0&&y[0].type){const e=y.shift();if(e.type==="SUCCESS")q.requestSuccess(e.buf);if(e.type==="FAILURE")q.requestFailure()}}}end(){if(this._sock&&G(this._sock)){this._protocol.disconnect(I.BY_APPLICATION);this._sock.end()}return this}x11(e,t,n){const s={originAddr:e,originPort:t};openChannel(this,"x11",s,n);return this}forwardOut(e,t,n,s,i){const o={boundAddr:e,boundPort:t,remoteAddr:n,remotePort:s};openChannel(this,"forwarded-tcpip",o,i);return this}openssh_forwardOutStreamLocal(e,t){const n={socketPath:e};openChannel(this,"forwarded-streamlocal@openssh.com",n,t);return this}rekey(e){let t;try{this._protocol.rekey()}catch(e){t=e}if(typeof e==="function"){if(t)process.nextTick(e,t);else this.once("rekey",e)}}setNoDelay(e){if(this._sock&&typeof this._sock.setNoDelay==="function")this._sock.setNoDelay(e);return this}}function openChannel(e,t,n,s){const i=v;const o=T;if(typeof n==="function"){s=n;n={}}const wrapper=(e,t)=>{s(e,t)};wrapper.type=t;const h=e._chanMgr.add(wrapper);if(h===-1){s(new Error("No free channels available"));return}switch(t){case"forwarded-tcpip":e._protocol.forwardedTcpip(h,i,o,n);break;case"x11":e._protocol.x11(h,i,o,n);break;case"forwarded-streamlocal@openssh.com":e._protocol.openssh_forwardedStreamLocal(h,i,o,n);break;default:throw new Error(`Unsupported channel type: ${t}`)}}function compareNumbers(e,t){return e-t}e.exports=Server;e.exports.IncomingClient=Client},834:(e,t,n)=>{"use strict";const{SFTP:s}=n(2026);const i=2**32-1;function onChannelOpenFailure(e,t,n,s){e._chanMgr.remove(t);if(typeof s!=="function")return;let i;if(n instanceof Error){i=n}else if(typeof n==="object"&&n!==null){i=new Error(`(SSH) Channel open failure: ${n.description}`);i.reason=n.reason}else{i=new Error("(SSH) Channel open failure: server closed channel unexpectedly");i.reason=""}s(i)}function onCHANNEL_CLOSE(e,t,n,i,o){if(typeof n==="function"){onChannelOpenFailure(e,t,i,n);return}if(typeof n!=="object"||n===null)return;if(n.incoming&&n.incoming.state==="closed")return;e._chanMgr.remove(t);if(n.server&&n.constructor.name==="Session")return;n.incoming.state="closed";if(n.readable)n.push(null);if(n.server){if(n.stderr.writable)n.stderr.end()}else if(n.stderr.readable){n.stderr.push(null)}if(n.constructor!==s&&(n.outgoing.state==="open"||n.outgoing.state==="eof")&&!o){n.close()}if(n.outgoing.state==="closing")n.outgoing.state="closed";const h=n._readableState;const l=n._writableState;if(l&&!l.ending&&!l.finished&&!o)n.end();const u=n._callbacks;n._callbacks=[];for(let e=0;en.emit("close")))}}else{let e;switch(n.type){case"direct-streamlocal@openssh.com":case"direct-tcpip":e=()=>n.emit("close");break;default:{const t=n._exit;e=()=>{if(t.code===null)n.emit("close",t.code,t.signal,t.dump,t.desc);else n.emit("close",t.code)}}}if(!n.readable||n.destroyed||h&&h.endEmitted){e()}else{n.once("end",e)}const t=n.stderr._readableState;if(!n.stderr.readable||n.stderr.destroyed||t&&t.endEmitted){n.stderr.emit("close")}else{n.stderr.once("end",(()=>n.stderr.emit("close")))}}}class ChannelManager{constructor(e){this._client=e;this._channels={};this._cur=-1;this._count=0}add(e){let t;if(this._cur=i||!isFinite(e))throw new Error(`Invalid channel id: ${e}`);if(t&&this._channels[e])this._channels[e]=t}get(e){if(typeof e!=="number"||e<0||e>=i||!isFinite(e))throw new Error(`Invalid channel id: ${e}`);return this._channels[e]}remove(e){if(typeof e!=="number"||e<0||e>=i||!isFinite(e))throw new Error(`Invalid channel id: ${e}`);if(this._channels[e]){delete this._channels[e];if(this._count)--this._count}}cleanup(e){const t=this._channels;this._channels={};this._cur=-1;this._count=0;const n=Object.keys(t);const s=this._client;for(let i=0;i{const e=Object.prototype.toString;return t=>e.call(t)==="[object RegExp]"})();function generateAlgorithmList(e,t,n){if(Array.isArray(e)&&e.length>0){for(let t=0;t=0;--e){const s=u[e];if(typeof s==="string"){if(!s||i.indexOf(s)!==-1)continue;if(n.indexOf(s)===-1)throw new Error(`Unsupported algorithm: ${s}`);if(i===t)i=i.slice();i.unshift(s)}else if(o(s)){for(let e=n.length;e>=0;--e){const o=n[e];if(s.test(o)){if(i.indexOf(o)!==-1)continue;if(i===t)i=i.slice();i.unshift(o)}}}}}break;case"remove":if(!Array.isArray(u))u=[u];if(Array.isArray(u)){for(let e=0;ee&&e.writable&&e._readableState&&e._readableState.ended===false}},4841:(e,t,n)=>{"use strict";var s=n(1867).Buffer;var i=s.isEncoding||function(e){e=""+e;switch(e&&e.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(e){if(!e)return"utf8";var t;while(true){switch(e){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 e;default:if(t)return;e=(""+e).toLowerCase();t=true}}}function normalizeEncoding(e){var t=_normalizeEncoding(e);if(typeof t!=="string"&&(s.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}t.s=StringDecoder;function StringDecoder(e){this.encoding=normalizeEncoding(e);var t;switch(this.encoding){case"utf16le":this.text=utf16Text;this.end=utf16End;t=4;break;case"utf8":this.fillLast=utf8FillLast;t=4;break;case"base64":this.text=base64Text;this.end=base64End;t=3;break;default:this.write=simpleWrite;this.end=simpleEnd;return}this.lastNeed=0;this.lastTotal=0;this.lastChar=s.allocUnsafe(t)}StringDecoder.prototype.write=function(e){if(e.length===0)return"";var t;var n;if(this.lastNeed){t=this.fillLast(e);if(t===undefined)return"";n=this.lastNeed;this.lastNeed=0}else{n=0}if(n>5===6)return 2;else if(e>>4===14)return 3;else if(e>>3===30)return 4;return e>>6===2?-1:-2}function utf8CheckIncomplete(e,t,n){var s=t.length-1;if(s=0){if(i>0)e.lastNeed=i-1;return i}if(--s=0){if(i>0)e.lastNeed=i-2;return i}if(--s=0){if(i>0){if(i===2)i=0;else e.lastNeed=i-3}return i}return 0}function utf8CheckExtraBytes(e,t,n){if((t[0]&192)!==128){e.lastNeed=0;return"�"}if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128){e.lastNeed=1;return"�"}if(e.lastNeed>2&&t.length>2){if((t[2]&192)!==128){e.lastNeed=2;return"�"}}}}function utf8FillLast(e){var t=this.lastTotal-this.lastNeed;var n=utf8CheckExtraBytes(this,e,t);if(n!==undefined)return n;if(this.lastNeed<=e.length){e.copy(this.lastChar,t,0,this.lastNeed);return this.lastChar.toString(this.encoding,0,this.lastTotal)}e.copy(this.lastChar,t,0,e.length);this.lastNeed-=e.length}function utf8Text(e,t){var n=utf8CheckIncomplete(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var s=e.length-(n-this.lastNeed);e.copy(this.lastChar,0,s);return e.toString("utf8",t,s)}function utf8End(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed)return t+"�";return t}function utf16Text(e,t){if((e.length-t)%2===0){var n=e.toString("utf16le",t);if(n){var s=n.charCodeAt(n.length-1);if(s>=55296&&s<=56319){this.lastNeed=2;this.lastTotal=4;this.lastChar[0]=e[e.length-2];this.lastChar[1]=e[e.length-1];return n.slice(0,-1)}}return n}this.lastNeed=1;this.lastTotal=2;this.lastChar[0]=e[e.length-1];return e.toString("utf16le",t,e.length-1)}function utf16End(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function base64Text(e,t){var n=(e.length-t)%3;if(n===0)return e.toString("base64",t);this.lastNeed=3-n;this.lastTotal=3;if(n===1){this.lastChar[0]=e[e.length-1]}else{this.lastChar[0]=e[e.length-2];this.lastChar[1]=e[e.length-1]}return e.toString("base64",t,e.length-n)}function base64End(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed)return t+this.lastChar.toString("base64",0,3-this.lastNeed);return t}function simpleWrite(e){return e.toString(this.encoding)}function simpleEnd(e){return e&&e.length?this.write(e):""}},4294:(e,t,n)=>{e.exports=n(4219)},4219:(e,t,n)=>{"use strict";var s=n(1808);var i=n(4404);var o=n(3685);var h=n(5687);var l=n(2361);var u=n(9491);var g=n(3837);t.httpOverHttp=httpOverHttp;t.httpsOverHttp=httpsOverHttp;t.httpOverHttps=httpOverHttps;t.httpsOverHttps=httpsOverHttps;function httpOverHttp(e){var t=new TunnelingAgent(e);t.request=o.request;return t}function httpsOverHttp(e){var t=new TunnelingAgent(e);t.request=o.request;t.createSocket=createSecureSocket;t.defaultPort=443;return t}function httpOverHttps(e){var t=new TunnelingAgent(e);t.request=h.request;return t}function httpsOverHttps(e){var t=new TunnelingAgent(e);t.request=h.request;t.createSocket=createSecureSocket;t.defaultPort=443;return t}function TunnelingAgent(e){var t=this;t.options=e||{};t.proxyOptions=t.options.proxy||{};t.maxSockets=t.options.maxSockets||o.Agent.defaultMaxSockets;t.requests=[];t.sockets=[];t.on("free",(function onFree(e,n,s,i){var o=toOptions(n,s,i);for(var h=0,l=t.requests.length;h=this.maxSockets){i.requests.push(o);return}i.createSocket(o,(function(t){t.on("free",onFree);t.on("close",onCloseOrRemove);t.on("agentRemove",onCloseOrRemove);e.onSocket(t);function onFree(){i.emit("free",t,o)}function onCloseOrRemove(e){i.removeSocket(t);t.removeListener("free",onFree);t.removeListener("close",onCloseOrRemove);t.removeListener("agentRemove",onCloseOrRemove)}}))};TunnelingAgent.prototype.createSocket=function createSocket(e,t){var n=this;var s={};n.sockets.push(s);var i=mergeOptions({},n.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:false,headers:{host:e.host+":"+e.port}});if(e.localAddress){i.localAddress=e.localAddress}if(i.proxyAuth){i.headers=i.headers||{};i.headers["Proxy-Authorization"]="Basic "+new Buffer(i.proxyAuth).toString("base64")}f("making CONNECT request");var o=n.request(i);o.useChunkedEncodingByDefault=false;o.once("response",onResponse);o.once("upgrade",onUpgrade);o.once("connect",onConnect);o.once("error",onError);o.end();function onResponse(e){e.upgrade=true}function onUpgrade(e,t,n){process.nextTick((function(){onConnect(e,t,n)}))}function onConnect(i,h,l){o.removeAllListeners();h.removeAllListeners();if(i.statusCode!==200){f("tunneling socket could not be established, statusCode=%d",i.statusCode);h.destroy();var u=new Error("tunneling socket could not be established, "+"statusCode="+i.statusCode);u.code="ECONNRESET";e.request.emit("error",u);n.removeSocket(s);return}if(l.length>0){f("got illegal response body from proxy");h.destroy();var u=new Error("got illegal response body from proxy");u.code="ECONNRESET";e.request.emit("error",u);n.removeSocket(s);return}f("tunneling connection has established");n.sockets[n.sockets.indexOf(s)]=h;return t(h)}function onError(t){o.removeAllListeners();f("tunneling socket could not be established, cause=%s\n",t.message,t.stack);var i=new Error("tunneling socket could not be established, "+"cause="+t.message);i.code="ECONNRESET";e.request.emit("error",i);n.removeSocket(s)}};TunnelingAgent.prototype.removeSocket=function removeSocket(e){var t=this.sockets.indexOf(e);if(t===-1){return}this.sockets.splice(t,1);var n=this.requests.shift();if(n){this.createSocket(n,(function(e){n.request.onSocket(e)}))}};function createSecureSocket(e,t){var n=this;TunnelingAgent.prototype.createSocket.call(n,e,(function(s){var o=e.request.getHeader("host");var h=mergeOptions({},n.options,{socket:s,servername:o?o.replace(/:.*$/,""):e.host});var l=i.connect(0,h);n.sockets[n.sockets.indexOf(s)]=l;t(l)}))}function toOptions(e,t,n){if(typeof e==="string"){return{host:e,port:t,localAddress:n}}return e}function mergeOptions(e){for(var t=1,n=arguments.length;t{(function(e){"use strict";var gf=function(e){var t,n=new Float64Array(16);if(e)for(t=0;t>24&255;e[t+1]=n>>16&255;e[t+2]=n>>8&255;e[t+3]=n&255;e[t+4]=s>>24&255;e[t+5]=s>>16&255;e[t+6]=s>>8&255;e[t+7]=s&255}function vn(e,t,n,s,i){var o,h=0;for(o=0;o>>8)-1}function crypto_verify_16(e,t,n,s){return vn(e,t,n,s,16)}function crypto_verify_32(e,t,n,s){return vn(e,t,n,s,32)}function core_salsa20(e,t,n,s){var i=s[0]&255|(s[1]&255)<<8|(s[2]&255)<<16|(s[3]&255)<<24,o=n[0]&255|(n[1]&255)<<8|(n[2]&255)<<16|(n[3]&255)<<24,h=n[4]&255|(n[5]&255)<<8|(n[6]&255)<<16|(n[7]&255)<<24,l=n[8]&255|(n[9]&255)<<8|(n[10]&255)<<16|(n[11]&255)<<24,u=n[12]&255|(n[13]&255)<<8|(n[14]&255)<<16|(n[15]&255)<<24,g=s[4]&255|(s[5]&255)<<8|(s[6]&255)<<16|(s[7]&255)<<24,f=t[0]&255|(t[1]&255)<<8|(t[2]&255)<<16|(t[3]&255)<<24,E=t[4]&255|(t[5]&255)<<8|(t[6]&255)<<16|(t[7]&255)<<24,I=t[8]&255|(t[9]&255)<<8|(t[10]&255)<<16|(t[11]&255)<<24,C=t[12]&255|(t[13]&255)<<8|(t[14]&255)<<16|(t[15]&255)<<24,B=s[8]&255|(s[9]&255)<<8|(s[10]&255)<<16|(s[11]&255)<<24,Q=n[16]&255|(n[17]&255)<<8|(n[18]&255)<<16|(n[19]&255)<<24,p=n[20]&255|(n[21]&255)<<8|(n[22]&255)<<16|(n[23]&255)<<24,y=n[24]&255|(n[25]&255)<<8|(n[26]&255)<<16|(n[27]&255)<<24,w=n[28]&255|(n[29]&255)<<8|(n[30]&255)<<16|(n[31]&255)<<24,b=s[12]&255|(s[13]&255)<<8|(s[14]&255)<<16|(s[15]&255)<<24;var R=i,k=o,_=h,D=l,U=u,L=g,v=f,T=E,O=I,P=C,x=B,Y=Q,G=p,J=y,W=w,V=b,q;for(var j=0;j<20;j+=2){q=R+G|0;U^=q<<7|q>>>32-7;q=U+R|0;O^=q<<9|q>>>32-9;q=O+U|0;G^=q<<13|q>>>32-13;q=G+O|0;R^=q<<18|q>>>32-18;q=L+k|0;P^=q<<7|q>>>32-7;q=P+L|0;J^=q<<9|q>>>32-9;q=J+P|0;k^=q<<13|q>>>32-13;q=k+J|0;L^=q<<18|q>>>32-18;q=x+v|0;W^=q<<7|q>>>32-7;q=W+x|0;_^=q<<9|q>>>32-9;q=_+W|0;v^=q<<13|q>>>32-13;q=v+_|0;x^=q<<18|q>>>32-18;q=V+Y|0;D^=q<<7|q>>>32-7;q=D+V|0;T^=q<<9|q>>>32-9;q=T+D|0;Y^=q<<13|q>>>32-13;q=Y+T|0;V^=q<<18|q>>>32-18;q=R+D|0;k^=q<<7|q>>>32-7;q=k+R|0;_^=q<<9|q>>>32-9;q=_+k|0;D^=q<<13|q>>>32-13;q=D+_|0;R^=q<<18|q>>>32-18;q=L+U|0;v^=q<<7|q>>>32-7;q=v+L|0;T^=q<<9|q>>>32-9;q=T+v|0;U^=q<<13|q>>>32-13;q=U+T|0;L^=q<<18|q>>>32-18;q=x+P|0;Y^=q<<7|q>>>32-7;q=Y+x|0;O^=q<<9|q>>>32-9;q=O+Y|0;P^=q<<13|q>>>32-13;q=P+O|0;x^=q<<18|q>>>32-18;q=V+W|0;G^=q<<7|q>>>32-7;q=G+V|0;J^=q<<9|q>>>32-9;q=J+G|0;W^=q<<13|q>>>32-13;q=W+J|0;V^=q<<18|q>>>32-18}R=R+i|0;k=k+o|0;_=_+h|0;D=D+l|0;U=U+u|0;L=L+g|0;v=v+f|0;T=T+E|0;O=O+I|0;P=P+C|0;x=x+B|0;Y=Y+Q|0;G=G+p|0;J=J+y|0;W=W+w|0;V=V+b|0;e[0]=R>>>0&255;e[1]=R>>>8&255;e[2]=R>>>16&255;e[3]=R>>>24&255;e[4]=k>>>0&255;e[5]=k>>>8&255;e[6]=k>>>16&255;e[7]=k>>>24&255;e[8]=_>>>0&255;e[9]=_>>>8&255;e[10]=_>>>16&255;e[11]=_>>>24&255;e[12]=D>>>0&255;e[13]=D>>>8&255;e[14]=D>>>16&255;e[15]=D>>>24&255;e[16]=U>>>0&255;e[17]=U>>>8&255;e[18]=U>>>16&255;e[19]=U>>>24&255;e[20]=L>>>0&255;e[21]=L>>>8&255;e[22]=L>>>16&255;e[23]=L>>>24&255;e[24]=v>>>0&255;e[25]=v>>>8&255;e[26]=v>>>16&255;e[27]=v>>>24&255;e[28]=T>>>0&255;e[29]=T>>>8&255;e[30]=T>>>16&255;e[31]=T>>>24&255;e[32]=O>>>0&255;e[33]=O>>>8&255;e[34]=O>>>16&255;e[35]=O>>>24&255;e[36]=P>>>0&255;e[37]=P>>>8&255;e[38]=P>>>16&255;e[39]=P>>>24&255;e[40]=x>>>0&255;e[41]=x>>>8&255;e[42]=x>>>16&255;e[43]=x>>>24&255;e[44]=Y>>>0&255;e[45]=Y>>>8&255;e[46]=Y>>>16&255;e[47]=Y>>>24&255;e[48]=G>>>0&255;e[49]=G>>>8&255;e[50]=G>>>16&255;e[51]=G>>>24&255;e[52]=J>>>0&255;e[53]=J>>>8&255;e[54]=J>>>16&255;e[55]=J>>>24&255;e[56]=W>>>0&255;e[57]=W>>>8&255;e[58]=W>>>16&255;e[59]=W>>>24&255;e[60]=V>>>0&255;e[61]=V>>>8&255;e[62]=V>>>16&255;e[63]=V>>>24&255}function core_hsalsa20(e,t,n,s){var i=s[0]&255|(s[1]&255)<<8|(s[2]&255)<<16|(s[3]&255)<<24,o=n[0]&255|(n[1]&255)<<8|(n[2]&255)<<16|(n[3]&255)<<24,h=n[4]&255|(n[5]&255)<<8|(n[6]&255)<<16|(n[7]&255)<<24,l=n[8]&255|(n[9]&255)<<8|(n[10]&255)<<16|(n[11]&255)<<24,u=n[12]&255|(n[13]&255)<<8|(n[14]&255)<<16|(n[15]&255)<<24,g=s[4]&255|(s[5]&255)<<8|(s[6]&255)<<16|(s[7]&255)<<24,f=t[0]&255|(t[1]&255)<<8|(t[2]&255)<<16|(t[3]&255)<<24,E=t[4]&255|(t[5]&255)<<8|(t[6]&255)<<16|(t[7]&255)<<24,I=t[8]&255|(t[9]&255)<<8|(t[10]&255)<<16|(t[11]&255)<<24,C=t[12]&255|(t[13]&255)<<8|(t[14]&255)<<16|(t[15]&255)<<24,B=s[8]&255|(s[9]&255)<<8|(s[10]&255)<<16|(s[11]&255)<<24,Q=n[16]&255|(n[17]&255)<<8|(n[18]&255)<<16|(n[19]&255)<<24,p=n[20]&255|(n[21]&255)<<8|(n[22]&255)<<16|(n[23]&255)<<24,y=n[24]&255|(n[25]&255)<<8|(n[26]&255)<<16|(n[27]&255)<<24,w=n[28]&255|(n[29]&255)<<8|(n[30]&255)<<16|(n[31]&255)<<24,b=s[12]&255|(s[13]&255)<<8|(s[14]&255)<<16|(s[15]&255)<<24;var R=i,k=o,_=h,D=l,U=u,L=g,v=f,T=E,O=I,P=C,x=B,Y=Q,G=p,J=y,W=w,V=b,q;for(var j=0;j<20;j+=2){q=R+G|0;U^=q<<7|q>>>32-7;q=U+R|0;O^=q<<9|q>>>32-9;q=O+U|0;G^=q<<13|q>>>32-13;q=G+O|0;R^=q<<18|q>>>32-18;q=L+k|0;P^=q<<7|q>>>32-7;q=P+L|0;J^=q<<9|q>>>32-9;q=J+P|0;k^=q<<13|q>>>32-13;q=k+J|0;L^=q<<18|q>>>32-18;q=x+v|0;W^=q<<7|q>>>32-7;q=W+x|0;_^=q<<9|q>>>32-9;q=_+W|0;v^=q<<13|q>>>32-13;q=v+_|0;x^=q<<18|q>>>32-18;q=V+Y|0;D^=q<<7|q>>>32-7;q=D+V|0;T^=q<<9|q>>>32-9;q=T+D|0;Y^=q<<13|q>>>32-13;q=Y+T|0;V^=q<<18|q>>>32-18;q=R+D|0;k^=q<<7|q>>>32-7;q=k+R|0;_^=q<<9|q>>>32-9;q=_+k|0;D^=q<<13|q>>>32-13;q=D+_|0;R^=q<<18|q>>>32-18;q=L+U|0;v^=q<<7|q>>>32-7;q=v+L|0;T^=q<<9|q>>>32-9;q=T+v|0;U^=q<<13|q>>>32-13;q=U+T|0;L^=q<<18|q>>>32-18;q=x+P|0;Y^=q<<7|q>>>32-7;q=Y+x|0;O^=q<<9|q>>>32-9;q=O+Y|0;P^=q<<13|q>>>32-13;q=P+O|0;x^=q<<18|q>>>32-18;q=V+W|0;G^=q<<7|q>>>32-7;q=G+V|0;J^=q<<9|q>>>32-9;q=J+G|0;W^=q<<13|q>>>32-13;q=W+J|0;V^=q<<18|q>>>32-18}e[0]=R>>>0&255;e[1]=R>>>8&255;e[2]=R>>>16&255;e[3]=R>>>24&255;e[4]=L>>>0&255;e[5]=L>>>8&255;e[6]=L>>>16&255;e[7]=L>>>24&255;e[8]=x>>>0&255;e[9]=x>>>8&255;e[10]=x>>>16&255;e[11]=x>>>24&255;e[12]=V>>>0&255;e[13]=V>>>8&255;e[14]=V>>>16&255;e[15]=V>>>24&255;e[16]=v>>>0&255;e[17]=v>>>8&255;e[18]=v>>>16&255;e[19]=v>>>24&255;e[20]=T>>>0&255;e[21]=T>>>8&255;e[22]=T>>>16&255;e[23]=T>>>24&255;e[24]=O>>>0&255;e[25]=O>>>8&255;e[26]=O>>>16&255;e[27]=O>>>24&255;e[28]=P>>>0&255;e[29]=P>>>8&255;e[30]=P>>>16&255;e[31]=P>>>24&255}function crypto_core_salsa20(e,t,n,s){core_salsa20(e,t,n,s)}function crypto_core_hsalsa20(e,t,n,s){core_hsalsa20(e,t,n,s)}var I=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function crypto_stream_salsa20_xor(e,t,n,s,i,o,h){var l=new Uint8Array(16),u=new Uint8Array(64);var g,f;for(f=0;f<16;f++)l[f]=0;for(f=0;f<8;f++)l[f]=o[f];while(i>=64){crypto_core_salsa20(u,l,h,I);for(f=0;f<64;f++)e[t+f]=n[s+f]^u[f];g=1;for(f=8;f<16;f++){g=g+(l[f]&255)|0;l[f]=g&255;g>>>=8}i-=64;t+=64;s+=64}if(i>0){crypto_core_salsa20(u,l,h,I);for(f=0;f=64){crypto_core_salsa20(h,o,i,I);for(u=0;u<64;u++)e[t+u]=h[u];l=1;for(u=8;u<16;u++){l=l+(o[u]&255)|0;o[u]=l&255;l>>>=8}n-=64;t+=64}if(n>0){crypto_core_salsa20(h,o,i,I);for(u=0;u>>13|n<<3)&8191;s=e[4]&255|(e[5]&255)<<8;this.r[2]=(n>>>10|s<<6)&7939;i=e[6]&255|(e[7]&255)<<8;this.r[3]=(s>>>7|i<<9)&8191;o=e[8]&255|(e[9]&255)<<8;this.r[4]=(i>>>4|o<<12)&255;this.r[5]=o>>>1&8190;h=e[10]&255|(e[11]&255)<<8;this.r[6]=(o>>>14|h<<2)&8191;l=e[12]&255|(e[13]&255)<<8;this.r[7]=(h>>>11|l<<5)&8065;u=e[14]&255|(e[15]&255)<<8;this.r[8]=(l>>>8|u<<8)&8191;this.r[9]=u>>>5&127;this.pad[0]=e[16]&255|(e[17]&255)<<8;this.pad[1]=e[18]&255|(e[19]&255)<<8;this.pad[2]=e[20]&255|(e[21]&255)<<8;this.pad[3]=e[22]&255|(e[23]&255)<<8;this.pad[4]=e[24]&255|(e[25]&255)<<8;this.pad[5]=e[26]&255|(e[27]&255)<<8;this.pad[6]=e[28]&255|(e[29]&255)<<8;this.pad[7]=e[30]&255|(e[31]&255)<<8};poly1305.prototype.blocks=function(e,t,n){var s=this.fin?0:1<<11;var i,o,h,l,u,g,f,E,I;var C,B,Q,p,y,w,b,R,k,_;var D=this.h[0],U=this.h[1],L=this.h[2],v=this.h[3],T=this.h[4],O=this.h[5],P=this.h[6],x=this.h[7],Y=this.h[8],G=this.h[9];var J=this.r[0],W=this.r[1],V=this.r[2],q=this.r[3],j=this.r[4],z=this.r[5],$=this.r[6],ee=this.r[7],te=this.r[8],Ae=this.r[9];while(n>=16){i=e[t+0]&255|(e[t+1]&255)<<8;D+=i&8191;o=e[t+2]&255|(e[t+3]&255)<<8;U+=(i>>>13|o<<3)&8191;h=e[t+4]&255|(e[t+5]&255)<<8;L+=(o>>>10|h<<6)&8191;l=e[t+6]&255|(e[t+7]&255)<<8;v+=(h>>>7|l<<9)&8191;u=e[t+8]&255|(e[t+9]&255)<<8;T+=(l>>>4|u<<12)&8191;O+=u>>>1&8191;g=e[t+10]&255|(e[t+11]&255)<<8;P+=(u>>>14|g<<2)&8191;f=e[t+12]&255|(e[t+13]&255)<<8;x+=(g>>>11|f<<5)&8191;E=e[t+14]&255|(e[t+15]&255)<<8;Y+=(f>>>8|E<<8)&8191;G+=E>>>5|s;I=0;C=I;C+=D*J;C+=U*(5*Ae);C+=L*(5*te);C+=v*(5*ee);C+=T*(5*$);I=C>>>13;C&=8191;C+=O*(5*z);C+=P*(5*j);C+=x*(5*q);C+=Y*(5*V);C+=G*(5*W);I+=C>>>13;C&=8191;B=I;B+=D*W;B+=U*J;B+=L*(5*Ae);B+=v*(5*te);B+=T*(5*ee);I=B>>>13;B&=8191;B+=O*(5*$);B+=P*(5*z);B+=x*(5*j);B+=Y*(5*q);B+=G*(5*V);I+=B>>>13;B&=8191;Q=I;Q+=D*V;Q+=U*W;Q+=L*J;Q+=v*(5*Ae);Q+=T*(5*te);I=Q>>>13;Q&=8191;Q+=O*(5*ee);Q+=P*(5*$);Q+=x*(5*z);Q+=Y*(5*j);Q+=G*(5*q);I+=Q>>>13;Q&=8191;p=I;p+=D*q;p+=U*V;p+=L*W;p+=v*J;p+=T*(5*Ae);I=p>>>13;p&=8191;p+=O*(5*te);p+=P*(5*ee);p+=x*(5*$);p+=Y*(5*z);p+=G*(5*j);I+=p>>>13;p&=8191;y=I;y+=D*j;y+=U*q;y+=L*V;y+=v*W;y+=T*J;I=y>>>13;y&=8191;y+=O*(5*Ae);y+=P*(5*te);y+=x*(5*ee);y+=Y*(5*$);y+=G*(5*z);I+=y>>>13;y&=8191;w=I;w+=D*z;w+=U*j;w+=L*q;w+=v*V;w+=T*W;I=w>>>13;w&=8191;w+=O*J;w+=P*(5*Ae);w+=x*(5*te);w+=Y*(5*ee);w+=G*(5*$);I+=w>>>13;w&=8191;b=I;b+=D*$;b+=U*z;b+=L*j;b+=v*q;b+=T*V;I=b>>>13;b&=8191;b+=O*W;b+=P*J;b+=x*(5*Ae);b+=Y*(5*te);b+=G*(5*ee);I+=b>>>13;b&=8191;R=I;R+=D*ee;R+=U*$;R+=L*z;R+=v*j;R+=T*q;I=R>>>13;R&=8191;R+=O*V;R+=P*W;R+=x*J;R+=Y*(5*Ae);R+=G*(5*te);I+=R>>>13;R&=8191;k=I;k+=D*te;k+=U*ee;k+=L*$;k+=v*z;k+=T*j;I=k>>>13;k&=8191;k+=O*q;k+=P*V;k+=x*W;k+=Y*J;k+=G*(5*Ae);I+=k>>>13;k&=8191;_=I;_+=D*Ae;_+=U*te;_+=L*ee;_+=v*$;_+=T*z;I=_>>>13;_&=8191;_+=O*j;_+=P*q;_+=x*V;_+=Y*W;_+=G*J;I+=_>>>13;_&=8191;I=(I<<2)+I|0;I=I+C|0;C=I&8191;I=I>>>13;B+=I;D=C;U=B;L=Q;v=p;T=y;O=w;P=b;x=R;Y=k;G=_;t+=16;n-=16}this.h[0]=D;this.h[1]=U;this.h[2]=L;this.h[3]=v;this.h[4]=T;this.h[5]=O;this.h[6]=P;this.h[7]=x;this.h[8]=Y;this.h[9]=G};poly1305.prototype.finish=function(e,t){var n=new Uint16Array(10);var s,i,o,h;if(this.leftover){h=this.leftover;this.buffer[h++]=1;for(;h<16;h++)this.buffer[h]=0;this.fin=1;this.blocks(this.buffer,0,16)}s=this.h[1]>>>13;this.h[1]&=8191;for(h=2;h<10;h++){this.h[h]+=s;s=this.h[h]>>>13;this.h[h]&=8191}this.h[0]+=s*5;s=this.h[0]>>>13;this.h[0]&=8191;this.h[1]+=s;s=this.h[1]>>>13;this.h[1]&=8191;this.h[2]+=s;n[0]=this.h[0]+5;s=n[0]>>>13;n[0]&=8191;for(h=1;h<10;h++){n[h]=this.h[h]+s;s=n[h]>>>13;n[h]&=8191}n[9]-=1<<13;i=(s^1)-1;for(h=0;h<10;h++)n[h]&=i;i=~i;for(h=0;h<10;h++)this.h[h]=this.h[h]&i|n[h];this.h[0]=(this.h[0]|this.h[1]<<13)&65535;this.h[1]=(this.h[1]>>>3|this.h[2]<<10)&65535;this.h[2]=(this.h[2]>>>6|this.h[3]<<7)&65535;this.h[3]=(this.h[3]>>>9|this.h[4]<<4)&65535;this.h[4]=(this.h[4]>>>12|this.h[5]<<1|this.h[6]<<14)&65535;this.h[5]=(this.h[6]>>>2|this.h[7]<<11)&65535;this.h[6]=(this.h[7]>>>5|this.h[8]<<8)&65535;this.h[7]=(this.h[8]>>>8|this.h[9]<<5)&65535;o=this.h[0]+this.pad[0];this.h[0]=o&65535;for(h=1;h<8;h++){o=(this.h[h]+this.pad[h]|0)+(o>>>16)|0;this.h[h]=o&65535}e[t+0]=this.h[0]>>>0&255;e[t+1]=this.h[0]>>>8&255;e[t+2]=this.h[1]>>>0&255;e[t+3]=this.h[1]>>>8&255;e[t+4]=this.h[2]>>>0&255;e[t+5]=this.h[2]>>>8&255;e[t+6]=this.h[3]>>>0&255;e[t+7]=this.h[3]>>>8&255;e[t+8]=this.h[4]>>>0&255;e[t+9]=this.h[4]>>>8&255;e[t+10]=this.h[5]>>>0&255;e[t+11]=this.h[5]>>>8&255;e[t+12]=this.h[6]>>>0&255;e[t+13]=this.h[6]>>>8&255;e[t+14]=this.h[7]>>>0&255;e[t+15]=this.h[7]>>>8&255};poly1305.prototype.update=function(e,t,n){var s,i;if(this.leftover){i=16-this.leftover;if(i>n)i=n;for(s=0;s=16){i=n-n%16;this.blocks(e,t,i);t+=i;n-=i}if(n){for(s=0;s>16&1);o[n-1]&=65535}o[15]=h[15]-32767-(o[14]>>16&1);i=o[15]>>16&1;o[14]&=65535;sel25519(h,o,1-i)}for(n=0;n<16;n++){e[2*n]=h[n]&255;e[2*n+1]=h[n]>>8}}function neq25519(e,t){var n=new Uint8Array(32),s=new Uint8Array(32);pack25519(n,e);pack25519(s,t);return crypto_verify_32(n,0,s,0)}function par25519(e){var t=new Uint8Array(32);pack25519(t,e);return t[0]&1}function unpack25519(e,t){var n;for(n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}function A(e,t,n){for(var s=0;s<16;s++)e[s]=t[s]+n[s]}function Z(e,t,n){for(var s=0;s<16;s++)e[s]=t[s]-n[s]}function M(e,t,n){var s,i,o=0,h=0,l=0,u=0,g=0,f=0,E=0,I=0,C=0,B=0,Q=0,p=0,y=0,w=0,b=0,R=0,k=0,_=0,D=0,U=0,L=0,v=0,T=0,O=0,P=0,x=0,Y=0,G=0,J=0,W=0,V=0,q=n[0],j=n[1],z=n[2],$=n[3],ee=n[4],te=n[5],Ae=n[6],re=n[7],ne=n[8],se=n[9],ie=n[10],oe=n[11],ae=n[12],ce=n[13],he=n[14],le=n[15];s=t[0];o+=s*q;h+=s*j;l+=s*z;u+=s*$;g+=s*ee;f+=s*te;E+=s*Ae;I+=s*re;C+=s*ne;B+=s*se;Q+=s*ie;p+=s*oe;y+=s*ae;w+=s*ce;b+=s*he;R+=s*le;s=t[1];h+=s*q;l+=s*j;u+=s*z;g+=s*$;f+=s*ee;E+=s*te;I+=s*Ae;C+=s*re;B+=s*ne;Q+=s*se;p+=s*ie;y+=s*oe;w+=s*ae;b+=s*ce;R+=s*he;k+=s*le;s=t[2];l+=s*q;u+=s*j;g+=s*z;f+=s*$;E+=s*ee;I+=s*te;C+=s*Ae;B+=s*re;Q+=s*ne;p+=s*se;y+=s*ie;w+=s*oe;b+=s*ae;R+=s*ce;k+=s*he;_+=s*le;s=t[3];u+=s*q;g+=s*j;f+=s*z;E+=s*$;I+=s*ee;C+=s*te;B+=s*Ae;Q+=s*re;p+=s*ne;y+=s*se;w+=s*ie;b+=s*oe;R+=s*ae;k+=s*ce;_+=s*he;D+=s*le;s=t[4];g+=s*q;f+=s*j;E+=s*z;I+=s*$;C+=s*ee;B+=s*te;Q+=s*Ae;p+=s*re;y+=s*ne;w+=s*se;b+=s*ie;R+=s*oe;k+=s*ae;_+=s*ce;D+=s*he;U+=s*le;s=t[5];f+=s*q;E+=s*j;I+=s*z;C+=s*$;B+=s*ee;Q+=s*te;p+=s*Ae;y+=s*re;w+=s*ne;b+=s*se;R+=s*ie;k+=s*oe;_+=s*ae;D+=s*ce;U+=s*he;L+=s*le;s=t[6];E+=s*q;I+=s*j;C+=s*z;B+=s*$;Q+=s*ee;p+=s*te;y+=s*Ae;w+=s*re;b+=s*ne;R+=s*se;k+=s*ie;_+=s*oe;D+=s*ae;U+=s*ce;L+=s*he;v+=s*le;s=t[7];I+=s*q;C+=s*j;B+=s*z;Q+=s*$;p+=s*ee;y+=s*te;w+=s*Ae;b+=s*re;R+=s*ne;k+=s*se;_+=s*ie;D+=s*oe;U+=s*ae;L+=s*ce;v+=s*he;T+=s*le;s=t[8];C+=s*q;B+=s*j;Q+=s*z;p+=s*$;y+=s*ee;w+=s*te;b+=s*Ae;R+=s*re;k+=s*ne;_+=s*se;D+=s*ie;U+=s*oe;L+=s*ae;v+=s*ce;T+=s*he;O+=s*le;s=t[9];B+=s*q;Q+=s*j;p+=s*z;y+=s*$;w+=s*ee;b+=s*te;R+=s*Ae;k+=s*re;_+=s*ne;D+=s*se;U+=s*ie;L+=s*oe;v+=s*ae;T+=s*ce;O+=s*he;P+=s*le;s=t[10];Q+=s*q;p+=s*j;y+=s*z;w+=s*$;b+=s*ee;R+=s*te;k+=s*Ae;_+=s*re;D+=s*ne;U+=s*se;L+=s*ie;v+=s*oe;T+=s*ae;O+=s*ce;P+=s*he;x+=s*le;s=t[11];p+=s*q;y+=s*j;w+=s*z;b+=s*$;R+=s*ee;k+=s*te;_+=s*Ae;D+=s*re;U+=s*ne;L+=s*se;v+=s*ie;T+=s*oe;O+=s*ae;P+=s*ce;x+=s*he;Y+=s*le;s=t[12];y+=s*q;w+=s*j;b+=s*z;R+=s*$;k+=s*ee;_+=s*te;D+=s*Ae;U+=s*re;L+=s*ne;v+=s*se;T+=s*ie;O+=s*oe;P+=s*ae;x+=s*ce;Y+=s*he;G+=s*le;s=t[13];w+=s*q;b+=s*j;R+=s*z;k+=s*$;_+=s*ee;D+=s*te;U+=s*Ae;L+=s*re;v+=s*ne;T+=s*se;O+=s*ie;P+=s*oe;x+=s*ae;Y+=s*ce;G+=s*he;J+=s*le;s=t[14];b+=s*q;R+=s*j;k+=s*z;_+=s*$;D+=s*ee;U+=s*te;L+=s*Ae;v+=s*re;T+=s*ne;O+=s*se;P+=s*ie;x+=s*oe;Y+=s*ae;G+=s*ce;J+=s*he;W+=s*le;s=t[15];R+=s*q;k+=s*j;_+=s*z;D+=s*$;U+=s*ee;L+=s*te;v+=s*Ae;T+=s*re;O+=s*ne;P+=s*se;x+=s*ie;Y+=s*oe;G+=s*ae;J+=s*ce;W+=s*he;V+=s*le;o+=38*k;h+=38*_;l+=38*D;u+=38*U;g+=38*L;f+=38*v;E+=38*T;I+=38*O;C+=38*P;B+=38*x;Q+=38*Y;p+=38*G;y+=38*J;w+=38*W;b+=38*V;i=1;s=o+i+65535;i=Math.floor(s/65536);o=s-i*65536;s=h+i+65535;i=Math.floor(s/65536);h=s-i*65536;s=l+i+65535;i=Math.floor(s/65536);l=s-i*65536;s=u+i+65535;i=Math.floor(s/65536);u=s-i*65536;s=g+i+65535;i=Math.floor(s/65536);g=s-i*65536;s=f+i+65535;i=Math.floor(s/65536);f=s-i*65536;s=E+i+65535;i=Math.floor(s/65536);E=s-i*65536;s=I+i+65535;i=Math.floor(s/65536);I=s-i*65536;s=C+i+65535;i=Math.floor(s/65536);C=s-i*65536;s=B+i+65535;i=Math.floor(s/65536);B=s-i*65536;s=Q+i+65535;i=Math.floor(s/65536);Q=s-i*65536;s=p+i+65535;i=Math.floor(s/65536);p=s-i*65536;s=y+i+65535;i=Math.floor(s/65536);y=s-i*65536;s=w+i+65535;i=Math.floor(s/65536);w=s-i*65536;s=b+i+65535;i=Math.floor(s/65536);b=s-i*65536;s=R+i+65535;i=Math.floor(s/65536);R=s-i*65536;o+=i-1+37*(i-1);i=1;s=o+i+65535;i=Math.floor(s/65536);o=s-i*65536;s=h+i+65535;i=Math.floor(s/65536);h=s-i*65536;s=l+i+65535;i=Math.floor(s/65536);l=s-i*65536;s=u+i+65535;i=Math.floor(s/65536);u=s-i*65536;s=g+i+65535;i=Math.floor(s/65536);g=s-i*65536;s=f+i+65535;i=Math.floor(s/65536);f=s-i*65536;s=E+i+65535;i=Math.floor(s/65536);E=s-i*65536;s=I+i+65535;i=Math.floor(s/65536);I=s-i*65536;s=C+i+65535;i=Math.floor(s/65536);C=s-i*65536;s=B+i+65535;i=Math.floor(s/65536);B=s-i*65536;s=Q+i+65535;i=Math.floor(s/65536);Q=s-i*65536;s=p+i+65535;i=Math.floor(s/65536);p=s-i*65536;s=y+i+65535;i=Math.floor(s/65536);y=s-i*65536;s=w+i+65535;i=Math.floor(s/65536);w=s-i*65536;s=b+i+65535;i=Math.floor(s/65536);b=s-i*65536;s=R+i+65535;i=Math.floor(s/65536);R=s-i*65536;o+=i-1+37*(i-1);e[0]=o;e[1]=h;e[2]=l;e[3]=u;e[4]=g;e[5]=f;e[6]=E;e[7]=I;e[8]=C;e[9]=B;e[10]=Q;e[11]=p;e[12]=y;e[13]=w;e[14]=b;e[15]=R}function S(e,t){M(e,t,t)}function inv25519(e,t){var n=gf();var s;for(s=0;s<16;s++)n[s]=t[s];for(s=253;s>=0;s--){S(n,n);if(s!==2&&s!==4)M(n,n,t)}for(s=0;s<16;s++)e[s]=n[s]}function pow2523(e,t){var n=gf();var s;for(s=0;s<16;s++)n[s]=t[s];for(s=250;s>=0;s--){S(n,n);if(s!==1)M(n,n,t)}for(s=0;s<16;s++)e[s]=n[s]}function crypto_scalarmult(e,t,n){var s=new Uint8Array(32);var i=new Float64Array(80),o,l;var u=gf(),g=gf(),f=gf(),E=gf(),I=gf(),C=gf();for(l=0;l<31;l++)s[l]=t[l];s[31]=t[31]&127|64;s[0]&=248;unpack25519(i,n);for(l=0;l<16;l++){g[l]=i[l];E[l]=u[l]=f[l]=0}u[0]=E[0]=1;for(l=254;l>=0;--l){o=s[l>>>3]>>>(l&7)&1;sel25519(u,g,o);sel25519(f,E,o);A(I,u,f);Z(u,u,f);A(f,g,E);Z(g,g,E);S(E,I);S(C,u);M(u,f,u);M(f,g,I);A(I,u,f);Z(u,u,f);S(g,u);Z(f,E,C);M(u,f,h);A(u,u,E);M(f,f,u);M(u,E,C);M(E,g,i);S(g,I);sel25519(u,g,o);sel25519(f,E,o)}for(l=0;l<16;l++){i[l+16]=u[l];i[l+32]=f[l];i[l+48]=g[l];i[l+64]=E[l]}var B=i.subarray(32);var Q=i.subarray(16);inv25519(B,B);M(Q,Q,B);pack25519(e,Q);return 0}function crypto_scalarmult_base(e,t){return crypto_scalarmult(e,t,s)}function crypto_box_keypair(e,t){randombytes(t,32);return crypto_scalarmult_base(e,t)}function crypto_box_beforenm(e,n,s){var i=new Uint8Array(32);crypto_scalarmult(i,s,n);return crypto_core_hsalsa20(e,t,i,I)}var C=crypto_secretbox;var B=crypto_secretbox_open;function crypto_box(e,t,n,s,i,o){var h=new Uint8Array(32);crypto_box_beforenm(h,i,o);return C(e,t,n,s,h)}function crypto_box_open(e,t,n,s,i,o){var h=new Uint8Array(32);crypto_box_beforenm(h,i,o);return B(e,t,n,s,h)}var Q=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function crypto_hashblocks_hl(e,t,n,s){var i=new Int32Array(16),o=new Int32Array(16),h,l,u,g,f,E,I,C,B,p,y,w,b,R,k,_,D,U,L,v,T,O,P,x,Y,G;var J=e[0],W=e[1],V=e[2],q=e[3],j=e[4],z=e[5],$=e[6],ee=e[7],te=t[0],Ae=t[1],re=t[2],ne=t[3],se=t[4],ie=t[5],oe=t[6],ae=t[7];var ce=0;while(s>=128){for(L=0;L<16;L++){v=8*L+ce;i[L]=n[v+0]<<24|n[v+1]<<16|n[v+2]<<8|n[v+3];o[L]=n[v+4]<<24|n[v+5]<<16|n[v+6]<<8|n[v+7]}for(L=0;L<80;L++){h=J;l=W;u=V;g=q;f=j;E=z;I=$;C=ee;B=te;p=Ae;y=re;w=ne;b=se;R=ie;k=oe;_=ae;T=ee;O=ae;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=(j>>>14|se<<32-14)^(j>>>18|se<<32-18)^(se>>>41-32|j<<32-(41-32));O=(se>>>14|j<<32-14)^(se>>>18|j<<32-18)^(j>>>41-32|se<<32-(41-32));P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;T=j&z^~j&$;O=se&ie^~se&oe;P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;T=Q[L*2];O=Q[L*2+1];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;T=i[L%16];O=o[L%16];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;D=Y&65535|G<<16;U=P&65535|x<<16;T=D;O=U;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=(J>>>28|te<<32-28)^(te>>>34-32|J<<32-(34-32))^(te>>>39-32|J<<32-(39-32));O=(te>>>28|J<<32-28)^(J>>>34-32|te<<32-(34-32))^(J>>>39-32|te<<32-(39-32));P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;T=J&W^J&V^W&V;O=te&Ae^te&re^Ae&re;P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;C=Y&65535|G<<16;_=P&65535|x<<16;T=g;O=w;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=D;O=U;P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;g=Y&65535|G<<16;w=P&65535|x<<16;W=h;V=l;q=u;j=g;z=f;$=E;ee=I;J=C;Ae=B;re=p;ne=y;se=w;ie=b;oe=R;ae=k;te=_;if(L%16===15){for(v=0;v<16;v++){T=i[v];O=o[v];P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=i[(v+9)%16];O=o[(v+9)%16];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;D=i[(v+1)%16];U=o[(v+1)%16];T=(D>>>1|U<<32-1)^(D>>>8|U<<32-8)^D>>>7;O=(U>>>1|D<<32-1)^(U>>>8|D<<32-8)^(U>>>7|D<<32-7);P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;D=i[(v+14)%16];U=o[(v+14)%16];T=(D>>>19|U<<32-19)^(U>>>61-32|D<<32-(61-32))^D>>>6;O=(U>>>19|D<<32-19)^(D>>>61-32|U<<32-(61-32))^(U>>>6|D<<32-6);P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;i[v]=Y&65535|G<<16;o[v]=P&65535|x<<16}}}T=J;O=te;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[0];O=t[0];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[0]=J=Y&65535|G<<16;t[0]=te=P&65535|x<<16;T=W;O=Ae;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[1];O=t[1];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[1]=W=Y&65535|G<<16;t[1]=Ae=P&65535|x<<16;T=V;O=re;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[2];O=t[2];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[2]=V=Y&65535|G<<16;t[2]=re=P&65535|x<<16;T=q;O=ne;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[3];O=t[3];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[3]=q=Y&65535|G<<16;t[3]=ne=P&65535|x<<16;T=j;O=se;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[4];O=t[4];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[4]=j=Y&65535|G<<16;t[4]=se=P&65535|x<<16;T=z;O=ie;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[5];O=t[5];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[5]=z=Y&65535|G<<16;t[5]=ie=P&65535|x<<16;T=$;O=oe;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[6];O=t[6];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[6]=$=Y&65535|G<<16;t[6]=oe=P&65535|x<<16;T=ee;O=ae;P=O&65535;x=O>>>16;Y=T&65535;G=T>>>16;T=e[7];O=t[7];P+=O&65535;x+=O>>>16;Y+=T&65535;G+=T>>>16;x+=P>>>16;Y+=x>>>16;G+=Y>>>16;e[7]=ee=Y&65535|G<<16;t[7]=ae=P&65535|x<<16;ce+=128;s-=128}return s}function crypto_hash(e,t,n){var s=new Int32Array(8),i=new Int32Array(8),o=new Uint8Array(256),h,l=n;s[0]=1779033703;s[1]=3144134277;s[2]=1013904242;s[3]=2773480762;s[4]=1359893119;s[5]=2600822924;s[6]=528734635;s[7]=1541459225;i[0]=4089235720;i[1]=2227873595;i[2]=4271175723;i[3]=1595750129;i[4]=2917565137;i[5]=725511199;i[6]=4215389547;i[7]=327033209;crypto_hashblocks_hl(s,i,t,n);n%=128;for(h=0;h=0;--h){s=n[h/8|0]>>(h&7)&1;cswap(e,t,s);add(t,e);add(e,e);cswap(e,t,s)}}function scalarbase(e,t){var n=[gf(),gf(),gf(),gf()];set25519(n[0],g);set25519(n[1],f);set25519(n[2],o);M(n[3],g,f);scalarmult(e,n,t)}function crypto_sign_keypair(e,t,n){var s=new Uint8Array(64);var i=[gf(),gf(),gf(),gf()];var o;if(!n)randombytes(t,32);crypto_hash(s,t,32);s[0]&=248;s[31]&=127;s[31]|=64;scalarbase(i,s);pack(e,i);for(o=0;o<32;o++)t[o+32]=e[o];return 0}var p=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function modL(e,t){var n,s,i,o;for(s=63;s>=32;--s){n=0;for(i=s-32,o=s-12;i>8;t[i]-=n*256}t[i]+=n;t[s]=0}n=0;for(i=0;i<32;i++){t[i]+=n-(t[31]>>4)*p[i];n=t[i]>>8;t[i]&=255}for(i=0;i<32;i++)t[i]-=n*p[i];for(s=0;s<32;s++){t[s+1]+=t[s]>>8;e[s]=t[s]&255}}function reduce(e){var t=new Float64Array(64),n;for(n=0;n<64;n++)t[n]=e[n];for(n=0;n<64;n++)e[n]=0;modL(e,t)}function crypto_sign(e,t,n,s){var i=new Uint8Array(64),o=new Uint8Array(64),h=new Uint8Array(64);var l,u,g=new Float64Array(64);var f=[gf(),gf(),gf(),gf()];crypto_hash(i,s,32);i[0]&=248;i[31]&=127;i[31]|=64;var E=n+64;for(l=0;l>7)Z(e[0],i,e[0]);M(e[3],e[0],e[1]);return 0}function crypto_sign_open(e,t,n,s){var i,o;var h=new Uint8Array(32),l=new Uint8Array(64);var u=[gf(),gf(),gf(),gf()],g=[gf(),gf(),gf(),gf()];o=-1;if(n<64)return-1;if(unpackneg(g,s))return-1;for(i=0;i=0};e.sign.keyPair=function(){var e=new Uint8Array(x);var t=new Uint8Array(Y);crypto_sign_keypair(e,t);return{publicKey:e,secretKey:t}};e.sign.keyPair.fromSecretKey=function(e){checkArrayTypes(e);if(e.length!==Y)throw new Error("bad secret key size");var t=new Uint8Array(x);for(var n=0;n{var n=void 0;var s=1e5;var i=function(){var e=Object.prototype.toString,t=Object.prototype.hasOwnProperty;return{Class:function(t){return e.call(t).replace(/^\[object *|\]$/g,"")},HasProperty:function(e,t){return t in e},HasOwnProperty:function(e,n){return t.call(e,n)},IsCallable:function(e){return typeof e==="function"},ToInt32:function(e){return e>>0},ToUint32:function(e){return e>>>0}}}();var o=Math.LN2,h=Math.abs,l=Math.floor,u=Math.log,g=Math.min,f=Math.pow,E=Math.round;function configureProperties(e){if(C&&I){var t=C(e),n;for(n=0;ns)throw new RangeError("Array too large for polyfill");function makeArrayAccessor(t){I(e,t,{get:function(){return e._getter(t)},set:function(n){e._setter(t,n)},enumerable:true,configurable:false})}var t;for(t=0;t>n}function as_unsigned(e,t){var n=32-t;return e<>>n}function packI8(e){return[e&255]}function unpackI8(e){return as_signed(e[0],8)}function packU8(e){return[e&255]}function unpackU8(e){return as_unsigned(e[0],8)}function packU8Clamped(e){e=E(Number(e));return[e<0?0:e>255?255:e&255]}function packI16(e){return[e>>8&255,e&255]}function unpackI16(e){return as_signed(e[0]<<8|e[1],16)}function packU16(e){return[e>>8&255,e&255]}function unpackU16(e){return as_unsigned(e[0]<<8|e[1],16)}function packI32(e){return[e>>24&255,e>>16&255,e>>8&255,e&255]}function unpackI32(e){return as_signed(e[0]<<24|e[1]<<16|e[2]<<8|e[3],32)}function packU32(e){return[e>>24&255,e>>16&255,e>>8&255,e&255]}function unpackU32(e){return as_unsigned(e[0]<<24|e[1]<<16|e[2]<<8|e[3],32)}function packIEEE754(e,t,n){var s=(1<.5)return t+1;return t%2?t+1:t}if(e!==e){E=(1<=f(2,1-s)){E=g(l(u(e)/o),1023);I=roundToEven(e/f(2,E)*f(2,n));if(I/f(2,n)>=2){E=E+1;I=1}if(E>s){E=(1<>1}}s.reverse();l=s.join("");u=(1<0){return g*f(2,E-u)*(1+I/f(2,n))}else if(I!==0){return g*f(2,-(u-1))*(I/f(2,n))}else{return g<0?-0:0}}function unpackF64(e){return unpackIEEE754(e,11,52)}function packF64(e){return packIEEE754(e,11,52)}function unpackF32(e){return unpackIEEE754(e,8,23)}function packF32(e){return packIEEE754(e,8,23)}(function(){var e=function ArrayBuffer(e){e=i.ToInt32(e);if(e<0)throw new RangeError("ArrayBuffer size is not a small enough positive integer");this.byteLength=e;this._bytes=[];this._bytes.length=e;var t;for(t=0;tthis.buffer.byteLength){throw new RangeError("byteOffset out of range")}if(this.byteOffset%this.BYTES_PER_ELEMENT){throw new RangeError("ArrayBuffer length minus the byteOffset is not a multiple of the element size.")}if(arguments.length<3){this.byteLength=this.buffer.byteLength-this.byteOffset;if(this.byteLength%this.BYTES_PER_ELEMENT){throw new RangeError("length of buffer minus byteOffset not a multiple of the element size")}this.length=this.byteLength/this.BYTES_PER_ELEMENT}else{this.length=i.ToUint32(s);this.byteLength=this.length*this.BYTES_PER_ELEMENT}if(this.byteOffset+this.byteLength>this.buffer.byteLength){throw new RangeError("byteOffset and length reference an area beyond the end of the buffer")}}else{throw new TypeError("Unexpected argument type(s)")}this.constructor=l;configureProperties(this);makeArrayAccessors(this)};l.prototype=new s;l.prototype.BYTES_PER_ELEMENT=t;l.prototype._pack=o;l.prototype._unpack=h;l.BYTES_PER_ELEMENT=t;l.prototype._getter=function(e){if(arguments.length<1)throw new SyntaxError("Not enough arguments");e=i.ToUint32(e);if(e>=this.length){return n}var t=[],s,o;for(s=0,o=this.byteOffset+e*this.BYTES_PER_ELEMENT;s=this.length){return n}var s=this._pack(t),o,h;for(o=0,h=this.byteOffset+e*this.BYTES_PER_ELEMENT;othis.length){throw new RangeError("Offset plus length of array is out of range")}f=this.byteOffset+o*this.BYTES_PER_ELEMENT;E=n.length*this.BYTES_PER_ELEMENT;if(n.buffer===this.buffer){I=[];for(l=0,u=n.byteOffset;lthis.length){throw new RangeError("Offset plus length of array is out of range")}for(l=0;ln?n:e}e=i.ToInt32(e);t=i.ToInt32(t);if(arguments.length<1){e=0}if(arguments.length<2){t=this.length}if(e<0){e=this.length+e}if(t<0){t=this.length+t}e=clamp(e,0,this.length);t=clamp(t,0,this.length);var n=t-e;if(n<0){n=0}return new this.constructor(this.buffer,this.byteOffset+e*this.BYTES_PER_ELEMENT,n)};return l}var o=makeConstructor(1,packI8,unpackI8);var h=makeConstructor(1,packU8,unpackU8);var l=makeConstructor(1,packU8Clamped,unpackU8);var u=makeConstructor(2,packI16,unpackI16);var g=makeConstructor(2,packU16,unpackU16);var f=makeConstructor(4,packI32,unpackI32);var E=makeConstructor(4,packU32,unpackU32);var I=makeConstructor(4,packF32,unpackF32);var C=makeConstructor(8,packF64,unpackF64);t.iq=t.iq||o;t.U2=t.U2||h;t.we=t.we||l;t.M2=t.M2||u;t.HA=t.HA||g;t.ZV=t.ZV||f;t._R=t._R||E;t.$L=t.$L||I;t.I=t.I||C})();(function(){function r(e,t){return i.IsCallable(e.get)?e.get(t):e[t]}var e=function(){var e=new t.HA([4660]),n=new t.U2(e.buffer);return r(n,0)===18}();var n=function DataView(e,n,s){if(arguments.length===0){e=new t.eT(0)}else if(!(e instanceof t.eT||i.Class(e)==="ArrayBuffer")){throw new TypeError("TypeError")}this.buffer=e||new t.eT(0);this.byteOffset=i.ToUint32(n);if(this.byteOffset>this.buffer.byteLength){throw new RangeError("byteOffset out of range")}if(arguments.length<3){this.byteLength=this.buffer.byteLength-this.byteOffset}else{this.byteLength=i.ToUint32(s)}if(this.byteOffset+this.byteLength>this.buffer.byteLength){throw new RangeError("byteOffset and length reference an area beyond the end of the buffer")}configureProperties(this)};function makeGetter(n){return function(s,o){s=i.ToUint32(s);if(s+n.BYTES_PER_ELEMENT>this.byteLength){throw new RangeError("Array index out of range")}s+=this.byteOffset;var h=new t.U2(this.buffer,s,n.BYTES_PER_ELEMENT),l=[],u;for(u=0;uthis.byteLength){throw new RangeError("Array index out of range")}var l=new n([o]),u=new t.U2(l.buffer),g=[],f,E;for(f=0;f{"use strict";const s=n(3598);const i=n(412);const o=n(8045);const h=n(4634);const l=n(7931);const u=n(7890);const g=n(3983);const{InvalidArgumentError:f}=o;const E=n(4059);const I=n(2067);const C=n(8687);const B=n(6771);const Q=n(6193);const p=n(888);const y=n(7858);const{getGlobalDispatcher:w,setGlobalDispatcher:b}=n(1892);const R=n(6930);const k=n(2860);const _=n(8861);let D;try{n(6113);D=true}catch{D=false}Object.assign(i.prototype,E);e.exports.Dispatcher=i;e.exports.Client=s;e.exports.Pool=h;e.exports.BalancedPool=l;e.exports.Agent=u;e.exports.ProxyAgent=y;e.exports.DecoratorHandler=R;e.exports.RedirectHandler=k;e.exports.createRedirectInterceptor=_;e.exports.buildConnector=I;e.exports.errors=o;function makeDispatcher(e){return(t,n,s)=>{if(typeof n==="function"){s=n;n=null}if(!t||typeof t!=="string"&&typeof t!=="object"&&!(t instanceof URL)){throw new f("invalid url")}if(n!=null&&typeof n!=="object"){throw new f("invalid opts")}if(n&&n.path!=null){if(typeof n.path!=="string"){throw new f("invalid opts.path")}let e=n.path;if(!n.path.startsWith("/")){e=`/${e}`}t=new URL(g.parseOrigin(t).origin+e)}else{if(!n){n=typeof t==="object"?t:{}}t=g.parseURL(t)}const{agent:i,dispatcher:o=w()}=n;if(i){throw new f("unsupported opts.agent. Did you mean opts.client?")}return e.call(o,{...n,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:n.method||(n.body?"PUT":"GET")},s)}}e.exports.setGlobalDispatcher=b;e.exports.getGlobalDispatcher=w;if(g.nodeMajor>16||g.nodeMajor===16&&g.nodeMinor>=8){let t=null;e.exports.fetch=async function fetch(e){if(!t){t=n(4881).fetch}try{return await t(...arguments)}catch(e){if(typeof e==="object"){Error.captureStackTrace(e,this)}throw e}};e.exports.Headers=n(554).Headers;e.exports.Response=n(7823).Response;e.exports.Request=n(8359).Request;e.exports.FormData=n(2015).FormData;e.exports.File=n(8511).File;e.exports.FileReader=n(1446).FileReader;const{setGlobalOrigin:s,getGlobalOrigin:i}=n(1246);e.exports.setGlobalOrigin=s;e.exports.getGlobalOrigin=i;const{CacheStorage:o}=n(7907);const{kConstruct:h}=n(9174);e.exports.caches=new o(h)}if(g.nodeMajor>=16){const{deleteCookie:t,getCookies:s,getSetCookies:i,setCookie:o}=n(1724);e.exports.deleteCookie=t;e.exports.getCookies=s;e.exports.getSetCookies=i;e.exports.setCookie=o;const{parseMIMEType:h,serializeAMimeType:l}=n(685);e.exports.parseMIMEType=h;e.exports.serializeAMimeType=l}if(g.nodeMajor>=18&&D){const{WebSocket:t}=n(4284);e.exports.WebSocket=t}e.exports.request=makeDispatcher(E.request);e.exports.stream=makeDispatcher(E.stream);e.exports.pipeline=makeDispatcher(E.pipeline);e.exports.connect=makeDispatcher(E.connect);e.exports.upgrade=makeDispatcher(E.upgrade);e.exports.MockClient=C;e.exports.MockPool=Q;e.exports.MockAgent=B;e.exports.mockErrors=p},7890:(e,t,n)=>{"use strict";const{InvalidArgumentError:s}=n(8045);const{kClients:i,kRunning:o,kClose:h,kDestroy:l,kDispatch:u,kInterceptors:g}=n(2785);const f=n(4839);const E=n(4634);const I=n(3598);const C=n(3983);const B=n(8861);const{WeakRef:Q,FinalizationRegistry:p}=n(6436)();const y=Symbol("onConnect");const w=Symbol("onDisconnect");const b=Symbol("onConnectionError");const R=Symbol("maxRedirections");const k=Symbol("onDrain");const _=Symbol("factory");const D=Symbol("finalizer");const U=Symbol("options");function defaultFactory(e,t){return t&&t.connections===1?new I(e,t):new E(e,t)}class Agent extends f{constructor({factory:e=defaultFactory,maxRedirections:t=0,connect:n,...o}={}){super();if(typeof e!=="function"){throw new s("factory must be a function.")}if(n!=null&&typeof n!=="function"&&typeof n!=="object"){throw new s("connect must be a function or an object")}if(!Number.isInteger(t)||t<0){throw new s("maxRedirections must be a positive number")}if(n&&typeof n!=="function"){n={...n}}this[g]=o.interceptors&&o.interceptors.Agent&&Array.isArray(o.interceptors.Agent)?o.interceptors.Agent:[B({maxRedirections:t})];this[U]={...C.deepClone(o),connect:n};this[U].interceptors=o.interceptors?{...o.interceptors}:undefined;this[R]=t;this[_]=e;this[i]=new Map;this[D]=new p((e=>{const t=this[i].get(e);if(t!==undefined&&t.deref()===undefined){this[i].delete(e)}}));const h=this;this[k]=(e,t)=>{h.emit("drain",e,[h,...t])};this[y]=(e,t)=>{h.emit("connect",e,[h,...t])};this[w]=(e,t,n)=>{h.emit("disconnect",e,[h,...t],n)};this[b]=(e,t,n)=>{h.emit("connectionError",e,[h,...t],n)}}get[o](){let e=0;for(const t of this[i].values()){const n=t.deref();if(n){e+=n[o]}}return e}[u](e,t){let n;if(e.origin&&(typeof e.origin==="string"||e.origin instanceof URL)){n=String(e.origin)}else{throw new s("opts.origin must be a non-empty string or URL.")}const o=this[i].get(n);let h=o?o.deref():null;if(!h){h=this[_](e.origin,this[U]).on("drain",this[k]).on("connect",this[y]).on("disconnect",this[w]).on("connectionError",this[b]);this[i].set(n,new Q(h));this[D].register(h,n)}return h.dispatch(e,t)}async[h](){const e=[];for(const t of this[i].values()){const n=t.deref();if(n){e.push(n.close())}}await Promise.all(e)}async[l](e){const t=[];for(const n of this[i].values()){const s=n.deref();if(s){t.push(s.destroy(e))}}await Promise.all(t)}}e.exports=Agent},7032:(e,t,n)=>{const{addAbortListener:s}=n(3983);const{RequestAbortedError:i}=n(8045);const o=Symbol("kListener");const h=Symbol("kSignal");function abort(e){if(e.abort){e.abort()}else{e.onError(new i)}}function addSignal(e,t){e[h]=null;e[o]=null;if(!t){return}if(t.aborted){abort(e);return}e[h]=t;e[o]=()=>{abort(e)};s(e[h],e[o])}function removeSignal(e){if(!e[h]){return}if("removeEventListener"in e[h]){e[h].removeEventListener("abort",e[o])}else{e[h].removeListener("abort",e[o])}e[h]=null;e[o]=null}e.exports={addSignal:addSignal,removeSignal:removeSignal}},9744:(e,t,n)=>{"use strict";const{AsyncResource:s}=n(852);const{InvalidArgumentError:i,RequestAbortedError:o,SocketError:h}=n(8045);const l=n(3983);const{addSignal:u,removeSignal:g}=n(7032);class ConnectHandler extends s{constructor(e,t){if(!e||typeof e!=="object"){throw new i("invalid opts")}if(typeof t!=="function"){throw new i("invalid callback")}const{signal:n,opaque:s,responseHeaders:o}=e;if(n&&typeof n.on!=="function"&&typeof n.addEventListener!=="function"){throw new i("signal must be an EventEmitter or EventTarget")}super("UNDICI_CONNECT");this.opaque=s||null;this.responseHeaders=o||null;this.callback=t;this.abort=null;u(this,n)}onConnect(e,t){if(!this.callback){throw new o}this.abort=e;this.context=t}onHeaders(){throw new h("bad connect",null)}onUpgrade(e,t,n){const{callback:s,opaque:i,context:o}=this;g(this);this.callback=null;let h=t;if(h!=null){h=this.responseHeaders==="raw"?l.parseRawHeaders(t):l.parseHeaders(t)}this.runInAsyncScope(s,null,null,{statusCode:e,headers:h,socket:n,opaque:i,context:o})}onError(e){const{callback:t,opaque:n}=this;g(this);if(t){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(t,null,e,{opaque:n})}))}}}function connect(e,t){if(t===undefined){return new Promise(((t,n)=>{connect.call(this,e,((e,s)=>e?n(e):t(s)))}))}try{const n=new ConnectHandler(e,t);this.dispatch({...e,method:"CONNECT"},n)}catch(n){if(typeof t!=="function"){throw n}const s=e&&e.opaque;queueMicrotask((()=>t(n,{opaque:s})))}}e.exports=connect},8752:(e,t,n)=>{"use strict";const{Readable:s,Duplex:i,PassThrough:o}=n(2781);const{InvalidArgumentError:h,InvalidReturnValueError:l,RequestAbortedError:u}=n(8045);const g=n(3983);const{AsyncResource:f}=n(852);const{addSignal:E,removeSignal:I}=n(7032);const C=n(9491);const B=Symbol("resume");class PipelineRequest extends s{constructor(){super({autoDestroy:true});this[B]=null}_read(){const{[B]:e}=this;if(e){this[B]=null;e()}}_destroy(e,t){this._read();t(e)}}class PipelineResponse extends s{constructor(e){super({autoDestroy:true});this[B]=e}_read(){this[B]()}_destroy(e,t){if(!e&&!this._readableState.endEmitted){e=new u}t(e)}}class PipelineHandler extends f{constructor(e,t){if(!e||typeof e!=="object"){throw new h("invalid opts")}if(typeof t!=="function"){throw new h("invalid handler")}const{signal:n,method:s,opaque:o,onInfo:l,responseHeaders:f}=e;if(n&&typeof n.on!=="function"&&typeof n.addEventListener!=="function"){throw new h("signal must be an EventEmitter or EventTarget")}if(s==="CONNECT"){throw new h("invalid method")}if(l&&typeof l!=="function"){throw new h("invalid onInfo callback")}super("UNDICI_PIPELINE");this.opaque=o||null;this.responseHeaders=f||null;this.handler=t;this.abort=null;this.context=null;this.onInfo=l||null;this.req=(new PipelineRequest).on("error",g.nop);this.ret=new i({readableObjectMode:e.objectMode,autoDestroy:true,read:()=>{const{body:e}=this;if(e&&e.resume){e.resume()}},write:(e,t,n)=>{const{req:s}=this;if(s.push(e,t)||s._readableState.destroyed){n()}else{s[B]=n}},destroy:(e,t)=>{const{body:n,req:s,res:i,ret:o,abort:h}=this;if(!e&&!o._readableState.endEmitted){e=new u}if(h&&e){h()}g.destroy(n,e);g.destroy(s,e);g.destroy(i,e);I(this);t(e)}}).on("prefinish",(()=>{const{req:e}=this;e.push(null)}));this.res=null;E(this,n)}onConnect(e,t){const{ret:n,res:s}=this;C(!s,"pipeline cannot be retried");if(n.destroyed){throw new u}this.abort=e;this.context=t}onHeaders(e,t,n){const{opaque:s,handler:i,context:o}=this;if(e<200){if(this.onInfo){const n=this.responseHeaders==="raw"?g.parseRawHeaders(t):g.parseHeaders(t);this.onInfo({statusCode:e,headers:n})}return}this.res=new PipelineResponse(n);let h;try{this.handler=null;const n=this.responseHeaders==="raw"?g.parseRawHeaders(t):g.parseHeaders(t);h=this.runInAsyncScope(i,null,{statusCode:e,headers:n,opaque:s,body:this.res,context:o})}catch(e){this.res.on("error",g.nop);throw e}if(!h||typeof h.on!=="function"){throw new l("expected Readable")}h.on("data",(e=>{const{ret:t,body:n}=this;if(!t.push(e)&&n.pause){n.pause()}})).on("error",(e=>{const{ret:t}=this;g.destroy(t,e)})).on("end",(()=>{const{ret:e}=this;e.push(null)})).on("close",(()=>{const{ret:e}=this;if(!e._readableState.ended){g.destroy(e,new u)}}));this.body=h}onData(e){const{res:t}=this;return t.push(e)}onComplete(e){const{res:t}=this;t.push(null)}onError(e){const{ret:t}=this;this.handler=null;g.destroy(t,e)}}function pipeline(e,t){try{const n=new PipelineHandler(e,t);this.dispatch({...e,body:n.req},n);return n.ret}catch(e){return(new o).destroy(e)}}e.exports=pipeline},5448:(e,t,n)=>{"use strict";const s=n(3858);const{InvalidArgumentError:i,RequestAbortedError:o}=n(8045);const h=n(3983);const{getResolveErrorBodyCallback:l}=n(7474);const{AsyncResource:u}=n(852);const{addSignal:g,removeSignal:f}=n(7032);class RequestHandler extends u{constructor(e,t){if(!e||typeof e!=="object"){throw new i("invalid opts")}const{signal:n,method:s,opaque:o,body:l,onInfo:u,responseHeaders:f,throwOnError:E,highWaterMark:I}=e;try{if(typeof t!=="function"){throw new i("invalid callback")}if(I&&(typeof I!=="number"||I<0)){throw new i("invalid highWaterMark")}if(n&&typeof n.on!=="function"&&typeof n.addEventListener!=="function"){throw new i("signal must be an EventEmitter or EventTarget")}if(s==="CONNECT"){throw new i("invalid method")}if(u&&typeof u!=="function"){throw new i("invalid onInfo callback")}super("UNDICI_REQUEST")}catch(e){if(h.isStream(l)){h.destroy(l.on("error",h.nop),e)}throw e}this.responseHeaders=f||null;this.opaque=o||null;this.callback=t;this.res=null;this.abort=null;this.body=l;this.trailers={};this.context=null;this.onInfo=u||null;this.throwOnError=E;this.highWaterMark=I;if(h.isStream(l)){l.on("error",(e=>{this.onError(e)}))}g(this,n)}onConnect(e,t){if(!this.callback){throw new o}this.abort=e;this.context=t}onHeaders(e,t,n,i){const{callback:o,opaque:u,abort:g,context:f,responseHeaders:E,highWaterMark:I}=this;const C=E==="raw"?h.parseRawHeaders(t):h.parseHeaders(t);if(e<200){if(this.onInfo){this.onInfo({statusCode:e,headers:C})}return}const B=E==="raw"?h.parseHeaders(t):C;const Q=B["content-type"];const p=new s({resume:n,abort:g,contentType:Q,highWaterMark:I});this.callback=null;this.res=p;if(o!==null){if(this.throwOnError&&e>=400){this.runInAsyncScope(l,null,{callback:o,body:p,contentType:Q,statusCode:e,statusMessage:i,headers:C})}else{this.runInAsyncScope(o,null,null,{statusCode:e,headers:C,trailers:this.trailers,opaque:u,body:p,context:f})}}}onData(e){const{res:t}=this;return t.push(e)}onComplete(e){const{res:t}=this;f(this);h.parseHeaders(e,this.trailers);t.push(null)}onError(e){const{res:t,callback:n,body:s,opaque:i}=this;f(this);if(n){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(n,null,e,{opaque:i})}))}if(t){this.res=null;queueMicrotask((()=>{h.destroy(t,e)}))}if(s){this.body=null;h.destroy(s,e)}}}function request(e,t){if(t===undefined){return new Promise(((t,n)=>{request.call(this,e,((e,s)=>e?n(e):t(s)))}))}try{this.dispatch(e,new RequestHandler(e,t))}catch(n){if(typeof t!=="function"){throw n}const s=e&&e.opaque;queueMicrotask((()=>t(n,{opaque:s})))}}e.exports=request},5395:(e,t,n)=>{"use strict";const{finished:s,PassThrough:i}=n(2781);const{InvalidArgumentError:o,InvalidReturnValueError:h,RequestAbortedError:l}=n(8045);const u=n(3983);const{getResolveErrorBodyCallback:g}=n(7474);const{AsyncResource:f}=n(852);const{addSignal:E,removeSignal:I}=n(7032);class StreamHandler extends f{constructor(e,t,n){if(!e||typeof e!=="object"){throw new o("invalid opts")}const{signal:s,method:i,opaque:h,body:l,onInfo:g,responseHeaders:f,throwOnError:I}=e;try{if(typeof n!=="function"){throw new o("invalid callback")}if(typeof t!=="function"){throw new o("invalid factory")}if(s&&typeof s.on!=="function"&&typeof s.addEventListener!=="function"){throw new o("signal must be an EventEmitter or EventTarget")}if(i==="CONNECT"){throw new o("invalid method")}if(g&&typeof g!=="function"){throw new o("invalid onInfo callback")}super("UNDICI_STREAM")}catch(e){if(u.isStream(l)){u.destroy(l.on("error",u.nop),e)}throw e}this.responseHeaders=f||null;this.opaque=h||null;this.factory=t;this.callback=n;this.res=null;this.abort=null;this.context=null;this.trailers=null;this.body=l;this.onInfo=g||null;this.throwOnError=I||false;if(u.isStream(l)){l.on("error",(e=>{this.onError(e)}))}E(this,s)}onConnect(e,t){if(!this.callback){throw new l}this.abort=e;this.context=t}onHeaders(e,t,n,o){const{factory:l,opaque:f,context:E,callback:I,responseHeaders:C}=this;const B=C==="raw"?u.parseRawHeaders(t):u.parseHeaders(t);if(e<200){if(this.onInfo){this.onInfo({statusCode:e,headers:B})}return}this.factory=null;let Q;if(this.throwOnError&&e>=400){const n=C==="raw"?u.parseHeaders(t):B;const s=n["content-type"];Q=new i;this.callback=null;this.runInAsyncScope(g,null,{callback:I,body:Q,contentType:s,statusCode:e,statusMessage:o,headers:B})}else{if(l===null){return}Q=this.runInAsyncScope(l,null,{statusCode:e,headers:B,opaque:f,context:E});if(!Q||typeof Q.write!=="function"||typeof Q.end!=="function"||typeof Q.on!=="function"){throw new h("expected Writable")}s(Q,{readable:false},(e=>{const{callback:t,res:n,opaque:s,trailers:i,abort:o}=this;this.res=null;if(e||!n.readable){u.destroy(n,e)}this.callback=null;this.runInAsyncScope(t,null,e||null,{opaque:s,trailers:i});if(e){o()}}))}Q.on("drain",n);this.res=Q;const p=Q.writableNeedDrain!==undefined?Q.writableNeedDrain:Q._writableState&&Q._writableState.needDrain;return p!==true}onData(e){const{res:t}=this;return t?t.write(e):true}onComplete(e){const{res:t}=this;I(this);if(!t){return}this.trailers=u.parseHeaders(e);t.end()}onError(e){const{res:t,callback:n,opaque:s,body:i}=this;I(this);this.factory=null;if(t){this.res=null;u.destroy(t,e)}else if(n){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(n,null,e,{opaque:s})}))}if(i){this.body=null;u.destroy(i,e)}}}function stream(e,t,n){if(n===undefined){return new Promise(((n,s)=>{stream.call(this,e,t,((e,t)=>e?s(e):n(t)))}))}try{this.dispatch(e,new StreamHandler(e,t,n))}catch(t){if(typeof n!=="function"){throw t}const s=e&&e.opaque;queueMicrotask((()=>n(t,{opaque:s})))}}e.exports=stream},6923:(e,t,n)=>{"use strict";const{InvalidArgumentError:s,RequestAbortedError:i,SocketError:o}=n(8045);const{AsyncResource:h}=n(852);const l=n(3983);const{addSignal:u,removeSignal:g}=n(7032);const f=n(9491);class UpgradeHandler extends h{constructor(e,t){if(!e||typeof e!=="object"){throw new s("invalid opts")}if(typeof t!=="function"){throw new s("invalid callback")}const{signal:n,opaque:i,responseHeaders:o}=e;if(n&&typeof n.on!=="function"&&typeof n.addEventListener!=="function"){throw new s("signal must be an EventEmitter or EventTarget")}super("UNDICI_UPGRADE");this.responseHeaders=o||null;this.opaque=i||null;this.callback=t;this.abort=null;this.context=null;u(this,n)}onConnect(e,t){if(!this.callback){throw new i}this.abort=e;this.context=null}onHeaders(){throw new o("bad upgrade",null)}onUpgrade(e,t,n){const{callback:s,opaque:i,context:o}=this;f.strictEqual(e,101);g(this);this.callback=null;const h=this.responseHeaders==="raw"?l.parseRawHeaders(t):l.parseHeaders(t);this.runInAsyncScope(s,null,null,{headers:h,socket:n,opaque:i,context:o})}onError(e){const{callback:t,opaque:n}=this;g(this);if(t){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(t,null,e,{opaque:n})}))}}}function upgrade(e,t){if(t===undefined){return new Promise(((t,n)=>{upgrade.call(this,e,((e,s)=>e?n(e):t(s)))}))}try{const n=new UpgradeHandler(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},n)}catch(n){if(typeof t!=="function"){throw n}const s=e&&e.opaque;queueMicrotask((()=>t(n,{opaque:s})))}}e.exports=upgrade},4059:(e,t,n)=>{"use strict";e.exports.request=n(5448);e.exports.stream=n(5395);e.exports.pipeline=n(8752);e.exports.upgrade=n(6923);e.exports.connect=n(9744)},3858:(e,t,n)=>{"use strict";const s=n(9491);const{Readable:i}=n(2781);const{RequestAbortedError:o,NotSupportedError:h,InvalidArgumentError:l}=n(8045);const u=n(3983);const{ReadableStreamFrom:g,toUSVString:f}=n(3983);let E;const I=Symbol("kConsume");const C=Symbol("kReading");const B=Symbol("kBody");const Q=Symbol("abort");const p=Symbol("kContentType");e.exports=class BodyReadable extends i{constructor({resume:e,abort:t,contentType:n="",highWaterMark:s=64*1024}){super({autoDestroy:true,read:e,highWaterMark:s});this._readableState.dataEmitted=false;this[Q]=t;this[I]=null;this[B]=null;this[p]=n;this[C]=false}destroy(e){if(this.destroyed){return this}if(!e&&!this._readableState.endEmitted){e=new o}if(e){this[Q]()}return super.destroy(e)}emit(e,...t){if(e==="data"){this._readableState.dataEmitted=true}else if(e==="error"){this._readableState.errorEmitted=true}return super.emit(e,...t)}on(e,...t){if(e==="data"||e==="readable"){this[C]=true}return super.on(e,...t)}addListener(e,...t){return this.on(e,...t)}off(e,...t){const n=super.off(e,...t);if(e==="data"||e==="readable"){this[C]=this.listenerCount("data")>0||this.listenerCount("readable")>0}return n}removeListener(e,...t){return this.off(e,...t)}push(e){if(this[I]&&e!==null&&this.readableLength===0){consumePush(this[I],e);return this[C]?super.push(e):true}return super.push(e)}async text(){return consume(this,"text")}async json(){return consume(this,"json")}async blob(){return consume(this,"blob")}async arrayBuffer(){return consume(this,"arrayBuffer")}async formData(){throw new h}get bodyUsed(){return u.isDisturbed(this)}get body(){if(!this[B]){this[B]=g(this);if(this[I]){this[B].getReader();s(this[B].locked)}}return this[B]}async dump(e){let t=e&&Number.isFinite(e.limit)?e.limit:262144;const n=e&&e.signal;const abortFn=()=>{this.destroy()};let s;if(n){if(typeof n!=="object"||!("aborted"in n)){throw new l("signal must be an AbortSignal")}u.throwIfAborted(n);s=u.addAbortListener(n,abortFn)}try{for await(const e of this){u.throwIfAborted(n);t-=Buffer.byteLength(e);if(t<0){return}}}catch{u.throwIfAborted(n)}finally{if(typeof s==="function"){s()}else if(s){s[Symbol.dispose]()}}}};function isLocked(e){return e[B]&&e[B].locked===true||e[I]}function isUnusable(e){return u.isDisturbed(e)||isLocked(e)}async function consume(e,t){if(isUnusable(e)){throw new TypeError("unusable")}s(!e[I]);return new Promise(((n,s)=>{e[I]={type:t,stream:e,resolve:n,reject:s,length:0,body:[]};e.on("error",(function(e){consumeFinish(this[I],e)})).on("close",(function(){if(this[I].body!==null){consumeFinish(this[I],new o)}}));process.nextTick(consumeStart,e[I])}))}function consumeStart(e){if(e.body===null){return}const{_readableState:t}=e.stream;for(const n of t.buffer){consumePush(e,n)}if(t.endEmitted){consumeEnd(this[I])}else{e.stream.on("end",(function(){consumeEnd(this[I])}))}e.stream.resume();while(e.stream.read()!=null){}}function consumeEnd(e){const{type:t,body:s,resolve:i,stream:o,length:h}=e;try{if(t==="text"){i(f(Buffer.concat(s)))}else if(t==="json"){i(JSON.parse(Buffer.concat(s)))}else if(t==="arrayBuffer"){const e=new Uint8Array(h);let t=0;for(const n of s){e.set(n,t);t+=n.byteLength}i(e.buffer)}else if(t==="blob"){if(!E){E=n(4300).Blob}i(new E(s,{type:o[p]}))}consumeFinish(e)}catch(e){o.destroy(e)}}function consumePush(e,t){e.length+=t.length;e.body.push(t)}function consumeFinish(e,t){if(e.body===null){return}if(t){e.reject(t)}else{e.resolve()}e.type=null;e.stream=null;e.resolve=null;e.reject=null;e.length=0;e.body=null}},7474:(e,t,n)=>{const s=n(9491);const{ResponseStatusCodeError:i}=n(8045);const{toUSVString:o}=n(3983);async function getResolveErrorBodyCallback({callback:e,body:t,contentType:n,statusCode:h,statusMessage:l,headers:u}){s(t);let g=[];let f=0;for await(const e of t){g.push(e);f+=e.length;if(f>128*1024){g=null;break}}if(h===204||!n||!g){process.nextTick(e,new i(`Response status code ${h}${l?`: ${l}`:""}`,h,u));return}try{if(n.startsWith("application/json")){const t=JSON.parse(o(Buffer.concat(g)));process.nextTick(e,new i(`Response status code ${h}${l?`: ${l}`:""}`,h,u,t));return}if(n.startsWith("text/")){const t=o(Buffer.concat(g));process.nextTick(e,new i(`Response status code ${h}${l?`: ${l}`:""}`,h,u,t));return}}catch(e){}process.nextTick(e,new i(`Response status code ${h}${l?`: ${l}`:""}`,h,u))}e.exports={getResolveErrorBodyCallback:getResolveErrorBodyCallback}},7931:(e,t,n)=>{"use strict";const{BalancedPoolMissingUpstreamError:s,InvalidArgumentError:i}=n(8045);const{PoolBase:o,kClients:h,kNeedDrain:l,kAddClient:u,kRemoveClient:g,kGetDispatcher:f}=n(3198);const E=n(4634);const{kUrl:I,kInterceptors:C}=n(2785);const{parseOrigin:B}=n(3983);const Q=Symbol("factory");const p=Symbol("options");const y=Symbol("kGreatestCommonDivisor");const w=Symbol("kCurrentWeight");const b=Symbol("kIndex");const R=Symbol("kWeight");const k=Symbol("kMaxWeightPerServer");const _=Symbol("kErrorPenalty");function getGreatestCommonDivisor(e,t){if(t===0)return e;return getGreatestCommonDivisor(t,e%t)}function defaultFactory(e,t){return new E(e,t)}class BalancedPool extends o{constructor(e=[],{factory:t=defaultFactory,...n}={}){super();this[p]=n;this[b]=-1;this[w]=0;this[k]=this[p].maxWeightPerServer||100;this[_]=this[p].errorPenalty||15;if(!Array.isArray(e)){e=[e]}if(typeof t!=="function"){throw new i("factory must be a function.")}this[C]=n.interceptors&&n.interceptors.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[];this[Q]=t;for(const t of e){this.addUpstream(t)}this._updateBalancedPoolStats()}addUpstream(e){const t=B(e).origin;if(this[h].find((e=>e[I].origin===t&&e.closed!==true&&e.destroyed!==true))){return this}const n=this[Q](t,Object.assign({},this[p]));this[u](n);n.on("connect",(()=>{n[R]=Math.min(this[k],n[R]+this[_])}));n.on("connectionError",(()=>{n[R]=Math.max(1,n[R]-this[_]);this._updateBalancedPoolStats()}));n.on("disconnect",((...e)=>{const t=e[2];if(t&&t.code==="UND_ERR_SOCKET"){n[R]=Math.max(1,n[R]-this[_]);this._updateBalancedPoolStats()}}));for(const e of this[h]){e[R]=this[k]}this._updateBalancedPoolStats();return this}_updateBalancedPoolStats(){this[y]=this[h].map((e=>e[R])).reduce(getGreatestCommonDivisor,0)}removeUpstream(e){const t=B(e).origin;const n=this[h].find((e=>e[I].origin===t&&e.closed!==true&&e.destroyed!==true));if(n){this[g](n)}return this}get upstreams(){return this[h].filter((e=>e.closed!==true&&e.destroyed!==true)).map((e=>e[I].origin))}[f](){if(this[h].length===0){throw new s}const e=this[h].find((e=>!e[l]&&e.closed!==true&&e.destroyed!==true));if(!e){return}const t=this[h].map((e=>e[l])).reduce(((e,t)=>e&&t),true);if(t){return}let n=0;let i=this[h].findIndex((e=>!e[l]));while(n++this[h][i][R]&&!e[l]){i=this[b]}if(this[b]===0){this[w]=this[w]-this[y];if(this[w]<=0){this[w]=this[k]}}if(e[R]>=this[w]&&!e[l]){return e}}this[w]=this[h][i][R];this[b]=i;return this[h][i]}}e.exports=BalancedPool},6101:(e,t,n)=>{"use strict";const{kConstruct:s}=n(9174);const{urlEquals:i,fieldValues:o}=n(2396);const{kEnumerableProperty:h,isDisturbed:l}=n(3983);const{kHeadersList:u}=n(2785);const{webidl:g}=n(1744);const{Response:f,cloneResponse:E}=n(7823);const{Request:I}=n(8359);const{kState:C,kHeaders:B,kGuard:Q,kRealm:p}=n(5861);const{fetching:y}=n(4881);const{urlIsHttpHttpsScheme:w,createDeferredPromise:b,readAllBytes:R}=n(2538);const k=n(9491);const{getGlobalDispatcher:_}=n(1892);class Cache{#e;constructor(){if(arguments[0]!==s){g.illegalConstructor()}this.#e=arguments[1]}async match(e,t={}){g.brandCheck(this,Cache);g.argumentLengthCheck(arguments,1,{header:"Cache.match"});e=g.converters.RequestInfo(e);t=g.converters.CacheQueryOptions(t);const n=await this.matchAll(e,t);if(n.length===0){return}return n[0]}async matchAll(e=undefined,t={}){g.brandCheck(this,Cache);if(e!==undefined)e=g.converters.RequestInfo(e);t=g.converters.CacheQueryOptions(t);let n=null;if(e!==undefined){if(e instanceof I){n=e[C];if(n.method!=="GET"&&!t.ignoreMethod){return[]}}else if(typeof e==="string"){n=new I(e)[C]}}const s=[];if(e===undefined){for(const e of this.#e){s.push(e[1])}}else{const e=this.#t(n,t);for(const t of e){s.push(t[1])}}const i=[];for(const e of s){const t=new f(e.body?.source??null);const n=t[C].body;t[C]=e;t[C].body=n;t[B][u]=e.headersList;t[B][Q]="immutable";i.push(t)}return Object.freeze(i)}async add(e){g.brandCheck(this,Cache);g.argumentLengthCheck(arguments,1,{header:"Cache.add"});e=g.converters.RequestInfo(e);const t=[e];const n=this.addAll(t);return await n}async addAll(e){g.brandCheck(this,Cache);g.argumentLengthCheck(arguments,1,{header:"Cache.addAll"});e=g.converters["sequence"](e);const t=[];const n=[];for(const t of e){if(typeof t==="string"){continue}const e=t[C];if(!w(e.url)||e.method!=="GET"){throw g.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme when method is not GET."})}}const s=[];for(const i of e){const e=new I(i)[C];if(!w(e.url)){throw g.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme."})}e.initiator="fetch";e.destination="subresource";n.push(e);const h=b();s.push(y({request:e,dispatcher:_(),processResponse(e){if(e.type==="error"||e.status===206||e.status<200||e.status>299){h.reject(g.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}))}else if(e.headersList.contains("vary")){const t=o(e.headersList.get("vary"));for(const e of t){if(e==="*"){h.reject(g.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(const e of s){e.abort()}return}}}},processResponseEndOfBody(e){if(e.aborted){h.reject(new DOMException("aborted","AbortError"));return}h.resolve(e)}}));t.push(h.promise)}const i=Promise.all(t);const h=await i;const l=[];let u=0;for(const e of h){const t={type:"put",request:n[u],response:e};l.push(t);u++}const f=b();let E=null;try{this.#A(l)}catch(e){E=e}queueMicrotask((()=>{if(E===null){f.resolve(undefined)}else{f.reject(E)}}));return f.promise}async put(e,t){g.brandCheck(this,Cache);g.argumentLengthCheck(arguments,2,{header:"Cache.put"});e=g.converters.RequestInfo(e);t=g.converters.Response(t);let n=null;if(e instanceof I){n=e[C]}else{n=new I(e)[C]}if(!w(n.url)||n.method!=="GET"){throw g.errors.exception({header:"Cache.put",message:"Expected an http/s scheme when method is not GET"})}const s=t[C];if(s.status===206){throw g.errors.exception({header:"Cache.put",message:"Got 206 status"})}if(s.headersList.contains("vary")){const e=o(s.headersList.get("vary"));for(const t of e){if(t==="*"){throw g.errors.exception({header:"Cache.put",message:"Got * vary field value"})}}}if(s.body&&(l(s.body.stream)||s.body.stream.locked)){throw g.errors.exception({header:"Cache.put",message:"Response body is locked or disturbed"})}const i=E(s);const h=b();if(s.body!=null){const e=s.body.stream;const t=e.getReader();R(t).then(h.resolve,h.reject)}else{h.resolve(undefined)}const u=[];const f={type:"put",request:n,response:i};u.push(f);const B=await h.promise;if(i.body!=null){i.body.source=B}const Q=b();let p=null;try{this.#A(u)}catch(e){p=e}queueMicrotask((()=>{if(p===null){Q.resolve()}else{Q.reject(p)}}));return Q.promise}async delete(e,t={}){g.brandCheck(this,Cache);g.argumentLengthCheck(arguments,1,{header:"Cache.delete"});e=g.converters.RequestInfo(e);t=g.converters.CacheQueryOptions(t);let n=null;if(e instanceof I){n=e[C];if(n.method!=="GET"&&!t.ignoreMethod){return false}}else{k(typeof e==="string");n=new I(e)[C]}const s=[];const i={type:"delete",request:n,options:t};s.push(i);const o=b();let h=null;let l;try{l=this.#A(s)}catch(e){h=e}queueMicrotask((()=>{if(h===null){o.resolve(!!l?.length)}else{o.reject(h)}}));return o.promise}async keys(e=undefined,t={}){g.brandCheck(this,Cache);if(e!==undefined)e=g.converters.RequestInfo(e);t=g.converters.CacheQueryOptions(t);let n=null;if(e!==undefined){if(e instanceof I){n=e[C];if(n.method!=="GET"&&!t.ignoreMethod){return[]}}else if(typeof e==="string"){n=new I(e)[C]}}const s=b();const i=[];if(e===undefined){for(const e of this.#e){i.push(e[0])}}else{const e=this.#t(n,t);for(const t of e){i.push(t[0])}}queueMicrotask((()=>{const e=[];for(const t of i){const n=new I("https://a");n[C]=t;n[B][u]=t.headersList;n[B][Q]="immutable";n[p]=t.client;e.push(n)}s.resolve(Object.freeze(e))}));return s.promise}#A(e){const t=this.#e;const n=[...t];const s=[];const i=[];try{for(const n of e){if(n.type!=="delete"&&n.type!=="put"){throw g.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'})}if(n.type==="delete"&&n.response!=null){throw g.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"})}if(this.#t(n.request,n.options,s).length){throw new DOMException("???","InvalidStateError")}let e;if(n.type==="delete"){e=this.#t(n.request,n.options);if(e.length===0){return[]}for(const n of e){const e=t.indexOf(n);k(e!==-1);t.splice(e,1)}}else if(n.type==="put"){if(n.response==null){throw g.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"})}const i=n.request;if(!w(i.url)){throw g.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"})}if(i.method!=="GET"){throw g.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"})}if(n.options!=null){throw g.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"})}e=this.#t(n.request);for(const n of e){const e=t.indexOf(n);k(e!==-1);t.splice(e,1)}t.push([n.request,n.response]);s.push([n.request,n.response])}i.push([n.request,n.response])}return i}catch(e){this.#e.length=0;this.#e=n;throw e}}#t(e,t,n){const s=[];const i=n??this.#e;for(const n of i){const[i,o]=n;if(this.#r(e,i,o,t)){s.push(n)}}return s}#r(e,t,n=null,s){const h=new URL(e.url);const l=new URL(t.url);if(s?.ignoreSearch){l.search="";h.search=""}if(!i(h,l,true)){return false}if(n==null||s?.ignoreVary||!n.headersList.contains("vary")){return true}const u=o(n.headersList.get("vary"));for(const n of u){if(n==="*"){return false}const s=t.headersList.get(n);const i=e.headersList.get(n);if(s!==i){return false}}return true}}Object.defineProperties(Cache.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:true},match:h,matchAll:h,add:h,addAll:h,put:h,delete:h,keys:h});const D=[{key:"ignoreSearch",converter:g.converters.boolean,defaultValue:false},{key:"ignoreMethod",converter:g.converters.boolean,defaultValue:false},{key:"ignoreVary",converter:g.converters.boolean,defaultValue:false}];g.converters.CacheQueryOptions=g.dictionaryConverter(D);g.converters.MultiCacheQueryOptions=g.dictionaryConverter([...D,{key:"cacheName",converter:g.converters.DOMString}]);g.converters.Response=g.interfaceConverter(f);g.converters["sequence"]=g.sequenceConverter(g.converters.RequestInfo);e.exports={Cache:Cache}},7907:(e,t,n)=>{"use strict";const{kConstruct:s}=n(9174);const{Cache:i}=n(6101);const{webidl:o}=n(1744);const{kEnumerableProperty:h}=n(3983);class CacheStorage{#n=new Map;constructor(){if(arguments[0]!==s){o.illegalConstructor()}}async match(e,t={}){o.brandCheck(this,CacheStorage);o.argumentLengthCheck(arguments,1,{header:"CacheStorage.match"});e=o.converters.RequestInfo(e);t=o.converters.MultiCacheQueryOptions(t);if(t.cacheName!=null){if(this.#n.has(t.cacheName)){const n=this.#n.get(t.cacheName);const o=new i(s,n);return await o.match(e,t)}}else{for(const n of this.#n.values()){const o=new i(s,n);const h=await o.match(e,t);if(h!==undefined){return h}}}}async has(e){o.brandCheck(this,CacheStorage);o.argumentLengthCheck(arguments,1,{header:"CacheStorage.has"});e=o.converters.DOMString(e);return this.#n.has(e)}async open(e){o.brandCheck(this,CacheStorage);o.argumentLengthCheck(arguments,1,{header:"CacheStorage.open"});e=o.converters.DOMString(e);if(this.#n.has(e)){const t=this.#n.get(e);return new i(s,t)}const t=[];this.#n.set(e,t);return new i(s,t)}async delete(e){o.brandCheck(this,CacheStorage);o.argumentLengthCheck(arguments,1,{header:"CacheStorage.delete"});e=o.converters.DOMString(e);return this.#n.delete(e)}async keys(){o.brandCheck(this,CacheStorage);const e=this.#n.keys();return[...e]}}Object.defineProperties(CacheStorage.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:true},match:h,has:h,open:h,delete:h,keys:h});e.exports={CacheStorage:CacheStorage}},9174:e=>{"use strict";e.exports={kConstruct:Symbol("constructable")}},2396:(e,t,n)=>{"use strict";const s=n(9491);const{URLSerializer:i}=n(685);const{isValidHeaderName:o}=n(2538);function urlEquals(e,t,n=false){const s=i(e,n);const o=i(t,n);return s===o}function fieldValues(e){s(e!==null);const t=[];for(let n of e.split(",")){n=n.trim();if(!n.length){continue}else if(!o(n)){continue}t.push(n)}return t}e.exports={urlEquals:urlEquals,fieldValues:fieldValues}},3598:(e,t,n)=>{"use strict";const s=n(9491);const i=n(1808);const o=n(3685);const{pipeline:h}=n(2781);const l=n(3983);const u=n(9459);const g=n(2905);const f=n(4839);const{RequestContentLengthMismatchError:E,ResponseContentLengthMismatchError:I,InvalidArgumentError:C,RequestAbortedError:B,HeadersTimeoutError:Q,HeadersOverflowError:p,SocketError:y,InformationalError:w,BodyTimeoutError:b,HTTPParserError:R,ResponseExceededMaxSizeError:k,ClientDestroyedError:_}=n(8045);const D=n(2067);const{kUrl:U,kReset:L,kServerName:v,kClient:T,kBusy:O,kParser:P,kConnect:x,kBlocking:Y,kResuming:G,kRunning:J,kPending:W,kSize:V,kWriting:q,kQueue:j,kConnected:z,kConnecting:$,kNeedDrain:ee,kNoRef:te,kKeepAliveDefaultTimeout:Ae,kHostHeader:re,kPendingIdx:ne,kRunningIdx:se,kError:ie,kPipelining:oe,kSocket:ae,kKeepAliveTimeoutValue:ce,kMaxHeadersSize:he,kKeepAliveMaxTimeout:le,kKeepAliveTimeoutThreshold:ue,kHeadersTimeout:ge,kBodyTimeout:fe,kStrictContentLength:Ee,kConnector:de,kMaxRedirections:Ie,kMaxRequests:Ce,kCounter:Be,kClose:Qe,kDestroy:pe,kDispatch:ye,kInterceptors:we,kLocalAddress:be,kMaxResponseSize:me,kHTTPConnVersion:Re,kHost:Se,kHTTP2Session:ke,kHTTP2SessionState:_e,kHTTP2BuildRequest:De,kHTTP2CopyHeaders:Ne,kHTTP1BuildRequest:Fe}=n(2785);let Ue;try{Ue=n(5158)}catch{Ue={constants:{}}}const{constants:{HTTP2_HEADER_AUTHORITY:Le,HTTP2_HEADER_METHOD:ve,HTTP2_HEADER_PATH:Te,HTTP2_HEADER_SCHEME:Me,HTTP2_HEADER_CONTENT_LENGTH:He,HTTP2_HEADER_EXPECT:Oe,HTTP2_HEADER_STATUS:Pe}}=Ue;let xe=false;const Ye=Buffer[Symbol.species];const Ge=Symbol("kClosedResolve");const Je={};try{const e=n(7643);Je.sendHeaders=e.channel("undici:client:sendHeaders");Je.beforeConnect=e.channel("undici:client:beforeConnect");Je.connectError=e.channel("undici:client:connectError");Je.connected=e.channel("undici:client:connected")}catch{Je.sendHeaders={hasSubscribers:false};Je.beforeConnect={hasSubscribers:false};Je.connectError={hasSubscribers:false};Je.connected={hasSubscribers:false}}class Client extends f{constructor(e,{interceptors:t,maxHeaderSize:n,headersTimeout:s,socketTimeout:h,requestTimeout:u,connectTimeout:g,bodyTimeout:f,idleTimeout:E,keepAlive:I,keepAliveTimeout:B,maxKeepAliveTimeout:Q,keepAliveMaxTimeout:p,keepAliveTimeoutThreshold:y,socketPath:w,pipelining:b,tls:R,strictContentLength:k,maxCachedSessions:_,maxRedirections:L,connect:T,maxRequestsPerClient:O,localAddress:P,maxResponseSize:x,autoSelectFamily:Y,autoSelectFamilyAttemptTimeout:J,allowH2:W,maxConcurrentStreams:V}={}){super();if(I!==undefined){throw new C("unsupported keepAlive, use pipelining=0 instead")}if(h!==undefined){throw new C("unsupported socketTimeout, use headersTimeout & bodyTimeout instead")}if(u!==undefined){throw new C("unsupported requestTimeout, use headersTimeout & bodyTimeout instead")}if(E!==undefined){throw new C("unsupported idleTimeout, use keepAliveTimeout instead")}if(Q!==undefined){throw new C("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead")}if(n!=null&&!Number.isFinite(n)){throw new C("invalid maxHeaderSize")}if(w!=null&&typeof w!=="string"){throw new C("invalid socketPath")}if(g!=null&&(!Number.isFinite(g)||g<0)){throw new C("invalid connectTimeout")}if(B!=null&&(!Number.isFinite(B)||B<=0)){throw new C("invalid keepAliveTimeout")}if(p!=null&&(!Number.isFinite(p)||p<=0)){throw new C("invalid keepAliveMaxTimeout")}if(y!=null&&!Number.isFinite(y)){throw new C("invalid keepAliveTimeoutThreshold")}if(s!=null&&(!Number.isInteger(s)||s<0)){throw new C("headersTimeout must be a positive integer or zero")}if(f!=null&&(!Number.isInteger(f)||f<0)){throw new C("bodyTimeout must be a positive integer or zero")}if(T!=null&&typeof T!=="function"&&typeof T!=="object"){throw new C("connect must be a function or an object")}if(L!=null&&(!Number.isInteger(L)||L<0)){throw new C("maxRedirections must be a positive number")}if(O!=null&&(!Number.isInteger(O)||O<0)){throw new C("maxRequestsPerClient must be a positive number")}if(P!=null&&(typeof P!=="string"||i.isIP(P)===0)){throw new C("localAddress must be valid string IP address")}if(x!=null&&(!Number.isInteger(x)||x<-1)){throw new C("maxResponseSize must be a positive number")}if(J!=null&&(!Number.isInteger(J)||J<-1)){throw new C("autoSelectFamilyAttemptTimeout must be a positive number")}if(W!=null&&typeof W!=="boolean"){throw new C("allowH2 must be a valid boolean value")}if(V!=null&&(typeof V!=="number"||V<1)){throw new C("maxConcurrentStreams must be a possitive integer, greater than 0")}if(typeof T!=="function"){T=D({...R,maxCachedSessions:_,allowH2:W,socketPath:w,timeout:g,...l.nodeHasAutoSelectFamily&&Y?{autoSelectFamily:Y,autoSelectFamilyAttemptTimeout:J}:undefined,...T})}this[we]=t&&t.Client&&Array.isArray(t.Client)?t.Client:[Ve({maxRedirections:L})];this[U]=l.parseOrigin(e);this[de]=T;this[ae]=null;this[oe]=b!=null?b:1;this[he]=n||o.maxHeaderSize;this[Ae]=B==null?4e3:B;this[le]=p==null?6e5:p;this[ue]=y==null?1e3:y;this[ce]=this[Ae];this[v]=null;this[be]=P!=null?P:null;this[G]=0;this[ee]=0;this[re]=`host: ${this[U].hostname}${this[U].port?`:${this[U].port}`:""}\r\n`;this[fe]=f!=null?f:3e5;this[ge]=s!=null?s:3e5;this[Ee]=k==null?true:k;this[Ie]=L;this[Ce]=O;this[Ge]=null;this[me]=x>-1?x:-1;this[Re]="h1";this[ke]=null;this[_e]=!W?null:{openStreams:0,maxConcurrentStreams:V!=null?V:100};this[Se]=`${this[U].hostname}${this[U].port?`:${this[U].port}`:""}`;this[j]=[];this[se]=0;this[ne]=0}get pipelining(){return this[oe]}set pipelining(e){this[oe]=e;resume(this,true)}get[W](){return this[j].length-this[ne]}get[J](){return this[ne]-this[se]}get[V](){return this[j].length-this[se]}get[z](){return!!this[ae]&&!this[$]&&!this[ae].destroyed}get[O](){const e=this[ae];return e&&(e[L]||e[q]||e[Y])||this[V]>=(this[oe]||1)||this[W]>0}[x](e){connect(this);this.once("connect",e)}[ye](e,t){const n=e.origin||this[U].origin;const s=this[Re]==="h2"?g[De](n,e,t):g[Fe](n,e,t);this[j].push(s);if(this[G]){}else if(l.bodyLength(s.body)==null&&l.isIterable(s.body)){this[G]=1;process.nextTick(resume,this)}else{resume(this,true)}if(this[G]&&this[ee]!==2&&this[O]){this[ee]=2}return this[ee]<2}async[Qe](){return new Promise((e=>{if(!this[V]){e(null)}else{this[Ge]=e}}))}async[pe](e){return new Promise((t=>{const n=this[j].splice(this[ne]);for(let t=0;t{if(this[Ge]){this[Ge]();this[Ge]=null}t()};if(this[ke]!=null){l.destroy(this[ke],e);this[ke]=null;this[_e]=null}if(!this[ae]){queueMicrotask(callback)}else{l.destroy(this[ae].on("close",callback),e)}resume(this)}))}}function onHttp2SessionError(e){s(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID");this[ae][ie]=e;onError(this[T],e)}function onHttp2FrameError(e,t,n){const s=new w(`HTTP/2: "frameError" received - type ${e}, code ${t}`);if(n===0){this[ae][ie]=s;onError(this[T],s)}}function onHttp2SessionEnd(){l.destroy(this,new y("other side closed"));l.destroy(this[ae],new y("other side closed"))}function onHTTP2GoAway(e){const t=this[T];const n=new w(`HTTP/2: "GOAWAY" frame received with code ${e}`);t[ae]=null;t[ke]=null;if(t.destroyed){s(this[W]===0);const e=t[j].splice(t[se]);for(let t=0;t0){const e=t[j][t[se]];t[j][t[se]++]=null;errorRequest(t,e,n)}t[ne]=t[se];s(t[J]===0);t.emit("disconnect",t[U],[t],n);resume(t)}const We=n(953);const Ve=n(8861);const qe=Buffer.alloc(0);async function lazyllhttp(){const e=process.env.JEST_WORKER_ID?n(1145):undefined;let t;try{t=await WebAssembly.compile(Buffer.from(n(5627),"base64"))}catch(s){t=await WebAssembly.compile(Buffer.from(e||n(1145),"base64"))}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(e,t,n)=>0,wasm_on_status:(e,t,n)=>{s.strictEqual(Xe.ptr,e);const i=t-$e+Ze.byteOffset;return Xe.onStatus(new Ye(Ze.buffer,i,n))||0},wasm_on_message_begin:e=>{s.strictEqual(Xe.ptr,e);return Xe.onMessageBegin()||0},wasm_on_header_field:(e,t,n)=>{s.strictEqual(Xe.ptr,e);const i=t-$e+Ze.byteOffset;return Xe.onHeaderField(new Ye(Ze.buffer,i,n))||0},wasm_on_header_value:(e,t,n)=>{s.strictEqual(Xe.ptr,e);const i=t-$e+Ze.byteOffset;return Xe.onHeaderValue(new Ye(Ze.buffer,i,n))||0},wasm_on_headers_complete:(e,t,n,i)=>{s.strictEqual(Xe.ptr,e);return Xe.onHeadersComplete(t,Boolean(n),Boolean(i))||0},wasm_on_body:(e,t,n)=>{s.strictEqual(Xe.ptr,e);const i=t-$e+Ze.byteOffset;return Xe.onBody(new Ye(Ze.buffer,i,n))||0},wasm_on_message_complete:e=>{s.strictEqual(Xe.ptr,e);return Xe.onMessageComplete()||0}}})}let Ke=null;let je=lazyllhttp();je.catch();let Xe=null;let Ze=null;let ze=0;let $e=null;const et=1;const tt=2;const At=3;class Parser{constructor(e,t,{exports:n}){s(Number.isFinite(e[he])&&e[he]>0);this.llhttp=n;this.ptr=this.llhttp.llhttp_alloc(We.TYPE.RESPONSE);this.client=e;this.socket=t;this.timeout=null;this.timeoutValue=null;this.timeoutType=null;this.statusCode=null;this.statusText="";this.upgrade=false;this.headers=[];this.headersSize=0;this.headersMaxSize=e[he];this.shouldKeepAlive=false;this.paused=false;this.resume=this.resume.bind(this);this.bytesRead=0;this.keepAlive="";this.contentLength="";this.connection="";this.maxResponseSize=e[me]}setTimeout(e,t){this.timeoutType=t;if(e!==this.timeoutValue){u.clearTimeout(this.timeout);if(e){this.timeout=u.setTimeout(onParserTimeout,e,this);if(this.timeout.unref){this.timeout.unref()}}else{this.timeout=null}this.timeoutValue=e}else if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}}resume(){if(this.socket.destroyed||!this.paused){return}s(this.ptr!=null);s(Xe==null);this.llhttp.llhttp_resume(this.ptr);s(this.timeoutType===tt);if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}this.paused=false;this.execute(this.socket.read()||qe);this.readMore()}readMore(){while(!this.paused&&this.ptr){const e=this.socket.read();if(e===null){break}this.execute(e)}}execute(e){s(this.ptr!=null);s(Xe==null);s(!this.paused);const{socket:t,llhttp:n}=this;if(e.length>ze){if($e){n.free($e)}ze=Math.ceil(e.length/4096)*4096;$e=n.malloc(ze)}new Uint8Array(n.memory.buffer,$e,ze).set(e);try{let s;try{Ze=e;Xe=this;s=n.llhttp_execute(this.ptr,$e,e.length)}catch(e){throw e}finally{Xe=null;Ze=null}const i=n.llhttp_get_error_pos(this.ptr)-$e;if(s===We.ERROR.PAUSED_UPGRADE){this.onUpgrade(e.slice(i))}else if(s===We.ERROR.PAUSED){this.paused=true;t.unshift(e.slice(i))}else if(s!==We.ERROR.OK){const t=n.llhttp_get_error_reason(this.ptr);let o="";if(t){const e=new Uint8Array(n.memory.buffer,t).indexOf(0);o="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,t,e).toString()+")"}throw new R(o,We.ERROR[s],e.slice(i))}}catch(e){l.destroy(t,e)}}destroy(){s(this.ptr!=null);s(Xe==null);this.llhttp.llhttp_free(this.ptr);this.ptr=null;u.clearTimeout(this.timeout);this.timeout=null;this.timeoutValue=null;this.timeoutType=null;this.paused=false}onStatus(e){this.statusText=e.toString()}onMessageBegin(){const{socket:e,client:t}=this;if(e.destroyed){return-1}const n=t[j][t[se]];if(!n){return-1}}onHeaderField(e){const t=this.headers.length;if((t&1)===0){this.headers.push(e)}else{this.headers[t-1]=Buffer.concat([this.headers[t-1],e])}this.trackHeader(e.length)}onHeaderValue(e){let t=this.headers.length;if((t&1)===1){this.headers.push(e);t+=1}else{this.headers[t-1]=Buffer.concat([this.headers[t-1],e])}const n=this.headers[t-2];if(n.length===10&&n.toString().toLowerCase()==="keep-alive"){this.keepAlive+=e.toString()}else if(n.length===10&&n.toString().toLowerCase()==="connection"){this.connection+=e.toString()}else if(n.length===14&&n.toString().toLowerCase()==="content-length"){this.contentLength+=e.toString()}this.trackHeader(e.length)}trackHeader(e){this.headersSize+=e;if(this.headersSize>=this.headersMaxSize){l.destroy(this.socket,new p)}}onUpgrade(e){const{upgrade:t,client:n,socket:i,headers:o,statusCode:h}=this;s(t);const u=n[j][n[se]];s(u);s(!i.destroyed);s(i===n[ae]);s(!this.paused);s(u.upgrade||u.method==="CONNECT");this.statusCode=null;this.statusText="";this.shouldKeepAlive=null;s(this.headers.length%2===0);this.headers=[];this.headersSize=0;i.unshift(e);i[P].destroy();i[P]=null;i[T]=null;i[ie]=null;i.removeListener("error",onSocketError).removeListener("readable",onSocketReadable).removeListener("end",onSocketEnd).removeListener("close",onSocketClose);n[ae]=null;n[j][n[se]++]=null;n.emit("disconnect",n[U],[n],new w("upgrade"));try{u.onUpgrade(h,o,i)}catch(e){l.destroy(i,e)}resume(n)}onHeadersComplete(e,t,n){const{client:i,socket:o,headers:h,statusText:u}=this;if(o.destroyed){return-1}const g=i[j][i[se]];if(!g){return-1}s(!this.upgrade);s(this.statusCode<200);if(e===100){l.destroy(o,new y("bad response",l.getSocketInfo(o)));return-1}if(t&&!g.upgrade){l.destroy(o,new y("bad upgrade",l.getSocketInfo(o)));return-1}s.strictEqual(this.timeoutType,et);this.statusCode=e;this.shouldKeepAlive=n||g.method==="HEAD"&&!o[L]&&this.connection.toLowerCase()==="keep-alive";if(this.statusCode>=200){const e=g.bodyTimeout!=null?g.bodyTimeout:i[fe];this.setTimeout(e,tt)}else if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}if(g.method==="CONNECT"){s(i[J]===1);this.upgrade=true;return 2}if(t){s(i[J]===1);this.upgrade=true;return 2}s(this.headers.length%2===0);this.headers=[];this.headersSize=0;if(this.shouldKeepAlive&&i[oe]){const e=this.keepAlive?l.parseKeepAliveTimeout(this.keepAlive):null;if(e!=null){const t=Math.min(e-i[ue],i[le]);if(t<=0){o[L]=true}else{i[ce]=t}}else{i[ce]=i[Ae]}}else{o[L]=true}let f;try{f=g.onHeaders(e,h,this.resume,u)===false}catch(e){l.destroy(o,e);return-1}if(g.method==="HEAD"){return 1}if(e<200){return 1}if(o[Y]){o[Y]=false;resume(i)}return f?We.ERROR.PAUSED:0}onBody(e){const{client:t,socket:n,statusCode:i,maxResponseSize:o}=this;if(n.destroyed){return-1}const h=t[j][t[se]];s(h);s.strictEqual(this.timeoutType,tt);if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}s(i>=200);if(o>-1&&this.bytesRead+e.length>o){l.destroy(n,new k);return-1}this.bytesRead+=e.length;try{if(h.onData(e)===false){return We.ERROR.PAUSED}}catch(e){l.destroy(n,e);return-1}}onMessageComplete(){const{client:e,socket:t,statusCode:n,upgrade:i,headers:o,contentLength:h,bytesRead:u,shouldKeepAlive:g}=this;if(t.destroyed&&(!n||g)){return-1}if(i){return}const f=e[j][e[se]];s(f);s(n>=100);this.statusCode=null;this.statusText="";this.bytesRead=0;this.contentLength="";this.keepAlive="";this.connection="";s(this.headers.length%2===0);this.headers=[];this.headersSize=0;if(n<200){return}if(f.method!=="HEAD"&&h&&u!==parseInt(h,10)){l.destroy(t,new I);return-1}try{f.onComplete(o)}catch(t){errorRequest(e,f,t)}e[j][e[se]++]=null;if(t[q]){s.strictEqual(e[J],0);l.destroy(t,new w("reset"));return We.ERROR.PAUSED}else if(!g){l.destroy(t,new w("reset"));return We.ERROR.PAUSED}else if(t[L]&&e[J]===0){l.destroy(t,new w("reset"));return We.ERROR.PAUSED}else if(e[oe]===1){setImmediate(resume,e)}else{resume(e)}}}function onParserTimeout(e){const{socket:t,timeoutType:n,client:i}=e;if(n===et){if(!t[q]||t.writableNeedDrain||i[J]>1){s(!e.paused,"cannot be paused while waiting for headers");l.destroy(t,new Q)}}else if(n===tt){if(!e.paused){l.destroy(t,new b)}}else if(n===At){s(i[J]===0&&i[ce]);l.destroy(t,new w("socket idle timeout"))}}function onSocketReadable(){const{[P]:e}=this;if(e){e.readMore()}}function onSocketError(e){const{[T]:t,[P]:n}=this;s(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID");if(t[Re]!=="h2"){if(e.code==="ECONNRESET"&&n.statusCode&&!n.shouldKeepAlive){n.onMessageComplete();return}}this[ie]=e;onError(this[T],e)}function onError(e,t){if(e[J]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){s(e[ne]===e[se]);const n=e[j].splice(e[se]);for(let s=0;s0&&n.code!=="UND_ERR_INFO"){const t=e[j][e[se]];e[j][e[se]++]=null;errorRequest(e,t,n)}e[ne]=e[se];s(e[J]===0);e.emit("disconnect",e[U],[e],n);resume(e)}async function connect(e){s(!e[$]);s(!e[ae]);let{host:t,hostname:n,protocol:o,port:h}=e[U];if(n[0]==="["){const e=n.indexOf("]");s(e!==-1);const t=n.substr(1,e-1);s(i.isIP(t));n=t}e[$]=true;if(Je.beforeConnect.hasSubscribers){Je.beforeConnect.publish({connectParams:{host:t,hostname:n,protocol:o,port:h,servername:e[v],localAddress:e[be]},connector:e[de]})}try{const i=await new Promise(((s,i)=>{e[de]({host:t,hostname:n,protocol:o,port:h,servername:e[v],localAddress:e[be]},((e,t)=>{if(e){i(e)}else{s(t)}}))}));if(e.destroyed){l.destroy(i.on("error",(()=>{})),new _);return}e[$]=false;s(i);const u=i.alpnProtocol==="h2";if(u){if(!xe){xe=true;process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"})}const t=Ue.connect(e[U],{createConnection:()=>i,peerMaxConcurrentStreams:e[_e].maxConcurrentStreams});e[Re]="h2";t[T]=e;t[ae]=i;t.on("error",onHttp2SessionError);t.on("frameError",onHttp2FrameError);t.on("end",onHttp2SessionEnd);t.on("goaway",onHTTP2GoAway);t.on("close",onSocketClose);t.unref();e[ke]=t;i[ke]=t}else{if(!Ke){Ke=await je;je=null}i[te]=false;i[q]=false;i[L]=false;i[Y]=false;i[P]=new Parser(e,i,Ke)}i[Be]=0;i[Ce]=e[Ce];i[T]=e;i[ie]=null;i.on("error",onSocketError).on("readable",onSocketReadable).on("end",onSocketEnd).on("close",onSocketClose);e[ae]=i;if(Je.connected.hasSubscribers){Je.connected.publish({connectParams:{host:t,hostname:n,protocol:o,port:h,servername:e[v],localAddress:e[be]},connector:e[de],socket:i})}e.emit("connect",e[U],[e])}catch(i){if(e.destroyed){return}e[$]=false;if(Je.connectError.hasSubscribers){Je.connectError.publish({connectParams:{host:t,hostname:n,protocol:o,port:h,servername:e[v],localAddress:e[be]},connector:e[de],error:i})}if(i.code==="ERR_TLS_CERT_ALTNAME_INVALID"){s(e[J]===0);while(e[W]>0&&e[j][e[ne]].servername===e[v]){const t=e[j][e[ne]++];errorRequest(e,t,i)}}else{onError(e,i)}e.emit("connectionError",e[U],[e],i)}resume(e)}function emitDrain(e){e[ee]=0;e.emit("drain",e[U],[e])}function resume(e,t){if(e[G]===2){return}e[G]=2;_resume(e,t);e[G]=0;if(e[se]>256){e[j].splice(0,e[se]);e[ne]-=e[se];e[se]=0}}function _resume(e,t){while(true){if(e.destroyed){s(e[W]===0);return}if(e[Ge]&&!e[V]){e[Ge]();e[Ge]=null;return}const n=e[ae];if(n&&!n.destroyed&&n.alpnProtocol!=="h2"){if(e[V]===0){if(!n[te]&&n.unref){n.unref();n[te]=true}}else if(n[te]&&n.ref){n.ref();n[te]=false}if(e[V]===0){if(n[P].timeoutType!==At){n[P].setTimeout(e[ce],At)}}else if(e[J]>0&&n[P].statusCode<200){if(n[P].timeoutType!==et){const t=e[j][e[se]];const s=t.headersTimeout!=null?t.headersTimeout:e[ge];n[P].setTimeout(s,et)}}}if(e[O]){e[ee]=2}else if(e[ee]===2){if(t){e[ee]=1;process.nextTick(emitDrain,e)}else{emitDrain(e)}continue}if(e[W]===0){return}if(e[J]>=(e[oe]||1)){return}const i=e[j][e[ne]];if(e[U].protocol==="https:"&&e[v]!==i.servername){if(e[J]>0){return}e[v]=i.servername;if(n&&n.servername!==i.servername){l.destroy(n,new w("servername changed"));return}}if(e[$]){return}if(!n&&!e[ke]){connect(e);return}if(n.destroyed||n[q]||n[L]||n[Y]){return}if(e[J]>0&&!i.idempotent){return}if(e[J]>0&&(i.upgrade||i.method==="CONNECT")){return}if(e[J]>0&&l.bodyLength(i.body)!==0&&(l.isStream(i.body)||l.isAsyncIterable(i.body))){return}if(!i.aborted&&write(e,i)){e[ne]++}else{e[j].splice(e[ne],1)}}}function shouldSendContentLength(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function write(e,t){if(e[Re]==="h2"){writeH2(e,e[ke],t);return}const{body:n,method:i,path:o,host:h,upgrade:u,headers:g,blocking:f,reset:I}=t;const C=i==="PUT"||i==="POST"||i==="PATCH";if(n&&typeof n.read==="function"){n.read(0)}const Q=l.bodyLength(n);let p=Q;if(p===null){p=t.contentLength}if(p===0&&!C){p=null}if(shouldSendContentLength(i)&&p>0&&t.contentLength!==null&&t.contentLength!==p){if(e[Ee]){errorRequest(e,t,new E);return false}process.emitWarning(new E)}const y=e[ae];try{t.onConnect((n=>{if(t.aborted||t.completed){return}errorRequest(e,t,n||new B);l.destroy(y,new w("aborted"))}))}catch(n){errorRequest(e,t,n)}if(t.aborted){return false}if(i==="HEAD"){y[L]=true}if(u||i==="CONNECT"){y[L]=true}if(I!=null){y[L]=I}if(e[Ce]&&y[Be]++>=e[Ce]){y[L]=true}if(f){y[Y]=true}let b=`${i} ${o} HTTP/1.1\r\n`;if(typeof h==="string"){b+=`host: ${h}\r\n`}else{b+=e[re]}if(u){b+=`connection: upgrade\r\nupgrade: ${u}\r\n`}else if(e[oe]&&!y[L]){b+="connection: keep-alive\r\n"}else{b+="connection: close\r\n"}if(g){b+=g}if(Je.sendHeaders.hasSubscribers){Je.sendHeaders.publish({request:t,headers:b,socket:y})}if(!n||Q===0){if(p===0){y.write(`${b}content-length: 0\r\n\r\n`,"latin1")}else{s(p===null,"no body must not have content length");y.write(`${b}\r\n`,"latin1")}t.onRequestSent()}else if(l.isBuffer(n)){s(p===n.byteLength,"buffer body must have content length");y.cork();y.write(`${b}content-length: ${p}\r\n\r\n`,"latin1");y.write(n);y.uncork();t.onBodySent(n);t.onRequestSent();if(!C){y[L]=true}}else if(l.isBlobLike(n)){if(typeof n.stream==="function"){writeIterable({body:n.stream(),client:e,request:t,socket:y,contentLength:p,header:b,expectsPayload:C})}else{writeBlob({body:n,client:e,request:t,socket:y,contentLength:p,header:b,expectsPayload:C})}}else if(l.isStream(n)){writeStream({body:n,client:e,request:t,socket:y,contentLength:p,header:b,expectsPayload:C})}else if(l.isIterable(n)){writeIterable({body:n,client:e,request:t,socket:y,contentLength:p,header:b,expectsPayload:C})}else{s(false)}return true}function writeH2(e,t,n){const{body:i,method:o,path:h,host:u,upgrade:f,expectContinue:I,signal:C,headers:Q}=n;let p;if(typeof Q==="string")p=g[Ne](Q.trim());else p=Q;if(f){errorRequest(e,n,new Error("Upgrade not supported for H2"));return false}try{n.onConnect((t=>{if(n.aborted||n.completed){return}errorRequest(e,n,t||new B)}))}catch(t){errorRequest(e,n,t)}if(n.aborted){return false}let y;const b=e[_e];p[Le]=u||e[Se];p[ve]=o;if(o==="CONNECT"){t.ref();y=t.request(p,{endStream:false,signal:C});if(y.id&&!y.pending){n.onUpgrade(null,null,y);++b.openStreams}else{y.once("ready",(()=>{n.onUpgrade(null,null,y);++b.openStreams}))}y.once("close",(()=>{b.openStreams-=1;if(b.openStreams===0)t.unref()}));return true}p[Te]=h;p[Me]="https";const R=o==="PUT"||o==="POST"||o==="PATCH";if(i&&typeof i.read==="function"){i.read(0)}let k=l.bodyLength(i);if(k==null){k=n.contentLength}if(k===0||!R){k=null}if(shouldSendContentLength(o)&&k>0&&n.contentLength!=null&&n.contentLength!==k){if(e[Ee]){errorRequest(e,n,new E);return false}process.emitWarning(new E)}if(k!=null){s(i,"no body must not have content length");p[He]=`${k}`}t.ref();const _=o==="GET"||o==="HEAD";if(I){p[Oe]="100-continue";y=t.request(p,{endStream:_,signal:C});y.once("continue",writeBodyH2)}else{y=t.request(p,{endStream:_,signal:C});writeBodyH2()}++b.openStreams;y.once("response",(e=>{if(n.onHeaders(Number(e[Pe]),e,y.resume.bind(y),"")===false){y.pause()}}));y.once("end",(()=>{n.onComplete([])}));y.on("data",(e=>{if(n.onData(e)===false)y.pause()}));y.once("close",(()=>{b.openStreams-=1;if(b.openStreams===0)t.unref()}));y.once("error",(function(t){if(e[ke]&&!e[ke].destroyed&&!this.closed&&!this.destroyed){b.streams-=1;l.destroy(y,t)}}));y.once("frameError",((t,s)=>{const i=new w(`HTTP/2: "frameError" received - type ${t}, code ${s}`);errorRequest(e,n,i);if(e[ke]&&!e[ke].destroyed&&!this.closed&&!this.destroyed){b.streams-=1;l.destroy(y,i)}}));return true;function writeBodyH2(){if(!i){n.onRequestSent()}else if(l.isBuffer(i)){s(k===i.byteLength,"buffer body must have content length");y.cork();y.write(i);y.uncork();y.end();n.onBodySent(i);n.onRequestSent()}else if(l.isBlobLike(i)){if(typeof i.stream==="function"){writeIterable({client:e,request:n,contentLength:k,h2stream:y,expectsPayload:R,body:i.stream(),socket:e[ae],header:""})}else{writeBlob({body:i,client:e,request:n,contentLength:k,expectsPayload:R,h2stream:y,header:"",socket:e[ae]})}}else if(l.isStream(i)){writeStream({body:i,client:e,request:n,contentLength:k,expectsPayload:R,socket:e[ae],h2stream:y,header:""})}else if(l.isIterable(i)){writeIterable({body:i,client:e,request:n,contentLength:k,expectsPayload:R,header:"",h2stream:y,socket:e[ae]})}else{s(false)}}}function writeStream({h2stream:e,body:t,client:n,request:i,socket:o,contentLength:u,header:g,expectsPayload:f}){s(u!==0||n[J]===0,"stream body cannot be pipelined");if(n[Re]==="h2"){const n=h(t,e,(n=>{if(n){l.destroy(t,n);l.destroy(e,n)}else{i.onRequestSent()}}));n.on("data",onPipeData);n.once("end",(()=>{n.removeListener("data",onPipeData);l.destroy(n)}));function onPipeData(e){i.onBodySent(e)}return}let E=false;const I=new AsyncWriter({socket:o,request:i,contentLength:u,client:n,expectsPayload:f,header:g});const onData=function(e){if(E){return}try{if(!I.write(e)&&this.pause){this.pause()}}catch(e){l.destroy(this,e)}};const onDrain=function(){if(E){return}if(t.resume){t.resume()}};const onAbort=function(){onFinished(new B)};const onFinished=function(e){if(E){return}E=true;s(o.destroyed||o[q]&&n[J]<=1);o.off("drain",onDrain).off("error",onFinished);t.removeListener("data",onData).removeListener("end",onFinished).removeListener("error",onFinished).removeListener("close",onAbort);if(!e){try{I.end()}catch(t){e=t}}I.destroy(e);if(e&&(e.code!=="UND_ERR_INFO"||e.message!=="reset")){l.destroy(t,e)}else{l.destroy(t)}};t.on("data",onData).on("end",onFinished).on("error",onFinished).on("close",onAbort);if(t.resume){t.resume()}o.on("drain",onDrain).on("error",onFinished)}async function writeBlob({h2stream:e,body:t,client:n,request:i,socket:o,contentLength:h,header:u,expectsPayload:g}){s(h===t.size,"blob body must have content length");const f=n[Re]==="h2";try{if(h!=null&&h!==t.size){throw new E}const s=Buffer.from(await t.arrayBuffer());if(f){e.cork();e.write(s);e.uncork()}else{o.cork();o.write(`${u}content-length: ${h}\r\n\r\n`,"latin1");o.write(s);o.uncork()}i.onBodySent(s);i.onRequestSent();if(!g){o[L]=true}resume(n)}catch(t){l.destroy(f?e:o,t)}}async function writeIterable({h2stream:e,body:t,client:n,request:i,socket:o,contentLength:h,header:l,expectsPayload:u}){s(h!==0||n[J]===0,"iterator body cannot be pipelined");let g=null;function onDrain(){if(g){const e=g;g=null;e()}}const waitForDrain=()=>new Promise(((e,t)=>{s(g===null);if(o[ie]){t(o[ie])}else{g=e}}));if(n[Re]==="h2"){e.on("close",onDrain).on("drain",onDrain);try{for await(const n of t){if(o[ie]){throw o[ie]}const t=e.write(n);i.onBodySent(n);if(!t){await waitForDrain()}}}catch(t){e.destroy(t)}finally{i.onRequestSent();e.end();e.off("close",onDrain).off("drain",onDrain)}return}o.on("close",onDrain).on("drain",onDrain);const f=new AsyncWriter({socket:o,request:i,contentLength:h,client:n,expectsPayload:u,header:l});try{for await(const e of t){if(o[ie]){throw o[ie]}if(!f.write(e)){await waitForDrain()}}f.end()}catch(e){f.destroy(e)}finally{o.off("close",onDrain).off("drain",onDrain)}}class AsyncWriter{constructor({socket:e,request:t,contentLength:n,client:s,expectsPayload:i,header:o}){this.socket=e;this.request=t;this.contentLength=n;this.client=s;this.bytesWritten=0;this.expectsPayload=i;this.header=o;e[q]=true}write(e){const{socket:t,request:n,contentLength:s,client:i,bytesWritten:o,expectsPayload:h,header:l}=this;if(t[ie]){throw t[ie]}if(t.destroyed){return false}const u=Buffer.byteLength(e);if(!u){return true}if(s!==null&&o+u>s){if(i[Ee]){throw new E}process.emitWarning(new E)}t.cork();if(o===0){if(!h){t[L]=true}if(s===null){t.write(`${l}transfer-encoding: chunked\r\n`,"latin1")}else{t.write(`${l}content-length: ${s}\r\n\r\n`,"latin1")}}if(s===null){t.write(`\r\n${u.toString(16)}\r\n`,"latin1")}this.bytesWritten+=u;const g=t.write(e);t.uncork();n.onBodySent(e);if(!g){if(t[P].timeout&&t[P].timeoutType===et){if(t[P].timeout.refresh){t[P].timeout.refresh()}}}return g}end(){const{socket:e,contentLength:t,client:n,bytesWritten:s,expectsPayload:i,header:o,request:h}=this;h.onRequestSent();e[q]=false;if(e[ie]){throw e[ie]}if(e.destroyed){return}if(s===0){if(i){e.write(`${o}content-length: 0\r\n\r\n`,"latin1")}else{e.write(`${o}\r\n`,"latin1")}}else if(t===null){e.write("\r\n0\r\n\r\n","latin1")}if(t!==null&&s!==t){if(n[Ee]){throw new E}else{process.emitWarning(new E)}}if(e[P].timeout&&e[P].timeoutType===et){if(e[P].timeout.refresh){e[P].timeout.refresh()}}resume(n)}destroy(e){const{socket:t,client:n}=this;t[q]=false;if(e){s(n[J]<=1,"pipeline should only contain this request");l.destroy(t,e)}}}function errorRequest(e,t,n){try{t.onError(n);s(t.aborted)}catch(n){e.emit("error",n)}}e.exports=Client},6436:(e,t,n)=>{"use strict";const{kConnected:s,kSize:i}=n(2785);class CompatWeakRef{constructor(e){this.value=e}deref(){return this.value[s]===0&&this.value[i]===0?undefined:this.value}}class CompatFinalizer{constructor(e){this.finalizer=e}register(e,t){if(e.on){e.on("disconnect",(()=>{if(e[s]===0&&e[i]===0){this.finalizer(t)}}))}}}e.exports=function(){if(process.env.NODE_V8_COVERAGE){return{WeakRef:CompatWeakRef,FinalizationRegistry:CompatFinalizer}}return{WeakRef:global.WeakRef||CompatWeakRef,FinalizationRegistry:global.FinalizationRegistry||CompatFinalizer}}},663:e=>{"use strict";const t=1024;const n=4096;e.exports={maxAttributeValueSize:t,maxNameValuePairSize:n}},1724:(e,t,n)=>{"use strict";const{parseSetCookie:s}=n(4408);const{stringify:i,getHeadersList:o}=n(3121);const{webidl:h}=n(1744);const{Headers:l}=n(554);function getCookies(e){h.argumentLengthCheck(arguments,1,{header:"getCookies"});h.brandCheck(e,l,{strict:false});const t=e.get("cookie");const n={};if(!t){return n}for(const e of t.split(";")){const[t,...s]=e.split("=");n[t.trim()]=s.join("=")}return n}function deleteCookie(e,t,n){h.argumentLengthCheck(arguments,2,{header:"deleteCookie"});h.brandCheck(e,l,{strict:false});t=h.converters.DOMString(t);n=h.converters.DeleteCookieAttributes(n);setCookie(e,{name:t,value:"",expires:new Date(0),...n})}function getSetCookies(e){h.argumentLengthCheck(arguments,1,{header:"getSetCookies"});h.brandCheck(e,l,{strict:false});const t=o(e).cookies;if(!t){return[]}return t.map((e=>s(Array.isArray(e)?e[1]:e)))}function setCookie(e,t){h.argumentLengthCheck(arguments,2,{header:"setCookie"});h.brandCheck(e,l,{strict:false});t=h.converters.Cookie(t);const n=i(t);if(n){e.append("Set-Cookie",i(t))}}h.converters.DeleteCookieAttributes=h.dictionaryConverter([{converter:h.nullableConverter(h.converters.DOMString),key:"path",defaultValue:null},{converter:h.nullableConverter(h.converters.DOMString),key:"domain",defaultValue:null}]);h.converters.Cookie=h.dictionaryConverter([{converter:h.converters.DOMString,key:"name"},{converter:h.converters.DOMString,key:"value"},{converter:h.nullableConverter((e=>{if(typeof e==="number"){return h.converters["unsigned long long"](e)}return new Date(e)})),key:"expires",defaultValue:null},{converter:h.nullableConverter(h.converters["long long"]),key:"maxAge",defaultValue:null},{converter:h.nullableConverter(h.converters.DOMString),key:"domain",defaultValue:null},{converter:h.nullableConverter(h.converters.DOMString),key:"path",defaultValue:null},{converter:h.nullableConverter(h.converters.boolean),key:"secure",defaultValue:null},{converter:h.nullableConverter(h.converters.boolean),key:"httpOnly",defaultValue:null},{converter:h.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:h.sequenceConverter(h.converters.DOMString),key:"unparsed",defaultValue:[]}]);e.exports={getCookies:getCookies,deleteCookie:deleteCookie,getSetCookies:getSetCookies,setCookie:setCookie}},4408:(e,t,n)=>{"use strict";const{maxNameValuePairSize:s,maxAttributeValueSize:i}=n(663);const{isCTLExcludingHtab:o}=n(3121);const{collectASequenceOfCodePointsFast:h}=n(685);const l=n(9491);function parseSetCookie(e){if(o(e)){return null}let t="";let n="";let i="";let l="";if(e.includes(";")){const s={position:0};t=h(";",e,s);n=e.slice(s.position)}else{t=e}if(!t.includes("=")){l=t}else{const e={position:0};i=h("=",t,e);l=t.slice(e.position+1)}i=i.trim();l=l.trim();if(i.length+l.length>s){return null}return{name:i,value:l,...parseUnparsedAttributes(n)}}function parseUnparsedAttributes(e,t={}){if(e.length===0){return t}l(e[0]===";");e=e.slice(1);let n="";if(e.includes(";")){n=h(";",e,{position:0});e=e.slice(n.length)}else{n=e;e=""}let s="";let o="";if(n.includes("=")){const e={position:0};s=h("=",n,e);o=n.slice(e.position+1)}else{s=n}s=s.trim();o=o.trim();if(o.length>i){return parseUnparsedAttributes(e,t)}const u=s.toLowerCase();if(u==="expires"){const e=new Date(o);t.expires=e}else if(u==="max-age"){const n=o.charCodeAt(0);if((n<48||n>57)&&o[0]!=="-"){return parseUnparsedAttributes(e,t)}if(!/^\d+$/.test(o)){return parseUnparsedAttributes(e,t)}const s=Number(o);t.maxAge=s}else if(u==="domain"){let e=o;if(e[0]==="."){e=e.slice(1)}e=e.toLowerCase();t.domain=e}else if(u==="path"){let e="";if(o.length===0||o[0]!=="/"){e="/"}else{e=o}t.path=e}else if(u==="secure"){t.secure=true}else if(u==="httponly"){t.httpOnly=true}else if(u==="samesite"){let e="Default";const n=o.toLowerCase();if(n.includes("none")){e="None"}if(n.includes("strict")){e="Strict"}if(n.includes("lax")){e="Lax"}t.sameSite=e}else{t.unparsed??=[];t.unparsed.push(`${s}=${o}`)}return parseUnparsedAttributes(e,t)}e.exports={parseSetCookie:parseSetCookie,parseUnparsedAttributes:parseUnparsedAttributes}},3121:(e,t,n)=>{"use strict";const s=n(9491);const{kHeadersList:i}=n(2785);function isCTLExcludingHtab(e){if(e.length===0){return false}for(const t of e){const e=t.charCodeAt(0);if(e>=0||e<=8||(e>=10||e<=31)||e===127){return false}}}function validateCookieName(e){for(const t of e){const e=t.charCodeAt(0);if(e<=32||e>127||t==="("||t===")"||t===">"||t==="<"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"){throw new Error("Invalid cookie name")}}}function validateCookieValue(e){for(const t of e){const e=t.charCodeAt(0);if(e<33||e===34||e===44||e===59||e===92||e>126){throw new Error("Invalid header value")}}}function validateCookiePath(e){for(const t of e){const e=t.charCodeAt(0);if(e<33||t===";"){throw new Error("Invalid cookie path")}}}function validateCookieDomain(e){if(e.startsWith("-")||e.endsWith(".")||e.endsWith("-")){throw new Error("Invalid cookie domain")}}function toIMFDate(e){if(typeof e==="number"){e=new Date(e)}const t=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];const n=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];const s=t[e.getUTCDay()];const i=e.getUTCDate().toString().padStart(2,"0");const o=n[e.getUTCMonth()];const h=e.getUTCFullYear();const l=e.getUTCHours().toString().padStart(2,"0");const u=e.getUTCMinutes().toString().padStart(2,"0");const g=e.getUTCSeconds().toString().padStart(2,"0");return`${s}, ${i} ${o} ${h} ${l}:${u}:${g} GMT`}function validateCookieMaxAge(e){if(e<0){throw new Error("Invalid cookie max-age")}}function stringify(e){if(e.name.length===0){return null}validateCookieName(e.name);validateCookieValue(e.value);const t=[`${e.name}=${e.value}`];if(e.name.startsWith("__Secure-")){e.secure=true}if(e.name.startsWith("__Host-")){e.secure=true;e.domain=null;e.path="/"}if(e.secure){t.push("Secure")}if(e.httpOnly){t.push("HttpOnly")}if(typeof e.maxAge==="number"){validateCookieMaxAge(e.maxAge);t.push(`Max-Age=${e.maxAge}`)}if(e.domain){validateCookieDomain(e.domain);t.push(`Domain=${e.domain}`)}if(e.path){validateCookiePath(e.path);t.push(`Path=${e.path}`)}if(e.expires&&e.expires.toString()!=="Invalid Date"){t.push(`Expires=${toIMFDate(e.expires)}`)}if(e.sameSite){t.push(`SameSite=${e.sameSite}`)}for(const n of e.unparsed){if(!n.includes("=")){throw new Error("Invalid unparsed")}const[e,...s]=n.split("=");t.push(`${e.trim()}=${s.join("=")}`)}return t.join("; ")}let o;function getHeadersList(e){if(e[i]){return e[i]}if(!o){o=Object.getOwnPropertySymbols(e).find((e=>e.description==="headers list"));s(o,"Headers cannot be parsed")}const t=e[o];s(t);return t}e.exports={isCTLExcludingHtab:isCTLExcludingHtab,stringify:stringify,getHeadersList:getHeadersList}},2067:(e,t,n)=>{"use strict";const s=n(1808);const i=n(9491);const o=n(3983);const{InvalidArgumentError:h,ConnectTimeoutError:l}=n(8045);let u;let g;if(global.FinalizationRegistry&&!process.env.NODE_V8_COVERAGE){g=class WeakSessionCache{constructor(e){this._maxCachedSessions=e;this._sessionCache=new Map;this._sessionRegistry=new global.FinalizationRegistry((e=>{if(this._sessionCache.size=this._maxCachedSessions){const{value:e}=this._sessionCache.keys().next();this._sessionCache.delete(e)}this._sessionCache.set(e,t)}}}function buildConnector({allowH2:e,maxCachedSessions:t,socketPath:l,timeout:f,...E}){if(t!=null&&(!Number.isInteger(t)||t<0)){throw new h("maxCachedSessions must be a positive integer or zero")}const I={path:l,...E};const C=new g(t==null?100:t);f=f==null?1e4:f;e=e!=null?e:false;return function connect({hostname:t,host:h,protocol:l,port:g,servername:E,localAddress:B,httpSocket:Q},p){let y;if(l==="https:"){if(!u){u=n(4404)}E=E||I.servername||o.getServerName(h)||null;const s=E||t;const l=C.get(s)||null;i(s);y=u.connect({highWaterMark:16384,...I,servername:E,session:l,localAddress:B,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:Q,port:g||443,host:t});y.on("session",(function(e){C.set(s,e)}))}else{i(!Q,"httpSocket can only be sent on TLS update");y=s.connect({highWaterMark:64*1024,...I,localAddress:B,port:g||80,host:t})}if(I.keepAlive==null||I.keepAlive){const e=I.keepAliveInitialDelay===undefined?6e4:I.keepAliveInitialDelay;y.setKeepAlive(true,e)}const w=setupTimeout((()=>onConnectTimeout(y)),f);y.setNoDelay(true).once(l==="https:"?"secureConnect":"connect",(function(){w();if(p){const e=p;p=null;e(null,this)}})).on("error",(function(e){w();if(p){const t=p;p=null;t(e)}}));return y}}function setupTimeout(e,t){if(!t){return()=>{}}let n=null;let s=null;const i=setTimeout((()=>{n=setImmediate((()=>{if(process.platform==="win32"){s=setImmediate((()=>e()))}else{e()}}))}),t);return()=>{clearTimeout(i);clearImmediate(n);clearImmediate(s)}}function onConnectTimeout(e){o.destroy(e,new l)}e.exports=buildConnector},8045:e=>{"use strict";class UndiciError extends Error{constructor(e){super(e);this.name="UndiciError";this.code="UND_ERR"}}class ConnectTimeoutError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ConnectTimeoutError);this.name="ConnectTimeoutError";this.message=e||"Connect Timeout Error";this.code="UND_ERR_CONNECT_TIMEOUT"}}class HeadersTimeoutError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,HeadersTimeoutError);this.name="HeadersTimeoutError";this.message=e||"Headers Timeout Error";this.code="UND_ERR_HEADERS_TIMEOUT"}}class HeadersOverflowError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,HeadersOverflowError);this.name="HeadersOverflowError";this.message=e||"Headers Overflow Error";this.code="UND_ERR_HEADERS_OVERFLOW"}}class BodyTimeoutError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,BodyTimeoutError);this.name="BodyTimeoutError";this.message=e||"Body Timeout Error";this.code="UND_ERR_BODY_TIMEOUT"}}class ResponseStatusCodeError extends UndiciError{constructor(e,t,n,s){super(e);Error.captureStackTrace(this,ResponseStatusCodeError);this.name="ResponseStatusCodeError";this.message=e||"Response Status Code Error";this.code="UND_ERR_RESPONSE_STATUS_CODE";this.body=s;this.status=t;this.statusCode=t;this.headers=n}}class InvalidArgumentError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,InvalidArgumentError);this.name="InvalidArgumentError";this.message=e||"Invalid Argument Error";this.code="UND_ERR_INVALID_ARG"}}class InvalidReturnValueError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,InvalidReturnValueError);this.name="InvalidReturnValueError";this.message=e||"Invalid Return Value Error";this.code="UND_ERR_INVALID_RETURN_VALUE"}}class RequestAbortedError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,RequestAbortedError);this.name="AbortError";this.message=e||"Request aborted";this.code="UND_ERR_ABORTED"}}class InformationalError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,InformationalError);this.name="InformationalError";this.message=e||"Request information";this.code="UND_ERR_INFO"}}class RequestContentLengthMismatchError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,RequestContentLengthMismatchError);this.name="RequestContentLengthMismatchError";this.message=e||"Request body length does not match content-length header";this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}}class ResponseContentLengthMismatchError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ResponseContentLengthMismatchError);this.name="ResponseContentLengthMismatchError";this.message=e||"Response body length does not match content-length header";this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}}class ClientDestroyedError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ClientDestroyedError);this.name="ClientDestroyedError";this.message=e||"The client is destroyed";this.code="UND_ERR_DESTROYED"}}class ClientClosedError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ClientClosedError);this.name="ClientClosedError";this.message=e||"The client is closed";this.code="UND_ERR_CLOSED"}}class SocketError extends UndiciError{constructor(e,t){super(e);Error.captureStackTrace(this,SocketError);this.name="SocketError";this.message=e||"Socket error";this.code="UND_ERR_SOCKET";this.socket=t}}class NotSupportedError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,NotSupportedError);this.name="NotSupportedError";this.message=e||"Not supported error";this.code="UND_ERR_NOT_SUPPORTED"}}class BalancedPoolMissingUpstreamError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,NotSupportedError);this.name="MissingUpstreamError";this.message=e||"No upstream has been added to the BalancedPool";this.code="UND_ERR_BPL_MISSING_UPSTREAM"}}class HTTPParserError extends Error{constructor(e,t,n){super(e);Error.captureStackTrace(this,HTTPParserError);this.name="HTTPParserError";this.code=t?`HPE_${t}`:undefined;this.data=n?n.toString():undefined}}class ResponseExceededMaxSizeError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ResponseExceededMaxSizeError);this.name="ResponseExceededMaxSizeError";this.message=e||"Response content exceeded max size";this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}}e.exports={HTTPParserError:HTTPParserError,UndiciError:UndiciError,HeadersTimeoutError:HeadersTimeoutError,HeadersOverflowError:HeadersOverflowError,BodyTimeoutError:BodyTimeoutError,RequestContentLengthMismatchError:RequestContentLengthMismatchError,ConnectTimeoutError:ConnectTimeoutError,ResponseStatusCodeError:ResponseStatusCodeError,InvalidArgumentError:InvalidArgumentError,InvalidReturnValueError:InvalidReturnValueError,RequestAbortedError:RequestAbortedError,ClientDestroyedError:ClientDestroyedError,ClientClosedError:ClientClosedError,InformationalError:InformationalError,SocketError:SocketError,NotSupportedError:NotSupportedError,ResponseContentLengthMismatchError:ResponseContentLengthMismatchError,BalancedPoolMissingUpstreamError:BalancedPoolMissingUpstreamError,ResponseExceededMaxSizeError:ResponseExceededMaxSizeError}},2905:(e,t,n)=>{"use strict";const{InvalidArgumentError:s,NotSupportedError:i}=n(8045);const o=n(9491);const{kHTTP2BuildRequest:h,kHTTP2CopyHeaders:l,kHTTP1BuildRequest:u}=n(2785);const g=n(3983);const f=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/;const E=/[^\t\x20-\x7e\x80-\xff]/;const I=/[^\u0021-\u00ff]/;const C=Symbol("handler");const B={};let Q;try{const e=n(7643);B.create=e.channel("undici:request:create");B.bodySent=e.channel("undici:request:bodySent");B.headers=e.channel("undici:request:headers");B.trailers=e.channel("undici:request:trailers");B.error=e.channel("undici:request:error")}catch{B.create={hasSubscribers:false};B.bodySent={hasSubscribers:false};B.headers={hasSubscribers:false};B.trailers={hasSubscribers:false};B.error={hasSubscribers:false}}class Request{constructor(e,{path:t,method:i,body:o,headers:h,query:l,idempotent:u,blocking:E,upgrade:p,headersTimeout:y,bodyTimeout:w,reset:b,throwOnError:R,expectContinue:k},_){if(typeof t!=="string"){throw new s("path must be a string")}else if(t[0]!=="/"&&!(t.startsWith("http://")||t.startsWith("https://"))&&i!=="CONNECT"){throw new s("path must be an absolute URL or start with a slash")}else if(I.exec(t)!==null){throw new s("invalid request path")}if(typeof i!=="string"){throw new s("method must be a string")}else if(f.exec(i)===null){throw new s("invalid request method")}if(p&&typeof p!=="string"){throw new s("upgrade must be a string")}if(y!=null&&(!Number.isFinite(y)||y<0)){throw new s("invalid headersTimeout")}if(w!=null&&(!Number.isFinite(w)||w<0)){throw new s("invalid bodyTimeout")}if(b!=null&&typeof b!=="boolean"){throw new s("invalid reset")}if(k!=null&&typeof k!=="boolean"){throw new s("invalid expectContinue")}this.headersTimeout=y;this.bodyTimeout=w;this.throwOnError=R===true;this.method=i;this.abort=null;if(o==null){this.body=null}else if(g.isStream(o)){this.body=o;const e=this.body._readableState;if(!e||!e.autoDestroy){this.endHandler=function autoDestroy(){g.destroy(this)};this.body.on("end",this.endHandler)}this.errorHandler=e=>{if(this.abort){this.abort(e)}else{this.error=e}};this.body.on("error",this.errorHandler)}else if(g.isBuffer(o)){this.body=o.byteLength?o:null}else if(ArrayBuffer.isView(o)){this.body=o.buffer.byteLength?Buffer.from(o.buffer,o.byteOffset,o.byteLength):null}else if(o instanceof ArrayBuffer){this.body=o.byteLength?Buffer.from(o):null}else if(typeof o==="string"){this.body=o.length?Buffer.from(o):null}else if(g.isFormDataLike(o)||g.isIterable(o)||g.isBlobLike(o)){this.body=o}else{throw new s("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable")}this.completed=false;this.aborted=false;this.upgrade=p||null;this.path=l?g.buildURL(t,l):t;this.origin=e;this.idempotent=u==null?i==="HEAD"||i==="GET":u;this.blocking=E==null?false:E;this.reset=b==null?null:b;this.host=null;this.contentLength=null;this.contentType=null;this.headers="";this.expectContinue=k!=null?k:false;if(Array.isArray(h)){if(h.length%2!==0){throw new s("headers array must be even")}for(let e=0;e{e.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kHeadersList:Symbol("headers list"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kHTTP2BuildRequest:Symbol("http2 build request"),kHTTP1BuildRequest:Symbol("http1 build request"),kHTTP2CopyHeaders:Symbol("http2 copy headers"),kHTTPConnVersion:Symbol("http connection version")}},3983:(e,t,n)=>{"use strict";const s=n(9491);const{kDestroyed:i,kBodyUsed:o}=n(2785);const{IncomingMessage:h}=n(3685);const l=n(2781);const u=n(1808);const{InvalidArgumentError:g}=n(8045);const{Blob:f}=n(4300);const E=n(3837);const{stringify:I}=n(3477);const[C,B]=process.versions.node.split(".").map((e=>Number(e)));function nop(){}function isStream(e){return e&&typeof e==="object"&&typeof e.pipe==="function"&&typeof e.on==="function"}function isBlobLike(e){return f&&e instanceof f||e&&typeof e==="object"&&(typeof e.stream==="function"||typeof e.arrayBuffer==="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function buildURL(e,t){if(e.includes("?")||e.includes("#")){throw new Error('Query params cannot be passed when url already contains "?" or "#".')}const n=I(t);if(n){e+="?"+n}return e}function parseURL(e){if(typeof e==="string"){e=new URL(e);if(!/^https?:/.test(e.origin||e.protocol)){throw new g("Invalid URL protocol: the URL must start with `http:` or `https:`.")}return e}if(!e||typeof e!=="object"){throw new g("Invalid URL: The URL argument must be a non-null object.")}if(!/^https?:/.test(e.origin||e.protocol)){throw new g("Invalid URL protocol: the URL must start with `http:` or `https:`.")}if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&!Number.isFinite(parseInt(e.port))){throw new g("Invalid URL: port must be a valid integer or a string representation of an integer.")}if(e.path!=null&&typeof e.path!=="string"){throw new g("Invalid URL path: the path must be a string or null/undefined.")}if(e.pathname!=null&&typeof e.pathname!=="string"){throw new g("Invalid URL pathname: the pathname must be a string or null/undefined.")}if(e.hostname!=null&&typeof e.hostname!=="string"){throw new g("Invalid URL hostname: the hostname must be a string or null/undefined.")}if(e.origin!=null&&typeof e.origin!=="string"){throw new g("Invalid URL origin: the origin must be a string or null/undefined.")}const t=e.port!=null?e.port:e.protocol==="https:"?443:80;let n=e.origin!=null?e.origin:`${e.protocol}//${e.hostname}:${t}`;let s=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;if(n.endsWith("/")){n=n.substring(0,n.length-1)}if(s&&!s.startsWith("/")){s=`/${s}`}e=new URL(n+s)}return e}function parseOrigin(e){e=parseURL(e);if(e.pathname!=="/"||e.search||e.hash){throw new g("invalid url")}return e}function getHostname(e){if(e[0]==="["){const t=e.indexOf("]");s(t!==-1);return e.substr(1,t-1)}const t=e.indexOf(":");if(t===-1)return e;return e.substr(0,t)}function getServerName(e){if(!e){return null}s.strictEqual(typeof e,"string");const t=getHostname(e);if(u.isIP(t)){return""}return t}function deepClone(e){return JSON.parse(JSON.stringify(e))}function isAsyncIterable(e){return!!(e!=null&&typeof e[Symbol.asyncIterator]==="function")}function isIterable(e){return!!(e!=null&&(typeof e[Symbol.iterator]==="function"||typeof e[Symbol.asyncIterator]==="function"))}function bodyLength(e){if(e==null){return 0}else if(isStream(e)){const t=e._readableState;return t&&t.objectMode===false&&t.ended===true&&Number.isFinite(t.length)?t.length:null}else if(isBlobLike(e)){return e.size!=null?e.size:null}else if(isBuffer(e)){return e.byteLength}return null}function isDestroyed(e){return!e||!!(e.destroyed||e[i])}function isReadableAborted(e){const t=e&&e._readableState;return isDestroyed(e)&&t&&!t.endEmitted}function destroy(e,t){if(e==null||!isStream(e)||isDestroyed(e)){return}if(typeof e.destroy==="function"){if(Object.getPrototypeOf(e).constructor===h){e.socket=null}e.destroy(t)}else if(t){process.nextTick(((e,t)=>{e.emit("error",t)}),e,t)}if(e.destroyed!==true){e[i]=true}}const Q=/timeout=(\d+)/;function parseKeepAliveTimeout(e){const t=e.toString().match(Q);return t?parseInt(t[1],10)*1e3:null}function parseHeaders(e,t={}){if(!Array.isArray(e))return e;for(let n=0;n{e.close()}))}else{const t=Buffer.isBuffer(s)?s:Buffer.from(s);e.enqueue(new Uint8Array(t))}return e.desiredSize>0},async cancel(e){await t.return()}},0)}function isFormDataLike(e){return e&&typeof e==="object"&&typeof e.append==="function"&&typeof e.delete==="function"&&typeof e.get==="function"&&typeof e.getAll==="function"&&typeof e.has==="function"&&typeof e.set==="function"&&e[Symbol.toStringTag]==="FormData"}function throwIfAborted(e){if(!e){return}if(typeof e.throwIfAborted==="function"){e.throwIfAborted()}else{if(e.aborted){const e=new Error("The operation was aborted");e.name="AbortError";throw e}}}let y;function addAbortListener(e,t){if(typeof Symbol.dispose==="symbol"){if(!y){y=n(2361)}if(typeof y.addAbortListener==="function"&&"aborted"in e){return y.addAbortListener(e,t)}}if("addEventListener"in e){e.addEventListener("abort",t,{once:true});return()=>e.removeEventListener("abort",t)}e.addListener("abort",t);return()=>e.removeListener("abort",t)}const w=!!String.prototype.toWellFormed;function toUSVString(e){if(w){return`${e}`.toWellFormed()}else if(E.toUSVString){return E.toUSVString(e)}return`${e}`}const b=Object.create(null);b.enumerable=true;e.exports={kEnumerableProperty:b,nop:nop,isDisturbed:isDisturbed,isErrored:isErrored,isReadable:isReadable,toUSVString:toUSVString,isReadableAborted:isReadableAborted,isBlobLike:isBlobLike,parseOrigin:parseOrigin,parseURL:parseURL,getServerName:getServerName,isStream:isStream,isIterable:isIterable,isAsyncIterable:isAsyncIterable,isDestroyed:isDestroyed,parseRawHeaders:parseRawHeaders,parseHeaders:parseHeaders,parseKeepAliveTimeout:parseKeepAliveTimeout,destroy:destroy,bodyLength:bodyLength,deepClone:deepClone,ReadableStreamFrom:ReadableStreamFrom,isBuffer:isBuffer,validateHandler:validateHandler,getSocketInfo:getSocketInfo,isFormDataLike:isFormDataLike,buildURL:buildURL,throwIfAborted:throwIfAborted,addAbortListener:addAbortListener,nodeMajor:C,nodeMinor:B,nodeHasAutoSelectFamily:C>18||C===18&&B>=13}},4839:(e,t,n)=>{"use strict";const s=n(412);const{ClientDestroyedError:i,ClientClosedError:o,InvalidArgumentError:h}=n(8045);const{kDestroy:l,kClose:u,kDispatch:g,kInterceptors:f}=n(2785);const E=Symbol("destroyed");const I=Symbol("closed");const C=Symbol("onDestroyed");const B=Symbol("onClosed");const Q=Symbol("Intercepted Dispatch");class DispatcherBase extends s{constructor(){super();this[E]=false;this[C]=null;this[I]=false;this[B]=[]}get destroyed(){return this[E]}get closed(){return this[I]}get interceptors(){return this[f]}set interceptors(e){if(e){for(let t=e.length-1;t>=0;t--){const e=this[f][t];if(typeof e!=="function"){throw new h("interceptor must be an function")}}}this[f]=e}close(e){if(e===undefined){return new Promise(((e,t)=>{this.close(((n,s)=>n?t(n):e(s)))}))}if(typeof e!=="function"){throw new h("invalid callback")}if(this[E]){queueMicrotask((()=>e(new i,null)));return}if(this[I]){if(this[B]){this[B].push(e)}else{queueMicrotask((()=>e(null,null)))}return}this[I]=true;this[B].push(e);const onClosed=()=>{const e=this[B];this[B]=null;for(let t=0;tthis.destroy())).then((()=>{queueMicrotask(onClosed)}))}destroy(e,t){if(typeof e==="function"){t=e;e=null}if(t===undefined){return new Promise(((t,n)=>{this.destroy(e,((e,s)=>e?n(e):t(s)))}))}if(typeof t!=="function"){throw new h("invalid callback")}if(this[E]){if(this[C]){this[C].push(t)}else{queueMicrotask((()=>t(null,null)))}return}if(!e){e=new i}this[E]=true;this[C]=this[C]||[];this[C].push(t);const onDestroyed=()=>{const e=this[C];this[C]=null;for(let t=0;t{queueMicrotask(onDestroyed)}))}[Q](e,t){if(!this[f]||this[f].length===0){this[Q]=this[g];return this[g](e,t)}let n=this[g].bind(this);for(let e=this[f].length-1;e>=0;e--){n=this[f][e](n)}this[Q]=n;return n(e,t)}dispatch(e,t){if(!t||typeof t!=="object"){throw new h("handler must be an object")}try{if(!e||typeof e!=="object"){throw new h("opts must be an object.")}if(this[E]||this[C]){throw new i}if(this[I]){throw new o}return this[Q](e,t)}catch(e){if(typeof t.onError!=="function"){throw new h("invalid onError method")}t.onError(e);return false}}}e.exports=DispatcherBase},412:(e,t,n)=>{"use strict";const s=n(2361);class Dispatcher extends s{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}}e.exports=Dispatcher},1472:(e,t,n)=>{"use strict";const s=n(727);const i=n(3983);const{ReadableStreamFrom:o,isBlobLike:h,isReadableStreamLike:l,readableStreamClose:u,createDeferredPromise:g,fullyReadBody:f}=n(2538);const{FormData:E}=n(2015);const{kState:I}=n(5861);const{webidl:C}=n(1744);const{DOMException:B,structuredClone:Q}=n(1037);const{Blob:p,File:y}=n(4300);const{kBodyUsed:w}=n(2785);const b=n(9491);const{isErrored:R}=n(3983);const{isUint8Array:k,isArrayBuffer:_}=n(9830);const{File:D}=n(8511);const{parseMIMEType:U,serializeAMimeType:L}=n(685);let v=globalThis.ReadableStream;const T=y??D;const O=new TextEncoder;const P=new TextDecoder;function extractBody(e,t=false){if(!v){v=n(5356).ReadableStream}let s=null;if(e instanceof v){s=e}else if(h(e)){s=e.stream()}else{s=new v({async pull(e){e.enqueue(typeof f==="string"?O.encode(f):f);queueMicrotask((()=>u(e)))},start(){},type:undefined})}b(l(s));let g=null;let f=null;let E=null;let I=null;if(typeof e==="string"){f=e;I="text/plain;charset=UTF-8"}else if(e instanceof URLSearchParams){f=e.toString();I="application/x-www-form-urlencoded;charset=UTF-8"}else if(_(e)){f=new Uint8Array(e.slice())}else if(ArrayBuffer.isView(e)){f=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength))}else if(i.isFormDataLike(e)){const t=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`;const n=`--${t}\r\nContent-Disposition: form-data` /*! formdata-polyfill. MIT License. Jimmy Wärting */;const escape=e=>e.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22");const normalizeLinefeeds=e=>e.replace(/\r?\n|\r/g,"\r\n");const s=[];const i=new Uint8Array([13,10]);E=0;let o=false;for(const[t,h]of e){if(typeof h==="string"){const e=O.encode(n+`; name="${escape(normalizeLinefeeds(t))}"`+`\r\n\r\n${normalizeLinefeeds(h)}\r\n`);s.push(e);E+=e.byteLength}else{const e=O.encode(`${n}; name="${escape(normalizeLinefeeds(t))}"`+(h.name?`; filename="${escape(h.name)}"`:"")+"\r\n"+`Content-Type: ${h.type||"application/octet-stream"}\r\n\r\n`);s.push(e,h,i);if(typeof h.size==="number"){E+=e.byteLength+h.size+i.byteLength}else{o=true}}}const h=O.encode(`--${t}--`);s.push(h);E+=h.byteLength;if(o){E=null}f=e;g=async function*(){for(const e of s){if(e.stream){yield*e.stream()}else{yield e}}};I="multipart/form-data; boundary="+t}else if(h(e)){f=e;E=e.size;if(e.type){I=e.type}}else if(typeof e[Symbol.asyncIterator]==="function"){if(t){throw new TypeError("keepalive")}if(i.isDisturbed(e)||e.locked){throw new TypeError("Response body object should not be disturbed or locked")}s=e instanceof v?e:o(e)}if(typeof f==="string"||i.isBuffer(f)){E=Buffer.byteLength(f)}if(g!=null){let t;s=new v({async start(){t=g(e)[Symbol.asyncIterator]()},async pull(e){const{value:n,done:i}=await t.next();if(i){queueMicrotask((()=>{e.close()}))}else{if(!R(s)){e.enqueue(new Uint8Array(n))}}return e.desiredSize>0},async cancel(e){await t.return()},type:undefined})}const C={stream:s,source:f,length:E};return[C,I]}function safelyExtractBody(e,t=false){if(!v){v=n(5356).ReadableStream}if(e instanceof v){b(!i.isDisturbed(e),"The body has already been consumed.");b(!e.locked,"The stream is locked.")}return extractBody(e,t)}function cloneBody(e){const[t,n]=e.stream.tee();const s=Q(n,{transfer:[n]});const[,i]=s.tee();e.stream=t;return{stream:i,length:e.length,source:e.source}}async function*consumeBody(e){if(e){if(k(e)){yield e}else{const t=e.stream;if(i.isDisturbed(t)){throw new TypeError("The body has already been consumed.")}if(t.locked){throw new TypeError("The stream is locked.")}t[w]=true;yield*t}}}function throwIfAborted(e){if(e.aborted){throw new B("The operation was aborted.","AbortError")}}function bodyMixinMethods(e){const t={blob(){return specConsumeBody(this,(e=>{let t=bodyMimeType(this);if(t==="failure"){t=""}else if(t){t=L(t)}return new p([e],{type:t})}),e)},arrayBuffer(){return specConsumeBody(this,(e=>new Uint8Array(e).buffer),e)},text(){return specConsumeBody(this,utf8DecodeBytes,e)},json(){return specConsumeBody(this,parseJSONFromBytes,e)},async formData(){C.brandCheck(this,e);throwIfAborted(this[I]);const t=this.headers.get("Content-Type");if(/multipart\/form-data/.test(t)){const e={};for(const[t,n]of this.headers)e[t.toLowerCase()]=n;const t=new E;let n;try{n=new s({headers:e,preservePath:true})}catch(e){throw new B(`${e}`,"AbortError")}n.on("field",((e,n)=>{t.append(e,n)}));n.on("file",((e,n,s,i,o)=>{const h=[];if(i==="base64"||i.toLowerCase()==="base64"){let i="";n.on("data",(e=>{i+=e.toString().replace(/[\r\n]/gm,"");const t=i.length-i.length%4;h.push(Buffer.from(i.slice(0,t),"base64"));i=i.slice(t)}));n.on("end",(()=>{h.push(Buffer.from(i,"base64"));t.append(e,new T(h,s,{type:o}))}))}else{n.on("data",(e=>{h.push(e)}));n.on("end",(()=>{t.append(e,new T(h,s,{type:o}))}))}}));const i=new Promise(((e,t)=>{n.on("finish",e);n.on("error",(e=>t(new TypeError(e))))}));if(this.body!==null)for await(const e of consumeBody(this[I].body))n.write(e);n.end();await i;return t}else if(/application\/x-www-form-urlencoded/.test(t)){let e;try{let t="";const n=new TextDecoder("utf-8",{ignoreBOM:true});for await(const e of consumeBody(this[I].body)){if(!k(e)){throw new TypeError("Expected Uint8Array chunk")}t+=n.decode(e,{stream:true})}t+=n.decode();e=new URLSearchParams(t)}catch(e){throw Object.assign(new TypeError,{cause:e})}const t=new E;for(const[n,s]of e){t.append(n,s)}return t}else{await Promise.resolve();throwIfAborted(this[I]);throw C.errors.exception({header:`${e.name}.formData`,message:"Could not parse content as FormData."})}}};return t}function mixinBody(e){Object.assign(e.prototype,bodyMixinMethods(e))}async function specConsumeBody(e,t,n){C.brandCheck(e,n);throwIfAborted(e[I]);if(bodyUnusable(e[I].body)){throw new TypeError("Body is unusable")}const s=g();const errorSteps=e=>s.reject(e);const successSteps=e=>{try{s.resolve(t(e))}catch(e){errorSteps(e)}};if(e[I].body==null){successSteps(new Uint8Array);return s.promise}await f(e[I].body,successSteps,errorSteps);return s.promise}function bodyUnusable(e){return e!=null&&(e.stream.locked||i.isDisturbed(e.stream))}function utf8DecodeBytes(e){if(e.length===0){return""}if(e[0]===239&&e[1]===187&&e[2]===191){e=e.subarray(3)}const t=P.decode(e);return t}function parseJSONFromBytes(e){return JSON.parse(utf8DecodeBytes(e))}function bodyMimeType(e){const{headersList:t}=e[I];const n=t.get("content-type");if(n===null){return"failure"}return U(n)}e.exports={extractBody:extractBody,safelyExtractBody:safelyExtractBody,cloneBody:cloneBody,mixinBody:mixinBody}},1037:(e,t,n)=>{"use strict";const{MessageChannel:s,receiveMessageOnPort:i}=n(1267);const o=["GET","HEAD","POST"];const h=new Set(o);const l=[101,204,205,304];const u=[301,302,303,307,308];const g=new Set(u);const f=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","5060","5061","6000","6566","6665","6666","6667","6668","6669","6697","10080"];const E=new Set(f);const I=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"];const C=new Set(I);const B=["follow","manual","error"];const Q=["GET","HEAD","OPTIONS","TRACE"];const p=new Set(Q);const y=["navigate","same-origin","no-cors","cors"];const w=["omit","same-origin","include"];const b=["default","no-store","reload","no-cache","force-cache","only-if-cached"];const R=["content-encoding","content-language","content-location","content-type","content-length"];const k=["half"];const _=["CONNECT","TRACE","TRACK"];const D=new Set(_);const U=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""];const L=new Set(U);const v=globalThis.DOMException??(()=>{try{atob("~")}catch(e){return Object.getPrototypeOf(e).constructor}})();let T;const O=globalThis.structuredClone??function structuredClone(e,t=undefined){if(arguments.length===0){throw new TypeError("missing argument")}if(!T){T=new s}T.port1.unref();T.port2.unref();T.port1.postMessage(e,t?.transfer);return i(T.port2).message};e.exports={DOMException:v,structuredClone:O,subresource:U,forbiddenMethods:_,requestBodyHeader:R,referrerPolicy:I,requestRedirect:B,requestMode:y,requestCredentials:w,requestCache:b,redirectStatus:u,corsSafeListedMethods:o,nullBodyStatus:l,safeMethods:Q,badPorts:f,requestDuplex:k,subresourceSet:L,badPortsSet:E,redirectStatusSet:g,corsSafeListedMethodsSet:h,safeMethodsSet:p,forbiddenMethodsSet:D,referrerPolicySet:C}},685:(e,t,n)=>{const s=n(9491);const{atob:i}=n(4300);const{isomorphicDecode:o}=n(2538);const h=new TextEncoder;const l=/^[!#$%&'*+-.^_|~A-Za-z0-9]+$/;const u=/(\u000A|\u000D|\u0009|\u0020)/;const g=/[\u0009|\u0020-\u007E|\u0080-\u00FF]/;function dataURLProcessor(e){s(e.protocol==="data:");let t=URLSerializer(e,true);t=t.slice(5);const n={position:0};let i=collectASequenceOfCodePointsFast(",",t,n);const h=i.length;i=removeASCIIWhitespace(i,true,true);if(n.position>=t.length){return"failure"}n.position++;const l=t.slice(h+1);let u=stringPercentDecode(l);if(/;(\u0020){0,}base64$/i.test(i)){const e=o(u);u=forgivingBase64(e);if(u==="failure"){return"failure"}i=i.slice(0,-6);i=i.replace(/(\u0020)+$/,"");i=i.slice(0,-1)}if(i.startsWith(";")){i="text/plain"+i}let g=parseMIMEType(i);if(g==="failure"){g=parseMIMEType("text/plain;charset=US-ASCII")}return{mimeType:g,body:u}}function URLSerializer(e,t=false){const n=e.href;if(!t){return n}const s=n.lastIndexOf("#");if(s===-1){return n}return n.slice(0,s)}function collectASequenceOfCodePoints(e,t,n){let s="";while(n.positione.length){return"failure"}t.position++;let s=collectASequenceOfCodePointsFast(";",e,t);s=removeHTTPWhitespace(s,false,true);if(s.length===0||!l.test(s)){return"failure"}const i=n.toLowerCase();const o=s.toLowerCase();const h={type:i,subtype:o,parameters:new Map,essence:`${i}/${o}`};while(t.positionu.test(e)),e,t);let n=collectASequenceOfCodePoints((e=>e!==";"&&e!=="="),e,t);n=n.toLowerCase();if(t.positione.length){break}let s=null;if(e[t.position]==='"'){s=collectAnHTTPQuotedString(e,t,true);collectASequenceOfCodePointsFast(";",e,t)}else{s=collectASequenceOfCodePointsFast(";",e,t);s=removeHTTPWhitespace(s,false,true);if(s.length===0){continue}}if(n.length!==0&&l.test(n)&&(s.length===0||g.test(s))&&!h.parameters.has(n)){h.parameters.set(n,s)}}return h}function forgivingBase64(e){e=e.replace(/[\u0009\u000A\u000C\u000D\u0020]/g,"");if(e.length%4===0){e=e.replace(/=?=$/,"")}if(e.length%4===1){return"failure"}if(/[^+/0-9A-Za-z]/.test(e)){return"failure"}const t=i(e);const n=new Uint8Array(t.length);for(let e=0;ee!=='"'&&e!=="\\"),e,t);if(t.position>=e.length){break}const n=e[t.position];t.position++;if(n==="\\"){if(t.position>=e.length){o+="\\";break}o+=e[t.position];t.position++}else{s(n==='"');break}}if(n){return o}return e.slice(i,t.position)}function serializeAMimeType(e){s(e!=="failure");const{parameters:t,essence:n}=e;let i=n;for(let[e,n]of t.entries()){i+=";";i+=e;i+="=";if(!l.test(n)){n=n.replace(/(\\|")/g,"\\$1");n='"'+n;n+='"'}i+=n}return i}function isHTTPWhiteSpace(e){return e==="\r"||e==="\n"||e==="\t"||e===" "}function removeHTTPWhitespace(e,t=true,n=true){let s=0;let i=e.length-1;if(t){for(;s0&&isHTTPWhiteSpace(e[i]);i--);}return e.slice(s,i+1)}function isASCIIWhitespace(e){return e==="\r"||e==="\n"||e==="\t"||e==="\f"||e===" "}function removeASCIIWhitespace(e,t=true,n=true){let s=0;let i=e.length-1;if(t){for(;s0&&isASCIIWhitespace(e[i]);i--);}return e.slice(s,i+1)}e.exports={dataURLProcessor:dataURLProcessor,URLSerializer:URLSerializer,collectASequenceOfCodePoints:collectASequenceOfCodePoints,collectASequenceOfCodePointsFast:collectASequenceOfCodePointsFast,stringPercentDecode:stringPercentDecode,parseMIMEType:parseMIMEType,collectAnHTTPQuotedString:collectAnHTTPQuotedString,serializeAMimeType:serializeAMimeType}},8511:(e,t,n)=>{"use strict";const{Blob:s,File:i}=n(4300);const{types:o}=n(3837);const{kState:h}=n(5861);const{isBlobLike:l}=n(2538);const{webidl:u}=n(1744);const{parseMIMEType:g,serializeAMimeType:f}=n(685);const{kEnumerableProperty:E}=n(3983);const I=new TextEncoder;class File extends s{constructor(e,t,n={}){u.argumentLengthCheck(arguments,2,{header:"File constructor"});e=u.converters["sequence"](e);t=u.converters.USVString(t);n=u.converters.FilePropertyBag(n);const s=t;let i=n.type;let o;e:{if(i){i=g(i);if(i==="failure"){i="";break e}i=f(i).toLowerCase()}o=n.lastModified}super(processBlobParts(e,n),{type:i});this[h]={name:s,lastModified:o,type:i}}get name(){u.brandCheck(this,File);return this[h].name}get lastModified(){u.brandCheck(this,File);return this[h].lastModified}get type(){u.brandCheck(this,File);return this[h].type}}class FileLike{constructor(e,t,n={}){const s=t;const i=n.type;const o=n.lastModified??Date.now();this[h]={blobLike:e,name:s,type:i,lastModified:o}}stream(...e){u.brandCheck(this,FileLike);return this[h].blobLike.stream(...e)}arrayBuffer(...e){u.brandCheck(this,FileLike);return this[h].blobLike.arrayBuffer(...e)}slice(...e){u.brandCheck(this,FileLike);return this[h].blobLike.slice(...e)}text(...e){u.brandCheck(this,FileLike);return this[h].blobLike.text(...e)}get size(){u.brandCheck(this,FileLike);return this[h].blobLike.size}get type(){u.brandCheck(this,FileLike);return this[h].blobLike.type}get name(){u.brandCheck(this,FileLike);return this[h].name}get lastModified(){u.brandCheck(this,FileLike);return this[h].lastModified}get[Symbol.toStringTag](){return"File"}}Object.defineProperties(File.prototype,{[Symbol.toStringTag]:{value:"File",configurable:true},name:E,lastModified:E});u.converters.Blob=u.interfaceConverter(s);u.converters.BlobPart=function(e,t){if(u.util.Type(e)==="Object"){if(l(e)){return u.converters.Blob(e,{strict:false})}if(ArrayBuffer.isView(e)||o.isAnyArrayBuffer(e)){return u.converters.BufferSource(e,t)}}return u.converters.USVString(e,t)};u.converters["sequence"]=u.sequenceConverter(u.converters.BlobPart);u.converters.FilePropertyBag=u.dictionaryConverter([{key:"lastModified",converter:u.converters["long long"],get defaultValue(){return Date.now()}},{key:"type",converter:u.converters.DOMString,defaultValue:""},{key:"endings",converter:e=>{e=u.converters.DOMString(e);e=e.toLowerCase();if(e!=="native"){e="transparent"}return e},defaultValue:"transparent"}]);function processBlobParts(e,t){const n=[];for(const s of e){if(typeof s==="string"){let e=s;if(t.endings==="native"){e=convertLineEndingsNative(e)}n.push(I.encode(e))}else if(o.isAnyArrayBuffer(s)||o.isTypedArray(s)){if(!s.buffer){n.push(new Uint8Array(s))}else{n.push(new Uint8Array(s.buffer,s.byteOffset,s.byteLength))}}else if(l(s)){n.push(s)}}return n}function convertLineEndingsNative(e){let t="\n";if(process.platform==="win32"){t="\r\n"}return e.replace(/\r?\n/g,t)}function isFileLike(e){return i&&e instanceof i||e instanceof File||e&&(typeof e.stream==="function"||typeof e.arrayBuffer==="function")&&e[Symbol.toStringTag]==="File"}e.exports={File:File,FileLike:FileLike,isFileLike:isFileLike}},2015:(e,t,n)=>{"use strict";const{isBlobLike:s,toUSVString:i,makeIterator:o}=n(2538);const{kState:h}=n(5861);const{File:l,FileLike:u,isFileLike:g}=n(8511);const{webidl:f}=n(1744);const{Blob:E,File:I}=n(4300);const C=I??l;class FormData{constructor(e){if(e!==undefined){throw f.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]})}this[h]=[]}append(e,t,n=undefined){f.brandCheck(this,FormData);f.argumentLengthCheck(arguments,2,{header:"FormData.append"});if(arguments.length===3&&!s(t)){throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'")}e=f.converters.USVString(e);t=s(t)?f.converters.Blob(t,{strict:false}):f.converters.USVString(t);n=arguments.length===3?f.converters.USVString(n):undefined;const i=makeEntry(e,t,n);this[h].push(i)}delete(e){f.brandCheck(this,FormData);f.argumentLengthCheck(arguments,1,{header:"FormData.delete"});e=f.converters.USVString(e);this[h]=this[h].filter((t=>t.name!==e))}get(e){f.brandCheck(this,FormData);f.argumentLengthCheck(arguments,1,{header:"FormData.get"});e=f.converters.USVString(e);const t=this[h].findIndex((t=>t.name===e));if(t===-1){return null}return this[h][t].value}getAll(e){f.brandCheck(this,FormData);f.argumentLengthCheck(arguments,1,{header:"FormData.getAll"});e=f.converters.USVString(e);return this[h].filter((t=>t.name===e)).map((e=>e.value))}has(e){f.brandCheck(this,FormData);f.argumentLengthCheck(arguments,1,{header:"FormData.has"});e=f.converters.USVString(e);return this[h].findIndex((t=>t.name===e))!==-1}set(e,t,n=undefined){f.brandCheck(this,FormData);f.argumentLengthCheck(arguments,2,{header:"FormData.set"});if(arguments.length===3&&!s(t)){throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'")}e=f.converters.USVString(e);t=s(t)?f.converters.Blob(t,{strict:false}):f.converters.USVString(t);n=arguments.length===3?i(n):undefined;const o=makeEntry(e,t,n);const l=this[h].findIndex((t=>t.name===e));if(l!==-1){this[h]=[...this[h].slice(0,l),o,...this[h].slice(l+1).filter((t=>t.name!==e))]}else{this[h].push(o)}}entries(){f.brandCheck(this,FormData);return o((()=>this[h].map((e=>[e.name,e.value]))),"FormData","key+value")}keys(){f.brandCheck(this,FormData);return o((()=>this[h].map((e=>[e.name,e.value]))),"FormData","key")}values(){f.brandCheck(this,FormData);return o((()=>this[h].map((e=>[e.name,e.value]))),"FormData","value")}forEach(e,t=globalThis){f.brandCheck(this,FormData);f.argumentLengthCheck(arguments,1,{header:"FormData.forEach"});if(typeof e!=="function"){throw new TypeError("Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'.")}for(const[n,s]of this){e.apply(t,[s,n,this])}}}FormData.prototype[Symbol.iterator]=FormData.prototype.entries;Object.defineProperties(FormData.prototype,{[Symbol.toStringTag]:{value:"FormData",configurable:true}});function makeEntry(e,t,n){e=Buffer.from(e).toString("utf8");if(typeof t==="string"){t=Buffer.from(t).toString("utf8")}else{if(!g(t)){t=t instanceof E?new C([t],"blob",{type:t.type}):new u(t,"blob",{type:t.type})}if(n!==undefined){const e={type:t.type,lastModified:t.lastModified};t=I&&t instanceof I||t instanceof l?new C([t],n,e):new u(t,n,e)}}return{name:e,value:t}}e.exports={FormData:FormData}},1246:e=>{"use strict";const t=Symbol.for("undici.globalOrigin.1");function getGlobalOrigin(){return globalThis[t]}function setGlobalOrigin(e){if(e===undefined){Object.defineProperty(globalThis,t,{value:undefined,writable:true,enumerable:false,configurable:false});return}const n=new URL(e);if(n.protocol!=="http:"&&n.protocol!=="https:"){throw new TypeError(`Only http & https urls are allowed, received ${n.protocol}`)}Object.defineProperty(globalThis,t,{value:n,writable:true,enumerable:false,configurable:false})}e.exports={getGlobalOrigin:getGlobalOrigin,setGlobalOrigin:setGlobalOrigin}},554:(e,t,n)=>{"use strict";const{kHeadersList:s}=n(2785);const{kGuard:i}=n(5861);const{kEnumerableProperty:o}=n(3983);const{makeIterator:h,isValidHeaderName:l,isValidHeaderValue:u}=n(2538);const{webidl:g}=n(1744);const f=n(9491);const E=Symbol("headers map");const I=Symbol("headers map sorted");function headerValueNormalize(e){let t=e.length;while(/[\r\n\t ]/.test(e.charAt(--t)));return e.slice(0,t+1).replace(/^[\r\n\t ]+/,"")}function fill(e,t){if(Array.isArray(t)){for(const n of t){if(n.length!==2){throw g.errors.exception({header:"Headers constructor",message:`expected name/value pair to be length 2, found ${n.length}.`})}e.append(n[0],n[1])}}else if(typeof t==="object"&&t!==null){for(const[n,s]of Object.entries(t)){e.append(n,s)}}else{throw g.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})}}class HeadersList{cookies=null;constructor(e){if(e instanceof HeadersList){this[E]=new Map(e[E]);this[I]=e[I];this.cookies=e.cookies}else{this[E]=new Map(e);this[I]=null}}contains(e){e=e.toLowerCase();return this[E].has(e)}clear(){this[E].clear();this[I]=null;this.cookies=null}append(e,t){this[I]=null;const n=e.toLowerCase();const s=this[E].get(n);if(s){const e=n==="cookie"?"; ":", ";this[E].set(n,{name:s.name,value:`${s.value}${e}${t}`})}else{this[E].set(n,{name:e,value:t})}if(n==="set-cookie"){this.cookies??=[];this.cookies.push(t)}}set(e,t){this[I]=null;const n=e.toLowerCase();if(n==="set-cookie"){this.cookies=[t]}return this[E].set(n,{name:e,value:t})}delete(e){this[I]=null;e=e.toLowerCase();if(e==="set-cookie"){this.cookies=null}return this[E].delete(e)}get(e){if(!this.contains(e)){return null}return this[E].get(e.toLowerCase())?.value??null}*[Symbol.iterator](){for(const[e,{value:t}]of this[E]){yield[e,t]}}get entries(){const e={};if(this[E].size){for(const{name:t,value:n}of this[E].values()){e[t]=n}}return e}}class Headers{constructor(e=undefined){this[s]=new HeadersList;this[i]="none";if(e!==undefined){e=g.converters.HeadersInit(e);fill(this,e)}}append(e,t){g.brandCheck(this,Headers);g.argumentLengthCheck(arguments,2,{header:"Headers.append"});e=g.converters.ByteString(e);t=g.converters.ByteString(t);t=headerValueNormalize(t);if(!l(e)){throw g.errors.invalidArgument({prefix:"Headers.append",value:e,type:"header name"})}else if(!u(t)){throw g.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header value"})}if(this[i]==="immutable"){throw new TypeError("immutable")}else if(this[i]==="request-no-cors"){}return this[s].append(e,t)}delete(e){g.brandCheck(this,Headers);g.argumentLengthCheck(arguments,1,{header:"Headers.delete"});e=g.converters.ByteString(e);if(!l(e)){throw g.errors.invalidArgument({prefix:"Headers.delete",value:e,type:"header name"})}if(this[i]==="immutable"){throw new TypeError("immutable")}else if(this[i]==="request-no-cors"){}if(!this[s].contains(e)){return}return this[s].delete(e)}get(e){g.brandCheck(this,Headers);g.argumentLengthCheck(arguments,1,{header:"Headers.get"});e=g.converters.ByteString(e);if(!l(e)){throw g.errors.invalidArgument({prefix:"Headers.get",value:e,type:"header name"})}return this[s].get(e)}has(e){g.brandCheck(this,Headers);g.argumentLengthCheck(arguments,1,{header:"Headers.has"});e=g.converters.ByteString(e);if(!l(e)){throw g.errors.invalidArgument({prefix:"Headers.has",value:e,type:"header name"})}return this[s].contains(e)}set(e,t){g.brandCheck(this,Headers);g.argumentLengthCheck(arguments,2,{header:"Headers.set"});e=g.converters.ByteString(e);t=g.converters.ByteString(t);t=headerValueNormalize(t);if(!l(e)){throw g.errors.invalidArgument({prefix:"Headers.set",value:e,type:"header name"})}else if(!u(t)){throw g.errors.invalidArgument({prefix:"Headers.set",value:t,type:"header value"})}if(this[i]==="immutable"){throw new TypeError("immutable")}else if(this[i]==="request-no-cors"){}return this[s].set(e,t)}getSetCookie(){g.brandCheck(this,Headers);const e=this[s].cookies;if(e){return[...e]}return[]}get[I](){if(this[s][I]){return this[s][I]}const e=[];const t=[...this[s]].sort(((e,t)=>e[0][...this[I].values()]),"Headers","key")}values(){g.brandCheck(this,Headers);return h((()=>[...this[I].values()]),"Headers","value")}entries(){g.brandCheck(this,Headers);return h((()=>[...this[I].values()]),"Headers","key+value")}forEach(e,t=globalThis){g.brandCheck(this,Headers);g.argumentLengthCheck(arguments,1,{header:"Headers.forEach"});if(typeof e!=="function"){throw new TypeError("Failed to execute 'forEach' on 'Headers': parameter 1 is not of type 'Function'.")}for(const[n,s]of this){e.apply(t,[s,n,this])}}[Symbol.for("nodejs.util.inspect.custom")](){g.brandCheck(this,Headers);return this[s]}}Headers.prototype[Symbol.iterator]=Headers.prototype.entries;Object.defineProperties(Headers.prototype,{append:o,delete:o,get:o,has:o,set:o,getSetCookie:o,keys:o,values:o,entries:o,forEach:o,[Symbol.iterator]:{enumerable:false},[Symbol.toStringTag]:{value:"Headers",configurable:true}});g.converters.HeadersInit=function(e){if(g.util.Type(e)==="Object"){if(e[Symbol.iterator]){return g.converters["sequence>"](e)}return g.converters["record"](e)}throw g.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};e.exports={fill:fill,Headers:Headers,HeadersList:HeadersList}},4881:(e,t,n)=>{"use strict";const{Response:s,makeNetworkError:i,makeAppropriateNetworkError:o,filterResponse:h,makeResponse:l}=n(7823);const{Headers:u}=n(554);const{Request:g,makeRequest:f}=n(8359);const E=n(9796);const{bytesMatch:I,makePolicyContainer:C,clonePolicyContainer:B,requestBadPort:Q,TAOCheck:p,appendRequestOriginHeader:y,responseLocationURL:w,requestCurrentURL:b,setRequestReferrerPolicyOnRedirect:R,tryUpgradeRequestToAPotentiallyTrustworthyURL:k,createOpaqueTimingInfo:_,appendFetchMetadata:D,corsCheck:U,crossOriginResourcePolicyCheck:L,determineRequestsReferrer:v,coarsenedSharedCurrentTime:T,createDeferredPromise:O,isBlobLike:P,sameOrigin:x,isCancelled:Y,isAborted:G,isErrorLike:J,fullyReadBody:W,readableStreamClose:V,isomorphicEncode:q,urlIsLocal:j,urlIsHttpHttpsScheme:z,urlHasHttpsScheme:$}=n(2538);const{kState:ee,kHeaders:te,kGuard:Ae,kRealm:re}=n(5861);const ne=n(9491);const{safelyExtractBody:se}=n(1472);const{redirectStatusSet:ie,nullBodyStatus:oe,safeMethodsSet:ae,requestBodyHeader:ce,subresourceSet:he,DOMException:le}=n(1037);const{kHeadersList:ue}=n(2785);const ge=n(2361);const{Readable:fe,pipeline:Ee}=n(2781);const{addAbortListener:de,isErrored:Ie,isReadable:Ce,nodeMajor:Be,nodeMinor:Qe}=n(3983);const{dataURLProcessor:pe,serializeAMimeType:ye}=n(685);const{TransformStream:we}=n(5356);const{getGlobalDispatcher:be}=n(1892);const{webidl:me}=n(1744);const{STATUS_CODES:Re}=n(3685);const Se=["GET","HEAD"];let ke;let _e=globalThis.ReadableStream;class Fetch extends ge{constructor(e){super();this.dispatcher=e;this.connection=null;this.dump=false;this.state="ongoing";this.setMaxListeners(21)}terminate(e){if(this.state!=="ongoing"){return}this.state="terminated";this.connection?.destroy(e);this.emit("terminated",e)}abort(e){if(this.state!=="ongoing"){return}this.state="aborted";if(!e){e=new le("The operation was aborted.","AbortError")}this.serializedAbortReason=e;this.connection?.destroy(e);this.emit("terminated",e)}}function fetch(e,t={}){me.argumentLengthCheck(arguments,1,{header:"globalThis.fetch"});const n=O();let i;try{i=new g(e,t)}catch(e){n.reject(e);return n.promise}const o=i[ee];if(i.signal.aborted){abortFetch(n,o,null,i.signal.reason);return n.promise}const h=o.client.globalObject;if(h?.constructor?.name==="ServiceWorkerGlobalScope"){o.serviceWorkers="none"}let l=null;const u=null;let f=false;let E=null;de(i.signal,(()=>{f=true;ne(E!=null);E.abort(i.signal.reason);abortFetch(n,o,l,i.signal.reason)}));const handleFetchDone=e=>finalizeAndReportTiming(e,"fetch");const processResponse=e=>{if(f){return Promise.resolve()}if(e.aborted){abortFetch(n,o,l,E.serializedAbortReason);return Promise.resolve()}if(e.type==="error"){n.reject(Object.assign(new TypeError("fetch failed"),{cause:e.error}));return Promise.resolve()}l=new s;l[ee]=e;l[re]=u;l[te][ue]=e.headersList;l[te][Ae]="immutable";l[te][re]=u;n.resolve(l)};E=fetching({request:o,processResponseEndOfBody:handleFetchDone,processResponse:processResponse,dispatcher:t.dispatcher??be()});return n.promise}function finalizeAndReportTiming(e,t="other"){if(e.type==="error"&&e.aborted){return}if(!e.urlList?.length){return}const n=e.urlList[0];let s=e.timingInfo;let i=e.cacheState;if(!z(n)){return}if(s===null){return}if(!s.timingAllowPassed){s=_({startTime:s.startTime});i=""}s.endTime=T();e.timingInfo=s;markResourceTiming(s,n,t,globalThis,i)}function markResourceTiming(e,t,n,s,i){if(Be>18||Be===18&&Qe>=2){performance.markResourceTiming(e,t.href,n,s,i)}}function abortFetch(e,t,n,s){if(!s){s=new le("The operation was aborted.","AbortError")}e.reject(s);if(t.body!=null&&Ce(t.body?.stream)){t.body.stream.cancel(s).catch((e=>{if(e.code==="ERR_INVALID_STATE"){return}throw e}))}if(n==null){return}const i=n[ee];if(i.body!=null&&Ce(i.body?.stream)){i.body.stream.cancel(s).catch((e=>{if(e.code==="ERR_INVALID_STATE"){return}throw e}))}}function fetching({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:n,processResponse:s,processResponseEndOfBody:i,processResponseConsumeBody:o,useParallelQueue:h=false,dispatcher:l}){let u=null;let g=false;if(e.client!=null){u=e.client.globalObject;g=e.client.crossOriginIsolatedCapability}const f=T(g);const E=_({startTime:f});const I={controller:new Fetch(l),request:e,timingInfo:E,processRequestBodyChunkLength:t,processRequestEndOfBody:n,processResponse:s,processResponseConsumeBody:o,processResponseEndOfBody:i,taskDestination:u,crossOriginIsolatedCapability:g};ne(!e.body||e.body.stream);if(e.window==="client"){e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"}if(e.origin==="client"){e.origin=e.client?.origin}if(e.policyContainer==="client"){if(e.client!=null){e.policyContainer=B(e.client.policyContainer)}else{e.policyContainer=C()}}if(!e.headersList.contains("accept")){const t="*/*";e.headersList.append("accept",t)}if(!e.headersList.contains("accept-language")){e.headersList.append("accept-language","*")}if(e.priority===null){}if(he.has(e.destination)){}mainFetch(I).catch((e=>{I.controller.terminate(e)}));return I.controller}async function mainFetch(e,t=false){const n=e.request;let s=null;if(n.localURLsOnly&&!j(b(n))){s=i("local URLs only")}k(n);if(Q(n)==="blocked"){s=i("bad port")}if(n.referrerPolicy===""){n.referrerPolicy=n.policyContainer.referrerPolicy}if(n.referrer!=="no-referrer"){n.referrer=v(n)}if(s===null){s=await(async()=>{const t=b(n);if(x(t,n.url)&&n.responseTainting==="basic"||t.protocol==="data:"||(n.mode==="navigate"||n.mode==="websocket")){n.responseTainting="basic";return await schemeFetch(e)}if(n.mode==="same-origin"){return i('request mode cannot be "same-origin"')}if(n.mode==="no-cors"){if(n.redirect!=="follow"){return i('redirect mode cannot be "follow" for "no-cors" request')}n.responseTainting="opaque";return await schemeFetch(e)}if(!z(b(n))){return i("URL scheme must be a HTTP(S) scheme")}n.responseTainting="cors";return await httpFetch(e)})()}if(t){return s}if(s.status!==0&&!s.internalResponse){if(n.responseTainting==="cors"){}if(n.responseTainting==="basic"){s=h(s,"basic")}else if(n.responseTainting==="cors"){s=h(s,"cors")}else if(n.responseTainting==="opaque"){s=h(s,"opaque")}else{ne(false)}}let o=s.status===0?s:s.internalResponse;if(o.urlList.length===0){o.urlList.push(...n.urlList)}if(!n.timingAllowFailed){s.timingAllowPassed=true}if(s.type==="opaque"&&o.status===206&&o.rangeRequested&&!n.headers.contains("range")){s=o=i()}if(s.status!==0&&(n.method==="HEAD"||n.method==="CONNECT"||oe.includes(o.status))){o.body=null;e.controller.dump=true}if(n.integrity){const processBodyError=t=>fetchFinale(e,i(t));if(n.responseTainting==="opaque"||s.body==null){processBodyError(s.error);return}const processBody=t=>{if(!I(t,n.integrity)){processBodyError("integrity mismatch");return}s.body=se(t)[0];fetchFinale(e,s)};await W(s.body,processBody,processBodyError)}else{fetchFinale(e,s)}}function schemeFetch(e){if(Y(e)&&e.request.redirectCount===0){return Promise.resolve(o(e))}const{request:t}=e;const{protocol:s}=b(t);switch(s){case"about:":{return Promise.resolve(i("about scheme is not supported"))}case"blob:":{if(!ke){ke=n(4300).resolveObjectURL}const e=b(t);if(e.search.length!==0){return Promise.resolve(i("NetworkError when attempting to fetch resource."))}const s=ke(e.toString());if(t.method!=="GET"||!P(s)){return Promise.resolve(i("invalid method"))}const o=se(s);const h=o[0];const u=q(`${h.length}`);const g=o[1]??"";const f=l({statusText:"OK",headersList:[["content-length",{name:"Content-Length",value:u}],["content-type",{name:"Content-Type",value:g}]]});f.body=h;return Promise.resolve(f)}case"data:":{const e=b(t);const n=pe(e);if(n==="failure"){return Promise.resolve(i("failed to fetch the data URL"))}const s=ye(n.mimeType);return Promise.resolve(l({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:s}]],body:se(n.body)[0]}))}case"file:":{return Promise.resolve(i("not implemented... yet..."))}case"http:":case"https:":{return httpFetch(e).catch((e=>i(e)))}default:{return Promise.resolve(i("unknown scheme"))}}}function finalizeResponse(e,t){e.request.done=true;if(e.processResponseDone!=null){queueMicrotask((()=>e.processResponseDone(t)))}}function fetchFinale(e,t){if(t.type==="error"){t.urlList=[e.request.urlList[0]];t.timingInfo=_({startTime:e.timingInfo.startTime})}const processResponseEndOfBody=()=>{e.request.done=true;if(e.processResponseEndOfBody!=null){queueMicrotask((()=>e.processResponseEndOfBody(t)))}};if(e.processResponse!=null){queueMicrotask((()=>e.processResponse(t)))}if(t.body==null){processResponseEndOfBody()}else{const identityTransformAlgorithm=(e,t)=>{t.enqueue(e)};const e=new we({start(){},transform:identityTransformAlgorithm,flush:processResponseEndOfBody},{size(){return 1}},{size(){return 1}});t.body={stream:t.body.stream.pipeThrough(e)}}if(e.processResponseConsumeBody!=null){const processBody=n=>e.processResponseConsumeBody(t,n);const processBodyError=n=>e.processResponseConsumeBody(t,n);if(t.body==null){queueMicrotask((()=>processBody(null)))}else{return W(t.body,processBody,processBodyError)}return Promise.resolve()}}async function httpFetch(e){const t=e.request;let n=null;let s=null;const o=e.timingInfo;if(t.serviceWorkers==="all"){}if(n===null){if(t.redirect==="follow"){t.serviceWorkers="none"}s=n=await httpNetworkOrCacheFetch(e);if(t.responseTainting==="cors"&&U(t,n)==="failure"){return i("cors failure")}if(p(t,n)==="failure"){t.timingAllowFailed=true}}if((t.responseTainting==="opaque"||n.type==="opaque")&&L(t.origin,t.client,t.destination,s)==="blocked"){return i("blocked")}if(ie.has(s.status)){if(t.redirect!=="manual"){e.controller.connection.destroy()}if(t.redirect==="error"){n=i("unexpected redirect")}else if(t.redirect==="manual"){n=s}else if(t.redirect==="follow"){n=await httpRedirectFetch(e,n)}else{ne(false)}}n.timingInfo=o;return n}function httpRedirectFetch(e,t){const n=e.request;const s=t.internalResponse?t.internalResponse:t;let o;try{o=w(s,b(n).hash);if(o==null){return t}}catch(e){return Promise.resolve(i(e))}if(!z(o)){return Promise.resolve(i("URL scheme must be a HTTP(S) scheme"))}if(n.redirectCount===20){return Promise.resolve(i("redirect count exceeded"))}n.redirectCount+=1;if(n.mode==="cors"&&(o.username||o.password)&&!x(n,o)){return Promise.resolve(i('cross origin not allowed for request mode "cors"'))}if(n.responseTainting==="cors"&&(o.username||o.password)){return Promise.resolve(i('URL cannot contain credentials for request mode "cors"'))}if(s.status!==303&&n.body!=null&&n.body.source==null){return Promise.resolve(i())}if([301,302].includes(s.status)&&n.method==="POST"||s.status===303&&!Se.includes(n.method)){n.method="GET";n.body=null;for(const e of ce){n.headersList.delete(e)}}if(!x(b(n),o)){n.headersList.delete("authorization");n.headersList.delete("cookie");n.headersList.delete("host")}if(n.body!=null){ne(n.body.source!=null);n.body=se(n.body.source)[0]}const h=e.timingInfo;h.redirectEndTime=h.postRedirectStartTime=T(e.crossOriginIsolatedCapability);if(h.redirectStartTime===0){h.redirectStartTime=h.startTime}n.urlList.push(o);R(n,s);return mainFetch(e,true)}async function httpNetworkOrCacheFetch(e,t=false,n=false){const s=e.request;let h=null;let l=null;let u=null;const g=null;const E=false;if(s.window==="no-window"&&s.redirect==="error"){h=e;l=s}else{l=f(s);h={...e};h.request=l}const I=s.credentials==="include"||s.credentials==="same-origin"&&s.responseTainting==="basic";const C=l.body?l.body.length:null;let B=null;if(l.body==null&&["POST","PUT"].includes(l.method)){B="0"}if(C!=null){B=q(`${C}`)}if(B!=null){l.headersList.append("content-length",B)}if(C!=null&&l.keepalive){}if(l.referrer instanceof URL){l.headersList.append("referer",q(l.referrer.href))}y(l);D(l);if(!l.headersList.contains("user-agent")){l.headersList.append("user-agent",typeof esbuildDetection==="undefined"?"undici":"node")}if(l.cache==="default"&&(l.headersList.contains("if-modified-since")||l.headersList.contains("if-none-match")||l.headersList.contains("if-unmodified-since")||l.headersList.contains("if-match")||l.headersList.contains("if-range"))){l.cache="no-store"}if(l.cache==="no-cache"&&!l.preventNoCacheCacheControlHeaderModification&&!l.headersList.contains("cache-control")){l.headersList.append("cache-control","max-age=0")}if(l.cache==="no-store"||l.cache==="reload"){if(!l.headersList.contains("pragma")){l.headersList.append("pragma","no-cache")}if(!l.headersList.contains("cache-control")){l.headersList.append("cache-control","no-cache")}}if(l.headersList.contains("range")){l.headersList.append("accept-encoding","identity")}if(!l.headersList.contains("accept-encoding")){if($(b(l))){l.headersList.append("accept-encoding","br, gzip, deflate")}else{l.headersList.append("accept-encoding","gzip, deflate")}}l.headersList.delete("host");if(I){}if(g==null){l.cache="no-store"}if(l.mode!=="no-store"&&l.mode!=="reload"){}if(u==null){if(l.mode==="only-if-cached"){return i("only if cached")}const e=await httpNetworkFetch(h,I,n);if(!ae.has(l.method)&&e.status>=200&&e.status<=399){}if(E&&e.status===304){}if(u==null){u=e}}u.urlList=[...l.urlList];if(l.headersList.contains("range")){u.rangeRequested=true}u.requestIncludesCredentials=I;if(u.status===407){if(s.window==="no-window"){return i()}if(Y(e)){return o(e)}return i("proxy authentication required")}if(u.status===421&&!n&&(s.body==null||s.body.source!=null)){if(Y(e)){return o(e)}e.controller.connection.destroy();u=await httpNetworkOrCacheFetch(e,t,true)}if(t){}return u}async function httpNetworkFetch(e,t=false,s=false){ne(!e.controller.connection||e.controller.connection.destroyed);e.controller.connection={abort:null,destroyed:false,destroy(e){if(!this.destroyed){this.destroyed=true;this.abort?.(e??new le("The operation was aborted.","AbortError"))}}};const h=e.request;let g=null;const f=e.timingInfo;const I=null;if(I==null){h.cache="no-store"}const C=s?"yes":"no";if(h.mode==="websocket"){}else{}let B=null;if(h.body==null&&e.processRequestEndOfBody){queueMicrotask((()=>e.processRequestEndOfBody()))}else if(h.body!=null){const processBodyChunk=async function*(t){if(Y(e)){return}yield t;e.processRequestBodyChunkLength?.(t.byteLength)};const processEndOfBody=()=>{if(Y(e)){return}if(e.processRequestEndOfBody){e.processRequestEndOfBody()}};const processBodyError=t=>{if(Y(e)){return}if(t.name==="AbortError"){e.controller.abort()}else{e.controller.terminate(t)}};B=async function*(){try{for await(const e of h.body.stream){yield*processBodyChunk(e)}processEndOfBody()}catch(e){processBodyError(e)}}()}try{const{body:t,status:n,statusText:s,headersList:i,socket:o}=await dispatch({body:B});if(o){g=l({status:n,statusText:s,headersList:i,socket:o})}else{const o=t[Symbol.asyncIterator]();e.controller.next=()=>o.next();g=l({status:n,statusText:s,headersList:i})}}catch(t){if(t.name==="AbortError"){e.controller.connection.destroy();return o(e,t)}return i(t)}const pullAlgorithm=()=>{e.controller.resume()};const cancelAlgorithm=t=>{e.controller.abort(t)};if(!_e){_e=n(5356).ReadableStream}const Q=new _e({async start(t){e.controller.controller=t},async pull(e){await pullAlgorithm(e)},async cancel(e){await cancelAlgorithm(e)}},{highWaterMark:0,size(){return 1}});g.body={stream:Q};e.controller.on("terminated",onAborted);e.controller.resume=async()=>{while(true){let t;let n;try{const{done:n,value:s}=await e.controller.next();if(G(e)){break}t=n?undefined:s}catch(s){if(e.controller.ended&&!f.encodedBodySize){t=undefined}else{t=s;n=true}}if(t===undefined){V(e.controller.controller);finalizeResponse(e,g);return}f.decodedBodySize+=t?.byteLength??0;if(n){e.controller.terminate(t);return}e.controller.controller.enqueue(new Uint8Array(t));if(Ie(Q)){e.controller.terminate();return}if(!e.controller.controller.desiredSize){return}}};function onAborted(t){if(G(e)){g.aborted=true;if(Ce(Q)){e.controller.controller.error(e.controller.serializedAbortReason)}}else{if(Ce(Q)){e.controller.controller.error(new TypeError("terminated",{cause:J(t)?t:undefined}))}}e.controller.connection.destroy()}return g;async function dispatch({body:t}){const n=b(h);const s=e.controller.dispatcher;return new Promise(((i,o)=>s.dispatch({path:n.pathname+n.search,origin:n.origin,method:h.method,body:e.controller.dispatcher.isMockActive?h.body&&h.body.source:t,headers:h.headersList.entries,maxRedirections:0,upgrade:h.mode==="websocket"?"websocket":undefined},{body:null,abort:null,onConnect(t){const{connection:n}=e.controller;if(n.destroyed){t(new le("The operation was aborted.","AbortError"))}else{e.controller.on("terminated",t);this.abort=n.abort=t}},onHeaders(e,t,n,s){if(e<200){return}let o=[];let l="";const g=new u;if(Array.isArray(t)){for(let e=0;ee.trim()))}else if(n.toLowerCase()==="location"){l=s}g.append(n,s)}}else{const e=Object.keys(t);for(const n of e){const e=t[n];if(n.toLowerCase()==="content-encoding"){o=e.toLowerCase().split(",").map((e=>e.trim())).reverse()}else if(n.toLowerCase()==="location"){l=e}g.append(n,e)}}this.body=new fe({read:n});const f=[];const I=h.redirect==="follow"&&l&&ie.has(e);if(h.method!=="HEAD"&&h.method!=="CONNECT"&&!oe.includes(e)&&!I){for(const e of o){if(e==="x-gzip"||e==="gzip"){f.push(E.createGunzip({flush:E.constants.Z_SYNC_FLUSH,finishFlush:E.constants.Z_SYNC_FLUSH}))}else if(e==="deflate"){f.push(E.createInflate())}else if(e==="br"){f.push(E.createBrotliDecompress())}else{f.length=0;break}}}i({status:e,statusText:s,headersList:g[ue],body:f.length?Ee(this.body,...f,(()=>{})):this.body.on("error",(()=>{}))});return true},onData(t){if(e.controller.dump){return}const n=t;f.encodedBodySize+=n.byteLength;return this.body.push(n)},onComplete(){if(this.abort){e.controller.off("terminated",this.abort)}e.controller.ended=true;this.body.push(null)},onError(t){if(this.abort){e.controller.off("terminated",this.abort)}this.body?.destroy(t);e.controller.terminate(t);o(t)},onUpgrade(e,t,n){if(e!==101){return}const s=new u;for(let e=0;e{"use strict";const{extractBody:s,mixinBody:i,cloneBody:o}=n(1472);const{Headers:h,fill:l,HeadersList:u}=n(554);const{FinalizationRegistry:g}=n(6436)();const f=n(3983);const{isValidHTTPToken:E,sameOrigin:I,normalizeMethod:C,makePolicyContainer:B}=n(2538);const{forbiddenMethodsSet:Q,corsSafeListedMethodsSet:p,referrerPolicy:y,requestRedirect:w,requestMode:b,requestCredentials:R,requestCache:k,requestDuplex:_}=n(1037);const{kEnumerableProperty:D}=f;const{kHeaders:U,kSignal:L,kState:v,kGuard:T,kRealm:O}=n(5861);const{webidl:P}=n(1744);const{getGlobalOrigin:x}=n(1246);const{URLSerializer:Y}=n(685);const{kHeadersList:G}=n(2785);const J=n(9491);const{getMaxListeners:W,setMaxListeners:V,getEventListeners:q,defaultMaxListeners:j}=n(2361);let z=globalThis.TransformStream;const $=Symbol("init");const ee=Symbol("abortController");const te=new g((({signal:e,abort:t})=>{e.removeEventListener("abort",t)}));class Request{constructor(e,t={}){if(e===$){return}P.argumentLengthCheck(arguments,1,{header:"Request constructor"});e=P.converters.RequestInfo(e);t=P.converters.RequestInit(t);this[O]={settingsObject:{baseUrl:x(),get origin(){return this.baseUrl?.origin},policyContainer:B()}};let i=null;let o=null;const u=this[O].settingsObject.baseUrl;let g=null;if(typeof e==="string"){let t;try{t=new URL(e,u)}catch(t){throw new TypeError("Failed to parse URL from "+e,{cause:t})}if(t.username||t.password){throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+e)}i=makeRequest({urlList:[t]});o="cors"}else{J(e instanceof Request);i=e[v];g=e[L]}const y=this[O].settingsObject.origin;let w="client";if(i.window?.constructor?.name==="EnvironmentSettingsObject"&&I(i.window,y)){w=i.window}if(t.window!=null){throw new TypeError(`'window' option '${w}' must be null`)}if("window"in t){w="no-window"}i=makeRequest({method:i.method,headersList:i.headersList,unsafeRequest:i.unsafeRequest,client:this[O].settingsObject,window:w,priority:i.priority,origin:i.origin,referrer:i.referrer,referrerPolicy:i.referrerPolicy,mode:i.mode,credentials:i.credentials,cache:i.cache,redirect:i.redirect,integrity:i.integrity,keepalive:i.keepalive,reloadNavigation:i.reloadNavigation,historyNavigation:i.historyNavigation,urlList:[...i.urlList]});if(Object.keys(t).length>0){if(i.mode==="navigate"){i.mode="same-origin"}i.reloadNavigation=false;i.historyNavigation=false;i.origin="client";i.referrer="client";i.referrerPolicy="";i.url=i.urlList[i.urlList.length-1];i.urlList=[i.url]}if(t.referrer!==undefined){const e=t.referrer;if(e===""){i.referrer="no-referrer"}else{let t;try{t=new URL(e,u)}catch(t){throw new TypeError(`Referrer "${e}" is not a valid URL.`,{cause:t})}if(t.protocol==="about:"&&t.hostname==="client"||y&&!I(t,this[O].settingsObject.baseUrl)){i.referrer="client"}else{i.referrer=t}}}if(t.referrerPolicy!==undefined){i.referrerPolicy=t.referrerPolicy}let b;if(t.mode!==undefined){b=t.mode}else{b=o}if(b==="navigate"){throw P.errors.exception({header:"Request constructor",message:"invalid request mode navigate."})}if(b!=null){i.mode=b}if(t.credentials!==undefined){i.credentials=t.credentials}if(t.cache!==undefined){i.cache=t.cache}if(i.cache==="only-if-cached"&&i.mode!=="same-origin"){throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode")}if(t.redirect!==undefined){i.redirect=t.redirect}if(t.integrity!==undefined&&t.integrity!=null){i.integrity=String(t.integrity)}if(t.keepalive!==undefined){i.keepalive=Boolean(t.keepalive)}if(t.method!==undefined){let e=t.method;if(!E(t.method)){throw TypeError(`'${t.method}' is not a valid HTTP method.`)}if(Q.has(e.toUpperCase())){throw TypeError(`'${t.method}' HTTP method is unsupported.`)}e=C(t.method);i.method=e}if(t.signal!==undefined){g=t.signal}this[v]=i;const R=new AbortController;this[L]=R.signal;this[L][O]=this[O];if(g!=null){if(!g||typeof g.aborted!=="boolean"||typeof g.addEventListener!=="function"){throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.")}if(g.aborted){R.abort(g.reason)}else{this[ee]=R;const e=new WeakRef(R);const abort=function(){const t=e.deref();if(t!==undefined){t.abort(this.reason)}};try{if(typeof W==="function"&&W(g)===j){V(100,g)}else if(q(g,"abort").length>=j){V(100,g)}}catch{}f.addAbortListener(g,abort);te.register(R,{signal:g,abort:abort})}}this[U]=new h;this[U][G]=i.headersList;this[U][T]="request";this[U][O]=this[O];if(b==="no-cors"){if(!p.has(i.method)){throw new TypeError(`'${i.method} is unsupported in no-cors mode.`)}this[U][T]="request-no-cors"}if(Object.keys(t).length!==0){let e=new h(this[U]);if(t.headers!==undefined){e=t.headers}this[U][G].clear();if(e.constructor.name==="Headers"){for(const[t,n]of e){this[U].append(t,n)}}else{l(this[U],e)}}const k=e instanceof Request?e[v].body:null;if((t.body!=null||k!=null)&&(i.method==="GET"||i.method==="HEAD")){throw new TypeError("Request with GET/HEAD method cannot have body.")}let _=null;if(t.body!=null){const[e,n]=s(t.body,i.keepalive);_=e;if(n&&!this[U][G].contains("content-type")){this[U].append("content-type",n)}}const D=_??k;if(D!=null&&D.source==null){if(_!=null&&t.duplex==null){throw new TypeError("RequestInit: duplex option is required when sending a body.")}if(i.mode!=="same-origin"&&i.mode!=="cors"){throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"')}i.useCORSPreflightFlag=true}let Y=D;if(_==null&&k!=null){if(f.isDisturbed(k.stream)||k.stream.locked){throw new TypeError("Cannot construct a Request with a Request object that has already been used.")}if(!z){z=n(5356).TransformStream}const e=new z;k.stream.pipeThrough(e);Y={source:k.source,length:k.length,stream:e.readable}}this[v].body=Y}get method(){P.brandCheck(this,Request);return this[v].method}get url(){P.brandCheck(this,Request);return Y(this[v].url)}get headers(){P.brandCheck(this,Request);return this[U]}get destination(){P.brandCheck(this,Request);return this[v].destination}get referrer(){P.brandCheck(this,Request);if(this[v].referrer==="no-referrer"){return""}if(this[v].referrer==="client"){return"about:client"}return this[v].referrer.toString()}get referrerPolicy(){P.brandCheck(this,Request);return this[v].referrerPolicy}get mode(){P.brandCheck(this,Request);return this[v].mode}get credentials(){return this[v].credentials}get cache(){P.brandCheck(this,Request);return this[v].cache}get redirect(){P.brandCheck(this,Request);return this[v].redirect}get integrity(){P.brandCheck(this,Request);return this[v].integrity}get keepalive(){P.brandCheck(this,Request);return this[v].keepalive}get isReloadNavigation(){P.brandCheck(this,Request);return this[v].reloadNavigation}get isHistoryNavigation(){P.brandCheck(this,Request);return this[v].historyNavigation}get signal(){P.brandCheck(this,Request);return this[L]}get body(){P.brandCheck(this,Request);return this[v].body?this[v].body.stream:null}get bodyUsed(){P.brandCheck(this,Request);return!!this[v].body&&f.isDisturbed(this[v].body.stream)}get duplex(){P.brandCheck(this,Request);return"half"}clone(){P.brandCheck(this,Request);if(this.bodyUsed||this.body?.locked){throw new TypeError("unusable")}const e=cloneRequest(this[v]);const t=new Request($);t[v]=e;t[O]=this[O];t[U]=new h;t[U][G]=e.headersList;t[U][T]=this[U][T];t[U][O]=this[U][O];const n=new AbortController;if(this.signal.aborted){n.abort(this.signal.reason)}else{f.addAbortListener(this.signal,(()=>{n.abort(this.signal.reason)}))}t[L]=n.signal;return t}}i(Request);function makeRequest(e){const t={method:"GET",localURLsOnly:false,unsafeRequest:false,body:null,client:null,reservedClient:null,replacesClientId:"",window:"client",keepalive:false,serviceWorkers:"all",initiator:"",destination:"",priority:null,origin:"client",policyContainer:"client",referrer:"client",referrerPolicy:"",mode:"no-cors",useCORSPreflightFlag:false,credentials:"same-origin",useCredentials:false,cache:"default",redirect:"follow",integrity:"",cryptoGraphicsNonceMetadata:"",parserMetadata:"",reloadNavigation:false,historyNavigation:false,userActivation:false,taintedOrigin:false,redirectCount:0,responseTainting:"basic",preventNoCacheCacheControlHeaderModification:false,done:false,timingAllowFailed:false,...e,headersList:e.headersList?new u(e.headersList):new u};t.url=t.urlList[0];return t}function cloneRequest(e){const t=makeRequest({...e,body:null});if(e.body!=null){t.body=o(e.body)}return t}Object.defineProperties(Request.prototype,{method:D,url:D,headers:D,redirect:D,clone:D,signal:D,duplex:D,destination:D,body:D,bodyUsed:D,isHistoryNavigation:D,isReloadNavigation:D,keepalive:D,integrity:D,cache:D,credentials:D,attribute:D,referrerPolicy:D,referrer:D,mode:D,[Symbol.toStringTag]:{value:"Request",configurable:true}});P.converters.Request=P.interfaceConverter(Request);P.converters.RequestInfo=function(e){if(typeof e==="string"){return P.converters.USVString(e)}if(e instanceof Request){return P.converters.Request(e)}return P.converters.USVString(e)};P.converters.AbortSignal=P.interfaceConverter(AbortSignal);P.converters.RequestInit=P.dictionaryConverter([{key:"method",converter:P.converters.ByteString},{key:"headers",converter:P.converters.HeadersInit},{key:"body",converter:P.nullableConverter(P.converters.BodyInit)},{key:"referrer",converter:P.converters.USVString},{key:"referrerPolicy",converter:P.converters.DOMString,allowedValues:y},{key:"mode",converter:P.converters.DOMString,allowedValues:b},{key:"credentials",converter:P.converters.DOMString,allowedValues:R},{key:"cache",converter:P.converters.DOMString,allowedValues:k},{key:"redirect",converter:P.converters.DOMString,allowedValues:w},{key:"integrity",converter:P.converters.DOMString},{key:"keepalive",converter:P.converters.boolean},{key:"signal",converter:P.nullableConverter((e=>P.converters.AbortSignal(e,{strict:false})))},{key:"window",converter:P.converters.any},{key:"duplex",converter:P.converters.DOMString,allowedValues:_}]);e.exports={Request:Request,makeRequest:makeRequest}},7823:(e,t,n)=>{"use strict";const{Headers:s,HeadersList:i,fill:o}=n(554);const{extractBody:h,cloneBody:l,mixinBody:u}=n(1472);const g=n(3983);const{kEnumerableProperty:f}=g;const{isValidReasonPhrase:E,isCancelled:I,isAborted:C,isBlobLike:B,serializeJavascriptValueToJSONString:Q,isErrorLike:p,isomorphicEncode:y}=n(2538);const{redirectStatusSet:w,nullBodyStatus:b,DOMException:R}=n(1037);const{kState:k,kHeaders:_,kGuard:D,kRealm:U}=n(5861);const{webidl:L}=n(1744);const{FormData:v}=n(2015);const{getGlobalOrigin:T}=n(1246);const{URLSerializer:O}=n(685);const{kHeadersList:P}=n(2785);const x=n(9491);const{types:Y}=n(3837);const G=globalThis.ReadableStream||n(5356).ReadableStream;const J=new TextEncoder("utf-8");class Response{static error(){const e={settingsObject:{}};const t=new Response;t[k]=makeNetworkError();t[U]=e;t[_][P]=t[k].headersList;t[_][D]="immutable";t[_][U]=e;return t}static json(e,t={}){L.argumentLengthCheck(arguments,1,{header:"Response.json"});if(t!==null){t=L.converters.ResponseInit(t)}const n=J.encode(Q(e));const s=h(n);const i={settingsObject:{}};const o=new Response;o[U]=i;o[_][D]="response";o[_][U]=i;initializeResponse(o,t,{body:s[0],type:"application/json"});return o}static redirect(e,t=302){const n={settingsObject:{}};L.argumentLengthCheck(arguments,1,{header:"Response.redirect"});e=L.converters.USVString(e);t=L.converters["unsigned short"](t);let s;try{s=new URL(e,T())}catch(t){throw Object.assign(new TypeError("Failed to parse URL from "+e),{cause:t})}if(!w.has(t)){throw new RangeError("Invalid status code "+t)}const i=new Response;i[U]=n;i[_][D]="immutable";i[_][U]=n;i[k].status=t;const o=y(O(s));i[k].headersList.append("location",o);return i}constructor(e=null,t={}){if(e!==null){e=L.converters.BodyInit(e)}t=L.converters.ResponseInit(t);this[U]={settingsObject:{}};this[k]=makeResponse({});this[_]=new s;this[_][D]="response";this[_][P]=this[k].headersList;this[_][U]=this[U];let n=null;if(e!=null){const[t,s]=h(e);n={body:t,type:s}}initializeResponse(this,t,n)}get type(){L.brandCheck(this,Response);return this[k].type}get url(){L.brandCheck(this,Response);const e=this[k].urlList;const t=e[e.length-1]??null;if(t===null){return""}return O(t,true)}get redirected(){L.brandCheck(this,Response);return this[k].urlList.length>1}get status(){L.brandCheck(this,Response);return this[k].status}get ok(){L.brandCheck(this,Response);return this[k].status>=200&&this[k].status<=299}get statusText(){L.brandCheck(this,Response);return this[k].statusText}get headers(){L.brandCheck(this,Response);return this[_]}get body(){L.brandCheck(this,Response);return this[k].body?this[k].body.stream:null}get bodyUsed(){L.brandCheck(this,Response);return!!this[k].body&&g.isDisturbed(this[k].body.stream)}clone(){L.brandCheck(this,Response);if(this.bodyUsed||this.body&&this.body.locked){throw L.errors.exception({header:"Response.clone",message:"Body has already been consumed."})}const e=cloneResponse(this[k]);const t=new Response;t[k]=e;t[U]=this[U];t[_][P]=e.headersList;t[_][D]=this[_][D];t[_][U]=this[_][U];return t}}u(Response);Object.defineProperties(Response.prototype,{type:f,url:f,status:f,ok:f,redirected:f,statusText:f,headers:f,clone:f,body:f,bodyUsed:f,[Symbol.toStringTag]:{value:"Response",configurable:true}});Object.defineProperties(Response,{json:f,redirect:f,error:f});function cloneResponse(e){if(e.internalResponse){return filterResponse(cloneResponse(e.internalResponse),e.type)}const t=makeResponse({...e,body:null});if(e.body!=null){t.body=l(e.body)}return t}function makeResponse(e){return{aborted:false,rangeRequested:false,timingAllowPassed:false,requestIncludesCredentials:false,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e.headersList?new i(e.headersList):new i,urlList:e.urlList?[...e.urlList]:[]}}function makeNetworkError(e){const t=p(e);return makeResponse({type:"error",status:0,error:t?e:new Error(e?String(e):e),aborted:e&&e.name==="AbortError"})}function makeFilteredResponse(e,t){t={internalResponse:e,...t};return new Proxy(e,{get(e,n){return n in t?t[n]:e[n]},set(e,n,s){x(!(n in t));e[n]=s;return true}})}function filterResponse(e,t){if(t==="basic"){return makeFilteredResponse(e,{type:"basic",headersList:e.headersList})}else if(t==="cors"){return makeFilteredResponse(e,{type:"cors",headersList:e.headersList})}else if(t==="opaque"){return makeFilteredResponse(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null})}else if(t==="opaqueredirect"){return makeFilteredResponse(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null})}else{x(false)}}function makeAppropriateNetworkError(e,t=null){x(I(e));return C(e)?makeNetworkError(Object.assign(new R("The operation was aborted.","AbortError"),{cause:t})):makeNetworkError(Object.assign(new R("Request was cancelled."),{cause:t}))}function initializeResponse(e,t,n){if(t.status!==null&&(t.status<200||t.status>599)){throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.')}if("statusText"in t&&t.statusText!=null){if(!E(String(t.statusText))){throw new TypeError("Invalid statusText")}}if("status"in t&&t.status!=null){e[k].status=t.status}if("statusText"in t&&t.statusText!=null){e[k].statusText=t.statusText}if("headers"in t&&t.headers!=null){o(e[_],t.headers)}if(n){if(b.includes(e.status)){throw L.errors.exception({header:"Response constructor",message:"Invalid response status code "+e.status})}e[k].body=n.body;if(n.type!=null&&!e[k].headersList.contains("Content-Type")){e[k].headersList.append("content-type",n.type)}}}L.converters.ReadableStream=L.interfaceConverter(G);L.converters.FormData=L.interfaceConverter(v);L.converters.URLSearchParams=L.interfaceConverter(URLSearchParams);L.converters.XMLHttpRequestBodyInit=function(e){if(typeof e==="string"){return L.converters.USVString(e)}if(B(e)){return L.converters.Blob(e,{strict:false})}if(Y.isAnyArrayBuffer(e)||Y.isTypedArray(e)||Y.isDataView(e)){return L.converters.BufferSource(e)}if(g.isFormDataLike(e)){return L.converters.FormData(e,{strict:false})}if(e instanceof URLSearchParams){return L.converters.URLSearchParams(e)}return L.converters.DOMString(e)};L.converters.BodyInit=function(e){if(e instanceof G){return L.converters.ReadableStream(e)}if(e?.[Symbol.asyncIterator]){return e}return L.converters.XMLHttpRequestBodyInit(e)};L.converters.ResponseInit=L.dictionaryConverter([{key:"status",converter:L.converters["unsigned short"],defaultValue:200},{key:"statusText",converter:L.converters.ByteString,defaultValue:""},{key:"headers",converter:L.converters.HeadersInit}]);e.exports={makeNetworkError:makeNetworkError,makeResponse:makeResponse,makeAppropriateNetworkError:makeAppropriateNetworkError,filterResponse:filterResponse,Response:Response,cloneResponse:cloneResponse}},5861:e=>{"use strict";e.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kGuard:Symbol("guard"),kRealm:Symbol("realm")}},2538:(e,t,n)=>{"use strict";const{redirectStatusSet:s,referrerPolicySet:i,badPortsSet:o}=n(1037);const{getGlobalOrigin:h}=n(1246);const{performance:l}=n(4074);const{isBlobLike:u,toUSVString:g,ReadableStreamFrom:f}=n(3983);const E=n(9491);const{isUint8Array:I}=n(9830);let C;try{C=n(6113)}catch{}function responseURL(e){const t=e.urlList;const n=t.length;return n===0?null:t[n-1].toString()}function responseLocationURL(e,t){if(!s.has(e.status)){return null}let n=e.headersList.get("location");if(n!==null&&isValidHeaderValue(n)){n=new URL(n,responseURL(e))}if(n&&!n.hash){n.hash=t}return n}function requestCurrentURL(e){return e.urlList[e.urlList.length-1]}function requestBadPort(e){const t=requestCurrentURL(e);if(urlIsHttpHttpsScheme(t)&&o.has(t.port)){return"blocked"}return"allowed"}function isErrorLike(e){return e instanceof Error||(e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException")}function isValidReasonPhrase(e){for(let t=0;t=32&&n<=126||n>=128&&n<=255)){return false}}return true}function isTokenChar(e){return!(e>=127||e<=32||e==="("||e===")"||e==="<"||e===">"||e==="@"||e===","||e===";"||e===":"||e==="\\"||e==='"'||e==="/"||e==="["||e==="]"||e==="?"||e==="="||e==="{"||e==="}")}function isValidHTTPToken(e){if(!e||typeof e!=="string"){return false}for(let t=0;t127||!isTokenChar(n)){return false}}return true}function isValidHeaderName(e){if(e.length===0){return false}return isValidHTTPToken(e)}function isValidHeaderValue(e){if(e.startsWith("\t")||e.startsWith(" ")||e.endsWith("\t")||e.endsWith(" ")){return false}if(e.includes("\0")||e.includes("\r")||e.includes("\n")){return false}return true}function setRequestReferrerPolicyOnRedirect(e,t){const{headersList:n}=t;const s=(n.get("referrer-policy")??"").split(",");let o="";if(s.length>0){for(let e=s.length;e!==0;e--){const t=s[e-1].trim();if(i.has(t)){o=t;break}}}if(o!==""){e.referrerPolicy=o}}function crossOriginResourcePolicyCheck(){return"allowed"}function corsCheck(){return"success"}function TAOCheck(){return"success"}function appendFetchMetadata(e){let t=null;t=e.mode;e.headersList.set("sec-fetch-mode",t)}function appendRequestOriginHeader(e){let t=e.origin;if(e.responseTainting==="cors"||e.mode==="websocket"){if(t){e.headersList.append("origin",t)}}else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":if(e.origin&&urlHasHttpsScheme(e.origin)&&!urlHasHttpsScheme(requestCurrentURL(e))){t=null}break;case"same-origin":if(!sameOrigin(e,requestCurrentURL(e))){t=null}break;default:}if(t){e.headersList.append("origin",t)}}}function coarsenedSharedCurrentTime(e){return l.now()}function createOpaqueTimingInfo(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function makePolicyContainer(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function clonePolicyContainer(e){return{referrerPolicy:e.referrerPolicy}}function determineRequestsReferrer(e){const t=e.referrerPolicy;E(t);let n=null;if(e.referrer==="client"){const e=h();if(!e||e.origin==="null"){return"no-referrer"}n=new URL(e)}else if(e.referrer instanceof URL){n=e.referrer}let s=stripURLForReferrer(n);const i=stripURLForReferrer(n,true);if(s.toString().length>4096){s=i}const o=sameOrigin(e,s);const l=isURLPotentiallyTrustworthy(s)&&!isURLPotentiallyTrustworthy(e.url);switch(t){case"origin":return i!=null?i:stripURLForReferrer(n,true);case"unsafe-url":return s;case"same-origin":return o?i:"no-referrer";case"origin-when-cross-origin":return o?s:i;case"strict-origin-when-cross-origin":{const t=requestCurrentURL(e);if(sameOrigin(s,t)){return s}if(isURLPotentiallyTrustworthy(s)&&!isURLPotentiallyTrustworthy(t)){return"no-referrer"}return i}case"strict-origin":case"no-referrer-when-downgrade":default:return l?"no-referrer":i}}function stripURLForReferrer(e,t){E(e instanceof URL);if(e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"){return"no-referrer"}e.username="";e.password="";e.hash="";if(t){e.pathname="";e.search=""}return e}function isURLPotentiallyTrustworthy(e){if(!(e instanceof URL)){return false}if(e.href==="about:blank"||e.href==="about:srcdoc"){return true}if(e.protocol==="data:")return true;if(e.protocol==="file:")return true;return isOriginPotentiallyTrustworthy(e.origin);function isOriginPotentiallyTrustworthy(e){if(e==null||e==="null")return false;const t=new URL(e);if(t.protocol==="https:"||t.protocol==="wss:"){return true}if(/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(t.hostname)||(t.hostname==="localhost"||t.hostname.includes("localhost."))||t.hostname.endsWith(".localhost")){return true}return false}}function bytesMatch(e,t){if(C===undefined){return true}const n=parseMetadata(t);if(n==="no metadata"){return true}if(n.length===0){return true}const s=n.sort(((e,t)=>t.algo.localeCompare(e.algo)));const i=s[0].algo;const o=s.filter((e=>e.algo===i));for(const t of o){const n=t.algo;let s=t.hash;if(s.endsWith("==")){s=s.slice(0,-2)}let i=C.createHash(n).update(e).digest("base64");if(i.endsWith("==")){i=i.slice(0,-2)}if(i===s){return true}let o=C.createHash(n).update(e).digest("base64url");if(o.endsWith("==")){o=o.slice(0,-2)}if(o===s){return true}}return false}const B=/((?sha256|sha384|sha512)-(?[A-z0-9+/]{1}.*={0,2}))( +[\x21-\x7e]?)?/i;function parseMetadata(e){const t=[];let n=true;const s=C.getHashes();for(const i of e.split(" ")){n=false;const e=B.exec(i);if(e===null||e.groups===undefined){continue}const o=e.groups.algo;if(s.includes(o.toLowerCase())){t.push(e.groups)}}if(n===true){return"no metadata"}return t}function tryUpgradeRequestToAPotentiallyTrustworthyURL(e){}function sameOrigin(e,t){if(e.origin===t.origin&&e.origin==="null"){return true}if(e.protocol===t.protocol&&e.hostname===t.hostname&&e.port===t.port){return true}return false}function createDeferredPromise(){let e;let t;const n=new Promise(((n,s)=>{e=n;t=s}));return{promise:n,resolve:e,reject:t}}function isAborted(e){return e.controller.state==="aborted"}function isCancelled(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}function normalizeMethod(e){return/^(DELETE|GET|HEAD|OPTIONS|POST|PUT)$/i.test(e)?e.toUpperCase():e}function serializeJavascriptValueToJSONString(e){const t=JSON.stringify(e);if(t===undefined){throw new TypeError("Value is not JSON serializable")}E(typeof t==="string");return t}const Q=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function makeIterator(e,t,n){const s={index:0,kind:n,target:e};const i={next(){if(Object.getPrototypeOf(this)!==i){throw new TypeError(`'next' called on an object that does not implement interface ${t} Iterator.`)}const{index:e,kind:n,target:o}=s;const h=o();const l=h.length;if(e>=l){return{value:undefined,done:true}}const u=h[e];s.index=e+1;return iteratorResult(u,n)},[Symbol.toStringTag]:`${t} Iterator`};Object.setPrototypeOf(i,Q);return Object.setPrototypeOf({},i)}function iteratorResult(e,t){let n;switch(t){case"key":{n=e[0];break}case"value":{n=e[1];break}case"key+value":{n=e;break}}return{value:n,done:false}}async function fullyReadBody(e,t,n){const s=t;const i=n;let o;try{o=e.stream.getReader()}catch(e){i(e);return}try{const e=await readAllBytes(o);s(e)}catch(e){i(e)}}let p=globalThis.ReadableStream;function isReadableStreamLike(e){if(!p){p=n(5356).ReadableStream}return e instanceof p||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee==="function"}const y=65535;function isomorphicDecode(e){if(e.lengthe+String.fromCharCode(t)),"")}function readableStreamClose(e){try{e.close()}catch(e){if(!e.message.includes("Controller is already closed")){throw e}}}function isomorphicEncode(e){for(let t=0;tObject.prototype.hasOwnProperty.call(e,t));e.exports={isAborted:isAborted,isCancelled:isCancelled,createDeferredPromise:createDeferredPromise,ReadableStreamFrom:f,toUSVString:g,tryUpgradeRequestToAPotentiallyTrustworthyURL:tryUpgradeRequestToAPotentiallyTrustworthyURL,coarsenedSharedCurrentTime:coarsenedSharedCurrentTime,determineRequestsReferrer:determineRequestsReferrer,makePolicyContainer:makePolicyContainer,clonePolicyContainer:clonePolicyContainer,appendFetchMetadata:appendFetchMetadata,appendRequestOriginHeader:appendRequestOriginHeader,TAOCheck:TAOCheck,corsCheck:corsCheck,crossOriginResourcePolicyCheck:crossOriginResourcePolicyCheck,createOpaqueTimingInfo:createOpaqueTimingInfo,setRequestReferrerPolicyOnRedirect:setRequestReferrerPolicyOnRedirect,isValidHTTPToken:isValidHTTPToken,requestBadPort:requestBadPort,requestCurrentURL:requestCurrentURL,responseURL:responseURL,responseLocationURL:responseLocationURL,isBlobLike:u,isURLPotentiallyTrustworthy:isURLPotentiallyTrustworthy,isValidReasonPhrase:isValidReasonPhrase,sameOrigin:sameOrigin,normalizeMethod:normalizeMethod,serializeJavascriptValueToJSONString:serializeJavascriptValueToJSONString,makeIterator:makeIterator,isValidHeaderName:isValidHeaderName,isValidHeaderValue:isValidHeaderValue,hasOwn:w,isErrorLike:isErrorLike,fullyReadBody:fullyReadBody,bytesMatch:bytesMatch,isReadableStreamLike:isReadableStreamLike,readableStreamClose:readableStreamClose,isomorphicEncode:isomorphicEncode,isomorphicDecode:isomorphicDecode,urlIsLocal:urlIsLocal,urlHasHttpsScheme:urlHasHttpsScheme,urlIsHttpHttpsScheme:urlIsHttpHttpsScheme,readAllBytes:readAllBytes}},1744:(e,t,n)=>{"use strict";const{types:s}=n(3837);const{hasOwn:i,toUSVString:o}=n(2538);const h={};h.converters={};h.util={};h.errors={};h.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};h.errors.conversionFailed=function(e){const t=e.types.length===1?"":" one of";const n=`${e.argument} could not be converted to`+`${t}: ${e.types.join(", ")}.`;return h.errors.exception({header:e.prefix,message:n})};h.errors.invalidArgument=function(e){return h.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};h.brandCheck=function(e,t,n=undefined){if(n?.strict!==false&&!(e instanceof t)){throw new TypeError("Illegal invocation")}else{return e?.[Symbol.toStringTag]===t.prototype[Symbol.toStringTag]}};h.argumentLengthCheck=function({length:e},t,n){if(ei){throw h.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${i}, got ${l}.`})}return l}if(!Number.isNaN(l)&&s.clamp===true){l=Math.min(Math.max(l,o),i);if(Math.floor(l)%2===0){l=Math.floor(l)}else{l=Math.ceil(l)}return l}if(Number.isNaN(l)||l===0&&Object.is(0,l)||l===Number.POSITIVE_INFINITY||l===Number.NEGATIVE_INFINITY){return 0}l=h.util.IntegerPart(l);l=l%Math.pow(2,t);if(n==="signed"&&l>=Math.pow(2,t)-1){return l-Math.pow(2,t)}return l};h.util.IntegerPart=function(e){const t=Math.floor(Math.abs(e));if(e<0){return-1*t}return t};h.sequenceConverter=function(e){return t=>{if(h.util.Type(t)!=="Object"){throw h.errors.exception({header:"Sequence",message:`Value of type ${h.util.Type(t)} is not an Object.`})}const n=t?.[Symbol.iterator]?.();const s=[];if(n===undefined||typeof n.next!=="function"){throw h.errors.exception({header:"Sequence",message:"Object is not an iterator."})}while(true){const{done:t,value:i}=n.next();if(t){break}s.push(e(i))}return s}};h.recordConverter=function(e,t){return n=>{if(h.util.Type(n)!=="Object"){throw h.errors.exception({header:"Record",message:`Value of type ${h.util.Type(n)} is not an Object.`})}const i={};if(!s.isProxy(n)){const s=Object.keys(n);for(const o of s){const s=e(o);const h=t(n[o]);i[s]=h}return i}const o=Reflect.ownKeys(n);for(const s of o){const o=Reflect.getOwnPropertyDescriptor(n,s);if(o?.enumerable){const o=e(s);const h=t(n[s]);i[o]=h}}return i}};h.interfaceConverter=function(e){return(t,n={})=>{if(n.strict!==false&&!(t instanceof e)){throw h.errors.exception({header:e.name,message:`Expected ${t} to be an instance of ${e.name}.`})}return t}};h.dictionaryConverter=function(e){return t=>{const n=h.util.Type(t);const s={};if(n==="Null"||n==="Undefined"){return s}else if(n!=="Object"){throw h.errors.exception({header:"Dictionary",message:`Expected ${t} to be one of: Null, Undefined, Object.`})}for(const n of e){const{key:e,defaultValue:o,required:l,converter:u}=n;if(l===true){if(!i(t,e)){throw h.errors.exception({header:"Dictionary",message:`Missing required key "${e}".`})}}let g=t[e];const f=i(n,"defaultValue");if(f&&g!==null){g=g??o}if(l||f||g!==undefined){g=u(g);if(n.allowedValues&&!n.allowedValues.includes(g)){throw h.errors.exception({header:"Dictionary",message:`${g} is not an accepted type. Expected one of ${n.allowedValues.join(", ")}.`})}s[e]=g}}return s}};h.nullableConverter=function(e){return t=>{if(t===null){return t}return e(t)}};h.converters.DOMString=function(e,t={}){if(e===null&&t.legacyNullToEmptyString){return""}if(typeof e==="symbol"){throw new TypeError("Could not convert argument of type symbol to string.")}return String(e)};h.converters.ByteString=function(e){const t=h.converters.DOMString(e);for(let e=0;e255){throw new TypeError("Cannot convert argument to a ByteString because the character at "+`index ${e} has a value of ${n} which is greater than 255.`)}}return t};h.converters.USVString=o;h.converters.boolean=function(e){const t=Boolean(e);return t};h.converters.any=function(e){return e};h.converters["long long"]=function(e){const t=h.util.ConvertToInt(e,64,"signed");return t};h.converters["unsigned long long"]=function(e){const t=h.util.ConvertToInt(e,64,"unsigned");return t};h.converters["unsigned long"]=function(e){const t=h.util.ConvertToInt(e,32,"unsigned");return t};h.converters["unsigned short"]=function(e,t){const n=h.util.ConvertToInt(e,16,"unsigned",t);return n};h.converters.ArrayBuffer=function(e,t={}){if(h.util.Type(e)!=="Object"||!s.isAnyArrayBuffer(e)){throw h.errors.conversionFailed({prefix:`${e}`,argument:`${e}`,types:["ArrayBuffer"]})}if(t.allowShared===false&&s.isSharedArrayBuffer(e)){throw h.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."})}return e};h.converters.TypedArray=function(e,t,n={}){if(h.util.Type(e)!=="Object"||!s.isTypedArray(e)||e.constructor.name!==t.name){throw h.errors.conversionFailed({prefix:`${t.name}`,argument:`${e}`,types:[t.name]})}if(n.allowShared===false&&s.isSharedArrayBuffer(e.buffer)){throw h.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."})}return e};h.converters.DataView=function(e,t={}){if(h.util.Type(e)!=="Object"||!s.isDataView(e)){throw h.errors.exception({header:"DataView",message:"Object is not a DataView."})}if(t.allowShared===false&&s.isSharedArrayBuffer(e.buffer)){throw h.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."})}return e};h.converters.BufferSource=function(e,t={}){if(s.isAnyArrayBuffer(e)){return h.converters.ArrayBuffer(e,t)}if(s.isTypedArray(e)){return h.converters.TypedArray(e,e.constructor)}if(s.isDataView(e)){return h.converters.DataView(e,t)}throw new TypeError(`Could not convert ${e} to a BufferSource.`)};h.converters["sequence"]=h.sequenceConverter(h.converters.ByteString);h.converters["sequence>"]=h.sequenceConverter(h.converters["sequence"]);h.converters["record"]=h.recordConverter(h.converters.ByteString,h.converters.ByteString);e.exports={webidl:h}},4854:e=>{"use strict";function getEncoding(e){if(!e){return"failure"}switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}e.exports={getEncoding:getEncoding}},1446:(e,t,n)=>{"use strict";const{staticPropertyDescriptors:s,readOperation:i,fireAProgressEvent:o}=n(7530);const{kState:h,kError:l,kResult:u,kEvents:g,kAborted:f}=n(9054);const{webidl:E}=n(1744);const{kEnumerableProperty:I}=n(3983);class FileReader extends EventTarget{constructor(){super();this[h]="empty";this[u]=null;this[l]=null;this[g]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(e){E.brandCheck(this,FileReader);E.argumentLengthCheck(arguments,1,{header:"FileReader.readAsArrayBuffer"});e=E.converters.Blob(e,{strict:false});i(this,e,"ArrayBuffer")}readAsBinaryString(e){E.brandCheck(this,FileReader);E.argumentLengthCheck(arguments,1,{header:"FileReader.readAsBinaryString"});e=E.converters.Blob(e,{strict:false});i(this,e,"BinaryString")}readAsText(e,t=undefined){E.brandCheck(this,FileReader);E.argumentLengthCheck(arguments,1,{header:"FileReader.readAsText"});e=E.converters.Blob(e,{strict:false});if(t!==undefined){t=E.converters.DOMString(t)}i(this,e,"Text",t)}readAsDataURL(e){E.brandCheck(this,FileReader);E.argumentLengthCheck(arguments,1,{header:"FileReader.readAsDataURL"});e=E.converters.Blob(e,{strict:false});i(this,e,"DataURL")}abort(){if(this[h]==="empty"||this[h]==="done"){this[u]=null;return}if(this[h]==="loading"){this[h]="done";this[u]=null}this[f]=true;o("abort",this);if(this[h]!=="loading"){o("loadend",this)}}get readyState(){E.brandCheck(this,FileReader);switch(this[h]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){E.brandCheck(this,FileReader);return this[u]}get error(){E.brandCheck(this,FileReader);return this[l]}get onloadend(){E.brandCheck(this,FileReader);return this[g].loadend}set onloadend(e){E.brandCheck(this,FileReader);if(this[g].loadend){this.removeEventListener("loadend",this[g].loadend)}if(typeof e==="function"){this[g].loadend=e;this.addEventListener("loadend",e)}else{this[g].loadend=null}}get onerror(){E.brandCheck(this,FileReader);return this[g].error}set onerror(e){E.brandCheck(this,FileReader);if(this[g].error){this.removeEventListener("error",this[g].error)}if(typeof e==="function"){this[g].error=e;this.addEventListener("error",e)}else{this[g].error=null}}get onloadstart(){E.brandCheck(this,FileReader);return this[g].loadstart}set onloadstart(e){E.brandCheck(this,FileReader);if(this[g].loadstart){this.removeEventListener("loadstart",this[g].loadstart)}if(typeof e==="function"){this[g].loadstart=e;this.addEventListener("loadstart",e)}else{this[g].loadstart=null}}get onprogress(){E.brandCheck(this,FileReader);return this[g].progress}set onprogress(e){E.brandCheck(this,FileReader);if(this[g].progress){this.removeEventListener("progress",this[g].progress)}if(typeof e==="function"){this[g].progress=e;this.addEventListener("progress",e)}else{this[g].progress=null}}get onload(){E.brandCheck(this,FileReader);return this[g].load}set onload(e){E.brandCheck(this,FileReader);if(this[g].load){this.removeEventListener("load",this[g].load)}if(typeof e==="function"){this[g].load=e;this.addEventListener("load",e)}else{this[g].load=null}}get onabort(){E.brandCheck(this,FileReader);return this[g].abort}set onabort(e){E.brandCheck(this,FileReader);if(this[g].abort){this.removeEventListener("abort",this[g].abort)}if(typeof e==="function"){this[g].abort=e;this.addEventListener("abort",e)}else{this[g].abort=null}}}FileReader.EMPTY=FileReader.prototype.EMPTY=0;FileReader.LOADING=FileReader.prototype.LOADING=1;FileReader.DONE=FileReader.prototype.DONE=2;Object.defineProperties(FileReader.prototype,{EMPTY:s,LOADING:s,DONE:s,readAsArrayBuffer:I,readAsBinaryString:I,readAsText:I,readAsDataURL:I,abort:I,readyState:I,result:I,error:I,onloadstart:I,onprogress:I,onload:I,onabort:I,onerror:I,onloadend:I,[Symbol.toStringTag]:{value:"FileReader",writable:false,enumerable:false,configurable:true}});Object.defineProperties(FileReader,{EMPTY:s,LOADING:s,DONE:s});e.exports={FileReader:FileReader}},5504:(e,t,n)=>{"use strict";const{webidl:s}=n(1744);const i=Symbol("ProgressEvent state");class ProgressEvent extends Event{constructor(e,t={}){e=s.converters.DOMString(e);t=s.converters.ProgressEventInit(t??{});super(e,t);this[i]={lengthComputable:t.lengthComputable,loaded:t.loaded,total:t.total}}get lengthComputable(){s.brandCheck(this,ProgressEvent);return this[i].lengthComputable}get loaded(){s.brandCheck(this,ProgressEvent);return this[i].loaded}get total(){s.brandCheck(this,ProgressEvent);return this[i].total}}s.converters.ProgressEventInit=s.dictionaryConverter([{key:"lengthComputable",converter:s.converters.boolean,defaultValue:false},{key:"loaded",converter:s.converters["unsigned long long"],defaultValue:0},{key:"total",converter:s.converters["unsigned long long"],defaultValue:0},{key:"bubbles",converter:s.converters.boolean,defaultValue:false},{key:"cancelable",converter:s.converters.boolean,defaultValue:false},{key:"composed",converter:s.converters.boolean,defaultValue:false}]);e.exports={ProgressEvent:ProgressEvent}},9054:e=>{"use strict";e.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}},7530:(e,t,n)=>{"use strict";const{kState:s,kError:i,kResult:o,kAborted:h,kLastProgressEventFired:l}=n(9054);const{ProgressEvent:u}=n(5504);const{getEncoding:g}=n(4854);const{DOMException:f}=n(1037);const{serializeAMimeType:E,parseMIMEType:I}=n(685);const{types:C}=n(3837);const{StringDecoder:B}=n(1576);const{btoa:Q}=n(4300);const p={enumerable:true,writable:false,configurable:false};function readOperation(e,t,n,u){if(e[s]==="loading"){throw new f("Invalid state","InvalidStateError")}e[s]="loading";e[o]=null;e[i]=null;const g=t.stream();const E=g.getReader();const I=[];let B=E.read();let Q=true;(async()=>{while(!e[h]){try{const{done:g,value:f}=await B;if(Q&&!e[h]){queueMicrotask((()=>{fireAProgressEvent("loadstart",e)}))}Q=false;if(!g&&C.isUint8Array(f)){I.push(f);if((e[l]===undefined||Date.now()-e[l]>=50)&&!e[h]){e[l]=Date.now();queueMicrotask((()=>{fireAProgressEvent("progress",e)}))}B=E.read()}else if(g){queueMicrotask((()=>{e[s]="done";try{const s=packageData(I,n,t.type,u);if(e[h]){return}e[o]=s;fireAProgressEvent("load",e)}catch(t){e[i]=t;fireAProgressEvent("error",e)}if(e[s]!=="loading"){fireAProgressEvent("loadend",e)}}));break}}catch(t){if(e[h]){return}queueMicrotask((()=>{e[s]="done";e[i]=t;fireAProgressEvent("error",e);if(e[s]!=="loading"){fireAProgressEvent("loadend",e)}}));break}}})()}function fireAProgressEvent(e,t){const n=new u(e,{bubbles:false,cancelable:false});t.dispatchEvent(n)}function packageData(e,t,n,s){switch(t){case"DataURL":{let t="data:";const s=I(n||"application/octet-stream");if(s!=="failure"){t+=E(s)}t+=";base64,";const i=new B("latin1");for(const n of e){t+=Q(i.write(n))}t+=Q(i.end());return t}case"Text":{let t="failure";if(s){t=g(s)}if(t==="failure"&&n){const e=I(n);if(e!=="failure"){t=g(e.parameters.get("charset"))}}if(t==="failure"){t="UTF-8"}return decode(e,t)}case"ArrayBuffer":{const t=combineByteSequences(e);return t.buffer}case"BinaryString":{let t="";const n=new B("latin1");for(const s of e){t+=n.write(s)}t+=n.end();return t}}}function decode(e,t){const n=combineByteSequences(e);const s=BOMSniffing(n);let i=0;if(s!==null){t=s;i=s==="UTF-8"?3:2}const o=n.slice(i);return new TextDecoder(t).decode(o)}function BOMSniffing(e){const[t,n,s]=e;if(t===239&&n===187&&s===191){return"UTF-8"}else if(t===254&&n===255){return"UTF-16BE"}else if(t===255&&n===254){return"UTF-16LE"}return null}function combineByteSequences(e){const t=e.reduce(((e,t)=>e+t.byteLength),0);let n=0;return e.reduce(((e,t)=>{e.set(t,n);n+=t.byteLength;return e}),new Uint8Array(t))}e.exports={staticPropertyDescriptors:p,readOperation:readOperation,fireAProgressEvent:fireAProgressEvent}},1892:(e,t,n)=>{"use strict";const s=Symbol.for("undici.globalDispatcher.1");const{InvalidArgumentError:i}=n(8045);const o=n(7890);if(getGlobalDispatcher()===undefined){setGlobalDispatcher(new o)}function setGlobalDispatcher(e){if(!e||typeof e.dispatch!=="function"){throw new i("Argument agent must implement Agent")}Object.defineProperty(globalThis,s,{value:e,writable:true,enumerable:false,configurable:false})}function getGlobalDispatcher(){return globalThis[s]}e.exports={setGlobalDispatcher:setGlobalDispatcher,getGlobalDispatcher:getGlobalDispatcher}},6930:e=>{"use strict";e.exports=class DecoratorHandler{constructor(e){this.handler=e}onConnect(...e){return this.handler.onConnect(...e)}onError(...e){return this.handler.onError(...e)}onUpgrade(...e){return this.handler.onUpgrade(...e)}onHeaders(...e){return this.handler.onHeaders(...e)}onData(...e){return this.handler.onData(...e)}onComplete(...e){return this.handler.onComplete(...e)}onBodySent(...e){return this.handler.onBodySent(...e)}}},2860:(e,t,n)=>{"use strict";const s=n(3983);const{kBodyUsed:i}=n(2785);const o=n(9491);const{InvalidArgumentError:h}=n(8045);const l=n(2361);const u=[300,301,302,303,307,308];const g=Symbol("body");class BodyAsyncIterable{constructor(e){this[g]=e;this[i]=false}async*[Symbol.asyncIterator](){o(!this[i],"disturbed");this[i]=true;yield*this[g]}}class RedirectHandler{constructor(e,t,n,u){if(t!=null&&(!Number.isInteger(t)||t<0)){throw new h("maxRedirections must be a positive number")}s.validateHandler(u,n.method,n.upgrade);this.dispatch=e;this.location=null;this.abort=null;this.opts={...n,maxRedirections:0};this.maxRedirections=t;this.handler=u;this.history=[];if(s.isStream(this.opts.body)){if(s.bodyLength(this.opts.body)===0){this.opts.body.on("data",(function(){o(false)}))}if(typeof this.opts.body.readableDidRead!=="boolean"){this.opts.body[i]=false;l.prototype.on.call(this.opts.body,"data",(function(){this[i]=true}))}}else if(this.opts.body&&typeof this.opts.body.pipeTo==="function"){this.opts.body=new BodyAsyncIterable(this.opts.body)}else if(this.opts.body&&typeof this.opts.body!=="string"&&!ArrayBuffer.isView(this.opts.body)&&s.isIterable(this.opts.body)){this.opts.body=new BodyAsyncIterable(this.opts.body)}}onConnect(e){this.abort=e;this.handler.onConnect(e,{history:this.history})}onUpgrade(e,t,n){this.handler.onUpgrade(e,t,n)}onError(e){this.handler.onError(e)}onHeaders(e,t,n,i){this.location=this.history.length>=this.maxRedirections||s.isDisturbed(this.opts.body)?null:parseLocation(e,t);if(this.opts.origin){this.history.push(new URL(this.opts.path,this.opts.origin))}if(!this.location){return this.handler.onHeaders(e,t,n,i)}const{origin:o,pathname:h,search:l}=s.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin)));const u=l?`${h}${l}`:h;this.opts.headers=cleanRequestHeaders(this.opts.headers,e===303,this.opts.origin!==o);this.opts.path=u;this.opts.origin=o;this.opts.maxRedirections=0;this.opts.query=null;if(e===303&&this.opts.method!=="HEAD"){this.opts.method="GET";this.opts.body=null}}onData(e){if(this.location){}else{return this.handler.onData(e)}}onComplete(e){if(this.location){this.location=null;this.abort=null;this.dispatch(this.opts,this)}else{this.handler.onComplete(e)}}onBodySent(e){if(this.handler.onBodySent){this.handler.onBodySent(e)}}}function parseLocation(e,t){if(u.indexOf(e)===-1){return null}for(let e=0;e{"use strict";const s=n(2860);function createRedirectInterceptor({maxRedirections:e}){return t=>function Intercept(n,i){const{maxRedirections:o=e}=n;if(!o){return t(n,i)}const h=new s(t,o,n,i);n={...n,maxRedirections:0};return t(n,h)}}e.exports=createRedirectInterceptor},953:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.SPECIAL_HEADERS=t.HEADER_STATE=t.MINOR=t.MAJOR=t.CONNECTION_TOKEN_CHARS=t.HEADER_CHARS=t.TOKEN=t.STRICT_TOKEN=t.HEX=t.URL_CHAR=t.STRICT_URL_CHAR=t.USERINFO_CHARS=t.MARK=t.ALPHANUM=t.NUM=t.HEX_MAP=t.NUM_MAP=t.ALPHA=t.FINISH=t.H_METHOD_MAP=t.METHOD_MAP=t.METHODS_RTSP=t.METHODS_ICE=t.METHODS_HTTP=t.METHODS=t.LENIENT_FLAGS=t.FLAGS=t.TYPE=t.ERROR=void 0;const s=n(1891);var i;(function(e){e[e["OK"]=0]="OK";e[e["INTERNAL"]=1]="INTERNAL";e[e["STRICT"]=2]="STRICT";e[e["LF_EXPECTED"]=3]="LF_EXPECTED";e[e["UNEXPECTED_CONTENT_LENGTH"]=4]="UNEXPECTED_CONTENT_LENGTH";e[e["CLOSED_CONNECTION"]=5]="CLOSED_CONNECTION";e[e["INVALID_METHOD"]=6]="INVALID_METHOD";e[e["INVALID_URL"]=7]="INVALID_URL";e[e["INVALID_CONSTANT"]=8]="INVALID_CONSTANT";e[e["INVALID_VERSION"]=9]="INVALID_VERSION";e[e["INVALID_HEADER_TOKEN"]=10]="INVALID_HEADER_TOKEN";e[e["INVALID_CONTENT_LENGTH"]=11]="INVALID_CONTENT_LENGTH";e[e["INVALID_CHUNK_SIZE"]=12]="INVALID_CHUNK_SIZE";e[e["INVALID_STATUS"]=13]="INVALID_STATUS";e[e["INVALID_EOF_STATE"]=14]="INVALID_EOF_STATE";e[e["INVALID_TRANSFER_ENCODING"]=15]="INVALID_TRANSFER_ENCODING";e[e["CB_MESSAGE_BEGIN"]=16]="CB_MESSAGE_BEGIN";e[e["CB_HEADERS_COMPLETE"]=17]="CB_HEADERS_COMPLETE";e[e["CB_MESSAGE_COMPLETE"]=18]="CB_MESSAGE_COMPLETE";e[e["CB_CHUNK_HEADER"]=19]="CB_CHUNK_HEADER";e[e["CB_CHUNK_COMPLETE"]=20]="CB_CHUNK_COMPLETE";e[e["PAUSED"]=21]="PAUSED";e[e["PAUSED_UPGRADE"]=22]="PAUSED_UPGRADE";e[e["PAUSED_H2_UPGRADE"]=23]="PAUSED_H2_UPGRADE";e[e["USER"]=24]="USER"})(i=t.ERROR||(t.ERROR={}));var o;(function(e){e[e["BOTH"]=0]="BOTH";e[e["REQUEST"]=1]="REQUEST";e[e["RESPONSE"]=2]="RESPONSE"})(o=t.TYPE||(t.TYPE={}));var h;(function(e){e[e["CONNECTION_KEEP_ALIVE"]=1]="CONNECTION_KEEP_ALIVE";e[e["CONNECTION_CLOSE"]=2]="CONNECTION_CLOSE";e[e["CONNECTION_UPGRADE"]=4]="CONNECTION_UPGRADE";e[e["CHUNKED"]=8]="CHUNKED";e[e["UPGRADE"]=16]="UPGRADE";e[e["CONTENT_LENGTH"]=32]="CONTENT_LENGTH";e[e["SKIPBODY"]=64]="SKIPBODY";e[e["TRAILING"]=128]="TRAILING";e[e["TRANSFER_ENCODING"]=512]="TRANSFER_ENCODING"})(h=t.FLAGS||(t.FLAGS={}));var l;(function(e){e[e["HEADERS"]=1]="HEADERS";e[e["CHUNKED_LENGTH"]=2]="CHUNKED_LENGTH";e[e["KEEP_ALIVE"]=4]="KEEP_ALIVE"})(l=t.LENIENT_FLAGS||(t.LENIENT_FLAGS={}));var u;(function(e){e[e["DELETE"]=0]="DELETE";e[e["GET"]=1]="GET";e[e["HEAD"]=2]="HEAD";e[e["POST"]=3]="POST";e[e["PUT"]=4]="PUT";e[e["CONNECT"]=5]="CONNECT";e[e["OPTIONS"]=6]="OPTIONS";e[e["TRACE"]=7]="TRACE";e[e["COPY"]=8]="COPY";e[e["LOCK"]=9]="LOCK";e[e["MKCOL"]=10]="MKCOL";e[e["MOVE"]=11]="MOVE";e[e["PROPFIND"]=12]="PROPFIND";e[e["PROPPATCH"]=13]="PROPPATCH";e[e["SEARCH"]=14]="SEARCH";e[e["UNLOCK"]=15]="UNLOCK";e[e["BIND"]=16]="BIND";e[e["REBIND"]=17]="REBIND";e[e["UNBIND"]=18]="UNBIND";e[e["ACL"]=19]="ACL";e[e["REPORT"]=20]="REPORT";e[e["MKACTIVITY"]=21]="MKACTIVITY";e[e["CHECKOUT"]=22]="CHECKOUT";e[e["MERGE"]=23]="MERGE";e[e["M-SEARCH"]=24]="M-SEARCH";e[e["NOTIFY"]=25]="NOTIFY";e[e["SUBSCRIBE"]=26]="SUBSCRIBE";e[e["UNSUBSCRIBE"]=27]="UNSUBSCRIBE";e[e["PATCH"]=28]="PATCH";e[e["PURGE"]=29]="PURGE";e[e["MKCALENDAR"]=30]="MKCALENDAR";e[e["LINK"]=31]="LINK";e[e["UNLINK"]=32]="UNLINK";e[e["SOURCE"]=33]="SOURCE";e[e["PRI"]=34]="PRI";e[e["DESCRIBE"]=35]="DESCRIBE";e[e["ANNOUNCE"]=36]="ANNOUNCE";e[e["SETUP"]=37]="SETUP";e[e["PLAY"]=38]="PLAY";e[e["PAUSE"]=39]="PAUSE";e[e["TEARDOWN"]=40]="TEARDOWN";e[e["GET_PARAMETER"]=41]="GET_PARAMETER";e[e["SET_PARAMETER"]=42]="SET_PARAMETER";e[e["REDIRECT"]=43]="REDIRECT";e[e["RECORD"]=44]="RECORD";e[e["FLUSH"]=45]="FLUSH"})(u=t.METHODS||(t.METHODS={}));t.METHODS_HTTP=[u.DELETE,u.GET,u.HEAD,u.POST,u.PUT,u.CONNECT,u.OPTIONS,u.TRACE,u.COPY,u.LOCK,u.MKCOL,u.MOVE,u.PROPFIND,u.PROPPATCH,u.SEARCH,u.UNLOCK,u.BIND,u.REBIND,u.UNBIND,u.ACL,u.REPORT,u.MKACTIVITY,u.CHECKOUT,u.MERGE,u["M-SEARCH"],u.NOTIFY,u.SUBSCRIBE,u.UNSUBSCRIBE,u.PATCH,u.PURGE,u.MKCALENDAR,u.LINK,u.UNLINK,u.PRI,u.SOURCE];t.METHODS_ICE=[u.SOURCE];t.METHODS_RTSP=[u.OPTIONS,u.DESCRIBE,u.ANNOUNCE,u.SETUP,u.PLAY,u.PAUSE,u.TEARDOWN,u.GET_PARAMETER,u.SET_PARAMETER,u.REDIRECT,u.RECORD,u.FLUSH,u.GET,u.POST];t.METHOD_MAP=s.enumToMap(u);t.H_METHOD_MAP={};Object.keys(t.METHOD_MAP).forEach((e=>{if(/^H/.test(e)){t.H_METHOD_MAP[e]=t.METHOD_MAP[e]}}));var g;(function(e){e[e["SAFE"]=0]="SAFE";e[e["SAFE_WITH_CB"]=1]="SAFE_WITH_CB";e[e["UNSAFE"]=2]="UNSAFE"})(g=t.FINISH||(t.FINISH={}));t.ALPHA=[];for(let e="A".charCodeAt(0);e<="Z".charCodeAt(0);e++){t.ALPHA.push(String.fromCharCode(e));t.ALPHA.push(String.fromCharCode(e+32))}t.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};t.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};t.NUM=["0","1","2","3","4","5","6","7","8","9"];t.ALPHANUM=t.ALPHA.concat(t.NUM);t.MARK=["-","_",".","!","~","*","'","(",")"];t.USERINFO_CHARS=t.ALPHANUM.concat(t.MARK).concat(["%",";",":","&","=","+","$",","]);t.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(t.ALPHANUM);t.URL_CHAR=t.STRICT_URL_CHAR.concat(["\t","\f"]);for(let e=128;e<=255;e++){t.URL_CHAR.push(e)}t.HEX=t.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);t.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(t.ALPHANUM);t.TOKEN=t.STRICT_TOKEN.concat([" "]);t.HEADER_CHARS=["\t"];for(let e=32;e<=255;e++){if(e!==127){t.HEADER_CHARS.push(e)}}t.CONNECTION_TOKEN_CHARS=t.HEADER_CHARS.filter((e=>e!==44));t.MAJOR=t.NUM_MAP;t.MINOR=t.MAJOR;var f;(function(e){e[e["GENERAL"]=0]="GENERAL";e[e["CONNECTION"]=1]="CONNECTION";e[e["CONTENT_LENGTH"]=2]="CONTENT_LENGTH";e[e["TRANSFER_ENCODING"]=3]="TRANSFER_ENCODING";e[e["UPGRADE"]=4]="UPGRADE";e[e["CONNECTION_KEEP_ALIVE"]=5]="CONNECTION_KEEP_ALIVE";e[e["CONNECTION_CLOSE"]=6]="CONNECTION_CLOSE";e[e["CONNECTION_UPGRADE"]=7]="CONNECTION_UPGRADE";e[e["TRANSFER_ENCODING_CHUNKED"]=8]="TRANSFER_ENCODING_CHUNKED"})(f=t.HEADER_STATE||(t.HEADER_STATE={}));t.SPECIAL_HEADERS={connection:f.CONNECTION,"content-length":f.CONTENT_LENGTH,"proxy-connection":f.CONNECTION,"transfer-encoding":f.TRANSFER_ENCODING,upgrade:f.UPGRADE}},1145:e=>{e.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJsbGh0dHBfc3RhdHVzX25hbWUAIRpsbGh0dHBfc2V0X2xlbmllbnRfaGVhZGVycwAiIWxsaHR0cF9zZXRfbGVuaWVudF9jaHVua2VkX2xlbmd0aAAjHWxsaHR0cF9zZXRfbGVuaWVudF9rZWVwX2FsaXZlACQkbGxodHRwX3NldF9sZW5pZW50X3RyYW5zZmVyX2VuY29kaW5nACUYbGxodHRwX21lc3NhZ2VfbmVlZHNfZW9mAD8JFwEAQQELEQECAwQFCwYHNTk3MS8tJyspCsLgAkUCAAsIABCIgICAAAsZACAAEMKAgIAAGiAAIAI2AjggACABOgAoCxwAIAAgAC8BMiAALQAuIAAQwYCAgAAQgICAgAALKgEBf0HAABDGgICAACIBEMKAgIAAGiABQYCIgIAANgI4IAEgADoAKCABCwoAIAAQyICAgAALBwAgAC0AKAsHACAALQAqCwcAIAAtACsLBwAgAC0AKQsHACAALwEyCwcAIAAtAC4LRQEEfyAAKAIYIQEgAC0ALSECIAAtACghAyAAKAI4IQQgABDCgICAABogACAENgI4IAAgAzoAKCAAIAI6AC0gACABNgIYCxEAIAAgASABIAJqEMOAgIAACxAAIABBAEHcABDMgICAABoLZwEBf0EAIQECQCAAKAIMDQACQAJAAkACQCAALQAvDgMBAAMCCyAAKAI4IgFFDQAgASgCLCIBRQ0AIAAgARGAgICAAAAiAQ0DC0EADwsQyoCAgAAACyAAQcOWgIAANgIQQQ4hAQsgAQseAAJAIAAoAgwNACAAQdGbgIAANgIQIABBFTYCDAsLFgACQCAAKAIMQRVHDQAgAEEANgIMCwsWAAJAIAAoAgxBFkcNACAAQQA2AgwLCwcAIAAoAgwLBwAgACgCEAsJACAAIAE2AhALBwAgACgCFAsiAAJAIABBJEkNABDKgICAAAALIABBAnRBoLOAgABqKAIACyIAAkAgAEEuSQ0AEMqAgIAAAAsgAEECdEGwtICAAGooAgAL7gsBAX9B66iAgAAhAQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABBnH9qDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0Hhp4CAAA8LQaShgIAADwtBy6yAgAAPC0H+sYCAAA8LQcCkgIAADwtBq6SAgAAPC0GNqICAAA8LQeKmgIAADwtBgLCAgAAPC0G5r4CAAA8LQdekgIAADwtB75+AgAAPC0Hhn4CAAA8LQfqfgIAADwtB8qCAgAAPC0Gor4CAAA8LQa6ygIAADwtBiLCAgAAPC0Hsp4CAAA8LQYKigIAADwtBjp2AgAAPC0HQroCAAA8LQcqjgIAADwtBxbKAgAAPC0HfnICAAA8LQdKcgIAADwtBxKCAgAAPC0HXoICAAA8LQaKfgIAADwtB7a6AgAAPC0GrsICAAA8LQdSlgIAADwtBzK6AgAAPC0H6roCAAA8LQfyrgIAADwtB0rCAgAAPC0HxnYCAAA8LQbuggIAADwtB96uAgAAPC0GQsYCAAA8LQdexgIAADwtBoq2AgAAPC0HUp4CAAA8LQeCrgIAADwtBn6yAgAAPC0HrsYCAAA8LQdWfgIAADwtByrGAgAAPC0HepYCAAA8LQdSegIAADwtB9JyAgAAPC0GnsoCAAA8LQbGdgIAADwtBoJ2AgAAPC0G5sYCAAA8LQbywgIAADwtBkqGAgAAPC0GzpoCAAA8LQemsgIAADwtBrJ6AgAAPC0HUq4CAAA8LQfemgIAADwtBgKaAgAAPC0GwoYCAAA8LQf6egIAADwtBjaOAgAAPC0GJrYCAAA8LQfeigIAADwtBoLGAgAAPC0Gun4CAAA8LQcalgIAADwtB6J6AgAAPC0GTooCAAA8LQcKvgIAADwtBw52AgAAPC0GLrICAAA8LQeGdgIAADwtBja+AgAAPC0HqoYCAAA8LQbStgIAADwtB0q+AgAAPC0HfsoCAAA8LQdKygIAADwtB8LCAgAAPC0GpooCAAA8LQfmjgIAADwtBmZ6AgAAPC0G1rICAAA8LQZuwgIAADwtBkrKAgAAPC0G2q4CAAA8LQcKigIAADwtB+LKAgAAPC0GepYCAAA8LQdCigIAADwtBup6AgAAPC0GBnoCAAA8LEMqAgIAAAAtB1qGAgAAhAQsgAQsWACAAIAAtAC1B/gFxIAFBAEdyOgAtCxkAIAAgAC0ALUH9AXEgAUEAR0EBdHI6AC0LGQAgACAALQAtQfsBcSABQQBHQQJ0cjoALQsZACAAIAAtAC1B9wFxIAFBAEdBA3RyOgAtCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAgAiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCBCIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQcaRgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIwIgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAggiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEH2ioCAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCNCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIMIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABB7ZqAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAjgiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCECIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQZWQgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAI8IgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAhQiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEGqm4CAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCQCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIYIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABB7ZOAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAkQiBEUNACAAIAQRgICAgAAAIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCJCIERQ0AIAAgBBGAgICAAAAhAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIsIgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAigiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEH2iICAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCUCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIcIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABBwpmAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAkgiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCICIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQZSUgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAJMIgRFDQAgACAEEYCAgIAAACEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAlQiBEUNACAAIAQRgICAgAAAIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCWCIERQ0AIAAgBBGAgICAAAAhAwsgAwtFAQF/AkACQCAALwEwQRRxQRRHDQBBASEDIAAtAChBAUYNASAALwEyQeUARiEDDAELIAAtAClBBUYhAwsgACADOgAuQQAL/gEBA39BASEDAkAgAC8BMCIEQQhxDQAgACkDIEIAUiEDCwJAAkAgAC0ALkUNAEEBIQUgAC0AKUEFRg0BQQEhBSAEQcAAcUUgA3FBAUcNAQtBACEFIARBwABxDQBBAiEFIARB//8DcSIDQQhxDQACQCADQYAEcUUNAAJAIAAtAChBAUcNACAALQAtQQpxDQBBBQ8LQQQPCwJAIANBIHENAAJAIAAtAChBAUYNACAALwEyQf//A3EiAEGcf2pB5ABJDQAgAEHMAUYNACAAQbACRg0AQQQhBSAEQShxRQ0CIANBiARxQYAERg0CC0EADwtBAEEDIAApAyBQGyEFCyAFC2IBAn9BACEBAkAgAC0AKEEBRg0AIAAvATJB//8DcSICQZx/akHkAEkNACACQcwBRg0AIAJBsAJGDQAgAC8BMCIAQcAAcQ0AQQEhASAAQYgEcUGABEYNACAAQShxRSEBCyABC6cBAQN/AkACQAJAIAAtACpFDQAgAC0AK0UNAEEAIQMgAC8BMCIEQQJxRQ0BDAILQQAhAyAALwEwIgRBAXFFDQELQQEhAyAALQAoQQFGDQAgAC8BMkH//wNxIgVBnH9qQeQASQ0AIAVBzAFGDQAgBUGwAkYNACAEQcAAcQ0AQQAhAyAEQYgEcUGABEYNACAEQShxQQBHIQMLIABBADsBMCAAQQA6AC8gAwuZAQECfwJAAkACQCAALQAqRQ0AIAAtACtFDQBBACEBIAAvATAiAkECcUUNAQwCC0EAIQEgAC8BMCICQQFxRQ0BC0EBIQEgAC0AKEEBRg0AIAAvATJB//8DcSIAQZx/akHkAEkNACAAQcwBRg0AIABBsAJGDQAgAkHAAHENAEEAIQEgAkGIBHFBgARGDQAgAkEocUEARyEBCyABC1kAIABBGGpCADcDACAAQgA3AwAgAEE4akIANwMAIABBMGpCADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEHdATYCHEEAC3sBAX8CQCAAKAIMIgMNAAJAIAAoAgRFDQAgACABNgIECwJAIAAgASACEMSAgIAAIgMNACAAKAIMDwsgACADNgIcQQAhAyAAKAIEIgFFDQAgACABIAIgACgCCBGBgICAAAAiAUUNACAAIAI2AhQgACABNgIMIAEhAwsgAwvk8wEDDn8DfgR/I4CAgIAAQRBrIgMkgICAgAAgASEEIAEhBSABIQYgASEHIAEhCCABIQkgASEKIAEhCyABIQwgASENIAEhDiABIQ8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCHCIQQX9qDt0B2gEB2QECAwQFBgcICQoLDA0O2AEPENcBERLWARMUFRYXGBkaG+AB3wEcHR7VAR8gISIjJCXUASYnKCkqKyzTAdIBLS7RAdABLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVG2wFHSElKzwHOAUvNAUzMAU1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkBigGLAYwBjQGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1AbYBtwHLAcoBuAHJAbkByAG6AbsBvAG9Ab4BvwHAAcEBwgHDAcQBxQHGAQDcAQtBACEQDMYBC0EOIRAMxQELQQ0hEAzEAQtBDyEQDMMBC0EQIRAMwgELQRMhEAzBAQtBFCEQDMABC0EVIRAMvwELQRYhEAy+AQtBFyEQDL0BC0EYIRAMvAELQRkhEAy7AQtBGiEQDLoBC0EbIRAMuQELQRwhEAy4AQtBCCEQDLcBC0EdIRAMtgELQSAhEAy1AQtBHyEQDLQBC0EHIRAMswELQSEhEAyyAQtBIiEQDLEBC0EeIRAMsAELQSMhEAyvAQtBEiEQDK4BC0ERIRAMrQELQSQhEAysAQtBJSEQDKsBC0EmIRAMqgELQSchEAypAQtBwwEhEAyoAQtBKSEQDKcBC0ErIRAMpgELQSwhEAylAQtBLSEQDKQBC0EuIRAMowELQS8hEAyiAQtBxAEhEAyhAQtBMCEQDKABC0E0IRAMnwELQQwhEAyeAQtBMSEQDJ0BC0EyIRAMnAELQTMhEAybAQtBOSEQDJoBC0E1IRAMmQELQcUBIRAMmAELQQshEAyXAQtBOiEQDJYBC0E2IRAMlQELQQohEAyUAQtBNyEQDJMBC0E4IRAMkgELQTwhEAyRAQtBOyEQDJABC0E9IRAMjwELQQkhEAyOAQtBKCEQDI0BC0E+IRAMjAELQT8hEAyLAQtBwAAhEAyKAQtBwQAhEAyJAQtBwgAhEAyIAQtBwwAhEAyHAQtBxAAhEAyGAQtBxQAhEAyFAQtBxgAhEAyEAQtBKiEQDIMBC0HHACEQDIIBC0HIACEQDIEBC0HJACEQDIABC0HKACEQDH8LQcsAIRAMfgtBzQAhEAx9C0HMACEQDHwLQc4AIRAMewtBzwAhEAx6C0HQACEQDHkLQdEAIRAMeAtB0gAhEAx3C0HTACEQDHYLQdQAIRAMdQtB1gAhEAx0C0HVACEQDHMLQQYhEAxyC0HXACEQDHELQQUhEAxwC0HYACEQDG8LQQQhEAxuC0HZACEQDG0LQdoAIRAMbAtB2wAhEAxrC0HcACEQDGoLQQMhEAxpC0HdACEQDGgLQd4AIRAMZwtB3wAhEAxmC0HhACEQDGULQeAAIRAMZAtB4gAhEAxjC0HjACEQDGILQQIhEAxhC0HkACEQDGALQeUAIRAMXwtB5gAhEAxeC0HnACEQDF0LQegAIRAMXAtB6QAhEAxbC0HqACEQDFoLQesAIRAMWQtB7AAhEAxYC0HtACEQDFcLQe4AIRAMVgtB7wAhEAxVC0HwACEQDFQLQfEAIRAMUwtB8gAhEAxSC0HzACEQDFELQfQAIRAMUAtB9QAhEAxPC0H2ACEQDE4LQfcAIRAMTQtB+AAhEAxMC0H5ACEQDEsLQfoAIRAMSgtB+wAhEAxJC0H8ACEQDEgLQf0AIRAMRwtB/gAhEAxGC0H/ACEQDEULQYABIRAMRAtBgQEhEAxDC0GCASEQDEILQYMBIRAMQQtBhAEhEAxAC0GFASEQDD8LQYYBIRAMPgtBhwEhEAw9C0GIASEQDDwLQYkBIRAMOwtBigEhEAw6C0GLASEQDDkLQYwBIRAMOAtBjQEhEAw3C0GOASEQDDYLQY8BIRAMNQtBkAEhEAw0C0GRASEQDDMLQZIBIRAMMgtBkwEhEAwxC0GUASEQDDALQZUBIRAMLwtBlgEhEAwuC0GXASEQDC0LQZgBIRAMLAtBmQEhEAwrC0GaASEQDCoLQZsBIRAMKQtBnAEhEAwoC0GdASEQDCcLQZ4BIRAMJgtBnwEhEAwlC0GgASEQDCQLQaEBIRAMIwtBogEhEAwiC0GjASEQDCELQaQBIRAMIAtBpQEhEAwfC0GmASEQDB4LQacBIRAMHQtBqAEhEAwcC0GpASEQDBsLQaoBIRAMGgtBqwEhEAwZC0GsASEQDBgLQa0BIRAMFwtBrgEhEAwWC0EBIRAMFQtBrwEhEAwUC0GwASEQDBMLQbEBIRAMEgtBswEhEAwRC0GyASEQDBALQbQBIRAMDwtBtQEhEAwOC0G2ASEQDA0LQbcBIRAMDAtBuAEhEAwLC0G5ASEQDAoLQboBIRAMCQtBuwEhEAwIC0HGASEQDAcLQbwBIRAMBgtBvQEhEAwFC0G+ASEQDAQLQb8BIRAMAwtBwAEhEAwCC0HCASEQDAELQcEBIRALA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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FCAAIBA2AgxBACEQDLIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDLEBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxRCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLABCyAAQQA2AhwgACABNgIUIABBxoqAgAA2AhAgAEEHNgIMQQAhEAyvAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAyuAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAytAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMTQsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAysAQsgAEEANgIcIAAgATYCFCAAQdyIgIAANgIQIABBBzYCDEEAIRAMqwELIBBBP0cNASABQQFqIQELQQUhEAyQAQtBACEQIABBADYCHCAAIAE2AhQgAEH9koCAADYCECAAQQc2AgwMqAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMpwELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMpgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEYLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMpQELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0gA2AhwgACAUNgIUIAAgATYCDEEAIRAMpAELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0wA2AhwgACAUNgIUIAAgATYCDEEAIRAMowELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDEMLIABB5QA2AhwgACAU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YWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21ldGhvZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lYCBjYWxsYmFjayBlcnJvcgBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNlcnZlcgBJbnZhbGlkIGhlYWRlciB2YWx1ZSBjaGFyAEludmFsaWQgaGVhZGVyIGZpZWxkIGNoYXIAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl92ZXJzaW9uAEludmFsaWQgbWlub3IgdmVyc2lvbgBJbnZhbGlkIG1ham9yIHZlcnNpb24ARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgdmVyc2lvbgBFeHBlY3RlZCBDUkxGIGFmdGVyIHZlcnNpb24ASW52YWxpZCBIVFRQIHZlcnNpb24ASW52YWxpZCBoZWFkZXIgdG9rZW4AU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl91cmwASW52YWxpZCBjaGFyYWN0ZXJzIGluIHVybABVbmV4cGVjdGVkIHN0YXJ0IGNoYXIgaW4gdXJsAERvdWJsZSBAIGluIHVybABFbXB0eSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXJhY3RlciBpbiBDb250ZW50LUxlbmd0aABEdXBsaWNhdGUgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyIGluIHVybCBwYXRoAENvbnRlbnQtTGVuZ3RoIGNhbid0IGJlIHByZXNlbnQgd2l0aCBUcmFuc2Zlci1FbmNvZGluZwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBzaXplAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX3ZhbHVlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgdmFsdWUATWlzc2luZyBleHBlY3RlZCBMRiBhZnRlciBoZWFkZXIgdmFsdWUASW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fbmFtZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIG5hbWUAUGF1c2Ugb24gQ09OTkVDVC9VcGdyYWRlAFBhdXNlIG9uIFBSSS9VcGdyYWRlAEV4cGVjdGVkIEhUVFAvMiBDb25uZWN0aW9uIFByZWZhY2UAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9tZXRob2QARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgbWV0aG9kAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX2ZpZWxkAFBhdXNlZABJbnZhbGlkIHdvcmQgZW5jb3VudGVyZWQASW52YWxpZCBtZXRob2QgZW5jb3VudGVyZWQAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzY2hlbWEAUmVxdWVzdCBoYXMgaW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX0NIVU5LX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX05BTUVfQ09NUExFVEUASFBFX0NCX01FU1NBR0VfQ09NUExFVEUASFBFX0NCX01FVEhPRF9DT01QTEVURQBIUEVfQ0JfSEVBREVSX0ZJRUxEX0NPTVBMRVRFAERFTEVURQBIUEVfSU5WQUxJRF9FT0ZfU1RBVEUASU5WQUxJRF9TU0xfQ0VSVElGSUNBVEUAUEFVU0UATk9fUkVTUE9OU0UAVU5TVVBQT1JURURfTUVESUFfVFlQRQBHT05FAE5PVF9BQ0NFUFRBQkxFAFNFUlZJQ0VfVU5BVkFJTEFCTEUAUkFOR0VfTk9UX1NBVElTRklBQkxFAE9SSUdJTl9JU19VTlJFQUNIQUJMRQBSRVNQT05TRV9JU19TVEFMRQBQVVJHRQBNRVJHRQBSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFAFJFUVVFU1RfSEVBREVSX1RPT19MQVJHRQBQQVlMT0FEX1RPT19MQVJHRQBJTlNVRkZJQ0lFTlRfU1RPUkFHRQBIUEVfUEFVU0VEX1VQR1JBREUASFBFX1BBVVNFRF9IMl9VUEdSQURFAFNPVVJDRQBBTk5PVU5DRQBUUkFDRQBIUEVfVU5FWFBFQ1RFRF9TUEFDRQBERVNDUklCRQBVTlNVQlNDUklCRQBSRUNPUkQASFBFX0lOVkFMSURfTUVUSE9EAE5PVF9GT1VORABQUk9QRklORABVTkJJTkQAUkVCSU5EAFVOQVVUSE9SSVpFRABNRVRIT0RfTk9UX0FMTE9XRUQASFRUUF9WRVJTSU9OX05PVF9TVVBQT1JURUQAQUxSRUFEWV9SRVBPUlRFRABBQ0NFUFRFRABOT1RfSU1QTEVNRU5URUQATE9PUF9ERVRFQ1RFRABIUEVfQ1JfRVhQRUNURUQASFBFX0xGX0VYUEVDVEVEAENSRUFURUQASU1fVVNFRABIUEVfUEFVU0VEAFRJTUVPVVRfT0NDVVJFRABQQVlNRU5UX1JFUVVJUkVEAFBSRUNPTkRJVElPTl9SRVFVSVJFRABQUk9YWV9BVVRIRU5USUNBVElPTl9SRVFVSVJFRABORVRXT1JLX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAExFTkdUSF9SRVFVSVJFRABTU0xfQ0VSVElGSUNBVEVfUkVRVUlSRUQAVVBHUkFERV9SRVFVSVJFRABQQUdFX0VYUElSRUQAUFJFQ09ORElUSU9OX0ZBSUxFRABFWFBFQ1RBVElPTl9GQUlMRUQAUkVWQUxJREFUSU9OX0ZBSUxFRABTU0xfSEFORFNIQUtFX0ZBSUxFRABMT0NLRUQAVFJBTlNGT1JNQVRJT05fQVBQTElFRABOT1RfTU9ESUZJRUQATk9UX0VYVEVOREVEAEJBTkRXSURUSF9MSU1JVF9FWENFRURFRABTSVRFX0lTX09WRVJMT0FERUQASEVBRABFeHBlY3RlZCBIVFRQLwAAXhMAACYTAAAwEAAA8BcAAJ0TAAAVEgAAORcAAPASAAAKEAAAdRIAAK0SAACCEwAATxQAAH8QAACgFQAAIxQAAIkSAACLFAAATRUAANQRAADPFAAAEBgAAMkWAADcFgAAwREAAOAXAAC7FAAAdBQAAHwVAADlFAAACBcAAB8QAABlFQAAoxQAACgVAAACFQAAmRUAACwQAACLGQAATw8AANQOAABqEAAAzhAAAAIXAACJDgAAbhMAABwTAABmFAAAVhcAAMETAADNEwAAbBMAAGgXAABmFwAAXxcAACITAADODwAAaQ4AANgOAABjFgAAyxMAAKoOAAAoFwAAJhcAAMUTAABdFgAA6BEAAGcTAABlEwAA8hYAAHMTAAAdFwAA+RYAAPMRAADPDgAAzhUAAAwSAACzEQAApREAAGEQAAAyFwAAuxMAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIDAgICAgIAAAICAAICAAICAgICAgICAgIABAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAACAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbG9zZWVlcC1hbGl2ZQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEAAAEBAAEBAAEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AAAAAAAAAAAAAAAAAAAByYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AAAAAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQIAAQMAAAAAAAAAAAAAAAAAAAAAAAAEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAQAAAgAAAAAAAAAAAAAAAAAAAAAAAAMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOT1VOQ0VFQ0tPVVRORUNURVRFQ1JJQkVMVVNIRVRFQURTRUFSQ0hSR0VDVElWSVRZTEVOREFSVkVPVElGWVBUSU9OU0NIU0VBWVNUQVRDSEdFT1JESVJFQ1RPUlRSQ0hQQVJBTUVURVJVUkNFQlNDUklCRUFSRE9XTkFDRUlORE5LQ0tVQlNDUklCRUhUVFAvQURUUC8="},5627:e=>{e.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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IAH9CwMAIABBMGogAf0LAwAgAEEgaiAB/QsDACAAQd0BNgIcQQALewEBfwJAIAAoAgwiAw0AAkAgACgCBEUNACAAIAE2AgQLAkAgACABIAIQxICAgAAiAw0AIAAoAgwPCyAAIAM2AhxBACEDIAAoAgQiAUUNACAAIAEgAiAAKAIIEYGAgIAAACIBRQ0AIAAgAjYCFCAAIAE2AgwgASEDCyADC+TzAQMOfwN+BH8jgICAgABBEGsiAySAgICAACABIQQgASEFIAEhBiABIQcgASEIIAEhCSABIQogASELIAEhDCABIQ0gASEOIAEhDwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcIhBBf2oO3QHaAQHZAQIDBAUGBwgJCgsMDQ7YAQ8Q1wEREtYBExQVFhcYGRob4AHfARwdHtUBHyAhIiMkJdQBJicoKSorLNMB0gEtLtEB0AEvMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUbbAUdISUrPAc4BS80BTMwBTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAOxwEAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB4fICEjJSg/QEFERUZHSElKS0xNT1BRUlPeA1dZW1xdYGJlZmdoaWprbG1vcHFyc3R1dnd4eXp7fH1+gAGCAYUBhgGHAYkBiwGMAY0BjgGPAZABkQGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1AbYBtwG4AbkBugG7AbwBvQG+Ab8BwAHBAcIBwwHEAcUBxgHHAcgByQHKAcsBzAHNAc4BzwHQAdEB0gHTAdQB1QHWAdcB2AHZAdoB2wHcAd0B3gHgAeEB4gHjAeQB5QHmAecB6AHpAeoB6wHsAe0B7gHvAfAB8QHyAfMBmQKkArAC/gL+AgsgASIEIAJHDfMBQd0BIRAM/wMLIAEiECACRw3dAUHDASEQDP4DCyABIgEgAkcNkAFB9wAhEAz9AwsgASIBIAJHDYYBQe8AIRAM/AMLIAEiASACRw1/QeoAIRAM+wMLIAEiASACRw17QegAIRAM+gMLIAEiASACRw14QeYAIRAM+QMLIAEiASACRw0aQRghEAz4AwsgASIBIAJHDRRBEiEQDPcDCyABIgEgAkcNWUHFACEQDPYDCyABIgEgAkcNSkE/IRAM9QMLIAEiASACRw1IQTwhEAz0AwsgASIBIAJHDUFBMSEQDPMDCyAALQAuQQFGDesDDIcCCyAAIAEiASACEMCAgIAAQQFHDeYBIABCADcDIAznAQsgACABIgEgAhC0gICAACIQDecBIAEhAQz1AgsCQCABIgEgAkcNAEEGIRAM8AMLIAAgAUEBaiIBIAIQu4CAgAAiEA3oASABIQEMMQsgAEIANwMgQRIhEAzVAwsgASIQIAJHDStBHSEQDO0DCwJAIAEiASACRg0AIAFBAWohAUEQIRAM1AMLQQchEAzsAwsgAEIAIAApAyAiESACIAEiEGutIhJ9IhMgEyARVhs3AyAgESASViIURQ3lAUEIIRAM6wMLAkAgASIBIAJGDQAgAEGJgICAADYCCCAAIAE2AgQgASEBQRQhEAzSAwtBCSEQDOoDCyABIQEgACkDIFAN5AEgASEBDPICCwJAIAEiASACRw0AQQshEAzpAwsgACABQQFqIgEgAhC2gICAACIQDeUBIAEhAQzyAgsgACABIgEgAhC4gICAACIQDeUBIAEhAQzyAgsgACABIgEgAhC4gICAACIQDeYBIAEhAQwNCyAAIAEiASACELqAgIAAIhAN5wEgASEBDPACCwJAIAEiASACRw0AQQ8hEAzlAwsgAS0AACIQQTtGDQggEEENRw3oASABQQFqIQEM7wILIAAgASIBIAIQuoCAgAAiEA3oASABIQEM8gILA0ACQCABLQAAQfC1gIAAai0AACIQQQFGDQAgEEECRw3rASAAKAIEIRAgAEEANgIEIAAgECABQQFqIgEQuYCAgAAiEA3qASABIQEM9AILIAFBAWoiASACRw0AC0ESIRAM4gMLIAAgASIBIAIQuoCAgAAiEA3pASABIQEMCgsgASIBIAJHDQZBGyEQDOADCwJAIAEiASACRw0AQRYhEAzgAwsgAEGKgICAADYCCCAAIAE2AgQgACABIAIQuICAgAAiEA3qASABIQFBICEQDMYDCwJAIAEiASACRg0AA0ACQCABLQAAQfC3gIAAai0AACIQQQJGDQACQCAQQX9qDgTlAewBAOsB7AELIAFBAWohAUEIIRAMyAMLIAFBAWoiASACRw0AC0EVIRAM3wMLQRUhEAzeAwsDQAJAIAEtAABB8LmAgABqLQAAIhBBAkYNACAQQX9qDgTeAewB4AHrAewBCyABQQFqIgEgAkcNAAtBGCEQDN0DCwJAIAEiASACRg0AIABBi4CAgAA2AgggACABNgIEIAEhAUEHIRAMxAMLQRkhEAzcAwsgAUEBaiEBDAILAkAgASIUIAJHDQBBGiEQDNsDCyAUIQECQCAULQAAQXNqDhTdAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAgDuAgtBACEQIABBADYCHCAAQa+LgIAANgIQIABBAjYCDCAAIBRBAWo2AhQM2gMLAkAgAS0AACIQQTtGDQAgEEENRw3oASABQQFqIQEM5QILIAFBAWohAQtBIiEQDL8DCwJAIAEiECACRw0AQRwhEAzYAwtCACERIBAhASAQLQAAQVBqDjfnAeYBAQIDBAUGBwgAAAAAAAAACQoLDA0OAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPEBESExQAC0EeIRAMvQMLQgIhEQzlAQtCAyERDOQBC0IEIREM4wELQgUhEQziAQtCBiERDOEBC0IHIREM4AELQgghEQzfAQtCCSERDN4BC0IKIREM3QELQgshEQzcAQtCDCERDNsBC0INIREM2gELQg4hEQzZAQtCDyERDNgBC0IKIREM1wELQgshEQzWAQtCDCERDNUBC0INIREM1AELQg4hEQzTAQtCDyERDNIBC0IAIRECQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAtAABBUGoON+UB5AEAAQIDBAUGB+YB5gHmAeYB5gHmAeYBCAkKCwwN5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAQ4PEBESE+YBC0ICIREM5AELQgMhEQzjAQtCBCERDOIBC0IFIREM4QELQgYhEQzgAQtCByERDN8BC0IIIREM3gELQgkhEQzdAQtCCiERDNwBC0ILIREM2wELQgwhEQzaAQtCDSERDNkBC0IOIREM2AELQg8hEQzXAQtCCiERDNYBC0ILIREM1QELQgwhEQzUAQtCDSERDNMBC0IOIREM0gELQg8hEQzRAQsgAEIAIAApAyAiESACIAEiEGutIhJ9IhMgEyARVhs3AyAgESASViIURQ3SAUEfIRAMwAMLAkAgASIBIAJGDQAgAEGJgICAADYCCCAAIAE2AgQgASEBQSQhEAynAwtBICEQDL8DCyAAIAEiECACEL6AgIAAQX9qDgW2AQDFAgHRAdIBC0ERIRAMpAMLIABBAToALyAQIQEMuwMLIAEiASACRw3SAUEkIRAMuwMLIAEiDSACRw0eQcYAIRAMugMLIAAgASIBIAIQsoCAgAAiEA3UASABIQEMtQELIAEiECACRw0mQdAAIRAMuAMLAkAgASIBIAJHDQBBKCEQDLgDCyAAQQA2AgQgAEGMgICAADYCCCAAIAEgARCxgICAACIQDdMBIAEhAQzYAQsCQCABIhAgAkcNAEEpIRAMtwMLIBAtAAAiAUEgRg0UIAFBCUcN0wEgEEEBaiEBDBULAkAgASIBIAJGDQAgAUEBaiEBDBcLQSohEAy1AwsCQCABIhAgAkcNAEErIRAMtQMLAkAgEC0AACIBQQlGDQAgAUEgRw3VAQsgAC0ALEEIRg3TASAQIQEMkQMLAkAgASIBIAJHDQBBLCEQDLQDCyABLQAAQQpHDdUBIAFBAWohAQzJAgsgASIOIAJHDdUBQS8hEAyyAwsDQAJAIAEtAAAiEEEgRg0AAkAgEEF2ag4EANwB3AEA2gELIAEhAQzgAQsgAUEBaiIBIAJHDQALQTEhEAyxAwtBMiEQIAEiFCACRg2wAyACIBRrIAAoAgAiAWohFSAUIAFrQQNqIRYCQANAIBQtAAAiF0EgciAXIBdBv39qQf8BcUEaSRtB/wFxIAFB8LuAgABqLQAARw0BAkAgAUEDRw0AQQYhAQyWAwsgAUEBaiEBIBRBAWoiFCACRw0ACyAAIBU2AgAMsQMLIABBADYCACAUIQEM2QELQTMhECABIhQgAkYNrwMgAiAUayAAKAIAIgFqIRUgFCABa0EIaiEWAkADQCAULQAAIhdBIHIgFyAXQb9/akH/AXFBGkkbQf8BcSABQfS7gIAAai0AAEcNAQJAIAFBCEcNAEEFIQEMlQMLIAFBAWohASAUQQFqIhQgAkcNAAsgACAVNgIADLADCyAAQQA2AgAgFCEBDNgBC0E0IRAgASIUIAJGDa4DIAIgFGsgACgCACIBaiEVIBQgAWtBBWohFgJAA0AgFC0AACIXQSByIBcgF0G/f2pB/wFxQRpJG0H/AXEgAUHQwoCAAGotAABHDQECQCABQQVHDQBBByEBDJQDCyABQQFqIQEgFEEBaiIUIAJHDQALIAAgFTYCAAyvAwsgAEEANgIAIBQhAQzXAQsCQCABIgEgAkYNAANAAkAgAS0AAEGAvoCAAGotAAAiEEEBRg0AIBBBAkYNCiABIQEM3QELIAFBAWoiASACRw0AC0EwIRAMrgMLQTAhEAytAwsCQCABIgEgAkYNAANAAkAgAS0AACIQQSBGDQAgEEF2ag4E2QHaAdoB2QHaAQsgAUEBaiIBIAJHDQALQTghEAytAwtBOCEQDKwDCwNAAkAgAS0AACIQQSBGDQAgEEEJRw0DCyABQQFqIgEgAkcNAAtBPCEQDKsDCwNAAkAgAS0AACIQQSBGDQACQAJAIBBBdmoOBNoBAQHaAQALIBBBLEYN2wELIAEhAQwECyABQQFqIgEgAkcNAAtBPyEQDKoDCyABIQEM2wELQcAAIRAgASIUIAJGDagDIAIgFGsgACgCACIBaiEWIBQgAWtBBmohFwJAA0AgFC0AAEEgciABQYDAgIAAai0AAEcNASABQQZGDY4DIAFBAWohASAUQQFqIhQgAkcNAAsgACAWNgIADKkDCyAAQQA2AgAgFCEBC0E2IRAMjgMLAkAgASIPIAJHDQBBwQAhEAynAwsgAEGMgICAADYCCCAAIA82AgQgDyEBIAAtACxBf2oOBM0B1QHXAdkBhwMLIAFBAWohAQzMAQsCQCABIgEgAkYNAANAAkAgAS0AACIQQSByIBAgEEG/f2pB/wFxQRpJG0H/AXEiEEEJRg0AIBBBIEYNAAJAAkACQAJAIBBBnX9qDhMAAwMDAwMDAwEDAwMDAwMDAwMCAwsgAUEBaiEBQTEhEAyRAwsgAUEBaiEBQTIhEAyQAwsgAUEBaiEBQTMhEAyPAwsgASEBDNABCyABQQFqIgEgAkcNAAtBNSEQDKUDC0E1IRAMpAMLAkAgASIBIAJGDQADQAJAIAEtAABBgLyAgABqLQAAQQFGDQAgASEBDNMBCyABQQFqIgEgAkcNAAtBPSEQDKQDC0E9IRAMowMLIAAgASIBIAIQsICAgAAiEA3WASABIQEMAQsgEEEBaiEBC0E8IRAMhwMLAkAgASIBIAJHDQBBwgAhEAygAwsCQANAAkAgAS0AAEF3ag4YAAL+Av4ChAP+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gIA/gILIAFBAWoiASACRw0AC0HCACEQDKADCyABQQFqIQEgAC0ALUEBcUUNvQEgASEBC0EsIRAMhQMLIAEiASACRw3TAUHEACEQDJ0DCwNAAkAgAS0AAEGQwICAAGotAABBAUYNACABIQEMtwILIAFBAWoiASACRw0AC0HFACEQDJwDCyANLQAAIhBBIEYNswEgEEE6Rw2BAyAAKAIEIQEgAEEANgIEIAAgASANEK+AgIAAIgEN0AEgDUEBaiEBDLMCC0HHACEQIAEiDSACRg2aAyACIA1rIAAoAgAiAWohFiANIAFrQQVqIRcDQCANLQAAIhRBIHIgFCAUQb9/akH/AXFBGkkbQf8BcSABQZDCgIAAai0AAEcNgAMgAUEFRg30AiABQQFqIQEgDUEBaiINIAJHDQALIAAgFjYCAAyaAwtByAAhECABIg0gAkYNmQMgAiANayAAKAIAIgFqIRYgDSABa0EJaiEXA0AgDS0AACIUQSByIBQgFEG/f2pB/wFxQRpJG0H/AXEgAUGWwoCAAGotAABHDf8CAkAgAUEJRw0AQQIhAQz1AgsgAUEBaiEBIA1BAWoiDSACRw0ACyAAIBY2AgAMmQMLAkAgASINIAJHDQBByQAhEAyZAwsCQAJAIA0tAAAiAUEgciABIAFBv39qQf8BcUEaSRtB/wFxQZJ/ag4HAIADgAOAA4ADgAMBgAMLIA1BAWohAUE+IRAMgAMLIA1BAWohAUE/IRAM/wILQcoAIRAgASINIAJGDZcDIAIgDWsgACgCACIBaiEWIA0gAWtBAWohFwNAIA0tAAAiFEEgciAUIBRBv39qQf8BcUEaSRtB/wFxIAFBoMKAgABqLQAARw39AiABQQFGDfACIAFBAWohASANQQFqIg0gAkcNAAsgACAWNgIADJcDC0HLACEQIAEiDSACRg2WAyACIA1rIAAoAgAiAWohFiANIAFrQQ5qIRcDQCANLQAAIhRBIHIgFCAUQb9/akH/AXFBGkkbQf8BcSABQaLCgIAAai0AAEcN/AIgAUEORg3wAiABQQFqIQEgDUEBaiINIAJHDQALIAAgFjYCAAyWAwtBzAAhECABIg0gAkYNlQMgAiANayAAKAIAIgFqIRYgDSABa0EPaiEXA0AgDS0AACIUQSByIBQgFEG/f2pB/wFxQRpJG0H/AXEgAUHAwoCAAGotAABHDfsCAkAgAUEPRw0AQQMhAQzxAgsgAUEBaiEBIA1BAWoiDSACRw0ACyAAIBY2AgAMlQMLQc0AIRAgASINIAJGDZQDIAIgDWsgACgCACIBaiEWIA0gAWtBBWohFwNAIA0tAAAiFEEgciAUIBRBv39qQf8BcUEaSRtB/wFxIAFB0MKAgABqLQAARw36AgJAIAFBBUcNAEEEIQEM8AILIAFBAWohASANQQFqIg0gAkcNAAsgACAWNgIADJQDCwJAIAEiDSACRw0AQc4AIRAMlAMLAkACQAJAAkAgDS0AACIBQSByIAEgAUG/f2pB/wFxQRpJG0H/AXFBnX9qDhMA/QL9Av0C/QL9Av0C/QL9Av0C/QL9Av0CAf0C/QL9AgID/QILIA1BAWohAUHBACEQDP0CCyANQQFqIQFBwgAhEAz8AgsgDUEBaiEBQcMAIRAM+wILIA1BAWohAUHEACEQDPoCCwJAIAEiASACRg0AIABBjYCAgAA2AgggACABNgIEIAEhAUHFACEQDPoCC0HPACEQDJIDCyAQIQECQAJAIBAtAABBdmoOBAGoAqgCAKgCCyAQQQFqIQELQSchEAz4AgsCQCABIgEgAkcNAEHRACEQDJEDCwJAIAEtAABBIEYNACABIQEMjQELIAFBAWohASAALQAtQQFxRQ3HASABIQEMjAELIAEiFyACRw3IAUHSACEQDI8DC0HTACEQIAEiFCACRg2OAyACIBRrIAAoAgAiAWohFiAUIAFrQQFqIRcDQCAULQAAIAFB1sKAgABqLQAARw3MASABQQFGDccBIAFBAWohASAUQQFqIhQgAkcNAAsgACAWNgIADI4DCwJAIAEiASACRw0AQdUAIRAMjgMLIAEtAABBCkcNzAEgAUEBaiEBDMcBCwJAIAEiASACRw0AQdYAIRAMjQMLAkACQCABLQAAQXZqDgQAzQHNAQHNAQsgAUEBaiEBDMcBCyABQQFqIQFBygAhEAzzAgsgACABIgEgAhCugICAACIQDcsBIAEhAUHNACEQDPICCyAALQApQSJGDYUDDKYCCwJAIAEiASACRw0AQdsAIRAMigMLQQAhFEEBIRdBASEWQQAhEAJAAkACQAJAAkACQAJAAkACQCABLQAAQVBqDgrUAdMBAAECAwQFBgjVAQtBAiEQDAYLQQMhEAwFC0EEIRAMBAtBBSEQDAMLQQYhEAwCC0EHIRAMAQtBCCEQC0EAIRdBACEWQQAhFAzMAQtBCSEQQQEhFEEAIRdBACEWDMsBCwJAIAEiASACRw0AQd0AIRAMiQMLIAEtAABBLkcNzAEgAUEBaiEBDKYCCyABIgEgAkcNzAFB3wAhEAyHAwsCQCABIgEgAkYNACAAQY6AgIAANgIIIAAgATYCBCABIQFB0AAhEAzuAgtB4AAhEAyGAwtB4QAhECABIgEgAkYNhQMgAiABayAAKAIAIhRqIRYgASAUa0EDaiEXA0AgAS0AACAUQeLCgIAAai0AAEcNzQEgFEEDRg3MASAUQQFqIRQgAUEBaiIBIAJHDQALIAAgFjYCAAyFAwtB4gAhECABIgEgAkYNhAMgAiABayAAKAIAIhRqIRYgASAUa0ECaiEXA0AgAS0AACAUQebCgIAAai0AAEcNzAEgFEECRg3OASAUQQFqIRQgAUEBaiIBIAJHDQALIAAgFjYCAAyEAwtB4wAhECABIgEgAkYNgwMgAiABayAAKAIAIhRqIRYgASAUa0EDaiEXA0AgAS0AACAUQenCgIAAai0AAEcNywEgFEEDRg3OASAUQQFqIRQgAUEBaiIBIAJHDQALIAAgFjYCAAyDAwsCQCABIgEgAkcNAEHlACEQDIMDCyAAIAFBAWoiASACEKiAgIAAIhANzQEgASEBQdYAIRAM6QILAkAgASIBIAJGDQADQAJAIAEtAAAiEEEgRg0AAkACQAJAIBBBuH9qDgsAAc8BzwHPAc8BzwHPAc8BzwECzwELIAFBAWohAUHSACEQDO0CCyABQQFqIQFB0wAhEAzsAgsgAUEBaiEBQdQAIRAM6wILIAFBAWoiASACRw0AC0HkACEQDIIDC0HkACEQDIEDCwNAAkAgAS0AAEHwwoCAAGotAAAiEEEBRg0AIBBBfmoOA88B0AHRAdIBCyABQQFqIgEgAkcNAAtB5gAhEAyAAwsCQCABIgEgAkYNACABQQFqIQEMAwtB5wAhEAz/AgsDQAJAIAEtAABB8MSAgABqLQAAIhBBAUYNAAJAIBBBfmoOBNIB0wHUAQDVAQsgASEBQdcAIRAM5wILIAFBAWoiASACRw0AC0HoACEQDP4CCwJAIAEiASACRw0AQekAIRAM/gILAkAgAS0AACIQQXZqDhq6AdUB1QG8AdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAcoB1QHVAQDTAQsgAUEBaiEBC0EGIRAM4wILA0ACQCABLQAAQfDGgIAAai0AAEEBRg0AIAEhAQyeAgsgAUEBaiIBIAJHDQALQeoAIRAM+wILAkAgASIBIAJGDQAgAUEBaiEBDAMLQesAIRAM+gILAkAgASIBIAJHDQBB7AAhEAz6AgsgAUEBaiEBDAELAkAgASIBIAJHDQBB7QAhEAz5AgsgAUEBaiEBC0EEIRAM3gILAkAgASIUIAJHDQBB7gAhEAz3AgsgFCEBAkACQAJAIBQtAABB8MiAgABqLQAAQX9qDgfUAdUB1gEAnAIBAtcBCyAUQQFqIQEMCgsgFEEBaiEBDM0BC0EAIRAgAEEANgIcIABBm5KAgAA2AhAgAEEHNgIMIAAgFEEBajYCFAz2AgsCQANAAkAgAS0AAEHwyICAAGotAAAiEEEERg0AAkACQCAQQX9qDgfSAdMB1AHZAQAEAdkBCyABIQFB2gAhEAzgAgsgAUEBaiEBQdwAIRAM3wILIAFBAWoiASACRw0AC0HvACEQDPYCCyABQQFqIQEMywELAkAgASIUIAJHDQBB8AAhEAz1AgsgFC0AAEEvRw3UASAUQQFqIQEMBgsCQCABIhQgAkcNAEHxACEQDPQCCwJAIBQtAAAiAUEvRw0AIBRBAWohAUHdACEQDNsCCyABQXZqIgRBFksN0wFBASAEdEGJgIACcUUN0wEMygILAkAgASIBIAJGDQAgAUEBaiEBQd4AIRAM2gILQfIAIRAM8gILAkAgASIUIAJHDQBB9AAhEAzyAgsgFCEBAkAgFC0AAEHwzICAAGotAABBf2oOA8kClAIA1AELQeEAIRAM2AILAkAgASIUIAJGDQADQAJAIBQtAABB8MqAgABqLQAAIgFBA0YNAAJAIAFBf2oOAssCANUBCyAUIQFB3wAhEAzaAgsgFEEBaiIUIAJHDQALQfMAIRAM8QILQfMAIRAM8AILAkAgASIBIAJGDQAgAEGPgICAADYCCCAAIAE2AgQgASEBQeAAIRAM1wILQfUAIRAM7wILAkAgASIBIAJHDQBB9gAhEAzvAgsgAEGPgICAADYCCCAAIAE2AgQgASEBC0EDIRAM1AILA0AgAS0AAEEgRw3DAiABQQFqIgEgAkcNAAtB9wAhEAzsAgsCQCABIgEgAkcNAEH4ACEQDOwCCyABLQAAQSBHDc4BIAFBAWohAQzvAQsgACABIgEgAhCsgICAACIQDc4BIAEhAQyOAgsCQCABIgQgAkcNAEH6ACEQDOoCCyAELQAAQcwARw3RASAEQQFqIQFBEyEQDM8BCwJAIAEiBCACRw0AQfsAIRAM6QILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEANAIAQtAAAgAUHwzoCAAGotAABHDdABIAFBBUYNzgEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBB+wAhEAzoAgsCQCABIgQgAkcNAEH8ACEQDOgCCwJAAkAgBC0AAEG9f2oODADRAdEB0QHRAdEB0QHRAdEB0QHRAQHRAQsgBEEBaiEBQeYAIRAMzwILIARBAWohAUHnACEQDM4CCwJAIAEiBCACRw0AQf0AIRAM5wILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQe3PgIAAai0AAEcNzwEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQf0AIRAM5wILIABBADYCACAQQQFqIQFBECEQDMwBCwJAIAEiBCACRw0AQf4AIRAM5gILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEAJAA0AgBC0AACABQfbOgIAAai0AAEcNzgEgAUEFRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQf4AIRAM5gILIABBADYCACAQQQFqIQFBFiEQDMsBCwJAIAEiBCACRw0AQf8AIRAM5QILIAIgBGsgACgCACIBaiEUIAQgAWtBA2ohEAJAA0AgBC0AACABQfzOgIAAai0AAEcNzQEgAUEDRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQf8AIRAM5QILIABBADYCACAQQQFqIQFBBSEQDMoBCwJAIAEiBCACRw0AQYABIRAM5AILIAQtAABB2QBHDcsBIARBAWohAUEIIRAMyQELAkAgASIEIAJHDQBBgQEhEAzjAgsCQAJAIAQtAABBsn9qDgMAzAEBzAELIARBAWohAUHrACEQDMoCCyAEQQFqIQFB7AAhEAzJAgsCQCABIgQgAkcNAEGCASEQDOICCwJAAkAgBC0AAEG4f2oOCADLAcsBywHLAcsBywEBywELIARBAWohAUHqACEQDMkCCyAEQQFqIQFB7QAhEAzIAgsCQCABIgQgAkcNAEGDASEQDOECCyACIARrIAAoAgAiAWohECAEIAFrQQJqIRQCQANAIAQtAAAgAUGAz4CAAGotAABHDckBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgEDYCAEGDASEQDOECC0EAIRAgAEEANgIAIBRBAWohAQzGAQsCQCABIgQgAkcNAEGEASEQDOACCyACIARrIAAoAgAiAWohFCAEIAFrQQRqIRACQANAIAQtAAAgAUGDz4CAAGotAABHDcgBIAFBBEYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGEASEQDOACCyAAQQA2AgAgEEEBaiEBQSMhEAzFAQsCQCABIgQgAkcNAEGFASEQDN8CCwJAAkAgBC0AAEG0f2oOCADIAcgByAHIAcgByAEByAELIARBAWohAUHvACEQDMYCCyAEQQFqIQFB8AAhEAzFAgsCQCABIgQgAkcNAEGGASEQDN4CCyAELQAAQcUARw3FASAEQQFqIQEMgwILAkAgASIEIAJHDQBBhwEhEAzdAgsgAiAEayAAKAIAIgFqIRQgBCABa0EDaiEQAkADQCAELQAAIAFBiM+AgABqLQAARw3FASABQQNGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBhwEhEAzdAgsgAEEANgIAIBBBAWohAUEtIRAMwgELAkAgASIEIAJHDQBBiAEhEAzcAgsgAiAEayAAKAIAIgFqIRQgBCABa0EIaiEQAkADQCAELQAAIAFB0M+AgABqLQAARw3EASABQQhGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBiAEhEAzcAgsgAEEANgIAIBBBAWohAUEpIRAMwQELAkAgASIBIAJHDQBBiQEhEAzbAgtBASEQIAEtAABB3wBHDcABIAFBAWohAQyBAgsCQCABIgQgAkcNAEGKASEQDNoCCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRADQCAELQAAIAFBjM+AgABqLQAARw3BASABQQFGDa8CIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQYoBIRAM2QILAkAgASIEIAJHDQBBiwEhEAzZAgsgAiAEayAAKAIAIgFqIRQgBCABa0ECaiEQAkADQCAELQAAIAFBjs+AgABqLQAARw3BASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBiwEhEAzZAgsgAEEANgIAIBBBAWohAUECIRAMvgELAkAgASIEIAJHDQBBjAEhEAzYAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFB8M+AgABqLQAARw3AASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBjAEhEAzYAgsgAEEANgIAIBBBAWohAUEfIRAMvQELAkAgASIEIAJHDQBBjQEhEAzXAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFB8s+AgABqLQAARw2/ASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBjQEhEAzXAgsgAEEANgIAIBBBAWohAUEJIRAMvAELAkAgASIEIAJHDQBBjgEhEAzWAgsCQAJAIAQtAABBt39qDgcAvwG/Ab8BvwG/AQG/AQsgBEEBaiEBQfgAIRAMvQILIARBAWohAUH5ACEQDLwCCwJAIAEiBCACRw0AQY8BIRAM1QILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEAJAA0AgBC0AACABQZHPgIAAai0AAEcNvQEgAUEFRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQY8BIRAM1QILIABBADYCACAQQQFqIQFBGCEQDLoBCwJAIAEiBCACRw0AQZABIRAM1AILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQZfPgIAAai0AAEcNvAEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZABIRAM1AILIABBADYCACAQQQFqIQFBFyEQDLkBCwJAIAEiBCACRw0AQZEBIRAM0wILIAIgBGsgACgCACIBaiEUIAQgAWtBBmohEAJAA0AgBC0AACABQZrPgIAAai0AAEcNuwEgAUEGRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZEBIRAM0wILIABBADYCACAQQQFqIQFBFSEQDLgBCwJAIAEiBCACRw0AQZIBIRAM0gILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEAJAA0AgBC0AACABQaHPgIAAai0AAEcNugEgAUEFRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZIBIRAM0gILIABBADYCACAQQQFqIQFBHiEQDLcBCwJAIAEiBCACRw0AQZMBIRAM0QILIAQtAABBzABHDbgBIARBAWohAUEKIRAMtgELAkAgBCACRw0AQZQBIRAM0AILAkACQCAELQAAQb9/ag4PALkBuQG5AbkBuQG5AbkBuQG5AbkBuQG5AbkBAbkBCyAEQQFqIQFB/gAhEAy3AgsgBEEBaiEBQf8AIRAMtgILAkAgBCACRw0AQZUBIRAMzwILAkACQCAELQAAQb9/ag4DALgBAbgBCyAEQQFqIQFB/QAhEAy2AgsgBEEBaiEEQYABIRAMtQILAkAgBCACRw0AQZYBIRAMzgILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQafPgIAAai0AAEcNtgEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZYBIRAMzgILIABBADYCACAQQQFqIQFBCyEQDLMBCwJAIAQgAkcNAEGXASEQDM0CCwJAAkACQAJAIAQtAABBU2oOIwC4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBAbgBuAG4AbgBuAECuAG4AbgBA7gBCyAEQQFqIQFB+wAhEAy2AgsgBEEBaiEBQfwAIRAMtQILIARBAWohBEGBASEQDLQCCyAEQQFqIQRBggEhEAyzAgsCQCAEIAJHDQBBmAEhEAzMAgsgAiAEayAAKAIAIgFqIRQgBCABa0EEaiEQAkADQCAELQAAIAFBqc+AgABqLQAARw20ASABQQRGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBmAEhEAzMAgsgAEEANgIAIBBBAWohAUEZIRAMsQELAkAgBCACRw0AQZkBIRAMywILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEAJAA0AgBC0AACABQa7PgIAAai0AAEcNswEgAUEFRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZkBIRAMywILIABBADYCACAQQQFqIQFBBiEQDLABCwJAIAQgAkcNAEGaASEQDMoCCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRACQANAIAQtAAAgAUG0z4CAAGotAABHDbIBIAFBAUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGaASEQDMoCCyAAQQA2AgAgEEEBaiEBQRwhEAyvAQsCQCAEIAJHDQBBmwEhEAzJAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFBts+AgABqLQAARw2xASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBmwEhEAzJAgsgAEEANgIAIBBBAWohAUEnIRAMrgELAkAgBCACRw0AQZwBIRAMyAILAkACQCAELQAAQax/ag4CAAGxAQsgBEEBaiEEQYYBIRAMrwILIARBAWohBEGHASEQDK4CCwJAIAQgAkcNAEGdASEQDMcCCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRACQANAIAQtAAAgAUG4z4CAAGotAABHDa8BIAFBAUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGdASEQDMcCCyAAQQA2AgAgEEEBaiEBQSYhEAysAQsCQCAEIAJHDQBBngEhEAzGAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFBus+AgABqLQAARw2uASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBngEhEAzGAgsgAEEANgIAIBBBAWohAUEDIRAMqwELAkAgBCACRw0AQZ8BIRAMxQILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQe3PgIAAai0AAEcNrQEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZ8BIRAMxQILIABBADYCACAQQQFqIQFBDCEQDKoBCwJAIAQgAkcNAEGgASEQDMQCCyACIARrIAAoAgAiAWohFCAEIAFrQQNqIRACQANAIAQtAAAgAUG8z4CAAGotAABHDawBIAFBA0YNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGgASEQDMQCCyAAQQA2AgAgEEEBaiEBQQ0hEAypAQsCQCAEIAJHDQBBoQEhEAzDAgsCQAJAIAQtAABBun9qDgsArAGsAawBrAGsAawBrAGsAawBAawBCyAEQQFqIQRBiwEhEAyqAgsgBEEBaiEEQYwBIRAMqQILAkAgBCACRw0AQaIBIRAMwgILIAQtAABB0ABHDakBIARBAWohBAzpAQsCQCAEIAJHDQBBowEhEAzBAgsCQAJAIAQtAABBt39qDgcBqgGqAaoBqgGqAQCqAQsgBEEBaiEEQY4BIRAMqAILIARBAWohAUEiIRAMpgELAkAgBCACRw0AQaQBIRAMwAILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQcDPgIAAai0AAEcNqAEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQaQBIRAMwAILIABBADYCACAQQQFqIQFBHSEQDKUBCwJAIAQgAkcNAEGlASEQDL8CCwJAAkAgBC0AAEGuf2oOAwCoAQGoAQsgBEEBaiEEQZABIRAMpgILIARBAWohAUEEIRAMpAELAkAgBCACRw0AQaYBIRAMvgILAkACQAJAAkACQCAELQAAQb9/ag4VAKoBqgGqAaoBqgGqAaoBqgGqAaoBAaoBqgECqgGqAQOqAaoBBKoBCyAEQQFqIQRBiAEhEAyoAgsgBEEBaiEEQYkBIRAMpwILIARBAWohBEGKASEQDKYCCyAEQQFqIQRBjwEhEAylAgsgBEEBaiEEQZEBIRAMpAILAkAgBCACRw0AQacBIRAMvQILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQe3PgIAAai0AAEcNpQEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQacBIRAMvQILIABBADYCACAQQQFqIQFBESEQDKIBCwJAIAQgAkcNAEGoASEQDLwCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHCz4CAAGotAABHDaQBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGoASEQDLwCCyAAQQA2AgAgEEEBaiEBQSwhEAyhAQsCQCAEIAJHDQBBqQEhEAy7AgsgAiAEayAAKAIAIgFqIRQgBCABa0EEaiEQAkADQCAELQAAIAFBxc+AgABqLQAARw2jASABQQRGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBqQEhEAy7AgsgAEEANgIAIBBBAWohAUErIRAMoAELAkAgBCACRw0AQaoBIRAMugILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQcrPgIAAai0AAEcNogEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQaoBIRAMugILIABBADYCACAQQQFqIQFBFCEQDJ8BCwJAIAQgAkcNAEGrASEQDLkCCwJAAkACQAJAIAQtAABBvn9qDg8AAQKkAaQBpAGkAaQBpAGkAaQBpAGkAaQBA6QBCyAEQQFqIQRBkwEhEAyiAgsgBEEBaiEEQZQBIRAMoQILIARBAWohBEGVASEQDKACCyAEQQFqIQRBlgEhEAyfAgsCQCAEIAJHDQBBrAEhEAy4AgsgBC0AAEHFAEcNnwEgBEEBaiEEDOABCwJAIAQgAkcNAEGtASEQDLcCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHNz4CAAGotAABHDZ8BIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGtASEQDLcCCyAAQQA2AgAgEEEBaiEBQQ4hEAycAQsCQCAEIAJHDQBBrgEhEAy2AgsgBC0AAEHQAEcNnQEgBEEBaiEBQSUhEAybAQsCQCAEIAJHDQBBrwEhEAy1AgsgAiAEayAAKAIAIgFqIRQgBCABa0EIaiEQAkADQCAELQAAIAFB0M+AgABqLQAARw2dASABQQhGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBrwEhEAy1AgsgAEEANgIAIBBBAWohAUEqIRAMmgELAkAgBCACRw0AQbABIRAMtAILAkACQCAELQAAQat/ag4LAJ0BnQGdAZ0BnQGdAZ0BnQGdAQGdAQsgBEEBaiEEQZoBIRAMmwILIARBAWohBEGbASEQDJoCCwJAIAQgAkcNAEGxASEQDLMCCwJAAkAgBC0AAEG/f2oOFACcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAEBnAELIARBAWohBEGZASEQDJoCCyAEQQFqIQRBnAEhEAyZAgsCQCAEIAJHDQBBsgEhEAyyAgsgAiAEayAAKAIAIgFqIRQgBCABa0EDaiEQAkADQCAELQAAIAFB2c+AgABqLQAARw2aASABQQNGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBsgEhEAyyAgsgAEEANgIAIBBBAWohAUEhIRAMlwELAkAgBCACRw0AQbMBIRAMsQILIAIgBGsgACgCACIBaiEUIAQgAWtBBmohEAJAA0AgBC0AACABQd3PgIAAai0AAEcNmQEgAUEGRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQbMBIRAMsQILIABBADYCACAQQQFqIQFBGiEQDJYBCwJAIAQgAkcNAEG0ASEQDLACCwJAAkACQCAELQAAQbt/ag4RAJoBmgGaAZoBmgGaAZoBmgGaAQGaAZoBmgGaAZoBApoBCyAEQQFqIQRBnQEhEAyYAgsgBEEBaiEEQZ4BIRAMlwILIARBAWohBEGfASEQDJYCCwJAIAQgAkcNAEG1ASEQDK8CCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRACQANAIAQtAAAgAUHkz4CAAGotAABHDZcBIAFBBUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEG1ASEQDK8CCyAAQQA2AgAgEEEBaiEBQSghEAyUAQsCQCAEIAJHDQBBtgEhEAyuAgsgAiAEayAAKAIAIgFqIRQgBCABa0ECaiEQAkADQCAELQAAIAFB6s+AgABqLQAARw2WASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBtgEhEAyuAgsgAEEANgIAIBBBAWohAUEHIRAMkwELAkAgBCACRw0AQbcBIRAMrQILAkACQCAELQAAQbt/ag4OAJYBlgGWAZYBlgGWAZYBlgGWAZYBlgGWAQGWAQsgBEEBaiEEQaEBIRAMlAILIARBAWohBEGiASEQDJMCCwJAIAQgAkcNAEG4ASEQDKwCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHtz4CAAGotAABHDZQBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEG4ASEQDKwCCyAAQQA2AgAgEEEBaiEBQRIhEAyRAQsCQCAEIAJHDQBBuQEhEAyrAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFB8M+AgABqLQAARw2TASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBuQEhEAyrAgsgAEEANgIAIBBBAWohAUEgIRAMkAELAkAgBCACRw0AQboBIRAMqgILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQfLPgIAAai0AAEcNkgEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQboBIRAMqgILIABBADYCACAQQQFqIQFBDyEQDI8BCwJAIAQgAkcNAEG7ASEQDKkCCwJAAkAgBC0AAEG3f2oOBwCSAZIBkgGSAZIBAZIBCyAEQQFqIQRBpQEhEAyQAgsgBEEBaiEEQaYBIRAMjwILAkAgBCACRw0AQbwBIRAMqAILIAIgBGsgACgCACIBaiEUIAQgAWtBB2ohEAJAA0AgBC0AACABQfTPgIAAai0AAEcNkAEgAUEHRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQbwBIRAMqAILIABBADYCACAQQQFqIQFBGyEQDI0BCwJAIAQgAkcNAEG9ASEQDKcCCwJAAkACQCAELQAAQb5/ag4SAJEBkQGRAZEBkQGRAZEBkQGRAQGRAZEBkQGRAZEBkQECkQELIARBAWohBEGkASEQDI8CCyAEQQFqIQRBpwEhEAyOAgsgBEEBaiEEQagBIRAMjQILAkAgBCACRw0AQb4BIRAMpgILIAQtAABBzgBHDY0BIARBAWohBAzPAQsCQCAEIAJHDQBBvwEhEAylAgsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAELQAAQb9/ag4VAAECA5wBBAUGnAGcAZwBBwgJCgucAQwNDg+cAQsgBEEBaiEBQegAIRAMmgILIARBAWohAUHpACEQDJkCCyAEQQFqIQFB7gAhEAyYAgsgBEEBaiEBQfIAIRAMlwILIARBAWohAUHzACEQDJYCCyAEQQFqIQFB9gAhEAyVAgsgBEEBaiEBQfcAIRAMlAILIARBAWohAUH6ACEQDJMCCyAEQQFqIQRBgwEhEAySAgsgBEEBaiEEQYQBIRAMkQILIARBAWohBEGFASEQDJACCyAEQQFqIQRBkgEhEAyPAgsgBEEBaiEEQZgBIRAMjgILIARBAWohBEGgASEQDI0CCyAEQQFqIQRBowEhEAyMAgsgBEEBaiEEQaoBIRAMiwILAkAgBCACRg0AIABBkICAgAA2AgggACAENgIEQasBIRAMiwILQcABIRAMowILIAAgBSACEKqAgIAAIgENiwEgBSEBDFwLAkAgBiACRg0AIAZBAWohBQyNAQtBwgEhEAyhAgsDQAJAIBAtAABBdmoOBIwBAACPAQALIBBBAWoiECACRw0AC0HDASEQDKACCwJAIAcgAkYNACAAQZGAgIAANgIIIAAgBzYCBCAHIQFBASEQDIcCC0HEASEQDJ8CCwJAIAcgAkcNAEHFASEQDJ8CCwJAAkAgBy0AAEF2ag4EAc4BzgEAzgELIAdBAWohBgyNAQsgB0EBaiEFDIkBCwJAIAcgAkcNAEHGASEQDJ4CCwJAAkAgBy0AAEF2ag4XAY8BjwEBjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BAI8BCyAHQQFqIQcLQbABIRAMhAILAkAgCCACRw0AQcgBIRAMnQILIAgtAABBIEcNjQEgAEEAOwEyIAhBAWohAUGzASEQDIMCCyABIRcCQANAIBciByACRg0BIActAABBUGpB/wFxIhBBCk8NzAECQCAALwEyIhRBmTNLDQAgACAUQQpsIhQ7ATIgEEH//wNzIBRB/v8DcUkNACAHQQFqIRcgACAUIBBqIhA7ATIgEEH//wNxQegHSQ0BCwtBACEQIABBADYCHCAAQcGJgIAANgIQIABBDTYCDCAAIAdBAWo2AhQMnAILQccBIRAMmwILIAAgCCACEK6AgIAAIhBFDcoBIBBBFUcNjAEgAEHIATYCHCAAIAg2AhQgAEHJl4CAADYCECAAQRU2AgxBACEQDJoCCwJAIAkgAkcNAEHMASEQDJoCC0EAIRRBASEXQQEhFkEAIRACQAJAAkACQAJAAkACQAJAAkAgCS0AAEFQag4KlgGVAQABAgMEBQYIlwELQQIhEAwGC0EDIRAMBQtBBCEQDAQLQQUhEAwDC0EGIRAMAgtBByEQDAELQQghEAtBACEXQQAhFkEAIRQMjgELQQkhEEEBIRRBACEXQQAhFgyNAQsCQCAKIAJHDQBBzgEhEAyZAgsgCi0AAEEuRw2OASAKQQFqIQkMygELIAsgAkcNjgFB0AEhEAyXAgsCQCALIAJGDQAgAEGOgICAADYCCCAAIAs2AgRBtwEhEAz+AQtB0QEhEAyWAgsCQCAEIAJHDQBB0gEhEAyWAgsgAiAEayAAKAIAIhBqIRQgBCAQa0EEaiELA0AgBC0AACAQQfzPgIAAai0AAEcNjgEgEEEERg3pASAQQQFqIRAgBEEBaiIEIAJHDQALIAAgFDYCAEHSASEQDJUCCyAAIAwgAhCsgICAACIBDY0BIAwhAQy4AQsCQCAEIAJHDQBB1AEhEAyUAgsgAiAEayAAKAIAIhBqIRQgBCAQa0EBaiEMA0AgBC0AACAQQYHQgIAAai0AAEcNjwEgEEEBRg2OASAQQQFqIRAgBEEBaiIEIAJHDQALIAAgFDYCAEHUASEQDJMCCwJAIAQgAkcNAEHWASEQDJMCCyACIARrIAAoAgAiEGohFCAEIBBrQQJqIQsDQCAELQAAIBBBg9CAgABqLQAARw2OASAQQQJGDZABIBBBAWohECAEQQFqIgQgAkcNAAsgACAUNgIAQdYBIRAMkgILAkAgBCACRw0AQdcBIRAMkgILAkACQCAELQAAQbt/ag4QAI8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwEBjwELIARBAWohBEG7ASEQDPkBCyAEQQFqIQRBvAEhEAz4AQsCQCAEIAJHDQBB2AEhEAyRAgsgBC0AAEHIAEcNjAEgBEEBaiEEDMQBCwJAIAQgAkYNACAAQZCAgIAANgIIIAAgBDYCBEG+ASEQDPcBC0HZASEQDI8CCwJAIAQgAkcNAEHaASEQDI8CCyAELQAAQcgARg3DASAAQQE6ACgMuQELIABBAjoALyAAIAQgAhCmgICAACIQDY0BQcIBIRAM9AELIAAtAChBf2oOArcBuQG4AQsDQAJAIAQtAABBdmoOBACOAY4BAI4BCyAEQQFqIgQgAkcNAAtB3QEhEAyLAgsgAEEAOgAvIAAtAC1BBHFFDYQCCyAAQQA6AC8gAEEBOgA0IAEhAQyMAQsgEEEVRg3aASAAQQA2AhwgACABNgIUIABBp46AgAA2AhAgAEESNgIMQQAhEAyIAgsCQCAAIBAgAhC0gICAACIEDQAgECEBDIECCwJAIARBFUcNACAAQQM2AhwgACAQNgIUIABBsJiAgAA2AhAgAEEVNgIMQQAhEAyIAgsgAEEANgIcIAAgEDYCFCAAQaeOgIAANgIQIABBEjYCDEEAIRAMhwILIBBBFUYN1gEgAEEANgIcIAAgATYCFCAAQdqNgIAANgIQIABBFDYCDEEAIRAMhgILIAAoAgQhFyAAQQA2AgQgECARp2oiFiEBIAAgFyAQIBYgFBsiEBC1gICAACIURQ2NASAAQQc2AhwgACAQNgIUIAAgFDYCDEEAIRAMhQILIAAgAC8BMEGAAXI7ATAgASEBC0EqIRAM6gELIBBBFUYN0QEgAEEANgIcIAAgATYCFCAAQYOMgIAANgIQIABBEzYCDEEAIRAMggILIBBBFUYNzwEgAEEANgIcIAAgATYCFCAAQZqPgIAANgIQIABBIjYCDEEAIRAMgQILIAAoAgQhECAAQQA2AgQCQCAAIBAgARC3gICAACIQDQAgAUEBaiEBDI0BCyAAQQw2AhwgACAQNgIMIAAgAUEBajYCFEEAIRAMgAILIBBBFUYNzAEgAEEANgIcIAAgATYCFCAAQZqPgIAANgIQIABBIjYCDEEAIRAM/wELIAAoAgQhECAAQQA2AgQCQCAAIBAgARC3gICAACIQDQAgAUEBaiEBDIwBCyAAQQ02AhwgACAQNgIMIAAgAUEBajYCFEEAIRAM/gELIBBBFUYNyQEgAEEANgIcIAAgATYCFCAAQcaMgIAANgIQIABBIzYCDEEAIRAM/QELIAAoAgQhECAAQQA2AgQCQCAAIBAgARC5gICAACIQDQAgAUEBaiEBDIsBCyAAQQ42AhwgACAQNgIMIAAgAUEBajYCFEEAIRAM/AELIABBADYCHCAAIAE2AhQgAEHAlYCAADYCECAAQQI2AgxBACEQDPsBCyAQQRVGDcUBIABBADYCHCAAIAE2AhQgAEHGjICAADYCECAAQSM2AgxBACEQDPoBCyAAQRA2AhwgACABNgIUIAAgEDYCDEEAIRAM+QELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARC5gICAACIEDQAgAUEBaiEBDPEBCyAAQRE2AhwgACAENgIMIAAgAUEBajYCFEEAIRAM+AELIBBBFUYNwQEgAEEANgIcIAAgATYCFCAAQcaMgIAANgIQIABBIzYCDEEAIRAM9wELIAAoAgQhECAAQQA2AgQCQCAAIBAgARC5gICAACIQDQAgAUEBaiEBDIgBCyAAQRM2AhwgACAQNgIMIAAgAUEBajYCFEEAIRAM9gELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARC5gICAACIEDQAgAUEBaiEBDO0BCyAAQRQ2AhwgACAENgIMIAAgAUEBajYCFEEAIRAM9QELIBBBFUYNvQEgAEEANgIcIAAgATYCFCAAQZqPgIAANgIQIABBIjYCDEEAIRAM9AELIAAoAgQhECAAQQA2AgQCQCAAIBAgARC3gICAACIQDQAgAUEBaiEBDIYBCyAAQRY2AhwgACAQNgIMIAAgAUEBajYCFEEAIRAM8wELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARC3gICAACIEDQAgAUEBaiEBDOkBCyAAQRc2AhwgACAENgIMIAAgAUEBajYCFEEAIRAM8gELIABBADYCHCAAIAE2AhQgAEHNk4CAADYCECAAQQw2AgxBACEQDPEBC0IBIRELIBBBAWohAQJAIAApAyAiEkL//////////w9WDQAgACASQgSGIBGENwMgIAEhAQyEAQsgAEEANgIcIAAgATYCFCAAQa2JgIAANgIQIABBDDYCDEEAIRAM7wELIABBADYCHCAAIBA2AhQgAEHNk4CAADYCECAAQQw2AgxBACEQDO4BCyAAKAIEIRcgAEEANgIEIBAgEadqIhYhASAAIBcgECAWIBQbIhAQtYCAgAAiFEUNcyAAQQU2AhwgACAQNgIUIAAgFDYCDEEAIRAM7QELIABBADYCHCAAIBA2AhQgAEGqnICAADYCECAAQQ82AgxBACEQDOwBCyAAIBAgAhC0gICAACIBDQEgECEBC0EOIRAM0QELAkAgAUEVRw0AIABBAjYCHCAAIBA2AhQgAEGwmICAADYCECAAQRU2AgxBACEQDOoBCyAAQQA2AhwgACAQNgIUIABBp46AgAA2AhAgAEESNgIMQQAhEAzpAQsgAUEBaiEQAkAgAC8BMCIBQYABcUUNAAJAIAAgECACELuAgIAAIgENACAQIQEMcAsgAUEVRw26ASAAQQU2AhwgACAQNgIUIABB+ZeAgAA2AhAgAEEVNgIMQQAhEAzpAQsCQCABQaAEcUGgBEcNACAALQAtQQJxDQAgAEEANgIcIAAgEDYCFCAAQZaTgIAANgIQIABBBDYCDEEAIRAM6QELIAAgECACEL2AgIAAGiAQIQECQAJAAkACQAJAIAAgECACELOAgIAADhYCAQAEBAQEBAQEBAQEBAQEBAQEBAQDBAsgAEEBOgAuCyAAIAAvATBBwAByOwEwIBAhAQtBJiEQDNEBCyAAQSM2AhwgACAQNgIUIABBpZaAgAA2AhAgAEEVNgIMQQAhEAzpAQsgAEEANgIcIAAgEDYCFCAAQdWLgIAANgIQIABBETYCDEEAIRAM6AELIAAtAC1BAXFFDQFBwwEhEAzOAQsCQCANIAJGDQADQAJAIA0tAABBIEYNACANIQEMxAELIA1BAWoiDSACRw0AC0ElIRAM5wELQSUhEAzmAQsgACgCBCEEIABBADYCBCAAIAQgDRCvgICAACIERQ2tASAAQSY2AhwgACAENgIMIAAgDUEBajYCFEEAIRAM5QELIBBBFUYNqwEgAEEANgIcIAAgATYCFCAAQf2NgIAANgIQIABBHTYCDEEAIRAM5AELIABBJzYCHCAAIAE2AhQgACAQNgIMQQAhEAzjAQsgECEBQQEhFAJAAkACQAJAAkACQAJAIAAtACxBfmoOBwYFBQMBAgAFCyAAIAAvATBBCHI7ATAMAwtBAiEUDAELQQQhFAsgAEEBOgAsIAAgAC8BMCAUcjsBMAsgECEBC0ErIRAMygELIABBADYCHCAAIBA2AhQgAEGrkoCAADYCECAAQQs2AgxBACEQDOIBCyAAQQA2AhwgACABNgIUIABB4Y+AgAA2AhAgAEEKNgIMQQAhEAzhAQsgAEEAOgAsIBAhAQy9AQsgECEBQQEhFAJAAkACQAJAAkAgAC0ALEF7ag4EAwECAAULIAAgAC8BMEEIcjsBMAwDC0ECIRQMAQtBBCEUCyAAQQE6ACwgACAALwEwIBRyOwEwCyAQIQELQSkhEAzFAQsgAEEANgIcIAAgATYCFCAAQfCUgIAANgIQIABBAzYCDEEAIRAM3QELAkAgDi0AAEENRw0AIAAoAgQhASAAQQA2AgQCQCAAIAEgDhCxgICAACIBDQAgDkEBaiEBDHULIABBLDYCHCAAIAE2AgwgACAOQQFqNgIUQQAhEAzdAQsgAC0ALUEBcUUNAUHEASEQDMMBCwJAIA4gAkcNAEEtIRAM3AELAkACQANAAkAgDi0AAEF2ag4EAgAAAwALIA5BAWoiDiACRw0AC0EtIRAM3QELIAAoAgQhASAAQQA2AgQCQCAAIAEgDhCxgICAACIBDQAgDiEBDHQLIABBLDYCHCAAIA42AhQgACABNgIMQQAhEAzcAQsgACgCBCEBIABBADYCBAJAIAAgASAOELGAgIAAIgENACAOQQFqIQEMcwsgAEEsNgIcIAAgATYCDCAAIA5BAWo2AhRBACEQDNsBCyAAKAIEIQQgAEEANgIEIAAgBCAOELGAgIAAIgQNoAEgDiEBDM4BCyAQQSxHDQEgAUEBaiEQQQEhAQJAAkACQAJAAkAgAC0ALEF7ag4EAwECBAALIBAhAQwEC0ECIQEMAQtBBCEBCyAAQQE6ACwgACAALwEwIAFyOwEwIBAhAQwBCyAAIAAvATBBCHI7ATAgECEBC0E5IRAMvwELIABBADoALCABIQELQTQhEAy9AQsgACAALwEwQSByOwEwIAEhAQwCCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQsYCAgAAiBA0AIAEhAQzHAQsgAEE3NgIcIAAgATYCFCAAIAQ2AgxBACEQDNQBCyAAQQg6ACwgASEBC0EwIRAMuQELAkAgAC0AKEEBRg0AIAEhAQwECyAALQAtQQhxRQ2TASABIQEMAwsgAC0AMEEgcQ2UAUHFASEQDLcBCwJAIA8gAkYNAAJAA0ACQCAPLQAAQVBqIgFB/wFxQQpJDQAgDyEBQTUhEAy6AQsgACkDICIRQpmz5syZs+bMGVYNASAAIBFCCn4iETcDICARIAGtQv8BgyISQn+FVg0BIAAgESASfDcDICAPQQFqIg8gAkcNAAtBOSEQDNEBCyAAKAIEIQIgAEEANgIEIAAgAiAPQQFqIgQQsYCAgAAiAg2VASAEIQEMwwELQTkhEAzPAQsCQCAALwEwIgFBCHFFDQAgAC0AKEEBRw0AIAAtAC1BCHFFDZABCyAAIAFB9/sDcUGABHI7ATAgDyEBC0E3IRAMtAELIAAgAC8BMEEQcjsBMAyrAQsgEEEVRg2LASAAQQA2AhwgACABNgIUIABB8I6AgAA2AhAgAEEcNgIMQQAhEAzLAQsgAEHDADYCHCAAIAE2AgwgACANQQFqNgIUQQAhEAzKAQsCQCABLQAAQTpHDQAgACgCBCEQIABBADYCBAJAIAAgECABEK+AgIAAIhANACABQQFqIQEMYwsgAEHDADYCHCAAIBA2AgwgACABQQFqNgIUQQAhEAzKAQsgAEEANgIcIAAgATYCFCAAQbGRgIAANgIQIABBCjYCDEEAIRAMyQELIABBADYCHCAAIAE2AhQgAEGgmYCAADYCECAAQR42AgxBACEQDMgBCyAAQQA2AgALIABBgBI7ASogACAXQQFqIgEgAhCogICAACIQDQEgASEBC0HHACEQDKwBCyAQQRVHDYMBIABB0QA2AhwgACABNgIUIABB45eAgAA2AhAgAEEVNgIMQQAhEAzEAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMXgsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAzDAQsgAEEANgIcIAAgFDYCFCAAQcGogIAANgIQIABBBzYCDCAAQQA2AgBBACEQDMIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxdCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDMEBC0EAIRAgAEEANgIcIAAgATYCFCAAQYCRgIAANgIQIABBCTYCDAzAAQsgEEEVRg19IABBADYCHCAAIAE2AhQgAEGUjYCAADYCECAAQSE2AgxBACEQDL8BC0EBIRZBACEXQQAhFEEBIRALIAAgEDoAKyABQQFqIQECQAJAIAAtAC1BEHENAAJAAkACQCAALQAqDgMBAAIECyAWRQ0DDAILIBQNAQwCCyAXRQ0BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQrYCAgAAiEA0AIAEhAQxcCyAAQdgANgIcIAAgATYCFCAAIBA2AgxBACEQDL4BCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQrYCAgAAiBA0AIAEhAQytAQsgAEHZADYCHCAAIAE2AhQgACAENgIMQQAhEAy9AQsgACgCBCEEIABBADYCBAJAIAAgBCABEK2AgIAAIgQNACABIQEMqwELIABB2gA2AhwgACABNgIUIAAgBDYCDEEAIRAMvAELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARCtgICAACIEDQAgASEBDKkBCyAAQdwANgIcIAAgATYCFCAAIAQ2AgxBACEQDLsBCwJAIAEtAABBUGoiEEH/AXFBCk8NACAAIBA6ACogAUEBaiEBQc8AIRAMogELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARCtgICAACIEDQAgASEBDKcBCyAAQd4ANgIcIAAgATYCFCAAIAQ2AgxBACEQDLoBCyAAQQA2AgAgF0EBaiEBAkAgAC0AKUEjTw0AIAEhAQxZCyAAQQA2AhwgACABNgIUIABB04mAgAA2AhAgAEEINgIMQQAhEAy5AQsgAEEANgIAC0EAIRAgAEEANgIcIAAgATYCFCAAQZCzgIAANgIQIABBCDYCDAy3AQsgAEEANgIAIBdBAWohAQJAIAAtAClBIUcNACABIQEMVgsgAEEANgIcIAAgATYCFCAAQZuKgIAANgIQIABBCDYCDEEAIRAMtgELIABBADYCACAXQQFqIQECQCAALQApIhBBXWpBC08NACABIQEMVQsCQCAQQQZLDQBBASAQdEHKAHFFDQAgASEBDFULQQAhECAAQQA2AhwgACABNgIUIABB94mAgAA2AhAgAEEINgIMDLUBCyAQQRVGDXEgAEEANgIcIAAgATYCFCAAQbmNgIAANgIQIABBGjYCDEEAIRAMtAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDFQLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMswELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDE0LIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMsgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDE0LIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMsQELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDFELIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMsAELIABBADYCHCAAIAE2AhQgAEHGioCAADYCECAAQQc2AgxBACEQDK8BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxJCyAAQdIANgIcIAAgATYCFCAAIBA2AgxBACEQDK4BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxJCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDK0BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDKwBCyAAQQA2AhwgACABNgIUIABB3IiAgAA2AhAgAEEHNgIMQQAhEAyrAQsgEEE/Rw0BIAFBAWohAQtBBSEQDJABC0EAIRAgAEEANgIcIAAgATYCFCAAQf2SgIAANgIQIABBBzYCDAyoAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMQgsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAynAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMQgsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAymAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMRgsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAylAQsgACgCBCEBIABBADYCBAJAIAAgASAUEKeAgIAAIgENACAUIQEMPwsgAEHSADYCHCAAIBQ2AhQgACABNgIMQQAhEAykAQsgACgCBCEBIABBADYCBAJAIAAgASAUEKeAgIAAIgENACAUIQEMPwsgAEHTADYCHCAAIBQ2AhQgACABNgIMQQAhEAyjAQsgACgCBCEBIABBADYCBAJAIAAgASAUEKeAgIAAIgENACAUIQEMQwsgAEHlADYCHCAAIBQ2AhQgACABNgIMQQAhEAyiAQsgAEEANgIcIAAgFDYCFCAAQcOPgIAANgIQIABBBzYCDEEAIRAMoQELIABBADYCHCAAIAE2AhQgAEHDj4CAADYCECAAQQc2AgxBACEQDKABC0EAIRAgAEEANgIcIAAgFDYCFCAAQYycgIAANgIQIABBBzYCDAyfAQsgAEEANgIcIAAgFDYCFCAAQYycgIAANgIQIABBBzYCDEEAIRAMngELIABBADYCHCAAIBQ2AhQgAEH+kYCAADYCECAAQQc2AgxBACEQDJ0BCyAAQQA2AhwgACABNgIUIABBjpuAgAA2AhAgAEEGNgIMQQAhEAycAQsgEEEVRg1XIABBADYCHCAAIAE2AhQgAEHMjoCAADYCECAAQSA2AgxBACEQDJsBCyAAQQA2AgAgEEEBaiEBQSQhEAsgACAQOgApIAAoAgQhECAAQQA2AgQgACAQIAEQq4CAgAAiEA1UIAEhAQw+CyAAQQA2AgALQQAhECAAQQA2AhwgACAENgIUIABB8ZuAgAA2AhAgAEEGNgIMDJcBCyABQRVGDVAgAEEANgIcIAAgBTYCFCAAQfCMgIAANgIQIABBGzYCDEEAIRAMlgELIAAoAgQhBSAAQQA2AgQgACAFIBAQqYCAgAAiBQ0BIBBBAWohBQtBrQEhEAx7CyAAQcEBNgIcIAAgBTYCDCAAIBBBAWo2AhRBACEQDJMBCyAAKAIEIQYgAEEANgIEIAAgBiAQEKmAgIAAIgYNASAQQQFqIQYLQa4BIRAMeAsgAEHCATYCHCAAIAY2AgwgACAQQQFqNgIUQQAhEAyQAQsgAEEANgIcIAAgBzYCFCAAQZeLgIAANgIQIABBDTYCDEEAIRAMjwELIABBADYCHCAAIAg2AhQgAEHjkICAADYCECAAQQk2AgxBACEQDI4BCyAAQQA2AhwgACAINgIUIABBlI2AgAA2AhAgAEEhNgIMQQAhEAyNAQtBASEWQQAhF0EAIRRBASEQCyAAIBA6ACsgCUEBaiEIAkACQCAALQAtQRBxDQACQAJAAkAgAC0AKg4DAQACBAsgFkUNAwwCCyAUDQEMAgsgF0UNAQsgACgCBCEQIABBADYCBCAAIBAgCBCtgICAACIQRQ09IABByQE2AhwgACAINgIUIAAgEDYCDEEAIRAMjAELIAAoAgQhBCAAQQA2AgQgACAEIAgQrYCAgAAiBEUNdiAAQcoBNgIcIAAgCDYCFCAAIAQ2AgxBACEQDIsBCyAAKAIEIQQgAEEANgIEIAAgBCAJEK2AgIAAIgRFDXQgAEHLATYCHCAAIAk2AhQgACAENgIMQQAhEAyKAQsgACgCBCEEIABBADYCBCAAIAQgChCtgICAACIERQ1yIABBzQE2AhwgACAKNgIUIAAgBDYCDEEAIRAMiQELAkAgCy0AAEFQaiIQQf8BcUEKTw0AIAAgEDoAKiALQQFqIQpBtgEhEAxwCyAAKAIEIQQgAEEANgIEIAAgBCALEK2AgIAAIgRFDXAgAEHPATYCHCAAIAs2AhQgACAENgIMQQAhEAyIAQsgAEEANgIcIAAgBDYCFCAAQZCzgIAANgIQIABBCDYCDCAAQQA2AgBBACEQDIcBCyABQRVGDT8gAEEANgIcIAAgDDYCFCAAQcyOgIAANgIQIABBIDYCDEEAIRAMhgELIABBgQQ7ASggACgCBCEQIABCADcDACAAIBAgDEEBaiIMEKuAgIAAIhBFDTggAEHTATYCHCAAIAw2AhQgACAQNgIMQQAhEAyFAQsgAEEANgIAC0EAIRAgAEEANgIcIAAgBDYCFCAAQdibgIAANgIQIABBCDYCDAyDAQsgACgCBCEQIABCADcDACAAIBAgC0EBaiILEKuAgIAAIhANAUHGASEQDGkLIABBAjoAKAxVCyAAQdUBNgIcIAAgCzYCFCAAIBA2AgxBACEQDIABCyAQQRVGDTcgAEEANgIcIAAgBDYCFCAAQaSMgIAANgIQIABBEDYCDEEAIRAMfwsgAC0ANEEBRw00IAAgBCACELyAgIAAIhBFDTQgEEEVRw01IABB3AE2AhwgACAENgIUIABB1ZaAgAA2AhAgAEEVNgIMQQAhEAx+C0EAIRAgAEEANgIcIABBr4uAgAA2AhAgAEECNgIMIAAgFEEBajYCFAx9C0EAIRAMYwtBAiEQDGILQQ0hEAxhC0EPIRAMYAtBJSEQDF8LQRMhEAxeC0EVIRAMXQtBFiEQDFwLQRchEAxbC0EYIRAMWgtBGSEQDFkLQRohEAxYC0EbIRAMVwtBHCEQDFYLQR0hEAxVC0EfIRAMVAtBISEQDFMLQSMhEAxSC0HGACEQDFELQS4hEAxQC0EvIRAMTwtBOyEQDE4LQT0hEAxNC0HIACEQDEwLQckAIRAMSwtBywAhEAxKC0HMACEQDEkLQc4AIRAMSAtB0QAhEAxHC0HVACEQDEYLQdgAIRAMRQtB2QAhEAxEC0HbACEQDEMLQeQAIRAMQgtB5QAhEAxBC0HxACEQDEALQfQAIRAMPwtBjQEhEAw+C0GXASEQDD0LQakBIRAMPAtBrAEhEAw7C0HAASEQDDoLQbkBIRAMOQtBrwEhEAw4C0GxASEQDDcLQbIBIRAMNgtBtAEhEAw1C0G1ASEQDDQLQboBIRAMMwtBvQEhEAwyC0G/ASEQDDELQcEBIRAMMAsgAEEANgIcIAAgBDYCFCAAQemLgIAANgIQIABBHzYCDEEAIRAMSAsgAEHbATYCHCAAIAQ2AhQgAEH6loCAADYCECAAQRU2AgxBACEQDEcLIABB+AA2AhwgACAMNgIUIABBypiAgAA2AhAgAEEVNgIMQQAhEAxGCyAAQdEANgIcIAAgBTYCFCAAQbCXgIAANgIQIABBFTYCDEEAIRAMRQsgAEH5ADYCHCAAIAE2AhQgACAQNgIMQQAhEAxECyAAQfgANgIcIAAgATYCFCAAQcqYgIAANgIQIABBFTYCDEEAIRAMQwsgAEHkADYCHCAAIAE2AhQgAEHjl4CAADYCECAAQRU2AgxBACEQDEILIABB1wA2AhwgACABNgIUIABByZeAgAA2AhAgAEEVNgIMQQAhEAxBCyAAQQA2AhwgACABNgIUIABBuY2AgAA2AhAgAEEaNgIMQQAhEAxACyAAQcIANgIcIAAgATYCFCAAQeOYgIAANgIQIABBFTYCDEEAIRAMPwsgAEEANgIEIAAgDyAPELGAgIAAIgRFDQEgAEE6NgIcIAAgBDYCDCAAIA9BAWo2AhRBACEQDD4LIAAoAgQhBCAAQQA2AgQCQCAAIAQgARCxgICAACIERQ0AIABBOzYCHCAAIAQ2AgwgACABQQFqNgIUQQAhEAw+CyABQQFqIQEMLQsgD0EBaiEBDC0LIABBADYCHCAAIA82AhQgAEHkkoCAADYCECAAQQQ2AgxBACEQDDsLIABBNjYCHCAAIAQ2AhQgACACNgIMQQAhEAw6CyAAQS42AhwgACAONgIUIAAgBDYCDEEAIRAMOQsgAEHQADYCHCAAIAE2AhQgAEGRmICAADYCECAAQRU2AgxBACEQDDgLIA1BAWohAQwsCyAAQRU2AhwgACABNgIUIABBgpmAgAA2AhAgAEEVNgIMQQAhEAw2CyAAQRs2AhwgACABNgIUIABBkZeAgAA2AhAgAEEVNgIMQQAhEAw1CyAAQQ82AhwgACABNgIUIABBkZeAgAA2AhAgAEEVNgIMQQAhEAw0CyAAQQs2AhwgACABNgIUIABBkZeAgAA2AhAgAEEVNgIMQQAhEAwzCyAAQRo2AhwgACABNgIUIABBgpmAgAA2AhAgAEEVNgIMQQAhEAwyCyAAQQs2AhwgACABNgIUIABBgpmAgAA2AhAgAEEVNgIMQQAhEAwxCyAAQQo2AhwgACABNgIUIABB5JaAgAA2AhAgAEEVNgIMQQAhEAwwCyAAQR42AhwgACABNgIUIABB+ZeAgAA2AhAgAEEVNgIMQQAhEAwvCyAAQQA2AhwgACAQNgIUIABB2o2AgAA2AhAgAEEUNgIMQQAhEAwuCyAAQQQ2AhwgACABNgIUIABBsJiAgAA2AhAgAEEVNgIMQQAhEAwtCyAAQQA2AgAgC0EBaiELC0G4ASEQDBILIABBADYCACAQQQFqIQFB9QAhEAwRCyABIQECQCAALQApQQVHDQBB4wAhEAwRC0HiACEQDBALQQAhECAAQQA2AhwgAEHkkYCAADYCECAAQQc2AgwgACAUQQFqNgIUDCgLIABBADYCACAXQQFqIQFBwAAhEAwOC0EBIQELIAAgAToALCAAQQA2AgAgF0EBaiEBC0EoIRAMCwsgASEBC0E4IRAMCQsCQCABIg8gAkYNAANAAkAgDy0AAEGAvoCAAGotAAAiAUEBRg0AIAFBAkcNAyAPQQFqIQEMBAsgD0EBaiIPIAJHDQALQT4hEAwiC0E+IRAMIQsgAEEAOgAsIA8hAQwBC0ELIRAMBgtBOiEQDAULIAFBAWohAUEtIRAMBAsgACABOgAsIABBADYCACAWQQFqIQFBDCEQDAMLIABBADYCACAXQQFqIQFBCiEQDAILIABBADYCAAsgAEEAOgAsIA0hAUEJIRAMAAsLQQAhECAAQQA2AhwgACALNgIUIABBzZCAgAA2AhAgAEEJNgIMDBcLQQAhECAAQQA2AhwgACAKNgIUIABB6YqAgAA2AhAgAEEJNgIMDBYLQQAhECAAQQA2AhwgACAJNgIUIABBt5CAgAA2AhAgAEEJNgIMDBULQQAhECAAQQA2AhwgACAINgIUIABBnJGAgAA2AhAgAEEJNgIMDBQLQQAhECAAQQA2AhwgACABNgIUIABBzZCAgAA2AhAgAEEJNgIMDBMLQQAhECAAQQA2AhwgACABNgIUIABB6YqAgAA2AhAgAEEJNgIMDBILQQAhECAAQQA2AhwgACABNgIUIABBt5CAgAA2AhAgAEEJNgIMDBELQQAhECAAQQA2AhwgACABNgIUIABBnJGAgAA2AhAgAEEJNgIMDBALQQAhECAAQQA2AhwgACABNgIUIABBl5WAgAA2AhAgAEEPNgIMDA8LQQAhECAAQQA2AhwgACABNgIUIABBl5WAgAA2AhAgAEEPNgIMDA4LQQAhECAAQQA2AhwgACABNgIUIABBwJKAgAA2AhAgAEELNgIMDA0LQQAhECAAQQA2AhwgACABNgIUIABBlYmAgAA2AhAgAEELNgIMDAwLQQAhECAAQQA2AhwgACABNgIUIABB4Y+AgAA2AhAgAEEKNgIMDAsLQQAhECAAQQA2AhwgACABNgIUIABB+4+AgAA2AhAgAEEKNgIMDAoLQQAhECAAQQA2AhwgACABNgIUIABB8ZmAgAA2AhAgAEECNgIMDAkLQQAhECAAQQA2AhwgACABNgIUIABBxJSAgAA2AhAgAEECNgIMDAgLQQAhECAAQQA2AhwgACABNgIUIABB8pWAgAA2AhAgAEECNgIMDAcLIABBAjYCHCAAIAE2AhQgAEGcmoCAADYCECAAQRY2AgxBACEQDAYLQQEhEAwFC0HUACEQIAEiBCACRg0EIANBCGogACAEIAJB2MKAgABBChDFgICAACADKAIMIQQgAygCCA4DAQQCAAsQyoCAgAAACyAAQQA2AhwgAEG1moCAADYCECAAQRc2AgwgACAEQQFqNgIUQQAhEAwCCyAAQQA2AhwgACAENgIUIABBypqAgAA2AhAgAEEJNgIMQQAhEAwBCwJAIAEiBCACRw0AQSIhEAwBCyAAQYmAgIAANgIIIAAgBDYCBEEhIRALIANBEGokgICAgAAgEAuvAQECfyABKAIAIQYCQAJAIAIgA0YNACAEIAZqIQQgBiADaiACayEHIAIgBkF/cyAFaiIGaiEFA0ACQCACLQAAIAQtAABGDQBBAiEEDAMLAkAgBg0AQQAhBCAFIQIMAwsgBkF/aiEGIARBAWohBCACQQFqIgIgA0cNAAsgByEGIAMhAgsgAEEBNgIAIAEgBjYCACAAIAI2AgQPCyABQQA2AgAgACAENgIAIAAgAjYCBAsKACAAEMeAgIAAC/I2AQt/I4CAgIAAQRBrIgEkgICAgAACQEEAKAKg0ICAAA0AQQAQy4CAgABBgNSEgABrIgJB2QBJDQBBACEDAkBBACgC4NOAgAAiBA0AQQBCfzcC7NOAgABBAEKAgISAgIDAADcC5NOAgABBACABQQhqQXBxQdiq1aoFcyIENgLg04CAAEEAQQA2AvTTgIAAQQBBADYCxNOAgAALQQAgAjYCzNOAgABBAEGA1ISAADYCyNOAgABBAEGA1ISAADYCmNCAgABBACAENgKs0ICAAEEAQX82AqjQgIAAA0AgA0HE0ICAAGogA0G40ICAAGoiBDYCACAEIANBsNCAgABqIgU2AgAgA0G80ICAAGogBTYCACADQczQgIAAaiADQcDQgIAAaiIFNgIAIAUgBDYCACADQdTQgIAAaiADQcjQgIAAaiIENgIAIAQgBTYCACADQdDQgIAAaiAENgIAIANBIGoiA0GAAkcNAAtBgNSEgABBeEGA1ISAAGtBD3FBAEGA1ISAAEEIakEPcRsiA2oiBEEEaiACQUhqIgUgA2siA0EBcjYCAEEAQQAoAvDTgIAANgKk0ICAAEEAIAM2ApTQgIAAQQAgBDYCoNCAgABBgNSEgAAgBWpBODYCBAsCQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAEHsAUsNAAJAQQAoAojQgIAAIgZBECAAQRNqQXBxIABBC0kbIgJBA3YiBHYiA0EDcUUNAAJAAkAgA0EBcSAEckEBcyIFQQN0IgRBsNCAgABqIgMgBEG40ICAAGooAgAiBCgCCCICRw0AQQAgBkF+IAV3cTYCiNCAgAAMAQsgAyACNgIIIAIgAzYCDAsgBEEIaiEDIAQgBUEDdCIFQQNyNgIEIAQgBWoiBCAEKAIEQQFyNgIEDAwLIAJBACgCkNCAgAAiB00NAQJAIANFDQACQAJAIAMgBHRBAiAEdCIDQQAgA2tycSIDQQAgA2txQX9qIgMgA0EMdkEQcSIDdiIEQQV2QQhxIgUgA3IgBCAFdiIDQQJ2QQRxIgRyIAMgBHYiA0EBdkECcSIEciADIAR2IgNBAXZBAXEiBHIgAyAEdmoiBEEDdCIDQbDQgIAAaiIFIANBuNCAgABqKAIAIgMoAggiAEcNAEEAIAZBfiAEd3EiBjYCiNCAgAAMAQsgBSAANgIIIAAgBTYCDAsgAyACQQNyNgIEIAMgBEEDdCIEaiAEIAJrIgU2AgAgAyACaiIAIAVBAXI2AgQCQCAHRQ0AIAdBeHFBsNCAgABqIQJBACgCnNCAgAAhBAJAAkAgBkEBIAdBA3Z0IghxDQBBACAGIAhyNgKI0ICAACACIQgMAQsgAigCCCEICyAIIAQ2AgwgAiAENgIIIAQgAjYCDCAEIAg2AggLIANBCGohA0EAIAA2ApzQgIAAQQAgBTYCkNCAgAAMDAtBACgCjNCAgAAiCUUNASAJQQAgCWtxQX9qIgMgA0EMdkEQcSIDdiIEQQV2QQhxIgUgA3IgBCAFdiIDQQJ2QQRxIgRyIAMgBHYiA0EBdkECcSIEciADIAR2IgNBAXZBAXEiBHIgAyAEdmpBAnRBuNKAgABqKAIAIgAoAgRBeHEgAmshBCAAIQUCQANAAkAgBSgCECIDDQAgBUEUaigCACIDRQ0CCyADKAIEQXhxIAJrIgUgBCAFIARJIgUbIQQgAyAAIAUbIQAgAyEFDAALCyAAKAIYIQoCQCAAKAIMIgggAEYNACAAKAIIIgNBACgCmNCAgABJGiAIIAM2AgggAyAINgIMDAsLAkAgAEEUaiIFKAIAIgMNACAAKAIQIgNFDQMgAEEQaiEFCwNAIAUhCyADIghBFGoiBSgCACIDDQAgCEEQaiEFIAgoAhAiAw0ACyALQQA2AgAMCgtBfyECIABBv39LDQAgAEETaiIDQXBxIQJBACgCjNCAgAAiB0UNAEEAIQsCQCACQYACSQ0AQR8hCyACQf///wdLDQAgA0EIdiIDIANBgP4/akEQdkEIcSIDdCIEIARBgOAfakEQdkEEcSIEdCIFIAVBgIAPakEQdkECcSIFdEEPdiADIARyIAVyayIDQQF0IAIgA0EVanZBAXFyQRxqIQsLQQAgAmshBAJAAkACQAJAIAtBAnRBuNKAgABqKAIAIgUNAEEAIQNBACEIDAELQQAhAyACQQBBGSALQQF2ayALQR9GG3QhAEEAIQgDQAJAIAUoAgRBeHEgAmsiBiAETw0AIAYhBCAFIQggBg0AQQAhBCAFIQggBSEDDAMLIAMgBUEUaigCACIGIAYgBSAAQR12QQRxakEQaigCACIFRhsgAyAGGyEDIABBAXQhACAFDQALCwJAIAMgCHINAEEAIQhBAiALdCIDQQAgA2tyIAdxIgNFDQMgA0EAIANrcUF/aiIDIANBDHZBEHEiA3YiBUEFdkEIcSIAIANyIAUgAHYiA0ECdkEEcSIFciADIAV2IgNBAXZBAnEiBXIgAyAFdiIDQQF2QQFxIgVyIAMgBXZqQQJ0QbjSgIAAaigCACEDCyADRQ0BCwNAIAMoAgRBeHEgAmsiBiAESSEAAkAgAygCECIFDQAgA0EUaigCACEFCyAGIAQgABshBCADIAggABshCCAFIQMgBQ0ACwsgCEUNACAEQQAoApDQgIAAIAJrTw0AIAgoAhghCwJAIAgoAgwiACAIRg0AIAgoAggiA0EAKAKY0ICAAEkaIAAgAzYCCCADIAA2AgwMCQsCQCAIQRRqIgUoAgAiAw0AIAgoAhAiA0UNAyAIQRBqIQULA0AgBSEGIAMiAEEUaiIFKAIAIgMNACAAQRBqIQUgACgCECIDDQALIAZBADYCAAwICwJAQQAoApDQgIAAIgMgAkkNAEEAKAKc0ICAACEEAkACQCADIAJrIgVBEEkNACAEIAJqIgAgBUEBcjYCBEEAIAU2ApDQgIAAQQAgADYCnNCAgAAgBCADaiAFNgIAIAQgAkEDcjYCBAwBCyAEIANBA3I2AgQgBCADaiIDIAMoAgRBAXI2AgRBAEEANgKc0ICAAEEAQQA2ApDQgIAACyAEQQhqIQMMCgsCQEEAKAKU0ICAACIAIAJNDQBBACgCoNCAgAAiAyACaiIEIAAgAmsiBUEBcjYCBEEAIAU2ApTQgIAAQQAgBDYCoNCAgAAgAyACQQNyNgIEIANBCGohAwwKCwJAAkBBACgC4NOAgABFDQBBACgC6NOAgAAhBAwBC0EAQn83AuzTgIAAQQBCgICEgICAwAA3AuTTgIAAQQAgAUEMakFwcUHYqtWqBXM2AuDTgIAAQQBBADYC9NOAgABBAEEANgLE04CAAEGAgAQhBAtBACEDAkAgBCACQccAaiIHaiIGQQAgBGsiC3EiCCACSw0AQQBBMDYC+NOAgAAMCgsCQEEAKALA04CAACIDRQ0AAkBBACgCuNOAgAAiBCAIaiIFIARNDQAgBSADTQ0BC0EAIQNBAEEwNgL404CAAAwKC0EALQDE04CAAEEEcQ0EAkACQAJAQQAoAqDQgIAAIgRFDQBByNOAgAAhAwNAAkAgAygCACIFIARLDQAgBSADKAIEaiAESw0DCyADKAIIIgMNAAsLQQAQy4CAgAAiAEF/Rg0FIAghBgJAQQAoAuTTgIAAIgNBf2oiBCAAcUUNACAIIABrIAQgAGpBACADa3FqIQYLIAYgAk0NBSAGQf7///8HSw0FAkBBACgCwNOAgAAiA0UNAEEAKAK404CAACIEIAZqIgUgBE0NBiAFIANLDQYLIAYQy4CAgAAiAyAARw0BDAcLIAYgAGsgC3EiBkH+////B0sNBCAGEMuAgIAAIgAgAygCACADKAIEakYNAyAAIQMLAkAgA0F/Rg0AIAJByABqIAZNDQACQCAHIAZrQQAoAujTgIAAIgRqQQAgBGtxIgRB/v///wdNDQAgAyEADAcLAkAgBBDLgICAAEF/Rg0AIAQgBmohBiADIQAMBwtBACAGaxDLgICAABoMBAsgAyEAIANBf0cNBQwDC0EAIQgMBwtBACEADAULIABBf0cNAgtBAEEAKALE04CAAEEEcjYCxNOAgAALIAhB/v///wdLDQEgCBDLgICAACEAQQAQy4CAgAAhAyAAQX9GDQEgA0F/Rg0BIAAgA08NASADIABrIgYgAkE4ak0NAQtBAEEAKAK404CAACAGaiIDNgK404CAAAJAIANBACgCvNOAgABNDQBBACADNgK804CAAAsCQAJAAkACQEEAKAKg0ICAACIERQ0AQcjTgIAAIQMDQCAAIAMoAgAiBSADKAIEIghqRg0CIAMoAggiAw0ADAMLCwJAAkBBACgCmNCAgAAiA0UNACAAIANPDQELQQAgADYCmNCAgAALQQAhA0EAIAY2AszTgIAAQQAgADYCyNOAgABBAEF/NgKo0ICAAEEAQQAoAuDTgIAANgKs0ICAAEEAQQA2AtTTgIAAA0AgA0HE0ICAAGogA0G40ICAAGoiBDYCACAEIANBsNCAgABqIgU2AgAgA0G80ICAAGogBTYCACADQczQgIAAaiADQcDQgIAAaiIFNgIAIAUgBDYCACADQdTQgIAAaiADQcjQgIAAaiIENgIAIAQgBTYCACADQdDQgIAAaiAENgIAIANBIGoiA0GAAkcNAAsgAEF4IABrQQ9xQQAgAEEIakEPcRsiA2oiBCAGQUhqIgUgA2siA0EBcjYCBEEAQQAoAvDTgIAANgKk0ICAAEEAIAM2ApTQgIAAQQAgBDYCoNCAgAAgACAFakE4NgIEDAILIAMtAAxBCHENACAEIAVJDQAgBCAATw0AIARBeCAEa0EPcUEAIARBCGpBD3EbIgVqIgBBACgClNCAgAAgBmoiCyAFayIFQQFyNgIEIAMgCCAGajYCBEEAQQAoAvDTgIAANgKk0ICAAEEAIAU2ApTQgIAAQQAgADYCoNCAgAAgBCALakE4NgIEDAELAkAgAEEAKAKY0ICAACIITw0AQQAgADYCmNCAgAAgACEICyAAIAZqIQVByNOAgAAhAwJAAkACQAJAAkACQAJAA0AgAygCACAFRg0BIAMoAggiAw0ADAILCyADLQAMQQhxRQ0BC0HI04CAACEDA0ACQCADKAIAIgUgBEsNACAFIAMoAgRqIgUgBEsNAwsgAygCCCEDDAALCyADIAA2AgAgAyADKAIEIAZqNgIEIABBeCAAa0EPcUEAIABBCGpBD3EbaiILIAJBA3I2AgQgBUF4IAVrQQ9xQQAgBUEIakEPcRtqIgYgCyACaiICayEDAkAgBiAERw0AQQAgAjYCoNCAgABBAEEAKAKU0ICAACADaiIDNgKU0ICAACACIANBAXI2AgQMAwsCQCAGQQAoApzQgIAARw0AQQAgAjYCnNCAgABBAEEAKAKQ0ICAACADaiIDNgKQ0ICAACACIANBAXI2AgQgAiADaiADNgIADAMLAkAgBigCBCIEQQNxQQFHDQAgBEF4cSEHAkACQCAEQf8BSw0AIAYoAggiBSAEQQN2IghBA3RBsNCAgABqIgBGGgJAIAYoAgwiBCAFRw0AQQBBACgCiNCAgABBfiAId3E2AojQgIAADAILIAQgAEYaIAQgBTYCCCAFIAQ2AgwMAQsgBigCGCEJAkACQCAGKAIMIgAgBkYNACAGKAIIIgQgCEkaIAAgBDYCCCAEIAA2AgwMAQsCQCAGQRRqIgQoAgAiBQ0AIAZBEGoiBCgCACIFDQBBACEADAELA0AgBCEIIAUiAEEUaiIEKAIAIgUNACAAQRBqIQQgACgCECIFDQALIAhBADYCAAsgCUUNAAJAAkAgBiAGKAIcIgVBAnRBuNKAgABqIgQoAgBHDQAgBCAANgIAIAANAUEAQQAoAozQgIAAQX4gBXdxNgKM0ICAAAwCCyAJQRBBFCAJKAIQIAZGG2ogADYCACAARQ0BCyAAIAk2AhgCQCAGKAIQIgRFDQAgACAENgIQIAQgADYCGAsgBigCFCIERQ0AIABBFGogBDYCACAEIAA2AhgLIAcgA2ohAyAGIAdqIgYoAgQhBAsgBiAEQX5xNgIEIAIgA2ogAzYCACACIANBAXI2AgQCQCADQf8BSw0AIANBeHFBsNCAgABqIQQCQAJAQQAoAojQgIAAIgVBASADQQN2dCIDcQ0AQQAgBSADcjYCiNCAgAAgBCEDDAELIAQoAgghAwsgAyACNgIMIAQgAjYCCCACIAQ2AgwgAiADNgIIDAMLQR8hBAJAIANB////B0sNACADQQh2IgQgBEGA/j9qQRB2QQhxIgR0IgUgBUGA4B9qQRB2QQRxIgV0IgAgAEGAgA9qQRB2QQJxIgB0QQ92IAQgBXIgAHJrIgRBAXQgAyAEQRVqdkEBcXJBHGohBAsgAiAENgIcIAJCADcCECAEQQJ0QbjSgIAAaiEFAkBBACgCjNCAgAAiAEEBIAR0IghxDQAgBSACNgIAQQAgACAIcjYCjNCAgAAgAiAFNgIYIAIgAjYCCCACIAI2AgwMAwsgA0EAQRkgBEEBdmsgBEEfRht0IQQgBSgCACEAA0AgACIFKAIEQXhxIANGDQIgBEEddiEAIARBAXQhBCAFIABBBHFqQRBqIggoAgAiAA0ACyAIIAI2AgAgAiAFNgIYIAIgAjYCDCACIAI2AggMAgsgAEF4IABrQQ9xQQAgAEEIakEPcRsiA2oiCyAGQUhqIgggA2siA0EBcjYCBCAAIAhqQTg2AgQgBCAFQTcgBWtBD3FBACAFQUlqQQ9xG2pBQWoiCCAIIARBEGpJGyIIQSM2AgRBAEEAKALw04CAADYCpNCAgABBACADNgKU0ICAAEEAIAs2AqDQgIAAIAhBEGpBACkC0NOAgAA3AgAgCEEAKQLI04CAADcCCEEAIAhBCGo2AtDTgIAAQQAgBjYCzNOAgABBACAANgLI04CAAEEAQQA2AtTTgIAAIAhBJGohAwNAIANBBzYCACADQQRqIgMgBUkNAAsgCCAERg0DIAggCCgCBEF+cTYCBCAIIAggBGsiADYCACAEIABBAXI2AgQCQCAAQf8BSw0AIABBeHFBsNCAgABqIQMCQAJAQQAoAojQgIAAIgVBASAAQQN2dCIAcQ0AQQAgBSAAcjYCiNCAgAAgAyEFDAELIAMoAgghBQsgBSAENgIMIAMgBDYCCCAEIAM2AgwgBCAFNgIIDAQLQR8hAwJAIABB////B0sNACAAQQh2IgMgA0GA/j9qQRB2QQhxIgN0IgUgBUGA4B9qQRB2QQRxIgV0IgggCEGAgA9qQRB2QQJxIgh0QQ92IAMgBXIgCHJrIgNBAXQgACADQRVqdkEBcXJBHGohAwsgBCADNgIcIARCADcCECADQQJ0QbjSgIAAaiEFAkBBACgCjNCAgAAiCEEBIAN0IgZxDQAgBSAENgIAQQAgCCAGcjYCjNCAgAAgBCAFNgIYIAQgBDYCCCAEIAQ2AgwMBAsgAEEAQRkgA0EBdmsgA0EfRht0IQMgBSgCACEIA0AgCCIFKAIEQXhxIABGDQMgA0EddiEIIANBAXQhAyAFIAhBBHFqQRBqIgYoAgAiCA0ACyAGIAQ2AgAgBCAFNgIYIAQgBDYCDCAEIAQ2AggMAwsgBSgCCCIDIAI2AgwgBSACNgIIIAJBADYCGCACIAU2AgwgAiADNgIICyALQQhqIQMMBQsgBSgCCCIDIAQ2AgwgBSAENgIIIARBADYCGCAEIAU2AgwgBCADNgIIC0EAKAKU0ICAACIDIAJNDQBBACgCoNCAgAAiBCACaiIFIAMgAmsiA0EBcjYCBEEAIAM2ApTQgIAAQQAgBTYCoNCAgAAgBCACQQNyNgIEIARBCGohAwwDC0EAIQNBAEEwNgL404CAAAwCCwJAIAtFDQACQAJAIAggCCgCHCIFQQJ0QbjSgIAAaiIDKAIARw0AIAMgADYCACAADQFBACAHQX4gBXdxIgc2AozQgIAADAILIAtBEEEUIAsoAhAgCEYbaiAANgIAIABFDQELIAAgCzYCGAJAIAgoAhAiA0UNACAAIAM2AhAgAyAANgIYCyAIQRRqKAIAIgNFDQAgAEEUaiADNgIAIAMgADYCGAsCQAJAIARBD0sNACAIIAQgAmoiA0EDcjYCBCAIIANqIgMgAygCBEEBcjYCBAwBCyAIIAJqIgAgBEEBcjYCBCAIIAJBA3I2AgQgACAEaiAENgIAAkAgBEH/AUsNACAEQXhxQbDQgIAAaiEDAkACQEEAKAKI0ICAACIFQQEgBEEDdnQiBHENAEEAIAUgBHI2AojQgIAAIAMhBAwBCyADKAIIIQQLIAQgADYCDCADIAA2AgggACADNgIMIAAgBDYCCAwBC0EfIQMCQCAEQf///wdLDQAgBEEIdiIDIANBgP4/akEQdkEIcSIDdCIFIAVBgOAfakEQdkEEcSIFdCICIAJBgIAPakEQdkECcSICdEEPdiADIAVyIAJyayIDQQF0IAQgA0EVanZBAXFyQRxqIQMLIAAgAzYCHCAAQgA3AhAgA0ECdEG40oCAAGohBQJAIAdBASADdCICcQ0AIAUgADYCAEEAIAcgAnI2AozQgIAAIAAgBTYCGCAAIAA2AgggACAANgIMDAELIARBAEEZIANBAXZrIANBH0YbdCEDIAUoAgAhAgJAA0AgAiIFKAIEQXhxIARGDQEgA0EddiECIANBAXQhAyAFIAJBBHFqQRBqIgYoAgAiAg0ACyAGIAA2AgAgACAFNgIYIAAgADYCDCAAIAA2AggMAQsgBSgCCCIDIAA2AgwgBSAANgIIIABBADYCGCAAIAU2AgwgACADNgIICyAIQQhqIQMMAQsCQCAKRQ0AAkACQCAAIAAoAhwiBUECdEG40oCAAGoiAygCAEcNACADIAg2AgAgCA0BQQAgCUF+IAV3cTYCjNCAgAAMAgsgCkEQQRQgCigCECAARhtqIAg2AgAgCEUNAQsgCCAKNgIYAkAgACgCECIDRQ0AIAggAzYCECADIAg2AhgLIABBFGooAgAiA0UNACAIQRRqIAM2AgAgAyAINgIYCwJAAkAgBEEPSw0AIAAgBCACaiIDQQNyNgIEIAAgA2oiAyADKAIEQQFyNgIEDAELIAAgAmoiBSAEQQFyNgIEIAAgAkEDcjYCBCAFIARqIAQ2AgACQCAHRQ0AIAdBeHFBsNCAgABqIQJBACgCnNCAgAAhAwJAAkBBASAHQQN2dCIIIAZxDQBBACAIIAZyNgKI0ICAACACIQgMAQsgAigCCCEICyAIIAM2AgwgAiADNgIIIAMgAjYCDCADIAg2AggLQQAgBTYCnNCAgABBACAENgKQ0ICAAAsgAEEIaiEDCyABQRBqJICAgIAAIAMLCgAgABDJgICAAAviDQEHfwJAIABFDQAgAEF4aiIBIABBfGooAgAiAkF4cSIAaiEDAkAgAkEBcQ0AIAJBA3FFDQEgASABKAIAIgJrIgFBACgCmNCAgAAiBEkNASACIABqIQACQCABQQAoApzQgIAARg0AAkAgAkH/AUsNACABKAIIIgQgAkEDdiIFQQN0QbDQgIAAaiIGRhoCQCABKAIMIgIgBEcNAEEAQQAoAojQgIAAQX4gBXdxNgKI0ICAAAwDCyACIAZGGiACIAQ2AgggBCACNgIMDAILIAEoAhghBwJAAkAgASgCDCIGIAFGDQAgASgCCCICIARJGiAGIAI2AgggAiAGNgIMDAELAkAgAUEUaiICKAIAIgQNACABQRBqIgIoAgAiBA0AQQAhBgwBCwNAIAIhBSAEIgZBFGoiAigCACIEDQAgBkEQaiECIAYoAhAiBA0ACyAFQQA2AgALIAdFDQECQAJAIAEgASgCHCIEQQJ0QbjSgIAAaiICKAIARw0AIAIgBjYCACAGDQFBAEEAKAKM0ICAAEF+IAR3cTYCjNCAgAAMAwsgB0EQQRQgBygCECABRhtqIAY2AgAgBkUNAgsgBiAHNgIYAkAgASgCECICRQ0AIAYgAjYCECACIAY2AhgLIAEoAhQiAkUNASAGQRRqIAI2AgAgAiAGNgIYDAELIAMoAgQiAkEDcUEDRw0AIAMgAkF+cTYCBEEAIAA2ApDQgIAAIAEgAGogADYCACABIABBAXI2AgQPCyABIANPDQAgAygCBCICQQFxRQ0AAkACQCACQQJxDQACQCADQQAoAqDQgIAARw0AQQAgATYCoNCAgABBAEEAKAKU0ICAACAAaiIANgKU0ICAACABIABBAXI2AgQgAUEAKAKc0ICAAEcNA0EAQQA2ApDQgIAAQQBBADYCnNCAgAAPCwJAIANBACgCnNCAgABHDQBBACABNgKc0ICAAEEAQQAoApDQgIAAIABqIgA2ApDQgIAAIAEgAEEBcjYCBCABIABqIAA2AgAPCyACQXhxIABqIQACQAJAIAJB/wFLDQAgAygCCCIEIAJBA3YiBUEDdEGw0ICAAGoiBkYaAkAgAygCDCICIARHDQBBAEEAKAKI0ICAAEF+IAV3cTYCiNCAgAAMAgsgAiAGRhogAiAENgIIIAQgAjYCDAwBCyADKAIYIQcCQAJAIAMoAgwiBiADRg0AIAMoAggiAkEAKAKY0ICAAEkaIAYgAjYCCCACIAY2AgwMAQsCQCADQRRqIgIoAgAiBA0AIANBEGoiAigCACIEDQBBACEGDAELA0AgAiEFIAQiBkEUaiICKAIAIgQNACAGQRBqIQIgBigCECIEDQALIAVBADYCAAsgB0UNAAJAAkAgAyADKAIcIgRBAnRBuNKAgABqIgIoAgBHDQAgAiAGNgIAIAYNAUEAQQAoAozQgIAAQX4gBHdxNgKM0ICAAAwCCyAHQRBBFCAHKAIQIANGG2ogBjYCACAGRQ0BCyAGIAc2AhgCQCADKAIQIgJFDQAgBiACNgIQIAIgBjYCGAsgAygCFCICRQ0AIAZBFGogAjYCACACIAY2AhgLIAEgAGogADYCACABIABBAXI2AgQgAUEAKAKc0ICAAEcNAUEAIAA2ApDQgIAADwsgAyACQX5xNgIEIAEgAGogADYCACABIABBAXI2AgQLAkAgAEH/AUsNACAAQXhxQbDQgIAAaiECAkACQEEAKAKI0ICAACIEQQEgAEEDdnQiAHENAEEAIAQgAHI2AojQgIAAIAIhAAwBCyACKAIIIQALIAAgATYCDCACIAE2AgggASACNgIMIAEgADYCCA8LQR8hAgJAIABB////B0sNACAAQQh2IgIgAkGA/j9qQRB2QQhxIgJ0IgQgBEGA4B9qQRB2QQRxIgR0IgYgBkGAgA9qQRB2QQJxIgZ0QQ92IAIgBHIgBnJrIgJBAXQgACACQRVqdkEBcXJBHGohAgsgASACNgIcIAFCADcCECACQQJ0QbjSgIAAaiEEAkACQEEAKAKM0ICAACIGQQEgAnQiA3ENACAEIAE2AgBBACAGIANyNgKM0ICAACABIAQ2AhggASABNgIIIAEgATYCDAwBCyAAQQBBGSACQQF2ayACQR9GG3QhAiAEKAIAIQYCQANAIAYiBCgCBEF4cSAARg0BIAJBHXYhBiACQQF0IQIgBCAGQQRxakEQaiIDKAIAIgYNAAsgAyABNgIAIAEgBDYCGCABIAE2AgwgASABNgIIDAELIAQoAggiACABNgIMIAQgATYCCCABQQA2AhggASAENgIMIAEgADYCCAtBAEEAKAKo0ICAAEF/aiIBQX8gARs2AqjQgIAACwsEAAAAC04AAkAgAA0APwBBEHQPCwJAIABB//8DcQ0AIABBf0wNAAJAIABBEHZAACIAQX9HDQBBAEEwNgL404CAAEF/DwsgAEEQdA8LEMqAgIAAAAvyAgIDfwF+AkAgAkUNACAAIAE6AAAgAiAAaiIDQX9qIAE6AAAgAkEDSQ0AIAAgAToAAiAAIAE6AAEgA0F9aiABOgAAIANBfmogAToAACACQQdJDQAgACABOgADIANBfGogAToAACACQQlJDQAgAEEAIABrQQNxIgRqIgMgAUH/AXFBgYKECGwiATYCACADIAIgBGtBfHEiBGoiAkF8aiABNgIAIARBCUkNACADIAE2AgggAyABNgIEIAJBeGogATYCACACQXRqIAE2AgAgBEEZSQ0AIAMgATYCGCADIAE2AhQgAyABNgIQIAMgATYCDCACQXBqIAE2AgAgAkFsaiABNgIAIAJBaGogATYCACACQWRqIAE2AgAgBCADQQRxQRhyIgVrIgJBIEkNACABrUKBgICAEH4hBiADIAVqIQEDQCABIAY3AxggASAGNwMQIAEgBjcDCCABIAY3AwAgAUEgaiEBIAJBYGoiAkEfSw0ACwsgAAsLjkgBAEGACAuGSAEAAAACAAAAAwAAAAAAAAAAAAAABAAAAAUAAAAAAAAAAAAAAAYAAAAHAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsb3NlZWVwLWFsaXZlAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgAAAAAAAAAAAAAAAAAAAHJhbnNmZXItZW5jb2RpbmdwZ3JhZGUNCg0KDQpTTQ0KDQpUVFAvQ0UvVFNQLwAAAAAAAAAAAAAAAAECAAEDAAAAAAAAAAAAAAAAAAAAAAAABAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAgAAAAACAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw=="},1891:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.enumToMap=void 0;function enumToMap(e){const t={};Object.keys(e).forEach((n=>{const s=e[n];if(typeof s==="number"){t[n]=s}}));return t}t.enumToMap=enumToMap},6771:(e,t,n)=>{"use strict";const{kClients:s}=n(2785);const i=n(7890);const{kAgent:o,kMockAgentSet:h,kMockAgentGet:l,kDispatches:u,kIsMockActive:g,kNetConnect:f,kGetNetConnect:E,kOptions:I,kFactory:C}=n(4347);const B=n(8687);const Q=n(6193);const{matchValue:p,buildMockOptions:y}=n(9323);const{InvalidArgumentError:w,UndiciError:b}=n(8045);const R=n(412);const k=n(8891);const _=n(6823);class FakeWeakRef{constructor(e){this.value=e}deref(){return this.value}}class MockAgent extends R{constructor(e){super(e);this[f]=true;this[g]=true;if(e&&e.agent&&typeof e.agent.dispatch!=="function"){throw new w("Argument opts.agent must implement Agent")}const t=e&&e.agent?e.agent:new i(e);this[o]=t;this[s]=t[s];this[I]=y(e)}get(e){let t=this[l](e);if(!t){t=this[C](e);this[h](e,t)}return t}dispatch(e,t){this.get(e.origin);return this[o].dispatch(e,t)}async close(){await this[o].close();this[s].clear()}deactivate(){this[g]=false}activate(){this[g]=true}enableNetConnect(e){if(typeof e==="string"||typeof e==="function"||e instanceof RegExp){if(Array.isArray(this[f])){this[f].push(e)}else{this[f]=[e]}}else if(typeof e==="undefined"){this[f]=true}else{throw new w("Unsupported matcher. Must be one of String|Function|RegExp.")}}disableNetConnect(){this[f]=false}get isMockActive(){return this[g]}[h](e,t){this[s].set(e,new FakeWeakRef(t))}[C](e){const t=Object.assign({agent:this},this[I]);return this[I]&&this[I].connections===1?new B(e,t):new Q(e,t)}[l](e){const t=this[s].get(e);if(t){return t.deref()}if(typeof e!=="string"){const t=this[C]("http://localhost:9999");this[h](e,t);return t}for(const[t,n]of Array.from(this[s])){const s=n.deref();if(s&&typeof t!=="string"&&p(t,e)){const t=this[C](e);this[h](e,t);t[u]=s[u];return t}}}[E](){return this[f]}pendingInterceptors(){const e=this[s];return Array.from(e.entries()).flatMap((([e,t])=>t.deref()[u].map((t=>({...t,origin:e}))))).filter((({pending:e})=>e))}assertNoPendingInterceptors({pendingInterceptorsFormatter:e=new _}={}){const t=this.pendingInterceptors();if(t.length===0){return}const n=new k("interceptor","interceptors").pluralize(t.length);throw new b(`\n${n.count} ${n.noun} ${n.is} pending:\n\n${e.format(t)}\n`.trim())}}e.exports=MockAgent},8687:(e,t,n)=>{"use strict";const{promisify:s}=n(3837);const i=n(3598);const{buildMockDispatch:o}=n(9323);const{kDispatches:h,kMockAgent:l,kClose:u,kOriginalClose:g,kOrigin:f,kOriginalDispatch:E,kConnected:I}=n(4347);const{MockInterceptor:C}=n(410);const B=n(2785);const{InvalidArgumentError:Q}=n(8045);class MockClient extends i{constructor(e,t){super(e,t);if(!t||!t.agent||typeof t.agent.dispatch!=="function"){throw new Q("Argument opts.agent must implement Agent")}this[l]=t.agent;this[f]=e;this[h]=[];this[I]=1;this[E]=this.dispatch;this[g]=this.close.bind(this);this.dispatch=o.call(this);this.close=this[u]}get[B.kConnected](){return this[I]}intercept(e){return new C(e,this[h])}async[u](){await s(this[g])();this[I]=0;this[l][B.kClients].delete(this[f])}}e.exports=MockClient},888:(e,t,n)=>{"use strict";const{UndiciError:s}=n(8045);class MockNotMatchedError extends s{constructor(e){super(e);Error.captureStackTrace(this,MockNotMatchedError);this.name="MockNotMatchedError";this.message=e||"The request does not match any registered mock dispatches";this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}}e.exports={MockNotMatchedError:MockNotMatchedError}},410:(e,t,n)=>{"use strict";const{getResponseData:s,buildKey:i,addMockDispatch:o}=n(9323);const{kDispatches:h,kDispatchKey:l,kDefaultHeaders:u,kDefaultTrailers:g,kContentLength:f,kMockDispatch:E}=n(4347);const{InvalidArgumentError:I}=n(8045);const{buildURL:C}=n(3983);class MockScope{constructor(e){this[E]=e}delay(e){if(typeof e!=="number"||!Number.isInteger(e)||e<=0){throw new I("waitInMs must be a valid integer > 0")}this[E].delay=e;return this}persist(){this[E].persist=true;return this}times(e){if(typeof e!=="number"||!Number.isInteger(e)||e<=0){throw new I("repeatTimes must be a valid integer > 0")}this[E].times=e;return this}}class MockInterceptor{constructor(e,t){if(typeof e!=="object"){throw new I("opts must be an object")}if(typeof e.path==="undefined"){throw new I("opts.path must be defined")}if(typeof e.method==="undefined"){e.method="GET"}if(typeof e.path==="string"){if(e.query){e.path=C(e.path,e.query)}else{const t=new URL(e.path,"data://");e.path=t.pathname+t.search}}if(typeof e.method==="string"){e.method=e.method.toUpperCase()}this[l]=i(e);this[h]=t;this[u]={};this[g]={};this[f]=false}createMockScopeDispatchData(e,t,n={}){const i=s(t);const o=this[f]?{"content-length":i.length}:{};const h={...this[u],...o,...n.headers};const l={...this[g],...n.trailers};return{statusCode:e,data:t,headers:h,trailers:l}}validateReplyParameters(e,t,n){if(typeof e==="undefined"){throw new I("statusCode must be defined")}if(typeof t==="undefined"){throw new I("data must be defined")}if(typeof n!=="object"){throw new I("responseOptions must be an object")}}reply(e){if(typeof e==="function"){const wrappedDefaultsCallback=t=>{const n=e(t);if(typeof n!=="object"){throw new I("reply options callback must return an object")}const{statusCode:s,data:i="",responseOptions:o={}}=n;this.validateReplyParameters(s,i,o);return{...this.createMockScopeDispatchData(s,i,o)}};const t=o(this[h],this[l],wrappedDefaultsCallback);return new MockScope(t)}const[t,n="",s={}]=[...arguments];this.validateReplyParameters(t,n,s);const i=this.createMockScopeDispatchData(t,n,s);const u=o(this[h],this[l],i);return new MockScope(u)}replyWithError(e){if(typeof e==="undefined"){throw new I("error must be defined")}const t=o(this[h],this[l],{error:e});return new MockScope(t)}defaultReplyHeaders(e){if(typeof e==="undefined"){throw new I("headers must be defined")}this[u]=e;return this}defaultReplyTrailers(e){if(typeof e==="undefined"){throw new I("trailers must be defined")}this[g]=e;return this}replyContentLength(){this[f]=true;return this}}e.exports.MockInterceptor=MockInterceptor;e.exports.MockScope=MockScope},6193:(e,t,n)=>{"use strict";const{promisify:s}=n(3837);const i=n(4634);const{buildMockDispatch:o}=n(9323);const{kDispatches:h,kMockAgent:l,kClose:u,kOriginalClose:g,kOrigin:f,kOriginalDispatch:E,kConnected:I}=n(4347);const{MockInterceptor:C}=n(410);const B=n(2785);const{InvalidArgumentError:Q}=n(8045);class MockPool extends i{constructor(e,t){super(e,t);if(!t||!t.agent||typeof t.agent.dispatch!=="function"){throw new Q("Argument opts.agent must implement Agent")}this[l]=t.agent;this[f]=e;this[h]=[];this[I]=1;this[E]=this.dispatch;this[g]=this.close.bind(this);this.dispatch=o.call(this);this.close=this[u]}get[B.kConnected](){return this[I]}intercept(e){return new C(e,this[h])}async[u](){await s(this[g])();this[I]=0;this[l][B.kClients].delete(this[f])}}e.exports=MockPool},4347:e=>{"use strict";e.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}},9323:(e,t,n)=>{"use strict";const{MockNotMatchedError:s}=n(888);const{kDispatches:i,kMockAgent:o,kOriginalDispatch:h,kOrigin:l,kGetNetConnect:u}=n(4347);const{buildURL:g,nop:f}=n(3983);const{STATUS_CODES:E}=n(3685);const{types:{isPromise:I}}=n(3837);function matchValue(e,t){if(typeof e==="string"){return e===t}if(e instanceof RegExp){return e.test(t)}if(typeof e==="function"){return e(t)===true}return false}function lowerCaseEntries(e){return Object.fromEntries(Object.entries(e).map((([e,t])=>[e.toLocaleLowerCase(),t])))}function getHeaderByName(e,t){if(Array.isArray(e)){for(let n=0;n!e)).filter((({path:e})=>matchValue(safeUrl(e),i)));if(o.length===0){throw new s(`Mock dispatch not matched for path '${i}'`)}o=o.filter((({method:e})=>matchValue(e,t.method)));if(o.length===0){throw new s(`Mock dispatch not matched for method '${t.method}'`)}o=o.filter((({body:e})=>typeof e!=="undefined"?matchValue(e,t.body):true));if(o.length===0){throw new s(`Mock dispatch not matched for body '${t.body}'`)}o=o.filter((e=>matchHeaders(e,t.headers)));if(o.length===0){throw new s(`Mock dispatch not matched for headers '${typeof t.headers==="object"?JSON.stringify(t.headers):t.headers}'`)}return o[0]}function addMockDispatch(e,t,n){const s={timesInvoked:0,times:1,persist:false,consumed:false};const i=typeof n==="function"?{callback:n}:{...n};const o={...s,...t,pending:true,data:{error:null,...i}};e.push(o);return o}function deleteMockDispatch(e,t){const n=e.findIndex((e=>{if(!e.consumed){return false}return matchKey(e,t)}));if(n!==-1){e.splice(n,1)}}function buildKey(e){const{path:t,method:n,body:s,headers:i,query:o}=e;return{path:t,method:n,body:s,headers:i,query:o}}function generateKeyValues(e){return Object.entries(e).reduce(((e,[t,n])=>[...e,Buffer.from(`${t}`),Array.isArray(n)?n.map((e=>Buffer.from(`${e}`))):Buffer.from(`${n}`)]),[])}function getStatusText(e){return E[e]||"unknown"}async function getResponse(e){const t=[];for await(const n of e){t.push(n)}return Buffer.concat(t).toString("utf8")}function mockDispatch(e,t){const n=buildKey(e);const s=getMockDispatch(this[i],n);s.timesInvoked++;if(s.data.callback){s.data={...s.data,...s.data.callback(e)}}const{data:{statusCode:o,data:h,headers:l,trailers:u,error:g},delay:E,persist:C}=s;const{timesInvoked:B,times:Q}=s;s.consumed=!C&&B>=Q;s.pending=B0){setTimeout((()=>{handleReply(this[i])}),E)}else{handleReply(this[i])}function handleReply(s,i=h){const g=Array.isArray(e.headers)?buildHeadersFromArray(e.headers):e.headers;const E=typeof i==="function"?i({...e,headers:g}):i;if(I(E)){E.then((e=>handleReply(s,e)));return}const C=getResponseData(E);const B=generateKeyValues(l);const Q=generateKeyValues(u);t.abort=f;t.onHeaders(o,B,resume,getStatusText(o));t.onData(Buffer.from(C));t.onComplete(Q);deleteMockDispatch(s,n)}function resume(){}return true}function buildMockDispatch(){const e=this[o];const t=this[l];const n=this[h];return function dispatch(i,o){if(e.isMockActive){try{mockDispatch.call(this,i,o)}catch(h){if(h instanceof s){const l=e[u]();if(l===false){throw new s(`${h.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`)}if(checkNetConnect(l,t)){n.call(this,i,o)}else{throw new s(`${h.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}}else{throw h}}}else{n.call(this,i,o)}}}function checkNetConnect(e,t){const n=new URL(t);if(e===true){return true}else if(Array.isArray(e)&&e.some((e=>matchValue(e,n.host)))){return true}return false}function buildMockOptions(e){if(e){const{agent:t,...n}=e;return n}}e.exports={getResponseData:getResponseData,getMockDispatch:getMockDispatch,addMockDispatch:addMockDispatch,deleteMockDispatch:deleteMockDispatch,buildKey:buildKey,generateKeyValues:generateKeyValues,matchValue:matchValue,getResponse:getResponse,getStatusText:getStatusText,mockDispatch:mockDispatch,buildMockDispatch:buildMockDispatch,checkNetConnect:checkNetConnect,buildMockOptions:buildMockOptions,getHeaderByName:getHeaderByName}},6823:(e,t,n)=>{"use strict";const{Transform:s}=n(2781);const{Console:i}=n(6206);e.exports=class PendingInterceptorsFormatter{constructor({disableColors:e}={}){this.transform=new s({transform(e,t,n){n(null,e)}});this.logger=new i({stdout:this.transform,inspectOptions:{colors:!e&&!process.env.CI}})}format(e){const t=e.map((({method:e,path:t,data:{statusCode:n},persist:s,times:i,timesInvoked:o,origin:h})=>({Method:e,Origin:h,Path:t,"Status code":n,Persistent:s?"✅":"❌",Invocations:o,Remaining:s?Infinity:i-o})));this.logger.table(t);return this.transform.read().toString()}}},8891:e=>{"use strict";const t={pronoun:"it",is:"is",was:"was",this:"this"};const n={pronoun:"they",is:"are",was:"were",this:"these"};e.exports=class Pluralizer{constructor(e,t){this.singular=e;this.plural=t}pluralize(e){const s=e===1;const i=s?t:n;const o=s?this.singular:this.plural;return{...i,count:e,noun:o}}}},8266:e=>{"use strict";const t=2048;const n=t-1;class FixedCircularBuffer{constructor(){this.bottom=0;this.top=0;this.list=new Array(t);this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&n)===this.bottom}push(e){this.list[this.top]=e;this.top=this.top+1&n}shift(){const e=this.list[this.bottom];if(e===undefined)return null;this.list[this.bottom]=undefined;this.bottom=this.bottom+1&n;return e}}e.exports=class FixedQueue{constructor(){this.head=this.tail=new FixedCircularBuffer}isEmpty(){return this.head.isEmpty()}push(e){if(this.head.isFull()){this.head=this.head.next=new FixedCircularBuffer}this.head.push(e)}shift(){const e=this.tail;const t=e.shift();if(e.isEmpty()&&e.next!==null){this.tail=e.next}return t}}},3198:(e,t,n)=>{"use strict";const s=n(4839);const i=n(8266);const{kConnected:o,kSize:h,kRunning:l,kPending:u,kQueued:g,kBusy:f,kFree:E,kUrl:I,kClose:C,kDestroy:B,kDispatch:Q}=n(2785);const p=n(9689);const y=Symbol("clients");const w=Symbol("needDrain");const b=Symbol("queue");const R=Symbol("closed resolve");const k=Symbol("onDrain");const _=Symbol("onConnect");const D=Symbol("onDisconnect");const U=Symbol("onConnectionError");const L=Symbol("get dispatcher");const v=Symbol("add client");const T=Symbol("remove client");const O=Symbol("stats");class PoolBase extends s{constructor(){super();this[b]=new i;this[y]=[];this[g]=0;const e=this;this[k]=function onDrain(t,n){const s=e[b];let i=false;while(!i){const t=s.shift();if(!t){break}e[g]--;i=!this.dispatch(t.opts,t.handler)}this[w]=i;if(!this[w]&&e[w]){e[w]=false;e.emit("drain",t,[e,...n])}if(e[R]&&s.isEmpty()){Promise.all(e[y].map((e=>e.close()))).then(e[R])}};this[_]=(t,n)=>{e.emit("connect",t,[e,...n])};this[D]=(t,n,s)=>{e.emit("disconnect",t,[e,...n],s)};this[U]=(t,n,s)=>{e.emit("connectionError",t,[e,...n],s)};this[O]=new p(this)}get[f](){return this[w]}get[o](){return this[y].filter((e=>e[o])).length}get[E](){return this[y].filter((e=>e[o]&&!e[w])).length}get[u](){let e=this[g];for(const{[u]:t}of this[y]){e+=t}return e}get[l](){let e=0;for(const{[l]:t}of this[y]){e+=t}return e}get[h](){let e=this[g];for(const{[h]:t}of this[y]){e+=t}return e}get stats(){return this[O]}async[C](){if(this[b].isEmpty()){return Promise.all(this[y].map((e=>e.close())))}else{return new Promise((e=>{this[R]=e}))}}async[B](e){while(true){const t=this[b].shift();if(!t){break}t.handler.onError(e)}return Promise.all(this[y].map((t=>t.destroy(e))))}[Q](e,t){const n=this[L]();if(!n){this[w]=true;this[b].push({opts:e,handler:t});this[g]++}else if(!n.dispatch(e,t)){n[w]=true;this[w]=!this[L]()}return!this[w]}[v](e){e.on("drain",this[k]).on("connect",this[_]).on("disconnect",this[D]).on("connectionError",this[U]);this[y].push(e);if(this[w]){process.nextTick((()=>{if(this[w]){this[k](e[I],[this,e])}}))}return this}[T](e){e.close((()=>{const t=this[y].indexOf(e);if(t!==-1){this[y].splice(t,1)}}));this[w]=this[y].some((e=>!e[w]&&e.closed!==true&&e.destroyed!==true))}}e.exports={PoolBase:PoolBase,kClients:y,kNeedDrain:w,kAddClient:v,kRemoveClient:T,kGetDispatcher:L}},9689:(e,t,n)=>{const{kFree:s,kConnected:i,kPending:o,kQueued:h,kRunning:l,kSize:u}=n(2785);const g=Symbol("pool");class PoolStats{constructor(e){this[g]=e}get connected(){return this[g][i]}get free(){return this[g][s]}get pending(){return this[g][o]}get queued(){return this[g][h]}get running(){return this[g][l]}get size(){return this[g][u]}}e.exports=PoolStats},4634:(e,t,n)=>{"use strict";const{PoolBase:s,kClients:i,kNeedDrain:o,kAddClient:h,kGetDispatcher:l}=n(3198);const u=n(3598);const{InvalidArgumentError:g}=n(8045);const f=n(3983);const{kUrl:E,kInterceptors:I}=n(2785);const C=n(2067);const B=Symbol("options");const Q=Symbol("connections");const p=Symbol("factory");function defaultFactory(e,t){return new u(e,t)}class Pool extends s{constructor(e,{connections:t,factory:n=defaultFactory,connect:s,connectTimeout:i,tls:o,maxCachedSessions:h,socketPath:l,autoSelectFamily:u,autoSelectFamilyAttemptTimeout:y,allowH2:w,...b}={}){super();if(t!=null&&(!Number.isFinite(t)||t<0)){throw new g("invalid connections")}if(typeof n!=="function"){throw new g("factory must be a function.")}if(s!=null&&typeof s!=="function"&&typeof s!=="object"){throw new g("connect must be a function or an object")}if(typeof s!=="function"){s=C({...o,maxCachedSessions:h,allowH2:w,socketPath:l,timeout:i,...f.nodeHasAutoSelectFamily&&u?{autoSelectFamily:u,autoSelectFamilyAttemptTimeout:y}:undefined,...s})}this[I]=b.interceptors&&b.interceptors.Pool&&Array.isArray(b.interceptors.Pool)?b.interceptors.Pool:[];this[Q]=t||null;this[E]=f.parseOrigin(e);this[B]={...f.deepClone(b),connect:s,allowH2:w};this[B].interceptors=b.interceptors?{...b.interceptors}:undefined;this[p]=n}[l](){let e=this[i].find((e=>!e[o]));if(e){return e}if(!this[Q]||this[i].length{"use strict";const{kProxy:s,kClose:i,kDestroy:o,kInterceptors:h}=n(2785);const{URL:l}=n(7310);const u=n(7890);const g=n(4634);const f=n(4839);const{InvalidArgumentError:E,RequestAbortedError:I}=n(8045);const C=n(2067);const B=Symbol("proxy agent");const Q=Symbol("proxy client");const p=Symbol("proxy headers");const y=Symbol("request tls settings");const w=Symbol("proxy tls settings");const b=Symbol("connect endpoint function");function defaultProtocolPort(e){return e==="https:"?443:80}function buildProxyOptions(e){if(typeof e==="string"){e={uri:e}}if(!e||!e.uri){throw new E("Proxy opts.uri is mandatory")}return{uri:e.uri,protocol:e.protocol||"https"}}function defaultFactory(e,t){return new g(e,t)}class ProxyAgent extends f{constructor(e){super(e);this[s]=buildProxyOptions(e);this[B]=new u(e);this[h]=e.interceptors&&e.interceptors.ProxyAgent&&Array.isArray(e.interceptors.ProxyAgent)?e.interceptors.ProxyAgent:[];if(typeof e==="string"){e={uri:e}}if(!e||!e.uri){throw new E("Proxy opts.uri is mandatory")}const{clientFactory:t=defaultFactory}=e;if(typeof t!=="function"){throw new E("Proxy opts.clientFactory must be a function.")}this[y]=e.requestTls;this[w]=e.proxyTls;this[p]=e.headers||{};if(e.auth&&e.token){throw new E("opts.auth cannot be used in combination with opts.token")}else if(e.auth){this[p]["proxy-authorization"]=`Basic ${e.auth}`}else if(e.token){this[p]["proxy-authorization"]=e.token}const n=new l(e.uri);const{origin:i,port:o,host:g}=n;const f=C({...e.proxyTls});this[b]=C({...e.requestTls});this[Q]=t(n,{connect:f});this[B]=new u({...e,connect:async(e,t)=>{let n=e.host;if(!e.port){n+=`:${defaultProtocolPort(e.protocol)}`}try{const{socket:s,statusCode:h}=await this[Q].connect({origin:i,port:o,path:n,signal:e.signal,headers:{...this[p],host:g}});if(h!==200){s.on("error",(()=>{})).destroy();t(new I("Proxy response !== 200 when HTTP Tunneling"))}if(e.protocol!=="https:"){t(null,s);return}let l;if(this[y]){l=this[y].servername}else{l=e.servername}this[b]({...e,servername:l,httpSocket:s},t)}catch(e){t(e)}}})}dispatch(e,t){const{host:n}=new l(e.origin);const s=buildHeaders(e.headers);throwIfProxyAuthIsSent(s);return this[B].dispatch({...e,headers:{...s,host:n}},t)}async[i](){await this[B].close();await this[Q].close()}async[o](){await this[B].destroy();await this[Q].destroy()}}function buildHeaders(e){if(Array.isArray(e)){const t={};for(let n=0;ne.toLowerCase()==="proxy-authorization"));if(t){throw new E("Proxy-Authorization should be sent in ProxyAgent constructor")}}e.exports=ProxyAgent},9459:e=>{"use strict";let t=Date.now();let n;const s=[];function onTimeout(){t=Date.now();let e=s.length;let n=0;while(n0&&t>=i.state){i.state=-1;i.callback(i.opaque)}if(i.state===-1){i.state=-2;if(n!==e-1){s[n]=s.pop()}else{s.pop()}e-=1}else{n+=1}}if(s.length>0){refreshTimeout()}}function refreshTimeout(){if(n&&n.refresh){n.refresh()}else{clearTimeout(n);n=setTimeout(onTimeout,1e3);if(n.unref){n.unref()}}}class Timeout{constructor(e,t,n){this.callback=e;this.delay=t;this.opaque=n;this.state=-2;this.refresh()}refresh(){if(this.state===-2){s.push(this);if(!n||s.length===1){refreshTimeout()}}this.state=0}clear(){this.state=-1}}e.exports={setTimeout(e,t,n){return t<1e3?setTimeout(e,t,n):new Timeout(e,t,n)},clearTimeout(e){if(e instanceof Timeout){e.clear()}else{clearTimeout(e)}}}},5354:(e,t,n)=>{"use strict";const s=n(7643);const{uid:i,states:o}=n(9188);const{kReadyState:h,kSentClose:l,kByteParser:u,kReceivedClose:g}=n(7578);const{fireEvent:f,failWebsocketConnection:E}=n(5515);const{CloseEvent:I}=n(2611);const{makeRequest:C}=n(8359);const{fetching:B}=n(4881);const{Headers:Q}=n(554);const{getGlobalDispatcher:p}=n(1892);const{kHeadersList:y}=n(2785);const w={};w.open=s.channel("undici:websocket:open");w.close=s.channel("undici:websocket:close");w.socketError=s.channel("undici:websocket:socket_error");let b;try{b=n(6113)}catch{}function establishWebSocketConnection(e,t,n,s,o){const h=e;h.protocol=e.protocol==="ws:"?"http:":"https:";const l=C({urlList:[h],serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(o.headers){const e=new Q(o.headers)[y];l.headersList=e}const u=b.randomBytes(16).toString("base64");l.headersList.append("sec-websocket-key",u);l.headersList.append("sec-websocket-version","13");for(const e of t){l.headersList.append("sec-websocket-protocol",e)}const g="";const f=B({request:l,useParallelQueue:true,dispatcher:o.dispatcher??p(),processResponse(e){if(e.type==="error"||e.status!==101){E(n,"Received network error or non-101 status code.");return}if(t.length!==0&&!e.headersList.get("Sec-WebSocket-Protocol")){E(n,"Server did not respond with sent protocols.");return}if(e.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){E(n,'Server did not set Upgrade header to "websocket".');return}if(e.headersList.get("Connection")?.toLowerCase()!=="upgrade"){E(n,'Server did not set Connection header to "upgrade".');return}const o=e.headersList.get("Sec-WebSocket-Accept");const h=b.createHash("sha1").update(u+i).digest("base64");if(o!==h){E(n,"Incorrect hash received in Sec-WebSocket-Accept header.");return}const f=e.headersList.get("Sec-WebSocket-Extensions");if(f!==null&&f!==g){E(n,"Received different permessage-deflate than the one set.");return}const I=e.headersList.get("Sec-WebSocket-Protocol");if(I!==null&&I!==l.headersList.get("Sec-WebSocket-Protocol")){E(n,"Protocol was not set in the opening handshake.");return}e.socket.on("data",onSocketData);e.socket.on("close",onSocketClose);e.socket.on("error",onSocketError);if(w.open.hasSubscribers){w.open.publish({address:e.socket.address(),protocol:I,extensions:f})}s(e)}});return f}function onSocketData(e){if(!this.ws[u].write(e)){this.pause()}}function onSocketClose(){const{ws:e}=this;const t=e[l]&&e[g];let n=1005;let s="";const i=e[u].closingInfo;if(i){n=i.code??1005;s=i.reason}else if(!e[l]){n=1006}e[h]=o.CLOSED;f("close",e,I,{wasClean:t,code:n,reason:s});if(w.close.hasSubscribers){w.close.publish({websocket:e,code:n,reason:s})}}function onSocketError(e){const{ws:t}=this;t[h]=o.CLOSING;if(w.socketError.hasSubscribers){w.socketError.publish(e)}this.destroy()}e.exports={establishWebSocketConnection:establishWebSocketConnection}},9188:e=>{"use strict";const t="258EAFA5-E914-47DA-95CA-C5AB0DC85B11";const n={enumerable:true,writable:false,configurable:false};const s={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};const i={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10};const o=2**16-1;const h={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4};const l=Buffer.allocUnsafe(0);e.exports={uid:t,staticPropertyDescriptors:n,states:s,opcodes:i,maxUnsigned16Bit:o,parserStates:h,emptyBuffer:l}},2611:(e,t,n)=>{"use strict";const{webidl:s}=n(1744);const{kEnumerableProperty:i}=n(3983);const{MessagePort:o}=n(1267);class MessageEvent extends Event{#s;constructor(e,t={}){s.argumentLengthCheck(arguments,1,{header:"MessageEvent constructor"});e=s.converters.DOMString(e);t=s.converters.MessageEventInit(t);super(e,t);this.#s=t}get data(){s.brandCheck(this,MessageEvent);return this.#s.data}get origin(){s.brandCheck(this,MessageEvent);return this.#s.origin}get lastEventId(){s.brandCheck(this,MessageEvent);return this.#s.lastEventId}get source(){s.brandCheck(this,MessageEvent);return this.#s.source}get ports(){s.brandCheck(this,MessageEvent);if(!Object.isFrozen(this.#s.ports)){Object.freeze(this.#s.ports)}return this.#s.ports}initMessageEvent(e,t=false,n=false,i=null,o="",h="",l=null,u=[]){s.brandCheck(this,MessageEvent);s.argumentLengthCheck(arguments,1,{header:"MessageEvent.initMessageEvent"});return new MessageEvent(e,{bubbles:t,cancelable:n,data:i,origin:o,lastEventId:h,source:l,ports:u})}}class CloseEvent extends Event{#s;constructor(e,t={}){s.argumentLengthCheck(arguments,1,{header:"CloseEvent constructor"});e=s.converters.DOMString(e);t=s.converters.CloseEventInit(t);super(e,t);this.#s=t}get wasClean(){s.brandCheck(this,CloseEvent);return this.#s.wasClean}get code(){s.brandCheck(this,CloseEvent);return this.#s.code}get reason(){s.brandCheck(this,CloseEvent);return this.#s.reason}}class ErrorEvent extends Event{#s;constructor(e,t){s.argumentLengthCheck(arguments,1,{header:"ErrorEvent constructor"});super(e,t);e=s.converters.DOMString(e);t=s.converters.ErrorEventInit(t??{});this.#s=t}get message(){s.brandCheck(this,ErrorEvent);return this.#s.message}get filename(){s.brandCheck(this,ErrorEvent);return this.#s.filename}get lineno(){s.brandCheck(this,ErrorEvent);return this.#s.lineno}get colno(){s.brandCheck(this,ErrorEvent);return this.#s.colno}get error(){s.brandCheck(this,ErrorEvent);return this.#s.error}}Object.defineProperties(MessageEvent.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:true},data:i,origin:i,lastEventId:i,source:i,ports:i,initMessageEvent:i});Object.defineProperties(CloseEvent.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:true},reason:i,code:i,wasClean:i});Object.defineProperties(ErrorEvent.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:true},message:i,filename:i,lineno:i,colno:i,error:i});s.converters.MessagePort=s.interfaceConverter(o);s.converters["sequence"]=s.sequenceConverter(s.converters.MessagePort);const h=[{key:"bubbles",converter:s.converters.boolean,defaultValue:false},{key:"cancelable",converter:s.converters.boolean,defaultValue:false},{key:"composed",converter:s.converters.boolean,defaultValue:false}];s.converters.MessageEventInit=s.dictionaryConverter([...h,{key:"data",converter:s.converters.any,defaultValue:null},{key:"origin",converter:s.converters.USVString,defaultValue:""},{key:"lastEventId",converter:s.converters.DOMString,defaultValue:""},{key:"source",converter:s.nullableConverter(s.converters.MessagePort),defaultValue:null},{key:"ports",converter:s.converters["sequence"],get defaultValue(){return[]}}]);s.converters.CloseEventInit=s.dictionaryConverter([...h,{key:"wasClean",converter:s.converters.boolean,defaultValue:false},{key:"code",converter:s.converters["unsigned short"],defaultValue:0},{key:"reason",converter:s.converters.USVString,defaultValue:""}]);s.converters.ErrorEventInit=s.dictionaryConverter([...h,{key:"message",converter:s.converters.DOMString,defaultValue:""},{key:"filename",converter:s.converters.USVString,defaultValue:""},{key:"lineno",converter:s.converters["unsigned long"],defaultValue:0},{key:"colno",converter:s.converters["unsigned long"],defaultValue:0},{key:"error",converter:s.converters.any}]);e.exports={MessageEvent:MessageEvent,CloseEvent:CloseEvent,ErrorEvent:ErrorEvent}},5444:(e,t,n)=>{"use strict";const{maxUnsigned16Bit:s}=n(9188);let i;try{i=n(6113)}catch{}class WebsocketFrameSend{constructor(e){this.frameData=e;this.maskKey=i.randomBytes(4)}createFrame(e){const t=this.frameData?.byteLength??0;let n=t;let i=6;if(t>s){i+=8;n=127}else if(t>125){i+=2;n=126}const o=Buffer.allocUnsafe(t+i);o[0]=o[1]=0;o[0]|=128;o[0]=(o[0]&240)+e; -/*! ws. MIT License. Einar Otto Stangvik */o[i-4]=this.maskKey[0];o[i-3]=this.maskKey[1];o[i-2]=this.maskKey[2];o[i-1]=this.maskKey[3];o[1]=n;if(n===126){o.writeUInt16BE(t,2)}else if(n===127){o[2]=o[3]=0;o.writeUIntBE(t,4,6)}o[1]|=128;for(let e=0;e{"use strict";const{Writable:s}=n(2781);const i=n(7643);const{parserStates:o,opcodes:h,states:l,emptyBuffer:u}=n(9188);const{kReadyState:g,kSentClose:f,kResponse:E,kReceivedClose:I}=n(7578);const{isValidStatusCode:C,failWebsocketConnection:B,websocketMessageReceived:Q}=n(5515);const{WebsocketFrameSend:p}=n(5444);const y={};y.ping=i.channel("undici:websocket:ping");y.pong=i.channel("undici:websocket:pong");class ByteParser extends s{#i=[];#o=0;#a=o.INFO;#c={};#h=[];constructor(e){super();this.ws=e}_write(e,t,n){this.#i.push(e);this.#o+=e.length;this.run(n)}run(e){while(true){if(this.#a===o.INFO){if(this.#o<2){return e()}const t=this.consume(2);this.#c.fin=(t[0]&128)!==0;this.#c.opcode=t[0]&15;this.#c.originalOpcode??=this.#c.opcode;this.#c.fragmented=!this.#c.fin&&this.#c.opcode!==h.CONTINUATION;if(this.#c.fragmented&&this.#c.opcode!==h.BINARY&&this.#c.opcode!==h.TEXT){B(this.ws,"Invalid frame type was fragmented.");return}const n=t[1]&127;if(n<=125){this.#c.payloadLength=n;this.#a=o.READ_DATA}else if(n===126){this.#a=o.PAYLOADLENGTH_16}else if(n===127){this.#a=o.PAYLOADLENGTH_64}if(this.#c.fragmented&&n>125){B(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#c.opcode===h.PING||this.#c.opcode===h.PONG||this.#c.opcode===h.CLOSE)&&n>125){B(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#c.opcode===h.CLOSE){if(n===1){B(this.ws,"Received close frame with a 1-byte body.");return}const e=this.consume(n);this.#c.closeInfo=this.parseCloseBody(false,e);if(!this.ws[f]){const e=Buffer.allocUnsafe(2);e.writeUInt16BE(this.#c.closeInfo.code,0);const t=new p(e);this.ws[E].socket.write(t.createFrame(h.CLOSE),(e=>{if(!e){this.ws[f]=true}}))}this.ws[g]=l.CLOSING;this.ws[I]=true;this.end();return}else if(this.#c.opcode===h.PING){const t=this.consume(n);if(!this.ws[I]){const e=new p(t);this.ws[E].socket.write(e.createFrame(h.PONG));if(y.ping.hasSubscribers){y.ping.publish({payload:t})}}this.#a=o.INFO;if(this.#o>0){continue}else{e();return}}else if(this.#c.opcode===h.PONG){const t=this.consume(n);if(y.pong.hasSubscribers){y.pong.publish({payload:t})}if(this.#o>0){continue}else{e();return}}}else if(this.#a===o.PAYLOADLENGTH_16){if(this.#o<2){return e()}const t=this.consume(2);this.#c.payloadLength=t.readUInt16BE(0);this.#a=o.READ_DATA}else if(this.#a===o.PAYLOADLENGTH_64){if(this.#o<8){return e()}const t=this.consume(8);const n=t.readUInt32BE(0);if(n>2**31-1){B(this.ws,"Received payload length > 2^31 bytes.");return}const s=t.readUInt32BE(4);this.#c.payloadLength=(n<<8)+s;this.#a=o.READ_DATA}else if(this.#a===o.READ_DATA){if(this.#o=this.#c.payloadLength){const e=this.consume(this.#c.payloadLength);this.#h.push(e);if(!this.#c.fragmented||this.#c.fin&&this.#c.opcode===h.CONTINUATION){const e=Buffer.concat(this.#h);Q(this.ws,this.#c.originalOpcode,e);this.#c={};this.#h.length=0}this.#a=o.INFO}}if(this.#o>0){continue}else{e();break}}}consume(e){if(e>this.#o){return null}else if(e===0){return u}if(this.#i[0].length===e){this.#o-=this.#i[0].length;return this.#i.shift()}const t=Buffer.allocUnsafe(e);let n=0;while(n!==e){const s=this.#i[0];const{length:i}=s;if(i+n===e){t.set(this.#i.shift(),n);break}else if(i+n>e){t.set(s.subarray(0,e-n),n);this.#i[0]=s.subarray(e-n);break}else{t.set(this.#i.shift(),n);n+=s.length}}this.#o-=e;return t}parseCloseBody(e,t){let n;if(t.length>=2){n=t.readUInt16BE(0)}if(e){if(!C(n)){return null}return{code:n}}let s=t.subarray(2);if(s[0]===239&&s[1]===187&&s[2]===191){s=s.subarray(3)}if(n!==undefined&&!C(n)){return null}try{s=new TextDecoder("utf-8",{fatal:true}).decode(s)}catch{return null}return{code:n,reason:s}}get closingInfo(){return this.#c.closeInfo}}e.exports={ByteParser:ByteParser}},7578:e=>{"use strict";e.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}},5515:(e,t,n)=>{"use strict";const{kReadyState:s,kController:i,kResponse:o,kBinaryType:h,kWebSocketURL:l}=n(7578);const{states:u,opcodes:g}=n(9188);const{MessageEvent:f,ErrorEvent:E}=n(2611);function isEstablished(e){return e[s]===u.OPEN}function isClosing(e){return e[s]===u.CLOSING}function isClosed(e){return e[s]===u.CLOSED}function fireEvent(e,t,n=Event,s){const i=new n(e,s);t.dispatchEvent(i)}function websocketMessageReceived(e,t,n){if(e[s]!==u.OPEN){return}let i;if(t===g.TEXT){try{i=new TextDecoder("utf-8",{fatal:true}).decode(n)}catch{failWebsocketConnection(e,"Received invalid UTF-8 in text frame.");return}}else if(t===g.BINARY){if(e[h]==="blob"){i=new Blob([n])}else{i=new Uint8Array(n).buffer}}fireEvent("message",e,f,{origin:e[l].origin,data:i})}function isValidSubprotocol(e){if(e.length===0){return false}for(const t of e){const e=t.charCodeAt(0);if(e<33||e>126||t==="("||t===")"||t==="<"||t===">"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"||e===32||e===9){return false}}return true}function isValidStatusCode(e){if(e>=1e3&&e<1015){return e!==1004&&e!==1005&&e!==1006}return e>=3e3&&e<=4999}function failWebsocketConnection(e,t){const{[i]:n,[o]:s}=e;n.abort();if(s?.socket&&!s.socket.destroyed){s.socket.destroy()}if(t){fireEvent("error",e,E,{error:new Error(t)})}}e.exports={isEstablished:isEstablished,isClosing:isClosing,isClosed:isClosed,fireEvent:fireEvent,isValidSubprotocol:isValidSubprotocol,isValidStatusCode:isValidStatusCode,failWebsocketConnection:failWebsocketConnection,websocketMessageReceived:websocketMessageReceived}},4284:(e,t,n)=>{"use strict";const{webidl:s}=n(1744);const{DOMException:i}=n(1037);const{URLSerializer:o}=n(685);const{getGlobalOrigin:h}=n(1246);const{staticPropertyDescriptors:l,states:u,opcodes:g,emptyBuffer:f}=n(9188);const{kWebSocketURL:E,kReadyState:I,kController:C,kBinaryType:B,kResponse:Q,kSentClose:p,kByteParser:y}=n(7578);const{isEstablished:w,isClosing:b,isValidSubprotocol:R,failWebsocketConnection:k,fireEvent:_}=n(5515);const{establishWebSocketConnection:D}=n(5354);const{WebsocketFrameSend:U}=n(5444);const{ByteParser:L}=n(1688);const{kEnumerableProperty:v,isBlobLike:T}=n(3983);const{getGlobalDispatcher:O}=n(1892);const{types:P}=n(3837);let x=false;class WebSocket extends EventTarget{#l={open:null,error:null,close:null,message:null};#u=0;#g="";#f="";constructor(e,t=[]){super();s.argumentLengthCheck(arguments,1,{header:"WebSocket constructor"});if(!x){x=true;process.emitWarning("WebSockets are experimental, expect them to change at any time.",{code:"UNDICI-WS"})}const n=s.converters["DOMString or sequence or WebSocketInit"](t);e=s.converters.USVString(e);t=n.protocols;const o=h();let l;try{l=new URL(e,o)}catch(e){throw new i(e,"SyntaxError")}if(l.protocol==="http:"){l.protocol="ws:"}else if(l.protocol==="https:"){l.protocol="wss:"}if(l.protocol!=="ws:"&&l.protocol!=="wss:"){throw new i(`Expected a ws: or wss: protocol, got ${l.protocol}`,"SyntaxError")}if(l.hash||l.href.endsWith("#")){throw new i("Got fragment","SyntaxError")}if(typeof t==="string"){t=[t]}if(t.length!==new Set(t.map((e=>e.toLowerCase()))).size){throw new i("Invalid Sec-WebSocket-Protocol value","SyntaxError")}if(t.length>0&&!t.every((e=>R(e)))){throw new i("Invalid Sec-WebSocket-Protocol value","SyntaxError")}this[E]=new URL(l.href);this[C]=D(l,t,this,(e=>this.#E(e)),n);this[I]=WebSocket.CONNECTING;this[B]="blob"}close(e=undefined,t=undefined){s.brandCheck(this,WebSocket);if(e!==undefined){e=s.converters["unsigned short"](e,{clamp:true})}if(t!==undefined){t=s.converters.USVString(t)}if(e!==undefined){if(e!==1e3&&(e<3e3||e>4999)){throw new i("invalid code","InvalidAccessError")}}let n=0;if(t!==undefined){n=Buffer.byteLength(t);if(n>123){throw new i(`Reason must be less than 123 bytes; received ${n}`,"SyntaxError")}}if(this[I]===WebSocket.CLOSING||this[I]===WebSocket.CLOSED){}else if(!w(this)){k(this,"Connection was closed before it was established.");this[I]=WebSocket.CLOSING}else if(!b(this)){const s=new U;if(e!==undefined&&t===undefined){s.frameData=Buffer.allocUnsafe(2);s.frameData.writeUInt16BE(e,0)}else if(e!==undefined&&t!==undefined){s.frameData=Buffer.allocUnsafe(2+n);s.frameData.writeUInt16BE(e,0);s.frameData.write(t,2,"utf-8")}else{s.frameData=f}const i=this[Q].socket;i.write(s.createFrame(g.CLOSE),(e=>{if(!e){this[p]=true}}));this[I]=u.CLOSING}else{this[I]=WebSocket.CLOSING}}send(e){s.brandCheck(this,WebSocket);s.argumentLengthCheck(arguments,1,{header:"WebSocket.send"});e=s.converters.WebSocketSendData(e);if(this[I]===WebSocket.CONNECTING){throw new i("Sent before connected.","InvalidStateError")}if(!w(this)||b(this)){return}const t=this[Q].socket;if(typeof e==="string"){const n=Buffer.from(e);const s=new U(n);const i=s.createFrame(g.TEXT);this.#u+=n.byteLength;t.write(i,(()=>{this.#u-=n.byteLength}))}else if(P.isArrayBuffer(e)){const n=Buffer.from(e);const s=new U(n);const i=s.createFrame(g.BINARY);this.#u+=n.byteLength;t.write(i,(()=>{this.#u-=n.byteLength}))}else if(ArrayBuffer.isView(e)){const n=Buffer.from(e,e.byteOffset,e.byteLength);const s=new U(n);const i=s.createFrame(g.BINARY);this.#u+=n.byteLength;t.write(i,(()=>{this.#u-=n.byteLength}))}else if(T(e)){const n=new U;e.arrayBuffer().then((e=>{const s=Buffer.from(e);n.frameData=s;const i=n.createFrame(g.BINARY);this.#u+=s.byteLength;t.write(i,(()=>{this.#u-=s.byteLength}))}))}}get readyState(){s.brandCheck(this,WebSocket);return this[I]}get bufferedAmount(){s.brandCheck(this,WebSocket);return this.#u}get url(){s.brandCheck(this,WebSocket);return o(this[E])}get extensions(){s.brandCheck(this,WebSocket);return this.#f}get protocol(){s.brandCheck(this,WebSocket);return this.#g}get onopen(){s.brandCheck(this,WebSocket);return this.#l.open}set onopen(e){s.brandCheck(this,WebSocket);if(this.#l.open){this.removeEventListener("open",this.#l.open)}if(typeof e==="function"){this.#l.open=e;this.addEventListener("open",e)}else{this.#l.open=null}}get onerror(){s.brandCheck(this,WebSocket);return this.#l.error}set onerror(e){s.brandCheck(this,WebSocket);if(this.#l.error){this.removeEventListener("error",this.#l.error)}if(typeof e==="function"){this.#l.error=e;this.addEventListener("error",e)}else{this.#l.error=null}}get onclose(){s.brandCheck(this,WebSocket);return this.#l.close}set onclose(e){s.brandCheck(this,WebSocket);if(this.#l.close){this.removeEventListener("close",this.#l.close)}if(typeof e==="function"){this.#l.close=e;this.addEventListener("close",e)}else{this.#l.close=null}}get onmessage(){s.brandCheck(this,WebSocket);return this.#l.message}set onmessage(e){s.brandCheck(this,WebSocket);if(this.#l.message){this.removeEventListener("message",this.#l.message)}if(typeof e==="function"){this.#l.message=e;this.addEventListener("message",e)}else{this.#l.message=null}}get binaryType(){s.brandCheck(this,WebSocket);return this[B]}set binaryType(e){s.brandCheck(this,WebSocket);if(e!=="blob"&&e!=="arraybuffer"){this[B]="blob"}else{this[B]=e}}#E(e){this[Q]=e;const t=new L(this);t.on("drain",(function onParserDrain(){this.ws[Q].socket.resume()}));e.socket.ws=this;this[y]=t;this[I]=u.OPEN;const n=e.headersList.get("sec-websocket-extensions");if(n!==null){this.#f=n}const s=e.headersList.get("sec-websocket-protocol");if(s!==null){this.#g=s}_("open",this)}}WebSocket.CONNECTING=WebSocket.prototype.CONNECTING=u.CONNECTING;WebSocket.OPEN=WebSocket.prototype.OPEN=u.OPEN;WebSocket.CLOSING=WebSocket.prototype.CLOSING=u.CLOSING;WebSocket.CLOSED=WebSocket.prototype.CLOSED=u.CLOSED;Object.defineProperties(WebSocket.prototype,{CONNECTING:l,OPEN:l,CLOSING:l,CLOSED:l,url:v,readyState:v,bufferedAmount:v,onopen:v,onerror:v,onclose:v,close:v,onmessage:v,binaryType:v,send:v,extensions:v,protocol:v,[Symbol.toStringTag]:{value:"WebSocket",writable:false,enumerable:false,configurable:true}});Object.defineProperties(WebSocket,{CONNECTING:l,OPEN:l,CLOSING:l,CLOSED:l});s.converters["sequence"]=s.sequenceConverter(s.converters.DOMString);s.converters["DOMString or sequence"]=function(e){if(s.util.Type(e)==="Object"&&Symbol.iterator in e){return s.converters["sequence"](e)}return s.converters.DOMString(e)};s.converters.WebSocketInit=s.dictionaryConverter([{key:"protocols",converter:s.converters["DOMString or sequence"],get defaultValue(){return[]}},{key:"dispatcher",converter:e=>e,get defaultValue(){return O()}},{key:"headers",converter:s.nullableConverter(s.converters.HeadersInit)}]);s.converters["DOMString or sequence or WebSocketInit"]=function(e){if(s.util.Type(e)==="Object"&&!(Symbol.iterator in e)){return s.converters.WebSocketInit(e)}return{protocols:s.converters["DOMString or sequence"](e)}};s.converters.WebSocketSendData=function(e){if(s.util.Type(e)==="Object"){if(T(e)){return s.converters.Blob(e,{strict:false})}if(ArrayBuffer.isView(e)||P.isAnyArrayBuffer(e)){return s.converters.BufferSource(e)}}return s.converters.USVString(e)};e.exports={WebSocket:WebSocket}},7127:(e,t,n)=>{e.exports=n(3837).deprecate},5840:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});Object.defineProperty(t,"v1",{enumerable:true,get:function(){return s.default}});Object.defineProperty(t,"v3",{enumerable:true,get:function(){return i.default}});Object.defineProperty(t,"v4",{enumerable:true,get:function(){return o.default}});Object.defineProperty(t,"v5",{enumerable:true,get:function(){return h.default}});Object.defineProperty(t,"NIL",{enumerable:true,get:function(){return l.default}});Object.defineProperty(t,"version",{enumerable:true,get:function(){return u.default}});Object.defineProperty(t,"validate",{enumerable:true,get:function(){return g.default}});Object.defineProperty(t,"stringify",{enumerable:true,get:function(){return f.default}});Object.defineProperty(t,"parse",{enumerable:true,get:function(){return E.default}});var s=_interopRequireDefault(n(8628));var i=_interopRequireDefault(n(6409));var o=_interopRequireDefault(n(5122));var h=_interopRequireDefault(n(9120));var l=_interopRequireDefault(n(5332));var u=_interopRequireDefault(n(1595));var g=_interopRequireDefault(n(6900));var f=_interopRequireDefault(n(8950));var E=_interopRequireDefault(n(2746));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}},4569:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(6113));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function md5(e){if(Array.isArray(e)){e=Buffer.from(e)}else if(typeof e==="string"){e=Buffer.from(e,"utf8")}return s.default.createHash("md5").update(e).digest()}var i=md5;t["default"]=i},5332:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var n="00000000-0000-0000-0000-000000000000";t["default"]=n},2746:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(6900));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function parse(e){if(!(0,s.default)(e)){throw TypeError("Invalid UUID")}let t;const n=new Uint8Array(16);n[0]=(t=parseInt(e.slice(0,8),16))>>>24;n[1]=t>>>16&255;n[2]=t>>>8&255;n[3]=t&255;n[4]=(t=parseInt(e.slice(9,13),16))>>>8;n[5]=t&255;n[6]=(t=parseInt(e.slice(14,18),16))>>>8;n[7]=t&255;n[8]=(t=parseInt(e.slice(19,23),16))>>>8;n[9]=t&255;n[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255;n[11]=t/4294967296&255;n[12]=t>>>24&255;n[13]=t>>>16&255;n[14]=t>>>8&255;n[15]=t&255;return n}var i=parse;t["default"]=i},814:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var n=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;t["default"]=n},807:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=rng;var s=_interopRequireDefault(n(6113));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const i=new Uint8Array(256);let o=i.length;function rng(){if(o>i.length-16){s.default.randomFillSync(i);o=0}return i.slice(o,o+=16)}},5274:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(6113));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function sha1(e){if(Array.isArray(e)){e=Buffer.from(e)}else if(typeof e==="string"){e=Buffer.from(e,"utf8")}return s.default.createHash("sha1").update(e).digest()}var i=sha1;t["default"]=i},8950:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(6900));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const i=[];for(let e=0;e<256;++e){i.push((e+256).toString(16).substr(1))}function stringify(e,t=0){const n=(i[e[t+0]]+i[e[t+1]]+i[e[t+2]]+i[e[t+3]]+"-"+i[e[t+4]]+i[e[t+5]]+"-"+i[e[t+6]]+i[e[t+7]]+"-"+i[e[t+8]]+i[e[t+9]]+"-"+i[e[t+10]]+i[e[t+11]]+i[e[t+12]]+i[e[t+13]]+i[e[t+14]]+i[e[t+15]]).toLowerCase();if(!(0,s.default)(n)){throw TypeError("Stringified UUID is invalid")}return n}var o=stringify;t["default"]=o},8628:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(807));var i=_interopRequireDefault(n(8950));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let o;let h;let l=0;let u=0;function v1(e,t,n){let g=t&&n||0;const f=t||new Array(16);e=e||{};let E=e.node||o;let I=e.clockseq!==undefined?e.clockseq:h;if(E==null||I==null){const t=e.random||(e.rng||s.default)();if(E==null){E=o=[t[0]|1,t[1],t[2],t[3],t[4],t[5]]}if(I==null){I=h=(t[6]<<8|t[7])&16383}}let C=e.msecs!==undefined?e.msecs:Date.now();let B=e.nsecs!==undefined?e.nsecs:u+1;const Q=C-l+(B-u)/1e4;if(Q<0&&e.clockseq===undefined){I=I+1&16383}if((Q<0||C>l)&&e.nsecs===undefined){B=0}if(B>=1e4){throw new Error("uuid.v1(): Can't create more than 10M uuids/sec")}l=C;u=B;h=I;C+=122192928e5;const p=((C&268435455)*1e4+B)%4294967296;f[g++]=p>>>24&255;f[g++]=p>>>16&255;f[g++]=p>>>8&255;f[g++]=p&255;const y=C/4294967296*1e4&268435455;f[g++]=y>>>8&255;f[g++]=y&255;f[g++]=y>>>24&15|16;f[g++]=y>>>16&255;f[g++]=I>>>8|128;f[g++]=I&255;for(let e=0;e<6;++e){f[g+e]=E[e]}return t||(0,i.default)(f)}var g=v1;t["default"]=g},6409:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(5998));var i=_interopRequireDefault(n(4569));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const o=(0,s.default)("v3",48,i.default);var h=o;t["default"]=h},5998:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=_default;t.URL=t.DNS=void 0;var s=_interopRequireDefault(n(8950));var i=_interopRequireDefault(n(2746));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function stringToBytes(e){e=unescape(encodeURIComponent(e));const t=[];for(let n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(807));var i=_interopRequireDefault(n(8950));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function v4(e,t,n){e=e||{};const o=e.random||(e.rng||s.default)();o[6]=o[6]&15|64;o[8]=o[8]&63|128;if(t){n=n||0;for(let e=0;e<16;++e){t[n+e]=o[e]}return t}return(0,i.default)(o)}var o=v4;t["default"]=o},9120:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(5998));var i=_interopRequireDefault(n(5274));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const o=(0,s.default)("v5",80,i.default);var h=o;t["default"]=h},6900:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(814));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function validate(e){return typeof e==="string"&&s.default.test(e)}var i=validate;t["default"]=i},1595:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(6900));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function version(e){if(!(0,s.default)(e)){throw TypeError("Invalid UUID")}return parseInt(e.substr(14,1),16)}var i=version;t["default"]=i},5185:e=>{class Node{constructor(e){this.value=e;this.next=undefined}}class Queue{constructor(){this.clear()}enqueue(e){const t=new Node(e);if(this._head){this._tail.next=t;this._tail=t}else{this._head=t;this._tail=t}this._size++}dequeue(){const e=this._head;if(!e){return}this._head=this._head.next;this._size--;return e.value}clear(){this._head=undefined;this._tail=undefined;this._size=0}get size(){return this._size}*[Symbol.iterator](){let e=this._head;while(e){yield e.value;e=e.next}}}e.exports=Queue},4240:(e,t,n)=>{e.exports=require(n.ab+"build/Release/cpufeatures.node")},9041:(e,t,n)=>{e.exports=require(n.ab+"lib/protocol/crypto/build/Release/sshcrypto.node")},9491:e=>{"use strict";e.exports=require("assert")},852:e=>{"use strict";e.exports=require("async_hooks")},4300:e=>{"use strict";e.exports=require("buffer")},2081:e=>{"use strict";e.exports=require("child_process")},6206:e=>{"use strict";e.exports=require("console")},6113:e=>{"use strict";e.exports=require("crypto")},7643:e=>{"use strict";e.exports=require("diagnostics_channel")},9523:e=>{"use strict";e.exports=require("dns")},2361:e=>{"use strict";e.exports=require("events")},7147:e=>{"use strict";e.exports=require("fs")},3685:e=>{"use strict";e.exports=require("http")},5158:e=>{"use strict";e.exports=require("http2")},5687:e=>{"use strict";e.exports=require("https")},1808:e=>{"use strict";e.exports=require("net")},5673:e=>{"use strict";e.exports=require("node:events")},4492:e=>{"use strict";e.exports=require("node:stream")},7261:e=>{"use strict";e.exports=require("node:util")},2037:e=>{"use strict";e.exports=require("os")},1017:e=>{"use strict";e.exports=require("path")},4074:e=>{"use strict";e.exports=require("perf_hooks")},3477:e=>{"use strict";e.exports=require("querystring")},2781:e=>{"use strict";e.exports=require("stream")},5356:e=>{"use strict";e.exports=require("stream/web")},1576:e=>{"use strict";e.exports=require("string_decoder")},4404:e=>{"use strict";e.exports=require("tls")},7310:e=>{"use strict";e.exports=require("url")},3837:e=>{"use strict";e.exports=require("util")},9830:e=>{"use strict";e.exports=require("util/types")},1267:e=>{"use strict";e.exports=require("worker_threads")},9796:e=>{"use strict";e.exports=require("zlib")},2960:(e,t,n)=>{"use strict";const s=n(4492).Writable;const i=n(7261).inherits;const o=n(1142);const h=n(1620);const l=n(2032);const u=45;const g=Buffer.from("-");const f=Buffer.from("\r\n");const EMPTY_FN=function(){};function Dicer(e){if(!(this instanceof Dicer)){return new Dicer(e)}s.call(this,e);if(!e||!e.headerFirst&&typeof e.boundary!=="string"){throw new TypeError("Boundary required")}if(typeof e.boundary==="string"){this.setBoundary(e.boundary)}else{this._bparser=undefined}this._headerFirst=e.headerFirst;this._dashes=0;this._parts=0;this._finished=false;this._realFinish=false;this._isPreamble=true;this._justMatched=false;this._firstWrite=true;this._inHeader=true;this._part=undefined;this._cb=undefined;this._ignoreData=false;this._partOpts={highWaterMark:e.partHwm};this._pause=false;const t=this;this._hparser=new l(e);this._hparser.on("header",(function(e){t._inHeader=false;t._part.emit("header",e)}))}i(Dicer,s);Dicer.prototype.emit=function(e){if(e==="finish"&&!this._realFinish){if(!this._finished){const e=this;process.nextTick((function(){e.emit("error",new Error("Unexpected end of multipart data"));if(e._part&&!e._ignoreData){const t=e._isPreamble?"Preamble":"Part";e._part.emit("error",new Error(t+" terminated early due to unexpected end of multipart data"));e._part.push(null);process.nextTick((function(){e._realFinish=true;e.emit("finish");e._realFinish=false}));return}e._realFinish=true;e.emit("finish");e._realFinish=false}))}}else{s.prototype.emit.apply(this,arguments)}};Dicer.prototype._write=function(e,t,n){if(!this._hparser&&!this._bparser){return n()}if(this._headerFirst&&this._isPreamble){if(!this._part){this._part=new h(this._partOpts);if(this._events.preamble){this.emit("preamble",this._part)}else{this._ignore()}}const t=this._hparser.push(e);if(!this._inHeader&&t!==undefined&&t{"use strict";const s=n(5673).EventEmitter;const i=n(7261).inherits;const o=n(1467);const h=n(1142);const l=Buffer.from("\r\n\r\n");const u=/\r\n/g;const g=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function HeaderParser(e){s.call(this);e=e||{};const t=this;this.nread=0;this.maxed=false;this.npairs=0;this.maxHeaderPairs=o(e,"maxHeaderPairs",2e3);this.maxHeaderSize=o(e,"maxHeaderSize",80*1024);this.buffer="";this.header={};this.finished=false;this.ss=new h(l);this.ss.on("info",(function(e,n,s,i){if(n&&!t.maxed){if(t.nread+i-s>=t.maxHeaderSize){i=t.maxHeaderSize-t.nread+s;t.nread=t.maxHeaderSize;t.maxed=true}else{t.nread+=i-s}t.buffer+=n.toString("binary",s,i)}if(e){t._finish()}}))}i(HeaderParser,s);HeaderParser.prototype.push=function(e){const t=this.ss.push(e);if(this.finished){return t}};HeaderParser.prototype.reset=function(){this.finished=false;this.buffer="";this.header={};this.ss.reset()};HeaderParser.prototype._finish=function(){if(this.buffer){this._parseHeader()}this.ss.matches=this.ss.maxMatches;const e=this.header;this.header={};this.buffer="";this.finished=true;this.nread=this.npairs=0;this.maxed=false;this.emit("header",e)};HeaderParser.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs){return}const e=this.buffer.split(u);const t=e.length;let n,s;for(var i=0;i{"use strict";const s=n(7261).inherits;const i=n(4492).Readable;function PartStream(e){i.call(this,e)}s(PartStream,i);PartStream.prototype._read=function(e){};e.exports=PartStream},1142:(e,t,n)=>{"use strict";const s=n(5673).EventEmitter;const i=n(7261).inherits;function SBMH(e){if(typeof e==="string"){e=Buffer.from(e)}if(!Buffer.isBuffer(e)){throw new TypeError("The needle has to be a String or a Buffer.")}const t=e.length;if(t===0){throw new Error("The needle cannot be an empty String/Buffer.")}if(t>256){throw new Error("The needle cannot have a length bigger than 256.")}this.maxMatches=Infinity;this.matches=0;this._occ=new Array(256).fill(t);this._lookbehind_size=0;this._needle=e;this._bufpos=0;this._lookbehind=Buffer.alloc(t);for(var n=0;n=0){this.emit("info",false,this._lookbehind,0,this._lookbehind_size);this._lookbehind_size=0}else{const n=this._lookbehind_size+o;if(n>0){this.emit("info",false,this._lookbehind,0,n)}this._lookbehind.copy(this._lookbehind,0,n,this._lookbehind_size-n);this._lookbehind_size-=n;e.copy(this._lookbehind,this._lookbehind_size);this._lookbehind_size+=t;this._bufpos=t;return t}}o+=(o>=0)*this._bufpos;if(e.indexOf(n,o)!==-1){o=e.indexOf(n,o);++this.matches;if(o>0){this.emit("info",true,e,this._bufpos,o)}else{this.emit("info",true)}return this._bufpos=o+s}else{o=t-s}while(o0){this.emit("info",false,e,this._bufpos,o{"use strict";const s=n(4492).Writable;const{inherits:i}=n(7261);const o=n(2960);const h=n(2183);const l=n(8306);const u=n(1854);function Busboy(e){if(!(this instanceof Busboy)){return new Busboy(e)}if(typeof e!=="object"){throw new TypeError("Busboy expected an options-Object.")}if(typeof e.headers!=="object"){throw new TypeError("Busboy expected an options-Object with headers-attribute.")}if(typeof e.headers["content-type"]!=="string"){throw new TypeError("Missing Content-Type-header.")}const{headers:t,...n}=e;this.opts={autoDestroy:false,...n};s.call(this,this.opts);this._done=false;this._parser=this.getParserByHeaders(t);this._finished=false}i(Busboy,s);Busboy.prototype.emit=function(e){if(e==="finish"){if(!this._done){this._parser?.end();return}else if(this._finished){return}this._finished=true}s.prototype.emit.apply(this,arguments)};Busboy.prototype.getParserByHeaders=function(e){const t=u(e["content-type"]);const n={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(h.detect.test(t[0])){return new h(this,n)}if(l.detect.test(t[0])){return new l(this,n)}throw new Error("Unsupported Content-Type.")};Busboy.prototype._write=function(e,t,n){this._parser.write(e,n)};e.exports=Busboy;e.exports["default"]=Busboy;e.exports.Busboy=Busboy;e.exports.Dicer=o},2183:(e,t,n)=>{"use strict";const{Readable:s}=n(4492);const{inherits:i}=n(7261);const o=n(2960);const h=n(1854);const l=n(4619);const u=n(8647);const g=n(1467);const f=/^boundary$/i;const E=/^form-data$/i;const I=/^charset$/i;const C=/^filename$/i;const B=/^name$/i;Multipart.detect=/^multipart\/form-data/i;function Multipart(e,t){let n;let s;const i=this;let Q;const p=t.limits;const y=t.isPartAFile||((e,t,n)=>t==="application/octet-stream"||n!==undefined);const w=t.parsedConType||[];const b=t.defCharset||"utf8";const R=t.preservePath;const k={highWaterMark:t.fileHwm};for(n=0,s=w.length;nv){i.parser.removeListener("part",onPart);i.parser.on("part",skipPart);e.hitPartsLimit=true;e.emit("partsLimit");return skipPart(t)}if(J){const e=J;e.emit("end");e.removeAllListeners("end")}t.on("header",(function(o){let g;let f;let Q;let p;let w;let v;let T=0;if(o["content-type"]){Q=h(o["content-type"][0]);if(Q[0]){g=Q[0].toLowerCase();for(n=0,s=Q.length;nD){const s=D-T+e.length;if(s>0){n.push(e.slice(0,s))}n.truncated=true;n.bytesRead=D;t.removeAllListeners("data");n.emit("limit");return}else if(!n.push(e)){i._pause=true}n.bytesRead=T};W=function(){G=undefined;n.push(null)}}else{if(x===L){if(!e.hitFieldsLimit){e.hitFieldsLimit=true;e.emit("fieldsLimit")}return skipPart(t)}++x;++Y;let n="";let s=false;J=t;O=function(e){if((T+=e.length)>_){const i=_-(T-e.length);n+=e.toString("binary",0,i);s=true;t.removeAllListeners("data")}else{n+=e.toString("binary")}};W=function(){J=undefined;if(n.length){n=l(n,"binary",p)}e.emit("field",f,n,false,s,w,g);--Y;checkFinished()}}t._readableState.sync=false;t.on("data",O);t.on("end",W)})).on("error",(function(e){if(G){G.emit("error",e)}}))})).on("error",(function(t){e.emit("error",t)})).on("finish",(function(){W=true;checkFinished()}))}Multipart.prototype.write=function(e,t){const n=this.parser.write(e);if(n&&!this._pause){t()}else{this._needDrain=!n;this._cb=t}};Multipart.prototype.end=function(){const e=this;if(e.parser.writable){e.parser.end()}else if(!e._boy._done){process.nextTick((function(){e._boy._done=true;e._boy.emit("finish")}))}};function skipPart(e){e.resume()}function FileStream(e){s.call(this,e);this.bytesRead=0;this.truncated=false}i(FileStream,s);FileStream.prototype._read=function(e){};e.exports=Multipart},8306:(e,t,n)=>{"use strict";const s=n(7100);const i=n(4619);const o=n(1467);const h=/^charset$/i;UrlEncoded.detect=/^application\/x-www-form-urlencoded/i;function UrlEncoded(e,t){const n=t.limits;const i=t.parsedConType;this.boy=e;this.fieldSizeLimit=o(n,"fieldSize",1*1024*1024);this.fieldNameSizeLimit=o(n,"fieldNameSize",100);this.fieldsLimit=o(n,"fields",Infinity);let l;for(var u=0,g=i.length;uh){this._key+=this.decoder.write(e.toString("binary",h,n))}this._state="val";this._hitLimit=false;this._checkingBytes=true;this._val="";this._bytesVal=0;this._valTrunc=false;this.decoder.reset();h=n+1}else if(s!==undefined){++this._fields;let n;const o=this._keyTrunc;if(s>h){n=this._key+=this.decoder.write(e.toString("binary",h,s))}else{n=this._key}this._hitLimit=false;this._checkingBytes=true;this._key="";this._bytesKey=0;this._keyTrunc=false;this.decoder.reset();if(n.length){this.boy.emit("field",i(n,"binary",this.charset),"",o,false)}h=s+1;if(this._fields===this.fieldsLimit){return t()}}else if(this._hitLimit){if(o>h){this._key+=this.decoder.write(e.toString("binary",h,o))}h=o;if((this._bytesKey=this._key.length)===this.fieldNameSizeLimit){this._checkingBytes=false;this._keyTrunc=true}}else{if(hh){this._val+=this.decoder.write(e.toString("binary",h,s))}this.boy.emit("field",i(this._key,"binary",this.charset),i(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc);this._state="key";this._hitLimit=false;this._checkingBytes=true;this._key="";this._bytesKey=0;this._keyTrunc=false;this.decoder.reset();h=s+1;if(this._fields===this.fieldsLimit){return t()}}else if(this._hitLimit){if(o>h){this._val+=this.decoder.write(e.toString("binary",h,o))}h=o;if(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit){this._checkingBytes=false;this._valTrunc=true}}else{if(h0){this.boy.emit("field",i(this._key,"binary",this.charset),"",this._keyTrunc,false)}else if(this._state==="val"){this.boy.emit("field",i(this._key,"binary",this.charset),i(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc)}this.boy._done=true;this.boy.emit("finish")};e.exports=UrlEncoded},7100:e=>{"use strict";const t=/\+/g;const n=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];function Decoder(){this.buffer=undefined}Decoder.prototype.write=function(e){e=e.replace(t," ");let s="";let i=0;let o=0;const h=e.length;for(;io){s+=e.substring(o,i);o=i}this.buffer="";++o}}if(o{"use strict";e.exports=function basename(e){if(typeof e!=="string"){return""}for(var t=e.length-1;t>=0;--t){switch(e.charCodeAt(t)){case 47:case 92:e=e.slice(t+1);return e===".."||e==="."?"":e}}return e===".."||e==="."?"":e}},4619:function(e){"use strict";const t=new TextDecoder("utf-8");const n=new Map([["utf-8",t],["utf8",t]]);function getDecoder(e){let t;while(true){switch(e){case"utf-8":case"utf8":return s.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return s.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return s.utf16le;case"base64":return s.base64;default:if(t===undefined){t=true;e=e.toLowerCase();continue}return s.other.bind(e)}}}const s={utf8:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){e=Buffer.from(e,t)}return e.utf8Slice(0,e.length)},latin1:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){return e}return e.latin1Slice(0,e.length)},utf16le:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){e=Buffer.from(e,t)}return e.ucs2Slice(0,e.length)},base64:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){e=Buffer.from(e,t)}return e.base64Slice(0,e.length)},other:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){e=Buffer.from(e,t)}if(n.has(this.toString())){try{return n.get(this).decode(e)}catch(e){}}return typeof e==="string"?e:e.toString()}};function decodeText(e,t,n){if(e){return getDecoder(n)(e,t)}return e}e.exports=decodeText},1467:e=>{"use strict";e.exports=function getLimit(e,t,n){if(!e||e[t]===undefined||e[t]===null){return n}if(typeof e[t]!=="number"||isNaN(e[t])){throw new TypeError("Limit "+t+" is not a valid number")}return e[t]}},1854:(e,t,n)=>{"use strict";const s=n(4619);const i=/%[a-fA-F0-9][a-fA-F0-9]/g;const o={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"","%08":"\b","%09":"\t","%0a":"\n","%0A":"\n","%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"","%1B":"","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"","%7F":"","%80":"€","%81":"","%82":"‚","%83":"ƒ","%84":"„","%85":"…","%86":"†","%87":"‡","%88":"ˆ","%89":"‰","%8a":"Š","%8A":"Š","%8b":"‹","%8B":"‹","%8c":"Œ","%8C":"Œ","%8d":"","%8D":"","%8e":"Ž","%8E":"Ž","%8f":"","%8F":"","%90":"","%91":"‘","%92":"’","%93":"“","%94":"”","%95":"•","%96":"–","%97":"—","%98":"˜","%99":"™","%9a":"š","%9A":"š","%9b":"›","%9B":"›","%9c":"œ","%9C":"œ","%9d":"","%9D":"","%9e":"ž","%9E":"ž","%9f":"Ÿ","%9F":"Ÿ","%a0":" ","%A0":" ","%a1":"¡","%A1":"¡","%a2":"¢","%A2":"¢","%a3":"£","%A3":"£","%a4":"¤","%A4":"¤","%a5":"¥","%A5":"¥","%a6":"¦","%A6":"¦","%a7":"§","%A7":"§","%a8":"¨","%A8":"¨","%a9":"©","%A9":"©","%aa":"ª","%Aa":"ª","%aA":"ª","%AA":"ª","%ab":"«","%Ab":"«","%aB":"«","%AB":"«","%ac":"¬","%Ac":"¬","%aC":"¬","%AC":"¬","%ad":"­","%Ad":"­","%aD":"­","%AD":"­","%ae":"®","%Ae":"®","%aE":"®","%AE":"®","%af":"¯","%Af":"¯","%aF":"¯","%AF":"¯","%b0":"°","%B0":"°","%b1":"±","%B1":"±","%b2":"²","%B2":"²","%b3":"³","%B3":"³","%b4":"´","%B4":"´","%b5":"µ","%B5":"µ","%b6":"¶","%B6":"¶","%b7":"·","%B7":"·","%b8":"¸","%B8":"¸","%b9":"¹","%B9":"¹","%ba":"º","%Ba":"º","%bA":"º","%BA":"º","%bb":"»","%Bb":"»","%bB":"»","%BB":"»","%bc":"¼","%Bc":"¼","%bC":"¼","%BC":"¼","%bd":"½","%Bd":"½","%bD":"½","%BD":"½","%be":"¾","%Be":"¾","%bE":"¾","%BE":"¾","%bf":"¿","%Bf":"¿","%bF":"¿","%BF":"¿","%c0":"À","%C0":"À","%c1":"Á","%C1":"Á","%c2":"Â","%C2":"Â","%c3":"Ã","%C3":"Ã","%c4":"Ä","%C4":"Ä","%c5":"Å","%C5":"Å","%c6":"Æ","%C6":"Æ","%c7":"Ç","%C7":"Ç","%c8":"È","%C8":"È","%c9":"É","%C9":"É","%ca":"Ê","%Ca":"Ê","%cA":"Ê","%CA":"Ê","%cb":"Ë","%Cb":"Ë","%cB":"Ë","%CB":"Ë","%cc":"Ì","%Cc":"Ì","%cC":"Ì","%CC":"Ì","%cd":"Í","%Cd":"Í","%cD":"Í","%CD":"Í","%ce":"Î","%Ce":"Î","%cE":"Î","%CE":"Î","%cf":"Ï","%Cf":"Ï","%cF":"Ï","%CF":"Ï","%d0":"Ð","%D0":"Ð","%d1":"Ñ","%D1":"Ñ","%d2":"Ò","%D2":"Ò","%d3":"Ó","%D3":"Ó","%d4":"Ô","%D4":"Ô","%d5":"Õ","%D5":"Õ","%d6":"Ö","%D6":"Ö","%d7":"×","%D7":"×","%d8":"Ø","%D8":"Ø","%d9":"Ù","%D9":"Ù","%da":"Ú","%Da":"Ú","%dA":"Ú","%DA":"Ú","%db":"Û","%Db":"Û","%dB":"Û","%DB":"Û","%dc":"Ü","%Dc":"Ü","%dC":"Ü","%DC":"Ü","%dd":"Ý","%Dd":"Ý","%dD":"Ý","%DD":"Ý","%de":"Þ","%De":"Þ","%dE":"Þ","%DE":"Þ","%df":"ß","%Df":"ß","%dF":"ß","%DF":"ß","%e0":"à","%E0":"à","%e1":"á","%E1":"á","%e2":"â","%E2":"â","%e3":"ã","%E3":"ã","%e4":"ä","%E4":"ä","%e5":"å","%E5":"å","%e6":"æ","%E6":"æ","%e7":"ç","%E7":"ç","%e8":"è","%E8":"è","%e9":"é","%E9":"é","%ea":"ê","%Ea":"ê","%eA":"ê","%EA":"ê","%eb":"ë","%Eb":"ë","%eB":"ë","%EB":"ë","%ec":"ì","%Ec":"ì","%eC":"ì","%EC":"ì","%ed":"í","%Ed":"í","%eD":"í","%ED":"í","%ee":"î","%Ee":"î","%eE":"î","%EE":"î","%ef":"ï","%Ef":"ï","%eF":"ï","%EF":"ï","%f0":"ð","%F0":"ð","%f1":"ñ","%F1":"ñ","%f2":"ò","%F2":"ò","%f3":"ó","%F3":"ó","%f4":"ô","%F4":"ô","%f5":"õ","%F5":"õ","%f6":"ö","%F6":"ö","%f7":"÷","%F7":"÷","%f8":"ø","%F8":"ø","%f9":"ù","%F9":"ù","%fa":"ú","%Fa":"ú","%fA":"ú","%FA":"ú","%fb":"û","%Fb":"û","%fB":"û","%FB":"û","%fc":"ü","%Fc":"ü","%fC":"ü","%FC":"ü","%fd":"ý","%Fd":"ý","%fD":"ý","%FD":"ý","%fe":"þ","%Fe":"þ","%fE":"þ","%FE":"þ","%ff":"ÿ","%Ff":"ÿ","%fF":"ÿ","%FF":"ÿ"};function encodedReplacer(e){return o[e]}const h=0;const l=1;const u=2;const g=3;function parseParams(e){const t=[];let n=h;let o="";let f=false;let E=false;let I=0;let C="";const B=e.length;for(var Q=0;Q{assertValidPattern(t);if(!n.nocomment&&t.charAt(0)==="#"){return false}return new Minimatch(t,n).match(e)};t.minimatch=minimatch;t["default"]=t.minimatch;const i=/^\*+([^+@!?\*\[\(]*)$/;const starDotExtTest=e=>t=>!t.startsWith(".")&&t.endsWith(e);const starDotExtTestDot=e=>t=>t.endsWith(e);const starDotExtTestNocase=e=>{e=e.toLowerCase();return t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)};const starDotExtTestNocaseDot=e=>{e=e.toLowerCase();return t=>t.toLowerCase().endsWith(e)};const o=/^\*+\.\*+$/;const starDotStarTest=e=>!e.startsWith(".")&&e.includes(".");const starDotStarTestDot=e=>e!=="."&&e!==".."&&e.includes(".");const h=/^\.\*+$/;const dotStarTest=e=>e!=="."&&e!==".."&&e.startsWith(".");const l=/^\*+$/;const starTest=e=>e.length!==0&&!e.startsWith(".");const starTestDot=e=>e.length!==0&&e!=="."&&e!=="..";const u=/^\?+([^+@!?\*\[\(]*)?$/;const qmarksTestNocase=([e,t=""])=>{const n=qmarksTestNoExt([e]);if(!t)return n;t=t.toLowerCase();return e=>n(e)&&e.toLowerCase().endsWith(t)};const qmarksTestNocaseDot=([e,t=""])=>{const n=qmarksTestNoExtDot([e]);if(!t)return n;t=t.toLowerCase();return e=>n(e)&&e.toLowerCase().endsWith(t)};const qmarksTestDot=([e,t=""])=>{const n=qmarksTestNoExtDot([e]);return!t?n:e=>n(e)&&e.endsWith(t)};const qmarksTest=([e,t=""])=>{const n=qmarksTestNoExt([e]);return!t?n:e=>n(e)&&e.endsWith(t)};const qmarksTestNoExt=([e])=>{const t=e.length;return e=>e.length===t&&!e.startsWith(".")};const qmarksTestNoExtDot=([e])=>{const t=e.length;return e=>e.length===t&&e!=="."&&e!==".."};const g=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix";const f=g==="win32";const E=f?{sep:"\\"}:{sep:"/"};t.sep=E.sep;t.minimatch.sep=t.sep;t.GLOBSTAR=Symbol("globstar **");t.minimatch.GLOBSTAR=t.GLOBSTAR;const I=s(n(3717));const C={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}};const B="[^/]";const Q=B+"*?";const p="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";const y="(?:(?!(?:\\/|^)\\.).)*?";const charSet=e=>e.split("").reduce(((e,t)=>{e[t]=true;return e}),{});const w=charSet("().*{}+?[]^$\\!");const b=charSet("[.(");const filter=(e,n={})=>s=>(0,t.minimatch)(s,e,n);t.filter=filter;t.minimatch.filter=t.filter;const ext=(e,t={})=>Object.assign({},e,t);const defaults=e=>{if(!e||typeof e!=="object"||!Object.keys(e).length){return t.minimatch}const n=t.minimatch;const m=(t,s,i={})=>n(t,s,ext(e,i));return Object.assign(m,{Minimatch:class Minimatch extends n.Minimatch{constructor(t,n={}){super(t,ext(e,n))}static defaults(t){return n.defaults(ext(e,t)).Minimatch}},filter:(t,s={})=>n.filter(t,ext(e,s)),defaults:t=>n.defaults(ext(e,t)),makeRe:(t,s={})=>n.makeRe(t,ext(e,s)),braceExpand:(t,s={})=>n.braceExpand(t,ext(e,s)),match:(t,s,i={})=>n.match(t,s,ext(e,i)),sep:n.sep,GLOBSTAR:t.GLOBSTAR})};t.defaults=defaults;t.minimatch.defaults=t.defaults;const braceExpand=(e,t={})=>{assertValidPattern(e);if(t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)){return[e]}return(0,I.default)(e)};t.braceExpand=braceExpand;t.minimatch.braceExpand=t.braceExpand;const R=1024*64;const assertValidPattern=e=>{if(typeof e!=="string"){throw new TypeError("invalid pattern")}if(e.length>R){throw new TypeError("pattern is too long")}};const k=Symbol("subparse");const makeRe=(e,t={})=>new Minimatch(e,t).makeRe();t.makeRe=makeRe;t.minimatch.makeRe=t.makeRe;const match=(e,t,n={})=>{const s=new Minimatch(t,n);e=e.filter((e=>s.match(e)));if(s.options.nonull&&!e.length){e.push(t)}return e};t.match=match;t.minimatch.match=t.match;const globUnescape=e=>e.replace(/\\(.)/g,"$1");const charUnescape=e=>e.replace(/\\([^-\]])/g,"$1");const regExpEscape=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");const braExpEscape=e=>e.replace(/[[\]\\]/g,"\\$&");class Minimatch{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;regexp;constructor(e,t={}){assertValidPattern(e);t=t||{};this.options=t;this.pattern=e;this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===false;if(this.windowsPathsNoEscape){this.pattern=this.pattern.replace(/\\/g,"/")}this.preserveMultipleSlashes=!!t.preserveMultipleSlashes;this.regexp=null;this.negate=false;this.nonegate=!!t.nonegate;this.comment=false;this.empty=false;this.partial=!!t.partial;this.globSet=[];this.globParts=[];this.set=[];this.make()}debug(...e){}make(){const e=this.pattern;const t=this.options;if(!t.nocomment&&e.charAt(0)==="#"){this.comment=true;return}if(!e){this.empty=true;return}this.parseNegate();this.globSet=this.braceExpand();if(t.debug){this.debug=(...e)=>console.error(...e)}this.debug(this.pattern,this.globSet);const n=this.globSet.map((e=>this.slashSplit(e)));if(this.options.noglobstar){this.globParts=n}else{for(const e of n){let t;do{t=false;for(let n=0;n{e=e.reduce(((e,t)=>{const n=e[e.length-1];if(t==="**"&&n==="**"){return e}if(t===".."){if(n&&n!==".."&&n!=="."&&n!=="**"){e.pop();return e}}e.push(t);return e}),[]);return e.length===0?[""]:e}))}this.debug(this.pattern,this.globParts);let s=this.globParts.map(((e,t,n)=>e.map((e=>this.parse(e)))));this.debug(this.pattern,s);this.set=s.filter((e=>e.indexOf(false)===-1));if(f){for(let e=0;e>> no match, partial?",e,I,n,C);if(I===l){return true}}return false}let f;if(typeof g==="string"){f=E===g;this.debug("string match",g,E,f)}else{f=g.test(E);this.debug("pattern match",g,E,f)}if(!f)return false}if(o===l&&h===u){return true}else if(o===l){return s}else if(h===u){return o===l-1&&e[o]===""}else{throw new Error("wtf?")}}braceExpand(){return(0,t.braceExpand)(this.pattern,this.options)}parse(e,n){assertValidPattern(e);const s=this.options;if(e==="**"){if(!s.noglobstar)return t.GLOBSTAR;else e="*"}if(e==="")return"";let g;let f=null;if(n!==k){if(g=e.match(l)){f=s.dot?starTestDot:starTest}else if(g=e.match(i)){f=(s.nocase?s.dot?starDotExtTestNocaseDot:starDotExtTestNocase:s.dot?starDotExtTestDot:starDotExtTest)(g[1])}else if(g=e.match(u)){f=(s.nocase?s.dot?qmarksTestNocaseDot:qmarksTestNocase:s.dot?qmarksTestDot:qmarksTest)(g)}else if(g=e.match(o)){f=s.dot?starDotStarTestDot:starDotStarTest}else if(g=e.match(h)){f=dotStarTest}}let E="";let I=false;let p=false;const y=[];const R=[];let _=false;let D=false;let U=-1;let L=-1;let v;let T;let O;let P=e.charAt(0)===".";let x=s.dot||P;const patternStart=()=>P?"":x?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)";const subPatternStart=e=>e.charAt(0)==="."?"":s.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)";const clearStateChar=()=>{if(_){switch(_){case"*":E+=Q;I=true;break;case"?":E+=B;I=true;break;default:E+="\\"+_;break}this.debug("clearStateChar %j %j",_,E);_=false}};for(let t=0,n;t{if(!n){n="\\"}return t+t+n+"|"}));this.debug("tail=%j\n %s",e,e,T,E);const t=T.type==="*"?Q:T.type==="?"?B:"\\"+T.type;I=true;E=E.slice(0,T.reStart)+t+"\\("+e}clearStateChar();if(p){E+="\\\\"}const Y=b[E.charAt(0)];for(let e=R.length-1;e>-1;e--){const t=R[e];const s=E.slice(0,t.reStart);const i=E.slice(t.reStart,t.reEnd-8);let o=E.slice(t.reEnd);const h=E.slice(t.reEnd-8,t.reEnd)+o;const l=s.split(")").length;const u=s.split("(").length-l;let g=o;for(let e=0;e{const n=e.map((e=>typeof e==="string"?regExpEscape(e):e===t.GLOBSTAR?t.GLOBSTAR:e._src));n.forEach(((e,i)=>{const o=n[i+1];const h=n[i-1];if(e!==t.GLOBSTAR||h===t.GLOBSTAR){return}if(h===undefined){if(o!==undefined&&o!==t.GLOBSTAR){n[i+1]="(?:\\/|"+s+"\\/)?"+o}else{n[i]=s}}else if(o===undefined){n[i-1]=h+"(?:\\/|"+s+")?"}else if(o!==t.GLOBSTAR){n[i-1]=h+"(?:\\/|\\/"+s+"\\/)"+o;n[i+1]=t.GLOBSTAR}}));return n.filter((e=>e!==t.GLOBSTAR)).join("/")})).join("|");o="^(?:"+o+")$";if(this.negate)o="^(?!"+o+").*$";try{this.regexp=new RegExp(o,i)}catch(e){this.regexp=false}return this.regexp}slashSplit(e){if(this.preserveMultipleSlashes){return e.split("/")}else if(f&&/^\/\/[^\/]+/.test(e)){return["",...e.split(/\/+/)]}else{return e.split(/\/+/)}}match(e,t=this.partial){this.debug("match",e,this.pattern);if(this.comment){return false}if(this.empty){return e===""}if(e==="/"&&t){return true}const n=this.options;if(E.sep!=="/"){e=e.split(E.sep).join("/")}const s=this.slashSplit(e);this.debug(this.pattern,"split",s);const i=this.set;this.debug(this.pattern,"set",i);let o=s[s.length-1];if(!o){for(let e=s.length-2;!o&&e>=0;e--){o=s[e]}}for(let e=0;e{"use strict";e.exports={i8:"1.14.0"}}};var t={};function __nccwpck_require__(n){var s=t[n];if(s!==undefined){return s.exports}var i=t[n]={exports:{}};var o=true;try{e[n].call(i.exports,i,i.exports,__nccwpck_require__);o=false}finally{if(o)delete t[n]}return i.exports}if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";var n={};(()=>{"use strict";var e=n;Object.defineProperty(e,"__esModule",{value:true});const t=__nccwpck_require__(9538);const s=__nccwpck_require__(7551);(0,t.main)(new s)})();module.exports=n})(); \ No newline at end of file +/*! ws. MIT License. Einar Otto Stangvik */o[i-4]=this.maskKey[0];o[i-3]=this.maskKey[1];o[i-2]=this.maskKey[2];o[i-1]=this.maskKey[3];o[1]=n;if(n===126){o.writeUInt16BE(t,2)}else if(n===127){o[2]=o[3]=0;o.writeUIntBE(t,4,6)}o[1]|=128;for(let e=0;e{"use strict";const{Writable:s}=n(2781);const i=n(7643);const{parserStates:o,opcodes:h,states:l,emptyBuffer:u}=n(9188);const{kReadyState:g,kSentClose:f,kResponse:E,kReceivedClose:I}=n(7578);const{isValidStatusCode:C,failWebsocketConnection:B,websocketMessageReceived:Q}=n(5515);const{WebsocketFrameSend:p}=n(5444);const y={};y.ping=i.channel("undici:websocket:ping");y.pong=i.channel("undici:websocket:pong");class ByteParser extends s{#i=[];#o=0;#a=o.INFO;#c={};#h=[];constructor(e){super();this.ws=e}_write(e,t,n){this.#i.push(e);this.#o+=e.length;this.run(n)}run(e){while(true){if(this.#a===o.INFO){if(this.#o<2){return e()}const t=this.consume(2);this.#c.fin=(t[0]&128)!==0;this.#c.opcode=t[0]&15;this.#c.originalOpcode??=this.#c.opcode;this.#c.fragmented=!this.#c.fin&&this.#c.opcode!==h.CONTINUATION;if(this.#c.fragmented&&this.#c.opcode!==h.BINARY&&this.#c.opcode!==h.TEXT){B(this.ws,"Invalid frame type was fragmented.");return}const n=t[1]&127;if(n<=125){this.#c.payloadLength=n;this.#a=o.READ_DATA}else if(n===126){this.#a=o.PAYLOADLENGTH_16}else if(n===127){this.#a=o.PAYLOADLENGTH_64}if(this.#c.fragmented&&n>125){B(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#c.opcode===h.PING||this.#c.opcode===h.PONG||this.#c.opcode===h.CLOSE)&&n>125){B(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#c.opcode===h.CLOSE){if(n===1){B(this.ws,"Received close frame with a 1-byte body.");return}const e=this.consume(n);this.#c.closeInfo=this.parseCloseBody(false,e);if(!this.ws[f]){const e=Buffer.allocUnsafe(2);e.writeUInt16BE(this.#c.closeInfo.code,0);const t=new p(e);this.ws[E].socket.write(t.createFrame(h.CLOSE),(e=>{if(!e){this.ws[f]=true}}))}this.ws[g]=l.CLOSING;this.ws[I]=true;this.end();return}else if(this.#c.opcode===h.PING){const t=this.consume(n);if(!this.ws[I]){const e=new p(t);this.ws[E].socket.write(e.createFrame(h.PONG));if(y.ping.hasSubscribers){y.ping.publish({payload:t})}}this.#a=o.INFO;if(this.#o>0){continue}else{e();return}}else if(this.#c.opcode===h.PONG){const t=this.consume(n);if(y.pong.hasSubscribers){y.pong.publish({payload:t})}if(this.#o>0){continue}else{e();return}}}else if(this.#a===o.PAYLOADLENGTH_16){if(this.#o<2){return e()}const t=this.consume(2);this.#c.payloadLength=t.readUInt16BE(0);this.#a=o.READ_DATA}else if(this.#a===o.PAYLOADLENGTH_64){if(this.#o<8){return e()}const t=this.consume(8);const n=t.readUInt32BE(0);if(n>2**31-1){B(this.ws,"Received payload length > 2^31 bytes.");return}const s=t.readUInt32BE(4);this.#c.payloadLength=(n<<8)+s;this.#a=o.READ_DATA}else if(this.#a===o.READ_DATA){if(this.#o=this.#c.payloadLength){const e=this.consume(this.#c.payloadLength);this.#h.push(e);if(!this.#c.fragmented||this.#c.fin&&this.#c.opcode===h.CONTINUATION){const e=Buffer.concat(this.#h);Q(this.ws,this.#c.originalOpcode,e);this.#c={};this.#h.length=0}this.#a=o.INFO}}if(this.#o>0){continue}else{e();break}}}consume(e){if(e>this.#o){return null}else if(e===0){return u}if(this.#i[0].length===e){this.#o-=this.#i[0].length;return this.#i.shift()}const t=Buffer.allocUnsafe(e);let n=0;while(n!==e){const s=this.#i[0];const{length:i}=s;if(i+n===e){t.set(this.#i.shift(),n);break}else if(i+n>e){t.set(s.subarray(0,e-n),n);this.#i[0]=s.subarray(e-n);break}else{t.set(this.#i.shift(),n);n+=s.length}}this.#o-=e;return t}parseCloseBody(e,t){let n;if(t.length>=2){n=t.readUInt16BE(0)}if(e){if(!C(n)){return null}return{code:n}}let s=t.subarray(2);if(s[0]===239&&s[1]===187&&s[2]===191){s=s.subarray(3)}if(n!==undefined&&!C(n)){return null}try{s=new TextDecoder("utf-8",{fatal:true}).decode(s)}catch{return null}return{code:n,reason:s}}get closingInfo(){return this.#c.closeInfo}}e.exports={ByteParser:ByteParser}},7578:e=>{"use strict";e.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}},5515:(e,t,n)=>{"use strict";const{kReadyState:s,kController:i,kResponse:o,kBinaryType:h,kWebSocketURL:l}=n(7578);const{states:u,opcodes:g}=n(9188);const{MessageEvent:f,ErrorEvent:E}=n(2611);function isEstablished(e){return e[s]===u.OPEN}function isClosing(e){return e[s]===u.CLOSING}function isClosed(e){return e[s]===u.CLOSED}function fireEvent(e,t,n=Event,s){const i=new n(e,s);t.dispatchEvent(i)}function websocketMessageReceived(e,t,n){if(e[s]!==u.OPEN){return}let i;if(t===g.TEXT){try{i=new TextDecoder("utf-8",{fatal:true}).decode(n)}catch{failWebsocketConnection(e,"Received invalid UTF-8 in text frame.");return}}else if(t===g.BINARY){if(e[h]==="blob"){i=new Blob([n])}else{i=new Uint8Array(n).buffer}}fireEvent("message",e,f,{origin:e[l].origin,data:i})}function isValidSubprotocol(e){if(e.length===0){return false}for(const t of e){const e=t.charCodeAt(0);if(e<33||e>126||t==="("||t===")"||t==="<"||t===">"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"||e===32||e===9){return false}}return true}function isValidStatusCode(e){if(e>=1e3&&e<1015){return e!==1004&&e!==1005&&e!==1006}return e>=3e3&&e<=4999}function failWebsocketConnection(e,t){const{[i]:n,[o]:s}=e;n.abort();if(s?.socket&&!s.socket.destroyed){s.socket.destroy()}if(t){fireEvent("error",e,E,{error:new Error(t)})}}e.exports={isEstablished:isEstablished,isClosing:isClosing,isClosed:isClosed,fireEvent:fireEvent,isValidSubprotocol:isValidSubprotocol,isValidStatusCode:isValidStatusCode,failWebsocketConnection:failWebsocketConnection,websocketMessageReceived:websocketMessageReceived}},4284:(e,t,n)=>{"use strict";const{webidl:s}=n(1744);const{DOMException:i}=n(1037);const{URLSerializer:o}=n(685);const{getGlobalOrigin:h}=n(1246);const{staticPropertyDescriptors:l,states:u,opcodes:g,emptyBuffer:f}=n(9188);const{kWebSocketURL:E,kReadyState:I,kController:C,kBinaryType:B,kResponse:Q,kSentClose:p,kByteParser:y}=n(7578);const{isEstablished:w,isClosing:b,isValidSubprotocol:R,failWebsocketConnection:k,fireEvent:_}=n(5515);const{establishWebSocketConnection:D}=n(5354);const{WebsocketFrameSend:U}=n(5444);const{ByteParser:L}=n(1688);const{kEnumerableProperty:v,isBlobLike:T}=n(3983);const{getGlobalDispatcher:O}=n(1892);const{types:P}=n(3837);let x=false;class WebSocket extends EventTarget{#l={open:null,error:null,close:null,message:null};#u=0;#g="";#f="";constructor(e,t=[]){super();s.argumentLengthCheck(arguments,1,{header:"WebSocket constructor"});if(!x){x=true;process.emitWarning("WebSockets are experimental, expect them to change at any time.",{code:"UNDICI-WS"})}const n=s.converters["DOMString or sequence or WebSocketInit"](t);e=s.converters.USVString(e);t=n.protocols;const o=h();let l;try{l=new URL(e,o)}catch(e){throw new i(e,"SyntaxError")}if(l.protocol==="http:"){l.protocol="ws:"}else if(l.protocol==="https:"){l.protocol="wss:"}if(l.protocol!=="ws:"&&l.protocol!=="wss:"){throw new i(`Expected a ws: or wss: protocol, got ${l.protocol}`,"SyntaxError")}if(l.hash||l.href.endsWith("#")){throw new i("Got fragment","SyntaxError")}if(typeof t==="string"){t=[t]}if(t.length!==new Set(t.map((e=>e.toLowerCase()))).size){throw new i("Invalid Sec-WebSocket-Protocol value","SyntaxError")}if(t.length>0&&!t.every((e=>R(e)))){throw new i("Invalid Sec-WebSocket-Protocol value","SyntaxError")}this[E]=new URL(l.href);this[C]=D(l,t,this,(e=>this.#E(e)),n);this[I]=WebSocket.CONNECTING;this[B]="blob"}close(e=undefined,t=undefined){s.brandCheck(this,WebSocket);if(e!==undefined){e=s.converters["unsigned short"](e,{clamp:true})}if(t!==undefined){t=s.converters.USVString(t)}if(e!==undefined){if(e!==1e3&&(e<3e3||e>4999)){throw new i("invalid code","InvalidAccessError")}}let n=0;if(t!==undefined){n=Buffer.byteLength(t);if(n>123){throw new i(`Reason must be less than 123 bytes; received ${n}`,"SyntaxError")}}if(this[I]===WebSocket.CLOSING||this[I]===WebSocket.CLOSED){}else if(!w(this)){k(this,"Connection was closed before it was established.");this[I]=WebSocket.CLOSING}else if(!b(this)){const s=new U;if(e!==undefined&&t===undefined){s.frameData=Buffer.allocUnsafe(2);s.frameData.writeUInt16BE(e,0)}else if(e!==undefined&&t!==undefined){s.frameData=Buffer.allocUnsafe(2+n);s.frameData.writeUInt16BE(e,0);s.frameData.write(t,2,"utf-8")}else{s.frameData=f}const i=this[Q].socket;i.write(s.createFrame(g.CLOSE),(e=>{if(!e){this[p]=true}}));this[I]=u.CLOSING}else{this[I]=WebSocket.CLOSING}}send(e){s.brandCheck(this,WebSocket);s.argumentLengthCheck(arguments,1,{header:"WebSocket.send"});e=s.converters.WebSocketSendData(e);if(this[I]===WebSocket.CONNECTING){throw new i("Sent before connected.","InvalidStateError")}if(!w(this)||b(this)){return}const t=this[Q].socket;if(typeof e==="string"){const n=Buffer.from(e);const s=new U(n);const i=s.createFrame(g.TEXT);this.#u+=n.byteLength;t.write(i,(()=>{this.#u-=n.byteLength}))}else if(P.isArrayBuffer(e)){const n=Buffer.from(e);const s=new U(n);const i=s.createFrame(g.BINARY);this.#u+=n.byteLength;t.write(i,(()=>{this.#u-=n.byteLength}))}else if(ArrayBuffer.isView(e)){const n=Buffer.from(e,e.byteOffset,e.byteLength);const s=new U(n);const i=s.createFrame(g.BINARY);this.#u+=n.byteLength;t.write(i,(()=>{this.#u-=n.byteLength}))}else if(T(e)){const n=new U;e.arrayBuffer().then((e=>{const s=Buffer.from(e);n.frameData=s;const i=n.createFrame(g.BINARY);this.#u+=s.byteLength;t.write(i,(()=>{this.#u-=s.byteLength}))}))}}get readyState(){s.brandCheck(this,WebSocket);return this[I]}get bufferedAmount(){s.brandCheck(this,WebSocket);return this.#u}get url(){s.brandCheck(this,WebSocket);return o(this[E])}get extensions(){s.brandCheck(this,WebSocket);return this.#f}get protocol(){s.brandCheck(this,WebSocket);return this.#g}get onopen(){s.brandCheck(this,WebSocket);return this.#l.open}set onopen(e){s.brandCheck(this,WebSocket);if(this.#l.open){this.removeEventListener("open",this.#l.open)}if(typeof e==="function"){this.#l.open=e;this.addEventListener("open",e)}else{this.#l.open=null}}get onerror(){s.brandCheck(this,WebSocket);return this.#l.error}set onerror(e){s.brandCheck(this,WebSocket);if(this.#l.error){this.removeEventListener("error",this.#l.error)}if(typeof e==="function"){this.#l.error=e;this.addEventListener("error",e)}else{this.#l.error=null}}get onclose(){s.brandCheck(this,WebSocket);return this.#l.close}set onclose(e){s.brandCheck(this,WebSocket);if(this.#l.close){this.removeEventListener("close",this.#l.close)}if(typeof e==="function"){this.#l.close=e;this.addEventListener("close",e)}else{this.#l.close=null}}get onmessage(){s.brandCheck(this,WebSocket);return this.#l.message}set onmessage(e){s.brandCheck(this,WebSocket);if(this.#l.message){this.removeEventListener("message",this.#l.message)}if(typeof e==="function"){this.#l.message=e;this.addEventListener("message",e)}else{this.#l.message=null}}get binaryType(){s.brandCheck(this,WebSocket);return this[B]}set binaryType(e){s.brandCheck(this,WebSocket);if(e!=="blob"&&e!=="arraybuffer"){this[B]="blob"}else{this[B]=e}}#E(e){this[Q]=e;const t=new L(this);t.on("drain",(function onParserDrain(){this.ws[Q].socket.resume()}));e.socket.ws=this;this[y]=t;this[I]=u.OPEN;const n=e.headersList.get("sec-websocket-extensions");if(n!==null){this.#f=n}const s=e.headersList.get("sec-websocket-protocol");if(s!==null){this.#g=s}_("open",this)}}WebSocket.CONNECTING=WebSocket.prototype.CONNECTING=u.CONNECTING;WebSocket.OPEN=WebSocket.prototype.OPEN=u.OPEN;WebSocket.CLOSING=WebSocket.prototype.CLOSING=u.CLOSING;WebSocket.CLOSED=WebSocket.prototype.CLOSED=u.CLOSED;Object.defineProperties(WebSocket.prototype,{CONNECTING:l,OPEN:l,CLOSING:l,CLOSED:l,url:v,readyState:v,bufferedAmount:v,onopen:v,onerror:v,onclose:v,close:v,onmessage:v,binaryType:v,send:v,extensions:v,protocol:v,[Symbol.toStringTag]:{value:"WebSocket",writable:false,enumerable:false,configurable:true}});Object.defineProperties(WebSocket,{CONNECTING:l,OPEN:l,CLOSING:l,CLOSED:l});s.converters["sequence"]=s.sequenceConverter(s.converters.DOMString);s.converters["DOMString or sequence"]=function(e){if(s.util.Type(e)==="Object"&&Symbol.iterator in e){return s.converters["sequence"](e)}return s.converters.DOMString(e)};s.converters.WebSocketInit=s.dictionaryConverter([{key:"protocols",converter:s.converters["DOMString or sequence"],get defaultValue(){return[]}},{key:"dispatcher",converter:e=>e,get defaultValue(){return O()}},{key:"headers",converter:s.nullableConverter(s.converters.HeadersInit)}]);s.converters["DOMString or sequence or WebSocketInit"]=function(e){if(s.util.Type(e)==="Object"&&!(Symbol.iterator in e)){return s.converters.WebSocketInit(e)}return{protocols:s.converters["DOMString or sequence"](e)}};s.converters.WebSocketSendData=function(e){if(s.util.Type(e)==="Object"){if(T(e)){return s.converters.Blob(e,{strict:false})}if(ArrayBuffer.isView(e)||P.isAnyArrayBuffer(e)){return s.converters.BufferSource(e)}}return s.converters.USVString(e)};e.exports={WebSocket:WebSocket}},7127:(e,t,n)=>{e.exports=n(3837).deprecate},5840:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});Object.defineProperty(t,"v1",{enumerable:true,get:function(){return s.default}});Object.defineProperty(t,"v3",{enumerable:true,get:function(){return i.default}});Object.defineProperty(t,"v4",{enumerable:true,get:function(){return o.default}});Object.defineProperty(t,"v5",{enumerable:true,get:function(){return h.default}});Object.defineProperty(t,"NIL",{enumerable:true,get:function(){return l.default}});Object.defineProperty(t,"version",{enumerable:true,get:function(){return u.default}});Object.defineProperty(t,"validate",{enumerable:true,get:function(){return g.default}});Object.defineProperty(t,"stringify",{enumerable:true,get:function(){return f.default}});Object.defineProperty(t,"parse",{enumerable:true,get:function(){return E.default}});var s=_interopRequireDefault(n(8628));var i=_interopRequireDefault(n(6409));var o=_interopRequireDefault(n(5122));var h=_interopRequireDefault(n(9120));var l=_interopRequireDefault(n(5332));var u=_interopRequireDefault(n(1595));var g=_interopRequireDefault(n(6900));var f=_interopRequireDefault(n(8950));var E=_interopRequireDefault(n(2746));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}},4569:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(6113));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function md5(e){if(Array.isArray(e)){e=Buffer.from(e)}else if(typeof e==="string"){e=Buffer.from(e,"utf8")}return s.default.createHash("md5").update(e).digest()}var i=md5;t["default"]=i},5332:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var n="00000000-0000-0000-0000-000000000000";t["default"]=n},2746:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(6900));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function parse(e){if(!(0,s.default)(e)){throw TypeError("Invalid UUID")}let t;const n=new Uint8Array(16);n[0]=(t=parseInt(e.slice(0,8),16))>>>24;n[1]=t>>>16&255;n[2]=t>>>8&255;n[3]=t&255;n[4]=(t=parseInt(e.slice(9,13),16))>>>8;n[5]=t&255;n[6]=(t=parseInt(e.slice(14,18),16))>>>8;n[7]=t&255;n[8]=(t=parseInt(e.slice(19,23),16))>>>8;n[9]=t&255;n[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255;n[11]=t/4294967296&255;n[12]=t>>>24&255;n[13]=t>>>16&255;n[14]=t>>>8&255;n[15]=t&255;return n}var i=parse;t["default"]=i},814:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var n=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;t["default"]=n},807:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=rng;var s=_interopRequireDefault(n(6113));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const i=new Uint8Array(256);let o=i.length;function rng(){if(o>i.length-16){s.default.randomFillSync(i);o=0}return i.slice(o,o+=16)}},5274:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(6113));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function sha1(e){if(Array.isArray(e)){e=Buffer.from(e)}else if(typeof e==="string"){e=Buffer.from(e,"utf8")}return s.default.createHash("sha1").update(e).digest()}var i=sha1;t["default"]=i},8950:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(6900));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const i=[];for(let e=0;e<256;++e){i.push((e+256).toString(16).substr(1))}function stringify(e,t=0){const n=(i[e[t+0]]+i[e[t+1]]+i[e[t+2]]+i[e[t+3]]+"-"+i[e[t+4]]+i[e[t+5]]+"-"+i[e[t+6]]+i[e[t+7]]+"-"+i[e[t+8]]+i[e[t+9]]+"-"+i[e[t+10]]+i[e[t+11]]+i[e[t+12]]+i[e[t+13]]+i[e[t+14]]+i[e[t+15]]).toLowerCase();if(!(0,s.default)(n)){throw TypeError("Stringified UUID is invalid")}return n}var o=stringify;t["default"]=o},8628:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(807));var i=_interopRequireDefault(n(8950));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let o;let h;let l=0;let u=0;function v1(e,t,n){let g=t&&n||0;const f=t||new Array(16);e=e||{};let E=e.node||o;let I=e.clockseq!==undefined?e.clockseq:h;if(E==null||I==null){const t=e.random||(e.rng||s.default)();if(E==null){E=o=[t[0]|1,t[1],t[2],t[3],t[4],t[5]]}if(I==null){I=h=(t[6]<<8|t[7])&16383}}let C=e.msecs!==undefined?e.msecs:Date.now();let B=e.nsecs!==undefined?e.nsecs:u+1;const Q=C-l+(B-u)/1e4;if(Q<0&&e.clockseq===undefined){I=I+1&16383}if((Q<0||C>l)&&e.nsecs===undefined){B=0}if(B>=1e4){throw new Error("uuid.v1(): Can't create more than 10M uuids/sec")}l=C;u=B;h=I;C+=122192928e5;const p=((C&268435455)*1e4+B)%4294967296;f[g++]=p>>>24&255;f[g++]=p>>>16&255;f[g++]=p>>>8&255;f[g++]=p&255;const y=C/4294967296*1e4&268435455;f[g++]=y>>>8&255;f[g++]=y&255;f[g++]=y>>>24&15|16;f[g++]=y>>>16&255;f[g++]=I>>>8|128;f[g++]=I&255;for(let e=0;e<6;++e){f[g+e]=E[e]}return t||(0,i.default)(f)}var g=v1;t["default"]=g},6409:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(5998));var i=_interopRequireDefault(n(4569));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const o=(0,s.default)("v3",48,i.default);var h=o;t["default"]=h},5998:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=_default;t.URL=t.DNS=void 0;var s=_interopRequireDefault(n(8950));var i=_interopRequireDefault(n(2746));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function stringToBytes(e){e=unescape(encodeURIComponent(e));const t=[];for(let n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(807));var i=_interopRequireDefault(n(8950));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function v4(e,t,n){e=e||{};const o=e.random||(e.rng||s.default)();o[6]=o[6]&15|64;o[8]=o[8]&63|128;if(t){n=n||0;for(let e=0;e<16;++e){t[n+e]=o[e]}return t}return(0,i.default)(o)}var o=v4;t["default"]=o},9120:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(5998));var i=_interopRequireDefault(n(5274));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const o=(0,s.default)("v5",80,i.default);var h=o;t["default"]=h},6900:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(814));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function validate(e){return typeof e==="string"&&s.default.test(e)}var i=validate;t["default"]=i},1595:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t["default"]=void 0;var s=_interopRequireDefault(n(6900));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function version(e){if(!(0,s.default)(e)){throw TypeError("Invalid UUID")}return parseInt(e.substr(14,1),16)}var i=version;t["default"]=i},5185:e=>{class Node{constructor(e){this.value=e;this.next=undefined}}class Queue{constructor(){this.clear()}enqueue(e){const t=new Node(e);if(this._head){this._tail.next=t;this._tail=t}else{this._head=t;this._tail=t}this._size++}dequeue(){const e=this._head;if(!e){return}this._head=this._head.next;this._size--;return e.value}clear(){this._head=undefined;this._tail=undefined;this._size=0}get size(){return this._size}*[Symbol.iterator](){let e=this._head;while(e){yield e.value;e=e.next}}}e.exports=Queue},9623:module=>{module.exports=eval("require")("./crypto/build/Release/sshcrypto.node")},7295:module=>{module.exports=eval("require")("cpu-features")},9491:e=>{"use strict";e.exports=require("assert")},852:e=>{"use strict";e.exports=require("async_hooks")},4300:e=>{"use strict";e.exports=require("buffer")},2081:e=>{"use strict";e.exports=require("child_process")},6206:e=>{"use strict";e.exports=require("console")},6113:e=>{"use strict";e.exports=require("crypto")},7643:e=>{"use strict";e.exports=require("diagnostics_channel")},9523:e=>{"use strict";e.exports=require("dns")},2361:e=>{"use strict";e.exports=require("events")},7147:e=>{"use strict";e.exports=require("fs")},3685:e=>{"use strict";e.exports=require("http")},5158:e=>{"use strict";e.exports=require("http2")},5687:e=>{"use strict";e.exports=require("https")},1808:e=>{"use strict";e.exports=require("net")},5673:e=>{"use strict";e.exports=require("node:events")},4492:e=>{"use strict";e.exports=require("node:stream")},7261:e=>{"use strict";e.exports=require("node:util")},2037:e=>{"use strict";e.exports=require("os")},1017:e=>{"use strict";e.exports=require("path")},4074:e=>{"use strict";e.exports=require("perf_hooks")},3477:e=>{"use strict";e.exports=require("querystring")},2781:e=>{"use strict";e.exports=require("stream")},5356:e=>{"use strict";e.exports=require("stream/web")},1576:e=>{"use strict";e.exports=require("string_decoder")},4404:e=>{"use strict";e.exports=require("tls")},7310:e=>{"use strict";e.exports=require("url")},3837:e=>{"use strict";e.exports=require("util")},9830:e=>{"use strict";e.exports=require("util/types")},1267:e=>{"use strict";e.exports=require("worker_threads")},9796:e=>{"use strict";e.exports=require("zlib")},2960:(e,t,n)=>{"use strict";const s=n(4492).Writable;const i=n(7261).inherits;const o=n(1142);const h=n(1620);const l=n(2032);const u=45;const g=Buffer.from("-");const f=Buffer.from("\r\n");const EMPTY_FN=function(){};function Dicer(e){if(!(this instanceof Dicer)){return new Dicer(e)}s.call(this,e);if(!e||!e.headerFirst&&typeof e.boundary!=="string"){throw new TypeError("Boundary required")}if(typeof e.boundary==="string"){this.setBoundary(e.boundary)}else{this._bparser=undefined}this._headerFirst=e.headerFirst;this._dashes=0;this._parts=0;this._finished=false;this._realFinish=false;this._isPreamble=true;this._justMatched=false;this._firstWrite=true;this._inHeader=true;this._part=undefined;this._cb=undefined;this._ignoreData=false;this._partOpts={highWaterMark:e.partHwm};this._pause=false;const t=this;this._hparser=new l(e);this._hparser.on("header",(function(e){t._inHeader=false;t._part.emit("header",e)}))}i(Dicer,s);Dicer.prototype.emit=function(e){if(e==="finish"&&!this._realFinish){if(!this._finished){const e=this;process.nextTick((function(){e.emit("error",new Error("Unexpected end of multipart data"));if(e._part&&!e._ignoreData){const t=e._isPreamble?"Preamble":"Part";e._part.emit("error",new Error(t+" terminated early due to unexpected end of multipart data"));e._part.push(null);process.nextTick((function(){e._realFinish=true;e.emit("finish");e._realFinish=false}));return}e._realFinish=true;e.emit("finish");e._realFinish=false}))}}else{s.prototype.emit.apply(this,arguments)}};Dicer.prototype._write=function(e,t,n){if(!this._hparser&&!this._bparser){return n()}if(this._headerFirst&&this._isPreamble){if(!this._part){this._part=new h(this._partOpts);if(this._events.preamble){this.emit("preamble",this._part)}else{this._ignore()}}const t=this._hparser.push(e);if(!this._inHeader&&t!==undefined&&t{"use strict";const s=n(5673).EventEmitter;const i=n(7261).inherits;const o=n(1467);const h=n(1142);const l=Buffer.from("\r\n\r\n");const u=/\r\n/g;const g=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function HeaderParser(e){s.call(this);e=e||{};const t=this;this.nread=0;this.maxed=false;this.npairs=0;this.maxHeaderPairs=o(e,"maxHeaderPairs",2e3);this.maxHeaderSize=o(e,"maxHeaderSize",80*1024);this.buffer="";this.header={};this.finished=false;this.ss=new h(l);this.ss.on("info",(function(e,n,s,i){if(n&&!t.maxed){if(t.nread+i-s>=t.maxHeaderSize){i=t.maxHeaderSize-t.nread+s;t.nread=t.maxHeaderSize;t.maxed=true}else{t.nread+=i-s}t.buffer+=n.toString("binary",s,i)}if(e){t._finish()}}))}i(HeaderParser,s);HeaderParser.prototype.push=function(e){const t=this.ss.push(e);if(this.finished){return t}};HeaderParser.prototype.reset=function(){this.finished=false;this.buffer="";this.header={};this.ss.reset()};HeaderParser.prototype._finish=function(){if(this.buffer){this._parseHeader()}this.ss.matches=this.ss.maxMatches;const e=this.header;this.header={};this.buffer="";this.finished=true;this.nread=this.npairs=0;this.maxed=false;this.emit("header",e)};HeaderParser.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs){return}const e=this.buffer.split(u);const t=e.length;let n,s;for(var i=0;i{"use strict";const s=n(7261).inherits;const i=n(4492).Readable;function PartStream(e){i.call(this,e)}s(PartStream,i);PartStream.prototype._read=function(e){};e.exports=PartStream},1142:(e,t,n)=>{"use strict";const s=n(5673).EventEmitter;const i=n(7261).inherits;function SBMH(e){if(typeof e==="string"){e=Buffer.from(e)}if(!Buffer.isBuffer(e)){throw new TypeError("The needle has to be a String or a Buffer.")}const t=e.length;if(t===0){throw new Error("The needle cannot be an empty String/Buffer.")}if(t>256){throw new Error("The needle cannot have a length bigger than 256.")}this.maxMatches=Infinity;this.matches=0;this._occ=new Array(256).fill(t);this._lookbehind_size=0;this._needle=e;this._bufpos=0;this._lookbehind=Buffer.alloc(t);for(var n=0;n=0){this.emit("info",false,this._lookbehind,0,this._lookbehind_size);this._lookbehind_size=0}else{const n=this._lookbehind_size+o;if(n>0){this.emit("info",false,this._lookbehind,0,n)}this._lookbehind.copy(this._lookbehind,0,n,this._lookbehind_size-n);this._lookbehind_size-=n;e.copy(this._lookbehind,this._lookbehind_size);this._lookbehind_size+=t;this._bufpos=t;return t}}o+=(o>=0)*this._bufpos;if(e.indexOf(n,o)!==-1){o=e.indexOf(n,o);++this.matches;if(o>0){this.emit("info",true,e,this._bufpos,o)}else{this.emit("info",true)}return this._bufpos=o+s}else{o=t-s}while(o0){this.emit("info",false,e,this._bufpos,o{"use strict";const s=n(4492).Writable;const{inherits:i}=n(7261);const o=n(2960);const h=n(2183);const l=n(8306);const u=n(1854);function Busboy(e){if(!(this instanceof Busboy)){return new Busboy(e)}if(typeof e!=="object"){throw new TypeError("Busboy expected an options-Object.")}if(typeof e.headers!=="object"){throw new TypeError("Busboy expected an options-Object with headers-attribute.")}if(typeof e.headers["content-type"]!=="string"){throw new TypeError("Missing Content-Type-header.")}const{headers:t,...n}=e;this.opts={autoDestroy:false,...n};s.call(this,this.opts);this._done=false;this._parser=this.getParserByHeaders(t);this._finished=false}i(Busboy,s);Busboy.prototype.emit=function(e){if(e==="finish"){if(!this._done){this._parser?.end();return}else if(this._finished){return}this._finished=true}s.prototype.emit.apply(this,arguments)};Busboy.prototype.getParserByHeaders=function(e){const t=u(e["content-type"]);const n={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(h.detect.test(t[0])){return new h(this,n)}if(l.detect.test(t[0])){return new l(this,n)}throw new Error("Unsupported Content-Type.")};Busboy.prototype._write=function(e,t,n){this._parser.write(e,n)};e.exports=Busboy;e.exports["default"]=Busboy;e.exports.Busboy=Busboy;e.exports.Dicer=o},2183:(e,t,n)=>{"use strict";const{Readable:s}=n(4492);const{inherits:i}=n(7261);const o=n(2960);const h=n(1854);const l=n(4619);const u=n(8647);const g=n(1467);const f=/^boundary$/i;const E=/^form-data$/i;const I=/^charset$/i;const C=/^filename$/i;const B=/^name$/i;Multipart.detect=/^multipart\/form-data/i;function Multipart(e,t){let n;let s;const i=this;let Q;const p=t.limits;const y=t.isPartAFile||((e,t,n)=>t==="application/octet-stream"||n!==undefined);const w=t.parsedConType||[];const b=t.defCharset||"utf8";const R=t.preservePath;const k={highWaterMark:t.fileHwm};for(n=0,s=w.length;nv){i.parser.removeListener("part",onPart);i.parser.on("part",skipPart);e.hitPartsLimit=true;e.emit("partsLimit");return skipPart(t)}if(J){const e=J;e.emit("end");e.removeAllListeners("end")}t.on("header",(function(o){let g;let f;let Q;let p;let w;let v;let T=0;if(o["content-type"]){Q=h(o["content-type"][0]);if(Q[0]){g=Q[0].toLowerCase();for(n=0,s=Q.length;nD){const s=D-T+e.length;if(s>0){n.push(e.slice(0,s))}n.truncated=true;n.bytesRead=D;t.removeAllListeners("data");n.emit("limit");return}else if(!n.push(e)){i._pause=true}n.bytesRead=T};W=function(){G=undefined;n.push(null)}}else{if(x===L){if(!e.hitFieldsLimit){e.hitFieldsLimit=true;e.emit("fieldsLimit")}return skipPart(t)}++x;++Y;let n="";let s=false;J=t;O=function(e){if((T+=e.length)>_){const i=_-(T-e.length);n+=e.toString("binary",0,i);s=true;t.removeAllListeners("data")}else{n+=e.toString("binary")}};W=function(){J=undefined;if(n.length){n=l(n,"binary",p)}e.emit("field",f,n,false,s,w,g);--Y;checkFinished()}}t._readableState.sync=false;t.on("data",O);t.on("end",W)})).on("error",(function(e){if(G){G.emit("error",e)}}))})).on("error",(function(t){e.emit("error",t)})).on("finish",(function(){W=true;checkFinished()}))}Multipart.prototype.write=function(e,t){const n=this.parser.write(e);if(n&&!this._pause){t()}else{this._needDrain=!n;this._cb=t}};Multipart.prototype.end=function(){const e=this;if(e.parser.writable){e.parser.end()}else if(!e._boy._done){process.nextTick((function(){e._boy._done=true;e._boy.emit("finish")}))}};function skipPart(e){e.resume()}function FileStream(e){s.call(this,e);this.bytesRead=0;this.truncated=false}i(FileStream,s);FileStream.prototype._read=function(e){};e.exports=Multipart},8306:(e,t,n)=>{"use strict";const s=n(7100);const i=n(4619);const o=n(1467);const h=/^charset$/i;UrlEncoded.detect=/^application\/x-www-form-urlencoded/i;function UrlEncoded(e,t){const n=t.limits;const i=t.parsedConType;this.boy=e;this.fieldSizeLimit=o(n,"fieldSize",1*1024*1024);this.fieldNameSizeLimit=o(n,"fieldNameSize",100);this.fieldsLimit=o(n,"fields",Infinity);let l;for(var u=0,g=i.length;uh){this._key+=this.decoder.write(e.toString("binary",h,n))}this._state="val";this._hitLimit=false;this._checkingBytes=true;this._val="";this._bytesVal=0;this._valTrunc=false;this.decoder.reset();h=n+1}else if(s!==undefined){++this._fields;let n;const o=this._keyTrunc;if(s>h){n=this._key+=this.decoder.write(e.toString("binary",h,s))}else{n=this._key}this._hitLimit=false;this._checkingBytes=true;this._key="";this._bytesKey=0;this._keyTrunc=false;this.decoder.reset();if(n.length){this.boy.emit("field",i(n,"binary",this.charset),"",o,false)}h=s+1;if(this._fields===this.fieldsLimit){return t()}}else if(this._hitLimit){if(o>h){this._key+=this.decoder.write(e.toString("binary",h,o))}h=o;if((this._bytesKey=this._key.length)===this.fieldNameSizeLimit){this._checkingBytes=false;this._keyTrunc=true}}else{if(hh){this._val+=this.decoder.write(e.toString("binary",h,s))}this.boy.emit("field",i(this._key,"binary",this.charset),i(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc);this._state="key";this._hitLimit=false;this._checkingBytes=true;this._key="";this._bytesKey=0;this._keyTrunc=false;this.decoder.reset();h=s+1;if(this._fields===this.fieldsLimit){return t()}}else if(this._hitLimit){if(o>h){this._val+=this.decoder.write(e.toString("binary",h,o))}h=o;if(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit){this._checkingBytes=false;this._valTrunc=true}}else{if(h0){this.boy.emit("field",i(this._key,"binary",this.charset),"",this._keyTrunc,false)}else if(this._state==="val"){this.boy.emit("field",i(this._key,"binary",this.charset),i(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc)}this.boy._done=true;this.boy.emit("finish")};e.exports=UrlEncoded},7100:e=>{"use strict";const t=/\+/g;const n=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];function Decoder(){this.buffer=undefined}Decoder.prototype.write=function(e){e=e.replace(t," ");let s="";let i=0;let o=0;const h=e.length;for(;io){s+=e.substring(o,i);o=i}this.buffer="";++o}}if(o{"use strict";e.exports=function basename(e){if(typeof e!=="string"){return""}for(var t=e.length-1;t>=0;--t){switch(e.charCodeAt(t)){case 47:case 92:e=e.slice(t+1);return e===".."||e==="."?"":e}}return e===".."||e==="."?"":e}},4619:function(e){"use strict";const t=new TextDecoder("utf-8");const n=new Map([["utf-8",t],["utf8",t]]);function getDecoder(e){let t;while(true){switch(e){case"utf-8":case"utf8":return s.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return s.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return s.utf16le;case"base64":return s.base64;default:if(t===undefined){t=true;e=e.toLowerCase();continue}return s.other.bind(e)}}}const s={utf8:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){e=Buffer.from(e,t)}return e.utf8Slice(0,e.length)},latin1:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){return e}return e.latin1Slice(0,e.length)},utf16le:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){e=Buffer.from(e,t)}return e.ucs2Slice(0,e.length)},base64:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){e=Buffer.from(e,t)}return e.base64Slice(0,e.length)},other:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){e=Buffer.from(e,t)}if(n.has(this.toString())){try{return n.get(this).decode(e)}catch(e){}}return typeof e==="string"?e:e.toString()}};function decodeText(e,t,n){if(e){return getDecoder(n)(e,t)}return e}e.exports=decodeText},1467:e=>{"use strict";e.exports=function getLimit(e,t,n){if(!e||e[t]===undefined||e[t]===null){return n}if(typeof e[t]!=="number"||isNaN(e[t])){throw new TypeError("Limit "+t+" is not a valid number")}return e[t]}},1854:(e,t,n)=>{"use strict";const s=n(4619);const i=/%[a-fA-F0-9][a-fA-F0-9]/g;const o={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"","%08":"\b","%09":"\t","%0a":"\n","%0A":"\n","%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"","%1B":"","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"","%7F":"","%80":"€","%81":"","%82":"‚","%83":"ƒ","%84":"„","%85":"…","%86":"†","%87":"‡","%88":"ˆ","%89":"‰","%8a":"Š","%8A":"Š","%8b":"‹","%8B":"‹","%8c":"Œ","%8C":"Œ","%8d":"","%8D":"","%8e":"Ž","%8E":"Ž","%8f":"","%8F":"","%90":"","%91":"‘","%92":"’","%93":"“","%94":"”","%95":"•","%96":"–","%97":"—","%98":"˜","%99":"™","%9a":"š","%9A":"š","%9b":"›","%9B":"›","%9c":"œ","%9C":"œ","%9d":"","%9D":"","%9e":"ž","%9E":"ž","%9f":"Ÿ","%9F":"Ÿ","%a0":" ","%A0":" ","%a1":"¡","%A1":"¡","%a2":"¢","%A2":"¢","%a3":"£","%A3":"£","%a4":"¤","%A4":"¤","%a5":"¥","%A5":"¥","%a6":"¦","%A6":"¦","%a7":"§","%A7":"§","%a8":"¨","%A8":"¨","%a9":"©","%A9":"©","%aa":"ª","%Aa":"ª","%aA":"ª","%AA":"ª","%ab":"«","%Ab":"«","%aB":"«","%AB":"«","%ac":"¬","%Ac":"¬","%aC":"¬","%AC":"¬","%ad":"­","%Ad":"­","%aD":"­","%AD":"­","%ae":"®","%Ae":"®","%aE":"®","%AE":"®","%af":"¯","%Af":"¯","%aF":"¯","%AF":"¯","%b0":"°","%B0":"°","%b1":"±","%B1":"±","%b2":"²","%B2":"²","%b3":"³","%B3":"³","%b4":"´","%B4":"´","%b5":"µ","%B5":"µ","%b6":"¶","%B6":"¶","%b7":"·","%B7":"·","%b8":"¸","%B8":"¸","%b9":"¹","%B9":"¹","%ba":"º","%Ba":"º","%bA":"º","%BA":"º","%bb":"»","%Bb":"»","%bB":"»","%BB":"»","%bc":"¼","%Bc":"¼","%bC":"¼","%BC":"¼","%bd":"½","%Bd":"½","%bD":"½","%BD":"½","%be":"¾","%Be":"¾","%bE":"¾","%BE":"¾","%bf":"¿","%Bf":"¿","%bF":"¿","%BF":"¿","%c0":"À","%C0":"À","%c1":"Á","%C1":"Á","%c2":"Â","%C2":"Â","%c3":"Ã","%C3":"Ã","%c4":"Ä","%C4":"Ä","%c5":"Å","%C5":"Å","%c6":"Æ","%C6":"Æ","%c7":"Ç","%C7":"Ç","%c8":"È","%C8":"È","%c9":"É","%C9":"É","%ca":"Ê","%Ca":"Ê","%cA":"Ê","%CA":"Ê","%cb":"Ë","%Cb":"Ë","%cB":"Ë","%CB":"Ë","%cc":"Ì","%Cc":"Ì","%cC":"Ì","%CC":"Ì","%cd":"Í","%Cd":"Í","%cD":"Í","%CD":"Í","%ce":"Î","%Ce":"Î","%cE":"Î","%CE":"Î","%cf":"Ï","%Cf":"Ï","%cF":"Ï","%CF":"Ï","%d0":"Ð","%D0":"Ð","%d1":"Ñ","%D1":"Ñ","%d2":"Ò","%D2":"Ò","%d3":"Ó","%D3":"Ó","%d4":"Ô","%D4":"Ô","%d5":"Õ","%D5":"Õ","%d6":"Ö","%D6":"Ö","%d7":"×","%D7":"×","%d8":"Ø","%D8":"Ø","%d9":"Ù","%D9":"Ù","%da":"Ú","%Da":"Ú","%dA":"Ú","%DA":"Ú","%db":"Û","%Db":"Û","%dB":"Û","%DB":"Û","%dc":"Ü","%Dc":"Ü","%dC":"Ü","%DC":"Ü","%dd":"Ý","%Dd":"Ý","%dD":"Ý","%DD":"Ý","%de":"Þ","%De":"Þ","%dE":"Þ","%DE":"Þ","%df":"ß","%Df":"ß","%dF":"ß","%DF":"ß","%e0":"à","%E0":"à","%e1":"á","%E1":"á","%e2":"â","%E2":"â","%e3":"ã","%E3":"ã","%e4":"ä","%E4":"ä","%e5":"å","%E5":"å","%e6":"æ","%E6":"æ","%e7":"ç","%E7":"ç","%e8":"è","%E8":"è","%e9":"é","%E9":"é","%ea":"ê","%Ea":"ê","%eA":"ê","%EA":"ê","%eb":"ë","%Eb":"ë","%eB":"ë","%EB":"ë","%ec":"ì","%Ec":"ì","%eC":"ì","%EC":"ì","%ed":"í","%Ed":"í","%eD":"í","%ED":"í","%ee":"î","%Ee":"î","%eE":"î","%EE":"î","%ef":"ï","%Ef":"ï","%eF":"ï","%EF":"ï","%f0":"ð","%F0":"ð","%f1":"ñ","%F1":"ñ","%f2":"ò","%F2":"ò","%f3":"ó","%F3":"ó","%f4":"ô","%F4":"ô","%f5":"õ","%F5":"õ","%f6":"ö","%F6":"ö","%f7":"÷","%F7":"÷","%f8":"ø","%F8":"ø","%f9":"ù","%F9":"ù","%fa":"ú","%Fa":"ú","%fA":"ú","%FA":"ú","%fb":"û","%Fb":"û","%fB":"û","%FB":"û","%fc":"ü","%Fc":"ü","%fC":"ü","%FC":"ü","%fd":"ý","%Fd":"ý","%fD":"ý","%FD":"ý","%fe":"þ","%Fe":"þ","%fE":"þ","%FE":"þ","%ff":"ÿ","%Ff":"ÿ","%fF":"ÿ","%FF":"ÿ"};function encodedReplacer(e){return o[e]}const h=0;const l=1;const u=2;const g=3;function parseParams(e){const t=[];let n=h;let o="";let f=false;let E=false;let I=0;let C="";const B=e.length;for(var Q=0;Q{assertValidPattern(t);if(!n.nocomment&&t.charAt(0)==="#"){return false}return new Minimatch(t,n).match(e)};t.minimatch=minimatch;t["default"]=t.minimatch;const i=/^\*+([^+@!?\*\[\(]*)$/;const starDotExtTest=e=>t=>!t.startsWith(".")&&t.endsWith(e);const starDotExtTestDot=e=>t=>t.endsWith(e);const starDotExtTestNocase=e=>{e=e.toLowerCase();return t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)};const starDotExtTestNocaseDot=e=>{e=e.toLowerCase();return t=>t.toLowerCase().endsWith(e)};const o=/^\*+\.\*+$/;const starDotStarTest=e=>!e.startsWith(".")&&e.includes(".");const starDotStarTestDot=e=>e!=="."&&e!==".."&&e.includes(".");const h=/^\.\*+$/;const dotStarTest=e=>e!=="."&&e!==".."&&e.startsWith(".");const l=/^\*+$/;const starTest=e=>e.length!==0&&!e.startsWith(".");const starTestDot=e=>e.length!==0&&e!=="."&&e!=="..";const u=/^\?+([^+@!?\*\[\(]*)?$/;const qmarksTestNocase=([e,t=""])=>{const n=qmarksTestNoExt([e]);if(!t)return n;t=t.toLowerCase();return e=>n(e)&&e.toLowerCase().endsWith(t)};const qmarksTestNocaseDot=([e,t=""])=>{const n=qmarksTestNoExtDot([e]);if(!t)return n;t=t.toLowerCase();return e=>n(e)&&e.toLowerCase().endsWith(t)};const qmarksTestDot=([e,t=""])=>{const n=qmarksTestNoExtDot([e]);return!t?n:e=>n(e)&&e.endsWith(t)};const qmarksTest=([e,t=""])=>{const n=qmarksTestNoExt([e]);return!t?n:e=>n(e)&&e.endsWith(t)};const qmarksTestNoExt=([e])=>{const t=e.length;return e=>e.length===t&&!e.startsWith(".")};const qmarksTestNoExtDot=([e])=>{const t=e.length;return e=>e.length===t&&e!=="."&&e!==".."};const g=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix";const f=g==="win32";const E=f?{sep:"\\"}:{sep:"/"};t.sep=E.sep;t.minimatch.sep=t.sep;t.GLOBSTAR=Symbol("globstar **");t.minimatch.GLOBSTAR=t.GLOBSTAR;const I=s(n(3717));const C={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}};const B="[^/]";const Q=B+"*?";const p="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";const y="(?:(?!(?:\\/|^)\\.).)*?";const charSet=e=>e.split("").reduce(((e,t)=>{e[t]=true;return e}),{});const w=charSet("().*{}+?[]^$\\!");const b=charSet("[.(");const filter=(e,n={})=>s=>(0,t.minimatch)(s,e,n);t.filter=filter;t.minimatch.filter=t.filter;const ext=(e,t={})=>Object.assign({},e,t);const defaults=e=>{if(!e||typeof e!=="object"||!Object.keys(e).length){return t.minimatch}const n=t.minimatch;const m=(t,s,i={})=>n(t,s,ext(e,i));return Object.assign(m,{Minimatch:class Minimatch extends n.Minimatch{constructor(t,n={}){super(t,ext(e,n))}static defaults(t){return n.defaults(ext(e,t)).Minimatch}},filter:(t,s={})=>n.filter(t,ext(e,s)),defaults:t=>n.defaults(ext(e,t)),makeRe:(t,s={})=>n.makeRe(t,ext(e,s)),braceExpand:(t,s={})=>n.braceExpand(t,ext(e,s)),match:(t,s,i={})=>n.match(t,s,ext(e,i)),sep:n.sep,GLOBSTAR:t.GLOBSTAR})};t.defaults=defaults;t.minimatch.defaults=t.defaults;const braceExpand=(e,t={})=>{assertValidPattern(e);if(t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)){return[e]}return(0,I.default)(e)};t.braceExpand=braceExpand;t.minimatch.braceExpand=t.braceExpand;const R=1024*64;const assertValidPattern=e=>{if(typeof e!=="string"){throw new TypeError("invalid pattern")}if(e.length>R){throw new TypeError("pattern is too long")}};const k=Symbol("subparse");const makeRe=(e,t={})=>new Minimatch(e,t).makeRe();t.makeRe=makeRe;t.minimatch.makeRe=t.makeRe;const match=(e,t,n={})=>{const s=new Minimatch(t,n);e=e.filter((e=>s.match(e)));if(s.options.nonull&&!e.length){e.push(t)}return e};t.match=match;t.minimatch.match=t.match;const globUnescape=e=>e.replace(/\\(.)/g,"$1");const charUnescape=e=>e.replace(/\\([^-\]])/g,"$1");const regExpEscape=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");const braExpEscape=e=>e.replace(/[[\]\\]/g,"\\$&");class Minimatch{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;regexp;constructor(e,t={}){assertValidPattern(e);t=t||{};this.options=t;this.pattern=e;this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===false;if(this.windowsPathsNoEscape){this.pattern=this.pattern.replace(/\\/g,"/")}this.preserveMultipleSlashes=!!t.preserveMultipleSlashes;this.regexp=null;this.negate=false;this.nonegate=!!t.nonegate;this.comment=false;this.empty=false;this.partial=!!t.partial;this.globSet=[];this.globParts=[];this.set=[];this.make()}debug(...e){}make(){const e=this.pattern;const t=this.options;if(!t.nocomment&&e.charAt(0)==="#"){this.comment=true;return}if(!e){this.empty=true;return}this.parseNegate();this.globSet=this.braceExpand();if(t.debug){this.debug=(...e)=>console.error(...e)}this.debug(this.pattern,this.globSet);const n=this.globSet.map((e=>this.slashSplit(e)));if(this.options.noglobstar){this.globParts=n}else{for(const e of n){let t;do{t=false;for(let n=0;n{e=e.reduce(((e,t)=>{const n=e[e.length-1];if(t==="**"&&n==="**"){return e}if(t===".."){if(n&&n!==".."&&n!=="."&&n!=="**"){e.pop();return e}}e.push(t);return e}),[]);return e.length===0?[""]:e}))}this.debug(this.pattern,this.globParts);let s=this.globParts.map(((e,t,n)=>e.map((e=>this.parse(e)))));this.debug(this.pattern,s);this.set=s.filter((e=>e.indexOf(false)===-1));if(f){for(let e=0;e>> no match, partial?",e,I,n,C);if(I===l){return true}}return false}let f;if(typeof g==="string"){f=E===g;this.debug("string match",g,E,f)}else{f=g.test(E);this.debug("pattern match",g,E,f)}if(!f)return false}if(o===l&&h===u){return true}else if(o===l){return s}else if(h===u){return o===l-1&&e[o]===""}else{throw new Error("wtf?")}}braceExpand(){return(0,t.braceExpand)(this.pattern,this.options)}parse(e,n){assertValidPattern(e);const s=this.options;if(e==="**"){if(!s.noglobstar)return t.GLOBSTAR;else e="*"}if(e==="")return"";let g;let f=null;if(n!==k){if(g=e.match(l)){f=s.dot?starTestDot:starTest}else if(g=e.match(i)){f=(s.nocase?s.dot?starDotExtTestNocaseDot:starDotExtTestNocase:s.dot?starDotExtTestDot:starDotExtTest)(g[1])}else if(g=e.match(u)){f=(s.nocase?s.dot?qmarksTestNocaseDot:qmarksTestNocase:s.dot?qmarksTestDot:qmarksTest)(g)}else if(g=e.match(o)){f=s.dot?starDotStarTestDot:starDotStarTest}else if(g=e.match(h)){f=dotStarTest}}let E="";let I=false;let p=false;const y=[];const R=[];let _=false;let D=false;let U=-1;let L=-1;let v;let T;let O;let P=e.charAt(0)===".";let x=s.dot||P;const patternStart=()=>P?"":x?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)";const subPatternStart=e=>e.charAt(0)==="."?"":s.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)";const clearStateChar=()=>{if(_){switch(_){case"*":E+=Q;I=true;break;case"?":E+=B;I=true;break;default:E+="\\"+_;break}this.debug("clearStateChar %j %j",_,E);_=false}};for(let t=0,n;t{if(!n){n="\\"}return t+t+n+"|"}));this.debug("tail=%j\n %s",e,e,T,E);const t=T.type==="*"?Q:T.type==="?"?B:"\\"+T.type;I=true;E=E.slice(0,T.reStart)+t+"\\("+e}clearStateChar();if(p){E+="\\\\"}const Y=b[E.charAt(0)];for(let e=R.length-1;e>-1;e--){const t=R[e];const s=E.slice(0,t.reStart);const i=E.slice(t.reStart,t.reEnd-8);let o=E.slice(t.reEnd);const h=E.slice(t.reEnd-8,t.reEnd)+o;const l=s.split(")").length;const u=s.split("(").length-l;let g=o;for(let e=0;e{const n=e.map((e=>typeof e==="string"?regExpEscape(e):e===t.GLOBSTAR?t.GLOBSTAR:e._src));n.forEach(((e,i)=>{const o=n[i+1];const h=n[i-1];if(e!==t.GLOBSTAR||h===t.GLOBSTAR){return}if(h===undefined){if(o!==undefined&&o!==t.GLOBSTAR){n[i+1]="(?:\\/|"+s+"\\/)?"+o}else{n[i]=s}}else if(o===undefined){n[i-1]=h+"(?:\\/|"+s+")?"}else if(o!==t.GLOBSTAR){n[i-1]=h+"(?:\\/|\\/"+s+"\\/)"+o;n[i+1]=t.GLOBSTAR}}));return n.filter((e=>e!==t.GLOBSTAR)).join("/")})).join("|");o="^(?:"+o+")$";if(this.negate)o="^(?!"+o+").*$";try{this.regexp=new RegExp(o,i)}catch(e){this.regexp=false}return this.regexp}slashSplit(e){if(this.preserveMultipleSlashes){return e.split("/")}else if(f&&/^\/\/[^\/]+/.test(e)){return["",...e.split(/\/+/)]}else{return e.split(/\/+/)}}match(e,t=this.partial){this.debug("match",e,this.pattern);if(this.comment){return false}if(this.empty){return e===""}if(e==="/"&&t){return true}const n=this.options;if(E.sep!=="/"){e=e.split(E.sep).join("/")}const s=this.slashSplit(e);this.debug(this.pattern,"split",s);const i=this.set;this.debug(this.pattern,"set",i);let o=s[s.length-1];if(!o){for(let e=s.length-2;!o&&e>=0;e--){o=s[e]}}for(let e=0;e{"use strict";e.exports={i8:"1.14.0"}}};var __webpack_module_cache__={};function __nccwpck_require__(e){var t=__webpack_module_cache__[e];if(t!==undefined){return t.exports}var n=__webpack_module_cache__[e]={exports:{}};var s=true;try{__webpack_modules__[e].call(n.exports,n,n.exports,__nccwpck_require__);s=false}finally{if(s)delete __webpack_module_cache__[e]}return n.exports}if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";var __webpack_exports__={};(()=>{"use strict";var e=__webpack_exports__;Object.defineProperty(e,"__esModule",{value:true});const t=__nccwpck_require__(9538);const n=__nccwpck_require__(7551);(0,t.main)(new n)})();module.exports=__webpack_exports__})(); \ No newline at end of file diff --git a/dist/licenses.txt b/dist/licenses.txt index 3540d8c..be2d987 100644 --- a/dist/licenses.txt +++ b/dist/licenses.txt @@ -57,6 +57,16 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +@vercel/ncc +MIT +Copyright 2018 ZEIT, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + asn1 MIT Copyright (c) 2011 Mark Cavage, All rights reserved. @@ -252,28 +262,6 @@ ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -cpu-features -MIT -Copyright Brian White. All rights reserved. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -IN THE SOFTWARE. - err-code MIT diff --git a/myignorefile1.txt b/myignorefile1.txt new file mode 100644 index 0000000..0d8d3b7 --- /dev/null +++ b/myignorefile1.txt @@ -0,0 +1,4 @@ + + * + + \ No newline at end of file diff --git a/myignorefile2.txt b/myignorefile2.txt new file mode 100644 index 0000000..68121e2 --- /dev/null +++ b/myignorefile2.txt @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..f184fc4 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,9452 @@ +{ + "name": "sftp-upload", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "sftp-upload", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "@actions/core": "^1.10.0", + "@actions/github": "^5.1.1", + "minimatch": "^6.1.5", + "p-limit": "3.1.0", + "ssh2-sftp-client": "^9.0.4", + "yarn": "^1.22.22" + }, + "devDependencies": { + "@babel/preset-env": "^7.20.2", + "@babel/preset-typescript": "^7.18.6", + "@types/jest": "^29.2.5", + "@types/ssh2-sftp-client": "^9.0.0", + "@typescript-eslint/eslint-plugin": "^5.48.1", + "@typescript-eslint/parser": "^5.48.1", + "@vercel/ncc": "^0.36.0", + "eslint": "^8.31.0", + "jest": "^29.3.1", + "kelonio": "^0.8.0", + "rimraf": "^3.0.2", + "ts-jest": "^29.0.5", + "ts-node": "^10.9.1", + "typescript": "^4.9.4" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@actions/core": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.10.1.tgz", + "integrity": "sha512-3lBR9EDAY+iYIpTnTIXmWcNbX3T2kCkAEQGIQx4NVQ0575nk2k3GRZDTPQG+vVtS2izSLmINlxXf0uLtnrTP+g==", + "license": "MIT", + "dependencies": { + "@actions/http-client": "^2.0.1", + "uuid": "^8.3.2" + } + }, + "node_modules/@actions/github": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@actions/github/-/github-5.1.1.tgz", + "integrity": "sha512-Nk59rMDoJaV+mHCOJPXuvB1zIbomlKS0dmSIqPGxd0enAXBnOfn4VWF+CGtRCwXZG9Epa54tZA7VIRlJDS8A6g==", + "license": "MIT", + "dependencies": { + "@actions/http-client": "^2.0.1", + "@octokit/core": "^3.6.0", + "@octokit/plugin-paginate-rest": "^2.17.0", + "@octokit/plugin-rest-endpoint-methods": "^5.13.0" + } + }, + "node_modules/@actions/http-client": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.2.0.tgz", + "integrity": "sha512-q+epW0trjVUUHboliPb4UF9g2msf+w61b32tAkFEwL/IwP0DQWgbCMM0Hbe3e3WXSKz5VcUXbzJQgy8Hkra/Lg==", + "license": "MIT", + "dependencies": { + "tunnel": "^0.0.6", + "undici": "^5.25.4" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.7.tgz", + "integrity": "sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.7.tgz", + "integrity": "sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-compilation-targets": "^7.24.7", + "@babel/helper-module-transforms": "^7.24.7", + "@babel/helpers": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/template": "^7.24.7", + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", + "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.24.7", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz", + "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz", + "integrity": "sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.24.7", + "@babel/helper-validator-option": "^7.24.7", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz", + "integrity": "sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.15", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.3.tgz", + "integrity": "sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", + "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", + "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", + "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", + "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz", + "integrity": "sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-simple-access": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz", + "integrity": "sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.22.15", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", + "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", + "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", + "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz", + "integrity": "sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.7.tgz", + "integrity": "sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", + "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", + "dev": true, + "license": "MIT", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.23.3.tgz", + "integrity": "sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.23.3.tgz", + "integrity": "sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.23.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.23.3.tgz", + "integrity": "sha512-XaJak1qcityzrX0/IU5nKHb34VaibwP3saKqG6a/tppelgllOH13LUann4ZCIBcVOeE6H18K4Vx9QKkVww3z/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.23.3.tgz", + "integrity": "sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.23.3.tgz", + "integrity": "sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz", + "integrity": "sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz", + "integrity": "sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.23.3.tgz", + "integrity": "sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.3.tgz", + "integrity": "sha512-59GsVNavGxAXCDDbakWSMJhajASb4kBCqDjqJsv+p5nKdbz7istmZ3HrX3L2LuiI80+zsOADCvooqQH3qGCucQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.20", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.23.3.tgz", + "integrity": "sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.23.3.tgz", + "integrity": "sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.3.tgz", + "integrity": "sha512-QPZxHrThbQia7UdvfpaRRlq/J9ciz1J4go0k+lPBXbgaNeY7IQrBj/9ceWjvMMI07/ZBzHl/F0R/2K0qH7jCVw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.23.3.tgz", + "integrity": "sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.23.3.tgz", + "integrity": "sha512-PENDVxdr7ZxKPyi5Ffc0LjXdnJyrJxyqF5T5YjlVg4a0VFfQHW0r8iAtRiDXkfHlu1wwcvdtnndGYIeJLSuRMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.23.3.tgz", + "integrity": "sha512-FGEQmugvAEu2QtgtU0uTASXevfLMFfBeVCIIdcQhn/uBQsMTjBajdnAtanQlOcuihWh10PZ7+HWvc7NtBwP74w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.20", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.23.3.tgz", + "integrity": "sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/template": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.3.tgz", + "integrity": "sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.23.3.tgz", + "integrity": "sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.23.3.tgz", + "integrity": "sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.23.3.tgz", + "integrity": "sha512-vTG+cTGxPFou12Rj7ll+eD5yWeNl5/8xvQvF08y5Gv3v4mZQoyFf8/n9zg4q5vvCWt5jmgymfzMAldO7orBn7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.23.3.tgz", + "integrity": "sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.23.3.tgz", + "integrity": "sha512-yCLhW34wpJWRdTxxWtFZASJisihrfyMOTOQexhVzA78jlU+dH7Dw+zQgcPepQ5F3C6bAIiblZZ+qBggJdHiBAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.23.3.tgz", + "integrity": "sha512-X8jSm8X1CMwxmK878qsUGJRmbysKNbdpTv/O1/v0LuY/ZkZrng5WYiekYSdg9m09OTmDDUWeEDsTE+17WYbAZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.23.3.tgz", + "integrity": "sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.23.3.tgz", + "integrity": "sha512-H9Ej2OiISIZowZHaBwF0tsJOih1PftXJtE8EWqlEIwpc7LMTGq0rPOrywKLQ4nefzx8/HMR0D3JGXoMHYvhi0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.23.3.tgz", + "integrity": "sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.23.3.tgz", + "integrity": "sha512-+pD5ZbxofyOygEp+zZAfujY2ShNCXRpDRIPOiBmTO693hhyOEteZgl876Xs9SAHPQpcV0vz8LvA/T+w8AzyX8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.23.3.tgz", + "integrity": "sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.3.tgz", + "integrity": "sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz", + "integrity": "sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.3.tgz", + "integrity": "sha512-ZxyKGTkF9xT9YJuKQRo19ewf3pXpopuYQd8cDXqNzc3mUNbOME0RKMoZxviQk74hwzfQsEe66dE92MaZbdHKNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.23.3.tgz", + "integrity": "sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.23.3.tgz", + "integrity": "sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.23.3.tgz", + "integrity": "sha512-xzg24Lnld4DYIdysyf07zJ1P+iIfJpxtVFOzX4g+bsJ3Ng5Le7rXx9KwqKzuyaUeRnt+I1EICwQITqc0E2PmpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.23.3.tgz", + "integrity": "sha512-s9GO7fIBi/BLsZ0v3Rftr6Oe4t0ctJ8h4CCXfPoEJwmvAPMyNrfkOOJzm6b9PX9YXcCJWWQd/sBF/N26eBiMVw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.23.3.tgz", + "integrity": "sha512-VxHt0ANkDmu8TANdE9Kc0rndo/ccsmfe2Cx2y5sI4hu3AukHQ5wAu4cM7j3ba8B9548ijVyclBU+nuDQftZsog==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.23.3", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.23.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.23.3.tgz", + "integrity": "sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.23.3.tgz", + "integrity": "sha512-LxYSb0iLjUamfm7f1D7GpiS4j0UAC8AOiehnsGAP8BEsIX8EOi3qV6bbctw8M7ZvLtcoZfZX5Z7rN9PlWk0m5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.3.tgz", + "integrity": "sha512-zvL8vIfIUgMccIAK1lxjvNv572JHFJIKb4MWBz5OGdBQA0fB0Xluix5rmOby48exiJc987neOmP/m9Fnpkz3Tg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.23.3.tgz", + "integrity": "sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.23.3.tgz", + "integrity": "sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.23.3.tgz", + "integrity": "sha512-a5m2oLNFyje2e/rGKjVfAELTVI5mbA0FeZpBnkOWWV7eSmKQ+T/XW0Vf+29ScLzSxX+rnsarvU0oie/4m6hkxA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.23.3.tgz", + "integrity": "sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.23.3.tgz", + "integrity": "sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.23.3.tgz", + "integrity": "sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.23.3.tgz", + "integrity": "sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.23.3.tgz", + "integrity": "sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.23.3.tgz", + "integrity": "sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.23.3.tgz", + "integrity": "sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.23.3.tgz", + "integrity": "sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.3.tgz", + "integrity": "sha512-ogV0yWnq38CFwH20l2Afz0dfKuZBx9o/Y2Rmh5vuSS0YD1hswgEgTfyTzuSrT2q9btmHRSqYoSfwFUVaC1M1Jw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-typescript": "^7.23.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.23.3.tgz", + "integrity": "sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.23.3.tgz", + "integrity": "sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.23.3.tgz", + "integrity": "sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.23.3.tgz", + "integrity": "sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.23.3.tgz", + "integrity": "sha512-ovzGc2uuyNfNAs/jyjIGxS8arOHS5FENZaNn4rtE7UdKMMkqHCvboHfcuhWLZNX5cB44QfcGNWjaevxMzzMf+Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.23.3", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.23.3", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.23.3", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.23.3", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.23.3", + "@babel/plugin-syntax-import-attributes": "^7.23.3", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.23.3", + "@babel/plugin-transform-async-generator-functions": "^7.23.3", + "@babel/plugin-transform-async-to-generator": "^7.23.3", + "@babel/plugin-transform-block-scoped-functions": "^7.23.3", + "@babel/plugin-transform-block-scoping": "^7.23.3", + "@babel/plugin-transform-class-properties": "^7.23.3", + "@babel/plugin-transform-class-static-block": "^7.23.3", + "@babel/plugin-transform-classes": "^7.23.3", + "@babel/plugin-transform-computed-properties": "^7.23.3", + "@babel/plugin-transform-destructuring": "^7.23.3", + "@babel/plugin-transform-dotall-regex": "^7.23.3", + "@babel/plugin-transform-duplicate-keys": "^7.23.3", + "@babel/plugin-transform-dynamic-import": "^7.23.3", + "@babel/plugin-transform-exponentiation-operator": "^7.23.3", + "@babel/plugin-transform-export-namespace-from": "^7.23.3", + "@babel/plugin-transform-for-of": "^7.23.3", + "@babel/plugin-transform-function-name": "^7.23.3", + "@babel/plugin-transform-json-strings": "^7.23.3", + "@babel/plugin-transform-literals": "^7.23.3", + "@babel/plugin-transform-logical-assignment-operators": "^7.23.3", + "@babel/plugin-transform-member-expression-literals": "^7.23.3", + "@babel/plugin-transform-modules-amd": "^7.23.3", + "@babel/plugin-transform-modules-commonjs": "^7.23.3", + "@babel/plugin-transform-modules-systemjs": "^7.23.3", + "@babel/plugin-transform-modules-umd": "^7.23.3", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.23.3", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.23.3", + "@babel/plugin-transform-numeric-separator": "^7.23.3", + "@babel/plugin-transform-object-rest-spread": "^7.23.3", + "@babel/plugin-transform-object-super": "^7.23.3", + "@babel/plugin-transform-optional-catch-binding": "^7.23.3", + "@babel/plugin-transform-optional-chaining": "^7.23.3", + "@babel/plugin-transform-parameters": "^7.23.3", + "@babel/plugin-transform-private-methods": "^7.23.3", + "@babel/plugin-transform-private-property-in-object": "^7.23.3", + "@babel/plugin-transform-property-literals": "^7.23.3", + "@babel/plugin-transform-regenerator": "^7.23.3", + "@babel/plugin-transform-reserved-words": "^7.23.3", + "@babel/plugin-transform-shorthand-properties": "^7.23.3", + "@babel/plugin-transform-spread": "^7.23.3", + "@babel/plugin-transform-sticky-regex": "^7.23.3", + "@babel/plugin-transform-template-literals": "^7.23.3", + "@babel/plugin-transform-typeof-symbol": "^7.23.3", + "@babel/plugin-transform-unicode-escapes": "^7.23.3", + "@babel/plugin-transform-unicode-property-regex": "^7.23.3", + "@babel/plugin-transform-unicode-regex": "^7.23.3", + "@babel/plugin-transform-unicode-sets-regex": "^7.23.3", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.6", + "babel-plugin-polyfill-corejs3": "^0.8.5", + "babel-plugin-polyfill-regenerator": "^0.5.3", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.23.3.tgz", + "integrity": "sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", + "@babel/plugin-syntax-jsx": "^7.23.3", + "@babel/plugin-transform-modules-commonjs": "^7.23.3", + "@babel/plugin-transform-typescript": "^7.23.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@babel/runtime": { + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", + "integrity": "sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", + "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", + "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-function-name": "^7.24.7", + "@babel/helper-hoist-variables": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", + "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz", + "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.53.0.tgz", + "integrity": "sha512-Kn7K8dx/5U6+cT1yEhpX1w4PCSg0M+XyRILPgvwcEBjerFWCwQj5sbr3/VmxqV0JGHCBCzyd6LxypEuehypY1w==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@fastify/busboy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.0.tgz", + "integrity": "sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==", + "license": "MIT", + "engines": { + "node": ">=14" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/console/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/console/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jest/console/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/core/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jest/core/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jest/reporters/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/transform/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jest/transform/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/types/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jest/types/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@octokit/auth-token": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz", + "integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==", + "license": "MIT", + "dependencies": { + "@octokit/types": "^6.0.3" + } + }, + "node_modules/@octokit/core": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz", + "integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==", + "license": "MIT", + "dependencies": { + "@octokit/auth-token": "^2.4.4", + "@octokit/graphql": "^4.5.8", + "@octokit/request": "^5.6.3", + "@octokit/request-error": "^2.0.5", + "@octokit/types": "^6.0.3", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/endpoint": { + "version": "6.0.12", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz", + "integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==", + "license": "MIT", + "dependencies": { + "@octokit/types": "^6.0.3", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/graphql": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz", + "integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==", + "license": "MIT", + "dependencies": { + "@octokit/request": "^5.6.0", + "@octokit/types": "^6.0.3", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/openapi-types": { + "version": "12.11.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz", + "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==", + "license": "MIT" + }, + "node_modules/@octokit/plugin-paginate-rest": { + "version": "2.21.3", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz", + "integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==", + "license": "MIT", + "dependencies": { + "@octokit/types": "^6.40.0" + }, + "peerDependencies": { + "@octokit/core": ">=2" + } + }, + "node_modules/@octokit/plugin-rest-endpoint-methods": { + "version": "5.16.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz", + "integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==", + "license": "MIT", + "dependencies": { + "@octokit/types": "^6.39.0", + "deprecation": "^2.3.1" + }, + "peerDependencies": { + "@octokit/core": ">=3" + } + }, + "node_modules/@octokit/request": { + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz", + "integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==", + "license": "MIT", + "dependencies": { + "@octokit/endpoint": "^6.0.1", + "@octokit/request-error": "^2.1.0", + "@octokit/types": "^6.16.1", + "is-plain-object": "^5.0.0", + "node-fetch": "^2.6.7", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/request-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz", + "integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==", + "license": "MIT", + "dependencies": { + "@octokit/types": "^6.0.3", + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, + "node_modules/@octokit/types": { + "version": "6.41.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz", + "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==", + "license": "MIT", + "dependencies": { + "@octokit/openapi-types": "^12.11.0" + } + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", + "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/babel__core": { + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.4.tgz", + "integrity": "sha512-mLnSC22IC4vcWiuObSRjrLd9XcBTGf59vUSoq2jkQDJ/QQ8PMI9rSuzE+aEV8karUMbskw07bKYoUJCKTUaygg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.7", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.7.tgz", + "integrity": "sha512-6Sfsq+EaaLrw4RmdFWE9Onp63TOUue71AWb4Gpa6JxzgTYtimbM086WnYTy2U67AofR++QKCo08ZP6pwx8YFHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.4.tgz", + "integrity": "sha512-mSM/iKUk5fDDrEV/e83qY+Cr3I1+Q3qqTuEn++HAWYjEa1+NxZr6CNrcJGf2ZTnq4HoFGC3zaTPZTobCzCFukA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "29.5.8", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.8.tgz", + "integrity": "sha512-fXEFTxMV2Co8ZF5aYFJv+YeA08RTYJfhtN5c9JSv/mFEMe+xxjufCb+PHL+bJcMs/ebPUsBu+UNTEz+ydXrR6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "20.9.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.9.0.tgz", + "integrity": "sha512-nekiGu2NDb1BcVofVcEKMIwzlx4NjHlcjhoxxKBNLtz15Y1z7MYf549DFvkHSId02Ax6kGwWntIBPC3l/JZcmw==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/semver": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.5.tgz", + "integrity": "sha512-+d+WYC1BxJ6yVOgUgzK8gWvp5qF8ssV5r4nsDcZWKRWcDQLQ619tvWAxJQYGgBrO1MnLJC7a5GtiYsAoQ47dJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/ssh2": { + "version": "1.11.16", + "resolved": "https://registry.npmjs.org/@types/ssh2/-/ssh2-1.11.16.tgz", + "integrity": "sha512-Y1WuSL16TSlfsqTVyOkfnUsxHrdZsQQGq0AG6XFqs0hU3jO++cc6PdU+UCyG/0AVg9ez5qRNR8xfkouJv+gdgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "^18.11.18" + } + }, + "node_modules/@types/ssh2-sftp-client": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/@types/ssh2-sftp-client/-/ssh2-sftp-client-9.0.3.tgz", + "integrity": "sha512-pkCiS/NYvfc8S6xq3TvHAIPhQvBcl9Z1kMFxS8yNsqxmg/8ozzglnT4TrfpYBR1hlBky3r+fYntdZ5WnvvlKoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/ssh2": "*" + } + }, + "node_modules/@types/ssh2/node_modules/@types/node": { + "version": "18.18.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.9.tgz", + "integrity": "sha512-0f5klcuImLnG4Qreu9hPj/rEfFq6YRc5n2mAjSsH+ec/mJL+3voBH0+8T7o8RpFjH7ovc+TRsL/c7OYIQsPTfQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/yargs": { + "version": "17.0.31", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.31.tgz", + "integrity": "sha512-bocYSx4DI8TmdlvxqGpVNXOgCNR1Jj0gNPhhAY+iz1rgKDAaYrAYdFYnhDV1IFuiuVc9HkOwyDcFxaTElF3/wg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", + "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.4.0", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/type-utils": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", + "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", + "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/typescript-estree": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/@vercel/ncc": { + "version": "0.36.1", + "resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.36.1.tgz", + "integrity": "sha512-S4cL7Taa9yb5qbv+6wLgiKVZ03Qfkc4jGRuiUQMQ8HGBD5pcNRnHeYM33zBvJE4/zJGjJJ8GScB+WmTsn9mORw==", + "dev": true, + "license": "MIT", + "bin": { + "ncc": "dist/ncc/cli.js" + } + }, + "node_modules/acorn": { + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", + "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true, + "license": "MIT" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "license": "MIT", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/babel-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/babel-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.6.tgz", + "integrity": "sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.4.3", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.8.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.6.tgz", + "integrity": "sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.3", + "core-js-compat": "^3.33.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.3.tgz", + "integrity": "sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.3" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, + "license": "MIT", + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "license": "MIT" + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "license": "BSD-3-Clause", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/before-after-hook": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", + "license": "Apache-2.0" + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/browserslist": { + "version": "4.23.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.1.tgz", + "integrity": "sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001629", + "electron-to-chromium": "^1.4.796", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.16" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "license": "MIT" + }, + "node_modules/buildcheck": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/buildcheck/-/buildcheck-0.0.6.tgz", + "integrity": "sha512-8f9ZJCUXyT1M35Jx7MkBgmBMo3oHTTBIPLiY9xyL0pl3T5RwcPEY8cUHr5LBNfu/fk6c2T4DJZuVM/8ZZT2D2A==", + "optional": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001629", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001629.tgz", + "integrity": "sha512-c3dl911slnQhmxUIT4HhYzT7wnBK/XYpGnYLOj4nJBaRiw52Ibe7YxlDaAeRECvA786zCuExhxIUJ2K7nHMrBw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true, + "license": "MIT" + }, + "node_modules/complex.js": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/complex.js/-/complex.js-2.1.1.tgz", + "integrity": "sha512-8njCHOTtFFLtegk6zQo0kkVX1rngygb/KQI6z1qZxlFI3scluC+LVTCFbrkWjBv4vvLlbQ9t88IPMC6k95VTTg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://www.patreon.com/infusion" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", + "engines": [ + "node >= 6.0" + ], + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/core-js-compat": { + "version": "3.33.2", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.33.2.tgz", + "integrity": "sha512-axfo+wxFVxnqf8RvxTzoAlzW4gRoacrHeoFlc9n0x50+7BEyZL/Rt3hicaED1/CEd7I6tPCPVUYcJwCMO5XUYw==", + "dev": true, + "license": "MIT", + "dependencies": { + "browserslist": "^4.22.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/cpu-features": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/cpu-features/-/cpu-features-0.0.9.tgz", + "integrity": "sha512-AKjgn2rP2yJyfbepsmLfiYcmtNn/2eUvocUyM/09yB0YDiz39HteK/5/T4Onf0pmdYDMgkBoGvRLvEguzyL7wQ==", + "hasInstallScript": true, + "optional": true, + "dependencies": { + "buildcheck": "~0.0.6", + "nan": "^2.17.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/create-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/create-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/create-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/create-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/create-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/create-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true, + "license": "MIT" + }, + "node_modules/dedent": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz", + "integrity": "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", + "license": "ISC" + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.796", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.796.tgz", + "integrity": "sha512-NglN/xprcM+SHD2XCli4oC6bWe6kHoytcyLKCWXmRL854F0qhPhaYgUswUsglnPxYaNQIg2uMY4BvaomIf3kLA==", + "dev": true, + "license": "ISC" + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "license": "MIT" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-latex": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/escape-latex/-/escape-latex-1.2.0.tgz", + "integrity": "sha512-nV5aVWW1K0wEiUIEdZ4erkGGH8mDxGyxSeqPzRNtWP7ataw+/olFObw7hujFWlVjNsaDFw5VZ5NzVSIqRgfTiw==", + "dev": true, + "license": "MIT" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.53.0.tgz", + "integrity": "sha512-N4VuiPjXDUa4xVeV/GC/RV3hQW9Nw+Y463lkWaKKXKYMvmRiRDAtfpuPFLN+E1/6ZhyR8J2ig+eVREnYgUsiag==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.3", + "@eslint/js": "8.53.0", + "@humanwhocodes/config-array": "^0.11.13", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://www.patreon.com/infusion" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "license": "MIT" + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true, + "license": "MIT" + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz", + "integrity": "sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/javascript-natural-sort": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz", + "integrity": "sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "dev": true, + "license": "MIT", + "dependencies": { + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-circus/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-circus/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-cli/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-cli/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-cli/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-config/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-config/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-diff/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-diff/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-each/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-each/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-matcher-utils/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-message-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-message-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-resolve/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-resolve/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runner/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-runner/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runtime/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-runtime/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-snapshot/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-validate/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-validate/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-watcher/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-watcher/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-watcher/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/kelonio": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/kelonio/-/kelonio-0.8.0.tgz", + "integrity": "sha512-+mxGulj4DEGEzk7rFiwFlYUfz2145rBjWICSmmzR1A2zgcd2oE3UtHiiPQTWPa5z2aHT6uiEIyPzIsetfHNcYw==", + "dev": true, + "license": "MIT", + "dependencies": { + "browser-process-hrtime": "^1.0.0", + "mathjs": "^10.5.2" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "license": "MIT" + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true, + "license": "ISC" + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/mathjs": { + "version": "10.6.4", + "resolved": "https://registry.npmjs.org/mathjs/-/mathjs-10.6.4.tgz", + "integrity": "sha512-omQyvRE1jIy+3k2qsqkWASOcd45aZguXZDckr3HtnTYyXk5+2xpVfC3kATgbO2Srjxlqww3TVdhD0oUdZ/hiFA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@babel/runtime": "^7.18.6", + "complex.js": "^2.1.1", + "decimal.js": "^10.3.1", + "escape-latex": "^1.2.0", + "fraction.js": "^4.2.0", + "javascript-natural-sort": "^0.7.1", + "seedrandom": "^3.0.5", + "tiny-emitter": "^2.1.0", + "typed-function": "^2.1.0" + }, + "bin": { + "mathjs": "bin/cli.js" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz", + "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/nan": { + "version": "2.18.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.18.0.tgz", + "integrity": "sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w==", + "license": "MIT", + "optional": true + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-fetch": { + "version": "2.6.8", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.8.tgz", + "integrity": "sha512-RZ6dBYuj8dRSfxpUSu+NsdF1dpPpluJxwOp+6IoDp/sH2QNDSvurYsAa+F1WxY2RjA1iP93xhcsUoYbF2XBqVg==", + "license": "MIT", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true, + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "license": "MIT", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/pure-rand": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz", + "integrity": "sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ], + "license": "MIT" + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true, + "license": "MIT" + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true, + "license": "MIT" + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz", + "integrity": "sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "dev": true, + "license": "MIT" + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "license": "MIT" + }, + "node_modules/seedrandom": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/seedrandom/-/seedrandom-3.0.5.tgz", + "integrity": "sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true, + "license": "MIT" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/ssh2": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/ssh2/-/ssh2-1.14.0.tgz", + "integrity": "sha512-AqzD1UCqit8tbOKoj6ztDDi1ffJZ2rV2SwlgrVVrHPkV5vWqGJOVp5pmtj18PunkPJAuKQsnInyKV+/Nb2bUnA==", + "hasInstallScript": true, + "dependencies": { + "asn1": "^0.2.6", + "bcrypt-pbkdf": "^1.0.2" + }, + "engines": { + "node": ">=10.16.0" + }, + "optionalDependencies": { + "cpu-features": "~0.0.8", + "nan": "^2.17.0" + } + }, + "node_modules/ssh2-sftp-client": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/ssh2-sftp-client/-/ssh2-sftp-client-9.1.0.tgz", + "integrity": "sha512-Hzdr9OE6GxZjcmyM9tgBSIFVyrHAp9c6U2Y4yBkmYOHoQvZ7pIm27dmltvcmRfxcWiIcg8HBvG5iAikDf+ZuzQ==", + "license": "Apache-2.0", + "dependencies": { + "concat-stream": "^2.0.0", + "promise-retry": "^2.0.1", + "ssh2": "^1.12.0" + }, + "engines": { + "node": ">=10.24.1" + } + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "license": "ISC", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true, + "license": "MIT" + }, + "node_modules/tiny-emitter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", + "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "license": "MIT" + }, + "node_modules/ts-jest": { + "version": "29.1.1", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", + "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", + "dev": true, + "license": "MIT", + "dependencies": { + "bs-logger": "0.x", + "fast-json-stable-stringify": "2.x", + "jest-util": "^29.0.0", + "json5": "^2.2.3", + "lodash.memoize": "4.x", + "make-error": "1.x", + "semver": "^7.5.3", + "yargs-parser": "^21.0.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", + "jest": "^29.0.0", + "typescript": ">=4.3 <6" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + } + } + }, + "node_modules/ts-jest/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "license": "0BSD" + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "license": "MIT", + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", + "license": "MIT", + "engines": { + "node": ">=0.6.11 <=0.7.0 || >=0.7.3" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", + "license": "Unlicense" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typed-function": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/typed-function/-/typed-function-2.1.0.tgz", + "integrity": "sha512-bctQIOqx2iVbWGDGPWwIm18QScpu2XRmkC19D8rQGFsjKSgteq/o1hTZvIG/wuDq8fanpBDrLkLq+aEN/6y5XQ==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", + "license": "MIT" + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/undici": { + "version": "5.27.2", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.27.2.tgz", + "integrity": "sha512-iS857PdOEy/y3wlM3yRp+6SNQQ6xU0mmZcwRSriqk+et/cwWAtwmIGf6WkoDN2EK/AMdCO/dfXzIwi+rFMrjjQ==", + "license": "MIT", + "dependencies": { + "@fastify/busboy": "^2.0.0" + }, + "engines": { + "node": ">=14.0" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true, + "license": "MIT" + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/universal-user-agent": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", + "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==", + "license": "ISC" + }, + "node_modules/update-browserslist-db": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz", + "integrity": "sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.1.2", + "picocolors": "^1.0.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true, + "license": "MIT" + }, + "node_modules/v8-to-istanbul": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.3.tgz", + "integrity": "sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg==", + "dev": true, + "license": "ISC", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "license": "MIT", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yarn": { + "version": "1.22.22", + "resolved": "https://registry.npmjs.org/yarn/-/yarn-1.22.22.tgz", + "integrity": "sha512-prL3kGtyG7o9Z9Sv8IPfBNrWTDmXB4Qbes8A9rEzt6wkJV8mUvoirjU0Mp3GGAU06Y0XQyA3/2/RQFVuK7MTfg==", + "hasInstallScript": true, + "license": "BSD-2-Clause", + "bin": { + "yarn": "bin/yarn.js", + "yarnpkg": "bin/yarn.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/package.json b/package.json index 03bdec6..a2a3701 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,8 @@ "@actions/github": "^5.1.1", "minimatch": "^6.1.5", "p-limit": "3.1.0", - "ssh2-sftp-client": "^9.0.4" + "ssh2-sftp-client": "^9.0.4", + "yarn": "^1.22.22" }, "devDependencies": { "@babel/preset-env": "^7.20.2", diff --git a/src/main.ts b/src/main.ts index 02a9d67..e6689cd 100644 --- a/src/main.ts +++ b/src/main.ts @@ -66,32 +66,30 @@ function file_to_string(path: string){ // creates a dictionary of remote file sizes async function getRemoteFileSizes(sftp: Client, path: string,fromPath: string) { - debug(`Getting file sizes in ${path}`); + debug(`Getting file sizes in ${path}`) if(path ==="./"){ - path="."; + path="." } - const files = await sftp.list(path); - const fileSizes: Record = {}; + // const files = await sftp.list(path) + const fileSizes: Record = {} const processDirectory = async (dirPath: string) => { - const dirFiles = await sftp.list(dirPath); - for (const item of dirFiles) { - const fullPath = `${dirPath}/${item.name}`; - const dirPathSliced= dirPath.slice(1); - const key=`${fromPath}${dirPathSliced}/${item.name}`; - if (item.type === "-") { - - fileSizes[key] = item.size; - debug(`${key} - size: ${item.size}`); - } else if (item.type === "d") { - await processDirectory(fullPath); // Recursive call + const dirFiles = await sftp.list(dirPath) + for(const item of dirFiles) { + const fullPath = `${dirPath}/${item.name}` + const key=`${dirPath}/${item.name}` + if(item.type === "-") { + fileSizes[key] = item.size + } + else if (item.type === "d") { + await processDirectory(fullPath) // Recursive call + } } - } - }; + } - await processDirectory(path); - return fileSizes; - } + await processDirectory(path) + return fileSizes +} async function main(sftp: Client){ try { const server: string = getInput("server") @@ -104,7 +102,7 @@ async function main(sftp: Client){ const uploads: Upload[] = parse_uploads(getInput("uploads")) const ignored: string[] = parse_ignored(getInput("ignore")) const shouldDelete: boolean = getBooleanInput("delete") - const compare: boolean = getBooleanInput("compare"); + const compare: boolean = getBooleanInput("compare") // attempt to read ignored files from a file, if it is not defined directly if(ignored.length == 0){ ignored.push(...parse_ignored(file_to_string(getInput("ignore-from")))) @@ -134,73 +132,73 @@ async function main(sftp: Client){ promises.splice(0,promises.length) } // get remote file sizes - const remoteFileSizesDict: Record[] = []; + const remoteFileSizesDict: Record[] = [] for (const upload of uploads) { - remoteFileSizesDict.push(await limit(() => ( getRemoteFileSizes(sftp, upload.to,upload.from)))); + remoteFileSizesDict.push(await limit(() => ( getRemoteFileSizes(sftp, upload.to,upload.from)))) } debug("Preparing upload...") if(compare){ - let i =0; - for (const upload of uploads) { - debug(`Processing ${upload.from} to ${upload.to}`); - promises.push( - limit( async () =>{ - await sftp.uploadDir(upload.from, upload.to, { - filter: file=> { - if (is_uploadable(file, ignored)) { - // Compare the local file with the remote file - if (remoteFileSizesDict[i].hasOwnProperty(`./${file}`)) { - if ( remoteFileSizesDict[i][`./${file}`] !== fs.statSync(file).size) { - if(isDryRun){ - debug(`${file} would have been uploaded because it has changed`) - return false - }else{ - debug(`Uploading ${file} because it has changed`); - return true; - } - } - } - else { - if(isDryRun){ - debug(`${file} would have been uploaded because it does not exist`) - return false - }else{ - debug(`Uploading ${file} because it does not exist`); - return true; + let i =0 + for (const upload of uploads) { + debug(`Processing ${upload.from} to ${upload.to}`) + promises.push( + limit( async () =>{ + await sftp.uploadDir(upload.from, upload.to, { + filter: file=> { + if (is_uploadable(file, ignored)) { + // Compare the local file with the remote file + if (`./${file}` in remoteFileSizesDict[i]) { + if ( remoteFileSizesDict[i][`./${file}`] !== fs.statSync(file).size) { + if(isDryRun){ + debug(`${file} would have been uploaded because it has changed`) + return false + }else{ + debug(`Uploading ${file} because it has changed`) + return true + } + } + } + else { + if(isDryRun){ + debug(`${file} would have been uploaded because it does not exist`) + return false + }else{ + debug(`Uploading ${file} because it does not exist`) + return true + } + } + } + debug(`Skipping ${file}`) + + return false + }, + }) + i++ } - } - } - debug(`Skipping ${file}`); - - return false; - }, - }) - i++; - } - ) - ); - } - }else{ - for(const upload of uploads) { - debug(`Processing ${upload.from} to ${upload.to}`) - promises.push(limit(() => sftp.uploadDir(upload.from, upload.to, { - filter: file => { - if(is_uploadable(file, ignored)){ - if(isDryRun){ - console.log(`${file} would have been uploaded`) - return false - }else{ - debug(`Uploading ${file}`) - return true + ) + ) + } + }else{ + for(const upload of uploads) { + debug(`Processing ${upload.from} to ${upload.to}`) + promises.push(limit(() => sftp.uploadDir(upload.from, upload.to, { + filter: file => { + if(is_uploadable(file, ignored)){ + if(isDryRun){ + console.log(`${file} would have been uploaded`) + return false + }else{ + debug(`Uploading ${file}`) + return true + } } + debug(`Skipping ${file}`) + return false } - debug(`Skipping ${file}`) - return false - } - }))) + }))) + } } - } await Promise.allSettled(promises) debug("Upload process complete.") await sftp.end() diff --git a/yarn.lock b/yarn.lock index 122a214..109919e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4,12 +4,12 @@ "@aashutoshrathi/word-wrap@^1.2.3": version "1.2.6" - resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" + resolved "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz" integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== "@actions/core@^1.10.0": version "1.10.1" - resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.10.1.tgz#61108e7ac40acae95ee36da074fa5850ca4ced8a" + resolved "https://registry.npmjs.org/@actions/core/-/core-1.10.1.tgz" integrity sha512-3lBR9EDAY+iYIpTnTIXmWcNbX3T2kCkAEQGIQx4NVQ0575nk2k3GRZDTPQG+vVtS2izSLmINlxXf0uLtnrTP+g== dependencies: "@actions/http-client" "^2.0.1" @@ -27,7 +27,7 @@ "@actions/http-client@^2.0.1": version "2.2.0" - resolved "https://registry.yarnpkg.com/@actions/http-client/-/http-client-2.2.0.tgz#f8239f375be6185fcd07765efdcf0031ad5df1a0" + resolved "https://registry.npmjs.org/@actions/http-client/-/http-client-2.2.0.tgz" integrity sha512-q+epW0trjVUUHboliPb4UF9g2msf+w61b32tAkFEwL/IwP0DQWgbCMM0Hbe3e3WXSKz5VcUXbzJQgy8Hkra/Lg== dependencies: tunnel "^0.0.6" @@ -35,84 +35,84 @@ "@ampproject/remapping@^2.2.0": version "2.2.1" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" + resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz" integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== dependencies: "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.22.13": - version "7.22.13" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e" - integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz" + integrity sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA== dependencies: - "@babel/highlight" "^7.22.13" - chalk "^2.4.2" + "@babel/highlight" "^7.24.7" + picocolors "^1.0.0" -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9", "@babel/compat-data@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.3.tgz#3febd552541e62b5e883a25eb3effd7c7379db11" - integrity sha512-BmR4bWbDIoFJmJ9z2cZ8Gmm2MXgEDgjdWgpKmKWUt54UGFJdlj31ECtbaDvCG/qVdG3AQ1SfpZEs01lUFbzLOQ== +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.3", "@babel/compat-data@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.7.tgz" + integrity sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw== -"@babel/core@^7.11.6", "@babel/core@^7.12.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.3.tgz#5ec09c8803b91f51cc887dedc2654a35852849c9" - integrity sha512-Jg+msLuNuCJDyBvFv5+OKOUjWMZgd85bKjbICd3zWrKAo+bJ49HJufi7CQE0q0uR8NGyO6xkCACScNqyjHSZew== +"@babel/core@^7.0.0", "@babel/core@^7.0.0-0", "@babel/core@^7.0.0-0 || ^8.0.0-0 <8.0.0", "@babel/core@^7.11.6", "@babel/core@^7.12.0", "@babel/core@^7.12.3", "@babel/core@^7.13.0", "@babel/core@^7.4.0 || ^8.0.0-0 <8.0.0", "@babel/core@^7.8.0", "@babel/core@>=7.0.0-beta.0 <8": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.24.7.tgz" + integrity sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.22.13" - "@babel/generator" "^7.23.3" - "@babel/helper-compilation-targets" "^7.22.15" - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.23.2" - "@babel/parser" "^7.23.3" - "@babel/template" "^7.22.15" - "@babel/traverse" "^7.23.3" - "@babel/types" "^7.23.3" + "@babel/code-frame" "^7.24.7" + "@babel/generator" "^7.24.7" + "@babel/helper-compilation-targets" "^7.24.7" + "@babel/helper-module-transforms" "^7.24.7" + "@babel/helpers" "^7.24.7" + "@babel/parser" "^7.24.7" + "@babel/template" "^7.24.7" + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" json5 "^2.2.3" semver "^6.3.1" -"@babel/generator@^7.23.3", "@babel/generator@^7.7.2": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.3.tgz#86e6e83d95903fbe7613f448613b8b319f330a8e" - integrity sha512-keeZWAV4LU3tW0qRi19HRpabC/ilM0HRBBzf9/k8FFiG4KVpiv0FIy4hHfLfFQZNhziCTPTmd59zoyv6DNISzg== +"@babel/generator@^7.24.7", "@babel/generator@^7.7.2": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz" + integrity sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA== dependencies: - "@babel/types" "^7.23.3" - "@jridgewell/gen-mapping" "^0.3.2" - "@jridgewell/trace-mapping" "^0.3.17" + "@babel/types" "^7.24.7" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" "@babel/helper-annotate-as-pure@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882" + resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz" integrity sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg== dependencies: "@babel/types" "^7.22.5" "@babel/helper-builder-binary-assignment-operator-visitor@^7.22.15": version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz#5426b109cf3ad47b91120f8328d8ab1be8b0b956" + resolved "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz" integrity sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw== dependencies: "@babel/types" "^7.22.15" -"@babel/helper-compilation-targets@^7.22.15", "@babel/helper-compilation-targets@^7.22.6": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz#0698fc44551a26cf29f18d4662d5bf545a6cfc52" - integrity sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw== +"@babel/helper-compilation-targets@^7.22.15", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz" + integrity sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg== dependencies: - "@babel/compat-data" "^7.22.9" - "@babel/helper-validator-option" "^7.22.15" - browserslist "^4.21.9" + "@babel/compat-data" "^7.24.7" + "@babel/helper-validator-option" "^7.24.7" + browserslist "^4.22.2" lru-cache "^5.1.1" semver "^6.3.1" "@babel/helper-create-class-features-plugin@^7.22.15": version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz#97a61b385e57fe458496fad19f8e63b63c867de4" + resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz" integrity sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -127,7 +127,7 @@ "@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.22.15", "@babel/helper-create-regexp-features-plugin@^7.22.5": version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz#5ee90093914ea09639b01c711db0d6775e558be1" + resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz" integrity sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -136,7 +136,7 @@ "@babel/helper-define-polyfill-provider@^0.4.3": version "0.4.3" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.3.tgz#a71c10f7146d809f4a256c373f462d9bba8cf6ba" + resolved "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.3.tgz" integrity sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug== dependencies: "@babel/helper-compilation-targets" "^7.22.6" @@ -145,66 +145,69 @@ lodash.debounce "^4.0.8" resolve "^1.14.2" -"@babel/helper-environment-visitor@^7.22.20", "@babel/helper-environment-visitor@^7.22.5": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" - integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== +"@babel/helper-environment-visitor@^7.22.20", "@babel/helper-environment-visitor@^7.22.5", "@babel/helper-environment-visitor@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz" + integrity sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ== + dependencies: + "@babel/types" "^7.24.7" -"@babel/helper-function-name@^7.22.5", "@babel/helper-function-name@^7.23.0": - version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" - integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== +"@babel/helper-function-name@^7.22.5", "@babel/helper-function-name@^7.23.0", "@babel/helper-function-name@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz" + integrity sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA== dependencies: - "@babel/template" "^7.22.15" - "@babel/types" "^7.23.0" + "@babel/template" "^7.24.7" + "@babel/types" "^7.24.7" -"@babel/helper-hoist-variables@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" - integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== +"@babel/helper-hoist-variables@^7.22.5", "@babel/helper-hoist-variables@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz" + integrity sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ== dependencies: - "@babel/types" "^7.22.5" + "@babel/types" "^7.24.7" "@babel/helper-member-expression-to-functions@^7.22.15": version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz#9263e88cc5e41d39ec18c9a3e0eced59a3e7d366" + resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz" integrity sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA== dependencies: "@babel/types" "^7.23.0" -"@babel/helper-module-imports@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" - integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== +"@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz" + integrity sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA== dependencies: - "@babel/types" "^7.22.15" + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" -"@babel/helper-module-transforms@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz#d7d12c3c5d30af5b3c0fcab2a6d5217773e2d0f1" - integrity sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ== +"@babel/helper-module-transforms@^7.23.3", "@babel/helper-module-transforms@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz" + integrity sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ== dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-simple-access" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-environment-visitor" "^7.24.7" + "@babel/helper-module-imports" "^7.24.7" + "@babel/helper-simple-access" "^7.24.7" + "@babel/helper-split-export-declaration" "^7.24.7" + "@babel/helper-validator-identifier" "^7.24.7" "@babel/helper-optimise-call-expression@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#f21531a9ccbff644fdd156b4077c16ff0c3f609e" + resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz" integrity sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw== dependencies: "@babel/types" "^7.22.5" "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" + resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz" integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== "@babel/helper-remap-async-to-generator@^7.22.20": version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz#7b68e1cb4fa964d2996fd063723fb48eca8498e0" + resolved "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz" integrity sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -213,91 +216,92 @@ "@babel/helper-replace-supers@^7.22.20", "@babel/helper-replace-supers@^7.22.9": version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz#e37d367123ca98fe455a9887734ed2e16eb7a793" + resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz" integrity sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw== dependencies: "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-member-expression-to-functions" "^7.22.15" "@babel/helper-optimise-call-expression" "^7.22.5" -"@babel/helper-simple-access@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" - integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== +"@babel/helper-simple-access@^7.22.5", "@babel/helper-simple-access@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz" + integrity sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg== dependencies: - "@babel/types" "^7.22.5" + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#007f15240b5751c537c40e77abb4e89eeaaa8847" + resolved "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz" integrity sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q== dependencies: "@babel/types" "^7.22.5" -"@babel/helper-split-export-declaration@^7.22.6": - version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" - integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== +"@babel/helper-split-export-declaration@^7.22.6", "@babel/helper-split-export-declaration@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz" + integrity sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA== dependencies: - "@babel/types" "^7.22.5" + "@babel/types" "^7.24.7" -"@babel/helper-string-parser@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" - integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== +"@babel/helper-string-parser@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz" + integrity sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg== -"@babel/helper-validator-identifier@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" - integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== +"@babel/helper-validator-identifier@^7.22.20", "@babel/helper-validator-identifier@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz" + integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== -"@babel/helper-validator-option@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" - integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== +"@babel/helper-validator-option@^7.22.15", "@babel/helper-validator-option@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz" + integrity sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw== "@babel/helper-wrap-function@^7.22.20": version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz#15352b0b9bfb10fc9c76f79f6342c00e3411a569" + resolved "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz" integrity sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw== dependencies: "@babel/helper-function-name" "^7.22.5" "@babel/template" "^7.22.15" "@babel/types" "^7.22.19" -"@babel/helpers@^7.23.2": - version "7.23.2" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.2.tgz#2832549a6e37d484286e15ba36a5330483cac767" - integrity sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ== +"@babel/helpers@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.7.tgz" + integrity sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg== dependencies: - "@babel/template" "^7.22.15" - "@babel/traverse" "^7.23.2" - "@babel/types" "^7.23.0" + "@babel/template" "^7.24.7" + "@babel/types" "^7.24.7" -"@babel/highlight@^7.22.13": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.20.tgz#4ca92b71d80554b01427815e06f2df965b9c1f54" - integrity sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg== +"@babel/highlight@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz" + integrity sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw== dependencies: - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-validator-identifier" "^7.24.7" chalk "^2.4.2" js-tokens "^4.0.0" + picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.15", "@babel/parser@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.3.tgz#0ce0be31a4ca4f1884b5786057cadcb6c3be58f9" - integrity sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw== +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz" + integrity sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw== "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.23.3.tgz#5cd1c87ba9380d0afb78469292c954fee5d2411a" + resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.23.3.tgz" integrity sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.23.3.tgz#f6652bb16b94f8f9c20c50941e16e9756898dc5d" + resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.23.3.tgz" integrity sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -306,7 +310,7 @@ "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.23.3.tgz#20c60d4639d18f7da8602548512e9d3a4c8d7098" + resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.23.3.tgz" integrity sha512-XaJak1qcityzrX0/IU5nKHb34VaibwP3saKqG6a/tppelgllOH13LUann4ZCIBcVOeE6H18K4Vx9QKkVww3z/w== dependencies: "@babel/helper-environment-visitor" "^7.22.20" @@ -314,152 +318,152 @@ "@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": version "7.21.0-placeholder-for-preset-env.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz" integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w== "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz" integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-bigint@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz" integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: "@babel/helper-plugin-utils" "^7.12.13" "@babel/plugin-syntax-class-static-block@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz" integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz" integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-export-namespace-from@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz" integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== dependencies: "@babel/helper-plugin-utils" "^7.8.3" "@babel/plugin-syntax-import-assertions@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.23.3.tgz#9c05a7f592982aff1a2768260ad84bcd3f0c77fc" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.23.3.tgz" integrity sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-import-attributes@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.23.3.tgz#992aee922cf04512461d7dae3ff6951b90a2dc06" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.23.3.tgz" integrity sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-import-meta@^7.10.4", "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz" integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz" integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-jsx@^7.23.3", "@babel/plugin-syntax-jsx@^7.7.2": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz#8f2e4f8a9b5f9aa16067e142c1ac9cd9f810f473" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz" integrity sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz" integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz" integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz" integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-optional-catch-binding@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz" integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-optional-chaining@^7.8.3": version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz" integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-private-property-in-object@^7.14.5": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz" integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg== dependencies: "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3": version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-typescript@^7.23.3", "@babel/plugin-syntax-typescript@^7.7.2": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz#24f460c85dbbc983cd2b9c4994178bcc01df958f" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz" integrity sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-unicode-sets-regex@^7.18.6": version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz" integrity sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.18.6" @@ -467,14 +471,14 @@ "@babel/plugin-transform-arrow-functions@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.23.3.tgz#94c6dcfd731af90f27a79509f9ab7fb2120fc38b" + resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.23.3.tgz" integrity sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-async-generator-functions@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.3.tgz#9df2627bad7f434ed13eef3e61b2b65cafd4885b" + resolved "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.3.tgz" integrity sha512-59GsVNavGxAXCDDbakWSMJhajASb4kBCqDjqJsv+p5nKdbz7istmZ3HrX3L2LuiI80+zsOADCvooqQH3qGCucQ== dependencies: "@babel/helper-environment-visitor" "^7.22.20" @@ -484,7 +488,7 @@ "@babel/plugin-transform-async-to-generator@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.23.3.tgz#d1f513c7a8a506d43f47df2bf25f9254b0b051fa" + resolved "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.23.3.tgz" integrity sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw== dependencies: "@babel/helper-module-imports" "^7.22.15" @@ -493,21 +497,21 @@ "@babel/plugin-transform-block-scoped-functions@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.23.3.tgz#fe1177d715fb569663095e04f3598525d98e8c77" + resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.23.3.tgz" integrity sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-block-scoping@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.3.tgz#e99a3ff08f58edd28a8ed82481df76925a4ffca7" + resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.3.tgz" integrity sha512-QPZxHrThbQia7UdvfpaRRlq/J9ciz1J4go0k+lPBXbgaNeY7IQrBj/9ceWjvMMI07/ZBzHl/F0R/2K0qH7jCVw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-class-properties@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.23.3.tgz#35c377db11ca92a785a718b6aa4e3ed1eb65dc48" + resolved "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.23.3.tgz" integrity sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg== dependencies: "@babel/helper-create-class-features-plugin" "^7.22.15" @@ -515,7 +519,7 @@ "@babel/plugin-transform-class-static-block@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.23.3.tgz#56f2371c7e5bf6ff964d84c5dc4d4db5536b5159" + resolved "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.23.3.tgz" integrity sha512-PENDVxdr7ZxKPyi5Ffc0LjXdnJyrJxyqF5T5YjlVg4a0VFfQHW0r8iAtRiDXkfHlu1wwcvdtnndGYIeJLSuRMQ== dependencies: "@babel/helper-create-class-features-plugin" "^7.22.15" @@ -524,7 +528,7 @@ "@babel/plugin-transform-classes@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.23.3.tgz#73380c632c095b03e8503c24fd38f95ad41ffacb" + resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.23.3.tgz" integrity sha512-FGEQmugvAEu2QtgtU0uTASXevfLMFfBeVCIIdcQhn/uBQsMTjBajdnAtanQlOcuihWh10PZ7+HWvc7NtBwP74w== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -539,7 +543,7 @@ "@babel/plugin-transform-computed-properties@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.23.3.tgz#652e69561fcc9d2b50ba4f7ac7f60dcf65e86474" + resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.23.3.tgz" integrity sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -547,14 +551,14 @@ "@babel/plugin-transform-destructuring@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.3.tgz#8c9ee68228b12ae3dff986e56ed1ba4f3c446311" + resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.3.tgz" integrity sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-dotall-regex@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.23.3.tgz#3f7af6054882ede89c378d0cf889b854a993da50" + resolved "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.23.3.tgz" integrity sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.15" @@ -562,14 +566,14 @@ "@babel/plugin-transform-duplicate-keys@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.23.3.tgz#664706ca0a5dfe8d066537f99032fc1dc8b720ce" + resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.23.3.tgz" integrity sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-dynamic-import@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.23.3.tgz#82625924da9ed5fb11a428efb02e43bc9a3ab13e" + resolved "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.23.3.tgz" integrity sha512-vTG+cTGxPFou12Rj7ll+eD5yWeNl5/8xvQvF08y5Gv3v4mZQoyFf8/n9zg4q5vvCWt5jmgymfzMAldO7orBn7A== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -577,7 +581,7 @@ "@babel/plugin-transform-exponentiation-operator@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.23.3.tgz#ea0d978f6b9232ba4722f3dbecdd18f450babd18" + resolved "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.23.3.tgz" integrity sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ== dependencies: "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.15" @@ -585,7 +589,7 @@ "@babel/plugin-transform-export-namespace-from@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.23.3.tgz#dcd066d995f6ac6077e5a4ccb68322a01e23ac49" + resolved "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.23.3.tgz" integrity sha512-yCLhW34wpJWRdTxxWtFZASJisihrfyMOTOQexhVzA78jlU+dH7Dw+zQgcPepQ5F3C6bAIiblZZ+qBggJdHiBAg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -593,14 +597,14 @@ "@babel/plugin-transform-for-of@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.23.3.tgz#afe115ff0fbce735e02868d41489093c63e15559" + resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.23.3.tgz" integrity sha512-X8jSm8X1CMwxmK878qsUGJRmbysKNbdpTv/O1/v0LuY/ZkZrng5WYiekYSdg9m09OTmDDUWeEDsTE+17WYbAZw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-function-name@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.23.3.tgz#8f424fcd862bf84cb9a1a6b42bc2f47ed630f8dc" + resolved "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.23.3.tgz" integrity sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw== dependencies: "@babel/helper-compilation-targets" "^7.22.15" @@ -609,7 +613,7 @@ "@babel/plugin-transform-json-strings@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.23.3.tgz#489724ab7d3918a4329afb4172b2fd2cf3c8d245" + resolved "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.23.3.tgz" integrity sha512-H9Ej2OiISIZowZHaBwF0tsJOih1PftXJtE8EWqlEIwpc7LMTGq0rPOrywKLQ4nefzx8/HMR0D3JGXoMHYvhi0A== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -617,14 +621,14 @@ "@babel/plugin-transform-literals@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.23.3.tgz#8214665f00506ead73de157eba233e7381f3beb4" + resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.23.3.tgz" integrity sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-logical-assignment-operators@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.23.3.tgz#3a406d6083feb9487083bca6d2334a3c9b6c4808" + resolved "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.23.3.tgz" integrity sha512-+pD5ZbxofyOygEp+zZAfujY2ShNCXRpDRIPOiBmTO693hhyOEteZgl876Xs9SAHPQpcV0vz8LvA/T+w8AzyX8A== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -632,14 +636,14 @@ "@babel/plugin-transform-member-expression-literals@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.23.3.tgz#e37b3f0502289f477ac0e776b05a833d853cabcc" + resolved "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.23.3.tgz" integrity sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-modules-amd@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.3.tgz#e19b55436a1416829df0a1afc495deedfae17f7d" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.3.tgz" integrity sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw== dependencies: "@babel/helper-module-transforms" "^7.23.3" @@ -647,7 +651,7 @@ "@babel/plugin-transform-modules-commonjs@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz#661ae831b9577e52be57dd8356b734f9700b53b4" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz" integrity sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA== dependencies: "@babel/helper-module-transforms" "^7.23.3" @@ -656,7 +660,7 @@ "@babel/plugin-transform-modules-systemjs@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.3.tgz#fa7e62248931cb15b9404f8052581c302dd9de81" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.3.tgz" integrity sha512-ZxyKGTkF9xT9YJuKQRo19ewf3pXpopuYQd8cDXqNzc3mUNbOME0RKMoZxviQk74hwzfQsEe66dE92MaZbdHKNQ== dependencies: "@babel/helper-hoist-variables" "^7.22.5" @@ -666,7 +670,7 @@ "@babel/plugin-transform-modules-umd@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.23.3.tgz#5d4395fccd071dfefe6585a4411aa7d6b7d769e9" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.23.3.tgz" integrity sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg== dependencies: "@babel/helper-module-transforms" "^7.23.3" @@ -674,7 +678,7 @@ "@babel/plugin-transform-named-capturing-groups-regex@^7.22.5": version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz#67fe18ee8ce02d57c855185e27e3dc959b2e991f" + resolved "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz" integrity sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.5" @@ -682,14 +686,14 @@ "@babel/plugin-transform-new-target@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.23.3.tgz#5491bb78ed6ac87e990957cea367eab781c4d980" + resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.23.3.tgz" integrity sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-nullish-coalescing-operator@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.23.3.tgz#8a613d514b521b640344ed7c56afeff52f9413f8" + resolved "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.23.3.tgz" integrity sha512-xzg24Lnld4DYIdysyf07zJ1P+iIfJpxtVFOzX4g+bsJ3Ng5Le7rXx9KwqKzuyaUeRnt+I1EICwQITqc0E2PmpA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -697,7 +701,7 @@ "@babel/plugin-transform-numeric-separator@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.23.3.tgz#2f8da42b75ba89e5cfcd677afd0856d52c0c2e68" + resolved "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.23.3.tgz" integrity sha512-s9GO7fIBi/BLsZ0v3Rftr6Oe4t0ctJ8h4CCXfPoEJwmvAPMyNrfkOOJzm6b9PX9YXcCJWWQd/sBF/N26eBiMVw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -705,7 +709,7 @@ "@babel/plugin-transform-object-rest-spread@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.23.3.tgz#509373753b5f7202fe1940e92fd075bd7874955f" + resolved "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.23.3.tgz" integrity sha512-VxHt0ANkDmu8TANdE9Kc0rndo/ccsmfe2Cx2y5sI4hu3AukHQ5wAu4cM7j3ba8B9548ijVyclBU+nuDQftZsog== dependencies: "@babel/compat-data" "^7.23.3" @@ -716,7 +720,7 @@ "@babel/plugin-transform-object-super@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.23.3.tgz#81fdb636dcb306dd2e4e8fd80db5b2362ed2ebcd" + resolved "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.23.3.tgz" integrity sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -724,7 +728,7 @@ "@babel/plugin-transform-optional-catch-binding@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.23.3.tgz#362c0b545ee9e5b0fa9d9e6fe77acf9d4c480027" + resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.23.3.tgz" integrity sha512-LxYSb0iLjUamfm7f1D7GpiS4j0UAC8AOiehnsGAP8BEsIX8EOi3qV6bbctw8M7ZvLtcoZfZX5Z7rN9PlWk0m5A== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -732,7 +736,7 @@ "@babel/plugin-transform-optional-chaining@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.3.tgz#92fc83f54aa3adc34288933fa27e54c13113f4be" + resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.3.tgz" integrity sha512-zvL8vIfIUgMccIAK1lxjvNv572JHFJIKb4MWBz5OGdBQA0fB0Xluix5rmOby48exiJc987neOmP/m9Fnpkz3Tg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -741,14 +745,14 @@ "@babel/plugin-transform-parameters@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.23.3.tgz#83ef5d1baf4b1072fa6e54b2b0999a7b2527e2af" + resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.23.3.tgz" integrity sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-private-methods@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.23.3.tgz#b2d7a3c97e278bfe59137a978d53b2c2e038c0e4" + resolved "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.23.3.tgz" integrity sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g== dependencies: "@babel/helper-create-class-features-plugin" "^7.22.15" @@ -756,7 +760,7 @@ "@babel/plugin-transform-private-property-in-object@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.23.3.tgz#5cd34a2ce6f2d008cc8f91d8dcc29e2c41466da6" + resolved "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.23.3.tgz" integrity sha512-a5m2oLNFyje2e/rGKjVfAELTVI5mbA0FeZpBnkOWWV7eSmKQ+T/XW0Vf+29ScLzSxX+rnsarvU0oie/4m6hkxA== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -766,14 +770,14 @@ "@babel/plugin-transform-property-literals@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.23.3.tgz#54518f14ac4755d22b92162e4a852d308a560875" + resolved "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.23.3.tgz" integrity sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-regenerator@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.23.3.tgz#141afd4a2057298602069fce7f2dc5173e6c561c" + resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.23.3.tgz" integrity sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -781,21 +785,21 @@ "@babel/plugin-transform-reserved-words@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.23.3.tgz#4130dcee12bd3dd5705c587947eb715da12efac8" + resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.23.3.tgz" integrity sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-shorthand-properties@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.23.3.tgz#97d82a39b0e0c24f8a981568a8ed851745f59210" + resolved "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.23.3.tgz" integrity sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-spread@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.23.3.tgz#41d17aacb12bde55168403c6f2d6bdca563d362c" + resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.23.3.tgz" integrity sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -803,28 +807,28 @@ "@babel/plugin-transform-sticky-regex@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.23.3.tgz#dec45588ab4a723cb579c609b294a3d1bd22ff04" + resolved "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.23.3.tgz" integrity sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-template-literals@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.23.3.tgz#5f0f028eb14e50b5d0f76be57f90045757539d07" + resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.23.3.tgz" integrity sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-typeof-symbol@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.23.3.tgz#9dfab97acc87495c0c449014eb9c547d8966bca4" + resolved "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.23.3.tgz" integrity sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-typescript@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.3.tgz#ce806e6cb485d468c48c4f717696719678ab0138" + resolved "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.3.tgz" integrity sha512-ogV0yWnq38CFwH20l2Afz0dfKuZBx9o/Y2Rmh5vuSS0YD1hswgEgTfyTzuSrT2q9btmHRSqYoSfwFUVaC1M1Jw== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" @@ -834,14 +838,14 @@ "@babel/plugin-transform-unicode-escapes@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.23.3.tgz#1f66d16cab01fab98d784867d24f70c1ca65b925" + resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.23.3.tgz" integrity sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-unicode-property-regex@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.23.3.tgz#19e234129e5ffa7205010feec0d94c251083d7ad" + resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.23.3.tgz" integrity sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.15" @@ -849,7 +853,7 @@ "@babel/plugin-transform-unicode-regex@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.23.3.tgz#26897708d8f42654ca4ce1b73e96140fbad879dc" + resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.23.3.tgz" integrity sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.15" @@ -857,7 +861,7 @@ "@babel/plugin-transform-unicode-sets-regex@^7.23.3": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.23.3.tgz#4fb6f0a719c2c5859d11f6b55a050cc987f3799e" + resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.23.3.tgz" integrity sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.22.15" @@ -865,7 +869,7 @@ "@babel/preset-env@^7.20.2": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.23.3.tgz#d299e0140a7650684b95c62be2db0ef8c975143e" + resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.23.3.tgz" integrity sha512-ovzGc2uuyNfNAs/jyjIGxS8arOHS5FENZaNn4rtE7UdKMMkqHCvboHfcuhWLZNX5cB44QfcGNWjaevxMzzMf+Q== dependencies: "@babel/compat-data" "^7.23.3" @@ -951,7 +955,7 @@ "@babel/preset-modules@0.1.6-no-external-plugins": version "0.1.6-no-external-plugins" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz#ccb88a2c49c817236861fee7826080573b8a923a" + resolved "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz" integrity sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -960,7 +964,7 @@ "@babel/preset-typescript@^7.18.6": version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.23.3.tgz#14534b34ed5b6d435aa05f1ae1c5e7adcc01d913" + resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.23.3.tgz" integrity sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" @@ -971,60 +975,53 @@ "@babel/regjsgen@^0.8.0": version "0.8.0" - resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310" + resolved "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz" integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== -"@babel/runtime@^7.18.6": +"@babel/runtime@^7.18.6", "@babel/runtime@^7.8.4": version "7.20.13" resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz" integrity sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA== dependencies: regenerator-runtime "^0.13.11" -"@babel/runtime@^7.8.4": - version "7.23.2" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.2.tgz#062b0ac103261d68a966c4c7baf2ae3e62ec3885" - integrity sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg== - dependencies: - regenerator-runtime "^0.14.0" - -"@babel/template@^7.22.15", "@babel/template@^7.3.3": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" - integrity sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w== - dependencies: - "@babel/code-frame" "^7.22.13" - "@babel/parser" "^7.22.15" - "@babel/types" "^7.22.15" - -"@babel/traverse@^7.23.2", "@babel/traverse@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.3.tgz#26ee5f252e725aa7aca3474aa5b324eaf7908b5b" - integrity sha512-+K0yF1/9yR0oHdE0StHuEj3uTPzwwbrLGfNOndVJVV2TqA5+j3oljJUb4nmB954FLGjNem976+B+eDuLIjesiQ== - dependencies: - "@babel/code-frame" "^7.22.13" - "@babel/generator" "^7.23.3" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.23.3" - "@babel/types" "^7.23.3" - debug "^4.1.0" +"@babel/template@^7.22.15", "@babel/template@^7.24.7", "@babel/template@^7.3.3": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz" + integrity sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig== + dependencies: + "@babel/code-frame" "^7.24.7" + "@babel/parser" "^7.24.7" + "@babel/types" "^7.24.7" + +"@babel/traverse@^7.24.7": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz" + integrity sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA== + dependencies: + "@babel/code-frame" "^7.24.7" + "@babel/generator" "^7.24.7" + "@babel/helper-environment-visitor" "^7.24.7" + "@babel/helper-function-name" "^7.24.7" + "@babel/helper-hoist-variables" "^7.24.7" + "@babel/helper-split-export-declaration" "^7.24.7" + "@babel/parser" "^7.24.7" + "@babel/types" "^7.24.7" + debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.3", "@babel/types@^7.3.3", "@babel/types@^7.4.4": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.3.tgz#d5ea892c07f2ec371ac704420f4dcdb07b5f9598" - integrity sha512-OZnvoH2l8PK5eUvEcUyCt/sXgr/h+UWpVuBbOljwcrAgUl6lpchoQ++PHGyQy1AtYnVA6CEq3y5xeEI10brpXw== +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.7", "@babel/types@^7.3.3", "@babel/types@^7.4.4": + version "7.24.7" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz" + integrity sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q== dependencies: - "@babel/helper-string-parser" "^7.22.5" - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-string-parser" "^7.24.7" + "@babel/helper-validator-identifier" "^7.24.7" to-fast-properties "^2.0.0" "@bcoe/v8-coverage@^0.2.3": version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== "@cspotcode/source-map-support@^0.8.0": @@ -1036,19 +1033,19 @@ "@eslint-community/eslint-utils@^4.2.0": version "4.4.0" - resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" + resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz" integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== dependencies: eslint-visitor-keys "^3.3.0" "@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1": version "4.10.0" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.0.tgz#548f6de556857c8bb73bbee70c35dc82a2e74d63" + resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz" integrity sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA== "@eslint/eslintrc@^2.1.3": version "2.1.3" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.3.tgz#797470a75fe0fbd5a53350ee715e85e87baff22d" + resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz" integrity sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA== dependencies: ajv "^6.12.4" @@ -1063,17 +1060,17 @@ "@eslint/js@8.53.0": version "8.53.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.53.0.tgz#bea56f2ed2b5baea164348ff4d5a879f6f81f20d" + resolved "https://registry.npmjs.org/@eslint/js/-/js-8.53.0.tgz" integrity sha512-Kn7K8dx/5U6+cT1yEhpX1w4PCSg0M+XyRILPgvwcEBjerFWCwQj5sbr3/VmxqV0JGHCBCzyd6LxypEuehypY1w== "@fastify/busboy@^2.0.0": version "2.1.0" - resolved "https://registry.yarnpkg.com/@fastify/busboy/-/busboy-2.1.0.tgz#0709e9f4cb252351c609c6e6d8d6779a8d25edff" + resolved "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.0.tgz" integrity sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA== "@humanwhocodes/config-array@^0.11.13": version "0.11.13" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.13.tgz#075dc9684f40a531d9b26b0822153c1e832ee297" + resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz" integrity sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ== dependencies: "@humanwhocodes/object-schema" "^2.0.1" @@ -1082,17 +1079,17 @@ "@humanwhocodes/module-importer@^1.0.1": version "1.0.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" + resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz" integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== "@humanwhocodes/object-schema@^2.0.1": version "2.0.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz#e5211452df060fa8522b55c7b3c0c4d1981cb044" + resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz" integrity sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw== "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" - resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + resolved "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz" integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== dependencies: camelcase "^5.3.1" @@ -1103,12 +1100,12 @@ "@istanbuljs/schema@^0.1.2": version "0.1.3" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== "@jest/console@^29.7.0": version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.7.0.tgz#cd4822dbdb84529265c5a2bdb529a3c9cc950ffc" + resolved "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz" integrity sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg== dependencies: "@jest/types" "^29.6.3" @@ -1120,7 +1117,7 @@ "@jest/core@^29.7.0": version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.7.0.tgz#b6cccc239f30ff36609658c5a5e2291757ce448f" + resolved "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz" integrity sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg== dependencies: "@jest/console" "^29.7.0" @@ -1154,7 +1151,7 @@ "@jest/environment@^29.7.0": version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.7.0.tgz#24d61f54ff1f786f3cd4073b4b94416383baf2a7" + resolved "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz" integrity sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw== dependencies: "@jest/fake-timers" "^29.7.0" @@ -1164,14 +1161,14 @@ "@jest/expect-utils@^29.7.0": version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.7.0.tgz#023efe5d26a8a70f21677d0a1afc0f0a44e3a1c6" + resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz" integrity sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA== dependencies: jest-get-type "^29.6.3" "@jest/expect@^29.7.0": version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.7.0.tgz#76a3edb0cb753b70dfbfe23283510d3d45432bf2" + resolved "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz" integrity sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ== dependencies: expect "^29.7.0" @@ -1179,7 +1176,7 @@ "@jest/fake-timers@^29.7.0": version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.7.0.tgz#fd91bf1fffb16d7d0d24a426ab1a47a49881a565" + resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz" integrity sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ== dependencies: "@jest/types" "^29.6.3" @@ -1191,7 +1188,7 @@ "@jest/globals@^29.7.0": version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.7.0.tgz#8d9290f9ec47ff772607fa864ca1d5a2efae1d4d" + resolved "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz" integrity sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ== dependencies: "@jest/environment" "^29.7.0" @@ -1201,7 +1198,7 @@ "@jest/reporters@^29.7.0": version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.7.0.tgz#04b262ecb3b8faa83b0b3d321623972393e8f4c7" + resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz" integrity sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg== dependencies: "@bcoe/v8-coverage" "^0.2.3" @@ -1231,14 +1228,14 @@ "@jest/schemas@^29.6.3": version "29.6.3" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" + resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz" integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== dependencies: "@sinclair/typebox" "^0.27.8" "@jest/source-map@^29.6.3": version "29.6.3" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.6.3.tgz#d90ba772095cf37a34a5eb9413f1b562a08554c4" + resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz" integrity sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw== dependencies: "@jridgewell/trace-mapping" "^0.3.18" @@ -1247,7 +1244,7 @@ "@jest/test-result@^29.7.0": version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.7.0.tgz#8db9a80aa1a097bb2262572686734baed9b1657c" + resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz" integrity sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA== dependencies: "@jest/console" "^29.7.0" @@ -1257,7 +1254,7 @@ "@jest/test-sequencer@^29.7.0": version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz#6cef977ce1d39834a3aea887a1726628a6f072ce" + resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz" integrity sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw== dependencies: "@jest/test-result" "^29.7.0" @@ -1267,7 +1264,7 @@ "@jest/transform@^29.7.0": version "29.7.0" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.7.0.tgz#df2dd9c346c7d7768b8a06639994640c642e284c" + resolved "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz" integrity sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw== dependencies: "@babel/core" "^7.11.6" @@ -1286,9 +1283,9 @@ slash "^3.0.0" write-file-atomic "^4.0.2" -"@jest/types@^29.6.3": +"@jest/types@^29.0.0", "@jest/types@^29.6.3": version "29.6.3" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" + resolved "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz" integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw== dependencies: "@jest/schemas" "^29.6.3" @@ -1298,35 +1295,38 @@ "@types/yargs" "^17.0.8" chalk "^4.0.0" -"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": - version "0.3.3" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" - integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== +"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.5": + version "0.3.5" + resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz" + integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== dependencies: - "@jridgewell/set-array" "^1.0.1" + "@jridgewell/set-array" "^1.2.1" "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.9" + "@jridgewell/trace-mapping" "^0.3.24" -"@jridgewell/resolve-uri@^3.0.3": - version "3.1.0" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz" - integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== - -"@jridgewell/resolve-uri@^3.1.0": +"@jridgewell/resolve-uri@^3.0.3", "@jridgewell/resolve-uri@^3.1.0": version "3.1.1" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" + resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz" integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== -"@jridgewell/set-array@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" - integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== +"@jridgewell/set-array@^1.2.1": + version "1.2.1" + resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz" + integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== "@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": version "1.4.15" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== +"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25", "@jridgewell/trace-mapping@^0.3.9": + version "0.3.25" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz" + integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + "@jridgewell/trace-mapping@0.3.9": version "0.3.9" resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz" @@ -1335,30 +1335,22 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.20" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz#72e45707cf240fa6b081d0366f8265b0cd10197f" - integrity sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q== - dependencies: - "@jridgewell/resolve-uri" "^3.1.0" - "@jridgewell/sourcemap-codec" "^1.4.14" - "@nodelib/fs.scandir@2.1.5": version "2.1.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" -"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": +"@nodelib/fs.stat@^2.0.2", "@nodelib/fs.stat@2.0.5": version "2.0.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== "@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": version "1.2.8" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== dependencies: "@nodelib/fs.scandir" "2.1.5" @@ -1371,7 +1363,7 @@ dependencies: "@octokit/types" "^6.0.3" -"@octokit/core@^3.6.0": +"@octokit/core@^3.6.0", "@octokit/core@>=2", "@octokit/core@>=3": version "3.6.0" resolved "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz" integrity sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q== @@ -1452,19 +1444,19 @@ "@sinclair/typebox@^0.27.8": version "0.27.8" - resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" + resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz" integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== "@sinonjs/commons@^3.0.0": version "3.0.0" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.0.tgz#beb434fe875d965265e04722ccfc21df7f755d72" + resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz" integrity sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA== dependencies: type-detect "4.0.8" "@sinonjs/fake-timers@^10.0.2": version "10.3.0" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz#55fdff1ecab9f354019129daf4df0dd4d923ea66" + resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz" integrity sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA== dependencies: "@sinonjs/commons" "^3.0.0" @@ -1491,7 +1483,7 @@ "@types/babel__core@^7.1.14": version "7.20.4" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.4.tgz#26a87347e6c6f753b3668398e34496d6d9ac6ac0" + resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.4.tgz" integrity sha512-mLnSC22IC4vcWiuObSRjrLd9XcBTGf59vUSoq2jkQDJ/QQ8PMI9rSuzE+aEV8karUMbskw07bKYoUJCKTUaygg== dependencies: "@babel/parser" "^7.20.7" @@ -1502,14 +1494,14 @@ "@types/babel__generator@*": version "7.6.7" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.7.tgz#a7aebf15c7bc0eb9abd638bdb5c0b8700399c9d0" + resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.7.tgz" integrity sha512-6Sfsq+EaaLrw4RmdFWE9Onp63TOUue71AWb4Gpa6JxzgTYtimbM086WnYTy2U67AofR++QKCo08ZP6pwx8YFHQ== dependencies: "@babel/types" "^7.0.0" "@types/babel__template@*": version "7.4.4" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.4.tgz#5672513701c1b2199bc6dad636a9d7491586766f" + resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz" integrity sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A== dependencies: "@babel/parser" "^7.1.0" @@ -1517,40 +1509,40 @@ "@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": version "7.20.4" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.4.tgz#ec2c06fed6549df8bc0eb4615b683749a4a92e1b" + resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.4.tgz" integrity sha512-mSM/iKUk5fDDrEV/e83qY+Cr3I1+Q3qqTuEn++HAWYjEa1+NxZr6CNrcJGf2ZTnq4HoFGC3zaTPZTobCzCFukA== dependencies: "@babel/types" "^7.20.7" "@types/graceful-fs@^4.1.3": version "4.1.9" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz#2a06bc0f68a20ab37b3e36aa238be6abdf49e8b4" + resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz" integrity sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ== dependencies: "@types/node" "*" "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.6" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" + resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz" integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w== "@types/istanbul-lib-report@*": version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz#53047614ae72e19fc0401d872de3ae2b4ce350bf" + resolved "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz" integrity sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA== dependencies: "@types/istanbul-lib-coverage" "*" "@types/istanbul-reports@^3.0.0": version "3.0.4" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz#0f03e3d2f670fbdac586e34b433783070cc16f54" + resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz" integrity sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ== dependencies: "@types/istanbul-lib-report" "*" "@types/jest@^29.2.5": version "29.5.8" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.5.8.tgz#ed5c256fe2bc7c38b1915ee5ef1ff24a3427e120" + resolved "https://registry.npmjs.org/@types/jest/-/jest-29.5.8.tgz" integrity sha512-fXEFTxMV2Co8ZF5aYFJv+YeA08RTYJfhtN5c9JSv/mFEMe+xxjufCb+PHL+bJcMs/ebPUsBu+UNTEz+ydXrR6g== dependencies: expect "^29.0.0" @@ -1558,62 +1550,62 @@ "@types/json-schema@^7.0.9": version "7.0.15" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" + resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== "@types/node@*": version "20.9.0" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.9.0.tgz#bfcdc230583aeb891cf51e73cfdaacdd8deae298" + resolved "https://registry.npmjs.org/@types/node/-/node-20.9.0.tgz" integrity sha512-nekiGu2NDb1BcVofVcEKMIwzlx4NjHlcjhoxxKBNLtz15Y1z7MYf549DFvkHSId02Ax6kGwWntIBPC3l/JZcmw== dependencies: undici-types "~5.26.4" "@types/node@^18.11.18": version "18.18.9" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.18.9.tgz#5527ea1832db3bba8eb8023ce8497b7d3f299592" + resolved "https://registry.npmjs.org/@types/node/-/node-18.18.9.tgz" integrity sha512-0f5klcuImLnG4Qreu9hPj/rEfFq6YRc5n2mAjSsH+ec/mJL+3voBH0+8T7o8RpFjH7ovc+TRsL/c7OYIQsPTfQ== dependencies: undici-types "~5.26.4" "@types/semver@^7.3.12": version "7.5.5" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.5.tgz#deed5ab7019756c9c90ea86139106b0346223f35" + resolved "https://registry.npmjs.org/@types/semver/-/semver-7.5.5.tgz" integrity sha512-+d+WYC1BxJ6yVOgUgzK8gWvp5qF8ssV5r4nsDcZWKRWcDQLQ619tvWAxJQYGgBrO1MnLJC7a5GtiYsAoQ47dJg== "@types/ssh2-sftp-client@^9.0.0": version "9.0.3" - resolved "https://registry.yarnpkg.com/@types/ssh2-sftp-client/-/ssh2-sftp-client-9.0.3.tgz#dffe7fce6dd49fbda0823508ff0ce11c111dba13" + resolved "https://registry.npmjs.org/@types/ssh2-sftp-client/-/ssh2-sftp-client-9.0.3.tgz" integrity sha512-pkCiS/NYvfc8S6xq3TvHAIPhQvBcl9Z1kMFxS8yNsqxmg/8ozzglnT4TrfpYBR1hlBky3r+fYntdZ5WnvvlKoQ== dependencies: "@types/ssh2" "*" "@types/ssh2@*": version "1.11.16" - resolved "https://registry.yarnpkg.com/@types/ssh2/-/ssh2-1.11.16.tgz#a57c8e07dfd1d446ed73127764273873d1f0d7ca" + resolved "https://registry.npmjs.org/@types/ssh2/-/ssh2-1.11.16.tgz" integrity sha512-Y1WuSL16TSlfsqTVyOkfnUsxHrdZsQQGq0AG6XFqs0hU3jO++cc6PdU+UCyG/0AVg9ez5qRNR8xfkouJv+gdgw== dependencies: "@types/node" "^18.11.18" "@types/stack-utils@^2.0.0": version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.3.tgz#6209321eb2c1712a7e7466422b8cb1fc0d9dd5d8" + resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz" integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw== "@types/yargs-parser@*": version "21.0.3" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" + resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz" integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ== "@types/yargs@^17.0.8": version "17.0.31" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.31.tgz#8fd0089803fd55d8a285895a18b88cb71a99683c" + resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.31.tgz" integrity sha512-bocYSx4DI8TmdlvxqGpVNXOgCNR1Jj0gNPhhAY+iz1rgKDAaYrAYdFYnhDV1IFuiuVc9HkOwyDcFxaTElF3/wg== dependencies: "@types/yargs-parser" "*" "@typescript-eslint/eslint-plugin@^5.48.1": version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db" + resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz" integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag== dependencies: "@eslint-community/regexpp" "^4.4.0" @@ -1627,9 +1619,9 @@ semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/parser@^5.48.1": +"@typescript-eslint/parser@^5.0.0", "@typescript-eslint/parser@^5.48.1": version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7" + resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz" integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA== dependencies: "@typescript-eslint/scope-manager" "5.62.0" @@ -1639,7 +1631,7 @@ "@typescript-eslint/scope-manager@5.62.0": version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz" integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w== dependencies: "@typescript-eslint/types" "5.62.0" @@ -1647,7 +1639,7 @@ "@typescript-eslint/type-utils@5.62.0": version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a" + resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz" integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew== dependencies: "@typescript-eslint/typescript-estree" "5.62.0" @@ -1657,12 +1649,12 @@ "@typescript-eslint/types@5.62.0": version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz" integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== "@typescript-eslint/typescript-estree@5.62.0": version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz" integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA== dependencies: "@typescript-eslint/types" "5.62.0" @@ -1675,7 +1667,7 @@ "@typescript-eslint/utils@5.62.0": version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz" integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ== dependencies: "@eslint-community/eslint-utils" "^4.2.0" @@ -1689,7 +1681,7 @@ "@typescript-eslint/visitor-keys@5.62.0": version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz" integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw== dependencies: "@typescript-eslint/types" "5.62.0" @@ -1697,17 +1689,17 @@ "@ungap/structured-clone@^1.2.0": version "1.2.0" - resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" + resolved "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz" integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== "@vercel/ncc@^0.36.0": version "0.36.1" - resolved "https://registry.yarnpkg.com/@vercel/ncc/-/ncc-0.36.1.tgz#d4c01fdbbe909d128d1bf11c7f8b5431654c5b95" + resolved "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.36.1.tgz" integrity sha512-S4cL7Taa9yb5qbv+6wLgiKVZ03Qfkc4jGRuiUQMQ8HGBD5pcNRnHeYM33zBvJE4/zJGjJJ8GScB+WmTsn9mORw== acorn-jsx@^5.3.2: version "5.3.2" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn-walk@^8.1.1: @@ -1715,19 +1707,14 @@ acorn-walk@^8.1.1: resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== -acorn@^8.4.1: - version "8.8.1" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz" - integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA== - -acorn@^8.9.0: +"acorn@^6.0.0 || ^7.0.0 || ^8.0.0", acorn@^8.4.1, acorn@^8.9.0: version "8.11.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.2.tgz#ca0d78b51895be5390a5903c5b3bdcdaf78ae40b" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz" integrity sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w== ajv@^6.12.4: version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== dependencies: fast-deep-equal "^3.1.1" @@ -1737,38 +1724,45 @@ ajv@^6.12.4: ansi-escapes@^4.2.1: version "4.3.2" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== dependencies: type-fest "^0.21.3" ansi-regex@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-styles@^3.2.1: version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" -ansi-styles@^4.0.0, ansi-styles@^4.1.0: +ansi-styles@^4.0.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: color-convert "^2.0.1" ansi-styles@^5.0.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== anymatch@^3.0.3: version "3.1.3" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz" integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== dependencies: normalize-path "^3.0.0" @@ -1781,31 +1775,31 @@ arg@^4.1.0: argparse@^1.0.7: version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== dependencies: sprintf-js "~1.0.2" argparse@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== array-union@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== asn1@^0.2.6: version "0.2.6" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" + resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz" integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ== dependencies: safer-buffer "~2.1.0" -babel-jest@^29.7.0: +babel-jest@^29.0.0, babel-jest@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.7.0.tgz#f4369919225b684c56085998ac63dbd05be020d5" + resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz" integrity sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg== dependencies: "@jest/transform" "^29.7.0" @@ -1818,7 +1812,7 @@ babel-jest@^29.7.0: babel-plugin-istanbul@^6.1.1: version "6.1.1" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" + resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz" integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -1829,7 +1823,7 @@ babel-plugin-istanbul@^6.1.1: babel-plugin-jest-hoist@^29.6.3: version "29.6.3" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz#aadbe943464182a8922c3c927c3067ff40d24626" + resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz" integrity sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg== dependencies: "@babel/template" "^7.3.3" @@ -1839,7 +1833,7 @@ babel-plugin-jest-hoist@^29.6.3: babel-plugin-polyfill-corejs2@^0.4.6: version "0.4.6" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.6.tgz#b2df0251d8e99f229a8e60fc4efa9a68b41c8313" + resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.6.tgz" integrity sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q== dependencies: "@babel/compat-data" "^7.22.6" @@ -1848,7 +1842,7 @@ babel-plugin-polyfill-corejs2@^0.4.6: babel-plugin-polyfill-corejs3@^0.8.5: version "0.8.6" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.6.tgz#25c2d20002da91fe328ff89095c85a391d6856cf" + resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.6.tgz" integrity sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ== dependencies: "@babel/helper-define-polyfill-provider" "^0.4.3" @@ -1856,14 +1850,14 @@ babel-plugin-polyfill-corejs3@^0.8.5: babel-plugin-polyfill-regenerator@^0.5.3: version "0.5.3" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.3.tgz#d4c49e4b44614607c13fb769bcd85c72bb26a4a5" + resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.3.tgz" integrity sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw== dependencies: "@babel/helper-define-polyfill-provider" "^0.4.3" babel-preset-current-node-syntax@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz" integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== dependencies: "@babel/plugin-syntax-async-generators" "^7.8.4" @@ -1881,7 +1875,7 @@ babel-preset-current-node-syntax@^1.0.0: babel-preset-jest@^29.6.3: version "29.6.3" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz#fa05fa510e7d493896d7b0dd2033601c840f171c" + resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz" integrity sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA== dependencies: babel-plugin-jest-hoist "^29.6.3" @@ -1889,12 +1883,12 @@ babel-preset-jest@^29.6.3: balanced-match@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== bcrypt-pbkdf@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" + resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz" integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w== dependencies: tweetnacl "^0.14.3" @@ -1906,7 +1900,7 @@ before-after-hook@^2.2.0: brace-expansion@^1.1.7: version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: balanced-match "^1.0.0" @@ -1914,14 +1908,14 @@ brace-expansion@^1.1.7: brace-expansion@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz" integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== dependencies: balanced-match "^1.0.0" braces@^3.0.2: version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== dependencies: fill-range "^7.0.1" @@ -1931,63 +1925,58 @@ browser-process-hrtime@^1.0.0: resolved "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browserslist@^4.21.9, browserslist@^4.22.1: - version "4.22.1" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619" - integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ== +browserslist@^4.22.1, browserslist@^4.22.2, "browserslist@>= 4.21.0": + version "4.23.1" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.23.1.tgz" + integrity sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw== dependencies: - caniuse-lite "^1.0.30001541" - electron-to-chromium "^1.4.535" - node-releases "^2.0.13" - update-browserslist-db "^1.0.13" + caniuse-lite "^1.0.30001629" + electron-to-chromium "^1.4.796" + node-releases "^2.0.14" + update-browserslist-db "^1.0.16" bs-logger@0.x: version "0.2.6" - resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + resolved "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz" integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== dependencies: fast-json-stable-stringify "2.x" bser@2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + resolved "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz" integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== dependencies: node-int64 "^0.4.0" buffer-from@^1.0.0: version "1.1.2" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== -buildcheck@~0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/buildcheck/-/buildcheck-0.0.6.tgz#89aa6e417cfd1e2196e3f8fe915eb709d2fe4238" - integrity sha512-8f9ZJCUXyT1M35Jx7MkBgmBMo3oHTTBIPLiY9xyL0pl3T5RwcPEY8cUHr5LBNfu/fk6c2T4DJZuVM/8ZZT2D2A== - callsites@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== camelcase@^5.3.1: version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== camelcase@^6.2.0: version "6.3.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001541: - version "1.0.30001562" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001562.tgz#9d16c5fd7e9c592c4cd5e304bc0f75b0008b2759" - integrity sha512-kfte3Hym//51EdX4239i+Rmp20EsLIYGdPkERegTgU19hQWCRhsRFGKHTliUlsry53tv17K7n077Kqa0WJU4ng== +caniuse-lite@^1.0.30001629: + version "1.0.30001629" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001629.tgz" + integrity sha512-c3dl911slnQhmxUIT4HhYzT7wnBK/XYpGnYLOj4nJBaRiw52Ibe7YxlDaAeRECvA786zCuExhxIUJ2K7nHMrBw== chalk@^2.4.2: version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== dependencies: ansi-styles "^3.2.1" @@ -1996,7 +1985,7 @@ chalk@^2.4.2: chalk@^4.0.0: version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== dependencies: ansi-styles "^4.1.0" @@ -2004,22 +1993,22 @@ chalk@^4.0.0: char-regex@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + resolved "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz" integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== ci-info@^3.2.0: version "3.9.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz" integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== cjs-module-lexer@^1.0.0: version "1.2.3" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz#6c370ab19f8a3394e318fe682686ec0ac684d107" + resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz" integrity sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ== cliui@^8.0.1: version "8.0.1" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + resolved "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz" integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== dependencies: string-width "^4.2.0" @@ -2028,38 +2017,38 @@ cliui@^8.0.1: co@^4.6.0: version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz" integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== collect-v8-coverage@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz#c0b29bcd33bcd0779a1344c2136051e6afd3d9e9" + resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz" integrity sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q== color-convert@^1.9.0: version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: color-name "1.1.3" color-convert@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== dependencies: color-name "~1.1.4" -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - color-name@~1.1.4: version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + complex.js@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/complex.js/-/complex.js-2.1.1.tgz" @@ -2067,12 +2056,12 @@ complex.js@^2.1.1: concat-map@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== concat-stream@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" + resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz" integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== dependencies: buffer-from "^1.0.0" @@ -2082,27 +2071,19 @@ concat-stream@^2.0.0: convert-source-map@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== core-js-compat@^3.31.0, core-js-compat@^3.33.1: version "3.33.2" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.33.2.tgz#3ea4563bfd015ad4e4b52442865b02c62aba5085" + resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.33.2.tgz" integrity sha512-axfo+wxFVxnqf8RvxTzoAlzW4gRoacrHeoFlc9n0x50+7BEyZL/Rt3hicaED1/CEd7I6tPCPVUYcJwCMO5XUYw== dependencies: browserslist "^4.22.1" -cpu-features@~0.0.8: - version "0.0.9" - resolved "https://registry.yarnpkg.com/cpu-features/-/cpu-features-0.0.9.tgz#5226b92f0f1c63122b0a3eb84cb8335a4de499fc" - integrity sha512-AKjgn2rP2yJyfbepsmLfiYcmtNn/2eUvocUyM/09yB0YDiz39HteK/5/T4Onf0pmdYDMgkBoGvRLvEguzyL7wQ== - dependencies: - buildcheck "~0.0.6" - nan "^2.17.0" - create-jest@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/create-jest/-/create-jest-29.7.0.tgz#a355c5b3cb1e1af02ba177fe7afd7feee49a5320" + resolved "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz" integrity sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q== dependencies: "@jest/types" "^29.6.3" @@ -2120,16 +2101,16 @@ create-require@^1.1.0: cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: path-key "^3.1.0" shebang-command "^2.0.0" which "^2.0.1" -debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: +debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" @@ -2141,17 +2122,17 @@ decimal.js@^10.3.1: dedent@^1.0.0: version "1.5.1" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.1.tgz#4f3fc94c8b711e9bb2800d185cd6ad20f2a90aff" + resolved "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz" integrity sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg== deep-is@^0.1.3: version "0.1.4" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== deepmerge@^4.2.2: version "4.3.1" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" + resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz" integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== deprecation@^2.0.0, deprecation@^2.3.1: @@ -2161,12 +2142,12 @@ deprecation@^2.0.0, deprecation@^2.3.1: detect-newline@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== diff-sequences@^29.6.3: version "29.6.3" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921" + resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz" integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q== diff@^4.0.1: @@ -2176,49 +2157,49 @@ diff@^4.0.1: dir-glob@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz" integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== dependencies: path-type "^4.0.0" doctrine@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== dependencies: esutils "^2.0.2" -electron-to-chromium@^1.4.535: - version "1.4.583" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.583.tgz#7b0ac4f36388da4b5485788adb92cd7dd0abffc4" - integrity sha512-93y1gcONABZ7uqYe/JWDVQP/Pj/sQSunF0HVAPdlg/pfBnOyBMLlQUxWvkqcljJg1+W6cjvPuYD+r1Th9Tn8mA== +electron-to-chromium@^1.4.796: + version "1.4.796" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.796.tgz" + integrity sha512-NglN/xprcM+SHD2XCli4oC6bWe6kHoytcyLKCWXmRL854F0qhPhaYgUswUsglnPxYaNQIg2uMY4BvaomIf3kLA== emittery@^0.13.1: version "0.13.1" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" + resolved "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz" integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ== emoji-regex@^8.0.0: version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== err-code@^2.0.2: version "2.0.3" - resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" + resolved "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz" integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== error-ex@^1.3.1: version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== dependencies: is-arrayish "^0.2.1" -escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== +escalade@^3.1.1, escalade@^3.1.2: + version "3.1.2" + resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== escape-latex@^1.2.0: version "1.2.0" @@ -2227,22 +2208,22 @@ escape-latex@^1.2.0: escape-string-regexp@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== escape-string-regexp@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== eslint-scope@^5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== dependencies: esrecurse "^4.3.0" @@ -2250,7 +2231,7 @@ eslint-scope@^5.1.1: eslint-scope@^7.2.2: version "7.2.2" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f" + resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz" integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg== dependencies: esrecurse "^4.3.0" @@ -2258,12 +2239,12 @@ eslint-scope@^7.2.2: eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: version "3.4.3" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -eslint@^8.31.0: +eslint@*, "eslint@^6.0.0 || ^7.0.0 || ^8.0.0", "eslint@^6.0.0 || ^7.0.0 || >=8.0.0", eslint@^8.31.0: version "8.53.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.53.0.tgz#14f2c8244298fcae1f46945459577413ba2697ce" + resolved "https://registry.npmjs.org/eslint/-/eslint-8.53.0.tgz" integrity sha512-N4VuiPjXDUa4xVeV/GC/RV3hQW9Nw+Y463lkWaKKXKYMvmRiRDAtfpuPFLN+E1/6ZhyR8J2ig+eVREnYgUsiag== dependencies: "@eslint-community/eslint-utils" "^4.2.0" @@ -2307,7 +2288,7 @@ eslint@^8.31.0: espree@^9.6.0, espree@^9.6.1: version "9.6.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" + resolved "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz" integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ== dependencies: acorn "^8.9.0" @@ -2316,41 +2297,46 @@ espree@^9.6.0, espree@^9.6.1: esprima@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== esquery@^1.4.2: version "1.5.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b" + resolved "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz" integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== dependencies: estraverse "^5.1.0" esrecurse@^4.3.0: version "4.3.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== dependencies: estraverse "^5.2.0" estraverse@^4.1.1: version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== -estraverse@^5.1.0, estraverse@^5.2.0: +estraverse@^5.1.0: version "5.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz" + integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== + +estraverse@^5.2.0: + version "5.3.0" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== esutils@^2.0.2: version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== execa@^5.0.0: version "5.1.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz" integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== dependencies: cross-spawn "^7.0.3" @@ -2365,12 +2351,12 @@ execa@^5.0.0: exit@^0.1.2: version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz" integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== expect@^29.0.0, expect@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-29.7.0.tgz#578874590dcb3214514084c08115d8aee61e11bc" + resolved "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz" integrity sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw== dependencies: "@jest/expect-utils" "^29.7.0" @@ -2381,12 +2367,12 @@ expect@^29.0.0, expect@^29.7.0: fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== fast-glob@^3.2.9: version "3.3.2" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" + resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz" integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== dependencies: "@nodelib/fs.stat" "^2.0.2" @@ -2395,47 +2381,55 @@ fast-glob@^3.2.9: merge2 "^1.3.0" micromatch "^4.0.4" -fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: +fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0, fast-json-stable-stringify@2.x: version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fast-levenshtein@^2.0.6: version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== fastq@^1.6.0: version "1.15.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" + resolved "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz" integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== dependencies: reusify "^1.0.4" fb-watchman@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" + resolved "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz" integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== dependencies: bser "2.1.1" file-entry-cache@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== dependencies: flat-cache "^3.0.4" fill-range@^7.0.1: version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== dependencies: to-regex-range "^5.0.1" -find-up@^4.0.0, find-up@^4.1.0: +find-up@^4.0.0: + version "4.1.0" + resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + +find-up@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz" integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== dependencies: locate-path "^5.0.0" @@ -2443,7 +2437,7 @@ find-up@^4.0.0, find-up@^4.1.0: find-up@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== dependencies: locate-path "^6.0.0" @@ -2451,7 +2445,7 @@ find-up@^5.0.0: flat-cache@^3.0.4: version "3.2.0" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee" + resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz" integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw== dependencies: flatted "^3.2.9" @@ -2460,7 +2454,7 @@ flat-cache@^3.0.4: flatted@^3.2.9: version "3.2.9" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.9.tgz#7eb4c67ca1ba34232ca9d2d93e9886e611ad7daf" + resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz" integrity sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ== fraction.js@^4.2.0: @@ -2470,56 +2464,51 @@ fraction.js@^4.2.0: fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@^2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" - integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== - function-bind@^1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz" integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== gensync@^1.0.0-beta.2: version "1.0.0-beta.2" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== get-caller-file@^2.0.5: version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== get-package-type@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + resolved "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz" integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== get-stream@^6.0.0: version "6.0.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== glob-parent@^5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" glob-parent@^6.0.2: version "6.0.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz" integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== dependencies: is-glob "^4.0.3" glob@^7.1.3, glob@^7.1.4: version "7.2.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" @@ -2531,19 +2520,19 @@ glob@^7.1.3, glob@^7.1.4: globals@^11.1.0: version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== globals@^13.19.0: version "13.23.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.23.0.tgz#ef31673c926a0976e1f61dab4dca57e0c0a8af02" + resolved "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz" integrity sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA== dependencies: type-fest "^0.20.2" globby@^11.1.0: version "11.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== dependencies: array-union "^2.1.0" @@ -2555,49 +2544,49 @@ globby@^11.1.0: graceful-fs@^4.2.9: version "4.2.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== graphemer@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" + resolved "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz" integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== has-flag@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-flag@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== hasown@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.0.tgz#f4c513d454a57b7c7e1650778de226b11700546c" + resolved "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz" integrity sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA== dependencies: function-bind "^1.1.2" html-escaper@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== human-signals@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== ignore@^5.2.0: version "5.2.4" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" + resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz" integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== import-fresh@^3.2.1: version "3.3.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== dependencies: parent-module "^1.0.0" @@ -2605,7 +2594,7 @@ import-fresh@^3.2.1: import-local@^3.0.2: version "3.1.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + resolved "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz" integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== dependencies: pkg-dir "^4.2.0" @@ -2613,64 +2602,64 @@ import-local@^3.0.2: imurmurhash@^0.1.4: version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== inflight@^1.0.4: version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.3: +inherits@^2.0.3, inherits@2: version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== is-arrayish@^0.2.1: version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-core-module@^2.13.0: version "2.13.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz" integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== dependencies: hasown "^2.0.0" is-extglob@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-fullwidth-code-point@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== is-generator-fn@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + resolved "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz" integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3: version "4.0.3" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" is-number@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== is-path-inside@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz" integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== is-plain-object@^5.0.0: @@ -2680,22 +2669,22 @@ is-plain-object@^5.0.0: is-stream@^2.0.0: version "2.0.1" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz" integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== isexe@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz#2d166c4b0644d43a39f04bf6c2edd1e585f31756" + resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz" integrity sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg== istanbul-lib-instrument@^5.0.4: version "5.2.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" + resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz" integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== dependencies: "@babel/core" "^7.12.3" @@ -2706,7 +2695,7 @@ istanbul-lib-instrument@^5.0.4: istanbul-lib-instrument@^6.0.0: version "6.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz#71e87707e8041428732518c6fb5211761753fbdf" + resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz" integrity sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA== dependencies: "@babel/core" "^7.12.3" @@ -2717,7 +2706,7 @@ istanbul-lib-instrument@^6.0.0: istanbul-lib-report@^3.0.0: version "3.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d" + resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz" integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw== dependencies: istanbul-lib-coverage "^3.0.0" @@ -2726,7 +2715,7 @@ istanbul-lib-report@^3.0.0: istanbul-lib-source-maps@^4.0.0: version "4.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz" integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== dependencies: debug "^4.1.1" @@ -2735,7 +2724,7 @@ istanbul-lib-source-maps@^4.0.0: istanbul-reports@^3.1.3: version "3.1.6" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.6.tgz#2544bcab4768154281a2f0870471902704ccaa1a" + resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz" integrity sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg== dependencies: html-escaper "^2.0.0" @@ -2748,7 +2737,7 @@ javascript-natural-sort@^0.7.1: jest-changed-files@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.7.0.tgz#1c06d07e77c78e1585d020424dedc10d6e17ac3a" + resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz" integrity sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w== dependencies: execa "^5.0.0" @@ -2757,7 +2746,7 @@ jest-changed-files@^29.7.0: jest-circus@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.7.0.tgz#b6817a45fcc835d8b16d5962d0c026473ee3668a" + resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz" integrity sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw== dependencies: "@jest/environment" "^29.7.0" @@ -2783,7 +2772,7 @@ jest-circus@^29.7.0: jest-cli@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.7.0.tgz#5592c940798e0cae677eec169264f2d839a37995" + resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz" integrity sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg== dependencies: "@jest/core" "^29.7.0" @@ -2800,7 +2789,7 @@ jest-cli@^29.7.0: jest-config@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.7.0.tgz#bcbda8806dbcc01b1e316a46bb74085a84b0245f" + resolved "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz" integrity sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ== dependencies: "@babel/core" "^7.11.6" @@ -2828,7 +2817,7 @@ jest-config@^29.7.0: jest-diff@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.7.0.tgz#017934a66ebb7ecf6f205e84699be10afd70458a" + resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz" integrity sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw== dependencies: chalk "^4.0.0" @@ -2838,14 +2827,14 @@ jest-diff@^29.7.0: jest-docblock@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.7.0.tgz#8fddb6adc3cdc955c93e2a87f61cfd350d5d119a" + resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz" integrity sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g== dependencies: detect-newline "^3.0.0" jest-each@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.7.0.tgz#162a9b3f2328bdd991beaabffbb74745e56577d1" + resolved "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz" integrity sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ== dependencies: "@jest/types" "^29.6.3" @@ -2856,7 +2845,7 @@ jest-each@^29.7.0: jest-environment-node@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.7.0.tgz#0b93e111dda8ec120bc8300e6d1fb9576e164376" + resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz" integrity sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw== dependencies: "@jest/environment" "^29.7.0" @@ -2868,12 +2857,12 @@ jest-environment-node@^29.7.0: jest-get-type@^29.6.3: version "29.6.3" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1" + resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz" integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw== jest-haste-map@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.7.0.tgz#3c2396524482f5a0506376e6c858c3bbcc17b104" + resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz" integrity sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA== dependencies: "@jest/types" "^29.6.3" @@ -2892,7 +2881,7 @@ jest-haste-map@^29.7.0: jest-leak-detector@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz#5b7ec0dadfdfec0ca383dc9aa016d36b5ea4c728" + resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz" integrity sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw== dependencies: jest-get-type "^29.6.3" @@ -2900,7 +2889,7 @@ jest-leak-detector@^29.7.0: jest-matcher-utils@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz#ae8fec79ff249fd592ce80e3ee474e83a6c44f12" + resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz" integrity sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g== dependencies: chalk "^4.0.0" @@ -2910,7 +2899,7 @@ jest-matcher-utils@^29.7.0: jest-message-util@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.7.0.tgz#8bc392e204e95dfe7564abbe72a404e28e51f7f3" + resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz" integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w== dependencies: "@babel/code-frame" "^7.12.13" @@ -2925,7 +2914,7 @@ jest-message-util@^29.7.0: jest-mock@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.7.0.tgz#4e836cf60e99c6fcfabe9f99d017f3fdd50a6347" + resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz" integrity sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw== dependencies: "@jest/types" "^29.6.3" @@ -2934,25 +2923,25 @@ jest-mock@^29.7.0: jest-pnp-resolver@^1.2.2: version "1.2.3" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" + resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz" integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== jest-regex-util@^29.6.3: version "29.6.3" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.6.3.tgz#4a556d9c776af68e1c5f48194f4d0327d24e8a52" + resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz" integrity sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg== jest-resolve-dependencies@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz#1b04f2c095f37fc776ff40803dc92921b1e88428" + resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz" integrity sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA== dependencies: jest-regex-util "^29.6.3" jest-snapshot "^29.7.0" -jest-resolve@^29.7.0: +jest-resolve@*, jest-resolve@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.7.0.tgz#64d6a8992dd26f635ab0c01e5eef4399c6bcbc30" + resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz" integrity sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA== dependencies: chalk "^4.0.0" @@ -2967,7 +2956,7 @@ jest-resolve@^29.7.0: jest-runner@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.7.0.tgz#809af072d408a53dcfd2e849a4c976d3132f718e" + resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz" integrity sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ== dependencies: "@jest/console" "^29.7.0" @@ -2994,7 +2983,7 @@ jest-runner@^29.7.0: jest-runtime@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.7.0.tgz#efecb3141cf7d3767a3a0cc8f7c9990587d3d817" + resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz" integrity sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ== dependencies: "@jest/environment" "^29.7.0" @@ -3022,7 +3011,7 @@ jest-runtime@^29.7.0: jest-snapshot@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.7.0.tgz#c2c574c3f51865da1bb329036778a69bf88a6be5" + resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz" integrity sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw== dependencies: "@babel/core" "^7.11.6" @@ -3048,7 +3037,7 @@ jest-snapshot@^29.7.0: jest-util@^29.0.0, jest-util@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc" + resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz" integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA== dependencies: "@jest/types" "^29.6.3" @@ -3060,7 +3049,7 @@ jest-util@^29.0.0, jest-util@^29.7.0: jest-validate@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.7.0.tgz#7bf705511c64da591d46b15fce41400d52147d9c" + resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz" integrity sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw== dependencies: "@jest/types" "^29.6.3" @@ -3072,7 +3061,7 @@ jest-validate@^29.7.0: jest-watcher@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.7.0.tgz#7810d30d619c3a62093223ce6bb359ca1b28a2f2" + resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz" integrity sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g== dependencies: "@jest/test-result" "^29.7.0" @@ -3086,7 +3075,7 @@ jest-watcher@^29.7.0: jest-worker@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.7.0.tgz#acad073acbbaeb7262bd5389e1bcf43e10058d4a" + resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz" integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw== dependencies: "@types/node" "*" @@ -3094,9 +3083,9 @@ jest-worker@^29.7.0: merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^29.3.1: +jest@^29.0.0, jest@^29.3.1: version "29.7.0" - resolved "https://registry.yarnpkg.com/jest/-/jest-29.7.0.tgz#994676fc24177f088f1c5e3737f5697204ff2613" + resolved "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz" integrity sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw== dependencies: "@jest/core" "^29.7.0" @@ -3106,12 +3095,12 @@ jest@^29.3.1: js-tokens@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== js-yaml@^3.13.1: version "3.14.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: argparse "^1.0.7" @@ -3119,44 +3108,44 @@ js-yaml@^3.13.1: js-yaml@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" jsesc@^2.5.1: version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== jsesc@~0.5.0: version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz" integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== json-buffer@3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz" integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== json-parse-even-better-errors@^2.3.0: version "2.3.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== json-schema-traverse@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== json5@^2.2.3: version "2.2.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== kelonio@^0.8.0: @@ -3169,24 +3158,24 @@ kelonio@^0.8.0: keyv@^4.5.3: version "4.5.4" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" + resolved "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz" integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== dependencies: json-buffer "3.0.1" kleur@^3.0.3: version "3.0.3" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== leven@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + resolved "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz" integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== levn@^0.4.1: version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== dependencies: prelude-ls "^1.2.1" @@ -3194,67 +3183,67 @@ levn@^0.4.1: lines-and-columns@^1.1.6: version "1.2.4" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== locate-path@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz" integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== dependencies: p-locate "^4.1.0" locate-path@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== dependencies: p-locate "^5.0.0" lodash.debounce@^4.0.8: version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + resolved "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz" integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== lodash.memoize@4.x: version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + resolved "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== lodash.merge@^4.6.2: version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== lru-cache@^5.1.1: version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz" integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== dependencies: yallist "^3.0.2" lru-cache@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== dependencies: yallist "^4.0.0" make-dir@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz" integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw== dependencies: semver "^7.5.3" -make-error@1.x, make-error@^1.1.1: +make-error@^1.1.1, make-error@1.x: version "1.3.6" resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== makeerror@1.0.12: version "1.0.12" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz" integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== dependencies: tmpl "1.0.5" @@ -3276,17 +3265,17 @@ mathjs@^10.5.2: merge-stream@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== micromatch@^4.0.4: version "4.0.5" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz" integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== dependencies: braces "^3.0.2" @@ -3294,41 +3283,57 @@ micromatch@^4.0.4: mimic-fn@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== -minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: +minimatch@^3.0.4: + version "3.1.2" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^3.0.5: version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^3.1.1: + version "3.1.2" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^3.1.2: + version "3.1.2" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" minimatch@^6.1.5: version "6.2.0" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-6.2.0.tgz#2b70fd13294178c69c04dfc05aebdb97a4e79e42" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz" integrity sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg== dependencies: brace-expansion "^2.0.1" ms@2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -nan@^2.17.0: - version "2.18.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.18.0.tgz#26a6faae7ffbeb293a39660e88a76b82e30b7554" - integrity sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w== - natural-compare-lite@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" + resolved "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz" integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== natural-compare@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== node-fetch@^2.6.7: @@ -3340,22 +3345,22 @@ node-fetch@^2.6.7: node-int64@^0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-releases@^2.0.13: - version "2.0.13" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" - integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== +node-releases@^2.0.14: + version "2.0.14" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz" + integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== normalize-path@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== npm-run-path@^4.0.1: version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== dependencies: path-key "^3.0.0" @@ -3369,14 +3374,14 @@ once@^1.3.0, once@^1.4.0: onetime@^5.1.2: version "5.1.2" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" optionator@^0.9.3: version "0.9.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64" + resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz" integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg== dependencies: "@aashutoshrathi/word-wrap" "^1.2.3" @@ -3386,49 +3391,49 @@ optionator@^0.9.3: prelude-ls "^1.2.1" type-check "^0.4.0" -p-limit@3.1.0, p-limit@^3.0.2, p-limit@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" - integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== - dependencies: - yocto-queue "^0.1.0" - p-limit@^2.2.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== dependencies: p-try "^2.0.0" +p-limit@^3.0.2, p-limit@^3.1.0, p-limit@3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== + dependencies: + yocto-queue "^0.1.0" + p-locate@^4.1.0: version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz" integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== dependencies: p-limit "^2.2.0" p-locate@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== dependencies: p-limit "^3.0.2" p-try@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== parent-module@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== dependencies: callsites "^3.0.0" parse-json@^5.2.0: version "5.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== dependencies: "@babel/code-frame" "^7.0.0" @@ -3438,59 +3443,59 @@ parse-json@^5.2.0: path-exists@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== path-is-absolute@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== path-parse@^1.0.7: version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== path-type@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -picocolors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" - integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== +picocolors@^1.0.0, picocolors@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz" + integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== picomatch@^2.0.4, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== pirates@^4.0.4: version "4.0.6" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" + resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz" integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== pkg-dir@^4.2.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz" integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== dependencies: find-up "^4.0.0" prelude-ls@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== pretty-format@^29.0.0, pretty-format@^29.7.0: version "29.7.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" + resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz" integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== dependencies: "@jest/schemas" "^29.6.3" @@ -3499,7 +3504,7 @@ pretty-format@^29.0.0, pretty-format@^29.7.0: promise-retry@^2.0.1: version "2.0.1" - resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" + resolved "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz" integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== dependencies: err-code "^2.0.2" @@ -3507,7 +3512,7 @@ promise-retry@^2.0.1: prompts@^2.0.1: version "2.4.2" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + resolved "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz" integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== dependencies: kleur "^3.0.3" @@ -3515,27 +3520,27 @@ prompts@^2.0.1: punycode@^2.1.0: version "2.3.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" + resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== pure-rand@^6.0.0: version "6.0.4" - resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.4.tgz#50b737f6a925468679bff00ad20eade53f37d5c7" + resolved "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz" integrity sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA== queue-microtask@^1.2.2: version "1.2.3" - resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== react-is@^18.0.0: version "18.2.0" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" + resolved "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== readable-stream@^3.0.2: version "3.6.2" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz" integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== dependencies: inherits "^2.0.3" @@ -3544,36 +3549,31 @@ readable-stream@^3.0.2: regenerate-unicode-properties@^10.1.0: version "10.1.1" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz#6b0e05489d9076b04c436f318d9b067bba459480" + resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz" integrity sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q== dependencies: regenerate "^1.4.2" regenerate@^1.4.2: version "1.4.2" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" + resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== regenerator-runtime@^0.13.11: version "0.13.11" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" + resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz" integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== -regenerator-runtime@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz#5e19d68eb12d486f797e15a3c6a918f7cec5eb45" - integrity sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA== - regenerator-transform@^0.15.2: version "0.15.2" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.2.tgz#5bbae58b522098ebdf09bca2f83838929001c7a4" + resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz" integrity sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg== dependencies: "@babel/runtime" "^7.8.4" regexpu-core@^5.3.1: version "5.3.2" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.3.2.tgz#11a2b06884f3527aec3e93dbbf4a3b958a95546b" + resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz" integrity sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ== dependencies: "@babel/regjsgen" "^0.8.0" @@ -3585,41 +3585,41 @@ regexpu-core@^5.3.1: regjsparser@^0.9.1: version "0.9.1" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.9.1.tgz#272d05aa10c7c1f67095b1ff0addae8442fc5709" + resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz" integrity sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ== dependencies: jsesc "~0.5.0" require-directory@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== resolve-cwd@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz" integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== dependencies: resolve-from "^5.0.0" resolve-from@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== resolve-from@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== resolve.exports@^2.0.0: version "2.0.2" - resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" + resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz" integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== resolve@^1.14.2, resolve@^1.20.0: version "1.22.8" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz" integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== dependencies: is-core-module "^2.13.0" @@ -3628,12 +3628,12 @@ resolve@^1.14.2, resolve@^1.20.0: retry@^0.12.0: version "0.12.0" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + resolved "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz" integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== reusify@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== rimraf@^3.0.2: @@ -3645,19 +3645,19 @@ rimraf@^3.0.2: run-parallel@^1.1.9: version "1.2.0" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz" integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== dependencies: queue-microtask "^1.2.2" safe-buffer@~5.2.0: version "5.2.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== safer-buffer@~2.1.0: version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== seedrandom@^3.0.5: @@ -3667,46 +3667,60 @@ seedrandom@^3.0.5: semver@^6.3.0, semver@^6.3.1: version "6.3.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.7, semver@^7.5.3, semver@^7.5.4: +semver@^7.3.7: + version "7.5.4" + resolved "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + +semver@^7.5.3: + version "7.5.4" + resolved "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + +semver@^7.5.4: version "7.5.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + resolved "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz" integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== dependencies: lru-cache "^6.0.0" shebang-command@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: shebang-regex "^3.0.0" shebang-regex@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== sisteransi@^1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + resolved "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz" integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== slash@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== source-map-support@0.5.13: version "0.5.13" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" + resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz" integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== dependencies: buffer-from "^1.0.0" @@ -3714,17 +3728,17 @@ source-map-support@0.5.13: source-map@^0.6.0, source-map@^0.6.1: version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== sprintf-js@~1.0.2: version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== ssh2-sftp-client@^9.0.4: version "9.1.0" - resolved "https://registry.yarnpkg.com/ssh2-sftp-client/-/ssh2-sftp-client-9.1.0.tgz#bef1d5352c3dc214836cb6dec9427f3988d9ff2b" + resolved "https://registry.npmjs.org/ssh2-sftp-client/-/ssh2-sftp-client-9.1.0.tgz" integrity sha512-Hzdr9OE6GxZjcmyM9tgBSIFVyrHAp9c6U2Y4yBkmYOHoQvZ7pIm27dmltvcmRfxcWiIcg8HBvG5iAikDf+ZuzQ== dependencies: concat-stream "^2.0.0" @@ -3733,7 +3747,7 @@ ssh2-sftp-client@^9.0.4: ssh2@^1.12.0: version "1.14.0" - resolved "https://registry.yarnpkg.com/ssh2/-/ssh2-1.14.0.tgz#8f68440e1b768b66942c9e4e4620b2725b3555bb" + resolved "https://registry.npmjs.org/ssh2/-/ssh2-1.14.0.tgz" integrity sha512-AqzD1UCqit8tbOKoj6ztDDi1ffJZ2rV2SwlgrVVrHPkV5vWqGJOVp5pmtj18PunkPJAuKQsnInyKV+/Nb2bUnA== dependencies: asn1 "^0.2.6" @@ -3744,14 +3758,21 @@ ssh2@^1.12.0: stack-utils@^2.0.3: version "2.0.6" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" + resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz" integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== dependencies: escape-string-regexp "^2.0.0" +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + string-length@^4.0.1: version "4.0.2" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz" integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== dependencies: char-regex "^1.0.2" @@ -3759,71 +3780,64 @@ string-length@^4.0.1: string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== dependencies: emoji-regex "^8.0.0" is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" -string_decoder@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" - integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== - dependencies: - safe-buffer "~5.2.0" - strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" strip-bom@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz" integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== strip-final-newline@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== strip-json-comments@^3.1.1: version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== supports-color@^5.3.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" supports-color@^7.1.0: version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" supports-color@^8.0.0: version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz" integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== dependencies: has-flag "^4.0.0" supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== test-exclude@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz" integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== dependencies: "@istanbuljs/schema" "^0.1.2" @@ -3832,7 +3846,7 @@ test-exclude@^6.0.0: text-table@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== tiny-emitter@^2.1.0: @@ -3842,17 +3856,17 @@ tiny-emitter@^2.1.0: tmpl@1.0.5: version "1.0.5" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" + resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== to-fast-properties@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== to-regex-range@^5.0.1: version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: is-number "^7.0.0" @@ -3864,7 +3878,7 @@ tr46@~0.0.3: ts-jest@^29.0.5: version "29.1.1" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.1.1.tgz#f58fe62c63caf7bfcc5cc6472082f79180f0815b" + resolved "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz" integrity sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA== dependencies: bs-logger "0.x" @@ -3876,7 +3890,7 @@ ts-jest@^29.0.5: semver "^7.5.3" yargs-parser "^21.0.1" -ts-node@^10.9.1: +ts-node@^10.9.1, ts-node@>=9.0.0: version "10.9.1" resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz" integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw== @@ -3897,46 +3911,46 @@ ts-node@^10.9.1: tslib@^1.8.1: version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== tsutils@^3.21.0: version "3.21.0" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz" integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== dependencies: tslib "^1.8.1" tunnel@^0.0.6: version "0.0.6" - resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c" + resolved "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz" integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg== tweetnacl@^0.14.3: version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz" integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== dependencies: prelude-ls "^1.2.1" type-detect@4.0.8: version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== type-fest@^0.20.2: version "0.20.2" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== type-fest@^0.21.3: version "0.21.3" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== typed-function@^2.1.0: @@ -3946,34 +3960,34 @@ typed-function@^2.1.0: typedarray@^0.0.6: version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz" integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== -typescript@^4.9.4: +typescript@^4.9.4, typescript@>=2.7, "typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta", "typescript@>=4.3 <6": version "4.9.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz" integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== undici-types@~5.26.4: version "5.26.5" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" + resolved "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== undici@^5.25.4: version "5.27.2" - resolved "https://registry.yarnpkg.com/undici/-/undici-5.27.2.tgz#a270c563aea5b46cc0df2550523638c95c5d4411" + resolved "https://registry.npmjs.org/undici/-/undici-5.27.2.tgz" integrity sha512-iS857PdOEy/y3wlM3yRp+6SNQQ6xU0mmZcwRSriqk+et/cwWAtwmIGf6WkoDN2EK/AMdCO/dfXzIwi+rFMrjjQ== dependencies: "@fastify/busboy" "^2.0.0" unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" + resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz" integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ== unicode-match-property-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" + resolved "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz" integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q== dependencies: unicode-canonical-property-names-ecmascript "^2.0.0" @@ -3981,12 +3995,12 @@ unicode-match-property-ecmascript@^2.0.0: unicode-match-property-value-ecmascript@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz#cb5fffdcd16a05124f5a4b0bf7c3770208acbbe0" + resolved "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz" integrity sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA== unicode-property-aliases-ecmascript@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" + resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz" integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== universal-user-agent@^6.0.0: @@ -3994,29 +4008,29 @@ universal-user-agent@^6.0.0: resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz" integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== -update-browserslist-db@^1.0.13: - version "1.0.13" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" - integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== +update-browserslist-db@^1.0.16: + version "1.0.16" + resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz" + integrity sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ== dependencies: - escalade "^3.1.1" - picocolors "^1.0.0" + escalade "^3.1.2" + picocolors "^1.0.1" uri-js@^4.2.2: version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== dependencies: punycode "^2.1.0" util-deprecate@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== uuid@^8.3.2: version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== v8-compile-cache-lib@^3.0.1: @@ -4026,7 +4040,7 @@ v8-compile-cache-lib@^3.0.1: v8-to-istanbul@^9.0.1: version "9.1.3" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.1.3.tgz#ea456604101cd18005ac2cae3cdd1aa058a6306b" + resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.3.tgz" integrity sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg== dependencies: "@jridgewell/trace-mapping" "^0.3.12" @@ -4035,7 +4049,7 @@ v8-to-istanbul@^9.0.1: walker@^1.0.8: version "1.0.8" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz" integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== dependencies: makeerror "1.0.12" @@ -4055,14 +4069,14 @@ whatwg-url@^5.0.0: which@^2.0.1: version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" wrap-ansi@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: ansi-styles "^4.0.0" @@ -4071,12 +4085,12 @@ wrap-ansi@^7.0.0: wrappy@1: version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== write-file-atomic@^4.0.2: version "4.0.2" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz" integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg== dependencies: imurmurhash "^0.1.4" @@ -4084,27 +4098,27 @@ write-file-atomic@^4.0.2: y18n@^5.0.5: version "5.0.8" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== yallist@^3.0.2: version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== yallist@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== yargs-parser@^21.0.1, yargs-parser@^21.1.1: version "21.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== yargs@^17.3.1: version "17.7.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" + resolved "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz" integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== dependencies: cliui "^8.0.1" @@ -4115,6 +4129,11 @@ yargs@^17.3.1: y18n "^5.0.5" yargs-parser "^21.1.1" +yarn@^1.22.22: + version "1.22.22" + resolved "https://registry.npmjs.org/yarn/-/yarn-1.22.22.tgz" + integrity sha512-prL3kGtyG7o9Z9Sv8IPfBNrWTDmXB4Qbes8A9rEzt6wkJV8mUvoirjU0Mp3GGAU06Y0XQyA3/2/RQFVuK7MTfg== + yn@3.1.1: version "3.1.1" resolved "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz" @@ -4122,5 +4141,5 @@ yn@3.1.1: yocto-queue@^0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==