@zip.js/zip.js 2.8.57 → 2.8.59

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