setup-cpp/dist/setup_cpp.js

3 lines
152 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,t,r,n){Object.defineProperty(e,t,{get:r,set:n,enumerable:!0,configurable:!0})}function t(e){return e&&e.__esModule?e.default:e}function r(e,t,r){return ht(this,void 0,void 0,(function*(){const n=ft.argStringToArray(e);if(0===n.length)throw Error("Parameter 'commandLine' cannot be null or empty.");const o=n[0];return t=n.slice(1).concat(t||[]),new ft.ToolRunner(o,t,r).exec()}))}function n(e,t){const r=[];t=t||rt.arch();const n=nt.join(l(),e);if(et.existsSync(n)){const e=et.readdirSync(n);for(const o of e)if(a(o)){const e=nt.join(n,o,t||"");et.existsSync(e)&&et.existsSync(e+".complete")&&r.push(o)}}return r}function o(e){return Je(this,void 0,void 0,(function*(){return e||(e=nt.join(u(),ct.default())),yield Qe.mkdirP(e),e}))}function i(e,t,r){return Je(this,void 0,void 0,(function*(){const n=nt.join(l(),e,it.clean(t)||t,r||"");Ze.debug("destination "+n);const o=n+".complete";return yield Qe.rmRF(n),yield Qe.rmRF(o),yield Qe.mkdirP(n),n}))}function s(e,t,r){const n=nt.join(l(),e,it.clean(t)||t,r||"");et.writeFileSync(n+".complete",""),Ze.debug("finished caching tool")}function a(e){const t=it.clean(e)||"";Ze.debug("isExplicit: "+t);const r=null!=it.valid(t);return Ze.debug("explicit? "+r),r}function c(e,t){let r="";Ze.debug(`evaluating ${e.length} versions`);for(let n=(e=e.sort(((e,t)=>it.gt(e,t)?1:-1))).length-1;n>=0;n--){const o=e[n];if(it.satisfies(o,t)){r=o;break}}return Ze.debug(r?"matched: "+r:"match not found"),r}function l(){const e=process.env.RUNNER_TOOL_CACHE||"";return Ne.ok(e,"Expected RUNNER_TOOL_CACHE to be defined"),e}function u(){const e=process.env.RUNNER_TEMP||"";return Ne.ok(e,"Expected RUNNER_TEMP to be defined"),e}function p(e,t){const r=qe[e];return void 0!==r?r:t}function d(){return"true"===process.env.CI&&"true"===process.env.GITHUB_ACTIONS}function h(e){return d()?Pt.error(e):console.log(`${e}`)}function f(e){return d()?Pt.warning(e):console.log(`${e}`)}function m(e,t,r){if("function"==typeof t&&(r=t,t={}),!r){if("function"!=typeof Promise)throw new TypeError("callback not provided");return new Promise(((r,n)=>{m(e,t||{},((e,t)=>{e?n(e):r(t)}))}))}It(e,t||{},((e,n)=>{e&&("EACCES"===e.code||t&&t.ignoreErrors)&&(e=null,n=!1),r(e,n)}))}function v(e,r,n){if(!["darwin","linux"].includes(process.platform))return;if("string"==typeof Nt)return{binDir:Nt};const o=t(Ot).sync("brew",{nothrow:!0});return null!==o?(Nt=$e.dirname(o),{binDir:Nt}):(De.execFileSync('/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"',{stdio:"inherit"}),Nt="/usr/local/bin/",{binDir:Nt})}function g(e,t){const r=e.options.env||process.env,n=process.cwd(),o=null!=e.options.cwd,i=o&&void 0!==process.chdir&&!process.chdir.disabled;if(i)try{process.chdir(e.options.cwd)}catch(e){}let s;try{s=Ot.sync(e.command,{path:r[Ft({env:r})],pathExt:t?$e.delimiter:void 0})}catch(e){}finally{i&&process.chdir(n)}return s&&(s=$e.resolve(o?e.options.cwd:"",s)),s}function y(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 x(e,t){return zt&&1===e&&!t.file?y(t.original,"spawn"):null}function w(e,t,r){const n=jt(e,t,r),o=De.spawn(n.command,n.args,n.options);return Xt.hookChildProcess(o,n),o}async function b(e,t){if(!e)throw Error("Expected a stream");t={maxBuffer:1/0,...t};const{maxBuffer:r}=t,n=Br(t);return await new Promise(((t,o)=>{const i=e=>{e&&n.getBufferedLength()<=Xr.MAX_LENGTH&&(e.bufferedData=n.getBufferedValue()),o(e)};(async()=>{try{await Yr(e,n),t()}catch(e){i(e)}})(),n.on("data",(()=>{n.getBufferedLength()>r&&i(new Jr)}))})),n.getBufferedValue()}function E(){var e;return void 0!==wn||(wn=(!!process.env.CI||0===(null===(e=process.getuid)||void 0===e?void 0:e.call(process)))&&null!==t(Ot).sync("sudo",{nothrow:!0})),wn}function S(e,r,n){return E()?t(Dt).command("sudo "+[e,...r].map((e=>`'${e}'`)).join(" "),{shell:!0,cwd:n,stdio:"inherit"}):t(Dt)(e,r,{stdio:"inherit"})}async function P(e,t,r=!0){Pt.info(`Installing ${e} ${null!=t?t:""} via apt`);const n="apt-get";if(process.env.DEBIAN_FRONTEND="noninteractive",bn||(await S(n,["update","-y"]),bn=!0),En||(await S(n,["install","--fix-broken","-y","software-properties-common","apt-utils","ca-certificates","gnupg"]),await S("apt-key",["adv","--keyserver","keyserver.ubuntu.com","--recv-keys","3B4FE6ACC0B21F32"]),await S("apt-key",["adv","--keyserver","keyserver.ubuntu.com","--recv-keys","40976EAF437D05B5"]),await S("apt-key",["adv","--keyserver","keyserver.ubuntu.com","--recv-keys","1E9377A2BA9EF27F"]),En=!0),Array.isArray(r)){for(const e of r)await S("add-apt-repository",["--update","-y",e]);await S(n,["update","-y"])}if(void 0!==t&&""!==t)try{await S(n,["install","--fix-broken","-y",`${e}=${t}`])}catch{await S(n,["install","--fix-broken","-y",`${e}-${t}`])}else await S(n,["install","--fix-broken","-y",e]);return{binDir:"/usr/bin/"}}function O(e,r){return Pt.info(`Installing ${e} ${null!=r?r:""} via brew`),Sn&&null!==t(Ot).sync("brew",{nothrow:!0})||(v(0,0,process),Sn=!0),t(Dt).sync("brew",["install",void 0!==r&&""!==r?`${e}@${r}`:e],{stdio:"inherit"}),{binDir:"/usr/local/bin/"}}function _(e){return E()&&"string"==typeof process.env.SUDO_USER?$e.join("/home/",process.env.SUDO_USER,e):t(Pn)("~/"+e)}function $(e){if(void 0===_n){const e=t(Ot).sync("pwsh",{nothrow:!0});null!==e&&(_n=e);const r=t(Ot).sync("powershell",{nothrow:!0});null!==r&&(_n=r)}if(void 0===_n)throw Error("Could not find powershell");t(Dt).sync(_n,["-c",e],{stdio:"inherit"})}function I(e,t){try{d()?Pt.exportVariable(e,t):C(e,t)}catch(r){try{return h(r),C(e,t)}catch(e){h(e)}h(`Failed to export environment variable ${e}=${t}. You should add it manually.`)}}function R(e){process.env.PATH=`${e}${$e.delimiter}${process.env.PATH}`;try{d()?Pt.addPath(e):T(e)}catch(t){try{return h(t),T(e)}catch(e){h(e)}h(`Failed to add ${e} to the percistent PATH. You should add it manually.`)}}function C(e,t){const r=null!=t?t:"";switch(process.platform){case"win32":return $(`[Environment]::SetEnvironmentVariable("${e}", "${r}", "User")`),void Pt.info(`${e}="${r} was set in the environment."`);case"linux":case"darwin":return A(),Ie.appendFileSync($n,`\nexport ${e}="${r}"\n`),void Pt.info(`${e}="${r} was added to "${$n}"`)}process.env[e]=r}function T(e){switch(process.platform){case"win32":return $(`$USER_PATH=([Environment]::GetEnvironmentVariable("PATH", "User")); [Environment]::SetEnvironmentVariable("PATH", "${e};$USER_PATH", "User")`),void Pt.info(e+" was added to the PATH.");case"linux":case"darwin":return A(),Ie.appendFileSync($n,`\nexport PATH=${e}:$PATH\n`),void Pt.info(`${e} was added to "${$n}"`);default:return}}function A(){if(Rn)return;const e="export SOURCE_CPPRC=0";if(Ie.existsSync($n)&&Ie.readFileSync($n,"utf8").includes(e))return;Ie.appendFileSync($n,`\n${e}\n`),Pt.info(`Added ${e} to ${$n}`);const t=`\n# source .cpprc if SOURCE_CPPRC is not set to 0\nif [[ "$SOURCE_CPPRC" != 0 && -f "${$n}" ]]; then source "${$n}"; fi\n`;try{const e=_(".profile");Ie.appendFileSync(e,t),Pt.info(`${t} was added to ${e}`);const r=_(".bashrc");Ie.appendFileSync(r,t),Pt.info(`${t} was added to ${r}`)}catch(e){f(`Failed to add ${t} to .profile or .bashrc. You should add it manually: ${e}`)}Rn=!0}function N(e,r,n){if("win32"!==process.platform)return;if("string"==typeof In)return{binDir:In};const o=t(Ot).sync("choco",{nothrow:!0});if(null!==o)return In=$e.dirname(o),{binDir:In};let i="powershell.exe";const s=t(Ot).sync(process.env.SystemRoot+"\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",{nothrow:!0});null!==s&&(i=s),t(Dt).sync(i,["-NoProfile","-InputFormat","None","-ExecutionPolicy","Bypass","-Command","[System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))"],{stdio:"inherit"}),R(process.env.ALLUSERSPROFILE+"\\chocolatey\\bin");const a=t(Ot).sync("choco",{nothrow:!0});var c;return In=null!==a?$e.dirname(a):(null!==(c=process.env.ChocolateyInstall)&&void 0!==c?c:"C:/ProgramData/chocolatey")+"/bin",Ie.existsSync(In)?{binDir:In}:void 0}function k(e,r,n=[]){Pt.info(`Installing ${e} ${null!=r?r:""} via chocolatey`),Cn&&null!==t(Ot).sync("choco",{nothrow:!0})||(N(0,0,process),Cn=!0);const o=process.env.PATH,i={...process.env};var s;delete i.TMP,delete i.TEMP,delete i.Path,i.PATH=o,t(Dt).sync("choco",void 0!==r&&""!==r?["install","-y",e,"--version="+r,...n]:["install","-y",e,...n],{env:i,extendEnv:!1,stdio:"inherit"});const a=(null!==(s=process.env.ChocolateyInstall)&&void 0!==s?s:"C:/ProgramData/chocolatey")+"/bin";return R(a),{binDir:a}}function D(e){return"win32"===process.platform?e+".exe":e}function L(e){return"win32"===process.platform?e+".bat":e+".sh"}function j(e,t,r){switch(process.platform){case"win32":return k("7zip",e);case"darwin":return O("p7zip",e);case"linux":return P("p7zip-full",e);default:throw Error("Unsupported platform")}}async function F(e,r){return void 0===An&&(null===t(Ot).sync("7z",{nothrow:!0})&&await j("",0,process),An="7z"),await t(Dt)(An,["x",e,"-o"+r],{stdio:"inherit"}),r}async function M(e,r,n=["--strip-components=0"]){try{await Tn.mkdirP(r)}catch{}try{await t(Dt)("tar",["xf",e,"-C",r,...n],{stdio:"inherit"})}catch(t){"win32"===process.platform&&t.message.includes("Can't create '\\\\?\\C:")&&f(`Failed to extract symlink ${e} to ${r}. Ignoring this symlink.`)}return r}async function U(e,t,r,n,o){var i,s;Pt.info(`Installing ${e} ${t} ${o} via direct downloading`),process.env.RUNNER_TEMP=null!==(i=process.env.RUNNER_TEMP)&&void 0!==i?i:_e.tmpdir(),process.env.RUNNER_TOOL_CACHE=null!==(s=process.env.RUNNER_TOOL_CACHE)&&void 0!==s?s:$e.join(_e.tmpdir(),"setup-cpp","hostedtoolcache");const{url:a,binRelativeDir:c,binFileName:l,extractedFolderName:u,extractFunction:p}=await r(t,process.platform,o);if(d())try{const r=We.find(e,t);if(r){const n=$e.join(r,u),o=$e.join(n,c);if(Ie.existsSync(o)&&Ie.existsSync($e.join(o,l)))return Pt.info(`${e} ${t} was found in the cache at ${o}.`),R(o),{installDir:n,binDir:o}}}catch{}const h=$e.join(n,u),f=$e.join(h,c),m=$e.join(f,l);if(!Ie.existsSync(f)||!Ie.existsSync(m)){Pt.info(`Download and extract ${e} ${t}`),Nn||("linux"===process.platform&&(await P("unzip"),await P("tar"),await P("xz-utils")),Nn=!0);try{const e=await We.downloadTool(a);await(null==p?void 0:p(e,n))}catch(r){throw Error(`Failed to download ${e} ${t} ${o}: ${r}`)}}return Pt.info(`Add ${f} to PATH`),R(f),d()&&"string"==typeof process.env.RUNNER_TOOL_CACHE&&await We.cacheDir(n,e,t),{installDir:h,binDir:f}}function G(e,t,r){const n=(e=>"win32"===e?"windows":e)(t),o=(e=>{switch(e){case"x64":return"amd64";case"ia32":case"x86":case"i386":case"x32":return"386";default:return e}})(r),i="win32"===t,s=i?"zip":"tar.gz";return{binRelativeDir:"",binFileName:D("task"),extractedFolderName:"",extractFunction:i?We.extractZip:M,url:`https://github.com/go-task/task/releases/download/v${e}/task_${n}_${o}.${s}`}}function q(e,r,n){var o;const i=null!==(o=t(Dn)(e))&&void 0!==o?o:e;switch(r){case"win32":{const r=t(kn)(i,"v3.19.6");let o;o=["ia32","x86","i386","x32"].includes(n)?r?"win32-x86":"windows-i386":r?"win64-x64":"windows-x86_64";const s=`cmake-${e}-${o}`;return{binRelativeDir:"bin/",binFileName:D("cmake"),extractedFolderName:s,extractFunction:We.extractZip,url:`https://github.com/Kitware/CMake/releases/download/v${e}/${s}.zip`}}case"darwin":{const r=`cmake-${e}-${t(kn)(i,"v3.19.1")?"Darwin-x86_64":"macos-universal"}`;return{binRelativeDir:"CMake.app/Contents/bin/",binFileName:D("cmake"),extractedFolderName:r,extractFunction:We.extractTar,url:`https://github.com/Kitware/CMake/releases/download/v${e}/${r}.tar.gz`}}case"linux":{const r=t(kn)(i,"v3.19.8");let o;o=["aarch64"].includes(n)?r?"Linux-aarch64":"linux-aarch64":r?"Linux-x86_64":"linux-x86_64";const s=`cmake-${e}-${o}`;return{binRelativeDir:"bin/",binFileName:D("cmake"),extractedFolderName:s,extractFunction:We.extractTar,url:`https://github.com/Kitware/CMake/releases/download/v${e}/${s}.tar.gz`}}default:throw Error(`Unsupported platform '${r}'`)}}function V(e,t,r){return U("cmake",e,q,t,r)}function H(e,t,r){if(!d())return B(e,t);try{const{setupActionsPython:n}=Be("apy8x");return n(e,t,r)}catch(r){return Pt.warning(r),B(e,t)}}async function B(e,t,r){switch(process.platform){case"win32":return t?k("python3",e,["--params=/InstallDir:"+t]):k("python3",e),Pt.info(`Add ${n=t} to PATH`),R(n),{installDir:t,binDir:t};case"darwin":return O("python3",e);case"linux":{const t=await P("python3",e);return await P("python3-pip"),t}default:throw Error("Unsupported platform")}var n}function W(e){return new Promise((t=>{Ce.get(e,(e=>{t(void 0!==e.statusCode&&e.statusCode>=200&&399>=e.statusCode)}))}))}function X(e,t){return"true"===t||void 0===t&&e in Fn?Fn[e]:null!=t?t:""}async function z(e,r){if(Pt.info(`Installing ${e} ${null!=r?r:""} via pip`),void 0===Mn){if(null!==t(Ot).sync("python3",{nothrow:!0}))Mn="python3";else{if(null===t(Ot).sync("python",{nothrow:!0})||!await(async(e,r,n=/v?(\d\S*)/)=>{const o=await(async(e,t=/v?(\d\S*)/)=>{try{var r;const n=await lt.getExecOutput(e,["--version"]);return null===(r=(n.stdout||n.stderr||"").trim().match(t))||void 0===r?void 0:r[1]}catch(e){return void console.error(e)}})(e,n);return"string"==typeof o&&"string"==typeof r&&""!==o&&""!==r&&-1!==t(Ln)(o,r)})("python","3.0.0")){if(Pt.info("python3 was not found. Installing python"),await H(X("python",void 0),"",process.arch),Gn)throw Error("Failed to install python");return Gn=!0,z(e,r)}Mn="python"}"win32"===process.platform?t(Dt).sync(Mn,["-m","pip","install","-U","pip==21.3.1"],{stdio:"inherit"}):"linux"===process.platform&&await P("python3-pip")}if(t(Dt).sync(Mn,["-m","pip","install",void 0!==r&&""!==r?`${e}==${r}`:e],{stdio:"inherit"}),void 0===Un){if("linux"===process.platform)Un="/home/runner/.local/bin/";else if("darwin"===process.platform)Un="/usr/local/bin/";else try{Un=$e.join((await lt.getExecOutput(Mn+' -c "import sys;print(sys.base_exec_prefix);"')).stdout.trim(),"Scripts")}catch{Un=$e.join((await lt.getExecOutput(Mn+' -c "import sys;print(sys.base_exec_prefix);"')).stdout.trim(),"Scripts")}Pt.info(Un+" to PATH"),R(Un)}return{binDir:Un}}function Y(e,t,r){switch(process.platform){case"win32":return k("graphviz",e),(()=>{if("win32"===process.platform){const e="C:/Program Files/Graphviz/bin";return R(e),{binDir:e}}throw Error("Unsupported platform")})();case"darwin":return O("graphviz",e);case"linux":return P("graphviz",e);default:throw Error("Unsupported platform")}}function J(e,t,r){if("linux"===t){const t="doxygen-"+e;return{binRelativeDir:"bin/",binFileName:D("doxygen"),extractedFolderName:t,extractFunction:We.extractTar,url:`https://www.doxygen.nl/files/${t}.linux.bin.tar.gz`}}throw Error(`Unsupported platform '${t}'`)}async function K(){if("darwin"===process.platform)try{const e=await lt.getExecOutput("xcrun --sdk macosx --show-sdk-path"),t=e.stdout||e.stderr;t?I("SDKROOT",t.trim()):h("SDKROOT not set")}catch(e){h(e)}}async function Z(e,r,n){let o;switch(process.platform){case"win32":var i,s;"arm"!==n&&"arm64"!==n||await k("gcc-arm-embedded",e),await k("mingw",e),"x64"===n&&Ie.existsSync("C:/tools/mingw64/bin")?(o="C:/tools/mingw64/bin",R(o)):"ia32"===n&&Ie.existsSync("C:/tools/mingw32/bin")?(o="C:/tools/mingw32/bin",R(o)):Ie.existsSync((null!==(i=process.env.ChocolateyInstall)&&void 0!==i?i:"C:/ProgramData/chocolatey")+"/bin/g++.exe")&&(o=(null!==(s=process.env.ChocolateyInstall)&&void 0!==s?s:"C:/ProgramData/chocolatey")+"/bin");break;case"darwin":o=O("gcc",e).binDir;break;case"linux":"x64"===n?(await P("gcc",e,["deb http://dk.archive.ubuntu.com/ubuntu/ xenial main","deb http://dk.archive.ubuntu.com/ubuntu/ xenial universe","ppa:ubuntu-toolchain-r/test"]),o=(await P("g++",e,[])).binDir):(Pt.info(`Install g++-multilib because gcc for ${n} was requested`),await P("gcc-multilib",e,["deb http://dk.archive.ubuntu.com/ubuntu/ xenial main","deb http://dk.archive.ubuntu.com/ubuntu/ xenial universe","ppa:ubuntu-toolchain-r/test"]),o=(await P("g++-multilib",e,[])).binDir);break;default:throw Error("Unsupported platform for "+n)}if(void 0!==o)return await(async(e,r)=>{if("win32"===process.platform)I("CC",r+"/gcc"),I("CXX",r+"/g++");else{var n;const o=t(qn)(null!==(n=t(Dn)(e))&&void 0!==n?n:e);5>o?(I("CC",`${r}/gcc-${e}`),I("CXX",`${r}/g++-${e}`)):(I("CC",`${r}/gcc-${o}`),I("CXX",`${r}/g++-${o}`))}await K(),d()&&(()=>{const e=t($e).join(__dirname,"gcc_matcher.json");if(!Ie.existsSync(e))return f("the gcc_matcher.json file does not exist in the same folder as setup_cpp.js");Pt.info("::add-matcher::"+e)})()})(e,o),{binDir:o}}function Q(e,t,r){return`https://github.com/llvm/llvm-project/releases/download/llvmorg-${e}/${t}${e}${r}`}function ee(e,t,r){return`https://releases.llvm.org/${e}/${t}${e}${r}`}function te(e,r){switch(e){case"darwin":return(e=>{if(Hn.has(e))return null;const r="clang+llvm-",n=`-x86_64${"9.0.0"===e?"-darwin-apple":"-apple-darwin"}.tar.xz`;return t(kn)(e,"9.0.1")?ee(e,r,n):Q(e,r,n)})(r);case"linux":return(e=>{let r=e;const n=Bn.get(r);let o;void 0!==n&&(r=n),o=r.includes("ubuntu")?r:""!==r&&r in Wn?Wn[r]:Wn["14.0.0"];const i="clang+llvm-",s="5.0.0"===r?`-linux-x86_64${o}.tar.xz`:`-x86_64-linux-gnu${o}.tar.xz`;return t(kn)(r,"9.0.1")?ee(r,i,s):Q(r,i,s)})(r);case"win32":return(async e=>{if(Xn.has(e))return null;const r="LLVM-",n=t(kn)(e,"3.7.0")?"-win32.exe":"-win64.exe",o=t(kn)(e,"9.0.1");let i,s=!1;return o&&(i=ee(e,r,n),await W(i)||(s=!0)),!s&&o||(i=Q(e,r,n)),i})(r);default:return null}}async function re(e,t,r){const[n,o]=await(async(e,t,r,n)=>{if(!e.has(r))throw Error(`Unsupported target! (platform='${t}', version='${r}')`);for(const o of((e,t)=>Array.from(e).filter((e=>/^\d+\.\d+\.\d+$/.test(e)&&e.startsWith(t))).sort().reverse())(e,r)){const e=await n(t,o);if(null!==e&&await W(e))return[o,e]}throw Error(`Unsupported target! (platform='${t}', version='${r}')`)})(Vn,t,e,te);return Pt.setOutput("version",n),{url:o,extractedFolderName:"",binRelativeDir:"bin",binFileName:D("clang"),extractFunction:"win32"===t?F:(e,t)=>M(e,t,["--strip-components=1"])}}async function ne(e,r,n){const o=await oe(e,r,n);var i;return await(async(e,r)=>{const n=(e=>{if(null===t(jn)(e))try{const r=t(Dn)(e);if(null!==r)return r.version}catch(e){}return e})(r),o=$e.join(e,"lib");var i;const s=null!==(i=process.env.LD_LIBRARY_PATH)&&void 0!==i?i:"";var a;const c=null!==(a=process.env.DYLD_LIBRARY_PATH)&&void 0!==a?a:"";I("LLVM_PATH",e),I("LD_LIBRARY_PATH",`${o}${$e.delimiter}${s}`),I("DYLD_LIBRARY_PATH",`${o}${$e.delimiter}${c}`);const l=t(qn)(n);Ie.existsSync(`${e}/lib/clang/${n}/include`)?I("CPATH",`${e}/lib/clang/${n}/include`):Ie.existsSync(`${e}/lib/clang/${l}/include`)&&I("CPATH",`${e}/lib/clang/${l}/include`),I("LDFLAGS",`-L${e}/lib`),I("CPPFLAGS",`-I${e}/include`),I("CC",e+"/bin/clang"),I("CXX",e+"/bin/clang++"),I("LIBRARY_PATH",e+"/lib"),await K(),d()&&se()})(null!==(i=o.installDir)&&void 0!==i?i:r,e),o}async function oe(e,t,r){const n=await U("llvm",e,re,t,r);return zn||("linux"===process.platform&&(await Z(X("gcc",void 0),0,r),await P("libtinfo-dev")),zn=!0),n}function ie(e,t,r){return d()&&se(),oe(e,t,r)}function se(){const e=$e.join(__dirname,"llvm_matcher.json");if(!Ie.existsSync(e))return f("the llvm_matcher.json file does not exist in the same folder as setup_cpp.js");Pt.info("::add-matcher::"+e)}function ae(e,t,r){const n=new io(e,t,r);process.stdout.write(""+n+no.EOL)}function ce(e){to.issue("error",e instanceof Error?""+e:e)}function le(e){to.issue("group",e)}function ue(){to.issue("endgroup")}function pe(e){return Object.values(xo).includes(e)?e:e in xo?xo[e]:e}function de(e){if(Object.keys(xo).includes(e))return e;for(const[t,r]of Object.entries(xo))if(r===e)return t;return e}function he(e){const t=pe(e);let r;if(t){const e=t.split(".")[0]+".9";r=`-version "${t},${e}"`}else r="-latest";let n=((e,t)=>{try{return(""+De.execSync(`vswhere -products * ${t} -prerelease -property installationPath`)).trim()+"\\VC\\Auxiliary\\Build\\vcvarsall.bat"}catch(e){Zn.warning("vswhere failed: "+e)}return null})(0,r);if(n&&Ie.existsSync(n))return Zn.info("Found with vswhere: "+n),n;Zn.info("Not found with vswhere");const o=e?[de(e)]:yo;for(const e of vo)for(const t of o)for(const r of go)if(n=`${e}\\Microsoft Visual Studio\\${t}\\${r}\\VC\\Auxiliary\\Build\\vcvarsall.bat`,Zn.info("Trying standard location: "+n),Ie.existsSync(n))return Zn.info("Found standard location: "+n),n;if(Zn.info("Not found in standard locations"),n=mo+"\\Microsoft Visual C++ Build Tools\\vcbuildtools.bat",Ie.existsSync(n))return Zn.info("Found VS 2015: "+n),n;throw Zn.info("Not found in VS 2015 location: "+n),Error("Microsoft Visual Studio not found")}function fe(e){return-1!=["PATH","INCLUDE","LIB","LIBPATH"].indexOf(e.toUpperCase())}function me(e,t,r,n,o,i,s){void 0!==t&&Ie.existsSync(t)&&(Pt.info(`Adding ${t} to PATH`),I("VCTargetsPath",t)),Kn((e=>{switch(e){case"x32":case"32":case"ia32":return"x86";case"64":return"x64";default:return e}})(r),o,n,i,s,e)}function ve(e,r,n,o,i,s){if("win32"!==process.platform)return;const a=Yn(e);Pt.info(`Checking if MSVC ${a} is already installed`);let c,l,u=!1;try{const e=Jn(a);u=!0,Pt.info("Found the pre-installed version of MSVC at "+e)}catch{}if(!u)try{"14.0"===a?(c="14.0",k("visualcpp-build-tools","14.0.25420.1",["--ignore-dependencies"]),l="C:/Program Files (x86)/MSBuild/Microsoft.Cpp/v4.0/v140"):"15.0"===a?(c="14.16",k("visualstudio2017buildtools","15.9.41.0",[]),l="C:/Program Files (x86)/Microsoft Visual Studio/2017/BuildTools/VC/Tools/MSVC/14.16"):"16.0"===a?(c="14.29",k("visualstudio2019buildtools","16.11.7.0",[]),l="C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.29.30133"):"17.0"===a?(c=void 0,k("visualstudio2022buildtools","117.0.5.0",[]),l=void 0):h(`The given MSVC versions ${e} is not supported yet.`)}catch(e){h(e)}me(a,l,n,c,o,i,s),d()&&(()=>{const e=t($e).join(__dirname,"msvc_matcher.json");if(!Ie.existsSync(e))return f("the msvc_matcher.json file does not exist in the same folder as setup_cpp.js");Pt.info("::add-matcher::"+e)})()}function ge(e,t,r){const n=(e=>{switch(e){case"win32":return"win";case"darwin":return"mac";case"linux":return"linux";default:throw Error(`Unsupported platform '${e}'`)}})(t);return{binRelativeDir:"",binFileName:D("ninja"),extractedFolderName:"",extractFunction:We.extractZip,url:`https://github.com/ninja-build/ninja/releases/download/v${e}/ninja-${n}.zip`}}function ye(e){return null==e?[]:Array.isArray(e)?e:[e]}function xe(e,t,r,n){var o,i=e[t],s=~n.string.indexOf(t)?null==r||!0===r?"":r+"":"boolean"==typeof r?r:~n.boolean.indexOf(t)?"false"!==r&&("true"===r||(e._.push(0*(o=+r)==0?o:r),!!r)):0*(o=+r)==0?o:r;e[t]=null==i?s:Array.isArray(i)?i.concat(s):[i,s]}function we(e){const t=parseInt(e.replace(/^v/,""),10);return 38===t&&(e="v38"),39>t?{url:`https://github.com/SimonKagstrom/kcov/archive/refs/tags/${e}.tar.gz`,extractedFolderName:"kcov-"+t,binRelativeDir:"build/",binFileName:D("kcov"),extractFunction:be}:{url:`https://github.com/SimonKagstrom/kcov/releases/download/v${t}/kcov-amd64.tar.gz`,extractedFolderName:"",binRelativeDir:"usr/local/bin",binFileName:D("kcov"),extractFunction:M}}async function be(e,r){const n=await M(e,r,["--strip-components=1"]);return null===t(Ot).sync("cmake",{nothrow:!0})&&await V(X("cmake",void 0),$e.join(t(Pn)(""),"cmake"),""),"linux"===process.platform&&(await P("libdw-dev"),await P("libcurl4-openssl-dev")),await t(Dt)("cmake",["-S","./","-B","./build"],{cwd:n,stdio:"inherit"}),await t(Dt)("cmake",["--build","./build","--config","Release"],{cwd:n,stdio:"inherit"}),await S("cmake",["--install","./build"],n),n}async function Ee(e){d()||(process.env.ACTIONS_ALLOW_UNSECURE_COMMANDS="true");const t=((e,t)=>{var r,n,o,i,s,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=ye(t.string),t.boolean=ye(t.boolean),d)for(r in t.alias)for(n=t.alias[r]=ye(t.alias[r]),c=0;n.length>c;c++)(t.alias[n[c]]=n.concat(r)).splice(c,1);for(c=t.boolean.length;c-- >0;)for(l=(n=t.alias[t.boolean[c]]||[]).length;l-- >0;)t.boolean.push(n[l]);for(c=t.string.length;c-- >0;)for(l=(n=t.alias[t.string[c]]||[]).length;l-- >0;)t.string.push(n[l]);if(f)for(r in t.default)if(i=typeof t.default[r],n=t.alias[r]=t.alias[r]||[],void 0!==t[i])for(t[i].push(r),c=0;n.length>c;c++)t[i].push(n[c]);const m=h?Object.keys(t.alias):[];for(c=0;p>c;c++){if("--"===(o=e[c])){a._=a._.concat(e.slice(++c));break}for(l=0;o.length>l&&45===o.charCodeAt(l);l++);if(0===l)a._.push(o);else if("no-"===o.substring(l,l+3)){if(i=o.substring(l+3),h&&!~m.indexOf(i))return t.unknown(o);a[i]=!1}else{for(u=l+1;o.length>u&&61!==o.charCodeAt(u);u++);for(i=o.substring(l,u),s=o.substring(++u)||c+1===p||45===(""+e[c+1]).charCodeAt(0)||e[++c],n=2===l?[i]:i,u=0;n.length>u;u++){if(i=n[u],h&&!~m.indexOf(i))return t.unknown("-".repeat(l)+i);xe(a,i,n.length>u+1||s,t)}}}if(f)for(r in t.default)void 0===a[r]&&(a[r]=t.default[r]);if(d)for(r in a)for(n=t.alias[r]||[];n.length>0;)a[n.shift()]=a[r];return a})(e,{string:Po,default:Object.fromEntries(Po.map((e=>[e,Pe(e)]))),alias:{h:"help"},boolean:"help"});var r;t.help&&Pt.info('\nsetup_cpp [options]\nsetup_cpp --compiler llvm --cmake true --ninja true --ccache true --vcpkg true\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-13.0.0\'\n\n--tool_name\t pass "true" or pass the <version> you would like to install for this tool. e.g. --conan true or --conan "1.42.1"\n\nAll the available tools:\n--llvm\n--gcc\n--vcvarsall\n--cmake\n--ninja\n--vcpkg\n--meson\n--conan\n--make\n--task\n--ccache\n--cppcheck\n--clangformat\n--clangtidy\n--doxygen\n--gcovr\n--opencppcoverage\n--kcov\n\n--python\n--choco\n--brew\n--sevenzip\n--graphviz\n ');const n=null!==(r=t.architecture)&&void 0!==r?r:process.arch;var o;const i=null!==(o=process.env.SETUP_CPP_DIR)&&void 0!==o?o:_(""),s=[],a=[];for(const e of So){const r=t[e];if(void 0!==r){Pt.startGroup(`Installing ${e} ${r}`);try{let t;if("vcvarsall"===e)me(X(e,r),void 0,n,void 0,void 0,!1,!1);else{const o=Eo[e];t=await o(X(e,r),$e.join(i,e),n)}s.push(Oe(e,t))}catch(t){h(t),a.push(e+" failed to install")}Pt.endGroup()}}const c=t.compiler;try{if(void 0!==c){const{compiler:e,version:t}=Se(c);switch(Pt.startGroup(`Installing ${e} ${null!=t?t:""}`),e){case"llvm":case"clang":case"clang++":{const e=await ne(X("llvm",t),$e.join(i,"llvm"),n);s.push(Oe("llvm",e));break}case"gcc":case"mingw":case"cygwin":case"msys":{const e=await Z(X("gcc",t),$e.join(i,"gcc"),n);s.push(Oe("gcc",e));break}case"cl":case"msvc":case"msbuild":case"vs":case"visualstudio":case"visualcpp":case"visualc++":{const e=ve(X("msvc",t),$e.join(i,"msvc"),n);s.push(Oe("msvc",e));break}case"appleclang":case"applellvm":Pt.info("Assuming apple-clang is already installed"),I("CC","clang"),I("CXX","clang++"),s.push(Oe("apple-clang",void 0));break;default:a.push("Unsupported compiler "+e)}Pt.endGroup()}}catch(e){h(e),a.push("Failed to install the "+c),Pt.endGroup()}if(0===s.length&&0===a.length)return f("setup_cpp was called without any arguments. Nothing to do."),0;if(s.forEach((e=>{return t=e,d()?Pt.info(t):console.log(`${t}`);var t})),a.forEach((e=>h(e))),Pt.info("setup_cpp finished"),!d())switch(process.platform){case"win32":f("Run `RefreshEnv.cmd` or restart your shell to update the environment.");break;case"linux":case"darwin":f("Run `source ~/.cpprc` or restart your shell to update the environment.")}return 0===a.length?0:1}function Se(e){const r=e.split("-"),n=r[0];if(1 in r){const e=r[1];return null!==t(jn)(e)||Pt.info(`Invalid semver version ${e} used for the compiler.`),{compiler:n,version:e}}return{compiler:n,version:void 0}}function Pe(e){const t=Pt.getInput(e.toLowerCase());if("false"!==t&&""!==t)return t}function Oe(e,t){let r=e+" was successfully installed";return void 0===t||("installDir"in t&&(r+="\nThe installation directory is "+t.installDir),""!==t.binDir&&(r+="\nThe binary directory is "+t.binDir)),r}var _e=require("os"),$e=require("path"),Ie=require("fs"),Re=require("http"),Ce=require("https");require("net");var Te=require("tls"),Ae=require("events"),Ne=require("assert"),ke=require("util"),De=require("child_process"),Le=require("crypto"),je=require("timers"),Fe=require("stream"),Me=require("string_decoder"),Ue=require("buffer"),Ge=require("process"),qe="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},Ve={},He={},Be=qe.parcelRequire810d;null==Be&&((Be=e=>{if(e in Ve)return Ve[e].exports;if(e in He){var t=He[e];delete He[e];var r={id:e,exports:{}};return Ve[e]=r,t.call(r.exports,r,r.exports),r.exports}var n=Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}).register=(e,t)=>{He[e]=t},qe.parcelRequire810d=Be),Be.register("9bqVn",(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 n(e,t={}){u.issueCommand("error",d.toCommandProperties(t),e instanceof Error?""+e:e)}function o(e){u.issue("group",e)}function i(){u.issue("endgroup")}var s=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,n)=>{void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get(){return t[r]}})}:(e,t,r,n)=>{void 0===n&&(n=r),e[n]=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)&&s(t,e,r);return a(t,e),t}),l=e.exports&&e.exports.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{c(n.next(e))}catch(e){i(e)}}function a(e){try{c(n.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.getIDToken=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=Be("hXgz5"),p=Be("iqpgI"),d=Be("cm976");const h=c(_e),f=c($e);var m,v,g=Be("eIE1e");(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 n=r(e,t);if(["true","True","TRUE"].includes(n))return!0;if(["false","False","FALSE"].includes(n))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,n(e)},e.exports.isDebug=()=>"1"===process.env.RUNNER_DEBUG,e.exports.debug=e=>{u.issueCommand("debug",{},e)},e.exports.error=n,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=o,e.exports.endGroup=i,e.exports.group=function(e,t){return l(this,void 0,void 0,(function*(){let r;o(e);try{r=yield t()}finally{i()}return r}))},e.exports.saveState=(e,t)=>{u.issueCommand("save-state",{name:e},t)},e.exports.getState=e=>process.env["STATE_"+e]||"",e.exports.getIDToken=function(e){return l(this,void 0,void 0,(function*(){return yield g.OidcClient.getIDToken(e)}))}})),Be.register("hXgz5",(function(e,t){"use strict";function r(e,t,r){const n=new c(e,t,r);process.stdout.write(""+n+s.EOL)}var n=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,n)=>{void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get(){return t[r]}})}:(e,t,r,n)=>{void 0===n&&(n=r),e[n]=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}),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 o(t,e),t});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.issue=e.exports.issueCommand=void 0;const s=i(_e);var a=Be("cm976");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 n in this.properties)if(this.properties.hasOwnProperty(n)){const o=this.properties[n];o&&(r?r=!1:e+=",",e+=`${n}=${t=o,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}}})),Be.register("cm976",((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,file:e.file,line:e.startLine,endLine:e.endLine,col:e.startColumn,endColumn:e.endColumn}:{}})),Be.register("iqpgI",((e,t)=>{"use strict";var r=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,n)=>{void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get(){return t[r]}})}:(e,t,r,n)=>{void 0===n&&(n=r),e[n]=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}),o=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.hasOwnProperty.call(e,o)&&r(t,e,o);return n(t,e),t});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.issueCommand=void 0;const i=o(Ie),s=o(_e);var a=Be("cm976");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(!i.existsSync(r))throw Error("Missing file at path: "+r);i.appendFileSync(r,`${a.toCommandValue(t)}${s.EOL}`,{encoding:"utf8"})}})),Be.register("eIE1e",(function(e,t){"use strict";var r=e.exports&&e.exports.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{c(n.next(e))}catch(e){i(e)}}function a(e){try{c(n.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.OidcClient=void 0;var n=Be("ba1Cu"),o=Be("FDzJa"),i=Be("9bqVn");class s{static createHttpClient(e=!0,t=10){const r={allowRetries:e,maxRetries:t};return new n.HttpClient("actions/oidc-client",[new o.BearerCredentialHandler(s.getRequestToken())],r)}static getRequestToken(){const e=process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN;if(!e)throw Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable");return e}static getIDTokenUrl(){const e=process.env.ACTIONS_ID_TOKEN_REQUEST_URL;if(!e)throw Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable");return e}static getCall(e){var t;return r(this,void 0,void 0,(function*(){const r=s.createHttpClient(),n=yield r.getJson(e).catch((e=>{throw Error(`Failed to get ID Token. \n \n Error Code : ${e.statusCode}\n \n Error Message: ${e.result.message}`)})),o=null===(t=n.result)||void 0===t?void 0:t.value;if(!o)throw Error("Response json body do not have ID Token field");return o}))}static getIDToken(e){return r(this,void 0,void 0,(function*(){try{let t=s.getIDTokenUrl();e&&(t=`${t}&audience=${encodeURIComponent(e)}`),i.debug("ID token url is "+t);const r=yield s.getCall(t);return i.setSecret(r),r}catch(e){throw Error("Error message: "+e.message)}}))}}e.exports.OidcClient=s})),Be.register("ba1Cu",(function(e,t){"use strict";Object.defineProperty(e.exports,"__esModule",{value:!0});var r=Be("8NGVX");let n;var o,i,s,a,c;(i=o=e.exports.HttpCodes||(e.exports.HttpCodes={}))[i.OK=200]="OK",i[i.MultipleChoices=300]="MultipleChoices",i[i.MovedPermanently=301]="MovedPermanently",i[i.ResourceMoved=302]="ResourceMoved",i[i.SeeOther=303]="SeeOther",i[i.NotModified=304]="NotModified",i[i.UseProxy=305]="UseProxy",i[i.SwitchProxy=306]="SwitchProxy",i[i.TemporaryRedirect=307]="TemporaryRedirect",i[i.PermanentRedirect=308]="PermanentRedirect",i[i.BadRequest=400]="BadRequest",i[i.Unauthorized=401]="Unauthorized",i[i.PaymentRequired=402]="PaymentRequired",i[i.Forbidden=403]="Forbidden",i[i.NotFound=404]="NotFound",i[i.MethodNotAllowed=405]="MethodNotAllowed",i[i.NotAcceptable=406]="NotAcceptable",i[i.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",i[i.RequestTimeout=408]="RequestTimeout",i[i.Conflict=409]="Conflict",i[i.Gone=410]="Gone",i[i.TooManyRequests=429]="TooManyRequests",i[i.InternalServerError=500]="InternalServerError",i[i.NotImplemented=501]="NotImplemented",i[i.BadGateway=502]="BadGateway",i[i.ServiceUnavailable=503]="ServiceUnavailable",i[i.GatewayTimeout=504]="GatewayTimeout",(a=s=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=[o.MovedPermanently,o.ResourceMoved,o.SeeOther,o.TemporaryRedirect,o.PermanentRedirect],u=[o.BadGateway,o.ServiceUnavailable,o.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,n){return this.request(e,t,r,n)}async getJson(e,t={}){t[s.Accept]=this._getExistingOrDefaultHeader(t,s.Accept,c.ApplicationJson);let r=await this.get(e,t);return this._processResponse(r,this.requestOptions)}async postJson(e,t,r={}){let n=JSON.stringify(t,null,2);r[s.Accept]=this._getExistingOrDefaultHeader(r,s.Accept,c.ApplicationJson),r[s.ContentType]=this._getExistingOrDefaultHeader(r,s.ContentType,c.ApplicationJson);let o=await this.post(e,n,r);return this._processResponse(o,this.requestOptions)}async putJson(e,t,r={}){let n=JSON.stringify(t,null,2);r[s.Accept]=this._getExistingOrDefaultHeader(r,s.Accept,c.ApplicationJson),r[s.ContentType]=this._getExistingOrDefaultHeader(r,s.ContentType,c.ApplicationJson);let o=await this.put(e,n,r);return this._processResponse(o,this.requestOptions)}async patchJson(e,t,r={}){let n=JSON.stringify(t,null,2);r[s.Accept]=this._getExistingOrDefaultHeader(r,s.Accept,c.ApplicationJson),r[s.ContentType]=this._getExistingOrDefaultHeader(r,s.ContentType,c.ApplicationJson);let o=await this.patch(e,n,r);return this._processResponse(o,this.requestOptions)}async request(e,t,r,n){if(this._disposed)throw Error("Client has already been disposed.");let i,s=new URL(t),a=this._prepareRequest(e,s,n),c=this._allowRetries&&-1!=p.indexOf(e)?this._maxRetries+1:1,d=0;for(;c>d;){if(i=await this.requestRaw(a,r),i&&i.message&&i.message.statusCode===o.Unauthorized){let e;for(let t=0;this.handlers.length>t;t++)if(this.handlers[t].canHandleAuthentication(i)){e=this.handlers[t];break}return e?e.handleAuthentication(this,a,r):i}let t=this._maxRedirects;for(;-1!=l.indexOf(i.message.statusCode)&&this._allowRedirects&&t>0;){const o=i.message.headers.location;if(!o)break;let c=new URL(o);if("https:"==s.protocol&&s.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 i.readBody(),c.hostname!==s.hostname)for(let e in n)"authorization"===e.toLowerCase()&&delete n[e];a=this._prepareRequest(e,c,n),i=await this.requestRaw(a,r),t--}if(-1==u.indexOf(i.message.statusCode))return i;d+=1,c>d&&(await i.readBody(),await this._performExponentialBackoff(d))}return i}dispose(){this._agent&&this._agent.destroy(),this._disposed=!0}requestRaw(e,t){return new Promise(((r,n)=>{this.requestRawWithCallback(e,t,((e,t)=>{e&&n(e),r(t)}))}))}requestRawWithCallback(e,t,r){let n;"string"==typeof t&&(e.options.headers["Content-Length"]=Buffer.byteLength(t,"utf8"));let o=!1,i=(e,t)=>{o||(o=!0,r(e,t))},s=e.httpModule.request(e.options,(e=>{let t=new h(e);i(null,t)}));s.on("socket",(e=>{n=e})),s.setTimeout(this._socketTimeout||18e4,(()=>{n&&n.end(),i(Error("Request timeout: "+e.options.path),null)})),s.on("error",(e=>{i(e,null)})),t&&"string"==typeof t&&s.write(t,"utf8"),t&&"string"!=typeof t?(t.on("close",(()=>{s.end()})),t.pipe(s)):s.end()}getAgent(e){let t=new URL(e);return this._getAgent(t)}_prepareRequest(e,t,r){const n={};n.parsedUrl=t;const o="https:"===n.parsedUrl.protocol;n.httpModule=o?Ce:Re;const i=o?443:80;return n.options={},n.options.host=n.parsedUrl.hostname,n.options.port=n.parsedUrl.port?parseInt(n.parsedUrl.port):i,n.options.path=(n.parsedUrl.pathname||"")+(n.parsedUrl.search||""),n.options.method=e,n.options.headers=this._mergeHeaders(r),null!=this.userAgent&&(n.options.headers["user-agent"]=this.userAgent),n.options.agent=this._getAgent(n.parsedUrl),this.handlers&&this.handlers.forEach((e=>{e.prepareRequest(n.options)})),n}_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 n;var o;return this.requestOptions&&this.requestOptions.headers&&(n=(o=this.requestOptions.headers,Object.keys(o).reduce(((e,t)=>(e[t.toLowerCase()]=o[t],e)),{}))[t]),e[t]||n||r}_getAgent(e){let t,o=r.getProxyUrl(e),i=o&&o.hostname;if(this._keepAlive&&i&&(t=this._proxyAgent),this._keepAlive&&!i&&(t=this._agent),t)return t;const s="https:"===e.protocol;let a=100;if(this.requestOptions&&(a=this.requestOptions.maxSockets||Re.globalAgent.maxSockets),i){n||(n=Be("bbp3j"));const e={maxSockets:a,keepAlive:this._keepAlive,proxy:{...(o.username||o.password)&&{proxyAuth:`${o.username}:${o.password}`},host:o.hostname,port:o.port}};let r;const i="https:"===o.protocol;r=s?i?n.httpsOverHttps:n.httpsOverHttp:i?n.httpOverHttps:n.httpOverHttp,t=r(e),this._proxyAgent=t}if(this._keepAlive&&!t){const e={keepAlive:this._keepAlive,maxSockets:a};t=s?new Ce.Agent(e):new Re.Agent(e),this._agent=t}return t||(t=s?Ce.globalAgent:Re.globalAgent),s&&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,n)=>{const i=e.message.statusCode,s={statusCode:i,result:null,headers:{}};let a,c;i==o.NotFound&&r(s);try{c=await e.readBody(),c&&c.length>0&&(a=t&&t.deserializeDates?JSON.parse(c,f.dateTimeDeserializer):JSON.parse(c),s.result=a),s.headers=e.message.headers}catch(e){}if(i>299){let e;e=a&&a.message?a.message:c&&c.length>0?c:"Failed request: ("+i+")";let t=new d(e,i);t.result=s.result,n(t)}else r(s)}))}}e.exports.HttpClient=f})),Be.register("8NGVX",((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 n=[e.hostname.toUpperCase()];"number"==typeof t&&n.push(`${n[0]}:${t}`);for(let e of r.split(",").map((e=>e.trim().toUpperCase())).filter((e=>e)))if(n.some((t=>t===e)))return!0;return!1}Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.getProxyUrl=e=>{let t,n,o="https:"===e.protocol;return r(e)||(n=o?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY,n&&(t=new URL(n))),t},e.exports.checkBypass=r})),Be.register("bbp3j",((e,t)=>{e.exports=Be("fNJ5J")})),Be.register("fNJ5J",(function(t,r){function n(e){var t=this;t.options=e||{},t.proxyOptions=t.options.proxy||{},t.maxSockets=t.options.maxSockets||Re.Agent.defaultMaxSockets,t.requests=[],t.sockets=[],t.on("free",((e,r,n,o)=>{for(var s=i(r,n,o),a=0,c=t.requests.length;c>a;++a){var l=t.requests[a];if(l.host===s.host&&l.port===s.port)return t.requests.splice(a,1),void l.request.onSocket(e)}e.destroy(),t.removeSocket(e)}))}function o(e,t){var r=this;n.prototype.createSocket.call(r,e,(n=>{var o=e.request.getHeader("host"),i=s({},r.options,{socket:n,servername:o?o.replace(/:.*$/,""):e.host}),a=Te.connect(0,i);r.sockets[r.sockets.indexOf(n)]=a,t(a)}))}function i(e,t,r){return"string"==typeof e?{host:e,port:t,localAddress:r}:e}function s(e){for(var t=1,r=arguments.length;r>t;++t){var n=arguments[t];if("object"==typeof n)for(var o=Object.keys(n),i=0,s=o.length;s>i;++i){var a=o[i];void 0!==n[a]&&(e[a]=n[a])}}return e}var a,c,l,u,p,d;e(t.exports,"httpOverHttp",(()=>a),(e=>a=e)),e(t.exports,"httpsOverHttp",(()=>c),(e=>c=e)),e(t.exports,"httpOverHttps",(()=>l),(e=>l=e)),e(t.exports,"httpsOverHttps",(()=>u),(e=>u=e)),e(t.exports,"debug",(()=>p),(e=>p=e)),a=e=>{var t=new n(e);return t.request=Re.request,t},c=e=>{var t=new n(e);return t.request=Re.request,t.createSocket=o,t.defaultPort=443,t},l=e=>{var t=new n(e);return t.request=Ce.request,t},u=e=>{var t=new n(e);return t.request=Ce.request,t.createSocket=o,t.defaultPort=443,t},ke.inherits(n,Ae.EventEmitter),n.prototype.addRequest=function(e,t,r,n){var o=this,a=s({request:e},o.options,i(t,r,n));this.maxSockets>o.sockets.length?o.createSocket(a,(t=>{function r(){o.emit("free",t,a)}function n(e){o.removeSocket(t),t.removeListener("free",r),t.removeListener("close",n),t.removeListener("agentRemove",n)}t.on("free",r),t.on("close",n),t.on("agentRemove",n),e.onSocket(t)})):o.requests.push(a)},n.prototype.createSocket=function(e,t){function r(r,i,s){var c;return a.removeAllListeners(),i.removeAllListeners(),200!==r.statusCode?(d("tunneling socket could not be established, statusCode=%d",r.statusCode),i.destroy(),(c=Error("tunneling socket could not be established, statusCode="+r.statusCode)).code="ECONNRESET",e.request.emit("error",c),void n.removeSocket(o)):s.length>0?(d("got illegal response body from proxy"),i.destroy(),(c=Error("got illegal response body from proxy")).code="ECONNRESET",e.request.emit("error",c),void n.removeSocket(o)):(d("tunneling connection has established"),n.sockets[n.sockets.indexOf(o)]=i,t(i))}var n=this,o={};n.sockets.push(o);var i=s({},n.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(i.localAddress=e.localAddress),i.proxyAuth&&(i.headers=i.headers||{},i.headers["Proxy-Authorization"]="Basic "+new Buffer(i.proxyAuth).toString("base64")),d("making CONNECT request");var a=n.request(i);a.useChunkedEncodingByDefault=!1,a.once("response",(e=>{e.upgrade=!0})),a.once("upgrade",((e,t,n)=>{process.nextTick((()=>{r(e,t,n)}))})),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),n.removeSocket(o)})),a.end()},n.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=()=>{}})),Be.register("FDzJa",(function(e,t){"use strict";Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.BasicCredentialHandler=class{constructor(e,t){this.username=e,this.password=t}prepareRequest(e){e.headers.Authorization="Basic "+Buffer.from(this.username+":"+this.password).toString("base64")}canHandleAuthentication(e){return!1}handleAuthentication(e,t,r){return null}},e.exports.BearerCredentialHandler=class{constructor(e){this.token=e}prepareRequest(e){e.headers.Authorization="Bearer "+this.token}canHandleAuthentication(e){return!1}handleAuthentication(e,t,r){return null}},e.exports.PersonalAccessTokenCredentialHandler=class{constructor(e){this.token=e}prepareRequest(e){e.headers.Authorization="Basic "+Buffer.from("PAT:"+this.token).toString("base64")}canHandleAuthentication(e){return!1}handleAuthentication(e,t,r){return null}}})),Be.register("ftrAD",((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 n=0;r.length>n;n++){var o=r[n].toLowerCase();if(o&&e.substr(-o.length).toLowerCase()===o)return!0}return!1})(t,r)}function n(e,t,n){Ie.stat(e,((o,i)=>{n(o,!o&&r(i,e,t))}))}e.exports=n,n.sync=(e,t)=>r(Ie.statSync(e),e,t)})),Be.register("9yF3I",((e,t)=>{function r(e,t,r){Ie.stat(e,((e,o)=>{r(e,!e&&n(o,t))}))}function n(e,t){return e.isFile()&&((e,t)=>{var r=e.mode,n=e.uid,o=e.gid,i=void 0!==t.uid?t.uid:process.getuid&&process.getuid(),s=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&&o===s||r&a&&n===i||r&l&&0===i})(e,t)}e.exports=r,r.sync=(e,t)=>n(Ie.statSync(e),t)})),Be.register("bJALw",((e,t)=>{e.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"],"win32"!==process.platform&&e.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT"),"linux"===process.platform&&e.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")})),Be.register("fvrnx",(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 n(e){return u(this,void 0,void 0,(function*(){Ne.ok(e,"a path argument must be provided"),yield h.mkdir(e,{recursive:!0})}))}function o(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 n=[];for(const o of r){const r=yield h.tryGetExecutablePath(d.join(o,e),t);r&&n.push(r)}return n}))}function i(e,t,r,o){return u(this,void 0,void 0,(function*(){if(r>=255)return;r++,yield n(t);const a=yield h.readdir(e);for(const n of a){const a=`${e}/${n}`,c=`${t}/${n}`;(yield h.lstat(a)).isDirectory()?yield i(a,c,r,o):yield s(a,c,o)}yield h.chmod(t,(yield h.stat(e)).mode)}))}function s(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,n)=>{void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get(){return t[r]}})}:(e,t,r,n)=>{void 0===n&&(n=r),e[n]=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,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{c(n.next(e))}catch(e){i(e)}}function a(e){try{c(n.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}c((n=n.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($e),h=l(Be("2GOko")),f=ke.promisify(p.exec),m=ke.promisify(p.execFile);e.exports.cp=function(e,t,r={}){return u(this,void 0,void 0,(function*(){const{force:n,recursive:o,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()&&!n)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(!o)throw Error(`Failed to copy. ${e} is a directory, but tried to copy without recursive flag.`);yield i(e,l,0,n)}else{if(""===d.relative(e,l))throw Error(`'${l}' and '${e}' are the same file`);yield s(e,l,n)}}))},e.exports.mv=function(e,t,o={}){return u(this,void 0,void 0,(function*(){if(yield h.exists(t)){let n=!0;if((yield h.isDirectory(t))&&(t=d.join(t,d.basename(e)),n=yield h.exists(t)),n){if(null!=o.force&&!o.force)throw Error("Destination already exists");yield r(t)}}yield n(d.dirname(t)),yield h.rename(e,t)}))},e.exports.rmRF=r,e.exports.mkdirP=n,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 n=yield o(t);return n&&n.length>0?n[0]:""}))},e.exports.findInPath=o})),Be.register("2GOko",(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 n,o=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,n)=>{void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get(){return t[r]}})}:(e,t,r,n)=>{void 0===n&&(n=r),e[n]=t[r]}),i=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 i(t,e),t}),a=e.exports&&e.exports.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{c(n.next(e))}catch(e){i(e)}}function a(e){try{c(n.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}c((n=n.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=s(Ie),l=s($e);e.exports.chmod=(n=c.promises).chmod,e.exports.copyFile=n.copyFile,e.exports.lstat=n.lstat,e.exports.mkdir=n.mkdir,e.exports.readdir=n.readdir,e.exports.readlink=n.readlink,e.exports.rename=n.rename,e.exports.rmdir=n.rmdir,e.exports.stat=n.stat,e.exports.symlink=n.symlink,e.exports.unlink=n.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,n){return a(this,void 0,void 0,(function*(){let o;try{o=yield e.exports.stat(t)}catch(e){"ENOENT"!==e.code&&console.log(`Unexpected error attempting to determine if executable file exists '${t}': ${e}`)}if(o&&o.isFile())if(e.exports.IS_WINDOWS){const e=l.extname(t).toUpperCase();if(n.some((t=>t.toUpperCase()===e)))return t}else if(r(o))return t;const i=t;for(const s of n){t=i+s,o=void 0;try{o=yield e.exports.stat(t)}catch(e){"ENOENT"!==e.code&&console.log(`Unexpected error attempting to determine if executable file exists '${t}': ${e}`)}if(o&&o.isFile()){if(e.exports.IS_WINDOWS){try{const r=l.dirname(t),n=l.basename(t).toUpperCase();for(const o of yield e.exports.readdir(r))if(n===o.toUpperCase()){t=l.join(r,o);break}}catch(e){console.log(`Unexpected error attempting to determine the actual case of the file '${t}': ${e}`)}return t}if(r(o))return t}}return""}))},e.exports.getCmdPath=()=>{var e;return null!==(e=process.env.COMSPEC)&&void 0!==e?e:"cmd.exe"}})),Be.register("2YXUl",(function(e,t){"use strict";var r=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,n)=>{void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get(){return t[r]}})}:(e,t,r,n)=>{void 0===n&&(n=r),e[n]=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}),o=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.hasOwnProperty.call(e,o)&&r(t,e,o);return n(t,e),t}),i=e.exports&&e.exports.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{c(n.next(e))}catch(e){i(e)}}function a(e){try{c(n.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports._readLinuxVersionFile=e.exports._getOsVersion=e.exports._findMatch=void 0;const s=o(Be("4URNm"));var a=Be("9bqVn");e.exports._findMatch=function(t,r,n,o){return i(this,void 0,void 0,(function*(){const i=_e.platform();let c,l,u;for(const c of n){const n=c.version;if(a.debug(`check ${n} satisfies ${t}`),s.satisfies(n,t)&&(!r||c.stable===r)&&(u=c.files.find((t=>{a.debug(`${t.arch}===${o} && ${t.platform}===${i}`);let r=t.arch===o&&t.platform===i;if(r&&t.platform_version){const n=e.exports._getOsVersion();r=n===t.platform_version||s.satisfies(n,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=_e.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 Ie.existsSync(e)?r=""+Ie.readFileSync(e):Ie.existsSync(t)&&(r=""+Ie.readFileSync(t)),r}})),Be.register("4URNm",((e,t)=>{var r=Be("bikcG");e.exports={re:r.re,src:r.src,tokens:r.t,SEMVER_SPEC_VERSION:Be("bgOMw").SEMVER_SPEC_VERSION,SemVer:Be("7qUJS"),compareIdentifiers:Be("12NXI").compareIdentifiers,rcompareIdentifiers:Be("12NXI").rcompareIdentifiers,parse:Be("gdrva"),valid:Be("fVzwP"),clean:Be("hOYls"),inc:Be("dGcr6"),diff:Be("bBssn"),major:Be("fB2B7"),minor:Be("bye2i"),patch:Be("87ZGF"),prerelease:Be("4agny"),compare:Be("howpO"),rcompare:Be("zcbgY"),compareLoose:Be("iGBo4"),compareBuild:Be("80ezM"),sort:Be("4qmtg"),rsort:Be("4pjXu"),gt:Be("6KPS4"),lt:Be("lr5pz"),eq:Be("jXghC"),neq:Be("fqqGA"),gte:Be("5cRW4"),lte:Be("fwsB7"),cmp:Be("823yM"),coerce:Be("1YYsi"),Comparator:Be("eR6XK"),Range:Be("hvUff"),satisfies:Be("c8FZS"),toComparators:Be("2J2hR"),maxSatisfying:Be("lbfMG"),minSatisfying:Be("5wbuE"),minVersion:Be("hZRNG"),validRange:Be("fqnzG"),outside:Be("77bPN"),gtr:Be("gD8Tz"),ltr:Be("bpPww"),intersects:Be("cHIUn"),simplifyRange:Be("k8aCs"),subset:Be("388OD")}})),Be.register("bikcG",((e,t)=>{var r=Be("bgOMw").MAX_SAFE_COMPONENT_LENGTH,n=Be("jkMsx");const o=(t=e.exports={}).re=[],i=t.src=[],s=t.t={};let a=0;const c=(e,t,r)=>{const c=a++;n(e,c,t),s[e]=c,i[c]=t,o[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",`(${i[s.NUMERICIDENTIFIER]})\\.(${i[s.NUMERICIDENTIFIER]})\\.(${i[s.NUMERICIDENTIFIER]})`),c("MAINVERSIONLOOSE",`(${i[s.NUMERICIDENTIFIERLOOSE]})\\.(${i[s.NUMERICIDENTIFIERLOOSE]})\\.(${i[s.NUMERICIDENTIFIERLOOSE]})`),c("PRERELEASEIDENTIFIER",`(?:${i[s.NUMERICIDENTIFIER]}|${i[s.NONNUMERICIDENTIFIER]})`),c("PRERELEASEIDENTIFIERLOOSE",`(?:${i[s.NUMERICIDENTIFIERLOOSE]}|${i[s.NONNUMERICIDENTIFIER]})`),c("PRERELEASE",`(?:-(${i[s.PRERELEASEIDENTIFIER]}(?:\\.${i[s.PRERELEASEIDENTIFIER]})*))`),c("PRERELEASELOOSE",`(?:-?(${i[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${i[s.PRERELEASEIDENTIFIERLOOSE]})*))`),c("BUILDIDENTIFIER","[0-9A-Za-z-]+"),c("BUILD",`(?:\\+(${i[s.BUILDIDENTIFIER]}(?:\\.${i[s.BUILDIDENTIFIER]})*))`),c("FULLPLAIN",`v?${i[s.MAINVERSION]}${i[s.PRERELEASE]}?${i[s.BUILD]}?`),c("FULL",`^${i[s.FULLPLAIN]}$`),c("LOOSEPLAIN",`[v=\\s]*${i[s.MAINVERSIONLOOSE]}${i[s.PRERELEASELOOSE]}?${i[s.BUILD]}?`),c("LOOSE",`^${i[s.LOOSEPLAIN]}$`),c("GTLT","((?:<|>)?=?)"),c("XRANGEIDENTIFIERLOOSE",i[s.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*"),c("XRANGEIDENTIFIER",i[s.NUMERICIDENTIFIER]+"|x|X|\\*"),c("XRANGEPLAIN",`[v=\\s]*(${i[s.XRANGEIDENTIFIER]})(?:\\.(${i[s.XRANGEIDENTIFIER]})(?:\\.(${i[s.XRANGEIDENTIFIER]})(?:${i[s.PRERELEASE]})?${i[s.BUILD]}?)?)?`),c("XRANGEPLAINLOOSE",`[v=\\s]*(${i[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${i[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${i[s.XRANGEIDENTIFIERLOOSE]})(?:${i[s.PRERELEASELOOSE]})?${i[s.BUILD]}?)?)?`),c("XRANGE",`^${i[s.GTLT]}\\s*${i[s.XRANGEPLAIN]}$`),c("XRANGELOOSE",`^${i[s.GTLT]}\\s*${i[s.XRANGEPLAINLOOSE]}$`),c("COERCE",`(^|[^\\d])(\\d{1,${r}})(?:\\.(\\d{1,${r}}))?(?:\\.(\\d{1,${r}}))?(?:$|[^\\d])`),c("COERCERTL",i[s.COERCE],!0),c("LONETILDE","(?:~>?)"),c("TILDETRIM",`(\\s*)${i[s.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",c("TILDE",`^${i[s.LONETILDE]}${i[s.XRANGEPLAIN]}$`),c("TILDELOOSE",`^${i[s.LONETILDE]}${i[s.XRANGEPLAINLOOSE]}$`),c("LONECARET","(?:\\^)"),c("CARETTRIM",`(\\s*)${i[s.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",c("CARET",`^${i[s.LONECARET]}${i[s.XRANGEPLAIN]}$`),c("CARETLOOSE",`^${i[s.LONECARET]}${i[s.XRANGEPLAINLOOSE]}$`),c("COMPARATORLOOSE",`^${i[s.GTLT]}\\s*(${i[s.LOOSEPLAIN]})$|^$`),c("COMPARATOR",`^${i[s.GTLT]}\\s*(${i[s.FULLPLAIN]})$|^$`),c("COMPARATORTRIM",`(\\s*)${i[s.GTLT]}\\s*(${i[s.LOOSEPLAIN]}|${i[s.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",c("HYPHENRANGE",`^\\s*(${i[s.XRANGEPLAIN]})\\s+-\\s+(${i[s.XRANGEPLAIN]})\\s*$`),c("HYPHENRANGELOOSE",`^\\s*(${i[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${i[s.XRANGEPLAINLOOSE]})\\s*$`),c("STAR","(<|>)?=?\\s*\\*"),c("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),c("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")})),Be.register("bgOMw",((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}})),Be.register("jkMsx",((e,t)=>{const r=("object"==typeof process&&process,()=>{});e.exports=r})),Be.register("7qUJS",(function(e,t){var r=Be("jkMsx"),n=Be("bgOMw"),o=n.MAX_LENGTH,i=n.MAX_SAFE_INTEGER,s=Be("bikcG"),a=s.re,c=s.t,l=Be("eUvvN"),u=Be("12NXI").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>o)throw new TypeError(`version is longer than ${o} characters`);r("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;const n=e.trim().match(t.loose?a[c.LOOSE]:a[c.FULL]);if(!n)throw new TypeError("Invalid Version: "+e);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>i||0>this.major)throw new TypeError("Invalid major version");if(this.minor>i||0>this.minor)throw new TypeError("Invalid minor version");if(this.patch>i||0>this.patch)throw new TypeError("Invalid patch version");this.prerelease=n[4]?n[4].split(".").map((e=>{if(/^[0-9]+$/.test(e)){const t=+e;if(t>=0&&i>t)return t}return e})):[],this.build=n[5]?n[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 n=this.prerelease[t],o=e.prerelease[t];if(r("prerelease compare",t,n,o),void 0===n&&void 0===o)return 0;if(void 0===o)return 1;if(void 0===n)return-1;if(n!==o)return u(n,o)}while(++t)}compareBuild(e){e instanceof p||(e=new p(e,this.options));let t=0;do{const n=this.build[t],o=e.build[t];if(r("prerelease compare",t,n,o),void 0===n&&void 0===o)return 0;if(void 0===o)return 1;if(void 0===n)return-1;if(n!==o)return u(n,o)}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&&(0===u(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})),Be.register("eUvvN",((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)),{}):{}})),Be.register("12NXI",((e,t)=>{const r=/^[0-9]+$/,n=(e,t)=>{const n=r.test(e),o=r.test(t);return n&&o&&(e=+e,t=+t),e===t?0:n&&!o?-1:o&&!n?1:t>e?-1:1};e.exports={compareIdentifiers:n,rcompareIdentifiers(e,t){return n(t,e)}}})),Be.register("gdrva",((e,t)=>{var r=Be("bgOMw").MAX_LENGTH,n=Be("bikcG"),o=n.re,i=n.t,s=Be("7qUJS"),a=Be("eUvvN");e.exports=(e,t)=>{if(t=a(t),e instanceof s)return e;if("string"!=typeof e)return null;if(e.length>r)return null;if(!(t.loose?o[i.LOOSE]:o[i.FULL]).test(e))return null;try{return new s(e,t)}catch(e){return null}}})),Be.register("fVzwP",((e,t)=>{var r=Be("gdrva");e.exports=(e,t)=>{const n=r(e,t);return n?n.version:null}})),Be.register("hOYls",((e,t)=>{var r=Be("gdrva");e.exports=(e,t)=>{const n=r(e.trim().replace(/^[=v]+/,""),t);return n?n.version:null}})),Be.register("dGcr6",((e,t)=>{var r=Be("7qUJS");e.exports=(e,t,n,o)=>{"string"==typeof n&&(o=n,n=void 0);try{return new r(e instanceof r?e.version:e,n).inc(t,o).version}catch(e){return null}}})),Be.register("bBssn",((e,t)=>{var r=Be("gdrva"),n=Be("jXghC");e.exports=(e,t)=>{if(n(e,t))return null;{const n=r(e),o=r(t),i=n.prerelease.length||o.prerelease.length,s=i?"pre":"",a=i?"prerelease":"";for(const e in n)if(("major"===e||"minor"===e||"patch"===e)&&n[e]!==o[e])return s+e;return a}}})),Be.register("jXghC",((e,t)=>{var r=Be("howpO");e.exports=(e,t,n)=>0===r(e,t,n)})),Be.register("howpO",((e,t)=>{var r=Be("7qUJS");e.exports=(e,t,n)=>new r(e,n).compare(new r(t,n))})),Be.register("fB2B7",((e,t)=>{var r=Be("7qUJS");e.exports=(e,t)=>new r(e,t).major})),Be.register("bye2i",((e,t)=>{var r=Be("7qUJS");e.exports=(e,t)=>new r(e,t).minor})),Be.register("87ZGF",((e,t)=>{var r=Be("7qUJS");e.exports=(e,t)=>new r(e,t).patch})),Be.register("4agny",((e,t)=>{var r=Be("gdrva");e.exports=(e,t)=>{const n=r(e,t);return n&&n.prerelease.length?n.prerelease:null}})),Be.register("zcbgY",((e,t)=>{var r=Be("howpO");e.exports=(e,t,n)=>r(t,e,n)})),Be.register("iGBo4",((e,t)=>{var r=Be("howpO");e.exports=(e,t)=>r(e,t,!0)})),Be.register("80ezM",((e,t)=>{var r=Be("7qUJS");e.exports=(e,t,n)=>{const o=new r(e,n),i=new r(t,n);return o.compare(i)||o.compareBuild(i)}})),Be.register("4qmtg",((e,t)=>{var r=Be("80ezM");e.exports=(e,t)=>e.sort(((e,n)=>r(e,n,t)))})),Be.register("4pjXu",((e,t)=>{var r=Be("80ezM");e.exports=(e,t)=>e.sort(((e,n)=>r(n,e,t)))})),Be.register("6KPS4",((e,t)=>{var r=Be("howpO");e.exports=(e,t,n)=>r(e,t,n)>0})),Be.register("lr5pz",((e,t)=>{var r=Be("howpO");e.exports=(e,t,n)=>0>r(e,t,n)})),Be.register("fqqGA",((e,t)=>{var r=Be("howpO");e.exports=(e,t,n)=>0!==r(e,t,n)})),Be.register("5cRW4",((e,t)=>{var r=Be("howpO");e.exports=(e,t,n)=>r(e,t,n)>=0})),Be.register("fwsB7",((e,t)=>{var r=Be("howpO");e.exports=(e,t,n)=>0>=r(e,t,n)})),Be.register("823yM",((e,t)=>{var r=Be("jXghC"),n=Be("fqqGA"),o=Be("6KPS4"),i=Be("5cRW4"),s=Be("lr5pz"),a=Be("fwsB7");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 n(e,c,l);case">":return o(e,c,l);case">=":return i(e,c,l);case"<":return s(e,c,l);case"<=":return a(e,c,l);default:throw new TypeError("Invalid operator: "+t)}}})),Be.register("1YYsi",((e,t)=>{var r=Be("7qUJS"),n=Be("gdrva"),o=Be("bikcG"),i=o.re,s=o.t;e.exports=(e,t)=>{if(e instanceof r)return e;if("number"==typeof e&&(e+=""),"string"!=typeof e)return null;let o=null;if((t=t||{}).rtl){let t;for(;(t=i[s.COERCERTL].exec(e))&&(!o||o.index+o[0].length!==e.length);)o&&t.index+t[0].length===o.index+o[0].length||(o=t),i[s.COERCERTL].lastIndex=t.index+t[1].length+t[2].length;i[s.COERCERTL].lastIndex=-1}else o=e.match(i[s.COERCE]);return null===o?null:n(`${o[2]}.${o[3]||"0"}.${o[4]||"0"}`,t)}})),Be.register("eR6XK",(function(e,t){const r=Symbol();class n{static get ANY(){return r}constructor(e,t){if(t=o(t),e instanceof n){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?s[a.COMPARATORLOOSE]:s[a.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 n))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),o=!("<="!==this.operator&&"<"!==this.operator||"<="!==e.operator&&"<"!==e.operator),i=this.semver.version===e.semver.version,s=!(">="!==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||o||i&&s||a||l}}e.exports=n;var o=Be("eUvvN"),i=Be("bikcG"),s=i.re,a=i.t,c=Be("823yM"),l=Be("jkMsx"),u=Be("7qUJS"),p=Be("hvUff")})),Be.register("hvUff",(function(e,t){class r{constructor(e,t){if(t=o(t),e instanceof r)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new r(e.raw,t);if(e instanceof i)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("||").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=n.get(t);if(r)return r;const o=this.options.loose;e=e.replace(o?l[u.HYPHENRANGELOOSE]:l[u.HYPHENRANGE],$(this.options.includePrerelease)),s("hyphen replace",e),e=e.replace(l[u.COMPARATORTRIM],p),s("comparator trim",e);let a=(e=(e=(e=e.replace(l[u.TILDETRIM],d)).replace(l[u.CARETTRIM],h)).split(/\s+/).join(" ")).split(" ").map((e=>g(e,this.options))).join(" ").split(/\s+/).map((e=>_(e,this.options)));o&&(a=a.filter((e=>(s("loose invalid filter",e,this.options),!!e.match(l[u.COMPARATORLOOSE]))))),s("range list",a);const c=new Map,m=a.map((e=>new i(e,this.options)));for(const e of m){if(f(e))return[e];c.set(e.value,e)}c.size>1&&c.has("")&&c.delete("");const v=[...c.values()];return n.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(I(this.set[t],e,this.options))return!0;return!1}}e.exports=r;const n=new(Be("lIfWq"))({max:1e3});var o=Be("eUvvN"),i=Be("eR6XK"),s=Be("jkMsx"),a=Be("7qUJS"),c=Be("bikcG"),l=c.re,u=c.t,p=c.comparatorTrimReplace,d=c.tildeTrimReplace,h=c.caretTrimReplace;const f=e=>"<0.0.0-0"===e.value,m=e=>""===e.value,v=(e,t)=>{let r=!0;const n=e.slice();let o=n.pop();for(;r&&n.length;)r=n.every((e=>o.intersects(e,t))),o=n.pop();return r},g=(e,t)=>(s("comp",e,t),e=b(e,t),s("caret",e),e=x(e,t),s("tildes",e),e=S(e,t),s("xrange",e),e=O(e,t),s("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,n,o,i)=>{let a;return s("tilde",e,t,r,n,o,i),y(r)?a="":y(n)?a=`>=${r}.0.0 <${+r+1}.0.0-0`:y(o)?a=`>=${r}.${n}.0 <${r}.${+n+1}.0-0`:i?(s("replaceTilde pr",i),a=`>=${r}.${n}.${o}-${i} <${r}.${+n+1}.0-0`):a=`>=${r}.${n}.${o} <${r}.${+n+1}.0-0`,s("tilde return",a),a})),b=(e,t)=>e.trim().split(/\s+/).map((e=>E(e,t))).join(" "),E=(e,t)=>{s("caret",e,t);const r=t.includePrerelease?"-0":"";return e.replace(t.loose?l[u.CARETLOOSE]:l[u.CARET],((t,n,o,i,a)=>{let c;return s("caret",e,t,n,o,i,a),y(n)?c="":y(o)?c=`>=${n}.0.0${r} <${+n+1}.0.0-0`:y(i)?c="0"===n?`>=${n}.${o}.0${r} <${n}.${+o+1}.0-0`:`>=${n}.${o}.0${r} <${+n+1}.0.0-0`:a?(s("replaceCaret pr",a),c="0"===n?"0"===o?`>=${n}.${o}.${i}-${a} <${n}.${o}.${+i+1}-0`:`>=${n}.${o}.${i}-${a} <${n}.${+o+1}.0-0`:`>=${n}.${o}.${i}-${a} <${+n+1}.0.0-0`):(s("no pr"),c="0"===n?"0"===o?`>=${n}.${o}.${i}${r} <${n}.${o}.${+i+1}-0`:`>=${n}.${o}.${i}${r} <${n}.${+o+1}.0-0`:`>=${n}.${o}.${i} <${+n+1}.0.0-0`),s("caret return",c),c}))},S=(e,t)=>(s("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,n,o,i,a,c)=>{s("xRange",e,r,n,o,i,a,c);const l=y(o),u=l||y(i),p=u||y(a);return"="===n&&p&&(n=""),c=t.includePrerelease?"-0":"",l?r=">"===n||"<"===n?"<0.0.0-0":"*":n&&p?(u&&(i=0),a=0,">"===n?(n=">=",u?(o=+o+1,i=0,a=0):(i=+i+1,a=0)):"<="===n&&(n="<",u?o=+o+1:i=+i+1),"<"===n&&(c="-0"),r=`${n+o}.${i}.${a}${c}`):u?r=`>=${o}.0.0${c} <${+o+1}.0.0-0`:p&&(r=`>=${o}.${i}.0${c} <${o}.${+i+1}.0-0`),s("xRange return",r),r})),O=(e,t)=>(s("replaceStars",e,t),e.trim().replace(l[u.STAR],"")),_=(e,t)=>(s("replaceGTE0",e,t),e.trim().replace(l[t.includePrerelease?u.GTE0PRE:u.GTE0],"")),$=e=>(t,r,n,o,i,s,a,c,l,u,p,d,h)=>`${r=y(n)?"":y(o)?`>=${n}.0.0${e?"-0":""}`:y(i)?`>=${n}.${o}.0${e?"-0":""}`:s?">="+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(),I=(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(s(e[r].semver),e[r].semver!==i.ANY&&e[r].semver.prerelease.length>0){const n=e[r].semver;if(n.major===t.major&&n.minor===t.minor&&n.patch===t.patch)return!0}return!1}return!0}})),Be.register("lIfWq",(function(e,t){"use strict";var r=Be("52BTm");const n=Symbol(),o=Symbol(),i=Symbol(),s=Symbol(),a=Symbol(),c=Symbol(),l=Symbol(),u=Symbol(),p=Symbol(),d=Symbol(),h=()=>1,f=(e,t,r)=>{const n=e[p].get(t);if(n){const t=n.value;if(m(e,t)){if(g(e,n),!e[s])return}else r&&(e[d]&&(n.value.now=Date.now()),e[u].unshiftNode(n));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[o]>e[n])for(let t=e[u].tail;e[o]>e[n]&&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[o]-=r.length,e[p].delete(r.key),e[u].removeNode(t)}};class y{constructor(e,t,r,n,o){this.key=e,this.value=t,this.length=r,this.now=n,this.maxAge=o||0}}const x=(e,t,r,n)=>{let o=r.value;m(e,o)&&(g(e,r),e[s]||(o=void 0)),o&&t.call(n,o.value,o.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[n]=e.max||1/0;const t=e.length||h;if(this[i]="function"!=typeof t?h:t,this[s]=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[n]=e||1/0,v(this)}get max(){return this[n]}set allowStale(e){this[s]=!!e}get allowStale(){return this[s]}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[i]&&(this[i]=e,this[o]=0,this[u].forEach((e=>{e.length=this[i](e.value,e.key),this[o]+=e.length}))),v(this)}get lengthCalculator(){return this[i]}get length(){return this[o]}get itemCount(){return this[u].length}rforEach(e,t){t=t||this;for(let r=this[u].tail;null!==r;){const n=r.prev;x(this,e,r,t),r=n}}forEach(e,t){t=t||this;for(let r=this[u].head;null!==r;){const n=r.next;x(this,e,r,t),r=n}}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[o]=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 s=r?Date.now():0,d=this[i](t,e);if(this[p].has(e)){if(d>this[n])return g(this,this[p].get(e)),!1;const i=this[p].get(e).value;return this[c]&&(this[l]||this[c](e,i.value)),i.now=s,i.maxAge=r,i.value=t,this[o]+=d-i.length,i.length=d,this.get(e),v(this),!0}const h=new y(e,t,d,s,r);return h.length>this[n]?(this[c]&&this[c](e,t),!1):(this[o]+=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 n=e[r],o=n.e||0;if(0===o)this.set(n.k,n.v);else{const e=o-t;e>0&&this.set(n.k,n.v,e)}}}prune(){this[p].forEach(((e,t)=>f(this,t,!1)))}}})),Be.register("52BTm",(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 n=0,o=arguments.length;o>n;n++)t.push(arguments[n]);return t}function n(e,t,r){var n=t===e.head?new s(r,null,t,e):new s(r,t,t.next,e);return null===n.next&&(e.tail=n),null===n.prev&&(e.head=n),e.length++,n}function o(e,t){e.tail=new s(t,e.tail,null,e),e.head||(e.head=e.tail),e.length++}function i(e,t){e.head=new s(t,null,e.head,e),e.tail||(e.tail=e.head),e.length++}function s(e,t,r,n){if(!(this instanceof s))return new s(e,t,r,n);this.list=n,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=s,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++)o(this,arguments[e]);return this.length},r.prototype.unshift=function(){for(var e=0,t=arguments.length;t>e;e++)i(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,n=0;null!==r;n++)e.call(t,r.value,n,this),r=r.next},r.prototype.forEachReverse=function(e,t){t=t||this;for(var r=this.tail,n=this.length-1;null!==r;n--)e.call(t,r.value,n,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 n=new r,o=this.head;null!==o;)n.push(e.call(t,o.value,this)),o=o.next;return n},r.prototype.mapReverse=function(e,t){t=t||this;for(var n=new r,o=this.tail;null!==o;)n.push(e.call(t,o.value,this)),o=o.prev;return n},r.prototype.reduce=function(e,t){var r,n=this.head;if(arguments.length>1)r=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");n=this.head.next,r=this.head.value}for(var o=0;null!==n;o++)r=e(r,n.value,o),n=n.next;return r},r.prototype.reduceReverse=function(e,t){var r,n=this.tail;if(arguments.length>1)r=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");n=this.tail.prev,r=this.tail.value}for(var o=this.length-1;null!==n;o--)r=e(r,n.value,o),n=n.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 n=new r;if(e>t||0>t)return n;0>e&&(e=0),t>this.length&&(t=this.length);for(var o=0,i=this.head;null!==i&&e>o;o++)i=i.next;for(;null!==i&&t>o;o++,i=i.next)n.push(i.value);return n},r.prototype.sliceReverse=function(e,t){0>(t=t||this.length)&&(t+=this.length),0>(e=e||0)&&(e+=this.length);var n=new r;if(e>t||0>t)return n;0>e&&(e=0),t>this.length&&(t=this.length);for(var o=this.length,i=this.tail;null!==i&&o>t;o--)i=i.prev;for(;null!==i&&o>e;o--,i=i.prev)n.push(i.value);return n},r.prototype.splice=function(e,t,...r){e>this.length&&(e=this.length-1),0>e&&(e=this.length+e);for(var o=0,i=this.head;null!==i&&e>o;o++)i=i.next;var s=[];for(o=0;i&&t>o;o++)s.push(i.value),i=this.removeNode(i);for(null===i&&(i=this.tail),i!==this.head&&i!==this.tail&&(i=i.prev),o=0;r.length>o;o++)i=n(this,i,r[o]);return s},r.prototype.reverse=function(){for(var e=this.head,t=this.tail,r=e;null!==r;r=r.prev){var n=r.prev;r.prev=r.next,r.next=n}return this.head=t,this.tail=e,this};try{Be("d6YpR")(r)}catch(e){}})),Be.register("d6YpR",(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}}})),Be.register("c8FZS",((e,t)=>{var r=Be("hvUff");e.exports=(e,t,n)=>{try{t=new r(t,n)}catch(e){return!1}return t.test(e)}})),Be.register("2J2hR",((e,t)=>{var r=Be("hvUff");e.exports=(e,t)=>new r(e,t).set.map((e=>e.map((e=>e.value)).join(" ").trim().split(" ")))})),Be.register("lbfMG",((e,t)=>{var r=Be("7qUJS"),n=Be("hvUff");e.exports=(e,t,o)=>{let i=null,s=null,a=null;try{a=new n(t,o)}catch(e){return null}return e.forEach((e=>{a.test(e)&&(i&&-1!==s.compare(e)||(i=e,s=new r(i,o)))})),i}})),Be.register("5wbuE",((e,t)=>{var r=Be("7qUJS"),n=Be("hvUff");e.exports=(e,t,o)=>{let i=null,s=null,a=null;try{a=new n(t,o)}catch(e){return null}return e.forEach((e=>{a.test(e)&&(i&&1!==s.compare(e)||(i=e,s=new r(i,o)))})),i}})),Be.register("hZRNG",((e,t)=>{var r=Be("7qUJS"),n=Be("hvUff"),o=Be("6KPS4");e.exports=(e,t)=>{e=new n(e,t);let i=new r("0.0.0");if(e.test(i))return i;if(i=new r("0.0.0-0"),e.test(i))return i;i=null;for(let t=0;e.set.length>t;++t){let n=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">=":n&&!o(t,n)||(n=t);break;case"<":case"<=":break;default:throw Error("Unexpected operation: "+e.operator)}})),!n||i&&!o(i,n)||(i=n)}return i&&e.test(i)?i:null}})),Be.register("fqnzG",((e,t)=>{var r=Be("hvUff");e.exports=(e,t)=>{try{return new r(e,t).range||"*"}catch(e){return null}}})),Be.register("77bPN",((e,t)=>{var r=Be("7qUJS"),n=Be("eR6XK");const{ANY:o}=n;var i=Be("hvUff"),s=Be("c8FZS"),a=Be("6KPS4"),c=Be("lr5pz"),l=Be("fwsB7"),u=Be("5cRW4");e.exports=(e,t,p,d)=>{let h,f,m,v,g;switch(e=new r(e,d),t=new i(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(s(e,t,d))return!1;for(let r=0;t.set.length>r;++r){let i=null,s=null;if(t.set[r].forEach((e=>{e.semver===o&&(e=new n(">=0.0.0")),i=i||e,s=s||e,h(e.semver,i.semver,d)?i=e:m(e.semver,s.semver,d)&&(s=e)})),i.operator===v||i.operator===g)return!1;if((!s.operator||s.operator===v)&&f(e,s.semver))return!1;if(s.operator===g&&m(e,s.semver))return!1}return!0}})),Be.register("gD8Tz",((e,t)=>{var r=Be("77bPN");e.exports=(e,t,n)=>r(e,t,">",n)})),Be.register("bpPww",((e,t)=>{var r=Be("77bPN");e.exports=(e,t,n)=>r(e,t,"<",n)})),Be.register("cHIUn",((e,t)=>{var r=Be("hvUff");e.exports=(e,t,n)=>(e=new r(e,n),t=new r(t,n),e.intersects(t))})),Be.register("k8aCs",((e,t)=>{var r=Be("c8FZS"),n=Be("howpO");e.exports=(e,t,o)=>{const i=[];let s=null,a=null;const c=e.sort(((e,t)=>n(e,t,o)));for(const e of c)r(e,t,o)?(a=e,s||(s=e)):(a&&i.push([s,a]),a=null,s=null);s&&i.push([s,null]);const l=[];for(const[e,t]of i)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}})),Be.register("388OD",((e,t)=>{var r=Be("hvUff"),n=Be("eR6XK");const{ANY:o}=n;var i=Be("c8FZS"),s=Be("howpO");const a=(e,t,r)=>{if(e===t)return!0;if(1===e.length&&e[0].semver===o){if(1===t.length&&t[0].semver===o)return!0;e=r.includePrerelease?[new n(">=0.0.0-0")]:[new n(">=0.0.0")]}if(1===t.length&&t[0].semver===o){if(r.includePrerelease)return!0;t=[new n(">=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=s(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&&!i(e,u+"",r))return null;if(p&&!i(e,p+"",r))return null;for(const n of t)if(!i(e,n+"",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&&!i(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&&!i(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 n=s(e.semver,t.semver,r);return n>0?e:0>n||">"===t.operator&&">="===e.operator?t:e},l=(e,t,r)=>{if(!e)return t;const n=s(e.semver,t.semver,r);return 0>n?e:n>0||"<"===t.operator&&"<="===e.operator?t:e};e.exports=(e,t,n={})=>{if(e===t)return!0;e=new r(e,n),t=new r(t,n);let o=!1;e:for(const r of e.set){for(const e of t.set){const t=a(r,e,n);if(o=o||null!==t,t)continue e}if(o)return!1}return!0}})),Be.register("iFKS7",((e,t)=>{var r=Be("joDHm"),n=Be("inTPA");e.exports=(e,t,o)=>{var i=t&&o||0;"string"==typeof e&&(t="binary"===e?Array(16):null,e=null);var s=(e=e||{}).random||(e.rng||r)();if(s[6]=15&s[6]|64,s[8]=63&s[8]|128,t)for(var a=0;16>a;++a)t[i+a]=s[a];return t||n(s)}})),Be.register("joDHm",((e,t)=>{e.exports=()=>Le.randomBytes(16)})),Be.register("inTPA",((e,t)=>{for(var r=[],n=0;256>n;++n)r[n]=(n+256).toString(16).substr(1);e.exports=(e,t)=>{var n=t||0;return""+r[e[n++]]+r[e[n++]]+r[e[n++]]+r[e[n++]]+"-"+r[e[n++]]+r[e[n++]]+"-"+r[e[n++]]+r[e[n++]]+"-"+r[e[n++]]+r[e[n++]]+"-"+r[e[n++]]+r[e[n++]]+r[e[n++]]+r[e[n++]]+r[e[n++]]+r[e[n++]]}})),Be.register("e0fPv",(function(e,t){"use strict";var r=e.exports&&e.exports.__createBinding||(Object.create?(e,t,r,n)=>{void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get(){return t[r]}})}:(e,t,r,n)=>{void 0===n&&(n=r),e[n]=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}),o=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)"default"!==o&&Object.hasOwnProperty.call(e,o)&&r(t,e,o);return n(t,e),t}),i=e.exports&&e.exports.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{c(n.next(e))}catch(e){i(e)}}function a(e){try{c(n.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.argStringToArray=e.exports.ToolRunner=void 0;const s=o(_e),a=o(Ae),c=o(De),l=o($e),u=o(Be("fvrnx")),p=o(Be("2GOko")),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(),n=this._getSpawnArgs(e);let o=t?"":"[command]";if(d)if(this._isCmdFile()){o+=r;for(const e of n)o+=" "+e}else if(e.windowsVerbatimArguments){o+=`"${r}"`;for(const e of n)o+=" "+e}else{o+=this._windowsQuoteCmdArg(r);for(const e of n)o+=" "+this._windowsQuoteCmdArg(e)}else{o+=r;for(const e of n)o+=" "+e}return o}_processLineBuffer(e,t,r){try{let n=t+""+e,o=n.indexOf(s.EOL);for(;o>-1;)r(n.substring(0,o)),n=n.substring(o+s.EOL.length),o=n.indexOf(s.EOL);return n}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 n of e)if(t.some((e=>e===n))){r=!0;break}if(!r)return e;let n='"',o=!0;for(let t=e.length;t>0;t--)n+=e[t-1],o&&"\\"===e[t-1]?n+="\\":'"'===e[t-1]?(o=!0,n+='"'):o=!1;return n+='"',n.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 n=e.length;n>0;n--)t+=e[n-1],r&&"\\"===e[n-1]?t+="\\":'"'===e[n-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 i(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)=>i(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)+s.EOL);const n=new h(r,this.toolPath);if(n.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 o=this._getSpawnFileName(),i=c.spawn(o,this._getSpawnArgs(r),this._getSpawnOptions(this.options,o));let a="";i.stdout&&i.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(i.stderr&&i.stderr.on("data",(e=>{n.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)}))})),i.on("error",(e=>{n.processError=e.message,n.processExited=!0,n.processClosed=!0,n.CheckComplete()})),i.on("exit",(e=>{n.processExitCode=e,n.processExited=!0,this._debug(`Exit code ${e} received from tool '${this.toolPath}'`),n.CheckComplete()})),i.on("close",(e=>{n.processExitCode=e,n.processExited=!0,n.processClosed=!0,this._debug(`STDIO streams have closed for tool '${this.toolPath}'`),n.CheckComplete()})),n.on("done",((r,n)=>{a.length>0&&this.emit("stdline",a),l.length>0&&this.emit("errline",l),i.removeAllListeners(),r?t(r):e(n)})),this.options.input){if(!i.stdin)throw Error("child process missing stdin");i.stdin.end(this.options.input)}}))))}))}},e.exports.argStringToArray=e=>{function t(e){o&&'"'!==e&&(i+="\\"),i+=e,o=!1}const r=[];let n=!1,o=!1,i="";for(let s=0;e.length>s;s++){const a=e.charAt(s);'"'!==a?"\\"===a&&o?t(a):"\\"===a&&n?o=!0:" "!==a||n?t(a):i.length>0&&(r.push(i),i=""):o?t(a):n=!n}return i.length>0&&r.push(i.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=je.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())}}})),Be.register("apy8x",((r,n)=>{async function o(e,r,n){let o;if(e.startsWith("pypy-")){const t=await s.findPyPyVersion(e,n);o=`${t.resolvedPyPyVersion}-${t.resolvedPythonVersion}`,a.info(`Successfully setup PyPy ${t.resolvedPyPyVersion} with Python (${t.resolvedPythonVersion})`)}else{const t=await i.findPythonVersion(e,n);o=t.version,a.info(`Successfully setup ${t.impl} (${o})`)}d()&&(()=>{const e=t($e).join(__dirname,"python_matcher.json");if(!Ie.existsSync(e))return f("the python_matcher.json file does not exist in the same folder as setup_cpp.js");a.info("::add-matcher::"+e)})()}e(r.exports,"setupActionsPython",(()=>o));var i=Be("6O4iu"),s=Be("k520S"),a=Be("9bqVn")})),Be.register("6O4iu",((t,r)=>{function n(e,t){const r=We.find.bind(void 0,"PyPy",e);let n=r(t);if(!n&&s.IS_WINDOWS&&(n=r("x86")),!n)throw Error(`PyPy ${e} not found`);const i=$e.join(n,"bin");l.exportVariable("pythonLocation",s.IS_WINDOWS?n:i),l.addPath(n),l.addPath(i),s.IS_WINDOWS&&l.addPath($e.join(n,"Scripts"));const a="pypy"+e;return l.setOutput("python-version",a),{impl:a,version:o(n)}}function o(e){const t=e.split($e.sep),r=t.findIndex((e=>"PyPy"===e||"Python"===e));return t[r+1]||""}async function i(e,t){switch(e.toUpperCase()){case"PYPY2":return n("2",t);case"PYPY3":return n("3.6",t);default:return await(async(e,t)=>{const r=((n=e).endsWith("-dev")?`>= ${n.slice(0,-4)}.0-a0`:n).replace(/(\d+\.\d+\.\d+)((?:a|b|rc)\d*)/g,"$1-$2");var n;l.debug(`Semantic version spec of ${e} is ${r}`);let i=We.find("Python",r,t);if(!i){l.info(`Version ${r} was not found in the local cache`);const e=await c.findReleaseFromManifest(r,t);e&&e.files&&e.files.length>0&&(l.info(`Version ${r} is available for downloading`),await c.installCpythonFromRelease(e),i=We.find("Python",r,t))}if(!i)throw Error([`Version ${e} with arch ${t} not found`,"The list of all available versions can be found here: "+c.MANIFEST_URL].join(_e.EOL));if(l.exportVariable("pythonLocation",i),s.IS_LINUX){const e=process.env.LD_LIBRARY_PATH?":"+process.env.LD_LIBRARY_PATH:"",t=$e.join(i,"lib");e.split(":").includes(t)||l.exportVariable("LD_LIBRARY_PATH",t+e)}if(l.addPath(i),l.addPath((e=>$e.join(e,s.IS_WINDOWS?"Scripts":"bin"))(i)),s.IS_WINDOWS){const e=$e.basename($e.dirname(i)),t=a.major(e),r=a.minor(e),n=$e.join(process.env.APPDATA||"","Python",`Python${t}${r}`,"Scripts");l.addPath(n)}const u=o(i);return l.setOutput("python-version",u),{impl:"CPython",version:u}})(e,t)}}e(t.exports,"findPythonVersion",(()=>i));var s=Be("laG7O"),a=Be("4URNm"),c=Be("gJvxO"),l=Be("9bqVn")})),Be.register("laG7O",((r,n)=>{function o(e,r,n,o=!1){const i=$e.join(e,r),s=$e.join(e,n);t(Ie).existsSync(s)||(t(Ie).symlinkSync(i,s),!h&&o&&t(Ie).chmodSync(s,"755"))}function i(e){return s(e)||!!d.validRange(e)}function s(e){return"nightly"===e}function a(e){return $e.basename($e.dirname(e))}function c(e){let r="",n=$e.join(e,g);return t(Ie).existsSync(n)&&(r=""+t(Ie).readFileSync(n)),r}function l(e,r){const n=$e.join(e,g);t(Ie).writeFileSync(n,r)}function u(e){return/^\d+\.\d+$/.test(e)}function p(){return"GITHUB.COM"!==new URL(process.env.GITHUB_SERVER_URL||"https://github.com").hostname.toUpperCase()}e(r.exports,"IS_WINDOWS",(()=>h)),e(r.exports,"IS_LINUX",(()=>f)),e(r.exports,"WINDOWS_ARCHS",(()=>m)),e(r.exports,"WINDOWS_PLATFORMS",(()=>v)),e(r.exports,"createSymlinkInFolder",(()=>o)),e(r.exports,"validateVersion",(()=>i)),e(r.exports,"isNightlyKeyword",(()=>s)),e(r.exports,"getPyPyVersionFromPath",(()=>a)),e(r.exports,"readExactPyPyVersionFile",(()=>c)),e(r.exports,"writeExactPyPyVersionFile",(()=>l)),e(r.exports,"validatePythonVersionFormatForPyPy",(()=>u)),e(r.exports,"isGhes",(()=>p));var d=Be("4URNm");const h="win32"===process.platform,f="linux"===process.platform,m=["x86","x64"],v=["win32","win64"],g="PYPY_VERSION"})),Be.register("gJvxO",((t,r)=>{async function n(e,t){const r=await We.getManifestFromRepo(l,u,c,p);return await We.findFromManifest(e,!1,r,t)}async function o(e){const t=e.files[0].download_url;i.info(`Download from "${t}"`);const r=await We.downloadTool(t,void 0,c);let n;i.info("Extract downloaded archive"),n=s.IS_WINDOWS?await We.extractZip(r):await We.extractTar(r),i.info("Execute installation script"),await(async e=>{const t={cwd:e,env:{...process.env,...s.IS_LINUX&&{LD_LIBRARY_PATH:$e.join(e,"lib")}},silent:!0,listeners:{stdout(e){i.info((""+e).trim())},stderr(e){i.error((""+e).trim())}}};s.IS_WINDOWS?await lt.exec("powershell",["./setup.ps1"],t):await lt.exec("bash",["./setup.sh"],t)})(n)}e(t.exports,"MANIFEST_URL",(()=>d)),e(t.exports,"findReleaseFromManifest",(()=>n)),e(t.exports,"installCpythonFromRelease",(()=>o));var i=Be("9bqVn"),s=Be("laG7O");const a=i.getInput("token"),c=!a||s.isGhes()?void 0:"token "+a,l="actions",u="python-versions",p="main",d="https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json"}));var We={},Xe=We&&We.__createBinding||(Object.create?(e,t,r,n)=>{void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get(){return t[r]}})}:(e,t,r,n)=>{void 0===n&&(n=r),e[n]=t[r]}),ze=We&&We.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),Ye=We&&We.__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)&&Xe(t,e,r);return ze(t,e),t}),Je=We&&We.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{c(n.next(e))}catch(e){i(e)}}function a(e){try{c(n.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())}))),Ke=We&&We.__importDefault||(e=>e&&e.__esModule?e:{default:e});Object.defineProperty(We,"__esModule",{value:!0}),We.evaluateVersions=We.isExplicitVersion=We.findFromManifest=We.getManifestFromRepo=We.findAllVersions=We.find=We.cacheFile=We.cacheDir=We.extractZip=We.extractXar=We.extractTar=We.extract7z=We.downloadTool=We.HTTPError=void 0;const Ze=Ye(Be("9bqVn")),Qe=Ye(Be("fvrnx")),et=Ye(Ie),tt=Ye(Be("2YXUl")),rt=Ye(_e),nt=Ye($e),ot=Ye(Be("ba1Cu")),it=Ye(Be("4URNm")),st=Ye(Fe),at=Ye(ke),ct=Ke(Be("iFKS7"));var lt={},ut=lt&&lt.__createBinding||(Object.create?(e,t,r,n)=>{void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get(){return t[r]}})}:(e,t,r,n)=>{void 0===n&&(n=r),e[n]=t[r]}),pt=lt&&lt.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),dt=lt&&lt.__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)&&ut(t,e,r);return pt(t,e),t}),ht=lt&&lt.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{c(n.next(e))}catch(e){i(e)}}function a(e){try{c(n.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())})));Object.defineProperty(lt,"__esModule",{value:!0}),lt.getExecOutput=lt.exec=void 0;const ft=dt(Be("e0fPv"));lt.exec=r,lt.getExecOutput=function(e,t,n){var o,i;return ht(this,void 0,void 0,(function*(){let s="",a="";const c=new Me.StringDecoder("utf8"),l=new Me.StringDecoder("utf8"),u=null===(o=null==n?void 0:n.listeners)||void 0===o?void 0:o.stdout,p=null===(i=null==n?void 0:n.listeners)||void 0===i?void 0:i.stderr,d=Object.assign(Object.assign({},null==n?void 0:n.listeners),{stdout(e){s+=c.write(e),u&&u(e)},stderr(e){a+=l.write(e),p&&p(e)}}),h=yield r(e,t,Object.assign(Object.assign({},n),{listeners:d}));return s+=c.end(),a+=l.end(),{exitCode:h,stdout:s,stderr:a}}))};var mt={},vt=mt&&mt.__createBinding||(Object.create?(e,t,r,n)=>{void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get(){return t[r]}})}:(e,t,r,n)=>{void 0===n&&(n=r),e[n]=t[r]}),gt=mt&&mt.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),yt=mt&&mt.__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)&&vt(t,e,r);return gt(t,e),t}),xt=mt&&mt.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{c(n.next(e))}catch(e){i(e)}}function a(e){try{c(n.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())})));Object.defineProperty(mt,"__esModule",{value:!0}),mt.RetryHelper=void 0;const wt=yt(Be("9bqVn"));mt.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 xt(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;wt.info(e.message)}const n=this.getSleepAmount();wt.info(`Waiting ${n} seconds before trying again`),yield this.sleep(n),r++}return yield e()}))}getSleepAmount(){return Math.floor(Math.random()*(this.maxSeconds-this.minSeconds+1))+this.minSeconds}sleep(e){return xt(this,void 0,void 0,(function*(){return new Promise((t=>setTimeout(t,1e3*e)))}))}};class bt extends Error{constructor(e){super("Unexpected HTTP response: "+e),this.httpStatusCode=e,Object.setPrototypeOf(this,new.target.prototype)}}We.HTTPError=bt;const Et="win32"===process.platform,St="darwin"===process.platform;We.downloadTool=function(e,t,r,n){return Je(this,void 0,void 0,(function*(){t=t||nt.join(u(),ct.default()),yield Qe.mkdirP(nt.dirname(t)),Ze.debug("Downloading "+e),Ze.debug("Destination "+t);const o=p("TEST_DOWNLOAD_TOOL_RETRY_MIN_SECONDS",10),i=p("TEST_DOWNLOAD_TOOL_RETRY_MAX_SECONDS",20),s=new mt.RetryHelper(3,o,i);return yield s.execute((()=>Je(this,void 0,void 0,(function*(){return yield function(e,t,r,n){return Je(this,void 0,void 0,(function*(){if(et.existsSync(t))throw Error(`Destination file path ${t} already exists`);const o=new ot.HttpClient("actions/tool-cache",[],{allowRetries:!1});r&&(Ze.debug("set auth"),void 0===n&&(n={}),n.authorization=r);const i=yield o.get(e,n);if(200!==i.message.statusCode){const t=new bt(i.message.statusCode);throw Ze.debug(`Failed to download from "${e}". Code(${i.message.statusCode}) Message(${i.message.statusMessage})`),t}const s=at.promisify(st.pipeline),a=p("TEST_DOWNLOAD_TOOL_RESPONSE_MESSAGE_FACTORY",(()=>i.message))();let c=!1;try{return yield s(a,et.createWriteStream(t)),Ze.debug("download complete"),c=!0,t}finally{if(!c){Ze.debug("download failed");try{yield Qe.rmRF(t)}catch(e){Ze.debug(`Failed to delete '${t}'. ${e.message}`)}}}}))}(e,t||"",r,n)}))),(e=>!(e instanceof bt&&e.httpStatusCode&&500>e.httpStatusCode&&408!==e.httpStatusCode&&429!==e.httpStatusCode)))}))},We.extract7z=function(e,t,r){return Je(this,void 0,void 0,(function*(){Ne.ok(Et,"extract7z() not supported on current OS"),Ne.ok(e,'parameter "file" is required'),t=yield o(t);const n=process.cwd();if(process.chdir(t),r)try{const t=["x",Ze.isDebug()?"-bb1":"-bb0","-bd","-sccUTF-8",e],o={silent:!0};yield lt.exec(`"${r}"`,t,o)}finally{process.chdir(n)}else{const r=["-NoLogo","-Sta","-NoProfile","-NonInteractive","-ExecutionPolicy","Unrestricted","-Command",`& '${nt.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,"")}'`],o={silent:!0};try{const e=yield Qe.which("powershell",!0);yield lt.exec(`"${e}"`,r,o)}finally{process.chdir(n)}}return t}))},We.extractTar=function(e,t,r="xz"){return Je(this,void 0,void 0,(function*(){if(!e)throw Error("parameter 'file' is required");t=yield o(t),Ze.debug("Checking tar --version");let n="";yield lt.exec("tar --version",[],{ignoreReturnCode:!0,silent:!0,listeners:{stdout(e){return n+=""+e},stderr(e){return n+=""+e}}}),Ze.debug(n.trim());const i=n.toUpperCase().includes("GNU TAR");let s;s=r instanceof Array?r:[r],Ze.isDebug()&&!r.includes("v")&&s.push("-v");let a=t,c=e;return Et&&i&&(s.push("--force-local"),a=t.replace(/\\/g,"/"),c=e.replace(/\\/g,"/")),i&&(s.push("--warning=no-unknown-keyword"),s.push("--overwrite")),s.push("-C",a,"-f",c),yield lt.exec("tar",s),t}))},We.extractXar=function(e,t,r=[]){return Je(this,void 0,void 0,(function*(){let n;Ne.ok(St,"extractXar() not supported on current OS"),Ne.ok(e,'parameter "file" is required'),t=yield o(t),n=r instanceof Array?r:[r],n.push("-x","-C",t,"-f",e),Ze.isDebug()&&n.push("-v");const i=yield Qe.which("xar",!0);var s;return yield lt.exec(`"${i}"`,(s=n,Array.from(new Set(s)))),t}))},We.extractZip=function(e,t){return Je(this,void 0,void 0,(function*(){if(!e)throw Error("parameter 'file' is required");return t=yield o(t),Et?yield function(e,t){return Je(this,void 0,void 0,(function*(){const r=e.replace(/'/g,"''").replace(/"|\n|\r/g,""),n=t.replace(/'/g,"''").replace(/"|\n|\r/g,""),o=yield Qe.which("pwsh",!1);if(o){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}', '${n}', $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 '${n}' -Force } else { throw $_ } } ;`].join(" ")];Ze.debug("Using pwsh at path: "+o),yield lt.exec(`"${o}"`,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 '${n}' -Force }`,`else {[System.IO.Compression.ZipFile]::ExtractToDirectory('${r}', '${n}', $true) }`].join(" ")],t=yield Qe.which("powershell",!0);Ze.debug("Using powershell at path: "+t),yield lt.exec(`"${t}"`,e)}}))}(e,t):yield function(e,t){return Je(this,void 0,void 0,(function*(){const r=yield Qe.which("unzip",!0),n=[e];Ze.isDebug()||n.unshift("-q"),n.unshift("-o"),yield lt.exec(`"${r}"`,n,{cwd:t})}))}(e,t),t}))},We.cacheDir=function(e,t,r,n){return Je(this,void 0,void 0,(function*(){if(r=it.clean(r)||r,n=n||rt.arch(),Ze.debug(`Caching tool ${t} ${r} ${n}`),Ze.debug("source dir: "+e),!et.statSync(e).isDirectory())throw Error("sourceDir is not a directory");const o=yield i(t,r,n);for(const t of et.readdirSync(e)){const r=nt.join(e,t);yield Qe.cp(r,o,{recursive:!0})}return s(t,r,n),o}))},We.cacheFile=function(e,t,r,n,o){return Je(this,void 0,void 0,(function*(){if(n=it.clean(n)||n,o=o||rt.arch(),Ze.debug(`Caching tool ${r} ${n} ${o}`),Ze.debug("source file: "+e),!et.statSync(e).isFile())throw Error("sourceFile is not a file");const a=yield i(r,n,o),c=nt.join(a,t);return Ze.debug("destination file "+c),yield Qe.cp(e,c),s(r,n,o),a}))},We.find=(e,t,r)=>{if(!e)throw Error("toolName parameter is required");if(!t)throw Error("versionSpec parameter is required");r=r||rt.arch(),a(t)||(t=c(n(e,r),t));let o="";if(t){t=it.clean(t)||"";const n=nt.join(l(),e,t,r);Ze.debug("checking cache: "+n),et.existsSync(n)&&et.existsSync(n+".complete")?(Ze.debug(`Found tool in cache ${e} ${t} ${r}`),o=n):Ze.debug("not found")}return o},We.findAllVersions=n,We.getManifestFromRepo=function(e,t,r,n="master"){return Je(this,void 0,void 0,(function*(){let o=[];const i=`https://api.github.com/repos/${e}/${t}/git/trees/${n}`,s=new ot.HttpClient("tool-cache"),a={};r&&(Ze.debug("set auth"),a.authorization=r);const c=yield s.getJson(i,a);if(!c.result)return o;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 s.get(l,a)).readBody();if(u){u=u.replace(/^\uFEFF/,"");try{o=JSON.parse(u)}catch(e){Ze.debug("Invalid json")}}return o}))},We.findFromManifest=function(e,t,r,n=rt.arch()){return Je(this,void 0,void 0,(function*(){return yield tt._findMatch(e,t,r,n)}))},We.isExplicitVersion=a,We.evaluateVersions=c,Be.register("k520S",((t,r)=>{async function n(e,t){let r,n="",c="";const l=(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 n;if(n=t.length>2?o.pypyVersionToSemantic(t[2]):"x",!i.validateVersion(r)||!i.validateVersion(n))throw Error("Invalid 'version' property for PyPy. Both Python version and PyPy versions should satisfy SemVer notation. See README for examples and documentation.");if(!i.validatePythonVersionFormatForPyPy(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:n,pythonVersion:r}})(e);({installDir:r,resolvedPythonVersion:c,resolvedPyPyVersion:n}=((e,t,r)=>{let n="",o="",c=i.IS_WINDOWS?(e=>{let t="";return i.WINDOWS_ARCHS.forEach((r=>t=t||We.find("PyPy",e,r))),t})(e):We.find("PyPy",e,r);return c&&(o=i.getPyPyVersionFromPath(c),n=i.readExactPyPyVersionFile(c),s.satisfies(n,t)||(c=null,n="",o="")),c||a.info(`PyPy version ${e} (${t}) was not found in the local cache`),{installDir:c,resolvedPythonVersion:o,resolvedPyPyVersion:n}})(l.pythonVersion,l.pypyVersion,t)),r||({installDir:r,resolvedPythonVersion:c,resolvedPyPyVersion:n}=await o.installPyPy(l.pypyVersion,l.pythonVersion,t));const u=$e.join(r,i.IS_WINDOWS?"Scripts":"bin"),p=o.getPyPyBinaryPath(r);return a.exportVariable("pythonLocation",p),a.addPath(p),a.addPath(u),{resolvedPyPyVersion:n,resolvedPythonVersion:c}}e(t.exports,"findPyPyVersion",(()=>n));var o=Be("gKdCo"),i=Be("laG7O"),s=Be("4URNm"),a=Be("9bqVn")})),Be.register("gKdCo",((r,n)=>{async function o(e,r,n){let o;const h=await(async()=>{const e="https://downloads.python.org/pypy/versions.json",t=new p.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(!h||0===h.length)throw Error("No release was found in PyPy version.json");const f=((e,t,r,n)=>{const o=e.filter((e=>{const o=u.satisfies(u.coerce(e.python_version),t),i=d.isNightlyKeyword(r)&&d.isNightlyKeyword(e.pypy_version)||u.satisfies(s(e.pypy_version),r),a=e.files&&(d.IS_WINDOWS?(e=>e.files.some((e=>d.WINDOWS_ARCHS.includes(e.arch)&&d.WINDOWS_PLATFORMS.includes(e.platform))))(e):((e,t,r)=>e.files.some((e=>e.arch===t&&e.platform===r)))(e,n,process.platform));return o&&i&&a}));if(0===o.length)return null;const i=o.sort(((e,t)=>u.compare(u.coerce(s(t.pypy_version)),u.coerce(s(e.pypy_version)))||u.compare(u.coerce(t.python_version),u.coerce(e.python_version))))[0];return{foundAsset:d.IS_WINDOWS?a(i):c(i,n,process.platform),resolvedPythonVersion:i.python_version,resolvedPyPyVersion:i.pypy_version}})(h,r,e,n);if(!f||!f.foundAsset)throw Error(`PyPy version ${r} (${e}) with arch ${n} not found`);const{foundAsset:m,resolvedPythonVersion:v,resolvedPyPyVersion:g}=f;let y=""+m.download_url;l.info(`Downloading PyPy from "${y}" ...`);const x=await We.downloadTool(y);l.info("Extracting downloaded archive..."),o=d.IS_WINDOWS?await We.extractZip(x):await We.extractTar(x,void 0,"x");const w=t(Ie).readdirSync(o)[0],b=$e.join(o,w);let E=b;d.isNightlyKeyword(g)||(E=await We.cacheDir(b,"PyPy",v,n)),d.writeExactPyPyVersionFile(E,g);const S=i(E);return await(async(e,t)=>{const r=u.coerce(t),n=u.major(r),o=2===n?"":"3";let i=d.IS_WINDOWS?".exe":"";l.info("Creating symlinks..."),d.createSymlinkInFolder(e,`pypy${o}${i}`,`python${n}${i}`,!0),d.createSymlinkInFolder(e,`pypy${o}${i}`,"python"+i,!0)})(S,v),await(async e=>{l.info("Installing and updating pip");const t=$e.join(e,"python");await lt.exec(t+" -m ensurepip"),await lt.exec(e+"/python -m pip install --ignore-installed pip")})(S),{installDir:E,resolvedPythonVersion:v,resolvedPyPyVersion:g}}function i(e){const t=$e.join(e,"bin");return d.IS_WINDOWS?e:t}function s(e){return e.replace(/(\d+\.\d+\.\d+)((?:a|b|rc))(\d*)/g,"$1-$2.$3")}function a(e){return e.files.find((e=>d.WINDOWS_ARCHS.includes(e.arch)&&d.WINDOWS_PLATFORMS.includes(e.platform)))}function c(e,t,r){return e.files.find((e=>e.arch===t&&e.platform===r))}e(r.exports,"installPyPy",(()=>o)),e(r.exports,"getPyPyBinaryPath",(()=>i)),e(r.exports,"pypyVersionToSemantic",(()=>s));var l=Be("9bqVn"),u=Be("4URNm"),p=Be("ba1Cu"),d=Be("laG7O")}));var Pt=Be("9bqVn");e(module.exports,"main",(()=>Ee)),e(module.exports,"getCompilerInfo",(()=>Se)),Pt=Be("9bqVn");var Ot={};const _t="win32"===process.platform||"cygwin"===process.env.OSTYPE||"msys"===process.env.OSTYPE,$t=_t?";":":";var It,Rt={};It="win32"===process.platform||qe.TESTING_WINDOWS?Be("ftrAD"):Be("9yF3I"),Rt=m,m.sync=(e,t)=>{try{return It.sync(e,t||{})}catch(e){if(t&&t.ignoreErrors||"EACCES"===e.code)return!1;throw e}};const Ct=e=>Object.assign(Error("not found: "+e),{code:"ENOENT"}),Tt=(e,t)=>{const r=t.colon||$t,n=e.match(/\//)||_t&&e.match(/\\/)?[""]:[..._t?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],o=_t?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=_t?o.split(r):[""];return _t&&-1!==e.indexOf(".")&&""!==i[0]&&i.unshift(""),{pathEnv:n,pathExt:i,pathExtExe:o}},At=(e,t,r)=>{"function"==typeof t&&(r=t,t={}),t||(t={});const{pathEnv:n,pathExt:o,pathExtExe:i}=Tt(e,t),s=[],a=r=>new Promise(((o,i)=>{if(r===n.length)return t.all&&s.length?o(s):i(Ct(e));const a=n[r],l=/^".*"$/.test(a)?a.slice(1,-1):a,u=$e.join(l,e),p=!l&&/^\.[\\\/]/.test(e)?e.slice(0,2)+u:u;o(c(p,r,0))})),c=(e,r,n)=>new Promise(((l,u)=>{if(n===o.length)return l(a(r+1));const p=o[n];Rt(e+p,{pathExt:i},((o,i)=>{if(!o&&i){if(!t.all)return l(e+p);s.push(e+p)}return l(c(e,r,n+1))}))}));return r?a(0).then((e=>r(null,e)),r):a(0)};let Nt;Ot=At,At.sync=(e,t)=>{t=t||{};const{pathEnv:r,pathExt:n,pathExtExe:o}=Tt(e,t),i=[];for(let s=0;r.length>s;s++){const a=r[s],c=/^".*"$/.test(a)?a.slice(1,-1):a,l=$e.join(c,e),u=!c&&/^\.[\\\/]/.test(e)?e.slice(0,2)+l:l;for(let e=0;n.length>e;e++){const r=u+n[e];try{if(Rt.sync(r,{pathExt:o})){if(!t.all)return r;i.push(r)}}catch(e){}}}if(t.all&&i.length)return i;if(t.nothrow)return null;throw Ct(e)};var kt,Dt={},Lt={},jt={},Ft={};const Mt=(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 Ut,Gt;(Ft=Mt).default=Mt,kt=e=>g(e)||g(e,!0),Ut=e=>e.replace(/([()\][%!^"`<>&|;, *?])/g,"^$1"),Gt=(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 qt,Vt;qt=(e="")=>{const t=e.match(/^#!(.*)/);if(!t)return null;const[r,n]=t[0].replace(/#! ?/,"").split(" "),o=r.split("/").pop();return"env"===o?n:n?`${o} ${n}`:o},Vt=e=>{const t=Buffer.alloc(150);let r;try{r=Ie.openSync(e,"r"),Ie.readSync(r,t,0,150,0),Ie.closeSync(r)}catch(e){}return qt(""+t)};const Ht="win32"===process.platform,Bt=/\.(?:com|exe)$/i,Wt=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;jt=(e,t,r)=>{t&&!Array.isArray(t)&&(r=t,t=null);const n={command:e,args:t=t?t.slice(0):[],options:r=Object.assign({},r),file:void 0,original:{command:e,args:t}};return r.shell?n:(e=>{if(!Ht)return e;const t=(e=>{e.file=kt(e);const t=e.file&&Vt(e.file);return t?(e.args.unshift(e.file),e.command=t,kt(e)):e.file})(e),r=!Bt.test(t);if(e.options.forceShell||r){const r=Wt.test(t);e.command=$e.normalize(e.command),e.command=Ut(e.command),e.args=e.args.map((e=>Gt(e,r)));const n=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${n}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e})(n)};var Xt={};const zt="win32"===process.platform;var Yt;Xt={hookChildProcess(e,t){if(!zt)return;const r=e.emit;e.emit=function(n,o){if("exit"===n){const n=x(o,t);if(n)return r.call(e,"error",n)}return r.apply(e,arguments)}},verifyENOENT:x,verifyENOENTSync(e,t){return zt&&1===e&&!t.file?y(t.original,"spawnSync"):null},notFoundError:y},(Lt=w).spawn=w,Lt.sync=(e,t,r)=>{const n=jt(e,t,r),o=De.spawnSync(n.command,n.args,n.options);return o.error=o.error||Xt.verifyENOENTSync(o.status,n),o},Lt._parse=jt,Lt._enoent=Xt,Yt=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 Jt={};const Kt=e=>{let t;e={cwd:process.cwd(),path:process.env[Ft()],execPath:process.execPath,...e};let r=$e.resolve(e.cwd);const n=[];for(;t!==r;)n.push($e.join(r,"node_modules/.bin")),t=r,r=$e.resolve(r,"..");const o=$e.resolve(e.cwd,e.execPath,"..");return n.push(o),n.concat(e.path).join($e.delimiter)};(Jt=Kt).default=Kt,Jt.env=e=>{const t={...(e={env:process.env,...e}).env},r=Ft({env:t});return e.path=t[r],t[r]=Jt(e),t};var Zt={},Qt={};const er=(e,t)=>{for(const r of Reflect.ownKeys(t))Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));return e};(Qt=er).default=er;const tr=new WeakMap,rr=(e,t={})=>{if("function"!=typeof e)throw new TypeError("Expected a function");let r,n=0;const o=e.displayName||e.name||"<anonymous>",i=function(...s){if(tr.set(i,++n),1===n)r=e.apply(this,s),e=null;else if(!0===t.throw)throw Error(`Function \`${o}\` can only be called once`);return r};return Qt(i,e),tr.set(i,n),i};(Zt=rr).default=rr,Zt.callCount=e=>{if(!tr.has(e))throw Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return tr.get(e)};var nr,or={};Object.defineProperty(or,"__esModule",{value:!0}),or.signalsByNumber=or.signalsByName=void 0;var ir={};Object.defineProperty(ir,"__esModule",{value:!0}),ir.getSignals=void 0;var sr={};Object.defineProperty(sr,"__esModule",{value:!0}),sr.SIGNALS=void 0,sr.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 ar={};Object.defineProperty(ar,"__esModule",{value:!0}),ar.SIGRTMAX=ar.getRealtimeSignals=void 0,ar.getRealtimeSignals=()=>Array.from({length:ur-lr+1},cr);const cr=(e,t)=>({name:"SIGRT"+(t+1),number:lr+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),lr=34,ur=64;ar.SIGRTMAX=ur,ir.getSignals=()=>{const e=(0,ar.getRealtimeSignals)();return[...sr.SIGNALS,...e].map(pr)};const pr=({name:e,number:t,description:r,action:n,forced:o=!1,standard:i})=>{const{signals:{[e]:s}}=_e.constants,a=void 0!==s;return{name:e,number:a?s:t,description:r,supported:a,action:n,forced:o,standard:i}},dr=(0,ir.getSignals)().reduce(((e,{name:t,number:r,description:n,supported:o,action:i,forced:s,standard:a})=>({...e,[t]:{name:t,number:r,description:n,supported:o,action:i,forced:s,standard:a}})),{});or.signalsByName=dr;const hr=(()=>{const e=(0,ir.getSignals)(),t=Array.from({length:ar.SIGRTMAX+1},((t,r)=>((e,t)=>{const r=((e,t)=>{const r=t.find((({name:t})=>_e.constants.signals[t]===e));return void 0!==r?r:t.find((t=>t.number===e))})(e,t);if(void 0===r)return{};const{name:n,description:o,supported:i,action:s,forced:a,standard:c}=r;return{[e]:{name:n,number:e,description:o,supported:i,action:s,forced:a,standard:c}}})(r,e)));return Object.assign({},...t)})();or.signalsByNumber=hr;var fr=or.signalsByName;nr=({stdout:e,stderr:t,all:r,error:n,signal:o,exitCode:i,command:s,escapedCommand:a,timedOut:c,isCanceled:l,killed:u,parsed:{options:{timeout:p}}})=>{const d=void 0===(o=null===o?void 0:o)?void 0:fr[o].description,h=(({timedOut:e,timeout:t,errorCode:r,signal:n,signalDescription:o,exitCode:i,isCanceled:s})=>e?`timed out after ${t} milliseconds`:s?"was canceled":void 0!==r?"failed with "+r:void 0!==n?`was killed with ${n} (${o})`:void 0!==i?"failed with exit code "+i:"failed")({timedOut:c,timeout:p,errorCode:n&&n.code,signal:o,signalDescription:d,exitCode:i=null===i?void 0:i,isCanceled:l}),f=`Command ${h}: ${s}`,m="[object Error]"==={}.toString.call(n),v=m?`${f}\n${n.message}`:f,g=[v,t,e].filter(Boolean).join("\n");return m?(n.originalMessage=n.message,n.message=g):n=Error(g),n.shortMessage=v,n.command=s,n.escapedCommand=a,n.exitCode=i,n.signal=o,n.signalDescription=d,n.stdout=e,n.stderr=t,void 0!==r&&(n.all=r),"bufferedData"in n&&delete n.bufferedData,n.failed=!0,n.timedOut=!!c,n.isCanceled=l,n.killed=u&&!c,n};var mr={};const vr=["stdin","stdout","stderr"],gr=e=>{if(!e)return;const{stdio:t}=e;if(void 0===t)return vr.map((t=>e[t]));if((e=>vr.some((t=>void 0!==e[t])))(e))throw Error("It's not possible to provide `stdio` in combination with one of "+vr.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,vr.length)},((e,r)=>t[r]))};(mr=gr).node=e=>{const t=gr(e);return"ipc"===t?"ipc":void 0===t||"string"==typeof t?[t,t,t,"ipc"]:t.includes("ipc")?t:[...t,"ipc"]};var yr,xr={},wr=qe.process;const br=e=>e&&"object"==typeof e&&"function"==typeof e.removeListener&&"function"==typeof e.emit&&"function"==typeof e.reallyExit&&"function"==typeof e.listeners&&"function"==typeof e.kill&&"number"==typeof e.pid&&"function"==typeof e.on;if(br(wr)){var Er,Sr=Ne,Pr=Be("bJALw"),Or=/^win/i.test(wr.platform),_r=Ae;"function"!=typeof _r&&(_r=_r.EventEmitter),wr.__signal_exit_emitter__?Er=wr.__signal_exit_emitter__:((Er=wr.__signal_exit_emitter__=new _r).count=0,Er.emitted={}),Er.infinite||(Er.setMaxListeners(1/0),Er.infinite=!0),xr=(e,t)=>{if(!br(qe.process))return()=>{};Sr.equal(typeof e,"function","a callback must be provided for exit handler"),!1===Cr&&Tr();var r="exit";return t&&t.alwaysLast&&(r="afterexit"),Er.on(r,e),()=>{Er.removeListener(r,e),0===Er.listeners("exit").length&&0===Er.listeners("afterexit").length&&$r()}};var $r=()=>{Cr&&br(qe.process)&&(Cr=!1,Pr.forEach((e=>{try{wr.removeListener(e,Rr[e])}catch(e){}})),wr.emit=kr,wr.reallyExit=Ar,Er.count-=1)};xr.unload=$r;var Ir=(e,t,r)=>{Er.emitted[e]||(Er.emitted[e]=!0,Er.emit(e,t,r))},Rr={};Pr.forEach((e=>{Rr[e]=()=>{br(qe.process)&&wr.listeners(e).length===Er.count&&($r(),Ir("exit",null,e),Ir("afterexit",null,e),Or&&"SIGHUP"===e&&(e="SIGINT"),wr.kill(wr.pid,e))}})),xr.signals=()=>Pr;var Cr=!1,Tr=()=>{!Cr&&br(qe.process)&&(Cr=!0,Er.count+=1,Pr=Pr.filter((e=>{try{return wr.on(e,Rr[e]),!0}catch(e){return!1}})),wr.emit=Dr,wr.reallyExit=Nr)};xr.load=Tr;var Ar=wr.reallyExit,Nr=e=>{br(qe.process)&&(wr.exitCode=e||0,Ir("exit",wr.exitCode,null),Ir("afterexit",wr.exitCode,null),Ar.call(wr,wr.exitCode))},kr=wr.emit,Dr=function(e,t){if("exit"===e&&br(qe.process)){void 0!==t&&(wr.exitCode=t);var r=kr.apply(this,arguments);return Ir("exit",wr.exitCode,null),Ir("afterexit",wr.exitCode,null),r}return kr.apply(this,arguments)}}else xr=()=>()=>{};const Lr=e=>e===_e.constants.signals.SIGTERM||"string"==typeof e&&"SIGTERM"===e.toUpperCase();var jr,Fr=(yr={spawnedKill(e,t="SIGTERM",r={}){const n=e(t);return((e,t,r,n)=>{if(!((e,{forceKillAfterTimeout:t},r)=>Lr(e)&&!1!==t&&r)(t,r,n))return;const o=(({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),i=setTimeout((()=>{e("SIGKILL")}),o);i.unref&&i.unref()})(e,t,r,n),n},spawnedCancel(e,t){e.kill()&&(t.isCanceled=!0)},setupTimeout(e,{timeout:t,killSignal:r="SIGTERM"},n){if(0===t||void 0===t)return n;let o;const i=new Promise(((n,i)=>{o=setTimeout((()=>{((e,t,r)=>{e.kill(t),r(Object.assign(Error("Timed out"),{timedOut:!0,signal:t}))})(e,r,i)}),t)})),s=n.finally((()=>{clearTimeout(o)}));return Promise.race([i,s])},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},n){if(!t||r)return n;const o=xr((()=>{e.kill()}));return n.finally((()=>{o()}))}}).spawnedKill,Mr=yr.spawnedCancel,Ur=yr.setupTimeout,Gr=yr.validateTimeout,qr=yr.setExitHandler,Vr={};const Hr=e=>null!==e&&"object"==typeof e&&"function"==typeof e.pipe;Hr.writable=e=>Hr(e)&&!1!==e.writable&&"function"==typeof e._write&&"object"==typeof e._writableState,Hr.readable=e=>Hr(e)&&!1!==e.readable&&"function"==typeof e._read&&"object"==typeof e._readableState,Hr.duplex=e=>Hr.writable(e)&&Hr.readable(e),Hr.transform=e=>Hr.duplex(e)&&"function"==typeof e._transform,Vr=Hr;var Br,Wr={},Xr=Ue.constants,zr=Fe.PassThrough;Br=e=>{e={...e};const{array:t}=e;let{encoding:r}=e;const n="buffer"===r;let o=!1;t?o=!(r||n):r=r||"utf8",n&&(r=null);const i=new zr({objectMode:o});r&&i.setEncoding(r);let s=0;const a=[];return i.on("data",(e=>{a.push(e),o?s=a.length:s+=e.length})),i.getBufferedValue=()=>t?a:n?Buffer.concat(a,s):a.join(""),i.getBufferedLength=()=>s,i};const Yr=(0,ke.promisify)(Fe.pipeline);class Jr extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}}(Wr=b).buffer=(e,t)=>b(e,{...t,encoding:"buffer"}),Wr.array=(e,t)=>b(e,{...t,array:!0}),Wr.MaxBufferError=Jr;var Kr,Zr=Fe.PassThrough;Kr=function(){function e(t){return Array.isArray(t)?(t.forEach(e),this):(n.push(t),t.once("end",r.bind(null,t)),t.once("error",o.emit.bind(o,"error")),t.pipe(o,{end:!1}),this)}function t(){return 0==n.length}function r(e){!(n=n.filter((t=>t!==e))).length&&o.readable&&o.end()}var n=[],o=new Zr({objectMode:!0});return o.setMaxListeners(0),o.add=e,o.isEmpty=t,o.on("unpipe",r),[].slice.call(arguments).forEach(e),o};const Qr=async(e,t)=>{if(e){e.destroy();try{return await t}catch(e){return e.bufferedData}}},en=(e,{encoding:t,buffer:r,maxBuffer:n})=>{if(e&&r)return t?Wr(e,{encoding:t,maxBuffer:n}):Wr.buffer(e,{maxBuffer:n})};var tn,rn=(jr={handleInput(e,t){void 0!==t&&void 0!==e.stdin&&(Vr(t)?t.pipe(e.stdin):e.stdin.end(t))},makeAllStream(e,{all:t}){if(!t||!e.stdout&&!e.stderr)return;const r=Kr();return e.stdout&&r.add(e.stdout),e.stderr&&r.add(e.stderr),r},async getSpawnedResult({stdout:e,stderr:t,all:r},{encoding:n,buffer:o,maxBuffer:i},s){const a=en(e,{encoding:n,buffer:o,maxBuffer:i}),c=en(t,{encoding:n,buffer:o,maxBuffer:i}),l=en(r,{encoding:n,buffer:o,maxBuffer:2*i});try{return await Promise.all([s,a,c,l])}catch(n){return Promise.all([{error:n,signal:n.signal,timedOut:n.timedOut},Qr(e,a),Qr(t,c),Qr(r,l)])}},validateInputSync({input:e}){if(Vr(e))throw new TypeError("The `input` option cannot be a stream in sync mode")}}).handleInput,nn=jr.getSpawnedResult,on=jr.makeAllStream,sn=jr.validateInputSync;const an=(async()=>{})().constructor.prototype,cn=["then","catch","finally"].map((e=>[e,Reflect.getOwnPropertyDescriptor(an,e)]));var ln,un=(tn={mergePromise(e,t){for(const[r,n]of cn){const o="function"==typeof t?(...e)=>Reflect.apply(n.value,t(),e):n.value.bind(t);Reflect.defineProperty(e,r,{...n,value:o})}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)}))}))}}).mergePromise,pn=tn.getSpawnedPromise;const dn=(e,t=[])=>Array.isArray(t)?[e,...t]:[e],hn=/^[\w.-]+$/;var fn=(ln={joinCommand(e,t){return dn(e,t).join(" ")},getEscapedCommand(e,t){return dn(e,t).map((e=>(e=>"string"!=typeof e||hn.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,mn=ln.parseCommand,vn=ln.getEscapedCommand;const gn=(e,t,r={})=>{const n=Lt._parse(e,t,r);return e=n.command,t=n.args,(r={maxBuffer:1e8,buffer:!0,stripFinalNewline:!0,extendEnv:!0,preferLocal:!1,localDir:(r=n.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:n,execPath:o})=>{const i=t?{...process.env,...e}:e;return r?Jt.env({env:i,cwd:n,execPath:o}):i})(r),r.stdio=mr(r),"win32"===process.platform&&"cmd"===$e.basename(e,".exe")&&t.unshift("/q"),{file:e,args:t,options:r,parsed:n}},yn=(e,t,r)=>"string"==typeof t||Buffer.isBuffer(t)?e.stripFinalNewline?Yt(t):t:void 0===r?void 0:"",xn=(e,t,r)=>{const n=gn(e,t,r),o=fn(e,t),i=vn(e,t);let s;Gr(n.options);try{s=De.spawn(n.file,n.args,n.options)}catch(e){const t=new De.ChildProcess,r=Promise.reject(nr({error:e,stdout:"",stderr:"",all:"",command:o,escapedCommand:i,parsed:n,timedOut:!1,isCanceled:!1,killed:!1}));return un(t,r)}const a=pn(s),c=Ur(s,n.options,a),l=qr(s,n.options,c),u={isCanceled:!1};s.kill=Fr.bind(null,s.kill.bind(s)),s.cancel=Mr.bind(null,s,u);const p=Zt((async()=>{const[{error:e,exitCode:t,signal:r,timedOut:a},c,p,d]=await nn(s,n.options,l),h=yn(n.options,c),f=yn(n.options,p),m=yn(n.options,d);if(e||0!==t||null!==r){const c=nr({error:e,exitCode:t,signal:r,stdout:h,stderr:f,all:m,command:o,escapedCommand:i,parsed:n,timedOut:a,isCanceled:u.isCanceled,killed:s.killed});if(!n.options.reject)return c;throw c}return{command:o,escapedCommand:i,exitCode:0,stdout:h,stderr:f,all:m,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}}));return rn(s,n.options.input),s.all=on(s,n.options),un(s,p)};let wn;(Dt=xn).sync=(e,t,r)=>{const n=gn(e,t,r),o=fn(e,t),i=vn(e,t);let s;sn(n.options);try{s=De.spawnSync(n.file,n.args,n.options)}catch(e){throw nr({error:e,stdout:"",stderr:"",all:"",command:o,escapedCommand:i,parsed:n,timedOut:!1,isCanceled:!1,killed:!1})}const a=yn(n.options,s.stdout,s.error),c=yn(n.options,s.stderr,s.error);if(s.error||0!==s.status||null!==s.signal){const e=nr({stdout:a,stderr:c,error:s.error,signal:s.signal,exitCode:s.status,command:o,escapedCommand:i,parsed:n,timedOut:s.error&&"ETIMEDOUT"===s.error.code,isCanceled:!1,killed:null!==s.signal});if(!n.options.reject)return e;throw e}return{command:o,escapedCommand:i,exitCode:0,stdout:a,stderr:c,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}},Dt.command=(e,t)=>{const[r,...n]=mn(e);return xn(r,n,t)},Dt.commandSync=(e,t)=>{const[r,...n]=mn(e);return xn.sync(r,n,t)},Dt.node=(e,t,r={})=>{t&&!Array.isArray(t)&&"object"==typeof t&&(r=t,t=[]);const n=mr.node(r),o=process.execArgv.filter((e=>!e.startsWith("--inspect"))),{nodePath:i=process.execPath,nodeOptions:s=o}=r;return xn(i,[...s,e,...Array.isArray(t)?t:[]],{...r,stdin:void 0,stdout:void 0,stderr:void 0,stdio:n,shell:!1})},Pt=Be("9bqVn");let bn=!1,En=!1;Pt=Be("9bqVn");let Sn=!1;var Pn;Pt=Be("9bqVn");const On=_e.homedir();let _n;Pn=e=>{if("string"!=typeof e)throw new TypeError("Expected a string, got "+typeof e);return On?e.replace(/^~(?=$|\/|\\)/,On):e};const $n=_(".cpprc");let In,Rn=!1;Pt=Be("9bqVn");let Cn=!1;Pt=Be("9bqVn");var Tn=Be("fvrnx");let An;Pt=Be("9bqVn");let Nn=!1;var kn=Be("fwsB7"),Dn=Be("1YYsi"),Ln=(Pt=Be("9bqVn"),Pt=Be("9bqVn"),Pt=Be("9bqVn"),Be("howpO")),jn=(Dn=Be("1YYsi"),Be("fVzwP"));const Fn={llvm:"14.0.0",clangtidy:"14.0.0",clangformat:"14.0.0",ninja:"1.10.2",cmake:"3.23.1",gcovr:"5.0",conan:"1.47.0",meson:"0.61.4",python:"3.8.10",kcov:"40",task:"3.12.0",doxygen:"1.9.1",gcc:"win32"===process.platform?"11.2.0.07112021":"11"};let Mn,Un,Gn=!1;kn=Be("fwsB7");var qn=Be("fB2B7");Pt=Be("9bqVn"),qn=Be("fB2B7"),Dn=Be("1YYsi"),Pt=Be("9bqVn");const Vn=(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","13.0.0","13.0.1","14.0.0","14.0.1"]),Hn=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"]),Bn=new Map,Wn={"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":"-ubuntu-16.04","13.0.0":"-ubuntu-20.04","13.0.1":"-ubuntu-18.04","14.0.0":"-ubuntu-18.04"},Xn=new Set(["10.0.1"]);let zn=!1;Pt=Be("9bqVn"),Pt=Be("9bqVn");var Yn,Jn,Kn,Zn={},Qn=Zn&&Zn.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{c(n.next(e))}catch(e){i(e)}}function a(e){try{c(n.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())}))),eo=Zn&&Zn.__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(Zn,"__esModule",{value:!0});var to={},ro=to&&to.__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(to,"__esModule",{value:!0});const no=ro(_e);var oo={};Object.defineProperty(oo,"__esModule",{value:!0}),oo.toCommandValue=e=>null==e?"":"string"==typeof e||e instanceof String?e:JSON.stringify(e),to.issueCommand=ae,to.issue=(e,t="")=>{ae(e,{},t)};class io{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 n in this.properties)if(this.properties.hasOwnProperty(n)){const o=this.properties[n];o&&(r?r=!1:e+=",",e+=`${n}=${t=o,oo.toCommandValue(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}`)}}var t;return e+="::"+(e=>oo.toCommandValue(this.message).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A"))(),e}}var so={},ao=so&&so.__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(so,"__esModule",{value:!0});const co=ao(Ie),lo=ao(_e);so.issueCommand=(e,t)=>{const r=process.env["GITHUB_"+e];if(!r)throw Error("Unable to find environment variable for file command "+e);if(!co.existsSync(r))throw Error("Missing file at path: "+r);co.appendFileSync(r,`${oo.toCommandValue(t)}${lo.EOL}`,{encoding:"utf8"})};const uo=eo(_e),po=eo($e);var ho,fo;(fo=ho=Zn.ExitCode||(Zn.ExitCode={}))[fo.Success=0]="Success",fo[fo.Failure=1]="Failure",Zn.exportVariable=(e,t)=>{const r=oo.toCommandValue(t);if(process.env[e]=r,process.env.GITHUB_ENV){const t="_GitHubActionsFileCommandDelimeter_";so.issueCommand("ENV",`${e}<<${t}${uo.EOL}${r}${uo.EOL}${t}`)}else to.issueCommand("set-env",{name:e},r)},Zn.setSecret=e=>{to.issueCommand("add-mask",{},e)},Zn.addPath=e=>{process.env.GITHUB_PATH?so.issueCommand("PATH",e):to.issueCommand("add-path",{},e),process.env.PATH=`${e}${po.delimiter}${process.env.PATH}`},Zn.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()},Zn.setOutput=(e,t)=>{to.issueCommand("set-output",{name:e},t)},Zn.setCommandEcho=e=>{to.issue("echo",e?"on":"off")},Zn.setFailed=e=>{process.exitCode=ho.Failure,ce(e)},Zn.isDebug=()=>"1"===process.env.RUNNER_DEBUG,Zn.debug=e=>{to.issueCommand("debug",{},e)},Zn.error=ce,Zn.warning=e=>{to.issue("warning",e instanceof Error?""+e:e)},Zn.info=e=>{process.stdout.write(e+uo.EOL)},Zn.startGroup=le,Zn.endGroup=ue,Zn.group=function(e,t){return Qn(this,void 0,void 0,(function*(){let r;le(e);try{r=yield t()}finally{ue()}return r}))},Zn.saveState=(e,t)=>{to.issueCommand("save-state",{name:e},t)},Zn.getState=e=>process.env["STATE_"+e]||"";const mo=Ge.env["ProgramFiles(x86)"],vo=[Ge.env["ProgramFiles(x86)"],Ge.env.ProgramFiles],go=["Enterprise","Professional","Community"],yo=["2022","2019","2017"],xo={2022:"17.0",2019:"16.0",2017:"15.0",2015:"14.0",2013:"12.0"};Yn=pe;const wo=mo+"\\Microsoft Visual Studio\\Installer";Jn=he,Kn=(e,t,r,n,o,i)=>{if("win32"!=Ge.platform)return void Zn.info("This is not a Windows virtual environment, bye!");Ge.env.PATH+=$e.delimiter+wo;let s={win32:"x86",win64:"x64",x86_64:"x64","x86-64":"x64"};e.toLowerCase()in s&&(e=s[e.toLowerCase()]);var a=[e];"true"==n&&a.push("uwp"),t&&a.push(t),r&&a.push("-vcvars_ver="+r),"true"==o&&a.push("-vcvars_spectre_libs=spectre");const c=`"${he(i)}" ${a.join(" ")}`;Zn.debug("vcvars command-line: "+c);const l=(""+De.execSync(`set && cls && ${c} && cls && set`,{shell:"cmd"})).split("\f"),u=l[0].split("\r\n"),p=l[1].split("\r\n"),d=l[2].split("\r\n"),h=p.filter((e=>!(!e.match(/^\[ERROR.*\]/)||e.match(/Error in script usage. The correct usage is:$/))));if(h.length>0)throw Error("invalid parameters\r\n"+h.join("\r\n"));let f={};for(let e of u){const[t,r]=e.split("=");f[t]=r}Zn.startGroup("Environment variables");for(let e of d){if(!e.includes("="))continue;let[t,r]=e.split("=");r!==f[t]&&(Zn.info("Setting "+t),fe(t)&&(r=r.split(";").filter(((e,t,r)=>r.indexOf(e)===t)).join(";")),Zn.exportVariable(t,r))}Zn.endGroup(),Zn.info("Configured Developer Command Prompt")},jn=Be("fVzwP"),Pt=Be("9bqVn");let bo=!1;Pt=Be("9bqVn");const Eo={cmake:V,ninja(e,t,r){return U("ninja",e,ge,t,r)},python:H,async vcpkg(e,r,n){return bo&&null!==t(Ot).sync("vcpkg",{nothrow:!0})?{binDir:$e.dirname(t(Ot).sync("vcpkg"))}:("linux"===process.platform&&(await P("curl"),await P("zip"),await P("unzip"),await P("tar"),await P("git"),await P("pkg-config")),Ie.existsSync($e.join(r,L("bootstrap-vcpkg")))?Pt.warning("Vcpkg folder already exists at "+r):t(Dt).sync("git",["clone","https://github.com/microsoft/vcpkg"],{cwd:$e.dirname(r),stdio:"inherit"}),t(Dt).sync(L((o="bootstrap-vcpkg","win32"===process.platform?o:"./"+o)),{cwd:r,shell:!0,stdio:"inherit"}),Pt.addPath(r),bo=!0,{binDir:r});var o},async conan(e,t,r){return await z("setuptools",""),z("conan",e)},meson(e,t,r){return z("meson",e)},gcovr(e,t,r){return z("gcovr",e)},async opencppcoverage(e,t,r){if("win32"===process.platform)return await k("opencppcoverage",e),{binDir:(()=>{const e="C:/Program Files/OpenCppCoverage";return R(e),e})()}},llvm:ne,gcc:Z,choco:N,brew:v,ccache(e,t,r){switch(process.platform){case"win32":return k("ccache",e);case"darwin":return O("ccache",e);case"linux":return P("ccache",e);default:throw Error("Unsupported platform")}},async doxygen(e,t,r){switch(process.platform){case"win32":return await k("doxygen.install",e),await Y(X("graphviz",void 0)),{binDir:(()=>{if("win32"===process.platform){const e="C:/Program Files/doxygen/bin";return R(e),e}throw Error("Unsupported platform")})()};case"darwin":{const e=O("doxygen",void 0);return await Y(X("graphviz",void 0)),e}case"linux":{let o;try{o=await U("doxygen",e,J,t,r)}catch(e){n=`Failed to download doxygen binary. ${e}. Falling back to apt-get.`,d()?Pt.info(n):console.log(n),o=await P("doxygen",void 0)}return await Y(X("graphviz",void 0)),o}default:throw Error("Unsupported platform")}var n},graphviz:Y,async cppcheck(e,t,r){switch(process.platform){case"win32":return await k("cppcheck",e),{binDir:(()=>{const e="C:/Program Files/Cppcheck";return R(e),e})()};case"darwin":return O("cppcheck",e);case"linux":return P("cppcheck",e);default:throw Error("Unsupported platform")}},clangtidy:ie,clangformat:ie,msvc:ve,vcvarsall:me,async kcov(e,t,r){if("linux"===process.platform){const n=await U("kcov",e,we,t,r);return await P("libbinutils"),n}throw Error("Unsupported platform for "+r)},make(e,t,r){switch(process.platform){case"win32":return k("make",e);case"darwin":return O("make",e),Pt.addPath("/usr/local/opt/make/libexec/gnubin"),{binDir:"/usr/local/opt/make/libexec/gnubin"};case"linux":return P("make",e);default:throw Error("Unsupported platform")}},task(e,t,r){return U("task",e,G,t,r)},sevenzip:j},So=["choco","brew","python","vcpkg","cmake","ninja","conan","meson","gcovr","opencppcoverage","ccache","doxygen","graphviz","cppcheck","clangtidy","clangformat","llvm","gcc","msvc","vcvarsall","kcov","make","task","sevenzip"],Po=["compiler","architecture",...So];Ee(process.argv).then((e=>{process.exitCode=e})).catch((e=>{h("main() panicked!"),h(e),process.exitCode=1}));
//# sourceMappingURL=setup_cpp.js.map