@zip.js/zip.js 2.8.61 → 2.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -0
- package/deno.json +1 -1
- package/dist/zip-core-external.js +15 -15
- package/dist/zip-core-external.min.js +1 -1
- package/dist/zip-core.js +15 -14
- package/dist/zip-core.min.js +1 -1
- package/dist/zip-fs-core-external.js +168 -57
- package/dist/zip-fs-core-external.min.js +1 -1
- package/dist/zip-fs-core.js +170 -56
- package/dist/zip-fs-core.min.js +1 -1
- package/dist/zip-fs-external.js +168 -57
- package/dist/zip-fs-external.min.js +1 -1
- package/dist/zip-fs-native.js +170 -56
- package/dist/zip-fs-native.min.js +1 -1
- package/dist/zip-fs.js +170 -56
- package/dist/zip-fs.min.js +1 -1
- package/dist/zip-legacy.js +15 -14
- package/dist/zip-legacy.min.js +1 -1
- package/dist/zip-native.js +15 -14
- package/dist/zip-native.min.js +1 -1
- package/dist/zip.js +15 -14
- package/dist/zip.min.js +1 -1
- package/index-native.cjs +170 -56
- package/index-native.min.js +1 -1
- package/index.cjs +170 -56
- package/index.d.cts +104 -9
- package/index.d.ts +104 -9
- package/index.min.js +1 -1
- package/lib/core/streams/codecs/crc32.js +1 -1
- package/lib/core/util/decode-cp437.js +5 -12
- package/lib/core/version.js +1 -1
- package/lib/core/zip-fs.js +155 -44
- package/lib/core/zip-reader.js +7 -0
- package/lib/zip-core-reader.js +1 -0
- package/package.json +1 -1
package/dist/zip-core.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})}(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:o,BigInt:i,Math:s,Date:a,Map:c,Set:l,Response:u,URL:f,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:m,DataView:h,Blob:y,Promise:S,TextEncoder:E,TextDecoder:g,document:b,crypto:x,btoa:R,TransformStream:F,ReadableStream:z,WritableStream:A,CompressionStream:D,DecompressionStream:k,navigator:I,Worker:C,Symbol:T,setTimeout:v,clearTimeout:_,structuredClone:N}="undefined"!=typeof globalThis?globalThis:this||self;var U=void 0!==b?b.currentScript:null;const M=4294967295,O=65535,L=255,B=67324752,W=134695760,P=W,V=84233040,Z=33639248,H=101010256,G=101075792,j=117853008,q=46,K=22,Y=20,X=56,J=21589,Q=2048,$=61440,ee=16384,te=2048,ne=1024,re="/",oe=30,ie=new a(2107,11,31,23,59,58),se=new a(1980,0,1),ae=void 0,ce=1/0,le="undefined",ue="function",fe="string",de=new w,we="password",pe="rawPassword",me="passThrough",he="signal",ye="useWebWorkers",Se="useCompressionStream",Ee="transferStreams",ge="preventClose",be="dataDescriptor",xe="offset",Re="usdz",Fe="maxAppendedDataSize",ze="filename",Ae="comment",De="strict",ke="balanced",Ie="tolerant",Ce="Invalid option (must be a function)",Te="Invalid signal (must be an AbortSignal instance)",ve="Invalid password (password must be a string, rawPassword must be a Uint8Array)";function _e(e){if(e&&typeof e!=ue)throw new d(Ce);return e}function Ne(e){if(e&&(typeof e.addEventListener!=ue||"boolean"!=typeof e.aborted))throw new d(Te);return e||ae}function Ue(e,t){if(e&&typeof e!=fe||t&&!(t instanceof w))throw new d(ve)}function Me(e,t,n){if(!o.isInteger(e)||e<0||e>t)throw new d(n)}function Oe(e,t,n){e!==ae&&Me(e,t,n)}function Le(e){return typeof e==fe&&e.trim()?o(e):e}const Be="Invalid maxWorkers (must be an integer greater than 0)";let We=2;try{typeof I!=le&&I.hardwareConcurrency&&(We=I.hardwareConcurrency)}catch{}const Pe={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:We,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof D!=le&&D,DecompressionStream:typeof k!=le&&k},Ve="maxWorkers",Ze=["chunkSize",Ve,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],He=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],Ge=["baseURI","wasmURI","workerURI","useCompressionStream","useWebWorkers","transferStreams",...Ze,...He],je={...Pe};function qe(){return je}function Ke(e){return Ye(e.chunkSize)}function Ye(e){return e=Le(e),o.isInteger(e)&&e>=1?s.max(e,64):65536}function Xe(e){const t={};for(const n of Ge){const r=e[n];r!==ae&&(t[n]=Je(n,r))}return t}function Je(e,t){if(Ze.includes(e)){if(t=Le(t),e==Ve&&(!o.isInteger(t)||t<1))throw new d(Be)}else He.includes(e)&&_e(t);return t}function Qe(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===ae&&r===ae)return e;const o=n.assign({},e);return o.CompressionStreamFallback===ae&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===ae&&(o.DecompressionStreamFallback=r),o}function $e(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function et(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function tt(e){return new h(e.buffer,e.byteOffset,e.byteLength)}const nt=[[],[],[],[],[],[],[],[]];for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=1&t?t>>>1^3988292384:t>>>1;nt[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){const n=nt[t-1][e];nt[t][e]=n>>>8^nt[0][255&n]}const[rt,ot,it,st,at,ct,lt,ut]=nt;class ft{constructor(e){this.o=e||-1}append(e){let t=0|this.o;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const o=new h(e.buffer,e.byteOffset,n),i=n-8;for(;r<=i;r+=8){const e=t^o.getInt32(r,!0),n=o.getInt32(r+4,!0);t=ut[255&e]^lt[e>>>8&255]^ct[e>>>16&255]^at[e>>>24&255]^st[255&n]^it[n>>>8&255]^ot[n>>>16&255]^rt[n>>>24&255]}}for(;r<n;r++)t=t>>>8^rt[255&(t^e[r])];this.o=t}get(){return~this.o}}class dt extends F{constructor(){let e;const t=new ft;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function wt(e){if(typeof E==le){e=unescape(encodeURIComponent(e));const t=new w(e.length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new E).encode(e)}const pt={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=pt.l(n);return 32===r?e.concat(t):pt.m(t,r,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+pt.l(n)},h(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,s.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=pt.S(t,e[n-1]&2147483648>>t-1,1)),e},S:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,l:e=>s.round(e/1099511627776)||32,m(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let o=0;o<e.length;o++)r.push(n|e[o]>>>t),n=e[o]<<32-t;const o=e.length?e[e.length-1]:0,i=pt.l(o);return r.push(pt.S(t+i&31,t+i>32?n:r.pop(),1)),r}},mt={bytes:{R(e){const t=pt.bitLength(e)/8,n=new w(t);let r;for(let o=0;o<t;o++)3&o||(r=e[o/4]),n[o]=r>>>24,r<<=8;return n},F(e){const t=[];let n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],3&~n||(t.push(r),r=0);return 3&n&&t.push(pt.S(8*(3&n),r)),t}}},ht=class{constructor(e){const t=this;t.blockSize=512,t.A=[1732584193,4023233417,2562383102,271733878,3285377520],t.D=[1518500249,1859775393,2400959708,3395469782],e?(t.I=e.I.slice(0),t.C=e.C.slice(0),t.T=e.T):t.reset()}reset(){const e=this;return e.I=e.A.slice(0),e.C=[],e.T=0,e}update(e){const t=this;"string"==typeof e&&(e=mt.v.F(e));const n=t.C=pt.concat(t.C,e),r=t.T,o=t.T=r+pt.bitLength(e);if(o>9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const i=new m(n);let s=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);e<=o;e+=t.blockSize)t._(i.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t}N(){const e=this;let t=e.C;const n=e.I;t=pt.concat(t,[pt.S(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e.T/4294967296)),t.push(0|e.T);t.length;)e._(t.splice(0,16));return e.reset(),n}U(e,t,n,r){return e<=19?t&n|~t&r:e<=39?t^n^r:e<=59?t&n|t&r|n&r:e<=79?t^n^r:void 0}M(e,t){return t<<e|t>>>32-e}_(e){const n=this,r=n.I,o=t(80);for(let t=0;t<16;t++)o[t]=e[t];let i=r[0],a=r[1],c=r[2],l=r[3],u=r[4];for(let e=0;e<=79;e++){e>=16&&(o[e]=n.M(1,o[e-3]^o[e-8]^o[e-14]^o[e-16]));const t=n.M(5,i)+n.U(e,a,c,l)+u+o[e]+n.D[s.floor(e/20)]|0;u=l,l=c,c=n.M(30,a),a=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+a|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},yt={importKey:e=>new yt.O(mt.bytes.F(e)),L(e,t,n,r){if(n=n||1e4,r<0||n<0)throw new d("invalid params to pbkdf2");const o=1+(r>>5)<<2;let i,s,a,c,l;const u=new ArrayBuffer(o),f=new h(u);let w=0;const p=pt;for(t=mt.bytes.F(t),l=1;w<(o||1);l++){for(i=s=e.encrypt(p.concat(t,[l])),a=1;a<n;a++)for(s=e.encrypt(s),c=0;c<s.length;c++)i[c]^=s[c];for(a=0;w<(o||1)&&a<i.length;a++)f.setInt32(w,i[a]),w+=4}return u.slice(0,r/8)},O:class{constructor(e){const t=this,n=t.B=ht,r=[[],[]];t.W=[new n,new n];const o=t.W[0].blockSize/32;e.length>o&&(e=(new n).update(e).N());for(let t=0;t<o;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.W[0].update(r[0]),t.W[1].update(r[1]),t.P=new n(t.W[0])}reset(){const e=this;e.P=new e.B(e.W[0]),e.V=!1}update(e){this.V=!0,this.P.update(e)}digest(){const e=this,t=e.P.N(),n=new e.B(e.W[1]).update(t).N();return e.reset(),n}encrypt(e){if(this.V)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},St=typeof x!=le&&typeof x.getRandomValues==ue,Et="Invalid password",gt="Invalid signature",bt=gt,xt="zipjs-abort-check-password",Rt="Crypto API not supported";function Ft(e){if(St)return x.getRandomValues(e);throw new d(Rt)}const zt=16,At={name:"PBKDF2"},Dt=n.assign({hash:{name:"HMAC"}},At),kt=n.assign({iterations:1e3,hash:{name:"SHA-1"}},At),It=["deriveBits"],Ct=[8,12,16],Tt=[16,24,32],vt=10,_t=[0,0,0,0],Nt=typeof x!=le,Ut=Nt&&x.subtle,Mt=Nt&&typeof Ut!=le,Ot=mt.bytes,Lt=class{constructor(e){const t=this;t.Z=[[[],[],[],[],[]],[[],[],[],[],[]]],t.Z[0][0][0]||t.H();const n=t.Z[0][4],r=t.Z[1],o=e.length;let i,s,a,c=1;if(4!==o&&6!==o&&8!==o)throw new d("invalid aes key size");for(t.D=[s=e.slice(0),a=[]],i=o;i<4*o+28;i++){let e=s[i-1];(i%o===0||8===o&&i%o===4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%o===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),s[i]=s[i-o]^e}for(let e=0;i;e++,i--){const t=s[3&e?i:i-4];a[e]=i<=4||e<4?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.G(e,0)}decrypt(e){return this.G(e,1)}H(){const e=this.Z[0],t=this.Z[1],n=e[4],r=t[4],o=[],i=[];let s,a,c,l;for(let e=0;e<256;e++)i[(o[e]=e<<1^283*(e>>7))^e]=e;for(let u=s=0;!n[u];u^=a||1,s=i[s]||1){let i=s^s<<1^s<<2^s<<3^s<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=o[c=o[a=o[u]]];let f=16843009*l^65537*c^257*a^16843008*u,d=257*o[i]^16843008*i;for(let n=0;n<4;n++)e[n][u]=d=d<<24^d>>>8,t[n][i]=f=f<<24^f>>>8}for(let n=0;n<5;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}G(e,t){if(4!==e.length)throw new d("invalid aes block size");const n=this.D[t],r=n.length/4-2,o=[0,0,0,0],i=this.Z[t],s=i[0],a=i[1],c=i[2],l=i[3],u=i[4];let f,w,p,m=e[0]^n[0],h=e[t?3:1]^n[1],y=e[2]^n[2],S=e[t?1:3]^n[3],E=4;for(let e=0;e<r;e++)f=s[m>>>24]^a[h>>16&255]^c[y>>8&255]^l[255&S]^n[E],w=s[h>>>24]^a[y>>16&255]^c[S>>8&255]^l[255&m]^n[E+1],p=s[y>>>24]^a[S>>16&255]^c[m>>8&255]^l[255&h]^n[E+2],S=s[S>>>24]^a[m>>16&255]^c[h>>8&255]^l[255&y]^n[E+3],E+=4,m=f,h=w,y=p;for(let e=0;e<4;e++)o[t?3&-e:e]=u[m>>>24]<<24^u[h>>16&255]<<16^u[y>>8&255]<<8^u[255&S]^n[E++],f=m,m=h,h=y,y=S,S=f;return o}},Bt=class{constructor(e,t){this.j=e,this.K=t,this.Y=t}reset(){this.Y=this.K}update(e){return this.X(this.j,e,this.Y)}J(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}$(e){0===(e[0]=this.J(e[0]))&&(e[1]=this.J(e[1]))}X(e,t,n){let r;if(!(r=t.length))return[];const o=pt.bitLength(t);for(let o=0;o<r;o+=4){this.$(n);const r=e.encrypt(n);t[o]^=r[0],t[o+1]^=r[1],t[o+2]^=r[2],t[o+3]^=r[3]}return pt.h(t,o)}},Wt=yt.O;let Pt=Nt&&Mt&&typeof Ut.importKey==ue,Vt=Nt&&Mt&&typeof Ut.deriveBits==ue;class Zt extends F{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){super({start(){Gt(this,e,t,n)},async transform(e,t){const n=this,{password:o,strength:i,ee:s,ready:a}=n;o?(await async function(e,t,n,r){const o=await qt(e,t,n,Yt(r,0,Ct[t])),i=Yt(r,Ct[t]);if(o[0]!=i[0]||o[1]!=i[1])throw new d(Et)}(n,i,o,Yt(e,0,Ct[i]+2)),e=Yt(e,Ct[i]+2),r?t.error(new d(xt)):s()):await a;const c=new w(e.length-vt-(e.length-vt)%zt);t.enqueue(jt(n,e,c,0,vt,!0))},async flush(e){const{te:t,ne:n,re:r,ready:i}=this;if(n&&t){await i;const s=Yt(r,0,r.length-vt),a=Yt(r,r.length-vt);let c=de;if(s.length){const e=Jt(Ot,s);n.update(e);const r=t.update(e);c=Xt(Ot,r)}const l=Yt(Xt(Ot,n.digest()),0,vt);let u=r.length<vt?1:0;for(let e=0;e<vt;e++)u|=l[e]^a[e];if(u&&o)throw new d(bt);e.enqueue(c)}}})}}class Ht extends F{constructor({password:e,rawPassword:t,encryptionStrength:n}){super({start(){Gt(this,e,t,n)},async transform(e,t){const n=this,{password:r,strength:o,ee:i,ready:s}=n;let a=de;r?(a=await async function(e,t,n){const r=Ft(new w(Ct[t]));return $e(r,await qt(e,t,n,r))}(n,o,r),i()):await s;const c=new w(a.length+e.length-e.length%zt);c.set(a,0),t.enqueue(jt(n,e,c,a.length,0))},async flush(e){const{te:t,ne:n,re:r,ready:o}=this;if(n&&t){await o;let i=de;if(r.length){const e=t.update(Jt(Ot,r));n.update(e),i=Xt(Ot,e)}const s=Xt(Ot,n.digest()).slice(0,vt);e.enqueue($e(i,s))}}})}}function Gt(e,t,r,o){n.assign(e,{ready:new S(t=>e.ee=t),password:Kt(t,r),strength:o-1,re:de})}function jt(e,t,n,r,o,i){const{te:s,ne:a,re:c}=e;c.length&&(t=$e(c,t));const l=t.length-o;let u;for(n=function(e,t){if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e}(n,r+(l-l%zt)),u=0;u<=l-zt;u+=zt){const e=Jt(Ot,Yt(t,u,u+zt));i&&a.update(e);const o=s.update(e);i||a.update(o),n.set(Xt(Ot,o),u+r)}return e.re=Yt(t,u),n}async function qt(e,r,o,i){e.password=null;const s=await async function(e,t,n,r,o){if(!Pt)return yt.importKey(t);try{return await Ut.importKey("raw",t,n,!1,o)}catch{return Pt=!1,yt.importKey(t)}}(0,o,Dt,0,It),a=await async function(e,t,n){if(!Vt)return yt.L(t,e.salt,kt.iterations,n);try{return await Ut.deriveBits(e,t,n)}catch{return Vt=!1,yt.L(t,e.salt,kt.iterations,n)}}(n.assign({salt:i},kt),s,8*(2*Tt[r]+2)),c=new w(a),l=Jt(Ot,Yt(c,0,Tt[r])),u=Jt(Ot,Yt(c,Tt[r],2*Tt[r])),f=Yt(c,2*Tt[r]);return n.assign(e,{keys:{key:l,oe:u,passwordVerification:f},te:new Bt(new Lt(l),t.from(_t)),ne:new Wt(u)}),f}function Kt(e,t){return t===ae?wt(e):t}function Yt(e,t,n){return e.subarray(t,n)}function Xt(e,t){return e.R(t)}function Jt(e,t){return e.F(t)}class Qt extends F{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){en(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=tn(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t[11]^n.passwordVerification))throw new d(Et);e=e.subarray(12)}r?t.error(new d(xt)):t.enqueue(tn(n,e))}})}}class $t extends F{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){en(this,e,t,n)},transform(e,t){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=Ft(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(nn(n,t),0),o=12}else r=new w(e.length),o=0;r.set(nn(n,e),o),t.enqueue(r)}})}}function en(e,t,r,o){n.assign(e,{password:t,rawPassword:r,passwordVerification:o}),function(e,t,r){const o=[305419896,591751049,878082192];if(n.assign(e,{keys:o,ie:new ft(o[0]),se:new ft(o[2])}),r)for(let t=0;t<r.length;t++)rn(e,r[t]);else for(let n=0;n<t.length;n++)rn(e,t.charCodeAt(n))}(e,t,r)}function tn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=on(e)^t[r],rn(e,n[r]);return n}function nn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=on(e)^t[r],rn(e,t[r]);return n}function rn(e,t){let[,n]=e.keys;e.ie.append([t]);const r=~e.ie.get();n=an(s.imul(an(n+sn(r)),134775813)+1),e.se.append([n>>>24]);const o=~e.se.get();e.keys=[r,n,o]}function on(e){const t=2|e.keys[2];return sn(s.imul(t,1^t)>>>8)}function sn(e){return 255&e}function an(e){return 4294967295&e}function cn(e){if(e instanceof z)return e;const t=e.getReader();return new z({async pull(e){const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})}function ln(e,t){e=cn(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=ue||new y([]).stream()instanceof z)return new u(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new A({write(e){r.push(e)}})).then(()=>new y(r,n))}function un(e){if(e instanceof A)return e;const t=e.getWriter();return new A({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const fn="Invalid codec definition",dn="Reserved compression method",wn="Invalid codec module",pn=[0,8,9,99],mn=new c,hn=new c;function yn(e){return mn.get(e)}function Sn(){return t.from(mn.values(),e=>n.assign({},e,hn.get(e.format)))}function En(e){return hn.get(e)}function gn(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=ue&&typeof r!=ue)throw new d(wn);hn.set(e,{CompressionStream:n,DecompressionStream:r})}const bn="Invalid uncompressed size",xn="Invalid compressed data",Rn=gt,Fn="deflate-raw",zn="deflate64-raw",An="gzip",Dn=[31,139,8];class kn extends F{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:s,zipCrypto:a,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:d,inputSize:w}=e,p=this;let m,y,S,E=super.readable;const g=f&&En(f),b=c&&o&&!u&&!g&&(!i||a)&&Boolean(s&&r);if(i&&!a||!c||b||(m=new dt,E=On(E,m)),o)if(g)E=Ln(E,Un(g.CompressionStream,f,{level:l,chunkSize:t,compressionMethod:d,uncompressedSize:w}));else if(b)S=new In,E=Ln(E,new r(An)),E=On(E,S);else try{E=Mn(E,s,{level:l,chunkSize:t},r,n)}catch(e){let t;try{t=new r(An)}catch{throw e}E=Ln(E,t),E=On(E,new In)}i&&(a?E=On(E,new $t(e)):(y=new Ht(e),E=On(E,y))),Nn(p,E,()=>{i&&!a||!c||(p.crc32=b?S.crc32:new h(m.value.buffer).getUint32(0))})}}class In extends F{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=s.min(t,e.length);if(t-=n,!(e=e.subarray(n)).length)return}const o=n.length+e.length;if(o<=8)return void(n=$e(n,e));const i=o-8,a=s.min(i,n.length);r.enqueue($e(n.subarray(0,a),e.subarray(0,i-a))),n=$e(n.subarray(a),e.subarray(i-a))},flush(){const t=tt(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class Cn extends F{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:s,crc32:a,compressed:c,useCompressionStream:l,deflate64:u,format:f,compressionMethod:p,rawBitFlag:m,outputSize:y}=e;let E,g,b=super.readable;if(i&&(o?b=On(b,new Qt(e)):(g=new Zt(e),b=On(b,g))),c){const e=f&&En(f);if(e)b=Ln(b,Un(e.DecompressionStream,f,{chunkSize:t,compressionMethod:p,rawBitFlag:m,uncompressedSize:y}));else try{b=Mn(b,l,{chunkSize:t,deflate64:u},r,n)}catch(e){if(u||y===ae)throw e;let t;try{t=new r(An)}catch{throw e}b=function(e,t,n){const r=new ft;let o,i,s,a=0,c=!1;const l=new S((e,t)=>{i=e,s=t});l.catch(()=>{}),n||i();const u=new F({start(e){const t=new w(10);t.set(Dn),e.enqueue(t)},transform(e,t){t.enqueue(e)},async flush(e){c=!0,p();try{await l}finally{m()}const t=new w(8),o=tt(t);o.setUint32(0,r.get(),!0),o.setUint32(4,n,!0),e.enqueue(t)},cancel(e){s(e)}}),f=new F({transform(e,t){r.append(e),a+=e.length,a>=n?i():c&&p(),t.enqueue(e)},cancel(e){s(e)}});return e=On(e,u),On(e=Ln(e,t),f);function p(){m(),o=v(()=>s(new d(bn)),5e3)}function m(){_(o)}}(b,t,y)}b=function(e){const t=e.getReader();return new z({async pull(e){let n;try{n=await t.read()}catch(e){if(e&&e.message)throw e;const t=new d(xn);throw t.cause=e,t}const{value:r,done:o}=n;o?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})}(b)}s&&(E=new dt,b=On(b,E)),Nn(this,b,()=>{if(s){const e=new h(E.value.buffer);if(a!=e.getUint32(0,!1))throw new d(Rn)}})}}const Tn=new c;function vn(e,t){if(!e)return!1;let n=Tn.get(e);n||(n=new c,Tn.set(e,n));let r=n.get(t);if(r===ae){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function _n(e){return vn(e,Fn)}function Nn(e,t,r){t=On(t,new F({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Un(e,t,n){if(!e)throw new d("Compression method not supported");return new e(t,n)}function Mn(e,t,n,r,o){const i=t&&r?r:o||r,s=n.deflate64?zn:Fn;let a;try{a=new i(s,n)}catch(e){if(!t||!o||i==o)throw e;a=new o(s,n)}return Ln(e,a)}function On(e,t){return cn(e).pipeThrough(t)}function Ln(e,t){const n=t.writable.getWriter(),r=e.getReader();return async function(){try{for(;;){await n.ready;const e=await r.read();if(e.done){await n.close();break}await n.write(e.value)}}catch(e){await async function(e,t){try{await e.abort(t)}catch{}}(n,e),await async function(e,t){try{await e.cancel(t)}catch{}}(r,e)}}(),t.readable}const Bn="data",Wn="deflate",Pn="inflate";class Vn extends F{constructor(e,t){super({});const r=this,{codecType:o}=e;let i;o.startsWith(Wn)?i=kn:o.startsWith(Pn)&&(i=Cn),r.outputSize=0;let s=0;const a=new i(e,t),c=super.readable,l=new F({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:s})}}),u=new F({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==ae&&r.outputSize>e.outputSize))throw new d(bn)},flush(){const{crc32:e}=a;n.assign(r,{crc32:e,inputSize:s})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(a).pipeThrough(u)})}}class Zn extends F{constructor(e){const t=[];let n=0;function r(){const r=new w(e);let o=0;for(;o<e;){const n=t[0],i=e-o;n.length<=i?(r.set(n,o),o+=n.length,t.shift()):(r.set(n.subarray(0,i),o),t[0]=n.subarray(i),o+=i)}return n-=e,r}(!o.isFinite(e)||e<1)&&(e=65536),super({transform(o,i){for(t.push(o),n+=o.length;n>e;)i.enqueue(r())},flush(e){n&&e.enqueue(function(e,t){const n=new w(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(t,n))}})}}const Hn="Worker startup timeout";let Gn,jn,qn;function Kn(e){e.createWorker?jn=!0:Gn=!1}class Yn{constructor(e,{readable:t,writable:r},{options:o,config:i,ae:s,useWebWorkers:a,transferStreams:c,workerURI:l,createWorker:u},f){const{signal:d}=s;return jn&&(u=ae),n.assign(e,{ce:!0,le:(e.le||0)+1,readable:t.pipeThrough(new Zn(Ke(i))).pipeThrough(new Xn(s),{signal:d}),writable:r,options:n.assign({},o),workerURI:l,createWorker:u,transferStreams:c,terminate:()=>new S(t=>{const{ue:n,ce:r}=e;n?(r?e.fe=t:(n.terminate(),t()),e.de=null):t()}),we(){if(e.ce){const{fe:t}=e;t&&(e.fe=null,e.pe=!0,e.ue.terminate(),t()),e.ce=!1,f(e)}}}),Gn===ae&&(Gn=typeof C!=le),(a&&qn&&(Gn&&l||u)?qn:Qn)(e,i)}}class Xn extends F{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await Jn(e,n)},async transform(e,r){o+=e.length,t&&await Jn(t,o,n),r.enqueue(e)},async flush(){r&&await Jn(r,o)}})}}async function Jn(e,...t){try{await e(...t)}catch{}}function Qn(e,t){return{run:()=>$n(e,t)}}async function $n({options:e,readable:t,writable:n,we:r},o){let i;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(Wn),n=t?o.CompressionStreamFallback:o.DecompressionStreamFallback,r=t?o.CompressionStream:o.DecompressionStream;if(e.useCompressionStream){if(n&&n.me&&!_n(r))try{await void 0}catch{}}else try{await void 0}catch{n&&!n.me||(e.useCompressionStream=!0)}}i=new Vn(e,o),await t.pipeThrough(i).pipeThrough(new Zn(Ke(o))).pipeTo(n,{preventClose:!0,preventAbort:!0});const{crc32:r,inputSize:s,outputSize:a}=i;return{crc32:r,inputSize:s,outputSize:a}}catch(e){throw i&&(e.outputSize=i.outputSize),e}finally{r()}}const er={type:"module"},tr="error";let nr,rr,or,ir=!0;try{ir=typeof N==ue&&N(new DOMException("","AbortError")).code!==ae}catch{}var sr;function ar(e){const{reader:t}=e;t&&t.releaseLock(),e.reader=null,e.writer=null}function cr(e){const{ue:t}=e;if(t)try{t.terminate()}catch{}e.de=null}function lr(e,t,r,o,i=!0){const{createWorker:s}=r;let a,c,l;if(s)a=s();else if(rr===ae||nr!==e){const n=typeof e==ue;c=n?e(i):e;const s=c.startsWith("data:"),u=c.startsWith("blob:");if(s||u){o===ae&&(o=!1),o&&(l=er);try{a=new C(c,l)}catch(i){if(u)try{f.revokeObjectURL(c)}catch{}if(n&&u)return lr(e,t,r,o,!1);if(o)throw i;return lr(e,t,r,!0,!1)}}else{o===ae&&(o=!0),o&&(l=er);try{c=new f(c,t)}catch{}try{a=new C(c,l)}catch(n){if(o)return lr(e,t,r,!1,i);throw n}}nr=e,rr=c,or=l}else a=new C(rr,or);return a.addEventListener("message",e=>{r.he=!0,ur(r),async function({data:e},t){const{type:r,value:o,messageId:i,result:s,error:a}=e,{reader:c,writer:l,ye:u,Se:f,we:p,le:m}=t,h=()=>t.le!=m;try{if(a){const{message:e,stack:t,code:r,name:o,outputSize:i,cause:s,codecImportFailed:c}=a,l=new d(e);n.assign(l,{stack:t,code:r,name:o,outputSize:i}),s&&(l.cause=n.assign(new d(s.message),{name:s.name})),c&&(l.codecImportFailed=!0),y(l)}else{if("pull"==r){const{value:e,done:n}=await c.read();h()||dr({type:Bn,value:e,done:n,messageId:i},t)}r==Bn&&(await l.ready,await l.write(new w(o)),h()||dr({type:"ack",messageId:i},t)),"close"==r&&y(null,s)}}catch(a){h()||(cr(t),y(a))}function y(e,t){h()||(e?f(e):u(t),l&&l.releaseLock(),e&&e.codecImportFailed||p())}}(e,r)}),a.addEventListener(tr,e=>fr(e,r)),a.addEventListener("messageerror",e=>fr(e,r)),a}function ur(e){const{Ee:t}=e;t&&(_(t),e.Ee=null)}function fr(e,t){e.preventDefault&&e.preventDefault(),ur(t);const{he:r,Se:o,writer:i,we:s}=t;cr(t),r||(t.ue=null);let a=e.error||new d(e.message||tr);r||(a=n.assign(new d(a.message||tr),{ge:!0}),t.be=a),o&&(o(a),i&&i.releaseLock(),r&&s())}function dr(e,{ue:t,writer:n,transferStreams:r,he:o}){try{const{value:n,readable:i,writable:s}=e,a=[];if(n&&(e.value=et(n),a.push(e.value.buffer)),r&&ir&&o?(i&&a.push(i),s&&a.push(s)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch{ir=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}sr=function(e,t){const{baseURI:r,chunkSize:i,workerStartupTimeout:s}=t;let{wasmURI:a}=t;if(!e.de){let c;typeof a==ue&&(a=a());try{c=lr(e.workerURI,r,e)}catch{return Kn(e),Qn(e,t)}n.assign(e,{ue:c,he:!1,pe:!1,be:null,de:{run:async()=>{try{return await async function(e,t){if(!e.ue){const{be:t}=e;e.be=null;const n=t||new d(Hn);throw n.ge=!0,n}let r,i;const s=new S((e,t)=>{r=e,i=t});n.assign(e,{reader:null,writer:null,ye:r,Se:i,result:s});const{readable:a,options:c}=e,{writable:l,closed:u,xe:f}=function(e){const t=new AbortController,{writable:n,readable:r}=new F,o=r.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return o.catch(()=>{}),{writable:n,closed:o,xe:()=>t.abort()}}(e.writable);let w;try{w=dr({type:"start",options:c,config:t,readable:a,writable:l},e)}catch(t){f();try{await u}catch{}throw e.we(),t}w||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const{workerStartupTimeout:p}=t;!e.he&&o.isFinite(p)&&p>=0&&(e.Ee=v(()=>function(e){if(e.Ee=null,e.he)return;const{Se:t,writer:n}=e;if(cr(e),e.ue=null,t){const e=new d(Hn);e.ge=!0,t(e),n&&n.releaseLock()}}(e),p));try{const e=await s;return await m(),await u,e}catch(e){await m(),f();try{await u}catch{}throw e}async function m(){if(!w&&!l.locked)try{await l.getWriter().close()}catch{}}}(e,{chunkSize:i,wasmURI:a,baseURI:r,workerStartupTimeout:s})}catch(n){if(n&&n.ge)return Kn(e),ar(e),$n(e,t);if(n&&n.codecImportFailed){if(e.reader)return ar(e),$n(e,t);e.we()}throw n}}}})}return e.de},qn=sr;let wr=[];const pr=[];let mr,hr,yr=0;async function Sr(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:s,useCompressionStream:a,compressed:c,checkCrc32:l,computeCrc32:u,encrypted:d,format:w,codecURI:p}=n,{workerURI:m,createWorker:h,maxWorkers:y}=r;w&&(p&&(n.codecURI=function(e,t){try{return new f(e,t).toString()}catch{return e}}(p,r.baseURI)),await async function(e,t){!hn.has(e)&&t&&gn(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(w,n.codecURI)),t.transferStreams=!w&&(i||i===ae&&r.transferStreams);const E=!(c||l||u||d),g=w===ae||Boolean(n.codecURI);return t.useWebWorkers=!E&&g&&(s||s===ae&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&m?m:ae,t.createWorker=t.useWebWorkers&&h?h:ae,n.useCompressionStream=a||a===ae&&r.useCompressionStream,(await async function(){const n=wr.find(e=>!e.ce);if(n)return Rr(n),new Yn(n,e,t,b);if(wr.length<y){const n={Re:yr};return yr++,wr.push(n),new Yn(n,e,t,b)}return new S(n=>{pr.push({resolve:n,stream:e,Fe:t}),hr=r.workerStarvationTimeout,Er()})}()).run();function b(e){if(gr(),pr.length){const[{resolve:t,stream:n,Fe:r}]=pr.splice(0,1);t(new Yn(e,n,r,b)),Er()}else e.ue?(Rr(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.pe?e.pe=!1:e.ze=v(async()=>{wr=wr.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}(e,t)):wr=wr.filter(t=>t!=e)}}function Er(){!mr&&pr.length&&o.isFinite(hr)&&hr>=0&&(mr=v(br,hr))}function gr(){mr&&(_(mr),mr=null)}function br(){if(mr=null,pr.length){const[{resolve:e,stream:t,Fe:r}]=pr.splice(0,1),o=n.assign({},r,{useWebWorkers:!1,workerURI:ae,createWorker:ae});e(new Yn({},t,o,xr)),Er()}}function xr(){gr(),Er()}function Rr(e){const{ze:t}=e;t&&(_(t),e.ze=null)}const Fr="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split(""),zr=256==Fr.length;function Ar(e,t){return Dr(e,t,!0)}function Dr(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?function(e){if(zr){let t="";for(let n=0;n<e.length;n++)t+=Fr[e[n]];return t}return(new g).decode(e)}(e):new g(t,{ignoreBOM:n}).decode(e)}const kr="HTTP error ",Ir="HTTP Range not supported",Cr="HTTP resource changed",Tr="Writer iterator completed too soon",vr="Writer not initialized",_r="Content-Range",Nr="Range",Ur="GET",Mr="bytes",Or=16777216,Lr="writable",Br=T();class Wr{constructor(){this.size=0}init(){this.initialized=!0}}class Pr extends Wr{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=Ke(qe())}={}){const r=this;let o=0;return n=Ye(n),new z({async pull(i){const a=t===ae?n:s.min(n,t-o),c=await Eo(r,e+o,a);c.length&&i.enqueue(c),o+n>=t||!c.length&&a?i.close():o+=n}})}}class Vr extends Wr{constructor(){super();const e=this,t=new A({write(t){if(!e.initialized)throw new d(vr);return e.writeUint8Array(et(t))}});n.defineProperty(e,Lr,{get:()=>t})}writeUint8Array(){}}let Zr,Hr;class Gr extends Pr{constructor(e){super(),n.assign(this,{Ae:e,size:e.size}),Hr||(Hr=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,n=await e.read();for(;!n.done;)t+=n.value.length,n=await e.read();Zr=1==t}catch{Zr=!1}})())}createReadable(e){const{Ae:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};return!r&&o>=n?cn(t.stream()):Zr?cn(t.slice(r,r+o).stream()):super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=!e&&r>=n.size?n.Ae:n.Ae.slice(e,r);let i=await o.arrayBuffer();return i.byteLength>t&&(i=i.slice(e,r)),new w(i)}}class jr extends Wr{constructor(e){super();const t=this,r=new F;n.defineProperty(t,Lr,{get:()=>r.writable}),t.contentType=e,t.De=ln(r.readable,e),t.De.catch(()=>{})}getData(){return this.De}}class qr extends Pr{constructor(e,t){super(),Yr(this,e,t)}async init(){await Xr(this,co,oo),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:i}=t;if((n||r)&&i!==ae){const{offset:n=0,size:r=i-n}=e||{};if(r>0&&n<i)return function(e,t,n){let r,i=t,a=0,c=n;return new z({start:()=>l(),async pull(e){r||await l();const{value:t,done:n}=await r.read();if(n)throw new d(Ir);const o=t.length>a?t.subarray(0,a):t;a-=o.length,c-=o.length,o.length&&e.enqueue(o),a||(await async function(){const e=r;r=ae,await e.cancel()}(),c||e.close())},cancel:e=>r&&r.cancel(e)});async function l(){const t=s.min(e.maximumRangeSize,c),n=await co(Ur,e,no(e,i,t));if(206!=n.status)throw new d(Ir);const l=n.headers.get(_r);if(l){const e=o(l.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=i)throw new d(Ir)}to(e,n),eo(e,n),i+=t,a=t,r=n.body.getReader()}}(t,n,s.min(r,i-n))}return super.createReadable(e)}readUint8Array(e,t){return Jr(this,e,t,co,oo)}}class Kr extends Pr{constructor(e,t){super(),Yr(this,e,t)}async init(){await Xr(this,lo,io),super.init()}readUint8Array(e,t){return Jr(this,e,t,lo,io)}}function Yr(e,t,r){const{preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c=!0,maximumRangeSize:l=Or,fetch:u}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(e,{url:t,options:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c,maximumRangeSize:l,fetch:u})}async function Xr(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a}=e;if(function(e){const{baseURI:t}=qe(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n}(r)&&(i||s)&&(typeof o==le||o)){const r=await t(Ur,e,no(e,a?-22:void 0)),o=r.headers.get("Accept-Ranges");if(!(s||o&&o.toLowerCase()==Mr))throw new d(Ir);{if(a){const t=new w(await r.arrayBuffer());206==r.status&&t.length==K&&(e.ke=t)}eo(e,r);const o=Qr(r);o===ae?await ao(e,t,n):e.size=o}}else await ao(e,t,n)}async function Jr(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,ke:c,size:l,options:u}=e;if(s||a){if(c&&t==l-K&&n==K)return c;if(t>=l||0===n)return de;{t+n>l&&(n=l-t);const i=await r(Ur,e,no(e,t,n));if(206!=i.status)throw new d(Ir);const s=i.headers.get(_r);if(s){const e=o(s.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=t)throw new d(Ir)}to(e,i),eo(e,i);const a=new w(await i.arrayBuffer());if(a.length!=n)throw new d(Ir);return a}}{const{data:r}=e;return r||await i(e,u),e.data.subarray(t,t+n)}}function Qr(e){const t=e.headers.get(_r);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=o(e);if(!o.isNaN(t))return t}}}function $r({headers:e}){return{Ie:e.get("Etag")||ae,lastModified:e.get("Last-Modified")||ae}}function eo(e,t){const{checkResourceChanges:n,Ce:r}=e;n&&!r&&206==t.status&&(e.Ce=$r(t))}function to(e,t){const{checkResourceChanges:r,Ce:o,size:i}=e;if(r){const e=Qr(t);if(e!==ae&&i!==ae&&e!=i)throw new d(Cr);if(o){const e=$r(t);if(n.entries(o).some(([t,n])=>n!==ae&&e[t]!==ae&&n!=e[t]))throw new d(Cr)}}}function no(e,t=0,r=1){return n.assign({},ro(e),{[Nr]:Mr+"="+(t<0?t:t+"-"+(t+r-1))})}function ro({options:e}){const{headers:t}=e;if(t)return T.iterator in t?n.fromEntries(t):t}async function oo(e){await so(e,co)}async function io(e){await so(e,lo)}async function so(e,t){const n=await t(Ur,e,ro(e));e.data=new w(await n.arrayBuffer()),e.size=e.data.length}async function ao(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,ro(e)),i=r.headers.get("Content-Length");i&&!r.headers.get("Content-Encoding")?e.size=o(i):await n(e,e.options)}}async function co(e,{fetch:t=fetch,options:r,url:o},i){const s=await t(o,n.assign({},r,{method:e,headers:i}));if(s.status<400)return s;throw 416==s.status?new d(Ir):new d(kr+(s.statusText||s.status))}function lo(e,{url:t},r){return new S((o,i)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",()=>{if(s.status<400){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),o({status:s.status,arrayBuffer:()=>s.response,headers:new c(e)})}else i(416==s.status?new d(Ir):new d(kr+(s.statusText||s.status)))},!1),s.addEventListener("error",e=>i(e.detail?e.detail.error:new d("Network error")),!1),s.open(e,t),r)for(const e of n.entries(r))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()})}class uo extends Pr{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Kr(e,t):new qr(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(e){return this.reader.createReadable(e)}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class fo extends Pr{constructor(e){super(),this.Te=e}async init(){const e=this;e.ve=0;const t=e.Te=await S.all(e.Te.map(So));e._e=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}Ne(e){const{_e:t,size:n}=this,r=t[e];return r===ae?n:r}async readUint8Array(e,t){const n=this,{Te:r}=this;let o,i=0,a=e;for(;r[i]&&a>=r[i].size;)a-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(a+t<=r)o=await Eo(c,a,t);else{const i=r-a;o=$e(await Eo(c,a,i),await n.readUint8Array(e+i,t-i))}}else o=de;return n.ve=s.max(i,n.ve),o}}class wo extends Wr{constructor(e,t=4294967295){super();const r=this;let o,i,s;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const a=new A({async write(t){if(t===Br)return void(s&&await l());const{availableSize:n}=r;if(s)t.length>=n?(await c(t.subarray(0,n)),await l(),t.length>n&&await this.write(t.subarray(n))):await c(t);else{const{value:n,done:a}=await e.next();if(a&&!n)throw new d(Tr);o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await yo(o),i=n.writable,s=i.getWriter(),await this.write(t)}},async close(){s&&(await s.ready,await u())},async abort(e){s&&await s.abort(e)}});async function c(e){const t=e.length;t&&(await s.ready,await s.write(e),o.size+=t,r.availableSize-=t)}async function l(){await u(),r.diskOffset+=o.size,r.diskNumber++,s=null,r.availableSize=r.maxSize}async function u(){await s.close()}n.defineProperty(r,Lr,{get:()=>a})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(Br)}finally{e.releaseLock()}}}class po{constructor(e){return t.isArray(e)&&(e=new fo(e)),(e instanceof z||typeof e.getReader==ue)&&(e={readable:cn(e)}),e}}class mo{constructor(e){return e.writable===ae&&typeof e.next==ue&&(e=new wo(e)),(e instanceof A||typeof e.getWriter==ue)&&(e={writable:un(e)}),e.size===ae&&(e.size=0),e}}function ho(e){return Boolean(e&&e.getData)}async function yo(e,t){if(!e.init||e.initialized)return S.resolve();await e.init(t)}async function So(e){return e=new po(e),await yo(e),e.size!==ae&&e.readUint8Array||(e=new Gr(await ln(e.readable)),await yo(e)),e}function Eo(e,t,n){return e.readUint8Array(t,n)}function go(e,t){return e.createReadable?e.createReadable(t):e.readUint8Array?Pr.prototype.createReadable.call(e,t):e.readable}const bo="filename",xo="rawFilename",Ro="comment",Fo="rawComment",zo="uncompressedSize",Ao="compressedSize",Do="offset",ko="diskNumberStart",Io="lastModDate",Co="rawLastModDate",To="lastAccessDate",vo="rawLastAccessDate",_o="creationDate",No="rawCreationDate",Uo="internalFileAttributes",Mo="externalFileAttributes",Oo="internalFileAttribute",Lo="externalFileAttribute",Bo="msdosAttributesRaw",Wo="msdosAttributes",Po="msDosCompatible",Vo="zip64",Zo="encrypted",Ho="version",Go="versionMadeBy",jo="zipCrypto",qo="directory",Ko="executable",Yo="compressionMethod",Xo="signature",Jo="extraField",Qo="unixMode",$o="setuid",ei="setgid",ti="sticky",ni=[bo,xo,zo,Ao,Io,Co,Ro,Fo,To,vo,_o,No,Do,ko,Uo,Mo,Oo,Lo,Bo,Wo,Po,Vo,Zo,Ho,Go,jo,qo,Ko,"symlink",Yo,Xo,"crc32",Jo,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",Qo,"unixExternalUpper",$o,ei,ti,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class ri{constructor(e){ni.forEach(t=>this[t]=e[t])}}const oi="File format is not recognized",ii="End of central directory not found",si="End of Zip64 central directory locator not found",ai="Central directory header not found",ci="Local file header not found",li="Zip64 extra field not found",ui="File contains encrypted entry",fi="Encryption method not supported",di="Compression method not supported",wi="Split zip file",pi="Overlapping entry found",mi="Entry data out of bounds",hi="Ambiguous archive",yi="Encrypted central directory is not supported",Si="Unsafe filename",Ei="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",gi="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",bi="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",xi="64-bit value exceeds Number.MAX_SAFE_INTEGER",Ri="unsorted central directory",Fi="unknown version needed to extract",zi="compressed patched data",Ai="malformed extra field",Di="unknown zip64 extensible data",ki="wrapped entries count",Ii="appended data",Ci="prepended data",Ti="trailing central directory data",vi="duplicate filename",_i="mismatched zip64 end of central directory record",Ni="mismatched local file header (general purpose bit flag)",Ui="mismatched local file header (compression method)",Mi="mismatched local file header (crc32 or sizes)",Oi=/^[a-zA-Z]:/,Li="utf-8",Bi="cp437",Wi=[[zo,M],[Ao,M],[Do,M],[ko,O]],Pi={[O]:{Ue:Fs,bytes:4},[M]:{Ue:zs,bytes:8}},Vi=i(o.MAX_SAFE_INTEGER);class Zi{constructor(e,t={}){n.assign(this,{reader:new po(e),options:t,Me:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await yo(r),r.size!==ae&&r.readUint8Array||(r=new Gr(await ln(r.readable)),await yo(r)),r.size<K)throw new d(oi);const o=t.warnings=[],i=ss(e,t.options),a=i==De,c=i!=Ie,u=ls(Ss(t,e,Fe),i),f=function(e,t){if(e===ae)return t;if(!is(e))throw new d(gi);return e}(Ss(t,e,"filenameValidation"),i),w=Ss(t,e,"normalizeFilename"),{Oe:p,Le:m}=await us(r,c,u);if(!p)throw await async function(e){return await os(e)==W}(r)?new d(wi):new d(ii);c&&m>1&&ys("multiple end of central directory records");const h=tt(p);let y=Fs(h,12),S=Fs(h,16);const E=p.offset,g=Rs(h,20),b=E+K+g,x=r.size-b;x>u&&ys(Ii),x>0&&hs(o,Ii);let R=Rs(h,4);const z=r.ve||0;let A,D,k,I,C=Rs(h,6),T=Rs(h,10),v=0,_=X;const N=S==M||y==M||T==O||C==O;if(S!=M&&C!=O&&(S+=rs(r,C)),N){const e=p.offset>=Y?await Eo(r,p.offset-Y,Y):de,t=tt(e);if(e.length==Y&&Fs(t,0)==j){S=rs(r,Fs(t,4))+zs(t,8);let e=await Eo(r,S,X),i=tt(e);const c=p.offset-Y-X;if((e.length<X||Fs(i,0)!=G)&&S!=c&&c>=0){const t=S;S=c,S>t&&(v=S-t),e=await Eo(r,S,X),i=tt(e)}if(e.length<X||Fs(i,0)!=G)throw new d(si);if(D=!0,k=zs(i,4)>44,k){const e=s.min(zs(i,4)-44,r.size-S-X);e>0&&(_+=e,I=function(e){const t={rawExtensibleData:e};if(e.length>=28){const r=tt(e),o=Rs(r,26);n.assign(t,{compressionMethod:Rs(r,0),compressedSize:zs(r,2),uncompressedSize:zs(r,10),encryptionAlgorithm:Rs(r,18),bitLength:Rs(r,20),flags:Rs(r,22),hashAlgorithm:Rs(r,24),hashData:e.subarray(28,28+o)})}return t}(await Eo(r,S+X,e)))}R==O?R=Fs(i,16):R!=Fs(i,16)&&ms(a,o,_i),C==O?C=Fs(i,20):C!=Fs(i,20)&&ms(a,o,_i),T==O?T=zs(i,32):T!=zs(i,32)&&ms(a,o,_i),y==M?y=zs(i,40):y!=zs(i,40)&&ms(a,o,_i),S=rs(r,C)+zs(i,48)+v}}let U=y;const B=p.offset-(D?_+Y:0);if(S>=r.size&&(v=r.size-S-y-K,S=r.size-y-K),z!=R)throw new d(wi);if(S<0)throw new d(oi);let P=0,V=await Eo(r,S,y),H=tt(V);if(y){if(V.length<4)throw new d(oi);const e=B-y;if(S!=e&&C==R){let t=!(Fs(H,P)==Z||Boolean(I&&I.compressedSize)||qi(H));if(!t&&e>=0&&e+4<=r.size&&(t=Fs(tt(await Eo(r,e,4)),0)==Z),t){const t=S;S=e,S>t&&(v+=S-t),V=await Eo(r,S,y),H=tt(V)}}}const J=B-S;if(y!=J&&J>=0&&C==R&&(y=J,V=await Eo(r,S,y),H=tt(V)),S<0||S>=r.size)throw new d(oi);t.directoryOffset=S,t.directoryLength=U;const Q=Es(t,e,"decryptCentralDirectory");let oe,ie;if(Q&&T&&V.length>=4&&Fs(H,0)!=Z&&(k||qi(H))){const e=function(e,t,n){const r=e&&e.compressedSize?e.compressedSize:t;return r>0&&r<=n?r:n}(I,U,V.length);ie=V.subarray(e),V=await Q(V.subarray(0,e),I),H=tt(V),U=V.length,oe=!0}I&&!oe&&(V.length<4||Fs(H,0)==Z)&&hs(o,Di),A=S;const se=Ss(t,e,"filenameEncoding"),ce=Ss(t,e,"commentEncoding"),le=new l;let ue,fe=-1;const we=!a&&!D;!T&&we&&(T=Ki(H,V,P),T&&hs(o,ki));for(let i=0;i<T;i++){const a=new ji(r,t.options);if(P+q>V.length||Fs(H,P)!=Z){if(0==i&&!oe&&(k||qi(H)))throw new d(yi);throw new d(ai)}Xi(a,H,P+6);const c=Boolean(a.bitFlag.languageEncodingFlag),l=P+q,u=l+a.filenameLength,p=u+a.extraFieldLength,m=Rs(H,P+4),h=!(m>>8),y=m>>8==3,S=V.subarray(l,u),E=Rs(H,P+32),g=p+E,b=V.subarray(p,g),x=c,R=c,z=Fs(H,P+38),D=z&L,I={readOnly:Boolean(1&D),hidden:Boolean(2&D),system:Boolean(4&D),directory:Boolean(16&D),archive:Boolean(32&D)},C=Fs(H,P+42),_=Es(t,e,"decodeText")||Ar,N=x?Li:se||Bi,U=R?Li:ce||Bi;let M=_(S,N,ze);if(M===ae&&(M=Ar(S,N)),w){const e=w(M);e!==ae&&(M=e)}if(cs(M,f)){const e=new d(Si);throw e.filename=M,e}let B=_(b,U,Ae);B===ae&&(B=Ar(b,U)),n.assign(a,{index:i,Be:oe,versionMadeBy:m,msDosCompatible:h,zip64:!1,compressedSize:0,uncompressedSize:0,We:E,offset:C,diskNumberStart:Rs(H,P+34),internalFileAttributes:Rs(H,P+36),externalFileAttributes:z,msdosAttributesRaw:D,msdosAttributes:I,rawFilename:S,filenameUTF8:x,commentUTF8:R,rawExtraField:V.subarray(u,p),rawComment:b,filename:M,comment:B}),Ji(a,a,H,P+6)&&hs(o,Ai,M),a.offset+=v;const W=rs(r,a.diskNumberStart)+a.offset;A=s.min(W,A),W<fe&&hs(o,Ri,M),fe=W,(a.version&L)>63&&hs(o,Fi,M),32&~a.rawBitFlag||hs(o,zi,M),le.has(a.filename)&&(ue=!0),le.add(a.filename);const G=a.externalFileAttributes>>16&O;a.unixMode===ae&&16877&G&&(a.unixMode=G);const j=Boolean(a.unixMode&te),K=Boolean(a.unixMode&ne),Y=Boolean(512&a.unixMode),X=40960==((a.unixMode===ae?G:a.unixMode)&$),J=!X&&(a.unixMode!==ae?!!(73&a.unixMode):y&&!!(73&G)),Q=a.unixMode!==ae&&(a.unixMode&$)==ee,ie=(G&$)==ee;n.assign(a,{setuid:j,setgid:K,sticky:Y,symlink:X,unixExternalUpper:G,internalFileAttribute:a.internalFileAttributes,externalFileAttribute:a.externalFileAttributes,executable:J,directory:Q||ie||h&&I.directory||a.filename.endsWith(re),zipCrypto:a.encrypted&&!a.extraFieldAES});const de=new ri(a);if(de.getData=(e,n)=>a.getData(e,de,t.Me,n),de.arrayBuffer=async e=>{const n=new F,r=ln(n.readable).then(e=>e.arrayBuffer());return r.catch(()=>{}),await a.getData(n,de,t.Me,e),r},P=g,i==T-1&&we){const e=Ki(H,V,P);e&&(T+=e,hs(o,ki))}const{onprogress:pe}=e;if(pe)try{await pe(i+1,T,new ri(a))}catch{}yield de}let pe=P,me=Yi(V.subarray(P))||(oe?Yi(ie):ae);if(!me&&!oe){const e=S+P,t=s.min(B-e,65541);t>=6&&(me=Yi(await Eo(r,e,t)))}me&&(t.digitalSignature=me,pe=P+6+me.length),(P!=U&&pe!=U||!oe&&P!=y&&pe!=y)&&ms(a,o,Ti),ue&&ms(a,o,vi);const he=Ss(t,e,"extractPrependedData"),ye=Ss(t,e,"extractAppendedData"),Se=(a||he)&&T&&4==A&&await async function(e){const t=await os(e);return t==W||808471376==t}(r)?4:0;return a&&(v||T&&A>Se)&&ys(Ci),(v||T&&A>4)&&hs(o,Ci),he&&(t.prependedData=A>Se?await Eo(r,Se,A-Se):de),t.comment=g?await Eo(r,E+K,g):de,ye&&(t.appendedData=b<r.size?await Eo(r,b,r.size-b):de),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){const{reader:e}=this;e.readUint8Array||!e.readable||e.readable.locked||await e.readable.cancel()}}class Hi{constructor(e={}){const{readable:t,writable:n}=new F,r=new Zi(t,e).getEntriesGenerator();this.readable=new z({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const o={...n,readable:function(){const{readable:e,writable:t}=new F;if(n.getData)return async function(){try{await n.getData(t)}catch(e){try{await t.abort(e)}catch{}}}(),e}()};delete o.getData,e.enqueue(o)}}),this.writable=n}}async function Gi(e,t={}){if(e=new po(e),await yo(e),e.size!==ae&&e.readUint8Array||(e=new Gr(await ln(e.readable)),await yo(e)),e.size<K)return!1;const n=ss(t,{}),r=n!=Ie,o=ls(t[Fe],n),{Oe:i,Le:s}=await us(e,r,o);if(!i||n==De&&s>1)return!1;const a=Rs(tt(i),20),c=i.offset+K+a;return e.size-c<=o}class ji{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,n,r={}){const o=this,i=qe(),{reader:a,index:c,offset:l,diskNumberStart:u,extraFieldAES:f,extraFieldZip64:w,compressionMethod:p,bitFlag:m,rawBitFlag:h,crc32:y,rawLastModDate:S,uncompressedSize:E,compressedSize:g}=o,{dataDescriptor:b}=m,x=t.localDirectory={},R=t.warnings=[],F=rs(a,u)+l,z=await Eo(a,F,oe),D=tt(z);let k=Ss(o,r,we),I=Ss(o,r,pe);const C=Ss(o,r,me);if(Ue(k,I),k=k&&k.length&&k,I=I&&I.length&&I,f&&99!=f.originalCompressionMethod)throw new d(di);if(z.length<oe||Fs(D,0)!=B)throw new d(ci);Xi(x,D,4);const{extraFieldLength:T,filenameLength:v}=x,_=x.dataOffset=F+oe+v+T,N=Ss(o,r,"checkLocalDirectory"),U=ss(r,o.options),M=function(e,t){return e===ae?t!=Ie:Boolean(e)}(N,U),O=function(e,t){return e===ae?t==De:Boolean(e)}(N,U);let W=de;if(O&&(v||T)){const e=await Eo(a,F+oe,v+T);W=e.subarray(0,v),x.rawExtraField=e.subarray(v)}else x.rawExtraField=T?await Eo(a,F+oe+v,T):de;O&&(x.rawFilename=W),Ji(o,x,D,4,!0)&&hs(R,Ai),function(e,t,n,r,o){const{rawFilename:i}=e,s=!o,a=e.Be&&!(8192&~t.rawBitFlag);!r||a||n.length==i.length&&!n.some((e,t)=>e!=i[t])||ms(s,o,"mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&ms(s,o,Ni),t.compressionMethod!=e.compressionMethod&&ms(s,o,Ui),t.bitFlag.dataDescriptor||a||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||ms(s,o,Mi)}(o,x,W,O,M?ae:R);const{lastAccessDate:V,creationDate:Z,uid:H,gid:G}=x;V&&(t.lastAccessDate=V),Z&&(t.creationDate=Z),H!==ae&&t.uid===ae&&(t.uid=H),G!==ae&&t.gid===ae&&(t.gid=G);const j=o.encrypted&&x.encrypted&&!C,q=j&&!f;if(C||(t.zipCrypto=q),j&&!(64&~x.rawBitFlag))throw new d(fi);const K=C?ae:yn(p);if(0!=p&&8!=p&&9!=p&&!K&&!C)throw new d(di);if(j){if(!q&&(f.strength<1||f.strength>3))throw new d(fi);if(!k&&!I)throw new d(ui)}if(_+g>a.size)throw new d(mi);const Y=g,X=cn(a.createReadable({offset:_,size:Y})),J=Ne(Ss(o,r,he)),Q=Ss(o,r,"checkPasswordOnly");let $=Ss(o,r,"checkOverlappingEntry");const ee=Ss(o,r,"checkOverlappingEntryOnly");ee&&($=!0);const{onstart:te,onprogress:ne,onend:re}=r,ie=0!=p&&!C,se=C?g:E,ce=9==p;let le=Ss(o,r,Se);ce&&(le=!1);const ue=Ss(o,r,"checkCrc32"),fe=(ue===ae?Ss(o,r,"checkSignature"):ue)&&!C&&(!j||q||f&&1==f.vendorVersion),be={options:{codecType:Pn,password:k,rawPassword:I,zipCrypto:q,encryptionStrength:f&&f.strength,checkCrc32:fe,checkAuthenticationCode:Ss(o,r,"checkAuthenticationCode"),passwordVerification:q&&(b?S>>>8&L:y>>>24&L),outputSize:se,crc32:y,compressed:ie,encrypted:j,useWebWorkers:Ss(o,r,ye),useCompressionStream:le,transferStreams:Ss(o,r,Ee),deflate64:ce,format:K?K.format:ae,codecURI:K?K.codecURI:ae,compressionMethod:p,rawBitFlag:h,checkPasswordOnly:Q},config:i,ae:{signal:J,size:Y,onstart:te,onprogress:ne,onend:re}};let xe,Re;$&&await async function({reader:e,Pe:t,index:n,offset:r,crc32:o,compressedSize:i,uncompressedSize:s,dataOffset:a,dataDescriptor:c,extraFieldZip64:l,Me:u}){let f=0;if(c&&(f=l?20:12),f){const n=await Eo(e,a+i,f+4),r=tt(n);let c=n.length==f+4&&Fs(r,0)==P;if(c){const e=ns(r,4,l);(t.encrypted&&!t.zipCrypto||e.crc32==o)&&e.compressedSize==i&&e.uncompressedSize==s?f+=4:c=!1}if(n.length>=f){const e=ns(r,c?4:0,l);e.signature=c,t.localDirectory.dataDescriptor=e}}const w={start:r,end:a+i+f,Pe:t};for(const[e,t]of u)if(e!=n&&w.start<t.end&&t.start<w.end){const e=new d(pi);throw e.overlappingEntry=t.Pe,e}u.set(n,w)}({reader:a,Pe:t,index:c,offset:F,crc32:y,compressedSize:g,uncompressedSize:E,dataOffset:_,dataDescriptor:b||x.bitFlag.dataDescriptor,extraFieldZip64:w||x.extraFieldZip64,Me:n});try{if(!ee){Q&&(e=new A),e=new mo(e),await yo(e,function(e,t,n){return s.min(e,n?1032*t:t)}(se,g,ie)),({writable:xe}=e);const{outputSize:t}=await Sr({readable:X,writable:xe},be);if(e.size+=t,t!=se)throw new d(bn)}}catch(t){if(t.outputSize!==ae&&(e.size+=t.outputSize),!Q||t.message!=xt)throw Re=t,t}finally{if((ho(e)||!Ss(o,r,ge))&&xe&&!xe.locked){const e=xe.getWriter();if(Re)try{await e.abort(Re)}catch{}else await e.close()}}return Q||ee?ae:e.getData?e.getData():xe}}function qi(e){const t=s.min(e.byteLength,1024)-3;for(let n=0;n<t;n++)if(134630224==Fs(e,n))return!0;return!1}function Ki(e,t,n){let r=0;for(;n+q<=t.length&&Fs(e,n)==Z;)n+=q+Rs(e,n+28)+Rs(e,n+30)+Rs(e,n+32),r++;return r%65536?0:r}function Yi(e){if(e.length>=6){const t=tt(e);if(Fs(t,0)==V){const n=Rs(t,4);if(6+n<=e.length)return e.subarray(6,6+n)}}}function Xi(e,t,r){const o=e.rawBitFlag=Rs(t,r+2),i=!(1&~o),s=Fs(t,r+6);n.assign(e,{encrypted:i,version:Rs(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&Q)==Q},rawLastModDate:s,lastModDate:gs(s),filenameLength:Rs(t,r+22),extraFieldLength:Rs(t,r+24)})}function Ji(e,t,r,o,i){const{rawExtraField:s}=t,l=t.extraField=new c,u=tt(s);let f=0,w=!1;try{for(;f<s.length;){const e=Rs(u,f),t=Rs(u,f+2);l.set(e,{type:e,data:s.slice(f+4,f+4+t)}),f+=4+t}}catch{w=!0}f>s.length&&(w=!0);const p=Rs(r,o+4);n.assign(t,{signature:Fs(r,o+10),crc32:Fs(r,o+10),compressedSize:Fs(r,o+14),uncompressedSize:Fs(r,o+18)});const m=l.get(1);m&&(function(e,t){t.zip64=!0;const n=tt(e.data),r=Wi.filter(([e,n])=>t[e]==n),o=r.reduce((e,[,t])=>e+Pi[t].bytes,0);if(e.data.length<o)throw new d(li);for(let o=0,i=0;o<r.length;o++){const[s,a]=r[o],c=Pi[a];t[s]=e[s]=c.Ue(n,i),i+=c.bytes}}(m,t),t.extraFieldZip64=m);const h=l.get(28789);h&&(Qi(h,bo,xo,t,e),t.extraFieldUnicodePath=h);const y=l.get(25461);y&&(Qi(y,Ro,Fo,t,e),t.extraFieldUnicodeComment=y);const S=l.get(39169);S&&S.data.length>=7?(function(e,t,r){const o=tt(e.data),i=xs(o,4);n.assign(e,{vendorVersion:xs(o,0),vendorId:xs(o,2),strength:i,originalCompressionMethod:r,compressionMethod:Rs(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=ae)}(S,t,p),t.extraFieldAES=S):t.compressionMethod=p;const E=l.get(13);E&&($i(E,t),t.extraFieldPkwareUnix=E);const g=l.get(22613);g&&($i(g,t),t.extraFieldUnixType1=g);const b=l.get(10);b&&(function(e,t){const r=tt(e.data);let o,i=4;try{for(;i<e.data.length&&!o;){const t=Rs(r,i),n=Rs(r,i+2);1==t&&(o=e.data.slice(i+4,i+4+n)),i+=4+n}}catch{}if(o&&24==o.length){const r=tt(o),i=r.getBigUint64(0,!0),s=r.getBigUint64(8,!0),a=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:i,rawLastAccessDate:s,rawCreationDate:a});const c={lastModDate:bs(i),lastAccessDate:bs(s),creationDate:bs(a)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:s,rawCreationDate:a})}}(b,t),t.extraFieldNTFS=b);const x=l.get(30805);let R;if(x&&(R=es(x,t,!1),t.extraFieldUnix=x),!R){const e=l.get(30837);e&&(es(e,t,!0),t.extraFieldInfoZip=e)}const F=l.get(J);F&&(function(e,t,n){if(!e.data.length)return;const r=tt(e.data),o=xs(r,0),i=[],s=[];n?(1&~o||(i.push(Io),s.push(Co)),2&~o||(i.push(To),s.push(vo)),4&~o||(i.push(_o),s.push(No))):e.data.length>=5&&(i.push(Io),s.push(Co));let c=1;i.forEach((n,o)=>{if(e.data.length>=c+4){const i=Fs(r,c);t[n]=e[n]=new a(1e3*(0|i));const l=s[o];e[l]=i}c+=4})}(F,t,i),t.extraFieldExtendedTimestamp=F);const z=l.get(6534);return z&&(t.extraFieldUSDZ=z),w}function Qi(e,t,r,o,i){if(e.data.length<5)return void(e.valid=!1);const s=tt(e.data),a=new ft;a.append(i[r]);const c=tt(new w(4));c.setUint32(0,a.get(),!0);const l=Fs(s,1),u=xs(s,0);n.assign(e,{version:u,[t]:Ar(e.data.subarray(5)),valid:1==u&&!i.bitFlag.languageEncodingFlag&&l==Fs(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function $i(e,t){if(e.data.length<8)return;const r=tt(e.data),o={lastAccessDate:new a(1e3*(0|Fs(r,0))),lastModDate:new a(1e3*(0|Fs(r,4)))};e.data.length>=12&&(o.uid=Rs(r,8),o.gid=Rs(r,10)),n.assign(e,o),n.assign(t,o)}function es(e,t,r){try{const o=tt(e.data);let i,s;if(r){let t=0;const r=xs(o,t++),a=xs(o,t++);i=ts(e.data.subarray(t,t+a)),t+=a;const c=xs(o,t++);s=ts(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:i,gid:s})}else e.data.length>=4&&(i=Rs(o,0),s=Rs(o,2),n.assign(e,{uid:i,gid:s}));return i!==ae&&(t.uid=i),s!==ae&&(t.gid=s),i!==ae||s!==ae}catch{}}function ts(e){const t=new w(4);return t.set(e,0),new h(t.buffer,t.byteOffset,4).getUint32(0,!0)}function ns(e,t,n){const r=Fs(e,t);let o,i;return n?(o=zs(e,t+4),i=zs(e,t+12)):(o=Fs(e,t+4),i=Fs(e,t+8)),{crc32:r,compressedSize:o,uncompressedSize:i}}function rs(e,t){return e.Ne?e.Ne(t):0}async function os(e){return Fs(tt(await Eo(e,0,4)))}function is(e){return e===De||e===ke||e===Ie}function ss(e,t){return as(e,as(t,ke))}function as(e,t){const n=e.strictness;if(n!==ae){if(!is(n))throw new d(Ei);return n}const r=e.checkAmbiguity;return r===ae?t:r?De:t==Ie?Ie:ke}function cs(e,t){if(t==Ie)return!1;const n=e.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(n.includes("..")||e.startsWith("/")||e.startsWith("\\\\")||Oi.test(e))||t==De&&(n.includes(".")||n.includes(""))}function ls(e,t){if(e!==ae){const t=Le(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new d(bi);return t}return t==De?0:t==Ie?1/0:O}async function us(e,t,n){const{size:r}=e,o=s.min(r,65557),i={count:64};let a,c,l=0;for await(const[n,s,u,f,d]of fs(e,o)){const o=Rs(n,f+20);if(d+K+o==r){const o=await ws(e,n,s,f,d,r,i);if(2==o){if(a||(a=ds(u,f,d)),l++,!t||l>1)break}else 1!=o||c||(c=ds(u,f,d))}}return a||(a=c),a||(a=await async function(e,t,n){const{size:r}=e,o=s.min(r,t==1/0?r:65557+t);let i,a;for await(const[t,s,c,l,u]of fs(e,o)){const o=ds(c,l,u);i||(i=o);const f=await ws(e,t,s,l,u,r,n);if(2==f)return o;1!=f||a||(a=o)}return a||i}(e,n,i)),{Oe:a,Le:l}}async function*fs(e,t){const n=e.size-t,r=await Eo(e,n,t),o=tt(r);for(let e=r.length-K;e>=0;e--)Fs(o,e)==H&&(yield[o,n,r,e,n+e])}function ds(e,t,n){return{offset:n,buffer:e.slice(t,t+K).buffer}}async function ws(e,t,n,r,o,i,s){const a=Rs(t,r+10),c=Fs(t,r+12),l=Fs(t,r+16);if(a==O||c==M||l==M)return await ps(e,t,n,o-Y,i,s)==j?2:0;if(!a&&!c)return 1;const u=Rs(t,r+6);for(const r of[o-c,rs(e,u)+l])if(await ps(e,t,n,r,i,s)==Z)return 2;return 0}async function ps(e,t,n,r,o,i){return r<0||r+4>o?ae:r>=n?Fs(t,r-n):i.count>0?(i.count--,Fs(tt(await Eo(e,r,4)),0)):ae}function ms(e,t,n){e?ys(n):hs(t,n)}function hs(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==ae&&(r.filename=n),e.push(r)}}function ys(e){const t=new d(hi);throw t.reason=e,t}function Ss(e,t,n){return t[n]===ae?e.options[n]:t[n]}function Es(e,t,n){return _e(Ss(e,t,n))}function gs(e){const t=(4294901760&e)>>16,n=e&O,r=new a(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<se?se:r}function bs(e){return new a(o(e/i(1e4)-i(116444736e5)))}function xs(e,t){return e.getUint8(t)}function Rs(e,t){return e.getUint16(t,!0)}function Fs(e,t){return e.getUint32(t,!0)}function zs(e,t){const n=e.getBigUint64(t,!0);if(n>Vi)throw new d(xi);return o(n)}var As=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:hi,ERR_BAD_FORMAT:oi,ERR_CENTRAL_DIRECTORY_NOT_FOUND:ai,ERR_ENCRYPTED:ui,ERR_ENCRYPTED_CENTRAL_DIRECTORY:yi,ERR_ENTRY_DATA_OUT_OF_BOUNDS:mi,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:si,ERR_EOCDR_NOT_FOUND:ii,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:li,ERR_INVALID_AUTHENTICATION_CODE:bt,ERR_INVALID_COMPRESSED_DATA:xn,ERR_INVALID_CRC32:Rn,ERR_INVALID_FILENAME_VALIDATION:gi,ERR_INVALID_MAX_APPENDED_DATA_SIZE:bi,ERR_INVALID_PASSWORD:Et,ERR_INVALID_SIGNATURE:gt,ERR_INVALID_STRICTNESS:Ei,ERR_INVALID_UNCOMPRESSED_SIZE:bn,ERR_LOCAL_FILE_HEADER_NOT_FOUND:ci,ERR_OVERLAPPING_ENTRY:pi,ERR_SPLIT_ZIP_FILE:wi,ERR_UNSAFE_FILENAME:Si,ERR_UNSUPPORTED_COMPRESSION:di,ERR_UNSUPPORTED_ENCRYPTION:fi,ERR_UNSUPPORTED_UINT64:xi,ERR_WORKER_STARTUP_TIMEOUT:Hn,WARNING_APPENDED_DATA:Ii,WARNING_COMPRESSED_PATCHED_DATA:zi,WARNING_DUPLICATE_FILENAME:vi,WARNING_MALFORMED_EXTRA_FIELD:Ai,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Ni,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:Ui,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:Mi,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:_i,WARNING_PREPENDED_DATA:Ci,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Ti,WARNING_UNKNOWN_VERSION:Fi,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Di,WARNING_UNSORTED_CENTRAL_DIRECTORY:Ri,WARNING_WRAPPED_ENTRIES_COUNT:ki,ZipReader:Zi,ZipReaderStream:Hi,isZipFile:Gi});const Ds="File already exists",ks="Zip file comment exceeds 64KB",Is="Invalid zip file comment (must be a Uint8Array)",Cs="File entry comment exceeds 64KB",Ts="Invalid file entry comment (must be a string)",vs="Invalid date (must be a valid Date instance)",_s="File entry name exceeds 64KB",Ns="Version exceeds 65535",Us="The strength must equal 1, 2, or 3",Ms="Encryption is not supported in USDZ files",Os="Encryption is not supported when the 'passThrough' option is set",Ls="Invalid extra field (must be a Map)",Bs="Invalid extra field type (must be integer 0..65535)",Ws="Invalid extra field data (must be a Uint8Array)",Ps="Extra field data exceeds 64KB",Vs=-2147483648,Zs=2147483647,Hs=i(0),Gs=i("0x7fffffffffffffff"),js="Zip64 is not supported (set the 'zip64' option to 'true')",qs="Undefined uncompressed size",Ks="Undefined compression method",Ys="Undefined reader",Xs="Zip file not empty",Js="Invalid uid (must be integer 0..2^32-1)",Qs="Invalid gid (must be integer 0..2^32-1)",$s="Invalid UNIX mode (must be integer 0..65535)",ea="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",ta="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",na="Invalid msdosAttributesRaw (must be integer 0..255)",ra="Invalid msdosAttributes (must be an object with boolean flags)",oa="Invalid level (must be integer 0..9)",ia="Signature data exceeds 64KB",sa=new w([7,0,2,0,65,69,3,0,0]),aa="infozip",ca="unix";let la=0;const ua=[];class fa{constructor(e,t={}){e=new mo(e);const{availableSize:r=ce,maxSize:o=ce}=e,i=r>0&&r!==ce&&o>0&&o!==ce;n.assign(this,{writer:e,Ve:i,options:t,Ze:new c,He:new l,offset:t[xe]===ae?e.size||e.writable.size||0:t[xe],Ge:t[xe]===ae?0:t[xe]-(e.size||e.writable.size||0),je:new l,qe:[],Ke:0,Ye:ae})}prependZip(e){return wa(this,async function(e,t){if(e.He.size)throw new d(Xs);await e.Xe(t)}(this,e))}appendZip(e){return wa(this,this.Xe(e))}async Xe(e){const r=this,{je:o,He:i,Ze:s}=r;for(;o.size;)await S.allSettled(t.from(o));let a;const l=new S(e=>a=e);o.add(l);const u=[];let f;try{e=new po(e),await yo(e),e.size!==ae&&e.readUint8Array||(e=new Gr(await ln(e.readable)),await yo(e));const{ZipReader:o}=await S.resolve().then(function(){return As}),a=new o(e),l=await a.getEntries();await a.close(),await yo(r.writer);const{directoryOffset:w}=a;l.forEach(({filename:e})=>{if(i.has(e))throw new d(Ds);i.add(e),u.push(e)}),r.Je=!0;const{Qe:p}=r;r.Qe=new S(e=>f=()=>{r.Je=!1,e()}),await p,r.Ve&&(delete r.Ve,await async function(e){return tt(await Eo(e,0,4)).getUint32(0,!0)==W}(e)||(await Ca(r.writer,ka()),r.offset+=4));const m=await async function(e,n,r,o){const{writer:i}=e,s=new c;if(i.closeDisk){const a=t.from(r).sort((e,t)=>Da(n,e)-Da(n,t));let c=0;for(const t of a){const r=Da(n,t);await za(e,n,c,r-c),xa(i,await Aa(n,r))&&await i.closeDisk(),s.set(t,{offset:Ra(e,i),diskNumberStart:ga(i)}),c=r}await za(e,n,c,o-c)}else{const t=e.offset;await za(e,n,0,o),r.forEach(e=>s.set(e,{offset:t+Da(n,e),diskNumberStart:0}))}return s}(r,e,l,w);l.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,bitFlag:i,encrypted:a,uncompressedSize:c,compressedSize:l,extraFieldZip64:u}=e;let{compressionMethod:f,rawExtraField:d}=e;const{level:w,languageEncodingFlag:p,dataDescriptor:h}=i;d=Fa(d||de),e.extraFieldAES&&(f=99);const y=Ya(d),S=Boolean(u)&&u.uncompressedSize!==ae,E=Boolean(u)&&u.compressedSize!==ae,g=-7&Ja(w,p,h,a,f)|w<<1,{$e:b,et:x}=Xa({version:t,bitFlag:g,compressionMethod:f,uncompressedSize:c,compressedSize:l,rawLastModDate:r,rawFilename:o,nt:E,ot:S,extraFieldLength:y}),{crc32:R}=e;R!==ae&&ja(x,10,R);const{offset:F,diskNumberStart:z}=m.get(e);n.assign(e,{ot:S,nt:E,offset:F,diskNumberStart:z,it:!1,st:de,ct:de,lt:de,ut:de,ft:de,rawExtraField:d,wt:de,extendedTimestamp:!1,$e:b,et:x}),s.set(e.filename,e)})}catch(e){throw u.forEach(e=>i.delete(e)),e}finally{a(),o.delete(l),f&&f()}}add(e="",r,c={}){const l=this,{je:u}=l,f=async function(e,r,c,l){if(Ma(e,l=n.assign({},l),qo)&&!r.endsWith(re)&&(r+=re),e.He.has(r))throw new d(Ds);e.He.add(r),la<qe().maxWorkers?la++:await new S(e=>ua.push(e));try{return await async function(e,r,c,l){const u=function(e,n,r){let o=Ma(e,r,Po),i=Ma(e,r,Go,o?20:768);const s=Ma(e,r,Ko),a=Pa(e,r,"uid"),c=Pa(e,r,"gid");let l=Pa(e,r,Qo),u=Ma(e,r,"unixExtraFieldType"),f=Ma(e,r,$o),w=Ma(e,r,ei),p=Ma(e,r,ti);if(Oe(a,M,Js),Oe(c,M,Qs),Oe(l,O,$s),u!==ae&&u!==aa&&u!==ca)throw new d(ea);if(u===ca&&(a!==ae&&a>O||c!==ae&&c>O))throw new d(ta);u!==ae||a===ae&&c===ae||(u=aa);let m=Pa(e,r,Bo),h=Ma(e,r,Wo);const y=m!==ae||h!==ae;if(a!==ae||c!==ae||l!==ae||u||s?(o=!1,i=i&L|768):y&&(o=!0,i&=L),Oe(m,L,na),h&&("object"!=typeof h||t.isArray(h)))throw new d(ra);if(i>O)throw new d(Ns);let S=Ba(e,r,Mo,Lo);const E=S!==ae;E||(S=0),!r[qo]&&n.endsWith(re)&&(r[qo]=!0);const g=Ma(e,r,qo);if(g?(n.endsWith(re)||(n+=re),E||(S=16,o||(S|=16877<<16))):o||E||(S=s?493<<16:27525120),!o){const e=l!==ae||Boolean(f||w||p);l=l===ae?S>>16&O:l&O,f?l|=te:f=Boolean(l&te),w?l|=ne:w=Boolean(l&ne),p?l|=512:p=Boolean(512&l),E&&!e||(g?l=-61441&l|ee:l&$||(l|=32768),S=(l&O)<<16|S&O)}({msdosAttributesRaw:m,msdosAttributes:h}=function(e,t){if(e!==ae)e&=L;else if(t!==ae){const{readOnly:n,hidden:r,system:o,directory:i,archive:s}=t;let a=0;n&&(a|=1),r&&(a|=2),o&&(a|=4),i&&(a|=16),s&&(a|=32),e=a&L}return t===ae&&(t={readOnly:Boolean(1&e),hidden:Boolean(2&e),system:Boolean(4&e),directory:Boolean(16&e),archive:Boolean(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}}(m,h)),y&&(S=S&M|m&L);const b=S>>16&O,x=l!==ae&&40960==(l&$);return{name:n,ht:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:S,unixExternalUpper:b,uid:a,gid:c,unixMode:l,unixExtraFieldType:u,symlink:x,setuid:f,setgid:w,sticky:p,msdosAttributesRaw:m,msdosAttributes:h}}}(e,r,l);({name:r}=u);const f=function(e,t,n){const r=La(e,n,"encodeText")||wt;let i=r(t,ze);if(i===ae&&(i=wt(t)),Ya(i)>O)throw new d(_s);const s=n[Ro]||"";if(typeof s!=fe)throw new d(Ts);let c=r(s,Ae);if(c===ae&&(c=wt(s)),Ya(c)>O)throw new d(Cs);const l=Ma(e,n,Ho);if(l!==ae&&l>O)throw new d(Ns);const u=Oa(e,n,Io,new a),f=Ma(e,n,Co),w=Oa(e,n,To),p=Oa(e,n,_o),m=Ba(e,n,Uo,Oo,0),h=Ma(e,n,me),y=Ma(e,n,we),S=Ma(e,n,pe);Ue(y,S);const E=Pa(e,n,"encryptionStrength",3),g=Ma(e,n,jo),b=Ma(e,n,"extendedTimestamp",!0),x=Ma(e,n,"ntfsTimestamp"),R=Ma(e,n,"keepOrder",!0),F=Ma(e,n,ye),z=Ma(e,n,Ee),A=Ma(e,n,"bufferedWrite"),D=La(e,n,"createTempStream"),k=Ma(e,n,"dataDescriptorSignature",!0),I=Ne(Ma(e,n,he)),C=Ma(e,n,"useUnicodeFileNames",!0),T=Ma(e,n,Yo),v=h||T===ae?ae:yn(T);if(!h&&T!==ae&&0!==T&&8!==T&&!v)throw new d("Compression method not supported");let _=Pa(e,n,"level");if(Oe(_,9,oa),e.options[Re]){if(y!==ae||S!==ae)throw new d(Ms);_===ae&&T===ae&&(_=0)}h&&(_=ae);let N=Ma(e,n,Se),U=Ma(e,n,be);A&&U===ae&&(U=!1),(U===ae||g&&!h)&&(U=!0),_!==ae&&6!=_&&(N=!1);const M=Ma(e,n,Vo);if(!(g||y===ae&&S===ae||o.isInteger(E)&&E>=1&&E<=3))throw new d(Us);const L=ha(n[Jo]),B=ha(n.localExtraField),W=ha(n.centralExtraField);return{comment:s,ht:{rawFilename:i,rawComment:c,version:l,lastModDate:u,rawLastModDate:f,lastAccessDate:w,creationDate:p,internalFileAttributes:m,passThrough:h,password:y,rawPassword:S,encryptionStrength:E,zipCrypto:g,extendedTimestamp:b,ntfsTimestamp:x,keepOrder:R,useWebWorkers:F,transferStreams:z,bufferedWrite:A,createTempStream:D,dataDescriptorSignature:k,signal:I,useUnicodeFileNames:C,compressionMethod:T,format:v?v.format:ae,codecURI:v?v.codecURI:ae,yt:v?v.versionNeeded:ae,level:_,useCompressionStream:N,dataDescriptor:U,zip64:M,rawExtraField:L,St:B,wt:W}}}(e,r,l),{comment:p}=f,m=l[Jo];e.Ze.set(r,ae);const h=e.Ye,y={};let E,g;f.ht.keepOrder&&(y.Et=new S(e=>E=e)),e.Ye=y;try{const{ht:t}=f;0==t.level||t.compressionMethod!==ae||t.passThrough||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;if(n&&!n.me)return!0;if(_n(t)||vn(t,An))return!0;if(n)try{return await void 0,!0}catch{return!1}return!1}(qe())||(t.level=0);const o=await async function(e,t,{ht:r},o){if(r.passThrough&&!t&&!Ma(e,o,qo))throw new d(Ys);let i;return t&&(t=new po(t),await yo(t),({size:i}=t)),n.assign({reader:t},function(e,t,n,r,o){const{passThrough:i,zipCrypto:s,password:a,rawPassword:c,encryptionStrength:l}=r;let{dataDescriptor:u,zip64:f,level:w,compressionMethod:p}=r,m=0,h=0;if(i&&t){if(h=o[zo],h===ae)throw new d(qs);if(p===ae)throw new d(Ks)}const y=!0===f,S=Ma(e,o,Zo);if(t&&i&&!S&&Ya(a,c))throw new d(Os);const E=t&&(Boolean(a&&Ya(a)||c&&Ya(c))||i&&S);t||(w=0,p=0);const g=E?s?12:16+4*l:0;t&&(i?(o.uncompressedSize=h,m=n===ae?Va(h)+g:n):n===ae?(u=!0,(f||f===ae)&&(f=!0,h=m=4294967296)):(o.uncompressedSize=h=n,m=(Za(p,w)?Va(h):h)+g));const b=!(E||t&&(0!==n||i)||Za(p,w));b&&!s&&Ma(e,o,be)===ae&&(u=!1);const x=y||h>=M,R=y||m>=M;if(x||R){if(!1===f)throw new d(js);f=!0}return f=f||!1,{gt:m,ht:{dataDescriptor:u,bt:b,zip64:f,ot:x,nt:R,uncompressedSize:h,level:w,compressionMethod:p,encrypted:E}}}(e,Boolean(t),i,r,o))}(e,c,f,l);({reader:c}=o);const p=ba(e.writer),m=ga(e.writer),b=function(e){const{rawFilename:t,lastModDate:n,rawLastModDate:r,lastAccessDate:o,creationDate:i,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:f,dataDescriptor:w,directory:p,rawExtraField:m,St:h,encryptionStrength:y,extendedTimestamp:S,ntfsTimestamp:E,passThrough:g,encrypted:b,ot:x,nt:R,uncompressedSize:F,crc32:z}=e;let{version:A,compressionMethod:D}=e;const k=!p&&Za(D,c);let I;const C=g||!k,T=l&&(e.bufferedWrite||!w||!x&&!R||C),v=T||l&&w&&(x||R);if(l&&(x||R)){const e=20,t=Ea(e);if(t.xt(1),t.xt(e-4),I=t.Rt,T&&(t.Ft(F),C)){const e=b?u?12:16+4*y:0;t.Ft(g?0:F+e)}}else I=de;let _,N,U,M,L;if(b&&!u){const e=Ea(Ya(sa)+2);e.xt(39169),e.zt(sa),_=e.Rt,_[8]=y}else _=de;if(S){const e=_a(n),t=Na(e);if(t){const t=9+(o?4:0)+(i?4:0),n=Ea(t);M=1+(o?2:0)+(i?4:0),n.xt(J),n.xt(t-4),n.At(M),n.Dt(e),o&&n.Dt(Ua(_a(o))),i&&n.Dt(Ua(_a(i))),U=n.Rt}else U=de;if(E===ae?!t||Boolean(o||i):E)try{const e=va(n),t=Ea(36);t.xt(10),t.xt(32),t.kt(4),t.xt(1),t.xt(24),t.Ft(e),t.Ft(o?va(o):e),t.Ft(i?va(i):e),N=t.Rt}catch{N=de}else N=de}else N=U=de;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=aa||t===ae&&n===ae)if(r!=ca||t===ae&&n===ae)L=de;else{const e=Ea(8);e.xt(30805),e.xt(4),e.xt((t===ae?0:t)&O),e.xt((n===ae?0:n)&O),L=e.Rt}else{const e=Sa(t===ae?0:t),r=Sa(n===ae?0:n),o=3+e.length+r.length,i=Ea(4+o);i.xt(30837),i.xt(o),i.At(1),i.At(e.length),i.zt(e),i.At(r.length),i.zt(r),L=i.Rt}}catch{L=de}D===ae&&(D=k?8:0),A===ae&&(A=0!=D||p||b?20:10);const{yt:W}=e;k&&W!==ae&&(A=A>W?A:W),l&&(A=A>45?A:45),b&&!u&&(A=A>51?A:51,g&&z!==ae&&(_[4]=1),Ga(tt(_),9,D),D=99);const P=v?Ya(I):0,V=P+Ya(_,U,N,L,m,h);if(V+(e[Re]?67:0)>O)throw new d(Ps);const Z=new a(2e3*s.ceil(s.floor(n.getTime()/1e3)/2)),{$e:H,et:G,rawLastModDate:j}=Xa({version:A,bitFlag:Ja(c,f,w,b,D),compressionMethod:D,uncompressedSize:F,lastModDate:Z<se?se:Z>ie?ie:Z,rawLastModDate:r,rawFilename:t,nt:R,ot:x,extraFieldLength:V}),q=Ea(oe+Ya(t)+V),K=q.Rt,Y=tt(K);return q.Dt(B),q.zt(H),q.zt(t),v&&q.zt(I),q.zt(_),q.zt(U),q.zt(N),q.zt(L),q.zt(m),q.zt(h),w&&(R||ja(Y,18,0),x||ja(Y,22,0)),{It:K,Ct:Y,$e:H,et:G,lastModDate:n,rawLastModDate:j,encrypted:b,compressed:k,version:A,compressionMethod:D,Tt:M,st:de,vt:P,lt:U,ut:N,ft:L,ct:_,extraFieldLength:V}}(l=n.assign({},l,u.ht,f.ht,o.ht,{signature:l[Xo],crc32:l.crc32===ae?l[Xo]:l.crc32,offset:e.offset-p,diskNumberStart:m,[Re]:e.options[Re]})),x=function({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r,o=de,i=0,s=e?20:12;return n&&(s+=4),t&&(o=new w(s),r=tt(o),n&&(i=4,ja(r,0,P))),{_t:o,Nt:r,Ut:i}}(l),R=Ya(b.It,x._t);g=await async function(e,t,r,o,s){const{Ze:a,writer:c}=e,{keepOrder:l,dataDescriptor:u,bt:f,signal:w}=s,{Mt:p,Pe:m,Ot:h,Lt:y}=o,E=e.options[Re];let g,b,x,R,z,A,D=m,k=0;const I=l&&h?h.Et:ae;a.set(t,D);try{s.bufferedWrite||!l||e.Je||e.Ke||!u&&!f?(g=!0,e.Ke++,A=s.createTempStream?await s.createTempStream():new F(ae,ae,{highWaterMark:ce}),A.size=0,await yo(c)):(A=c,await I,await C()),await yo(A);const m=ba(c);e.Ve&&!g&&await Ia(e,c),E&&!g&&ya(o,e.offset-m);const{It:h}=p;g||await T();const y=ga(c),b=Ra(e,c);if(D.diskNumberStart=y,g||(R=!0,z=c.size,await Ca(A,h)),D=await async function(e,t,{diskNumberStart:r,Et:o},s,a,c){const{Mt:l,Bt:u,Wt:f}=s,{$e:w,et:p,lastModDate:m,rawLastModDate:h,encrypted:y,compressed:S,version:E,compressionMethod:g,st:b,vt:x,lt:R,Tt:F,ut:z,ft:A,ct:D}=l,{_t:k}=u,{rawFilename:I,lastAccessDate:C,creationDate:T,password:v,rawPassword:_,level:N,zip64:U,ot:O,nt:B,zipCrypto:W,dataDescriptor:P,directory:V,executable:Z,versionMadeBy:H,rawComment:G,rawExtraField:j,wt:q,useWebWorkers:K,transferStreams:Y,onstart:X,onprogress:J,onend:Q,signal:$,encryptionStrength:ee,extendedTimestamp:te,msDosCompatible:ne,internalFileAttributes:re,externalFileAttributes:oe,uid:ie,gid:se,unixMode:ce,symlink:le,setuid:ue,setgid:fe,sticky:de,unixExternalUpper:we,msdosAttributesRaw:pe,msdosAttributes:me,useCompressionStream:he,passThrough:ye,format:Se,codecURI:Ee}=c,ge={Et:o,versionMadeBy:H,zip64:U,directory:Boolean(V),executable:Boolean(Z),filenameUTF8:!0,rawFilename:I,commentUTF8:!0,rawComment:G,st:b,vt:x,lt:R,ut:z,ft:A,ct:D,rawExtraField:j,wt:q,extendedTimestamp:te,msDosCompatible:ne,internalFileAttributes:re,externalFileAttributes:oe,diskNumberStart:r,uid:ie,gid:se,unixMode:ce,symlink:Boolean(le),setuid:ue,setgid:fe,sticky:de,unixExternalUpper:we,msdosAttributesRaw:pe,msdosAttributes:me};let{crc32:be,uncompressedSize:xe}=c,Re=0;ye||(xe=0);const{writable:Fe}=t;if(e){const n=cn(go(e)),r=e.size,o={options:{codecType:Wn,inputSize:r,level:N,rawPassword:_,password:v,encryptionStrength:ee,zipCrypto:y&&W,passwordVerification:y&&W&&h>>8&L,computeCrc32:!ye,compressed:S&&!ye,encrypted:y&&!ye,useWebWorkers:K,useCompressionStream:he,transferStreams:Y,format:Se,codecURI:Ee,compressionMethod:g},config:a,ae:{signal:$,size:r,onstart:X,onprogress:J,onend:Q}};try{const e=await Sr({readable:n,writable:Fe},o);if(Re=e.outputSize,t.size+=Re,ye||(xe=e.inputSize,y&&!W||(be=e.crc32)),!B&&Re>=M||!O&&xe>=M)throw new d(js)}catch(e){throw e.outputSize!==ae&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,Mt:r,Bt:o},{zip64:s,zipCrypto:a,passThrough:c,dataDescriptor:l}){const{et:u,encrypted:f}=r,{Nt:d,Ut:w}=o;f&&!a&&!c||e===ae||(ja(u,10,e),l&&ja(d,w,e)),s?l&&(qa(d,w+4,i(t)),qa(d,w+12,i(n))):(ja(u,14,t),ja(u,18,n),l&&(ja(d,w+4,t),ja(d,w+8,n)))}({crc32:be,compressedSize:Re,uncompressedSize:xe,Mt:l,Bt:u},c),P&&await Ca(t,k),n.assign(ge,{uncompressedSize:xe,compressedSize:Re,lastModDate:m,rawLastModDate:h,creationDate:T,lastAccessDate:C,encrypted:Boolean(y),zipCrypto:Boolean(W),size:f+Re,compressionMethod:g,version:E,$e:w,et:p,signature:be,crc32:!y||W||ye?be:ae,Tt:F,ot:O,nt:B}),ge}(r,A,D,o,qe(),s),g||(R=!1),a.set(t,D),D.filename=t,g){if(await S.all([A.writable.getWriter().close(),I]),await C(),e.Ve&&await Ia(e,c),x=!0,z=c.size,await T(),D.diskNumberStart=ga(c),D.offset=Ra(e,c),E){const t=o.Wt;ya(o,e.offset-ba(c)),D.size+=o.Wt-t}!function({rawFilename:e,encrypted:t,zip64:n,vt:r,crc32:o,compressedSize:s,uncompressedSize:a,ot:c,nt:l},u,{dataDescriptor:f,passThrough:d}){if(f||((!t||d&&o!==ae)&&ja(u,14,o),l||ja(u,18,s),c||ja(u,22,a)),n&&r){const t=oe+Ya(e)+4;qa(u,t,i(a)),qa(u,t+8,i(s))}}(D,p.Ct,s),await Ca(c,p.It),await Ta(A.readable,c,w,e=>k+=e),c.size+=A.size,x=!1}else D.diskNumberStart=y,D.offset=b;return e.offset+=D.size,D}catch(n){if(x||R){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-z,g&&(e.offset+=k)}throw a.delete(t),n}finally{if(g&&e.Ke--,y&&y(I),b&&b(),g&&A&&A.dispose)try{await A.dispose()}catch{}}async function C(){e.Je=!0;const{Qe:t}=e;e.Qe=new S(t=>b=()=>{e.Je=!1,t()}),await t}async function T(){xa(c,Ya(p.It))&&await c.closeDisk()}}(e,r,c,{Mt:b,Bt:x,Wt:R,Pe:y,Ot:h,Lt:E},l)}catch(t){throw e.Ze.delete(r),t}finally{E&&E(h&&h.Et)}return n.assign(g,{name:r,comment:p,extraField:m,[Oo]:g.internalFileAttributes,[Lo]:g.externalFileAttributes}),new ri(g)}(e,r,c,l)}catch(t){throw e.He.delete(r),t}finally{const e=ua.shift();e?e():la--}}(l,e,r,c);u.add(f);const p=()=>u.delete(f);return S.prototype.then.call(f,p,p),wa(l,f)}remove(e){const{He:t,Ze:n}=this;if(typeof e==fe&&(e=n.get(e)),e&&e.filename!==ae){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=de,n={}){const r=this,{je:o,writer:s}=this,{writable:a}=s;if(!(e instanceof w))throw new d(Is);if(Ya(e)>O)throw new d(ks);for(;o.size;)await S.allSettled(t.from(o));await S.allSettled(r.qe.map(e=>e.Pt));const c=r.qe.filter(e=>e.error&&!e.Vt);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.Vt=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const o=function(e){let t=0;for(const[,n]of e){const{rawFilename:e,ct:r,rawComment:o,ut:i,ft:s,rawExtraField:a,wt:c,extendedTimestamp:l,Tt:u,lastModDate:f,ot:w,nt:p,uncompressedSize:m,compressedSize:h}=n,y=n.offset>=M,S=n.diskNumberStart>=O;let E,g;if(y||S||w||p){const e=4+(w?8:0)+(p?8:0)+(y?8:0)+(S?4:0),t=Ea(e);t.xt(1),t.xt(e-4),w&&t.Ft(m),p&&t.Ft(h),y&&t.Ft(n.offset),S&&t.Dt(n.diskNumberStart),E=t.Rt}else E=de;n.st=E,n.Zt=y,n.it=S;const b=_a(f);if(l&&Na(b)){const e=Ea(9);e.xt(J),e.xt(5),e.At(u),e.Dt(b),g=e.Rt}else g=de;n.lt=g;const x=Ya(E,r,i,s,g,a,c);if(x>O)throw new d(Ps);t+=q+Ya(e,o)+x}return t}(e.Ze),{Ht:s,Gt:a,jt:c}=await async function(e,n,r){const{Ze:o,writer:i}=e,s=new w(n);await yo(i);let a=0,c=0,l=ga(i),u=ba(i),f=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:d,st:w,ct:p,lt:m,ut:h,ft:y,rawExtraField:S,wt:E,rawComment:g,versionMadeBy:b,$e:x,et:R,ot:F,nt:z,it:A,Zt:D,internalFileAttributes:k,externalFileAttributes:I,diskNumberStart:C,uncompressedSize:T,compressedSize:v}=n,_=Ya(w,p,m,h,y,S,E),N=q+Ya(d,g)+_;xa(i,a+N-c)&&(await Ca(i,s.slice(c,a)),c=a,f=0,await i.closeDisk()),0==e&&(l=ga(i),u=ba(i)),F||ja(R,18,T),z||ja(R,14,v),(D||A)&&n.version<45&&Ga(R,0,45);const U=Ea(N);if(U.Dt(Z),U.xt(b),U.zt(x.subarray(0,24)),U.xt(_),U.xt(Ya(g)),U.xt(A?O:C),U.xt(k),U.Dt(I),U.Dt(D?M:t),U.zt(d),U.zt(w),U.zt(p),U.zt(m),U.zt(h),U.zt(y),U.zt(S),U.zt(E),U.zt(g),Ka(s,U.Rt,a),a+=N,f++,r.onprogress)try{await r.onprogress(e+1,o.size,new ri(n))}catch{}}return await Ca(i,c?s.slice(c):s),{Ht:{diskNumber:l,diskOffset:u},Gt:{diskNumber:ga(i),qt:f},jt:s}}(e,o,r),l=await async function(e,t,n){const r=La(e,n,"signCentralDirectory");if(r){const n=await r(t),o=Ya(n);if(o>O)throw new d(ia);const i=Ea(6+o);i.Dt(V),i.xt(o),i.zt(n);const{writer:s}=e;return xa(s,Ya(i.Rt))&&await s.closeDisk(),await Ca(s,i.Rt),6+o}return 0}(e,c,r);await async function(e,t,n,r){const{writer:o}=e,{Ht:s,Gt:a,Kt:c}=r;let{Yt:l}=r,u=e.Ze.size,f=s.diskNumber,w=Ra(e,s);const p=Ya(t);if(p>O)throw new d(ks);let m=Ma(e,n,Vo),h=ga(o);if(xa(o,(m?98:K)+p)&&h++,w>=M||l>=M||u>=O||h>=O){if(!1===m)throw new d(js);m=!0}const y=Ea(m?98:K);xa(o,Ya(y.Rt)+p)&&await o.closeDisk(),h=ga(o);let S=h==a.diskNumber?a.qt:0;m&&(y.Dt(G),y.Ft(44),y.xt(45),y.xt(45),y.Dt(h),y.Dt(f),y.Ft(S),y.Ft(u),y.Ft(l),y.Ft(w),y.Dt(j),y.Dt(h),y.Ft(i(Ra(e,o))+i(l)+i(c)),y.Dt(h+1),Ma(e,n,"supportZip64SplitFile",!0)&&(h=O,f=O),S=O,u=O,w=M,l=M),y.Dt(H),y.xt(h),y.xt(f),y.xt(S),y.xt(u),y.Dt(l),y.Dt(w),y.xt(p),await Ca(o,y.Rt),p&&await Ca(o,t)}(e,n,r,{Ht:s,Gt:a,Yt:o,Kt:l})}(r,e,n),!ho(s)&&Ma(r,n,ge)||await a.getWriter().close(),s.getData?s.getData():a}}class da extends S{then(e,t){const{Xt:n}=this;return n&&(n.Vt=!0),super.then(e,t)}}function wa(e,t){const n=new da((e,n)=>S.prototype.then.call(t,e,n)),r={};return n.Xt=r,r.Pt=S.prototype.then.call(n,ae,e=>r.error=e),e.qe.push(r),n}async function pa(e,t){try{await e.writer.writable.abort(t)}catch{}}function ma(e,t,n){e.je.add(t),t.catch(e=>{try{n(e)}catch{}})}function ha(e){if(!e)return de;if(!(e instanceof c))throw new d(Ls);let t=0,n=0;e.forEach((e,n)=>{if(Me(n,O,Bs),!(e instanceof w))throw new d(Ws);if(Ya(e)>O)throw new d(Ps);t+=4+Ya(e)});const r=new w(t),o=tt(r);return e.forEach((e,t)=>{Ga(o,n,t),Ga(o,n+2,Ya(e)),Ka(r,e,n+4),n+=4+Ya(e)}),r}function ya(e,t){const{Mt:n}=e;let{It:r,extraFieldLength:o}=n,i=64-(t+Ya(r))%64;i<4&&(i+=64);const s=new w(i),a=tt(s);Ga(a,0,6534),Ga(a,2,i-4);const c=r;n.It=r=new w(Ya(c)+i),Ka(r,c),Ka(r,s,Ya(c));const l=tt(r);Ga(l,28,o+i),n.Ct=l,e.Wt+=i}function Sa(e){const t=new w(4);tt(t).setUint32(0,e,!0);let n=4;for(;n>1&&0===t[n-1];)n--;return t.subarray(0,n)}function Ea(e){const t=new w(e),n=tt(t);let r=0;return{Rt:t,At:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},xt:e=>{Ga(n,r,e),r+=2},Dt:e=>{ja(n,r,e),r+=4},Ft:e=>{qa(n,r,i(e)),r+=8},zt:e=>{Ka(t,e,r),r+=Ya(e)},kt:e=>r+=e}}function ga(e){const{diskNumber:t=0}=e;return t}function ba(e){const{diskOffset:t=0}=e;return t}function xa(e,t){const{availableSize:n=ce}=e;return t>n}function Ra(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.Ge:0)}function Fa(e){const t=tt(e);let n=0;for(;n+4<=Ya(e);){const r=4+Ha(t,n+2);if(1==Ha(t,n))return Fa($e(e.subarray(0,n),e.subarray(s.min(n+r,Ya(e)))));n+=r}return e}async function za(e,t,n,r){if(r>0){const{writer:o}=e;let i=0;try{await Ta(go(t,{offset:n,size:r}),o,ae,e=>i+=e)}catch(t){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}throw t}finally{o.size+=i,e.offset+=i}}}async function Aa(e,t){const n=await Eo(e,t,oe);if(Ya(n)<oe)return oe;const r=tt(n);return oe+Ha(r,26)+Ha(r,28)}function Da(e,{offset:t,diskNumberStart:n}){return t+(e.Ne?e.Ne(n):0)}function ka(){const e=new w(4);return ja(tt(e),0,W),e}async function Ia(e,t){delete e.Ve,await Ca(t,ka()),e.offset+=4}async function Ca(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=Ya(t),await r.write(t)}finally{r.releaseLock()}}async function Ta(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new A({async write(e){await o.ready,await o.write(e),r(Ya(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function va(e){if(e){const t=(i(e.getTime())+i(116444736e5))*i(1e4);return t<Hs?Hs:t>Gs?Gs:t}}function _a(e){return s.floor(e.getTime()/1e3)}function Na(e){return e>=Vs&&e<=Zs}function Ua(e){return s.min(Zs,s.max(Vs,e))}function Ma(e,t,n,r){const o=t[n]===ae?e.options[n]:t[n];return o===ae?r:o}function Oa(e,t,n,r){const i=Ma(e,t,n,r);if(null===i)return r;if(i!==ae&&(typeof i.getTime!=ue||o.isNaN(i.getTime())))throw new d(vs);return i}function La(e,t,n){return _e(Ma(e,t,n))}function Ba(e,t,n,r,o){const i=Wa(t,n,r),s=i===ae?Wa(e.options,n,r):i;return s===ae?o:s}function Wa(e,t,n){return e[t]===ae?e[n]:e[t]}function Pa(e,t,n,r){return Le(Ma(e,t,n,r))}function Va(e){return e+5*(s.floor(e/16383)+1)}function Za(e,t){return e===ae?t===ae||t>0:0!==e}function Ha(e,t){return e.getUint16(t,!0)}function Ga(e,t,n){e.setUint16(t,n,!0)}function ja(e,t,n){e.setUint32(t,n,!0)}function qa(e,t,n){e.setBigUint64(t,n,!0)}function Ka(e,t,n){e.set(t,n)}function Ya(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Xa({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:s,rawFilename:a,nt:c,ot:l,extraFieldLength:u}){const f=Ea(26),d=f.Rt,w=tt(d);if(f.xt(e),f.xt(t),f.xt(n),s===ae){const e=new m(1),t=tt(e);Ga(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Ga(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),s=e[0]}return f.Dt(s),f.kt(4),c||o!==ae?f.Dt(c?M:o):f.kt(4),l||r!==ae?f.Dt(l?M:r):f.kt(4),f.xt(Ya(a)),f.xt(u),{$e:d,et:w,rawLastModDate:s}}function Ja(e,t,n,r,o){let i=0;return t&&(i|=Q),n&&(i|=8),8!=o&&9!=o||(e>=0&&e<=3&&(i|=6),e>3&&e<=5&&(i|=4),9==e&&(i|=2)),r&&(i|=1),i}function Qa(e,t){if(!e)return!1;const{Jt:n}=e;return n?n.includes(t):vn(e,t)}const $a=1048576,ec=".zip.js-temp",tc=1048576,nc=1048576,rc=".zip.js-temp",oc="createSyncAccessHandle is only available in dedicated workers";try{!function(e){const t=Xe(Qe(e));n.assign(Pe,t),n.assign(je,t)}({baseURI:void 0===b&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===b?location.href:U&&"SCRIPT"===U.tagName.toUpperCase()&&U.src||new f("zip-core.min.js",b.baseURI).href})}catch{}e.BlobReader=Gr,e.BlobWriter=jr,e.Data64URIReader=class extends Pr{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{Qt:e,$t:r,size:s.floor(.75*(t-r))})}readUint8Array(e,t){const{$t:n,Qt:r}=this,o=new w(t),i=4*s.floor(e/3),a=atob(r.substring(i+n,4*s.ceil((e+t)/3)+n)),c=e-3*s.floor(i/4);let l=0;for(let e=c;e<c+t&&e<a.length;e++)o[e-c]=a.charCodeAt(e),l++;return l<o.length?o.subarray(0,l):o}},e.Data64URIWriter=class extends Vr{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",en:""})}writeUint8Array(e){const t=this;let n,o=t.en;const i=t.en.length;for(t.en="",n=0;n<3*s.floor((i+e.length)/3)-i;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.en+=r.fromCharCode(e[n]);o.length>2?t.data+=R(o):t.en=o+t.en}getData(){return this.data+R(this.en)}},e.ERR_AMBIGUOUS_ARCHIVE=hi,e.ERR_BAD_FORMAT=oi,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=ai,e.ERR_DUPLICATED_NAME=Ds,e.ERR_ENCRYPTED=ui,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=yi,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=mi,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=si,e.ERR_EOCDR_NOT_FOUND=ii,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=li,e.ERR_HTTP_RANGE=Ir,e.ERR_HTTP_RESOURCE_CHANGED=Cr,e.ERR_INVALID_AUTHENTICATION_CODE=bt,e.ERR_INVALID_CODEC_DEFINITION=fn,e.ERR_INVALID_CODEC_MODULE=wn,e.ERR_INVALID_COMMENT=ks,e.ERR_INVALID_COMMENT_TYPE=Is,e.ERR_INVALID_COMPRESSED_DATA=xn,e.ERR_INVALID_CRC32=Rn,e.ERR_INVALID_DATE=vs,e.ERR_INVALID_ENCRYPTION_STRENGTH=Us,e.ERR_INVALID_ENTRY_COMMENT=Cs,e.ERR_INVALID_ENTRY_COMMENT_TYPE=Ts,e.ERR_INVALID_ENTRY_NAME=_s,e.ERR_INVALID_EXTRAFIELD=Ls,e.ERR_INVALID_EXTRAFIELD_DATA=Ps,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=Ws,e.ERR_INVALID_EXTRAFIELD_TYPE=Bs,e.ERR_INVALID_FILENAME_VALIDATION=gi,e.ERR_INVALID_FUNCTION_OPTION=Ce,e.ERR_INVALID_GID=Qs,e.ERR_INVALID_LEVEL=oa,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=bi,e.ERR_INVALID_MAX_WORKERS=Be,e.ERR_INVALID_MSDOS_ATTRIBUTES=na,e.ERR_INVALID_MSDOS_DATA=ra,e.ERR_INVALID_PASSWORD=Et,e.ERR_INVALID_PASSWORD_TYPE=ve,e.ERR_INVALID_SIGNAL=Te,e.ERR_INVALID_SIGNATURE=gt,e.ERR_INVALID_SIGNATURE_DATA=ia,e.ERR_INVALID_STRICTNESS=Ei,e.ERR_INVALID_UID=Js,e.ERR_INVALID_UNCOMPRESSED_SIZE=bn,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=ea,e.ERR_INVALID_UNIX_ID_SIZE=ta,e.ERR_INVALID_UNIX_MODE=$s,e.ERR_INVALID_VERSION=Ns,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Tr,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=ci,e.ERR_OVERLAPPING_ENTRY=pi,e.ERR_RESERVED_COMPRESSION_METHOD=dn,e.ERR_SPLIT_ZIP_FILE=wi,e.ERR_UNDEFINED_COMPRESSION_METHOD=Ks,e.ERR_UNDEFINED_READER=Ys,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=qs,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=Si,e.ERR_UNSUPPORTED_COMPRESSION=di,e.ERR_UNSUPPORTED_CONTEXT=oc,e.ERR_UNSUPPORTED_CRYPTO_API=Rt,e.ERR_UNSUPPORTED_ENCRYPTION=fi,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=Os,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=Ms,e.ERR_UNSUPPORTED_FORMAT=js,e.ERR_UNSUPPORTED_UINT64=xi,e.ERR_WORKER_STARTUP_TIMEOUT=Hn,e.ERR_WRITER_NOT_INITIALIZED=vr,e.ERR_ZIP_NOT_EMPTY=Xs,e.HttpRangeReader=class extends uo{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=uo,e.Reader=Pr,e.SplitDataReader=fo,e.SplitDataWriter=wo,e.TextReader=class extends Gr{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends jr{constructor(e){super(),n.assign(this,{encoding:e,tn:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,tn:t}=this,n=await super.getData();return n.text&&t?n.text():function(e,t){return Dr(e,t,!1)}(new w(await n.arrayBuffer()),e)}},e.Uint8ArrayReader=class extends Pr{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{Rt:e,size:e.length})}readUint8Array(e,t){return this.Rt.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Vr{constructor(e){super(),this.nn=e||262144}init(e=0){n.assign(this,{offset:0,Rt:new w(e>0?e:this.nn)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.Rt.length){let e=t.Rt.length?2*t.Rt.length:t.nn;for(;e<n;)e*=2;const r=t.Rt;t.Rt=new w(e),t.Rt.set(r)}t.Rt.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.Rt.length?this.Rt:this.Rt.slice(0,this.offset)}},e.VERSION="2.8.61",e.WARNING_APPENDED_DATA=Ii,e.WARNING_COMPRESSED_PATCHED_DATA=zi,e.WARNING_DUPLICATE_FILENAME=vi,e.WARNING_MALFORMED_EXTRA_FIELD=Ai,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=Ni,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=Ui,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=Mi,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=_i,e.WARNING_PREPENDED_DATA=Ci,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=Ti,e.WARNING_UNKNOWN_VERSION=Fi,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=Di,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=Ri,e.WARNING_WRAPPED_ENTRIES_COUNT=ki,e.Writer=Vr,e.ZipReader=Zi,e.ZipReaderStream=Hi,e.ZipWriter=fa,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new F;this.readable=t,this.zipWriter=new fa(n,e),this.je=new l}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:o}=new F({start(e){n=e},flush:()=>{!async function(){try{await t.close()}catch(e){await pa(t,e)}}()}});return ma(this,this.zipWriter.add(e,r),e=>n.error(e)),{readable:this.readable,writable:o}}writable(e){let t;const{readable:n,writable:r}=new F({start(e){t=e}});return ma(this,this.zipWriter.add(e,n),e=>t.error(e)),r}async close(e,n={}){const{zipWriter:r}=this,o=(await S.allSettled(t.from(this.je))).filter(e=>"rejected"==e.status).map(e=>e.reason);if(o.length){const[e]=o;try{e.entryErrors=o}catch{}throw await pa(r,e),e}try{return await r.close(e,n)}catch(e){throw await pa(r,e),e}}},e.configure=function(e){n.assign(je,Xe(Qe(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=tc}=e;return function(){const e=[];let n,r,o,i=0,s=!1;const a=new A({async write(o){s?await n.write(o):(e.push(o),i+=o.length,i>t&&await async function(){const t=new F;r=ln(t.readable),n=t.writable.getWriter(),s=!0;for(const t of e)await n.write(t);e.length=0}())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:a,readable:new z({async pull(t){if(s){if(!o){const e=await r;o=e.stream().getReader()}const{value:e,done:n}=await o.read();n?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){o&&await o.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(n){try{await n.abort()}catch{}n=null}r&&(r.catch(()=>{}),r=null),e.length=0}}}},e.createOPFSTempStream=function(e={}){const{thresholdBytes:n=$a,directoryName:r=ec,getDirectory:o=()=>I.storage.getDirectory()}=e;let i;function s(){return i||(i=S.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return function(){const e=[];let r,o,i,a,c=0,l=!1;const u=new A({async write(a){l?await i.write(a):(e.push(a),c+=a.length,c>n&&await async function(){const n=await s();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join(""),o=await n.getFileHandle(r,{create:!0}),i=(await o.createWritable()).getWriter(),l=!0;for(const t of e)await i.write(t);e.length=0}())},async close(){i&&(await i.close(),i=null)}});let f=0;return{writable:u,readable:new z({async pull(t){if(l){if(!a){const e=await o.getFile();a=e.stream().getReader()}const{value:e,done:n}=await a.read();n?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){a&&await a.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await s();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=nc,directoryName:r=rc,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d(oc);const i=o||(()=>I.storage.getDirectory());let a;function c(){return a||(a=S.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),a}return function(){const e=[];let r,o,i=0,a=!1,l=0,u=0;const f=new A({async write(s){a?(o.write(s,{at:l}),l+=s.length):(e.push(s),i+=s.length,i>n&&await async function(){const n=await c();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join("");const i=await n.getFileHandle(r,{create:!0});o=await i.createSyncAccessHandle(),a=!0;for(const t of e)o.write(t,{at:l}),l+=t.length;e.length=0}())},close(){o&&o.flush()}});let d=0;return{writable:f,readable:new z({pull(t){if(a){const e=l-u;if(e<=0)return void t.close();const n=new w(s.min(524288,e)),r=o.read(n,{at:u});r?(u+=r,t.enqueue(n.subarray(0,r))):t.close()}else d<e.length?t.enqueue(e[d++]):t.close()}},{highWaterMark:0}),dispose:async function(){if(o){try{o.close()}catch{}o=null}if(r){try{const e=await c();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=function(){return"application/octet-stream"},e.getRegisteredCodecs=Sn,e.getSupportedCompressionMethods=function(){const{CompressionStream:e,DecompressionStream:t,CompressionStreamFallback:n,DecompressionStreamFallback:r}=qe(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:Qa(n,Fn)||Qa(e,Fn)||Qa(e,An),decompression:Qa(r,Fn)||Qa(t,Fn)||Qa(t,An),registered:!1},{compressionMethod:9,compression:!1,decompression:Qa(r,zn)||Qa(t,zn),registered:!1}];for(const e of Sn()){const t=En(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==ue:ae,decompression:t?typeof t.DecompressionStream==ue:ae,registered:!0})}return o},e.isZipFile=Gi,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:i,DecompressionStream:s,versionNeeded:a}=e;if(!o.isInteger(t)||t<0||t>O||typeof n!=fe||!n.length)throw new d(fn);if(pn.includes(t))throw new d(dn);const c=typeof i==ue||typeof s==ue;if(!(c||typeof r==fe&&r.length))throw new d(fn);mn.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:a}),c&&gn(n,{CompressionStream:i,DecompressionStream:s})},e.resetConfiguration=function(){for(const e of Ge)delete je[e];n.assign(je,Pe)},e.terminateWorkers=async function(){await S.allSettled(wr.map(e=>(Rr(e),e.terminate()))),Gn=ae,jn=!1},e.unregisterCodec=function(e){const t=mn.get(e);if(t){let n;mn.delete(e),mn.forEach(e=>n=n||e.format==t.format),n||hn.delete(t.format)}}});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})}(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:o,BigInt:i,Math:s,Date:a,Map:c,Set:l,Response:u,URL:f,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:m,DataView:h,Blob:y,Promise:S,TextEncoder:E,TextDecoder:g,document:b,crypto:x,btoa:R,TransformStream:F,ReadableStream:z,WritableStream:A,CompressionStream:D,DecompressionStream:I,navigator:k,Worker:C,Symbol:T,setTimeout:_,clearTimeout:v,structuredClone:N}="undefined"!=typeof globalThis?globalThis:this||self;var U=void 0!==b?b.currentScript:null;const O=4294967295,M=65535,L=255,B=67324752,W=134695760,P=W,V=84233040,Z=33639248,H=101010256,G=101075792,j=117853008,q=46,K=22,Y=20,X=56,J=21589,Q=2048,$=61440,ee=16384,te=2048,ne=1024,re="/",oe=30,ie=new a(2107,11,31,23,59,58),se=new a(1980,0,1),ae=void 0,ce=1/0,le="undefined",ue="function",fe="string",de=new w,we="password",pe="rawPassword",me="passThrough",he="signal",ye="useWebWorkers",Se="useCompressionStream",Ee="transferStreams",ge="preventClose",be="dataDescriptor",xe="offset",Re="usdz",Fe="maxAppendedDataSize",ze="filename",Ae="comment",De="strict",Ie="balanced",ke="tolerant",Ce="Invalid option (must be a function)",Te="Invalid signal (must be an AbortSignal instance)",_e="Invalid password (password must be a string, rawPassword must be a Uint8Array)";function ve(e){if(e&&typeof e!=ue)throw new d(Ce);return e}function Ne(e){if(e&&(typeof e.addEventListener!=ue||"boolean"!=typeof e.aborted))throw new d(Te);return e||ae}function Ue(e,t){if(e&&typeof e!=fe||t&&!(t instanceof w))throw new d(_e)}function Oe(e,t,n){if(!o.isInteger(e)||e<0||e>t)throw new d(n)}function Me(e,t,n){e!==ae&&Oe(e,t,n)}function Le(e){return typeof e==fe&&e.trim()?o(e):e}const Be="Invalid maxWorkers (must be an integer greater than 0)";let We=2;try{typeof k!=le&&k.hardwareConcurrency&&(We=k.hardwareConcurrency)}catch{}const Pe={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:We,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof D!=le&&D,DecompressionStream:typeof I!=le&&I},Ve="maxWorkers",Ze=["chunkSize",Ve,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],He=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],Ge=["baseURI","wasmURI","workerURI","useCompressionStream","useWebWorkers","transferStreams",...Ze,...He],je={...Pe};function qe(){return je}function Ke(e){return Ye(e.chunkSize)}function Ye(e){return e=Le(e),o.isInteger(e)&&e>=1?s.max(e,64):65536}function Xe(e){const t={};for(const n of Ge){const r=e[n];r!==ae&&(t[n]=Je(n,r))}return t}function Je(e,t){if(Ze.includes(e)){if(t=Le(t),e==Ve&&(!o.isInteger(t)||t<1))throw new d(Be)}else He.includes(e)&&ve(t);return t}function Qe(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===ae&&r===ae)return e;const o=n.assign({},e);return o.CompressionStreamFallback===ae&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===ae&&(o.DecompressionStreamFallback=r),o}function $e(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function et(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function tt(e){return new h(e.buffer,e.byteOffset,e.byteLength)}const nt=[[],[],[],[],[],[],[],[]];for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=1&t?t>>>1^3988292384:t>>>1;nt[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){const n=nt[t-1][e];nt[t][e]=n>>>8^nt[0][255&n]}const[rt,ot,it,st,at,ct,lt,ut]=nt;class ft{constructor(e){this.o=e||-1}append(e){let t=0|this.o;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const o=new h(e.buffer,e.byteOffset,n),i=n-8;for(;r<=i;r+=8){const e=t^o.getInt32(r,!0),n=o.getInt32(r+4,!0);t=ut[255&e]^lt[e>>>8&255]^ct[e>>>16&255]^at[e>>>24&255]^st[255&n]^it[n>>>8&255]^ot[n>>>16&255]^rt[n>>>24&255]}}for(;r<n;r++)t=t>>>8^rt[255&(t^e[r])];this.o=t}get(){return~this.o}}class dt extends F{constructor(){let e;const t=new ft;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function wt(e){if(typeof E==le){e=unescape(encodeURIComponent(e));const t=new w(e.length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new E).encode(e)}const pt={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=pt.l(n);return 32===r?e.concat(t):pt.m(t,r,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+pt.l(n)},h(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,s.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=pt.S(t,e[n-1]&2147483648>>t-1,1)),e},S:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,l:e=>s.round(e/1099511627776)||32,m(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let o=0;o<e.length;o++)r.push(n|e[o]>>>t),n=e[o]<<32-t;const o=e.length?e[e.length-1]:0,i=pt.l(o);return r.push(pt.S(t+i&31,t+i>32?n:r.pop(),1)),r}},mt={bytes:{R(e){const t=pt.bitLength(e)/8,n=new w(t);let r;for(let o=0;o<t;o++)3&o||(r=e[o/4]),n[o]=r>>>24,r<<=8;return n},F(e){const t=[];let n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],3&~n||(t.push(r),r=0);return 3&n&&t.push(pt.S(8*(3&n),r)),t}}},ht=class{constructor(e){const t=this;t.blockSize=512,t.A=[1732584193,4023233417,2562383102,271733878,3285377520],t.D=[1518500249,1859775393,2400959708,3395469782],e?(t.I=e.I.slice(0),t.C=e.C.slice(0),t.T=e.T):t.reset()}reset(){const e=this;return e.I=e.A.slice(0),e.C=[],e.T=0,e}update(e){const t=this;"string"==typeof e&&(e=mt._.F(e));const n=t.C=pt.concat(t.C,e),r=t.T,o=t.T=r+pt.bitLength(e);if(o>9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const i=new m(n);let s=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);e<=o;e+=t.blockSize)t.v(i.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t}N(){const e=this;let t=e.C;const n=e.I;t=pt.concat(t,[pt.S(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e.T/4294967296)),t.push(0|e.T);t.length;)e.v(t.splice(0,16));return e.reset(),n}U(e,t,n,r){return e<=19?t&n|~t&r:e<=39?t^n^r:e<=59?t&n|t&r|n&r:e<=79?t^n^r:void 0}O(e,t){return t<<e|t>>>32-e}v(e){const n=this,r=n.I,o=t(80);for(let t=0;t<16;t++)o[t]=e[t];let i=r[0],a=r[1],c=r[2],l=r[3],u=r[4];for(let e=0;e<=79;e++){e>=16&&(o[e]=n.O(1,o[e-3]^o[e-8]^o[e-14]^o[e-16]));const t=n.O(5,i)+n.U(e,a,c,l)+u+o[e]+n.D[s.floor(e/20)]|0;u=l,l=c,c=n.O(30,a),a=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+a|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},yt={importKey:e=>new yt.M(mt.bytes.F(e)),L(e,t,n,r){if(n=n||1e4,r<0||n<0)throw new d("invalid params to pbkdf2");const o=1+(r>>5)<<2;let i,s,a,c,l;const u=new ArrayBuffer(o),f=new h(u);let w=0;const p=pt;for(t=mt.bytes.F(t),l=1;w<(o||1);l++){for(i=s=e.encrypt(p.concat(t,[l])),a=1;a<n;a++)for(s=e.encrypt(s),c=0;c<s.length;c++)i[c]^=s[c];for(a=0;w<(o||1)&&a<i.length;a++)f.setInt32(w,i[a]),w+=4}return u.slice(0,r/8)},M:class{constructor(e){const t=this,n=t.B=ht,r=[[],[]];t.W=[new n,new n];const o=t.W[0].blockSize/32;e.length>o&&(e=(new n).update(e).N());for(let t=0;t<o;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.W[0].update(r[0]),t.W[1].update(r[1]),t.P=new n(t.W[0])}reset(){const e=this;e.P=new e.B(e.W[0]),e.V=!1}update(e){this.V=!0,this.P.update(e)}digest(){const e=this,t=e.P.N(),n=new e.B(e.W[1]).update(t).N();return e.reset(),n}encrypt(e){if(this.V)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},St=typeof x!=le&&typeof x.getRandomValues==ue,Et="Invalid password",gt="Invalid signature",bt=gt,xt="zipjs-abort-check-password",Rt="Crypto API not supported";function Ft(e){if(St)return x.getRandomValues(e);throw new d(Rt)}const zt=16,At={name:"PBKDF2"},Dt=n.assign({hash:{name:"HMAC"}},At),It=n.assign({iterations:1e3,hash:{name:"SHA-1"}},At),kt=["deriveBits"],Ct=[8,12,16],Tt=[16,24,32],_t=10,vt=[0,0,0,0],Nt=typeof x!=le,Ut=Nt&&x.subtle,Ot=Nt&&typeof Ut!=le,Mt=mt.bytes,Lt=class{constructor(e){const t=this;t.Z=[[[],[],[],[],[]],[[],[],[],[],[]]],t.Z[0][0][0]||t.H();const n=t.Z[0][4],r=t.Z[1],o=e.length;let i,s,a,c=1;if(4!==o&&6!==o&&8!==o)throw new d("invalid aes key size");for(t.D=[s=e.slice(0),a=[]],i=o;i<4*o+28;i++){let e=s[i-1];(i%o===0||8===o&&i%o===4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%o===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),s[i]=s[i-o]^e}for(let e=0;i;e++,i--){const t=s[3&e?i:i-4];a[e]=i<=4||e<4?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.G(e,0)}decrypt(e){return this.G(e,1)}H(){const e=this.Z[0],t=this.Z[1],n=e[4],r=t[4],o=[],i=[];let s,a,c,l;for(let e=0;e<256;e++)i[(o[e]=e<<1^283*(e>>7))^e]=e;for(let u=s=0;!n[u];u^=a||1,s=i[s]||1){let i=s^s<<1^s<<2^s<<3^s<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=o[c=o[a=o[u]]];let f=16843009*l^65537*c^257*a^16843008*u,d=257*o[i]^16843008*i;for(let n=0;n<4;n++)e[n][u]=d=d<<24^d>>>8,t[n][i]=f=f<<24^f>>>8}for(let n=0;n<5;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}G(e,t){if(4!==e.length)throw new d("invalid aes block size");const n=this.D[t],r=n.length/4-2,o=[0,0,0,0],i=this.Z[t],s=i[0],a=i[1],c=i[2],l=i[3],u=i[4];let f,w,p,m=e[0]^n[0],h=e[t?3:1]^n[1],y=e[2]^n[2],S=e[t?1:3]^n[3],E=4;for(let e=0;e<r;e++)f=s[m>>>24]^a[h>>16&255]^c[y>>8&255]^l[255&S]^n[E],w=s[h>>>24]^a[y>>16&255]^c[S>>8&255]^l[255&m]^n[E+1],p=s[y>>>24]^a[S>>16&255]^c[m>>8&255]^l[255&h]^n[E+2],S=s[S>>>24]^a[m>>16&255]^c[h>>8&255]^l[255&y]^n[E+3],E+=4,m=f,h=w,y=p;for(let e=0;e<4;e++)o[t?3&-e:e]=u[m>>>24]<<24^u[h>>16&255]<<16^u[y>>8&255]<<8^u[255&S]^n[E++],f=m,m=h,h=y,y=S,S=f;return o}},Bt=class{constructor(e,t){this.j=e,this.K=t,this.Y=t}reset(){this.Y=this.K}update(e){return this.X(this.j,e,this.Y)}J(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}$(e){0===(e[0]=this.J(e[0]))&&(e[1]=this.J(e[1]))}X(e,t,n){let r;if(!(r=t.length))return[];const o=pt.bitLength(t);for(let o=0;o<r;o+=4){this.$(n);const r=e.encrypt(n);t[o]^=r[0],t[o+1]^=r[1],t[o+2]^=r[2],t[o+3]^=r[3]}return pt.h(t,o)}},Wt=yt.M;let Pt=Nt&&Ot&&typeof Ut.importKey==ue,Vt=Nt&&Ot&&typeof Ut.deriveBits==ue;class Zt extends F{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){super({start(){Gt(this,e,t,n)},async transform(e,t){const n=this,{password:o,strength:i,ee:s,ready:a}=n;o?(await async function(e,t,n,r){const o=await qt(e,t,n,Yt(r,0,Ct[t])),i=Yt(r,Ct[t]);if(o[0]!=i[0]||o[1]!=i[1])throw new d(Et)}(n,i,o,Yt(e,0,Ct[i]+2)),e=Yt(e,Ct[i]+2),r?t.error(new d(xt)):s()):await a;const c=new w(e.length-_t-(e.length-_t)%zt);t.enqueue(jt(n,e,c,0,_t,!0))},async flush(e){const{te:t,ne:n,re:r,ready:i}=this;if(n&&t){await i;const s=Yt(r,0,r.length-_t),a=Yt(r,r.length-_t);let c=de;if(s.length){const e=Jt(Mt,s);n.update(e);const r=t.update(e);c=Xt(Mt,r)}const l=Yt(Xt(Mt,n.digest()),0,_t);let u=r.length<_t?1:0;for(let e=0;e<_t;e++)u|=l[e]^a[e];if(u&&o)throw new d(bt);e.enqueue(c)}}})}}class Ht extends F{constructor({password:e,rawPassword:t,encryptionStrength:n}){super({start(){Gt(this,e,t,n)},async transform(e,t){const n=this,{password:r,strength:o,ee:i,ready:s}=n;let a=de;r?(a=await async function(e,t,n){const r=Ft(new w(Ct[t]));return $e(r,await qt(e,t,n,r))}(n,o,r),i()):await s;const c=new w(a.length+e.length-e.length%zt);c.set(a,0),t.enqueue(jt(n,e,c,a.length,0))},async flush(e){const{te:t,ne:n,re:r,ready:o}=this;if(n&&t){await o;let i=de;if(r.length){const e=t.update(Jt(Mt,r));n.update(e),i=Xt(Mt,e)}const s=Xt(Mt,n.digest()).slice(0,_t);e.enqueue($e(i,s))}}})}}function Gt(e,t,r,o){n.assign(e,{ready:new S(t=>e.ee=t),password:Kt(t,r),strength:o-1,re:de})}function jt(e,t,n,r,o,i){const{te:s,ne:a,re:c}=e;c.length&&(t=$e(c,t));const l=t.length-o;let u;for(n=function(e,t){if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e}(n,r+(l-l%zt)),u=0;u<=l-zt;u+=zt){const e=Jt(Mt,Yt(t,u,u+zt));i&&a.update(e);const o=s.update(e);i||a.update(o),n.set(Xt(Mt,o),u+r)}return e.re=Yt(t,u),n}async function qt(e,r,o,i){e.password=null;const s=await async function(e,t,n,r,o){if(!Pt)return yt.importKey(t);try{return await Ut.importKey("raw",t,n,!1,o)}catch{return Pt=!1,yt.importKey(t)}}(0,o,Dt,0,kt),a=await async function(e,t,n){if(!Vt)return yt.L(t,e.salt,It.iterations,n);try{return await Ut.deriveBits(e,t,n)}catch{return Vt=!1,yt.L(t,e.salt,It.iterations,n)}}(n.assign({salt:i},It),s,8*(2*Tt[r]+2)),c=new w(a),l=Jt(Mt,Yt(c,0,Tt[r])),u=Jt(Mt,Yt(c,Tt[r],2*Tt[r])),f=Yt(c,2*Tt[r]);return n.assign(e,{keys:{key:l,oe:u,passwordVerification:f},te:new Bt(new Lt(l),t.from(vt)),ne:new Wt(u)}),f}function Kt(e,t){return t===ae?wt(e):t}function Yt(e,t,n){return e.subarray(t,n)}function Xt(e,t){return e.R(t)}function Jt(e,t){return e.F(t)}class Qt extends F{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){en(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=tn(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t[11]^n.passwordVerification))throw new d(Et);e=e.subarray(12)}r?t.error(new d(xt)):t.enqueue(tn(n,e))}})}}class $t extends F{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){en(this,e,t,n)},transform(e,t){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=Ft(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(nn(n,t),0),o=12}else r=new w(e.length),o=0;r.set(nn(n,e),o),t.enqueue(r)}})}}function en(e,t,r,o){n.assign(e,{password:t,rawPassword:r,passwordVerification:o}),function(e,t,r){const o=[305419896,591751049,878082192];if(n.assign(e,{keys:o,ie:new ft(o[0]),se:new ft(o[2])}),r)for(let t=0;t<r.length;t++)rn(e,r[t]);else for(let n=0;n<t.length;n++)rn(e,t.charCodeAt(n))}(e,t,r)}function tn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=on(e)^t[r],rn(e,n[r]);return n}function nn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=on(e)^t[r],rn(e,t[r]);return n}function rn(e,t){let[,n]=e.keys;e.ie.append([t]);const r=~e.ie.get();n=an(s.imul(an(n+sn(r)),134775813)+1),e.se.append([n>>>24]);const o=~e.se.get();e.keys=[r,n,o]}function on(e){const t=2|e.keys[2];return sn(s.imul(t,1^t)>>>8)}function sn(e){return 255&e}function an(e){return 4294967295&e}function cn(e){if(e instanceof z)return e;const t=e.getReader();return new z({async pull(e){const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})}function ln(e,t){e=cn(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=ue||new y([]).stream()instanceof z)return new u(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new A({write(e){r.push(e)}})).then(()=>new y(r,n))}function un(e){if(e instanceof A)return e;const t=e.getWriter();return new A({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const fn="Invalid codec definition",dn="Reserved compression method",wn="Invalid codec module",pn=[0,8,9,99],mn=new c,hn=new c;function yn(e){return mn.get(e)}function Sn(){return t.from(mn.values(),e=>n.assign({},e,hn.get(e.format)))}function En(e){return hn.get(e)}function gn(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=ue&&typeof r!=ue)throw new d(wn);hn.set(e,{CompressionStream:n,DecompressionStream:r})}const bn="Invalid uncompressed size",xn="Invalid compressed data",Rn=gt,Fn="deflate-raw",zn="deflate64-raw",An="gzip",Dn=[31,139,8];class In extends F{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:s,zipCrypto:a,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:d,inputSize:w}=e,p=this;let m,y,S,E=super.readable;const g=f&&En(f),b=c&&o&&!u&&!g&&(!i||a)&&Boolean(s&&r);if(i&&!a||!c||b||(m=new dt,E=Mn(E,m)),o)if(g)E=Ln(E,Un(g.CompressionStream,f,{level:l,chunkSize:t,compressionMethod:d,uncompressedSize:w}));else if(b)S=new kn,E=Ln(E,new r(An)),E=Mn(E,S);else try{E=On(E,s,{level:l,chunkSize:t},r,n)}catch(e){let t;try{t=new r(An)}catch{throw e}E=Ln(E,t),E=Mn(E,new kn)}i&&(a?E=Mn(E,new $t(e)):(y=new Ht(e),E=Mn(E,y))),Nn(p,E,()=>{i&&!a||!c||(p.crc32=b?S.crc32:new h(m.value.buffer).getUint32(0))})}}class kn extends F{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=s.min(t,e.length);if(t-=n,!(e=e.subarray(n)).length)return}const o=n.length+e.length;if(o<=8)return void(n=$e(n,e));const i=o-8,a=s.min(i,n.length);r.enqueue($e(n.subarray(0,a),e.subarray(0,i-a))),n=$e(n.subarray(a),e.subarray(i-a))},flush(){const t=tt(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class Cn extends F{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:s,crc32:a,compressed:c,useCompressionStream:l,deflate64:u,format:f,compressionMethod:p,rawBitFlag:m,outputSize:y}=e;let E,g,b=super.readable;if(i&&(o?b=Mn(b,new Qt(e)):(g=new Zt(e),b=Mn(b,g))),c){const e=f&&En(f);if(e)b=Ln(b,Un(e.DecompressionStream,f,{chunkSize:t,compressionMethod:p,rawBitFlag:m,uncompressedSize:y}));else try{b=On(b,l,{chunkSize:t,deflate64:u},r,n)}catch(e){if(u||y===ae)throw e;let t;try{t=new r(An)}catch{throw e}b=function(e,t,n){const r=new ft;let o,i,s,a=0,c=!1;const l=new S((e,t)=>{i=e,s=t});l.catch(()=>{}),n||i();const u=new F({start(e){const t=new w(10);t.set(Dn),e.enqueue(t)},transform(e,t){t.enqueue(e)},async flush(e){c=!0,p();try{await l}finally{m()}const t=new w(8),o=tt(t);o.setUint32(0,r.get(),!0),o.setUint32(4,n,!0),e.enqueue(t)},cancel(e){s(e)}}),f=new F({transform(e,t){r.append(e),a+=e.length,a>=n?i():c&&p(),t.enqueue(e)},cancel(e){s(e)}});return e=Mn(e,u),Mn(e=Ln(e,t),f);function p(){m(),o=_(()=>s(new d(bn)),5e3)}function m(){v(o)}}(b,t,y)}b=function(e){const t=e.getReader();return new z({async pull(e){let n;try{n=await t.read()}catch(e){if(e&&e.message)throw e;const t=new d(xn);throw t.cause=e,t}const{value:r,done:o}=n;o?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})}(b)}s&&(E=new dt,b=Mn(b,E)),Nn(this,b,()=>{if(s){const e=new h(E.value.buffer);if(a!=e.getUint32(0,!1))throw new d(Rn)}})}}const Tn=new c;function _n(e,t){if(!e)return!1;let n=Tn.get(e);n||(n=new c,Tn.set(e,n));let r=n.get(t);if(r===ae){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function vn(e){return _n(e,Fn)}function Nn(e,t,r){t=Mn(t,new F({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Un(e,t,n){if(!e)throw new d("Compression method not supported");return new e(t,n)}function On(e,t,n,r,o){const i=t&&r?r:o||r,s=n.deflate64?zn:Fn;let a;try{a=new i(s,n)}catch(e){if(!t||!o||i==o)throw e;a=new o(s,n)}return Ln(e,a)}function Mn(e,t){return cn(e).pipeThrough(t)}function Ln(e,t){const n=t.writable.getWriter(),r=e.getReader();return async function(){try{for(;;){await n.ready;const e=await r.read();if(e.done){await n.close();break}await n.write(e.value)}}catch(e){await async function(e,t){try{await e.abort(t)}catch{}}(n,e),await async function(e,t){try{await e.cancel(t)}catch{}}(r,e)}}(),t.readable}const Bn="data",Wn="deflate",Pn="inflate";class Vn extends F{constructor(e,t){super({});const r=this,{codecType:o}=e;let i;o.startsWith(Wn)?i=In:o.startsWith(Pn)&&(i=Cn),r.outputSize=0;let s=0;const a=new i(e,t),c=super.readable,l=new F({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:s})}}),u=new F({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==ae&&r.outputSize>e.outputSize))throw new d(bn)},flush(){const{crc32:e}=a;n.assign(r,{crc32:e,inputSize:s})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(a).pipeThrough(u)})}}class Zn extends F{constructor(e){const t=[];let n=0;function r(){const r=new w(e);let o=0;for(;o<e;){const n=t[0],i=e-o;n.length<=i?(r.set(n,o),o+=n.length,t.shift()):(r.set(n.subarray(0,i),o),t[0]=n.subarray(i),o+=i)}return n-=e,r}(!o.isFinite(e)||e<1)&&(e=65536),super({transform(o,i){for(t.push(o),n+=o.length;n>e;)i.enqueue(r())},flush(e){n&&e.enqueue(function(e,t){const n=new w(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(t,n))}})}}const Hn="Worker startup timeout";let Gn,jn,qn;function Kn(e){e.createWorker?jn=!0:Gn=!1}class Yn{constructor(e,{readable:t,writable:r},{options:o,config:i,ae:s,useWebWorkers:a,transferStreams:c,workerURI:l,createWorker:u},f){const{signal:d}=s;return jn&&(u=ae),n.assign(e,{ce:!0,le:(e.le||0)+1,readable:t.pipeThrough(new Zn(Ke(i))).pipeThrough(new Xn(s),{signal:d}),writable:r,options:n.assign({},o),workerURI:l,createWorker:u,transferStreams:c,terminate:()=>new S(t=>{const{ue:n,ce:r}=e;n?(r?e.fe=t:(n.terminate(),t()),e.de=null):t()}),we(){if(e.ce){const{fe:t}=e;t&&(e.fe=null,e.pe=!0,e.ue.terminate(),t()),e.ce=!1,f(e)}}}),Gn===ae&&(Gn=typeof C!=le),(a&&qn&&(Gn&&l||u)?qn:Qn)(e,i)}}class Xn extends F{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await Jn(e,n)},async transform(e,r){o+=e.length,t&&await Jn(t,o,n),r.enqueue(e)},async flush(){r&&await Jn(r,o)}})}}async function Jn(e,...t){try{await e(...t)}catch{}}function Qn(e,t){return{run:()=>$n(e,t)}}async function $n({options:e,readable:t,writable:n,we:r},o){let i;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(Wn),n=t?o.CompressionStreamFallback:o.DecompressionStreamFallback,r=t?o.CompressionStream:o.DecompressionStream;if(e.useCompressionStream){if(n&&n.me&&!vn(r))try{await void 0}catch{}}else try{await void 0}catch{n&&!n.me||(e.useCompressionStream=!0)}}i=new Vn(e,o),await t.pipeThrough(i).pipeThrough(new Zn(Ke(o))).pipeTo(n,{preventClose:!0,preventAbort:!0});const{crc32:r,inputSize:s,outputSize:a}=i;return{crc32:r,inputSize:s,outputSize:a}}catch(e){throw i&&(e.outputSize=i.outputSize),e}finally{r()}}const er={type:"module"},tr="error";let nr,rr,or,ir=!0;try{ir=typeof N==ue&&N(new DOMException("","AbortError")).code!==ae}catch{}var sr;function ar(e){const{reader:t}=e;t&&t.releaseLock(),e.reader=null,e.writer=null}function cr(e){const{ue:t}=e;if(t)try{t.terminate()}catch{}e.de=null}function lr(e,t,r,o,i=!0){const{createWorker:s}=r;let a,c,l;if(s)a=s();else if(rr===ae||nr!==e){const n=typeof e==ue;c=n?e(i):e;const s=c.startsWith("data:"),u=c.startsWith("blob:");if(s||u){o===ae&&(o=!1),o&&(l=er);try{a=new C(c,l)}catch(i){if(u)try{f.revokeObjectURL(c)}catch{}if(n&&u)return lr(e,t,r,o,!1);if(o)throw i;return lr(e,t,r,!0,!1)}}else{o===ae&&(o=!0),o&&(l=er);try{c=new f(c,t)}catch{}try{a=new C(c,l)}catch(n){if(o)return lr(e,t,r,!1,i);throw n}}nr=e,rr=c,or=l}else a=new C(rr,or);return a.addEventListener("message",e=>{r.he=!0,ur(r),async function({data:e},t){const{type:r,value:o,messageId:i,result:s,error:a}=e,{reader:c,writer:l,ye:u,Se:f,we:p,le:m}=t,h=()=>t.le!=m;try{if(a){const{message:e,stack:t,code:r,name:o,outputSize:i,cause:s,codecImportFailed:c}=a,l=new d(e);n.assign(l,{stack:t,code:r,name:o,outputSize:i}),s&&(l.cause=n.assign(new d(s.message),{name:s.name})),c&&(l.codecImportFailed=!0),y(l)}else{if("pull"==r){const{value:e,done:n}=await c.read();h()||dr({type:Bn,value:e,done:n,messageId:i},t)}r==Bn&&(await l.ready,await l.write(new w(o)),h()||dr({type:"ack",messageId:i},t)),"close"==r&&y(null,s)}}catch(a){h()||(cr(t),y(a))}function y(e,t){h()||(e?f(e):u(t),l&&l.releaseLock(),e&&e.codecImportFailed||p())}}(e,r)}),a.addEventListener(tr,e=>fr(e,r)),a.addEventListener("messageerror",e=>fr(e,r)),a}function ur(e){const{Ee:t}=e;t&&(v(t),e.Ee=null)}function fr(e,t){e.preventDefault&&e.preventDefault(),ur(t);const{he:r,Se:o,writer:i,we:s}=t;cr(t),r||(t.ue=null);let a=e.error||new d(e.message||tr);r||(a=n.assign(new d(a.message||tr),{ge:!0}),t.be=a),o&&(o(a),i&&i.releaseLock(),r&&s())}function dr(e,{ue:t,writer:n,transferStreams:r,he:o}){try{const{value:n,readable:i,writable:s}=e,a=[];if(n&&(e.value=et(n),a.push(e.value.buffer)),r&&ir&&o?(i&&a.push(i),s&&a.push(s)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch{ir=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}sr=function(e,t){const{baseURI:r,chunkSize:i,workerStartupTimeout:s}=t;let{wasmURI:a}=t;if(!e.de){let c;typeof a==ue&&(a=a());try{c=lr(e.workerURI,r,e)}catch{return Kn(e),Qn(e,t)}n.assign(e,{ue:c,he:!1,pe:!1,be:null,de:{run:async()=>{try{return await async function(e,t){if(!e.ue){const{be:t}=e;e.be=null;const n=t||new d(Hn);throw n.ge=!0,n}let r,i;const s=new S((e,t)=>{r=e,i=t});n.assign(e,{reader:null,writer:null,ye:r,Se:i,result:s});const{readable:a,options:c}=e,{writable:l,closed:u,xe:f}=function(e){const t=new AbortController,{writable:n,readable:r}=new F,o=r.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return o.catch(()=>{}),{writable:n,closed:o,xe:()=>t.abort()}}(e.writable);let w;try{w=dr({type:"start",options:c,config:t,readable:a,writable:l},e)}catch(t){f();try{await u}catch{}throw e.we(),t}w||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const{workerStartupTimeout:p}=t;!e.he&&o.isFinite(p)&&p>=0&&(e.Ee=_(()=>function(e){if(e.Ee=null,e.he)return;const{Se:t,writer:n}=e;if(cr(e),e.ue=null,t){const e=new d(Hn);e.ge=!0,t(e),n&&n.releaseLock()}}(e),p));try{const e=await s;return await m(),await u,e}catch(e){await m(),f();try{await u}catch{}throw e}async function m(){if(!w&&!l.locked)try{await l.getWriter().close()}catch{}}}(e,{chunkSize:i,wasmURI:a,baseURI:r,workerStartupTimeout:s})}catch(n){if(n&&n.ge)return Kn(e),ar(e),$n(e,t);if(n&&n.codecImportFailed){if(e.reader)return ar(e),$n(e,t);e.we()}throw n}}}})}return e.de},qn=sr;let wr=[];const pr=[];let mr,hr,yr=0;async function Sr(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:s,useCompressionStream:a,compressed:c,checkCrc32:l,computeCrc32:u,encrypted:d,format:w,codecURI:p}=n,{workerURI:m,createWorker:h,maxWorkers:y}=r;w&&(p&&(n.codecURI=function(e,t){try{return new f(e,t).toString()}catch{return e}}(p,r.baseURI)),await async function(e,t){!hn.has(e)&&t&&gn(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(w,n.codecURI)),t.transferStreams=!w&&(i||i===ae&&r.transferStreams);const E=!(c||l||u||d),g=w===ae||Boolean(n.codecURI);return t.useWebWorkers=!E&&g&&(s||s===ae&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&m?m:ae,t.createWorker=t.useWebWorkers&&h?h:ae,n.useCompressionStream=a||a===ae&&r.useCompressionStream,(await async function(){const n=wr.find(e=>!e.ce);if(n)return Rr(n),new Yn(n,e,t,b);if(wr.length<y){const n={Re:yr};return yr++,wr.push(n),new Yn(n,e,t,b)}return new S(n=>{pr.push({resolve:n,stream:e,Fe:t}),hr=r.workerStarvationTimeout,Er()})}()).run();function b(e){if(gr(),pr.length){const[{resolve:t,stream:n,Fe:r}]=pr.splice(0,1);t(new Yn(e,n,r,b)),Er()}else e.ue?(Rr(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.pe?e.pe=!1:e.ze=_(async()=>{wr=wr.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}(e,t)):wr=wr.filter(t=>t!=e)}}function Er(){!mr&&pr.length&&o.isFinite(hr)&&hr>=0&&(mr=_(br,hr))}function gr(){mr&&(v(mr),mr=null)}function br(){if(mr=null,pr.length){const[{resolve:e,stream:t,Fe:r}]=pr.splice(0,1),o=n.assign({},r,{useWebWorkers:!1,workerURI:ae,createWorker:ae});e(new Yn({},t,o,xr)),Er()}}function xr(){gr(),Er()}function Rr(e){const{ze:t}=e;t&&(v(t),e.ze=null)}const Fr="\0\u263a\u263b\u2665\u2666\u2663\u2660\u2022\u25d8\u25cb\u25d9\u2642\u2640\u266a\u266b\u263c\u25ba\u25c4\u2195\u203c\xb6\xa7\u25ac\u21a8\u2191\u2193\u2192\u2190\u221f\u2194\u25b2\u25bc !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xa2\xa3\xa5\u20a7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\u2310\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0".split("");function zr(e,t){return Ar(e,t,!0)}function Ar(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?function(e){let t="";for(let n=0;n<e.length;n++)t+=Fr[e[n]];return t}(e):new g(t,{ignoreBOM:n}).decode(e)}const Dr="HTTP error ",Ir="HTTP Range not supported",kr="HTTP resource changed",Cr="Writer iterator completed too soon",Tr="Writer not initialized",_r="Content-Range",vr="Range",Nr="GET",Ur="bytes",Or=16777216,Mr="writable",Lr=T();class Br{constructor(){this.size=0}init(){this.initialized=!0}}class Wr extends Br{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=Ke(qe())}={}){const r=this;let o=0;return n=Ye(n),new z({async pull(i){const a=t===ae?n:s.min(n,t-o),c=await So(r,e+o,a);c.length&&i.enqueue(c),o+n>=t||!c.length&&a?i.close():o+=n}})}}class Pr extends Br{constructor(){super();const e=this,t=new A({write(t){if(!e.initialized)throw new d(Tr);return e.writeUint8Array(et(t))}});n.defineProperty(e,Mr,{get:()=>t})}writeUint8Array(){}}let Vr,Zr;class Hr extends Wr{constructor(e){super(),n.assign(this,{Ae:e,size:e.size}),Zr||(Zr=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,n=await e.read();for(;!n.done;)t+=n.value.length,n=await e.read();Vr=1==t}catch{Vr=!1}})())}createReadable(e){const{Ae:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};return!r&&o>=n?cn(t.stream()):Vr?cn(t.slice(r,r+o).stream()):super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=!e&&r>=n.size?n.Ae:n.Ae.slice(e,r);let i=await o.arrayBuffer();return i.byteLength>t&&(i=i.slice(e,r)),new w(i)}}class Gr extends Br{constructor(e){super();const t=this,r=new F;n.defineProperty(t,Mr,{get:()=>r.writable}),t.contentType=e,t.De=ln(r.readable,e),t.De.catch(()=>{})}getData(){return this.De}}class jr extends Wr{constructor(e,t){super(),Kr(this,e,t)}async init(){await Yr(this,ao,ro),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:i}=t;if((n||r)&&i!==ae){const{offset:n=0,size:r=i-n}=e||{};if(r>0&&n<i)return function(e,t,n){let r,i=t,a=0,c=n;return new z({start:()=>l(),async pull(e){r||await l();const{value:t,done:n}=await r.read();if(n)throw new d(Ir);const o=t.length>a?t.subarray(0,a):t;a-=o.length,c-=o.length,o.length&&e.enqueue(o),a||(await async function(){const e=r;r=ae,await e.cancel()}(),c||e.close())},cancel:e=>r&&r.cancel(e)});async function l(){const t=s.min(e.maximumRangeSize,c),n=await ao(Nr,e,to(e,i,t));if(206!=n.status)throw new d(Ir);const l=n.headers.get(_r);if(l){const e=o(l.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=i)throw new d(Ir)}eo(e,n),$r(e,n),i+=t,a=t,r=n.body.getReader()}}(t,n,s.min(r,i-n))}return super.createReadable(e)}readUint8Array(e,t){return Xr(this,e,t,ao,ro)}}class qr extends Wr{constructor(e,t){super(),Kr(this,e,t)}async init(){await Yr(this,co,oo),super.init()}readUint8Array(e,t){return Xr(this,e,t,co,oo)}}function Kr(e,t,r){const{preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c=!0,maximumRangeSize:l=Or,fetch:u}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(e,{url:t,options:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c,maximumRangeSize:l,fetch:u})}async function Yr(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a}=e;if(function(e){const{baseURI:t}=qe(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n}(r)&&(i||s)&&(typeof o==le||o)){const r=await t(Nr,e,to(e,a?-22:void 0)),o=r.headers.get("Accept-Ranges");if(!(s||o&&o.toLowerCase()==Ur))throw new d(Ir);{if(a){const t=new w(await r.arrayBuffer());206==r.status&&t.length==K&&(e.Ie=t)}$r(e,r);const o=Jr(r);o===ae?await so(e,t,n):e.size=o}}else await so(e,t,n)}async function Xr(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,Ie:c,size:l,options:u}=e;if(s||a){if(c&&t==l-K&&n==K)return c;if(t>=l||0===n)return de;{t+n>l&&(n=l-t);const i=await r(Nr,e,to(e,t,n));if(206!=i.status)throw new d(Ir);const s=i.headers.get(_r);if(s){const e=o(s.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=t)throw new d(Ir)}eo(e,i),$r(e,i);const a=new w(await i.arrayBuffer());if(a.length!=n)throw new d(Ir);return a}}{const{data:r}=e;return r||await i(e,u),e.data.subarray(t,t+n)}}function Jr(e){const t=e.headers.get(_r);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=o(e);if(!o.isNaN(t))return t}}}function Qr({headers:e}){return{ke:e.get("Etag")||ae,lastModified:e.get("Last-Modified")||ae}}function $r(e,t){const{checkResourceChanges:n,Ce:r}=e;n&&!r&&206==t.status&&(e.Ce=Qr(t))}function eo(e,t){const{checkResourceChanges:r,Ce:o,size:i}=e;if(r){const e=Jr(t);if(e!==ae&&i!==ae&&e!=i)throw new d(kr);if(o){const e=Qr(t);if(n.entries(o).some(([t,n])=>n!==ae&&e[t]!==ae&&n!=e[t]))throw new d(kr)}}}function to(e,t=0,r=1){return n.assign({},no(e),{[vr]:Ur+"="+(t<0?t:t+"-"+(t+r-1))})}function no({options:e}){const{headers:t}=e;if(t)return T.iterator in t?n.fromEntries(t):t}async function ro(e){await io(e,ao)}async function oo(e){await io(e,co)}async function io(e,t){const n=await t(Nr,e,no(e));e.data=new w(await n.arrayBuffer()),e.size=e.data.length}async function so(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,no(e)),i=r.headers.get("Content-Length");i&&!r.headers.get("Content-Encoding")?e.size=o(i):await n(e,e.options)}}async function ao(e,{fetch:t=fetch,options:r,url:o},i){const s=await t(o,n.assign({},r,{method:e,headers:i}));if(s.status<400)return s;throw 416==s.status?new d(Ir):new d(Dr+(s.statusText||s.status))}function co(e,{url:t},r){return new S((o,i)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",()=>{if(s.status<400){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),o({status:s.status,arrayBuffer:()=>s.response,headers:new c(e)})}else i(416==s.status?new d(Ir):new d(Dr+(s.statusText||s.status)))},!1),s.addEventListener("error",e=>i(e.detail?e.detail.error:new d("Network error")),!1),s.open(e,t),r)for(const e of n.entries(r))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()})}class lo extends Wr{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new qr(e,t):new jr(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(e){return this.reader.createReadable(e)}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class uo extends Wr{constructor(e){super(),this.Te=e}async init(){const e=this;e._e=0;const t=e.Te=await S.all(e.Te.map(yo));e.ve=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}Ne(e){const{ve:t,size:n}=this,r=t[e];return r===ae?n:r}async readUint8Array(e,t){const n=this,{Te:r}=this;let o,i=0,a=e;for(;r[i]&&a>=r[i].size;)a-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(a+t<=r)o=await So(c,a,t);else{const i=r-a;o=$e(await So(c,a,i),await n.readUint8Array(e+i,t-i))}}else o=de;return n._e=s.max(i,n._e),o}}class fo extends Br{constructor(e,t=4294967295){super();const r=this;let o,i,s;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const a=new A({async write(t){if(t===Lr)return void(s&&await l());const{availableSize:n}=r;if(s)t.length>=n?(await c(t.subarray(0,n)),await l(),t.length>n&&await this.write(t.subarray(n))):await c(t);else{const{value:n,done:a}=await e.next();if(a&&!n)throw new d(Cr);o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await ho(o),i=n.writable,s=i.getWriter(),await this.write(t)}},async close(){s&&(await s.ready,await u())},async abort(e){s&&await s.abort(e)}});async function c(e){const t=e.length;t&&(await s.ready,await s.write(e),o.size+=t,r.availableSize-=t)}async function l(){await u(),r.diskOffset+=o.size,r.diskNumber++,s=null,r.availableSize=r.maxSize}async function u(){await s.close()}n.defineProperty(r,Mr,{get:()=>a})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(Lr)}finally{e.releaseLock()}}}class wo{constructor(e){return t.isArray(e)&&(e=new uo(e)),(e instanceof z||typeof e.getReader==ue)&&(e={readable:cn(e)}),e}}class po{constructor(e){return e.writable===ae&&typeof e.next==ue&&(e=new fo(e)),(e instanceof A||typeof e.getWriter==ue)&&(e={writable:un(e)}),e.size===ae&&(e.size=0),e}}function mo(e){return Boolean(e&&e.getData)}async function ho(e,t){if(!e.init||e.initialized)return S.resolve();await e.init(t)}async function yo(e){return e=new wo(e),await ho(e),e.size!==ae&&e.readUint8Array||(e=new Hr(await ln(e.readable)),await ho(e)),e}function So(e,t,n){return e.readUint8Array(t,n)}function Eo(e,t){return e.createReadable?e.createReadable(t):e.readUint8Array?Wr.prototype.createReadable.call(e,t):e.readable}const go="filename",bo="rawFilename",xo="comment",Ro="rawComment",Fo="uncompressedSize",zo="compressedSize",Ao="offset",Do="diskNumberStart",Io="lastModDate",ko="rawLastModDate",Co="lastAccessDate",To="rawLastAccessDate",_o="creationDate",vo="rawCreationDate",No="internalFileAttributes",Uo="externalFileAttributes",Oo="internalFileAttribute",Mo="externalFileAttribute",Lo="msdosAttributesRaw",Bo="msdosAttributes",Wo="msDosCompatible",Po="zip64",Vo="encrypted",Zo="version",Ho="versionMadeBy",Go="zipCrypto",jo="directory",qo="executable",Ko="compressionMethod",Yo="signature",Xo="extraField",Jo="unixMode",Qo="setuid",$o="setgid",ei="sticky",ti=[go,bo,Fo,zo,Io,ko,xo,Ro,Co,To,_o,vo,Ao,Do,No,Uo,Oo,Mo,Lo,Bo,Wo,Po,Vo,Zo,Ho,Go,jo,qo,"symlink",Ko,Yo,"crc32",Xo,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",Jo,"unixExternalUpper",Qo,$o,ei,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class ni{constructor(e){ti.forEach(t=>this[t]=e[t])}}const ri="File format is not recognized",oi="End of central directory not found",ii="End of Zip64 central directory locator not found",si="Central directory header not found",ai="Local file header not found",ci="Zip64 extra field not found",li="File contains encrypted entry",ui="Encryption method not supported",fi="Compression method not supported",di="Split zip file",wi="Overlapping entry found",pi="Entry data out of bounds",mi="Ambiguous archive",hi="Encrypted central directory is not supported",yi="Unsafe filename",Si="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",Ei="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",gi="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",bi="64-bit value exceeds Number.MAX_SAFE_INTEGER",xi="unsorted central directory",Ri="unknown version needed to extract",Fi="compressed patched data",zi="malformed extra field",Ai="unknown zip64 extensible data",Di="wrapped entries count",Ii="appended data",ki="prepended data",Ci="prepended central directory",Ti="trailing central directory data",_i="duplicate filename",vi="mismatched zip64 end of central directory record",Ni="mismatched local file header (general purpose bit flag)",Ui="mismatched local file header (compression method)",Oi="mismatched local file header (crc32 or sizes)",Mi=/^[a-zA-Z]:/,Li="utf-8",Bi="cp437",Wi=[[Fo,O],[zo,O],[Ao,O],[Do,M]],Pi={[M]:{Ue:Fs,bytes:4},[O]:{Ue:zs,bytes:8}},Vi=i(o.MAX_SAFE_INTEGER);class Zi{constructor(e,t={}){n.assign(this,{reader:new wo(e),options:t,Oe:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await ho(r),r.size!==ae&&r.readUint8Array||(r=new Hr(await ln(r.readable)),await ho(r)),r.size<K)throw new d(ri);const o=t.warnings=[],i=ss(e,t.options),a=i==De,c=i!=ke,u=ls(Ss(t,e,Fe),i),f=function(e,t){if(e===ae)return t;if(!is(e))throw new d(Ei);return e}(Ss(t,e,"filenameValidation"),i),w=Ss(t,e,"normalizeFilename"),{Me:p,Le:m}=await us(r,c,u);if(!p)throw await async function(e){return await os(e)==W}(r)?new d(di):new d(oi);c&&m>1&&ys("multiple end of central directory records");const h=tt(p);let y=Fs(h,12),S=Fs(h,16);const E=p.offset,g=Rs(h,20),b=E+K+g,x=r.size-b;x>u&&ys(Ii),x>0&&hs(o,Ii);let R=Rs(h,4);const z=r._e||0;let A,D,I,k,C,T=Rs(h,6),_=Rs(h,10),v=0,N=X;const U=S==O||y==O||_==M||T==M;if(S!=O&&T!=M&&(S+=rs(r,T)),U){const e=p.offset>=Y?await So(r,p.offset-Y,Y):de,t=tt(e);if(e.length==Y&&Fs(t,0)==j){S=rs(r,Fs(t,4))+zs(t,8);let e=await So(r,S,X),i=tt(e);const c=p.offset-Y-X;if((e.length<X||Fs(i,0)!=G)&&S!=c&&c>=0){const t=S;S=c,S>t&&(v=S-t),e=await So(r,S,X),i=tt(e)}if(e.length<X||Fs(i,0)!=G)throw new d(ii);if(I=!0,k=zs(i,4)>44,k){const e=s.min(zs(i,4)-44,r.size-S-X);e>0&&(N+=e,C=function(e){const t={rawExtensibleData:e};if(e.length>=28){const r=tt(e),o=Rs(r,26);n.assign(t,{compressionMethod:Rs(r,0),compressedSize:zs(r,2),uncompressedSize:zs(r,10),encryptionAlgorithm:Rs(r,18),bitLength:Rs(r,20),flags:Rs(r,22),hashAlgorithm:Rs(r,24),hashData:e.subarray(28,28+o)})}return t}(await So(r,S+X,e)))}R==M?R=Fs(i,16):R!=Fs(i,16)&&ms(a,o,vi),T==M?T=Fs(i,20):T!=Fs(i,20)&&ms(a,o,vi),_==M?_=zs(i,32):_!=zs(i,32)&&ms(a,o,vi),y==O?y=zs(i,40):y!=zs(i,40)&&ms(a,o,vi),S=rs(r,T)+zs(i,48)+v}}let B=y;const P=p.offset-(I?N+Y:0);if(S>=r.size&&(v=r.size-S-y-K,S=r.size-y-K),z!=R)throw new d(di);if(S<0)throw new d(ri);let V=0,H=await So(r,S,y),J=tt(H);if(y){if(H.length<4)throw new d(ri);const e=P-y;if(S!=e&&T==R){const t=Fs(J,V)==Z||Boolean(C&&C.compressedSize)||qi(J);let n=!t;if(!n&&e>=0&&e+4<=r.size&&(n=Fs(tt(await So(r,e,4)),0)==Z),n){const n=S;S=e,S>n&&(v+=S-n,A=t),H=await So(r,S,y),J=tt(H)}}}const Q=P-S;if(y!=Q&&Q>=0&&T==R&&(y=Q,H=await So(r,S,y),J=tt(H)),S<0||S>=r.size)throw new d(ri);t.directoryOffset=S,t.directoryLength=B;const oe=Es(t,e,"decryptCentralDirectory");let ie,se;if(oe&&_&&H.length>=4&&Fs(J,0)!=Z&&(k||qi(J))){const e=function(e,t,n){const r=e&&e.compressedSize?e.compressedSize:t;return r>0&&r<=n?r:n}(C,B,H.length);se=H.subarray(e),H=await oe(H.subarray(0,e),C),J=tt(H),B=H.length,ie=!0}C&&!ie&&(H.length<4||Fs(J,0)==Z)&&hs(o,Ai),D=S;const ce=Ss(t,e,"filenameEncoding"),le=Ss(t,e,"commentEncoding"),ue=new l;let fe,we=-1;const pe=!a&&!I;!_&&pe&&(_=Ki(J,H,V),_&&hs(o,Di));for(let i=0;i<_;i++){const a=new ji(r,t.options);if(V+q>H.length||Fs(J,V)!=Z){if(0==i&&!ie&&(k||qi(J)))throw new d(hi);throw new d(si)}Xi(a,J,V+6);const c=Boolean(a.bitFlag.languageEncodingFlag),l=V+q,u=l+a.filenameLength,p=u+a.extraFieldLength,m=Rs(J,V+4),h=!(m>>8),y=m>>8==3,S=H.subarray(l,u),E=Rs(J,V+32),g=p+E,b=H.subarray(p,g),x=c,R=c,z=Fs(J,V+38),A=z&L,I={readOnly:Boolean(1&A),hidden:Boolean(2&A),system:Boolean(4&A),directory:Boolean(16&A),archive:Boolean(32&A)},C=Fs(J,V+42),T=Es(t,e,"decodeText")||zr,N=x?Li:ce||Bi,U=R?Li:le||Bi;let O=T(S,N,ze);if(O===ae&&(O=zr(S,N)),w){const e=w(O);e!==ae&&(O=e)}if(cs(O,f)){const e=new d(yi);throw e.filename=O,e}let B=T(b,U,Ae);B===ae&&(B=zr(b,U)),n.assign(a,{index:i,Be:ie,versionMadeBy:m,msDosCompatible:h,zip64:!1,compressedSize:0,uncompressedSize:0,We:E,offset:C,diskNumberStart:Rs(J,V+34),internalFileAttributes:Rs(J,V+36),externalFileAttributes:z,msdosAttributesRaw:A,msdosAttributes:I,rawFilename:S,filenameUTF8:x,commentUTF8:R,rawExtraField:H.subarray(u,p),rawComment:b,filename:O,comment:B}),Ji(a,a,J,V+6)&&hs(o,zi,O),a.offset+=v;const W=rs(r,a.diskNumberStart)+a.offset;D=s.min(W,D),W<we&&hs(o,xi,O),we=W,(a.version&L)>63&&hs(o,Ri,O),32&~a.rawBitFlag||hs(o,Fi,O),ue.has(a.filename)&&(fe=!0),ue.add(a.filename);const P=a.externalFileAttributes>>16&M;a.unixMode===ae&&16877&P&&(a.unixMode=P);const G=Boolean(a.unixMode&te),j=Boolean(a.unixMode&ne),K=Boolean(512&a.unixMode),Y=40960==((a.unixMode===ae?P:a.unixMode)&$),X=!Y&&(a.unixMode!==ae?!!(73&a.unixMode):y&&!!(73&P)),Q=a.unixMode!==ae&&(a.unixMode&$)==ee,oe=(P&$)==ee;n.assign(a,{setuid:G,setgid:j,sticky:K,symlink:Y,unixExternalUpper:P,internalFileAttribute:a.internalFileAttributes,externalFileAttribute:a.externalFileAttributes,executable:X,directory:Q||oe||h&&I.directory||a.filename.endsWith(re),zipCrypto:a.encrypted&&!a.extraFieldAES});const se=new ni(a);if(se.getData=(e,n)=>a.getData(e,se,t.Oe,n),se.arrayBuffer=async e=>{const n=new F,r=ln(n.readable).then(e=>e.arrayBuffer());return r.catch(()=>{}),await a.getData(n,se,t.Oe,e),r},V=g,i==_-1&&pe){const e=Ki(J,H,V);e&&(_+=e,hs(o,Di))}const{onprogress:de}=e;if(de)try{await de(i+1,_,new ni(a))}catch{}yield se}let me=V,he=Yi(H.subarray(V))||(ie?Yi(se):ae);if(!he&&!ie){const e=S+V,t=s.min(P-e,65541);t>=6&&(he=Yi(await So(r,e,t)))}he&&(t.digitalSignature=he,me=V+6+he.length),(V!=B&&me!=B||!ie&&V!=y&&me!=y)&&ms(a,o,Ti),fe&&ms(a,o,_i);const ye=Ss(t,e,"extractPrependedData"),Se=Ss(t,e,"extractAppendedData"),Ee=(a||ye)&&_&&4==D&&await async function(e){const t=await os(e);return t==W||808471376==t}(r)?4:0;return a&&(v||_&&D>Ee)&&ys(ki),(v||_&&D>4)&&hs(o,ki),A&&hs(o,Ci),ye&&(t.prependedData=D>Ee?await So(r,Ee,D-Ee):de),t.comment=g?await So(r,E+K,g):de,Se&&(t.appendedData=b<r.size?await So(r,b,r.size-b):de),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){const{reader:e}=this;e.readUint8Array||!e.readable||e.readable.locked||await e.readable.cancel()}}class Hi{constructor(e={}){const{readable:t,writable:n}=new F,r=new Zi(t,e).getEntriesGenerator();this.readable=new z({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const o={...n,readable:function(){const{readable:e,writable:t}=new F;if(n.getData)return async function(){try{await n.getData(t)}catch(e){try{await t.abort(e)}catch{}}}(),e}()};delete o.getData,e.enqueue(o)}}),this.writable=n}}async function Gi(e,t={}){if(e=new wo(e),await ho(e),e.size!==ae&&e.readUint8Array||(e=new Hr(await ln(e.readable)),await ho(e)),e.size<K)return!1;const n=ss(t,{}),r=n!=ke,o=ls(t[Fe],n),{Me:i,Le:s}=await us(e,r,o);if(!i||n==De&&s>1)return!1;const a=Rs(tt(i),20),c=i.offset+K+a;return e.size-c<=o}class ji{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,n,r={}){const o=this,i=qe(),{reader:a,index:c,offset:l,diskNumberStart:u,extraFieldAES:f,extraFieldZip64:w,compressionMethod:p,bitFlag:m,rawBitFlag:h,crc32:y,rawLastModDate:S,uncompressedSize:E,compressedSize:g}=o,{dataDescriptor:b}=m,x=t.localDirectory={},R=t.warnings=[],F=rs(a,u)+l,z=await So(a,F,oe),D=tt(z);let I=Ss(o,r,we),k=Ss(o,r,pe);const C=Ss(o,r,me);if(Ue(I,k),I=I&&I.length&&I,k=k&&k.length&&k,f&&99!=f.originalCompressionMethod)throw new d(fi);if(z.length<oe||Fs(D,0)!=B)throw new d(ai);Xi(x,D,4);const{extraFieldLength:T,filenameLength:_}=x,v=x.dataOffset=F+oe+_+T,N=Ss(o,r,"checkLocalDirectory"),U=ss(r,o.options),O=function(e,t){return e===ae?t!=ke:Boolean(e)}(N,U),M=function(e,t){return e===ae?t==De:Boolean(e)}(N,U);let W=de;if(M&&(_||T)){const e=await So(a,F+oe,_+T);W=e.subarray(0,_),x.rawExtraField=e.subarray(_)}else x.rawExtraField=T?await So(a,F+oe+_,T):de;M&&(x.rawFilename=W),Ji(o,x,D,4,!0)&&hs(R,zi),function(e,t,n,r,o){const{rawFilename:i}=e,s=!o,a=e.Be&&!(8192&~t.rawBitFlag);!r||a||n.length==i.length&&!n.some((e,t)=>e!=i[t])||ms(s,o,"mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&ms(s,o,Ni),t.compressionMethod!=e.compressionMethod&&ms(s,o,Ui),t.bitFlag.dataDescriptor||a||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||ms(s,o,Oi)}(o,x,W,M,O?ae:R);const{lastAccessDate:V,creationDate:Z,uid:H,gid:G}=x;V&&(t.lastAccessDate=V),Z&&(t.creationDate=Z),H!==ae&&t.uid===ae&&(t.uid=H),G!==ae&&t.gid===ae&&(t.gid=G);const j=o.encrypted&&x.encrypted&&!C,q=j&&!f;if(C||(t.zipCrypto=q),j&&!(64&~x.rawBitFlag))throw new d(ui);const K=C?ae:yn(p);if(0!=p&&8!=p&&9!=p&&!K&&!C)throw new d(fi);if(j){if(!q&&(f.strength<1||f.strength>3))throw new d(ui);if(!I&&!k)throw new d(li)}if(v+g>a.size)throw new d(pi);const Y=g,X=cn(a.createReadable({offset:v,size:Y})),J=Ne(Ss(o,r,he)),Q=Ss(o,r,"checkPasswordOnly");let $=Ss(o,r,"checkOverlappingEntry");const ee=Ss(o,r,"checkOverlappingEntryOnly");ee&&($=!0);const{onstart:te,onprogress:ne,onend:re}=r,ie=0!=p&&!C,se=C?g:E,ce=9==p;let le=Ss(o,r,Se);ce&&(le=!1);const ue=Ss(o,r,"checkCrc32"),fe=(ue===ae?Ss(o,r,"checkSignature"):ue)&&!C&&(!j||q||f&&1==f.vendorVersion),be={options:{codecType:Pn,password:I,rawPassword:k,zipCrypto:q,encryptionStrength:f&&f.strength,checkCrc32:fe,checkAuthenticationCode:Ss(o,r,"checkAuthenticationCode"),passwordVerification:q&&(b?S>>>8&L:y>>>24&L),outputSize:se,crc32:y,compressed:ie,encrypted:j,useWebWorkers:Ss(o,r,ye),useCompressionStream:le,transferStreams:Ss(o,r,Ee),deflate64:ce,format:K?K.format:ae,codecURI:K?K.codecURI:ae,compressionMethod:p,rawBitFlag:h,checkPasswordOnly:Q},config:i,ae:{signal:J,size:Y,onstart:te,onprogress:ne,onend:re}};let xe,Re;$&&await async function({reader:e,Pe:t,index:n,offset:r,crc32:o,compressedSize:i,uncompressedSize:s,dataOffset:a,dataDescriptor:c,extraFieldZip64:l,Oe:u}){let f=0;if(c&&(f=l?20:12),f){const n=await So(e,a+i,f+4),r=tt(n);let c=n.length==f+4&&Fs(r,0)==P;if(c){const e=ns(r,4,l);(t.encrypted&&!t.zipCrypto||e.crc32==o)&&e.compressedSize==i&&e.uncompressedSize==s?f+=4:c=!1}if(n.length>=f){const e=ns(r,c?4:0,l);e.signature=c,t.localDirectory.dataDescriptor=e}}const w={start:r,end:a+i+f,Pe:t};for(const[e,t]of u)if(e!=n&&w.start<t.end&&t.start<w.end){const e=new d(wi);throw e.overlappingEntry=t.Pe,e}u.set(n,w)}({reader:a,Pe:t,index:c,offset:F,crc32:y,compressedSize:g,uncompressedSize:E,dataOffset:v,dataDescriptor:b||x.bitFlag.dataDescriptor,extraFieldZip64:w||x.extraFieldZip64,Oe:n});try{if(!ee){Q&&(e=new A),e=new po(e),await ho(e,function(e,t,n){return s.min(e,n?1032*t:t)}(se,g,ie)),({writable:xe}=e);const{outputSize:t}=await Sr({readable:X,writable:xe},be);if(e.size+=t,t!=se)throw new d(bn)}}catch(t){if(t.outputSize!==ae&&(e.size+=t.outputSize),!Q||t.message!=xt)throw Re=t,t}finally{if((mo(e)||!Ss(o,r,ge))&&xe&&!xe.locked){const e=xe.getWriter();if(Re)try{await e.abort(Re)}catch{}else await e.close()}}return Q||ee?ae:e.getData?e.getData():xe}}function qi(e){const t=s.min(e.byteLength,1024)-3;for(let n=0;n<t;n++)if(134630224==Fs(e,n))return!0;return!1}function Ki(e,t,n){let r=0;for(;n+q<=t.length&&Fs(e,n)==Z;)n+=q+Rs(e,n+28)+Rs(e,n+30)+Rs(e,n+32),r++;return r%65536?0:r}function Yi(e){if(e.length>=6){const t=tt(e);if(Fs(t,0)==V){const n=Rs(t,4);if(6+n<=e.length)return e.subarray(6,6+n)}}}function Xi(e,t,r){const o=e.rawBitFlag=Rs(t,r+2),i=!(1&~o),s=Fs(t,r+6);n.assign(e,{encrypted:i,version:Rs(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&Q)==Q},rawLastModDate:s,lastModDate:gs(s),filenameLength:Rs(t,r+22),extraFieldLength:Rs(t,r+24)})}function Ji(e,t,r,o,i){const{rawExtraField:s}=t,l=t.extraField=new c,u=tt(s);let f=0,w=!1;try{for(;f<s.length;){const e=Rs(u,f),t=Rs(u,f+2);l.set(e,{type:e,data:s.slice(f+4,f+4+t)}),f+=4+t}}catch{w=!0}f>s.length&&(w=!0);const p=Rs(r,o+4);n.assign(t,{signature:Fs(r,o+10),crc32:Fs(r,o+10),compressedSize:Fs(r,o+14),uncompressedSize:Fs(r,o+18)});const m=l.get(1);m&&(function(e,t){t.zip64=!0;const n=tt(e.data),r=Wi.filter(([e,n])=>t[e]==n),o=r.reduce((e,[,t])=>e+Pi[t].bytes,0);if(e.data.length<o)throw new d(ci);for(let o=0,i=0;o<r.length;o++){const[s,a]=r[o],c=Pi[a];t[s]=e[s]=c.Ue(n,i),i+=c.bytes}}(m,t),t.extraFieldZip64=m);const h=l.get(28789);h&&(Qi(h,go,bo,t,e),t.extraFieldUnicodePath=h);const y=l.get(25461);y&&(Qi(y,xo,Ro,t,e),t.extraFieldUnicodeComment=y);const S=l.get(39169);S&&S.data.length>=7?(function(e,t,r){const o=tt(e.data),i=xs(o,4);n.assign(e,{vendorVersion:xs(o,0),vendorId:xs(o,2),strength:i,originalCompressionMethod:r,compressionMethod:Rs(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=ae)}(S,t,p),t.extraFieldAES=S):t.compressionMethod=p;const E=l.get(13);E&&($i(E,t),t.extraFieldPkwareUnix=E);const g=l.get(22613);g&&($i(g,t),t.extraFieldUnixType1=g);const b=l.get(10);b&&(function(e,t){const r=tt(e.data);let o,i=4;try{for(;i<e.data.length&&!o;){const t=Rs(r,i),n=Rs(r,i+2);1==t&&(o=e.data.slice(i+4,i+4+n)),i+=4+n}}catch{}if(o&&24==o.length){const r=tt(o),i=r.getBigUint64(0,!0),s=r.getBigUint64(8,!0),a=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:i,rawLastAccessDate:s,rawCreationDate:a});const c={lastModDate:bs(i),lastAccessDate:bs(s),creationDate:bs(a)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:s,rawCreationDate:a})}}(b,t),t.extraFieldNTFS=b);const x=l.get(30805);let R;if(x&&(R=es(x,t,!1),t.extraFieldUnix=x),!R){const e=l.get(30837);e&&(es(e,t,!0),t.extraFieldInfoZip=e)}const F=l.get(J);F&&(function(e,t,n){if(!e.data.length)return;const r=tt(e.data),o=xs(r,0),i=[],s=[];n?(1&~o||(i.push(Io),s.push(ko)),2&~o||(i.push(Co),s.push(To)),4&~o||(i.push(_o),s.push(vo))):e.data.length>=5&&(i.push(Io),s.push(ko));let c=1;i.forEach((n,o)=>{if(e.data.length>=c+4){const i=Fs(r,c);t[n]=e[n]=new a(1e3*(0|i));const l=s[o];e[l]=i}c+=4})}(F,t,i),t.extraFieldExtendedTimestamp=F);const z=l.get(6534);return z&&(t.extraFieldUSDZ=z),w}function Qi(e,t,r,o,i){if(e.data.length<5)return void(e.valid=!1);const s=tt(e.data),a=new ft;a.append(i[r]);const c=tt(new w(4));c.setUint32(0,a.get(),!0);const l=Fs(s,1),u=xs(s,0);n.assign(e,{version:u,[t]:zr(e.data.subarray(5)),valid:1==u&&!i.bitFlag.languageEncodingFlag&&l==Fs(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function $i(e,t){if(e.data.length<8)return;const r=tt(e.data),o={lastAccessDate:new a(1e3*(0|Fs(r,0))),lastModDate:new a(1e3*(0|Fs(r,4)))};e.data.length>=12&&(o.uid=Rs(r,8),o.gid=Rs(r,10)),n.assign(e,o),n.assign(t,o)}function es(e,t,r){try{const o=tt(e.data);let i,s;if(r){let t=0;const r=xs(o,t++),a=xs(o,t++);i=ts(e.data.subarray(t,t+a)),t+=a;const c=xs(o,t++);s=ts(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:i,gid:s})}else e.data.length>=4&&(i=Rs(o,0),s=Rs(o,2),n.assign(e,{uid:i,gid:s}));return i!==ae&&(t.uid=i),s!==ae&&(t.gid=s),i!==ae||s!==ae}catch{}}function ts(e){const t=new w(4);return t.set(e,0),new h(t.buffer,t.byteOffset,4).getUint32(0,!0)}function ns(e,t,n){const r=Fs(e,t);let o,i;return n?(o=zs(e,t+4),i=zs(e,t+12)):(o=Fs(e,t+4),i=Fs(e,t+8)),{crc32:r,compressedSize:o,uncompressedSize:i}}function rs(e,t){return e.Ne?e.Ne(t):0}async function os(e){return Fs(tt(await So(e,0,4)))}function is(e){return e===De||e===Ie||e===ke}function ss(e,t){return as(e,as(t,Ie))}function as(e,t){const n=e.strictness;if(n!==ae){if(!is(n))throw new d(Si);return n}const r=e.checkAmbiguity;return r===ae?t:r?De:t==ke?ke:Ie}function cs(e,t){if(t==ke)return!1;const n=e.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(n.includes("..")||e.startsWith("/")||e.startsWith("\\\\")||Mi.test(e))||t==De&&(n.includes(".")||n.includes(""))}function ls(e,t){if(e!==ae){const t=Le(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new d(gi);return t}return t==De?0:t==ke?1/0:M}async function us(e,t,n){const{size:r}=e,o=s.min(r,65557),i={count:64};let a,c,l=0;for await(const[n,s,u,f,d]of fs(e,o)){const o=Rs(n,f+20);if(d+K+o==r){const o=await ws(e,n,s,f,d,r,i);if(2==o){if(a||(a=ds(u,f,d)),l++,!t||l>1)break}else 1!=o||c||(c=ds(u,f,d))}}return a||(a=c),a||(a=await async function(e,t,n){const{size:r}=e,o=s.min(r,t==1/0?r:65557+t);let i,a;for await(const[t,s,c,l,u]of fs(e,o)){const o=ds(c,l,u);i||(i=o);const f=await ws(e,t,s,l,u,r,n);if(2==f)return o;1!=f||a||(a=o)}return a||i}(e,n,i)),{Me:a,Le:l}}async function*fs(e,t){const n=e.size-t,r=await So(e,n,t),o=tt(r);for(let e=r.length-K;e>=0;e--)Fs(o,e)==H&&(yield[o,n,r,e,n+e])}function ds(e,t,n){return{offset:n,buffer:e.slice(t,t+K).buffer}}async function ws(e,t,n,r,o,i,s){const a=Rs(t,r+10),c=Fs(t,r+12),l=Fs(t,r+16);if(a==M||c==O||l==O)return await ps(e,t,n,o-Y,i,s)==j?2:0;if(!a&&!c)return 1;const u=Rs(t,r+6);for(const r of[o-c,rs(e,u)+l])if(await ps(e,t,n,r,i,s)==Z)return 2;return 0}async function ps(e,t,n,r,o,i){return r<0||r+4>o?ae:r>=n?Fs(t,r-n):i.count>0?(i.count--,Fs(tt(await So(e,r,4)),0)):ae}function ms(e,t,n){e?ys(n):hs(t,n)}function hs(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==ae&&(r.filename=n),e.push(r)}}function ys(e){const t=new d(mi);throw t.reason=e,t}function Ss(e,t,n){return t[n]===ae?e.options[n]:t[n]}function Es(e,t,n){return ve(Ss(e,t,n))}function gs(e){const t=(4294901760&e)>>16,n=e&M,r=new a(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<se?se:r}function bs(e){return new a(o(e/i(1e4)-i(116444736e5)))}function xs(e,t){return e.getUint8(t)}function Rs(e,t){return e.getUint16(t,!0)}function Fs(e,t){return e.getUint32(t,!0)}function zs(e,t){const n=e.getBigUint64(t,!0);if(n>Vi)throw new d(bi);return o(n)}var As=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:mi,ERR_BAD_FORMAT:ri,ERR_CENTRAL_DIRECTORY_NOT_FOUND:si,ERR_ENCRYPTED:li,ERR_ENCRYPTED_CENTRAL_DIRECTORY:hi,ERR_ENTRY_DATA_OUT_OF_BOUNDS:pi,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:ii,ERR_EOCDR_NOT_FOUND:oi,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:ci,ERR_INVALID_AUTHENTICATION_CODE:bt,ERR_INVALID_COMPRESSED_DATA:xn,ERR_INVALID_CRC32:Rn,ERR_INVALID_FILENAME_VALIDATION:Ei,ERR_INVALID_MAX_APPENDED_DATA_SIZE:gi,ERR_INVALID_PASSWORD:Et,ERR_INVALID_SIGNATURE:gt,ERR_INVALID_STRICTNESS:Si,ERR_INVALID_UNCOMPRESSED_SIZE:bn,ERR_LOCAL_FILE_HEADER_NOT_FOUND:ai,ERR_OVERLAPPING_ENTRY:wi,ERR_SPLIT_ZIP_FILE:di,ERR_UNSAFE_FILENAME:yi,ERR_UNSUPPORTED_COMPRESSION:fi,ERR_UNSUPPORTED_ENCRYPTION:ui,ERR_UNSUPPORTED_UINT64:bi,ERR_WORKER_STARTUP_TIMEOUT:Hn,WARNING_APPENDED_DATA:Ii,WARNING_COMPRESSED_PATCHED_DATA:Fi,WARNING_DUPLICATE_FILENAME:_i,WARNING_MALFORMED_EXTRA_FIELD:zi,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Ni,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:Ui,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:Oi,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:vi,WARNING_PREPENDED_CENTRAL_DIRECTORY:Ci,WARNING_PREPENDED_DATA:ki,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Ti,WARNING_UNKNOWN_VERSION:Ri,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Ai,WARNING_UNSORTED_CENTRAL_DIRECTORY:xi,WARNING_WRAPPED_ENTRIES_COUNT:Di,ZipReader:Zi,ZipReaderStream:Hi,isZipFile:Gi});const Ds="File already exists",Is="Zip file comment exceeds 64KB",ks="Invalid zip file comment (must be a Uint8Array)",Cs="File entry comment exceeds 64KB",Ts="Invalid file entry comment (must be a string)",_s="Invalid date (must be a valid Date instance)",vs="File entry name exceeds 64KB",Ns="Version exceeds 65535",Us="The strength must equal 1, 2, or 3",Os="Encryption is not supported in USDZ files",Ms="Encryption is not supported when the 'passThrough' option is set",Ls="Invalid extra field (must be a Map)",Bs="Invalid extra field type (must be integer 0..65535)",Ws="Invalid extra field data (must be a Uint8Array)",Ps="Extra field data exceeds 64KB",Vs=-2147483648,Zs=2147483647,Hs=i(0),Gs=i("0x7fffffffffffffff"),js="Zip64 is not supported (set the 'zip64' option to 'true')",qs="Undefined uncompressed size",Ks="Undefined compression method",Ys="Undefined reader",Xs="Zip file not empty",Js="Invalid uid (must be integer 0..2^32-1)",Qs="Invalid gid (must be integer 0..2^32-1)",$s="Invalid UNIX mode (must be integer 0..65535)",ea="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",ta="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",na="Invalid msdosAttributesRaw (must be integer 0..255)",ra="Invalid msdosAttributes (must be an object with boolean flags)",oa="Invalid level (must be integer 0..9)",ia="Signature data exceeds 64KB",sa=new w([7,0,2,0,65,69,3,0,0]),aa="infozip",ca="unix";let la=0;const ua=[];class fa{constructor(e,t={}){e=new po(e);const{availableSize:r=ce,maxSize:o=ce}=e,i=r>0&&r!==ce&&o>0&&o!==ce;n.assign(this,{writer:e,Ve:i,options:t,Ze:new c,He:new l,offset:t[xe]===ae?e.size||e.writable.size||0:t[xe],Ge:t[xe]===ae?0:t[xe]-(e.size||e.writable.size||0),je:new l,qe:[],Ke:0,Ye:ae})}prependZip(e){return wa(this,async function(e,t){if(e.He.size)throw new d(Xs);await e.Xe(t)}(this,e))}appendZip(e){return wa(this,this.Xe(e))}async Xe(e){const r=this,{je:o,He:i,Ze:s}=r;for(;o.size;)await S.allSettled(t.from(o));let a;const l=new S(e=>a=e);o.add(l);const u=[];let f;try{e=new wo(e),await ho(e),e.size!==ae&&e.readUint8Array||(e=new Hr(await ln(e.readable)),await ho(e));const{ZipReader:o}=await S.resolve().then(function(){return As}),a=new o(e),l=await a.getEntries();await a.close(),await ho(r.writer);const{directoryOffset:w}=a;l.forEach(({filename:e})=>{if(i.has(e))throw new d(Ds);i.add(e),u.push(e)}),r.Je=!0;const{Qe:p}=r;r.Qe=new S(e=>f=()=>{r.Je=!1,e()}),await p,r.Ve&&(delete r.Ve,await async function(e){return tt(await So(e,0,4)).getUint32(0,!0)==W}(e)||(await Ca(r.writer,Ia()),r.offset+=4));const m=await async function(e,n,r,o){const{writer:i}=e,s=new c;if(i.closeDisk){const a=t.from(r).sort((e,t)=>Da(n,e)-Da(n,t));let c=0;for(const t of a){const r=Da(n,t);await za(e,n,c,r-c),xa(i,await Aa(n,r))&&await i.closeDisk(),s.set(t,{offset:Ra(e,i),diskNumberStart:ga(i)}),c=r}await za(e,n,c,o-c)}else{const t=e.offset;await za(e,n,0,o),r.forEach(e=>s.set(e,{offset:t+Da(n,e),diskNumberStart:0}))}return s}(r,e,l,w);l.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,bitFlag:i,encrypted:a,uncompressedSize:c,compressedSize:l,extraFieldZip64:u}=e;let{compressionMethod:f,rawExtraField:d}=e;const{level:w,languageEncodingFlag:p,dataDescriptor:h}=i;d=Fa(d||de),e.extraFieldAES&&(f=99);const y=Ya(d),S=Boolean(u)&&u.uncompressedSize!==ae,E=Boolean(u)&&u.compressedSize!==ae,g=-7&Ja(w,p,h,a,f)|w<<1,{$e:b,et:x}=Xa({version:t,bitFlag:g,compressionMethod:f,uncompressedSize:c,compressedSize:l,rawLastModDate:r,rawFilename:o,nt:E,ot:S,extraFieldLength:y}),{crc32:R}=e;R!==ae&&ja(x,10,R);const{offset:F,diskNumberStart:z}=m.get(e);n.assign(e,{ot:S,nt:E,offset:F,diskNumberStart:z,it:!1,st:de,ct:de,lt:de,ut:de,ft:de,rawExtraField:d,wt:de,extendedTimestamp:!1,$e:b,et:x}),s.set(e.filename,e)})}catch(e){throw u.forEach(e=>i.delete(e)),e}finally{a(),o.delete(l),f&&f()}}add(e="",r,c={}){const l=this,{je:u}=l,f=async function(e,r,c,l){if(Oa(e,l=n.assign({},l),jo)&&!r.endsWith(re)&&(r+=re),e.He.has(r))throw new d(Ds);e.He.add(r),la<qe().maxWorkers?la++:await new S(e=>ua.push(e));try{return await async function(e,r,c,l){const u=function(e,n,r){let o=Oa(e,r,Wo),i=Oa(e,r,Ho,o?20:768);const s=Oa(e,r,qo),a=Pa(e,r,"uid"),c=Pa(e,r,"gid");let l=Pa(e,r,Jo),u=Oa(e,r,"unixExtraFieldType"),f=Oa(e,r,Qo),w=Oa(e,r,$o),p=Oa(e,r,ei);if(Me(a,O,Js),Me(c,O,Qs),Me(l,M,$s),u!==ae&&u!==aa&&u!==ca)throw new d(ea);if(u===ca&&(a!==ae&&a>M||c!==ae&&c>M))throw new d(ta);u!==ae||a===ae&&c===ae||(u=aa);let m=Pa(e,r,Lo),h=Oa(e,r,Bo);const y=m!==ae||h!==ae;if(a!==ae||c!==ae||l!==ae||u||s?(o=!1,i=i&L|768):y&&(o=!0,i&=L),Me(m,L,na),h&&("object"!=typeof h||t.isArray(h)))throw new d(ra);if(i>M)throw new d(Ns);let S=Ba(e,r,Uo,Mo);const E=S!==ae;E||(S=0),!r[jo]&&n.endsWith(re)&&(r[jo]=!0);const g=Oa(e,r,jo);if(g?(n.endsWith(re)||(n+=re),E||(S=16,o||(S|=16877<<16))):o||E||(S=s?493<<16:27525120),!o){const e=l!==ae||Boolean(f||w||p);l=l===ae?S>>16&M:l&M,f?l|=te:f=Boolean(l&te),w?l|=ne:w=Boolean(l&ne),p?l|=512:p=Boolean(512&l),E&&!e||(g?l=-61441&l|ee:l&$||(l|=32768),S=(l&M)<<16|S&M)}({msdosAttributesRaw:m,msdosAttributes:h}=function(e,t){if(e!==ae)e&=L;else if(t!==ae){const{readOnly:n,hidden:r,system:o,directory:i,archive:s}=t;let a=0;n&&(a|=1),r&&(a|=2),o&&(a|=4),i&&(a|=16),s&&(a|=32),e=a&L}return t===ae&&(t={readOnly:Boolean(1&e),hidden:Boolean(2&e),system:Boolean(4&e),directory:Boolean(16&e),archive:Boolean(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}}(m,h)),y&&(S=S&O|m&L);const b=S>>16&M,x=l!==ae&&40960==(l&$);return{name:n,ht:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:S,unixExternalUpper:b,uid:a,gid:c,unixMode:l,unixExtraFieldType:u,symlink:x,setuid:f,setgid:w,sticky:p,msdosAttributesRaw:m,msdosAttributes:h}}}(e,r,l);({name:r}=u);const f=function(e,t,n){const r=La(e,n,"encodeText")||wt;let i=r(t,ze);if(i===ae&&(i=wt(t)),Ya(i)>M)throw new d(vs);const s=n[xo]||"";if(typeof s!=fe)throw new d(Ts);let c=r(s,Ae);if(c===ae&&(c=wt(s)),Ya(c)>M)throw new d(Cs);const l=Oa(e,n,Zo);if(l!==ae&&l>M)throw new d(Ns);const u=Ma(e,n,Io,new a),f=Oa(e,n,ko),w=Ma(e,n,Co),p=Ma(e,n,_o),m=Ba(e,n,No,Oo,0),h=Oa(e,n,me),y=Oa(e,n,we),S=Oa(e,n,pe);Ue(y,S);const E=Pa(e,n,"encryptionStrength",3),g=Oa(e,n,Go),b=Oa(e,n,"extendedTimestamp",!0),x=Oa(e,n,"ntfsTimestamp"),R=Oa(e,n,"keepOrder",!0),F=Oa(e,n,ye),z=Oa(e,n,Ee),A=Oa(e,n,"bufferedWrite"),D=La(e,n,"createTempStream"),I=Oa(e,n,"dataDescriptorSignature",!0),k=Ne(Oa(e,n,he)),C=Oa(e,n,"useUnicodeFileNames",!0),T=Oa(e,n,Ko),_=h||T===ae?ae:yn(T);if(!h&&T!==ae&&0!==T&&8!==T&&!_)throw new d("Compression method not supported");let v=Pa(e,n,"level");if(Me(v,9,oa),e.options[Re]){if(y!==ae||S!==ae)throw new d(Os);v===ae&&T===ae&&(v=0)}h&&(v=ae);let N=Oa(e,n,Se),U=Oa(e,n,be);A&&U===ae&&(U=!1),(U===ae||g&&!h)&&(U=!0),v!==ae&&6!=v&&(N=!1);const O=Oa(e,n,Po);if(!(g||y===ae&&S===ae||o.isInteger(E)&&E>=1&&E<=3))throw new d(Us);const L=ha(n[Xo]),B=ha(n.localExtraField),W=ha(n.centralExtraField);return{comment:s,ht:{rawFilename:i,rawComment:c,version:l,lastModDate:u,rawLastModDate:f,lastAccessDate:w,creationDate:p,internalFileAttributes:m,passThrough:h,password:y,rawPassword:S,encryptionStrength:E,zipCrypto:g,extendedTimestamp:b,ntfsTimestamp:x,keepOrder:R,useWebWorkers:F,transferStreams:z,bufferedWrite:A,createTempStream:D,dataDescriptorSignature:I,signal:k,useUnicodeFileNames:C,compressionMethod:T,format:_?_.format:ae,codecURI:_?_.codecURI:ae,yt:_?_.versionNeeded:ae,level:v,useCompressionStream:N,dataDescriptor:U,zip64:O,rawExtraField:L,St:B,wt:W}}}(e,r,l),{comment:p}=f,m=l[Xo];e.Ze.set(r,ae);const h=e.Ye,y={};let E,g;f.ht.keepOrder&&(y.Et=new S(e=>E=e)),e.Ye=y;try{const{ht:t}=f;0==t.level||t.compressionMethod!==ae||t.passThrough||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;if(n&&!n.me)return!0;if(vn(t)||_n(t,An))return!0;if(n)try{return await void 0,!0}catch{return!1}return!1}(qe())||(t.level=0);const o=await async function(e,t,{ht:r},o){if(r.passThrough&&!t&&!Oa(e,o,jo))throw new d(Ys);let i;return t&&(t=new wo(t),await ho(t),({size:i}=t)),n.assign({reader:t},function(e,t,n,r,o){const{passThrough:i,zipCrypto:s,password:a,rawPassword:c,encryptionStrength:l}=r;let{dataDescriptor:u,zip64:f,level:w,compressionMethod:p}=r,m=0,h=0;if(i&&t){if(h=o[Fo],h===ae)throw new d(qs);if(p===ae)throw new d(Ks)}const y=!0===f,S=Oa(e,o,Vo);if(t&&i&&!S&&Ya(a,c))throw new d(Ms);const E=t&&(Boolean(a&&Ya(a)||c&&Ya(c))||i&&S);t||(w=0,p=0);const g=E?s?12:16+4*l:0;t&&(i?(o.uncompressedSize=h,m=n===ae?Va(h)+g:n):n===ae?(u=!0,(f||f===ae)&&(f=!0,h=m=4294967296)):(o.uncompressedSize=h=n,m=(Za(p,w)?Va(h):h)+g));const b=!(E||t&&(0!==n||i)||Za(p,w));b&&!s&&Oa(e,o,be)===ae&&(u=!1);const x=y||h>=O,R=y||m>=O;if(x||R){if(!1===f)throw new d(js);f=!0}return f=f||!1,{gt:m,ht:{dataDescriptor:u,bt:b,zip64:f,ot:x,nt:R,uncompressedSize:h,level:w,compressionMethod:p,encrypted:E}}}(e,Boolean(t),i,r,o))}(e,c,f,l);({reader:c}=o);const p=ba(e.writer),m=ga(e.writer),b=function(e){const{rawFilename:t,lastModDate:n,rawLastModDate:r,lastAccessDate:o,creationDate:i,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:f,dataDescriptor:w,directory:p,rawExtraField:m,St:h,encryptionStrength:y,extendedTimestamp:S,ntfsTimestamp:E,passThrough:g,encrypted:b,ot:x,nt:R,uncompressedSize:F,crc32:z}=e;let{version:A,compressionMethod:D}=e;const I=!p&&Za(D,c);let k;const C=g||!I,T=l&&(e.bufferedWrite||!w||!x&&!R||C),_=T||l&&w&&(x||R);if(l&&(x||R)){const e=20,t=Ea(e);if(t.xt(1),t.xt(e-4),k=t.Rt,T&&(t.Ft(F),C)){const e=b?u?12:16+4*y:0;t.Ft(g?0:F+e)}}else k=de;let v,N,U,O,L;if(b&&!u){const e=Ea(Ya(sa)+2);e.xt(39169),e.zt(sa),v=e.Rt,v[8]=y}else v=de;if(S){const e=va(n),t=Na(e);if(t){const t=9+(o?4:0)+(i?4:0),n=Ea(t);O=1+(o?2:0)+(i?4:0),n.xt(J),n.xt(t-4),n.At(O),n.Dt(e),o&&n.Dt(Ua(va(o))),i&&n.Dt(Ua(va(i))),U=n.Rt}else U=de;if(E===ae?!t||Boolean(o||i):E)try{const e=_a(n),t=Ea(36);t.xt(10),t.xt(32),t.It(4),t.xt(1),t.xt(24),t.Ft(e),t.Ft(o?_a(o):e),t.Ft(i?_a(i):e),N=t.Rt}catch{N=de}else N=de}else N=U=de;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=aa||t===ae&&n===ae)if(r!=ca||t===ae&&n===ae)L=de;else{const e=Ea(8);e.xt(30805),e.xt(4),e.xt((t===ae?0:t)&M),e.xt((n===ae?0:n)&M),L=e.Rt}else{const e=Sa(t===ae?0:t),r=Sa(n===ae?0:n),o=3+e.length+r.length,i=Ea(4+o);i.xt(30837),i.xt(o),i.At(1),i.At(e.length),i.zt(e),i.At(r.length),i.zt(r),L=i.Rt}}catch{L=de}D===ae&&(D=I?8:0),A===ae&&(A=0!=D||p||b?20:10);const{yt:W}=e;I&&W!==ae&&(A=A>W?A:W),l&&(A=A>45?A:45),b&&!u&&(A=A>51?A:51,g&&z!==ae&&(v[4]=1),Ga(tt(v),9,D),D=99);const P=_?Ya(k):0,V=P+Ya(v,U,N,L,m,h);if(V+(e[Re]?67:0)>M)throw new d(Ps);const Z=new a(2e3*s.ceil(s.floor(n.getTime()/1e3)/2)),{$e:H,et:G,rawLastModDate:j}=Xa({version:A,bitFlag:Ja(c,f,w,b,D),compressionMethod:D,uncompressedSize:F,lastModDate:Z<se?se:Z>ie?ie:Z,rawLastModDate:r,rawFilename:t,nt:R,ot:x,extraFieldLength:V}),q=Ea(oe+Ya(t)+V),K=q.Rt,Y=tt(K);return q.Dt(B),q.zt(H),q.zt(t),_&&q.zt(k),q.zt(v),q.zt(U),q.zt(N),q.zt(L),q.zt(m),q.zt(h),w&&(R||ja(Y,18,0),x||ja(Y,22,0)),{kt:K,Ct:Y,$e:H,et:G,lastModDate:n,rawLastModDate:j,encrypted:b,compressed:I,version:A,compressionMethod:D,Tt:O,st:de,_t:P,lt:U,ut:N,ft:L,ct:v,extraFieldLength:V}}(l=n.assign({},l,u.ht,f.ht,o.ht,{signature:l[Yo],crc32:l.crc32===ae?l[Yo]:l.crc32,offset:e.offset-p,diskNumberStart:m,[Re]:e.options[Re]})),x=function({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r,o=de,i=0,s=e?20:12;return n&&(s+=4),t&&(o=new w(s),r=tt(o),n&&(i=4,ja(r,0,P))),{vt:o,Nt:r,Ut:i}}(l),R=Ya(b.kt,x.vt);g=await async function(e,t,r,o,s){const{Ze:a,writer:c}=e,{keepOrder:l,dataDescriptor:u,bt:f,signal:w}=s,{Ot:p,Pe:m,Mt:h,Lt:y}=o,E=e.options[Re];let g,b,x,R,z,A,D=m,I=0;const k=l&&h?h.Et:ae;a.set(t,D);try{s.bufferedWrite||!l||e.Je||e.Ke||!u&&!f?(g=!0,e.Ke++,A=s.createTempStream?await s.createTempStream():new F(ae,ae,{highWaterMark:ce}),A.size=0,await ho(c)):(A=c,await k,await C()),await ho(A);const m=ba(c);e.Ve&&!g&&await ka(e,c),E&&!g&&ya(o,e.offset-m);const{kt:h}=p;g||await T();const y=ga(c),b=Ra(e,c);if(D.diskNumberStart=y,g||(R=!0,z=c.size,await Ca(A,h)),D=await async function(e,t,{diskNumberStart:r,Et:o},s,a,c){const{Ot:l,Bt:u,Wt:f}=s,{$e:w,et:p,lastModDate:m,rawLastModDate:h,encrypted:y,compressed:S,version:E,compressionMethod:g,st:b,_t:x,lt:R,Tt:F,ut:z,ft:A,ct:D}=l,{vt:I}=u,{rawFilename:k,lastAccessDate:C,creationDate:T,password:_,rawPassword:v,level:N,zip64:U,ot:M,nt:B,zipCrypto:W,dataDescriptor:P,directory:V,executable:Z,versionMadeBy:H,rawComment:G,rawExtraField:j,wt:q,useWebWorkers:K,transferStreams:Y,onstart:X,onprogress:J,onend:Q,signal:$,encryptionStrength:ee,extendedTimestamp:te,msDosCompatible:ne,internalFileAttributes:re,externalFileAttributes:oe,uid:ie,gid:se,unixMode:ce,symlink:le,setuid:ue,setgid:fe,sticky:de,unixExternalUpper:we,msdosAttributesRaw:pe,msdosAttributes:me,useCompressionStream:he,passThrough:ye,format:Se,codecURI:Ee}=c,ge={Et:o,versionMadeBy:H,zip64:U,directory:Boolean(V),executable:Boolean(Z),filenameUTF8:!0,rawFilename:k,commentUTF8:!0,rawComment:G,st:b,_t:x,lt:R,ut:z,ft:A,ct:D,rawExtraField:j,wt:q,extendedTimestamp:te,msDosCompatible:ne,internalFileAttributes:re,externalFileAttributes:oe,diskNumberStart:r,uid:ie,gid:se,unixMode:ce,symlink:Boolean(le),setuid:ue,setgid:fe,sticky:de,unixExternalUpper:we,msdosAttributesRaw:pe,msdosAttributes:me};let{crc32:be,uncompressedSize:xe}=c,Re=0;ye||(xe=0);const{writable:Fe}=t;if(e){const n=cn(Eo(e)),r=e.size,o={options:{codecType:Wn,inputSize:r,level:N,rawPassword:v,password:_,encryptionStrength:ee,zipCrypto:y&&W,passwordVerification:y&&W&&h>>8&L,computeCrc32:!ye,compressed:S&&!ye,encrypted:y&&!ye,useWebWorkers:K,useCompressionStream:he,transferStreams:Y,format:Se,codecURI:Ee,compressionMethod:g},config:a,ae:{signal:$,size:r,onstart:X,onprogress:J,onend:Q}};try{const e=await Sr({readable:n,writable:Fe},o);if(Re=e.outputSize,t.size+=Re,ye||(xe=e.inputSize,y&&!W||(be=e.crc32)),!B&&Re>=O||!M&&xe>=O)throw new d(js)}catch(e){throw e.outputSize!==ae&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,Ot:r,Bt:o},{zip64:s,zipCrypto:a,passThrough:c,dataDescriptor:l}){const{et:u,encrypted:f}=r,{Nt:d,Ut:w}=o;f&&!a&&!c||e===ae||(ja(u,10,e),l&&ja(d,w,e)),s?l&&(qa(d,w+4,i(t)),qa(d,w+12,i(n))):(ja(u,14,t),ja(u,18,n),l&&(ja(d,w+4,t),ja(d,w+8,n)))}({crc32:be,compressedSize:Re,uncompressedSize:xe,Ot:l,Bt:u},c),P&&await Ca(t,I),n.assign(ge,{uncompressedSize:xe,compressedSize:Re,lastModDate:m,rawLastModDate:h,creationDate:T,lastAccessDate:C,encrypted:Boolean(y),zipCrypto:Boolean(W),size:f+Re,compressionMethod:g,version:E,$e:w,et:p,signature:be,crc32:!y||W||ye?be:ae,Tt:F,ot:M,nt:B}),ge}(r,A,D,o,qe(),s),g||(R=!1),a.set(t,D),D.filename=t,g){if(await S.all([A.writable.getWriter().close(),k]),await C(),e.Ve&&await ka(e,c),x=!0,z=c.size,await T(),D.diskNumberStart=ga(c),D.offset=Ra(e,c),E){const t=o.Wt;ya(o,e.offset-ba(c)),D.size+=o.Wt-t}!function({rawFilename:e,encrypted:t,zip64:n,_t:r,crc32:o,compressedSize:s,uncompressedSize:a,ot:c,nt:l},u,{dataDescriptor:f,passThrough:d}){if(f||((!t||d&&o!==ae)&&ja(u,14,o),l||ja(u,18,s),c||ja(u,22,a)),n&&r){const t=oe+Ya(e)+4;qa(u,t,i(a)),qa(u,t+8,i(s))}}(D,p.Ct,s),await Ca(c,p.kt),await Ta(A.readable,c,w,e=>I+=e),c.size+=A.size,x=!1}else D.diskNumberStart=y,D.offset=b;return e.offset+=D.size,D}catch(n){if(x||R){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-z,g&&(e.offset+=I)}throw a.delete(t),n}finally{if(g&&e.Ke--,y&&y(k),b&&b(),g&&A&&A.dispose)try{await A.dispose()}catch{}}async function C(){e.Je=!0;const{Qe:t}=e;e.Qe=new S(t=>b=()=>{e.Je=!1,t()}),await t}async function T(){xa(c,Ya(p.kt))&&await c.closeDisk()}}(e,r,c,{Ot:b,Bt:x,Wt:R,Pe:y,Mt:h,Lt:E},l)}catch(t){throw e.Ze.delete(r),t}finally{E&&E(h&&h.Et)}return n.assign(g,{name:r,comment:p,extraField:m,[Oo]:g.internalFileAttributes,[Mo]:g.externalFileAttributes}),new ni(g)}(e,r,c,l)}catch(t){throw e.He.delete(r),t}finally{const e=ua.shift();e?e():la--}}(l,e,r,c);u.add(f);const p=()=>u.delete(f);return S.prototype.then.call(f,p,p),wa(l,f)}remove(e){const{He:t,Ze:n}=this;if(typeof e==fe&&(e=n.get(e)),e&&e.filename!==ae){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=de,n={}){const r=this,{je:o,writer:s}=this,{writable:a}=s;if(!(e instanceof w))throw new d(ks);if(Ya(e)>M)throw new d(Is);for(;o.size;)await S.allSettled(t.from(o));await S.allSettled(r.qe.map(e=>e.Pt));const c=r.qe.filter(e=>e.error&&!e.Vt);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.Vt=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const o=function(e){let t=0;for(const[,n]of e){const{rawFilename:e,ct:r,rawComment:o,ut:i,ft:s,rawExtraField:a,wt:c,extendedTimestamp:l,Tt:u,lastModDate:f,ot:w,nt:p,uncompressedSize:m,compressedSize:h}=n,y=n.offset>=O,S=n.diskNumberStart>=M;let E,g;if(y||S||w||p){const e=4+(w?8:0)+(p?8:0)+(y?8:0)+(S?4:0),t=Ea(e);t.xt(1),t.xt(e-4),w&&t.Ft(m),p&&t.Ft(h),y&&t.Ft(n.offset),S&&t.Dt(n.diskNumberStart),E=t.Rt}else E=de;n.st=E,n.Zt=y,n.it=S;const b=va(f);if(l&&Na(b)){const e=Ea(9);e.xt(J),e.xt(5),e.At(u),e.Dt(b),g=e.Rt}else g=de;n.lt=g;const x=Ya(E,r,i,s,g,a,c);if(x>M)throw new d(Ps);t+=q+Ya(e,o)+x}return t}(e.Ze),{Ht:s,Gt:a,jt:c}=await async function(e,n,r){const{Ze:o,writer:i}=e,s=new w(n);await ho(i);let a=0,c=0,l=ga(i),u=ba(i),f=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:d,st:w,ct:p,lt:m,ut:h,ft:y,rawExtraField:S,wt:E,rawComment:g,versionMadeBy:b,$e:x,et:R,ot:F,nt:z,it:A,Zt:D,internalFileAttributes:I,externalFileAttributes:k,diskNumberStart:C,uncompressedSize:T,compressedSize:_}=n,v=Ya(w,p,m,h,y,S,E),N=q+Ya(d,g)+v;xa(i,a+N-c)&&(await Ca(i,s.slice(c,a)),c=a,f=0,await i.closeDisk()),0==e&&(l=ga(i),u=ba(i)),F||ja(R,18,T),z||ja(R,14,_),(D||A)&&n.version<45&&Ga(R,0,45);const U=Ea(N);if(U.Dt(Z),U.xt(b),U.zt(x.subarray(0,24)),U.xt(v),U.xt(Ya(g)),U.xt(A?M:C),U.xt(I),U.Dt(k),U.Dt(D?O:t),U.zt(d),U.zt(w),U.zt(p),U.zt(m),U.zt(h),U.zt(y),U.zt(S),U.zt(E),U.zt(g),Ka(s,U.Rt,a),a+=N,f++,r.onprogress)try{await r.onprogress(e+1,o.size,new ni(n))}catch{}}return await Ca(i,c?s.slice(c):s),{Ht:{diskNumber:l,diskOffset:u},Gt:{diskNumber:ga(i),qt:f},jt:s}}(e,o,r),l=await async function(e,t,n){const r=La(e,n,"signCentralDirectory");if(r){const n=await r(t),o=Ya(n);if(o>M)throw new d(ia);const i=Ea(6+o);i.Dt(V),i.xt(o),i.zt(n);const{writer:s}=e;return xa(s,Ya(i.Rt))&&await s.closeDisk(),await Ca(s,i.Rt),6+o}return 0}(e,c,r);await async function(e,t,n,r){const{writer:o}=e,{Ht:s,Gt:a,Kt:c}=r;let{Yt:l}=r,u=e.Ze.size,f=s.diskNumber,w=Ra(e,s);const p=Ya(t);if(p>M)throw new d(Is);let m=Oa(e,n,Po),h=ga(o);if(xa(o,(m?98:K)+p)&&h++,w>=O||l>=O||u>=M||h>=M){if(!1===m)throw new d(js);m=!0}const y=Ea(m?98:K);xa(o,Ya(y.Rt)+p)&&await o.closeDisk(),h=ga(o);let S=h==a.diskNumber?a.qt:0;m&&(y.Dt(G),y.Ft(44),y.xt(45),y.xt(45),y.Dt(h),y.Dt(f),y.Ft(S),y.Ft(u),y.Ft(l),y.Ft(w),y.Dt(j),y.Dt(h),y.Ft(i(Ra(e,o))+i(l)+i(c)),y.Dt(h+1),Oa(e,n,"supportZip64SplitFile",!0)&&(h=M,f=M),S=M,u=M,w=O,l=O),y.Dt(H),y.xt(h),y.xt(f),y.xt(S),y.xt(u),y.Dt(l),y.Dt(w),y.xt(p),await Ca(o,y.Rt),p&&await Ca(o,t)}(e,n,r,{Ht:s,Gt:a,Yt:o,Kt:l})}(r,e,n),!mo(s)&&Oa(r,n,ge)||await a.getWriter().close(),s.getData?s.getData():a}}class da extends S{then(e,t){const{Xt:n}=this;return n&&(n.Vt=!0),super.then(e,t)}}function wa(e,t){const n=new da((e,n)=>S.prototype.then.call(t,e,n)),r={};return n.Xt=r,r.Pt=S.prototype.then.call(n,ae,e=>r.error=e),e.qe.push(r),n}async function pa(e,t){try{await e.writer.writable.abort(t)}catch{}}function ma(e,t,n){e.je.add(t),t.catch(e=>{try{n(e)}catch{}})}function ha(e){if(!e)return de;if(!(e instanceof c))throw new d(Ls);let t=0,n=0;e.forEach((e,n)=>{if(Oe(n,M,Bs),!(e instanceof w))throw new d(Ws);if(Ya(e)>M)throw new d(Ps);t+=4+Ya(e)});const r=new w(t),o=tt(r);return e.forEach((e,t)=>{Ga(o,n,t),Ga(o,n+2,Ya(e)),Ka(r,e,n+4),n+=4+Ya(e)}),r}function ya(e,t){const{Ot:n}=e;let{kt:r,extraFieldLength:o}=n,i=64-(t+Ya(r))%64;i<4&&(i+=64);const s=new w(i),a=tt(s);Ga(a,0,6534),Ga(a,2,i-4);const c=r;n.kt=r=new w(Ya(c)+i),Ka(r,c),Ka(r,s,Ya(c));const l=tt(r);Ga(l,28,o+i),n.Ct=l,e.Wt+=i}function Sa(e){const t=new w(4);tt(t).setUint32(0,e,!0);let n=4;for(;n>1&&0===t[n-1];)n--;return t.subarray(0,n)}function Ea(e){const t=new w(e),n=tt(t);let r=0;return{Rt:t,At:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},xt:e=>{Ga(n,r,e),r+=2},Dt:e=>{ja(n,r,e),r+=4},Ft:e=>{qa(n,r,i(e)),r+=8},zt:e=>{Ka(t,e,r),r+=Ya(e)},It:e=>r+=e}}function ga(e){const{diskNumber:t=0}=e;return t}function ba(e){const{diskOffset:t=0}=e;return t}function xa(e,t){const{availableSize:n=ce}=e;return t>n}function Ra(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.Ge:0)}function Fa(e){const t=tt(e);let n=0;for(;n+4<=Ya(e);){const r=4+Ha(t,n+2);if(1==Ha(t,n))return Fa($e(e.subarray(0,n),e.subarray(s.min(n+r,Ya(e)))));n+=r}return e}async function za(e,t,n,r){if(r>0){const{writer:o}=e;let i=0;try{await Ta(Eo(t,{offset:n,size:r}),o,ae,e=>i+=e)}catch(t){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}throw t}finally{o.size+=i,e.offset+=i}}}async function Aa(e,t){const n=await So(e,t,oe);if(Ya(n)<oe)return oe;const r=tt(n);return oe+Ha(r,26)+Ha(r,28)}function Da(e,{offset:t,diskNumberStart:n}){return t+(e.Ne?e.Ne(n):0)}function Ia(){const e=new w(4);return ja(tt(e),0,W),e}async function ka(e,t){delete e.Ve,await Ca(t,Ia()),e.offset+=4}async function Ca(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=Ya(t),await r.write(t)}finally{r.releaseLock()}}async function Ta(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new A({async write(e){await o.ready,await o.write(e),r(Ya(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function _a(e){if(e){const t=(i(e.getTime())+i(116444736e5))*i(1e4);return t<Hs?Hs:t>Gs?Gs:t}}function va(e){return s.floor(e.getTime()/1e3)}function Na(e){return e>=Vs&&e<=Zs}function Ua(e){return s.min(Zs,s.max(Vs,e))}function Oa(e,t,n,r){const o=t[n]===ae?e.options[n]:t[n];return o===ae?r:o}function Ma(e,t,n,r){const i=Oa(e,t,n,r);if(null===i)return r;if(i!==ae&&(typeof i.getTime!=ue||o.isNaN(i.getTime())))throw new d(_s);return i}function La(e,t,n){return ve(Oa(e,t,n))}function Ba(e,t,n,r,o){const i=Wa(t,n,r),s=i===ae?Wa(e.options,n,r):i;return s===ae?o:s}function Wa(e,t,n){return e[t]===ae?e[n]:e[t]}function Pa(e,t,n,r){return Le(Oa(e,t,n,r))}function Va(e){return e+5*(s.floor(e/16383)+1)}function Za(e,t){return e===ae?t===ae||t>0:0!==e}function Ha(e,t){return e.getUint16(t,!0)}function Ga(e,t,n){e.setUint16(t,n,!0)}function ja(e,t,n){e.setUint32(t,n,!0)}function qa(e,t,n){e.setBigUint64(t,n,!0)}function Ka(e,t,n){e.set(t,n)}function Ya(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Xa({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:s,rawFilename:a,nt:c,ot:l,extraFieldLength:u}){const f=Ea(26),d=f.Rt,w=tt(d);if(f.xt(e),f.xt(t),f.xt(n),s===ae){const e=new m(1),t=tt(e);Ga(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Ga(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),s=e[0]}return f.Dt(s),f.It(4),c||o!==ae?f.Dt(c?O:o):f.It(4),l||r!==ae?f.Dt(l?O:r):f.It(4),f.xt(Ya(a)),f.xt(u),{$e:d,et:w,rawLastModDate:s}}function Ja(e,t,n,r,o){let i=0;return t&&(i|=Q),n&&(i|=8),8!=o&&9!=o||(e>=0&&e<=3&&(i|=6),e>3&&e<=5&&(i|=4),9==e&&(i|=2)),r&&(i|=1),i}function Qa(e,t){if(!e)return!1;const{Jt:n}=e;return n?n.includes(t):_n(e,t)}const $a=1048576,ec=".zip.js-temp",tc=1048576,nc=1048576,rc=".zip.js-temp",oc="createSyncAccessHandle is only available in dedicated workers";try{!function(e){const t=Xe(Qe(e));n.assign(Pe,t),n.assign(je,t)}({baseURI:void 0===b&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===b?location.href:U&&"SCRIPT"===U.tagName.toUpperCase()&&U.src||new f("zip-core.min.js",b.baseURI).href})}catch{}e.BlobReader=Hr,e.BlobWriter=Gr,e.Data64URIReader=class extends Wr{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{Qt:e,$t:r,size:s.floor(.75*(t-r))})}readUint8Array(e,t){const{$t:n,Qt:r}=this,o=new w(t),i=4*s.floor(e/3),a=atob(r.substring(i+n,4*s.ceil((e+t)/3)+n)),c=e-3*s.floor(i/4);let l=0;for(let e=c;e<c+t&&e<a.length;e++)o[e-c]=a.charCodeAt(e),l++;return l<o.length?o.subarray(0,l):o}},e.Data64URIWriter=class extends Pr{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",en:""})}writeUint8Array(e){const t=this;let n,o=t.en;const i=t.en.length;for(t.en="",n=0;n<3*s.floor((i+e.length)/3)-i;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.en+=r.fromCharCode(e[n]);o.length>2?t.data+=R(o):t.en=o+t.en}getData(){return this.data+R(this.en)}},e.ERR_AMBIGUOUS_ARCHIVE=mi,e.ERR_BAD_FORMAT=ri,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=si,e.ERR_DUPLICATED_NAME=Ds,e.ERR_ENCRYPTED=li,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=hi,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=pi,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=ii,e.ERR_EOCDR_NOT_FOUND=oi,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=ci,e.ERR_HTTP_RANGE=Ir,e.ERR_HTTP_RESOURCE_CHANGED=kr,e.ERR_INVALID_AUTHENTICATION_CODE=bt,e.ERR_INVALID_CODEC_DEFINITION=fn,e.ERR_INVALID_CODEC_MODULE=wn,e.ERR_INVALID_COMMENT=Is,e.ERR_INVALID_COMMENT_TYPE=ks,e.ERR_INVALID_COMPRESSED_DATA=xn,e.ERR_INVALID_CRC32=Rn,e.ERR_INVALID_DATE=_s,e.ERR_INVALID_ENCRYPTION_STRENGTH=Us,e.ERR_INVALID_ENTRY_COMMENT=Cs,e.ERR_INVALID_ENTRY_COMMENT_TYPE=Ts,e.ERR_INVALID_ENTRY_NAME=vs,e.ERR_INVALID_EXTRAFIELD=Ls,e.ERR_INVALID_EXTRAFIELD_DATA=Ps,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=Ws,e.ERR_INVALID_EXTRAFIELD_TYPE=Bs,e.ERR_INVALID_FILENAME_VALIDATION=Ei,e.ERR_INVALID_FUNCTION_OPTION=Ce,e.ERR_INVALID_GID=Qs,e.ERR_INVALID_LEVEL=oa,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=gi,e.ERR_INVALID_MAX_WORKERS=Be,e.ERR_INVALID_MSDOS_ATTRIBUTES=na,e.ERR_INVALID_MSDOS_DATA=ra,e.ERR_INVALID_PASSWORD=Et,e.ERR_INVALID_PASSWORD_TYPE=_e,e.ERR_INVALID_SIGNAL=Te,e.ERR_INVALID_SIGNATURE=gt,e.ERR_INVALID_SIGNATURE_DATA=ia,e.ERR_INVALID_STRICTNESS=Si,e.ERR_INVALID_UID=Js,e.ERR_INVALID_UNCOMPRESSED_SIZE=bn,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=ea,e.ERR_INVALID_UNIX_ID_SIZE=ta,e.ERR_INVALID_UNIX_MODE=$s,e.ERR_INVALID_VERSION=Ns,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Cr,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=ai,e.ERR_OVERLAPPING_ENTRY=wi,e.ERR_RESERVED_COMPRESSION_METHOD=dn,e.ERR_SPLIT_ZIP_FILE=di,e.ERR_UNDEFINED_COMPRESSION_METHOD=Ks,e.ERR_UNDEFINED_READER=Ys,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=qs,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=yi,e.ERR_UNSUPPORTED_COMPRESSION=fi,e.ERR_UNSUPPORTED_CONTEXT=oc,e.ERR_UNSUPPORTED_CRYPTO_API=Rt,e.ERR_UNSUPPORTED_ENCRYPTION=ui,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=Ms,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=Os,e.ERR_UNSUPPORTED_FORMAT=js,e.ERR_UNSUPPORTED_UINT64=bi,e.ERR_WORKER_STARTUP_TIMEOUT=Hn,e.ERR_WRITER_NOT_INITIALIZED=Tr,e.ERR_ZIP_NOT_EMPTY=Xs,e.HttpRangeReader=class extends lo{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=lo,e.Reader=Wr,e.SplitDataReader=uo,e.SplitDataWriter=fo,e.TextReader=class extends Hr{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends Gr{constructor(e){super(),n.assign(this,{encoding:e,tn:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,tn:t}=this,n=await super.getData();return n.text&&t?n.text():function(e,t){return Ar(e,t,!1)}(new w(await n.arrayBuffer()),e)}},e.Uint8ArrayReader=class extends Wr{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{Rt:e,size:e.length})}readUint8Array(e,t){return this.Rt.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Pr{constructor(e){super(),this.nn=e||262144}init(e=0){n.assign(this,{offset:0,Rt:new w(e>0?e:this.nn)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.Rt.length){let e=t.Rt.length?2*t.Rt.length:t.nn;for(;e<n;)e*=2;const r=t.Rt;t.Rt=new w(e),t.Rt.set(r)}t.Rt.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.Rt.length?this.Rt:this.Rt.slice(0,this.offset)}},e.VERSION="2.10.0",e.WARNING_APPENDED_DATA=Ii,e.WARNING_COMPRESSED_PATCHED_DATA=Fi,e.WARNING_DUPLICATE_FILENAME=_i,e.WARNING_MALFORMED_EXTRA_FIELD=zi,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=Ni,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=Ui,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=Oi,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=vi,e.WARNING_PREPENDED_CENTRAL_DIRECTORY=Ci,e.WARNING_PREPENDED_DATA=ki,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=Ti,e.WARNING_UNKNOWN_VERSION=Ri,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=Ai,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=xi,e.WARNING_WRAPPED_ENTRIES_COUNT=Di,e.Writer=Pr,e.ZipReader=Zi,e.ZipReaderStream=Hi,e.ZipWriter=fa,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new F;this.readable=t,this.zipWriter=new fa(n,e),this.je=new l}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:o}=new F({start(e){n=e},flush:()=>{!async function(){try{await t.close()}catch(e){await pa(t,e)}}()}});return ma(this,this.zipWriter.add(e,r),e=>n.error(e)),{readable:this.readable,writable:o}}writable(e){let t;const{readable:n,writable:r}=new F({start(e){t=e}});return ma(this,this.zipWriter.add(e,n),e=>t.error(e)),r}async close(e,n={}){const{zipWriter:r}=this,o=(await S.allSettled(t.from(this.je))).filter(e=>"rejected"==e.status).map(e=>e.reason);if(o.length){const[e]=o;try{e.entryErrors=o}catch{}throw await pa(r,e),e}try{return await r.close(e,n)}catch(e){throw await pa(r,e),e}}},e.configure=function(e){n.assign(je,Xe(Qe(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=tc}=e;return function(){const e=[];let n,r,o,i=0,s=!1;const a=new A({async write(o){s?await n.write(o):(e.push(o),i+=o.length,i>t&&await async function(){const t=new F;r=ln(t.readable),n=t.writable.getWriter(),s=!0;for(const t of e)await n.write(t);e.length=0}())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:a,readable:new z({async pull(t){if(s){if(!o){const e=await r;o=e.stream().getReader()}const{value:e,done:n}=await o.read();n?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){o&&await o.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(n){try{await n.abort()}catch{}n=null}r&&(r.catch(()=>{}),r=null),e.length=0}}}},e.createOPFSTempStream=function(e={}){const{thresholdBytes:n=$a,directoryName:r=ec,getDirectory:o=()=>k.storage.getDirectory()}=e;let i;function s(){return i||(i=S.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return function(){const e=[];let r,o,i,a,c=0,l=!1;const u=new A({async write(a){l?await i.write(a):(e.push(a),c+=a.length,c>n&&await async function(){const n=await s();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join(""),o=await n.getFileHandle(r,{create:!0}),i=(await o.createWritable()).getWriter(),l=!0;for(const t of e)await i.write(t);e.length=0}())},async close(){i&&(await i.close(),i=null)}});let f=0;return{writable:u,readable:new z({async pull(t){if(l){if(!a){const e=await o.getFile();a=e.stream().getReader()}const{value:e,done:n}=await a.read();n?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){a&&await a.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await s();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=nc,directoryName:r=rc,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d(oc);const i=o||(()=>k.storage.getDirectory());let a;function c(){return a||(a=S.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),a}return function(){const e=[];let r,o,i=0,a=!1,l=0,u=0;const f=new A({async write(s){a?(o.write(s,{at:l}),l+=s.length):(e.push(s),i+=s.length,i>n&&await async function(){const n=await c();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join("");const i=await n.getFileHandle(r,{create:!0});o=await i.createSyncAccessHandle(),a=!0;for(const t of e)o.write(t,{at:l}),l+=t.length;e.length=0}())},close(){o&&o.flush()}});let d=0;return{writable:f,readable:new z({pull(t){if(a){const e=l-u;if(e<=0)return void t.close();const n=new w(s.min(524288,e)),r=o.read(n,{at:u});r?(u+=r,t.enqueue(n.subarray(0,r))):t.close()}else d<e.length?t.enqueue(e[d++]):t.close()}},{highWaterMark:0}),dispose:async function(){if(o){try{o.close()}catch{}o=null}if(r){try{const e=await c();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=function(){return"application/octet-stream"},e.getRegisteredCodecs=Sn,e.getSupportedCompressionMethods=function(){const{CompressionStream:e,DecompressionStream:t,CompressionStreamFallback:n,DecompressionStreamFallback:r}=qe(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:Qa(n,Fn)||Qa(e,Fn)||Qa(e,An),decompression:Qa(r,Fn)||Qa(t,Fn)||Qa(t,An),registered:!1},{compressionMethod:9,compression:!1,decompression:Qa(r,zn)||Qa(t,zn),registered:!1}];for(const e of Sn()){const t=En(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==ue:ae,decompression:t?typeof t.DecompressionStream==ue:ae,registered:!0})}return o},e.isZipFile=Gi,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:i,DecompressionStream:s,versionNeeded:a}=e;if(!o.isInteger(t)||t<0||t>M||typeof n!=fe||!n.length)throw new d(fn);if(pn.includes(t))throw new d(dn);const c=typeof i==ue||typeof s==ue;if(!(c||typeof r==fe&&r.length))throw new d(fn);mn.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:a}),c&&gn(n,{CompressionStream:i,DecompressionStream:s})},e.resetConfiguration=function(){for(const e of Ge)delete je[e];n.assign(je,Pe)},e.terminateWorkers=async function(){await S.allSettled(wr.map(e=>(Rr(e),e.terminate()))),Gn=ae,jn=!1},e.unregisterCodec=function(e){const t=mn.get(e);if(t){let n;mn.delete(e),mn.forEach(e=>n=n||e.format==t.format),n||hn.delete(t.format)}}});
|