((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,function(e){"use strict";const{Array:t,Object:r,String:n,Number:i,BigInt:s,Math:a,Date:o,Map:c,Set:l,Response:f,URL:u,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:h,DataView:m,Blob:y,Promise:b,TextEncoder:x,TextDecoder:g,document:v,crypto:S,btoa:F,TransformStream:k,ReadableStream:z,WritableStream:D,CompressionStream:R,DecompressionStream:E,navigator:U,Worker:T}="undefined"!=typeof globalThis?globalThis:this||self;var C=void 0!==v?v.currentScript:null;const j=4294967295,M=65535,L=255,P=67324752,A=134695760,W=A,V=33639248,q=101010256,K=101075792,I=117853008,X=22,Z=20,O=21589,Y=2048,G=16384,J=2048,H=1024,B="/",Q=30,N=new o(2107,11,31),_=new o(1980,0,1),$=void 0,ee=1/0,te="undefined",re="function",ne=new w;let ie=2;try{typeof U!=te&&U.hardwareConcurrency&&(ie=U.hardwareConcurrency)}catch{}const se={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:ie,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,CompressionStream:typeof R!=te&&R,DecompressionStream:typeof E!=te&&E},ae=["baseURI","wasmURI","workerURI","chunkSize","maxWorkers","terminateWorkerTimeout","workerStarvationTimeout","useCompressionStream","useWebWorkers","CompressionStream","DecompressionStream","CompressionStreamZlib","DecompressionStreamZlib"],oe=r.assign({},se);function ce(){return oe}function le(e){return a.max(e.chunkSize,64)}function fe(e){for(const t of ae){const r=e[t];r!==$&&(oe[t]=r)}}const ue=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258],de=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],we=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],pe=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],he=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],me=new w(288);me.fill(8,0,144),me.fill(9,144,256),me.fill(7,256,280),me.fill(8,280,288);const ye=new w(30).fill(5);function be(e){const t=new p(16);for(const r of e)t[r]++;t[0]=0;const r=new p(17);for(let e=1;15>=e;e++)r[e+1]=r[e]+t[e];const n=new p(e.length);for(let t=0;te;e++){let t=e;for(let e=0;8>e;e++)t=1&t?t>>>1^3988292384:t>>>1;ge[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){const r=ge[t-1][e];ge[t][e]=r>>>8^ge[0][255&r]}const[ve,Se,Fe,ke,ze,De,Re,Ee]=ge;class Ue{constructor(e){this.i=e||-1}append(e){let t=0|this.i;const r=0|e.length;let n=0;if(r>=8&&e.buffer){const i=new m(e.buffer,e.byteOffset,r),s=r-8;for(;s>=n;n+=8){const e=t^i.getInt32(n,!0),r=i.getInt32(n+4,!0);t=Ee[255&e]^Re[e>>>8&255]^De[e>>>16&255]^ze[e>>>24&255]^ke[255&r]^Fe[r>>>8&255]^Se[r>>>16&255]^ve[r>>>24&255]}}for(;r>n;n++)t=t>>>8^ve[255&(t^e[n])];this.i=t}get(){return~this.i}}class Te extends k{constructor(){let e;const t=new Ue;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new w(4);new m(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}function Ce(e){if(typeof x==te){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let r=0;r0&&t&&(e[r-1]=je.h(t,e[r-1]&2147483648>>t-1,1)),e},h:(e,t,r)=>32===e?t:(r?0|t:t<<32-e)+1099511627776*e,o:e=>a.round(e/1099511627776)||32,l(e,t,r,n){for(void 0===n&&(n=[]);t>=32;t-=32)n.push(r),r=0;if(0===t)return n.concat(e);for(let i=0;i>>t),r=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=je.o(i);return n.push(je.h(t+s&31,t+s>32?r:n.pop(),1)),n}},Me={bytes:{m(e){const t=je.u(e)/8,r=new w(t);let n;for(let i=0;t>i;i++)3&i||(n=e[i/4]),r[i]=n>>>24,n<<=8;return r},v(e){const t=[];let r,n=0;for(r=0;r9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const s=new h(r);let a=0;for(let e=t.blockSize+n-(t.blockSize+n&t.blockSize-1);i>=e;e+=t.blockSize)t.T(s.subarray(16*a,16*(a+1))),a+=1;return r.splice(0,16*a),t}C(){const e=this;let t=e.D;const r=e.k;t=je.concat(t,[je.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e.R/4294967296)),t.push(0|e.R);t.length;)e.T(t.splice(0,16));return e.reset(),r}j(e,t,r,n){return e>19?e>39?e>59?e>79?void 0:t^r^n:t&r|t&n|r&n:t^r^n:t&r|~t&n}M(e,t){return t<>>32-e}T(e){const r=this,n=r.k,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let s=n[0],o=n[1],c=n[2],l=n[3],f=n[4];for(let e=0;79>=e;e++){16>e||(i[e]=r.M(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=r.M(5,s)+r.j(e,o,c,l)+f+i[e]+r.F[a.floor(e/20)]|0;f=l,l=c,c=r.M(30,o),o=s,s=t}n[0]=n[0]+s|0,n[1]=n[1]+o|0,n[2]=n[2]+c|0,n[3]=n[3]+l|0,n[4]=n[4]+f|0}},Pe={importKey:e=>new Pe.L(Me.bytes.v(e)),P(e,t,r,n){if(r=r||1e4,0>n||0>r)throw new d("invalid params to pbkdf2");const i=1+(n>>5)<<2;let s,a,o,c,l;const f=new ArrayBuffer(i),u=new m(f);let w=0;const p=je;for(t=Me.bytes.v(t),l=1;(i||1)>w;l++){for(s=a=e.encrypt(p.concat(t,[l])),o=1;r>o;o++)for(a=e.encrypt(a),c=0;cw&&oi&&(e=(new r).update(e).C());for(let t=0;i>t;t++)n[0][t]=909522486^e[t],n[1][t]=1549556828^e[t];t.W[0].update(n[0]),t.W[1].update(n[1]),t.V=new r(t.W[0])}reset(){const e=this;e.V=new e.A(e.W[0]),e.q=!1}update(e){this.q=!0,this.V.update(e)}digest(){const e=this,t=e.V.C(),r=new e.A(e.W[1]).update(t).C();return e.reset(),r}encrypt(e){if(this.q)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Ae=typeof S!=te&&typeof S.getRandomValues==re,We="Invalid password",Ve="Invalid signature",qe="zipjs-abort-check-password";function Ke(e){if(Ae)return S.getRandomValues(e);throw new d("Crypto API not supported")}const Ie=16,Xe={name:"PBKDF2"},Ze=r.assign({hash:{name:"HMAC"}},Xe),Oe=r.assign({iterations:1e3,hash:{name:"SHA-1"}},Xe),Ye=["deriveBits"],Ge=[8,12,16],Je=[16,24,32],He=10,Be=[0,0,0,0],Qe=typeof S!=te,Ne=Qe&&S.subtle,_e=Qe&&typeof Ne!=te,$e=Me.bytes,et=class{constructor(e){const t=this;t.K=[[[],[],[],[],[]],[[],[],[],[],[]]],t.K[0][0][0]||t.I();const r=t.K[0][4],n=t.K[1],i=e.length;let s,a,o,c=1;if(4!==i&&6!==i&&8!==i)throw new d("invalid aes key size");for(t.F=[a=e.slice(0),o=[]],s=i;4*i+28>s;s++){let e=a[s-1];(s%i===0||8===i&&s%i===4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],s%i===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[s]=a[s-i]^e}for(let e=0;s;e++,s--){const t=a[3&e?s:s-4];o[e]=4>=s||4>e?t:n[0][r[t>>>24]]^n[1][r[t>>16&255]]^n[2][r[t>>8&255]]^n[3][r[255&t]]}}encrypt(e){return this.X(e,0)}decrypt(e){return this.X(e,1)}I(){const e=this.K[0],t=this.K[1],r=e[4],n=t[4],i=[],s=[];let a,o,c,l;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let f=a=0;!r[f];f^=o||1,a=s[a]||1){let s=a^a<<1^a<<2^a<<3^a<<4;s=s>>8^255&s^99,r[f]=s,n[s]=f,l=i[c=i[o=i[f]]];let u=16843009*l^65537*c^257*o^16843008*f,d=257*i[s]^16843008*s;for(let r=0;4>r;r++)e[r][f]=d=d<<24^d>>>8,t[r][s]=u=u<<24^u>>>8}for(let r=0;5>r;r++)e[r]=e[r].slice(0),t[r]=t[r].slice(0)}X(e,t){if(4!==e.length)throw new d("invalid aes block size");const r=this.F[t],n=r.length/4-2,i=[0,0,0,0],s=this.K[t],a=s[0],o=s[1],c=s[2],l=s[3],f=s[4];let u,w,p,h=e[0]^r[0],m=e[t?3:1]^r[1],y=e[2]^r[2],b=e[t?1:3]^r[3],x=4;for(let e=0;n>e;e++)u=a[h>>>24]^o[m>>16&255]^c[y>>8&255]^l[255&b]^r[x],w=a[m>>>24]^o[y>>16&255]^c[b>>8&255]^l[255&h]^r[x+1],p=a[y>>>24]^o[b>>16&255]^c[h>>8&255]^l[255&m]^r[x+2],b=a[b>>>24]^o[h>>16&255]^c[m>>8&255]^l[255&y]^r[x+3],x+=4,h=u,m=w,y=p;for(let e=0;4>e;e++)i[t?3&-e:e]=f[h>>>24]<<24^f[m>>16&255]<<16^f[y>>8&255]<<8^f[255&b]^r[x++],u=h,h=m,m=y,y=b,b=u;return i}},tt=class{constructor(e,t){this.Z=e,this.O=t,this.Y=t}reset(){this.Y=this.O}update(e){return this.G(this.Z,e,this.Y)}J(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,r=e>>8&255,n=255&e;255===t?(t=0,255===r?(r=0,255===n?n=0:++n):++r):++t,e=0,e+=t<<16,e+=r<<8,e+=n}return e}H(e){0===(e[0]=this.J(e[0]))&&(e[1]=this.J(e[1]))}G(e,t,r){let n;if(!(n=t.length))return[];const i=je.u(t);for(let i=0;n>i;i+=4){this.H(r);const n=e.encrypt(r);t[i]^=n[0],t[i+1]^=n[1],t[i+2]^=n[2],t[i+3]^=n[3]}return je.p(t,i)}},rt=Pe.L;let nt=Qe&&_e&&typeof Ne.importKey==re,it=Qe&&_e&&typeof Ne.deriveBits==re;class st extends k{constructor({password:e,rawPassword:t,encryptionStrength:r,checkPasswordOnly:n}){super({start(){ot(this,e,t,r)},async transform(e,t){const r=this,{password:i,strength:s,B:a,ready:o}=r;i?(await(async(e,t,r,n)=>{const i=await lt(e,t,r,dt(n,0,Ge[t])),s=dt(n,Ge[t]);if(i[0]!=s[0]||i[1]!=s[1])throw new d(We)})(r,s,i,dt(e,0,Ge[s]+2)),e=dt(e,Ge[s]+2),n?t.error(new d(qe)):a()):await o;const c=new w(e.length-He-(e.length-He)%Ie);t.enqueue(ct(r,e,c,0,He,!0))},async flush(e){const{N:t,_:r,pending:n,ready:i}=this;if(r&&t){await i;const s=dt(n,0,n.length-He),a=dt(n,n.length-He);let o=ne;if(s.length){const e=pt($e,s);r.update(e);const n=t.update(e);o=wt($e,n)}const c=dt(wt($e,r.digest()),0,He);let l=n.lengthe;e++)l|=c[e]^a[e];if(l)throw new d(Ve);e.enqueue(o)}}})}}class at extends k{constructor({password:e,rawPassword:t,encryptionStrength:r}){let n;super({start(){ot(this,e,t,r)},async transform(e,t){const r=this,{password:n,strength:i,B:s,ready:a}=r;let o=ne;n?(o=await(async(e,t,r)=>{const n=Ke(new w(Ge[t]));return ut(n,await lt(e,t,r,n))})(r,i,n),s()):await a;const c=new w(o.length+e.length-e.length%Ie);c.set(o,0),t.enqueue(ct(r,e,c,o.length,0))},async flush(e){const{N:t,_:r,pending:i,ready:s}=this;if(r&&t){await s;let a=ne;if(i.length){const e=t.update(pt($e,i));r.update(e),a=wt($e,e)}n.signature=wt($e,r.digest()).slice(0,He),e.enqueue(ut(a,n.signature))}}}),n=this}}function ot(e,t,n,i){r.assign(e,{ready:new b(t=>e.B=t),password:ft(t,n),strength:i-1,pending:ne})}function ct(e,t,r,n,i,s){const{N:a,_:o,pending:c}=e;c.length&&(t=ut(c,t));const l=t.length-i;let f;for(r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new w(t)).set(r,0)}return e})(r,n+(l-l%Ie)),f=0;l-Ie>=f;f+=Ie){const e=pt($e,dt(t,f,f+Ie));s&&o.update(e);const i=a.update(e);s||o.update(i),r.set(wt($e,i),f+n)}return e.pending=dt(t,f),r}async function lt(e,n,i,s){e.password=null;const a=await(async(e,t,r,n,i)=>{if(!nt)return Pe.importKey(t);try{return await Ne.importKey("raw",t,r,!1,i)}catch{return nt=!1,Pe.importKey(t)}})(0,i,Ze,0,Ye),o=await(async(e,t,r)=>{if(!it)return Pe.P(t,e.salt,Oe.iterations,r);try{return await Ne.deriveBits(e,t,r)}catch{return it=!1,Pe.P(t,e.salt,Oe.iterations,r)}})(r.assign({salt:s},Oe),a,8*(2*Je[n]+2)),c=new w(o),l=pt($e,dt(c,0,Je[n])),f=pt($e,dt(c,Je[n],2*Je[n])),u=dt(c,2*Je[n]);return r.assign(e,{keys:{key:l,$:f,passwordVerification:u},N:new tt(new et(l),t.from(Be)),_:new rt(f)}),u}function ft(e,t){return t===$?Ce(e):t}function ut(e,t){let r=e;return e.length+t.length&&(r=new w(e.length+t.length),r.set(e,0),r.set(t,e.length)),r}function dt(e,t,r){return e.subarray(t,r)}function wt(e,t){return e.m(t)}function pt(e,t){return e.v(t)}class ht extends k{constructor({password:e,rawPassword:t,passwordVerification:r,checkPasswordOnly:n}){super({start(){yt(this,e,t,r)},transform(e,t){const r=this;if(r.password||r.rawPassword){const t=bt(r,e.subarray(0,12));if(r.password=r.rawPassword=null,0!=(t.at(-1)^r.passwordVerification))throw new d(We);e=e.subarray(12)}n?t.error(new d(qe)):t.enqueue(bt(r,e))}})}}class mt extends k{constructor({password:e,rawPassword:t,passwordVerification:r}){super({start(){yt(this,e,t,r)},transform(e,t){const r=this;let n,i;if(r.password||r.rawPassword){r.password=r.rawPassword=null;const t=Ke(new w(12));t[11]=r.passwordVerification,n=new w(e.length+t.length),n.set(xt(r,t),0),i=12}else n=new w(e.length),i=0;n.set(xt(r,e),i),t.enqueue(n)}})}}function yt(e,t,n,i){r.assign(e,{password:t,rawPassword:n,passwordVerification:i}),((e,t,n)=>{const i=[305419896,591751049,878082192];if(r.assign(e,{keys:i,ee:new Ue(i[0]),te:new Ue(i[2])}),n)for(let t=0;t>>24]);const i=~e.te.get();e.keys=[n,r,i]}function vt(e){const t=2|e.keys[2];return St(a.imul(t,1^t)>>>8)}function St(e){return 255&e}function Ft(e){return 4294967295&e}const kt="Invalid uncompressed size",zt="Invalid compressed data";class Dt extends k{constructor(e,{chunkSize:t,CompressionStreamZlib:r,CompressionStream:n}){super({});const{compressed:i,encrypted:s,useCompressionStream:a,zipCrypto:o,signed:c,level:l,deflate64:f}=e,u=this;let d,w,p,h=super.readable;const y=c&&i&&!f&&(!s||o)&&!(!a||!n);s&&!o||!c||y||(d=new Te,h=Ct(h,d)),i&&(y?(p=new Rt,h=jt(h,new n("gzip")),h=Ct(h,p)):h=Tt(h,a,{level:l,chunkSize:t},n,r,n)),s&&(o?h=Ct(h,new mt(e)):(w=new at(e),h=Ct(h,w))),Ut(u,h,()=>{let e;s&&!o&&(e=w.signature),s&&!o||!c||(e=y?p.signature:new m(d.value.buffer).getUint32(0)),u.signature=e})}}class Rt extends k{constructor(){let e,t=10,r=new w(0);super({transform(e,n){if(t){const r=a.min(t,e.length);if(t-=r,!(e=e.subarray(r)).length)return}const i=r.length+e.length;if(8>=i){const t=new w(i);return t.set(r),t.set(e,r.length),void(r=t)}const s=i-8,o=new w(s),c=a.min(s,r.length);o.set(r.subarray(0,c),0),s>c&&o.set(e.subarray(0,s-c),c),n.enqueue(o);const l=new w(8),f=r.length-c;f&&l.set(r.subarray(c),0),l.set(e.subarray(s-c),f),r=l},flush(){const t=new m(r.buffer,r.byteOffset,r.byteLength);e.signature=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class Et extends k{constructor(e,{chunkSize:t,DecompressionStreamZlib:r,DecompressionStream:n}){super({});const{zipCrypto:i,encrypted:s,signed:a,signature:o,compressed:c,useCompressionStream:l,deflate64:f}=e;let u,w,p=super.readable;s&&(i?p=Ct(p,new ht(e)):(w=new st(e),p=Ct(p,w))),c&&(p=Tt(p,l,{chunkSize:t,deflate64:f},n,r,n),p=(e=>{const t=e.getReader();return new z({async pull(e){let r;try{r=await t.read()}catch(e){if(e&&e.message)throw e;const t=new d(zt);throw t.cause=e,t}const{value:n,done:i}=r;i?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})})(p)),s&&!i||!a||(u=new Te,p=Ct(p,u)),Ut(this,p,()=>{if((!s||i)&&a){const e=new m(u.value.buffer);if(o!=e.getUint32(0,!1))throw new d(Ve)}})}}function Ut(e,t,n){t=Ct(t,new k({flush:n})),r.defineProperty(e,"readable",{get:()=>t})}function Tt(e,t,r,n,i,s){const a=t&&n?n:i||s,o=r.deflate64?"deflate64-raw":"deflate-raw";let c;try{c=new a(o,r)}catch(e){if(!t)throw e;if(i)c=new i(o,r);else{if(!s)throw e;c=new s(o,r)}}return jt(e,c)}function Ct(e,t){return e.pipeThrough(t)}function jt(e,t){const r=t.writable.getWriter(),n=e.getReader();return(async()=>{try{for(;;){await r.ready;const e=await n.read();if(e.done){await r.close();break}await r.write(e.value)}}catch(e){await(async(e,t)=>{try{await e.abort(t)}catch{}})(r,e),await(async(e,t)=>{try{await e.cancel(t)}catch{}})(n,e)}})(),t.readable}const Mt="data",Lt="deflate",Pt="inflate";class At extends k{constructor(e,t){super({});const n=this,{codecType:i}=e;let s;i.startsWith(Lt)?s=Dt:i.startsWith(Pt)&&(s=Et),n.outputSize=0;let a=0;const o=new s(e,t),c=super.readable,l=new k({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){r.assign(n,{inputSize:a})}}),f=new k({transform(t,r){if(t&&t.length&&(r.enqueue(t),n.outputSize+=t.length,e.outputSize!==$&&n.outputSize>e.outputSize))throw new d(kt)},flush(){const{signature:e}=o;r.assign(n,{signature:e,inputSize:a})}});r.defineProperty(n,"readable",{get:()=>c.pipeThrough(l).pipeThrough(o).pipeThrough(f)})}}class Wt extends k{constructor(e){let t;1>e&&(e=65536),super({transform:(r,n)=>{if(t){const e=new w(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}let i=0;for(;r.length-i>e;)n.enqueue(r.slice(i,i+e)),i+=e;t=i?r.slice(i):r},flush(e){t&&t.length&&e.enqueue(t)}})}}const Vt={type:"module"},qt="error";let Kt,It,Xt,Zt,Ot=!0;try{Ot=typeof structuredClone==re&&structuredClone(new DOMException("","AbortError")).code!==$}catch{}class Yt{constructor(e,{readable:t,writable:n},{options:i,config:s,re:a,useWebWorkers:o,transferStreams:c,workerURI:l},f){const{signal:u}=a;return r.assign(e,{ne:!0,ie:(e.ie||0)+1,readable:t.pipeThrough(new Wt(le(s))).pipeThrough(new Gt(a),{signal:u}),writable:n,options:r.assign({},i),workerURI:l,transferStreams:c,terminate:()=>new b(t=>{const{se:r,ne:n}=e;r?(n?e.ae=t:(r.terminate(),t()),e.oe=null):t()}),ce(){if(e.ne){const{ae:t}=e;t&&(e.ae=null,e.le=!0,e.se.terminate(),t()),e.ne=!1,f(e)}}}),Kt===$&&(Kt=typeof T!=te),(o&&Kt?Bt:Ht)(e,s)}}class Gt extends k{constructor({onstart:e,onprogress:t,size:r,onend:n}){let i=0;super({async start(){e&&await Jt(e,r)},async transform(e,n){i+=e.length,t&&await Jt(t,i,r),n.enqueue(e)},async flush(){n&&await Jt(n,i)}})}}async function Jt(e,...t){try{await e(...t)}catch{}}function Ht(e,t){return{run:()=>(async({options:e,readable:t,writable:r,ce:n},i)=>{let s;try{if(!e.useCompressionStream)try{await void 0}catch{const t=e.codecType.startsWith(Lt)?i.CompressionStreamZlib:i.DecompressionStreamZlib;t&&!t.fe||(e.useCompressionStream=!0)}s=new At(e,i),await t.pipeThrough(s).pipeTo(r,{preventClose:!0,preventAbort:!0});const{signature:n,inputSize:a,outputSize:o}=s;return{signature:n,inputSize:a,outputSize:o}}catch(e){throw s&&(e.outputSize=s.outputSize),e}finally{n()}})(e,t)}}function Bt(e,t){const{baseURI:n,chunkSize:i}=t;let{wasmURI:s}=t;if(!e.oe){let a;typeof s==re&&(s=s());try{a=Nt(e.workerURI,n,e)}catch{return Kt=!1,Ht(e,t)}r.assign(e,{se:a,le:!1,oe:{run:()=>(async(e,t)=>{let n,i;const s=new b((e,t)=>{n=e,i=t});r.assign(e,{reader:null,writer:null,ue:n,de:i,result:s});const{readable:a,options:o}=e,{writable:c,closed:l,we:f}=(e=>{const t=new AbortController,{writable:r,readable:n}=new k,i=n.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return i.catch(()=>{}),{writable:r,closed:i,we:()=>t.abort()}})(e.writable);let u;try{u=$t({type:"start",options:o,config:t,readable:a,writable:c},e)}catch(t){f();try{await l}catch{}throw e.ce(),t}u||r.assign(e,{reader:a.getReader(),writer:c.getWriter()});try{const e=await s;return await d(),await l,e}catch(e){await d(),f();try{await l}catch{}throw e}async function d(){if(!u&&!c.locked)try{await c.getWriter().close()}catch{}}})(e,{chunkSize:i,wasmURI:s,baseURI:n})}})}return e.oe}function Qt(e){const{se:t}=e;if(t)try{t.terminate()}catch{}e.oe=null}function Nt(e,t,n,i,s=!0){let a,o,c;if(Xt===$||It!==e){const r=typeof e==re;o=r?e(s):e;const l=o.startsWith("data:"),f=o.startsWith("blob:");if(l||f){i===$&&(i=!1),i&&(c=Vt);try{a=new T(o,c)}catch(s){if(f)try{u.revokeObjectURL(o)}catch{}if(r&&f)return Nt(e,t,n,i,!1);if(i)throw s;return Nt(e,t,n,!0,!1)}}else{i===$&&(i=!0),i&&(c=Vt);try{o=new u(o,t)}catch{}try{a=new T(o,c)}catch(r){if(i)throw r;return Nt(e,t,n,!1,s)}}It=e,Xt=o,Zt=c}else a=new T(Xt,Zt);return a.addEventListener("message",e=>(async({data:e},t)=>{const{type:n,value:i,messageId:s,result:a,error:o}=e,{reader:c,writer:l,ue:f,de:u,ce:p,ie:h}=t,m=()=>t.ie!=h;try{if(o){const{message:e,stack:t,code:n,name:i,outputSize:s}=o,a=new d(e);r.assign(a,{stack:t,code:n,name:i,outputSize:s}),y(a)}else{if("pull"==n){const{value:e,done:r}=await c.read();m()||$t({type:Mt,value:e,done:r,messageId:s},t)}n==Mt&&(await l.ready,await l.write(new w(i)),m()||$t({type:"ack",messageId:s},t)),"close"==n&&y(null,a)}}catch(o){m()||(Qt(t),y(o))}function y(e,t){m()||(e?u(e):f(t),l&&l.releaseLock(),p())}})(e,n)),a.addEventListener(qt,e=>_t(e,n)),a.addEventListener("messageerror",e=>_t(e,n)),a}function _t(e,t){e.preventDefault&&e.preventDefault();const{de:r,writer:n,ce:i}=t;Qt(t),r&&(r(e.error||new d(e.message||qt)),n&&n.releaseLock(),i())}function $t(e,{se:t,writer:r,transferStreams:n}){try{const{value:r,readable:i,writable:s}=e,a=[];if(r&&(e.value=r.byteOffset||r.byteLength!=r.buffer.byteLength?new w(r):r,a.push(e.value.buffer)),n&&Ot?(i&&a.push(i),s&&a.push(s)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch{Ot=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw r&&r.releaseLock(),e}}let er=[];const tr=[];let rr,nr,ir=0;async function sr(e,t){const{options:r,config:n}=t,{transferStreams:s,useWebWorkers:a,useCompressionStream:o,compressed:c,signed:l,encrypted:f}=r,{workerURI:u,maxWorkers:d}=n;t.transferStreams=s||s===$;const w=!(c||l||f||t.transferStreams);return t.useWebWorkers=!w&&(a||a===$&&n.useWebWorkers),t.workerURI=t.useWebWorkers&&u?u:$,r.useCompressionStream=o||o===$&&n.useCompressionStream,(await(async()=>{const r=er.find(e=>!e.ne);if(r)return fr(r),new Yt(r,e,t,p);if(er.length{tr.push({resolve:r,stream:e,he:t}),nr=n.workerStarvationTimeout,ar()})})()).run();function p(e){if(or(),tr.length){const[{resolve:t,stream:r,he:n}]=tr.splice(0,1);t(new Yt(e,r,n,p)),ar()}else e.se?(fr(e),((e,t)=>{const{config:r}=t,{terminateWorkerTimeout:n}=r;i.isFinite(n)&&n>=0&&(e.le?e.le=!1:e.me=setTimeout(async()=>{er=er.filter(t=>t!=e);try{await e.terminate()}catch{}},n))})(e,t)):er=er.filter(t=>t!=e)}}function ar(){!rr&&tr.length&&i.isFinite(nr)&&nr>=0&&(rr=setTimeout(cr,nr))}function or(){rr&&(clearTimeout(rr),rr=null)}function cr(){if(rr=null,tr.length){const[{resolve:e,stream:t,he:n}]=tr.splice(0,1),i=r.assign({},n,{useWebWorkers:!1,workerURI:$});e(new Yt({},t,i,lr)),ar()}}function lr(){or(),ar()}function fr(e){const{me:t}=e;t&&(clearTimeout(t),e.me=null)}const ur="HTTP error ",dr="HTTP Range not supported",wr="Writer iterator completed too soon",pr="Writer not initialized",hr="Content-Range",mr="Range",yr="GET",br="bytes",xr="writable";class gr{constructor(){this.size=0}init(){this.initialized=!0}}class vr extends gr{get readable(){return this.ye()}ye({offset:e=0,size:t,diskNumberStart:r,chunkSize:n=65536}={}){const i=this;let s=0;return new z({async pull(o){const c=t===$?n:a.min(n,t-s),l=await Or(i,e+s,c,r);o.enqueue(l),s+n>t||t===$&&!l.length&&c?o.close():s+=n}})}}class Sr extends gr{constructor(){super();const e=this,t=new D({write(t){if(!e.initialized)throw new d(pr);return e.writeUint8Array(t)}});r.defineProperty(e,xr,{get:()=>t})}writeUint8Array(){}}class Fr extends vr{constructor(e){super(),r.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const r=this,n=e+t,i=e||nt&&(s=s.slice(e,n)),new w(s)}}class kr extends gr{constructor(e){super();const t=this,n=new k,i=[];e&&i.push(["Content-Type",e]),r.defineProperty(t,xr,{get:()=>n.writable}),t.blob=new f(n.readable,{headers:i}).blob(),t.blob.catch(()=>{})}getData(){return this.blob}}class zr extends vr{constructor(e,t){super(),Rr(this,e,t)}async init(){await Er(this,Ar,jr),super.init()}readUint8Array(e,t){return Ur(this,e,t,Ar,jr)}}class Dr extends vr{constructor(e,t){super(),Rr(this,e,t)}async init(){await Er(this,Wr,Mr),super.init()}readUint8Array(e,t){return Ur(this,e,t,Wr,Mr)}}function Rr(e,t,n){const{preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o,fetch:c}=n;delete(n=r.assign({},n)).preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.combineSizeEocd,delete n.useXHR,delete n.fetch,r.assign(e,{url:t,options:n,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o,fetch:c})}async function Er(e,t,r){const{url:n,preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:o,combineSizeEocd:c}=e;if((e=>{const{baseURI:t}=ce(),{protocol:r}=new u(e,t);return"http:"==r||"https:"==r})(n)&&(a||o)&&(void 0===s||s)){const n=await t(yr,e,Tr(e,c?-22:void 0)),s=n.headers.get("Accept-Ranges");if(!(o||s&&s.toLowerCase()==br))throw new d(dr);{if(c){const t=new w(await n.arrayBuffer());206==n.status&&t.length==X&&(e.be=t)}let s;const a=n.headers.get(hr);if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(s=i(t))}}s===$?await Pr(e,t,r):e.size=s}}else await Pr(e,t,r)}async function Ur(e,t,r,n,s){const{useRangeHeader:a,forceRangeRequests:o,be:c,size:l,options:f}=e;if(a||o){if(c&&t==l-X&&r==X)return c;if(l>t&&0!==r){t+r>l&&(r=l-t);const s=await n(yr,e,Tr(e,t,r));if(206!=s.status)throw new d(dr);const a=s.headers.get(hr);if(a){const e=i(a.trim().split(/[\s-]+/)[1]);if(!i.isNaN(e)&&e!=t)throw new d(dr)}const o=new w(await s.arrayBuffer());if(o.length!=r)throw new d(dr);return o}return ne}{const{data:n}=e;return n||await s(e,f),new w(e.data.subarray(t,t+r))}}function Tr(e,t=0,n=1){return r.assign({},Cr(e),{[mr]:br+"="+(0>t?t:t+"-"+(t+n-1))})}function Cr({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?r.fromEntries(t):t}async function jr(e){await Lr(e,Ar)}async function Mr(e){await Lr(e,Wr)}async function Lr(e,t){const r=await t(yr,e,Cr(e));e.data=new w(await r.arrayBuffer()),e.size=e.data.length}async function Pr(e,t,r){if(e.preventHeadRequest)await r(e,e.options);else{const n=await t("HEAD",e,Cr(e)),s=n.headers.get("Content-Length");s&&!n.headers.get("Content-Encoding")?e.size=i(s):await r(e,e.options)}}async function Ar(e,{fetch:t=fetch,options:n,url:i},s){const a=await t(i,r.assign({},n,{method:e,headers:s}));if(400>a.status)return a;throw 416==a.status?new d(dr):new d(ur+(a.statusText||a.status))}function Wr(e,{url:t},n){return new b((i,s)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const r=t.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(r)}),i({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else s(416==a.status?new d(dr):new d(ur+(a.statusText||a.status)))},!1),a.addEventListener("error",e=>s(e.detail?e.detail.error:new d("Network error")),!1),a.open(e,t),n)for(const e of r.entries(n))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()})}class Vr extends vr{constructor(e,t={}){super(),r.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Dr(e,t):new zr(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class qr extends vr{constructor(e){super(),this.xe=e}async init(){const e=this,{xe:t}=e;e.ge=0,e.ve=0,await b.all(t.map(async(r,n)=>{await Zr(r),n!=t.length-1&&(e.ve+=r.size),e.size+=r.size})),super.init()}async readUint8Array(e,t,r=0){const n=this,{xe:i}=this;let s,o=r;-1==o&&(o=i.length-1);let c=e;for(;i[o]&&c>=i[o].size;)c-=i[o].size,o++;const l=i[o];if(l){const i=l.size;if(c+t>i){const a=i-c;s=new w(t);const o=await Or(l,c,a);s.set(o,0);const f=await n.readUint8Array(e+a,t-a,r);s.set(f,a),o.length+f.lengthr&&await this.write(t.subarray(r)));else{const{value:r,done:o}=await e.next();if(o&&!r)throw new d(wr);i=r,i.size=0,i.maxSize&&(n.maxSize=i.maxSize),n.availableSize=n.maxSize,await Zr(i),s=r.writable,a=s.getWriter(),await this.write(t)}},async close(){a&&(await a.ready,await l())},async abort(e){a&&await a.abort(e)}});async function c(e){const t=e.length;t&&(await a.ready,await a.write(e),i.size+=t,n.availableSize-=t)}async function l(){await a.close()}r.defineProperty(n,xr,{get:()=>o})}}class Ir{constructor(e){return t.isArray(e)&&(e=new qr(e)),e instanceof z&&(e={readable:e}),e}}class Xr{constructor(e){return e.writable===$&&typeof e.next==re&&(e=new Kr(e)),e instanceof D&&(e={writable:e}),e.size===$&&(e.size=0),e instanceof Kr||r.assign(e,{diskNumber:0,diskOffset:0,availableSize:ee,maxSize:ee}),e}}async function Zr(e,t){if(!e.init||e.initialized)return b.resolve();await e.init(t)}function Or(e,t,r,n){return e.readUint8Array(t,r,n)}const Yr="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Gr(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let r=0;rthis[t]=e[t])}}const En="password",Un="rawPassword",Tn="passThrough",Cn="signal",jn="checkAmbiguity",Mn="useWebWorkers",Ln="useCompressionStream",Pn="transferStreams",An="preventClose",Wn="offset",Vn="strictness",qn="strict",Kn="tolerant",In="File format is not recognized",Xn="End of central directory not found",Zn="End of Zip64 central directory locator not found",On="Central directory header not found",Yn="Local file header not found",Gn="Zip64 extra field not found",Jn="File contains encrypted entry",Hn="Encryption method not supported",Bn="Compression method not supported",Qn="Split zip file",Nn="Overlapping entry found",_n="Ambiguous archive",$n="utf-8",ei="cp437",ti=[[Nr,j],[_r,j],[$r,j],[en,M]],ri={[M]:{Se:zi,bytes:4},[j]:{Se:Di,bytes:8}};class ni{constructor(e,t={}){r.assign(this,{reader:new Ir(e),options:t,config:ce(),Fe:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:n}=t;const{config:i}=t;if(await Zr(n),n.size!==$&&n.readUint8Array||(n=new Fr(await new f(n.readable).blob()),await Zr(n)),n.sizee!==$?e:t==qn?0:t==Kn?1/0:M)(gi(t,e,"maxAppendedDataSize"),s),{ke:w,ze:p}=await(async(e,t,r)=>{const{size:n}=e,i=a.min(n,65557),s={count:ui};let o,c,l=0;for await(const[r,a,f,u,d]of hi(e,i)){const i=ki(r,u+20);if(d+X+i==n){const i=await yi(e,r,a,u,d,n,s);if(i==pi){if(o||(o=mi(f,u,d)),l++,!t||l>1)break}else i!=wi||c||(c=mi(f,u,d))}}return o||(o=c),o||(o=await(async(e,t,r)=>{const{size:n}=e,i=a.min(n,t==1/0?n:65557+t);let s,o;for await(const[t,a,c,l,f]of hi(e,i)){const i=mi(c,l,f);s||(s=i);const u=await yi(e,t,a,l,f,n,r);if(u==pi)return i;u!=wi||o||(o=i)}return o||s})(e,r,s)),{ke:o,ze:l}})(n,c,u);if(!w)throw zi(Ri(await Or(n,0,4)))==A?new d(Qn):new d(Xn);c&&p>1&&xi("multiple end of central directory records");const h=Ri(w);let m=zi(h,12),y=zi(h,16);const x=w.offset,g=ki(h,20),v=x+X+g;n.size-v>u&&xi("appended data");let S=ki(h,4);const F=n.ge||0;let z,D,R=ki(h,6),E=ki(h,10),U=0;if(y==j||m==j||E==M||R==M){const e=w.offsete.length||zi(r,0)!=K)&&y!=i&&i>=0){const t=y;y=i,y>t&&(U=y-t),e=await Or(n,y,56,-1),r=Ri(e)}if(56>e.length||zi(r,0)!=K)throw new d(Zn);D=!0,S==M?S=zi(r,16):o&&S!=zi(r,16)&&xi("mismatched zip64 end of central directory record"),R==M?R=zi(r,20):o&&R!=zi(r,20)&&xi("mismatched zip64 end of central directory record"),E==M?E=Di(r,32):o&&E!=Di(r,32)&&xi("mismatched zip64 end of central directory record"),m==j?m=Di(r,40):o&&m!=Di(r,40)&&xi("mismatched zip64 end of central directory record"),y=Di(r,48)+U}}const T=m,C=w.offset-(D?76:0);if(yy)throw new d(In);let P=0,W=await Or(n,y,m,R),q=Ri(W);if(m){if(4>W.length)throw new d(In);const e=C-m-(n.ve||0);if(y!=e&&R==S){let t=!(zi(q,P)==V);if(t||0>e||e+4>n.size||(t=zi(Ri(await Or(n,e,4,R)),0)==V),t){const t=y;y=e,y>t&&(U+=y-t),W=await Or(n,y,m,R),q=Ri(W)}}}const O=C-y-(n.ve||0);if(m==O||0>O||R!=S||(m=O,W=await Or(n,y,m,R),q=Ri(W)),0>y||y>=n.size)throw new d(In);z=y;const Y=gi(t,e,"filenameEncoding"),Q=gi(t,e,"commentEncoding"),N=o?new l:$;let _;for(let s=0;E>s;s++){const c=new ii(n,i,t.options);if(P+46>W.length||zi(q,P)!=V)throw new d(On);si(c,q,P+6);const l=!!c.bitFlag.languageEncodingFlag,u=P+46,w=u+c.filenameLength,p=w+c.extraFieldLength,h=ki(q,P+4),m=!(h>>8),y=h>>8==3,x=W.subarray(u,w),g=ki(q,P+32),v=p+g,S=W.subarray(p,v),F=l,D=l,R=zi(q,P+38),T=R&L,C={readOnly:!!(1&T),hidden:!!(2&T),system:!!(4&T),directory:!!(16&T),archive:!!(32&T)},j=zi(q,P+42),A=gi(t,e,"decodeText")||Gr,K=F?$n:Y||ei,I=D?$n:Q||ei;let X=A(x,K);X===$&&(X=Gr(x,K));let Z=A(S,I);Z===$&&(Z=Gr(S,I)),r.assign(c,{index:s,versionMadeBy:h,msDosCompatible:m,compressedSize:0,uncompressedSize:0,De:g,offset:j,diskNumberStart:ki(q,P+34),internalFileAttributes:ki(q,P+36),externalFileAttributes:R,msdosAttributesRaw:T,msdosAttributes:C,rawFilename:x,filenameUTF8:F,commentUTF8:D,rawExtraField:W.subarray(w,p),rawComment:S,filename:X,comment:Z}),ai(c,c,q,P+6),c.offset+=U,z=a.min(c.offset,z),o&&(N.has(c.filename)&&(_=!0),N.add(c.filename));const O=c.externalFileAttributes>>16&M;c.unixMode===$&&16877&O&&(c.unixMode=O);const ee=!!(c.unixMode&J),te=!!(c.unixMode&H),re=!!(512&c.unixMode),ne=c.unixMode!==$?!!(73&c.unixMode):y&&!!(73&O),ie=c.unixMode!==$&&(61440&c.unixMode)==G,se=(61440&O)==G;r.assign(c,{setuid:ee,setgid:te,sticky:re,unixExternalUpper:O,internalFileAttribute:c.internalFileAttributes,externalFileAttribute:c.externalFileAttributes,executable:ne,directory:ie||se||m&&C.directory||c.filename.endsWith(B)&&!c.uncompressedSize,zipCrypto:c.encrypted&&!c.extraFieldAES});const ae=new Rn(c);ae.getData=(e,r)=>c.getData(e,ae,t.Fe,r),ae.arrayBuffer=async e=>{const r=new k,[n]=await b.all([new f(r.readable).arrayBuffer(),c.getData(r,ae,t.Fe,e)]);return n},P=v;const{onprogress:oe}=e;if(oe)try{await oe(s+1,E,new Rn(c))}catch{}yield ae}o&&P!=T&&xi("trailing central directory data"),_&&xi("duplicate filename"),o&&(U||E&&z>0)&&xi("prepended data");const ee=gi(t,e,"extractPrependedData"),te=gi(t,e,"extractAppendedData");return ee&&(t.prependedData=z>0?await Or(n,0,z):ne),t.comment=g?await Or(n,x+X,g):ne,te&&(t.appendedData=v{const{rawFilename:n}=e;(r.length!=n.length||r.some((e,t)=>e!=n[t]))&&xi("mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&xi("mismatched local file header (general purpose bit flag)"),t.compressionMethod!=e.compressionMethod&&xi("mismatched local file header (compression method)"),t.bitFlag.dataDescriptor||!(t.signature||t.compressedSize||t.uncompressedSize)||t.signature==e.signature&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||xi("mismatched local file header (signature or sizes)")})(i,v,C);const{lastAccessDate:j,creationDate:M}=v;j&&(t.lastAccessDate=j),M&&(t.creationDate=M);const A=i.encrypted&&v.encrypted&&!R,V=A&&!f;if(R||(t.zipCrypto=V),A){if(!V&&f.strength===$)throw new d(Hn);if(!k&&!z)throw new d(Jn)}const q=c+Q+U+E,K=x,I=s.ye({offset:q,size:K,diskNumberStart:l,chunkSize:le(p)}),X=gi(i,n,Cn),Z=gi(i,n,"checkPasswordOnly");let O=gi(i,n,"checkOverlappingEntry");const Y=gi(i,n,"checkOverlappingEntryOnly");Y&&(O=!0);const{onstart:G,onprogress:J,onend:H}=n,B=9==w;let N=gi(i,n,Ln);B&&(N=!1);const _={options:{codecType:Pt,password:k,rawPassword:z,zipCrypto:V,encryptionStrength:f&&f.strength,signed:gi(i,n,"checkSignature")&&!R,passwordVerification:V&&(g?y>>>8&L:m>>>24&L),outputSize:R?x:b,signature:m,compressed:0!=w&&!R,encrypted:A,useWebWorkers:gi(i,n,Mn),useCompressionStream:N,transferStreams:gi(i,n,Pn),deflate64:B,checkPasswordOnly:Z},config:p,re:{signal:X,size:K,onstart:G,onprogress:J,onend:H}};let ee;O&&await(async({reader:e,Re:t,index:r,offset:n,diskNumberStart:i,signature:s,compressedSize:o,uncompressedSize:c,Ee:l,dataDescriptor:f,extraFieldZip64:u,Fe:w})=>{let p=0;if(i&&e.xe)for(let t=0;t>1,dataDescriptor:!(8&~i),languageEncodingFlag:(i&Y)==Y},rawLastModDate:a,lastModDate:vi(a),filenameLength:ki(t,n+22),extraFieldLength:ki(t,n+24)})}function ai(e,t,n,i,s){const{rawExtraField:a}=t,l=t.extraField=new c,f=Ri(new w(a));let u=0;try{for(;u{t.zip64=!0;const r=Ri(e.data),n=ti.filter(([e,r])=>t[e]==r),i=n.reduce((e,[,t])=>e+ri[t].bytes,0);if(e.data.length=7?(((e,t,n)=>{const i=Ri(e.data),s=Fi(i,4);r.assign(e,{Te:Fi(i,0),vendorId:Fi(i,2),strength:s,originalCompressionMethod:n,compressionMethod:ki(i,5)}),t.compressionMethod=e.compressionMethod})(b,t,p),t.extraFieldAES=b):t.compressionMethod=p;const x=l.get(10);x&&(((e,t)=>{const n=Ri(e.data);let i,s=4;try{for(;s{if(!e.data.length)return;const n=Ri(e.data),i=Fi(n,0),s=[],a=[];r?(1&~i||(s.push(tn),a.push(rn)),2&~i||(s.push(nn),a.push("rawLastAccessDate")),4&~i||(s.push(sn),a.push(an))):5>e.data.length||(s.push(tn),a.push(rn));let c=1;s.forEach((r,i)=>{if(e.data.length>=c+4){const s=zi(n,c);t[r]=e[r]=new o(1e3*(0|s));const l=a[i];e[l]=s}c+=4})})(v,t,s),t.extraFieldExtendedTimestamp=v);const S=l.get(6534);S&&(t.extraFieldUSDZ=S)}function oi(e,t,n,i,s){if(5>e.data.length)return void(e.valid=!1);const a=Ri(e.data),o=new Ue;o.append(s[n]);const c=Ri(new w(4));c.setUint32(0,o.get(),!0);const l=zi(a,1);r.assign(e,{version:Fi(a,0),[t]:Gr(e.data.subarray(5)),valid:!s.bitFlag.languageEncodingFlag&&l==zi(c,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function ci(e,t,n){try{const i=Ri(new w(e.data));let s,a;if(n){let t=0;const n=Fi(i,t++),o=Fi(i,t++);s=li(e.data.subarray(t,t+o)),t+=o;const c=Fi(i,t++);a=li(e.data.subarray(t,t+c)),r.assign(e,{version:n,uid:s,gid:a})}else 4>e.data.length||(s=ki(i,0),a=ki(i,2),r.assign(e,{uid:s,gid:a}));s!==$&&(t.uid=s),a!==$&&(t.gid=a)}catch{}}function li(e){const t=new w(4);return t.set(e,0),new m(t.buffer,t.byteOffset,4).getUint32(0,!0)}function fi(e,t){return e===$?t?qn:"balanced":e}const ui=64,di=0,wi=1,pi=2;async function*hi(e,t){const r=e.size-t,n=await Or(e,r,t),i=Ri(n);for(let e=n.length-X;e>=0;e--)zi(i,e)==q&&(yield[i,r,n,e,r+e])}function mi(e,t,r){return{offset:r,buffer:e.slice(t,t+X).buffer}}async function yi(e,t,r,n,i,s,a){const o=ki(t,n+10),c=zi(t,n+12),l=zi(t,n+16);if(o==M||c==j||l==j)return await bi(e,t,r,i-Z,s,a)==I?pi:di;if(!o&&!c)return wi;for(const n of[i-c,l])if(await bi(e,t,r,n,s,a)==V)return pi;return di}async function bi(e,t,r,n,i,s){return 0>n||n+4>i?$:r>n?s.count>0?(s.count--,zi(Ri(await Or(e,n,4)),0)):$:zi(t,n-r)}function xi(e){const t=new d(_n);throw t.reason=e,t}function gi(e,t,r){return t[r]===$?e.options[r]:t[r]}function vi(e){const t=(4294901760&e)>>16,r=e&M;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&r)>>11,(2016&r)>>5,2*(31&r),0)}catch{}}function Si(e){return new o(i(e/s(1e4)-s(116444736e5)))}function Fi(e,t){return e.getUint8(t)}function ki(e,t){return e.getUint16(t,!0)}function zi(e,t){return e.getUint32(t,!0)}function Di(e,t){return i(e.getBigUint64(t,!0))}function Ri(e){return new m(e.buffer,e.byteOffset,e.byteLength)}const Ei="File already exists",Ui="Zip file comment exceeds 64KB",Ti="File entry comment exceeds 64KB",Ci="File entry name exceeds 64KB",ji="Version exceeds 65535",Mi="The strength must equal 1, 2, or 3",Li="Extra field type exceeds 65535",Pi="Extra field data exceeds 64KB",Ai=-2147483648,Wi=2147483647,Vi="Zip64 is not supported (set the 'zip64' option to 'true')",qi="Undefined uncompressed size",Ki="Undefined reader",Ii="Zip file not empty",Xi=new w([7,0,2,0,65,69,3,0,0]),Zi="infozip",Oi="unix";let Yi=0;const Gi=[];class Ji{constructor(e,t={}){const n=(e=new Xr(e)).availableSize!==$&&e.availableSize>0&&e.availableSize!==ee&&e.maxSize!==$&&e.maxSize>0&&e.maxSize!==ee;r.assign(this,{writer:e,Ce:n,options:t,config:ce(),files:new c,je:new l,offset:t[Wn]===$?e.size||e.writable.size||0:t[Wn],Me:t[Wn]===$?0:t[Wn]-(e.size||e.writable.size||0),Le:new l,Pe:0,Ae:$})}async prependZip(e){if(this.je.size)throw new d(Ii);e=new Ir(e),await Zr(e);const t=new ni(e.readable),n=await t.getEntries();await t.close(),await Zr(this.writer),await e.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=e.size,this.je=new l(n.map(e=>e.filename)),this.files=new c(n.map(e=>{const{version:t,rawLastModDate:n,lastAccessDate:i,creationDate:s,rawFilename:a,bitFlag:o,encrypted:c,uncompressedSize:l,compressedSize:f,diskOffset:u,diskNumber:d,zip64:w}=e;let{compressionMethod:p,We:h,Ve:m,qe:y,Ke:b,Ie:x,rawExtraField:g}=e;const{level:v,languageEncodingFlag:S,dataDescriptor:F}=o;h=h||ne,m=m||ne,y=y||ne,b=b||ne,x=x||ne,g=g||ne,e.extraFieldAES&&(p=99);const k=us(h,m,y,b,x,g),z=w&&l>=j,D=w&&f>=j,R=-7&ws(v,S,F,c,p)|v<<1,{Xe:E,Ze:U}=ds({version:t,bitFlag:R,compressionMethod:p,uncompressedSize:l,compressedSize:f,rawLastModDate:n,rawFilename:a,Oe:D,Ye:z,extraFieldLength:k}),{signature:T}=e;return T!==$&&os(U,10,T),r.assign(e,{Ye:z,Oe:D,Ge:w&&this.offset-u>=j,Je:w&&d>=M,We:h,Ve:m,qe:y,Ke:b,Ie:x,rawExtraField:g,extendedTimestamp:y.length>0||b.length>0,He:1+(i?2:0)+(s?4:0),Xe:E,Ze:U}),[e.filename,e]}))}async add(e="",t,n={}){const i=this;n=r.assign({},n);const{Le:a,config:c}=i;let l,f;YiGi.push(e));try{if(e=e.trim(),is(i,n,yn)&&!e.endsWith(B)&&(e+=B),i.je.has(e))throw new d(Ei);return i.je.add(e),f=!0,l=(async(e,t,n,i)=>{const a=((e,t,r)=>{t=t.trim();let n=is(e,r,un),i=is(e,r,hn,n?20:768);const s=is(e,r,bn),a=is(e,r,"uid"),o=is(e,r,"gid");let c=is(e,r,Sn),l=is(e,r,"unixExtraFieldType"),f=is(e,r,Fn),u=is(e,r,kn),w=is(e,r,zn);if(a!==$&&(0>a||a>j))throw new d("Invalid uid (must be integer 0..2^32-1)");if(o!==$&&(0>o||o>j))throw new d("Invalid gid (must be integer 0..2^32-1)");if(c!==$&&(0>c||c>M))throw new d("Invalid UNIX mode (must be integer 0..65535)");if(l!==$&&l!==Zi&&l!==Oi)throw new d("Invalid unixExtraFieldType (must be 'infozip' or 'unix')");if(l===Oi&&(a!==$&&a>M||o!==$&&o>M))throw new d("uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)");l!==$||a===$&&o===$||(l=Zi);let p=is(e,r,ln),h=is(e,r,fn);const m=p!==$||h!==$;if(a!==$||o!==$||c!==$||l?(n=!1,i=i&M|768):m&&(n=!0,i&=L),p!==$&&(0>p||p>L))throw new d("Invalid msdosAttributesRaw (must be integer 0..255)");if(h&&"object"!=typeof h)throw new d("Invalid msdosAttributes (must be an object with boolean flags)");if(i>M)throw new d(ji);let y=is(e,r,cn,0);!r[yn]&&t.endsWith(B)&&(r[yn]=!0);const b=is(e,r,yn);let x;return b?(t.endsWith(B)||(t+=B),0===y&&(y=16,n||(y|=16877<<16))):n||0!==y||(y=s?493<<16:27525120),n||(x=y>>16&M,c=c===$?x:c&M,f?c|=J:f=!!(c&J),u?c|=H:u=!!(c&H),w?c|=512:w=!!(512&c),b&&(c|=G),y=(c&M)<<16|y&L),({msdosAttributesRaw:p,msdosAttributes:h}=((e,t)=>{if(e!==$)e&=L;else if(t!==$){const{readOnly:r,hidden:n,system:i,directory:s,archive:a}=t;let o=0;r&&(o|=1),n&&(o|=2),i&&(o|=4),s&&(o|=16),a&&(o|=32),e=o&L}return t===$&&(t={readOnly:!!(1&e),hidden:!!(2&e),system:!!(4&e),directory:!!(16&e),archive:!!(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}})(p,h)),m&&(y=y&j|p&L),{name:t,Be:{versionMadeBy:i,msDosCompatible:n,externalFileAttributes:y,unixExternalUpper:x,uid:a,gid:o,unixMode:c,unixExtraFieldType:l,setuid:f,setgid:u,sticky:w,msdosAttributesRaw:p,msdosAttributes:h}}})(e,t,i);({name:t}=a);const c=((e,t,r)=>{const n=is(e,r,"encodeText",Ce);let i=n(t);if(i===$&&(i=Ce(t)),us(i)>M)throw new d(Ci);const s=r[Br]||"";let a=n(s);if(a===$&&(a=Ce(s)),us(a)>M)throw new d(Ti);const c=is(e,r,pn,20);if(c>M)throw new d(ji);const l=is(e,r,tn,new o),f=is(e,r,nn),u=is(e,r,sn),p=is(e,r,on,0),h=is(e,r,Tn);let m,y;h||(m=is(e,r,En),y=is(e,r,Un));const b=is(e,r,"encryptionStrength",3),x=is(e,r,mn),g=is(e,r,"extendedTimestamp",!0),v=is(e,r,"keepOrder",!0),S=is(e,r,Mn),F=is(e,r,Pn,!0),k=is(e,r,"bufferedWrite"),z=is(e,r,"createTempStream"),D=is(e,r,"dataDescriptorSignature",!0),R=is(e,r,Cn),E=is(e,r,"useUnicodeFileNames",!0),U=is(e,r,xn);if(!h&&U!==$&&0!==U&&8!==U)throw new d("Compression method not supported");let T=is(e,r,"level"),C=is(e,r,Ln),j=is(e,r,"dataDescriptor");k&&j===$&&(j=!1),(j===$||x)&&(j=!0),T!==$&&6!=T&&(C=!1),C||e.config.CompressionStream!==$||e.config.CompressionStreamZlib!==$||(T=0);const L=is(e,r,dn);if(!x&&(m!==$||y!==$)&&(1>b||b>3))throw new d(Mi);let P=ne;const A=r[vn];if(A){let e=0,t=0;A.forEach(t=>e+=4+us(t)),P=new w(e);const r=fs(P);A.forEach((e,n)=>{if(n>M)throw new d(Li);if(us(e)>M)throw new d(Pi);as(r,t,n),as(r,t+2,us(e)),ls(P,e,t+4),t+=4+us(e)})}return{comment:s,Be:{rawFilename:i,rawComment:a,version:c,lastModDate:l,lastAccessDate:f,creationDate:u,internalFileAttributes:p,passThrough:h,password:m,rawPassword:y,encryptionStrength:b,zipCrypto:x,extendedTimestamp:g,keepOrder:v,useWebWorkers:S,transferStreams:F,bufferedWrite:k,createTempStream:z,dataDescriptorSignature:D,signal:R,useUnicodeFileNames:E,compressionMethod:U,level:T,useCompressionStream:C,dataDescriptor:j,zip64:L,rawExtraField:P}}})(e,t,i),{comment:l}=c,f=i[vn];let u;e.files.set(t,$);try{const o=await(async(e,t,{Be:r},n)=>{const{passThrough:i,zipCrypto:s,password:a,rawPassword:o,encryptionStrength:c}=r;let{dataDescriptor:l,zip64:f,level:u,compressionMethod:w}=r,p=0,h=0;if(i){if(!t)throw new d(Ki);if(h=n[Nr],h===$)throw new d(qi)}const m=!0===f,y=is(e,n,wn),b=!!t&&(!!(a&&us(a)||o&&us(o))||i&&y);t||(u=0,w=0);const x=b?s?12:16+4*c:0;t&&(t=new Ir(t),await Zr(t),i?(n.uncompressedSize=h,p=ss(h)+x):t.size===$?(l=!0,(f||f===$)&&(f=!0,h=p=4294967296)):(n.uncompressedSize=h=t.size,p=ss(h)+x));const g=m||h>=j,v=m||p>=j;if(g||v){if(!1===f)throw new d(Vi);f=!0}return f=f||!1,{reader:t,Be:{dataDescriptor:l,zip64:f,Ye:g,Oe:v,uncompressedSize:h,level:u,compressionMethod:w,encrypted:b}}})(e,n,c,i);({reader:n}=o);const{diskOffset:l,diskNumber:f}=e.writer,p=(e=>{const{rawFilename:t,lastModDate:r,lastAccessDate:n,creationDate:i,level:s,zip64:a,zipCrypto:o,useUnicodeFileNames:c,dataDescriptor:l,directory:f,rawExtraField:u,encryptionStrength:w,extendedTimestamp:p,passThrough:h,encrypted:m,Ye:y,Oe:b,uncompressedSize:x}=e;let{version:g,compressionMethod:v}=e;const S=!f&&(v===$?s===$||s>0:0!==v);let F;const k=h||!S,z=a&&(e.bufferedWrite||!l||!y&&!b||k),D=z||a&&l&&(y||b);if(a&&(y||b)){const e=20,t=Ni(e);if(t.uint16(1),t.uint16(e-4),F=t.array,z&&(t.Qe(x),k)){const e=m?o?12:16+4*w:0;t.Qe(h?0:x+e)}}else F=ne;let R,E,U,T,C;if(m&&!o){const e=Ni(us(Xi)+2);e.uint16(39169),e.bytes(Xi),R=e.array,R[8]=w}else R=ne;if(p){const e=ts(r);if(rs(e)){const t=9+(n?4:0)+(i?4:0),r=Ni(t);T=1+(n?2:0)+(i?4:0),r.uint16(O),r.uint16(t-4),r.uint8(T),r.uint32(e),n&&r.uint32(ns(ts(n))),i&&r.uint32(ns(ts(i))),U=r.array}else U=ne;try{const e=es(r),t=Ni(36);t.uint16(10),t.uint16(32),t.Ne(4),t.uint16(1),t.uint16(24),t.Qe(e),t.Qe(es(n)||e),t.Qe(es(i)||e),E=t.array}catch{E=ne}}else E=U=ne;try{const{uid:t,gid:r,unixExtraFieldType:n}=e;if(n!=Zi||t===$&&r===$)if(n!=Oi||t===$&&r===$)C=ne;else{const e=Ni(8);e.uint16(30805),e.uint16(4),e.uint16((t===$?0:t)&M),e.uint16((r===$?0:r)&M),C=e.array}else{const e=Qi(t),n=Qi(r),i=3+e.length+n.length,s=Ni(4+i);s.uint16(30837),s.uint16(i),s.uint8(1),s.uint8(e.length),s.bytes(e),s.uint8(n.length),s.bytes(n),C=s.array}}catch{C=ne}v===$&&(v=S?8:0),a&&(g=g>45?g:45),m&&!o&&(g=g>51?g:51,R[9]=v,v=99);const j=D?us(F):0,L=j+us(R,U,E,C,u);if(L>M)throw new d(Pi);const{Xe:A,Ze:W,rawLastModDate:V}=ds({version:g,bitFlag:ws(s,c,l,m,v),compressionMethod:v,uncompressedSize:x,lastModDate:_>r?_:r>N?N:r,rawFilename:t,Oe:b,Ye:y,extraFieldLength:L}),q=Ni(Q+us(t)+L),K=q.array,I=fs(K);return q.uint32(P),q.bytes(A),q.bytes(t),D&&q.bytes(F),q.bytes(R),q.bytes(U),q.bytes(E),q.bytes(C),q.bytes(u),l&&(b||os(I,18,0),y||os(I,22,0)),{_e:K,$e:I,Xe:A,Ze:W,lastModDate:r,rawLastModDate:V,encrypted:m,compressed:S,version:g,compressionMethod:v,He:T,We:ne,et:j,qe:U,Ke:E,Ie:C,Ve:R,extraFieldLength:L}})(i=r.assign({},i,a.Be,c.Be,o.Be,{internalFileAttribute:c.Be.internalFileAttributes,externalFileAttribute:a.Be.externalFileAttributes,signature:i[gn],offset:e.offset-l,diskNumberStart:f})),h=(({zip64:e,dataDescriptor:t,dataDescriptorSignature:r})=>{let n,i=ne,s=0,a=e?20:12;return r&&(a+=4),t&&(i=new w(a),n=fs(i),r&&(s=4,os(n,0,W))),{tt:i,rt:n,nt:s}})(i),m=us(p._e,h.tt);u=await(async(e,t,n,i,a)=>{const{files:o,writer:c}=e,{keepOrder:l,dataDescriptor:f,signal:u}=a,{it:p}=i,h=e.options.usdz,m=e.Ae;let y,x,g,v,S,F,z,R={},E=0;o.set(t,R),e.Ae=R;try{let x;l&&(x=m&&m.lock,R.lock=new b(e=>g=e)),a.bufferedWrite||!l||e.st||e.Pe||!f?(y=!0,e.Pe++,z=a.createTempStream?await a.createTempStream():new k($,$,{highWaterMark:ee}),z.size=0,await Zr(c)):(z=c,await U()),await Zr(z);const{diskOffset:C}=c;if(e.Ce){delete e.Ce;const t=new w(4);os(fs(t),0,A),await $i(c,t),e.offset+=4}h&&!y&&Bi(i,e.offset-C);const{_e:M}=p;y||(await x,await T());const P=c.diskNumber,W=_i(e,c);if(R.diskNumberStart=P,y||(S=!0,F=c.size,await $i(z,M)),R=await(async(e,t,{diskNumberStart:n,lock:i},a,o,c)=>{const{it:l,ot:f,ct:u}=a,{Xe:w,Ze:p,lastModDate:h,rawLastModDate:m,encrypted:y,compressed:b,version:x,compressionMethod:g,We:v,et:S,qe:F,He:k,Ke:z,Ie:D,Ve:R}=l,{tt:E}=f,{rawFilename:U,lastAccessDate:T,creationDate:C,password:M,rawPassword:P,level:A,zip64:W,Ye:V,Oe:q,zipCrypto:K,dataDescriptor:I,directory:X,executable:Z,versionMadeBy:O,rawComment:Y,rawExtraField:G,useWebWorkers:J,transferStreams:H,onstart:B,onprogress:Q,onend:N,signal:_,encryptionStrength:ee,extendedTimestamp:te,msDosCompatible:re,internalFileAttributes:ne,externalFileAttributes:ie,uid:se,gid:ae,unixMode:oe,setuid:ce,setgid:fe,sticky:ue,unixExternalUpper:de,msdosAttributesRaw:we,msdosAttributes:pe,useCompressionStream:he,passThrough:me}=c,ye={lock:i,versionMadeBy:O,zip64:W,directory:!!X,executable:!!Z,filenameUTF8:!0,rawFilename:U,commentUTF8:!0,rawComment:Y,We:v,et:S,qe:F,Ke:z,Ie:D,Ve:R,rawExtraField:G,extendedTimestamp:te,msDosCompatible:re,internalFileAttributes:ne,externalFileAttributes:ie,diskNumberStart:n,uid:se,gid:ae,unixMode:oe,setuid:ce,setgid:fe,sticky:ue,unixExternalUpper:de,msdosAttributesRaw:we,msdosAttributes:pe};let{signature:be,uncompressedSize:xe}=c,ge=0;me||(xe=0);const{writable:ve}=t;if(e){const r=e.ye?e.ye({chunkSize:le(o)}):e.readable,n=e.size,i={options:{codecType:Lt,level:A,rawPassword:P,password:M,encryptionStrength:ee,zipCrypto:y&&K,passwordVerification:y&&K&&m>>8&L,signed:!me,compressed:b&&!me,encrypted:y&&!me,useWebWorkers:J,useCompressionStream:he,transferStreams:H},config:o,re:{signal:_,size:n,onstart:B,onprogress:Q,onend:N}};try{const e=await sr({readable:r,writable:ve},i);if(ge=e.outputSize,t.size+=ge,me||(xe=e.inputSize,be=e.signature),!q&&ge>=j||!V&&xe>=j)throw new d(Vi)}catch(e){throw e.outputSize!==$&&(t.size+=e.outputSize),e}}return(({signature:e,compressedSize:t,uncompressedSize:r,it:n,ot:i},{zip64:a,zipCrypto:o,dataDescriptor:c})=>{const{Ze:l,encrypted:f}=n,{rt:u,nt:d}=i;f&&!o||e===$||(os(l,10,e),c&&os(u,d,e)),a?c&&(cs(u,d+4,s(t)),cs(u,d+12,s(r))):(os(l,14,t),os(l,18,r),c&&(os(u,d+4,t),os(u,d+8,r)))})({signature:be,compressedSize:ge,uncompressedSize:xe,it:l,ot:f},c),I&&await $i(t,E),r.assign(ye,{uncompressedSize:xe,compressedSize:ge,lastModDate:h,rawLastModDate:m,creationDate:C,lastAccessDate:T,encrypted:y,zipCrypto:K,size:u+ge,compressionMethod:g,version:x,Xe:w,Ze:p,signature:be,He:k,Ye:V,Oe:q}),ye})(n,z,R,i,e.config,a),y||(S=!1),o.set(t,R),R.filename=t,y){if(await b.all([z.writable.getWriter().close(),x]),await U(),v=!0,F=c.size,await T(),R.diskNumberStart=c.diskNumber,R.offset=_i(e,c),h){const t=i.ct;Bi(i,e.offset-c.diskOffset),R.size+=i.ct-t}(({rawFilename:e,encrypted:t,zip64:r,et:n,signature:i,compressedSize:a,uncompressedSize:o,Ye:c,Oe:l},f,{dataDescriptor:u})=>{if(u||(t||os(f,14,i),l||os(f,18,a),c||os(f,22,o)),r&&n){const t=Q+us(e)+4;cs(f,t,s(o)),cs(f,t+8,s(a))}})(R,p.$e,a),await $i(c,p._e),await(async(e,t,r)=>{const n=t.writable.getWriter();try{await e.pipeTo(new D({async write(e){var t;await n.ready,await n.write(e),t=us(e),E+=t}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{n.releaseLock()}})(z.readable,c,u),c.size+=z.size,v=!1}else R.diskNumberStart=P,R.offset=W;return e.offset+=R.size,R}catch(r){if(v||S){if(e.hasCorruptedEntries=!0,r)try{r.corruptedEntry=!0}catch{}e.offset+=c.size-F,y&&(e.offset+=E)}throw o.delete(t),r}finally{if(y&&e.Pe--,g&&g(),x&&x(),y&&z&&z.dispose)try{await z.dispose()}catch{}}async function U(){e.st=!0;const{lt:t}=e;e.lt=new b(t=>x=()=>{e.st=!1,t()}),await t}async function T(){us(p._e)>c.availableSize&&(c.availableSize=0,await $i(c,ne))}})(e,t,n,{it:p,ot:h,ct:m},i)}catch(r){throw e.files.delete(t),r}return r.assign(u,{name:t,comment:l,extraField:f}),new Rn(u)})(i,e,t,n),a.add(l),await l}catch(t){throw f&&i.je.delete(e),t}finally{a.delete(l);const e=Gi.shift();e?e():Yi--}}remove(e){const{je:t,files:r}=this;if("string"==typeof e&&(e=r.get(e)),e&&e.filename!==$){const{filename:n}=e;if(t.has(n)&&r.has(n))return t.delete(n),r.delete(n),!0}return!1}async close(e=ne,r={}){const{Le:n,writer:i}=this,{writable:a}=i;if(us(e)>M)throw new d(Ui);for(;n.size;)await b.allSettled(t.from(n));return await(async(e,r,n)=>{const i=(e=>{let t=0;for(const[,r]of e){const{rawFilename:e,Ve:n,rawComment:i,Ke:s,Ie:a,rawExtraField:o,extendedTimestamp:c,He:l,lastModDate:f,Ye:u,Oe:w,uncompressedSize:p,compressedSize:h}=r,m=r.offset>=j,y=r.diskNumberStart>=M;let b,x;if(m||y||u||w){const e=4+(u?8:0)+(w?8:0)+(m?8:0)+(y?4:0),t=Ni(e);t.uint16(1),t.uint16(e-4),u&&t.Qe(p),w&&t.Qe(h),m&&t.Qe(r.offset),y&&t.uint32(r.diskNumberStart),b=t.array}else b=ne;r.We=b,r.Ge=m,r.Je=y;const g=ts(f);if(c&&rs(g)){const e=Ni(9);e.uint16(O),e.uint16(5),e.uint8(l),e.uint32(g),x=e.array}else x=ne;r.qe=x;const v=us(b,n,s,a,x,o);if(v>M)throw new d(Pi);t+=46+us(e,i)+v}return t})(e.files),{ft:a,ut:o}=await(async(e,r,n)=>{const{files:i,writer:s}=e,a=new w(r);await Zr(s);let o=0,c=0,l=s.diskNumber,f=s.diskOffset;for(const[e,r]of t.from(i.values()).entries()){const{offset:t,rawFilename:u,We:d,Ve:w,qe:p,Ke:h,Ie:m,rawExtraField:y,rawComment:b,versionMadeBy:x,Xe:g,Ze:v,Ye:S,Oe:F,Je:k,Ge:z,internalFileAttributes:D,externalFileAttributes:R,diskNumberStart:E,uncompressedSize:U,compressedSize:T}=r,C=us(d,w,p,h,m,y),L=46+us(u,b)+C;o+L-c>s.availableSize&&(await $i(s,a.slice(c,o)),c=o,s.availableSize=0,await $i(s,ne)),0==e&&(l=s.diskNumber,f=s.diskOffset),S||os(v,18,U),F||os(v,14,T),(z||k)&&45>r.version&&as(v,0,45);const P=Ni(L);if(P.uint32(V),P.uint16(x),P.bytes(g.subarray(0,24)),P.uint16(C),P.uint16(us(b)),P.uint16(k?M:E),P.uint16(D),P.uint32(R),P.uint32(z?j:t),P.bytes(u),P.bytes(d),P.bytes(w),P.bytes(p),P.bytes(h),P.bytes(m),P.bytes(y),P.bytes(b),ls(a,P.array,o),o+=L,n.onprogress)try{await n.onprogress(e+1,i.size,new Rn(r))}catch{}}return await $i(s,c?a.slice(c):a),{ft:l,ut:f}})(e,i,n);await(async(e,t,r,n)=>{const{writer:i}=e,{ft:a,ut:o}=n;let{dt:c}=n,l=e.files.size,f=a,u=e.offset-o-(a?e.Me:0),w=i.diskNumber;i.availableSizeu&&j>c&&M>l&&M>w)){if(!1===p)throw new d(Vi);p=!0}const h=us(t);if(h>M)throw new d(Ui);const m=Ni(p?98:X);us(m.array)+h>i.availableSize&&(i.availableSize=0,await $i(i,ne)),w=i.diskNumber,p&&(m.uint32(K),m.Qe(44),m.uint16(45),m.uint16(45),m.uint32(w),m.uint32(f),m.Qe(l),m.Qe(l),m.Qe(c),m.Qe(u),m.uint32(I),m.uint32(w),m.Qe(s(e.offset)+s(c)-s(i.diskOffset)-s(i.diskNumber?e.Me:0)),m.uint32(w+1),is(e,r,"supportZip64SplitFile",!0)&&(w=M,f=M),l=M,u=j,c=j),m.uint32(q),m.uint16(w),m.uint16(f),m.uint16(l),m.uint16(l),m.uint32(c),m.uint32(u),m.uint16(h),await $i(i,m.array),h&&await $i(i,t)})(e,r,n,{ft:a,ut:o,dt:i})})(this,e,r),is(this,r,An)||await a.getWriter().close(),i.getData?i.getData():a}}function Hi(e,t,r){e.Le.add(t),t.catch(e=>{try{r(e)}catch{}})}function Bi(e,t){const{it:r}=e;let{_e:n,extraFieldLength:i}=r,s=64-(t+us(n))%64;4>s&&(s+=64);const a=new w(s),o=fs(a);as(o,0,6534),as(o,2,s-4);const c=n;r._e=n=new w(us(c)+s),ls(n,c),ls(n,a,us(c));const l=fs(n);as(l,28,i+s),r.$e=l,e.ct+=s}function Qi(e){if(e===$)return ne;{const t=new w(4);fs(t).setUint32(0,e,!0);let r=4;for(;r>1&&0===t[r-1];)r--;return t.subarray(0,r)}}function Ni(e){const t=new w(e),r=fs(t);let n=0;return{array:t,uint8:e=>{((e,t,r)=>{e.setUint8(t,r)})(r,n,e),n+=1},uint16:e=>{as(r,n,e),n+=2},uint32:e=>{os(r,n,e),n+=4},Qe:e=>{cs(r,n,s(e)),n+=8},bytes:e=>{ls(t,e,n),n+=us(e)},Ne:e=>n+=e}}function _i(e,t){return e.offset-t.diskOffset-(t.diskNumber?e.Me:0)}async function $i(e,t){const{writable:r}=e,n=r.getWriter();try{await n.ready,e.size+=us(t),await n.write(t)}finally{n.releaseLock()}}function es(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function ts(e){return a.floor(e.getTime()/1e3)}function rs(e){return e>=Ai&&Wi>=e}function ns(e){return a.min(Wi,a.max(Ai,e))}function is(e,t,r,n){const i=t[r]===$?e.options[r]:t[r];return i===$?n:i}function ss(e){return e+5*(a.floor(e/16383)+1)}function as(e,t,r){e.setUint16(t,r,!0)}function os(e,t,r){e.setUint32(t,r,!0)}function cs(e,t,r){e.setBigUint64(t,r,!0)}function ls(e,t,r){e.set(t,r)}function fs(e){return new m(e.buffer,e.byteOffset,e.byteLength)}function us(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function ds({version:e,bitFlag:t,compressionMethod:r,uncompressedSize:n,compressedSize:i,lastModDate:s,rawLastModDate:a,rawFilename:o,Oe:c,Ye:l,extraFieldLength:f}){const u=Ni(26),d=u.array,w=fs(d);if(u.uint16(e),u.uint16(t),u.uint16(r),a===$){const e=new h(1),t=fs(e);as(t,0,(s.getHours()<<6|s.getMinutes())<<5|s.getSeconds()/2),as(t,2,(s.getFullYear()-1980<<4|s.getMonth()+1)<<5|s.getDate()),a=e[0]}return u.uint32(a),u.Ne(4),c||i!==$?u.uint32(c?j:i):u.Ne(4),l||n!==$?u.uint32(l?j:n):u.Ne(4),u.uint16(us(o)),u.uint16(f),{Xe:d,Ze:w,rawLastModDate:a}}function ws(e,t,r,n,i){let s=0;return t&&(s|=Y),r&&(s|=8),8!=i&&9!=i||(0>e||e>3||(s|=6),e>3&&5>=e&&(s|=4),9==e&&(s|=2)),n&&(s|=1),s}const ps=1048576,hs=".zip.js-temp",ms=1048576,ys=1048576,bs=".zip.js-temp";try{fe({baseURI:void 0===v&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===v?location.href:C&&"SCRIPT"===C.tagName.toUpperCase()&&C.src||new u("zip-native.min.js",v.baseURI).href})}catch{}var{Uint8Array:xs,Uint16Array:gs,Int32Array:vs,TransformStream:Ss,Math:Fs,Error:ks,Array:zs}=globalThis,Ds=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],Rs=new xs(0),Es=new gs(0),Us=[];for(let e=0;6>e;e++)Us.push(e,0==e?8:4);Us.push(0,1);var Ts=[];for(let e=0;14>e;e++)Ts.push(e,0==e?4:2);var Cs=new gs([0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576]),js=new gs([0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0]);function Ms(e,t,r,n,i){if(0==i)return;let s=e instanceof xs?e:new xs(e.buffer,e.byteOffset,e.byteLength),a=r instanceof xs?r.subarray(n,n+i):new xs(r.buffer,r.byteOffset+n,i);s.set(a,t)}function Ls(e,t,r){0!=r&&(e instanceof xs?e:new xs(e.buffer,e.byteOffset,e.byteLength)).fill(0,t,t+r)}function Ps(){return{wt:Rs,ht:0,yt:0,bt:0,xt:Rs,gt:0,vt:0,St:0,Ft:"",t:0,kt:0,zt:0,Dt:void 0}}function As(e,t){let r=1<e;e++)t.push(n)}return new gs(t)}var Vs=class{constructor(e,t){this.Pt=e,this.At=t,this.Wt=0}},qs=class{constructor(e,t,r,n,i){this.Vt=e,this.qt=t,this.Kt=r,this.It=n,this.Xt=i}};function Ks(e){return wa[-6>e||e>2?9:2-e]||""}function Is(e,t){try{e.Ft=Ks(t)}catch(r){e.Ft="zlib error "+n(t)+" ("+r+")"}return t}function Xs(e,t){let r=e>>>0,n=0;for(let e=0;t>e;e++)n=n<<1|1&r,r>>>=1;return n}function Zs(e,t){e.Zt[e.Ot++]=t}function Os(e,t){Zs(e,255&t),Zs(e,t>>>8&255)}function Ys(e,t,r){let n=255&r,i=65535&t,s=e.Yt+e.Gt;return e.Zt[s]=255&i,e.Zt[s+1]=i>>>8&255,e.Zt[s+2]=n,e.Gt+=3,i=i-1&65535,e.Ht[va[n]+sa+1].Jt++,e.Bt[Hs(i)].Jt++,e.Gt==e.Qt}function Gs(e,t){let r=255&t,n=e.Yt+e.Gt;return e.Zt[n]=0,e.Zt[n+1]=0,e.Zt[n+2]=r,e.Gt+=3,e.Ht[r].Jt++,e.Gt==e.Qt}function Js(e){return e.Ut-na}function Hs(e){return 256>e?Sa[e]:Sa[256+(e>>7)]}function Bs(e){let t=ea+7,r=1<({Jt:0,Or:0,Yr:0,Gr:0})),Bt:new zs(2*oa+1).fill(0).map(()=>({Jt:0,Or:0,Yr:0,Gr:0})),Jr:new zs(2*ca+1).fill(0).map(()=>({Jt:0,Or:0,Yr:0,Gr:0})),Hr:_s(),Br:_s(),Qr:_s()}}function Qs(e){let t=[];for(let r=0;rnew qs(null,t,0,0,0))(0,Rs))}function $s(e){let{code:t,length:r}=(e=>{let t=Fs.max(...e),r=new zs(t+1).fill(0);for(let t of e)t>0&&r[t]++;let n=new zs(e.length).fill(0),i=new zs(t+1).fill(0),s=0;for(let e=1;t>=e;e++)s=s+r[e-1]<<1,i[e]=s;for(let t=0;t{let e=new zs(288).fill(0);for(let t=0;143>=t;t++)e[t]=8;for(let t=144;255>=t;t++)e[t]=9;for(let t=256;279>=t;t++)e[t]=7;for(let t=280;287>=t;t++)e[t]=8;return e})()),ba=$s(new zs(30).fill(5)),xa=Qs(ya),ga=Qs(ba),va=((e,t)=>{let r=0;for(let n=0;nr&&(r=s)}258>r&&(r=258);let n=new xs(r+1);for(let i=0;r>=i;i++)for(let r=0;r=a&&a+s-1>=i){n[i]=r;break}}let i=0;for(let r=0;ri&&(i=s)}return n[i]=e.length-1,n})(js,pa),Sa=(e=>{let t=new xs(512),r=e.length-1;for(let n=0;256>n;n++)t[n]=n>r?e[r]:e[n];for(let n=256;r>=n;n++){let r=n>>7;t[256+(r>255?255:r)]=e[n]}for(let e=257;512>e;e++)0==t[e]&&(t[e]=t[e-1]);return t})(((e,t)=>{let r=0;for(let n=0;nr&&(r=s)}let n=new xs(r+1);for(let i=0;r>=i;i++)for(let r=0;r=a&&a+s-1>=i){n[i]=r;break}}return n})(Cs,ha));function Fa(e,t,r){if(void 0===t||void 0===r)return 1;let n=65535&e,i=e>>>16&65535,s=0;for(;r>0;){let e=r>2e3?2e3:r;r-=e;do{n=n+t[s++]|0,i=i+n|0}while(--e);n%=65521,i%=65521}return(i<<16|n)>>>0}var ka=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?3988292384^t>>>1:t>>>1;ka[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){let r=ka[t-1][e];ka[t][e]=r>>>8^ka[0][255&r]}var[za,Da,Ra,Ea,Ua,Ta,Ca,ja]=ka;function Ma(e=0,t,r){if(!t)return 0;void 0===r&&(r=t.length);let n=0|~e,i=0;if((r=Fs.min(r,t.length))>=8){let e=new m(t.buffer,t.byteOffset,r),s=r-8;for(;s>=i;i+=8){let t=n^e.getInt32(i,!0),r=e.getInt32(i+4,!0);n=ja[255&t]^Ca[t>>>8&255]^Ta[t>>>16&255]^Ua[t>>>24&255]^Ea[255&r]^Ra[r>>>8&255]^Da[r>>>16&255]^za[r>>>24&255]}}for(;r>i;i++)n=n>>>8^za[255&(n^t[i])];return(4294967295^n)>>>0}function La(e){16==e.Lt?(Os(e,e.Mt),e.Mt=0,e.Lt=0):e.Lt>=8&&(Zs(e,e.Mt),e.Mt>>=8,e.Lt-=8)}function Pa(e){e.Lt>8?Os(e,e.Mt):e.Lt>0&&Zs(e,e.Mt),e.Wr=1+(e.Lt-1&7),e.Mt=0,e.Lt=0}function Aa(e,t,r){e.Lt>16-r?(e.Mt=65535&(e.Mt|t<>16-e.Lt&65535,e.Lt+=r-16):(e.Mt=65535&(e.Mt|t<r;r++)0!=s[r].Jt?(e.Mr[++e.Xr]=c=r,e.Lr[r]=0):s[r].Gr=0;for(;2>e.Xr;)i=e.Mr[++e.Xr]=2>c?++c:0,s[i].Jt=1,e.Lr[i]=0,e.wr--,a&&(e.pr-=a[i].Gr);for(t.Wt=c,r=Fs.floor(e.Xr/2);r>=1;r--)Ka(e,s,r);i=o;do{r=Va(e,s,r),n=e.Mr[1],e.Mr[--e.Zr]=r,e.Mr[--e.Zr]=n,s[i].Jt=s[r].Jt+s[n].Jt,e.Lr[i]=(e.Lr[r]=2);e.Mr[--e.Zr]=e.Mr[1],((e,t)=>{let r,n,i,s,a,o,c=t.Pt,l=t.Wt,f=t.At.Vt,u=t.At.qt,d=t.At.Kt,w=t.At.Xt,p=0;for(s=0;fa>=s;s++)e.Pr[s]=0;for(c[e.Mr[e.Zr]].Gr=0,r=e.Zr+1;la>r;r++)n=e.Mr[r],s=c[c[n].Yr].Gr+1,s>w&&(s=w,p++),c[n].Gr=s,l>=n&&(e.Pr[s]++,a=0,n>=d&&(a=u[n-d]),o=c[n].Jt,e.wr+=o*(s+a),f&&(e.pr+=o*(f[n].Gr+a)));if(0!=p){do{for(s=w-1;0==e.Pr[s];)s--;e.Pr[s]--,e.Pr[s+1]+=2,e.Pr[w]--,p-=2}while(p>0);for(s=w;0!=s;s--)for(n=e.Pr[s];0!=n;)i=e.Mr[--r],l>=i&&(c[i].Gr!=s&&(e.wr+=(s-c[i].Gr)*c[i].Jt,c[i].Gr=s),n--)}})(e,t),((e,t,r)=>{let n,i,s=[],a=0;for(n=1;fa>=n;n++)a=a+r[n-1]<<1,s[n]=a;for(i=0;t>=i;i++){let t=e[i].Gr;0!=t&&(e[i].Or=Xs(s[t]++,t))}})(s,t.Wt,e.Pr)}function Xa(e,t,r){let n,i,s=-1,a=t[0].Gr,o=0,c=7,l=4;for(0==a&&(c=138,l=3),t[r+1].Gr=65535,n=0;r>=n;n++)i=a,a=t[n+1].Gr,(++o>=c||i!=a)&&(l>o?e.Jr[i].Jt+=o:0!=i?(i!=s&&e.Jr[i].Jt++,e.Jr[16].Jt++):o>10?e.Jr[18].Jt++:e.Jr[17].Jt++,o=0,s=i,0==a?(c=138,l=3):i==a?(c=6,l=3):(c=7,l=4))}function Za(e,t,r){let n,i=-1,s=t[0].Gr,a=0,o=7,c=4;0==s&&(o=138,c=3);for(let l=0;r>=l;l++)if(n=s,s=t[l+1].Gr,++a>=o||n!=s){if(c>a)do{Aa(e,e.Jr[n].Or,e.Jr[n].Gr)}while(0!=--a);else 0!=n?(n!=i&&(Aa(e,e.Jr[n].Or,e.Jr[n].Gr),a--),Aa(e,e.Jr[16].Or,e.Jr[16].Gr),Aa(e,a-3,2)):a>10?(Aa(e,e.Jr[18].Or,e.Jr[18].Gr),Aa(e,a-11,7)):(Aa(e,e.Jr[17].Or,e.Jr[17].Gr),Aa(e,a-3,3));a=0,i=n,0==s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4)}}function Oa(e,t,r,n,i=0){Aa(e,0+n,3),Pa(e),Os(e,r),Os(e,~r),r&&t&&Ms(e.Zt,e.Ot,t,i,r),e.Ot+=r}function Ya(e,t,r){let n,i,s,a,o=0;if(0!=e.Gt)do{n=255&e.Ar[o],n+=(255&e.Ar[o+1])<<8,i=e.Ar[o+2],o+=3,0==n?Aa(e,t[i].Or,t[i].Gr):(s=va[i],Aa(e,t[s+sa+1].Or,t[s+sa+1].Gr),a=pa[s],0!=a&&(i-=js[s],Aa(e,i,a)),n--,s=Hs(n),Aa(e,r[s].Or,r[s].Gr),a=ha[s],0!=a&&(n-=Cs[s],Aa(e,n,a)))}while(o4?9:0)}function Ha(e,t,r){return((t<>>0}function Ba(e,t){e.Dr=Ha(e,e.Dr,e.Et[t+(ta-1)]);let r=e.sr[t&e.er]=e.ar[e.Dr];return e.ar[e.Dr]=t,r}function Qa(e){e.ar[e.rr-1]=0,Ls(e.ar,0,(e.rr-1)*e.ar.BYTES_PER_ELEMENT)}function Na(e){let t,r,n=e.Ut;for(t=e.rr;t>0;)t--,r=e.ar[t],e.ar[t]=n>r?0:r-n;for(t=n;t>0;)t--,r=e.sr[t],e.sr[t]=n>r?0:r-n}function _a(e,t,r,n){let i=e.yt;return i>n&&(i=n),0==i?0:(e.yt-=i,Ms(t,r,e.wt,e.ht,i),1==e.Dt._t?e.kt=Fa(e.kt,new xs(t.buffer,t.byteOffset+r,i),i):2==e.Dt._t&&(e.kt=Ma(e.kt,new xs(t.buffer,t.byteOffset+r,i),i)),e.ht+=i,e.bt+=i,i)}function $a(e){let t,r,n=e.Ut;do{if(r=e.Kr-e.vr-e.gr,0==r&&0==e.gr&&0==e.vr?r=n:-1==r&&r--,e.gr>=n+Js(e)&&(Ms(e.Et,0,e.Et,n,n-r),e.Ir-=n,e.gr-=n,e.br-=n,e.mr>e.gr&&(e.mr=e.gr),Na(e),r+=n),0==e.Rt.yt)break;if(t=_a(e.Rt,e.Et,e.gr+e.vr,r),e.vr+=t,e.vr+e.mr>=ta){let t=e.gr-e.mr;for(e.Dr=e.Et[t],e.Dr=Ha(e,e.Dr,e.Et[t+1]);e.mr&&(e.Dr=Ha(e,e.Dr,e.Et[t+ta-1]),e.sr[t&e.er]=e.ar[e.Dr],e.ar[e.Dr]=t,t++,e.mr--,e.vr+e.mr>=ta););}}while(e.vria&&(t=ia),Ls(e.Et,r,t),e.Ct=r+t):e.Cte.Kr-e.Ct&&(t=e.Kr-e.Ct),Ls(e.Et,e.Ct,t),e.Ct+=t)}}function eo(e){if(null==e)return!0;let t=e.Dt;return!t||t.Rt!=e||42!=t.Nt&&57!=t.Nt&&69!=t.Nt&&73!=t.Nt&&91!=t.Nt&&103!=t.Nt&&113!=t.Nt&&666!=t.Nt}function to(e,t){Zs(e,t>>8),Zs(e,255&t)}function ro(e){let t,r=e.Dt;(e=>{La(e)})(r),t=r.Ot,t>e.vt&&(t=e.vt),0!=t&&(Ms(e.xt,e.gt,r.Zt,r.dr,t),e.gt+=t,r.dr+=t,e.St+=t,e.vt-=t,r.Ot-=t,0==r.Ot&&(r.dr=r.lr))}function no(e,t){let r=e.Dt;r.$t&&r.$t.rn&&(e.kt=Ma(e.kt,new xs(r.Zt.buffer,r.lr+t,r.Ot-t),r.Ot-t))}function io(e,t){let r,n=e.Dt;if(eo(e)||t>5||0>t)return Is(e,-2);if(!e.xt||0!=e.yt&&!e.wt||666==n.Nt&&4!=t)return Is(e,-2);if(0==e.vt)return Is(e,-5);if(r=n.yr,n.yr=t,0!=n.Ot){if(ro(e),0==e.vt)return n.yr=da,0}else if(0==e.yt&&Ja(t)<=Ja(r)&&4!=t)return Is(e,-5);if(666==n.Nt&&0!=e.yt)return Is(e,-5);if(42==n.Nt&&0==n._t&&(n.Nt=113),42==n.Nt){let t,r=8+(n.Tt-8<<4)<<8;if(t=n.Er>=2||2>n.Rr?0:6>n.Rr?1:6==n.Rr?2:3,r|=t<<6,0!=n.gr&&(r|=32),r+=31-r%31,to(n,r),0!=n.gr&&(to(n,e.kt>>16),to(n,65535&e.kt)),e.kt=1,n.Nt=113,ro(e),0!=n.Ot)return n.yr=da,0}if(57==n.Nt)if(e.kt=Ma(0),Zs(n,31),Zs(n,139),Zs(n,8),n.$t)Zs(n,(n.$t.nn?1:0)+(n.$t.rn?2:0)+(null==n.$t.sn?0:4)+(null==n.$t.an?0:8)+(null==n.$t.cn?0:16)),Zs(n,255&n.$t.ln),Zs(n,n.$t.ln>>>8&255),Zs(n,n.$t.ln>>>16&255),Zs(n,n.$t.ln>>>24&255),Zs(n,9==n.Rr?2:n.Er>=2||2>n.Rr?4:0),Zs(n,255&n.$t.fn),null!=n.$t.sn&&(Zs(n,255&n.$t.un),Zs(n,n.$t.un>>>8&255)),n.$t.rn&&(e.kt=Ma(e.kt,n.Zt,n.Ot)),n.Vr=0,n.Nt=69;else if(Zs(n,0),Zs(n,0),Zs(n,0),Zs(n,0),Zs(n,0),Zs(n,9==n.Rr?2:n.Er>=2||2>n.Rr?4:0),Zs(n,255),n.Nt=113,ro(e),0!=n.Ot)return n.yr=da,0;if(69==n.Nt){if(n.$t&&null!=n.$t.sn){let t=n.Ot,r=(65535&n.$t.un)-n.Vr;for(;n.Ot+r>n.ur;){let i=n.ur-n.Ot;if(Ms(n.Zt,n.Ot,n.$t.sn,n.Vr,i),n.Ot=n.ur,no(e,t),n.Vr+=i,ro(e),0!=n.Ot)return n.yr=da,0;t=0,r-=i}Ms(n.Zt,n.Ot,n.$t.sn,n.Vr,r),n.Ot+=r,no(e,t),n.Vr=0}n.Nt=73}if(73==n.Nt){if(n.$t&&n.$t.an&&n.$t.an.length){let t,r=n.Ot;do{if(n.Ot==n.ur){if(no(e,r),ro(e),0!=n.Ot)return n.yr=da,0;r=0}t=n.$t.an[n.Vr++],Zs(n,t)}while(0!=t);no(e,r),n.Vr=0}n.Nt=91}if(91==n.Nt){if(n.$t&&n.$t.cn&&n.$t.cn.length){let t,r=n.Ot;do{if(n.Ot==n.ur){if(no(e,r),ro(e),0!=n.Ot)return n.yr=da,0;r=0}t=n.$t.cn[n.Vr++],Zs(n,t)}while(0!=t);no(e,r)}n.Nt=103}if(103==n.Nt){if(n.$t&&n.$t.rn){if(n.Ot+2>n.ur&&(ro(e),0!=n.Ot))return n.yr=da,0;Zs(n,255&e.kt),Zs(n,e.kt>>>8&255),e.kt=Ma(0)}if(n.Nt=113,ro(e),0!=n.Ot)return n.yr=da,0}if(0!=e.yt||0!=n.vr||0!=t&&666!=n.Nt){let r=0==n.Rr?uo(n,t):2==n.Er?((e,t)=>{let r=!1;for(;;){if(0==e.vr&&($a(e),0==e.vr)){if(0==t)return 0;break}if(e.Sr=0,r=Gs(e,e.Et[e.gr]),e.vr--,e.gr++,r){let t=co(e,!1);if(null!=t)return t}}if(e.mr=0,4==t)return co(e,!0)??3;if(e.Gt){let t=co(e,!1);if(null!=t)return t}return 1})(n,t):3==n.Er?((e,t)=>{let r,n,i,s;for(;;){if(e.vr<=ra){if($a(e),e.vr<=ra&&0==t)return 0;if(0==e.vr)break}if(e.Sr=0,e.vr>=ta&&e.gr>0&&(i=e.gr-1,n=e.Et[i],n==++i&&n==++i&&n==++i)){s=e.gr+ra;do{}while(n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&s>i);e.Sr=ra-(s-i),e.Sr>e.vr&&(e.Sr=e.vr)}if(e.Sr{Aa(e,2,3),Aa(e,xa[ua].Or,xa[ua].Gr),La(e)})(n):5!=t&&(Oa(n,null,0,0),3==t&&(Qa(n),0==n.vr&&(n.gr=0,n.br=0,n.mr=0))),ro(e),0==e.vt))return n.yr=da,0}return 4!=t?0:n._t>0?(2==n._t?(Zs(n,255&e.kt),Zs(n,e.kt>>>8&255),Zs(n,e.kt>>>16&255),Zs(n,e.kt>>>24&255),Zs(n,255&e.bt),Zs(n,e.bt>>>8&255),Zs(n,e.bt>>>16&255),Zs(n,e.bt>>>24&255)):(to(n,e.kt>>>16&65535),to(n,65535&e.kt)),ro(e),n._t>0&&(n._t=-n._t),0!=n.Ot?0:1):1}function so(e){if(eo(e))return-2;let t=e.Dt,r=t.Nt;return t.Et=Rs,t.sr=Es,t.ar=Es,t.Zt=Rs,t.Ar=Rs,t.Mr=new vs(0),t.Lr=Rs,t.Pr=Es,t.Ht.length=0,t.Bt.length=0,t.Jr.length=0,t.$t=void 0,t.lr=0,t.dr=0,t.Yt=0,113==r?-3:0}function ao(e,t){let r,n,i=e.Cr,s=e.gr,a=e.Fr,o=e.Tr,c=e.gr>Js(e)?e.gr-Js(e):0,l=e.sr,f=e.er,u=e.Et,d=e.vr,w=d>ra?ra:d,p=u[s],h=u[s+1],m=u[s+a-1],y=u[s+a];a>=e.Ur&&(i>>=2),o>d&&(o=d);do{if(r=t,u[r+a]!=y||u[r+a-1]!=m||u[r]!=p||u[r+1]!=h)continue;let i=2;for(;w>i&&u[s+i]==u[r+i];)i++;if(n=i,n>a){if(e.Ir=t,a=n,n>=o)break;m=u[s+a-1],y=u[s+a]}}while((t=l[t&f])>c&&0!=--i);return a>d?d:a}function oo(e,t){((e,t,r,n,i=0)=>{let s,a,o=0;e.Rr>0?(2==e.Rt.t&&(e.Rt.t=(e=>{let t,r=4093624447;for(t=0;31>=t;t++,r>>=1)if(1&r&&0!=e.Ht[t].Jt)return 0;if(0!=e.Ht[9].Jt||0!=e.Ht[10].Jt||0!=e.Ht[13].Jt)return 1;for(t=32;sa>t;t++)if(0!=e.Ht[t].Jt)return 1;return 0})(e)),Ia(e,e.Hr),Ia(e,e.Br),o=(e=>{let t;for(Xa(e,e.Ht,e.Hr.Wt),Xa(e,e.Bt,e.Br.Wt),Ia(e,e.Qr),t=ca-1;t>=3&&0==e.Jr[Ds[t]].Gr;t--);return e.wr+=3*(t+1)+5+5+4,t})(e),s=e.wr+3+7>>3,a=e.pr+3+7>>3,(s>=a||4==e.Er)&&(s=a)):s=a=r+5,s>=r+4&&t?Oa(e,t,r,n,i):a==s?(Aa(e,2+n,3),Ya(e,xa,ga)):(Aa(e,4+n,3),((e,t,r,n)=>{let i;for(Aa(e,t-257,5),Aa(e,r-1,5),Aa(e,n-4,4),i=0;n>i;i++)Aa(e,e.Jr[Ds[i]].Gr,3);Za(e,e.Ht,t-1),Za(e,e.Bt,r-1)})(e,e.Hr.Wt+1,e.Br.Wt+1,o+1),Ya(e,e.Ht,e.Bt)),Wa(e),n&&Pa(e)})(e,e.Et,e.gr-e.br,t,e.br),e.br=e.gr,ro(e.Rt)}function co(e,t){return oo(e,t?1:0),0==e.Rt.vt?t?2:0:null}var lo=65535;function fo(e,t){return t>e?e:t}function uo(e,t){let r,n,i,s=fo(e.ur-5,e.Ut),a=0,o=e.Rt.yt;do{if(r=lo,i=e.Lt+42>>3,e.Rt.vtn+e.Rt.yt&&(r=n+e.Rt.yt),r>i&&(r=i),s>r&&(0==r&&4!=t||0==t||r!=n+e.Rt.yt)))break;a=4==t&&r==n+e.Rt.yt?1:0,Oa(e,null,0,a),e.Zt[e.Ot-4]=r,e.Zt[e.Ot-3]=r>>8,e.Zt[e.Ot-2]=~r,e.Zt[e.Ot-1]=~r>>8,ro(e.Rt),n&&(n>r&&(n=r),Ms(e.Rt.xt,e.Rt.gt,e.Et,e.br,n),e.Rt.gt+=n,e.Rt.vt-=n,e.Rt.St+=n,e.br+=n,r-=n),r&&(_a(e.Rt,e.Rt.xt,e.Rt.gt,r),e.Rt.gt+=r,e.Rt.vt-=r,e.Rt.St+=r)}while(0==a);if(o-=e.Rt.yt,o){if(oe.hr&&e.hr++,e.mr>e.gr&&(e.mr=e.gr)),Ms(e.Et,e.gr,e.Rt.wt,e.Rt.ht-o,o),e.gr+=o,e.mr+=fo(o,e.Ut-e.mr);else{e.hr=2;let t=e.Rt.ht-e.Ut;Ms(e.Et,0,e.Rt.wt,t,e.Ut),e.gr=e.Ut,e.mr=e.gr}e.br=e.gr}return e.Cti&&e.br>=e.Ut&&(e.br-=e.Ut,e.gr-=e.Ut,Ms(e.Et,0,e.Et,e.Ut,e.gr),2>e.hr&&e.hr++,i+=e.Ut,e.mr>e.gr&&(e.mr=e.gr)),i>e.Rt.yt&&(i=e.Rt.yt),i&&(_a(e.Rt,e.Et,e.gr,i),e.gr+=i,e.mr+=fo(i,e.Ut-e.mr)),e.Ct>3,i=fo(e.ur-i,lo),s=fo(i,e.Ut),n=e.gr-e.br,(n>=s||(n||4==t)&&0!=t&&0==e.Rt.yt&&i>=n)&&(r=fo(n,i),a=4==t&&0==e.Rt.yt&&r==n?1:0,Oa(e,e.Et,r,a,e.br),e.br+=r,ro(e.Rt)),a&&(e.Wr=8),a?2:0)}function wo(e,t){let r,n=!1;for(;;){if(e.vr=ta&&(r=Ba(e,e.gr)),0!=r&&e.gr-r<=Js(e)&&(e.Sr=ao(e,r)),e.Sre.jr||e.vr=ta&&(r=Ba(e,e.gr)),e.Fr=e.Sr,e.kr=e.Ir,e.Sr=ta-1,0!=r&&e.Fr=e.Sr&&(1==e.Er||e.Sr==ta&&e.gr-e.Ir>4096)&&(e.Sr=ta-1)),e.Fre.Fr)if(e.zr){if(n=Gs(e,e.Et[e.gr-1]),n&&oo(e,0),e.gr++,e.vr--,0==e.Rt.vt)return 0}else e.zr=1,e.gr++,e.vr--;else{let t=e.gr+e.vr-ta;e.gr,e.kr,e.Fr,n=Ys(e,e.gr-1-e.kr,e.Fr-ta),e.vr-=e.Fr-1,e.Fr-=2;do{++e.gr<=t&&(r=Ba(e,e.gr))}while(0!=--e.Fr);if(e.zr=0,e.Sr=ta-1,e.gr++,n){let t=co(e,!1);if(null!=t)return t}}}if(e.zr&&(n=Gs(e,e.Et[e.gr-1]),e.zr=0),e.mr=e.gre+1),yo=js.subarray(0,-1).map(e=>e+3),bo=Ts.map(To),xo=Ts.map(Co);bo.push(64,2),xo.push(142,2);var go=Us.slice(0,-2).map(To),vo=Us.slice(0,-2).map(Co);go.push(16,1,73,1,200,1),vo.push(144,1,72,1,78,1);var So=new gs([...yo,258,0,0]),Fo=new gs([...yo,3,0,0]),ko=Ws(go),zo=Ws(vo),Do=new gs([...mo,0,0]),Ro=new gs([...mo,32769,49153]),Eo=Ws(bo),Uo=Ws(xo);function To(e,t){return t%2?e:e+16}function Co(e,t){return t%2?e:e+128}function jo(e,t){let r,n=e.Dt,i=e.ht,s=e.gt,a=e.wt,o=e.xt,c=n.Et,l=n.Mt>>>0,f=n.Lt>>>0,u=n.dn,d=n.wn,w=(1<>>0,m=n.Ct>>>0,y=n.jt>>>0,b=n.mn,x=s-(t-e.vt),g=s+(e.vt-257),v=i+(e.yt-5),S=0,F=0,k=0,z=0;e:do{for(;15>f;){if(i>=a.length)break e;l+=a[i++]<>>16&255,l>>>=k,f-=k,k=r>>>24,0==k){o[s++]=65535&r;break}if(16&k){if(S=65535&r,k&=15,k){for(;k>f;){if(i>=a.length){n.yn=16200;break e}l+=a[i++]<>>=k,f-=k}for(;15>f;){if(i>=a.length){n.yn=16200;break e}l+=a[i++]<>>16&255,l>>>=k,f-=k,k=r>>>24,16&k){if(F=65535&r,k&=15,k){for(;k>f;){if(i>=a.length){n.yn=16200;break e}l+=a[i++]<>>=k,f-=k}let t=S,u=s-x;if(F>u){let r=F-u;if(r>m&&b){e.Ft="invalid distance too far back",n.yn=16209;break e}if(0==y){if(z=h-r,r>=t){for(let e=0;t>e;++e)o[s++]=c[z++];continue e}for(let e=0;r>e;++e)o[s++]=c[z++];t-=r,z=s-F}else if(r>y){z=h+y-r;let e=r-y;if(e>=t){for(let e=0;t>e;++e)o[s++]=c[z++];continue e}for(let t=0;e>t;++t)o[s++]=c[z++];if(t-=e,z=0,t>y){for(let e=0;y>e;++e)o[s++]=c[z++];t-=y,z=s-F}}else{if(z=y-r,r>=t){for(let e=0;t>e;++e)o[s++]=c[z++];continue e}for(let e=0;r>e;++e)o[s++]=c[z++];t-=r,z=s-F}for(;t>2;)o[s++]=o[z++],o[s++]=o[z++],o[s++]=o[z++],t-=3;t&&(o[s++]=o[z++],t>1&&(o[s++]=o[z++]))}else{for(z=s-F;t>2;)o[s++]=o[z++],o[s++]=o[z++],o[s++]=o[z++],t-=3;t&&(o[s++]=o[z++],t>1&&(o[s++]=o[z++]))}break}if(64&k){e.Ft="invalid distance code",n.yn=16209;break e}r=d[(65535&r)+(l&(1<i&&g>s);let D=f>>3;i-=D,f-=D<<3,l&=(1<i?v-i+5:5-(i-v),e.vt=g>s?g-s+257:257-(s-g),n.Mt=l>>>0,n.Lt=f>>>0}var Mo=new vs(0);function Lo(e,t){let r=Mo,n=t?1446:1444;return{...As(e,0),Rt:e,yn:16180,bn:!1,_t:0,xn:!1,gn:0,vn:0,Sn:0,Fn:0,Et:Rs,kn:0,zn:0,sn:0,dn:r,wn:r,pn:0,hn:0,Dn:0,Rn:0,En:0,Un:0,Tn:r,Cn:new gs(320),jn:new gs(288),Mn:new vs(n),Ln:0,mn:!0,Pn:0,An:0,Wn:t}}function Po(e,t,r){return e<<24|t<<16|r}function Ao(e=0,t=0,r=0){return Po(e,t,r)}function Wo(e=1){return Po(64,e,0)}function Vo(e){return(255&e)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>24&255}var qo={Wn:!1,Vn:So,qn:ko,Kn:Do,In:Eo,Xn:20,Zn:257,On:0,Yn:592,Gn:!1,Jn:!0},Ko={Wn:!0,Vn:Fo,qn:zo,Kn:Ro,In:Uo,Xn:19,Zn:256,On:-1,Yn:594,Gn:!0,Jn:!1};function Io(e,t,r,n,i,s,a,o){let c,l,f,u,d,w,p,h,m,y,b,x,g,v,S,F,k,z,D,R=new gs(16),E=new gs(16),U=o?Ko:qo;for(c=0;15>=c;c++)R[c]=0;for(l=0;r>l;l++)R[t[l]]++;for(d=i.Hn,u=15;u>=1&&0==R[u];u--);if(d>u&&(d=u),0==u)return U.Jn?(S=Wo(1),n.Hn[0]=S,n.Hn[1]=S,i.Hn=1,0):-1;for(f=1;u>f&&0==R[f];f++);for(f>d&&(d=f),h=1,c=1;15>=c;c++)if(h<<=1,h-=R[c],0>h)return-1;if(h>0&&(0==e||1!=u))return-1;for(E[1]=0,c=1;15>c;c++)E[c+1]=E[c]+R[c];for(l=0;r>l;l++)0!=t[l]&&(s[E[t[l]]++]=l);switch(e){case 0:k=z=s,D=U.Xn;break;case 1:k=U.Vn,z=U.qn,D=U.Zn;break;default:k=U.Kn,z=U.In,D=U.On}if(y=0,l=0,c=f,F=a.Hn,w=d,p=0,g=-1,m=1<=ho:m>ho)||2==e&&(U.Gn?m>=U.Yn:m>U.Yn))return 1;for(;;){S=Xo(s,l,c,p,e,k,z,D,U.Wn),b=1<>p)+x;n.Hn[F+e]=S}while(0!=x);for(b=1<>=1;if(0!=b?(y&=b-1,y+=b):y=0,l++,0==--R[c]){if(c==u)break;c=t[s[l]]}if(c>d&&(y&v)!=g){for(0==p&&(p=d),F+=1<w+p&&(h-=R[w+p],h>0);)w++,h<<=1;if(m+=1<=ho:m>ho)||2==e&&(U.Gn?m>=U.Yn:m>U.Yn))return 1;g=y&v,n.Hn[a.Hn+g]=Po(w,d,F-a.Hn)}}if(0!=y)for(S=Wo(c-p);0!=y;){for(0!=p&&(y&v)!=g&&(p=0,c=d,F=a.Hn,w=d,S=Wo(c)),n.Hn[F+(y>>p)]=S,b=1<>=1;0!=b?(y&=b-1,y+=b):y=0}return a.Hn+=m,i.Hn=d,0}function Xo(e,t,r,n,i,s,a,o,c){let l;if(c?e[t]o:e[t]>=o)if(c&&1==i){let i=e[t]-257;l=Ao(a[i],r-n,s[i])}else{let i=c?e[t]:e[t]-o;l=Ao(a[i],r-n,s[i])}else l=((e=0)=>Po(96,e,0))(r-n);return l}var Zo=new vs(0),Oo={Bn:!0,Qn:new vs(544),Nn:Zo,_n:Zo},Yo={Bn:!0,Qn:new vs(544),Nn:Zo,_n:Zo};function Go(e){let t;return!(e&&(t=e.Dt,!(!t||t.Rt!=e||t.Wn&&(16191>t.yn||t.yn>16209)||!t.Wn&&(16180>t.yn||t.yn>16211))))}function Jo(e){let t=e.Wn?Yo:Oo,r={Hn:0};if(t.Bn){let n,i,s;for(n=0;144>n;)e.Cn[n++]=8;for(;256>n;)e.Cn[n++]=9;for(;280>n;)e.Cn[n++]=7;for(;288>n;)e.Cn[n++]=8;t.Qn.fill(0),s=t.Qn,t.Nn=s,i=9;let a={Hn:s},o={Hn:i},c={Hn:0};for(Io(1,e.Cn,288,a,o,e.jn,c,e.Wn),s=a.Hn,i=o.Hn,e.Ln=c.Hn,n=0;32>n;)e.Cn[n++]=5;i=5;let l=c.Hn,f={Hn:s},u={Hn:i};r.Hn=l,Io(2,e.Cn,32,f,u,e.jn,r,e.Wn),t._n=s.slice(l),t.Bn=!1}e.dn=t.Nn,e.pn=9,e.wn=t._n,e.hn=5,e.Ln=r.Hn}var Ho=class extends ks{constructor(){super("Need more input")}};function Bo(e,t){let r,n,i,s,a,o,c,l,f,u,d,w,p,h,m,y,b,x=new xs(4);if(Go(e)||!e.xt||!e.wt&&0!=e.yt)return-2;o=0,l=0,c=0,f=0,n=Rs,i=0,s=Rs,a=0,r=e.Dt,16191==r.yn&&(r.yn=16192),k(),u=o,d=c,b=0;try{for(;;)switch(r.yn){case 16180:if(0==r._t){r.yn=16192;break}if(E(16),2&r._t&&35615==l){0==r.Tt&&(r.Tt=15),r.Sn=Ma(0),r.Sn=S(r.Sn,l),D(),r.yn=16181;break}if(r.$t&&(r.$t.$n=-1),!(1&r._t)||((U(8)<<8)+(l>>8))%31){e.Ft="incorrect header check",r.yn=16209;break}if(8!=U(4)){e.Ft="unknown compression method",r.yn=16209;break}if(T(4),y=U(4)+8,0==r.Tt&&(r.Tt=y),y>15||y>r.Tt){e.Ft="invalid window size",r.yn=16209;break}r.vn=1<>8&1),512&r.gn&&4&r._t&&(r.Sn=S(r.Sn,l)),D(),r.yn=16182;case 16182:E(32),r.$t&&(r.$t.ln=l),512&r.gn&&4&r._t&&(r.Sn=F(r.Sn,l)),D(),r.yn=16183;case 16183:E(16),r.$t&&(r.$t.ei=255&l,r.$t.fn=l>>8),512&r.gn&&4&r._t&&(r.Sn=S(r.Sn,l)),D(),r.yn=16184;case 16184:1024&r.gn?(E(16),r.kn=l,r.$t&&(r.$t.un=l),512&r.gn&&4&r._t&&(r.Sn=S(r.Sn,l)),D()):r.$t&&(r.$t.sn=Rs),r.yn=16185;case 16185:if(1024&r.gn&&(w=r.kn,w>o&&(w=o),w&&(r.$t&&r.$t.sn&&r.$t.ti&&(y=r.$t.un-r.kn)w);if(512&r.gn&&4&r._t&&(r.Sn=Ma(r.Sn,n.subarray(i,i+w),w)),o-=w,i+=w,y)return g()}else r.$t&&(r.$t.an=Rs);r.kn=0,r.yn=16187;case 16187:if(4096&r.gn){if(0==o)return g();w=0;do{y=n[i+w++],r.$t&&r.$t.ni&&r.knw);if(512&r.gn&&4&r._t&&(r.Sn=Ma(r.Sn,n.subarray(i,i+w),w)),o-=w,i+=w,y)return g()}else r.$t&&(r.$t.cn=Rs);r.yn=16188;case 16188:if(512&r.gn){if(E(16),4&r._t&&l!=(65535&r.Sn)){e.Ft="header crc mismatch",r.yn=16209;break}D()}r.$t&&(r.$t.rn=r.gn>>9&1,r.$t.$n=1),e.kt=r.Sn=Ma(0),r.yn=16191;break;case 16189:E(32),e.kt=r.Sn=Vo(l),D(),r.yn=16190;case 16190:if(!r.xn)return z(),2;e.kt=r.Sn=Fa(0),r.yn=16191;case 16191:if(5==t||6==t)return g();case 16192:if(r.bn){C(),r.yn=16206;break}switch(E(3),r.bn=!!U(1),T(1),U(2)){case 0:r.yn=16193;break;case 1:if(Jo(r),r.yn=16199,6==t)return T(2),g();break;case 2:r.yn=16196;break;case 3:e.Ft="invalid block type",r.yn=16209}T(2);break;case 16193:if(C(),E(32),(65535&l)!=(l>>>16^65535)){e.Ft="invalid stored block lengths",r.yn=16209;break}if(r.kn=65535&l,D(),r.yn=16194,6==t)return g();case 16194:r.yn=16195;case 16195:if(w=r.kn,w){if(w>o&&(w=o),w>c&&(w=c),0==w)return g();Ms(s,a,n,i,w),o-=w,i+=w,c-=w,a+=w,r.kn-=w;break}r.yn=16191;break;case 16196:if(E(14),r.Rn=U(5)+257,T(5),r.En=U(5)+1,T(5),r.Dn=U(4)+4,T(4),r.Rn>286||!r.Wn&&r.En>30){e.Ft=r.Wn?"too many length":"too many length or distance symbols",r.yn=16209;break}r.Un=0,r.yn=16197;case 16197:for(;r.Unr.Un;)r.Cn[Ds[r.Un++]]=0;r.Tn=r.Mn,r.dn=r.wn=r.Tn,r.pn=7;let u={Hn:r.Tn},x={Hn:r.pn},j={Hn:0};if(b=Io(0,r.Cn,19,u,x,r.jn,j,r.Wn),r.Tn=u.Hn,r.pn=x.Hn,b){e.Ft="invalid code lengths set",r.yn=16209;break}r.Un=0,r.yn=16198;case 16198:for(;r.Un>>16&255)>f;)R();if(16>(65535&h))T(h>>>16&255),r.Cn[r.Un++]=65535&h;else{if(16==(65535&h)){if(E(2+(h>>>16&255)),T(h>>>16&255),0==r.Un){e.Ft="invalid bit length repeat",r.yn=16209;break}y=r.Cn[r.Un-1],w=3+U(2),T(2)}else 17==(65535&h)?(E(3+(h>>>16&255)),T(h>>>16&255),y=0,w=3+U(3),T(3)):(E(7+(h>>>16&255)),T(h>>>16&255),y=0,w=11+U(7),T(7));if(r.Un+w>r.Rn+r.En){e.Ft="invalid bit length repeat",r.yn=16209;break}for(;w--;)r.Cn[r.Un++]=y}}if(16209==r.yn)break;if(0==r.Cn[256]){e.Ft="invalid code -- missing end-of-block",r.yn=16209;break}r.Tn=r.Mn,r.pn=9;let M={Hn:r.Tn},L={Hn:r.pn},P={Hn:0};b=Io(1,r.Cn,r.Rn,M,L,r.jn,P,r.Wn),r.Tn=M.Hn,r.pn=L.Hn;let A=P.Hn;if(r.dn=r.Tn.slice(0,A),b){e.Ft="invalid literal/lengths set",r.yn=16209;break}r.hn=6;let W=r.Cn.subarray(r.Rn,r.Rn+r.En),V={Hn:r.Tn},q={Hn:r.hn},K={Hn:A};if(b=Io(2,W,r.En,V,q,r.jn,K,r.Wn),r.Tn=V.Hn,r.hn=q.Hn,r.wn=r.Tn.slice(A),b){e.Ft="invalid distances set",r.yn=16209;break}if(r.yn=16199,6==t)return g();case 16199:r.yn=16200;case 16200:if(!r.Wn&&o>=6&&c>=258){z(),jo(e,d),k(),16191==r.yn&&(r.Pn=-1);break}for(r.Pn=0;h=r.dn[U(r.pn)],(h>>>16&255)>f;)R();if(h>>>24&&!(h>>>24&240)){for(m=h;h=r.dn[(65535&m)+(U((m>>>16&255)+(m>>>24))>>(m>>>16&255))],(m>>>16&255)+(h>>>16&255)>f;)R();T(m>>>16&255),r.Pn+=m>>>16&255}if(T(h>>>16&255),r.Pn+=h>>>16&255,r.kn=65535&h,!(h>>>24)){r.yn=16205;break}if(h>>>24&32){r.Pn=-1,r.yn=16191;break}if(h>>>24&64){e.Ft="invalid literal/length code",r.yn=16209;break}r.sn=h>>>24&(r.Wn?31:15),r.yn=16201;case 16201:r.sn&&(E(r.sn),r.kn+=U(r.sn),T(r.sn),r.Pn+=r.sn),r.An=r.kn,r.yn=16202;case 16202:for(;h=r.wn[U(r.hn)],(h>>>16&255)>f;)R();if(!(h>>>24&240)){for(m=h;h=r.wn[(65535&m)+(U((m>>>16&255)+(m>>>24))>>(m>>>16&255))],(m>>>16&255)+(h>>>16&255)>f;)R();T(m>>>16&255),r.Pn+=m>>>16&255}if(T(h>>>16&255),r.Pn+=h>>>16&255,h>>>24&64){e.Ft="invalid distance code",r.yn=16209;break}r.zn=65535&h,r.sn=h>>>24&15,r.yn=16203;case 16203:r.sn&&(E(r.sn),r.zn+=U(r.sn),T(r.sn),r.Pn+=r.sn),r.yn=16204;case 16204:if(0==c)return g();if(w=d-c,r.zn>w){if(w=r.zn-w,w>r.Ct&&r.mn){e.Ft="invalid distance too far back",r.yn=16209;break}w>r.jt?(w-=r.jt,p=r.Ut-w):p=r.jt-w,w>r.kn&&(w=r.kn),w>c&&(w=c);for(let e=0;w>e;++e)s[a]=255&r.Et[p],++a,++p}else{p=a-r.zn,w=r.kn,w>c&&(w=c);for(let e=0;w>e;++e)s[a]=s[p],++a,++p}w>c&&(w=c),c-=w,r.kn-=w,0==r.kn&&(r.yn=16200);break;case 16205:if(0==c)return g();s[a++]=r.kn,c--,r.yn=16200;break;case 16206:if(r._t){if(E(32),d-=c,e.St+=d,r.Fn+=d,4&r._t&&d){let t=s.subarray(a-d,a);e.kt=r.Sn=v(r.Sn,t,d)}if(d=c,4&r._t&&(r.gn?l:Vo(l)>>>0)!=r.Sn){e.Ft="incorrect data check",r.yn=16209;break}D()}r.yn=16207;case 16207:if(r._t&&r.gn){if(E(32),4&r._t&&l!=(4294967295&r.Fn)){e.Ft="incorrect length check",r.yn=16209;break}D()}r.yn=16208;case 16208:return b=1,g();case 16209:return b=-3,g();case 16210:return-4;default:return-2}}catch(e){if(e instanceof Ho)return g();throw e}function g(){if(z(),r.Ut||d!=e.vt&&16209>r.yn&&(r.Wn?16208>r.yn:16206>r.yn)||4!=t){let t=d-e.vt;if(((e,t,r)=>{let n=e.Dt;if(!(n.Et&&0!=n.Et.length||(n.Et=new xs(1<r&&(e=r),Ms(n.Et,n.jt,t,t.length-r,e),(r-=e)?(Ms(n.Et,0,t,t.length-r,r),n.jt=r,n.Ct=n.Ut):(n.jt+=e,n.jt==n.Ut&&(n.jt=0),n.Ct>>8&255,Ma(e,x,2)>>>0}function F(e,t){return x[0]=255&t,x[1]=t>>>8&255,x[2]=t>>>16&255,x[3]=t>>>24&255,Ma(e,x,4)>>>0}function k(){s=e.xt,a=e.gt,c=e.vt,n=e.wt,i=e.ht,o=e.yt,l=r.Mt,f=r.Lt}function z(){e.xt=s,e.gt=a,e.vt=c,e.wt=n,e.ht=i,e.yt=o,r.Mt=l,r.Lt=f}function D(){l=0,f=0}function R(){if(0==o)throw new Ho;o--,l+=(255&n[i])<>>=0,f+=8}function E(e){for(;e>f;)R()}function U(e){return l&(1<>>=e,f-=e}function C(){l>>>=7&f,f-=7&f}}function Qo(e){return Go(e)?-2:0}var No=65536,_o=class{constructor(e=16,t=No){this.ii=[],this.si=e;for(let r=0;r=0;t--){let r=this.ii[t];if(r.length>=e)return this.ii.splice(t,1),r}return new xs(e)}release(e){this.ii.length0;){let r=t.ai(),i=!1;try{a.xt=r,a.gt=0,a.vt=r.length;let n=e.li(a,0),o=r.length-a.vt;if(o>0){let e=!1,n={fi:r.subarray(0,o),release:()=>{e||(e=!0,t.release(r))}};i=!0,s.enqueue(n)}if(0!=n&&1!=n)throw new ks("process error: "+n)}finally{i||n(r)}}o+=r}},flush(i){if(!r)return;let s=r.Rt;for(;;){let r=t.ai(),a=!1;try{s.xt=r,s.gt=0,s.vt=r.length;let n=e.li(s,4),o=r.length-s.vt;if(o>0){let e=!1,n={fi:r.subarray(0,o),release:()=>{e||(e=!0,t.release(r))}};a=!0,i.enqueue(n)}if(1==n)break;if(0!=n)throw new ks("finalization error: "+n)}finally{a||n(r)}}let a=e.ui(s);if(0!=a&&0!=a)throw new ks("end failed: "+a)}})}function ec(){return new Ss({start(){},transform(e,t){try{t.enqueue(e.fi.slice(0))}finally{e.release()}},flush(){}})}fe({workerURI:"./core/web-worker-native.js",wasmURI:null,CompressionStreamZlib:class{constructor(e="deflate",t){let r=function(e="deflate",t){let r="gzip"==e?31:"deflate-raw"==e?-15:15,n=t&&"number"==typeof t.level?t.level:-1;return $o({oi:()=>(()=>{let e=Ps();return e.Dt=Bs(e),e})(),ci:e=>((e,t,r=8,n=15,i=ea,s=0)=>{let a=1;if(!e)return-2;if(e.Ft="",-1==t&&(t=6),0>n){if(a=0,-15>n)return-2;n=-n}else n>15&&(a=2,n-=16);if(1>i||i>9||8!=r||8>n||n>15||0>t||t>9||0>s||s>4||8==n&&1!=a)return-2;8==n&&(n=9);let o=Bs(e);return o?(e.Dt=o,o.Rt=e,o.Nt=42,o._t=a,o.$t=void 0,o.Tt=n,o.Ut=1<{let t=(e=>{let t;return eo(e)?-2:(e.bt=e.St=0,e.Ft="",e.t=2,t=e.Dt,t.Ot=0,t.dr=t.lr,0>t._t&&(t._t=-t._t),t.Nt=2==t._t?57:42,e.kt=2==t._t?Ma(0):Fa(0),t.yr=-2,(e=>{if(e.Ht&&e.Ht.length>=la)for(let t=0;la>t;t++)e.Ht[t]=Ns();else{e.Ht=[];for(let t=0;la>t;t++)e.Ht.push(Ns())}if(e.Bt&&e.Bt.length>=2*oa+1)for(let t=0;2*oa+1>t;t++)e.Bt[t]=Ns();else{e.Bt=[];for(let t=0;2*oa+1>t;t++)e.Bt.push(Ns())}if(e.Jr&&e.Jr.length>=2*ca+1)for(let t=0;2*ca+1>t;t++)e.Jr[t]=Ns();else{e.Jr=[];for(let t=0;2*ca+1>t;t++)e.Jr.push(Ns())}e.Hr=new Vs(e.Ht,new qs(xa,pa,sa+1,aa,fa)),e.Br=new Vs(e.Bt,new qs(ga,ha,0,oa,fa)),e.Qr=new Vs(e.Jr,new qs(null,ma,0,ca,7)),e.Mt=0,e.Lt=0,e.Wr=0,Wa(e)})(t),0)})(e);return 0==t&&(e=>{e.Kr=2*e.Ut,Qa(e),e.jr=Ga[e.Rr].$r,e.Ur=Ga[e.Rr]._r,e.Tr=Ga[e.Rr].en,e.Cr=Ga[e.Rr].tn,e.gr=0,e.br=0,e.vr=0,e.mr=0,e.Sr=e.Fr=ta-1,e.zr=0,e.Dr=0})(e.Dt),t})(e)):(o.Nt=666,e.Ft=Ks(-4),so(e),-4)):-4})(e,n,8,r,8,0),li:io,ui:so})}(e,t);this.writable=r.writable,this.readable=r.readable.pipeThrough(ec())}},DecompressionStreamZlib:class{constructor(e="deflate"){let t=((e="deflate")=>{let t="gzip"==e?31:"deflate-raw"==e?-15:"deflate64-raw"==e?-16:15;return $o({oi:()=>(()=>{let e=Ps();return e.Dt=Lo(e,!1),e})(),ci:e=>function(e,t){let r,n;if(!e)return-2;e.Ft="";let i=-16==t;return n=Lo(e,i),e.Dt=n,n.Rt=e,n.yn=i?16191:16180,r=((e,t)=>{let r,n;if(Go(e))return-2;if(n=e.Dt,0>t){if(-16>t)return-2;r=0,n.Wn=-16==t,t=-t}else r=5+(t>>4),n.Wn=!1,48>t&&(t&=15);let i=n.Wn?16:15;return t&&(8>t||t>i)?-2:(n.Et.length>0&&n.Tt!=t&&(n.Et=Rs),n._t=r,n.Tt=t,(e=>{let t;return Go(e)?-2:(t=e.Dt,t.Ut=0,t.Ct=0,t.jt=0,(e=>{let t;return Go(e)?-2:(t=e.Dt,e.bt=e.St=t.Fn=0,e.Ft="",t._t&&(e.kt=1&t._t),t.yn=t.Wn?16191:16180,t.bn=!1,t.xn=!1,t.gn=-1,t.vn=t.Wn?65536:32768,delete t.$t,t.Mt=0,t.Lt=0,t.dn=t.Mn,t.wn=t.Mn,t.Tn=t.Mn,t.mn=!0,t.Pn=-1,0)})(e))})(e))})(e,t),r}(e,t),li:Bo,ui:Qo})})(e);this.writable=t.writable,this.readable=t.readable.pipeThrough(ec())}}}),fe({workerURI:e=>{const t="text/javascript",r=(e=>{let t=0,r=0,n=0,i=new w(1024),s=0,a=0;for(;!a;){a=c(1);const e=c(2);if(0==e)l();else if(1==e)f(be(me),be(ye));else{if(2!=e)throw d("invalid deflate block type");f(...u())}}return i.subarray(0,s);function o(){if(t>=e.length)throw d("unexpected end of deflate data");return e[t++]}function c(e){for(;e>n;)r|=o()<>>=e,n-=e,t}function l(){r=0,n=0;const e=o()|o()<<8;t+=2,h(s+e);for(let t=0;e>t;t++)i[s++]=o()}function f(e,t){let r=p(e);for(;256!=r;){if(256>r)h(s+1),i[s++]=r;else{const e=r-257,n=ue[e]+c(de[e]),a=p(t),o=we[a]+c(pe[a]);h(s+n);const l=s-o;for(let e=0;n>e;e++)i[s++]=i[l+e]}r=p(e)}}function u(){const e=c(5)+257,t=c(5)+1,r=c(4)+4,n=new w(19);for(let e=0;r>e;e++)n[he[e]]=c(3);const i=be(n),s=new w(e+t);let a=0;for(;ae)s[a++]=e;else if(16==e){const e=s[a-1];let t=c(2)+3;for(;t--;)s[a++]=e}else a+=17==e?c(3)+3:c(7)+11}return[be(s.subarray(0,e)),be(s.subarray(e))]}function p(e){const{t:t,symbols:r}=e;let n=0,i=0,s=0;for(let e=1;15>=e;e++){n|=c(1);const a=t[e];if(a>n-i)return r[s+(n-i)];s+=a,i=i+a<<1,n<<=1}throw d("invalid huffman code")}function h(e){if(i.lengtht;)t*=2;const r=new w(t);r.set(i.subarray(0,s)),i=r}}})((e=>{const t=(e=(e+"").replace(/[^A-Za-z0-9+/=]/g,"")).length,r=[];for(let n=0;t>n;n+=4){const t=xe.indexOf(e[n])<<18|xe.indexOf(e[n+1])<<12|(63&xe.indexOf(e[n+2]))<<6|63&xe.indexOf(e[n+3]);r.push(t>>16&255),"="!==e[n+2]&&r.push(t>>8&255),"="!==e[n+3]&&r.push(255&t)}return new w(r)})("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"));if(e){const e=new y([r],{type:t});return u.createObjectURL(e)}return"data:"+t+";base64,"+(e=>{let t="";const r=e.length;let n=0;for(;r>n+2;n+=3){const r=e[n]<<16|e[n+1]<<8|e[n+2];t+=xe[r>>18&63]+xe[r>>12&63]+xe[r>>6&63]+xe[63&r]}const i=r-n;if(1===i){const r=e[n]<<16;t+=xe[r>>18&63]+xe[r>>12&63]+"=="}else if(2===i){const r=e[n]<<16|e[n+1]<<8;t+=xe[r>>18&63]+xe[r>>12&63]+xe[r>>6&63]+"="}return t})(r)}}),e.BlobReader=Fr,e.BlobWriter=kr,e.Data64URIReader=class extends vr{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const n=e.indexOf(",")+1;r.assign(this,{dataURI:e,di:n,size:a.floor(.75*(t-n))})}readUint8Array(e,t){const{di:r,dataURI:n}=this,i=new w(t),s=4*a.floor(e/3),o=atob(n.substring(s+r,4*a.ceil((e+t)/3)+r)),c=e-3*a.floor(s/4);let l=0;for(let e=c;c+t>e&&e2?t.data+=F(i):t.pending=i+t.pending}getData(){return this.data+F(this.pending)}},e.ERR_AMBIGUOUS_ARCHIVE=_n,e.ERR_BAD_FORMAT=In,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=On,e.ERR_DUPLICATED_NAME=Ei,e.ERR_ENCRYPTED=Jn,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Zn,e.ERR_EOCDR_NOT_FOUND=Xn,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Gn,e.ERR_HTTP_RANGE=dr,e.ERR_INVALID_COMMENT=Ui,e.ERR_INVALID_COMPRESSED_DATA=zt,e.ERR_INVALID_ENCRYPTION_STRENGTH=Mi,e.ERR_INVALID_ENTRY_COMMENT=Ti,e.ERR_INVALID_ENTRY_NAME=Ci,e.ERR_INVALID_EXTRAFIELD_DATA=Pi,e.ERR_INVALID_EXTRAFIELD_TYPE=Li,e.ERR_INVALID_PASSWORD=We,e.ERR_INVALID_SIGNATURE=Ve,e.ERR_INVALID_UNCOMPRESSED_SIZE=kt,e.ERR_INVALID_VERSION=ji,e.ERR_ITERATOR_COMPLETED_TOO_SOON=wr,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Yn,e.ERR_OVERLAPPING_ENTRY=Nn,e.ERR_SPLIT_ZIP_FILE=Qn,e.ERR_UNDEFINED_READER=Ki,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=qi,e.ERR_UNSUPPORTED_COMPRESSION=Bn,e.ERR_UNSUPPORTED_ENCRYPTION=Hn,e.ERR_UNSUPPORTED_FORMAT=Vi,e.ERR_WRITER_NOT_INITIALIZED=pr,e.ERR_ZIP_NOT_EMPTY=Ii,e.HttpRangeReader=class extends Vr{constructor(e,t={}){super(e,r.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=Vr,e.Reader=vr,e.SplitDataReader=qr,e.SplitDataWriter=Kr,e.TextReader=class extends Fr{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends kr{constructor(e){super(e),r.assign(this,{encoding:e,wi:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,wi:t}=this,n=await super.getData();if(n.text&&t)return n.text();{const t=new FileReader;return new b((i,s)=>{r.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>s(t.error)}),t.readAsText(n,e)})}}},e.Uint8ArrayReader=class extends vr{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),r.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Sr{constructor(e){super(),this.defaultBufferSize=e||262144}init(e=0){r.assign(this,{offset:0,array:new w(e>0?e:this.defaultBufferSize)}),super.init()}writeUint8Array(e){const t=this,r=t.offset+e.length;if(r>t.array.length){let e=t.array.length?2*t.array.length:t.defaultBufferSize;for(;r>e;)e*=2;const n=t.array;t.array=new w(e),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.array.length?this.array:this.array.slice(0,this.offset)}},e.Writer=Sr,e.ZipReader=ni,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:r}=new k,n=new ni(t,e).getEntriesGenerator();this.readable=new z({async pull(e){const{done:t,value:r}=await n.next();if(t)return e.close();const i={...r,readable:(()=>{const{readable:e,writable:t}=new k;if(r.getData)return(async()=>{try{await r.getData(t)}catch(e){try{await t.abort(e)}catch{}}})(),e})()};delete i.getData,e.enqueue(i)}}),this.writable=r}},e.ZipWriter=Ji,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:r}=new k;this.readable=t,this.zipWriter=new Ji(r,e),this.Le=new l}transform(e){const t=this.zipWriter;let r;const{readable:n,writable:i}=new k({start(e){r=e},flush:()=>{(async()=>{try{await t.close()}catch(e){try{await t.writer.writable.abort(e)}catch{}}})()}});return Hi(this,this.zipWriter.add(e,n),e=>r.error(e)),{readable:this.readable,writable:i}}writable(e){let t;const{readable:r,writable:n}=new k({start(e){t=e}});return Hi(this,this.zipWriter.add(e,r),e=>t.error(e)),n}async close(e,r={}){return await b.all(t.from(this.Le)),this.zipWriter.close(e,r)}},e.configure=fe,e.createBlobTempStream=(e={})=>{const{thresholdBytes:t=ms}=e;return()=>{const e=[];let r,n,i,s=0,a=!1;const o=new D({async write(i){a?await r.write(i):(e.push(i),s+=i.length,s>t&&await(async()=>{const t=new k;n=new f(t.readable).blob(),r=t.writable.getWriter(),a=!0;for(const t of e)await r.write(t);e.length=0})())},async close(){r&&(await r.close(),r=null)}});let c=0;return{writable:o,readable:new z({async pull(t){if(a){if(!i){const e=await n;i=e.stream().getReader()}const{value:e,done:r}=await i.read();r?t.close():t.enqueue(e)}else c{if(r){try{await r.abort()}catch{}r=null}n&&(n.catch(()=>{}),n=null),e.length=0}}}},e.createOPFSTempStream=(e={})=>{const{thresholdBytes:t=ps,directoryName:r=hs,getDirectory:n=()=>U.storage.getDirectory()}=e;let i;function s(){return i||(i=b.resolve(n()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return()=>{const e=[];let r,n,i,a,o=0,c=!1;const l=new D({async write(a){c?await i.write(a):(e.push(a),o+=a.length,o>t&&await(async()=>{const t=await s();r=S.randomUUID(),n=await t.getFileHandle(r,{create:!0}),i=(await n.createWritable()).getWriter(),c=!0;for(const t of e)await i.write(t);e.length=0})())},async close(){i&&(await i.close(),i=null)}});let f=0;return{writable:l,readable:new z({async pull(t){if(c){if(!a){const e=await n.getFile();a=e.stream().getReader()}const{value:e,done:r}=await a.read();r?t.close():t.enqueue(e)}else f{if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await s();await e.removeEntry(r)}catch{}n=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=(e={})=>{const{thresholdBytes:t=ys,directoryName:r=bs,getDirectory:n}=e;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.pi))throw new d("createSyncAccessHandle is only available in dedicated workers");const i=n||(()=>U.storage.getDirectory());let s;function o(){return s||(s=b.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),s}return()=>{const e=[];let r,n,i=0,s=!1,c=0,l=0;const f=new D({async write(a){s?(n.write(a,{at:c}),c+=a.length):(e.push(a),i+=a.length,i>t&&await(async()=>{const t=await o();r=S.randomUUID();const i=await t.getFileHandle(r,{create:!0});n=await i.pi(),s=!0;for(const t of e)n.write(t,{at:c}),c+=t.length;e.length=0})())},close(){n&&n.flush()}});let u=0;return{writable:f,readable:new z({pull(t){if(s){const e=c-l;if(0>=e)return void t.close();const r=new w(a.min(524288,e)),i=n.read(r,{at:l});i?(l+=i,t.enqueue(r.subarray(0,i))):t.close()}else u{if(n){try{n.close()}catch{}n=null}if(r){try{const e=await o();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=()=>"application/octet-stream",e.terminateWorkers=async()=>{await b.allSettled(er.map(e=>(fr(e),e.terminate())))}});