forked from a7ul/tar-action
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
1 lines (1 loc) · 87 KB
/
index.js
1
module.exports=function(t,e){"use strict";var s={};function __webpack_require__(e){if(s[e]){return s[e].exports}var i=s[e]={i:e,l:false,exports:{}};t[e].call(i.exports,i,i.exports,__webpack_require__);i.l=true;return i.exports}__webpack_require__.ab=__dirname+"/";function startup(){return __webpack_require__(676)}return startup()}({60:function(t,e,s){const i=s(761).constants||{ZLIB_VERNUM:4736};t.exports=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:Infinity,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},i))},63:function(t,e,s){"use strict";const i=s(357);const n=s(203);const r=s(747);const o=s(827);const h=s(622);const l=s(577);const c=s(478);const a=s(182);const u=s(657);const f=s(674);const d=s(893);const p=s(471);const m=Symbol("onEntry");const y=Symbol("checkFs");const b=Symbol("checkFs2");const w=Symbol("pruneCache");const E=Symbol("isReusable");const S=Symbol("makeFs");const _=Symbol("file");const g=Symbol("directory");const R=Symbol("link");const O=Symbol("symlink");const T=Symbol("hardlink");const k=Symbol("unsupported");const v=Symbol("checkPath");const L=Symbol("mkdir");const x=Symbol("onError");const A=Symbol("pending");const I=Symbol("pend");const D=Symbol("unpend");const N=Symbol("ended");const C=Symbol("maybeClose");const B=Symbol("skip");const M=Symbol("doChown");const P=Symbol("uid");const F=Symbol("gid");const z=Symbol("checkedCwd");const U=s(417);const j=s(953);const G=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform;const Z=G==="win32";const Y=(t,e)=>{if(!Z)return r.unlink(t,e);const s=t+".DELETE."+U.randomBytes(16).toString("hex");r.rename(t,s,t=>{if(t)return e(t);r.unlink(s,e)})};const H=t=>{if(!Z)return r.unlinkSync(t);const e=t+".DELETE."+U.randomBytes(16).toString("hex");r.renameSync(t,e);r.unlinkSync(e)};const W=(t,e,s)=>t===t>>>0?t:e===e>>>0?e:s;const V=t=>p(d(f(t))).toLowerCase();const q=(t,e)=>{e=V(e);for(const s of t.keys()){const i=V(s);if(i===e||i.indexOf(e+"/")===0)t.delete(s)}};const $=t=>{for(const e of t.keys())t.delete(e)};class Unpack extends n{constructor(t){if(!t)t={};t.ondone=(t=>{this[N]=true;this[C]()});super(t);this[z]=false;this.reservations=a();this.transform=typeof t.transform==="function"?t.transform:null;this.writable=true;this.readable=false;this[A]=0;this[N]=false;this.dirCache=t.dirCache||new Map;if(typeof t.uid==="number"||typeof t.gid==="number"){if(typeof t.uid!=="number"||typeof t.gid!=="number")throw new TypeError("cannot set owner without number uid and gid");if(t.preserveOwner){throw new TypeError("cannot preserve owner in archive and also set owner explicitly")}this.uid=t.uid;this.gid=t.gid;this.setOwner=true}else{this.uid=null;this.gid=null;this.setOwner=false}if(t.preserveOwner===undefined&&typeof t.uid!=="number")this.preserveOwner=process.getuid&&process.getuid()===0;else this.preserveOwner=!!t.preserveOwner;this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():null;this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():null;this.forceChown=t.forceChown===true;this.win32=!!t.win32||Z;this.newer=!!t.newer;this.keep=!!t.keep;this.noMtime=!!t.noMtime;this.preservePaths=!!t.preservePaths;this.unlink=!!t.unlink;this.cwd=f(h.resolve(t.cwd||process.cwd()));this.strip=+t.strip||0;this.processUmask=t.noChmod?0:process.umask();this.umask=typeof t.umask==="number"?t.umask:this.processUmask;this.dmode=t.dmode||511&~this.umask;this.fmode=t.fmode||438&~this.umask;this.on("entry",t=>this[m](t))}warn(t,e,s={}){if(t==="TAR_BAD_ARCHIVE"||t==="TAR_ABORT")s.recoverable=false;return super.warn(t,e,s)}[C](){if(this[N]&&this[A]===0){this.emit("prefinish");this.emit("finish");this.emit("end");this.emit("close")}}[v](t){if(this.strip){const e=f(t.path).split("/");if(e.length<this.strip)return false;t.path=e.slice(this.strip).join("/");if(t.type==="Link"){const e=f(t.linkpath).split("/");if(e.length>=this.strip)t.linkpath=e.slice(this.strip).join("/");else return false}}if(!this.preservePaths){const e=f(t.path);const s=e.split("/");if(s.includes("..")||Z&&/^[a-z]:\.\.$/i.test(s[0])){this.warn("TAR_ENTRY_ERROR",`path contains '..'`,{entry:t,path:e});return false}const[i,n]=u(e);if(i){t.path=n;this.warn("TAR_ENTRY_INFO",`stripping ${i} from absolute path`,{entry:t,path:e})}}if(h.isAbsolute(t.path))t.absolute=f(h.resolve(t.path));else t.absolute=f(h.resolve(this.cwd,t.path));if(!this.preservePaths&&t.absolute.indexOf(this.cwd+"/")!==0&&t.absolute!==this.cwd){this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:t,path:f(t.path),resolvedPath:t.absolute,cwd:this.cwd});return false}if(t.absolute===this.cwd&&t.type!=="Directory"&&t.type!=="GNUDumpDir")return false;if(this.win32){const{root:e}=h.win32.parse(t.absolute);t.absolute=e+c.encode(t.absolute.substr(e.length));const{root:s}=h.win32.parse(t.path);t.path=s+c.encode(t.path.substr(s.length))}return true}[m](t){if(!this[v](t))return t.resume();i.equal(typeof t.absolute,"string");switch(t.type){case"Directory":case"GNUDumpDir":if(t.mode)t.mode=t.mode|448;case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[y](t);case"CharacterDevice":case"BlockDevice":case"FIFO":default:return this[k](t)}}[x](t,e){if(t.name==="CwdError")this.emit("error",t);else{this.warn("TAR_ENTRY_ERROR",t,{entry:e});this[D]();e.resume()}}[L](t,e,s){l(f(t),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cache:this.dirCache,cwd:this.cwd,mode:e,noChmod:this.noChmod},s)}[M](t){return this.forceChown||this.preserveOwner&&(typeof t.uid==="number"&&t.uid!==this.processUid||typeof t.gid==="number"&&t.gid!==this.processGid)||(typeof this.uid==="number"&&this.uid!==this.processUid||typeof this.gid==="number"&&this.gid!==this.processGid)}[P](t){return W(this.uid,t.uid,this.processUid)}[F](t){return W(this.gid,t.gid,this.processGid)}[_](t,e){const s=t.mode&4095||this.fmode;const i=new o.WriteStream(t.absolute,{flags:j(t.size),mode:s,autoClose:false});i.on("error",s=>{if(i.fd)r.close(i.fd,()=>{});i.write=(()=>true);this[x](s,t);e()});let n=1;const h=s=>{if(s){if(i.fd)r.close(i.fd,()=>{});this[x](s,t);e();return}if(--n===0){r.close(i.fd,s=>{if(s)this[x](s,t);else this[D]();e()})}};i.on("finish",e=>{const s=t.absolute;const o=i.fd;if(t.mtime&&!this.noMtime){n++;const e=t.atime||new Date;const i=t.mtime;r.futimes(o,e,i,t=>t?r.utimes(s,e,i,e=>h(e&&t)):h())}if(this[M](t)){n++;const e=this[P](t);const i=this[F](t);r.fchown(o,e,i,t=>t?r.chown(s,e,i,e=>h(e&&t)):h())}h()});const l=this.transform?this.transform(t)||t:t;if(l!==t){l.on("error",s=>{this[x](s,t);e()});t.pipe(l)}l.pipe(i)}[g](t,e){const s=t.mode&4095||this.dmode;this[L](t.absolute,s,s=>{if(s){this[x](s,t);e();return}let i=1;const n=s=>{if(--i===0){e();this[D]();t.resume()}};if(t.mtime&&!this.noMtime){i++;r.utimes(t.absolute,t.atime||new Date,t.mtime,n)}if(this[M](t)){i++;r.chown(t.absolute,this[P](t),this[F](t),n)}n()})}[k](t){t.unsupported=true;this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${t.type}`,{entry:t});t.resume()}[O](t,e){this[R](t,t.linkpath,"symlink",e)}[T](t,e){const s=f(h.resolve(this.cwd,t.linkpath));this[R](t,s,"link",e)}[I](){this[A]++}[D](){this[A]--;this[C]()}[B](t){this[D]();t.resume()}[E](t,e){return t.type==="File"&&!this.unlink&&e.isFile()&&e.nlink<=1&&!Z}[y](t){this[I]();const e=[t.path];if(t.linkpath)e.push(t.linkpath);this.reservations.reserve(e,e=>this[b](t,e))}[w](t){if(t.type==="SymbolicLink")$(this.dirCache);else if(t.type!=="Directory")q(this.dirCache,t.absolute)}[b](t,e){this[w](t);const s=s=>{this[w](t);e(s)};const i=()=>{this[L](this.cwd,this.dmode,e=>{if(e){this[x](e,t);s();return}this[z]=true;n()})};const n=()=>{if(t.absolute!==this.cwd){const e=f(h.dirname(t.absolute));if(e!==this.cwd){return this[L](e,this.dmode,e=>{if(e){this[x](e,t);s();return}o()})}}o()};const o=()=>{r.lstat(t.absolute,(e,i)=>{if(i&&(this.keep||this.newer&&i.mtime>t.mtime)){this[B](t);s();return}if(e||this[E](t,i))return this[S](null,t,s);if(i.isDirectory()){if(t.type==="Directory"){const e=!this.noChmod&&t.mode&&(i.mode&4095)!==t.mode;const n=e=>this[S](e,t,s);if(!e)return n();return r.chmod(t.absolute,t.mode,n)}if(t.absolute!==this.cwd){return r.rmdir(t.absolute,e=>this[S](e,t,s))}}if(t.absolute===this.cwd)return this[S](null,t,s);Y(t.absolute,e=>this[S](e,t,s))})};if(this[z])n();else i()}[S](t,e,s){if(t){this[x](t,e);s();return}switch(e.type){case"File":case"OldFile":case"ContiguousFile":return this[_](e,s);case"Link":return this[T](e,s);case"SymbolicLink":return this[O](e,s);case"Directory":case"GNUDumpDir":return this[g](e,s)}}[R](t,e,s,i){r[s](e,t.absolute,e=>{if(e)this[x](e,t);else{this[D]();t.resume()}i()})}}const K=t=>{try{return[null,t()]}catch(t){return[t,null]}};class UnpackSync extends Unpack{[S](t,e){return super[S](t,e,()=>{})}[y](t){this[w](t);if(!this[z]){const e=this[L](this.cwd,this.dmode);if(e)return this[x](e,t);this[z]=true}if(t.absolute!==this.cwd){const e=f(h.dirname(t.absolute));if(e!==this.cwd){const s=this[L](e,this.dmode);if(s)return this[x](s,t)}}const[e,s]=K(()=>r.lstatSync(t.absolute));if(s&&(this.keep||this.newer&&s.mtime>t.mtime))return this[B](t);if(e||this[E](t,s))return this[S](null,t);if(s.isDirectory()){if(t.type==="Directory"){const e=!this.noChmod&&t.mode&&(s.mode&4095)!==t.mode;const[i]=e?K(()=>{r.chmodSync(t.absolute,t.mode)}):[];return this[S](i,t)}const[e]=K(()=>r.rmdirSync(t.absolute));this[S](e,t)}const[i]=t.absolute===this.cwd?[]:K(()=>H(t.absolute));this[S](i,t)}[_](t,e){const s=t.mode&4095||this.fmode;const i=s=>{let i;try{r.closeSync(n)}catch(t){i=t}if(s||i)this[x](s||i,t);e()};let n;try{n=r.openSync(t.absolute,j(t.size),s)}catch(t){return i(t)}const o=this.transform?this.transform(t)||t:t;if(o!==t){o.on("error",e=>this[x](e,t));t.pipe(o)}o.on("data",t=>{try{r.writeSync(n,t,0,t.length)}catch(t){i(t)}});o.on("end",e=>{let s=null;if(t.mtime&&!this.noMtime){const e=t.atime||new Date;const i=t.mtime;try{r.futimesSync(n,e,i)}catch(n){try{r.utimesSync(t.absolute,e,i)}catch(t){s=n}}}if(this[M](t)){const e=this[P](t);const i=this[F](t);try{r.fchownSync(n,e,i)}catch(n){try{r.chownSync(t.absolute,e,i)}catch(t){s=s||n}}}i(s)})}[g](t,e){const s=t.mode&4095||this.dmode;const i=this[L](t.absolute,s);if(i){this[x](i,t);e();return}if(t.mtime&&!this.noMtime){try{r.utimesSync(t.absolute,t.atime||new Date,t.mtime)}catch(i){}}if(this[M](t)){try{r.chownSync(t.absolute,this[P](t),this[F](t))}catch(i){}}e();t.resume()}[L](t,e){try{return l.sync(f(t),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cache:this.dirCache,cwd:this.cwd,mode:e})}catch(t){return t}}[R](t,e,s,i){try{r[s+"Sync"](e,t.absolute);i();t.resume()}catch(e){return this[x](e,t)}}}Unpack.Sync=UnpackSync;t.exports=Unpack},87:function(t){t.exports=require("os")},92:function(t,e,s){const{dirname:i}=s(622);const n=(t,e,s=undefined)=>{if(s===e)return Promise.resolve();return t.statAsync(e).then(t=>t.isDirectory()?s:undefined,s=>s.code==="ENOENT"?n(t,i(e),e):undefined)};const r=(t,e,s=undefined)=>{if(s===e)return undefined;try{return t.statSync(e).isDirectory()?s:undefined}catch(s){return s.code==="ENOENT"?r(t,i(e),e):undefined}};t.exports={findMade:n,findMadeSync:r}},133:function(t,e,s){"use strict";const i=s(357);const n=s(293).Buffer;const r=s(761);const o=e.constants=s(60);const h=s(720);const l=n.concat;const c=Symbol("_superWrite");class ZlibError extends Error{constructor(t){super("zlib: "+t.message);this.code=t.code;this.errno=t.errno;if(!this.code)this.code="ZLIB_ERROR";this.message="zlib: "+t.message;Error.captureStackTrace(this,this.constructor)}get name(){return"ZlibError"}}const a=Symbol("opts");const u=Symbol("flushFlag");const f=Symbol("finishFlushFlag");const d=Symbol("fullFlushFlag");const p=Symbol("handle");const m=Symbol("onError");const y=Symbol("sawError");const b=Symbol("level");const w=Symbol("strategy");const E=Symbol("ended");const S=Symbol("_defaultFullFlush");class ZlibBase extends h{constructor(t,e){if(!t||typeof t!=="object")throw new TypeError("invalid options for ZlibBase constructor");super(t);this[y]=false;this[E]=false;this[a]=t;this[u]=t.flush;this[f]=t.finishFlush;try{this[p]=new r[e](t)}catch(t){throw new ZlibError(t)}this[m]=(t=>{if(this[y])return;this[y]=true;this.close();this.emit("error",t)});this[p].on("error",t=>this[m](new ZlibError(t)));this.once("end",()=>this.close)}close(){if(this[p]){this[p].close();this[p]=null;this.emit("close")}}reset(){if(!this[y]){i(this[p],"zlib binding closed");return this[p].reset()}}flush(t){if(this.ended)return;if(typeof t!=="number")t=this[d];this.write(Object.assign(n.alloc(0),{[u]:t}))}end(t,e,s){if(t)this.write(t,e);this.flush(this[f]);this[E]=true;return super.end(null,null,s)}get ended(){return this[E]}write(t,e,s){if(typeof e==="function")s=e,e="utf8";if(typeof t==="string")t=n.from(t,e);if(this[y])return;i(this[p],"zlib binding closed");const r=this[p]._handle;const o=r.close;r.close=(()=>{});const h=this[p].close;this[p].close=(()=>{});n.concat=(t=>t);let a;try{const e=typeof t[u]==="number"?t[u]:this[u];a=this[p]._processChunk(t,e);n.concat=l}catch(t){n.concat=l;this[m](new ZlibError(t))}finally{if(this[p]){this[p]._handle=r;r.close=o;this[p].close=h;this[p].removeAllListeners("error")}}if(this[p])this[p].on("error",t=>this[m](new ZlibError(t)));let f;if(a){if(Array.isArray(a)&&a.length>0){f=this[c](n.from(a[0]));for(let t=1;t<a.length;t++){f=this[c](a[t])}}else{f=this[c](n.from(a))}}if(s)s();return f}[c](t){return super.write(t)}}class Zlib extends ZlibBase{constructor(t,e){t=t||{};t.flush=t.flush||o.Z_NO_FLUSH;t.finishFlush=t.finishFlush||o.Z_FINISH;super(t,e);this[d]=o.Z_FULL_FLUSH;this[b]=t.level;this[w]=t.strategy}params(t,e){if(this[y])return;if(!this[p])throw new Error("cannot switch params when binding is closed");if(!this[p].params)throw new Error("not supported in this implementation");if(this[b]!==t||this[w]!==e){this.flush(o.Z_SYNC_FLUSH);i(this[p],"zlib binding closed");const s=this[p].flush;this[p].flush=((t,e)=>{this.flush(t);e()});try{this[p].params(t,e)}finally{this[p].flush=s}if(this[p]){this[b]=t;this[w]=e}}}}class Deflate extends Zlib{constructor(t){super(t,"Deflate")}}class Inflate extends Zlib{constructor(t){super(t,"Inflate")}}const _=Symbol("_portable");class Gzip extends Zlib{constructor(t){super(t,"Gzip");this[_]=t&&!!t.portable}[c](t){if(!this[_])return super[c](t);this[_]=false;t[9]=255;return super[c](t)}}class Gunzip extends Zlib{constructor(t){super(t,"Gunzip")}}class DeflateRaw extends Zlib{constructor(t){super(t,"DeflateRaw")}}class InflateRaw extends Zlib{constructor(t){super(t,"InflateRaw")}}class Unzip extends Zlib{constructor(t){super(t,"Unzip")}}class Brotli extends ZlibBase{constructor(t,e){t=t||{};t.flush=t.flush||o.BROTLI_OPERATION_PROCESS;t.finishFlush=t.finishFlush||o.BROTLI_OPERATION_FINISH;super(t,e);this[d]=o.BROTLI_OPERATION_FLUSH}}class BrotliCompress extends Brotli{constructor(t){super(t,"BrotliCompress")}}class BrotliDecompress extends Brotli{constructor(t){super(t,"BrotliDecompress")}}e.Deflate=Deflate;e.Inflate=Inflate;e.Gzip=Gzip;e.Gunzip=Gunzip;e.DeflateRaw=DeflateRaw;e.InflateRaw=InflateRaw;e.Unzip=Unzip;if(typeof r.BrotliCompress==="function"){e.BrotliCompress=BrotliCompress;e.BrotliDecompress=BrotliDecompress}else{e.BrotliCompress=e.BrotliDecompress=class{constructor(){throw new Error("Brotli is not supported in this version of Node.js")}}}},159:function(t,e,s){"use strict";const i=s(891);const n=s(726);const r=s(827);const o=s(381);const h=s(622);t.exports=((t,e,s)=>{if(typeof e==="function")s=e;if(Array.isArray(t))e=t,t={};if(!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");e=Array.from(e);const n=i(t);if(n.sync&&typeof s==="function")throw new TypeError("callback not supported for sync tar functions");if(!n.file&&typeof s==="function")throw new TypeError("callback only supported with file option");return n.file&&n.sync?l(n,e):n.file?c(n,e,s):n.sync?f(n,e):d(n,e)});const l=(t,e)=>{const s=new n.Sync(t);const i=new r.WriteStreamSync(t.file,{mode:t.mode||438});s.pipe(i);a(s,e)};const c=(t,e,s)=>{const i=new n(t);const o=new r.WriteStream(t.file,{mode:t.mode||438});i.pipe(o);const h=new Promise((t,e)=>{o.on("error",e);o.on("close",t);i.on("error",e)});u(i,e);return s?h.then(s,s):h};const a=(t,e)=>{e.forEach(e=>{if(e.charAt(0)==="@"){o({file:h.resolve(t.cwd,e.substr(1)),sync:true,noResume:true,onentry:e=>t.add(e)})}else t.add(e)});t.end()};const u=(t,e)=>{while(e.length){const s=e.shift();if(s.charAt(0)==="@"){return o({file:h.resolve(t.cwd,s.substr(1)),noResume:true,onentry:e=>t.add(e)}).then(s=>u(t,e))}else t.add(s)}t.end()};const f=(t,e)=>{const s=new n.Sync(t);a(s,e);return s};const d=(t,e)=>{const s=new n(t);u(s,e);return s}},182:function(t,e,s){const i=s(357);const n=s(471);const r=s(893);const{join:o}=s(622);const h=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform;const l=h==="win32";t.exports=(()=>{const t=new Map;const e=new Map;const s=t=>{const e=t.split("/").slice(0,-1).reduce((t,e)=>{if(t.length)e=o(t[t.length-1],e);t.push(e||"/");return t},[]);return e};const h=new Set;const c=s=>{const i=e.get(s);if(!i)throw new Error("function does not have any path reservations");return{paths:i.paths.map(e=>t.get(e)),dirs:[...i.dirs].map(e=>t.get(e))}};const a=t=>{const{paths:e,dirs:s}=c(t);return e.every(e=>e[0]===t)&&s.every(e=>e[0]instanceof Set&&e[0].has(t))};const u=t=>{if(h.has(t)||!a(t))return false;h.add(t);t(()=>f(t));return true};const f=s=>{if(!h.has(s))return false;const{paths:n,dirs:r}=e.get(s);const o=new Set;n.forEach(e=>{const n=t.get(e);i.equal(n[0],s);if(n.length===1)t.delete(e);else{n.shift();if(typeof n[0]==="function")o.add(n[0]);else n[0].forEach(t=>o.add(t))}});r.forEach(e=>{const n=t.get(e);i(n[0]instanceof Set);if(n[0].size===1&&n.length===1)t.delete(e);else if(n[0].size===1){n.shift();o.add(n[0])}else n[0].delete(s)});h.delete(s);o.forEach(t=>u(t));return true};const d=(i,h)=>{i=l?["win32 parallelization disabled"]:i.map(t=>{return n(r(o(t))).toLowerCase()});const c=new Set(i.map(t=>s(t)).reduce((t,e)=>t.concat(e)));e.set(h,{dirs:c,paths:i});i.forEach(e=>{const s=t.get(e);if(!s)t.set(e,[h]);else s.push(h)});c.forEach(e=>{const s=t.get(e);if(!s)t.set(e,[new Set([h])]);else if(s[s.length-1]instanceof Set)s[s.length-1].add(h);else s.push(new Set([h]))});return u(h)};return{check:a,reserve:d}})},203:function(t,e,s){"use strict";const i=s(796);const n=s(232);const r=s(614);const o=s(612);const h=1024*1024;const l=s(662);const c=s(582);const a=s(133);const u=Buffer.from([31,139]);const f=Symbol("state");const d=Symbol("writeEntry");const p=Symbol("readEntry");const m=Symbol("nextEntry");const y=Symbol("processEntry");const b=Symbol("extendedHeader");const w=Symbol("globalExtendedHeader");const E=Symbol("meta");const S=Symbol("emitMeta");const _=Symbol("buffer");const g=Symbol("queue");const R=Symbol("ended");const O=Symbol("emittedEnd");const T=Symbol("emit");const k=Symbol("unzip");const v=Symbol("consumeChunk");const L=Symbol("consumeChunkSub");const x=Symbol("consumeBody");const A=Symbol("consumeMeta");const I=Symbol("consumeHeader");const D=Symbol("consuming");const N=Symbol("bufferConcat");const C=Symbol("maybeEnd");const B=Symbol("writing");const M=Symbol("aborted");const P=Symbol("onDone");const F=Symbol("sawValidEntry");const z=Symbol("sawNullBlock");const U=Symbol("sawEOF");const j=t=>true;t.exports=i(class Parser extends r{constructor(t){t=t||{};super(t);this.file=t.file||"";this[F]=null;this.on(P,t=>{if(this[f]==="begin"||this[F]===false){this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}});if(t.ondone)this.on(P,t.ondone);else{this.on(P,t=>{this.emit("prefinish");this.emit("finish");this.emit("end");this.emit("close")})}this.strict=!!t.strict;this.maxMetaEntrySize=t.maxMetaEntrySize||h;this.filter=typeof t.filter==="function"?t.filter:j;this.writable=true;this.readable=false;this[g]=new o;this[_]=null;this[p]=null;this[d]=null;this[f]="begin";this[E]="";this[b]=null;this[w]=null;this[R]=false;this[k]=null;this[M]=false;this[z]=false;this[U]=false;if(typeof t.onwarn==="function")this.on("warn",t.onwarn);if(typeof t.onentry==="function")this.on("entry",t.onentry)}[I](t,e){if(this[F]===null)this[F]=false;let s;try{s=new n(t,e,this[b],this[w])}catch(t){return this.warn("TAR_ENTRY_INVALID",t)}if(s.nullBlock){if(this[z]){this[U]=true;if(this[f]==="begin")this[f]="header";this[T]("eof")}else{this[z]=true;this[T]("nullBlock")}}else{this[z]=false;if(!s.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:s});else if(!s.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:s});else{const t=s.type;if(/^(Symbolic)?Link$/.test(t)&&!s.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:s});else if(!/^(Symbolic)?Link$/.test(t)&&s.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:s});else{const t=this[d]=new l(s,this[b],this[w]);if(!this[F]){if(t.remain){const e=()=>{if(!t.invalid)this[F]=true};t.on("end",e)}else this[F]=true}if(t.meta){if(t.size>this.maxMetaEntrySize){t.ignore=true;this[T]("ignoredEntry",t);this[f]="ignore";t.resume()}else if(t.size>0){this[E]="";t.on("data",t=>this[E]+=t);this[f]="meta"}}else{this[b]=null;t.ignore=t.ignore||!this.filter(t.path,t);if(t.ignore){this[T]("ignoredEntry",t);this[f]=t.remain?"ignore":"header";t.resume()}else{if(t.remain)this[f]="body";else{this[f]="header";t.end()}if(!this[p]){this[g].push(t);this[m]()}else this[g].push(t)}}}}}}[y](t){let e=true;if(!t){this[p]=null;e=false}else if(Array.isArray(t))this.emit.apply(this,t);else{this[p]=t;this.emit("entry",t);if(!t.emittedEnd){t.on("end",t=>this[m]());e=false}}return e}[m](){do{}while(this[y](this[g].shift()));if(!this[g].length){const t=this[p];const e=!t||t.flowing||t.size===t.remain;if(e){if(!this[B])this.emit("drain")}else t.once("drain",t=>this.emit("drain"))}}[x](t,e){const s=this[d];const i=s.blockRemain;const n=i>=t.length&&e===0?t:t.slice(e,e+i);s.write(n);if(!s.blockRemain){this[f]="header";this[d]=null;s.end()}return n.length}[A](t,e){const s=this[d];const i=this[x](t,e);if(!this[d])this[S](s);return i}[T](t,e,s){if(!this[g].length&&!this[p])this.emit(t,e,s);else this[g].push([t,e,s])}[S](t){this[T]("meta",this[E]);switch(t.type){case"ExtendedHeader":case"OldExtendedHeader":this[b]=c.parse(this[E],this[b],false);break;case"GlobalExtendedHeader":this[w]=c.parse(this[E],this[w],true);break;case"NextFileHasLongPath":case"OldGnuLongPath":this[b]=this[b]||Object.create(null);this[b].path=this[E].replace(/\0.*/,"");break;case"NextFileHasLongLinkpath":this[b]=this[b]||Object.create(null);this[b].linkpath=this[E].replace(/\0.*/,"");break;default:throw new Error("unknown meta: "+t.type)}}abort(t){this[M]=true;this.emit("abort",t);this.warn("TAR_ABORT",t,{recoverable:false})}write(t){if(this[M])return;if(this[k]===null&&t){if(this[_]){t=Buffer.concat([this[_],t]);this[_]=null}if(t.length<u.length){this[_]=t;return true}for(let e=0;this[k]===null&&e<u.length;e++){if(t[e]!==u[e])this[k]=false}if(this[k]===null){const e=this[R];this[R]=false;this[k]=new a.Unzip;this[k].on("data",t=>this[v](t));this[k].on("error",t=>this.abort(t));this[k].on("end",t=>{this[R]=true;this[v]()});this[B]=true;const s=this[k][e?"end":"write"](t);this[B]=false;return s}}this[B]=true;if(this[k])this[k].write(t);else this[v](t);this[B]=false;const e=this[g].length?false:this[p]?this[p].flowing:true;if(!e&&!this[g].length)this[p].once("drain",t=>this.emit("drain"));return e}[N](t){if(t&&!this[M])this[_]=this[_]?Buffer.concat([this[_],t]):t}[C](){if(this[R]&&!this[O]&&!this[M]&&!this[D]){this[O]=true;const t=this[d];if(t&&t.blockRemain){const e=this[_]?this[_].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${t.blockRemain} more bytes, only ${e} available)`,{entry:t});if(this[_])t.write(this[_]);t.end()}this[T](P)}}[v](t){if(this[D])this[N](t);else if(!t&&!this[_])this[C]();else{this[D]=true;if(this[_]){this[N](t);const e=this[_];this[_]=null;this[L](e)}else this[L](t);while(this[_]&&this[_].length>=512&&!this[M]&&!this[U]){const t=this[_];this[_]=null;this[L](t)}this[D]=false}if(!this[_]||this[R])this[C]()}[L](t){let e=0;const s=t.length;while(e+512<=s&&!this[M]&&!this[U]){switch(this[f]){case"begin":case"header":this[I](t,e);e+=512;break;case"ignore":case"body":e+=this[x](t,e);break;case"meta":e+=this[A](t,e);break;default:throw new Error("invalid state: "+this[f])}}if(e<s){if(this[_])this[_]=Buffer.concat([t.slice(e),this[_]]);else this[_]=t.slice(e)}}end(t){if(!this[M]){if(this[k])this[k].end(t);else{this[R]=true;this.write(t)}}}})},232:function(t,e,s){"use strict";const i=s(554);const n=s(622).posix;const r=s(858);const o=Symbol("slurp");const h=Symbol("type");class Header{constructor(t,e,s,i){this.cksumValid=false;this.needPax=false;this.nullBlock=false;this.block=null;this.path=null;this.mode=null;this.uid=null;this.gid=null;this.size=null;this.mtime=null;this.cksum=null;this[h]="0";this.linkpath=null;this.uname=null;this.gname=null;this.devmaj=0;this.devmin=0;this.atime=null;this.ctime=null;if(Buffer.isBuffer(t))this.decode(t,e||0,s,i);else if(t)this.set(t)}decode(t,e,s,i){if(!e)e=0;if(!t||!(t.length>=e+512))throw new Error("need 512 bytes for header");this.path=c(t,e,100);this.mode=f(t,e+100,8);this.uid=f(t,e+108,8);this.gid=f(t,e+116,8);this.size=f(t,e+124,12);this.mtime=a(t,e+136,12);this.cksum=f(t,e+148,12);this[o](s);this[o](i,true);this[h]=c(t,e+156,1);if(this[h]==="")this[h]="0";if(this[h]==="0"&&this.path.substr(-1)==="/")this[h]="5";if(this[h]==="5")this.size=0;this.linkpath=c(t,e+157,100);if(t.slice(e+257,e+265).toString()==="ustar\x0000"){this.uname=c(t,e+265,32);this.gname=c(t,e+297,32);this.devmaj=f(t,e+329,8);this.devmin=f(t,e+337,8);if(t[e+475]!==0){const s=c(t,e+345,155);this.path=s+"/"+this.path}else{const s=c(t,e+345,130);if(s)this.path=s+"/"+this.path;this.atime=a(t,e+476,12);this.ctime=a(t,e+488,12)}}let n=8*32;for(let s=e;s<e+148;s++)n+=t[s];for(let s=e+156;s<e+512;s++)n+=t[s];this.cksumValid=n===this.cksum;if(this.cksum===null&&n===8*32)this.nullBlock=true}[o](t,e){for(const s in t){if(t[s]!==null&&t[s]!==undefined&&!(e&&s==="path"))this[s]=t[s]}}encode(t,e){if(!t){t=this.block=Buffer.alloc(512);e=0}if(!e)e=0;if(!(t.length>=e+512))throw new Error("need 512 bytes for header");const s=this.ctime||this.atime?130:155;const i=l(this.path||"",s);const n=i[0];const r=i[1];this.needPax=i[2];this.needPax=g(t,e,100,n)||this.needPax;this.needPax=y(t,e+100,8,this.mode)||this.needPax;this.needPax=y(t,e+108,8,this.uid)||this.needPax;this.needPax=y(t,e+116,8,this.gid)||this.needPax;this.needPax=y(t,e+124,12,this.size)||this.needPax;this.needPax=S(t,e+136,12,this.mtime)||this.needPax;t[e+156]=this[h].charCodeAt(0);this.needPax=g(t,e+157,100,this.linkpath)||this.needPax;t.write("ustar\x0000",e+257,8);this.needPax=g(t,e+265,32,this.uname)||this.needPax;this.needPax=g(t,e+297,32,this.gname)||this.needPax;this.needPax=y(t,e+329,8,this.devmaj)||this.needPax;this.needPax=y(t,e+337,8,this.devmin)||this.needPax;this.needPax=g(t,e+345,s,r)||this.needPax;if(t[e+475]!==0)this.needPax=g(t,e+345,155,r)||this.needPax;else{this.needPax=g(t,e+345,130,r)||this.needPax;this.needPax=S(t,e+476,12,this.atime)||this.needPax;this.needPax=S(t,e+488,12,this.ctime)||this.needPax}let o=8*32;for(let s=e;s<e+148;s++)o+=t[s];for(let s=e+156;s<e+512;s++)o+=t[s];this.cksum=o;y(t,e+148,8,this.cksum);this.cksumValid=true;return this.needPax}set(t){for(const e in t){if(t[e]!==null&&t[e]!==undefined)this[e]=t[e]}}get type(){return i.name.get(this[h])||this[h]}get typeKey(){return this[h]}set type(t){if(i.code.has(t))this[h]=i.code.get(t);else this[h]=t}}const l=(t,e)=>{const s=100;let i=t;let r="";let o;const h=n.parse(t).root||".";if(Buffer.byteLength(i)<s)o=[i,r,false];else{r=n.dirname(i);i=n.basename(i);do{if(Buffer.byteLength(i)<=s&&Buffer.byteLength(r)<=e)o=[i,r,false];else if(Buffer.byteLength(i)>s&&Buffer.byteLength(r)<=e)o=[i.substr(0,s-1),r,true];else{i=n.join(n.basename(r),i);r=n.dirname(r)}}while(r!==h&&!o);if(!o)o=[t.substr(0,s-1),"",true]}return o};const c=(t,e,s)=>t.slice(e,e+s).toString("utf8").replace(/\0.*/,"");const a=(t,e,s)=>u(f(t,e,s));const u=t=>t===null?null:new Date(t*1e3);const f=(t,e,s)=>t[e]&128?r.parse(t.slice(e,e+s)):p(t,e,s);const d=t=>isNaN(t)?null:t;const p=(t,e,s)=>d(parseInt(t.slice(e,e+s).toString("utf8").replace(/\0.*$/,"").trim(),8));const m={12:8589934591,8:2097151};const y=(t,e,s,i)=>i===null?false:i>m[s]||i<0?(r.encode(i,t.slice(e,e+s)),true):(b(t,e,s,i),false);const b=(t,e,s,i)=>t.write(w(i,s),e,s,"ascii");const w=(t,e)=>E(Math.floor(t).toString(8),e);const E=(t,e)=>(t.length===e-1?t:new Array(e-t.length-1).join("0")+t+" ")+"\0";const S=(t,e,s,i)=>i===null?false:y(t,e,s,i.getTime()/1e3);const _=new Array(156).join("\0");const g=(t,e,s,i)=>i===null?false:(t.write(i+_,e,s,"utf8"),i.length!==Buffer.byteLength(i)||i.length>s);t.exports=Header},293:function(t){t.exports=require("buffer")},303:function(t,e,s){"use strict";const i=s(720);const n=s(582);const r=s(232);const o=s(747);const h=s(622);const l=s(674);const c=s(893);const a=(t,e)=>{if(!e)return l(t);t=l(t).replace(/^\.(\/|$)/,"");return c(e)+"/"+t};const u=16*1024*1024;const f=Symbol("process");const d=Symbol("file");const p=Symbol("directory");const m=Symbol("symlink");const y=Symbol("hardlink");const b=Symbol("header");const w=Symbol("read");const E=Symbol("lstat");const S=Symbol("onlstat");const _=Symbol("onread");const g=Symbol("onreadlink");const R=Symbol("openfile");const O=Symbol("onopenfile");const T=Symbol("close");const k=Symbol("mode");const v=Symbol("awaitDrain");const L=Symbol("ondrain");const x=Symbol("prefix");const A=Symbol("hadError");const I=s(796);const D=s(478);const N=s(657);const C=s(904);const B=I(class WriteEntry extends i{constructor(t,e){e=e||{};super(e);if(typeof t!=="string")throw new TypeError("path is required");this.path=l(t);this.portable=!!e.portable;this.myuid=process.getuid&&process.getuid()||0;this.myuser=process.env.USER||"";this.maxReadSize=e.maxReadSize||u;this.linkCache=e.linkCache||new Map;this.statCache=e.statCache||new Map;this.preservePaths=!!e.preservePaths;this.cwd=l(e.cwd||process.cwd());this.strict=!!e.strict;this.noPax=!!e.noPax;this.noMtime=!!e.noMtime;this.mtime=e.mtime||null;this.prefix=e.prefix?l(e.prefix):null;this.fd=null;this.blockLen=null;this.blockRemain=null;this.buf=null;this.offset=null;this.length=null;this.pos=null;this.remain=null;if(typeof e.onwarn==="function")this.on("warn",e.onwarn);let s=false;if(!this.preservePaths){const[t,e]=N(this.path);if(t){this.path=e;s=t}}this.win32=!!e.win32||process.platform==="win32";if(this.win32){this.path=D.decode(this.path.replace(/\\/g,"/"));t=t.replace(/\\/g,"/")}this.absolute=l(e.absolute||h.resolve(this.cwd,t));if(this.path==="")this.path="./";if(s){this.warn("TAR_ENTRY_INFO",`stripping ${s} from absolute path`,{entry:this,path:s+this.path})}if(this.statCache.has(this.absolute))this[S](this.statCache.get(this.absolute));else this[E]()}emit(t,...e){if(t==="error")this[A]=true;return super.emit(t,...e)}[E](){o.lstat(this.absolute,(t,e)=>{if(t)return this.emit("error",t);this[S](e)})}[S](t){this.statCache.set(this.absolute,t);this.stat=t;if(!t.isFile())t.size=0;this.type=P(t);this.emit("stat",t);this[f]()}[f](){switch(this.type){case"File":return this[d]();case"Directory":return this[p]();case"SymbolicLink":return this[m]();default:return this.end()}}[k](t){return C(t,this.type==="Directory",this.portable)}[x](t){return a(t,this.prefix)}[b](){if(this.type==="Directory"&&this.portable)this.noMtime=true;this.header=new r({path:this[x](this.path),linkpath:this.type==="Link"?this[x](this.linkpath):this.linkpath,mode:this[k](this.stat.mode),uid:this.portable?null:this.stat.uid,gid:this.portable?null:this.stat.gid,size:this.stat.size,mtime:this.noMtime?null:this.mtime||this.stat.mtime,type:this.type,uname:this.portable?null:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?null:this.stat.atime,ctime:this.portable?null:this.stat.ctime});if(this.header.encode()&&!this.noPax){super.write(new n({atime:this.portable?null:this.header.atime,ctime:this.portable?null:this.header.ctime,gid:this.portable?null:this.header.gid,mtime:this.noMtime?null:this.mtime||this.header.mtime,path:this[x](this.path),linkpath:this.type==="Link"?this[x](this.linkpath):this.linkpath,size:this.header.size,uid:this.portable?null:this.header.uid,uname:this.portable?null:this.header.uname,dev:this.portable?null:this.stat.dev,ino:this.portable?null:this.stat.ino,nlink:this.portable?null:this.stat.nlink}).encode())}super.write(this.header.block)}[p](){if(this.path.substr(-1)!=="/")this.path+="/";this.stat.size=0;this[b]();this.end()}[m](){o.readlink(this.absolute,(t,e)=>{if(t)return this.emit("error",t);this[g](e)})}[g](t){this.linkpath=l(t);this[b]();this.end()}[y](t){this.type="Link";this.linkpath=l(h.relative(this.cwd,t));this.stat.size=0;this[b]();this.end()}[d](){if(this.stat.nlink>1){const t=this.stat.dev+":"+this.stat.ino;if(this.linkCache.has(t)){const e=this.linkCache.get(t);if(e.indexOf(this.cwd)===0)return this[y](e)}this.linkCache.set(t,this.absolute)}this[b]();if(this.stat.size===0)return this.end();this[R]()}[R](){o.open(this.absolute,"r",(t,e)=>{if(t)return this.emit("error",t);this[O](e)})}[O](t){this.fd=t;if(this[A])return this[T]();this.blockLen=512*Math.ceil(this.stat.size/512);this.blockRemain=this.blockLen;const e=Math.min(this.blockLen,this.maxReadSize);this.buf=Buffer.allocUnsafe(e);this.offset=0;this.pos=0;this.remain=this.stat.size;this.length=this.buf.length;this[w]()}[w](){const{fd:t,buf:e,offset:s,length:i,pos:n}=this;o.read(t,e,s,i,n,(t,e)=>{if(t){return this[T](()=>this.emit("error",t))}this[_](e)})}[T](t){o.close(this.fd,t)}[_](t){if(t<=0&&this.remain>0){const t=new Error("encountered unexpected EOF");t.path=this.absolute;t.syscall="read";t.code="EOF";return this[T](()=>this.emit("error",t))}if(t>this.remain){const t=new Error("did not encounter expected EOF");t.path=this.absolute;t.syscall="read";t.code="EOF";return this[T](()=>this.emit("error",t))}if(t===this.remain){for(let e=t;e<this.length&&t<this.blockRemain;e++){this.buf[e+this.offset]=0;t++;this.remain++}}const e=this.offset===0&&t===this.buf.length?this.buf:this.buf.slice(this.offset,this.offset+t);const s=this.write(e);if(!s)this[v](()=>this[L]());else this[L]()}[v](t){this.once("drain",t)}write(t){if(this.blockRemain<t.length){const t=new Error("writing more data than expected");t.path=this.absolute;return this.emit("error",t)}this.remain-=t.length;this.blockRemain-=t.length;this.pos+=t.length;this.offset+=t.length;return super.write(t)}[L](){if(!this.remain){if(this.blockRemain)super.write(Buffer.alloc(this.blockRemain));return this[T](t=>t?this.emit("error",t):this.end())}if(this.offset>=this.length){this.buf=Buffer.allocUnsafe(Math.min(this.blockRemain,this.buf.length));this.offset=0}this.length=this.buf.length-this.offset;this[w]()}});class WriteEntrySync extends B{[E](){this[S](o.lstatSync(this.absolute))}[m](){this[g](o.readlinkSync(this.absolute))}[R](){this[O](o.openSync(this.absolute,"r"))}[w](){let t=true;try{const{fd:e,buf:s,offset:i,length:n,pos:r}=this;const h=o.readSync(e,s,i,n,r);this[_](h);t=false}finally{if(t){try{this[T](()=>{})}catch(t){}}}}[v](t){t()}[T](t){o.closeSync(this.fd);t()}}const M=I(class WriteEntryTar extends i{constructor(t,e){e=e||{};super(e);this.preservePaths=!!e.preservePaths;this.portable=!!e.portable;this.strict=!!e.strict;this.noPax=!!e.noPax;this.noMtime=!!e.noMtime;this.readEntry=t;this.type=t.type;if(this.type==="Directory"&&this.portable)this.noMtime=true;this.prefix=e.prefix||null;this.path=l(t.path);this.mode=this[k](t.mode);this.uid=this.portable?null:t.uid;this.gid=this.portable?null:t.gid;this.uname=this.portable?null:t.uname;this.gname=this.portable?null:t.gname;this.size=t.size;this.mtime=this.noMtime?null:e.mtime||t.mtime;this.atime=this.portable?null:t.atime;this.ctime=this.portable?null:t.ctime;this.linkpath=l(t.linkpath);if(typeof e.onwarn==="function")this.on("warn",e.onwarn);let s=false;if(!this.preservePaths){const[t,e]=N(this.path);if(t){this.path=e;s=t}}this.remain=t.size;this.blockRemain=t.startBlockSize;this.header=new r({path:this[x](this.path),linkpath:this.type==="Link"?this[x](this.linkpath):this.linkpath,mode:this.mode,uid:this.portable?null:this.uid,gid:this.portable?null:this.gid,size:this.size,mtime:this.noMtime?null:this.mtime,type:this.type,uname:this.portable?null:this.uname,atime:this.portable?null:this.atime,ctime:this.portable?null:this.ctime});if(s){this.warn("TAR_ENTRY_INFO",`stripping ${s} from absolute path`,{entry:this,path:s+this.path})}if(this.header.encode()&&!this.noPax){super.write(new n({atime:this.portable?null:this.atime,ctime:this.portable?null:this.ctime,gid:this.portable?null:this.gid,mtime:this.noMtime?null:this.mtime,path:this[x](this.path),linkpath:this.type==="Link"?this[x](this.linkpath):this.linkpath,size:this.size,uid:this.portable?null:this.uid,uname:this.portable?null:this.uname,dev:this.portable?null:this.readEntry.dev,ino:this.portable?null:this.readEntry.ino,nlink:this.portable?null:this.readEntry.nlink}).encode())}super.write(this.header.block);t.pipe(this)}[x](t){return a(t,this.prefix)}[k](t){return C(t,this.type==="Directory",this.portable)}write(t){const e=t.length;if(e>this.blockRemain)throw new Error("writing more to entry than is appropriate");this.blockRemain-=e;return super.write(t)}end(){if(this.blockRemain)super.write(Buffer.alloc(this.blockRemain));return super.end()}});B.Sync=WriteEntrySync;B.Tar=M;const P=t=>t.isFile()?"File":t.isDirectory()?"Directory":t.isSymbolicLink()?"SymbolicLink":"Unsupported";t.exports=B},304:function(t){t.exports=require("string_decoder")},336:function(t,e,s){const i=s(747);const n=process.env.__TESTING_MKDIRP_NODE_VERSION__||process.version;const r=n.replace(/^v/,"").split(".");const o=+r[0]>10||+r[0]===10&&+r[1]>=12;const h=!o?()=>false:t=>t.mkdir===i.mkdir;const l=!o?()=>false:t=>t.mkdirSync===i.mkdirSync;t.exports={useNative:h,useNativeSync:l}},357:function(t){t.exports=require("assert")},381:function(t,e,s){"use strict";const i=s(891);const n=s(203);const r=s(747);const o=s(827);const h=s(622);const l=s(893);t.exports=((t,e,s)=>{if(typeof t==="function")s=t,e=null,t={};else if(Array.isArray(t))e=t,t={};if(typeof e==="function")s=e,e=null;if(!e)e=[];else e=Array.from(e);const n=i(t);if(n.sync&&typeof s==="function")throw new TypeError("callback not supported for sync tar functions");if(!n.file&&typeof s==="function")throw new TypeError("callback only supported with file option");if(e.length)a(n,e);if(!n.noResume)c(n);return n.file&&n.sync?u(n):n.file?f(n,s):d(n)});const c=t=>{const e=t.onentry;t.onentry=e?t=>{e(t);t.resume()}:t=>t.resume()};const a=(t,e)=>{const s=new Map(e.map(t=>[l(t),true]));const i=t.filter;const n=(t,e)=>{const i=e||h.parse(t).root||".";const r=t===i?false:s.has(t)?s.get(t):n(h.dirname(t),i);s.set(t,r);return r};t.filter=i?(t,e)=>i(t,e)&&n(l(t)):t=>n(l(t))};const u=t=>{const e=d(t);const s=t.file;let i=true;let n;try{const o=r.statSync(s);const h=t.maxReadSize||16*1024*1024;if(o.size<h)e.end(r.readFileSync(s));else{let t=0;const i=Buffer.allocUnsafe(h);n=r.openSync(s,"r");while(t<o.size){const s=r.readSync(n,i,0,h,t);t+=s;e.write(i.slice(0,s))}e.end()}i=false}finally{if(i&&n){try{r.closeSync(n)}catch(t){}}}};const f=(t,e)=>{const s=new n(t);const i=t.maxReadSize||16*1024*1024;const h=t.file;const l=new Promise((t,e)=>{s.on("error",e);s.on("end",t);r.stat(h,(t,n)=>{if(t)e(t);else{const t=new o.ReadStream(h,{readSize:i,size:n.size});t.on("error",e);t.pipe(s)}})});return e?l.then(e,e):l};const d=t=>new n(t)},396:function(t){"use strict";t.exports=function(t){t.prototype[Symbol.iterator]=function*(){for(let t=this.head;t;t=t.next){yield t.value}}}},413:function(t){t.exports=require("stream")},417:function(t){t.exports=require("crypto")},431:function(t,e,s){"use strict";Object.defineProperty(e,"__esModule",{value:true});const i=s(87);function issueCommand(t,e,s){const n=new Command(t,e,s);process.stdout.write(n.toString()+i.EOL)}e.issueCommand=issueCommand;function issue(t,e=""){issueCommand(t,{},e)}e.issue=issue;const n="##[";class Command{constructor(t,e,s){if(!t){t="missing.command"}this.command=t;this.properties=e;this.message=s}toString(){let t=n+this.command;if(this.properties&&Object.keys(this.properties).length>0){t+=" ";for(const e in this.properties){if(this.properties.hasOwnProperty(e)){const s=this.properties[e];if(s){t+=`${e}=${escape(`${s||""}`)};`}}}}t+="]";const e=`${this.message||""}`;t+=escapeData(e);return t}}function escapeData(t){return t.replace(/\r/g,"%0D").replace(/\n/g,"%0A")}function escape(t){return t.replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/]/g,"%5D").replace(/;/g,"%3B")}},470:function(t,e,s){"use strict";var i=this&&this.__awaiter||function(t,e,s,i){function adopt(t){return t instanceof s?t:new s(function(e){e(t)})}return new(s||(s=Promise))(function(s,n){function fulfilled(t){try{step(i.next(t))}catch(t){n(t)}}function rejected(t){try{step(i["throw"](t))}catch(t){n(t)}}function step(t){t.done?s(t.value):adopt(t.value).then(fulfilled,rejected)}step((i=i.apply(t,e||[])).next())})};Object.defineProperty(e,"__esModule",{value:true});const n=s(431);const r=s(622);var o;(function(t){t[t["Success"]=0]="Success";t[t["Failure"]=1]="Failure"})(o=e.ExitCode||(e.ExitCode={}));function exportVariable(t,e){process.env[t]=e;n.issueCommand("set-env",{name:t},e)}e.exportVariable=exportVariable;function exportSecret(t,e){exportVariable(t,e);n.issueCommand("set-secret",{},e);throw new Error("Not implemented.")}e.exportSecret=exportSecret;function addPath(t){n.issueCommand("add-path",{},t);process.env["PATH"]=`${t}${r.delimiter}${process.env["PATH"]}`}e.addPath=addPath;function getInput(t,e){const s=process.env[`INPUT_${t.replace(" ","_").toUpperCase()}`]||"";if(e&&e.required&&!s){throw new Error(`Input required and not supplied: ${t}`)}return s.trim()}e.getInput=getInput;function setOutput(t,e){n.issueCommand("set-output",{name:t},e)}e.setOutput=setOutput;function setFailed(t){process.exitCode=o.Failure;error(t)}e.setFailed=setFailed;function debug(t){n.issueCommand("debug",{},t)}e.debug=debug;function error(t){n.issue("error",t)}e.error=error;function warning(t){n.issue("warning",t)}e.warning=warning;function startGroup(t){n.issue("group",t)}e.startGroup=startGroup;function endGroup(){n.issue("endgroup")}e.endGroup=endGroup;function group(t,e){return i(this,void 0,void 0,function*(){startGroup(t);let s;try{s=yield e()}finally{endGroup()}return s})}e.group=group},471:function(t){const e=Object.create(null);const{hasOwnProperty:s}=Object.prototype;t.exports=(t=>{if(!s.call(e,t))e[t]=t.normalize("NFKD");return e[t]})},478:function(t){"use strict";const e=["|","<",">","?",":"];const s=e.map(t=>String.fromCharCode(61440+t.charCodeAt(0)));const i=new Map(e.map((t,e)=>[t,s[e]]));const n=new Map(s.map((t,s)=>[t,e[s]]));t.exports={encode:t=>e.reduce((t,e)=>t.split(e).join(i.get(e)),t),decode:t=>s.reduce((t,e)=>t.split(e).join(n.get(e)),t)}},554:function(t,e){"use strict";e.name=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]);e.code=new Map(Array.from(e.name).map(t=>[t[1],t[0]]))},561:function(t,e,s){const{dirname:i}=s(622);const{findMade:n,findMadeSync:r}=s(92);const{mkdirpManual:o,mkdirpManualSync:h}=s(806);const l=(t,e)=>{e.recursive=true;const s=i(t);if(s===t)return e.mkdirAsync(t,e);return n(e,t).then(s=>e.mkdirAsync(t,e).then(()=>s).catch(s=>{if(s.code==="ENOENT")return o(t,e);else throw s}))};const c=(t,e)=>{e.recursive=true;const s=i(t);if(s===t)return e.mkdirSync(t,e);const n=r(e,t);try{e.mkdirSync(t,e);return n}catch(s){if(s.code==="ENOENT")return h(t,e);else throw s}};t.exports={mkdirpNative:l,mkdirpNativeSync:c}},577:function(t,e,s){"use strict";const i=s(626);const n=s(747);const r=s(622);const o=s(941);const h=s(674);class SymlinkError extends Error{constructor(t,e){super("Cannot extract through symbolic link");this.path=e;this.symlink=t}get name(){return"SylinkError"}}class CwdError extends Error{constructor(t,e){super(e+": Cannot cd into '"+t+"'");this.path=t;this.code=e}get name(){return"CwdError"}}const l=(t,e)=>t.get(h(e));const c=(t,e,s)=>t.set(h(e),s);const a=(t,e)=>{n.stat(t,(s,i)=>{if(s||!i.isDirectory())s=new CwdError(t,s&&s.code||"ENOTDIR");e(s)})};t.exports=((t,e,s)=>{t=h(t);const f=e.umask;const d=e.mode|448;const p=(d&f)!==0;const m=e.uid;const y=e.gid;const b=typeof m==="number"&&typeof y==="number"&&(m!==e.processUid||y!==e.processGid);const w=e.preserve;const E=e.unlink;const S=e.cache;const _=h(e.cwd);const g=(e,i)=>{if(e)s(e);else{c(S,t,true);if(i&&b)o(i,m,y,t=>g(t));else if(p)n.chmod(t,d,s);else s()}};if(S&&l(S,t)===true)return g();if(t===_)return a(t,g);if(w)return i(t,{mode:d}).then(t=>g(null,t),g);const R=h(r.relative(_,t));const O=R.split("/");u(_,O,d,S,E,_,null,g)});const u=(t,e,s,i,o,c,a,d)=>{if(!e.length)return d(null,a);const p=e.shift();const m=h(r.resolve(t+"/"+p));if(l(i,m))return u(m,e,s,i,o,c,a,d);n.mkdir(m,s,f(m,e,s,i,o,c,a,d))};const f=(t,e,s,i,r,o,l,c)=>a=>{if(a){n.lstat(t,(d,p)=>{if(d){d.path=d.path&&h(d.path);c(d)}else if(p.isDirectory())u(t,e,s,i,r,o,l,c);else if(r){n.unlink(t,h=>{if(h)return c(h);n.mkdir(t,s,f(t,e,s,i,r,o,l,c))})}else if(p.isSymbolicLink())return c(new SymlinkError(t,t+"/"+e.join("/")));else c(a)})}else{l=l||t;u(t,e,s,i,r,o,l,c)}};const d=t=>{let e=false;let s="ENOTDIR";try{e=n.statSync(t).isDirectory()}catch(t){s=t.code}finally{if(!e)throw new CwdError(t,s)}};t.exports.sync=((t,e)=>{t=h(t);const s=e.umask;const a=e.mode|448;const u=(a&s)!==0;const f=e.uid;const p=e.gid;const m=typeof f==="number"&&typeof p==="number"&&(f!==e.processUid||p!==e.processGid);const y=e.preserve;const b=e.unlink;const w=e.cache;const E=h(e.cwd);const S=e=>{c(w,t,true);if(e&&m)o.sync(e,f,p);if(u)n.chmodSync(t,a)};if(w&&l(w,t)===true)return S();if(t===E){d(E);return S()}if(y)return S(i.sync(t,a));const _=h(r.relative(E,t));const g=_.split("/");let R=null;for(let t=g.shift(),e=E;t&&(e+="/"+t);t=g.shift()){e=h(r.resolve(e));if(l(w,e))continue;try{n.mkdirSync(e,a);R=R||e;c(w,e,true)}catch(t){const s=n.lstatSync(e);if(s.isDirectory()){c(w,e,true);continue}else if(b){n.unlinkSync(e);n.mkdirSync(e,a);R=R||e;c(w,e,true);continue}else if(s.isSymbolicLink())return new SymlinkError(e,e+"/"+g.join("/"))}}return S(R)})},582:function(t,e,s){"use strict";const i=s(232);const n=s(622);class Pax{constructor(t,e){this.atime=t.atime||null;this.charset=t.charset||null;this.comment=t.comment||null;this.ctime=t.ctime||null;this.gid=t.gid||null;this.gname=t.gname||null;this.linkpath=t.linkpath||null;this.mtime=t.mtime||null;this.path=t.path||null;this.size=t.size||null;this.uid=t.uid||null;this.uname=t.uname||null;this.dev=t.dev||null;this.ino=t.ino||null;this.nlink=t.nlink||null;this.global=e||false}encode(){const t=this.encodeBody();if(t==="")return null;const e=Buffer.byteLength(t);const s=512*Math.ceil(1+e/512);const r=Buffer.allocUnsafe(s);for(let t=0;t<512;t++)r[t]=0;new i({path:("PaxHeader/"+n.basename(this.path)).slice(0,99),mode:this.mode||420,uid:this.uid||null,gid:this.gid||null,size:e,mtime:this.mtime||null,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime||null,ctime:this.ctime||null}).encode(r);r.write(t,512,e,"utf8");for(let t=e+512;t<r.length;t++)r[t]=0;return r}encodeBody(){return this.encodeField("path")+this.encodeField("ctime")+this.encodeField("atime")+this.encodeField("dev")+this.encodeField("ino")+this.encodeField("nlink")+this.encodeField("charset")+this.encodeField("comment")+this.encodeField("gid")+this.encodeField("gname")+this.encodeField("linkpath")+this.encodeField("mtime")+this.encodeField("size")+this.encodeField("uid")+this.encodeField("uname")}encodeField(t){if(this[t]===null||this[t]===undefined)return"";const e=this[t]instanceof Date?this[t].getTime()/1e3:this[t];const s=" "+(t==="dev"||t==="ino"||t==="nlink"?"SCHILY.":"")+t+"="+e+"\n";const i=Buffer.byteLength(s);let n=Math.floor(Math.log(i)/Math.log(10))+1;if(i+n>=Math.pow(10,n))n+=1;const r=n+i;return r+s}}Pax.parse=((t,e,s)=>new Pax(r(o(t),e),s));const r=(t,e)=>e?Object.keys(t).reduce((e,s)=>(e[s]=t[s],e),e):t;const o=t=>t.replace(/\n$/,"").split("\n").reduce(h,Object.create(null));const h=(t,e)=>{const s=parseInt(e,10);if(s!==Buffer.byteLength(e)+1)return t;e=e.substr((s+" ").length);const i=e.split("=");const n=i.shift().replace(/^SCHILY\.(dev|ino|nlink)/,"$1");if(!n)return t;const r=i.join("=");t[n]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(n)?new Date(r*1e3):/^[0-9]+$/.test(r)?+r:r;return t};t.exports=Pax},612:function(t,e,s){"use strict";t.exports=Yallist;Yallist.Node=Node;Yallist.create=Yallist;function Yallist(t){var e=this;if(!(e instanceof Yallist)){e=new Yallist}e.tail=null;e.head=null;e.length=0;if(t&&typeof t.forEach==="function"){t.forEach(function(t){e.push(t)})}else if(arguments.length>0){for(var s=0,i=arguments.length;s<i;s++){e.push(arguments[s])}}return e}Yallist.prototype.removeNode=function(t){if(t.list!==this){throw new Error("removing node which does not belong to this list")}var e=t.next;var s=t.prev;if(e){e.prev=s}if(s){s.next=e}if(t===this.head){this.head=e}if(t===this.tail){this.tail=s}t.list.length--;t.next=null;t.prev=null;t.list=null;return e};Yallist.prototype.unshiftNode=function(t){if(t===this.head){return}if(t.list){t.list.removeNode(t)}var e=this.head;t.list=this;t.next=e;if(e){e.prev=t}this.head=t;if(!this.tail){this.tail=t}this.length++};Yallist.prototype.pushNode=function(t){if(t===this.tail){return}if(t.list){t.list.removeNode(t)}var e=this.tail;t.list=this;t.prev=e;if(e){e.next=t}this.tail=t;if(!this.head){this.head=t}this.length++};Yallist.prototype.push=function(){for(var t=0,e=arguments.length;t<e;t++){push(this,arguments[t])}return this.length};Yallist.prototype.unshift=function(){for(var t=0,e=arguments.length;t<e;t++){unshift(this,arguments[t])}return this.length};Yallist.prototype.pop=function(){if(!this.tail){return undefined}var t=this.tail.value;this.tail=this.tail.prev;if(this.tail){this.tail.next=null}else{this.head=null}this.length--;return t};Yallist.prototype.shift=function(){if(!this.head){return undefined}var t=this.head.value;this.head=this.head.next;if(this.head){this.head.prev=null}else{this.tail=null}this.length--;return t};Yallist.prototype.forEach=function(t,e){e=e||this;for(var s=this.head,i=0;s!==null;i++){t.call(e,s.value,i,this);s=s.next}};Yallist.prototype.forEachReverse=function(t,e){e=e||this;for(var s=this.tail,i=this.length-1;s!==null;i--){t.call(e,s.value,i,this);s=s.prev}};Yallist.prototype.get=function(t){for(var e=0,s=this.head;s!==null&&e<t;e++){s=s.next}if(e===t&&s!==null){return s.value}};Yallist.prototype.getReverse=function(t){for(var e=0,s=this.tail;s!==null&&e<t;e++){s=s.prev}if(e===t&&s!==null){return s.value}};Yallist.prototype.map=function(t,e){e=e||this;var s=new Yallist;for(var i=this.head;i!==null;){s.push(t.call(e,i.value,this));i=i.next}return s};Yallist.prototype.mapReverse=function(t,e){e=e||this;var s=new Yallist;for(var i=this.tail;i!==null;){s.push(t.call(e,i.value,this));i=i.prev}return s};Yallist.prototype.reduce=function(t,e){var s;var i=this.head;if(arguments.length>1){s=e}else if(this.head){i=this.head.next;s=this.head.value}else{throw new TypeError("Reduce of empty list with no initial value")}for(var n=0;i!==null;n++){s=t(s,i.value,n);i=i.next}return s};Yallist.prototype.reduceReverse=function(t,e){var s;var i=this.tail;if(arguments.length>1){s=e}else if(this.tail){i=this.tail.prev;s=this.tail.value}else{throw new TypeError("Reduce of empty list with no initial value")}for(var n=this.length-1;i!==null;n--){s=t(s,i.value,n);i=i.prev}return s};Yallist.prototype.toArray=function(){var t=new Array(this.length);for(var e=0,s=this.head;s!==null;e++){t[e]=s.value;s=s.next}return t};Yallist.prototype.toArrayReverse=function(){var t=new Array(this.length);for(var e=0,s=this.tail;s!==null;e++){t[e]=s.value;s=s.prev}return t};Yallist.prototype.slice=function(t,e){e=e||this.length;if(e<0){e+=this.length}t=t||0;if(t<0){t+=this.length}var s=new Yallist;if(e<t||e<0){return s}if(t<0){t=0}if(e>this.length){e=this.length}for(var i=0,n=this.head;n!==null&&i<t;i++){n=n.next}for(;n!==null&&i<e;i++,n=n.next){s.push(n.value)}return s};Yallist.prototype.sliceReverse=function(t,e){e=e||this.length;if(e<0){e+=this.length}t=t||0;if(t<0){t+=this.length}var s=new Yallist;if(e<t||e<0){return s}if(t<0){t=0}if(e>this.length){e=this.length}for(var i=this.length,n=this.tail;n!==null&&i>e;i--){n=n.prev}for(;n!==null&&i>t;i--,n=n.prev){s.push(n.value)}return s};Yallist.prototype.splice=function(t,e,...s){if(t>this.length){t=this.length-1}if(t<0){t=this.length+t}for(var i=0,n=this.head;n!==null&&i<t;i++){n=n.next}var r=[];for(var i=0;n&&i<e;i++){r.push(n.value);n=this.removeNode(n)}if(n===null){n=this.tail}if(n!==this.head&&n!==this.tail){n=n.prev}for(var i=0;i<s.length;i++){n=insert(this,n,s[i])}return r};Yallist.prototype.reverse=function(){var t=this.head;var e=this.tail;for(var s=t;s!==null;s=s.prev){var i=s.prev;s.prev=s.next;s.next=i}this.head=e;this.tail=t;return this};function insert(t,e,s){var i=e===t.head?new Node(s,null,e,t):new Node(s,e,e.next,t);if(i.next===null){t.tail=i}if(i.prev===null){t.head=i}t.length++;return i}function push(t,e){t.tail=new Node(e,t.tail,null,t);if(!t.head){t.head=t.tail}t.length++}function unshift(t,e){t.head=new Node(e,null,t.head,t);if(!t.tail){t.tail=t.head}t.length++}function Node(t,e,s,i){if(!(this instanceof Node)){return new Node(t,e,s,i)}this.list=i;this.value=t;if(e){e.next=this;this.prev=e}else{this.prev=null}if(s){s.prev=this;this.next=s}else{this.next=null}}try{s(396)(Yallist)}catch(t){}},614:function(t){t.exports=require("events")},622:function(t){t.exports=require("path")},626:function(t,e,s){const i=s(795);const n=s(870);const{mkdirpNative:r,mkdirpNativeSync:o}=s(561);const{mkdirpManual:h,mkdirpManualSync:l}=s(806);const{useNative:c,useNativeSync:a}=s(336);const u=(t,e)=>{t=n(t);e=i(e);return c(e)?r(t,e):h(t,e)};const f=(t,e)=>{t=n(t);e=i(e);return a(e)?o(t,e):l(t,e)};u.sync=f;u.native=((t,e)=>r(n(t),i(e)));u.manual=((t,e)=>h(n(t),i(e)));u.nativeSync=((t,e)=>o(n(t),i(e)));u.manualSync=((t,e)=>l(n(t),i(e)));t.exports=u},630:function(t,e,s){"use strict";const i=s(891);const n=s(726);const r=s(747);const o=s(827);const h=s(381);const l=s(622);const c=s(232);t.exports=((t,e,s)=>{const n=i(t);if(!n.file)throw new TypeError("file is required");if(n.gzip)throw new TypeError("cannot append to compressed archives");if(!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");e=Array.from(e);return n.sync?a(n,e):f(n,e,s)});const a=(t,e)=>{const s=new n.Sync(t);let i=true;let o;let h;try{try{o=r.openSync(t.file,"r+")}catch(e){if(e.code==="ENOENT")o=r.openSync(t.file,"w+");else throw e}const n=r.fstatSync(o);const l=Buffer.alloc(512);t:for(h=0;h<n.size;h+=512){for(let t=0,e=0;t<512;t+=e){e=r.readSync(o,l,t,l.length-t,h+t);if(h===0&&l[0]===31&&l[1]===139)throw new Error("cannot append to compressed archives");if(!e)break t}const e=new c(l);if(!e.cksumValid)break;const s=512*Math.ceil(e.size/512);if(h+s+512>n.size)break;h+=s;if(t.mtimeCache)t.mtimeCache.set(e.path,e.mtime)}i=false;u(t,s,h,o,e)}finally{if(i){try{r.closeSync(o)}catch(t){}}}};const u=(t,e,s,i,n)=>{const r=new o.WriteStreamSync(t.file,{fd:i,start:s});e.pipe(r);d(e,n)};const f=(t,e,s)=>{e=Array.from(e);const i=new n(t);const h=(e,s,i)=>{const n=(t,s)=>{if(t)r.close(e,e=>i(t));else i(null,s)};let o=0;if(s===0)return n(null,0);let h=0;const l=Buffer.alloc(512);const a=(i,u)=>{if(i)return n(i);h+=u;if(h<512&&u){return r.read(e,l,h,l.length-h,o+h,a)}if(o===0&&l[0]===31&&l[1]===139)return n(new Error("cannot append to compressed archives"));if(h<512)return n(null,o);const f=new c(l);if(!f.cksumValid)return n(null,o);const d=512*Math.ceil(f.size/512);if(o+d+512>s)return n(null,o);o+=d+512;if(o>=s)return n(null,o);if(t.mtimeCache)t.mtimeCache.set(f.path,f.mtime);h=0;r.read(e,l,0,512,o,a)};r.read(e,l,0,512,o,a)};const l=new Promise((s,n)=>{i.on("error",n);let l="r+";const c=(a,u)=>{if(a&&a.code==="ENOENT"&&l==="r+"){l="w+";return r.open(t.file,l,c)}if(a)return n(a);r.fstat(u,(l,c)=>{if(l)return r.close(u,()=>n(l));h(u,c.size,(r,h)=>{if(r)return n(r);const l=new o.WriteStream(t.file,{fd:u,start:h});i.pipe(l);l.on("error",n);l.on("close",s);p(i,e)})})};r.open(t.file,l,c)});return s?l.then(s,s):l};const d=(t,e)=>{e.forEach(e=>{if(e.charAt(0)==="@"){h({file:l.resolve(t.cwd,e.substr(1)),sync:true,noResume:true,onentry:e=>t.add(e)})}else t.add(e)});t.end()};const p=(t,e)=>{while(e.length){const s=e.shift();if(s.charAt(0)==="@"){return h({file:l.resolve(t.cwd,s.substr(1)),noResume:true,onentry:e=>t.add(e)}).then(s=>p(t,e))}else t.add(s)}t.end()}},656:function(t,e,s){"use strict";const i=s(891);const n=s(63);const r=s(747);const o=s(827);const h=s(622);const l=s(893);t.exports=((t,e,s)=>{if(typeof t==="function")s=t,e=null,t={};else if(Array.isArray(t))e=t,t={};if(typeof e==="function")s=e,e=null;if(!e)e=[];else e=Array.from(e);const n=i(t);if(n.sync&&typeof s==="function")throw new TypeError("callback not supported for sync tar functions");if(!n.file&&typeof s==="function")throw new TypeError("callback only supported with file option");if(e.length)c(n,e);return n.file&&n.sync?a(n):n.file?u(n,s):n.sync?f(n):d(n)});const c=(t,e)=>{const s=new Map(e.map(t=>[l(t),true]));const i=t.filter;const n=(t,e)=>{const i=e||h.parse(t).root||".";const r=t===i?false:s.has(t)?s.get(t):n(h.dirname(t),i);s.set(t,r);return r};t.filter=i?(t,e)=>i(t,e)&&n(l(t)):t=>n(l(t))};const a=t=>{const e=new n.Sync(t);const s=t.file;const i=r.statSync(s);const h=t.maxReadSize||16*1024*1024;const l=new o.ReadStreamSync(s,{readSize:h,size:i.size});l.pipe(e)};const u=(t,e)=>{const s=new n(t);const i=t.maxReadSize||16*1024*1024;const h=t.file;const l=new Promise((t,e)=>{s.on("error",e);s.on("close",t);r.stat(h,(t,n)=>{if(t)e(t);else{const t=new o.ReadStream(h,{readSize:i,size:n.size});t.on("error",e);t.pipe(s)}})});return e?l.then(e,e):l};const f=t=>new n.Sync(t);const d=t=>new n(t)},657:function(t,e,s){const{isAbsolute:i,parse:n}=s(622).win32;t.exports=(t=>{let e="";let s=n(t);while(i(t)||s.root){const i=t.charAt(0)==="/"&&t.slice(0,4)!=="//?/"?"/":s.root;t=t.substr(i.length);e+=i;s=n(t)}return[e,t]})},662:function(t,e,s){"use strict";const i=s(720);const n=s(674);const r=Symbol("slurp");t.exports=class ReadEntry extends i{constructor(t,e,s){super();this.pause();this.extended=e;this.globalExtended=s;this.header=t;this.startBlockSize=512*Math.ceil(t.size/512);this.blockRemain=this.startBlockSize;this.remain=t.size;this.type=t.type;this.meta=false;this.ignore=false;switch(this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=true;break;default:this.ignore=true}this.path=n(t.path);this.mode=t.mode;if(this.mode)this.mode=this.mode&4095;this.uid=t.uid;this.gid=t.gid;this.uname=t.uname;this.gname=t.gname;this.size=t.size;this.mtime=t.mtime;this.atime=t.atime;this.ctime=t.ctime;this.linkpath=n(t.linkpath);this.uname=t.uname;this.gname=t.gname;if(e)this[r](e);if(s)this[r](s,true)}write(t){const e=t.length;if(e>this.blockRemain)throw new Error("writing more to entry than is appropriate");const s=this.remain;const i=this.blockRemain;this.remain=Math.max(0,s-e);this.blockRemain=Math.max(0,i-e);if(this.ignore)return true;if(s>=e)return super.write(t);return super.write(t.slice(0,s))}[r](t,e){for(const s in t){if(t[s]!==null&&t[s]!==undefined&&!(e&&s==="path"))this[s]=s==="path"||s==="linkpath"?n(t[s]):t[s]}}}},669:function(t){t.exports=require("util")},674:function(t){const e=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform;t.exports=e!=="win32"?t=>t:t=>t&&t.replace(/\\/g,"/")},676:function(t,e,s){const i=s(470);const n=s(885);const r=s(747);try{const t=i.getInput("cwd");const e=i.getInput("command",{required:true});const s=i.getInput("files",{required:true}).split("\n").filter(t=>t!=="");const o=i.getInput("outPath");const h=Array.isArray(s)?s:[s];switch(e){case"c":{if(!o)throw new Error("Please specify an out path");n.c({cwd:t,gzip:true,sync:true},h).pipe(r.createWriteStream(o));break}case"x":{if(s.length!==1)throw new Error("Only one file can be extracted");n.x({C:t,sync:true,file:s[0]});break}default:throw new Error(`Unsupported command: ${e}`)}i.setOutput("done",true)}catch(t){i.setFailed(t.message)}},720:function(t,e,s){"use strict";const i=typeof process==="object"&&process?process:{stdout:null,stderr:null};const n=s(614);const r=s(413);const o=s(612);const h=s(304).StringDecoder;const l=Symbol("EOF");const c=Symbol("maybeEmitEnd");const a=Symbol("emittedEnd");const u=Symbol("emittingEnd");const f=Symbol("emittedError");const d=Symbol("closed");const p=Symbol("read");const m=Symbol("flush");const y=Symbol("flushChunk");const b=Symbol("encoding");const w=Symbol("decoder");const E=Symbol("flowing");const S=Symbol("paused");const _=Symbol("resume");const g=Symbol("bufferLength");const R=Symbol("bufferPush");const O=Symbol("bufferShift");const T=Symbol("objectMode");const k=Symbol("destroyed");const v=global._MP_NO_ITERATOR_SYMBOLS_!=="1";const L=v&&Symbol.asyncIterator||Symbol("asyncIterator not implemented");const x=v&&Symbol.iterator||Symbol("iterator not implemented");const A=t=>t==="end"||t==="finish"||t==="prefinish";const I=t=>t instanceof ArrayBuffer||typeof t==="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0;const D=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t);t.exports=class Minipass extends r{constructor(t){super();this[E]=false;this[S]=false;this.pipes=new o;this.buffer=new o;this[T]=t&&t.objectMode||false;if(this[T])this[b]=null;else this[b]=t&&t.encoding||null;if(this[b]==="buffer")this[b]=null;this[w]=this[b]?new h(this[b]):null;this[l]=false;this[a]=false;this[u]=false;this[d]=false;this[f]=null;this.writable=true;this.readable=true;this[g]=0;this[k]=false}get bufferLength(){return this[g]}get encoding(){return this[b]}set encoding(t){if(this[T])throw new Error("cannot set encoding in objectMode");if(this[b]&&t!==this[b]&&(this[w]&&this[w].lastNeed||this[g]))throw new Error("cannot change encoding");if(this[b]!==t){this[w]=t?new h(t):null;if(this.buffer.length)this.buffer=this.buffer.map(t=>this[w].write(t))}this[b]=t}setEncoding(t){this.encoding=t}get objectMode(){return this[T]}set objectMode(t){this[T]=this[T]||!!t}write(t,e,s){if(this[l])throw new Error("write after end");if(this[k]){this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"}));return true}if(typeof e==="function")s=e,e="utf8";if(!e)e="utf8";if(!this[T]&&!Buffer.isBuffer(t)){if(D(t))t=Buffer.from(t.buffer,t.byteOffset,t.byteLength);else if(I(t))t=Buffer.from(t);else if(typeof t!=="string")this.objectMode=true}if(!this.objectMode&&!t.length){if(this[g]!==0)this.emit("readable");if(s)s();return this.flowing}if(typeof t==="string"&&!this[T]&&!(e===this[b]&&!this[w].lastNeed)){t=Buffer.from(t,e)}if(Buffer.isBuffer(t)&&this[b])t=this[w].write(t);if(this.flowing){if(this[g]!==0)this[m](true);this.flowing?this.emit("data",t):this[R](t)}else this[R](t);if(this[g]!==0)this.emit("readable");if(s)s();return this.flowing}read(t){if(this[k])return null;try{if(this[g]===0||t===0||t>this[g])return null;if(this[T])t=null;if(this.buffer.length>1&&!this[T]){if(this.encoding)this.buffer=new o([Array.from(this.buffer).join("")]);else this.buffer=new o([Buffer.concat(Array.from(this.buffer),this[g])])}return this[p](t||null,this.buffer.head.value)}finally{this[c]()}}[p](t,e){if(t===e.length||t===null)this[O]();else{this.buffer.head.value=e.slice(t);e=e.slice(0,t);this[g]-=t}this.emit("data",e);if(!this.buffer.length&&!this[l])this.emit("drain");return e}end(t,e,s){if(typeof t==="function")s=t,t=null;if(typeof e==="function")s=e,e="utf8";if(t)this.write(t,e);if(s)this.once("end",s);this[l]=true;this.writable=false;if(this.flowing||!this[S])this[c]();return this}[_](){if(this[k])return;this[S]=false;this[E]=true;this.emit("resume");if(this.buffer.length)this[m]();else if(this[l])this[c]();else this.emit("drain")}resume(){return this[_]()}pause(){this[E]=false;this[S]=true}get destroyed(){return this[k]}get flowing(){return this[E]}get paused(){return this[S]}[R](t){if(this[T])this[g]+=1;else this[g]+=t.length;return this.buffer.push(t)}[O](){if(this.buffer.length){if(this[T])this[g]-=1;else this[g]-=this.buffer.head.value.length}return this.buffer.shift()}[m](t){do{}while(this[y](this[O]()));if(!t&&!this.buffer.length&&!this[l])this.emit("drain")}[y](t){return t?(this.emit("data",t),this.flowing):false}pipe(t,e){if(this[k])return;const s=this[a];e=e||{};if(t===i.stdout||t===i.stderr)e.end=false;else e.end=e.end!==false;const n={dest:t,opts:e,ondrain:t=>this[_]()};this.pipes.push(n);t.on("drain",n.ondrain);this[_]();if(s&&n.opts.end)n.dest.end();return t}addListener(t,e){return this.on(t,e)}on(t,e){try{return super.on(t,e)}finally{if(t==="data"&&!this.pipes.length&&!this.flowing)this[_]();else if(A(t)&&this[a]){super.emit(t);this.removeAllListeners(t)}else if(t==="error"&&this[f]){e.call(this,this[f])}}}get emittedEnd(){return this[a]}[c](){if(!this[u]&&!this[a]&&!this[k]&&this.buffer.length===0&&this[l]){this[u]=true;this.emit("end");this.emit("prefinish");this.emit("finish");if(this[d])this.emit("close");this[u]=false}}emit(t,e){if(t!=="error"&&t!=="close"&&t!==k&&this[k])return;else if(t==="data"){if(!e)return;if(this.pipes.length)this.pipes.forEach(t=>t.dest.write(e)===false&&this.pause())}else if(t==="end"){if(this[a]===true)return;this[a]=true;this.readable=false;if(this[w]){e=this[w].end();if(e){this.pipes.forEach(t=>t.dest.write(e));super.emit("data",e)}}this.pipes.forEach(t=>{t.dest.removeListener("drain",t.ondrain);if(t.opts.end)t.dest.end()})}else if(t==="close"){this[d]=true;if(!this[a]&&!this[k])return}else if(t==="error"){this[f]=e}const s=new Array(arguments.length);s[0]=t;s[1]=e;if(arguments.length>2){for(let t=2;t<arguments.length;t++){s[t]=arguments[t]}}try{return super.emit.apply(this,s)}finally{if(!A(t))this[c]();else this.removeAllListeners(t)}}collect(){const t=[];if(!this[T])t.dataLength=0;const e=this.promise();this.on("data",e=>{t.push(e);if(!this[T])t.dataLength+=e.length});return e.then(()=>t)}concat(){return this[T]?Promise.reject(new Error("cannot concat in objectMode")):this.collect().then(t=>this[T]?Promise.reject(new Error("cannot concat in objectMode")):this[b]?t.join(""):Buffer.concat(t,t.dataLength))}promise(){return new Promise((t,e)=>{this.on(k,()=>e(new Error("stream destroyed")));this.on("error",t=>e(t));this.on("end",()=>t())})}[L](){const t=()=>{const t=this.read();if(t!==null)return Promise.resolve({done:false,value:t});if(this[l])return Promise.resolve({done:true});let e=null;let s=null;const i=t=>{this.removeListener("data",n);this.removeListener("end",r);s(t)};const n=t=>{this.removeListener("error",i);this.removeListener("end",r);this.pause();e({value:t,done:!!this[l]})};const r=()=>{this.removeListener("error",i);this.removeListener("data",n);e({done:true})};const o=()=>i(new Error("stream destroyed"));return new Promise((t,h)=>{s=h;e=t;this.once(k,o);this.once("error",i);this.once("end",r);this.once("data",n)})};return{next:t}}[x](){const t=()=>{const t=this.read();const e=t===null;return{value:t,done:e}};return{next:t}}destroy(t){if(this[k]){if(t)this.emit("error",t);else this.emit(k);return this}this[k]=true;this.buffer=new o;this[g]=0;if(typeof this.close==="function"&&!this[d])this.close();if(t)this.emit("error",t);else this.emit(k);return this}static isStream(t){return!!t&&(t instanceof Minipass||t instanceof r||t instanceof n&&(typeof t.pipe==="function"||typeof t.write==="function"&&typeof t.end==="function"))}}},726:function(t,e,s){"use strict";class PackJob{constructor(t,e){this.path=t||"./";this.absolute=e;this.entry=null;this.stat=null;this.readdir=null;this.pending=false;this.ignore=false;this.piped=false}}const i=s(720);const n=s(133);const r=s(662);const o=s(303);const h=o.Sync;const l=o.Tar;const c=s(612);const a=Buffer.alloc(1024);const u=Symbol("onStat");const f=Symbol("ended");const d=Symbol("queue");const p=Symbol("current");const m=Symbol("process");const y=Symbol("processing");const b=Symbol("processJob");const w=Symbol("jobs");const E=Symbol("jobDone");const S=Symbol("addFSEntry");const _=Symbol("addTarEntry");const g=Symbol("stat");const R=Symbol("readdir");const O=Symbol("onreaddir");const T=Symbol("pipe");const k=Symbol("entry");const v=Symbol("entryOpt");const L=Symbol("writeEntryClass");const x=Symbol("write");const A=Symbol("ondrain");const I=s(747);const D=s(622);const N=s(796);const C=s(674);const B=N(class Pack extends i{constructor(t){super(t);t=t||Object.create(null);this.opt=t;this.file=t.file||"";this.cwd=t.cwd||process.cwd();this.maxReadSize=t.maxReadSize;this.preservePaths=!!t.preservePaths;this.strict=!!t.strict;this.noPax=!!t.noPax;this.prefix=C(t.prefix||"");this.linkCache=t.linkCache||new Map;this.statCache=t.statCache||new Map;this.readdirCache=t.readdirCache||new Map;this[L]=o;if(typeof t.onwarn==="function")this.on("warn",t.onwarn);this.portable=!!t.portable;this.zip=null;if(t.gzip){if(typeof t.gzip!=="object")t.gzip={};if(this.portable)t.gzip.portable=true;this.zip=new n.Gzip(t.gzip);this.zip.on("data",t=>super.write(t));this.zip.on("end",t=>super.end());this.zip.on("drain",t=>this[A]());this.on("resume",t=>this.zip.resume())}else this.on("drain",this[A]);this.noDirRecurse=!!t.noDirRecurse;this.follow=!!t.follow;this.noMtime=!!t.noMtime;this.mtime=t.mtime||null;this.filter=typeof t.filter==="function"?t.filter:t=>true;this[d]=new c;this[w]=0;this.jobs=+t.jobs||4;this[y]=false;this[f]=false}[x](t){return super.write(t)}add(t){this.write(t);return this}end(t){if(t)this.write(t);this[f]=true;this[m]();return this}write(t){if(this[f])throw new Error("write after end");if(t instanceof r)this[_](t);else this[S](t);return this.flowing}[_](t){const e=C(D.resolve(this.cwd,t.path));if(!this.filter(t.path,t))t.resume();else{const s=new PackJob(t.path,e,false);s.entry=new l(t,this[v](s));s.entry.on("end",t=>this[E](s));this[w]+=1;this[d].push(s)}this[m]()}[S](t){const e=C(D.resolve(this.cwd,t));this[d].push(new PackJob(t,e));this[m]()}[g](t){t.pending=true;this[w]+=1;const e=this.follow?"stat":"lstat";I[e](t.absolute,(e,s)=>{t.pending=false;this[w]-=1;if(e)this.emit("error",e);else this[u](t,s)})}[u](t,e){this.statCache.set(t.absolute,e);t.stat=e;if(!this.filter(t.path,e))t.ignore=true;this[m]()}[R](t){t.pending=true;this[w]+=1;I.readdir(t.absolute,(e,s)=>{t.pending=false;this[w]-=1;if(e)return this.emit("error",e);this[O](t,s)})}[O](t,e){this.readdirCache.set(t.absolute,e);t.readdir=e;this[m]()}[m](){if(this[y])return;this[y]=true;for(let t=this[d].head;t!==null&&this[w]<this.jobs;t=t.next){this[b](t.value);if(t.value.ignore){const e=t.next;this[d].removeNode(t);t.next=e}}this[y]=false;if(this[f]&&!this[d].length&&this[w]===0){if(this.zip)this.zip.end(a);else{super.write(a);super.end()}}}get[p](){return this[d]&&this[d].head&&this[d].head.value}[E](t){this[d].shift();this[w]-=1;this[m]()}[b](t){if(t.pending)return;if(t.entry){if(t===this[p]&&!t.piped)this[T](t);return}if(!t.stat){if(this.statCache.has(t.absolute))this[u](t,this.statCache.get(t.absolute));else this[g](t)}if(!t.stat)return;if(t.ignore)return;if(!this.noDirRecurse&&t.stat.isDirectory()&&!t.readdir){if(this.readdirCache.has(t.absolute))this[O](t,this.readdirCache.get(t.absolute));else this[R](t);if(!t.readdir)return}t.entry=this[k](t);if(!t.entry){t.ignore=true;return}if(t===this[p]&&!t.piped)this[T](t)}[v](t){return{onwarn:(t,e,s)=>this.warn(t,e,s),noPax:this.noPax,cwd:this.cwd,absolute:t.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime,prefix:this.prefix}}[k](t){this[w]+=1;try{return new this[L](t.path,this[v](t)).on("end",()=>this[E](t)).on("error",t=>this.emit("error",t))}catch(t){this.emit("error",t)}}[A](){if(this[p]&&this[p].entry)this[p].entry.resume()}[T](t){t.piped=true;if(t.readdir){t.readdir.forEach(e=>{const s=t.path;const i=s==="./"?"":s.replace(/\/*$/,"/");this[S](i+e)})}const e=t.entry;const s=this.zip;if(s){e.on("data",t=>{if(!s.write(t))e.pause()})}else{e.on("data",t=>{if(!super.write(t))e.pause()})}}pause(){if(this.zip)this.zip.pause();return super.pause()}});class PackSync extends B{constructor(t){super(t);this[L]=h}pause(){}resume(){}[g](t){const e=this.follow?"statSync":"lstatSync";this[u](t,I[e](t.absolute))}[R](t,e){this[O](t,I.readdirSync(t.absolute))}[T](t){const e=t.entry;const s=this.zip;if(t.readdir){t.readdir.forEach(e=>{const s=t.path;const i=s==="./"?"":s.replace(/\/*$/,"/");this[S](i+e)})}if(s){e.on("data",t=>{s.write(t)})}else{e.on("data",t=>{super[x](t)})}}}B.Sync=PackSync;t.exports=B},747:function(t){t.exports=require("fs")},761:function(t){t.exports=require("zlib")},795:function(t,e,s){const{promisify:i}=s(669);const n=s(747);const r=t=>{if(!t)t={mode:511,fs:n};else if(typeof t==="object")t={mode:511,fs:n,...t};else if(typeof t==="number")t={mode:t,fs:n};else if(typeof t==="string")t={mode:parseInt(t,8),fs:n};else throw new TypeError("invalid options argument");t.mkdir=t.mkdir||t.fs.mkdir||n.mkdir;t.mkdirAsync=i(t.mkdir);t.stat=t.stat||t.fs.stat||n.stat;t.statAsync=i(t.stat);t.statSync=t.statSync||t.fs.statSync||n.statSync;t.mkdirSync=t.mkdirSync||t.fs.mkdirSync||n.mkdirSync;return t};t.exports=r},796:function(t){"use strict";t.exports=(t=>(class extends t{warn(t,e,s={}){if(this.file)s.file=this.file;if(this.cwd)s.cwd=this.cwd;s.code=e instanceof Error&&e.code||t;s.tarCode=t;if(!this.strict&&s.recoverable!==false){if(e instanceof Error){s=Object.assign(e,s);e=e.message}this.emit("warn",s.tarCode,e,s)}else if(e instanceof Error)this.emit("error",Object.assign(e,s));else this.emit("error",Object.assign(new Error(`${t}: ${e}`),s))}}))},806:function(t,e,s){const{dirname:i}=s(622);const n=(t,e,s)=>{e.recursive=false;const r=i(t);if(r===t){return e.mkdirAsync(t,e).catch(t=>{if(t.code!=="EISDIR")throw t})}return e.mkdirAsync(t,e).then(()=>s||t,i=>{if(i.code==="ENOENT")return n(r,e).then(s=>n(t,e,s));if(i.code!=="EEXIST"&&i.code!=="EROFS")throw i;return e.statAsync(t).then(t=>{if(t.isDirectory())return s;else throw i},()=>{throw i})})};const r=(t,e,s)=>{const n=i(t);e.recursive=false;if(n===t){try{return e.mkdirSync(t,e)}catch(t){if(t.code!=="EISDIR")throw t;else return}}try{e.mkdirSync(t,e);return s||t}catch(i){if(i.code==="ENOENT")return r(t,e,r(n,e,s));if(i.code!=="EEXIST"&&i.code!=="EROFS")throw i;try{if(!e.statSync(t).isDirectory())throw i}catch(t){throw i}}};t.exports={mkdirpManual:n,mkdirpManualSync:r}},827:function(t,e,s){"use strict";const i=s(720);const n=s(614).EventEmitter;const r=s(747);let o=r.writev;if(!o){const t=process.binding("fs");const e=t.FSReqWrap||t.FSReqCallback;o=((s,i,n,r)=>{const o=(t,e)=>r(t,e,i);const h=new e;h.oncomplete=o;t.writeBuffers(s,i,n,h)})}const h=Symbol("_autoClose");const l=Symbol("_close");const c=Symbol("_ended");const a=Symbol("_fd");const u=Symbol("_finished");const f=Symbol("_flags");const d=Symbol("_flush");const p=Symbol("_handleChunk");const m=Symbol("_makeBuf");const y=Symbol("_mode");const b=Symbol("_needDrain");const w=Symbol("_onerror");const E=Symbol("_onopen");const S=Symbol("_onread");const _=Symbol("_onwrite");const g=Symbol("_open");const R=Symbol("_path");const O=Symbol("_pos");const T=Symbol("_queue");const k=Symbol("_read");const v=Symbol("_readSize");const L=Symbol("_reading");const x=Symbol("_remain");const A=Symbol("_size");const I=Symbol("_write");const D=Symbol("_writing");const N=Symbol("_defaultFlag");const C=Symbol("_errored");class ReadStream extends i{constructor(t,e){e=e||{};super(e);this.readable=true;this.writable=false;if(typeof t!=="string")throw new TypeError("path must be a string");this[C]=false;this[a]=typeof e.fd==="number"?e.fd:null;this[R]=t;this[v]=e.readSize||16*1024*1024;this[L]=false;this[A]=typeof e.size==="number"?e.size:Infinity;this[x]=this[A];this[h]=typeof e.autoClose==="boolean"?e.autoClose:true;if(typeof this[a]==="number")this[k]();else this[g]()}get fd(){return this[a]}get path(){return this[R]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[g](){r.open(this[R],"r",(t,e)=>this[E](t,e))}[E](t,e){if(t)this[w](t);else{this[a]=e;this.emit("open",e);this[k]()}}[m](){return Buffer.allocUnsafe(Math.min(this[v],this[x]))}[k](){if(!this[L]){this[L]=true;const t=this[m]();if(t.length===0)return process.nextTick(()=>this[S](null,0,t));r.read(this[a],t,0,t.length,null,(t,e,s)=>this[S](t,e,s))}}[S](t,e,s){this[L]=false;if(t)this[w](t);else if(this[p](e,s))this[k]()}[l](){if(this[h]&&typeof this[a]==="number"){const t=this[a];this[a]=null;r.close(t,t=>t?this.emit("error",t):this.emit("close"))}}[w](t){this[L]=true;this[l]();this.emit("error",t)}[p](t,e){let s=false;this[x]-=t;if(t>0)s=super.write(t<e.length?e.slice(0,t):e);if(t===0||this[x]<=0){s=false;this[l]();super.end()}return s}emit(t,e){switch(t){case"prefinish":case"finish":break;case"drain":if(typeof this[a]==="number")this[k]();break;case"error":if(this[C])return;this[C]=true;return super.emit(t,e);default:return super.emit(t,e)}}}class ReadStreamSync extends ReadStream{[g](){let t=true;try{this[E](null,r.openSync(this[R],"r"));t=false}finally{if(t)this[l]()}}[k](){let t=true;try{if(!this[L]){this[L]=true;do{const t=this[m]();const e=t.length===0?0:r.readSync(this[a],t,0,t.length,null);if(!this[p](e,t))break}while(true);this[L]=false}t=false}finally{if(t)this[l]()}}[l](){if(this[h]&&typeof this[a]==="number"){const t=this[a];this[a]=null;r.closeSync(t);this.emit("close")}}}class WriteStream extends n{constructor(t,e){e=e||{};super(e);this.readable=false;this.writable=true;this[C]=false;this[D]=false;this[c]=false;this[b]=false;this[T]=[];this[R]=t;this[a]=typeof e.fd==="number"?e.fd:null;this[y]=e.mode===undefined?438:e.mode;this[O]=typeof e.start==="number"?e.start:null;this[h]=typeof e.autoClose==="boolean"?e.autoClose:true;const s=this[O]!==null?"r+":"w";this[N]=e.flags===undefined;this[f]=this[N]?s:e.flags;if(this[a]===null)this[g]()}emit(t,e){if(t==="error"){if(this[C])return;this[C]=true}return super.emit(t,e)}get fd(){return this[a]}get path(){return this[R]}[w](t){this[l]();this[D]=true;this.emit("error",t)}[g](){r.open(this[R],this[f],this[y],(t,e)=>this[E](t,e))}[E](t,e){if(this[N]&&this[f]==="r+"&&t&&t.code==="ENOENT"){this[f]="w";this[g]()}else if(t)this[w](t);else{this[a]=e;this.emit("open",e);this[d]()}}end(t,e){if(t)this.write(t,e);this[c]=true;if(!this[D]&&!this[T].length&&typeof this[a]==="number")this[_](null,0);return this}write(t,e){if(typeof t==="string")t=Buffer.from(t,e);if(this[c]){this.emit("error",new Error("write() after end()"));return false}if(this[a]===null||this[D]||this[T].length){this[T].push(t);this[b]=true;return false}this[D]=true;this[I](t);return true}[I](t){r.write(this[a],t,0,t.length,this[O],(t,e)=>this[_](t,e))}[_](t,e){if(t)this[w](t);else{if(this[O]!==null)this[O]+=e;if(this[T].length)this[d]();else{this[D]=false;if(this[c]&&!this[u]){this[u]=true;this[l]();this.emit("finish")}else if(this[b]){this[b]=false;this.emit("drain")}}}}[d](){if(this[T].length===0){if(this[c])this[_](null,0)}else if(this[T].length===1)this[I](this[T].pop());else{const t=this[T];this[T]=[];o(this[a],t,this[O],(t,e)=>this[_](t,e))}}[l](){if(this[h]&&typeof this[a]==="number"){const t=this[a];this[a]=null;r.close(t,t=>t?this.emit("error",t):this.emit("close"))}}}class WriteStreamSync extends WriteStream{[g](){let t;if(this[N]&&this[f]==="r+"){try{t=r.openSync(this[R],this[f],this[y])}catch(t){if(t.code==="ENOENT"){this[f]="w";return this[g]()}else throw t}}else t=r.openSync(this[R],this[f],this[y]);this[E](null,t)}[l](){if(this[h]&&typeof this[a]==="number"){const t=this[a];this[a]=null;r.closeSync(t);this.emit("close")}}[I](t){let e=true;try{this[_](null,r.writeSync(this[a],t,0,t.length,this[O]));e=false}finally{if(e)try{this[l]()}catch(t){}}}}e.ReadStream=ReadStream;e.ReadStreamSync=ReadStreamSync;e.WriteStream=WriteStream;e.WriteStreamSync=WriteStreamSync},858:function(t){"use strict";const e=(t,e)=>{if(!Number.isSafeInteger(t))throw Error("cannot encode number outside of javascript safe integer range");else if(t<0)i(t,e);else s(t,e);return e};const s=(t,e)=>{e[0]=128;for(var s=e.length;s>1;s--){e[s-1]=t&255;t=Math.floor(t/256)}};const i=(t,e)=>{e[0]=255;var s=false;t=t*-1;for(var i=e.length;i>1;i--){var n=t&255;t=Math.floor(t/256);if(s)e[i-1]=h(n);else if(n===0)e[i-1]=0;else{s=true;e[i-1]=l(n)}}};const n=t=>{const e=t[0];const s=e===128?o(t.slice(1,t.length)):e===255?r(t):null;if(s===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(s))throw Error("parsed number outside of javascript safe integer range");return s};const r=t=>{var e=t.length;var s=0;var i=false;for(var n=e-1;n>-1;n--){var r=t[n];var o;if(i)o=h(r);else if(r===0)o=r;else{i=true;o=l(r)}if(o!==0)s-=o*Math.pow(256,e-n-1)}return s};const o=t=>{var e=t.length;var s=0;for(var i=e-1;i>-1;i--){var n=t[i];if(n!==0)s+=n*Math.pow(256,e-i-1)}return s};const h=t=>(255^t)&255;const l=t=>(255^t)+1&255;t.exports={encode:e,parse:n}},870:function(t,e,s){const i=process.env.__TESTING_MKDIRP_PLATFORM__||process.platform;const{resolve:n,parse:r}=s(622);const o=t=>{if(/\0/.test(t)){throw Object.assign(new TypeError("path must be a string without null bytes"),{path:t,code:"ERR_INVALID_ARG_VALUE"})}t=n(t);if(i==="win32"){const e=/[*|"<>?:]/;const{root:s}=r(t);if(e.test(t.substr(s.length))){throw Object.assign(new Error("Illegal characters in path."),{path:t,code:"EINVAL"})}}return t};t.exports=o},885:function(t,e,s){"use strict";e.c=e.create=s(159);e.r=e.replace=s(630);e.t=e.list=s(381);e.u=e.update=s(966);e.x=e.extract=s(656);e.Pack=s(726);e.Unpack=s(63);e.Parse=s(203);e.ReadEntry=s(662);e.WriteEntry=s(303);e.Header=s(232);e.Pax=s(582);e.types=s(554)},891:function(t){"use strict";const e=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"]]);t.exports=(t=>t?Object.keys(t).map(s=>[e.has(s)?e.get(s):s,t[s]]).reduce((t,e)=>(t[e[0]]=e[1],t),Object.create(null)):{})},893:function(t){t.exports=(t=>{let e=t.length-1;let s=-1;while(e>-1&&t.charAt(e)==="/"){s=e;e--}return s===-1?t:t.slice(0,s)})},904:function(t){"use strict";t.exports=((t,e,s)=>{t&=4095;if(s)t=(t|384)&~18;if(e){if(t&256)t|=64;if(t&32)t|=8;if(t&4)t|=1}return t})},941:function(t,e,s){"use strict";const i=s(747);const n=s(622);const r=i.lchown?"lchown":"chown";const o=i.lchownSync?"lchownSync":"chownSync";const h=i.lchown&&!process.version.match(/v1[1-9]+\./)&&!process.version.match(/v10\.[6-9]/);const l=(t,e,s)=>{try{return i[o](t,e,s)}catch(t){if(t.code!=="ENOENT")throw t}};const c=(t,e,s)=>{try{return i.chownSync(t,e,s)}catch(t){if(t.code!=="ENOENT")throw t}};const a=h?(t,e,s,n)=>r=>{if(!r||r.code!=="EISDIR")n(r);else i.chown(t,e,s,n)}:(t,e,s,i)=>i;const u=h?(t,e,s)=>{try{return l(t,e,s)}catch(i){if(i.code!=="EISDIR")throw i;c(t,e,s)}}:(t,e,s)=>l(t,e,s);const f=process.version;let d=(t,e,s)=>i.readdir(t,e,s);let p=(t,e)=>i.readdirSync(t,e);if(/^v4\./.test(f))d=((t,e,s)=>i.readdir(t,s));const m=(t,e,s,n)=>{i[r](t,e,s,a(t,e,s,t=>{n(t&&t.code!=="ENOENT"?t:null)}))};const y=(t,e,s,r,o)=>{if(typeof e==="string")return i.lstat(n.resolve(t,e),(i,n)=>{if(i)return o(i.code!=="ENOENT"?i:null);n.name=e;y(t,n,s,r,o)});if(e.isDirectory()){b(n.resolve(t,e.name),s,r,i=>{if(i)return o(i);const h=n.resolve(t,e.name);m(h,s,r,o)})}else{const i=n.resolve(t,e.name);m(i,s,r,o)}};const b=(t,e,s,i)=>{d(t,{withFileTypes:true},(n,r)=>{if(n){if(n.code==="ENOENT")return i();else if(n.code!=="ENOTDIR"&&n.code!=="ENOTSUP")return i(n)}if(n||!r.length)return m(t,e,s,i);let o=r.length;let h=null;const l=n=>{if(h)return;if(n)return i(h=n);if(--o===0)return m(t,e,s,i)};r.forEach(i=>y(t,i,e,s,l))})};const w=(t,e,s,r)=>{if(typeof e==="string"){try{const s=i.lstatSync(n.resolve(t,e));s.name=e;e=s}catch(t){if(t.code==="ENOENT")return;else throw t}}if(e.isDirectory())E(n.resolve(t,e.name),s,r);u(n.resolve(t,e.name),s,r)};const E=(t,e,s)=>{let i;try{i=p(t,{withFileTypes:true})}catch(i){if(i.code==="ENOENT")return;else if(i.code==="ENOTDIR"||i.code==="ENOTSUP")return u(t,e,s);else throw i}if(i&&i.length)i.forEach(i=>w(t,i,e,s));return u(t,e,s)};t.exports=b;b.sync=E},953:function(t,e,s){const i=process.env.__FAKE_PLATFORM__||process.platform;const n=i==="win32";const r=global.__FAKE_TESTING_FS__||s(747);const{O_CREAT:o,O_TRUNC:h,O_WRONLY:l,UV_FS_O_FILEMAP:c=0}=r.constants;const a=n&&!!c;const u=512*1024;const f=c|h|o|l;t.exports=!a?()=>"w":t=>t<u?f:"w"},966:function(t,e,s){"use strict";const i=s(891);const n=s(630);t.exports=((t,e,s)=>{const o=i(t);if(!o.file)throw new TypeError("file is required");if(o.gzip)throw new TypeError("cannot append to compressed archives");if(!e||!Array.isArray(e)||!e.length)throw new TypeError("no files or directories specified");e=Array.from(e);r(o);return n(o,e,s)});const r=t=>{const e=t.filter;if(!t.mtimeCache)t.mtimeCache=new Map;t.filter=e?(s,i)=>e(s,i)&&!(t.mtimeCache.get(s)>i.mtime):(e,s)=>!(t.mtimeCache.get(e)>s.mtime)}}});