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