setup-cpp/dist/setup_cpp.js

3 lines
138 KiB
JavaScript
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

function e(e){return e&&e.__esModule?e.default:e}function t(e,t,r,o){Object.defineProperty(e,t,{get:r,set:o,enumerable:!0,configurable:!0})}function r(e,t,o){if("function"==typeof t&&(o=t,t={}),!o){if("function"!=typeof Promise)throw new TypeError("callback not provided");return new Promise(((o,n)=>{r(e,t||{},((e,t)=>{e?n(e):o(t)}))}))}Ne(e,t||{},((e,r)=>{e&&("EACCES"===e.code||t&&t.ignoreErrors)&&(e=null,r=!1),o(e,r)}))}function o(t,r,o){if(!["darwin","linux"].includes(process.platform))return;if("string"==typeof Me)return{binDir:Me};const n=e(Te).sync("brew",{nothrow:!0});return null!==n?(Me=ue.dirname(n),{binDir:Me}):(de.execFileSync('/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"',{stdio:"inherit"}),Me="/usr/local/bin/",{binDir:Me})}function n(e,t){const r=e.options.env||process.env,o=process.cwd(),n=null!=e.options.cwd,s=n&&void 0!==process.chdir&&!process.chdir.disabled;if(s)try{process.chdir(e.options.cwd)}catch(e){}let i;try{i=Te.sync(e.command,{path:r[Ve({env:r})],pathExt:t?ue.delimiter:void 0})}catch(e){}finally{s&&process.chdir(o)}return i&&(i=ue.resolve(n?e.options.cwd:"",i)),i}function s(e,t){return Object.assign(Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function i(e,t){return Qe&&1===e&&!t.file?s(t.original,"spawn"):null}function a(e,t,r){const o=Be(e,t,r),n=de.spawn(o.command,o.args,o.options);return Ke.hookChildProcess(n,o),n}function c(){At&&(At=!1,$t.forEach((e=>{try{process.removeListener(e,Tt[e])}catch(e){}})),process.emit=Nt,process.reallyExit=It,_t.count-=1)}function l(e,t,r){_t.emitted[e]||(_t.emitted[e]=!0,_t.emit(e,t,r))}function u(){At||(At=!0,_t.count+=1,$t=$t.filter((e=>{try{return process.on(e,Tt[e]),!0}catch(e){return!1}})),process.emit=d,process.reallyExit=p)}function p(e){process.exitCode=e||0,l("exit",process.exitCode,null),l("afterexit",process.exitCode,null),It.call(process,process.exitCode)}function d(e,t){if("exit"===e){void 0!==t&&(process.exitCode=t);var r=Nt.apply(this,arguments);return l("exit",process.exitCode,null),l("afterexit",process.exitCode,null),r}return Nt.apply(this,arguments)}async function h(e,t){if(!e)throw Error("Expected a stream");t={maxBuffer:1/0,...t};const{maxBuffer:r}=t,o=Vt(t);return await new Promise(((t,n)=>{const s=e=>{e&&o.getBufferedLength()<=Ht.MAX_LENGTH&&(e.bufferedData=o.getBufferedValue()),n(e)};(async()=>{try{await Wt(e,o),t()}catch(e){s(e)}})(),o.on("data",(()=>{o.getBufferedLength()>r&&s(new Yt)}))})),o.getBufferedValue()}function f(t,r){return void 0!==gr||(gr=(!!process.env.CI||0===(null===(o=process.getuid)||void 0===o?void 0:o.call(process)))&&null!==e(Te).sync("sudo",{nothrow:!0})),gr?e(Ge).command("sudo "+[t,...r].join(" "),{shell:!0}):e(Ge)(t,r);var o}async function m(e,t,r=!0){const o="apt-get";if("string"==typeof r&&await f("add-apt-repository",["--update","-y",r]),yr&&!0!==r||(await f(o,["update","-y"]),yr=!0),void 0!==t&&""!==t)try{await f(o,["install","-y",`${e}=${t}`])}catch{await f(o,["install","-y",`${e}-${t}`])}else await f(o,["install","-y",e]);return{binDir:"/usr/bin/"}}function v(t,r){return xr&&null!==e(Te).sync("brew",{nothrow:!0})||(o(0,0,process),xr=!0),e(Ge).sync("brew",["install",void 0!==r&&""!==r?`${t}@${r}`:t]),{binDir:"/usr/local/bin/"}}async function g(t){try{Ce.addPath(t)}catch(r){try{switch(Ce.error(r),process.platform){case"win32":return void await e(Ge)(`setx PATH=${t};%PATH%`);case"linux":case"darwin":return await e(Ge).command(`echo "export PATH=${t}:$PATH" >> ~/.profile`),await e(Ge).command("source ~/.profile"),void Ce.info(t+" was added to ~/.profile")}}catch(e){Ce.error(e)}Ce.error(`Failed to add ${t} to the percistent PATH. You should add it manually.`),process.env.PATH=`${t}${ue.delimiter}${process.env.PATH}`}}function y(t,r,o){if("win32"!==process.platform)return;if("string"==typeof wr)return{binDir:wr};const n=e(Te).sync("choco",{nothrow:!0});if(null!==n)return wr=ue.dirname(n),{binDir:wr};e(Ge).commandSync('@"%SystemRoot%\\System32\\WindowsPowerShell\\v1.0\\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "[System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString(\'https://community.chocolatey.org/install.ps1\'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\\chocolatey\\bin"');const s=e(Te).sync("choco",{nothrow:!0});return wr=null!==s?ue.dirname(s):"C:/ProgramData/Chocolatey/bin/",pe.existsSync(wr)?{binDir:wr}:void 0}async function x(t,r,o=[]){Er&&null!==e(Te).sync("choco",{nothrow:!0})||(y(0,0,process),Er=!0),e(Ge).sync("choco",void 0!==r&&""!==r?["install","-y",t,"--version="+r,...o]:["install","-y",t,...o]);const n="C:/ProgramData/Chocolatey/bin/";return await g(n),{binDir:n}}function w(e,t,r){return Vr(this,void 0,void 0,(function*(){const o=qr.argStringToArray(e);if(0===o.length)throw Error("Parameter 'commandLine' cannot be null or empty.");const n=o[0];return t=o.slice(1).concat(t||[]),new qr.ToolRunner(n,t,r).exec()}))}function E(e,t){const r=[];t=t||Ir.arch();const o=Nr.join($(),e);if(Tr.existsSync(o)){const e=Tr.readdirSync(o);for(const n of e)if(O(n)){const e=Nr.join(o,n,t||"");Tr.existsSync(e)&&Tr.existsSync(e+".complete")&&r.push(n)}}return r}function b(e){return _r(this,void 0,void 0,(function*(){return e||(e=Nr.join(R(),Mr.default())),yield Cr.mkdirP(e),e}))}function S(e,t,r){return _r(this,void 0,void 0,(function*(){const o=Nr.join($(),e,jr.clean(t)||t,r||"");Rr.debug("destination "+o);const n=o+".complete";return yield Cr.rmRF(o),yield Cr.rmRF(n),yield Cr.mkdirP(o),o}))}function P(e,t,r){const o=Nr.join($(),e,jr.clean(t)||t,r||"");Tr.writeFileSync(o+".complete",""),Rr.debug("finished caching tool")}function O(e){const t=jr.clean(e)||"";Rr.debug("isExplicit: "+t);const r=null!=jr.valid(t);return Rr.debug("explicit? "+r),r}function _(e,t){let r="";Rr.debug(`evaluating ${e.length} versions`);for(let o=(e=e.sort(((e,t)=>jr.gt(e,t)?1:-1))).length-1;o>=0;o--){const n=e[o];if(jr.satisfies(n,t)){r=n;break}}return Rr.debug(r?"matched: "+r:"match not found"),r}function $(){const e=process.env.RUNNER_TOOL_CACHE||"";return he.ok(e,"Expected RUNNER_TOOL_CACHE to be defined"),e}function R(){const e=process.env.RUNNER_TEMP||"";return he.ok(e,"Expected RUNNER_TEMP to be defined"),e}function C(e,t){const r=Oe[e];return void 0!==r?r:t}function T(){return!(void 0===process.env.CI||""===process.env.CI||"false"===process.env.CI)}async function A(e,t,r,o){var n,s;process.env.RUNNER_TEMP=null!==(n=process.env.RUNNER_TEMP)&&void 0!==n?n:le.tmpdir(),process.env.RUNNER_TOOL_CACHE=null!==(s=process.env.RUNNER_TOOL_CACH)&&void 0!==s?s:ue.join(le.tmpdir(),"setup_cpp","ToolCache");const{url:i,binRelativeDir:a,extractedFolderName:c,extractFunction:l}=await r(t,process.platform);if(T())try{const r=br.find(e,t);if(r){Ce.info(`${e} ${t} was found in the cache.`);const o=ue.join(r,c),n=ue.join(o,a);return await g(n),{installDir:o,binDir:n}}}catch{}const u=await ro.async(i,{algorithm:"md5"}),p=ue.join(o,u);if(!pe.existsSync(p)){Ce.info(`Download and extract ${e} ${t}`);const r=await br.downloadTool(i);await(null==l?void 0:l(r,p))}const d=ue.join(p,c),h=ue.join(d,a);return Ce.info(`Add ${h} to PATH`),await g(h),T()&&"string"==typeof process.env.RUNNER_TOOL_CACHE&&await br.cacheDir(p,e,t),{installDir:d,binDir:h}}function I(t,r){var o;const n=null!==(o=e(to)(t))&&void 0!==o?o:t,s=null!=r?r:process.platform,i=Ce.getInput("architecture")||process.arch;switch(s){case"win32":{const r=e(eo)(n,"v3.19.6");let o;o=["ia32","x86","i386","x32"].includes(i)?r?"win32-x86":"windows-i386":r?"win64-x64":"windows-x86_64";const s=`cmake-${t}-${o}`;return{binRelativeDir:"bin/",extractedFolderName:s,extractFunction:br.extractZip,url:`https://github.com/Kitware/CMake/releases/download/v${t}/${s}.zip`}}case"darwin":{const r=`cmake-${t}-${e(eo)(n,"v3.19.1")?"Darwin-x86_64":"macos-universal"}`;return{binRelativeDir:"CMake.app/Contents/bin/",extractedFolderName:r,extractFunction:br.extractTar,url:`https://github.com/Kitware/CMake/releases/download/v${t}/${r}.tar.gz`}}case"linux":{const r=e(eo)(n,"v3.19.8");let o;o=["aarch64"].includes(i)?r?"Linux-aarch64":"linux-aarch64":r?"Linux-x86_64":"linux-x86_64";const s=`cmake-${t}-${o}`;return{binRelativeDir:"bin/",extractedFolderName:s,extractFunction:br.extractTar,url:`https://github.com/Kitware/CMake/releases/download/v${t}/${s}.tar.gz`}}default:throw Error(`Unsupported platform '${s}'`)}}function N(t,r,o,n=!1){const s=ue.join(t,r),i=ue.join(t,o);e(pe).existsSync(i)||(e(pe).symlinkSync(s,i),!uo&&n&&e(pe).chmodSync(i,"755"))}function L(e){return j(e)||!!lo.validRange(e)}function j(e){return"nightly"===e}function D(e,t){const r=br.find.bind(void 0,"PyPy",e);let o=r(t);if(!o&&uo&&(o=r("x86")),!o)throw Error(`PyPy ${e} not found`);const n=ue.join(o,"bin");Ce.exportVariable("pythonLocation",uo?o:n),Ce.addPath(o),Ce.addPath(n),uo&&Ce.addPath(ue.join(o,"Scripts"));const s="pypy"+e;return Ce.setOutput("python-version",s),{impl:s,version:k(o)}}function k(e){const t=e.split(ue.sep),r=t.findIndex((e=>"PyPy"===e||"Python"===e));return t[r+1]||""}function M(e){const t=ue.join(e,"bin");return uo?e:t}function F(e){return e.replace(/(\d+\.\d+\.\d+)((?:a|b|rc))(\d*)/g,"$1-$2.$3")}function G(e){return e.files.find((e=>ho.includes(e.arch)&&fo.includes(e.platform)))}function U(e,t,r){return e.files.find((e=>e.arch===t&&e.platform===r))}async function B(t,r,o){if(!T())return V("",r,o);try{if(t.startsWith("pypy-")){const r=await async function(t,r){let o,n="",s="";const i=(e=>{const t=e.split("-").filter((e=>!!e));if(2>t.length||"pypy"!=t[0])throw Error("Invalid 'version' property for PyPy. PyPy version should be specified as 'pypy-<python-version>'. See README for examples and documentation.");const r=t[1];let o;if(o=t.length>2?F(t[2]):"x",!L(r)||!L(o))throw Error("Invalid 'version' property for PyPy. Both Python version and PyPy versions should satisfy SemVer notation. See README for examples and documentation.");if(!/^\d+\.\d+$/.test(r))throw Error("Invalid format of Python version for PyPy. Python version should be specified in format 'x.y'. See README for examples and documentation.");return{pypyVersion:o,pythonVersion:r}})(t);({installDir:o,resolvedPythonVersion:s,resolvedPyPyVersion:n}=((t,r,o)=>{let n="",s="",i=uo?(e=>{let t="";return ho.forEach((r=>t=t||br.find("PyPy",e,r))),t})(t):br.find("PyPy",t,o);return i&&(s=(e=>ue.basename(ue.dirname(e)))(i),n=(t=>{let r="",o=ue.join(t,"PYPY_VERSION");return e(pe).existsSync(o)&&(r=""+e(pe).readFileSync(o)),r})(i),lo.satisfies(n,r)||(i=null,n="",s="")),i||Ce.info(`PyPy version ${t} (${r}) was not found in the local cache`),{installDir:i,resolvedPythonVersion:s,resolvedPyPyVersion:n}})(i.pythonVersion,i.pypyVersion,r)),o||({installDir:o,resolvedPythonVersion:s,resolvedPyPyVersion:n}=await(async(t,r,o)=>{let n;const s=await(async()=>{const e="https://downloads.python.org/pypy/versions.json",t=new yo.HttpClient("tool-cache"),r=await t.getJson(e);if(!r.result)throw Error(`Unable to retrieve the list of available PyPy versions from '${e}'`);return r.result})();if(!s||0===s.length)throw Error("No release was found in PyPy version.json");const i=((e,t,r,o)=>{const n=e.filter((e=>{const n=lo.satisfies(lo.coerce(e.python_version),t),s=j(r)&&j(e.pypy_version)||lo.satisfies(F(e.pypy_version),r),i=e.files&&(uo?(e=>e.files.some((e=>ho.includes(e.arch)&&fo.includes(e.platform))))(e):((e,t,r)=>e.files.some((e=>e.arch===t&&e.platform===r)))(e,o,process.platform));return n&&s&&i}));if(0===n.length)return null;const s=n.sort(((e,t)=>lo.compare(lo.coerce(F(t.pypy_version)),lo.coerce(F(e.pypy_version)))||lo.compare(lo.coerce(t.python_version),lo.coerce(e.python_version))))[0];return{foundAsset:uo?G(s):U(s,o,process.platform),resolvedPythonVersion:s.python_version,resolvedPyPyVersion:s.pypy_version}})(s,r,t,o);if(!i||!i.foundAsset)throw Error(`PyPy version ${r} (${t}) with arch ${o} not found`);const{foundAsset:a,resolvedPythonVersion:c,resolvedPyPyVersion:l}=i;let u=""+a.download_url;Ce.info(`Downloading PyPy from "${u}" ...`);const p=await br.downloadTool(u);Ce.info("Extracting downloaded archive..."),n=uo?await br.extractZip(p):await br.extractTar(p,void 0,"x");const d=e(pe).readdirSync(n)[0],h=ue.join(n,d);let f=h;j(l)||(f=await br.cacheDir(h,"PyPy",c,o)),((t,r)=>{const o=ue.join(t,"PYPY_VERSION");e(pe).writeFileSync(o,r)})(f,l);const m=M(f);return await(async(e,t)=>{const r=lo.coerce(t),o=lo.major(r),n=2===o?"":"3";let s=uo?".exe":"";Ce.info("Creating symlinks..."),N(e,`pypy${n}${s}`,`python${o}${s}`,!0),N(e,`pypy${n}${s}`,"python"+s,!0)})(m,c),await(async e=>{Ce.info("Installing and updating pip");const t=ue.join(e,"python");await Fr.exec(t+" -m ensurepip"),await Fr.exec(e+"/python -m pip install --ignore-installed pip")})(m),{installDir:f,resolvedPythonVersion:c,resolvedPyPyVersion:l}})(i.pypyVersion,i.pythonVersion,r));const a=ue.join(o,uo?"Scripts":"bin"),c=M(o);return Ce.exportVariable("pythonLocation",c),Ce.addPath(c),Ce.addPath(a),{resolvedPyPyVersion:n,resolvedPythonVersion:s}}(t,o);Ce.info(`Successfully setup PyPy ${r.resolvedPyPyVersion} with Python (${r.resolvedPythonVersion})`)}else{const e=await(async(e,t)=>{switch(e.toUpperCase()){case"PYPY2":return D("2",t);case"PYPY3":return D("3.6",t);default:return await async function(e,t){const r=((o=e).endsWith("-dev")?`>= ${o.slice(0,-4)}.0-a0`:o).replace(/(\d+\.\d+\.\d+)((?:a|b|rc)\d*)/g,"$1-$2");var o;Ce.debug(`Semantic version spec of ${e} is ${r}`);let n=br.find("Python",r,t);if(!n){Ce.info(`Version ${r} was not found in the local cache`);const e=await(async(e,t)=>{const r=await br.getManifestFromRepo("actions","python-versions",vo,"main");return await br.findFromManifest(e,!1,r,t)})(r,t);e&&e.files&&e.files.length>0&&(Ce.info(`Version ${r} is available for downloading`),await(async e=>{const t=e.files[0].download_url;Ce.info(`Download from "${t}"`);const r=await br.downloadTool(t,void 0,vo);let o;Ce.info("Extract downloaded archive"),o=uo?await br.extractZip(r):await br.extractTar(r),Ce.info("Execute installation script"),await(async e=>{const t={cwd:e,env:{...process.env,...po&&{LD_LIBRARY_PATH:ue.join(e,"lib")}},silent:!0,listeners:{stdout(e){Ce.info((""+e).trim())},stderr(e){Ce.error((""+e).trim())}}};uo?await Fr.exec("powershell",["./setup.ps1"],t):await Fr.exec("bash",["./setup.sh"],t)})(o)})(e),n=br.find("Python",r,t))}if(!n)throw Error([`Version ${e} with arch ${t} not found`,"The list of all available versions can be found here: "+go].join(le.EOL));if(Ce.exportVariable("pythonLocation",n),po){const e=process.env.LD_LIBRARY_PATH?":"+process.env.LD_LIBRARY_PATH:"",t=ue.join(n,"lib");e.split(":").includes(t)||Ce.exportVariable("LD_LIBRARY_PATH",t+e)}if(Ce.addPath(n),Ce.addPath((e=>ue.join(e,uo?"Scripts":"bin"))(n)),uo){const e=ue.basename(ue.dirname(n)),t=lo.major(e),r=lo.minor(e),o=ue.join(process.env.APPDATA||"","Python",`Python${t}${r}`,"Scripts");Ce.addPath(o)}const s=k(n);return Ce.setOutput("python-version",s),{impl:"CPython",version:s}}(e,t)}})(t,o);Ce.info(`Successfully setup ${e.impl} (${e.version})`)}const r=ue.join("setup-pthon",".github");return void Ce.info("##[add-matcher]"+ue.join(r,"python.json"))}catch(e){return V(t,r,o)}}async function V(t,r,o){switch(process.platform){case"win32":{const n=await e(ro).async(t+o,{algorithm:"md5"}),s=ue.join(r,n,"python"),i=s;return await x("python3",t,["/InstallDir:"+s]),Ce.info(`Add ${i} to PATH`),await g(i),{installDir:s,binDir:i}}case"darwin":return v("python3",t);case"linux":{const e=await m("python3",t);return await m("python3-pip"),e}default:throw Error("Unsupported platform")}}function q(e){return new Promise((t=>{xe.get(e,(e=>{t(void 0!==e.statusCode&&e.statusCode>=200&&399>=e.statusCode)}))}))}async function H(t,r){if(void 0===wo&&(null!==e(Te).sync("pip3",{nothrow:!0})?wo="pip3":null!==e(Te).sync("pip",{nothrow:!0})&&await(async(t,r,o=/v?(\d\S*)/)=>{const n=await(async(e,t=/v?(\d\S*)/)=>{try{var r,o;const{stderr:s,stdout:i}=await Fr.getExecOutput(e,["--version"]);var n;return null!==(n=null===(r=i.match(t))||void 0===r?void 0:r[1])&&void 0!==n?n:null===(o=s.match(t))||void 0===o?void 0:o[1]}catch(e){return void console.error(e)}})(t,o);return"string"==typeof n&&"string"==typeof r&&""!==n&&""!==r&&-1!==e(xo)(n,r)})("python","3.0.0")?wo="pip":(await B("3.x","",process.arch),wo="pip3")),e(Ge).sync(wo,["install",void 0!==r&&""!==r?`${t}==${r}`:t]),void 0===Eo){if("linux"===process.platform)Eo="/home/runner/.local/bin/";else if("darwin"===process.platform)Eo="/usr/local/bin/";else try{Eo=ue.join((await Fr.getExecOutput('python3 -c "import sys;print(sys.base_exec_prefix);"')).stdout.trim(),"Scripts")}catch{Eo=ue.join((await Fr.getExecOutput('python -c "import sys;print(sys.base_exec_prefix);"')).stdout.trim(),"Scripts")}Ce.info(Eo+" to PATH"),await g(Eo)}return{binDir:Eo}}async function X(t,r){return await e(Ge)("7z",["x",t,"-o"+r]),r}async function W(t,r,o=["--strip-components=1"]){try{await So.mkdirP(r)}catch{}return await e(Ge)("tar",["xf",t,"-C",r,...o]),r}function Y(e,t,r){return`https://github.com/llvm/llvm-project/releases/download/llvmorg-${e}/${t}${e}${r}`}function Z(e,t,r){return`https://releases.llvm.org/${e}/${t}${e}${r}`}function z(t,r){switch(t){case"darwin":return(t=>{if(Oo.has(t))return null;const r="clang+llvm-",o=`-x86_64${"9.0.0"===t?"-darwin-apple":"-apple-darwin"}.tar.xz`;return e(eo)(t,"9.0.1")?Z(t,r,o):Y(t,r,o)})(r);case"linux":return(t=>{let r=t;const o=_o.get(r);let n;void 0!==o&&(r=o),n=r.includes("ubuntu")?r:""!==r&&r in $o?$o[r]:$o["12.0.1-rc4"];const s="clang+llvm-",i="5.0.0"===r?`-linux-x86_64${n}.tar.xz`:`-x86_64-linux-gnu${n}.tar.xz`;return e(eo)(r,"9.0.1")?Z(r,s,i):Y(r,s,i)})(r);case"win32":return(async t=>{if(Ro.has(t))return null;const r="LLVM-",o=e(eo)(t,"3.7.0")?"-win32.exe":"-win64.exe",n=e(eo)(t,"9.0.1");let s,i=!1;return n&&(s=Z(t,r,o),await q(s)||(i=!0)),!i&&n||(s=Y(t,r,o)),s})(r);default:return null}}async function J(e,t){const[r,o]=await(async(e,t,r,o)=>{if(!e.has(r))throw Error(`Unsupported target! (platform='${t}', version='${r}')`);for(const n of((e,t)=>Array.from(e).filter((e=>/^\d+\.\d+\.\d+$/.test(e)&&e.startsWith(t))).sort().reverse())(e,r)){const e=await o(t,n);if(null!==e&&await q(e))return[n,e]}throw Error(`Unsupported target! (platform='${t}', version='${r}')`)})(Po,t,e,z);return Ce.setOutput("version",r),{url:o,extractedFolderName:"",binRelativeDir:"bin",extractFunction:"win32"===t?X:W}}async function K(t,r,o){let n=r;""!==n&&void 0!==n||(n="win32"===process.platform?"C:/Program Files/LLVM":"./llvm"),n=ue.resolve(n);const s=await A("llvm",t,J,n),i=ue.join(n,"lib");var a;const c=null!==(a=process.env.LD_LIBRARY_PATH)&&void 0!==a?a:"";var l;const u=null!==(l=process.env.DYLD_LIBRARY_PATH)&&void 0!==l?l:"";Ce.exportVariable("LLVM_PATH",n);const p=e(bo)(t);if(Ce.exportVariable("LD_LIBRARY_PATH",`${i}${ue.delimiter}${c}`),Ce.exportVariable("DYLD_LIBRARY_PATH",`${i}${ue.delimiter}${u}`),Ce.exportVariable("CPATH",`${n}/lib/clang/${p}/include`),Ce.exportVariable("LDFLAGS",`-L${n}/lib`),Ce.exportVariable("CPPFLAGS",`-I${n}/include`),Ce.exportVariable("CC",n+"/bin/clang"),Ce.exportVariable("CXX",n+"/bin/clang++"),Ce.exportVariable("LIBRARY_PATH",n+"/lib"),"darwin"===process.platform)try{const e=await Fr.getExecOutput("xcrun --sdk macosx --show-sdk-path"),t=e.stdout||e.stderr;pe.existsSync(t)&&Ce.exportVariable("SDKROOT",t)}catch(e){Ce.error(e)}return s}async function Q(e,t,r,o,n,s){if("win32"!==process.platform)return;let i,a;try{"2015"===e?(i="14.0.25420.1",await x("visualcpp-build-tools",i,["--ignore-dependencies","--params","'/IncludeRequired'"]),a="C:/Program Files (x86)/MSBuild/Microsoft.Cpp/v4.0/v140",pe.existsSync(a)&&Ce.exportVariable("VCTargetsPath",a)):"2017"===e?(i="14.16",await x("visualstudio2017buildtools","15.9.38.0",["--package-parameters","'--add Microsoft.VisualStudio.Workload.NativeDesktop --includeRecommended --passive'"]),a="C:/Program Files (x86)/Microsoft Visual Studio/2017/BuildTools/VC/Tools/MSVC/14.16"):"2019"===e&&(i="14.29.30133",await x("visualstudio2019buildtools","16.11.2.0",["--package-parameters","'--add Microsoft.VisualStudio.Workload.NativeDesktop --includeRecommended --passive'"]),a="C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.29.30133")}catch(e){Ce.error(e)}void 0!==a&&pe.existsSync(a)&&Ce.exportVariable("VCTargetsPath",a);const{setupMSVCDevCmd:c}=Re("jJT7R");c((e=>{switch(e){case"x32":case"32":case"ia32":return"x86";case"64":return"x64";default:return e}})(r),o,i,n,s)}function ee(e,t){const r=(e=>{switch(e){case"win32":return"win";case"darwin":return"mac";case"linux":return"linux";default:throw Error(`Unsupported platform '${e}'`)}})(t);return{binRelativeDir:"",extractedFolderName:"",extractFunction:br.extractZip,url:`https://github.com/ninja-build/ninja/releases/download/v${e}/ninja-${r}.zip`}}function te(e){return null==e?[]:Array.isArray(e)?e:[e]}function re(e,t,r,o){var n,s=e[t],i=~o.string.indexOf(t)?null==r||!0===r?"":r+"":"boolean"==typeof r?r:~o.boolean.indexOf(t)?"false"!==r&&("true"===r||(e._.push(0*(n=+r)==0?n:r),!!r)):0*(n=+r)==0?n:r;e[t]=null==s?i:Array.isArray(s)?s.concat(i):[s,i]}function oe(e,t){return"true"===t||void 0===t&&e in Io?Io[e]:null!=t?t:""}async function ne(t,r,o){let n;switch(process.platform){case"win32":"arm"!==o&&"arm64"!==o||await x("gcc-arm-embedded",t),await x("mingw",t),"x64"===o&&pe.existsSync("C:/tools/mingw64/bin")?(n="C:/tools/mingw64/bin",await g(n)):"ia32"===o&&pe.existsSync("C:/tools/mingw32/bin")?(n="C:/tools/mingw32/bin",await g(n)):pe.existsSync("C:/ProgramData/Chocolatey/bin/g++.exe")&&(n="C:/ProgramData/Chocolatey/bin/");break;case"darwin":n=v("gcc",t).binDir;break;case"linux":"x64"===o?n=(await m("g++",t,"ppa:ubuntu-toolchain-r/test")).binDir:(Ce.info(`Install g++-multilib because gcc for ${o} was requested`),n=(await m("g++-multilib",t,"ppa:ubuntu-toolchain-r/test")).binDir);break;default:throw Error("Unsupported platform for "+o)}if(void 0!==n){var s;const r=e(bo)(null!==(s=e(to)(t))&&void 0!==s?s:t);return"win32"===process.platform?(Ce.exportVariable("CC",n+"/gcc"),Ce.exportVariable("CXX",n+"/g++")):(Ce.exportVariable("CC",`${n}/gcc-${r}`),Ce.exportVariable("CXX",`${n}/g++-${r}`)),{binDir:n}}}function se(e){return T()?Ce.error(e):console.log(`${e}`)}async function ie(t){T()||(process.env.ACTIONS_ALLOW_UNSECURE_COMMANDS="true");const r=((e,t)=>{var r,o,n,s,i,a={_:[]},c=0,l=0,u=0,p=(e=e||[]).length;const d=void 0!==(t=t||{}).alias,h=void 0!==t.unknown,f=void 0!==t.default;if(t.alias=t.alias||{},t.string=te(t.string),t.boolean=te(t.boolean),d)for(r in t.alias)for(o=t.alias[r]=te(t.alias[r]),c=0;o.length>c;c++)(t.alias[o[c]]=o.concat(r)).splice(c,1);for(c=t.boolean.length;c-- >0;)for(l=(o=t.alias[t.boolean[c]]||[]).length;l-- >0;)t.boolean.push(o[l]);for(c=t.string.length;c-- >0;)for(l=(o=t.alias[t.string[c]]||[]).length;l-- >0;)t.string.push(o[l]);if(f)for(r in t.default)if(s=typeof t.default[r],o=t.alias[r]=t.alias[r]||[],void 0!==t[s])for(t[s].push(r),c=0;o.length>c;c++)t[s].push(o[c]);const m=h?Object.keys(t.alias):[];for(c=0;p>c;c++){if("--"===(n=e[c])){a._=a._.concat(e.slice(++c));break}for(l=0;n.length>l&&45===n.charCodeAt(l);l++);if(0===l)a._.push(n);else if("no-"===n.substring(l,l+3)){if(s=n.substring(l+3),h&&!~m.indexOf(s))return t.unknown(n);a[s]=!1}else{for(u=l+1;n.length>u&&61!==n.charCodeAt(u);u++);for(s=n.substring(l,u),i=n.substring(++u)||c+1===p||45===(""+e[c+1]).charCodeAt(0)||e[++c],o=2===l?[s]:s,u=0;o.length>u;u++){if(s=o[u],h&&!~m.indexOf(s))return t.unknown("-".repeat(l)+s);re(a,s,o.length>u+1||i,t)}}}if(f)for(r in t.default)void 0===a[r]&&(a[r]=t.default[r]);if(d)for(r in a)for(o=t.alias[r]||[];o.length>0;)a[o.shift()]=a[r];return a})(t,{string:jo,default:Object.fromEntries(jo.map((e=>[e,ae(e)]))),alias:{h:"help"},boolean:"help"});var o;r.help&&Ce.info('\nsetup_cpp [options]\nsetup_cpp --compiler llvm --cmake true --ninja true --ccache true --conan "1.40.1"\n\nInstall all the tools required for building and testing C++/C projects.\n\n--architecture\t the cpu architecture to install the tools for. By default it uses the current CPU architecture.\n--compiler\t the <compiler> to install.\n \t You can specify the version instead of specifying just the name e.g: --compiler \'llvm-11\'\n\n--tool_name\t pass "true" or pass the <version> you would like to install for this tool.\n\nAll the available tools:\n--llvm\n--gcc\n--cmake\n--ninja\n--meson\n--conan\n--ccache\n--cppcheck\n--doxygen\n--gcovr\n--opencppcoverage\n--python\n--choco\n--brew\n ');const n=null!==(o=r.architecture)&&void 0!==o?o:process.arch;var s;const i=null!==(s=process.env.SETUP_CPP_DIR)&&void 0!==s?s:e(Co)("~/setup_cpp"),a=[],c=[];for(const e of Lo){const t=r[e];if(void 0!==t){const r=No[e];try{const o=await r(oe(e,t),i,n);a.push(void 0!==o?ce(e,o):e+" was successfully installed")}catch(t){se(t),c.push(e+" failed to install")}}}const l=r.compiler;try{if(void 0!==l){const t=l.split("-"),r=t[0];let o;if(1 in t){const r=t[1];null!==e(Ao)(r)?o=r:se(`Invalid version ${r} used for the compiler. Using the default version...`)}switch(r){case"llvm":case"clang":case"clang++":await K(oe("llvm",o),i);break;case"gcc":case"mingw":case"cygwin":case"msys":await ne(oe("gcc",o),0,n);break;case"cl":case"msvc":case"msbuild":case"vs":case"visualstudio":case"visualcpp":case"visualc++":await Q(oe("msvc",o),0,n);break;default:c.push("Unsupported compiler "+r)}}}catch(e){se(e),c.push("Failed to install the "+l)}return a.forEach((e=>{return t=e,T()?Ce.info(t):console.log(`${t}`);var t})),c.forEach((e=>se(e))),Ce.info("setup_cpp finished"),0===c.length?0:1}function ae(e){const t=Ce.getInput(e.toLowerCase());if("false"!==t&&""!==t)return t}function ce(e,t){let r=e+" was successfully installed";return"installDir"in t&&(r+="\nThe installation direcotry is "+t.installDir),""!==t.binDir&&(r+="\nThe binary direcotry is "+t.binDir),r}var le=require("os"),ue=require("path"),pe=require("fs"),de=require("child_process"),he=require("assert"),fe=require("events"),me=require("buffer"),ve=require("stream"),ge=require("util"),ye=require("http"),xe=require("https");require("net");var we=require("tls"),Ee=require("crypto"),be=require("string_decoder"),Se=require("timers"),Pe=require("process"),Oe="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},_e={},$e={},Re=Oe.parcelRequire810d;null==Re&&((Re=e=>{if(e in _e)return _e[e].exports;if(e in $e){var t=$e[e];delete $e[e];var r={id:e,exports:{}};return _e[e]=r,t.call(r.exports,r,r.exports),r.exports}var o=Error("Cannot find module '"+e+"'");throw o.code="MODULE_NOT_FOUND",o}).register=(e,t)=>{$e[e]=t},Oe.parcelRequire810d=Re),t(module.exports,"main",(()=>ie)),Re.register("6FGZZ",(function(e,t){"use strict";function r(e,t){const r=process.env["INPUT_"+e.replace(/ /g,"_").toUpperCase()]||"";if(t&&t.required&&!r)throw Error("Input required and not supplied: "+e);return t&&!1===t.trimWhitespace?r:r.trim()}function o(e,t={}){u.issueCommand("error",d.toCommandProperties(t),e instanceof Error?""+e:e)}function n(e){u.issue("group",e)}function s(){u.issue("endgroup")}var i=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,o)=>{void 0===o&&(o=r),Object.defineProperty(e,o,{enumerable:!0,get(){return t[r]}})}:(e,t,r,o)=>{void 0===o&&(o=r),e[o]=t[r]}),a=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),c=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&i(t,e,r);return a(t,e),t}),l=e.exports&&e.exports.__awaiter||((e,t,r,o)=>new(r||(r=Promise))(((n,s)=>{function i(e){try{c(o.next(e))}catch(e){s(e)}}function a(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(i,a)}c((o=o.apply(e,t||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.getState=e.exports.saveState=e.exports.group=e.exports.endGroup=e.exports.startGroup=e.exports.info=e.exports.notice=e.exports.warning=e.exports.error=e.exports.debug=e.exports.isDebug=e.exports.setFailed=e.exports.setCommandEcho=e.exports.setOutput=e.exports.getBooleanInput=e.exports.getMultilineInput=e.exports.getInput=e.exports.addPath=e.exports.setSecret=e.exports.exportVariable=e.exports.ExitCode=void 0;var u=Re("eOxkI"),p=Re("85a1M"),d=Re("lK3O3");const h=c(le),f=c(ue);var m,v;(v=m=e.exports.ExitCode||(e.exports.ExitCode={}))[v.Success=0]="Success",v[v.Failure=1]="Failure",e.exports.exportVariable=(e,t)=>{const r=d.toCommandValue(t);if(process.env[e]=r,process.env.GITHUB_ENV){const t="_GitHubActionsFileCommandDelimeter_";p.issueCommand("ENV",`${e}<<${t}${h.EOL}${r}${h.EOL}${t}`)}else u.issueCommand("set-env",{name:e},r)},e.exports.setSecret=e=>{u.issueCommand("add-mask",{},e)},e.exports.addPath=e=>{process.env.GITHUB_PATH?p.issueCommand("PATH",e):u.issueCommand("add-path",{},e),process.env.PATH=`${e}${f.delimiter}${process.env.PATH}`},e.exports.getInput=r,e.exports.getMultilineInput=(e,t)=>r(e,t).split("\n").filter((e=>""!==e)),e.exports.getBooleanInput=(e,t)=>{const o=r(e,t);if(["true","True","TRUE"].includes(o))return!0;if(["false","False","FALSE"].includes(o))return!1;throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${e}\nSupport boolean input list: \`true | True | TRUE | false | False | FALSE\``)},e.exports.setOutput=(e,t)=>{process.stdout.write(h.EOL),u.issueCommand("set-output",{name:e},t)},e.exports.setCommandEcho=e=>{u.issue("echo",e?"on":"off")},e.exports.setFailed=e=>{process.exitCode=m.Failure,o(e)},e.exports.isDebug=()=>"1"===process.env.RUNNER_DEBUG,e.exports.debug=e=>{u.issueCommand("debug",{},e)},e.exports.error=o,e.exports.warning=(e,t={})=>{u.issueCommand("warning",d.toCommandProperties(t),e instanceof Error?""+e:e)},e.exports.notice=(e,t={})=>{u.issueCommand("notice",d.toCommandProperties(t),e instanceof Error?""+e:e)},e.exports.info=e=>{process.stdout.write(e+h.EOL)},e.exports.startGroup=n,e.exports.endGroup=s,e.exports.group=function(e,t){return l(this,void 0,void 0,(function*(){let r;n(e);try{r=yield t()}finally{s()}return r}))},e.exports.saveState=(e,t)=>{u.issueCommand("save-state",{name:e},t)},e.exports.getState=e=>process.env["STATE_"+e]||""})),Re.register("eOxkI",(function(e,t){"use strict";function r(e,t,r){const o=new c(e,t,r);process.stdout.write(""+o+i.EOL)}var o=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,o)=>{void 0===o&&(o=r),Object.defineProperty(e,o,{enumerable:!0,get(){return t[r]}})}:(e,t,r,o)=>{void 0===o&&(o=r),e[o]=t[r]}),n=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),s=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&o(t,e,r);return n(t,e),t});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.issue=e.exports.issueCommand=void 0;const i=s(le);var a=Re("lK3O3");e.exports.issueCommand=r,e.exports.issue=(e,t="")=>{r(e,{},t)};class c{constructor(e,t,r){e||(e="missing.command"),this.command=e,this.properties=t,this.message=r}toString(){let e="::"+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let r=!0;for(const o in this.properties)if(this.properties.hasOwnProperty(o)){const n=this.properties[o];n&&(r?r=!1:e+=",",e+=`${o}=${t=n,a.toCommandValue(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}`)}}var t;return e+="::"+(e=>a.toCommandValue(this.message).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A"))(),e}}})),Re.register("lK3O3",((e,t)=>{"use strict";Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.toCommandProperties=e.exports.toCommandValue=void 0,e.exports.toCommandValue=e=>null==e?"":"string"==typeof e||e instanceof String?e:JSON.stringify(e),e.exports.toCommandProperties=e=>Object.keys(e).length?{title:e.title,line:e.startLine,endLine:e.endLine,col:e.startColumn,endColumn:e.endColumn}:{}})),Re.register("85a1M",((e,t)=>{"use strict";var r=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,o)=>{void 0===o&&(o=r),Object.defineProperty(e,o,{enumerable:!0,get(){return t[r]}})}:(e,t,r,o)=>{void 0===o&&(o=r),e[o]=t[r]}),o=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),n=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return o(t,e),t});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.issueCommand=void 0;const s=n(pe),i=n(le);var a=Re("lK3O3");e.exports.issueCommand=(e,t)=>{const r=process.env["GITHUB_"+e];if(!r)throw Error("Unable to find environment variable for file command "+e);if(!s.existsSync(r))throw Error("Missing file at path: "+r);s.appendFileSync(r,`${a.toCommandValue(t)}${i.EOL}`,{encoding:"utf8"})}}));var Ce=Re("6FGZZ"),Te={};const Ae="win32"===process.platform||"cygwin"===process.env.OSTYPE||"msys"===process.env.OSTYPE,Ie=Ae?";":":";var Ne,Le={};Re.register("5vEMD",((e,t)=>{function r(e,t,r){return!(!e.isSymbolicLink()&&!e.isFile())&&((e,t)=>{var r=void 0!==t.pathExt?t.pathExt:process.env.PATHEXT;if(!r)return!0;if(-1!==(r=r.split(";")).indexOf(""))return!0;for(var o=0;r.length>o;o++){var n=r[o].toLowerCase();if(n&&e.substr(-n.length).toLowerCase()===n)return!0}return!1})(t,r)}function o(e,t,o){pe.stat(e,((n,s)=>{o(n,!n&&r(s,e,t))}))}e.exports=o,o.sync=(e,t)=>r(pe.statSync(e),e,t)})),Re.register("kam8f",((e,t)=>{function r(e,t,r){pe.stat(e,((e,n)=>{r(e,!e&&o(n,t))}))}function o(e,t){return e.isFile()&&((e,t)=>{var r=e.mode,o=e.uid,n=e.gid,s=void 0!==t.uid?t.uid:process.getuid&&process.getuid(),i=void 0!==t.gid?t.gid:process.getgid&&process.getgid(),a=parseInt("100",8),c=parseInt("010",8),l=a|c;return r&parseInt("001",8)||r&c&&n===i||r&a&&o===s||r&l&&0===s})(e,t)}e.exports=r,r.sync=(e,t)=>o(pe.statSync(e),t)})),Ne="win32"===process.platform||Oe.TESTING_WINDOWS?Re("5vEMD"):Re("kam8f"),Le=r,r.sync=(e,t)=>{try{return Ne.sync(e,t||{})}catch(e){if(t&&t.ignoreErrors||"EACCES"===e.code)return!1;throw e}};const je=e=>Object.assign(Error("not found: "+e),{code:"ENOENT"}),De=(e,t)=>{const r=t.colon||Ie,o=e.match(/\//)||Ae&&e.match(/\\/)?[""]:[...Ae?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],n=Ae?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=Ae?n.split(r):[""];return Ae&&-1!==e.indexOf(".")&&""!==s[0]&&s.unshift(""),{pathEnv:o,pathExt:s,pathExtExe:n}},ke=(e,t,r)=>{"function"==typeof t&&(r=t,t={}),t||(t={});const{pathEnv:o,pathExt:n,pathExtExe:s}=De(e,t),i=[],a=r=>new Promise(((n,s)=>{if(r===o.length)return t.all&&i.length?n(i):s(je(e));const a=o[r],l=/^".*"$/.test(a)?a.slice(1,-1):a,u=ue.join(l,e),p=!l&&/^\.[\\\/]/.test(e)?e.slice(0,2)+u:u;n(c(p,r,0))})),c=(e,r,o)=>new Promise(((l,u)=>{if(o===n.length)return l(a(r+1));const p=n[o];Le(e+p,{pathExt:s},((n,s)=>{if(!n&&s){if(!t.all)return l(e+p);i.push(e+p)}return l(c(e,r,o+1))}))}));return r?a(0).then((e=>r(null,e)),r):a(0)};let Me;Te=ke,ke.sync=(e,t)=>{t=t||{};const{pathEnv:r,pathExt:o,pathExtExe:n}=De(e,t),s=[];for(let i=0;r.length>i;i++){const a=r[i],c=/^".*"$/.test(a)?a.slice(1,-1):a,l=ue.join(c,e),u=!c&&/^\.[\\\/]/.test(e)?e.slice(0,2)+l:l;for(let e=0;o.length>e;e++){const r=u+o[e];try{if(Le.sync(r,{pathExt:n})){if(!t.all)return r;s.push(r)}}catch(e){}}}if(t.all&&s.length)return s;if(t.nothrow)return null;throw je(e)};var Fe,Ge={},Ue={},Be={},Ve={};const qe=(e={})=>{const t=e.env||process.env;return"win32"!==(e.platform||process.platform)?"PATH":Object.keys(t).reverse().find((e=>"PATH"===e.toUpperCase()))||"Path"};var He,Xe;(Ve=qe).default=qe,Fe=e=>n(e)||n(e,!0),Xe=e=>e.replace(/([()\][%!^"`<>&|;, *?])/g,"^$1"),He=(e,t)=>(e=(e=`"${e=(e=(e=""+e).replace(/(\\*)"/g,'$1$1\\"')).replace(/(\\*)$/,"$1$1")}"`).replace(/([()\][%!^"`<>&|;, *?])/g,"^$1"),t&&(e=e.replace(/([()\][%!^"`<>&|;, *?])/g,"^$1")),e);var We,Ye;We=(e="")=>{const t=e.match(/^#!(.*)/);if(!t)return null;const[r,o]=t[0].replace(/#! ?/,"").split(" "),n=r.split("/").pop();return"env"===n?o:o?`${n} ${o}`:n},Ye=e=>{const t=Buffer.alloc(150);let r;try{r=pe.openSync(e,"r"),pe.readSync(r,t,0,150,0),pe.closeSync(r)}catch(e){}return We(""+t)};const Ze="win32"===process.platform,ze=/\.(?:com|exe)$/i,Je=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;Be=(e,t,r)=>{t&&!Array.isArray(t)&&(r=t,t=null);const o={command:e,args:t=t?t.slice(0):[],options:r=Object.assign({},r),file:void 0,original:{command:e,args:t}};return r.shell?o:(e=>{if(!Ze)return e;const t=(e=>{e.file=Fe(e);const t=e.file&&Ye(e.file);return t?(e.args.unshift(e.file),e.command=t,Fe(e)):e.file})(e),r=!ze.test(t);if(e.options.forceShell||r){const r=Je.test(t);e.command=ue.normalize(e.command),e.command=Xe(e.command),e.args=e.args.map((e=>He(e,r)));const o=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${o}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e})(o)};var Ke={};const Qe="win32"===process.platform;var et;Ke={hookChildProcess(e,t){if(!Qe)return;const r=e.emit;e.emit=function(o,n){if("exit"===o){const o=i(n,t);if(o)return r.call(e,"error",o)}return r.apply(e,arguments)}},verifyENOENT:i,verifyENOENTSync(e,t){return Qe&&1===e&&!t.file?s(t.original,"spawnSync"):null},notFoundError:s},(Ue=a).spawn=a,Ue.sync=(e,t,r)=>{const o=Be(e,t,r),n=de.spawnSync(o.command,o.args,o.options);return n.error=n.error||Ke.verifyENOENTSync(n.status,o),n},Ue._parse=Be,Ue._enoent=Ke,et=e=>{const t="string"==typeof e?"\r":13;return e[e.length-1]===("string"==typeof e?"\n":10)&&(e=e.slice(0,e.length-1)),e[e.length-1]===t&&(e=e.slice(0,e.length-1)),e};var tt={};const rt=e=>{let t;e={cwd:process.cwd(),path:process.env[Ve()],execPath:process.execPath,...e};let r=ue.resolve(e.cwd);const o=[];for(;t!==r;)o.push(ue.join(r,"node_modules/.bin")),t=r,r=ue.resolve(r,"..");const n=ue.resolve(e.cwd,e.execPath,"..");return o.push(n),o.concat(e.path).join(ue.delimiter)};(tt=rt).default=rt,tt.env=e=>{const t={...(e={env:process.env,...e}).env},r=Ve({env:t});return e.path=t[r],t[r]=tt(e),t};var ot={},nt={};const st=(e,t)=>{for(const r of Reflect.ownKeys(t))Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));return e};(nt=st).default=st;const it=new WeakMap,at=(e,t={})=>{if("function"!=typeof e)throw new TypeError("Expected a function");let r,o=0;const n=e.displayName||e.name||"<anonymous>",s=function(...i){if(it.set(s,++o),1===o)r=e.apply(this,i),e=null;else if(!0===t.throw)throw Error(`Function \`${n}\` can only be called once`);return r};return nt(s,e),it.set(s,o),s};(ot=at).default=at,ot.callCount=e=>{if(!it.has(e))throw Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return it.get(e)};var ct,lt={};Object.defineProperty(lt,"__esModule",{value:!0}),lt.signalsByNumber=lt.signalsByName=void 0;var ut={};Object.defineProperty(ut,"__esModule",{value:!0}),ut.getSignals=void 0;var pt={};Object.defineProperty(pt,"__esModule",{value:!0}),pt.SIGNALS=void 0,pt.SIGNALS=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var dt={};Object.defineProperty(dt,"__esModule",{value:!0}),dt.SIGRTMAX=dt.getRealtimeSignals=void 0,dt.getRealtimeSignals=()=>Array.from({length:mt-ft+1},ht);const ht=(e,t)=>({name:"SIGRT"+(t+1),number:ft+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),ft=34,mt=64;dt.SIGRTMAX=mt,ut.getSignals=()=>{const e=dt.getRealtimeSignals();return[...pt.SIGNALS,...e].map(vt)};const vt=({name:e,number:t,description:r,action:o,forced:n=!1,standard:s})=>{const{signals:{[e]:i}}=le.constants,a=void 0!==i;return{name:e,number:a?i:t,description:r,supported:a,action:o,forced:n,standard:s}},gt=ut.getSignals().reduce(((e,{name:t,number:r,description:o,supported:n,action:s,forced:i,standard:a})=>({...e,[t]:{name:t,number:r,description:o,supported:n,action:s,forced:i,standard:a}})),{});lt.signalsByName=gt;const yt=(()=>{const e=ut.getSignals(),t=Array.from({length:dt.SIGRTMAX+1},((t,r)=>((e,t)=>{const r=((e,t)=>{const r=t.find((({name:t})=>le.constants.signals[t]===e));return void 0!==r?r:t.find((t=>t.number===e))})(e,t);if(void 0===r)return{};const{name:o,description:n,supported:s,action:i,forced:a,standard:c}=r;return{[e]:{name:o,number:e,description:n,supported:s,action:i,forced:a,standard:c}}})(r,e)));return Object.assign({},...t)})();lt.signalsByNumber=yt;var xt=lt.signalsByName;ct=({stdout:e,stderr:t,all:r,error:o,signal:n,exitCode:s,command:i,escapedCommand:a,timedOut:c,isCanceled:l,killed:u,parsed:{options:{timeout:p}}})=>{const d=void 0===(n=null===n?void 0:n)?void 0:xt[n].description,h=(({timedOut:e,timeout:t,errorCode:r,signal:o,signalDescription:n,exitCode:s,isCanceled:i})=>e?`timed out after ${t} milliseconds`:i?"was canceled":void 0!==r?"failed with "+r:void 0!==o?`was killed with ${o} (${n})`:void 0!==s?"failed with exit code "+s:"failed")({timedOut:c,timeout:p,errorCode:o&&o.code,signal:n,signalDescription:d,exitCode:s=null===s?void 0:s,isCanceled:l}),f=`Command ${h}: ${i}`,m="[object Error]"==={}.toString.call(o),v=m?`${f}\n${o.message}`:f,g=[v,t,e].filter(Boolean).join("\n");return m?(o.originalMessage=o.message,o.message=g):o=Error(g),o.shortMessage=v,o.command=i,o.escapedCommand=a,o.exitCode=s,o.signal=n,o.signalDescription=d,o.stdout=e,o.stderr=t,void 0!==r&&(o.all=r),"bufferedData"in o&&delete o.bufferedData,o.failed=!0,o.timedOut=!!c,o.isCanceled=l,o.killed=u&&!c,o};var wt={};const Et=["stdin","stdout","stderr"],bt=e=>{if(!e)return;const{stdio:t}=e;if(void 0===t)return Et.map((t=>e[t]));if((e=>Et.some((t=>void 0!==e[t])))(e))throw Error("It's not possible to provide `stdio` in combination with one of "+Et.map((e=>`\`${e}\``)).join(", "));if("string"==typeof t)return t;if(!Array.isArray(t))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof t}\``);return Array.from({length:Math.max(t.length,Et.length)},((e,r)=>t[r]))};(wt=bt).node=e=>{const t=bt(e);return"ipc"===t?"ipc":void 0===t||"string"==typeof t?[t,t,t,"ipc"]:t.includes("ipc")?t:[...t,"ipc"]};var St,Pt,Ot={};Ot=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"],"win32"!==process.platform&&Ot.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT"),"linux"===process.platform&&Ot.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED");var _t,$t=Ot,Rt=/^win/i.test(process.platform),Ct=fe;"function"!=typeof Ct&&(Ct=Ct.EventEmitter),process.__signal_exit_emitter__?_t=process.__signal_exit_emitter__:((_t=process.__signal_exit_emitter__=new Ct).count=0,_t.emitted={}),_t.infinite||(_t.setMaxListeners(1/0),_t.infinite=!0),(Pt=(e,t)=>{he.equal(typeof e,"function","a callback must be provided for exit handler"),!1===At&&u();var r="exit";return t&&t.alwaysLast&&(r="afterexit"),_t.on(r,e),()=>{_t.removeListener(r,e),0===_t.listeners("exit").length&&0===_t.listeners("afterexit").length&&c()}}).unload=c;var Tt={};$t.forEach((e=>{Tt[e]=()=>{process.listeners(e).length===_t.count&&(c(),l("exit",null,e),l("afterexit",null,e),Rt&&"SIGHUP"===e&&(e="SIGINT"),process.kill(process.pid,e))}})),Pt.signals=()=>$t,Pt.load=u;var At=!1,It=process.reallyExit,Nt=process.emit;const Lt=e=>e===le.constants.signals.SIGTERM||"string"==typeof e&&"SIGTERM"===e.toUpperCase();var jt,Dt=(St={spawnedKill(e,t="SIGTERM",r={}){const o=e(t);return((e,t,r,o)=>{if(!((e,{forceKillAfterTimeout:t},r)=>Lt(e)&&!1!==t&&r)(t,r,o))return;const n=(({forceKillAfterTimeout:e=!0})=>{if(!0===e)return 5e3;if(!Number.isFinite(e)||0>e)throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);return e})(r),s=setTimeout((()=>{e("SIGKILL")}),n);s.unref&&s.unref()})(e,t,r,o),o},spawnedCancel(e,t){e.kill()&&(t.isCanceled=!0)},setupTimeout(e,{timeout:t,killSignal:r="SIGTERM"},o){if(0===t||void 0===t)return o;let n;const s=new Promise(((o,s)=>{n=setTimeout((()=>{((e,t,r)=>{e.kill(t),r(Object.assign(Error("Timed out"),{timedOut:!0,signal:t}))})(e,r,s)}),t)})),i=o.finally((()=>{clearTimeout(n)}));return Promise.race([s,i])},validateTimeout({timeout:e}){if(void 0!==e&&(!Number.isFinite(e)||0>e))throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`)},async setExitHandler(e,{cleanup:t,detached:r},o){if(!t||r)return o;const n=Pt((()=>{e.kill()}));return o.finally((()=>{n()}))}}).validateTimeout,kt=St.setExitHandler,Mt=St.spawnedCancel,Ft=St.setupTimeout,Gt=St.spawnedKill,Ut={};const Bt=e=>null!==e&&"object"==typeof e&&"function"==typeof e.pipe;Bt.writable=e=>Bt(e)&&!1!==e.writable&&"function"==typeof e._write&&"object"==typeof e._writableState,Bt.readable=e=>Bt(e)&&!1!==e.readable&&"function"==typeof e._read&&"object"==typeof e._readableState,Bt.duplex=e=>Bt.writable(e)&&Bt.readable(e),Bt.transform=e=>Bt.duplex(e)&&"function"==typeof e._transform,Ut=Bt;var Vt,qt={},Ht=me.constants,Xt=ve.PassThrough;Vt=e=>{e={...e};const{array:t}=e;let{encoding:r}=e;const o="buffer"===r;let n=!1;t?n=!(r||o):r=r||"utf8",o&&(r=null);const s=new Xt({objectMode:n});r&&s.setEncoding(r);let i=0;const a=[];return s.on("data",(e=>{a.push(e),n?i=a.length:i+=e.length})),s.getBufferedValue=()=>t?a:o?Buffer.concat(a,i):a.join(""),s.getBufferedLength=()=>i,s};const Wt=(0,ge.promisify)(ve.pipeline);class Yt extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}}(qt=h).buffer=(e,t)=>h(e,{...t,encoding:"buffer"}),qt.array=(e,t)=>h(e,{...t,array:!0}),qt.MaxBufferError=Yt;var Zt,zt=ve.PassThrough;Zt=function(){function e(t){return Array.isArray(t)?(t.forEach(e),this):(o.push(t),t.once("end",r.bind(null,t)),t.once("error",n.emit.bind(n,"error")),t.pipe(n,{end:!1}),this)}function t(){return 0==o.length}function r(e){!(o=o.filter((t=>t!==e))).length&&n.readable&&n.end()}var o=[],n=new zt({objectMode:!0});return n.setMaxListeners(0),n.add=e,n.isEmpty=t,n.on("unpipe",r),[].slice.call(arguments).forEach(e),n};const Jt=async(e,t)=>{if(e){e.destroy();try{return await t}catch(e){return e.bufferedData}}},Kt=(e,{encoding:t,buffer:r,maxBuffer:o})=>{if(e&&r)return t?qt(e,{encoding:t,maxBuffer:o}):qt.buffer(e,{maxBuffer:o})};var Qt,er=(jt={handleInput(e,t){void 0!==t&&void 0!==e.stdin&&(Ut(t)?t.pipe(e.stdin):e.stdin.end(t))},makeAllStream(e,{all:t}){if(!t||!e.stdout&&!e.stderr)return;const r=Zt();return e.stdout&&r.add(e.stdout),e.stderr&&r.add(e.stderr),r},async getSpawnedResult({stdout:e,stderr:t,all:r},{encoding:o,buffer:n,maxBuffer:s},i){const a=Kt(e,{encoding:o,buffer:n,maxBuffer:s}),c=Kt(t,{encoding:o,buffer:n,maxBuffer:s}),l=Kt(r,{encoding:o,buffer:n,maxBuffer:2*s});try{return await Promise.all([i,a,c,l])}catch(o){return Promise.all([{error:o,signal:o.signal,timedOut:o.timedOut},Jt(e,a),Jt(t,c),Jt(r,l)])}},validateInputSync({input:e}){if(Ut(e))throw new TypeError("The `input` option cannot be a stream in sync mode")}}).handleInput,tr=jt.makeAllStream,rr=jt.getSpawnedResult,or=jt.validateInputSync;const nr=(async()=>{})().constructor.prototype,sr=["then","catch","finally"].map((e=>[e,Reflect.getOwnPropertyDescriptor(nr,e)]));var ir,ar=(Qt={mergePromise(e,t){for(const[r,o]of sr){const n="function"==typeof t?(...e)=>Reflect.apply(o.value,t(),e):o.value.bind(t);Reflect.defineProperty(e,r,{...o,value:n})}return e},getSpawnedPromise(e){return new Promise(((t,r)=>{e.on("exit",((e,r)=>{t({exitCode:e,signal:r})})),e.on("error",(e=>{r(e)})),e.stdin&&e.stdin.on("error",(e=>{r(e)}))}))}}).getSpawnedPromise,cr=Qt.mergePromise;const lr=(e,t=[])=>Array.isArray(t)?[e,...t]:[e],ur=/^[\w.-]+$/;var pr=(ir={joinCommand(e,t){return lr(e,t).join(" ")},getEscapedCommand(e,t){return lr(e,t).map((e=>(e=>"string"!=typeof e||ur.test(e)?e:`"${e.replace(/"/g,'\\"')}"`)(e))).join(" ")},parseCommand(e){const t=[];for(const r of e.trim().split(/ +/g)){const e=t[t.length-1];e&&e.endsWith("\\")?t[t.length-1]=`${e.slice(0,-1)} ${r}`:t.push(r)}return t}}).joinCommand,dr=ir.parseCommand,hr=ir.getEscapedCommand;const fr=(e,t,r={})=>{const o=Ue._parse(e,t,r);return e=o.command,t=o.args,(r={maxBuffer:1e8,buffer:!0,stripFinalNewline:!0,extendEnv:!0,preferLocal:!1,localDir:(r=o.options).cwd||process.cwd(),execPath:process.execPath,encoding:"utf8",reject:!0,cleanup:!0,all:!1,windowsHide:!0,...r}).env=(({env:e,extendEnv:t,preferLocal:r,localDir:o,execPath:n})=>{const s=t?{...process.env,...e}:e;return r?tt.env({env:s,cwd:o,execPath:n}):s})(r),r.stdio=wt(r),"win32"===process.platform&&"cmd"===ue.basename(e,".exe")&&t.unshift("/q"),{file:e,args:t,options:r,parsed:o}},mr=(e,t,r)=>"string"==typeof t||Buffer.isBuffer(t)?e.stripFinalNewline?et(t):t:void 0===r?void 0:"",vr=(e,t,r)=>{const o=fr(e,t,r),n=pr(e,t),s=hr(e,t);let i;Dt(o.options);try{i=de.spawn(o.file,o.args,o.options)}catch(e){const t=new de.ChildProcess,r=Promise.reject(ct({error:e,stdout:"",stderr:"",all:"",command:n,escapedCommand:s,parsed:o,timedOut:!1,isCanceled:!1,killed:!1}));return cr(t,r)}const a=ar(i),c=Ft(i,o.options,a),l=kt(i,o.options,c),u={isCanceled:!1};i.kill=Gt.bind(null,i.kill.bind(i)),i.cancel=Mt.bind(null,i,u);const p=ot((async()=>{const[{error:e,exitCode:t,signal:r,timedOut:a},c,p,d]=await rr(i,o.options,l),h=mr(o.options,c),f=mr(o.options,p),m=mr(o.options,d);if(e||0!==t||null!==r){const c=ct({error:e,exitCode:t,signal:r,stdout:h,stderr:f,all:m,command:n,escapedCommand:s,parsed:o,timedOut:a,isCanceled:u.isCanceled,killed:i.killed});if(!o.options.reject)return c;throw c}return{command:n,escapedCommand:s,exitCode:0,stdout:h,stderr:f,all:m,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}}));return er(i,o.options.input),i.all=tr(i,o.options),cr(i,p)};let gr;(Ge=vr).sync=(e,t,r)=>{const o=fr(e,t,r),n=pr(e,t),s=hr(e,t);let i;or(o.options);try{i=de.spawnSync(o.file,o.args,o.options)}catch(e){throw ct({error:e,stdout:"",stderr:"",all:"",command:n,escapedCommand:s,parsed:o,timedOut:!1,isCanceled:!1,killed:!1})}const a=mr(o.options,i.stdout,i.error),c=mr(o.options,i.stderr,i.error);if(i.error||0!==i.status||null!==i.signal){const e=ct({stdout:a,stderr:c,error:i.error,signal:i.signal,exitCode:i.status,command:n,escapedCommand:s,parsed:o,timedOut:i.error&&"ETIMEDOUT"===i.error.code,isCanceled:!1,killed:null!==i.signal});if(!o.options.reject)return e;throw e}return{command:n,escapedCommand:s,exitCode:0,stdout:a,stderr:c,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}},Ge.command=(e,t)=>{const[r,...o]=dr(e);return vr(r,o,t)},Ge.commandSync=(e,t)=>{const[r,...o]=dr(e);return vr.sync(r,o,t)},Ge.node=(e,t,r={})=>{t&&!Array.isArray(t)&&"object"==typeof t&&(r=t,t=[]);const o=wt.node(r),n=process.execArgv.filter((e=>!e.startsWith("--inspect"))),{nodePath:s=process.execPath,nodeOptions:i=n}=r;return vr(s,[...i,e,...Array.isArray(t)?t:[]],{...r,stdin:void 0,stdout:void 0,stderr:void 0,stdio:o,shell:!1})};let yr=!1,xr=!1;Ce=Re("6FGZZ"),Ce=Re("6FGZZ");let wr,Er=!1;var br={},Sr=br&&br.__createBinding||(Object.create?(e,t,r,o)=>{void 0===o&&(o=r),Object.defineProperty(e,o,{enumerable:!0,get(){return t[r]}})}:(e,t,r,o)=>{void 0===o&&(o=r),e[o]=t[r]}),Pr=br&&br.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),Or=br&&br.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&Sr(t,e,r);return Pr(t,e),t}),_r=br&&br.__awaiter||((e,t,r,o)=>new(r||(r=Promise))(((n,s)=>{function i(e){try{c(o.next(e))}catch(e){s(e)}}function a(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(i,a)}c((o=o.apply(e,t||[])).next())}))),$r=br&&br.__importDefault||(e=>e&&e.__esModule?e:{default:e});Object.defineProperty(br,"__esModule",{value:!0}),br.evaluateVersions=br.isExplicitVersion=br.findFromManifest=br.getManifestFromRepo=br.findAllVersions=br.find=br.cacheFile=br.cacheDir=br.extractZip=br.extractXar=br.extractTar=br.extract7z=br.downloadTool=br.HTTPError=void 0;const Rr=Or(Re("6FGZZ"));Re.register("q05Mr",(function(e,t){"use strict";function r(e){return u(this,void 0,void 0,(function*(){if(h.IS_WINDOWS){if(/[*"<>|]/.test(e))throw Error('File path must not contain `*`, `"`, `<`, `>` or `|` on Windows');try{const t=h.getCmdPath();(yield h.isDirectory(e,!0))?yield f(t+' /s /c "rd /s /q "%inputPath%""',{env:{inputPath:e}}):yield f(t+' /s /c "del /f /a "%inputPath%""',{env:{inputPath:e}})}catch(e){if("ENOENT"!==e.code)throw e}try{yield h.unlink(e)}catch(e){if("ENOENT"!==e.code)throw e}}else{let t=!1;try{t=yield h.isDirectory(e)}catch(e){if("ENOENT"!==e.code)throw e;return}t?yield m("rm",["-rf",""+e]):yield h.unlink(e)}}))}function o(e){return u(this,void 0,void 0,(function*(){he.ok(e,"a path argument must be provided"),yield h.mkdir(e,{recursive:!0})}))}function n(e){return u(this,void 0,void 0,(function*(){if(!e)throw Error("parameter 'tool' is required");const t=[];if(h.IS_WINDOWS&&process.env.PATHEXT)for(const e of process.env.PATHEXT.split(d.delimiter))e&&t.push(e);if(h.isRooted(e)){const r=yield h.tryGetExecutablePath(e,t);return r?[r]:[]}if(e.includes(d.sep))return[];const r=[];if(process.env.PATH)for(const e of process.env.PATH.split(d.delimiter))e&&r.push(e);const o=[];for(const n of r){const r=yield h.tryGetExecutablePath(d.join(n,e),t);r&&o.push(r)}return o}))}function s(e,t,r,n){return u(this,void 0,void 0,(function*(){if(r>=255)return;r++,yield o(t);const a=yield h.readdir(e);for(const o of a){const a=`${e}/${o}`,c=`${t}/${o}`;(yield h.lstat(a)).isDirectory()?yield s(a,c,r,n):yield i(a,c,n)}yield h.chmod(t,(yield h.stat(e)).mode)}))}function i(e,t,r){return u(this,void 0,void 0,(function*(){if((yield h.lstat(e)).isSymbolicLink()){try{yield h.lstat(t),yield h.unlink(t)}catch(e){"EPERM"===e.code&&(yield h.chmod(t,"0666"),yield h.unlink(t))}const r=yield h.readlink(e);yield h.symlink(r,t,h.IS_WINDOWS?"junction":null)}else(yield h.exists(t))&&!r||(yield h.copyFile(e,t))}))}var a=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,o)=>{void 0===o&&(o=r),Object.defineProperty(e,o,{enumerable:!0,get(){return t[r]}})}:(e,t,r,o)=>{void 0===o&&(o=r),e[o]=t[r]}),c=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),l=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&a(t,e,r);return c(t,e),t}),u=e.exports&&e.exports.__awaiter||((e,t,r,o)=>new(r||(r=Promise))(((n,s)=>{function i(e){try{c(o.next(e))}catch(e){s(e)}}function a(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(i,a)}c((o=o.apply(e,t||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.findInPath=e.exports.which=e.exports.mkdirP=e.exports.rmRF=e.exports.mv=e.exports.cp=void 0;const p=l(de),d=l(ue),h=l(Re("fyhIP")),f=ge.promisify(p.exec),m=ge.promisify(p.execFile);e.exports.cp=function(e,t,r={}){return u(this,void 0,void 0,(function*(){const{force:o,recursive:n,copySourceDirectory:a}=(e=>({force:null==e.force||e.force,recursive:!!e.recursive,copySourceDirectory:null==e.copySourceDirectory||!!e.copySourceDirectory}))(r),c=(yield h.exists(t))?yield h.stat(t):null;if(c&&c.isFile()&&!o)return;const l=c&&c.isDirectory()&&a?d.join(t,d.basename(e)):t;if(!(yield h.exists(e)))throw Error("no such file or directory: "+e);if((yield h.stat(e)).isDirectory()){if(!n)throw Error(`Failed to copy. ${e} is a directory, but tried to copy without recursive flag.`);yield s(e,l,0,o)}else{if(""===d.relative(e,l))throw Error(`'${l}' and '${e}' are the same file`);yield i(e,l,o)}}))},e.exports.mv=function(e,t,n={}){return u(this,void 0,void 0,(function*(){if(yield h.exists(t)){let o=!0;if((yield h.isDirectory(t))&&(t=d.join(t,d.basename(e)),o=yield h.exists(t)),o){if(null!=n.force&&!n.force)throw Error("Destination already exists");yield r(t)}}yield o(d.dirname(t)),yield h.rename(e,t)}))},e.exports.rmRF=r,e.exports.mkdirP=o,e.exports.which=function e(t,r){return u(this,void 0,void 0,(function*(){if(!t)throw Error("parameter 'tool' is required");if(r){const r=yield e(t,!1);if(!r)throw Error(h.IS_WINDOWS?`Unable to locate executable file: ${t}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.`:`Unable to locate executable file: ${t}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`);return r}const o=yield n(t);return o&&o.length>0?o[0]:""}))},e.exports.findInPath=n})),Re.register("fyhIP",(function(e,t){"use strict";function r(e){return(1&e.mode)>0||(8&e.mode)>0&&e.gid===process.getgid()||(64&e.mode)>0&&e.uid===process.getuid()}var o,n=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,o)=>{void 0===o&&(o=r),Object.defineProperty(e,o,{enumerable:!0,get(){return t[r]}})}:(e,t,r,o)=>{void 0===o&&(o=r),e[o]=t[r]}),s=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),i=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&n(t,e,r);return s(t,e),t}),a=e.exports&&e.exports.__awaiter||((e,t,r,o)=>new(r||(r=Promise))(((n,s)=>{function i(e){try{c(o.next(e))}catch(e){s(e)}}function a(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(i,a)}c((o=o.apply(e,t||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.getCmdPath=e.exports.tryGetExecutablePath=e.exports.isRooted=e.exports.isDirectory=e.exports.exists=e.exports.IS_WINDOWS=e.exports.unlink=e.exports.symlink=e.exports.stat=e.exports.rmdir=e.exports.rename=e.exports.readlink=e.exports.readdir=e.exports.mkdir=e.exports.lstat=e.exports.copyFile=e.exports.chmod=void 0;const c=i(pe),l=i(ue);e.exports.chmod=(o=c.promises).chmod,e.exports.copyFile=o.copyFile,e.exports.lstat=o.lstat,e.exports.mkdir=o.mkdir,e.exports.readdir=o.readdir,e.exports.readlink=o.readlink,e.exports.rename=o.rename,e.exports.rmdir=o.rmdir,e.exports.stat=o.stat,e.exports.symlink=o.symlink,e.exports.unlink=o.unlink,e.exports.IS_WINDOWS="win32"===process.platform,e.exports.exists=function(t){return a(this,void 0,void 0,(function*(){try{yield e.exports.stat(t)}catch(e){if("ENOENT"===e.code)return!1;throw e}return!0}))},e.exports.isDirectory=function(t,r=!1){return a(this,void 0,void 0,(function*(){return(r?yield e.exports.stat(t):yield e.exports.lstat(t)).isDirectory()}))},e.exports.isRooted=t=>{if(!(t=(t=>(t=t||"",e.exports.IS_WINDOWS?(t=t.replace(/\//g,"\\")).replace(/\\\\+/g,"\\"):t.replace(/\/\/+/g,"/")))(t)))throw Error('isRooted() parameter "p" cannot be empty');return e.exports.IS_WINDOWS?t.startsWith("\\")||/^[A-Z]:/i.test(t):t.startsWith("/")},e.exports.tryGetExecutablePath=function(t,o){return a(this,void 0,void 0,(function*(){let n;try{n=yield e.exports.stat(t)}catch(e){"ENOENT"!==e.code&&console.log(`Unexpected error attempting to determine if executable file exists '${t}': ${e}`)}if(n&&n.isFile())if(e.exports.IS_WINDOWS){const e=l.extname(t).toUpperCase();if(o.some((t=>t.toUpperCase()===e)))return t}else if(r(n))return t;const s=t;for(const i of o){t=s+i,n=void 0;try{n=yield e.exports.stat(t)}catch(e){"ENOENT"!==e.code&&console.log(`Unexpected error attempting to determine if executable file exists '${t}': ${e}`)}if(n&&n.isFile()){if(e.exports.IS_WINDOWS){try{const r=l.dirname(t),o=l.basename(t).toUpperCase();for(const n of yield e.exports.readdir(r))if(o===n.toUpperCase()){t=l.join(r,n);break}}catch(e){console.log(`Unexpected error attempting to determine the actual case of the file '${t}': ${e}`)}return t}if(r(n))return t}}return""}))},e.exports.getCmdPath=()=>{var e;return null!==(e=process.env.COMSPEC)&&void 0!==e?e:"cmd.exe"}}));const Cr=Or(Re("q05Mr")),Tr=Or(pe);Re.register("1Hds5",(function(e,t){"use strict";var r=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,o)=>{void 0===o&&(o=r),Object.defineProperty(e,o,{enumerable:!0,get(){return t[r]}})}:(e,t,r,o)=>{void 0===o&&(o=r),e[o]=t[r]}),o=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),n=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return o(t,e),t}),s=e.exports&&e.exports.__awaiter||((e,t,r,o)=>new(r||(r=Promise))(((n,s)=>{function i(e){try{c(o.next(e))}catch(e){s(e)}}function a(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(i,a)}c((o=o.apply(e,t||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports._readLinuxVersionFile=e.exports._getOsVersion=e.exports._findMatch=void 0;const i=n(Re("hBwzM"));var a=Re("6FGZZ");e.exports._findMatch=function(t,r,o,n){return s(this,void 0,void 0,(function*(){const s=le.platform();let c,l,u;for(const c of o){const o=c.version;if(a.debug(`check ${o} satisfies ${t}`),i.satisfies(o,t)&&(!r||c.stable===r)&&(u=c.files.find((t=>{a.debug(`${t.arch}===${n} && ${t.platform}===${s}`);let r=t.arch===n&&t.platform===s;if(r&&t.platform_version){const o=e.exports._getOsVersion();r=o===t.platform_version||i.satisfies(o,t.platform_version)}return r})),u)){a.debug("matched "+c.version),l=c;break}}return l&&u&&(c=Object.assign({},l),c.files=[u]),c}))},e.exports._getOsVersion=()=>{const t=le.platform();let r="";if("darwin"===t)r=""+de.execSync("sw_vers -productVersion");else if("linux"===t){const t=e.exports._readLinuxVersionFile();if(t){const e=t.split("\n");for(const t of e){const e=t.split("=");if(2===e.length&&("VERSION_ID"===e[0].trim()||"DISTRIB_RELEASE"===e[0].trim())){r=e[1].trim().replace(/^"/,"").replace(/"$/,"");break}}}}return r},e.exports._readLinuxVersionFile=()=>{const e="/etc/lsb-release",t="/etc/os-release";let r="";return pe.existsSync(e)?r=""+pe.readFileSync(e):pe.existsSync(t)&&(r=""+pe.readFileSync(t)),r}})),Re.register("hBwzM",((e,t)=>{var r=Re("j1nFx");e.exports={re:r.re,src:r.src,tokens:r.t,SEMVER_SPEC_VERSION:Re("9PnyI").SEMVER_SPEC_VERSION,SemVer:Re("j4Bpm"),compareIdentifiers:Re("9vPNp").compareIdentifiers,rcompareIdentifiers:Re("9vPNp").rcompareIdentifiers,parse:Re("bd0kF"),valid:Re("1JJDJ"),clean:Re("6mLCu"),inc:Re("1Orzu"),diff:Re("kGDR5"),major:Re("k3zcS"),minor:Re("e8NKK"),patch:Re("3Fhst"),prerelease:Re("6elLy"),compare:Re("1wyqe"),rcompare:Re("las47"),compareLoose:Re("dQlWE"),compareBuild:Re("7REgF"),sort:Re("3U0ar"),rsort:Re("98o3F"),gt:Re("6bYo1"),lt:Re("98Pyg"),eq:Re("4eeum"),neq:Re("a0PPD"),gte:Re("kRrXd"),lte:Re("ju11K"),cmp:Re("cITzi"),coerce:Re("5M2Mq"),Comparator:Re("hDCF3"),Range:Re("8YuUE"),satisfies:Re("6rO9c"),toComparators:Re("fx4Sd"),maxSatisfying:Re("bMVW7"),minSatisfying:Re("g5aoW"),minVersion:Re("hO4RL"),validRange:Re("hXGf0"),outside:Re("2MRaB"),gtr:Re("bqGrY"),ltr:Re("3AeSM"),intersects:Re("2Lyoi"),simplifyRange:Re("5pzc6"),subset:Re("2XGoS")}})),Re.register("j1nFx",((e,t)=>{var r=Re("9PnyI").MAX_SAFE_COMPONENT_LENGTH,o=Re("8eni4");const n=(t=e.exports={}).re=[],s=t.src=[],i=t.t={};let a=0;const c=(e,t,r)=>{const c=a++;o(c,t),i[e]=c,s[c]=t,n[c]=RegExp(t,r?"g":void 0)};c("NUMERICIDENTIFIER","0|[1-9]\\d*"),c("NUMERICIDENTIFIERLOOSE","[0-9]+"),c("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),c("MAINVERSION",`(${s[i.NUMERICIDENTIFIER]})\\.(${s[i.NUMERICIDENTIFIER]})\\.(${s[i.NUMERICIDENTIFIER]})`),c("MAINVERSIONLOOSE",`(${s[i.NUMERICIDENTIFIERLOOSE]})\\.(${s[i.NUMERICIDENTIFIERLOOSE]})\\.(${s[i.NUMERICIDENTIFIERLOOSE]})`),c("PRERELEASEIDENTIFIER",`(?:${s[i.NUMERICIDENTIFIER]}|${s[i.NONNUMERICIDENTIFIER]})`),c("PRERELEASEIDENTIFIERLOOSE",`(?:${s[i.NUMERICIDENTIFIERLOOSE]}|${s[i.NONNUMERICIDENTIFIER]})`),c("PRERELEASE",`(?:-(${s[i.PRERELEASEIDENTIFIER]}(?:\\.${s[i.PRERELEASEIDENTIFIER]})*))`),c("PRERELEASELOOSE",`(?:-?(${s[i.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${s[i.PRERELEASEIDENTIFIERLOOSE]})*))`),c("BUILDIDENTIFIER","[0-9A-Za-z-]+"),c("BUILD",`(?:\\+(${s[i.BUILDIDENTIFIER]}(?:\\.${s[i.BUILDIDENTIFIER]})*))`),c("FULLPLAIN",`v?${s[i.MAINVERSION]}${s[i.PRERELEASE]}?${s[i.BUILD]}?`),c("FULL",`^${s[i.FULLPLAIN]}$`),c("LOOSEPLAIN",`[v=\\s]*${s[i.MAINVERSIONLOOSE]}${s[i.PRERELEASELOOSE]}?${s[i.BUILD]}?`),c("LOOSE",`^${s[i.LOOSEPLAIN]}$`),c("GTLT","((?:<|>)?=?)"),c("XRANGEIDENTIFIERLOOSE",s[i.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*"),c("XRANGEIDENTIFIER",s[i.NUMERICIDENTIFIER]+"|x|X|\\*"),c("XRANGEPLAIN",`[v=\\s]*(${s[i.XRANGEIDENTIFIER]})(?:\\.(${s[i.XRANGEIDENTIFIER]})(?:\\.(${s[i.XRANGEIDENTIFIER]})(?:${s[i.PRERELEASE]})?${s[i.BUILD]}?)?)?`),c("XRANGEPLAINLOOSE",`[v=\\s]*(${s[i.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[i.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[i.XRANGEIDENTIFIERLOOSE]})(?:${s[i.PRERELEASELOOSE]})?${s[i.BUILD]}?)?)?`),c("XRANGE",`^${s[i.GTLT]}\\s*${s[i.XRANGEPLAIN]}$`),c("XRANGELOOSE",`^${s[i.GTLT]}\\s*${s[i.XRANGEPLAINLOOSE]}$`),c("COERCE",`(^|[^\\d])(\\d{1,${r}})(?:\\.(\\d{1,${r}}))?(?:\\.(\\d{1,${r}}))?(?:$|[^\\d])`),c("COERCERTL",s[i.COERCE],!0),c("LONETILDE","(?:~>?)"),c("TILDETRIM",`(\\s*)${s[i.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",c("TILDE",`^${s[i.LONETILDE]}${s[i.XRANGEPLAIN]}$`),c("TILDELOOSE",`^${s[i.LONETILDE]}${s[i.XRANGEPLAINLOOSE]}$`),c("LONECARET","(?:\\^)"),c("CARETTRIM",`(\\s*)${s[i.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",c("CARET",`^${s[i.LONECARET]}${s[i.XRANGEPLAIN]}$`),c("CARETLOOSE",`^${s[i.LONECARET]}${s[i.XRANGEPLAINLOOSE]}$`),c("COMPARATORLOOSE",`^${s[i.GTLT]}\\s*(${s[i.LOOSEPLAIN]})$|^$`),c("COMPARATOR",`^${s[i.GTLT]}\\s*(${s[i.FULLPLAIN]})$|^$`),c("COMPARATORTRIM",`(\\s*)${s[i.GTLT]}\\s*(${s[i.LOOSEPLAIN]}|${s[i.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",c("HYPHENRANGE",`^\\s*(${s[i.XRANGEPLAIN]})\\s+-\\s+(${s[i.XRANGEPLAIN]})\\s*$`),c("HYPHENRANGELOOSE",`^\\s*(${s[i.XRANGEPLAINLOOSE]})\\s+-\\s+(${s[i.XRANGEPLAINLOOSE]})\\s*$`),c("STAR","(<|>)?=?\\s*\\*"),c("GTE0","^\\s*>=\\s*0.0.0\\s*$"),c("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")})),Re.register("9PnyI",((e,t)=>{e.exports={SEMVER_SPEC_VERSION:"2.0.0",MAX_LENGTH:256,MAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER||9007199254740991,MAX_SAFE_COMPONENT_LENGTH:16}})),Re.register("8eni4",((e,t)=>{const r=("object"==typeof process&&process,()=>{});e.exports=r})),Re.register("j4Bpm",(function(e,t){var r=Re("8eni4"),o=Re("9PnyI"),n=o.MAX_SAFE_INTEGER,s=o.MAX_LENGTH,i=Re("j1nFx"),a=i.t,c=i.re,l=Re("26eGk"),u=Re("9vPNp").compareIdentifiers;class p{constructor(e,t){if(t=l(t),e instanceof p){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;e=e.version}else if("string"!=typeof e)throw new TypeError("Invalid Version: "+e);if(e.length>s)throw new TypeError(`version is longer than ${s} characters`);r("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;const o=e.trim().match(t.loose?c[a.LOOSE]:c[a.FULL]);if(!o)throw new TypeError("Invalid Version: "+e);if(this.raw=e,this.major=+o[1],this.minor=+o[2],this.patch=+o[3],this.major>n||0>this.major)throw new TypeError("Invalid major version");if(this.minor>n||0>this.minor)throw new TypeError("Invalid minor version");if(this.patch>n||0>this.patch)throw new TypeError("Invalid patch version");this.prerelease=o[4]?o[4].split(".").map((e=>{if(/^[0-9]+$/.test(e)){const t=+e;if(t>=0&&n>t)return t}return e})):[],this.build=o[5]?o[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+="-"+this.prerelease.join(".")),this.version}toString(){return this.version}compare(e){if(r("SemVer.compare",this.version,this.options,e),!(e instanceof p)){if("string"==typeof e&&e===this.version)return 0;e=new p(e,this.options)}return e.version===this.version?0:this.compareMain(e)||this.comparePre(e)}compareMain(e){return e instanceof p||(e=new p(e,this.options)),u(this.major,e.major)||u(this.minor,e.minor)||u(this.patch,e.patch)}comparePre(e){if(e instanceof p||(e=new p(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let t=0;do{const o=this.prerelease[t],n=e.prerelease[t];if(r("prerelease compare",t,o,n),void 0===o&&void 0===n)return 0;if(void 0===n)return 1;if(void 0===o)return-1;if(o!==n)return u(o,n)}while(++t)}compareBuild(e){e instanceof p||(e=new p(e,this.options));let t=0;do{const o=this.build[t],n=e.build[t];if(r("prerelease compare",t,o,n),void 0===o&&void 0===n)return 0;if(void 0===n)return 1;if(void 0===o)return-1;if(o!==n)return u(o,n)}while(++t)}inc(e,t){switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t),this.inc("pre",t);break;case"prerelease":0===this.prerelease.length&&this.inc("patch",t),this.inc("pre",t);break;case"major":0===this.minor&&0===this.patch&&0!==this.prerelease.length||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":0===this.patch&&0!==this.prerelease.length||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":0===this.prerelease.length&&this.patch++,this.prerelease=[];break;case"pre":if(0===this.prerelease.length)this.prerelease=[0];else{let e=this.prerelease.length;for(;--e>=0;)"number"==typeof this.prerelease[e]&&(this.prerelease[e]++,e=-2);-1===e&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw Error("invalid increment argument: "+e)}return this.format(),this.raw=this.version,this}}e.exports=p})),Re.register("26eGk",((e,t)=>{const r=["includePrerelease","loose","rtl"];e.exports=e=>e?"object"!=typeof e?{loose:!0}:r.filter((t=>e[t])).reduce(((e,t)=>(e[t]=!0,e)),{}):{}})),Re.register("9vPNp",((e,t)=>{const r=/^[0-9]+$/,o=(e,t)=>{const o=r.test(e),n=r.test(t);return o&&n&&(e=+e,t=+t),e===t?0:o&&!n?-1:n&&!o?1:t>e?-1:1};e.exports={compareIdentifiers:o,rcompareIdentifiers(e,t){return o(t,e)}}})),Re.register("bd0kF",((e,t)=>{var r=Re("9PnyI").MAX_LENGTH,o=Re("j1nFx"),n=o.t,s=o.re,i=Re("j4Bpm"),a=Re("26eGk");e.exports=(e,t)=>{if(t=a(t),e instanceof i)return e;if("string"!=typeof e)return null;if(e.length>r)return null;if(!(t.loose?s[n.LOOSE]:s[n.FULL]).test(e))return null;try{return new i(e,t)}catch(e){return null}}})),Re.register("1JJDJ",((e,t)=>{var r=Re("bd0kF");e.exports=(e,t)=>{const o=r(e,t);return o?o.version:null}})),Re.register("6mLCu",((e,t)=>{var r=Re("bd0kF");e.exports=(e,t)=>{const o=r(e.trim().replace(/^[=v]+/,""),t);return o?o.version:null}})),Re.register("1Orzu",((e,t)=>{var r=Re("j4Bpm");e.exports=(e,t,o,n)=>{"string"==typeof o&&(n=o,o=void 0);try{return new r(e,o).inc(t,n).version}catch(e){return null}}})),Re.register("kGDR5",((e,t)=>{var r=Re("bd0kF"),o=Re("4eeum");e.exports=(e,t)=>{if(o(e,t))return null;{const o=r(e),n=r(t),s=o.prerelease.length||n.prerelease.length,i=s?"pre":"",a=s?"prerelease":"";for(const e in o)if(("major"===e||"minor"===e||"patch"===e)&&o[e]!==n[e])return i+e;return a}}})),Re.register("4eeum",((e,t)=>{var r=Re("1wyqe");e.exports=(e,t,o)=>0===r(e,t,o)})),Re.register("1wyqe",((e,t)=>{var r=Re("j4Bpm");e.exports=(e,t,o)=>new r(e,o).compare(new r(t,o))})),Re.register("k3zcS",((e,t)=>{var r=Re("j4Bpm");e.exports=(e,t)=>new r(e,t).major})),Re.register("e8NKK",((e,t)=>{var r=Re("j4Bpm");e.exports=(e,t)=>new r(e,t).minor})),Re.register("3Fhst",((e,t)=>{var r=Re("j4Bpm");e.exports=(e,t)=>new r(e,t).patch})),Re.register("6elLy",((e,t)=>{var r=Re("bd0kF");e.exports=(e,t)=>{const o=r(e,t);return o&&o.prerelease.length?o.prerelease:null}})),Re.register("las47",((e,t)=>{var r=Re("1wyqe");e.exports=(e,t,o)=>r(t,e,o)})),Re.register("dQlWE",((e,t)=>{var r=Re("1wyqe");e.exports=(e,t)=>r(e,t,!0)})),Re.register("7REgF",((e,t)=>{var r=Re("j4Bpm");e.exports=(e,t,o)=>{const n=new r(e,o),s=new r(t,o);return n.compare(s)||n.compareBuild(s)}})),Re.register("3U0ar",((e,t)=>{var r=Re("7REgF");e.exports=(e,t)=>e.sort(((e,o)=>r(e,o,t)))})),Re.register("98o3F",((e,t)=>{var r=Re("7REgF");e.exports=(e,t)=>e.sort(((e,o)=>r(o,e,t)))})),Re.register("6bYo1",((e,t)=>{var r=Re("1wyqe");e.exports=(e,t,o)=>r(e,t,o)>0})),Re.register("98Pyg",((e,t)=>{var r=Re("1wyqe");e.exports=(e,t,o)=>0>r(e,t,o)})),Re.register("a0PPD",((e,t)=>{var r=Re("1wyqe");e.exports=(e,t,o)=>0!==r(e,t,o)})),Re.register("kRrXd",((e,t)=>{var r=Re("1wyqe");e.exports=(e,t,o)=>r(e,t,o)>=0})),Re.register("ju11K",((e,t)=>{var r=Re("1wyqe");e.exports=(e,t,o)=>0>=r(e,t,o)})),Re.register("cITzi",((e,t)=>{var r=Re("4eeum"),o=Re("a0PPD"),n=Re("6bYo1"),s=Re("kRrXd"),i=Re("98Pyg"),a=Re("ju11K");e.exports=(e,t,c,l)=>{switch(t){case"===":return"object"==typeof e&&(e=e.version),"object"==typeof c&&(c=c.version),e===c;case"!==":return"object"==typeof e&&(e=e.version),"object"==typeof c&&(c=c.version),e!==c;case"":case"=":case"==":return r(e,c,l);case"!=":return o(e,c,l);case">":return n(e,c,l);case">=":return s(e,c,l);case"<":return i(e,c,l);case"<=":return a(e,c,l);default:throw new TypeError("Invalid operator: "+t)}}})),Re.register("5M2Mq",((e,t)=>{var r=Re("j4Bpm"),o=Re("bd0kF"),n=Re("j1nFx"),s=n.t,i=n.re;e.exports=(e,t)=>{if(e instanceof r)return e;if("number"==typeof e&&(e+=""),"string"!=typeof e)return null;let n=null;if((t=t||{}).rtl){let t;for(;(t=i[s.COERCERTL].exec(e))&&(!n||n.index+n[0].length!==e.length);)n&&t.index+t[0].length===n.index+n[0].length||(n=t),i[s.COERCERTL].lastIndex=t.index+t[1].length+t[2].length;i[s.COERCERTL].lastIndex=-1}else n=e.match(i[s.COERCE]);return null===n?null:o(`${n[2]}.${n[3]||"0"}.${n[4]||"0"}`,t)}})),Re.register("hDCF3",(function(e,t){const r=Symbol();class o{static get ANY(){return r}constructor(e,t){if(t=n(t),e instanceof o){if(e.loose===!!t.loose)return e;e=e.value}l("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.value=this.semver===r?"":this.operator+this.semver.version,l("comp",this)}parse(e){const t=e.match(this.options.loose?a[i.COMPARATORLOOSE]:a[i.COMPARATOR]);if(!t)throw new TypeError("Invalid comparator: "+e);this.operator=void 0!==t[1]?t[1]:"","="===this.operator&&(this.operator=""),this.semver=t[2]?new u(t[2],this.options.loose):r}toString(){return this.value}test(e){if(l("Comparator.test",e,this.options.loose),this.semver===r||e===r)return!0;if("string"==typeof e)try{e=new u(e,this.options)}catch(e){return!1}return c(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof o))throw new TypeError("a Comparator is required");if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),""===this.operator)return""===this.value||new p(e.value,t).test(this.value);if(""===e.operator)return""===e.value||new p(this.value,t).test(e.semver);const r=!(">="!==this.operator&&">"!==this.operator||">="!==e.operator&&">"!==e.operator),n=!("<="!==this.operator&&"<"!==this.operator||"<="!==e.operator&&"<"!==e.operator),s=this.semver.version===e.semver.version,i=!(">="!==this.operator&&"<="!==this.operator||">="!==e.operator&&"<="!==e.operator),a=c(this.semver,"<",e.semver,t)&&(">="===this.operator||">"===this.operator)&&("<="===e.operator||"<"===e.operator),l=c(this.semver,">",e.semver,t)&&("<="===this.operator||"<"===this.operator)&&(">="===e.operator||">"===e.operator);return r||n||s&&i||a||l}}e.exports=o;var n=Re("26eGk"),s=Re("j1nFx"),i=s.t,a=s.re,c=Re("cITzi"),l=Re("8eni4"),u=Re("j4Bpm"),p=Re("8YuUE")})),Re.register("8YuUE",(function(e,t){class r{constructor(e,t){if(t=n(t),e instanceof r)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new r(e.raw,t);if(e instanceof s)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map((e=>this.parseRange(e.trim()))).filter((e=>e.length)),!this.set.length)throw new TypeError("Invalid SemVer Range: "+e);if(this.set.length>1){const e=this.set[0];if(this.set=this.set.filter((e=>!f(e[0]))),0===this.set.length)this.set=[e];else if(this.set.length>1)for(const e of this.set)if(1===e.length&&m(e[0])){this.set=[e];break}}this.format()}format(){return this.range=this.set.map((e=>e.join(" ").trim())).join("||").trim(),this.range}toString(){return this.range}parseRange(e){e=e.trim();const t=`parseRange:${Object.keys(this.options).join(",")}:${e}`,r=o.get(t);if(r)return r;const n=this.options.loose;e=e.replace(n?l[u.HYPHENRANGELOOSE]:l[u.HYPHENRANGE],$(this.options.includePrerelease)),i("hyphen replace",e),e=e.replace(l[u.COMPARATORTRIM],d),i("comparator trim",e,l[u.COMPARATORTRIM]),e=(e=(e=e.replace(l[u.TILDETRIM],h)).replace(l[u.CARETTRIM],p)).split(/\s+/).join(" ");const a=n?l[u.COMPARATORLOOSE]:l[u.COMPARATOR],c=e.split(" ").map((e=>g(e,this.options))).join(" ").split(/\s+/).map((e=>_(e,this.options))).filter(this.options.loose?e=>!!e.match(a):()=>!0).map((e=>new s(e,this.options))),m=new Map;for(const e of c){if(f(e))return[e];m.set(e.value,e)}m.size>1&&m.has("")&&m.delete("");const v=[...m.values()];return o.set(t,v),v}intersects(e,t){if(!(e instanceof r))throw new TypeError("a Range is required");return this.set.some((r=>v(r,t)&&e.set.some((e=>v(e,t)&&r.every((r=>e.every((e=>r.intersects(e,t)))))))))}test(e){if(!e)return!1;if("string"==typeof e)try{e=new a(e,this.options)}catch(e){return!1}for(let t=0;this.set.length>t;t++)if(R(this.set[t],e,this.options))return!0;return!1}}e.exports=r;const o=new(Re("hqS6J"))({max:1e3});var n=Re("26eGk"),s=Re("hDCF3"),i=Re("8eni4"),a=Re("j4Bpm"),c=Re("j1nFx"),l=c.re,u=c.t,p=c.caretTrimReplace,d=c.comparatorTrimReplace,h=c.tildeTrimReplace;const f=e=>"<0.0.0-0"===e.value,m=e=>""===e.value,v=(e,t)=>{let r=!0;const o=e.slice();let n=o.pop();for(;r&&o.length;)r=o.every((e=>n.intersects(e,t))),n=o.pop();return r},g=(e,t)=>(i("comp",e,t),e=E(e,t),i("caret",e),e=x(e,t),i("tildes",e),e=S(e,t),i("xrange",e),e=O(e,t),i("stars",e),e),y=e=>!e||"x"===e.toLowerCase()||"*"===e,x=(e,t)=>e.trim().split(/\s+/).map((e=>w(e,t))).join(" "),w=(e,t)=>e.replace(t.loose?l[u.TILDELOOSE]:l[u.TILDE],((t,r,o,n,s)=>{let a;return i("tilde",e,t,r,o,n,s),y(r)?a="":y(o)?a=`>=${r}.0.0 <${+r+1}.0.0-0`:y(n)?a=`>=${r}.${o}.0 <${r}.${+o+1}.0-0`:s?(i("replaceTilde pr",s),a=`>=${r}.${o}.${n}-${s} <${r}.${+o+1}.0-0`):a=`>=${r}.${o}.${n} <${r}.${+o+1}.0-0`,i("tilde return",a),a})),E=(e,t)=>e.trim().split(/\s+/).map((e=>b(e,t))).join(" "),b=(e,t)=>{i("caret",e,t);const r=t.includePrerelease?"-0":"";return e.replace(t.loose?l[u.CARETLOOSE]:l[u.CARET],((t,o,n,s,a)=>{let c;return i("caret",e,t,o,n,s,a),y(o)?c="":y(n)?c=`>=${o}.0.0${r} <${+o+1}.0.0-0`:y(s)?c="0"===o?`>=${o}.${n}.0${r} <${o}.${+n+1}.0-0`:`>=${o}.${n}.0${r} <${+o+1}.0.0-0`:a?(i("replaceCaret pr",a),c="0"===o?"0"===n?`>=${o}.${n}.${s}-${a} <${o}.${n}.${+s+1}-0`:`>=${o}.${n}.${s}-${a} <${o}.${+n+1}.0-0`:`>=${o}.${n}.${s}-${a} <${+o+1}.0.0-0`):(i("no pr"),c="0"===o?"0"===n?`>=${o}.${n}.${s}${r} <${o}.${n}.${+s+1}-0`:`>=${o}.${n}.${s}${r} <${o}.${+n+1}.0-0`:`>=${o}.${n}.${s} <${+o+1}.0.0-0`),i("caret return",c),c}))},S=(e,t)=>(i("replaceXRanges",e,t),e.split(/\s+/).map((e=>P(e,t))).join(" ")),P=(e,t)=>(e=e.trim()).replace(t.loose?l[u.XRANGELOOSE]:l[u.XRANGE],((r,o,n,s,a,c)=>{i("xRange",e,r,o,n,s,a,c);const l=y(n),u=l||y(s),p=u||y(a);return"="===o&&p&&(o=""),c=t.includePrerelease?"-0":"",l?r=">"===o||"<"===o?"<0.0.0-0":"*":o&&p?(u&&(s=0),a=0,">"===o?(o=">=",u?(n=+n+1,s=0,a=0):(s=+s+1,a=0)):"<="===o&&(o="<",u?n=+n+1:s=+s+1),"<"===o&&(c="-0"),r=`${o+n}.${s}.${a}${c}`):u?r=`>=${n}.0.0${c} <${+n+1}.0.0-0`:p&&(r=`>=${n}.${s}.0${c} <${n}.${+s+1}.0-0`),i("xRange return",r),r})),O=(e,t)=>(i("replaceStars",e,t),e.trim().replace(l[u.STAR],"")),_=(e,t)=>(i("replaceGTE0",e,t),e.trim().replace(l[t.includePrerelease?u.GTE0PRE:u.GTE0],"")),$=e=>(t,r,o,n,s,i,a,c,l,u,p,d,h)=>`${r=y(o)?"":y(n)?`>=${o}.0.0${e?"-0":""}`:y(s)?`>=${o}.${n}.0${e?"-0":""}`:i?">="+r:`>=${r}${e?"-0":""}`} ${c=y(l)?"":y(u)?`<${+l+1}.0.0-0`:y(p)?`<${l}.${+u+1}.0-0`:d?`<=${l}.${u}.${p}-${d}`:e?`<${l}.${u}.${+p+1}-0`:"<="+c}`.trim(),R=(e,t,r)=>{for(let r=0;e.length>r;r++)if(!e[r].test(t))return!1;if(t.prerelease.length&&!r.includePrerelease){for(let r=0;e.length>r;r++)if(i(e[r].semver),e[r].semver!==s.ANY&&e[r].semver.prerelease.length>0){const o=e[r].semver;if(o.major===t.major&&o.minor===t.minor&&o.patch===t.patch)return!0}return!1}return!0}})),Re.register("hqS6J",(function(e,t){"use strict";var r=Re("9ShIP");const o=Symbol(),n=Symbol(),s=Symbol(),i=Symbol(),a=Symbol(),c=Symbol(),l=Symbol(),u=Symbol(),p=Symbol(),d=Symbol(),h=()=>1,f=(e,t,r)=>{const o=e[p].get(t);if(o){const t=o.value;if(m(e,t)){if(g(e,o),!e[i])return}else r&&(e[d]&&(o.value.now=Date.now()),e[u].unshiftNode(o));return t.value}},m=(e,t)=>{if(!t||!t.maxAge&&!e[a])return!1;const r=Date.now()-t.now;return t.maxAge?r>t.maxAge:e[a]&&r>e[a]},v=e=>{if(e[n]>e[o])for(let t=e[u].tail;e[n]>e[o]&&null!==t;){const r=t.prev;g(e,t),t=r}},g=(e,t)=>{if(t){const r=t.value;e[c]&&e[c](r.key,r.value),e[n]-=r.length,e[p].delete(r.key),e[u].removeNode(t)}};class y{constructor(e,t,r,o,n){this.key=e,this.value=t,this.length=r,this.now=o,this.maxAge=n||0}}const x=(e,t,r,o)=>{let n=r.value;m(e,n)&&(g(e,r),e[i]||(n=void 0)),n&&t.call(o,n.value,n.key,e)};e.exports=class{constructor(e){if("number"==typeof e&&(e={max:e}),e||(e={}),e.max&&("number"!=typeof e.max||0>e.max))throw new TypeError("max must be a non-negative number");this[o]=e.max||1/0;const t=e.length||h;if(this[s]="function"!=typeof t?h:t,this[i]=e.stale||!1,e.maxAge&&"number"!=typeof e.maxAge)throw new TypeError("maxAge must be a number");this[a]=e.maxAge||0,this[c]=e.dispose,this[l]=e.noDisposeOnSet||!1,this[d]=e.updateAgeOnGet||!1,this.reset()}set max(e){if("number"!=typeof e||0>e)throw new TypeError("max must be a non-negative number");this[o]=e||1/0,v(this)}get max(){return this[o]}set allowStale(e){this[i]=!!e}get allowStale(){return this[i]}set maxAge(e){if("number"!=typeof e)throw new TypeError("maxAge must be a non-negative number");this[a]=e,v(this)}get maxAge(){return this[a]}set lengthCalculator(e){"function"!=typeof e&&(e=h),e!==this[s]&&(this[s]=e,this[n]=0,this[u].forEach((e=>{e.length=this[s](e.value,e.key),this[n]+=e.length}))),v(this)}get lengthCalculator(){return this[s]}get length(){return this[n]}get itemCount(){return this[u].length}rforEach(e,t){t=t||this;for(let r=this[u].tail;null!==r;){const o=r.prev;x(this,e,r,t),r=o}}forEach(e,t){t=t||this;for(let r=this[u].head;null!==r;){const o=r.next;x(this,e,r,t),r=o}}keys(){return this[u].toArray().map((e=>e.key))}values(){return this[u].toArray().map((e=>e.value))}reset(){this[c]&&this[u]&&this[u].length&&this[u].forEach((e=>this[c](e.key,e.value))),this[p]=new Map,this[u]=new r,this[n]=0}dump(){return this[u].map((e=>!m(this,e)&&{k:e.key,v:e.value,e:e.now+(e.maxAge||0)})).toArray().filter((e=>e))}dumpLru(){return this[u]}set(e,t,r){if((r=r||this[a])&&"number"!=typeof r)throw new TypeError("maxAge must be a number");const i=r?Date.now():0,d=this[s](t,e);if(this[p].has(e)){if(d>this[o])return g(this,this[p].get(e)),!1;const s=this[p].get(e).value;return this[c]&&(this[l]||this[c](e,s.value)),s.now=i,s.maxAge=r,s.value=t,this[n]+=d-s.length,s.length=d,this.get(e),v(this),!0}const h=new y(e,t,d,i,r);return h.length>this[o]?(this[c]&&this[c](e,t),!1):(this[n]+=h.length,this[u].unshift(h),this[p].set(e,this[u].head),v(this),!0)}has(e){if(!this[p].has(e))return!1;const t=this[p].get(e).value;return!m(this,t)}get(e){return f(this,e,!0)}peek(e){return f(this,e,!1)}pop(){const e=this[u].tail;return e?(g(this,e),e.value):null}del(e){g(this,this[p].get(e))}load(e){this.reset();const t=Date.now();for(let r=e.length-1;r>=0;r--){const o=e[r],n=o.e||0;if(0===n)this.set(o.k,o.v);else{const e=n-t;e>0&&this.set(o.k,o.v,e)}}}prune(){this[p].forEach(((e,t)=>f(this,t,!1)))}}})),Re.register("9ShIP",(function(e,t){"use strict";function r(e){var t=this;if(t instanceof r||(t=new r),t.tail=null,t.head=null,t.length=0,e&&"function"==typeof e.forEach)e.forEach((e=>{t.push(e)}));else if(arguments.length>0)for(var o=0,n=arguments.length;n>o;o++)t.push(arguments[o]);return t}function o(e,t,r){var o=t===e.head?new i(r,null,t,e):new i(r,t,t.next,e);return null===o.next&&(e.tail=o),null===o.prev&&(e.head=o),e.length++,o}function n(e,t){e.tail=new i(t,e.tail,null,e),e.head||(e.head=e.tail),e.length++}function s(e,t){e.head=new i(t,null,e.head,e),e.tail||(e.tail=e.head),e.length++}function i(e,t,r,o){if(!(this instanceof i))return new i(e,t,r,o);this.list=o,this.value=e,t?(t.next=this,this.prev=t):this.prev=null,r?(r.prev=this,this.next=r):this.next=null}e.exports=r,r.Node=i,r.create=r,r.prototype.removeNode=function(e){if(e.list!==this)throw Error("removing node which does not belong to this list");var t=e.next,r=e.prev;return t&&(t.prev=r),r&&(r.next=t),e===this.head&&(this.head=t),e===this.tail&&(this.tail=r),e.list.length--,e.next=null,e.prev=null,e.list=null,t},r.prototype.unshiftNode=function(e){if(e!==this.head){e.list&&e.list.removeNode(e);var t=this.head;e.list=this,e.next=t,t&&(t.prev=e),this.head=e,this.tail||(this.tail=e),this.length++}},r.prototype.pushNode=function(e){if(e!==this.tail){e.list&&e.list.removeNode(e);var t=this.tail;e.list=this,e.prev=t,t&&(t.next=e),this.tail=e,this.head||(this.head=e),this.length++}},r.prototype.push=function(){for(var e=0,t=arguments.length;t>e;e++)n(this,arguments[e]);return this.length},r.prototype.unshift=function(){for(var e=0,t=arguments.length;t>e;e++)s(this,arguments[e]);return this.length},r.prototype.pop=function(){if(this.tail){var e=this.tail.value;return this.tail=this.tail.prev,this.tail?this.tail.next=null:this.head=null,this.length--,e}},r.prototype.shift=function(){if(this.head){var e=this.head.value;return this.head=this.head.next,this.head?this.head.prev=null:this.tail=null,this.length--,e}},r.prototype.forEach=function(e,t){t=t||this;for(var r=this.head,o=0;null!==r;o++)e.call(t,r.value,o,this),r=r.next},r.prototype.forEachReverse=function(e,t){t=t||this;for(var r=this.tail,o=this.length-1;null!==r;o--)e.call(t,r.value,o,this),r=r.prev},r.prototype.get=function(e){for(var t=0,r=this.head;null!==r&&e>t;t++)r=r.next;if(t===e&&null!==r)return r.value},r.prototype.getReverse=function(e){for(var t=0,r=this.tail;null!==r&&e>t;t++)r=r.prev;if(t===e&&null!==r)return r.value},r.prototype.map=function(e,t){t=t||this;for(var o=new r,n=this.head;null!==n;)o.push(e.call(t,n.value,this)),n=n.next;return o},r.prototype.mapReverse=function(e,t){t=t||this;for(var o=new r,n=this.tail;null!==n;)o.push(e.call(t,n.value,this)),n=n.prev;return o},r.prototype.reduce=function(e,t){var r,o=this.head;if(arguments.length>1)r=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");o=this.head.next,r=this.head.value}for(var n=0;null!==o;n++)r=e(r,o.value,n),o=o.next;return r},r.prototype.reduceReverse=function(e,t){var r,o=this.tail;if(arguments.length>1)r=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");o=this.tail.prev,r=this.tail.value}for(var n=this.length-1;null!==o;n--)r=e(r,o.value,n),o=o.prev;return r},r.prototype.toArray=function(){for(var e=Array(this.length),t=0,r=this.head;null!==r;t++)e[t]=r.value,r=r.next;return e},r.prototype.toArrayReverse=function(){for(var e=Array(this.length),t=0,r=this.tail;null!==r;t++)e[t]=r.value,r=r.prev;return e},r.prototype.slice=function(e,t){0>(t=t||this.length)&&(t+=this.length),0>(e=e||0)&&(e+=this.length);var o=new r;if(e>t||0>t)return o;0>e&&(e=0),t>this.length&&(t=this.length);for(var n=0,s=this.head;null!==s&&e>n;n++)s=s.next;for(;null!==s&&t>n;n++,s=s.next)o.push(s.value);return o},r.prototype.sliceReverse=function(e,t){0>(t=t||this.length)&&(t+=this.length),0>(e=e||0)&&(e+=this.length);var o=new r;if(e>t||0>t)return o;0>e&&(e=0),t>this.length&&(t=this.length);for(var n=this.length,s=this.tail;null!==s&&n>t;n--)s=s.prev;for(;null!==s&&n>e;n--,s=s.prev)o.push(s.value);return o},r.prototype.splice=function(e,t,...r){e>this.length&&(e=this.length-1),0>e&&(e=this.length+e);for(var n=0,s=this.head;null!==s&&e>n;n++)s=s.next;var i=[];for(n=0;s&&t>n;n++)i.push(s.value),s=this.removeNode(s);for(null===s&&(s=this.tail),s!==this.head&&s!==this.tail&&(s=s.prev),n=0;r.length>n;n++)s=o(this,s,r[n]);return i},r.prototype.reverse=function(){for(var e=this.head,t=this.tail,r=e;null!==r;r=r.prev){var o=r.prev;r.prev=r.next,r.next=o}return this.head=t,this.tail=e,this};try{Re("bdwRA")(r)}catch(e){}})),Re.register("bdwRA",(function(e,t){"use strict";e.exports=function(e){e.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}})),Re.register("6rO9c",((e,t)=>{var r=Re("8YuUE");e.exports=(e,t,o)=>{try{t=new r(t,o)}catch(e){return!1}return t.test(e)}})),Re.register("fx4Sd",((e,t)=>{var r=Re("8YuUE");e.exports=(e,t)=>new r(e,t).set.map((e=>e.map((e=>e.value)).join(" ").trim().split(" ")))})),Re.register("bMVW7",((e,t)=>{var r=Re("j4Bpm"),o=Re("8YuUE");e.exports=(e,t,n)=>{let s=null,i=null,a=null;try{a=new o(t,n)}catch(e){return null}return e.forEach((e=>{a.test(e)&&(s&&-1!==i.compare(e)||(s=e,i=new r(s,n)))})),s}})),Re.register("g5aoW",((e,t)=>{var r=Re("j4Bpm"),o=Re("8YuUE");e.exports=(e,t,n)=>{let s=null,i=null,a=null;try{a=new o(t,n)}catch(e){return null}return e.forEach((e=>{a.test(e)&&(s&&1!==i.compare(e)||(s=e,i=new r(s,n)))})),s}})),Re.register("hO4RL",((e,t)=>{var r=Re("j4Bpm"),o=Re("8YuUE"),n=Re("6bYo1");e.exports=(e,t)=>{e=new o(e,t);let s=new r("0.0.0");if(e.test(s))return s;if(s=new r("0.0.0-0"),e.test(s))return s;s=null;for(let t=0;e.set.length>t;++t){let o=null;e.set[t].forEach((e=>{const t=new r(e.semver.version);switch(e.operator){case">":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":o&&!n(t,o)||(o=t);break;case"<":case"<=":break;default:throw Error("Unexpected operation: "+e.operator)}})),!o||s&&!n(s,o)||(s=o)}return s&&e.test(s)?s:null}})),Re.register("hXGf0",((e,t)=>{var r=Re("8YuUE");e.exports=(e,t)=>{try{return new r(e,t).range||"*"}catch(e){return null}}})),Re.register("2MRaB",((e,t)=>{var r=Re("j4Bpm"),o=Re("hDCF3");const{ANY:n}=o;var s=Re("8YuUE"),i=Re("6rO9c"),a=Re("6bYo1"),c=Re("98Pyg"),l=Re("ju11K"),u=Re("kRrXd");e.exports=(e,t,p,d)=>{let h,f,m,v,g;switch(e=new r(e,d),t=new s(t,d),p){case">":h=a,f=l,m=c,v=">",g=">=";break;case"<":h=c,f=u,m=a,v="<",g="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(i(e,t,d))return!1;for(let r=0;t.set.length>r;++r){let s=null,i=null;if(t.set[r].forEach((e=>{e.semver===n&&(e=new o(">=0.0.0")),s=s||e,i=i||e,h(e.semver,s.semver,d)?s=e:m(e.semver,i.semver,d)&&(i=e)})),s.operator===v||s.operator===g)return!1;if((!i.operator||i.operator===v)&&f(e,i.semver))return!1;if(i.operator===g&&m(e,i.semver))return!1}return!0}})),Re.register("bqGrY",((e,t)=>{var r=Re("2MRaB");e.exports=(e,t,o)=>r(e,t,">",o)})),Re.register("3AeSM",((e,t)=>{var r=Re("2MRaB");e.exports=(e,t,o)=>r(e,t,"<",o)})),Re.register("2Lyoi",((e,t)=>{var r=Re("8YuUE");e.exports=(e,t,o)=>(e=new r(e,o),t=new r(t,o),e.intersects(t))})),Re.register("5pzc6",((e,t)=>{var r=Re("6rO9c"),o=Re("1wyqe");e.exports=(e,t,n)=>{const s=[];let i=null,a=null;const c=e.sort(((e,t)=>o(e,t,n)));for(const e of c)r(e,t,n)?(a=e,i||(i=e)):(a&&s.push([i,a]),a=null,i=null);i&&s.push([i,null]);const l=[];for(const[e,t]of s)l.push(e===t?e:t||e!==c[0]?t?e===c[0]?"<="+t:`${e} - ${t}`:">="+e:"*");const u=l.join(" || ");return("string"==typeof t.raw?t.raw:t+"").length>u.length?u:t}})),Re.register("2XGoS",((e,t)=>{var r=Re("8YuUE"),o=Re("hDCF3");const{ANY:n}=o;var s=Re("6rO9c"),i=Re("1wyqe");const a=(e,t,r)=>{if(e===t)return!0;if(1===e.length&&e[0].semver===n){if(1===t.length&&t[0].semver===n)return!0;e=r.includePrerelease?[new o(">=0.0.0-0")]:[new o(">=0.0.0")]}if(1===t.length&&t[0].semver===n){if(r.includePrerelease)return!0;t=[new o(">=0.0.0")]}const a=new Set;let u,p,d,h,f,m,v;for(const t of e)">"===t.operator||">="===t.operator?u=c(u,t,r):"<"===t.operator||"<="===t.operator?p=l(p,t,r):a.add(t.semver);if(a.size>1)return null;if(u&&p){if(d=i(u.semver,p.semver,r),d>0)return null;if(0===d&&(">="!==u.operator||"<="!==p.operator))return null}for(const e of a){if(u&&!s(e,u+"",r))return null;if(p&&!s(e,p+"",r))return null;for(const o of t)if(!s(e,o+"",r))return!1;return!0}let g=!(!p||r.includePrerelease||!p.semver.prerelease.length)&&p.semver,y=!(!u||r.includePrerelease||!u.semver.prerelease.length)&&u.semver;g&&1===g.prerelease.length&&"<"===p.operator&&0===g.prerelease[0]&&(g=!1);for(const e of t){if(v=v||">"===e.operator||">="===e.operator,m=m||"<"===e.operator||"<="===e.operator,u)if(y&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===y.major&&e.semver.minor===y.minor&&e.semver.patch===y.patch&&(y=!1),">"===e.operator||">="===e.operator){if(h=c(u,e,r),h===e&&h!==u)return!1}else if(">="===u.operator&&!s(u.semver,e+"",r))return!1;if(p)if(g&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===g.major&&e.semver.minor===g.minor&&e.semver.patch===g.patch&&(g=!1),"<"===e.operator||"<="===e.operator){if(f=l(p,e,r),f===e&&f!==p)return!1}else if("<="===p.operator&&!s(p.semver,e+"",r))return!1;if(!e.operator&&(p||u)&&0!==d)return!1}return!(u&&m&&!p&&0!==d||p&&v&&!u&&0!==d||y||g)},c=(e,t,r)=>{if(!e)return t;const o=i(e.semver,t.semver,r);return o>0?e:0>o||">"===t.operator&&">="===e.operator?t:e},l=(e,t,r)=>{if(!e)return t;const o=i(e.semver,t.semver,r);return 0>o?e:o>0||"<"===t.operator&&"<="===e.operator?t:e};e.exports=(e,t,o={})=>{if(e===t)return!0;e=new r(e,o),t=new r(t,o);let n=!1;e:for(const r of e.set){for(const e of t.set){const t=a(r,e,o);if(n=n||null!==t,t)continue e}if(n)return!1}return!0}}));const Ar=Or(Re("1Hds5")),Ir=Or(le),Nr=Or(ue);Re.register("9AGbw",(function(e,t){"use strict";Object.defineProperty(e.exports,"__esModule",{value:!0});var r=Re("cEfL5");let o;var n,s,i,a,c;(s=n=e.exports.HttpCodes||(e.exports.HttpCodes={}))[s.OK=200]="OK",s[s.MultipleChoices=300]="MultipleChoices",s[s.MovedPermanently=301]="MovedPermanently",s[s.ResourceMoved=302]="ResourceMoved",s[s.SeeOther=303]="SeeOther",s[s.NotModified=304]="NotModified",s[s.UseProxy=305]="UseProxy",s[s.SwitchProxy=306]="SwitchProxy",s[s.TemporaryRedirect=307]="TemporaryRedirect",s[s.PermanentRedirect=308]="PermanentRedirect",s[s.BadRequest=400]="BadRequest",s[s.Unauthorized=401]="Unauthorized",s[s.PaymentRequired=402]="PaymentRequired",s[s.Forbidden=403]="Forbidden",s[s.NotFound=404]="NotFound",s[s.MethodNotAllowed=405]="MethodNotAllowed",s[s.NotAcceptable=406]="NotAcceptable",s[s.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",s[s.RequestTimeout=408]="RequestTimeout",s[s.Conflict=409]="Conflict",s[s.Gone=410]="Gone",s[s.TooManyRequests=429]="TooManyRequests",s[s.InternalServerError=500]="InternalServerError",s[s.NotImplemented=501]="NotImplemented",s[s.BadGateway=502]="BadGateway",s[s.ServiceUnavailable=503]="ServiceUnavailable",s[s.GatewayTimeout=504]="GatewayTimeout",(a=i=e.exports.Headers||(e.exports.Headers={})).Accept="accept",a.ContentType="content-type",(c=e.exports.MediaTypes||(e.exports.MediaTypes={})).ApplicationJson="application/json",e.exports.getProxyUrl=e=>{let t=r.getProxyUrl(new URL(e));return t?t.href:""};const l=[n.MovedPermanently,n.ResourceMoved,n.SeeOther,n.TemporaryRedirect,n.PermanentRedirect],u=[n.BadGateway,n.ServiceUnavailable,n.GatewayTimeout],p=["OPTIONS","GET","DELETE","HEAD"];class d extends Error{constructor(e,t){super(e),this.name="HttpClientError",this.statusCode=t,Object.setPrototypeOf(this,d.prototype)}}e.exports.HttpClientError=d;class h{constructor(e){this.message=e}readBody(){return new Promise((async(e,t)=>{let r=Buffer.alloc(0);this.message.on("data",(e=>{r=Buffer.concat([r,e])})),this.message.on("end",(()=>{e(""+r)}))}))}}e.exports.HttpClientResponse=h,e.exports.isHttps=e=>"https:"===new URL(e).protocol;class f{constructor(e,t,r){this._ignoreSslError=!1,this._allowRedirects=!0,this._allowRedirectDowngrade=!1,this._maxRedirects=50,this._allowRetries=!1,this._maxRetries=1,this._keepAlive=!1,this._disposed=!1,this.userAgent=e,this.handlers=t||[],this.requestOptions=r,r&&(null!=r.ignoreSslError&&(this._ignoreSslError=r.ignoreSslError),this._socketTimeout=r.socketTimeout,null!=r.allowRedirects&&(this._allowRedirects=r.allowRedirects),null!=r.allowRedirectDowngrade&&(this._allowRedirectDowngrade=r.allowRedirectDowngrade),null!=r.maxRedirects&&(this._maxRedirects=Math.max(r.maxRedirects,0)),null!=r.keepAlive&&(this._keepAlive=r.keepAlive),null!=r.allowRetries&&(this._allowRetries=r.allowRetries),null!=r.maxRetries&&(this._maxRetries=r.maxRetries))}options(e,t){return this.request("OPTIONS",e,null,t||{})}get(e,t){return this.request("GET",e,null,t||{})}del(e,t){return this.request("DELETE",e,null,t||{})}post(e,t,r){return this.request("POST",e,t,r||{})}patch(e,t,r){return this.request("PATCH",e,t,r||{})}put(e,t,r){return this.request("PUT",e,t,r||{})}head(e,t){return this.request("HEAD",e,null,t||{})}sendStream(e,t,r,o){return this.request(e,t,r,o)}async getJson(e,t={}){t[i.Accept]=this._getExistingOrDefaultHeader(t,i.Accept,c.ApplicationJson);let r=await this.get(e,t);return this._processResponse(r,this.requestOptions)}async postJson(e,t,r={}){let o=JSON.stringify(t,null,2);r[i.Accept]=this._getExistingOrDefaultHeader(r,i.Accept,c.ApplicationJson),r[i.ContentType]=this._getExistingOrDefaultHeader(r,i.ContentType,c.ApplicationJson);let n=await this.post(e,o,r);return this._processResponse(n,this.requestOptions)}async putJson(e,t,r={}){let o=JSON.stringify(t,null,2);r[i.Accept]=this._getExistingOrDefaultHeader(r,i.Accept,c.ApplicationJson),r[i.ContentType]=this._getExistingOrDefaultHeader(r,i.ContentType,c.ApplicationJson);let n=await this.put(e,o,r);return this._processResponse(n,this.requestOptions)}async patchJson(e,t,r={}){let o=JSON.stringify(t,null,2);r[i.Accept]=this._getExistingOrDefaultHeader(r,i.Accept,c.ApplicationJson),r[i.ContentType]=this._getExistingOrDefaultHeader(r,i.ContentType,c.ApplicationJson);let n=await this.patch(e,o,r);return this._processResponse(n,this.requestOptions)}async request(e,t,r,o){if(this._disposed)throw Error("Client has already been disposed.");let s,i=new URL(t),a=this._prepareRequest(e,i,o),c=this._allowRetries&&-1!=p.indexOf(e)?this._maxRetries+1:1,d=0;for(;c>d;){if(s=await this.requestRaw(a,r),s&&s.message&&s.message.statusCode===n.Unauthorized){let e;for(let t=0;this.handlers.length>t;t++)if(this.handlers[t].canHandleAuthentication(s)){e=this.handlers[t];break}return e?e.handleAuthentication(this,a,r):s}let t=this._maxRedirects;for(;-1!=l.indexOf(s.message.statusCode)&&this._allowRedirects&&t>0;){const n=s.message.headers.location;if(!n)break;let c=new URL(n);if("https:"==i.protocol&&i.protocol!=c.protocol&&!this._allowRedirectDowngrade)throw 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.");if(await s.readBody(),c.hostname!==i.hostname)for(let e in o)"authorization"===e.toLowerCase()&&delete o[e];a=this._prepareRequest(e,c,o),s=await this.requestRaw(a,r),t--}if(-1==u.indexOf(s.message.statusCode))return s;d+=1,c>d&&(await s.readBody(),await this._performExponentialBackoff(d))}return s}dispose(){this._agent&&this._agent.destroy(),this._disposed=!0}requestRaw(e,t){return new Promise(((r,o)=>{this.requestRawWithCallback(e,t,((e,t)=>{e&&o(e),r(t)}))}))}requestRawWithCallback(e,t,r){let o;"string"==typeof t&&(e.options.headers["Content-Length"]=Buffer.byteLength(t,"utf8"));let n=!1,s=(e,t)=>{n||(n=!0,r(e,t))},i=e.httpModule.request(e.options,(e=>{let t=new h(e);s(null,t)}));i.on("socket",(e=>{o=e})),i.setTimeout(this._socketTimeout||18e4,(()=>{o&&o.end(),s(Error("Request timeout: "+e.options.path),null)})),i.on("error",(e=>{s(e,null)})),t&&"string"==typeof t&&i.write(t,"utf8"),t&&"string"!=typeof t?(t.on("close",(()=>{i.end()})),t.pipe(i)):i.end()}getAgent(e){let t=new URL(e);return this._getAgent(t)}_prepareRequest(e,t,r){const o={};o.parsedUrl=t;const n="https:"===o.parsedUrl.protocol;o.httpModule=n?xe:ye;const s=n?443:80;return o.options={},o.options.host=o.parsedUrl.hostname,o.options.port=o.parsedUrl.port?parseInt(o.parsedUrl.port):s,o.options.path=(o.parsedUrl.pathname||"")+(o.parsedUrl.search||""),o.options.method=e,o.options.headers=this._mergeHeaders(r),null!=this.userAgent&&(o.options.headers["user-agent"]=this.userAgent),o.options.agent=this._getAgent(o.parsedUrl),this.handlers&&this.handlers.forEach((e=>{e.prepareRequest(o.options)})),o}_mergeHeaders(e){const t=e=>Object.keys(e).reduce(((t,r)=>(t[r.toLowerCase()]=e[r],t)),{});return this.requestOptions&&this.requestOptions.headers?Object.assign({},t(this.requestOptions.headers),t(e)):t(e||{})}_getExistingOrDefaultHeader(e,t,r){let o;var n;return this.requestOptions&&this.requestOptions.headers&&(o=(n=this.requestOptions.headers,Object.keys(n).reduce(((e,t)=>(e[t.toLowerCase()]=n[t],e)),{}))[t]),e[t]||o||r}_getAgent(e){let t,n=r.getProxyUrl(e),s=n&&n.hostname;if(this._keepAlive&&s&&(t=this._proxyAgent),this._keepAlive&&!s&&(t=this._agent),t)return t;const i="https:"===e.protocol;let a=100;if(this.requestOptions&&(a=this.requestOptions.maxSockets||ye.globalAgent.maxSockets),s){o||(o=Re("hEhmi"));const e={maxSockets:a,keepAlive:this._keepAlive,proxy:{...(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`},host:n.hostname,port:n.port}};let r;const s="https:"===n.protocol;r=i?s?o.httpsOverHttps:o.httpsOverHttp:s?o.httpOverHttps:o.httpOverHttp,t=r(e),this._proxyAgent=t}if(this._keepAlive&&!t){const e={keepAlive:this._keepAlive,maxSockets:a};t=i?new xe.Agent(e):new ye.Agent(e),this._agent=t}return t||(t=i?xe.globalAgent:ye.globalAgent),i&&this._ignoreSslError&&(t.options=Object.assign(t.options||{},{rejectUnauthorized:!1})),t}_performExponentialBackoff(e){const t=5*Math.pow(2,e=Math.min(10,e));return new Promise((e=>setTimeout((()=>e()),t)))}static dateTimeDeserializer(e,t){if("string"==typeof t){let e=new Date(t);if(!isNaN(e.valueOf()))return e}return t}async _processResponse(e,t){return new Promise((async(r,o)=>{const s=e.message.statusCode,i={statusCode:s,result:null,headers:{}};let a,c;s==n.NotFound&&r(i);try{c=await e.readBody(),c&&c.length>0&&(a=t&&t.deserializeDates?JSON.parse(c,f.dateTimeDeserializer):JSON.parse(c),i.result=a),i.headers=e.message.headers}catch(e){}if(s>299){let e;e=a&&a.message?a.message:c&&c.length>0?c:"Failed request: ("+s+")";let t=new d(e,s);t.result=i.result,o(t)}else r(i)}))}}e.exports.HttpClient=f})),Re.register("cEfL5",((e,t)=>{"use strict";function r(e){if(!e.hostname)return!1;let t,r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;e.port?t=+e.port:"http:"===e.protocol?t=80:"https:"===e.protocol&&(t=443);let o=[e.hostname.toUpperCase()];"number"==typeof t&&o.push(`${o[0]}:${t}`);for(let e of r.split(",").map((e=>e.trim().toUpperCase())).filter((e=>e)))if(o.some((t=>t===e)))return!0;return!1}Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.getProxyUrl=e=>{let t,o,n="https:"===e.protocol;return r(e)||(o=n?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY,o&&(t=new URL(o))),t},e.exports.checkBypass=r})),Re.register("hEhmi",((e,t)=>{e.exports=Re("88ZfI")})),Re.register("88ZfI",(function(e,r){function o(e){var t=this;t.options=e||{},t.proxyOptions=t.options.proxy||{},t.maxSockets=t.options.maxSockets||ye.Agent.defaultMaxSockets,t.requests=[],t.sockets=[],t.on("free",((e,r,o,n)=>{for(var i=s(r,o,n),a=0,c=t.requests.length;c>a;++a){var l=t.requests[a];if(l.host===i.host&&l.port===i.port)return t.requests.splice(a,1),void l.request.onSocket(e)}e.destroy(),t.removeSocket(e)}))}function n(e,t){var r=this;o.prototype.createSocket.call(r,e,(o=>{var n=e.request.getHeader("host"),s=i({},r.options,{socket:o,servername:n?n.replace(/:.*$/,""):e.host}),a=we.connect(0,s);r.sockets[r.sockets.indexOf(o)]=a,t(a)}))}function s(e,t,r){return"string"==typeof e?{host:e,port:t,localAddress:r}:e}function i(e){for(var t=1,r=arguments.length;r>t;++t){var o=arguments[t];if("object"==typeof o)for(var n=Object.keys(o),s=0,i=n.length;i>s;++s){var a=n[s];void 0!==o[a]&&(e[a]=o[a])}}return e}var a,c,l,u,p,d;t(e.exports,"httpOverHttps",(()=>u),(e=>u=e)),t(e.exports,"httpOverHttp",(()=>l),(e=>l=e)),t(e.exports,"httpsOverHttps",(()=>c),(e=>c=e)),t(e.exports,"debug",(()=>p),(e=>p=e)),t(e.exports,"httpsOverHttp",(()=>a),(e=>a=e)),l=e=>{var t=new o(e);return t.request=ye.request,t},a=e=>{var t=new o(e);return t.request=ye.request,t.createSocket=n,t.defaultPort=443,t},u=e=>{var t=new o(e);return t.request=xe.request,t},c=e=>{var t=new o(e);return t.request=xe.request,t.createSocket=n,t.defaultPort=443,t},ge.inherits(o,fe.EventEmitter),o.prototype.addRequest=function(e,t,r,o){var n=this,a=i({request:e},n.options,s(t,r,o));this.maxSockets>n.sockets.length?n.createSocket(a,(t=>{function r(){n.emit("free",t,a)}function o(e){n.removeSocket(t),t.removeListener("free",r),t.removeListener("close",o),t.removeListener("agentRemove",o)}t.on("free",r),t.on("close",o),t.on("agentRemove",o),e.onSocket(t)})):n.requests.push(a)},o.prototype.createSocket=function(e,t){function r(r,s,i){var c;return a.removeAllListeners(),s.removeAllListeners(),200!==r.statusCode?(d("tunneling socket could not be established, statusCode=%d",r.statusCode),s.destroy(),(c=Error("tunneling socket could not be established, statusCode="+r.statusCode)).code="ECONNRESET",e.request.emit("error",c),void o.removeSocket(n)):i.length>0?(d("got illegal response body from proxy"),s.destroy(),(c=Error("got illegal response body from proxy")).code="ECONNRESET",e.request.emit("error",c),void o.removeSocket(n)):(d("tunneling connection has established"),o.sockets[o.sockets.indexOf(n)]=s,t(s))}var o=this,n={};o.sockets.push(n);var s=i({},o.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(s.localAddress=e.localAddress),s.proxyAuth&&(s.headers=s.headers||{},s.headers["Proxy-Authorization"]="Basic "+new Buffer(s.proxyAuth).toString("base64")),d("making CONNECT request");var a=o.request(s);a.useChunkedEncodingByDefault=!1,a.once("response",(e=>{e.upgrade=!0})),a.once("upgrade",((e,t,o)=>{process.nextTick((()=>{r(e,t,o)}))})),a.once("connect",r),a.once("error",(t=>{a.removeAllListeners(),d("tunneling socket could not be established, cause=%s\n",t.message,t.stack);var r=Error("tunneling socket could not be established, cause="+t.message);r.code="ECONNRESET",e.request.emit("error",r),o.removeSocket(n)})),a.end()},o.prototype.removeSocket=function(e){var t=this.sockets.indexOf(e);if(-1!==t){this.sockets.splice(t,1);var r=this.requests.shift();r&&this.createSocket(r,(e=>{r.request.onSocket(e)}))}},p=d=()=>{}}));const Lr=Or(Re("9AGbw")),jr=Or(Re("hBwzM")),Dr=Or(ve),kr=Or(ge);Re.register("kceBH",((e,t)=>{var r=Re("diWfV"),o=Re("8n3PT");e.exports=(e,t,n)=>{var s=t&&n||0;"string"==typeof e&&(t="binary"===e?Array(16):null,e=null);var i=(e=e||{}).random||(e.rng||r)();if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,t)for(var a=0;16>a;++a)t[s+a]=i[a];return t||o(i)}})),Re.register("diWfV",((e,t)=>{e.exports=()=>Ee.randomBytes(16)})),Re.register("8n3PT",((e,t)=>{for(var r=[],o=0;256>o;++o)r[o]=(o+256).toString(16).substr(1);e.exports=(e,t)=>{var o=t||0;return""+r[e[o++]]+r[e[o++]]+r[e[o++]]+r[e[o++]]+"-"+r[e[o++]]+r[e[o++]]+"-"+r[e[o++]]+r[e[o++]]+"-"+r[e[o++]]+r[e[o++]]+"-"+r[e[o++]]+r[e[o++]]+r[e[o++]]+r[e[o++]]+r[e[o++]]+r[e[o++]]}}));const Mr=$r(Re("kceBH"));var Fr={},Gr=Fr&&Fr.__createBinding||(Object.create?(e,t,r,o)=>{void 0===o&&(o=r),Object.defineProperty(e,o,{enumerable:!0,get(){return t[r]}})}:(e,t,r,o)=>{void 0===o&&(o=r),e[o]=t[r]}),Ur=Fr&&Fr.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),Br=Fr&&Fr.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&Gr(t,e,r);return Ur(t,e),t}),Vr=Fr&&Fr.__awaiter||((e,t,r,o)=>new(r||(r=Promise))(((n,s)=>{function i(e){try{c(o.next(e))}catch(e){s(e)}}function a(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(i,a)}c((o=o.apply(e,t||[])).next())})));Object.defineProperty(Fr,"__esModule",{value:!0}),Fr.getExecOutput=Fr.exec=void 0,Re.register("fk1Ma",(function(e,t){"use strict";var r=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,o)=>{void 0===o&&(o=r),Object.defineProperty(e,o,{enumerable:!0,get(){return t[r]}})}:(e,t,r,o)=>{void 0===o&&(o=r),e[o]=t[r]}),o=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),n=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.hasOwnProperty.call(e,n)&&r(t,e,n);return o(t,e),t}),s=e.exports&&e.exports.__awaiter||((e,t,r,o)=>new(r||(r=Promise))(((n,s)=>{function i(e){try{c(o.next(e))}catch(e){s(e)}}function a(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(i,a)}c((o=o.apply(e,t||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.argStringToArray=e.exports.ToolRunner=void 0;const i=n(le),a=n(fe),c=n(de),l=n(ue),u=n(Re("q05Mr")),p=n(Re("fyhIP")),d="win32"===process.platform;e.exports.ToolRunner=class extends a.EventEmitter{constructor(e,t,r){if(super(),!e)throw Error("Parameter 'toolPath' cannot be null or empty.");this.toolPath=e,this.args=t||[],this.options=r||{}}_debug(e){this.options.listeners&&this.options.listeners.debug&&this.options.listeners.debug(e)}_getCommandString(e,t){const r=this._getSpawnFileName(),o=this._getSpawnArgs(e);let n=t?"":"[command]";if(d)if(this._isCmdFile()){n+=r;for(const e of o)n+=" "+e}else if(e.windowsVerbatimArguments){n+=`"${r}"`;for(const e of o)n+=" "+e}else{n+=this._windowsQuoteCmdArg(r);for(const e of o)n+=" "+this._windowsQuoteCmdArg(e)}else{n+=r;for(const e of o)n+=" "+e}return n}_processLineBuffer(e,t,r){try{let o=t+""+e,n=o.indexOf(i.EOL);for(;n>-1;)r(o.substring(0,n)),o=o.substring(n+i.EOL.length),n=o.indexOf(i.EOL);return o}catch(e){return this._debug("error processing line. Failed with error "+e),""}}_getSpawnFileName(){return d&&this._isCmdFile()?process.env.COMSPEC||"cmd.exe":this.toolPath}_getSpawnArgs(e){if(d&&this._isCmdFile()){let t='/D /S /C "'+this._windowsQuoteCmdArg(this.toolPath);for(const r of this.args)t+=" ",t+=e.windowsVerbatimArguments?r:this._windowsQuoteCmdArg(r);return t+='"',[t]}return this.args}_endsWith(e,t){return e.endsWith(t)}_isCmdFile(){const e=this.toolPath.toUpperCase();return this._endsWith(e,".CMD")||this._endsWith(e,".BAT")}_windowsQuoteCmdArg(e){if(!this._isCmdFile())return this._uvQuoteCmdArg(e);if(!e)return'""';const t=[" ","\t","&","(",")","[","]","{","}","^","=",";","!","'","+",",","`","~","|","<",">",'"'];let r=!1;for(const o of e)if(t.some((e=>e===o))){r=!0;break}if(!r)return e;let o='"',n=!0;for(let t=e.length;t>0;t--)o+=e[t-1],n&&"\\"===e[t-1]?o+="\\":'"'===e[t-1]?(n=!0,o+='"'):n=!1;return o+='"',o.split("").reverse().join("")}_uvQuoteCmdArg(e){if(!e)return'""';if(!e.includes(" ")&&!e.includes("\t")&&!e.includes('"'))return e;if(!e.includes('"')&&!e.includes("\\"))return`"${e}"`;let t='"',r=!0;for(let o=e.length;o>0;o--)t+=e[o-1],r&&"\\"===e[o-1]?t+="\\":'"'===e[o-1]?(r=!0,t+="\\"):r=!1;return t+='"',t.split("").reverse().join("")}_cloneExecOptions(e){const t={cwd:(e=e||{}).cwd||process.cwd(),env:e.env||process.env,silent:e.silent||!1,windowsVerbatimArguments:e.windowsVerbatimArguments||!1,failOnStdErr:e.failOnStdErr||!1,ignoreReturnCode:e.ignoreReturnCode||!1,delay:e.delay||1e4};return t.outStream=e.outStream||process.stdout,t.errStream=e.errStream||process.stderr,t}_getSpawnOptions(e,t){const r={};return r.cwd=(e=e||{}).cwd,r.env=e.env,r.windowsVerbatimArguments=e.windowsVerbatimArguments||this._isCmdFile(),e.windowsVerbatimArguments&&(r.argv0=`"${t}"`),r}exec(){return s(this,void 0,void 0,(function*(){return!p.isRooted(this.toolPath)&&(this.toolPath.includes("/")||d&&this.toolPath.includes("\\"))&&(this.toolPath=l.resolve(process.cwd(),this.options.cwd||process.cwd(),this.toolPath)),this.toolPath=yield u.which(this.toolPath,!0),new Promise(((e,t)=>s(this,void 0,void 0,(function*(){this._debug("exec tool: "+this.toolPath),this._debug("arguments:");for(const e of this.args)this._debug(" "+e);const r=this._cloneExecOptions(this.options);!r.silent&&r.outStream&&r.outStream.write(this._getCommandString(r)+i.EOL);const o=new h(r,this.toolPath);if(o.on("debug",(e=>{this._debug(e)})),this.options.cwd&&!(yield p.exists(this.options.cwd)))return t(Error(`The cwd: ${this.options.cwd} does not exist!`));const n=this._getSpawnFileName(),s=c.spawn(n,this._getSpawnArgs(r),this._getSpawnOptions(this.options,n));let a="";s.stdout&&s.stdout.on("data",(e=>{this.options.listeners&&this.options.listeners.stdout&&this.options.listeners.stdout(e),!r.silent&&r.outStream&&r.outStream.write(e),a=this._processLineBuffer(e,a,(e=>{this.options.listeners&&this.options.listeners.stdline&&this.options.listeners.stdline(e)}))}));let l="";if(s.stderr&&s.stderr.on("data",(e=>{o.processStderr=!0,this.options.listeners&&this.options.listeners.stderr&&this.options.listeners.stderr(e),!r.silent&&r.errStream&&r.outStream&&(r.failOnStdErr?r.errStream:r.outStream).write(e),l=this._processLineBuffer(e,l,(e=>{this.options.listeners&&this.options.listeners.errline&&this.options.listeners.errline(e)}))})),s.on("error",(e=>{o.processError=e.message,o.processExited=!0,o.processClosed=!0,o.CheckComplete()})),s.on("exit",(e=>{o.processExitCode=e,o.processExited=!0,this._debug(`Exit code ${e} received from tool '${this.toolPath}'`),o.CheckComplete()})),s.on("close",(e=>{o.processExitCode=e,o.processExited=!0,o.processClosed=!0,this._debug(`STDIO streams have closed for tool '${this.toolPath}'`),o.CheckComplete()})),o.on("done",((r,o)=>{a.length>0&&this.emit("stdline",a),l.length>0&&this.emit("errline",l),s.removeAllListeners(),r?t(r):e(o)})),this.options.input){if(!s.stdin)throw Error("child process missing stdin");s.stdin.end(this.options.input)}}))))}))}},e.exports.argStringToArray=e=>{function t(e){n&&'"'!==e&&(s+="\\"),s+=e,n=!1}const r=[];let o=!1,n=!1,s="";for(let i=0;e.length>i;i++){const a=e.charAt(i);'"'!==a?"\\"===a&&n?t(a):"\\"===a&&o?n=!0:" "!==a||o?t(a):s.length>0&&(r.push(s),s=""):n?t(a):o=!o}return s.length>0&&r.push(s.trim()),r};class h extends a.EventEmitter{constructor(e,t){if(super(),this.processClosed=!1,this.processError="",this.processExitCode=0,this.processExited=!1,this.processStderr=!1,this.delay=1e4,this.done=!1,this.timeout=null,!t)throw Error("toolPath must not be empty");this.options=e,this.toolPath=t,e.delay&&(this.delay=e.delay)}CheckComplete(){this.done||(this.processClosed?this._setResult():this.processExited&&(this.timeout=Se.setTimeout(h.HandleTimeout,this.delay,this)))}_debug(e){this.emit("debug",e)}_setResult(){let e;this.processExited&&(this.processError?e=Error(`There was an error when attempting to execute the process '${this.toolPath}'. This may indicate the process failed to start. Error: ${this.processError}`):0===this.processExitCode||this.options.ignoreReturnCode?this.processStderr&&this.options.failOnStdErr&&(e=Error(`The process '${this.toolPath}' failed because one or more lines were written to the STDERR stream`)):e=Error(`The process '${this.toolPath}' failed with exit code ${this.processExitCode}`)),this.timeout&&(clearTimeout(this.timeout),this.timeout=null),this.done=!0,this.emit("done",e,this.processExitCode)}static HandleTimeout(e){e.done||(!e.processClosed&&e.processExited&&e._debug(`The STDIO streams did not close within ${e.delay/1e3} seconds of the exit event from process '${e.toolPath}'. This may indicate a child process inherited the STDIO streams and has not yet exited.`),e._setResult())}}}));const qr=Br(Re("fk1Ma"));Fr.exec=w,Fr.getExecOutput=function(e,t,r){var o,n;return Vr(this,void 0,void 0,(function*(){let s="",i="";const a=new be.StringDecoder("utf8"),c=new be.StringDecoder("utf8"),l=null===(o=null==r?void 0:r.listeners)||void 0===o?void 0:o.stdout,u=null===(n=null==r?void 0:r.listeners)||void 0===n?void 0:n.stderr,p=Object.assign(Object.assign({},null==r?void 0:r.listeners),{stdout(e){s+=a.write(e),l&&l(e)},stderr(e){i+=c.write(e),u&&u(e)}}),d=yield w(e,t,Object.assign(Object.assign({},r),{listeners:p}));return s+=a.end(),i+=c.end(),{exitCode:d,stdout:s,stderr:i}}))};var Hr={},Xr=Hr&&Hr.__createBinding||(Object.create?(e,t,r,o)=>{void 0===o&&(o=r),Object.defineProperty(e,o,{enumerable:!0,get(){return t[r]}})}:(e,t,r,o)=>{void 0===o&&(o=r),e[o]=t[r]}),Wr=Hr&&Hr.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),Yr=Hr&&Hr.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&Xr(t,e,r);return Wr(t,e),t}),Zr=Hr&&Hr.__awaiter||((e,t,r,o)=>new(r||(r=Promise))(((n,s)=>{function i(e){try{c(o.next(e))}catch(e){s(e)}}function a(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(i,a)}c((o=o.apply(e,t||[])).next())})));Object.defineProperty(Hr,"__esModule",{value:!0}),Hr.RetryHelper=void 0;const zr=Yr(Re("6FGZZ"));Hr.RetryHelper=class{constructor(e,t,r){if(1>e)throw Error("max attempts should be greater than or equal to 1");if(this.maxAttempts=e,this.minSeconds=Math.floor(t),this.maxSeconds=Math.floor(r),this.minSeconds>this.maxSeconds)throw Error("min seconds should be less than or equal to max seconds")}execute(e,t){return Zr(this,void 0,void 0,(function*(){let r=1;for(;this.maxAttempts>r;){try{return yield e()}catch(e){if(t&&!t(e))throw e;zr.info(e.message)}const o=this.getSleepAmount();zr.info(`Waiting ${o} seconds before trying again`),yield this.sleep(o),r++}return yield e()}))}getSleepAmount(){return Math.floor(Math.random()*(this.maxSeconds-this.minSeconds+1))+this.minSeconds}sleep(e){return Zr(this,void 0,void 0,(function*(){return new Promise((t=>setTimeout(t,1e3*e)))}))}};class Jr extends Error{constructor(e){super("Unexpected HTTP response: "+e),this.httpStatusCode=e,Object.setPrototypeOf(this,new.target.prototype)}}br.HTTPError=Jr;const Kr="win32"===process.platform,Qr="darwin"===process.platform;br.downloadTool=function(e,t,r,o){return _r(this,void 0,void 0,(function*(){t=t||Nr.join(R(),Mr.default()),yield Cr.mkdirP(Nr.dirname(t)),Rr.debug("Downloading "+e),Rr.debug("Destination "+t);const n=C("TEST_DOWNLOAD_TOOL_RETRY_MIN_SECONDS",10),s=C("TEST_DOWNLOAD_TOOL_RETRY_MAX_SECONDS",20),i=new Hr.RetryHelper(3,n,s);return yield i.execute((()=>_r(this,void 0,void 0,(function*(){return yield function(e,t,r,o){return _r(this,void 0,void 0,(function*(){if(Tr.existsSync(t))throw Error(`Destination file path ${t} already exists`);const n=new Lr.HttpClient("actions/tool-cache",[],{allowRetries:!1});r&&(Rr.debug("set auth"),void 0===o&&(o={}),o.authorization=r);const s=yield n.get(e,o);if(200!==s.message.statusCode){const t=new Jr(s.message.statusCode);throw Rr.debug(`Failed to download from "${e}". Code(${s.message.statusCode}) Message(${s.message.statusMessage})`),t}const i=kr.promisify(Dr.pipeline),a=C("TEST_DOWNLOAD_TOOL_RESPONSE_MESSAGE_FACTORY",(()=>s.message))();let c=!1;try{return yield i(a,Tr.createWriteStream(t)),Rr.debug("download complete"),c=!0,t}finally{if(!c){Rr.debug("download failed");try{yield Cr.rmRF(t)}catch(e){Rr.debug(`Failed to delete '${t}'. ${e.message}`)}}}}))}(e,t||"",r,o)}))),(e=>!(e instanceof Jr&&e.httpStatusCode&&500>e.httpStatusCode&&408!==e.httpStatusCode&&429!==e.httpStatusCode)))}))},br.extract7z=function(e,t,r){return _r(this,void 0,void 0,(function*(){he.ok(Kr,"extract7z() not supported on current OS"),he.ok(e,'parameter "file" is required'),t=yield b(t);const o=process.cwd();if(process.chdir(t),r)try{const t=["x",Rr.isDebug()?"-bb1":"-bb0","-bd","-sccUTF-8",e],n={silent:!0};yield Fr.exec(`"${r}"`,t,n)}finally{process.chdir(o)}else{const r=["-NoLogo","-Sta","-NoProfile","-NonInteractive","-ExecutionPolicy","Unrestricted","-Command",`& '${Nr.join(__dirname,"..","scripts","Invoke-7zdec.ps1").replace(/'/g,"''").replace(/"|\n|\r/g,"")}' -Source '${e.replace(/'/g,"''").replace(/"|\n|\r/g,"")}' -Target '${t.replace(/'/g,"''").replace(/"|\n|\r/g,"")}'`],n={silent:!0};try{const e=yield Cr.which("powershell",!0);yield Fr.exec(`"${e}"`,r,n)}finally{process.chdir(o)}}return t}))},br.extractTar=function(e,t,r="xz"){return _r(this,void 0,void 0,(function*(){if(!e)throw Error("parameter 'file' is required");t=yield b(t),Rr.debug("Checking tar --version");let o="";yield Fr.exec("tar --version",[],{ignoreReturnCode:!0,silent:!0,listeners:{stdout(e){return o+=""+e},stderr(e){return o+=""+e}}}),Rr.debug(o.trim());const n=o.toUpperCase().includes("GNU TAR");let s;s=r instanceof Array?r:[r],Rr.isDebug()&&!r.includes("v")&&s.push("-v");let i=t,a=e;return Kr&&n&&(s.push("--force-local"),i=t.replace(/\\/g,"/"),a=e.replace(/\\/g,"/")),n&&(s.push("--warning=no-unknown-keyword"),s.push("--overwrite")),s.push("-C",i,"-f",a),yield Fr.exec("tar",s),t}))},br.extractXar=function(e,t,r=[]){return _r(this,void 0,void 0,(function*(){let o;he.ok(Qr,"extractXar() not supported on current OS"),he.ok(e,'parameter "file" is required'),t=yield b(t),o=r instanceof Array?r:[r],o.push("-x","-C",t,"-f",e),Rr.isDebug()&&o.push("-v");const n=yield Cr.which("xar",!0);var s;return yield Fr.exec(`"${n}"`,(s=o,Array.from(new Set(s)))),t}))},br.extractZip=function(e,t){return _r(this,void 0,void 0,(function*(){if(!e)throw Error("parameter 'file' is required");return t=yield b(t),Kr?yield function(e,t){return _r(this,void 0,void 0,(function*(){const r=e.replace(/'/g,"''").replace(/"|\n|\r/g,""),o=t.replace(/'/g,"''").replace(/"|\n|\r/g,""),n=yield Cr.which("pwsh",!1);if(n){const e=["-NoLogo","-NoProfile","-NonInteractive","-ExecutionPolicy","Unrestricted","-Command",["$ErrorActionPreference = 'Stop' ; try { Add-Type -AssemblyName System.IO.Compression.ZipFile } catch { } ;",`try { [System.IO.Compression.ZipFile]::ExtractToDirectory('${r}', '${o}', $true) }`,`catch { if (($_.Exception.GetType().FullName -eq 'System.Management.Automation.MethodException') -or ($_.Exception.GetType().FullName -eq 'System.Management.Automation.RuntimeException') ){ Expand-Archive -LiteralPath '${r}' -DestinationPath '${o}' -Force } else { throw $_ } } ;`].join(" ")];Rr.debug("Using pwsh at path: "+n),yield Fr.exec(`"${n}"`,e)}else{const e=["-NoLogo","-Sta","-NoProfile","-NonInteractive","-ExecutionPolicy","Unrestricted","-Command",["$ErrorActionPreference = 'Stop' ; try { Add-Type -AssemblyName System.IO.Compression.FileSystem } catch { } ;",`if ((Get-Command -Name Expand-Archive -Module Microsoft.PowerShell.Archive -ErrorAction Ignore)) { Expand-Archive -LiteralPath '${r}' -DestinationPath '${o}' -Force }`,`else {[System.IO.Compression.ZipFile]::ExtractToDirectory('${r}', '${o}', $true) }`].join(" ")],t=yield Cr.which("powershell",!0);Rr.debug("Using powershell at path: "+t),yield Fr.exec(`"${t}"`,e)}}))}(e,t):yield function(e,t){return _r(this,void 0,void 0,(function*(){const r=yield Cr.which("unzip",!0),o=[e];Rr.isDebug()||o.unshift("-q"),o.unshift("-o"),yield Fr.exec(`"${r}"`,o,{cwd:t})}))}(e,t),t}))},br.cacheDir=function(e,t,r,o){return _r(this,void 0,void 0,(function*(){if(r=jr.clean(r)||r,o=o||Ir.arch(),Rr.debug(`Caching tool ${t} ${r} ${o}`),Rr.debug("source dir: "+e),!Tr.statSync(e).isDirectory())throw Error("sourceDir is not a directory");const n=yield S(t,r,o);for(const t of Tr.readdirSync(e)){const r=Nr.join(e,t);yield Cr.cp(r,n,{recursive:!0})}return P(t,r,o),n}))},br.cacheFile=function(e,t,r,o,n){return _r(this,void 0,void 0,(function*(){if(o=jr.clean(o)||o,n=n||Ir.arch(),Rr.debug(`Caching tool ${r} ${o} ${n}`),Rr.debug("source file: "+e),!Tr.statSync(e).isFile())throw Error("sourceFile is not a file");const s=yield S(r,o,n),i=Nr.join(s,t);return Rr.debug("destination file "+i),yield Cr.cp(e,i),P(r,o,n),s}))},br.find=(e,t,r)=>{if(!e)throw Error("toolName parameter is required");if(!t)throw Error("versionSpec parameter is required");r=r||Ir.arch(),O(t)||(t=_(E(e,r),t));let o="";if(t){t=jr.clean(t)||"";const n=Nr.join($(),e,t,r);Rr.debug("checking cache: "+n),Tr.existsSync(n)&&Tr.existsSync(n+".complete")?(Rr.debug(`Found tool in cache ${e} ${t} ${r}`),o=n):Rr.debug("not found")}return o},br.findAllVersions=E,br.getManifestFromRepo=function(e,t,r,o="master"){return _r(this,void 0,void 0,(function*(){let n=[];const s=`https://api.github.com/repos/${e}/${t}/git/trees/${o}`,i=new Lr.HttpClient("tool-cache"),a={};r&&(Rr.debug("set auth"),a.authorization=r);const c=yield i.getJson(s,a);if(!c.result)return n;let l="";for(const e of c.result.tree)if("versions-manifest.json"===e.path){l=e.url;break}a.accept="application/vnd.github.VERSION.raw";let u=yield(yield i.get(l,a)).readBody();if(u){u=u.replace(/^\uFEFF/,"");try{n=JSON.parse(u)}catch(e){Rr.debug("Invalid json")}}return n}))},br.findFromManifest=function(e,t,r,o=Ir.arch()){return _r(this,void 0,void 0,(function*(){return yield Ar._findMatch(e,t,r,o)}))},br.isExplicitVersion=O,br.evaluateVersions=_,Ce=Re("6FGZZ");var eo=Re("ju11K"),to=Re("5M2Mq"),ro=(Ce=Re("6FGZZ"),{});const{Worker:oo}=(()=>{try{return $e68279e3338bc371$import$ad18b0afc1a10da7}catch(e){return{}}})();let no,so=0;const io=new Map,ao=(e,t,r)=>new Promise(((o,n)=>{const s=so++;io.set(s,{resolve:o,reject:n}),void 0===no&&(no=new oo(ue.join(__dirname,"thread.js")),no.on("message",(e=>{const t=io.get(e.id);io.delete(e.id),0===io.size&&no.unref(),void 0===e.error?t.resolve(e.value):t.reject((e=>{const t=Error(e.message);for(const[r,o]of Object.entries(e))"message"!==r&&(t[r]=o);return t})(e.error))})),no.on("error",(e=>{throw e}))),no.ref(),no.postMessage({id:s,method:e,args:t},r)})),co=(e,t={})=>{let r=t.encoding||"hex";"buffer"===r&&(r=void 0);const o=Ee.createHash(t.algorithm||"sha512"),n=e=>{o.update(e,"string"==typeof e?"utf8":void 0)};return Array.isArray(e)?e.forEach(n):n(e),o.digest(r)};co.stream=(e={})=>{let t=e.encoding||"hex";"buffer"===t&&(t=void 0);const r=Ee.createHash(e.algorithm||"sha512");return r.setEncoding(t),r},co.fromStream=async(e,t={})=>{if(!Ut(e))throw new TypeError("Expected a stream");return new Promise(((r,o)=>{e.on("error",o).pipe(co.stream(t)).on("error",o).on("finish",(function(){r(this.read())}))}))},void 0===oo?(co.fromFile=async(e,t)=>co.fromStream(pe.createReadStream(e),t),co.async=async(e,t)=>co(e,t)):(co.fromFile=async(e,{algorithm:t="sha512",encoding:r="hex"}={})=>{const o=await ao("hashFile",[t,e]);return"buffer"===r?Buffer.from(o):Buffer.from(o).toString(r)},co.async=async(e,{algorithm:t="sha512",encoding:r="hex"}={})=>{"buffer"===r&&(r=void 0);const o=await ao("hash",[t,e]);return void 0===r?Buffer.from(o):Buffer.from(o).toString(r)}),co.fromFileSync=(e,t)=>co(pe.readFileSync(e),t),ro=co,Ce=Re("6FGZZ"),Ce=Re("6FGZZ");var lo=Re("hBwzM");const uo="win32"===process.platform,po="linux"===process.platform,ho=["x86","x64"],fo=["win32","win64"];lo=Re("hBwzM");const mo=(Ce=Re("6FGZZ")).getInput("token"),vo=mo&&"GITHUB.COM"===new URL(process.env.GITHUB_SERVER_URL||"https://github.com").hostname.toUpperCase()?"token "+mo:void 0,go="https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json";Ce=Re("6FGZZ"),Ce=Re("6FGZZ"),lo=Re("hBwzM");var yo=Re("9AGbw"),xo=(lo=Re("hBwzM"),Ce=Re("6FGZZ"),Re("1wyqe"));let wo,Eo;Ce=Re("6FGZZ"),eo=Re("ju11K");var bo=Re("k3zcS"),So=Re("q05Mr");const Po=(e=>{const t=new Set(e);for(const r of e)t.add(/^\d+/.exec(r)[0]),t.add(/^\d+\.\d+/.exec(r)[0]);return t})(["3.5.0","3.5.1","3.5.2","3.6.0","3.6.1","3.6.2","3.7.0","3.7.1","3.8.0","3.8.1","3.9.0","3.9.1","4.0.0","4.0.1","5.0.0","5.0.1","5.0.2","6.0.0","6.0.1","7.0.0","7.0.1","7.1.0","8.0.0","8.0.1","9.0.0","9.0.1","10.0.0","10.0.1","11.0.0","11.0.1","11.1.0","12.0.0","12.0.1"]),Oo=new Set(["3.5.1","3.6.1","3.6.2","3.7.1","3.8.1","3.9.1","6.0.1","7.0.1","7.1.0","8.0.1","11.0.1","11.1.0","12.0.1"]),_o=new Map([["12.0.1","12.0.1-rc4"]]),$o={"3.5.0":"-ubuntu-14.04","3.5.1":"","3.5.2":"-ubuntu-14.04","3.6.0":"-ubuntu-14.04","3.6.1":"-ubuntu-14.04","3.6.2":"-ubuntu-14.04","3.7.0":"-ubuntu-14.04","3.7.1":"-ubuntu-14.04","3.8.0":"-ubuntu-16.04","3.8.1":"-ubuntu-16.04","3.9.0":"-ubuntu-16.04","3.9.1":"-ubuntu-16.04","4.0.0":"-ubuntu-16.04","5.0.0":"-ubuntu16.04","5.0.1":"-ubuntu-16.04","5.0.2":"-ubuntu-16.04","6.0.0":"-ubuntu-16.04","6.0.1":"-ubuntu-16.04","7.0.0":"-ubuntu-16.04","7.0.1":"-ubuntu-18.04","7.1.0":"-ubuntu-14.04","8.0.0":"-ubuntu-18.04","9.0.0":"-ubuntu-18.04","9.0.1":"-ubuntu-16.04","10.0.0":"-ubuntu-18.04","10.0.1":"-ubuntu-16.04","11.0.0":"-ubuntu-20.04","11.0.1":"-ubuntu-16.04","11.1.0":"-ubuntu-16.04","12.0.0":"-ubuntu-20.04","12.0.1-rc4":"-ubuntu-21.04"},Ro=new Set(["10.0.1"]);var Co;Ce=Re("6FGZZ"),Re.register("jJT7R",((e,r)=>{function o(e){return-1!=["PATH","INCLUDE","LIB","LIBPATH"].indexOf(e.toUpperCase())}function n(e,t,r,n,s){if("win32"!=Pe.platform)return void i.info("This is not a Windows virtual environment, bye!");Pe.env.PATH+=ue.delimiter+u;let p={win32:"x86",win64:"x64",x86_64:"x64","x86-64":"x64"};e.toLowerCase()in p&&(e=p[e.toLowerCase()]);var d=[e];"true"==n&&d.push("uwp"),t&&d.push(t),r&&d.push("-vcvars_ver="+r),"true"==s&&d.push("-vcvars_spectre_libs=spectre");const h=`"${(()=>{let e=(e=>{try{return(""+de.execSync("vswhere -products * -latest -prerelease -property installationPath")).trim()+"\\VC\\Auxiliary\\Build\\vcvarsall.bat"}catch(e){i.warning("vswhere failed: "+e)}return null})();if(e&&pe.existsSync(e))return i.info("Found with vswhere: "+e),e;i.info("Not found with vswhere");for(const t of l)for(const r of c)if(e=`${a}\\Microsoft Visual Studio\\${t}\\${r}\\VC\\Auxiliary\\Build\\vcvarsall.bat`,i.info("Trying standard location: "+e),pe.existsSync(e))return i.info("Found standard location: "+e),e;if(i.info("Not found in standard locations"),e=a+"\\Microsoft Visual C++ Build Tools\\vcbuildtools.bat",pe.existsSync(e))return i.info("Found VS 2015: "+e),e;throw i.info("Not found in VS 2015 location: "+e),Error("Microsoft Visual Studio not found")})()}" ${d.join(" ")}`;i.debug("vcvars command-line: "+h);const f=(""+de.execSync(`set && cls && ${h} && cls && set`,{shell:"cmd"})).split("\f"),m=f[0].split("\r\n"),v=f[1].split("\r\n"),g=f[2].split("\r\n"),y=v.filter((e=>!(!e.match(/^\[ERROR.*\]/)||e.match(/Error in script usage. The correct usage is:$/))));if(y.length>0)throw Error("invalid parameters\r\n"+y.join("\r\n"));let x={};for(let e of m){const[t,r]=e.split("=");x[t]=r}i.startGroup("Environment variables");for(let e of g){if(!e.includes("="))continue;let[t,r]=e.split("=");r!==x[t]&&(i.info("Setting "+t),o(t)&&(r=r.split(";").filter(((e,t,r)=>r.indexOf(e)===t)).join(";")),i.exportVariable(t,r))}i.endGroup(),i.info("Configured Developer Command Prompt")}var s;t(e.exports,"setupMSVCDevCmd",(()=>s),(e=>s=e));var i=Re("k2PtG");const a=Pe.env["ProgramFiles(x86)"],c=["Enterprise","Professional","Community"],l=["2019","2017"],u=a+"\\Microsoft Visual Studio\\Installer";s=n;try{n(i.getInput("arch"),i.getInput("sdk"),i.getInput("toolset"),i.getInput("uwp"),i.getInput("spectre"))}catch(e){i.setFailed("Could not setup Developer Command Prompt: "+e.message)}})),Re.register("k2PtG",(function(e,t){"use strict";function r(e){a.issue("error",e instanceof Error?""+e:e)}function o(e){a.issue("group",e)}function n(){a.issue("endgroup")}var s=e.exports&&e.exports.__awaiter||((e,t,r,o)=>new(r||(r=Promise))(((n,s)=>{function i(e){try{c(o.next(e))}catch(e){s(e)}}function a(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(i,a)}c((o=o.apply(e,t||[])).next())}))),i=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t});Object.defineProperty(e.exports,"__esModule",{value:!0});var a=Re("lTVmt"),c=Re("48DC3"),l=Re("3tRAC");const u=i(le),p=i(ue);var d,h;(h=d=e.exports.ExitCode||(e.exports.ExitCode={}))[h.Success=0]="Success",h[h.Failure=1]="Failure",e.exports.exportVariable=(e,t)=>{const r=l.toCommandValue(t);if(process.env[e]=r,process.env.GITHUB_ENV){const t="_GitHubActionsFileCommandDelimeter_";c.issueCommand("ENV",`${e}<<${t}${u.EOL}${r}${u.EOL}${t}`)}else a.issueCommand("set-env",{name:e},r)},e.exports.setSecret=e=>{a.issueCommand("add-mask",{},e)},e.exports.addPath=e=>{process.env.GITHUB_PATH?c.issueCommand("PATH",e):a.issueCommand("add-path",{},e),process.env.PATH=`${e}${p.delimiter}${process.env.PATH}`},e.exports.getInput=(e,t)=>{const r=process.env["INPUT_"+e.replace(/ /g,"_").toUpperCase()]||"";if(t&&t.required&&!r)throw Error("Input required and not supplied: "+e);return r.trim()},e.exports.setOutput=(e,t)=>{a.issueCommand("set-output",{name:e},t)},e.exports.setCommandEcho=e=>{a.issue("echo",e?"on":"off")},e.exports.setFailed=e=>{process.exitCode=d.Failure,r(e)},e.exports.isDebug=()=>"1"===process.env.RUNNER_DEBUG,e.exports.debug=e=>{a.issueCommand("debug",{},e)},e.exports.error=r,e.exports.warning=e=>{a.issue("warning",e instanceof Error?""+e:e)},e.exports.info=e=>{process.stdout.write(e+u.EOL)},e.exports.startGroup=o,e.exports.endGroup=n,e.exports.group=function(e,t){return s(this,void 0,void 0,(function*(){let r;o(e);try{r=yield t()}finally{n()}return r}))},e.exports.saveState=(e,t)=>{a.issueCommand("save-state",{name:e},t)},e.exports.getState=e=>process.env["STATE_"+e]||""})),Re.register("lTVmt",(function(e,t){"use strict";function r(e,t,r){const o=new i(e,t,r);process.stdout.write(""+o+n.EOL)}var o=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t});Object.defineProperty(e.exports,"__esModule",{value:!0});const n=o(le);var s=Re("3tRAC");e.exports.issueCommand=r,e.exports.issue=(e,t="")=>{r(e,{},t)};class i{constructor(e,t,r){e||(e="missing.command"),this.command=e,this.properties=t,this.message=r}toString(){let e="::"+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let r=!0;for(const o in this.properties)if(this.properties.hasOwnProperty(o)){const n=this.properties[o];n&&(r?r=!1:e+=",",e+=`${o}=${t=n,s.toCommandValue(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}`)}}var t;return e+="::"+(e=>s.toCommandValue(this.message).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A"))(),e}}})),Re.register("3tRAC",((e,t)=>{"use strict";Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.toCommandValue=e=>null==e?"":"string"==typeof e||e instanceof String?e:JSON.stringify(e)})),Re.register("48DC3",((e,t)=>{"use strict";var r=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t});Object.defineProperty(e.exports,"__esModule",{value:!0});const o=r(pe),n=r(le);var s=Re("3tRAC");e.exports.issueCommand=(e,t)=>{const r=process.env["GITHUB_"+e];if(!r)throw Error("Unable to find environment variable for file command "+e);if(!o.existsSync(r))throw Error("Missing file at path: "+r);o.appendFileSync(r,`${s.toCommandValue(t)}${n.EOL}`,{encoding:"utf8"})}}));const To=le.homedir();Co=e=>{if("string"!=typeof e)throw new TypeError("Expected a string, got "+typeof e);return To?e.replace(/^~(?=$|\/|\\)/,To):e};var Ao=Re("1JJDJ");const Io={msvc:"2019",llvm:"11.1.0",ninja:"1.10.2",cmake:"3.20.2",gcovr:"5.0",conan:"1.40.1",meson:"0.59.1",python:"3.9.7",gcc:"win32"===process.platform?"11.2.0":"11"};Ce=Re("6FGZZ"),bo=Re("k3zcS"),to=Re("5M2Mq"),Ce=Re("6FGZZ");const No={cmake(e,t,r){return A("cmake",e,I,t)},ninja(e,t,r){return A("ninja",e,ee,t)},python:B,conan(e,t,r){return H("conan",e)},meson(e,t,r){return H("meson",e)},gcovr(e,t,r){return H("gcovr",e)},async opencppcoverage(e,t,r){if("win32"!==process.platform)return;await x("opencppcoverage",e);const o="C:/Program Files/OpenCppCoverage";return await g(o),{binDir:o}},llvm:K,gcc:ne,choco:y,brew:o,ccache(e,t,r){switch(process.platform){case"win32":return x("ccache",e);case"darwin":return v("ccache",e);case"linux":return m("ccache",e);default:throw Error("Unsupported platform")}},async doxygen(e,t,r){switch(process.platform){case"win32":{await x("doxygen.install",e),await x("graphviz",e),await g("C:/Program Files/Graphviz/bin");const t="C:/Program Files/doxygen/bin";return await g(t),{binDir:t}}case"darwin":return v("doxygen",e),v("graphviz",e);case"linux":return await m("doxygen",e),m("graphviz",e);default:throw Error("Unsupported platform")}},async cppcheck(e,t,r){switch(process.platform){case"win32":{await x("cppcheck",e);const t="C:/Program Files/Cppcheck";return await g(t),{binDir:t}}case"darwin":return v("cppcheck",e);case"linux":return m("cppcheck",e);default:throw Error("Unsupported platform")}},msvc:Q},Lo=["choco","brew","python","cmake","ninja","conan","meson","gcovr","opencppcoverage","ccache","doxygen","cppcheck","llvm","gcc","msvc"],jo=["compiler","architecture",...Lo];ie(process.argv).then((e=>{process.exitCode=e})).catch((e=>{se("main() panicked!"),se(e),process.exitCode=1}));
//# sourceMappingURL=setup_cpp.js.map