@zip.js/zip.js 2.8.3 → 2.8.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- ((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,function(e){"use strict";const{Array:t,Object:r,String:n,Number:s,BigInt:i,Math:a,Date:o,Map:l,Set:c,Response:f,URL:u,Error:d,Uint8Array:p,Uint16Array:h,Uint32Array:w,DataView:g,Blob:m,Promise:y,TextEncoder:b,TextDecoder:S,document:z,crypto:k,btoa:x,TransformStream:E,ReadableStream:R,WritableStream:v,CompressionStream:_,DecompressionStream:A,navigator:C,Worker:F}="undefined"!=typeof globalThis?globalThis:this||self;var N=void 0!==z?z.currentScript:null;const D=4294967295,T=65535,U=67324752,I=134695760,L=I,O=33639248,B=101010256,W=101075792,P=117853008,M=22,V=21589,Z=2048,Q="/",H=30,$=new o(2107,11,31),q=new o(1980,0,1),K=void 0,J="undefined",G="function";let j=2;try{typeof C!=J&&C.hardwareConcurrency&&(j=C.hardwareConcurrency)}catch{}const Y={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib/zlib-streams.wasm",chunkSize:65536,maxWorkers:j,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,CompressionStream:typeof _!=J&&_,DecompressionStream:typeof A!=J&&A},X=r.assign({},Y);function ee(){return X}function te(e){return a.max(e.chunkSize,64)}function re(e){const{baseURI:t,chunkSize:r,maxWorkers:n,terminateWorkerTimeout:s,useCompressionStream:i,useWebWorkers:a,CompressionStream:o,DecompressionStream:l,CompressionStreamZlib:c,DecompressionStreamZlib:f,workerURI:u,wasmURI:d}=e;ne("baseURI",t),ne("wasmURI",d),ne("workerURI",u),ne("chunkSize",r),ne("maxWorkers",n),ne("terminateWorkerTimeout",s),ne("useCompressionStream",i),ne("useWebWorkers",a),ne("CompressionStream",o),ne("DecompressionStream",l),ne("CompressionStreamZlib",c),ne("DecompressionStreamZlib",f)}function ne(e,t){t!==K&&(X[e]=t)}const se=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;se[e]=t}class ie{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let r=0,n=0|e.length;n>r;r++)t=t>>>8^se[255&(t^e[r])];this.crc=t}get(){return~this.crc}}class ae extends E{constructor(){let e;const t=new ie;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new p(4);new g(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}function oe(e){if(typeof b==J){const t=new p((e=unescape(encodeURIComponent(e))).length);for(let r=0;r<t.length;r++)t[r]=e.charCodeAt(r);return t}return(new b).encode(e)}const le={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const r=e[e.length-1],n=le.getPartial(r);return 32===n?e.concat(t):le._shiftRight(t,n,0|r,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const r=e[t-1];return 32*(t-1)+le.getPartial(r)},clamp(e,t){if(32*e.length<t)return e;const r=(e=e.slice(0,a.ceil(t/32))).length;return t&=31,r>0&&t&&(e[r-1]=le.partial(t,e[r-1]&2147483648>>t-1,1)),e},partial:(e,t,r)=>32===e?t:(r?0|t:t<<32-e)+1099511627776*e,getPartial:e=>a.round(e/1099511627776)||32,_shiftRight(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 s=0;s<e.length;s++)n.push(r|e[s]>>>t),r=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=le.getPartial(s);return n.push(le.partial(t+i&31,t+i>32?r:n.pop(),1)),n}},ce={bytes:{fromBits(e){const t=le.bitLength(e)/8,r=new p(t);let n;for(let s=0;t>s;s++)3&s||(n=e[s/4]),r[s]=n>>>24,n<<=8;return r},toBits(e){const t=[];let r,n=0;for(r=0;r<e.length;r++)n=n<<8|e[r],3&~r||(t.push(n),n=0);return 3&r&&t.push(le.partial(8*(3&r),n)),t}}},fe=class{constructor(e){const t=this;t.blockSize=512,t._init=[1732584193,4023233417,2562383102,271733878,3285377520],t._key=[1518500249,1859775393,2400959708,3395469782],e?(t._h=e._h.slice(0),t._buffer=e._buffer.slice(0),t._length=e._length):t.reset()}reset(){const e=this;return e._h=e._init.slice(0),e._buffer=[],e._length=0,e}update(e){const t=this;"string"==typeof e&&(e=ce.utf8String.toBits(e));const r=t._buffer=le.concat(t._buffer,e),n=t._length,s=t._length=n+le.bitLength(e);if(s>9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const i=new w(r);let a=0;for(let e=t.blockSize+n-(t.blockSize+n&t.blockSize-1);s>=e;e+=t.blockSize)t._block(i.subarray(16*a,16*(a+1))),a+=1;return r.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const r=e._h;t=le.concat(t,[le.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),r}_f(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}_S(e,t){return t<<e|t>>>32-e}_block(e){const r=this,n=r._h,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let i=n[0],o=n[1],l=n[2],c=n[3],f=n[4];for(let e=0;79>=e;e++){16>e||(s[e]=r._S(1,s[e-3]^s[e-8]^s[e-14]^s[e-16]));const t=r._S(5,i)+r._f(e,o,l,c)+f+s[e]+r._key[a.floor(e/20)]|0;f=c,c=l,l=r._S(30,o),o=i,i=t}n[0]=n[0]+i|0,n[1]=n[1]+o|0,n[2]=n[2]+l|0,n[3]=n[3]+c|0,n[4]=n[4]+f|0}},ue={getRandomValues(e){const t=new w(e.buffer),r=e=>{let t=987654321;const r=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&r,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&r)&r)/4294967296+.5)*(a.random()>.5?1:-1))};for(let n,s=0;s<e.length;s+=4){const e=r(4294967296*(n||a.random()));n=987654071*e(),t[s/4]=4294967296*e()|0}return e}},de={importKey:e=>new de.hmacSha1(ce.bytes.toBits(e)),pbkdf2(e,t,r,n){if(r=r||1e4,0>n||0>r)throw new d("invalid params to pbkdf2");const s=1+(n>>5)<<2;let i,a,o,l,c;const f=new ArrayBuffer(s),u=new g(f);let p=0;const h=le;for(t=ce.bytes.toBits(t),c=1;(s||1)>p;c++){for(i=a=e.encrypt(h.concat(t,[c])),o=1;r>o;o++)for(a=e.encrypt(a),l=0;l<a.length;l++)i[l]^=a[l];for(o=0;(s||1)>p&&o<i.length;o++)u.setInt32(p,i[o]),p+=4}return f.slice(0,n/8)},hmacSha1:class{constructor(e){const t=this,r=t._hash=fe,n=[[],[]];t._baseHash=[new r,new r];const s=t._baseHash[0].blockSize/32;e.length>s&&(e=(new r).update(e).finalize());for(let t=0;s>t;t++)n[0][t]=909522486^e[t],n[1][t]=1549556828^e[t];t._baseHash[0].update(n[0]),t._baseHash[1].update(n[1]),t._resultHash=new r(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),r=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),r}encrypt(e){if(this._updated)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},pe=typeof k!=J&&typeof k.getRandomValues==G,he="Invalid password",we="Invalid signature",ge="zipjs-abort-check-password";function me(e){return pe?k.getRandomValues(e):ue.getRandomValues(e)}const ye=16,be={name:"PBKDF2"},Se=r.assign({hash:{name:"HMAC"}},be),ze=r.assign({iterations:1e3,hash:{name:"SHA-1"}},be),ke=["deriveBits"],xe=[8,12,16],Ee=[16,24,32],Re=10,ve=[0,0,0,0],_e=typeof k!=J,Ae=_e&&k.subtle,Ce=_e&&typeof Ae!=J,Fe=ce.bytes,Ne=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const r=t._tables[0][4],n=t._tables[1],s=e.length;let i,a,o,l=1;if(4!==s&&6!==s&&8!==s)throw new d("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],i=s;4*s+28>i;i++){let e=a[i-1];(i%s===0||8===s&&i%s===4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],i%s===0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),a[i]=a[i-s]^e}for(let e=0;i;e++,i--){const t=a[3&e?i:i-4];o[e]=4>=i||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._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],r=e[4],n=t[4],s=[],i=[];let a,o,l,c;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let f=a=0;!r[f];f^=o||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,r[f]=i,n[i]=f,c=s[l=s[o=s[f]]];let u=16843009*c^65537*l^257*o^16843008*f,d=257*s[i]^16843008*i;for(let r=0;4>r;r++)e[r][f]=d=d<<24^d>>>8,t[r][i]=u=u<<24^u>>>8}for(let r=0;5>r;r++)e[r]=e[r].slice(0),t[r]=t[r].slice(0)}_crypt(e,t){if(4!==e.length)throw new d("invalid aes block size");const r=this._key[t],n=r.length/4-2,s=[0,0,0,0],i=this._tables[t],a=i[0],o=i[1],l=i[2],c=i[3],f=i[4];let u,p,h,w=e[0]^r[0],g=e[t?3:1]^r[1],m=e[2]^r[2],y=e[t?1:3]^r[3],b=4;for(let e=0;n>e;e++)u=a[w>>>24]^o[g>>16&255]^l[m>>8&255]^c[255&y]^r[b],p=a[g>>>24]^o[m>>16&255]^l[y>>8&255]^c[255&w]^r[b+1],h=a[m>>>24]^o[y>>16&255]^l[w>>8&255]^c[255&g]^r[b+2],y=a[y>>>24]^o[w>>16&255]^l[g>>8&255]^c[255&m]^r[b+3],b+=4,w=u,g=p,m=h;for(let e=0;4>e;e++)s[t?3&-e:e]=f[w>>>24]<<24^f[g>>16&255]<<16^f[m>>8&255]<<8^f[255&y]^r[b++],u=w,w=g,g=m,m=y,y=u;return s}},De=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(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}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,r){let n;if(!(n=t.length))return[];const s=le.bitLength(t);for(let s=0;n>s;s+=4){this.incCounter(r);const n=e.encrypt(r);t[s]^=n[0],t[s+1]^=n[1],t[s+2]^=n[2],t[s+3]^=n[3]}return le.clamp(t,s)}},Te=de.hmacSha1;let Ue=_e&&Ce&&typeof Ae.importKey==G,Ie=_e&&Ce&&typeof Ae.deriveBits==G;class Le extends E{constructor({password:e,rawPassword:t,signed:n,encryptionStrength:s,checkPasswordOnly:i}){super({start(){r.assign(this,{ready:new y(e=>this.resolveReady=e),password:Pe(e,t),signed:n,strength:s-1,pending:new p})},async transform(e,t){const r=this,{password:n,strength:s,resolveReady:a,ready:o}=r;n?(await(async(e,t,r,n)=>{const s=await We(e,t,r,Ve(n,0,xe[t])),i=Ve(n,xe[t]);if(s[0]!=i[0]||s[1]!=i[1])throw new d(he)})(r,s,n,Ve(e,0,xe[s]+2)),e=Ve(e,xe[s]+2),i?t.error(new d(ge)):a()):await o;const l=new p(e.length-Re-(e.length-Re)%ye);t.enqueue(Be(r,e,l,0,Re,!0))},async flush(e){const{signed:t,ctr:r,hmac:n,pending:s,ready:i}=this;if(n&&r){await i;const a=Ve(s,0,s.length-Re),o=Ve(s,s.length-Re);let l=new p;if(a.length){const e=Qe(Fe,a);n.update(e);const t=r.update(e);l=Ze(Fe,t)}if(t){const e=Ve(Ze(Fe,n.digest()),0,Re);for(let t=0;Re>t;t++)if(e[t]!=o[t])throw new d(we)}e.enqueue(l)}}})}}class Oe extends E{constructor({password:e,rawPassword:t,encryptionStrength:n}){let s;super({start(){r.assign(this,{ready:new y(e=>this.resolveReady=e),password:Pe(e,t),strength:n-1,pending:new p})},async transform(e,t){const r=this,{password:n,strength:s,resolveReady:i,ready:a}=r;let o=new p;n?(o=await(async(e,t,r)=>{const n=me(new p(xe[t]));return Me(n,await We(e,t,r,n))})(r,s,n),i()):await a;const l=new p(o.length+e.length-e.length%ye);l.set(o,0),t.enqueue(Be(r,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:r,pending:n,ready:i}=this;if(r&&t){await i;let a=new p;if(n.length){const e=t.update(Qe(Fe,n));r.update(e),a=Ze(Fe,e)}s.signature=Ze(Fe,r.digest()).slice(0,Re),e.enqueue(Me(a,s.signature))}}}),s=this}}function Be(e,t,r,n,s,i){const{ctr:a,hmac:o,pending:l}=e,c=t.length-s;let f;for(l.length&&(t=Me(l,t),r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new p(t)).set(r,0)}return e})(r,c-c%ye)),f=0;c-ye>=f;f+=ye){const e=Qe(Fe,Ve(t,f,f+ye));i&&o.update(e);const s=a.update(e);i||o.update(s),r.set(Ze(Fe,s),f+n)}return e.pending=Ve(t,f),r}async function We(e,n,s,i){e.password=null;const a=await(async(e,t,r,n,s)=>{if(!Ue)return de.importKey(t);try{return await Ae.importKey("raw",t,r,!1,s)}catch{return Ue=!1,de.importKey(t)}})(0,s,Se,0,ke),o=await(async(e,t,r)=>{if(!Ie)return de.pbkdf2(t,e.salt,ze.iterations,r);try{return await Ae.deriveBits(e,t,r)}catch{return Ie=!1,de.pbkdf2(t,e.salt,ze.iterations,r)}})(r.assign({salt:i},ze),a,8*(2*Ee[n]+2)),l=new p(o),c=Qe(Fe,Ve(l,0,Ee[n])),f=Qe(Fe,Ve(l,Ee[n],2*Ee[n])),u=Ve(l,2*Ee[n]);return r.assign(e,{keys:{key:c,authentication:f,passwordVerification:u},ctr:new De(new Ne(c),t.from(ve)),hmac:new Te(f)}),u}function Pe(e,t){return t===K?oe(e):t}function Me(e,t){let r=e;return e.length+t.length&&(r=new p(e.length+t.length),r.set(e,0),r.set(t,e.length)),r}function Ve(e,t,r){return e.subarray(t,r)}function Ze(e,t){return e.fromBits(t)}function Qe(e,t){return e.toBits(t)}class He extends E{constructor({password:e,passwordVerification:t,checkPasswordOnly:n}){super({start(){r.assign(this,{password:e,passwordVerification:t}),Je(this,e)},transform(e,t){const r=this;if(r.password){const t=qe(r,e.subarray(0,12));if(r.password=null,t.at(-1)!=r.passwordVerification)throw new d(he);e=e.subarray(12)}n?t.error(new d(ge)):t.enqueue(qe(r,e))}})}}class $e extends E{constructor({password:e,passwordVerification:t}){super({start(){r.assign(this,{password:e,passwordVerification:t}),Je(this,e)},transform(e,t){const r=this;let n,s;if(r.password){r.password=null;const t=me(new p(12));t[11]=r.passwordVerification,n=new p(e.length+t.length),n.set(Ke(r,t),0),s=12}else n=new p(e.length),s=0;n.set(Ke(r,e),s),t.enqueue(n)}})}}function qe(e,t){const r=new p(t.length);for(let n=0;n<t.length;n++)r[n]=je(e)^t[n],Ge(e,r[n]);return r}function Ke(e,t){const r=new p(t.length);for(let n=0;n<t.length;n++)r[n]=je(e)^t[n],Ge(e,t[n]);return r}function Je(e,t){const n=[305419896,591751049,878082192];r.assign(e,{keys:n,crcKey0:new ie(n[0]),crcKey2:new ie(n[2])});for(let r=0;r<t.length;r++)Ge(e,t.charCodeAt(r))}function Ge(e,t){let[r,n,s]=e.keys;e.crcKey0.append([t]),r=~e.crcKey0.get(),n=Xe(a.imul(Xe(n+Ye(r)),134775813)+1),e.crcKey2.append([n>>>24]),s=~e.crcKey2.get(),e.keys=[r,n,s]}function je(e){const t=2|e.keys[2];return Ye(a.imul(t,1^t)>>>8)}function Ye(e){return 255&e}function Xe(e){return 4294967295&e}const et="Invalid uncompressed size";class tt extends E{constructor(e,{chunkSize:t,CompressionStreamZlib:r,CompressionStream:n}){super({});const{compressed:s,encrypted:i,useCompressionStream:a,zipCrypto:o,signed:l,level:c}=e,f=this;let u,d,p=super.readable;i&&!o||!l||(u=new ae,p=it(p,u)),s&&(p=st(p,a,{level:c,chunkSize:t},n,r,n)),i&&(o?p=it(p,new $e(e)):(d=new Oe(e),p=it(p,d))),nt(f,p,()=>{let e;i&&!o&&(e=d.signature),i&&!o||!l||(e=new g(u.value.buffer).getUint32(0)),f.signature=e})}}class rt extends E{constructor(e,{chunkSize:t,DecompressionStreamZlib:r,DecompressionStream:n}){super({});const{zipCrypto:s,encrypted:i,signed:a,signature:o,compressed:l,useCompressionStream:c,deflate64:f}=e;let u,p,h=super.readable;i&&(s?h=it(h,new He(e)):(p=new Le(e),h=it(h,p))),l&&(h=st(h,c,{chunkSize:t,deflate64:f},n,r,n)),i&&!s||!a||(u=new ae,h=it(h,u)),nt(this,h,()=>{if((!i||s)&&a){const e=new g(u.value.buffer);if(o!=e.getUint32(0,!1))throw new d(we)}})}}function nt(e,t,n){t=it(t,new E({flush:n})),r.defineProperty(e,"readable",{get:()=>t})}function st(e,t,r,n,s,i){const a=t&&n?n:s||i,o=r.deflate64?"deflate64-raw":"deflate-raw";try{e=it(e,new a(o,r))}catch(n){if(!t)throw n;if(s)e=it(e,new s(o,r));else{if(!i)throw n;e=it(e,new i(o,r))}}return e}function it(e,t){return e.pipeThrough(t)}const at="data",ot="close",lt="deflate",ct="inflate";class ft extends E{constructor(e,t){super({});const n=this,{codecType:s}=e;let i;s.startsWith(lt)?i=tt:s.startsWith(ct)&&(i=rt),n.outputSize=0;let a=0;const o=new i(e,t),l=super.readable,c=new E({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){r.assign(n,{inputSize:a})}}),f=new E({transform(t,r){if(t&&t.length&&(r.enqueue(t),n.outputSize+=t.length,e.outputSize!==K&&n.outputSize>e.outputSize))throw new d(et)},flush(){const{signature:e}=o;r.assign(n,{signature:e,inputSize:a})}});r.defineProperty(n,"readable",{get:()=>l.pipeThrough(c).pipeThrough(o).pipeThrough(f)})}}class ut extends E{constructor(e){let t;super({transform:function r(n,s){if(t){const e=new p(t.length+n.length);e.set(t),e.set(n,t.length),n=e,t=null}n.length>e?(s.enqueue(n.slice(0,e)),r(n.slice(e),s)):t=n},flush(e){t&&t.length&&e.enqueue(t)}})}}let dt=typeof F!=J;class pt{constructor(e,{readable:t,writable:n},{options:s,config:i,streamOptions:a,useWebWorkers:o,transferStreams:l,workerURI:c},f){const{signal:u}=a;return r.assign(e,{busy:!0,readable:t.pipeThrough(new ut(i.chunkSize)).pipeThrough(new ht(a),{signal:u}),writable:n,options:r.assign({},s),workerURI:c,transferStreams:l,terminate:()=>new y(t=>{const{worker:r,busy:n}=e;r?(n?e.resolveTerminated=t:(r.terminate(),t()),e.interface=null):t()}),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,f(e)}}),(o&&dt?mt:gt)(e,i)}}class ht extends E{constructor({onstart:e,onprogress:t,size:r,onend:n}){let s=0;super({async start(){e&&await wt(e,r)},async transform(e,n){s+=e.length,t&&await wt(t,s,r),n.enqueue(e)},async flush(){n&&await wt(n,s)}})}}async function wt(e,...t){try{await e(...t)}catch{}}function gt(e,t){return{run:()=>(async({options:e,readable:t,writable:r,onTaskFinished:n},s)=>{let i;try{if(!e.useCompressionStream)try{await void 0}catch{e.useCompressionStream=!0}i=new ft(e,s),await t.pipeThrough(i).pipeTo(r,{preventClose:!0,preventAbort:!0});const{signature:n,inputSize:a,outputSize:o}=i;return{signature:n,inputSize:a,outputSize:o}}catch(e){throw i&&(e.outputSize=i.outputSize),e}finally{n()}})(e,t)}}function mt(e,t){const{baseURI:n,chunkSize:s}=t;let{wasmURI:i}=t;if(!e.interface){let a;typeof i==G&&(i=i());try{a=((e,t,n)=>{const s={type:"module"};let i,a;if(typeof e==G&&(e=e()),e.startsWith("data:")||e.startsWith("blob:"))try{a=new F(e)}catch{a=new F(e,s)}else{try{i=new u(e,t)}catch{i=e}a=new F(i,s)}return a.addEventListener("message",e=>(async({data:e},t)=>{const{type:n,value:s,messageId:i,result:a,error:o}=e,{reader:l,writer:c,resolveResult:f,rejectResult:u,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:n,name:s,outputSize:i}=o,a=new d(e);r.assign(a,{stack:t,code:n,name:s,outputSize:i}),w(a)}else{if("pull"==n){const{value:e,done:r}=await l.read();bt({type:at,value:e,done:r,messageId:i},t)}n==at&&(await c.ready,await c.write(new p(s)),bt({type:"ack",messageId:i},t)),n==ot&&w(null,a)}}catch(o){bt({type:ot,messageId:i},t),w(o)}function w(e,t){e?u(e):f(t),c&&c.releaseLock(),h()}})(e,n)),a})(e.workerURI,n,e)}catch{return dt=!1,gt(e,t)}r.assign(e,{worker:a,interface:{run:()=>(async(e,t)=>{let n,s;const i=new y((e,t)=>{n=e,s=t});r.assign(e,{reader:null,writer:null,resolveResult:n,rejectResult:s,result:i});const{readable:a,options:o}=e,{writable:l,closed:c}=(e=>{let t;const r=new y(e=>t=e);return{writable:new v({async write(t){const r=e.getWriter();await r.ready,await r.write(t),r.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:r}})(e.writable),f=bt({type:"start",options:o,config:t,readable:a,writable:l},e);f||r.assign(e,{reader:a.getReader(),writer:l.getWriter()});const u=await i;return f||await l.getWriter().close(),await c,u})(e,{chunkSize:s,wasmURI:i,baseURI:n})}})}return e.interface}let yt=!0;function bt(e,{worker:t,writer:r,onTaskFinished:n,transferStreams:s}){try{const{value:r,readable:n,writable:i}=e,a=[];if(r&&(r.byteLength<r.buffer.byteLength?e.value=r.buffer.slice(0,r.byteLength):e.value=r.buffer,a.push(e.value)),s&&yt?(n&&a.push(n),i&&a.push(i)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch{yt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw r&&r.releaseLock(),n(),e}}let St=[];const zt=[];let kt=0;async function xt(e,t){const{options:r,config:n}=t,{transferStreams:i,useWebWorkers:a,useCompressionStream:o,compressed:l,signed:c,encrypted:f}=r,{workerURI:u,maxWorkers:d}=n;t.transferStreams=i||i===K;const p=!(l||c||f||t.transferStreams);return t.useWebWorkers=!p&&(a||a===K&&n.useWebWorkers),t.workerURI=t.useWebWorkers&&u?u:K,r.useCompressionStream=o||o===K&&n.useCompressionStream,(await(async()=>{const r=St.find(e=>!e.busy);if(r)return Et(r),new pt(r,e,t,h);if(St.length<d){const r={indexWorker:kt};return kt++,St.push(r),new pt(r,e,t,h)}return new y(r=>zt.push({resolve:r,stream:e,workerOptions:t}))})()).run();function h(e){if(zt.length){const[{resolve:t,stream:r,workerOptions:n}]=zt.splice(0,1);t(new pt(e,r,n,h))}else e.worker?(Et(e),((e,t)=>{const{config:r}=t,{terminateWorkerTimeout:n}=r;s.isFinite(n)&&n>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout(async()=>{St=St.filter(t=>t!=e);try{await e.terminate()}catch{}},n))})(e,t)):St=St.filter(t=>t!=e)}}function Et(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const Rt="HTTP error ",vt="HTTP Range not supported",_t="Range",At="GET",Ct="bytes",Ft=65536,Nt="writable";class Dt{constructor(){this.size=0}init(){this.initialized=!0}}class Tt extends Dt{get readable(){const e=this,{chunkSize:t=Ft}=e,r=new R({start(){this.chunkOffset=0},async pull(n){const{offset:s=0,size:i,diskNumberStart:o}=r,{chunkOffset:l}=this,c=i===K?t:a.min(t,i-l),f=await rr(e,s+l,c,o);n.enqueue(f),l+t>i||i===K&&!f.length&&c?n.close():this.chunkOffset+=t}});return r}}class Ut extends Dt{constructor(){super();const e=this,t=new v({write(t){if(!e.initialized)throw new d("Writer not initialized");return e.writeUint8Array(t)}});r.defineProperty(e,Nt,{get:()=>t})}writeUint8Array(){}}class It extends Tt{constructor(e){super(),r.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const r=this,n=e+t,s=e||n<r.size?r.blob.slice(e,n):r.blob;let i=await s.arrayBuffer();return i.byteLength>t&&(i=i.slice(e,n)),new p(i)}}class Lt extends Dt{constructor(e){super();const t=new E,n=[];e&&n.push(["Content-Type",e]),r.defineProperty(this,Nt,{get:()=>t.writable}),this.blob=new f(t.readable,{headers:n}).blob()}getData(){return this.blob}}class Ot extends Tt{constructor(e,t){super(),Wt(this,e,t)}async init(){await Pt(this,Kt,Qt),super.init()}readUint8Array(e,t){return Mt(this,e,t,Kt,Qt)}}class Bt extends Tt{constructor(e,t){super(),Wt(this,e,t)}async init(){await Pt(this,Jt,Ht),super.init()}readUint8Array(e,t){return Mt(this,e,t,Jt,Ht)}}function Wt(e,t,n){const{preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:o}=n;delete(n=r.assign({},n)).preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.combineSizeEocd,delete n.useXHR,r.assign(e,{url:t,options:n,preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:o})}async function Pt(e,t,r){const{url:n,preventHeadRequest:i,useRangeHeader:a,forceRangeRequests:o,combineSizeEocd:l}=e;if((e=>{const{baseURI:t}=ee(),{protocol:r}=new u(e,t);return"http:"==r||"https:"==r})(n)&&(a||o)&&(void 0===i||i)){const n=await t(At,e,Vt(e,l?-22:void 0)),i=n.headers.get("Accept-Ranges");if(!(o||i&&i.toLowerCase()==Ct))throw new d(vt);{let i;l&&(e.eocdCache=new p(await n.arrayBuffer()));const a=n.headers.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(i=s(t))}}i===K?await qt(e,t,r):e.size=i}}else await qt(e,t,r)}async function Mt(e,t,r,n,s){const{useRangeHeader:i,forceRangeRequests:a,eocdCache:o,size:l,options:c}=e;if(i||a){if(o&&t==l-M&&r==M)return o;if(l>t){t+r>l&&(r=l-t);const s=await n(At,e,Vt(e,t,r));if(206!=s.status)throw new d(vt);return new p(await s.arrayBuffer())}return new p}{const{data:n}=e;return n||await s(e,c),new p(e.data.subarray(t,t+r))}}function Vt(e,t=0,n=1){return r.assign({},Zt(e),{[_t]:Ct+"="+(0>t?t:t+"-"+(t+n-1))})}function Zt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?r.fromEntries(t):t}async function Qt(e){await $t(e,Kt)}async function Ht(e){await $t(e,Jt)}async function $t(e,t){const r=await t(At,e,Zt(e));e.data=new p(await r.arrayBuffer()),e.size||(e.size=e.data.length)}async function qt(e,t,r){if(e.preventHeadRequest)await r(e,e.options);else{const n=(await t("HEAD",e,Zt(e))).headers.get("Content-Length");n?e.size=s(n):await r(e,e.options)}}async function Kt(e,{options:t,url:n},s){const i=await fetch(n,r.assign({},t,{method:e,headers:s}));if(400>i.status)return i;throw 416==i.status?new d(vt):new d(Rt+(i.statusText||i.status))}function Jt(e,{url:t},n){return new y((s,i)=>{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)}),s({status:a.status,arrayBuffer:()=>a.response,headers:new l(e)})}else i(416==a.status?new d(vt):new d(Rt+(a.statusText||a.status)))},!1),a.addEventListener("error",e=>i(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 Gt extends Tt{constructor(e,t={}){super(),r.assign(this,{url:e,reader:t.useXHR?new Bt(e,t):new Ot(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 jt extends Tt{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await y.all(t.map(async(r,n)=>{await r.init(),n!=t.length-1&&(e.lastDiskOffset+=r.size),e.size+=r.size})),super.init()}async readUint8Array(e,t,r=0){const n=this,{readers:s}=this;let i,o=r;-1==o&&(o=s.length-1);let l=e;for(;s[o]&&l>=s[o].size;)l-=s[o].size,o++;const c=s[o];if(c){const s=c.size;if(l+t>s){const a=s-l;i=new p(t);const o=await rr(c,l,a);i.set(o,0);const f=await n.readUint8Array(e+a,t-a,r);i.set(f,a),o.length+f.length<t&&(i=i.subarray(0,o.length+f.length))}else i=await rr(c,l,t)}else i=new p;return n.lastDiskNumber=a.max(o,n.lastDiskNumber),i}}class Yt extends Dt{constructor(e,t=4294967295){super();const n=this;let s,i,a;r.assign(n,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new v({async write(t){const{availableSize:r}=n;if(a)t.length<r?await l(t):(await l(t.subarray(0,r)),await c(),n.diskOffset+=s.size,n.diskNumber++,a=null,await this.write(t.subarray(r)));else{const{value:r,done:o}=await e.next();if(o&&!r)throw new d("Writer iterator completed too soon");s=r,s.size=0,s.maxSize&&(n.maxSize=s.maxSize),n.availableSize=n.maxSize,await tr(s),i=r.writable,a=i.getWriter(),await this.write(t)}},async close(){await a.ready,await c()}});async function l(e){const t=e.length;t&&(await a.ready,await a.write(e),s.size+=t,n.size+=t,n.availableSize-=t)}async function c(){await a.close()}r.defineProperty(n,Nt,{get:()=>o})}}class Xt{constructor(e){return t.isArray(e)&&(e=new jt(e)),e instanceof R&&(e={readable:e}),e}}class er{constructor(e){return e.writable===K&&typeof e.next==G&&(e=new Yt(e)),e instanceof v&&(e={writable:e}),e.size===K&&(e.size=0),e instanceof Yt||r.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}}async function tr(e,t){if(!e.init||e.initialized)return y.resolve();await e.init(t)}function rr(e,t,r,n){return e.readUint8Array(t,r,n)}const nr="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function sr(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let r=0;r<e.length;r++)t+=nr[e[r]];return t}})(e):new S(t).decode(e)}const ir="filename",ar="rawFilename",or="comment",lr="rawComment",cr="uncompressedSize",fr="compressedSize",ur="offset",dr="diskNumberStart",pr="lastModDate",hr="rawLastModDate",wr="lastAccessDate",gr="creationDate",mr="internalFileAttributes",yr="externalFileAttributes",br="msDosCompatible",Sr="zip64",zr="encrypted",kr="version",xr="versionMadeBy",Er="zipCrypto",Rr="directory",vr="executable",_r="compressionMethod",Ar="signature",Cr="extraField",Fr=[ir,ar,fr,cr,pr,hr,or,lr,wr,gr,ur,dr,dr,mr,yr,br,Sr,zr,kr,xr,Er,Rr,vr,_r,Ar,Cr,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class Nr{constructor(e){Fr.forEach(t=>this[t]=e[t])}}const Dr="password",Tr="rawPassword",Ur="passThrough",Ir="signal",Lr="useWebWorkers",Or="useCompressionStream",Br="preventClose",Wr="supportZip64SplitFile",Pr="offset",Mr="usdz",Vr="File format is not recognized",Zr="End of central directory not found",Qr="End of Zip64 central directory locator not found",Hr="Central directory header not found",$r="Local file header not found",qr="Zip64 extra field not found",Kr="File contains encrypted entry",Jr="Encryption method not supported",Gr="Compression method not supported",jr="Split zip file",Yr="Overlapping entry found",Xr="utf-8",en="cp437",tn=[[cr,D],[fr,D],[ur,D],[dr,T]],rn={[T]:{getValue:hn,bytes:4},[D]:{getValue:wn,bytes:8}};class nn{constructor(e,t={}){r.assign(this,{reader:new Xt(e),options:t,config:ee(),readRanges:[]})}async*getEntriesGenerator(e={}){const t=this;let{reader:n}=t;const{config:s}=t;if(await tr(n),n.size!==K&&n.readUint8Array||(n=new It(await new f(n.readable).blob()),await tr(n)),n.size<M)throw new d(Vr);n.chunkSize=te(s);const i=await(async(e,t,r)=>{const n=new p(4);var s;return s=t,gn(n).setUint32(0,s,!0),await i(22)||await i(a.min(1048582,r));async function i(t){const s=r-t,i=await rr(e,s,t);for(let e=i.length-22;e>=0;e--)if(i[e]==n[0]&&i[e+1]==n[1]&&i[e+2]==n[2]&&i[e+3]==n[3])return{offset:s+e,buffer:i.slice(e,e+22).buffer}}})(n,B,n.size);if(!i)throw hn(gn(await rr(n,0,4)))==I?new d(jr):new d(Zr);const o=gn(i);let l=hn(o,12),c=hn(o,16);const u=i.offset,h=pn(o,20),w=u+M+h;let g=pn(o,4);const m=n.lastDiskNumber||0;let b=pn(o,6),S=pn(o,8),z=0,k=0;if(c==D||l==D||S==T||b==T){const e=gn(await rr(n,i.offset-20,20));if(hn(e,0)==P){c=wn(e,8);let t=await rr(n,c,56,-1),r=gn(t);const s=i.offset-20-56;if(hn(r,0)!=W&&c!=s){const e=c;c=s,c>e&&(z=c-e),t=await rr(n,c,56,-1),r=gn(t)}if(hn(r,0)!=W)throw new d(Qr);g==T&&(g=hn(r,16)),b==T&&(b=hn(r,20)),S==T&&(S=wn(r,32)),l==D&&(l=wn(r,40)),c-=l}}if(c<n.size||(z=n.size-c-l-M,c=n.size-l-M),m!=g)throw new d(jr);if(0>c)throw new d(Vr);let x=0,R=await rr(n,c,l,b),v=gn(R);if(l){const e=i.offset-l;if(hn(v,x)!=O&&c!=e){const t=c;c=e,c>t&&(z+=c-t),R=await rr(n,c,l,b),v=gn(R)}}const _=i.offset-c-(n.lastDiskOffset||0);if(l==_||0>_||(l=_,R=await rr(n,c,l,b),v=gn(R)),0>c||c>=n.size)throw new d(Vr);const A=cn(t,e,"filenameEncoding"),C=cn(t,e,"commentEncoding");for(let i=0;S>i;i++){const o=new sn(n,s,t.options);if(hn(v,x)!=O)throw new d(Hr);an(o,v,x+6);const l=!!o.bitFlag.languageEncodingFlag,c=x+46,u=c+o.filenameLength,p=u+o.extraFieldLength,h=pn(v,x+4),w=!(h>>8),g=h>>8==3,m=R.subarray(c,u),b=pn(v,x+32),_=p+b,F=R.subarray(p,_),N=l,D=l,T=hn(v,x+38),U=w&&!(16&~dn(v,x+38))||g&&16384==(T>>16&61440)||m.length&&47==m.at(-1),I=g&&!!(T>>16&73),L=hn(v,x+42)+z;r.assign(o,{versionMadeBy:h,msDosCompatible:w,compressedSize:0,uncompressedSize:0,commentLength:b,directory:U,offset:L,diskNumberStart:pn(v,x+34),internalFileAttributes:pn(v,x+36),externalFileAttributes:T,rawFilename:m,filenameUTF8:N,commentUTF8:D,rawExtraField:R.subarray(u,p),executable:I}),o.internalFileAttribute=o.internalFileAttributes,o.externalFileAttribute=o.externalFileAttributes;const B=cn(t,e,"decodeText")||sr,W=N?Xr:A||en,P=D?Xr:C||en;let M=B(m,W);M===K&&(M=sr(m,W));let V=B(F,P);V===K&&(V=sr(F,P)),r.assign(o,{rawComment:F,filename:M,comment:V,directory:U||M.endsWith(Q)}),k=a.max(L,k),on(o,o,v,x+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const Z=new Nr(o);Z.getData=(e,r)=>o.getData(e,Z,t.readRanges,r),Z.arrayBuffer=async e=>{const r=new E,[n]=await y.all([new f(r.readable).arrayBuffer(),o.getData(r,Z,t.readRanges,e)]);return n},x=_;const{onprogress:H}=e;if(H)try{await H(i+1,S,new Nr(o))}catch{}yield Z}const F=cn(t,e,"extractPrependedData"),N=cn(t,e,"extractAppendedData");return F&&(t.prependedData=k>0?await rr(n,0,k):new p),t.comment=h?await rr(n,u+M,h):new p,N&&(t.appendedData=w<n.size?await rr(n,w,n.size-w):new p),!0}async getEntries(e={}){const t=[];for await(const r of this.getEntriesGenerator(e))t.push(r);return t}async close(){}}class sn{constructor(e,t,n){r.assign(this,{reader:e,config:t,options:n})}async getData(e,t,n,s={}){const i=this,{reader:a,offset:o,diskNumberStart:l,extraFieldAES:c,extraFieldZip64:f,compressionMethod:u,config:h,bitFlag:w,signature:g,rawLastModDate:m,uncompressedSize:y,compressedSize:b}=i,{dataDescriptor:S}=w,z=t.localDirectory={},k=gn(await rr(a,o,H,l));let x=cn(i,s,Dr),E=cn(i,s,Tr);const R=cn(i,s,Ur);if(x=x&&x.length&&x,E=E&&E.length&&E,c&&99!=c.originalCompressionMethod)throw new d(Gr);if(0!=u&&8!=u&&9!=u&&!R)throw new d(Gr);if(hn(k,0)!=U)throw new d($r);an(z,k,4);const{extraFieldLength:_,filenameLength:A,lastAccessDate:C,creationDate:F}=z;z.rawExtraField=_?await rr(a,o+H+A,_,l):new p,on(i,z,k,4,!0),r.assign(t,{lastAccessDate:C,creationDate:F});const N=i.encrypted&&z.encrypted&&!R,D=N&&!c;if(R||(t.zipCrypto=D),N){if(!D&&c.strength===K)throw new d(Jr);if(!x&&!E)throw new d(Kr)}const T=o+H+A+_,I=b,O=a.readable;r.assign(O,{diskNumberStart:l,offset:T,size:I});const B=cn(i,s,Ir),W=cn(i,s,"checkPasswordOnly");let P=cn(i,s,"checkOverlappingEntry");const M=cn(i,s,"checkOverlappingEntryOnly");M&&(P=!0);const{onstart:V,onprogress:Z,onend:Q}=s,$=9==u;let q=cn(i,s,Or);$&&(q=!1);const J={options:{codecType:ct,password:x,rawPassword:E,zipCrypto:D,encryptionStrength:c&&c.strength,signed:cn(i,s,"checkSignature")&&!R,passwordVerification:D&&(S?m>>>8&255:g>>>24&255),outputSize:R?b:y,signature:g,compressed:0!=u&&!R,encrypted:i.encrypted&&!R,useWebWorkers:cn(i,s,Lr),useCompressionStream:q,transferStreams:cn(i,s,"transferStreams"),deflate64:$,checkPasswordOnly:W},config:h,streamOptions:{signal:B,size:I,onstart:V,onprogress:Z,onend:Q}};let G;P&&await(async({reader:e,fileEntry:t,offset:r,diskNumberStart:n,signature:s,compressedSize:i,uncompressedSize:a,dataOffset:o,dataDescriptor:l,extraFieldZip64:c,readRanges:f})=>{let u=0;if(n)for(let t=0;n>t;t++)u+=e.readers[t].size;let p=0;if(l&&(p=c?20:12),p){const r=await rr(e,o+i,p+4,n);if(hn(gn(r),0)==L){const e=hn(gn(r),4);let n,o;c?(n=wn(gn(r),8),o=wn(gn(r),16)):(n=hn(gn(r),8),o=hn(gn(r),12)),(t.encrypted&&!t.zipCrypto||e==s)&&n==i&&o==a&&(p+=4)}}const h={start:u+r,end:u+o+i+p,fileEntry:t};for(const e of f)if(e.fileEntry!=t&&h.start>=e.start&&h.start<e.end){const t=new d(Yr);throw t.overlappingEntry=e.fileEntry,t}f.push(h)})({reader:a,fileEntry:t,offset:o,diskNumberStart:l,signature:g,compressedSize:b,uncompressedSize:y,dataOffset:T,dataDescriptor:S||z.bitFlag.dataDescriptor,extraFieldZip64:f||z.extraFieldZip64,readRanges:n});try{if(!M){W&&(e=new v),e=new er(e),await tr(e,R?b:y),({writable:G}=e);const{outputSize:t}=await xt({readable:O,writable:G},J);if(e.size+=t,t!=(R?b:y))throw new d(et)}}catch(t){if(t.outputSize!==K&&(e.size+=t.outputSize),!W||t.message!=ge)throw t}finally{cn(i,s,Br)||!G||G.locked||await G.getWriter().close()}return W||M?K:e.getData?e.getData():G}}function an(e,t,n){const s=e.rawBitFlag=pn(t,n+2),i=!(1&~s),a=hn(t,n+6);r.assign(e,{encrypted:i,version:pn(t,n),bitFlag:{level:(6&s)>>1,dataDescriptor:!(8&~s),languageEncodingFlag:(s&Z)==Z},rawLastModDate:a,lastModDate:fn(a),filenameLength:pn(t,n+22),extraFieldLength:pn(t,n+24)})}function on(e,t,n,s,i){const{rawExtraField:a}=t,c=t.extraField=new l,f=gn(new p(a));let u=0;try{for(;u<a.length;){const e=pn(f,u),t=pn(f,u+2);c.set(e,{type:e,data:a.slice(u+4,u+4+t)}),u+=4+t}}catch{}const h=pn(n,s+4);r.assign(t,{signature:hn(n,s+10),compressedSize:hn(n,s+14),uncompressedSize:hn(n,s+18)});const w=c.get(1);w&&(((e,t)=>{t.zip64=!0;const r=gn(e.data),n=tn.filter(([e,r])=>t[e]==r);for(let s=0,i=0;s<n.length;s++){const[a,o]=n[s];if(t[a]==o){const n=rn[o];t[a]=e[a]=n.getValue(r,i),i+=n.bytes}else if(e[a])throw new d(qr)}})(w,t),t.extraFieldZip64=w);const g=c.get(28789);g&&(ln(g,ir,ar,t,e),t.extraFieldUnicodePath=g);const m=c.get(25461);m&&(ln(m,or,lr,t,e),t.extraFieldUnicodeComment=m);const y=c.get(39169);y?(((e,t,n)=>{const s=gn(e.data),i=dn(s,4);r.assign(e,{vendorVersion:dn(s,0),vendorId:dn(s,2),strength:i,originalCompressionMethod:n,compressionMethod:pn(s,5)}),t.compressionMethod=e.compressionMethod})(y,t,h),t.extraFieldAES=y):t.compressionMethod=h;const b=c.get(10);b&&(((e,t)=>{const n=gn(e.data);let s,i=4;try{for(;i<e.data.length&&!s;){const t=pn(n,i),r=pn(n,i+2);1==t&&(s=e.data.slice(i+4,i+4+r)),i+=4+r}}catch{}try{if(s&&24==s.length){const n=gn(s),i=n.getBigUint64(0,!0),a=n.getBigUint64(8,!0),o=n.getBigUint64(16,!0);r.assign(e,{rawLastModDate:i,rawLastAccessDate:a,rawCreationDate:o});const l={lastModDate:un(i),lastAccessDate:un(a),creationDate:un(o)};r.assign(e,l),r.assign(t,l)}}catch{}})(b,t),t.extraFieldNTFS=b);const S=c.get(V);S&&(((e,t,r)=>{const n=gn(e.data),s=dn(n,0),i=[],a=[];r?(1&~s||(i.push(pr),a.push(hr)),2&~s||(i.push(wr),a.push("rawLastAccessDate")),4&~s||(i.push(gr),a.push("rawCreationDate"))):5>e.data.length||(i.push(pr),a.push(hr));let l=1;i.forEach((r,s)=>{if(e.data.length>=l+4){const i=hn(n,l);t[r]=e[r]=new o(1e3*i);const c=a[s];e[c]=i}l+=4})})(S,t,i),t.extraFieldExtendedTimestamp=S);const z=c.get(6534);z&&(t.extraFieldUSDZ=z)}function ln(e,t,n,s,i){const a=gn(e.data),o=new ie;o.append(i[n]);const l=gn(new p(4));l.setUint32(0,o.get(),!0);const c=hn(a,1);r.assign(e,{version:dn(a,0),[t]:sr(e.data.subarray(5)),valid:!i.bitFlag.languageEncodingFlag&&c==hn(l,0)}),e.valid&&(s[t]=e[t],s[t+"UTF8"]=!0)}function cn(e,t,r){return t[r]===K?e.options[r]:t[r]}function fn(e){const t=(4294901760&e)>>16,r=65535&e;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 un(e){return new o(s(e/i(1e4)-i(116444736e5)))}function dn(e,t){return e.getUint8(t)}function pn(e,t){return e.getUint16(t,!0)}function hn(e,t){return e.getUint32(t,!0)}function wn(e,t){return s(e.getBigUint64(t,!0))}function gn(e){return new g(e.buffer)}const mn="File already exists",yn="Zip file comment exceeds 64KB",bn="File entry comment exceeds 64KB",Sn="File entry name exceeds 64KB",zn="Version exceeds 65535",kn="The strength must equal 1, 2, or 3",xn="Extra field type exceeds 65535",En="Extra field data exceeds 64KB",Rn="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",vn="Undefined uncompressed size",_n="Zip file not empty",An=new p([7,0,2,0,65,69,3,0,0]);let Cn=0;const Fn=[];class Nn{constructor(e,t={}){const n=(e=new er(e)).availableSize!==K&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==K&&e.maxSize>0&&e.maxSize!==1/0;r.assign(this,{writer:e,addSplitZipSignature:n,options:t,config:ee(),files:new l,filenames:new c,offset:t[Pr]===K?e.size||e.writable.size||0:t[Pr],pendingEntriesSize:0,pendingAddFileCalls:new c,bufferedWrites:0})}async prependZip(e){if(this.filenames.size)throw new d(_n);e=new Xt(e);const t=new nn(e.readable),n=await t.getEntries();await t.close(),await e.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=e.size,this.filenames=new c(n.map(e=>e.filename)),this.files=new l(n.map(e=>{const{version:t,compressionMethod:n,lastModDate:s,lastAccessDate:i,creationDate:a,rawFilename:o,bitFlag:l,encrypted:c,uncompressedSize:f,compressedSize:u,diskOffset:d,diskNumber:h,zip64:w}=e;let{rawExtraFieldZip64:g,rawExtraFieldAES:m,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:b,rawExtraField:S}=e;const{level:z,languageEncodingFlag:k,dataDescriptor:x}=l;g=g||new p,m=m||new p,y=y||new p,b=b||new p,S=S||new p;const E=Zn(g,m,y,b,S),R=w&&f>D,v=w&&u>D,{headerArray:_,headerView:A}=Qn({version:t,bitFlag:Hn(z,k,x,c,n),compressionMethod:n,uncompressedSize:f,compressedSize:u,lastModDate:s,rawFilename:o,zip64CompressedSize:v,zip64UncompressedSize:R,extraFieldLength:E});return r.assign(e,{zip64UncompressedSize:R,zip64CompressedSize:v,zip64Offset:w&&this.offset-d>D,zip64DiskNumberStart:w&&h>T,rawExtraFieldZip64:g,rawExtraFieldAES:m,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:b,rawExtraField:S,extendedTimestamp:y.length>0||b.length>0,extraFieldExtendedTimestampFlag:1+(i?2:0)+(a?4:0),headerArray:_,headerView:A}),[e.filename,e]}))}async add(e="",n,s={}){const l=this,{pendingAddFileCalls:c,config:u}=l;let w;Cn<u.maxWorkers?Cn++:await new y(e=>Fn.push(e));try{if(e=e.trim(),l.filenames.has(e))throw new d(mn);return l.filenames.add(e),w=(async(e,n,s,l)=>{n=n.trim();const c=In(e,l,br),u=In(e,l,xr,c?20:768),w=In(e,l,vr);if(u>T)throw new d(zn);let g=In(e,l,yr,0);!l[Rr]&&n.endsWith(Q)&&(l[Rr]=!0),In(e,l,Rr)?(n.endsWith(Q)||(n+=Q),0===g&&(g=16,c||(g|=16877<<16))):c||0!==g||(g=w?493<<16:27525120);const m=In(e,l,"encodeText",oe);let b=m(n);if(b===K&&(b=oe(n)),Zn(b)>T)throw new d(Sn);const S=l[or]||"";let z=m(S);if(z===K&&(z=oe(S)),Zn(z)>T)throw new d(bn);const k=In(e,l,kr,20);if(k>T)throw new d(zn);const x=In(e,l,pr,new o),R=In(e,l,wr),v=In(e,l,gr),_=In(e,l,mr,0),A=In(e,l,Ur);let C,F;A||(C=In(e,l,Dr),F=In(e,l,Tr));const N=In(e,l,"encryptionStrength",3),O=In(e,l,Er),B=In(e,l,"extendedTimestamp",!0),W=In(e,l,"keepOrder",!0),P=In(e,l,Lr),M=In(e,l,"bufferedWrite"),Z=In(e,l,"dataDescriptorSignature",!1),J=In(e,l,Ir),G=In(e,l,"useUnicodeFileNames",!0),j=In(e,l,_r);let Y=In(e,l,"level"),X=In(e,l,Or),ee=In(e,l,"dataDescriptor");M&&ee===K&&(ee=!1),(ee===K||O)&&(ee=!0),Y!==K&&6!=Y&&(X=!1),X||e.config.CompressionStream!==K||e.config.CompressionStreamZlib!==K||(Y=0);let re=In(e,l,Sr);if(!O&&(C!==K||F!==K)&&(1>N||N>3))throw new d(kn);let ne=new p;const se=l[Cr];if(se){let e=0,t=0;se.forEach(t=>e+=4+Zn(t)),ne=new p(e),se.forEach((e,r)=>{if(r>T)throw new d(xn);if(Zn(e)>T)throw new d(En);Mn(ne,new h([r]),t),Mn(ne,new h([Zn(e)]),t+2),Mn(ne,e,t+4),t+=4+Zn(e)})}let ie=0,ae=0,le=0;if(A&&(le=l[cr],le===K))throw new d(vn);const ce=!0===re;s&&(s=new Xt(s),await tr(s),A?(l.uncompressedSize=le,ie=Ln(le)):s.size===K?(ee=!0,(re||re===K)&&(re=!0,le=ie=4294967296)):(l.uncompressedSize=le=s.size,ie=Ln(le)));const{diskOffset:fe,diskNumber:ue,maxSize:de}=e.writer,pe=ce||le>D,he=ce||ie>D,we=ce||e.offset+e.pendingEntriesSize-fe>D,ge=In(e,l,Wr,!0)&&ce||ue+a.ceil(e.pendingEntriesSize/de)>T;if(we||pe||he||ge){if(!1===re||!W)throw new d(Rn);re=!0}re=re||!1;const me=In(e,l,zr),ye=(e=>{const{rawFilename:t,lastModDate:r,lastAccessDate:n,creationDate:s,level:o,zip64:l,zipCrypto:c,useUnicodeFileNames:f,dataDescriptor:u,directory:d,rawExtraField:h,encryptionStrength:w,extendedTimestamp:g,passThrough:m,encrypted:y,zip64UncompressedSize:b,zip64CompressedSize:S,zip64Offset:z,zip64DiskNumberStart:k,uncompressedSize:x,offset:E,diskNumberStart:R}=e;let{version:v,compressionMethod:_}=e;const A=!d&&(o>0||o===K&&0!==_);let C;const F=m||!A,N=l&&(e.bufferedWrite||!b&&!S||F);if(l){let e=4;b&&(e+=8),S&&(e+=8),z&&(e+=8),k&&(e+=4),C=new p(e);const t=Vn(C);if(Bn(t,0,1),Bn(t,2,Zn(C)-4),N){const e=Vn(C);let t=4;b&&(Pn(e,t,i(x)),t+=8),S&&F&&(Pn(e,t,i(x)),t+=8),z&&(Pn(e,t,i(E)),t+=8),k&&(Wn(e,t,R),t+=4)}}else C=new p;let D,T,I,L;if(y&&!c){D=new p(Zn(An)+2);const e=Vn(D);Bn(e,0,39169),Mn(D,An,2),On(e,8,w)}else D=new p;if(g){I=new p(9+(n?4:0)+(s?4:0));const e=Vn(I);Bn(e,0,V),Bn(e,2,Zn(I)-4),L=1+(n?2:0)+(s?4:0),On(e,4,L);let t=5;Wn(e,t,a.floor(r.getTime()/1e3)),t+=4,n&&(Wn(e,t,a.floor(n.getTime()/1e3)),t+=4),s&&Wn(e,t,a.floor(s.getTime()/1e3));try{T=new p(36);const e=Vn(T),t=Un(r);Bn(e,0,10),Bn(e,2,32),Bn(e,8,1),Bn(e,10,24),Pn(e,12,t),Pn(e,20,Un(n)||t),Pn(e,28,Un(s)||t)}catch{T=new p}}else T=I=new p;_===K&&(_=A?8:0),l&&(v=v>45?v:45),y&&!c&&(v=v>51?v:51,D[9]=_,_=99);const O=N?Zn(C):0,B=O+Zn(D,I,T,h),{headerArray:W,headerView:P,rawLastModDate:M}=Qn({version:v,bitFlag:Hn(o,f,u,y,_),compressionMethod:_,uncompressedSize:x,lastModDate:q>r?q:r>$?$:r,rawFilename:t,zip64CompressedSize:S,zip64UncompressedSize:b,extraFieldLength:B});let Z=H;const Q=new p(Z+Zn(t)+B),J=Vn(Q);return Wn(J,0,U),Mn(Q,W,4),Mn(Q,t,Z),Z+=Zn(t),N&&Mn(Q,C,Z),Z+=O,Mn(Q,D,Z),Z+=Zn(D),Mn(Q,I,Z),Z+=Zn(I),Mn(Q,T,Z),Z+=Zn(T),Mn(Q,h,Z),u&&(Wn(J,18,0),Wn(J,22,0)),{localHeaderArray:Q,localHeaderView:J,headerArray:W,headerView:P,lastModDate:r,rawLastModDate:M,encrypted:y,compressed:A,version:v,compressionMethod:_,extraFieldExtendedTimestampFlag:L,rawExtraFieldZip64:C,localExtraFieldZip64Length:O,rawExtraFieldExtendedTimestamp:I,rawExtraFieldNTFS:T,rawExtraFieldAES:D,extraFieldLength:B}})(l=r.assign({},l,{rawFilename:b,rawComment:z,version:k,versionMadeBy:u,lastModDate:x,lastAccessDate:R,creationDate:v,rawExtraField:ne,zip64:re,zip64UncompressedSize:pe,zip64CompressedSize:he,zip64Offset:we,zip64DiskNumberStart:ge,password:C,rawPassword:F,level:Y,useWebWorkers:P,encryptionStrength:N,extendedTimestamp:B,zipCrypto:O,bufferedWrite:M,keepOrder:W,useUnicodeFileNames:G,dataDescriptor:ee,dataDescriptorSignature:Z,signal:J,msDosCompatible:c,internalFileAttribute:_,internalFileAttributes:_,externalFileAttribute:g,externalFileAttributes:g,useCompressionStream:X,passThrough:A,encrypted:!!(C&&Zn(C)||F&&Zn(F))||A&&me,signature:l[Ar],compressionMethod:j,uncompressedSize:le,offset:e.offset-fe,diskNumberStart:ue})),be=(({zip64:e,dataDescriptor:t,dataDescriptorSignature:r})=>{let n,s=new p,i=0,a=e?20:12;return r&&(a+=4),t&&(s=new p(a),n=Vn(s),r&&(i=4,Wn(n,0,L))),{dataDescriptorArray:s,dataDescriptorView:n,dataDescriptorOffset:i}})(l),Se=Zn(ye.localHeaderArray,be.dataDescriptorArray);let ze;ae=Se+ie,e.options[Mr]&&(ae+=ae+64),e.pendingEntriesSize+=ae;try{ze=await(async(e,n,s,a,o)=>{const{files:l,writer:c}=e,{keepOrder:u,dataDescriptor:h,signal:w}=o,{headerInfo:g}=a,m=e.options[Mr],b=t.from(l.values()).pop();let S,z,k,x,R,v,_,A={};l.set(n,A);try{let t;u&&(t=b&&b.lock,A.lock=new y(e=>k=e)),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&u)&&h||m?(v=c,await C()):(v=new E,v.size=0,S=!0,e.bufferedWrites++,await tr(c)),await tr(v);const{writable:z,diskOffset:N}=c;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new p(4);Wn(Vn(t),0,I),await Tn(c,t),e.offset+=4}m&&((e,t)=>{const{headerInfo:r}=e;let{localHeaderArray:n,extraFieldLength:s}=r,i=Vn(n),a=64-(t+Zn(n))%64;4>a&&(a+=64);const o=new p(a),l=Vn(o);Bn(l,0,6534),Bn(l,2,a-2);const c=n;r.localHeaderArray=n=new p(Zn(c)+a),Mn(n,c),Mn(n,o,Zn(c)),i=Vn(n),Bn(i,28,s+a),e.metadataSize+=a})(a,e.offset-N);const{localHeaderView:T,localHeaderArray:U}=g;S||(await t,await F(z));const{diskNumber:L}=c;R=!0,A.diskNumberStart=L,S?_=new f(v.readable).blob():await Tn(v,U),A=await(async(e,t,{diskNumberStart:n,lock:s},a,o,l)=>{const{headerInfo:c,dataDescriptorInfo:f,metadataSize:u}=a,{headerArray:d,headerView:p,lastModDate:h,rawLastModDate:w,encrypted:g,compressed:m,version:y,compressionMethod:b,rawExtraFieldZip64:S,localExtraFieldZip64Length:z,rawExtraFieldExtendedTimestamp:k,extraFieldExtendedTimestampFlag:x,rawExtraFieldNTFS:E,rawExtraFieldAES:R}=c,{dataDescriptorArray:v}=f,{rawFilename:_,lastAccessDate:A,creationDate:C,password:F,rawPassword:N,level:D,zip64:T,zip64UncompressedSize:U,zip64CompressedSize:I,zip64Offset:L,zip64DiskNumberStart:O,zipCrypto:B,dataDescriptor:W,directory:P,executable:M,versionMadeBy:V,rawComment:Z,rawExtraField:Q,useWebWorkers:H,onstart:$,onprogress:q,onend:J,signal:G,encryptionStrength:j,extendedTimestamp:Y,msDosCompatible:X,internalFileAttributes:ee,externalFileAttributes:re,useCompressionStream:ne,passThrough:se}=l,ie={lock:s,versionMadeBy:V,zip64:T,directory:!!P,executable:!!M,filenameUTF8:!0,rawFilename:_,commentUTF8:!0,rawComment:Z,rawExtraFieldZip64:S,localExtraFieldZip64Length:z,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:E,rawExtraFieldAES:R,rawExtraField:Q,extendedTimestamp:Y,msDosCompatible:X,internalFileAttributes:ee,externalFileAttributes:re,diskNumberStart:n};let{signature:ae,uncompressedSize:oe}=l,le=0;se||(oe=0);const{writable:ce}=t;if(e){e.chunkSize=te(o);const r=e.readable,n=e.size,s={options:{codecType:lt,level:D,rawPassword:N,password:F,encryptionStrength:j,zipCrypto:g&&B,passwordVerification:g&&B&&w>>8&255,signed:!se,compressed:m&&!se,encrypted:g&&!se,useWebWorkers:H,useCompressionStream:ne,transferStreams:!1},config:o,streamOptions:{signal:G,size:n,onstart:$,onprogress:q,onend:J}};try{const e=await xt({readable:r,writable:ce},s);le=e.outputSize,t.size+=le,se||(oe=e.inputSize,ae=e.signature)}catch(e){throw e.outputSize!==K&&(t.size+=e.outputSize),e}}return(({signature:e,compressedSize:t,uncompressedSize:r,headerInfo:n,dataDescriptorInfo:s},{zip64:a,zipCrypto:o,dataDescriptor:l})=>{const{headerView:c,encrypted:f}=n,{dataDescriptorView:u,dataDescriptorOffset:d}=s;f&&!o||e===K||(Wn(c,10,e),l&&Wn(u,d,e)),a?l&&(Pn(u,d+4,i(t)),Pn(u,d+12,i(r))):(Wn(c,14,t),Wn(c,18,r),l&&(Wn(u,d+4,t),Wn(u,d+8,r)))})({signature:ae,compressedSize:le,uncompressedSize:oe,headerInfo:c,dataDescriptorInfo:f},l),W&&await Tn(t,v),r.assign(ie,{uncompressedSize:oe,compressedSize:le,lastModDate:h,rawLastModDate:w,creationDate:C,lastAccessDate:A,encrypted:g,zipCrypto:B,size:u+le,compressionMethod:b,version:y,headerArray:d,headerView:p,signature:ae,extraFieldExtendedTimestampFlag:x,zip64UncompressedSize:U,zip64CompressedSize:I,zip64Offset:L,zip64DiskNumberStart:O}),ie})(s,v,A,a,e.config,o);const{zip64:O}=A;if(R=!1,l.set(n,A),A.filename=n,S){const[r]=await y.all([_,v.writable.getWriter().close(),t]);await C(),x=!0,A.diskNumberStart=c.diskNumber,A.offset=e.offset-c.diskOffset,O&&Dn(A),(({rawFilename:e,encrypted:t,zip64:r,localExtraFieldZip64Length:n,signature:s,compressedSize:a,uncompressedSize:o,offset:l,diskNumberStart:c,zip64UncompressedSize:f,zip64CompressedSize:u,zip64Offset:d,zip64DiskNumberStart:p},h,{dataDescriptor:w})=>{if(w||(t||Wn(h,14,s),r||(Wn(h,18,a),Wn(h,22,o))),r&&n){let t=H+Zn(e)+4;f&&(Pn(h,t,i(o)),t+=8),u&&(Pn(h,t,i(a)),t+=8),d&&(Pn(h,t,i(l)),t+=8),p&&Wn(h,t,c)}})(A,T,o),await F(z),await Tn(c,U),await r.stream().pipeTo(z,{preventClose:!0,preventAbort:!0,signal:w}),c.size+=v.size,x=!1}else A.offset=e.offset-N,O&&Dn(A);if(A.offset>D&&!O)throw new d(Rn);return e.offset+=A.size,A}catch(t){if(S&&x||!S&&R){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch{}S?e.offset+=v.size:e.offset=v.size}throw l.delete(n),t}finally{S&&e.bufferedWrites--,k&&k(),z&&z()}async function C(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new y(t=>z=()=>{e.writerLocked=!1,t()}),await t}async function F(e){Zn(g.localHeaderArray)>c.availableSize&&(c.availableSize=0,await Tn(e,new p))}})(e,n,s,{headerInfo:ye,dataDescriptorInfo:be,metadataSize:Se},l)}finally{e.pendingEntriesSize-=ae}return r.assign(ze,{name:n,comment:S,extraField:se}),new Nr(ze)})(l,e,n,s),c.add(w),await w}catch(t){throw l.filenames.delete(e),t}finally{c.delete(w);const e=Fn.shift();e?e():Cn--}}remove(e){const{filenames:t,files:r}=this;if("string"==typeof e&&(e=r.get(e)),e&&e.filename!==K){const{filename:n}=e;if(t.has(n)&&r.has(n))return t.delete(n),r.delete(n),!0}return!1}async close(e=new p,r={}){const{pendingAddFileCalls:n,writer:s}=this,{writable:o}=s;for(;n.size;)await y.allSettled(t.from(n));return await(async(e,r,n)=>{const{files:s,writer:o}=e,{diskOffset:l}=o;let{diskNumber:c}=o,f=0,u=0,h=e.offset-l,w=s.size;for(const[,e]of s){const{rawFilename:t,rawExtraFieldZip64:r,rawExtraFieldAES:n,rawComment:s,rawExtraFieldNTFS:i,rawExtraField:o,extendedTimestamp:l,extraFieldExtendedTimestampFlag:c,lastModDate:f}=e;let d;if(l){d=new p(9);const e=Vn(d);Bn(e,0,V),Bn(e,2,5),On(e,4,c),Wn(e,5,a.floor(f.getTime()/1e3))}else d=new p;e.rawExtraFieldExtendedTimestamp=d,u+=46+Zn(t,s,r,n,i,d,o)}const g=new p(u),m=Vn(g);await tr(o);let y=0;for(const[e,r]of t.from(s.values()).entries()){const{offset:t,rawFilename:i,rawExtraFieldZip64:a,rawExtraFieldAES:l,rawExtraFieldExtendedTimestamp:c,rawExtraFieldNTFS:u,rawExtraField:d,rawComment:p,versionMadeBy:h,headerArray:w,headerView:b,zip64:S,zip64UncompressedSize:z,zip64CompressedSize:k,zip64DiskNumberStart:x,zip64Offset:E,internalFileAttributes:R,externalFileAttributes:v,diskNumberStart:_,uncompressedSize:A,compressedSize:C}=r,F=Zn(a,l,c,u,d);Wn(m,f,O),Bn(m,f+4,h),z||Wn(b,18,A),k||Wn(b,14,C),Mn(g,w,f+6);let N=f+H;if(Bn(m,N,F),N+=2,Bn(m,N,Zn(p)),N+=2,Bn(m,N,S&&x?T:_),N+=2,Bn(m,N,R),N+=2,v&&Wn(m,N,v),N+=4,Wn(m,N,S&&E?D:t),N+=4,Mn(g,i,N),N+=Zn(i),Mn(g,a,N),N+=Zn(a),Mn(g,l,N),N+=Zn(l),Mn(g,c,N),N+=Zn(c),Mn(g,u,N),N+=Zn(u),Mn(g,d,N),N+=Zn(d),Mn(g,p,N),f-y>o.availableSize&&(o.availableSize=0,await Tn(o,g.slice(y,f)),y=f),f=N,n.onprogress)try{await n.onprogress(e+1,s.size,new Nr(r))}catch{}}await Tn(o,y?g.slice(y):g);let b=o.diskNumber;const{availableSize:S}=o;M>S&&b++;let z=In(e,n,Sr);if(h>D||u>D||w>T||b>T){if(!1===z)throw new d(Rn);z=!0}const k=new p(z?98:M),x=Vn(k);f=0,z&&(Wn(x,0,W),Pn(x,4,i(44)),Bn(x,12,45),Bn(x,14,45),Wn(x,16,b),Wn(x,20,c),Pn(x,24,i(w)),Pn(x,32,i(w)),Pn(x,40,i(u)),Pn(x,48,i(h)),Wn(x,56,P),Pn(x,64,i(h)+i(u)),Wn(x,72,b+1),In(e,n,Wr,!0)&&(b=T,c=T),w=T,h=D,u=D,f+=76),Wn(x,f,B),Bn(x,f+4,b),Bn(x,f+6,c),Bn(x,f+8,w),Bn(x,f+10,w),Wn(x,f+12,u),Wn(x,f+16,h);const E=Zn(r);if(E){if(E>T)throw new d(yn);Bn(x,f+20,E)}await Tn(o,k),E&&await Tn(o,r)})(this,e,r),In(this,r,Br)||await o.getWriter().close(),s.getData?s.getData():o}}function Dn({compressedSize:e,uncompressedSize:t,offset:r,diskNumberStart:n,zip64UncompressedSize:s,zip64CompressedSize:a,zip64Offset:o,zip64DiskNumberStart:l,rawExtraFieldZip64:c}){const f=Vn(c);let u=4;s&&(Pn(f,u,i(t)),u+=8),a&&(Pn(f,u,i(e)),u+=8),o&&(Pn(f,u,i(r)),u+=8),l&&Wn(f,u,n)}async function Tn(e,t){const{writable:r}=e,n=r.getWriter();try{await n.ready,e.size+=Zn(t),await n.write(t)}finally{n.releaseLock()}}function Un(e){if(e)return(i(e.getTime())+i(116444736e5))*i(1e4)}function In(e,t,r,n){const s=t[r]===K?e.options[r]:t[r];return s===K?n:s}function Ln(e){return e+5*(a.floor(e/16383)+1)}function On(e,t,r){e.setUint8(t,r)}function Bn(e,t,r){e.setUint16(t,r,!0)}function Wn(e,t,r){e.setUint32(t,r,!0)}function Pn(e,t,r){e.setBigUint64(t,r,!0)}function Mn(e,t,r){e.set(t,r)}function Vn(e){return new g(e.buffer)}function Zn(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Qn({version:e,bitFlag:t,compressionMethod:r,uncompressedSize:n,compressedSize:s,lastModDate:i,rawFilename:a,zip64CompressedSize:o,zip64UncompressedSize:l,extraFieldLength:c}){const f=new p(26),u=Vn(f);Bn(u,0,e),Bn(u,2,t),Bn(u,4,r);const d=new w(1),h=Vn(d);Bn(h,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Bn(h,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate());const g=d[0];return Wn(u,6,g),(o||s!==K)&&Wn(u,14,o?D:s),(l||n!==K)&&Wn(u,18,l?D:n),Bn(u,22,Zn(a)),Bn(u,24,c),{headerArray:f,headerView:u,rawLastModDate:g}}function Hn(e,t,r,n,s){let i=0;return t&&(i|=Z),r&&(i|=8),8!=s&&9!=s||(0>e||e>3||(i|=6),e>3&&5>=e&&(i|=4),9==e&&(i|=2)),n&&(i|=1),i}try{re({baseURI:void 0===z&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===z?location.href:N&&"SCRIPT"===N.tagName.toUpperCase()&&N.src||new u("zip-legacy.min.js",z.baseURI).href})}catch{}re({workerURI:()=>"data:text/javascript,"+encodeURIComponent('(e=>{"function"==typeof define&&define.amd?define(e):e()})(function(){"use strict";const{Array:e,Object:t,Number:r,Math:n,Error:i,Uint8Array:o,Uint16Array:f,Uint32Array:s,Int32Array:l,Map:c,DataView:a,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:k,WritableStream:b,CompressionStream:y,DecompressionStream:m}=self,g=void 0,v="undefined",I="function",S=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;S[e]=t}class z{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let r=0,n=0|e.length;n>r;r++)t=t>>>8^S[255&(t^e[r])];this.t=t}get(){return~this.t}}class _ extends p{constructor(){let e;const t=new z;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new o(4);new a(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}const x={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const r=e[e.length-1],n=x.i(r);return 32===n?e.concat(t):x.o(t,n,0|r,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const r=e[t-1];return 32*(t-1)+x.i(r)},u(e,t){if(32*e.length<t)return e;const r=(e=e.slice(0,n.ceil(t/32))).length;return t&=31,r>0&&t&&(e[r-1]=x.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,i:e=>n.round(e/1099511627776)||32,o(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<e.length;i++)n.push(r|e[i]>>>t),r=e[i]<<32-t;const i=e.length?e[e.length-1]:0,o=x.i(i);return n.push(x.h(t+o&31,t+o>32?r:n.pop(),1)),n}},B={bytes:{p(e){const t=x.l(e)/8,r=new o(t);let n;for(let i=0;t>i;i++)3&i||(n=e[i/4]),r[i]=n>>>24,n<<=8;return r},k(e){const t=[];let r,n=0;for(r=0;r<e.length;r++)n=n<<8|e[r],3&~r||(t.push(n),n=0);return 3&r&&t.push(x.h(8*(3&r),n)),t}}},C=class{constructor(e){const t=this;t.blockSize=512,t.m=[1732584193,4023233417,2562383102,271733878,3285377520],t.v=[1518500249,1859775393,2400959708,3395469782],e?(t.I=e.I.slice(0),t.S=e.S.slice(0),t._=e._):t.reset()}reset(){const e=this;return e.I=e.m.slice(0),e.S=[],e._=0,e}update(e){const t=this;"string"==typeof e&&(e=B.B.k(e));const r=t.S=x.concat(t.S,e),n=t._,o=t._=n+x.l(e);if(o>9007199254740991)throw new i("Cannot hash more than 2^53 - 1 bits");const f=new s(r);let l=0;for(let e=t.blockSize+n-(t.blockSize+n&t.blockSize-1);o>=e;e+=t.blockSize)t.C(f.subarray(16*l,16*(l+1))),l+=1;return r.splice(0,16*l),t}A(){const e=this;let t=e.S;const r=e.I;t=x.concat(t,[x.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(n.floor(e._/4294967296)),t.push(0|e._);t.length;)e.C(t.splice(0,16));return e.reset(),r}L(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}H(e,t){return t<<e|t>>>32-e}C(t){const r=this,i=r.I,o=e(80);for(let e=0;16>e;e++)o[e]=t[e];let f=i[0],s=i[1],l=i[2],c=i[3],a=i[4];for(let e=0;79>=e;e++){16>e||(o[e]=r.H(1,o[e-3]^o[e-8]^o[e-14]^o[e-16]));const t=r.H(5,f)+r.L(e,s,l,c)+a+o[e]+r.v[n.floor(e/20)]|0;a=c,c=l,l=r.H(30,s),s=f,f=t}i[0]=i[0]+f|0,i[1]=i[1]+s|0,i[2]=i[2]+l|0,i[3]=i[3]+c|0,i[4]=i[4]+a|0}},A={getRandomValues(e){const t=new s(e.buffer),r=e=>{let t=987654321;const r=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&r,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&r)&r)/4294967296+.5)*(n.random()>.5?1:-1))};for(let i,o=0;o<e.length;o+=4){const e=r(4294967296*(i||n.random()));i=987654071*e(),t[o/4]=4294967296*e()|0}return e}},L={importKey:e=>new L.Z(B.bytes.k(e)),U(e,t,r,n){if(r=r||1e4,0>n||0>r)throw new i("invalid params to pbkdf2");const o=1+(n>>5)<<2;let f,s,l,c,u;const w=new ArrayBuffer(o),h=new a(w);let d=0;const p=x;for(t=B.bytes.k(t),u=1;(o||1)>d;u++){for(f=s=e.encrypt(p.concat(t,[u])),l=1;r>l;l++)for(s=e.encrypt(s),c=0;c<s.length;c++)f[c]^=s[c];for(l=0;(o||1)>d&&l<f.length;l++)h.setInt32(d,f[l]),d+=4}return w.slice(0,n/8)},Z:class{constructor(e){const t=this,r=t.V=C,n=[[],[]];t.M=[new r,new r];const i=t.M[0].blockSize/32;e.length>i&&(e=(new r).update(e).A());for(let t=0;i>t;t++)n[0][t]=909522486^e[t],n[1][t]=1549556828^e[t];t.M[0].update(n[0]),t.M[1].update(n[1]),t.P=new r(t.M[0])}reset(){const e=this;e.P=new e.V(e.M[0]),e.$=!1}update(e){this.$=!0,this.P.update(e)}digest(){const e=this,t=e.P.A(),r=new e.V(e.M[1]).update(t).A();return e.reset(),r}encrypt(e){if(this.$)throw new i("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},H=typeof h!=v&&typeof h.getRandomValues==I,Z="Invalid password",U="Invalid signature",V="zipjs-abort-check-password";function E(e){return H?h.getRandomValues(e):A.getRandomValues(e)}const M=16,P={name:"PBKDF2"},$=t.assign({hash:{name:"HMAC"}},P),O=t.assign({iterations:1e3,hash:{name:"SHA-1"}},P),T=["deriveBits"],D=[8,12,16],R=[16,24,32],N=10,Q=[0,0,0,0],j=typeof h!=v,K=j&&h.subtle,q=j&&typeof K!=v,F=B.bytes,W=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const r=t.O[0][4],n=t.O[1],o=e.length;let f,s,l,c=1;if(4!==o&&6!==o&&8!==o)throw new i("invalid aes key size");for(t.v=[s=e.slice(0),l=[]],f=o;4*o+28>f;f++){let e=s[f-1];(f%o===0||8===o&&f%o===4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],f%o===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),s[f]=s[f-o]^e}for(let e=0;f;e++,f--){const t=s[3&e?f:f-4];l[e]=4>=f||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.D(e,0)}decrypt(e){return this.D(e,1)}T(){const e=this.O[0],t=this.O[1],r=e[4],n=t[4],i=[],o=[];let f,s,l,c;for(let e=0;256>e;e++)o[(i[e]=e<<1^283*(e>>7))^e]=e;for(let a=f=0;!r[a];a^=s||1,f=o[f]||1){let o=f^f<<1^f<<2^f<<3^f<<4;o=o>>8^255&o^99,r[a]=o,n[o]=a,c=i[l=i[s=i[a]]];let u=16843009*c^65537*l^257*s^16843008*a,w=257*i[o]^16843008*o;for(let r=0;4>r;r++)e[r][a]=w=w<<24^w>>>8,t[r][o]=u=u<<24^u>>>8}for(let r=0;5>r;r++)e[r]=e[r].slice(0),t[r]=t[r].slice(0)}D(e,t){if(4!==e.length)throw new i("invalid aes block size");const r=this.v[t],n=r.length/4-2,o=[0,0,0,0],f=this.O[t],s=f[0],l=f[1],c=f[2],a=f[3],u=f[4];let w,h,d,p=e[0]^r[0],k=e[t?3:1]^r[1],b=e[2]^r[2],y=e[t?1:3]^r[3],m=4;for(let e=0;n>e;e++)w=s[p>>>24]^l[k>>16&255]^c[b>>8&255]^a[255&y]^r[m],h=s[k>>>24]^l[b>>16&255]^c[y>>8&255]^a[255&p]^r[m+1],d=s[b>>>24]^l[y>>16&255]^c[p>>8&255]^a[255&k]^r[m+2],y=s[y>>>24]^l[p>>16&255]^c[k>>8&255]^a[255&b]^r[m+3],m+=4,p=w,k=h,b=d;for(let e=0;4>e;e++)o[t?3&-e:e]=u[p>>>24]<<24^u[k>>16&255]<<16^u[b>>8&255]<<8^u[255&y]^r[m++],w=p,p=k,k=b,b=y,y=w;return o}},X=class{constructor(e,t){this.R=e,this.N=t,this.j=t}reset(){this.j=this.N}update(e){return this.K(this.R,e,this.j)}q(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}F(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}K(e,t,r){let n;if(!(n=t.length))return[];const i=x.l(t);for(let i=0;n>i;i+=4){this.F(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 x.u(t,i)}},G=L.Z;let Y=j&&q&&typeof K.importKey==I,J=j&&q&&typeof K.deriveBits==I;class ee extends p{constructor({password:e,rawPassword:r,signed:n,encryptionStrength:f,checkPasswordOnly:s}){super({start(){t.assign(this,{ready:new u(e=>this.W=e),password:ie(e,r),signed:n,X:f-1,pending:new o})},async transform(e,t){const r=this,{password:n,X:f,W:l,ready:c}=r;n?(await(async(e,t,r,n)=>{const o=await ne(e,t,r,fe(n,0,D[t])),f=fe(n,D[t]);if(o[0]!=f[0]||o[1]!=f[1])throw new i(Z)})(r,f,n,fe(e,0,D[f]+2)),e=fe(e,D[f]+2),s?t.error(new i(V)):l()):await c;const a=new o(e.length-N-(e.length-N)%M);t.enqueue(re(r,e,a,0,N,!0))},async flush(e){const{signed:t,G:r,Y:n,pending:f,ready:s}=this;if(n&&r){await s;const l=fe(f,0,f.length-N),c=fe(f,f.length-N);let a=new o;if(l.length){const e=le(F,l);n.update(e);const t=r.update(e);a=se(F,t)}if(t){const e=fe(se(F,n.digest()),0,N);for(let t=0;N>t;t++)if(e[t]!=c[t])throw new i(U)}e.enqueue(a)}}})}}class te extends p{constructor({password:e,rawPassword:r,encryptionStrength:n}){let i;super({start(){t.assign(this,{ready:new u(e=>this.W=e),password:ie(e,r),X:n-1,pending:new o})},async transform(e,t){const r=this,{password:n,X:i,W:f,ready:s}=r;let l=new o;n?(l=await(async(e,t,r)=>{const n=E(new o(D[t]));return oe(n,await ne(e,t,r,n))})(r,i,n),f()):await s;const c=new o(l.length+e.length-e.length%M);c.set(l,0),t.enqueue(re(r,e,c,l.length,0))},async flush(e){const{G:t,Y:r,pending:n,ready:f}=this;if(r&&t){await f;let s=new o;if(n.length){const e=t.update(le(F,n));r.update(e),s=se(F,e)}i.signature=se(F,r.digest()).slice(0,N),e.enqueue(oe(s,i.signature))}}}),i=this}}function re(e,t,r,n,i,f){const{G:s,Y:l,pending:c}=e,a=t.length-i;let u;for(c.length&&(t=oe(c,t),r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new o(t)).set(r,0)}return e})(r,a-a%M)),u=0;a-M>=u;u+=M){const e=le(F,fe(t,u,u+M));f&&l.update(e);const i=s.update(e);f||l.update(i),r.set(se(F,i),u+n)}return e.pending=fe(t,u),r}async function ne(r,n,i,f){r.password=null;const s=await(async(e,t,r,n,i)=>{if(!Y)return L.importKey(t);try{return await K.importKey("raw",t,r,!1,i)}catch{return Y=!1,L.importKey(t)}})(0,i,$,0,T),l=await(async(e,t,r)=>{if(!J)return L.U(t,e.salt,O.iterations,r);try{return await K.deriveBits(e,t,r)}catch{return J=!1,L.U(t,e.salt,O.iterations,r)}})(t.assign({salt:f},O),s,8*(2*R[n]+2)),c=new o(l),a=le(F,fe(c,0,R[n])),u=le(F,fe(c,R[n],2*R[n])),w=fe(c,2*R[n]);return t.assign(r,{keys:{key:a,J:u,passwordVerification:w},G:new X(new W(a),e.from(Q)),Y:new G(u)}),w}function ie(e,t){return t===g?(e=>{if(typeof w==v){const t=new o((e=unescape(encodeURIComponent(e))).length);for(let r=0;r<t.length;r++)t[r]=e.charCodeAt(r);return t}return(new w).encode(e)})(e):t}function oe(e,t){let r=e;return e.length+t.length&&(r=new o(e.length+t.length),r.set(e,0),r.set(t,e.length)),r}function fe(e,t,r){return e.subarray(t,r)}function se(e,t){return e.p(t)}function le(e,t){return e.k(t)}class ce extends p{constructor({password:e,passwordVerification:r,checkPasswordOnly:n}){super({start(){t.assign(this,{password:e,passwordVerification:r}),he(this,e)},transform(e,t){const r=this;if(r.password){const t=ue(r,e.subarray(0,12));if(r.password=null,t.at(-1)!=r.passwordVerification)throw new i(Z);e=e.subarray(12)}n?t.error(new i(V)):t.enqueue(ue(r,e))}})}}class ae extends p{constructor({password:e,passwordVerification:r}){super({start(){t.assign(this,{password:e,passwordVerification:r}),he(this,e)},transform(e,t){const r=this;let n,i;if(r.password){r.password=null;const t=E(new o(12));t[11]=r.passwordVerification,n=new o(e.length+t.length),n.set(we(r,t),0),i=12}else n=new o(e.length),i=0;n.set(we(r,e),i),t.enqueue(n)}})}}function ue(e,t){const r=new o(t.length);for(let n=0;n<t.length;n++)r[n]=pe(e)^t[n],de(e,r[n]);return r}function we(e,t){const r=new o(t.length);for(let n=0;n<t.length;n++)r[n]=pe(e)^t[n],de(e,t[n]);return r}function he(e,r){const n=[305419896,591751049,878082192];t.assign(e,{keys:n,ee:new z(n[0]),te:new z(n[2])});for(let t=0;t<r.length;t++)de(e,r.charCodeAt(t))}function de(e,t){let[r,i,o]=e.keys;e.ee.append([t]),r=~e.ee.get(),i=be(n.imul(be(i+ke(r)),134775813)+1),e.te.append([i>>>24]),o=~e.te.get(),e.keys=[r,i,o]}function pe(e){const t=2|e.keys[2];return ke(n.imul(t,1^t)>>>8)}function ke(e){return 255&e}function be(e){return 4294967295&e}class ye extends p{constructor(e,{chunkSize:t,re:r,CompressionStream:n}){super({});const{compressed:i,encrypted:o,useCompressionStream:f,zipCrypto:s,signed:l,level:c}=e,u=this;let w,h,d=super.readable;o&&!s||!l||(w=new _,d=Ie(d,w)),i&&(d=ve(d,f,{level:c,chunkSize:t},n,r,n)),o&&(s?d=Ie(d,new ae(e)):(h=new te(e),d=Ie(d,h))),ge(u,d,()=>{let e;o&&!s&&(e=h.signature),o&&!s||!l||(e=new a(w.value.buffer).getUint32(0)),u.signature=e})}}class me extends p{constructor(e,{chunkSize:t,ne:r,DecompressionStream:n}){super({});const{zipCrypto:o,encrypted:f,signed:s,signature:l,compressed:c,useCompressionStream:u,ie:w}=e;let h,d,p=super.readable;f&&(o?p=Ie(p,new ce(e)):(d=new ee(e),p=Ie(p,d))),c&&(p=ve(p,u,{chunkSize:t,ie:w},n,r,n)),f&&!o||!s||(h=new _,p=Ie(p,h)),ge(this,p,()=>{if((!f||o)&&s){const e=new a(h.value.buffer);if(l!=e.getUint32(0,!1))throw new i(U)}})}}function ge(e,r,n){r=Ie(r,new p({flush:n})),t.defineProperty(e,"readable",{get:()=>r})}function ve(e,t,r,n,i,o){const f=t&&n?n:i||o,s=r.ie?"deflate64-raw":"deflate-raw";try{e=Ie(e,new f(s,r))}catch(n){if(!t)throw n;if(i)e=Ie(e,new i(s,r));else{if(!o)throw n;e=Ie(e,new o(s,r))}}return e}function Ie(e,t){return e.pipeThrough(t)}const Se="data",ze="close";class _e extends p{constructor(e,r){super({});const n=this,{codecType:o}=e;let f;o.startsWith("deflate")?f=ye:o.startsWith("inflate")&&(f=me),n.outputSize=0;let s=0;const l=new f(e,r),c=super.readable,a=new p({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){t.assign(n,{inputSize:s})}}),u=new p({transform(t,r){if(t&&t.length&&(r.enqueue(t),n.outputSize+=t.length,e.outputSize!==g&&n.outputSize>e.outputSize))throw new i("Invalid uncompressed size")},flush(){const{signature:e}=l;t.assign(n,{signature:e,inputSize:s})}});t.defineProperty(n,"readable",{get:()=>c.pipeThrough(a).pipeThrough(l).pipeThrough(u)})}}class xe extends p{constructor(e){let t;super({transform:function r(n,i){if(t){const e=new o(t.length+n.length);e.set(t),e.set(n,t.length),n=e,t=null}n.length>e?(i.enqueue(n.slice(0,e)),r(n.slice(e),i)):t=n},flush(e){t&&t.length&&e.enqueue(t)}})}}const Be=new c,Ce=new c;let Ae,Le=0;async function He(e){try{const{options:t,config:n}=e;if(!t.useCompressionStream)try{await self.initModule(e.config)}catch{t.useCompressionStream=!0}n.CompressionStream=self.CompressionStream,n.DecompressionStream=self.DecompressionStream;const i={highWaterMark:1},o=e.readable||new k({async pull(e){const t=new u(e=>Be.set(Le,e));Ze({type:"pull",messageId:Le}),Le=(Le+1)%r.MAX_SAFE_INTEGER;const{value:n,done:i}=await t;e.enqueue(n),i&&e.close()}},i),f=e.writable||new b({async write(e){let t;const n=new u(e=>t=e);Ce.set(Le,t),Ze({type:Se,value:e,messageId:Le}),Le=(Le+1)%r.MAX_SAFE_INTEGER,await n}},i),s=new _e(t,n);Ae=new AbortController;const{signal:l}=Ae;await o.pipeThrough(s).pipeThrough(new xe(n.chunkSize)).pipeTo(f,{signal:l,preventClose:!0,preventAbort:!0}),await f.getWriter().close();const{signature:c,inputSize:a,outputSize:w}=s;Ze({type:ze,result:{signature:c,inputSize:a,outputSize:w}})}catch(e){e.outputSize=0,Ue(e)}}function Ze(e){let{value:t}=e;if(t)if(t.length)try{t=new o(t),e.value=t.buffer,d(e,[e.value])}catch{d(e)}else d(e);else d(e)}function Ue(e=new i("Unknown error")){const{message:t,stack:r,code:n,name:o,outputSize:f}=e;d({error:{message:t,stack:r,code:n,name:o,outputSize:f}})}addEventListener("message",({data:e})=>{const{type:t,messageId:r,value:n,done:i}=e;try{if("start"==t&&He(e),t==Se){const e=Be.get(r);Be.delete(r),e({value:new o(n),done:i})}if("ack"==t){const e=Ce.get(r);Ce.delete(r),e()}t==ze&&Ae.abort()}catch(e){Ue(e)}});var{Uint8Array:Ve,Uint16Array:Ee,Int32Array:Me,TransformStream:Pe,Math:$e,Error:Oe,Array:Te}=globalThis,De=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],Re=new Ve(0),Ne=new Ee(0),Qe=class{constructor(e,t){this.oe=e,this.fe=t,this.se=0}},je=class{constructor(e,t,r,n,i){this.le=e,this.ce=t,this.ae=r,this.ue=n,this.we=i}};function Ke(e,t,r,n,i){if(0==i)return;let o=e instanceof Ve?e:new Ve(e.buffer,e.byteOffset,e.byteLength),f=r instanceof Ve?r.subarray(n,n+i):new Ve(r.buffer,r.byteOffset+n,i);o.set(f,t)}function qe(e,t,r){0!=r&&(e instanceof Ve?e:new Ve(e.buffer,e.byteOffset,e.byteLength)).fill(0,t,t+r)}function Fe(){return{he:Re,de:0,pe:0,ke:0,be:Re,ye:0,me:0,ge:0,ve:"",Ie:0,Se:0,ze:0,_e:void 0}}function We(e,t){let r=1<<t;return{xe:e,Be:new Ve(r),Ce:r,Ae:t,Le:0,He:0,Ze:0,Ue:0}}function Xe(e){return St[-6>e||e>2?9:2-e]||""}function Ge(e,t){try{e.ve=Xe(t)}catch(r){e.ve="zlib error "+t+" ("+r+")"}return t}function Ye(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 Je(e,t){e.Ve[e.Ee++]=t}function et(e,t){Je(e,255&t),Je(e,t>>>8&255)}function tt(e,t,r){let n=255&r,i=65535&t,o=e.Me+e.Pe;return e.Ve[o]=255&i,e.Ve[o+1]=i>>>8&255,e.Ve[o+2]=n,e.Pe+=3,i=i-1&65535,e.Oe[Vt[n]+pt+1].$e++,e.Te[it(i)].$e++,e.Pe==e.De}function rt(e,t){let r=255&t,n=e.Me+e.Pe;return e.Ve[n]=0,e.Ve[n+1]=0,e.Ve[n+2]=r,e.Pe+=3,e.Oe[r].$e++,e.Pe==e.De}function nt(e){return e.Ce-ht}function it(e){return 256>e?Et[e]:Et[256+(e>>7)]}function ot(e){let t=at+7,r=1<<t,n=(1<<t)-1,i=$e.floor((t+ut-1)/ut),o=1<<8+at;return{...We(e,15),xe:e,Re:42,Ne:0,Qe:void 0,je:32767,Ke:t,qe:r,Fe:n,We:i,Xe:new Ee(32768),Ge:new Ee(r),Ye:o,Ve:new Ve(32768),Je:0,et:32768,Ee:0,tt:0,rt:0,nt:0,it:0,ot:0,ft:-2,st:0,lt:0,ct:0,ut:0,wt:0,ht:0,dt:0,kt:0,bt:0,yt:0,gt:0,vt:0,It:0,St:0,zt:new Me(2*kt+1),_t:new Ve(2*kt+1),xt:new Ee(gt+1),Pe:0,De:0,Bt:Re,Me:0,Ct:0,At:0,Lt:8,Ht:32768,Zt:0,Ut:0,Vt:0,Oe:new Te(mt).fill(0).map(()=>({$e:0,Et:0,Mt:0,Pt:0})),Te:new Te(2*bt+1).fill(0).map(()=>({$e:0,Et:0,Mt:0,Pt:0})),$t:new Te(2*yt+1).fill(0).map(()=>({$e:0,Et:0,Mt:0,Pt:0})),Ot:lt(),Tt:lt(),Dt:lt()}}function ft(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],i=e[r+1],o=st();o.Et=n,o.Pt=i,t.push(o)}return t}function st(){return{$e:0,Et:0,Mt:0,Pt:0}}function lt(){return new Qe([],new je(null,Re,0,0,0))}function ct(e){let{code:t,length:r}=(e=>{let t=$e.max(...e),r=new Te(t+1).fill(0);for(let t of e)t>0&&r[t]++;let n=new Te(e.length).fill(0),i=new Te(t+1).fill(0),o=0;for(let e=1;t>=e;e++)o=o+r[e-1]<<1,i[e]=o;for(let t=0;t<e.length;t++){let r=e[t];0!=r&&(n[t]=i[r]++)}return{code:n,length:e}})(e),n=new Te(2*e.length),i=0;for(let o=0;o<e.length;o++){let e=r[o]||0,f=t[o]||0;n[i++]=e?Ye(f,e):0,n[i++]=e}return new Me(n)}var at=8,ut=3,wt=258,ht=wt+ut+1,dt=wt,pt=256,kt=pt+1+29,bt=30,yt=19,mt=2*kt+1,gt=15,vt=256,It=-1,St=["need dictionary","stream end","","file error","stream error","data error","insufficient memory","buffer error",""],zt=new Me([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]),_t=new Me([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]),xt=[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],Bt=[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],Ct=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],At=((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let i=t[n]?1<<t[n]:1,o=e[n]+i-1;o>r&&(r=o)}let n=new Ve(r+1);for(let i=0;r>=i;i++)for(let r=0;r<e.length;r++){let o=t[r]?1<<t[r]:1,f=e[r];if(i>=f&&f+o-1>=i){n[i]=r;break}}return n})(_t,Bt),Lt=ct((()=>{let e=new Te(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})()),Ht=ct(new Te(30).fill(5)),Zt=ft(Lt),Ut=ft(Ht),Vt=((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let i=t[n]?1<<t[n]:1,o=e[n]+i-1;o>r&&(r=o)}258>r&&(r=258);let n=new Ve(r+1);for(let i=0;r>=i;i++)for(let r=0;r<e.length;r++){let o=t[r]?1<<t[r]:1,f=e[r];if(i>=f&&f+o-1>=i){n[i]=r;break}}return n})(zt,xt),Et=(e=>{let t=new Ve(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})(At);function Mt(e){return e%65521>>>0}function Pt(e,t,r){if(void 0===t||void 0===r)return 1;let n=e>>>16&65535;if(e&=65535,1==r)return(e+=t[0])>=65521&&(e-=65521),n+=e,n>=65521&&(n-=65521),(n<<16|e)>>>0;if(16>r){for(let i=0;r>i;i++)n+=e+=t[i];return e>=65521&&(e-=65521),n=Mt(n),(n<<16|e)>>>0}for(;r>=5552;){r-=5552;let i=$e.floor(347);do{for(let r=0;16>r;r++)n+=e+=t[r];t=t.subarray(16)}while(--i);e=Mt(e),n=Mt(n)}if(r){for(;r>=16;){r-=16;for(let r=0;16>r;r++)n+=e+=t[r];t=t.subarray(16)}for(let i=0;r>i;i++)n+=e+=t[i];e=Mt(e),n=Mt(n)}return(n<<16|e)>>>0}var $t=(()=>{let e=new Te(256);for(let t=0;256>t;t++){let r=t;for(let e=0;8>e;e++)r=1&r?3988292384^r>>>1:r>>>1;e[t]=r>>>0}return e})();function Ot(e=0,t,r){if(!t)return 0;void 0===r&&(r=t.length),r=$e.min(r,t.length),e=~e>>>0;for(let n=0;r>n;n++)e=e>>>8^$t[255&(e^t[n])];return(4294967295^e)>>>0}function Tt(e){16==e.Ue?(et(e,e.Ze),e.Ze=0,e.Ue=0):e.Ue>=8&&(Je(e,e.Ze),e.Ze>>=8,e.Ue-=8)}function Dt(e){e.Ue>8?et(e,e.Ze):e.Ue>0&&Je(e,e.Ze),e.Ct=1+(e.Ue-1&7),e.Ze=0,e.Ue=0}function Rt(e,t,r){e.Ue>16-r?(e.Ze=65535&(e.Ze|t<<e.Ue),et(e,e.Ze),e.Ze=t>>16-e.Ue&65535,e.Ue+=r-16):(e.Ze=65535&(e.Ze|t<<e.Ue),e.Ue+=r)}function Nt(e){for(let t=0;t<e.Oe.length;t++)e.Oe[t].$e=0;for(let t=0;t<e.Te.length;t++)e.Te[t].$e=0;for(let t=0;t<e.$t.length;t++)e.$t[t].$e=0;e.Oe[vt].$e=1,e.rt=e.nt=0,e.Pe=e.it=0}function Qt(e,t,r){return r=e.zt[1],e.zt[1]=e.zt[e.Ut--],Kt(e,t,1),r}function jt(e,t,r,n){return e[t].$e<e[r].$e||e[t].$e==e[r].$e&&n[t]<=n[r]}function Kt(e,t,r){let n=e.zt[r],i=r<<1;for(;i<=e.Ut&&(i<e.Ut&&jt(t,e.zt[i+1],e.zt[i],e._t)&&i++,!jt(t,n,e.zt[i],e._t));)e.zt[r]=e.zt[i],r=i,i<<=1;e.zt[r]=n}function qt(e,t){let r,n,i,o=t.oe,f=t.fe.le,s=t.fe.ue,l=-1;for(e.Ut=0,e.Vt=mt,r=0;s>r;r++)0!=o[r].$e?(e.zt[++e.Ut]=l=r,e._t[r]=0):o[r].Pt=0;for(;2>e.Ut;)i=e.zt[++e.Ut]=2>l?++l:0,o[i].$e=1,e._t[i]=0,e.rt--,f&&(e.nt-=f[i].Pt);for(t.se=l,r=$e.floor(e.Ut/2);r>=1;r--)Kt(e,o,r);i=s;do{r=Qt(e,o,r),n=e.zt[1],e.zt[--e.Vt]=r,e.zt[--e.Vt]=n,o[i].$e=o[r].$e+o[n].$e,e._t[i]=(e._t[r]<e._t[n]?e._t[n]:e._t[r])+1,o[r].Mt=o[n].Mt=i,e.zt[1]=i++,Kt(e,o,1)}while(e.Ut>=2);e.zt[--e.Vt]=e.zt[1],((e,t)=>{let r,n,i,o,f,s,l=t.oe,c=t.se,a=t.fe.le,u=t.fe.ce,w=t.fe.ae,h=t.fe.we,d=0;for(o=0;gt>=o;o++)e.xt[o]=0;for(l[e.zt[e.Vt]].Pt=0,r=e.Vt+1;mt>r;r++)n=e.zt[r],o=l[l[n].Mt].Pt+1,o>h&&(o=h,d++),l[n].Pt=o,c>=n&&(e.xt[o]++,f=0,n>=w&&(f=u[n-w]),s=l[n].$e,e.rt+=s*(o+f),a&&(e.nt+=s*(a[n].Pt+f)));if(0!=d){do{for(o=h-1;0==e.xt[o];)o--;e.xt[o]--,e.xt[o+1]+=2,e.xt[h]--,d-=2}while(d>0);for(o=h;0!=o;o--)for(n=e.xt[o];0!=n;)i=e.zt[--r],c>=i&&(l[i].Pt!=o&&(e.rt+=(o-l[i].Pt)*l[i].$e,l[i].Pt=o),n--)}})(e,t),((e,t,r)=>{let n,i,o=[],f=0;for(n=1;gt>=n;n++)f=f+r[n-1]<<1,o[n]=f;for(i=0;t>=i;i++){let t=e[i].Pt;0!=t&&(e[i].Et=Ye(o[t]++,t))}})(o,t.se,e.xt)}function Ft(e,t,r){let n,i,o=-1,f=t[0].Pt,s=0,l=7,c=4;for(0==f&&(l=138,c=3),t[r+1].Pt=65535,n=0;r>=n;n++)i=f,f=t[n+1].Pt,(++s>=l||i!=f)&&(c>s?e.$t[i].$e+=s:0!=i?(i!=o&&e.$t[i].$e++,e.$t[16].$e++):s>10?e.$t[18].$e++:e.$t[17].$e++,s=0,o=i,0==f?(l=138,c=3):i==f?(l=6,c=3):(l=7,c=4))}function Wt(e,t,r){let n,i=-1,o=t[0].Pt,f=0,s=7,l=4;0==o&&(s=138,l=3);for(let c=0;r>=c;c++)if(n=o,o=t[c+1].Pt,++f>=s||n!=o){if(l>f)do{Rt(e,e.$t[n].Et,e.$t[n].Pt)}while(0!=--f);else 0!=n?(n!=i&&(Rt(e,e.$t[n].Et,e.$t[n].Pt),f--),Rt(e,e.$t[16].Et,e.$t[16].Pt),Rt(e,f-3,2)):f>10?(Rt(e,e.$t[18].Et,e.$t[18].Pt),Rt(e,f-11,7)):(Rt(e,e.$t[17].Et,e.$t[17].Pt),Rt(e,f-3,3));f=0,i=n,0==o?(s=138,l=3):n==o?(s=6,l=3):(s=7,l=4)}}function Xt(e,t,r,n,i=0){Rt(e,0+n,3),Dt(e),et(e,r),et(e,~r),r&&t&&Ke(e.Ve,e.Ee,t,i,r),e.Ee+=r}function Gt(e,t,r){let n,i,o,f,s=0;if(0!=e.Pe)do{n=255&e.Bt[s],n+=(255&e.Bt[s+1])<<8,i=e.Bt[s+2],s+=3,0==n?Rt(e,t[i].Et,t[i].Pt):(o=Vt[i],Rt(e,t[o+pt+1].Et,t[o+pt+1].Pt),f=xt[o],0!=f&&(i-=zt[o],Rt(e,i,f)),n--,o=it(n),Rt(e,r[o].Et,r[o].Pt),f=Bt[o],0!=f&&(n-=_t[o],Rt(e,n,f)))}while(s<e.Pe);Rt(e,t[vt].Et,t[vt].Pt)}var Yt=[{Rt:br,Nt:0,Qt:0,jt:0,Kt:0},{Rt:yr,Nt:4,Qt:4,jt:8,Kt:4},{Rt:yr,Nt:5,Qt:5,jt:16,Kt:8},{Rt:yr,Nt:6,Qt:16,jt:32,Kt:32},{Rt:mr,Nt:4,Qt:4,jt:16,Kt:16},{Rt:mr,Nt:16,Qt:8,jt:16,Kt:32},{Rt:mr,Nt:16,Qt:16,jt:32,Kt:128},{Rt:mr,Nt:32,Qt:32,jt:128,Kt:256},{Rt:mr,Nt:128,Qt:128,jt:256,Kt:1024},{Rt:mr,Nt:258,Qt:258,jt:258,Kt:4096}];function Jt(e){return 2*e-(e>4?9:0)}function er(e,t,r){return((t<<e.We^r)&e.Fe)>>>0}function tr(e,t){e.kt=er(e,e.kt,e.Be[t+(ut-1)]);let r=e.Xe[t&e.je]=e.Ge[e.kt];return e.Ge[e.kt]=t,r}function rr(e){e.Ge[e.qe-1]=0,qe(e.Ge,0,(e.qe-1)*e.Ge.BYTES_PER_ELEMENT)}function nr(e){let t,r,n=e.Ce;for(t=e.qe;t>0;)t--,r=e.Ge[t],e.Ge[t]=n>r?0:r-n;for(t=n;t>0;)t--,r=e.Xe[t],e.Xe[t]=n>r?0:r-n}function ir(e,t,r,n){let i=e.pe;return i>n&&(i=n),0==i?0:(e.pe-=i,Ke(t,r,e.he,e.de,i),1==e._e.Ne?e.Se=Pt(e.Se,new Ve(t.buffer,t.byteOffset+r,i),i):2==e._e.Ne&&(e.Se=Ot(e.Se,new Ve(t.buffer,t.byteOffset+r,i),i)),e.de+=i,e.ke+=i,i)}function or(e){let t,r,n=e.Ce;do{if(r=e.Ht-e.ct-e.lt,0==r&&0==e.lt&&0==e.ct?r=n:-1==r&&r--,e.lt>=n+nt(e)&&(Ke(e.Be,0,e.Be,n,n-r),e.Zt-=n,e.lt-=n,e.st-=n,e.ot>e.lt&&(e.ot=e.lt),nr(e),r+=n),0==e.xe.pe)break;if(t=ir(e.xe,e.Be,e.lt+e.ct,r),e.ct+=t,e.ct+e.ot>=ut){let t=e.lt-e.ot;for(e.kt=e.Be[t],e.kt=er(e,e.kt,e.Be[t+1]);e.ot&&(e.kt=er(e,e.kt,e.Be[t+ut-1]),e.Xe[t&e.je]=e.Ge[e.kt],e.Ge[e.kt]=t,t++,e.ot--,e.ct+e.ot>=ut););}}while(e.ct<ht&&0!=e.xe.pe);if(e.Le<e.Ht){let t,r=e.lt+e.ct;e.Le<r?(t=e.Ht-r,t>dt&&(t=dt),qe(e.Be,r,t),e.Le=r+t):e.Le<r+dt&&(t=r+dt-e.Le,t>e.Ht-e.Le&&(t=e.Ht-e.Le),qe(e.Be,e.Le,t),e.Le+=t)}}function fr(e){if(null==e)return!0;let t=e._e;return!t||t.xe!=e||42!=t.Re&&57!=t.Re&&69!=t.Re&&73!=t.Re&&91!=t.Re&&103!=t.Re&&113!=t.Re&&666!=t.Re}function sr(e,t){Je(e,t>>8),Je(e,255&t)}function lr(e){let t,r=e._e;(e=>{Tt(e)})(r),t=r.Ee,t>e.me&&(t=e.me),0!=t&&(Ke(e.be,e.ye,r.Ve,r.tt,t),e.ye+=t,r.tt+=t,e.ge+=t,e.me-=t,r.Ee-=t,0==r.Ee&&(r.tt=r.Je))}function cr(e,t){let r=e._e;r.Qe&&r.Qe.qt&&(e.Se=Ot(e.Se,new Ve(r.Ve.buffer,r.Je+t,r.Ee-t),r.Ee-t))}function ar(e,t){let r,n=e._e;if(fr(e)||t>5||0>t)return Ge(e,-2);if(!e.be||0!=e.pe&&!e.he||666==n.Re&&4!=t)return Ge(e,-2);if(0==e.me)return Ge(e,-5);if(r=n.ft,n.ft=t,0!=n.Ee){if(lr(e),0==e.me)return n.ft=It,0}else if(0==e.pe&&Jt(t)<=Jt(r)&&4!=t)return Ge(e,-5);if(666==n.Re&&0!=e.pe)return Ge(e,-5);if(42==n.Re&&0==n.Ne&&(n.Re=113),42==n.Re){let t,r=8+(n.Ae-8<<4)<<8;if(t=n.yt>=2||2>n.bt?0:6>n.bt?1:6==n.bt?2:3,r|=t<<6,0!=n.lt&&(r|=32),r+=31-r%31,sr(n,r),0!=n.lt&&(sr(n,e.Se>>16),sr(n,65535&e.Se)),e.Se=1,n.Re=113,lr(e),0!=n.Ee)return n.ft=It,0}if(57==n.Re)if(e.Se=Ot(0),Je(n,31),Je(n,139),Je(n,8),n.Qe)Je(n,(n.Qe.Ft?1:0)+(n.Qe.qt?2:0)+(null==n.Qe.Wt?0:4)+(null==n.Qe.Xt?0:8)+(null==n.Qe.Gt?0:16)),Je(n,255&n.Qe.Yt),Je(n,n.Qe.Yt>>>8&255),Je(n,n.Qe.Yt>>>16&255),Je(n,n.Qe.Yt>>>24&255),Je(n,9==n.bt?2:n.yt>=2||2>n.bt?4:0),Je(n,255&n.Qe.Jt),null!=n.Qe.Wt&&(Je(n,255&n.Qe.er),Je(n,n.Qe.er>>>8&255)),n.Qe.qt&&(e.Se=Ot(e.Se,n.Ve,n.Ee)),n.At=0,n.Re=69;else if(Je(n,0),Je(n,0),Je(n,0),Je(n,0),Je(n,0),Je(n,9==n.bt?2:n.yt>=2||2>n.bt?4:0),Je(n,255),n.Re=113,lr(e),0!=n.Ee)return n.ft=It,0;if(69==n.Re){if(n.Qe&&null!=n.Qe.Wt){let t=n.Ee,r=(65535&n.Qe.er)-n.At;for(;n.Ee+r>n.et;){let i=n.et-n.Ee;if(Ke(n.Ve,n.Ee,n.Qe.Wt,n.At,i),n.Ee=n.et,cr(e,t),n.At+=i,lr(e),0!=n.Ee)return n.ft=It,0;t=0,r-=i}Ke(n.Ve,n.Ee,n.Qe.Wt,n.At,r),n.Ee+=r,cr(e,t),n.At=0}n.Re=73}if(73==n.Re){if(n.Qe&&n.Qe.Xt&&n.Qe.Xt.length){let t,r=n.Ee;do{if(n.Ee==n.et){if(cr(e,r),lr(e),0!=n.Ee)return n.ft=It,0;r=0}t=n.Qe.Xt[n.At++],Je(n,t)}while(0!=t);cr(e,r),n.At=0}n.Re=91}if(91==n.Re){if(n.Qe&&n.Qe.Gt&&n.Qe.Gt.length){let t,r=n.Ee;do{if(n.Ee==n.et){if(cr(e,r),lr(e),0!=n.Ee)return n.ft=It,0;r=0}t=n.Qe.Gt[n.At++],Je(n,t)}while(0!=t);cr(e,r)}n.Re=103}if(103==n.Re){if(n.Qe&&n.Qe.qt){if(n.Ee+2>n.et&&(lr(e),0!=n.Ee))return n.ft=It,0;Je(n,255&e.Se),Je(n,e.Se>>>8&255),e.Se=Ot(0)}if(n.Re=113,lr(e),0!=n.Ee)return n.ft=It,0}if(0!=e.pe||0!=n.ct||0!=t&&666!=n.Re){let r=0==n.bt?br(n,t):2==n.yt?((e,t)=>{let r=!1;for(;;){if(0==e.ct&&(or(e),0==e.ct)){if(0==t)return 0;break}if(e.ut=0,r=rt(e,e.Be[e.lt]),e.ct--,e.lt++,r){let t=dr(e,!1);if(null!=t)return t}}if(e.ot=0,4==t)return dr(e,!0)??3;if(e.Pe){let t=dr(e,!1);if(null!=t)return t}return 1})(n,t):3==n.yt?((e,t)=>{let r,n,i,o;for(;;){if(e.ct<=wt){if(or(e),e.ct<=wt&&0==t)return 0;if(0==e.ct)break}if(e.ut=0,e.ct>=ut&&e.lt>0&&(i=e.lt-1,n=e.Be[i],n==++i&&n==++i&&n==++i)){o=e.lt+wt;do{}while(n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&o>i);e.ut=wt-(o-i),e.ut>e.ct&&(e.ut=e.ct)}if(e.ut<ut?(r=rt(e,e.Be[e.lt]),e.ct--,e.lt++):(e.lt,e.lt,e.ut,r=tt(e,1,e.ut-ut),e.ct-=e.ut,e.lt+=e.ut,e.ut=0),r){let t=dr(e,!1);if(null!=t)return t}}if(e.ot=0,4==t)return dr(e,!0)??3;if(e.Pe){let t=dr(e,!1);if(null!=t)return t}return 1})(n,t):Yt[n.bt].Rt(n,t);if((2==r||3==r)&&(n.Re=666),0==r||2==r)return 0==e.me&&(n.ft=It),0;if(1==r&&(1==t?(e=>{Rt(e,2,3),Rt(e,Zt[vt].Et,Zt[vt].Pt),Tt(e)})(n):5!=t&&(Xt(n,null,0,0),3==t&&(rr(n),0==n.ct&&(n.lt=0,n.st=0,n.ot=0))),lr(e),0==e.me))return n.ft=It,0}return 4!=t?0:n.Ne>0?(2==n.Ne?(Je(n,255&e.Se),Je(n,e.Se>>>8&255),Je(n,e.Se>>>16&255),Je(n,e.Se>>>24&255),Je(n,255&e.ke),Je(n,e.ke>>>8&255),Je(n,e.ke>>>16&255),Je(n,e.ke>>>24&255)):(sr(n,e.Se>>>16&65535),sr(n,65535&e.Se)),lr(e),n.Ne>0&&(n.Ne=-n.Ne),0!=n.Ee?0:1):1}function ur(e){if(fr(e))return-2;let t=e._e,r=t.Re;return t.Be=Re,t.Xe=Ne,t.Ge=Ne,t.Ve=Re,t.Bt=Re,t.zt=new Me(0),t._t=Re,t.xt=Ne,t.Oe.length=0,t.Te.length=0,t.$t.length=0,t.Qe=void 0,t.Je=0,t.tt=0,t.Me=0,113==r?-3:0}function wr(e,t){let r,n,i=e.It,o=e.lt,f=e.wt,s=e.vt,l=e.lt>nt(e)?e.lt-nt(e):0,c=e.Xe,a=e.je,u=e.Be[o],w=e.Be[o+1],h=e.Be[o+f-1],d=e.Be[o+f];e.wt>=e.gt&&(i>>=2),s>e.ct&&(s=e.ct);do{if(r=t,e.Be[r+f]!=d||e.Be[r+f-1]!=h||e.Be[r]!=u||e.Be[r+1]!=w)continue;let i=$e.min(wt,e.ct),l=2;for(;i>l&&e.Be[o+l]==e.Be[r+l];)l++;if(n=l,n>f){if(e.Zt=t,f=n,n>=s)break;h=e.Be[o+f-1],d=e.Be[o+f]}}while((t=c[t&a])>l&&0!=--i);return f>e.ct?e.ct:f}function hr(e,t){((e,t,r,n,i=0)=>{let o,f,s=0;e.bt>0?(2==e.xe.Ie&&(e.xe.Ie=(e=>{let t,r=4093624447;for(t=0;31>=t;t++,r>>=1)if(1&r&&0!=e.Oe[t].$e)return 0;if(0!=e.Oe[9].$e||0!=e.Oe[10].$e||0!=e.Oe[13].$e)return 1;for(t=32;pt>t;t++)if(0!=e.Oe[t].$e)return 1;return 0})(e)),qt(e,e.Ot),qt(e,e.Tt),s=(e=>{let t;for(Ft(e,e.Oe,e.Ot.se),Ft(e,e.Te,e.Tt.se),qt(e,e.Dt),t=yt-1;t>=3&&0==e.$t[De[t]].Pt;t--);return e.rt+=14+3*(t+1),t})(e),o=e.rt+3+7>>3,f=e.nt+3+7>>3,(o>=f||4==e.yt)&&(o=f)):o=f=r+5,o>=r+4&&t?Xt(e,t,r,n,i):f==o?(Rt(e,2+n,3),Gt(e,Zt,Ut)):(Rt(e,4+n,3),((e,t,r,n)=>{let i;for(Rt(e,t-257,5),Rt(e,r-1,5),Rt(e,n-4,4),i=0;n>i;i++)Rt(e,e.$t[De[i]].Pt,3);Wt(e,e.Oe,t-1),Wt(e,e.Te,r-1)})(e,e.Ot.se+1,e.Tt.se+1,s+1),Gt(e,e.Oe,e.Te)),Nt(e),n&&Dt(e)})(e,e.Be,e.lt-e.st,t,e.st),e.st=e.lt,lr(e.xe)}function dr(e,t){return hr(e,t?1:0),0==e.xe.me?t?2:0:null}var pr=65535;function kr(e,t){return t>e?e:t}function br(e,t){let r,n,i,o=kr(e.et-5,e.Ce),f=0,s=e.xe.pe;do{if(r=pr,i=e.Ue+42>>3,e.xe.me<i||(i=e.xe.me-i,n=e.lt-e.st,r>n+e.xe.pe&&(r=n+e.xe.pe),r>i&&(r=i),o>r&&(0==r&&4!=t||0==t||r!=n+e.xe.pe)))break;f=4==t&&r==n+e.xe.pe?1:0,Xt(e,null,0,f),e.Ve[e.Ee-4]=r,e.Ve[e.Ee-3]=r>>8,e.Ve[e.Ee-2]=~r,e.Ve[e.Ee-1]=~r>>8,lr(e.xe),n&&(n>r&&(n=r),Ke(e.xe.be,e.xe.ye,e.Be,e.st,n),e.xe.ye+=n,e.xe.me-=n,e.xe.ge+=n,e.st+=n,r-=n),r&&(ir(e.xe,e.xe.be,e.xe.ye,r),e.xe.ye+=r,e.xe.me-=r,e.xe.ge+=r)}while(0==f);if(s-=e.xe.pe,s){if(s<e.Ce)e.Ht-e.lt<=s&&(e.lt-=e.Ce,Ke(e.Be,0,e.Be,e.Ce,e.lt),2>e.it&&e.it++,e.ot>e.lt&&(e.ot=e.lt)),Ke(e.Be,e.lt,e.xe.he,e.xe.de-s,s),e.lt+=s,e.ot+=kr(s,e.Ce-e.ot);else{e.it=2;let t=e.xe.de-e.Ce;Ke(e.Be,0,e.xe.he,t,e.Ce),e.lt=e.Ce,e.ot=e.lt}e.st=e.lt}return e.Le<e.lt&&(e.Le=e.lt),f?(e.Ct=8,3):0!=t&&4!=t&&0==e.xe.pe&&e.lt==e.st?1:(i=e.Ht-e.lt,e.xe.pe>i&&e.st>=e.Ce&&(e.st-=e.Ce,e.lt-=e.Ce,Ke(e.Be,0,e.Be,e.Ce,e.lt),2>e.it&&e.it++,i+=e.Ce,e.ot>e.lt&&(e.ot=e.lt)),i>e.xe.pe&&(i=e.xe.pe),i&&(ir(e.xe,e.Be,e.lt,i),e.lt+=i,e.ot+=kr(i,e.Ce-e.ot)),e.Le<e.lt&&(e.Le=e.lt),i=e.Ue+42>>3,i=kr(e.et-i,pr),o=kr(i,e.Ce),n=e.lt-e.st,(n>=o||(n||4==t)&&0!=t&&0==e.xe.pe&&i>=n)&&(r=kr(n,i),f=4==t&&0==e.xe.pe&&r==n?1:0,Xt(e,e.Be,r,f,e.st),e.st+=r,lr(e.xe)),f&&(e.Ct=8),f?2:0)}function yr(e,t){let r,n=!1;for(;;){if(e.ct<ht){if(or(e),e.ct<ht&&0==t)return 0;if(0==e.ct)break}if(r=0,e.ct>=ut&&(r=tr(e,e.lt)),0!=r&&e.lt-r<=nt(e)&&(e.ut=wr(e,r)),e.ut<ut)n=rt(e,e.Be[e.lt]),e.ct--,e.lt++;else if(e.lt,e.Zt,e.ut,n=tt(e,e.lt-e.Zt,e.ut-ut),e.ct-=e.ut,e.ut>e.St||e.ct<ut)e.lt+=e.ut,e.ut=0,e.kt=e.Be[e.lt],e.kt=er(e,e.kt,e.Be[e.lt+1]);else{e.ut--;do{e.lt++,r=tr(e,e.lt)}while(0!=--e.ut);e.lt++}if(n){let t=dr(e,!1);if(null!=t)return t}}if(e.ot=e.lt<ut-1?e.lt:ut-1,4==t)return dr(e,!0)??3;if(e.Pe){let t=dr(e,!1);if(null!=t)return t}return 1}function mr(e,t){let r,n=!1;for(;;){if(e.ct<ht){if(or(e),e.ct<ht&&0==t)return 0;if(0==e.ct)break}if(r=0,e.ct>=ut&&(r=tr(e,e.lt)),e.wt=e.ut,e.ht=e.Zt,e.ut=ut-1,0!=r&&e.wt<e.St&&e.lt-r<=nt(e)&&(e.ut=wr(e,r),5>=e.ut&&1==e.yt&&(e.ut=ut-1)),e.wt<ut||e.ut>e.wt)if(e.dt){if(n=rt(e,e.Be[e.lt-1]),n&&hr(e,0),e.lt++,e.ct--,0==e.xe.me)return 0}else e.dt=1,e.lt++,e.ct--;else{let t=e.lt+e.ct-ut;e.lt,e.ht,e.wt,n=tt(e,e.lt-1-e.ht,e.wt-ut),e.ct-=e.wt-1,e.wt-=2;do{++e.lt<=t&&(r=tr(e,e.lt))}while(0!=--e.wt);if(e.dt=0,e.ut=ut-1,e.lt++,n){let t=dr(e,!1);if(null!=t)return t}}}if(e.dt&&(n=rt(e,e.Be[e.lt-1]),e.dt=0),e.ot=e.lt<ut-1?e.lt:ut-1,4==t)return dr(e,!0)??3;if(e.Pe){let t=dr(e,!1);if(null!=t)return t}return 1}var gr=new Ee([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,0,0]),vr=Cr([16,8,17,4,18,4,19,4,20,4,21,4,16,1,73,1,200,1]),Ir=new Ee([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,0,0]),Sr=Cr([16,4,17,2,18,2,19,2,20,2,21,2,22,2,23,2,24,2,25,2,26,2,27,2,28,2,29,2,64,2]),zr=new Ee([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,3,0,0]),_r=Cr([128,8,129,4,130,4,131,4,132,4,133,4,16,1,73,1,200,1]),xr=new Ee([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,32769,49153]),Br=Cr([128,4,129,2,130,2,131,2,132,2,133,2,134,2,135,2,136,2,137,2,138,2,139,2,140,2,141,2,142,2]);function Cr(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],i=e[r+1];for(let e=0;i>e;e++)t.push(n)}return new Ee(t)}function Ar(e,t){let r,n=e._e,i=e.de,o=e.ye,f=e.he,s=e.be,l=n.Be,c=n.Ze>>>0,a=n.Ue>>>0,u=n.tr,w=n.rr,h=(1<<n.nr)-1,d=(1<<n.ir)-1,p=n.Ce>>>0,k=n.Le>>>0,b=n.He>>>0,y=n.sr,m=o-(t-e.me),g=o+(e.me-257),v=i+(e.pe-5),I=0,S=0,z=0,_=0;e:do{for(;15>a;){if(i>=f.length)break e;c+=f[i++]<<a,a+=8}for(r=u[c&h];;){if(z=r.lr,c>>>=z,a-=z,z=r.cr,0==z){s[o++]=r.ar;break}if(16&z){if(I=r.ar,z&=15,z){for(;z>a;){if(i>=f.length){n.ur=16200;break e}c+=f[i++]<<a,a+=8}I+=c&(1<<z)-1,c>>>=z,a-=z}for(;15>a;){if(i>=f.length){n.ur=16200;break e}c+=f[i++]<<a,a+=8}for(r=w[c&d];;){if(z=r.lr,c>>>=z,a-=z,z=r.cr,16&z){if(S=r.ar,z&=15,z){for(;z>a;){if(i>=f.length){n.ur=16200;break e}c+=f[i++]<<a,a+=8}S+=c&(1<<z)-1,c>>>=z,a-=z}let t=I,u=o-m;if(S>u){let r=S-u;if(r>k&&y){e.ve="invalid distance too far back",n.ur=16209;break e}if(0==b){if(_=p-r,r>=t){for(let e=0;t>e;++e)s[o++]=l[_++];continue e}for(let e=0;r>e;++e)s[o++]=l[_++];t-=r,_=o-S}else if(r>b){_=p+b-r;let e=r-b;if(e>=t){for(let e=0;t>e;++e)s[o++]=l[_++];continue e}for(let t=0;e>t;++t)s[o++]=l[_++];if(t-=e,_=0,t>b){for(let e=0;b>e;++e)s[o++]=l[_++];t-=b,_=o-S}}else{if(_=b-r,r>=t){for(let e=0;t>e;++e)s[o++]=l[_++];continue e}for(let e=0;r>e;++e)s[o++]=l[_++];t-=r,_=o-S}for(;t>2;)s[o++]=s[_++],s[o++]=s[_++],s[o++]=s[_++],t-=3;t&&(s[o++]=s[_++],t>1&&(s[o++]=s[_++]))}else{for(_=o-S;t>2;)s[o++]=s[_++],s[o++]=s[_++],s[o++]=s[_++],t-=3;t&&(s[o++]=s[_++],t>1&&(s[o++]=s[_++]))}break}if(64&z){e.ve="invalid distance code",n.ur=16209;break e}r=w[r.ar+(c&(1<<z)-1)]}break}if(64&z){if(32&z){n.ur=16191;break e}e.ve="invalid literal/length code",n.ur=16209;break e}r=u[r.ar+(c&(1<<z)-1)]}}while(v>i&&g>o);let x=a>>3;i-=x,a-=x<<3,c&=(1<<a)-1,e.de=i,e.ye=o,e.pe=v>i?v-i+5:5-(i-v),e.me=g>o?g-o+257:257-(o-g),n.Ze=c>>>0,n.Ue=a>>>0}function Lr(e,t){let r=[],n=t?1446:1444;return{...We(e,0),xe:e,ur:16180,wr:!1,Ne:0,hr:!1,dr:0,pr:0,kr:0,br:0,Be:Re,yr:0,mr:0,Wt:0,tr:r,rr:r,nr:0,ir:0,gr:0,vr:0,Ir:0,Sr:0,zr:r,_r:new Ee(320),Br:new Ee(288),Cr:new Te(n).fill(null).map(()=>Hr()),Ar:0,sr:!0,Lr:0,Hr:0,Zr:t}}function Hr(e=0,t=0,r=0){return{cr:e,lr:t,ar:r}}function Zr(e=1){return{cr:64,lr:e,ar:0}}function Ur(e){return(255&e)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>24&255}var Vr={Zr:!1,Ur:gr,Vr:vr,Er:Ir,Mr:Sr,Pr:20,$r:257,Or:0,Tr:592,Dr:!1,Rr:!0},Er={Zr:!0,Ur:zr,Vr:_r,Er:xr,Mr:Br,Pr:19,$r:256,Or:-1,Tr:594,Dr:!0,Rr:!1};function Mr(e,t,r,n,i,o,f,s){let l,c,a,u,w,h,d,p,k,b,y,m,g,v,I,S,z,_,x,B=new Ee(16),C=new Ee(16),A=s?Er:Vr;for(l=0;15>=l;l++)B[l]=0;for(c=0;r>c;c++)B[t[c]]++;for(w=i.Nr,u=15;u>=1&&0==B[u];u--);if(w>u&&(w=u),0==u)return A.Rr?(I=Zr(1),n.Nr[0]=I,n.Nr[1]=I,i.Nr=1,0):-1;for(a=1;u>a&&0==B[a];a++);for(a>w&&(w=a),p=1,l=1;15>=l;l++)if(p<<=1,p-=B[l],0>p)return-1;if(p>0&&(0==e||1!=u))return-1;for(C[1]=0,l=1;15>l;l++)C[l+1]=C[l]+B[l];for(c=0;r>c;c++)0!=t[c]&&(o[C[t[c]]++]=c);switch(e){case 0:z=_=o,x=A.Pr;break;case 1:z=A.Ur,_=A.Vr,x=A.$r;break;default:z=A.Er,_=A.Mr,x=A.Or}if(b=0,c=0,l=a,S=f.Nr,h=w,d=0,g=-1,k=1<<w,v=k-1,1==e&&(A.Dr?k>=852:k>852)||2==e&&(A.Dr?k>=A.Tr:k>A.Tr))return 1;for(;;){I=Pr(o,c,l,d,e,z,_,x,A.Zr),y=1<<l-d,m=1<<h,a=m;do{m-=y;let e=(b>>d)+m;n.Nr[S+e]={...I}}while(0!=m);for(y=1<<l-1;b&y;)y>>=1;if(0!=y?(b&=y-1,b+=y):b=0,c++,0==--B[l]){if(l==u)break;l=t[o[c]]}if(l>w&&(b&v)!=g){for(0==d&&(d=w),S+=1<<h,h=l-d,p=1<<h;u>h+d&&(p-=B[h+d],p>0);)h++,p<<=1;if(k+=1<<h,1==e&&(A.Dr?k>=852:k>852)||2==e&&(A.Dr?k>=A.Tr:k>A.Tr))return 1;g=b&v,n.Nr[f.Nr+g]={cr:h,lr:w,ar:S-f.Nr}}}if(0!=b)for(I=Zr(l-d);0!=b;){for(0!=d&&(b&v)!=g&&(d=0,l=w,S=f.Nr,h=w,I.lr=l),n.Nr[S+(b>>d)]={...I},y=1<<l-1;b&y;)y>>=1;0!=y?(b&=y-1,b+=y):b=0}return f.Nr+=k,i.Nr=w,0}function Pr(e,t,r,n,i,o,f,s,l){let c;if(l?e[t]<s:e[t]+1<s)c=Hr(0,r-n,e[t]);else if(l?e[t]>s:e[t]>=s)if(l&&1==i){let i=e[t]-257;c=Hr(f[i],r-n,o[i])}else{let i=l?e[t]:e[t]-s;c=Hr(f[i],r-n,o[i])}else c=((e=0)=>({cr:96,lr:e,ar:0}))(r-n);return c}var $r,Or,Tr=new Te(544),Dr=!0;function Rr(e){let t;return!(e&&(t=e._e,!(!t||t.xe!=e||t.Zr&&(16191>t.ur||t.ur>16209)||!t.Zr&&(16180>t.ur||t.ur>16211))))}function Nr(e){let t={Nr:0};if(Dr){let r,n,i;for(r=0;144>r;)e._r[r++]=8;for(;256>r;)e._r[r++]=9;for(;280>r;)e._r[r++]=7;for(;288>r;)e._r[r++]=8;for(let e=0;544>e;e++)Tr[e]=Hr();i=Tr,$r=i,n=9;let o={Nr:i},f={Nr:n},s={Nr:0};for(Mr(1,e._r,288,o,f,e.Br,s,e.Zr),i=o.Nr,n=f.Nr,e.Ar=s.Nr,r=0;32>r;)e._r[r++]=5;n=5;let l=s.Nr,c={Nr:i},a={Nr:n};t.Nr=l,Mr(2,e._r,32,c,a,e.Br,t,e.Zr),Or=i.slice(l),Dr=!1}e.tr=$r,e.nr=9,e.rr=Or,e.ir=5,e.Ar=t.Nr}var Qr=class extends Oe{constructor(){super("Need more input")}};function jr(e,t){let r,n,i,o,f,s,l,c,a,u,w,h,d,p,k,b,y,m=new Ve(4);if(Rr(e)||!e.be||!e.he&&0!=e.pe)return-2;s=0,c=0,l=0,a=0,n=Re,i=0,o=Re,f=0,r=e._e,16191==r.ur&&(r.ur=16192),z(),u=s,w=l,y=0;try{for(;;)switch(r.ur){case 16180:if(0==r.Ne){r.ur=16192;break}if(C(16),2&r.Ne&&35615==c){0==r.Ae&&(r.Ae=15),r.kr=Ot(0),r.kr=I(r.kr,c),x(),r.ur=16181;break}if(r.Qe&&(r.Qe.Qr=-1),!(1&r.Ne)||((A(8)<<8)+(c>>8))%31){e.ve="incorrect header check",r.ur=16209;break}if(8!=A(4)){e.ve="unknown compression method",r.ur=16209;break}if(L(4),b=A(4)+8,0==r.Ae&&(r.Ae=b),b>15||b>r.Ae){e.ve="invalid window size",r.ur=16209;break}r.pr=1<<b,r.dr=0,e.Se=r.kr=Pt(0),r.ur=512&c?16189:16191,x();break;case 16181:if(C(16),r.dr=c,8!=(255&r.dr)){e.ve="unknown compression method",r.ur=16209;break}if(57344&r.dr){e.ve="unknown header flags set",r.ur=16209;break}r.Qe&&(r.Qe.Ft=c>>8&1),512&r.dr&&4&r.Ne&&(r.kr=I(r.kr,c)),x(),r.ur=16182;case 16182:C(32),r.Qe&&(r.Qe.Yt=c),512&r.dr&&4&r.Ne&&(r.kr=S(r.kr,c)),x(),r.ur=16183;case 16183:C(16),r.Qe&&(r.Qe.jr=255&c,r.Qe.Jt=c>>8),512&r.dr&&4&r.Ne&&(r.kr=I(r.kr,c)),x(),r.ur=16184;case 16184:1024&r.dr?(C(16),r.yr=c,r.Qe&&(r.Qe.er=c),512&r.dr&&4&r.Ne&&(r.kr=I(r.kr,c)),x()):r.Qe&&(r.Qe.Wt=Re),r.ur=16185;case 16185:if(1024&r.dr&&(h=r.yr,h>s&&(h=s),h&&(r.Qe&&r.Qe.Wt&&r.Qe.Kr&&(b=r.Qe.er-r.yr)<r.Qe.Kr&&Ke(r.Qe.Wt,b,n,i,h),512&r.dr&&4&r.Ne&&(r.kr=Ot(r.kr,n.subarray(i,i+h),h)),s-=h,i+=h,r.yr-=h),r.yr))return g();r.yr=0,r.ur=16186;case 16186:if(2048&r.dr){if(0==s)return g();h=0;do{b=n[i+h++],r.Qe&&r.Qe.qr&&r.yr<r.Qe.qr&&(r.Qe.Xt[r.yr++]=b)}while(b&&s>h);if(512&r.dr&&4&r.Ne&&(r.kr=Ot(r.kr,n.subarray(i,i+h),h)),s-=h,i+=h,b)return g()}else r.Qe&&(r.Qe.Xt=Re);r.yr=0,r.ur=16187;case 16187:if(4096&r.dr){if(0==s)return g();h=0;do{b=n[i+h++],r.Qe&&r.Qe.Fr&&r.yr<r.Qe.Fr&&(r.Qe.Gt[r.yr++]=b)}while(b&&s>h);if(512&r.dr&&4&r.Ne&&(r.kr=Ot(r.kr,n.subarray(i,i+h),h)),s-=h,i+=h,b)return g()}else r.Qe&&(r.Qe.Gt=Re);r.ur=16188;case 16188:if(512&r.dr){if(C(16),4&r.Ne&&c!=(65535&r.kr)){e.ve="header crc mismatch",r.ur=16209;break}x()}r.Qe&&(r.Qe.qt=r.dr>>9&1,r.Qe.Qr=1),e.Se=r.kr=Ot(0),r.ur=16191;break;case 16189:C(32),e.Se=r.kr=Ur(c),x(),r.ur=16190;case 16190:if(!r.hr)return _(),2;e.Se=r.kr=Pt(0),r.ur=16191;case 16191:if(5==t||6==t)return g();case 16192:if(r.wr){H(),r.ur=16206;break}switch(C(3),r.wr=!!A(1),L(1),A(2)){case 0:r.ur=16193;break;case 1:if(Nr(r),r.ur=16199,6==t)return L(2),g();break;case 2:r.ur=16196;break;case 3:e.ve="invalid block type",r.ur=16209}L(2);break;case 16193:if(H(),C(32),(65535&c)!=(c>>>16^65535)){e.ve="invalid stored block lengths",r.ur=16209;break}if(r.yr=65535&c,x(),r.ur=16194,6==t)return g();case 16194:r.ur=16195;case 16195:if(h=r.yr,h){if(h>s&&(h=s),h>l&&(h=l),0==h)return g();Ke(o,f,n,i,h),s-=h,i+=h,l-=h,f+=h,r.yr-=h;break}r.ur=16191;break;case 16196:if(C(14),r.vr=A(5)+257,L(5),r.Ir=A(5)+1,L(5),r.gr=A(4)+4,L(4),r.vr>286||!r.Zr&&r.Ir>30){e.ve=r.Zr?"too many length":"too many length or distance symbols",r.ur=16209;break}r.Sr=0,r.ur=16197;case 16197:for(;r.Sr<r.gr;)C(3),r._r[De[r.Sr++]]=A(3),L(3);for(;19>r.Sr;)r._r[De[r.Sr++]]=0;r.zr=r.Cr,r.tr=r.rr=r.zr,r.nr=7;let u={Nr:r.zr},m={Nr:r.nr},Z={Nr:0};if(y=Mr(0,r._r,19,u,m,r.Br,Z,r.Zr),r.zr=u.Nr,r.nr=m.Nr,y){e.ve="invalid code lengths set",r.ur=16209;break}r.Sr=0,r.ur=16198;case 16198:for(;r.Sr<r.vr+r.Ir;){for(;p=r.tr[A(r.nr)],p.lr>a;)B();if(16>p.ar)L(p.lr),r._r[r.Sr++]=p.ar;else{if(16==p.ar){if(C(p.lr+2),L(p.lr),0==r.Sr){e.ve="invalid bit length repeat",r.ur=16209;break}b=r._r[r.Sr-1],h=3+A(2),L(2)}else 17==p.ar?(C(p.lr+3),L(p.lr),b=0,h=3+A(3),L(3)):(C(p.lr+7),L(p.lr),b=0,h=11+A(7),L(7));if(r.Sr+h>r.vr+r.Ir){e.ve="invalid bit length repeat",r.ur=16209;break}for(;h--;)r._r[r.Sr++]=b}}if(16209==r.ur)break;if(0==r._r[256]){e.ve="invalid code -- missing end-of-block",r.ur=16209;break}r.zr=r.Cr,r.nr=9;let U={Nr:r.zr},V={Nr:r.nr},E={Nr:0};y=Mr(1,r._r,r.vr,U,V,r.Br,E,r.Zr),r.zr=U.Nr,r.nr=V.Nr;let M=E.Nr;if(r.tr=r.zr.slice(0,M),y){e.ve="invalid literal/lengths set",r.ur=16209;break}r.ir=6;let P=r._r.subarray(r.vr,r.vr+r.Ir),$={Nr:r.zr},O={Nr:r.ir},T={Nr:M};if(y=Mr(2,P,r.Ir,$,O,r.Br,T,r.Zr),r.zr=$.Nr,r.ir=O.Nr,r.rr=r.zr.slice(M),y){e.ve="invalid distances set",r.ur=16209;break}if(r.ur=16199,6==t)return g();case 16199:r.ur=16200;case 16200:if(!r.Zr&&s>=6&&l>=258){_(),Ar(e,w),z(),16191==r.ur&&(r.Lr=-1);break}for(r.Lr=0;p=r.tr[A(r.nr)],p.lr>a;)B();if(p.cr&&!(240&p.cr)){for(k=p;p=r.tr[k.ar+(A(k.lr+k.cr)>>k.lr)],k.lr+p.lr>a;)B();L(k.lr),r.Lr+=k.lr}if(L(p.lr),r.Lr+=p.lr,r.yr=p.ar,0==p.cr){r.ur=16205;break}if(32&p.cr){r.Lr=-1,r.ur=16191;break}if(64&p.cr){e.ve="invalid literal/length code",r.ur=16209;break}r.Wt=15&p.cr,r.ur=16201;case 16201:r.Wt&&(C(r.Wt),r.yr+=A(r.Wt),L(r.Wt),r.Lr+=r.Wt),r.Hr=r.yr,r.ur=16202;case 16202:for(;p=r.rr[A(r.ir)],p.lr>a;)B();if(!(240&p.cr)){for(k=p;p=r.rr[k.ar+(A(k.lr+k.cr)>>k.lr)],k.lr+p.lr>a;)B();L(k.lr),r.Lr+=k.lr}if(L(p.lr),r.Lr+=p.lr,64&p.cr){e.ve="invalid distance code",r.ur=16209;break}r.mr=p.ar,r.Wt=15&p.cr,r.ur=16203;case 16203:r.Wt&&(C(r.Wt),r.mr+=A(r.Wt),L(r.Wt),r.Lr+=r.Wt),r.ur=16204;case 16204:if(0==l)return g();if(h=w-l,r.mr>h){if(h=r.mr-h,h>r.Le&&r.sr){e.ve="invalid distance too far back",r.ur=16209;break}h>r.He?(h-=r.He,d=r.Ce-h):d=r.He-h,h>r.yr&&(h=r.yr),h>l&&(h=l);for(let e=0;h>e;++e)o[f]=255&r.Be[d],++f,++d}else{d=f-r.mr,h=r.yr,h>l&&(h=l);for(let e=0;h>e;++e)o[f]=o[d],++f,++d}h>l&&(h=l),l-=h,r.yr-=h,0==r.yr&&(r.ur=16200);break;case 16205:if(0==l)return g();o[f++]=r.yr,l--,r.ur=16200;break;case 16206:if(r.Ne){if(C(32),w-=l,e.ge+=w,r.br+=w,4&r.Ne&&w){let t=o.subarray(f-w,f);e.Se=r.kr=v(r.kr,t,w)}if(w=l,4&r.Ne&&(r.dr?c:Ur(c)>>>0)!=r.kr){e.ve="incorrect data check",r.ur=16209;break}x()}r.ur=16207;case 16207:if(r.Ne&&r.dr){if(C(32),4&r.Ne&&c!=(4294967295&r.br)){e.ve="incorrect length check",r.ur=16209;break}x()}r.ur=16208;case 16208:return y=1,g();case 16209:return y=-3,g();case 16210:return-4;default:return-2}}catch(e){if(e instanceof Qr)return g();throw e}function g(){if(_(),r.Ce||w!=e.me&&16209>r.ur&&(r.Zr?16208>r.ur:16206>r.ur)||4!=t){let t=w-e.me;if(((e,t,r)=>{let n=e._e;if(!(n.Be&&0!=n.Be.length||(n.Be=new Ve(1<<n.Ae),n.Be)))return 1;if(0==n.Ce&&(n.Ce=1<<n.Ae,n.He=0,n.Le=0),r<n.Ce){let e=n.Ce-n.He;e>r&&(e=r),Ke(n.Be,n.He,t,t.length-r,e),(r-=e)?(Ke(n.Be,0,t,t.length-r,r),n.He=r,n.Le=n.Ce):(n.He+=e,n.He==n.Ce&&(n.He=0),n.Le<n.Ce&&(n.Le+=e))}else Ke(n.Be,0,t,t.length-n.Ce,n.Ce),n.He=0,n.Le=n.Ce;return 0})(e,e.be.subarray(e.ye-t,e.ye),t))return r.ur=16210,-4}return u-=e.pe,w-=e.me,e.ke+=u,e.ge+=w,r.br+=w,4&r.Ne&&w&&(e.Se=r.kr=v(r.kr,e.be.subarray(e.ye-w,e.ye),w)),e.Ie=r.Ue+(r.wr?64:0)+(16191==r.ur?128:0)+(16199==r.ur||16194==r.ur?256:0),(0==u&&0==w&&0==y||4==t&&0==y)&&(y=-5),y}function v(e,t,n){return r.dr?Ot(e,t,n):Pt(e,t,n)}function I(e,t){return m[0]=255&t,m[1]=t>>>8&255,Ot(e,m,2)>>>0}function S(e,t){return m[0]=255&t,m[1]=t>>>8&255,m[2]=t>>>16&255,m[3]=t>>>24&255,Ot(e,m,4)>>>0}function z(){o=e.be,f=e.ye,l=e.me,n=e.he,i=e.de,s=e.pe,c=r.Ze,a=r.Ue}function _(){e.be=o,e.ye=f,e.me=l,e.he=n,e.de=i,e.pe=s,r.Ze=c,r.Ue=a}function x(){c=0,a=0}function B(){if(0==s)throw new Qr;s--,c+=(255&n[i])<<a,i++,c>>>=0,a+=8}function C(e){for(;e>a;)B()}function A(e){return c&(1<<e)-1}function L(e){c>>>=e,a-=e}function H(){c>>>=7&a,a-=7&a}}function Kr(e){return Rr(e)?-2:0}var qr=65536,Fr=class{constructor(e=16,t=qr){this.Wr=[],this.Xr=e;for(let r=0;r<$e.min(e,4);r++)this.Wr.push(new Ve(t))}Gr(e=qr){for(let t=this.Wr.length-1;t>=0;t--){let r=this.Wr[t];if(r.length>=e)return this.Wr.splice(t,1),r}return new Ve(e)}release(e){this.Wr.length<this.Xr&&this.Wr.push(e)}};function Wr(e){let t=new Fr(32,qr),r=null;function n(e){try{t.release(e)}catch{}}return new Pe({start(){},transform(i,o){if(!r){let t=e.Yr(),n=e.Jr(t);if(0!=n&&0!=n)throw new Oe("init failed: "+n);r={xe:t}}let f=r.xe,s=0;for(;s<i.length;){let r=$e.min(i.length-s,32768),l=i.subarray(s,s+r);for(f.he=l,f.de=0,f.pe=l.length;f.pe>0;){let r=t.Gr(),i=!1;try{f.be=r,f.ye=0,f.me=r.length;let n=e.en(f,0),s=r.length-f.me;if(s>0){let e=!1,n={tn:r.subarray(0,s),release:()=>{e||(e=!0,t.release(r))}};i=!0,o.enqueue(n)}if(0!=n&&1!=n)throw new Oe("process error: "+n)}finally{i||n(r)}}s+=r}},flush(i){if(!r)return;let o=r.xe;for(;;){let r=t.Gr(),f=!1;try{o.be=r,o.ye=0,o.me=r.length;let n=e.en(o,4),s=r.length-o.me;if(s>0){let e=!1,n={tn:r.subarray(0,s),release:()=>{e||(e=!0,t.release(r))}};f=!0,i.enqueue(n)}if(1==n)break;if(0!=n)throw new Oe("finalization error: "+n)}finally{f||n(r)}}let f=e.rn(o);if(0!=f&&0!=f)throw new Oe("end failed: "+f)}})}function Xr(){return new Pe({start(){},transform(e,t){try{t.enqueue(e.tn.slice(0))}finally{e.release()}},flush(){}})}var Gr=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 Wr({Yr:()=>(()=>{let e=Fe();return e._e=ot(e),e})(),Jr:e=>((e,t,r=8,n=15,i=at,o=0)=>{let f=1;if(!e)return-2;if(e.ve="",-1==t&&(t=6),0>n){if(f=0,-15>n)return-2;n=-n}else n>15&&(f=2,n-=16);if(1>i||i>9||8!=r||8>n||n>15||0>t||t>9||0>o||o>4||8==n&&1!=f)return-2;8==n&&(n=9);let s=ot(e);return s?(e._e=s,s.xe=e,s.Re=42,s.Ne=f,s.Qe=void 0,s.Ae=n,s.Ce=1<<s.Ae,s.je=s.Ce-1,s.Ke=i+7,s.qe=1<<s.Ke,s.Fe=s.qe-1,s.We=(s.Ke+ut-1)/ut,s.Be=new Ve(2*s.Ce),s.Xe=new Ee(s.Ce),s.Ge=new Ee(s.qe),s.Le=0,s.Ye=1<<i+6,s.Ve=new Ve(4*s.Ye),s.et=4*s.Ye,s.Be&&s.Xe&&s.Ge&&s.Ve?(s.Bt=s.Ve.subarray(s.Ye),s.Me=s.Je+s.Ye,s.De=3*(s.Ye-1),s.bt=t,s.yt=o,s.Lt=r,(e=>{let t=(e=>{let t;return fr(e)?-2:(e.ke=e.ge=0,e.ve="",e.Ie=2,t=e._e,t.Ee=0,t.tt=t.Je,0>t.Ne&&(t.Ne=-t.Ne),t.Re=2==t.Ne?57:42,e.Se=2==t.Ne?Ot(0):Pt(0),t.ft=-2,(e=>{if(e.Oe&&e.Oe.length>=mt)for(let t=0;mt>t;t++)e.Oe[t]=st();else{e.Oe=[];for(let t=0;mt>t;t++)e.Oe.push(st())}if(e.Te&&e.Te.length>=2*bt+1)for(let t=0;2*bt+1>t;t++)e.Te[t]=st();else{e.Te=[];for(let t=0;2*bt+1>t;t++)e.Te.push(st())}if(e.$t&&e.$t.length>=2*yt+1)for(let t=0;2*yt+1>t;t++)e.$t[t]=st();else{e.$t=[];for(let t=0;2*yt+1>t;t++)e.$t.push(st())}e.Ot=new Qe(e.Oe,new je(Zt,xt,pt+1,kt,gt)),e.Tt=new Qe(e.Te,new je(Ut,Bt,0,bt,gt)),e.Dt=new Qe(e.$t,new je(null,Ct,0,yt,7)),e.Ze=0,e.Ue=0,e.Ct=0,Nt(e)})(t),0)})(e);return 0==t&&(e=>{e.Ht=2*e.Ce,rr(e),e.St=Yt[e.bt].Nt,e.gt=Yt[e.bt].Qt,e.vt=Yt[e.bt].jt,e.It=Yt[e.bt].Kt,e.lt=0,e.st=0,e.ct=0,e.ot=0,e.ut=e.wt=ut-1,e.dt=0,e.kt=0})(e._e),t})(e)):(s.Re=666,e.ve=Xe(-4),ur(e),-4)):-4})(e,n,8,r,8,0),en:ar,rn:ur})}(e,t);this.writable=r.writable,this.readable=r.readable.pipeThrough(Xr())}},Yr=class{constructor(e="deflate"){let t=((e="deflate")=>{let t="gzip"==e?31:"deflate-raw"==e?-15:15;return Wr({Yr:()=>(e=>{let t=Fe();return t._e=Lr(t,!!e),t})("deflate64-raw"==e),Jr:e=>function(e,t){let r,n;if(!e)return-2;e.ve="";let i=!!e._e.Zr;return n=Lr(e,i),i&&(t=-16),e._e=n,n.xe=e,n.ur=n.Zr?16191:16180,r=((e,t)=>{let r,n,i;if(Rr(e))return-2;if(n=e._e,n.Zr?(t=-16,i=16):i=15,0>t){if(-i>t)return-2;r=0,t=-t}else r=5+(t>>4),!n.Zr&&48>t&&(t&=15);return t&&(8>t||t>i)?-2:(n.Be.length>0&&n.Ae!=t&&(n.Be=Re),n.Ne=r,n.Ae=t,(e=>{let t;return Rr(e)?-2:(t=e._e,t.Ce=0,t.Le=0,t.He=0,(e=>{let t;return Rr(e)?-2:(t=e._e,e.ke=e.ge=t.br=0,e.ve="",t.Ne&&(e.Se=1&t.Ne),t.ur=t.Zr?16191:16180,t.wr=!1,t.hr=!1,t.dr=-1,t.pr=t.Zr?65536:32768,delete t.Qe,t.Ze=0,t.Ue=0,t.tr=t.Cr,t.rr=t.Cr,t.zr=t.Cr,t.sr=!0,t.Lr=-1,0)})(e))})(e))})(e,t),r}(e,t),en:jr,rn:Kr})})(e);this.writable=t.writable,this.readable=t.readable.pipeThrough(Xr())}};self.initModule=e=>{e.re=Gr,e.ne=Yr}});\n')}),e.BlobReader=It,e.BlobWriter=Lt,e.Data64URIReader=class extends Tt{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const n=e.indexOf(",")+1;r.assign(this,{dataURI:e,dataStart:n,size:a.floor(.75*(t-n))})}readUint8Array(e,t){const{dataStart:r,dataURI:n}=this,s=new p(t),i=4*a.floor(e/3),o=atob(n.substring(i+r,4*a.ceil((e+t)/3)+r)),l=e-3*a.floor(i/4);let c=0;for(let e=l;l+t>e&&e<o.length;e++)s[e-l]=o.charCodeAt(e),c++;return c<s.length?s.subarray(0,c):s}},e.Data64URIWriter=class extends Ut{constructor(e){super(),r.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let r=0,s=t.pending;const i=t.pending.length;for(t.pending="",r=0;r<3*a.floor((i+e.length)/3)-i;r++)s+=n.fromCharCode(e[r]);for(;r<e.length;r++)t.pending+=n.fromCharCode(e[r]);s.length&&(s.length>2?t.data+=x(s):t.pending+=s)}getData(){return this.data+x(this.pending)}},e.ERR_BAD_FORMAT=Vr,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Hr,e.ERR_DUPLICATED_NAME=mn,e.ERR_ENCRYPTED=Kr,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Qr,e.ERR_EOCDR_NOT_FOUND=Zr,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=qr,e.ERR_HTTP_RANGE=vt,e.ERR_INVALID_COMMENT=yn,e.ERR_INVALID_ENCRYPTION_STRENGTH=kn,e.ERR_INVALID_ENTRY_COMMENT=bn,e.ERR_INVALID_ENTRY_NAME=Sn,e.ERR_INVALID_EXTRAFIELD_DATA=En,e.ERR_INVALID_EXTRAFIELD_TYPE=xn,e.ERR_INVALID_PASSWORD=he,e.ERR_INVALID_SIGNATURE=we,e.ERR_INVALID_UNCOMPRESSED_SIZE=et,e.ERR_INVALID_VERSION=zn,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=$r,e.ERR_OVERLAPPING_ENTRY=Yr,e.ERR_SPLIT_ZIP_FILE=jr,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=vn,e.ERR_UNSUPPORTED_COMPRESSION=Gr,e.ERR_UNSUPPORTED_ENCRYPTION=Jr,e.ERR_UNSUPPORTED_FORMAT=Rn,e.ERR_ZIP_NOT_EMPTY=_n,e.HttpRangeReader=class extends Gt{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Gt,e.Reader=Tt,e.SplitDataReader=jt,e.SplitDataWriter=Yt,e.TextReader=class extends It{constructor(e){super(new m([e],{type:"text/plain"}))}},e.TextWriter=class extends Lt{constructor(e){super(e),r.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,n=await super.getData();if(n.text&&t)return n.text();{const t=new FileReader;return new y((s,i)=>{r.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>i(t.error)}),t.readAsText(n,e)})}}},e.Uint8ArrayReader=class extends Tt{constructor(e){super(),e=new p(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 Ut{init(e=0){r.assign(this,{offset:0,array:new p(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const r=t.array;t.array=new p(r.length+e.length),t.array.set(r)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=Ut,e.ZipReader=nn,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:r}=new E,n=new nn(t,e).getEntriesGenerator();this.readable=new R({async pull(e){const{done:t,value:r}=await n.next();if(t)return e.close();const s={...r,readable:(()=>{const{readable:e,writable:t}=new E;if(r.getData)return r.getData(t),e})()};delete s.getData,e.enqueue(s)}}),this.writable=r}},e.ZipWriter=Nn,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:r}=new E;this.readable=t,this.zipWriter=new Nn(r,e)}transform(e){const{readable:t,writable:r}=new E({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:r}}writable(e){const{readable:t,writable:r}=new E;return this.zipWriter.add(e,t),r}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=re,e.getMimeType=()=>"application/octet-stream",e.terminateWorkers=async()=>{await y.allSettled(St.map(e=>(Et(e),e.terminate())))}});
1
+ ((A,e)=>{"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((A="undefined"!=typeof globalThis?globalThis:A||self).zip={})})(this,function(A){"use strict";const{Array:e,Object:t,String:g,Number:i,BigInt:s,Math:o,Date:a,Map:r,Set:n,Response:B,URL:c,Error:I,Uint8Array:E,Uint16Array:C,Uint32Array:l,DataView:w,Blob:h,Promise:d,TextEncoder:u,TextDecoder:F,document:Q,crypto:D,btoa:Y,TransformStream:p,ReadableStream:m,WritableStream:f,CompressionStream:S,DecompressionStream:y,navigator:M,Worker:G}="undefined"!=typeof globalThis?globalThis:this||self;var b=void 0!==Q?Q.currentScript:null;const O=4294967295,U=65535,W=67324752,K=134695760,T=K,z=33639248,R=101010256,N=101075792,H=117853008,L=22,k=21589,J=2048,x="/",P=30,V=new a(2107,11,31),X=new a(1980,0,1),Z=void 0,j="undefined",q="function";let v=2;try{typeof M!=j&&M.hardwareConcurrency&&(v=M.hardwareConcurrency)}catch{}const _={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:v,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,CompressionStream:typeof S!=j&&S,DecompressionStream:typeof y!=j&&y},$=t.assign({},_);function AA(){return $}function eA(A){return o.max(A.chunkSize,64)}function tA(A){const{baseURI:e,chunkSize:t,maxWorkers:g,terminateWorkerTimeout:i,useCompressionStream:s,useWebWorkers:o,CompressionStream:a,DecompressionStream:r,CompressionStreamZlib:n,DecompressionStreamZlib:B,workerURI:c,wasmURI:I}=A;gA("baseURI",e),gA("wasmURI",I),gA("workerURI",c),gA("chunkSize",t),gA("maxWorkers",g),gA("terminateWorkerTimeout",i),gA("useCompressionStream",s),gA("useWebWorkers",o),gA("CompressionStream",a),gA("DecompressionStream",r),gA("CompressionStreamZlib",n),gA("DecompressionStreamZlib",B)}function gA(A,e){e!==Z&&($[A]=e)}const iA="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",sA=[];for(let A=0;256>A;A++){let e=A;for(let A=0;8>A;A++)1&e?e=e>>>1^3988292384:e>>>=1;sA[A]=e}class oA{constructor(A){this.crc=A||-1}append(A){let e=0|this.crc;for(let t=0,g=0|A.length;g>t;t++)e=e>>>8^sA[255&(e^A[t])];this.crc=e}get(){return~this.crc}}class aA extends p{constructor(){let A;const e=new oA;super({transform(A,t){e.append(A),t.enqueue(A)},flush(){const t=new E(4);new w(t.buffer).setUint32(0,e.get()),A.value=t}}),A=this}}function rA(A){if(typeof u==j){const e=new E((A=unescape(encodeURIComponent(A))).length);for(let t=0;t<e.length;t++)e[t]=A.charCodeAt(t);return e}return(new u).encode(A)}const nA={concat(A,e){if(0===A.length||0===e.length)return A.concat(e);const t=A[A.length-1],g=nA.getPartial(t);return 32===g?A.concat(e):nA._shiftRight(e,g,0|t,A.slice(0,A.length-1))},bitLength(A){const e=A.length;if(0===e)return 0;const t=A[e-1];return 32*(e-1)+nA.getPartial(t)},clamp(A,e){if(32*A.length<e)return A;const t=(A=A.slice(0,o.ceil(e/32))).length;return e&=31,t>0&&e&&(A[t-1]=nA.partial(e,A[t-1]&2147483648>>e-1,1)),A},partial:(A,e,t)=>32===A?e:(t?0|e:e<<32-A)+1099511627776*A,getPartial:A=>o.round(A/1099511627776)||32,_shiftRight(A,e,t,g){for(void 0===g&&(g=[]);e>=32;e-=32)g.push(t),t=0;if(0===e)return g.concat(A);for(let i=0;i<A.length;i++)g.push(t|A[i]>>>e),t=A[i]<<32-e;const i=A.length?A[A.length-1]:0,s=nA.getPartial(i);return g.push(nA.partial(e+s&31,e+s>32?t:g.pop(),1)),g}},BA={bytes:{fromBits(A){const e=nA.bitLength(A)/8,t=new E(e);let g;for(let i=0;e>i;i++)3&i||(g=A[i/4]),t[i]=g>>>24,g<<=8;return t},toBits(A){const e=[];let t,g=0;for(t=0;t<A.length;t++)g=g<<8|A[t],3&~t||(e.push(g),g=0);return 3&t&&e.push(nA.partial(8*(3&t),g)),e}}},cA=class{constructor(A){const e=this;e.blockSize=512,e._init=[1732584193,4023233417,2562383102,271733878,3285377520],e._key=[1518500249,1859775393,2400959708,3395469782],A?(e._h=A._h.slice(0),e._buffer=A._buffer.slice(0),e._length=A._length):e.reset()}reset(){const A=this;return A._h=A._init.slice(0),A._buffer=[],A._length=0,A}update(A){const e=this;"string"==typeof A&&(A=BA.utf8String.toBits(A));const t=e._buffer=nA.concat(e._buffer,A),g=e._length,i=e._length=g+nA.bitLength(A);if(i>9007199254740991)throw new I("Cannot hash more than 2^53 - 1 bits");const s=new l(t);let o=0;for(let A=e.blockSize+g-(e.blockSize+g&e.blockSize-1);i>=A;A+=e.blockSize)e._block(s.subarray(16*o,16*(o+1))),o+=1;return t.splice(0,16*o),e}finalize(){const A=this;let e=A._buffer;const t=A._h;e=nA.concat(e,[nA.partial(1,1)]);for(let A=e.length+2;15&A;A++)e.push(0);for(e.push(o.floor(A._length/4294967296)),e.push(0|A._length);e.length;)A._block(e.splice(0,16));return A.reset(),t}_f(A,e,t,g){return A>19?A>39?A>59?A>79?void 0:e^t^g:e&t|e&g|t&g:e^t^g:e&t|~e&g}_S(A,e){return e<<A|e>>>32-A}_block(A){const t=this,g=t._h,i=e(80);for(let e=0;16>e;e++)i[e]=A[e];let s=g[0],a=g[1],r=g[2],n=g[3],B=g[4];for(let A=0;79>=A;A++){16>A||(i[A]=t._S(1,i[A-3]^i[A-8]^i[A-14]^i[A-16]));const e=t._S(5,s)+t._f(A,a,r,n)+B+i[A]+t._key[o.floor(A/20)]|0;B=n,n=r,r=t._S(30,a),a=s,s=e}g[0]=g[0]+s|0,g[1]=g[1]+a|0,g[2]=g[2]+r|0,g[3]=g[3]+n|0,g[4]=g[4]+B|0}},IA={getRandomValues(A){const e=new l(A.buffer),t=A=>{let e=987654321;const t=4294967295;return()=>(e=36969*(65535&e)+(e>>16)&t,(((e<<16)+(A=18e3*(65535&A)+(A>>16)&t)&t)/4294967296+.5)*(o.random()>.5?1:-1))};for(let g,i=0;i<A.length;i+=4){const A=t(4294967296*(g||o.random()));g=987654071*A(),e[i/4]=4294967296*A()|0}return A}},EA={importKey:A=>new EA.hmacSha1(BA.bytes.toBits(A)),pbkdf2(A,e,t,g){if(t=t||1e4,0>g||0>t)throw new I("invalid params to pbkdf2");const i=1+(g>>5)<<2;let s,o,a,r,n;const B=new ArrayBuffer(i),c=new w(B);let E=0;const C=nA;for(e=BA.bytes.toBits(e),n=1;(i||1)>E;n++){for(s=o=A.encrypt(C.concat(e,[n])),a=1;t>a;a++)for(o=A.encrypt(o),r=0;r<o.length;r++)s[r]^=o[r];for(a=0;(i||1)>E&&a<s.length;a++)c.setInt32(E,s[a]),E+=4}return B.slice(0,g/8)},hmacSha1:class{constructor(A){const e=this,t=e._hash=cA,g=[[],[]];e._baseHash=[new t,new t];const i=e._baseHash[0].blockSize/32;A.length>i&&(A=(new t).update(A).finalize());for(let e=0;i>e;e++)g[0][e]=909522486^A[e],g[1][e]=1549556828^A[e];e._baseHash[0].update(g[0]),e._baseHash[1].update(g[1]),e._resultHash=new t(e._baseHash[0])}reset(){const A=this;A._resultHash=new A._hash(A._baseHash[0]),A._updated=!1}update(A){this._updated=!0,this._resultHash.update(A)}digest(){const A=this,e=A._resultHash.finalize(),t=new A._hash(A._baseHash[1]).update(e).finalize();return A.reset(),t}encrypt(A){if(this._updated)throw new I("encrypt on already updated hmac called!");return this.update(A),this.digest(A)}}},CA=typeof D!=j&&typeof D.getRandomValues==q,lA="Invalid password",wA="Invalid signature",hA="zipjs-abort-check-password";function dA(A){return CA?D.getRandomValues(A):IA.getRandomValues(A)}const uA=16,FA={name:"PBKDF2"},QA=t.assign({hash:{name:"HMAC"}},FA),DA=t.assign({iterations:1e3,hash:{name:"SHA-1"}},FA),YA=["deriveBits"],pA=[8,12,16],mA=[16,24,32],fA=10,SA=[0,0,0,0],yA=typeof D!=j,MA=yA&&D.subtle,GA=yA&&typeof MA!=j,bA=BA.bytes,OA=class{constructor(A){const e=this;e._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],e._tables[0][0][0]||e._precompute();const t=e._tables[0][4],g=e._tables[1],i=A.length;let s,o,a,r=1;if(4!==i&&6!==i&&8!==i)throw new I("invalid aes key size");for(e._key=[o=A.slice(0),a=[]],s=i;4*i+28>s;s++){let A=o[s-1];(s%i===0||8===i&&s%i===4)&&(A=t[A>>>24]<<24^t[A>>16&255]<<16^t[A>>8&255]<<8^t[255&A],s%i===0&&(A=A<<8^A>>>24^r<<24,r=r<<1^283*(r>>7))),o[s]=o[s-i]^A}for(let A=0;s;A++,s--){const e=o[3&A?s:s-4];a[A]=4>=s||4>A?e:g[0][t[e>>>24]]^g[1][t[e>>16&255]]^g[2][t[e>>8&255]]^g[3][t[255&e]]}}encrypt(A){return this._crypt(A,0)}decrypt(A){return this._crypt(A,1)}_precompute(){const A=this._tables[0],e=this._tables[1],t=A[4],g=e[4],i=[],s=[];let o,a,r,n;for(let A=0;256>A;A++)s[(i[A]=A<<1^283*(A>>7))^A]=A;for(let B=o=0;!t[B];B^=a||1,o=s[o]||1){let s=o^o<<1^o<<2^o<<3^o<<4;s=s>>8^255&s^99,t[B]=s,g[s]=B,n=i[r=i[a=i[B]]];let c=16843009*n^65537*r^257*a^16843008*B,I=257*i[s]^16843008*s;for(let t=0;4>t;t++)A[t][B]=I=I<<24^I>>>8,e[t][s]=c=c<<24^c>>>8}for(let t=0;5>t;t++)A[t]=A[t].slice(0),e[t]=e[t].slice(0)}_crypt(A,e){if(4!==A.length)throw new I("invalid aes block size");const t=this._key[e],g=t.length/4-2,i=[0,0,0,0],s=this._tables[e],o=s[0],a=s[1],r=s[2],n=s[3],B=s[4];let c,E,C,l=A[0]^t[0],w=A[e?3:1]^t[1],h=A[2]^t[2],d=A[e?1:3]^t[3],u=4;for(let A=0;g>A;A++)c=o[l>>>24]^a[w>>16&255]^r[h>>8&255]^n[255&d]^t[u],E=o[w>>>24]^a[h>>16&255]^r[d>>8&255]^n[255&l]^t[u+1],C=o[h>>>24]^a[d>>16&255]^r[l>>8&255]^n[255&w]^t[u+2],d=o[d>>>24]^a[l>>16&255]^r[w>>8&255]^n[255&h]^t[u+3],u+=4,l=c,w=E,h=C;for(let A=0;4>A;A++)i[e?3&-A:A]=B[l>>>24]<<24^B[w>>16&255]<<16^B[h>>8&255]<<8^B[255&d]^t[u++],c=l,l=w,w=h,h=d,d=c;return i}},UA=class{constructor(A,e){this._prf=A,this._initIv=e,this._iv=e}reset(){this._iv=this._initIv}update(A){return this.calculate(this._prf,A,this._iv)}incWord(A){if(255&~(A>>24))A+=1<<24;else{let e=A>>16&255,t=A>>8&255,g=255&A;255===e?(e=0,255===t?(t=0,255===g?g=0:++g):++t):++e,A=0,A+=e<<16,A+=t<<8,A+=g}return A}incCounter(A){0===(A[0]=this.incWord(A[0]))&&(A[1]=this.incWord(A[1]))}calculate(A,e,t){let g;if(!(g=e.length))return[];const i=nA.bitLength(e);for(let i=0;g>i;i+=4){this.incCounter(t);const g=A.encrypt(t);e[i]^=g[0],e[i+1]^=g[1],e[i+2]^=g[2],e[i+3]^=g[3]}return nA.clamp(e,i)}},WA=EA.hmacSha1;let KA=yA&&GA&&typeof MA.importKey==q,TA=yA&&GA&&typeof MA.deriveBits==q;class zA extends p{constructor({password:A,rawPassword:e,signed:g,encryptionStrength:i,checkPasswordOnly:s}){super({start(){t.assign(this,{ready:new d(A=>this.resolveReady=A),password:LA(A,e),signed:g,strength:i-1,pending:new E})},async transform(A,e){const t=this,{password:g,strength:i,resolveReady:o,ready:a}=t;g?(await(async(A,e,t,g)=>{const i=await HA(A,e,t,JA(g,0,pA[e])),s=JA(g,pA[e]);if(i[0]!=s[0]||i[1]!=s[1])throw new I(lA)})(t,i,g,JA(A,0,pA[i]+2)),A=JA(A,pA[i]+2),s?e.error(new I(hA)):o()):await a;const r=new E(A.length-fA-(A.length-fA)%uA);e.enqueue(NA(t,A,r,0,fA,!0))},async flush(A){const{signed:e,ctr:t,hmac:g,pending:i,ready:s}=this;if(g&&t){await s;const o=JA(i,0,i.length-fA),a=JA(i,i.length-fA);let r=new E;if(o.length){const A=PA(bA,o);g.update(A);const e=t.update(A);r=xA(bA,e)}if(e){const A=JA(xA(bA,g.digest()),0,fA);for(let e=0;fA>e;e++)if(A[e]!=a[e])throw new I(wA)}A.enqueue(r)}}})}}class RA extends p{constructor({password:A,rawPassword:e,encryptionStrength:g}){let i;super({start(){t.assign(this,{ready:new d(A=>this.resolveReady=A),password:LA(A,e),strength:g-1,pending:new E})},async transform(A,e){const t=this,{password:g,strength:i,resolveReady:s,ready:o}=t;let a=new E;g?(a=await(async(A,e,t)=>{const g=dA(new E(pA[e]));return kA(g,await HA(A,e,t,g))})(t,i,g),s()):await o;const r=new E(a.length+A.length-A.length%uA);r.set(a,0),e.enqueue(NA(t,A,r,a.length,0))},async flush(A){const{ctr:e,hmac:t,pending:g,ready:s}=this;if(t&&e){await s;let o=new E;if(g.length){const A=e.update(PA(bA,g));t.update(A),o=xA(bA,A)}i.signature=xA(bA,t.digest()).slice(0,fA),A.enqueue(kA(o,i.signature))}}}),i=this}}function NA(A,e,t,g,i,s){const{ctr:o,hmac:a,pending:r}=A,n=e.length-i;let B;for(r.length&&(e=kA(r,e),t=((A,e)=>{if(e&&e>A.length){const t=A;(A=new E(e)).set(t,0)}return A})(t,n-n%uA)),B=0;n-uA>=B;B+=uA){const A=PA(bA,JA(e,B,B+uA));s&&a.update(A);const i=o.update(A);s||a.update(i),t.set(xA(bA,i),B+g)}return A.pending=JA(e,B),t}async function HA(A,g,i,s){A.password=null;const o=await(async(A,e,t,g,i)=>{if(!KA)return EA.importKey(e);try{return await MA.importKey("raw",e,t,!1,i)}catch{return KA=!1,EA.importKey(e)}})(0,i,QA,0,YA),a=await(async(A,e,t)=>{if(!TA)return EA.pbkdf2(e,A.salt,DA.iterations,t);try{return await MA.deriveBits(A,e,t)}catch{return TA=!1,EA.pbkdf2(e,A.salt,DA.iterations,t)}})(t.assign({salt:s},DA),o,8*(2*mA[g]+2)),r=new E(a),n=PA(bA,JA(r,0,mA[g])),B=PA(bA,JA(r,mA[g],2*mA[g])),c=JA(r,2*mA[g]);return t.assign(A,{keys:{key:n,authentication:B,passwordVerification:c},ctr:new UA(new OA(n),e.from(SA)),hmac:new WA(B)}),c}function LA(A,e){return e===Z?rA(A):e}function kA(A,e){let t=A;return A.length+e.length&&(t=new E(A.length+e.length),t.set(A,0),t.set(e,A.length)),t}function JA(A,e,t){return A.subarray(e,t)}function xA(A,e){return A.fromBits(e)}function PA(A,e){return A.toBits(e)}class VA extends p{constructor({password:A,passwordVerification:e,checkPasswordOnly:g}){super({start(){t.assign(this,{password:A,passwordVerification:e}),qA(this,A)},transform(A,e){const t=this;if(t.password){const e=ZA(t,A.subarray(0,12));if(t.password=null,e.at(-1)!=t.passwordVerification)throw new I(lA);A=A.subarray(12)}g?e.error(new I(hA)):e.enqueue(ZA(t,A))}})}}class XA extends p{constructor({password:A,passwordVerification:e}){super({start(){t.assign(this,{password:A,passwordVerification:e}),qA(this,A)},transform(A,e){const t=this;let g,i;if(t.password){t.password=null;const e=dA(new E(12));e[11]=t.passwordVerification,g=new E(A.length+e.length),g.set(jA(t,e),0),i=12}else g=new E(A.length),i=0;g.set(jA(t,A),i),e.enqueue(g)}})}}function ZA(A,e){const t=new E(e.length);for(let g=0;g<e.length;g++)t[g]=_A(A)^e[g],vA(A,t[g]);return t}function jA(A,e){const t=new E(e.length);for(let g=0;g<e.length;g++)t[g]=_A(A)^e[g],vA(A,e[g]);return t}function qA(A,e){const g=[305419896,591751049,878082192];t.assign(A,{keys:g,crcKey0:new oA(g[0]),crcKey2:new oA(g[2])});for(let t=0;t<e.length;t++)vA(A,e.charCodeAt(t))}function vA(A,e){let[t,g,i]=A.keys;A.crcKey0.append([e]),t=~A.crcKey0.get(),g=Ae(o.imul(Ae(g+$A(t)),134775813)+1),A.crcKey2.append([g>>>24]),i=~A.crcKey2.get(),A.keys=[t,g,i]}function _A(A){const e=2|A.keys[2];return $A(o.imul(e,1^e)>>>8)}function $A(A){return 255&A}function Ae(A){return 4294967295&A}const ee="Invalid uncompressed size";class te extends p{constructor(A,{chunkSize:e,CompressionStreamZlib:t,CompressionStream:g}){super({});const{compressed:i,encrypted:s,useCompressionStream:o,zipCrypto:a,signed:r,level:n}=A,B=this;let c,I,E=super.readable;s&&!a||!r||(c=new aA,E=oe(E,c)),i&&(E=se(E,o,{level:n,chunkSize:e},g,t,g)),s&&(a?E=oe(E,new XA(A)):(I=new RA(A),E=oe(E,I))),ie(B,E,()=>{let A;s&&!a&&(A=I.signature),s&&!a||!r||(A=new w(c.value.buffer).getUint32(0)),B.signature=A})}}class ge extends p{constructor(A,{chunkSize:e,DecompressionStreamZlib:t,DecompressionStream:g}){super({});const{zipCrypto:i,encrypted:s,signed:o,signature:a,compressed:r,useCompressionStream:n,deflate64:B}=A;let c,E,C=super.readable;s&&(i?C=oe(C,new VA(A)):(E=new zA(A),C=oe(C,E))),r&&(C=se(C,n,{chunkSize:e,deflate64:B},g,t,g)),s&&!i||!o||(c=new aA,C=oe(C,c)),ie(this,C,()=>{if((!s||i)&&o){const A=new w(c.value.buffer);if(a!=A.getUint32(0,!1))throw new I(wA)}})}}function ie(A,e,g){e=oe(e,new p({flush:g})),t.defineProperty(A,"readable",{get:()=>e})}function se(A,e,t,g,i,s){const o=e&&g?g:i||s,a=t.deflate64?"deflate64-raw":"deflate-raw";try{A=oe(A,new o(a,t))}catch(g){if(!e)throw g;if(i)A=oe(A,new i(a,t));else{if(!s)throw g;A=oe(A,new s(a,t))}}return A}function oe(A,e){return A.pipeThrough(e)}const ae="data",re="close",ne="deflate",Be="inflate";class ce extends p{constructor(A,e){super({});const g=this,{codecType:i}=A;let s;i.startsWith(ne)?s=te:i.startsWith(Be)&&(s=ge),g.outputSize=0;let o=0;const a=new s(A,e),r=super.readable,n=new p({transform(A,e){A&&A.length&&(o+=A.length,e.enqueue(A))},flush(){t.assign(g,{inputSize:o})}}),B=new p({transform(e,t){if(e&&e.length&&(t.enqueue(e),g.outputSize+=e.length,A.outputSize!==Z&&g.outputSize>A.outputSize))throw new I(ee)},flush(){const{signature:A}=a;t.assign(g,{signature:A,inputSize:o})}});t.defineProperty(g,"readable",{get:()=>r.pipeThrough(n).pipeThrough(a).pipeThrough(B)})}}class Ie extends p{constructor(A){let e;super({transform:function t(g,i){if(e){const A=new E(e.length+g.length);A.set(e),A.set(g,e.length),g=A,e=null}g.length>A?(i.enqueue(g.slice(0,A)),t(g.slice(A),i)):e=g},flush(A){e&&e.length&&A.enqueue(e)}})}}let Ee=typeof G!=j;class Ce{constructor(A,{readable:e,writable:g},{options:i,config:s,streamOptions:o,useWebWorkers:a,transferStreams:r,workerURI:n},B){const{signal:c}=o;return t.assign(A,{busy:!0,readable:e.pipeThrough(new Ie(s.chunkSize)).pipeThrough(new le(o),{signal:c}),writable:g,options:t.assign({},i),workerURI:n,transferStreams:r,terminate:()=>new d(e=>{const{worker:t,busy:g}=A;t?(g?A.resolveTerminated=e:(t.terminate(),e()),A.interface=null):e()}),onTaskFinished(){const{resolveTerminated:e}=A;e&&(A.resolveTerminated=null,A.terminated=!0,A.worker.terminate(),e()),A.busy=!1,B(A)}}),(a&&Ee?de:he)(A,s)}}class le extends p{constructor({onstart:A,onprogress:e,size:t,onend:g}){let i=0;super({async start(){A&&await we(A,t)},async transform(A,g){i+=A.length,e&&await we(e,i,t),g.enqueue(A)},async flush(){g&&await we(g,i)}})}}async function we(A,...e){try{await A(...e)}catch{}}function he(A,e){return{run:()=>(async({options:A,readable:e,writable:t,onTaskFinished:g},i)=>{let s;try{if(!A.useCompressionStream)try{await void 0}catch{A.useCompressionStream=!0}s=new ce(A,i),await e.pipeThrough(s).pipeTo(t,{preventClose:!0,preventAbort:!0});const{signature:g,inputSize:o,outputSize:a}=s;return{signature:g,inputSize:o,outputSize:a}}catch(A){throw s&&(A.outputSize=s.outputSize),A}finally{g()}})(A,e)}}function de(A,e){const{baseURI:g,chunkSize:i}=e;let{wasmURI:s}=e;if(!A.interface){let o;typeof s==q&&(s=s());try{o=((A,e,g)=>{const i={type:"module"};let s,o;if(typeof A==q&&(A=A()),A.startsWith("data:")||A.startsWith("blob:"))try{o=new G(A)}catch{o=new G(A,i)}else{try{s=new c(A,e)}catch{s=A}o=new G(s,i)}return o.addEventListener("message",A=>(async({data:A},e)=>{const{type:g,value:i,messageId:s,result:o,error:a}=A,{reader:r,writer:n,resolveResult:B,rejectResult:c,onTaskFinished:C}=e;try{if(a){const{message:A,stack:e,code:g,name:i,outputSize:s}=a,o=new I(A);t.assign(o,{stack:e,code:g,name:i,outputSize:s}),l(o)}else{if("pull"==g){const{value:A,done:t}=await r.read();Fe({type:ae,value:A,done:t,messageId:s},e)}g==ae&&(await n.ready,await n.write(new E(i)),Fe({type:"ack",messageId:s},e)),g==re&&l(null,o)}}catch(a){Fe({type:re,messageId:s},e),l(a)}function l(A,e){A?c(A):B(e),n&&n.releaseLock(),C()}})(A,g)),o})(A.workerURI,g,A)}catch{return Ee=!1,he(A,e)}t.assign(A,{worker:o,interface:{run:()=>(async(A,e)=>{let g,i;const s=new d((A,e)=>{g=A,i=e});t.assign(A,{reader:null,writer:null,resolveResult:g,rejectResult:i,result:s});const{readable:o,options:a}=A,{writable:r,closed:n}=(A=>{let e;const t=new d(A=>e=A);return{writable:new f({async write(e){const t=A.getWriter();await t.ready,await t.write(e),t.releaseLock()},close(){e()},abort:e=>A.getWriter().abort(e)}),closed:t}})(A.writable),B=Fe({type:"start",options:a,config:e,readable:o,writable:r},A);B||t.assign(A,{reader:o.getReader(),writer:r.getWriter()});const c=await s;return B||await r.getWriter().close(),await n,c})(A,{chunkSize:i,wasmURI:s,baseURI:g})}})}return A.interface}let ue=!0;function Fe(A,{worker:e,writer:t,onTaskFinished:g,transferStreams:i}){try{const{value:t,readable:g,writable:s}=A,o=[];if(t&&(t.byteLength<t.buffer.byteLength?A.value=t.buffer.slice(0,t.byteLength):A.value=t.buffer,o.push(A.value)),i&&ue?(g&&o.push(g),s&&o.push(s)):A.readable=A.writable=null,o.length)try{return e.postMessage(A,o),!0}catch{ue=!1,A.readable=A.writable=null,e.postMessage(A)}else e.postMessage(A)}catch(A){throw t&&t.releaseLock(),g(),A}}let Qe=[];const De=[];let Ye=0;async function pe(A,e){const{options:t,config:g}=e,{transferStreams:s,useWebWorkers:o,useCompressionStream:a,compressed:r,signed:n,encrypted:B}=t,{workerURI:c,maxWorkers:I}=g;e.transferStreams=s||s===Z;const E=!(r||n||B||e.transferStreams);return e.useWebWorkers=!E&&(o||o===Z&&g.useWebWorkers),e.workerURI=e.useWebWorkers&&c?c:Z,t.useCompressionStream=a||a===Z&&g.useCompressionStream,(await(async()=>{const t=Qe.find(A=>!A.busy);if(t)return me(t),new Ce(t,A,e,C);if(Qe.length<I){const t={indexWorker:Ye};return Ye++,Qe.push(t),new Ce(t,A,e,C)}return new d(t=>De.push({resolve:t,stream:A,workerOptions:e}))})()).run();function C(A){if(De.length){const[{resolve:e,stream:t,workerOptions:g}]=De.splice(0,1);e(new Ce(A,t,g,C))}else A.worker?(me(A),((A,e)=>{const{config:t}=e,{terminateWorkerTimeout:g}=t;i.isFinite(g)&&g>=0&&(A.terminated?A.terminated=!1:A.terminateTimeout=setTimeout(async()=>{Qe=Qe.filter(e=>e!=A);try{await A.terminate()}catch{}},g))})(A,e)):Qe=Qe.filter(e=>e!=A)}}function me(A){const{terminateTimeout:e}=A;e&&(clearTimeout(e),A.terminateTimeout=null)}const fe="HTTP error ",Se="HTTP Range not supported",ye="Range",Me="GET",Ge="bytes",be=65536,Oe="writable";class Ue{constructor(){this.size=0}init(){this.initialized=!0}}class We extends Ue{get readable(){const A=this,{chunkSize:e=be}=A,t=new m({start(){this.chunkOffset=0},async pull(g){const{offset:i=0,size:s,diskNumberStart:a}=t,{chunkOffset:r}=this,n=s===Z?e:o.min(e,s-r),B=await gt(A,i+r,n,a);g.enqueue(B),r+e>s||s===Z&&!B.length&&n?g.close():this.chunkOffset+=e}});return t}}class Ke extends Ue{constructor(){super();const A=this,e=new f({write(e){if(!A.initialized)throw new I("Writer not initialized");return A.writeUint8Array(e)}});t.defineProperty(A,Oe,{get:()=>e})}writeUint8Array(){}}class Te extends We{constructor(A){super(),t.assign(this,{blob:A,size:A.size})}async readUint8Array(A,e){const t=this,g=A+e,i=A||g<t.size?t.blob.slice(A,g):t.blob;let s=await i.arrayBuffer();return s.byteLength>e&&(s=s.slice(A,g)),new E(s)}}class ze extends Ue{constructor(A){super();const e=new p,g=[];A&&g.push(["Content-Type",A]),t.defineProperty(this,Oe,{get:()=>e.writable}),this.blob=new B(e.readable,{headers:g}).blob()}getData(){return this.blob}}class Re extends We{constructor(A,e){super(),He(this,A,e)}async init(){await Le(this,je,Pe),super.init()}readUint8Array(A,e){return ke(this,A,e,je,Pe)}}class Ne extends We{constructor(A,e){super(),He(this,A,e)}async init(){await Le(this,qe,Ve),super.init()}readUint8Array(A,e){return ke(this,A,e,qe,Ve)}}function He(A,e,g){const{preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:o,combineSizeEocd:a}=g;delete(g=t.assign({},g)).preventHeadRequest,delete g.useRangeHeader,delete g.forceRangeRequests,delete g.combineSizeEocd,delete g.useXHR,t.assign(A,{url:e,options:g,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:o,combineSizeEocd:a})}async function Le(A,e,t){const{url:g,preventHeadRequest:s,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:r}=A;if((A=>{const{baseURI:e}=AA(),{protocol:t}=new c(A,e);return"http:"==t||"https:"==t})(g)&&(o||a)&&(void 0===s||s)){const g=await e(Me,A,Je(A,r?-22:void 0)),s=g.headers.get("Accept-Ranges");if(!(a||s&&s.toLowerCase()==Ge))throw new I(Se);{let s;r&&(A.eocdCache=new E(await g.arrayBuffer()));const o=g.headers.get("Content-Range");if(o){const A=o.trim().split(/\s*\/\s*/);if(A.length){const e=A[1];e&&"*"!=e&&(s=i(e))}}s===Z?await Ze(A,e,t):A.size=s}}else await Ze(A,e,t)}async function ke(A,e,t,g,i){const{useRangeHeader:s,forceRangeRequests:o,eocdCache:a,size:r,options:n}=A;if(s||o){if(a&&e==r-L&&t==L)return a;if(r>e){e+t>r&&(t=r-e);const i=await g(Me,A,Je(A,e,t));if(206!=i.status)throw new I(Se);return new E(await i.arrayBuffer())}return new E}{const{data:g}=A;return g||await i(A,n),new E(A.data.subarray(e,e+t))}}function Je(A,e=0,g=1){return t.assign({},xe(A),{[ye]:Ge+"="+(0>e?e:e+"-"+(e+g-1))})}function xe({options:A}){const{headers:e}=A;if(e)return Symbol.iterator in e?t.fromEntries(e):e}async function Pe(A){await Xe(A,je)}async function Ve(A){await Xe(A,qe)}async function Xe(A,e){const t=await e(Me,A,xe(A));A.data=new E(await t.arrayBuffer()),A.size||(A.size=A.data.length)}async function Ze(A,e,t){if(A.preventHeadRequest)await t(A,A.options);else{const g=(await e("HEAD",A,xe(A))).headers.get("Content-Length");g?A.size=i(g):await t(A,A.options)}}async function je(A,{options:e,url:g},i){const s=await fetch(g,t.assign({},e,{method:A,headers:i}));if(400>s.status)return s;throw 416==s.status?new I(Se):new I(fe+(s.statusText||s.status))}function qe(A,{url:e},g){return new d((i,s)=>{const o=new XMLHttpRequest;if(o.addEventListener("load",()=>{if(400>o.status){const A=[];o.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(e=>{const t=e.trim().split(/\s*:\s*/);t[0]=t[0].trim().replace(/^[a-z]|-[a-z]/g,A=>A.toUpperCase()),A.push(t)}),i({status:o.status,arrayBuffer:()=>o.response,headers:new r(A)})}else s(416==o.status?new I(Se):new I(fe+(o.statusText||o.status)))},!1),o.addEventListener("error",A=>s(A.detail?A.detail.error:new I("Network error")),!1),o.open(A,e),g)for(const A of t.entries(g))o.setRequestHeader(A[0],A[1]);o.responseType="arraybuffer",o.send()})}class ve extends We{constructor(A,e={}){super(),t.assign(this,{url:A,reader:e.useXHR?new Ne(A,e):new Re(A,e)})}set size(A){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(A,e){return this.reader.readUint8Array(A,e)}}class _e extends We{constructor(A){super(),this.readers=A}async init(){const A=this,{readers:e}=A;A.lastDiskNumber=0,A.lastDiskOffset=0,await d.all(e.map(async(t,g)=>{await t.init(),g!=e.length-1&&(A.lastDiskOffset+=t.size),A.size+=t.size})),super.init()}async readUint8Array(A,e,t=0){const g=this,{readers:i}=this;let s,a=t;-1==a&&(a=i.length-1);let r=A;for(;i[a]&&r>=i[a].size;)r-=i[a].size,a++;const n=i[a];if(n){const i=n.size;if(r+e>i){const o=i-r;s=new E(e);const a=await gt(n,r,o);s.set(a,0);const B=await g.readUint8Array(A+o,e-o,t);s.set(B,o),a.length+B.length<e&&(s=s.subarray(0,a.length+B.length))}else s=await gt(n,r,e)}else s=new E;return g.lastDiskNumber=o.max(a,g.lastDiskNumber),s}}class $e extends Ue{constructor(A,e=4294967295){super();const g=this;let i,s,o;t.assign(g,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});const a=new f({async write(e){const{availableSize:t}=g;if(o)e.length<t?await r(e):(await r(e.subarray(0,t)),await n(),g.diskOffset+=i.size,g.diskNumber++,o=null,await this.write(e.subarray(t)));else{const{value:t,done:a}=await A.next();if(a&&!t)throw new I("Writer iterator completed too soon");i=t,i.size=0,i.maxSize&&(g.maxSize=i.maxSize),g.availableSize=g.maxSize,await tt(i),s=t.writable,o=s.getWriter(),await this.write(e)}},async close(){await o.ready,await n()}});async function r(A){const e=A.length;e&&(await o.ready,await o.write(A),i.size+=e,g.size+=e,g.availableSize-=e)}async function n(){await o.close()}t.defineProperty(g,Oe,{get:()=>a})}}class At{constructor(A){return e.isArray(A)&&(A=new _e(A)),A instanceof m&&(A={readable:A}),A}}class et{constructor(A){return A.writable===Z&&typeof A.next==q&&(A=new $e(A)),A instanceof f&&(A={writable:A}),A.size===Z&&(A.size=0),A instanceof $e||t.assign(A,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),A}}async function tt(A,e){if(!A.init||A.initialized)return d.resolve();await A.init(e)}function gt(A,e,t,g){return A.readUint8Array(e,t,g)}const it="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function st(A,e){return e&&"cp437"==e.trim().toLowerCase()?(A=>{{let e="";for(let t=0;t<A.length;t++)e+=it[A[t]];return e}})(A):new F(e).decode(A)}const ot="filename",at="rawFilename",rt="comment",nt="rawComment",Bt="uncompressedSize",ct="compressedSize",It="offset",Et="diskNumberStart",Ct="lastModDate",lt="rawLastModDate",wt="lastAccessDate",ht="creationDate",dt="internalFileAttributes",ut="externalFileAttributes",Ft="msDosCompatible",Qt="zip64",Dt="encrypted",Yt="version",pt="versionMadeBy",mt="zipCrypto",ft="directory",St="executable",yt="compressionMethod",Mt="signature",Gt="extraField",bt=[ot,at,ct,Bt,Ct,lt,rt,nt,wt,ht,It,Et,Et,dt,ut,Ft,Qt,Dt,Yt,pt,mt,ft,St,yt,Mt,Gt,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class Ot{constructor(A){bt.forEach(e=>this[e]=A[e])}}const Ut="password",Wt="rawPassword",Kt="passThrough",Tt="signal",zt="useWebWorkers",Rt="useCompressionStream",Nt="preventClose",Ht="supportZip64SplitFile",Lt="offset",kt="usdz",Jt="File format is not recognized",xt="End of central directory not found",Pt="End of Zip64 central directory locator not found",Vt="Central directory header not found",Xt="Local file header not found",Zt="Zip64 extra field not found",jt="File contains encrypted entry",qt="Encryption method not supported",vt="Compression method not supported",_t="Split zip file",$t="Overlapping entry found",Ag="utf-8",eg="cp437",tg=[[Bt,O],[ct,O],[It,O],[Et,U]],gg={[U]:{getValue:Cg,bytes:4},[O]:{getValue:lg,bytes:8}};class ig{constructor(A,e={}){t.assign(this,{reader:new At(A),options:e,config:AA(),readRanges:[]})}async*getEntriesGenerator(A={}){const e=this;let{reader:g}=e;const{config:i}=e;if(await tt(g),g.size!==Z&&g.readUint8Array||(g=new Te(await new B(g.readable).blob()),await tt(g)),g.size<L)throw new I(Jt);g.chunkSize=eA(i);const s=await(async(A,e,t)=>{const g=new E(4);var i;return i=e,wg(g).setUint32(0,i,!0),await s(22)||await s(o.min(1048582,t));async function s(e){const i=t-e,s=await gt(A,i,e);for(let A=s.length-22;A>=0;A--)if(s[A]==g[0]&&s[A+1]==g[1]&&s[A+2]==g[2]&&s[A+3]==g[3])return{offset:i+A,buffer:s.slice(A,A+22).buffer}}})(g,R,g.size);if(!s)throw Cg(wg(await gt(g,0,4)))==K?new I(_t):new I(xt);const a=wg(s);let r=Cg(a,12),n=Cg(a,16);const c=s.offset,C=Eg(a,20),l=c+L+C;let w=Eg(a,4);const h=g.lastDiskNumber||0;let u=Eg(a,6),F=Eg(a,8),Q=0,D=0;if(n==O||r==O||F==U||u==U){const A=wg(await gt(g,s.offset-20,20));if(Cg(A,0)==H){n=lg(A,8);let e=await gt(g,n,56,-1),t=wg(e);const i=s.offset-20-56;if(Cg(t,0)!=N&&n!=i){const A=n;n=i,n>A&&(Q=n-A),e=await gt(g,n,56,-1),t=wg(e)}if(Cg(t,0)!=N)throw new I(Pt);w==U&&(w=Cg(t,16)),u==U&&(u=Cg(t,20)),F==U&&(F=lg(t,32)),r==O&&(r=lg(t,40)),n-=r}}if(n<g.size||(Q=g.size-n-r-L,n=g.size-r-L),h!=w)throw new I(_t);if(0>n)throw new I(Jt);let Y=0,m=await gt(g,n,r,u),f=wg(m);if(r){const A=s.offset-r;if(Cg(f,Y)!=z&&n!=A){const e=n;n=A,n>e&&(Q+=n-e),m=await gt(g,n,r,u),f=wg(m)}}const S=s.offset-n-(g.lastDiskOffset||0);if(r==S||0>S||(r=S,m=await gt(g,n,r,u),f=wg(m)),0>n||n>=g.size)throw new I(Jt);const y=ng(e,A,"filenameEncoding"),M=ng(e,A,"commentEncoding");for(let s=0;F>s;s++){const a=new sg(g,i,e.options);if(Cg(f,Y)!=z)throw new I(Vt);og(a,f,Y+6);const r=!!a.bitFlag.languageEncodingFlag,n=Y+46,c=n+a.filenameLength,E=c+a.extraFieldLength,C=Eg(f,Y+4),l=!(C>>8),w=C>>8==3,h=m.subarray(n,c),u=Eg(f,Y+32),S=E+u,G=m.subarray(E,S),b=r,O=r,U=Cg(f,Y+38),W=l&&!(16&~Ig(f,Y+38))||w&&16384==(U>>16&61440)||h.length&&47==h.at(-1),K=w&&!!(U>>16&73),T=Cg(f,Y+42)+Q;t.assign(a,{versionMadeBy:C,msDosCompatible:l,compressedSize:0,uncompressedSize:0,commentLength:u,directory:W,offset:T,diskNumberStart:Eg(f,Y+34),internalFileAttributes:Eg(f,Y+36),externalFileAttributes:U,rawFilename:h,filenameUTF8:b,commentUTF8:O,rawExtraField:m.subarray(c,E),executable:K}),a.internalFileAttribute=a.internalFileAttributes,a.externalFileAttribute=a.externalFileAttributes;const R=ng(e,A,"decodeText")||st,N=b?Ag:y||eg,H=O?Ag:M||eg;let L=R(h,N);L===Z&&(L=st(h,N));let k=R(G,H);k===Z&&(k=st(G,H)),t.assign(a,{rawComment:G,filename:L,comment:k,directory:W||L.endsWith(x)}),D=o.max(T,D),ag(a,a,f,Y+6),a.zipCrypto=a.encrypted&&!a.extraFieldAES;const J=new Ot(a);J.getData=(A,t)=>a.getData(A,J,e.readRanges,t),J.arrayBuffer=async A=>{const t=new p,[g]=await d.all([new B(t.readable).arrayBuffer(),a.getData(t,J,e.readRanges,A)]);return g},Y=S;const{onprogress:P}=A;if(P)try{await P(s+1,F,new Ot(a))}catch{}yield J}const G=ng(e,A,"extractPrependedData"),b=ng(e,A,"extractAppendedData");return G&&(e.prependedData=D>0?await gt(g,0,D):new E),e.comment=C?await gt(g,c+L,C):new E,b&&(e.appendedData=l<g.size?await gt(g,l,g.size-l):new E),!0}async getEntries(A={}){const e=[];for await(const t of this.getEntriesGenerator(A))e.push(t);return e}async close(){}}class sg{constructor(A,e,g){t.assign(this,{reader:A,config:e,options:g})}async getData(A,e,g,i={}){const s=this,{reader:o,offset:a,diskNumberStart:r,extraFieldAES:n,extraFieldZip64:B,compressionMethod:c,config:C,bitFlag:l,signature:w,rawLastModDate:h,uncompressedSize:d,compressedSize:u}=s,{dataDescriptor:F}=l,Q=e.localDirectory={},D=wg(await gt(o,a,P,r));let Y=ng(s,i,Ut),p=ng(s,i,Wt);const m=ng(s,i,Kt);if(Y=Y&&Y.length&&Y,p=p&&p.length&&p,n&&99!=n.originalCompressionMethod)throw new I(vt);if(0!=c&&8!=c&&9!=c&&!m)throw new I(vt);if(Cg(D,0)!=W)throw new I(Xt);og(Q,D,4);const{extraFieldLength:S,filenameLength:y,lastAccessDate:M,creationDate:G}=Q;Q.rawExtraField=S?await gt(o,a+P+y,S,r):new E,ag(s,Q,D,4,!0),t.assign(e,{lastAccessDate:M,creationDate:G});const b=s.encrypted&&Q.encrypted&&!m,O=b&&!n;if(m||(e.zipCrypto=O),b){if(!O&&n.strength===Z)throw new I(qt);if(!Y&&!p)throw new I(jt)}const U=a+P+y+S,K=u,z=o.readable;t.assign(z,{diskNumberStart:r,offset:U,size:K});const R=ng(s,i,Tt),N=ng(s,i,"checkPasswordOnly");let H=ng(s,i,"checkOverlappingEntry");const L=ng(s,i,"checkOverlappingEntryOnly");L&&(H=!0);const{onstart:k,onprogress:J,onend:x}=i,V=9==c;let X=ng(s,i,Rt);V&&(X=!1);const j={options:{codecType:Be,password:Y,rawPassword:p,zipCrypto:O,encryptionStrength:n&&n.strength,signed:ng(s,i,"checkSignature")&&!m,passwordVerification:O&&(F?h>>>8&255:w>>>24&255),outputSize:m?u:d,signature:w,compressed:0!=c&&!m,encrypted:s.encrypted&&!m,useWebWorkers:ng(s,i,zt),useCompressionStream:X,transferStreams:ng(s,i,"transferStreams"),deflate64:V,checkPasswordOnly:N},config:C,streamOptions:{signal:R,size:K,onstart:k,onprogress:J,onend:x}};let q;H&&await(async({reader:A,fileEntry:e,offset:t,diskNumberStart:g,signature:i,compressedSize:s,uncompressedSize:o,dataOffset:a,dataDescriptor:r,extraFieldZip64:n,readRanges:B})=>{let c=0;if(g)for(let e=0;g>e;e++)c+=A.readers[e].size;let E=0;if(r&&(E=n?20:12),E){const t=await gt(A,a+s,E+4,g);if(Cg(wg(t),0)==T){const A=Cg(wg(t),4);let g,a;n?(g=lg(wg(t),8),a=lg(wg(t),16)):(g=Cg(wg(t),8),a=Cg(wg(t),12)),(e.encrypted&&!e.zipCrypto||A==i)&&g==s&&a==o&&(E+=4)}}const C={start:c+t,end:c+a+s+E,fileEntry:e};for(const A of B)if(A.fileEntry!=e&&C.start>=A.start&&C.start<A.end){const e=new I($t);throw e.overlappingEntry=A.fileEntry,e}B.push(C)})({reader:o,fileEntry:e,offset:a,diskNumberStart:r,signature:w,compressedSize:u,uncompressedSize:d,dataOffset:U,dataDescriptor:F||Q.bitFlag.dataDescriptor,extraFieldZip64:B||Q.extraFieldZip64,readRanges:g});try{if(!L){N&&(A=new f),A=new et(A),await tt(A,m?u:d),({writable:q}=A);const{outputSize:e}=await pe({readable:z,writable:q},j);if(A.size+=e,e!=(m?u:d))throw new I(ee)}}catch(e){if(e.outputSize!==Z&&(A.size+=e.outputSize),!N||e.message!=hA)throw e}finally{ng(s,i,Nt)||!q||q.locked||await q.getWriter().close()}return N||L?Z:A.getData?A.getData():q}}function og(A,e,g){const i=A.rawBitFlag=Eg(e,g+2),s=!(1&~i),o=Cg(e,g+6);t.assign(A,{encrypted:s,version:Eg(e,g),bitFlag:{level:(6&i)>>1,dataDescriptor:!(8&~i),languageEncodingFlag:(i&J)==J},rawLastModDate:o,lastModDate:Bg(o),filenameLength:Eg(e,g+22),extraFieldLength:Eg(e,g+24)})}function ag(A,e,g,i,s){const{rawExtraField:o}=e,n=e.extraField=new r,B=wg(new E(o));let c=0;try{for(;c<o.length;){const A=Eg(B,c),e=Eg(B,c+2);n.set(A,{type:A,data:o.slice(c+4,c+4+e)}),c+=4+e}}catch{}const C=Eg(g,i+4);t.assign(e,{signature:Cg(g,i+10),compressedSize:Cg(g,i+14),uncompressedSize:Cg(g,i+18)});const l=n.get(1);l&&(((A,e)=>{e.zip64=!0;const t=wg(A.data),g=tg.filter(([A,t])=>e[A]==t);for(let i=0,s=0;i<g.length;i++){const[o,a]=g[i];if(e[o]==a){const g=gg[a];e[o]=A[o]=g.getValue(t,s),s+=g.bytes}else if(A[o])throw new I(Zt)}})(l,e),e.extraFieldZip64=l);const w=n.get(28789);w&&(rg(w,ot,at,e,A),e.extraFieldUnicodePath=w);const h=n.get(25461);h&&(rg(h,rt,nt,e,A),e.extraFieldUnicodeComment=h);const d=n.get(39169);d?(((A,e,g)=>{const i=wg(A.data),s=Ig(i,4);t.assign(A,{vendorVersion:Ig(i,0),vendorId:Ig(i,2),strength:s,originalCompressionMethod:g,compressionMethod:Eg(i,5)}),e.compressionMethod=A.compressionMethod})(d,e,C),e.extraFieldAES=d):e.compressionMethod=C;const u=n.get(10);u&&(((A,e)=>{const g=wg(A.data);let i,s=4;try{for(;s<A.data.length&&!i;){const e=Eg(g,s),t=Eg(g,s+2);1==e&&(i=A.data.slice(s+4,s+4+t)),s+=4+t}}catch{}try{if(i&&24==i.length){const g=wg(i),s=g.getBigUint64(0,!0),o=g.getBigUint64(8,!0),a=g.getBigUint64(16,!0);t.assign(A,{rawLastModDate:s,rawLastAccessDate:o,rawCreationDate:a});const r={lastModDate:cg(s),lastAccessDate:cg(o),creationDate:cg(a)};t.assign(A,r),t.assign(e,r)}}catch{}})(u,e),e.extraFieldNTFS=u);const F=n.get(k);F&&(((A,e,t)=>{const g=wg(A.data),i=Ig(g,0),s=[],o=[];t?(1&~i||(s.push(Ct),o.push(lt)),2&~i||(s.push(wt),o.push("rawLastAccessDate")),4&~i||(s.push(ht),o.push("rawCreationDate"))):5>A.data.length||(s.push(Ct),o.push(lt));let r=1;s.forEach((t,i)=>{if(A.data.length>=r+4){const s=Cg(g,r);e[t]=A[t]=new a(1e3*s);const n=o[i];A[n]=s}r+=4})})(F,e,s),e.extraFieldExtendedTimestamp=F);const Q=n.get(6534);Q&&(e.extraFieldUSDZ=Q)}function rg(A,e,g,i,s){const o=wg(A.data),a=new oA;a.append(s[g]);const r=wg(new E(4));r.setUint32(0,a.get(),!0);const n=Cg(o,1);t.assign(A,{version:Ig(o,0),[e]:st(A.data.subarray(5)),valid:!s.bitFlag.languageEncodingFlag&&n==Cg(r,0)}),A.valid&&(i[e]=A[e],i[e+"UTF8"]=!0)}function ng(A,e,t){return e[t]===Z?A.options[t]:e[t]}function Bg(A){const e=(4294901760&A)>>16,t=65535&A;try{return new a(1980+((65024&e)>>9),((480&e)>>5)-1,31&e,(63488&t)>>11,(2016&t)>>5,2*(31&t),0)}catch{}}function cg(A){return new a(i(A/s(1e4)-s(116444736e5)))}function Ig(A,e){return A.getUint8(e)}function Eg(A,e){return A.getUint16(e,!0)}function Cg(A,e){return A.getUint32(e,!0)}function lg(A,e){return i(A.getBigUint64(e,!0))}function wg(A){return new w(A.buffer)}const hg="File already exists",dg="Zip file comment exceeds 64KB",ug="File entry comment exceeds 64KB",Fg="File entry name exceeds 64KB",Qg="Version exceeds 65535",Dg="The strength must equal 1, 2, or 3",Yg="Extra field type exceeds 65535",pg="Extra field data exceeds 64KB",mg="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",fg="Undefined uncompressed size",Sg="Zip file not empty",yg=new E([7,0,2,0,65,69,3,0,0]);let Mg=0;const Gg=[];class bg{constructor(A,e={}){const g=(A=new et(A)).availableSize!==Z&&A.availableSize>0&&A.availableSize!==1/0&&A.maxSize!==Z&&A.maxSize>0&&A.maxSize!==1/0;t.assign(this,{writer:A,addSplitZipSignature:g,options:e,config:AA(),files:new r,filenames:new n,offset:e[Lt]===Z?A.size||A.writable.size||0:e[Lt],pendingEntriesSize:0,pendingAddFileCalls:new n,bufferedWrites:0})}async prependZip(A){if(this.filenames.size)throw new I(Sg);A=new At(A);const e=new ig(A.readable),g=await e.getEntries();await e.close(),await A.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=A.size,this.filenames=new n(g.map(A=>A.filename)),this.files=new r(g.map(A=>{const{version:e,compressionMethod:g,lastModDate:i,lastAccessDate:s,creationDate:o,rawFilename:a,bitFlag:r,encrypted:n,uncompressedSize:B,compressedSize:c,diskOffset:I,diskNumber:C,zip64:l}=A;let{rawExtraFieldZip64:w,rawExtraFieldAES:h,rawExtraFieldExtendedTimestamp:d,rawExtraFieldNTFS:u,rawExtraField:F}=A;const{level:Q,languageEncodingFlag:D,dataDescriptor:Y}=r;w=w||new E,h=h||new E,d=d||new E,u=u||new E,F=F||new E;const p=Jg(w,h,d,u,F),m=l&&B>O,f=l&&c>O,{headerArray:S,headerView:y}=xg({version:e,bitFlag:Pg(Q,D,Y,n,g),compressionMethod:g,uncompressedSize:B,compressedSize:c,lastModDate:i,rawFilename:a,zip64CompressedSize:f,zip64UncompressedSize:m,extraFieldLength:p});return t.assign(A,{zip64UncompressedSize:m,zip64CompressedSize:f,zip64Offset:l&&this.offset-I>O,zip64DiskNumberStart:l&&C>U,rawExtraFieldZip64:w,rawExtraFieldAES:h,rawExtraFieldExtendedTimestamp:d,rawExtraFieldNTFS:u,rawExtraField:F,extendedTimestamp:d.length>0||u.length>0,extraFieldExtendedTimestampFlag:1+(s?2:0)+(o?4:0),headerArray:S,headerView:y}),[A.filename,A]}))}async add(A="",g,i={}){const r=this,{pendingAddFileCalls:n,config:c}=r;let l;Mg<c.maxWorkers?Mg++:await new d(A=>Gg.push(A));try{if(A=A.trim(),r.filenames.has(A))throw new I(hg);return r.filenames.add(A),l=(async(A,g,i,r)=>{g=g.trim();const n=Kg(A,r,Ft),c=Kg(A,r,pt,n?20:768),l=Kg(A,r,St);if(c>U)throw new I(Qg);let w=Kg(A,r,ut,0);!r[ft]&&g.endsWith(x)&&(r[ft]=!0),Kg(A,r,ft)?(g.endsWith(x)||(g+=x),0===w&&(w=16,n||(w|=16877<<16))):n||0!==w||(w=l?493<<16:27525120);const h=Kg(A,r,"encodeText",rA);let u=h(g);if(u===Z&&(u=rA(g)),Jg(u)>U)throw new I(Fg);const F=r[rt]||"";let Q=h(F);if(Q===Z&&(Q=rA(F)),Jg(Q)>U)throw new I(ug);const D=Kg(A,r,Yt,20);if(D>U)throw new I(Qg);const Y=Kg(A,r,Ct,new a),m=Kg(A,r,wt),f=Kg(A,r,ht),S=Kg(A,r,dt,0),y=Kg(A,r,Kt);let M,G;y||(M=Kg(A,r,Ut),G=Kg(A,r,Wt));const b=Kg(A,r,"encryptionStrength",3),z=Kg(A,r,mt),R=Kg(A,r,"extendedTimestamp",!0),N=Kg(A,r,"keepOrder",!0),H=Kg(A,r,zt),L=Kg(A,r,"bufferedWrite"),J=Kg(A,r,"dataDescriptorSignature",!1),j=Kg(A,r,Tt),q=Kg(A,r,"useUnicodeFileNames",!0),v=Kg(A,r,yt);let _=Kg(A,r,"level"),$=Kg(A,r,Rt),AA=Kg(A,r,"dataDescriptor");L&&AA===Z&&(AA=!1),(AA===Z||z)&&(AA=!0),_!==Z&&6!=_&&($=!1),$||A.config.CompressionStream!==Z||A.config.CompressionStreamZlib!==Z||(_=0);let tA=Kg(A,r,Qt);if(!z&&(M!==Z||G!==Z)&&(1>b||b>3))throw new I(Dg);let gA=new E;const iA=r[Gt];if(iA){let A=0,e=0;iA.forEach(e=>A+=4+Jg(e)),gA=new E(A),iA.forEach((A,t)=>{if(t>U)throw new I(Yg);if(Jg(A)>U)throw new I(pg);Lg(gA,new C([t]),e),Lg(gA,new C([Jg(A)]),e+2),Lg(gA,A,e+4),e+=4+Jg(A)})}let sA=0,oA=0,aA=0;if(y&&(aA=r[Bt],aA===Z))throw new I(fg);const nA=!0===tA;i&&(i=new At(i),await tt(i),y?(r.uncompressedSize=aA,sA=Tg(aA)):i.size===Z?(AA=!0,(tA||tA===Z)&&(tA=!0,aA=sA=4294967296)):(r.uncompressedSize=aA=i.size,sA=Tg(aA)));const{diskOffset:BA,diskNumber:cA,maxSize:IA}=A.writer,EA=nA||aA>O,CA=nA||sA>O,lA=nA||A.offset+A.pendingEntriesSize-BA>O,wA=Kg(A,r,Ht,!0)&&nA||cA+o.ceil(A.pendingEntriesSize/IA)>U;if(lA||EA||CA||wA){if(!1===tA||!N)throw new I(mg);tA=!0}tA=tA||!1;const hA=Kg(A,r,Dt),dA=(A=>{const{rawFilename:e,lastModDate:t,lastAccessDate:g,creationDate:i,level:a,zip64:r,zipCrypto:n,useUnicodeFileNames:B,dataDescriptor:c,directory:I,rawExtraField:C,encryptionStrength:l,extendedTimestamp:w,passThrough:h,encrypted:d,zip64UncompressedSize:u,zip64CompressedSize:F,zip64Offset:Q,zip64DiskNumberStart:D,uncompressedSize:Y,offset:p,diskNumberStart:m}=A;let{version:f,compressionMethod:S}=A;const y=!I&&(a>0||a===Z&&0!==S);let M;const G=h||!y,b=r&&(A.bufferedWrite||!u&&!F||G);if(r){let A=4;u&&(A+=8),F&&(A+=8),Q&&(A+=8),D&&(A+=4),M=new E(A);const e=kg(M);if(Rg(e,0,1),Rg(e,2,Jg(M)-4),b){const A=kg(M);let e=4;u&&(Hg(A,e,s(Y)),e+=8),F&&G&&(Hg(A,e,s(Y)),e+=8),Q&&(Hg(A,e,s(p)),e+=8),D&&(Ng(A,e,m),e+=4)}}else M=new E;let O,U,K,T;if(d&&!n){O=new E(Jg(yg)+2);const A=kg(O);Rg(A,0,39169),Lg(O,yg,2),zg(A,8,l)}else O=new E;if(w){K=new E(9+(g?4:0)+(i?4:0));const A=kg(K);Rg(A,0,k),Rg(A,2,Jg(K)-4),T=1+(g?2:0)+(i?4:0),zg(A,4,T);let e=5;Ng(A,e,o.floor(t.getTime()/1e3)),e+=4,g&&(Ng(A,e,o.floor(g.getTime()/1e3)),e+=4),i&&Ng(A,e,o.floor(i.getTime()/1e3));try{U=new E(36);const A=kg(U),e=Wg(t);Rg(A,0,10),Rg(A,2,32),Rg(A,8,1),Rg(A,10,24),Hg(A,12,e),Hg(A,20,Wg(g)||e),Hg(A,28,Wg(i)||e)}catch{U=new E}}else U=K=new E;S===Z&&(S=y?8:0),r&&(f=f>45?f:45),d&&!n&&(f=f>51?f:51,O[9]=S,S=99);const z=b?Jg(M):0,R=z+Jg(O,K,U,C),{headerArray:N,headerView:H,rawLastModDate:L}=xg({version:f,bitFlag:Pg(a,B,c,d,S),compressionMethod:S,uncompressedSize:Y,lastModDate:X>t?X:t>V?V:t,rawFilename:e,zip64CompressedSize:F,zip64UncompressedSize:u,extraFieldLength:R});let J=P;const x=new E(J+Jg(e)+R),j=kg(x);return Ng(j,0,W),Lg(x,N,4),Lg(x,e,J),J+=Jg(e),b&&Lg(x,M,J),J+=z,Lg(x,O,J),J+=Jg(O),Lg(x,K,J),J+=Jg(K),Lg(x,U,J),J+=Jg(U),Lg(x,C,J),c&&(Ng(j,18,0),Ng(j,22,0)),{localHeaderArray:x,localHeaderView:j,headerArray:N,headerView:H,lastModDate:t,rawLastModDate:L,encrypted:d,compressed:y,version:f,compressionMethod:S,extraFieldExtendedTimestampFlag:T,rawExtraFieldZip64:M,localExtraFieldZip64Length:z,rawExtraFieldExtendedTimestamp:K,rawExtraFieldNTFS:U,rawExtraFieldAES:O,extraFieldLength:R}})(r=t.assign({},r,{rawFilename:u,rawComment:Q,version:D,versionMadeBy:c,lastModDate:Y,lastAccessDate:m,creationDate:f,rawExtraField:gA,zip64:tA,zip64UncompressedSize:EA,zip64CompressedSize:CA,zip64Offset:lA,zip64DiskNumberStart:wA,password:M,rawPassword:G,level:_,useWebWorkers:H,encryptionStrength:b,extendedTimestamp:R,zipCrypto:z,bufferedWrite:L,keepOrder:N,useUnicodeFileNames:q,dataDescriptor:AA,dataDescriptorSignature:J,signal:j,msDosCompatible:n,internalFileAttribute:S,internalFileAttributes:S,externalFileAttribute:w,externalFileAttributes:w,useCompressionStream:$,passThrough:y,encrypted:!!(M&&Jg(M)||G&&Jg(G))||y&&hA,signature:r[Mt],compressionMethod:v,uncompressedSize:aA,offset:A.offset-BA,diskNumberStart:cA})),uA=(({zip64:A,dataDescriptor:e,dataDescriptorSignature:t})=>{let g,i=new E,s=0,o=A?20:12;return t&&(o+=4),e&&(i=new E(o),g=kg(i),t&&(s=4,Ng(g,0,T))),{dataDescriptorArray:i,dataDescriptorView:g,dataDescriptorOffset:s}})(r),FA=Jg(dA.localHeaderArray,uA.dataDescriptorArray);let QA;oA=FA+sA,A.options[kt]&&(oA+=oA+64),A.pendingEntriesSize+=oA;try{QA=await(async(A,g,i,o,a)=>{const{files:r,writer:n}=A,{keepOrder:c,dataDescriptor:C,signal:l}=a,{headerInfo:w}=o,h=A.options[kt],u=e.from(r.values()).pop();let F,Q,D,Y,m,f,S,y={};r.set(g,y);try{let e;c&&(e=u&&u.lock,y.lock=new d(A=>D=A)),!(a.bufferedWrite||A.writerLocked||A.bufferedWrites&&c)&&C||h?(f=n,await M()):(f=new p,f.size=0,F=!0,A.bufferedWrites++,await tt(n)),await tt(f);const{writable:Q,diskOffset:b}=n;if(A.addSplitZipSignature){delete A.addSplitZipSignature;const e=new E(4);Ng(kg(e),0,K),await Ug(n,e),A.offset+=4}h&&((A,e)=>{const{headerInfo:t}=A;let{localHeaderArray:g,extraFieldLength:i}=t,s=kg(g),o=64-(e+Jg(g))%64;4>o&&(o+=64);const a=new E(o),r=kg(a);Rg(r,0,6534),Rg(r,2,o-2);const n=g;t.localHeaderArray=g=new E(Jg(n)+o),Lg(g,n),Lg(g,a,Jg(n)),s=kg(g),Rg(s,28,i+o),A.metadataSize+=o})(o,A.offset-b);const{localHeaderView:U,localHeaderArray:W}=w;F||(await e,await G(Q));const{diskNumber:T}=n;m=!0,y.diskNumberStart=T,F?S=new B(f.readable).blob():await Ug(f,W),y=await(async(A,e,{diskNumberStart:g,lock:i},o,a,r)=>{const{headerInfo:n,dataDescriptorInfo:B,metadataSize:c}=o,{headerArray:I,headerView:E,lastModDate:C,rawLastModDate:l,encrypted:w,compressed:h,version:d,compressionMethod:u,rawExtraFieldZip64:F,localExtraFieldZip64Length:Q,rawExtraFieldExtendedTimestamp:D,extraFieldExtendedTimestampFlag:Y,rawExtraFieldNTFS:p,rawExtraFieldAES:m}=n,{dataDescriptorArray:f}=B,{rawFilename:S,lastAccessDate:y,creationDate:M,password:G,rawPassword:b,level:O,zip64:U,zip64UncompressedSize:W,zip64CompressedSize:K,zip64Offset:T,zip64DiskNumberStart:z,zipCrypto:R,dataDescriptor:N,directory:H,executable:L,versionMadeBy:k,rawComment:J,rawExtraField:x,useWebWorkers:P,onstart:V,onprogress:X,onend:j,signal:q,encryptionStrength:v,extendedTimestamp:_,msDosCompatible:$,internalFileAttributes:AA,externalFileAttributes:tA,useCompressionStream:gA,passThrough:iA}=r,sA={lock:i,versionMadeBy:k,zip64:U,directory:!!H,executable:!!L,filenameUTF8:!0,rawFilename:S,commentUTF8:!0,rawComment:J,rawExtraFieldZip64:F,localExtraFieldZip64Length:Q,rawExtraFieldExtendedTimestamp:D,rawExtraFieldNTFS:p,rawExtraFieldAES:m,rawExtraField:x,extendedTimestamp:_,msDosCompatible:$,internalFileAttributes:AA,externalFileAttributes:tA,diskNumberStart:g};let{signature:oA,uncompressedSize:aA}=r,rA=0;iA||(aA=0);const{writable:nA}=e;if(A){A.chunkSize=eA(a);const t=A.readable,g=A.size,i={options:{codecType:ne,level:O,rawPassword:b,password:G,encryptionStrength:v,zipCrypto:w&&R,passwordVerification:w&&R&&l>>8&255,signed:!iA,compressed:h&&!iA,encrypted:w&&!iA,useWebWorkers:P,useCompressionStream:gA,transferStreams:!1},config:a,streamOptions:{signal:q,size:g,onstart:V,onprogress:X,onend:j}};try{const A=await pe({readable:t,writable:nA},i);rA=A.outputSize,e.size+=rA,iA||(aA=A.inputSize,oA=A.signature)}catch(A){throw A.outputSize!==Z&&(e.size+=A.outputSize),A}}return(({signature:A,compressedSize:e,uncompressedSize:t,headerInfo:g,dataDescriptorInfo:i},{zip64:o,zipCrypto:a,dataDescriptor:r})=>{const{headerView:n,encrypted:B}=g,{dataDescriptorView:c,dataDescriptorOffset:I}=i;B&&!a||A===Z||(Ng(n,10,A),r&&Ng(c,I,A)),o?r&&(Hg(c,I+4,s(e)),Hg(c,I+12,s(t))):(Ng(n,14,e),Ng(n,18,t),r&&(Ng(c,I+4,e),Ng(c,I+8,t)))})({signature:oA,compressedSize:rA,uncompressedSize:aA,headerInfo:n,dataDescriptorInfo:B},r),N&&await Ug(e,f),t.assign(sA,{uncompressedSize:aA,compressedSize:rA,lastModDate:C,rawLastModDate:l,creationDate:M,lastAccessDate:y,encrypted:w,zipCrypto:R,size:c+rA,compressionMethod:u,version:d,headerArray:I,headerView:E,signature:oA,extraFieldExtendedTimestampFlag:Y,zip64UncompressedSize:W,zip64CompressedSize:K,zip64Offset:T,zip64DiskNumberStart:z}),sA})(i,f,y,o,A.config,a);const{zip64:z}=y;if(m=!1,r.set(g,y),y.filename=g,F){const[t]=await d.all([S,f.writable.getWriter().close(),e]);await M(),Y=!0,y.diskNumberStart=n.diskNumber,y.offset=A.offset-n.diskOffset,z&&Og(y),(({rawFilename:A,encrypted:e,zip64:t,localExtraFieldZip64Length:g,signature:i,compressedSize:o,uncompressedSize:a,offset:r,diskNumberStart:n,zip64UncompressedSize:B,zip64CompressedSize:c,zip64Offset:I,zip64DiskNumberStart:E},C,{dataDescriptor:l})=>{if(l||(e||Ng(C,14,i),t||(Ng(C,18,o),Ng(C,22,a))),t&&g){let e=P+Jg(A)+4;B&&(Hg(C,e,s(a)),e+=8),c&&(Hg(C,e,s(o)),e+=8),I&&(Hg(C,e,s(r)),e+=8),E&&Ng(C,e,n)}})(y,U,a),await G(Q),await Ug(n,W),await t.stream().pipeTo(Q,{preventClose:!0,preventAbort:!0,signal:l}),n.size+=f.size,Y=!1}else y.offset=A.offset-b,z&&Og(y);if(y.offset>O&&!z)throw new I(mg);return A.offset+=y.size,y}catch(e){if(F&&Y||!F&&m){if(A.hasCorruptedEntries=!0,e)try{e.corruptedEntry=!0}catch{}F?A.offset+=f.size:A.offset=f.size}throw r.delete(g),e}finally{F&&A.bufferedWrites--,D&&D(),Q&&Q()}async function M(){A.writerLocked=!0;const{lockWriter:e}=A;A.lockWriter=new d(e=>Q=()=>{A.writerLocked=!1,e()}),await e}async function G(A){Jg(w.localHeaderArray)>n.availableSize&&(n.availableSize=0,await Ug(A,new E))}})(A,g,i,{headerInfo:dA,dataDescriptorInfo:uA,metadataSize:FA},r)}finally{A.pendingEntriesSize-=oA}return t.assign(QA,{name:g,comment:F,extraField:iA}),new Ot(QA)})(r,A,g,i),n.add(l),await l}catch(e){throw r.filenames.delete(A),e}finally{n.delete(l);const A=Gg.shift();A?A():Mg--}}remove(A){const{filenames:e,files:t}=this;if("string"==typeof A&&(A=t.get(A)),A&&A.filename!==Z){const{filename:g}=A;if(e.has(g)&&t.has(g))return e.delete(g),t.delete(g),!0}return!1}async close(A=new E,t={}){const{pendingAddFileCalls:g,writer:i}=this,{writable:a}=i;for(;g.size;)await d.allSettled(e.from(g));return await(async(A,t,g)=>{const{files:i,writer:a}=A,{diskOffset:r}=a;let{diskNumber:n}=a,B=0,c=0,C=A.offset-r,l=i.size;for(const[,A]of i){const{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:g,rawComment:i,rawExtraFieldNTFS:s,rawExtraField:a,extendedTimestamp:r,extraFieldExtendedTimestampFlag:n,lastModDate:B}=A;let I;if(r){I=new E(9);const A=kg(I);Rg(A,0,k),Rg(A,2,5),zg(A,4,n),Ng(A,5,o.floor(B.getTime()/1e3))}else I=new E;A.rawExtraFieldExtendedTimestamp=I,c+=46+Jg(e,i,t,g,s,I,a)}const w=new E(c),h=kg(w);await tt(a);let d=0;for(const[A,t]of e.from(i.values()).entries()){const{offset:e,rawFilename:s,rawExtraFieldZip64:o,rawExtraFieldAES:r,rawExtraFieldExtendedTimestamp:n,rawExtraFieldNTFS:c,rawExtraField:I,rawComment:E,versionMadeBy:C,headerArray:l,headerView:u,zip64:F,zip64UncompressedSize:Q,zip64CompressedSize:D,zip64DiskNumberStart:Y,zip64Offset:p,internalFileAttributes:m,externalFileAttributes:f,diskNumberStart:S,uncompressedSize:y,compressedSize:M}=t,G=Jg(o,r,n,c,I);Ng(h,B,z),Rg(h,B+4,C),Q||Ng(u,18,y),D||Ng(u,14,M),Lg(w,l,B+6);let b=B+P;if(Rg(h,b,G),b+=2,Rg(h,b,Jg(E)),b+=2,Rg(h,b,F&&Y?U:S),b+=2,Rg(h,b,m),b+=2,f&&Ng(h,b,f),b+=4,Ng(h,b,F&&p?O:e),b+=4,Lg(w,s,b),b+=Jg(s),Lg(w,o,b),b+=Jg(o),Lg(w,r,b),b+=Jg(r),Lg(w,n,b),b+=Jg(n),Lg(w,c,b),b+=Jg(c),Lg(w,I,b),b+=Jg(I),Lg(w,E,b),B-d>a.availableSize&&(a.availableSize=0,await Ug(a,w.slice(d,B)),d=B),B=b,g.onprogress)try{await g.onprogress(A+1,i.size,new Ot(t))}catch{}}await Ug(a,d?w.slice(d):w);let u=a.diskNumber;const{availableSize:F}=a;L>F&&u++;let Q=Kg(A,g,Qt);if(C>O||c>O||l>U||u>U){if(!1===Q)throw new I(mg);Q=!0}const D=new E(Q?98:L),Y=kg(D);B=0,Q&&(Ng(Y,0,N),Hg(Y,4,s(44)),Rg(Y,12,45),Rg(Y,14,45),Ng(Y,16,u),Ng(Y,20,n),Hg(Y,24,s(l)),Hg(Y,32,s(l)),Hg(Y,40,s(c)),Hg(Y,48,s(C)),Ng(Y,56,H),Hg(Y,64,s(C)+s(c)),Ng(Y,72,u+1),Kg(A,g,Ht,!0)&&(u=U,n=U),l=U,C=O,c=O,B+=76),Ng(Y,B,R),Rg(Y,B+4,u),Rg(Y,B+6,n),Rg(Y,B+8,l),Rg(Y,B+10,l),Ng(Y,B+12,c),Ng(Y,B+16,C);const p=Jg(t);if(p){if(p>U)throw new I(dg);Rg(Y,B+20,p)}await Ug(a,D),p&&await Ug(a,t)})(this,A,t),Kg(this,t,Nt)||await a.getWriter().close(),i.getData?i.getData():a}}function Og({compressedSize:A,uncompressedSize:e,offset:t,diskNumberStart:g,zip64UncompressedSize:i,zip64CompressedSize:o,zip64Offset:a,zip64DiskNumberStart:r,rawExtraFieldZip64:n}){const B=kg(n);let c=4;i&&(Hg(B,c,s(e)),c+=8),o&&(Hg(B,c,s(A)),c+=8),a&&(Hg(B,c,s(t)),c+=8),r&&Ng(B,c,g)}async function Ug(A,e){const{writable:t}=A,g=t.getWriter();try{await g.ready,A.size+=Jg(e),await g.write(e)}finally{g.releaseLock()}}function Wg(A){if(A)return(s(A.getTime())+s(116444736e5))*s(1e4)}function Kg(A,e,t,g){const i=e[t]===Z?A.options[t]:e[t];return i===Z?g:i}function Tg(A){return A+5*(o.floor(A/16383)+1)}function zg(A,e,t){A.setUint8(e,t)}function Rg(A,e,t){A.setUint16(e,t,!0)}function Ng(A,e,t){A.setUint32(e,t,!0)}function Hg(A,e,t){A.setBigUint64(e,t,!0)}function Lg(A,e,t){A.set(e,t)}function kg(A){return new w(A.buffer)}function Jg(...A){let e=0;return A.forEach(A=>A&&(e+=A.length)),e}function xg({version:A,bitFlag:e,compressionMethod:t,uncompressedSize:g,compressedSize:i,lastModDate:s,rawFilename:o,zip64CompressedSize:a,zip64UncompressedSize:r,extraFieldLength:n}){const B=new E(26),c=kg(B);Rg(c,0,A),Rg(c,2,e),Rg(c,4,t);const I=new l(1),C=kg(I);Rg(C,0,(s.getHours()<<6|s.getMinutes())<<5|s.getSeconds()/2),Rg(C,2,(s.getFullYear()-1980<<4|s.getMonth()+1)<<5|s.getDate());const w=I[0];return Ng(c,6,w),(a||i!==Z)&&Ng(c,14,a?O:i),(r||g!==Z)&&Ng(c,18,r?O:g),Rg(c,22,Jg(o)),Rg(c,24,n),{headerArray:B,headerView:c,rawLastModDate:w}}function Pg(A,e,t,g,i){let s=0;return e&&(s|=J),t&&(s|=8),8!=i&&9!=i||(0>A||A>3||(s|=6),A>3&&5>=A&&(s|=4),9==A&&(s|=2)),g&&(s|=1),s}try{tA({baseURI:void 0===Q&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===Q?location.href:b&&"SCRIPT"===b.tagName.toUpperCase()&&b.src||new c("zip-legacy.min.js",Q.baseURI).href})}catch{}(A=>{let e;A({workerURI:()=>(e||(e="data:text/javascript;base64,"+(A=>{A=(A=>{const e=(A=(A+"").replace(/[^A-Za-z0-9+/=]/g,"")).length,t=[];for(let g=0;e>g;g+=4){const e=iA.indexOf(A[g])<<18|iA.indexOf(A[g+1])<<12|(63&iA.indexOf(A[g+2]))<<6|63&iA.indexOf(A[g+3]);t.push(e>>16&255),"="!==A[g+2]&&t.push(e>>8&255),"="!==A[g+3]&&t.push(255&e)}return new E(t)})(A);let e=new E(1024),t=0;for(let i=0;i<A.length;){const s=A[i++];if(128&s){const o=3+(127&s),a=A[i++]<<8|A[i++],r=t-a;g(t+o);for(let A=0;o>A;A++)e[t++]=e[r+A]}else{const o=s;g(t+o);for(let g=0;o>g&&i<A.length;g++)e[t++]=A[i++]}}return(A=>{let e="";const t=A.length;let g=0;for(;t>g+2;g+=3){const t=A[g]<<16|A[g+1]<<8|A[g+2];e+=iA[t>>18&63]+iA[t>>12&63]+iA[t>>6&63]+iA[63&t]}const i=t-g;if(1===i){const t=A[g]<<16;e+=iA[t>>18&63]+iA[t>>12&63]+"=="}else if(2===i){const t=A[g]<<16|A[g+1]<<8;e+=iA[t>>18&63]+iA[t>>12&63]+iA[t>>6&63]+"="}return e})(new E(e.buffer.slice(0,t)));function g(A){if(e.length<A){let g=2*e.length;for(;A>g;)g*=2;const i=new E(g);i.set(e.subarray(0,t)),e=i}}})("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")),e)})})(tA),A.BlobReader=Te,A.BlobWriter=ze,A.Data64URIReader=class extends We{constructor(A){super();let e=A.length;for(;"="==A.charAt(e-1);)e--;const g=A.indexOf(",")+1;t.assign(this,{dataURI:A,dataStart:g,size:o.floor(.75*(e-g))})}readUint8Array(A,e){const{dataStart:t,dataURI:g}=this,i=new E(e),s=4*o.floor(A/3),a=atob(g.substring(s+t,4*o.ceil((A+e)/3)+t)),r=A-3*o.floor(s/4);let n=0;for(let A=r;r+e>A&&A<a.length;A++)i[A-r]=a.charCodeAt(A),n++;return n<i.length?i.subarray(0,n):i}},A.Data64URIWriter=class extends Ke{constructor(A){super(),t.assign(this,{data:"data:"+(A||"")+";base64,",pending:[]})}writeUint8Array(A){const e=this;let t=0,i=e.pending;const s=e.pending.length;for(e.pending="",t=0;t<3*o.floor((s+A.length)/3)-s;t++)i+=g.fromCharCode(A[t]);for(;t<A.length;t++)e.pending+=g.fromCharCode(A[t]);i.length&&(i.length>2?e.data+=Y(i):e.pending+=i)}getData(){return this.data+Y(this.pending)}},A.ERR_BAD_FORMAT=Jt,A.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Vt,A.ERR_DUPLICATED_NAME=hg,A.ERR_ENCRYPTED=jt,A.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Pt,A.ERR_EOCDR_NOT_FOUND=xt,A.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Zt,A.ERR_HTTP_RANGE=Se,A.ERR_INVALID_COMMENT=dg,A.ERR_INVALID_ENCRYPTION_STRENGTH=Dg,A.ERR_INVALID_ENTRY_COMMENT=ug,A.ERR_INVALID_ENTRY_NAME=Fg,A.ERR_INVALID_EXTRAFIELD_DATA=pg,A.ERR_INVALID_EXTRAFIELD_TYPE=Yg,A.ERR_INVALID_PASSWORD=lA,A.ERR_INVALID_SIGNATURE=wA,A.ERR_INVALID_UNCOMPRESSED_SIZE=ee,A.ERR_INVALID_VERSION=Qg,A.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Xt,A.ERR_OVERLAPPING_ENTRY=$t,A.ERR_SPLIT_ZIP_FILE=_t,A.ERR_UNDEFINED_UNCOMPRESSED_SIZE=fg,A.ERR_UNSUPPORTED_COMPRESSION=vt,A.ERR_UNSUPPORTED_ENCRYPTION=qt,A.ERR_UNSUPPORTED_FORMAT=mg,A.ERR_ZIP_NOT_EMPTY=Sg,A.HttpRangeReader=class extends ve{constructor(A,e={}){e.useRangeHeader=!0,super(A,e)}},A.HttpReader=ve,A.Reader=We,A.SplitDataReader=_e,A.SplitDataWriter=$e,A.TextReader=class extends Te{constructor(A){super(new h([A],{type:"text/plain"}))}},A.TextWriter=class extends ze{constructor(A){super(A),t.assign(this,{encoding:A,utf8:!A||"utf-8"==A.toLowerCase()})}async getData(){const{encoding:A,utf8:e}=this,g=await super.getData();if(g.text&&e)return g.text();{const e=new FileReader;return new d((i,s)=>{t.assign(e,{onload:({target:A})=>i(A.result),onerror:()=>s(e.error)}),e.readAsText(g,A)})}}},A.Uint8ArrayReader=class extends We{constructor(A){super(),A=new E(A.buffer,A.byteOffset,A.byteLength),t.assign(this,{array:A,size:A.length})}readUint8Array(A,e){return this.array.slice(A,A+e)}},A.Uint8ArrayWriter=class extends Ke{init(A=0){t.assign(this,{offset:0,array:new E(A)}),super.init()}writeUint8Array(A){const e=this;if(e.offset+A.length>e.array.length){const t=e.array;e.array=new E(t.length+A.length),e.array.set(t)}e.array.set(A,e.offset),e.offset+=A.length}getData(){return this.array}},A.Writer=Ke,A.ZipReader=ig,A.ZipReaderStream=class{constructor(A={}){const{readable:e,writable:t}=new p,g=new ig(e,A).getEntriesGenerator();this.readable=new m({async pull(A){const{done:e,value:t}=await g.next();if(e)return A.close();const i={...t,readable:(()=>{const{readable:A,writable:e}=new p;if(t.getData)return t.getData(e),A})()};delete i.getData,A.enqueue(i)}}),this.writable=t}},A.ZipWriter=bg,A.ZipWriterStream=class{constructor(A={}){const{readable:e,writable:t}=new p;this.readable=e,this.zipWriter=new bg(t,A)}transform(A){const{readable:e,writable:t}=new p({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(A,e),{readable:this.readable,writable:t}}writable(A){const{readable:e,writable:t}=new p;return this.zipWriter.add(A,e),t}close(A,e={}){return this.zipWriter.close(A,e)}},A.configure=tA,A.getMimeType=()=>"application/octet-stream",A.terminateWorkers=async()=>{await d.allSettled(Qe.map(A=>(me(A),A.terminate())))}});