@zip.js/zip.js 2.8.56 → 2.8.58

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