@zip.js/zip.js 2.12.0 → 2.13.0
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 +1 -1
- package/dist/zip-core-external.js +126 -33
- package/dist/zip-core-external.min.js +1 -1
- package/dist/zip-core.js +126 -33
- package/dist/zip-core.min.js +1 -1
- package/dist/zip-fs-core-external.js +127 -34
- package/dist/zip-fs-core-external.min.js +1 -1
- package/dist/zip-fs-core.js +127 -34
- package/dist/zip-fs-core.min.js +1 -1
- package/dist/zip-fs-external.js +127 -34
- package/dist/zip-fs-external.min.js +1 -1
- package/dist/zip-fs-native.js +129 -36
- package/dist/zip-fs-native.min.js +1 -1
- package/dist/zip-fs.js +128 -35
- package/dist/zip-fs.min.js +1 -1
- package/dist/zip-legacy.js +128 -35
- package/dist/zip-legacy.min.js +1 -1
- package/dist/zip-native.js +128 -35
- 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 +127 -34
- package/dist/zip.min.js +1 -1
- package/index-native.cjs +129 -36
- package/index-native.min.js +1 -1
- package/index.cjs +128 -35
- package/index.d.cts +13 -7
- package/index.d.ts +13 -7
- package/index.min.js +1 -1
- package/lib/core/codec-worker-web.js +64 -22
- package/lib/core/codec-worker.js +15 -3
- package/lib/core/util/error.js +35 -0
- package/lib/core/version.js +1 -1
- package/lib/core/web-worker-base.js +43 -7
- package/lib/core/web-worker-inline-native.js +1 -1
- package/lib/core/web-worker-inline-wasm.js +1 -1
- package/lib/core/zip-fs.js +2 -1
- package/lib/core/zip-reader.js +9 -4
- package/lib/core/zip-writer.js +8 -3
- package/package.json +1 -1
- package/worker-message-property-names.js +1 -1
package/dist/zip-core.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})}(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:o,BigInt:i,Math:a,Date:s,Map:c,Set:l,Response:u,URL:d,Error:f,Uint8Array:w,Uint16Array:p,Uint32Array:m,DataView:h,Blob:y,Promise:E,TextEncoder:S,TextDecoder:g,document:b,crypto:x,btoa:R,TransformStream:F,ReadableStream:z,WritableStream:D,CompressionStream:A,DecompressionStream:C,navigator:T,Worker:I,Symbol:k,setTimeout:v,clearTimeout:_,structuredClone:N}="undefined"!=typeof globalThis?globalThis:self;var U=void 0!==b?b.currentScript:null;const M=4294967295,O=65535,L=255,B=67324752,W=134695760,P=W,Z=84233040,V=33639248,H=101010256,G=101075792,j=117853008,q=46,K=22,Y=20,X=56,J=39169,Q=21589,$=6534,ee=30837,te=30805,ne=2048,re=61440,oe=16384,ie=2048,ae=1024,se="/",ce=30,le=new s(2107,11,31,23,59,58),ue=new s(1980,0,1),de=void 0,fe=1/0,we="undefined",pe="function",me="object",he="string",ye="boolean",Ee=new w,Se=k.asyncDispose||k(),ge="password",be="rawPassword",xe="passThrough",Re="signal",Fe="useWebWorkers",ze="useCompressionStream",De="transferStreams",Ae="preventClose",Ce="level",Te="useUnicodeFileNames",Ie="dataDescriptor",ke="offset",ve="usdz",_e="maxAppendedDataSize",Ne="entry",Ue="filename",Me="comment",Oe="strict",Le="balanced",Be="tolerant",We="compressed",Pe="Invalid option (must be a function)",Ze="Invalid signal (must be an AbortSignal instance)",Ve="Invalid password (password must be a string, rawPassword must be a Uint8Array)",He="Invalid passThrough option (must be a boolean or 'compressed')",Ge="The operation was aborted";function je(e){if(e&&typeof e!=pe)throw new f(Pe);return e}function qe(e){if(e&&(typeof e.addEventListener!=pe||typeof e.aborted!=ye))throw new f(Ze);return e||de}function Ke(e){if(e&&e.aborted)throw e.reason===de?new DOMException(Ge,"AbortError"):e.reason}function Ye(e,t){if(e&&typeof e!=he||t&&!(t instanceof w))throw new f(Ve)}function Xe(e){if(e!==de&&typeof e!=ye&&e!==We)throw new f(He);return e}function Je(e,t,n){if(!o.isInteger(e)||e<0||e>t)throw new f(n)}function Qe(e,t,n){e!==de&&Je(e,t,n)}function $e(e){return typeof e==he&&e.trim()?o(e):e}const et="Invalid maxWorkers (must be an integer greater than 0)",tt="Invalid baseURI (must be a string)",nt="Invalid URI (must be a string or a function returning a string)";let rt=2;try{typeof T!=we&&T.hardwareConcurrency&&(rt=T.hardwareConcurrency)}catch{}const ot={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:rt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof A!=we&&A,DecompressionStream:typeof C!=we&&C},it="maxWorkers",at="baseURI",st=["wasmURI","workerURI"],ct=["chunkSize",it,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],lt=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],ut=[at,...st,"useCompressionStream","useWebWorkers","transferStreams",...ct,...lt],dt={...ot};function ft(){return dt}function wt(e){return pt(e.chunkSize)}function pt(e){return e=$e(e),o.isInteger(e)&&e>=1?a.max(e,64):65536}function mt(e){const t={};for(const n of ut){const r=e[n];r!==de&&(t[n]=ht(n,r))}return t}function ht(e,t){if(ct.includes(e)){if(t=$e(t),e==it&&(!o.isInteger(t)||t<1))throw new f(et)}else if(lt.includes(e))je(t);else if(e==at){if(t&&typeof t!=he)throw new f(tt)}else if(st.includes(e)&&t&&typeof t!=he&&typeof t!=pe)throw new f(nt);return t}function yt(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===de&&r===de)return e;const o=n.assign({},e);return o.CompressionStreamFallback===de&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===de&&(o.DecompressionStreamFallback=r),o}function Et(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function St(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function gt(e){return new h(e.buffer,e.byteOffset,e.byteLength)}const bt=[[],[],[],[],[],[],[],[]];for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=1&t?t>>>1^3988292384:t>>>1;bt[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){const n=bt[t-1][e];bt[t][e]=n>>>8^bt[0][255&n]}const[xt,Rt,Ft,zt,Dt,At,Ct,Tt]=bt;class It{constructor(e){this.o=e||-1}append(e){let t=0|this.o;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const o=new h(e.buffer,e.byteOffset,n),i=n-8;for(;r<=i;r+=8){const e=t^o.getInt32(r,!0),n=o.getInt32(r+4,!0);t=Tt[255&e]^Ct[e>>>8&255]^At[e>>>16&255]^Dt[e>>>24&255]^zt[255&n]^Ft[n>>>8&255]^Rt[n>>>16&255]^xt[n>>>24&255]}}for(;r<n;r++)t=t>>>8^xt[255&(t^e[r])];this.o=t}get(){return~this.o}}class kt extends F{constructor(){let e;const t=new It;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function vt(e){if(typeof S==we){e=unescape(encodeURIComponent(e));const t=new w(e.length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new S).encode(e)}const _t={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=_t.l(n);return 32===r?e.concat(t):_t.m(t,r,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+_t.l(n)},h(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,a.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=_t.S(t,e[n-1]&2147483648>>t-1,1)),e},S:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,l:e=>a.round(e/1099511627776)||32,m(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let o=0;o<e.length;o++)r.push(n|e[o]>>>t),n=e[o]<<32-t;const o=e.length?e[e.length-1]:0,i=_t.l(o);return r.push(_t.S(t+i&31,t+i>32?n:r.pop(),1)),r}},Nt={bytes:{R(e){const t=_t.bitLength(e)/8,n=new w(t);let r;for(let o=0;o<t;o++)3&o||(r=e[o/4]),n[o]=r>>>24,r<<=8;return n},F(e){const t=[];let n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],3&~n||(t.push(r),r=0);return 3&n&&t.push(_t.S(8*(3&n),r)),t}}},Ut=class{constructor(e){const t=this;t.blockSize=512,t.D=[1732584193,4023233417,2562383102,271733878,3285377520],t.A=[1518500249,1859775393,2400959708,3395469782],e?(t.C=e.C.slice(0),t.T=e.T.slice(0),t.I=e.I):t.reset()}reset(){const e=this;return e.C=e.D.slice(0),e.T=[],e.I=0,e}update(e){const t=this;"string"==typeof e&&(e=Nt.v.F(e));const n=t.T=_t.concat(t.T,e),r=t.I,o=t.I=r+_t.bitLength(e);if(o>9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const i=new m(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);e<=o;e+=t.blockSize)t._(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}N(){const e=this;let t=e.T;const n=e.C;t=_t.concat(t,[_t.S(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e.I/4294967296)),t.push(0|e.I);t.length;)e._(t.splice(0,16));return e.reset(),n}U(e,t,n,r){return e<=19?t&n|~t&r:e<=39?t^n^r:e<=59?t&n|t&r|n&r:e<=79?t^n^r:void 0}M(e,t){return t<<e|t>>>32-e}_(e){const n=this,r=n.C,o=t(80);for(let t=0;t<16;t++)o[t]=e[t];let i=r[0],s=r[1],c=r[2],l=r[3],u=r[4];for(let e=0;e<=79;e++){e>=16&&(o[e]=n.M(1,o[e-3]^o[e-8]^o[e-14]^o[e-16]));const t=n.M(5,i)+n.U(e,s,c,l)+u+o[e]+n.A[a.floor(e/20)]|0;u=l,l=c,c=n.M(30,s),s=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+s|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},Mt={importKey:e=>new Mt.O(Nt.bytes.F(e)),L(e,t,n,r){if(n=n||1e4,r<0||n<0)throw new f("invalid params to pbkdf2");const o=1+(r>>5)<<2;let i,a,s,c,l;const u=new ArrayBuffer(o),d=new h(u);let w=0;const p=_t;for(t=Nt.bytes.F(t),l=1;w<(o||1);l++){for(i=a=e.encrypt(p.concat(t,[l])),s=1;s<n;s++)for(a=e.encrypt(a),c=0;c<a.length;c++)i[c]^=a[c];for(s=0;w<(o||1)&&s<i.length;s++)d.setInt32(w,i[s]),w+=4}return u.slice(0,r/8)},O:class{constructor(e){const t=this,n=t.B=Ut,r=[[],[]];t.W=[new n,new n];const o=t.W[0].blockSize/32;e.length>o&&(e=(new n).update(e).N());for(let t=0;t<o;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.W[0].update(r[0]),t.W[1].update(r[1]),t.P=new n(t.W[0])}reset(){const e=this;e.P=new e.B(e.W[0]),e.Z=!1}update(e){this.Z=!0,this.P.update(e)}digest(){const e=this,t=e.P.N(),n=new e.B(e.W[1]).update(t).N();return e.reset(),n}encrypt(e){if(this.Z)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Ot=typeof x!=we&&typeof x.getRandomValues==pe,Lt="Invalid password",Bt="Invalid authentication code",Wt="zipjs-abort-check-password",Pt="Crypto API not supported";function Zt(e){if(Ot)return x.getRandomValues(e);throw new f(Pt)}const Vt=16,Ht={name:"PBKDF2"},Gt=n.assign({hash:{name:"HMAC"}},Ht),jt=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Ht),qt=["deriveBits"],Kt=[8,12,16],Yt=[16,24,32],Xt=10,Jt=[0,0,0,0],Qt=typeof x!=we,$t=Qt&&x.subtle,en=Qt&&typeof $t!=we,tn=Nt.bytes,nn=class{constructor(e){const t=this;t.V=[[[],[],[],[],[]],[[],[],[],[],[]]],t.V[0][0][0]||t.H();const n=t.V[0][4],r=t.V[1],o=e.length;let i,a,s,c=1;if(4!==o&&6!==o&&8!==o)throw new f("invalid aes key size");for(t.A=[a=e.slice(0),s=[]],i=o;i<4*o+28;i++){let e=a[i-1];(i%o===0||8===o&&i%o===4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%o===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[i]=a[i-o]^e}for(let e=0;i;e++,i--){const t=a[3&e?i:i-4];s[e]=i<=4||e<4?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.G(e,0)}decrypt(e){return this.G(e,1)}H(){const e=this.V[0],t=this.V[1],n=e[4],r=t[4],o=[],i=[];let a,s,c,l;for(let e=0;e<256;e++)i[(o[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=s||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=o[c=o[s=o[u]]];let d=16843009*l^65537*c^257*s^16843008*u,f=257*o[i]^16843008*i;for(let n=0;n<4;n++)e[n][u]=f=f<<24^f>>>8,t[n][i]=d=d<<24^d>>>8}for(let n=0;n<5;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}G(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this.A[t],r=n.length/4-2,o=[0,0,0,0],i=this.V[t],a=i[0],s=i[1],c=i[2],l=i[3],u=i[4];let d,w,p,m=e[0]^n[0],h=e[t?3:1]^n[1],y=e[2]^n[2],E=e[t?1:3]^n[3],S=4;for(let e=0;e<r;e++)d=a[m>>>24]^s[h>>16&255]^c[y>>8&255]^l[255&E]^n[S],w=a[h>>>24]^s[y>>16&255]^c[E>>8&255]^l[255&m]^n[S+1],p=a[y>>>24]^s[E>>16&255]^c[m>>8&255]^l[255&h]^n[S+2],E=a[E>>>24]^s[m>>16&255]^c[h>>8&255]^l[255&y]^n[S+3],S+=4,m=d,h=w,y=p;for(let e=0;e<4;e++)o[t?3&-e:e]=u[m>>>24]<<24^u[h>>16&255]<<16^u[y>>8&255]<<8^u[255&E]^n[S++],d=m,m=h,h=y,y=E,E=d;return o}},rn=class{constructor(e,t){this.j=e,this.K=t,this.Y=t}reset(){this.Y=this.K}update(e){return this.X(this.j,e,this.Y)}J(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}$(e){0===(e[0]=this.J(e[0]))&&(e[1]=this.J(e[1]))}X(e,t,n){let r;if(!(r=t.length))return[];const o=_t.bitLength(t);for(let o=0;o<r;o+=4){this.$(n);const r=e.encrypt(n);t[o]^=r[0],t[o+1]^=r[1],t[o+2]^=r[2],t[o+3]^=r[3]}return _t.h(t,o)}},on=Mt.O;let an=Qt&&en&&typeof $t.importKey==pe,sn=Qt&&en&&typeof $t.deriveBits==pe;class cn extends F{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){super({start(){un(this,e,t,n)},async transform(e,t){const n=this,{password:o,strength:i,ee:a,ready:s}=n;o?(await async function(e,t,n,r){const o=await fn(e,t,n,pn(r,0,Kt[t])),i=pn(r,Kt[t]);if(o[0]!=i[0]||o[1]!=i[1])throw new f(Lt)}(n,i,o,pn(e,0,Kt[i]+2)),e=pn(e,Kt[i]+2),r?t.error(new f(Wt)):a()):await s;const c=new w(e.length-Xt-(e.length-Xt)%Vt);t.enqueue(dn(n,e,c,0,Xt,!0))},async flush(e){const{te:t,ne:n,re:r,ready:i}=this;if(n&&t){await i;const a=pn(r,0,r.length-Xt),s=pn(r,r.length-Xt);let c=Ee;if(a.length){const e=hn(tn,a);n.update(e);const r=t.update(e);c=mn(tn,r)}const l=pn(mn(tn,n.digest()),0,Xt);let u=r.length<Xt?1:0;for(let e=0;e<Xt;e++)u|=l[e]^s[e];if(u&&o)throw new f(Bt);e.enqueue(c)}}})}}class ln extends F{constructor({password:e,rawPassword:t,encryptionStrength:n}){super({start(){un(this,e,t,n)},async transform(e,t){const n=this,{password:r,strength:o,ee:i,ready:a}=n;let s=Ee;r?(s=await async function(e,t,n){const r=Zt(new w(Kt[t]));return Et(r,await fn(e,t,n,r))}(n,o,r),i()):await a;const c=new w(s.length+e.length-e.length%Vt);c.set(s,0),t.enqueue(dn(n,e,c,s.length,0))},async flush(e){const{te:t,ne:n,re:r,ready:o}=this;if(n&&t){await o;let i=Ee;if(r.length){const e=t.update(hn(tn,r));n.update(e),i=mn(tn,e)}const a=mn(tn,n.digest()).slice(0,Xt);e.enqueue(Et(i,a))}}})}}function un(e,t,r,o){n.assign(e,{ready:new E(t=>e.ee=t),password:wn(t,r),strength:o-1,re:Ee})}function dn(e,t,n,r,o,i){const{te:a,ne:s,re:c}=e;c.length&&(t=Et(c,t));const l=t.length-o;let u;for(n=function(e,t){if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e}(n,r+(l-l%Vt)),u=0;u<=l-Vt;u+=Vt){const e=hn(tn,pn(t,u,u+Vt));i&&s.update(e);const o=a.update(e);i||s.update(o),n.set(mn(tn,o),u+r)}return e.re=pn(t,u),n}async function fn(e,r,o,i){e.password=null;const a=await async function(e,t,n,r,o){if(!an)return Mt.importKey(t);try{return await $t.importKey("raw",t,n,!1,o)}catch{return an=!1,Mt.importKey(t)}}(0,o,Gt,0,qt),s=await async function(e,t,n){if(!sn)return Mt.L(t,e.salt,jt.iterations,n);try{return await $t.deriveBits(e,t,n)}catch{return sn=!1,Mt.L(t,e.salt,jt.iterations,n)}}(n.assign({salt:i},jt),a,8*(2*Yt[r]+2)),c=new w(s),l=hn(tn,pn(c,0,Yt[r])),u=hn(tn,pn(c,Yt[r],2*Yt[r])),d=pn(c,2*Yt[r]);return n.assign(e,{keys:{key:l,oe:u,passwordVerification:d},te:new rn(new nn(l),t.from(Jt)),ne:new on(u)}),d}function wn(e,t){return t===de?vt(e):t}function pn(e,t,n){return e.subarray(t,n)}function mn(e,t){return e.R(t)}function hn(e,t){return e.F(t)}class yn extends F{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){Sn(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=gn(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t[11]^n.passwordVerification))throw new f(Lt);e=e.subarray(12)}r?t.error(new f(Wt)):t.enqueue(gn(n,e))}})}}class En extends F{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){Sn(this,e,t,n)},transform(e,t){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=Zt(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(bn(n,t),0),o=12}else r=new w(e.length),o=0;r.set(bn(n,e),o),t.enqueue(r)}})}}function Sn(e,t,r,o){n.assign(e,{password:t,rawPassword:r,passwordVerification:o}),function(e,t,r){const o=[305419896,591751049,878082192];if(n.assign(e,{keys:o,ie:new It(o[0]),ae:new It(o[2])}),r)for(let t=0;t<r.length;t++)xn(e,r[t]);else for(let n=0;n<t.length;n++)xn(e,t.charCodeAt(n))}(e,t,r)}function gn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=Rn(e)^t[r],xn(e,n[r]);return n}function bn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=Rn(e)^t[r],xn(e,t[r]);return n}function xn(e,t){let[,n]=e.keys;e.ie.append([t]);const r=~e.ie.get();n=zn(a.imul(zn(n+Fn(r)),134775813)+1),e.ae.append([n>>>24]);const o=~e.ae.get();e.keys=[r,n,o]}function Rn(e){const t=2|e.keys[2];return Fn(a.imul(t,1^t)>>>8)}function Fn(e){return 255&e}function zn(e){return 4294967295&e}function Dn(e){if(e instanceof z)return e;const t=e.getReader();return new z({async pull(e){const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})}function An(e,t){e=Dn(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=pe||new y([]).stream()instanceof z)return new u(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new D({write(e){r.push(e)}})).then(()=>new y(r,n))}function Cn(e){if(e instanceof D)return e;const t=e.getWriter();return new D({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const Tn="Invalid codec definition",In="Reserved compression method",kn="Invalid codec module",vn="Compression method not supported",_n=[0,8,9,99],Nn=new c,Un=new c;function Mn(e){return Nn.get(e)}function On(){return t.from(Nn.values(),e=>n.assign({},e,Un.get(e.format)))}function Ln(e){return Un.get(e)}function Bn(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=pe&&typeof r!=pe)throw new f(kn);Un.set(e,{CompressionStream:n,DecompressionStream:r})}const Wn="Invalid uncompressed size",Pn="Invalid compressed data",Zn="Invalid CRC32",Vn="deflate-raw",Hn="deflate64-raw",Gn="gzip",jn=[31,139,8];class qn extends F{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:a,zipCrypto:s,computeCrc32:c,level:l,deflate64:u,format:d,compressionMethod:f,inputSize:w}=e,p=this;let m,y,E,S=super.readable;const g=d&&Ln(d),b=c&&o&&!u&&!g&&(!i||s)&&Boolean(a&&r);if(i&&!s||!c||b||(m=new kt,S=nr(S,m)),o)if(g)S=rr(S,er(g.CompressionStream,d,{level:l,chunkSize:t,compressionMethod:f,uncompressedSize:w}));else if(b)E=new Kn,S=rr(S,new r(Gn)),S=nr(S,E);else try{S=tr(S,a,{level:l,chunkSize:t},r,n)}catch(e){let t;try{t=new r(Gn)}catch{throw e}S=rr(S,t),S=nr(S,new Kn)}i&&(s?S=nr(S,new En(e)):(y=new ln(e),S=nr(S,y))),$n(p,S,()=>{i&&!s||!c||(p.crc32=b?E.crc32:new h(m.value.buffer).getUint32(0))})}}class Kn extends F{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=a.min(t,e.length);if(t-=n,!(e=e.subarray(n)).length)return}const o=n.length+e.length;if(o<=8)return void(n=Et(n,e));const i=o-8,s=a.min(i,n.length);r.enqueue(Et(n.subarray(0,s),e.subarray(0,i-s))),n=Et(n.subarray(s),e.subarray(i-s))},flush(){const t=gt(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class Yn extends F{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:a,crc32:s,compressed:c,useCompressionStream:l,deflate64:u,format:d,compressionMethod:p,rawBitFlag:m,outputSize:y}=e;let S,g,b=super.readable;if(i&&(o?b=nr(b,new yn(e)):(g=new cn(e),b=nr(b,g))),c){const e=d&&Ln(d);if(e)b=rr(b,er(e.DecompressionStream,d,{chunkSize:t,compressionMethod:p,rawBitFlag:m,uncompressedSize:y}));else try{b=tr(b,l,{chunkSize:t,deflate64:u},r,n)}catch(e){if(u||y===de)throw e;let t;try{t=new r(Gn)}catch{throw e}b=function(e,t,n){const r=new It;let o,i,a,s=0,c=!1;const l=new E((e,t)=>{i=e,a=t});l.catch(()=>{}),n||i();const u=new F({start(e){const t=new w(10);t.set(jn),e.enqueue(t)},transform(e,t){t.enqueue(e)},async flush(e){c=!0,p();try{await l}finally{m()}const t=new w(8),o=gt(t);o.setUint32(0,r.get(),!0),o.setUint32(4,n,!0),e.enqueue(t)},cancel(e){a(e)}}),d=new F({transform(e,t){r.append(e),s+=e.length,s>=n?i():c&&p(),t.enqueue(e)},cancel(e){a(e)}});return e=nr(e,u),nr(e=rr(e,t),d);function p(){m(),o=v(()=>a(new f(Wn)),5e3)}function m(){_(o)}}(b,t,y)}b=function(e){const t=e.getReader();return new z({async pull(e){let n;try{n=await t.read()}catch(e){if(e&&e.message)throw e;const t=new f(Pn);throw t.cause=e,t}const{value:r,done:o}=n;o?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})}(b)}a&&(S=new kt,b=nr(b,S)),$n(this,b,()=>{if(a){const e=new h(S.value.buffer);if(s!=e.getUint32(0,!1))throw new f(Zn)}})}}const Xn=new c;function Jn(e,t){if(!e)return!1;let n=Xn.get(e);n||(n=new c,Xn.set(e,n));let r=n.get(t);if(r===de){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function Qn(e){return Jn(e,Vn)}function $n(e,t,r){t=nr(t,new F({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function er(e,t,n){if(!e)throw new f(vn);return new e(t,n)}function tr(e,t,n,r,o){const i=t&&r?r:o||r,a=n.deflate64?Hn:Vn;let s;try{s=new i(a,n)}catch(e){if(!t||!o||i==o)throw e;s=new o(a,n)}return rr(e,s)}function nr(e,t){return Dn(e).pipeThrough(t)}function rr(e,t){const n=t.writable.getWriter(),r=e.getReader();return async function(){try{for(;;){await n.ready;const e=await r.read();if(e.done){await n.close();break}await n.write(e.value)}}catch(e){await async function(e,t){try{await e.abort(t)}catch{}}(n,e),await async function(e,t){try{await e.cancel(t)}catch{}}(r,e)}}(),t.readable}const or="data",ir="deflate",ar="inflate";class sr extends F{constructor(e,t){super({});const r=this,{codecType:o}=e;let i;o.startsWith(ir)?i=qn:o.startsWith(ar)&&(i=Yn),r.outputSize=0;let a=0;const s=new i(e,t),c=super.readable,l=new F({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:a})}}),u=new F({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==de&&r.outputSize>e.outputSize))throw new f(Wn)},flush(){const{crc32:e}=s;n.assign(r,{crc32:e,inputSize:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(s).pipeThrough(u)})}}class cr extends F{constructor(e){const t=[];let r=0,i=0;function a(){const n=new w(e);let o=0;for(;o<e;){const r=t[0],i=e-o;r.length<=i?(n.set(r,o),o+=r.length,t.shift()):(n.set(r.subarray(0,i),o),t[0]=r.subarray(i),o+=i)}return r-=e,n}(!o.isFinite(e)||e<1)&&(e=65536),super({transform(n,o){for(t.push(n),r+=n.length;r>e;)i+=e,o.enqueue(a())},flush(e){r&&(i+=r,e.enqueue(function(e,t){const n=new w(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(t,r)))}}),n.defineProperty(this,"outputSize",{get:()=>i})}}const lr="Worker startup timeout";let ur,dr,fr;function wr(e){e.createWorker?dr=!0:ur=!1}class pr{constructor(e,{readable:t,writable:r},{options:o,config:i,se:a,useWebWorkers:s,transferStreams:c,workerURI:l,createWorker:u},d){const{signal:f}=a;return dr&&(u=de),n.assign(e,{ce:!0,le:(e.le||0)+1,readable:t.pipeThrough(new cr(wt(i))).pipeThrough(new mr(a),{signal:f}),writable:r,options:n.assign({},o),workerURI:l,createWorker:u,transferStreams:c,terminate:()=>new E(t=>{const{ue:n,ce:r}=e;n?(r?e.de=t:(n.terminate(),t()),e.fe=null):t()}),we(){if(e.ce){const{de:t}=e;t&&(e.de=null,e.pe=!0,e.ue.terminate(),t()),e.ce=!1,d(e)}}}),ur===de&&(ur=typeof I!=we),(s&&fr&&(ur&&l||u)?fr:yr)(e,i)}}class mr extends F{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await hr(e,n)},async transform(e,r){o+=e.length,t&&await hr(t,o,n),r.enqueue(e)},async flush(){r&&await hr(r,o)}})}}async function hr(e,...t){try{await e(...t)}catch{}}function yr(e,t){return{run:()=>Er(e,t)}}async function Er({options:e,readable:t,writable:n,we:r},o){let i,a;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(ir),n=t?o.CompressionStreamFallback:o.DecompressionStreamFallback,r=t?o.CompressionStream:o.DecompressionStream;if(e.useCompressionStream){if(n&&n.me&&!Qn(r))try{await void 0}catch{}}else try{await void 0}catch{n&&!n.me||(e.useCompressionStream=!0)}}i=new sr(e,o),a=new cr(wt(o)),await t.pipeThrough(i).pipeThrough(a).pipeTo(n,{preventClose:!0,preventAbort:!0});const{crc32:r,inputSize:s,outputSize:c}=i;return{crc32:r,inputSize:s,outputSize:c}}catch(e){throw i&&(e.outputSize=a?a.outputSize:0),e}finally{r()}}const Sr={type:"module"},gr="error";let br,xr,Rr,Fr=!0;try{Fr=typeof N==pe&&N(new DOMException("","AbortError")).code!==de}catch{}var zr;function Dr(e){const{reader:t}=e;t&&t.releaseLock(),e.reader=null,e.writer=null}function Ar(e){const{ue:t}=e;if(t)try{t.terminate()}catch{}e.fe=null}function Cr(e,t,r,o,i=!0){const{createWorker:a}=r;let s,c,l;if(a)s=a();else if(xr===de||br!==e){const n=typeof e==pe;c=n?e(i):e;const a=c.startsWith("data:"),u=c.startsWith("blob:");if(a||u){o===de&&(o=!1),o&&(l=Sr);try{s=new I(c,l)}catch(i){if(u)try{d.revokeObjectURL(c)}catch{}if(n&&u)return Cr(e,t,r,o,!1);if(o)throw i;return Cr(e,t,r,!0,!1)}}else{o===de&&(o=!0),o&&(l=Sr);try{c=new d(c,t)}catch{}try{s=new I(c,l)}catch(n){if(o)return Cr(e,t,r,!1,i);throw n}}br=e,xr=c,Rr=l}else s=new I(xr,Rr);return s.addEventListener("message",e=>{r.he=!0,Tr(r),async function({data:e},t){const{type:r,value:o,messageId:i,result:a,error:s}=e,{reader:c,writer:l,ye:u,Ee:d,we:p,le:m}=t,h=()=>t.le!=m;try{if(s){const{message:e,stack:t,code:r,name:o,outputSize:i,cause:a,codecImportFailed:c}=s,l=new f(e);n.assign(l,{stack:t,code:r,name:o,outputSize:i}),a&&(l.cause=n.assign(new f(a.message),{name:a.name})),c&&(l.codecImportFailed=!0),y(l)}else{if("pull"==r){const{value:e,done:n}=await c.read();h()||kr({type:or,value:e,done:n,messageId:i},t)}if(r==or){const e=new w(o);await l.ready,await l.write(e),t.outputSize+=e.length,h()||kr({type:"ack",messageId:i},t)}"close"==r&&y(null,a)}}catch(s){h()||(Ar(t),y(s))}function y(e,t){h()||(e?d(e):u(t),l&&l.releaseLock(),e&&e.codecImportFailed||p())}}(e,r)}),s.addEventListener(gr,e=>Ir(e,r)),s.addEventListener("messageerror",e=>Ir(e,r)),s}function Tr(e){const{Se:t}=e;t&&(_(t),e.Se=null)}function Ir(e,t){e.preventDefault&&e.preventDefault(),Tr(t);const{he:r,Ee:o,writer:i,we:a}=t;Ar(t),r||(t.ue=null);let s=e.error||new f(e.message||gr);r||(s=n.assign(new f(s.message||gr),{ge:!0}),t.be=s),o&&(o(s),i&&i.releaseLock(),r&&a())}function kr(e,{ue:t,writer:n,transferStreams:r,he:o}){try{const{value:n,readable:i,writable:a}=e,s=[];if(n&&(e.value=St(n),s.push(e.value.buffer)),r&&Fr&&o?(i&&s.push(i),a&&s.push(a)):e.readable=e.writable=null,s.length)try{return t.postMessage(e,s),!0}catch{Fr=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}zr=function(e,t){const{baseURI:r,chunkSize:i,workerStartupTimeout:a}=t;let{wasmURI:s}=t;if(!e.fe){let c;typeof s==pe&&(s=s());try{c=Cr(e.workerURI,r,e)}catch{return wr(e),yr(e,t)}n.assign(e,{ue:c,he:!1,pe:!1,be:null,fe:{run:async()=>{try{return await async function(e,t){if(!e.ue){const{be:t}=e;e.be=null;const n=t||new f(lr);throw n.ge=!0,n}let r,i;const a=new E((t,n)=>{r=t,i=t=>{t&&t.outputSize===de&&(t.outputSize=e.outputSize),n(t)}});n.assign(e,{reader:null,writer:null,outputSize:0,ye:r,Ee:i,result:a});const{readable:s,options:c}=e,{writable:l,closed:u,xe:d}=function(e){const t=new AbortController,{writable:n,readable:r}=new F,o=r.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return o.catch(()=>{}),{writable:n,closed:o,xe:()=>t.abort()}}(e.writable);let w;try{w=kr({type:"start",options:c,config:t,readable:s,writable:l},e)}catch(t){d();try{await u}catch{}throw e.we(),t}w||n.assign(e,{reader:s.getReader(),writer:l.getWriter()});const{workerStartupTimeout:p}=t;!e.he&&o.isFinite(p)&&p>=0&&(e.Se=v(()=>function(e){if(e.Se=null,e.he)return;const{Ee:t,writer:n}=e;if(Ar(e),e.ue=null,t){const e=new f(lr);e.ge=!0,t(e),n&&n.releaseLock()}}(e),p));try{const e=await a;return await m(),await u,e}catch(e){await m(),d();try{await u}catch{}throw e}async function m(){if(!w&&!l.locked)try{await l.getWriter().close()}catch{}}}(e,{chunkSize:i,wasmURI:s,baseURI:r,workerStartupTimeout:a})}catch(n){if(n&&n.ge)return wr(e),Dr(e),Er(e,t);if(n&&n.codecImportFailed){if(e.reader)return Dr(e),Er(e,t);e.we()}throw n}}}})}return e.fe},fr=zr;let vr=[];const _r=[];let Nr,Ur,Mr=0;async function Or(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:a,useCompressionStream:s,compressed:c,checkCrc32:l,computeCrc32:u,encrypted:f,format:w,codecURI:p}=n,{workerURI:m,createWorker:h,maxWorkers:y}=r;w&&(p&&(n.codecURI=function(e,t){try{return new d(e,t).toString()}catch{return e}}(p,r.baseURI)),await async function(e,t){!Un.has(e)&&t&&Bn(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(w,n.codecURI)),t.transferStreams=!w&&(i||i===de&&r.transferStreams);const S=!(c||l||u||f),g=w===de||Boolean(n.codecURI);return t.useWebWorkers=!S&&g&&(a||a===de&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&m?m:de,t.createWorker=t.useWebWorkers&&h?h:de,n.useCompressionStream=s||s===de&&r.useCompressionStream,(await async function(){const n=vr.find(e=>!e.ce);if(n)return Zr(n),new pr(n,e,t,b);if(vr.length<y){const n={Re:Mr};return Mr++,vr.push(n),new pr(n,e,t,b)}return new E(n=>{_r.push({resolve:n,stream:e,Fe:t}),Ur=r.workerStarvationTimeout,Lr()})}()).run();function b(e){if(Br(),_r.length){const[{resolve:t,stream:n,Fe:r}]=_r.splice(0,1);t(new pr(e,n,r,b)),Lr()}else e.ue?(Zr(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.pe?e.pe=!1:e.ze=v(async()=>{vr=vr.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}(e,t)):vr=vr.filter(t=>t!=e)}}function Lr(){!Nr&&_r.length&&o.isFinite(Ur)&&Ur>=0&&(Nr=v(Wr,Ur))}function Br(){Nr&&(_(Nr),Nr=null)}function Wr(){if(Nr=null,_r.length){const[{resolve:e,stream:t,Fe:r}]=_r.splice(0,1),o=n.assign({},r,{useWebWorkers:!1,workerURI:de,createWorker:de});e(new pr({},t,o,Pr)),Lr()}}function Pr(){Br(),Lr()}function Zr(e){const{ze:t}=e;t&&(_(t),e.ze=null)}const Vr="\0\u263a\u263b\u2665\u2666\u2663\u2660\u2022\u25d8\u25cb\u25d9\u2642\u2640\u266a\u266b\u263c\u25ba\u25c4\u2195\u203c\xb6\xa7\u25ac\u21a8\u2191\u2193\u2192\u2190\u221f\u2194\u25b2\u25bc !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xa2\xa3\xa5\u20a7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\u2310\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0".split("");function Hr(e,t){return Gr(e,t,!0)}function Gr(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?function(e){let t="";for(let n=0;n<e.length;n++)t+=Vr[e[n]];return t}(e):new g(t,{ignoreBOM:n}).decode(e)}const jr="HTTP error ",qr="HTTP Range not supported",Kr="HTTP resource changed",Yr="Writer iterator completed too soon",Xr="Writer not initialized",Jr="Invalid writer (size must be writable)",Qr="Content-Range",$r="Range",eo="GET",to="bytes",no=16777216,ro="writable",oo=k();class io{constructor(){this.size=0}init(){this.initialized=!0}}class ao extends io{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=wt(ft())}={}){const r=this;let o=0;return n=pt(n),new z({async pull(i){const s=t===de?n:a.min(n,t-o),c=await Lo(r,e+o,s);c.length&&(i.enqueue(c),o+=c.length),(t!==de&&o>=t||!c.length&&s)&&i.close()}})}}class so extends io{constructor(){super();const e=this,t=new D({write(t){if(!e.initialized)throw new f(Xr);return e.writeUint8Array(St(t))}});n.defineProperty(e,ro,{get:()=>t})}writeUint8Array(){}}let co,lo;class uo extends ao{constructor(e){super(),n.assign(this,{De:e,size:e.size}),lo||(lo=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,n=await e.read();for(;!n.done;)t+=n.value.length,n=await e.read();co=1==t}catch{co=!1}})())}createReadable(e){const{De:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};if(typeof t.stream==pe){if(!r&&o>=n)return Dn(t.stream());if(co)return Dn(t.slice(r,r+o).stream())}return super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=!e&&r>=n.size?n.De:n.De.slice(e,r);let i=await o.arrayBuffer();return i.byteLength>t&&(i=i.slice(e,r)),new w(i)}}class fo extends io{constructor(e){super();const t=this,r=new F;n.defineProperty(t,ro,{get:()=>r.writable}),t.contentType=e,t.Ae=An(r.readable,e),t.Ae.catch(()=>{})}getData(){return this.Ae}}class wo extends ao{constructor(e,t){super(),mo(this,e,t)}async init(){await ho(this,Co,Fo),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:i}=t;if((n||r)&&i!==de){const{offset:n=0,size:r=i-n}=e||{};if(r>0&&n<i)return function(e,t,n){let r,i=t,s=0,c=n;return new z({start:()=>l(),async pull(e){r||await l();const{value:t,done:n}=await r.read();if(n)throw new f(qr);const o=t.length>s?t.subarray(0,s):t;s-=o.length,c-=o.length,o.length&&e.enqueue(o),s||(await async function(){const e=r;r=de,await e.cancel()}(),c||e.close())},cancel:e=>r&&r.cancel(e)});async function l(){const t=a.min(e.maximumRangeSize,c),n=await Co(eo,e,xo(e,i,t));if(206!=n.status)throw new f(qr);const l=n.headers.get(Qr);if(l){const e=o(l.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=i)throw new f(qr)}bo(e,n),go(e,n),i+=t,s=t,r=n.body.getReader()}}(t,n,a.min(r,i-n))}return super.createReadable(e)}readUint8Array(e,t){return yo(this,e,t,Co,Fo)}}class po extends ao{constructor(e,t){super(),mo(this,e,t)}async init(){await ho(this,To,zo),super.init()}readUint8Array(e,t){return yo(this,e,t,To,zo)}}function mo(e,t,r){const{preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s,checkResourceChanges:c=!0,maximumRangeSize:l=no,fetch:u}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(e,{url:t,options:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s,checkResourceChanges:c,maximumRangeSize:l,fetch:u})}async function ho(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s}=e;if(function(e){const{baseURI:t}=ft(),{protocol:n}=new d(e,t);return"http:"==n||"https:"==n}(r)&&(i||a)&&(typeof o==we||o)){const r=await t(eo,e,xo(e,s?-22:void 0)),o=r.headers.get("Accept-Ranges");if(!(a||o&&o.toLowerCase()==to))throw new f(qr);{if(s){const t=new w(await r.arrayBuffer());206==r.status&&t.length==K&&(e.Ce=t)}go(e,r);const o=Eo(r);o===de?await Ao(e,t,n):e.size=o}}else await Ao(e,t,n)}async function yo(e,t,n,r,i){const{useRangeHeader:a,forceRangeRequests:s,Ce:c,size:l,options:u}=e;if(a||s){if(c&&t==l-K&&n==K)return c;if(t>=l||0===n)return Ee;{t+n>l&&(n=l-t);const i=await r(eo,e,xo(e,t,n));if(206!=i.status)throw new f(qr);const a=i.headers.get(Qr);if(a){const e=o(a.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=t)throw new f(qr)}bo(e,i),go(e,i);const s=new w(await i.arrayBuffer());if(s.length!=n)throw new f(qr);return s}}{const{data:r}=e;return r||await i(e,u),e.data.subarray(t,t+n)}}function Eo(e){const t=e.headers.get(Qr);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=o(e);if(!o.isNaN(t))return t}}}function So({headers:e}){return{Te:e.get("Etag")||de,lastModified:e.get("Last-Modified")||de}}function go(e,t){const{checkResourceChanges:n,Ie:r}=e;n&&!r&&206==t.status&&(e.Ie=So(t))}function bo(e,t){const{checkResourceChanges:r,Ie:o,size:i}=e;if(r){const e=Eo(t);if(e!==de&&i!==de&&e!=i)throw new f(Kr);if(o){const e=So(t);if(n.entries(o).some(([t,n])=>n!==de&&e[t]!==de&&n!=e[t]))throw new f(Kr)}}}function xo(e,t=0,r=1){return n.assign({},Ro(e),{[$r]:to+"="+(t<0?t:t+"-"+(t+r-1))})}function Ro({options:e}){const{headers:t}=e;if(t)return k.iterator in t?n.fromEntries(t):t}async function Fo(e){await Do(e,Co)}async function zo(e){await Do(e,To)}async function Do(e,t){const n=await t(eo,e,Ro(e));e.data=new w(await n.arrayBuffer()),e.size=e.data.length}async function Ao(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,Ro(e)),i=r.headers.get("Content-Length");i&&!r.headers.get("Content-Encoding")?e.size=o(i):await n(e,e.options)}}async function Co(e,{fetch:t=fetch,options:r,url:o},i){const a=await t(o,n.assign({},r,{method:e,headers:i}));if(a.status>=200&&a.status<=299)return a;throw 416==a.status?new f(qr):new f(jr+(a.statusText||a.status))}function To(e,{url:t},r){return new E((o,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status>=200&&a.status<=299){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),o({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new f(qr):new f(jr+(a.statusText||a.status)))},!1),a.addEventListener("error",e=>i(e.detail?e.detail.error:new f("Network error")),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()})}class Io extends ao{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new po(e,t):new wo(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 ko extends ao{constructor(e){super(),this.ke=e}async init(){const e=this;e.ve=0;const t=e.ke=await E.all(e.ke.map(Oo));e._e=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}Ne(e){const{_e:t,size:n}=this,r=t[e];return r===de?n:r}async readUint8Array(e,t){const n=this,{ke:r}=this;let o,i=0,s=e;for(;r[i]&&s>=r[i].size;)s-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(s+t<=r)o=await Lo(c,s,t);else{const i=r-s;o=Et(await Lo(c,s,i),await n.readUint8Array(e+i,t-i))}}else o=Ee;return n.ve=a.max(i,n.ve),o}}class vo extends io{constructor(e,t=4294967295){super();const r=this;let o,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const s=new D({async write(t){if(t===oo)return void(a&&await l());const{availableSize:n}=r;if(a)t.length>=n?(await c(t.subarray(0,n)),await l(),t.length>n&&await this.write(t.subarray(n))):await c(t);else{const{value:n,done:s}=await e.next();if(s&&!n)throw new f(Yr);o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await Mo(o),i=n.writable,a=i.getWriter(),await this.write(t)}},async close(){a&&(await a.ready,await u())},async abort(e){a&&await a.abort(e)}});async function c(e){const t=e.length;t&&(await a.ready,await a.write(e),o.size+=t,r.availableSize-=t)}async function l(){await u(),r.diskOffset+=o.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function u(){await a.close()}n.defineProperty(r,ro,{get:()=>s})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(oo)}finally{e.releaseLock()}}}class _o{constructor(e){return t.isArray(e)&&(e=new ko(e)),(e instanceof z||typeof e.getReader==pe)&&(e={readable:Dn(e)}),e}}class No{constructor(e){e.writable===de&&typeof e.next==pe&&(e=new vo(e)),(e instanceof D||typeof e.getWriter==pe)&&(e={writable:Cn(e)});try{e.size=e.size===de?0:e.size}catch{throw new f(Jr)}return e}}function Uo(e){return Boolean(e&&e.getData)}async function Mo(e,t){if(!e.init||e.initialized)return E.resolve();await e.init(t)}async function Oo(e){return e=new _o(e),await Mo(e),e.size!==de&&e.readUint8Array||(e=new uo(await An(e.readable)),await Mo(e)),e}function Lo(e,t,n){return e.readUint8Array(t,n)}function Bo(e,t){return e.createReadable?e.createReadable(t):e.readUint8Array?ao.prototype.createReadable.call(e,t):e.readable}function Wo(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==de&&(r.filename=n),e.push(r)}}const Po="filename",Zo="rawFilename",Vo="comment",Ho="rawComment",Go="uncompressedSize",jo="compressedSize",qo="offset",Ko="diskNumberStart",Yo="lastModDate",Xo="rawLastModDate",Jo="lastAccessDate",Qo="rawLastAccessDate",$o="creationDate",ei="rawCreationDate",ti="internalFileAttributes",ni="externalFileAttributes",ri="msdosAttributesRaw",oi="msdosAttributes",ii="msDosCompatible",ai="zip64",si="encrypted",ci="version",li="versionMadeBy",ui="zipCrypto",di="directory",fi="executable",wi="compressionMethod",pi="signature",mi="extraField",hi="unixMode",yi="setuid",Ei="setgid",Si="sticky",gi=[Po,Zo,Go,jo,Yo,Xo,Vo,Ho,Jo,Qo,$o,ei,qo,Ko,ti,ni,ri,oi,ii,ai,si,ci,li,ui,di,fi,"symlink",wi,pi,"crc32",mi,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",hi,"unixExternalUpper",yi,Ei,Si,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class bi{constructor(e){gi.forEach(t=>this[t]=e[t])}}const xi=new l([1,J,10,Q,28789,25461,$,ee,te,22613,13]);function Ri(e,t,n){return e?t?12:16+4*n:0}const Fi="File format is not recognized",zi="End of central directory not found",Di="End of Zip64 central directory locator not found",Ai="Central directory header not found",Ci="Local file header not found",Ti="Zip64 extra field not found",Ii="File contains encrypted entry",ki="Encryption method not supported",vi="Split zip file",_i="Overlapping entry found",Ni="Entry data out of bounds",Ui="Ambiguous archive",Mi="Encrypted central directory is not supported",Oi="Unsafe filename",Li="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",Bi="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Wi="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Pi="64-bit value exceeds Number.MAX_SAFE_INTEGER",Zi="unsorted central directory",Vi="unknown version needed to extract",Hi="compressed patched data",Gi="malformed extra field",ji="unknown zip64 extensible data",qi="wrapped entries count",Ki="appended data",Yi="prepended data",Xi="prepended central directory",Ji="trailing central directory data",Qi="duplicate filename",$i="mismatched zip64 end of central directory record",ea="multiple end of central directory records",ta="mismatched local file header (filename)",na="mismatched local file header (general purpose bit flag)",ra="mismatched local file header (compression method)",oa="mismatched local file header (crc32 or sizes)",ia=/^[a-zA-Z]:/,aa="utf-8",sa="cp437",ca=[[Go,M],[jo,M],[qo,M],[Ko,O]],la={[O]:{Ue:Ga,bytes:4},[M]:{Ue:ja,bytes:8}},ua=i(o.MAX_SAFE_INTEGER);class da{constructor(e,t={}){n.assign(this,{reader:new _o(e),options:t,Me:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await Mo(r),r.size!==de&&r.readUint8Array||(r=new uo(await An(r.readable)),await Mo(r)),r.size<K)throw new f(Fi);const o=t.warnings=[],i=Ca(e,t.options),s=i==Oe,c=i!=Be,u=ka(Ba(t,e,_e),i),d=function(e,t){if(e===de)return t;if(!Aa(e))throw new f(Bi);return e}(Ba(t,e,"filenameValidation"),i),w=Ba(t,e,"normalizeFilename"),{Oe:p,Le:m}=await va(r,c,u);if(!p)throw await async function(e){return await Da(e)==W}(r)?new f(vi):new f(zi);c&&m>1&&La(ea);const h=gt(p);let y=Ga(h,12),E=Ga(h,16);const S=p.offset,g=Ha(h,20),b=S+K+g,x=r.size-b;x>u&&La(Ki),x>0&&Wo(o,Ki);let R=Ha(h,4);const z=r.ve||0;let D,A,C,T,I,k=Ha(h,6),v=Ha(h,10),_=0,N=X;const U=E==M||y==M||v==O||k==O;if(E!=M&&k!=O&&(E+=za(r,k)),U){const e=p.offset>=Y?await Lo(r,p.offset-Y,Y):Ee,t=gt(e);if(e.length==Y&&Ga(t,0)==j){E=za(r,Ga(t,4))+ja(t,8);let e=await Lo(r,E,X),i=gt(e);const c=p.offset-Y-X;if((e.length<X||Ga(i,0)!=G)&&E!=c&&c>=0){const t=E;E=c,E>t&&(_=E-t),e=await Lo(r,E,X),i=gt(e)}if(e.length<X||Ga(i,0)!=G)throw new f(Di);if(C=!0,T=ja(i,4)>44,T){const e=a.min(ja(i,4)-44,r.size-E-X);e>0&&(N+=e,I=function(e){const t={rawExtensibleData:e};if(e.length>=28){const r=gt(e),o=Ha(r,26);n.assign(t,{compressionMethod:Ha(r,0),compressedSize:ja(r,2),uncompressedSize:ja(r,10),encryptionAlgorithm:Ha(r,18),bitLength:Ha(r,20),flags:Ha(r,22),hashAlgorithm:Ha(r,24),hashData:e.subarray(28,28+o)})}return t}(await Lo(r,E+X,e)))}R==O?R=Ga(i,16):R!=Ga(i,16)&&Oa(s,o,$i),k==O?k=Ga(i,20):k!=Ga(i,20)&&Oa(s,o,$i),v==O?v=ja(i,32):v!=ja(i,32)&&Oa(s,o,$i),y==M?y=ja(i,40):y!=ja(i,40)&&Oa(s,o,$i),E=za(r,k)+ja(i,48)+_}}let B=y;const P=p.offset-(C?N+Y:0);if(E>=r.size&&(_=r.size-E-y-K,E=r.size-y-K),z!=R)throw new f(vi);if(E<0)throw new f(Fi);let Z=0,H=await Lo(r,E,y),J=gt(H);if(y){if(H.length<4)throw new f(Fi);const e=P-y;if(E!=e&&k==R){const t=Ga(J,Z)==V||Boolean(I&&I.compressedSize)||ma(J);let n=!t;if(!n&&e>=0&&e+4<=r.size&&(n=Ga(gt(await Lo(r,e,4)),0)==V),n){const n=E;E=e,E>n&&(_+=E-n,D=t),H=await Lo(r,E,y),J=gt(H)}}}const Q=P-E;if(y!=Q&&Q>=0&&k==R&&(y=Q,H=await Lo(r,E,y),J=gt(H)),E<0||E>=r.size)throw new f(Fi);t.directoryOffset=E,t.directoryLength=B;const $=Wa(t,e,"decryptCentralDirectory");let ee,te;if($&&v&&H.length>=4&&Ga(J,0)!=V&&(T||ma(J))){const e=function(e,t,n){const r=e&&e.compressedSize?e.compressedSize:t;return r>0&&r<=n?r:n}(I,B,H.length);te=H.subarray(e),H=await $(H.subarray(0,e),I),J=gt(H),B=H.length,ee=!0}I&&!ee&&(H.length<4||Ga(J,0)==V)&&Wo(o,ji),A=E;const ne=Ba(t,e,"filenameEncoding"),ce=Ba(t,e,"commentEncoding"),le=new l;let ue,fe=-1;const we=!s&&!C;!v&&we&&(v=ha(J,H,Z),v&&Wo(o,qi));for(let i=0;i<v;i++){const s=new pa(r,t.options);if(Z+q>H.length||Ga(J,Z)!=V){if(0==i&&!ee&&(T||ma(J)))throw new f(Mi);throw new f(Ai)}Ea(s,J,Z+6);const c=Boolean(s.bitFlag.languageEncodingFlag),l=Z+q,u=l+s.filenameLength,p=u+s.extraFieldLength,m=Ha(J,Z+4),h=!(m>>8),y=m>>8==3,E=H.subarray(l,u),S=Ha(J,Z+32),g=p+S,b=H.subarray(p,g),x=c,R=c,z=Ga(J,Z+38),D=z&L,C={readOnly:Boolean(1&D),hidden:Boolean(2&D),system:Boolean(4&D),directory:Boolean(16&D),archive:Boolean(32&D)},I=Ga(J,Z+42),k=Wa(t,e,"decodeText")||Hr,N=x?aa:ne||sa,U=R?aa:ce||sa;let M=k(E,N,Ue);if(M===de&&(M=Hr(E,N)),w){const e=w(M);e!==de&&(M=e)}if(Ia(M,d)){const e=new f(Oi);throw e.filename=M,e}let B=k(b,U,Me);B===de&&(B=Hr(b,U)),n.assign(s,{index:i,Be:ee,versionMadeBy:m,msDosCompatible:h,zip64:!1,compressedSize:0,uncompressedSize:0,We:S,offset:I,diskNumberStart:Ha(J,Z+34),internalFileAttributes:Ha(J,Z+36),externalFileAttributes:z,msdosAttributesRaw:D,msdosAttributes:C,rawFilename:E,filenameUTF8:x,commentUTF8:R,rawExtraField:H.subarray(u,p),rawComment:b,filename:M,comment:B}),Sa(s,s,J,Z+6)&&Wo(o,Gi,M),s.offset+=_;const W=za(r,s.diskNumberStart)+s.offset;A=a.min(W,A),W<fe&&Wo(o,Zi,M),fe=W,(s.version&L)>63&&Wo(o,Vi,M),32&~s.rawBitFlag||Wo(o,Hi,M),le.has(s.filename)&&(ue=!0),le.add(s.filename);const P=s.externalFileAttributes>>16&O;s.unixMode===de&&16877&P&&(s.unixMode=P);const G=Boolean(s.unixMode&ie),j=Boolean(s.unixMode&ae),K=Boolean(512&s.unixMode),Y=40960==((s.unixMode===de?P:s.unixMode)&re),X=!Y&&(s.unixMode!==de?!!(73&s.unixMode):y&&!!(73&P)),Q=s.unixMode!==de&&(s.unixMode&re)==oe,$=(P&re)==oe;n.assign(s,{setuid:G,setgid:j,sticky:K,symlink:Y,unixExternalUpper:P,executable:X,directory:Q||$||h&&C.directory||s.filename.endsWith(se),zipCrypto:s.encrypted&&!s.extraFieldAES});const te=new bi(s);if(te.getData=(e,n)=>s.getData(e,te,t.Me,n),te.arrayBuffer=async e=>{const r=new F,o=An(r.readable).then(e=>e.arrayBuffer());return o.catch(()=>{}),await s.getData(r,te,t.Me,n.assign({},e,{preventClose:!1})),o},Z=g,i==v-1&&we){const e=ha(J,H,Z);e&&(v+=e,Wo(o,qi))}const{onprogress:pe}=e;if(pe)try{await pe(i+1,v,new bi(s))}catch{}yield te}let pe=Z,me=ya(H.subarray(Z))||(ee?ya(te):de);if(!me&&!ee){const e=E+Z,t=a.min(P-e,65541);t>=6&&(me=ya(await Lo(r,e,t)))}me&&(t.digitalSignature=me,pe=Z+6+me.length),(Z!=B&&pe!=B||!ee&&Z!=y&&pe!=y)&&Oa(s,o,Ji),ue&&Oa(s,o,Qi);const he=Ba(t,e,"extractPrependedData"),ye=Ba(t,e,"extractAppendedData"),Se=(s||he)&&v&&4==A&&await async function(e){const t=await Da(e);return t==W||808471376==t}(r)?4:0;return s&&(_||v&&A>Se)&&La(Yi),(_||v&&A>4)&&Wo(o,Yi),D&&Wo(o,Xi),he&&(t.prependedData=A>Se?await Lo(r,Se,A-Se):Ee),t.comment=g?await Lo(r,S+K,g):Ee,ye&&(t.appendedData=b<r.size?await Lo(r,b,r.size-b):Ee),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){const{reader:e}=this;e.readUint8Array||!e.readable||e.readable.locked||await e.readable.cancel()}[Se](){return this.close()}}class fa{constructor(e={}){let r;const{readable:o,writable:i}=new F({start(e){r=e}}),a=new da(o,e),s=a.getEntriesGenerator(),c=new l;this.readable=new z({async pull(e){const{done:t,value:r}=await s.next();if(t)return e.close();const o=function(e,t){const{readable:n,writable:r}=new F;let o;const i={cancel:async e=>{t.delete(i),await(o?o.cancel(e):n.cancel(e))}};return i.readable=new z({async pull(a){o||(o=n.getReader(),t.add(i),async function(){try{await e.getData(r,{preventClose:!1})}catch(e){try{await r.abort(e)}catch{}}finally{t.delete(i)}}());const{done:s,value:c}=await o.read();s?a.close():a.enqueue(c)},cancel:e=>i.cancel(e)},{highWaterMark:0}),i}(r,c),i={...r,readable:o.readable};delete i.getData,n.defineProperties(i,{localDirectory:{get:()=>r.localDirectory,enumerable:!0},warnings:{get:()=>r.warnings,enumerable:!0}}),e.enqueue(i)},async cancel(e){const n=t.from(c);c.clear(),r.error(e),await E.allSettled(n.map(t=>t.cancel(e))),await E.allSettled([s.return(),a.close()])}}),this.writable=i}}async function wa(e,t={}){if(e=new _o(e),await Mo(e),e.size!==de&&e.readUint8Array||(e=new uo(await An(e.readable)),await Mo(e)),e.size<K)return!1;const n=Ca(t,{}),r=n!=Be,o=ka(t[_e],n),{Oe:i,Le:a}=await va(e,r,o);if(!i||n==Oe&&a>1)return!1;const s=Ha(gt(i),20),c=i.offset+K+s;return e.size-c<=o}class pa{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,r,o={}){const i=this,s=ft(),{reader:c,index:l,offset:u,diskNumberStart:d,extraFieldAES:w,extraFieldZip64:p,compressionMethod:m,bitFlag:h,rawBitFlag:y,crc32:E,rawLastModDate:S,uncompressedSize:g,compressedSize:b}=i,{dataDescriptor:x}=h,R=t.localDirectory={},F=t.warnings=[],z=za(c,d)+u,A=await Lo(c,z,ce),C=gt(A);let T=Ba(i,o,ge),I=Ba(i,o,be);const k=Xe(Ba(i,o,xe)),v=Boolean(k),_=!0===k;if(Ye(T,I),T=T&&T.length&&T,I=I&&I.length&&I,w&&99!=w.originalCompressionMethod)throw new f(vn);if(A.length<ce||Ga(C,0)!=B)throw new f(Ci);Ea(R,C,4);const{extraFieldLength:N,filenameLength:U}=R,M=R.dataOffset=z+ce+U+N,O=Ba(i,o,"checkLocalDirectory"),W=Ca(o,i.options),Z=function(e,t){return e===de?t!=Be:Boolean(e)}(O,W),V=Ba(i,o,"checkLocalFilename"),H=function(e,t){return e===de?t==Oe:Boolean(e)}(V===de?O:V,W);let G=Ee;if(H&&(U||N)){const e=await Lo(c,z+ce,U+N);G=e.subarray(0,U),R.rawExtraField=e.subarray(U)}else R.rawExtraField=N?await Lo(c,z+ce+U,N):Ee;H&&(R.rawFilename=G),Sa(i,R,C,4,!0)&&Wo(F,Gi),function(e,t,n,r,o){const{rawFilename:i}=e,a=!o,s=e.Be&&!(8192&~t.rawBitFlag);!r||s||n.length==i.length&&!n.some((e,t)=>e!=i[t])||Oa(a,o,ta),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&Oa(a,o,na),t.compressionMethod!=e.compressionMethod&&Oa(a,o,ra),t.bitFlag.dataDescriptor||s||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||Oa(a,o,oa)}(i,R,G,H,Z?de:F);const{lastAccessDate:j,creationDate:q,uid:K,gid:Y}=R;j&&(t.lastAccessDate=j),q&&(t.creationDate=q),K!==de&&t.uid===de&&(t.uid=K),Y!==de&&t.gid===de&&(t.gid=Y);const X=Ba(i,o,"checkPasswordOnly"),J=i.encrypted&&R.encrypted&&(!_||X),Q=J&&!w;if(_||(t.zipCrypto=Q),J&&!(64&~R.rawBitFlag))throw new f(ki);const $=v?de:Mn(m);if(0!=m&&8!=m&&9!=m&&!$&&!v)throw new f(vn);if(J){if(!Q&&(w.strength<1||w.strength>3))throw new f(ki);if(!T&&!I)throw new f(Ii)}if(M+b>c.size)throw new f(Ni);const ee=b,te=Dn(c.createReadable({offset:M,size:ee})),ne=qe(Ba(i,o,Re));Ke(ne);let re=Ba(i,o,"checkOverlappingEntry");const oe=Ba(i,o,"checkOverlappingEntryOnly");oe&&(re=!0);const{onstart:ie,onprogress:ae,onend:se}=o,le=0!=m&&!v,ue=v?b-Ri(J,Q,w&&w.strength):g,fe=9==m;let we=Ba(i,o,ze);fe&&(we=!1);const pe=Ba(i,o,"checkCrc32"),me=(pe===de?Ba(i,o,"checkSignature"):pe)&&!v&&(!J||Q||w&&1==w.vendorVersion),he={options:{codecType:ar,password:T,rawPassword:I,zipCrypto:Q,encryptionStrength:w&&w.strength,checkCrc32:me,checkAuthenticationCode:Ba(i,o,"checkAuthenticationCode"),passwordVerification:Q&&(x?S>>>8&L:E>>>24&L),outputSize:ue,crc32:E,compressed:le,encrypted:J,useWebWorkers:Ba(i,o,Fe),useCompressionStream:we,transferStreams:Ba(i,o,De),deflate64:fe,format:$?$.format:de,codecURI:$?$.codecURI:de,compressionMethod:m,rawBitFlag:y,checkPasswordOnly:X},config:s,se:{signal:ne,size:ee,onstart:ie,onprogress:ae,onend:se}};let ye,Se;re&&await async function({reader:e,Pe:t,index:n,offset:r,crc32:o,compressedSize:i,uncompressedSize:a,dataOffset:s,dataDescriptor:c,extraFieldZip64:l,Me:u}){let d=0;if(c&&(d=l?20:12),d){const n=await Lo(e,s+i,d+4),r=gt(n);let c=n.length==d+4&&Ga(r,0)==P;if(c){const e=Fa(r,4,l);(t.encrypted&&!t.zipCrypto||e.crc32==o)&&e.compressedSize==i&&e.uncompressedSize==a?d+=4:c=!1}if(n.length>=d){const e=Fa(r,c?4:0,l);e.signature=c,t.localDirectory.dataDescriptor=e}}const w={start:r,end:s+i+d,Pe:t};for(const[e,t]of u)if(e!=n&&w.start<t.end&&t.start<w.end){const e=new f(_i);throw e.overlappingEntry=t.Pe,e}u.set(n,w)}({reader:c,Pe:t,index:l,offset:z,crc32:E,compressedSize:b,uncompressedSize:g,dataOffset:M,dataDescriptor:x||R.bitFlag.dataDescriptor,extraFieldZip64:p||R.extraFieldZip64,Me:r});try{if(!oe){X&&(e=new D),e=new No(e),await Mo(e,function(e,t,n){return a.min(e,n?1032*t:t)}(ue,b,le)),({writable:ye}=e);const{outputSize:t}=await Or({readable:te,writable:ye},he);if(t!=ue)throw n.assign(new f(Wn),{outputSize:t});e.size+=t}}catch(t){if(t.outputSize!==de&&(e.size+=t.outputSize),!X||t.message!=Wt)throw Se=t,t}finally{if((Uo(e)||!Ba(i,o,Ae))&&ye&&!ye.locked){const e=ye.getWriter();if(Se)try{await e.abort(Se)}catch{}else await e.close()}}return X||oe?de:e.getData?e.getData():ye}}function ma(e){const t=a.min(e.byteLength,1024)-3;for(let n=0;n<t;n++)if(134630224==Ga(e,n))return!0;return!1}function ha(e,t,n){let r=0;for(;n+q<=t.length&&Ga(e,n)==V;)n+=q+Ha(e,n+28)+Ha(e,n+30)+Ha(e,n+32),r++;return r%65536?0:r}function ya(e){if(e.length>=6){const t=gt(e);if(Ga(t,0)==Z){const n=Ha(t,4);if(6+n<=e.length)return e.subarray(6,6+n)}}}function Ea(e,t,r){const o=e.rawBitFlag=Ha(t,r+2),i=!(1&~o),a=Ga(t,r+6);n.assign(e,{encrypted:i,version:Ha(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&ne)==ne},rawLastModDate:a,lastModDate:Pa(a),filenameLength:Ha(t,r+22),extraFieldLength:Ha(t,r+24)})}function Sa(e,t,r,o,i){const{rawExtraField:a}=t,l=t.extraField=new c,u=gt(a);let d=0,w=!1;try{for(;d<a.length;){const e=Ha(u,d),t=Ha(u,d+2);l.set(e,{type:e,data:a.slice(d+4,d+4+t)}),d+=4+t}}catch{w=!0}d>a.length&&(w=!0);const p=Ha(r,o+4);n.assign(t,{signature:Ga(r,o+10),crc32:Ga(r,o+10),compressedSize:Ga(r,o+14),uncompressedSize:Ga(r,o+18)});const m=l.get(1);m&&(function(e,t){t.zip64=!0;const n=gt(e.data),r=ca.filter(([e,n])=>t[e]==n),o=r.reduce((e,[,t])=>e+la[t].bytes,0);if(e.data.length<o)throw new f(Ti);for(let o=0,i=0;o<r.length;o++){const[a,s]=r[o],c=la[s];t[a]=e[a]=c.Ue(n,i),i+=c.bytes}}(m,t),t.extraFieldZip64=m);const h=l.get(28789);h&&(ga(h,Po,Zo,t,e),t.extraFieldUnicodePath=h);const y=l.get(25461);y&&(ga(y,Vo,Ho,t,e),t.extraFieldUnicodeComment=y);const E=l.get(J);E&&E.data.length>=7?(function(e,t,r){const o=gt(e.data),i=Va(o,4);n.assign(e,{vendorVersion:Va(o,0),vendorId:Va(o,2),strength:i,originalCompressionMethod:r,compressionMethod:Ha(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=de)}(E,t,p),t.extraFieldAES=E):t.compressionMethod=p;const S=l.get(13);S&&(ba(S,t),t.extraFieldPkwareUnix=S);const g=l.get(22613);g&&(ba(g,t),t.extraFieldUnixType1=g);const b=l.get(10);b&&(function(e,t){const r=gt(e.data);let o,i=4;try{for(;i<e.data.length&&!o;){const t=Ha(r,i),n=Ha(r,i+2);1==t&&(o=e.data.slice(i+4,i+4+n)),i+=4+n}}catch{}if(o&&24==o.length){const r=gt(o),i=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),s=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:i,rawLastAccessDate:a,rawCreationDate:s});const c={lastModDate:Za(i),lastAccessDate:Za(a),creationDate:Za(s)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:a,rawCreationDate:s})}}(b,t),t.extraFieldNTFS=b);const x=l.get(te);let R;if(x&&(R=xa(x,t,!1),t.extraFieldUnix=x),!R){const e=l.get(ee);e&&(xa(e,t,!0),t.extraFieldInfoZip=e)}const F=l.get(Q);F&&(function(e,t,n){if(!e.data.length)return;const r=gt(e.data),o=Va(r,0),i=[],a=[];n?(1&~o||(i.push(Yo),a.push(Xo)),2&~o||(i.push(Jo),a.push(Qo)),4&~o||(i.push($o),a.push(ei))):e.data.length>=5&&(i.push(Yo),a.push(Xo));let c=1;i.forEach((n,o)=>{if(e.data.length>=c+4){const i=Ga(r,c);t[n]=e[n]=new s(1e3*(0|i));const l=a[o];e[l]=i}c+=4})}(F,t,i),t.extraFieldExtendedTimestamp=F);const z=l.get($);return z&&(t.extraFieldUSDZ=z),w}function ga(e,t,r,o,i){if(e.data.length<5)return void(e.valid=!1);const a=gt(e.data),s=new It;s.append(i[r]);const c=gt(new w(4));c.setUint32(0,s.get(),!0);const l=Ga(a,1),u=Va(a,0);n.assign(e,{version:u,[t]:Hr(e.data.subarray(5)),valid:1==u&&!i.bitFlag.languageEncodingFlag&&l==Ga(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function ba(e,t){if(e.data.length<8)return;const r=gt(e.data),o={lastAccessDate:new s(1e3*(0|Ga(r,0))),lastModDate:new s(1e3*(0|Ga(r,4)))};e.data.length>=12&&(o.uid=Ha(r,8),o.gid=Ha(r,10)),n.assign(e,o),n.assign(t,o)}function xa(e,t,r){try{const o=gt(e.data);let i,a;if(r){let t=0;const r=Va(o,t++),s=Va(o,t++);i=Ra(e.data.subarray(t,t+s)),t+=s;const c=Va(o,t++);a=Ra(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:i,gid:a})}else e.data.length>=4&&(i=Ha(o,0),a=Ha(o,2),n.assign(e,{uid:i,gid:a}));return i!==de&&(t.uid=i),a!==de&&(t.gid=a),i!==de||a!==de}catch{}}function Ra(e){const t=new w(4);return t.set(e,0),new h(t.buffer,t.byteOffset,4).getUint32(0,!0)}function Fa(e,t,n){const r=Ga(e,t);let o,i;return n?(o=ja(e,t+4),i=ja(e,t+12)):(o=Ga(e,t+4),i=Ga(e,t+8)),{crc32:r,compressedSize:o,uncompressedSize:i}}function za(e,t){return e.Ne?e.Ne(t):0}async function Da(e){return Ga(gt(await Lo(e,0,4)))}function Aa(e){return e===Oe||e===Le||e===Be}function Ca(e,t){return Ta(e,Ta(t,Le))}function Ta(e,t){const n=e.strictness;if(n!==de){if(!Aa(n))throw new f(Li);return n}const r=e.checkAmbiguity;return r===de?t:r?Oe:t==Be?Be:Le}function Ia(e,t){if(t==Be)return!1;const n=e.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(n.includes("..")||e.startsWith("/")||e.startsWith("\\\\")||ia.test(e))||t==Oe&&(n.includes(".")||n.includes(""))}function ka(e,t){if(e!==de){const t=$e(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new f(Wi);return t}return t==Oe?0:t==Be?1/0:O}async function va(e,t,n){const{size:r}=e,o=a.min(r,65557),i={count:64};let s,c,l=0;for await(const[n,a,u,d,f]of _a(e,o)){const o=Ha(n,d+20);if(f+K+o==r){const o=await Ua(e,n,a,d,f,r,i);if(2==o){if(s||(s=Na(u,d,f)),l++,!t||l>1)break}else 1!=o||c||(c=Na(u,d,f))}}return s||(s=c),s||(s=await async function(e,t,n){const{size:r}=e,o=a.min(r,t==1/0?r:65557+t);let i,s;for await(const[t,a,c,l,u]of _a(e,o)){const o=Na(c,l,u);i||(i=o);const d=await Ua(e,t,a,l,u,r,n);if(2==d)return o;1!=d||s||(s=o)}return s||i}(e,n,i)),{Oe:s,Le:l}}async function*_a(e,t){const n=e.size-t,r=await Lo(e,n,t),o=gt(r);for(let e=r.length-K;e>=0;e--)Ga(o,e)==H&&(yield[o,n,r,e,n+e])}function Na(e,t,n){return{offset:n,buffer:e.slice(t,t+K).buffer}}async function Ua(e,t,n,r,o,i,a){const s=Ha(t,r+10),c=Ga(t,r+12),l=Ga(t,r+16);if(s==O||c==M||l==M)return await Ma(e,t,n,o-Y,i,a)==j?2:0;if(!s&&!c)return 1;const u=Ha(t,r+6);for(const r of[o-c,za(e,u)+l])if(await Ma(e,t,n,r,i,a)==V)return 2;return 0}async function Ma(e,t,n,r,o,i){return r<0||r+4>o?de:r>=n?Ga(t,r-n):i.count>0?(i.count--,Ga(gt(await Lo(e,r,4)),0)):de}function Oa(e,t,n){e?La(n):Wo(t,n)}function La(e){const t=new f(Ui);throw t.reason=e,t}function Ba(e,t,n){return t[n]===de?e.options[n]:t[n]}function Wa(e,t,n){return je(Ba(e,t,n))}function Pa(e){const t=(4294901760&e)>>16,n=e&O,r=new s(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<ue?ue:r}function Za(e){return new s(o(e/i(1e4)-i(116444736e5)))}function Va(e,t){return e.getUint8(t)}function Ha(e,t){return e.getUint16(t,!0)}function Ga(e,t){return e.getUint32(t,!0)}function ja(e,t){const n=e.getBigUint64(t,!0);if(n>ua)throw new f(Pi);return o(n)}var qa=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Ui,ERR_BAD_FORMAT:Fi,ERR_CENTRAL_DIRECTORY_NOT_FOUND:Ai,ERR_ENCRYPTED:Ii,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Mi,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Ni,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Di,ERR_EOCDR_NOT_FOUND:zi,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Ti,ERR_INVALID_AUTHENTICATION_CODE:Bt,ERR_INVALID_COMPRESSED_DATA:Pn,ERR_INVALID_CRC32:Zn,ERR_INVALID_FILENAME_VALIDATION:Bi,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Wi,ERR_INVALID_PASSWORD:Lt,ERR_INVALID_STRICTNESS:Li,ERR_INVALID_UNCOMPRESSED_SIZE:Wn,ERR_LOCAL_FILE_HEADER_NOT_FOUND:Ci,ERR_OVERLAPPING_ENTRY:_i,ERR_SPLIT_ZIP_FILE:vi,ERR_UNSAFE_FILENAME:Oi,ERR_UNSUPPORTED_COMPRESSION:vn,ERR_UNSUPPORTED_ENCRYPTION:ki,ERR_UNSUPPORTED_UINT64:Pi,ERR_WORKER_STARTUP_TIMEOUT:lr,WARNING_APPENDED_DATA:Ki,WARNING_COMPRESSED_PATCHED_DATA:Hi,WARNING_DUPLICATE_FILENAME:Qi,WARNING_MALFORMED_EXTRA_FIELD:Gi,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:na,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:ra,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:oa,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:ta,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:$i,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:ea,WARNING_PREPENDED_CENTRAL_DIRECTORY:Xi,WARNING_PREPENDED_DATA:Yi,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Ji,WARNING_UNKNOWN_VERSION:Vi,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:ji,WARNING_UNSORTED_CENTRAL_DIRECTORY:Zi,WARNING_WRAPPED_ENTRIES_COUNT:qi,ZipReader:da,ZipReaderStream:fa,isZipFile:wa});const Ka="File already exists",Ya="Zip file comment exceeds 64KB",Xa="Invalid zip file comment (must be a Uint8Array)",Ja="File entry comment exceeds 64KB",Qa="Invalid file entry comment (must be a string)",$a="Invalid date (must be a valid Date instance)",es="File entry name exceeds 64KB",ts="Version exceeds 65535",ns="The strength must equal 1, 2, or 3",rs="Encryption is not supported in USDZ files",os="Split zip files are not supported in USDZ files",is="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",as="Invalid extra field (must be a Map)",ss="Invalid extra field type (must be integer 0..65535)",cs="Invalid extra field data (must be a Uint8Array)",ls="Extra field data exceeds 64KB",us=-2147483648,ds=2147483647,fs=i(0),ws=i("0x7fffffffffffffff"),ps="Zip64 is not supported (set the 'zip64' option to 'true')",ms="Undefined uncompressed size",hs="Undefined compression method",ys="Undefined CRC32",Es="Undefined reader",Ss="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",gs="Zip file not empty",bs="Invalid uid (must be integer 0..2^32-1)",xs="Invalid gid (must be integer 0..2^32-1)",Rs="Invalid UNIX mode (must be integer 0..65535)",Fs="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",zs="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",Ds="Invalid msdosAttributesRaw (must be integer 0..255)",As="Invalid msdosAttributes (must be an object with boolean flags)",Cs="Invalid level (must be integer 0..9)",Ts="Signature data exceeds 64KB",Is="Invalid entry option (must be an entry returned by ZipReader#getEntries())",ks="The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set",vs="compression unavailable",_s="clamped last modification date",Ns=new w([7,0,2,0,65,69,3,0,0]),Us="infozip",Ms="unix",Os=[8,9,5,3];let Ls=0;const Bs=[];class Ws{constructor(e,t={}){e=new No(e);const{availableSize:r=fe,maxSize:o=fe}=e,i=r>0&&r!==fe&&o>0&&o!==fe;if(i&&t[ve])throw new f(os);n.assign(this,{writer:e,Ze:i,options:t,Ve:new c,He:new l,offset:t[ke]===de?e.size||e.writable.size||0:t[ke],Ge:t[ke]===de?0:t[ke]-(e.size||e.writable.size||0),je:new l,qe:[],warnings:[],Ke:0,Ye:0,Xe:de,Je:!1})}prependZip(e){return Vs(this,async function(e,t){if(e.He.size)throw new f(gs);await e.Qe(t)}(this,e))}appendZip(e){return Vs(this,this.Qe(e))}async Qe(e){const r=this,{je:o,He:i,Ve:a}=r;for(;o.size;)await E.allSettled(t.from(o));let s;const l=new E(e=>s=e);o.add(l);const u=[];let d;try{e=new _o(e),await Mo(e),e.size!==de&&e.readUint8Array||(e=new uo(await An(e.readable)),await Mo(e));const{ZipReader:o}=await E.resolve().then(function(){return qa}),s=new o(e),l=await s.getEntries();await s.close(),await Mo(r.writer);const{directoryOffset:w}=s;l.forEach(({filename:e})=>{if(i.has(e))throw new f(Ka);i.add(e),u.push(e)}),r.$e=!0;const{et:p}=r;r.et=new E(e=>d=()=>{r.$e=!1,e()}),await p,r.Ze&&(delete r.Ze,await async function(e){return gt(await Lo(e,0,4)).getUint32(0,!0)==W}(e)||(await ac(r.writer,oc()),r.offset+=4));const m=await async function(e,n,r,o){const{writer:i}=e,a=new c;if(i.closeDisk){const s=t.from(r).sort((e,t)=>rc(n,e)-rc(n,t));let c=0;for(const t of s){const r=rc(n,t);await tc(e,n,c,r-c),Qs(i,await nc(n,r))&&await i.closeDisk(),a.set(t,{offset:$s(e,i),diskNumberStart:Xs(i)}),c=r}await tc(e,n,c,o-c)}else{const t=e.offset;await tc(e,n,0,o),r.forEach(e=>a.set(e,{offset:t+rc(n,e),diskNumberStart:0}))}return a}(r,e,l,w);l.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,bitFlag:i,encrypted:s,uncompressedSize:c,compressedSize:l,extraFieldZip64:u}=e;let{compressionMethod:d,rawExtraField:f}=e;const{level:w,languageEncodingFlag:p,dataDescriptor:h}=i;f=ec(f||Ee),e.extraFieldAES&&(d=99);const y=xc(f),E=Boolean(u)&&u.uncompressedSize!==de,S=Boolean(u)&&u.compressedSize!==de,g=-7&zc(w,p,h,s,d)|w<<1,{nt:b,ot:x}=Rc({version:t,bitFlag:g,compressionMethod:d,uncompressedSize:c,compressedSize:l,rawLastModDate:r,rawFilename:o,it:S,st:E,extraFieldLength:y}),{crc32:R}=e;R!==de&&Sc(x,10,R);const{offset:F,diskNumberStart:z}=m.get(e);n.assign(e,{ct:!0,st:E,it:S,offset:F,diskNumberStart:z,lt:!1,ut:Ee,ft:Ee,wt:Ee,ht:Ee,yt:Ee,rawExtraField:f,Et:Ee,extendedTimestamp:!1,nt:b,ot:x}),a.set(e.filename,e)})}catch(e){throw u.forEach(e=>i.delete(e)),e}finally{s(),o.delete(l),d&&d()}}add(e="",r,l={}){const u=this,{je:d}=u,p=async function(e,r,l,u){const d=(u=n.assign({},u))[Ne];if(d!==de){const{St:r,gt:o}=function(e,r,o){if(null===e||typeof e!=me||t.isArray(e))throw new f(Is);const{externalFileAttributes:i,versionMadeBy:l,comment:u,lastModDate:d,rawLastModDate:w,creationDate:p,lastAccessDate:m,uncompressedSize:h,encrypted:y,zipCrypto:E,crc32:S,compressionMethod:g,extraFieldAES:b,extraFieldUnix:x,internalFileAttributes:R,extraField:F,bitFlag:z,directory:D,uid:A,gid:C}=e,T={externalFileAttributes:i,versionMadeBy:l,comment:u,lastModDate:d,creationDate:p,lastAccessDate:m,internalFileAttributes:R,directory:D};z&&z.languageEncodingFlag&&(T[Te]=!0);const I=function(e){if(e){const t=new c;if(e.forEach((e,n)=>{xi.has(n)||t.set(n,e.data)}),t.size)return t}}(F);I&&(T[mi]=I),A===de&&C===de||n.assign(T,{uid:A,gid:C,unixExtraFieldType:x?Ms:Us});const k={};if(r&&!D)if(n.assign(k,{uncompressedSize:h,crc32:S,compressionMethod:g}),r!==We&&n.assign(k,{encrypted:y,zipCrypto:E,encryptionStrength:b?b.strength:de}),z&&(k.dataDescriptor=z.dataDescriptor,k[Ce]=Os[z.level]),o===de)k.rawLastModDate=w;else if(r!==We&&E&&(!z||z.dataDescriptor)&&o instanceof s&&function(e){let t=new s(2e3*a.ceil(a.floor(e.getTime()/1e3)/2));return t<ue?t=ue:t>le&&(t=le),(t.getHours()<<3|t.getMinutes()>>3)&L}(o)!=(w>>>8&L))throw new f(ks);return{St:T,gt:k}}(d,Xe(dc(e,u,xe)),dc(e,u,Yo));delete u[Ne],u=n.assign(r,o,u)}if(dc(e,u,di)&&!r.endsWith(se)&&(r+=se),e.He.has(r))throw new f(Ka);e.He.add(r),Ls<ft().maxWorkers?Ls++:await new E(e=>Bs.push(e));try{return await async function(e,r,c,l){const u=function(e,n,r){let o=dc(e,r,ii),i=dc(e,r,li,o?20:768);const a=dc(e,r,fi),s=pc(e,r,"uid"),c=pc(e,r,"gid");let l=pc(e,r,hi),u=dc(e,r,"unixExtraFieldType"),d=dc(e,r,yi),w=dc(e,r,Ei),p=dc(e,r,Si);if(Qe(s,M,bs),Qe(c,M,xs),Qe(l,O,Rs),u!==de&&u!==Us&&u!==Ms)throw new f(Fs);if(u===Ms&&(s!==de&&s>O||c!==de&&c>O))throw new f(zs);u!==de||s===de&&c===de||(u=Us);let m=pc(e,r,ri),h=dc(e,r,oi);const y=m!==de||h!==de;if(s!==de||c!==de||l!==de||u||a?(o=!1,i=i&L|768):y&&(o=!0,i&=L),Qe(m,L,Ds),h&&(typeof h!==me||t.isArray(h)))throw new f(As);if(i>O)throw new f(ts);let E=dc(e,r,ni);const S=E!==de;S||(E=0),!r[di]&&n.endsWith(se)&&(r[di]=!0);const g=dc(e,r,di);if(g?(n.endsWith(se)||(n+=se),S||(E=16,o||(E|=16877<<16))):o||S||(E=a?493<<16:27525120),!o){const e=l!==de||Boolean(d||w||p);l=l===de?E>>16&O:l&O,d?l|=ie:d=Boolean(l&ie),w?l|=ae:w=Boolean(l&ae),p?l|=512:p=Boolean(512&l),S&&!e||(g?l=-61441&l|oe:l&re||(l|=32768),E=(l&O)<<16|E&O)}({msdosAttributesRaw:m,msdosAttributes:h}=function(e,t){if(e!==de)e&=L;else if(t!==de){const{readOnly:n,hidden:r,system:o,directory:i,archive:a}=t;let s=0;n&&(s|=1),r&&(s|=2),o&&(s|=4),i&&(s|=16),a&&(s|=32),e=s&L}return t===de&&(t={readOnly:Boolean(1&e),hidden:Boolean(2&e),system:Boolean(4&e),directory:Boolean(16&e),archive:Boolean(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}}(m,h)),y&&(E=E&M|m&L);const b=E>>16&O,x=l!==de&&40960==(l&re);return{name:n,bt:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:E,unixExternalUpper:b,uid:s,gid:c,unixMode:l,unixExtraFieldType:u,symlink:x,setuid:d,setgid:w,sticky:p,msdosAttributesRaw:m,msdosAttributes:h}}}(e,r,l);({name:r}=u);const d=function(e,t,n){const r=wc(e,n,"encodeText")||vt;let i=r(t,Ue);if(i===de&&(i=vt(t)),xc(i)>O)throw new f(es);const a=n[Vo]||"";if(typeof a!=he)throw new f(Qa);let c=r(a,Me);if(c===de&&(c=vt(a)),xc(c)>O)throw new f(Ja);const l=dc(e,n,ci);if(l!==de&&l>O)throw new f(ts);const u=fc(e,n,Yo,new s),d=dc(e,n,Xo),w=fc(e,n,Jo),p=fc(e,n,$o),m=dc(e,n,ti,0),h=Xe(dc(e,n,xe)),y=Boolean(h),E=!0===h,S=dc(e,n,ge),g=dc(e,n,be);Ye(S,g);const b=pc(e,n,"encryptionStrength",3),x=dc(e,n,ui),R=dc(e,n,"extendedTimestamp",!0),F=dc(e,n,"ntfsTimestamp"),z=dc(e,n,"keepOrder",!0),D=dc(e,n,Fe),A=dc(e,n,De),C=dc(e,n,"bufferedWrite"),T=wc(e,n,"createTempStream"),I=dc(e,n,"dataDescriptorSignature",!0),k=qe(dc(e,n,Re));Ke(k);const v=dc(e,n,Te,!Fc(i)||!Fc(c)),_=dc(e,n,wi),N=y||_===de?de:Mn(_);if(!y&&_!==de&&0!==_&&8!==_&&!N)throw new f(vn);let U=pc(e,n,Ce);if(Qe(U,9,Cs),e.options[ve]){if(S!==de||g!==de)throw new f(rs);U===de&&_===de&&(U=0)}y&&(U=$e(n[Ce]));let M=dc(e,n,ze),L=dc(e,n,Ie);C&&L===de&&(L=!1),(L===de||x&&!E)&&(L=!0),U!==de&&6!=U&&(M=!1);const B=dc(e,n,ai);if(!(x||S===de&&g===de||o.isInteger(b)&&b>=1&&b<=3))throw new f(ns);const W=js(n[mi]),P=js(n.localExtraField),Z=js(n.centralExtraField);return{comment:a,bt:{rawFilename:i,rawComment:c,version:l,lastModDate:u,rawLastModDate:d,lastAccessDate:w,creationDate:p,internalFileAttributes:m,xt:y,Rt:E,password:S,rawPassword:g,encryptionStrength:b,zipCrypto:x,extendedTimestamp:R,ntfsTimestamp:F,keepOrder:z,useWebWorkers:D,transferStreams:A,bufferedWrite:C,createTempStream:T,dataDescriptorSignature:I,signal:k,useUnicodeFileNames:v,compressionMethod:_,format:N?N.format:de,codecURI:N?N.codecURI:de,Ft:N?N.versionNeeded:de,level:U,useCompressionStream:M,dataDescriptor:L,zip64:B,rawExtraField:W,zt:P,Et:Z}}}(e,r,l),{comment:p}=d,m=l[mi];e.Ve.set(r,de);const h=e.Xe,y={};let S,g;d.bt.keepOrder&&(y.Dt=new E(e=>S=e)),e.Xe=y;try{const{bt:t}=d;0==t.level||t.compressionMethod!==de||t.xt||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;if(n&&!n.me)return!0;if(Qn(t)||Jn(t,Gn))return!0;if(n)try{return await void 0,!0}catch{return!1}return!1}(ft())||(t.level=0,Wo(e.warnings,vs,r));const o=await async function(e,t,{bt:r},o){if(r.xt&&!t&&!dc(e,o,di))throw new f(Es);let i;if(t){if(t=new _o(t),await Mo(t),!t.readable&&!t.readUint8Array)throw new f(Ss);({size:i}=t)}return n.assign({reader:t},function(e,t,n,r,o){const{xt:i,Rt:a,zipCrypto:s,password:c,rawPassword:l,encryptionStrength:u}=r;let{dataDescriptor:d,zip64:w,level:p,compressionMethod:m}=r,h=0,y=0,E=!1;if(i&&t){if(y=o[Go],y===de)throw new f(ms);if(m===de)throw new f(hs)}const S=!0===w,g=dc(e,o,si);if(t&&a&&!g&&xc(c,l))throw new f(is);const b=t&&(Boolean(c&&xc(c)||l&&xc(l))||a&&g);t||(p=0,m=0);const x=Ri(b,s,u);t&&(i?(o.uncompressedSize=y,h=n===de?mc(y)+x:n+(a?0:x)):n===de?(d=!0,(w||w===de)&&(w=E=!0,h=4294967296)):(o.uncompressedSize=y=n,h=(hc(m,p)?mc(y):y)+x));const R=!(b||t&&(0!==n||i)||hc(m,p));R&&!s&&dc(e,o,Ie)===de&&(d=!1);const F=S||E||y>=M,z=S||h>=M;if(F||z){if(!1===w)throw new f(ps);w=!0}return w=w||!1,{At:h,bt:{dataDescriptor:d,Ct:R,zip64:w,ct:S,Tt:E,st:F,it:z,uncompressedSize:y,level:p,compressionMethod:m,encrypted:b}}}(e,Boolean(t),i,r,o))}(e,c,d,l);({reader:c}=o);const p=Js(e.writer),m=Xs(e.writer);let b=l.crc32===de?l[pi]:l.crc32;const x=o.bt.encrypted&&!t.zipCrypto;if(t.xt&&!t.Rt&&x&&(b=de),t.xt&&c&&!x&&b===de)throw new f(ys);const R=function(e){const{rawFilename:t,lastModDate:n,rawLastModDate:r,lastAccessDate:o,creationDate:i,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:d,dataDescriptor:w,directory:p,rawExtraField:m,zt:h,encryptionStrength:y,extendedTimestamp:E,ntfsTimestamp:S,xt:g,encrypted:b,st:x,it:R,uncompressedSize:F,Tt:z,crc32:D}=e;let{version:A,compressionMethod:C}=e;const T=!p&&hc(C,c);let I;const k=g||!T,v=l&&(e.bufferedWrite||!w||!x&&!R||k&&!z),_=v||l&&w&&(x||R);if(l&&(x||R)){const e=20,t=Ys(e);if(t.It(1),t.It(e-4),I=t.kt,v&&(t.vt(F),k)){const e=Ri(b,u,y);t.vt(g?0:F+e)}}else I=Ee;let N,U,M,L,W,P;if(b&&!u){const e=Ys(xc(Ns)+2);e.It(J),e._t(Ns),N=e.kt,N[8]=y}else N=Ee;if(E){const e=lc(n),t=(Z=e)>=us&&Z<=ds;if(t){const t=9+(o?4:0)+(i?4:0),n=Ys(t);L=1+(o?2:0)+(i?4:0),W=e,n.It(Q),n.It(t-4),n.Nt(L),n.Ut(e),o&&n.Ut(uc(lc(o))),i&&n.Ut(uc(lc(i))),M=n.kt}else M=Ee;if(S===de?!t||Boolean(o||i):S)try{const e=cc(n),t=Ys(36);t.It(10),t.It(32),t.Mt(4),t.It(1),t.It(24),t.vt(e),t.vt(o?cc(o):e),t.vt(i?cc(i):e),U=t.kt}catch{U=Ee}else U=Ee}else U=M=Ee;var Z;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=Us||t===de&&n===de)if(r!=Ms||t===de&&n===de)P=Ee;else{const e=Ys(8);e.It(te),e.It(4),e.It((t===de?0:t)&O),e.It((n===de?0:n)&O),P=e.kt}else{const e=Ks(t===de?0:t),r=Ks(n===de?0:n),o=3+e.length+r.length,i=Ys(4+o);i.It(ee),i.It(o),i.Nt(1),i.Nt(e.length),i._t(e),i.Nt(r.length),i._t(r),P=i.kt}}catch{P=Ee}C===de&&(C=T?8:0),A===de&&(A=0!=C||p||b?20:10);const{Ft:V}=e;T&&V!==de&&(A=A>V?A:V),l&&(A=A>45?A:45),b&&!u&&(A=A>51?A:51,g&&D!==de&&(N[4]=1),Ec(gt(N),9,C),C=99);const H=_?xc(I):0,G=H+xc(N,M,U,P,m,h);if(G+(e[ve]?67:0)>O)throw new f(ls);const j=new s(2e3*a.ceil(a.floor(n.getTime()/1e3)/2)),q=j<ue?ue:j>le?le:j,K=xc(M)?new s(1e3*lc(n)):xc(U)?n:q,{nt:Y,ot:X,rawLastModDate:$}=Rc({version:A,bitFlag:zc(c,d,w,b,C),compressionMethod:C,uncompressedSize:F,lastModDate:q,rawLastModDate:r,rawFilename:t,it:R,st:x,extraFieldLength:G}),ne=Ys(ce+xc(t)+G),re=ne.kt,oe=gt(re);return ne.Ut(B),ne._t(Y),ne._t(t),_&&ne._t(I),ne._t(N),ne._t(M),ne._t(U),ne._t(P),ne._t(m),ne._t(h),w&&(R||Sc(oe,18,0),x||Sc(oe,22,0)),{Ot:re,Lt:oe,nt:Y,ot:X,lastModDate:K,Bt:K===q&&j.getTime()!=q.getTime(),rawLastModDate:$,encrypted:b,compressed:T,version:A,compressionMethod:C,Wt:L,Pt:W,ut:Ee,Zt:H,wt:M,ht:U,yt:P,ft:N,extraFieldLength:G}}(l=n.assign({},l,u.bt,d.bt,o.bt,{signature:l[pi],crc32:b,offset:e.offset-p,diskNumberStart:m,[ve]:e.options[ve]}));R.Bt&&Wo(e.warnings,_s,r);const z=function({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r,o=Ee,i=0,a=e?20:12;return n&&(a+=4),t&&(o=new w(a),r=gt(o),n&&(i=4,Sc(r,0,P))),{Vt:o,Ht:r,Gt:i}}(l),D=xc(R.Ot,z.Vt);g=await async function(e,t,r,o,a){const{Ve:s,writer:c}=e,{keepOrder:l,dataDescriptor:u,Ct:d,signal:w}=a,{jt:p,Pe:m,qt:h,Kt:y}=o,S=e.options[ve];let g,b,x,R,z,D,A,C=m,T=0;const I=l&&h?h.Dt:de;s.set(t,C);try{a.bufferedWrite||!l||e.$e||e.Ke||e.Ye||!u&&!d?(g=!0,e.Ke++,A=a.createTempStream?await a.createTempStream():new F(de,de,{highWaterMark:fe}),A.size=0,await Mo(c)):(b=!0,e.Ye++,A=c,await I,await k()),await Mo(A);const m=Js(c);e.Ze&&!g&&await ic(e,c),S&&!g&&qs(o,e.offset-m);const{Ot:h}=p;g||await v();const y=Xs(c),x=$s(e,c);if(C.diskNumberStart=y,g||(z=!0,D=c.size,await ac(A,h)),C=await async function(e,t,{diskNumberStart:r,Dt:o},a,s,c){const{jt:l,Yt:u,Xt:d}=a,{nt:w,ot:p,lastModDate:m,rawLastModDate:h,encrypted:y,compressed:E,version:S,compressionMethod:g,ut:b,Zt:x,wt:R,Wt:F,Pt:z,ht:D,yt:A,ft:C}=l,{Vt:T}=u,{rawFilename:I,lastAccessDate:k,creationDate:v,password:_,rawPassword:N,level:U,useUnicodeFileNames:O,zip64:B,ct:W,st:P,it:Z,zipCrypto:V,dataDescriptor:H,directory:G,executable:j,versionMadeBy:q,rawComment:K,rawExtraField:Y,Et:X,useWebWorkers:J,transferStreams:Q,onstart:$,onprogress:ee,onend:te,signal:ne,encryptionStrength:re,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:ae,externalFileAttributes:se,uid:ce,gid:le,unixMode:ue,symlink:fe,setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:Ee,useCompressionStream:Se,xt:ge,Rt:be,format:xe,codecURI:Re}=c,Fe={Dt:o,versionMadeBy:q,zip64:B,ct:W,directory:Boolean(G),executable:Boolean(j),filenameUTF8:Boolean(O),rawFilename:I,commentUTF8:Boolean(O),rawComment:K,ut:b,Zt:x,wt:R,ht:D,yt:A,ft:C,rawExtraField:Y,Et:X,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:ae,externalFileAttributes:se,diskNumberStart:r,uid:ce,gid:le,unixMode:ue,symlink:Boolean(fe),setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:Ee};let{crc32:ze,uncompressedSize:De}=c,Ae=0;ge||(De=0);const{writable:Ce}=t;if(e){const n=e.size,r=Dn(Bo(e,{size:n})),o={options:{codecType:ir,inputSize:n,level:U,rawPassword:N,password:_,encryptionStrength:re,zipCrypto:y&&V,passwordVerification:y&&V&&h>>8&L,computeCrc32:!ge,compressed:E&&!ge,encrypted:y&&!be,useWebWorkers:J,useCompressionStream:Se,transferStreams:Q,format:xe,codecURI:Re,compressionMethod:g},config:s,se:{signal:ne,size:n,onstart:$,onprogress:ee,onend:te}};try{const e=await Or({readable:r,writable:Ce},o);if(Ae=e.outputSize,t.size+=Ae,ge||(De=e.inputSize,y&&!V||(ze=e.crc32)),!Z&&Ae>=M||!P&&De>=M)throw new f(ps)}catch(e){throw e.outputSize!==de&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,jt:r,Yt:o},{zip64:a,zipCrypto:s,xt:c,dataDescriptor:l}){const{ot:u,encrypted:d}=r,{Ht:f,Gt:w}=o;d&&!s&&!c||e===de||(Sc(u,10,e),l&&Sc(f,w,e)),a?l&&(gc(f,w+4,i(t)),gc(f,w+12,i(n))):(Sc(u,14,t),Sc(u,18,n),l&&(Sc(f,w+4,t),Sc(f,w+8,n)))}({crc32:ze,compressedSize:Ae,uncompressedSize:De,jt:l,Yt:u},c),H&&await ac(t,T),n.assign(Fe,{uncompressedSize:De,compressedSize:Ae,lastModDate:m,rawLastModDate:h,creationDate:v,lastAccessDate:k,encrypted:Boolean(y),zipCrypto:Boolean(V),size:d+Ae,compressionMethod:g,version:S,nt:w,ot:p,signature:ze,crc32:!y||V||ge?ze:de,Wt:F,Pt:z,st:P,it:Z}),Fe}(r,A,C,o,ft(),a),g||(z=!1),s.set(t,C),C.filename=t,g){if(await E.all([A.writable.getWriter().close(),I]),await k(),e.Ze&&await ic(e,c),R=!0,D=c.size,await v(),C.diskNumberStart=Xs(c),C.offset=$s(e,c),S){const t=o.Xt;qs(o,e.offset-Js(c)),C.size+=o.Xt-t}!function({rawFilename:e,encrypted:t,zip64:n,Zt:r,crc32:o,compressedSize:a,uncompressedSize:s,st:c,it:l},u,{dataDescriptor:d,xt:f}){if(d||((!t||f&&o!==de)&&Sc(u,14,o),l||Sc(u,18,a),c||Sc(u,22,s)),n&&r){const t=ce+xc(e)+4;gc(u,t,i(s)),gc(u,t+8,i(a))}}(C,p.Lt,a),await ac(c,p.Ot),await sc(A.readable,c,w,e=>T+=e),c.size+=A.size,R=!1}else C.diskNumberStart=y,C.offset=x;return e.offset+=C.size,C}catch(n){if(R||z){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-D,g&&(e.offset+=T)}throw s.delete(t),n}finally{if(g&&e.Ke--,b&&e.Ye--,y&&y(I),x&&x(),g&&A&&A.dispose)try{await A.dispose()}catch{}}async function k(){e.$e=!0;const{et:t}=e;e.et=new E(t=>x=()=>{e.$e=!1,t()}),await t}async function v(){Qs(c,xc(p.Ot))&&await c.closeDisk()}}(e,r,c,{jt:R,Yt:z,Xt:D,Pe:y,qt:h,Kt:S},l)}catch(t){throw e.Ve.delete(r),t}finally{S&&S(h&&h.Dt)}return n.assign(g,{name:r,comment:p,extraField:m}),new bi(g)}(e,r,l,u)}catch(t){throw e.He.delete(r),t}finally{const e=Bs.shift();e?e():Ls--}}(u,e,r,l);d.add(p);const m=()=>d.delete(p);return E.prototype.then.call(p,m,m),Vs(u,p)}remove(e){const{He:t,Ve:n}=this;if(typeof e==he&&(e=n.get(e)),e&&e.filename!==de){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=Ee,n={}){const r=this,{je:o,writer:a}=this,{writable:s}=a;if(r.Je)return Zs(a);if(!(e instanceof w))throw new f(Xa);if(xc(e)>O)throw new f(Ya);for(;o.size;)await E.allSettled(t.from(o));await E.allSettled(r.qe.map(e=>e.Jt));const c=r.qe.filter(e=>e.error&&!e.Qt);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.Qt=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const{$t:o,en:a}=function(e){let t=0,n=!1;for(const[,r]of e){const{rawFilename:e,ft:o,rawComment:i,ht:a,yt:s,rawExtraField:c,Et:l,Wt:u,Pt:d,ct:w,uncompressedSize:p,compressedSize:m}=r;let{st:h,it:y}=r;w||(h&&p<M&&(h=r.st=!1),y&&m<M&&(y=r.it=!1)),n=n||h||y;const E=r.offset>=M,S=r.diskNumberStart>=O;let g,b;if(E||S||h||y){const e=4+(h?8:0)+(y?8:0)+(E?8:0)+(S?4:0),t=Ys(e);t.It(1),t.It(e-4),h&&t.vt(p),y&&t.vt(m),E&&t.vt(r.offset),S&&t.Ut(r.diskNumberStart),g=t.kt}else g=Ee;if(r.ut=g,r.tn=E,r.lt=S,d===de)b=Ee;else{const e=Ys(9);e.It(Q),e.It(5),e.Nt(u),e.Ut(d),b=e.kt}r.wt=b;const x=xc(g,o,a,s,b,c,l);if(x>O)throw new f(ls);t+=q+xc(e,i)+x}return{$t:t,en:n}}(e.Ve),{nn:s,rn:c,an:l}=await async function(e,n,r){const{Ve:o,writer:i}=e,a=new w(n);await Mo(i);let s=0,c=0,l=Xs(i),u=Js(i),d=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:f,ut:w,ft:p,wt:m,ht:h,yt:y,rawExtraField:E,Et:S,rawComment:g,versionMadeBy:b,nt:x,ot:R,st:F,it:z,lt:D,tn:A,internalFileAttributes:C,externalFileAttributes:T,diskNumberStart:I,uncompressedSize:k,compressedSize:v}=n,_=xc(w,p,m,h,y,E,S),N=q+xc(f,g)+_;Qs(i,s+N-c)&&(await ac(i,a.slice(c,s)),c=s,d=0,await i.closeDisk()),0==e&&(l=Xs(i),u=Js(i)),F||Sc(R,18,k),z||Sc(R,14,v),(A||D)&&n.version<45&&Ec(R,0,45);const U=Ys(N);if(U.Ut(V),U.It(b),U._t(x.subarray(0,24)),U.It(_),U.It(xc(g)),U.It(D?O:I),U.It(C),U.Ut(T),U.Ut(A?M:t),U._t(f),U._t(w),U._t(p),U._t(m),U._t(h),U._t(y),U._t(E),U._t(S),U._t(g),bc(a,U.kt,s),s+=N,d++,r.onprogress)try{await r.onprogress(e+1,o.size,new bi(n))}catch{}}return await ac(i,c?a.slice(c):a),{nn:{diskNumber:l,diskOffset:u},rn:{diskNumber:Xs(i),sn:d},an:a}}(e,o,r),u=await async function(e,t,n){const r=wc(e,n,"signCentralDirectory");if(r){const n=await r(t),o=xc(n);if(o>O)throw new f(Ts);const i=Ys(6+o);i.Ut(Z),i.It(o),i._t(n);const{writer:a}=e;return Qs(a,xc(i.kt))&&await a.closeDisk(),await ac(a,i.kt),6+o}return 0}(e,l,r);await async function(e,t,n,r){const{writer:o}=e,{nn:a,rn:s,cn:c,en:l}=r;let{$t:u}=r,d=e.Ve.size,w=a.diskNumber,p=$s(e,a);const m=xc(t);if(m>O)throw new f(Ya);let h=dc(e,n,ai),y=Xs(o);if(Qs(o,(h?98:K)+m)&&y++,p>=M||u>=M||d>=O||y>=O){if(!1===h)throw new f(ps);h=!0}else h===de&&l&&(h=!0);const E=Ys(h?98:K);Qs(o,xc(E.kt)+m)&&await o.closeDisk(),y=Xs(o);let S=y==s.diskNumber?s.sn:0;h&&(E.Ut(G),E.vt(44),E.It(45),E.It(45),E.Ut(y),E.Ut(w),E.vt(S),E.vt(d),E.vt(u),E.vt(p),E.Ut(j),E.Ut(y),E.vt(i($s(e,o))+i(u)+i(c)),E.Ut(y+1),dc(e,n,"supportZip64SplitFile",!0)&&(y=O,w=O),S=O,d=O,p=M,u=M),E.Ut(H),E.It(y),E.It(w),E.It(S),E.It(d),E.Ut(u),E.Ut(p),E.It(m),await ac(o,E.kt),m&&await ac(o,t)}(e,n,r,{nn:s,rn:c,$t:o,cn:u,en:a})}(r,e,n),r.Je=!0,!Uo(a)&&dc(r,n,Ae)||await s.getWriter().close(),Zs(a)}[Se](){return this.close()}}class Ps extends E{then(e,t){const{ln:n}=this;return n&&(n.Qt=!0),super.then(e,t)}}function Zs(e){return e.getData?e.getData():e.writable}function Vs(e,t){const n=new Ps((e,n)=>E.prototype.then.call(t,e,n)),r={};return n.ln=r,r.Jt=E.prototype.then.call(n,de,e=>r.error=e),e.qe.push(r),n}async function Hs(e,t){try{await e.writer.writable.abort(t)}catch{}}function Gs(e,t,n){e.je.add(t),t.catch(e=>{try{n(e)}catch{}})}function js(e){if(!e)return Ee;if(!(e instanceof c))throw new f(as);let t=0,n=0;e.forEach((e,n)=>{if(Je(n,O,ss),!(e instanceof w))throw new f(cs);if(xc(e)>O)throw new f(ls);t+=4+xc(e)});const r=new w(t),o=gt(r);return e.forEach((e,t)=>{Ec(o,n,t),Ec(o,n+2,xc(e)),bc(r,e,n+4),n+=4+xc(e)}),r}function qs(e,t){const{jt:n}=e;let{Ot:r,extraFieldLength:o}=n,i=64-(t+xc(r))%64;i<4&&(i+=64);const a=new w(i),s=gt(a);Ec(s,0,$),Ec(s,2,i-4);const c=r;n.Ot=r=new w(xc(c)+i),bc(r,c),bc(r,a,xc(c));const l=gt(r);Ec(l,28,o+i),n.Lt=l,e.Xt+=i}function Ks(e){const t=new w(4);gt(t).setUint32(0,e,!0);let n=4;for(;n>1&&0===t[n-1];)n--;return t.subarray(0,n)}function Ys(e){const t=new w(e),n=gt(t);let r=0;return{kt:t,Nt:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},It:e=>{Ec(n,r,e),r+=2},Ut:e=>{Sc(n,r,e),r+=4},vt:e=>{gc(n,r,i(e)),r+=8},_t:e=>{bc(t,e,r),r+=xc(e)},Mt:e=>r+=e}}function Xs(e){const{diskNumber:t=0}=e;return t}function Js(e){const{diskOffset:t=0}=e;return t}function Qs(e,t){const{availableSize:n=fe}=e;return t>n}function $s(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.Ge:0)}function ec(e){const t=gt(e);let n=0;for(;n+4<=xc(e);){const r=4+yc(t,n+2);if(1==yc(t,n))return ec(Et(e.subarray(0,n),e.subarray(a.min(n+r,xc(e)))));n+=r}return e}async function tc(e,t,n,r){if(r>0){const{writer:o}=e;let i=0;try{await sc(Bo(t,{offset:n,size:r}),o,de,e=>i+=e)}catch(t){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}throw t}finally{o.size+=i,e.offset+=i}}}async function nc(e,t){const n=await Lo(e,t,ce);if(xc(n)<ce)return ce;const r=gt(n);return ce+yc(r,26)+yc(r,28)}function rc(e,{offset:t,diskNumberStart:n}){return t+(e.Ne?e.Ne(n):0)}function oc(){const e=new w(4);return Sc(gt(e),0,W),e}async function ic(e,t){delete e.Ze,await ac(t,oc()),e.offset+=4}async function ac(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=xc(t),await r.write(t)}finally{r.releaseLock()}}async function sc(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new D({async write(e){await o.ready,await o.write(e),r(xc(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function cc(e){if(e){const t=(i(e.getTime())+i(116444736e5))*i(1e4);return t<fs?fs:t>ws?ws:t}}function lc(e){return a.floor(e.getTime()/1e3)}function uc(e){return a.min(ds,a.max(us,e))}function dc(e,t,n,r){const o=t[n]===de?e.options[n]:t[n];return o===de?r:o}function fc(e,t,n,r){const i=dc(e,t,n,r);if(null===i)return r;if(i!==de&&(typeof i.getTime!=pe||o.isNaN(i.getTime())))throw new f($a);return i}function wc(e,t,n){return je(dc(e,t,n))}function pc(e,t,n,r){return $e(dc(e,t,n,r))}function mc(e){return e+5*(a.floor(e/16383)+1)}function hc(e,t){return e===de?t===de||t>0:0!==e}function yc(e,t){return e.getUint16(t,!0)}function Ec(e,t,n){e.setUint16(t,n,!0)}function Sc(e,t,n){e.setUint32(t,n,!0)}function gc(e,t,n){e.setBigUint64(t,n,!0)}function bc(e,t,n){e.set(t,n)}function xc(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Rc({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:a,rawFilename:s,it:c,st:l,extraFieldLength:u}){const d=Ys(26),f=d.kt,w=gt(f);if(d.It(e),d.It(t),d.It(n),a===de){const e=new m(1),t=gt(e);Ec(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Ec(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),a=e[0]}return d.Ut(a),d.Mt(4),c||o!==de?d.Ut(c?M:o):d.Mt(4),l||r!==de?d.Ut(l?M:r):d.Mt(4),d.It(xc(s)),d.It(u),{nt:f,ot:w,rawLastModDate:a}}function Fc(e){return e.every(e=>e>=32&&e<=126)}function zc(e,t,n,r,o){let i=0;return t&&(i|=ne),n&&(i|=8),8!=o&&9!=o||(e>=0&&e<=3&&(i|=6),e>3&&e<=5&&(i|=4),9==e&&(i|=2)),r&&(i|=1),i}function Dc(e,t){if(!e)return!1;const{un:n}=e;return n?n.includes(t):Jn(e,t)}const Ac=1048576,Cc=".zip.js-temp",Tc=1048576,Ic=1048576,kc=".zip.js-temp",vc="createSyncAccessHandle is only available in dedicated workers";try{!function(e){const t=mt(yt(e));n.assign(ot,t),n.assign(dt,t)}({baseURI:void 0===b&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===b?location.href:U&&"SCRIPT"===U.tagName.toUpperCase()&&U.src||new d("zip-core.min.js",b.baseURI).href})}catch{}e.BlobReader=uo,e.BlobWriter=fo,e.Data64URIReader=class extends ao{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dn:e,fn:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{fn:n,dn:r}=this,o=new w(t),i=4*a.floor(e/3),s=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);let l=0;for(let e=c;e<c+t&&e<s.length;e++)o[e-c]=s.charCodeAt(e),l++;return l<o.length?o.subarray(0,l):o}},e.Data64URIWriter=class extends so{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",wn:""})}writeUint8Array(e){const t=this;let n,o=t.wn;const i=t.wn.length;for(t.wn="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.wn+=r.fromCharCode(e[n]);o.length>2?t.data+=R(o):t.wn=o+t.wn}getData(){return this.data+R(this.wn)}},e.ERR_ABORTED=Ge,e.ERR_AMBIGUOUS_ARCHIVE=Ui,e.ERR_BAD_FORMAT=Fi,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Ai,e.ERR_DUPLICATED_NAME=Ka,e.ERR_ENCRYPTED=Ii,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=Mi,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=Ni,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Di,e.ERR_EOCDR_NOT_FOUND=zi,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Ti,e.ERR_HTTP_RANGE=qr,e.ERR_HTTP_RESOURCE_CHANGED=Kr,e.ERR_HTTP_STATUS=jr,e.ERR_INVALID_AUTHENTICATION_CODE=Bt,e.ERR_INVALID_BASE_URI=tt,e.ERR_INVALID_CODEC_DEFINITION=Tn,e.ERR_INVALID_CODEC_MODULE=kn,e.ERR_INVALID_COMMENT=Ya,e.ERR_INVALID_COMMENT_TYPE=Xa,e.ERR_INVALID_COMPRESSED_DATA=Pn,e.ERR_INVALID_CRC32=Zn,e.ERR_INVALID_DATE=$a,e.ERR_INVALID_ENCRYPTION_STRENGTH=ns,e.ERR_INVALID_ENTRY=Is,e.ERR_INVALID_ENTRY_COMMENT=Ja,e.ERR_INVALID_ENTRY_COMMENT_TYPE=Qa,e.ERR_INVALID_ENTRY_NAME=es,e.ERR_INVALID_EXTRAFIELD=as,e.ERR_INVALID_EXTRAFIELD_DATA=ls,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=cs,e.ERR_INVALID_EXTRAFIELD_TYPE=ss,e.ERR_INVALID_FILENAME_VALIDATION=Bi,e.ERR_INVALID_FUNCTION_OPTION=Pe,e.ERR_INVALID_GID=xs,e.ERR_INVALID_LEVEL=Cs,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=Wi,e.ERR_INVALID_MAX_WORKERS=et,e.ERR_INVALID_MSDOS_ATTRIBUTES=Ds,e.ERR_INVALID_MSDOS_DATA=As,e.ERR_INVALID_PASSWORD=Lt,e.ERR_INVALID_PASSWORD_TYPE=Ve,e.ERR_INVALID_PASS_THROUGH_VALUE=He,e.ERR_INVALID_READER=Ss,e.ERR_INVALID_SIGNAL=Ze,e.ERR_INVALID_SIGNATURE_DATA=Ts,e.ERR_INVALID_STRICTNESS=Li,e.ERR_INVALID_UID=bs,e.ERR_INVALID_UNCOMPRESSED_SIZE=Wn,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=Fs,e.ERR_INVALID_UNIX_ID_SIZE=zs,e.ERR_INVALID_UNIX_MODE=Rs,e.ERR_INVALID_URI=nt,e.ERR_INVALID_VERSION=ts,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Yr,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Ci,e.ERR_OVERLAPPING_ENTRY=_i,e.ERR_RESERVED_COMPRESSION_METHOD=In,e.ERR_SPLIT_ZIP_FILE=vi,e.ERR_UNDEFINED_COMPRESSION_METHOD=hs,e.ERR_UNDEFINED_CRC32=ys,e.ERR_UNDEFINED_READER=Es,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=ms,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=Oi,e.ERR_UNSUPPORTED_COMPRESSION=vn,e.ERR_UNSUPPORTED_CONTEXT=vc,e.ERR_UNSUPPORTED_CRYPTO_API=Pt,e.ERR_UNSUPPORTED_ENCRYPTION=ki,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=is,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=rs,e.ERR_UNSUPPORTED_FORMAT=ps,e.ERR_UNSUPPORTED_SPLIT_USDZ=os,e.ERR_UNSUPPORTED_UINT64=Pi,e.ERR_WORKER_STARTUP_TIMEOUT=lr,e.ERR_WRITER_NOT_INITIALIZED=Xr,e.ERR_WRITER_SIZE_NOT_WRITABLE=Jr,e.ERR_ZIP_CRYPTO_LAST_MOD_DATE=ks,e.ERR_ZIP_NOT_EMPTY=gs,e.HttpRangeReader=class extends Io{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=Io,e.Reader=ao,e.SplitDataReader=ko,e.SplitDataWriter=vo,e.TextReader=class extends uo{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends fo{constructor(e){super(),n.assign(this,{encoding:e,pn:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,pn:t}=this,n=await super.getData();return n.text&&t?n.text():function(e,t){return Gr(e,t,!1)}(new w(await n.arrayBuffer()),e)}},e.Uint8ArrayReader=class extends ao{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{kt:e,size:e.length})}readUint8Array(e,t){return this.kt.slice(e,e+t)}},e.Uint8ArrayWriter=class extends so{constructor(e){super(),this.hn=e||262144}init(e=0){n.assign(this,{offset:0,kt:new w(e>0?e:this.hn)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.kt.length){let e=t.kt.length?2*t.kt.length:t.hn;for(;e<n;)e*=2;const r=t.kt;t.kt=new w(e),t.kt.set(r)}t.kt.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.kt.length?this.kt:this.kt.slice(0,this.offset)}},e.VERSION="2.12.0",e.WARNING_APPENDED_DATA=Ki,e.WARNING_CLAMPED_LAST_MODIFICATION_DATE=_s,e.WARNING_COMPRESSED_PATCHED_DATA=Hi,e.WARNING_COMPRESSION_UNAVAILABLE=vs,e.WARNING_DUPLICATE_FILENAME=Qi,e.WARNING_MALFORMED_EXTRA_FIELD=Gi,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=na,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=ra,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=oa,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME=ta,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=$i,e.WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY=ea,e.WARNING_PREPENDED_CENTRAL_DIRECTORY=Xi,e.WARNING_PREPENDED_DATA=Yi,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=Ji,e.WARNING_UNKNOWN_VERSION=Vi,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=ji,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=Zi,e.WARNING_WRAPPED_ENTRIES_COUNT=qi,e.Writer=so,e.ZipReader=da,e.ZipReaderStream=fa,e.ZipWriter=Ws,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new F;this.readable=t,this.zipWriter=new Ws(n,e),this.je=new l}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:o}=new F({start(e){n=e},flush:()=>{!async function(){try{await t.close()}catch(e){await Hs(t,e)}}()}});return Gs(this,this.zipWriter.add(e,r),e=>n.error(e)),{readable:this.readable,writable:o}}writable(e){let t;const{readable:n,writable:r}=new F({start(e){t=e}});return Gs(this,this.zipWriter.add(e,n),e=>t.error(e)),r}async close(e,n={}){const{zipWriter:r}=this,o=(await E.allSettled(t.from(this.je))).filter(e=>"rejected"==e.status).map(e=>e.reason);if(o.length){const[e]=o;try{e.entryErrors=o}catch{}throw await Hs(r,e),e}try{return await r.close(e,n)}catch(e){throw await Hs(r,e),e}}},e.configure=function(e){n.assign(dt,mt(yt(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=Tc}=e;return function(){const e=[];let n,r,o,i=0,a=!1;const s=new D({async write(o){a?await n.write(o):(e.push(o),i+=o.length,i>t&&await async function(){const t=new F;r=An(t.readable),n=t.writable.getWriter(),a=!0;for(const t of e)await n.write(t);e.length=0}())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:s,readable:new z({async pull(t){if(a){if(!o){const e=await r;o=e.stream().getReader()}const{value:e,done:n}=await o.read();n?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){o&&await o.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(n){try{await n.abort()}catch{}n=null}r&&(r.catch(()=>{}),r=null),e.length=0}}}},e.createOPFSTempStream=function(e={}){const{thresholdBytes:n=Ac,directoryName:r=Cc,getDirectory:o=()=>T.storage.getDirectory()}=e;let i;function a(){return i||(i=E.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return function(){const e=[];let r,o,i,s,c=0,l=!1;const u=new D({async write(s){l?await i.write(s):(e.push(s),c+=s.length,c>n&&await async function(){const n=await a();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join(""),o=await n.getFileHandle(r,{create:!0}),i=(await o.createWritable()).getWriter(),l=!0;for(const t of e)await i.write(t);e.length=0}())},async close(){i&&(await i.close(),i=null)}});let d=0;return{writable:u,readable:new z({async pull(t){if(l){if(!s){const e=await o.getFile();s=e.stream().getReader()}const{value:e,done:n}=await s.read();n?t.close():t.enqueue(e)}else d<e.length?t.enqueue(e[d++]):t.close()},async cancel(e){s&&await s.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await a();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=Ic,directoryName:r=kc,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new f(vc);const i=o||(()=>T.storage.getDirectory());let s;function c(){return s||(s=E.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),s}return function(){const e=[];let r,o,i=0,s=!1,l=0,u=0;const d=new D({async write(a){s?(o.write(a,{at:l}),l+=a.length):(e.push(a),i+=a.length,i>n&&await async function(){const n=await c();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join("");const i=await n.getFileHandle(r,{create:!0});o=await i.createSyncAccessHandle(),s=!0;for(const t of e)o.write(t,{at:l}),l+=t.length;e.length=0}())},close(){o&&o.flush()}});let f=0;return{writable:d,readable:new z({pull(t){if(s){const e=l-u;if(e<=0)return void t.close();const n=new w(a.min(524288,e)),r=o.read(n,{at:u});r?(u+=r,t.enqueue(n.subarray(0,r))):t.close()}else f<e.length?t.enqueue(e[f++]):t.close()}},{highWaterMark:0}),dispose:async function(){if(o){try{o.close()}catch{}o=null}if(r){try{const e=await c();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=function(){return"application/octet-stream"},e.getRegisteredCodecs=On,e.getSupportedCompressionMethods=function(){const{CompressionStream:e,DecompressionStream:t,CompressionStreamFallback:n,DecompressionStreamFallback:r}=ft(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:Dc(n,Vn)||Dc(e,Vn)||Dc(e,Gn),decompression:Dc(r,Vn)||Dc(t,Vn)||Dc(t,Gn),registered:!1},{compressionMethod:9,compression:!1,decompression:Dc(r,Hn)||Dc(t,Hn),registered:!1}];for(const e of On()){const t=Ln(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==pe:de,decompression:t?typeof t.DecompressionStream==pe:de,registered:!0})}return o},e.isZipFile=wa,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:i,DecompressionStream:a,versionNeeded:s}=e;if(!o.isInteger(t)||t<0||t>O||typeof n!=he||!n.length)throw new f(Tn);if(_n.includes(t))throw new f(In);const c=typeof i==pe||typeof a==pe;if(!(c||typeof r==he&&r.length))throw new f(Tn);Nn.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:s}),c&&Bn(n,{CompressionStream:i,DecompressionStream:a})},e.resetConfiguration=function(){for(const e of ut)delete dt[e];n.assign(dt,ot)},e.terminateWorkers=async function(){await E.allSettled(vr.map(e=>(Zr(e),e.terminate()))),ur=de,dr=!1},e.unregisterCodec=function(e){const t=Nn.get(e);if(t){let n;Nn.delete(e),Nn.forEach(e=>n=n||e.format==t.format),n||Un.delete(t.format)}}});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})}(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:o,BigInt:i,Math:s,Date:a,Map:c,Set:l,Response:u,URL:d,Error:f,Uint8Array:w,Uint16Array:p,Uint32Array:m,DataView:h,Blob:y,Promise:E,TextEncoder:S,TextDecoder:g,document:b,crypto:x,btoa:R,TransformStream:z,ReadableStream:F,WritableStream:D,CompressionStream:A,DecompressionStream:C,navigator:T,Worker:I,Symbol:k,setTimeout:v,clearTimeout:_,structuredClone:N}="undefined"!=typeof globalThis?globalThis:self;var U=void 0!==b?b.currentScript:null;const M=4294967295,O=65535,L=255,B=67324752,W=134695760,P=W,Z=84233040,V=33639248,H=101010256,G=101075792,j=117853008,q=46,K=22,Y=20,X=56,J=39169,Q=21589,$=6534,ee=30837,te=30805,ne=2048,re=61440,oe=16384,ie=2048,se=1024,ae="/",ce=30,le=new a(2107,11,31,23,59,58),ue=new a(1980,0,1),de=void 0,fe=1/0,we="undefined",pe="function",me="object",he="string",ye="boolean",Ee=new w,Se=k.asyncDispose||k(),ge="password",be="rawPassword",xe="passThrough",Re="signal",ze="useWebWorkers",Fe="useCompressionStream",De="transferStreams",Ae="preventClose",Ce="level",Te="useUnicodeFileNames",Ie="dataDescriptor",ke="offset",ve="usdz",_e="maxAppendedDataSize",Ne="entry",Ue="filename",Me="comment",Oe="strict",Le="balanced",Be="tolerant",We="compressed",Pe="Invalid option (must be a function)",Ze="Invalid signal (must be an AbortSignal instance)",Ve="Invalid password (password must be a string, rawPassword must be a Uint8Array)",He="Invalid passThrough option (must be a boolean or 'compressed')",Ge="The operation was aborted";function je(e){if(e&&typeof e!=pe)throw new f(Pe);return e}function qe(e){if(e&&(typeof e.addEventListener!=pe||typeof e.aborted!=ye))throw new f(Ze);return e||de}function Ke(e){if(e&&e.aborted)throw e.reason===de?new DOMException(Ge,"AbortError"):e.reason}function Ye(e,t){if(e&&typeof e!=he||t&&!(t instanceof w))throw new f(Ve)}function Xe(e){if(e!==de&&typeof e!=ye&&e!==We)throw new f(He);return e}function Je(e,t,n){if(!o.isInteger(e)||e<0||e>t)throw new f(n)}function Qe(e,t,n){e!==de&&Je(e,t,n)}function $e(e){return typeof e==he&&e.trim()?o(e):e}const et="Invalid maxWorkers (must be an integer greater than 0)",tt="Invalid baseURI (must be a string)",nt="Invalid URI (must be a string or a function returning a string)";let rt=2;try{typeof T!=we&&T.hardwareConcurrency&&(rt=T.hardwareConcurrency)}catch{}const ot={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:rt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof A!=we&&A,DecompressionStream:typeof C!=we&&C},it="maxWorkers",st="baseURI",at=["wasmURI","workerURI"],ct=["chunkSize",it,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],lt=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],ut=[st,...at,"useCompressionStream","useWebWorkers","transferStreams",...ct,...lt],dt={...ot};function ft(){return dt}function wt(e){return pt(e.chunkSize)}function pt(e){return e=$e(e),o.isInteger(e)&&e>=1?s.max(e,64):65536}function mt(e){const t={};for(const n of ut){const r=e[n];r!==de&&(t[n]=ht(n,r))}return t}function ht(e,t){if(ct.includes(e)){if(t=$e(t),e==it&&(!o.isInteger(t)||t<1))throw new f(et)}else if(lt.includes(e))je(t);else if(e==st){if(t&&typeof t!=he)throw new f(tt)}else if(at.includes(e)&&t&&typeof t!=he&&typeof t!=pe)throw new f(nt);return t}function yt(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===de&&r===de)return e;const o=n.assign({},e);return o.CompressionStreamFallback===de&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===de&&(o.DecompressionStreamFallback=r),o}function Et(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function St(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function gt(e){return new h(e.buffer,e.byteOffset,e.byteLength)}function bt(e){return Boolean(e)&&"object"==typeof e}const xt=[[],[],[],[],[],[],[],[]];for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=1&t?t>>>1^3988292384:t>>>1;xt[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){const n=xt[t-1][e];xt[t][e]=n>>>8^xt[0][255&n]}const[Rt,zt,Ft,Dt,At,Ct,Tt,It]=xt;class kt{constructor(e){this.o=e||-1}append(e){let t=0|this.o;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const o=new h(e.buffer,e.byteOffset,n),i=n-8;for(;r<=i;r+=8){const e=t^o.getInt32(r,!0),n=o.getInt32(r+4,!0);t=It[255&e]^Tt[e>>>8&255]^Ct[e>>>16&255]^At[e>>>24&255]^Dt[255&n]^Ft[n>>>8&255]^zt[n>>>16&255]^Rt[n>>>24&255]}}for(;r<n;r++)t=t>>>8^Rt[255&(t^e[r])];this.o=t}get(){return~this.o}}class vt extends z{constructor(){let e;const t=new kt;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function _t(e){if(typeof S==we){e=unescape(encodeURIComponent(e));const t=new w(e.length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new S).encode(e)}const Nt={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=Nt.l(n);return 32===r?e.concat(t):Nt.m(t,r,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+Nt.l(n)},h(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,s.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=Nt.S(t,e[n-1]&2147483648>>t-1,1)),e},S:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,l:e=>s.round(e/1099511627776)||32,m(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let o=0;o<e.length;o++)r.push(n|e[o]>>>t),n=e[o]<<32-t;const o=e.length?e[e.length-1]:0,i=Nt.l(o);return r.push(Nt.S(t+i&31,t+i>32?n:r.pop(),1)),r}},Ut={bytes:{R(e){const t=Nt.bitLength(e)/8,n=new w(t);let r;for(let o=0;o<t;o++)3&o||(r=e[o/4]),n[o]=r>>>24,r<<=8;return n},F(e){const t=[];let n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],3&~n||(t.push(r),r=0);return 3&n&&t.push(Nt.S(8*(3&n),r)),t}}},Mt=class{constructor(e){const t=this;t.blockSize=512,t.D=[1732584193,4023233417,2562383102,271733878,3285377520],t.A=[1518500249,1859775393,2400959708,3395469782],e?(t.C=e.C.slice(0),t.T=e.T.slice(0),t.I=e.I):t.reset()}reset(){const e=this;return e.C=e.D.slice(0),e.T=[],e.I=0,e}update(e){const t=this;"string"==typeof e&&(e=Ut.v.F(e));const n=t.T=Nt.concat(t.T,e),r=t.I,o=t.I=r+Nt.bitLength(e);if(o>9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const i=new m(n);let s=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);e<=o;e+=t.blockSize)t._(i.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t}N(){const e=this;let t=e.T;const n=e.C;t=Nt.concat(t,[Nt.S(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e.I/4294967296)),t.push(0|e.I);t.length;)e._(t.splice(0,16));return e.reset(),n}U(e,t,n,r){return e<=19?t&n|~t&r:e<=39?t^n^r:e<=59?t&n|t&r|n&r:e<=79?t^n^r:void 0}M(e,t){return t<<e|t>>>32-e}_(e){const n=this,r=n.C,o=t(80);for(let t=0;t<16;t++)o[t]=e[t];let i=r[0],a=r[1],c=r[2],l=r[3],u=r[4];for(let e=0;e<=79;e++){e>=16&&(o[e]=n.M(1,o[e-3]^o[e-8]^o[e-14]^o[e-16]));const t=n.M(5,i)+n.U(e,a,c,l)+u+o[e]+n.A[s.floor(e/20)]|0;u=l,l=c,c=n.M(30,a),a=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+a|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},Ot={importKey:e=>new Ot.O(Ut.bytes.F(e)),L(e,t,n,r){if(n=n||1e4,r<0||n<0)throw new f("invalid params to pbkdf2");const o=1+(r>>5)<<2;let i,s,a,c,l;const u=new ArrayBuffer(o),d=new h(u);let w=0;const p=Nt;for(t=Ut.bytes.F(t),l=1;w<(o||1);l++){for(i=s=e.encrypt(p.concat(t,[l])),a=1;a<n;a++)for(s=e.encrypt(s),c=0;c<s.length;c++)i[c]^=s[c];for(a=0;w<(o||1)&&a<i.length;a++)d.setInt32(w,i[a]),w+=4}return u.slice(0,r/8)},O:class{constructor(e){const t=this,n=t.B=Mt,r=[[],[]];t.W=[new n,new n];const o=t.W[0].blockSize/32;e.length>o&&(e=(new n).update(e).N());for(let t=0;t<o;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.W[0].update(r[0]),t.W[1].update(r[1]),t.P=new n(t.W[0])}reset(){const e=this;e.P=new e.B(e.W[0]),e.Z=!1}update(e){this.Z=!0,this.P.update(e)}digest(){const e=this,t=e.P.N(),n=new e.B(e.W[1]).update(t).N();return e.reset(),n}encrypt(e){if(this.Z)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Lt=typeof x!=we&&typeof x.getRandomValues==pe,Bt="Invalid password",Wt="Invalid authentication code",Pt="zipjs-abort-check-password",Zt="Crypto API not supported";function Vt(e){if(Lt)return x.getRandomValues(e);throw new f(Zt)}const Ht=16,Gt={name:"PBKDF2"},jt=n.assign({hash:{name:"HMAC"}},Gt),qt=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Gt),Kt=["deriveBits"],Yt=[8,12,16],Xt=[16,24,32],Jt=10,Qt=[0,0,0,0],$t=typeof x!=we,en=$t&&x.subtle,tn=$t&&typeof en!=we,nn=Ut.bytes,rn=class{constructor(e){const t=this;t.V=[[[],[],[],[],[]],[[],[],[],[],[]]],t.V[0][0][0]||t.H();const n=t.V[0][4],r=t.V[1],o=e.length;let i,s,a,c=1;if(4!==o&&6!==o&&8!==o)throw new f("invalid aes key size");for(t.A=[s=e.slice(0),a=[]],i=o;i<4*o+28;i++){let e=s[i-1];(i%o===0||8===o&&i%o===4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%o===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),s[i]=s[i-o]^e}for(let e=0;i;e++,i--){const t=s[3&e?i:i-4];a[e]=i<=4||e<4?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.G(e,0)}decrypt(e){return this.G(e,1)}H(){const e=this.V[0],t=this.V[1],n=e[4],r=t[4],o=[],i=[];let s,a,c,l;for(let e=0;e<256;e++)i[(o[e]=e<<1^283*(e>>7))^e]=e;for(let u=s=0;!n[u];u^=a||1,s=i[s]||1){let i=s^s<<1^s<<2^s<<3^s<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=o[c=o[a=o[u]]];let d=16843009*l^65537*c^257*a^16843008*u,f=257*o[i]^16843008*i;for(let n=0;n<4;n++)e[n][u]=f=f<<24^f>>>8,t[n][i]=d=d<<24^d>>>8}for(let n=0;n<5;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}G(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this.A[t],r=n.length/4-2,o=[0,0,0,0],i=this.V[t],s=i[0],a=i[1],c=i[2],l=i[3],u=i[4];let d,w,p,m=e[0]^n[0],h=e[t?3:1]^n[1],y=e[2]^n[2],E=e[t?1:3]^n[3],S=4;for(let e=0;e<r;e++)d=s[m>>>24]^a[h>>16&255]^c[y>>8&255]^l[255&E]^n[S],w=s[h>>>24]^a[y>>16&255]^c[E>>8&255]^l[255&m]^n[S+1],p=s[y>>>24]^a[E>>16&255]^c[m>>8&255]^l[255&h]^n[S+2],E=s[E>>>24]^a[m>>16&255]^c[h>>8&255]^l[255&y]^n[S+3],S+=4,m=d,h=w,y=p;for(let e=0;e<4;e++)o[t?3&-e:e]=u[m>>>24]<<24^u[h>>16&255]<<16^u[y>>8&255]<<8^u[255&E]^n[S++],d=m,m=h,h=y,y=E,E=d;return o}},on=class{constructor(e,t){this.j=e,this.K=t,this.Y=t}reset(){this.Y=this.K}update(e){return this.X(this.j,e,this.Y)}J(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}$(e){0===(e[0]=this.J(e[0]))&&(e[1]=this.J(e[1]))}X(e,t,n){let r;if(!(r=t.length))return[];const o=Nt.bitLength(t);for(let o=0;o<r;o+=4){this.$(n);const r=e.encrypt(n);t[o]^=r[0],t[o+1]^=r[1],t[o+2]^=r[2],t[o+3]^=r[3]}return Nt.h(t,o)}},sn=Ot.O;let an=$t&&tn&&typeof en.importKey==pe,cn=$t&&tn&&typeof en.deriveBits==pe;class ln extends z{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){super({start(){dn(this,e,t,n)},async transform(e,t){const n=this,{password:o,strength:i,ee:s,ready:a}=n;o?(await async function(e,t,n,r){const o=await wn(e,t,n,mn(r,0,Yt[t])),i=mn(r,Yt[t]);if(o[0]!=i[0]||o[1]!=i[1])throw new f(Bt)}(n,i,o,mn(e,0,Yt[i]+2)),e=mn(e,Yt[i]+2),r?t.error(new f(Pt)):s()):await a;const c=new w(e.length-Jt-(e.length-Jt)%Ht);t.enqueue(fn(n,e,c,0,Jt,!0))},async flush(e){const{te:t,ne:n,re:r,ready:i}=this;if(n&&t){await i;const s=mn(r,0,r.length-Jt),a=mn(r,r.length-Jt);let c=Ee;if(s.length){const e=yn(nn,s);n.update(e);const r=t.update(e);c=hn(nn,r)}const l=mn(hn(nn,n.digest()),0,Jt);let u=r.length<Jt?1:0;for(let e=0;e<Jt;e++)u|=l[e]^a[e];if(u&&o)throw new f(Wt);e.enqueue(c)}}})}}class un extends z{constructor({password:e,rawPassword:t,encryptionStrength:n}){super({start(){dn(this,e,t,n)},async transform(e,t){const n=this,{password:r,strength:o,ee:i,ready:s}=n;let a=Ee;r?(a=await async function(e,t,n){const r=Vt(new w(Yt[t]));return Et(r,await wn(e,t,n,r))}(n,o,r),i()):await s;const c=new w(a.length+e.length-e.length%Ht);c.set(a,0),t.enqueue(fn(n,e,c,a.length,0))},async flush(e){const{te:t,ne:n,re:r,ready:o}=this;if(n&&t){await o;let i=Ee;if(r.length){const e=t.update(yn(nn,r));n.update(e),i=hn(nn,e)}const s=hn(nn,n.digest()).slice(0,Jt);e.enqueue(Et(i,s))}}})}}function dn(e,t,r,o){n.assign(e,{ready:new E(t=>e.ee=t),password:pn(t,r),strength:o-1,re:Ee})}function fn(e,t,n,r,o,i){const{te:s,ne:a,re:c}=e;c.length&&(t=Et(c,t));const l=t.length-o;let u;for(n=function(e,t){if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e}(n,r+(l-l%Ht)),u=0;u<=l-Ht;u+=Ht){const e=yn(nn,mn(t,u,u+Ht));i&&a.update(e);const o=s.update(e);i||a.update(o),n.set(hn(nn,o),u+r)}return e.re=mn(t,u),n}async function wn(e,r,o,i){e.password=null;const s=await async function(e,t,n,r,o){if(!an)return Ot.importKey(t);try{return await en.importKey("raw",t,n,!1,o)}catch{return an=!1,Ot.importKey(t)}}(0,o,jt,0,Kt),a=await async function(e,t,n){if(!cn)return Ot.L(t,e.salt,qt.iterations,n);try{return await en.deriveBits(e,t,n)}catch{return cn=!1,Ot.L(t,e.salt,qt.iterations,n)}}(n.assign({salt:i},qt),s,8*(2*Xt[r]+2)),c=new w(a),l=yn(nn,mn(c,0,Xt[r])),u=yn(nn,mn(c,Xt[r],2*Xt[r])),d=mn(c,2*Xt[r]);return n.assign(e,{keys:{key:l,oe:u,passwordVerification:d},te:new on(new rn(l),t.from(Qt)),ne:new sn(u)}),d}function pn(e,t){return t===de?_t(e):t}function mn(e,t,n){return e.subarray(t,n)}function hn(e,t){return e.R(t)}function yn(e,t){return e.F(t)}class En extends z{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){gn(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=bn(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t[11]^n.passwordVerification))throw new f(Bt);e=e.subarray(12)}r?t.error(new f(Pt)):t.enqueue(bn(n,e))}})}}class Sn extends z{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){gn(this,e,t,n)},transform(e,t){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=Vt(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(xn(n,t),0),o=12}else r=new w(e.length),o=0;r.set(xn(n,e),o),t.enqueue(r)}})}}function gn(e,t,r,o){n.assign(e,{password:t,rawPassword:r,passwordVerification:o}),function(e,t,r){const o=[305419896,591751049,878082192];if(n.assign(e,{keys:o,ie:new kt(o[0]),se:new kt(o[2])}),r)for(let t=0;t<r.length;t++)Rn(e,r[t]);else for(let n=0;n<t.length;n++)Rn(e,t.charCodeAt(n))}(e,t,r)}function bn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=zn(e)^t[r],Rn(e,n[r]);return n}function xn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=zn(e)^t[r],Rn(e,t[r]);return n}function Rn(e,t){let[,n]=e.keys;e.ie.append([t]);const r=~e.ie.get();n=Dn(s.imul(Dn(n+Fn(r)),134775813)+1),e.se.append([n>>>24]);const o=~e.se.get();e.keys=[r,n,o]}function zn(e){const t=2|e.keys[2];return Fn(s.imul(t,1^t)>>>8)}function Fn(e){return 255&e}function Dn(e){return 4294967295&e}function An(e){if(e instanceof F)return e;const t=e.getReader();return new F({async pull(e){const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})}function Cn(e,t){e=An(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=pe||new y([]).stream()instanceof F)return new u(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new D({write(e){r.push(e)}})).then(()=>new y(r,n))}function Tn(e){if(e instanceof D)return e;const t=e.getWriter();return new D({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const In="Invalid codec definition",kn="Reserved compression method",vn="Invalid codec module",_n="Compression method not supported",Nn=[0,8,9,99],Un=new c,Mn=new c;function On(e){return Un.get(e)}function Ln(){return t.from(Un.values(),e=>n.assign({},e,Mn.get(e.format)))}function Bn(e){return Mn.get(e)}function Wn(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=pe&&typeof r!=pe)throw new f(vn);Mn.set(e,{CompressionStream:n,DecompressionStream:r})}const Pn="Invalid uncompressed size",Zn="Invalid compressed data",Vn="Invalid CRC32",Hn="deflate-raw",Gn="deflate64-raw",jn="gzip",qn=[31,139,8];class Kn extends z{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:s,zipCrypto:a,computeCrc32:c,level:l,deflate64:u,format:d,compressionMethod:f,inputSize:w}=e,p=this;let m,y,E,S=super.readable;const g=d&&Bn(d),b=c&&o&&!u&&!g&&(!i||a)&&Boolean(s&&r);if(i&&!a||!c||b||(m=new vt,S=rr(S,m)),o)if(g)S=or(S,tr(g.CompressionStream,d,{level:l,chunkSize:t,compressionMethod:f,uncompressedSize:w}));else if(b)E=new Yn,S=or(S,new r(jn)),S=rr(S,E);else try{S=nr(S,s,{level:l,chunkSize:t},r,n)}catch(e){let t;try{t=new r(jn)}catch{throw e}S=or(S,t),S=rr(S,new Yn)}i&&(a?S=rr(S,new Sn(e)):(y=new un(e),S=rr(S,y))),er(p,S,()=>{i&&!a||!c||(p.crc32=b?E.crc32:new h(m.value.buffer).getUint32(0))})}}class Yn extends z{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=s.min(t,e.length);if(t-=n,!(e=e.subarray(n)).length)return}const o=n.length+e.length;if(o<=8)return void(n=Et(n,e));const i=o-8,a=s.min(i,n.length);r.enqueue(Et(n.subarray(0,a),e.subarray(0,i-a))),n=Et(n.subarray(a),e.subarray(i-a))},flush(){const t=gt(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class Xn extends z{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:s,crc32:a,compressed:c,useCompressionStream:l,deflate64:u,format:d,compressionMethod:p,rawBitFlag:m,outputSize:y}=e;let S,g,b=super.readable;if(i&&(o?b=rr(b,new En(e)):(g=new ln(e),b=rr(b,g))),c){const e=d&&Bn(d);if(e)b=or(b,tr(e.DecompressionStream,d,{chunkSize:t,compressionMethod:p,rawBitFlag:m,uncompressedSize:y}));else try{b=nr(b,l,{chunkSize:t,deflate64:u},r,n)}catch(e){if(u||y===de)throw e;let t;try{t=new r(jn)}catch{throw e}b=function(e,t,n){const r=new kt;let o,i,s,a=0,c=!1;const l=new E((e,t)=>{i=e,s=t});l.catch(()=>{}),n||i();const u=new z({start(e){const t=new w(10);t.set(qn),e.enqueue(t)},transform(e,t){t.enqueue(e)},async flush(e){c=!0,p();try{await l}finally{m()}const t=new w(8),o=gt(t);o.setUint32(0,r.get(),!0),o.setUint32(4,n,!0),e.enqueue(t)},cancel(e){s(e)}}),d=new z({transform(e,t){r.append(e),a+=e.length,a>=n?i():c&&p(),t.enqueue(e)},cancel(e){s(e)}});return e=rr(e,u),rr(e=or(e,t),d);function p(){m(),o=v(()=>s(new f(Pn)),5e3)}function m(){_(o)}}(b,t,y)}b=function(e){const t=e.getReader();return new F({async pull(e){let n;try{n=await t.read()}catch(e){if(e&&e.message)throw e;const t=new f(Zn);throw t.cause=e,t}const{value:r,done:o}=n;o?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})}(b)}s&&(S=new vt,b=rr(b,S)),er(this,b,()=>{if(s){const e=new h(S.value.buffer);if(a!=e.getUint32(0,!1))throw new f(Vn)}})}}const Jn=new c;function Qn(e,t){if(!e)return!1;let n=Jn.get(e);n||(n=new c,Jn.set(e,n));let r=n.get(t);if(r===de){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function $n(e){return Qn(e,Hn)}function er(e,t,r){t=rr(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function tr(e,t,n){if(!e)throw new f(_n);return new e(t,n)}function nr(e,t,n,r,o){const i=t&&r?r:o||r,s=n.deflate64?Gn:Hn;let a;try{a=new i(s,n)}catch(e){if(!t||!o||i==o)throw e;a=new o(s,n)}return or(e,a)}function rr(e,t){return An(e).pipeThrough(t)}function or(e,t){const n=t.writable.getWriter(),r=e.getReader();return async function(){try{for(;;){await n.ready;const e=await r.read();if(e.done){await n.close();break}await n.write(e.value)}}catch(e){await async function(e,t){try{await e.abort(t)}catch{}}(n,e),await async function(e,t){try{await e.cancel(t)}catch{}}(r,e)}}(),t.readable}const ir="data",sr="deflate",ar="inflate";class cr extends z{constructor(e,t){super({});const r=this,{codecType:o}=e;let i;o.startsWith(sr)?i=Kn:o.startsWith(ar)&&(i=Xn),r.outputSize=0;let s=0;const a=new i(e,t),c=super.readable,l=new z({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:s})}}),u=new z({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==de&&r.outputSize>e.outputSize))throw new f(Pn)},flush(){const{crc32:e}=a;n.assign(r,{crc32:e,inputSize:s})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(a).pipeThrough(u)})}}class lr extends z{constructor(e){const t=[];let r=0,i=0;function s(){const n=new w(e);let o=0;for(;o<e;){const r=t[0],i=e-o;r.length<=i?(n.set(r,o),o+=r.length,t.shift()):(n.set(r.subarray(0,i),o),t[0]=r.subarray(i),o+=i)}return r-=e,n}(!o.isFinite(e)||e<1)&&(e=65536),super({transform(n,o){for(t.push(n),r+=n.length;r>e;)i+=e,o.enqueue(s())},flush(e){r&&(i+=r,e.enqueue(function(e,t){const n=new w(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(t,r)))}}),n.defineProperty(this,"outputSize",{get:()=>i})}}const ur="Worker startup timeout";let dr,fr,wr;function pr(e){e.createWorker?fr=!0:dr=!1}class mr{constructor(e,{readable:t,writable:r},o,i){const{options:s,config:a,ae:c,useWebWorkers:l,transferStreams:u,workerURI:d}=o;let{createWorker:f}=o;const{signal:w}=c;return fr&&(f=de),n.assign(e,{ce:!0,le:(e.le||0)+1,readable:t.pipeThrough(new lr(wt(a))).pipeThrough(new hr(c),{signal:w}),writable:r,options:n.assign({},s),ue:o,workerURI:d,createWorker:f,transferStreams:u,terminate:()=>new E(t=>{const{de:n,ce:r}=e;n?(r?e.fe=t:(n.terminate(),t()),e.we=null):t()}),pe(){if(e.ce){const{fe:t}=e;t&&(e.fe=null,e.me=!0,e.de.terminate(),t()),e.ce=!1,i(e)}}}),dr===de&&(dr=typeof I!=we),(l&&wr&&(dr&&d||f)?wr:Er)(e,a)}}class hr extends z{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await yr(e,n)},async transform(e,r){o+=e.length,t&&await yr(t,o,n),r.enqueue(e)},async flush(){r&&await yr(r,o)}})}}async function yr(e,...t){try{await e(...t)}catch{}}function Er(e,t){return{run:()=>Sr(e,t)}}async function Sr({options:e,readable:t,writable:n,pe:r,ue:o},i){let s,a;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(sr),n=t?i.CompressionStreamFallback:i.DecompressionStreamFallback,r=t?i.CompressionStream:i.DecompressionStream;if(e.useCompressionStream){if(n&&n.he&&!$n(r))try{await void 0}catch{}}else try{await void 0}catch{n&&!n.he||(e.useCompressionStream=!0)}}s=new cr(e,i),a=new lr(wt(i)),await t.pipeThrough(s).pipeThrough(a).pipeTo(n,{preventClose:!0,preventAbort:!0});const{crc32:r,inputSize:o,outputSize:c}=s;return{crc32:r,inputSize:o,outputSize:c}}catch(e){if(s){const t=a?a.outputSize:0;if(o.outputSize=t,bt(e))try{e.outputSize=t}catch{}}throw e}finally{r()}}const gr={type:"module"},br="error";let xr,Rr,zr,Fr=!0;try{Fr=typeof N==pe&&N(new DOMException("","AbortError")).code!==de}catch{}var Dr;function Ar(e){const{reader:t}=e;t&&t.releaseLock(),e.reader=null,e.writer=null}function Cr(e){const{de:t}=e;if(t)try{t.terminate()}catch{}e.we=null}function Tr(e,t,r,o,i=!0){const{createWorker:s}=r;let a,c,l;if(s)a=s();else if(Rr===de||xr!==e){const n=typeof e==pe;c=n?e(i):e;const s=c.startsWith("data:"),u=c.startsWith("blob:");if(s||u){o===de&&(o=!1),o&&(l=gr);try{a=new I(c,l)}catch(i){if(u)try{d.revokeObjectURL(c)}catch{}if(n&&u)return Tr(e,t,r,o,!1);if(o)throw i;return Tr(e,t,r,!0,!1)}}else{o===de&&(o=!0),o&&(l=gr);try{c=new d(c,t)}catch{}try{a=new I(c,l)}catch(n){if(o)return Tr(e,t,r,!1,i);throw n}}xr=e,Rr=c,zr=l}else a=new I(Rr,zr);return a.addEventListener("message",e=>{r.ye=!0,Ir(r),async function({data:e},t){const{type:r,value:o,messageId:i,result:s,error:a,errorValue:c}=e,{reader:l,writer:u,Ee:d,Se:p,pe:m,le:h}=t,y=()=>t.le!=h;try{if(a)a.outputSize!==de&&(t.outputSize=a.outputSize),E(function(e,t){const{message:r,stack:o,code:i,name:s,outputSize:a,cause:c,codecImportFailed:l}=e;let u;if(t?u=t.value:(u=n.assign(new f(r),{stack:o,code:i,name:s}),c&&(u.cause=n.assign(new f(c.message),{name:c.name}))),bt(u))try{a!==de&&(u.outputSize=a),l&&(u.codecImportFailed=!0),t&&(u.name!==s&&(u.name=s),u.code!==i&&(u.code=i))}catch{}return u}(a,c));else{if("pull"==r){const{value:e,done:n}=await l.read();y()||vr({type:ir,value:e,done:n,messageId:i},t)}if(r==ir){const e=new w(o);await u.ready,await u.write(e),t.outputSize+=e.length,y()||vr({type:"ack",messageId:i},t)}"close"==r&&function(e){y()||(d(e),S(),m())}(s)}}catch(a){y()||(Cr(t),E(a))}function E(e){y()||(p(e),S(),bt(e)&&e.codecImportFailed||m())}function S(){u&&u.releaseLock()}}(e,r)}),a.addEventListener(br,e=>kr(e,r)),a.addEventListener("messageerror",e=>kr(e,r)),a}function Ir(e){const{ge:t}=e;t&&(_(t),e.ge=null)}function kr(e,t){e.preventDefault&&e.preventDefault(),Ir(t);const{ye:r,Se:o,writer:i,pe:s}=t;Cr(t),r||(t.de=null);let a=e.error||new f(e.message||br);r||(a=n.assign(new f(a.message||br),{be:!0}),t.xe=a),o&&(o(a),i&&i.releaseLock(),r&&s())}function vr(e,{de:t,writer:n,transferStreams:r,ye:o}){try{const{value:n,readable:i,writable:s}=e,a=[];if(n&&(e.value=St(n),a.push(e.value.buffer)),r&&Fr&&o?(i&&a.push(i),s&&a.push(s)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch{Fr=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}Dr=function(e,t){const{baseURI:r,chunkSize:i,workerStartupTimeout:s}=t;let{wasmURI:a}=t;if(!e.we){let c;typeof a==pe&&(a=a());try{c=Tr(e.workerURI,r,e)}catch{return pr(e),Er(e,t)}n.assign(e,{de:c,ye:!1,me:!1,xe:null,we:{run:async()=>{try{return await async function(e,t){if(!e.de){const{xe:t}=e;e.xe=null;const n=t||new f(ur);throw n.be=!0,n}let r,i;const s=new E((t,n)=>{r=t,i=t=>{const{outputSize:r,ue:o}=e;if(o.outputSize=r,bt(t)&&t.outputSize===de)try{t.outputSize=r}catch{}n(t)}});n.assign(e,{reader:null,writer:null,outputSize:0,Ee:r,Se:i,result:s});const{readable:a,options:c}=e,{writable:l,closed:u,Re:d}=function(e){const t=new AbortController,{writable:n,readable:r}=new z,o=r.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return o.catch(()=>{}),{writable:n,closed:o,Re:()=>t.abort()}}(e.writable);let w;try{w=vr({type:"start",options:c,config:t,readable:a,writable:l},e)}catch(t){d();try{await u}catch{}throw e.pe(),t}w||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const{workerStartupTimeout:p}=t;!e.ye&&o.isFinite(p)&&p>=0&&(e.ge=v(()=>function(e){if(e.ge=null,e.ye)return;const{Se:t,writer:n}=e;if(Cr(e),e.de=null,t){const e=new f(ur);e.be=!0,t(e),n&&n.releaseLock()}}(e),p));try{const e=await s;return await m(),await u,e}catch(e){await m(),d();try{await u}catch{}throw e}async function m(){if(!w&&!l.locked)try{await l.getWriter().close()}catch{}}}(e,{chunkSize:i,wasmURI:a,baseURI:r,workerStartupTimeout:s})}catch(n){if(n&&n.be)return pr(e),Ar(e),Sr(e,t);if(n&&n.codecImportFailed){if(e.reader)return Ar(e),Sr(e,t);e.pe()}throw n}}}})}return e.we},wr=Dr;let _r=[];const Nr=[];let Ur,Mr,Or=0;async function Lr(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:s,useCompressionStream:a,compressed:c,checkCrc32:l,computeCrc32:u,encrypted:f,format:w,codecURI:p}=n,{workerURI:m,createWorker:h,maxWorkers:y}=r;w&&(p&&(n.codecURI=function(e,t){try{return new d(e,t).toString()}catch{return e}}(p,r.baseURI)),await async function(e,t){!Mn.has(e)&&t&&Wn(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(w,n.codecURI)),t.transferStreams=!w&&(i||i===de&&r.transferStreams);const S=!(c||l||u||f),g=w===de||Boolean(n.codecURI);return t.useWebWorkers=!S&&g&&(s||s===de&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&m?m:de,t.createWorker=t.useWebWorkers&&h?h:de,n.useCompressionStream=a||a===de&&r.useCompressionStream,(await async function(){const n=_r.find(e=>!e.ce);if(n)return Vr(n),new mr(n,e,t,b);if(_r.length<y){const n={ze:Or};return Or++,_r.push(n),new mr(n,e,t,b)}return new E(n=>{Nr.push({resolve:n,stream:e,ue:t}),Mr=r.workerStarvationTimeout,Br()})}()).run();function b(e){if(Wr(),Nr.length){const[{resolve:t,stream:n,ue:r}]=Nr.splice(0,1);t(new mr(e,n,r,b)),Br()}else e.de?(Vr(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.me?e.me=!1:e.Fe=v(async()=>{_r=_r.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}(e,t)):_r=_r.filter(t=>t!=e)}}function Br(){!Ur&&Nr.length&&o.isFinite(Mr)&&Mr>=0&&(Ur=v(Pr,Mr))}function Wr(){Ur&&(_(Ur),Ur=null)}function Pr(){if(Ur=null,Nr.length){const[{resolve:e,stream:t,ue:r}]=Nr.splice(0,1),o=n.assign({},r,{useWebWorkers:!1,workerURI:de,createWorker:de});e(new mr({},t,o,Zr)),Br()}}function Zr(){Wr(),Br()}function Vr(e){const{Fe:t}=e;t&&(_(t),e.Fe=null)}const Hr="\0\u263a\u263b\u2665\u2666\u2663\u2660\u2022\u25d8\u25cb\u25d9\u2642\u2640\u266a\u266b\u263c\u25ba\u25c4\u2195\u203c\xb6\xa7\u25ac\u21a8\u2191\u2193\u2192\u2190\u221f\u2194\u25b2\u25bc !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xa2\xa3\xa5\u20a7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\u2310\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0".split("");function Gr(e,t){return jr(e,t,!0)}function jr(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?function(e){let t="";for(let n=0;n<e.length;n++)t+=Hr[e[n]];return t}(e):new g(t,{ignoreBOM:n}).decode(e)}const qr="HTTP error ",Kr="HTTP Range not supported",Yr="HTTP resource changed",Xr="Writer iterator completed too soon",Jr="Writer not initialized",Qr="Invalid writer (size must be writable)",$r="Content-Range",eo="Range",to="GET",no="bytes",ro=16777216,oo="writable",io=k();class so{constructor(){this.size=0}init(){this.initialized=!0}}class ao extends so{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=wt(ft())}={}){const r=this;let o=0;return n=pt(n),new F({async pull(i){const a=t===de?n:s.min(n,t-o),c=await Bo(r,e+o,a);c.length&&(i.enqueue(c),o+=c.length),(t!==de&&o>=t||!c.length&&a)&&i.close()}})}}class co extends so{constructor(){super();const e=this,t=new D({write(t){if(!e.initialized)throw new f(Jr);return e.writeUint8Array(St(t))}});n.defineProperty(e,oo,{get:()=>t})}writeUint8Array(){}}let lo,uo;class fo extends ao{constructor(e){super(),n.assign(this,{De:e,size:e.size}),uo||(uo=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,n=await e.read();for(;!n.done;)t+=n.value.length,n=await e.read();lo=1==t}catch{lo=!1}})())}createReadable(e){const{De:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};if(typeof t.stream==pe){if(!r&&o>=n)return An(t.stream());if(lo)return An(t.slice(r,r+o).stream())}return super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=!e&&r>=n.size?n.De:n.De.slice(e,r);let i=await o.arrayBuffer();return i.byteLength>t&&(i=i.slice(e,r)),new w(i)}}class wo extends so{constructor(e){super();const t=this,r=new z;n.defineProperty(t,oo,{get:()=>r.writable}),t.contentType=e,t.Ae=Cn(r.readable,e),t.Ae.catch(()=>{})}getData(){return this.Ae}}class po extends ao{constructor(e,t){super(),ho(this,e,t)}async init(){await yo(this,To,Fo),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:i}=t;if((n||r)&&i!==de){const{offset:n=0,size:r=i-n}=e||{};if(r>0&&n<i)return function(e,t,n){let r,i=t,a=0,c=n;return new F({start:()=>l(),async pull(e){r||await l();const{value:t,done:n}=await r.read();if(n)throw new f(Kr);const o=t.length>a?t.subarray(0,a):t;a-=o.length,c-=o.length,o.length&&e.enqueue(o),a||(await async function(){const e=r;r=de,await e.cancel()}(),c||e.close())},cancel:e=>r&&r.cancel(e)});async function l(){const t=s.min(e.maximumRangeSize,c),n=await To(to,e,Ro(e,i,t));if(206!=n.status)throw new f(Kr);const l=n.headers.get($r);if(l){const e=o(l.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=i)throw new f(Kr)}xo(e,n),bo(e,n),i+=t,a=t,r=n.body.getReader()}}(t,n,s.min(r,i-n))}return super.createReadable(e)}readUint8Array(e,t){return Eo(this,e,t,To,Fo)}}class mo extends ao{constructor(e,t){super(),ho(this,e,t)}async init(){await yo(this,Io,Do),super.init()}readUint8Array(e,t){return Eo(this,e,t,Io,Do)}}function ho(e,t,r){const{preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c=!0,maximumRangeSize:l=ro,fetch:u}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(e,{url:t,options:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c,maximumRangeSize:l,fetch:u})}async function yo(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a}=e;if(function(e){const{baseURI:t}=ft(),{protocol:n}=new d(e,t);return"http:"==n||"https:"==n}(r)&&(i||s)&&(typeof o==we||o)){const r=await t(to,e,Ro(e,a?-22:void 0)),o=r.headers.get("Accept-Ranges");if(!(s||o&&o.toLowerCase()==no))throw new f(Kr);{if(a){const t=new w(await r.arrayBuffer());206==r.status&&t.length==K&&(e.Ce=t)}bo(e,r);const o=So(r);o===de?await Co(e,t,n):e.size=o}}else await Co(e,t,n)}async function Eo(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,Ce:c,size:l,options:u}=e;if(s||a){if(c&&t==l-K&&n==K)return c;if(t>=l||0===n)return Ee;{t+n>l&&(n=l-t);const i=await r(to,e,Ro(e,t,n));if(206!=i.status)throw new f(Kr);const s=i.headers.get($r);if(s){const e=o(s.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=t)throw new f(Kr)}xo(e,i),bo(e,i);const a=new w(await i.arrayBuffer());if(a.length!=n)throw new f(Kr);return a}}{const{data:r}=e;return r||await i(e,u),e.data.subarray(t,t+n)}}function So(e){const t=e.headers.get($r);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=o(e);if(!o.isNaN(t))return t}}}function go({headers:e}){return{Te:e.get("Etag")||de,lastModified:e.get("Last-Modified")||de}}function bo(e,t){const{checkResourceChanges:n,Ie:r}=e;n&&!r&&206==t.status&&(e.Ie=go(t))}function xo(e,t){const{checkResourceChanges:r,Ie:o,size:i}=e;if(r){const e=So(t);if(e!==de&&i!==de&&e!=i)throw new f(Yr);if(o){const e=go(t);if(n.entries(o).some(([t,n])=>n!==de&&e[t]!==de&&n!=e[t]))throw new f(Yr)}}}function Ro(e,t=0,r=1){return n.assign({},zo(e),{[eo]:no+"="+(t<0?t:t+"-"+(t+r-1))})}function zo({options:e}){const{headers:t}=e;if(t)return k.iterator in t?n.fromEntries(t):t}async function Fo(e){await Ao(e,To)}async function Do(e){await Ao(e,Io)}async function Ao(e,t){const n=await t(to,e,zo(e));e.data=new w(await n.arrayBuffer()),e.size=e.data.length}async function Co(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,zo(e)),i=r.headers.get("Content-Length");i&&!r.headers.get("Content-Encoding")?e.size=o(i):await n(e,e.options)}}async function To(e,{fetch:t=fetch,options:r,url:o},i){const s=await t(o,n.assign({},r,{method:e,headers:i}));if(s.status>=200&&s.status<=299)return s;throw 416==s.status?new f(Kr):new f(qr+(s.statusText||s.status))}function Io(e,{url:t},r){return new E((o,i)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",()=>{if(s.status>=200&&s.status<=299){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),o({status:s.status,arrayBuffer:()=>s.response,headers:new c(e)})}else i(416==s.status?new f(Kr):new f(qr+(s.statusText||s.status)))},!1),s.addEventListener("error",e=>i(e.detail?e.detail.error:new f("Network error")),!1),s.open(e,t),r)for(const e of n.entries(r))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()})}class ko extends ao{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new mo(e,t):new po(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 vo extends ao{constructor(e){super(),this.ke=e}async init(){const e=this;e.ve=0;const t=e.ke=await E.all(e.ke.map(Lo));e._e=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}Ne(e){const{_e:t,size:n}=this,r=t[e];return r===de?n:r}async readUint8Array(e,t){const n=this,{ke:r}=this;let o,i=0,a=e;for(;r[i]&&a>=r[i].size;)a-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(a+t<=r)o=await Bo(c,a,t);else{const i=r-a;o=Et(await Bo(c,a,i),await n.readUint8Array(e+i,t-i))}}else o=Ee;return n.ve=s.max(i,n.ve),o}}class _o extends so{constructor(e,t=4294967295){super();const r=this;let o,i,s;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const a=new D({async write(t){if(t===io)return void(s&&await l());const{availableSize:n}=r;if(s)t.length>=n?(await c(t.subarray(0,n)),await l(),t.length>n&&await this.write(t.subarray(n))):await c(t);else{const{value:n,done:a}=await e.next();if(a&&!n)throw new f(Xr);o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await Oo(o),i=n.writable,s=i.getWriter(),await this.write(t)}},async close(){s&&(await s.ready,await u())},async abort(e){s&&await s.abort(e)}});async function c(e){const t=e.length;t&&(await s.ready,await s.write(e),o.size+=t,r.availableSize-=t)}async function l(){await u(),r.diskOffset+=o.size,r.diskNumber++,s=null,r.availableSize=r.maxSize}async function u(){await s.close()}n.defineProperty(r,oo,{get:()=>a})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(io)}finally{e.releaseLock()}}}class No{constructor(e){return t.isArray(e)&&(e=new vo(e)),(e instanceof F||typeof e.getReader==pe)&&(e={readable:An(e)}),e}}class Uo{constructor(e){e.writable===de&&typeof e.next==pe&&(e=new _o(e)),(e instanceof D||typeof e.getWriter==pe)&&(e={writable:Tn(e)});try{e.size=e.size===de?0:e.size}catch{throw new f(Qr)}return e}}function Mo(e){return Boolean(e&&e.getData)}async function Oo(e,t){if(!e.init||e.initialized)return E.resolve();await e.init(t)}async function Lo(e){return e=new No(e),await Oo(e),e.size!==de&&e.readUint8Array||(e=new fo(await Cn(e.readable)),await Oo(e)),e}function Bo(e,t,n){return e.readUint8Array(t,n)}function Wo(e,t){return e.createReadable?e.createReadable(t):e.readUint8Array?ao.prototype.createReadable.call(e,t):e.readable}function Po(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==de&&(r.filename=n),e.push(r)}}const Zo="filename",Vo="rawFilename",Ho="comment",Go="rawComment",jo="uncompressedSize",qo="compressedSize",Ko="offset",Yo="diskNumberStart",Xo="lastModDate",Jo="rawLastModDate",Qo="lastAccessDate",$o="rawLastAccessDate",ei="creationDate",ti="rawCreationDate",ni="internalFileAttributes",ri="externalFileAttributes",oi="msdosAttributesRaw",ii="msdosAttributes",si="msDosCompatible",ai="zip64",ci="encrypted",li="version",ui="versionMadeBy",di="zipCrypto",fi="directory",wi="executable",pi="compressionMethod",mi="signature",hi="extraField",yi="unixMode",Ei="setuid",Si="setgid",gi="sticky",bi=[Zo,Vo,jo,qo,Xo,Jo,Ho,Go,Qo,$o,ei,ti,Ko,Yo,ni,ri,oi,ii,si,ai,ci,li,ui,di,fi,wi,"symlink",pi,mi,"crc32",hi,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",yi,"unixExternalUpper",Ei,Si,gi,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class xi{constructor(e){bi.forEach(t=>this[t]=e[t])}}const Ri=new l([1,J,10,Q,28789,25461,$,ee,te,22613,13]);function zi(e,t,n){return e?t?12:16+4*n:0}const Fi="File format is not recognized",Di="End of central directory not found",Ai="End of Zip64 central directory locator not found",Ci="Central directory header not found",Ti="Local file header not found",Ii="Zip64 extra field not found",ki="File contains encrypted entry",vi="Encryption method not supported",_i="Split zip file",Ni="Overlapping entry found",Ui="Entry data out of bounds",Mi="Ambiguous archive",Oi="Encrypted central directory is not supported",Li="Unsafe filename",Bi="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",Wi="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Pi="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Zi="64-bit value exceeds Number.MAX_SAFE_INTEGER",Vi="unsorted central directory",Hi="unknown version needed to extract",Gi="compressed patched data",ji="malformed extra field",qi="unknown zip64 extensible data",Ki="wrapped entries count",Yi="appended data",Xi="prepended data",Ji="prepended central directory",Qi="trailing central directory data",$i="duplicate filename",es="mismatched zip64 end of central directory record",ts="multiple end of central directory records",ns="mismatched local file header (filename)",rs="mismatched local file header (general purpose bit flag)",os="mismatched local file header (compression method)",is="mismatched local file header (crc32 or sizes)",ss=/^[a-zA-Z]:/,as="utf-8",cs="cp437",ls=[[jo,M],[qo,M],[Ko,M],[Yo,O]],us={[O]:{Ue:js,bytes:4},[M]:{Ue:qs,bytes:8}},ds=i(o.MAX_SAFE_INTEGER);class fs{constructor(e,t={}){n.assign(this,{reader:new No(e),options:t,Me:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await Oo(r),r.size!==de&&r.readUint8Array||(r=new fo(await Cn(r.readable)),await Oo(r)),r.size<K)throw new f(Fi);const o=t.warnings=[],i=Ts(e,t.options),a=i==Oe,c=i!=Be,u=vs(Ws(t,e,_e),i),d=function(e,t){if(e===de)return t;if(!Cs(e))throw new f(Wi);return e}(Ws(t,e,"filenameValidation"),i),w=Ws(t,e,"normalizeFilename"),{Oe:p,Le:m}=await _s(r,c,u);if(!p)throw await async function(e){return await As(e)==W}(r)?new f(_i):new f(Di);c&&m>1&&Bs(ts);const h=gt(p);let y=js(h,12),E=js(h,16);const S=p.offset,g=Gs(h,20),b=S+K+g,x=r.size-b;x>u&&Bs(Yi),x>0&&Po(o,Yi);let R=Gs(h,4);const F=r.ve||0;let D,A,C,T,I,k=Gs(h,6),v=Gs(h,10),_=0,N=X;const U=E==M||y==M||v==O||k==O;if(E!=M&&k!=O&&(E+=Ds(r,k)),U){const e=p.offset>=Y?await Bo(r,p.offset-Y,Y):Ee,t=gt(e);if(e.length==Y&&js(t,0)==j){E=Ds(r,js(t,4))+qs(t,8);let e=await Bo(r,E,X),i=gt(e);const c=p.offset-Y-X;if((e.length<X||js(i,0)!=G)&&E!=c&&c>=0){const t=E;E=c,E>t&&(_=E-t),e=await Bo(r,E,X),i=gt(e)}if(e.length<X||js(i,0)!=G)throw new f(Ai);if(C=!0,T=qs(i,4)>44,T){const e=s.min(qs(i,4)-44,r.size-E-X);e>0&&(N+=e,I=function(e){const t={rawExtensibleData:e};if(e.length>=28){const r=gt(e),o=Gs(r,26);n.assign(t,{compressionMethod:Gs(r,0),compressedSize:qs(r,2),uncompressedSize:qs(r,10),encryptionAlgorithm:Gs(r,18),bitLength:Gs(r,20),flags:Gs(r,22),hashAlgorithm:Gs(r,24),hashData:e.subarray(28,28+o)})}return t}(await Bo(r,E+X,e)))}R==O?R=js(i,16):R!=js(i,16)&&Ls(a,o,es),k==O?k=js(i,20):k!=js(i,20)&&Ls(a,o,es),v==O?v=qs(i,32):v!=qs(i,32)&&Ls(a,o,es),y==M?y=qs(i,40):y!=qs(i,40)&&Ls(a,o,es),E=Ds(r,k)+qs(i,48)+_}}let B=y;const P=p.offset-(C?N+Y:0);if(E>=r.size&&(_=r.size-E-y-K,E=r.size-y-K),F!=R)throw new f(_i);if(E<0)throw new f(Fi);let Z=0,H=await Bo(r,E,y),J=gt(H);if(y){if(H.length<4)throw new f(Fi);const e=P-y;if(E!=e&&k==R){const t=js(J,Z)==V||Boolean(I&&I.compressedSize)||hs(J);let n=!t;if(!n&&e>=0&&e+4<=r.size&&(n=js(gt(await Bo(r,e,4)),0)==V),n){const n=E;E=e,E>n&&(_+=E-n,D=t),H=await Bo(r,E,y),J=gt(H)}}}const Q=P-E;if(y!=Q&&Q>=0&&k==R&&(y=Q,H=await Bo(r,E,y),J=gt(H)),E<0||E>=r.size)throw new f(Fi);t.directoryOffset=E,t.directoryLength=B;const $=Ps(t,e,"decryptCentralDirectory");let ee,te;if($&&v&&H.length>=4&&js(J,0)!=V&&(T||hs(J))){const e=function(e,t,n){const r=e&&e.compressedSize?e.compressedSize:t;return r>0&&r<=n?r:n}(I,B,H.length);te=H.subarray(e),H=await $(H.subarray(0,e),I),J=gt(H),B=H.length,ee=!0}I&&!ee&&(H.length<4||js(J,0)==V)&&Po(o,qi),A=E;const ne=Ws(t,e,"filenameEncoding"),ce=Ws(t,e,"commentEncoding"),le=new l;let ue,fe=-1;const we=!a&&!C;!v&&we&&(v=ys(J,H,Z),v&&Po(o,Ki));for(let i=0;i<v;i++){const a=new ms(r,t.options);if(Z+q>H.length||js(J,Z)!=V){if(0==i&&!ee&&(T||hs(J)))throw new f(Oi);throw new f(Ci)}Ss(a,J,Z+6);const c=Boolean(a.bitFlag.languageEncodingFlag),l=Z+q,u=l+a.filenameLength,p=u+a.extraFieldLength,m=Gs(J,Z+4),h=!(m>>8),y=m>>8==3,E=H.subarray(l,u),S=Gs(J,Z+32),g=p+S,b=H.subarray(p,g),x=c,R=c,F=js(J,Z+38),D=F&L,C={readOnly:Boolean(1&D),hidden:Boolean(2&D),system:Boolean(4&D),directory:Boolean(16&D),archive:Boolean(32&D)},I=js(J,Z+42),k=Ps(t,e,"decodeText")||Gr,N=x?as:ne||cs,U=R?as:ce||cs;let M=k(E,N,Ue);if(M===de&&(M=Gr(E,N)),w){const e=w(M);e!==de&&(M=e)}if(ks(M,d)){const e=new f(Li);throw e.filename=M,e}let B=k(b,U,Me);B===de&&(B=Gr(b,U)),n.assign(a,{index:i,Be:ee,versionMadeBy:m,msDosCompatible:h,zip64:!1,compressedSize:0,uncompressedSize:0,We:S,offset:I,diskNumberStart:Gs(J,Z+34),internalFileAttributes:Gs(J,Z+36),externalFileAttributes:F,msdosAttributesRaw:D,msdosAttributes:C,rawFilename:E,filenameUTF8:x,commentUTF8:R,rawExtraField:H.subarray(u,p),rawComment:b,filename:M,comment:B}),gs(a,a,J,Z+6)&&Po(o,ji,M),a.offset+=_;const W=Ds(r,a.diskNumberStart)+a.offset;A=s.min(W,A),W<fe&&Po(o,Vi,M),fe=W,(a.version&L)>63&&Po(o,Hi,M),32&~a.rawBitFlag||Po(o,Gi,M),le.has(a.filename)&&(ue=!0),le.add(a.filename);const P=a.externalFileAttributes>>16&O;a.unixMode===de&&16877&P&&(a.unixMode=P);const G=Boolean(a.unixMode&ie),j=Boolean(a.unixMode&se),K=Boolean(512&a.unixMode),Y=40960==((a.unixMode===de?P:a.unixMode)&re),X=!Y&&(a.unixMode!==de?!!(73&a.unixMode):y&&!!(73&P)),Q=a.unixMode!==de&&(a.unixMode&re)==oe,$=(P&re)==oe;n.assign(a,{setuid:G,setgid:j,sticky:K,symlink:Y,unixExternalUpper:P,executable:X,directory:Q||$||h&&C.directory||a.filename.endsWith(ae),zipCrypto:a.encrypted&&!a.extraFieldAES});const te=new xi(a);if(te.getData=(e,n)=>a.getData(e,te,t.Me,n),te.arrayBuffer=async e=>{const r=new z,o=Cn(r.readable).then(e=>e.arrayBuffer());return o.catch(()=>{}),await a.getData(r,te,t.Me,n.assign({},e,{preventClose:!1})),o},Z=g,i==v-1&&we){const e=ys(J,H,Z);e&&(v+=e,Po(o,Ki))}const{onprogress:pe}=e;if(pe)try{await pe(i+1,v,new xi(a))}catch{}yield te}let pe=Z,me=Es(H.subarray(Z))||(ee?Es(te):de);if(!me&&!ee){const e=E+Z,t=s.min(P-e,65541);t>=6&&(me=Es(await Bo(r,e,t)))}me&&(t.digitalSignature=me,pe=Z+6+me.length),(Z!=B&&pe!=B||!ee&&Z!=y&&pe!=y)&&Ls(a,o,Qi),ue&&Ls(a,o,$i);const he=Ws(t,e,"extractPrependedData"),ye=Ws(t,e,"extractAppendedData"),Se=(a||he)&&v&&4==A&&await async function(e){const t=await As(e);return t==W||808471376==t}(r)?4:0;return a&&(_||v&&A>Se)&&Bs(Xi),(_||v&&A>4)&&Po(o,Xi),D&&Po(o,Ji),he&&(t.prependedData=A>Se?await Bo(r,Se,A-Se):Ee),t.comment=g?await Bo(r,S+K,g):Ee,ye&&(t.appendedData=b<r.size?await Bo(r,b,r.size-b):Ee),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){const{reader:e}=this;e.readUint8Array||!e.readable||e.readable.locked||await e.readable.cancel()}[Se](){return this.close()}}class ws{constructor(e={}){let r;const{readable:o,writable:i}=new z({start(e){r=e}}),s=new fs(o,e),a=s.getEntriesGenerator(),c=new l;this.readable=new F({async pull(e){const{done:t,value:r}=await a.next();if(t)return e.close();const o=function(e,t){const{readable:n,writable:r}=new z;let o;const i={cancel:async e=>{t.delete(i),await(o?o.cancel(e):n.cancel(e))}};return i.readable=new F({async pull(s){o||(o=n.getReader(),t.add(i),async function(){try{await e.getData(r,{preventClose:!1})}catch(e){try{await r.abort(e)}catch{}}finally{t.delete(i)}}());const{done:a,value:c}=await o.read();a?s.close():s.enqueue(c)},cancel:e=>i.cancel(e)},{highWaterMark:0}),i}(r,c),i={...r,readable:o.readable};delete i.getData,n.defineProperties(i,{localDirectory:{get:()=>r.localDirectory,enumerable:!0},warnings:{get:()=>r.warnings,enumerable:!0}}),e.enqueue(i)},async cancel(e){const n=t.from(c);c.clear(),r.error(e),await E.allSettled(n.map(t=>t.cancel(e))),await E.allSettled([a.return(),s.close()])}}),this.writable=i}}async function ps(e,t={}){if(e=new No(e),await Oo(e),e.size!==de&&e.readUint8Array||(e=new fo(await Cn(e.readable)),await Oo(e)),e.size<K)return!1;const n=Ts(t,{}),r=n!=Be,o=vs(t[_e],n),{Oe:i,Le:s}=await _s(e,r,o);if(!i||n==Oe&&s>1)return!1;const a=Gs(gt(i),20),c=i.offset+K+a;return e.size-c<=o}class ms{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,r,o={}){const i=this,a=ft(),{reader:c,index:l,offset:u,diskNumberStart:d,extraFieldAES:w,extraFieldZip64:p,compressionMethod:m,bitFlag:h,rawBitFlag:y,crc32:E,rawLastModDate:S,uncompressedSize:g,compressedSize:b}=i,{dataDescriptor:x}=h,R=t.localDirectory={},z=t.warnings=[],F=Ds(c,d)+u,A=await Bo(c,F,ce),C=gt(A);let T=Ws(i,o,ge),I=Ws(i,o,be);const k=Xe(Ws(i,o,xe)),v=Boolean(k),_=!0===k;if(Ye(T,I),T=T&&T.length&&T,I=I&&I.length&&I,w&&99!=w.originalCompressionMethod)throw new f(_n);if(A.length<ce||js(C,0)!=B)throw new f(Ti);Ss(R,C,4);const{extraFieldLength:N,filenameLength:U}=R,M=R.dataOffset=F+ce+U+N,O=Ws(i,o,"checkLocalDirectory"),W=Ts(o,i.options),Z=function(e,t){return e===de?t!=Be:Boolean(e)}(O,W),V=Ws(i,o,"checkLocalFilename"),H=function(e,t){return e===de?t==Oe:Boolean(e)}(V===de?O:V,W);let G=Ee;if(H&&(U||N)){const e=await Bo(c,F+ce,U+N);G=e.subarray(0,U),R.rawExtraField=e.subarray(U)}else R.rawExtraField=N?await Bo(c,F+ce+U,N):Ee;H&&(R.rawFilename=G),gs(i,R,C,4,!0)&&Po(z,ji),function(e,t,n,r,o){const{rawFilename:i}=e,s=!o,a=e.Be&&!(8192&~t.rawBitFlag);!r||a||n.length==i.length&&!n.some((e,t)=>e!=i[t])||Ls(s,o,ns),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&Ls(s,o,rs),t.compressionMethod!=e.compressionMethod&&Ls(s,o,os),t.bitFlag.dataDescriptor||a||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||Ls(s,o,is)}(i,R,G,H,Z?de:z);const{lastAccessDate:j,creationDate:q,uid:K,gid:Y}=R;j&&(t.lastAccessDate=j),q&&(t.creationDate=q),K!==de&&t.uid===de&&(t.uid=K),Y!==de&&t.gid===de&&(t.gid=Y);const X=Ws(i,o,"checkPasswordOnly"),J=i.encrypted&&R.encrypted&&(!_||X),Q=J&&!w;if(_||(t.zipCrypto=Q),J&&!(64&~R.rawBitFlag))throw new f(vi);const $=v?de:On(m);if(0!=m&&8!=m&&9!=m&&!$&&!v)throw new f(_n);if(J){if(!Q&&(w.strength<1||w.strength>3))throw new f(vi);if(!T&&!I)throw new f(ki)}if(M+b>c.size)throw new f(Ui);const ee=b,te=An(c.createReadable({offset:M,size:ee})),ne=qe(Ws(i,o,Re));Ke(ne);let re=Ws(i,o,"checkOverlappingEntry");const oe=Ws(i,o,"checkOverlappingEntryOnly");oe&&(re=!0);const{onstart:ie,onprogress:se,onend:ae}=o,le=0!=m&&!v,ue=v?b-zi(J,Q,w&&w.strength):g,fe=9==m;let we=Ws(i,o,Fe);fe&&(we=!1);const pe=Ws(i,o,"checkCrc32"),me=(pe===de?Ws(i,o,"checkSignature"):pe)&&!v&&(!J||Q||w&&1==w.vendorVersion),he={options:{codecType:ar,password:T,rawPassword:I,zipCrypto:Q,encryptionStrength:w&&w.strength,checkCrc32:me,checkAuthenticationCode:Ws(i,o,"checkAuthenticationCode"),passwordVerification:Q&&(x?S>>>8&L:E>>>24&L),outputSize:ue,crc32:E,compressed:le,encrypted:J,useWebWorkers:Ws(i,o,ze),useCompressionStream:we,transferStreams:Ws(i,o,De),deflate64:fe,format:$?$.format:de,codecURI:$?$.codecURI:de,compressionMethod:m,rawBitFlag:y,checkPasswordOnly:X},config:a,ae:{signal:ne,size:ee,onstart:ie,onprogress:se,onend:ae}};let ye,Se,Ce;re&&await async function({reader:e,Pe:t,index:n,offset:r,crc32:o,compressedSize:i,uncompressedSize:s,dataOffset:a,dataDescriptor:c,extraFieldZip64:l,Me:u}){let d=0;if(c&&(d=l?20:12),d){const n=await Bo(e,a+i,d+4),r=gt(n);let c=n.length==d+4&&js(r,0)==P;if(c){const e=Fs(r,4,l);(t.encrypted&&!t.zipCrypto||e.crc32==o)&&e.compressedSize==i&&e.uncompressedSize==s?d+=4:c=!1}if(n.length>=d){const e=Fs(r,c?4:0,l);e.signature=c,t.localDirectory.dataDescriptor=e}}const w={start:r,end:a+i+d,Pe:t};for(const[e,t]of u)if(e!=n&&w.start<t.end&&t.start<w.end){const e=new f(Ni);throw e.overlappingEntry=t.Pe,e}u.set(n,w)}({reader:c,Pe:t,index:l,offset:F,crc32:E,compressedSize:b,uncompressedSize:g,dataOffset:M,dataDescriptor:x||R.bitFlag.dataDescriptor,extraFieldZip64:p||R.extraFieldZip64,Me:r});try{if(!oe){X&&(e=new D),e=new Uo(e),await Oo(e,function(e,t,n){return s.min(e,n?1032*t:t)}(ue,b,le)),({writable:ye}=e);const{outputSize:t}=await Lr({readable:te,writable:ye},he);if(t!=ue)throw n.assign(new f(Pn),{outputSize:t});e.size+=t}}catch(t){const{outputSize:n}=he;if(n!==de?e.size+=n:bt(t)&&t.outputSize!==de&&(e.size+=t.outputSize),!X||!bt(t)||t.message!=Pt)throw Se=t,Ce=!0,t}finally{if((Mo(e)||!Ws(i,o,Ae))&&ye&&!ye.locked){const e=ye.getWriter();if(Ce)try{await e.abort(Se)}catch{}else await e.close()}}return X||oe?de:e.getData?e.getData():ye}}function hs(e){const t=s.min(e.byteLength,1024)-3;for(let n=0;n<t;n++)if(134630224==js(e,n))return!0;return!1}function ys(e,t,n){let r=0;for(;n+q<=t.length&&js(e,n)==V;)n+=q+Gs(e,n+28)+Gs(e,n+30)+Gs(e,n+32),r++;return r%65536?0:r}function Es(e){if(e.length>=6){const t=gt(e);if(js(t,0)==Z){const n=Gs(t,4);if(6+n<=e.length)return e.subarray(6,6+n)}}}function Ss(e,t,r){const o=e.rawBitFlag=Gs(t,r+2),i=!(1&~o),s=js(t,r+6);n.assign(e,{encrypted:i,version:Gs(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&ne)==ne},rawLastModDate:s,lastModDate:Zs(s),filenameLength:Gs(t,r+22),extraFieldLength:Gs(t,r+24)})}function gs(e,t,r,o,i){const{rawExtraField:s}=t,l=t.extraField=new c,u=gt(s);let d=0,w=!1;try{for(;d<s.length;){const e=Gs(u,d),t=Gs(u,d+2);l.set(e,{type:e,data:s.slice(d+4,d+4+t)}),d+=4+t}}catch{w=!0}d>s.length&&(w=!0);const p=Gs(r,o+4);n.assign(t,{signature:js(r,o+10),crc32:js(r,o+10),compressedSize:js(r,o+14),uncompressedSize:js(r,o+18)});const m=l.get(1);m&&(function(e,t){t.zip64=!0;const n=gt(e.data),r=ls.filter(([e,n])=>t[e]==n),o=r.reduce((e,[,t])=>e+us[t].bytes,0);if(e.data.length<o)throw new f(Ii);for(let o=0,i=0;o<r.length;o++){const[s,a]=r[o],c=us[a];t[s]=e[s]=c.Ue(n,i),i+=c.bytes}}(m,t),t.extraFieldZip64=m);const h=l.get(28789);h&&(bs(h,Zo,Vo,t,e),t.extraFieldUnicodePath=h);const y=l.get(25461);y&&(bs(y,Ho,Go,t,e),t.extraFieldUnicodeComment=y);const E=l.get(J);E&&E.data.length>=7?(function(e,t,r){const o=gt(e.data),i=Hs(o,4);n.assign(e,{vendorVersion:Hs(o,0),vendorId:Hs(o,2),strength:i,originalCompressionMethod:r,compressionMethod:Gs(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=de)}(E,t,p),t.extraFieldAES=E):t.compressionMethod=p;const S=l.get(13);S&&(xs(S,t),t.extraFieldPkwareUnix=S);const g=l.get(22613);g&&(xs(g,t),t.extraFieldUnixType1=g);const b=l.get(10);b&&(function(e,t){const r=gt(e.data);let o,i=4;try{for(;i<e.data.length&&!o;){const t=Gs(r,i),n=Gs(r,i+2);1==t&&(o=e.data.slice(i+4,i+4+n)),i+=4+n}}catch{}if(o&&24==o.length){const r=gt(o),i=r.getBigUint64(0,!0),s=r.getBigUint64(8,!0),a=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:i,rawLastAccessDate:s,rawCreationDate:a});const c={lastModDate:Vs(i),lastAccessDate:Vs(s),creationDate:Vs(a)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:s,rawCreationDate:a})}}(b,t),t.extraFieldNTFS=b);const x=l.get(te);let R;if(x&&(R=Rs(x,t,!1),t.extraFieldUnix=x),!R){const e=l.get(ee);e&&(Rs(e,t,!0),t.extraFieldInfoZip=e)}const z=l.get(Q);z&&(function(e,t,n){if(!e.data.length)return;const r=gt(e.data),o=Hs(r,0),i=[],s=[];n?(1&~o||(i.push(Xo),s.push(Jo)),2&~o||(i.push(Qo),s.push($o)),4&~o||(i.push(ei),s.push(ti))):e.data.length>=5&&(i.push(Xo),s.push(Jo));let c=1;i.forEach((n,o)=>{if(e.data.length>=c+4){const i=js(r,c);t[n]=e[n]=new a(1e3*(0|i));const l=s[o];e[l]=i}c+=4})}(z,t,i),t.extraFieldExtendedTimestamp=z);const F=l.get($);return F&&(t.extraFieldUSDZ=F),w}function bs(e,t,r,o,i){if(e.data.length<5)return void(e.valid=!1);const s=gt(e.data),a=new kt;a.append(i[r]);const c=gt(new w(4));c.setUint32(0,a.get(),!0);const l=js(s,1),u=Hs(s,0);n.assign(e,{version:u,[t]:Gr(e.data.subarray(5)),valid:1==u&&!i.bitFlag.languageEncodingFlag&&l==js(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function xs(e,t){if(e.data.length<8)return;const r=gt(e.data),o={lastAccessDate:new a(1e3*(0|js(r,0))),lastModDate:new a(1e3*(0|js(r,4)))};e.data.length>=12&&(o.uid=Gs(r,8),o.gid=Gs(r,10)),n.assign(e,o),n.assign(t,o)}function Rs(e,t,r){try{const o=gt(e.data);let i,s;if(r){let t=0;const r=Hs(o,t++),a=Hs(o,t++);i=zs(e.data.subarray(t,t+a)),t+=a;const c=Hs(o,t++);s=zs(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:i,gid:s})}else e.data.length>=4&&(i=Gs(o,0),s=Gs(o,2),n.assign(e,{uid:i,gid:s}));return i!==de&&(t.uid=i),s!==de&&(t.gid=s),i!==de||s!==de}catch{}}function zs(e){const t=new w(4);return t.set(e,0),new h(t.buffer,t.byteOffset,4).getUint32(0,!0)}function Fs(e,t,n){const r=js(e,t);let o,i;return n?(o=qs(e,t+4),i=qs(e,t+12)):(o=js(e,t+4),i=js(e,t+8)),{crc32:r,compressedSize:o,uncompressedSize:i}}function Ds(e,t){return e.Ne?e.Ne(t):0}async function As(e){return js(gt(await Bo(e,0,4)))}function Cs(e){return e===Oe||e===Le||e===Be}function Ts(e,t){return Is(e,Is(t,Le))}function Is(e,t){const n=e.strictness;if(n!==de){if(!Cs(n))throw new f(Bi);return n}const r=e.checkAmbiguity;return r===de?t:r?Oe:t==Be?Be:Le}function ks(e,t){if(t==Be)return!1;const n=e.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(n.includes("..")||e.startsWith("/")||e.startsWith("\\\\")||ss.test(e))||t==Oe&&(n.includes(".")||n.includes(""))}function vs(e,t){if(e!==de){const t=$e(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new f(Pi);return t}return t==Oe?0:t==Be?1/0:O}async function _s(e,t,n){const{size:r}=e,o=s.min(r,65557),i={count:64};let a,c,l=0;for await(const[n,s,u,d,f]of Ns(e,o)){const o=Gs(n,d+20);if(f+K+o==r){const o=await Ms(e,n,s,d,f,r,i);if(2==o){if(a||(a=Us(u,d,f)),l++,!t||l>1)break}else 1!=o||c||(c=Us(u,d,f))}}return a||(a=c),a||(a=await async function(e,t,n){const{size:r}=e,o=s.min(r,t==1/0?r:65557+t);let i,a;for await(const[t,s,c,l,u]of Ns(e,o)){const o=Us(c,l,u);i||(i=o);const d=await Ms(e,t,s,l,u,r,n);if(2==d)return o;1!=d||a||(a=o)}return a||i}(e,n,i)),{Oe:a,Le:l}}async function*Ns(e,t){const n=e.size-t,r=await Bo(e,n,t),o=gt(r);for(let e=r.length-K;e>=0;e--)js(o,e)==H&&(yield[o,n,r,e,n+e])}function Us(e,t,n){return{offset:n,buffer:e.slice(t,t+K).buffer}}async function Ms(e,t,n,r,o,i,s){const a=Gs(t,r+10),c=js(t,r+12),l=js(t,r+16);if(a==O||c==M||l==M)return await Os(e,t,n,o-Y,i,s)==j?2:0;if(!a&&!c)return 1;const u=Gs(t,r+6);for(const r of[o-c,Ds(e,u)+l])if(await Os(e,t,n,r,i,s)==V)return 2;return 0}async function Os(e,t,n,r,o,i){return r<0||r+4>o?de:r>=n?js(t,r-n):i.count>0?(i.count--,js(gt(await Bo(e,r,4)),0)):de}function Ls(e,t,n){e?Bs(n):Po(t,n)}function Bs(e){const t=new f(Mi);throw t.reason=e,t}function Ws(e,t,n){return t[n]===de?e.options[n]:t[n]}function Ps(e,t,n){return je(Ws(e,t,n))}function Zs(e){const t=(4294901760&e)>>16,n=e&O,r=new a(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<ue?ue:r}function Vs(e){return new a(o(e/i(1e4)-i(116444736e5)))}function Hs(e,t){return e.getUint8(t)}function Gs(e,t){return e.getUint16(t,!0)}function js(e,t){return e.getUint32(t,!0)}function qs(e,t){const n=e.getBigUint64(t,!0);if(n>ds)throw new f(Zi);return o(n)}var Ks=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Mi,ERR_BAD_FORMAT:Fi,ERR_CENTRAL_DIRECTORY_NOT_FOUND:Ci,ERR_ENCRYPTED:ki,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Oi,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Ui,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Ai,ERR_EOCDR_NOT_FOUND:Di,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Ii,ERR_INVALID_AUTHENTICATION_CODE:Wt,ERR_INVALID_COMPRESSED_DATA:Zn,ERR_INVALID_CRC32:Vn,ERR_INVALID_FILENAME_VALIDATION:Wi,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Pi,ERR_INVALID_PASSWORD:Bt,ERR_INVALID_STRICTNESS:Bi,ERR_INVALID_UNCOMPRESSED_SIZE:Pn,ERR_LOCAL_FILE_HEADER_NOT_FOUND:Ti,ERR_OVERLAPPING_ENTRY:Ni,ERR_SPLIT_ZIP_FILE:_i,ERR_UNSAFE_FILENAME:Li,ERR_UNSUPPORTED_COMPRESSION:_n,ERR_UNSUPPORTED_ENCRYPTION:vi,ERR_UNSUPPORTED_UINT64:Zi,ERR_WORKER_STARTUP_TIMEOUT:ur,WARNING_APPENDED_DATA:Yi,WARNING_COMPRESSED_PATCHED_DATA:Gi,WARNING_DUPLICATE_FILENAME:$i,WARNING_MALFORMED_EXTRA_FIELD:ji,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:rs,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:os,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:is,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:ns,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:es,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:ts,WARNING_PREPENDED_CENTRAL_DIRECTORY:Ji,WARNING_PREPENDED_DATA:Xi,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Qi,WARNING_UNKNOWN_VERSION:Hi,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:qi,WARNING_UNSORTED_CENTRAL_DIRECTORY:Vi,WARNING_WRAPPED_ENTRIES_COUNT:Ki,ZipReader:fs,ZipReaderStream:ws,isZipFile:ps});const Ys="File already exists",Xs="Zip file comment exceeds 64KB",Js="Invalid zip file comment (must be a Uint8Array)",Qs="File entry comment exceeds 64KB",$s="Invalid file entry comment (must be a string)",ea="Invalid date (must be a valid Date instance)",ta="File entry name exceeds 64KB",na="Version exceeds 65535",ra="The strength must equal 1, 2, or 3",oa="Encryption is not supported in USDZ files",ia="Split zip files are not supported in USDZ files",sa="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",aa="Invalid extra field (must be a Map)",ca="Invalid extra field type (must be integer 0..65535)",la="Invalid extra field data (must be a Uint8Array)",ua="Extra field data exceeds 64KB",da=-2147483648,fa=2147483647,wa=i(0),pa=i("0x7fffffffffffffff"),ma="Zip64 is not supported (set the 'zip64' option to 'true')",ha="Undefined uncompressed size",ya="Undefined compression method",Ea="Undefined CRC32",Sa="Undefined reader",ga="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",ba="Zip file not empty",xa="Invalid uid (must be integer 0..2^32-1)",Ra="Invalid gid (must be integer 0..2^32-1)",za="Invalid UNIX mode (must be integer 0..65535)",Fa="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Da="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",Aa="Invalid msdosAttributesRaw (must be integer 0..255)",Ca="Invalid msdosAttributes (must be an object with boolean flags)",Ta="Invalid level (must be integer 0..9)",Ia="Signature data exceeds 64KB",ka="Invalid entry option (must be an entry returned by ZipReader#getEntries())",va="The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set",_a="compression unavailable",Na="clamped last modification date",Ua=new w([7,0,2,0,65,69,3,0,0]),Ma="infozip",Oa="unix",La=[8,9,5,3];let Ba=0;const Wa=[];class Pa{constructor(e,t={}){e=new Uo(e);const{availableSize:r=fe,maxSize:o=fe}=e,i=r>0&&r!==fe&&o>0&&o!==fe;if(i&&t[ve])throw new f(ia);n.assign(this,{writer:e,Ze:i,options:t,Ve:new c,He:new l,offset:t[ke]===de?e.size||e.writable.size||0:t[ke],Ge:t[ke]===de?0:t[ke]-(e.size||e.writable.size||0),je:new l,qe:[],warnings:[],Ke:0,Ye:0,Xe:de,Je:!1})}prependZip(e){return Ha(this,async function(e,t){if(e.He.size)throw new f(ba);await e.Qe(t)}(this,e))}appendZip(e){return Ha(this,this.Qe(e))}async Qe(e){const r=this,{je:o,He:i,Ve:s}=r;for(;o.size;)await E.allSettled(t.from(o));let a;const l=new E(e=>a=e);o.add(l);const u=[];let d;try{e=new No(e),await Oo(e),e.size!==de&&e.readUint8Array||(e=new fo(await Cn(e.readable)),await Oo(e));const{ZipReader:o}=await E.resolve().then(function(){return Ks}),a=new o(e),l=await a.getEntries();await a.close(),await Oo(r.writer);const{directoryOffset:w}=a;l.forEach(({filename:e})=>{if(i.has(e))throw new f(Ys);i.add(e),u.push(e)}),r.$e=!0;const{et:p}=r;r.et=new E(e=>d=()=>{r.$e=!1,e()}),await p,r.Ze&&(delete r.Ze,await async function(e){return gt(await Bo(e,0,4)).getUint32(0,!0)==W}(e)||(await ac(r.writer,ic()),r.offset+=4));const m=await async function(e,n,r,o){const{writer:i}=e,s=new c;if(i.closeDisk){const a=t.from(r).sort((e,t)=>oc(n,e)-oc(n,t));let c=0;for(const t of a){const r=oc(n,t);await nc(e,n,c,r-c),$a(i,await rc(n,r))&&await i.closeDisk(),s.set(t,{offset:ec(e,i),diskNumberStart:Ja(i)}),c=r}await nc(e,n,c,o-c)}else{const t=e.offset;await nc(e,n,0,o),r.forEach(e=>s.set(e,{offset:t+oc(n,e),diskNumberStart:0}))}return s}(r,e,l,w);l.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,bitFlag:i,encrypted:a,uncompressedSize:c,compressedSize:l,extraFieldZip64:u}=e;let{compressionMethod:d,rawExtraField:f}=e;const{level:w,languageEncodingFlag:p,dataDescriptor:h}=i;f=tc(f||Ee),e.extraFieldAES&&(d=99);const y=Rc(f),E=Boolean(u)&&u.uncompressedSize!==de,S=Boolean(u)&&u.compressedSize!==de,g=-7&Dc(w,p,h,a,d)|w<<1,{nt:b,ot:x}=zc({version:t,bitFlag:g,compressionMethod:d,uncompressedSize:c,compressedSize:l,rawLastModDate:r,rawFilename:o,it:S,st:E,extraFieldLength:y}),{crc32:R}=e;R!==de&&gc(x,10,R);const{offset:z,diskNumberStart:F}=m.get(e);n.assign(e,{ct:!0,st:E,it:S,offset:z,diskNumberStart:F,lt:!1,ut:Ee,ft:Ee,wt:Ee,ht:Ee,yt:Ee,rawExtraField:f,Et:Ee,extendedTimestamp:!1,nt:b,ot:x}),s.set(e.filename,e)})}catch(e){throw u.forEach(e=>i.delete(e)),e}finally{a(),o.delete(l),d&&d()}}add(e="",r,l={}){const u=this,{je:d}=u,p=async function(e,r,l,u){const d=(u=n.assign({},u))[Ne];if(d!==de){const{St:r,gt:o}=function(e,r,o){if(null===e||typeof e!=me||t.isArray(e))throw new f(ka);const{externalFileAttributes:i,versionMadeBy:l,comment:u,lastModDate:d,rawLastModDate:w,creationDate:p,lastAccessDate:m,uncompressedSize:h,encrypted:y,zipCrypto:E,crc32:S,compressionMethod:g,extraFieldAES:b,extraFieldUnix:x,internalFileAttributes:R,extraField:z,bitFlag:F,directory:D,uid:A,gid:C}=e,T={externalFileAttributes:i,versionMadeBy:l,comment:u,lastModDate:d,creationDate:p,lastAccessDate:m,internalFileAttributes:R,directory:D};F&&F.languageEncodingFlag&&(T[Te]=!0);const I=function(e){if(e){const t=new c;if(e.forEach((e,n)=>{Ri.has(n)||t.set(n,e.data)}),t.size)return t}}(z);I&&(T[hi]=I),A===de&&C===de||n.assign(T,{uid:A,gid:C,unixExtraFieldType:x?Oa:Ma});const k={};if(r&&!D)if(n.assign(k,{uncompressedSize:h,crc32:S,compressionMethod:g}),r!==We&&n.assign(k,{encrypted:y,zipCrypto:E,encryptionStrength:b?b.strength:de}),F&&(k.dataDescriptor=F.dataDescriptor,k[Ce]=La[F.level]),o===de)k.rawLastModDate=w;else if(r!==We&&E&&(!F||F.dataDescriptor)&&o instanceof a&&function(e){let t=new a(2e3*s.ceil(s.floor(e.getTime()/1e3)/2));return t<ue?t=ue:t>le&&(t=le),(t.getHours()<<3|t.getMinutes()>>3)&L}(o)!=(w>>>8&L))throw new f(va);return{St:T,gt:k}}(d,Xe(fc(e,u,xe)),fc(e,u,Xo));delete u[Ne],u=n.assign(r,o,u)}if(fc(e,u,fi)&&!r.endsWith(ae)&&(r+=ae),e.He.has(r))throw new f(Ys);e.He.add(r),Ba<ft().maxWorkers?Ba++:await new E(e=>Wa.push(e));try{return await async function(e,r,c,l){const u=function(e,n,r){let o=fc(e,r,si),i=fc(e,r,ui,o?20:768);const s=fc(e,r,wi),a=mc(e,r,"uid"),c=mc(e,r,"gid");let l=mc(e,r,yi),u=fc(e,r,"unixExtraFieldType"),d=fc(e,r,Ei),w=fc(e,r,Si),p=fc(e,r,gi);if(Qe(a,M,xa),Qe(c,M,Ra),Qe(l,O,za),u!==de&&u!==Ma&&u!==Oa)throw new f(Fa);if(u===Oa&&(a!==de&&a>O||c!==de&&c>O))throw new f(Da);u!==de||a===de&&c===de||(u=Ma);let m=mc(e,r,oi),h=fc(e,r,ii);const y=m!==de||h!==de;if(a!==de||c!==de||l!==de||u||s?(o=!1,i=i&L|768):y&&(o=!0,i&=L),Qe(m,L,Aa),h&&(typeof h!==me||t.isArray(h)))throw new f(Ca);if(i>O)throw new f(na);let E=fc(e,r,ri);const S=E!==de;S||(E=0),!r[fi]&&n.endsWith(ae)&&(r[fi]=!0);const g=fc(e,r,fi);if(g?(n.endsWith(ae)||(n+=ae),S||(E=16,o||(E|=16877<<16))):o||S||(E=s?493<<16:27525120),!o){const e=l!==de||Boolean(d||w||p);l=l===de?E>>16&O:l&O,d?l|=ie:d=Boolean(l&ie),w?l|=se:w=Boolean(l&se),p?l|=512:p=Boolean(512&l),S&&!e||(g?l=-61441&l|oe:l&re||(l|=32768),E=(l&O)<<16|E&O)}({msdosAttributesRaw:m,msdosAttributes:h}=function(e,t){if(e!==de)e&=L;else if(t!==de){const{readOnly:n,hidden:r,system:o,directory:i,archive:s}=t;let a=0;n&&(a|=1),r&&(a|=2),o&&(a|=4),i&&(a|=16),s&&(a|=32),e=a&L}return t===de&&(t={readOnly:Boolean(1&e),hidden:Boolean(2&e),system:Boolean(4&e),directory:Boolean(16&e),archive:Boolean(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}}(m,h)),y&&(E=E&M|m&L);const b=E>>16&O,x=l!==de&&40960==(l&re);return{name:n,bt:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:E,unixExternalUpper:b,uid:a,gid:c,unixMode:l,unixExtraFieldType:u,symlink:x,setuid:d,setgid:w,sticky:p,msdosAttributesRaw:m,msdosAttributes:h}}}(e,r,l);({name:r}=u);const d=function(e,t,n){const r=pc(e,n,"encodeText")||_t;let i=r(t,Ue);if(i===de&&(i=_t(t)),Rc(i)>O)throw new f(ta);const s=n[Ho]||"";if(typeof s!=he)throw new f($s);let c=r(s,Me);if(c===de&&(c=_t(s)),Rc(c)>O)throw new f(Qs);const l=fc(e,n,li);if(l!==de&&l>O)throw new f(na);const u=wc(e,n,Xo,new a),d=fc(e,n,Jo),w=wc(e,n,Qo),p=wc(e,n,ei),m=fc(e,n,ni,0),h=Xe(fc(e,n,xe)),y=Boolean(h),E=!0===h,S=fc(e,n,ge),g=fc(e,n,be);Ye(S,g);const b=mc(e,n,"encryptionStrength",3),x=fc(e,n,di),R=fc(e,n,"extendedTimestamp",!0),z=fc(e,n,"ntfsTimestamp"),F=fc(e,n,"keepOrder",!0),D=fc(e,n,ze),A=fc(e,n,De),C=fc(e,n,"bufferedWrite"),T=pc(e,n,"createTempStream"),I=fc(e,n,"dataDescriptorSignature",!0),k=qe(fc(e,n,Re));Ke(k);const v=fc(e,n,Te,!Fc(i)||!Fc(c)),_=fc(e,n,pi),N=y||_===de?de:On(_);if(!y&&_!==de&&0!==_&&8!==_&&!N)throw new f(_n);let U=mc(e,n,Ce);if(Qe(U,9,Ta),e.options[ve]){if(S!==de||g!==de)throw new f(oa);U===de&&_===de&&(U=0)}y&&(U=$e(n[Ce]));let M=fc(e,n,Fe),L=fc(e,n,Ie);C&&L===de&&(L=!1),(L===de||x&&!E)&&(L=!0),U!==de&&6!=U&&(M=!1);const B=fc(e,n,ai);if(!(x||S===de&&g===de||o.isInteger(b)&&b>=1&&b<=3))throw new f(ra);const W=qa(n[hi]),P=qa(n.localExtraField),Z=qa(n.centralExtraField);return{comment:s,bt:{rawFilename:i,rawComment:c,version:l,lastModDate:u,rawLastModDate:d,lastAccessDate:w,creationDate:p,internalFileAttributes:m,xt:y,Rt:E,password:S,rawPassword:g,encryptionStrength:b,zipCrypto:x,extendedTimestamp:R,ntfsTimestamp:z,keepOrder:F,useWebWorkers:D,transferStreams:A,bufferedWrite:C,createTempStream:T,dataDescriptorSignature:I,signal:k,useUnicodeFileNames:v,compressionMethod:_,format:N?N.format:de,codecURI:N?N.codecURI:de,zt:N?N.versionNeeded:de,level:U,useCompressionStream:M,dataDescriptor:L,zip64:B,rawExtraField:W,Ft:P,Et:Z}}}(e,r,l),{comment:p}=d,m=l[hi];e.Ve.set(r,de);const h=e.Xe,y={};let S,g;d.bt.keepOrder&&(y.Dt=new E(e=>S=e)),e.Xe=y;try{const{bt:t}=d;0==t.level||t.compressionMethod!==de||t.xt||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;if(n&&!n.he)return!0;if($n(t)||Qn(t,jn))return!0;if(n)try{return await void 0,!0}catch{return!1}return!1}(ft())||(t.level=0,Po(e.warnings,_a,r));const o=await async function(e,t,{bt:r},o){if(r.xt&&!t&&!fc(e,o,fi))throw new f(Sa);let i;if(t){if(t=new No(t),await Oo(t),!t.readable&&!t.readUint8Array)throw new f(ga);({size:i}=t)}return n.assign({reader:t},function(e,t,n,r,o){const{xt:i,Rt:s,zipCrypto:a,password:c,rawPassword:l,encryptionStrength:u}=r;let{dataDescriptor:d,zip64:w,level:p,compressionMethod:m}=r,h=0,y=0,E=!1;if(i&&t){if(y=o[jo],y===de)throw new f(ha);if(m===de)throw new f(ya)}const S=!0===w,g=fc(e,o,ci);if(t&&s&&!g&&Rc(c,l))throw new f(sa);const b=t&&(Boolean(c&&Rc(c)||l&&Rc(l))||s&&g);t||(p=0,m=0);const x=zi(b,a,u);t&&(i?(o.uncompressedSize=y,h=n===de?hc(y)+x:n+(s?0:x)):n===de?(d=!0,(w||w===de)&&(w=E=!0,h=4294967296)):(o.uncompressedSize=y=n,h=(yc(m,p)?hc(y):y)+x));const R=!(b||t&&(0!==n||i)||yc(m,p));R&&!a&&fc(e,o,Ie)===de&&(d=!1);const z=S||E||y>=M,F=S||h>=M;if(z||F){if(!1===w)throw new f(ma);w=!0}return w=w||!1,{At:h,bt:{dataDescriptor:d,Ct:R,zip64:w,ct:S,Tt:E,st:z,it:F,uncompressedSize:y,level:p,compressionMethod:m,encrypted:b}}}(e,Boolean(t),i,r,o))}(e,c,d,l);({reader:c}=o);const p=Qa(e.writer),m=Ja(e.writer);let b=l.crc32===de?l[mi]:l.crc32;const x=o.bt.encrypted&&!t.zipCrypto;if(t.xt&&!t.Rt&&x&&(b=de),t.xt&&c&&!x&&b===de)throw new f(Ea);const R=function(e){const{rawFilename:t,lastModDate:n,rawLastModDate:r,lastAccessDate:o,creationDate:i,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:d,dataDescriptor:w,directory:p,rawExtraField:m,Ft:h,encryptionStrength:y,extendedTimestamp:E,ntfsTimestamp:S,xt:g,encrypted:b,st:x,it:R,uncompressedSize:z,Tt:F,crc32:D}=e;let{version:A,compressionMethod:C}=e;const T=!p&&yc(C,c);let I;const k=g||!T,v=l&&(e.bufferedWrite||!w||!x&&!R||k&&!F),_=v||l&&w&&(x||R);if(l&&(x||R)){const e=20,t=Xa(e);if(t.It(1),t.It(e-4),I=t.kt,v&&(t.vt(z),k)){const e=zi(b,u,y);t.vt(g?0:z+e)}}else I=Ee;let N,U,M,L,W,P;if(b&&!u){const e=Xa(Rc(Ua)+2);e.It(J),e._t(Ua),N=e.kt,N[8]=y}else N=Ee;if(E){const e=uc(n),t=(Z=e)>=da&&Z<=fa;if(t){const t=9+(o?4:0)+(i?4:0),n=Xa(t);L=1+(o?2:0)+(i?4:0),W=e,n.It(Q),n.It(t-4),n.Nt(L),n.Ut(e),o&&n.Ut(dc(uc(o))),i&&n.Ut(dc(uc(i))),M=n.kt}else M=Ee;if(S===de?!t||Boolean(o||i):S)try{const e=lc(n),t=Xa(36);t.It(10),t.It(32),t.Mt(4),t.It(1),t.It(24),t.vt(e),t.vt(o?lc(o):e),t.vt(i?lc(i):e),U=t.kt}catch{U=Ee}else U=Ee}else U=M=Ee;var Z;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=Ma||t===de&&n===de)if(r!=Oa||t===de&&n===de)P=Ee;else{const e=Xa(8);e.It(te),e.It(4),e.It((t===de?0:t)&O),e.It((n===de?0:n)&O),P=e.kt}else{const e=Ya(t===de?0:t),r=Ya(n===de?0:n),o=3+e.length+r.length,i=Xa(4+o);i.It(ee),i.It(o),i.Nt(1),i.Nt(e.length),i._t(e),i.Nt(r.length),i._t(r),P=i.kt}}catch{P=Ee}C===de&&(C=T?8:0),A===de&&(A=0!=C||p||b?20:10);const{zt:V}=e;T&&V!==de&&(A=A>V?A:V),l&&(A=A>45?A:45),b&&!u&&(A=A>51?A:51,g&&D!==de&&(N[4]=1),Sc(gt(N),9,C),C=99);const H=_?Rc(I):0,G=H+Rc(N,M,U,P,m,h);if(G+(e[ve]?67:0)>O)throw new f(ua);const j=new a(2e3*s.ceil(s.floor(n.getTime()/1e3)/2)),q=j<ue?ue:j>le?le:j,K=Rc(M)?new a(1e3*uc(n)):Rc(U)?n:q,{nt:Y,ot:X,rawLastModDate:$}=zc({version:A,bitFlag:Dc(c,d,w,b,C),compressionMethod:C,uncompressedSize:z,lastModDate:q,rawLastModDate:r,rawFilename:t,it:R,st:x,extraFieldLength:G}),ne=Xa(ce+Rc(t)+G),re=ne.kt,oe=gt(re);return ne.Ut(B),ne._t(Y),ne._t(t),_&&ne._t(I),ne._t(N),ne._t(M),ne._t(U),ne._t(P),ne._t(m),ne._t(h),w&&(R||gc(oe,18,0),x||gc(oe,22,0)),{Ot:re,Lt:oe,nt:Y,ot:X,lastModDate:K,Bt:K===q&&j.getTime()!=q.getTime(),rawLastModDate:$,encrypted:b,compressed:T,version:A,compressionMethod:C,Wt:L,Pt:W,ut:Ee,Zt:H,wt:M,ht:U,yt:P,ft:N,extraFieldLength:G}}(l=n.assign({},l,u.bt,d.bt,o.bt,{signature:l[mi],crc32:b,offset:e.offset-p,diskNumberStart:m,[ve]:e.options[ve]}));R.Bt&&Po(e.warnings,Na,r);const F=function({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r,o=Ee,i=0,s=e?20:12;return n&&(s+=4),t&&(o=new w(s),r=gt(o),n&&(i=4,gc(r,0,P))),{Vt:o,Ht:r,Gt:i}}(l),D=Rc(R.Ot,F.Vt);g=await async function(e,t,r,o,s){const{Ve:a,writer:c}=e,{keepOrder:l,dataDescriptor:u,Ct:d,signal:w}=s,{jt:p,Pe:m,qt:h,Kt:y}=o,S=e.options[ve];let g,b,x,R,F,D,A,C=m,T=0;const I=l&&h?h.Dt:de;a.set(t,C);try{s.bufferedWrite||!l||e.$e||e.Ke||e.Ye||!u&&!d?(g=!0,e.Ke++,A=s.createTempStream?await s.createTempStream():new z(de,de,{highWaterMark:fe}),A.size=0,await Oo(c)):(b=!0,e.Ye++,A=c,await I,await k()),await Oo(A);const m=Qa(c);e.Ze&&!g&&await sc(e,c),S&&!g&&Ka(o,e.offset-m);const{Ot:h}=p;g||await v();const y=Ja(c),x=ec(e,c);if(C.diskNumberStart=y,g||(F=!0,D=c.size,await ac(A,h)),C=await async function(e,t,{diskNumberStart:r,Dt:o},s,a,c){const{jt:l,Yt:u,Xt:d}=s,{nt:w,ot:p,lastModDate:m,rawLastModDate:h,encrypted:y,compressed:E,version:S,compressionMethod:g,ut:b,Zt:x,wt:R,Wt:z,Pt:F,ht:D,yt:A,ft:C}=l,{Vt:T}=u,{rawFilename:I,lastAccessDate:k,creationDate:v,password:_,rawPassword:N,level:U,useUnicodeFileNames:O,zip64:B,ct:W,st:P,it:Z,zipCrypto:V,dataDescriptor:H,directory:G,executable:j,versionMadeBy:q,rawComment:K,rawExtraField:Y,Et:X,useWebWorkers:J,transferStreams:Q,onstart:$,onprogress:ee,onend:te,signal:ne,encryptionStrength:re,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:se,externalFileAttributes:ae,uid:ce,gid:le,unixMode:ue,symlink:fe,setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:Ee,useCompressionStream:Se,xt:ge,Rt:be,format:xe,codecURI:Re}=c,ze={Dt:o,versionMadeBy:q,zip64:B,ct:W,directory:Boolean(G),executable:Boolean(j),filenameUTF8:Boolean(O),rawFilename:I,commentUTF8:Boolean(O),rawComment:K,ut:b,Zt:x,wt:R,ht:D,yt:A,ft:C,rawExtraField:Y,Et:X,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:se,externalFileAttributes:ae,diskNumberStart:r,uid:ce,gid:le,unixMode:ue,symlink:Boolean(fe),setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:Ee};let{crc32:Fe,uncompressedSize:De}=c,Ae=0;ge||(De=0);const{writable:Ce}=t;if(e){const n=e.size,r=An(Wo(e,{size:n})),o={options:{codecType:sr,inputSize:n,level:U,rawPassword:N,password:_,encryptionStrength:re,zipCrypto:y&&V,passwordVerification:y&&V&&h>>8&L,computeCrc32:!ge,compressed:E&&!ge,encrypted:y&&!be,useWebWorkers:J,useCompressionStream:Se,transferStreams:Q,format:xe,codecURI:Re,compressionMethod:g},config:a,ae:{signal:ne,size:n,onstart:$,onprogress:ee,onend:te}};try{const e=await Lr({readable:r,writable:Ce},o);if(Ae=e.outputSize,t.size+=Ae,ge||(De=e.inputSize,y&&!V||(Fe=e.crc32)),!Z&&Ae>=M||!P&&De>=M)throw new f(ma)}catch(e){const{outputSize:n}=o;throw n!==de?t.size+=n:bt(e)&&e.outputSize!==de&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,jt:r,Yt:o},{zip64:s,zipCrypto:a,xt:c,dataDescriptor:l}){const{ot:u,encrypted:d}=r,{Ht:f,Gt:w}=o;d&&!a&&!c||e===de||(gc(u,10,e),l&&gc(f,w,e)),s?l&&(bc(f,w+4,i(t)),bc(f,w+12,i(n))):(gc(u,14,t),gc(u,18,n),l&&(gc(f,w+4,t),gc(f,w+8,n)))}({crc32:Fe,compressedSize:Ae,uncompressedSize:De,jt:l,Yt:u},c),H&&await ac(t,T),n.assign(ze,{uncompressedSize:De,compressedSize:Ae,lastModDate:m,rawLastModDate:h,creationDate:v,lastAccessDate:k,encrypted:Boolean(y),zipCrypto:Boolean(V),size:d+Ae,compressionMethod:g,version:S,nt:w,ot:p,signature:Fe,crc32:!y||V||ge?Fe:de,Wt:z,Pt:F,st:P,it:Z}),ze}(r,A,C,o,ft(),s),g||(F=!1),a.set(t,C),C.filename=t,g){if(await E.all([A.writable.getWriter().close(),I]),await k(),e.Ze&&await sc(e,c),R=!0,D=c.size,await v(),C.diskNumberStart=Ja(c),C.offset=ec(e,c),S){const t=o.Xt;Ka(o,e.offset-Qa(c)),C.size+=o.Xt-t}!function({rawFilename:e,encrypted:t,zip64:n,Zt:r,crc32:o,compressedSize:s,uncompressedSize:a,st:c,it:l},u,{dataDescriptor:d,xt:f}){if(d||((!t||f&&o!==de)&&gc(u,14,o),l||gc(u,18,s),c||gc(u,22,a)),n&&r){const t=ce+Rc(e)+4;bc(u,t,i(a)),bc(u,t+8,i(s))}}(C,p.Lt,s),await ac(c,p.Ot),await cc(A.readable,c,w,e=>T+=e),c.size+=A.size,R=!1}else C.diskNumberStart=y,C.offset=x;return e.offset+=C.size,C}catch(n){if(R||F){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-D,g&&(e.offset+=T)}throw a.delete(t),n}finally{if(g&&e.Ke--,b&&e.Ye--,y&&y(I),x&&x(),g&&A&&A.dispose)try{await A.dispose()}catch{}}async function k(){e.$e=!0;const{et:t}=e;e.et=new E(t=>x=()=>{e.$e=!1,t()}),await t}async function v(){$a(c,Rc(p.Ot))&&await c.closeDisk()}}(e,r,c,{jt:R,Yt:F,Xt:D,Pe:y,qt:h,Kt:S},l)}catch(t){throw e.Ve.delete(r),t}finally{S&&S(h&&h.Dt)}return n.assign(g,{name:r,comment:p,extraField:m}),new xi(g)}(e,r,l,u)}catch(t){throw e.He.delete(r),t}finally{const e=Wa.shift();e?e():Ba--}}(u,e,r,l);d.add(p);const m=()=>d.delete(p);return E.prototype.then.call(p,m,m),Ha(u,p)}remove(e){const{He:t,Ve:n}=this;if(typeof e==he&&(e=n.get(e)),e&&e.filename!==de){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=Ee,n={}){const r=this,{je:o,writer:s}=this,{writable:a}=s;if(r.Je)return Va(s);if(!(e instanceof w))throw new f(Js);if(Rc(e)>O)throw new f(Xs);for(;o.size;)await E.allSettled(t.from(o));await E.allSettled(r.qe.map(e=>e.Jt));const c=r.qe.filter(e=>e.Qt&&!e.$t);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.$t=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const{en:o,tn:s}=function(e){let t=0,n=!1;for(const[,r]of e){const{rawFilename:e,ft:o,rawComment:i,ht:s,yt:a,rawExtraField:c,Et:l,Wt:u,Pt:d,ct:w,uncompressedSize:p,compressedSize:m}=r;let{st:h,it:y}=r;w||(h&&p<M&&(h=r.st=!1),y&&m<M&&(y=r.it=!1)),n=n||h||y;const E=r.offset>=M,S=r.diskNumberStart>=O;let g,b;if(E||S||h||y){const e=4+(h?8:0)+(y?8:0)+(E?8:0)+(S?4:0),t=Xa(e);t.It(1),t.It(e-4),h&&t.vt(p),y&&t.vt(m),E&&t.vt(r.offset),S&&t.Ut(r.diskNumberStart),g=t.kt}else g=Ee;if(r.ut=g,r.nn=E,r.lt=S,d===de)b=Ee;else{const e=Xa(9);e.It(Q),e.It(5),e.Nt(u),e.Ut(d),b=e.kt}r.wt=b;const x=Rc(g,o,s,a,b,c,l);if(x>O)throw new f(ua);t+=q+Rc(e,i)+x}return{en:t,tn:n}}(e.Ve),{rn:a,sn:c,an:l}=await async function(e,n,r){const{Ve:o,writer:i}=e,s=new w(n);await Oo(i);let a=0,c=0,l=Ja(i),u=Qa(i),d=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:f,ut:w,ft:p,wt:m,ht:h,yt:y,rawExtraField:E,Et:S,rawComment:g,versionMadeBy:b,nt:x,ot:R,st:z,it:F,lt:D,nn:A,internalFileAttributes:C,externalFileAttributes:T,diskNumberStart:I,uncompressedSize:k,compressedSize:v}=n,_=Rc(w,p,m,h,y,E,S),N=q+Rc(f,g)+_;$a(i,a+N-c)&&(await ac(i,s.slice(c,a)),c=a,d=0,await i.closeDisk()),0==e&&(l=Ja(i),u=Qa(i)),z||gc(R,18,k),F||gc(R,14,v),(A||D)&&n.version<45&&Sc(R,0,45);const U=Xa(N);if(U.Ut(V),U.It(b),U._t(x.subarray(0,24)),U.It(_),U.It(Rc(g)),U.It(D?O:I),U.It(C),U.Ut(T),U.Ut(A?M:t),U._t(f),U._t(w),U._t(p),U._t(m),U._t(h),U._t(y),U._t(E),U._t(S),U._t(g),xc(s,U.kt,a),a+=N,d++,r.onprogress)try{await r.onprogress(e+1,o.size,new xi(n))}catch{}}return await ac(i,c?s.slice(c):s),{rn:{diskNumber:l,diskOffset:u},sn:{diskNumber:Ja(i),cn:d},an:s}}(e,o,r),u=await async function(e,t,n){const r=pc(e,n,"signCentralDirectory");if(r){const n=await r(t),o=Rc(n);if(o>O)throw new f(Ia);const i=Xa(6+o);i.Ut(Z),i.It(o),i._t(n);const{writer:s}=e;return $a(s,Rc(i.kt))&&await s.closeDisk(),await ac(s,i.kt),6+o}return 0}(e,l,r);await async function(e,t,n,r){const{writer:o}=e,{rn:s,sn:a,ln:c,tn:l}=r;let{en:u}=r,d=e.Ve.size,w=s.diskNumber,p=ec(e,s);const m=Rc(t);if(m>O)throw new f(Xs);let h=fc(e,n,ai),y=Ja(o);if($a(o,(h?98:K)+m)&&y++,p>=M||u>=M||d>=O||y>=O){if(!1===h)throw new f(ma);h=!0}else h===de&&l&&(h=!0);const E=Xa(h?98:K);$a(o,Rc(E.kt)+m)&&await o.closeDisk(),y=Ja(o);let S=y==a.diskNumber?a.cn:0;h&&(E.Ut(G),E.vt(44),E.It(45),E.It(45),E.Ut(y),E.Ut(w),E.vt(S),E.vt(d),E.vt(u),E.vt(p),E.Ut(j),E.Ut(y),E.vt(i(ec(e,o))+i(u)+i(c)),E.Ut(y+1),fc(e,n,"supportZip64SplitFile",!0)&&(y=O,w=O),S=O,d=O,p=M,u=M),E.Ut(H),E.It(y),E.It(w),E.It(S),E.It(d),E.Ut(u),E.Ut(p),E.It(m),await ac(o,E.kt),m&&await ac(o,t)}(e,n,r,{rn:a,sn:c,en:o,ln:u,tn:s})}(r,e,n),r.Je=!0,!Mo(s)&&fc(r,n,Ae)||await a.getWriter().close(),Va(s)}[Se](){return this.close()}}class Za extends E{then(e,t){const{un:n}=this;return n&&(n.$t=!0),super.then(e,t)}}function Va(e){return e.getData?e.getData():e.writable}function Ha(e,t){const r=new Za((e,n)=>E.prototype.then.call(t,e,n)),o={};return r.un=o,o.Jt=E.prototype.then.call(r,de,e=>n.assign(o,{Qt:!0,error:e})),e.qe.push(o),r}async function Ga(e,t){try{await e.writer.writable.abort(t)}catch{}}function ja(e,t,n){e.je.add(t),t.catch(e=>{try{n(e)}catch{}})}function qa(e){if(!e)return Ee;if(!(e instanceof c))throw new f(aa);let t=0,n=0;e.forEach((e,n)=>{if(Je(n,O,ca),!(e instanceof w))throw new f(la);if(Rc(e)>O)throw new f(ua);t+=4+Rc(e)});const r=new w(t),o=gt(r);return e.forEach((e,t)=>{Sc(o,n,t),Sc(o,n+2,Rc(e)),xc(r,e,n+4),n+=4+Rc(e)}),r}function Ka(e,t){const{jt:n}=e;let{Ot:r,extraFieldLength:o}=n,i=64-(t+Rc(r))%64;i<4&&(i+=64);const s=new w(i),a=gt(s);Sc(a,0,$),Sc(a,2,i-4);const c=r;n.Ot=r=new w(Rc(c)+i),xc(r,c),xc(r,s,Rc(c));const l=gt(r);Sc(l,28,o+i),n.Lt=l,e.Xt+=i}function Ya(e){const t=new w(4);gt(t).setUint32(0,e,!0);let n=4;for(;n>1&&0===t[n-1];)n--;return t.subarray(0,n)}function Xa(e){const t=new w(e),n=gt(t);let r=0;return{kt:t,Nt:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},It:e=>{Sc(n,r,e),r+=2},Ut:e=>{gc(n,r,e),r+=4},vt:e=>{bc(n,r,i(e)),r+=8},_t:e=>{xc(t,e,r),r+=Rc(e)},Mt:e=>r+=e}}function Ja(e){const{diskNumber:t=0}=e;return t}function Qa(e){const{diskOffset:t=0}=e;return t}function $a(e,t){const{availableSize:n=fe}=e;return t>n}function ec(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.Ge:0)}function tc(e){const t=gt(e);let n=0;for(;n+4<=Rc(e);){const r=4+Ec(t,n+2);if(1==Ec(t,n))return tc(Et(e.subarray(0,n),e.subarray(s.min(n+r,Rc(e)))));n+=r}return e}async function nc(e,t,n,r){if(r>0){const{writer:o}=e;let i=0;try{await cc(Wo(t,{offset:n,size:r}),o,de,e=>i+=e)}catch(t){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}throw t}finally{o.size+=i,e.offset+=i}}}async function rc(e,t){const n=await Bo(e,t,ce);if(Rc(n)<ce)return ce;const r=gt(n);return ce+Ec(r,26)+Ec(r,28)}function oc(e,{offset:t,diskNumberStart:n}){return t+(e.Ne?e.Ne(n):0)}function ic(){const e=new w(4);return gc(gt(e),0,W),e}async function sc(e,t){delete e.Ze,await ac(t,ic()),e.offset+=4}async function ac(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=Rc(t),await r.write(t)}finally{r.releaseLock()}}async function cc(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new D({async write(e){await o.ready,await o.write(e),r(Rc(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function lc(e){if(e){const t=(i(e.getTime())+i(116444736e5))*i(1e4);return t<wa?wa:t>pa?pa:t}}function uc(e){return s.floor(e.getTime()/1e3)}function dc(e){return s.min(fa,s.max(da,e))}function fc(e,t,n,r){const o=t[n]===de?e.options[n]:t[n];return o===de?r:o}function wc(e,t,n,r){const i=fc(e,t,n,r);if(null===i)return r;if(i!==de&&(typeof i.getTime!=pe||o.isNaN(i.getTime())))throw new f(ea);return i}function pc(e,t,n){return je(fc(e,t,n))}function mc(e,t,n,r){return $e(fc(e,t,n,r))}function hc(e){return e+5*(s.floor(e/16383)+1)}function yc(e,t){return e===de?t===de||t>0:0!==e}function Ec(e,t){return e.getUint16(t,!0)}function Sc(e,t,n){e.setUint16(t,n,!0)}function gc(e,t,n){e.setUint32(t,n,!0)}function bc(e,t,n){e.setBigUint64(t,n,!0)}function xc(e,t,n){e.set(t,n)}function Rc(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function zc({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:s,rawFilename:a,it:c,st:l,extraFieldLength:u}){const d=Xa(26),f=d.kt,w=gt(f);if(d.It(e),d.It(t),d.It(n),s===de){const e=new m(1),t=gt(e);Sc(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Sc(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),s=e[0]}return d.Ut(s),d.Mt(4),c||o!==de?d.Ut(c?M:o):d.Mt(4),l||r!==de?d.Ut(l?M:r):d.Mt(4),d.It(Rc(a)),d.It(u),{nt:f,ot:w,rawLastModDate:s}}function Fc(e){return e.every(e=>e>=32&&e<=126)}function Dc(e,t,n,r,o){let i=0;return t&&(i|=ne),n&&(i|=8),8!=o&&9!=o||(e>=0&&e<=3&&(i|=6),e>3&&e<=5&&(i|=4),9==e&&(i|=2)),r&&(i|=1),i}function Ac(e,t){if(!e)return!1;const{dn:n}=e;return n?n.includes(t):Qn(e,t)}const Cc=1048576,Tc=".zip.js-temp",Ic=1048576,kc=1048576,vc=".zip.js-temp",_c="createSyncAccessHandle is only available in dedicated workers";try{!function(e){const t=mt(yt(e));n.assign(ot,t),n.assign(dt,t)}({baseURI:void 0===b&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===b?location.href:U&&"SCRIPT"===U.tagName.toUpperCase()&&U.src||new d("zip-core.min.js",b.baseURI).href})}catch{}e.BlobReader=fo,e.BlobWriter=wo,e.Data64URIReader=class extends ao{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{fn:e,wn:r,size:s.floor(.75*(t-r))})}readUint8Array(e,t){const{wn:n,fn:r}=this,o=new w(t),i=4*s.floor(e/3),a=atob(r.substring(i+n,4*s.ceil((e+t)/3)+n)),c=e-3*s.floor(i/4);let l=0;for(let e=c;e<c+t&&e<a.length;e++)o[e-c]=a.charCodeAt(e),l++;return l<o.length?o.subarray(0,l):o}},e.Data64URIWriter=class extends co{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",pn:""})}writeUint8Array(e){const t=this;let n,o=t.pn;const i=t.pn.length;for(t.pn="",n=0;n<3*s.floor((i+e.length)/3)-i;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.pn+=r.fromCharCode(e[n]);o.length>2?t.data+=R(o):t.pn=o+t.pn}getData(){return this.data+R(this.pn)}},e.ERR_ABORTED=Ge,e.ERR_AMBIGUOUS_ARCHIVE=Mi,e.ERR_BAD_FORMAT=Fi,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Ci,e.ERR_DUPLICATED_NAME=Ys,e.ERR_ENCRYPTED=ki,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=Oi,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=Ui,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Ai,e.ERR_EOCDR_NOT_FOUND=Di,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Ii,e.ERR_HTTP_RANGE=Kr,e.ERR_HTTP_RESOURCE_CHANGED=Yr,e.ERR_HTTP_STATUS=qr,e.ERR_INVALID_AUTHENTICATION_CODE=Wt,e.ERR_INVALID_BASE_URI=tt,e.ERR_INVALID_CODEC_DEFINITION=In,e.ERR_INVALID_CODEC_MODULE=vn,e.ERR_INVALID_COMMENT=Xs,e.ERR_INVALID_COMMENT_TYPE=Js,e.ERR_INVALID_COMPRESSED_DATA=Zn,e.ERR_INVALID_CRC32=Vn,e.ERR_INVALID_DATE=ea,e.ERR_INVALID_ENCRYPTION_STRENGTH=ra,e.ERR_INVALID_ENTRY=ka,e.ERR_INVALID_ENTRY_COMMENT=Qs,e.ERR_INVALID_ENTRY_COMMENT_TYPE=$s,e.ERR_INVALID_ENTRY_NAME=ta,e.ERR_INVALID_EXTRAFIELD=aa,e.ERR_INVALID_EXTRAFIELD_DATA=ua,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=la,e.ERR_INVALID_EXTRAFIELD_TYPE=ca,e.ERR_INVALID_FILENAME_VALIDATION=Wi,e.ERR_INVALID_FUNCTION_OPTION=Pe,e.ERR_INVALID_GID=Ra,e.ERR_INVALID_LEVEL=Ta,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=Pi,e.ERR_INVALID_MAX_WORKERS=et,e.ERR_INVALID_MSDOS_ATTRIBUTES=Aa,e.ERR_INVALID_MSDOS_DATA=Ca,e.ERR_INVALID_PASSWORD=Bt,e.ERR_INVALID_PASSWORD_TYPE=Ve,e.ERR_INVALID_PASS_THROUGH_VALUE=He,e.ERR_INVALID_READER=ga,e.ERR_INVALID_SIGNAL=Ze,e.ERR_INVALID_SIGNATURE_DATA=Ia,e.ERR_INVALID_STRICTNESS=Bi,e.ERR_INVALID_UID=xa,e.ERR_INVALID_UNCOMPRESSED_SIZE=Pn,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=Fa,e.ERR_INVALID_UNIX_ID_SIZE=Da,e.ERR_INVALID_UNIX_MODE=za,e.ERR_INVALID_URI=nt,e.ERR_INVALID_VERSION=na,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Xr,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Ti,e.ERR_OVERLAPPING_ENTRY=Ni,e.ERR_RESERVED_COMPRESSION_METHOD=kn,e.ERR_SPLIT_ZIP_FILE=_i,e.ERR_UNDEFINED_COMPRESSION_METHOD=ya,e.ERR_UNDEFINED_CRC32=Ea,e.ERR_UNDEFINED_READER=Sa,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=ha,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=Li,e.ERR_UNSUPPORTED_COMPRESSION=_n,e.ERR_UNSUPPORTED_CONTEXT=_c,e.ERR_UNSUPPORTED_CRYPTO_API=Zt,e.ERR_UNSUPPORTED_ENCRYPTION=vi,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=sa,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=oa,e.ERR_UNSUPPORTED_FORMAT=ma,e.ERR_UNSUPPORTED_SPLIT_USDZ=ia,e.ERR_UNSUPPORTED_UINT64=Zi,e.ERR_WORKER_STARTUP_TIMEOUT=ur,e.ERR_WRITER_NOT_INITIALIZED=Jr,e.ERR_WRITER_SIZE_NOT_WRITABLE=Qr,e.ERR_ZIP_CRYPTO_LAST_MOD_DATE=va,e.ERR_ZIP_NOT_EMPTY=ba,e.HttpRangeReader=class extends ko{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=ko,e.Reader=ao,e.SplitDataReader=vo,e.SplitDataWriter=_o,e.TextReader=class extends fo{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends wo{constructor(e){super(),n.assign(this,{encoding:e,hn:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,hn:t}=this,n=await super.getData();return n.text&&t?n.text():function(e,t){return jr(e,t,!1)}(new w(await n.arrayBuffer()),e)}},e.Uint8ArrayReader=class extends ao{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{kt:e,size:e.length})}readUint8Array(e,t){return this.kt.slice(e,e+t)}},e.Uint8ArrayWriter=class extends co{constructor(e){super(),this.yn=e||262144}init(e=0){n.assign(this,{offset:0,kt:new w(e>0?e:this.yn)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.kt.length){let e=t.kt.length?2*t.kt.length:t.yn;for(;e<n;)e*=2;const r=t.kt;t.kt=new w(e),t.kt.set(r)}t.kt.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.kt.length?this.kt:this.kt.slice(0,this.offset)}},e.VERSION="2.13.0",e.WARNING_APPENDED_DATA=Yi,e.WARNING_CLAMPED_LAST_MODIFICATION_DATE=Na,e.WARNING_COMPRESSED_PATCHED_DATA=Gi,e.WARNING_COMPRESSION_UNAVAILABLE=_a,e.WARNING_DUPLICATE_FILENAME=$i,e.WARNING_MALFORMED_EXTRA_FIELD=ji,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=rs,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=os,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=is,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME=ns,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=es,e.WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY=ts,e.WARNING_PREPENDED_CENTRAL_DIRECTORY=Ji,e.WARNING_PREPENDED_DATA=Xi,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=Qi,e.WARNING_UNKNOWN_VERSION=Hi,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=qi,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=Vi,e.WARNING_WRAPPED_ENTRIES_COUNT=Ki,e.Writer=co,e.ZipReader=fs,e.ZipReaderStream=ws,e.ZipWriter=Pa,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new z;this.readable=t,this.zipWriter=new Pa(n,e),this.je=new l}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:o}=new z({start(e){n=e},flush:()=>{!async function(){try{await t.close()}catch(e){await Ga(t,e)}}()}});return ja(this,this.zipWriter.add(e,r),e=>n.error(e)),{readable:this.readable,writable:o}}writable(e){let t;const{readable:n,writable:r}=new z({start(e){t=e}});return ja(this,this.zipWriter.add(e,n),e=>t.error(e)),r}async close(e,n={}){const{zipWriter:r}=this,o=(await E.allSettled(t.from(this.je))).filter(e=>"rejected"==e.status).map(e=>e.reason);if(o.length){const[e]=o;try{e.entryErrors=o}catch{}throw await Ga(r,e),e}try{return await r.close(e,n)}catch(e){throw await Ga(r,e),e}}},e.configure=function(e){n.assign(dt,mt(yt(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=Ic}=e;return function(){const e=[];let n,r,o,i=0,s=!1;const a=new D({async write(o){s?await n.write(o):(e.push(o),i+=o.length,i>t&&await async function(){const t=new z;r=Cn(t.readable),n=t.writable.getWriter(),s=!0;for(const t of e)await n.write(t);e.length=0}())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:a,readable:new F({async pull(t){if(s){if(!o){const e=await r;o=e.stream().getReader()}const{value:e,done:n}=await o.read();n?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){o&&await o.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(n){try{await n.abort()}catch{}n=null}r&&(r.catch(()=>{}),r=null),e.length=0}}}},e.createOPFSTempStream=function(e={}){const{thresholdBytes:n=Cc,directoryName:r=Tc,getDirectory:o=()=>T.storage.getDirectory()}=e;let i;function s(){return i||(i=E.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return function(){const e=[];let r,o,i,a,c=0,l=!1;const u=new D({async write(a){l?await i.write(a):(e.push(a),c+=a.length,c>n&&await async function(){const n=await s();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join(""),o=await n.getFileHandle(r,{create:!0}),i=(await o.createWritable()).getWriter(),l=!0;for(const t of e)await i.write(t);e.length=0}())},async close(){i&&(await i.close(),i=null)}});let d=0;return{writable:u,readable:new F({async pull(t){if(l){if(!a){const e=await o.getFile();a=e.stream().getReader()}const{value:e,done:n}=await a.read();n?t.close():t.enqueue(e)}else d<e.length?t.enqueue(e[d++]):t.close()},async cancel(e){a&&await a.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await s();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=kc,directoryName:r=vc,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new f(_c);const i=o||(()=>T.storage.getDirectory());let a;function c(){return a||(a=E.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),a}return function(){const e=[];let r,o,i=0,a=!1,l=0,u=0;const d=new D({async write(s){a?(o.write(s,{at:l}),l+=s.length):(e.push(s),i+=s.length,i>n&&await async function(){const n=await c();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join("");const i=await n.getFileHandle(r,{create:!0});o=await i.createSyncAccessHandle(),a=!0;for(const t of e)o.write(t,{at:l}),l+=t.length;e.length=0}())},close(){o&&o.flush()}});let f=0;return{writable:d,readable:new F({pull(t){if(a){const e=l-u;if(e<=0)return void t.close();const n=new w(s.min(524288,e)),r=o.read(n,{at:u});r?(u+=r,t.enqueue(n.subarray(0,r))):t.close()}else f<e.length?t.enqueue(e[f++]):t.close()}},{highWaterMark:0}),dispose:async function(){if(o){try{o.close()}catch{}o=null}if(r){try{const e=await c();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=function(){return"application/octet-stream"},e.getRegisteredCodecs=Ln,e.getSupportedCompressionMethods=function(){const{CompressionStream:e,DecompressionStream:t,CompressionStreamFallback:n,DecompressionStreamFallback:r}=ft(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:Ac(n,Hn)||Ac(e,Hn)||Ac(e,jn),decompression:Ac(r,Hn)||Ac(t,Hn)||Ac(t,jn),registered:!1},{compressionMethod:9,compression:!1,decompression:Ac(r,Gn)||Ac(t,Gn),registered:!1}];for(const e of Ln()){const t=Bn(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==pe:de,decompression:t?typeof t.DecompressionStream==pe:de,registered:!0})}return o},e.isZipFile=ps,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:i,DecompressionStream:s,versionNeeded:a}=e;if(!o.isInteger(t)||t<0||t>O||typeof n!=he||!n.length)throw new f(In);if(Nn.includes(t))throw new f(kn);const c=typeof i==pe||typeof s==pe;if(!(c||typeof r==he&&r.length))throw new f(In);Un.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:a}),c&&Wn(n,{CompressionStream:i,DecompressionStream:s})},e.resetConfiguration=function(){for(const e of ut)delete dt[e];n.assign(dt,ot)},e.terminateWorkers=async function(){await E.allSettled(_r.map(e=>(Vr(e),e.terminate()))),dr=de,fr=!1},e.unregisterCodec=function(e){const t=Un.get(e);if(t){let n;Un.delete(e),Un.forEach(e=>n=n||e.format==t.format),n||Mn.delete(t.format)}}});
|