setup-cpp/dist/setup_cpp.js

3 lines
156 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){const n=new ut(e,t,r);process.stdout.write(""+n+lt.EOL)}function n(e,t){const r=process.env["INPUT_"+e.replace(/ /g,"_").toUpperCase()]||"";if(t&&t.required&&!r)throw Error("Input required and not supplied: "+e);return t&&!1===t.trimWhitespace?r:r.trim()}function o(e,t={}){ot.issueCommand("error",ct.toCommandProperties(t),e instanceof Error?""+e:e)}function i(e){ot.issue("group",e)}function s(){ot.issue("endgroup")}function a(e,t,r){return Xt(this,void 0,void 0,(function*(){const n=zt.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 zt.ToolRunner(o,t,r).exec()}))}function l(e,t){const r=[];t=t||kt.arch();const n=jt.join(f(),e);if(Lt.existsSync(n)){const e=Lt.readdirSync(n);for(const o of e)if(d(o)){const e=jt.join(n,o,t||"");Lt.existsSync(e)&&Lt.existsSync(e+".complete")&&r.push(o)}}return r}function c(e){return It(this,void 0,void 0,(function*(){return e||(e=jt.join(m(),Vt.default())),yield Nt.mkdirP(e),e}))}function u(e,t,r){return It(this,void 0,void 0,(function*(){const n=jt.join(f(),e,Mt.clean(t)||t,r||"");At.debug("destination "+n);const o=n+".complete";return yield Nt.rmRF(n),yield Nt.rmRF(o),yield Nt.mkdirP(n),n}))}function p(e,t,r){const n=jt.join(f(),e,Mt.clean(t)||t,r||"");Lt.writeFileSync(n+".complete",""),At.debug("finished caching tool")}function d(e){const t=Mt.clean(e)||"";At.debug("isExplicit: "+t);const r=null!=Mt.valid(t);return At.debug("explicit? "+r),r}function h(e,t){let r="";At.debug(`evaluating ${e.length} versions`);for(let n=(e=e.sort(((e,t)=>Mt.gt(e,t)?1:-1))).length-1;n>=0;n--){const o=e[n];if(Mt.satisfies(o,t)){r=o;break}}return At.debug(r?"matched: "+r:"match not found"),r}function f(){const e=process.env.RUNNER_TOOL_CACHE||"";return je.ok(e,"Expected RUNNER_TOOL_CACHE to be defined"),e}function m(){const e=process.env.RUNNER_TEMP||"";return je.ok(e,"Expected RUNNER_TEMP to be defined"),e}function v(e,t){const r=Ye[e];return void 0!==r?r:t}function g(){return"true"===process.env.CI&&"true"===process.env.GITHUB_ACTIONS}function y(e){return g()?Qe.error(e):console.log(`${e}`)}function w(e){return g()?Qe.warning(e):console.log(`${e}`)}function x(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)=>{x(e,t||{},((e,t)=>{e?n(e):r(t)}))}))}ar(e,t||{},((e,n)=>{e&&("EACCES"===e.code||t&&t.ignoreErrors)&&(e=null,n=!1),r(e,n)}))}function E(e,r,n){if(!["darwin","linux"].includes(process.platform))return;if("string"==typeof dr)return{binDir:dr};const o=t(or).sync("brew",{nothrow:!0});return null!==o?(dr=Ge.dirname(o),{binDir:dr}):(Ve.execFileSync('/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"',{stdio:"inherit"}),dr="/usr/local/bin/",{binDir:dr})}function b(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=or.sync(e.command,{path:r[gr({env:r})],pathExt:t?Ge.delimiter:void 0})}catch(e){}finally{i&&process.chdir(n)}return s&&(s=Ge.resolve(o?e.options.cwd:"",s)),s}function S(e,t){return Object.assign(Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function _(e,t){return $r&&1===e&&!t.file?S(t.original,"spawn"):null}function P(e,t,r){const n=vr(e,t,r),o=Ve.spawn(n.command,n.args,n.options);return Or.hookChildProcess(o,n),o}function O(){sn&&(sn=!1,tn.forEach((e=>{try{process.removeListener(e,on[e])}catch(e){}})),process.emit=ln,process.reallyExit=an,en.count-=1)}function $(e,t,r){en.emitted[e]||(en.emitted[e]=!0,en.emit(e,t,r))}function C(){sn||(sn=!0,en.count+=1,tn=tn.filter((e=>{try{return process.on(e,on[e]),!0}catch(e){return!1}})),process.emit=I,process.reallyExit=T)}function T(e){process.exitCode=e||0,$("exit",process.exitCode,null),$("afterexit",process.exitCode,null),an.call(process,process.exitCode)}function I(e,t){if("exit"===e){void 0!==t&&(process.exitCode=t);var r=ln.apply(this,arguments);return $("exit",process.exitCode,null),$("afterexit",process.exitCode,null),r}return ln.apply(this,arguments)}async function R(e,t){if(!e)throw Error("Expected a stream");t={maxBuffer:1/0,...t};const{maxBuffer:r}=t,n=yn(t);return await new Promise(((t,o)=>{const i=e=>{e&&n.getBufferedLength()<=xn.MAX_LENGTH&&(e.bufferedData=n.getBufferedValue()),o(e)};(async()=>{try{await bn(e,n),t()}catch(e){i(e)}})(),n.on("data",(()=>{n.getBufferedLength()>r&&i(new Sn)}))})),n.getBufferedValue()}function A(){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(or).sync("sudo",{nothrow:!0})),Wn}function N(e,r,n){return A()?t(fr).command("sudo "+[e,...r].map((e=>`'${e}'`)).join(" "),{shell:!0,cwd:n,stdio:"inherit"}):t(fr)(e,r,{stdio:"inherit"})}async function L(e,t,r=!0){Qe.info(`Installing ${e} ${null!=t?t:""} via apt`);const n="apt-get";if(process.env.DEBIAN_FRONTEND="noninteractive",Xn||(await N(n,["update","-y"]),Xn=!0),zn||(await N(n,["install","--fix-broken","-y","software-properties-common","apt-utils","ca-certificates","gnupg"]),await N("apt-key",["adv","--keyserver","keyserver.ubuntu.com","--recv-keys","3B4FE6ACC0B21F32"]),await N("apt-key",["adv","--keyserver","keyserver.ubuntu.com","--recv-keys","40976EAF437D05B5"]),await N("apt-key",["adv","--keyserver","keyserver.ubuntu.com","--recv-keys","1E9377A2BA9EF27F"]),zn=!0),Array.isArray(r)){for(const e of r)await N("add-apt-repository",["--update","-y",e]);await N(n,["update","-y"])}if(void 0!==t&&""!==t)try{await N(n,["install","--fix-broken","-y",`${e}=${t}`])}catch{await N(n,["install","--fix-broken","-y",`${e}-${t}`])}else await N(n,["install","--fix-broken","-y",e]);return{binDir:"/usr/bin/"}}function D(e,r){return Qe.info(`Installing ${e} ${null!=r?r:""} via brew`),Yn&&null!==t(or).sync("brew",{nothrow:!0})||(E(0,0,process),Yn=!0),t(fr).sync("brew",["install",void 0!==r&&""!==r?`${e}@${r}`:e],{stdio:"inherit"}),{binDir:"/usr/local/bin/"}}function k(e){return A()&&"string"==typeof process.env.SUDO_USER?Ge.join("/home/",process.env.SUDO_USER,e):t(Kn)("~/"+e)}function j(e){if(void 0===Zn){const e=t(or).sync("pwsh",{nothrow:!0});null!==e&&(Zn=e);const r=t(or).sync("powershell",{nothrow:!0});null!==r&&(Zn=r)}if(void 0===Zn)throw Error("Could not find powershell");t(fr).sync(Zn,["-c",e],{stdio:"inherit"})}function F(e){process.env.PATH=`${e}${Ge.delimiter}${process.env.PATH}`;try{g()?Qe.addPath(e):M(e)}catch(t){try{return y(t),M(e)}catch(e){y(e)}y(`Failed to add ${e} to the percistent PATH. You should add it manually.`)}}function M(e){switch(process.platform){case"win32":return j(`$USER_PATH=([Environment]::GetEnvironmentVariable("PATH", "User")); [Environment]::SetEnvironmentVariable("PATH", "${e};$USER_PATH", "User")`),void Qe.info(e+" was added to the PATH.");case"linux":case"darwin":{const t=k(".profile");return Me.appendFileSync(t,`\nexport PATH=${e}:$PATH\n`),void Qe.info(`${e} was added to "${t}"`)}default:return}}function U(e,r,n){if("win32"!==process.platform)return;if("string"==typeof Qn)return{binDir:Qn};const o=t(or).sync("choco",{nothrow:!0});if(null!==o)return Qn=Ge.dirname(o),{binDir:Qn};let i="powershell.exe";const s=t(or).sync(process.env.SystemRoot+"\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",{nothrow:!0});null!==s&&(i=s),t(fr).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"}),F(process.env.ALLUSERSPROFILE+"\\chocolatey\\bin");const a=t(or).sync("choco",{nothrow:!0});var l;return Qn=null!==a?Ge.dirname(a):(null!==(l=process.env.ChocolateyInstall)&&void 0!==l?l:"C:/ProgramData/chocolatey")+"/bin",Me.existsSync(Qn)?{binDir:Qn}:void 0}function G(e,r,n=[]){Qe.info(`Installing ${e} ${null!=r?r:""} via chocolatey`),eo&&null!==t(or).sync("choco",{nothrow:!0})||(U(0,0,process),eo=!0);const o=process.env.PATH,i={...process.env};var s;delete i.TMP,delete i.TEMP,delete i.Path,i.PATH=o,t(fr).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 F(a),{binDir:a}}function V(e){return"win32"===process.platform?e+".exe":e}function H(e){return"win32"===process.platform?e+".bat":e+".sh"}function B(e,t,r){switch(process.platform){case"win32":return G("7zip",e);case"darwin":return D("p7zip",e);case"linux":return L("p7zip-full",e);default:throw Error("Unsupported platform")}}async function q(e,r){return void 0===ro&&(null===t(or).sync("7z",{nothrow:!0})&&await B("",0,process),ro="7z"),await t(fr)(ro,["x",e,"-o"+r],{stdio:"inherit"}),r}async function W(e,r,n=["--strip-components=0"]){try{await to.mkdirP(r)}catch{}return await t(fr)("tar",["xf",e,"-C",r,...n],{stdio:"inherit"}),r}async function X(e,t,r,n,o){var i,s;Qe.info(`Installing ${e} ${t} ${o} via direct downloading`),process.env.RUNNER_TEMP=null!==(i=process.env.RUNNER_TEMP)&&void 0!==i?i:Ue.tmpdir(),process.env.RUNNER_TOOL_CACHE=null!==(s=process.env.RUNNER_TOOL_CACHE)&&void 0!==s?s:Ge.join(Ue.tmpdir(),"setup-cpp","hostedtoolcache");const{url:a,binRelativeDir:l,binFileName:c,extractedFolderName:u,extractFunction:p}=await r(t,process.platform,o);if(g())try{const r=Ot.find(e,t);if(r){const n=Ge.join(r,u),o=Ge.join(n,l);if(Me.existsSync(o)&&Me.existsSync(Ge.join(o,c)))return Qe.info(`${e} ${t} was found in the cache at ${o}.`),F(o),{installDir:n,binDir:o}}}catch{}const d=Ge.join(n,u),h=Ge.join(d,l),f=Ge.join(h,c);if(!Me.existsSync(h)||!Me.existsSync(f)){Qe.info(`Download and extract ${e} ${t}`),no||("linux"===process.platform&&(await L("unzip"),await L("tar"),await L("xz-utils")),no=!0);try{const e=await Ot.downloadTool(a);await(null==p?void 0:p(e,n))}catch(r){throw Error(`Failed to download ${e} ${t} ${o}: ${r}`)}}return Qe.info(`Add ${h} to PATH`),F(h),g()&&"string"==typeof process.env.RUNNER_TOOL_CACHE&&await Ot.cacheDir(n,e,t),{installDir:d,binDir:h}}function z(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:V("task"),extractedFolderName:"",extractFunction:i?Ot.extractZip:W,url:`https://github.com/go-task/task/releases/download/v${e}/task_${n}_${o}.${s}`}}function Y(e,r,n){var o;const i=null!==(o=t(io)(e))&&void 0!==o?o:e;switch(r){case"win32":{const r=t(oo)(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:V("cmake"),extractedFolderName:s,extractFunction:Ot.extractZip,url:`https://github.com/Kitware/CMake/releases/download/v${e}/${s}.zip`}}case"darwin":{const r=`cmake-${e}-${t(oo)(i,"v3.19.1")?"Darwin-x86_64":"macos-universal"}`;return{binRelativeDir:"CMake.app/Contents/bin/",binFileName:V("cmake"),extractedFolderName:r,extractFunction:Ot.extractTar,url:`https://github.com/Kitware/CMake/releases/download/v${e}/${r}.tar.gz`}}case"linux":{const r=t(oo)(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:V("cmake"),extractedFolderName:s,extractFunction:Ot.extractTar,url:`https://github.com/Kitware/CMake/releases/download/v${e}/${s}.tar.gz`}}default:throw Error(`Unsupported platform '${r}'`)}}function K(e,t,r){if(!g())return J(e,t);try{const{setupActionsPython:n}=Ze("apy8x");return n(e,t,r)}catch(r){return Qe.warning(r),J(e,t)}}async function J(e,t,r){switch(process.platform){case"win32":return t?G("python3",e,["--params=/InstallDir:"+t]):G("python3",e),Qe.info(`Add ${n=t} to PATH`),F(n),{installDir:t,binDir:t};case"darwin":return D("python3",e);case"linux":{const t=await L("python3",e);return await L("python3-pip"),t}default:throw Error("Unsupported platform")}var n}function Z(e){return new Promise((t=>{Le.get(e,(e=>{t(void 0!==e.statusCode&&e.statusCode>=200&&399>=e.statusCode)}))}))}function Q(e,t){return"true"===t||void 0===t&&e in lo?lo[e]:null!=t?t:""}async function ee(e,r){if(Qe.info(`Installing ${e} ${null!=r?r:""} via pip`),void 0===co){if(null!==t(or).sync("python3",{nothrow:!0}))co="python3";else{if(null===t(or).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 Ht.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(so)(o,r)})("python","3.0.0")){if(Qe.info("python3 was not found. Installing python"),await K(Q("python",void 0),"",process.arch),po)throw Error("Failed to install python");return po=!0,ee(e,r)}co="python"}"win32"===process.platform?t(fr).sync(co,["-m","pip","install","-U","pip==21.3.1"],{stdio:"inherit"}):"linux"===process.platform&&await L("python3-pip")}if(t(fr).sync(co,["-m","pip","install",void 0!==r&&""!==r?`${e}==${r}`:e],{stdio:"inherit"}),void 0===uo){if("linux"===process.platform)uo="/home/runner/.local/bin/";else if("darwin"===process.platform)uo="/usr/local/bin/";else try{uo=Ge.join((await Ht.getExecOutput(co+' -c "import sys;print(sys.base_exec_prefix);"')).stdout.trim(),"Scripts")}catch{uo=Ge.join((await Ht.getExecOutput(co+' -c "import sys;print(sys.base_exec_prefix);"')).stdout.trim(),"Scripts")}Qe.info(uo+" to PATH"),F(uo)}return{binDir:uo}}function te(e,t,r){switch(process.platform){case"win32":return G("graphviz",e),(()=>{if("win32"===process.platform){const e="C:/Program Files/Graphviz/bin";return F(e),{binDir:e}}throw Error("Unsupported platform")})();case"darwin":return D("graphviz",e);case"linux":return L("graphviz",e);default:throw Error("Unsupported platform")}}function re(e,t,r){if("linux"===t){const t="doxygen-"+e;return{binRelativeDir:"bin/",binFileName:V("doxygen"),extractedFolderName:t,extractFunction:Ot.extractTar,url:`https://www.doxygen.nl/files/${t}.linux.bin.tar.gz`}}throw Error(`Unsupported platform '${t}'`)}function ne(e,t){try{g()?Qe.exportVariable(e,t):oe(e,t)}catch(r){try{return y(r),oe(e,t)}catch(e){y(e)}y(`Failed to export environment variable ${e}=${t}. You should add it manually.`)}}function oe(e,t){const r=null!=t?t:"";switch(process.platform){case"win32":return j(`[Environment]::SetEnvironmentVariable("${e}", "${r}", "User")`),void Qe.info(`${e}="${r} was set in the environment."`);case"linux":case"darwin":{let t=k(".profile");return A()&&"string"==typeof process.env.SUDO_USER&&(t=Ge.join("/home/",process.env.SUDO_USER,".profile")),Me.appendFileSync(t,`\nexport ${e}="${r}"\n`),void Qe.info(`${e}="${r} was added to "${t}"`)}}process.env[e]=r}async function ie(){if("darwin"===process.platform)try{const e=await Ht.getExecOutput("xcrun --sdk macosx --show-sdk-path"),t=e.stdout||e.stderr;t?ne("SDKROOT",t.trim()):y("SDKROOT not set")}catch(e){y(e)}}async function se(e,r,n){let o;switch(process.platform){case"win32":var i,s;"arm"!==n&&"arm64"!==n||await G("gcc-arm-embedded",e),await G("mingw",e),"x64"===n&&Me.existsSync("C:/tools/mingw64/bin")?(o="C:/tools/mingw64/bin",F(o)):"ia32"===n&&Me.existsSync("C:/tools/mingw32/bin")?(o="C:/tools/mingw32/bin",F(o)):Me.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=D("gcc",e).binDir;break;case"linux":"x64"===n?(await L("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 L("g++",e,[])).binDir):(Qe.info(`Install g++-multilib because gcc for ${n} was requested`),await L("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 L("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)ne("CC",r+"/gcc"),ne("CXX",r+"/g++");else{var n;const o=t(ho)(null!==(n=t(io)(e))&&void 0!==n?n:e);5>o?(ne("CC",`${r}/gcc-${e}`),ne("CXX",`${r}/g++-${e}`)):(ne("CC",`${r}/gcc-${o}`),ne("CXX",`${r}/g++-${o}`))}await ie(),g()&&(()=>{const e=t(Ge).join(__dirname,"gcc_matcher.json");if(!Me.existsSync(e))return w("the gcc_matcher.json file does not exist in the same folder as setup_cpp.js");Qe.info("::add-matcher::"+e)})()})(e,o),{binDir:o}}function ae(e,t,r){return`https://github.com/llvm/llvm-project/releases/download/llvmorg-${e}/${t}${e}${r}`}function le(e,t,r){return`https://releases.llvm.org/${e}/${t}${e}${r}`}function ce(e,r){switch(e){case"darwin":return(e=>{if(mo.has(e))return null;const r="clang+llvm-",n=`-x86_64${"9.0.0"===e?"-darwin-apple":"-apple-darwin"}.tar.xz`;return t(oo)(e,"9.0.1")?le(e,r,n):ae(e,r,n)})(r);case"linux":return(e=>{let r=e;const n=vo.get(r);let o;void 0!==n&&(r=n),o=r.includes("ubuntu")?r:""!==r&&r in go?go[r]:go["13.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(oo)(r,"9.0.1")?le(r,i,s):ae(r,i,s)})(r);case"win32":return(async e=>{if(yo.has(e))return null;const r="LLVM-",n=t(oo)(e,"3.7.0")?"-win32.exe":"-win64.exe",o=t(oo)(e,"9.0.1");let i,s=!1;return o&&(i=le(e,r,n),await Z(i)||(s=!0)),!s&&o||(i=ae(e,r,n)),i})(r);default:return null}}async function ue(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 Z(e))return[o,e]}throw Error(`Unsupported target! (platform='${t}', version='${r}')`)})(fo,t,e,ce);return Qe.setOutput("version",n),{url:o,extractedFolderName:"",binRelativeDir:"bin",binFileName:V("clang"),extractFunction:"win32"===t?q:(e,t)=>W(e,t,["--strip-components=1"])}}async function pe(e,r,n){const o=await de(e,r,n);var i;return await(async(e,r)=>{const n=(e=>{if(null===t(ao)(e))try{const r=t(io)(e);if(null!==r)return r.version}catch(e){}return e})(r),o=Ge.join(e,"lib");var i;const s=null!==(i=process.env.LD_LIBRARY_PATH)&&void 0!==i?i:"";var a;const l=null!==(a=process.env.DYLD_LIBRARY_PATH)&&void 0!==a?a:"";ne("LLVM_PATH",e),ne("LD_LIBRARY_PATH",`${o}${Ge.delimiter}${s}`),ne("DYLD_LIBRARY_PATH",`${o}${Ge.delimiter}${l}`);const c=t(ho)(n);Me.existsSync(`${e}/lib/clang/${n}/include`)?ne("CPATH",`${e}/lib/clang/${n}/include`):Me.existsSync(`${e}/lib/clang/${c}/include`)&&ne("CPATH",`${e}/lib/clang/${c}/include`),ne("LDFLAGS",`-L${e}/lib`),ne("CPPFLAGS",`-I${e}/include`),ne("CC",e+"/bin/clang"),ne("CXX",e+"/bin/clang++"),ne("LIBRARY_PATH",e+"/lib"),await ie(),g()&&fe()})(null!==(i=o.installDir)&&void 0!==i?i:r,e),o}async function de(e,t,r){const n=await X("llvm",e,ue,t,r);return wo||("linux"===process.platform&&(await se(Q("gcc",void 0),0,r),await L("libtinfo-dev")),wo=!0),n}function he(e,t,r){return g()&&fe(),de(e,t,r)}function fe(){const e=Ge.join(__dirname,"llvm_matcher.json");if(!Me.existsSync(e))return w("the llvm_matcher.json file does not exist in the same folder as setup_cpp.js");Qe.info("::add-matcher::"+e)}function me(e,t,r){const n=new Io(e,t,r);process.stdout.write(""+n+Co.EOL)}function ve(e){Oo.issue("error",e instanceof Error?""+e:e)}function ge(e){Oo.issue("group",e)}function ye(){Oo.issue("endgroup")}function we(e){return Object.values(Vo).includes(e)?e:e in Vo?Vo[e]:e}function xe(e){if(Object.keys(Vo).includes(e))return e;for(const[t,r]of Object.entries(Vo))if(r===e)return t;return e}function Ee(e){const t=we(e);let r;if(t){const e=t.split(".")[0]+".9";r=`-version "${t},${e}"`}else r="-latest";let n=((e,t)=>{try{return(""+Ve.execSync(`vswhere -products * ${t} -prerelease -property installationPath`)).trim()+"\\VC\\Auxiliary\\Build\\vcvarsall.bat"}catch(e){So.warning("vswhere failed: "+e)}return null})(0,r);if(n&&Me.existsSync(n))return So.info("Found with vswhere: "+n),n;So.info("Not found with vswhere");const o=e?[xe(e)]:Go;for(const e of Mo)for(const t of o)for(const r of Uo)if(n=`${e}\\Microsoft Visual Studio\\${t}\\${r}\\VC\\Auxiliary\\Build\\vcvarsall.bat`,So.info("Trying standard location: "+n),Me.existsSync(n))return So.info("Found standard location: "+n),n;if(So.info("Not found in standard locations"),n=Fo+"\\Microsoft Visual C++ Build Tools\\vcbuildtools.bat",Me.existsSync(n))return So.info("Found VS 2015: "+n),n;throw So.info("Not found in VS 2015 location: "+n),Error("Microsoft Visual Studio not found")}function be(e){return-1!=["PATH","INCLUDE","LIB","LIBPATH"].indexOf(e.toUpperCase())}function Se(e,t,r,n,o,i,s){void 0!==t&&Me.existsSync(t)&&(Qe.info(`Adding ${t} to PATH`),ne("VCTargetsPath",t)),bo((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 _e(e,r,n,o,i,s){if("win32"!==process.platform)return;const a=xo(e);Qe.info(`Checking if MSVC ${a} is already installed`);let l,c,u=!1;try{const e=Eo(a);u=!0,Qe.info("Found the pre-installed version of MSVC at "+e)}catch{}if(!u)try{"14.0"===a?(l="14.0",G("visualcpp-build-tools","14.0.25420.1",["--ignore-dependencies"]),c="C:/Program Files (x86)/MSBuild/Microsoft.Cpp/v4.0/v140"):"15.0"===a?(l="14.16",G("visualstudio2017buildtools","15.9.41.0",[]),c="C:/Program Files (x86)/Microsoft Visual Studio/2017/BuildTools/VC/Tools/MSVC/14.16"):"16.0"===a?(l="14.29",G("visualstudio2019buildtools","16.11.7.0",[]),c="C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.29.30133"):"17.0"===a?(l=void 0,G("visualstudio2022buildtools","117.0.5.0",[]),c=void 0):y(`The given MSVC versions ${e} is not supported yet.`)}catch(e){y(e)}Se(a,c,n,l,o,i,s),g()&&(()=>{const e=t(Ge).join(__dirname,"msvc_matcher.json");if(!Me.existsSync(e))return w("the msvc_matcher.json file does not exist in the same folder as setup_cpp.js");Qe.info("::add-matcher::"+e)})()}function Pe(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:V("ninja"),extractedFolderName:"",extractFunction:Ot.extractZip,url:`https://github.com/ninja-build/ninja/releases/download/v${e}/ninja-${n}.zip`}}function Oe(e){return null==e?[]:Array.isArray(e)?e:[e]}function $e(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 Ce(e){const r=parseInt(e.replace(/^v/,""),10);return 38===r&&(e="v38"),39>r?{url:`https://github.com/SimonKagstrom/kcov/archive/refs/tags/${e}.tar.gz`,extractedFolderName:"kcov-"+r,binRelativeDir:"build/",binFileName:V("kcov"),async extractFunction(e,r){const n=await W(e,r);return await L("libdw-dev"),await L("libcurl4-openssl-dev"),await t(fr)("cmake",["-S","./","-B","./build"],{cwd:n,stdio:"inherit"}),await t(fr)("cmake",["--build","./build","--config","Release"],{cwd:n,stdio:"inherit"}),await N("cmake",["--install","./build"],n),n}}:{url:`https://github.com/SimonKagstrom/kcov/releases/download/${e}/kcov-amd64.tar.gz`,extractedFolderName:"",binRelativeDir:"usr/local/bin",binFileName:V("kcov"),extractFunction:W}}async function Te(e){g()||(process.env.ACTIONS_ALLOW_UNSECURE_COMMANDS="true");const t=((e,t)=>{var r,n,o,i,s,a={_:[]},l=0,c=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=Oe(t.string),t.boolean=Oe(t.boolean),d)for(r in t.alias)for(n=t.alias[r]=Oe(t.alias[r]),l=0;n.length>l;l++)(t.alias[n[l]]=n.concat(r)).splice(l,1);for(l=t.boolean.length;l-- >0;)for(c=(n=t.alias[t.boolean[l]]||[]).length;c-- >0;)t.boolean.push(n[c]);for(l=t.string.length;l-- >0;)for(c=(n=t.alias[t.string[l]]||[]).length;c-- >0;)t.string.push(n[c]);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),l=0;n.length>l;l++)t[i].push(n[l]);const m=h?Object.keys(t.alias):[];for(l=0;p>l;l++){if("--"===(o=e[l])){a._=a._.concat(e.slice(++l));break}for(c=0;o.length>c&&45===o.charCodeAt(c);c++);if(0===c)a._.push(o);else if("no-"===o.substring(c,c+3)){if(i=o.substring(c+3),h&&!~m.indexOf(i))return t.unknown(o);a[i]=!1}else{for(u=c+1;o.length>u&&61!==o.charCodeAt(u);u++);for(i=o.substring(c,u),s=o.substring(++u)||l+1===p||45===(""+e[l+1]).charCodeAt(0)||e[++l],n=2===c?[i]:i,u=0;n.length>u;u++){if(i=n[u],h&&!~m.indexOf(i))return t.unknown("-".repeat(c)+i);$e(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:Xo,default:Object.fromEntries(Xo.map((e=>[e,Re(e)]))),alias:{h:"help"},boolean:"help"});var r;t.help&&Qe.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:k(""),s=[],a=[];for(const e of Wo){const r=t[e];if(void 0!==r){Qe.startGroup(`Installing ${e} ${r}`);try{let t;if("vcvarsall"===e)Se(Q(e,r),void 0,n,void 0,void 0,!1,!1);else{const o=qo[e];t=await o(Q(e,r),Ge.join(i,e),n)}s.push(Ae(e,t))}catch(t){y(t),a.push(e+" failed to install")}Qe.endGroup()}}const l=t.compiler;try{if(void 0!==l){const{compiler:e,version:t}=Ie(l);switch(Qe.startGroup(`Installing ${e} ${null!=t?t:""}`),e){case"llvm":case"clang":case"clang++":{const e=await pe(Q("llvm",t),Ge.join(i,"llvm"),n);s.push(Ae("llvm",e));break}case"gcc":case"mingw":case"cygwin":case"msys":{const e=await se(Q("gcc",t),Ge.join(i,"gcc"),n);s.push(Ae("gcc",e));break}case"cl":case"msvc":case"msbuild":case"vs":case"visualstudio":case"visualcpp":case"visualc++":{const e=_e(Q("msvc",t),Ge.join(i,"msvc"),n);s.push(Ae("msvc",e));break}case"appleclang":case"applellvm":Qe.info("Assuming apple-clang is already installed"),ne("CC","clang"),ne("CXX","clang++"),s.push(Ae("apple-clang",void 0));break;default:a.push("Unsupported compiler "+e)}Qe.endGroup()}}catch(e){y(e),a.push("Failed to install the "+l),Qe.endGroup()}if(0===s.length&&0===a.length)return w("setup_cpp was called without any arguments. Nothing to do."),0;if(s.forEach((e=>{return t=e,g()?Qe.info(t):console.log(`${t}`);var t})),a.forEach((e=>y(e))),Qe.info("setup_cpp finished"),!g())switch(process.platform){case"win32":Qe.info("Run `RefreshEnv.cmd` or restart your shell to update the environment.");break;case"linux":case"darwin":Qe.info("Run `source ~/.profile` or restart your shell to update the environment.")}return 0===a.length?0:1}function Ie(e){const r=e.split("-"),n=r[0];if(1 in r){const e=r[1];return null!==t(ao)(e)||Qe.info(`Invalid semver version ${e} used for the compiler.`),{compiler:n,version:e}}return{compiler:n,version:void 0}}function Re(e){const t=Qe.getInput(e.toLowerCase());if("false"!==t&&""!==t)return t}function Ae(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 Ne=require("http"),Le=require("https");require("net");var De=require("tls"),ke=require("events"),je=require("assert"),Fe=require("util"),Me=require("fs"),Ue=require("os"),Ge=require("path"),Ve=require("child_process"),He=require("crypto"),Be=require("timers"),qe=require("stream"),We=require("string_decoder"),Xe=require("buffer"),ze=require("process"),Ye="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},Ke={},Je={},Ze=Ye.parcelRequire810d;null==Ze&&((Ze=e=>{if(e in Ke)return Ke[e].exports;if(e in Je){var t=Je[e];delete Je[e];var r={id:e,exports:{}};return Ke[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)=>{Je[e]=t},Ye.parcelRequire810d=Ze),Ze.register("ba1Cu",(function(e,t){"use strict";Object.defineProperty(e.exports,"__esModule",{value:!0});var r=Ze("8NGVX");let n;var o,i,s,a,l;(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",(l=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 c=[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,l.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,l.ApplicationJson),r[s.ContentType]=this._getExistingOrDefaultHeader(r,s.ContentType,l.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,l.ApplicationJson),r[s.ContentType]=this._getExistingOrDefaultHeader(r,s.ContentType,l.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,l.ApplicationJson),r[s.ContentType]=this._getExistingOrDefaultHeader(r,s.ContentType,l.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),l=this._allowRetries&&-1!=p.indexOf(e)?this._maxRetries+1:1,d=0;for(;l>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!=c.indexOf(i.message.statusCode)&&this._allowRedirects&&t>0;){const o=i.message.headers.location;if(!o)break;let l=new URL(o);if("https:"==s.protocol&&s.protocol!=l.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(),l.hostname!==s.hostname)for(let e in n)"authorization"===e.toLowerCase()&&delete n[e];a=this._prepareRequest(e,l,n),i=await this.requestRaw(a,r),t--}if(-1==u.indexOf(i.message.statusCode))return i;d+=1,l>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?Le:Ne;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||Ne.globalAgent.maxSockets),i){n||(n=Ze("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 Le.Agent(e):new Ne.Agent(e),this._agent=t}return t||(t=s?Le.globalAgent:Ne.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,l;i==o.NotFound&&r(s);try{l=await e.readBody(),l&&l.length>0&&(a=t&&t.deserializeDates?JSON.parse(l,f.dateTimeDeserializer):JSON.parse(l),s.result=a),s.headers=e.message.headers}catch(e){}if(i>299){let e;e=a&&a.message?a.message:l&&l.length>0?l:"Failed request: ("+i+")";let t=new d(e,i);t.result=s.result,n(t)}else r(s)}))}}e.exports.HttpClient=f})),Ze.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})),Ze.register("bbp3j",((e,t)=>{e.exports=Ze("fNJ5J")})),Ze.register("fNJ5J",(function(t,r){function n(e){var t=this;t.options=e||{},t.proxyOptions=t.options.proxy||{},t.maxSockets=t.options.maxSockets||Ne.Agent.defaultMaxSockets,t.requests=[],t.sockets=[],t.on("free",((e,r,n,o)=>{for(var s=i(r,n,o),a=0,l=t.requests.length;l>a;++a){var c=t.requests[a];if(c.host===s.host&&c.port===s.port)return t.requests.splice(a,1),void c.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=De.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,l,c,u,p,d;e(t.exports,"httpOverHttp",(()=>a),(e=>a=e)),e(t.exports,"httpsOverHttp",(()=>l),(e=>l=e)),e(t.exports,"httpOverHttps",(()=>c),(e=>c=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=Ne.request,t},l=e=>{var t=new n(e);return t.request=Ne.request,t.createSocket=o,t.defaultPort=443,t},c=e=>{var t=new n(e);return t.request=Le.request,t},u=e=>{var t=new n(e);return t.request=Le.request,t.createSocket=o,t.defaultPort=443,t},Fe.inherits(n,ke.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 l;return a.removeAllListeners(),i.removeAllListeners(),200!==r.statusCode?(d("tunneling socket could not be established, statusCode=%d",r.statusCode),i.destroy(),(l=Error("tunneling socket could not be established, statusCode="+r.statusCode)).code="ECONNRESET",e.request.emit("error",l),void n.removeSocket(o)):s.length>0?(d("got illegal response body from proxy"),i.destroy(),(l=Error("got illegal response body from proxy")).code="ECONNRESET",e.request.emit("error",l),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=()=>{}})),Ze.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){Me.stat(e,((o,i)=>{n(o,!o&&r(i,e,t))}))}e.exports=n,n.sync=(e,t)=>r(Me.statSync(e),e,t)})),Ze.register("9yF3I",((e,t)=>{function r(e,t,r){Me.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),l=parseInt("010",8),c=a|l;return r&parseInt("001",8)||r&l&&o===s||r&a&&n===i||r&c&&0===i})(e,t)}e.exports=r,r.sync=(e,t)=>n(Me.statSync(e),t)})),Ze.register("4wFnS",(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}),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)&&s(t,e,r);return a(t,e),t}),c=e.exports&&e.exports.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{l(n.next(e))}catch(e){i(e)}}function a(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.getState=e.exports.saveState=e.exports.group=e.exports.endGroup=e.exports.startGroup=e.exports.info=e.exports.notice=e.exports.warning=e.exports.error=e.exports.debug=e.exports.isDebug=e.exports.setFailed=e.exports.setCommandEcho=e.exports.setOutput=e.exports.getBooleanInput=e.exports.getMultilineInput=e.exports.getInput=e.exports.addPath=e.exports.setSecret=e.exports.exportVariable=e.exports.ExitCode=void 0;var u=Ze("VYPTu"),p=Ze("6aHzk"),d=Ze("gczhj");const h=l(Ue),f=l(Ge);var m,v;(v=m=e.exports.ExitCode||(e.exports.ExitCode={}))[v.Success=0]="Success",v[v.Failure=1]="Failure",e.exports.exportVariable=(e,t)=>{const r=d.toCommandValue(t);if(process.env[e]=r,process.env.GITHUB_ENV){const t="_GitHubActionsFileCommandDelimeter_";p.issueCommand("ENV",`${e}<<${t}${h.EOL}${r}${h.EOL}${t}`)}else u.issueCommand("set-env",{name:e},r)},e.exports.setSecret=e=>{u.issueCommand("add-mask",{},e)},e.exports.addPath=e=>{process.env.GITHUB_PATH?p.issueCommand("PATH",e):u.issueCommand("add-path",{},e),process.env.PATH=`${e}${f.delimiter}${process.env.PATH}`},e.exports.getInput=r,e.exports.getMultilineInput=(e,t)=>r(e,t).split("\n").filter((e=>""!==e)),e.exports.getBooleanInput=(e,t)=>{const 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 c(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]||""})),Ze.register("VYPTu",(function(e,t){"use strict";function r(e,t,r){const n=new l(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(Ue);var a=Ze("gczhj");e.exports.issueCommand=r,e.exports.issue=(e,t="")=>{r(e,{},t)};class l{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}}})),Ze.register("gczhj",((e,t)=>{"use strict";Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.toCommandProperties=e.exports.toCommandValue=void 0,e.exports.toCommandValue=e=>null==e?"":"string"==typeof e||e instanceof String?e:JSON.stringify(e),e.exports.toCommandProperties=e=>Object.keys(e).length?{title:e.title,line:e.startLine,endLine:e.endLine,col:e.startColumn,endColumn:e.endColumn}:{}})),Ze.register("6aHzk",((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(Me),s=o(Ue);var a=Ze("gczhj");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"})}})),Ze.register("bMvjP",(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*(){je.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}`,l=`${t}/${n}`;(yield h.lstat(a)).isDirectory()?yield i(a,l,r,o):yield s(a,l,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]}),l=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)&&a(t,e,r);return l(t,e),t}),u=e.exports&&e.exports.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{l(n.next(e))}catch(e){i(e)}}function a(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}l((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=c(Ve),d=c(Ge),h=c(Ze("jXMuL")),f=Fe.promisify(p.exec),m=Fe.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),l=(yield h.exists(t))?yield h.stat(t):null;if(l&&l.isFile()&&!n)return;const c=l&&l.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,c,0,n)}else{if(""===d.relative(e,c))throw Error(`'${c}' and '${e}' are the same file`);yield s(e,c,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})),Ze.register("jXMuL",(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{l(n.next(e))}catch(e){i(e)}}function a(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}l((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 l=s(Me),c=s(Ge);e.exports.chmod=(n=l.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=c.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=c.dirname(t),n=c.basename(t).toUpperCase();for(const o of yield e.exports.readdir(r))if(n===o.toUpperCase()){t=c.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"}})),Ze.register("l7BLh",(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{l(n.next(e))}catch(e){i(e)}}function a(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}l((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(Ze("7Lo32"));var a=Ze("4wFnS");e.exports._findMatch=function(t,r,n,o){return i(this,void 0,void 0,(function*(){const i=Ue.platform();let l,c,u;for(const l of n){const n=l.version;if(a.debug(`check ${n} satisfies ${t}`),s.satisfies(n,t)&&(!r||l.stable===r)&&(u=l.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 "+l.version),c=l;break}}return c&&u&&(l=Object.assign({},c),l.files=[u]),l}))},e.exports._getOsVersion=()=>{const t=Ue.platform();let r="";if("darwin"===t)r=""+Ve.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 Me.existsSync(e)?r=""+Me.readFileSync(e):Me.existsSync(t)&&(r=""+Me.readFileSync(t)),r}})),Ze.register("7Lo32",((e,t)=>{var r=Ze("bvxLv");e.exports={re:r.re,src:r.src,tokens:r.t,SEMVER_SPEC_VERSION:Ze("fdwSe").SEMVER_SPEC_VERSION,SemVer:Ze("lFsiB"),compareIdentifiers:Ze("iwJsr").compareIdentifiers,rcompareIdentifiers:Ze("iwJsr").rcompareIdentifiers,parse:Ze("duwNw"),valid:Ze("3vako"),clean:Ze("4O9De"),inc:Ze("4pwP3"),diff:Ze("3KZ51"),major:Ze("gro6R"),minor:Ze("iawVE"),patch:Ze("f85A0"),prerelease:Ze("ctiRO"),compare:Ze("dvs9N"),rcompare:Ze("2Y98I"),compareLoose:Ze("7twMD"),compareBuild:Ze("6PcNk"),sort:Ze("csbi6"),rsort:Ze("qJMGv"),gt:Ze("0Lbfy"),lt:Ze("epyGF"),eq:Ze("fZcKH"),neq:Ze("iiSw7"),gte:Ze("7xTgx"),lte:Ze("dj1Te"),cmp:Ze("5lOVn"),coerce:Ze("3w4LS"),Comparator:Ze("7CcqG"),Range:Ze("4SVex"),satisfies:Ze("hID6V"),toComparators:Ze("1KxDd"),maxSatisfying:Ze("hAUPX"),minSatisfying:Ze("j168r"),minVersion:Ze("iKMXF"),validRange:Ze("aIAu1"),outside:Ze("7MTZc"),gtr:Ze("egpbD"),ltr:Ze("jKdoI"),intersects:Ze("84pp0"),simplifyRange:Ze("6KbSC"),subset:Ze("83Xwe")}})),Ze.register("bvxLv",((e,t)=>{var r=Ze("fdwSe").MAX_SAFE_COMPONENT_LENGTH,n=Ze("6m3CZ");const o=(t=e.exports={}).re=[],i=t.src=[],s=t.t={};let a=0;const l=(e,t,r)=>{const l=a++;n(l,t),s[e]=l,i[l]=t,o[l]=RegExp(t,r?"g":void 0)};l("NUMERICIDENTIFIER","0|[1-9]\\d*"),l("NUMERICIDENTIFIERLOOSE","[0-9]+"),l("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),l("MAINVERSION",`(${i[s.NUMERICIDENTIFIER]})\\.(${i[s.NUMERICIDENTIFIER]})\\.(${i[s.NUMERICIDENTIFIER]})`),l("MAINVERSIONLOOSE",`(${i[s.NUMERICIDENTIFIERLOOSE]})\\.(${i[s.NUMERICIDENTIFIERLOOSE]})\\.(${i[s.NUMERICIDENTIFIERLOOSE]})`),l("PRERELEASEIDENTIFIER",`(?:${i[s.NUMERICIDENTIFIER]}|${i[s.NONNUMERICIDENTIFIER]})`),l("PRERELEASEIDENTIFIERLOOSE",`(?:${i[s.NUMERICIDENTIFIERLOOSE]}|${i[s.NONNUMERICIDENTIFIER]})`),l("PRERELEASE",`(?:-(${i[s.PRERELEASEIDENTIFIER]}(?:\\.${i[s.PRERELEASEIDENTIFIER]})*))`),l("PRERELEASELOOSE",`(?:-?(${i[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${i[s.PRERELEASEIDENTIFIERLOOSE]})*))`),l("BUILDIDENTIFIER","[0-9A-Za-z-]+"),l("BUILD",`(?:\\+(${i[s.BUILDIDENTIFIER]}(?:\\.${i[s.BUILDIDENTIFIER]})*))`),l("FULLPLAIN",`v?${i[s.MAINVERSION]}${i[s.PRERELEASE]}?${i[s.BUILD]}?`),l("FULL",`^${i[s.FULLPLAIN]}$`),l("LOOSEPLAIN",`[v=\\s]*${i[s.MAINVERSIONLOOSE]}${i[s.PRERELEASELOOSE]}?${i[s.BUILD]}?`),l("LOOSE",`^${i[s.LOOSEPLAIN]}$`),l("GTLT","((?:<|>)?=?)"),l("XRANGEIDENTIFIERLOOSE",i[s.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*"),l("XRANGEIDENTIFIER",i[s.NUMERICIDENTIFIER]+"|x|X|\\*"),l("XRANGEPLAIN",`[v=\\s]*(${i[s.XRANGEIDENTIFIER]})(?:\\.(${i[s.XRANGEIDENTIFIER]})(?:\\.(${i[s.XRANGEIDENTIFIER]})(?:${i[s.PRERELEASE]})?${i[s.BUILD]}?)?)?`),l("XRANGEPLAINLOOSE",`[v=\\s]*(${i[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${i[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${i[s.XRANGEIDENTIFIERLOOSE]})(?:${i[s.PRERELEASELOOSE]})?${i[s.BUILD]}?)?)?`),l("XRANGE",`^${i[s.GTLT]}\\s*${i[s.XRANGEPLAIN]}$`),l("XRANGELOOSE",`^${i[s.GTLT]}\\s*${i[s.XRANGEPLAINLOOSE]}$`),l("COERCE",`(^|[^\\d])(\\d{1,${r}})(?:\\.(\\d{1,${r}}))?(?:\\.(\\d{1,${r}}))?(?:$|[^\\d])`),l("COERCERTL",i[s.COERCE],!0),l("LONETILDE","(?:~>?)"),l("TILDETRIM",`(\\s*)${i[s.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",l("TILDE",`^${i[s.LONETILDE]}${i[s.XRANGEPLAIN]}$`),l("TILDELOOSE",`^${i[s.LONETILDE]}${i[s.XRANGEPLAINLOOSE]}$`),l("LONECARET","(?:\\^)"),l("CARETTRIM",`(\\s*)${i[s.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",l("CARET",`^${i[s.LONECARET]}${i[s.XRANGEPLAIN]}$`),l("CARETLOOSE",`^${i[s.LONECARET]}${i[s.XRANGEPLAINLOOSE]}$`),l("COMPARATORLOOSE",`^${i[s.GTLT]}\\s*(${i[s.LOOSEPLAIN]})$|^$`),l("COMPARATOR",`^${i[s.GTLT]}\\s*(${i[s.FULLPLAIN]})$|^$`),l("COMPARATORTRIM",`(\\s*)${i[s.GTLT]}\\s*(${i[s.LOOSEPLAIN]}|${i[s.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",l("HYPHENRANGE",`^\\s*(${i[s.XRANGEPLAIN]})\\s+-\\s+(${i[s.XRANGEPLAIN]})\\s*$`),l("HYPHENRANGELOOSE",`^\\s*(${i[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${i[s.XRANGEPLAINLOOSE]})\\s*$`),l("STAR","(<|>)?=?\\s*\\*"),l("GTE0","^\\s*>=\\s*0.0.0\\s*$"),l("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")})),Ze.register("fdwSe",((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}})),Ze.register("6m3CZ",((e,t)=>{const r=("object"==typeof process&&process,()=>{});e.exports=r})),Ze.register("lFsiB",(function(e,t){var r=Ze("6m3CZ"),n=Ze("fdwSe"),o=n.MAX_LENGTH,i=n.MAX_SAFE_INTEGER,s=Ze("bvxLv"),a=s.re,l=s.t,c=Ze("3YuHv"),u=Ze("iwJsr").compareIdentifiers;class p{constructor(e,t){if(t=c(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[l.LOOSE]:a[l.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&&(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})),Ze.register("3YuHv",((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)),{}):{}})),Ze.register("iwJsr",((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)}}})),Ze.register("duwNw",((e,t)=>{var r=Ze("fdwSe").MAX_LENGTH,n=Ze("bvxLv"),o=n.re,i=n.t,s=Ze("lFsiB"),a=Ze("3YuHv");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}}})),Ze.register("3vako",((e,t)=>{var r=Ze("duwNw");e.exports=(e,t)=>{const n=r(e,t);return n?n.version:null}})),Ze.register("4O9De",((e,t)=>{var r=Ze("duwNw");e.exports=(e,t)=>{const n=r(e.trim().replace(/^[=v]+/,""),t);return n?n.version:null}})),Ze.register("4pwP3",((e,t)=>{var r=Ze("lFsiB");e.exports=(e,t,n,o)=>{"string"==typeof n&&(o=n,n=void 0);try{return new r(e,n).inc(t,o).version}catch(e){return null}}})),Ze.register("3KZ51",((e,t)=>{var r=Ze("duwNw"),n=Ze("fZcKH");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}}})),Ze.register("fZcKH",((e,t)=>{var r=Ze("dvs9N");e.exports=(e,t,n)=>0===r(e,t,n)})),Ze.register("dvs9N",((e,t)=>{var r=Ze("lFsiB");e.exports=(e,t,n)=>new r(e,n).compare(new r(t,n))})),Ze.register("gro6R",((e,t)=>{var r=Ze("lFsiB");e.exports=(e,t)=>new r(e,t).major})),Ze.register("iawVE",((e,t)=>{var r=Ze("lFsiB");e.exports=(e,t)=>new r(e,t).minor})),Ze.register("f85A0",((e,t)=>{var r=Ze("lFsiB");e.exports=(e,t)=>new r(e,t).patch})),Ze.register("ctiRO",((e,t)=>{var r=Ze("duwNw");e.exports=(e,t)=>{const n=r(e,t);return n&&n.prerelease.length?n.prerelease:null}})),Ze.register("2Y98I",((e,t)=>{var r=Ze("dvs9N");e.exports=(e,t,n)=>r(t,e,n)})),Ze.register("7twMD",((e,t)=>{var r=Ze("dvs9N");e.exports=(e,t)=>r(e,t,!0)})),Ze.register("6PcNk",((e,t)=>{var r=Ze("lFsiB");e.exports=(e,t,n)=>{const o=new r(e,n),i=new r(t,n);return o.compare(i)||o.compareBuild(i)}})),Ze.register("csbi6",((e,t)=>{var r=Ze("6PcNk");e.exports=(e,t)=>e.sort(((e,n)=>r(e,n,t)))})),Ze.register("qJMGv",((e,t)=>{var r=Ze("6PcNk");e.exports=(e,t)=>e.sort(((e,n)=>r(n,e,t)))})),Ze.register("0Lbfy",((e,t)=>{var r=Ze("dvs9N");e.exports=(e,t,n)=>r(e,t,n)>0})),Ze.register("epyGF",((e,t)=>{var r=Ze("dvs9N");e.exports=(e,t,n)=>0>r(e,t,n)})),Ze.register("iiSw7",((e,t)=>{var r=Ze("dvs9N");e.exports=(e,t,n)=>0!==r(e,t,n)})),Ze.register("7xTgx",((e,t)=>{var r=Ze("dvs9N");e.exports=(e,t,n)=>r(e,t,n)>=0})),Ze.register("dj1Te",((e,t)=>{var r=Ze("dvs9N");e.exports=(e,t,n)=>0>=r(e,t,n)})),Ze.register("5lOVn",((e,t)=>{var r=Ze("fZcKH"),n=Ze("iiSw7"),o=Ze("0Lbfy"),i=Ze("7xTgx"),s=Ze("epyGF"),a=Ze("dj1Te");e.exports=(e,t,l,c)=>{switch(t){case"===":return"object"==typeof e&&(e=e.version),"object"==typeof l&&(l=l.version),e===l;case"!==":return"object"==typeof e&&(e=e.version),"object"==typeof l&&(l=l.version),e!==l;case"":case"=":case"==":return r(e,l,c);case"!=":return n(e,l,c);case">":return o(e,l,c);case">=":return i(e,l,c);case"<":return s(e,l,c);case"<=":return a(e,l,c);default:throw new TypeError("Invalid operator: "+t)}}})),Ze.register("3w4LS",((e,t)=>{var r=Ze("lFsiB"),n=Ze("duwNw"),o=Ze("bvxLv"),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)}})),Ze.register("7CcqG",(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}c("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.value=this.semver===r?"":this.operator+this.semver.version,c("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(c("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 l(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=l(this.semver,"<",e.semver,t)&&(">="===this.operator||">"===this.operator)&&("<="===e.operator||"<"===e.operator),c=l(this.semver,">",e.semver,t)&&("<="===this.operator||"<"===this.operator)&&(">="===e.operator||">"===e.operator);return r||o||i&&s||a||c}}e.exports=n;var o=Ze("3YuHv"),i=Ze("bvxLv"),s=i.re,a=i.t,l=Ze("5lOVn"),c=Ze("6m3CZ"),u=Ze("lFsiB"),p=Ze("4SVex")})),Ze.register("4SVex",(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(/\s*\|\|\s*/).map((e=>this.parseRange(e.trim()))).filter((e=>e.length)),!this.set.length)throw new TypeError("Invalid SemVer Range: "+e);if(this.set.length>1){const e=this.set[0];if(this.set=this.set.filter((e=>!f(e[0]))),0===this.set.length)this.set=[e];else if(this.set.length>1)for(const e of this.set)if(1===e.length&&m(e[0])){this.set=[e];break}}this.format()}format(){return this.range=this.set.map((e=>e.join(" ").trim())).join("||").trim(),this.range}toString(){return this.range}parseRange(e){e=e.trim();const t=`parseRange:${Object.keys(this.options).join(",")}:${e}`,r=n.get(t);if(r)return r;const o=this.options.loose;e=e.replace(o?c[u.HYPHENRANGELOOSE]:c[u.HYPHENRANGE],$(this.options.includePrerelease)),s("hyphen replace",e),e=e.replace(c[u.COMPARATORTRIM],p),s("comparator trim",e,c[u.COMPARATORTRIM]),e=(e=(e=e.replace(c[u.TILDETRIM],d)).replace(c[u.CARETTRIM],h)).split(/\s+/).join(" ");const a=o?c[u.COMPARATORLOOSE]:c[u.COMPARATOR],l=e.split(" ").map((e=>g(e,this.options))).join(" ").split(/\s+/).map((e=>O(e,this.options))).filter(this.options.loose?e=>!!e.match(a):()=>!0).map((e=>new i(e,this.options))),m=new Map;for(const e of l){if(f(e))return[e];m.set(e.value,e)}m.size>1&&m.has("")&&m.delete("");const v=[...m.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(C(this.set[t],e,this.options))return!0;return!1}}e.exports=r;const n=new(Ze("lIfWq"))({max:1e3});var o=Ze("3YuHv"),i=Ze("7CcqG"),s=Ze("6m3CZ"),a=Ze("lFsiB"),l=Ze("bvxLv"),c=l.re,u=l.t,p=l.comparatorTrimReplace,d=l.tildeTrimReplace,h=l.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=E(e,t),s("caret",e),e=w(e,t),s("tildes",e),e=S(e,t),s("xrange",e),e=P(e,t),s("stars",e),e),y=e=>!e||"x"===e.toLowerCase()||"*"===e,w=(e,t)=>e.trim().split(/\s+/).map((e=>x(e,t))).join(" "),x=(e,t)=>e.replace(t.loose?c[u.TILDELOOSE]:c[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})),E=(e,t)=>e.trim().split(/\s+/).map((e=>b(e,t))).join(" "),b=(e,t)=>{s("caret",e,t);const r=t.includePrerelease?"-0":"";return e.replace(t.loose?c[u.CARETLOOSE]:c[u.CARET],((t,n,o,i,a)=>{let l;return s("caret",e,t,n,o,i,a),y(n)?l="":y(o)?l=`>=${n}.0.0${r} <${+n+1}.0.0-0`:y(i)?l="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),l="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"),l="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",l),l}))},S=(e,t)=>(s("replaceXRanges",e,t),e.split(/\s+/).map((e=>_(e,t))).join(" ")),_=(e,t)=>(e=e.trim()).replace(t.loose?c[u.XRANGELOOSE]:c[u.XRANGE],((r,n,o,i,a,l)=>{s("xRange",e,r,n,o,i,a,l);const c=y(o),u=c||y(i),p=u||y(a);return"="===n&&p&&(n=""),l=t.includePrerelease?"-0":"",c?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&&(l="-0"),r=`${n+o}.${i}.${a}${l}`):u?r=`>=${o}.0.0${l} <${+o+1}.0.0-0`:p&&(r=`>=${o}.${i}.0${l} <${o}.${+i+1}.0-0`),s("xRange return",r),r})),P=(e,t)=>(s("replaceStars",e,t),e.trim().replace(c[u.STAR],"")),O=(e,t)=>(s("replaceGTE0",e,t),e.trim().replace(c[t.includePrerelease?u.GTE0PRE:u.GTE0],"")),$=e=>(t,r,n,o,i,s,a,l,c,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":""}`} ${l=y(c)?"":y(u)?`<${+c+1}.0.0-0`:y(p)?`<${c}.${+u+1}.0-0`:d?`<=${c}.${u}.${p}-${d}`:e?`<${c}.${u}.${+p+1}-0`:"<="+l}`.trim(),C=(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}})),Ze.register("lIfWq",(function(e,t){"use strict";var r=Ze("52BTm");const n=Symbol(),o=Symbol(),i=Symbol(),s=Symbol(),a=Symbol(),l=Symbol(),c=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[l]&&e[l](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 w=(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[l]=e.dispose,this[c]=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;w(this,e,r,t),r=n}}forEach(e,t){t=t||this;for(let r=this[u].head;null!==r;){const n=r.next;w(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[l]&&this[u]&&this[u].length&&this[u].forEach((e=>this[l](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[l]&&(this[c]||this[l](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[l]&&this[l](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)))}}})),Ze.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{Ze("d6YpR")(r)}catch(e){}})),Ze.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}}})),Ze.register("hID6V",((e,t)=>{var r=Ze("4SVex");e.exports=(e,t,n)=>{try{t=new r(t,n)}catch(e){return!1}return t.test(e)}})),Ze.register("1KxDd",((e,t)=>{var r=Ze("4SVex");e.exports=(e,t)=>new r(e,t).set.map((e=>e.map((e=>e.value)).join(" ").trim().split(" ")))})),Ze.register("hAUPX",((e,t)=>{var r=Ze("lFsiB"),n=Ze("4SVex");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}})),Ze.register("j168r",((e,t)=>{var r=Ze("lFsiB"),n=Ze("4SVex");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}})),Ze.register("iKMXF",((e,t)=>{var r=Ze("lFsiB"),n=Ze("4SVex"),o=Ze("0Lbfy");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}})),Ze.register("aIAu1",((e,t)=>{var r=Ze("4SVex");e.exports=(e,t)=>{try{return new r(e,t).range||"*"}catch(e){return null}}})),Ze.register("7MTZc",((e,t)=>{var r=Ze("lFsiB"),n=Ze("7CcqG");const{ANY:o}=n;var i=Ze("4SVex"),s=Ze("hID6V"),a=Ze("0Lbfy"),l=Ze("epyGF"),c=Ze("dj1Te"),u=Ze("7xTgx");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=c,m=l,v=">",g=">=";break;case"<":h=l,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}})),Ze.register("egpbD",((e,t)=>{var r=Ze("7MTZc");e.exports=(e,t,n)=>r(e,t,">",n)})),Ze.register("jKdoI",((e,t)=>{var r=Ze("7MTZc");e.exports=(e,t,n)=>r(e,t,"<",n)})),Ze.register("84pp0",((e,t)=>{var r=Ze("4SVex");e.exports=(e,t,n)=>(e=new r(e,n),t=new r(t,n),e.intersects(t))})),Ze.register("6KbSC",((e,t)=>{var r=Ze("hID6V"),n=Ze("dvs9N");e.exports=(e,t,o)=>{const i=[];let s=null,a=null;const l=e.sort(((e,t)=>n(e,t,o)));for(const e of l)r(e,t,o)?(a=e,s||(s=e)):(a&&i.push([s,a]),a=null,s=null);s&&i.push([s,null]);const c=[];for(const[e,t]of i)c.push(e===t?e:t||e!==l[0]?t?e===l[0]?"<="+t:`${e} - ${t}`:">="+e:"*");const u=c.join(" || ");return("string"==typeof t.raw?t.raw:t+"").length>u.length?u:t}})),Ze.register("83Xwe",((e,t)=>{var r=Ze("4SVex"),n=Ze("7CcqG");const{ANY:o}=n;var i=Ze("hID6V"),s=Ze("dvs9N");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=l(u,t,r):"<"===t.operator||"<="===t.operator?p=c(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=l(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=c(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)},l=(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},c=(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}})),Ze.register("iFKS7",((e,t)=>{var r=Ze("joDHm"),n=Ze("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)}})),Ze.register("joDHm",((e,t)=>{e.exports=()=>He.randomBytes(16)})),Ze.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++]]}})),Ze.register("2c9fQ",(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{l(n.next(e))}catch(e){i(e)}}function a(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.argStringToArray=e.exports.ToolRunner=void 0;const s=o(Ue),a=o(ke),l=o(Ve),c=o(Ge),u=o(Ze("bMvjP")),p=o(Ze("jXMuL")),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=c.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=l.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 c="";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),c=this._processLineBuffer(e,c,(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),c.length>0&&this.emit("errline",c),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=Be.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())}}})),Ze.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}`,Qe.info(`Successfully setup PyPy ${t.resolvedPyPyVersion} with Python (${t.resolvedPythonVersion})`)}else{const t=await i.findPythonVersion(e,n);o=t.version,Qe.info(`Successfully setup ${t.impl} (${o})`)}g()&&(()=>{const e=t(Ge).join(__dirname,"python_matcher.json");if(!Me.existsSync(e))return w("the python_matcher.json file does not exist in the same folder as setup_cpp.js");Qe.info("::add-matcher::"+e)})()}e(r.exports,"setupActionsPython",(()=>o));var i=Ze("6O4iu"),s=Ze("k520S")})),Ze.register("6O4iu",((t,r)=>{function n(e,t){const r=Ot.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=Ge.join(n,"bin");Qe.exportVariable("pythonLocation",s.IS_WINDOWS?n:i),Qe.addPath(n),Qe.addPath(i),s.IS_WINDOWS&&Qe.addPath(Ge.join(n,"Scripts"));const a="pypy"+e;return Qe.setOutput("python-version",a),{impl:a,version:o(n)}}function o(e){const t=e.split(Ge.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;Qe.debug(`Semantic version spec of ${e} is ${r}`);let i=Ot.find("Python",r,t);if(!i){Qe.info(`Version ${r} was not found in the local cache`);const e=await l.findReleaseFromManifest(r,t);e&&e.files&&e.files.length>0&&(Qe.info(`Version ${r} is available for downloading`),await l.installCpythonFromRelease(e),i=Ot.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: "+l.MANIFEST_URL].join(Ue.EOL));if(Qe.exportVariable("pythonLocation",i),s.IS_LINUX){const e=process.env.LD_LIBRARY_PATH?":"+process.env.LD_LIBRARY_PATH:"",t=Ge.join(i,"lib");e.split(":").includes(t)||Qe.exportVariable("LD_LIBRARY_PATH",t+e)}if(Qe.addPath(i),Qe.addPath((e=>Ge.join(e,s.IS_WINDOWS?"Scripts":"bin"))(i)),s.IS_WINDOWS){const e=Ge.basename(Ge.dirname(i)),t=a.major(e),r=a.minor(e),n=Ge.join(process.env.APPDATA||"","Python",`Python${t}${r}`,"Scripts");Qe.addPath(n)}const c=o(i);return Qe.setOutput("python-version",c),{impl:"CPython",version:c}})(e,t)}}e(t.exports,"findPythonVersion",(()=>i));var s=Ze("laG7O"),a=Ze("7Lo32"),l=Ze("gJvxO")})),Ze.register("laG7O",((r,n)=>{function o(e,r,n,o=!1){const i=Ge.join(e,r),s=Ge.join(e,n);t(Me).existsSync(s)||(t(Me).symlinkSync(i,s),!h&&o&&t(Me).chmodSync(s,"755"))}function i(e){return s(e)||!!d.validRange(e)}function s(e){return"nightly"===e}function a(e){return Ge.basename(Ge.dirname(e))}function l(e){let r="",n=Ge.join(e,g);return t(Me).existsSync(n)&&(r=""+t(Me).readFileSync(n)),r}function c(e,r){const n=Ge.join(e,g);t(Me).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",(()=>l)),e(r.exports,"writeExactPyPyVersionFile",(()=>c)),e(r.exports,"validatePythonVersionFormatForPyPy",(()=>u)),e(r.exports,"isGhes",(()=>p));var d=Ze("7Lo32");const h="win32"===process.platform,f="linux"===process.platform,m=["x86","x64"],v=["win32","win64"],g="PYPY_VERSION"})),Ze.register("gJvxO",((t,r)=>{async function n(e,t){const r=await Ot.getManifestFromRepo(l,c,a,u);return await Ot.findFromManifest(e,!1,r,t)}async function o(e){const t=e.files[0].download_url;Qe.info(`Download from "${t}"`);const r=await Ot.downloadTool(t,void 0,a);let n;Qe.info("Extract downloaded archive"),n=i.IS_WINDOWS?await Ot.extractZip(r):await Ot.extractTar(r),Qe.info("Execute installation script"),await(async e=>{const t={cwd:e,env:{...process.env,...i.IS_LINUX&&{LD_LIBRARY_PATH:Ge.join(e,"lib")}},silent:!0,listeners:{stdout(e){Qe.info((""+e).trim())},stderr(e){Qe.error((""+e).trim())}}};i.IS_WINDOWS?await Ht.exec("powershell",["./setup.ps1"],t):await Ht.exec("bash",["./setup.sh"],t)})(n)}e(t.exports,"MANIFEST_URL",(()=>p)),e(t.exports,"findReleaseFromManifest",(()=>n)),e(t.exports,"installCpythonFromRelease",(()=>o));var i=Ze("laG7O");const s=Qe.getInput("token"),a=!s||i.isGhes()?void 0:"token "+s,l="actions",c="python-versions",u="main",p="https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json"}));var Qe={},et=Qe&&Qe.__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]}),tt=Qe&&Qe.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),rt=Qe&&Qe.__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)&&et(t,e,r);return tt(t,e),t}),nt=Qe&&Qe.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{l(n.next(e))}catch(e){i(e)}}function a(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())})));Object.defineProperty(Qe,"__esModule",{value:!0}),Qe.getIDToken=Qe.getState=Qe.saveState=Qe.group=Qe.endGroup=Qe.startGroup=Qe.info=Qe.notice=Qe.warning=Qe.error=Qe.debug=Qe.isDebug=Qe.setFailed=Qe.setCommandEcho=Qe.setOutput=Qe.getBooleanInput=Qe.getMultilineInput=Qe.getInput=Qe.addPath=Qe.setSecret=Qe.exportVariable=Qe.ExitCode=void 0;var ot={},it=ot&&ot.__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]}),st=ot&&ot.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),at=ot&&ot.__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)&&it(t,e,r);return st(t,e),t});Object.defineProperty(ot,"__esModule",{value:!0}),ot.issue=ot.issueCommand=void 0;const lt=at(Ue);var ct={};Object.defineProperty(ct,"__esModule",{value:!0}),ct.toCommandProperties=ct.toCommandValue=void 0,ct.toCommandValue=e=>null==e?"":"string"==typeof e||e instanceof String?e:JSON.stringify(e),ct.toCommandProperties=e=>Object.keys(e).length?{title:e.title,file:e.file,line:e.startLine,endLine:e.endLine,col:e.startColumn,endColumn:e.endColumn}:{},ot.issueCommand=r,ot.issue=(e,t="")=>{r(e,{},t)};class ut{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,ct.toCommandValue(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}`)}}var t;return e+="::"+(e=>ct.toCommandValue(this.message).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A"))(),e}}var pt={},dt=pt&&pt.__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]}),ht=pt&&pt.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),ft=pt&&pt.__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)&&dt(t,e,r);return ht(t,e),t});Object.defineProperty(pt,"__esModule",{value:!0}),pt.issueCommand=void 0;const mt=ft(Me),vt=ft(Ue);pt.issueCommand=(e,t)=>{const r=process.env["GITHUB_"+e];if(!r)throw Error("Unable to find environment variable for file command "+e);if(!mt.existsSync(r))throw Error("Missing file at path: "+r);mt.appendFileSync(r,`${ct.toCommandValue(t)}${vt.EOL}`,{encoding:"utf8"})};const gt=rt(Ue),yt=rt(Ge);var wt={},xt=wt&&wt.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{l(n.next(e))}catch(e){i(e)}}function a(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())})));Object.defineProperty(wt,"__esModule",{value:!0}),wt.OidcClient=void 0;var Et,bt,St=Ze("ba1Cu"),_t={};Object.defineProperty(_t,"__esModule",{value:!0}),_t.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}},_t.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}},_t.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}};class Pt{static createHttpClient(e=!0,t=10){const r={allowRetries:e,maxRetries:t};return new St.HttpClient("actions/oidc-client",[new _t.BearerCredentialHandler(Pt.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 xt(this,void 0,void 0,(function*(){const r=Pt.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 xt(this,void 0,void 0,(function*(){try{let t=Pt.getIDTokenUrl();e&&(t=`${t}&audience=${encodeURIComponent(e)}`),Qe.debug("ID token url is "+t);const r=yield Pt.getCall(t);return Qe.setSecret(r),r}catch(e){throw Error("Error message: "+e.message)}}))}}wt.OidcClient=Pt,(bt=Et=Qe.ExitCode||(Qe.ExitCode={}))[bt.Success=0]="Success",bt[bt.Failure=1]="Failure",Qe.exportVariable=(e,t)=>{const r=ct.toCommandValue(t);if(process.env[e]=r,process.env.GITHUB_ENV){const t="_GitHubActionsFileCommandDelimeter_";pt.issueCommand("ENV",`${e}<<${t}${gt.EOL}${r}${gt.EOL}${t}`)}else ot.issueCommand("set-env",{name:e},r)},Qe.setSecret=e=>{ot.issueCommand("add-mask",{},e)},Qe.addPath=e=>{process.env.GITHUB_PATH?pt.issueCommand("PATH",e):ot.issueCommand("add-path",{},e),process.env.PATH=`${e}${yt.delimiter}${process.env.PATH}`},Qe.getInput=n,Qe.getMultilineInput=(e,t)=>n(e,t).split("\n").filter((e=>""!==e)),Qe.getBooleanInput=(e,t)=>{const r=n(e,t);if(["true","True","TRUE"].includes(r))return!0;if(["false","False","FALSE"].includes(r))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\``)},Qe.setOutput=(e,t)=>{process.stdout.write(gt.EOL),ot.issueCommand("set-output",{name:e},t)},Qe.setCommandEcho=e=>{ot.issue("echo",e?"on":"off")},Qe.setFailed=e=>{process.exitCode=Et.Failure,o(e)},Qe.isDebug=()=>"1"===process.env.RUNNER_DEBUG,Qe.debug=e=>{ot.issueCommand("debug",{},e)},Qe.error=o,Qe.warning=(e,t={})=>{ot.issueCommand("warning",ct.toCommandProperties(t),e instanceof Error?""+e:e)},Qe.notice=(e,t={})=>{ot.issueCommand("notice",ct.toCommandProperties(t),e instanceof Error?""+e:e)},Qe.info=e=>{process.stdout.write(e+gt.EOL)},Qe.startGroup=i,Qe.endGroup=s,Qe.group=function(e,t){return nt(this,void 0,void 0,(function*(){let r;i(e);try{r=yield t()}finally{s()}return r}))},Qe.saveState=(e,t)=>{ot.issueCommand("save-state",{name:e},t)},Qe.getState=e=>process.env["STATE_"+e]||"",Qe.getIDToken=function(e){return nt(this,void 0,void 0,(function*(){return yield wt.OidcClient.getIDToken(e)}))};var Ot={},$t=Ot&&Ot.__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]}),Ct=Ot&&Ot.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),Tt=Ot&&Ot.__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)&&$t(t,e,r);return Ct(t,e),t}),It=Ot&&Ot.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{l(n.next(e))}catch(e){i(e)}}function a(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())}))),Rt=Ot&&Ot.__importDefault||(e=>e&&e.__esModule?e:{default:e});Object.defineProperty(Ot,"__esModule",{value:!0}),Ot.evaluateVersions=Ot.isExplicitVersion=Ot.findFromManifest=Ot.getManifestFromRepo=Ot.findAllVersions=Ot.find=Ot.cacheFile=Ot.cacheDir=Ot.extractZip=Ot.extractXar=Ot.extractTar=Ot.extract7z=Ot.downloadTool=Ot.HTTPError=void 0;const At=Tt(Ze("4wFnS")),Nt=Tt(Ze("bMvjP")),Lt=Tt(Me),Dt=Tt(Ze("l7BLh")),kt=Tt(Ue),jt=Tt(Ge),Ft=Tt(Ze("ba1Cu")),Mt=Tt(Ze("7Lo32")),Ut=Tt(qe),Gt=Tt(Fe),Vt=Rt(Ze("iFKS7"));var Ht={},Bt=Ht&&Ht.__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]}),qt=Ht&&Ht.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),Wt=Ht&&Ht.__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)&&Bt(t,e,r);return qt(t,e),t}),Xt=Ht&&Ht.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{l(n.next(e))}catch(e){i(e)}}function a(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())})));Object.defineProperty(Ht,"__esModule",{value:!0}),Ht.getExecOutput=Ht.exec=void 0;const zt=Wt(Ze("2c9fQ"));Ht.exec=a,Ht.getExecOutput=function(e,t,r){var n,o;return Xt(this,void 0,void 0,(function*(){let i="",s="";const l=new We.StringDecoder("utf8"),c=new We.StringDecoder("utf8"),u=null===(n=null==r?void 0:r.listeners)||void 0===n?void 0:n.stdout,p=null===(o=null==r?void 0:r.listeners)||void 0===o?void 0:o.stderr,d=Object.assign(Object.assign({},null==r?void 0:r.listeners),{stdout(e){i+=l.write(e),u&&u(e)},stderr(e){s+=c.write(e),p&&p(e)}}),h=yield a(e,t,Object.assign(Object.assign({},r),{listeners:d}));return i+=l.end(),s+=c.end(),{exitCode:h,stdout:i,stderr:s}}))};var Yt={},Kt=Yt&&Yt.__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]}),Jt=Yt&&Yt.__setModuleDefault||(Object.create?(e,t)=>{Object.defineProperty(e,"default",{enumerable:!0,value:t})}:(e,t)=>{e.default=t}),Zt=Yt&&Yt.__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)&&Kt(t,e,r);return Jt(t,e),t}),Qt=Yt&&Yt.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{l(n.next(e))}catch(e){i(e)}}function a(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())})));Object.defineProperty(Yt,"__esModule",{value:!0}),Yt.RetryHelper=void 0;const er=Zt(Ze("4wFnS"));Yt.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 Qt(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;er.info(e.message)}const n=this.getSleepAmount();er.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 Qt(this,void 0,void 0,(function*(){return new Promise((t=>setTimeout(t,1e3*e)))}))}};class tr extends Error{constructor(e){super("Unexpected HTTP response: "+e),this.httpStatusCode=e,Object.setPrototypeOf(this,new.target.prototype)}}Ot.HTTPError=tr;const rr="win32"===process.platform,nr="darwin"===process.platform;Ot.downloadTool=function(e,t,r,n){return It(this,void 0,void 0,(function*(){t=t||jt.join(m(),Vt.default()),yield Nt.mkdirP(jt.dirname(t)),At.debug("Downloading "+e),At.debug("Destination "+t);const o=v("TEST_DOWNLOAD_TOOL_RETRY_MIN_SECONDS",10),i=v("TEST_DOWNLOAD_TOOL_RETRY_MAX_SECONDS",20),s=new Yt.RetryHelper(3,o,i);return yield s.execute((()=>It(this,void 0,void 0,(function*(){return yield function(e,t,r,n){return It(this,void 0,void 0,(function*(){if(Lt.existsSync(t))throw Error(`Destination file path ${t} already exists`);const o=new Ft.HttpClient("actions/tool-cache",[],{allowRetries:!1});r&&(At.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 tr(i.message.statusCode);throw At.debug(`Failed to download from "${e}". Code(${i.message.statusCode}) Message(${i.message.statusMessage})`),t}const s=Gt.promisify(Ut.pipeline),a=v("TEST_DOWNLOAD_TOOL_RESPONSE_MESSAGE_FACTORY",(()=>i.message))();let l=!1;try{return yield s(a,Lt.createWriteStream(t)),At.debug("download complete"),l=!0,t}finally{if(!l){At.debug("download failed");try{yield Nt.rmRF(t)}catch(e){At.debug(`Failed to delete '${t}'. ${e.message}`)}}}}))}(e,t||"",r,n)}))),(e=>!(e instanceof tr&&e.httpStatusCode&&500>e.httpStatusCode&&408!==e.httpStatusCode&&429!==e.httpStatusCode)))}))},Ot.extract7z=function(e,t,r){return It(this,void 0,void 0,(function*(){je.ok(rr,"extract7z() not supported on current OS"),je.ok(e,'parameter "file" is required'),t=yield c(t);const n=process.cwd();if(process.chdir(t),r)try{const t=["x",At.isDebug()?"-bb1":"-bb0","-bd","-sccUTF-8",e],o={silent:!0};yield Ht.exec(`"${r}"`,t,o)}finally{process.chdir(n)}else{const r=["-NoLogo","-Sta","-NoProfile","-NonInteractive","-ExecutionPolicy","Unrestricted","-Command",`& '${jt.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 Nt.which("powershell",!0);yield Ht.exec(`"${e}"`,r,o)}finally{process.chdir(n)}}return t}))},Ot.extractTar=function(e,t,r="xz"){return It(this,void 0,void 0,(function*(){if(!e)throw Error("parameter 'file' is required");t=yield c(t),At.debug("Checking tar --version");let n="";yield Ht.exec("tar --version",[],{ignoreReturnCode:!0,silent:!0,listeners:{stdout(e){return n+=""+e},stderr(e){return n+=""+e}}}),At.debug(n.trim());const o=n.toUpperCase().includes("GNU TAR");let i;i=r instanceof Array?r:[r],At.isDebug()&&!r.includes("v")&&i.push("-v");let s=t,a=e;return rr&&o&&(i.push("--force-local"),s=t.replace(/\\/g,"/"),a=e.replace(/\\/g,"/")),o&&(i.push("--warning=no-unknown-keyword"),i.push("--overwrite")),i.push("-C",s,"-f",a),yield Ht.exec("tar",i),t}))},Ot.extractXar=function(e,t,r=[]){return It(this,void 0,void 0,(function*(){let n;je.ok(nr,"extractXar() not supported on current OS"),je.ok(e,'parameter "file" is required'),t=yield c(t),n=r instanceof Array?r:[r],n.push("-x","-C",t,"-f",e),At.isDebug()&&n.push("-v");const o=yield Nt.which("xar",!0);var i;return yield Ht.exec(`"${o}"`,(i=n,Array.from(new Set(i)))),t}))},Ot.extractZip=function(e,t){return It(this,void 0,void 0,(function*(){if(!e)throw Error("parameter 'file' is required");return t=yield c(t),rr?yield function(e,t){return It(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 Nt.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(" ")];At.debug("Using pwsh at path: "+o),yield Ht.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 Nt.which("powershell",!0);At.debug("Using powershell at path: "+t),yield Ht.exec(`"${t}"`,e)}}))}(e,t):yield function(e,t){return It(this,void 0,void 0,(function*(){const r=yield Nt.which("unzip",!0),n=[e];At.isDebug()||n.unshift("-q"),n.unshift("-o"),yield Ht.exec(`"${r}"`,n,{cwd:t})}))}(e,t),t}))},Ot.cacheDir=function(e,t,r,n){return It(this,void 0,void 0,(function*(){if(r=Mt.clean(r)||r,n=n||kt.arch(),At.debug(`Caching tool ${t} ${r} ${n}`),At.debug("source dir: "+e),!Lt.statSync(e).isDirectory())throw Error("sourceDir is not a directory");const o=yield u(t,r,n);for(const t of Lt.readdirSync(e)){const r=jt.join(e,t);yield Nt.cp(r,o,{recursive:!0})}return p(t,r,n),o}))},Ot.cacheFile=function(e,t,r,n,o){return It(this,void 0,void 0,(function*(){if(n=Mt.clean(n)||n,o=o||kt.arch(),At.debug(`Caching tool ${r} ${n} ${o}`),At.debug("source file: "+e),!Lt.statSync(e).isFile())throw Error("sourceFile is not a file");const i=yield u(r,n,o),s=jt.join(i,t);return At.debug("destination file "+s),yield Nt.cp(e,s),p(r,n,o),i}))},Ot.find=(e,t,r)=>{if(!e)throw Error("toolName parameter is required");if(!t)throw Error("versionSpec parameter is required");r=r||kt.arch(),d(t)||(t=h(l(e,r),t));let n="";if(t){t=Mt.clean(t)||"";const o=jt.join(f(),e,t,r);At.debug("checking cache: "+o),Lt.existsSync(o)&&Lt.existsSync(o+".complete")?(At.debug(`Found tool in cache ${e} ${t} ${r}`),n=o):At.debug("not found")}return n},Ot.findAllVersions=l,Ot.getManifestFromRepo=function(e,t,r,n="master"){return It(this,void 0,void 0,(function*(){let o=[];const i=`https://api.github.com/repos/${e}/${t}/git/trees/${n}`,s=new Ft.HttpClient("tool-cache"),a={};r&&(At.debug("set auth"),a.authorization=r);const l=yield s.getJson(i,a);if(!l.result)return o;let c="";for(const e of l.result.tree)if("versions-manifest.json"===e.path){c=e.url;break}a.accept="application/vnd.github.VERSION.raw";let u=yield(yield s.get(c,a)).readBody();if(u){u=u.replace(/^\uFEFF/,"");try{o=JSON.parse(u)}catch(e){At.debug("Invalid json")}}return o}))},Ot.findFromManifest=function(e,t,r,n=kt.arch()){return It(this,void 0,void 0,(function*(){return yield Dt._findMatch(e,t,r,n)}))},Ot.isExplicitVersion=d,Ot.evaluateVersions=h,Ze.register("k520S",((t,r)=>{async function n(e,t){let r,n="",a="";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:a,resolvedPyPyVersion:n}=((e,t,r)=>{let n="",o="",a=i.IS_WINDOWS?(e=>{let t="";return i.WINDOWS_ARCHS.forEach((r=>t=t||Ot.find("PyPy",e,r))),t})(e):Ot.find("PyPy",e,r);return a&&(o=i.getPyPyVersionFromPath(a),n=i.readExactPyPyVersionFile(a),s.satisfies(n,t)||(a=null,n="",o="")),a||Qe.info(`PyPy version ${e} (${t}) was not found in the local cache`),{installDir:a,resolvedPythonVersion:o,resolvedPyPyVersion:n}})(l.pythonVersion,l.pypyVersion,t)),r||({installDir:r,resolvedPythonVersion:a,resolvedPyPyVersion:n}=await o.installPyPy(l.pypyVersion,l.pythonVersion,t));const c=Ge.join(r,i.IS_WINDOWS?"Scripts":"bin"),u=o.getPyPyBinaryPath(r);return Qe.exportVariable("pythonLocation",u),Qe.addPath(u),Qe.addPath(c),{resolvedPyPyVersion:n,resolvedPythonVersion:a}}e(t.exports,"findPyPyVersion",(()=>n));var o=Ze("gKdCo"),i=Ze("laG7O"),s=Ze("7Lo32")})),Ze.register("gKdCo",((r,n)=>{async function o(e,r,n){let o;const d=await(async()=>{const e="https://downloads.python.org/pypy/versions.json",t=new u.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(!d||0===d.length)throw Error("No release was found in PyPy version.json");const h=((e,t,r,n)=>{const o=e.filter((e=>{const o=c.satisfies(c.coerce(e.python_version),t),i=p.isNightlyKeyword(r)&&p.isNightlyKeyword(e.pypy_version)||c.satisfies(s(e.pypy_version),r),a=e.files&&(p.IS_WINDOWS?(e=>e.files.some((e=>p.WINDOWS_ARCHS.includes(e.arch)&&p.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)=>c.compare(c.coerce(s(t.pypy_version)),c.coerce(s(e.pypy_version)))||c.compare(c.coerce(t.python_version),c.coerce(e.python_version))))[0];return{foundAsset:p.IS_WINDOWS?a(i):l(i,n,process.platform),resolvedPythonVersion:i.python_version,resolvedPyPyVersion:i.pypy_version}})(d,r,e,n);if(!h||!h.foundAsset)throw Error(`PyPy version ${r} (${e}) with arch ${n} not found`);const{foundAsset:f,resolvedPythonVersion:m,resolvedPyPyVersion:v}=h;let g=""+f.download_url;Qe.info(`Downloading PyPy from "${g}" ...`);const y=await Ot.downloadTool(g);Qe.info("Extracting downloaded archive..."),o=p.IS_WINDOWS?await Ot.extractZip(y):await Ot.extractTar(y,void 0,"x");const w=t(Me).readdirSync(o)[0],x=Ge.join(o,w);let E=x;p.isNightlyKeyword(v)||(E=await Ot.cacheDir(x,"PyPy",m,n)),p.writeExactPyPyVersionFile(E,v);const b=i(E);return await(async(e,t)=>{const r=c.coerce(t),n=c.major(r),o=2===n?"":"3";let i=p.IS_WINDOWS?".exe":"";Qe.info("Creating symlinks..."),p.createSymlinkInFolder(e,`pypy${o}${i}`,`python${n}${i}`,!0),p.createSymlinkInFolder(e,`pypy${o}${i}`,"python"+i,!0)})(b,m),await(async e=>{Qe.info("Installing and updating pip");const t=Ge.join(e,"python");await Ht.exec(t+" -m ensurepip"),await Ht.exec(e+"/python -m pip install --ignore-installed pip")})(b),{installDir:E,resolvedPythonVersion:m,resolvedPyPyVersion:v}}function i(e){const t=Ge.join(e,"bin");return p.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=>p.WINDOWS_ARCHS.includes(e.arch)&&p.WINDOWS_PLATFORMS.includes(e.platform)))}function l(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 c=Ze("7Lo32"),u=Ze("ba1Cu"),p=Ze("laG7O")})),e(module.exports,"main",(()=>Te)),e(module.exports,"getCompilerInfo",(()=>Ie));var or={};const ir="win32"===process.platform||"cygwin"===process.env.OSTYPE||"msys"===process.env.OSTYPE,sr=ir?";":":";var ar,lr={};ar="win32"===process.platform||Ye.TESTING_WINDOWS?Ze("ftrAD"):Ze("9yF3I"),lr=x,x.sync=(e,t)=>{try{return ar.sync(e,t||{})}catch(e){if(t&&t.ignoreErrors||"EACCES"===e.code)return!1;throw e}};const cr=e=>Object.assign(Error("not found: "+e),{code:"ENOENT"}),ur=(e,t)=>{const r=t.colon||sr,n=e.match(/\//)||ir&&e.match(/\\/)?[""]:[...ir?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],o=ir?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=ir?o.split(r):[""];return ir&&-1!==e.indexOf(".")&&""!==i[0]&&i.unshift(""),{pathEnv:n,pathExt:i,pathExtExe:o}},pr=(e,t,r)=>{"function"==typeof t&&(r=t,t={}),t||(t={});const{pathEnv:n,pathExt:o,pathExtExe:i}=ur(e,t),s=[],a=r=>new Promise(((o,i)=>{if(r===n.length)return t.all&&s.length?o(s):i(cr(e));const a=n[r],c=/^".*"$/.test(a)?a.slice(1,-1):a,u=Ge.join(c,e),p=!c&&/^\.[\\\/]/.test(e)?e.slice(0,2)+u:u;o(l(p,r,0))})),l=(e,r,n)=>new Promise(((c,u)=>{if(n===o.length)return c(a(r+1));const p=o[n];lr(e+p,{pathExt:i},((o,i)=>{if(!o&&i){if(!t.all)return c(e+p);s.push(e+p)}return c(l(e,r,n+1))}))}));return r?a(0).then((e=>r(null,e)),r):a(0)};let dr;or=pr,pr.sync=(e,t)=>{t=t||{};const{pathEnv:r,pathExt:n,pathExtExe:o}=ur(e,t),i=[];for(let s=0;r.length>s;s++){const a=r[s],l=/^".*"$/.test(a)?a.slice(1,-1):a,c=Ge.join(l,e),u=!l&&/^\.[\\\/]/.test(e)?e.slice(0,2)+c:c;for(let e=0;n.length>e;e++){const r=u+n[e];try{if(lr.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 cr(e)};var hr,fr={},mr={},vr={},gr={};const yr=(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 wr,xr;(gr=yr).default=yr,hr=e=>b(e)||b(e,!0),wr=e=>e.replace(/([()\][%!^"`<>&|;, *?])/g,"^$1"),xr=(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 Er,br;Er=(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},br=e=>{const t=Buffer.alloc(150);let r;try{r=Me.openSync(e,"r"),Me.readSync(r,t,0,150,0),Me.closeSync(r)}catch(e){}return Er(""+t)};const Sr="win32"===process.platform,_r=/\.(?:com|exe)$/i,Pr=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;vr=(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(!Sr)return e;const t=(e=>{e.file=hr(e);const t=e.file&&br(e.file);return t?(e.args.unshift(e.file),e.command=t,hr(e)):e.file})(e),r=!_r.test(t);if(e.options.forceShell||r){const r=Pr.test(t);e.command=Ge.normalize(e.command),e.command=wr(e.command),e.args=e.args.map((e=>xr(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 Or={};const $r="win32"===process.platform;var Cr;Or={hookChildProcess(e,t){if(!$r)return;const r=e.emit;e.emit=function(n,o){if("exit"===n){const n=_(o,t);if(n)return r.call(e,"error",n)}return r.apply(e,arguments)}},verifyENOENT:_,verifyENOENTSync(e,t){return $r&&1===e&&!t.file?S(t.original,"spawnSync"):null},notFoundError:S},(mr=P).spawn=P,mr.sync=(e,t,r)=>{const n=vr(e,t,r),o=Ve.spawnSync(n.command,n.args,n.options);return o.error=o.error||Or.verifyENOENTSync(o.status,n),o},mr._parse=vr,mr._enoent=Or,Cr=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 Tr={};const Ir=e=>{let t;e={cwd:process.cwd(),path:process.env[gr()],execPath:process.execPath,...e};let r=Ge.resolve(e.cwd);const n=[];for(;t!==r;)n.push(Ge.join(r,"node_modules/.bin")),t=r,r=Ge.resolve(r,"..");const o=Ge.resolve(e.cwd,e.execPath,"..");return n.push(o),n.concat(e.path).join(Ge.delimiter)};(Tr=Ir).default=Ir,Tr.env=e=>{const t={...(e={env:process.env,...e}).env},r=gr({env:t});return e.path=t[r],t[r]=Tr(e),t};var Rr={},Ar={};const Nr=(e,t)=>{for(const r of Reflect.ownKeys(t))Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));return e};(Ar=Nr).default=Nr;const Lr=new WeakMap,Dr=(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(Lr.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 Ar(i,e),Lr.set(i,n),i};(Rr=Dr).default=Dr,Rr.callCount=e=>{if(!Lr.has(e))throw Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return Lr.get(e)};var kr,jr={};Object.defineProperty(jr,"__esModule",{value:!0}),jr.signalsByNumber=jr.signalsByName=void 0;var Fr={};Object.defineProperty(Fr,"__esModule",{value:!0}),Fr.getSignals=void 0;var Mr={};Object.defineProperty(Mr,"__esModule",{value:!0}),Mr.SIGNALS=void 0,Mr.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 Ur={};Object.defineProperty(Ur,"__esModule",{value:!0}),Ur.SIGRTMAX=Ur.getRealtimeSignals=void 0,Ur.getRealtimeSignals=()=>Array.from({length:Hr-Vr+1},Gr);const Gr=(e,t)=>({name:"SIGRT"+(t+1),number:Vr+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),Vr=34,Hr=64;Ur.SIGRTMAX=Hr,Fr.getSignals=()=>{const e=(0,Ur.getRealtimeSignals)();return[...Mr.SIGNALS,...e].map(Br)};const Br=({name:e,number:t,description:r,action:n,forced:o=!1,standard:i})=>{const{signals:{[e]:s}}=Ue.constants,a=void 0!==s;return{name:e,number:a?s:t,description:r,supported:a,action:n,forced:o,standard:i}},qr=(0,Fr.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}})),{});jr.signalsByName=qr;const Wr=(()=>{const e=(0,Fr.getSignals)(),t=Array.from({length:Ur.SIGRTMAX+1},((t,r)=>((e,t)=>{const r=((e,t)=>{const r=t.find((({name:t})=>Ue.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:l}=r;return{[e]:{name:n,number:e,description:o,supported:i,action:s,forced:a,standard:l}}})(r,e)));return Object.assign({},...t)})();jr.signalsByNumber=Wr;var Xr=jr.signalsByName;kr=({stdout:e,stderr:t,all:r,error:n,signal:o,exitCode:i,command:s,escapedCommand:a,timedOut:l,isCanceled:c,killed:u,parsed:{options:{timeout:p}}})=>{const d=void 0===(o=null===o?void 0:o)?void 0:Xr[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:l,timeout:p,errorCode:n&&n.code,signal:o,signalDescription:d,exitCode:i=null===i?void 0:i,isCanceled:c}),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=!!l,n.isCanceled=c,n.killed=u&&!l,n};var zr={};const Yr=["stdin","stdout","stderr"],Kr=e=>{if(!e)return;const{stdio:t}=e;if(void 0===t)return Yr.map((t=>e[t]));if((e=>Yr.some((t=>void 0!==e[t])))(e))throw Error("It's not possible to provide `stdio` in combination with one of "+Yr.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,Yr.length)},((e,r)=>t[r]))};(zr=Kr).node=e=>{const t=Kr(e);return"ipc"===t?"ipc":void 0===t||"string"==typeof t?[t,t,t,"ipc"]:t.includes("ipc")?t:[...t,"ipc"]};var Jr,Zr,Qr={};Qr=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"],"win32"!==process.platform&&Qr.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT"),"linux"===process.platform&&Qr.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED");var en,tn=Qr,rn=/^win/i.test(process.platform),nn=ke;"function"!=typeof nn&&(nn=nn.EventEmitter),process.__signal_exit_emitter__?en=process.__signal_exit_emitter__:((en=process.__signal_exit_emitter__=new nn).count=0,en.emitted={}),en.infinite||(en.setMaxListeners(1/0),en.infinite=!0),(Zr=(e,t)=>{je.equal(typeof e,"function","a callback must be provided for exit handler"),!1===sn&&C();var r="exit";return t&&t.alwaysLast&&(r="afterexit"),en.on(r,e),()=>{en.removeListener(r,e),0===en.listeners("exit").length&&0===en.listeners("afterexit").length&&O()}}).unload=O;var on={};tn.forEach((e=>{on[e]=()=>{process.listeners(e).length===en.count&&(O(),$("exit",null,e),$("afterexit",null,e),rn&&"SIGHUP"===e&&(e="SIGINT"),process.kill(process.pid,e))}})),Zr.signals=()=>tn,Zr.load=C;var sn=!1,an=process.reallyExit,ln=process.emit;const cn=e=>e===Ue.constants.signals.SIGTERM||"string"==typeof e&&"SIGTERM"===e.toUpperCase();var un,pn=(Jr={spawnedKill(e,t="SIGTERM",r={}){const n=e(t);return((e,t,r,n)=>{if(!((e,{forceKillAfterTimeout:t},r)=>cn(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=Zr((()=>{e.kill()}));return n.finally((()=>{o()}))}}).spawnedKill,dn=Jr.spawnedCancel,hn=Jr.setupTimeout,fn=Jr.validateTimeout,mn=Jr.setExitHandler,vn={};const gn=e=>null!==e&&"object"==typeof e&&"function"==typeof e.pipe;gn.writable=e=>gn(e)&&!1!==e.writable&&"function"==typeof e._write&&"object"==typeof e._writableState,gn.readable=e=>gn(e)&&!1!==e.readable&&"function"==typeof e._read&&"object"==typeof e._readableState,gn.duplex=e=>gn.writable(e)&&gn.readable(e),gn.transform=e=>gn.duplex(e)&&"function"==typeof e._transform,vn=gn;var yn,wn={},xn=Xe.constants,En=qe.PassThrough;yn=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 En({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 bn=(0,Fe.promisify)(qe.pipeline);class Sn extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}}(wn=R).buffer=(e,t)=>R(e,{...t,encoding:"buffer"}),wn.array=(e,t)=>R(e,{...t,array:!0}),wn.MaxBufferError=Sn;var _n,Pn=qe.PassThrough;_n=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 Pn({objectMode:!0});return o.setMaxListeners(0),o.add=e,o.isEmpty=t,o.on("unpipe",r),[].slice.call(arguments).forEach(e),o};const On=async(e,t)=>{if(e){e.destroy();try{return await t}catch(e){return e.bufferedData}}},$n=(e,{encoding:t,buffer:r,maxBuffer:n})=>{if(e&&r)return t?wn(e,{encoding:t,maxBuffer:n}):wn.buffer(e,{maxBuffer:n})};var Cn,Tn=(un={handleInput(e,t){void 0!==t&&void 0!==e.stdin&&(vn(t)?t.pipe(e.stdin):e.stdin.end(t))},makeAllStream(e,{all:t}){if(!t||!e.stdout&&!e.stderr)return;const r=_n();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=$n(e,{encoding:n,buffer:o,maxBuffer:i}),l=$n(t,{encoding:n,buffer:o,maxBuffer:i}),c=$n(r,{encoding:n,buffer:o,maxBuffer:2*i});try{return await Promise.all([s,a,l,c])}catch(n){return Promise.all([{error:n,signal:n.signal,timedOut:n.timedOut},On(e,a),On(t,l),On(r,c)])}},validateInputSync({input:e}){if(vn(e))throw new TypeError("The `input` option cannot be a stream in sync mode")}}).handleInput,In=un.getSpawnedResult,Rn=un.makeAllStream,An=un.validateInputSync;const Nn=(async()=>{})().constructor.prototype,Ln=["then","catch","finally"].map((e=>[e,Reflect.getOwnPropertyDescriptor(Nn,e)]));var Dn,kn=(Cn={mergePromise(e,t){for(const[r,n]of Ln){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,jn=Cn.getSpawnedPromise;const Fn=(e,t=[])=>Array.isArray(t)?[e,...t]:[e],Mn=/^[\w.-]+$/;var Un=(Dn={joinCommand(e,t){return Fn(e,t).join(" ")},getEscapedCommand(e,t){return Fn(e,t).map((e=>(e=>"string"!=typeof e||Mn.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,Gn=Dn.parseCommand,Vn=Dn.getEscapedCommand;const Hn=(e,t,r={})=>{const n=mr._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?Tr.env({env:i,cwd:n,execPath:o}):i})(r),r.stdio=zr(r),"win32"===process.platform&&"cmd"===Ge.basename(e,".exe")&&t.unshift("/q"),{file:e,args:t,options:r,parsed:n}},Bn=(e,t,r)=>"string"==typeof t||Buffer.isBuffer(t)?e.stripFinalNewline?Cr(t):t:void 0===r?void 0:"",qn=(e,t,r)=>{const n=Hn(e,t,r),o=Un(e,t),i=Vn(e,t);let s;fn(n.options);try{s=Ve.spawn(n.file,n.args,n.options)}catch(e){const t=new Ve.ChildProcess,r=Promise.reject(kr({error:e,stdout:"",stderr:"",all:"",command:o,escapedCommand:i,parsed:n,timedOut:!1,isCanceled:!1,killed:!1}));return kn(t,r)}const a=jn(s),l=hn(s,n.options,a),c=mn(s,n.options,l),u={isCanceled:!1};s.kill=pn.bind(null,s.kill.bind(s)),s.cancel=dn.bind(null,s,u);const p=Rr((async()=>{const[{error:e,exitCode:t,signal:r,timedOut:a},l,p,d]=await In(s,n.options,c),h=Bn(n.options,l),f=Bn(n.options,p),m=Bn(n.options,d);if(e||0!==t||null!==r){const l=kr({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 l;throw l}return{command:o,escapedCommand:i,exitCode:0,stdout:h,stderr:f,all:m,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}}));return Tn(s,n.options.input),s.all=Rn(s,n.options),kn(s,p)};let Wn;(fr=qn).sync=(e,t,r)=>{const n=Hn(e,t,r),o=Un(e,t),i=Vn(e,t);let s;An(n.options);try{s=Ve.spawnSync(n.file,n.args,n.options)}catch(e){throw kr({error:e,stdout:"",stderr:"",all:"",command:o,escapedCommand:i,parsed:n,timedOut:!1,isCanceled:!1,killed:!1})}const a=Bn(n.options,s.stdout,s.error),l=Bn(n.options,s.stderr,s.error);if(s.error||0!==s.status||null!==s.signal){const e=kr({stdout:a,stderr:l,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:l,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}},fr.command=(e,t)=>{const[r,...n]=Gn(e);return qn(r,n,t)},fr.commandSync=(e,t)=>{const[r,...n]=Gn(e);return qn.sync(r,n,t)},fr.node=(e,t,r={})=>{t&&!Array.isArray(t)&&"object"==typeof t&&(r=t,t=[]);const n=zr.node(r),o=process.execArgv.filter((e=>!e.startsWith("--inspect"))),{nodePath:i=process.execPath,nodeOptions:s=o}=r;return qn(i,[...s,e,...Array.isArray(t)?t:[]],{...r,stdin:void 0,stdout:void 0,stderr:void 0,stdio:n,shell:!1})};let Xn=!1,zn=!1,Yn=!1;var Kn;const Jn=Ue.homedir();let Zn,Qn;Kn=e=>{if("string"!=typeof e)throw new TypeError("Expected a string, got "+typeof e);return Jn?e.replace(/^~(?=$|\/|\\)/,Jn):e};let eo=!1;var to=Ze("bMvjP");let ro,no=!1;var oo=Ze("dj1Te"),io=Ze("3w4LS"),so=Ze("dvs9N"),ao=(io=Ze("3w4LS"),Ze("3vako"));const lo={llvm:"13.0.0",clangtidy:"13.0.0",clangformat:"13.0.0",ninja:"1.10.2",cmake:"3.22.1",gcovr:"5.0",conan:"1.44.1",meson:"0.61.1",python:"3.8.10",kcov:"v39",task:"3.10.0",doxygen:"1.9.1",gcc:"win32"===process.platform?"11.2.0.07112021":"11"};let co,uo,po=!1;oo=Ze("dj1Te");var ho=Ze("gro6R");ho=Ze("gro6R"),io=Ze("3w4LS");const fo=(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"]),mo=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"]),vo=new Map,go={"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"},yo=new Set(["10.0.1"]);let wo=!1;var xo,Eo,bo,So={},_o=So&&So.__awaiter||((e,t,r,n)=>new(r||(r=Promise))(((o,i)=>{function s(e){try{l(n.next(e))}catch(e){i(e)}}function a(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((e=>{e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())}))),Po=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});var Oo={},$o=Oo&&Oo.__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(Oo,"__esModule",{value:!0});const Co=$o(Ue);var To={};Object.defineProperty(To,"__esModule",{value:!0}),To.toCommandValue=e=>null==e?"":"string"==typeof e||e instanceof String?e:JSON.stringify(e),Oo.issueCommand=me,Oo.issue=(e,t="")=>{me(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,To.toCommandValue(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}`)}}var t;return e+="::"+(e=>To.toCommandValue(this.message).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A"))(),e}}var Ro={},Ao=Ro&&Ro.__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(Ro,"__esModule",{value:!0});const No=Ao(Me),Lo=Ao(Ue);Ro.issueCommand=(e,t)=>{const r=process.env["GITHUB_"+e];if(!r)throw Error("Unable to find environment variable for file command "+e);if(!No.existsSync(r))throw Error("Missing file at path: "+r);No.appendFileSync(r,`${To.toCommandValue(t)}${Lo.EOL}`,{encoding:"utf8"})};const Do=Po(Ue),ko=Po(Ge);var jo;(e=>{e[e.Success=0]="Success",e[e.Failure=1]="Failure"})(jo=So.ExitCode||(So.ExitCode={})),So.exportVariable=(e,t)=>{const r=To.toCommandValue(t);if(process.env[e]=r,process.env.GITHUB_ENV){const t="_GitHubActionsFileCommandDelimeter_";Ro.issueCommand("ENV",`${e}<<${t}${Do.EOL}${r}${Do.EOL}${t}`)}else Oo.issueCommand("set-env",{name:e},r)},So.setSecret=e=>{Oo.issueCommand("add-mask",{},e)},So.addPath=e=>{process.env.GITHUB_PATH?Ro.issueCommand("PATH",e):Oo.issueCommand("add-path",{},e),process.env.PATH=`${e}${ko.delimiter}${process.env.PATH}`},So.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()},So.setOutput=(e,t)=>{Oo.issueCommand("set-output",{name:e},t)},So.setCommandEcho=e=>{Oo.issue("echo",e?"on":"off")},So.setFailed=e=>{process.exitCode=jo.Failure,ve(e)},So.isDebug=()=>"1"===process.env.RUNNER_DEBUG,So.debug=e=>{Oo.issueCommand("debug",{},e)},So.error=ve,So.warning=e=>{Oo.issue("warning",e instanceof Error?""+e:e)},So.info=e=>{process.stdout.write(e+Do.EOL)},So.startGroup=ge,So.endGroup=ye,So.group=function(e,t){return _o(this,void 0,void 0,(function*(){let r;ge(e);try{r=yield t()}finally{ye()}return r}))},So.saveState=(e,t)=>{Oo.issueCommand("save-state",{name:e},t)},So.getState=e=>process.env["STATE_"+e]||"";const Fo=ze.env["ProgramFiles(x86)"],Mo=[ze.env["ProgramFiles(x86)"],ze.env.ProgramFiles],Uo=["Enterprise","Professional","Community"],Go=["2022","2019","2017"],Vo={2022:"17.0",2019:"16.0",2017:"15.0",2015:"14.0",2013:"12.0"};xo=we;const Ho=Fo+"\\Microsoft Visual Studio\\Installer";Eo=Ee,bo=(e,t,r,n,o,i)=>{if("win32"!=ze.platform)return void So.info("This is not a Windows virtual environment, bye!");ze.env.PATH+=Ge.delimiter+Ho;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 l=`"${Ee(i)}" ${a.join(" ")}`;So.debug("vcvars command-line: "+l);const c=(""+Ve.execSync(`set && cls && ${l} && cls && set`,{shell:"cmd"})).split("\f"),u=c[0].split("\r\n"),p=c[1].split("\r\n"),d=c[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}So.startGroup("Environment variables");for(let e of d){if(!e.includes("="))continue;let[t,r]=e.split("=");r!==f[t]&&(So.info("Setting "+t),be(t)&&(r=r.split(";").filter(((e,t,r)=>r.indexOf(e)===t)).join(";")),So.exportVariable(t,r))}So.endGroup(),So.info("Configured Developer Command Prompt")},ao=Ze("3vako");let Bo=!1;const qo={cmake(e,t,r){return X("cmake",e,Y,t,r)},ninja(e,t,r){return X("ninja",e,Pe,t,r)},python:K,async vcpkg(e,r,n){return Bo&&null!==t(or).sync("vcpkg",{nothrow:!0})?{binDir:Ge.dirname(t(or).sync("vcpkg"))}:("linux"===process.platform&&(await L("curl"),await L("zip"),await L("unzip"),await L("tar"),await L("git"),await L("pkg-config")),Me.existsSync(Ge.join(r,H("bootstrap-vcpkg")))?Qe.warning("Vcpkg folder already exists at "+r):t(fr).sync("git",["clone","https://github.com/microsoft/vcpkg"],{cwd:Ge.dirname(r),stdio:"inherit"}),t(fr).sync(H((o="bootstrap-vcpkg","win32"===process.platform?o:"./"+o)),{cwd:r,shell:!0,stdio:"inherit"}),Qe.addPath(r),Bo=!0,{binDir:r});var o},async conan(e,t,r){return await ee("setuptools",""),ee("conan",e)},meson(e,t,r){return ee("meson",e)},gcovr(e,t,r){return ee("gcovr",e)},async opencppcoverage(e,t,r){if("win32"===process.platform)return await G("opencppcoverage",e),{binDir:(()=>{const e="C:/Program Files/OpenCppCoverage";return F(e),e})()}},llvm:pe,gcc:se,choco:U,brew:E,ccache(e,t,r){switch(process.platform){case"win32":return G("ccache",e);case"darwin":return D("ccache",e);case"linux":return L("ccache",e);default:throw Error("Unsupported platform")}},async doxygen(e,t,r){switch(process.platform){case"win32":return await G("doxygen.install",e),await te(Q("graphviz",void 0)),{binDir:(()=>{if("win32"===process.platform){const e="C:/Program Files/doxygen/bin";return F(e),e}throw Error("Unsupported platform")})()};case"darwin":{const e=D("doxygen",void 0);return await te(Q("graphviz",void 0)),e}case"linux":{let n;try{n=await X("doxygen",e,re,t,r)}catch(e){w(`Failed to download doxygen binary. ${e}. Falling back to apt-get.`),n=await L("doxygen",void 0)}return await te(Q("graphviz",void 0)),n}default:throw Error("Unsupported platform")}},graphviz:te,async cppcheck(e,t,r){switch(process.platform){case"win32":return await G("cppcheck",e),{binDir:(()=>{const e="C:/Program Files/Cppcheck";return F(e),e})()};case"darwin":return D("cppcheck",e);case"linux":return L("cppcheck",e);default:throw Error("Unsupported platform")}},clangtidy:he,clangformat:he,msvc:_e,vcvarsall:Se,async kcov(e,t,r){if("linux"===process.platform){const n=await X("kcov",e,Ce,t,r);return await L("libbinutils"),n}throw Error("Unsupported platform for "+r)},make(e,t,r){switch(process.platform){case"win32":return G("make",e);case"darwin":return D("make",e),Qe.addPath("/usr/local/opt/make/libexec/gnubin"),{binDir:"/usr/local/opt/make/libexec/gnubin"};case"linux":return L("make",e);default:throw Error("Unsupported platform")}},task(e,t,r){return X("task",e,z,t,r)},sevenzip:B},Wo=["choco","brew","python","vcpkg","cmake","ninja","conan","meson","gcovr","opencppcoverage","ccache","doxygen","graphviz","cppcheck","clangtidy","clangformat","llvm","gcc","msvc","vcvarsall","kcov","make","task","sevenzip"],Xo=["compiler","architecture",...Wo];Te(process.argv).then((e=>{process.exitCode=e})).catch((e=>{y("main() panicked!"),y(e),process.exitCode=1}));
//# sourceMappingURL=setup_cpp.js.map