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