@zip.js/zip.js 2.8.35 → 2.8.37
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.
- package/deno.json +3 -2
- package/dist/zip-core.js +246 -55
- package/dist/zip-core.min.js +1 -1
- package/dist/zip-fs-core.js +198 -55
- package/dist/zip-fs-core.min.js +1 -1
- package/dist/zip-fs-native.js +249 -58
- package/dist/zip-fs-native.min.js +1 -1
- package/dist/zip-fs.js +247 -56
- package/dist/zip-fs.min.js +1 -1
- package/dist/zip-legacy.js +248 -57
- package/dist/zip-legacy.min.js +1 -1
- package/dist/zip-native.js +249 -58
- package/dist/zip-native.min.js +1 -1
- package/dist/zip-web-worker-native.js +1 -1
- package/dist/zip-web-worker.js +1 -1
- package/dist/zip.js +247 -56
- package/dist/zip.min.js +1 -1
- package/index-native.cjs +249 -58
- package/index-native.min.js +1 -1
- package/index.cjs +247 -56
- package/index.d.cts +112 -2
- package/index.d.ts +112 -2
- package/index.min.js +1 -1
- package/lib/core/codec-pool.js +19 -3
- package/lib/core/codec-registry.js +116 -0
- package/lib/core/constants.js +1 -1
- package/lib/core/io.js +47 -26
- package/lib/core/options.js +2 -0
- package/lib/core/streams/codec-stream.js +1 -1
- package/lib/core/streams/zip-entry-stream.js +22 -5
- package/lib/core/streams/zlib-js/zlib-streams.min.js +1 -1
- package/lib/core/web-worker-base.js +5 -1
- package/lib/core/web-worker-inline-native.js +1 -1
- package/lib/core/web-worker-inline-wasm.js +1 -1
- package/lib/core/zip-reader.js +6 -2
- package/lib/core/zip-writer.js +53 -18
- package/lib/zip-core-base.js +7 -0
- package/lib/zip-core-writer.js +1 -0
- package/package.json +1 -1
- package/worker-message-property-names.js +1 -1
package/dist/zip-native.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:i,BigInt:s,Math:o,Date:a,Map:c,Set:l,Response:f,URL:u,Error:d,Uint8Array:w,Uint16Array:h,Uint32Array:p,DataView:m,Blob:y,Promise:b,TextEncoder:g,TextDecoder:z,document:x,crypto:v,btoa:S,TransformStream:F,ReadableStream:R,WritableStream:D,CompressionStream:k,DecompressionStream:T,navigator:E,Worker:C}="undefined"!=typeof globalThis?globalThis:this||self;var U=void 0!==x?x.currentScript:null;const j=4294967295,A=65535,P=255,Z=67324752,M=134695760,K=M,N=33639248,I=101010256,O=101075792,L=117853008,V=22,H=20,B=21589,Y=2048,W=16384,G=2048,q=1024,X="/",Q=30,J=new a(2107,11,31),_=new a(1980,0,1),$=void 0,ee=1/0,te="undefined",ne="function",re=new w;let ie=2;try{typeof E!=te&&E.hardwareConcurrency&&(ie=E.hardwareConcurrency)}catch{}const se={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:ie,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof k!=te&&k,DecompressionStream:typeof T!=te&&T},oe=["baseURI","wasmURI","workerURI","chunkSize","maxWorkers","terminateWorkerTimeout","workerStarvationTimeout","useCompressionStream","useWebWorkers","transferStreams","CompressionStream","DecompressionStream","CompressionStreamZlib","DecompressionStreamZlib"],ae={...se};function ce(){return ae}function le(e){return o.max(e.chunkSize,64)}function fe(e){for(const t of oe){const n=e[t];n!==$&&(ae[t]=n)}}function ue(e){for(const t of oe){const n=e[t];n!==$&&(se[t]=n)}fe(e)}const de=[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],we=[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],he=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],pe=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],me=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],ye=new w(288);ye.fill(8,0,144),ye.fill(9,144,256),ye.fill(7,256,280),ye.fill(8,280,288);const be=new w(30).fill(5);function ge(e){const t=new h(16);for(const n of e)t[n]++;t[0]=0;const n=new h(17);for(let e=1;15>=e;e++)n[e+1]=n[e]+t[e];const r=new h(e.length);for(let t=0;t<e.length;t++)e[t]&&(r[n[e[t]]++]=t);return{o:t,symbols:r}}const ze="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xe=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?t>>>1^3988292384:t>>>1;xe[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){const n=xe[t-1][e];xe[t][e]=n>>>8^xe[0][255&n]}const[ve,Se,Fe,Re,De,ke,Te,Ee]=xe;class Ce{constructor(e){this.l=e||-1}append(e){let t=0|this.l;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const i=new m(e.buffer,e.byteOffset,n),s=n-8;for(;s>=r;r+=8){const e=t^i.getInt32(r,!0),n=i.getInt32(r+4,!0);t=Ee[255&e]^Te[e>>>8&255]^ke[e>>>16&255]^De[e>>>24&255]^Re[255&n]^Fe[n>>>8&255]^Se[n>>>16&255]^ve[n>>>24&255]}}for(;n>r;r++)t=t>>>8^ve[255&(t^e[r])];this.l=t}get(){return~this.l}}class Ue extends F{constructor(){let e;const t=new Ce;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new m(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function je(e){if(typeof g==te){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new g).encode(e)}function Ae(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function Pe(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function Ze(e){return new m(e.buffer,e.byteOffset,e.byteLength)}const Me={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=Me.h(n);return 32===r?e.concat(t):Me.m(t,r,0|n,e.slice(0,e.length-1))},v(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+Me.h(n)},S(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,o.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=Me.F(t,e[n-1]&2147483648>>t-1,1)),e},F:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,h:e=>o.round(e/1099511627776)||32,m(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let i=0;i<e.length;i++)r.push(n|e[i]>>>t),n=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=Me.h(i);return r.push(Me.F(t+s&31,t+s>32?n:r.pop(),1)),r}},Ke={bytes:{R(e){const t=Me.v(e)/8,n=new w(t);let r;for(let i=0;t>i;i++)3&i||(r=e[i/4]),n[i]=r>>>24,r<<=8;return n},D(e){const t=[];let n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],3&~n||(t.push(r),r=0);return 3&n&&t.push(Me.F(8*(3&n),r)),t}}},Ne=class{constructor(e){const t=this;t.blockSize=512,t.T=[1732584193,4023233417,2562383102,271733878,3285377520],t.C=[1518500249,1859775393,2400959708,3395469782],e?(t.U=e.U.slice(0),t.j=e.j.slice(0),t.A=e.A):t.reset()}reset(){const e=this;return e.U=e.T.slice(0),e.j=[],e.A=0,e}update(e){const t=this;"string"==typeof e&&(e=Ke.P.D(e));const n=t.j=Me.concat(t.j,e),r=t.A,i=t.A=r+Me.v(e);if(i>9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const s=new p(n);let o=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.Z(s.subarray(16*o,16*(o+1))),o+=1;return n.splice(0,16*o),t}M(){const e=this;let t=e.j;const n=e.U;t=Me.concat(t,[Me.F(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(o.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.Z(t.splice(0,16));return e.reset(),n}K(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}N(e,t){return t<<e|t>>>32-e}Z(e){const n=this,r=n.U,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let s=r[0],a=r[1],c=r[2],l=r[3],f=r[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.N(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.N(5,s)+n.K(e,a,c,l)+f+i[e]+n.C[o.floor(e/20)]|0;f=l,l=c,c=n.N(30,a),a=s,s=t}r[0]=r[0]+s|0,r[1]=r[1]+a|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+f|0}},Ie={importKey:e=>new Ie.I(Ke.bytes.D(e)),O(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new d("invalid params to pbkdf2");const i=1+(r>>5)<<2;let s,o,a,c,l;const f=new ArrayBuffer(i),u=new m(f);let w=0;const h=Me;for(t=Ke.bytes.D(t),l=1;(i||1)>w;l++){for(s=o=e.encrypt(h.concat(t,[l])),a=1;n>a;a++)for(o=e.encrypt(o),c=0;c<o.length;c++)s[c]^=o[c];for(a=0;(i||1)>w&&a<s.length;a++)u.setInt32(w,s[a]),w+=4}return f.slice(0,r/8)},I:class{constructor(e){const t=this,n=t.L=Ne,r=[[],[]];t.V=[new n,new n];const i=t.V[0].blockSize/32;e.length>i&&(e=(new n).update(e).M());for(let t=0;i>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.V[0].update(r[0]),t.V[1].update(r[1]),t.H=new n(t.V[0])}reset(){const e=this;e.H=new e.L(e.V[0]),e.B=!1}update(e){this.B=!0,this.H.update(e)}digest(){const e=this,t=e.H.M(),n=new e.L(e.V[1]).update(t).M();return e.reset(),n}encrypt(e){if(this.B)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Oe=typeof v!=te&&typeof v.getRandomValues==ne,Le="Invalid password",Ve="Invalid signature",He="zipjs-abort-check-password";function Be(e){if(Oe)return v.getRandomValues(e);throw new d("Crypto API not supported")}const Ye=16,We={name:"PBKDF2"},Ge=n.assign({hash:{name:"HMAC"}},We),qe=n.assign({iterations:1e3,hash:{name:"SHA-1"}},We),Xe=["deriveBits"],Qe=[8,12,16],Je=[16,24,32],_e=10,$e=[0,0,0,0],et=typeof v!=te,tt=et&&v.subtle,nt=et&&typeof tt!=te,rt=Ke.bytes,it=class{constructor(e){const t=this;t.Y=[[[],[],[],[],[]],[[],[],[],[],[]]],t.Y[0][0][0]||t.W();const n=t.Y[0][4],r=t.Y[1],i=e.length;let s,o,a,c=1;if(4!==i&&6!==i&&8!==i)throw new d("invalid aes key size");for(t.C=[o=e.slice(0),a=[]],s=i;4*i+28>s;s++){let e=o[s-1];(s%i===0||8===i&&s%i===4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],s%i===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),o[s]=o[s-i]^e}for(let e=0;s;e++,s--){const t=o[3&e?s:s-4];a[e]=4>=s||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.G(e,0)}decrypt(e){return this.G(e,1)}W(){const e=this.Y[0],t=this.Y[1],n=e[4],r=t[4],i=[],s=[];let o,a,c,l;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let f=o=0;!n[f];f^=a||1,o=s[o]||1){let s=o^o<<1^o<<2^o<<3^o<<4;s=s>>8^255&s^99,n[f]=s,r[s]=f,l=i[c=i[a=i[f]]];let u=16843009*l^65537*c^257*a^16843008*f,d=257*i[s]^16843008*s;for(let n=0;4>n;n++)e[n][f]=d=d<<24^d>>>8,t[n][s]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}G(e,t){if(4!==e.length)throw new d("invalid aes block size");const n=this.C[t],r=n.length/4-2,i=[0,0,0,0],s=this.Y[t],o=s[0],a=s[1],c=s[2],l=s[3],f=s[4];let u,w,h,p=e[0]^n[0],m=e[t?3:1]^n[1],y=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)u=o[p>>>24]^a[m>>16&255]^c[y>>8&255]^l[255&b]^n[g],w=o[m>>>24]^a[y>>16&255]^c[b>>8&255]^l[255&p]^n[g+1],h=o[y>>>24]^a[b>>16&255]^c[p>>8&255]^l[255&m]^n[g+2],b=o[b>>>24]^a[p>>16&255]^c[m>>8&255]^l[255&y]^n[g+3],g+=4,p=u,m=w,y=h;for(let e=0;4>e;e++)i[t?3&-e:e]=f[p>>>24]<<24^f[m>>16&255]<<16^f[y>>8&255]<<8^f[255&b]^n[g++],u=p,p=m,m=y,y=b,b=u;return i}},st=class{constructor(e,t){this.X=e,this.J=t,this._=t}reset(){this._=this.J}update(e){return this.$(this.X,e,this._)}ee(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}te(e){0===(e[0]=this.ee(e[0]))&&(e[1]=this.ee(e[1]))}$(e,t,n){let r;if(!(r=t.length))return[];const i=Me.v(t);for(let i=0;r>i;i+=4){this.te(n);const r=e.encrypt(n);t[i]^=r[0],t[i+1]^=r[1],t[i+2]^=r[2],t[i+3]^=r[3]}return Me.S(t,i)}},ot=Ie.I;let at=et&&nt&&typeof tt.importKey==ne,ct=et&&nt&&typeof tt.deriveBits==ne;class lt extends F{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r}){super({start(){ut(this,e,t,n)},async transform(e,t){const n=this,{password:i,strength:s,ne:o,ready:a}=n;i?(await(async(e,t,n,r)=>{const i=await wt(e,t,n,pt(r,0,Qe[t])),s=pt(r,Qe[t]);if(i[0]!=s[0]||i[1]!=s[1])throw new d(Le)})(n,s,i,pt(e,0,Qe[s]+2)),e=pt(e,Qe[s]+2),r?t.error(new d(He)):o()):await a;const c=new w(e.length-_e-(e.length-_e)%Ye);t.enqueue(dt(n,e,c,0,_e,!0))},async flush(e){const{re:t,ie:n,pending:r,ready:i}=this;if(n&&t){await i;const s=pt(r,0,r.length-_e),o=pt(r,r.length-_e);let a=re;if(s.length){const e=yt(rt,s);n.update(e);const r=t.update(e);a=mt(rt,r)}const c=pt(mt(rt,n.digest()),0,_e);let l=r.length<_e?1:0;for(let e=0;_e>e;e++)l|=c[e]^o[e];if(l)throw new d(Ve);e.enqueue(a)}}})}}class ft extends F{constructor({password:e,rawPassword:t,encryptionStrength:n}){let r;super({start(){ut(this,e,t,n)},async transform(e,t){const n=this,{password:r,strength:i,ne:s,ready:o}=n;let a=re;r?(a=await(async(e,t,n)=>{const r=Be(new w(Qe[t]));return Ae(r,await wt(e,t,n,r))})(n,i,r),s()):await o;const c=new w(a.length+e.length-e.length%Ye);c.set(a,0),t.enqueue(dt(n,e,c,a.length,0))},async flush(e){const{re:t,ie:n,pending:i,ready:s}=this;if(n&&t){await s;let o=re;if(i.length){const e=t.update(yt(rt,i));n.update(e),o=mt(rt,e)}r.signature=mt(rt,n.digest()).slice(0,_e),e.enqueue(Ae(o,r.signature))}}}),r=this}}function ut(e,t,r,i){n.assign(e,{ready:new b(t=>e.ne=t),password:ht(t,r),strength:i-1,pending:re})}function dt(e,t,n,r,i,s){const{re:o,ie:a,pending:c}=e;c.length&&(t=Ae(c,t));const l=t.length-i;let f;for(n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e})(n,r+(l-l%Ye)),f=0;l-Ye>=f;f+=Ye){const e=yt(rt,pt(t,f,f+Ye));s&&a.update(e);const i=o.update(e);s||a.update(i),n.set(mt(rt,i),f+r)}return e.pending=pt(t,f),n}async function wt(e,r,i,s){e.password=null;const o=await(async(e,t,n,r,i)=>{if(!at)return Ie.importKey(t);try{return await tt.importKey("raw",t,n,!1,i)}catch{return at=!1,Ie.importKey(t)}})(0,i,Ge,0,Xe),a=await(async(e,t,n)=>{if(!ct)return Ie.O(t,e.salt,qe.iterations,n);try{return await tt.deriveBits(e,t,n)}catch{return ct=!1,Ie.O(t,e.salt,qe.iterations,n)}})(n.assign({salt:s},qe),o,8*(2*Je[r]+2)),c=new w(a),l=yt(rt,pt(c,0,Je[r])),f=yt(rt,pt(c,Je[r],2*Je[r])),u=pt(c,2*Je[r]);return n.assign(e,{keys:{key:l,se:f,passwordVerification:u},re:new st(new it(l),t.from($e)),ie:new ot(f)}),u}function ht(e,t){return t===$?je(e):t}function pt(e,t,n){return e.subarray(t,n)}function mt(e,t){return e.R(t)}function yt(e,t){return e.D(t)}class bt extends F{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){zt(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=xt(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t.at(-1)^n.passwordVerification))throw new d(Le);e=e.subarray(12)}r?t.error(new d(He)):t.enqueue(xt(n,e))}})}}class gt extends F{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){zt(this,e,t,n)},transform(e,t){const n=this;let r,i;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=Be(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(vt(n,t),0),i=12}else r=new w(e.length),i=0;r.set(vt(n,e),i),t.enqueue(r)}})}}function zt(e,t,r,i){n.assign(e,{password:t,rawPassword:r,passwordVerification:i}),((e,t,r)=>{const i=[305419896,591751049,878082192];if(n.assign(e,{keys:i,oe:new Ce(i[0]),ae:new Ce(i[2])}),r)for(let t=0;t<r.length;t++)St(e,r[t]);else for(let n=0;n<t.length;n++)St(e,t.charCodeAt(n))})(e,t,r)}function xt(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=Ft(e)^t[r],St(e,n[r]);return n}function vt(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=Ft(e)^t[r],St(e,t[r]);return n}function St(e,t){let[,n]=e.keys;e.oe.append([t]);const r=~e.oe.get();n=Dt(o.imul(Dt(n+Rt(r)),134775813)+1),e.ae.append([n>>>24]);const i=~e.ae.get();e.keys=[r,n,i]}function Ft(e){const t=2|e.keys[2];return Rt(o.imul(t,1^t)>>>8)}function Rt(e){return 255&e}function Dt(e){return 4294967295&e}const kt="Invalid uncompressed size",Tt="Invalid compressed data";class Et extends F{constructor(e,{chunkSize:t,CompressionStreamZlib:n,CompressionStream:r}){super({});const{compressed:i,encrypted:s,useCompressionStream:o,zipCrypto:a,signed:c,level:l,deflate64:f}=e,u=this;let d,w,h,p=super.readable;const y=c&&i&&!f&&(!s||a)&&!(!o||!r);s&&!a||!c||y||(d=new Ue,p=Pt(p,d)),i&&(y?(h=new Ct,p=Zt(p,new r("gzip")),p=Pt(p,h)):p=At(p,o,{level:l,chunkSize:t},r,n,r)),s&&(a?p=Pt(p,new gt(e)):(w=new ft(e),p=Pt(p,w))),jt(u,p,()=>{let e;s&&!a&&(e=w.signature),s&&!a||!c||(e=y?h.signature:new m(d.value.buffer).getUint32(0)),u.signature=e})}}class Ct extends F{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=o.min(t,e.length);if(t-=n,!(e=e.subarray(n)).length)return}const i=n.length+e.length;if(8>=i)return void(n=Ae(n,e));const s=i-8,a=o.min(s,n.length);r.enqueue(Ae(n.subarray(0,a),e.subarray(0,s-a))),n=Ae(n.subarray(a),e.subarray(s-a))},flush(){const t=Ze(n);e.signature=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class Ut extends F{constructor(e,{chunkSize:t,DecompressionStreamZlib:n,DecompressionStream:r}){super({});const{zipCrypto:i,encrypted:s,signed:o,signature:a,compressed:c,useCompressionStream:l,deflate64:f}=e;let u,w,h=super.readable;s&&(i?h=Pt(h,new bt(e)):(w=new lt(e),h=Pt(h,w))),c&&(h=At(h,l,{chunkSize:t,deflate64:f},r,n,r),h=(e=>{const t=e.getReader();return new R({async pull(e){let n;try{n=await t.read()}catch(e){if(e&&e.message)throw e;const t=new d(Tt);throw t.cause=e,t}const{value:r,done:i}=n;i?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})})(h)),s&&!i||!o||(u=new Ue,h=Pt(h,u)),jt(this,h,()=>{if((!s||i)&&o){const e=new m(u.value.buffer);if(a!=e.getUint32(0,!1))throw new d(Ve)}})}}function jt(e,t,r){t=Pt(t,new F({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function At(e,t,n,r,i,s){const o=t&&r?r:i||s,a=n.deflate64?"deflate64-raw":"deflate-raw";let c;try{c=new o(a,n)}catch(e){if(!t)throw e;if(i)c=new i(a,n);else{if(!s)throw e;c=new s(a,n)}}return Zt(e,c)}function Pt(e,t){return e.pipeThrough(t)}function Zt(e,t){const n=t.writable.getWriter(),r=e.getReader();return(async()=>{try{for(;;){await n.ready;const e=await r.read();if(e.done){await n.close();break}await n.write(e.value)}}catch(e){await(async(e,t)=>{try{await e.abort(t)}catch{}})(n,e),await(async(e,t)=>{try{await e.cancel(t)}catch{}})(r,e)}})(),t.readable}const Mt="data",Kt="deflate",Nt="inflate";class It extends F{constructor(e,t){super({});const r=this,{codecType:i}=e;let s;i.startsWith(Kt)?s=Et:i.startsWith(Nt)&&(s=Ut),r.outputSize=0;let o=0;const a=new s(e,t),c=super.readable,l=new F({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:o})}}),f=new F({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==$&&r.outputSize>e.outputSize))throw new d(kt)},flush(){const{signature:e}=a;n.assign(r,{signature:e,inputSize:o})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(a).pipeThrough(f)})}}class Ot extends F{constructor(e){const t=[];let n=0;function r(){const r=new w(e);let i=0;for(;e>i;){const n=t[0],s=e-i;n.length>s?(r.set(n.subarray(0,s),i),t[0]=n.subarray(s),i+=s):(r.set(n,i),i+=n.length,t.shift())}return n-=e,r}1>e&&(e=65536),super({transform(i,s){for(t.push(i),n+=i.length;n>e;)s.enqueue(r())},flush(e){n&&e.enqueue(((e,t)=>{const n=new w(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n})(t,n))}})}}const Lt={type:"module"},Vt="error";let Ht,Bt,Yt,Wt,Gt=!0;try{Gt=typeof structuredClone==ne&&structuredClone(new DOMException("","AbortError")).code!==$}catch{}class qt{constructor(e,{readable:t,writable:r},{options:i,config:s,ce:o,useWebWorkers:a,transferStreams:c,workerURI:l},f){const{signal:u}=o;return n.assign(e,{le:!0,fe:(e.fe||0)+1,readable:t.pipeThrough(new Ot(le(s))).pipeThrough(new Xt(o),{signal:u}),writable:r,options:n.assign({},i),workerURI:l,transferStreams:c,terminate:()=>new b(t=>{const{ue:n,le:r}=e;n?(r?e.de=t:(n.terminate(),t()),e.we=null):t()}),he(){if(e.le){const{de:t}=e;t&&(e.de=null,e.pe=!0,e.ue.terminate(),t()),e.le=!1,f(e)}}}),Ht===$&&(Ht=typeof C!=te),(a&&Ht?_t:Jt)(e,s)}}class Xt extends F{constructor({onstart:e,onprogress:t,size:n,onend:r}){let i=0;super({async start(){e&&await Qt(e,n)},async transform(e,r){i+=e.length,t&&await Qt(t,i,n),r.enqueue(e)},async flush(){r&&await Qt(r,i)}})}}async function Qt(e,...t){try{await e(...t)}catch{}}function Jt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,he:r},i)=>{let s;try{if(!e.useCompressionStream)try{await void 0}catch{const t=e.codecType.startsWith(Kt)?i.CompressionStreamZlib:i.DecompressionStreamZlib;t&&!t.me||(e.useCompressionStream=!0)}s=new It(e,i),await t.pipeThrough(s).pipeThrough(new Ot(le(i))).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:r,inputSize:o,outputSize:a}=s;return{signature:r,inputSize:o,outputSize:a}}catch(e){throw s&&(e.outputSize=s.outputSize),e}finally{r()}})(e,t)}}function _t(e,t){const{baseURI:r,chunkSize:i}=t;let{wasmURI:s}=t;if(!e.we){let o;typeof s==ne&&(s=s());try{o=en(e.workerURI,r,e)}catch{return Ht=!1,Jt(e,t)}n.assign(e,{ue:o,pe:!1,we:{run:()=>(async(e,t)=>{let r,i;const s=new b((e,t)=>{r=e,i=t});n.assign(e,{reader:null,writer:null,ye:r,be:i,result:s});const{readable:o,options:a}=e,{writable:c,closed:l,ge:f}=(e=>{const t=new AbortController,{writable:n,readable:r}=new F,i=r.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return i.catch(()=>{}),{writable:n,closed:i,ge:()=>t.abort()}})(e.writable);let u;try{u=nn({type:"start",options:a,config:t,readable:o,writable:c},e)}catch(t){f();try{await l}catch{}throw e.he(),t}u||n.assign(e,{reader:o.getReader(),writer:c.getWriter()});try{const e=await s;return await d(),await l,e}catch(e){await d(),f();try{await l}catch{}throw e}async function d(){if(!u&&!c.locked)try{await c.getWriter().close()}catch{}}})(e,{chunkSize:i,wasmURI:s,baseURI:r})}})}return e.we}function $t(e){const{ue:t}=e;if(t)try{t.terminate()}catch{}e.we=null}function en(e,t,r,i,s=!0){let o,a,c;if(Yt===$||Bt!==e){const n=typeof e==ne;a=n?e(s):e;const l=a.startsWith("data:"),f=a.startsWith("blob:");if(l||f){i===$&&(i=!1),i&&(c=Lt);try{o=new C(a,c)}catch(s){if(f)try{u.revokeObjectURL(a)}catch{}if(n&&f)return en(e,t,r,i,!1);if(i)throw s;return en(e,t,r,!0,!1)}}else{i===$&&(i=!0),i&&(c=Lt);try{a=new u(a,t)}catch{}try{o=new C(a,c)}catch(n){if(i)throw n;return en(e,t,r,!1,s)}}Bt=e,Yt=a,Wt=c}else o=new C(Yt,Wt);return o.addEventListener("message",e=>(async({data:e},t)=>{const{type:r,value:i,messageId:s,result:o,error:a}=e,{reader:c,writer:l,ye:f,be:u,he:h,fe:p}=t,m=()=>t.fe!=p;try{if(a){const{message:e,stack:t,code:r,name:i,outputSize:s}=a,o=new d(e);n.assign(o,{stack:t,code:r,name:i,outputSize:s}),y(o)}else{if("pull"==r){const{value:e,done:n}=await c.read();m()||nn({type:Mt,value:e,done:n,messageId:s},t)}r==Mt&&(await l.ready,await l.write(new w(i)),m()||nn({type:"ack",messageId:s},t)),"close"==r&&y(null,o)}}catch(a){m()||($t(t),y(a))}function y(e,t){m()||(e?u(e):f(t),l&&l.releaseLock(),h())}})(e,r)),o.addEventListener(Vt,e=>tn(e,r)),o.addEventListener("messageerror",e=>tn(e,r)),o}function tn(e,t){e.preventDefault&&e.preventDefault();const{be:n,writer:r,he:i}=t;$t(t),n&&(n(e.error||new d(e.message||Vt)),r&&r.releaseLock(),i())}function nn(e,{ue:t,writer:n,transferStreams:r}){try{const{value:n,readable:i,writable:s}=e,o=[];if(n&&(e.value=Pe(n),o.push(e.value.buffer)),r&&Gt?(i&&o.push(i),s&&o.push(s)):e.readable=e.writable=null,o.length)try{return t.postMessage(e,o),!0}catch{Gt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}let rn=[];const sn=[];let on,an,cn=0;async function ln(e,t){const{options:n,config:r}=t,{transferStreams:s,useWebWorkers:o,useCompressionStream:a,compressed:c,signed:l,encrypted:f}=n,{workerURI:u,maxWorkers:d}=r;t.transferStreams=s||s===$&&r.transferStreams;const w=!c&&!l&&!f;return t.useWebWorkers=!w&&(o||o===$&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&u?u:$,n.useCompressionStream=a||a===$&&r.useCompressionStream,(await(async()=>{const n=rn.find(e=>!e.le);if(n)return hn(n),new qt(n,e,t,h);if(rn.length<d){const n={ze:cn};return cn++,rn.push(n),new qt(n,e,t,h)}return new b(n=>{sn.push({resolve:n,stream:e,xe:t}),an=r.workerStarvationTimeout,fn()})})()).run();function h(e){if(un(),sn.length){const[{resolve:t,stream:n,xe:r}]=sn.splice(0,1);t(new qt(e,n,r,h)),fn()}else e.ue?(hn(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;i.isFinite(r)&&r>=0&&(e.pe?e.pe=!1:e.ve=setTimeout(async()=>{rn=rn.filter(t=>t!=e);try{await e.terminate()}catch{}},r))})(e,t)):rn=rn.filter(t=>t!=e)}}function fn(){!on&&sn.length&&i.isFinite(an)&&an>=0&&(on=setTimeout(dn,an))}function un(){on&&(clearTimeout(on),on=null)}function dn(){if(on=null,sn.length){const[{resolve:e,stream:t,xe:r}]=sn.splice(0,1),i=n.assign({},r,{useWebWorkers:!1,workerURI:$});e(new qt({},t,i,wn)),fn()}}function wn(){un(),fn()}function hn(e){const{ve:t}=e;t&&(clearTimeout(t),e.ve=null)}const pn="HTTP error ",mn="HTTP Range not supported",yn="HTTP resource changed",bn="Writer iterator completed too soon",gn="Writer not initialized",zn="Content-Range",xn="Range",vn="GET",Sn="bytes",Fn="writable",Rn=Symbol();class Dn{constructor(){this.size=0}init(){this.initialized=!0}}class kn extends Dn{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=le(ce())}={}){const r=this;let i=0;return new R({async pull(s){const a=t===$?n:o.min(n,t-i),c=await nr(r,e+i,a);s.enqueue(c),i+n>t||t===$&&!c.length&&a?s.close():i+=n}})}}class Tn extends Dn{constructor(){super();const e=this,t=new D({write(t){if(!e.initialized)throw new d(gn);return e.writeUint8Array(Pe(t))}});n.defineProperty(e,Fn,{get:()=>t})}writeUint8Array(){}}let En,Cn;class Un extends kn{constructor(e){super(),n.assign(this,{blob:e,size:e.size}),Cn||(Cn=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,n=await e.read();for(;!n.done;)t+=n.value.length,n=await e.read();En=1==t}catch{En=!1}})())}createReadable(e){const{blob:t,size:n}=this,{offset:r=0,size:i=n-r}=e||{};return r||n>i?En?t.slice(r,r+i).stream():super.createReadable(e):t.stream()}async readUint8Array(e,t){const n=this,r=e+t,i=e||r<n.size?n.blob.slice(e,r):n.blob;let s=await i.arrayBuffer();return s.byteLength>t&&(s=s.slice(e,r)),new w(s)}}class jn extends Dn{constructor(e){super();const t=this,r=new F,i=[];e&&i.push(["Content-Type",e]),n.defineProperty(t,Fn,{get:()=>r.writable}),t.blob=new f(r.readable,{headers:i}).blob(),t.blob.catch(()=>{})}getData(){return this.blob}}class An extends kn{constructor(e,t){super(),Zn(this,e,t)}async init(){await Mn(this,qn,Bn),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:s}=t;if((n||r)&&s!==$){const{offset:n=0,size:r=s-n}=e||{};if(r>0&&s>n)return((e,t,n)=>{let r,s=n;return new R({async start(){const s=await qn(vn,e,Vn(e,t,n));if(206!=s.status)throw new d(mn);const o=s.headers.get(zn);if(o){const e=i(o.trim().split(/[\s-]+/)[1]);if(!i.isNaN(e)&&e!=t)throw new d(mn)}Ln(e,s),On(e,s),r=s.body.getReader()},async pull(e){const{value:t,done:n}=await r.read();if(n){if(s)throw new d(mn);e.close()}else{const n=t.length>s?t.subarray(0,s):t;s-=n.length,n.length&&e.enqueue(n),s||(e.close(),await r.cancel())}},cancel:e=>r&&r.cancel(e)})})(t,n,o.min(r,s-n))}return super.createReadable(e)}readUint8Array(e,t){return Kn(this,e,t,qn,Bn)}}class Pn extends kn{constructor(e,t){super(),Zn(this,e,t)}async init(){await Mn(this,Xn,Yn),super.init()}readUint8Array(e,t){return Kn(this,e,t,Xn,Yn)}}function Zn(e,t,r){const{preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:o,combineSizeEocd:a,checkResourceChanges:c=!0,fetch:l}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.useXHR,delete r.fetch,n.assign(e,{url:t,options:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:o,combineSizeEocd:a,checkResourceChanges:c,fetch:l})}async function Mn(e,t,n){const{url:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:o,combineSizeEocd:a}=e;if((e=>{const{baseURI:t}=ce(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(r)&&(s||o)&&(void 0===i||i)){const r=await t(vn,e,Vn(e,a?-22:void 0)),i=r.headers.get("Accept-Ranges");if(!(o||i&&i.toLowerCase()==Sn))throw new d(mn);{if(a){const t=new w(await r.arrayBuffer());206==r.status&&t.length==V&&(e.Se=t)}On(e,r);const i=Nn(r);i===$?await Gn(e,t,n):e.size=i}}else await Gn(e,t,n)}async function Kn(e,t,n,r,s){const{useRangeHeader:o,forceRangeRequests:a,Se:c,size:l,options:f}=e;if(o||a){if(c&&t==l-V&&n==V)return c;if(l>t&&0!==n){t+n>l&&(n=l-t);const s=await r(vn,e,Vn(e,t,n));if(206!=s.status)throw new d(mn);const o=s.headers.get(zn);if(o){const e=i(o.trim().split(/[\s-]+/)[1]);if(!i.isNaN(e)&&e!=t)throw new d(mn)}Ln(e,s),On(e,s);const a=new w(await s.arrayBuffer());if(a.length!=n)throw new d(mn);return a}return re}{const{data:r}=e;return r||await s(e,f),e.data.subarray(t,t+n)}}function Nn(e){const t=e.headers.get(zn);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=i(e);if(!i.isNaN(t))return t}}}function In({headers:e}){return{Fe:e.get("Etag")||$,lastModified:e.get("Last-Modified")||$}}function On(e,t){const{checkResourceChanges:n,Re:r}=e;n&&!r&&206==t.status&&(e.Re=In(t))}function Ln(e,t){const{checkResourceChanges:r,Re:i,size:s}=e;if(r){const e=Nn(t);if(e!==$&&s!==$&&e!=s)throw new d(yn);if(i){const e=In(t);if(n.entries(i).some(([t,n])=>n!==$&&e[t]!==$&&n!=e[t]))throw new d(yn)}}}function Vn(e,t=0,r=1){return n.assign({},Hn(e),{[xn]:Sn+"="+(0>t?t:t+"-"+(t+r-1))})}function Hn({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Bn(e){await Wn(e,qn)}async function Yn(e){await Wn(e,Xn)}async function Wn(e,t){const n=await t(vn,e,Hn(e));e.data=new w(await n.arrayBuffer()),e.size=e.data.length}async function Gn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,Hn(e)),s=r.headers.get("Content-Length");s&&!r.headers.get("Content-Encoding")?e.size=i(s):await n(e,e.options)}}async function qn(e,{fetch:t=fetch,options:r,url:i},s){const o=await t(i,n.assign({},r,{method:e,headers:s}));if(400>o.status)return o;throw 416==o.status?new d(mn):new d(pn+(o.statusText||o.status))}function Xn(e,{url:t},r){return new b((i,s)=>{const o=new XMLHttpRequest;if(o.addEventListener("load",()=>{if(400>o.status){const e=[];o.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),i({status:o.status,arrayBuffer:()=>o.response,headers:new c(e)})}else s(416==o.status?new d(mn):new d(pn+(o.statusText||o.status)))},!1),o.addEventListener("error",e=>s(e.detail?e.detail.error:new d("Network error")),!1),o.open(e,t),r)for(const e of n.entries(r))o.setRequestHeader(e[0],e[1]);o.responseType="arraybuffer",o.send()})}class Qn extends kn{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Pn(e,t):new An(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(e){return this.reader.createReadable(e)}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Jn extends kn{constructor(e){super(),this.De=e}async init(){const e=this,{De:t}=e;e.ke=0,await b.all(t.map(e=>tr(e))),e.Te=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}Ee(e){const{Te:t,size:n}=this,r=t.at(e);return r===$?n:r}async readUint8Array(e,t){const n=this,{De:r}=this;let i,s=0,a=e;for(;r[s]&&a>=r[s].size;)a-=r[s].size,s++;const c=r[s];if(c){const r=c.size;if(a+t>r){const s=r-a;i=Ae(await nr(c,a,s),await n.readUint8Array(e+s,t-s))}else i=await nr(c,a,t)}else i=re;return n.ke=o.max(s,n.ke),i}}class _n extends Dn{constructor(e,t=4294967295){super();const r=this;let i,s,o;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const a=new D({async write(t){if(t===Rn)return void(o&&await l());const{availableSize:n}=r;if(o)t.length<n?await c(t):(await c(t.subarray(0,n)),await l(),t.length>n&&await this.write(t.subarray(n)));else{const{value:n,done:a}=await e.next();if(a&&!n)throw new d(bn);i=n,i.size=0,i.maxSize&&(r.maxSize=i.maxSize),r.availableSize=r.maxSize,await tr(i),s=n.writable,o=s.getWriter(),await this.write(t)}},async close(){o&&(await o.ready,await f())},async abort(e){o&&await o.abort(e)}});async function c(e){const t=e.length;t&&(await o.ready,await o.write(e),i.size+=t,r.availableSize-=t)}async function l(){await f(),r.diskOffset+=i.size,r.diskNumber++,o=null,r.availableSize=r.maxSize}async function f(){await o.close()}n.defineProperty(r,Fn,{get:()=>a})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(Rn)}finally{e.releaseLock()}}}class $n{constructor(e){return t.isArray(e)&&(e=new Jn(e)),e instanceof R&&(e={readable:e}),e}}class er{constructor(e){return e.writable===$&&typeof e.next==ne&&(e=new _n(e)),e instanceof D&&(e={writable:e}),e.size===$&&(e.size=0),e}}async function tr(e,t){if(!e.init||e.initialized)return b.resolve();await e.init(t)}function nr(e,t,n){return e.readUint8Array(t,n)}const rr="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function ir(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;n<e.length;n++)t+=rr[e[n]];return t}})(e):new z(t,{ignoreBOM:!0}).decode(e)}const sr="filename",or="rawFilename",ar="comment",cr="rawComment",lr="uncompressedSize",fr="compressedSize",ur="offset",dr="diskNumberStart",wr="lastModDate",hr="rawLastModDate",pr="lastAccessDate",mr="creationDate",yr="rawCreationDate",br="internalFileAttributes",gr="externalFileAttributes",zr="msdosAttributesRaw",xr="msdosAttributes",vr="msDosCompatible",Sr="zip64",Fr="encrypted",Rr="version",Dr="versionMadeBy",kr="zipCrypto",Tr="directory",Er="executable",Cr="compressionMethod",Ur="signature",jr="extraField",Ar="unixMode",Pr="setuid",Zr="setgid",Mr="sticky",Kr=[sr,or,lr,fr,wr,hr,ar,cr,pr,mr,yr,ur,dr,br,gr,zr,xr,vr,Sr,Fr,Rr,Dr,kr,Tr,Er,Cr,Ur,jr,"extraFieldUnix","extraFieldInfoZip","uid","gid",Ar,Pr,Zr,Mr,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class Nr{constructor(e){Kr.forEach(t=>this[t]=e[t])}}const Ir="password",Or="rawPassword",Lr="passThrough",Vr="signal",Hr="checkAmbiguity",Br="useWebWorkers",Yr="useCompressionStream",Wr="transferStreams",Gr="preventClose",qr="offset",Xr="strictness",Qr="strict",Jr="tolerant",_r="File format is not recognized",$r="End of central directory not found",ei="End of Zip64 central directory locator not found",ti="Central directory header not found",ni="Local file header not found",ri="Zip64 extra field not found",ii="File contains encrypted entry",si="Encryption method not supported",oi="Compression method not supported",ai="Split zip file",ci="Overlapping entry found",li="Ambiguous archive",fi="utf-8",ui="cp437",di=[[lr,j],[fr,j],[ur,j],[dr,A]],wi={[A]:{Ce:Ni,bytes:4},[j]:{Ce:Ii,bytes:8}};class hi{constructor(e,t={}){n.assign(this,{reader:new $n(e),options:t,config:ce(),Ue:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:i}=t;if(await tr(r),r.size!==$&&r.readUint8Array||(r=new Un(await new f(r.readable).blob()),await tr(r)),r.size<V)throw new d(_r);const s=Si(Ai(t,e,Xr),Ai(t,e,Hr)),a=s==Qr,c=s!=Jr,u=((e,t)=>e!==$?e:t==Qr?0:t==Jr?1/0:A)(Ai(t,e,"maxAppendedDataSize"),s),{je:w,Ae:h}=await(async(e,t,n)=>{const{size:r}=e,i=o.min(r,65557),s={count:Fi};let a,c,l=0;for await(const[n,o,f,u,d]of Ti(e,i)){const i=Ki(n,u+20);if(d+V+i==r){const i=await Ci(e,n,o,u,d,r,s);if(i==ki){if(a||(a=Ei(f,u,d)),l++,!t||l>1)break}else i!=Di||c||(c=Ei(f,u,d))}}return a||(a=c),a||(a=await(async(e,t,n)=>{const{size:r}=e,i=o.min(r,t==1/0?r:65557+t);let s,a;for await(const[t,o,c,l,f]of Ti(e,i)){const i=Ei(c,l,f);s||(s=i);const u=await Ci(e,t,o,l,f,r,n);if(u==ki)return i;u!=Di||a||(a=i)}return a||s})(e,n,s)),{je:a,Ae:l}})(r,c,u);if(!w)throw Ni(Ze(await nr(r,0,4)))==M?new d(ai):new d($r);c&&h>1&&ji("multiple end of central directory records");const p=Ze(w);let m=Ni(p,12),y=Ni(p,16);const g=w.offset,z=Ki(p,20),x=g+V+z;r.size-x>u&&ji("appended data");let v=Ki(p,4);const S=r.ke||0;let R,D,k=Ki(p,6),T=Ki(p,10),E=0;const C=y==j||m==j||T==A||k==A;if(y!=j&&k!=A&&(y+=vi(r,k)),C){const e=w.offset<H?re:await nr(r,w.offset-H,H),t=Ze(e);if(e.length==H&&Ni(t,0)==L){y=vi(r,Ni(t,4))+Ii(t,8);let e=await nr(r,y,56),n=Ze(e);const i=w.offset-H-56;if((56>e.length||Ni(n,0)!=O)&&y!=i&&i>=0){const t=y;y=i,y>t&&(E=y-t),e=await nr(r,y,56),n=Ze(e)}if(56>e.length||Ni(n,0)!=O)throw new d(ei);D=!0,v==A?v=Ni(n,16):a&&v!=Ni(n,16)&&ji("mismatched zip64 end of central directory record"),k==A?k=Ni(n,20):a&&k!=Ni(n,20)&&ji("mismatched zip64 end of central directory record"),T==A?T=Ii(n,32):a&&T!=Ii(n,32)&&ji("mismatched zip64 end of central directory record"),m==j?m=Ii(n,40):a&&m!=Ii(n,40)&&ji("mismatched zip64 end of central directory record"),y=vi(r,k)+Ii(n,48)+E}}const U=m,Z=w.offset-(D?76:0);if(y<r.size||(E=r.size-y-m-V,y=r.size-m-V),S!=v)throw new d(ai);if(0>y)throw new d(_r);let K=0,I=await nr(r,y,m),B=Ze(I);if(m){if(4>I.length)throw new d(_r);const e=Z-m;if(y!=e&&k==v){let t=!(Ni(B,K)==N);if(t||0>e||e+4>r.size||(t=Ni(Ze(await nr(r,e,4)),0)==N),t){const t=y;y=e,y>t&&(E+=y-t),I=await nr(r,y,m),B=Ze(I)}}}const Y=Z-y;if(m==Y||0>Y||k!=v||(m=Y,I=await nr(r,y,m),B=Ze(I)),0>y||y>=r.size)throw new d(_r);R=y;const Q=Ai(t,e,"filenameEncoding"),J=Ai(t,e,"commentEncoding"),_=a?new l:$;let ee;for(let s=0;T>s;s++){const c=new mi(r,i,t.options);if(K+46>I.length||Ni(B,K)!=N)throw new d(ti);yi(c,B,K+6);const l=!!c.bitFlag.languageEncodingFlag,u=K+46,w=u+c.filenameLength,h=w+c.extraFieldLength,p=Ki(B,K+4),m=!(p>>8),y=p>>8==3,g=I.subarray(u,w),z=Ki(B,K+32),x=h+z,v=I.subarray(h,x),S=l,D=l,k=Ni(B,K+38),C=k&P,U={readOnly:!!(1&C),hidden:!!(2&C),system:!!(4&C),directory:!!(16&C),archive:!!(32&C)},j=Ni(B,K+42),Z=Ai(t,e,"decodeText")||ir,M=S?fi:Q||ui,O=D?fi:J||ui;let L=Z(g,M);L===$&&(L=ir(g,M));let V=Z(v,O);V===$&&(V=ir(v,O)),n.assign(c,{index:s,versionMadeBy:p,msDosCompatible:m,compressedSize:0,uncompressedSize:0,Pe:z,offset:j,diskNumberStart:Ki(B,K+34),internalFileAttributes:Ki(B,K+36),externalFileAttributes:k,msdosAttributesRaw:C,msdosAttributes:U,rawFilename:g,filenameUTF8:S,commentUTF8:D,rawExtraField:I.subarray(w,h),rawComment:v,filename:L,comment:V}),bi(c,c,B,K+6),c.offset+=E,R=o.min(vi(r,c.diskNumberStart)+c.offset,R),a&&(_.has(c.filename)&&(ee=!0),_.add(c.filename));const H=c.externalFileAttributes>>16&A;c.unixMode===$&&16877&H&&(c.unixMode=H);const Y=!!(c.unixMode&G),te=!!(c.unixMode&q),ne=!!(512&c.unixMode),re=c.unixMode!==$?!!(73&c.unixMode):y&&!!(73&H),ie=c.unixMode!==$&&(61440&c.unixMode)==W,se=(61440&H)==W;n.assign(c,{setuid:Y,setgid:te,sticky:ne,unixExternalUpper:H,internalFileAttribute:c.internalFileAttributes,externalFileAttribute:c.externalFileAttributes,executable:re,directory:ie||se||m&&U.directory||c.filename.endsWith(X)&&!c.uncompressedSize,zipCrypto:c.encrypted&&!c.extraFieldAES});const oe=new Nr(c);oe.getData=(e,n)=>c.getData(e,oe,t.Ue,n),oe.arrayBuffer=async e=>{const n=new F,[r]=await b.all([new f(n.readable).arrayBuffer(),c.getData(n,oe,t.Ue,e)]);return r},K=x;const{onprogress:ae}=e;if(ae)try{await ae(s+1,T,new Nr(c))}catch{}yield oe}a&&K!=U&&ji("trailing central directory data"),ee&&ji("duplicate filename"),a&&(E||T&&R>0)&&ji("prepended data");const te=Ai(t,e,"extractPrependedData"),ne=Ai(t,e,"extractAppendedData");return te&&(t.prependedData=R>0?await nr(r,0,R):re),t.comment=z?await nr(r,g+V,z):re,ne&&(t.appendedData=x<r.size?await nr(r,x,r.size-x):re),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){}}class pi{constructor(e={}){const{readable:t,writable:n}=new F,r=new hi(t,e).getEntriesGenerator();this.readable=new R({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const i={...n,readable:(()=>{const{readable:e,writable:t}=new F;if(n.getData)return(async()=>{try{await n.getData(t)}catch(e){try{await t.abort(e)}catch{}}})(),e})()};delete i.getData,e.enqueue(i)}}),this.writable=n}}class mi{constructor(e,t,r){n.assign(this,{reader:e,config:t,options:r})}async getData(e,t,n,r={}){const i=this,{reader:s,index:o,offset:a,diskNumberStart:c,extraFieldAES:l,extraFieldZip64:f,compressionMethod:u,config:w,bitFlag:h,signature:p,rawLastModDate:m,uncompressedSize:y,compressedSize:b}=i,{dataDescriptor:g}=h,z=t.localDirectory={},x=vi(s,c)+a,v=await nr(s,x,Q),S=Ze(v);let F=Ai(i,r,Ir),R=Ai(i,r,Or);const k=Ai(i,r,Lr);if(F=F&&F.length&&F,R=R&&R.length&&R,l&&99!=l.originalCompressionMethod)throw new d(oi);if(0!=u&&8!=u&&9!=u&&!k)throw new d(oi);if(v.length<Q||Ni(S,0)!=Z)throw new d(ni);yi(z,S,4);const{extraFieldLength:T,filenameLength:E}=z,C=Si(Ai(i,r,Xr),Ai(i,r,Hr))==Qr;let U=re;if(C&&(E||T)){const e=await nr(s,x+Q,E+T);U=e.subarray(0,E),z.rawExtraField=e.subarray(E)}else z.rawExtraField=T?await nr(s,x+Q+E,T):re;bi(i,z,S,4,!0),C&&((e,t,n)=>{const{rawFilename:r}=e;(n.length!=r.length||n.some((e,t)=>e!=r[t]))&&ji("mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&ji("mismatched local file header (general purpose bit flag)"),t.compressionMethod!=e.compressionMethod&&ji("mismatched local file header (compression method)"),t.bitFlag.dataDescriptor||!(t.signature||t.compressedSize||t.uncompressedSize)||t.signature==e.signature&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||ji("mismatched local file header (signature or sizes)")})(i,z,U);const{lastAccessDate:j,creationDate:A}=z;j&&(t.lastAccessDate=j),A&&(t.creationDate=A);const M=i.encrypted&&z.encrypted&&!k,N=M&&!l;if(k||(t.zipCrypto=N),M){if(!N&&l.strength===$)throw new d(si);if(!F&&!R)throw new d(ii)}const I=x+Q+E+T,O=b,L=s.createReadable({offset:I,size:O}),V=Ai(i,r,Vr),H=Ai(i,r,"checkPasswordOnly");let B=Ai(i,r,"checkOverlappingEntry");const Y=Ai(i,r,"checkOverlappingEntryOnly");Y&&(B=!0);const{onstart:W,onprogress:G,onend:q}=r,X=9==u;let J=Ai(i,r,Yr);X&&(J=!1);const _={options:{codecType:Nt,password:F,rawPassword:R,zipCrypto:N,encryptionStrength:l&&l.strength,signed:Ai(i,r,"checkSignature")&&!k,passwordVerification:N&&(g?m>>>8&P:p>>>24&P),outputSize:k?b:y,signature:p,compressed:0!=u&&!k,encrypted:M,useWebWorkers:Ai(i,r,Br),useCompressionStream:J,transferStreams:Ai(i,r,Wr),deflate64:X,checkPasswordOnly:H},config:w,ce:{signal:V,size:O,onstart:W,onprogress:G,onend:q}};let ee;B&&await(async({reader:e,Ze:t,index:n,offset:r,signature:i,compressedSize:s,uncompressedSize:o,Me:a,dataDescriptor:c,extraFieldZip64:l,Ue:f})=>{let u=0;if(c&&(u=l?20:12),u){const n=await nr(e,a+s,u+4);if(n.length==u+4&&Ni(Ze(n),0)==K){const e=Ni(Ze(n),4);let r,a;l?(r=Ii(Ze(n),8),a=Ii(Ze(n),16)):(r=Ni(Ze(n),8),a=Ni(Ze(n),12)),(t.encrypted&&!t.zipCrypto||e==i)&&r==s&&a==o&&(u+=4)}}const w={start:r,end:a+s+u,Ze:t};for(const[e,t]of f)if(e!=n&&w.start<t.end&&t.start<w.end){const e=new d(ci);throw e.Ke=t.Ze,e}f.set(n,w)})({reader:s,Ze:t,index:o,offset:x,signature:p,compressedSize:b,uncompressedSize:y,Me:I,dataDescriptor:g||z.bitFlag.dataDescriptor,extraFieldZip64:f||z.extraFieldZip64,Ue:n});try{if(!Y){H&&(e=new D),e=new er(e),await tr(e,k?b:y),({writable:ee}=e);const{outputSize:t}=await ln({readable:L,writable:ee},_);if(e.size+=t,t!=(k?b:y))throw new d(kt)}}catch(t){if(t.outputSize!==$&&(e.size+=t.outputSize),!H||t.message!=He)throw t}finally{Ai(i,r,Gr)||!ee||ee.locked||await ee.getWriter().close()}return H||Y?$:e.getData?e.getData():ee}}function yi(e,t,r){const i=e.rawBitFlag=Ki(t,r+2),s=!(1&~i),o=Ni(t,r+6);n.assign(e,{encrypted:s,version:Ki(t,r),bitFlag:{level:(6&i)>>1,dataDescriptor:!(8&~i),languageEncodingFlag:(i&Y)==Y},rawLastModDate:o,lastModDate:Pi(o),filenameLength:Ki(t,r+22),extraFieldLength:Ki(t,r+24)})}function bi(e,t,r,i,s){const{rawExtraField:o}=t,l=t.extraField=new c,f=Ze(o);let u=0;try{for(;u<o.length;){const e=Ki(f,u),t=Ki(f,u+2);l.set(e,{type:e,data:o.slice(u+4,u+4+t)}),u+=4+t}}catch{}const w=Ki(r,i+4);n.assign(t,{signature:Ni(r,i+10),compressedSize:Ni(r,i+14),uncompressedSize:Ni(r,i+18)});const h=l.get(1);h&&(((e,t)=>{t.zip64=!0;const n=Ze(e.data),r=di.filter(([e,n])=>t[e]==n),i=r.reduce((e,[,t])=>e+wi[t].bytes,0);if(e.data.length<i)throw new d(ri);for(let i=0,s=0;i<r.length;i++){const[o,a]=r[i],c=wi[a];t[o]=e[o]=c.Ce(n,s),s+=c.bytes}})(h,t),t.extraFieldZip64=h);const p=l.get(28789);p&&(gi(p,sr,or,t,e),t.extraFieldUnicodePath=p);const m=l.get(25461);m&&(gi(m,ar,cr,t,e),t.extraFieldUnicodeComment=m);const y=l.get(39169);y&&y.data.length>=7?(((e,t,r)=>{const i=Ze(e.data),s=Mi(i,4);n.assign(e,{Ne:Mi(i,0),vendorId:Mi(i,2),strength:s,originalCompressionMethod:r,compressionMethod:Ki(i,5)}),t.compressionMethod=e.compressionMethod})(y,t,w),t.extraFieldAES=y):t.compressionMethod=w;const b=l.get(10);b&&(((e,t)=>{const r=Ze(e.data);let i,s=4;try{for(;s<e.data.length&&!i;){const t=Ki(r,s),n=Ki(r,s+2);1==t&&(i=e.data.slice(s+4,s+4+n)),s+=4+n}}catch{}try{if(i&&24==i.length){const r=Ze(i),s=r.getBigUint64(0,!0),o=r.getBigUint64(8,!0),a=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:s,rawLastAccessDate:o,rawCreationDate:a});const c={lastModDate:Zi(s),lastAccessDate:Zi(o),creationDate:Zi(a)};n.assign(e,c),n.assign(t,c)}}catch{}})(b,t),t.extraFieldNTFS=b);const g=l.get(30805);if(g)zi(g,t,!1),t.extraFieldUnix=g;else{const e=l.get(30837);e&&(zi(e,t,!0),t.extraFieldInfoZip=e)}const z=l.get(B);z&&(((e,t,n)=>{if(!e.data.length)return;const r=Ze(e.data),i=Mi(r,0),s=[],o=[];n?(1&~i||(s.push(wr),o.push(hr)),2&~i||(s.push(pr),o.push("rawLastAccessDate")),4&~i||(s.push(mr),o.push(yr))):5>e.data.length||(s.push(wr),o.push(hr));let c=1;s.forEach((n,i)=>{if(e.data.length>=c+4){const s=Ni(r,c);t[n]=e[n]=new a(1e3*(0|s));const l=o[i];e[l]=s}c+=4})})(z,t,s),t.extraFieldExtendedTimestamp=z);const x=l.get(6534);x&&(t.extraFieldUSDZ=x)}function gi(e,t,r,i,s){if(5>e.data.length)return void(e.valid=!1);const o=Ze(e.data),a=new Ce;a.append(s[r]);const c=Ze(new w(4));c.setUint32(0,a.get(),!0);const l=Ni(o,1);n.assign(e,{version:Mi(o,0),[t]:ir(e.data.subarray(5)),valid:!s.bitFlag.languageEncodingFlag&&l==Ni(c,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function zi(e,t,r){try{const i=Ze(e.data);let s,o;if(r){let t=0;const r=Mi(i,t++),a=Mi(i,t++);s=xi(e.data.subarray(t,t+a)),t+=a;const c=Mi(i,t++);o=xi(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:s,gid:o})}else 4>e.data.length||(s=Ki(i,0),o=Ki(i,2),n.assign(e,{uid:s,gid:o}));s!==$&&(t.uid=s),o!==$&&(t.gid=o)}catch{}}function xi(e){const t=new w(4);return t.set(e,0),new m(t.buffer,t.byteOffset,4).getUint32(0,!0)}function vi(e,t){return e.Ee?e.Ee(t):0}function Si(e,t){return e===$?t?Qr:"balanced":e}const Fi=64,Ri=0,Di=1,ki=2;async function*Ti(e,t){const n=e.size-t,r=await nr(e,n,t),i=Ze(r);for(let e=r.length-V;e>=0;e--)Ni(i,e)==I&&(yield[i,n,r,e,n+e])}function Ei(e,t,n){return{offset:n,buffer:e.slice(t,t+V).buffer}}async function Ci(e,t,n,r,i,s,o){const a=Ki(t,r+10),c=Ni(t,r+12),l=Ni(t,r+16);if(a==A||c==j||l==j)return await Ui(e,t,n,i-H,s,o)==L?ki:Ri;if(!a&&!c)return Di;const f=Ki(t,r+6);for(const r of[i-c,vi(e,f)+l])if(await Ui(e,t,n,r,s,o)==N)return ki;return Ri}async function Ui(e,t,n,r,i,s){return 0>r||r+4>i?$:n>r?s.count>0?(s.count--,Ni(Ze(await nr(e,r,4)),0)):$:Ni(t,r-n)}function ji(e){const t=new d(li);throw t.reason=e,t}function Ai(e,t,n){return t[n]===$?e.options[n]:t[n]}function Pi(e){const t=(4294901760&e)>>16,n=e&A;try{return new a(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch{}}function Zi(e){return new a(i(e/s(1e4)-s(116444736e5)))}function Mi(e,t){return e.getUint8(t)}function Ki(e,t){return e.getUint16(t,!0)}function Ni(e,t){return e.getUint32(t,!0)}function Ii(e,t){return i(e.getBigUint64(t,!0))}var Oi=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:li,ERR_BAD_FORMAT:_r,ERR_CENTRAL_DIRECTORY_NOT_FOUND:ti,ERR_ENCRYPTED:ii,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:ei,ERR_EOCDR_NOT_FOUND:$r,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:ri,ERR_INVALID_COMPRESSED_DATA:Tt,ERR_INVALID_PASSWORD:Le,ERR_INVALID_SIGNATURE:Ve,ERR_INVALID_UNCOMPRESSED_SIZE:kt,ERR_LOCAL_FILE_HEADER_NOT_FOUND:ni,ERR_OVERLAPPING_ENTRY:ci,ERR_SPLIT_ZIP_FILE:ai,ERR_UNSUPPORTED_COMPRESSION:oi,ERR_UNSUPPORTED_ENCRYPTION:si,ZipReader:hi,ZipReaderStream:pi});const Li="File already exists",Vi="Zip file comment exceeds 64KB",Hi="File entry comment exceeds 64KB",Bi="File entry name exceeds 64KB",Yi="Version exceeds 65535",Wi="The strength must equal 1, 2, or 3",Gi="Extra field type exceeds 65535",qi="Extra field data exceeds 64KB",Xi=-2147483648,Qi=2147483647,Ji="Zip64 is not supported (set the 'zip64' option to 'true')",_i="Undefined uncompressed size",$i="Undefined reader",es="Zip file not empty",ts=new w([7,0,2,0,65,69,3,0,0]),ns="infozip",rs="unix";let is=0;const ss=[];class os{constructor(e,t={}){e=new er(e);const{availableSize:r=ee,maxSize:i=ee}=e,s=r>0&&r!==ee&&i>0&&i!==ee;n.assign(this,{writer:e,Ie:s,options:t,config:ce(),files:new c,Oe:new l,offset:t[qr]===$?e.size||e.writable.size||0:t[qr],Le:t[qr]===$?0:t[qr]-(e.size||e.writable.size||0),Ve:new l,He:0,Be:$})}async prependZip(e){if(this.Oe.size)throw new d(es);e=new $n(e),await tr(e);const{ZipReader:t}=await b.resolve().then(()=>Oi),r=new t(e.readable),i=await r.getEntries();await r.close(),await tr(this.writer),await e.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=e.size,this.Oe=new l(i.map(e=>e.filename)),this.files=new c(i.map(e=>{const{version:t,rawLastModDate:r,lastAccessDate:i,creationDate:s,rawFilename:o,bitFlag:a,encrypted:c,uncompressedSize:l,compressedSize:f,zip64:u}=e;let{compressionMethod:d,Ye:w,We:h,Ge:p,qe:m,Xe:y,rawExtraField:b}=e;const{level:g,languageEncodingFlag:z,dataDescriptor:x}=a;w=w||re,h=h||re,p=p||re,m=m||re,y=y||re,b=b||re,e.extraFieldAES&&(d=99);const v=Ds(w,h,p,m,y,b),S=u&&l>=j,F=u&&f>=j,R=-7&Ts(g,z,x,c,d)|g<<1,{Qe:D,Je:k}=ks({version:t,bitFlag:R,compressionMethod:d,uncompressedSize:l,compressedSize:f,rawLastModDate:r,rawFilename:o,_e:F,$e:S,extraFieldLength:v}),{signature:T}=e;return T!==$&&Ss(k,10,T),n.assign(e,{$e:S,_e:F,et:u&&e.offset>=j,diskNumberStart:0,nt:!1,Ye:w,We:h,Ge:p,qe:m,Xe:y,rawExtraField:b,extendedTimestamp:p.length>0||m.length>0,it:1+(i?2:0)+(s?4:0),Qe:D,Je:k}),[e.filename,e]}))}async add(e="",t,r={}){const i=this;r=n.assign({},r);const{Ve:o,config:c}=i;let l,f;is<c.maxWorkers?is++:await new b(e=>ss.push(e));try{if(e=e.trim(),zs(i,r,Tr)&&!e.endsWith(X)&&(e+=X),i.Oe.has(e))throw new d(Li);return i.Oe.add(e),f=!0,l=(async(e,t,r,i)=>{const o=((e,t,n)=>{t=t.trim();let r=zs(e,n,vr),i=zs(e,n,Dr,r?20:768);const s=zs(e,n,Er),o=zs(e,n,"uid"),a=zs(e,n,"gid");let c=zs(e,n,Ar),l=zs(e,n,"unixExtraFieldType"),f=zs(e,n,Pr),u=zs(e,n,Zr),w=zs(e,n,Mr);if(o!==$&&(0>o||o>j))throw new d("Invalid uid (must be integer 0..2^32-1)");if(a!==$&&(0>a||a>j))throw new d("Invalid gid (must be integer 0..2^32-1)");if(c!==$&&(0>c||c>A))throw new d("Invalid UNIX mode (must be integer 0..65535)");if(l!==$&&l!==ns&&l!==rs)throw new d("Invalid unixExtraFieldType (must be 'infozip' or 'unix')");if(l===rs&&(o!==$&&o>A||a!==$&&a>A))throw new d("uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)");l!==$||o===$&&a===$||(l=ns);let h=zs(e,n,zr),p=zs(e,n,xr);const m=h!==$||p!==$;if(o!==$||a!==$||c!==$||l?(r=!1,i=i&A|768):m&&(r=!0,i&=P),h!==$&&(0>h||h>P))throw new d("Invalid msdosAttributesRaw (must be integer 0..255)");if(p&&"object"!=typeof p)throw new d("Invalid msdosAttributes (must be an object with boolean flags)");if(i>A)throw new d(Yi);let y=zs(e,n,gr,0);!n[Tr]&&t.endsWith(X)&&(n[Tr]=!0);const b=zs(e,n,Tr);let g;return b?(t.endsWith(X)||(t+=X),0===y&&(y=16,r||(y|=16877<<16))):r||0!==y||(y=s?493<<16:27525120),r||(g=y>>16&A,c=c===$?g:c&A,f?c|=G:f=!!(c&G),u?c|=q:u=!!(c&q),w?c|=512:w=!!(512&c),b&&(c|=W),y=(c&A)<<16|y&P),({msdosAttributesRaw:h,msdosAttributes:p}=((e,t)=>{if(e!==$)e&=P;else if(t!==$){const{readOnly:n,hidden:r,system:i,directory:s,archive:o}=t;let a=0;n&&(a|=1),r&&(a|=2),i&&(a|=4),s&&(a|=16),o&&(a|=32),e=a&P}return t===$&&(t={readOnly:!!(1&e),hidden:!!(2&e),system:!!(4&e),directory:!!(16&e),archive:!!(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}})(h,p)),m&&(y=y&j|h&P),{name:t,st:{versionMadeBy:i,msDosCompatible:r,externalFileAttributes:y,unixExternalUpper:g,uid:o,gid:a,unixMode:c,unixExtraFieldType:l,setuid:f,setgid:u,sticky:w,msdosAttributesRaw:h,msdosAttributes:p}}})(e,t,i);({name:t}=o);const c=((e,t,n)=>{const r=zs(e,n,"encodeText",je);let i=r(t);if(i===$&&(i=je(t)),Ds(i)>A)throw new d(Bi);const s=n[ar]||"";let o=r(s);if(o===$&&(o=je(s)),Ds(o)>A)throw new d(Hi);const c=zs(e,n,Rr,20);if(c>A)throw new d(Yi);const l=zs(e,n,wr,new a),f=zs(e,n,pr),u=zs(e,n,mr),h=zs(e,n,br,0),p=zs(e,n,Lr);let m,y;p||(m=zs(e,n,Ir),y=zs(e,n,Or));const b=zs(e,n,"encryptionStrength",3),g=zs(e,n,kr),z=zs(e,n,"extendedTimestamp",!0),x=zs(e,n,"keepOrder",!0),v=zs(e,n,Br),S=zs(e,n,Wr),F=zs(e,n,"bufferedWrite"),R=zs(e,n,"createTempStream"),D=zs(e,n,"dataDescriptorSignature",!0),k=zs(e,n,Vr),T=zs(e,n,"useUnicodeFileNames",!0),E=zs(e,n,Cr);if(!p&&E!==$&&0!==E&&8!==E)throw new d("Compression method not supported");let C=zs(e,n,"level"),U=zs(e,n,Yr),j=zs(e,n,"dataDescriptor");F&&j===$&&(j=!1),(j===$||g)&&(j=!0),C!==$&&6!=C&&(U=!1),U||e.config.CompressionStream!==$||e.config.CompressionStreamZlib!==$||(C=0);const P=zs(e,n,Sr);if(!g&&(m!==$||y!==$)&&(1>b||b>3))throw new d(Wi);let Z=re;const M=n[jr];if(M){let e=0,t=0;M.forEach(t=>e+=4+Ds(t)),Z=new w(e);const n=Ze(Z);M.forEach((e,r)=>{if(r>A)throw new d(Gi);if(Ds(e)>A)throw new d(qi);vs(n,t,r),vs(n,t+2,Ds(e)),Rs(Z,e,t+4),t+=4+Ds(e)})}return{comment:s,st:{rawFilename:i,rawComment:o,version:c,lastModDate:l,lastAccessDate:f,creationDate:u,internalFileAttributes:h,passThrough:p,password:m,rawPassword:y,encryptionStrength:b,zipCrypto:g,extendedTimestamp:z,keepOrder:x,useWebWorkers:v,transferStreams:S,bufferedWrite:F,createTempStream:R,dataDescriptorSignature:D,signal:k,useUnicodeFileNames:T,compressionMethod:E,level:C,useCompressionStream:U,dataDescriptor:j,zip64:P,rawExtraField:Z}}})(e,t,i),{comment:l}=c,f=i[jr];let u;e.files.set(t,$);try{const a=await(async(e,t,{st:n},r)=>{const{passThrough:i,zipCrypto:s,password:o,rawPassword:a,encryptionStrength:c}=n;let{dataDescriptor:l,zip64:f,level:u,compressionMethod:w}=n,h=0,p=0;if(i){if(!t)throw new d($i);if(p=r[lr],p===$)throw new d(_i)}const m=!0===f,y=zs(e,r,Fr),b=!!t&&(!!(o&&Ds(o)||a&&Ds(a))||i&&y);t||(u=0,w=0);const g=b?s?12:16+4*c:0;t&&(t=new $n(t),await tr(t),i?(r.uncompressedSize=p,h=xs(p)+g):t.size===$?(l=!0,(f||f===$)&&(f=!0,p=h=4294967296)):(r.uncompressedSize=p=t.size,h=xs(p)+g));const z=m||p>=j,x=m||h>=j;if(z||x){if(!1===f)throw new d(Ji);f=!0}return f=f||!1,{reader:t,st:{dataDescriptor:l,zip64:f,$e:z,_e:x,uncompressedSize:p,level:u,compressionMethod:w,encrypted:b}}})(e,r,c,i);({reader:r}=a);const l=ds(e.writer),f=us(e.writer),h=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:i,level:s,zip64:o,zipCrypto:a,useUnicodeFileNames:c,dataDescriptor:l,directory:f,rawExtraField:u,encryptionStrength:w,extendedTimestamp:h,passThrough:p,encrypted:m,$e:y,_e:b,uncompressedSize:g}=e;let{version:z,compressionMethod:x}=e;const v=!f&&(x===$?s===$||s>0:0!==x);let S;const F=p||!v,R=o&&(e.bufferedWrite||!l||!y&&!b||F),D=R||o&&l&&(y||b);if(o&&(y||b)){const e=20,t=fs(e);if(t.uint16(1),t.uint16(e-4),S=t.array,R&&(t.ot(g),F)){const e=m?a?12:16+4*w:0;t.ot(p?0:g+e)}}else S=re;let k,T,E,C,U;if(m&&!a){const e=fs(Ds(ts)+2);e.uint16(39169),e.bytes(ts),k=e.array,k[8]=w}else k=re;if(h){const e=ys(n);if(bs(e)){const t=9+(r?4:0)+(i?4:0),n=fs(t);C=1+(r?2:0)+(i?4:0),n.uint16(B),n.uint16(t-4),n.uint8(C),n.uint32(e),r&&n.uint32(gs(ys(r))),i&&n.uint32(gs(ys(i))),E=n.array}else E=re;try{const e=ms(n),t=fs(36);t.uint16(10),t.uint16(32),t.ct(4),t.uint16(1),t.uint16(24),t.ot(e),t.ot(ms(r)||e),t.ot(ms(i)||e),T=t.array}catch{T=re}}else T=E=re;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=ns||t===$&&n===$)if(r!=rs||t===$&&n===$)U=re;else{const e=fs(8);e.uint16(30805),e.uint16(4),e.uint16((t===$?0:t)&A),e.uint16((n===$?0:n)&A),U=e.array}else{const e=ls(t),r=ls(n),i=3+e.length+r.length,s=fs(4+i);s.uint16(30837),s.uint16(i),s.uint8(1),s.uint8(e.length),s.bytes(e),s.uint8(r.length),s.bytes(r),U=s.array}}catch{U=re}x===$&&(x=v?8:0),o&&(z=z>45?z:45),m&&!a&&(z=z>51?z:51,k[9]=x,x=99);const j=D?Ds(S):0,P=j+Ds(k,E,T,U,u);if(P>A)throw new d(qi);const{Qe:M,Je:K,rawLastModDate:N}=ks({version:z,bitFlag:Ts(s,c,l,m,x),compressionMethod:x,uncompressedSize:g,lastModDate:_>n?_:n>J?J:n,rawFilename:t,_e:b,$e:y,extraFieldLength:P}),I=fs(Q+Ds(t)+P),O=I.array,L=Ze(O);return I.uint32(Z),I.bytes(M),I.bytes(t),D&&I.bytes(S),I.bytes(k),I.bytes(E),I.bytes(T),I.bytes(U),I.bytes(u),l&&(b||Ss(L,18,0),y||Ss(L,22,0)),{lt:O,ft:L,Qe:M,Je:K,lastModDate:n,rawLastModDate:N,encrypted:m,compressed:v,version:z,compressionMethod:x,it:C,Ye:re,ut:j,Ge:E,qe:T,Xe:U,We:k,extraFieldLength:P}})(i=n.assign({},i,o.st,c.st,a.st,{internalFileAttribute:c.st.internalFileAttributes,externalFileAttribute:o.st.externalFileAttributes,signature:i[Ur],offset:e.offset-l,diskNumberStart:f})),p=(({zip64:e,dataDescriptor:t,dataDescriptorSignature:n})=>{let r,i=re,s=0,o=e?20:12;return n&&(o+=4),t&&(i=new w(o),r=Ze(i),n&&(s=4,Ss(r,0,K))),{wt:i,ht:r,yt:s}})(i),m=Ds(h.lt,p.wt);u=await(async(e,t,r,i,o)=>{const{files:a,writer:c}=e,{keepOrder:l,dataDescriptor:f,signal:u}=o,{bt:h}=i,p=e.options.usdz,m=e.Be;let y,g,z,x,v,S,R,k={},T=0;a.set(t,k),e.Be=k;try{let g;l&&(g=m&&m.lock,k.lock=new b(e=>z=e)),o.bufferedWrite||!l||e.gt||e.He||!f?(y=!0,e.He++,R=o.createTempStream?await o.createTempStream():new F($,$,{highWaterMark:ee}),R.size=0,await tr(c)):(R=c,await E()),await tr(R);const U=ds(c);if(e.Ie){delete e.Ie;const t=new w(4);Ss(Ze(t),0,M),await ps(c,t),e.offset+=4}p&&!y&&cs(i,e.offset-U);const{lt:A}=h;y||(await g,await C());const Z=us(c),K=hs(e,c);if(k.diskNumberStart=Z,y||(v=!0,S=c.size,await ps(R,A)),k=await(async(e,t,{diskNumberStart:r,lock:i},o,a,c)=>{const{bt:l,zt:f,xt:u}=o,{Qe:w,Je:h,lastModDate:p,rawLastModDate:m,encrypted:y,compressed:b,version:g,compressionMethod:z,Ye:x,ut:v,Ge:S,it:F,qe:R,Xe:D,We:k}=l,{wt:T}=f,{rawFilename:E,lastAccessDate:C,creationDate:U,password:A,rawPassword:Z,level:M,zip64:K,$e:N,_e:I,zipCrypto:O,dataDescriptor:L,directory:V,executable:H,versionMadeBy:B,rawComment:Y,rawExtraField:W,useWebWorkers:G,transferStreams:q,onstart:X,onprogress:Q,onend:J,signal:_,encryptionStrength:ee,extendedTimestamp:te,msDosCompatible:ne,internalFileAttributes:re,externalFileAttributes:ie,uid:se,gid:oe,unixMode:ae,setuid:ce,setgid:le,sticky:fe,unixExternalUpper:ue,msdosAttributesRaw:de,msdosAttributes:we,useCompressionStream:he,passThrough:pe}=c,me={lock:i,versionMadeBy:B,zip64:K,directory:!!V,executable:!!H,filenameUTF8:!0,rawFilename:E,commentUTF8:!0,rawComment:Y,Ye:x,ut:v,Ge:S,qe:R,Xe:D,We:k,rawExtraField:W,extendedTimestamp:te,msDosCompatible:ne,internalFileAttributes:re,externalFileAttributes:ie,diskNumberStart:r,uid:se,gid:oe,unixMode:ae,setuid:ce,setgid:le,sticky:fe,unixExternalUpper:ue,msdosAttributesRaw:de,msdosAttributes:we};let{signature:ye,uncompressedSize:be}=c,ge=0;pe||(be=0);const{writable:ze}=t;if(e){const n=e.createReadable?e.createReadable():e.readable,r=e.size,i={options:{codecType:Kt,level:M,rawPassword:Z,password:A,encryptionStrength:ee,zipCrypto:y&&O,passwordVerification:y&&O&&m>>8&P,signed:!pe,compressed:b&&!pe,encrypted:y&&!pe,useWebWorkers:G,useCompressionStream:he,transferStreams:q},config:a,ce:{signal:_,size:r,onstart:X,onprogress:Q,onend:J}};try{const e=await ln({readable:n,writable:ze},i);if(ge=e.outputSize,t.size+=ge,pe||(be=e.inputSize,ye=e.signature),!I&&ge>=j||!N&&be>=j)throw new d(Ji)}catch(e){throw e.outputSize!==$&&(t.size+=e.outputSize),e}}return(({signature:e,compressedSize:t,uncompressedSize:n,bt:r,zt:i},{zip64:o,zipCrypto:a,dataDescriptor:c})=>{const{Je:l,encrypted:f}=r,{ht:u,yt:d}=i;f&&!a||e===$||(Ss(l,10,e),c&&Ss(u,d,e)),o?c&&(Fs(u,d+4,s(t)),Fs(u,d+12,s(n))):(Ss(l,14,t),Ss(l,18,n),c&&(Ss(u,d+4,t),Ss(u,d+8,n)))})({signature:ye,compressedSize:ge,uncompressedSize:be,bt:l,zt:f},c),L&&await ps(t,T),n.assign(me,{uncompressedSize:be,compressedSize:ge,lastModDate:p,rawLastModDate:m,creationDate:U,lastAccessDate:C,encrypted:y,zipCrypto:O,size:u+ge,compressionMethod:z,version:g,Qe:w,Je:h,signature:ye,it:F,$e:N,_e:I}),me})(r,R,k,i,e.config,o),y||(v=!1),a.set(t,k),k.filename=t,y){if(await b.all([R.writable.getWriter().close(),g]),await E(),x=!0,S=c.size,await C(),k.diskNumberStart=us(c),k.offset=hs(e,c),p){const t=i.xt;cs(i,e.offset-ds(c)),k.size+=i.xt-t}(({rawFilename:e,encrypted:t,zip64:n,ut:r,signature:i,compressedSize:o,uncompressedSize:a,$e:c,_e:l},f,{dataDescriptor:u})=>{if(u||(t||Ss(f,14,i),l||Ss(f,18,o),c||Ss(f,22,a)),n&&r){const t=Q+Ds(e)+4;Fs(f,t,s(a)),Fs(f,t+8,s(o))}})(k,h.ft,o),await ps(c,h.lt),await(async(e,t,n)=>{const r=t.writable.getWriter();try{await e.pipeTo(new D({async write(e){var t;await r.ready,await r.write(e),t=Ds(e),T+=t}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{r.releaseLock()}})(R.readable,c,u),c.size+=R.size,x=!1}else k.diskNumberStart=Z,k.offset=K;return e.offset+=k.size,k}catch(n){if(x||v){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-S,y&&(e.offset+=T)}throw a.delete(t),n}finally{if(y&&e.He--,z&&z(),g&&g(),y&&R&&R.dispose)try{await R.dispose()}catch{}}async function E(){e.gt=!0;const{vt:t}=e;e.vt=new b(t=>g=()=>{e.gt=!1,t()}),await t}async function C(){ws(c,Ds(h.lt))&&await c.closeDisk()}})(e,t,r,{bt:h,zt:p,xt:m},i)}catch(n){throw e.files.delete(t),n}return n.assign(u,{name:t,comment:l,extraField:f}),new Nr(u)})(i,e,t,r),o.add(l),await l}catch(t){throw f&&i.Oe.delete(e),t}finally{o.delete(l);const e=ss.shift();e?e():is--}}remove(e){const{Oe:t,files:n}=this;if("string"==typeof e&&(e=n.get(e)),e&&e.filename!==$){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=re,n={}){const{Ve:r,writer:i}=this,{writable:o}=i;if(Ds(e)>A)throw new d(Vi);for(;r.size;)await b.allSettled(t.from(r));return await(async(e,n,r)=>{const i=(e=>{let t=0;for(const[,n]of e){const{rawFilename:e,We:r,rawComment:i,qe:s,Xe:o,rawExtraField:a,extendedTimestamp:c,it:l,lastModDate:f,$e:u,_e:w,uncompressedSize:h,compressedSize:p}=n,m=n.offset>=j,y=n.diskNumberStart>=A;let b,g;if(m||y||u||w){const e=4+(u?8:0)+(w?8:0)+(m?8:0)+(y?4:0),t=fs(e);t.uint16(1),t.uint16(e-4),u&&t.ot(h),w&&t.ot(p),m&&t.ot(n.offset),y&&t.uint32(n.diskNumberStart),b=t.array}else b=re;n.Ye=b,n.et=m,n.nt=y;const z=ys(f);if(c&&bs(z)){const e=fs(9);e.uint16(B),e.uint16(5),e.uint8(l),e.uint32(z),g=e.array}else g=re;n.Ge=g;const x=Ds(b,r,s,o,g,a);if(x>A)throw new d(qi);t+=46+Ds(e,i)+x}return t})(e.files),o=await(async(e,n,r)=>{const{files:i,writer:s}=e,o=new w(n);await tr(s);let a=0,c=0,l=us(s),f=ds(s);for(const[e,n]of t.from(i.values()).entries()){const{offset:t,rawFilename:u,Ye:d,We:w,Ge:h,qe:p,Xe:m,rawExtraField:y,rawComment:b,versionMadeBy:g,Qe:z,Je:x,$e:v,_e:S,nt:F,et:R,internalFileAttributes:D,externalFileAttributes:k,diskNumberStart:T,uncompressedSize:E,compressedSize:C}=n,U=Ds(d,w,h,p,m,y),P=46+Ds(u,b)+U;ws(s,a+P-c)&&(await ps(s,o.slice(c,a)),c=a,await s.closeDisk()),0==e&&(l=us(s),f=ds(s)),v||Ss(x,18,E),S||Ss(x,14,C),(R||F)&&45>n.version&&vs(x,0,45);const Z=fs(P);if(Z.uint32(N),Z.uint16(g),Z.bytes(z.subarray(0,24)),Z.uint16(U),Z.uint16(Ds(b)),Z.uint16(F?A:T),Z.uint16(D),Z.uint32(k),Z.uint32(R?j:t),Z.bytes(u),Z.bytes(d),Z.bytes(w),Z.bytes(h),Z.bytes(p),Z.bytes(m),Z.bytes(y),Z.bytes(b),Rs(o,Z.array,a),a+=P,r.onprogress)try{await r.onprogress(e+1,i.size,new Nr(n))}catch{}}return await ps(s,c?o.slice(c):o),{diskNumber:l,diskOffset:f}})(e,i,r);await(async(e,t,n,r)=>{const{writer:i}=e,{St:o}=r;let{Ft:a}=r,c=e.files.size,l=o.diskNumber,f=hs(e,o),u=us(i);ws(i,V)&&u++;let w=zs(e,n,Sr);if(!(j>f&&j>a&&A>c&&A>u)){if(!1===w)throw new d(Ji);w=!0}const h=Ds(t);if(h>A)throw new d(Vi);const p=fs(w?98:V);ws(i,Ds(p.array)+h)&&await i.closeDisk(),u=us(i),w&&(p.uint32(O),p.ot(44),p.uint16(45),p.uint16(45),p.uint32(u),p.uint32(l),p.ot(c),p.ot(c),p.ot(a),p.ot(f),p.uint32(L),p.uint32(u),p.ot(s(hs(e,i))+s(a)),p.uint32(u+1),zs(e,n,"supportZip64SplitFile",!0)&&(u=A,l=A),c=A,f=j,a=j),p.uint32(I),p.uint16(u),p.uint16(l),p.uint16(c),p.uint16(c),p.uint32(a),p.uint32(f),p.uint16(h),await ps(i,p.array),h&&await ps(i,t)})(e,n,r,{St:o,Ft:i})})(this,e,n),zs(this,n,Gr)||await o.getWriter().close(),i.getData?i.getData():o}}function as(e,t,n){e.Ve.add(t),t.catch(e=>{try{n(e)}catch{}})}function cs(e,t){const{bt:n}=e;let{lt:r,extraFieldLength:i}=n,s=64-(t+Ds(r))%64;4>s&&(s+=64);const o=new w(s),a=Ze(o);vs(a,0,6534),vs(a,2,s-4);const c=r;n.lt=r=new w(Ds(c)+s),Rs(r,c),Rs(r,o,Ds(c));const l=Ze(r);vs(l,28,i+s),n.ft=l,e.xt+=s}function ls(e){if(e===$)return re;{const t=new w(4);Ze(t).setUint32(0,e,!0);let n=4;for(;n>1&&0===t[n-1];)n--;return t.subarray(0,n)}}function fs(e){const t=new w(e),n=Ze(t);let r=0;return{array:t,uint8:e=>{((e,t,n)=>{e.setUint8(t,n)})(n,r,e),r+=1},uint16:e=>{vs(n,r,e),r+=2},uint32:e=>{Ss(n,r,e),r+=4},ot:e=>{Fs(n,r,s(e)),r+=8},bytes:e=>{Rs(t,e,r),r+=Ds(e)},ct:e=>r+=e}}function us(e){const{diskNumber:t=0}=e;return t}function ds(e){const{diskOffset:t=0}=e;return t}function ws(e,t){const{availableSize:n=ee}=e;return t>n}function hs(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.Le:0)}async function ps(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=Ds(t),await r.write(t)}finally{r.releaseLock()}}function ms(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function ys(e){return o.floor(e.getTime()/1e3)}function bs(e){return e>=Xi&&Qi>=e}function gs(e){return o.min(Qi,o.max(Xi,e))}function zs(e,t,n,r){const i=t[n]===$?e.options[n]:t[n];return i===$?r:i}function xs(e){return e+5*(o.floor(e/16383)+1)}function vs(e,t,n){e.setUint16(t,n,!0)}function Ss(e,t,n){e.setUint32(t,n,!0)}function Fs(e,t,n){e.setBigUint64(t,n,!0)}function Rs(e,t,n){e.set(t,n)}function Ds(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function ks({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:i,lastModDate:s,rawLastModDate:o,rawFilename:a,_e:c,$e:l,extraFieldLength:f}){const u=fs(26),d=u.array,w=Ze(d);if(u.uint16(e),u.uint16(t),u.uint16(n),o===$){const e=new p(1),t=Ze(e);vs(t,0,(s.getHours()<<6|s.getMinutes())<<5|s.getSeconds()/2),vs(t,2,(s.getFullYear()-1980<<4|s.getMonth()+1)<<5|s.getDate()),o=e[0]}return u.uint32(o),u.ct(4),c||i!==$?u.uint32(c?j:i):u.ct(4),l||r!==$?u.uint32(l?j:r):u.ct(4),u.uint16(Ds(a)),u.uint16(f),{Qe:d,Je:w,rawLastModDate:o}}function Ts(e,t,n,r,i){let s=0;return t&&(s|=Y),n&&(s|=8),8!=i&&9!=i||(0>e||e>3||(s|=6),e>3&&5>=e&&(s|=4),9==e&&(s|=2)),r&&(s|=1),s}const Es=1048576,Cs=".zip.js-temp",Us=1048576,js=1048576,As=".zip.js-temp";try{ue({baseURI:void 0===x&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===x?location.href:U&&"SCRIPT"===U.tagName.toUpperCase()&&U.src||new u("zip-native.min.js",x.baseURI).href})}catch{}var{Uint8Array:Ps,Uint16Array:Zs,Int32Array:Ms,TransformStream:Ks,Math:Ns,Error:Is,Array:Os}=globalThis,Ls=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],Vs=new Ps(0),Hs=new Zs(0),Bs=[];for(let e=0;6>e;e++)Bs.push(e,0==e?8:4);Bs.push(0,1);var Ys=[];for(let e=0;14>e;e++)Ys.push(e,0==e?4:2);var Ws=new Zs([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]),Gs=new Zs([0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0]);function qs(e,t,n,r,i){if(0==i)return;let s=e instanceof Ps?e:new Ps(e.buffer,e.byteOffset,e.byteLength),o=n instanceof Ps?n.subarray(r,r+i):new Ps(n.buffer,n.byteOffset+r,i);s.set(o,t)}function Xs(e,t,n){0!=n&&(e instanceof Ps?e:new Ps(e.buffer,e.byteOffset,e.byteLength)).fill(0,t,t+n)}function Qs(){return{Rt:Vs,Dt:0,kt:0,Tt:0,Et:Vs,Ct:0,Ut:0,jt:0,At:"",t:0,i:0,Pt:0,Zt:void 0}}function Js(e,t){let n=1<<t;return{o:e,u:new Ps(n),Mt:n,Kt:t,k:0,Nt:0,It:0,p:0}}function _s(e){let t=[];for(let n=0;n<e.length;n+=2){let r=e[n],i=e[n+1];for(let e=0;i>e;e++)t.push(r)}return new Zs(t)}var $s=class{constructor(e,t){this.Ot=e,this.Lt=t,this.Vt=0}},eo=class{constructor(e,t,n,r,i){this.Ht=e,this.q=t,this.Bt=n,this.Yt=r,this.Wt=i}};function to(e){return Eo[-6>e||e>2?9:2-e]||""}function no(e,t){try{e.At=to(t)}catch(n){e.At="zlib error "+r(t)+" ("+n+")"}return t}function ro(e,t){let n=e>>>0,r=0;for(let e=0;t>e;e++)r=r<<1|1&n,n>>>=1;return r}function io(e,t){e.Gt[e.qt++]=t}function so(e,t){io(e,255&t),io(e,t>>>8&255)}function oo(e,t,n){let r=255&n,i=65535&t,s=e.Xt+e.Qt;return e.Gt[s]=255&i,e.Gt[s+1]=i>>>8&255,e.Gt[s+2]=r,e.Qt+=3,i=i-1&65535,e._t[Ko[r]+xo+1].Jt++,e.$t[lo(i)].Jt++,e.Qt==e.en}function ao(e,t){let n=255&t,r=e.Xt+e.Qt;return e.Gt[r]=0,e.Gt[r+1]=0,e.Gt[r+2]=n,e.Qt+=3,e._t[n].Jt++,e.Qt==e.en}function co(e){return e.Mt-go}function lo(e){return 256>e?No[e]:No[256+(e>>7)]}function fo(e){let t=mo+7,n=1<<t,r=(1<<t)-1,i=Ns.floor((t+yo-1)/yo),s=1<<8+mo;return{...Js(e,15),o:e,tn:42,nn:0,rn:void 0,sn:32767,an:t,cn:n,ln:r,fn:i,un:new Zs(32768),dn:new Zs(n),wn:s,Gt:new Ps(32768),hn:0,pn:32768,qt:0,yn:0,bn:0,gn:0,zn:0,xn:0,vn:-2,Sn:0,Fn:0,Rn:0,Dn:0,kn:0,Tn:0,En:0,Cn:0,Un:0,jn:0,An:0,Pn:0,Zn:0,Mn:0,Kn:new Ms(2*vo+1),Nn:new Ps(2*vo+1),In:new Zs(Do+1),Qt:0,en:0,On:Vs,Xt:0,Ln:0,Vn:0,Hn:8,Bn:32768,Yn:0,Wn:0,Gn:0,_t:new Os(Ro).fill(0).map(()=>({Jt:0,qn:0,Xn:0,Qn:0})),$t:new Os(2*So+1).fill(0).map(()=>({Jt:0,qn:0,Xn:0,Qn:0})),Jn:new Os(2*Fo+1).fill(0).map(()=>({Jt:0,qn:0,Xn:0,Qn:0})),_n:ho(),$n:ho(),er:ho()}}function uo(e){let t=[];for(let n=0;n<e.length;n+=2){let r=e[n],i=e[n+1],s=wo();s.qn=r,s.Qn=i,t.push(s)}return t}function wo(){return{Jt:0,qn:0,Xn:0,Qn:0}}function ho(){return new $s([],((e,t)=>new eo(null,t,0,0,0))(0,Vs))}function po(e){let{code:t,length:n}=(e=>{let t=Ns.max(...e),n=new Os(t+1).fill(0);for(let t of e)t>0&&n[t]++;let r=new Os(e.length).fill(0),i=new Os(t+1).fill(0),s=0;for(let e=1;t>=e;e++)s=s+n[e-1]<<1,i[e]=s;for(let t=0;t<e.length;t++){let n=e[t];0!=n&&(r[t]=i[n]++)}return{code:r,length:e}})(e),r=new Zs(2*e.length),i=0;for(let s=0;s<e.length;s++){let e=n[s]||0,o=t[s]||0;r[i++]=e?ro(o,e):0,r[i++]=e}return new Zs(r)}var mo=8,yo=3,bo=258,go=bo+yo+1,zo=bo,xo=256,vo=xo+1+29,So=30,Fo=19,Ro=2*vo+1,Do=15,ko=256,To=-1,Eo=["need dictionary","stream end","","file error","stream error","data error","insufficient memory","buffer error",""],Co=_s(Bs),Uo=_s(Ys),jo=new Zs(19);jo[16]=2,jo[17]=3,jo[18]=7;var Ao=po((()=>{let e=new Os(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})()),Po=po(new Os(30).fill(5)),Zo=uo(Ao),Mo=uo(Po),Ko=((e,t)=>{let n=0;for(let r=0;r<e.length;r++){let i=t[r]?1<<t[r]:1,s=e[r]+i-1;s>n&&(n=s)}258>n&&(n=258);let r=new Ps(n+1);for(let i=0;n>=i;i++)for(let n=0;n<e.length;n++){let s=t[n]?1<<t[n]:1,o=e[n];if(i>=o&&o+s-1>=i){r[i]=n;break}}let i=0;for(let n=0;n<e.length-1;n++){let r=t[n]?1<<t[n]:1,s=e[n]+r-1;s>i&&(i=s)}return r[i]=e.length-1,r})(Gs,Co),No=(e=>{let t=new Ps(512),n=e.length-1;for(let r=0;256>r;r++)t[r]=r>n?e[n]:e[r];for(let r=256;n>=r;r++){let n=r>>7;t[256+(n>255?255:n)]=e[r]}for(let e=257;512>e;e++)0==t[e]&&(t[e]=t[e-1]);return t})(((e,t)=>{let n=0;for(let r=0;r<e.length;r++){let i=t[r]?1<<t[r]:1,s=e[r]+i-1;s>n&&(n=s)}let r=new Ps(n+1);for(let i=0;n>=i;i++)for(let n=0;n<e.length;n++){let s=t[n]?1<<t[n]:1,o=e[n];if(i>=o&&o+s-1>=i){r[i]=n;break}}return r})(Ws,Uo));function Io(e,t,n){if(void 0===t||void 0===n)return 1;let r=65535&e,i=e>>>16&65535,s=0;for(;n>0;){let e=n>2e3?2e3:n;n-=e;do{r=r+t[s++]|0,i=i+r|0}while(--e);r%=65521,i%=65521}return(i<<16|r)>>>0}var Oo=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?3988292384^t>>>1:t>>>1;Oo[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){let n=Oo[t-1][e];Oo[t][e]=n>>>8^Oo[0][255&n]}var[Lo,Vo,Ho,Bo,Yo,Wo,Go,qo]=Oo;function Xo(e=0,t,n){if(!t)return 0;void 0===n&&(n=t.length);let r=0|~e,i=0;if((n=Ns.min(n,t.length))>=8){let e=new m(t.buffer,t.byteOffset,n),s=n-8;for(;s>=i;i+=8){let t=r^e.getInt32(i,!0),n=e.getInt32(i+4,!0);r=qo[255&t]^Go[t>>>8&255]^Wo[t>>>16&255]^Yo[t>>>24&255]^Bo[255&n]^Ho[n>>>8&255]^Vo[n>>>16&255]^Lo[n>>>24&255]}}for(;n>i;i++)r=r>>>8^Lo[255&(r^t[i])];return(4294967295^r)>>>0}function Qo(e){16==e.p?(so(e,e.It),e.It=0,e.p=0):e.p>=8&&(io(e,e.It),e.It>>=8,e.p-=8)}function Jo(e){e.p>8?so(e,e.It):e.p>0&&io(e,e.It),e.Ln=1+(e.p-1&7),e.It=0,e.p=0}function _o(e,t,n){e.p>16-n?(e.It=65535&(e.It|t<<e.p),so(e,e.It),e.It=t>>16-e.p&65535,e.p+=n-16):(e.It=65535&(e.It|t<<e.p),e.p+=n)}function $o(e){for(let t=0;t<e._t.length;t++)e._t[t].Jt=0;for(let t=0;t<e.$t.length;t++)e.$t[t].Jt=0;for(let t=0;t<e.Jn.length;t++)e.Jn[t].Jt=0;e._t[ko].Jt=1,e.bn=e.gn=0,e.Qt=e.zn=0}function ea(e,t,n){return n=e.Kn[1],e.Kn[1]=e.Kn[e.Wn--],na(e,t,1),n}function ta(e,t,n,r){return e[t].Jt<e[n].Jt||e[t].Jt==e[n].Jt&&r[t]<=r[n]}function na(e,t,n){let r=e.Kn[n],i=n<<1;for(;i<=e.Wn&&(i<e.Wn&&ta(t,e.Kn[i+1],e.Kn[i],e.Nn)&&i++,!ta(t,r,e.Kn[i],e.Nn));)e.Kn[n]=e.Kn[i],n=i,i<<=1;e.Kn[n]=r}function ra(e,t){let n,r,i,s=t.Ot,o=t.Lt.Ht,a=t.Lt.Yt,c=-1;for(e.Wn=0,e.Gn=Ro,n=0;a>n;n++)0!=s[n].Jt?(e.Kn[++e.Wn]=c=n,e.Nn[n]=0):s[n].Qn=0;for(;2>e.Wn;)i=e.Kn[++e.Wn]=2>c?++c:0,s[i].Jt=1,e.Nn[i]=0,e.bn--,o&&(e.gn-=o[i].Qn);for(t.Vt=c,n=Ns.floor(e.Wn/2);n>=1;n--)na(e,s,n);i=a;do{n=ea(e,s,n),r=e.Kn[1],e.Kn[--e.Gn]=n,e.Kn[--e.Gn]=r,s[i].Jt=s[n].Jt+s[r].Jt,e.Nn[i]=(e.Nn[n]<e.Nn[r]?e.Nn[r]:e.Nn[n])+1,s[n].Xn=s[r].Xn=i,e.Kn[1]=i++,na(e,s,1)}while(e.Wn>=2);e.Kn[--e.Gn]=e.Kn[1],((e,t)=>{let n,r,i,s,o,a,c=t.Ot,l=t.Vt,f=t.Lt.Ht,u=t.Lt.q,d=t.Lt.Bt,w=t.Lt.Wt,h=0;for(s=0;Do>=s;s++)e.In[s]=0;for(c[e.Kn[e.Gn]].Qn=0,n=e.Gn+1;Ro>n;n++)r=e.Kn[n],s=c[c[r].Xn].Qn+1,s>w&&(s=w,h++),c[r].Qn=s,l>=r&&(e.In[s]++,o=0,r>=d&&(o=u[r-d]),a=c[r].Jt,e.bn+=a*(s+o),f&&(e.gn+=a*(f[r].Qn+o)));if(0!=h){do{for(s=w-1;0==e.In[s];)s--;e.In[s]--,e.In[s+1]+=2,e.In[w]--,h-=2}while(h>0);for(s=w;0!=s;s--)for(r=e.In[s];0!=r;)i=e.Kn[--n],l>=i&&(c[i].Qn!=s&&(e.bn+=(s-c[i].Qn)*c[i].Jt,c[i].Qn=s),r--)}})(e,t),((e,t,n)=>{let r,i,s=[],o=0;for(r=1;Do>=r;r++)o=o+n[r-1]<<1,s[r]=o;for(i=0;t>=i;i++){let t=e[i].Qn;0!=t&&(e[i].qn=ro(s[t]++,t))}})(s,t.Vt,e.In)}function ia(e,t,n){let r,i,s=-1,o=t[0].Qn,a=0,c=7,l=4;for(0==o&&(c=138,l=3),t[n+1].Qn=65535,r=0;n>=r;r++)i=o,o=t[r+1].Qn,(++a>=c||i!=o)&&(l>a?e.Jn[i].Jt+=a:0!=i?(i!=s&&e.Jn[i].Jt++,e.Jn[16].Jt++):a>10?e.Jn[18].Jt++:e.Jn[17].Jt++,a=0,s=i,0==o?(c=138,l=3):i==o?(c=6,l=3):(c=7,l=4))}function sa(e,t,n){let r,i=-1,s=t[0].Qn,o=0,a=7,c=4;0==s&&(a=138,c=3);for(let l=0;n>=l;l++)if(r=s,s=t[l+1].Qn,++o>=a||r!=s){if(c>o)do{_o(e,e.Jn[r].qn,e.Jn[r].Qn)}while(0!=--o);else 0!=r?(r!=i&&(_o(e,e.Jn[r].qn,e.Jn[r].Qn),o--),_o(e,e.Jn[16].qn,e.Jn[16].Qn),_o(e,o-3,2)):o>10?(_o(e,e.Jn[18].qn,e.Jn[18].Qn),_o(e,o-11,7)):(_o(e,e.Jn[17].qn,e.Jn[17].Qn),_o(e,o-3,3));o=0,i=r,0==s?(a=138,c=3):r==s?(a=6,c=3):(a=7,c=4)}}function oa(e,t,n,r,i=0){_o(e,0+r,3),Jo(e),so(e,n),so(e,~n),n&&t&&qs(e.Gt,e.qt,t,i,n),e.qt+=n}function aa(e,t,n){let r,i,s,o,a=0;if(0!=e.Qt)do{r=255&e.On[a],r+=(255&e.On[a+1])<<8,i=e.On[a+2],a+=3,0==r?_o(e,t[i].qn,t[i].Qn):(s=Ko[i],_o(e,t[s+xo+1].qn,t[s+xo+1].Qn),o=Co[s],0!=o&&(i-=Gs[s],_o(e,i,o)),r--,s=lo(r),_o(e,n[s].qn,n[s].Qn),o=Uo[s],0!=o&&(r-=Ws[s],_o(e,r,o)))}while(a<e.Qt);_o(e,t[ko].qn,t[ko].Qn)}var ca=[{nr:ka,rr:0,ir:0,sr:0,ar:0},{nr:Ta,rr:4,ir:4,sr:8,ar:4},{nr:Ta,rr:4,ir:5,sr:16,ar:8},{nr:Ta,rr:4,ir:6,sr:32,ar:32},{nr:Ea,rr:4,ir:4,sr:16,ar:16},{nr:Ea,rr:8,ir:16,sr:32,ar:32},{nr:Ea,rr:8,ir:16,sr:128,ar:128},{nr:Ea,rr:8,ir:32,sr:128,ar:256},{nr:Ea,rr:32,ir:128,sr:258,ar:1024},{nr:Ea,rr:32,ir:258,sr:258,ar:4096}];function la(e){return 2*e-(e>4?9:0)}function fa(e,t,n){return((t<<e.fn^n)&e.ln)>>>0}function ua(e,t){e.Cn=fa(e,e.Cn,e.u[t+(yo-1)]);let n=e.un[t&e.sn]=e.dn[e.Cn];return e.dn[e.Cn]=t,n}function da(e){e.dn[e.cn-1]=0,Xs(e.dn,0,(e.cn-1)*e.dn.BYTES_PER_ELEMENT)}function wa(e){let t,n,r=e.Mt;for(t=e.cn;t>0;)t--,n=e.dn[t],e.dn[t]=r>n?0:n-r;for(t=r;t>0;)t--,n=e.un[t],e.un[t]=r>n?0:n-r}function ha(e,t,n,r){let i=e.kt;return i>r&&(i=r),0==i?0:(e.kt-=i,qs(t,n,e.Rt,e.Dt,i),1==e.Zt.nn?e.i=Io(e.i,new Ps(t.buffer,t.byteOffset+n,i),i):2==e.Zt.nn&&(e.i=Xo(e.i,new Ps(t.buffer,t.byteOffset+n,i),i)),e.Dt+=i,e.Tt+=i,i)}function pa(e){let t,n,r=e.Mt;do{if(n=e.Bn-e.Rn-e.Fn,0==n&&0==e.Fn&&0==e.Rn?n=r:-1==n&&n--,e.Fn>=r+co(e)&&(qs(e.u,0,e.u,r,r-n),e.Yn-=r,e.Fn-=r,e.Sn-=r,e.xn>e.Fn&&(e.xn=e.Fn),wa(e),n+=r),0==e.o.kt)break;if(t=ha(e.o,e.u,e.Fn+e.Rn,n),e.Rn+=t,e.Rn+e.xn>=yo){let t=e.Fn-e.xn;for(e.Cn=e.u[t],e.Cn=fa(e,e.Cn,e.u[t+1]);e.xn&&(e.Cn=fa(e,e.Cn,e.u[t+yo-1]),e.un[t&e.sn]=e.dn[e.Cn],e.dn[e.Cn]=t,t++,e.xn--,e.Rn+e.xn>=yo););}}while(e.Rn<go&&0!=e.o.kt);if(e.k<e.Bn){let t,n=e.Fn+e.Rn;e.k<n?(t=e.Bn-n,t>zo&&(t=zo),Xs(e.u,n,t),e.k=n+t):e.k<n+zo&&(t=n+zo-e.k,t>e.Bn-e.k&&(t=e.Bn-e.k),Xs(e.u,e.k,t),e.k+=t)}}function ma(e){if(null==e)return!0;let t=e.Zt;return!t||t.o!=e||42!=t.tn&&57!=t.tn&&69!=t.tn&&73!=t.tn&&91!=t.tn&&103!=t.tn&&113!=t.tn&&666!=t.tn}function ya(e,t){io(e,t>>8),io(e,255&t)}function ba(e){let t,n=e.Zt;(e=>{Qo(e)})(n),t=n.qt,t>e.Ut&&(t=e.Ut),0!=t&&(qs(e.Et,e.Ct,n.Gt,n.yn,t),e.Ct+=t,n.yn+=t,e.jt+=t,e.Ut-=t,n.qt-=t,0==n.qt&&(n.yn=n.hn))}function ga(e,t){let n=e.Zt;n.rn&&n.rn.cr&&(e.i=Xo(e.i,new Ps(n.Gt.buffer,n.hn+t,n.qt-t),n.qt-t))}function za(e,t){let n,r=e.Zt;if(ma(e)||t>5||0>t)return no(e,-2);if(!e.Et||0!=e.kt&&!e.Rt||666==r.tn&&4!=t)return no(e,-2);if(0==e.Ut)return no(e,-5);if(n=r.vn,r.vn=t,0!=r.qt){if(ba(e),0==e.Ut)return r.vn=To,0}else if(0==e.kt&&la(t)<=la(n)&&4!=t)return no(e,-5);if(666==r.tn&&0!=e.kt)return no(e,-5);if(42==r.tn&&0==r.nn&&(r.tn=113),42==r.tn){let t,n=8+(r.Kt-8<<4)<<8;if(t=r.jn>=2||2>r.Un?0:6>r.Un?1:6==r.Un?2:3,n|=t<<6,0!=r.Fn&&(n|=32),n+=31-n%31,ya(r,n),0!=r.Fn&&(ya(r,e.i>>16),ya(r,65535&e.i)),e.i=1,r.tn=113,ba(e),0!=r.qt)return r.vn=To,0}if(57==r.tn)if(e.i=Xo(0),io(r,31),io(r,139),io(r,8),r.rn)io(r,(r.rn.lr?1:0)+(r.rn.cr?2:0)+(null==r.rn.ur?0:4)+(null==r.rn.dr?0:8)+(null==r.rn.wr?0:16)),io(r,255&r.rn.pr),io(r,r.rn.pr>>>8&255),io(r,r.rn.pr>>>16&255),io(r,r.rn.pr>>>24&255),io(r,9==r.Un?2:r.jn>=2||2>r.Un?4:0),io(r,255&r.rn.mr),null!=r.rn.ur&&(io(r,255&r.rn.yr),io(r,r.rn.yr>>>8&255)),r.rn.cr&&(e.i=Xo(e.i,r.Gt,r.qt)),r.Vn=0,r.tn=69;else if(io(r,0),io(r,0),io(r,0),io(r,0),io(r,0),io(r,9==r.Un?2:r.jn>=2||2>r.Un?4:0),io(r,255),r.tn=113,ba(e),0!=r.qt)return r.vn=To,0;if(69==r.tn){if(r.rn&&null!=r.rn.ur){let t=r.qt,n=(65535&r.rn.yr)-r.Vn;for(;r.qt+n>r.pn;){let i=r.pn-r.qt;if(qs(r.Gt,r.qt,r.rn.ur,r.Vn,i),r.qt=r.pn,ga(e,t),r.Vn+=i,ba(e),0!=r.qt)return r.vn=To,0;t=0,n-=i}qs(r.Gt,r.qt,r.rn.ur,r.Vn,n),r.qt+=n,ga(e,t),r.Vn=0}r.tn=73}if(73==r.tn){if(r.rn&&r.rn.dr&&r.rn.dr.length){let t,n=r.qt;do{if(r.qt==r.pn){if(ga(e,n),ba(e),0!=r.qt)return r.vn=To,0;n=0}t=r.rn.dr[r.Vn++],io(r,t)}while(0!=t);ga(e,n),r.Vn=0}r.tn=91}if(91==r.tn){if(r.rn&&r.rn.wr&&r.rn.wr.length){let t,n=r.qt;do{if(r.qt==r.pn){if(ga(e,n),ba(e),0!=r.qt)return r.vn=To,0;n=0}t=r.rn.wr[r.Vn++],io(r,t)}while(0!=t);ga(e,n)}r.tn=103}if(103==r.tn){if(r.rn&&r.rn.cr){if(r.qt+2>r.pn&&(ba(e),0!=r.qt))return r.vn=To,0;io(r,255&e.i),io(r,e.i>>>8&255),e.i=Xo(0)}if(r.tn=113,ba(e),0!=r.qt)return r.vn=To,0}if(0!=e.kt||0!=r.Rn||0!=t&&666!=r.tn){let n=0==r.Un?ka(r,t):2==r.jn?((e,t)=>{let n=!1;for(;;){if(0==e.Rn&&(pa(e),0==e.Rn)){if(0==t)return 0;break}if(e.Dn=0,n=ao(e,e.u[e.Fn]),e.Rn--,e.Fn++,n){let t=Fa(e,!1);if(null!=t)return t}}if(e.xn=0,4==t)return Fa(e,!0)??3;if(e.Qt){let t=Fa(e,!1);if(null!=t)return t}return 1})(r,t):3==r.jn?((e,t)=>{let n,r,i,s;for(;;){if(e.Rn<=bo){if(pa(e),e.Rn<=bo&&0==t)return 0;if(0==e.Rn)break}if(e.Dn=0,e.Rn>=yo&&e.Fn>0&&(i=e.Fn-1,r=e.u[i],r==++i&&r==++i&&r==++i)){s=e.Fn+bo;do{}while(r==++i&&r==++i&&r==++i&&r==++i&&r==++i&&r==++i&&r==++i&&r==++i&&s>i);e.Dn=bo-(s-i),e.Dn>e.Rn&&(e.Dn=e.Rn)}if(e.Dn<yo?(n=ao(e,e.u[e.Fn]),e.Rn--,e.Fn++):(e.Fn,e.Fn,e.Dn,n=oo(e,1,e.Dn-yo),e.Rn-=e.Dn,e.Fn+=e.Dn,e.Dn=0),n){let t=Fa(e,!1);if(null!=t)return t}}if(e.xn=0,4==t)return Fa(e,!0)??3;if(e.Qt){let t=Fa(e,!1);if(null!=t)return t}return 1})(r,t):ca[r.Un].nr(r,t);if((2==n||3==n)&&(r.tn=666),0==n||2==n)return 0==e.Ut&&(r.vn=To),0;if(1==n&&(1==t?(e=>{_o(e,2,3),_o(e,Zo[ko].qn,Zo[ko].Qn),Qo(e)})(r):5!=t&&(oa(r,null,0,0),3==t&&(da(r),0==r.Rn&&(r.Fn=0,r.Sn=0,r.xn=0))),ba(e),0==e.Ut))return r.vn=To,0}return 4!=t?0:r.nn>0?(2==r.nn?(io(r,255&e.i),io(r,e.i>>>8&255),io(r,e.i>>>16&255),io(r,e.i>>>24&255),io(r,255&e.Tt),io(r,e.Tt>>>8&255),io(r,e.Tt>>>16&255),io(r,e.Tt>>>24&255)):(ya(r,e.i>>>16&65535),ya(r,65535&e.i)),ba(e),r.nn>0&&(r.nn=-r.nn),0!=r.qt?0:1):1}function xa(e){if(ma(e))return-2;let t=e.Zt,n=t.tn;return t.u=Vs,t.un=Hs,t.dn=Hs,t.Gt=Vs,t.On=Vs,t.Kn=new Ms(0),t.Nn=Vs,t.In=Hs,t._t.length=0,t.$t.length=0,t.Jn.length=0,t.rn=void 0,t.hn=0,t.yn=0,t.Xt=0,113==n?-3:0}function va(e,t){let n,r,i=e.Zn,s=e.Fn,o=e.kn,a=e.Pn,c=e.Fn>co(e)?e.Fn-co(e):0,l=e.un,f=e.sn,u=e.u,d=e.Rn,w=d>bo?bo:d,h=u[s],p=u[s+1],m=u[s+o-1],y=u[s+o];o>=e.An&&(i>>=2),a>d&&(a=d);do{if(n=t,u[n+o]!=y||u[n+o-1]!=m||u[n]!=h||u[n+1]!=p)continue;let i=2;for(;w>i&&u[s+i]==u[n+i];)i++;if(r=i,r>o){if(e.Yn=t,o=r,r>=a)break;m=u[s+o-1],y=u[s+o]}}while((t=l[t&f])>c&&0!=--i);return o>d?d:o}function Sa(e,t){((e,t,n,r,i=0)=>{let s,o,a=0;e.Un>0?(2==e.o.t&&(e.o.t=(e=>{let t,n=4093624447;for(t=0;31>=t;t++,n>>=1)if(1&n&&0!=e._t[t].Jt)return 0;if(0!=e._t[9].Jt||0!=e._t[10].Jt||0!=e._t[13].Jt)return 1;for(t=32;xo>t;t++)if(0!=e._t[t].Jt)return 1;return 0})(e)),ra(e,e._n),ra(e,e.$n),a=(e=>{let t;for(ia(e,e._t,e._n.Vt),ia(e,e.$t,e.$n.Vt),ra(e,e.er),t=Fo-1;t>=3&&0==e.Jn[Ls[t]].Qn;t--);return e.bn+=3*(t+1)+5+5+4,t})(e),s=e.bn+3+7>>3,o=e.gn+3+7>>3,(s>=o||4==e.jn)&&(s=o)):s=o=n+5,s>=n+4&&t?oa(e,t,n,r,i):o==s?(_o(e,2+r,3),aa(e,Zo,Mo)):(_o(e,4+r,3),((e,t,n,r)=>{let i;for(_o(e,t-257,5),_o(e,n-1,5),_o(e,r-4,4),i=0;r>i;i++)_o(e,e.Jn[Ls[i]].Qn,3);sa(e,e._t,t-1),sa(e,e.$t,n-1)})(e,e._n.Vt+1,e.$n.Vt+1,a+1),aa(e,e._t,e.$t)),$o(e),r&&Jo(e)})(e,e.u,e.Fn-e.Sn,t,e.Sn),e.Sn=e.Fn,ba(e.o)}function Fa(e,t){return Sa(e,t?1:0),0==e.o.Ut?t?2:0:null}var Ra=65535;function Da(e,t){return t>e?e:t}function ka(e,t){let n,r,i,s=Da(e.pn-5,e.Mt),o=0,a=e.o.kt;do{if(n=Ra,i=e.p+42>>3,e.o.Ut<i||(i=e.o.Ut-i,r=e.Fn-e.Sn,n>r+e.o.kt&&(n=r+e.o.kt),n>i&&(n=i),s>n&&(0==n&&4!=t||0==t||n!=r+e.o.kt)))break;o=4==t&&n==r+e.o.kt?1:0,oa(e,null,0,o),e.Gt[e.qt-4]=n,e.Gt[e.qt-3]=n>>8,e.Gt[e.qt-2]=~n,e.Gt[e.qt-1]=~n>>8,ba(e.o),r&&(r>n&&(r=n),qs(e.o.Et,e.o.Ct,e.u,e.Sn,r),e.o.Ct+=r,e.o.Ut-=r,e.o.jt+=r,e.Sn+=r,n-=r),n&&(ha(e.o,e.o.Et,e.o.Ct,n),e.o.Ct+=n,e.o.Ut-=n,e.o.jt+=n)}while(0==o);if(a-=e.o.kt,a){if(a<e.Mt)e.Bn-e.Fn<=a&&(e.Fn-=e.Mt,qs(e.u,0,e.u,e.Mt,e.Fn),2>e.zn&&e.zn++,e.xn>e.Fn&&(e.xn=e.Fn)),qs(e.u,e.Fn,e.o.Rt,e.o.Dt-a,a),e.Fn+=a,e.xn+=Da(a,e.Mt-e.xn);else{e.zn=2;let t=e.o.Dt-e.Mt;qs(e.u,0,e.o.Rt,t,e.Mt),e.Fn=e.Mt,e.xn=e.Fn}e.Sn=e.Fn}return e.k<e.Fn&&(e.k=e.Fn),o?(e.Ln=8,3):0!=t&&4!=t&&0==e.o.kt&&e.Fn==e.Sn?1:(i=e.Bn-e.Fn,e.o.kt>i&&e.Sn>=e.Mt&&(e.Sn-=e.Mt,e.Fn-=e.Mt,qs(e.u,0,e.u,e.Mt,e.Fn),2>e.zn&&e.zn++,i+=e.Mt,e.xn>e.Fn&&(e.xn=e.Fn)),i>e.o.kt&&(i=e.o.kt),i&&(ha(e.o,e.u,e.Fn,i),e.Fn+=i,e.xn+=Da(i,e.Mt-e.xn)),e.k<e.Fn&&(e.k=e.Fn),i=e.p+42>>3,i=Da(e.pn-i,Ra),s=Da(i,e.Mt),r=e.Fn-e.Sn,(r>=s||(r||4==t)&&0!=t&&0==e.o.kt&&i>=r)&&(n=Da(r,i),o=4==t&&0==e.o.kt&&n==r?1:0,oa(e,e.u,n,o,e.Sn),e.Sn+=n,ba(e.o)),o&&(e.Ln=8),o?2:0)}function Ta(e,t){let n,r=!1;for(;;){if(e.Rn<go){if(pa(e),e.Rn<go&&0==t)return 0;if(0==e.Rn)break}if(n=0,e.Rn>=yo&&(n=ua(e,e.Fn)),0!=n&&e.Fn-n<=co(e)&&(e.Dn=va(e,n)),e.Dn<yo)r=ao(e,e.u[e.Fn]),e.Rn--,e.Fn++;else if(e.Fn,e.Yn,e.Dn,r=oo(e,e.Fn-e.Yn,e.Dn-yo),e.Rn-=e.Dn,e.Dn>e.Mn||e.Rn<yo)e.Fn+=e.Dn,e.Dn=0,e.Cn=e.u[e.Fn],e.Cn=fa(e,e.Cn,e.u[e.Fn+1]);else{e.Dn--;do{e.Fn++,n=ua(e,e.Fn)}while(0!=--e.Dn);e.Fn++}if(r){let t=Fa(e,!1);if(null!=t)return t}}if(e.xn=e.Fn<yo-1?e.Fn:yo-1,4==t)return Fa(e,!0)??3;if(e.Qt){let t=Fa(e,!1);if(null!=t)return t}return 1}function Ea(e,t){let n,r=!1;for(;;){if(e.Rn<go){if(pa(e),e.Rn<go&&0==t)return 0;if(0==e.Rn)break}if(n=0,e.Rn>=yo&&(n=ua(e,e.Fn)),e.kn=e.Dn,e.Tn=e.Yn,e.Dn=yo-1,0!=n&&e.kn<e.Mn&&e.Fn-n<=co(e)&&(e.Dn=va(e,n),5>=e.Dn&&(1==e.jn||e.Dn==yo&&e.Fn-e.Yn>4096)&&(e.Dn=yo-1)),e.kn<yo||e.Dn>e.kn)if(e.En){if(r=ao(e,e.u[e.Fn-1]),r&&Sa(e,0),e.Fn++,e.Rn--,0==e.o.Ut)return 0}else e.En=1,e.Fn++,e.Rn--;else{let t=e.Fn+e.Rn-yo;e.Fn,e.Tn,e.kn,r=oo(e,e.Fn-1-e.Tn,e.kn-yo),e.Rn-=e.kn-1,e.kn-=2;do{++e.Fn<=t&&(n=ua(e,e.Fn))}while(0!=--e.kn);if(e.En=0,e.Dn=yo-1,e.Fn++,r){let t=Fa(e,!1);if(null!=t)return t}}}if(e.En&&(r=ao(e,e.u[e.Fn-1]),e.En=0),e.xn=e.Fn<yo-1?e.Fn:yo-1,4==t)return Fa(e,!0)??3;if(e.Qt){let t=Fa(e,!1);if(null!=t)return t}return 1}var Ca=852,Ua=Ws.map(e=>e+1),ja=Gs.subarray(0,-1).map(e=>e+3),Aa=Ys.map(Ya),Pa=Ys.map(Wa);Aa.push(64,2),Pa.push(142,2);var Za=Bs.slice(0,-2).map(Ya),Ma=Bs.slice(0,-2).map(Wa);Za.push(16,1,73,1,200,1),Ma.push(144,1,72,1,78,1);var Ka=new Zs([...ja,258,0,0]),Na=new Zs([...ja,3,0,0]),Ia=_s(Za),Oa=_s(Ma),La=new Zs([...Ua,0,0]),Va=new Zs([...Ua,32769,49153]),Ha=_s(Aa),Ba=_s(Pa);function Ya(e,t){return t%2?e:e+16}function Wa(e,t){return t%2?e:e+128}function Ga(e,t){let n,r=e.Zt,i=e.Dt,s=e.Ct,o=e.Rt,a=e.Et,c=r.u,l=r.It>>>0,f=r.p>>>0,u=r.gr,d=r.tt,w=(1<<r.zr)-1,h=(1<<r.rt)-1,p=r.Mt>>>0,m=r.k>>>0,y=r.Nt>>>0,b=r.vr,g=s-(t-e.Ut),z=s+(e.Ut-257),x=i+(e.kt-5),v=0,S=0,F=0,R=0;e:do{for(;15>f;){if(i>=o.length)break e;l+=o[i++]<<f,f+=8}for(n=u[l&w];;){if(F=n>>>16&255,l>>>=F,f-=F,F=n>>>24,0==F){a[s++]=65535&n;break}if(16&F){if(v=65535&n,F&=15,F){for(;F>f;){if(i>=o.length){r.Sr=16200;break e}l+=o[i++]<<f,f+=8}v+=l&(1<<F)-1,l>>>=F,f-=F}for(;15>f;){if(i>=o.length){r.Sr=16200;break e}l+=o[i++]<<f,f+=8}for(n=d[l&h];;){if(F=n>>>16&255,l>>>=F,f-=F,F=n>>>24,16&F){if(S=65535&n,F&=15,F){for(;F>f;){if(i>=o.length){r.Sr=16200;break e}l+=o[i++]<<f,f+=8}S+=l&(1<<F)-1,l>>>=F,f-=F}let t=v,u=s-g;if(S>u){let n=S-u;if(n>m&&b){e.At="invalid distance too far back",r.Sr=16209;break e}if(0==y){if(R=p-n,n>=t){for(let e=0;t>e;++e)a[s++]=c[R++];continue e}for(let e=0;n>e;++e)a[s++]=c[R++];t-=n,R=s-S}else if(n>y){R=p+y-n;let e=n-y;if(e>=t){for(let e=0;t>e;++e)a[s++]=c[R++];continue e}for(let t=0;e>t;++t)a[s++]=c[R++];if(t-=e,R=0,t>y){for(let e=0;y>e;++e)a[s++]=c[R++];t-=y,R=s-S}}else{if(R=y-n,n>=t){for(let e=0;t>e;++e)a[s++]=c[R++];continue e}for(let e=0;n>e;++e)a[s++]=c[R++];t-=n,R=s-S}for(;t>2;)a[s++]=a[R++],a[s++]=a[R++],a[s++]=a[R++],t-=3;t&&(a[s++]=a[R++],t>1&&(a[s++]=a[R++]))}else{for(R=s-S;t>2;)a[s++]=a[R++],a[s++]=a[R++],a[s++]=a[R++],t-=3;t&&(a[s++]=a[R++],t>1&&(a[s++]=a[R++]))}break}if(64&F){e.At="invalid distance code",r.Sr=16209;break e}n=d[(65535&n)+(l&(1<<F)-1)]}break}if(64&F){if(32&F){r.Sr=16191;break e}e.At="invalid literal/length code",r.Sr=16209;break e}n=u[(65535&n)+(l&(1<<F)-1)]}}while(x>i&&z>s);let D=f>>3;i-=D,f-=D<<3,l&=(1<<f)-1,e.Dt=i,e.Ct=s,e.kt=x>i?x-i+5:5-(i-x),e.Ut=z>s?z-s+257:257-(s-z),r.It=l>>>0,r.p=f>>>0}var qa=new Ms(0);function Xa(e,t){let n=qa,r=t?1446:1444;return{...Js(e,0),o:e,Sr:16180,Fr:!1,nn:0,Rr:!1,Dr:0,kr:0,Tr:0,Er:0,u:Vs,Cr:0,dt:0,ur:0,gr:n,tt:n,zr:0,rt:0,Ur:0,jr:0,Ar:0,Pr:0,Zr:n,Mr:new Zs(320),Kr:new Zs(288),Nr:new Ms(r),Ir:0,vr:!0,Or:0,Lr:0,Vr:t}}function Qa(e,t,n){return e<<24|t<<16|n}function Ja(e=0,t=0,n=0){return Qa(e,t,n)}function _a(e=1){return Qa(64,e,0)}function $a(e){return(255&e)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>24&255}var ec={Vr:!1,Hr:Ka,Br:Ia,Yr:La,Wr:Ha,Gr:20,qr:257,Xr:0,Qr:592,Jr:!1,_r:!0},tc={Vr:!0,Hr:Na,Br:Oa,Yr:Va,Wr:Ba,Gr:19,qr:256,Xr:-1,Qr:594,Jr:!0,_r:!1};function nc(e,t,n,r,i,s,o,a){let c,l,f,u,d,w,h,p,m,y,b,g,z,x,v,S,F,R,D,k=new Zs(16),T=new Zs(16),E=a?tc:ec;for(c=0;15>=c;c++)k[c]=0;for(l=0;n>l;l++)k[t[l]]++;for(d=i.$r,u=15;u>=1&&0==k[u];u--);if(d>u&&(d=u),0==u)return E._r?(v=_a(1),r.$r[0]=v,r.$r[1]=v,i.$r=1,0):-1;for(f=1;u>f&&0==k[f];f++);for(f>d&&(d=f),p=1,c=1;15>=c;c++)if(p<<=1,p-=k[c],0>p)return-1;if(p>0&&(0==e||1!=u))return-1;for(T[1]=0,c=1;15>c;c++)T[c+1]=T[c]+k[c];for(l=0;n>l;l++)0!=t[l]&&(s[T[t[l]]++]=l);switch(e){case 0:F=R=s,D=E.Gr;break;case 1:F=E.Hr,R=E.Br,D=E.qr;break;default:F=E.Yr,R=E.Wr,D=E.Xr}if(y=0,l=0,c=f,S=o.$r,w=d,h=0,z=-1,m=1<<d,x=m-1,1==e&&(E.Jr?m>=Ca:m>Ca)||2==e&&(E.Jr?m>=E.Qr:m>E.Qr))return 1;for(;;){v=rc(s,l,c,h,e,F,R,D,E.Vr),b=1<<c-h,g=1<<w,f=g;do{g-=b;let e=(y>>h)+g;r.$r[S+e]=v}while(0!=g);for(b=1<<c-1;y&b;)b>>=1;if(0!=b?(y&=b-1,y+=b):y=0,l++,0==--k[c]){if(c==u)break;c=t[s[l]]}if(c>d&&(y&x)!=z){for(0==h&&(h=d),S+=1<<w,w=c-h,p=1<<w;u>w+h&&(p-=k[w+h],p>0);)w++,p<<=1;if(m+=1<<w,1==e&&(E.Jr?m>=Ca:m>Ca)||2==e&&(E.Jr?m>=E.Qr:m>E.Qr))return 1;z=y&x,r.$r[o.$r+z]=Qa(w,d,S-o.$r)}}if(0!=y)for(v=_a(c-h);0!=y;){for(0!=h&&(y&x)!=z&&(h=0,c=d,S=o.$r,w=d,v=_a(c)),r.$r[S+(y>>h)]=v,b=1<<c-1;y&b;)b>>=1;0!=b?(y&=b-1,y+=b):y=0}return o.$r+=m,i.$r=d,0}function rc(e,t,n,r,i,s,o,a,c){let l;if(c?e[t]<a:e[t]+1<a)l=Ja(0,n-r,e[t]);else if(c?e[t]>a:e[t]>=a)if(c&&1==i){let i=e[t]-257;l=Ja(o[i],n-r,s[i])}else{let i=c?e[t]:e[t]-a;l=Ja(o[i],n-r,s[i])}else l=((e=0)=>Qa(96,e,0))(n-r);return l}var ic=new Ms(0),sc={ei:!0,ti:new Ms(544),ni:ic,ri:ic},oc={ei:!0,ti:new Ms(544),ni:ic,ri:ic};function ac(e){let t;return!(e&&(t=e.Zt,!(!t||t.o!=e||t.Vr&&(16191>t.Sr||t.Sr>16209)||!t.Vr&&(16180>t.Sr||t.Sr>16211))))}function cc(e){let t=e.Vr?oc:sc,n={$r:0};if(t.ei){let r,i,s;for(r=0;144>r;)e.Mr[r++]=8;for(;256>r;)e.Mr[r++]=9;for(;280>r;)e.Mr[r++]=7;for(;288>r;)e.Mr[r++]=8;t.ti.fill(0),s=t.ti,t.ni=s,i=9;let o={$r:s},a={$r:i},c={$r:0};for(nc(1,e.Mr,288,o,a,e.Kr,c,e.Vr),s=o.$r,i=a.$r,e.Ir=c.$r,r=0;32>r;)e.Mr[r++]=5;i=5;let l=c.$r,f={$r:s},u={$r:i};n.$r=l,nc(2,e.Mr,32,f,u,e.Kr,n,e.Vr),t.ri=s.slice(l),t.ei=!1}e.gr=t.ni,e.zr=9,e.tt=t.ri,e.rt=5,e.Ir=n.$r}var lc=class extends Is{constructor(){super("Need more input")}};function fc(e,t){let n,r,i,s,o,a,c,l,f,u,d,w,h,p,m,y,b,g=new Ps(4);if(ac(e)||!e.Et||!e.Rt&&0!=e.kt)return-2;a=0,l=0,c=0,f=0,r=Vs,i=0,s=Vs,o=0,n=e.Zt,16191==n.Sr&&(n.Sr=16192),F(),u=a,d=c,b=0;try{for(;;)switch(n.Sr){case 16180:if(0==n.nn){n.Sr=16192;break}if(T(16),2&n.nn&&35615==l){0==n.Kt&&(n.Kt=15),n.Tr=Xo(0),n.Tr=v(n.Tr,l),D(),n.Sr=16181;break}if(n.rn&&(n.rn.ii=-1),!(1&n.nn)||((E(8)<<8)+(l>>8))%31){e.At="incorrect header check",n.Sr=16209;break}if(8!=E(4)){e.At="unknown compression method",n.Sr=16209;break}if(C(4),y=E(4)+8,0==n.Kt&&(n.Kt=y),y>15||y>n.Kt){e.At="invalid window size",n.Sr=16209;break}n.kr=1<<y,n.Dr=0,e.i=n.Tr=Io(0),n.Sr=512&l?16189:16191,D();break;case 16181:if(T(16),n.Dr=l,8!=(255&n.Dr)){e.At="unknown compression method",n.Sr=16209;break}if(57344&n.Dr){e.At="unknown header flags set",n.Sr=16209;break}n.rn&&(n.rn.lr=l>>8&1),512&n.Dr&&4&n.nn&&(n.Tr=v(n.Tr,l)),D(),n.Sr=16182;case 16182:T(32),n.rn&&(n.rn.pr=l),512&n.Dr&&4&n.nn&&(n.Tr=S(n.Tr,l)),D(),n.Sr=16183;case 16183:T(16),n.rn&&(n.rn.si=255&l,n.rn.mr=l>>8),512&n.Dr&&4&n.nn&&(n.Tr=v(n.Tr,l)),D(),n.Sr=16184;case 16184:1024&n.Dr?(T(16),n.Cr=l,n.rn&&(n.rn.yr=l),512&n.Dr&&4&n.nn&&(n.Tr=v(n.Tr,l)),D()):n.rn&&(n.rn.ur=Vs),n.Sr=16185;case 16185:if(1024&n.Dr&&(w=n.Cr,w>a&&(w=a),w&&(n.rn&&n.rn.ur&&n.rn.oi&&(y=n.rn.yr-n.Cr)<n.rn.oi&&qs(n.rn.ur,y,r,i,w),512&n.Dr&&4&n.nn&&(n.Tr=Xo(n.Tr,r.subarray(i,i+w),w)),a-=w,i+=w,n.Cr-=w),n.Cr))return z();n.Cr=0,n.Sr=16186;case 16186:if(2048&n.Dr){if(0==a)return z();w=0;do{y=r[i+w++],n.rn&&n.rn.ai&&n.Cr<n.rn.ai&&(n.rn.dr[n.Cr++]=y)}while(y&&a>w);if(512&n.Dr&&4&n.nn&&(n.Tr=Xo(n.Tr,r.subarray(i,i+w),w)),a-=w,i+=w,y)return z()}else n.rn&&(n.rn.dr=Vs);n.Cr=0,n.Sr=16187;case 16187:if(4096&n.Dr){if(0==a)return z();w=0;do{y=r[i+w++],n.rn&&n.rn.ci&&n.Cr<n.rn.ci&&(n.rn.wr[n.Cr++]=y)}while(y&&a>w);if(512&n.Dr&&4&n.nn&&(n.Tr=Xo(n.Tr,r.subarray(i,i+w),w)),a-=w,i+=w,y)return z()}else n.rn&&(n.rn.wr=Vs);n.Sr=16188;case 16188:if(512&n.Dr){if(T(16),4&n.nn&&l!=(65535&n.Tr)){e.At="header crc mismatch",n.Sr=16209;break}D()}n.rn&&(n.rn.cr=n.Dr>>9&1,n.rn.ii=1),e.i=n.Tr=Xo(0),n.Sr=16191;break;case 16189:T(32),e.i=n.Tr=$a(l),D(),n.Sr=16190;case 16190:if(!n.Rr)return R(),2;e.i=n.Tr=Io(0),n.Sr=16191;case 16191:if(5==t||6==t)return z();case 16192:if(n.Fr){U(),n.Sr=16206;break}switch(T(3),n.Fr=!!E(1),C(1),E(2)){case 0:n.Sr=16193;break;case 1:if(cc(n),n.Sr=16199,6==t)return C(2),z();break;case 2:n.Sr=16196;break;case 3:e.At="invalid block type",n.Sr=16209}C(2);break;case 16193:if(U(),T(32),(65535&l)!=(l>>>16^65535)){e.At="invalid stored block lengths",n.Sr=16209;break}if(n.Cr=65535&l,D(),n.Sr=16194,6==t)return z();case 16194:n.Sr=16195;case 16195:if(w=n.Cr,w){if(w>a&&(w=a),w>c&&(w=c),0==w)return z();qs(s,o,r,i,w),a-=w,i+=w,c-=w,o+=w,n.Cr-=w;break}n.Sr=16191;break;case 16196:if(T(14),n.jr=E(5)+257,C(5),n.Ar=E(5)+1,C(5),n.Ur=E(4)+4,C(4),n.jr>286||!n.Vr&&n.Ar>30){e.At=n.Vr?"too many length":"too many length or distance symbols",n.Sr=16209;break}n.Pr=0,n.Sr=16197;case 16197:for(;n.Pr<n.Ur;)T(3),n.Mr[Ls[n.Pr++]]=E(3),C(3);for(;19>n.Pr;)n.Mr[Ls[n.Pr++]]=0;n.Zr=n.Nr,n.gr=n.tt=n.Zr,n.zr=7;let u={$r:n.Zr},g={$r:n.zr},j={$r:0};if(b=nc(0,n.Mr,19,u,g,n.Kr,j,n.Vr),n.Zr=u.$r,n.zr=g.$r,b){e.At="invalid code lengths set",n.Sr=16209;break}n.Pr=0,n.Sr=16198;case 16198:for(;n.Pr<n.jr+n.Ar;){for(;p=n.gr[E(n.zr)],(p>>>16&255)>f;)k();if(16>(65535&p))C(p>>>16&255),n.Mr[n.Pr++]=65535&p;else{if(16==(65535&p)){if(T(2+(p>>>16&255)),C(p>>>16&255),0==n.Pr){e.At="invalid bit length repeat",n.Sr=16209;break}y=n.Mr[n.Pr-1],w=3+E(2),C(2)}else 17==(65535&p)?(T(3+(p>>>16&255)),C(p>>>16&255),y=0,w=3+E(3),C(3)):(T(7+(p>>>16&255)),C(p>>>16&255),y=0,w=11+E(7),C(7));if(n.Pr+w>n.jr+n.Ar){e.At="invalid bit length repeat",n.Sr=16209;break}for(;w--;)n.Mr[n.Pr++]=y}}if(16209==n.Sr)break;if(0==n.Mr[256]){e.At="invalid code -- missing end-of-block",n.Sr=16209;break}n.Zr=n.Nr,n.zr=9;let A={$r:n.Zr},P={$r:n.zr},Z={$r:0};b=nc(1,n.Mr,n.jr,A,P,n.Kr,Z,n.Vr),n.Zr=A.$r,n.zr=P.$r;let M=Z.$r;if(n.gr=n.Zr.slice(0,M),b){e.At="invalid literal/lengths set",n.Sr=16209;break}n.rt=6;let K=n.Mr.subarray(n.jr,n.jr+n.Ar),N={$r:n.Zr},I={$r:n.rt},O={$r:M};if(b=nc(2,K,n.Ar,N,I,n.Kr,O,n.Vr),n.Zr=N.$r,n.rt=I.$r,n.tt=n.Zr.slice(M),b){e.At="invalid distances set",n.Sr=16209;break}if(n.Sr=16199,6==t)return z();case 16199:n.Sr=16200;case 16200:if(!n.Vr&&a>=6&&c>=258){R(),Ga(e,d),F(),16191==n.Sr&&(n.Or=-1);break}for(n.Or=0;p=n.gr[E(n.zr)],(p>>>16&255)>f;)k();if(p>>>24&&!(p>>>24&240)){for(m=p;p=n.gr[(65535&m)+(E((m>>>16&255)+(m>>>24))>>(m>>>16&255))],(m>>>16&255)+(p>>>16&255)>f;)k();C(m>>>16&255),n.Or+=m>>>16&255}if(C(p>>>16&255),n.Or+=p>>>16&255,n.Cr=65535&p,!(p>>>24)){n.Sr=16205;break}if(p>>>24&32){n.Or=-1,n.Sr=16191;break}if(p>>>24&64){e.At="invalid literal/length code",n.Sr=16209;break}n.ur=p>>>24&(n.Vr?31:15),n.Sr=16201;case 16201:n.ur&&(T(n.ur),n.Cr+=E(n.ur),C(n.ur),n.Or+=n.ur),n.Lr=n.Cr,n.Sr=16202;case 16202:for(;p=n.tt[E(n.rt)],(p>>>16&255)>f;)k();if(!(p>>>24&240)){for(m=p;p=n.tt[(65535&m)+(E((m>>>16&255)+(m>>>24))>>(m>>>16&255))],(m>>>16&255)+(p>>>16&255)>f;)k();C(m>>>16&255),n.Or+=m>>>16&255}if(C(p>>>16&255),n.Or+=p>>>16&255,p>>>24&64){e.At="invalid distance code",n.Sr=16209;break}n.dt=65535&p,n.ur=p>>>24&15,n.Sr=16203;case 16203:n.ur&&(T(n.ur),n.dt+=E(n.ur),C(n.ur),n.Or+=n.ur),n.Sr=16204;case 16204:if(0==c)return z();if(w=d-c,n.dt>w){if(w=n.dt-w,w>n.k&&n.vr){e.At="invalid distance too far back",n.Sr=16209;break}w>n.Nt?(w-=n.Nt,h=n.Mt-w):h=n.Nt-w,w>n.Cr&&(w=n.Cr),w>c&&(w=c);for(let e=0;w>e;++e)s[o]=255&n.u[h],++o,++h}else{h=o-n.dt,w=n.Cr,w>c&&(w=c);for(let e=0;w>e;++e)s[o]=s[h],++o,++h}w>c&&(w=c),c-=w,n.Cr-=w,0==n.Cr&&(n.Sr=16200);break;case 16205:if(0==c)return z();s[o++]=n.Cr,c--,n.Sr=16200;break;case 16206:if(n.nn){if(T(32),d-=c,e.jt+=d,n.Er+=d,4&n.nn&&d){let t=s.subarray(o-d,o);e.i=n.Tr=x(n.Tr,t,d)}if(d=c,4&n.nn&&(n.Dr?l:$a(l)>>>0)!=n.Tr){e.At="incorrect data check",n.Sr=16209;break}D()}n.Sr=16207;case 16207:if(n.nn&&n.Dr){if(T(32),4&n.nn&&l!=(4294967295&n.Er)){e.At="incorrect length check",n.Sr=16209;break}D()}n.Sr=16208;case 16208:return b=1,z();case 16209:return b=-3,z();case 16210:return-4;default:return-2}}catch(e){if(e instanceof lc)return z();throw e}function z(){if(R(),n.Mt||d!=e.Ut&&16209>n.Sr&&(n.Vr?16208>n.Sr:16206>n.Sr)||4!=t){let t=d-e.Ut;if(((e,t,n)=>{let r=e.Zt;if(!(r.u&&0!=r.u.length||(r.u=new Ps(1<<r.Kt),r.u)))return 1;if(0==r.Mt&&(r.Mt=1<<r.Kt,r.Nt=0,r.k=0),n<r.Mt){let e=r.Mt-r.Nt;e>n&&(e=n),qs(r.u,r.Nt,t,t.length-n,e),(n-=e)?(qs(r.u,0,t,t.length-n,n),r.Nt=n,r.k=r.Mt):(r.Nt+=e,r.Nt==r.Mt&&(r.Nt=0),r.k<r.Mt&&(r.k+=e))}else qs(r.u,0,t,t.length-r.Mt,r.Mt),r.Nt=0,r.k=r.Mt;return 0})(e,e.Et.subarray(e.Ct-t,e.Ct),t))return n.Sr=16210,-4}return u-=e.kt,d-=e.Ut,e.Tt+=u,e.jt+=d,n.Er+=d,4&n.nn&&d&&(e.i=n.Tr=x(n.Tr,e.Et.subarray(e.Ct-d,e.Ct),d)),e.t=n.p+(n.Fr?64:0)+(16191==n.Sr?128:0)+(16199==n.Sr||16194==n.Sr?256:0),(0==u&&0==d&&0==b||4==t&&0==b)&&(b=-5),b}function x(e,t,r){return n.Dr?Xo(e,t,r):Io(e,t,r)}function v(e,t){return g[0]=255&t,g[1]=t>>>8&255,Xo(e,g,2)>>>0}function S(e,t){return g[0]=255&t,g[1]=t>>>8&255,g[2]=t>>>16&255,g[3]=t>>>24&255,Xo(e,g,4)>>>0}function F(){s=e.Et,o=e.Ct,c=e.Ut,r=e.Rt,i=e.Dt,a=e.kt,l=n.It,f=n.p}function R(){e.Et=s,e.Ct=o,e.Ut=c,e.Rt=r,e.Dt=i,e.kt=a,n.It=l,n.p=f}function D(){l=0,f=0}function k(){if(0==a)throw new lc;a--,l+=(255&r[i])<<f,i++,l>>>=0,f+=8}function T(e){for(;e>f;)k()}function E(e){return l&(1<<e)-1}function C(e){l>>>=e,f-=e}function U(){l>>>=7&f,f-=7&f}}function uc(e){return ac(e)?-2:0}var dc=65536,wc=class{constructor(e=16,t=dc){this.fi=[],this.ui=e;for(let n=0;n<Ns.min(e,4);n++)this.fi.push(new Ps(t))}di(e=dc){for(let t=this.fi.length-1;t>=0;t--){let n=this.fi[t];if(n.length>=e)return this.fi.splice(t,1),n}return new Ps(e)}release(e){this.fi.length<this.ui&&this.fi.push(e)}};function hc(e){let t=new wc(32,dc),n=null;function r(e){try{t.release(e)}catch{}}return new Ks({start(){},transform(i,s){if(!n){let t=e.wi(),r=e.hi(t);if(0!=r&&0!=r)throw new Is("init failed: "+r);n={o:t}}let o=n.o,a=0;for(;a<i.length;){let n=Ns.min(i.length-a,32768),c=i.subarray(a,a+n);for(o.Rt=c,o.Dt=0,o.kt=c.length;o.kt>0;){let n=t.di(),i=!1;try{o.Et=n,o.Ct=0,o.Ut=n.length;let r=e.pi(o,0),a=n.length-o.Ut;if(a>0){let e=!1,r={yi:n.subarray(0,a),release:()=>{e||(e=!0,t.release(n))}};i=!0,s.enqueue(r)}if(0!=r&&1!=r)throw new Is("process error: "+r)}finally{i||r(n)}}a+=n}},flush(i){if(!n)return;let s=n.o;for(;;){let n=t.di(),o=!1;try{s.Et=n,s.Ct=0,s.Ut=n.length;let r=e.pi(s,4),a=n.length-s.Ut;if(a>0){let e=!1,r={yi:n.subarray(0,a),release:()=>{e||(e=!0,t.release(n))}};o=!0,i.enqueue(r)}if(1==r)break;if(0!=r)throw new Is("finalization error: "+r)}finally{o||r(n)}}let o=e.bi(s);if(0!=o&&0!=o)throw new Is("end failed: "+o)}})}function pc(){return new Ks({start(){},transform(e,t){try{t.enqueue(e.yi.slice(0))}finally{e.release()}},flush(){}})}ue({workerURI:"./core/web-worker-native.js",wasmURI:null,CompressionStreamZlib:class{constructor(e="deflate",t){let n=function(e="deflate",t){let n="gzip"==e?31:"deflate-raw"==e?-15:15,r=t&&"number"==typeof t.level?t.level:-1;return hc({wi:()=>(()=>{let e=Qs();return e.Zt=fo(e),e})(),hi:e=>((e,t,n=8,r=15,i=mo,s=0)=>{let o=1;if(!e)return-2;if(e.At="",-1==t&&(t=6),0>r){if(o=0,-15>r)return-2;r=-r}else r>15&&(o=2,r-=16);if(1>i||i>9||8!=n||8>r||r>15||0>t||t>9||0>s||s>4||8==r&&1!=o)return-2;8==r&&(r=9);let a=fo(e);return a?(e.Zt=a,a.o=e,a.tn=42,a.nn=o,a.rn=void 0,a.Kt=r,a.Mt=1<<a.Kt,a.sn=a.Mt-1,a.an=i+7,a.cn=1<<a.an,a.ln=a.cn-1,a.fn=(a.an+yo-1)/yo,a.u=new Ps(2*a.Mt),a.un=new Zs(a.Mt),a.dn=new Zs(a.cn),a.k=0,a.wn=1<<i+6,a.Gt=new Ps(4*a.wn),a.pn=4*a.wn,a.u&&a.un&&a.dn&&a.Gt?(a.On=a.Gt.subarray(a.wn),a.Xt=a.hn+a.wn,a.en=3*(a.wn-1),a.Un=t,a.jn=s,a.Hn=n,(e=>{let t=(e=>{let t;return ma(e)?-2:(e.Tt=e.jt=0,e.At="",e.t=2,t=e.Zt,t.qt=0,t.yn=t.hn,0>t.nn&&(t.nn=-t.nn),t.tn=2==t.nn?57:42,e.i=2==t.nn?Xo(0):Io(0),t.vn=-2,(e=>{if(e._t&&e._t.length>=Ro)for(let t=0;Ro>t;t++)e._t[t]=wo();else{e._t=[];for(let t=0;Ro>t;t++)e._t.push(wo())}if(e.$t&&e.$t.length>=2*So+1)for(let t=0;2*So+1>t;t++)e.$t[t]=wo();else{e.$t=[];for(let t=0;2*So+1>t;t++)e.$t.push(wo())}if(e.Jn&&e.Jn.length>=2*Fo+1)for(let t=0;2*Fo+1>t;t++)e.Jn[t]=wo();else{e.Jn=[];for(let t=0;2*Fo+1>t;t++)e.Jn.push(wo())}e._n=new $s(e._t,new eo(Zo,Co,xo+1,vo,Do)),e.$n=new $s(e.$t,new eo(Mo,Uo,0,So,Do)),e.er=new $s(e.Jn,new eo(null,jo,0,Fo,7)),e.It=0,e.p=0,e.Ln=0,$o(e)})(t),0)})(e);return 0==t&&(e=>{e.Bn=2*e.Mt,da(e),e.Mn=ca[e.Un].ir,e.An=ca[e.Un].rr,e.Pn=ca[e.Un].sr,e.Zn=ca[e.Un].ar,e.Fn=0,e.Sn=0,e.Rn=0,e.xn=0,e.Dn=e.kn=yo-1,e.En=0,e.Cn=0})(e.Zt),t})(e)):(a.tn=666,e.At=to(-4),xa(e),-4)):-4})(e,r,8,n,8,0),pi:za,bi:xa})}(e,t);this.writable=n.writable,this.readable=n.readable.pipeThrough(pc())}},DecompressionStreamZlib:class{constructor(e="deflate"){let t=((e="deflate")=>{let t="gzip"==e?31:"deflate-raw"==e?-15:"deflate64-raw"==e?-16:15;return hc({wi:()=>(()=>{let e=Qs();return e.Zt=Xa(e,!1),e})(),hi:e=>function(e,t){let n,r;if(!e)return-2;e.At="";let i=-16==t;return r=Xa(e,i),e.Zt=r,r.o=e,r.Sr=i?16191:16180,n=((e,t)=>{let n,r;if(ac(e))return-2;if(r=e.Zt,0>t){if(-16>t)return-2;n=0,r.Vr=-16==t,t=-t}else n=5+(t>>4),r.Vr=!1,48>t&&(t&=15);let i=r.Vr?16:15;return t&&(8>t||t>i)?-2:(r.u.length>0&&r.Kt!=t&&(r.u=Vs),r.nn=n,r.Kt=t,(e=>{let t;return ac(e)?-2:(t=e.Zt,t.Mt=0,t.k=0,t.Nt=0,(e=>{let t;return ac(e)?-2:(t=e.Zt,e.Tt=e.jt=t.Er=0,e.At="",t.nn&&(e.i=1&t.nn),t.Sr=t.Vr?16191:16180,t.Fr=!1,t.Rr=!1,t.Dr=-1,t.kr=t.Vr?65536:32768,delete t.rn,t.It=0,t.p=0,t.gr=t.Nr,t.tt=t.Nr,t.Zr=t.Nr,t.vr=!0,t.Or=-1,0)})(e))})(e))})(e,t),n}(e,t),pi:fc,bi:uc})})(e);this.writable=t.writable,this.readable=t.readable.pipeThrough(pc())}}}),ue({workerURI:e=>{const t="text/javascript",n=(e=>{let t=0,n=0,r=0,i=new w(1024),s=0,o=0;for(;!o;){o=c(1);const e=c(2);if(0==e)l();else if(1==e)f(ge(ye),ge(be));else{if(2!=e)throw d("invalid deflate block type");f(...u())}}return i.subarray(0,s);function a(){if(t>=e.length)throw d("unexpected end of deflate data");return e[t++]}function c(e){for(;e>r;)n|=a()<<r,r+=8;const t=n&(1<<e)-1;return n>>>=e,r-=e,t}function l(){n=0,r=0;const e=a()|a()<<8;t+=2,p(s+e);for(let t=0;e>t;t++)i[s++]=a()}function f(e,t){let n=h(e);for(;256!=n;){if(256>n)p(s+1),i[s++]=n;else{const e=n-257,r=de[e]+c(we[e]),o=h(t),a=he[o]+c(pe[o]);p(s+r);const l=s-a;for(let e=0;r>e;e++)i[s++]=i[l+e]}n=h(e)}}function u(){const e=c(5)+257,t=c(5)+1,n=c(4)+4,r=new w(19);for(let e=0;n>e;e++)r[me[e]]=c(3);const i=ge(r),s=new w(e+t);let o=0;for(;o<s.length;){const e=h(i);if(16>e)s[o++]=e;else if(16==e){const e=s[o-1];let t=c(2)+3;for(;t--;)s[o++]=e}else o+=17==e?c(3)+3:c(7)+11}return[ge(s.subarray(0,e)),ge(s.subarray(e))]}function h(e){const{o:t,symbols:n}=e;let r=0,i=0,s=0;for(let e=1;15>=e;e++){r|=c(1);const o=t[e];if(o>r-i)return n[s+(r-i)];s+=o,i=i+o<<1,r<<=1}throw d("invalid huffman code")}function p(e){if(i.length<e){let t=2*i.length;for(;e>t;)t*=2;const n=new w(t);n.set(i.subarray(0,s)),i=n}}})((e=>{const t=(e=(e+"").replace(/[^A-Za-z0-9+/=]/g,"")).length,n=[];for(let r=0;t>r;r+=4){const t=ze.indexOf(e[r])<<18|ze.indexOf(e[r+1])<<12|(63&ze.indexOf(e[r+2]))<<6|63&ze.indexOf(e[r+3]);n.push(t>>16&255),"="!==e[r+2]&&n.push(t>>8&255),"="!==e[r+3]&&n.push(255&t)}return new w(n)})("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"));if(e){const e=new y([n],{type:t});return u.createObjectURL(e)}return"data:"+t+";base64,"+(e=>{let t="";const n=e.length;let r=0;for(;n>r+2;r+=3){const n=e[r]<<16|e[r+1]<<8|e[r+2];t+=ze[n>>18&63]+ze[n>>12&63]+ze[n>>6&63]+ze[63&n]}const i=n-r;if(1===i){const n=e[r]<<16;t+=ze[n>>18&63]+ze[n>>12&63]+"=="}else if(2===i){const n=e[r]<<16|e[r+1]<<8;t+=ze[n>>18&63]+ze[n>>12&63]+ze[n>>6&63]+"="}return t})(n)}}),e.BlobReader=Un,e.BlobWriter=jn,e.Data64URIReader=class extends kn{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,gi:r,size:o.floor(.75*(t-r))})}readUint8Array(e,t){const{gi:n,dataURI:r}=this,i=new w(t),s=4*o.floor(e/3),a=atob(r.substring(s+n,4*o.ceil((e+t)/3)+n)),c=e-3*o.floor(s/4);let l=0;for(let e=c;c+t>e&&e<a.length;e++)i[e-c]=a.charCodeAt(e),l++;return l<i.length?i.subarray(0,l):i}},e.Data64URIWriter=class extends Tn{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n,i=t.pending;const s=t.pending.length;for(t.pending="",n=0;n<3*o.floor((s+e.length)/3)-s;n++)i+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.pending+=r.fromCharCode(e[n]);i.length>2?t.data+=S(i):t.pending=i+t.pending}getData(){return this.data+S(this.pending)}},e.ERR_AMBIGUOUS_ARCHIVE=li,e.ERR_BAD_FORMAT=_r,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=ti,e.ERR_DUPLICATED_NAME=Li,e.ERR_ENCRYPTED=ii,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=ei,e.ERR_EOCDR_NOT_FOUND=$r,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=ri,e.ERR_HTTP_RANGE=mn,e.ERR_HTTP_RESOURCE_CHANGED=yn,e.ERR_INVALID_COMMENT=Vi,e.ERR_INVALID_COMPRESSED_DATA=Tt,e.ERR_INVALID_ENCRYPTION_STRENGTH=Wi,e.ERR_INVALID_ENTRY_COMMENT=Hi,e.ERR_INVALID_ENTRY_NAME=Bi,e.ERR_INVALID_EXTRAFIELD_DATA=qi,e.ERR_INVALID_EXTRAFIELD_TYPE=Gi,e.ERR_INVALID_PASSWORD=Le,e.ERR_INVALID_SIGNATURE=Ve,e.ERR_INVALID_UNCOMPRESSED_SIZE=kt,e.ERR_INVALID_VERSION=Yi,e.ERR_ITERATOR_COMPLETED_TOO_SOON=bn,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=ni,e.ERR_OVERLAPPING_ENTRY=ci,e.ERR_SPLIT_ZIP_FILE=ai,e.ERR_UNDEFINED_READER=$i,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=_i,e.ERR_UNSUPPORTED_COMPRESSION=oi,e.ERR_UNSUPPORTED_ENCRYPTION=si,e.ERR_UNSUPPORTED_FORMAT=Ji,e.ERR_WRITER_NOT_INITIALIZED=gn,e.ERR_ZIP_NOT_EMPTY=es,e.HttpRangeReader=class extends Qn{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=Qn,e.Reader=kn,e.SplitDataReader=Jn,e.SplitDataWriter=_n,e.TextReader=class extends Un{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends jn{constructor(e){super(e),n.assign(this,{encoding:e,zi:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,zi:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new b((i,s)=>{n.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>s(t.error)}),t.readAsText(r,e)})}}},e.Uint8ArrayReader=class extends kn{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Tn{constructor(e){super(),this.defaultBufferSize=e||262144}init(e=0){n.assign(this,{offset:0,array:new w(e>0?e:this.defaultBufferSize)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.array.length){let e=t.array.length?2*t.array.length:t.defaultBufferSize;for(;n>e;)e*=2;const r=t.array;t.array=new w(e),t.array.set(r)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.array.length?this.array:this.array.slice(0,this.offset)}},e.Writer=Tn,e.ZipReader=hi,e.ZipReaderStream=pi,e.ZipWriter=os,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new F;this.readable=t,this.zipWriter=new os(n,e),this.Ve=new l}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:i}=new F({start(e){n=e},flush:()=>{(async()=>{try{await t.close()}catch(e){try{await t.writer.writable.abort(e)}catch{}}})()}});return as(this,this.zipWriter.add(e,r),e=>n.error(e)),{readable:this.readable,writable:i}}writable(e){let t;const{readable:n,writable:r}=new F({start(e){t=e}});return as(this,this.zipWriter.add(e,n),e=>t.error(e)),r}async close(e,n={}){return await b.all(t.from(this.Ve)),this.zipWriter.close(e,n)}},e.configure=fe,e.createBlobTempStream=(e={})=>{const{thresholdBytes:t=Us}=e;return()=>{const e=[];let n,r,i,s=0,o=!1;const a=new D({async write(i){o?await n.write(i):(e.push(i),s+=i.length,s>t&&await(async()=>{const t=new F;r=new f(t.readable).blob(),n=t.writable.getWriter(),o=!0;for(const t of e)await n.write(t);e.length=0})())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:a,readable:new R({async pull(t){if(o){if(!i){const e=await r;i=e.stream().getReader()}const{value:e,done:n}=await i.read();n?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){i&&await i.cancel(e)}},{highWaterMark:0}),dispose:async()=>{if(n){try{await n.abort()}catch{}n=null}r&&(r.catch(()=>{}),r=null),e.length=0}}}},e.createOPFSTempStream=(e={})=>{const{thresholdBytes:t=Es,directoryName:n=Cs,getDirectory:r=()=>E.storage.getDirectory()}=e;let i;function s(){return i||(i=b.resolve(r()).then(e=>e.getDirectoryHandle(n,{create:!0}))),i}return()=>{const e=[];let n,r,i,o,a=0,c=!1;const l=new D({async write(o){c?await i.write(o):(e.push(o),a+=o.length,a>t&&await(async()=>{const t=await s();n=v.randomUUID(),r=await t.getFileHandle(n,{create:!0}),i=(await r.createWritable()).getWriter(),c=!0;for(const t of e)await i.write(t);e.length=0})())},async close(){i&&(await i.close(),i=null)}});let f=0;return{writable:l,readable:new R({async pull(t){if(c){if(!o){const e=await r.getFile();o=e.stream().getReader()}const{value:e,done:n}=await o.read();n?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){o&&await o.cancel(e)}},{highWaterMark:0}),dispose:async()=>{if(i){try{await i.close()}catch{}i=null}if(n){try{const e=await s();await e.removeEntry(n)}catch{}r=n=null}e.length=0}}}},e.createSyncAccessHandleTempStream=(e={})=>{const{thresholdBytes:t=js,directoryName:n=As,getDirectory:r}=e;if(!(r||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d("createSyncAccessHandle is only available in dedicated workers");const i=r||(()=>E.storage.getDirectory());let s;function a(){return s||(s=b.resolve(i()).then(e=>e.getDirectoryHandle(n,{create:!0}))),s}return()=>{const e=[];let n,r,i=0,s=!1,c=0,l=0;const f=new D({async write(o){s?(r.write(o,{at:c}),c+=o.length):(e.push(o),i+=o.length,i>t&&await(async()=>{const t=await a();n=v.randomUUID();const i=await t.getFileHandle(n,{create:!0});r=await i.createSyncAccessHandle(),s=!0;for(const t of e)r.write(t,{at:c}),c+=t.length;e.length=0})())},close(){r&&r.flush()}});let u=0;return{writable:f,readable:new R({pull(t){if(s){const e=c-l;if(0>=e)return void t.close();const n=new w(o.min(524288,e)),i=r.read(n,{at:l});i?(l+=i,t.enqueue(n.subarray(0,i))):t.close()}else u<e.length?t.enqueue(e[u++]):t.close()}},{highWaterMark:0}),dispose:async()=>{if(r){try{r.close()}catch{}r=null}if(n){try{const e=await a();await e.removeEntry(n)}catch{}n=null}e.length=0}}}},e.getMimeType=()=>"application/octet-stream",e.resetConfiguration=()=>{for(const e of oe)delete ae[e];n.assign(ae,se)},e.terminateWorkers=async()=>{await b.allSettled(rn.map(e=>(hn(e),e.terminate())))}});
|
|
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:i,BigInt:o,Math:s,Date:a,Map:c,Set:l,Response:f,URL:u,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:h,DataView:m,Blob:y,Promise:b,TextEncoder:g,TextDecoder:x,document:k,crypto:S,btoa:v,TransformStream:F,ReadableStream:z,WritableStream:R,CompressionStream:E,DecompressionStream:D,navigator:T,Worker:C}="undefined"!=typeof globalThis?globalThis:this||self;var U=void 0!==k?k.currentScript:null;const N=4294967295,W=65535,H=255,j=67324752,A=134695760,P=A,M=33639248,O=101010256,I=101075792,q=117853008,Z=22,K=20,L=21589,B=2048,V=16384,Y=2048,J=1024,G="/",X=30,Q=new a(2107,11,31,23,59,58),_=new a(1980,0,1),$=void 0,ee=1/0,te="undefined",re="function",ne=new w;let ie=2;try{typeof T!=te&&T.hardwareConcurrency&&(ie=T.hardwareConcurrency)}catch{}const oe={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:ie,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof E!=te&&E,DecompressionStream:typeof D!=te&&D},se=["baseURI","wasmURI","workerURI","chunkSize","maxWorkers","terminateWorkerTimeout","workerStarvationTimeout","useCompressionStream","useWebWorkers","transferStreams","CompressionStream","DecompressionStream","CompressionStreamZlib","DecompressionStreamZlib"],ae={...oe};function ce(){return ae}function le(e){return s.max(e.chunkSize,64)}function fe(e){for(const t of se){const r=e[t];r!==$&&(ae[t]=r)}}function ue(e){for(const t of se){const r=e[t];r!==$&&(oe[t]=r)}fe(e)}const de=[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],we=[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],pe=[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],he=[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],me=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],ye=new w(288);ye.fill(8,0,144),ye.fill(9,144,256),ye.fill(7,256,280),ye.fill(8,280,288);const be=new w(30).fill(5);function ge(e){const t=new p(16);for(const r of e)t[r]++;t[0]=0;const r=new p(17);for(let e=1;15>=e;e++)r[e+1]=r[e]+t[e];const n=new p(e.length);for(let t=0;t<e.length;t++)e[t]&&(n[r[e[t]]++]=t);return{o:t,symbols:n}}const xe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ke="Invalid codec definition",Se="Reserved compression method",ve="Invalid codec module",Fe="string",ze=[0,8,9,99],Re=new c,Ee=new c;function De(e){return Re.get(e)}function Te(e){return Ee.get(e)}function Ce(e,t){const{CompressionStream:r,DecompressionStream:n}=t;if(typeof r!=re&&typeof n!=re)throw new d(ve);Ee.set(e,{CompressionStream:r,DecompressionStream:n})}const Ue=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?t>>>1^3988292384:t>>>1;Ue[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){const r=Ue[t-1][e];Ue[t][e]=r>>>8^Ue[0][255&r]}const[Ne,We,He,je,Ae,Pe,Me,Oe]=Ue;class Ie{constructor(e){this.l=e||-1}append(e){let t=0|this.l;const r=0|e.length;let n=0;if(r>=8&&e.buffer){const i=new m(e.buffer,e.byteOffset,r),o=r-8;for(;o>=n;n+=8){const e=t^i.getInt32(n,!0),r=i.getInt32(n+4,!0);t=Oe[255&e]^Me[e>>>8&255]^Pe[e>>>16&255]^Ae[e>>>24&255]^je[255&r]^He[r>>>8&255]^We[r>>>16&255]^Ne[r>>>24&255]}}for(;r>n;n++)t=t>>>8^Ne[255&(t^e[n])];this.l=t}get(){return~this.l}}class qe extends F{constructor(){let e;const t=new Ie;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new w(4);new m(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}function Ze(e){if(typeof g==te){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let r=0;r<t.length;r++)t[r]=e.charCodeAt(r);return t}return(new g).encode(e)}function Ke(e,t){const r=new w(e.length+t.length);return r.set(e),r.set(t,e.length),r}function Le(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function Be(e){return new m(e.buffer,e.byteOffset,e.byteLength)}const Ve={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const r=e[e.length-1],n=Ve.h(r);return 32===n?e.concat(t):Ve.m(t,n,0|r,e.slice(0,e.length-1))},S(e){const t=e.length;if(0===t)return 0;const r=e[t-1];return 32*(t-1)+Ve.h(r)},v(e,t){if(32*e.length<t)return e;const r=(e=e.slice(0,s.ceil(t/32))).length;return t&=31,r>0&&t&&(e[r-1]=Ve.F(t,e[r-1]&2147483648>>t-1,1)),e},F:(e,t,r)=>32===e?t:(r?0|t:t<<32-e)+1099511627776*e,h:e=>s.round(e/1099511627776)||32,m(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=Ve.h(i);return n.push(Ve.F(t+o&31,t+o>32?r:n.pop(),1)),n}},Ye={bytes:{R(e){const t=Ve.S(e)/8,r=new w(t);let n;for(let i=0;t>i;i++)3&i||(n=e[i/4]),r[i]=n>>>24,n<<=8;return r},D(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(Ve.F(8*(3&r),n)),t}}},Je=class{constructor(e){const t=this;t.blockSize=512,t.T=[1732584193,4023233417,2562383102,271733878,3285377520],t.C=[1518500249,1859775393,2400959708,3395469782],e?(t.U=e.U.slice(0),t.N=e.N.slice(0),t.W=e.W):t.reset()}reset(){const e=this;return e.U=e.T.slice(0),e.N=[],e.W=0,e}update(e){const t=this;"string"==typeof e&&(e=Ye.H.D(e));const r=t.N=Ve.concat(t.N,e),n=t.W,i=t.W=n+Ve.S(e);if(i>9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const o=new h(r);let s=0;for(let e=t.blockSize+n-(t.blockSize+n&t.blockSize-1);i>=e;e+=t.blockSize)t.j(o.subarray(16*s,16*(s+1))),s+=1;return r.splice(0,16*s),t}A(){const e=this;let t=e.N;const r=e.U;t=Ve.concat(t,[Ve.F(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e.W/4294967296)),t.push(0|e.W);t.length;)e.j(t.splice(0,16));return e.reset(),r}P(e,t,r,n){return e>19?e>39?e>59?e>79?void 0:t^r^n:t&r|t&n|r&n:t^r^n:t&r|~t&n}M(e,t){return t<<e|t>>>32-e}j(e){const r=this,n=r.U,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let o=n[0],a=n[1],c=n[2],l=n[3],f=n[4];for(let e=0;79>=e;e++){16>e||(i[e]=r.M(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=r.M(5,o)+r.P(e,a,c,l)+f+i[e]+r.C[s.floor(e/20)]|0;f=l,l=c,c=r.M(30,a),a=o,o=t}n[0]=n[0]+o|0,n[1]=n[1]+a|0,n[2]=n[2]+c|0,n[3]=n[3]+l|0,n[4]=n[4]+f|0}},Ge={importKey:e=>new Ge.O(Ye.bytes.D(e)),I(e,t,r,n){if(r=r||1e4,0>n||0>r)throw new d("invalid params to pbkdf2");const i=1+(n>>5)<<2;let o,s,a,c,l;const f=new ArrayBuffer(i),u=new m(f);let w=0;const p=Ve;for(t=Ye.bytes.D(t),l=1;(i||1)>w;l++){for(o=s=e.encrypt(p.concat(t,[l])),a=1;r>a;a++)for(s=e.encrypt(s),c=0;c<s.length;c++)o[c]^=s[c];for(a=0;(i||1)>w&&a<o.length;a++)u.setInt32(w,o[a]),w+=4}return f.slice(0,n/8)},O:class{constructor(e){const t=this,r=t.Z=Je,n=[[],[]];t.K=[new r,new r];const i=t.K[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.K[0].update(n[0]),t.K[1].update(n[1]),t.L=new r(t.K[0])}reset(){const e=this;e.L=new e.Z(e.K[0]),e.B=!1}update(e){this.B=!0,this.L.update(e)}digest(){const e=this,t=e.L.A(),r=new e.Z(e.K[1]).update(t).A();return e.reset(),r}encrypt(e){if(this.B)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Xe=typeof S!=te&&typeof S.getRandomValues==re,Qe="Invalid password",_e="Invalid signature",$e="zipjs-abort-check-password";function et(e){if(Xe)return S.getRandomValues(e);throw new d("Crypto API not supported")}const tt=16,rt={name:"PBKDF2"},nt=r.assign({hash:{name:"HMAC"}},rt),it=r.assign({iterations:1e3,hash:{name:"SHA-1"}},rt),ot=["deriveBits"],st=[8,12,16],at=[16,24,32],ct=10,lt=[0,0,0,0],ft=typeof S!=te,ut=ft&&S.subtle,dt=ft&&typeof ut!=te,wt=Ye.bytes,pt=class{constructor(e){const t=this;t.V=[[[],[],[],[],[]],[[],[],[],[],[]]],t.V[0][0][0]||t.Y();const r=t.V[0][4],n=t.V[1],i=e.length;let o,s,a,c=1;if(4!==i&&6!==i&&8!==i)throw new d("invalid aes key size");for(t.C=[s=e.slice(0),a=[]],o=i;4*i+28>o;o++){let e=s[o-1];(o%i===0||8===i&&o%i===4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],o%i===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),s[o]=s[o-i]^e}for(let e=0;o;e++,o--){const t=s[3&e?o:o-4];a[e]=4>=o||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.J(e,0)}decrypt(e){return this.J(e,1)}Y(){const e=this.V[0],t=this.V[1],r=e[4],n=t[4],i=[],o=[];let s,a,c,l;for(let e=0;256>e;e++)o[(i[e]=e<<1^283*(e>>7))^e]=e;for(let f=s=0;!r[f];f^=a||1,s=o[s]||1){let o=s^s<<1^s<<2^s<<3^s<<4;o=o>>8^255&o^99,r[f]=o,n[o]=f,l=i[c=i[a=i[f]]];let u=16843009*l^65537*c^257*a^16843008*f,d=257*i[o]^16843008*o;for(let r=0;4>r;r++)e[r][f]=d=d<<24^d>>>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)}J(e,t){if(4!==e.length)throw new d("invalid aes block size");const r=this.C[t],n=r.length/4-2,i=[0,0,0,0],o=this.V[t],s=o[0],a=o[1],c=o[2],l=o[3],f=o[4];let u,w,p,h=e[0]^r[0],m=e[t?3:1]^r[1],y=e[2]^r[2],b=e[t?1:3]^r[3],g=4;for(let e=0;n>e;e++)u=s[h>>>24]^a[m>>16&255]^c[y>>8&255]^l[255&b]^r[g],w=s[m>>>24]^a[y>>16&255]^c[b>>8&255]^l[255&h]^r[g+1],p=s[y>>>24]^a[b>>16&255]^c[h>>8&255]^l[255&m]^r[g+2],b=s[b>>>24]^a[h>>16&255]^c[m>>8&255]^l[255&y]^r[g+3],g+=4,h=u,m=w,y=p;for(let e=0;4>e;e++)i[t?3&-e:e]=f[h>>>24]<<24^f[m>>16&255]<<16^f[y>>8&255]<<8^f[255&b]^r[g++],u=h,h=m,m=y,y=b,b=u;return i}},ht=class{constructor(e,t){this.G=e,this.X=t,this._=t}reset(){this._=this.X}update(e){return this.$(this.G,e,this._)}ee(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}te(e){0===(e[0]=this.ee(e[0]))&&(e[1]=this.ee(e[1]))}$(e,t,r){let n;if(!(n=t.length))return[];const i=Ve.S(t);for(let i=0;n>i;i+=4){this.te(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 Ve.v(t,i)}},mt=Ge.O;let yt=ft&&dt&&typeof ut.importKey==re,bt=ft&&dt&&typeof ut.deriveBits==re;class gt extends F{constructor({password:e,rawPassword:t,encryptionStrength:r,checkPasswordOnly:n}){super({start(){kt(this,e,t,r)},async transform(e,t){const r=this,{password:i,strength:o,re:s,ready:a}=r;i?(await(async(e,t,r,n)=>{const i=await vt(e,t,r,zt(n,0,st[t])),o=zt(n,st[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new d(Qe)})(r,o,i,zt(e,0,st[o]+2)),e=zt(e,st[o]+2),n?t.error(new d($e)):s()):await a;const c=new w(e.length-ct-(e.length-ct)%tt);t.enqueue(St(r,e,c,0,ct,!0))},async flush(e){const{ne:t,ie:r,pending:n,ready:i}=this;if(r&&t){await i;const o=zt(n,0,n.length-ct),s=zt(n,n.length-ct);let a=ne;if(o.length){const e=Et(wt,o);r.update(e);const n=t.update(e);a=Rt(wt,n)}const c=zt(Rt(wt,r.digest()),0,ct);let l=n.length<ct?1:0;for(let e=0;ct>e;e++)l|=c[e]^s[e];if(l)throw new d(_e);e.enqueue(a)}}})}}class xt extends F{constructor({password:e,rawPassword:t,encryptionStrength:r}){let n;super({start(){kt(this,e,t,r)},async transform(e,t){const r=this,{password:n,strength:i,re:o,ready:s}=r;let a=ne;n?(a=await(async(e,t,r)=>{const n=et(new w(st[t]));return Ke(n,await vt(e,t,r,n))})(r,i,n),o()):await s;const c=new w(a.length+e.length-e.length%tt);c.set(a,0),t.enqueue(St(r,e,c,a.length,0))},async flush(e){const{ne:t,ie:r,pending:i,ready:o}=this;if(r&&t){await o;let s=ne;if(i.length){const e=t.update(Et(wt,i));r.update(e),s=Rt(wt,e)}n.signature=Rt(wt,r.digest()).slice(0,ct),e.enqueue(Ke(s,n.signature))}}}),n=this}}function kt(e,t,n,i){r.assign(e,{ready:new b(t=>e.re=t),password:Ft(t,n),strength:i-1,pending:ne})}function St(e,t,r,n,i,o){const{ne:s,ie:a,pending:c}=e;c.length&&(t=Ke(c,t));const l=t.length-i;let f;for(r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new w(t)).set(r,0)}return e})(r,n+(l-l%tt)),f=0;l-tt>=f;f+=tt){const e=Et(wt,zt(t,f,f+tt));o&&a.update(e);const i=s.update(e);o||a.update(i),r.set(Rt(wt,i),f+n)}return e.pending=zt(t,f),r}async function vt(e,n,i,o){e.password=null;const s=await(async(e,t,r,n,i)=>{if(!yt)return Ge.importKey(t);try{return await ut.importKey("raw",t,r,!1,i)}catch{return yt=!1,Ge.importKey(t)}})(0,i,nt,0,ot),a=await(async(e,t,r)=>{if(!bt)return Ge.I(t,e.salt,it.iterations,r);try{return await ut.deriveBits(e,t,r)}catch{return bt=!1,Ge.I(t,e.salt,it.iterations,r)}})(r.assign({salt:o},it),s,8*(2*at[n]+2)),c=new w(a),l=Et(wt,zt(c,0,at[n])),f=Et(wt,zt(c,at[n],2*at[n])),u=zt(c,2*at[n]);return r.assign(e,{keys:{key:l,oe:f,passwordVerification:u},ne:new ht(new pt(l),t.from(lt)),ie:new mt(f)}),u}function Ft(e,t){return t===$?Ze(e):t}function zt(e,t,r){return e.subarray(t,r)}function Rt(e,t){return e.R(t)}function Et(e,t){return e.D(t)}class Dt extends F{constructor({password:e,rawPassword:t,passwordVerification:r,checkPasswordOnly:n}){super({start(){Ct(this,e,t,r)},transform(e,t){const r=this;if(r.password||r.rawPassword){const t=Ut(r,e.subarray(0,12));if(r.password=r.rawPassword=null,0!=(t.at(-1)^r.passwordVerification))throw new d(Qe);e=e.subarray(12)}n?t.error(new d($e)):t.enqueue(Ut(r,e))}})}}class Tt extends F{constructor({password:e,rawPassword:t,passwordVerification:r}){super({start(){Ct(this,e,t,r)},transform(e,t){const r=this;let n,i;if(r.password||r.rawPassword){r.password=r.rawPassword=null;const t=et(new w(12));t[11]=r.passwordVerification,n=new w(e.length+t.length),n.set(Nt(r,t),0),i=12}else n=new w(e.length),i=0;n.set(Nt(r,e),i),t.enqueue(n)}})}}function Ct(e,t,n,i){r.assign(e,{password:t,rawPassword:n,passwordVerification:i}),((e,t,n)=>{const i=[305419896,591751049,878082192];if(r.assign(e,{keys:i,se:new Ie(i[0]),ae:new Ie(i[2])}),n)for(let t=0;t<n.length;t++)Wt(e,n[t]);else for(let r=0;r<t.length;r++)Wt(e,t.charCodeAt(r))})(e,t,n)}function Ut(e,t){const r=new w(t.length);for(let n=0;n<t.length;n++)r[n]=Ht(e)^t[n],Wt(e,r[n]);return r}function Nt(e,t){const r=new w(t.length);for(let n=0;n<t.length;n++)r[n]=Ht(e)^t[n],Wt(e,t[n]);return r}function Wt(e,t){let[,r]=e.keys;e.se.append([t]);const n=~e.se.get();r=At(s.imul(At(r+jt(n)),134775813)+1),e.ae.append([r>>>24]);const i=~e.ae.get();e.keys=[n,r,i]}function Ht(e){const t=2|e.keys[2];return jt(s.imul(t,1^t)>>>8)}function jt(e){return 255&e}function At(e){return 4294967295&e}const Pt="Invalid uncompressed size",Mt="Invalid compressed data";class Ot extends F{constructor(e,{chunkSize:t,CompressionStreamZlib:r,CompressionStream:n}){super({});const{compressed:i,encrypted:o,useCompressionStream:s,zipCrypto:a,signed:c,level:l,deflate64:f,format:u}=e,d=this;let w,p,h,y=super.readable;const b=u&&Te(u),g=c&&i&&!f&&!b&&(!o||a)&&!(!s||!n);o&&!a||!c||g||(w=new qe,y=Bt(y,w)),i&&(b?y=Vt(y,Kt(b.CompressionStream,u,{level:l,chunkSize:t})):g?(h=new It,y=Vt(y,new n("gzip")),y=Bt(y,h)):y=Lt(y,s,{level:l,chunkSize:t},n,r,n)),o&&(a?y=Bt(y,new Tt(e)):(p=new xt(e),y=Bt(y,p))),Zt(d,y,()=>{let e;o&&!a&&(e=p.signature),o&&!a||!c||(e=g?h.signature:new m(w.value.buffer).getUint32(0)),d.signature=e})}}class It extends F{constructor(){let e,t=10,r=new w(0);super({transform(e,n){if(t){const r=s.min(t,e.length);if(t-=r,!(e=e.subarray(r)).length)return}const i=r.length+e.length;if(8>=i)return void(r=Ke(r,e));const o=i-8,a=s.min(o,r.length);n.enqueue(Ke(r.subarray(0,a),e.subarray(0,o-a))),r=Ke(r.subarray(a),e.subarray(o-a))},flush(){const t=Be(r);e.signature=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class qt extends F{constructor(e,{chunkSize:t,DecompressionStreamZlib:r,DecompressionStream:n}){super({});const{zipCrypto:i,encrypted:o,signed:s,signature:a,compressed:c,useCompressionStream:l,deflate64:f,format:u}=e;let w,p,h=super.readable;if(o&&(i?h=Bt(h,new Dt(e)):(p=new gt(e),h=Bt(h,p))),c){const e=u&&Te(u);h=e?Vt(h,Kt(e.DecompressionStream,u,{chunkSize:t})):Lt(h,l,{chunkSize:t,deflate64:f},n,r,n),h=(e=>{const t=e.getReader();return new z({async pull(e){let r;try{r=await t.read()}catch(e){if(e&&e.message)throw e;const t=new d(Mt);throw t.cause=e,t}const{value:n,done:i}=r;i?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})})(h)}o&&!i||!s||(w=new qe,h=Bt(h,w)),Zt(this,h,()=>{if((!o||i)&&s){const e=new m(w.value.buffer);if(a!=e.getUint32(0,!1))throw new d(_e)}})}}function Zt(e,t,n){t=Bt(t,new F({flush:n})),r.defineProperty(e,"readable",{get:()=>t})}function Kt(e,t,r){if(!e)throw new d("Compression method not supported");return new e(t,r)}function Lt(e,t,r,n,i,o){const s=t&&n?n:i||o,a=r.deflate64?"deflate64-raw":"deflate-raw";let c;try{c=new s(a,r)}catch(e){if(!t)throw e;if(i)c=new i(a,r);else{if(!o)throw e;c=new o(a,r)}}return Vt(e,c)}function Bt(e,t){return e.pipeThrough(t)}function Vt(e,t){const r=t.writable.getWriter(),n=e.getReader();return(async()=>{try{for(;;){await r.ready;const e=await n.read();if(e.done){await r.close();break}await r.write(e.value)}}catch(e){await(async(e,t)=>{try{await e.abort(t)}catch{}})(r,e),await(async(e,t)=>{try{await e.cancel(t)}catch{}})(n,e)}})(),t.readable}const Yt="data",Jt="deflate",Gt="inflate";class Xt extends F{constructor(e,t){super({});const n=this,{codecType:i}=e;let o;i.startsWith(Jt)?o=Ot:i.startsWith(Gt)&&(o=qt),n.outputSize=0;let s=0;const a=new o(e,t),c=super.readable,l=new F({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){r.assign(n,{inputSize:s})}}),f=new F({transform(t,r){if(t&&t.length&&(r.enqueue(t),n.outputSize+=t.length,e.outputSize!==$&&n.outputSize>e.outputSize))throw new d(Pt)},flush(){const{signature:e}=a;r.assign(n,{signature:e,inputSize:s})}});r.defineProperty(n,"readable",{get:()=>c.pipeThrough(l).pipeThrough(a).pipeThrough(f)})}}class Qt extends F{constructor(e){const t=[];let r=0;function n(){const n=new w(e);let i=0;for(;e>i;){const r=t[0],o=e-i;r.length>o?(n.set(r.subarray(0,o),i),t[0]=r.subarray(o),i+=o):(n.set(r,i),i+=r.length,t.shift())}return r-=e,n}i.isFinite(e)&&e>=1||(e=65536),super({transform(i,o){for(t.push(i),r+=i.length;r>e;)o.enqueue(n())},flush(e){r&&e.enqueue(((e,t)=>{const r=new w(t);let n=0;for(const t of e)r.set(t,n),n+=t.length;return r})(t,r))}})}}const _t={type:"module"},$t="error";let er,tr,rr,nr,ir=!0;try{ir=typeof structuredClone==re&&structuredClone(new DOMException("","AbortError")).code!==$}catch{}class or{constructor(e,{readable:t,writable:n},{options:i,config:o,ce:s,useWebWorkers:a,transferStreams:c,workerURI:l},f){const{signal:u}=s;return r.assign(e,{le:!0,fe:(e.fe||0)+1,readable:t.pipeThrough(new Qt(le(o))).pipeThrough(new sr(s),{signal:u}),writable:n,options:r.assign({},i),workerURI:l,transferStreams:c,terminate:()=>new b(t=>{const{ue:r,le:n}=e;r?(n?e.de=t:(r.terminate(),t()),e.we=null):t()}),pe(){if(e.le){const{de:t}=e;t&&(e.de=null,e.he=!0,e.ue.terminate(),t()),e.le=!1,f(e)}}}),er===$&&(er=typeof C!=te),(a&&er?lr:cr)(e,o)}}class sr extends F{constructor({onstart:e,onprogress:t,size:r,onend:n}){let i=0;super({async start(){e&&await ar(e,r)},async transform(e,n){i+=e.length,t&&await ar(t,i,r),n.enqueue(e)},async flush(){n&&await ar(n,i)}})}}async function ar(e,...t){try{await e(...t)}catch{}}function cr(e,t){return{run:()=>(async({options:e,readable:t,writable:r,pe:n},i)=>{let o;try{if(!e.useCompressionStream)try{await void 0}catch{const t=e.codecType.startsWith(Jt)?i.CompressionStreamZlib:i.DecompressionStreamZlib;t&&!t.me||(e.useCompressionStream=!0)}o=new Xt(e,i),await t.pipeThrough(o).pipeThrough(new Qt(le(i))).pipeTo(r,{preventClose:!0,preventAbort:!0});const{signature:n,inputSize:s,outputSize:a}=o;return{signature:n,inputSize:s,outputSize:a}}catch(e){throw o&&(e.outputSize=o.outputSize),e}finally{n()}})(e,t)}}function lr(e,t){const{baseURI:n,chunkSize:i}=t;let{wasmURI:o}=t;if(!e.we){let s;typeof o==re&&(o=o());try{s=ur(e.workerURI,n,e)}catch{return er=!1,cr(e,t)}r.assign(e,{ue:s,he:!1,we:{run:()=>(async(e,t)=>{let n,i;const o=new b((e,t)=>{n=e,i=t});r.assign(e,{reader:null,writer:null,ye:n,be:i,result:o});const{readable:s,options:a}=e,{writable:c,closed:l,ge:f}=(e=>{const t=new AbortController,{writable:r,readable:n}=new F,i=n.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return i.catch(()=>{}),{writable:r,closed:i,ge:()=>t.abort()}})(e.writable);let u;try{u=wr({type:"start",options:a,config:t,readable:s,writable:c},e)}catch(t){f();try{await l}catch{}throw e.pe(),t}u||r.assign(e,{reader:s.getReader(),writer:c.getWriter()});try{const e=await o;return await d(),await l,e}catch(e){await d(),f();try{await l}catch{}throw e}async function d(){if(!u&&!c.locked)try{await c.getWriter().close()}catch{}}})(e,{chunkSize:i,wasmURI:o,baseURI:n})}})}return e.we}function fr(e){const{ue:t}=e;if(t)try{t.terminate()}catch{}e.we=null}function ur(e,t,n,i,o=!0){let s,a,c;if(rr===$||tr!==e){const r=typeof e==re;a=r?e(o):e;const l=a.startsWith("data:"),f=a.startsWith("blob:");if(l||f){i===$&&(i=!1),i&&(c=_t);try{s=new C(a,c)}catch(o){if(f)try{u.revokeObjectURL(a)}catch{}if(r&&f)return ur(e,t,n,i,!1);if(i)throw o;return ur(e,t,n,!0,!1)}}else{i===$&&(i=!0),i&&(c=_t);try{a=new u(a,t)}catch{}try{s=new C(a,c)}catch(r){if(i)throw r;return ur(e,t,n,!1,o)}}tr=e,rr=a,nr=c}else s=new C(rr,nr);return s.addEventListener("message",e=>(async({data:e},t)=>{const{type:n,value:i,messageId:o,result:s,error:a}=e,{reader:c,writer:l,ye:f,be:u,pe:p,fe:h}=t,m=()=>t.fe!=h;try{if(a){const{message:e,stack:t,code:n,name:i,outputSize:o}=a,s=new d(e);r.assign(s,{stack:t,code:n,name:i,outputSize:o}),y(s)}else{if("pull"==n){const{value:e,done:r}=await c.read();m()||wr({type:Yt,value:e,done:r,messageId:o},t)}n==Yt&&(await l.ready,await l.write(new w(i)),m()||wr({type:"ack",messageId:o},t)),"close"==n&&y(null,s)}}catch(a){m()||(fr(t),y(a))}function y(e,t){m()||(e?u(e):f(t),l&&l.releaseLock(),p())}})(e,n)),s.addEventListener($t,e=>dr(e,n)),s.addEventListener("messageerror",e=>dr(e,n)),s}function dr(e,t){e.preventDefault&&e.preventDefault();const{be:r,writer:n,pe:i}=t;fr(t),r&&(r(e.error||new d(e.message||$t)),n&&n.releaseLock(),i())}function wr(e,{ue:t,writer:r,transferStreams:n}){try{const{value:r,readable:i,writable:o}=e,s=[];if(r&&(e.value=Le(r),s.push(e.value.buffer)),n&&ir?(i&&s.push(i),o&&s.push(o)):e.readable=e.writable=null,s.length)try{return t.postMessage(e,s),!0}catch{ir=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw r&&r.releaseLock(),e}}let pr=[];const hr=[];let mr,yr,br=0;async function gr(e,t){const{options:r,config:n}=t,{transferStreams:o,useWebWorkers:s,useCompressionStream:a,compressed:c,signed:l,encrypted:f,format:d,codecURI:w}=r,{workerURI:p,maxWorkers:h}=n;d&&(w&&(r.codecURI=((e,t)=>{try{return new u(e,t).toString()}catch{return e}})(w,n.baseURI)),await(async(e,t)=>{!Ee.has(e)&&t&&Ce(e,await(import(t)))})(d,r.codecURI)),t.transferStreams=o||o===$&&n.transferStreams;const m=!c&&!l&&!f,y=d===$||!!r.codecURI;return t.useWebWorkers=!m&&y&&(s||s===$&&n.useWebWorkers),t.workerURI=t.useWebWorkers&&p?p:$,r.useCompressionStream=a||a===$&&n.useCompressionStream,(await(async()=>{const r=pr.find(e=>!e.le);if(r)return Fr(r),new or(r,e,t,g);if(pr.length<h){const r={xe:br};return br++,pr.push(r),new or(r,e,t,g)}return new b(r=>{hr.push({resolve:r,stream:e,ke:t}),yr=n.workerStarvationTimeout,xr()})})()).run();function g(e){if(kr(),hr.length){const[{resolve:t,stream:r,ke:n}]=hr.splice(0,1);t(new or(e,r,n,g)),xr()}else e.ue?(Fr(e),((e,t)=>{const{config:r}=t,{terminateWorkerTimeout:n}=r;i.isFinite(n)&&n>=0&&(e.he?e.he=!1:e.Se=setTimeout(async()=>{pr=pr.filter(t=>t!=e);try{await e.terminate()}catch{}},n))})(e,t)):pr=pr.filter(t=>t!=e)}}function xr(){!mr&&hr.length&&i.isFinite(yr)&&yr>=0&&(mr=setTimeout(Sr,yr))}function kr(){mr&&(clearTimeout(mr),mr=null)}function Sr(){if(mr=null,hr.length){const[{resolve:e,stream:t,ke:n}]=hr.splice(0,1),i=r.assign({},n,{useWebWorkers:!1,workerURI:$});e(new or({},t,i,vr)),xr()}}function vr(){kr(),xr()}function Fr(e){const{Se:t}=e;t&&(clearTimeout(t),e.Se=null)}const zr="HTTP error ",Rr="HTTP Range not supported",Er="HTTP resource changed",Dr="Writer iterator completed too soon",Tr="Writer not initialized",Cr="Content-Range",Ur="Range",Nr="GET",Wr="bytes",Hr=16777216,jr="writable",Ar=Symbol();class Pr{constructor(){this.size=0}init(){this.initialized=!0}}class Mr extends Pr{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:r=le(ce())}={}){const n=this;let i=0;return new z({async pull(o){const a=t===$?r:s.min(r,t-i),c=await pn(n,e+i,a);o.enqueue(c),i+r>t||t===$&&!c.length&&a?o.close():i+=r}})}}class Or extends Pr{constructor(){super();const e=this,t=new R({write(t){if(!e.initialized)throw new d(Tr);return e.writeUint8Array(Le(t))}});r.defineProperty(e,jr,{get:()=>t})}writeUint8Array(){}}let Ir,qr;class Zr extends Mr{constructor(e){super(),r.assign(this,{blob:e,size:e.size}),qr||(qr=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,r=await e.read();for(;!r.done;)t+=r.value.length,r=await e.read();Ir=1==t}catch{Ir=!1}})())}createReadable(e){const{blob:t,size:r}=this,{offset:n=0,size:i=r-n}=e||{};return n||r>i?Ir?t.slice(n,n+i).stream():super.createReadable(e):t.stream()}async readUint8Array(e,t){const r=this,n=e+t,i=e||n<r.size?r.blob.slice(e,n):r.blob;let o=await i.arrayBuffer();return o.byteLength>t&&(o=o.slice(e,n)),new w(o)}}class Kr extends Pr{constructor(e){super();const t=this,n=new F,i=[];e&&i.push(["Content-Type",e]),r.defineProperty(t,jr,{get:()=>n.writable}),t.blob=new f(n.readable,{headers:i}).blob(),t.blob.catch(()=>{})}getData(){return this.blob}}class Lr extends Mr{constructor(e,t){super(),Vr(this,e,t)}async init(){await Yr(this,sn,tn),super.init()}createReadable(e){const t=this,{useRangeHeader:r,forceRangeRequests:n,size:o}=t;if((r||n)&&o!==$){const{offset:r=0,size:n=o-r}=e||{};if(n>0&&o>r)return((e,t,r)=>{let n,o=t,a=0,c=r;return new z({start:()=>l(),async pull(e){n||await l();const{value:t,done:r}=await n.read();if(r)throw new d(Rr);const i=t.length>a?t.subarray(0,a):t;a-=i.length,c-=i.length,i.length&&e.enqueue(i),a||(await(async()=>{const e=n;n=$,await e.cancel()})(),c||e.close())},cancel:e=>n&&n.cancel(e)});async function l(){const t=s.min(e.maximumRangeSize,c),r=await sn(Nr,e,$r(e,o,t));if(206!=r.status)throw new d(Rr);const l=r.headers.get(Cr);if(l){const e=i(l.trim().split(/[\s-]+/)[1]);if(!i.isNaN(e)&&e!=o)throw new d(Rr)}_r(e,r),Qr(e,r),o+=t,a=t,n=r.body.getReader()}})(t,r,s.min(n,o-r))}return super.createReadable(e)}readUint8Array(e,t){return Jr(this,e,t,sn,tn)}}class Br extends Mr{constructor(e,t){super(),Vr(this,e,t)}async init(){await Yr(this,an,rn),super.init()}readUint8Array(e,t){return Jr(this,e,t,an,rn)}}function Vr(e,t,n){const{preventHeadRequest:i,useRangeHeader:o,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c=!0,maximumRangeSize:l=Hr,fetch:f}=n;delete(n=r.assign({},n)).preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.combineSizeEocd,delete n.checkResourceChanges,delete n.maximumRangeSize,delete n.useXHR,delete n.fetch,r.assign(e,{url:t,options:n,preventHeadRequest:i,useRangeHeader:o,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c,maximumRangeSize:l,fetch:f})}async function Yr(e,t,r){const{url:n,preventHeadRequest:i,useRangeHeader:o,forceRangeRequests:s,combineSizeEocd:a}=e;if((e=>{const{baseURI:t}=ce(),{protocol:r}=new u(e,t);return"http:"==r||"https:"==r})(n)&&(o||s)&&(void 0===i||i)){const n=await t(Nr,e,$r(e,a?-22:void 0)),i=n.headers.get("Accept-Ranges");if(!(s||i&&i.toLowerCase()==Wr))throw new d(Rr);{if(a){const t=new w(await n.arrayBuffer());206==n.status&&t.length==Z&&(e.ve=t)}Qr(e,n);const i=Gr(n);i===$?await on(e,t,r):e.size=i}}else await on(e,t,r)}async function Jr(e,t,r,n,o){const{useRangeHeader:s,forceRangeRequests:a,ve:c,size:l,options:f}=e;if(s||a){if(c&&t==l-Z&&r==Z)return c;if(l>t&&0!==r){t+r>l&&(r=l-t);const o=await n(Nr,e,$r(e,t,r));if(206!=o.status)throw new d(Rr);const s=o.headers.get(Cr);if(s){const e=i(s.trim().split(/[\s-]+/)[1]);if(!i.isNaN(e)&&e!=t)throw new d(Rr)}_r(e,o),Qr(e,o);const a=new w(await o.arrayBuffer());if(a.length!=r)throw new d(Rr);return a}return ne}{const{data:n}=e;return n||await o(e,f),e.data.subarray(t,t+r)}}function Gr(e){const t=e.headers.get(Cr);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=i(e);if(!i.isNaN(t))return t}}}function Xr({headers:e}){return{Fe:e.get("Etag")||$,lastModified:e.get("Last-Modified")||$}}function Qr(e,t){const{checkResourceChanges:r,ze:n}=e;r&&!n&&206==t.status&&(e.ze=Xr(t))}function _r(e,t){const{checkResourceChanges:n,ze:i,size:o}=e;if(n){const e=Gr(t);if(e!==$&&o!==$&&e!=o)throw new d(Er);if(i){const e=Xr(t);if(r.entries(i).some(([t,r])=>r!==$&&e[t]!==$&&r!=e[t]))throw new d(Er)}}}function $r(e,t=0,n=1){return r.assign({},en(e),{[Ur]:Wr+"="+(0>t?t:t+"-"+(t+n-1))})}function en({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?r.fromEntries(t):t}async function tn(e){await nn(e,sn)}async function rn(e){await nn(e,an)}async function nn(e,t){const r=await t(Nr,e,en(e));e.data=new w(await r.arrayBuffer()),e.size=e.data.length}async function on(e,t,r){if(e.preventHeadRequest)await r(e,e.options);else{const n=await t("HEAD",e,en(e)),o=n.headers.get("Content-Length");o&&!n.headers.get("Content-Encoding")?e.size=i(o):await r(e,e.options)}}async function sn(e,{fetch:t=fetch,options:n,url:i},o){const s=await t(i,r.assign({},n,{method:e,headers:o}));if(400>s.status)return s;throw 416==s.status?new d(Rr):new d(zr+(s.statusText||s.status))}function an(e,{url:t},n){return new b((i,o)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const r=t.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(r)}),i({status:s.status,arrayBuffer:()=>s.response,headers:new c(e)})}else o(416==s.status?new d(Rr):new d(zr+(s.statusText||s.status)))},!1),s.addEventListener("error",e=>o(e.detail?e.detail.error:new d("Network error")),!1),s.open(e,t),n)for(const e of r.entries(n))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()})}class cn extends Mr{constructor(e,t={}){super(),r.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Br(e,t):new Lr(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(e){return this.reader.createReadable(e)}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class ln extends Mr{constructor(e){super(),this.Re=e}async init(){const e=this,{Re:t}=e;e.Ee=0,await b.all(t.map(e=>wn(e))),e.De=t.map(t=>{const r=e.size;return e.size+=t.size,r}),super.init()}Te(e){const{De:t,size:r}=this,n=t.at(e);return n===$?r:n}async readUint8Array(e,t){const r=this,{Re:n}=this;let i,o=0,a=e;for(;n[o]&&a>=n[o].size;)a-=n[o].size,o++;const c=n[o];if(c){const n=c.size;if(a+t>n){const o=n-a;i=Ke(await pn(c,a,o),await r.readUint8Array(e+o,t-o))}else i=await pn(c,a,t)}else i=ne;return r.Ee=s.max(o,r.Ee),i}}class fn extends Pr{constructor(e,t=4294967295){super();const n=this;let i,o,s;r.assign(n,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const a=new R({async write(t){if(t===Ar)return void(s&&await l());const{availableSize:r}=n;if(s)t.length<r?await c(t):(await c(t.subarray(0,r)),await l(),t.length>r&&await this.write(t.subarray(r)));else{const{value:r,done:a}=await e.next();if(a&&!r)throw new d(Dr);i=r,i.size=0,i.maxSize&&(n.maxSize=i.maxSize),n.availableSize=n.maxSize,await wn(i),o=r.writable,s=o.getWriter(),await this.write(t)}},async close(){s&&(await s.ready,await f())},async abort(e){s&&await s.abort(e)}});async function c(e){const t=e.length;t&&(await s.ready,await s.write(e),i.size+=t,n.availableSize-=t)}async function l(){await f(),n.diskOffset+=i.size,n.diskNumber++,s=null,n.availableSize=n.maxSize}async function f(){await s.close()}r.defineProperty(n,jr,{get:()=>a})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(Ar)}finally{e.releaseLock()}}}class un{constructor(e){return t.isArray(e)&&(e=new ln(e)),e instanceof z&&(e={readable:e}),e}}class dn{constructor(e){return e.writable===$&&typeof e.next==re&&(e=new fn(e)),e instanceof R&&(e={writable:e}),e.size===$&&(e.size=0),e}}async function wn(e,t){if(!e.init||e.initialized)return b.resolve();await e.init(t)}function pn(e,t,r){return e.readUint8Array(t,r)}const hn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function mn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let r=0;r<e.length;r++)t+=hn[e[r]];return t}})(e):new x(t,{ignoreBOM:!0}).decode(e)}const yn="filename",bn="rawFilename",gn="comment",xn="rawComment",kn="uncompressedSize",Sn="compressedSize",vn="offset",Fn="diskNumberStart",zn="lastModDate",Rn="rawLastModDate",En="lastAccessDate",Dn="creationDate",Tn="rawCreationDate",Cn="internalFileAttributes",Un="externalFileAttributes",Nn="msdosAttributesRaw",Wn="msdosAttributes",Hn="msDosCompatible",jn="zip64",An="encrypted",Pn="version",Mn="versionMadeBy",On="zipCrypto",In="directory",qn="executable",Zn="compressionMethod",Kn="signature",Ln="extraField",Bn="unixMode",Vn="setuid",Yn="setgid",Jn="sticky",Gn=[yn,bn,kn,Sn,zn,Rn,gn,xn,En,Dn,Tn,vn,Fn,Cn,Un,Nn,Wn,Hn,jn,An,Pn,Mn,On,In,qn,Zn,Kn,Ln,"extraFieldUnix","extraFieldInfoZip","uid","gid",Bn,Vn,Yn,Jn,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class Xn{constructor(e){Gn.forEach(t=>this[t]=e[t])}}const Qn="password",_n="rawPassword",$n="passThrough",ei="signal",ti="checkAmbiguity",ri="useWebWorkers",ni="useCompressionStream",ii="transferStreams",oi="preventClose",si="offset",ai="usdz",ci="strictness",li="strict",fi="tolerant",ui="File format is not recognized",di="End of central directory not found",wi="End of Zip64 central directory locator not found",pi="Central directory header not found",hi="Local file header not found",mi="Zip64 extra field not found",yi="File contains encrypted entry",bi="Encryption method not supported",gi="Compression method not supported",xi="Split zip file",ki="Overlapping entry found",Si="Ambiguous archive",vi="utf-8",Fi="cp437",zi=[[kn,N],[Sn,N],[vn,N],[Fn,W]],Ri={[W]:{Ce:Qi,bytes:4},[N]:{Ce:_i,bytes:8}};class Ei{constructor(e,t={}){r.assign(this,{reader:new un(e),options:t,config:ce(),Ue:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:n}=t;const{config:i}=t;if(await wn(n),n.size!==$&&n.readUint8Array||(n=new Zr(await new f(n.readable).blob()),await wn(n)),n.size<Z)throw new d(ui);const o=Ai(Vi(t,e,ci),Vi(t,e,ti)),a=o==li,c=o!=fi,u=((e,t)=>e!==$?e:t==li?0:t==fi?1/0:W)(Vi(t,e,"maxAppendedDataSize"),o),{Ne:w,We:p}=await(async(e,t,r)=>{const{size:n}=e,i=s.min(n,65557),o={count:Pi};let a,c,l=0;for await(const[r,s,f,u,d]of qi(e,i)){const i=Xi(r,u+20);if(d+Z+i==n){const i=await Ki(e,r,s,u,d,n,o);if(i==Ii){if(a||(a=Zi(f,u,d)),l++,!t||l>1)break}else i!=Oi||c||(c=Zi(f,u,d))}}return a||(a=c),a||(a=await(async(e,t,r)=>{const{size:n}=e,i=s.min(n,t==1/0?n:65557+t);let o,a;for await(const[t,s,c,l,f]of qi(e,i)){const i=Zi(c,l,f);o||(o=i);const u=await Ki(e,t,s,l,f,n,r);if(u==Ii)return i;u!=Oi||a||(a=i)}return a||o})(e,r,o)),{Ne:a,We:l}})(n,c,u);if(!w)throw Qi(Be(await pn(n,0,4)))==A?new d(xi):new d(di);c&&p>1&&Bi("multiple end of central directory records");const h=Be(w);let m=Qi(h,12),y=Qi(h,16);const g=w.offset,x=Xi(h,20),k=g+Z+x;n.size-k>u&&Bi("appended data");let S=Xi(h,4);const v=n.Ee||0;let z,R,E=Xi(h,6),D=Xi(h,10),T=0;const C=y==N||m==N||D==W||E==W;if(y!=N&&E!=W&&(y+=ji(n,E)),C){const e=w.offset<K?ne:await pn(n,w.offset-K,K),t=Be(e);if(e.length==K&&Qi(t,0)==q){y=ji(n,Qi(t,4))+_i(t,8);let e=await pn(n,y,56),r=Be(e);const i=w.offset-K-56;if((56>e.length||Qi(r,0)!=I)&&y!=i&&i>=0){const t=y;y=i,y>t&&(T=y-t),e=await pn(n,y,56),r=Be(e)}if(56>e.length||Qi(r,0)!=I)throw new d(wi);R=!0,S==W?S=Qi(r,16):a&&S!=Qi(r,16)&&Bi("mismatched zip64 end of central directory record"),E==W?E=Qi(r,20):a&&E!=Qi(r,20)&&Bi("mismatched zip64 end of central directory record"),D==W?D=_i(r,32):a&&D!=_i(r,32)&&Bi("mismatched zip64 end of central directory record"),m==N?m=_i(r,40):a&&m!=_i(r,40)&&Bi("mismatched zip64 end of central directory record"),y=ji(n,E)+_i(r,48)+T}}const U=m,j=w.offset-(R?76:0);if(y<n.size||(T=n.size-y-m-Z,y=n.size-m-Z),v!=S)throw new d(xi);if(0>y)throw new d(ui);let P=0,O=await pn(n,y,m),L=Be(O);if(m){if(4>O.length)throw new d(ui);const e=j-m;if(y!=e&&E==S){let t=!(Qi(L,P)==M);if(t||0>e||e+4>n.size||(t=Qi(Be(await pn(n,e,4)),0)==M),t){const t=y;y=e,y>t&&(T+=y-t),O=await pn(n,y,m),L=Be(O)}}}const B=j-y;if(m==B||0>B||E!=S||(m=B,O=await pn(n,y,m),L=Be(O)),0>y||y>=n.size)throw new d(ui);z=y;const X=Vi(t,e,"filenameEncoding"),Q=Vi(t,e,"commentEncoding"),_=a?new l:$;let ee;for(let o=0;D>o;o++){const c=new Ti(n,i,t.options);if(P+46>O.length||Qi(L,P)!=M)throw new d(pi);Ci(c,L,P+6);const l=!!c.bitFlag.languageEncodingFlag,u=P+46,w=u+c.filenameLength,p=w+c.extraFieldLength,h=Xi(L,P+4),m=!(h>>8),y=h>>8==3,g=O.subarray(u,w),x=Xi(L,P+32),k=p+x,S=O.subarray(p,k),v=l,R=l,E=Qi(L,P+38),C=E&H,U={readOnly:!!(1&C),hidden:!!(2&C),system:!!(4&C),directory:!!(16&C),archive:!!(32&C)},N=Qi(L,P+42),j=Vi(t,e,"decodeText")||mn,A=v?vi:X||Fi,I=R?vi:Q||Fi;let q=j(g,A);q===$&&(q=mn(g,A));let Z=j(S,I);Z===$&&(Z=mn(S,I)),r.assign(c,{index:o,versionMadeBy:h,msDosCompatible:m,compressedSize:0,uncompressedSize:0,He:x,offset:N,diskNumberStart:Xi(L,P+34),internalFileAttributes:Xi(L,P+36),externalFileAttributes:E,msdosAttributesRaw:C,msdosAttributes:U,rawFilename:g,filenameUTF8:v,commentUTF8:R,rawExtraField:O.subarray(w,p),rawComment:S,filename:q,comment:Z}),Ui(c,c,L,P+6),c.offset+=T,z=s.min(ji(n,c.diskNumberStart)+c.offset,z),a&&(_.has(c.filename)&&(ee=!0),_.add(c.filename));const K=c.externalFileAttributes>>16&W;c.unixMode===$&&16877&K&&(c.unixMode=K);const B=!!(c.unixMode&Y),te=!!(c.unixMode&J),re=!!(512&c.unixMode),ne=c.unixMode!==$?!!(73&c.unixMode):y&&!!(73&K),ie=c.unixMode!==$&&(61440&c.unixMode)==V,oe=(61440&K)==V;r.assign(c,{setuid:B,setgid:te,sticky:re,unixExternalUpper:K,internalFileAttribute:c.internalFileAttributes,externalFileAttribute:c.externalFileAttributes,executable:ne,directory:ie||oe||m&&U.directory||c.filename.endsWith(G)&&!c.uncompressedSize,zipCrypto:c.encrypted&&!c.extraFieldAES});const se=new Xn(c);se.getData=(e,r)=>c.getData(e,se,t.Ue,r),se.arrayBuffer=async e=>{const r=new F,[n]=await b.all([new f(r.readable).arrayBuffer(),c.getData(r,se,t.Ue,e)]);return n},P=k;const{onprogress:ae}=e;if(ae)try{await ae(o+1,D,new Xn(c))}catch{}yield se}a&&P!=U&&Bi("trailing central directory data"),ee&&Bi("duplicate filename"),a&&(T||D&&z>0)&&Bi("prepended data");const te=Vi(t,e,"extractPrependedData"),re=Vi(t,e,"extractAppendedData");return te&&(t.prependedData=z>0?await pn(n,0,z):ne),t.comment=x?await pn(n,g+Z,x):ne,re&&(t.appendedData=k<n.size?await pn(n,k,n.size-k):ne),!0}async getEntries(e={}){const t=[];for await(const r of this.getEntriesGenerator(e))t.push(r);return t}async close(){}}class Di{constructor(e={}){const{readable:t,writable:r}=new F,n=new Ei(t,e).getEntriesGenerator();this.readable=new z({async pull(e){const{done:t,value:r}=await n.next();if(t)return e.close();const i={...r,readable:(()=>{const{readable:e,writable:t}=new F;if(r.getData)return(async()=>{try{await r.getData(t)}catch(e){try{await t.abort(e)}catch{}}})(),e})()};delete i.getData,e.enqueue(i)}}),this.writable=r}}class Ti{constructor(e,t,n){r.assign(this,{reader:e,config:t,options:n})}async getData(e,t,r,n={}){const i=this,{reader:o,index:s,offset:a,diskNumberStart:c,extraFieldAES:l,extraFieldZip64:f,compressionMethod:u,config:w,bitFlag:p,signature:h,rawLastModDate:m,uncompressedSize:y,compressedSize:b}=i,{dataDescriptor:g}=p,x=t.localDirectory={},k=ji(o,c)+a,S=await pn(o,k,X),v=Be(S);let F=Vi(i,n,Qn),z=Vi(i,n,_n);const E=Vi(i,n,$n);if(F=F&&F.length&&F,z=z&&z.length&&z,l&&99!=l.originalCompressionMethod)throw new d(gi);const D=E?$:De(u);if(0!=u&&8!=u&&9!=u&&!D&&!E)throw new d(gi);if(S.length<X||Qi(v,0)!=j)throw new d(hi);Ci(x,v,4);const{extraFieldLength:T,filenameLength:C}=x,U=Ai(Vi(i,n,ci),Vi(i,n,ti))==li;let N=ne;if(U&&(C||T)){const e=await pn(o,k+X,C+T);N=e.subarray(0,C),x.rawExtraField=e.subarray(C)}else x.rawExtraField=T?await pn(o,k+X+C,T):ne;Ui(i,x,v,4,!0),U&&((e,t,r)=>{const{rawFilename:n}=e;(r.length!=n.length||r.some((e,t)=>e!=n[t]))&&Bi("mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&Bi("mismatched local file header (general purpose bit flag)"),t.compressionMethod!=e.compressionMethod&&Bi("mismatched local file header (compression method)"),t.bitFlag.dataDescriptor||!(t.signature||t.compressedSize||t.uncompressedSize)||t.signature==e.signature&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||Bi("mismatched local file header (signature or sizes)")})(i,x,N);const{lastAccessDate:W,creationDate:A}=x;W&&(t.lastAccessDate=W),A&&(t.creationDate=A);const M=i.encrypted&&x.encrypted&&!E,O=M&&!l;if(E||(t.zipCrypto=O),M){if(!O&&(1>l.strength||l.strength>3))throw new d(bi);if(!F&&!z)throw new d(yi)}const I=k+X+C+T,q=b,Z=o.createReadable({offset:I,size:q}),K=Vi(i,n,ei),L=Vi(i,n,"checkPasswordOnly");let B=Vi(i,n,"checkOverlappingEntry");const V=Vi(i,n,"checkOverlappingEntryOnly");V&&(B=!0);const{onstart:Y,onprogress:J,onend:G}=n,Q=9==u;let _=Vi(i,n,ni);Q&&(_=!1);const ee={options:{codecType:Gt,password:F,rawPassword:z,zipCrypto:O,encryptionStrength:l&&l.strength,signed:Vi(i,n,"checkSignature")&&!E,passwordVerification:O&&(g?m>>>8&H:h>>>24&H),outputSize:E?b:y,signature:h,compressed:0!=u&&!E,encrypted:M,useWebWorkers:Vi(i,n,ri),useCompressionStream:_,transferStreams:Vi(i,n,ii),deflate64:Q,format:D?D.format:$,codecURI:D?D.codecURI:$,checkPasswordOnly:L},config:w,ce:{signal:K,size:q,onstart:Y,onprogress:J,onend:G}};let te;B&&await(async({reader:e,je:t,index:r,offset:n,signature:i,compressedSize:o,uncompressedSize:s,Ae:a,dataDescriptor:c,extraFieldZip64:l,Ue:f})=>{let u=0;if(c&&(u=l?20:12),u){const r=await pn(e,a+o,u+4);if(r.length==u+4&&Qi(Be(r),0)==P){const e=Qi(Be(r),4);let n,a;l?(n=_i(Be(r),8),a=_i(Be(r),16)):(n=Qi(Be(r),8),a=Qi(Be(r),12)),(t.encrypted&&!t.zipCrypto||e==i)&&n==o&&a==s&&(u+=4)}}const w={start:n,end:a+o+u,je:t};for(const[e,t]of f)if(e!=r&&w.start<t.end&&t.start<w.end){const e=new d(ki);throw e.Pe=t.je,e}f.set(r,w)})({reader:o,je:t,index:s,offset:k,signature:h,compressedSize:b,uncompressedSize:y,Ae:I,dataDescriptor:g||x.bitFlag.dataDescriptor,extraFieldZip64:f||x.extraFieldZip64,Ue:r});try{if(!V){L&&(e=new R),e=new dn(e),await wn(e,E?b:y),({writable:te}=e);const{outputSize:t}=await gr({readable:Z,writable:te},ee);if(e.size+=t,t!=(E?b:y))throw new d(Pt)}}catch(t){if(t.outputSize!==$&&(e.size+=t.outputSize),!L||t.message!=$e)throw t}finally{Vi(i,n,oi)||!te||te.locked||await te.getWriter().close()}return L||V?$:e.getData?e.getData():te}}function Ci(e,t,n){const i=e.rawBitFlag=Xi(t,n+2),o=!(1&~i),s=Qi(t,n+6);r.assign(e,{encrypted:o,version:Xi(t,n),bitFlag:{level:(6&i)>>1,dataDescriptor:!(8&~i),languageEncodingFlag:(i&B)==B},rawLastModDate:s,lastModDate:Yi(s),filenameLength:Xi(t,n+22),extraFieldLength:Xi(t,n+24)})}function Ui(e,t,n,i,o){const{rawExtraField:s}=t,l=t.extraField=new c,f=Be(s);let u=0;try{for(;u<s.length;){const e=Xi(f,u),t=Xi(f,u+2);l.set(e,{type:e,data:s.slice(u+4,u+4+t)}),u+=4+t}}catch{}const w=Xi(n,i+4);r.assign(t,{signature:Qi(n,i+10),compressedSize:Qi(n,i+14),uncompressedSize:Qi(n,i+18)});const p=l.get(1);p&&(((e,t)=>{t.zip64=!0;const r=Be(e.data),n=zi.filter(([e,r])=>t[e]==r),i=n.reduce((e,[,t])=>e+Ri[t].bytes,0);if(e.data.length<i)throw new d(mi);for(let i=0,o=0;i<n.length;i++){const[s,a]=n[i],c=Ri[a];t[s]=e[s]=c.Ce(r,o),o+=c.bytes}})(p,t),t.extraFieldZip64=p);const h=l.get(28789);h&&(Ni(h,yn,bn,t,e),t.extraFieldUnicodePath=h);const m=l.get(25461);m&&(Ni(m,gn,xn,t,e),t.extraFieldUnicodeComment=m);const y=l.get(39169);y&&y.data.length>=7?(((e,t,n)=>{const i=Be(e.data),o=Gi(i,4);r.assign(e,{Me:Gi(i,0),vendorId:Gi(i,2),strength:o,originalCompressionMethod:n,compressionMethod:Xi(i,5)}),t.compressionMethod=e.compressionMethod})(y,t,w),t.extraFieldAES=y):t.compressionMethod=w;const b=l.get(10);b&&(((e,t)=>{const n=Be(e.data);let i,o=4;try{for(;o<e.data.length&&!i;){const t=Xi(n,o),r=Xi(n,o+2);1==t&&(i=e.data.slice(o+4,o+4+r)),o+=4+r}}catch{}try{if(i&&24==i.length){const n=Be(i),o=n.getBigUint64(0,!0),s=n.getBigUint64(8,!0),a=n.getBigUint64(16,!0);r.assign(e,{rawLastModDate:o,rawLastAccessDate:s,rawCreationDate:a});const c={lastModDate:Ji(o),lastAccessDate:Ji(s),creationDate:Ji(a)};r.assign(e,c),r.assign(t,c)}}catch{}})(b,t),t.extraFieldNTFS=b);const g=l.get(30805);if(g)Wi(g,t,!1),t.extraFieldUnix=g;else{const e=l.get(30837);e&&(Wi(e,t,!0),t.extraFieldInfoZip=e)}const x=l.get(L);x&&(((e,t,r)=>{if(!e.data.length)return;const n=Be(e.data),i=Gi(n,0),o=[],s=[];r?(1&~i||(o.push(zn),s.push(Rn)),2&~i||(o.push(En),s.push("rawLastAccessDate")),4&~i||(o.push(Dn),s.push(Tn))):5>e.data.length||(o.push(zn),s.push(Rn));let c=1;o.forEach((r,i)=>{if(e.data.length>=c+4){const o=Qi(n,c);t[r]=e[r]=new a(1e3*(0|o));const l=s[i];e[l]=o}c+=4})})(x,t,o),t.extraFieldExtendedTimestamp=x);const k=l.get(6534);k&&(t.extraFieldUSDZ=k)}function Ni(e,t,n,i,o){if(5>e.data.length)return void(e.valid=!1);const s=Be(e.data),a=new Ie;a.append(o[n]);const c=Be(new w(4));c.setUint32(0,a.get(),!0);const l=Qi(s,1);r.assign(e,{version:Gi(s,0),[t]:mn(e.data.subarray(5)),valid:!o.bitFlag.languageEncodingFlag&&l==Qi(c,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function Wi(e,t,n){try{const i=Be(e.data);let o,s;if(n){let t=0;const n=Gi(i,t++),a=Gi(i,t++);o=Hi(e.data.subarray(t,t+a)),t+=a;const c=Gi(i,t++);s=Hi(e.data.subarray(t,t+c)),r.assign(e,{version:n,uid:o,gid:s})}else 4>e.data.length||(o=Xi(i,0),s=Xi(i,2),r.assign(e,{uid:o,gid:s}));o!==$&&(t.uid=o),s!==$&&(t.gid=s)}catch{}}function Hi(e){const t=new w(4);return t.set(e,0),new m(t.buffer,t.byteOffset,4).getUint32(0,!0)}function ji(e,t){return e.Te?e.Te(t):0}function Ai(e,t){return e===$?t?li:"balanced":e}const Pi=64,Mi=0,Oi=1,Ii=2;async function*qi(e,t){const r=e.size-t,n=await pn(e,r,t),i=Be(n);for(let e=n.length-Z;e>=0;e--)Qi(i,e)==O&&(yield[i,r,n,e,r+e])}function Zi(e,t,r){return{offset:r,buffer:e.slice(t,t+Z).buffer}}async function Ki(e,t,r,n,i,o,s){const a=Xi(t,n+10),c=Qi(t,n+12),l=Qi(t,n+16);if(a==W||c==N||l==N)return await Li(e,t,r,i-K,o,s)==q?Ii:Mi;if(!a&&!c)return Oi;const f=Xi(t,n+6);for(const n of[i-c,ji(e,f)+l])if(await Li(e,t,r,n,o,s)==M)return Ii;return Mi}async function Li(e,t,r,n,i,o){return 0>n||n+4>i?$:r>n?o.count>0?(o.count--,Qi(Be(await pn(e,n,4)),0)):$:Qi(t,n-r)}function Bi(e){const t=new d(Si);throw t.reason=e,t}function Vi(e,t,r){return t[r]===$?e.options[r]:t[r]}function Yi(e){const t=(4294901760&e)>>16,r=e&W;try{return new a(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&r)>>11,(2016&r)>>5,2*(31&r),0)}catch{}}function Ji(e){return new a(i(e/o(1e4)-o(116444736e5)))}function Gi(e,t){return e.getUint8(t)}function Xi(e,t){return e.getUint16(t,!0)}function Qi(e,t){return e.getUint32(t,!0)}function _i(e,t){return i(e.getBigUint64(t,!0))}var $i=r.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Si,ERR_BAD_FORMAT:ui,ERR_CENTRAL_DIRECTORY_NOT_FOUND:pi,ERR_ENCRYPTED:yi,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:wi,ERR_EOCDR_NOT_FOUND:di,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:mi,ERR_INVALID_COMPRESSED_DATA:Mt,ERR_INVALID_PASSWORD:Qe,ERR_INVALID_SIGNATURE:_e,ERR_INVALID_UNCOMPRESSED_SIZE:Pt,ERR_LOCAL_FILE_HEADER_NOT_FOUND:hi,ERR_OVERLAPPING_ENTRY:ki,ERR_SPLIT_ZIP_FILE:xi,ERR_UNSUPPORTED_COMPRESSION:gi,ERR_UNSUPPORTED_ENCRYPTION:bi,ZipReader:Ei,ZipReaderStream:Di});const eo="File already exists",to="Zip file comment exceeds 64KB",ro="File entry comment exceeds 64KB",no="File entry name exceeds 64KB",io="Version exceeds 65535",oo="The strength must equal 1, 2, or 3",so="Encryption is not supported in USDZ files",ao="Extra field type exceeds 65535",co="Extra field data exceeds 64KB",lo=-2147483648,fo=2147483647,uo="Zip64 is not supported (set the 'zip64' option to 'true')",wo="Undefined uncompressed size",po="Undefined reader",ho="Zip file not empty",mo=new w([7,0,2,0,65,69,3,0,0]),yo="infozip",bo="unix";let go=0;const xo=[];class ko{constructor(e,t={}){e=new dn(e);const{availableSize:n=ee,maxSize:i=ee}=e,o=n>0&&n!==ee&&i>0&&i!==ee;r.assign(this,{writer:e,Oe:o,options:t,config:ce(),files:new c,Ie:new l,offset:t[si]===$?e.size||e.writable.size||0:t[si],qe:t[si]===$?0:t[si]-(e.size||e.writable.size||0),Ze:new l,Ke:0,Le:$})}async prependZip(e){if(this.Ie.size)throw new d(ho);e=new un(e),await wn(e);const{ZipReader:t}=await b.resolve().then(()=>$i),n=new t(e.readable),i=await n.getEntries();await n.close(),await wn(this.writer),await e.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=e.size,this.Ie=new l(i.map(e=>e.filename)),this.files=new c(i.map(e=>{const{version:t,rawLastModDate:n,lastAccessDate:i,creationDate:o,rawFilename:s,bitFlag:a,encrypted:c,uncompressedSize:l,compressedSize:f,zip64:u}=e;let{compressionMethod:d,Be:w,Ve:p,Ye:h,Je:m,Ge:y,rawExtraField:b}=e;const{level:g,languageEncodingFlag:x,dataDescriptor:k}=a;w=w||ne,p=p||ne,h=h||ne,m=m||ne,y=y||ne,b=b||ne,e.extraFieldAES&&(d=99);const S=qo(w,p,h,m,y,b),v=u&&l>=N,F=u&&f>=N,z=-7&Ko(g,x,k,c,d)|g<<1,{Xe:R,Qe:E}=Zo({version:t,bitFlag:z,compressionMethod:d,uncompressedSize:l,compressedSize:f,rawLastModDate:n,rawFilename:s,_e:F,$e:v,extraFieldLength:S}),{signature:D}=e;return D!==$&&Mo(E,10,D),r.assign(e,{$e:v,_e:F,et:u&&e.offset>=N,diskNumberStart:0,nt:!1,Be:w,Ve:p,Ye:h,Je:m,Ge:y,rawExtraField:b,extendedTimestamp:h.length>0||m.length>0,it:1+(i?2:0)+(o?4:0),Xe:R,Qe:E}),[e.filename,e]}))}async add(e="",t,n={}){const i=this;n=r.assign({},n);const{Ze:s,config:c}=i;let l,f;go<c.maxWorkers?go++:await new b(e=>xo.push(e));try{if(e=e.trim(),jo(i,n,In)&&!e.endsWith(G)&&(e+=G),i.Ie.has(e))throw new d(eo);return i.Ie.add(e),f=!0,l=(async(e,t,n,i)=>{const s=((e,t,r)=>{t=t.trim();let n=jo(e,r,Hn),i=jo(e,r,Mn,n?20:768);const o=jo(e,r,qn),s=jo(e,r,"uid"),a=jo(e,r,"gid");let c=jo(e,r,Bn),l=jo(e,r,"unixExtraFieldType"),f=jo(e,r,Vn),u=jo(e,r,Yn),w=jo(e,r,Jn);if(s!==$&&(0>s||s>N))throw new d("Invalid uid (must be integer 0..2^32-1)");if(a!==$&&(0>a||a>N))throw new d("Invalid gid (must be integer 0..2^32-1)");if(c!==$&&(0>c||c>W))throw new d("Invalid UNIX mode (must be integer 0..65535)");if(l!==$&&l!==yo&&l!==bo)throw new d("Invalid unixExtraFieldType (must be 'infozip' or 'unix')");if(l===bo&&(s!==$&&s>W||a!==$&&a>W))throw new d("uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)");l!==$||s===$&&a===$||(l=yo);let p=jo(e,r,Nn),h=jo(e,r,Wn);const m=p!==$||h!==$;if(s!==$||a!==$||c!==$||l?(n=!1,i=i&W|768):m&&(n=!0,i&=H),p!==$&&(0>p||p>H))throw new d("Invalid msdosAttributesRaw (must be integer 0..255)");if(h&&"object"!=typeof h)throw new d("Invalid msdosAttributes (must be an object with boolean flags)");if(i>W)throw new d(io);let y=jo(e,r,Un,0);!r[In]&&t.endsWith(G)&&(r[In]=!0);const b=jo(e,r,In);let g;return b?(t.endsWith(G)||(t+=G),0===y&&(y=16,n||(y|=16877<<16))):n||0!==y||(y=o?493<<16:27525120),n||(g=y>>16&W,c=c===$?g:c&W,f?c|=Y:f=!!(c&Y),u?c|=J:u=!!(c&J),w?c|=512:w=!!(512&c),b&&(c|=V),y=(c&W)<<16|y&H),({msdosAttributesRaw:p,msdosAttributes:h}=((e,t)=>{if(e!==$)e&=H;else if(t!==$){const{readOnly:r,hidden:n,system:i,directory:o,archive:s}=t;let a=0;r&&(a|=1),n&&(a|=2),i&&(a|=4),o&&(a|=16),s&&(a|=32),e=a&H}return t===$&&(t={readOnly:!!(1&e),hidden:!!(2&e),system:!!(4&e),directory:!!(16&e),archive:!!(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}})(p,h)),m&&(y=y&N|p&H),{name:t,ot:{versionMadeBy:i,msDosCompatible:n,externalFileAttributes:y,unixExternalUpper:g,uid:s,gid:a,unixMode:c,unixExtraFieldType:l,setuid:f,setgid:u,sticky:w,msdosAttributesRaw:p,msdosAttributes:h}}})(e,t,i);({name:t}=s);const c=((e,t,r)=>{const n=jo(e,r,"encodeText",Ze);let i=n(t);if(i===$&&(i=Ze(t)),qo(i)>W)throw new d(no);const o=r[gn]||"";let s=n(o);if(s===$&&(s=Ze(o)),qo(s)>W)throw new d(ro);const c=jo(e,r,Pn,20);if(c>W)throw new d(io);const l=jo(e,r,zn,new a),f=jo(e,r,En),u=jo(e,r,Dn),p=jo(e,r,Cn,0),h=jo(e,r,$n);let m,y;h||(m=jo(e,r,Qn),y=jo(e,r,_n));const b=jo(e,r,"encryptionStrength",3),g=jo(e,r,On),x=jo(e,r,"extendedTimestamp",!0),k=jo(e,r,"ntfsTimestamp"),S=jo(e,r,"keepOrder",!0),v=jo(e,r,ri),F=jo(e,r,ii),z=jo(e,r,"bufferedWrite"),R=jo(e,r,"createTempStream"),E=jo(e,r,"dataDescriptorSignature",!0),D=jo(e,r,ei),T=jo(e,r,"useUnicodeFileNames",!0),C=jo(e,r,Zn),U=h||C===$?$:De(C);if(!h&&C!==$&&0!==C&&8!==C&&!U)throw new d("Compression method not supported");let N=jo(e,r,"level");if(e.options[ai]){if(m!==$||y!==$)throw new d(so);N===$&&C===$&&(N=0)}let H=jo(e,r,ni),j=jo(e,r,"dataDescriptor");z&&j===$&&(j=!1),(j===$||g)&&(j=!0),N!==$&&6!=N&&(H=!1),H||U||e.config.CompressionStream!==$||e.config.CompressionStreamZlib!==$||(N=0);const A=jo(e,r,jn);if(!g&&(m!==$||y!==$)&&(1>b||b>3))throw new d(oo);let P=ne;const M=r[Ln];if(M){let e=0,t=0;M.forEach(t=>e+=4+qo(t)),P=new w(e);const r=Be(P);M.forEach((e,n)=>{if(n>W)throw new d(ao);if(qo(e)>W)throw new d(co);Po(r,t,n),Po(r,t+2,qo(e)),Io(P,e,t+4),t+=4+qo(e)})}return{comment:o,ot:{rawFilename:i,rawComment:s,version:c,lastModDate:l,lastAccessDate:f,creationDate:u,internalFileAttributes:p,passThrough:h,password:m,rawPassword:y,encryptionStrength:b,zipCrypto:g,extendedTimestamp:x,ntfsTimestamp:k,keepOrder:S,useWebWorkers:v,transferStreams:F,bufferedWrite:z,createTempStream:R,dataDescriptorSignature:E,signal:D,useUnicodeFileNames:T,compressionMethod:C,format:U?U.format:$,codecURI:U?U.codecURI:$,st:U?U.versionNeeded:$,level:N,useCompressionStream:H,dataDescriptor:j,zip64:A,rawExtraField:P}}})(e,t,i),{comment:l}=c,f=i[Ln];let u;e.files.set(t,$);try{const a=await(async(e,t,{ot:r},n)=>{const{passThrough:i,zipCrypto:o,password:s,rawPassword:a,encryptionStrength:c}=r;let{dataDescriptor:l,zip64:f,level:u,compressionMethod:w}=r,p=0,h=0;if(i){if(!t)throw new d(po);if(h=n[kn],h===$)throw new d(wo)}const m=!0===f,y=jo(e,n,An),b=!!t&&(!!(s&&qo(s)||a&&qo(a))||i&&y);t||(u=0,w=0);const g=b?o?12:16+4*c:0;t&&(t=new un(t),await wn(t),i?(n.uncompressedSize=h,p=Ao(h)+g):t.size===$?(l=!0,(f||f===$)&&(f=!0,h=p=4294967296)):(n.uncompressedSize=h=t.size,p=Ao(h)+g));const x=m||h>=N,k=m||p>=N;if(x||k){if(!1===f)throw new d(uo);f=!0}return f=f||!1,{reader:t,ot:{dataDescriptor:l,zip64:f,$e:x,_e:k,uncompressedSize:h,level:u,compressionMethod:w,encrypted:b}}})(e,n,c,i);({reader:n}=a);const l=Eo(e.writer),f=Ro(e.writer),p=(e=>{const{rawFilename:t,lastModDate:r,lastAccessDate:n,creationDate:i,level:o,zip64:s,zipCrypto:a,useUnicodeFileNames:c,dataDescriptor:l,directory:f,rawExtraField:u,encryptionStrength:w,extendedTimestamp:p,ntfsTimestamp:h,passThrough:m,encrypted:y,$e:b,_e:g,uncompressedSize:x}=e;let{version:k,compressionMethod:S}=e;const v=!f&&(S===$?o===$||o>0:0!==S);let F;const z=m||!v,R=s&&(e.bufferedWrite||!l||!b&&!g||z),E=R||s&&l&&(b||g);if(s&&(b||g)){const e=20,t=zo(e);if(t.uint16(1),t.uint16(e-4),F=t.array,R&&(t.ct(x),z)){const e=y?a?12:16+4*w:0;t.ct(m?0:x+e)}}else F=ne;let D,T,C,U,N;if(y&&!a){const e=zo(qo(mo)+2);e.uint16(39169),e.bytes(mo),D=e.array,D[8]=w}else D=ne;if(p){const e=No(r),t=Wo(e);if(t){const t=9+(n?4:0)+(i?4:0),r=zo(t);U=1+(n?2:0)+(i?4:0),r.uint16(L),r.uint16(t-4),r.uint8(U),r.uint32(e),n&&r.uint32(Ho(No(n))),i&&r.uint32(Ho(No(i))),C=r.array}else C=ne;if(h===$?!t||n||i:h)try{const e=Uo(r),t=zo(36);t.uint16(10),t.uint16(32),t.lt(4),t.uint16(1),t.uint16(24),t.ct(e),t.ct(Uo(n)||e),t.ct(Uo(i)||e),T=t.array}catch{T=ne}else T=ne}else T=C=ne;try{const{uid:t,gid:r,unixExtraFieldType:n}=e;if(n!=yo||t===$&&r===$)if(n!=bo||t===$&&r===$)N=ne;else{const e=zo(8);e.uint16(30805),e.uint16(4),e.uint16((t===$?0:t)&W),e.uint16((r===$?0:r)&W),N=e.array}else{const e=Fo(t),n=Fo(r),i=3+e.length+n.length,o=zo(4+i);o.uint16(30837),o.uint16(i),o.uint8(1),o.uint8(e.length),o.bytes(e),o.uint8(n.length),o.bytes(n),N=o.array}}catch{N=ne}S===$&&(S=v?8:0);const{st:H}=e;v&&H!==$&&(k=k>H?k:H),s&&(k=k>45?k:45),y&&!a&&(k=k>51?k:51,D[9]=S,S=99);const A=E?qo(F):0,P=A+qo(D,C,T,N,u);if(P>W)throw new d(co);const{Xe:M,Qe:O,rawLastModDate:I}=Zo({version:k,bitFlag:Ko(o,c,l,y,S),compressionMethod:S,uncompressedSize:x,lastModDate:_>r?_:r>Q?Q:r,rawFilename:t,_e:g,$e:b,extraFieldLength:P}),q=zo(X+qo(t)+P),Z=q.array,K=Be(Z);return q.uint32(j),q.bytes(M),q.bytes(t),E&&q.bytes(F),q.bytes(D),q.bytes(C),q.bytes(T),q.bytes(N),q.bytes(u),l&&(g||Mo(K,18,0),b||Mo(K,22,0)),{ft:Z,ut:K,Xe:M,Qe:O,lastModDate:r,rawLastModDate:I,encrypted:y,compressed:v,version:k,compressionMethod:S,it:U,Be:ne,wt:A,Ye:C,Je:T,Ge:N,Ve:D,extraFieldLength:P}})(i=r.assign({},i,s.ot,c.ot,a.ot,{internalFileAttribute:c.ot.internalFileAttributes,externalFileAttribute:s.ot.externalFileAttributes,signature:i[Kn],offset:e.offset-l,diskNumberStart:f})),h=(({zip64:e,dataDescriptor:t,dataDescriptorSignature:r})=>{let n,i=ne,o=0,s=e?20:12;return r&&(s+=4),t&&(i=new w(s),n=Be(i),r&&(o=4,Mo(n,0,P))),{ht:i,yt:n,bt:o}})(i),m=qo(p.ft,h.ht);u=await(async(e,t,n,i,s)=>{const{files:a,writer:c}=e,{keepOrder:l,dataDescriptor:f,signal:u}=s,{gt:p}=i,h=e.options[ai],m=e.Le;let y,g,x,k,S,v,z,E={},D=0;a.set(t,E),e.Le=E;try{let g;l&&(g=m&&m.lock,E.lock=new b(e=>x=e)),s.bufferedWrite||!l||e.xt||e.Ke||!f?(y=!0,e.Ke++,z=s.createTempStream?await s.createTempStream():new F($,$,{highWaterMark:ee}),z.size=0,await wn(c)):(z=c,await T()),await wn(z);const U=Eo(c);if(e.Oe){delete e.Oe;const t=new w(4);Mo(Be(t),0,A),await Co(c,t),e.offset+=4}h&&!y&&vo(i,e.offset-U);const{ft:W}=p;y||(await g,await C());const j=Ro(c),P=To(e,c);if(E.diskNumberStart=j,y||(S=!0,v=c.size,await Co(z,W)),E=await(async(e,t,{diskNumberStart:n,lock:i},s,a,c)=>{const{gt:l,kt:f,St:u}=s,{Xe:w,Qe:p,lastModDate:h,rawLastModDate:m,encrypted:y,compressed:b,version:g,compressionMethod:x,Be:k,wt:S,Ye:v,it:F,Je:z,Ge:R,Ve:E}=l,{ht:D}=f,{rawFilename:T,lastAccessDate:C,creationDate:U,password:W,rawPassword:j,level:A,zip64:P,$e:M,_e:O,zipCrypto:I,dataDescriptor:q,directory:Z,executable:K,versionMadeBy:L,rawComment:B,rawExtraField:V,useWebWorkers:Y,transferStreams:J,onstart:G,onprogress:X,onend:Q,signal:_,encryptionStrength:ee,extendedTimestamp:te,msDosCompatible:re,internalFileAttributes:ne,externalFileAttributes:ie,uid:oe,gid:se,unixMode:ae,setuid:ce,setgid:le,sticky:fe,unixExternalUpper:ue,msdosAttributesRaw:de,msdosAttributes:we,useCompressionStream:pe,passThrough:he,format:me,codecURI:ye}=c,be={lock:i,versionMadeBy:L,zip64:P,directory:!!Z,executable:!!K,filenameUTF8:!0,rawFilename:T,commentUTF8:!0,rawComment:B,Be:k,wt:S,Ye:v,Je:z,Ge:R,Ve:E,rawExtraField:V,extendedTimestamp:te,msDosCompatible:re,internalFileAttributes:ne,externalFileAttributes:ie,diskNumberStart:n,uid:oe,gid:se,unixMode:ae,setuid:ce,setgid:le,sticky:fe,unixExternalUpper:ue,msdosAttributesRaw:de,msdosAttributes:we};let{signature:ge,uncompressedSize:xe}=c,ke=0;he||(xe=0);const{writable:Se}=t;if(e){const r=e.createReadable?e.createReadable():e.readable,n=e.size,i={options:{codecType:Jt,level:A,rawPassword:j,password:W,encryptionStrength:ee,zipCrypto:y&&I,passwordVerification:y&&I&&m>>8&H,signed:!he,compressed:b&&!he,encrypted:y&&!he,useWebWorkers:Y,useCompressionStream:pe,transferStreams:J,format:me,codecURI:ye},config:a,ce:{signal:_,size:n,onstart:G,onprogress:X,onend:Q}};try{const e=await gr({readable:r,writable:Se},i);if(ke=e.outputSize,t.size+=ke,he||(xe=e.inputSize,ge=e.signature),!O&&ke>=N||!M&&xe>=N)throw new d(uo)}catch(e){throw e.outputSize!==$&&(t.size+=e.outputSize),e}}return(({signature:e,compressedSize:t,uncompressedSize:r,gt:n,kt:i},{zip64:s,zipCrypto:a,dataDescriptor:c})=>{const{Qe:l,encrypted:f}=n,{yt:u,bt:d}=i;f&&!a||e===$||(Mo(l,10,e),c&&Mo(u,d,e)),s?c&&(Oo(u,d+4,o(t)),Oo(u,d+12,o(r))):(Mo(l,14,t),Mo(l,18,r),c&&(Mo(u,d+4,t),Mo(u,d+8,r)))})({signature:ge,compressedSize:ke,uncompressedSize:xe,gt:l,kt:f},c),q&&await Co(t,D),r.assign(be,{uncompressedSize:xe,compressedSize:ke,lastModDate:h,rawLastModDate:m,creationDate:U,lastAccessDate:C,encrypted:y,zipCrypto:I,size:u+ke,compressionMethod:x,version:g,Xe:w,Qe:p,signature:ge,it:F,$e:M,_e:O}),be})(n,z,E,i,e.config,s),y||(S=!1),a.set(t,E),E.filename=t,y){if(await b.all([z.writable.getWriter().close(),g]),await T(),k=!0,v=c.size,await C(),E.diskNumberStart=Ro(c),E.offset=To(e,c),h){const t=i.St;vo(i,e.offset-Eo(c)),E.size+=i.St-t}(({rawFilename:e,encrypted:t,zip64:r,wt:n,signature:i,compressedSize:s,uncompressedSize:a,$e:c,_e:l},f,{dataDescriptor:u})=>{if(u||(t||Mo(f,14,i),l||Mo(f,18,s),c||Mo(f,22,a)),r&&n){const t=X+qo(e)+4;Oo(f,t,o(a)),Oo(f,t+8,o(s))}})(E,p.ut,s),await Co(c,p.ft),await(async(e,t,r)=>{const n=t.writable.getWriter();try{await e.pipeTo(new R({async write(e){var t;await n.ready,await n.write(e),t=qo(e),D+=t}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{n.releaseLock()}})(z.readable,c,u),c.size+=z.size,k=!1}else E.diskNumberStart=j,E.offset=P;return e.offset+=E.size,E}catch(r){if(k||S){if(e.hasCorruptedEntries=!0,r)try{r.corruptedEntry=!0}catch{}e.offset+=c.size-v,y&&(e.offset+=D)}throw a.delete(t),r}finally{if(y&&e.Ke--,x&&x(),g&&g(),y&&z&&z.dispose)try{await z.dispose()}catch{}}async function T(){e.xt=!0;const{vt:t}=e;e.vt=new b(t=>g=()=>{e.xt=!1,t()}),await t}async function C(){Do(c,qo(p.ft))&&await c.closeDisk()}})(e,t,n,{gt:p,kt:h,St:m},i)}catch(r){throw e.files.delete(t),r}return r.assign(u,{name:t,comment:l,extraField:f}),new Xn(u)})(i,e,t,n),s.add(l),await l}catch(t){throw f&&i.Ie.delete(e),t}finally{s.delete(l);const e=xo.shift();e?e():go--}}remove(e){const{Ie:t,files:r}=this;if("string"==typeof e&&(e=r.get(e)),e&&e.filename!==$){const{filename:n}=e;if(t.has(n)&&r.has(n))return t.delete(n),r.delete(n),!0}return!1}async close(e=ne,r={}){const{Ze:n,writer:i}=this,{writable:s}=i;if(qo(e)>W)throw new d(to);for(;n.size;)await b.allSettled(t.from(n));return await(async(e,r,n)=>{const i=(e=>{let t=0;for(const[,r]of e){const{rawFilename:e,Ve:n,rawComment:i,Je:o,Ge:s,rawExtraField:a,extendedTimestamp:c,it:l,lastModDate:f,$e:u,_e:w,uncompressedSize:p,compressedSize:h}=r,m=r.offset>=N,y=r.diskNumberStart>=W;let b,g;if(m||y||u||w){const e=4+(u?8:0)+(w?8:0)+(m?8:0)+(y?4:0),t=zo(e);t.uint16(1),t.uint16(e-4),u&&t.ct(p),w&&t.ct(h),m&&t.ct(r.offset),y&&t.uint32(r.diskNumberStart),b=t.array}else b=ne;r.Be=b,r.et=m,r.nt=y;const x=No(f);if(c&&Wo(x)){const e=zo(9);e.uint16(L),e.uint16(5),e.uint8(l),e.uint32(x),g=e.array}else g=ne;r.Ye=g;const k=qo(b,n,o,s,g,a);if(k>W)throw new d(co);t+=46+qo(e,i)+k}return t})(e.files),s=await(async(e,r,n)=>{const{files:i,writer:o}=e,s=new w(r);await wn(o);let a=0,c=0,l=Ro(o),f=Eo(o);for(const[e,r]of t.from(i.values()).entries()){const{offset:t,rawFilename:u,Be:d,Ve:w,Ye:p,Je:h,Ge:m,rawExtraField:y,rawComment:b,versionMadeBy:g,Xe:x,Qe:k,$e:S,_e:v,nt:F,et:z,internalFileAttributes:R,externalFileAttributes:E,diskNumberStart:D,uncompressedSize:T,compressedSize:C}=r,U=qo(d,w,p,h,m,y),H=46+qo(u,b)+U;Do(o,a+H-c)&&(await Co(o,s.slice(c,a)),c=a,await o.closeDisk()),0==e&&(l=Ro(o),f=Eo(o)),S||Mo(k,18,T),v||Mo(k,14,C),(z||F)&&45>r.version&&Po(k,0,45);const j=zo(H);if(j.uint32(M),j.uint16(g),j.bytes(x.subarray(0,24)),j.uint16(U),j.uint16(qo(b)),j.uint16(F?W:D),j.uint16(R),j.uint32(E),j.uint32(z?N:t),j.bytes(u),j.bytes(d),j.bytes(w),j.bytes(p),j.bytes(h),j.bytes(m),j.bytes(y),j.bytes(b),Io(s,j.array,a),a+=H,n.onprogress)try{await n.onprogress(e+1,i.size,new Xn(r))}catch{}}return await Co(o,c?s.slice(c):s),{diskNumber:l,diskOffset:f}})(e,i,n);await(async(e,t,r,n)=>{const{writer:i}=e,{Ft:s}=n;let{zt:a}=n,c=e.files.size,l=s.diskNumber,f=To(e,s),u=Ro(i);Do(i,Z)&&u++;let w=jo(e,r,jn);if(!(N>f&&N>a&&W>c&&W>u)){if(!1===w)throw new d(uo);w=!0}const p=qo(t);if(p>W)throw new d(to);const h=zo(w?98:Z);Do(i,qo(h.array)+p)&&await i.closeDisk(),u=Ro(i),w&&(h.uint32(I),h.ct(44),h.uint16(45),h.uint16(45),h.uint32(u),h.uint32(l),h.ct(c),h.ct(c),h.ct(a),h.ct(f),h.uint32(q),h.uint32(u),h.ct(o(To(e,i))+o(a)),h.uint32(u+1),jo(e,r,"supportZip64SplitFile",!0)&&(u=W,l=W),c=W,f=N,a=N),h.uint32(O),h.uint16(u),h.uint16(l),h.uint16(c),h.uint16(c),h.uint32(a),h.uint32(f),h.uint16(p),await Co(i,h.array),p&&await Co(i,t)})(e,r,n,{Ft:s,zt:i})})(this,e,r),jo(this,r,oi)||await s.getWriter().close(),i.getData?i.getData():s}}function So(e,t,r){e.Ze.add(t),t.catch(e=>{try{r(e)}catch{}})}function vo(e,t){const{gt:r}=e;let{ft:n,extraFieldLength:i}=r,o=64-(t+qo(n))%64;4>o&&(o+=64);const s=new w(o),a=Be(s);Po(a,0,6534),Po(a,2,o-4);const c=n;r.ft=n=new w(qo(c)+o),Io(n,c),Io(n,s,qo(c));const l=Be(n);Po(l,28,i+o),r.ut=l,e.St+=o}function Fo(e){if(e===$)return ne;{const t=new w(4);Be(t).setUint32(0,e,!0);let r=4;for(;r>1&&0===t[r-1];)r--;return t.subarray(0,r)}}function zo(e){const t=new w(e),r=Be(t);let n=0;return{array:t,uint8:e=>{((e,t,r)=>{e.setUint8(t,r)})(r,n,e),n+=1},uint16:e=>{Po(r,n,e),n+=2},uint32:e=>{Mo(r,n,e),n+=4},ct:e=>{Oo(r,n,o(e)),n+=8},bytes:e=>{Io(t,e,n),n+=qo(e)},lt:e=>n+=e}}function Ro(e){const{diskNumber:t=0}=e;return t}function Eo(e){const{diskOffset:t=0}=e;return t}function Do(e,t){const{availableSize:r=ee}=e;return t>r}function To(e,{diskNumber:t=0,diskOffset:r=0}){return e.offset-r-(t?e.qe:0)}async function Co(e,t){const{writable:r}=e,n=r.getWriter();try{await n.ready,e.size+=qo(t),await n.write(t)}finally{n.releaseLock()}}function Uo(e){if(e)return(o(e.getTime())+o(116444736e5))*o(1e4)}function No(e){return s.floor(e.getTime()/1e3)}function Wo(e){return e>=lo&&fo>=e}function Ho(e){return s.min(fo,s.max(lo,e))}function jo(e,t,r,n){const i=t[r]===$?e.options[r]:t[r];return i===$?n:i}function Ao(e){return e+5*(s.floor(e/16383)+1)}function Po(e,t,r){e.setUint16(t,r,!0)}function Mo(e,t,r){e.setUint32(t,r,!0)}function Oo(e,t,r){e.setBigUint64(t,r,!0)}function Io(e,t,r){e.set(t,r)}function qo(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Zo({version:e,bitFlag:t,compressionMethod:r,uncompressedSize:n,compressedSize:i,lastModDate:o,rawLastModDate:s,rawFilename:a,_e:c,$e:l,extraFieldLength:f}){const u=zo(26),d=u.array,w=Be(d);if(u.uint16(e),u.uint16(t),u.uint16(r),s===$){const e=new h(1),t=Be(e);Po(t,0,(o.getHours()<<6|o.getMinutes())<<5|o.getSeconds()/2),Po(t,2,(o.getFullYear()-1980<<4|o.getMonth()+1)<<5|o.getDate()),s=e[0]}return u.uint32(s),u.lt(4),c||i!==$?u.uint32(c?N:i):u.lt(4),l||n!==$?u.uint32(l?N:n):u.lt(4),u.uint16(qo(a)),u.uint16(f),{Xe:d,Qe:w,rawLastModDate:s}}function Ko(e,t,r,n,i){let o=0;return t&&(o|=B),r&&(o|=8),8!=i&&9!=i||(0>e||e>3||(o|=6),e>3&&5>=e&&(o|=4),9==e&&(o|=2)),n&&(o|=1),o}const Lo=1048576,Bo=".zip.js-temp",Vo=1048576,Yo=1048576,Jo=".zip.js-temp";try{ue({baseURI:void 0===k&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===k?location.href:U&&"SCRIPT"===U.tagName.toUpperCase()&&U.src||new u("zip-native.min.js",k.baseURI).href})}catch{}var{Uint8Array:Go,Uint16Array:Xo,Int32Array:Qo,TransformStream:_o,Math:$o,Error:es,Array:ts}=globalThis,rs=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],ns=new Go(0),is=new Xo(0),os=[];for(let e=0;6>e;e++)os.push(e,0==e?8:4);os.push(0,1);var ss=[];for(let e=0;14>e;e++)ss.push(e,0==e?4:2);var as=new Xo([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]),cs=new Xo([0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0]);function ls(e,t,r,n,i){if(0==i)return;let o=e instanceof Go?e:new Go(e.buffer,e.byteOffset,e.byteLength),s=r instanceof Go?r.subarray(n,n+i):new Go(r.buffer,r.byteOffset+n,i);o.set(s,t)}function fs(e,t,r){0!=r&&(e instanceof Go?e:new Go(e.buffer,e.byteOffset,e.byteLength)).fill(0,t,t+r)}function us(){return{Rt:ns,Et:0,Dt:0,Tt:0,Ct:ns,Ut:0,Nt:0,Wt:0,Ht:"",t:0,i:0,jt:0,At:void 0}}function ds(e,t){let r=1<<t;return{o:e,u:new Go(r),Pt:r,Mt:t,k:0,Ot:0,p:0,It:0}}function ws(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 Xo(t)}var ps=class{constructor(e,t){this.qt=e,this.Zt=t,this.Kt=0}},hs=class{constructor(e,t,r,n,i){this.Lt=e,this.q=t,this.Bt=r,this.Vt=n,this.Yt=i}};function ms(e){return Ks[-6>e||e>2?9:2-e]||""}function ys(e,t){try{e.Ht=ms(t)}catch(r){e.Ht="zlib error "+n(t)+" ("+r+")"}return t}function bs(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 gs(e,t){e.Jt[e.Gt++]=t}function xs(e,t){gs(e,255&t),gs(e,t>>>8&255)}function ks(e,t,r){let n=255&r,i=65535&t,o=e.Xt+e.Qt;return e.Jt[o]=255&i,e.Jt[o+1]=i>>>8&255,e.Jt[o+2]=n,e.Qt+=3,i=i-1&65535,e.$t[Qs[n]+js+1]._t++,e.er[Fs(i)]._t++,e.Qt==e.rr}function Ss(e,t){let r=255&t,n=e.Xt+e.Qt;return e.Jt[n]=0,e.Jt[n+1]=0,e.Jt[n+2]=r,e.Qt+=3,e.$t[r]._t++,e.Qt==e.rr}function vs(e){return e.Pt-Ws}function Fs(e){return 256>e?_s[e]:_s[256+(e>>7)]}function zs(e){let t=Cs+7,r=1<<t,n=(1<<t)-1,i=$o.floor((t+Us-1)/Us),o=1<<8+Cs;return{...ds(e,15),o:e,nr:42,ir:0,sr:void 0,ar:32767,cr:t,lr:r,ur:n,dr:i,wr:new Xo(32768),pr:new Xo(r),mr:o,Jt:new Go(32768),yr:0,gr:32768,Gt:0,kr:0,Sr:0,vr:0,Fr:0,zr:0,Rr:-2,Er:0,Dr:0,Tr:0,Cr:0,Ur:0,Nr:0,Wr:0,Hr:0,jr:0,Ar:0,Pr:0,Mr:0,Or:0,Ir:0,qr:new Qo(2*As+1),Zr:new Go(2*As+1),Kr:new Xo(Is+1),Qt:0,rr:0,Lr:ns,Xt:0,Br:0,Vr:0,Yr:8,Jr:32768,Gr:0,Xr:0,Qr:0,$t:new ts(Os).fill(0).map(()=>({_t:0,_r:0,$r:0,en:0})),er:new ts(2*Ps+1).fill(0).map(()=>({_t:0,_r:0,$r:0,en:0})),tn:new ts(2*Ms+1).fill(0).map(()=>({_t:0,_r:0,$r:0,en:0})),rn:Ds(),nn:Ds(),sn:Ds()}}function Rs(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],i=e[r+1],o=Es();o._r=n,o.en=i,t.push(o)}return t}function Es(){return{_t:0,_r:0,$r:0,en:0}}function Ds(){return new ps([],((e,t)=>new hs(null,t,0,0,0))(0,ns))}function Ts(e){let{code:t,length:r}=(e=>{let t=$o.max(...e),r=new ts(t+1).fill(0);for(let t of e)t>0&&r[t]++;let n=new ts(e.length).fill(0),i=new ts(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 Xo(2*e.length),i=0;for(let o=0;o<e.length;o++){let e=r[o]||0,s=t[o]||0;n[i++]=e?bs(s,e):0,n[i++]=e}return new Xo(n)}var Cs=8,Us=3,Ns=258,Ws=Ns+Us+1,Hs=Ns,js=256,As=js+1+29,Ps=30,Ms=19,Os=2*As+1,Is=15,qs=256,Zs=-1,Ks=["need dictionary","stream end","","file error","stream error","data error","insufficient memory","buffer error",""],Ls=ws(os),Bs=ws(ss),Vs=new Xo(19);Vs[16]=2,Vs[17]=3,Vs[18]=7;var Ys=Ts((()=>{let e=new ts(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})()),Js=Ts(new ts(30).fill(5)),Gs=Rs(Ys),Xs=Rs(Js),Qs=((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 Go(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,s=e[r];if(i>=s&&s+o-1>=i){n[i]=r;break}}let i=0;for(let r=0;r<e.length-1;r++){let n=t[r]?1<<t[r]:1,o=e[r]+n-1;o>i&&(i=o)}return n[i]=e.length-1,n})(cs,Ls),_s=(e=>{let t=new Go(512),r=e.length-1;for(let n=0;256>n;n++)t[n]=n>r?e[r]:e[n];for(let n=256;r>=n;n++){let r=n>>7;t[256+(r>255?255:r)]=e[n]}for(let e=257;512>e;e++)0==t[e]&&(t[e]=t[e-1]);return t})(((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let i=t[n]?1<<t[n]:1,o=e[n]+i-1;o>r&&(r=o)}let n=new Go(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,s=e[r];if(i>=s&&s+o-1>=i){n[i]=r;break}}return n})(as,Bs));function $s(e,t,r){if(void 0===t||void 0===r)return 1;let n=65535&e,i=e>>>16&65535,o=0;for(;r>0;){let e=r>2e3?2e3:r;r-=e;do{n=n+t[o++]|0,i=i+n|0}while(--e);n%=65521,i%=65521}return(i<<16|n)>>>0}var ea=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?3988292384^t>>>1:t>>>1;ea[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){let r=ea[t-1][e];ea[t][e]=r>>>8^ea[0][255&r]}var[ta,ra,na,ia,oa,sa,aa,ca]=ea;function la(e=0,t,r){if(!t)return 0;void 0===r&&(r=t.length);let n=0|~e,i=0;if((r=$o.min(r,t.length))>=8){let e=new m(t.buffer,t.byteOffset,r),o=r-8;for(;o>=i;i+=8){let t=n^e.getInt32(i,!0),r=e.getInt32(i+4,!0);n=ca[255&t]^aa[t>>>8&255]^sa[t>>>16&255]^oa[t>>>24&255]^ia[255&r]^na[r>>>8&255]^ra[r>>>16&255]^ta[r>>>24&255]}}for(;r>i;i++)n=n>>>8^ta[255&(n^t[i])];return(4294967295^n)>>>0}function fa(e){16==e.It?(xs(e,e.p),e.p=0,e.It=0):e.It>=8&&(gs(e,e.p),e.p>>=8,e.It-=8)}function ua(e){e.It>8?xs(e,e.p):e.It>0&&gs(e,e.p),e.Br=1+(e.It-1&7),e.p=0,e.It=0}function da(e,t,r){e.It>16-r?(e.p=65535&(e.p|t<<e.It),xs(e,e.p),e.p=t>>16-e.It&65535,e.It+=r-16):(e.p=65535&(e.p|t<<e.It),e.It+=r)}function wa(e){for(let t=0;t<e.$t.length;t++)e.$t[t]._t=0;for(let t=0;t<e.er.length;t++)e.er[t]._t=0;for(let t=0;t<e.tn.length;t++)e.tn[t]._t=0;e.$t[qs]._t=1,e.Sr=e.vr=0,e.Qt=e.Fr=0}function pa(e,t,r){return r=e.qr[1],e.qr[1]=e.qr[e.Xr--],ma(e,t,1),r}function ha(e,t,r,n){return e[t]._t<e[r]._t||e[t]._t==e[r]._t&&n[t]<=n[r]}function ma(e,t,r){let n=e.qr[r],i=r<<1;for(;i<=e.Xr&&(i<e.Xr&&ha(t,e.qr[i+1],e.qr[i],e.Zr)&&i++,!ha(t,n,e.qr[i],e.Zr));)e.qr[r]=e.qr[i],r=i,i<<=1;e.qr[r]=n}function ya(e,t){let r,n,i,o=t.qt,s=t.Zt.Lt,a=t.Zt.Vt,c=-1;for(e.Xr=0,e.Qr=Os,r=0;a>r;r++)0!=o[r]._t?(e.qr[++e.Xr]=c=r,e.Zr[r]=0):o[r].en=0;for(;2>e.Xr;)i=e.qr[++e.Xr]=2>c?++c:0,o[i]._t=1,e.Zr[i]=0,e.Sr--,s&&(e.vr-=s[i].en);for(t.Kt=c,r=$o.floor(e.Xr/2);r>=1;r--)ma(e,o,r);i=a;do{r=pa(e,o,r),n=e.qr[1],e.qr[--e.Qr]=r,e.qr[--e.Qr]=n,o[i]._t=o[r]._t+o[n]._t,e.Zr[i]=(e.Zr[r]<e.Zr[n]?e.Zr[n]:e.Zr[r])+1,o[r].$r=o[n].$r=i,e.qr[1]=i++,ma(e,o,1)}while(e.Xr>=2);e.qr[--e.Qr]=e.qr[1],((e,t)=>{let r,n,i,o,s,a,c=t.qt,l=t.Kt,f=t.Zt.Lt,u=t.Zt.q,d=t.Zt.Bt,w=t.Zt.Yt,p=0;for(o=0;Is>=o;o++)e.Kr[o]=0;for(c[e.qr[e.Qr]].en=0,r=e.Qr+1;Os>r;r++)n=e.qr[r],o=c[c[n].$r].en+1,o>w&&(o=w,p++),c[n].en=o,l>=n&&(e.Kr[o]++,s=0,n>=d&&(s=u[n-d]),a=c[n]._t,e.Sr+=a*(o+s),f&&(e.vr+=a*(f[n].en+s)));if(0!=p){do{for(o=w-1;0==e.Kr[o];)o--;e.Kr[o]--,e.Kr[o+1]+=2,e.Kr[w]--,p-=2}while(p>0);for(o=w;0!=o;o--)for(n=e.Kr[o];0!=n;)i=e.qr[--r],l>=i&&(c[i].en!=o&&(e.Sr+=(o-c[i].en)*c[i]._t,c[i].en=o),n--)}})(e,t),((e,t,r)=>{let n,i,o=[],s=0;for(n=1;Is>=n;n++)s=s+r[n-1]<<1,o[n]=s;for(i=0;t>=i;i++){let t=e[i].en;0!=t&&(e[i]._r=bs(o[t]++,t))}})(o,t.Kt,e.Kr)}function ba(e,t,r){let n,i,o=-1,s=t[0].en,a=0,c=7,l=4;for(0==s&&(c=138,l=3),t[r+1].en=65535,n=0;r>=n;n++)i=s,s=t[n+1].en,(++a>=c||i!=s)&&(l>a?e.tn[i]._t+=a:0!=i?(i!=o&&e.tn[i]._t++,e.tn[16]._t++):a>10?e.tn[18]._t++:e.tn[17]._t++,a=0,o=i,0==s?(c=138,l=3):i==s?(c=6,l=3):(c=7,l=4))}function ga(e,t,r){let n,i=-1,o=t[0].en,s=0,a=7,c=4;0==o&&(a=138,c=3);for(let l=0;r>=l;l++)if(n=o,o=t[l+1].en,++s>=a||n!=o){if(c>s)do{da(e,e.tn[n]._r,e.tn[n].en)}while(0!=--s);else 0!=n?(n!=i&&(da(e,e.tn[n]._r,e.tn[n].en),s--),da(e,e.tn[16]._r,e.tn[16].en),da(e,s-3,2)):s>10?(da(e,e.tn[18]._r,e.tn[18].en),da(e,s-11,7)):(da(e,e.tn[17]._r,e.tn[17].en),da(e,s-3,3));s=0,i=n,0==o?(a=138,c=3):n==o?(a=6,c=3):(a=7,c=4)}}function xa(e,t,r,n,i=0){da(e,0+n,3),ua(e),xs(e,r),xs(e,~r),r&&t&&ls(e.Jt,e.Gt,t,i,r),e.Gt+=r}function ka(e,t,r){let n,i,o,s,a=0;if(0!=e.Qt)do{n=255&e.Lr[a],n+=(255&e.Lr[a+1])<<8,i=e.Lr[a+2],a+=3,0==n?da(e,t[i]._r,t[i].en):(o=Qs[i],da(e,t[o+js+1]._r,t[o+js+1].en),s=Ls[o],0!=s&&(i-=cs[o],da(e,i,s)),n--,o=Fs(n),da(e,r[o]._r,r[o].en),s=Bs[o],0!=s&&(n-=as[o],da(e,n,s)))}while(a<e.Qt);da(e,t[qs]._r,t[qs].en)}var Sa=[{an:qa,cn:0,ln:0,fn:0,un:0},{an:Za,cn:4,ln:4,fn:8,un:4},{an:Za,cn:4,ln:5,fn:16,un:8},{an:Za,cn:4,ln:6,fn:32,un:32},{an:Ka,cn:4,ln:4,fn:16,un:16},{an:Ka,cn:8,ln:16,fn:32,un:32},{an:Ka,cn:8,ln:16,fn:128,un:128},{an:Ka,cn:8,ln:32,fn:128,un:256},{an:Ka,cn:32,ln:128,fn:258,un:1024},{an:Ka,cn:32,ln:258,fn:258,un:4096}];function va(e){return 2*e-(e>4?9:0)}function Fa(e,t,r){return((t<<e.dr^r)&e.ur)>>>0}function za(e,t){e.Hr=Fa(e,e.Hr,e.u[t+(Us-1)]);let r=e.wr[t&e.ar]=e.pr[e.Hr];return e.pr[e.Hr]=t,r}function Ra(e){e.pr[e.lr-1]=0,fs(e.pr,0,(e.lr-1)*e.pr.BYTES_PER_ELEMENT)}function Ea(e){let t,r,n=e.Pt;for(t=e.lr;t>0;)t--,r=e.pr[t],e.pr[t]=n>r?0:r-n;for(t=n;t>0;)t--,r=e.wr[t],e.wr[t]=n>r?0:r-n}function Da(e,t,r,n){let i=e.Dt;return i>n&&(i=n),0==i?0:(e.Dt-=i,ls(t,r,e.Rt,e.Et,i),1==e.At.ir?e.i=$s(e.i,new Go(t.buffer,t.byteOffset+r,i),i):2==e.At.ir&&(e.i=la(e.i,new Go(t.buffer,t.byteOffset+r,i),i)),e.Et+=i,e.Tt+=i,i)}function Ta(e){let t,r,n=e.Pt;do{if(r=e.Jr-e.Tr-e.Dr,0==r&&0==e.Dr&&0==e.Tr?r=n:-1==r&&r--,e.Dr>=n+vs(e)&&(ls(e.u,0,e.u,n,n-r),e.Gr-=n,e.Dr-=n,e.Er-=n,e.zr>e.Dr&&(e.zr=e.Dr),Ea(e),r+=n),0==e.o.Dt)break;if(t=Da(e.o,e.u,e.Dr+e.Tr,r),e.Tr+=t,e.Tr+e.zr>=Us){let t=e.Dr-e.zr;for(e.Hr=e.u[t],e.Hr=Fa(e,e.Hr,e.u[t+1]);e.zr&&(e.Hr=Fa(e,e.Hr,e.u[t+Us-1]),e.wr[t&e.ar]=e.pr[e.Hr],e.pr[e.Hr]=t,t++,e.zr--,e.Tr+e.zr>=Us););}}while(e.Tr<Ws&&0!=e.o.Dt);if(e.k<e.Jr){let t,r=e.Dr+e.Tr;e.k<r?(t=e.Jr-r,t>Hs&&(t=Hs),fs(e.u,r,t),e.k=r+t):e.k<r+Hs&&(t=r+Hs-e.k,t>e.Jr-e.k&&(t=e.Jr-e.k),fs(e.u,e.k,t),e.k+=t)}}function Ca(e){if(null==e)return!0;let t=e.At;return!t||t.o!=e||42!=t.nr&&57!=t.nr&&69!=t.nr&&73!=t.nr&&91!=t.nr&&103!=t.nr&&113!=t.nr&&666!=t.nr}function Ua(e,t){gs(e,t>>8),gs(e,255&t)}function Na(e){let t,r=e.At;(e=>{fa(e)})(r),t=r.Gt,t>e.Nt&&(t=e.Nt),0!=t&&(ls(e.Ct,e.Ut,r.Jt,r.kr,t),e.Ut+=t,r.kr+=t,e.Wt+=t,e.Nt-=t,r.Gt-=t,0==r.Gt&&(r.kr=r.yr))}function Wa(e,t){let r=e.At;r.sr&&r.sr.dn&&(e.i=la(e.i,new Go(r.Jt.buffer,r.yr+t,r.Gt-t),r.Gt-t))}function Ha(e,t){let r,n=e.At;if(Ca(e)||t>5||0>t)return ys(e,-2);if(!e.Ct||0!=e.Dt&&!e.Rt||666==n.nr&&4!=t)return ys(e,-2);if(0==e.Nt)return ys(e,-5);if(r=n.Rr,n.Rr=t,0!=n.Gt){if(Na(e),0==e.Nt)return n.Rr=Zs,0}else if(0==e.Dt&&va(t)<=va(r)&&4!=t)return ys(e,-5);if(666==n.nr&&0!=e.Dt)return ys(e,-5);if(42==n.nr&&0==n.ir&&(n.nr=113),42==n.nr){let t,r=8+(n.Mt-8<<4)<<8;if(t=n.Ar>=2||2>n.jr?0:6>n.jr?1:6==n.jr?2:3,r|=t<<6,0!=n.Dr&&(r|=32),r+=31-r%31,Ua(n,r),0!=n.Dr&&(Ua(n,e.i>>16),Ua(n,65535&e.i)),e.i=1,n.nr=113,Na(e),0!=n.Gt)return n.Rr=Zs,0}if(57==n.nr)if(e.i=la(0),gs(n,31),gs(n,139),gs(n,8),n.sr)gs(n,(n.sr.wn?1:0)+(n.sr.dn?2:0)+(null==n.sr.pn?0:4)+(null==n.sr.hn?0:8)+(null==n.sr.yn?0:16)),gs(n,255&n.sr.bn),gs(n,n.sr.bn>>>8&255),gs(n,n.sr.bn>>>16&255),gs(n,n.sr.bn>>>24&255),gs(n,9==n.jr?2:n.Ar>=2||2>n.jr?4:0),gs(n,255&n.sr.gn),null!=n.sr.pn&&(gs(n,255&n.sr.xn),gs(n,n.sr.xn>>>8&255)),n.sr.dn&&(e.i=la(e.i,n.Jt,n.Gt)),n.Vr=0,n.nr=69;else if(gs(n,0),gs(n,0),gs(n,0),gs(n,0),gs(n,0),gs(n,9==n.jr?2:n.Ar>=2||2>n.jr?4:0),gs(n,255),n.nr=113,Na(e),0!=n.Gt)return n.Rr=Zs,0;if(69==n.nr){if(n.sr&&null!=n.sr.pn){let t=n.Gt,r=(65535&n.sr.xn)-n.Vr;for(;n.Gt+r>n.gr;){let i=n.gr-n.Gt;if(ls(n.Jt,n.Gt,n.sr.pn,n.Vr,i),n.Gt=n.gr,Wa(e,t),n.Vr+=i,Na(e),0!=n.Gt)return n.Rr=Zs,0;t=0,r-=i}ls(n.Jt,n.Gt,n.sr.pn,n.Vr,r),n.Gt+=r,Wa(e,t),n.Vr=0}n.nr=73}if(73==n.nr){if(n.sr&&n.sr.hn&&n.sr.hn.length){let t,r=n.Gt;do{if(n.Gt==n.gr){if(Wa(e,r),Na(e),0!=n.Gt)return n.Rr=Zs,0;r=0}t=n.sr.hn[n.Vr++],gs(n,t)}while(0!=t);Wa(e,r),n.Vr=0}n.nr=91}if(91==n.nr){if(n.sr&&n.sr.yn&&n.sr.yn.length){let t,r=n.Gt;do{if(n.Gt==n.gr){if(Wa(e,r),Na(e),0!=n.Gt)return n.Rr=Zs,0;r=0}t=n.sr.yn[n.Vr++],gs(n,t)}while(0!=t);Wa(e,r)}n.nr=103}if(103==n.nr){if(n.sr&&n.sr.dn){if(n.Gt+2>n.gr&&(Na(e),0!=n.Gt))return n.Rr=Zs,0;gs(n,255&e.i),gs(n,e.i>>>8&255),e.i=la(0)}if(n.nr=113,Na(e),0!=n.Gt)return n.Rr=Zs,0}if(0!=e.Dt||0!=n.Tr||0!=t&&666!=n.nr){let r=0==n.jr?qa(n,t):2==n.Ar?((e,t)=>{let r=!1;for(;;){if(0==e.Tr&&(Ta(e),0==e.Tr)){if(0==t)return 0;break}if(e.Cr=0,r=Ss(e,e.u[e.Dr]),e.Tr--,e.Dr++,r){let t=Ma(e,!1);if(null!=t)return t}}if(e.zr=0,4==t)return Ma(e,!0)??3;if(e.Qt){let t=Ma(e,!1);if(null!=t)return t}return 1})(n,t):3==n.Ar?((e,t)=>{let r,n,i,o;for(;;){if(e.Tr<=Ns){if(Ta(e),e.Tr<=Ns&&0==t)return 0;if(0==e.Tr)break}if(e.Cr=0,e.Tr>=Us&&e.Dr>0&&(i=e.Dr-1,n=e.u[i],n==++i&&n==++i&&n==++i)){o=e.Dr+Ns;do{}while(n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&o>i);e.Cr=Ns-(o-i),e.Cr>e.Tr&&(e.Cr=e.Tr)}if(e.Cr<Us?(r=Ss(e,e.u[e.Dr]),e.Tr--,e.Dr++):(e.Dr,e.Dr,e.Cr,r=ks(e,1,e.Cr-Us),e.Tr-=e.Cr,e.Dr+=e.Cr,e.Cr=0),r){let t=Ma(e,!1);if(null!=t)return t}}if(e.zr=0,4==t)return Ma(e,!0)??3;if(e.Qt){let t=Ma(e,!1);if(null!=t)return t}return 1})(n,t):Sa[n.jr].an(n,t);if((2==r||3==r)&&(n.nr=666),0==r||2==r)return 0==e.Nt&&(n.Rr=Zs),0;if(1==r&&(1==t?(e=>{da(e,2,3),da(e,Gs[qs]._r,Gs[qs].en),fa(e)})(n):5!=t&&(xa(n,null,0,0),3==t&&(Ra(n),0==n.Tr&&(n.Dr=0,n.Er=0,n.zr=0))),Na(e),0==e.Nt))return n.Rr=Zs,0}return 4!=t?0:n.ir>0?(2==n.ir?(gs(n,255&e.i),gs(n,e.i>>>8&255),gs(n,e.i>>>16&255),gs(n,e.i>>>24&255),gs(n,255&e.Tt),gs(n,e.Tt>>>8&255),gs(n,e.Tt>>>16&255),gs(n,e.Tt>>>24&255)):(Ua(n,e.i>>>16&65535),Ua(n,65535&e.i)),Na(e),n.ir>0&&(n.ir=-n.ir),0!=n.Gt?0:1):1}function ja(e){if(Ca(e))return-2;let t=e.At,r=t.nr;return t.u=ns,t.wr=is,t.pr=is,t.Jt=ns,t.Lr=ns,t.qr=new Qo(0),t.Zr=ns,t.Kr=is,t.$t.length=0,t.er.length=0,t.tn.length=0,t.sr=void 0,t.yr=0,t.kr=0,t.Xt=0,113==r?-3:0}function Aa(e,t){let r,n,i=e.Or,o=e.Dr,s=e.Ur,a=e.Mr,c=e.Dr>vs(e)?e.Dr-vs(e):0,l=e.wr,f=e.ar,u=e.u,d=e.Tr,w=d>Ns?Ns:d,p=u[o],h=u[o+1],m=u[o+s-1],y=u[o+s];s>=e.Pr&&(i>>=2),a>d&&(a=d);do{if(r=t,u[r+s]!=y||u[r+s-1]!=m||u[r]!=p||u[r+1]!=h)continue;let i=2;for(;w>i&&u[o+i]==u[r+i];)i++;if(n=i,n>s){if(e.Gr=t,s=n,n>=a)break;m=u[o+s-1],y=u[o+s]}}while((t=l[t&f])>c&&0!=--i);return s>d?d:s}function Pa(e,t){((e,t,r,n,i=0)=>{let o,s,a=0;e.jr>0?(2==e.o.t&&(e.o.t=(e=>{let t,r=4093624447;for(t=0;31>=t;t++,r>>=1)if(1&r&&0!=e.$t[t]._t)return 0;if(0!=e.$t[9]._t||0!=e.$t[10]._t||0!=e.$t[13]._t)return 1;for(t=32;js>t;t++)if(0!=e.$t[t]._t)return 1;return 0})(e)),ya(e,e.rn),ya(e,e.nn),a=(e=>{let t;for(ba(e,e.$t,e.rn.Kt),ba(e,e.er,e.nn.Kt),ya(e,e.sn),t=Ms-1;t>=3&&0==e.tn[rs[t]].en;t--);return e.Sr+=3*(t+1)+5+5+4,t})(e),o=e.Sr+3+7>>3,s=e.vr+3+7>>3,(o>=s||4==e.Ar)&&(o=s)):o=s=r+5,o>=r+4&&t?xa(e,t,r,n,i):s==o?(da(e,2+n,3),ka(e,Gs,Xs)):(da(e,4+n,3),((e,t,r,n)=>{let i;for(da(e,t-257,5),da(e,r-1,5),da(e,n-4,4),i=0;n>i;i++)da(e,e.tn[rs[i]].en,3);ga(e,e.$t,t-1),ga(e,e.er,r-1)})(e,e.rn.Kt+1,e.nn.Kt+1,a+1),ka(e,e.$t,e.er)),wa(e),n&&ua(e)})(e,e.u,e.Dr-e.Er,t,e.Er),e.Er=e.Dr,Na(e.o)}function Ma(e,t){return Pa(e,t?1:0),0==e.o.Nt?t?2:0:null}var Oa=65535;function Ia(e,t){return t>e?e:t}function qa(e,t){let r,n,i,o=Ia(e.gr-5,e.Pt),s=0,a=e.o.Dt;do{if(r=Oa,i=e.It+42>>3,e.o.Nt<i||(i=e.o.Nt-i,n=e.Dr-e.Er,r>n+e.o.Dt&&(r=n+e.o.Dt),r>i&&(r=i),o>r&&(0==r&&4!=t||0==t||r!=n+e.o.Dt)))break;s=4==t&&r==n+e.o.Dt?1:0,xa(e,null,0,s),e.Jt[e.Gt-4]=r,e.Jt[e.Gt-3]=r>>8,e.Jt[e.Gt-2]=~r,e.Jt[e.Gt-1]=~r>>8,Na(e.o),n&&(n>r&&(n=r),ls(e.o.Ct,e.o.Ut,e.u,e.Er,n),e.o.Ut+=n,e.o.Nt-=n,e.o.Wt+=n,e.Er+=n,r-=n),r&&(Da(e.o,e.o.Ct,e.o.Ut,r),e.o.Ut+=r,e.o.Nt-=r,e.o.Wt+=r)}while(0==s);if(a-=e.o.Dt,a){if(a<e.Pt)e.Jr-e.Dr<=a&&(e.Dr-=e.Pt,ls(e.u,0,e.u,e.Pt,e.Dr),2>e.Fr&&e.Fr++,e.zr>e.Dr&&(e.zr=e.Dr)),ls(e.u,e.Dr,e.o.Rt,e.o.Et-a,a),e.Dr+=a,e.zr+=Ia(a,e.Pt-e.zr);else{e.Fr=2;let t=e.o.Et-e.Pt;ls(e.u,0,e.o.Rt,t,e.Pt),e.Dr=e.Pt,e.zr=e.Dr}e.Er=e.Dr}return e.k<e.Dr&&(e.k=e.Dr),s?(e.Br=8,3):0!=t&&4!=t&&0==e.o.Dt&&e.Dr==e.Er?1:(i=e.Jr-e.Dr,e.o.Dt>i&&e.Er>=e.Pt&&(e.Er-=e.Pt,e.Dr-=e.Pt,ls(e.u,0,e.u,e.Pt,e.Dr),2>e.Fr&&e.Fr++,i+=e.Pt,e.zr>e.Dr&&(e.zr=e.Dr)),i>e.o.Dt&&(i=e.o.Dt),i&&(Da(e.o,e.u,e.Dr,i),e.Dr+=i,e.zr+=Ia(i,e.Pt-e.zr)),e.k<e.Dr&&(e.k=e.Dr),i=e.It+42>>3,i=Ia(e.gr-i,Oa),o=Ia(i,e.Pt),n=e.Dr-e.Er,(n>=o||(n||4==t)&&0!=t&&0==e.o.Dt&&i>=n)&&(r=Ia(n,i),s=4==t&&0==e.o.Dt&&r==n?1:0,xa(e,e.u,r,s,e.Er),e.Er+=r,Na(e.o)),s&&(e.Br=8),s?2:0)}function Za(e,t){let r,n=!1;for(;;){if(e.Tr<Ws){if(Ta(e),e.Tr<Ws&&0==t)return 0;if(0==e.Tr)break}if(r=0,e.Tr>=Us&&(r=za(e,e.Dr)),0!=r&&e.Dr-r<=vs(e)&&(e.Cr=Aa(e,r)),e.Cr<Us)n=Ss(e,e.u[e.Dr]),e.Tr--,e.Dr++;else if(e.Dr,e.Gr,e.Cr,n=ks(e,e.Dr-e.Gr,e.Cr-Us),e.Tr-=e.Cr,e.Cr>e.Ir||e.Tr<Us)e.Dr+=e.Cr,e.Cr=0,e.Hr=e.u[e.Dr],e.Hr=Fa(e,e.Hr,e.u[e.Dr+1]);else{e.Cr--;do{e.Dr++,r=za(e,e.Dr)}while(0!=--e.Cr);e.Dr++}if(n){let t=Ma(e,!1);if(null!=t)return t}}if(e.zr=e.Dr<Us-1?e.Dr:Us-1,4==t)return Ma(e,!0)??3;if(e.Qt){let t=Ma(e,!1);if(null!=t)return t}return 1}function Ka(e,t){let r,n=!1;for(;;){if(e.Tr<Ws){if(Ta(e),e.Tr<Ws&&0==t)return 0;if(0==e.Tr)break}if(r=0,e.Tr>=Us&&(r=za(e,e.Dr)),e.Ur=e.Cr,e.Nr=e.Gr,e.Cr=Us-1,0!=r&&e.Ur<e.Ir&&e.Dr-r<=vs(e)&&(e.Cr=Aa(e,r),5>=e.Cr&&(1==e.Ar||e.Cr==Us&&e.Dr-e.Gr>4096)&&(e.Cr=Us-1)),e.Ur<Us||e.Cr>e.Ur)if(e.Wr){if(n=Ss(e,e.u[e.Dr-1]),n&&Pa(e,0),e.Dr++,e.Tr--,0==e.o.Nt)return 0}else e.Wr=1,e.Dr++,e.Tr--;else{let t=e.Dr+e.Tr-Us;e.Dr,e.Nr,e.Ur,n=ks(e,e.Dr-1-e.Nr,e.Ur-Us),e.Tr-=e.Ur-1,e.Ur-=2;do{++e.Dr<=t&&(r=za(e,e.Dr))}while(0!=--e.Ur);if(e.Wr=0,e.Cr=Us-1,e.Dr++,n){let t=Ma(e,!1);if(null!=t)return t}}}if(e.Wr&&(n=Ss(e,e.u[e.Dr-1]),e.Wr=0),e.zr=e.Dr<Us-1?e.Dr:Us-1,4==t)return Ma(e,!0)??3;if(e.Qt){let t=Ma(e,!1);if(null!=t)return t}return 1}var La=852,Ba=as.map(e=>e+1),Va=cs.subarray(0,-1).map(e=>e+3),Ya=ss.map(oc),Ja=ss.map(sc);Ya.push(64,2),Ja.push(142,2);var Ga=os.slice(0,-2).map(oc),Xa=os.slice(0,-2).map(sc);Ga.push(16,1,73,1,200,1),Xa.push(144,1,72,1,78,1);var Qa=new Xo([...Va,258,0,0]),_a=new Xo([...Va,3,0,0]),$a=ws(Ga),ec=ws(Xa),tc=new Xo([...Ba,0,0]),rc=new Xo([...Ba,32769,49153]),nc=ws(Ya),ic=ws(Ja);function oc(e,t){return t%2?e:e+16}function sc(e,t){return t%2?e:e+128}function ac(e,t){let r,n=e.At,i=e.Et,o=e.Ut,s=e.Rt,a=e.Ct,c=n.u,l=n.p>>>0,f=n.It>>>0,u=n.kn,d=n.tt,w=(1<<n.Sn)-1,p=(1<<n.rt)-1,h=n.Pt>>>0,m=n.k>>>0,y=n.Ot>>>0,b=n.vn,g=o-(t-e.Nt),x=o+(e.Nt-257),k=i+(e.Dt-5),S=0,v=0,F=0,z=0;e:do{for(;15>f;){if(i>=s.length)break e;l+=s[i++]<<f,f+=8}for(r=u[l&w];;){if(F=r>>>16&255,l>>>=F,f-=F,F=r>>>24,0==F){a[o++]=65535&r;break}if(16&F){if(S=65535&r,F&=15,F){for(;F>f;){if(i>=s.length){n.Fn=16200;break e}l+=s[i++]<<f,f+=8}S+=l&(1<<F)-1,l>>>=F,f-=F}for(;15>f;){if(i>=s.length){n.Fn=16200;break e}l+=s[i++]<<f,f+=8}for(r=d[l&p];;){if(F=r>>>16&255,l>>>=F,f-=F,F=r>>>24,16&F){if(v=65535&r,F&=15,F){for(;F>f;){if(i>=s.length){n.Fn=16200;break e}l+=s[i++]<<f,f+=8}v+=l&(1<<F)-1,l>>>=F,f-=F}let t=S,u=o-g;if(v>u){let r=v-u;if(r>m&&b){e.Ht="invalid distance too far back",n.Fn=16209;break e}if(0==y){if(z=h-r,r>=t){for(let e=0;t>e;++e)a[o++]=c[z++];continue e}for(let e=0;r>e;++e)a[o++]=c[z++];t-=r,z=o-v}else if(r>y){z=h+y-r;let e=r-y;if(e>=t){for(let e=0;t>e;++e)a[o++]=c[z++];continue e}for(let t=0;e>t;++t)a[o++]=c[z++];if(t-=e,z=0,t>y){for(let e=0;y>e;++e)a[o++]=c[z++];t-=y,z=o-v}}else{if(z=y-r,r>=t){for(let e=0;t>e;++e)a[o++]=c[z++];continue e}for(let e=0;r>e;++e)a[o++]=c[z++];t-=r,z=o-v}for(;t>2;)a[o++]=a[z++],a[o++]=a[z++],a[o++]=a[z++],t-=3;t&&(a[o++]=a[z++],t>1&&(a[o++]=a[z++]))}else{for(z=o-v;t>2;)a[o++]=a[z++],a[o++]=a[z++],a[o++]=a[z++],t-=3;t&&(a[o++]=a[z++],t>1&&(a[o++]=a[z++]))}break}if(64&F){e.Ht="invalid distance code",n.Fn=16209;break e}r=d[(65535&r)+(l&(1<<F)-1)]}break}if(64&F){if(32&F){n.Fn=16191;break e}e.Ht="invalid literal/length code",n.Fn=16209;break e}r=u[(65535&r)+(l&(1<<F)-1)]}}while(k>i&&x>o);let R=f>>3;i-=R,f-=R<<3,l&=(1<<f)-1,e.Et=i,e.Ut=o,e.Dt=k>i?k-i+5:5-(i-k),e.Nt=x>o?x-o+257:257-(o-x),n.p=l>>>0,n.It=f>>>0}var cc=new Qo(0);function lc(e,t){let r=cc,n=t?1446:1444;return{...ds(e,0),o:e,Fn:16180,zn:!1,ir:0,Rn:!1,En:0,Dn:0,Tn:0,Cn:0,u:ns,Un:0,dt:0,pn:0,kn:r,tt:r,Sn:0,rt:0,Nn:0,Wn:0,Hn:0,jn:0,An:r,Pn:new Xo(320),Mn:new Xo(288),On:new Qo(n),In:0,vn:!0,qn:0,Zn:0,Kn:t}}function fc(e,t,r){return e<<24|t<<16|r}function uc(e=0,t=0,r=0){return fc(e,t,r)}function dc(e=1){return fc(64,e,0)}function wc(e){return(255&e)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>24&255}var pc={Kn:!1,Ln:Qa,Bn:$a,Vn:tc,Yn:nc,Jn:20,Gn:257,Xn:0,Qn:592,_n:!1,$n:!0},hc={Kn:!0,Ln:_a,Bn:ec,Vn:rc,Yn:ic,Jn:19,Gn:256,Xn:-1,Qn:594,_n:!0,$n:!1};function mc(e,t,r,n,i,o,s,a){let c,l,f,u,d,w,p,h,m,y,b,g,x,k,S,v,F,z,R,E=new Xo(16),D=new Xo(16),T=a?hc:pc;for(c=0;15>=c;c++)E[c]=0;for(l=0;r>l;l++)E[t[l]]++;for(d=i.ei,u=15;u>=1&&0==E[u];u--);if(d>u&&(d=u),0==u)return T.$n?(S=dc(1),n.ei[0]=S,n.ei[1]=S,i.ei=1,0):-1;for(f=1;u>f&&0==E[f];f++);for(f>d&&(d=f),h=1,c=1;15>=c;c++)if(h<<=1,h-=E[c],0>h)return-1;if(h>0&&(0==e||1!=u))return-1;for(D[1]=0,c=1;15>c;c++)D[c+1]=D[c]+E[c];for(l=0;r>l;l++)0!=t[l]&&(o[D[t[l]]++]=l);switch(e){case 0:F=z=o,R=T.Jn;break;case 1:F=T.Ln,z=T.Bn,R=T.Gn;break;default:F=T.Vn,z=T.Yn,R=T.Xn}if(y=0,l=0,c=f,v=s.ei,w=d,p=0,x=-1,m=1<<d,k=m-1,1==e&&(T._n?m>=La:m>La)||2==e&&(T._n?m>=T.Qn:m>T.Qn))return 1;for(;;){S=yc(o,l,c,p,e,F,z,R,T.Kn),b=1<<c-p,g=1<<w,f=g;do{g-=b;let e=(y>>p)+g;n.ei[v+e]=S}while(0!=g);for(b=1<<c-1;y&b;)b>>=1;if(0!=b?(y&=b-1,y+=b):y=0,l++,0==--E[c]){if(c==u)break;c=t[o[l]]}if(c>d&&(y&k)!=x){for(0==p&&(p=d),v+=1<<w,w=c-p,h=1<<w;u>w+p&&(h-=E[w+p],h>0);)w++,h<<=1;if(m+=1<<w,1==e&&(T._n?m>=La:m>La)||2==e&&(T._n?m>=T.Qn:m>T.Qn))return 1;x=y&k,n.ei[s.ei+x]=fc(w,d,v-s.ei)}}if(0!=y)for(S=dc(c-p);0!=y;){for(0!=p&&(y&k)!=x&&(p=0,c=d,v=s.ei,w=d,S=dc(c)),n.ei[v+(y>>p)]=S,b=1<<c-1;y&b;)b>>=1;0!=b?(y&=b-1,y+=b):y=0}return s.ei+=m,i.ei=d,0}function yc(e,t,r,n,i,o,s,a,c){let l;if(c?e[t]<a:e[t]+1<a)l=uc(0,r-n,e[t]);else if(c?e[t]>a:e[t]>=a)if(c&&1==i){let i=e[t]-257;l=uc(s[i],r-n,o[i])}else{let i=c?e[t]:e[t]-a;l=uc(s[i],r-n,o[i])}else l=((e=0)=>fc(96,e,0))(r-n);return l}var bc=new Qo(0),gc={ti:!0,ri:new Qo(544),ni:bc,ii:bc},xc={ti:!0,ri:new Qo(544),ni:bc,ii:bc};function kc(e){let t;return!(e&&(t=e.At,!(!t||t.o!=e||t.Kn&&(16191>t.Fn||t.Fn>16209)||!t.Kn&&(16180>t.Fn||t.Fn>16211))))}function Sc(e){let t=e.Kn?xc:gc,r={ei:0};if(t.ti){let n,i,o;for(n=0;144>n;)e.Pn[n++]=8;for(;256>n;)e.Pn[n++]=9;for(;280>n;)e.Pn[n++]=7;for(;288>n;)e.Pn[n++]=8;t.ri.fill(0),o=t.ri,t.ni=o,i=9;let s={ei:o},a={ei:i},c={ei:0};for(mc(1,e.Pn,288,s,a,e.Mn,c,e.Kn),o=s.ei,i=a.ei,e.In=c.ei,n=0;32>n;)e.Pn[n++]=5;i=5;let l=c.ei,f={ei:o},u={ei:i};r.ei=l,mc(2,e.Pn,32,f,u,e.Mn,r,e.Kn),t.ii=o.slice(l),t.ti=!1}e.kn=t.ni,e.Sn=9,e.tt=t.ii,e.rt=5,e.In=r.ei}var vc=class extends es{constructor(){super("Need more input")}};function Fc(e,t){let r,n,i,o,s,a,c,l,f,u,d,w,p,h,m,y,b,g=new Go(4);if(kc(e)||!e.Ct||!e.Rt&&0!=e.Dt)return-2;a=0,l=0,c=0,f=0,n=ns,i=0,o=ns,s=0,r=e.At,16191==r.Fn&&(r.Fn=16192),F(),u=a,d=c,b=0;try{for(;;)switch(r.Fn){case 16180:if(0==r.ir){r.Fn=16192;break}if(D(16),2&r.ir&&35615==l){0==r.Mt&&(r.Mt=15),r.Tn=la(0),r.Tn=S(r.Tn,l),R(),r.Fn=16181;break}if(r.sr&&(r.sr.oi=-1),!(1&r.ir)||((T(8)<<8)+(l>>8))%31){e.Ht="incorrect header check",r.Fn=16209;break}if(8!=T(4)){e.Ht="unknown compression method",r.Fn=16209;break}if(C(4),y=T(4)+8,0==r.Mt&&(r.Mt=y),y>15||y>r.Mt){e.Ht="invalid window size",r.Fn=16209;break}r.Dn=1<<y,r.En=0,e.i=r.Tn=$s(0),r.Fn=512&l?16189:16191,R();break;case 16181:if(D(16),r.En=l,8!=(255&r.En)){e.Ht="unknown compression method",r.Fn=16209;break}if(57344&r.En){e.Ht="unknown header flags set",r.Fn=16209;break}r.sr&&(r.sr.wn=l>>8&1),512&r.En&&4&r.ir&&(r.Tn=S(r.Tn,l)),R(),r.Fn=16182;case 16182:D(32),r.sr&&(r.sr.bn=l),512&r.En&&4&r.ir&&(r.Tn=v(r.Tn,l)),R(),r.Fn=16183;case 16183:D(16),r.sr&&(r.sr.si=255&l,r.sr.gn=l>>8),512&r.En&&4&r.ir&&(r.Tn=S(r.Tn,l)),R(),r.Fn=16184;case 16184:1024&r.En?(D(16),r.Un=l,r.sr&&(r.sr.xn=l),512&r.En&&4&r.ir&&(r.Tn=S(r.Tn,l)),R()):r.sr&&(r.sr.pn=ns),r.Fn=16185;case 16185:if(1024&r.En&&(w=r.Un,w>a&&(w=a),w&&(r.sr&&r.sr.pn&&r.sr.ai&&(y=r.sr.xn-r.Un)<r.sr.ai&&ls(r.sr.pn,y,n,i,w),512&r.En&&4&r.ir&&(r.Tn=la(r.Tn,n.subarray(i,i+w),w)),a-=w,i+=w,r.Un-=w),r.Un))return x();r.Un=0,r.Fn=16186;case 16186:if(2048&r.En){if(0==a)return x();w=0;do{y=n[i+w++],r.sr&&r.sr.ci&&r.Un<r.sr.ci&&(r.sr.hn[r.Un++]=y)}while(y&&a>w);if(512&r.En&&4&r.ir&&(r.Tn=la(r.Tn,n.subarray(i,i+w),w)),a-=w,i+=w,y)return x()}else r.sr&&(r.sr.hn=ns);r.Un=0,r.Fn=16187;case 16187:if(4096&r.En){if(0==a)return x();w=0;do{y=n[i+w++],r.sr&&r.sr.fi&&r.Un<r.sr.fi&&(r.sr.yn[r.Un++]=y)}while(y&&a>w);if(512&r.En&&4&r.ir&&(r.Tn=la(r.Tn,n.subarray(i,i+w),w)),a-=w,i+=w,y)return x()}else r.sr&&(r.sr.yn=ns);r.Fn=16188;case 16188:if(512&r.En){if(D(16),4&r.ir&&l!=(65535&r.Tn)){e.Ht="header crc mismatch",r.Fn=16209;break}R()}r.sr&&(r.sr.dn=r.En>>9&1,r.sr.oi=1),e.i=r.Tn=la(0),r.Fn=16191;break;case 16189:D(32),e.i=r.Tn=wc(l),R(),r.Fn=16190;case 16190:if(!r.Rn)return z(),2;e.i=r.Tn=$s(0),r.Fn=16191;case 16191:if(5==t||6==t)return x();case 16192:if(r.zn){U(),r.Fn=16206;break}switch(D(3),r.zn=!!T(1),C(1),T(2)){case 0:r.Fn=16193;break;case 1:if(Sc(r),r.Fn=16199,6==t)return C(2),x();break;case 2:r.Fn=16196;break;case 3:e.Ht="invalid block type",r.Fn=16209}C(2);break;case 16193:if(U(),D(32),(65535&l)!=(l>>>16^65535)){e.Ht="invalid stored block lengths",r.Fn=16209;break}if(r.Un=65535&l,R(),r.Fn=16194,6==t)return x();case 16194:r.Fn=16195;case 16195:if(w=r.Un,w){if(w>a&&(w=a),w>c&&(w=c),0==w)return x();ls(o,s,n,i,w),a-=w,i+=w,c-=w,s+=w,r.Un-=w;break}r.Fn=16191;break;case 16196:if(D(14),r.Wn=T(5)+257,C(5),r.Hn=T(5)+1,C(5),r.Nn=T(4)+4,C(4),r.Wn>286||!r.Kn&&r.Hn>30){e.Ht=r.Kn?"too many length":"too many length or distance symbols",r.Fn=16209;break}r.jn=0,r.Fn=16197;case 16197:for(;r.jn<r.Nn;)D(3),r.Pn[rs[r.jn++]]=T(3),C(3);for(;19>r.jn;)r.Pn[rs[r.jn++]]=0;r.An=r.On,r.kn=r.tt=r.An,r.Sn=7;let u={ei:r.An},g={ei:r.Sn},N={ei:0};if(b=mc(0,r.Pn,19,u,g,r.Mn,N,r.Kn),r.An=u.ei,r.Sn=g.ei,b){e.Ht="invalid code lengths set",r.Fn=16209;break}r.jn=0,r.Fn=16198;case 16198:for(;r.jn<r.Wn+r.Hn;){for(;h=r.kn[T(r.Sn)],(h>>>16&255)>f;)E();if(16>(65535&h))C(h>>>16&255),r.Pn[r.jn++]=65535&h;else{if(16==(65535&h)){if(D(2+(h>>>16&255)),C(h>>>16&255),0==r.jn){e.Ht="invalid bit length repeat",r.Fn=16209;break}y=r.Pn[r.jn-1],w=3+T(2),C(2)}else 17==(65535&h)?(D(3+(h>>>16&255)),C(h>>>16&255),y=0,w=3+T(3),C(3)):(D(7+(h>>>16&255)),C(h>>>16&255),y=0,w=11+T(7),C(7));if(r.jn+w>r.Wn+r.Hn){e.Ht="invalid bit length repeat",r.Fn=16209;break}for(;w--;)r.Pn[r.jn++]=y}}if(16209==r.Fn)break;if(0==r.Pn[256]){e.Ht="invalid code -- missing end-of-block",r.Fn=16209;break}r.An=r.On,r.Sn=9;let W={ei:r.An},H={ei:r.Sn},j={ei:0};b=mc(1,r.Pn,r.Wn,W,H,r.Mn,j,r.Kn),r.An=W.ei,r.Sn=H.ei;let A=j.ei;if(r.kn=r.An.slice(0,A),b){e.Ht="invalid literal/lengths set",r.Fn=16209;break}r.rt=6;let P=r.Pn.subarray(r.Wn,r.Wn+r.Hn),M={ei:r.An},O={ei:r.rt},I={ei:A};if(b=mc(2,P,r.Hn,M,O,r.Mn,I,r.Kn),r.An=M.ei,r.rt=O.ei,r.tt=r.An.slice(A),b){e.Ht="invalid distances set",r.Fn=16209;break}if(r.Fn=16199,6==t)return x();case 16199:r.Fn=16200;case 16200:if(!r.Kn&&a>=6&&c>=258){z(),ac(e,d),F(),16191==r.Fn&&(r.qn=-1);break}for(r.qn=0;h=r.kn[T(r.Sn)],(h>>>16&255)>f;)E();if(h>>>24&&!(h>>>24&240)){for(m=h;h=r.kn[(65535&m)+(T((m>>>16&255)+(m>>>24))>>(m>>>16&255))],(m>>>16&255)+(h>>>16&255)>f;)E();C(m>>>16&255),r.qn+=m>>>16&255}if(C(h>>>16&255),r.qn+=h>>>16&255,r.Un=65535&h,!(h>>>24)){r.Fn=16205;break}if(h>>>24&32){r.qn=-1,r.Fn=16191;break}if(h>>>24&64){e.Ht="invalid literal/length code",r.Fn=16209;break}r.pn=h>>>24&(r.Kn?31:15),r.Fn=16201;case 16201:r.pn&&(D(r.pn),r.Un+=T(r.pn),C(r.pn),r.qn+=r.pn),r.Zn=r.Un,r.Fn=16202;case 16202:for(;h=r.tt[T(r.rt)],(h>>>16&255)>f;)E();if(!(h>>>24&240)){for(m=h;h=r.tt[(65535&m)+(T((m>>>16&255)+(m>>>24))>>(m>>>16&255))],(m>>>16&255)+(h>>>16&255)>f;)E();C(m>>>16&255),r.qn+=m>>>16&255}if(C(h>>>16&255),r.qn+=h>>>16&255,h>>>24&64){e.Ht="invalid distance code",r.Fn=16209;break}r.dt=65535&h,r.pn=h>>>24&15,r.Fn=16203;case 16203:r.pn&&(D(r.pn),r.dt+=T(r.pn),C(r.pn),r.qn+=r.pn),r.Fn=16204;case 16204:if(0==c)return x();if(w=d-c,r.dt>w){if(w=r.dt-w,w>r.k&&r.vn){e.Ht="invalid distance too far back",r.Fn=16209;break}w>r.Ot?(w-=r.Ot,p=r.Pt-w):p=r.Ot-w,w>r.Un&&(w=r.Un),w>c&&(w=c);for(let e=0;w>e;++e)o[s]=255&r.u[p],++s,++p}else{p=s-r.dt,w=r.Un,w>c&&(w=c);for(let e=0;w>e;++e)o[s]=o[p],++s,++p}w>c&&(w=c),c-=w,r.Un-=w,0==r.Un&&(r.Fn=16200);break;case 16205:if(0==c)return x();o[s++]=r.Un,c--,r.Fn=16200;break;case 16206:if(r.ir){if(D(32),d-=c,e.Wt+=d,r.Cn+=d,4&r.ir&&d){let t=o.subarray(s-d,s);e.i=r.Tn=k(r.Tn,t,d)}if(d=c,4&r.ir&&(r.En?l:wc(l)>>>0)!=r.Tn){e.Ht="incorrect data check",r.Fn=16209;break}R()}r.Fn=16207;case 16207:if(r.ir&&r.En){if(D(32),4&r.ir&&l!=(4294967295&r.Cn)){e.Ht="incorrect length check",r.Fn=16209;break}R()}r.Fn=16208;case 16208:return b=1,x();case 16209:return b=-3,x();case 16210:return-4;default:return-2}}catch(e){if(e instanceof vc)return x();throw e}function x(){if(z(),r.Pt||d!=e.Nt&&16209>r.Fn&&(r.Kn?16208>r.Fn:16206>r.Fn)||4!=t){let t=d-e.Nt;if(((e,t,r)=>{let n=e.At;if(!(n.u&&0!=n.u.length||(n.u=new Go(1<<n.Mt),n.u)))return 1;if(0==n.Pt&&(n.Pt=1<<n.Mt,n.Ot=0,n.k=0),r<n.Pt){let e=n.Pt-n.Ot;e>r&&(e=r),ls(n.u,n.Ot,t,t.length-r,e),(r-=e)?(ls(n.u,0,t,t.length-r,r),n.Ot=r,n.k=n.Pt):(n.Ot+=e,n.Ot==n.Pt&&(n.Ot=0),n.k<n.Pt&&(n.k+=e))}else ls(n.u,0,t,t.length-n.Pt,n.Pt),n.Ot=0,n.k=n.Pt;return 0})(e,e.Ct.subarray(e.Ut-t,e.Ut),t))return r.Fn=16210,-4}return u-=e.Dt,d-=e.Nt,e.Tt+=u,e.Wt+=d,r.Cn+=d,4&r.ir&&d&&(e.i=r.Tn=k(r.Tn,e.Ct.subarray(e.Ut-d,e.Ut),d)),e.t=r.It+(r.zn?64:0)+(16191==r.Fn?128:0)+(16199==r.Fn||16194==r.Fn?256:0),(0==u&&0==d&&0==b||4==t&&0==b)&&(b=-5),b}function k(e,t,n){return r.En?la(e,t,n):$s(e,t,n)}function S(e,t){return g[0]=255&t,g[1]=t>>>8&255,la(e,g,2)>>>0}function v(e,t){return g[0]=255&t,g[1]=t>>>8&255,g[2]=t>>>16&255,g[3]=t>>>24&255,la(e,g,4)>>>0}function F(){o=e.Ct,s=e.Ut,c=e.Nt,n=e.Rt,i=e.Et,a=e.Dt,l=r.p,f=r.It}function z(){e.Ct=o,e.Ut=s,e.Nt=c,e.Rt=n,e.Et=i,e.Dt=a,r.p=l,r.It=f}function R(){l=0,f=0}function E(){if(0==a)throw new vc;a--,l+=(255&n[i])<<f,i++,l>>>=0,f+=8}function D(e){for(;e>f;)E()}function T(e){return l&(1<<e)-1}function C(e){l>>>=e,f-=e}function U(){l>>>=7&f,f-=7&f}}function zc(e){return kc(e)?-2:0}var Rc=65536,Ec=class{constructor(e=16,t=Rc){this.ui=[],this.di=e;for(let r=0;r<$o.min(e,4);r++)this.ui.push(new Go(t))}wi(e=Rc){for(let t=this.ui.length-1;t>=0;t--){let r=this.ui[t];if(r.length>=e)return this.ui.splice(t,1),r}return new Go(e)}release(e){this.ui.length<this.di&&this.ui.push(e)}};function Dc(e){let t=new Ec(32,Rc),r=null;function n(){let t=e.pi(),r=e.hi(t);if(0!=r&&0!=r)throw new es("init failed: "+r);return{o:t}}function i(e){try{t.release(e)}catch{}}return new _o({start(){},transform(o,s){r||(r=n());let a=r.o;if(r.yi)return;let c=0;for(;c<o.length;){let n=$o.min(o.length-c,32768),l=o.subarray(c,c+n);for(a.Rt=l,a.Et=0,a.Dt=l.length;a.Dt>0;){let n=t.wi(),o=!1;try{a.Ct=n,a.Ut=0,a.Nt=n.length;let i=e.bi(a,0),c=n.length-a.Nt;if(c>0){let e=!1,r={gi:n.subarray(0,c),release:()=>{e||(e=!0,t.release(n))}};o=!0,s.enqueue(r)}if(1==i){r.yi=!0;break}if(0!=i)throw new es("process error: "+i)}finally{o||i(n)}}if(r.yi)break;c+=n}},flush(o){if(r&&r.yi)return;r||(r=n());let s=r.o;for(;;){let r=t.wi(),n=!1;try{s.Ct=r,s.Ut=0,s.Nt=r.length;let i=e.bi(s,4),a=r.length-s.Nt;if(a>0){let e=!1,i={gi:r.subarray(0,a),release:()=>{e||(e=!0,t.release(r))}};n=!0,o.enqueue(i)}if(1==i)break;if(0!=i)throw new es("finalization error: "+i)}finally{n||i(r)}}let a=e.xi(s);if(0!=a&&0!=a)throw new es("end failed: "+a)}})}function Tc(){return new _o({start(){},transform(e,t){try{t.enqueue(e.gi.slice(0))}finally{e.release()}},flush(){}})}ue({workerURI:"./core/web-worker-native.js",wasmURI:null,CompressionStreamZlib:class{constructor(e="deflate",t){let r=function(e="deflate",t){let r="gzip"==e?31:"deflate-raw"==e?-15:15,n=t&&"number"==typeof t.level?t.level:-1;return Dc({pi:()=>(()=>{let e=us();return e.At=zs(e),e})(),hi:e=>((e,t,r=8,n=15,i=Cs,o=0)=>{let s=1;if(!e)return-2;if(e.Ht="",-1==t&&(t=6),0>n){if(s=0,-15>n)return-2;n=-n}else n>15&&(s=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!=s)return-2;8==n&&(n=9);let a=zs(e);return a?(e.At=a,a.o=e,a.nr=42,a.ir=s,a.sr=void 0,a.Mt=n,a.Pt=1<<a.Mt,a.ar=a.Pt-1,a.cr=i+7,a.lr=1<<a.cr,a.ur=a.lr-1,a.dr=(a.cr+Us-1)/Us,a.u=new Go(2*a.Pt),a.wr=new Xo(a.Pt),a.pr=new Xo(a.lr),a.k=0,a.mr=1<<i+6,a.Jt=new Go(4*a.mr),a.gr=4*a.mr,a.u&&a.wr&&a.pr&&a.Jt?(a.Lr=a.Jt.subarray(a.mr),a.Xt=a.yr+a.mr,a.rr=3*(a.mr-1),a.jr=t,a.Ar=o,a.Yr=r,(e=>{let t=(e=>{let t;return Ca(e)?-2:(e.Tt=e.Wt=0,e.Ht="",e.t=2,t=e.At,t.Gt=0,t.kr=t.yr,0>t.ir&&(t.ir=-t.ir),t.nr=2==t.ir?57:42,e.i=2==t.ir?la(0):$s(0),t.Rr=-2,(e=>{if(e.$t&&e.$t.length>=Os)for(let t=0;Os>t;t++)e.$t[t]=Es();else{e.$t=[];for(let t=0;Os>t;t++)e.$t.push(Es())}if(e.er&&e.er.length>=2*Ps+1)for(let t=0;2*Ps+1>t;t++)e.er[t]=Es();else{e.er=[];for(let t=0;2*Ps+1>t;t++)e.er.push(Es())}if(e.tn&&e.tn.length>=2*Ms+1)for(let t=0;2*Ms+1>t;t++)e.tn[t]=Es();else{e.tn=[];for(let t=0;2*Ms+1>t;t++)e.tn.push(Es())}e.rn=new ps(e.$t,new hs(Gs,Ls,js+1,As,Is)),e.nn=new ps(e.er,new hs(Xs,Bs,0,Ps,Is)),e.sn=new ps(e.tn,new hs(null,Vs,0,Ms,7)),e.p=0,e.It=0,e.Br=0,wa(e)})(t),0)})(e);return 0==t&&(e=>{e.Jr=2*e.Pt,Ra(e),e.Ir=Sa[e.jr].ln,e.Pr=Sa[e.jr].cn,e.Mr=Sa[e.jr].fn,e.Or=Sa[e.jr].un,e.Dr=0,e.Er=0,e.Tr=0,e.zr=0,e.Cr=e.Ur=Us-1,e.Wr=0,e.Hr=0})(e.At),t})(e)):(a.nr=666,e.Ht=ms(-4),ja(e),-4)):-4})(e,n,8,r,8,0),bi:Ha,xi:ja})}(e,t);this.writable=r.writable,this.readable=r.readable.pipeThrough(Tc())}},DecompressionStreamZlib:class{constructor(e="deflate"){let t=((e="deflate")=>{let t="gzip"==e?31:"deflate-raw"==e?-15:"deflate64-raw"==e?-16:15;return Dc({pi:()=>(()=>{let e=us();return e.At=lc(e,!1),e})(),hi:e=>function(e,t){let r,n;if(!e)return-2;e.Ht="";let i=-16==t;return n=lc(e,i),e.At=n,n.o=e,n.Fn=i?16191:16180,r=((e,t)=>{let r,n;if(kc(e))return-2;if(n=e.At,0>t){if(-16>t)return-2;r=0,n.Kn=-16==t,t=-t}else r=5+(t>>4),n.Kn=!1,48>t&&(t&=15);let i=n.Kn?16:15;return t&&(8>t||t>i)?-2:(n.u.length>0&&n.Mt!=t&&(n.u=ns),n.ir=r,n.Mt=t,(e=>{let t;return kc(e)?-2:(t=e.At,t.Pt=0,t.k=0,t.Ot=0,(e=>{let t;return kc(e)?-2:(t=e.At,e.Tt=e.Wt=t.Cn=0,e.Ht="",t.ir&&(e.i=1&t.ir),t.Fn=t.Kn?16191:16180,t.zn=!1,t.Rn=!1,t.En=-1,t.Dn=t.Kn?65536:32768,delete t.sr,t.p=0,t.It=0,t.kn=t.On,t.tt=t.On,t.An=t.On,t.vn=!0,t.qn=-1,0)})(e))})(e))})(e,t),r}(e,t),bi:Fc,xi:zc})})(e);this.writable=t.writable,this.readable=t.readable.pipeThrough(Tc())}}}),ue({workerURI:e=>{const t="text/javascript",r=(e=>{let t=0,r=0,n=0,i=new w(1024),o=0,s=0;for(;!s;){s=c(1);const e=c(2);if(0==e)l();else if(1==e)f(ge(ye),ge(be));else{if(2!=e)throw d("invalid deflate block type");f(...u())}}return i.subarray(0,o);function a(){if(t>=e.length)throw d("unexpected end of deflate data");return e[t++]}function c(e){for(;e>n;)r|=a()<<n,n+=8;const t=r&(1<<e)-1;return r>>>=e,n-=e,t}function l(){r=0,n=0;const e=a()|a()<<8;t+=2,h(o+e);for(let t=0;e>t;t++)i[o++]=a()}function f(e,t){let r=p(e);for(;256!=r;){if(256>r)h(o+1),i[o++]=r;else{const e=r-257,n=de[e]+c(we[e]),s=p(t),a=pe[s]+c(he[s]);h(o+n);const l=o-a;for(let e=0;n>e;e++)i[o++]=i[l+e]}r=p(e)}}function u(){const e=c(5)+257,t=c(5)+1,r=c(4)+4,n=new w(19);for(let e=0;r>e;e++)n[me[e]]=c(3);const i=ge(n),o=new w(e+t);let s=0;for(;s<o.length;){const e=p(i);if(16>e)o[s++]=e;else if(16==e){const e=o[s-1];let t=c(2)+3;for(;t--;)o[s++]=e}else s+=17==e?c(3)+3:c(7)+11}return[ge(o.subarray(0,e)),ge(o.subarray(e))]}function p(e){const{o:t,symbols:r}=e;let n=0,i=0,o=0;for(let e=1;15>=e;e++){n|=c(1);const s=t[e];if(s>n-i)return r[o+(n-i)];o+=s,i=i+s<<1,n<<=1}throw d("invalid huffman code")}function h(e){if(i.length<e){let t=2*i.length;for(;e>t;)t*=2;const r=new w(t);r.set(i.subarray(0,o)),i=r}}})((e=>{const t=(e=(e+"").replace(/[^A-Za-z0-9+/=]/g,"")).length,r=[];for(let n=0;t>n;n+=4){const t=xe.indexOf(e[n])<<18|xe.indexOf(e[n+1])<<12|(63&xe.indexOf(e[n+2]))<<6|63&xe.indexOf(e[n+3]);r.push(t>>16&255),"="!==e[n+2]&&r.push(t>>8&255),"="!==e[n+3]&&r.push(255&t)}return new w(r)})("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"));if(e){const e=new y([r],{type:t});return u.createObjectURL(e)}return"data:"+t+";base64,"+(e=>{let t="";const r=e.length;let n=0;for(;r>n+2;n+=3){const r=e[n]<<16|e[n+1]<<8|e[n+2];t+=xe[r>>18&63]+xe[r>>12&63]+xe[r>>6&63]+xe[63&r]}const i=r-n;if(1===i){const r=e[n]<<16;t+=xe[r>>18&63]+xe[r>>12&63]+"=="}else if(2===i){const r=e[n]<<16|e[n+1]<<8;t+=xe[r>>18&63]+xe[r>>12&63]+xe[r>>6&63]+"="}return t})(r)}}),e.BlobReader=Zr,e.BlobWriter=Kr,e.Data64URIReader=class extends Mr{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const n=e.indexOf(",")+1;r.assign(this,{dataURI:e,ki:n,size:s.floor(.75*(t-n))})}readUint8Array(e,t){const{ki:r,dataURI:n}=this,i=new w(t),o=4*s.floor(e/3),a=atob(n.substring(o+r,4*s.ceil((e+t)/3)+r)),c=e-3*s.floor(o/4);let l=0;for(let e=c;c+t>e&&e<a.length;e++)i[e-c]=a.charCodeAt(e),l++;return l<i.length?i.subarray(0,l):i}},e.Data64URIWriter=class extends Or{constructor(e){super(),r.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let r,i=t.pending;const o=t.pending.length;for(t.pending="",r=0;r<3*s.floor((o+e.length)/3)-o;r++)i+=n.fromCharCode(e[r]);for(;r<e.length;r++)t.pending+=n.fromCharCode(e[r]);i.length>2?t.data+=v(i):t.pending=i+t.pending}getData(){return this.data+v(this.pending)}},e.ERR_AMBIGUOUS_ARCHIVE=Si,e.ERR_BAD_FORMAT=ui,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=pi,e.ERR_DUPLICATED_NAME=eo,e.ERR_ENCRYPTED=yi,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=wi,e.ERR_EOCDR_NOT_FOUND=di,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=mi,e.ERR_HTTP_RANGE=Rr,e.ERR_HTTP_RESOURCE_CHANGED=Er,e.ERR_INVALID_CODEC_DEFINITION=ke,e.ERR_INVALID_CODEC_MODULE=ve,e.ERR_INVALID_COMMENT=to,e.ERR_INVALID_COMPRESSED_DATA=Mt,e.ERR_INVALID_ENCRYPTION_STRENGTH=oo,e.ERR_INVALID_ENTRY_COMMENT=ro,e.ERR_INVALID_ENTRY_NAME=no,e.ERR_INVALID_EXTRAFIELD_DATA=co,e.ERR_INVALID_EXTRAFIELD_TYPE=ao,e.ERR_INVALID_PASSWORD=Qe,e.ERR_INVALID_SIGNATURE=_e,e.ERR_INVALID_UNCOMPRESSED_SIZE=Pt,e.ERR_INVALID_VERSION=io,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Dr,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=hi,e.ERR_OVERLAPPING_ENTRY=ki,e.ERR_RESERVED_COMPRESSION_METHOD=Se,e.ERR_SPLIT_ZIP_FILE=xi,e.ERR_UNDEFINED_READER=po,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=wo,e.ERR_UNSUPPORTED_COMPRESSION=gi,e.ERR_UNSUPPORTED_ENCRYPTION=bi,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=so,e.ERR_UNSUPPORTED_FORMAT=uo,e.ERR_WRITER_NOT_INITIALIZED=Tr,e.ERR_ZIP_NOT_EMPTY=ho,e.HttpRangeReader=class extends cn{constructor(e,t={}){super(e,r.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=cn,e.Reader=Mr,e.SplitDataReader=ln,e.SplitDataWriter=fn,e.TextReader=class extends Zr{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends Kr{constructor(e){super(e),r.assign(this,{encoding:e,Si:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,Si:t}=this,n=await super.getData();if(n.text&&t)return n.text();{const t=new FileReader;return new b((i,o)=>{r.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>o(t.error)}),t.readAsText(n,e)})}}},e.Uint8ArrayReader=class extends Mr{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),r.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Or{constructor(e){super(),this.defaultBufferSize=e||262144}init(e=0){r.assign(this,{offset:0,array:new w(e>0?e:this.defaultBufferSize)}),super.init()}writeUint8Array(e){const t=this,r=t.offset+e.length;if(r>t.array.length){let e=t.array.length?2*t.array.length:t.defaultBufferSize;for(;r>e;)e*=2;const n=t.array;t.array=new w(e),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.array.length?this.array:this.array.slice(0,this.offset)}},e.Writer=Or,e.ZipReader=Ei,e.ZipReaderStream=Di,e.ZipWriter=ko,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:r}=new F;this.readable=t,this.zipWriter=new ko(r,e),this.Ze=new l}transform(e){const t=this.zipWriter;let r;const{readable:n,writable:i}=new F({start(e){r=e},flush:()=>{(async()=>{try{await t.close()}catch(e){try{await t.writer.writable.abort(e)}catch{}}})()}});return So(this,this.zipWriter.add(e,n),e=>r.error(e)),{readable:this.readable,writable:i}}writable(e){let t;const{readable:r,writable:n}=new F({start(e){t=e}});return So(this,this.zipWriter.add(e,r),e=>t.error(e)),n}async close(e,r={}){return await b.all(t.from(this.Ze)),this.zipWriter.close(e,r)}},e.configure=fe,e.createBlobTempStream=(e={})=>{const{thresholdBytes:t=Vo}=e;return()=>{const e=[];let r,n,i,o=0,s=!1;const a=new R({async write(i){s?await r.write(i):(e.push(i),o+=i.length,o>t&&await(async()=>{const t=new F;n=new f(t.readable).blob(),r=t.writable.getWriter(),s=!0;for(const t of e)await r.write(t);e.length=0})())},async close(){r&&(await r.close(),r=null)}});let c=0;return{writable:a,readable:new z({async pull(t){if(s){if(!i){const e=await n;i=e.stream().getReader()}const{value:e,done:r}=await i.read();r?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){i&&await i.cancel(e)}},{highWaterMark:0}),dispose:async()=>{if(r){try{await r.abort()}catch{}r=null}n&&(n.catch(()=>{}),n=null),e.length=0}}}},e.createOPFSTempStream=(e={})=>{const{thresholdBytes:t=Lo,directoryName:r=Bo,getDirectory:n=()=>T.storage.getDirectory()}=e;let i;function o(){return i||(i=b.resolve(n()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return()=>{const e=[];let r,n,i,s,a=0,c=!1;const l=new R({async write(s){c?await i.write(s):(e.push(s),a+=s.length,a>t&&await(async()=>{const t=await o();r=S.randomUUID(),n=await t.getFileHandle(r,{create:!0}),i=(await n.createWritable()).getWriter(),c=!0;for(const t of e)await i.write(t);e.length=0})())},async close(){i&&(await i.close(),i=null)}});let f=0;return{writable:l,readable:new z({async pull(t){if(c){if(!s){const e=await n.getFile();s=e.stream().getReader()}const{value:e,done:r}=await s.read();r?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){s&&await s.cancel(e)}},{highWaterMark:0}),dispose:async()=>{if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await o();await e.removeEntry(r)}catch{}n=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=(e={})=>{const{thresholdBytes:t=Yo,directoryName:r=Jo,getDirectory:n}=e;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d("createSyncAccessHandle is only available in dedicated workers");const i=n||(()=>T.storage.getDirectory());let o;function a(){return o||(o=b.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),o}return()=>{const e=[];let r,n,i=0,o=!1,c=0,l=0;const f=new R({async write(s){o?(n.write(s,{at:c}),c+=s.length):(e.push(s),i+=s.length,i>t&&await(async()=>{const t=await a();r=S.randomUUID();const i=await t.getFileHandle(r,{create:!0});n=await i.createSyncAccessHandle(),o=!0;for(const t of e)n.write(t,{at:c}),c+=t.length;e.length=0})())},close(){n&&n.flush()}});let u=0;return{writable:f,readable:new z({pull(t){if(o){const e=c-l;if(0>=e)return void t.close();const r=new w(s.min(524288,e)),i=n.read(r,{at:l});i?(l+=i,t.enqueue(r.subarray(0,i))):t.close()}else u<e.length?t.enqueue(e[u++]):t.close()}},{highWaterMark:0}),dispose:async()=>{if(n){try{n.close()}catch{}n=null}if(r){try{const e=await a();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=()=>"application/octet-stream",e.registerCodec=(e={})=>{const{compressionMethod:t,format:r,codecURI:n,CompressionStream:o,DecompressionStream:s,versionNeeded:a}=e;if(!i.isInteger(t)||0>t||t>W||typeof r!=Fe||!r.length)throw new d(ke);if(ze.includes(t))throw new d(Se);const c=typeof o==re||typeof s==re;if(!(c||typeof n==Fe&&n.length))throw new d(ke);Re.set(t,{compressionMethod:t,format:r,codecURI:n,versionNeeded:a}),c&&Ce(r,{CompressionStream:o,DecompressionStream:s})},e.resetConfiguration=()=>{for(const e of se)delete ae[e];r.assign(ae,oe)},e.terminateWorkers=async()=>{await b.allSettled(pr.map(e=>(Fr(e),e.terminate())))},e.unregisterCodec=e=>{const t=Re.get(e);if(t){let r;Re.delete(e),Re.forEach(e=>r=r||e.format==t.format),r||Ee.delete(t.format)}}});
|