@zip.js/zip.js 2.11.3 → 2.11.4

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.
@@ -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:a,Date:s,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:b,document:g,crypto:R,btoa:x,TransformStream:z,ReadableStream:F,WritableStream:D,CompressionStream:A,DecompressionStream:k,navigator:I,Worker:C,Symbol:T,setTimeout:v,clearTimeout:_,structuredClone:N}="undefined"!=typeof globalThis?globalThis:self;var U=void 0!==g?g.currentScript:null;const O=4294967295,M=65535,L=255,B=67324752,W=134695760,P=W,Z=84233040,V=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 s(2107,11,31,23,59,58),ae=new s(1980,0,1),se=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",be="preventClose",ge="dataDescriptor",Re="offset",xe="usdz",ze="maxAppendedDataSize",Fe="filename",De="comment",Ae="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||se}function Ue(e,t){if(e&&typeof e!=fe||t&&!(t instanceof w))throw new d(ve)}function Oe(e,t,n){if(!o.isInteger(e)||e<0||e>t)throw new d(n)}function Me(e,t,n){e!==se&&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 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 A!=le&&A,DecompressionStream:typeof k!=le&&k},Ze="maxWorkers",Ve=["chunkSize",Ze,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],He=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],Ge=["baseURI","wasmURI","workerURI","useCompressionStream","useWebWorkers","transferStreams",...Ve,...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?a.max(e,64):65536}function Xe(e){const t={};for(const n of Ge){const r=e[n];r!==se&&(t[n]=Je(n,r))}return t}function Je(e,t){if(Ve.includes(e)){if(t=Le(t),e==Ze&&(!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===se&&r===se)return e;const o=n.assign({},e);return o.CompressionStreamFallback===se&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===se&&(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,at,st,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]^st[e>>>24&255]^at[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 z{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,a.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=>a.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.D=[1732584193,4023233417,2562383102,271733878,3285377520],t.A=[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.D.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 a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);e<=o;e+=t.blockSize)t._(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),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(a.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}O(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],s=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,s,c,l)+u+o[e]+n.A[a.floor(e/20)]|0;u=l,l=c,c=n.O(30,s),s=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+s|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,a,s,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=a=e.encrypt(p.concat(t,[l])),s=1;s<n;s++)for(a=e.encrypt(a),c=0;c<a.length;c++)i[c]^=a[c];for(s=0;w<(o||1)&&s<i.length;s++)f.setInt32(w,i[s]),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.Z=!1}update(e){this.Z=!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.Z)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},St=typeof R!=le&&typeof R.getRandomValues==ue,Et="Invalid password",bt="Invalid authentication code",gt="zipjs-abort-check-password",Rt="Crypto API not supported";function xt(e){if(St)return R.getRandomValues(e);throw new d(Rt)}const zt=16,Ft={name:"PBKDF2"},Dt=n.assign({hash:{name:"HMAC"}},Ft),At=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Ft),kt=["deriveBits"],It=[8,12,16],Ct=[16,24,32],Tt=10,vt=[0,0,0,0],_t=typeof R!=le,Nt=_t&&R.subtle,Ut=_t&&typeof Nt!=le,Ot=mt.bytes,Mt=class{constructor(e){const t=this;t.V=[[[],[],[],[],[]],[[],[],[],[],[]]],t.V[0][0][0]||t.H();const n=t.V[0][4],r=t.V[1],o=e.length;let i,a,s,c=1;if(4!==o&&6!==o&&8!==o)throw new d("invalid aes key size");for(t.A=[a=e.slice(0),s=[]],i=o;i<4*o+28;i++){let e=a[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))),a[i]=a[i-o]^e}for(let e=0;i;e++,i--){const t=a[3&e?i:i-4];s[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.V[0],t=this.V[1],n=e[4],r=t[4],o=[],i=[];let a,s,c,l;for(let e=0;e<256;e++)i[(o[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=s||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=o[c=o[s=o[u]]];let f=16843009*l^65537*c^257*s^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.A[t],r=n.length/4-2,o=[0,0,0,0],i=this.V[t],a=i[0],s=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=a[m>>>24]^s[h>>16&255]^c[y>>8&255]^l[255&S]^n[E],w=a[h>>>24]^s[y>>16&255]^c[S>>8&255]^l[255&m]^n[E+1],p=a[y>>>24]^s[S>>16&255]^c[m>>8&255]^l[255&h]^n[E+2],S=a[S>>>24]^s[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}},Lt=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)}},Bt=yt.M;let Wt=_t&&Ut&&typeof Nt.importKey==ue,Pt=_t&&Ut&&typeof Nt.deriveBits==ue;class Zt extends z{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){super({start(){Ht(this,e,t,n)},async transform(e,t){const n=this,{password:o,strength:i,ee:a,ready:s}=n;o?(await async function(e,t,n,r){const o=await jt(e,t,n,Kt(r,0,It[t])),i=Kt(r,It[t]);if(o[0]!=i[0]||o[1]!=i[1])throw new d(Et)}(n,i,o,Kt(e,0,It[i]+2)),e=Kt(e,It[i]+2),r?t.error(new d(gt)):a()):await s;const c=new w(e.length-Tt-(e.length-Tt)%zt);t.enqueue(Gt(n,e,c,0,Tt,!0))},async flush(e){const{te:t,ne:n,re:r,ready:i}=this;if(n&&t){await i;const a=Kt(r,0,r.length-Tt),s=Kt(r,r.length-Tt);let c=de;if(a.length){const e=Xt(Ot,a);n.update(e);const r=t.update(e);c=Yt(Ot,r)}const l=Kt(Yt(Ot,n.digest()),0,Tt);let u=r.length<Tt?1:0;for(let e=0;e<Tt;e++)u|=l[e]^s[e];if(u&&o)throw new d(bt);e.enqueue(c)}}})}}class Vt extends z{constructor({password:e,rawPassword:t,encryptionStrength:n}){super({start(){Ht(this,e,t,n)},async transform(e,t){const n=this,{password:r,strength:o,ee:i,ready:a}=n;let s=de;r?(s=await async function(e,t,n){const r=xt(new w(It[t]));return $e(r,await jt(e,t,n,r))}(n,o,r),i()):await a;const c=new w(s.length+e.length-e.length%zt);c.set(s,0),t.enqueue(Gt(n,e,c,s.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(Xt(Ot,r));n.update(e),i=Yt(Ot,e)}const a=Yt(Ot,n.digest()).slice(0,Tt);e.enqueue($e(i,a))}}})}}function Ht(e,t,r,o){n.assign(e,{ready:new S(t=>e.ee=t),password:qt(t,r),strength:o-1,re:de})}function Gt(e,t,n,r,o,i){const{te:a,ne:s,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=Xt(Ot,Kt(t,u,u+zt));i&&s.update(e);const o=a.update(e);i||s.update(o),n.set(Yt(Ot,o),u+r)}return e.re=Kt(t,u),n}async function jt(e,r,o,i){e.password=null;const a=await async function(e,t,n,r,o){if(!Wt)return yt.importKey(t);try{return await Nt.importKey("raw",t,n,!1,o)}catch{return Wt=!1,yt.importKey(t)}}(0,o,Dt,0,kt),s=await async function(e,t,n){if(!Pt)return yt.L(t,e.salt,At.iterations,n);try{return await Nt.deriveBits(e,t,n)}catch{return Pt=!1,yt.L(t,e.salt,At.iterations,n)}}(n.assign({salt:i},At),a,8*(2*Ct[r]+2)),c=new w(s),l=Xt(Ot,Kt(c,0,Ct[r])),u=Xt(Ot,Kt(c,Ct[r],2*Ct[r])),f=Kt(c,2*Ct[r]);return n.assign(e,{keys:{key:l,oe:u,passwordVerification:f},te:new Lt(new Mt(l),t.from(vt)),ne:new Bt(u)}),f}function qt(e,t){return t===se?wt(e):t}function Kt(e,t,n){return e.subarray(t,n)}function Yt(e,t){return e.R(t)}function Xt(e,t){return e.F(t)}class Jt extends z{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){$t(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=en(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(gt)):t.enqueue(en(n,e))}})}}class Qt extends z{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){$t(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=xt(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(tn(n,t),0),o=12}else r=new w(e.length),o=0;r.set(tn(n,e),o),t.enqueue(r)}})}}function $t(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]),ae:new ft(o[2])}),r)for(let t=0;t<r.length;t++)nn(e,r[t]);else for(let n=0;n<t.length;n++)nn(e,t.charCodeAt(n))}(e,t,r)}function en(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=rn(e)^t[r],nn(e,n[r]);return n}function tn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=rn(e)^t[r],nn(e,t[r]);return n}function nn(e,t){let[,n]=e.keys;e.ie.append([t]);const r=~e.ie.get();n=an(a.imul(an(n+on(r)),134775813)+1),e.ae.append([n>>>24]);const o=~e.ae.get();e.keys=[r,n,o]}function rn(e){const t=2|e.keys[2];return on(a.imul(t,1^t)>>>8)}function on(e){return 255&e}function an(e){return 4294967295&e}function sn(e){if(e instanceof F)return e;const t=e.getReader();return new F({async pull(e){const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})}function cn(e,t){e=sn(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=ue||new y([]).stream()instanceof F)return new u(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new D({write(e){r.push(e)}})).then(()=>new y(r,n))}function ln(e){if(e instanceof D)return e;const t=e.getWriter();return new D({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const un="Invalid codec definition",fn="Reserved compression method",dn="Invalid codec module",wn="Compression method not supported",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 bn(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=ue&&typeof r!=ue)throw new d(dn);hn.set(e,{CompressionStream:n,DecompressionStream:r})}const gn="Invalid uncompressed size",Rn="Invalid compressed data",xn="Invalid CRC32",zn="deflate-raw",Fn="deflate64-raw",Dn="gzip",An=[31,139,8];class kn extends z{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:a,zipCrypto:s,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:d,inputSize:w}=e,p=this;let m,y,S,E=super.readable;const b=f&&En(f),g=c&&o&&!u&&!b&&(!i||s)&&Boolean(a&&r);if(i&&!s||!c||g||(m=new dt,E=Mn(E,m)),o)if(b)E=Ln(E,Un(b.CompressionStream,f,{level:l,chunkSize:t,compressionMethod:d,uncompressedSize:w}));else if(g)S=new In,E=Ln(E,new r(Dn)),E=Mn(E,S);else try{E=On(E,a,{level:l,chunkSize:t},r,n)}catch(e){let t;try{t=new r(Dn)}catch{throw e}E=Ln(E,t),E=Mn(E,new In)}i&&(s?E=Mn(E,new Qt(e)):(y=new Vt(e),E=Mn(E,y))),Nn(p,E,()=>{i&&!s||!c||(p.crc32=g?S.crc32:new h(m.value.buffer).getUint32(0))})}}class In extends z{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=a.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,s=a.min(i,n.length);r.enqueue($e(n.subarray(0,s),e.subarray(0,i-s))),n=$e(n.subarray(s),e.subarray(i-s))},flush(){const t=tt(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class Cn extends z{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:a,crc32:s,compressed:c,useCompressionStream:l,deflate64:u,format:f,compressionMethod:p,rawBitFlag:m,outputSize:y}=e;let E,b,g=super.readable;if(i&&(o?g=Mn(g,new Jt(e)):(b=new Zt(e),g=Mn(g,b))),c){const e=f&&En(f);if(e)g=Ln(g,Un(e.DecompressionStream,f,{chunkSize:t,compressionMethod:p,rawBitFlag:m,uncompressedSize:y}));else try{g=On(g,l,{chunkSize:t,deflate64:u},r,n)}catch(e){if(u||y===se)throw e;let t;try{t=new r(Dn)}catch{throw e}g=function(e,t,n){const r=new ft;let o,i,a,s=0,c=!1;const l=new S((e,t)=>{i=e,a=t});l.catch(()=>{}),n||i();const u=new z({start(e){const t=new w(10);t.set(An),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){a(e)}}),f=new z({transform(e,t){r.append(e),s+=e.length,s>=n?i():c&&p(),t.enqueue(e)},cancel(e){a(e)}});return e=Mn(e,u),Mn(e=Ln(e,t),f);function p(){m(),o=v(()=>a(new d(gn)),5e3)}function m(){_(o)}}(g,t,y)}g=function(e){const t=e.getReader();return new F({async pull(e){let n;try{n=await t.read()}catch(e){if(e&&e.message)throw e;const t=new d(Rn);throw t.cause=e,t}const{value:r,done:o}=n;o?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})}(g)}a&&(E=new dt,g=Mn(g,E)),Nn(this,g,()=>{if(a){const e=new h(E.value.buffer);if(s!=e.getUint32(0,!1))throw new d(xn)}})}}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===se){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function _n(e){return vn(e,zn)}function Nn(e,t,r){t=Mn(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Un(e,t,n){if(!e)throw new d(wn);return new e(t,n)}function On(e,t,n,r,o){const i=t&&r?r:o||r,a=n.deflate64?Fn:zn;let s;try{s=new i(a,n)}catch(e){if(!t||!o||i==o)throw e;s=new o(a,n)}return Ln(e,s)}function Mn(e,t){return sn(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 Zn extends z{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 a=0;const s=new i(e,t),c=super.readable,l=new z({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:a})}}),u=new z({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==se&&r.outputSize>e.outputSize))throw new d(gn)},flush(){const{crc32:e}=s;n.assign(r,{crc32:e,inputSize:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(s).pipeThrough(u)})}}class Vn extends z{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,se:a,useWebWorkers:s,transferStreams:c,workerURI:l,createWorker:u},f){const{signal:d}=a;return jn&&(u=se),n.assign(e,{ce:!0,le:(e.le||0)+1,readable:t.pipeThrough(new Vn(Ke(i))).pipeThrough(new Xn(a),{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===se&&(Gn=typeof C!=le),(s&&qn&&(Gn&&l||u)?qn:Qn)(e,i)}}class Xn extends z{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 Zn(e,o),await t.pipeThrough(i).pipeThrough(new Vn(Ke(o))).pipeTo(n,{preventClose:!0,preventAbort:!0});const{crc32:r,inputSize:a,outputSize:s}=i;return{crc32:r,inputSize:a,outputSize:s}}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!==se}catch{}var ar;function sr(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:a}=r;let s,c,l;if(a)s=a();else if(rr===se||nr!==e){const n=typeof e==ue;c=n?e(i):e;const a=c.startsWith("data:"),u=c.startsWith("blob:");if(a||u){o===se&&(o=!1),o&&(l=er);try{s=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===se&&(o=!0),o&&(l=er);try{c=new f(c,t)}catch{}try{s=new C(c,l)}catch(n){if(o)return lr(e,t,r,!1,i);throw n}}nr=e,rr=c,or=l}else s=new C(rr,or);return s.addEventListener("message",e=>{r.he=!0,ur(r),async function({data:e},t){const{type:r,value:o,messageId:i,result:a,error:s}=e,{reader:c,writer:l,ye:u,Se:f,we:p,le:m}=t,h=()=>t.le!=m;try{if(s){const{message:e,stack:t,code:r,name:o,outputSize:i,cause:a,codecImportFailed:c}=s,l=new d(e);n.assign(l,{stack:t,code:r,name:o,outputSize:i}),a&&(l.cause=n.assign(new d(a.message),{name:a.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,a)}}catch(s){h()||(cr(t),y(s))}function y(e,t){h()||(e?f(e):u(t),l&&l.releaseLock(),e&&e.codecImportFailed||p())}}(e,r)}),s.addEventListener(tr,e=>fr(e,r)),s.addEventListener("messageerror",e=>fr(e,r)),s}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:a}=t;cr(t),r||(t.ue=null);let s=e.error||new d(e.message||tr);r||(s=n.assign(new d(s.message||tr),{be:!0}),t.ge=s),o&&(o(s),i&&i.releaseLock(),r&&a())}function dr(e,{ue:t,writer:n,transferStreams:r,he:o}){try{const{value:n,readable:i,writable:a}=e,s=[];if(n&&(e.value=et(n),s.push(e.value.buffer)),r&&ir&&o?(i&&s.push(i),a&&s.push(a)):e.readable=e.writable=null,s.length)try{return t.postMessage(e,s),!0}catch{ir=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}ar=function(e,t){const{baseURI:r,chunkSize:i,workerStartupTimeout:a}=t;let{wasmURI:s}=t;if(!e.de){let c;typeof s==ue&&(s=s());try{c=lr(e.workerURI,r,e)}catch{return Kn(e),Qn(e,t)}n.assign(e,{ue:c,he:!1,pe:!1,ge:null,de:{run:async()=>{try{return await async function(e,t){if(!e.ue){const{ge:t}=e;e.ge=null;const n=t||new d(Hn);throw n.be=!0,n}let r,i;const a=new S((e,t)=>{r=e,i=t});n.assign(e,{reader:null,writer:null,ye:r,Se:i,result:a});const{readable:s,options:c}=e,{writable:l,closed:u,Re:f}=function(e){const t=new AbortController,{writable:n,readable:r}=new z,o=r.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return o.catch(()=>{}),{writable:n,closed:o,Re:()=>t.abort()}}(e.writable);let w;try{w=dr({type:"start",options:c,config:t,readable:s,writable:l},e)}catch(t){f();try{await u}catch{}throw e.we(),t}w||n.assign(e,{reader:s.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.be=!0,t(e),n&&n.releaseLock()}}(e),p));try{const e=await a;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:s,baseURI:r,workerStartupTimeout:a})}catch(n){if(n&&n.be)return Kn(e),sr(e),$n(e,t);if(n&&n.codecImportFailed){if(e.reader)return sr(e),$n(e,t);e.we()}throw n}}}})}return e.de},qn=ar;let wr=[];const pr=[];let mr,hr,yr=0;async function Sr(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:a,useCompressionStream:s,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&&bn(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(w,n.codecURI)),t.transferStreams=!w&&(i||i===se&&r.transferStreams);const E=!(c||l||u||d),b=w===se||Boolean(n.codecURI);return t.useWebWorkers=!E&&b&&(a||a===se&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&m?m:se,t.createWorker=t.useWebWorkers&&h?h:se,n.useCompressionStream=s||s===se&&r.useCompressionStream,(await async function(){const n=wr.find(e=>!e.ce);if(n)return xr(n),new Yn(n,e,t,g);if(wr.length<y){const n={xe:yr};return yr++,wr.push(n),new Yn(n,e,t,g)}return new S(n=>{pr.push({resolve:n,stream:e,ze:t}),hr=r.workerStarvationTimeout,Er()})}()).run();function g(e){if(br(),pr.length){const[{resolve:t,stream:n,ze:r}]=pr.splice(0,1);t(new Yn(e,n,r,g)),Er()}else e.ue?(xr(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.pe?e.pe=!1:e.Fe=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(gr,hr))}function br(){mr&&(_(mr),mr=null)}function gr(){if(mr=null,pr.length){const[{resolve:e,stream:t,ze:r}]=pr.splice(0,1),o=n.assign({},r,{useWebWorkers:!1,workerURI:se,createWorker:se});e(new Yn({},t,o,Rr)),Er()}}function Rr(){br(),Er()}function xr(e){const{Fe:t}=e;t&&(_(t),e.Fe=null)}const zr="\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 Fr(e,t){return Dr(e,t,!0)}function Dr(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?function(e){let t="";for(let n=0;n<e.length;n++)t+=zr[e[n]];return t}(e):new b(t,{ignoreBOM:n}).decode(e)}const Ar="HTTP error ",kr="HTTP Range not supported",Ir="HTTP resource changed",Cr="Writer iterator completed too soon",Tr="Writer not initialized",vr="Content-Range",_r="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 F({async pull(i){const s=t===se?n:a.min(n,t-o),c=await So(r,e+o,s);c.length&&(i.enqueue(c),o+=c.length),(t!==se&&o>=t||!c.length&&s)&&i.close()}})}}class Pr extends Br{constructor(){super();const e=this,t=new D({write(t){if(!e.initialized)throw new d(Tr);return e.writeUint8Array(et(t))}});n.defineProperty(e,Mr,{get:()=>t})}writeUint8Array(){}}let Zr,Vr;class Hr extends Wr{constructor(e){super(),n.assign(this,{De:e,size:e.size}),Vr||(Vr=(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{De:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};return!r&&o>=n?sn(t.stream()):Zr?sn(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.De:n.De.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 z;n.defineProperty(t,Mr,{get:()=>r.writable}),t.contentType=e,t.Ae=cn(r.readable,e),t.Ae.catch(()=>{})}getData(){return this.Ae}}class jr extends Wr{constructor(e,t){super(),Kr(this,e,t)}async init(){await Yr(this,so,ro),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:i}=t;if((n||r)&&i!==se){const{offset:n=0,size:r=i-n}=e||{};if(r>0&&n<i)return function(e,t,n){let r,i=t,s=0,c=n;return new F({start:()=>l(),async pull(e){r||await l();const{value:t,done:n}=await r.read();if(n)throw new d(kr);const o=t.length>s?t.subarray(0,s):t;s-=o.length,c-=o.length,o.length&&e.enqueue(o),s||(await async function(){const e=r;r=se,await e.cancel()}(),c||e.close())},cancel:e=>r&&r.cancel(e)});async function l(){const t=a.min(e.maximumRangeSize,c),n=await so(Nr,e,to(e,i,t));if(206!=n.status)throw new d(kr);const l=n.headers.get(vr);if(l){const e=o(l.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=i)throw new d(kr)}eo(e,n),$r(e,n),i+=t,s=t,r=n.body.getReader()}}(t,n,a.min(r,i-n))}return super.createReadable(e)}readUint8Array(e,t){return Xr(this,e,t,so,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:a,combineSizeEocd:s,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:a,combineSizeEocd:s,checkResourceChanges:c,maximumRangeSize:l,fetch:u})}async function Yr(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s}=e;if(function(e){const{baseURI:t}=qe(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n}(r)&&(i||a)&&(typeof o==le||o)){const r=await t(Nr,e,to(e,s?-22:void 0)),o=r.headers.get("Accept-Ranges");if(!(a||o&&o.toLowerCase()==Ur))throw new d(kr);{if(s){const t=new w(await r.arrayBuffer());206==r.status&&t.length==K&&(e.ke=t)}$r(e,r);const o=Jr(r);o===se?await ao(e,t,n):e.size=o}}else await ao(e,t,n)}async function Xr(e,t,n,r,i){const{useRangeHeader:a,forceRangeRequests:s,ke:c,size:l,options:u}=e;if(a||s){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(kr);const a=i.headers.get(vr);if(a){const e=o(a.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=t)throw new d(kr)}eo(e,i),$r(e,i);const s=new w(await i.arrayBuffer());if(s.length!=n)throw new d(kr);return s}}{const{data:r}=e;return r||await i(e,u),e.data.subarray(t,t+n)}}function Jr(e){const t=e.headers.get(vr);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{Ie:e.get("Etag")||se,lastModified:e.get("Last-Modified")||se}}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!==se&&i!==se&&e!=i)throw new d(Ir);if(o){const e=Qr(t);if(n.entries(o).some(([t,n])=>n!==se&&e[t]!==se&&n!=e[t]))throw new d(Ir)}}}function to(e,t=0,r=1){return n.assign({},no(e),{[_r]: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,so)}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 ao(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 so(e,{fetch:t=fetch,options:r,url:o},i){const a=await t(o,n.assign({},r,{method:e,headers:i}));if(a.status<400)return a;throw 416==a.status?new d(kr):new d(Ar+(a.statusText||a.status))}function co(e,{url:t},r){return new S((o,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status<400){const e=[];a.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:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new d(kr):new d(Ar+(a.statusText||a.status)))},!1),a.addEventListener("error",e=>i(e.detail?e.detail.error:new d("Network error")),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.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.ve=0;const t=e.Te=await S.all(e.Te.map(yo));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===se?n:r}async readUint8Array(e,t){const n=this,{Te:r}=this;let o,i=0,s=e;for(;r[i]&&s>=r[i].size;)s-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(s+t<=r)o=await So(c,s,t);else{const i=r-s;o=$e(await So(c,s,i),await n.readUint8Array(e+i,t-i))}}else o=de;return n.ve=a.max(i,n.ve),o}}class fo extends Br{constructor(e,t=4294967295){super();const r=this;let o,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const s=new D({async write(t){if(t===Lr)return void(a&&await l());const{availableSize:n}=r;if(a)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:s}=await e.next();if(s&&!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,a=i.getWriter(),await this.write(t)}},async close(){a&&(await a.ready,await u())},async abort(e){a&&await a.abort(e)}});async function c(e){const t=e.length;t&&(await a.ready,await a.write(e),o.size+=t,r.availableSize-=t)}async function l(){await u(),r.diskOffset+=o.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function u(){await a.close()}n.defineProperty(r,Mr,{get:()=>s})}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 F||typeof e.getReader==ue)&&(e={readable:sn(e)}),e}}class po{constructor(e){return e.writable===se&&typeof e.next==ue&&(e=new fo(e)),(e instanceof D||typeof e.getWriter==ue)&&(e={writable:ln(e)}),e.size===se&&(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!==se&&e.readUint8Array||(e=new Hr(await cn(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 bo="filename",go="rawFilename",Ro="comment",xo="rawComment",zo="uncompressedSize",Fo="compressedSize",Do="offset",Ao="diskNumberStart",ko="lastModDate",Io="rawLastModDate",Co="lastAccessDate",To="rawLastAccessDate",vo="creationDate",_o="rawCreationDate",No="internalFileAttributes",Uo="externalFileAttributes",Oo="msdosAttributesRaw",Mo="msdosAttributes",Lo="msDosCompatible",Bo="zip64",Wo="encrypted",Po="version",Zo="versionMadeBy",Vo="zipCrypto",Ho="directory",Go="executable",jo="compressionMethod",qo="signature",Ko="extraField",Yo="unixMode",Xo="setuid",Jo="setgid",Qo="sticky",$o=[bo,go,zo,Fo,ko,Io,Ro,xo,Co,To,vo,_o,Do,Ao,No,Uo,Oo,Mo,Lo,Bo,Wo,Po,Zo,Vo,Ho,Go,"symlink",jo,qo,"crc32",Ko,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",Yo,"unixExternalUpper",Xo,Jo,Qo,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class ei{constructor(e){$o.forEach(t=>this[t]=e[t])}}const ti="File format is not recognized",ni="End of central directory not found",ri="End of Zip64 central directory locator not found",oi="Central directory header not found",ii="Local file header not found",ai="Zip64 extra field not found",si="File contains encrypted entry",ci="Encryption method not supported",li="Split zip file",ui="Overlapping entry found",fi="Entry data out of bounds",di="Ambiguous archive",wi="Encrypted central directory is not supported",pi="Unsafe filename",mi="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",hi="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",yi="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Si="64-bit value exceeds Number.MAX_SAFE_INTEGER",Ei="unsorted central directory",bi="unknown version needed to extract",gi="compressed patched data",Ri="malformed extra field",xi="unknown zip64 extensible data",zi="wrapped entries count",Fi="appended data",Di="prepended data",Ai="prepended central directory",ki="trailing central directory data",Ii="duplicate filename",Ci="mismatched zip64 end of central directory record",Ti="mismatched local file header (general purpose bit flag)",vi="mismatched local file header (compression method)",_i="mismatched local file header (crc32 or sizes)",Ni=/^[a-zA-Z]:/,Ui="utf-8",Oi="cp437",Mi=[[zo,O],[Fo,O],[Do,O],[Ao,M]],Li={[M]:{Ue:ga,bytes:4},[O]:{Ue:Ra,bytes:8}},Bi=i(o.MAX_SAFE_INTEGER);class Wi{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!==se&&r.readUint8Array||(r=new Hr(await cn(r.readable)),await ho(r)),r.size<K)throw new d(ti);const o=t.warnings=[],i=ra(e,t.options),s=i==Ae,c=i!=Ie,u=aa(ma(t,e,ze),i),f=function(e,t){if(e===se)return t;if(!na(e))throw new d(hi);return e}(ma(t,e,"filenameValidation"),i),w=ma(t,e,"normalizeFilename"),{Me:p,Le:m}=await sa(r,c,u);if(!p)throw await async function(e){return await ta(e)==W}(r)?new d(li):new d(ni);c&&m>1&&pa("multiple end of central directory records");const h=tt(p);let y=ga(h,12),S=ga(h,16);const E=p.offset,b=ba(h,20),g=E+K+b,R=r.size-g;R>u&&pa(Fi),R>0&&wa(o,Fi);let x=ba(h,4);const F=r.ve||0;let D,A,k,I,C,T=ba(h,6),v=ba(h,10),_=0,N=X;const U=S==O||y==O||v==M||T==M;if(S!=O&&T!=M&&(S+=ea(r,T)),U){const e=p.offset>=Y?await So(r,p.offset-Y,Y):de,t=tt(e);if(e.length==Y&&ga(t,0)==j){S=ea(r,ga(t,4))+Ra(t,8);let e=await So(r,S,X),i=tt(e);const c=p.offset-Y-X;if((e.length<X||ga(i,0)!=G)&&S!=c&&c>=0){const t=S;S=c,S>t&&(_=S-t),e=await So(r,S,X),i=tt(e)}if(e.length<X||ga(i,0)!=G)throw new d(ri);if(k=!0,I=Ra(i,4)>44,I){const e=a.min(Ra(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=ba(r,26);n.assign(t,{compressionMethod:ba(r,0),compressedSize:Ra(r,2),uncompressedSize:Ra(r,10),encryptionAlgorithm:ba(r,18),bitLength:ba(r,20),flags:ba(r,22),hashAlgorithm:ba(r,24),hashData:e.subarray(28,28+o)})}return t}(await So(r,S+X,e)))}x==M?x=ga(i,16):x!=ga(i,16)&&da(s,o,Ci),T==M?T=ga(i,20):T!=ga(i,20)&&da(s,o,Ci),v==M?v=Ra(i,32):v!=Ra(i,32)&&da(s,o,Ci),y==O?y=Ra(i,40):y!=Ra(i,40)&&da(s,o,Ci),S=ea(r,T)+Ra(i,48)+_}}let B=y;const P=p.offset-(k?N+Y:0);if(S>=r.size&&(_=r.size-S-y-K,S=r.size-y-K),F!=x)throw new d(li);if(S<0)throw new d(ti);let Z=0,H=await So(r,S,y),J=tt(H);if(y){if(H.length<4)throw new d(ti);const e=P-y;if(S!=e&&T==x){const t=ga(J,Z)==V||Boolean(C&&C.compressedSize)||Hi(J);let n=!t;if(!n&&e>=0&&e+4<=r.size&&(n=ga(tt(await So(r,e,4)),0)==V),n){const n=S;S=e,S>n&&(_+=S-n,D=t),H=await So(r,S,y),J=tt(H)}}}const Q=P-S;if(y!=Q&&Q>=0&&T==x&&(y=Q,H=await So(r,S,y),J=tt(H)),S<0||S>=r.size)throw new d(ti);t.directoryOffset=S,t.directoryLength=B;const oe=ha(t,e,"decryptCentralDirectory");let ie,ae;if(oe&&v&&H.length>=4&&ga(J,0)!=V&&(I||Hi(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);ae=H.subarray(e),H=await oe(H.subarray(0,e),C),J=tt(H),B=H.length,ie=!0}C&&!ie&&(H.length<4||ga(J,0)==V)&&wa(o,xi),A=S;const ce=ma(t,e,"filenameEncoding"),le=ma(t,e,"commentEncoding"),ue=new l;let fe,we=-1;const pe=!s&&!k;!v&&pe&&(v=Gi(J,H,Z),v&&wa(o,zi));for(let i=0;i<v;i++){const s=new Vi(r,t.options);if(Z+q>H.length||ga(J,Z)!=V){if(0==i&&!ie&&(I||Hi(J)))throw new d(wi);throw new d(oi)}qi(s,J,Z+6);const c=Boolean(s.bitFlag.languageEncodingFlag),l=Z+q,u=l+s.filenameLength,p=u+s.extraFieldLength,m=ba(J,Z+4),h=!(m>>8),y=m>>8==3,S=H.subarray(l,u),E=ba(J,Z+32),b=p+E,g=H.subarray(p,b),R=c,x=c,F=ga(J,Z+38),D=F&L,k={readOnly:Boolean(1&D),hidden:Boolean(2&D),system:Boolean(4&D),directory:Boolean(16&D),archive:Boolean(32&D)},C=ga(J,Z+42),T=ha(t,e,"decodeText")||Fr,N=R?Ui:ce||Oi,U=x?Ui:le||Oi;let O=T(S,N,Fe);if(O===se&&(O=Fr(S,N)),w){const e=w(O);e!==se&&(O=e)}if(ia(O,f)){const e=new d(pi);throw e.filename=O,e}let B=T(g,U,De);B===se&&(B=Fr(g,U)),n.assign(s,{index:i,Be:ie,versionMadeBy:m,msDosCompatible:h,zip64:!1,compressedSize:0,uncompressedSize:0,We:E,offset:C,diskNumberStart:ba(J,Z+34),internalFileAttributes:ba(J,Z+36),externalFileAttributes:F,msdosAttributesRaw:D,msdosAttributes:k,rawFilename:S,filenameUTF8:R,commentUTF8:x,rawExtraField:H.subarray(u,p),rawComment:g,filename:O,comment:B}),Ki(s,s,J,Z+6)&&wa(o,Ri,O),s.offset+=_;const W=ea(r,s.diskNumberStart)+s.offset;A=a.min(W,A),W<we&&wa(o,Ei,O),we=W,(s.version&L)>63&&wa(o,bi,O),32&~s.rawBitFlag||wa(o,gi,O),ue.has(s.filename)&&(fe=!0),ue.add(s.filename);const P=s.externalFileAttributes>>16&M;s.unixMode===se&&16877&P&&(s.unixMode=P);const G=Boolean(s.unixMode&te),j=Boolean(s.unixMode&ne),K=Boolean(512&s.unixMode),Y=40960==((s.unixMode===se?P:s.unixMode)&$),X=!Y&&(s.unixMode!==se?!!(73&s.unixMode):y&&!!(73&P)),Q=s.unixMode!==se&&(s.unixMode&$)==ee,oe=(P&$)==ee;n.assign(s,{setuid:G,setgid:j,sticky:K,symlink:Y,unixExternalUpper:P,executable:X,directory:Q||oe||h&&k.directory||s.filename.endsWith(re),zipCrypto:s.encrypted&&!s.extraFieldAES});const ae=new ei(s);if(ae.getData=(e,n)=>s.getData(e,ae,t.Oe,n),ae.arrayBuffer=async e=>{const n=new z,r=cn(n.readable).then(e=>e.arrayBuffer());return r.catch(()=>{}),await s.getData(n,ae,t.Oe,e),r},Z=b,i==v-1&&pe){const e=Gi(J,H,Z);e&&(v+=e,wa(o,zi))}const{onprogress:de}=e;if(de)try{await de(i+1,v,new ei(s))}catch{}yield ae}let me=Z,he=ji(H.subarray(Z))||(ie?ji(ae):se);if(!he&&!ie){const e=S+Z,t=a.min(P-e,65541);t>=6&&(he=ji(await So(r,e,t)))}he&&(t.digitalSignature=he,me=Z+6+he.length),(Z!=B&&me!=B||!ie&&Z!=y&&me!=y)&&da(s,o,ki),fe&&da(s,o,Ii);const ye=ma(t,e,"extractPrependedData"),Se=ma(t,e,"extractAppendedData"),Ee=(s||ye)&&v&&4==A&&await async function(e){const t=await ta(e);return t==W||808471376==t}(r)?4:0;return s&&(_||v&&A>Ee)&&pa(Di),(_||v&&A>4)&&wa(o,Di),D&&wa(o,Ai),ye&&(t.prependedData=A>Ee?await So(r,Ee,A-Ee):de),t.comment=b?await So(r,E+K,b):de,Se&&(t.appendedData=g<r.size?await So(r,g,r.size-g):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 Pi{constructor(e={}){const{readable:t,writable:n}=new z,r=new Wi(t,e).getEntriesGenerator();this.readable=new F({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 z;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 Zi(e,t={}){if(e=new wo(e),await ho(e),e.size!==se&&e.readUint8Array||(e=new Hr(await cn(e.readable)),await ho(e)),e.size<K)return!1;const n=ra(t,{}),r=n!=Ie,o=aa(t[ze],n),{Me:i,Le:a}=await sa(e,r,o);if(!i||n==Ae&&a>1)return!1;const s=ba(tt(i),20),c=i.offset+K+s;return e.size-c<=o}class Vi{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,n,r={}){const o=this,i=qe(),{reader:s,index:c,offset:l,diskNumberStart:u,extraFieldAES:f,extraFieldZip64:w,compressionMethod:p,bitFlag:m,rawBitFlag:h,crc32:y,rawLastModDate:S,uncompressedSize:E,compressedSize:b}=o,{dataDescriptor:g}=m,R=t.localDirectory={},x=t.warnings=[],z=ea(s,u)+l,F=await So(s,z,oe),A=tt(F);let k=ma(o,r,we),I=ma(o,r,pe);const C=ma(o,r,me);if(Ue(k,I),k=k&&k.length&&k,I=I&&I.length&&I,f&&99!=f.originalCompressionMethod)throw new d(wn);if(F.length<oe||ga(A,0)!=B)throw new d(ii);qi(R,A,4);const{extraFieldLength:T,filenameLength:v}=R,_=R.dataOffset=z+oe+v+T,N=ma(o,r,"checkLocalDirectory"),U=ra(r,o.options),O=function(e,t){return e===se?t!=Ie:Boolean(e)}(N,U),M=function(e,t){return e===se?t==Ae:Boolean(e)}(N,U);let W=de;if(M&&(v||T)){const e=await So(s,z+oe,v+T);W=e.subarray(0,v),R.rawExtraField=e.subarray(v)}else R.rawExtraField=T?await So(s,z+oe+v,T):de;M&&(R.rawFilename=W),Ki(o,R,A,4,!0)&&wa(x,Ri),function(e,t,n,r,o){const{rawFilename:i}=e,a=!o,s=e.Be&&!(8192&~t.rawBitFlag);!r||s||n.length==i.length&&!n.some((e,t)=>e!=i[t])||da(a,o,"mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&da(a,o,Ti),t.compressionMethod!=e.compressionMethod&&da(a,o,vi),t.bitFlag.dataDescriptor||s||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||da(a,o,_i)}(o,R,W,M,O?se:x);const{lastAccessDate:Z,creationDate:V,uid:H,gid:G}=R;Z&&(t.lastAccessDate=Z),V&&(t.creationDate=V),H!==se&&t.uid===se&&(t.uid=H),G!==se&&t.gid===se&&(t.gid=G);const j=o.encrypted&&R.encrypted&&!C,q=j&&!f;if(C||(t.zipCrypto=q),j&&!(64&~R.rawBitFlag))throw new d(ci);const K=C?se:yn(p);if(0!=p&&8!=p&&9!=p&&!K&&!C)throw new d(wn);if(j){if(!q&&(f.strength<1||f.strength>3))throw new d(ci);if(!k&&!I)throw new d(si)}if(_+b>s.size)throw new d(fi);const Y=b,X=sn(s.createReadable({offset:_,size:Y})),J=Ne(ma(o,r,he)),Q=ma(o,r,"checkPasswordOnly");let $=ma(o,r,"checkOverlappingEntry");const ee=ma(o,r,"checkOverlappingEntryOnly");ee&&($=!0);const{onstart:te,onprogress:ne,onend:re}=r,ie=0!=p&&!C,ae=C?b:E,ce=9==p;let le=ma(o,r,Se);ce&&(le=!1);const ue=ma(o,r,"checkCrc32"),fe=(ue===se?ma(o,r,"checkSignature"):ue)&&!C&&(!j||q||f&&1==f.vendorVersion),ge={options:{codecType:Pn,password:k,rawPassword:I,zipCrypto:q,encryptionStrength:f&&f.strength,checkCrc32:fe,checkAuthenticationCode:ma(o,r,"checkAuthenticationCode"),passwordVerification:q&&(g?S>>>8&L:y>>>24&L),outputSize:ae,crc32:y,compressed:ie,encrypted:j,useWebWorkers:ma(o,r,ye),useCompressionStream:le,transferStreams:ma(o,r,Ee),deflate64:ce,format:K?K.format:se,codecURI:K?K.codecURI:se,compressionMethod:p,rawBitFlag:h,checkPasswordOnly:Q},config:i,se:{signal:J,size:Y,onstart:te,onprogress:ne,onend:re}};let Re,xe;$&&await async function({reader:e,Pe:t,index:n,offset:r,crc32:o,compressedSize:i,uncompressedSize:a,dataOffset:s,dataDescriptor:c,extraFieldZip64:l,Oe:u}){let f=0;if(c&&(f=l?20:12),f){const n=await So(e,s+i,f+4),r=tt(n);let c=n.length==f+4&&ga(r,0)==P;if(c){const e=$i(r,4,l);(t.encrypted&&!t.zipCrypto||e.crc32==o)&&e.compressedSize==i&&e.uncompressedSize==a?f+=4:c=!1}if(n.length>=f){const e=$i(r,c?4:0,l);e.signature=c,t.localDirectory.dataDescriptor=e}}const w={start:r,end:s+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(ui);throw e.overlappingEntry=t.Pe,e}u.set(n,w)}({reader:s,Pe:t,index:c,offset:z,crc32:y,compressedSize:b,uncompressedSize:E,dataOffset:_,dataDescriptor:g||R.bitFlag.dataDescriptor,extraFieldZip64:w||R.extraFieldZip64,Oe:n});try{if(!ee){Q&&(e=new D),e=new po(e),await ho(e,function(e,t,n){return a.min(e,n?1032*t:t)}(ae,b,ie)),({writable:Re}=e);const{outputSize:t}=await Sr({readable:X,writable:Re},ge);if(e.size+=t,t!=ae)throw new d(gn)}}catch(t){if(t.outputSize!==se&&(e.size+=t.outputSize),!Q||t.message!=gt)throw xe=t,t}finally{if((mo(e)||!ma(o,r,be))&&Re&&!Re.locked){const e=Re.getWriter();if(xe)try{await e.abort(xe)}catch{}else await e.close()}}return Q||ee?se:e.getData?e.getData():Re}}function Hi(e){const t=a.min(e.byteLength,1024)-3;for(let n=0;n<t;n++)if(134630224==ga(e,n))return!0;return!1}function Gi(e,t,n){let r=0;for(;n+q<=t.length&&ga(e,n)==V;)n+=q+ba(e,n+28)+ba(e,n+30)+ba(e,n+32),r++;return r%65536?0:r}function ji(e){if(e.length>=6){const t=tt(e);if(ga(t,0)==Z){const n=ba(t,4);if(6+n<=e.length)return e.subarray(6,6+n)}}}function qi(e,t,r){const o=e.rawBitFlag=ba(t,r+2),i=!(1&~o),a=ga(t,r+6);n.assign(e,{encrypted:i,version:ba(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&Q)==Q},rawLastModDate:a,lastModDate:ya(a),filenameLength:ba(t,r+22),extraFieldLength:ba(t,r+24)})}function Ki(e,t,r,o,i){const{rawExtraField:a}=t,l=t.extraField=new c,u=tt(a);let f=0,w=!1;try{for(;f<a.length;){const e=ba(u,f),t=ba(u,f+2);l.set(e,{type:e,data:a.slice(f+4,f+4+t)}),f+=4+t}}catch{w=!0}f>a.length&&(w=!0);const p=ba(r,o+4);n.assign(t,{signature:ga(r,o+10),crc32:ga(r,o+10),compressedSize:ga(r,o+14),uncompressedSize:ga(r,o+18)});const m=l.get(1);m&&(function(e,t){t.zip64=!0;const n=tt(e.data),r=Mi.filter(([e,n])=>t[e]==n),o=r.reduce((e,[,t])=>e+Li[t].bytes,0);if(e.data.length<o)throw new d(ai);for(let o=0,i=0;o<r.length;o++){const[a,s]=r[o],c=Li[s];t[a]=e[a]=c.Ue(n,i),i+=c.bytes}}(m,t),t.extraFieldZip64=m);const h=l.get(28789);h&&(Yi(h,bo,go,t,e),t.extraFieldUnicodePath=h);const y=l.get(25461);y&&(Yi(y,Ro,xo,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=Ea(o,4);n.assign(e,{vendorVersion:Ea(o,0),vendorId:Ea(o,2),strength:i,originalCompressionMethod:r,compressionMethod:ba(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=se)}(S,t,p),t.extraFieldAES=S):t.compressionMethod=p;const E=l.get(13);E&&(Xi(E,t),t.extraFieldPkwareUnix=E);const b=l.get(22613);b&&(Xi(b,t),t.extraFieldUnixType1=b);const g=l.get(10);g&&(function(e,t){const r=tt(e.data);let o,i=4;try{for(;i<e.data.length&&!o;){const t=ba(r,i),n=ba(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),a=r.getBigUint64(8,!0),s=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:i,rawLastAccessDate:a,rawCreationDate:s});const c={lastModDate:Sa(i),lastAccessDate:Sa(a),creationDate:Sa(s)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:a,rawCreationDate:s})}}(g,t),t.extraFieldNTFS=g);const R=l.get(30805);let x;if(R&&(x=Ji(R,t,!1),t.extraFieldUnix=R),!x){const e=l.get(30837);e&&(Ji(e,t,!0),t.extraFieldInfoZip=e)}const z=l.get(J);z&&(function(e,t,n){if(!e.data.length)return;const r=tt(e.data),o=Ea(r,0),i=[],a=[];n?(1&~o||(i.push(ko),a.push(Io)),2&~o||(i.push(Co),a.push(To)),4&~o||(i.push(vo),a.push(_o))):e.data.length>=5&&(i.push(ko),a.push(Io));let c=1;i.forEach((n,o)=>{if(e.data.length>=c+4){const i=ga(r,c);t[n]=e[n]=new s(1e3*(0|i));const l=a[o];e[l]=i}c+=4})}(z,t,i),t.extraFieldExtendedTimestamp=z);const F=l.get(6534);return F&&(t.extraFieldUSDZ=F),w}function Yi(e,t,r,o,i){if(e.data.length<5)return void(e.valid=!1);const a=tt(e.data),s=new ft;s.append(i[r]);const c=tt(new w(4));c.setUint32(0,s.get(),!0);const l=ga(a,1),u=Ea(a,0);n.assign(e,{version:u,[t]:Fr(e.data.subarray(5)),valid:1==u&&!i.bitFlag.languageEncodingFlag&&l==ga(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function Xi(e,t){if(e.data.length<8)return;const r=tt(e.data),o={lastAccessDate:new s(1e3*(0|ga(r,0))),lastModDate:new s(1e3*(0|ga(r,4)))};e.data.length>=12&&(o.uid=ba(r,8),o.gid=ba(r,10)),n.assign(e,o),n.assign(t,o)}function Ji(e,t,r){try{const o=tt(e.data);let i,a;if(r){let t=0;const r=Ea(o,t++),s=Ea(o,t++);i=Qi(e.data.subarray(t,t+s)),t+=s;const c=Ea(o,t++);a=Qi(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:i,gid:a})}else e.data.length>=4&&(i=ba(o,0),a=ba(o,2),n.assign(e,{uid:i,gid:a}));return i!==se&&(t.uid=i),a!==se&&(t.gid=a),i!==se||a!==se}catch{}}function Qi(e){const t=new w(4);return t.set(e,0),new h(t.buffer,t.byteOffset,4).getUint32(0,!0)}function $i(e,t,n){const r=ga(e,t);let o,i;return n?(o=Ra(e,t+4),i=Ra(e,t+12)):(o=ga(e,t+4),i=ga(e,t+8)),{crc32:r,compressedSize:o,uncompressedSize:i}}function ea(e,t){return e.Ne?e.Ne(t):0}async function ta(e){return ga(tt(await So(e,0,4)))}function na(e){return e===Ae||e===ke||e===Ie}function ra(e,t){return oa(e,oa(t,ke))}function oa(e,t){const n=e.strictness;if(n!==se){if(!na(n))throw new d(mi);return n}const r=e.checkAmbiguity;return r===se?t:r?Ae:t==Ie?Ie:ke}function ia(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("\\\\")||Ni.test(e))||t==Ae&&(n.includes(".")||n.includes(""))}function aa(e,t){if(e!==se){const t=Le(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new d(yi);return t}return t==Ae?0:t==Ie?1/0:M}async function sa(e,t,n){const{size:r}=e,o=a.min(r,65557),i={count:64};let s,c,l=0;for await(const[n,a,u,f,d]of ca(e,o)){const o=ba(n,f+20);if(d+K+o==r){const o=await ua(e,n,a,f,d,r,i);if(2==o){if(s||(s=la(u,f,d)),l++,!t||l>1)break}else 1!=o||c||(c=la(u,f,d))}}return s||(s=c),s||(s=await async function(e,t,n){const{size:r}=e,o=a.min(r,t==1/0?r:65557+t);let i,s;for await(const[t,a,c,l,u]of ca(e,o)){const o=la(c,l,u);i||(i=o);const f=await ua(e,t,a,l,u,r,n);if(2==f)return o;1!=f||s||(s=o)}return s||i}(e,n,i)),{Me:s,Le:l}}async function*ca(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--)ga(o,e)==H&&(yield[o,n,r,e,n+e])}function la(e,t,n){return{offset:n,buffer:e.slice(t,t+K).buffer}}async function ua(e,t,n,r,o,i,a){const s=ba(t,r+10),c=ga(t,r+12),l=ga(t,r+16);if(s==M||c==O||l==O)return await fa(e,t,n,o-Y,i,a)==j?2:0;if(!s&&!c)return 1;const u=ba(t,r+6);for(const r of[o-c,ea(e,u)+l])if(await fa(e,t,n,r,i,a)==V)return 2;return 0}async function fa(e,t,n,r,o,i){return r<0||r+4>o?se:r>=n?ga(t,r-n):i.count>0?(i.count--,ga(tt(await So(e,r,4)),0)):se}function da(e,t,n){e?pa(n):wa(t,n)}function wa(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==se&&(r.filename=n),e.push(r)}}function pa(e){const t=new d(di);throw t.reason=e,t}function ma(e,t,n){return t[n]===se?e.options[n]:t[n]}function ha(e,t,n){return _e(ma(e,t,n))}function ya(e){const t=(4294901760&e)>>16,n=e&M,r=new s(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<ae?ae:r}function Sa(e){return new s(o(e/i(1e4)-i(116444736e5)))}function Ea(e,t){return e.getUint8(t)}function ba(e,t){return e.getUint16(t,!0)}function ga(e,t){return e.getUint32(t,!0)}function Ra(e,t){const n=e.getBigUint64(t,!0);if(n>Bi)throw new d(Si);return o(n)}var xa=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:di,ERR_BAD_FORMAT:ti,ERR_CENTRAL_DIRECTORY_NOT_FOUND:oi,ERR_ENCRYPTED:si,ERR_ENCRYPTED_CENTRAL_DIRECTORY:wi,ERR_ENTRY_DATA_OUT_OF_BOUNDS:fi,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:ri,ERR_EOCDR_NOT_FOUND:ni,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:ai,ERR_INVALID_AUTHENTICATION_CODE:bt,ERR_INVALID_COMPRESSED_DATA:Rn,ERR_INVALID_CRC32:xn,ERR_INVALID_FILENAME_VALIDATION:hi,ERR_INVALID_MAX_APPENDED_DATA_SIZE:yi,ERR_INVALID_PASSWORD:Et,ERR_INVALID_STRICTNESS:mi,ERR_INVALID_UNCOMPRESSED_SIZE:gn,ERR_LOCAL_FILE_HEADER_NOT_FOUND:ii,ERR_OVERLAPPING_ENTRY:ui,ERR_SPLIT_ZIP_FILE:li,ERR_UNSAFE_FILENAME:pi,ERR_UNSUPPORTED_COMPRESSION:wn,ERR_UNSUPPORTED_ENCRYPTION:ci,ERR_UNSUPPORTED_UINT64:Si,ERR_WORKER_STARTUP_TIMEOUT:Hn,WARNING_APPENDED_DATA:Fi,WARNING_COMPRESSED_PATCHED_DATA:gi,WARNING_DUPLICATE_FILENAME:Ii,WARNING_MALFORMED_EXTRA_FIELD:Ri,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Ti,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:vi,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:_i,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:Ci,WARNING_PREPENDED_CENTRAL_DIRECTORY:Ai,WARNING_PREPENDED_DATA:Di,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:ki,WARNING_UNKNOWN_VERSION:bi,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:xi,WARNING_UNSORTED_CENTRAL_DIRECTORY:Ei,WARNING_WRAPPED_ENTRIES_COUNT:zi,ZipReader:Wi,ZipReaderStream:Pi,isZipFile:Zi});const za="File already exists",Fa="Zip file comment exceeds 64KB",Da="Invalid zip file comment (must be a Uint8Array)",Aa="File entry comment exceeds 64KB",ka="Invalid file entry comment (must be a string)",Ia="Invalid date (must be a valid Date instance)",Ca="File entry name exceeds 64KB",Ta="Version exceeds 65535",va="The strength must equal 1, 2, or 3",_a="Encryption is not supported in USDZ files",Na="Split zip files are not supported in USDZ files",Ua="Encryption is not supported when the 'passThrough' option is set",Oa="Invalid extra field (must be a Map)",Ma="Invalid extra field type (must be integer 0..65535)",La="Invalid extra field data (must be a Uint8Array)",Ba="Extra field data exceeds 64KB",Wa=-2147483648,Pa=2147483647,Za=i(0),Va=i("0x7fffffffffffffff"),Ha="Zip64 is not supported (set the 'zip64' option to 'true')",Ga="Undefined uncompressed size",ja="Undefined compression method",qa="Undefined reader",Ka="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",Ya="Zip file not empty",Xa="Invalid uid (must be integer 0..2^32-1)",Ja="Invalid gid (must be integer 0..2^32-1)",Qa="Invalid UNIX mode (must be integer 0..65535)",$a="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",es="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",ts="Invalid msdosAttributesRaw (must be integer 0..255)",ns="Invalid msdosAttributes (must be an object with boolean flags)",rs="Invalid level (must be integer 0..9)",os="Signature data exceeds 64KB",is=new w([7,0,2,0,65,69,3,0,0]),as="infozip",ss="unix";let cs=0;const ls=[];class us{constructor(e,t={}){e=new po(e);const{availableSize:r=ce,maxSize:o=ce}=e,i=r>0&&r!==ce&&o>0&&o!==ce;if(i&&t[xe])throw new d(Na);n.assign(this,{writer:e,Ze:i,options:t,Ve:new c,He:new l,offset:t[Re]===se?e.size||e.writable.size||0:t[Re],Ge:t[Re]===se?0:t[Re]-(e.size||e.writable.size||0),je:new l,qe:[],Ke:0,Ye:0,Xe:se})}prependZip(e){return ds(this,async function(e,t){if(e.He.size)throw new d(Ya);await e.Je(t)}(this,e))}appendZip(e){return ds(this,this.Je(e))}async Je(e){const r=this,{je:o,He:i,Ve:a}=r;for(;o.size;)await S.allSettled(t.from(o));let s;const l=new S(e=>s=e);o.add(l);const u=[];let f;try{e=new wo(e),await ho(e),e.size!==se&&e.readUint8Array||(e=new Hr(await cn(e.readable)),await ho(e));const{ZipReader:o}=await S.resolve().then(function(){return xa}),s=new o(e),l=await s.getEntries();await s.close(),await ho(r.writer);const{directoryOffset:w}=s;l.forEach(({filename:e})=>{if(i.has(e))throw new d(za);i.add(e),u.push(e)}),r.Qe=!0;const{$e:p}=r;r.$e=new S(e=>f=()=>{r.Qe=!1,e()}),await p,r.Ze&&(delete r.Ze,await async function(e){return tt(await So(e,0,4)).getUint32(0,!0)==W}(e)||(await Is(r.writer,As()),r.offset+=4));const m=await async function(e,n,r,o){const{writer:i}=e,a=new c;if(i.closeDisk){const s=t.from(r).sort((e,t)=>Ds(n,e)-Ds(n,t));let c=0;for(const t of s){const r=Ds(n,t);await zs(e,n,c,r-c),gs(i,await Fs(n,r))&&await i.closeDisk(),a.set(t,{offset:Rs(e,i),diskNumberStart:Es(i)}),c=r}await zs(e,n,c,o-c)}else{const t=e.offset;await zs(e,n,0,o),r.forEach(e=>a.set(e,{offset:t+Ds(n,e),diskNumberStart:0}))}return a}(r,e,l,w);l.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,bitFlag:i,encrypted:s,uncompressedSize:c,compressedSize:l,extraFieldZip64:u}=e;let{compressionMethod:f,rawExtraField:d}=e;const{level:w,languageEncodingFlag:p,dataDescriptor:h}=i;d=xs(d||de),e.extraFieldAES&&(f=99);const y=js(d),S=Boolean(u)&&u.uncompressedSize!==se,E=Boolean(u)&&u.compressedSize!==se,b=-7&Ks(w,p,h,s,f)|w<<1,{et:g,nt:R}=qs({version:t,bitFlag:b,compressionMethod:f,uncompressedSize:c,compressedSize:l,rawLastModDate:r,rawFilename:o,ot:E,it:S,extraFieldLength:y}),{crc32:x}=e;x!==se&&Vs(R,10,x);const{offset:z,diskNumberStart:F}=m.get(e);n.assign(e,{st:!0,it:S,ot:E,offset:z,diskNumberStart:F,ct:!1,lt:de,ut:de,ft:de,wt:de,ht:de,rawExtraField:d,yt:de,extendedTimestamp:!1,et:g,nt:R}),a.set(e.filename,e)})}catch(e){throw u.forEach(e=>i.delete(e)),e}finally{s(),o.delete(l),f&&f()}}add(e="",r,c={}){const l=this,{je:u}=l,f=async function(e,r,c,l){if(Us(e,l=n.assign({},l),Ho)&&!r.endsWith(re)&&(r+=re),e.He.has(r))throw new d(za);e.He.add(r),cs<qe().maxWorkers?cs++:await new S(e=>ls.push(e));try{return await async function(e,r,c,l){const u=function(e,n,r){let o=Us(e,r,Lo),i=Us(e,r,Zo,o?20:768);const a=Us(e,r,Go),s=Ls(e,r,"uid"),c=Ls(e,r,"gid");let l=Ls(e,r,Yo),u=Us(e,r,"unixExtraFieldType"),f=Us(e,r,Xo),w=Us(e,r,Jo),p=Us(e,r,Qo);if(Me(s,O,Xa),Me(c,O,Ja),Me(l,M,Qa),u!==se&&u!==as&&u!==ss)throw new d($a);if(u===ss&&(s!==se&&s>M||c!==se&&c>M))throw new d(es);u!==se||s===se&&c===se||(u=as);let m=Ls(e,r,Oo),h=Us(e,r,Mo);const y=m!==se||h!==se;if(s!==se||c!==se||l!==se||u||a?(o=!1,i=i&L|768):y&&(o=!0,i&=L),Me(m,L,ts),h&&("object"!=typeof h||t.isArray(h)))throw new d(ns);if(i>M)throw new d(Ta);let S=Us(e,r,Uo);const E=S!==se;E||(S=0),!r[Ho]&&n.endsWith(re)&&(r[Ho]=!0);const b=Us(e,r,Ho);if(b?(n.endsWith(re)||(n+=re),E||(S=16,o||(S|=16877<<16))):o||E||(S=a?493<<16:27525120),!o){const e=l!==se||Boolean(f||w||p);l=l===se?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||(b?l=-61441&l|ee:l&$||(l|=32768),S=(l&M)<<16|S&M)}({msdosAttributesRaw:m,msdosAttributes:h}=function(e,t){if(e!==se)e&=L;else if(t!==se){const{readOnly:n,hidden:r,system:o,directory:i,archive:a}=t;let s=0;n&&(s|=1),r&&(s|=2),o&&(s|=4),i&&(s|=16),a&&(s|=32),e=s&L}return t===se&&(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 g=S>>16&M,R=l!==se&&40960==(l&$);return{name:n,St:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:S,unixExternalUpper:g,uid:s,gid:c,unixMode:l,unixExtraFieldType:u,symlink:R,setuid:f,setgid:w,sticky:p,msdosAttributesRaw:m,msdosAttributes:h}}}(e,r,l);({name:r}=u);const f=function(e,t,n){const r=Ms(e,n,"encodeText")||wt;let i=r(t,Fe);if(i===se&&(i=wt(t)),js(i)>M)throw new d(Ca);const a=n[Ro]||"";if(typeof a!=fe)throw new d(ka);let c=r(a,De);if(c===se&&(c=wt(a)),js(c)>M)throw new d(Aa);const l=Us(e,n,Po);if(l!==se&&l>M)throw new d(Ta);const u=Os(e,n,ko,new s),f=Us(e,n,Io),w=Os(e,n,Co),p=Os(e,n,vo),m=Us(e,n,No,0),h=Us(e,n,me),y=Us(e,n,we),S=Us(e,n,pe);Ue(y,S);const E=Ls(e,n,"encryptionStrength",3),b=Us(e,n,Vo),g=Us(e,n,"extendedTimestamp",!0),R=Us(e,n,"ntfsTimestamp"),x=Us(e,n,"keepOrder",!0),z=Us(e,n,ye),F=Us(e,n,Ee),D=Us(e,n,"bufferedWrite"),A=Ms(e,n,"createTempStream"),k=Us(e,n,"dataDescriptorSignature",!0),I=Ne(Us(e,n,he)),C=Us(e,n,"useUnicodeFileNames",!0),T=Us(e,n,jo),v=h||T===se?se:yn(T);if(!h&&T!==se&&0!==T&&8!==T&&!v)throw new d(wn);let _=Ls(e,n,"level");if(Me(_,9,rs),e.options[xe]){if(y!==se||S!==se)throw new d(_a);_===se&&T===se&&(_=0)}h&&(_=se);let N=Us(e,n,Se),U=Us(e,n,ge);D&&U===se&&(U=!1),(U===se||b&&!h)&&(U=!0),_!==se&&6!=_&&(N=!1);const O=Us(e,n,Bo);if(!(b||y===se&&S===se||o.isInteger(E)&&E>=1&&E<=3))throw new d(va);const L=ms(n[Ko]),B=ms(n.localExtraField),W=ms(n.centralExtraField);return{comment:a,St:{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:b,extendedTimestamp:g,ntfsTimestamp:R,keepOrder:x,useWebWorkers:z,transferStreams:F,bufferedWrite:D,createTempStream:A,dataDescriptorSignature:k,signal:I,useUnicodeFileNames:C,compressionMethod:T,format:v?v.format:se,codecURI:v?v.codecURI:se,Et:v?v.versionNeeded:se,level:_,useCompressionStream:N,dataDescriptor:U,zip64:O,rawExtraField:L,bt:B,yt:W}}}(e,r,l),{comment:p}=f,m=l[Ko];e.Ve.set(r,se);const h=e.Xe,y={};let E,b;f.St.keepOrder&&(y.gt=new S(e=>E=e)),e.Xe=y;try{const{St:t}=f;0==t.level||t.compressionMethod!==se||t.passThrough||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;if(n&&!n.me)return!0;if(_n(t)||vn(t,Dn))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,{St:r},o){if(r.passThrough&&!t&&!Us(e,o,Ho))throw new d(qa);let i;if(t){if(t=new wo(t),await ho(t),!t.readable&&!t.readUint8Array)throw new d(Ka);({size:i}=t)}return n.assign({reader:t},function(e,t,n,r,o){const{passThrough:i,zipCrypto:a,password:s,rawPassword:c,encryptionStrength:l}=r;let{dataDescriptor:u,zip64:f,level:w,compressionMethod:p}=r,m=0,h=0,y=!1;if(i&&t){if(h=o[zo],h===se)throw new d(Ga);if(p===se)throw new d(ja)}const S=!0===f,E=Us(e,o,Wo);if(t&&i&&!E&&js(s,c))throw new d(Ua);const b=t&&(Boolean(s&&js(s)||c&&js(c))||i&&E);t||(w=0,p=0);const g=b?a?12:16+4*l:0;t&&(i?(o.uncompressedSize=h,m=n===se?Bs(h)+g:n):n===se?(u=!0,(f||f===se)&&(f=y=!0,m=4294967296)):(o.uncompressedSize=h=n,m=(Ws(p,w)?Bs(h):h)+g));const R=!(b||t&&(0!==n||i)||Ws(p,w));R&&!a&&Us(e,o,ge)===se&&(u=!1);const x=S||y||h>=O,z=S||m>=O;if(x||z){if(!1===f)throw new d(Ha);f=!0}return f=f||!1,{Rt:m,St:{dataDescriptor:u,xt:R,zip64:f,st:S,zt:y,it:x,ot:z,uncompressedSize:h,level:w,compressionMethod:p,encrypted:b}}}(e,Boolean(t),i,r,o))}(e,c,f,l);({reader:c}=o);const p=bs(e.writer),m=Es(e.writer),g=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,bt:h,encryptionStrength:y,extendedTimestamp:S,ntfsTimestamp:E,passThrough:b,encrypted:g,it:R,ot:x,uncompressedSize:z,zt:F,crc32:D}=e;let{version:A,compressionMethod:k}=e;const I=!p&&Ws(k,c);let C;const T=b||!I,v=l&&(e.bufferedWrite||!w||!R&&!x||T&&!F),_=v||l&&w&&(R||x);if(l&&(R||x)){const e=20,t=Ss(e);if(t.Ft(1),t.Ft(e-4),C=t.Dt,v&&(t.At(z),T)){const e=g?u?12:16+4*y:0;t.At(b?0:z+e)}}else C=de;let N,U,O,L,W;if(g&&!u){const e=Ss(js(is)+2);e.Ft(39169),e.kt(is),N=e.Dt,N[8]=y}else N=de;if(S){const e=vs(n),t=_s(e);if(t){const t=9+(o?4:0)+(i?4:0),n=Ss(t);L=1+(o?2:0)+(i?4:0),n.Ft(J),n.Ft(t-4),n.It(L),n.Ct(e),o&&n.Ct(Ns(vs(o))),i&&n.Ct(Ns(vs(i))),O=n.Dt}else O=de;if(E===se?!t||Boolean(o||i):E)try{const e=Ts(n),t=Ss(36);t.Ft(10),t.Ft(32),t.Tt(4),t.Ft(1),t.Ft(24),t.At(e),t.At(o?Ts(o):e),t.At(i?Ts(i):e),U=t.Dt}catch{U=de}else U=de}else U=O=de;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=as||t===se&&n===se)if(r!=ss||t===se&&n===se)W=de;else{const e=Ss(8);e.Ft(30805),e.Ft(4),e.Ft((t===se?0:t)&M),e.Ft((n===se?0:n)&M),W=e.Dt}else{const e=ys(t===se?0:t),r=ys(n===se?0:n),o=3+e.length+r.length,i=Ss(4+o);i.Ft(30837),i.Ft(o),i.It(1),i.It(e.length),i.kt(e),i.It(r.length),i.kt(r),W=i.Dt}}catch{W=de}k===se&&(k=I?8:0),A===se&&(A=0!=k||p||g?20:10);const{Et:P}=e;I&&P!==se&&(A=A>P?A:P),l&&(A=A>45?A:45),g&&!u&&(A=A>51?A:51,b&&D!==se&&(N[4]=1),Zs(tt(N),9,k),k=99);const Z=_?js(C):0,V=Z+js(N,O,U,W,m,h);if(V+(e[xe]?67:0)>M)throw new d(Ba);const H=new s(2e3*a.ceil(a.floor(n.getTime()/1e3)/2)),G=H<ae?ae:H>ie?ie:H,j=js(O)?new s(1e3*vs(n)):js(U)?n:G,{et:q,nt:K,rawLastModDate:Y}=qs({version:A,bitFlag:Ks(c,f,w,g,k),compressionMethod:k,uncompressedSize:z,lastModDate:G,rawLastModDate:r,rawFilename:t,ot:x,it:R,extraFieldLength:V}),X=Ss(oe+js(t)+V),Q=X.Dt,$=tt(Q);return X.Ct(B),X.kt(q),X.kt(t),_&&X.kt(C),X.kt(N),X.kt(O),X.kt(U),X.kt(W),X.kt(m),X.kt(h),w&&(x||Vs($,18,0),R||Vs($,22,0)),{vt:Q,_t:$,et:q,nt:K,lastModDate:j,rawLastModDate:Y,encrypted:g,compressed:I,version:A,compressionMethod:k,Nt:L,lt:de,Ut:Z,ft:O,wt:U,ht:W,ut:N,extraFieldLength:V}}(l=n.assign({},l,u.St,f.St,o.St,{signature:l[qo],crc32:l.crc32===se?l[qo]:l.crc32,offset:e.offset-p,diskNumberStart:m,[xe]:e.options[xe]})),R=function({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r,o=de,i=0,a=e?20:12;return n&&(a+=4),t&&(o=new w(a),r=tt(o),n&&(i=4,Vs(r,0,P))),{Ot:o,Mt:r,Lt:i}}(l),x=js(g.vt,R.Ot);b=await async function(e,t,r,o,a){const{Ve:s,writer:c}=e,{keepOrder:l,dataDescriptor:u,xt:f,signal:w}=a,{Bt:p,Pe:m,Wt:h,Pt:y}=o,E=e.options[xe];let b,g,R,x,F,D,A,k=m,I=0;const C=l&&h?h.gt:se;s.set(t,k);try{a.bufferedWrite||!l||e.Qe||e.Ke||e.Ye||!u&&!f?(b=!0,e.Ke++,A=a.createTempStream?await a.createTempStream():new z(se,se,{highWaterMark:ce}),A.size=0,await ho(c)):(g=!0,e.Ye++,A=c,await C,await T()),await ho(A);const m=bs(c);e.Ze&&!b&&await ks(e,c),E&&!b&&hs(o,e.offset-m);const{vt:h}=p;b||await v();const y=Es(c),R=Rs(e,c);if(k.diskNumberStart=y,b||(F=!0,D=c.size,await Is(A,h)),k=await async function(e,t,{diskNumberStart:r,gt:o},a,s,c){const{Bt:l,Zt:u,Vt:f}=a,{et:w,nt:p,lastModDate:m,rawLastModDate:h,encrypted:y,compressed:S,version:E,compressionMethod:b,lt:g,Ut:R,ft:x,Nt:z,wt:F,ht:D,ut:A}=l,{Ot:k}=u,{rawFilename:I,lastAccessDate:C,creationDate:T,password:v,rawPassword:_,level:N,zip64:U,st:M,it:B,ot:W,zipCrypto:P,dataDescriptor:Z,directory:V,executable:H,versionMadeBy:G,rawComment:j,rawExtraField:q,yt:K,useWebWorkers:Y,transferStreams:X,onstart:J,onprogress:Q,onend:$,signal:ee,encryptionStrength:te,extendedTimestamp:ne,msDosCompatible:re,internalFileAttributes:oe,externalFileAttributes:ie,uid:ae,gid:ce,unixMode:le,symlink:ue,setuid:fe,setgid:de,sticky:we,unixExternalUpper:pe,msdosAttributesRaw:me,msdosAttributes:he,useCompressionStream:ye,passThrough:Se,format:Ee,codecURI:be}=c,ge={gt:o,versionMadeBy:G,zip64:U,st:M,directory:Boolean(V),executable:Boolean(H),filenameUTF8:!0,rawFilename:I,commentUTF8:!0,rawComment:j,lt:g,Ut:R,ft:x,wt:F,ht:D,ut:A,rawExtraField:q,yt:K,extendedTimestamp:ne,msDosCompatible:re,internalFileAttributes:oe,externalFileAttributes:ie,diskNumberStart:r,uid:ae,gid:ce,unixMode:le,symlink:Boolean(ue),setuid:fe,setgid:de,sticky:we,unixExternalUpper:pe,msdosAttributesRaw:me,msdosAttributes:he};let{crc32:Re,uncompressedSize:xe}=c,ze=0;Se||(xe=0);const{writable:Fe}=t;if(e){const n=e.size,r=sn(Eo(e,{size:n})),o={options:{codecType:Wn,inputSize:n,level:N,rawPassword:_,password:v,encryptionStrength:te,zipCrypto:y&&P,passwordVerification:y&&P&&h>>8&L,computeCrc32:!Se,compressed:S&&!Se,encrypted:y&&!Se,useWebWorkers:Y,useCompressionStream:ye,transferStreams:X,format:Ee,codecURI:be,compressionMethod:b},config:s,se:{signal:ee,size:n,onstart:J,onprogress:Q,onend:$}};try{const e=await Sr({readable:r,writable:Fe},o);if(ze=e.outputSize,t.size+=ze,Se||(xe=e.inputSize,y&&!P||(Re=e.crc32)),!W&&ze>=O||!B&&xe>=O)throw new d(Ha)}catch(e){throw e.outputSize!==se&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,Bt:r,Zt:o},{zip64:a,zipCrypto:s,passThrough:c,dataDescriptor:l}){const{nt:u,encrypted:f}=r,{Mt:d,Lt:w}=o;f&&!s&&!c||e===se||(Vs(u,10,e),l&&Vs(d,w,e)),a?l&&(Hs(d,w+4,i(t)),Hs(d,w+12,i(n))):(Vs(u,14,t),Vs(u,18,n),l&&(Vs(d,w+4,t),Vs(d,w+8,n)))}({crc32:Re,compressedSize:ze,uncompressedSize:xe,Bt:l,Zt:u},c),Z&&await Is(t,k),n.assign(ge,{uncompressedSize:xe,compressedSize:ze,lastModDate:m,rawLastModDate:h,creationDate:T,lastAccessDate:C,encrypted:Boolean(y),zipCrypto:Boolean(P),size:f+ze,compressionMethod:b,version:E,et:w,nt:p,signature:Re,crc32:!y||P||Se?Re:se,Nt:z,it:B,ot:W}),ge}(r,A,k,o,qe(),a),b||(F=!1),s.set(t,k),k.filename=t,b){if(await S.all([A.writable.getWriter().close(),C]),await T(),e.Ze&&await ks(e,c),x=!0,D=c.size,await v(),k.diskNumberStart=Es(c),k.offset=Rs(e,c),E){const t=o.Vt;hs(o,e.offset-bs(c)),k.size+=o.Vt-t}!function({rawFilename:e,encrypted:t,zip64:n,Ut:r,crc32:o,compressedSize:a,uncompressedSize:s,it:c,ot:l},u,{dataDescriptor:f,passThrough:d}){if(f||((!t||d&&o!==se)&&Vs(u,14,o),l||Vs(u,18,a),c||Vs(u,22,s)),n&&r){const t=oe+js(e)+4;Hs(u,t,i(s)),Hs(u,t+8,i(a))}}(k,p._t,a),await Is(c,p.vt),await Cs(A.readable,c,w,e=>I+=e),c.size+=A.size,x=!1}else k.diskNumberStart=y,k.offset=R;return e.offset+=k.size,k}catch(n){if(x||F){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-D,b&&(e.offset+=I)}throw s.delete(t),n}finally{if(b&&e.Ke--,g&&e.Ye--,y&&y(C),R&&R(),b&&A&&A.dispose)try{await A.dispose()}catch{}}async function T(){e.Qe=!0;const{$e:t}=e;e.$e=new S(t=>R=()=>{e.Qe=!1,t()}),await t}async function v(){gs(c,js(p.vt))&&await c.closeDisk()}}(e,r,c,{Bt:g,Zt:R,Vt:x,Pe:y,Wt:h,Pt:E},l)}catch(t){throw e.Ve.delete(r),t}finally{E&&E(h&&h.gt)}return n.assign(b,{name:r,comment:p,extraField:m}),new ei(b)}(e,r,c,l)}catch(t){throw e.He.delete(r),t}finally{const e=ls.shift();e?e():cs--}}(l,e,r,c);u.add(f);const p=()=>u.delete(f);return S.prototype.then.call(f,p,p),ds(l,f)}remove(e){const{He:t,Ve:n}=this;if(typeof e==fe&&(e=n.get(e)),e&&e.filename!==se){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:a}=this,{writable:s}=a;if(!(e instanceof w))throw new d(Da);if(js(e)>M)throw new d(Fa);for(;o.size;)await S.allSettled(t.from(o));await S.allSettled(r.qe.map(e=>e.Ht));const c=r.qe.filter(e=>e.error&&!e.Gt);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.Gt=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const{jt:o,qt:a}=function(e){let t=0,n=!1;for(const[,r]of e){const{rawFilename:e,ut:o,rawComment:i,wt:a,ht:s,rawExtraField:c,yt:l,extendedTimestamp:u,Nt:f,lastModDate:w,st:p,uncompressedSize:m,compressedSize:h}=r;let{it:y,ot:S}=r;p||(y&&m<O&&(y=r.it=!1),S&&h<O&&(S=r.ot=!1)),n=n||y||S;const E=r.offset>=O,b=r.diskNumberStart>=M;let g,R;if(E||b||y||S){const e=4+(y?8:0)+(S?8:0)+(E?8:0)+(b?4:0),t=Ss(e);t.Ft(1),t.Ft(e-4),y&&t.At(m),S&&t.At(h),E&&t.At(r.offset),b&&t.Ct(r.diskNumberStart),g=t.Dt}else g=de;r.lt=g,r.Kt=E,r.ct=b;const x=vs(w);if(u&&_s(x)){const e=Ss(9);e.Ft(J),e.Ft(5),e.It(f),e.Ct(x),R=e.Dt}else R=de;r.ft=R;const z=js(g,o,a,s,R,c,l);if(z>M)throw new d(Ba);t+=q+js(e,i)+z}return{jt:t,qt:n}}(e.Ve),{Yt:s,Xt:c,Jt:l}=await async function(e,n,r){const{Ve:o,writer:i}=e,a=new w(n);await ho(i);let s=0,c=0,l=Es(i),u=bs(i),f=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:d,lt:w,ut:p,ft:m,wt:h,ht:y,rawExtraField:S,yt:E,rawComment:b,versionMadeBy:g,et:R,nt:x,it:z,ot:F,ct:D,Kt:A,internalFileAttributes:k,externalFileAttributes:I,diskNumberStart:C,uncompressedSize:T,compressedSize:v}=n,_=js(w,p,m,h,y,S,E),N=q+js(d,b)+_;gs(i,s+N-c)&&(await Is(i,a.slice(c,s)),c=s,f=0,await i.closeDisk()),0==e&&(l=Es(i),u=bs(i)),z||Vs(x,18,T),F||Vs(x,14,v),(A||D)&&n.version<45&&Zs(x,0,45);const U=Ss(N);if(U.Ct(V),U.Ft(g),U.kt(R.subarray(0,24)),U.Ft(_),U.Ft(js(b)),U.Ft(D?M:C),U.Ft(k),U.Ct(I),U.Ct(A?O:t),U.kt(d),U.kt(w),U.kt(p),U.kt(m),U.kt(h),U.kt(y),U.kt(S),U.kt(E),U.kt(b),Gs(a,U.Dt,s),s+=N,f++,r.onprogress)try{await r.onprogress(e+1,o.size,new ei(n))}catch{}}return await Is(i,c?a.slice(c):a),{Yt:{diskNumber:l,diskOffset:u},Xt:{diskNumber:Es(i),Qt:f},Jt:a}}(e,o,r),u=await async function(e,t,n){const r=Ms(e,n,"signCentralDirectory");if(r){const n=await r(t),o=js(n);if(o>M)throw new d(os);const i=Ss(6+o);i.Ct(Z),i.Ft(o),i.kt(n);const{writer:a}=e;return gs(a,js(i.Dt))&&await a.closeDisk(),await Is(a,i.Dt),6+o}return 0}(e,l,r);await async function(e,t,n,r){const{writer:o}=e,{Yt:a,Xt:s,$t:c,qt:l}=r;let{jt:u}=r,f=e.Ve.size,w=a.diskNumber,p=Rs(e,a);const m=js(t);if(m>M)throw new d(Fa);let h=Us(e,n,Bo),y=Es(o);if(gs(o,(h?98:K)+m)&&y++,p>=O||u>=O||f>=M||y>=M){if(!1===h)throw new d(Ha);h=!0}else h===se&&l&&(h=!0);const S=Ss(h?98:K);gs(o,js(S.Dt)+m)&&await o.closeDisk(),y=Es(o);let E=y==s.diskNumber?s.Qt:0;h&&(S.Ct(G),S.At(44),S.Ft(45),S.Ft(45),S.Ct(y),S.Ct(w),S.At(E),S.At(f),S.At(u),S.At(p),S.Ct(j),S.Ct(y),S.At(i(Rs(e,o))+i(u)+i(c)),S.Ct(y+1),Us(e,n,"supportZip64SplitFile",!0)&&(y=M,w=M),E=M,f=M,p=O,u=O),S.Ct(H),S.Ft(y),S.Ft(w),S.Ft(E),S.Ft(f),S.Ct(u),S.Ct(p),S.Ft(m),await Is(o,S.Dt),m&&await Is(o,t)}(e,n,r,{Yt:s,Xt:c,jt:o,$t:u,qt:a})}(r,e,n),!mo(a)&&Us(r,n,be)||await s.getWriter().close(),a.getData?a.getData():s}}class fs extends S{then(e,t){const{en:n}=this;return n&&(n.Gt=!0),super.then(e,t)}}function ds(e,t){const n=new fs((e,n)=>S.prototype.then.call(t,e,n)),r={};return n.en=r,r.Ht=S.prototype.then.call(n,se,e=>r.error=e),e.qe.push(r),n}async function ws(e,t){try{await e.writer.writable.abort(t)}catch{}}function ps(e,t,n){e.je.add(t),t.catch(e=>{try{n(e)}catch{}})}function ms(e){if(!e)return de;if(!(e instanceof c))throw new d(Oa);let t=0,n=0;e.forEach((e,n)=>{if(Oe(n,M,Ma),!(e instanceof w))throw new d(La);if(js(e)>M)throw new d(Ba);t+=4+js(e)});const r=new w(t),o=tt(r);return e.forEach((e,t)=>{Zs(o,n,t),Zs(o,n+2,js(e)),Gs(r,e,n+4),n+=4+js(e)}),r}function hs(e,t){const{Bt:n}=e;let{vt:r,extraFieldLength:o}=n,i=64-(t+js(r))%64;i<4&&(i+=64);const a=new w(i),s=tt(a);Zs(s,0,6534),Zs(s,2,i-4);const c=r;n.vt=r=new w(js(c)+i),Gs(r,c),Gs(r,a,js(c));const l=tt(r);Zs(l,28,o+i),n._t=l,e.Vt+=i}function ys(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 Ss(e){const t=new w(e),n=tt(t);let r=0;return{Dt:t,It:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},Ft:e=>{Zs(n,r,e),r+=2},Ct:e=>{Vs(n,r,e),r+=4},At:e=>{Hs(n,r,i(e)),r+=8},kt:e=>{Gs(t,e,r),r+=js(e)},Tt:e=>r+=e}}function Es(e){const{diskNumber:t=0}=e;return t}function bs(e){const{diskOffset:t=0}=e;return t}function gs(e,t){const{availableSize:n=ce}=e;return t>n}function Rs(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.Ge:0)}function xs(e){const t=tt(e);let n=0;for(;n+4<=js(e);){const r=4+Ps(t,n+2);if(1==Ps(t,n))return xs($e(e.subarray(0,n),e.subarray(a.min(n+r,js(e)))));n+=r}return e}async function zs(e,t,n,r){if(r>0){const{writer:o}=e;let i=0;try{await Cs(Eo(t,{offset:n,size:r}),o,se,e=>i+=e)}catch(t){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}throw t}finally{o.size+=i,e.offset+=i}}}async function Fs(e,t){const n=await So(e,t,oe);if(js(n)<oe)return oe;const r=tt(n);return oe+Ps(r,26)+Ps(r,28)}function Ds(e,{offset:t,diskNumberStart:n}){return t+(e.Ne?e.Ne(n):0)}function As(){const e=new w(4);return Vs(tt(e),0,W),e}async function ks(e,t){delete e.Ze,await Is(t,As()),e.offset+=4}async function Is(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=js(t),await r.write(t)}finally{r.releaseLock()}}async function Cs(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new D({async write(e){await o.ready,await o.write(e),r(js(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function Ts(e){if(e){const t=(i(e.getTime())+i(116444736e5))*i(1e4);return t<Za?Za:t>Va?Va:t}}function vs(e){return a.floor(e.getTime()/1e3)}function _s(e){return e>=Wa&&e<=Pa}function Ns(e){return a.min(Pa,a.max(Wa,e))}function Us(e,t,n,r){const o=t[n]===se?e.options[n]:t[n];return o===se?r:o}function Os(e,t,n,r){const i=Us(e,t,n,r);if(null===i)return r;if(i!==se&&(typeof i.getTime!=ue||o.isNaN(i.getTime())))throw new d(Ia);return i}function Ms(e,t,n){return _e(Us(e,t,n))}function Ls(e,t,n,r){return Le(Us(e,t,n,r))}function Bs(e){return e+5*(a.floor(e/16383)+1)}function Ws(e,t){return e===se?t===se||t>0:0!==e}function Ps(e,t){return e.getUint16(t,!0)}function Zs(e,t,n){e.setUint16(t,n,!0)}function Vs(e,t,n){e.setUint32(t,n,!0)}function Hs(e,t,n){e.setBigUint64(t,n,!0)}function Gs(e,t,n){e.set(t,n)}function js(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function qs({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:a,rawFilename:s,ot:c,it:l,extraFieldLength:u}){const f=Ss(26),d=f.Dt,w=tt(d);if(f.Ft(e),f.Ft(t),f.Ft(n),a===se){const e=new m(1),t=tt(e);Zs(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Zs(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),a=e[0]}return f.Ct(a),f.Tt(4),c||o!==se?f.Ct(c?O:o):f.Tt(4),l||r!==se?f.Ct(l?O:r):f.Tt(4),f.Ft(js(s)),f.Ft(u),{et:d,nt:w,rawLastModDate:a}}function Ks(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 Ys(e,t){if(!e)return!1;const{tn:n}=e;return n?n.includes(t):vn(e,t)}const Xs=1048576,Js=".zip.js-temp",Qs=1048576,$s=1048576,ec=".zip.js-temp",tc="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===g&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===g?location.href:U&&"SCRIPT"===U.tagName.toUpperCase()&&U.src||new f("zip-core.min.js",g.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,{nn:e,rn:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{rn:n,nn:r}=this,o=new w(t),i=4*a.floor(e/3),s=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);let l=0;for(let e=c;e<c+t&&e<s.length;e++)o[e-c]=s.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,",an:""})}writeUint8Array(e){const t=this;let n,o=t.an;const i=t.an.length;for(t.an="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.an+=r.fromCharCode(e[n]);o.length>2?t.data+=x(o):t.an=o+t.an}getData(){return this.data+x(this.an)}},e.ERR_AMBIGUOUS_ARCHIVE=di,e.ERR_BAD_FORMAT=ti,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=oi,e.ERR_DUPLICATED_NAME=za,e.ERR_ENCRYPTED=si,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=wi,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=fi,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=ri,e.ERR_EOCDR_NOT_FOUND=ni,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=ai,e.ERR_HTTP_RANGE=kr,e.ERR_HTTP_RESOURCE_CHANGED=Ir,e.ERR_INVALID_AUTHENTICATION_CODE=bt,e.ERR_INVALID_CODEC_DEFINITION=un,e.ERR_INVALID_CODEC_MODULE=dn,e.ERR_INVALID_COMMENT=Fa,e.ERR_INVALID_COMMENT_TYPE=Da,e.ERR_INVALID_COMPRESSED_DATA=Rn,e.ERR_INVALID_CRC32=xn,e.ERR_INVALID_DATE=Ia,e.ERR_INVALID_ENCRYPTION_STRENGTH=va,e.ERR_INVALID_ENTRY_COMMENT=Aa,e.ERR_INVALID_ENTRY_COMMENT_TYPE=ka,e.ERR_INVALID_ENTRY_NAME=Ca,e.ERR_INVALID_EXTRAFIELD=Oa,e.ERR_INVALID_EXTRAFIELD_DATA=Ba,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=La,e.ERR_INVALID_EXTRAFIELD_TYPE=Ma,e.ERR_INVALID_FILENAME_VALIDATION=hi,e.ERR_INVALID_FUNCTION_OPTION=Ce,e.ERR_INVALID_GID=Ja,e.ERR_INVALID_LEVEL=rs,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=yi,e.ERR_INVALID_MAX_WORKERS=Be,e.ERR_INVALID_MSDOS_ATTRIBUTES=ts,e.ERR_INVALID_MSDOS_DATA=ns,e.ERR_INVALID_PASSWORD=Et,e.ERR_INVALID_PASSWORD_TYPE=ve,e.ERR_INVALID_READER=Ka,e.ERR_INVALID_SIGNAL=Te,e.ERR_INVALID_SIGNATURE_DATA=os,e.ERR_INVALID_STRICTNESS=mi,e.ERR_INVALID_UID=Xa,e.ERR_INVALID_UNCOMPRESSED_SIZE=gn,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=$a,e.ERR_INVALID_UNIX_ID_SIZE=es,e.ERR_INVALID_UNIX_MODE=Qa,e.ERR_INVALID_VERSION=Ta,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Cr,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=ii,e.ERR_OVERLAPPING_ENTRY=ui,e.ERR_RESERVED_COMPRESSION_METHOD=fn,e.ERR_SPLIT_ZIP_FILE=li,e.ERR_UNDEFINED_COMPRESSION_METHOD=ja,e.ERR_UNDEFINED_READER=qa,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=Ga,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=pi,e.ERR_UNSUPPORTED_COMPRESSION=wn,e.ERR_UNSUPPORTED_CONTEXT=tc,e.ERR_UNSUPPORTED_CRYPTO_API=Rt,e.ERR_UNSUPPORTED_ENCRYPTION=ci,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=Ua,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=_a,e.ERR_UNSUPPORTED_FORMAT=Ha,e.ERR_UNSUPPORTED_SPLIT_USDZ=Na,e.ERR_UNSUPPORTED_UINT64=Si,e.ERR_WORKER_STARTUP_TIMEOUT=Hn,e.ERR_WRITER_NOT_INITIALIZED=Tr,e.ERR_ZIP_NOT_EMPTY=Ya,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,sn:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,sn: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 Wr{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{Dt:e,size:e.length})}readUint8Array(e,t){return this.Dt.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Pr{constructor(e){super(),this.cn=e||262144}init(e=0){n.assign(this,{offset:0,Dt:new w(e>0?e:this.cn)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.Dt.length){let e=t.Dt.length?2*t.Dt.length:t.cn;for(;e<n;)e*=2;const r=t.Dt;t.Dt=new w(e),t.Dt.set(r)}t.Dt.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.Dt.length?this.Dt:this.Dt.slice(0,this.offset)}},e.VERSION="2.11.3",e.WARNING_APPENDED_DATA=Fi,e.WARNING_COMPRESSED_PATCHED_DATA=gi,e.WARNING_DUPLICATE_FILENAME=Ii,e.WARNING_MALFORMED_EXTRA_FIELD=Ri,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=Ti,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=vi,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=_i,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=Ci,e.WARNING_PREPENDED_CENTRAL_DIRECTORY=Ai,e.WARNING_PREPENDED_DATA=Di,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=ki,e.WARNING_UNKNOWN_VERSION=bi,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=xi,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=Ei,e.WARNING_WRAPPED_ENTRIES_COUNT=zi,e.Writer=Pr,e.ZipReader=Wi,e.ZipReaderStream=Pi,e.ZipWriter=us,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new z;this.readable=t,this.zipWriter=new us(n,e),this.je=new l}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:o}=new z({start(e){n=e},flush:()=>{!async function(){try{await t.close()}catch(e){await ws(t,e)}}()}});return ps(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 z({start(e){t=e}});return ps(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 ws(r,e),e}try{return await r.close(e,n)}catch(e){throw await ws(r,e),e}}},e.configure=function(e){n.assign(je,Xe(Qe(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=Qs}=e;return function(){const e=[];let n,r,o,i=0,a=!1;const s=new D({async write(o){a?await n.write(o):(e.push(o),i+=o.length,i>t&&await async function(){const t=new z;r=cn(t.readable),n=t.writable.getWriter(),a=!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:s,readable:new F({async pull(t){if(a){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=Xs,directoryName:r=Js,getDirectory:o=()=>I.storage.getDirectory()}=e;let i;function a(){return i||(i=S.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return function(){const e=[];let r,o,i,s,c=0,l=!1;const u=new D({async write(s){l?await i.write(s):(e.push(s),c+=s.length,c>n&&await async function(){const n=await a();r=R.randomUUID?R.randomUUID():t.from(R.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 F({async pull(t){if(l){if(!s){const e=await o.getFile();s=e.stream().getReader()}const{value:e,done:n}=await s.read();n?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){s&&await s.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await a();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=$s,directoryName:r=ec,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d(tc);const i=o||(()=>I.storage.getDirectory());let s;function c(){return s||(s=S.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),s}return function(){const e=[];let r,o,i=0,s=!1,l=0,u=0;const f=new D({async write(a){s?(o.write(a,{at:l}),l+=a.length):(e.push(a),i+=a.length,i>n&&await async function(){const n=await c();r=R.randomUUID?R.randomUUID():t.from(R.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join("");const i=await n.getFileHandle(r,{create:!0});o=await i.createSyncAccessHandle(),s=!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 F({pull(t){if(s){const e=l-u;if(e<=0)return void t.close();const n=new w(a.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:Ys(n,zn)||Ys(e,zn)||Ys(e,Dn),decompression:Ys(r,zn)||Ys(t,zn)||Ys(t,Dn),registered:!1},{compressionMethod:9,compression:!1,decompression:Ys(r,Fn)||Ys(t,Fn),registered:!1}];for(const e of Sn()){const t=En(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==ue:se,decompression:t?typeof t.DecompressionStream==ue:se,registered:!0})}return o},e.isZipFile=Zi,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:i,DecompressionStream:a,versionNeeded:s}=e;if(!o.isInteger(t)||t<0||t>M||typeof n!=fe||!n.length)throw new d(un);if(pn.includes(t))throw new d(fn);const c=typeof i==ue||typeof a==ue;if(!(c||typeof r==fe&&r.length))throw new d(un);mn.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:s}),c&&bn(n,{CompressionStream:i,DecompressionStream:a})},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=>(xr(e),e.terminate()))),Gn=se,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:a,Date:s,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:b,document:g,crypto:x,btoa:R,TransformStream:z,ReadableStream:F,WritableStream:D,CompressionStream:A,DecompressionStream:k,navigator:I,Worker:C,Symbol:T,setTimeout:v,clearTimeout:_,structuredClone:N}="undefined"!=typeof globalThis?globalThis:self;var U=void 0!==g?g.currentScript:null;const O=4294967295,M=65535,L=255,B=67324752,W=134695760,P=W,Z=84233040,V=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 s(2107,11,31,23,59,58),ae=new s(1980,0,1),se=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",be="preventClose",ge="dataDescriptor",xe="offset",Re="usdz",ze="maxAppendedDataSize",Fe="filename",De="comment",Ae="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||se}function Ue(e){if(e&&e.aborted)throw e.reason===se?new DOMException("The operation was aborted","AbortError"):e.reason}function Oe(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 Le(e,t,n){e!==se&&Me(e,t,n)}function Be(e){return typeof e==fe&&e.trim()?o(e):e}const We="Invalid maxWorkers (must be an integer greater than 0)";let Pe=2;try{typeof I!=le&&I.hardwareConcurrency&&(Pe=I.hardwareConcurrency)}catch{}const Ze={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:Pe,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof A!=le&&A,DecompressionStream:typeof k!=le&&k},Ve="maxWorkers",He=["chunkSize",Ve,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],Ge=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],je=["baseURI","wasmURI","workerURI","useCompressionStream","useWebWorkers","transferStreams",...He,...Ge],qe={...Ze};function Ke(){return qe}function Ye(e){return Xe(e.chunkSize)}function Xe(e){return e=Be(e),o.isInteger(e)&&e>=1?a.max(e,64):65536}function Je(e){const t={};for(const n of je){const r=e[n];r!==se&&(t[n]=Qe(n,r))}return t}function Qe(e,t){if(He.includes(e)){if(t=Be(t),e==Ve&&(!o.isInteger(t)||t<1))throw new d(We)}else Ge.includes(e)&&_e(t);return t}function $e(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===se&&r===se)return e;const o=n.assign({},e);return o.CompressionStreamFallback===se&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===se&&(o.DecompressionStreamFallback=r),o}function et(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function tt(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function nt(e){return new h(e.buffer,e.byteOffset,e.byteLength)}const rt=[[],[],[],[],[],[],[],[]];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;rt[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){const n=rt[t-1][e];rt[t][e]=n>>>8^rt[0][255&n]}const[ot,it,at,st,ct,lt,ut,ft]=rt;class dt{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=ft[255&e]^ut[e>>>8&255]^lt[e>>>16&255]^ct[e>>>24&255]^st[255&n]^at[n>>>8&255]^it[n>>>16&255]^ot[n>>>24&255]}}for(;r<n;r++)t=t>>>8^ot[255&(t^e[r])];this.o=t}get(){return~this.o}}class wt extends z{constructor(){let e;const t=new dt;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 pt(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 mt={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=mt.l(n);return 32===r?e.concat(t):mt.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)+mt.l(n)},h(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,a.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=mt.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=>a.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=mt.l(o);return r.push(mt.S(t+i&31,t+i>32?n:r.pop(),1)),r}},ht={bytes:{R(e){const t=mt.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(mt.S(8*(3&n),r)),t}}},yt=class{constructor(e){const t=this;t.blockSize=512,t.D=[1732584193,4023233417,2562383102,271733878,3285377520],t.A=[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.D.slice(0),e.C=[],e.T=0,e}update(e){const t=this;"string"==typeof e&&(e=ht.v.F(e));const n=t.C=mt.concat(t.C,e),r=t.T,o=t.T=r+mt.bitLength(e);if(o>9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const i=new m(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);e<=o;e+=t.blockSize)t._(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}N(){const e=this;let t=e.C;const n=e.I;t=mt.concat(t,[mt.S(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.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}O(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],s=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,s,c,l)+u+o[e]+n.A[a.floor(e/20)]|0;u=l,l=c,c=n.O(30,s),s=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+s|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},St={importKey:e=>new St.M(ht.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,a,s,c,l;const u=new ArrayBuffer(o),f=new h(u);let w=0;const p=mt;for(t=ht.bytes.F(t),l=1;w<(o||1);l++){for(i=a=e.encrypt(p.concat(t,[l])),s=1;s<n;s++)for(a=e.encrypt(a),c=0;c<a.length;c++)i[c]^=a[c];for(s=0;w<(o||1)&&s<i.length;s++)f.setInt32(w,i[s]),w+=4}return u.slice(0,r/8)},M:class{constructor(e){const t=this,n=t.B=yt,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.Z=!1}update(e){this.Z=!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.Z)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Et=typeof x!=le&&typeof x.getRandomValues==ue,bt="Invalid password",gt="Invalid authentication code",xt="zipjs-abort-check-password",Rt="Crypto API not supported";function zt(e){if(Et)return x.getRandomValues(e);throw new d(Rt)}const Ft=16,Dt={name:"PBKDF2"},At=n.assign({hash:{name:"HMAC"}},Dt),kt=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Dt),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,Ot=Nt&&typeof Ut!=le,Mt=ht.bytes,Lt=class{constructor(e){const t=this;t.V=[[[],[],[],[],[]],[[],[],[],[],[]]],t.V[0][0][0]||t.H();const n=t.V[0][4],r=t.V[1],o=e.length;let i,a,s,c=1;if(4!==o&&6!==o&&8!==o)throw new d("invalid aes key size");for(t.A=[a=e.slice(0),s=[]],i=o;i<4*o+28;i++){let e=a[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))),a[i]=a[i-o]^e}for(let e=0;i;e++,i--){const t=a[3&e?i:i-4];s[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.V[0],t=this.V[1],n=e[4],r=t[4],o=[],i=[];let a,s,c,l;for(let e=0;e<256;e++)i[(o[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=s||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=o[c=o[s=o[u]]];let f=16843009*l^65537*c^257*s^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.A[t],r=n.length/4-2,o=[0,0,0,0],i=this.V[t],a=i[0],s=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=a[m>>>24]^s[h>>16&255]^c[y>>8&255]^l[255&S]^n[E],w=a[h>>>24]^s[y>>16&255]^c[S>>8&255]^l[255&m]^n[E+1],p=a[y>>>24]^s[S>>16&255]^c[m>>8&255]^l[255&h]^n[E+2],S=a[S>>>24]^s[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=mt.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 mt.h(t,o)}},Wt=St.M;let Pt=Nt&&Ot&&typeof Ut.importKey==ue,Zt=Nt&&Ot&&typeof Ut.deriveBits==ue;class Vt extends z{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:a,ready:s}=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(bt)}(n,i,o,Yt(e,0,Ct[i]+2)),e=Yt(e,Ct[i]+2),r?t.error(new d(xt)):a()):await s;const c=new w(e.length-vt-(e.length-vt)%Ft);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 a=Yt(r,0,r.length-vt),s=Yt(r,r.length-vt);let c=de;if(a.length){const e=Jt(Mt,a);n.update(e);const r=t.update(e);c=Xt(Mt,r)}const l=Yt(Xt(Mt,n.digest()),0,vt);let u=r.length<vt?1:0;for(let e=0;e<vt;e++)u|=l[e]^s[e];if(u&&o)throw new d(gt);e.enqueue(c)}}})}}class Ht extends z{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:a}=n;let s=de;r?(s=await async function(e,t,n){const r=zt(new w(Ct[t]));return et(r,await qt(e,t,n,r))}(n,o,r),i()):await a;const c=new w(s.length+e.length-e.length%Ft);c.set(s,0),t.enqueue(jt(n,e,c,s.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 a=Xt(Mt,n.digest()).slice(0,vt);e.enqueue(et(i,a))}}})}}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:a,ne:s,re:c}=e;c.length&&(t=et(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%Ft)),u=0;u<=l-Ft;u+=Ft){const e=Jt(Mt,Yt(t,u,u+Ft));i&&s.update(e);const o=a.update(e);i||s.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 a=await async function(e,t,n,r,o){if(!Pt)return St.importKey(t);try{return await Ut.importKey("raw",t,n,!1,o)}catch{return Pt=!1,St.importKey(t)}}(0,o,At,0,It),s=await async function(e,t,n){if(!Zt)return St.L(t,e.salt,kt.iterations,n);try{return await Ut.deriveBits(e,t,n)}catch{return Zt=!1,St.L(t,e.salt,kt.iterations,n)}}(n.assign({salt:i},kt),a,8*(2*Tt[r]+2)),c=new w(s),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(_t)),ne:new Wt(u)}),f}function Kt(e,t){return t===se?pt(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 z{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(bt);e=e.subarray(12)}r?t.error(new d(xt)):t.enqueue(tn(n,e))}})}}class $t extends z{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=zt(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 dt(o[0]),ae:new dt(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=sn(a.imul(sn(n+an(r)),134775813)+1),e.ae.append([n>>>24]);const o=~e.ae.get();e.keys=[r,n,o]}function on(e){const t=2|e.keys[2];return an(a.imul(t,1^t)>>>8)}function an(e){return 255&e}function sn(e){return 4294967295&e}function cn(e){if(e instanceof F)return e;const t=e.getReader();return new F({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 F)return new u(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new D({write(e){r.push(e)}})).then(()=>new y(r,n))}function un(e){if(e instanceof D)return e;const t=e.getWriter();return new D({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="Compression method not supported",mn=[0,8,9,99],hn=new c,yn=new c;function Sn(e){return hn.get(e)}function En(){return t.from(hn.values(),e=>n.assign({},e,yn.get(e.format)))}function bn(e){return yn.get(e)}function gn(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=ue&&typeof r!=ue)throw new d(wn);yn.set(e,{CompressionStream:n,DecompressionStream:r})}const xn="Invalid uncompressed size",Rn="Invalid compressed data",zn="Invalid CRC32",Fn="deflate-raw",Dn="deflate64-raw",An="gzip",kn=[31,139,8];class In extends z{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:a,zipCrypto:s,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:d,inputSize:w}=e,p=this;let m,y,S,E=super.readable;const b=f&&bn(f),g=c&&o&&!u&&!b&&(!i||s)&&Boolean(a&&r);if(i&&!s||!c||g||(m=new wt,E=Ln(E,m)),o)if(b)E=Bn(E,On(b.CompressionStream,f,{level:l,chunkSize:t,compressionMethod:d,uncompressedSize:w}));else if(g)S=new Cn,E=Bn(E,new r(An)),E=Ln(E,S);else try{E=Mn(E,a,{level:l,chunkSize:t},r,n)}catch(e){let t;try{t=new r(An)}catch{throw e}E=Bn(E,t),E=Ln(E,new Cn)}i&&(s?E=Ln(E,new $t(e)):(y=new Ht(e),E=Ln(E,y))),Un(p,E,()=>{i&&!s||!c||(p.crc32=g?S.crc32:new h(m.value.buffer).getUint32(0))})}}class Cn extends z{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=a.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=et(n,e));const i=o-8,s=a.min(i,n.length);r.enqueue(et(n.subarray(0,s),e.subarray(0,i-s))),n=et(n.subarray(s),e.subarray(i-s))},flush(){const t=nt(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class Tn extends z{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:a,crc32:s,compressed:c,useCompressionStream:l,deflate64:u,format:f,compressionMethod:p,rawBitFlag:m,outputSize:y}=e;let E,b,g=super.readable;if(i&&(o?g=Ln(g,new Qt(e)):(b=new Vt(e),g=Ln(g,b))),c){const e=f&&bn(f);if(e)g=Bn(g,On(e.DecompressionStream,f,{chunkSize:t,compressionMethod:p,rawBitFlag:m,uncompressedSize:y}));else try{g=Mn(g,l,{chunkSize:t,deflate64:u},r,n)}catch(e){if(u||y===se)throw e;let t;try{t=new r(An)}catch{throw e}g=function(e,t,n){const r=new dt;let o,i,a,s=0,c=!1;const l=new S((e,t)=>{i=e,a=t});l.catch(()=>{}),n||i();const u=new z({start(e){const t=new w(10);t.set(kn),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=nt(t);o.setUint32(0,r.get(),!0),o.setUint32(4,n,!0),e.enqueue(t)},cancel(e){a(e)}}),f=new z({transform(e,t){r.append(e),s+=e.length,s>=n?i():c&&p(),t.enqueue(e)},cancel(e){a(e)}});return e=Ln(e,u),Ln(e=Bn(e,t),f);function p(){m(),o=v(()=>a(new d(xn)),5e3)}function m(){_(o)}}(g,t,y)}g=function(e){const t=e.getReader();return new F({async pull(e){let n;try{n=await t.read()}catch(e){if(e&&e.message)throw e;const t=new d(Rn);throw t.cause=e,t}const{value:r,done:o}=n;o?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})}(g)}a&&(E=new wt,g=Ln(g,E)),Un(this,g,()=>{if(a){const e=new h(E.value.buffer);if(s!=e.getUint32(0,!1))throw new d(zn)}})}}const vn=new c;function _n(e,t){if(!e)return!1;let n=vn.get(e);n||(n=new c,vn.set(e,n));let r=n.get(t);if(r===se){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function Nn(e){return _n(e,Fn)}function Un(e,t,r){t=Ln(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function On(e,t,n){if(!e)throw new d(pn);return new e(t,n)}function Mn(e,t,n,r,o){const i=t&&r?r:o||r,a=n.deflate64?Dn:Fn;let s;try{s=new i(a,n)}catch(e){if(!t||!o||i==o)throw e;s=new o(a,n)}return Bn(e,s)}function Ln(e,t){return cn(e).pipeThrough(t)}function Bn(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 Wn="data",Pn="deflate",Zn="inflate";class Vn extends z{constructor(e,t){super({});const r=this,{codecType:o}=e;let i;o.startsWith(Pn)?i=In:o.startsWith(Zn)&&(i=Tn),r.outputSize=0;let a=0;const s=new i(e,t),c=super.readable,l=new z({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:a})}}),u=new z({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==se&&r.outputSize>e.outputSize))throw new d(xn)},flush(){const{crc32:e}=s;n.assign(r,{crc32:e,inputSize:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(s).pipeThrough(u)})}}class Hn extends z{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 Gn="Worker startup timeout";let jn,qn,Kn;function Yn(e){e.createWorker?qn=!0:jn=!1}class Xn{constructor(e,{readable:t,writable:r},{options:o,config:i,se:a,useWebWorkers:s,transferStreams:c,workerURI:l,createWorker:u},f){const{signal:d}=a;return qn&&(u=se),n.assign(e,{ce:!0,le:(e.le||0)+1,readable:t.pipeThrough(new Hn(Ye(i))).pipeThrough(new Jn(a),{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)}}}),jn===se&&(jn=typeof C!=le),(s&&Kn&&(jn&&l||u)?Kn:$n)(e,i)}}class Jn extends z{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await Qn(e,n)},async transform(e,r){o+=e.length,t&&await Qn(t,o,n),r.enqueue(e)},async flush(){r&&await Qn(r,o)}})}}async function Qn(e,...t){try{await e(...t)}catch{}}function $n(e,t){return{run:()=>er(e,t)}}async function er({options:e,readable:t,writable:n,we:r},o){let i;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(Pn),n=t?o.CompressionStreamFallback:o.DecompressionStreamFallback,r=t?o.CompressionStream:o.DecompressionStream;if(e.useCompressionStream){if(n&&n.me&&!Nn(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 Hn(Ye(o))).pipeTo(n,{preventClose:!0,preventAbort:!0});const{crc32:r,inputSize:a,outputSize:s}=i;return{crc32:r,inputSize:a,outputSize:s}}catch(e){throw i&&(e.outputSize=i.outputSize),e}finally{r()}}const tr={type:"module"},nr="error";let rr,or,ir,ar=!0;try{ar=typeof N==ue&&N(new DOMException("","AbortError")).code!==se}catch{}var sr;function cr(e){const{reader:t}=e;t&&t.releaseLock(),e.reader=null,e.writer=null}function lr(e){const{ue:t}=e;if(t)try{t.terminate()}catch{}e.de=null}function ur(e,t,r,o,i=!0){const{createWorker:a}=r;let s,c,l;if(a)s=a();else if(or===se||rr!==e){const n=typeof e==ue;c=n?e(i):e;const a=c.startsWith("data:"),u=c.startsWith("blob:");if(a||u){o===se&&(o=!1),o&&(l=tr);try{s=new C(c,l)}catch(i){if(u)try{f.revokeObjectURL(c)}catch{}if(n&&u)return ur(e,t,r,o,!1);if(o)throw i;return ur(e,t,r,!0,!1)}}else{o===se&&(o=!0),o&&(l=tr);try{c=new f(c,t)}catch{}try{s=new C(c,l)}catch(n){if(o)return ur(e,t,r,!1,i);throw n}}rr=e,or=c,ir=l}else s=new C(or,ir);return s.addEventListener("message",e=>{r.he=!0,fr(r),async function({data:e},t){const{type:r,value:o,messageId:i,result:a,error:s}=e,{reader:c,writer:l,ye:u,Se:f,we:p,le:m}=t,h=()=>t.le!=m;try{if(s){const{message:e,stack:t,code:r,name:o,outputSize:i,cause:a,codecImportFailed:c}=s,l=new d(e);n.assign(l,{stack:t,code:r,name:o,outputSize:i}),a&&(l.cause=n.assign(new d(a.message),{name:a.name})),c&&(l.codecImportFailed=!0),y(l)}else{if("pull"==r){const{value:e,done:n}=await c.read();h()||wr({type:Wn,value:e,done:n,messageId:i},t)}r==Wn&&(await l.ready,await l.write(new w(o)),h()||wr({type:"ack",messageId:i},t)),"close"==r&&y(null,a)}}catch(s){h()||(lr(t),y(s))}function y(e,t){h()||(e?f(e):u(t),l&&l.releaseLock(),e&&e.codecImportFailed||p())}}(e,r)}),s.addEventListener(nr,e=>dr(e,r)),s.addEventListener("messageerror",e=>dr(e,r)),s}function fr(e){const{Ee:t}=e;t&&(_(t),e.Ee=null)}function dr(e,t){e.preventDefault&&e.preventDefault(),fr(t);const{he:r,Se:o,writer:i,we:a}=t;lr(t),r||(t.ue=null);let s=e.error||new d(e.message||nr);r||(s=n.assign(new d(s.message||nr),{be:!0}),t.ge=s),o&&(o(s),i&&i.releaseLock(),r&&a())}function wr(e,{ue:t,writer:n,transferStreams:r,he:o}){try{const{value:n,readable:i,writable:a}=e,s=[];if(n&&(e.value=tt(n),s.push(e.value.buffer)),r&&ar&&o?(i&&s.push(i),a&&s.push(a)):e.readable=e.writable=null,s.length)try{return t.postMessage(e,s),!0}catch{ar=!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:a}=t;let{wasmURI:s}=t;if(!e.de){let c;typeof s==ue&&(s=s());try{c=ur(e.workerURI,r,e)}catch{return Yn(e),$n(e,t)}n.assign(e,{ue:c,he:!1,pe:!1,ge:null,de:{run:async()=>{try{return await async function(e,t){if(!e.ue){const{ge:t}=e;e.ge=null;const n=t||new d(Gn);throw n.be=!0,n}let r,i;const a=new S((e,t)=>{r=e,i=t});n.assign(e,{reader:null,writer:null,ye:r,Se:i,result:a});const{readable:s,options:c}=e,{writable:l,closed:u,xe:f}=function(e){const t=new AbortController,{writable:n,readable:r}=new z,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=wr({type:"start",options:c,config:t,readable:s,writable:l},e)}catch(t){f();try{await u}catch{}throw e.we(),t}w||n.assign(e,{reader:s.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(lr(e),e.ue=null,t){const e=new d(Gn);e.be=!0,t(e),n&&n.releaseLock()}}(e),p));try{const e=await a;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:s,baseURI:r,workerStartupTimeout:a})}catch(n){if(n&&n.be)return Yn(e),cr(e),er(e,t);if(n&&n.codecImportFailed){if(e.reader)return cr(e),er(e,t);e.we()}throw n}}}})}return e.de},Kn=sr;let pr=[];const mr=[];let hr,yr,Sr=0;async function Er(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:a,useCompressionStream:s,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){!yn.has(e)&&t&&gn(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(w,n.codecURI)),t.transferStreams=!w&&(i||i===se&&r.transferStreams);const E=!(c||l||u||d),b=w===se||Boolean(n.codecURI);return t.useWebWorkers=!E&&b&&(a||a===se&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&m?m:se,t.createWorker=t.useWebWorkers&&h?h:se,n.useCompressionStream=s||s===se&&r.useCompressionStream,(await async function(){const n=pr.find(e=>!e.ce);if(n)return zr(n),new Xn(n,e,t,g);if(pr.length<y){const n={Re:Sr};return Sr++,pr.push(n),new Xn(n,e,t,g)}return new S(n=>{mr.push({resolve:n,stream:e,ze:t}),yr=r.workerStarvationTimeout,br()})}()).run();function g(e){if(gr(),mr.length){const[{resolve:t,stream:n,ze:r}]=mr.splice(0,1);t(new Xn(e,n,r,g)),br()}else e.ue?(zr(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.pe?e.pe=!1:e.Fe=v(async()=>{pr=pr.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}(e,t)):pr=pr.filter(t=>t!=e)}}function br(){!hr&&mr.length&&o.isFinite(yr)&&yr>=0&&(hr=v(xr,yr))}function gr(){hr&&(_(hr),hr=null)}function xr(){if(hr=null,mr.length){const[{resolve:e,stream:t,ze:r}]=mr.splice(0,1),o=n.assign({},r,{useWebWorkers:!1,workerURI:se,createWorker:se});e(new Xn({},t,o,Rr)),br()}}function Rr(){gr(),br()}function zr(e){const{Fe:t}=e;t&&(_(t),e.Fe=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 Dr(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 b(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",Or="bytes",Mr=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=Ye(Ke())}={}){const r=this;let o=0;return n=Xe(n),new F({async pull(i){const s=t===se?n:a.min(n,t-o),c=await Eo(r,e+o,s);c.length&&(i.enqueue(c),o+=c.length),(t!==se&&o>=t||!c.length&&s)&&i.close()}})}}class Zr extends Wr{constructor(){super();const e=this,t=new D({write(t){if(!e.initialized)throw new d(vr);return e.writeUint8Array(tt(t))}});n.defineProperty(e,Lr,{get:()=>t})}writeUint8Array(){}}let Vr,Hr;class Gr extends Pr{constructor(e){super(),n.assign(this,{De: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();Vr=1==t}catch{Vr=!1}})())}createReadable(e){const{De:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};if(typeof t.stream==ue){if(!r&&o>=n)return cn(t.stream());if(Vr)return cn(t.slice(r,r+o).stream())}return super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=!e&&r>=n.size?n.De:n.De.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 z;n.defineProperty(t,Lr,{get:()=>r.writable}),t.contentType=e,t.Ae=ln(r.readable,e),t.Ae.catch(()=>{})}getData(){return this.Ae}}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!==se){const{offset:n=0,size:r=i-n}=e||{};if(r>0&&n<i)return function(e,t,n){let r,i=t,s=0,c=n;return new F({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>s?t.subarray(0,s):t;s-=o.length,c-=o.length,o.length&&e.enqueue(o),s||(await async function(){const e=r;r=se,await e.cancel()}(),c||e.close())},cancel:e=>r&&r.cancel(e)});async function l(){const t=a.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,s=t,r=n.body.getReader()}}(t,n,a.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:a,combineSizeEocd:s,checkResourceChanges:c=!0,maximumRangeSize:l=Mr,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:a,combineSizeEocd:s,checkResourceChanges:c,maximumRangeSize:l,fetch:u})}async function Xr(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s}=e;if(function(e){const{baseURI:t}=Ke(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n}(r)&&(i||a)&&(typeof o==le||o)){const r=await t(Ur,e,no(e,s?-22:void 0)),o=r.headers.get("Accept-Ranges");if(!(a||o&&o.toLowerCase()==Or))throw new d(Ir);{if(s){const t=new w(await r.arrayBuffer());206==r.status&&t.length==K&&(e.ke=t)}eo(e,r);const o=Qr(r);o===se?await so(e,t,n):e.size=o}}else await so(e,t,n)}async function Jr(e,t,n,r,i){const{useRangeHeader:a,forceRangeRequests:s,ke:c,size:l,options:u}=e;if(a||s){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 a=i.headers.get(_r);if(a){const e=o(a.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=t)throw new d(Ir)}to(e,i),eo(e,i);const s=new w(await i.arrayBuffer());if(s.length!=n)throw new d(Ir);return s}}{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")||se,lastModified:e.get("Last-Modified")||se}}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!==se&&i!==se&&e!=i)throw new d(Cr);if(o){const e=$r(t);if(n.entries(o).some(([t,n])=>n!==se&&e[t]!==se&&n!=e[t]))throw new d(Cr)}}}function no(e,t=0,r=1){return n.assign({},ro(e),{[Nr]:Or+"="+(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 ao(e,co)}async function io(e){await ao(e,lo)}async function ao(e,t){const n=await t(Ur,e,ro(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,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 a=await t(o,n.assign({},r,{method:e,headers:i}));if(a.status<400)return a;throw 416==a.status?new d(Ir):new d(kr+(a.statusText||a.status))}function lo(e,{url:t},r){return new S((o,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status<400){const e=[];a.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:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new d(Ir):new d(kr+(a.statusText||a.status)))},!1),a.addEventListener("error",e=>i(e.detail?e.detail.error:new d("Network error")),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.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===se?n:r}async readUint8Array(e,t){const n=this,{Te:r}=this;let o,i=0,s=e;for(;r[i]&&s>=r[i].size;)s-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(s+t<=r)o=await Eo(c,s,t);else{const i=r-s;o=et(await Eo(c,s,i),await n.readUint8Array(e+i,t-i))}}else o=de;return n.ve=a.max(i,n.ve),o}}class wo extends Wr{constructor(e,t=4294967295){super();const r=this;let o,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const s=new D({async write(t){if(t===Br)return void(a&&await l());const{availableSize:n}=r;if(a)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:s}=await e.next();if(s&&!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,a=i.getWriter(),await this.write(t)}},async close(){a&&(await a.ready,await u())},async abort(e){a&&await a.abort(e)}});async function c(e){const t=e.length;t&&(await a.ready,await a.write(e),o.size+=t,r.availableSize-=t)}async function l(){await u(),r.diskOffset+=o.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function u(){await a.close()}n.defineProperty(r,Lr,{get:()=>s})}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 F||typeof e.getReader==ue)&&(e={readable:cn(e)}),e}}class mo{constructor(e){return e.writable===se&&typeof e.next==ue&&(e=new wo(e)),(e instanceof D||typeof e.getWriter==ue)&&(e={writable:un(e)}),e.size===se&&(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!==se&&e.readUint8Array||(e=new Gr(await ln(e.readable)),await yo(e)),e}function Eo(e,t,n){return e.readUint8Array(t,n)}function bo(e,t){return e.createReadable?e.createReadable(t):e.readUint8Array?Pr.prototype.createReadable.call(e,t):e.readable}const go="filename",xo="rawFilename",Ro="comment",zo="rawComment",Fo="uncompressedSize",Do="compressedSize",Ao="offset",ko="diskNumberStart",Io="lastModDate",Co="rawLastModDate",To="lastAccessDate",vo="rawLastAccessDate",_o="creationDate",No="rawCreationDate",Uo="internalFileAttributes",Oo="externalFileAttributes",Mo="msdosAttributesRaw",Lo="msdosAttributes",Bo="msDosCompatible",Wo="zip64",Po="encrypted",Zo="version",Vo="versionMadeBy",Ho="zipCrypto",Go="directory",jo="executable",qo="compressionMethod",Ko="signature",Yo="extraField",Xo="unixMode",Jo="setuid",Qo="setgid",$o="sticky",ei=[go,xo,Fo,Do,Io,Co,Ro,zo,To,vo,_o,No,Ao,ko,Uo,Oo,Mo,Lo,Bo,Wo,Po,Zo,Vo,Ho,Go,jo,"symlink",qo,Ko,"crc32",Yo,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",Xo,"unixExternalUpper",Jo,Qo,$o,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class ti{constructor(e){ei.forEach(t=>this[t]=e[t])}}const ni="File format is not recognized",ri="End of central directory not found",oi="End of Zip64 central directory locator not found",ii="Central directory header not found",ai="Local file header not found",si="Zip64 extra field not found",ci="File contains encrypted entry",li="Encryption method not supported",ui="Split zip file",fi="Overlapping entry found",di="Entry data out of bounds",wi="Ambiguous archive",pi="Encrypted central directory is not supported",mi="Unsafe filename",hi="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",yi="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Si="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Ei="64-bit value exceeds Number.MAX_SAFE_INTEGER",bi="unsorted central directory",gi="unknown version needed to extract",xi="compressed patched data",Ri="malformed extra field",zi="unknown zip64 extensible data",Fi="wrapped entries count",Di="appended data",Ai="prepended data",ki="prepended central directory",Ii="trailing central directory data",Ci="duplicate filename",Ti="mismatched zip64 end of central directory record",vi="mismatched local file header (general purpose bit flag)",_i="mismatched local file header (compression method)",Ni="mismatched local file header (crc32 or sizes)",Ui=/^[a-zA-Z]:/,Oi="utf-8",Mi="cp437",Li=[[Fo,O],[Do,O],[Ao,O],[ko,M]],Bi={[M]:{Ue:xa,bytes:4},[O]:{Ue:Ra,bytes:8}},Wi=i(o.MAX_SAFE_INTEGER);class Pi{constructor(e,t={}){n.assign(this,{reader:new po(e),options:t,Oe:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await yo(r),r.size!==se&&r.readUint8Array||(r=new Gr(await ln(r.readable)),await yo(r)),r.size<K)throw new d(ni);const o=t.warnings=[],i=oa(e,t.options),s=i==Ae,c=i!=Ie,u=sa(ha(t,e,ze),i),f=function(e,t){if(e===se)return t;if(!ra(e))throw new d(yi);return e}(ha(t,e,"filenameValidation"),i),w=ha(t,e,"normalizeFilename"),{Me:p,Le:m}=await ca(r,c,u);if(!p)throw await async function(e){return await na(e)==W}(r)?new d(ui):new d(ri);c&&m>1&&ma("multiple end of central directory records");const h=nt(p);let y=xa(h,12),S=xa(h,16);const E=p.offset,b=ga(h,20),g=E+K+b,x=r.size-g;x>u&&ma(Di),x>0&&pa(o,Di);let R=ga(h,4);const F=r.ve||0;let D,A,k,I,C,T=ga(h,6),v=ga(h,10),_=0,N=X;const U=S==O||y==O||v==M||T==M;if(S!=O&&T!=M&&(S+=ta(r,T)),U){const e=p.offset>=Y?await Eo(r,p.offset-Y,Y):de,t=nt(e);if(e.length==Y&&xa(t,0)==j){S=ta(r,xa(t,4))+Ra(t,8);let e=await Eo(r,S,X),i=nt(e);const c=p.offset-Y-X;if((e.length<X||xa(i,0)!=G)&&S!=c&&c>=0){const t=S;S=c,S>t&&(_=S-t),e=await Eo(r,S,X),i=nt(e)}if(e.length<X||xa(i,0)!=G)throw new d(oi);if(k=!0,I=Ra(i,4)>44,I){const e=a.min(Ra(i,4)-44,r.size-S-X);e>0&&(N+=e,C=function(e){const t={rawExtensibleData:e};if(e.length>=28){const r=nt(e),o=ga(r,26);n.assign(t,{compressionMethod:ga(r,0),compressedSize:Ra(r,2),uncompressedSize:Ra(r,10),encryptionAlgorithm:ga(r,18),bitLength:ga(r,20),flags:ga(r,22),hashAlgorithm:ga(r,24),hashData:e.subarray(28,28+o)})}return t}(await Eo(r,S+X,e)))}R==M?R=xa(i,16):R!=xa(i,16)&&wa(s,o,Ti),T==M?T=xa(i,20):T!=xa(i,20)&&wa(s,o,Ti),v==M?v=Ra(i,32):v!=Ra(i,32)&&wa(s,o,Ti),y==O?y=Ra(i,40):y!=Ra(i,40)&&wa(s,o,Ti),S=ta(r,T)+Ra(i,48)+_}}let B=y;const P=p.offset-(k?N+Y:0);if(S>=r.size&&(_=r.size-S-y-K,S=r.size-y-K),F!=R)throw new d(ui);if(S<0)throw new d(ni);let Z=0,H=await Eo(r,S,y),J=nt(H);if(y){if(H.length<4)throw new d(ni);const e=P-y;if(S!=e&&T==R){const t=xa(J,Z)==V||Boolean(C&&C.compressedSize)||Gi(J);let n=!t;if(!n&&e>=0&&e+4<=r.size&&(n=xa(nt(await Eo(r,e,4)),0)==V),n){const n=S;S=e,S>n&&(_+=S-n,D=t),H=await Eo(r,S,y),J=nt(H)}}}const Q=P-S;if(y!=Q&&Q>=0&&T==R&&(y=Q,H=await Eo(r,S,y),J=nt(H)),S<0||S>=r.size)throw new d(ni);t.directoryOffset=S,t.directoryLength=B;const oe=ya(t,e,"decryptCentralDirectory");let ie,ae;if(oe&&v&&H.length>=4&&xa(J,0)!=V&&(I||Gi(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);ae=H.subarray(e),H=await oe(H.subarray(0,e),C),J=nt(H),B=H.length,ie=!0}C&&!ie&&(H.length<4||xa(J,0)==V)&&pa(o,zi),A=S;const ce=ha(t,e,"filenameEncoding"),le=ha(t,e,"commentEncoding"),ue=new l;let fe,we=-1;const pe=!s&&!k;!v&&pe&&(v=ji(J,H,Z),v&&pa(o,Fi));for(let i=0;i<v;i++){const s=new Hi(r,t.options);if(Z+q>H.length||xa(J,Z)!=V){if(0==i&&!ie&&(I||Gi(J)))throw new d(pi);throw new d(ii)}Ki(s,J,Z+6);const c=Boolean(s.bitFlag.languageEncodingFlag),l=Z+q,u=l+s.filenameLength,p=u+s.extraFieldLength,m=ga(J,Z+4),h=!(m>>8),y=m>>8==3,S=H.subarray(l,u),E=ga(J,Z+32),b=p+E,g=H.subarray(p,b),x=c,R=c,F=xa(J,Z+38),D=F&L,k={readOnly:Boolean(1&D),hidden:Boolean(2&D),system:Boolean(4&D),directory:Boolean(16&D),archive:Boolean(32&D)},C=xa(J,Z+42),T=ya(t,e,"decodeText")||Dr,N=x?Oi:ce||Mi,U=R?Oi:le||Mi;let O=T(S,N,Fe);if(O===se&&(O=Dr(S,N)),w){const e=w(O);e!==se&&(O=e)}if(aa(O,f)){const e=new d(mi);throw e.filename=O,e}let B=T(g,U,De);B===se&&(B=Dr(g,U)),n.assign(s,{index:i,Be:ie,versionMadeBy:m,msDosCompatible:h,zip64:!1,compressedSize:0,uncompressedSize:0,We:E,offset:C,diskNumberStart:ga(J,Z+34),internalFileAttributes:ga(J,Z+36),externalFileAttributes:F,msdosAttributesRaw:D,msdosAttributes:k,rawFilename:S,filenameUTF8:x,commentUTF8:R,rawExtraField:H.subarray(u,p),rawComment:g,filename:O,comment:B}),Yi(s,s,J,Z+6)&&pa(o,Ri,O),s.offset+=_;const W=ta(r,s.diskNumberStart)+s.offset;A=a.min(W,A),W<we&&pa(o,bi,O),we=W,(s.version&L)>63&&pa(o,gi,O),32&~s.rawBitFlag||pa(o,xi,O),ue.has(s.filename)&&(fe=!0),ue.add(s.filename);const P=s.externalFileAttributes>>16&M;s.unixMode===se&&16877&P&&(s.unixMode=P);const G=Boolean(s.unixMode&te),j=Boolean(s.unixMode&ne),K=Boolean(512&s.unixMode),Y=40960==((s.unixMode===se?P:s.unixMode)&$),X=!Y&&(s.unixMode!==se?!!(73&s.unixMode):y&&!!(73&P)),Q=s.unixMode!==se&&(s.unixMode&$)==ee,oe=(P&$)==ee;n.assign(s,{setuid:G,setgid:j,sticky:K,symlink:Y,unixExternalUpper:P,executable:X,directory:Q||oe||h&&k.directory||s.filename.endsWith(re),zipCrypto:s.encrypted&&!s.extraFieldAES});const ae=new ti(s);if(ae.getData=(e,n)=>s.getData(e,ae,t.Oe,n),ae.arrayBuffer=async e=>{const n=new z,r=ln(n.readable).then(e=>e.arrayBuffer());return r.catch(()=>{}),await s.getData(n,ae,t.Oe,e),r},Z=b,i==v-1&&pe){const e=ji(J,H,Z);e&&(v+=e,pa(o,Fi))}const{onprogress:de}=e;if(de)try{await de(i+1,v,new ti(s))}catch{}yield ae}let me=Z,he=qi(H.subarray(Z))||(ie?qi(ae):se);if(!he&&!ie){const e=S+Z,t=a.min(P-e,65541);t>=6&&(he=qi(await Eo(r,e,t)))}he&&(t.digitalSignature=he,me=Z+6+he.length),(Z!=B&&me!=B||!ie&&Z!=y&&me!=y)&&wa(s,o,Ii),fe&&wa(s,o,Ci);const ye=ha(t,e,"extractPrependedData"),Se=ha(t,e,"extractAppendedData"),Ee=(s||ye)&&v&&4==A&&await async function(e){const t=await na(e);return t==W||808471376==t}(r)?4:0;return s&&(_||v&&A>Ee)&&ma(Ai),(_||v&&A>4)&&pa(o,Ai),D&&pa(o,ki),ye&&(t.prependedData=A>Ee?await Eo(r,Ee,A-Ee):de),t.comment=b?await Eo(r,E+K,b):de,Se&&(t.appendedData=g<r.size?await Eo(r,g,r.size-g):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 Zi{constructor(e={}){const{readable:t,writable:n}=new z,r=new Pi(t,e).getEntriesGenerator();this.readable=new F({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const o=function(){const{readable:e,writable:t}=new z;if(n.getData)return async function(){try{await n.getData(t)}catch(e){try{await t.abort(e)}catch{}}}(),e}(),i={...n,readable:o};delete i.getData,e.enqueue(i)}}),this.writable=n}}async function Vi(e,t={}){if(e=new po(e),await yo(e),e.size!==se&&e.readUint8Array||(e=new Gr(await ln(e.readable)),await yo(e)),e.size<K)return!1;const n=oa(t,{}),r=n!=Ie,o=sa(t[ze],n),{Me:i,Le:a}=await ca(e,r,o);if(!i||n==Ae&&a>1)return!1;const s=ga(nt(i),20),c=i.offset+K+s;return e.size-c<=o}class Hi{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,n,r={}){const o=this,i=Ke(),{reader:s,index:c,offset:l,diskNumberStart:u,extraFieldAES:f,extraFieldZip64:w,compressionMethod:p,bitFlag:m,rawBitFlag:h,crc32:y,rawLastModDate:S,uncompressedSize:E,compressedSize:b}=o,{dataDescriptor:g}=m,x=t.localDirectory={},R=t.warnings=[],z=ta(s,u)+l,F=await Eo(s,z,oe),A=nt(F);let k=ha(o,r,we),I=ha(o,r,pe);const C=ha(o,r,me);if(Oe(k,I),k=k&&k.length&&k,I=I&&I.length&&I,f&&99!=f.originalCompressionMethod)throw new d(pn);if(F.length<oe||xa(A,0)!=B)throw new d(ai);Ki(x,A,4);const{extraFieldLength:T,filenameLength:v}=x,_=x.dataOffset=z+oe+v+T,N=ha(o,r,"checkLocalDirectory"),U=oa(r,o.options),O=function(e,t){return e===se?t!=Ie:Boolean(e)}(N,U),M=function(e,t){return e===se?t==Ae:Boolean(e)}(N,U);let W=de;if(M&&(v||T)){const e=await Eo(s,z+oe,v+T);W=e.subarray(0,v),x.rawExtraField=e.subarray(v)}else x.rawExtraField=T?await Eo(s,z+oe+v,T):de;M&&(x.rawFilename=W),Yi(o,x,A,4,!0)&&pa(R,Ri),function(e,t,n,r,o){const{rawFilename:i}=e,a=!o,s=e.Be&&!(8192&~t.rawBitFlag);!r||s||n.length==i.length&&!n.some((e,t)=>e!=i[t])||wa(a,o,"mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&wa(a,o,vi),t.compressionMethod!=e.compressionMethod&&wa(a,o,_i),t.bitFlag.dataDescriptor||s||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||wa(a,o,Ni)}(o,x,W,M,O?se:R);const{lastAccessDate:Z,creationDate:V,uid:H,gid:G}=x;Z&&(t.lastAccessDate=Z),V&&(t.creationDate=V),H!==se&&t.uid===se&&(t.uid=H),G!==se&&t.gid===se&&(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(li);const K=C?se:Sn(p);if(0!=p&&8!=p&&9!=p&&!K&&!C)throw new d(pn);if(j){if(!q&&(f.strength<1||f.strength>3))throw new d(li);if(!k&&!I)throw new d(ci)}if(_+b>s.size)throw new d(di);const Y=b,X=cn(s.createReadable({offset:_,size:Y})),J=Ne(ha(o,r,he));Ue(J);const Q=ha(o,r,"checkPasswordOnly");let $=ha(o,r,"checkOverlappingEntry");const ee=ha(o,r,"checkOverlappingEntryOnly");ee&&($=!0);const{onstart:te,onprogress:ne,onend:re}=r,ie=0!=p&&!C,ae=C?b:E,ce=9==p;let le=ha(o,r,Se);ce&&(le=!1);const ue=ha(o,r,"checkCrc32"),fe=(ue===se?ha(o,r,"checkSignature"):ue)&&!C&&(!j||q||f&&1==f.vendorVersion),ge={options:{codecType:Zn,password:k,rawPassword:I,zipCrypto:q,encryptionStrength:f&&f.strength,checkCrc32:fe,checkAuthenticationCode:ha(o,r,"checkAuthenticationCode"),passwordVerification:q&&(g?S>>>8&L:y>>>24&L),outputSize:ae,crc32:y,compressed:ie,encrypted:j,useWebWorkers:ha(o,r,ye),useCompressionStream:le,transferStreams:ha(o,r,Ee),deflate64:ce,format:K?K.format:se,codecURI:K?K.codecURI:se,compressionMethod:p,rawBitFlag:h,checkPasswordOnly:Q},config:i,se:{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:a,dataOffset:s,dataDescriptor:c,extraFieldZip64:l,Oe:u}){let f=0;if(c&&(f=l?20:12),f){const n=await Eo(e,s+i,f+4),r=nt(n);let c=n.length==f+4&&xa(r,0)==P;if(c){const e=ea(r,4,l);(t.encrypted&&!t.zipCrypto||e.crc32==o)&&e.compressedSize==i&&e.uncompressedSize==a?f+=4:c=!1}if(n.length>=f){const e=ea(r,c?4:0,l);e.signature=c,t.localDirectory.dataDescriptor=e}}const w={start:r,end:s+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(fi);throw e.overlappingEntry=t.Pe,e}u.set(n,w)}({reader:s,Pe:t,index:c,offset:z,crc32:y,compressedSize:b,uncompressedSize:E,dataOffset:_,dataDescriptor:g||x.bitFlag.dataDescriptor,extraFieldZip64:w||x.extraFieldZip64,Oe:n});try{if(!ee){Q&&(e=new D),e=new mo(e),await yo(e,function(e,t,n){return a.min(e,n?1032*t:t)}(ae,b,ie)),({writable:xe}=e);const{outputSize:t}=await Er({readable:X,writable:xe},ge);if(e.size+=t,t!=ae)throw new d(xn)}}catch(t){if(t.outputSize!==se&&(e.size+=t.outputSize),!Q||t.message!=xt)throw Re=t,t}finally{if((ho(e)||!ha(o,r,be))&&xe&&!xe.locked){const e=xe.getWriter();if(Re)try{await e.abort(Re)}catch{}else await e.close()}}return Q||ee?se:e.getData?e.getData():xe}}function Gi(e){const t=a.min(e.byteLength,1024)-3;for(let n=0;n<t;n++)if(134630224==xa(e,n))return!0;return!1}function ji(e,t,n){let r=0;for(;n+q<=t.length&&xa(e,n)==V;)n+=q+ga(e,n+28)+ga(e,n+30)+ga(e,n+32),r++;return r%65536?0:r}function qi(e){if(e.length>=6){const t=nt(e);if(xa(t,0)==Z){const n=ga(t,4);if(6+n<=e.length)return e.subarray(6,6+n)}}}function Ki(e,t,r){const o=e.rawBitFlag=ga(t,r+2),i=!(1&~o),a=xa(t,r+6);n.assign(e,{encrypted:i,version:ga(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&Q)==Q},rawLastModDate:a,lastModDate:Sa(a),filenameLength:ga(t,r+22),extraFieldLength:ga(t,r+24)})}function Yi(e,t,r,o,i){const{rawExtraField:a}=t,l=t.extraField=new c,u=nt(a);let f=0,w=!1;try{for(;f<a.length;){const e=ga(u,f),t=ga(u,f+2);l.set(e,{type:e,data:a.slice(f+4,f+4+t)}),f+=4+t}}catch{w=!0}f>a.length&&(w=!0);const p=ga(r,o+4);n.assign(t,{signature:xa(r,o+10),crc32:xa(r,o+10),compressedSize:xa(r,o+14),uncompressedSize:xa(r,o+18)});const m=l.get(1);m&&(function(e,t){t.zip64=!0;const n=nt(e.data),r=Li.filter(([e,n])=>t[e]==n),o=r.reduce((e,[,t])=>e+Bi[t].bytes,0);if(e.data.length<o)throw new d(si);for(let o=0,i=0;o<r.length;o++){const[a,s]=r[o],c=Bi[s];t[a]=e[a]=c.Ue(n,i),i+=c.bytes}}(m,t),t.extraFieldZip64=m);const h=l.get(28789);h&&(Xi(h,go,xo,t,e),t.extraFieldUnicodePath=h);const y=l.get(25461);y&&(Xi(y,Ro,zo,t,e),t.extraFieldUnicodeComment=y);const S=l.get(39169);S&&S.data.length>=7?(function(e,t,r){const o=nt(e.data),i=ba(o,4);n.assign(e,{vendorVersion:ba(o,0),vendorId:ba(o,2),strength:i,originalCompressionMethod:r,compressionMethod:ga(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=se)}(S,t,p),t.extraFieldAES=S):t.compressionMethod=p;const E=l.get(13);E&&(Ji(E,t),t.extraFieldPkwareUnix=E);const b=l.get(22613);b&&(Ji(b,t),t.extraFieldUnixType1=b);const g=l.get(10);g&&(function(e,t){const r=nt(e.data);let o,i=4;try{for(;i<e.data.length&&!o;){const t=ga(r,i),n=ga(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=nt(o),i=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),s=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:i,rawLastAccessDate:a,rawCreationDate:s});const c={lastModDate:Ea(i),lastAccessDate:Ea(a),creationDate:Ea(s)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:a,rawCreationDate:s})}}(g,t),t.extraFieldNTFS=g);const x=l.get(30805);let R;if(x&&(R=Qi(x,t,!1),t.extraFieldUnix=x),!R){const e=l.get(30837);e&&(Qi(e,t,!0),t.extraFieldInfoZip=e)}const z=l.get(J);z&&(function(e,t,n){if(!e.data.length)return;const r=nt(e.data),o=ba(r,0),i=[],a=[];n?(1&~o||(i.push(Io),a.push(Co)),2&~o||(i.push(To),a.push(vo)),4&~o||(i.push(_o),a.push(No))):e.data.length>=5&&(i.push(Io),a.push(Co));let c=1;i.forEach((n,o)=>{if(e.data.length>=c+4){const i=xa(r,c);t[n]=e[n]=new s(1e3*(0|i));const l=a[o];e[l]=i}c+=4})}(z,t,i),t.extraFieldExtendedTimestamp=z);const F=l.get(6534);return F&&(t.extraFieldUSDZ=F),w}function Xi(e,t,r,o,i){if(e.data.length<5)return void(e.valid=!1);const a=nt(e.data),s=new dt;s.append(i[r]);const c=nt(new w(4));c.setUint32(0,s.get(),!0);const l=xa(a,1),u=ba(a,0);n.assign(e,{version:u,[t]:Dr(e.data.subarray(5)),valid:1==u&&!i.bitFlag.languageEncodingFlag&&l==xa(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function Ji(e,t){if(e.data.length<8)return;const r=nt(e.data),o={lastAccessDate:new s(1e3*(0|xa(r,0))),lastModDate:new s(1e3*(0|xa(r,4)))};e.data.length>=12&&(o.uid=ga(r,8),o.gid=ga(r,10)),n.assign(e,o),n.assign(t,o)}function Qi(e,t,r){try{const o=nt(e.data);let i,a;if(r){let t=0;const r=ba(o,t++),s=ba(o,t++);i=$i(e.data.subarray(t,t+s)),t+=s;const c=ba(o,t++);a=$i(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:i,gid:a})}else e.data.length>=4&&(i=ga(o,0),a=ga(o,2),n.assign(e,{uid:i,gid:a}));return i!==se&&(t.uid=i),a!==se&&(t.gid=a),i!==se||a!==se}catch{}}function $i(e){const t=new w(4);return t.set(e,0),new h(t.buffer,t.byteOffset,4).getUint32(0,!0)}function ea(e,t,n){const r=xa(e,t);let o,i;return n?(o=Ra(e,t+4),i=Ra(e,t+12)):(o=xa(e,t+4),i=xa(e,t+8)),{crc32:r,compressedSize:o,uncompressedSize:i}}function ta(e,t){return e.Ne?e.Ne(t):0}async function na(e){return xa(nt(await Eo(e,0,4)))}function ra(e){return e===Ae||e===ke||e===Ie}function oa(e,t){return ia(e,ia(t,ke))}function ia(e,t){const n=e.strictness;if(n!==se){if(!ra(n))throw new d(hi);return n}const r=e.checkAmbiguity;return r===se?t:r?Ae:t==Ie?Ie:ke}function aa(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("\\\\")||Ui.test(e))||t==Ae&&(n.includes(".")||n.includes(""))}function sa(e,t){if(e!==se){const t=Be(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new d(Si);return t}return t==Ae?0:t==Ie?1/0:M}async function ca(e,t,n){const{size:r}=e,o=a.min(r,65557),i={count:64};let s,c,l=0;for await(const[n,a,u,f,d]of la(e,o)){const o=ga(n,f+20);if(d+K+o==r){const o=await fa(e,n,a,f,d,r,i);if(2==o){if(s||(s=ua(u,f,d)),l++,!t||l>1)break}else 1!=o||c||(c=ua(u,f,d))}}return s||(s=c),s||(s=await async function(e,t,n){const{size:r}=e,o=a.min(r,t==1/0?r:65557+t);let i,s;for await(const[t,a,c,l,u]of la(e,o)){const o=ua(c,l,u);i||(i=o);const f=await fa(e,t,a,l,u,r,n);if(2==f)return o;1!=f||s||(s=o)}return s||i}(e,n,i)),{Me:s,Le:l}}async function*la(e,t){const n=e.size-t,r=await Eo(e,n,t),o=nt(r);for(let e=r.length-K;e>=0;e--)xa(o,e)==H&&(yield[o,n,r,e,n+e])}function ua(e,t,n){return{offset:n,buffer:e.slice(t,t+K).buffer}}async function fa(e,t,n,r,o,i,a){const s=ga(t,r+10),c=xa(t,r+12),l=xa(t,r+16);if(s==M||c==O||l==O)return await da(e,t,n,o-Y,i,a)==j?2:0;if(!s&&!c)return 1;const u=ga(t,r+6);for(const r of[o-c,ta(e,u)+l])if(await da(e,t,n,r,i,a)==V)return 2;return 0}async function da(e,t,n,r,o,i){return r<0||r+4>o?se:r>=n?xa(t,r-n):i.count>0?(i.count--,xa(nt(await Eo(e,r,4)),0)):se}function wa(e,t,n){e?ma(n):pa(t,n)}function pa(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==se&&(r.filename=n),e.push(r)}}function ma(e){const t=new d(wi);throw t.reason=e,t}function ha(e,t,n){return t[n]===se?e.options[n]:t[n]}function ya(e,t,n){return _e(ha(e,t,n))}function Sa(e){const t=(4294901760&e)>>16,n=e&M,r=new s(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<ae?ae:r}function Ea(e){return new s(o(e/i(1e4)-i(116444736e5)))}function ba(e,t){return e.getUint8(t)}function ga(e,t){return e.getUint16(t,!0)}function xa(e,t){return e.getUint32(t,!0)}function Ra(e,t){const n=e.getBigUint64(t,!0);if(n>Wi)throw new d(Ei);return o(n)}var za=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:wi,ERR_BAD_FORMAT:ni,ERR_CENTRAL_DIRECTORY_NOT_FOUND:ii,ERR_ENCRYPTED:ci,ERR_ENCRYPTED_CENTRAL_DIRECTORY:pi,ERR_ENTRY_DATA_OUT_OF_BOUNDS:di,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:oi,ERR_EOCDR_NOT_FOUND:ri,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:si,ERR_INVALID_AUTHENTICATION_CODE:gt,ERR_INVALID_COMPRESSED_DATA:Rn,ERR_INVALID_CRC32:zn,ERR_INVALID_FILENAME_VALIDATION:yi,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Si,ERR_INVALID_PASSWORD:bt,ERR_INVALID_STRICTNESS:hi,ERR_INVALID_UNCOMPRESSED_SIZE:xn,ERR_LOCAL_FILE_HEADER_NOT_FOUND:ai,ERR_OVERLAPPING_ENTRY:fi,ERR_SPLIT_ZIP_FILE:ui,ERR_UNSAFE_FILENAME:mi,ERR_UNSUPPORTED_COMPRESSION:pn,ERR_UNSUPPORTED_ENCRYPTION:li,ERR_UNSUPPORTED_UINT64:Ei,ERR_WORKER_STARTUP_TIMEOUT:Gn,WARNING_APPENDED_DATA:Di,WARNING_COMPRESSED_PATCHED_DATA:xi,WARNING_DUPLICATE_FILENAME:Ci,WARNING_MALFORMED_EXTRA_FIELD:Ri,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:vi,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:_i,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:Ni,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:Ti,WARNING_PREPENDED_CENTRAL_DIRECTORY:ki,WARNING_PREPENDED_DATA:Ai,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Ii,WARNING_UNKNOWN_VERSION:gi,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:zi,WARNING_UNSORTED_CENTRAL_DIRECTORY:bi,WARNING_WRAPPED_ENTRIES_COUNT:Fi,ZipReader:Pi,ZipReaderStream:Zi,isZipFile:Vi});const Fa="File already exists",Da="Zip file comment exceeds 64KB",Aa="Invalid zip file comment (must be a Uint8Array)",ka="File entry comment exceeds 64KB",Ia="Invalid file entry comment (must be a string)",Ca="Invalid date (must be a valid Date instance)",Ta="File entry name exceeds 64KB",va="Version exceeds 65535",_a="The strength must equal 1, 2, or 3",Na="Encryption is not supported in USDZ files",Ua="Split zip files are not supported in USDZ files",Oa="Encryption is not supported when the 'passThrough' option is set",Ma="Invalid extra field (must be a Map)",La="Invalid extra field type (must be integer 0..65535)",Ba="Invalid extra field data (must be a Uint8Array)",Wa="Extra field data exceeds 64KB",Pa=-2147483648,Za=2147483647,Va=i(0),Ha=i("0x7fffffffffffffff"),Ga="Zip64 is not supported (set the 'zip64' option to 'true')",ja="Undefined uncompressed size",qa="Undefined compression method",Ka="Undefined reader",Ya="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",Xa="Zip file not empty",Ja="Invalid uid (must be integer 0..2^32-1)",Qa="Invalid gid (must be integer 0..2^32-1)",$a="Invalid UNIX mode (must be integer 0..65535)",es="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",ts="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",ns="Invalid msdosAttributesRaw (must be integer 0..255)",rs="Invalid msdosAttributes (must be an object with boolean flags)",os="Invalid level (must be integer 0..9)",is="Signature data exceeds 64KB",as=new w([7,0,2,0,65,69,3,0,0]),ss="infozip",cs="unix";let ls=0;const us=[];class fs{constructor(e,t={}){e=new mo(e);const{availableSize:r=ce,maxSize:o=ce}=e,i=r>0&&r!==ce&&o>0&&o!==ce;if(i&&t[Re])throw new d(Ua);n.assign(this,{writer:e,Ze:i,options:t,Ve:new c,He:new l,offset:t[xe]===se?e.size||e.writable.size||0:t[xe],Ge:t[xe]===se?0:t[xe]-(e.size||e.writable.size||0),je:new l,qe:[],Ke:0,Ye:0,Xe:se})}prependZip(e){return ws(this,async function(e,t){if(e.He.size)throw new d(Xa);await e.Je(t)}(this,e))}appendZip(e){return ws(this,this.Je(e))}async Je(e){const r=this,{je:o,He:i,Ve:a}=r;for(;o.size;)await S.allSettled(t.from(o));let s;const l=new S(e=>s=e);o.add(l);const u=[];let f;try{e=new po(e),await yo(e),e.size!==se&&e.readUint8Array||(e=new Gr(await ln(e.readable)),await yo(e));const{ZipReader:o}=await S.resolve().then(function(){return za}),s=new o(e),l=await s.getEntries();await s.close(),await yo(r.writer);const{directoryOffset:w}=s;l.forEach(({filename:e})=>{if(i.has(e))throw new d(Fa);i.add(e),u.push(e)}),r.Qe=!0;const{$e:p}=r;r.$e=new S(e=>f=()=>{r.Qe=!1,e()}),await p,r.Ze&&(delete r.Ze,await async function(e){return nt(await Eo(e,0,4)).getUint32(0,!0)==W}(e)||(await Cs(r.writer,ks()),r.offset+=4));const m=await async function(e,n,r,o){const{writer:i}=e,a=new c;if(i.closeDisk){const s=t.from(r).sort((e,t)=>As(n,e)-As(n,t));let c=0;for(const t of s){const r=As(n,t);await Fs(e,n,c,r-c),xs(i,await Ds(n,r))&&await i.closeDisk(),a.set(t,{offset:Rs(e,i),diskNumberStart:bs(i)}),c=r}await Fs(e,n,c,o-c)}else{const t=e.offset;await Fs(e,n,0,o),r.forEach(e=>a.set(e,{offset:t+As(n,e),diskNumberStart:0}))}return a}(r,e,l,w);l.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,bitFlag:i,encrypted:s,uncompressedSize:c,compressedSize:l,extraFieldZip64:u}=e;let{compressionMethod:f,rawExtraField:d}=e;const{level:w,languageEncodingFlag:p,dataDescriptor:h}=i;d=zs(d||de),e.extraFieldAES&&(f=99);const y=qs(d),S=Boolean(u)&&u.uncompressedSize!==se,E=Boolean(u)&&u.compressedSize!==se,b=-7&Ys(w,p,h,s,f)|w<<1,{et:g,nt:x}=Ks({version:t,bitFlag:b,compressionMethod:f,uncompressedSize:c,compressedSize:l,rawLastModDate:r,rawFilename:o,ot:E,it:S,extraFieldLength:y}),{crc32:R}=e;R!==se&&Hs(x,10,R);const{offset:z,diskNumberStart:F}=m.get(e);n.assign(e,{st:!0,it:S,ot:E,offset:z,diskNumberStart:F,ct:!1,lt:de,ut:de,ft:de,wt:de,ht:de,rawExtraField:d,yt:de,extendedTimestamp:!1,et:g,nt:x}),a.set(e.filename,e)})}catch(e){throw u.forEach(e=>i.delete(e)),e}finally{s(),o.delete(l),f&&f()}}add(e="",r,c={}){const l=this,{je:u}=l,f=async function(e,r,c,l){if(Os(e,l=n.assign({},l),Go)&&!r.endsWith(re)&&(r+=re),e.He.has(r))throw new d(Fa);e.He.add(r),ls<Ke().maxWorkers?ls++:await new S(e=>us.push(e));try{return await async function(e,r,c,l){const u=function(e,n,r){let o=Os(e,r,Bo),i=Os(e,r,Vo,o?20:768);const a=Os(e,r,jo),s=Bs(e,r,"uid"),c=Bs(e,r,"gid");let l=Bs(e,r,Xo),u=Os(e,r,"unixExtraFieldType"),f=Os(e,r,Jo),w=Os(e,r,Qo),p=Os(e,r,$o);if(Le(s,O,Ja),Le(c,O,Qa),Le(l,M,$a),u!==se&&u!==ss&&u!==cs)throw new d(es);if(u===cs&&(s!==se&&s>M||c!==se&&c>M))throw new d(ts);u!==se||s===se&&c===se||(u=ss);let m=Bs(e,r,Mo),h=Os(e,r,Lo);const y=m!==se||h!==se;if(s!==se||c!==se||l!==se||u||a?(o=!1,i=i&L|768):y&&(o=!0,i&=L),Le(m,L,ns),h&&("object"!=typeof h||t.isArray(h)))throw new d(rs);if(i>M)throw new d(va);let S=Os(e,r,Oo);const E=S!==se;E||(S=0),!r[Go]&&n.endsWith(re)&&(r[Go]=!0);const b=Os(e,r,Go);if(b?(n.endsWith(re)||(n+=re),E||(S=16,o||(S|=16877<<16))):o||E||(S=a?493<<16:27525120),!o){const e=l!==se||Boolean(f||w||p);l=l===se?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||(b?l=-61441&l|ee:l&$||(l|=32768),S=(l&M)<<16|S&M)}({msdosAttributesRaw:m,msdosAttributes:h}=function(e,t){if(e!==se)e&=L;else if(t!==se){const{readOnly:n,hidden:r,system:o,directory:i,archive:a}=t;let s=0;n&&(s|=1),r&&(s|=2),o&&(s|=4),i&&(s|=16),a&&(s|=32),e=s&L}return t===se&&(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 g=S>>16&M,x=l!==se&&40960==(l&$);return{name:n,St:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:S,unixExternalUpper:g,uid:s,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=Ls(e,n,"encodeText")||pt;let i=r(t,Fe);if(i===se&&(i=pt(t)),qs(i)>M)throw new d(Ta);const a=n[Ro]||"";if(typeof a!=fe)throw new d(Ia);let c=r(a,De);if(c===se&&(c=pt(a)),qs(c)>M)throw new d(ka);const l=Os(e,n,Zo);if(l!==se&&l>M)throw new d(va);const u=Ms(e,n,Io,new s),f=Os(e,n,Co),w=Ms(e,n,To),p=Ms(e,n,_o),m=Os(e,n,Uo,0),h=Os(e,n,me),y=Os(e,n,we),S=Os(e,n,pe);Oe(y,S);const E=Bs(e,n,"encryptionStrength",3),b=Os(e,n,Ho),g=Os(e,n,"extendedTimestamp",!0),x=Os(e,n,"ntfsTimestamp"),R=Os(e,n,"keepOrder",!0),z=Os(e,n,ye),F=Os(e,n,Ee),D=Os(e,n,"bufferedWrite"),A=Ls(e,n,"createTempStream"),k=Os(e,n,"dataDescriptorSignature",!0),I=Ne(Os(e,n,he));Ue(I);const C=Os(e,n,"useUnicodeFileNames",!0),T=Os(e,n,qo),v=h||T===se?se:Sn(T);if(!h&&T!==se&&0!==T&&8!==T&&!v)throw new d(pn);let _=Bs(e,n,"level");if(Le(_,9,os),e.options[Re]){if(y!==se||S!==se)throw new d(Na);_===se&&T===se&&(_=0)}h&&(_=se);let N=Os(e,n,Se),U=Os(e,n,ge);D&&U===se&&(U=!1),(U===se||b&&!h)&&(U=!0),_!==se&&6!=_&&(N=!1);const O=Os(e,n,Wo);if(!(b||y===se&&S===se||o.isInteger(E)&&E>=1&&E<=3))throw new d(_a);const L=hs(n[Yo]),B=hs(n.localExtraField),W=hs(n.centralExtraField);return{comment:a,St:{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:b,extendedTimestamp:g,ntfsTimestamp:x,keepOrder:R,useWebWorkers:z,transferStreams:F,bufferedWrite:D,createTempStream:A,dataDescriptorSignature:k,signal:I,useUnicodeFileNames:C,compressionMethod:T,format:v?v.format:se,codecURI:v?v.codecURI:se,Et:v?v.versionNeeded:se,level:_,useCompressionStream:N,dataDescriptor:U,zip64:O,rawExtraField:L,bt:B,yt:W}}}(e,r,l),{comment:p}=f,m=l[Yo];e.Ve.set(r,se);const h=e.Xe,y={};let E,b;f.St.keepOrder&&(y.gt=new S(e=>E=e)),e.Xe=y;try{const{St:t}=f;0==t.level||t.compressionMethod!==se||t.passThrough||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;if(n&&!n.me)return!0;if(Nn(t)||_n(t,An))return!0;if(n)try{return await void 0,!0}catch{return!1}return!1}(Ke())||(t.level=0);const o=await async function(e,t,{St:r},o){if(r.passThrough&&!t&&!Os(e,o,Go))throw new d(Ka);let i;if(t){if(t=new po(t),await yo(t),!t.readable&&!t.readUint8Array)throw new d(Ya);({size:i}=t)}return n.assign({reader:t},function(e,t,n,r,o){const{passThrough:i,zipCrypto:a,password:s,rawPassword:c,encryptionStrength:l}=r;let{dataDescriptor:u,zip64:f,level:w,compressionMethod:p}=r,m=0,h=0,y=!1;if(i&&t){if(h=o[Fo],h===se)throw new d(ja);if(p===se)throw new d(qa)}const S=!0===f,E=Os(e,o,Po);if(t&&i&&!E&&qs(s,c))throw new d(Oa);const b=t&&(Boolean(s&&qs(s)||c&&qs(c))||i&&E);t||(w=0,p=0);const g=b?a?12:16+4*l:0;t&&(i?(o.uncompressedSize=h,m=n===se?Ws(h)+g:n):n===se?(u=!0,(f||f===se)&&(f=y=!0,m=4294967296)):(o.uncompressedSize=h=n,m=(Ps(p,w)?Ws(h):h)+g));const x=!(b||t&&(0!==n||i)||Ps(p,w));x&&!a&&Os(e,o,ge)===se&&(u=!1);const R=S||y||h>=O,z=S||m>=O;if(R||z){if(!1===f)throw new d(Ga);f=!0}return f=f||!1,{xt:m,St:{dataDescriptor:u,Rt:x,zip64:f,st:S,zt:y,it:R,ot:z,uncompressedSize:h,level:w,compressionMethod:p,encrypted:b}}}(e,Boolean(t),i,r,o))}(e,c,f,l);({reader:c}=o);const p=gs(e.writer),m=bs(e.writer),g=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,bt:h,encryptionStrength:y,extendedTimestamp:S,ntfsTimestamp:E,passThrough:b,encrypted:g,it:x,ot:R,uncompressedSize:z,zt:F,crc32:D}=e;let{version:A,compressionMethod:k}=e;const I=!p&&Ps(k,c);let C;const T=b||!I,v=l&&(e.bufferedWrite||!w||!x&&!R||T&&!F),_=v||l&&w&&(x||R);if(l&&(x||R)){const e=20,t=Es(e);if(t.Ft(1),t.Ft(e-4),C=t.Dt,v&&(t.At(z),T)){const e=g?u?12:16+4*y:0;t.At(b?0:z+e)}}else C=de;let N,U,O,L,W;if(g&&!u){const e=Es(qs(as)+2);e.Ft(39169),e.kt(as),N=e.Dt,N[8]=y}else N=de;if(S){const e=_s(n),t=Ns(e);if(t){const t=9+(o?4:0)+(i?4:0),n=Es(t);L=1+(o?2:0)+(i?4:0),n.Ft(J),n.Ft(t-4),n.It(L),n.Ct(e),o&&n.Ct(Us(_s(o))),i&&n.Ct(Us(_s(i))),O=n.Dt}else O=de;if(E===se?!t||Boolean(o||i):E)try{const e=vs(n),t=Es(36);t.Ft(10),t.Ft(32),t.Tt(4),t.Ft(1),t.Ft(24),t.At(e),t.At(o?vs(o):e),t.At(i?vs(i):e),U=t.Dt}catch{U=de}else U=de}else U=O=de;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=ss||t===se&&n===se)if(r!=cs||t===se&&n===se)W=de;else{const e=Es(8);e.Ft(30805),e.Ft(4),e.Ft((t===se?0:t)&M),e.Ft((n===se?0:n)&M),W=e.Dt}else{const e=Ss(t===se?0:t),r=Ss(n===se?0:n),o=3+e.length+r.length,i=Es(4+o);i.Ft(30837),i.Ft(o),i.It(1),i.It(e.length),i.kt(e),i.It(r.length),i.kt(r),W=i.Dt}}catch{W=de}k===se&&(k=I?8:0),A===se&&(A=0!=k||p||g?20:10);const{Et:P}=e;I&&P!==se&&(A=A>P?A:P),l&&(A=A>45?A:45),g&&!u&&(A=A>51?A:51,b&&D!==se&&(N[4]=1),Vs(nt(N),9,k),k=99);const Z=_?qs(C):0,V=Z+qs(N,O,U,W,m,h);if(V+(e[Re]?67:0)>M)throw new d(Wa);const H=new s(2e3*a.ceil(a.floor(n.getTime()/1e3)/2)),G=H<ae?ae:H>ie?ie:H,j=qs(O)?new s(1e3*_s(n)):qs(U)?n:G,{et:q,nt:K,rawLastModDate:Y}=Ks({version:A,bitFlag:Ys(c,f,w,g,k),compressionMethod:k,uncompressedSize:z,lastModDate:G,rawLastModDate:r,rawFilename:t,ot:R,it:x,extraFieldLength:V}),X=Es(oe+qs(t)+V),Q=X.Dt,$=nt(Q);return X.Ct(B),X.kt(q),X.kt(t),_&&X.kt(C),X.kt(N),X.kt(O),X.kt(U),X.kt(W),X.kt(m),X.kt(h),w&&(R||Hs($,18,0),x||Hs($,22,0)),{vt:Q,_t:$,et:q,nt:K,lastModDate:j,rawLastModDate:Y,encrypted:g,compressed:I,version:A,compressionMethod:k,Nt:L,lt:de,Ut:Z,ft:O,wt:U,ht:W,ut:N,extraFieldLength:V}}(l=n.assign({},l,u.St,f.St,o.St,{signature:l[Ko],crc32:l.crc32===se?l[Ko]: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,a=e?20:12;return n&&(a+=4),t&&(o=new w(a),r=nt(o),n&&(i=4,Hs(r,0,P))),{Ot:o,Mt:r,Lt:i}}(l),R=qs(g.vt,x.Ot);b=await async function(e,t,r,o,a){const{Ve:s,writer:c}=e,{keepOrder:l,dataDescriptor:u,Rt:f,signal:w}=a,{Bt:p,Pe:m,Wt:h,Pt:y}=o,E=e.options[Re];let b,g,x,R,F,D,A,k=m,I=0;const C=l&&h?h.gt:se;s.set(t,k);try{a.bufferedWrite||!l||e.Qe||e.Ke||e.Ye||!u&&!f?(b=!0,e.Ke++,A=a.createTempStream?await a.createTempStream():new z(se,se,{highWaterMark:ce}),A.size=0,await yo(c)):(g=!0,e.Ye++,A=c,await C,await T()),await yo(A);const m=gs(c);e.Ze&&!b&&await Is(e,c),E&&!b&&ys(o,e.offset-m);const{vt:h}=p;b||await v();const y=bs(c),x=Rs(e,c);if(k.diskNumberStart=y,b||(F=!0,D=c.size,await Cs(A,h)),k=await async function(e,t,{diskNumberStart:r,gt:o},a,s,c){const{Bt:l,Zt:u,Vt:f}=a,{et:w,nt:p,lastModDate:m,rawLastModDate:h,encrypted:y,compressed:S,version:E,compressionMethod:b,lt:g,Ut:x,ft:R,Nt:z,wt:F,ht:D,ut:A}=l,{Ot:k}=u,{rawFilename:I,lastAccessDate:C,creationDate:T,password:v,rawPassword:_,level:N,zip64:U,st:M,it:B,ot:W,zipCrypto:P,dataDescriptor:Z,directory:V,executable:H,versionMadeBy:G,rawComment:j,rawExtraField:q,yt:K,useWebWorkers:Y,transferStreams:X,onstart:J,onprogress:Q,onend:$,signal:ee,encryptionStrength:te,extendedTimestamp:ne,msDosCompatible:re,internalFileAttributes:oe,externalFileAttributes:ie,uid:ae,gid:ce,unixMode:le,symlink:ue,setuid:fe,setgid:de,sticky:we,unixExternalUpper:pe,msdosAttributesRaw:me,msdosAttributes:he,useCompressionStream:ye,passThrough:Se,format:Ee,codecURI:be}=c,ge={gt:o,versionMadeBy:G,zip64:U,st:M,directory:Boolean(V),executable:Boolean(H),filenameUTF8:!0,rawFilename:I,commentUTF8:!0,rawComment:j,lt:g,Ut:x,ft:R,wt:F,ht:D,ut:A,rawExtraField:q,yt:K,extendedTimestamp:ne,msDosCompatible:re,internalFileAttributes:oe,externalFileAttributes:ie,diskNumberStart:r,uid:ae,gid:ce,unixMode:le,symlink:Boolean(ue),setuid:fe,setgid:de,sticky:we,unixExternalUpper:pe,msdosAttributesRaw:me,msdosAttributes:he};let{crc32:xe,uncompressedSize:Re}=c,ze=0;Se||(Re=0);const{writable:Fe}=t;if(e){const n=e.size,r=cn(bo(e,{size:n})),o={options:{codecType:Pn,inputSize:n,level:N,rawPassword:_,password:v,encryptionStrength:te,zipCrypto:y&&P,passwordVerification:y&&P&&h>>8&L,computeCrc32:!Se,compressed:S&&!Se,encrypted:y&&!Se,useWebWorkers:Y,useCompressionStream:ye,transferStreams:X,format:Ee,codecURI:be,compressionMethod:b},config:s,se:{signal:ee,size:n,onstart:J,onprogress:Q,onend:$}};try{const e=await Er({readable:r,writable:Fe},o);if(ze=e.outputSize,t.size+=ze,Se||(Re=e.inputSize,y&&!P||(xe=e.crc32)),!W&&ze>=O||!B&&Re>=O)throw new d(Ga)}catch(e){throw e.outputSize!==se&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,Bt:r,Zt:o},{zip64:a,zipCrypto:s,passThrough:c,dataDescriptor:l}){const{nt:u,encrypted:f}=r,{Mt:d,Lt:w}=o;f&&!s&&!c||e===se||(Hs(u,10,e),l&&Hs(d,w,e)),a?l&&(Gs(d,w+4,i(t)),Gs(d,w+12,i(n))):(Hs(u,14,t),Hs(u,18,n),l&&(Hs(d,w+4,t),Hs(d,w+8,n)))}({crc32:xe,compressedSize:ze,uncompressedSize:Re,Bt:l,Zt:u},c),Z&&await Cs(t,k),n.assign(ge,{uncompressedSize:Re,compressedSize:ze,lastModDate:m,rawLastModDate:h,creationDate:T,lastAccessDate:C,encrypted:Boolean(y),zipCrypto:Boolean(P),size:f+ze,compressionMethod:b,version:E,et:w,nt:p,signature:xe,crc32:!y||P||Se?xe:se,Nt:z,it:B,ot:W}),ge}(r,A,k,o,Ke(),a),b||(F=!1),s.set(t,k),k.filename=t,b){if(await S.all([A.writable.getWriter().close(),C]),await T(),e.Ze&&await Is(e,c),R=!0,D=c.size,await v(),k.diskNumberStart=bs(c),k.offset=Rs(e,c),E){const t=o.Vt;ys(o,e.offset-gs(c)),k.size+=o.Vt-t}!function({rawFilename:e,encrypted:t,zip64:n,Ut:r,crc32:o,compressedSize:a,uncompressedSize:s,it:c,ot:l},u,{dataDescriptor:f,passThrough:d}){if(f||((!t||d&&o!==se)&&Hs(u,14,o),l||Hs(u,18,a),c||Hs(u,22,s)),n&&r){const t=oe+qs(e)+4;Gs(u,t,i(s)),Gs(u,t+8,i(a))}}(k,p._t,a),await Cs(c,p.vt),await Ts(A.readable,c,w,e=>I+=e),c.size+=A.size,R=!1}else k.diskNumberStart=y,k.offset=x;return e.offset+=k.size,k}catch(n){if(R||F){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-D,b&&(e.offset+=I)}throw s.delete(t),n}finally{if(b&&e.Ke--,g&&e.Ye--,y&&y(C),x&&x(),b&&A&&A.dispose)try{await A.dispose()}catch{}}async function T(){e.Qe=!0;const{$e:t}=e;e.$e=new S(t=>x=()=>{e.Qe=!1,t()}),await t}async function v(){xs(c,qs(p.vt))&&await c.closeDisk()}}(e,r,c,{Bt:g,Zt:x,Vt:R,Pe:y,Wt:h,Pt:E},l)}catch(t){throw e.Ve.delete(r),t}finally{E&&E(h&&h.gt)}return n.assign(b,{name:r,comment:p,extraField:m}),new ti(b)}(e,r,c,l)}catch(t){throw e.He.delete(r),t}finally{const e=us.shift();e?e():ls--}}(l,e,r,c);u.add(f);const p=()=>u.delete(f);return S.prototype.then.call(f,p,p),ws(l,f)}remove(e){const{He:t,Ve:n}=this;if(typeof e==fe&&(e=n.get(e)),e&&e.filename!==se){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:a}=this,{writable:s}=a;if(!(e instanceof w))throw new d(Aa);if(qs(e)>M)throw new d(Da);for(;o.size;)await S.allSettled(t.from(o));await S.allSettled(r.qe.map(e=>e.Ht));const c=r.qe.filter(e=>e.error&&!e.Gt);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.Gt=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const{jt:o,qt:a}=function(e){let t=0,n=!1;for(const[,r]of e){const{rawFilename:e,ut:o,rawComment:i,wt:a,ht:s,rawExtraField:c,yt:l,extendedTimestamp:u,Nt:f,lastModDate:w,st:p,uncompressedSize:m,compressedSize:h}=r;let{it:y,ot:S}=r;p||(y&&m<O&&(y=r.it=!1),S&&h<O&&(S=r.ot=!1)),n=n||y||S;const E=r.offset>=O,b=r.diskNumberStart>=M;let g,x;if(E||b||y||S){const e=4+(y?8:0)+(S?8:0)+(E?8:0)+(b?4:0),t=Es(e);t.Ft(1),t.Ft(e-4),y&&t.At(m),S&&t.At(h),E&&t.At(r.offset),b&&t.Ct(r.diskNumberStart),g=t.Dt}else g=de;r.lt=g,r.Kt=E,r.ct=b;const R=_s(w);if(u&&Ns(R)){const e=Es(9);e.Ft(J),e.Ft(5),e.It(f),e.Ct(R),x=e.Dt}else x=de;r.ft=x;const z=qs(g,o,a,s,x,c,l);if(z>M)throw new d(Wa);t+=q+qs(e,i)+z}return{jt:t,qt:n}}(e.Ve),{Yt:s,Xt:c,Jt:l}=await async function(e,n,r){const{Ve:o,writer:i}=e,a=new w(n);await yo(i);let s=0,c=0,l=bs(i),u=gs(i),f=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:d,lt:w,ut:p,ft:m,wt:h,ht:y,rawExtraField:S,yt:E,rawComment:b,versionMadeBy:g,et:x,nt:R,it:z,ot:F,ct:D,Kt:A,internalFileAttributes:k,externalFileAttributes:I,diskNumberStart:C,uncompressedSize:T,compressedSize:v}=n,_=qs(w,p,m,h,y,S,E),N=q+qs(d,b)+_;xs(i,s+N-c)&&(await Cs(i,a.slice(c,s)),c=s,f=0,await i.closeDisk()),0==e&&(l=bs(i),u=gs(i)),z||Hs(R,18,T),F||Hs(R,14,v),(A||D)&&n.version<45&&Vs(R,0,45);const U=Es(N);if(U.Ct(V),U.Ft(g),U.kt(x.subarray(0,24)),U.Ft(_),U.Ft(qs(b)),U.Ft(D?M:C),U.Ft(k),U.Ct(I),U.Ct(A?O:t),U.kt(d),U.kt(w),U.kt(p),U.kt(m),U.kt(h),U.kt(y),U.kt(S),U.kt(E),U.kt(b),js(a,U.Dt,s),s+=N,f++,r.onprogress)try{await r.onprogress(e+1,o.size,new ti(n))}catch{}}return await Cs(i,c?a.slice(c):a),{Yt:{diskNumber:l,diskOffset:u},Xt:{diskNumber:bs(i),Qt:f},Jt:a}}(e,o,r),u=await async function(e,t,n){const r=Ls(e,n,"signCentralDirectory");if(r){const n=await r(t),o=qs(n);if(o>M)throw new d(is);const i=Es(6+o);i.Ct(Z),i.Ft(o),i.kt(n);const{writer:a}=e;return xs(a,qs(i.Dt))&&await a.closeDisk(),await Cs(a,i.Dt),6+o}return 0}(e,l,r);await async function(e,t,n,r){const{writer:o}=e,{Yt:a,Xt:s,$t:c,qt:l}=r;let{jt:u}=r,f=e.Ve.size,w=a.diskNumber,p=Rs(e,a);const m=qs(t);if(m>M)throw new d(Da);let h=Os(e,n,Wo),y=bs(o);if(xs(o,(h?98:K)+m)&&y++,p>=O||u>=O||f>=M||y>=M){if(!1===h)throw new d(Ga);h=!0}else h===se&&l&&(h=!0);const S=Es(h?98:K);xs(o,qs(S.Dt)+m)&&await o.closeDisk(),y=bs(o);let E=y==s.diskNumber?s.Qt:0;h&&(S.Ct(G),S.At(44),S.Ft(45),S.Ft(45),S.Ct(y),S.Ct(w),S.At(E),S.At(f),S.At(u),S.At(p),S.Ct(j),S.Ct(y),S.At(i(Rs(e,o))+i(u)+i(c)),S.Ct(y+1),Os(e,n,"supportZip64SplitFile",!0)&&(y=M,w=M),E=M,f=M,p=O,u=O),S.Ct(H),S.Ft(y),S.Ft(w),S.Ft(E),S.Ft(f),S.Ct(u),S.Ct(p),S.Ft(m),await Cs(o,S.Dt),m&&await Cs(o,t)}(e,n,r,{Yt:s,Xt:c,jt:o,$t:u,qt:a})}(r,e,n),!ho(a)&&Os(r,n,be)||await s.getWriter().close(),a.getData?a.getData():s}}class ds extends S{then(e,t){const{en:n}=this;return n&&(n.Gt=!0),super.then(e,t)}}function ws(e,t){const n=new ds((e,n)=>S.prototype.then.call(t,e,n)),r={};return n.en=r,r.Ht=S.prototype.then.call(n,se,e=>r.error=e),e.qe.push(r),n}async function ps(e,t){try{await e.writer.writable.abort(t)}catch{}}function ms(e,t,n){e.je.add(t),t.catch(e=>{try{n(e)}catch{}})}function hs(e){if(!e)return de;if(!(e instanceof c))throw new d(Ma);let t=0,n=0;e.forEach((e,n)=>{if(Me(n,M,La),!(e instanceof w))throw new d(Ba);if(qs(e)>M)throw new d(Wa);t+=4+qs(e)});const r=new w(t),o=nt(r);return e.forEach((e,t)=>{Vs(o,n,t),Vs(o,n+2,qs(e)),js(r,e,n+4),n+=4+qs(e)}),r}function ys(e,t){const{Bt:n}=e;let{vt:r,extraFieldLength:o}=n,i=64-(t+qs(r))%64;i<4&&(i+=64);const a=new w(i),s=nt(a);Vs(s,0,6534),Vs(s,2,i-4);const c=r;n.vt=r=new w(qs(c)+i),js(r,c),js(r,a,qs(c));const l=nt(r);Vs(l,28,o+i),n._t=l,e.Vt+=i}function Ss(e){const t=new w(4);nt(t).setUint32(0,e,!0);let n=4;for(;n>1&&0===t[n-1];)n--;return t.subarray(0,n)}function Es(e){const t=new w(e),n=nt(t);let r=0;return{Dt:t,It:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},Ft:e=>{Vs(n,r,e),r+=2},Ct:e=>{Hs(n,r,e),r+=4},At:e=>{Gs(n,r,i(e)),r+=8},kt:e=>{js(t,e,r),r+=qs(e)},Tt:e=>r+=e}}function bs(e){const{diskNumber:t=0}=e;return t}function gs(e){const{diskOffset:t=0}=e;return t}function xs(e,t){const{availableSize:n=ce}=e;return t>n}function Rs(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.Ge:0)}function zs(e){const t=nt(e);let n=0;for(;n+4<=qs(e);){const r=4+Zs(t,n+2);if(1==Zs(t,n))return zs(et(e.subarray(0,n),e.subarray(a.min(n+r,qs(e)))));n+=r}return e}async function Fs(e,t,n,r){if(r>0){const{writer:o}=e;let i=0;try{await Ts(bo(t,{offset:n,size:r}),o,se,e=>i+=e)}catch(t){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}throw t}finally{o.size+=i,e.offset+=i}}}async function Ds(e,t){const n=await Eo(e,t,oe);if(qs(n)<oe)return oe;const r=nt(n);return oe+Zs(r,26)+Zs(r,28)}function As(e,{offset:t,diskNumberStart:n}){return t+(e.Ne?e.Ne(n):0)}function ks(){const e=new w(4);return Hs(nt(e),0,W),e}async function Is(e,t){delete e.Ze,await Cs(t,ks()),e.offset+=4}async function Cs(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=qs(t),await r.write(t)}finally{r.releaseLock()}}async function Ts(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new D({async write(e){await o.ready,await o.write(e),r(qs(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function vs(e){if(e){const t=(i(e.getTime())+i(116444736e5))*i(1e4);return t<Va?Va:t>Ha?Ha:t}}function _s(e){return a.floor(e.getTime()/1e3)}function Ns(e){return e>=Pa&&e<=Za}function Us(e){return a.min(Za,a.max(Pa,e))}function Os(e,t,n,r){const o=t[n]===se?e.options[n]:t[n];return o===se?r:o}function Ms(e,t,n,r){const i=Os(e,t,n,r);if(null===i)return r;if(i!==se&&(typeof i.getTime!=ue||o.isNaN(i.getTime())))throw new d(Ca);return i}function Ls(e,t,n){return _e(Os(e,t,n))}function Bs(e,t,n,r){return Be(Os(e,t,n,r))}function Ws(e){return e+5*(a.floor(e/16383)+1)}function Ps(e,t){return e===se?t===se||t>0:0!==e}function Zs(e,t){return e.getUint16(t,!0)}function Vs(e,t,n){e.setUint16(t,n,!0)}function Hs(e,t,n){e.setUint32(t,n,!0)}function Gs(e,t,n){e.setBigUint64(t,n,!0)}function js(e,t,n){e.set(t,n)}function qs(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Ks({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:a,rawFilename:s,ot:c,it:l,extraFieldLength:u}){const f=Es(26),d=f.Dt,w=nt(d);if(f.Ft(e),f.Ft(t),f.Ft(n),a===se){const e=new m(1),t=nt(e);Vs(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Vs(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),a=e[0]}return f.Ct(a),f.Tt(4),c||o!==se?f.Ct(c?O:o):f.Tt(4),l||r!==se?f.Ct(l?O:r):f.Tt(4),f.Ft(qs(s)),f.Ft(u),{et:d,nt:w,rawLastModDate:a}}function Ys(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 Xs(e,t){if(!e)return!1;const{tn:n}=e;return n?n.includes(t):_n(e,t)}const Js=1048576,Qs=".zip.js-temp",$s=1048576,ec=1048576,tc=".zip.js-temp",nc="createSyncAccessHandle is only available in dedicated workers";try{!function(e){const t=Je($e(e));n.assign(Ze,t),n.assign(qe,t)}({baseURI:void 0===g&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===g?location.href:U&&"SCRIPT"===U.tagName.toUpperCase()&&U.src||new f("zip-core.min.js",g.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,{nn:e,rn:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{rn:n,nn:r}=this,o=new w(t),i=4*a.floor(e/3),s=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);let l=0;for(let e=c;e<c+t&&e<s.length;e++)o[e-c]=s.charCodeAt(e),l++;return l<o.length?o.subarray(0,l):o}},e.Data64URIWriter=class extends Zr{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",an:""})}writeUint8Array(e){const t=this;let n,o=t.an;const i=t.an.length;for(t.an="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.an+=r.fromCharCode(e[n]);o.length>2?t.data+=R(o):t.an=o+t.an}getData(){return this.data+R(this.an)}},e.ERR_AMBIGUOUS_ARCHIVE=wi,e.ERR_BAD_FORMAT=ni,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=ii,e.ERR_DUPLICATED_NAME=Fa,e.ERR_ENCRYPTED=ci,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=pi,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=di,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=oi,e.ERR_EOCDR_NOT_FOUND=ri,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=si,e.ERR_HTTP_RANGE=Ir,e.ERR_HTTP_RESOURCE_CHANGED=Cr,e.ERR_INVALID_AUTHENTICATION_CODE=gt,e.ERR_INVALID_CODEC_DEFINITION=fn,e.ERR_INVALID_CODEC_MODULE=wn,e.ERR_INVALID_COMMENT=Da,e.ERR_INVALID_COMMENT_TYPE=Aa,e.ERR_INVALID_COMPRESSED_DATA=Rn,e.ERR_INVALID_CRC32=zn,e.ERR_INVALID_DATE=Ca,e.ERR_INVALID_ENCRYPTION_STRENGTH=_a,e.ERR_INVALID_ENTRY_COMMENT=ka,e.ERR_INVALID_ENTRY_COMMENT_TYPE=Ia,e.ERR_INVALID_ENTRY_NAME=Ta,e.ERR_INVALID_EXTRAFIELD=Ma,e.ERR_INVALID_EXTRAFIELD_DATA=Wa,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=Ba,e.ERR_INVALID_EXTRAFIELD_TYPE=La,e.ERR_INVALID_FILENAME_VALIDATION=yi,e.ERR_INVALID_FUNCTION_OPTION=Ce,e.ERR_INVALID_GID=Qa,e.ERR_INVALID_LEVEL=os,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=Si,e.ERR_INVALID_MAX_WORKERS=We,e.ERR_INVALID_MSDOS_ATTRIBUTES=ns,e.ERR_INVALID_MSDOS_DATA=rs,e.ERR_INVALID_PASSWORD=bt,e.ERR_INVALID_PASSWORD_TYPE=ve,e.ERR_INVALID_READER=Ya,e.ERR_INVALID_SIGNAL=Te,e.ERR_INVALID_SIGNATURE_DATA=is,e.ERR_INVALID_STRICTNESS=hi,e.ERR_INVALID_UID=Ja,e.ERR_INVALID_UNCOMPRESSED_SIZE=xn,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=es,e.ERR_INVALID_UNIX_ID_SIZE=ts,e.ERR_INVALID_UNIX_MODE=$a,e.ERR_INVALID_VERSION=va,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Tr,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=ai,e.ERR_OVERLAPPING_ENTRY=fi,e.ERR_RESERVED_COMPRESSION_METHOD=dn,e.ERR_SPLIT_ZIP_FILE=ui,e.ERR_UNDEFINED_COMPRESSION_METHOD=qa,e.ERR_UNDEFINED_READER=Ka,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=ja,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=mi,e.ERR_UNSUPPORTED_COMPRESSION=pn,e.ERR_UNSUPPORTED_CONTEXT=nc,e.ERR_UNSUPPORTED_CRYPTO_API=Rt,e.ERR_UNSUPPORTED_ENCRYPTION=li,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=Oa,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=Na,e.ERR_UNSUPPORTED_FORMAT=Ga,e.ERR_UNSUPPORTED_SPLIT_USDZ=Ua,e.ERR_UNSUPPORTED_UINT64=Ei,e.ERR_WORKER_STARTUP_TIMEOUT=Gn,e.ERR_WRITER_NOT_INITIALIZED=vr,e.ERR_ZIP_NOT_EMPTY=Xa,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,sn:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,sn: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 Pr{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{Dt:e,size:e.length})}readUint8Array(e,t){return this.Dt.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Zr{constructor(e){super(),this.cn=e||262144}init(e=0){n.assign(this,{offset:0,Dt:new w(e>0?e:this.cn)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.Dt.length){let e=t.Dt.length?2*t.Dt.length:t.cn;for(;e<n;)e*=2;const r=t.Dt;t.Dt=new w(e),t.Dt.set(r)}t.Dt.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.Dt.length?this.Dt:this.Dt.slice(0,this.offset)}},e.VERSION="2.11.4",e.WARNING_APPENDED_DATA=Di,e.WARNING_COMPRESSED_PATCHED_DATA=xi,e.WARNING_DUPLICATE_FILENAME=Ci,e.WARNING_MALFORMED_EXTRA_FIELD=Ri,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=vi,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=_i,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=Ni,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=Ti,e.WARNING_PREPENDED_CENTRAL_DIRECTORY=ki,e.WARNING_PREPENDED_DATA=Ai,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=Ii,e.WARNING_UNKNOWN_VERSION=gi,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=zi,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=bi,e.WARNING_WRAPPED_ENTRIES_COUNT=Fi,e.Writer=Zr,e.ZipReader=Pi,e.ZipReaderStream=Zi,e.ZipWriter=fs,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new z;this.readable=t,this.zipWriter=new fs(n,e),this.je=new l}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:o}=new z({start(e){n=e},flush:()=>{!async function(){try{await t.close()}catch(e){await ps(t,e)}}()}});return ms(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 z({start(e){t=e}});return ms(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 ps(r,e),e}try{return await r.close(e,n)}catch(e){throw await ps(r,e),e}}},e.configure=function(e){n.assign(qe,Je($e(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=$s}=e;return function(){const e=[];let n,r,o,i=0,a=!1;const s=new D({async write(o){a?await n.write(o):(e.push(o),i+=o.length,i>t&&await async function(){const t=new z;r=ln(t.readable),n=t.writable.getWriter(),a=!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:s,readable:new F({async pull(t){if(a){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=Js,directoryName:r=Qs,getDirectory:o=()=>I.storage.getDirectory()}=e;let i;function a(){return i||(i=S.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return function(){const e=[];let r,o,i,s,c=0,l=!1;const u=new D({async write(s){l?await i.write(s):(e.push(s),c+=s.length,c>n&&await async function(){const n=await a();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 F({async pull(t){if(l){if(!s){const e=await o.getFile();s=e.stream().getReader()}const{value:e,done:n}=await s.read();n?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){s&&await s.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await a();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=ec,directoryName:r=tc,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d(nc);const i=o||(()=>I.storage.getDirectory());let s;function c(){return s||(s=S.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),s}return function(){const e=[];let r,o,i=0,s=!1,l=0,u=0;const f=new D({async write(a){s?(o.write(a,{at:l}),l+=a.length):(e.push(a),i+=a.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(),s=!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 F({pull(t){if(s){const e=l-u;if(e<=0)return void t.close();const n=new w(a.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=En,e.getSupportedCompressionMethods=function(){const{CompressionStream:e,DecompressionStream:t,CompressionStreamFallback:n,DecompressionStreamFallback:r}=Ke(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:Xs(n,Fn)||Xs(e,Fn)||Xs(e,An),decompression:Xs(r,Fn)||Xs(t,Fn)||Xs(t,An),registered:!1},{compressionMethod:9,compression:!1,decompression:Xs(r,Dn)||Xs(t,Dn),registered:!1}];for(const e of En()){const t=bn(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==ue:se,decompression:t?typeof t.DecompressionStream==ue:se,registered:!0})}return o},e.isZipFile=Vi,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:i,DecompressionStream:a,versionNeeded:s}=e;if(!o.isInteger(t)||t<0||t>M||typeof n!=fe||!n.length)throw new d(fn);if(mn.includes(t))throw new d(dn);const c=typeof i==ue||typeof a==ue;if(!(c||typeof r==fe&&r.length))throw new d(fn);hn.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:s}),c&&gn(n,{CompressionStream:i,DecompressionStream:a})},e.resetConfiguration=function(){for(const e of je)delete qe[e];n.assign(qe,Ze)},e.terminateWorkers=async function(){await S.allSettled(pr.map(e=>(zr(e),e.terminate()))),jn=se,qn=!1},e.unregisterCodec=function(e){const t=hn.get(e);if(t){let n;hn.delete(e),hn.forEach(e=>n=n||e.format==t.format),n||yn.delete(t.format)}}});
@@ -208,6 +208,8 @@ const STRICTNESS_TOLERANT = "tolerant";
208
208
  const ERR_INVALID_FUNCTION_OPTION = "Invalid option (must be a function)";
209
209
  const ERR_INVALID_SIGNAL = "Invalid signal (must be an AbortSignal instance)";
210
210
  const ERR_INVALID_PASSWORD_TYPE = "Invalid password (password must be a string, rawPassword must be a Uint8Array)";
211
+ const ERR_ABORTED = "The operation was aborted";
212
+ const ABORT_ERROR_NAME = "AbortError";
211
213
 
212
214
  function checkFunctionOption(value) {
213
215
  if (value && typeof value != FUNCTION_TYPE) {
@@ -223,6 +225,12 @@ function checkSignalOption(signal) {
223
225
  return signal || UNDEFINED_VALUE;
224
226
  }
225
227
 
228
+ function throwIfAborted(signal) {
229
+ if (signal && signal.aborted) {
230
+ throw signal.reason === UNDEFINED_VALUE ? new DOMException(ERR_ABORTED, ABORT_ERROR_NAME) : signal.reason;
231
+ }
232
+ }
233
+
226
234
  function checkPasswordOption(password, rawPassword) {
227
235
  if ((password && typeof password != STRING_TYPE) || (rawPassword && !(rawPassword instanceof Uint8Array))) {
228
236
  throw new Error(ERR_INVALID_PASSWORD_TYPE);
@@ -3785,11 +3793,13 @@ class BlobReader extends Reader {
3785
3793
  const reader = this;
3786
3794
  const { sourceBlob, size } = reader;
3787
3795
  const { offset = 0, size: readSize = size - offset } = options || {};
3788
- if (!offset && readSize >= size) {
3789
- return toCompatibleReadable(sourceBlob.stream());
3790
- }
3791
- if (blobSliceReliable) {
3792
- return toCompatibleReadable(sourceBlob.slice(offset, offset + readSize).stream());
3796
+ if (typeof sourceBlob.stream == FUNCTION_TYPE) {
3797
+ if (!offset && readSize >= size) {
3798
+ return toCompatibleReadable(sourceBlob.stream());
3799
+ }
3800
+ if (blobSliceReliable) {
3801
+ return toCompatibleReadable(sourceBlob.slice(offset, offset + readSize).stream());
3802
+ }
3793
3803
  }
3794
3804
  return super.createReadable(options);
3795
3805
  }
@@ -5225,27 +5235,28 @@ class ZipReaderStream {
5225
5235
  const { done, value } = await gen.next();
5226
5236
  if (done)
5227
5237
  return controller.close();
5228
- const chunk = {
5229
- ...value,
5230
- readable: (function () {
5231
- const { readable, writable } = new TransformStream();
5232
- if (value.getData) {
5233
- getData();
5234
- return readable;
5235
- }
5238
+ const entryReadable = (function () {
5239
+ const { readable, writable } = new TransformStream();
5240
+ if (value.getData) {
5241
+ getData();
5242
+ return readable;
5243
+ }
5236
5244
 
5237
- async function getData() {
5245
+ async function getData() {
5246
+ try {
5247
+ await value.getData(writable);
5248
+ } catch (error) {
5238
5249
  try {
5239
- await value.getData(writable);
5240
- } catch (error) {
5241
- try {
5242
- await writable.abort(error);
5243
- } catch {
5244
- // ignored
5245
- }
5250
+ await writable.abort(error);
5251
+ } catch {
5252
+ // ignored
5246
5253
  }
5247
5254
  }
5248
- })()
5255
+ }
5256
+ })();
5257
+ const chunk = {
5258
+ ...value,
5259
+ readable: entryReadable
5249
5260
  };
5250
5261
  delete chunk.getData;
5251
5262
  controller.enqueue(chunk);
@@ -5391,6 +5402,7 @@ let ZipEntry$1 = class ZipEntry {
5391
5402
  const size = compressedSize;
5392
5403
  const readable = toCompatibleReadable(reader.createReadable({ offset: dataOffset, size }));
5393
5404
  const signal = checkSignalOption(getOptionValue$1(zipEntry, options, OPTION_SIGNAL));
5405
+ throwIfAborted(signal);
5394
5406
  const checkPasswordOnly = getOptionValue$1(zipEntry, options, OPTION_CHECK_PASSWORD_ONLY);
5395
5407
  let checkOverlappingEntry = getOptionValue$1(zipEntry, options, OPTION_CHECK_OVERLAPPING_ENTRY);
5396
5408
  const checkOverlappingEntryOnly = getOptionValue$1(zipEntry, options, OPTION_CHECK_OVERLAPPING_ENTRY_ONLY);
@@ -6921,6 +6933,7 @@ function resolveMetadata(zipWriter, name, options) {
6921
6933
  const createTempStream = getFunctionOptionValue(zipWriter, options, OPTION_CREATE_TEMP_STREAM);
6922
6934
  const dataDescriptorSignature = getOptionValue(zipWriter, options, OPTION_DATA_DESCRIPTOR_SIGNATURE, true);
6923
6935
  const signal = checkSignalOption(getOptionValue(zipWriter, options, OPTION_SIGNAL));
6936
+ throwIfAborted(signal);
6924
6937
  const useUnicodeFileNames = getOptionValue(zipWriter, options, OPTION_USE_UNICODE_FILE_NAMES, true);
6925
6938
  const compressionMethod = getOptionValue(zipWriter, options, PROPERTY_NAME_COMPRESSION_METHOD);
6926
6939
  const registeredCodec = passThrough || compressionMethod === UNDEFINED_VALUE ? UNDEFINED_VALUE : getRegisteredCodec(compressionMethod);
@@ -8665,7 +8678,7 @@ function formatSupported(StreamClass, format) {
8665
8678
  EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
8666
8679
  */
8667
8680
 
8668
- const VERSION = "2.11.3";
8681
+ const VERSION = "2.11.4";
8669
8682
 
8670
8683
  /*
8671
8684
  Copyright (c) 2025 Gildas Lormeau. All rights reserved.
@@ -9538,8 +9551,6 @@ const ERR_INVALID_PASS_THROUGH = "Invalid passThrough option (use readerOptions.
9538
9551
  const ERR_INVALID_READER_OPTIONS = "Invalid readerOptions (must be an object)";
9539
9552
  const ERR_ZIP_CRYPTO_LAST_MOD_DATE = "The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set";
9540
9553
  const ERR_ABORT_EXPORT = "zipjs-abort-export";
9541
- const ERR_ABORTED = "The operation was aborted";
9542
- const ABORT_ERROR_NAME = "AbortError";
9543
9554
  const INFOZIP_EXTRA_FIELD_TYPE = "infozip";
9544
9555
  const INTERPRETED_EXTRA_FIELD_TYPES = new Set([
9545
9556
  EXTRAFIELD_TYPE_ZIP64,