single-file-cli 2.6.4 → 2.7.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/build.sh +1 -1
- package/deno.json +1 -1
- package/lib/browser.js +30 -3
- package/lib/cdp-client.js +26 -23
- package/lib/single-file-archive.js +7 -7
- package/lib/single-file-bundle.js +1 -1
- package/lib/version.js +1 -1
- package/options.js +2 -2
- package/package.json +1 -1
- package/test/e2e/lazy-loading.test.js +204 -0
- package/test/e2e/timeouts.test.js +101 -14
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
var{Array:je,Object:U,String:ma,Number:pe,BigInt:Ce,Math:W,Date:yt,Map:gt,Set:Sr,Response:Wf,URL:Ir,Error:I,Uint8Array:V,Uint16Array:Xf,Uint32Array:Oo,DataView:tn,Blob:An,Promise:ge,TextEncoder:wa,TextDecoder:Dr,crypto:st,btoa:_a,TransformStream:we,ReadableStream:it,WritableStream:at,CompressionStream:Ta,DecompressionStream:pa,navigator:zn,Worker:mr,setTimeout:Xr,clearTimeout:Zr}=typeof globalThis<"u"?globalThis:self,me=4294967295,X=65535,rt=255,xn=8,Wn=9,St=0,Kr=99,Fo=67324752,ir=134695760,Zf=808471376,xo=ir,Kf=134630224,Po=84233040,Mt=33639248,Co=101010256,As=101075792,Ri=117853008,yn=46,Ie=22,vt=20,et=56,Ra=Ie+vt+et,Lo=12,Uo=20,Kt=4,Ht=4,qr=1,vo=39169,Mo=10,Bo=1,Ai=21589,qf=28789,jf=25461,Ho=6534,zo=30837,ko=30805,$f=22613,Jf=13,Nr=1,Go=6,Qf=2,eu=4,tu=6,br=8,Aa=32,ya=64,Or=2048,Sa=8192,Fr=16,ys=1,Ss=2,Is=4,Ds=32,En=61440,kn=16384,Yo=40960,nu=32768,Gn=73,wr=420,Ns=2048,bs=1024,Os=512,ru=10,su=20,xr=45,Ia=51,iu=20,Da=768,hn="/",Ve=30,au=0,Xn=10,ar=14,or=18,ou=22,cu=24,qt=4,Na=new yt(2107,11,31,23,59,58),Pr=new yt(1980,0,1),w=void 0,cn=1/0,It="undefined",De="function",lu="object",Sn="string",fu="number",uu="boolean",fe=new V,du="filenameEncoding",Eu="commentEncoding",hu="decodeText",gu="extractPrependedData",mu="extractAppendedData",Vo="password",Wo="rawPassword",Xo="passThrough",Zo="signal",wu="checkPasswordOnly",_u="checkOverlappingEntryOnly",Tu="checkOverlappingEntry",pu="checkAmbiguity",Ru="checkLocalDirectory",Au="checkSignature",yu="checkCrc32",Su="checkAuthenticationCode",Ko="useWebWorkers",qo="useCompressionStream",jo="transferStreams",$o="preventClose",Iu="encryptionStrength",Du="extendedTimestamp",Nu="ntfsTimestamp",bu="keepOrder",Ou="level",Fu="bufferedWrite",xu="createTempStream",Pu="dataDescriptorSignature",Cu="useUnicodeFileNames",Jo="dataDescriptor",Lu="supportZip64SplitFile",Uu="encodeText",hr="offset",Zn="usdz",vu="unixExtraFieldType",Mu="localExtraField",Bu="centralExtraField",Hu="strictness",zu="filenameValidation",ku="normalizeFilename",Qo="maxAppendedDataSize",Gu="decryptCentralDirectory",Yu="signCentralDirectory",ec="filename",tc="comment",nn="strict",yi="balanced",Gt="tolerant",Vu="Invalid option (must be a function)",Wu="Invalid signal (must be an AbortSignal instance)",Xu="Invalid password (password must be a string, rawPassword must be a Uint8Array)";function Si(t){if(t&&typeof t!=De)throw new I(Vu);return t}function nc(t){if(t&&(typeof t.addEventListener!=De||typeof t.aborted!=uu))throw new I(Wu);return t||w}function rc(t,e){if(t&&typeof t!=Sn||e&&!(e instanceof V))throw new I(Xu)}function sc(t,e,n){if(!pe.isInteger(t)||t<0||t>e)throw new I(n)}function Mn(t,e,n){t!==w&&sc(t,e,n)}function jr(t){return typeof t==Sn&&t.trim()?pe(t):t}var ic=64*1024,Zu=64,ac=1,Ku="Invalid maxWorkers (must be an integer greater than 0)",oc=2;try{typeof zn!=It&&zn.hardwareConcurrency&&(oc=zn.hardwareConcurrency)}catch{}var Ii={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:ic,maxWorkers:oc,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof Ta!=It&&Ta,DecompressionStream:typeof pa!=It&&pa},cc="maxWorkers",qu=["baseURI","wasmURI","workerURI"],ju=["useCompressionStream","useWebWorkers","transferStreams"],lc=["chunkSize",cc,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],fc=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],uc=[...qu,...ju,...lc,...fc],Kn={...Ii};function rn(){return Kn}function Di(t){return dc(t.chunkSize)}function dc(t){return t=jr(t),pe.isInteger(t)&&t>=ac?W.max(t,Zu):ic}function Pn(t){U.assign(Kn,Ec(hc(t)))}function Ec(t){let e={};for(let n of uc){let r=t[n];r!==w&&(e[n]=$u(n,r))}return e}function $u(t,e){if(lc.includes(t)){if(e=jr(e),t==cc&&(!pe.isInteger(e)||e<ac))throw new I(Ku)}else fc.includes(t)&&Si(e);return e}function hc(t){t=t||{};let{CompressionStreamZlib:e,DecompressionStreamZlib:n}=t;if(e===w&&n===w)return t;let r=U.assign({},t);return r.CompressionStreamFallback===w&&(r.CompressionStreamFallback=e),r.DecompressionStreamFallback===w&&(r.DecompressionStreamFallback=n),r}function Ju(t){let e=Ec(hc(t));U.assign(Ii,e),U.assign(Kn,e)}function Sm(){for(let t of uc)delete Kn[t];U.assign(Kn,Ii)}function zt(t,e){let n=new V(t.length+e.length);return n.set(t),n.set(e,t.length),n}function gc(t){return t.byteOffset||t.byteLength!=t.buffer.byteLength?new V(t):t}function K(t){return new tn(t.buffer,t.byteOffset,t.byteLength)}var Yn=[[],[],[],[],[],[],[],[]];for(let t=0;t<256;t++){let e=t;for(let n=0;n<8;n++)e=e&1?e>>>1^3988292384:e>>>1;Yn[0][t]=e}for(let t=0;t<256;t++)for(let e=1;e<8;e++){let n=Yn[e-1][t];Yn[e][t]=n>>>8^Yn[0][n&255]}var[ba,Qu,ed,td,nd,rd,sd,id]=Yn,jt=class{constructor(e){this.crc=e||-1}append(e){let n=this.crc|0,r=e.length|0,i=0;if(r>=8&&e.buffer){let s=new tn(e.buffer,e.byteOffset,r),a=r-8;for(;i<=a;i+=8){let o=n^s.getInt32(i,!0),c=s.getInt32(i+4,!0);n=id[o&255]^sd[o>>>8&255]^rd[o>>>16&255]^nd[o>>>24&255]^td[c&255]^ed[c>>>8&255]^Qu[c>>>16&255]^ba[c>>>24&255]}}for(;i<r;i++)n=n>>>8^ba[(n^e[i])&255];this.crc=n}get(){return~this.crc}},Cr=class extends we{constructor(){let e,n=new jt;super({transform(r,i){n.append(r),i.enqueue(r)},flush(){let r=new V(4);new tn(r.buffer).setUint32(0,n.get()),e.value=r}}),e=this}};function _r(t){if(typeof wa==It){t=unescape(encodeURIComponent(t));let e=new V(t.length);for(let n=0;n<e.length;n++)e[n]=t.charCodeAt(n);return e}else return new wa().encode(t)}var Me={concat(t,e){if(t.length===0||e.length===0)return t.concat(e);let n=t[t.length-1],r=Me.getPartial(n);return r===32?t.concat(e):Me._shiftRight(e,r,n|0,t.slice(0,t.length-1))},bitLength(t){let e=t.length;if(e===0)return 0;let n=t[e-1];return(e-1)*32+Me.getPartial(n)},clamp(t,e){if(t.length*32<e)return t;t=t.slice(0,W.ceil(e/32));let n=t.length;return e=e&31,n>0&&e&&(t[n-1]=Me.partial(e,t[n-1]&2147483648>>e-1,1)),t},partial(t,e,n){return t===32?e:(n?e|0:e<<32-t)+t*1099511627776},getPartial(t){return W.round(t/1099511627776)||32},_shiftRight(t,e,n,r){for(r===void 0&&(r=[]);e>=32;e-=32)r.push(n),n=0;if(e===0)return r.concat(t);for(let a=0;a<t.length;a++)r.push(n|t[a]>>>e),n=t[a]<<32-e;let i=t.length?t[t.length-1]:0,s=Me.getPartial(i);return r.push(Me.partial(e+s&31,e+s>32?n:r.pop(),1)),r}},Lr={bytes:{fromBits(t){let n=Me.bitLength(t)/8,r=new V(n),i;for(let s=0;s<n;s++)(s&3)===0&&(i=t[s/4]),r[s]=i>>>24,i<<=8;return r},toBits(t){let e=[],n,r=0;for(n=0;n<t.length;n++)r=r<<8|t[n],(n&3)===3&&(e.push(r),r=0);return n&3&&e.push(Me.partial(8*(n&3),r)),e}}},mc={};mc.sha1=class{constructor(t){let e=this;e.blockSize=512,e._init=[1732584193,4023233417,2562383102,271733878,3285377520],e._key=[1518500249,1859775393,2400959708,3395469782],t?(e._h=t._h.slice(0),e._buffer=t._buffer.slice(0),e._length=t._length):e.reset()}reset(){let t=this;return t._h=t._init.slice(0),t._buffer=[],t._length=0,t}update(t){let e=this;typeof t=="string"&&(t=Lr.utf8String.toBits(t));let n=e._buffer=Me.concat(e._buffer,t),r=e._length,i=e._length=r+Me.bitLength(t);if(i>9007199254740991)throw new I("Cannot hash more than 2^53 - 1 bits");let s=new Oo(n),a=0;for(let o=e.blockSize+r-(e.blockSize+r&e.blockSize-1);o<=i;o+=e.blockSize)e._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),e}finalize(){let t=this,e=t._buffer,n=t._h;e=Me.concat(e,[Me.partial(1,1)]);for(let r=e.length+2;r&15;r++)e.push(0);for(e.push(W.floor(t._length/4294967296)),e.push(t._length|0);e.length;)t._block(e.splice(0,16));return t.reset(),n}_f(t,e,n,r){if(t<=19)return e&n|~e&r;if(t<=39)return e^n^r;if(t<=59)return e&n|e&r|n&r;if(t<=79)return e^n^r}_S(t,e){return e<<t|e>>>32-t}_block(t){let e=this,n=e._h,r=je(80);for(let l=0;l<16;l++)r[l]=t[l];let i=n[0],s=n[1],a=n[2],o=n[3],c=n[4];for(let l=0;l<=79;l++){l>=16&&(r[l]=e._S(1,r[l-3]^r[l-8]^r[l-14]^r[l-16]));let u=e._S(5,i)+e._f(l,s,a,o)+c+r[l]+e._key[W.floor(l/20)]|0;c=o,o=a,a=e._S(30,s),s=i,i=u}n[0]=n[0]+i|0,n[1]=n[1]+s|0,n[2]=n[2]+a|0,n[3]=n[3]+o|0,n[4]=n[4]+c|0}};var wc={};wc.aes=class{constructor(t){let e=this;e._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],e._tables[0][0][0]||e._precompute();let n=e._tables[0][4],r=e._tables[1],i=t.length,s,a,o,c=1;if(i!==4&&i!==6&&i!==8)throw new I("invalid aes key size");for(e._key=[a=t.slice(0),o=[]],s=i;s<4*i+28;s++){let l=a[s-1];(s%i===0||i===8&&s%i===4)&&(l=n[l>>>24]<<24^n[l>>16&255]<<16^n[l>>8&255]<<8^n[l&255],s%i===0&&(l=l<<8^l>>>24^c<<24,c=c<<1^(c>>7)*283)),a[s]=a[s-i]^l}for(let l=0;s;l++,s--){let u=a[l&3?s:s-4];s<=4||l<4?o[l]=u:o[l]=r[0][n[u>>>24]]^r[1][n[u>>16&255]]^r[2][n[u>>8&255]]^r[3][n[u&255]]}}encrypt(t){return this._crypt(t,0)}decrypt(t){return this._crypt(t,1)}_precompute(){let t=this._tables[0],e=this._tables[1],n=t[4],r=e[4],i=[],s=[],a,o,c,l;for(let u=0;u<256;u++)s[(i[u]=u<<1^(u>>7)*283)^u]=u;for(let u=a=0;!n[u];u^=o||1,a=s[a]||1){let f=a^a<<1^a<<2^a<<3^a<<4;f=f>>8^f&255^99,n[u]=f,r[f]=u,l=i[c=i[o=i[u]]];let d=l*16843009^c*65537^o*257^u*16843008,h=i[f]*257^f*16843008;for(let g=0;g<4;g++)t[g][u]=h=h<<24^h>>>8,e[g][f]=d=d<<24^d>>>8}for(let u=0;u<5;u++)t[u]=t[u].slice(0),e[u]=e[u].slice(0)}_crypt(t,e){if(t.length!==4)throw new I("invalid aes block size");let n=this._key[e],r=n.length/4-2,i=[0,0,0,0],s=this._tables[e],a=s[0],o=s[1],c=s[2],l=s[3],u=s[4],f=t[0]^n[0],d=t[e?3:1]^n[1],h=t[2]^n[2],g=t[e?1:3]^n[3],E=4,m,p,T;for(let _=0;_<r;_++)m=a[f>>>24]^o[d>>16&255]^c[h>>8&255]^l[g&255]^n[E],p=a[d>>>24]^o[h>>16&255]^c[g>>8&255]^l[f&255]^n[E+1],T=a[h>>>24]^o[g>>16&255]^c[f>>8&255]^l[d&255]^n[E+2],g=a[g>>>24]^o[f>>16&255]^c[d>>8&255]^l[h&255]^n[E+3],E+=4,f=m,d=p,h=T;for(let _=0;_<4;_++)i[e?3&-_:_]=u[f>>>24]<<24^u[d>>16&255]<<16^u[h>>8&255]<<8^u[g&255]^n[E++],m=f,f=d,d=h,h=g,g=m;return i}};var _c={};_c.ctrGladman=class{constructor(t,e){this._prf=t,this._initIv=e,this._iv=e}reset(){this._iv=this._initIv}update(t){return this.calculate(this._prf,t,this._iv)}incWord(t){if((t>>24&255)===255){let e=t>>16&255,n=t>>8&255,r=t&255;e===255?(e=0,n===255?(n=0,r===255?r=0:++r):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=r}else t+=1<<24;return t}incCounter(t){(t[0]=this.incWord(t[0]))===0&&(t[1]=this.incWord(t[1]))}calculate(t,e,n){let r;if(!(r=e.length))return[];let i=Me.bitLength(e);for(let s=0;s<r;s+=4){this.incCounter(n);let a=t.encrypt(n);e[s]^=a[0],e[s+1]^=a[1],e[s+2]^=a[2],e[s+3]^=a[3]}return Me.clamp(e,i)}};var $t={importKey(t){return new $t.hmacSha1(Lr.bytes.toBits(t))},pbkdf2(t,e,n,r){if(n=n||1e4,r<0||n<0)throw new I("invalid params to pbkdf2");let i=(r>>5)+1<<2,s,a,o,c,l,u=new ArrayBuffer(i),f=new tn(u),d=0,h=Me;for(e=Lr.bytes.toBits(e),l=1;d<(i||1);l++){for(s=a=t.encrypt(h.concat(e,[l])),o=1;o<n;o++)for(a=t.encrypt(a),c=0;c<a.length;c++)s[c]^=a[c];for(o=0;d<(i||1)&&o<s.length;o++)f.setInt32(d,s[o]),d+=4}return u.slice(0,r/8)}};$t.hmacSha1=class{constructor(t){let e=this,n=e._hash=mc.sha1,r=[[],[]];e._baseHash=[new n,new n];let i=e._baseHash[0].blockSize/32;t.length>i&&(t=new n().update(t).finalize());for(let s=0;s<i;s++)r[0][s]=t[s]^909522486,r[1][s]=t[s]^1549556828;e._baseHash[0].update(r[0]),e._baseHash[1].update(r[1]),e._resultHash=new n(e._baseHash[0])}reset(){let t=this;t._resultHash=new t._hash(t._baseHash[0]),t._updated=!1}update(t){let e=this;e._updated=!0,e._resultHash.update(t)}digest(){let t=this,e=t._resultHash.finalize(),n=new t._hash(t._baseHash[1]).update(e).finalize();return t.reset(),n}encrypt(t){if(this._updated)throw new I("encrypt on already updated hmac called!");return this.update(t),this.digest(t)}};var ad=typeof st!=It&&typeof st.getRandomValues==De,Ni="Invalid password",bi="Invalid signature",Tc=bi,Oi="zipjs-abort-check-password",od="Crypto API not supported";function pc(t){if(ad)return st.getRandomValues(t);throw new I(od)}var ln=16,cd="raw",Rc={name:"PBKDF2"},ld={name:"HMAC"},fd="SHA-1",ud=U.assign({hash:ld},Rc),Fs=U.assign({iterations:1e3,hash:{name:fd}},Rc),dd=["deriveBits"],qn=[8,12,16],Ln=[16,24,32],Tt=10,Ed=[0,0,0,0],$r=typeof st!=It,cr=$r&&st.subtle,Ac=$r&&typeof cr!=It,ft=Lr.bytes,hd=wc.aes,gd=_c.ctrGladman,md=$t.hmacSha1,Oa=$r&&Ac&&typeof cr.importKey==De,Fa=$r&&Ac&&typeof cr.deriveBits==De,xs=class extends we{constructor({password:e,rawPassword:n,encryptionStrength:r,checkPasswordOnly:i,checkAuthenticationCode:s=!0}){super({start(){yc(this,e,n,r)},async transform(a,o){let c=this,{password:l,strength:u,resolveReady:f,ready:d}=c;l?(await wd(c,u,l,qe(a,0,qn[u]+2)),a=qe(a,qn[u]+2),i?o.error(new I(Oi)):f()):await d;let h=new V(a.length-Tt-(a.length-Tt)%ln);o.enqueue(Sc(c,a,h,0,Tt,!0))},async flush(a){let{ctr:o,hmac:c,pendingInput:l,ready:u}=this;if(c&&o){await u;let f=qe(l,0,l.length-Tt),d=qe(l,l.length-Tt),h=fe;if(f.length){let m=$n(ft,f);c.update(m);let p=o.update(m);h=jn(ft,p)}let g=qe(jn(ft,c.digest()),0,Tt),E=l.length<Tt?1:0;for(let m=0;m<Tt;m++)E|=g[m]^d[m];if(E&&s)throw new I(Tc);a.enqueue(h)}}})}},Ps=class extends we{constructor({password:e,rawPassword:n,encryptionStrength:r}){super({start(){yc(this,e,n,r)},async transform(i,s){let a=this,{password:o,strength:c,resolveReady:l,ready:u}=a,f=fe;o?(f=await _d(a,c,o),l()):await u;let d=new V(f.length+i.length-i.length%ln);d.set(f,0),s.enqueue(Sc(a,i,d,f.length,0))},async flush(i){let{ctr:s,hmac:a,pendingInput:o,ready:c}=this;if(a&&s){await c;let l=fe;if(o.length){let f=s.update($n(ft,o));a.update(f),l=jn(ft,f)}let u=jn(ft,a.digest()).slice(0,Tt);i.enqueue(zt(l,u))}}})}};function yc(t,e,n,r){U.assign(t,{ready:new ge(i=>t.resolveReady=i),password:Rd(e,n),strength:r-1,pendingInput:fe})}function Sc(t,e,n,r,i,s){let{ctr:a,hmac:o,pendingInput:c}=t;c.length&&(e=zt(c,e));let l=e.length-i;n=Ad(n,r+(l-l%ln));let u;for(u=0;u<=l-ln;u+=ln){let f=$n(ft,qe(e,u,u+ln));s&&o.update(f);let d=a.update(f);s||o.update(d),n.set(jn(ft,d),u+r)}return t.pendingInput=qe(e,u),n}async function wd(t,e,n,r){let i=await Ic(t,e,n,qe(r,0,qn[e])),s=qe(r,qn[e]);if(i[0]!=s[0]||i[1]!=s[1])throw new I(Ni)}async function _d(t,e,n){let r=pc(new V(qn[e])),i=await Ic(t,e,n,r);return zt(r,i)}async function Ic(t,e,n,r){t.password=null;let i=await Td(cd,n,ud,!1,dd),s=await pd(U.assign({salt:r},Fs),i,8*(Ln[e]*2+2)),a=new V(s),o=$n(ft,qe(a,0,Ln[e])),c=$n(ft,qe(a,Ln[e],Ln[e]*2)),l=qe(a,Ln[e]*2);return U.assign(t,{keys:{key:o,authentication:c,passwordVerification:l},ctr:new gd(new hd(o),je.from(Ed)),hmac:new md(c)}),l}async function Td(t,e,n,r,i){if(Oa)try{return await cr.importKey(t,e,n,r,i)}catch{return Oa=!1,$t.importKey(e)}else return $t.importKey(e)}async function pd(t,e,n){if(Fa)try{return await cr.deriveBits(t,e,n)}catch{return Fa=!1,$t.pbkdf2(e,t.salt,Fs.iterations,n)}else return $t.pbkdf2(e,t.salt,Fs.iterations,n)}function Rd(t,e){return e===w?_r(t):e}function Ad(t,e){if(e&&e>t.length){let n=t;t=new V(e),t.set(n,0)}return t}function qe(t,e,n){return t.subarray(e,n)}function jn(t,e){return t.fromBits(e)}function $n(t,e){return t.toBits(e)}var gn=12,Cs=class extends we{constructor({password:e,rawPassword:n,passwordVerification:r,checkPasswordOnly:i}){super({start(){Dc(this,e,n,r)},transform(s,a){let o=this;if(o.password||o.rawPassword){let c=xa(o,s.subarray(0,gn));if(o.password=o.rawPassword=null,(c[gn-1]^o.passwordVerification)!=0)throw new I(Ni);s=s.subarray(gn)}i?a.error(new I(Oi)):a.enqueue(xa(o,s))}})}},Ls=class extends we{constructor({password:e,rawPassword:n,passwordVerification:r}){super({start(){Dc(this,e,n,r)},transform(i,s){let a=this,o,c;if(a.password||a.rawPassword){a.password=a.rawPassword=null;let l=pc(new V(gn));l[gn-1]=a.passwordVerification,o=new V(i.length+l.length),o.set(Pa(a,l),0),c=gn}else o=new V(i.length),c=0;o.set(Pa(a,i),c),s.enqueue(o)}})}};function Dc(t,e,n,r){U.assign(t,{password:e,rawPassword:n,passwordVerification:r}),yd(t,e,n)}function xa(t,e){let n=new V(e.length);for(let r=0;r<e.length;r++)n[r]=Nc(t)^e[r],Ur(t,n[r]);return n}function Pa(t,e){let n=new V(e.length);for(let r=0;r<e.length;r++)n[r]=Nc(t)^e[r],Ur(t,e[r]);return n}function yd(t,e,n){let r=[305419896,591751049,878082192];if(U.assign(t,{keys:r,crcKey0:new jt(r[0]),crcKey2:new jt(r[2])}),n)for(let i=0;i<n.length;i++)Ur(t,n[i]);else for(let i=0;i<e.length;i++)Ur(t,e.charCodeAt(i))}function Ur(t,e){let[,n]=t.keys;t.crcKey0.append([e]);let r=~t.crcKey0.get();n=Ca(W.imul(Ca(n+bc(r)),134775813)+1),t.crcKey2.append([n>>>24]);let i=~t.crcKey2.get();t.keys=[r,n,i]}function Nc(t){let e=t.keys[2]|2;return bc(W.imul(e,e^1)>>>8)}function bc(t){return t&255}function Ca(t){return t&4294967295}function Jt(t){if(t instanceof it)return t;let e=t.getReader();return new it({async pull(n){let{value:r,done:i}=await e.read();i?n.close():n.enqueue(r)},cancel(n){return e.cancel(n)}})}function Qt(t,e){t=Jt(t);let n=e?{type:e}:{};if(Sd())return new Wf(t).blob().then(i=>e?new An([i],n):i);let r=[];return t.pipeTo(new at({write(i){r.push(i)}})).then(()=>new An(r,n))}function Sd(){return typeof An.prototype.stream!=De||new An([]).stream()instanceof it}function Id(t){if(t instanceof at)return t;let e=t.getWriter();return new at({write(n){return e.write(n)},close(){return e.close()},abort(n){return e.abort(n)}})}var La="Invalid codec definition",Dd="Reserved compression method",Nd="Invalid codec module",bd=[St,xn,Wn,Kr],mn=new gt,lr=new gt;function Im(t={}){let{compressionMethod:e,format:n,codecURI:r,CompressionStream:i,DecompressionStream:s,versionNeeded:a}=t;if(!pe.isInteger(e)||e<0||e>X||typeof n!=Sn||!n.length)throw new I(La);if(bd.includes(e))throw new I(Dd);let o=typeof i==De||typeof s==De;if(!o&&(typeof r!=Sn||!r.length))throw new I(La);mn.set(e,{compressionMethod:e,format:n,codecURI:r,versionNeeded:a}),o&&Fc(n,{CompressionStream:i,DecompressionStream:s})}function Dm(t){let e=mn.get(t);if(e){mn.delete(t);let n;mn.forEach(r=>n=n||r.format==e.format),n||lr.delete(e.format)}}function Oc(t){return mn.get(t)}function Od(){return je.from(mn.values(),t=>U.assign({},t,lr.get(t.format)))}function Fi(t){return lr.get(t)}function Fc(t,e){let{CompressionStream:n,DecompressionStream:r}=e;if(typeof n!=De&&typeof r!=De)throw new I(Nd);lr.set(t,{CompressionStream:n,DecompressionStream:r})}async function Fd(t,e){!lr.has(t)&&e&&Fc(t,await import(e))}var Jr="Invalid uncompressed size",xc="Invalid compressed data",Pc=bi,xd="Compression method not supported",fn="deflate-raw",Us="deflate64-raw",In="gzip",Cc=10,vs=8,Pd=[31,139,8],Cd=5e3,Ms=class extends we{constructor(e,{chunkSize:n,CompressionStreamFallback:r,CompressionStream:i}){super({});let{compressed:s,encrypted:a,useCompressionStream:o,zipCrypto:c,computeCrc32:l,level:u,deflate64:f,format:d,compressionMethod:h,inputSize:g}=e,E=this,m,p,T,_=super.readable,R=d&&Fi(d),A=l&&s&&!f&&!R&&(!a||c)&&!!(o&&i);if((!a||c)&&l&&!A&&(m=new Cr,_=nt(_,m)),s)if(R)_=wn(_,vc(R.CompressionStream,d,{level:u,chunkSize:n,compressionMethod:h,uncompressedSize:g}));else if(A)T=new vr,_=wn(_,new i(In)),_=nt(_,T);else try{_=Mc(_,o,{level:u,chunkSize:n},i,r)}catch(O){let S;try{S=new i(In)}catch{throw O}_=wn(_,S),_=nt(_,new vr)}a&&(c?_=nt(_,new Ls(e)):(p=new Ps(e),_=nt(_,p))),Uc(E,_,()=>{(!a||c)&&l&&(E.crc32=A?T.crc32:new tn(m.value.buffer).getUint32(0))})}},vr=class extends we{constructor(){let e,n=Cc,r=new V(0);super({transform(i,s){if(n){let l=W.min(n,i.length);if(n-=l,i=i.subarray(l),!i.length)return}let a=r.length+i.length;if(a<=vs){r=zt(r,i);return}let o=a-vs,c=W.min(o,r.length);s.enqueue(zt(r.subarray(0,c),i.subarray(0,o-c))),r=zt(r.subarray(c),i.subarray(o-c))},flush(){let i=K(r);e.crc32=i.getUint32(0,!0),e.uncompressedSize=i.getUint32(4,!0)}}),e=this}};function Ld(t,e,n){let r=new jt,i=0,s=!1,a,o,c,l=new ge((g,E)=>{o=g,c=E});l.catch(()=>{}),n||o();let u=new we({start(g){let E=new V(Cc);E.set(Pd),g.enqueue(E)},transform(g,E){E.enqueue(g)},async flush(g){s=!0,d();try{await l}finally{h()}let E=new V(vs),m=K(E);m.setUint32(0,r.get(),!0),m.setUint32(4,n,!0),g.enqueue(E)},cancel(g){c(g)}}),f=new we({transform(g,E){r.append(g),i+=g.length,i>=n?o():s&&d(),E.enqueue(g)},cancel(g){c(g)}});return t=nt(t,u),t=wn(t,e),nt(t,f);function d(){h(),a=Xr(()=>c(new I(Jr)),Cd)}function h(){Zr(a)}}var Bs=class extends we{constructor(e,{chunkSize:n,DecompressionStreamFallback:r,DecompressionStream:i}){super({});let{zipCrypto:s,encrypted:a,checkCrc32:o,crc32:c,compressed:l,useCompressionStream:u,deflate64:f,format:d,compressionMethod:h,rawBitFlag:g,outputSize:E}=e,m,p,T=super.readable;if(a&&(s?T=nt(T,new Cs(e)):(p=new xs(e),T=nt(T,p))),l){let _=d&&Fi(d);if(_)T=wn(T,vc(_.DecompressionStream,d,{chunkSize:n,compressionMethod:h,rawBitFlag:g,uncompressedSize:E}));else try{T=Mc(T,u,{chunkSize:n,deflate64:f},i,r)}catch(R){if(f||E===w)throw R;let A;try{A=new i(In)}catch{throw R}T=Ld(T,A,E)}T=Bd(T)}o&&(m=new Cr,T=nt(T,m)),Uc(this,T,()=>{if(o){let _=new tn(m.value.buffer);if(c!=_.getUint32(0,!1))throw new I(Pc)}})}},Ua=new gt;function xi(t,e){if(!t)return!1;let n=Ua.get(t);n||(n=new gt,Ua.set(t,n));let r=n.get(e);if(r===w){try{new t(e),r=!0}catch{r=!1}n.set(e,r)}return r}function Lc(t){return xi(t,fn)}function Ud(t){return xi(t,In)}function Uc(t,e,n){e=nt(e,new we({flush:n})),U.defineProperty(t,"readable",{get(){return e}})}function vc(t,e,n){if(!t)throw new I(xd);return new t(e,n)}function Mc(t,e,n,r,i){let s=e&&r?r:i||r,a=n.deflate64?Us:fn,o;try{o=new s(a,n)}catch(c){if(e&&i&&s!=i)o=new i(a,n);else throw c}return wn(t,o)}function nt(t,e){return Jt(t).pipeThrough(e)}function wn(t,e){let n=e.writable.getWriter(),r=t.getReader();return i(),e.readable;async function i(){try{for(;;){await n.ready;let s=await r.read();if(s.done){await n.close();break}await n.write(s.value)}}catch(s){await vd(n,s),await Md(r,s)}}}async function vd(t,e){try{await t.abort(e)}catch{}}async function Md(t,e){try{await t.cancel(e)}catch{}}function Bd(t){let e=t.getReader();return new it({async pull(n){let r;try{r=await e.read()}catch(a){if(a&&a.message)throw a;let o=new I(xc);throw o.cause=a,o}let{value:i,done:s}=r;s?n.close():n.enqueue(i)},cancel(n){return e.cancel(n)}})}var Hd=64*1024,zd="message",kd="start",Gd="pull",va="data",Yd="ack",Vd="close",Pi="deflate",Bc="inflate",Hs=class extends we{constructor(e,n){super({});let r=this,{codecType:i}=e,s;i.startsWith(Pi)?s=Ms:i.startsWith(Bc)&&(s=Bs),r.outputSize=0;let a=0,o=new s(e,n),c=super.readable,l=new we({transform(f,d){f&&f.length&&(a+=f.length,d.enqueue(f))},flush(){U.assign(r,{inputSize:a})}}),u=new we({transform(f,d){if(f&&f.length&&(d.enqueue(f),r.outputSize+=f.length,e.outputSize!==w&&r.outputSize>e.outputSize))throw new I(Jr)},flush(){let{crc32:f}=o;U.assign(r,{crc32:f,inputSize:a})}});U.defineProperty(r,"readable",{get(){return c.pipeThrough(l).pipeThrough(o).pipeThrough(u)}})}},Mr=class extends we{constructor(e){let n=[],r=0;(!pe.isFinite(e)||e<1)&&(e=Hd),super({transform(a,o){for(n.push(a),r+=a.length;r>e;)o.enqueue(i())},flush(a){r&&a.enqueue(s(n,r))}});function i(){let a=new V(e),o=0;for(;o<e;){let c=n[0],l=e-o;c.length<=l?(a.set(c,o),o+=c.length,n.shift()):(a.set(c.subarray(0,l),o),n[0]=c.subarray(l),o+=l)}return r-=e,a}function s(a,o){let c=new V(o),l=0;for(let u of a)c.set(u,l),l+=u.length;return c}}},Ci="Worker startup timeout",Vn,Li,zs,ks=()=>{};function Wd(t){zs=t}async function Xd(t){let{CompressionStream:e,CompressionStreamFallback:n}=t;if(n&&!n.requiresModule||Lc(e)||Ud(e))return!0;if(n)try{return await ks(t),!0}catch{return!1}return!1}function Zd(){Vn=w,Li=!1}function Ma(t){t.createWorker?Li=!0:Vn=!1}var _n=class{constructor(e,{readable:n,writable:r},{options:i,config:s,streamOptions:a,useWebWorkers:o,transferStreams:c,workerURI:l,createWorker:u},f){let{signal:d}=a;return Li&&(u=w),U.assign(e,{busy:!0,generation:(e.generation||0)+1,readable:n.pipeThrough(new Mr(Di(s))).pipeThrough(new Gs(a),{signal:d}),writable:r,options:U.assign({},i),workerURI:l,createWorker:u,transferStreams:c,terminate(){return new ge(h=>{let{worker:g,busy:E}=e;g?(E?e.resolveTerminated=h:(g.terminate(),h()),e.interface=null):h()})},onTaskFinished(){if(e.busy){let{resolveTerminated:h}=e;h&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),h()),e.busy=!1,f(e)}}}),Vn===w&&(Vn=typeof mr!=It),(o&&zs&&(Vn&&l||u)?zs:Hc)(e,s)}},Gs=class extends we{constructor({onstart:e,onprogress:n,size:r,onend:i}){let s=0;super({async start(){e&&await os(e,r)},async transform(a,o){s+=a.length,n&&await os(n,s,r),o.enqueue(a)},async flush(){i&&await os(i,s)}})}};async function os(t,...e){try{await t(...e)}catch{}}function Hc(t,e){return{run:()=>Ys(t,e)}}async function Ys({options:t,readable:e,writable:n,onTaskFinished:r},i){let s;try{if(t.compressed&&!t.format){let l=t.codecType.startsWith(Pi),u=l?i.CompressionStreamFallback:i.DecompressionStreamFallback,f=l?i.CompressionStream:i.DecompressionStream;if(t.useCompressionStream){if(u&&u.requiresModule&&!Lc(f))try{await ks(i)}catch{}}else try{await ks(i)}catch{(!u||u.requiresModule)&&(t.useCompressionStream=!0)}}s=new Hs(t,i),await e.pipeThrough(s).pipeThrough(new Mr(Di(i))).pipeTo(n,{preventClose:!0,preventAbort:!0});let{crc32:a,inputSize:o,outputSize:c}=s;return{crc32:a,inputSize:o,outputSize:c}}catch(a){throw s&&(a.outputSize=s.outputSize),a}finally{r()}}var Ba={type:"module"},Vs="error",Kd="messageerror",Ha,cs,za,Ws=!0;try{Ws=typeof structuredClone==De&&structuredClone(new DOMException("","AbortError")).code!==w}catch{}Wd(qd);function qd(t,e){let{baseURI:n,chunkSize:r,workerStartupTimeout:i}=e,{wasmURI:s}=e;if(!t.interface){typeof s==De&&(s=s());let a;try{a=Tr(t.workerURI,n,t)}catch{return Ma(t),Hc(t,e)}U.assign(t,{worker:a,workerAlive:!1,terminated:!1,startupError:null,interface:{run:async()=>{try{return await jd(t,{chunkSize:r,wasmURI:s,baseURI:n,workerStartupTimeout:i})}catch(o){if(o&&o.workerStartupFailed)return Ma(t),ka(t),Ys(t,e);if(o&&o.codecImportFailed){if(t.reader)return ka(t),Ys(t,e);t.onTaskFinished()}throw o}}}})}return t.interface}async function jd(t,e){if(!t.worker){let{startupError:h}=t;t.startupError=null;let g=h||new I(Ci);throw g.workerStartupFailed=!0,g}let n,r,i=new ge((h,g)=>{n=h,r=g});U.assign(t,{reader:null,writer:null,resolveResult:n,rejectResult:r,result:i});let{readable:s,options:a}=t,{writable:o,closed:c,abortPipe:l}=$d(t.writable),u;try{u=Xs({type:kd,options:a,config:e,readable:s,writable:o},t)}catch(h){l();try{await c}catch{}throw t.onTaskFinished(),h}u||U.assign(t,{reader:s.getReader(),writer:o.getWriter()});let{workerStartupTimeout:f}=e;!t.workerAlive&&pe.isFinite(f)&&f>=0&&(t.startupTimeout=Xr(()=>Jd(t),f));try{let h=await i;return await d(),await c,h}catch(h){await d(),l();try{await c}catch{}throw h}async function d(){if(!u&&!o.locked)try{await o.getWriter().close()}catch{}}}function $d(t){let e=new AbortController,{writable:n,readable:r}=new we,i=r.pipeTo(t,{preventClose:!0,preventAbort:!0,signal:e.signal});return i.catch(()=>{}),{writable:n,closed:i,abortPipe:()=>e.abort()}}function ka(t){let{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function Ui(t){let{worker:e}=t;if(e)try{e.terminate()}catch{}t.interface=null}function Tr(t,e,n,r,i=!0){let{createWorker:s}=n,a,o,c;if(s)a=s();else if(cs===w||Ha!==t){let l=typeof t==De;l?o=t(i):o=t;let u=o.startsWith("data:"),f=o.startsWith("blob:");if(u||f){r===w&&(r=!1),r&&(c=Ba);try{a=new mr(o,c)}catch(d){if(f)try{Ir.revokeObjectURL(o)}catch{}if(l&&f)return Tr(t,e,n,r,!1);if(r)throw d;return Tr(t,e,n,!0,!1)}}else{r===w&&(r=!0),r&&(c=Ba);try{o=new Ir(o,e)}catch{}try{a=new mr(o,c)}catch(d){if(r)return Tr(t,e,n,!1,i);throw d}}Ha=t,cs=o,za=c}else a=new mr(cs,za);return a.addEventListener(zd,l=>{n.workerAlive=!0,zc(n),Qd(l,n)}),a.addEventListener(Vs,l=>Ga(l,n)),a.addEventListener(Kd,l=>Ga(l,n)),a}function Jd(t){if(t.startupTimeout=null,t.workerAlive)return;let{rejectResult:e,writer:n}=t;if(Ui(t),t.worker=null,e){let r=new I(Ci);r.workerStartupFailed=!0,e(r),n&&n.releaseLock()}}function zc(t){let{startupTimeout:e}=t;e&&(Zr(e),t.startupTimeout=null)}function Ga(t,e){t.preventDefault&&t.preventDefault(),zc(e);let{workerAlive:n,rejectResult:r,writer:i,onTaskFinished:s}=e;Ui(e),n||(e.worker=null);let a=t.error||new I(t.message||Vs);n||(a=U.assign(new I(a.message||Vs),{workerStartupFailed:!0}),e.startupError=a),r&&(r(a),i&&i.releaseLock(),n&&s())}function Xs(t,{worker:e,writer:n,transferStreams:r,workerAlive:i}){try{let{value:s,readable:a,writable:o}=t,c=[];if(s&&(t.value=gc(s),c.push(t.value.buffer)),r&&Ws&&i?(a&&c.push(a),o&&c.push(o)):t.readable=t.writable=null,c.length)try{return e.postMessage(t,c),!0}catch{Ws=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(s){throw n&&n.releaseLock(),s}}async function Qd({data:t},e){let{type:n,value:r,messageId:i,result:s,error:a}=t,{reader:o,writer:c,resolveResult:l,rejectResult:u,onTaskFinished:f,generation:d}=e,h=()=>e.generation!=d;try{if(a){let{message:E,stack:m,code:p,name:T,outputSize:_,cause:R,codecImportFailed:A}=a,O=new I(E);U.assign(O,{stack:m,code:p,name:T,outputSize:_}),R&&(O.cause=U.assign(new I(R.message),{name:R.name})),A&&(O.codecImportFailed=!0),g(O)}else{if(n==Gd){let{value:E,done:m}=await o.read();h()||Xs({type:va,value:E,done:m,messageId:i},e)}n==va&&(await c.ready,await c.write(new V(r)),h()||Xs({type:Yd,messageId:i},e)),n==Vd&&g(null,s)}}catch(E){h()||(Ui(e),g(E))}function g(E,m){h()||(E?u(E):l(m),c&&c.releaseLock(),E&&E.codecImportFailed||f())}}var Bt=[],Tn=[],pn,pr,Ya=0;async function kc(t,e){let{options:n,config:r}=e,{transferStreams:i,useWebWorkers:s,useCompressionStream:a,compressed:o,checkCrc32:c,computeCrc32:l,encrypted:u,format:f,codecURI:d}=n,{workerURI:h,createWorker:g,maxWorkers:E}=r;f&&(d&&(n.codecURI=eE(d,r.baseURI)),await Fd(f,n.codecURI)),e.transferStreams=!f&&(i||i===w&&r.transferStreams);let m=!o&&!c&&!l&&!u,p=f===w||!!n.codecURI;return e.useWebWorkers=!m&&p&&(s||s===w&&r.useWebWorkers),e.workerURI=e.useWebWorkers&&h?h:w,e.createWorker=e.useWebWorkers&&g?g:w,n.useCompressionStream=a||a===w&&r.useCompressionStream,(await T()).run();async function T(){let R=Bt.find(A=>!A.busy);if(R)return Zs(R),new _n(R,t,e,_);if(Bt.length<E){let A={indexWorker:Ya};return Ya++,Bt.push(A),new _n(A,t,e,_)}else return new ge(A=>{Tn.push({resolve:A,stream:t,workerOptions:e}),pr=r.workerStarvationTimeout,Br()})}function _(R){if(Gc(),Tn.length){let[{resolve:A,stream:O,workerOptions:S}]=Tn.splice(0,1);A(new _n(R,O,S,_)),Br()}else R.worker?(Zs(R),rE(R,e)):Bt=Bt.filter(A=>A!=R)}}function eE(t,e){try{return new Ir(t,e).toString()}catch{return t}}function Br(){!pn&&Tn.length&&pe.isFinite(pr)&&pr>=0&&(pn=Xr(tE,pr))}function Gc(){pn&&(Zr(pn),pn=null)}function tE(){if(pn=null,Tn.length){let[{resolve:t,stream:e,workerOptions:n}]=Tn.splice(0,1),r=U.assign({},n,{useWebWorkers:!1,workerURI:w,createWorker:w});t(new _n({},e,r,nE)),Br()}}function nE(){Gc(),Br()}function rE(t,e){let{config:n}=e,{terminateWorkerTimeout:r}=n;pe.isFinite(r)&&r>=0&&(t.terminated?t.terminated=!1:t.terminateTimeout=Xr(async()=>{Bt=Bt.filter(i=>i!=t);try{await t.terminate()}catch{}},r))}function Zs(t){let{terminateTimeout:e}=t;e&&(Zr(e),t.terminateTimeout=null)}async function Nm(){await ge.allSettled(Bt.map(t=>(Zs(t),t.terminate()))),Zd()}var Yc="\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(""),sE=Yc.length==256;function iE(t){if(sE){let e="";for(let n=0;n<t.length;n++)e+=Yc[t[n]];return e}else return new Dr().decode(t)}function Rr(t,e){return Vc(t,e,!0)}function aE(t,e){return Vc(t,e,!1)}function Vc(t,e,n){return e&&e.trim().toLowerCase()=="cp437"?iE(t):new Dr(e,{ignoreBOM:n}).decode(t)}var Wc="HTTP error ",Rt="HTTP Range not supported",Va="HTTP resource changed",oE="Writer iterator completed too soon",cE="Writer not initialized",lE="text/plain",fE="Content-Length",uE="Content-Encoding",vi="Content-Range",dE="Accept-Ranges",EE="Range",hE="Etag",gE="Last-Modified",mE="HEAD",Qr="GET",Xc="bytes",wE=256*1024,_E=16*1024*1024,Mi="writable",Wa=Symbol(),Dn=class{constructor(){this.size=0}init(){this.initialized=!0}},Et=class extends Dn{get readable(){return this.createReadable()}createReadable({offset:e=0,size:n,chunkSize:r=Di(rn())}={}){let i=this,s=0;return r=dc(r),new it({async pull(a){let o=n===w?r:W.min(r,n-s),c=await _e(i,e+s,o);c.length&&a.enqueue(c),s+r>=n||!c.length&&o?a.close():s+=r}})}},Hr=class extends Dn{constructor(){super();let e=this,n=new at({write(r){if(!e.initialized)throw new I(cE);return e.writeUint8Array(gc(r))}});U.defineProperty(e,Mi,{get(){return n}})}writeUint8Array(){}},Xa=class extends Et{constructor(e){super();let n=e.length;for(;e.charAt(n-1)=="=";)n--;let r=e.indexOf(",")+1;U.assign(this,{dataURI:e,dataStart:r,size:W.floor((n-r)*.75)})}readUint8Array(e,n){let{dataStart:r,dataURI:i}=this,s=new V(n),a=W.floor(e/3)*4,o=atob(i.substring(a+r,W.ceil((e+n)/3)*4+r)),c=e-W.floor(a/4)*3,l=0;for(let u=c;u<c+n&&u<o.length;u++)s[u-c]=o.charCodeAt(u),l++;return l<s.length?s.subarray(0,l):s}},Za=class extends Hr{constructor(e){super(),U.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",pendingCharacters:""})}writeUint8Array(e){let n=this,r,i=n.pendingCharacters,s=n.pendingCharacters.length;for(n.pendingCharacters="",r=0;r<W.floor((s+e.length)/3)*3-s;r++)i+=ma.fromCharCode(e[r]);for(;r<e.length;r++)n.pendingCharacters+=ma.fromCharCode(e[r]);i.length>2?n.data+=_a(i):n.pendingCharacters=i+n.pendingCharacters}getData(){return this.data+_a(this.pendingCharacters)}},Ks,Zc;function TE(){Zc=(async()=>{try{let e=new An([new V(3)]).slice(1,2).stream().getReader(),n=0,r=await e.read();for(;!r.done;)n+=r.value.length,r=await e.read();Ks=n==1}catch{Ks=!1}})()}var Dt=class extends Et{constructor(e){super(),U.assign(this,{sourceBlob:e,size:e.size}),Zc||TE()}createReadable(e){let n=this,{sourceBlob:r,size:i}=n,{offset:s=0,size:a=i-s}=e||{};return!s&&a>=i?Jt(r.stream()):Ks?Jt(r.slice(s,s+a).stream()):super.createReadable(e)}async readUint8Array(e,n){let r=this,i=e+n,o=await(!e&&i>=r.size?r.sourceBlob:r.sourceBlob.slice(e,i)).arrayBuffer();return o.byteLength>n&&(o=o.slice(e,i)),new V(o)}},qs=class extends Dn{constructor(e){super();let n=this,r=new we;U.defineProperty(n,Mi,{get(){return r.writable}}),n.contentType=e,n.blobPromise=Qt(r.readable,e),n.blobPromise.catch(()=>{})}getData(){return this.blobPromise}},Yt=class extends Dt{constructor(e){super(new An([e],{type:lE}))}},Ka=class extends qs{constructor(e){super(),U.assign(this,{encoding:e,utf8:!e||e.toLowerCase()=="utf-8"})}async getData(){let{encoding:e,utf8:n}=this,r=await super.getData();return r.text&&n?r.text():aE(new V(await r.arrayBuffer()),e)}},js=class extends Et{constructor(e,n){super(),Kc(this,e,n)}async init(){await qc(this,zr,qa),super.init()}createReadable(e){let n=this,{useRangeHeader:r,forceRangeRequests:i,size:s}=n;if((r||i)&&s!==w){let{offset:a=0,size:o=s-a}=e||{};if(o>0&&a<s)return pE(n,a,W.min(o,s-a))}return super.createReadable(e)}readUint8Array(e,n){return jc(this,e,n,zr,qa)}},$s=class extends Et{constructor(e,n){super(),Kc(this,e,n)}async init(){await qc(this,Js,ja),super.init()}readUint8Array(e,n){return jc(this,e,n,Js,ja)}};function Kc(t,e,n){let{preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:o=!0,maximumRangeSize:c=_E,fetch:l}=n;n=U.assign({},n),delete n.preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.combineSizeEocd,delete n.checkResourceChanges,delete n.maximumRangeSize,delete n.useXHR,delete n.fetch,U.assign(t,{url:e,options:n,preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:o,maximumRangeSize:c,fetch:l})}async function qc(t,e,n){let{url:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o}=t;if(RE(r)&&(s||a)&&(typeof i==It||i)){let c=await e(Qr,t,Hi(t,o?-Ie:void 0)),l=c.headers.get(dE);if(!a&&(!l||l.toLowerCase()!=Xc))throw new I(Rt);{if(o){let f=new V(await c.arrayBuffer());c.status==206&&f.length==Ie&&(t.eocdCache=f)}Bi(t,c);let u=$c(c);u===w?await $a(t,e,n):t.size=u}}else await $a(t,e,n)}async function jc(t,e,n,r,i){let{useRangeHeader:s,forceRangeRequests:a,eocdCache:o,size:c,options:l}=t;if(s||a){if(o&&e==c-Ie&&n==Ie)return o;if(e>=c||n===0)return fe;{e+n>c&&(n=c-e);let u=await r(Qr,t,Hi(t,e,n));if(u.status!=206)throw new I(Rt);let f=u.headers.get(vi);if(f){let h=pe(f.trim().split(/[\s-]+/)[1]);if(!pe.isNaN(h)&&h!=e)throw new I(Rt)}Qc(t,u),Bi(t,u);let d=new V(await u.arrayBuffer());if(d.length!=n)throw new I(Rt);return d}}else{let{data:u}=t;return u||await i(t,l),t.data.subarray(e,e+n)}}function pE(t,e,n){let r,i=e,s=0,a=n;return new it({start(){return o()},async pull(l){r||await o();let{value:u,done:f}=await r.read();if(f)throw new I(Rt);let d=u.length>s?u.subarray(0,s):u;s-=d.length,a-=d.length,d.length&&l.enqueue(d),s||(await c(),a||l.close())},cancel(l){return r&&r.cancel(l)}});async function o(){let l=W.min(t.maximumRangeSize,a),u=await zr(Qr,t,Hi(t,i,l));if(u.status!=206)throw new I(Rt);let f=u.headers.get(vi);if(f){let d=pe(f.trim().split(/[\s-]+/)[1]);if(!pe.isNaN(d)&&d!=i)throw new I(Rt)}Qc(t,u),Bi(t,u),i+=l,s=l,r=u.body.getReader()}async function c(){let l=r;r=w,await l.cancel()}}function $c(t){let e=t.headers.get(vi);if(e){let n=e.trim().split(/\s*\/\s*/)[1];if(n&&n!="*"){let r=pe(n);if(!pe.isNaN(r))return r}}}function Jc({headers:t}){return{etag:t.get(hE)||w,lastModified:t.get(gE)||w}}function Bi(t,e){let{checkResourceChanges:n,resourceValidators:r}=t;n&&!r&&e.status==206&&(t.resourceValidators=Jc(e))}function Qc(t,e){let{checkResourceChanges:n,resourceValidators:r,size:i}=t;if(n){let s=$c(e);if(s!==w&&i!==w&&s!=i)throw new I(Va);if(r){let a=Jc(e);if(U.entries(r).some(([c,l])=>l!==w&&a[c]!==w&&l!=a[c]))throw new I(Va)}}}function Hi(t,e=0,n=1){return U.assign({},zi(t),{[EE]:Xc+"="+(e<0?e:e+"-"+(e+n-1))})}function zi({options:t}){let{headers:e}=t;if(e)return Symbol.iterator in e?U.fromEntries(e):e}async function qa(t){await el(t,zr)}async function ja(t){await el(t,Js)}async function el(t,e){let n=await e(Qr,t,zi(t));t.data=new V(await n.arrayBuffer()),t.size=t.data.length}async function $a(t,e,n){if(t.preventHeadRequest)await n(t,t.options);else{let r=await e(mE,t,zi(t)),i=r.headers.get(fE);i&&!r.headers.get(uE)?t.size=pe(i):await n(t,t.options)}}async function zr(t,{fetch:e=fetch,options:n,url:r},i){let s=await e(r,U.assign({},n,{method:t,headers:i}));if(s.status<400)return s;throw s.status==416?new I(Rt):new I(Wc+(s.statusText||s.status))}function Js(t,{url:e},n){return new ge((r,i)=>{let s=new XMLHttpRequest;if(s.addEventListener("load",()=>{if(s.status<400){let a=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(o=>{let c=o.trim().split(/\s*:\s*/);c[0]=c[0].trim().replace(/^[a-z]|-[a-z]/g,l=>l.toUpperCase()),a.push(c)}),r({status:s.status,arrayBuffer:()=>s.response,headers:new gt(a)})}else i(s.status==416?new I(Rt):new I(Wc+(s.statusText||s.status)))},!1),s.addEventListener("error",a=>i(a.detail?a.detail.error:new I("Network error")),!1),s.open(t,e),n)for(let a of U.entries(n))s.setRequestHeader(a[0],a[1]);s.responseType="arraybuffer",s.send()})}var Qs=class extends Et{constructor(e,n={}){super(),U.assign(this,{url:e,reader:n.useXHR&&!n.fetch?new $s(e,n):new js(e,n)})}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,n){return this.reader.readUint8Array(e,n)}},Ja=class extends Qs{constructor(e,n={}){super(e,U.assign({},n,{useRangeHeader:!0}))}},Jn=class extends Et{constructor(e){super(),e=new V(e.buffer,e.byteOffset,e.byteLength),U.assign(this,{array:e,size:e.length})}readUint8Array(e,n){return this.array.slice(e,e+n)}},Nn=class extends Hr{constructor(e){super(),this.defaultBufferSize=e||wE}init(e=0){U.assign(this,{offset:0,array:new V(e>0?e:this.defaultBufferSize)}),super.init()}writeUint8Array(e){let n=this,r=n.offset+e.length;if(r>n.array.length){let i=n.array.length?n.array.length*2:n.defaultBufferSize;for(;i<r;)i*=2;let s=n.array;n.array=new V(i),n.array.set(s)}n.array.set(e,n.offset),n.offset+=e.length}getData(){return this.offset===this.array.length?this.array:this.array.slice(0,this.offset)}},ei=class extends Et{constructor(e){super(),this.readers=e}async init(){let e=this;e.lastDiskNumber=0;let n=e.readers=await ge.all(e.readers.map(AE));e.diskOffsets=n.map(r=>{let i=e.size;return e.size+=r.size,i}),super.init()}getDiskOffset(e){let{diskOffsets:n,size:r}=this,i=n[e];return i===w?r:i}async readUint8Array(e,n){let r=this,{readers:i}=this,s,a=0,o=e;for(;i[a]&&o>=i[a].size;)o-=i[a].size,a++;let c=i[a];if(c){let l=c.size;if(o+n<=l)s=await _e(c,o,n);else{let u=l-o,f=await _e(c,o,u),d=await r.readUint8Array(e+u,n-u);s=zt(f,d)}}else s=fe;return r.lastDiskNumber=W.max(a,r.lastDiskNumber),s}},ti=class extends Dn{constructor(e,n=4294967295){super();let r=this;U.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:n,availableSize:n});let i,s,a,o=new at({async write(f){if(f===Wa){a&&await l();return}let{availableSize:d}=r;if(a)f.length>=d?(await c(f.subarray(0,d)),await l(),f.length>d&&await this.write(f.subarray(d))):await c(f);else{let{value:h,done:g}=await e.next();if(g&&!h)throw new I(oE);i=h,i.size=0,i.maxSize&&(r.maxSize=i.maxSize),r.availableSize=r.maxSize,await Be(i),s=h.writable,a=s.getWriter(),await this.write(f)}},async close(){a&&(await a.ready,await u())},async abort(f){a&&await a.abort(f)}});U.defineProperty(r,Mi,{get(){return o}});async function c(f){let d=f.length;d&&(await a.ready,await a.write(f),i.size+=d,r.availableSize-=d)}async function l(){await u(),r.diskOffset+=i.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function u(){await a.close()}}async closeDisk(){let e=this.writable.getWriter();try{await e.ready,await e.write(Wa)}finally{e.releaseLock()}}},en=class{constructor(e){return je.isArray(e)&&(e=new ei(e)),(e instanceof it||typeof e.getReader==De)&&(e={readable:Jt(e)}),e}},kr=class{constructor(e){return e.writable===w&&typeof e.next==De&&(e=new ti(e)),(e instanceof at||typeof e.getWriter==De)&&(e={writable:Id(e)}),e.size===w&&(e.size=0),e}};function tl(t){return!!(t&&t.getData)}function RE(t){let{baseURI:e}=rn(),{protocol:n}=new Ir(t,e);return n=="http:"||n=="https:"}async function Be(t,e){if(t.init&&!t.initialized)await t.init(e);else return ge.resolve()}async function AE(t){return t=new en(t),await Be(t),(t.size===w||!t.readUint8Array)&&(t=new Dt(await Qt(t.readable)),await Be(t)),t}function _e(t,e,n){return t.readUint8Array(e,n)}function nl(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?Et.prototype.createReadable.call(t,e):t.readable}var rl="filename",sl="rawFilename",ki="comment",il="rawComment",Gi="uncompressedSize",al="compressedSize",ol="offset",cl="diskNumberStart",Gr="lastModDate",Yr="rawLastModDate",Yi="lastAccessDate",ll="rawLastAccessDate",Vi="creationDate",fl="rawCreationDate",ul="internalFileAttributes",dl="externalFileAttributes",Wi="internalFileAttribute",Xi="externalFileAttribute",El="msdosAttributesRaw",hl="msdosAttributes",gl="msDosCompatible",Zi="zip64",ml="encrypted",wl="version",_l="versionMadeBy",Tl="zipCrypto",Rn="directory",pl="executable",yE="symlink",Rl="compressionMethod",ni="signature",SE="crc32",Ki="extraField",IE="extraFieldInfoZip",DE="extraFieldUnix",NE="extraFieldUnixType1",bE="extraFieldPkwareUnix",Al="uid",yl="gid",Sl="unixMode",Il="setuid",Dl="setgid",Nl="sticky",OE="bitFlag",FE="rawBitFlag",xE="filenameLength",PE="extraFieldLength",CE="unixExternalUpper",LE="filenameUTF8",UE="commentUTF8",vE="rawExtraField",ME="extraFieldZip64",BE="extraFieldUnicodePath",HE="extraFieldUnicodeComment",zE="extraFieldAES",kE="extraFieldNTFS",GE="extraFieldExtendedTimestamp",YE="extraFieldUSDZ",VE=[rl,sl,Gi,al,Gr,Yr,ki,il,Yi,ll,Vi,fl,ol,cl,ul,dl,Wi,Xi,El,hl,gl,Zi,ml,wl,_l,Tl,Rn,pl,yE,Rl,ni,SE,Ki,DE,IE,NE,bE,Al,yl,Sl,CE,Il,Dl,Nl,OE,FE,xE,PE,LE,UE,vE,ME,BE,HE,zE,kE,GE,YE],bn=class{constructor(e){VE.forEach(n=>this[n]=e[n])}},Bn="File format is not recognized",bl="End of central directory not found",Ol="End of Zip64 central directory locator not found",Fl="Central directory header not found",xl="Local file header not found",Pl="Zip64 extra field not found",Cl="File contains encrypted entry",ri="Encryption method not supported",si="Compression method not supported",ii="Split zip file",Ll="Overlapping entry found",Ul="Entry data out of bounds",vl="Ambiguous archive",Ml="Encrypted central directory is not supported",Bl="Unsafe filename",Hl="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",zl="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",kl="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Gl="64-bit value exceeds Number.MAX_SAFE_INTEGER",Yl="unsorted central directory",Vl="unknown version needed to extract",Wl="compressed patched data",qi="malformed extra field",Xl="unknown zip64 extensible data",ai="wrapped entries count",oi="appended data",ci="prepended data",Zl="trailing central directory data",Kl="duplicate filename",Hn="mismatched zip64 end of central directory record",ql="mismatched local file header (general purpose bit flag)",jl="mismatched local file header (compression method)",$l="mismatched local file header (crc32 or sizes)",WE=63,XE=/^[a-zA-Z]:/,Qa="utf-8",ZE="UTF8",eo="cp437",to=Nr|br|Or,Jl=1,KE=[[Gi,me],[al,me],[ol,me],[cl,X]],no={[X]:{getValue:j,bytes:4},[me]:{getValue:Ge,bytes:8}},qE=Ce(pe.MAX_SAFE_INTEGER),jE=64,$E=1032,ro=0,ji=1,Vr=2,On=class{constructor(e,n={}){U.assign(this,{reader:new en(e),options:n,readRanges:new gt})}async*getEntriesGenerator(e={}){let n=this,{reader:r}=n;if(await Be(r),(r.size===w||!r.readUint8Array)&&(r=new Dt(await Qt(r.readable)),await Be(r)),r.size<Ie)throw new I(Bn);let i=n.warnings=[],s=$i(e,n.options),a=s==nn,o=s!=Gt,c=rf(Te(n,e,Qo),s),l=uh(Te(n,e,zu),s),u=Te(n,e,ku),{endOfDirectoryInfo:f,endOfDirectoryReachingEndCount:d}=await sf(r,o,c);if(!f)throw await ah(r)?new I(ii):new I(bl);o&&d>1&&Ar("multiple end of central directory records");let h=K(f),g=j(h,12),E=j(h,16),m=f.offset,p=ie(h,20),T=m+Ie+p,_=r.size-T;_>c&&Ar(oi),_>0&&tt(i,oi);let R=ie(h,4),A=r.lastDiskNumber||0,O=ie(h,6),S=ie(h,10),F=0,P,H,v,M=et,G,k=E==me||g==me||S==X||O==X;if(E!=me&&O!=X&&(E+=un(r,O)),k){let ue=f.offset>=vt?await _e(r,f.offset-vt,vt):fe,B=K(ue);if(ue.length==vt&&j(B,0)==Ri){E=un(r,j(B,4))+Ge(B,8);let ye=await _e(r,E,et),Ee=K(ye),He=f.offset-vt-et;if((ye.length<et||j(Ee,0)!=As)&&E!=He&&He>=0){let be=E;E=He,E>be&&(F=E-be),ye=await _e(r,E,et),Ee=K(ye)}if(ye.length<et||j(Ee,0)!=As)throw new I(Ol);if(H=!0,v=Ge(Ee,4)>et-12,v){let be=W.min(Ge(Ee,4)-(et-12),r.size-E-et);if(be>0){M+=be;let Xe=await _e(r,E+et,be);G=eh(Xe)}}R==X?R=j(Ee,16):R!=j(Ee,16)&<(a,i,Hn),O==X?O=j(Ee,20):O!=j(Ee,20)&<(a,i,Hn),S==X?S=Ge(Ee,32):S!=Ge(Ee,32)&<(a,i,Hn),g==me?g=Ge(Ee,40):g!=Ge(Ee,40)&<(a,i,Hn),E=un(r,O)+Ge(Ee,48)+F}}let Y=g,b=f.offset-(H?M+vt:0);if(E>=r.size&&(F=r.size-E-g-Ie,E=r.size-g-Ie),A!=R)throw new I(ii);if(E<0)throw new I(Bn);let D=0,C=await _e(r,E,g),x=K(C);if(g){if(C.length<4)throw new I(Bn);let ue=b-g;if(E!=ue&&O==R){let ye=!(j(x,D)==Mt||!!(G&&G.compressedSize)||ls(x));if(!ye&&ue>=0&&ue+4<=r.size){let Ee=await _e(r,ue,4);ye=j(K(Ee),0)==Mt}if(ye){let Ee=E;E=ue,E>Ee&&(F+=E-Ee),C=await _e(r,E,g),x=K(C)}}}let Z=b-E;if(g!=Z&&Z>=0&&O==R&&(g=Z,C=await _e(r,E,g),x=K(C)),E<0||E>=r.size)throw new I(Bn);n.directoryOffset=E,n.directoryLength=Y;let L=Eo(n,e,Gu),q,ne;if(L&&S&&C.length>=4&&j(x,0)!=Mt&&(v||ls(x))){let ue=QE(G,Y,C.length);ne=C.subarray(ue),C=await L(C.subarray(0,ue),G),x=K(C),Y=C.length,q=!0}G&&!q&&(C.length<4||j(x,0)==Mt)&&tt(i,Xl),P=E;let re=Te(n,e,du),$=Te(n,e,Eu),ce=new Sr,ae,Ae=-1,Ne=!a&&!H;!S&&Ne&&(S=so(x,C,D),S&&tt(i,ai));for(let ue=0;ue<S;ue++){let B=new fi(r,n.options);if(D+yn>C.length||j(x,D)!=Mt)throw ue==0&&!q&&(v||ls(x))?new I(Ml):new I(Fl);Ql(B,x,D+6);let ye=!!B.bitFlag.languageEncodingFlag,Ee=D+yn,He=Ee+B.filenameLength,be=He+B.extraFieldLength,Xe=ie(x,D+4),mt=Xe>>8==0,Wt=Xe>>8==3,Le=C.subarray(Ee,He),ot=ie(x,D+32),Se=be+ot,ct=C.subarray(be,Se),Xt=ye,Ze=ye,sn=j(x,D+38),$e=sn&rt,Ft={readOnly:!!($e&ys),hidden:!!($e&Ss),system:!!($e&Is),directory:!!($e&Fr),archive:!!($e&Ds)},xt=j(x,D+42),ke=Eo(n,e,hu)||Rr,Ke=Xt?Qa:re||eo,Zt=Ze?Qa:$||eo,Ue=ke(Le,Ke,ec);if(Ue===w&&(Ue=Rr(Le,Ke)),u){let ve=u(Ue);ve!==w&&(Ue=ve)}if(dh(Ue,l)){let ve=new I(Bl);throw ve.filename=Ue,ve}let Pt=ke(ct,Zt,tc);Pt===w&&(Pt=Rr(ct,Zt)),U.assign(B,{index:ue,decryptedDirectory:q,versionMadeBy:Xe,msDosCompatible:mt,zip64:!1,compressedSize:0,uncompressedSize:0,commentLength:ot,offset:xt,diskNumberStart:ie(x,D+34),internalFileAttributes:ie(x,D+36),externalFileAttributes:sn,msdosAttributesRaw:$e,msdosAttributes:Ft,rawFilename:Le,filenameUTF8:Xt,commentUTF8:Ze,rawExtraField:C.subarray(He,be),rawComment:ct,filename:Ue,comment:Pt}),ef(B,B,x,D+6)&&tt(i,qi,Ue),B.offset+=F;let Ct=un(r,B.diskNumberStart)+B.offset;P=W.min(Ct,P),Ct<Ae&&tt(i,Yl,Ue),Ae=Ct,(B.version&rt)>WE&&tt(i,Vl,Ue),(B.rawBitFlag&Aa)==Aa&&tt(i,Wl,Ue),ce.has(B.filename)&&(ae=!0),ce.add(B.filename);let Fe=B.externalFileAttributes>>16&X;B.unixMode===w&&(Fe&(wr|Gn|kn))!=0&&(B.unixMode=Fe);let dr=!!(B.unixMode&Ns),as=!!(B.unixMode&bs),Oe=!!(B.unixMode&Os),y=((B.unixMode===w?Fe:B.unixMode)&En)==Yo,N=!y&&(B.unixMode!==w?(B.unixMode&Gn)!=0:Wt&&(Fe&Gn)!=0),z=B.unixMode!==w&&(B.unixMode&En)==kn,se=(Fe&En)==kn;U.assign(B,{setuid:dr,setgid:as,sticky:Oe,symlink:y,unixExternalUpper:Fe,internalFileAttribute:B.internalFileAttributes,externalFileAttribute:B.externalFileAttributes,executable:N,directory:z||se||mt&&Ft.directory||B.filename.endsWith(hn),zipCrypto:B.encrypted&&!B.extraFieldAES});let le=new bn(B);if(le.getData=(ve,an)=>B.getData(ve,le,n.readRanges,an),le.arrayBuffer=async ve=>{let an=new we,Lt=Qt(an.readable).then(on=>on.arrayBuffer());return Lt.catch(()=>{}),await B.getData(an,le,n.readRanges,ve),Lt},D=Se,ue==S-1&&Ne){let ve=so(x,C,D);ve&&(S+=ve,tt(i,ai))}let{onprogress:Je}=e;if(Je)try{await Je(ue+1,S,new bn(B))}catch{}yield le}let he=D,Q=fs(C.subarray(D))||(q?fs(ne):w);if(!Q&&!q){let ue=E+D,B=W.min(b-ue,6+X);B>=6&&(Q=fs(await _e(r,ue,B)))}Q&&(n.digitalSignature=Q,he=D+6+Q.length),(D!=Y&&he!=Y||!q&&D!=g&&he!=g)&<(a,i,Zl),ae&<(a,i,Kl);let Re=Te(n,e,gu),oe=Te(n,e,mu),ee=(a||Re)&&S&&P==Ht&&await oh(r)?Ht:0;return a&&(F||S&&P>ee)&&Ar(ci),(F||S&&P>Ht)&&tt(i,ci),Re&&(n.prependedData=P>ee?await _e(r,ee,P-ee):fe),n.comment=p?await _e(r,m+Ie,p):fe,oe&&(n.appendedData=T<r.size?await _e(r,T,r.size-T):fe),!0}async getEntries(e={}){let n=[];for await(let r of this.getEntriesGenerator(e))n.push(r);return n}async close(){let{reader:e}=this;!e.readUint8Array&&e.readable&&!e.readable.locked&&await e.readable.cancel()}},li=class{constructor(e={}){let{readable:n,writable:r}=new we,i=new On(n,e).getEntriesGenerator();this.readable=new it({async pull(s){let{done:a,value:o}=await i.next();if(a)return s.close();let c={...o,readable:(function(){let{readable:l,writable:u}=new we;if(o.getData)return f(),l;async function f(){try{await o.getData(u)}catch(d){try{await u.abort(d)}catch{}}}})()};delete c.getData,s.enqueue(c)}}),this.writable=r}};async function JE(t,e={}){if(t=new en(t),await Be(t),(t.size===w||!t.readUint8Array)&&(t=new Dt(await Qt(t.readable)),await Be(t)),t.size<Ie)return!1;let n=$i(e,{}),r=n!=Gt,i=rf(e[Qo],n),{endOfDirectoryInfo:s,endOfDirectoryReachingEndCount:a}=await sf(t,r,i);if(!s||n==nn&&a>1)return!1;let o=ie(K(s),20),c=s.offset+Ie+o;return t.size-c<=i}var fi=class{constructor(e,n){U.assign(this,{reader:e,options:n})}async getData(e,n,r,i={}){let s=this,a=rn(),{reader:o,index:c,offset:l,diskNumberStart:u,extraFieldAES:f,extraFieldZip64:d,compressionMethod:h,bitFlag:g,rawBitFlag:E,crc32:m,rawLastModDate:p,uncompressedSize:T,compressedSize:_}=s,{dataDescriptor:R}=g,A=n.localDirectory={},O=n.warnings=[],S=un(o,u)+l,F=await _e(o,S,Ve),P=K(F),H=Te(s,i,Vo),v=Te(s,i,Wo),M=Te(s,i,Xo);if(rc(H,v),H=H&&H.length&&H,v=v&&v.length&&v,f&&f.originalCompressionMethod!=Kr)throw new I(si);if(F.length<Ve||j(P,0)!=Fo)throw new I(xl);Ql(A,P,4);let{extraFieldLength:G,filenameLength:k}=A,Y=A.dataOffset=S+Ve+k+G,b=Te(s,i,Ru),D=$i(i,s.options),C=lh(b,D),x=fh(b,D),Z=fe;if(x&&(k||G)){let Se=await _e(o,S+Ve,k+G);Z=Se.subarray(0,k),A.rawExtraField=Se.subarray(k)}else A.rawExtraField=G?await _e(o,S+Ve+k,G):fe;x&&(A.rawFilename=Z),ef(s,A,P,4,!0)&&tt(O,qi),hh(s,A,Z,x,C?w:O);let{lastAccessDate:L,creationDate:q,uid:ne,gid:re}=A;L&&(n.lastAccessDate=L),q&&(n.creationDate=q),ne!==w&&n.uid===w&&(n.uid=ne),re!==w&&n.gid===w&&(n.gid=re);let $=s.encrypted&&A.encrypted&&!M,ce=$&&!f;if(M||(n.zipCrypto=ce),$&&(A.rawBitFlag&ya)==ya)throw new I(ri);let ae=M?w:Oc(h);if(h!=St&&h!=xn&&h!=Wn&&!ae&&!M)throw new I(si);if($){if(!ce&&(f.strength<1||f.strength>3))throw new I(ri);if(!H&&!v)throw new I(Cl)}if(Y+_>o.size)throw new I(Ul);let Ae=_,Ne=Jt(o.createReadable({offset:Y,size:Ae})),he=nc(Te(s,i,Zo)),Q=Te(s,i,wu),Re=Te(s,i,Tu),oe=Te(s,i,_u);oe&&(Re=!0);let{onstart:ee,onprogress:ue,onend:B}=i,ye=h!=St&&!M,Ee=M?_:T,He=h==Wn,be=Te(s,i,qo);He&&(be=!1);let Xe=Te(s,i,yu),mt=(Xe===w?Te(s,i,Au):Xe)&&!M&&(!$||ce||f&&f.vendorVersion==Jl),Wt={options:{codecType:Bc,password:H,rawPassword:v,zipCrypto:ce,encryptionStrength:f&&f.strength,checkCrc32:mt,checkAuthenticationCode:Te(s,i,Su),passwordVerification:ce&&(R?p>>>8&rt:m>>>24&rt),outputSize:Ee,crc32:m,compressed:ye,encrypted:$,useWebWorkers:Te(s,i,Ko),useCompressionStream:be,transferStreams:Te(s,i,jo),deflate64:He,format:ae?ae.format:w,codecURI:ae?ae.codecURI:w,compressionMethod:h,rawBitFlag:E,checkPasswordOnly:Q},config:a,streamOptions:{signal:he,size:Ae,onstart:ee,onprogress:ue,onend:B}};Re&&await ih({reader:o,fileEntry:n,index:c,offset:S,crc32:m,compressedSize:_,uncompressedSize:T,dataOffset:Y,dataDescriptor:R||A.bitFlag.dataDescriptor,extraFieldZip64:d||A.extraFieldZip64,readRanges:r});let Le,ot;try{if(!oe){Q&&(e=new at),e=new kr(e),await Be(e,ch(Ee,_,ye)),{writable:Le}=e;let{outputSize:Se}=await kc({readable:Ne,writable:Le},Wt);if(e.size+=Se,Se!=Ee)throw new I(Jr)}}catch(Se){if(Se.outputSize!==w&&(e.size+=Se.outputSize),!Q||Se.message!=Oi)throw ot=Se,Se}finally{if(!(!tl(e)&&Te(s,i,$o))&&Le&&!Le.locked){let ct=Le.getWriter();if(ot)try{await ct.abort(ot)}catch{}else await ct.close()}}return Q||oe?w:e.getData?e.getData():Le}};function ls(t){let e=W.min(t.byteLength,1024)-3;for(let n=0;n<e;n++)if(j(t,n)==Kf)return!0;return!1}function so(t,e,n){let r=0;for(;n+yn<=e.length&&j(t,n)==Mt;)n+=yn+ie(t,n+28)+ie(t,n+30)+ie(t,n+32),r++;return r%(X+1)?0:r}function fs(t){if(t.length>=6){let e=K(t);if(j(e,0)==Po){let n=ie(e,4);if(6+n<=t.length)return t.subarray(6,6+n)}}}function QE(t,e,n){let r=t&&t.compressedSize?t.compressedSize:e;return r>0&&r<=n?r:n}function eh(t){let e={rawExtensibleData:t};if(t.length>=28){let n=K(t),r=ie(n,26);U.assign(e,{compressionMethod:ie(n,0),compressedSize:Ge(n,2),uncompressedSize:Ge(n,10),encryptionAlgorithm:ie(n,18),bitLength:ie(n,20),flags:ie(n,22),hashAlgorithm:ie(n,24),hashData:t.subarray(28,28+r)})}return e}function Ql(t,e,n){let r=t.rawBitFlag=ie(e,n+2),i=(r&Nr)==Nr,s=j(e,n+6);U.assign(t,{encrypted:i,version:ie(e,n),bitFlag:{level:(r&Go)>>1,dataDescriptor:(r&br)==br,languageEncodingFlag:(r&Or)==Or},rawLastModDate:s,lastModDate:gh(s),filenameLength:ie(e,n+22),extraFieldLength:ie(e,n+24)})}function ef(t,e,n,r,i){let{rawExtraField:s}=e,a=e.extraField=new gt,o=K(s),c=0,l=!1;try{for(;c<s.length;){let O=ie(o,c),S=ie(o,c+2);a.set(O,{type:O,data:s.slice(c+4,c+4+S)}),c+=4+S}}catch{l=!0}c>s.length&&(l=!0);let u=ie(n,r+4);U.assign(e,{signature:j(n,r+Xn),crc32:j(n,r+Xn),compressedSize:j(n,r+ar),uncompressedSize:j(n,r+or)});let f=a.get(qr);f&&(th(f,e),e.extraFieldZip64=f);let d=a.get(qf);d&&(io(d,rl,sl,e,t),e.extraFieldUnicodePath=d);let h=a.get(jf);h&&(io(h,ki,il,e,t),e.extraFieldUnicodeComment=h);let g=a.get(vo);g&&g.data.length>=7?(nh(g,e,u),e.extraFieldAES=g):e.compressionMethod=u;let E=a.get(Jf);E&&(ao(E,e),e.extraFieldPkwareUnix=E);let m=a.get($f);m&&(ao(m,e),e.extraFieldUnixType1=m);let p=a.get(Mo);p&&(rh(p,e),e.extraFieldNTFS=p);let T=a.get(ko),_;if(T&&(_=oo(T,e,!1),e.extraFieldUnix=T),!_){let O=a.get(zo);O&&(oo(O,e,!0),e.extraFieldInfoZip=O)}let R=a.get(Ai);R&&(sh(R,e,i),e.extraFieldExtendedTimestamp=R);let A=a.get(Ho);return A&&(e.extraFieldUSDZ=A),l}function th(t,e){e.zip64=!0;let n=K(t.data),r=KE.filter(([s,a])=>e[s]==a),i=r.reduce((s,[,a])=>s+no[a].bytes,0);if(t.data.length<i)throw new I(Pl);for(let s=0,a=0;s<r.length;s++){let[o,c]=r[s],l=no[c];e[o]=t[o]=l.getValue(n,a),a+=l.bytes}}function io(t,e,n,r,i){if(t.data.length<5){t.valid=!1;return}let s=K(t.data),a=new jt;a.append(i[n]);let o=K(new V(4));o.setUint32(0,a.get(),!0);let c=j(s,1),l=kt(s,0);U.assign(t,{version:l,[e]:Rr(t.data.subarray(5)),valid:l==1&&!i.bitFlag.languageEncodingFlag&&c==j(o,0)}),t.valid&&(r[e]=t[e],r[e+ZE]=!0)}function nh(t,e,n){let r=K(t.data),i=kt(r,4);U.assign(t,{vendorVersion:kt(r,0),vendorId:kt(r,2),strength:i,originalCompressionMethod:n,compressionMethod:ie(r,5)}),e.compressionMethod=t.compressionMethod,t.vendorVersion!=Jl&&(e.crc32=w)}function rh(t,e){let n=K(t.data),r=4,i;try{for(;r<t.data.length&&!i;){let s=ie(n,r),a=ie(n,r+2);s==Bo&&(i=t.data.slice(r+4,r+4+a)),r+=4+a}}catch{}if(i&&i.length==24){let s=K(i),a=s.getBigUint64(0,!0),o=s.getBigUint64(8,!0),c=s.getBigUint64(16,!0);U.assign(t,{rawLastModDate:a,rawLastAccessDate:o,rawCreationDate:c});let l=us(a),u=us(o),f=us(c),d={lastModDate:l,lastAccessDate:u,creationDate:f};U.assign(t,d),U.assign(e,d,{rawLastAccessDate:o,rawCreationDate:c})}}function ao(t,e){if(t.data.length<8)return;let n=K(t.data),r=new yt((j(n,0)|0)*1e3),i=new yt((j(n,4)|0)*1e3),s={lastAccessDate:r,lastModDate:i};t.data.length>=12&&(s.uid=ie(n,8),s.gid=ie(n,10)),U.assign(t,s),U.assign(e,s)}function oo(t,e,n){try{let r=K(t.data),i,s;if(n){let a=0,o=kt(r,a++),c=kt(r,a++);i=co(t.data.subarray(a,a+c)),a+=c;let l=kt(r,a++);s=co(t.data.subarray(a,a+l)),U.assign(t,{version:o,uid:i,gid:s})}else t.data.length>=4&&(i=ie(r,0),s=ie(r,2),U.assign(t,{uid:i,gid:s}));return i!==w&&(e.uid=i),s!==w&&(e.gid=s),i!==w||s!==w}catch{}}function co(t){let e=new V(4);return e.set(t,0),new tn(e.buffer,e.byteOffset,4).getUint32(0,!0)}function sh(t,e,n){if(!t.data.length)return;let r=K(t.data),i=kt(r,0),s=[],a=[];n?((i&1)==1&&(s.push(Gr),a.push(Yr)),(i&2)==2&&(s.push(Yi),a.push(ll)),(i&4)==4&&(s.push(Vi),a.push(fl))):t.data.length>=5&&(s.push(Gr),a.push(Yr));let o=1;s.forEach((c,l)=>{if(t.data.length>=o+4){let u=j(r,o);e[c]=t[c]=new yt((u|0)*1e3);let f=a[l];t[f]=u}o+=4})}async function ih({reader:t,fileEntry:e,index:n,offset:r,crc32:i,compressedSize:s,uncompressedSize:a,dataOffset:o,dataDescriptor:c,extraFieldZip64:l,readRanges:u}){let f=0;if(c&&(l?f=Uo:f=Lo),f){let h=await _e(t,o+s,f+Kt),g=K(h),E=h.length==f+Kt&&j(g,0)==xo;if(E){let m=lo(g,Kt,l);(e.encrypted&&!e.zipCrypto||m.crc32==i)&&m.compressedSize==s&&m.uncompressedSize==a?f+=Kt:E=!1}if(h.length>=f){let m=lo(g,E?Kt:0,l);m.signature=E,e.localDirectory.dataDescriptor=m}}let d={start:r,end:o+s+f,fileEntry:e};for(let[h,g]of u)if(h!=n&&d.start<g.end&&g.start<d.end){let E=new I(Ll);throw E.overlappingEntry=g.fileEntry,E}u.set(n,d)}function lo(t,e,n){let r=j(t,e),i,s;return n?(i=Ge(t,e+4),s=Ge(t,e+12)):(i=j(t,e+4),s=j(t,e+8)),{crc32:r,compressedSize:i,uncompressedSize:s}}function un(t,e){return t.getDiskOffset?t.getDiskOffset(e):0}async function ah(t){return await tf(t)==ir}async function oh(t){let e=await tf(t);return e==ir||e==Zf}async function tf(t){let e=await _e(t,0,Ht);return j(K(e))}function nf(t){return t===nn||t===yi||t===Gt}function ch(t,e,n){return W.min(t,n?e*$E:e)}function $i(t,e){return fo(t,fo(e,yi))}function fo(t,e){let n=t[Hu];if(n!==w){if(!nf(n))throw new I(Hl);return n}let r=t[pu];return r===w?e:r?nn:e==Gt?Gt:yi}function lh(t,e){return t===w?e!=Gt:!!t}function fh(t,e){return t===w?e==nn:!!t}function uh(t,e){if(t===w)return e;if(!nf(t))throw new I(zl);return t}function dh(t,e){if(e==Gt)return!1;let n=t.split("/");return n.length>1&&n[n.length-1]===""&&n.pop(),n.includes("..")||t.startsWith("/")||t.startsWith("\\\\")||XE.test(t)?!0:e==nn&&(n.includes(".")||n.includes(""))}function rf(t,e){if(t!==w){let n=jr(t);if(typeof n!=fu||pe.isNaN(n)||n<0)throw new I(kl);return n}return e==nn?0:e==Gt?1/0:X}async function sf(t,e,n){let{size:r}=t,i=W.min(r,Ie+X),s={count:jE},a,o,c=0;for await(let[l,u,f,d,h]of af(t,i)){let g=ie(l,d+20);if(h+Ie+g==r){let E=await of(t,l,u,d,h,r,s);if(E==Vr){if(a||(a=ui(f,d,h)),c++,!e||c>1)break}else E==ji&&!o&&(o=ui(f,d,h))}}return a||(a=o),a||(a=await Eh(t,n,s)),{endOfDirectoryInfo:a,endOfDirectoryReachingEndCount:c}}async function Eh(t,e,n){let{size:r}=t,i=W.min(r,e==1/0?r:Ie+X+e),s,a;for await(let[o,c,l,u,f]of af(t,i)){let d=ui(l,u,f);s||(s=d);let h=await of(t,o,c,u,f,r,n);if(h==Vr)return d;h==ji&&!a&&(a=d)}return a||s}async function*af(t,e){let n=t.size-e,r=await _e(t,n,e),i=K(r);for(let s=r.length-Ie;s>=0;s--)j(i,s)==Co&&(yield[i,n,r,s,n+s])}function ui(t,e,n){return{offset:n,buffer:t.slice(e,e+Ie).buffer}}async function of(t,e,n,r,i,s,a){let o=ie(e,r+10),c=j(e,r+12),l=j(e,r+16);if(o==X||c==me||l==me)return await uo(t,e,n,i-vt,s,a)==Ri?Vr:ro;if(!o&&!c)return ji;let u=ie(e,r+6);for(let f of[i-c,un(t,u)+l])if(await uo(t,e,n,f,s,a)==Mt)return Vr;return ro}async function uo(t,e,n,r,i,s){if(r<0||r+4>i)return w;if(r>=n)return j(e,r-n);if(s.count>0){s.count--;let a=await _e(t,r,4);return j(K(a),0)}return w}function hh(t,e,n,r,i){let{rawFilename:s}=t,a=!i,o=t.decryptedDirectory&&(e.rawBitFlag&Sa)==Sa;r&&!o&&(n.length!=s.length||n.some((c,l)=>c!=s[l]))&<(a,i,"mismatched local file header (filename)"),(e.rawBitFlag&to)!=(t.rawBitFlag&to)&<(a,i,ql),e.compressionMethod!=t.compressionMethod&<(a,i,jl),!e.bitFlag.dataDescriptor&&!o&&(e.crc32||e.compressedSize||e.uncompressedSize)&&(e.crc32!=t.crc32||e.compressedSize!=t.compressedSize||e.uncompressedSize!=t.uncompressedSize)&<(a,i,$l)}function lt(t,e,n){t?Ar(n):tt(e,n)}function tt(t,e,n){if(!t.some(r=>r.reason==e)){let r={reason:e};n!==w&&(r.filename=n),t.push(r)}}function Ar(t){let e=new I(vl);throw e.reason=t,e}function Te(t,e,n){return e[n]===w?t.options[n]:e[n]}function Eo(t,e,n){return Si(Te(t,e,n))}function gh(t){let e=(t&4294901760)>>16,n=t&X,r=new yt(1980+((e&65024)>>9),((e&480)>>5)-1,e&31,(n&63488)>>11,(n&2016)>>5,(n&31)*2,0);return r<Pr?Pr:r}function us(t){return new yt(pe(t/Ce(1e4)-Ce(116444736e5)))}function kt(t,e){return t.getUint8(e)}function ie(t,e){return t.getUint16(e,!0)}function j(t,e){return t.getUint32(e,!0)}function Ge(t,e){let n=t.getBigUint64(e,!0);if(n>qE)throw new I(Gl);return pe(n)}var mh=U.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:vl,ERR_BAD_FORMAT:Bn,ERR_CENTRAL_DIRECTORY_NOT_FOUND:Fl,ERR_ENCRYPTED:Cl,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Ml,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Ul,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Ol,ERR_EOCDR_NOT_FOUND:bl,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Pl,ERR_INVALID_AUTHENTICATION_CODE:Tc,ERR_INVALID_COMPRESSED_DATA:xc,ERR_INVALID_CRC32:Pc,ERR_INVALID_FILENAME_VALIDATION:zl,ERR_INVALID_MAX_APPENDED_DATA_SIZE:kl,ERR_INVALID_PASSWORD:Ni,ERR_INVALID_SIGNATURE:bi,ERR_INVALID_STRICTNESS:Hl,ERR_INVALID_UNCOMPRESSED_SIZE:Jr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:xl,ERR_OVERLAPPING_ENTRY:Ll,ERR_SPLIT_ZIP_FILE:ii,ERR_UNSAFE_FILENAME:Bl,ERR_UNSUPPORTED_COMPRESSION:si,ERR_UNSUPPORTED_ENCRYPTION:ri,ERR_UNSUPPORTED_UINT64:Gl,ERR_WORKER_STARTUP_TIMEOUT:Ci,WARNING_APPENDED_DATA:oi,WARNING_COMPRESSED_PATCHED_DATA:Wl,WARNING_DUPLICATE_FILENAME:Kl,WARNING_MALFORMED_EXTRA_FIELD:qi,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:ql,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:jl,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:$l,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:Hn,WARNING_PREPENDED_DATA:ci,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Zl,WARNING_UNKNOWN_VERSION:Vl,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Xl,WARNING_UNSORTED_CENTRAL_DIRECTORY:Yl,WARNING_WRAPPED_ENTRIES_COUNT:ai,ZipReader:On,ZipReaderStream:li,isZipFile:JE}),cf="File already exists",lf="Zip file comment exceeds 64KB",wh="Invalid zip file comment (must be a Uint8Array)",_h="File entry comment exceeds 64KB",Th="Invalid file entry comment (must be a string)",ph="Invalid date (must be a valid Date instance)",Rh="File entry name exceeds 64KB",ff="Version exceeds 65535",Ah="The strength must equal 1, 2, or 3",yh="Encryption is not supported in USDZ files",Sh="Encryption is not supported when the 'passThrough' option is set",Ih="Invalid extra field (must be a Map)",Dh="Invalid extra field type (must be integer 0..65535)",Nh="Invalid extra field data (must be a Uint8Array)",Ji="Extra field data exceeds 64KB",bh="Compression method not supported",uf=-2147483648,df=2147483647,ho=Ce(0),go=Ce("0x7fffffffffffffff"),Qi="Zip64 is not supported (set the 'zip64' option to 'true')",Oh="Undefined uncompressed size",Fh="Undefined compression method",bm="Undetermined size",xh="Undefined reader",Ph="Zip file not empty",Ch="Invalid uid (must be integer 0..2^32-1)",Lh="Invalid gid (must be integer 0..2^32-1)",Uh="Invalid UNIX mode (must be integer 0..65535)",vh="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Mh="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",Bh="Invalid msdosAttributesRaw (must be integer 0..255)",Hh="Invalid msdosAttributes (must be an object with boolean flags)",zh="Invalid level (must be integer 0..9)",kh="Signature data exceeds 64KB",mo=new V([7,0,2,0,65,69,3,0,0]),Gh=4,Yh=9,Vh=67,Wh=1,di="infozip",Ei="unix",Xh=9,ds=0,wo=[],Qn=class{constructor(e,n={}){e=new kr(e);let{availableSize:r=cn,maxSize:i=cn}=e,s=r>0&&r!==cn&&i>0&&i!==cn;U.assign(this,{writer:e,addSplitZipSignature:s,options:n,fileEntries:new gt,filenames:new Sr,offset:n[hr]===w?e.size||e.writable.size||0:n[hr],initialOffset:n[hr]===w?0:n[hr]-(e.size||e.writable.size||0),pendingAddFileCalls:new Sr,pendingErrors:[],bufferedWrites:0,lastFileEntry:w})}prependZip(e){return Es(this,Zh(this,e))}appendZip(e){return Es(this,this.appendZipEntries(e))}async appendZipEntries(e){let n=this,{pendingAddFileCalls:r,filenames:i,fileEntries:s}=n;for(;r.size;)await ge.allSettled(je.from(r));let a,o=new ge(u=>a=u);r.add(o);let c=[],l;try{e=new en(e),await Be(e),(e.size===w||!e.readUint8Array)&&(e=new Dt(await Qt(e.readable)),await Be(e));let{ZipReader:u}=await ge.resolve().then(function(){return mh}),f=new u(e),d=await f.getEntries();await f.close(),await Be(n.writer);let{directoryOffset:h}=f;d.forEach(({filename:m})=>{if(i.has(m))throw new I(cf);i.add(m),c.push(m)}),n.writerLocked=!0;let{lockWriter:g}=n;n.lockWriter=new ge(m=>l=()=>{n.writerLocked=!1,m()}),await g,n.addSplitZipSignature&&(delete n.addSplitZipSignature,await dg(e)||(await ht(n.writer,hf()),n.offset+=Ht));let E=await Eg(n,e,d,h);d.forEach(m=>{let{version:p,rawLastModDate:T,rawFilename:_,bitFlag:R,encrypted:A,uncompressedSize:O,compressedSize:S,extraFieldZip64:F}=m,{compressionMethod:P,rawExtraField:H}=m,{level:v,languageEncodingFlag:M,dataDescriptor:G}=R;H=Ef(H||fe),m.extraFieldAES&&(P=Kr);let k=te(H),Y=!!F&&F.uncompressedSize!==w,b=!!F&&F.compressedSize!==w,D=Tf(v,M,G,A,P)&~Go|v<<1,{headerArray:C,headerView:x}=_f({version:p,bitFlag:D,compressionMethod:P,uncompressedSize:O,compressedSize:S,rawLastModDate:T,rawFilename:_,zip64CompressedSize:b,zip64UncompressedSize:Y,extraFieldLength:k}),{crc32:Z}=m;Z!==w&&xe(x,Xn,Z);let{offset:L,diskNumberStart:q}=E.get(m);U.assign(m,{zip64UncompressedSize:Y,zip64CompressedSize:b,offset:L,diskNumberStart:q,zip64DiskNumberStart:!1,rawExtraFieldZip64:fe,rawExtraFieldAES:fe,rawExtraFieldExtendedTimestamp:fe,rawExtraFieldNTFS:fe,rawExtraFieldUnix:fe,rawExtraField:H,rawCentralExtraField:fe,extendedTimestamp:!1,headerArray:C,headerView:x}),s.set(m.filename,m)})}catch(u){throw c.forEach(f=>i.delete(f)),u}finally{a(),r.delete(o),l&&l()}}add(e="",n,r={}){let i=this,{pendingAddFileCalls:s}=i,a=Kh(i,e,n,r);s.add(a);let o=()=>s.delete(a);return ge.prototype.then.call(a,o,o),Es(i,a)}remove(e){let{filenames:n,fileEntries:r}=this;if(typeof e==Sn&&(e=r.get(e)),e&&e.filename!==w){let{filename:i}=e;if(n.has(i)&&r.has(i))return n.delete(i),r.delete(i),!0}return!1}async close(e=fe,n={}){let r=this,{pendingAddFileCalls:i,writer:s}=this,{writable:a}=s;if(!(e instanceof V))throw new I(wh);if(te(e)>X)throw new I(lf);for(;i.size;)await ge.allSettled(je.from(i));await ge.allSettled(r.pendingErrors.map(l=>l.recorded));let o=r.pendingErrors.filter(l=>l.error&&!l.observed);if(o.length){let l=o.map(f=>f.error);o.forEach(f=>f.observed=!0);let[u]=l;try{u.entryErrors=l}catch{}throw u}return await og(r,e,n),!tl(s)&&J(r,n,$o)||await a.getWriter().close(),s.getData?s.getData():a}},_o=class{constructor(e={}){let{readable:n,writable:r}=new we;this.readable=n,this.zipWriter=new Qn(r,e),this.pendingAddFileCalls=new Sr}transform(e){let n=this.zipWriter,r,{readable:i,writable:s}=new we({start(o){r=o},flush:()=>{a()}});return To(this,this.zipWriter.add(e,i),o=>r.error(o)),{readable:this.readable,writable:s};async function a(){try{await n.close()}catch(o){await hs(n,o)}}}writable(e){let n,{readable:r,writable:i}=new we({start(s){n=s}});return To(this,this.zipWriter.add(e,r),s=>n.error(s)),i}async close(e=w,n={}){let{zipWriter:r}=this,s=(await ge.allSettled(je.from(this.pendingAddFileCalls))).filter(a=>a.status=="rejected").map(a=>a.reason);if(s.length){let[a]=s;try{a.entryErrors=s}catch{}throw await hs(r,a),a}try{return await r.close(e,n)}catch(a){throw await hs(r,a),a}}},hi=class extends ge{then(e,n){let{watcher:r}=this;return r&&(r.observed=!0),super.then(e,n)}};function Es(t,e){let n=new hi((i,s)=>ge.prototype.then.call(e,i,s)),r={};return n.watcher=r,r.recorded=ge.prototype.then.call(n,w,i=>r.error=i),t.pendingErrors.push(r),n}async function Zh(t,e){if(t.filenames.size)throw new I(Ph);await t.appendZipEntries(e)}async function Kh(t,e,n,r){if(r=U.assign({},r),J(t,r,Rn)&&!e.endsWith(hn)&&(e+=hn),t.filenames.has(e))throw new I(cf);t.filenames.add(e),ds<rn().maxWorkers?ds++:await new ge(i=>wo.push(i));try{return await qh(t,e,n,r)}catch(i){throw t.filenames.delete(e),i}finally{let i=wo.shift();i?i():ds--}}async function hs(t,e){try{await t.writer.writable.abort(e)}catch{}}function To(t,e,n){t.pendingAddFileCalls.add(e),e.catch(r=>{try{n(r)}catch{}})}async function qh(t,e,n,r){let i=jh(t,e,r);({name:e}=i);let s=$h(t,e,r),{comment:a}=s,o=r[Ki];t.fileEntries.set(e,w);let c=t.lastFileEntry,l={},u;s.resolvedOptions.keepOrder&&(l.lockFileEntry=new ge(d=>u=d)),t.lastFileEntry=l;let f;try{let{resolvedOptions:d}=s;d.level!=0&&d.compressionMethod===w&&!d.passThrough&&!await Xd(rn())&&(d.level=0);let h=await Jh(t,n,s,r);({reader:n}=h);let g=er(t.writer),E=At(t.writer);r=U.assign({},r,i.resolvedOptions,s.resolvedOptions,h.resolvedOptions,{signature:r[ni],crc32:r.crc32===w?r[ni]:r.crc32,offset:t.offset-g,diskNumberStart:E,[Zn]:t.options[Zn]});let m=ng(r),p=sg(r),T=te(m.localHeaderArray,p.dataDescriptorArray);f=await eg(t,e,n,{headerInfo:m,dataDescriptorInfo:p,metadataSize:T,fileEntry:l,previousFileEntry:c,releaseLockFileEntry:u},r)}catch(d){throw t.fileEntries.delete(e),d}finally{u&&u(c&&c.lockFileEntry)}return U.assign(f,{name:e,comment:a,extraField:o,[Wi]:f.internalFileAttributes,[Xi]:f.externalFileAttributes}),new bn(f)}function jh(t,e,n){let r=J(t,n,gl),i=J(t,n,_l,r?iu:Da),s=J(t,n,pl),a=dn(t,n,Al),o=dn(t,n,yl),c=dn(t,n,Sl),l=J(t,n,vu),u=J(t,n,Il),f=J(t,n,Dl),d=J(t,n,Nl);if(Mn(a,me,Ch),Mn(o,me,Lh),Mn(c,X,Uh),l!==w&&l!==di&&l!==Ei)throw new I(vh);if(l===Ei&&(a!==w&&a>X||o!==w&&o>X))throw new I(Mh);l===w&&(a!==w||o!==w)&&(l=di);let h=dn(t,n,El),g=J(t,n,hl),E=a!==w||o!==w||c!==w||l||s,m=h!==w||g!==w;if(E?(r=!1,i=i&rt|Da):m&&(r=!0,i=i&rt),Mn(h,rt,Bh),g&&(typeof g!==lu||je.isArray(g)))throw new I(Hh);if(i>X)throw new I(ff);let p=wf(t,n,dl,Xi),T=p!==w;T||(p=0),!n[Rn]&&e.endsWith(hn)&&(n[Rn]=!0);let _=J(t,n,Rn);if(_?(e.endsWith(hn)||(e+=hn),T||(p=Fr,r||(p|=(kn|Gn|wr)<<16))):!r&&!T&&(s?p=(Gn|wr)<<16:p=wr<<16),!r){let O=c!==w||!!(u||f||d),S=p>>16&X;c=c===w?S:c&X,u?c|=Ns:u=!!(c&Ns),f?c|=bs:f=!!(c&bs),d?c|=Os:d=!!(c&Os),(!T||O)&&(_?c=c&~En|kn:c&En||(c|=nu),p=(c&X)<<16|p&X)}({msdosAttributesRaw:h,msdosAttributes:g}=rg(h,g)),m&&(p=p&me|h&rt);let R=p>>16&X,A=c!==w&&(c&En)==Yo;return{name:e,resolvedOptions:{versionMadeBy:i,msDosCompatible:!!r,externalFileAttributes:p,unixExternalUpper:R,uid:a,gid:o,unixMode:c,unixExtraFieldType:l,symlink:A,setuid:u,setgid:f,sticky:d,msdosAttributesRaw:h,msdosAttributes:g}}}function $h(t,e,n){let r=gi(t,n,Uu)||_r,i=r(e,ec);if(i===w&&(i=_r(e)),te(i)>X)throw new I(Rh);let s=n[ki]||"";if(typeof s!=Sn)throw new I(Th);let a=r(s,tc);if(a===w&&(a=_r(s)),te(a)>X)throw new I(_h);let o=J(t,n,wl);if(o!==w&&o>X)throw new I(ff);let c=_s(t,n,Gr,new yt),l=J(t,n,Yr),u=_s(t,n,Yi),f=_s(t,n,Vi),d=wf(t,n,ul,Wi,0),h=J(t,n,Xo),g=J(t,n,Vo),E=J(t,n,Wo);rc(g,E);let m=dn(t,n,Iu,3),p=J(t,n,Tl),T=J(t,n,Du,!0),_=J(t,n,Nu),R=J(t,n,bu,!0),A=J(t,n,Ko),O=J(t,n,jo),S=J(t,n,Fu),F=gi(t,n,xu),P=J(t,n,Pu,!0),H=nc(J(t,n,Zo)),v=J(t,n,Cu,!0),M=J(t,n,Rl),G=h||M===w?w:Oc(M);if(!h&&M!==w&&M!==St&&M!==xn&&!G)throw new I(bh);let k=dn(t,n,Ou);if(Mn(k,Xh,zh),t.options[Zn]){if(g!==w||E!==w)throw new I(yh);k===w&&M===w&&(k=0)}h&&(k=w);let Y=J(t,n,qo),b=J(t,n,Jo);S&&b===w&&(b=!1),(b===w||p&&!h)&&(b=!0),k!==w&&k!=6&&(Y=!1);let D=J(t,n,Zi);if(!p&&(g!==w||E!==w)&&!(pe.isInteger(m)&&m>=1&&m<=3))throw new I(Ah);let C=gs(n[Ki]),x=gs(n[Mu]),Z=gs(n[Bu]);return{comment:s,resolvedOptions:{rawFilename:i,rawComment:a,version:o,lastModDate:c,rawLastModDate:l,lastAccessDate:u,creationDate:f,internalFileAttributes:d,passThrough:h,password:g,rawPassword:E,encryptionStrength:m,zipCrypto:p,extendedTimestamp:T,ntfsTimestamp:_,keepOrder:R,useWebWorkers:A,transferStreams:O,bufferedWrite:S,createTempStream:F,dataDescriptorSignature:P,signal:H,useUnicodeFileNames:v,compressionMethod:M,format:G?G.format:w,codecURI:G?G.codecURI:w,codecVersionNeeded:G?G.versionNeeded:w,level:k,useCompressionStream:Y,dataDescriptor:b,zip64:D,rawExtraField:C,rawLocalExtraField:x,rawCentralExtraField:Z}}}function gs(t){if(!t)return fe;if(!(t instanceof gt))throw new I(Ih);let e=0,n=0;t.forEach((s,a)=>{if(sc(a,X,Dh),!(s instanceof V))throw new I(Nh);if(te(s)>X)throw new I(Ji);e+=4+te(s)});let r=new V(e),i=K(r);return t.forEach((s,a)=>{ut(i,n,a),ut(i,n+2,te(s)),rr(r,s,n+4),n+=4+te(s)}),r}async function Jh(t,e,{resolvedOptions:n},r){if(n.passThrough&&!e&&!J(t,r,Rn))throw new I(xh);let i;return e&&(e=new en(e),await Be(e),{size:i}=e),U.assign({reader:e},Qh(t,!!e,i,n,r))}function Qh(t,e,n,r,i){let{passThrough:s,zipCrypto:a,password:o,rawPassword:c,encryptionStrength:l}=r,{dataDescriptor:u,zip64:f,level:d,compressionMethod:h}=r,g=0,E=0;if(s&&e){if(E=i[Gi],E===w)throw new I(Oh);if(h===w)throw new I(Fh)}let m=f===!0,p=J(t,i,ml);if(e&&s&&!p&&te(o,c))throw new I(Sh);let T=e&&(!!(o&&te(o)||c&&te(c))||s&&p);e||(d=0,h=St);let _=T?a?12:16+l*4:0;e&&(s?(i.uncompressedSize=E,g=n===w?Io(E)+_:n):n===w?(u=!0,(f||f===w)&&(f=!0,E=g=me+1)):(i.uncompressedSize=E=n,g=(mi(h,d)?Io(E):E)+_));let R=!T&&(!e||n===0&&!s)&&!mi(h,d);R&&!a&&J(t,i,Jo)===w&&(u=!1);let A=m||E>=me,O=m||g>=me;if(A||O){if(f===!1)throw new I(Qi);f=!0}return f=f||!1,{maximumCompressedSize:g,resolvedOptions:{dataDescriptor:u,emptyEntry:R,zip64:f,zip64UncompressedSize:A,zip64CompressedSize:O,uncompressedSize:E,level:d,compressionMethod:h,encrypted:T}}}async function eg(t,e,n,r,i){let{fileEntries:s,writer:a}=t,{keepOrder:o,dataDescriptor:c,emptyEntry:l,signal:u}=i,{headerInfo:f,fileEntry:d,previousFileEntry:h,releaseLockFileEntry:g}=r,E=t.options[Zn],m=d,p,T,_,R,A,O=0,S,F=o&&h?h.lockFileEntry:w;s.set(e,m);try{i.bufferedWrite||!o||t.writerLocked||t.bufferedWrites||!c&&!l?(p=!0,t.bufferedWrites++,i.createTempStream?S=await i.createTempStream():S=new we(w,w,{highWaterMark:cn}),S.size=0,await Be(a)):(S=a,await F,await P()),await Be(S);let v=er(a);t.addSplitZipSignature&&!p&&await Ao(t,a),E&&!p&&po(r,t.offset-v);let{localHeaderArray:M}=f;p||await H();let G=At(a),k=tr(t,a);if(m.diskNumberStart=G,p||(R=!0,A=a.size,await ht(S,M)),m=await tg(n,S,m,r,rn(),i),p||(R=!1),s.set(e,m),m.filename=e,p){if(await ge.all([S.writable.getWriter().close(),F]),await P(),t.addSplitZipSignature&&await Ao(t,a),_=!0,A=a.size,await H(),m.diskNumberStart=At(a),m.offset=tr(t,a),E){let Y=r.metadataSize;po(r,t.offset-er(a)),m.size+=r.metadataSize-Y}ag(m,f.localHeaderView,i),await ht(a,f.localHeaderArray),await gf(S.readable,a,u,Y=>O+=Y),a.size+=S.size,_=!1}else m.diskNumberStart=G,m.offset=k;return t.offset+=m.size,m}catch(v){if(_||R){if(t.hasCorruptedEntries=!0,v)try{v.corruptedEntry=!0}catch{}t.offset+=a.size-A,p&&(t.offset+=O)}throw s.delete(e),v}finally{if(p&&t.bufferedWrites--,g&&g(F),T&&T(),p&&S&&S.dispose)try{await S.dispose()}catch{}}async function P(){t.writerLocked=!0;let{lockWriter:v}=t;t.lockWriter=new ge(M=>T=()=>{t.writerLocked=!1,M()}),await v}async function H(){Fn(a,te(f.localHeaderArray))&&await a.closeDisk()}}async function tg(t,e,{diskNumberStart:n,lockFileEntry:r},i,s,a){let{headerInfo:o,dataDescriptorInfo:c,metadataSize:l}=i,{headerArray:u,headerView:f,lastModDate:d,rawLastModDate:h,encrypted:g,compressed:E,version:m,compressionMethod:p,rawExtraFieldZip64:T,localExtraFieldZip64Length:_,rawExtraFieldExtendedTimestamp:R,extraFieldExtendedTimestampFlag:A,rawExtraFieldNTFS:O,rawExtraFieldUnix:S,rawExtraFieldAES:F}=o,{dataDescriptorArray:P}=c,{rawFilename:H,lastAccessDate:v,creationDate:M,password:G,rawPassword:k,level:Y,zip64:b,zip64UncompressedSize:D,zip64CompressedSize:C,zipCrypto:x,dataDescriptor:Z,directory:L,executable:q,versionMadeBy:ne,rawComment:re,rawExtraField:$,rawCentralExtraField:ce,useWebWorkers:ae,transferStreams:Ae,onstart:Ne,onprogress:he,onend:Q,signal:Re,encryptionStrength:oe,extendedTimestamp:ee,msDosCompatible:ue,internalFileAttributes:B,externalFileAttributes:ye,uid:Ee,gid:He,unixMode:be,symlink:Xe,setuid:mt,setgid:Wt,sticky:Le,unixExternalUpper:ot,msdosAttributesRaw:Se,msdosAttributes:ct,useCompressionStream:Xt,passThrough:Ze,format:sn,codecURI:$e}=a,Ft={lockFileEntry:r,versionMadeBy:ne,zip64:b,directory:!!L,executable:!!q,filenameUTF8:!0,rawFilename:H,commentUTF8:!0,rawComment:re,rawExtraFieldZip64:T,localExtraFieldZip64Length:_,rawExtraFieldExtendedTimestamp:R,rawExtraFieldNTFS:O,rawExtraFieldUnix:S,rawExtraFieldAES:F,rawExtraField:$,rawCentralExtraField:ce,extendedTimestamp:ee,msDosCompatible:ue,internalFileAttributes:B,externalFileAttributes:ye,diskNumberStart:n,uid:Ee,gid:He,unixMode:be,symlink:!!Xe,setuid:mt,setgid:Wt,sticky:Le,unixExternalUpper:ot,msdosAttributesRaw:Se,msdosAttributes:ct},{crc32:xt,uncompressedSize:ke}=a,Ke=0;Ze||(ke=0);let{writable:Zt}=e;if(t){let Ue=Jt(nl(t)),Pt=t.size,Ct={options:{codecType:Pi,inputSize:Pt,level:Y,rawPassword:k,password:G,encryptionStrength:oe,zipCrypto:g&&x,passwordVerification:g&&x&&h>>8&rt,computeCrc32:!Ze,compressed:E&&!Ze,encrypted:g&&!Ze,useWebWorkers:ae,useCompressionStream:Xt,transferStreams:Ae,format:sn,codecURI:$e,compressionMethod:p},config:s,streamOptions:{signal:Re,size:Pt,onstart:Ne,onprogress:he,onend:Q}};try{let Fe=await kc({readable:Ue,writable:Zt},Ct);if(Ke=Fe.outputSize,e.size+=Ke,Ze||(ke=Fe.inputSize,(!g||x)&&(xt=Fe.crc32)),!C&&Ke>=me||!D&&ke>=me)throw new I(Qi)}catch(Fe){throw Fe.outputSize!==w&&(e.size+=Fe.outputSize),Fe}}return ig({crc32:xt,compressedSize:Ke,uncompressedSize:ke,headerInfo:o,dataDescriptorInfo:c},a),Z&&await ht(e,P),U.assign(Ft,{uncompressedSize:ke,compressedSize:Ke,lastModDate:d,rawLastModDate:h,creationDate:M,lastAccessDate:v,encrypted:!!g,zipCrypto:!!x,size:l+Ke,compressionMethod:p,version:m,headerArray:u,headerView:f,signature:xt,crc32:g&&!x&&!Ze?w:xt,extraFieldExtendedTimestampFlag:A,zip64UncompressedSize:D,zip64CompressedSize:C}),Ft}function ng(t){let{rawFilename:e,lastModDate:n,rawLastModDate:r,lastAccessDate:i,creationDate:s,level:a,zip64:o,zipCrypto:c,useUnicodeFileNames:l,dataDescriptor:u,directory:f,rawExtraField:d,rawLocalExtraField:h,encryptionStrength:g,extendedTimestamp:E,ntfsTimestamp:m,passThrough:p,encrypted:T,zip64UncompressedSize:_,zip64CompressedSize:R,uncompressedSize:A,crc32:O}=t,{version:S,compressionMethod:F}=t,P=!f&&mi(F,a),H,v=p||!P,M=o&&(t.bufferedWrite||!u||!_&&!R||v),G=M||o&&u&&(_||R);if(o&&(_||R)){let Q=Ye(20);if(Q.writeUint16(qr),Q.writeUint16(16),H=Q.array,M&&(Q.writeUint64(A),v)){let Re=T?c?12:16+g*4:0;Q.writeUint64(p?0:A+Re)}}else H=fe;let k;if(T&&!c){let he=Ye(te(mo)+2);he.writeUint16(vo),he.writeBytes(mo),k=he.array,k[8]=g}else k=fe;let Y,b,D;if(E){let he=yr(n),Q=mf(he);if(Q){let oe=9+(i?4:0)+(s?4:0),ee=Ye(oe);D=1+(i?2:0)+(s?4:0),ee.writeUint16(Ai),ee.writeUint16(oe-4),ee.writeUint8(D),ee.writeUint32(he),i&&ee.writeUint32(yo(yr(i))),s&&ee.writeUint32(yo(yr(s))),b=ee.array}else b=fe;if(m===w?!Q||!!(i||s):m)try{let oe=ws(n),ee=Ye(36);ee.writeUint16(Mo),ee.writeUint16(32),ee.skip(4),ee.writeUint16(Bo),ee.writeUint16(24),ee.writeUint64(oe),ee.writeUint64(i?ws(i):oe),ee.writeUint64(s?ws(s):oe),Y=ee.array}catch{Y=fe}else Y=fe}else Y=b=fe;let C;try{let{uid:he,gid:Q,unixExtraFieldType:Re}=t;if(Re==di&&(he!==w||Q!==w)){let oe=Ro(he===w?0:he),ee=Ro(Q===w?0:Q),ue=3+oe.length+ee.length,B=Ye(4+ue);B.writeUint16(zo),B.writeUint16(ue),B.writeUint8(1),B.writeUint8(oe.length),B.writeBytes(oe),B.writeUint8(ee.length),B.writeBytes(ee),C=B.array}else if(Re==Ei&&(he!==w||Q!==w)){let oe=Ye(8);oe.writeUint16(ko),oe.writeUint16(4),oe.writeUint16((he===w?0:he)&X),oe.writeUint16((Q===w?0:Q)&X),C=oe.array}else C=fe}catch{C=fe}F===w&&(F=P?xn:St),S===w&&(S=F==St&&!f&&!T?ru:su);let{codecVersionNeeded:x}=t;P&&x!==w&&(S=S>x?S:x),o&&(S=S>xr?S:xr),T&&!c&&(S=S>Ia?S:Ia,p&&O!==w&&(k[Gh]=Wh),ut(K(k),Yh,F),F=Kr);let Z=G?te(H):0,L=Z+te(k,b,Y,C,d,h),q=t[Zn]?Vh:0;if(L+q>X)throw new I(Ji);let ne=new yt(W.ceil(W.floor(n.getTime()/1e3)/2)*2e3),{headerArray:re,headerView:$,rawLastModDate:ce}=_f({version:S,bitFlag:Tf(a,l,u,T,F),compressionMethod:F,uncompressedSize:A,lastModDate:ne<Pr?Pr:ne>Na?Na:ne,rawLastModDate:r,rawFilename:e,zip64CompressedSize:R,zip64UncompressedSize:_,extraFieldLength:L}),ae=Ye(Ve+te(e)+L),Ae=ae.array,Ne=K(Ae);return ae.writeUint32(Fo),ae.writeBytes(re),ae.writeBytes(e),G&&ae.writeBytes(H),ae.writeBytes(k),ae.writeBytes(b),ae.writeBytes(Y),ae.writeBytes(C),ae.writeBytes(d),ae.writeBytes(h),u&&(R||xe(Ne,ar+qt,0),_||xe(Ne,or+qt,0)),{localHeaderArray:Ae,localHeaderView:Ne,headerArray:re,headerView:$,lastModDate:n,rawLastModDate:ce,encrypted:T,compressed:P,version:S,compressionMethod:F,extraFieldExtendedTimestampFlag:D,rawExtraFieldZip64:fe,localExtraFieldZip64Length:Z,rawExtraFieldExtendedTimestamp:b,rawExtraFieldNTFS:Y,rawExtraFieldUnix:C,rawExtraFieldAES:k,extraFieldLength:L}}function po(t,e){let{headerInfo:n}=t,{localHeaderArray:r,extraFieldLength:i}=n,s=64-(e+te(r))%64;s<4&&(s+=64);let a=new V(s),o=K(a);ut(o,0,Ho),ut(o,2,s-4);let c=r;n.localHeaderArray=r=new V(te(c)+s),rr(r,c),rr(r,a,te(c));let l=K(r);ut(l,28,i+s),n.localHeaderView=l,t.metadataSize+=s}function Ro(t){let e=new V(4);K(e).setUint32(0,t,!0);let r=4;for(;r>1&&e[r-1]===0;)r--;return e.subarray(0,r)}function rg(t,e){if(t!==w)t=t&rt;else if(e!==w){let{readOnly:n,hidden:r,system:i,directory:s,archive:a}=e,o=0;n&&(o|=ys),r&&(o|=Ss),i&&(o|=Is),s&&(o|=Fr),a&&(o|=Ds),t=o&rt}return e===w&&(e={readOnly:!!(t&ys),hidden:!!(t&Ss),system:!!(t&Is),directory:!!(t&Fr),archive:!!(t&Ds)}),{msdosAttributesRaw:t,msdosAttributes:e}}function sg({zip64:t,dataDescriptor:e,dataDescriptorSignature:n}){let r=fe,i,s=0,a=t?Uo:Lo;return n&&(a+=Kt),e&&(r=new V(a),i=K(r),n&&(s=Kt,xe(i,0,xo))),{dataDescriptorArray:r,dataDescriptorView:i,dataDescriptorOffset:s}}function ig({crc32:t,compressedSize:e,uncompressedSize:n,headerInfo:r,dataDescriptorInfo:i},{zip64:s,zipCrypto:a,passThrough:o,dataDescriptor:c}){let{headerView:l,encrypted:u}=r,{dataDescriptorView:f,dataDescriptorOffset:d}=i;(!u||a||o)&&t!==w&&(xe(l,Xn,t),c&&xe(f,d,t)),s?c&&(nr(f,d+4,Ce(e)),nr(f,d+12,Ce(n))):(xe(l,ar,e),xe(l,or,n),c&&(xe(f,d+4,e),xe(f,d+8,n)))}function ag({rawFilename:t,encrypted:e,zip64:n,localExtraFieldZip64Length:r,crc32:i,compressedSize:s,uncompressedSize:a,zip64UncompressedSize:o,zip64CompressedSize:c},l,{dataDescriptor:u,passThrough:f}){if(u||((!e||f&&i!==w)&&xe(l,Xn+qt,i),c||xe(l,ar+qt,s),o||xe(l,or+qt,a)),n&&r){let d=Ve+te(t)+4;nr(l,d,Ce(a)),nr(l,d+8,Ce(s))}}async function og(t,e,n){let r=cg(t.fileEntries),{directoryStart:i,directoryEnd:s,directoryArray:a}=await lg(t,r,n),o=await fg(t,a,n);await ug(t,e,n,{directoryStart:i,directoryEnd:s,directoryDataLength:r,signatureLength:o})}function cg(t){let e=0;for(let[,n]of t){let{rawFilename:r,rawExtraFieldAES:i,rawComment:s,rawExtraFieldNTFS:a,rawExtraFieldUnix:o,rawExtraField:c,rawCentralExtraField:l,extendedTimestamp:u,extraFieldExtendedTimestampFlag:f,lastModDate:d,zip64UncompressedSize:h,zip64CompressedSize:g,uncompressedSize:E,compressedSize:m}=n,p=n.offset>=me,T=n.diskNumberStart>=X,_;if(p||T||h||g){let S=4+(h?8:0)+(g?8:0)+(p?8:0)+(T?4:0),F=Ye(S);F.writeUint16(qr),F.writeUint16(S-4),h&&F.writeUint64(E),g&&F.writeUint64(m),p&&F.writeUint64(n.offset),T&&F.writeUint32(n.diskNumberStart),_=F.array}else _=fe;n.rawExtraFieldZip64=_,n.zip64Offset=p,n.zip64DiskNumberStart=T;let R,A=yr(d);if(u&&mf(A)){let S=Ye(9);S.writeUint16(Ai),S.writeUint16(5),S.writeUint8(f),S.writeUint32(A),R=S.array}else R=fe;n.rawExtraFieldExtendedTimestamp=R;let O=te(_,i,a,o,R,c,l);if(O>X)throw new I(Ji);e+=yn+te(r,s)+O}return e}async function lg(t,e,n){let{fileEntries:r,writer:i}=t,s=new V(e);await Be(i);let a=0,o=0,c=At(i),l=er(i),u=0;for(let[f,d]of je.from(r.values()).entries()){let{offset:h,rawFilename:g,rawExtraFieldZip64:E,rawExtraFieldAES:m,rawExtraFieldExtendedTimestamp:p,rawExtraFieldNTFS:T,rawExtraFieldUnix:_,rawExtraField:R,rawCentralExtraField:A,rawComment:O,versionMadeBy:S,headerArray:F,headerView:P,zip64UncompressedSize:H,zip64CompressedSize:v,zip64DiskNumberStart:M,zip64Offset:G,internalFileAttributes:k,externalFileAttributes:Y,diskNumberStart:b,uncompressedSize:D,compressedSize:C}=d,x=te(E,m,p,T,_,R,A),Z=yn+te(g,O)+x;Fn(i,a+Z-o)&&(await ht(i,s.slice(o,a)),o=a,u=0,await i.closeDisk()),f==0&&(c=At(i),l=er(i)),H||xe(P,or,D),v||xe(P,ar,C),(G||M)&&d.version<xr&&ut(P,au,xr);let L=Ye(Z);if(L.writeUint32(Mt),L.writeUint16(S),L.writeBytes(F.subarray(0,Ve-4-2)),L.writeUint16(x),L.writeUint16(te(O)),L.writeUint16(M?X:b),L.writeUint16(k),L.writeUint32(Y),L.writeUint32(G?me:h),L.writeBytes(g),L.writeBytes(E),L.writeBytes(m),L.writeBytes(p),L.writeBytes(T),L.writeBytes(_),L.writeBytes(R),L.writeBytes(A),L.writeBytes(O),rr(s,L.array,a),a+=Z,u++,n.onprogress)try{await n.onprogress(f+1,r.size,new bn(d))}catch{}}return await ht(i,o?s.slice(o):s),{directoryStart:{diskNumber:c,diskOffset:l},directoryEnd:{diskNumber:At(i),entriesLength:u},directoryArray:s}}async function fg(t,e,n){let r=gi(t,n,Yu);if(r){let i=await r(e),s=te(i);if(s>X)throw new I(kh);let a=Ye(6+s);a.writeUint32(Po),a.writeUint16(s),a.writeBytes(i);let{writer:o}=t;return Fn(o,te(a.array))&&await o.closeDisk(),await ht(o,a.array),6+s}return 0}async function ug(t,e,n,r){let{writer:i}=t,{directoryStart:s,directoryEnd:a,signatureLength:o}=r,{directoryDataLength:c}=r,l=t.fileEntries.size,u=s.diskNumber,f=tr(t,s),d=te(e);if(d>X)throw new I(lf);let h=J(t,n,Zi),g=At(i);if(Fn(i,(h?Ra:Ie)+d)&&g++,f>=me||c>=me||l>=X||g>=X){if(h===!1)throw new I(Qi);h=!0}let E=Ye(h?Ra:Ie);Fn(i,te(E.array)+d)&&await i.closeDisk(),g=At(i);let m=g==a.diskNumber?a.entriesLength:0;h&&(E.writeUint32(As),E.writeUint64(44),E.writeUint16(45),E.writeUint16(45),E.writeUint32(g),E.writeUint32(u),E.writeUint64(m),E.writeUint64(l),E.writeUint64(c),E.writeUint64(f),E.writeUint32(Ri),E.writeUint32(g),E.writeUint64(Ce(tr(t,i))+Ce(c)+Ce(o)),E.writeUint32(g+1),J(t,n,Lu,!0)&&(g=X,u=X),m=X,l=X,f=me,c=me),E.writeUint32(Co),E.writeUint16(g),E.writeUint16(u),E.writeUint16(m),E.writeUint16(l),E.writeUint32(c),E.writeUint32(f),E.writeUint16(d),await ht(i,E.array),d&&await ht(i,e)}function Ye(t){let e=new V(t),n=K(e),r=0;return{array:e,writeUint8:i=>{mg(n,r,i),r+=1},writeUint16:i=>{ut(n,r,i),r+=2},writeUint32:i=>{xe(n,r,i),r+=4},writeUint64:i=>{nr(n,r,Ce(i)),r+=8},writeBytes:i=>{rr(e,i,r),r+=te(i)},skip:i=>r+=i}}function At(t){let{diskNumber:e=0}=t;return e}function er(t){let{diskOffset:e=0}=t;return e}function Fn(t,e){let{availableSize:n=cn}=t;return e>n}function tr(t,{diskNumber:e=0,diskOffset:n=0}){return t.offset-n-(e?t.initialOffset:0)}async function dg(t){let e=await _e(t,0,Ht);return gg(K(e),0)==ir}function Ef(t){let e=K(t),n=0;for(;n+4<=te(t);){let r=4+Wr(e,n+2);if(Wr(e,n)==qr)return Ef(zt(t.subarray(0,n),t.subarray(W.min(n+r,te(t)))));n+=r}return t}async function Eg(t,e,n,r){let{writer:i}=t,s=new gt;if(i.closeDisk){let a=je.from(n).sort((c,l)=>gr(e,c)-gr(e,l)),o=0;for(let c of a){let l=gr(e,c);await ms(t,e,o,l-o),Fn(i,await hg(e,l))&&await i.closeDisk(),s.set(c,{offset:tr(t,i),diskNumberStart:At(i)}),o=l}await ms(t,e,o,r-o)}else{let a=t.offset;await ms(t,e,0,r),n.forEach(o=>s.set(o,{offset:a+gr(e,o),diskNumberStart:0}))}return s}async function ms(t,e,n,r){if(r>0){let{writer:i}=t,s=0;try{await gf(nl(e,{offset:n,size:r}),i,w,a=>s+=a)}catch(a){t.hasCorruptedEntries=!0;try{a.corruptedEntry=!0}catch{}throw a}finally{i.size+=s,t.offset+=s}}}async function hg(t,e){let n=await _e(t,e,Ve);if(te(n)<Ve)return Ve;let r=K(n);return Ve+Wr(r,ou+qt)+Wr(r,cu+qt)}function gr(t,{offset:e,diskNumberStart:n}){return e+(t.getDiskOffset?t.getDiskOffset(n):0)}function hf(){let t=new V(Ht);return xe(K(t),0,ir),t}async function Ao(t,e){delete t.addSplitZipSignature,await ht(e,hf()),t.offset+=Ht}async function ht(t,e){let{writable:n}=t,r=n.getWriter();try{await r.ready,t.size+=te(e),await r.write(e)}finally{r.releaseLock()}}async function gf(t,e,n,r){let i=e.writable.getWriter();try{await t.pipeTo(new at({async write(s){await i.ready,await i.write(s),r(te(s))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{i.releaseLock()}}function ws(t){if(t){let e=(Ce(t.getTime())+Ce(116444736e5))*Ce(1e4);return e<ho?ho:e>go?go:e}}function yr(t){return W.floor(t.getTime()/1e3)}function mf(t){return t>=uf&&t<=df}function yo(t){return W.min(df,W.max(uf,t))}function J(t,e,n,r){let i=e[n]===w?t.options[n]:e[n];return i===w?r:i}function _s(t,e,n,r){let i=J(t,e,n,r);if(i===null)return r;if(i!==w&&(typeof i.getTime!=De||pe.isNaN(i.getTime())))throw new I(ph);return i}function gi(t,e,n){return Si(J(t,e,n))}function wf(t,e,n,r,i){let s=So(e,n,r),a=s===w?So(t.options,n,r):s;return a===w?i:a}function So(t,e,n){return t[e]===w?t[n]:t[e]}function dn(t,e,n,r){return jr(J(t,e,n,r))}function Io(t){return t+5*(W.floor(t/16383)+1)}function mi(t,e){return t===w?e===w||e>0:t!==St}function Wr(t,e){return t.getUint16(e,!0)}function gg(t,e){return t.getUint32(e,!0)}function mg(t,e,n){t.setUint8(e,n)}function ut(t,e,n){t.setUint16(e,n,!0)}function xe(t,e,n){t.setUint32(e,n,!0)}function nr(t,e,n){t.setBigUint64(e,n,!0)}function rr(t,e,n){t.set(e,n)}function te(...t){let e=0;return t.forEach(n=>n&&(e+=n.length)),e}function _f({version:t,bitFlag:e,compressionMethod:n,uncompressedSize:r,compressedSize:i,lastModDate:s,rawLastModDate:a,rawFilename:o,zip64CompressedSize:c,zip64UncompressedSize:l,extraFieldLength:u}){let f=Ye(Ve-4),d=f.array,h=K(d);if(f.writeUint16(t),f.writeUint16(e),f.writeUint16(n),a===w){let g=new Oo(1),E=K(g);ut(E,0,(s.getHours()<<6|s.getMinutes())<<5|s.getSeconds()/2),ut(E,2,(s.getFullYear()-1980<<4|s.getMonth()+1)<<5|s.getDate()),a=g[0]}return f.writeUint32(a),f.skip(4),c||i!==w?f.writeUint32(c?me:i):f.skip(4),l||r!==w?f.writeUint32(l?me:r):f.skip(4),f.writeUint16(te(o)),f.writeUint16(u),{headerArray:d,headerView:h,rawLastModDate:a}}function Tf(t,e,n,r,i){let s=0;return e&&(s=s|Or),n&&(s=s|br),(i==xn||i==Wn)&&(t>=0&&t<=3&&(s=s|tu),t>3&&t<=5&&(s=s|eu),t==9&&(s=s|Qf)),r&&(s=s|Nr),s}function Om(){return"application/octet-stream"}function Fm(){let{CompressionStream:t,DecompressionStream:e,CompressionStreamFallback:n,DecompressionStreamFallback:r}=rn(),i=[{compressionMethod:St,compression:!0,decompression:!0,registered:!1},{compressionMethod:xn,compression:Ut(n,fn)||Ut(t,fn)||Ut(t,In),decompression:Ut(r,fn)||Ut(e,fn)||Ut(e,In),registered:!1},{compressionMethod:Wn,compression:!1,decompression:Ut(r,Us)||Ut(e,Us),registered:!1}];for(let s of Od()){let a=Fi(s.format);i.push({compressionMethod:s.compressionMethod,compression:a?typeof a.CompressionStream==De:w,decompression:a?typeof a.DecompressionStream==De:w,registered:!0})}return i}function Ut(t,e){if(!t)return!1;let{supportedFormats:n}=t;return n?n.includes(e):xi(t,e)}var xm="2.8.61",wg=1024*1024,_g=".zip.js-temp";function Pm(t={}){let{thresholdBytes:e=wg,directoryName:n=_g,getDirectory:r=()=>zn.storage.getDirectory()}=t,i;function s(){return i||(i=ge.resolve(r()).then(a=>a.getDirectoryHandle(n,{create:!0}))),i}return function(){let a=[],o=0,c=!1,l,u,f,d;async function h(){let T=await s();l=Tg(),u=await T.getFileHandle(l,{create:!0}),f=(await u.createWritable()).getWriter(),c=!0;for(let _ of a)await f.write(_);a.length=0}let g=new at({async write(T){c?await f.write(T):(a.push(T),o+=T.length,o>e&&await h())},async close(){f&&(await f.close(),f=null)}}),E=0,m=new it({async pull(T){if(c){d||(d=(await u.getFile()).stream().getReader());let{value:_,done:R}=await d.read();R?T.close():T.enqueue(_)}else E<a.length?T.enqueue(a[E++]):T.close()},async cancel(T){d&&await d.cancel(T)}},{highWaterMark:0});async function p(){if(f){try{await f.close()}catch{}f=null}if(l){try{await(await s()).removeEntry(l)}catch{}u=l=null}a.length=0}return{writable:g,readable:m,dispose:p}}}function Tg(){return st.randomUUID?st.randomUUID():je.from(st.getRandomValues(new V(16)),t=>t.toString(16).padStart(2,"0")).join("")}var pg=1024*1024;function Cm(t={}){let{thresholdBytes:e=pg}=t;return function(){let n=[],r=0,i=!1,s,a,o;async function c(){let h=new we;a=Qt(h.readable),s=h.writable.getWriter(),i=!0;for(let g of n)await s.write(g);n.length=0}let l=new at({async write(h){i?await s.write(h):(n.push(h),r+=h.length,r>e&&await c())},async close(){s&&(await s.close(),s=null)}}),u=0,f=new it({async pull(h){if(i){o||(o=(await a).stream().getReader());let{value:g,done:E}=await o.read();E?h.close():h.enqueue(g)}else u<n.length?h.enqueue(n[u++]):h.close()},async cancel(h){o&&await o.cancel(h)}},{highWaterMark:0});async function d(){if(s){try{await s.abort()}catch{}s=null}a&&(a.catch(()=>{}),a=null),n.length=0}return{writable:l,readable:f,dispose:d}}}var Rg=1024*1024,Ag=".zip.js-temp",yg=512*1024,Sg="createSyncAccessHandle is only available in dedicated workers";function Lm(t={}){let{thresholdBytes:e=Rg,directoryName:n=Ag,getDirectory:r}=t;if(!r&&(typeof FileSystemFileHandle>"u"||!FileSystemFileHandle.prototype.createSyncAccessHandle))throw new I(Sg);let i=r||(()=>zn.storage.getDirectory()),s;function a(){return s||(s=ge.resolve(i()).then(o=>o.getDirectoryHandle(n,{create:!0}))),s}return function(){let o=[],c=0,l=!1,u,f,d=0,h=0;async function g(){let _=await a();u=Ig(),f=await(await _.getFileHandle(u,{create:!0})).createSyncAccessHandle(),l=!0;for(let A of o)f.write(A,{at:d}),d+=A.length;o.length=0}let E=new at({async write(_){l?(f.write(_,{at:d}),d+=_.length):(o.push(_),c+=_.length,c>e&&await g())},close(){f&&f.flush()}}),m=0,p=new it({pull(_){if(l){let R=d-h;if(R<=0){_.close();return}let A=new V(W.min(yg,R)),O=f.read(A,{at:h});O?(h+=O,_.enqueue(A.subarray(0,O))):_.close()}else m<o.length?_.enqueue(o[m++]):_.close()}},{highWaterMark:0});async function T(){if(f){try{f.close()}catch{}f=null}if(u){try{await(await a()).removeEntry(u)}catch{}u=null}o.length=0}return{writable:E,readable:p,dispose:T}}}function Ig(){return st.randomUUID?st.randomUUID():je.from(st.getRandomValues(new V(16)),t=>t.toString(16).padStart(2,"0")).join("")}try{Ju({baseURI:import.meta.url})}catch{}var Pe=V,We=Xf,ea=Int32Array,es=new Pe([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),ts=new Pe([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),wi=new Pe([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),pf=function(t,e){for(var n=new We(31),r=0;r<31;++r)n[r]=e+=1<<t[r-1];for(var i=new ea(n[30]),r=1;r<30;++r)for(var s=n[r];s<n[r+1];++s)i[s]=s-n[r]<<5|r;return{b:n,r:i}},Rf=pf(es,2),Af=Rf.b,_i=Rf.r;Af[28]=258,_i[258]=28;var yf=pf(ts,0),Dg=yf.b,Do=yf.r,Ti=new We(32768);for(de=0;de<32768;++de)wt=(de&43690)>>1|(de&21845)<<1,wt=(wt&52428)>>2|(wt&13107)<<2,wt=(wt&61680)>>4|(wt&3855)<<4,Ti[de]=((wt&65280)>>8|(wt&255)<<8)>>1;var wt,de,dt=(function(t,e,n){for(var r=t.length,i=0,s=new We(e);i<r;++i)t[i]&&++s[t[i]-1];var a=new We(e);for(i=1;i<e;++i)a[i]=a[i-1]+s[i-1]<<1;var o;if(n){o=new We(1<<e);var c=15-e;for(i=0;i<r;++i)if(t[i])for(var l=i<<4|t[i],u=e-t[i],f=a[t[i]-1]++<<u,d=f|(1<<u)-1;f<=d;++f)o[Ti[f]>>c]=l}else for(o=new We(r),i=0;i<r;++i)t[i]&&(o[i]=Ti[a[t[i]-1]++]>>15-t[i]);return o}),Vt=new Pe(288);for(de=0;de<144;++de)Vt[de]=8;var de;for(de=144;de<256;++de)Vt[de]=9;var de;for(de=256;de<280;++de)Vt[de]=7;var de;for(de=280;de<288;++de)Vt[de]=8;var de,sr=new Pe(32);for(de=0;de<32;++de)sr[de]=5;var de,Ng=dt(Vt,9,0),bg=dt(Vt,9,1),Og=dt(sr,5,0),Fg=dt(sr,5,1),Ts=function(t){for(var e=t[0],n=1;n<t.length;++n)t[n]>e&&(e=t[n]);return e},Qe=function(t,e,n){var r=e/8|0;return(t[r]|t[r+1]<<8)>>(e&7)&n},ps=function(t,e){var n=e/8|0;return(t[n]|t[n+1]<<8|t[n+2]<<16)>>(e&7)},ta=function(t){return(t+7)/8|0},Sf=function(t,e,n){return(n==null||n>t.length)&&(n=t.length),new Pe(t.subarray(e,n))},xg=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],pt=function(t,e,n){var r=new I(e||xg[t]);if(r.code=t,I.captureStackTrace&&I.captureStackTrace(r,pt),!n)throw r;return r},Pg=function(t,e,n,r){var i=t.length,s=r?r.length:0;if(!i||e.f&&!e.l)return n||new Pe(0);var a=!n,o=a||e.i!=2,c=e.i;a&&(n=new Pe(i*3));var l=function(Q){var Re=n.length;if(Q>Re){var oe=new Pe(W.max(Re*2,Q));oe.set(n),n=oe}},u=e.f||0,f=e.p||0,d=e.b||0,h=e.l,g=e.d,E=e.m,m=e.n,p=i*8;do{if(!h){u=Qe(t,f,1);var T=Qe(t,f+1,3);if(f+=3,T)if(T==1)h=bg,g=Fg,E=9,m=5;else if(T==2){var O=Qe(t,f,31)+257,S=Qe(t,f+10,15)+4,F=O+Qe(t,f+5,31)+1;f+=14;for(var P=new Pe(F),H=new Pe(19),v=0;v<S;++v)H[wi[v]]=Qe(t,f+v*3,7);f+=S*3;for(var M=Ts(H),G=(1<<M)-1,k=dt(H,M,1),v=0;v<F;){var Y=k[Qe(t,f,G)];f+=Y&15;var _=Y>>4;if(_<16)P[v++]=_;else{var b=0,D=0;for(_==16?(D=3+Qe(t,f,3),f+=2,b=P[v-1]):_==17?(D=3+Qe(t,f,7),f+=3):_==18&&(D=11+Qe(t,f,127),f+=7);D--;)P[v++]=b}}var C=P.subarray(0,O),x=P.subarray(O);E=Ts(C),m=Ts(x),h=dt(C,E,1),g=dt(x,m,1)}else pt(1);else{var _=ta(f)+4,R=t[_-4]|t[_-3]<<8,A=_+R;if(A>i){c&&pt(0);break}o&&l(d+R),n.set(t.subarray(_,A),d),e.b=d+=R,e.p=f=A*8,e.f=u;continue}if(f>p){c&&pt(0);break}}o&&l(d+131072);for(var Z=(1<<E)-1,L=(1<<m)-1,q=f;;q=f){var b=h[ps(t,f)&Z],ne=b>>4;if(f+=b&15,f>p){c&&pt(0);break}if(b||pt(2),ne<256)n[d++]=ne;else if(ne==256){q=f,h=null;break}else{var re=ne-254;if(ne>264){var v=ne-257,$=es[v];re=Qe(t,f,(1<<$)-1)+Af[v],f+=$}var ce=g[ps(t,f)&L],ae=ce>>4;ce||pt(3),f+=ce&15;var x=Dg[ae];if(ae>3){var $=ts[ae];x+=ps(t,f)&(1<<$)-1,f+=$}if(f>p){c&&pt(0);break}o&&l(d+131072);var Ae=d+re;if(d<x){var Ne=s-x,he=W.min(x,Ae);for(Ne+d<0&&pt(3);d<he;++d)n[d]=r[Ne+d]}for(;d<Ae;++d)n[d]=n[d-x]}}e.l=h,e.p=q,e.b=d,e.f=u,h&&(u=1,e.m=E,e.d=g,e.n=m)}while(!u);return d!=n.length&&a?Sf(n,0,d):n.subarray(0,d)},_t=function(t,e,n){n<<=e&7;var r=e/8|0;t[r]|=n,t[r+1]|=n>>8},Un=function(t,e,n){n<<=e&7;var r=e/8|0;t[r]|=n,t[r+1]|=n>>8,t[r+2]|=n>>16},Rs=function(t,e){for(var n=[],r=0;r<t.length;++r)t[r]&&n.push({s:r,f:t[r]});var i=n.length,s=n.slice();if(!i)return{t:Df,l:0};if(i==1){var a=new Pe(n[0].s+1);return a[n[0].s]=1,{t:a,l:1}}n.sort(function(A,O){return A.f-O.f}),n.push({s:-1,f:25001});var o=n[0],c=n[1],l=0,u=1,f=2;for(n[0]={s:-1,f:o.f+c.f,l:o,r:c};u!=i-1;)o=n[n[l].f<n[f].f?l++:f++],c=n[l!=u&&n[l].f<n[f].f?l++:f++],n[u++]={s:-1,f:o.f+c.f,l:o,r:c};for(var d=s[0].s,r=1;r<i;++r)s[r].s>d&&(d=s[r].s);var h=new We(d+1),g=pi(n[u-1],h,0);if(g>e){var r=0,E=0,m=g-e,p=1<<m;for(s.sort(function(O,S){return h[S.s]-h[O.s]||O.f-S.f});r<i;++r){var T=s[r].s;if(h[T]>e)E+=p-(1<<g-h[T]),h[T]=e;else break}for(E>>=m;E>0;){var _=s[r].s;h[_]<e?E-=1<<e-h[_]++-1:++r}for(;r>=0&&E;--r){var R=s[r].s;h[R]==e&&(--h[R],++E)}g=e}return{t:new Pe(h),l:g}},pi=function(t,e,n){return t.s==-1?W.max(pi(t.l,e,n+1),pi(t.r,e,n+1)):e[t.s]=n},No=function(t){for(var e=t.length;e&&!t[--e];);for(var n=new We(++e),r=0,i=t[0],s=1,a=function(c){n[r++]=c},o=1;o<=e;++o)if(t[o]==i&&o!=e)++s;else{if(!i&&s>2){for(;s>138;s-=138)a(32754);s>2&&(a(s>10?s-11<<5|28690:s-3<<5|12305),s=0)}else if(s>3){for(a(i),--s;s>6;s-=6)a(8304);s>2&&(a(s-3<<5|8208),s=0)}for(;s--;)a(i);s=1,i=t[o]}return{c:n.subarray(0,r),n:e}},vn=function(t,e){for(var n=0,r=0;r<e.length;++r)n+=t[r]*e[r];return n},If=function(t,e,n){var r=n.length,i=ta(e+2);t[i]=r&255,t[i+1]=r>>8,t[i+2]=t[i]^255,t[i+3]=t[i+1]^255;for(var s=0;s<r;++s)t[i+s+4]=n[s];return(i+4+r)*8},bo=function(t,e,n,r,i,s,a,o,c,l,u){_t(e,u++,n),++i[256];for(var f=Rs(i,15),d=f.t,h=f.l,g=Rs(s,15),E=g.t,m=g.l,p=No(d),T=p.c,_=p.n,R=No(E),A=R.c,O=R.n,S=new We(19),F=0;F<T.length;++F)++S[T[F]&31];for(var F=0;F<A.length;++F)++S[A[F]&31];for(var P=Rs(S,7),H=P.t,v=P.l,M=19;M>4&&!H[wi[M-1]];--M);var G=l+5<<3,k=vn(i,Vt)+vn(s,sr)+a,Y=vn(i,d)+vn(s,E)+a+14+3*M+vn(S,H)+2*S[16]+3*S[17]+7*S[18];if(c>=0&&G<=k&&G<=Y)return If(e,u,t.subarray(c,c+l));var b,D,C,x;if(_t(e,u,1+(Y<k)),u+=2,Y<k){b=dt(d,h,0),D=d,C=dt(E,m,0),x=E;var Z=dt(H,v,0);_t(e,u,_-257),_t(e,u+5,O-1),_t(e,u+10,M-4),u+=14;for(var F=0;F<M;++F)_t(e,u+3*F,H[wi[F]]);u+=3*M;for(var L=[T,A],q=0;q<2;++q)for(var ne=L[q],F=0;F<ne.length;++F){var re=ne[F]&31;_t(e,u,Z[re]),u+=H[re],re>15&&(_t(e,u,ne[F]>>5&127),u+=ne[F]>>12)}}else b=Ng,D=Vt,C=Og,x=sr;for(var F=0;F<o;++F){var $=r[F];if($>255){var re=$>>18&31;Un(e,u,b[re+257]),u+=D[re+257],re>7&&(_t(e,u,$>>23&31),u+=es[re]);var ce=$&31;Un(e,u,C[ce]),u+=x[ce],ce>3&&(Un(e,u,$>>5&8191),u+=ts[ce])}else Un(e,u,b[$]),u+=D[$]}return Un(e,u,b[256]),u+D[256]},Cg=new ea([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),Df=new Pe(0),Lg=function(t,e,n,r,i,s){var a=s.z||t.length,o=new Pe(r+a+5*(1+W.ceil(a/7e3))+i),c=o.subarray(r,o.length-i),l=s.l,u=(s.r||0)&7;if(e){u&&(c[0]=s.r>>3);for(var f=Cg[e-1],d=f>>13,h=f&8191,g=(1<<n)-1,E=s.p||new We(32768),m=s.h||new We(g+1),p=W.ceil(n/3),T=2*p,_=function(ee){return(t[ee]^t[ee+1]<<p^t[ee+2]<<T)&g},R=new ea(25e3),A=new We(288),O=new We(32),S=0,F=0,P=s.i||0,H=0,v=s.w||0,M=0;P+2<a;++P){var G=_(P),k=P&32767,Y=m[G];if(E[k]=Y,m[G]=k,v<=P){var b=a-P;if((S>7e3||H>24576)&&(b>423||!l)){u=bo(t,c,0,R,A,O,F,H,M,P-M,u),H=S=F=0,M=P;for(var D=0;D<286;++D)A[D]=0;for(var D=0;D<30;++D)O[D]=0}var C=2,x=0,Z=h,L=k-Y&32767;if(b>2&&G==_(P-L))for(var q=W.min(d,b)-1,ne=W.min(32767,P),re=W.min(258,b);L<=ne&&--Z&&k!=Y;){if(t[P+C]==t[P+C-L]){for(var $=0;$<re&&t[P+$]==t[P+$-L];++$);if($>C){if(C=$,x=L,$>q)break;for(var ce=W.min(L,$-2),ae=0,D=0;D<ce;++D){var Ae=P-L+D&32767,Ne=E[Ae],he=Ae-Ne&32767;he>ae&&(ae=he,Y=Ae)}}}k=Y,Y=E[k],L+=k-Y&32767}if(x){R[H++]=268435456|_i[C]<<18|Do[x];var Q=_i[C]&31,Re=Do[x]&31;F+=es[Q]+ts[Re],++A[257+Q],++O[Re],v=P+C,++S}else R[H++]=t[P],++A[t[P]]}}for(P=W.max(P,v);P<a;++P)R[H++]=t[P],++A[t[P]];u=bo(t,c,l,R,A,O,F,H,M,P-M,u),l||(s.r=u&7|c[u/8|0]<<3,u-=7,s.h=m,s.p=E,s.i=P,s.w=v)}else{for(var P=s.w||0;P<a+l;P+=65535){var oe=P+65535;oe>=a&&(c[u/8|0]=l,oe=a),u=If(c,u+1,t.subarray(P,oe))}s.i=a}return Sf(o,0,r+ta(u)+i)},Ug=function(t,e,n,r,i){if(!i&&(i={l:1},e.dictionary)){var s=e.dictionary.subarray(-32768),a=new Pe(s.length+t.length);a.set(s),a.set(t,s.length),t=a,i.w=s.length}return Lg(t,e.level==null?6:e.level,e.mem==null?i.l?W.ceil(W.max(8,W.min(13,W.log(t.length)))*1.5):20:12+e.mem,n,r,i)};function Nf(t,e){return Ug(t,e||{},0,0)}function Um(t,e){return Pg(t,{i:2},e&&e.out,e&&e.dictionary)}var vg=typeof Dr<"u"&&new Dr,Mg=0;try{vg.decode(Df,{stream:!0}),Mg=1}catch{}async function na(t,{password:e,prompt:n=()=>{},zipOptions:r={useWebWorkers:!0},noBlobURL:i,entries:s,pagePath:a="",excludedPaths:o,aliases:c}={}){let l={gif:"image/gif",jpg:"image/jpeg",png:"image/png",tif:"image/tiff",tiff:"image/tiff",bmp:"image/bmp",ico:"image/vnd.microsoft.icon",webp:"image/webp",svg:"image/svg+xml",avi:"video/x-msvideo",ogv:"video/ogg",mp4:"video/mp4",mpeg:"video/mpeg",ts:"video/mp2t",webm:"video/webm","3gp":"video/3gpp","3g2":"video/3gpp",mp3:"audio/mpeg",oga:"audio/ogg",mid:"audio/midi",midi:"audio/midi",opus:"audio/opus",wav:"audio/wav",weba:"audio/webm",heif:"image/heif",heic:"image/heic",avif:"image/avif",apng:"image/apng",mov:"video/quicktime",otf:"font/otf",ttf:"font/ttf",woff:"font/woff",woff2:"font/woff2",eot:"application/vnd.ms-fontobject",pdf:"application/pdf"},u=/stylesheet_[0-9]+\.css/,f=/scripts\/[0-9]+\.js/,d=/^([0-9_]+\/)?index\.html$/,h=/index\.html$/,g=/frames\//,E=/^frames\/\d+\/index.html/,m=/manifest\.json$/,p=";charset=utf-8",T=/([{}()^$&.*?/+|[\\\\]|\]|-)/g,_;if(!s){let b;t.readUint8Array?b=t:(Array.isArray(t)&&(t=new Blob([new Uint8Array(t)])),b=new zip.BlobReader(t)),_=new zip.ZipReader(b,r),s=await _.getEntries()}if(s=s.filter(b=>b.filename!="page.pdf"),c){let b=s;s=s.map(D=>{let C=c[D.filename],x=C&&b.find(Z=>Z.filename==C);return x?{filename:D.filename,comment:x.comment,encrypted:x.encrypted,uncompressedSize:x.uncompressedSize,getData:(Z,L)=>x.getData(Z,L)}:D})}a?s=s.filter(b=>b.filename.startsWith(a)):o&&(s=s.filter(b=>!o.some(D=>b.filename.startsWith(D))));let R=Object.assign({password:e},r),A,O,S,F=[],P=[],H=[];await Promise.all(s.map(async b=>{let D=b.filename.substring(a.length),C,x,Z,L,q={};if(!R.password&&b.encrypted&&(R.password=n("Please enter the password to view the page")),D.match(h)||D.match(u)||D.match(f))D.match(h)?P.push(q):H.push(q),C=new zip.TextWriter,b.uncompressedSize>0?Z=await b.getData(C,R):Z="",D.match(h)?L="text/html"+p:D.match(u)?L="text/css"+p:D.match(f)&&(L="text/javascript"+p);else{F.push(q);let ce=D.match(/\.([^.]+)/);if(ce&&ce[1]&&l[ce[1]]?L=l[ce[1]]:L="application/octet-stream",D.match(g)||i)x=await b.getData(new zip.Data64URIWriter(L),R);else{let ae=await b.getData(new zip.BlobWriter(L),R);x=URL.createObjectURL(ae)}}let ne=D.match(/^([0-9_]+\/)?(.*)$/)[2],re="",$=D.match(/(.*\/)[^/]+$/);$&&$[1]&&(re=$[1]),Object.assign(q,{prefixPath:re,filename:D,name:ne,url:b.comment,content:x,mimeType:L,textContent:Z,parentResources:[]})})),_&&await _.close(),P.sort(k),H.sort(Y),F=F.sort(k).concat(...H).concat(...P);for(let b of F){let{filename:D,prefixPath:C}=b,{textContent:x}=b;x!==void 0&&(D.match(d)&&(O=x),D.match(f)||(F.forEach(Z=>{let{filename:L,parentResources:q,content:ne}=Z;if(L.startsWith(C)&&L!=b.filename){let re=L.substring(C.length);re.match(m)||x.includes(re)&&(q.push(b.filename),Z.textContent===void 0&&(x=G(x,re,ne)))}}),b.textContent=x))}for(let b of F){let{textContent:D,prefixPath:C,filename:x}=b;if(D!==void 0){if(!x.match(f)){let Z=x;for(let L of F){let{filename:q}=L;if(q.startsWith(C)&&q!=Z){let ne=q.substring(C.length);ne.match(m)||D.indexOf(ne)!=-1&&(L.content=await v(L),D=G(D,ne,L.content))}}b.textContent=D,b.content=await v(b)}x.match(d)&&(A=D,S=b.url)}}return{docContent:A,origDocContent:O,resources:F,url:S};async function v(b){return b.filename.match(g)&&!b.filename.match(E)||i?await M(b.textContent,b.mimeType):URL.createObjectURL(new Blob([b.textContent],{type:b.mimeType}))}async function M(b,D){let C=new Blob([b],{type:D}),x=new Uint8Array(await C.arrayBuffer()),Z="";for(let L=0;L<x.length;L+=8192)Z+=String.fromCharCode(...x.subarray(L,L+8192));return("data:"+(C.type||"application/octet-stream")+";base64,"+btoa(Z)).replace(p,"")}function G(b,D,C){if(typeof b.replaceAll=="function")return b.replaceAll(D,C);{let x=new RegExp(D.replace(T,"\\$1"),"g");return b.replace(x,C)}}function k(b,D){let C=D.filename.length-b.filename.length;return C||D.filename.localeCompare(b.filename)}function Y(b,D){let C=b.filename.length-D.filename.length;return C||b.filename.localeCompare(D.filename)}}async function ra(t,e,{disableFramePointerEvents:n,inPlace:r}={}){function i(a){let o=a.doctype,c="";return o&&(c="<!DOCTYPE "+o.nodeName,o.publicId?(c+=' PUBLIC "'+o.publicId+'"',o.systemId&&(c+=' "'+o.systemId+'"')):o.systemId&&(c+=' SYSTEM "'+o.systemId+'"'),o.internalSubset&&(c+=" ["+o.internalSubset+"]"),c+=">"),c}e=e.replace(/<noscript/gi,"<template disabled-noscript"),e=e.replace(/<\/noscript/gi,"</template");let s=new DOMParser().parseFromString(e,"text/html");if(n&&s.querySelectorAll("iframe").forEach(a=>{let o="pointer-events";a.style.setProperty("-sf-"+o,a.style.getPropertyValue(o),a.style.getPropertyPriority(o)),a.style.setProperty(o,"none","important")}),r&&s.compatMode==t.compatMode&&!s.querySelector("script")){await Promise.all(Array.from(s.querySelectorAll("link[rel~=stylesheet][href]")).map(c=>new Promise(l=>{let u=t.createElement("link");u.rel="preload",u.as="style",u.href=c.getAttribute("href"),u.onload=l,u.onerror=l,t.head.appendChild(u),setTimeout(l,500)})));let a=t.documentElement,o=t.adoptNode(s.documentElement);for(;a.attributes.length;)a.removeAttribute(a.attributes[0].name);if(Array.from(o.attributes).forEach(c=>a.setAttribute(c.name,c.value)),a.replaceChildren(...o.childNodes),t.querySelector("link[rel~=stylesheet][href]")){let c=t.createElement("style");c.textContent="html{visibility:hidden}",t.head.appendChild(c);let l=Date.now();for(;Date.now()-l<500&&Array.from(t.querySelectorAll("link[rel~=stylesheet][href]")).some(u=>!u.sheet);)await new Promise(u=>setTimeout(u,10));c.remove()}}else t.open(),t.write(i(s)),t.write(s.documentElement.outerHTML),t.close();t.querySelectorAll("template[disabled-noscript]").forEach(a=>{let o=t.createElement("noscript");a.removeAttribute("disabled-noscript"),Array.from(a.attributes).forEach(c=>o.setAttribute(c.name,c.value)),o.textContent=a.innerHTML,a.parentElement.replaceChild(o,a)}),t.documentElement.setAttribute("data-sfz",""),t.querySelectorAll("link[rel*=icon]").forEach(a=>a.replaceWith(a.cloneNode(!0)))}async function bf(t,{extract:e,display:n}){let r="pages/",i="sfz-",s="sfz-pages.json",a="sfz-toc.html",o="#sfz/",c="?toc",l="data-sfz-target",u=/:target(?![\w-])/g,f="data-sfz-visited",d=/:visited(?![\w-])/g,h="#551a8b",g="data-sfz-unarchived",E="a["+g+']::after{content:" \\2197";font-size:.75em;opacity:.7}',m="Not saved in this archive",p=["http:","https:"],T=100,{zip:_,document:R,location:A,history:O,CSS:S,URL:F,setTimeout:P,clearTimeout:H}=globalThis,v=new Map,M=new Map,G=new Map,k=new Set,Y=Math.random().toString(36).substring(2),b,D,C,x,Z=0;try{O.scrollRestoration="manual"}catch{}_.configure({useWebWorkers:!0});let q=await new _.ZipReader(t.readUint8Array?t:new _.BlobReader(t)).getEntries(),ne=q.find(y=>y.filename==s);if(!ne)throw new Error("Pages data not found");let re=JSON.parse(await ne.getData(new _.TextWriter)),$=q.find(y=>y.filename==a),{pages:ce}=re,ae=re.pageTransitions||"auto",Ae=new Map(Object.entries(re.aliases||{}));return ce.forEach(y=>{M.set(Oe(y.url),y.path),y.originalUrls&&y.originalUrls.forEach(N=>M.set(Oe(N),y.path))}),Ne(),D=Xt(),D===null&&(D=Ze()),oe(!0);function Ne(){globalThis.addEventListener("click",Q,!0),globalThis.addEventListener("auxclick",Q,!0),globalThis.addEventListener("mouseover",Wt,!0),globalThis.addEventListener("hashchange",he)}function he(){Re().catch(y=>globalThis.console.error(y))}function Q(y){if(y.type=="auxclick"&&y.button!=1)return;let N=Le(y.target);if(N&&N.href){let z=Er(N.href);if(z&&z.startsWith(o)&&Oe(N.href)==Oe(A.href))return;let se=M.get(Oe(N.href));if(se===void 0&&z&&Oe(N.href)==Oe(A.href)&&(se=b),se!==void 0)if(y.preventDefault(),y.type=="auxclick"||y.metaKey||y.ctrlKey||y.shiftKey||y.altKey)globalThis.open(Oe(A.href)+o+se+(z||""));else{let le=A.hash;A.hash=o+se+(z||""),A.hash==le&&z&&(Ct(),ke(z))}}}async function Re(){Ct(),G.set(D,sn());let y=$e(),N=Xt(),{routed:z,path:se,fragment:le}=ee();z&&se!=b&&B(se)&&R.startViewTransition&&ot()&&!ct()?await R.startViewTransition(ve).updateCallbackDone:await ve();async function ve(){let Lt=await oe();Lt&&as(),an(Lt)}function an(Lt){if(N!==null){D=N;let on=G.get(N);if(on&&(Ft(on.elements),globalThis.scrollTo(on.x,on.y)),le){let ga=Ke(le);ga&&Zt(ga)}}else D=Ze(),Lt&&Ft(y),le?ke(le):Lt&&globalThis.scrollTo(0,0)}}async function oe(y){let{routed:N,path:z,fragment:se}=ee();if(!N&&!y||z==b||!B(z))return!1;let le=await ye(z);return b=z,await n(R,le,{inPlace:!0}),Ne(),z==c&&Xe(),k.add(z),Ue(),re.markUnarchivedLinks&&Pt(),y&&(se?ke(se):!N&&A.hash&&ke(A.hash)),!0}function ee(){let y=A.hash,N=!y||y.startsWith(o),z=ce[0].path,se;return N&&y&&({path:z,fragment:se}=ue(y)),{routed:N,path:z,fragment:se}}function ue(y){let N=y.substring(o.length),z=N.indexOf("#");return{path:decodeURIComponent(z==-1?N:N.substring(0,z)),fragment:z==-1?void 0:N.substring(z)}}function B(y){return y==c?!!$:!!ce.find(N=>N.path==y)}function ye(y){if(!v.has(y)){let N=Ee(y);N.catch(()=>v.delete(y)),v.set(y,N)}return v.get(y)}async function Ee(y){if(y==c)return $.getData(new _.TextWriter);let N=q.filter(se=>be(se.filename,y)&&!Ae.has(se.filename)).concat(He(y)),{docContent:z}=await e(null,{entries:N,pagePath:y});return z}function He(y){return Array.from(Ae).filter(([N])=>be(N,y)).map(([N,z])=>{let se=q.find(le=>le.filename==z);return se&&{filename:N,comment:se.comment,encrypted:se.encrypted,uncompressedSize:se.uncompressedSize,getData:(le,Je)=>se.getData(le,Je)}}).filter(Boolean)}function be(y,N){return N==""?!y.startsWith(r)&&!y.startsWith(i):y.startsWith(N)}function Xe(){let y=new Map;ce.forEach(N=>y.set(new F(N.path+"index.html",Oe(A.href)).href,N.path)),R.querySelectorAll("a[href]").forEach(N=>{let z=Er(N.href),se=y.get(Oe(N.href));se!==void 0&&N.setAttribute("href",o+se+(z||""))})}function mt(y){let N=Er(y);return N&&N.startsWith(o)&&Oe(y)==Oe(A.href)?ue(N).path:M.get(Oe(y))}function Wt(y){let N=Le(y.target);if(N&&N.href){let z=mt(N.href);z!==void 0&&z!=b&&!v.has(z)&&(H(x),x=P(()=>ye(z).catch(()=>{}),T))}}function Le(y){for(;y&&y.tagName!="A";)y=y.parentNode;return y}function ot(){return ae=="fade"?!0:ae=="none"?!1:Array.from(R.styleSheets).some(y=>{try{return Se(y.cssRules)}catch{return!1}})}function Se(y){return Array.from(y).some(N=>N.navigation=="auto"||N.cssRules&&N.cssRules.length&&Se(N.cssRules))}function ct(){return!!(globalThis.matchMedia&&globalThis.matchMedia("(prefers-reduced-motion: reduce)").matches)}function Xt(){let y=O.state;return y&&y.sfzSession==Y&&typeof y.sfzEntry=="number"?y.sfzEntry:null}function Ze(){let y=Z++;try{O.replaceState({sfzSession:Y,sfzEntry:y},"")}catch{}return y}function sn(){return{x:globalThis.scrollX,y:globalThis.scrollY,elements:$e()}}function $e(){let y=[];return R.querySelectorAll("*").forEach(N=>{if(N.scrollTop||N.scrollLeft){let z=xt(N);z&&y.push({path:z,top:N.scrollTop,left:N.scrollLeft})}}),y}function Ft(y){y.forEach(({path:N,top:z,left:se})=>{let le;try{le=R.querySelector(N)}catch{}le&&(le.scrollTop=z,le.scrollLeft=se)})}function xt(y){let N=[];for(;y&&y.parentElement;){if(y.id&&S)return N.unshift("#"+S.escape(y.id)),N.join(">");let z=y.parentElement;N.unshift(y.tagName+":nth-child("+(Array.from(z.children).indexOf(y)+1)+")"),y=z}return N.join(">")}function ke(y){let N=Ke(y);N&&(Zt(N),N.scrollIntoView())}function Ke(y){let N=decodeURIComponent(y.substring(1)),z=R.getElementById(N);return!z&&S&&(z=R.querySelector("a[name="+S.escape(N)+"]")),z}function Zt(y){let N=Fe(u,l);N&&(y.setAttribute(l,""),C=R.createElement("style"),C.textContent=N,R.head.appendChild(C))}function Ue(){let y=R.createElement("style");y.textContent="a["+f+"]{color:"+h+"}"+Fe(d,f),R.head.appendChild(y),R.querySelectorAll("a[href]").forEach(N=>{let z=mt(N.href);z!==void 0&&k.has(z)&&N.setAttribute(f,"")})}function Pt(){let y=R.createElement("style");y.textContent=E,R.head.appendChild(y),R.querySelectorAll("a[href]").forEach(N=>{p.includes(N.protocol)&&M.get(Oe(N.href))===void 0&&Oe(N.href)!=Oe(A.href)&&(N.setAttribute(g,""),N.hasAttribute("title")||N.setAttribute("title",m))})}function Ct(){if(C){let y=R.querySelector("["+l+"]");y&&y.removeAttribute(l),C.remove(),C=void 0}}function Fe(y,N){let z="";return Array.from(R.styleSheets).forEach(se=>{try{z+=dr(se.cssRules,y,N)}catch{}}),z}function dr(y,N,z){let se="";return Array.from(y).forEach(le=>{if(le.cssRules&&le.cssRules.length){let Je=dr(le.cssRules,N,z);Je&&(se+=le.cssText.substring(0,le.cssText.indexOf("{")+1)+Je+"}")}else if(le.selectorText){let Je=le.selectorText.replace(N,"["+z+"]");Je!=le.selectorText&&(se+=Je+"{"+le.style.cssText+"}")}}),se}function as(){let y=R.querySelector("h1")||R.body;y&&(y.setAttribute("tabindex","-1"),y.focus({preventScroll:!0}))}function Oe(y){let N=y.indexOf("#");return N==-1?y:y.substring(0,N)}function Er(y){let N=y.indexOf("#");return N==-1?void 0:y.substring(N)}}var{Blob:ia,fetch:Bg,TextEncoder:bt,TextDecoder:Hg,DOMParser:Of}=globalThis,ss=new Hg("windows-1252"),zg=["application/javascript","application/x-javascript","application/ecmascript","application/json","application/ld+json","application/manifest+json","application/xml","application/xhtml+xml","application/rss+xml","application/atom+xml","image/svg+xml"],kg="text/",Gg=[".jpg",".jpeg",".png",".apng",".gif",".webp",".avif",".heif",".heic",".jxl",".pdf",".woff",".woff2",".mp4",".webm",".avi",".mpeg",".mov",".ts",".ogv",".mp3",".ogg",".oga",".weba",".m4a",".aac",".opus",".flac"],Yg="/lib/single-file-zip.min.js",fr=[["<script type=sfz-data>","</script>"],["<style type=sfz-data>","</style>"],["<noframes>","</noframes>"],["<noembed>","</noembed>"],["<iframe>","</iframe>"],["<xmp>","</xmp>"],["<svg><![CDATA[","]]></svg>"],["<plaintext>","</plaintext>"]],ua=[["<!--","-->"],...fr],Ff="sfz-data",da=[[/<script/i,/<\/script[\t\n\f\r />]/i],[/<style/i,/<\/style[\t\n\f\r />]/i],[/<noframes/i,/<\/noframes[\t\n\f\r />]/i],[/<noembed/i,/<\/noembed[\t\n\f\r />]/i],[/<iframe/i,/<\/iframe[\t\n\f\r />]/i],[/<xmp/i,/<\/xmp[\t\n\f\r />]/i],[/<!\[CDATA\[/i,/\]\]>/],[/<plaintext/i,/<\/plaintext[\t\n\f\r />]/i]],Lf=[[/<!--/i,/--!?>|<!-$/i],...da],aa=new Uint32Array(256).map((t,e)=>{let n=e;for(let r=0;r<8;r++)n=n&1?3988292384^n>>>1:n>>>1;return n}),rs=12,xf=4,Uf=8,vf=25,Vg=2,Pf=65535,Wg="page.pdf",Xg=1024,Zg="<!DOCTYPE html>",Kg="SingleFile: the page data contains every HTML tag that could hide an embedded file, the archive was written without its",qg="PNG image",jg="PDF document",$g=67324752,Jg=33639248,Qg=101010256,em=101075792,tm=117853008,ns=globalThis.browser,Km=["createRootDirectory","declareAppendedData","disableCompression","embeddedImage","embeddedPdf","extractDataFromPage","includeBOM","insertCanonicalLink","insertMetaCSP","insertMetaNoIndex","insertTextBody","password","preventAppendedData","selfExtractingArchive","url","zipScript"];async function qm(t,e,n=new Date){let r,i=!!(ns&&ns.runtime&&ns.runtime.getURL);return i?Pn({workerURI:"/lib/single-file-z-worker.js"}):Pn({useWebWorkers:!1}),e.zipScript?r=e.zipScript:i&&(r=await(await Bg(ns.runtime.getURL(Yg))).text()),Ot(t,e,r,s=>(t.url=e.url,t.archiveTime=new Date().toISOString(),Gf(s,t,{password:e.password,disableCompression:e.disableCompression},e.createRootDirectory?String(Date.now())+"_"+(e.tabId||0)+"/":"",e.url)),n)}async function Ot(t,e,n,r,i=new Date){let s=new Nn;s.init();let a,o,c,l,u;e.embeddedImage&&(e.embeddedImage=new Uint8Array(e.embeddedImage));let f;if(e.embeddedImage&&e.selfExtractingArchive&&(f=cm(t,e,i),f||kf(e,"embeddedImage",qg)),e.embeddedImage){let p=zf(e.embeddedImage);if(await ze(s.writable,e.embeddedImage.slice(0,Uf+vf)),e.selfExtractingArchive)l=f.endTag,f.startHTMLData.pdfEntry&&(u=f.startHTMLData.pdfEntry,u.offset+=s.offset+12),await ze(s.writable,f.htmlData),await ze(s.writable,f.htmlDataCRC);else if(e.embeddedPdf){let T=new Uint8Array([...ca(e.embeddedPdf.length+4),116,69,88,116,80,68,70,0,...new Uint8Array(e.embeddedPdf)]);await ze(s.writable,T),await ze(s.writable,oa(T,4))}await ze(s.writable,p),await ze(s.writable,new Uint8Array(4)),c=s.offset,await ze(s.writable,new Uint8Array([116,69,88,116,90,73,80,0])),e.selfExtractingArchive&&await ze(s.writable,new bt().encode(l))}if(e.selfExtractingArchive){let p=await sm(t,s,n,e,i);a=p.extraDataOffset,u=u||p.pdfEntry}else!e.embeddedImage&&e.embeddedPdf&&await ze(s.writable,new Uint8Array(e.embeddedPdf));let d=s.offset,h=new Qn({writable:s.writable,size:d},{bufferedWrite:!0,keepOrder:!0,lastModDate:i,useCompressionStream:!0});if(await r(h),u&&(new DataView(u.centralRecord.buffer).setUint32(42,u.offset,!0),await ze(s.writable,u.centralRecord)),await h.close(void 0,{preventClose:!0}),u&&!rm(s,u.centralRecord.length))return e.preventEmbeddedPdfEntry=!0,Ot(t,e,n,r,i);let g=s.getData(),E=g.length-Vg;if(e.selfExtractingArchive){let p=[],T=-1;if(!e.extractDataFromPageTags||e.extractDataFromPageTags[0]!="<plaintext>"){let A=ss.decode(g.subarray(d));if(e.extractDataFromPageTags){let O=om(e.extractDataFromPageTags),S=da[O];if(A.match(S[0])||A.match(S[1]))return la(A,t,e,n,r,i,O+1)}else{let[O,S]=Lf[0];if(A.match(O)||A.match(S))return la(A,t,e,n,r,i)}}if(e.extractDataFromPage){for(let A=d;A<E;A++){let O=g[A];T=T>>>8^aa[(T^O)&255],O==10?p.push(0):O==13&&(A+1<E&&g[A+1]==10?(A++,T=T>>>8^aa[(T^10)&255],p.push(2)):p.push(1))}T=(T^-1)>>>0}let _="";e.preventAppendedData||(e.extractDataFromPageTags?_+=e.extractDataFromPageTags[1]:_+="-->");let R=e.preventAppendedData||e.embeddedImage?"":"</body></html>";if(e.extractDataFromPage){let A=new Uint32Array(3+Math.ceil(p.length/16));if(A[0]=T,A[1]=E-d,A[2]=p.length,p.forEach((O,S)=>A[3+(S>>4)]|=O<<(S&15)*2),o="<sfz-extra-data>"+um(Nf(new Uint8Array(A.buffer)))+"</sfz-extra-data>",e.preventAppendedData||o.length>Pf-_.length-R.length-(e.embeddedImage?rs+xf:0)){if(!e.extraDataSize)return e.extraDataSize=Cf(o.length),Ot(t,e,n,r,i)}else if(e.extraDataSize){if(!e.extraDataSizeDropped)return e.extraDataSizeDropped=!0,e.extraDataSize=void 0,Ot(t,e,n,r,i)}else _+=o}_+=R,await ze(s.writable,new bt().encode(_))}await s.writable.close();let m=await s.getData();if(e.extractDataFromPage&&e.extraDataSize!==void 0)if(e.extraDataSize>=o.length)m.set(new bt().encode(o),d-a);else return e.extraData=o,e.extraDataSize=Cf(o.length),Ot(t,e,n,r,i);if(e.declareAppendedData){let p=m.length-g.length+(e.embeddedImage?xf+rs:0);p&&p<=Pf&&new DataView(m.buffer,m.byteOffset).setUint16(E,p,!0)}return e.embeddedImage?(m.set(ca(s.offset-c-4),c-4),new ia([m,oa(m,c),e.embeddedImage.slice(e.embeddedImage.length-rs)],{type:"application/octet-stream"})):new ia([m],{type:"application/octet-stream"})}function oa(t,e=0){let n=new Uint8Array(4);return Bf(n,Mf(t,e)),n}function Mf(t,e=0){let n=-1;for(;e<t.length;e++)n=n>>>8^aa[(n^t[e])&255];return(n^-1)>>>0}function nm(t,e=new Date){let n=new bt().encode(Wg),r=Mf(t),i=e.getHours()<<11|e.getMinutes()<<5|e.getSeconds()>>1,s=Math.max(0,e.getFullYear()-1980)<<9|e.getMonth()+1<<5|e.getDate(),a=new Uint8Array(30+n.length),o=new DataView(a.buffer);o.setUint32(0,$g,!0),o.setUint16(4,20,!0),o.setUint16(10,i,!0),o.setUint16(12,s,!0),o.setUint32(14,r,!0),o.setUint32(18,t.length,!0),o.setUint32(22,t.length,!0),o.setUint16(26,n.length,!0),a.set(n,30);let c=new Uint8Array(46+n.length),l=new DataView(c.buffer);return l.setUint32(0,Jg,!0),l.setUint16(4,768,!0),l.setUint16(6,20,!0),l.setUint16(12,i,!0),l.setUint16(14,s,!0),l.setUint32(16,r,!0),l.setUint32(20,t.length,!0),l.setUint32(24,t.length,!0),l.setUint16(28,n.length,!0),l.setUint32(38,33188<<16,!0),c.set(n,46),{localHeader:a,centralRecord:c}}function rm(t,e){let n=new DataView(t.array.buffer),r=t.offset-22;if(n.getUint32(r,!0)!=Qg)return!1;let i=n.getUint16(r+8,!0),s=n.getUint16(r+10,!0),a=n.getUint32(r+12,!0),o=r-20,c;if(o>=0&&n.getUint32(o,!0)==tm){if(c=Number(n.getBigUint64(o+8,!0))+e,n.getUint32(c,!0)!=em)return!1}else if(i+1>=65535||s+1>=65535||a+e>=4294967295)return!1;return i!=65535&&n.setUint16(r+8,i+1,!0),s!=65535&&n.setUint16(r+10,s+1,!0),a!=4294967295&&n.setUint32(r+12,a+e,!0),c!==void 0&&(n.setBigUint64(o+8,BigInt(c),!0),n.setBigUint64(c+24,n.getBigUint64(c+24,!0)+1n,!0),n.setBigUint64(c+32,n.getBigUint64(c+32,!0)+1n,!0),n.setBigUint64(c+40,n.getBigUint64(c+40,!0)+BigInt(e),!0)),!0}function Cn(t){return t.toString().replace(/^[ \t]*\/\/.*$/gm,"").replace(/\n|\t/g,"")}function Cf(t){return Math.max(t+1,Math.floor(t*1.001))}function ca(t){let e=new Uint8Array(4);return Bf(e,t),e}function Bf(t,e){t[0]=e>>24,t[1]=e>>16,t[2]=e>>8,t[3]=e}async function sm(t,e,n,r,i){let s="",a;if(!r.embeddedImage){let d=Hf(t,r,i);d.pdfEntry&&(a=d.pdfEntry,a.offset+=e.offset),await ze(e.writable,d.htmlArray)}if(s+="<div id=sfz-wait-message>Please wait...</div>",r.extractDataFromPage?(s+="<div id=sfz-error-message><strong>Error</strong>: Cannot extract the data of the page.",s+=' The file is still a valid ZIP file, you can rename it with a "zip" extension and unzip it to display the page and its resources.</div>'):(s+="<div id=sfz-error-message><strong>Error</strong>: Cannot open the page from the filesystem.",s+="<ul style='line-height:20px;'>",s+=`<li style='margin-bottom:10px'><strong>Chrome/Edge/Brave</strong>: Install <a href='https://www.getsinglefile.com'>SingleFile</a> and enable the option "Allow access to file URLs" in the details page of the extension.</li>`,s+='<li><strong>Safari</strong>: Select "Security > Disable Local File Restrictions" in the "Develop > Developer settings" menu.</li></ul></div>'),t.tocContent&&(s+=t.tocContent),r.insertTextBody&&!r.password){let d=new Of().parseFromString(t.content,"text/html");d.body.querySelectorAll("style, script, noscript").forEach(g=>g.remove());let h="";r.extractDataFromPage&&(h+=(t.title||"")+`
|
|
1
|
+
var{Array:je,Object:U,String:Ta,Number:pe,BigInt:Ce,Math:W,Date:St,Map:gt,Set:Ir,Response:jf,URL:Dr,Error:I,Uint8Array:V,Uint16Array:$f,Uint32Array:Po,DataView:nn,Blob:yn,Promise:ge,TextEncoder:pa,TextDecoder:Nr,crypto:st,btoa:Ra,TransformStream:we,ReadableStream:it,WritableStream:at,CompressionStream:Aa,DecompressionStream:ya,navigator:Gn,Worker:wr,setTimeout:Zr,clearTimeout:Kr}=typeof globalThis<"u"?globalThis:self,me=4294967295,X=65535,rt=255,Pn=8,Zn=9,It=0,qr=99,Co=67324752,ir=134695760,Jf=808471376,Lo=ir,Qf=134630224,Uo=84233040,Mt=33639248,Mo=101010256,ys=101075792,Ai=117853008,Sn=46,Ie=22,Ut=20,et=56,Sa=Ie+Ut+et,vo=12,Bo=20,Zt=4,Bt=4,jr=1,Ho=39169,ko=10,zo=1,yi=21589,eu=28789,tu=25461,Go=6534,Yo=30837,Vo=30805,nu=22613,ru=13,br=1,Wo=6,su=2,iu=4,au=6,Or=8,Ia=32,Da=64,Fr=2048,Na=8192,xr=16,Ss=1,Is=2,Ds=4,Ns=32,hn=61440,Yn=16384,Xo=40960,ou=32768,Vn=73,_r=420,bs=2048,Os=1024,Fs=512,cu=10,lu=20,Pr=45,ba=51,fu=20,Oa=768,gn="/",Ve=30,uu=0,Kn=10,ar=14,or=18,du=22,Eu=24,Kt=4,Fa=new St(2107,11,31,23,59,58),Cr=new St(1980,0,1),m=void 0,ln=1/0,Dt="undefined",De="function",hu="object",In="string",gu="number",mu="boolean",fe=new V,wu="filenameEncoding",_u="commentEncoding",Tu="decodeText",pu="extractPrependedData",Ru="extractAppendedData",Zo="password",Ko="rawPassword",qo="passThrough",jo="signal",Au="checkPasswordOnly",yu="checkOverlappingEntryOnly",Su="checkOverlappingEntry",Iu="checkAmbiguity",Du="checkLocalDirectory",Nu="checkSignature",bu="checkCrc32",Ou="checkAuthenticationCode",$o="useWebWorkers",Jo="useCompressionStream",Qo="transferStreams",ec="preventClose",Fu="encryptionStrength",xu="extendedTimestamp",Pu="ntfsTimestamp",Cu="keepOrder",Lu="level",Uu="bufferedWrite",Mu="createTempStream",vu="dataDescriptorSignature",Bu="useUnicodeFileNames",tc="dataDescriptor",Hu="supportZip64SplitFile",ku="encodeText",gr="offset",qn="usdz",zu="unixExtraFieldType",Gu="localExtraField",Yu="centralExtraField",Vu="strictness",Wu="filenameValidation",Xu="normalizeFilename",nc="maxAppendedDataSize",Zu="decryptCentralDirectory",Ku="signCentralDirectory",rc="filename",sc="comment",rn="strict",Si="balanced",zt="tolerant",qu="Invalid option (must be a function)",ju="Invalid signal (must be an AbortSignal instance)",$u="Invalid password (password must be a string, rawPassword must be a Uint8Array)";function Ii(t){if(t&&typeof t!=De)throw new I(qu);return t}function ic(t){if(t&&(typeof t.addEventListener!=De||typeof t.aborted!=mu))throw new I(ju);return t||m}function ac(t,e){if(t&&typeof t!=In||e&&!(e instanceof V))throw new I($u)}function oc(t,e,n){if(!pe.isInteger(t)||t<0||t>e)throw new I(n)}function Hn(t,e,n){t!==m&&oc(t,e,n)}function $r(t){return typeof t==In&&t.trim()?pe(t):t}var cc=64*1024,Ju=64,lc=1,Qu="Invalid maxWorkers (must be an integer greater than 0)",fc=2;try{typeof Gn!=Dt&&Gn.hardwareConcurrency&&(fc=Gn.hardwareConcurrency)}catch{}var Di={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:cc,maxWorkers:fc,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof Aa!=Dt&&Aa,DecompressionStream:typeof ya!=Dt&&ya},uc="maxWorkers",ed=["baseURI","wasmURI","workerURI"],td=["useCompressionStream","useWebWorkers","transferStreams"],dc=["chunkSize",uc,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],Ec=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],hc=[...ed,...td,...dc,...Ec],jn={...Di};function sn(){return jn}function Ni(t){return gc(t.chunkSize)}function gc(t){return t=$r(t),pe.isInteger(t)&&t>=lc?W.max(t,Ju):cc}function Cn(t){U.assign(jn,mc(wc(t)))}function mc(t){let e={};for(let n of hc){let r=t[n];r!==m&&(e[n]=nd(n,r))}return e}function nd(t,e){if(dc.includes(t)){if(e=$r(e),t==uc&&(!pe.isInteger(e)||e<lc))throw new I(Qu)}else Ec.includes(t)&&Ii(e);return e}function wc(t){t=t||{};let{CompressionStreamZlib:e,DecompressionStreamZlib:n}=t;if(e===m&&n===m)return t;let r=U.assign({},t);return r.CompressionStreamFallback===m&&(r.CompressionStreamFallback=e),r.DecompressionStreamFallback===m&&(r.DecompressionStreamFallback=n),r}function rd(t){let e=mc(wc(t));U.assign(Di,e),U.assign(jn,e)}function bm(){for(let t of hc)delete jn[t];U.assign(jn,Di)}function Ht(t,e){let n=new V(t.length+e.length);return n.set(t),n.set(e,t.length),n}function _c(t){return t.byteOffset||t.byteLength!=t.buffer.byteLength?new V(t):t}function K(t){return new nn(t.buffer,t.byteOffset,t.byteLength)}var Wn=[[],[],[],[],[],[],[],[]];for(let t=0;t<256;t++){let e=t;for(let n=0;n<8;n++)e=e&1?e>>>1^3988292384:e>>>1;Wn[0][t]=e}for(let t=0;t<256;t++)for(let e=1;e<8;e++){let n=Wn[e-1][t];Wn[e][t]=n>>>8^Wn[0][n&255]}var[xa,sd,id,ad,od,cd,ld,fd]=Wn,qt=class{constructor(e){this.crc=e||-1}append(e){let n=this.crc|0,r=e.length|0,i=0;if(r>=8&&e.buffer){let s=new nn(e.buffer,e.byteOffset,r),a=r-8;for(;i<=a;i+=8){let o=n^s.getInt32(i,!0),c=s.getInt32(i+4,!0);n=fd[o&255]^ld[o>>>8&255]^cd[o>>>16&255]^od[o>>>24&255]^ad[c&255]^id[c>>>8&255]^sd[c>>>16&255]^xa[c>>>24&255]}}for(;i<r;i++)n=n>>>8^xa[(n^e[i])&255];this.crc=n}get(){return~this.crc}},Lr=class extends we{constructor(){let e,n=new qt;super({transform(r,i){n.append(r),i.enqueue(r)},flush(){let r=new V(4);new nn(r.buffer).setUint32(0,n.get()),e.value=r}}),e=this}};function Tr(t){if(typeof pa==Dt){t=unescape(encodeURIComponent(t));let e=new V(t.length);for(let n=0;n<e.length;n++)e[n]=t.charCodeAt(n);return e}else return new pa().encode(t)}var ve={concat(t,e){if(t.length===0||e.length===0)return t.concat(e);let n=t[t.length-1],r=ve.getPartial(n);return r===32?t.concat(e):ve._shiftRight(e,r,n|0,t.slice(0,t.length-1))},bitLength(t){let e=t.length;if(e===0)return 0;let n=t[e-1];return(e-1)*32+ve.getPartial(n)},clamp(t,e){if(t.length*32<e)return t;t=t.slice(0,W.ceil(e/32));let n=t.length;return e=e&31,n>0&&e&&(t[n-1]=ve.partial(e,t[n-1]&2147483648>>e-1,1)),t},partial(t,e,n){return t===32?e:(n?e|0:e<<32-t)+t*1099511627776},getPartial(t){return W.round(t/1099511627776)||32},_shiftRight(t,e,n,r){for(r===void 0&&(r=[]);e>=32;e-=32)r.push(n),n=0;if(e===0)return r.concat(t);for(let a=0;a<t.length;a++)r.push(n|t[a]>>>e),n=t[a]<<32-e;let i=t.length?t[t.length-1]:0,s=ve.getPartial(i);return r.push(ve.partial(e+s&31,e+s>32?n:r.pop(),1)),r}},Ur={bytes:{fromBits(t){let n=ve.bitLength(t)/8,r=new V(n),i;for(let s=0;s<n;s++)(s&3)===0&&(i=t[s/4]),r[s]=i>>>24,i<<=8;return r},toBits(t){let e=[],n,r=0;for(n=0;n<t.length;n++)r=r<<8|t[n],(n&3)===3&&(e.push(r),r=0);return n&3&&e.push(ve.partial(8*(n&3),r)),e}}},Tc={};Tc.sha1=class{constructor(t){let e=this;e.blockSize=512,e._init=[1732584193,4023233417,2562383102,271733878,3285377520],e._key=[1518500249,1859775393,2400959708,3395469782],t?(e._h=t._h.slice(0),e._buffer=t._buffer.slice(0),e._length=t._length):e.reset()}reset(){let t=this;return t._h=t._init.slice(0),t._buffer=[],t._length=0,t}update(t){let e=this;typeof t=="string"&&(t=Ur.utf8String.toBits(t));let n=e._buffer=ve.concat(e._buffer,t),r=e._length,i=e._length=r+ve.bitLength(t);if(i>9007199254740991)throw new I("Cannot hash more than 2^53 - 1 bits");let s=new Po(n),a=0;for(let o=e.blockSize+r-(e.blockSize+r&e.blockSize-1);o<=i;o+=e.blockSize)e._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),e}finalize(){let t=this,e=t._buffer,n=t._h;e=ve.concat(e,[ve.partial(1,1)]);for(let r=e.length+2;r&15;r++)e.push(0);for(e.push(W.floor(t._length/4294967296)),e.push(t._length|0);e.length;)t._block(e.splice(0,16));return t.reset(),n}_f(t,e,n,r){if(t<=19)return e&n|~e&r;if(t<=39)return e^n^r;if(t<=59)return e&n|e&r|n&r;if(t<=79)return e^n^r}_S(t,e){return e<<t|e>>>32-t}_block(t){let e=this,n=e._h,r=je(80);for(let l=0;l<16;l++)r[l]=t[l];let i=n[0],s=n[1],a=n[2],o=n[3],c=n[4];for(let l=0;l<=79;l++){l>=16&&(r[l]=e._S(1,r[l-3]^r[l-8]^r[l-14]^r[l-16]));let u=e._S(5,i)+e._f(l,s,a,o)+c+r[l]+e._key[W.floor(l/20)]|0;c=o,o=a,a=e._S(30,s),s=i,i=u}n[0]=n[0]+i|0,n[1]=n[1]+s|0,n[2]=n[2]+a|0,n[3]=n[3]+o|0,n[4]=n[4]+c|0}};var pc={};pc.aes=class{constructor(t){let e=this;e._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],e._tables[0][0][0]||e._precompute();let n=e._tables[0][4],r=e._tables[1],i=t.length,s,a,o,c=1;if(i!==4&&i!==6&&i!==8)throw new I("invalid aes key size");for(e._key=[a=t.slice(0),o=[]],s=i;s<4*i+28;s++){let l=a[s-1];(s%i===0||i===8&&s%i===4)&&(l=n[l>>>24]<<24^n[l>>16&255]<<16^n[l>>8&255]<<8^n[l&255],s%i===0&&(l=l<<8^l>>>24^c<<24,c=c<<1^(c>>7)*283)),a[s]=a[s-i]^l}for(let l=0;s;l++,s--){let u=a[l&3?s:s-4];s<=4||l<4?o[l]=u:o[l]=r[0][n[u>>>24]]^r[1][n[u>>16&255]]^r[2][n[u>>8&255]]^r[3][n[u&255]]}}encrypt(t){return this._crypt(t,0)}decrypt(t){return this._crypt(t,1)}_precompute(){let t=this._tables[0],e=this._tables[1],n=t[4],r=e[4],i=[],s=[],a,o,c,l;for(let u=0;u<256;u++)s[(i[u]=u<<1^(u>>7)*283)^u]=u;for(let u=a=0;!n[u];u^=o||1,a=s[a]||1){let f=a^a<<1^a<<2^a<<3^a<<4;f=f>>8^f&255^99,n[u]=f,r[f]=u,l=i[c=i[o=i[u]]];let d=l*16843009^c*65537^o*257^u*16843008,h=i[f]*257^f*16843008;for(let g=0;g<4;g++)t[g][u]=h=h<<24^h>>>8,e[g][f]=d=d<<24^d>>>8}for(let u=0;u<5;u++)t[u]=t[u].slice(0),e[u]=e[u].slice(0)}_crypt(t,e){if(t.length!==4)throw new I("invalid aes block size");let n=this._key[e],r=n.length/4-2,i=[0,0,0,0],s=this._tables[e],a=s[0],o=s[1],c=s[2],l=s[3],u=s[4],f=t[0]^n[0],d=t[e?3:1]^n[1],h=t[2]^n[2],g=t[e?1:3]^n[3],E=4,_,R,T;for(let w=0;w<r;w++)_=a[f>>>24]^o[d>>16&255]^c[h>>8&255]^l[g&255]^n[E],R=a[d>>>24]^o[h>>16&255]^c[g>>8&255]^l[f&255]^n[E+1],T=a[h>>>24]^o[g>>16&255]^c[f>>8&255]^l[d&255]^n[E+2],g=a[g>>>24]^o[f>>16&255]^c[d>>8&255]^l[h&255]^n[E+3],E+=4,f=_,d=R,h=T;for(let w=0;w<4;w++)i[e?3&-w:w]=u[f>>>24]<<24^u[d>>16&255]<<16^u[h>>8&255]<<8^u[g&255]^n[E++],_=f,f=d,d=h,h=g,g=_;return i}};var Rc={};Rc.ctrGladman=class{constructor(t,e){this._prf=t,this._initIv=e,this._iv=e}reset(){this._iv=this._initIv}update(t){return this.calculate(this._prf,t,this._iv)}incWord(t){if((t>>24&255)===255){let e=t>>16&255,n=t>>8&255,r=t&255;e===255?(e=0,n===255?(n=0,r===255?r=0:++r):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=r}else t+=1<<24;return t}incCounter(t){(t[0]=this.incWord(t[0]))===0&&(t[1]=this.incWord(t[1]))}calculate(t,e,n){let r;if(!(r=e.length))return[];let i=ve.bitLength(e);for(let s=0;s<r;s+=4){this.incCounter(n);let a=t.encrypt(n);e[s]^=a[0],e[s+1]^=a[1],e[s+2]^=a[2],e[s+3]^=a[3]}return ve.clamp(e,i)}};var jt={importKey(t){return new jt.hmacSha1(Ur.bytes.toBits(t))},pbkdf2(t,e,n,r){if(n=n||1e4,r<0||n<0)throw new I("invalid params to pbkdf2");let i=(r>>5)+1<<2,s,a,o,c,l,u=new ArrayBuffer(i),f=new nn(u),d=0,h=ve;for(e=Ur.bytes.toBits(e),l=1;d<(i||1);l++){for(s=a=t.encrypt(h.concat(e,[l])),o=1;o<n;o++)for(a=t.encrypt(a),c=0;c<a.length;c++)s[c]^=a[c];for(o=0;d<(i||1)&&o<s.length;o++)f.setInt32(d,s[o]),d+=4}return u.slice(0,r/8)}};jt.hmacSha1=class{constructor(t){let e=this,n=e._hash=Tc.sha1,r=[[],[]];e._baseHash=[new n,new n];let i=e._baseHash[0].blockSize/32;t.length>i&&(t=new n().update(t).finalize());for(let s=0;s<i;s++)r[0][s]=t[s]^909522486,r[1][s]=t[s]^1549556828;e._baseHash[0].update(r[0]),e._baseHash[1].update(r[1]),e._resultHash=new n(e._baseHash[0])}reset(){let t=this;t._resultHash=new t._hash(t._baseHash[0]),t._updated=!1}update(t){let e=this;e._updated=!0,e._resultHash.update(t)}digest(){let t=this,e=t._resultHash.finalize(),n=new t._hash(t._baseHash[1]).update(e).finalize();return t.reset(),n}encrypt(t){if(this._updated)throw new I("encrypt on already updated hmac called!");return this.update(t),this.digest(t)}};var ud=typeof st!=Dt&&typeof st.getRandomValues==De,bi="Invalid password",Oi="Invalid signature",Ac=Oi,Fi="zipjs-abort-check-password",dd="Crypto API not supported";function yc(t){if(ud)return st.getRandomValues(t);throw new I(dd)}var fn=16,Ed="raw",Sc={name:"PBKDF2"},hd={name:"HMAC"},gd="SHA-1",md=U.assign({hash:hd},Sc),xs=U.assign({iterations:1e3,hash:{name:gd}},Sc),wd=["deriveBits"],$n=[8,12,16],Mn=[16,24,32],pt=10,_d=[0,0,0,0],Jr=typeof st!=Dt,cr=Jr&&st.subtle,Ic=Jr&&typeof cr!=Dt,ft=Ur.bytes,Td=pc.aes,pd=Rc.ctrGladman,Rd=jt.hmacSha1,Pa=Jr&&Ic&&typeof cr.importKey==De,Ca=Jr&&Ic&&typeof cr.deriveBits==De,Ps=class extends we{constructor({password:e,rawPassword:n,encryptionStrength:r,checkPasswordOnly:i,checkAuthenticationCode:s=!0}){super({start(){Dc(this,e,n,r)},async transform(a,o){let c=this,{password:l,strength:u,resolveReady:f,ready:d}=c;l?(await Ad(c,u,l,qe(a,0,$n[u]+2)),a=qe(a,$n[u]+2),i?o.error(new I(Fi)):f()):await d;let h=new V(a.length-pt-(a.length-pt)%fn);o.enqueue(Nc(c,a,h,0,pt,!0))},async flush(a){let{ctr:o,hmac:c,pendingInput:l,ready:u}=this;if(c&&o){await u;let f=qe(l,0,l.length-pt),d=qe(l,l.length-pt),h=fe;if(f.length){let _=Qn(ft,f);c.update(_);let R=o.update(_);h=Jn(ft,R)}let g=qe(Jn(ft,c.digest()),0,pt),E=l.length<pt?1:0;for(let _=0;_<pt;_++)E|=g[_]^d[_];if(E&&s)throw new I(Ac);a.enqueue(h)}}})}},Cs=class extends we{constructor({password:e,rawPassword:n,encryptionStrength:r}){super({start(){Dc(this,e,n,r)},async transform(i,s){let a=this,{password:o,strength:c,resolveReady:l,ready:u}=a,f=fe;o?(f=await yd(a,c,o),l()):await u;let d=new V(f.length+i.length-i.length%fn);d.set(f,0),s.enqueue(Nc(a,i,d,f.length,0))},async flush(i){let{ctr:s,hmac:a,pendingInput:o,ready:c}=this;if(a&&s){await c;let l=fe;if(o.length){let f=s.update(Qn(ft,o));a.update(f),l=Jn(ft,f)}let u=Jn(ft,a.digest()).slice(0,pt);i.enqueue(Ht(l,u))}}})}};function Dc(t,e,n,r){U.assign(t,{ready:new ge(i=>t.resolveReady=i),password:Dd(e,n),strength:r-1,pendingInput:fe})}function Nc(t,e,n,r,i,s){let{ctr:a,hmac:o,pendingInput:c}=t;c.length&&(e=Ht(c,e));let l=e.length-i;n=Nd(n,r+(l-l%fn));let u;for(u=0;u<=l-fn;u+=fn){let f=Qn(ft,qe(e,u,u+fn));s&&o.update(f);let d=a.update(f);s||o.update(d),n.set(Jn(ft,d),u+r)}return t.pendingInput=qe(e,u),n}async function Ad(t,e,n,r){let i=await bc(t,e,n,qe(r,0,$n[e])),s=qe(r,$n[e]);if(i[0]!=s[0]||i[1]!=s[1])throw new I(bi)}async function yd(t,e,n){let r=yc(new V($n[e])),i=await bc(t,e,n,r);return Ht(r,i)}async function bc(t,e,n,r){t.password=null;let i=await Sd(Ed,n,md,!1,wd),s=await Id(U.assign({salt:r},xs),i,8*(Mn[e]*2+2)),a=new V(s),o=Qn(ft,qe(a,0,Mn[e])),c=Qn(ft,qe(a,Mn[e],Mn[e]*2)),l=qe(a,Mn[e]*2);return U.assign(t,{keys:{key:o,authentication:c,passwordVerification:l},ctr:new pd(new Td(o),je.from(_d)),hmac:new Rd(c)}),l}async function Sd(t,e,n,r,i){if(Pa)try{return await cr.importKey(t,e,n,r,i)}catch{return Pa=!1,jt.importKey(e)}else return jt.importKey(e)}async function Id(t,e,n){if(Ca)try{return await cr.deriveBits(t,e,n)}catch{return Ca=!1,jt.pbkdf2(e,t.salt,xs.iterations,n)}else return jt.pbkdf2(e,t.salt,xs.iterations,n)}function Dd(t,e){return e===m?Tr(t):e}function Nd(t,e){if(e&&e>t.length){let n=t;t=new V(e),t.set(n,0)}return t}function qe(t,e,n){return t.subarray(e,n)}function Jn(t,e){return t.fromBits(e)}function Qn(t,e){return t.toBits(e)}var mn=12,Ls=class extends we{constructor({password:e,rawPassword:n,passwordVerification:r,checkPasswordOnly:i}){super({start(){Oc(this,e,n,r)},transform(s,a){let o=this;if(o.password||o.rawPassword){let c=La(o,s.subarray(0,mn));if(o.password=o.rawPassword=null,(c[mn-1]^o.passwordVerification)!=0)throw new I(bi);s=s.subarray(mn)}i?a.error(new I(Fi)):a.enqueue(La(o,s))}})}},Us=class extends we{constructor({password:e,rawPassword:n,passwordVerification:r}){super({start(){Oc(this,e,n,r)},transform(i,s){let a=this,o,c;if(a.password||a.rawPassword){a.password=a.rawPassword=null;let l=yc(new V(mn));l[mn-1]=a.passwordVerification,o=new V(i.length+l.length),o.set(Ua(a,l),0),c=mn}else o=new V(i.length),c=0;o.set(Ua(a,i),c),s.enqueue(o)}})}};function Oc(t,e,n,r){U.assign(t,{password:e,rawPassword:n,passwordVerification:r}),bd(t,e,n)}function La(t,e){let n=new V(e.length);for(let r=0;r<e.length;r++)n[r]=Fc(t)^e[r],Mr(t,n[r]);return n}function Ua(t,e){let n=new V(e.length);for(let r=0;r<e.length;r++)n[r]=Fc(t)^e[r],Mr(t,e[r]);return n}function bd(t,e,n){let r=[305419896,591751049,878082192];if(U.assign(t,{keys:r,crcKey0:new qt(r[0]),crcKey2:new qt(r[2])}),n)for(let i=0;i<n.length;i++)Mr(t,n[i]);else for(let i=0;i<e.length;i++)Mr(t,e.charCodeAt(i))}function Mr(t,e){let[,n]=t.keys;t.crcKey0.append([e]);let r=~t.crcKey0.get();n=Ma(W.imul(Ma(n+xc(r)),134775813)+1),t.crcKey2.append([n>>>24]);let i=~t.crcKey2.get();t.keys=[r,n,i]}function Fc(t){let e=t.keys[2]|2;return xc(W.imul(e,e^1)>>>8)}function xc(t){return t&255}function Ma(t){return t&4294967295}function $t(t){if(t instanceof it)return t;let e=t.getReader();return new it({async pull(n){let{value:r,done:i}=await e.read();i?n.close():n.enqueue(r)},cancel(n){return e.cancel(n)}})}function Jt(t,e){t=$t(t);let n=e?{type:e}:{};if(Od())return new jf(t).blob().then(i=>e?new yn([i],n):i);let r=[];return t.pipeTo(new at({write(i){r.push(i)}})).then(()=>new yn(r,n))}function Od(){return typeof yn.prototype.stream!=De||new yn([]).stream()instanceof it}function Fd(t){if(t instanceof at)return t;let e=t.getWriter();return new at({write(n){return e.write(n)},close(){return e.close()},abort(n){return e.abort(n)}})}var va="Invalid codec definition",xd="Reserved compression method",Pd="Invalid codec module",Cd=[It,Pn,Zn,qr],wn=new gt,lr=new gt;function Om(t={}){let{compressionMethod:e,format:n,codecURI:r,CompressionStream:i,DecompressionStream:s,versionNeeded:a}=t;if(!pe.isInteger(e)||e<0||e>X||typeof n!=In||!n.length)throw new I(va);if(Cd.includes(e))throw new I(xd);let o=typeof i==De||typeof s==De;if(!o&&(typeof r!=In||!r.length))throw new I(va);wn.set(e,{compressionMethod:e,format:n,codecURI:r,versionNeeded:a}),o&&Cc(n,{CompressionStream:i,DecompressionStream:s})}function Fm(t){let e=wn.get(t);if(e){wn.delete(t);let n;wn.forEach(r=>n=n||r.format==e.format),n||lr.delete(e.format)}}function Pc(t){return wn.get(t)}function Ld(){return je.from(wn.values(),t=>U.assign({},t,lr.get(t.format)))}function xi(t){return lr.get(t)}function Cc(t,e){let{CompressionStream:n,DecompressionStream:r}=e;if(typeof n!=De&&typeof r!=De)throw new I(Pd);lr.set(t,{CompressionStream:n,DecompressionStream:r})}async function Ud(t,e){!lr.has(t)&&e&&Cc(t,await import(e))}var Qr="Invalid uncompressed size",Lc="Invalid compressed data",Uc=Oi,Md="Compression method not supported",un="deflate-raw",Ms="deflate64-raw",Dn="gzip",Mc=10,vs=8,vd=[31,139,8],Bd=5e3,Bs=class extends we{constructor(e,{chunkSize:n,CompressionStreamFallback:r,CompressionStream:i}){super({});let{compressed:s,encrypted:a,useCompressionStream:o,zipCrypto:c,computeCrc32:l,level:u,deflate64:f,format:d,compressionMethod:h,inputSize:g}=e,E=this,_,R,T,w=super.readable,p=d&&xi(d),S=l&&s&&!f&&!p&&(!a||c)&&!!(o&&i);if((!a||c)&&l&&!S&&(_=new Lr,w=nt(w,_)),s)if(p)w=_n(w,Hc(p.CompressionStream,d,{level:u,chunkSize:n,compressionMethod:h,uncompressedSize:g}));else if(S)T=new vr,w=_n(w,new i(Dn)),w=nt(w,T);else try{w=kc(w,o,{level:u,chunkSize:n},i,r)}catch(N){let y;try{y=new i(Dn)}catch{throw N}w=_n(w,y),w=nt(w,new vr)}a&&(c?w=nt(w,new Us(e)):(R=new Cs(e),w=nt(w,R))),Bc(E,w,()=>{(!a||c)&&l&&(E.crc32=S?T.crc32:new nn(_.value.buffer).getUint32(0))})}},vr=class extends we{constructor(){let e,n=Mc,r=new V(0);super({transform(i,s){if(n){let l=W.min(n,i.length);if(n-=l,i=i.subarray(l),!i.length)return}let a=r.length+i.length;if(a<=vs){r=Ht(r,i);return}let o=a-vs,c=W.min(o,r.length);s.enqueue(Ht(r.subarray(0,c),i.subarray(0,o-c))),r=Ht(r.subarray(c),i.subarray(o-c))},flush(){let i=K(r);e.crc32=i.getUint32(0,!0),e.uncompressedSize=i.getUint32(4,!0)}}),e=this}};function Hd(t,e,n){let r=new qt,i=0,s=!1,a,o,c,l=new ge((g,E)=>{o=g,c=E});l.catch(()=>{}),n||o();let u=new we({start(g){let E=new V(Mc);E.set(vd),g.enqueue(E)},transform(g,E){E.enqueue(g)},async flush(g){s=!0,d();try{await l}finally{h()}let E=new V(vs),_=K(E);_.setUint32(0,r.get(),!0),_.setUint32(4,n,!0),g.enqueue(E)},cancel(g){c(g)}}),f=new we({transform(g,E){r.append(g),i+=g.length,i>=n?o():s&&d(),E.enqueue(g)},cancel(g){c(g)}});return t=nt(t,u),t=_n(t,e),nt(t,f);function d(){h(),a=Zr(()=>c(new I(Qr)),Bd)}function h(){Kr(a)}}var Hs=class extends we{constructor(e,{chunkSize:n,DecompressionStreamFallback:r,DecompressionStream:i}){super({});let{zipCrypto:s,encrypted:a,checkCrc32:o,crc32:c,compressed:l,useCompressionStream:u,deflate64:f,format:d,compressionMethod:h,rawBitFlag:g,outputSize:E}=e,_,R,T=super.readable;if(a&&(s?T=nt(T,new Ls(e)):(R=new Ps(e),T=nt(T,R))),l){let w=d&&xi(d);if(w)T=_n(T,Hc(w.DecompressionStream,d,{chunkSize:n,compressionMethod:h,rawBitFlag:g,uncompressedSize:E}));else try{T=kc(T,u,{chunkSize:n,deflate64:f},i,r)}catch(p){if(f||E===m)throw p;let S;try{S=new i(Dn)}catch{throw p}T=Hd(T,S,E)}T=Yd(T)}o&&(_=new Lr,T=nt(T,_)),Bc(this,T,()=>{if(o){let w=new nn(_.value.buffer);if(c!=w.getUint32(0,!1))throw new I(Uc)}})}},Ba=new gt;function Pi(t,e){if(!t)return!1;let n=Ba.get(t);n||(n=new gt,Ba.set(t,n));let r=n.get(e);if(r===m){try{new t(e),r=!0}catch{r=!1}n.set(e,r)}return r}function vc(t){return Pi(t,un)}function kd(t){return Pi(t,Dn)}function Bc(t,e,n){e=nt(e,new we({flush:n})),U.defineProperty(t,"readable",{get(){return e}})}function Hc(t,e,n){if(!t)throw new I(Md);return new t(e,n)}function kc(t,e,n,r,i){let s=e&&r?r:i||r,a=n.deflate64?Ms:un,o;try{o=new s(a,n)}catch(c){if(e&&i&&s!=i)o=new i(a,n);else throw c}return _n(t,o)}function nt(t,e){return $t(t).pipeThrough(e)}function _n(t,e){let n=e.writable.getWriter(),r=t.getReader();return i(),e.readable;async function i(){try{for(;;){await n.ready;let s=await r.read();if(s.done){await n.close();break}await n.write(s.value)}}catch(s){await zd(n,s),await Gd(r,s)}}}async function zd(t,e){try{await t.abort(e)}catch{}}async function Gd(t,e){try{await t.cancel(e)}catch{}}function Yd(t){let e=t.getReader();return new it({async pull(n){let r;try{r=await e.read()}catch(a){if(a&&a.message)throw a;let o=new I(Lc);throw o.cause=a,o}let{value:i,done:s}=r;s?n.close():n.enqueue(i)},cancel(n){return e.cancel(n)}})}var Vd=64*1024,Wd="message",Xd="start",Zd="pull",Ha="data",Kd="ack",qd="close",Ci="deflate",zc="inflate",ks=class extends we{constructor(e,n){super({});let r=this,{codecType:i}=e,s;i.startsWith(Ci)?s=Bs:i.startsWith(zc)&&(s=Hs),r.outputSize=0;let a=0,o=new s(e,n),c=super.readable,l=new we({transform(f,d){f&&f.length&&(a+=f.length,d.enqueue(f))},flush(){U.assign(r,{inputSize:a})}}),u=new we({transform(f,d){if(f&&f.length&&(d.enqueue(f),r.outputSize+=f.length,e.outputSize!==m&&r.outputSize>e.outputSize))throw new I(Qr)},flush(){let{crc32:f}=o;U.assign(r,{crc32:f,inputSize:a})}});U.defineProperty(r,"readable",{get(){return c.pipeThrough(l).pipeThrough(o).pipeThrough(u)}})}},Br=class extends we{constructor(e){let n=[],r=0;(!pe.isFinite(e)||e<1)&&(e=Vd),super({transform(a,o){for(n.push(a),r+=a.length;r>e;)o.enqueue(i())},flush(a){r&&a.enqueue(s(n,r))}});function i(){let a=new V(e),o=0;for(;o<e;){let c=n[0],l=e-o;c.length<=l?(a.set(c,o),o+=c.length,n.shift()):(a.set(c.subarray(0,l),o),n[0]=c.subarray(l),o+=l)}return r-=e,a}function s(a,o){let c=new V(o),l=0;for(let u of a)c.set(u,l),l+=u.length;return c}}},Li="Worker startup timeout",Xn,Ui,zs,Gs=()=>{};function jd(t){zs=t}async function $d(t){let{CompressionStream:e,CompressionStreamFallback:n}=t;if(n&&!n.requiresModule||vc(e)||kd(e))return!0;if(n)try{return await Gs(t),!0}catch{return!1}return!1}function Jd(){Xn=m,Ui=!1}function ka(t){t.createWorker?Ui=!0:Xn=!1}var Tn=class{constructor(e,{readable:n,writable:r},{options:i,config:s,streamOptions:a,useWebWorkers:o,transferStreams:c,workerURI:l,createWorker:u},f){let{signal:d}=a;return Ui&&(u=m),U.assign(e,{busy:!0,generation:(e.generation||0)+1,readable:n.pipeThrough(new Br(Ni(s))).pipeThrough(new Ys(a),{signal:d}),writable:r,options:U.assign({},i),workerURI:l,createWorker:u,transferStreams:c,terminate(){return new ge(h=>{let{worker:g,busy:E}=e;g?(E?e.resolveTerminated=h:(g.terminate(),h()),e.interface=null):h()})},onTaskFinished(){if(e.busy){let{resolveTerminated:h}=e;h&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),h()),e.busy=!1,f(e)}}}),Xn===m&&(Xn=typeof wr!=Dt),(o&&zs&&(Xn&&l||u)?zs:Gc)(e,s)}},Ys=class extends we{constructor({onstart:e,onprogress:n,size:r,onend:i}){let s=0;super({async start(){e&&await cs(e,r)},async transform(a,o){s+=a.length,n&&await cs(n,s,r),o.enqueue(a)},async flush(){i&&await cs(i,s)}})}};async function cs(t,...e){try{await t(...e)}catch{}}function Gc(t,e){return{run:()=>Vs(t,e)}}async function Vs({options:t,readable:e,writable:n,onTaskFinished:r},i){let s;try{if(t.compressed&&!t.format){let l=t.codecType.startsWith(Ci),u=l?i.CompressionStreamFallback:i.DecompressionStreamFallback,f=l?i.CompressionStream:i.DecompressionStream;if(t.useCompressionStream){if(u&&u.requiresModule&&!vc(f))try{await Gs(i)}catch{}}else try{await Gs(i)}catch{(!u||u.requiresModule)&&(t.useCompressionStream=!0)}}s=new ks(t,i),await e.pipeThrough(s).pipeThrough(new Br(Ni(i))).pipeTo(n,{preventClose:!0,preventAbort:!0});let{crc32:a,inputSize:o,outputSize:c}=s;return{crc32:a,inputSize:o,outputSize:c}}catch(a){throw s&&(a.outputSize=s.outputSize),a}finally{r()}}var za={type:"module"},Ws="error",Qd="messageerror",Ga,ls,Ya,Xs=!0;try{Xs=typeof structuredClone==De&&structuredClone(new DOMException("","AbortError")).code!==m}catch{}jd(eE);function eE(t,e){let{baseURI:n,chunkSize:r,workerStartupTimeout:i}=e,{wasmURI:s}=e;if(!t.interface){typeof s==De&&(s=s());let a;try{a=pr(t.workerURI,n,t)}catch{return ka(t),Gc(t,e)}U.assign(t,{worker:a,workerAlive:!1,terminated:!1,startupError:null,interface:{run:async()=>{try{return await tE(t,{chunkSize:r,wasmURI:s,baseURI:n,workerStartupTimeout:i})}catch(o){if(o&&o.workerStartupFailed)return ka(t),Va(t),Vs(t,e);if(o&&o.codecImportFailed){if(t.reader)return Va(t),Vs(t,e);t.onTaskFinished()}throw o}}}})}return t.interface}async function tE(t,e){if(!t.worker){let{startupError:h}=t;t.startupError=null;let g=h||new I(Li);throw g.workerStartupFailed=!0,g}let n,r,i=new ge((h,g)=>{n=h,r=g});U.assign(t,{reader:null,writer:null,resolveResult:n,rejectResult:r,result:i});let{readable:s,options:a}=t,{writable:o,closed:c,abortPipe:l}=nE(t.writable),u;try{u=Zs({type:Xd,options:a,config:e,readable:s,writable:o},t)}catch(h){l();try{await c}catch{}throw t.onTaskFinished(),h}u||U.assign(t,{reader:s.getReader(),writer:o.getWriter()});let{workerStartupTimeout:f}=e;!t.workerAlive&&pe.isFinite(f)&&f>=0&&(t.startupTimeout=Zr(()=>rE(t),f));try{let h=await i;return await d(),await c,h}catch(h){await d(),l();try{await c}catch{}throw h}async function d(){if(!u&&!o.locked)try{await o.getWriter().close()}catch{}}}function nE(t){let e=new AbortController,{writable:n,readable:r}=new we,i=r.pipeTo(t,{preventClose:!0,preventAbort:!0,signal:e.signal});return i.catch(()=>{}),{writable:n,closed:i,abortPipe:()=>e.abort()}}function Va(t){let{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function Mi(t){let{worker:e}=t;if(e)try{e.terminate()}catch{}t.interface=null}function pr(t,e,n,r,i=!0){let{createWorker:s}=n,a,o,c;if(s)a=s();else if(ls===m||Ga!==t){let l=typeof t==De;l?o=t(i):o=t;let u=o.startsWith("data:"),f=o.startsWith("blob:");if(u||f){r===m&&(r=!1),r&&(c=za);try{a=new wr(o,c)}catch(d){if(f)try{Dr.revokeObjectURL(o)}catch{}if(l&&f)return pr(t,e,n,r,!1);if(r)throw d;return pr(t,e,n,!0,!1)}}else{r===m&&(r=!0),r&&(c=za);try{o=new Dr(o,e)}catch{}try{a=new wr(o,c)}catch(d){if(r)return pr(t,e,n,!1,i);throw d}}Ga=t,ls=o,Ya=c}else a=new wr(ls,Ya);return a.addEventListener(Wd,l=>{n.workerAlive=!0,Yc(n),sE(l,n)}),a.addEventListener(Ws,l=>Wa(l,n)),a.addEventListener(Qd,l=>Wa(l,n)),a}function rE(t){if(t.startupTimeout=null,t.workerAlive)return;let{rejectResult:e,writer:n}=t;if(Mi(t),t.worker=null,e){let r=new I(Li);r.workerStartupFailed=!0,e(r),n&&n.releaseLock()}}function Yc(t){let{startupTimeout:e}=t;e&&(Kr(e),t.startupTimeout=null)}function Wa(t,e){t.preventDefault&&t.preventDefault(),Yc(e);let{workerAlive:n,rejectResult:r,writer:i,onTaskFinished:s}=e;Mi(e),n||(e.worker=null);let a=t.error||new I(t.message||Ws);n||(a=U.assign(new I(a.message||Ws),{workerStartupFailed:!0}),e.startupError=a),r&&(r(a),i&&i.releaseLock(),n&&s())}function Zs(t,{worker:e,writer:n,transferStreams:r,workerAlive:i}){try{let{value:s,readable:a,writable:o}=t,c=[];if(s&&(t.value=_c(s),c.push(t.value.buffer)),r&&Xs&&i?(a&&c.push(a),o&&c.push(o)):t.readable=t.writable=null,c.length)try{return e.postMessage(t,c),!0}catch{Xs=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(s){throw n&&n.releaseLock(),s}}async function sE({data:t},e){let{type:n,value:r,messageId:i,result:s,error:a}=t,{reader:o,writer:c,resolveResult:l,rejectResult:u,onTaskFinished:f,generation:d}=e,h=()=>e.generation!=d;try{if(a){let{message:E,stack:_,code:R,name:T,outputSize:w,cause:p,codecImportFailed:S}=a,N=new I(E);U.assign(N,{stack:_,code:R,name:T,outputSize:w}),p&&(N.cause=U.assign(new I(p.message),{name:p.name})),S&&(N.codecImportFailed=!0),g(N)}else{if(n==Zd){let{value:E,done:_}=await o.read();h()||Zs({type:Ha,value:E,done:_,messageId:i},e)}n==Ha&&(await c.ready,await c.write(new V(r)),h()||Zs({type:Kd,messageId:i},e)),n==qd&&g(null,s)}}catch(E){h()||(Mi(e),g(E))}function g(E,_){h()||(E?u(E):l(_),c&&c.releaseLock(),E&&E.codecImportFailed||f())}}var vt=[],pn=[],Rn,Rr,Xa=0;async function Vc(t,e){let{options:n,config:r}=e,{transferStreams:i,useWebWorkers:s,useCompressionStream:a,compressed:o,checkCrc32:c,computeCrc32:l,encrypted:u,format:f,codecURI:d}=n,{workerURI:h,createWorker:g,maxWorkers:E}=r;f&&(d&&(n.codecURI=iE(d,r.baseURI)),await Ud(f,n.codecURI)),e.transferStreams=!f&&(i||i===m&&r.transferStreams);let _=!o&&!c&&!l&&!u,R=f===m||!!n.codecURI;return e.useWebWorkers=!_&&R&&(s||s===m&&r.useWebWorkers),e.workerURI=e.useWebWorkers&&h?h:m,e.createWorker=e.useWebWorkers&&g?g:m,n.useCompressionStream=a||a===m&&r.useCompressionStream,(await T()).run();async function T(){let p=vt.find(S=>!S.busy);if(p)return Ks(p),new Tn(p,t,e,w);if(vt.length<E){let S={indexWorker:Xa};return Xa++,vt.push(S),new Tn(S,t,e,w)}else return new ge(S=>{pn.push({resolve:S,stream:t,workerOptions:e}),Rr=r.workerStarvationTimeout,Hr()})}function w(p){if(Wc(),pn.length){let[{resolve:S,stream:N,workerOptions:y}]=pn.splice(0,1);S(new Tn(p,N,y,w)),Hr()}else p.worker?(Ks(p),cE(p,e)):vt=vt.filter(S=>S!=p)}}function iE(t,e){try{return new Dr(t,e).toString()}catch{return t}}function Hr(){!Rn&&pn.length&&pe.isFinite(Rr)&&Rr>=0&&(Rn=Zr(aE,Rr))}function Wc(){Rn&&(Kr(Rn),Rn=null)}function aE(){if(Rn=null,pn.length){let[{resolve:t,stream:e,workerOptions:n}]=pn.splice(0,1),r=U.assign({},n,{useWebWorkers:!1,workerURI:m,createWorker:m});t(new Tn({},e,r,oE)),Hr()}}function oE(){Wc(),Hr()}function cE(t,e){let{config:n}=e,{terminateWorkerTimeout:r}=n;pe.isFinite(r)&&r>=0&&(t.terminated?t.terminated=!1:t.terminateTimeout=Zr(async()=>{vt=vt.filter(i=>i!=t);try{await t.terminate()}catch{}},r))}function Ks(t){let{terminateTimeout:e}=t;e&&(Kr(e),t.terminateTimeout=null)}async function xm(){await ge.allSettled(vt.map(t=>(Ks(t),t.terminate()))),Jd()}var Xc="\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(""),lE=Xc.length==256;function fE(t){if(lE){let e="";for(let n=0;n<t.length;n++)e+=Xc[t[n]];return e}else return new Nr().decode(t)}function Ar(t,e){return Zc(t,e,!0)}function uE(t,e){return Zc(t,e,!1)}function Zc(t,e,n){return e&&e.trim().toLowerCase()=="cp437"?fE(t):new Nr(e,{ignoreBOM:n}).decode(t)}var Kc="HTTP error ",At="HTTP Range not supported",Za="HTTP resource changed",dE="Writer iterator completed too soon",EE="Writer not initialized",hE="text/plain",gE="Content-Length",mE="Content-Encoding",vi="Content-Range",wE="Accept-Ranges",_E="Range",TE="Etag",pE="Last-Modified",RE="HEAD",es="GET",qc="bytes",AE=256*1024,yE=16*1024*1024,Bi="writable",Ka=Symbol(),Nn=class{constructor(){this.size=0}init(){this.initialized=!0}},Et=class extends Nn{get readable(){return this.createReadable()}createReadable({offset:e=0,size:n,chunkSize:r=Ni(sn())}={}){let i=this,s=0;return r=gc(r),new it({async pull(a){let o=n===m?r:W.min(r,n-s),c=await _e(i,e+s,o);c.length&&a.enqueue(c),s+r>=n||!c.length&&o?a.close():s+=r}})}},kr=class extends Nn{constructor(){super();let e=this,n=new at({write(r){if(!e.initialized)throw new I(EE);return e.writeUint8Array(_c(r))}});U.defineProperty(e,Bi,{get(){return n}})}writeUint8Array(){}},qa=class extends Et{constructor(e){super();let n=e.length;for(;e.charAt(n-1)=="=";)n--;let r=e.indexOf(",")+1;U.assign(this,{dataURI:e,dataStart:r,size:W.floor((n-r)*.75)})}readUint8Array(e,n){let{dataStart:r,dataURI:i}=this,s=new V(n),a=W.floor(e/3)*4,o=atob(i.substring(a+r,W.ceil((e+n)/3)*4+r)),c=e-W.floor(a/4)*3,l=0;for(let u=c;u<c+n&&u<o.length;u++)s[u-c]=o.charCodeAt(u),l++;return l<s.length?s.subarray(0,l):s}},ja=class extends kr{constructor(e){super(),U.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",pendingCharacters:""})}writeUint8Array(e){let n=this,r,i=n.pendingCharacters,s=n.pendingCharacters.length;for(n.pendingCharacters="",r=0;r<W.floor((s+e.length)/3)*3-s;r++)i+=Ta.fromCharCode(e[r]);for(;r<e.length;r++)n.pendingCharacters+=Ta.fromCharCode(e[r]);i.length>2?n.data+=Ra(i):n.pendingCharacters=i+n.pendingCharacters}getData(){return this.data+Ra(this.pendingCharacters)}},qs,jc;function SE(){jc=(async()=>{try{let e=new yn([new V(3)]).slice(1,2).stream().getReader(),n=0,r=await e.read();for(;!r.done;)n+=r.value.length,r=await e.read();qs=n==1}catch{qs=!1}})()}var Nt=class extends Et{constructor(e){super(),U.assign(this,{sourceBlob:e,size:e.size}),jc||SE()}createReadable(e){let n=this,{sourceBlob:r,size:i}=n,{offset:s=0,size:a=i-s}=e||{};return!s&&a>=i?$t(r.stream()):qs?$t(r.slice(s,s+a).stream()):super.createReadable(e)}async readUint8Array(e,n){let r=this,i=e+n,o=await(!e&&i>=r.size?r.sourceBlob:r.sourceBlob.slice(e,i)).arrayBuffer();return o.byteLength>n&&(o=o.slice(e,i)),new V(o)}},js=class extends Nn{constructor(e){super();let n=this,r=new we;U.defineProperty(n,Bi,{get(){return r.writable}}),n.contentType=e,n.blobPromise=Jt(r.readable,e),n.blobPromise.catch(()=>{})}getData(){return this.blobPromise}},Gt=class extends Nt{constructor(e){super(new yn([e],{type:hE}))}},$a=class extends js{constructor(e){super(),U.assign(this,{encoding:e,utf8:!e||e.toLowerCase()=="utf-8"})}async getData(){let{encoding:e,utf8:n}=this,r=await super.getData();return r.text&&n?r.text():uE(new V(await r.arrayBuffer()),e)}},$s=class extends Et{constructor(e,n){super(),$c(this,e,n)}async init(){await Jc(this,zr,Ja),super.init()}createReadable(e){let n=this,{useRangeHeader:r,forceRangeRequests:i,size:s}=n;if((r||i)&&s!==m){let{offset:a=0,size:o=s-a}=e||{};if(o>0&&a<s)return IE(n,a,W.min(o,s-a))}return super.createReadable(e)}readUint8Array(e,n){return Qc(this,e,n,zr,Ja)}},Js=class extends Et{constructor(e,n){super(),$c(this,e,n)}async init(){await Jc(this,Qs,Qa),super.init()}readUint8Array(e,n){return Qc(this,e,n,Qs,Qa)}};function $c(t,e,n){let{preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:o=!0,maximumRangeSize:c=yE,fetch:l}=n;n=U.assign({},n),delete n.preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.combineSizeEocd,delete n.checkResourceChanges,delete n.maximumRangeSize,delete n.useXHR,delete n.fetch,U.assign(t,{url:e,options:n,preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:o,maximumRangeSize:c,fetch:l})}async function Jc(t,e,n){let{url:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o}=t;if(DE(r)&&(s||a)&&(typeof i==Dt||i)){let c=await e(es,t,ki(t,o?-Ie:void 0)),l=c.headers.get(wE);if(!a&&(!l||l.toLowerCase()!=qc))throw new I(At);{if(o){let f=new V(await c.arrayBuffer());c.status==206&&f.length==Ie&&(t.eocdCache=f)}Hi(t,c);let u=el(c);u===m?await eo(t,e,n):t.size=u}}else await eo(t,e,n)}async function Qc(t,e,n,r,i){let{useRangeHeader:s,forceRangeRequests:a,eocdCache:o,size:c,options:l}=t;if(s||a){if(o&&e==c-Ie&&n==Ie)return o;if(e>=c||n===0)return fe;{e+n>c&&(n=c-e);let u=await r(es,t,ki(t,e,n));if(u.status!=206)throw new I(At);let f=u.headers.get(vi);if(f){let h=pe(f.trim().split(/[\s-]+/)[1]);if(!pe.isNaN(h)&&h!=e)throw new I(At)}nl(t,u),Hi(t,u);let d=new V(await u.arrayBuffer());if(d.length!=n)throw new I(At);return d}}else{let{data:u}=t;return u||await i(t,l),t.data.subarray(e,e+n)}}function IE(t,e,n){let r,i=e,s=0,a=n;return new it({start(){return o()},async pull(l){r||await o();let{value:u,done:f}=await r.read();if(f)throw new I(At);let d=u.length>s?u.subarray(0,s):u;s-=d.length,a-=d.length,d.length&&l.enqueue(d),s||(await c(),a||l.close())},cancel(l){return r&&r.cancel(l)}});async function o(){let l=W.min(t.maximumRangeSize,a),u=await zr(es,t,ki(t,i,l));if(u.status!=206)throw new I(At);let f=u.headers.get(vi);if(f){let d=pe(f.trim().split(/[\s-]+/)[1]);if(!pe.isNaN(d)&&d!=i)throw new I(At)}nl(t,u),Hi(t,u),i+=l,s=l,r=u.body.getReader()}async function c(){let l=r;r=m,await l.cancel()}}function el(t){let e=t.headers.get(vi);if(e){let n=e.trim().split(/\s*\/\s*/)[1];if(n&&n!="*"){let r=pe(n);if(!pe.isNaN(r))return r}}}function tl({headers:t}){return{etag:t.get(TE)||m,lastModified:t.get(pE)||m}}function Hi(t,e){let{checkResourceChanges:n,resourceValidators:r}=t;n&&!r&&e.status==206&&(t.resourceValidators=tl(e))}function nl(t,e){let{checkResourceChanges:n,resourceValidators:r,size:i}=t;if(n){let s=el(e);if(s!==m&&i!==m&&s!=i)throw new I(Za);if(r){let a=tl(e);if(U.entries(r).some(([c,l])=>l!==m&&a[c]!==m&&l!=a[c]))throw new I(Za)}}}function ki(t,e=0,n=1){return U.assign({},zi(t),{[_E]:qc+"="+(e<0?e:e+"-"+(e+n-1))})}function zi({options:t}){let{headers:e}=t;if(e)return Symbol.iterator in e?U.fromEntries(e):e}async function Ja(t){await rl(t,zr)}async function Qa(t){await rl(t,Qs)}async function rl(t,e){let n=await e(es,t,zi(t));t.data=new V(await n.arrayBuffer()),t.size=t.data.length}async function eo(t,e,n){if(t.preventHeadRequest)await n(t,t.options);else{let r=await e(RE,t,zi(t)),i=r.headers.get(gE);i&&!r.headers.get(mE)?t.size=pe(i):await n(t,t.options)}}async function zr(t,{fetch:e=fetch,options:n,url:r},i){let s=await e(r,U.assign({},n,{method:t,headers:i}));if(s.status<400)return s;throw s.status==416?new I(At):new I(Kc+(s.statusText||s.status))}function Qs(t,{url:e},n){return new ge((r,i)=>{let s=new XMLHttpRequest;if(s.addEventListener("load",()=>{if(s.status<400){let a=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(o=>{let c=o.trim().split(/\s*:\s*/);c[0]=c[0].trim().replace(/^[a-z]|-[a-z]/g,l=>l.toUpperCase()),a.push(c)}),r({status:s.status,arrayBuffer:()=>s.response,headers:new gt(a)})}else i(s.status==416?new I(At):new I(Kc+(s.statusText||s.status)))},!1),s.addEventListener("error",a=>i(a.detail?a.detail.error:new I("Network error")),!1),s.open(t,e),n)for(let a of U.entries(n))s.setRequestHeader(a[0],a[1]);s.responseType="arraybuffer",s.send()})}var ei=class extends Et{constructor(e,n={}){super(),U.assign(this,{url:e,reader:n.useXHR&&!n.fetch?new Js(e,n):new $s(e,n)})}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,n){return this.reader.readUint8Array(e,n)}},to=class extends ei{constructor(e,n={}){super(e,U.assign({},n,{useRangeHeader:!0}))}},Qt=class extends Et{constructor(e){super(),e=new V(e.buffer,e.byteOffset,e.byteLength),U.assign(this,{array:e,size:e.length})}readUint8Array(e,n){return this.array.slice(e,e+n)}},en=class extends kr{constructor(e){super(),this.defaultBufferSize=e||AE}init(e=0){U.assign(this,{offset:0,array:new V(e>0?e:this.defaultBufferSize)}),super.init()}writeUint8Array(e){let n=this,r=n.offset+e.length;if(r>n.array.length){let i=n.array.length?n.array.length*2:n.defaultBufferSize;for(;i<r;)i*=2;let s=n.array;n.array=new V(i),n.array.set(s)}n.array.set(e,n.offset),n.offset+=e.length}getData(){return this.offset===this.array.length?this.array:this.array.slice(0,this.offset)}},ti=class extends Et{constructor(e){super(),this.readers=e}async init(){let e=this;e.lastDiskNumber=0;let n=e.readers=await ge.all(e.readers.map(NE));e.diskOffsets=n.map(r=>{let i=e.size;return e.size+=r.size,i}),super.init()}getDiskOffset(e){let{diskOffsets:n,size:r}=this,i=n[e];return i===m?r:i}async readUint8Array(e,n){let r=this,{readers:i}=this,s,a=0,o=e;for(;i[a]&&o>=i[a].size;)o-=i[a].size,a++;let c=i[a];if(c){let l=c.size;if(o+n<=l)s=await _e(c,o,n);else{let u=l-o,f=await _e(c,o,u),d=await r.readUint8Array(e+u,n-u);s=Ht(f,d)}}else s=fe;return r.lastDiskNumber=W.max(a,r.lastDiskNumber),s}},ni=class extends Nn{constructor(e,n=4294967295){super();let r=this;U.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:n,availableSize:n});let i,s,a,o=new at({async write(f){if(f===Ka){a&&await l();return}let{availableSize:d}=r;if(a)f.length>=d?(await c(f.subarray(0,d)),await l(),f.length>d&&await this.write(f.subarray(d))):await c(f);else{let{value:h,done:g}=await e.next();if(g&&!h)throw new I(dE);i=h,i.size=0,i.maxSize&&(r.maxSize=i.maxSize),r.availableSize=r.maxSize,await Be(i),s=h.writable,a=s.getWriter(),await this.write(f)}},async close(){a&&(await a.ready,await u())},async abort(f){a&&await a.abort(f)}});U.defineProperty(r,Bi,{get(){return o}});async function c(f){let d=f.length;d&&(await a.ready,await a.write(f),i.size+=d,r.availableSize-=d)}async function l(){await u(),r.diskOffset+=i.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function u(){await a.close()}}async closeDisk(){let e=this.writable.getWriter();try{await e.ready,await e.write(Ka)}finally{e.releaseLock()}}},tn=class{constructor(e){return je.isArray(e)&&(e=new ti(e)),(e instanceof it||typeof e.getReader==De)&&(e={readable:$t(e)}),e}},Gr=class{constructor(e){return e.writable===m&&typeof e.next==De&&(e=new ni(e)),(e instanceof at||typeof e.getWriter==De)&&(e={writable:Fd(e)}),e.size===m&&(e.size=0),e}};function sl(t){return!!(t&&t.getData)}function DE(t){let{baseURI:e}=sn(),{protocol:n}=new Dr(t,e);return n=="http:"||n=="https:"}async function Be(t,e){if(t.init&&!t.initialized)await t.init(e);else return ge.resolve()}async function NE(t){return t=new tn(t),await Be(t),(t.size===m||!t.readUint8Array)&&(t=new Nt(await Jt(t.readable)),await Be(t)),t}function _e(t,e,n){return t.readUint8Array(e,n)}function il(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?Et.prototype.createReadable.call(t,e):t.readable}var al="filename",ol="rawFilename",Gi="comment",cl="rawComment",Yi="uncompressedSize",ll="compressedSize",fl="offset",ul="diskNumberStart",Yr="lastModDate",Vr="rawLastModDate",Vi="lastAccessDate",dl="rawLastAccessDate",Wi="creationDate",El="rawCreationDate",hl="internalFileAttributes",gl="externalFileAttributes",Xi="internalFileAttribute",Zi="externalFileAttribute",ml="msdosAttributesRaw",wl="msdosAttributes",_l="msDosCompatible",Ki="zip64",Tl="encrypted",pl="version",Rl="versionMadeBy",Al="zipCrypto",An="directory",yl="executable",bE="symlink",Sl="compressionMethod",ri="signature",OE="crc32",qi="extraField",FE="extraFieldInfoZip",xE="extraFieldUnix",PE="extraFieldUnixType1",CE="extraFieldPkwareUnix",Il="uid",Dl="gid",Nl="unixMode",bl="setuid",Ol="setgid",Fl="sticky",LE="bitFlag",UE="rawBitFlag",ME="filenameLength",vE="extraFieldLength",BE="unixExternalUpper",HE="filenameUTF8",kE="commentUTF8",zE="rawExtraField",GE="extraFieldZip64",YE="extraFieldUnicodePath",VE="extraFieldUnicodeComment",WE="extraFieldAES",XE="extraFieldNTFS",ZE="extraFieldExtendedTimestamp",KE="extraFieldUSDZ",qE=[al,ol,Yi,ll,Yr,Vr,Gi,cl,Vi,dl,Wi,El,fl,ul,hl,gl,Xi,Zi,ml,wl,_l,Ki,Tl,pl,Rl,Al,An,yl,bE,Sl,ri,OE,qi,xE,FE,PE,CE,Il,Dl,Nl,BE,bl,Ol,Fl,LE,UE,ME,vE,HE,kE,zE,GE,YE,VE,WE,XE,ZE,KE],bn=class{constructor(e){qE.forEach(n=>this[n]=e[n])}},kn="File format is not recognized",xl="End of central directory not found",Pl="End of Zip64 central directory locator not found",Cl="Central directory header not found",Ll="Local file header not found",Ul="Zip64 extra field not found",Ml="File contains encrypted entry",si="Encryption method not supported",ii="Compression method not supported",ai="Split zip file",vl="Overlapping entry found",Bl="Entry data out of bounds",Hl="Ambiguous archive",kl="Encrypted central directory is not supported",zl="Unsafe filename",Gl="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",Yl="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Vl="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Wl="64-bit value exceeds Number.MAX_SAFE_INTEGER",Xl="unsorted central directory",Zl="unknown version needed to extract",Kl="compressed patched data",ji="malformed extra field",ql="unknown zip64 extensible data",oi="wrapped entries count",ci="appended data",li="prepended data",jl="trailing central directory data",$l="duplicate filename",zn="mismatched zip64 end of central directory record",Jl="mismatched local file header (general purpose bit flag)",Ql="mismatched local file header (compression method)",ef="mismatched local file header (crc32 or sizes)",jE=63,$E=/^[a-zA-Z]:/,no="utf-8",JE="UTF8",ro="cp437",so=br|Or|Fr,tf=1,QE=[[Yi,me],[ll,me],[fl,me],[ul,X]],io={[X]:{getValue:j,bytes:4},[me]:{getValue:Ge,bytes:8}},eh=Ce(pe.MAX_SAFE_INTEGER),th=64,nh=1032,ao=0,$i=1,Wr=2,On=class{constructor(e,n={}){U.assign(this,{reader:new tn(e),options:n,readRanges:new gt})}async*getEntriesGenerator(e={}){let n=this,{reader:r}=n;if(await Be(r),(r.size===m||!r.readUint8Array)&&(r=new Nt(await Jt(r.readable)),await Be(r)),r.size<Ie)throw new I(kn);let i=n.warnings=[],s=Ji(e,n.options),a=s==rn,o=s!=zt,c=of(Te(n,e,nc),s),l=mh(Te(n,e,Wu),s),u=Te(n,e,Xu),{endOfDirectoryInfo:f,endOfDirectoryReachingEndCount:d}=await cf(r,o,c);if(!f)throw await uh(r)?new I(ai):new I(xl);o&&d>1&&yr("multiple end of central directory records");let h=K(f),g=j(h,12),E=j(h,16),_=f.offset,R=ie(h,20),T=_+Ie+R,w=r.size-T;w>c&&yr(ci),w>0&&tt(i,ci);let p=ie(h,4),S=r.lastDiskNumber||0,N=ie(h,6),y=ie(h,10),F=0,x,v,M,B=et,G,z=E==me||g==me||y==X||N==X;if(E!=me&&N!=X&&(E+=dn(r,N)),z){let ue=f.offset>=Ut?await _e(r,f.offset-Ut,Ut):fe,H=K(ue);if(ue.length==Ut&&j(H,0)==Ai){E=dn(r,j(H,4))+Ge(H,8);let ye=await _e(r,E,et),Ee=K(ye),He=f.offset-Ut-et;if((ye.length<et||j(Ee,0)!=ys)&&E!=He&&He>=0){let be=E;E=He,E>be&&(F=E-be),ye=await _e(r,E,et),Ee=K(ye)}if(ye.length<et||j(Ee,0)!=ys)throw new I(Pl);if(v=!0,M=Ge(Ee,4)>et-12,M){let be=W.min(Ge(Ee,4)-(et-12),r.size-E-et);if(be>0){B+=be;let Xe=await _e(r,E+et,be);G=ih(Xe)}}p==X?p=j(Ee,16):p!=j(Ee,16)&<(a,i,zn),N==X?N=j(Ee,20):N!=j(Ee,20)&<(a,i,zn),y==X?y=Ge(Ee,32):y!=Ge(Ee,32)&<(a,i,zn),g==me?g=Ge(Ee,40):g!=Ge(Ee,40)&<(a,i,zn),E=dn(r,N)+Ge(Ee,48)+F}}let Y=g,O=f.offset-(v?B+Ut:0);if(E>=r.size&&(F=r.size-E-g-Ie,E=r.size-g-Ie),S!=p)throw new I(ai);if(E<0)throw new I(kn);let D=0,C=await _e(r,E,g),P=K(C);if(g){if(C.length<4)throw new I(kn);let ue=O-g;if(E!=ue&&N==p){let ye=!(j(P,D)==Mt||!!(G&&G.compressedSize)||fs(P));if(!ye&&ue>=0&&ue+4<=r.size){let Ee=await _e(r,ue,4);ye=j(K(Ee),0)==Mt}if(ye){let Ee=E;E=ue,E>Ee&&(F+=E-Ee),C=await _e(r,E,g),P=K(C)}}}let Z=O-E;if(g!=Z&&Z>=0&&N==p&&(g=Z,C=await _e(r,E,g),P=K(C)),E<0||E>=r.size)throw new I(kn);n.directoryOffset=E,n.directoryLength=Y;let L=mo(n,e,Zu),q,ne;if(L&&y&&C.length>=4&&j(P,0)!=Mt&&(M||fs(P))){let ue=sh(G,Y,C.length);ne=C.subarray(ue),C=await L(C.subarray(0,ue),G),P=K(C),Y=C.length,q=!0}G&&!q&&(C.length<4||j(P,0)==Mt)&&tt(i,ql),x=E;let re=Te(n,e,wu),$=Te(n,e,_u),ce=new Ir,ae,Ae=-1,Ne=!a&&!v;!y&&Ne&&(y=oo(P,C,D),y&&tt(i,oi));for(let ue=0;ue<y;ue++){let H=new ui(r,n.options);if(D+Sn>C.length||j(P,D)!=Mt)throw ue==0&&!q&&(M||fs(P))?new I(kl):new I(Cl);nf(H,P,D+6);let ye=!!H.bitFlag.languageEncodingFlag,Ee=D+Sn,He=Ee+H.filenameLength,be=He+H.extraFieldLength,Xe=ie(P,D+4),wt=Xe>>8==0,Vt=Xe>>8==3,Le=C.subarray(Ee,He),ot=ie(P,D+32),Se=be+ot,ct=C.subarray(be,Se),Wt=ye,Ze=ye,an=j(P,D+38),$e=an&rt,Ot={readOnly:!!($e&Ss),hidden:!!($e&Is),system:!!($e&Ds),directory:!!($e&xr),archive:!!($e&Ns)},Ft=j(P,D+42),ze=mo(n,e,Tu)||Ar,Ke=Wt?no:re||ro,Xt=Ze?no:$||ro,Ue=ze(Le,Ke,rc);if(Ue===m&&(Ue=Ar(Le,Ke)),u){let Me=u(Ue);Me!==m&&(Ue=Me)}if(wh(Ue,l)){let Me=new I(zl);throw Me.filename=Ue,Me}let xt=ze(ct,Xt,sc);xt===m&&(xt=Ar(ct,Xt)),U.assign(H,{index:ue,decryptedDirectory:q,versionMadeBy:Xe,msDosCompatible:wt,zip64:!1,compressedSize:0,uncompressedSize:0,commentLength:ot,offset:Ft,diskNumberStart:ie(P,D+34),internalFileAttributes:ie(P,D+36),externalFileAttributes:an,msdosAttributesRaw:$e,msdosAttributes:Ot,rawFilename:Le,filenameUTF8:Wt,commentUTF8:Ze,rawExtraField:C.subarray(He,be),rawComment:ct,filename:Ue,comment:xt}),rf(H,H,P,D+6)&&tt(i,ji,Ue),H.offset+=F;let Pt=dn(r,H.diskNumberStart)+H.offset;x=W.min(Pt,x),Pt<Ae&&tt(i,Xl,Ue),Ae=Pt,(H.version&rt)>jE&&tt(i,Zl,Ue),(H.rawBitFlag&Ia)==Ia&&tt(i,Kl,Ue),ce.has(H.filename)&&(ae=!0),ce.add(H.filename);let Fe=H.externalFileAttributes>>16&X;H.unixMode===m&&(Fe&(_r|Vn|Yn))!=0&&(H.unixMode=Fe);let Er=!!(H.unixMode&bs),os=!!(H.unixMode&Os),Oe=!!(H.unixMode&Fs),A=((H.unixMode===m?Fe:H.unixMode)&hn)==Xo,b=!A&&(H.unixMode!==m?(H.unixMode&Vn)!=0:Vt&&(Fe&Vn)!=0),k=H.unixMode!==m&&(H.unixMode&hn)==Yn,se=(Fe&hn)==Yn;U.assign(H,{setuid:Er,setgid:os,sticky:Oe,symlink:A,unixExternalUpper:Fe,internalFileAttribute:H.internalFileAttributes,externalFileAttribute:H.externalFileAttributes,executable:b,directory:k||se||wt&&Ot.directory||H.filename.endsWith(gn),zipCrypto:H.encrypted&&!H.extraFieldAES});let le=new bn(H);if(le.getData=(Me,on)=>H.getData(Me,le,n.readRanges,on),le.arrayBuffer=async Me=>{let on=new we,Ct=Jt(on.readable).then(cn=>cn.arrayBuffer());return Ct.catch(()=>{}),await H.getData(on,le,n.readRanges,Me),Ct},D=Se,ue==y-1&&Ne){let Me=oo(P,C,D);Me&&(y+=Me,tt(i,oi))}let{onprogress:Je}=e;if(Je)try{await Je(ue+1,y,new bn(H))}catch{}yield le}let he=D,Q=us(C.subarray(D))||(q?us(ne):m);if(!Q&&!q){let ue=E+D,H=W.min(O-ue,6+X);H>=6&&(Q=us(await _e(r,ue,H)))}Q&&(n.digitalSignature=Q,he=D+6+Q.length),(D!=Y&&he!=Y||!q&&D!=g&&he!=g)&<(a,i,jl),ae&<(a,i,$l);let Re=Te(n,e,pu),oe=Te(n,e,Ru),ee=(a||Re)&&y&&x==Bt&&await dh(r)?Bt:0;return a&&(F||y&&x>ee)&&yr(li),(F||y&&x>Bt)&&tt(i,li),Re&&(n.prependedData=x>ee?await _e(r,ee,x-ee):fe),n.comment=R?await _e(r,_+Ie,R):fe,oe&&(n.appendedData=T<r.size?await _e(r,T,r.size-T):fe),!0}async getEntries(e={}){let n=[];for await(let r of this.getEntriesGenerator(e))n.push(r);return n}async close(){let{reader:e}=this;!e.readUint8Array&&e.readable&&!e.readable.locked&&await e.readable.cancel()}},fi=class{constructor(e={}){let{readable:n,writable:r}=new we,i=new On(n,e).getEntriesGenerator();this.readable=new it({async pull(s){let{done:a,value:o}=await i.next();if(a)return s.close();let c={...o,readable:(function(){let{readable:l,writable:u}=new we;if(o.getData)return f(),l;async function f(){try{await o.getData(u)}catch(d){try{await u.abort(d)}catch{}}}})()};delete c.getData,s.enqueue(c)}}),this.writable=r}};async function rh(t,e={}){if(t=new tn(t),await Be(t),(t.size===m||!t.readUint8Array)&&(t=new Nt(await Jt(t.readable)),await Be(t)),t.size<Ie)return!1;let n=Ji(e,{}),r=n!=zt,i=of(e[nc],n),{endOfDirectoryInfo:s,endOfDirectoryReachingEndCount:a}=await cf(t,r,i);if(!s||n==rn&&a>1)return!1;let o=ie(K(s),20),c=s.offset+Ie+o;return t.size-c<=i}var ui=class{constructor(e,n){U.assign(this,{reader:e,options:n})}async getData(e,n,r,i={}){let s=this,a=sn(),{reader:o,index:c,offset:l,diskNumberStart:u,extraFieldAES:f,extraFieldZip64:d,compressionMethod:h,bitFlag:g,rawBitFlag:E,crc32:_,rawLastModDate:R,uncompressedSize:T,compressedSize:w}=s,{dataDescriptor:p}=g,S=n.localDirectory={},N=n.warnings=[],y=dn(o,u)+l,F=await _e(o,y,Ve),x=K(F),v=Te(s,i,Zo),M=Te(s,i,Ko),B=Te(s,i,qo);if(ac(v,M),v=v&&v.length&&v,M=M&&M.length&&M,f&&f.originalCompressionMethod!=qr)throw new I(ii);if(F.length<Ve||j(x,0)!=Co)throw new I(Ll);nf(S,x,4);let{extraFieldLength:G,filenameLength:z}=S,Y=S.dataOffset=y+Ve+z+G,O=Te(s,i,Du),D=Ji(i,s.options),C=hh(O,D),P=gh(O,D),Z=fe;if(P&&(z||G)){let Se=await _e(o,y+Ve,z+G);Z=Se.subarray(0,z),S.rawExtraField=Se.subarray(z)}else S.rawExtraField=G?await _e(o,y+Ve+z,G):fe;P&&(S.rawFilename=Z),rf(s,S,x,4,!0)&&tt(N,ji),Th(s,S,Z,P,C?m:N);let{lastAccessDate:L,creationDate:q,uid:ne,gid:re}=S;L&&(n.lastAccessDate=L),q&&(n.creationDate=q),ne!==m&&n.uid===m&&(n.uid=ne),re!==m&&n.gid===m&&(n.gid=re);let $=s.encrypted&&S.encrypted&&!B,ce=$&&!f;if(B||(n.zipCrypto=ce),$&&(S.rawBitFlag&Da)==Da)throw new I(si);let ae=B?m:Pc(h);if(h!=It&&h!=Pn&&h!=Zn&&!ae&&!B)throw new I(ii);if($){if(!ce&&(f.strength<1||f.strength>3))throw new I(si);if(!v&&!M)throw new I(Ml)}if(Y+w>o.size)throw new I(Bl);let Ae=w,Ne=$t(o.createReadable({offset:Y,size:Ae})),he=ic(Te(s,i,jo)),Q=Te(s,i,Au),Re=Te(s,i,Su),oe=Te(s,i,yu);oe&&(Re=!0);let{onstart:ee,onprogress:ue,onend:H}=i,ye=h!=It&&!B,Ee=B?w:T,He=h==Zn,be=Te(s,i,Jo);He&&(be=!1);let Xe=Te(s,i,bu),wt=(Xe===m?Te(s,i,Nu):Xe)&&!B&&(!$||ce||f&&f.vendorVersion==tf),Vt={options:{codecType:zc,password:v,rawPassword:M,zipCrypto:ce,encryptionStrength:f&&f.strength,checkCrc32:wt,checkAuthenticationCode:Te(s,i,Ou),passwordVerification:ce&&(p?R>>>8&rt:_>>>24&rt),outputSize:Ee,crc32:_,compressed:ye,encrypted:$,useWebWorkers:Te(s,i,$o),useCompressionStream:be,transferStreams:Te(s,i,Qo),deflate64:He,format:ae?ae.format:m,codecURI:ae?ae.codecURI:m,compressionMethod:h,rawBitFlag:E,checkPasswordOnly:Q},config:a,streamOptions:{signal:he,size:Ae,onstart:ee,onprogress:ue,onend:H}};Re&&await fh({reader:o,fileEntry:n,index:c,offset:y,crc32:_,compressedSize:w,uncompressedSize:T,dataOffset:Y,dataDescriptor:p||S.bitFlag.dataDescriptor,extraFieldZip64:d||S.extraFieldZip64,readRanges:r});let Le,ot;try{if(!oe){Q&&(e=new at),e=new Gr(e),await Be(e,Eh(Ee,w,ye)),{writable:Le}=e;let{outputSize:Se}=await Vc({readable:Ne,writable:Le},Vt);if(e.size+=Se,Se!=Ee)throw new I(Qr)}}catch(Se){if(Se.outputSize!==m&&(e.size+=Se.outputSize),!Q||Se.message!=Fi)throw ot=Se,Se}finally{if(!(!sl(e)&&Te(s,i,ec))&&Le&&!Le.locked){let ct=Le.getWriter();if(ot)try{await ct.abort(ot)}catch{}else await ct.close()}}return Q||oe?m:e.getData?e.getData():Le}};function fs(t){let e=W.min(t.byteLength,1024)-3;for(let n=0;n<e;n++)if(j(t,n)==Qf)return!0;return!1}function oo(t,e,n){let r=0;for(;n+Sn<=e.length&&j(t,n)==Mt;)n+=Sn+ie(t,n+28)+ie(t,n+30)+ie(t,n+32),r++;return r%(X+1)?0:r}function us(t){if(t.length>=6){let e=K(t);if(j(e,0)==Uo){let n=ie(e,4);if(6+n<=t.length)return t.subarray(6,6+n)}}}function sh(t,e,n){let r=t&&t.compressedSize?t.compressedSize:e;return r>0&&r<=n?r:n}function ih(t){let e={rawExtensibleData:t};if(t.length>=28){let n=K(t),r=ie(n,26);U.assign(e,{compressionMethod:ie(n,0),compressedSize:Ge(n,2),uncompressedSize:Ge(n,10),encryptionAlgorithm:ie(n,18),bitLength:ie(n,20),flags:ie(n,22),hashAlgorithm:ie(n,24),hashData:t.subarray(28,28+r)})}return e}function nf(t,e,n){let r=t.rawBitFlag=ie(e,n+2),i=(r&br)==br,s=j(e,n+6);U.assign(t,{encrypted:i,version:ie(e,n),bitFlag:{level:(r&Wo)>>1,dataDescriptor:(r&Or)==Or,languageEncodingFlag:(r&Fr)==Fr},rawLastModDate:s,lastModDate:ph(s),filenameLength:ie(e,n+22),extraFieldLength:ie(e,n+24)})}function rf(t,e,n,r,i){let{rawExtraField:s}=e,a=e.extraField=new gt,o=K(s),c=0,l=!1;try{for(;c<s.length;){let N=ie(o,c),y=ie(o,c+2);a.set(N,{type:N,data:s.slice(c+4,c+4+y)}),c+=4+y}}catch{l=!0}c>s.length&&(l=!0);let u=ie(n,r+4);U.assign(e,{signature:j(n,r+Kn),crc32:j(n,r+Kn),compressedSize:j(n,r+ar),uncompressedSize:j(n,r+or)});let f=a.get(jr);f&&(ah(f,e),e.extraFieldZip64=f);let d=a.get(eu);d&&(co(d,al,ol,e,t),e.extraFieldUnicodePath=d);let h=a.get(tu);h&&(co(h,Gi,cl,e,t),e.extraFieldUnicodeComment=h);let g=a.get(Ho);g&&g.data.length>=7?(oh(g,e,u),e.extraFieldAES=g):e.compressionMethod=u;let E=a.get(ru);E&&(lo(E,e),e.extraFieldPkwareUnix=E);let _=a.get(nu);_&&(lo(_,e),e.extraFieldUnixType1=_);let R=a.get(ko);R&&(ch(R,e),e.extraFieldNTFS=R);let T=a.get(Vo),w;if(T&&(w=fo(T,e,!1),e.extraFieldUnix=T),!w){let N=a.get(Yo);N&&(fo(N,e,!0),e.extraFieldInfoZip=N)}let p=a.get(yi);p&&(lh(p,e,i),e.extraFieldExtendedTimestamp=p);let S=a.get(Go);return S&&(e.extraFieldUSDZ=S),l}function ah(t,e){e.zip64=!0;let n=K(t.data),r=QE.filter(([s,a])=>e[s]==a),i=r.reduce((s,[,a])=>s+io[a].bytes,0);if(t.data.length<i)throw new I(Ul);for(let s=0,a=0;s<r.length;s++){let[o,c]=r[s],l=io[c];e[o]=t[o]=l.getValue(n,a),a+=l.bytes}}function co(t,e,n,r,i){if(t.data.length<5){t.valid=!1;return}let s=K(t.data),a=new qt;a.append(i[n]);let o=K(new V(4));o.setUint32(0,a.get(),!0);let c=j(s,1),l=kt(s,0);U.assign(t,{version:l,[e]:Ar(t.data.subarray(5)),valid:l==1&&!i.bitFlag.languageEncodingFlag&&c==j(o,0)}),t.valid&&(r[e]=t[e],r[e+JE]=!0)}function oh(t,e,n){let r=K(t.data),i=kt(r,4);U.assign(t,{vendorVersion:kt(r,0),vendorId:kt(r,2),strength:i,originalCompressionMethod:n,compressionMethod:ie(r,5)}),e.compressionMethod=t.compressionMethod,t.vendorVersion!=tf&&(e.crc32=m)}function ch(t,e){let n=K(t.data),r=4,i;try{for(;r<t.data.length&&!i;){let s=ie(n,r),a=ie(n,r+2);s==zo&&(i=t.data.slice(r+4,r+4+a)),r+=4+a}}catch{}if(i&&i.length==24){let s=K(i),a=s.getBigUint64(0,!0),o=s.getBigUint64(8,!0),c=s.getBigUint64(16,!0);U.assign(t,{rawLastModDate:a,rawLastAccessDate:o,rawCreationDate:c});let l=ds(a),u=ds(o),f=ds(c),d={lastModDate:l,lastAccessDate:u,creationDate:f};U.assign(t,d),U.assign(e,d,{rawLastAccessDate:o,rawCreationDate:c})}}function lo(t,e){if(t.data.length<8)return;let n=K(t.data),r=new St((j(n,0)|0)*1e3),i=new St((j(n,4)|0)*1e3),s={lastAccessDate:r,lastModDate:i};t.data.length>=12&&(s.uid=ie(n,8),s.gid=ie(n,10)),U.assign(t,s),U.assign(e,s)}function fo(t,e,n){try{let r=K(t.data),i,s;if(n){let a=0,o=kt(r,a++),c=kt(r,a++);i=uo(t.data.subarray(a,a+c)),a+=c;let l=kt(r,a++);s=uo(t.data.subarray(a,a+l)),U.assign(t,{version:o,uid:i,gid:s})}else t.data.length>=4&&(i=ie(r,0),s=ie(r,2),U.assign(t,{uid:i,gid:s}));return i!==m&&(e.uid=i),s!==m&&(e.gid=s),i!==m||s!==m}catch{}}function uo(t){let e=new V(4);return e.set(t,0),new nn(e.buffer,e.byteOffset,4).getUint32(0,!0)}function lh(t,e,n){if(!t.data.length)return;let r=K(t.data),i=kt(r,0),s=[],a=[];n?((i&1)==1&&(s.push(Yr),a.push(Vr)),(i&2)==2&&(s.push(Vi),a.push(dl)),(i&4)==4&&(s.push(Wi),a.push(El))):t.data.length>=5&&(s.push(Yr),a.push(Vr));let o=1;s.forEach((c,l)=>{if(t.data.length>=o+4){let u=j(r,o);e[c]=t[c]=new St((u|0)*1e3);let f=a[l];t[f]=u}o+=4})}async function fh({reader:t,fileEntry:e,index:n,offset:r,crc32:i,compressedSize:s,uncompressedSize:a,dataOffset:o,dataDescriptor:c,extraFieldZip64:l,readRanges:u}){let f=0;if(c&&(l?f=Bo:f=vo),f){let h=await _e(t,o+s,f+Zt),g=K(h),E=h.length==f+Zt&&j(g,0)==Lo;if(E){let _=Eo(g,Zt,l);(e.encrypted&&!e.zipCrypto||_.crc32==i)&&_.compressedSize==s&&_.uncompressedSize==a?f+=Zt:E=!1}if(h.length>=f){let _=Eo(g,E?Zt:0,l);_.signature=E,e.localDirectory.dataDescriptor=_}}let d={start:r,end:o+s+f,fileEntry:e};for(let[h,g]of u)if(h!=n&&d.start<g.end&&g.start<d.end){let E=new I(vl);throw E.overlappingEntry=g.fileEntry,E}u.set(n,d)}function Eo(t,e,n){let r=j(t,e),i,s;return n?(i=Ge(t,e+4),s=Ge(t,e+12)):(i=j(t,e+4),s=j(t,e+8)),{crc32:r,compressedSize:i,uncompressedSize:s}}function dn(t,e){return t.getDiskOffset?t.getDiskOffset(e):0}async function uh(t){return await sf(t)==ir}async function dh(t){let e=await sf(t);return e==ir||e==Jf}async function sf(t){let e=await _e(t,0,Bt);return j(K(e))}function af(t){return t===rn||t===Si||t===zt}function Eh(t,e,n){return W.min(t,n?e*nh:e)}function Ji(t,e){return ho(t,ho(e,Si))}function ho(t,e){let n=t[Vu];if(n!==m){if(!af(n))throw new I(Gl);return n}let r=t[Iu];return r===m?e:r?rn:e==zt?zt:Si}function hh(t,e){return t===m?e!=zt:!!t}function gh(t,e){return t===m?e==rn:!!t}function mh(t,e){if(t===m)return e;if(!af(t))throw new I(Yl);return t}function wh(t,e){if(e==zt)return!1;let n=t.split("/");return n.length>1&&n[n.length-1]===""&&n.pop(),n.includes("..")||t.startsWith("/")||t.startsWith("\\\\")||$E.test(t)?!0:e==rn&&(n.includes(".")||n.includes(""))}function of(t,e){if(t!==m){let n=$r(t);if(typeof n!=gu||pe.isNaN(n)||n<0)throw new I(Vl);return n}return e==rn?0:e==zt?1/0:X}async function cf(t,e,n){let{size:r}=t,i=W.min(r,Ie+X),s={count:th},a,o,c=0;for await(let[l,u,f,d,h]of lf(t,i)){let g=ie(l,d+20);if(h+Ie+g==r){let E=await ff(t,l,u,d,h,r,s);if(E==Wr){if(a||(a=di(f,d,h)),c++,!e||c>1)break}else E==$i&&!o&&(o=di(f,d,h))}}return a||(a=o),a||(a=await _h(t,n,s)),{endOfDirectoryInfo:a,endOfDirectoryReachingEndCount:c}}async function _h(t,e,n){let{size:r}=t,i=W.min(r,e==1/0?r:Ie+X+e),s,a;for await(let[o,c,l,u,f]of lf(t,i)){let d=di(l,u,f);s||(s=d);let h=await ff(t,o,c,u,f,r,n);if(h==Wr)return d;h==$i&&!a&&(a=d)}return a||s}async function*lf(t,e){let n=t.size-e,r=await _e(t,n,e),i=K(r);for(let s=r.length-Ie;s>=0;s--)j(i,s)==Mo&&(yield[i,n,r,s,n+s])}function di(t,e,n){return{offset:n,buffer:t.slice(e,e+Ie).buffer}}async function ff(t,e,n,r,i,s,a){let o=ie(e,r+10),c=j(e,r+12),l=j(e,r+16);if(o==X||c==me||l==me)return await go(t,e,n,i-Ut,s,a)==Ai?Wr:ao;if(!o&&!c)return $i;let u=ie(e,r+6);for(let f of[i-c,dn(t,u)+l])if(await go(t,e,n,f,s,a)==Mt)return Wr;return ao}async function go(t,e,n,r,i,s){if(r<0||r+4>i)return m;if(r>=n)return j(e,r-n);if(s.count>0){s.count--;let a=await _e(t,r,4);return j(K(a),0)}return m}function Th(t,e,n,r,i){let{rawFilename:s}=t,a=!i,o=t.decryptedDirectory&&(e.rawBitFlag&Na)==Na;r&&!o&&(n.length!=s.length||n.some((c,l)=>c!=s[l]))&<(a,i,"mismatched local file header (filename)"),(e.rawBitFlag&so)!=(t.rawBitFlag&so)&<(a,i,Jl),e.compressionMethod!=t.compressionMethod&<(a,i,Ql),!e.bitFlag.dataDescriptor&&!o&&(e.crc32||e.compressedSize||e.uncompressedSize)&&(e.crc32!=t.crc32||e.compressedSize!=t.compressedSize||e.uncompressedSize!=t.uncompressedSize)&<(a,i,ef)}function lt(t,e,n){t?yr(n):tt(e,n)}function tt(t,e,n){if(!t.some(r=>r.reason==e)){let r={reason:e};n!==m&&(r.filename=n),t.push(r)}}function yr(t){let e=new I(Hl);throw e.reason=t,e}function Te(t,e,n){return e[n]===m?t.options[n]:e[n]}function mo(t,e,n){return Ii(Te(t,e,n))}function ph(t){let e=(t&4294901760)>>16,n=t&X,r=new St(1980+((e&65024)>>9),((e&480)>>5)-1,e&31,(n&63488)>>11,(n&2016)>>5,(n&31)*2,0);return r<Cr?Cr:r}function ds(t){return new St(pe(t/Ce(1e4)-Ce(116444736e5)))}function kt(t,e){return t.getUint8(e)}function ie(t,e){return t.getUint16(e,!0)}function j(t,e){return t.getUint32(e,!0)}function Ge(t,e){let n=t.getBigUint64(e,!0);if(n>eh)throw new I(Wl);return pe(n)}var Rh=U.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Hl,ERR_BAD_FORMAT:kn,ERR_CENTRAL_DIRECTORY_NOT_FOUND:Cl,ERR_ENCRYPTED:Ml,ERR_ENCRYPTED_CENTRAL_DIRECTORY:kl,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Bl,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Pl,ERR_EOCDR_NOT_FOUND:xl,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Ul,ERR_INVALID_AUTHENTICATION_CODE:Ac,ERR_INVALID_COMPRESSED_DATA:Lc,ERR_INVALID_CRC32:Uc,ERR_INVALID_FILENAME_VALIDATION:Yl,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Vl,ERR_INVALID_PASSWORD:bi,ERR_INVALID_SIGNATURE:Oi,ERR_INVALID_STRICTNESS:Gl,ERR_INVALID_UNCOMPRESSED_SIZE:Qr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:Ll,ERR_OVERLAPPING_ENTRY:vl,ERR_SPLIT_ZIP_FILE:ai,ERR_UNSAFE_FILENAME:zl,ERR_UNSUPPORTED_COMPRESSION:ii,ERR_UNSUPPORTED_ENCRYPTION:si,ERR_UNSUPPORTED_UINT64:Wl,ERR_WORKER_STARTUP_TIMEOUT:Li,WARNING_APPENDED_DATA:ci,WARNING_COMPRESSED_PATCHED_DATA:Kl,WARNING_DUPLICATE_FILENAME:$l,WARNING_MALFORMED_EXTRA_FIELD:ji,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Jl,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:Ql,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:ef,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:zn,WARNING_PREPENDED_DATA:li,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:jl,WARNING_UNKNOWN_VERSION:Zl,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:ql,WARNING_UNSORTED_CENTRAL_DIRECTORY:Xl,WARNING_WRAPPED_ENTRIES_COUNT:oi,ZipReader:On,ZipReaderStream:fi,isZipFile:rh}),uf="File already exists",df="Zip file comment exceeds 64KB",Ah="Invalid zip file comment (must be a Uint8Array)",yh="File entry comment exceeds 64KB",Sh="Invalid file entry comment (must be a string)",Ih="Invalid date (must be a valid Date instance)",Dh="File entry name exceeds 64KB",Ef="Version exceeds 65535",Nh="The strength must equal 1, 2, or 3",bh="Encryption is not supported in USDZ files",Oh="Encryption is not supported when the 'passThrough' option is set",Fh="Invalid extra field (must be a Map)",xh="Invalid extra field type (must be integer 0..65535)",Ph="Invalid extra field data (must be a Uint8Array)",Qi="Extra field data exceeds 64KB",Ch="Compression method not supported",hf=-2147483648,gf=2147483647,wo=Ce(0),_o=Ce("0x7fffffffffffffff"),ea="Zip64 is not supported (set the 'zip64' option to 'true')",Lh="Undefined uncompressed size",Uh="Undefined compression method",Pm="Undetermined size",Mh="Undefined reader",vh="Zip file not empty",Bh="Invalid uid (must be integer 0..2^32-1)",Hh="Invalid gid (must be integer 0..2^32-1)",kh="Invalid UNIX mode (must be integer 0..65535)",zh="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Gh="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",Yh="Invalid msdosAttributesRaw (must be integer 0..255)",Vh="Invalid msdosAttributes (must be an object with boolean flags)",Wh="Invalid level (must be integer 0..9)",Xh="Signature data exceeds 64KB",To=new V([7,0,2,0,65,69,3,0,0]),Zh=4,Kh=9,qh=67,jh=1,Ei="infozip",hi="unix",$h=9,Es=0,po=[],Fn=class{constructor(e,n={}){e=new Gr(e);let{availableSize:r=ln,maxSize:i=ln}=e,s=r>0&&r!==ln&&i>0&&i!==ln;U.assign(this,{writer:e,addSplitZipSignature:s,options:n,fileEntries:new gt,filenames:new Ir,offset:n[gr]===m?e.size||e.writable.size||0:n[gr],initialOffset:n[gr]===m?0:n[gr]-(e.size||e.writable.size||0),pendingAddFileCalls:new Ir,pendingErrors:[],bufferedWrites:0,lastFileEntry:m})}prependZip(e){return hs(this,Jh(this,e))}appendZip(e){return hs(this,this.appendZipEntries(e))}async appendZipEntries(e){let n=this,{pendingAddFileCalls:r,filenames:i,fileEntries:s}=n;for(;r.size;)await ge.allSettled(je.from(r));let a,o=new ge(u=>a=u);r.add(o);let c=[],l;try{e=new tn(e),await Be(e),(e.size===m||!e.readUint8Array)&&(e=new Nt(await Jt(e.readable)),await Be(e));let{ZipReader:u}=await ge.resolve().then(function(){return Rh}),f=new u(e),d=await f.getEntries();await f.close(),await Be(n.writer);let{directoryOffset:h}=f;d.forEach(({filename:_})=>{if(i.has(_))throw new I(uf);i.add(_),c.push(_)}),n.writerLocked=!0;let{lockWriter:g}=n;n.lockWriter=new ge(_=>l=()=>{n.writerLocked=!1,_()}),await g,n.addSplitZipSignature&&(delete n.addSplitZipSignature,await wg(e)||(await ht(n.writer,wf()),n.offset+=Bt));let E=await _g(n,e,d,h);d.forEach(_=>{let{version:R,rawLastModDate:T,rawFilename:w,bitFlag:p,encrypted:S,uncompressedSize:N,compressedSize:y,extraFieldZip64:F}=_,{compressionMethod:x,rawExtraField:v}=_,{level:M,languageEncodingFlag:B,dataDescriptor:G}=p;v=mf(v||fe),_.extraFieldAES&&(x=qr);let z=te(v),Y=!!F&&F.uncompressedSize!==m,O=!!F&&F.compressedSize!==m,D=Af(M,B,G,S,x)&~Wo|M<<1,{headerArray:C,headerView:P}=Rf({version:R,bitFlag:D,compressionMethod:x,uncompressedSize:N,compressedSize:y,rawLastModDate:T,rawFilename:w,zip64CompressedSize:O,zip64UncompressedSize:Y,extraFieldLength:z}),{crc32:Z}=_;Z!==m&&xe(P,Kn,Z);let{offset:L,diskNumberStart:q}=E.get(_);U.assign(_,{zip64UncompressedSize:Y,zip64CompressedSize:O,offset:L,diskNumberStart:q,zip64DiskNumberStart:!1,rawExtraFieldZip64:fe,rawExtraFieldAES:fe,rawExtraFieldExtendedTimestamp:fe,rawExtraFieldNTFS:fe,rawExtraFieldUnix:fe,rawExtraField:v,rawCentralExtraField:fe,extendedTimestamp:!1,headerArray:C,headerView:P}),s.set(_.filename,_)})}catch(u){throw c.forEach(f=>i.delete(f)),u}finally{a(),r.delete(o),l&&l()}}add(e="",n,r={}){let i=this,{pendingAddFileCalls:s}=i,a=Qh(i,e,n,r);s.add(a);let o=()=>s.delete(a);return ge.prototype.then.call(a,o,o),hs(i,a)}remove(e){let{filenames:n,fileEntries:r}=this;if(typeof e==In&&(e=r.get(e)),e&&e.filename!==m){let{filename:i}=e;if(n.has(i)&&r.has(i))return n.delete(i),r.delete(i),!0}return!1}async close(e=fe,n={}){let r=this,{pendingAddFileCalls:i,writer:s}=this,{writable:a}=s;if(!(e instanceof V))throw new I(Ah);if(te(e)>X)throw new I(df);for(;i.size;)await ge.allSettled(je.from(i));await ge.allSettled(r.pendingErrors.map(l=>l.recorded));let o=r.pendingErrors.filter(l=>l.error&&!l.observed);if(o.length){let l=o.map(f=>f.error);o.forEach(f=>f.observed=!0);let[u]=l;try{u.entryErrors=l}catch{}throw u}return await dg(r,e,n),!sl(s)&&J(r,n,ec)||await a.getWriter().close(),s.getData?s.getData():a}},Ro=class{constructor(e={}){let{readable:n,writable:r}=new we;this.readable=n,this.zipWriter=new Fn(r,e),this.pendingAddFileCalls=new Ir}transform(e){let n=this.zipWriter,r,{readable:i,writable:s}=new we({start(o){r=o},flush:()=>{a()}});return Ao(this,this.zipWriter.add(e,i),o=>r.error(o)),{readable:this.readable,writable:s};async function a(){try{await n.close()}catch(o){await gs(n,o)}}}writable(e){let n,{readable:r,writable:i}=new we({start(s){n=s}});return Ao(this,this.zipWriter.add(e,r),s=>n.error(s)),i}async close(e=m,n={}){let{zipWriter:r}=this,s=(await ge.allSettled(je.from(this.pendingAddFileCalls))).filter(a=>a.status=="rejected").map(a=>a.reason);if(s.length){let[a]=s;try{a.entryErrors=s}catch{}throw await gs(r,a),a}try{return await r.close(e,n)}catch(a){throw await gs(r,a),a}}},gi=class extends ge{then(e,n){let{watcher:r}=this;return r&&(r.observed=!0),super.then(e,n)}};function hs(t,e){let n=new gi((i,s)=>ge.prototype.then.call(e,i,s)),r={};return n.watcher=r,r.recorded=ge.prototype.then.call(n,m,i=>r.error=i),t.pendingErrors.push(r),n}async function Jh(t,e){if(t.filenames.size)throw new I(vh);await t.appendZipEntries(e)}async function Qh(t,e,n,r){if(r=U.assign({},r),J(t,r,An)&&!e.endsWith(gn)&&(e+=gn),t.filenames.has(e))throw new I(uf);t.filenames.add(e),Es<sn().maxWorkers?Es++:await new ge(i=>po.push(i));try{return await eg(t,e,n,r)}catch(i){throw t.filenames.delete(e),i}finally{let i=po.shift();i?i():Es--}}async function gs(t,e){try{await t.writer.writable.abort(e)}catch{}}function Ao(t,e,n){t.pendingAddFileCalls.add(e),e.catch(r=>{try{n(r)}catch{}})}async function eg(t,e,n,r){let i=tg(t,e,r);({name:e}=i);let s=ng(t,e,r),{comment:a}=s,o=r[qi];t.fileEntries.set(e,m);let c=t.lastFileEntry,l={},u;s.resolvedOptions.keepOrder&&(l.lockFileEntry=new ge(d=>u=d)),t.lastFileEntry=l;let f;try{let{resolvedOptions:d}=s;d.level!=0&&d.compressionMethod===m&&!d.passThrough&&!await $d(sn())&&(d.level=0);let h=await rg(t,n,s,r);({reader:n}=h);let g=er(t.writer),E=yt(t.writer);r=U.assign({},r,i.resolvedOptions,s.resolvedOptions,h.resolvedOptions,{signature:r[ri],crc32:r.crc32===m?r[ri]:r.crc32,offset:t.offset-g,diskNumberStart:E,[qn]:t.options[qn]});let _=og(r),R=lg(r),T=te(_.localHeaderArray,R.dataDescriptorArray);f=await ig(t,e,n,{headerInfo:_,dataDescriptorInfo:R,metadataSize:T,fileEntry:l,previousFileEntry:c,releaseLockFileEntry:u},r)}catch(d){throw t.fileEntries.delete(e),d}finally{u&&u(c&&c.lockFileEntry)}return U.assign(f,{name:e,comment:a,extraField:o,[Xi]:f.internalFileAttributes,[Zi]:f.externalFileAttributes}),new bn(f)}function tg(t,e,n){let r=J(t,n,_l),i=J(t,n,Rl,r?fu:Oa),s=J(t,n,yl),a=En(t,n,Il),o=En(t,n,Dl),c=En(t,n,Nl),l=J(t,n,zu),u=J(t,n,bl),f=J(t,n,Ol),d=J(t,n,Fl);if(Hn(a,me,Bh),Hn(o,me,Hh),Hn(c,X,kh),l!==m&&l!==Ei&&l!==hi)throw new I(zh);if(l===hi&&(a!==m&&a>X||o!==m&&o>X))throw new I(Gh);l===m&&(a!==m||o!==m)&&(l=Ei);let h=En(t,n,ml),g=J(t,n,wl),E=a!==m||o!==m||c!==m||l||s,_=h!==m||g!==m;if(E?(r=!1,i=i&rt|Oa):_&&(r=!0,i=i&rt),Hn(h,rt,Yh),g&&(typeof g!==hu||je.isArray(g)))throw new I(Vh);if(i>X)throw new I(Ef);let R=pf(t,n,gl,Zi),T=R!==m;T||(R=0),!n[An]&&e.endsWith(gn)&&(n[An]=!0);let w=J(t,n,An);if(w?(e.endsWith(gn)||(e+=gn),T||(R=xr,r||(R|=(Yn|Vn|_r)<<16))):!r&&!T&&(s?R=(Vn|_r)<<16:R=_r<<16),!r){let N=c!==m||!!(u||f||d),y=R>>16&X;c=c===m?y:c&X,u?c|=bs:u=!!(c&bs),f?c|=Os:f=!!(c&Os),d?c|=Fs:d=!!(c&Fs),(!T||N)&&(w?c=c&~hn|Yn:c&hn||(c|=ou),R=(c&X)<<16|R&X)}({msdosAttributesRaw:h,msdosAttributes:g}=cg(h,g)),_&&(R=R&me|h&rt);let p=R>>16&X,S=c!==m&&(c&hn)==Xo;return{name:e,resolvedOptions:{versionMadeBy:i,msDosCompatible:!!r,externalFileAttributes:R,unixExternalUpper:p,uid:a,gid:o,unixMode:c,unixExtraFieldType:l,symlink:S,setuid:u,setgid:f,sticky:d,msdosAttributesRaw:h,msdosAttributes:g}}}function ng(t,e,n){let r=mi(t,n,ku)||Tr,i=r(e,rc);if(i===m&&(i=Tr(e)),te(i)>X)throw new I(Dh);let s=n[Gi]||"";if(typeof s!=In)throw new I(Sh);let a=r(s,sc);if(a===m&&(a=Tr(s)),te(a)>X)throw new I(yh);let o=J(t,n,pl);if(o!==m&&o>X)throw new I(Ef);let c=Ts(t,n,Yr,new St),l=J(t,n,Vr),u=Ts(t,n,Vi),f=Ts(t,n,Wi),d=pf(t,n,hl,Xi,0),h=J(t,n,qo),g=J(t,n,Zo),E=J(t,n,Ko);ac(g,E);let _=En(t,n,Fu,3),R=J(t,n,Al),T=J(t,n,xu,!0),w=J(t,n,Pu),p=J(t,n,Cu,!0),S=J(t,n,$o),N=J(t,n,Qo),y=J(t,n,Uu),F=mi(t,n,Mu),x=J(t,n,vu,!0),v=ic(J(t,n,jo)),M=J(t,n,Bu,!0),B=J(t,n,Sl),G=h||B===m?m:Pc(B);if(!h&&B!==m&&B!==It&&B!==Pn&&!G)throw new I(Ch);let z=En(t,n,Lu);if(Hn(z,$h,Wh),t.options[qn]){if(g!==m||E!==m)throw new I(bh);z===m&&B===m&&(z=0)}h&&(z=m);let Y=J(t,n,Jo),O=J(t,n,tc);y&&O===m&&(O=!1),(O===m||R&&!h)&&(O=!0),z!==m&&z!=6&&(Y=!1);let D=J(t,n,Ki);if(!R&&(g!==m||E!==m)&&!(pe.isInteger(_)&&_>=1&&_<=3))throw new I(Nh);let C=ms(n[qi]),P=ms(n[Gu]),Z=ms(n[Yu]);return{comment:s,resolvedOptions:{rawFilename:i,rawComment:a,version:o,lastModDate:c,rawLastModDate:l,lastAccessDate:u,creationDate:f,internalFileAttributes:d,passThrough:h,password:g,rawPassword:E,encryptionStrength:_,zipCrypto:R,extendedTimestamp:T,ntfsTimestamp:w,keepOrder:p,useWebWorkers:S,transferStreams:N,bufferedWrite:y,createTempStream:F,dataDescriptorSignature:x,signal:v,useUnicodeFileNames:M,compressionMethod:B,format:G?G.format:m,codecURI:G?G.codecURI:m,codecVersionNeeded:G?G.versionNeeded:m,level:z,useCompressionStream:Y,dataDescriptor:O,zip64:D,rawExtraField:C,rawLocalExtraField:P,rawCentralExtraField:Z}}}function ms(t){if(!t)return fe;if(!(t instanceof gt))throw new I(Fh);let e=0,n=0;t.forEach((s,a)=>{if(oc(a,X,xh),!(s instanceof V))throw new I(Ph);if(te(s)>X)throw new I(Qi);e+=4+te(s)});let r=new V(e),i=K(r);return t.forEach((s,a)=>{ut(i,n,a),ut(i,n+2,te(s)),rr(r,s,n+4),n+=4+te(s)}),r}async function rg(t,e,{resolvedOptions:n},r){if(n.passThrough&&!e&&!J(t,r,An))throw new I(Mh);let i;return e&&(e=new tn(e),await Be(e),{size:i}=e),U.assign({reader:e},sg(t,!!e,i,n,r))}function sg(t,e,n,r,i){let{passThrough:s,zipCrypto:a,password:o,rawPassword:c,encryptionStrength:l}=r,{dataDescriptor:u,zip64:f,level:d,compressionMethod:h}=r,g=0,E=0;if(s&&e){if(E=i[Yi],E===m)throw new I(Lh);if(h===m)throw new I(Uh)}let _=f===!0,R=J(t,i,Tl);if(e&&s&&!R&&te(o,c))throw new I(Oh);let T=e&&(!!(o&&te(o)||c&&te(c))||s&&R);e||(d=0,h=It);let w=T?a?12:16+l*4:0;e&&(s?(i.uncompressedSize=E,g=n===m?bo(E)+w:n):n===m?(u=!0,(f||f===m)&&(f=!0,E=g=me+1)):(i.uncompressedSize=E=n,g=(wi(h,d)?bo(E):E)+w));let p=!T&&(!e||n===0&&!s)&&!wi(h,d);p&&!a&&J(t,i,tc)===m&&(u=!1);let S=_||E>=me,N=_||g>=me;if(S||N){if(f===!1)throw new I(ea);f=!0}return f=f||!1,{maximumCompressedSize:g,resolvedOptions:{dataDescriptor:u,emptyEntry:p,zip64:f,zip64UncompressedSize:S,zip64CompressedSize:N,uncompressedSize:E,level:d,compressionMethod:h,encrypted:T}}}async function ig(t,e,n,r,i){let{fileEntries:s,writer:a}=t,{keepOrder:o,dataDescriptor:c,emptyEntry:l,signal:u}=i,{headerInfo:f,fileEntry:d,previousFileEntry:h,releaseLockFileEntry:g}=r,E=t.options[qn],_=d,R,T,w,p,S,N=0,y,F=o&&h?h.lockFileEntry:m;s.set(e,_);try{i.bufferedWrite||!o||t.writerLocked||t.bufferedWrites||!c&&!l?(R=!0,t.bufferedWrites++,i.createTempStream?y=await i.createTempStream():y=new we(m,m,{highWaterMark:ln}),y.size=0,await Be(a)):(y=a,await F,await x()),await Be(y);let M=er(a);t.addSplitZipSignature&&!R&&await Io(t,a),E&&!R&&yo(r,t.offset-M);let{localHeaderArray:B}=f;R||await v();let G=yt(a),z=tr(t,a);if(_.diskNumberStart=G,R||(p=!0,S=a.size,await ht(y,B)),_=await ag(n,y,_,r,sn(),i),R||(p=!1),s.set(e,_),_.filename=e,R){if(await ge.all([y.writable.getWriter().close(),F]),await x(),t.addSplitZipSignature&&await Io(t,a),w=!0,S=a.size,await v(),_.diskNumberStart=yt(a),_.offset=tr(t,a),E){let Y=r.metadataSize;yo(r,t.offset-er(a)),_.size+=r.metadataSize-Y}ug(_,f.localHeaderView,i),await ht(a,f.localHeaderArray),await _f(y.readable,a,u,Y=>N+=Y),a.size+=y.size,w=!1}else _.diskNumberStart=G,_.offset=z;return t.offset+=_.size,_}catch(M){if(w||p){if(t.hasCorruptedEntries=!0,M)try{M.corruptedEntry=!0}catch{}t.offset+=a.size-S,R&&(t.offset+=N)}throw s.delete(e),M}finally{if(R&&t.bufferedWrites--,g&&g(F),T&&T(),R&&y&&y.dispose)try{await y.dispose()}catch{}}async function x(){t.writerLocked=!0;let{lockWriter:M}=t;t.lockWriter=new ge(B=>T=()=>{t.writerLocked=!1,B()}),await M}async function v(){xn(a,te(f.localHeaderArray))&&await a.closeDisk()}}async function ag(t,e,{diskNumberStart:n,lockFileEntry:r},i,s,a){let{headerInfo:o,dataDescriptorInfo:c,metadataSize:l}=i,{headerArray:u,headerView:f,lastModDate:d,rawLastModDate:h,encrypted:g,compressed:E,version:_,compressionMethod:R,rawExtraFieldZip64:T,localExtraFieldZip64Length:w,rawExtraFieldExtendedTimestamp:p,extraFieldExtendedTimestampFlag:S,rawExtraFieldNTFS:N,rawExtraFieldUnix:y,rawExtraFieldAES:F}=o,{dataDescriptorArray:x}=c,{rawFilename:v,lastAccessDate:M,creationDate:B,password:G,rawPassword:z,level:Y,zip64:O,zip64UncompressedSize:D,zip64CompressedSize:C,zipCrypto:P,dataDescriptor:Z,directory:L,executable:q,versionMadeBy:ne,rawComment:re,rawExtraField:$,rawCentralExtraField:ce,useWebWorkers:ae,transferStreams:Ae,onstart:Ne,onprogress:he,onend:Q,signal:Re,encryptionStrength:oe,extendedTimestamp:ee,msDosCompatible:ue,internalFileAttributes:H,externalFileAttributes:ye,uid:Ee,gid:He,unixMode:be,symlink:Xe,setuid:wt,setgid:Vt,sticky:Le,unixExternalUpper:ot,msdosAttributesRaw:Se,msdosAttributes:ct,useCompressionStream:Wt,passThrough:Ze,format:an,codecURI:$e}=a,Ot={lockFileEntry:r,versionMadeBy:ne,zip64:O,directory:!!L,executable:!!q,filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:re,rawExtraFieldZip64:T,localExtraFieldZip64Length:w,rawExtraFieldExtendedTimestamp:p,rawExtraFieldNTFS:N,rawExtraFieldUnix:y,rawExtraFieldAES:F,rawExtraField:$,rawCentralExtraField:ce,extendedTimestamp:ee,msDosCompatible:ue,internalFileAttributes:H,externalFileAttributes:ye,diskNumberStart:n,uid:Ee,gid:He,unixMode:be,symlink:!!Xe,setuid:wt,setgid:Vt,sticky:Le,unixExternalUpper:ot,msdosAttributesRaw:Se,msdosAttributes:ct},{crc32:Ft,uncompressedSize:ze}=a,Ke=0;Ze||(ze=0);let{writable:Xt}=e;if(t){let Ue=$t(il(t)),xt=t.size,Pt={options:{codecType:Ci,inputSize:xt,level:Y,rawPassword:z,password:G,encryptionStrength:oe,zipCrypto:g&&P,passwordVerification:g&&P&&h>>8&rt,computeCrc32:!Ze,compressed:E&&!Ze,encrypted:g&&!Ze,useWebWorkers:ae,useCompressionStream:Wt,transferStreams:Ae,format:an,codecURI:$e,compressionMethod:R},config:s,streamOptions:{signal:Re,size:xt,onstart:Ne,onprogress:he,onend:Q}};try{let Fe=await Vc({readable:Ue,writable:Xt},Pt);if(Ke=Fe.outputSize,e.size+=Ke,Ze||(ze=Fe.inputSize,(!g||P)&&(Ft=Fe.crc32)),!C&&Ke>=me||!D&&ze>=me)throw new I(ea)}catch(Fe){throw Fe.outputSize!==m&&(e.size+=Fe.outputSize),Fe}}return fg({crc32:Ft,compressedSize:Ke,uncompressedSize:ze,headerInfo:o,dataDescriptorInfo:c},a),Z&&await ht(e,x),U.assign(Ot,{uncompressedSize:ze,compressedSize:Ke,lastModDate:d,rawLastModDate:h,creationDate:B,lastAccessDate:M,encrypted:!!g,zipCrypto:!!P,size:l+Ke,compressionMethod:R,version:_,headerArray:u,headerView:f,signature:Ft,crc32:g&&!P&&!Ze?m:Ft,extraFieldExtendedTimestampFlag:S,zip64UncompressedSize:D,zip64CompressedSize:C}),Ot}function og(t){let{rawFilename:e,lastModDate:n,rawLastModDate:r,lastAccessDate:i,creationDate:s,level:a,zip64:o,zipCrypto:c,useUnicodeFileNames:l,dataDescriptor:u,directory:f,rawExtraField:d,rawLocalExtraField:h,encryptionStrength:g,extendedTimestamp:E,ntfsTimestamp:_,passThrough:R,encrypted:T,zip64UncompressedSize:w,zip64CompressedSize:p,uncompressedSize:S,crc32:N}=t,{version:y,compressionMethod:F}=t,x=!f&&wi(F,a),v,M=R||!x,B=o&&(t.bufferedWrite||!u||!w&&!p||M),G=B||o&&u&&(w||p);if(o&&(w||p)){let Q=Ye(20);if(Q.writeUint16(jr),Q.writeUint16(16),v=Q.array,B&&(Q.writeUint64(S),M)){let Re=T?c?12:16+g*4:0;Q.writeUint64(R?0:S+Re)}}else v=fe;let z;if(T&&!c){let he=Ye(te(To)+2);he.writeUint16(Ho),he.writeBytes(To),z=he.array,z[8]=g}else z=fe;let Y,O,D;if(E){let he=Sr(n),Q=Tf(he);if(Q){let oe=9+(i?4:0)+(s?4:0),ee=Ye(oe);D=1+(i?2:0)+(s?4:0),ee.writeUint16(yi),ee.writeUint16(oe-4),ee.writeUint8(D),ee.writeUint32(he),i&&ee.writeUint32(Do(Sr(i))),s&&ee.writeUint32(Do(Sr(s))),O=ee.array}else O=fe;if(_===m?!Q||!!(i||s):_)try{let oe=_s(n),ee=Ye(36);ee.writeUint16(ko),ee.writeUint16(32),ee.skip(4),ee.writeUint16(zo),ee.writeUint16(24),ee.writeUint64(oe),ee.writeUint64(i?_s(i):oe),ee.writeUint64(s?_s(s):oe),Y=ee.array}catch{Y=fe}else Y=fe}else Y=O=fe;let C;try{let{uid:he,gid:Q,unixExtraFieldType:Re}=t;if(Re==Ei&&(he!==m||Q!==m)){let oe=So(he===m?0:he),ee=So(Q===m?0:Q),ue=3+oe.length+ee.length,H=Ye(4+ue);H.writeUint16(Yo),H.writeUint16(ue),H.writeUint8(1),H.writeUint8(oe.length),H.writeBytes(oe),H.writeUint8(ee.length),H.writeBytes(ee),C=H.array}else if(Re==hi&&(he!==m||Q!==m)){let oe=Ye(8);oe.writeUint16(Vo),oe.writeUint16(4),oe.writeUint16((he===m?0:he)&X),oe.writeUint16((Q===m?0:Q)&X),C=oe.array}else C=fe}catch{C=fe}F===m&&(F=x?Pn:It),y===m&&(y=F==It&&!f&&!T?cu:lu);let{codecVersionNeeded:P}=t;x&&P!==m&&(y=y>P?y:P),o&&(y=y>Pr?y:Pr),T&&!c&&(y=y>ba?y:ba,R&&N!==m&&(z[Zh]=jh),ut(K(z),Kh,F),F=qr);let Z=G?te(v):0,L=Z+te(z,O,Y,C,d,h),q=t[qn]?qh:0;if(L+q>X)throw new I(Qi);let ne=new St(W.ceil(W.floor(n.getTime()/1e3)/2)*2e3),{headerArray:re,headerView:$,rawLastModDate:ce}=Rf({version:y,bitFlag:Af(a,l,u,T,F),compressionMethod:F,uncompressedSize:S,lastModDate:ne<Cr?Cr:ne>Fa?Fa:ne,rawLastModDate:r,rawFilename:e,zip64CompressedSize:p,zip64UncompressedSize:w,extraFieldLength:L}),ae=Ye(Ve+te(e)+L),Ae=ae.array,Ne=K(Ae);return ae.writeUint32(Co),ae.writeBytes(re),ae.writeBytes(e),G&&ae.writeBytes(v),ae.writeBytes(z),ae.writeBytes(O),ae.writeBytes(Y),ae.writeBytes(C),ae.writeBytes(d),ae.writeBytes(h),u&&(p||xe(Ne,ar+Kt,0),w||xe(Ne,or+Kt,0)),{localHeaderArray:Ae,localHeaderView:Ne,headerArray:re,headerView:$,lastModDate:n,rawLastModDate:ce,encrypted:T,compressed:x,version:y,compressionMethod:F,extraFieldExtendedTimestampFlag:D,rawExtraFieldZip64:fe,localExtraFieldZip64Length:Z,rawExtraFieldExtendedTimestamp:O,rawExtraFieldNTFS:Y,rawExtraFieldUnix:C,rawExtraFieldAES:z,extraFieldLength:L}}function yo(t,e){let{headerInfo:n}=t,{localHeaderArray:r,extraFieldLength:i}=n,s=64-(e+te(r))%64;s<4&&(s+=64);let a=new V(s),o=K(a);ut(o,0,Go),ut(o,2,s-4);let c=r;n.localHeaderArray=r=new V(te(c)+s),rr(r,c),rr(r,a,te(c));let l=K(r);ut(l,28,i+s),n.localHeaderView=l,t.metadataSize+=s}function So(t){let e=new V(4);K(e).setUint32(0,t,!0);let r=4;for(;r>1&&e[r-1]===0;)r--;return e.subarray(0,r)}function cg(t,e){if(t!==m)t=t&rt;else if(e!==m){let{readOnly:n,hidden:r,system:i,directory:s,archive:a}=e,o=0;n&&(o|=Ss),r&&(o|=Is),i&&(o|=Ds),s&&(o|=xr),a&&(o|=Ns),t=o&rt}return e===m&&(e={readOnly:!!(t&Ss),hidden:!!(t&Is),system:!!(t&Ds),directory:!!(t&xr),archive:!!(t&Ns)}),{msdosAttributesRaw:t,msdosAttributes:e}}function lg({zip64:t,dataDescriptor:e,dataDescriptorSignature:n}){let r=fe,i,s=0,a=t?Bo:vo;return n&&(a+=Zt),e&&(r=new V(a),i=K(r),n&&(s=Zt,xe(i,0,Lo))),{dataDescriptorArray:r,dataDescriptorView:i,dataDescriptorOffset:s}}function fg({crc32:t,compressedSize:e,uncompressedSize:n,headerInfo:r,dataDescriptorInfo:i},{zip64:s,zipCrypto:a,passThrough:o,dataDescriptor:c}){let{headerView:l,encrypted:u}=r,{dataDescriptorView:f,dataDescriptorOffset:d}=i;(!u||a||o)&&t!==m&&(xe(l,Kn,t),c&&xe(f,d,t)),s?c&&(nr(f,d+4,Ce(e)),nr(f,d+12,Ce(n))):(xe(l,ar,e),xe(l,or,n),c&&(xe(f,d+4,e),xe(f,d+8,n)))}function ug({rawFilename:t,encrypted:e,zip64:n,localExtraFieldZip64Length:r,crc32:i,compressedSize:s,uncompressedSize:a,zip64UncompressedSize:o,zip64CompressedSize:c},l,{dataDescriptor:u,passThrough:f}){if(u||((!e||f&&i!==m)&&xe(l,Kn+Kt,i),c||xe(l,ar+Kt,s),o||xe(l,or+Kt,a)),n&&r){let d=Ve+te(t)+4;nr(l,d,Ce(a)),nr(l,d+8,Ce(s))}}async function dg(t,e,n){let r=Eg(t.fileEntries),{directoryStart:i,directoryEnd:s,directoryArray:a}=await hg(t,r,n),o=await gg(t,a,n);await mg(t,e,n,{directoryStart:i,directoryEnd:s,directoryDataLength:r,signatureLength:o})}function Eg(t){let e=0;for(let[,n]of t){let{rawFilename:r,rawExtraFieldAES:i,rawComment:s,rawExtraFieldNTFS:a,rawExtraFieldUnix:o,rawExtraField:c,rawCentralExtraField:l,extendedTimestamp:u,extraFieldExtendedTimestampFlag:f,lastModDate:d,zip64UncompressedSize:h,zip64CompressedSize:g,uncompressedSize:E,compressedSize:_}=n,R=n.offset>=me,T=n.diskNumberStart>=X,w;if(R||T||h||g){let y=4+(h?8:0)+(g?8:0)+(R?8:0)+(T?4:0),F=Ye(y);F.writeUint16(jr),F.writeUint16(y-4),h&&F.writeUint64(E),g&&F.writeUint64(_),R&&F.writeUint64(n.offset),T&&F.writeUint32(n.diskNumberStart),w=F.array}else w=fe;n.rawExtraFieldZip64=w,n.zip64Offset=R,n.zip64DiskNumberStart=T;let p,S=Sr(d);if(u&&Tf(S)){let y=Ye(9);y.writeUint16(yi),y.writeUint16(5),y.writeUint8(f),y.writeUint32(S),p=y.array}else p=fe;n.rawExtraFieldExtendedTimestamp=p;let N=te(w,i,a,o,p,c,l);if(N>X)throw new I(Qi);e+=Sn+te(r,s)+N}return e}async function hg(t,e,n){let{fileEntries:r,writer:i}=t,s=new V(e);await Be(i);let a=0,o=0,c=yt(i),l=er(i),u=0;for(let[f,d]of je.from(r.values()).entries()){let{offset:h,rawFilename:g,rawExtraFieldZip64:E,rawExtraFieldAES:_,rawExtraFieldExtendedTimestamp:R,rawExtraFieldNTFS:T,rawExtraFieldUnix:w,rawExtraField:p,rawCentralExtraField:S,rawComment:N,versionMadeBy:y,headerArray:F,headerView:x,zip64UncompressedSize:v,zip64CompressedSize:M,zip64DiskNumberStart:B,zip64Offset:G,internalFileAttributes:z,externalFileAttributes:Y,diskNumberStart:O,uncompressedSize:D,compressedSize:C}=d,P=te(E,_,R,T,w,p,S),Z=Sn+te(g,N)+P;xn(i,a+Z-o)&&(await ht(i,s.slice(o,a)),o=a,u=0,await i.closeDisk()),f==0&&(c=yt(i),l=er(i)),v||xe(x,or,D),M||xe(x,ar,C),(G||B)&&d.version<Pr&&ut(x,uu,Pr);let L=Ye(Z);if(L.writeUint32(Mt),L.writeUint16(y),L.writeBytes(F.subarray(0,Ve-4-2)),L.writeUint16(P),L.writeUint16(te(N)),L.writeUint16(B?X:O),L.writeUint16(z),L.writeUint32(Y),L.writeUint32(G?me:h),L.writeBytes(g),L.writeBytes(E),L.writeBytes(_),L.writeBytes(R),L.writeBytes(T),L.writeBytes(w),L.writeBytes(p),L.writeBytes(S),L.writeBytes(N),rr(s,L.array,a),a+=Z,u++,n.onprogress)try{await n.onprogress(f+1,r.size,new bn(d))}catch{}}return await ht(i,o?s.slice(o):s),{directoryStart:{diskNumber:c,diskOffset:l},directoryEnd:{diskNumber:yt(i),entriesLength:u},directoryArray:s}}async function gg(t,e,n){let r=mi(t,n,Ku);if(r){let i=await r(e),s=te(i);if(s>X)throw new I(Xh);let a=Ye(6+s);a.writeUint32(Uo),a.writeUint16(s),a.writeBytes(i);let{writer:o}=t;return xn(o,te(a.array))&&await o.closeDisk(),await ht(o,a.array),6+s}return 0}async function mg(t,e,n,r){let{writer:i}=t,{directoryStart:s,directoryEnd:a,signatureLength:o}=r,{directoryDataLength:c}=r,l=t.fileEntries.size,u=s.diskNumber,f=tr(t,s),d=te(e);if(d>X)throw new I(df);let h=J(t,n,Ki),g=yt(i);if(xn(i,(h?Sa:Ie)+d)&&g++,f>=me||c>=me||l>=X||g>=X){if(h===!1)throw new I(ea);h=!0}let E=Ye(h?Sa:Ie);xn(i,te(E.array)+d)&&await i.closeDisk(),g=yt(i);let _=g==a.diskNumber?a.entriesLength:0;h&&(E.writeUint32(ys),E.writeUint64(44),E.writeUint16(45),E.writeUint16(45),E.writeUint32(g),E.writeUint32(u),E.writeUint64(_),E.writeUint64(l),E.writeUint64(c),E.writeUint64(f),E.writeUint32(Ai),E.writeUint32(g),E.writeUint64(Ce(tr(t,i))+Ce(c)+Ce(o)),E.writeUint32(g+1),J(t,n,Hu,!0)&&(g=X,u=X),_=X,l=X,f=me,c=me),E.writeUint32(Mo),E.writeUint16(g),E.writeUint16(u),E.writeUint16(_),E.writeUint16(l),E.writeUint32(c),E.writeUint32(f),E.writeUint16(d),await ht(i,E.array),d&&await ht(i,e)}function Ye(t){let e=new V(t),n=K(e),r=0;return{array:e,writeUint8:i=>{Rg(n,r,i),r+=1},writeUint16:i=>{ut(n,r,i),r+=2},writeUint32:i=>{xe(n,r,i),r+=4},writeUint64:i=>{nr(n,r,Ce(i)),r+=8},writeBytes:i=>{rr(e,i,r),r+=te(i)},skip:i=>r+=i}}function yt(t){let{diskNumber:e=0}=t;return e}function er(t){let{diskOffset:e=0}=t;return e}function xn(t,e){let{availableSize:n=ln}=t;return e>n}function tr(t,{diskNumber:e=0,diskOffset:n=0}){return t.offset-n-(e?t.initialOffset:0)}async function wg(t){let e=await _e(t,0,Bt);return pg(K(e),0)==ir}function mf(t){let e=K(t),n=0;for(;n+4<=te(t);){let r=4+Xr(e,n+2);if(Xr(e,n)==jr)return mf(Ht(t.subarray(0,n),t.subarray(W.min(n+r,te(t)))));n+=r}return t}async function _g(t,e,n,r){let{writer:i}=t,s=new gt;if(i.closeDisk){let a=je.from(n).sort((c,l)=>mr(e,c)-mr(e,l)),o=0;for(let c of a){let l=mr(e,c);await ws(t,e,o,l-o),xn(i,await Tg(e,l))&&await i.closeDisk(),s.set(c,{offset:tr(t,i),diskNumberStart:yt(i)}),o=l}await ws(t,e,o,r-o)}else{let a=t.offset;await ws(t,e,0,r),n.forEach(o=>s.set(o,{offset:a+mr(e,o),diskNumberStart:0}))}return s}async function ws(t,e,n,r){if(r>0){let{writer:i}=t,s=0;try{await _f(il(e,{offset:n,size:r}),i,m,a=>s+=a)}catch(a){t.hasCorruptedEntries=!0;try{a.corruptedEntry=!0}catch{}throw a}finally{i.size+=s,t.offset+=s}}}async function Tg(t,e){let n=await _e(t,e,Ve);if(te(n)<Ve)return Ve;let r=K(n);return Ve+Xr(r,du+Kt)+Xr(r,Eu+Kt)}function mr(t,{offset:e,diskNumberStart:n}){return e+(t.getDiskOffset?t.getDiskOffset(n):0)}function wf(){let t=new V(Bt);return xe(K(t),0,ir),t}async function Io(t,e){delete t.addSplitZipSignature,await ht(e,wf()),t.offset+=Bt}async function ht(t,e){let{writable:n}=t,r=n.getWriter();try{await r.ready,t.size+=te(e),await r.write(e)}finally{r.releaseLock()}}async function _f(t,e,n,r){let i=e.writable.getWriter();try{await t.pipeTo(new at({async write(s){await i.ready,await i.write(s),r(te(s))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{i.releaseLock()}}function _s(t){if(t){let e=(Ce(t.getTime())+Ce(116444736e5))*Ce(1e4);return e<wo?wo:e>_o?_o:e}}function Sr(t){return W.floor(t.getTime()/1e3)}function Tf(t){return t>=hf&&t<=gf}function Do(t){return W.min(gf,W.max(hf,t))}function J(t,e,n,r){let i=e[n]===m?t.options[n]:e[n];return i===m?r:i}function Ts(t,e,n,r){let i=J(t,e,n,r);if(i===null)return r;if(i!==m&&(typeof i.getTime!=De||pe.isNaN(i.getTime())))throw new I(Ih);return i}function mi(t,e,n){return Ii(J(t,e,n))}function pf(t,e,n,r,i){let s=No(e,n,r),a=s===m?No(t.options,n,r):s;return a===m?i:a}function No(t,e,n){return t[e]===m?t[n]:t[e]}function En(t,e,n,r){return $r(J(t,e,n,r))}function bo(t){return t+5*(W.floor(t/16383)+1)}function wi(t,e){return t===m?e===m||e>0:t!==It}function Xr(t,e){return t.getUint16(e,!0)}function pg(t,e){return t.getUint32(e,!0)}function Rg(t,e,n){t.setUint8(e,n)}function ut(t,e,n){t.setUint16(e,n,!0)}function xe(t,e,n){t.setUint32(e,n,!0)}function nr(t,e,n){t.setBigUint64(e,n,!0)}function rr(t,e,n){t.set(e,n)}function te(...t){let e=0;return t.forEach(n=>n&&(e+=n.length)),e}function Rf({version:t,bitFlag:e,compressionMethod:n,uncompressedSize:r,compressedSize:i,lastModDate:s,rawLastModDate:a,rawFilename:o,zip64CompressedSize:c,zip64UncompressedSize:l,extraFieldLength:u}){let f=Ye(Ve-4),d=f.array,h=K(d);if(f.writeUint16(t),f.writeUint16(e),f.writeUint16(n),a===m){let g=new Po(1),E=K(g);ut(E,0,(s.getHours()<<6|s.getMinutes())<<5|s.getSeconds()/2),ut(E,2,(s.getFullYear()-1980<<4|s.getMonth()+1)<<5|s.getDate()),a=g[0]}return f.writeUint32(a),f.skip(4),c||i!==m?f.writeUint32(c?me:i):f.skip(4),l||r!==m?f.writeUint32(l?me:r):f.skip(4),f.writeUint16(te(o)),f.writeUint16(u),{headerArray:d,headerView:h,rawLastModDate:a}}function Af(t,e,n,r,i){let s=0;return e&&(s=s|Fr),n&&(s=s|Or),(i==Pn||i==Zn)&&(t>=0&&t<=3&&(s=s|au),t>3&&t<=5&&(s=s|iu),t==9&&(s=s|su)),r&&(s=s|br),s}function Cm(){return"application/octet-stream"}function Lm(){let{CompressionStream:t,DecompressionStream:e,CompressionStreamFallback:n,DecompressionStreamFallback:r}=sn(),i=[{compressionMethod:It,compression:!0,decompression:!0,registered:!1},{compressionMethod:Pn,compression:Lt(n,un)||Lt(t,un)||Lt(t,Dn),decompression:Lt(r,un)||Lt(e,un)||Lt(e,Dn),registered:!1},{compressionMethod:Zn,compression:!1,decompression:Lt(r,Ms)||Lt(e,Ms),registered:!1}];for(let s of Ld()){let a=xi(s.format);i.push({compressionMethod:s.compressionMethod,compression:a?typeof a.CompressionStream==De:m,decompression:a?typeof a.DecompressionStream==De:m,registered:!0})}return i}function Lt(t,e){if(!t)return!1;let{supportedFormats:n}=t;return n?n.includes(e):Pi(t,e)}var Um="2.8.61",Ag=1024*1024,yg=".zip.js-temp";function Mm(t={}){let{thresholdBytes:e=Ag,directoryName:n=yg,getDirectory:r=()=>Gn.storage.getDirectory()}=t,i;function s(){return i||(i=ge.resolve(r()).then(a=>a.getDirectoryHandle(n,{create:!0}))),i}return function(){let a=[],o=0,c=!1,l,u,f,d;async function h(){let T=await s();l=Sg(),u=await T.getFileHandle(l,{create:!0}),f=(await u.createWritable()).getWriter(),c=!0;for(let w of a)await f.write(w);a.length=0}let g=new at({async write(T){c?await f.write(T):(a.push(T),o+=T.length,o>e&&await h())},async close(){f&&(await f.close(),f=null)}}),E=0,_=new it({async pull(T){if(c){d||(d=(await u.getFile()).stream().getReader());let{value:w,done:p}=await d.read();p?T.close():T.enqueue(w)}else E<a.length?T.enqueue(a[E++]):T.close()},async cancel(T){d&&await d.cancel(T)}},{highWaterMark:0});async function R(){if(f){try{await f.close()}catch{}f=null}if(l){try{await(await s()).removeEntry(l)}catch{}u=l=null}a.length=0}return{writable:g,readable:_,dispose:R}}}function Sg(){return st.randomUUID?st.randomUUID():je.from(st.getRandomValues(new V(16)),t=>t.toString(16).padStart(2,"0")).join("")}var Ig=1024*1024;function vm(t={}){let{thresholdBytes:e=Ig}=t;return function(){let n=[],r=0,i=!1,s,a,o;async function c(){let h=new we;a=Jt(h.readable),s=h.writable.getWriter(),i=!0;for(let g of n)await s.write(g);n.length=0}let l=new at({async write(h){i?await s.write(h):(n.push(h),r+=h.length,r>e&&await c())},async close(){s&&(await s.close(),s=null)}}),u=0,f=new it({async pull(h){if(i){o||(o=(await a).stream().getReader());let{value:g,done:E}=await o.read();E?h.close():h.enqueue(g)}else u<n.length?h.enqueue(n[u++]):h.close()},async cancel(h){o&&await o.cancel(h)}},{highWaterMark:0});async function d(){if(s){try{await s.abort()}catch{}s=null}a&&(a.catch(()=>{}),a=null),n.length=0}return{writable:l,readable:f,dispose:d}}}var Dg=1024*1024,Ng=".zip.js-temp",bg=512*1024,Og="createSyncAccessHandle is only available in dedicated workers";function Bm(t={}){let{thresholdBytes:e=Dg,directoryName:n=Ng,getDirectory:r}=t;if(!r&&(typeof FileSystemFileHandle>"u"||!FileSystemFileHandle.prototype.createSyncAccessHandle))throw new I(Og);let i=r||(()=>Gn.storage.getDirectory()),s;function a(){return s||(s=ge.resolve(i()).then(o=>o.getDirectoryHandle(n,{create:!0}))),s}return function(){let o=[],c=0,l=!1,u,f,d=0,h=0;async function g(){let w=await a();u=Fg(),f=await(await w.getFileHandle(u,{create:!0})).createSyncAccessHandle(),l=!0;for(let S of o)f.write(S,{at:d}),d+=S.length;o.length=0}let E=new at({async write(w){l?(f.write(w,{at:d}),d+=w.length):(o.push(w),c+=w.length,c>e&&await g())},close(){f&&f.flush()}}),_=0,R=new it({pull(w){if(l){let p=d-h;if(p<=0){w.close();return}let S=new V(W.min(bg,p)),N=f.read(S,{at:h});N?(h+=N,w.enqueue(S.subarray(0,N))):w.close()}else _<o.length?w.enqueue(o[_++]):w.close()}},{highWaterMark:0});async function T(){if(f){try{f.close()}catch{}f=null}if(u){try{await(await a()).removeEntry(u)}catch{}u=null}o.length=0}return{writable:E,readable:R,dispose:T}}}function Fg(){return st.randomUUID?st.randomUUID():je.from(st.getRandomValues(new V(16)),t=>t.toString(16).padStart(2,"0")).join("")}try{rd({baseURI:import.meta.url})}catch{}var Pe=V,We=$f,ta=Int32Array,ts=new Pe([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),ns=new Pe([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),_i=new Pe([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),yf=function(t,e){for(var n=new We(31),r=0;r<31;++r)n[r]=e+=1<<t[r-1];for(var i=new ta(n[30]),r=1;r<30;++r)for(var s=n[r];s<n[r+1];++s)i[s]=s-n[r]<<5|r;return{b:n,r:i}},Sf=yf(ts,2),If=Sf.b,Ti=Sf.r;If[28]=258,Ti[258]=28;var Df=yf(ns,0),xg=Df.b,Oo=Df.r,pi=new We(32768);for(de=0;de<32768;++de)_t=(de&43690)>>1|(de&21845)<<1,_t=(_t&52428)>>2|(_t&13107)<<2,_t=(_t&61680)>>4|(_t&3855)<<4,pi[de]=((_t&65280)>>8|(_t&255)<<8)>>1;var _t,de,dt=(function(t,e,n){for(var r=t.length,i=0,s=new We(e);i<r;++i)t[i]&&++s[t[i]-1];var a=new We(e);for(i=1;i<e;++i)a[i]=a[i-1]+s[i-1]<<1;var o;if(n){o=new We(1<<e);var c=15-e;for(i=0;i<r;++i)if(t[i])for(var l=i<<4|t[i],u=e-t[i],f=a[t[i]-1]++<<u,d=f|(1<<u)-1;f<=d;++f)o[pi[f]>>c]=l}else for(o=new We(r),i=0;i<r;++i)t[i]&&(o[i]=pi[a[t[i]-1]++]>>15-t[i]);return o}),Yt=new Pe(288);for(de=0;de<144;++de)Yt[de]=8;var de;for(de=144;de<256;++de)Yt[de]=9;var de;for(de=256;de<280;++de)Yt[de]=7;var de;for(de=280;de<288;++de)Yt[de]=8;var de,sr=new Pe(32);for(de=0;de<32;++de)sr[de]=5;var de,Pg=dt(Yt,9,0),Cg=dt(Yt,9,1),Lg=dt(sr,5,0),Ug=dt(sr,5,1),ps=function(t){for(var e=t[0],n=1;n<t.length;++n)t[n]>e&&(e=t[n]);return e},Qe=function(t,e,n){var r=e/8|0;return(t[r]|t[r+1]<<8)>>(e&7)&n},Rs=function(t,e){var n=e/8|0;return(t[n]|t[n+1]<<8|t[n+2]<<16)>>(e&7)},na=function(t){return(t+7)/8|0},Nf=function(t,e,n){return(n==null||n>t.length)&&(n=t.length),new Pe(t.subarray(e,n))},Mg=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],Rt=function(t,e,n){var r=new I(e||Mg[t]);if(r.code=t,I.captureStackTrace&&I.captureStackTrace(r,Rt),!n)throw r;return r},vg=function(t,e,n,r){var i=t.length,s=r?r.length:0;if(!i||e.f&&!e.l)return n||new Pe(0);var a=!n,o=a||e.i!=2,c=e.i;a&&(n=new Pe(i*3));var l=function(Q){var Re=n.length;if(Q>Re){var oe=new Pe(W.max(Re*2,Q));oe.set(n),n=oe}},u=e.f||0,f=e.p||0,d=e.b||0,h=e.l,g=e.d,E=e.m,_=e.n,R=i*8;do{if(!h){u=Qe(t,f,1);var T=Qe(t,f+1,3);if(f+=3,T)if(T==1)h=Cg,g=Ug,E=9,_=5;else if(T==2){var N=Qe(t,f,31)+257,y=Qe(t,f+10,15)+4,F=N+Qe(t,f+5,31)+1;f+=14;for(var x=new Pe(F),v=new Pe(19),M=0;M<y;++M)v[_i[M]]=Qe(t,f+M*3,7);f+=y*3;for(var B=ps(v),G=(1<<B)-1,z=dt(v,B,1),M=0;M<F;){var Y=z[Qe(t,f,G)];f+=Y&15;var w=Y>>4;if(w<16)x[M++]=w;else{var O=0,D=0;for(w==16?(D=3+Qe(t,f,3),f+=2,O=x[M-1]):w==17?(D=3+Qe(t,f,7),f+=3):w==18&&(D=11+Qe(t,f,127),f+=7);D--;)x[M++]=O}}var C=x.subarray(0,N),P=x.subarray(N);E=ps(C),_=ps(P),h=dt(C,E,1),g=dt(P,_,1)}else Rt(1);else{var w=na(f)+4,p=t[w-4]|t[w-3]<<8,S=w+p;if(S>i){c&&Rt(0);break}o&&l(d+p),n.set(t.subarray(w,S),d),e.b=d+=p,e.p=f=S*8,e.f=u;continue}if(f>R){c&&Rt(0);break}}o&&l(d+131072);for(var Z=(1<<E)-1,L=(1<<_)-1,q=f;;q=f){var O=h[Rs(t,f)&Z],ne=O>>4;if(f+=O&15,f>R){c&&Rt(0);break}if(O||Rt(2),ne<256)n[d++]=ne;else if(ne==256){q=f,h=null;break}else{var re=ne-254;if(ne>264){var M=ne-257,$=ts[M];re=Qe(t,f,(1<<$)-1)+If[M],f+=$}var ce=g[Rs(t,f)&L],ae=ce>>4;ce||Rt(3),f+=ce&15;var P=xg[ae];if(ae>3){var $=ns[ae];P+=Rs(t,f)&(1<<$)-1,f+=$}if(f>R){c&&Rt(0);break}o&&l(d+131072);var Ae=d+re;if(d<P){var Ne=s-P,he=W.min(P,Ae);for(Ne+d<0&&Rt(3);d<he;++d)n[d]=r[Ne+d]}for(;d<Ae;++d)n[d]=n[d-P]}}e.l=h,e.p=q,e.b=d,e.f=u,h&&(u=1,e.m=E,e.d=g,e.n=_)}while(!u);return d!=n.length&&a?Nf(n,0,d):n.subarray(0,d)},Tt=function(t,e,n){n<<=e&7;var r=e/8|0;t[r]|=n,t[r+1]|=n>>8},vn=function(t,e,n){n<<=e&7;var r=e/8|0;t[r]|=n,t[r+1]|=n>>8,t[r+2]|=n>>16},As=function(t,e){for(var n=[],r=0;r<t.length;++r)t[r]&&n.push({s:r,f:t[r]});var i=n.length,s=n.slice();if(!i)return{t:Of,l:0};if(i==1){var a=new Pe(n[0].s+1);return a[n[0].s]=1,{t:a,l:1}}n.sort(function(S,N){return S.f-N.f}),n.push({s:-1,f:25001});var o=n[0],c=n[1],l=0,u=1,f=2;for(n[0]={s:-1,f:o.f+c.f,l:o,r:c};u!=i-1;)o=n[n[l].f<n[f].f?l++:f++],c=n[l!=u&&n[l].f<n[f].f?l++:f++],n[u++]={s:-1,f:o.f+c.f,l:o,r:c};for(var d=s[0].s,r=1;r<i;++r)s[r].s>d&&(d=s[r].s);var h=new We(d+1),g=Ri(n[u-1],h,0);if(g>e){var r=0,E=0,_=g-e,R=1<<_;for(s.sort(function(N,y){return h[y.s]-h[N.s]||N.f-y.f});r<i;++r){var T=s[r].s;if(h[T]>e)E+=R-(1<<g-h[T]),h[T]=e;else break}for(E>>=_;E>0;){var w=s[r].s;h[w]<e?E-=1<<e-h[w]++-1:++r}for(;r>=0&&E;--r){var p=s[r].s;h[p]==e&&(--h[p],++E)}g=e}return{t:new Pe(h),l:g}},Ri=function(t,e,n){return t.s==-1?W.max(Ri(t.l,e,n+1),Ri(t.r,e,n+1)):e[t.s]=n},Fo=function(t){for(var e=t.length;e&&!t[--e];);for(var n=new We(++e),r=0,i=t[0],s=1,a=function(c){n[r++]=c},o=1;o<=e;++o)if(t[o]==i&&o!=e)++s;else{if(!i&&s>2){for(;s>138;s-=138)a(32754);s>2&&(a(s>10?s-11<<5|28690:s-3<<5|12305),s=0)}else if(s>3){for(a(i),--s;s>6;s-=6)a(8304);s>2&&(a(s-3<<5|8208),s=0)}for(;s--;)a(i);s=1,i=t[o]}return{c:n.subarray(0,r),n:e}},Bn=function(t,e){for(var n=0,r=0;r<e.length;++r)n+=t[r]*e[r];return n},bf=function(t,e,n){var r=n.length,i=na(e+2);t[i]=r&255,t[i+1]=r>>8,t[i+2]=t[i]^255,t[i+3]=t[i+1]^255;for(var s=0;s<r;++s)t[i+s+4]=n[s];return(i+4+r)*8},xo=function(t,e,n,r,i,s,a,o,c,l,u){Tt(e,u++,n),++i[256];for(var f=As(i,15),d=f.t,h=f.l,g=As(s,15),E=g.t,_=g.l,R=Fo(d),T=R.c,w=R.n,p=Fo(E),S=p.c,N=p.n,y=new We(19),F=0;F<T.length;++F)++y[T[F]&31];for(var F=0;F<S.length;++F)++y[S[F]&31];for(var x=As(y,7),v=x.t,M=x.l,B=19;B>4&&!v[_i[B-1]];--B);var G=l+5<<3,z=Bn(i,Yt)+Bn(s,sr)+a,Y=Bn(i,d)+Bn(s,E)+a+14+3*B+Bn(y,v)+2*y[16]+3*y[17]+7*y[18];if(c>=0&&G<=z&&G<=Y)return bf(e,u,t.subarray(c,c+l));var O,D,C,P;if(Tt(e,u,1+(Y<z)),u+=2,Y<z){O=dt(d,h,0),D=d,C=dt(E,_,0),P=E;var Z=dt(v,M,0);Tt(e,u,w-257),Tt(e,u+5,N-1),Tt(e,u+10,B-4),u+=14;for(var F=0;F<B;++F)Tt(e,u+3*F,v[_i[F]]);u+=3*B;for(var L=[T,S],q=0;q<2;++q)for(var ne=L[q],F=0;F<ne.length;++F){var re=ne[F]&31;Tt(e,u,Z[re]),u+=v[re],re>15&&(Tt(e,u,ne[F]>>5&127),u+=ne[F]>>12)}}else O=Pg,D=Yt,C=Lg,P=sr;for(var F=0;F<o;++F){var $=r[F];if($>255){var re=$>>18&31;vn(e,u,O[re+257]),u+=D[re+257],re>7&&(Tt(e,u,$>>23&31),u+=ts[re]);var ce=$&31;vn(e,u,C[ce]),u+=P[ce],ce>3&&(vn(e,u,$>>5&8191),u+=ns[ce])}else vn(e,u,O[$]),u+=D[$]}return vn(e,u,O[256]),u+D[256]},Bg=new ta([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),Of=new Pe(0),Hg=function(t,e,n,r,i,s){var a=s.z||t.length,o=new Pe(r+a+5*(1+W.ceil(a/7e3))+i),c=o.subarray(r,o.length-i),l=s.l,u=(s.r||0)&7;if(e){u&&(c[0]=s.r>>3);for(var f=Bg[e-1],d=f>>13,h=f&8191,g=(1<<n)-1,E=s.p||new We(32768),_=s.h||new We(g+1),R=W.ceil(n/3),T=2*R,w=function(ee){return(t[ee]^t[ee+1]<<R^t[ee+2]<<T)&g},p=new ta(25e3),S=new We(288),N=new We(32),y=0,F=0,x=s.i||0,v=0,M=s.w||0,B=0;x+2<a;++x){var G=w(x),z=x&32767,Y=_[G];if(E[z]=Y,_[G]=z,M<=x){var O=a-x;if((y>7e3||v>24576)&&(O>423||!l)){u=xo(t,c,0,p,S,N,F,v,B,x-B,u),v=y=F=0,B=x;for(var D=0;D<286;++D)S[D]=0;for(var D=0;D<30;++D)N[D]=0}var C=2,P=0,Z=h,L=z-Y&32767;if(O>2&&G==w(x-L))for(var q=W.min(d,O)-1,ne=W.min(32767,x),re=W.min(258,O);L<=ne&&--Z&&z!=Y;){if(t[x+C]==t[x+C-L]){for(var $=0;$<re&&t[x+$]==t[x+$-L];++$);if($>C){if(C=$,P=L,$>q)break;for(var ce=W.min(L,$-2),ae=0,D=0;D<ce;++D){var Ae=x-L+D&32767,Ne=E[Ae],he=Ae-Ne&32767;he>ae&&(ae=he,Y=Ae)}}}z=Y,Y=E[z],L+=z-Y&32767}if(P){p[v++]=268435456|Ti[C]<<18|Oo[P];var Q=Ti[C]&31,Re=Oo[P]&31;F+=ts[Q]+ns[Re],++S[257+Q],++N[Re],M=x+C,++y}else p[v++]=t[x],++S[t[x]]}}for(x=W.max(x,M);x<a;++x)p[v++]=t[x],++S[t[x]];u=xo(t,c,l,p,S,N,F,v,B,x-B,u),l||(s.r=u&7|c[u/8|0]<<3,u-=7,s.h=_,s.p=E,s.i=x,s.w=M)}else{for(var x=s.w||0;x<a+l;x+=65535){var oe=x+65535;oe>=a&&(c[u/8|0]=l,oe=a),u=bf(c,u+1,t.subarray(x,oe))}s.i=a}return Nf(o,0,r+na(u)+i)},kg=function(t,e,n,r,i){if(!i&&(i={l:1},e.dictionary)){var s=e.dictionary.subarray(-32768),a=new Pe(s.length+t.length);a.set(s),a.set(t,s.length),t=a,i.w=s.length}return Hg(t,e.level==null?6:e.level,e.mem==null?i.l?W.ceil(W.max(8,W.min(13,W.log(t.length)))*1.5):20:12+e.mem,n,r,i)};function Ff(t,e){return kg(t,e||{},0,0)}function Hm(t,e){return vg(t,{i:2},e&&e.out,e&&e.dictionary)}var zg=typeof Nr<"u"&&new Nr,Gg=0;try{zg.decode(Of,{stream:!0}),Gg=1}catch{}async function ra(t,{password:e,prompt:n=()=>{},zipOptions:r={useWebWorkers:!0},noBlobURL:i,entries:s,pagePath:a="",excludedPaths:o,aliases:c}={}){let l={gif:"image/gif",jpg:"image/jpeg",png:"image/png",tif:"image/tiff",tiff:"image/tiff",bmp:"image/bmp",ico:"image/vnd.microsoft.icon",webp:"image/webp",svg:"image/svg+xml",avi:"video/x-msvideo",ogv:"video/ogg",mp4:"video/mp4",mpeg:"video/mpeg",ts:"video/mp2t",webm:"video/webm","3gp":"video/3gpp","3g2":"video/3gpp",mp3:"audio/mpeg",oga:"audio/ogg",mid:"audio/midi",midi:"audio/midi",opus:"audio/opus",wav:"audio/wav",weba:"audio/webm",heif:"image/heif",heic:"image/heic",avif:"image/avif",apng:"image/apng",mov:"video/quicktime",otf:"font/otf",ttf:"font/ttf",woff:"font/woff",woff2:"font/woff2",eot:"application/vnd.ms-fontobject",pdf:"application/pdf"},u=/stylesheet_[0-9]+\.css/,f=/scripts\/[0-9]+\.js/,d=/^([0-9_]+\/)?index\.html$/,h=/index\.html$/,g=/frames\//,E=/^frames\/\d+\/index.html/,_=/manifest\.json$/,R=";charset=utf-8",T=/([{}()^$&.*?/+|[\\\\]|\]|-)/g,w;if(!s){let O;t.readUint8Array?O=t:(Array.isArray(t)&&(t=new Blob([new Uint8Array(t)])),O=new zip.BlobReader(t)),w=new zip.ZipReader(O,r),s=await w.getEntries()}if(s=s.filter(O=>O.filename!="page.pdf"),c){let O=s;s=s.map(D=>{let C=c[D.filename],P=C&&O.find(Z=>Z.filename==C);return P?{filename:D.filename,comment:P.comment,encrypted:P.encrypted,uncompressedSize:P.uncompressedSize,getData:(Z,L)=>P.getData(Z,L)}:D})}a?s=s.filter(O=>O.filename.startsWith(a)):o&&(s=s.filter(O=>!o.some(D=>O.filename.startsWith(D))));let p=Object.assign({password:e},r),S,N,y,F=[],x=[],v=[];await Promise.all(s.map(async O=>{let D=O.filename.substring(a.length),C,P,Z,L,q={};if(!p.password&&O.encrypted&&(p.password=n("Please enter the password to view the page")),D.match(h)||D.match(u)||D.match(f))D.match(h)?x.push(q):v.push(q),C=new zip.TextWriter,O.uncompressedSize>0?Z=await O.getData(C,p):Z="",D.match(h)?L="text/html"+R:D.match(u)?L="text/css"+R:D.match(f)&&(L="text/javascript"+R);else{F.push(q);let ce=D.match(/\.([^.]+)/);if(ce&&ce[1]&&l[ce[1]]?L=l[ce[1]]:L="application/octet-stream",D.match(g)||i)P=await O.getData(new zip.Data64URIWriter(L),p);else{let ae=await O.getData(new zip.BlobWriter(L),p);P=URL.createObjectURL(ae)}}let ne=D.match(/^([0-9_]+\/)?(.*)$/)[2],re="",$=D.match(/(.*\/)[^/]+$/);$&&$[1]&&(re=$[1]),Object.assign(q,{prefixPath:re,filename:D,name:ne,url:O.comment,content:P,mimeType:L,textContent:Z,parentResources:[]})})),w&&await w.close(),x.sort(z),v.sort(Y),F=F.sort(z).concat(...v).concat(...x);for(let O of F){let{filename:D,prefixPath:C}=O,{textContent:P}=O;P!==void 0&&(D.match(d)&&(N=P),D.match(f)||(F.forEach(Z=>{let{filename:L,parentResources:q,content:ne}=Z;if(L.startsWith(C)&&L!=O.filename){let re=L.substring(C.length);re.match(_)||P.includes(re)&&(q.push(O.filename),Z.textContent===void 0&&(P=G(P,re,ne)))}}),O.textContent=P))}for(let O of F){let{textContent:D,prefixPath:C,filename:P}=O;if(D!==void 0){if(!P.match(f)){let Z=P;for(let L of F){let{filename:q}=L;if(q.startsWith(C)&&q!=Z){let ne=q.substring(C.length);ne.match(_)||D.indexOf(ne)!=-1&&(L.content=await M(L),D=G(D,ne,L.content))}}O.textContent=D,O.content=await M(O)}P.match(d)&&(S=D,y=O.url)}}return{docContent:S,origDocContent:N,resources:F,url:y};async function M(O){return O.filename.match(g)&&!O.filename.match(E)||i?await B(O.textContent,O.mimeType):URL.createObjectURL(new Blob([O.textContent],{type:O.mimeType}))}async function B(O,D){let C=new Blob([O],{type:D}),P=new Uint8Array(await C.arrayBuffer()),Z="";for(let L=0;L<P.length;L+=8192)Z+=String.fromCharCode(...P.subarray(L,L+8192));return("data:"+(C.type||"application/octet-stream")+";base64,"+btoa(Z)).replace(R,"")}function G(O,D,C){if(typeof O.replaceAll=="function")return O.replaceAll(D,C);{let P=new RegExp(D.replace(T,"\\$1"),"g");return O.replace(P,C)}}function z(O,D){let C=D.filename.length-O.filename.length;return C||D.filename.localeCompare(O.filename)}function Y(O,D){let C=O.filename.length-D.filename.length;return C||O.filename.localeCompare(D.filename)}}async function sa(t,e,{disableFramePointerEvents:n,inPlace:r}={}){function i(a){let o=a.doctype,c="";return o&&(c="<!DOCTYPE "+o.nodeName,o.publicId?(c+=' PUBLIC "'+o.publicId+'"',o.systemId&&(c+=' "'+o.systemId+'"')):o.systemId&&(c+=' SYSTEM "'+o.systemId+'"'),o.internalSubset&&(c+=" ["+o.internalSubset+"]"),c+=">"),c}e=e.replace(/<noscript/gi,"<template disabled-noscript"),e=e.replace(/<\/noscript/gi,"</template");let s=new DOMParser().parseFromString(e,"text/html");if(n&&s.querySelectorAll("iframe").forEach(a=>{let o="pointer-events";a.style.setProperty("-sf-"+o,a.style.getPropertyValue(o),a.style.getPropertyPriority(o)),a.style.setProperty(o,"none","important")}),r&&s.compatMode==t.compatMode&&!s.querySelector("script")){await Promise.all(Array.from(s.querySelectorAll("link[rel~=stylesheet][href]")).map(c=>new Promise(l=>{let u=t.createElement("link");u.rel="preload",u.as="style",u.href=c.getAttribute("href"),u.onload=l,u.onerror=l,t.head.appendChild(u),setTimeout(l,500)})));let a=t.documentElement,o=t.adoptNode(s.documentElement);for(;a.attributes.length;)a.removeAttribute(a.attributes[0].name);if(Array.from(o.attributes).forEach(c=>a.setAttribute(c.name,c.value)),a.replaceChildren(...o.childNodes),t.querySelector("link[rel~=stylesheet][href]")){let c=t.createElement("style");c.textContent="html{visibility:hidden}",t.head.appendChild(c);let l=Date.now();for(;Date.now()-l<500&&Array.from(t.querySelectorAll("link[rel~=stylesheet][href]")).some(u=>!u.sheet);)await new Promise(u=>setTimeout(u,10));c.remove()}}else t.open(),t.write(i(s)),t.write(s.documentElement.outerHTML),t.close();t.querySelectorAll("template[disabled-noscript]").forEach(a=>{let o=t.createElement("noscript");a.removeAttribute("disabled-noscript"),Array.from(a.attributes).forEach(c=>o.setAttribute(c.name,c.value)),o.textContent=a.innerHTML,a.parentElement.replaceChild(o,a)}),t.documentElement.setAttribute("data-sfz",""),t.querySelectorAll("link[rel*=icon]").forEach(a=>a.replaceWith(a.cloneNode(!0)))}async function xf(t,{extract:e,display:n}){let r="pages/",i="sfz-",s="sfz-pages.json",a="sfz-toc.html",o="#sfz/",c="?toc",l="data-sfz-target",u=/:target(?![\w-])/g,f="data-sfz-visited",d=/:visited(?![\w-])/g,h="#551a8b",g="data-sfz-unarchived",E="a["+g+']::after{content:" \\2197";font-size:.75em;opacity:.7}',_="Not saved in this archive",R=["http:","https:"],T=100,{zip:w,document:p,location:S,history:N,CSS:y,URL:F,setTimeout:x,clearTimeout:v}=globalThis,M=new Map,B=new Map,G=new Map,z=new Set,Y=Math.random().toString(36).substring(2),O,D,C,P,Z=0;try{N.scrollRestoration="manual"}catch{}w.configure({useWebWorkers:!0});let q=await new w.ZipReader(t.readUint8Array?t:new w.BlobReader(t)).getEntries(),ne=q.find(A=>A.filename==s);if(!ne)throw new Error("Pages data not found");let re=JSON.parse(await ne.getData(new w.TextWriter)),$=q.find(A=>A.filename==a),{pages:ce}=re,ae=re.pageTransitions||"auto",Ae=new Map(Object.entries(re.aliases||{}));return ce.forEach(A=>{B.set(Oe(A.url),A.path),A.originalUrls&&A.originalUrls.forEach(b=>B.set(Oe(b),A.path))}),Ne(),D=Wt(),D===null&&(D=Ze()),oe(!0);function Ne(){globalThis.addEventListener("click",Q,!0),globalThis.addEventListener("auxclick",Q,!0),globalThis.addEventListener("mouseover",Vt,!0),globalThis.addEventListener("hashchange",he)}function he(){Re().catch(A=>globalThis.console.error(A))}function Q(A){if(A.type=="auxclick"&&A.button!=1)return;let b=Le(A.target);if(b&&b.href){let k=hr(b.href);if(k&&k.startsWith(o)&&Oe(b.href)==Oe(S.href))return;let se=B.get(Oe(b.href));if(se===void 0&&k&&Oe(b.href)==Oe(S.href)&&(se=O),se!==void 0)if(A.preventDefault(),A.type=="auxclick"||A.metaKey||A.ctrlKey||A.shiftKey||A.altKey)globalThis.open(Oe(S.href)+o+se+(k||""));else{let le=S.hash;S.hash=o+se+(k||""),S.hash==le&&k&&(Pt(),ze(k))}}}async function Re(){Pt(),G.set(D,an());let A=$e(),b=Wt(),{routed:k,path:se,fragment:le}=ee();k&&se!=O&&H(se)&&p.startViewTransition&&ot()&&!ct()?await p.startViewTransition(Me).updateCallbackDone:await Me();async function Me(){let Ct=await oe();Ct&&os(),on(Ct)}function on(Ct){if(b!==null){D=b;let cn=G.get(b);if(cn&&(Ot(cn.elements),globalThis.scrollTo(cn.x,cn.y)),le){let _a=Ke(le);_a&&Xt(_a)}}else D=Ze(),Ct&&Ot(A),le?ze(le):Ct&&globalThis.scrollTo(0,0)}}async function oe(A){let{routed:b,path:k,fragment:se}=ee();if(!b&&!A||k==O||!H(k))return!1;let le=await ye(k);return O=k,await n(p,le,{inPlace:!0}),Ne(),k==c&&Xe(),z.add(k),Ue(),re.markUnarchivedLinks&&xt(),A&&(se?ze(se):!b&&S.hash&&ze(S.hash)),!0}function ee(){let A=S.hash,b=!A||A.startsWith(o),k=ce[0].path,se;return b&&A&&({path:k,fragment:se}=ue(A)),{routed:b,path:k,fragment:se}}function ue(A){let b=A.substring(o.length),k=b.indexOf("#");return{path:decodeURIComponent(k==-1?b:b.substring(0,k)),fragment:k==-1?void 0:b.substring(k)}}function H(A){return A==c?!!$:!!ce.find(b=>b.path==A)}function ye(A){if(!M.has(A)){let b=Ee(A);b.catch(()=>M.delete(A)),M.set(A,b)}return M.get(A)}async function Ee(A){if(A==c)return $.getData(new w.TextWriter);let b=q.filter(se=>be(se.filename,A)&&!Ae.has(se.filename)).concat(He(A)),{docContent:k}=await e(null,{entries:b,pagePath:A});return k}function He(A){return Array.from(Ae).filter(([b])=>be(b,A)).map(([b,k])=>{let se=q.find(le=>le.filename==k);return se&&{filename:b,comment:se.comment,encrypted:se.encrypted,uncompressedSize:se.uncompressedSize,getData:(le,Je)=>se.getData(le,Je)}}).filter(Boolean)}function be(A,b){return b==""?!A.startsWith(r)&&!A.startsWith(i):A.startsWith(b)}function Xe(){let A=new Map;ce.forEach(b=>A.set(new F(b.path+"index.html",Oe(S.href)).href,b.path)),p.querySelectorAll("a[href]").forEach(b=>{let k=hr(b.href),se=A.get(Oe(b.href));se!==void 0&&b.setAttribute("href",o+se+(k||""))})}function wt(A){let b=hr(A);return b&&b.startsWith(o)&&Oe(A)==Oe(S.href)?ue(b).path:B.get(Oe(A))}function Vt(A){let b=Le(A.target);if(b&&b.href){let k=wt(b.href);k!==void 0&&k!=O&&!M.has(k)&&(v(P),P=x(()=>ye(k).catch(()=>{}),T))}}function Le(A){for(;A&&A.tagName!="A";)A=A.parentNode;return A}function ot(){return ae=="fade"?!0:ae=="none"?!1:Array.from(p.styleSheets).some(A=>{try{return Se(A.cssRules)}catch{return!1}})}function Se(A){return Array.from(A).some(b=>b.navigation=="auto"||b.cssRules&&b.cssRules.length&&Se(b.cssRules))}function ct(){return!!(globalThis.matchMedia&&globalThis.matchMedia("(prefers-reduced-motion: reduce)").matches)}function Wt(){let A=N.state;return A&&A.sfzSession==Y&&typeof A.sfzEntry=="number"?A.sfzEntry:null}function Ze(){let A=Z++;try{N.replaceState({sfzSession:Y,sfzEntry:A},"")}catch{}return A}function an(){return{x:globalThis.scrollX,y:globalThis.scrollY,elements:$e()}}function $e(){let A=[];return p.querySelectorAll("*").forEach(b=>{if(b.scrollTop||b.scrollLeft){let k=Ft(b);k&&A.push({path:k,top:b.scrollTop,left:b.scrollLeft})}}),A}function Ot(A){A.forEach(({path:b,top:k,left:se})=>{let le;try{le=p.querySelector(b)}catch{}le&&(le.scrollTop=k,le.scrollLeft=se)})}function Ft(A){let b=[];for(;A&&A.parentElement;){if(A.id&&y)return b.unshift("#"+y.escape(A.id)),b.join(">");let k=A.parentElement;b.unshift(A.tagName+":nth-child("+(Array.from(k.children).indexOf(A)+1)+")"),A=k}return b.join(">")}function ze(A){let b=Ke(A);b&&(Xt(b),b.scrollIntoView())}function Ke(A){let b=decodeURIComponent(A.substring(1)),k=p.getElementById(b);return!k&&y&&(k=p.querySelector("a[name="+y.escape(b)+"]")),k}function Xt(A){let b=Fe(u,l);b&&(A.setAttribute(l,""),C=p.createElement("style"),C.textContent=b,p.head.appendChild(C))}function Ue(){let A=p.createElement("style");A.textContent="a["+f+"]{color:"+h+"}"+Fe(d,f),p.head.appendChild(A),p.querySelectorAll("a[href]").forEach(b=>{let k=wt(b.href);k!==void 0&&z.has(k)&&b.setAttribute(f,"")})}function xt(){let A=p.createElement("style");A.textContent=E,p.head.appendChild(A),p.querySelectorAll("a[href]").forEach(b=>{R.includes(b.protocol)&&B.get(Oe(b.href))===void 0&&Oe(b.href)!=Oe(S.href)&&(b.setAttribute(g,""),b.hasAttribute("title")||b.setAttribute("title",_))})}function Pt(){if(C){let A=p.querySelector("["+l+"]");A&&A.removeAttribute(l),C.remove(),C=void 0}}function Fe(A,b){let k="";return Array.from(p.styleSheets).forEach(se=>{try{k+=Er(se.cssRules,A,b)}catch{}}),k}function Er(A,b,k){let se="";return Array.from(A).forEach(le=>{if(le.cssRules&&le.cssRules.length){let Je=Er(le.cssRules,b,k);Je&&(se+=le.cssText.substring(0,le.cssText.indexOf("{")+1)+Je+"}")}else if(le.selectorText){let Je=le.selectorText.replace(b,"["+k+"]");Je!=le.selectorText&&(se+=Je+"{"+le.style.cssText+"}")}}),se}function os(){let A=p.querySelector("h1")||p.body;A&&(A.setAttribute("tabindex","-1"),A.focus({preventScroll:!0}))}function Oe(A){let b=A.indexOf("#");return b==-1?A:A.substring(0,b)}function hr(A){let b=A.indexOf("#");return b==-1?void 0:A.substring(b)}}var{Blob:aa,fetch:Yg,TextEncoder:mt,TextDecoder:Vg,DOMParser:Pf}=globalThis,ur=new Vg("windows-1252"),Wg=["application/javascript","application/x-javascript","application/ecmascript","application/json","application/ld+json","application/manifest+json","application/xml","application/xhtml+xml","application/rss+xml","application/atom+xml","image/svg+xml"],Xg="text/",Zg=[".jpg",".jpeg",".png",".apng",".gif",".webp",".avif",".heif",".heic",".jxl",".pdf",".woff",".woff2",".mp4",".webm",".avi",".mpeg",".mov",".ts",".ogv",".mp3",".ogg",".oga",".weba",".m4a",".aac",".opus",".flac"],Kg="/lib/single-file-zip.min.js",as=[["<script type=sfz-data>","</script>"],["<style type=sfz-data>","</style>"],["<noframes>","</noframes>"],["<noembed>","</noembed>"],["<iframe>","</iframe>"],["<xmp>","</xmp>"],["<svg><![CDATA[","]]></svg>"],["<plaintext>","</plaintext>"]],ua=[["<!--","-->"],...as],Cf="sfz-data",da=[[/<script/i,/<\/script[\t\n\f\r />]/i],[/<style/i,/<\/style[\t\n\f\r />]/i],[/<noframes/i,/<\/noframes[\t\n\f\r />]/i],[/<noembed/i,/<\/noembed[\t\n\f\r />]/i],[/<iframe/i,/<\/iframe[\t\n\f\r />]/i],[/<xmp/i,/<\/xmp[\t\n\f\r />]/i],[/<!\[CDATA\[/i,/\]\]>/],[/<plaintext/i,/<\/plaintext[\t\n\f\r />]/i]],kf=[[/<!--/i,/--!?>|<!-$/i],...da],oa=new Uint32Array(256).map((t,e)=>{let n=e;for(let r=0;r<8;r++)n=n&1?3988292384^n>>>1:n>>>1;return n}),ss=12,Lf=4,Ea=8,ha=25,qg=2,Uf=65535,jg="page.pdf",Mf=1024,zf=12,vf="<!DOCTYPE html>",$g="SingleFile: the page data contains every HTML tag that could hide an embedded file, the archive was written without its",Jg="PNG image",Qg="PDF document",em=67324752,tm=33639248,nm=101010256,rm=101075792,sm=117853008,Bf=2048,rs=globalThis.browser,Jm=["createRootDirectory","declareAppendedData","disableCompression","embeddedImage","embeddedPdf","extractDataFromPage","includeBOM","insertCanonicalLink","insertMetaCSP","insertMetaNoIndex","insertTextBody","password","preventAppendedData","selfExtractingArchive","url","zipScript"];async function Qm(t,e,n=new Date){let r,i=!!(rs&&rs.runtime&&rs.runtime.getURL);return i?Cn({workerURI:"/lib/single-file-z-worker.js"}):Cn({useWebWorkers:!1}),e.zipScript?r=e.zipScript:i&&(r=await(await Yg(rs.runtime.getURL(Kg))).text()),ga(t,e,r,s=>(t.url=e.url,t.archiveTime=new Date().toISOString(),Zf(s,t,{password:e.password,disableCompression:e.disableCompression},e.createRootDirectory?String(Date.now())+"_"+(e.tabId||0)+"/":"",e.url)),n)}async function ga(t,e,n,r,i=new Date){let s={bufferedWrite:!0,keepOrder:!0,lastModDate:i,useCompressionStream:!0},a=new Fn(new en,s);await r(a);let o=await a.close();return fr(t,e,n,o,s)}async function fr(t,e,n,r,i){let{lastModDate:s}=i,a=new en;a.init();let o,c,l,u,f;e.embeddedImage&&(e.embeddedImage=new Uint8Array(e.embeddedImage));let d;if(e.embeddedImage&&e.selfExtractingArchive&&(d=dm(t,e,s),d||Xf(e,"embeddedImage",Jg)),e.embeddedImage){let T=Wf(e.embeddedImage);if(await ke(a.writable,e.embeddedImage.slice(0,Ea+ha)),e.selfExtractingArchive)u=d.endTag,d.startHTMLData.pdfEntry&&(f=d.startHTMLData.pdfEntry,f.offset+=a.offset+zf),await ke(a.writable,d.htmlData),await ke(a.writable,d.htmlDataCRC);else if(e.embeddedPdf){let w=new Uint8Array([...la(e.embeddedPdf.length+4),116,69,88,116,80,68,70,0,...new Uint8Array(e.embeddedPdf)]);await ke(a.writable,w),await ke(a.writable,ca(w,4))}await ke(a.writable,T),await ke(a.writable,new Uint8Array(4)),l=a.offset,await ke(a.writable,new Uint8Array([116,69,88,116,90,73,80,0])),e.selfExtractingArchive&&await ke(a.writable,new mt().encode(u))}if(e.selfExtractingArchive){let T=await om(t,a,n,e,s);o=T.extraDataOffset,f=f||T.pdfEntry}else!e.embeddedImage&&e.embeddedPdf&&await ke(a.writable,new Uint8Array(e.embeddedPdf));let h=a.offset,g=new Fn({writable:a.writable,size:h},i);if(await g.appendZip(new Qt(r)),f&&(new DataView(f.centralRecord.buffer).setUint32(42,f.offset,!0),await ke(a.writable,f.centralRecord)),await g.close(void 0,{preventClose:!0}),f&&!am(a,f.centralRecord.length))return e.preventEmbeddedPdfEntry=!0,fr(t,e,n,r,i);let E=a.getData(),_=E.length-qg;if(e.selfExtractingArchive){let T=[],w=-1;if(!e.extractDataFromPageTags||e.extractDataFromPageTags[0]!="<plaintext>"){let N=ur.decode(E.subarray(h));if(e.extractDataFromPageTags){let y=um(e.extractDataFromPageTags),F=da[y];if(N.match(F[0])||N.match(F[1]))return fa(N,t,e,n,r,i,y+1)}else{let[y,F]=kf[0];if(N.match(y)||N.match(F))return fa(N,t,e,n,r,i)}}if(e.extractDataFromPage){for(let N=h;N<_;N++){let y=E[N];w=w>>>8^oa[(w^y)&255],y==10?T.push(0):y==13&&(N+1<_&&E[N+1]==10?(N++,w=w>>>8^oa[(w^10)&255],T.push(2)):T.push(1))}w=(w^-1)>>>0}let p="";e.preventAppendedData||(e.extractDataFromPageTags?p+=e.extractDataFromPageTags[1]:p+="-->");let S=e.preventAppendedData||e.embeddedImage?"":"</body></html>";if(e.extractDataFromPage){let N=new Uint32Array(3+Math.ceil(T.length/16));N[0]=w,N[1]=_-h,N[2]=T.length,T.forEach((x,v)=>N[3+(v>>4)]|=x<<(v&15)*2);let y=new Uint8Array(N.length*4),F=new DataView(y.buffer);if(N.forEach((x,v)=>F.setUint32(v*4,x,!0)),c="<sfz-extra-data>"+gm(Ff(y))+"</sfz-extra-data>",e.preventAppendedData||c.length>Uf-p.length-S.length-(e.embeddedImage?ss+Lf:0)){if(!e.extraDataSize)return e.preventAppendedData=!0,e.extraDataSize=Hf(c.length),fr(t,e,n,r,i)}else p+=c}p+=S,await ke(a.writable,new mt().encode(p))}await a.writable.close();let R=await a.getData();if(e.extractDataFromPage&&e.extraDataSize!==void 0)if(e.extraDataSize>=c.length)R.set(new mt().encode(c),h-o);else return e.extraDataSize=Hf(c.length),fr(t,e,n,r,i);if(e.declareAppendedData){let T=R.length-E.length+(e.embeddedImage?Lf+ss:0);T&&T<=Uf&&new DataView(R.buffer,R.byteOffset).setUint16(_,T,!0)}return e.embeddedImage?(R.set(la(a.offset-l-4),l-4),new aa([R,ca(R,l),e.embeddedImage.slice(e.embeddedImage.length-ss)],{type:"application/octet-stream"})):new aa([R],{type:"application/octet-stream"})}function ca(t,e=0){let n=new Uint8Array(4);return Yf(n,Gf(t,e)),n}function Gf(t,e=0){let n=-1;for(;e<t.length;e++)n=n>>>8^oa[(n^t[e])&255];return(n^-1)>>>0}function im(t,e=new Date){let n=new mt().encode(jg),r=Gf(t),i=e.getHours()<<11|e.getMinutes()<<5|e.getSeconds()>>1,s=Math.max(0,e.getFullYear()-1980)<<9|e.getMonth()+1<<5|e.getDate(),a=new Uint8Array(30+n.length),o=new DataView(a.buffer);o.setUint32(0,em,!0),o.setUint16(4,20,!0),o.setUint16(6,Bf,!0),o.setUint16(10,i,!0),o.setUint16(12,s,!0),o.setUint32(14,r,!0),o.setUint32(18,t.length,!0),o.setUint32(22,t.length,!0),o.setUint16(26,n.length,!0),a.set(n,30);let c=new Uint8Array(46+n.length),l=new DataView(c.buffer);return l.setUint32(0,tm,!0),l.setUint16(4,768,!0),l.setUint16(6,20,!0),l.setUint16(8,Bf,!0),l.setUint16(12,i,!0),l.setUint16(14,s,!0),l.setUint32(16,r,!0),l.setUint32(20,t.length,!0),l.setUint32(24,t.length,!0),l.setUint16(28,n.length,!0),l.setUint32(38,33188<<16,!0),c.set(n,46),{localHeader:a,centralRecord:c}}function am(t,e){let n=new DataView(t.array.buffer),r=t.offset-22;if(n.getUint32(r,!0)!=nm)return!1;let i=n.getUint16(r+8,!0),s=n.getUint16(r+10,!0),a=n.getUint32(r+12,!0),o=r-20,c;if(o>=0&&n.getUint32(o,!0)==sm){if(c=Number(n.getBigUint64(o+8,!0))+e,n.getUint32(c,!0)!=rm)return!1}else if(i+1>=65535||s+1>=65535||a+e>=4294967295)return!1;return i!=65535&&n.setUint16(r+8,i+1,!0),s!=65535&&n.setUint16(r+10,s+1,!0),a!=4294967295&&n.setUint32(r+12,a+e,!0),c!==void 0&&(n.setBigUint64(o+8,BigInt(c),!0),n.setBigUint64(c+24,n.getBigUint64(c+24,!0)+1n,!0),n.setBigUint64(c+32,n.getBigUint64(c+32,!0)+1n,!0),n.setBigUint64(c+40,n.getBigUint64(c+40,!0)+BigInt(e),!0)),!0}function Ln(t){return t.toString().replace(/^[ \t]*\/\/.*$/gm,"").replace(/\n|\t/g,"")}function Hf(t){return Math.ceil(t*1.01)+32}function la(t){let e=new Uint8Array(4);return Yf(e,t),e}function Yf(t,e){t[0]=e>>24,t[1]=e>>16,t[2]=e>>8,t[3]=e}async function om(t,e,n,r,i){let s="",a;if(!r.embeddedImage){let f=Vf(t,r,i);f.pdfEntry&&(a=f.pdfEntry,a.offset+=e.offset),await ke(e.writable,f.htmlArray)}if(s+="<div id=sfz-wait-message>Please wait...</div>",r.extractDataFromPage?(s+="<div id=sfz-error-message><strong>Error</strong>: Cannot extract the data of the page.",s+=' The file is still a valid ZIP file, you can rename it with a "zip" extension and unzip it to display the page and its resources.</div>'):(s+="<div id=sfz-error-message><strong>Error</strong>: Cannot open the page from the filesystem.",s+="<ul style='line-height:20px;'>",s+=`<li style='margin-bottom:10px'><strong>Chrome/Edge/Brave</strong>: Install <a href='https://www.getsinglefile.com'>SingleFile</a> and enable the option "Allow access to file URLs" in the details page of the extension.</li>`,s+='<li><strong>Safari</strong>: Select "Security > Disable Local File Restrictions" in the "Develop > Developer settings" menu.</li></ul></div>'),t.tocContent&&(s+=t.tocContent),r.insertTextBody&&!r.password){let f=new Pf().parseFromString(t.content,"text/html");f.body.querySelectorAll("style, script, noscript").forEach(h=>h.remove());let d="";r.extractDataFromPage&&(d+=(t.title||"")+`
|
|
2
2
|
|
|
3
|
-
`),
|
|
4
|
-
`+
|
|
3
|
+
`),d+=f.body.innerText,f.body.querySelectorAll("single-file-note").forEach(h=>{let g=h.querySelector("template");if(g){let E=new Pf().parseFromString(g.innerHTML,"text/html");d+=`
|
|
4
|
+
`+E.body.querySelector("textarea").value}}),d=d.replace(/</g,"<").replace(/>/g,">").replace(/\n +/g,`
|
|
5
5
|
`).replace(/\n\n\n+/g,`
|
|
6
6
|
|
|
7
7
|
`).trim(),s+=`
|
|
8
8
|
<main hidden>
|
|
9
|
-
`+
|
|
9
|
+
`+d+`
|
|
10
10
|
</main>
|
|
11
|
-
`}let o={insertEmbeddedImage:!!r.embeddedImage,insertEmbeddedScreenshotImage:!!r.embeddedScreenshotImage},c=r.multiPageArchive?"("+Cn(bf)+")(content,{extract:"+Cn(na)+",display:"+Cn(ra)+"})":"("+Cn(na)+")(content,{prompt}).then(({docContent}) => "+Cn(ra)+"(document,docContent,"+JSON.stringify(o)+"))";n="<script>"+n+"document.currentScript.remove();globalThis.bootstrap=(()=>{let bootstrapStarted;return async content=>{if (bootstrapStarted) return bootstrapStarted; bootstrapStarted = "+c+";return bootstrapStarted;}})();("+Cn(fm)+')().then(globalThis.bootstrap).then(() => document.dispatchEvent(new CustomEvent("single-file-display-infobar"))).catch(error => {console.error(error);const waitMessage = document.getElementById("sfz-wait-message");if (waitMessage) { waitMessage.remove(); }const errorMessage = document.getElementById("sfz-error-message");if (errorMessage) { errorMessage.hidden = false; document.body.hidden = false; }});</script>',s+=n;let l="";if(r.extractDataFromPage&&r.extraDataSize){let d="<sfz-extra-data></sfz-extra-data>";l+=d+new Array(r.extraDataSize-d.length).fill(" ").join("")}s+=l;let u=im(r.extractDataFromPageTags||ua[0]);s+=u;let f=u.length+l.length;return await ze(e.writable,new bt().encode(s)),{extraDataOffset:f,pdfEntry:a}}function im([t]){if(t=="<!--")return t+Ff;let e=t.indexOf(">");return t.slice(0,e)+" id="+Ff+t.slice(e)}function Hf(t,e,n,r=""){let i="";e.includeBOM&&!e.extractDataFromPage&&!e.embeddedImage&&(i="\uFEFF");let s=e.embeddedImage?"":t.doctype,o="<html data-sfz><meta charset="+(e.extractDataFromPage?"windows-1252":"utf-8")+">",c=i+s+o,l=t.comment&&!e.embeddedImage&&!e.password?"<!--"+t.comment+"-->":"",u=am(t,e),f,d;if(e.embeddedPdf){let h=new Uint8Array(e.embeddedPdf);d=e.preventEmbeddedPdfEntry?void 0:nm(h,n);let g=d?d.localHeader:new Uint8Array(0),E=ss.decode(g)+ss.decode(h),m=fa(E);if(m==-1)kf(e,"embeddedPdf",jg),d=void 0;else{let[p,T]=ua[m],_=new bt().encode(c+p);_.length+g.length>Xg&&(_=new bt().encode(i+Zg+o+p));let R=new bt().encode(T+l+u+r);f=new Uint8Array(_.length+g.length+h.length+R.length),f.set(_),f.set(g,_.length),f.set(h,_.length+g.length),f.set(R,_.length+g.length+h.length),d&&(d.offset=_.length)}}return e.embeddedPdf||(f=new bt().encode(c+l+u+r)),{htmlArray:f,pdfEntry:d}}function am(t,e){let n="",r=e.password?"":is(t.title||"");return n+="<title>"+r+"</title>",e.insertCanonicalLink&&!e.password&&(n+='<link rel=canonical href="'+e.url+'">'),e.insertMetaNoIndex&&(n+="<meta name=robots content=noindex>"),t.viewport&&(n+="<meta name=viewport content="+JSON.stringify(t.viewport)+">"),e.insertMetaCSP&&(n+=`<meta http-equiv=content-security-policy content=${JSON.stringify("default-src 'none';connect-src 'self' data: blob:;font-src 'self' data: blob:;img-src 'self' data: blob:;style-src 'self' 'unsafe-inline' data: blob:;frame-src 'self' data: blob:;media-src 'self' data: blob:;script-src 'self' 'unsafe-inline' data: blob:;object-src 'self' data: blob:")}>`),n+="<style>@keyframes display-wait-message{0%{opacity:0}100%{opacity:1}}body{color:transparent}div{color:initial}body>:not(#sfz-wait-message,#sfz-error-message){display:none}</style>",n+="<body hidden>",n}function is(t){return Array.from(t).map(e=>{let n=e.codePointAt(0);return n<32||n>126||e=="&"||e=="<"||e==">"||e=='"'?"&#"+n+";":e}).join("")}function om(t){let e=fr.findIndex(([n])=>n==t[0]);if(e==-1)throw new Error("Unknown data tags: "+t[0]);return e}function la(t,e,n,r,i,s,a=0){let o=da[a];return!(fr[a][0]=="<plaintext>")&&(t.match(o[0])||t.match(o[1]))?a<fr.length-1?la(t,e,n,r,i,s,a+1):(n.extractDataFromPage=!1,Ot(e,n,r,i,s)):(n.extractDataFromPageTags=fr[a],n.extractDataFromPageTags[0]=="<plaintext>"&&(n.preventAppendedData=!0),Ot(e,n,r,i,s))}function fa(t,e=0){let n=Lf.slice(e,-1).findIndex(([r,i])=>!t.match(r)&&!t.match(i));return n==-1?-1:n+e}function cm(t,e,n){let r=ss.decode(zf(e.embeddedImage)),i=fa(r);for(;i!=-1;){let[s,a]=ua[i],o=Hf(t,e,n,s),c=new Uint8Array([...ca(o.htmlArray.length+4),116,69,88,116,80,78,71,0,...o.htmlArray]),l=oa(c,4);if(i==0&&(l[0]==62||l[0]==45&&l[1]==62))i=fa(r,i+1);else return{endTag:a,startHTMLData:o,htmlData:c,htmlDataCRC:l}}}function zf(t){return t.slice(Uf+vf,t.length-rs)}function kf(t,e,n){delete t[e],console.warn(Kg,n)}async function ze(t,e){let n=t.getWriter();await n.ready,await n.write(e),n.releaseLock()}async function Gf(t,e,n,r,i){let s={};for(let o of Object.keys(e.resources))for(let c of e.resources[o])c.password=n.password,c.url&&!c.url.startsWith("data:")&&(s[c.name]=c.url);let a=JSON.stringify({originalUrl:e.url,title:e.title,archiveTime:e.archiveTime,indexFilename:"index.html",resources:s},null,2);await Promise.all([Promise.all([sa(t,r,{name:"index.html",extension:".html",content:e.content,url:i,password:n.password},n.disableCompression),sa(t,r,{name:"manifest.json",extension:".json",content:a,password:n.password},n.disableCompression)]),Promise.all(Object.keys(e.resources).map(async o=>Promise.all(e.resources[o].map(c=>o=="frames"?Gf(t,c,n,r+c.name,c.url):sa(t,r,c,n.disableCompression)))))])}async function sa(t,e,n,r){let i=typeof n.content=="string"?new Yt(n.content):new Dt(new ia([new Uint8Array(n.content)])),s={password:n.password,bufferedWrite:!0};n.password||(s.comment=n.url&&n.url.startsWith("data:")?"data:":n.url),(r||!lm(n.contentType)&&Gg.includes(n.extension))&&(s.level=0),await t.add(e+n.name,i,s)}function lm(t){return!!t&&(t.startsWith(kg)||zg.includes(t))}async function fm(){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",e="sfz-data",{Blob:n,XMLHttpRequest:r,NodeFilter:i,document:s,zip:a,location:o}=globalThis,c=new Map([[65533,0],[8364,128],[8218,130],[402,131],[8222,132],[8230,133],[8224,134],[8225,135],[710,136],[8240,137],[352,138],[8249,139],[338,140],[381,142],[8216,145],[8217,146],[8220,147],[8221,148],[8226,149],[8211,150],[8212,151],[732,152],[8482,153],[353,154],[8250,155],[339,156],[382,158],[376,159]]),l=new Uint32Array(256).map((E,m)=>{let p=m;for(let T=0;T<8;T++)p=p&1?3988292384^p>>>1:p>>>1;return p});return new Promise((E,m)=>{let p=!1;o.protocol=="file:"?T():_();async function T(){try{await u(s),s.body.querySelectorAll("meta, style").forEach(A=>s.head.appendChild(A));let R=d();f("sfz-wait-message",2),E(R)}catch(R){console.error(R),f("sfz-error-message",2),m(R)}}function _(){let R=new r;R.responseType="blob",R.open("GET",""),R.onerror=()=>T(),R.send(),R.onreadystatechange=()=>{if(R.readyState===2&&!p)if(R.status===200){p=!0;let A=R.getResponseHeader("Accept-Ranges")==="bytes";R.abort(),f("sfz-wait-message",2,!0),A?E(new a.HttpRangeReader(o.href,{useXHR:!0,combineSizeEocd:!0})):_()}else R.abort(),T()},p&&(R.onload=()=>E(R.response))}});function u(E){return new Promise(m=>{E.readyState==="complete"||E.readyState==="interactive"?m():E.addEventListener("DOMContentLoaded",()=>m())})}function f(E,m=0,p){let T=s.getElementById(E);T&&(Array.from(s.body.childNodes).forEach(_=>{_.id!=E&&(_.id=="sfz-wait-message"||_.id=="sfz-error-message"?_.hidden=!0:p||_.remove())}),T.hidden=!1,s.body.hidden=!1,T.style="opacity: 0; animation: 0s linear "+m+"s display-wait-message 1 normal forwards")}function d(){let E=s.querySelector("sfz-extra-data");if(E){let m=a.inflateRaw(g(E.textContent)),p=new Uint32Array(m.buffer,m.byteOffset,m.length>>2),T=s.getElementById(e);if(T)return h(T,p,0);let _=s.createTreeWalker(s.body,i.SHOW_COMMENT);for(;_.nextNode();)if(_.currentNode.data.startsWith(e))return h(_.currentNode,p,e.length)}throw new Error("Extra zip data not found")}function h(E,m,p){let T=m[0],_=m[1],R=m[2],A=new Uint8Array(_+2),{textContent:O}=E,S=0,F=0,P=-1;for(let v=p;v<O.length&&S<_;v++){let M=O.charCodeAt(v);if(M==10){let G=m[3+(F>>4)]>>>(F&15)*2&3;F++,G==0?H(10):(H(13),G==2&&H(10))}else H(M>255?c.get(M):M)}if(P=(P^-1)>>>0,S!=_||F!=R||P!=T)throw new Error("Invalid checksum of the extracted zip data");return new n([A],{type:"application/octet-stream"});function H(v){A[S]=v,P=P>>>8^l[(P^v)&255],S++}}function g(E){E=String(E).replace(/[^A-Za-z0-9+/=]/g,"");let m=E.length,p=[];for(let T=0;T<m;T+=4){let _=t.indexOf(E[T]),R=t.indexOf(E[T+1]),A=t.indexOf(E[T+2]),O=t.indexOf(E[T+3]),S=_<<18|R<<12|(A&63)<<6|O&63;p.push(S>>16&255),E[T+2]!=="="&&p.push(S>>8&255),E[T+3]!=="="&&p.push(S&255)}return new Uint8Array(p)}}var Nt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function um(t){let e="",n=t.length,r=0;for(;r+2<n;r+=3){let s=t[r]<<16|t[r+1]<<8|t[r+2];e+=Nt[s>>18&63]+Nt[s>>12&63]+Nt[s>>6&63]+Nt[s&63]}let i=n-r;if(i===1){let s=t[r]<<16;e+=Nt[s>>18&63]+Nt[s>>12&63]+"=="}else if(i===2){let s=t[r]<<16|t[r+1]<<8;e+=Nt[s>>18&63]+Nt[s>>12&63]+Nt[s>>6&63]+"="}return e}var Ea=globalThis.browser,dm="pages/",Em="sfz-pages.json",hm="sfz-toc.html",ha="Table of contents",gm="body{font-family:system-ui,sans-serif;margin:2em auto;max-width:40em;padding:0 1em;background-color:#fff;color:#000}a{color:#0000ee}a:visited{color:#551a8b}summary{cursor:pointer;font-weight:bold;margin:.5em 0}details{padding-left:1em}ul{margin:.25em 0;padding-left:1.5em}@media(prefers-color-scheme:dark){body{background-color:#111;color:#eee}a{color:#8ab4f8}a:visited{color:#c58af9}}",mm="Page saved with SingleFile",wm=41471;async function Qm(t,e){Ea&&Ea.runtime&&Ea.runtime.getURL?Pn({workerURI:"/lib/single-file-z-worker.js",workerStartupTimeout:2e3}):Pn({useWebWorkers:!1});let n={pages:t.map((c,l)=>({path:Yf(l),url:c.url,originalUrls:c.originalUrls,title:c.title}))};e.markUnarchivedLinks&&(n.markUnarchivedLinks=!0),e.pageTransitions&&e.pageTransitions!="auto"&&(n.pageTransitions=e.pageTransitions);let r={doctype:"<!DOCTYPE html>",content:"",title:t[0].title||"",comment:e.insertSingleFileComment?Rm(t[0].url,e):void 0,tocContent:e.pageList?ym(t):void 0},i={url:t[0].url,multiPageArchive:!0,selfExtractingArchive:e.selfExtractingArchive,extractDataFromPage:e.extractDataFromPage,preventAppendedData:e.preventAppendedData,declareAppendedData:e.declareAppendedData,embeddedPdf:e.embeddedPdf,embeddedImage:e.embeddedImage,includeBOM:e.includeBOM,insertMetaCSP:e.insertMetaCSP,insertCanonicalLink:e.insertCanonicalLink,insertMetaNoIndex:e.insertMetaNoIndex},s=e.dedupPages?new Map:void 0,a={},o=await Ot(r,i,e.zipScript,async c=>{for(let l=0;l<t.length;l++){let u=Yf(l),f=new On(new Jn(await t[l].getData()));for(let d of await f.getEntries()){let h=u+d.filename,g=await d.getData(new Nn,{passThrough:!0,checkSignature:!1}),E=s&&_m(s,h,d,g);E===void 0?await c.add(h,new Jn(g),{passThrough:!0,compressionMethod:d.compressionMethod,uncompressedSize:d.uncompressedSize,signature:d.signature,comment:d.comment,lastModDate:d.lastModDate}):(a[h]=E,await c.add(h,new Yt(pm(h,E)),{msDosCompatible:!1,unixMode:wm,level:0,comment:d.comment,lastModDate:d.lastModDate}))}await f.close()}Object.keys(a).length&&(n.aliases=a),e.tocPage&&await c.add(hm,new Yt(Am(n.pages))),await c.add(Em,new Yt(JSON.stringify(n,null,2)))});return new Uint8Array(await o.arrayBuffer())}function _m(t,e,n,r){if(n.directory||!n.uncompressedSize)return;let i=[n.compressionMethod,n.uncompressedSize,n.signature,r.length].join(":"),s=t.get(i);if(s){let a=s.find(o=>Tm(o.rawData,r));if(a)return a.filename;s.push({filename:e,rawData:r})}else t.set(i,[{filename:e,rawData:r}])}function Tm(t,e){return t.length==e.length&&t.every((n,r)=>n==e[r])}function pm(t,e){let n=t.split("/").slice(0,-1),r=e.split("/");for(;n.length&&r.length>1&&n[0]==r[0];)n.shift(),r.shift();return"../".repeat(n.length)+r.join("/")}function Yf(t){return t==0?"":dm+(t+1)+"/"}function Rm(t,e){return`
|
|
12
|
-
`+
|
|
11
|
+
`}let o=r.multiPageArchive?"("+Ln(xf)+")(content,{extract:"+Ln(ra)+",display:"+Ln(sa)+"})":"("+Ln(ra)+")(content,{prompt}).then(({docContent}) => "+Ln(sa)+"(document,docContent))";n="<script>"+n+"document.currentScript.remove();globalThis.bootstrap=(()=>{let bootstrapStarted;return async content=>{if (bootstrapStarted) return bootstrapStarted; bootstrapStarted = "+o+";return bootstrapStarted;}})();("+Ln(hm)+')().then(globalThis.bootstrap).then(() => document.dispatchEvent(new CustomEvent("single-file-display-infobar"))).catch(error => {console.error(error);const waitMessage = document.getElementById("sfz-wait-message");if (waitMessage) { waitMessage.remove(); }const errorMessage = document.getElementById("sfz-error-message");if (errorMessage) { errorMessage.hidden = false; document.body.hidden = false; }});</script>',s+=n;let c="";if(r.extractDataFromPage&&r.extraDataSize){let f="<sfz-extra-data></sfz-extra-data>";c+=f+new Array(r.extraDataSize-f.length).fill(" ").join("")}s+=c;let l=cm(r.extractDataFromPageTags||ua[0]);s+=l;let u=l.length+c.length;return await ke(e.writable,new mt().encode(s)),{extraDataOffset:u,pdfEntry:a}}function cm([t]){if(t=="<!--")return t+Cf;let e=t.indexOf(">");return t.slice(0,e)+" id="+Cf+t.slice(e)}function Vf(t,e,n,r=""){let i="";e.includeBOM&&!e.extractDataFromPage&&!e.embeddedImage&&(i="\uFEFF");let s=e.embeddedImage?"":t.doctype,o="<html data-sfz><meta charset="+(e.extractDataFromPage?"windows-1252":"utf-8")+">",c=e.embeddedImage?Ea+ha+zf:0,l=i+s+o;c+new mt().encode(l).length>Mf&&(l=i+vf+o);let u=t.comment&&!e.embeddedImage&&!e.password?"<!--"+fm(t.comment)+"-->":"",f=lm(t,e),d,h;if(e.embeddedPdf){let g=new Uint8Array(e.embeddedPdf);h=e.preventEmbeddedPdfEntry?void 0:im(g,n);let E=h?h.localHeader:new Uint8Array(0),_=ur.decode(E)+ur.decode(g),R=is(_);if(R==-1)Xf(e,"embeddedPdf",Qg),h=void 0;else{let[T,w]=ua[R],p=new mt().encode(l+T);c+p.length+E.length>Mf&&(p=new mt().encode(i+vf+o+T));let S=new mt().encode(w+u+f+r);d=new Uint8Array(p.length+E.length+g.length+S.length),d.set(p),d.set(E,p.length),d.set(g,p.length+E.length),d.set(S,p.length+E.length+g.length),h&&(h.offset=p.length)}}return e.embeddedPdf||(d=new mt().encode(l+u+f+r)),{htmlArray:d,pdfEntry:h}}function lm(t,e){let n="",r=e.password?"":Un(t.title||"");return n+="<title>"+r+"</title>",e.insertCanonicalLink&&!e.password&&(n+='<link rel=canonical href="'+Un(e.url)+'">'),e.insertMetaNoIndex&&(n+="<meta name=robots content=noindex>"),t.viewport&&(n+='<meta name=viewport content="'+Un(t.viewport)+'">'),e.insertMetaCSP&&(n+=`<meta http-equiv=content-security-policy content=${JSON.stringify("default-src 'none';connect-src 'self' data: blob:;font-src 'self' data: blob:;img-src 'self' data: blob:;style-src 'self' 'unsafe-inline' data: blob:;frame-src 'self' data: blob:;media-src 'self' data: blob:;script-src 'self' 'unsafe-inline' data: blob:;object-src 'self' data: blob:;form-action 'none';base-uri 'none'")}>`),n+="<style>@keyframes display-wait-message{0%{opacity:0}100%{opacity:1}}body{color:transparent}div{color:initial}body>:not(#sfz-wait-message,#sfz-error-message){display:none}</style>",n+="<body hidden>",n}function fm(t){let e=t.replace(/--(!?)>/g,"--$1 >");return(e.startsWith(">")||e.startsWith("->"))&&(e=" "+e),e.endsWith("<!-")&&(e+=" "),e}function Un(t){return Array.from(t).map(e=>{let n=e.codePointAt(0);return n<32||n>126||e=="&"||e=="<"||e==">"||e=='"'?"&#"+n+";":e}).join("")}function um(t){let e=as.findIndex(([n])=>n==t[0]);if(e==-1)throw new Error("Unknown data tags: "+t[0]);return e}function fa(t,e,n,r,i,s,a=0){let o=da[a];return!(as[a][0]=="<plaintext>")&&(t.match(o[0])||t.match(o[1]))?fa(t,e,n,r,i,s,a+1):(n.extractDataFromPageTags=as[a],n.extractDataFromPageTags[0]=="<plaintext>"&&(n.preventAppendedData=!0),fr(e,n,r,i,s))}function is(t,e=0){let n=kf.slice(e,-1).findIndex(([r,i])=>!t.match(r)&&!t.match(i));return n==-1?-1:n+e}function dm(t,e,n){let r=ur.decode(Wf(e.embeddedImage)),i=is(r);for(;i!=-1;){let[s,a]=ua[i],o=Vf(t,e,n,s),c=new Uint8Array([...la(o.htmlArray.length+4),116,69,88,116,80,78,71,0,...o.htmlArray]),l=ca(c,4),u=ur.decode(l)+r;if(i==0&&(l[0]==62||l[0]==45&&l[1]==62)||is(u,i)!=i)i=is(r,i+1);else return{endTag:a,startHTMLData:o,htmlData:c,htmlDataCRC:l}}}function Wf(t){return t.slice(Ea+ha,t.length-ss)}function Xf(t,e,n){delete t[e],console.warn($g,n)}async function ke(t,e){let n=t.getWriter();await n.ready,await n.write(e),n.releaseLock()}async function Zf(t,e,n,r,i){let s={};for(let o of Object.keys(e.resources))for(let c of e.resources[o])c.password=n.password,c.url&&!c.url.startsWith("data:")&&(s[c.name]=c.url);let a=JSON.stringify({originalUrl:e.url,title:e.title,archiveTime:e.archiveTime,indexFilename:"index.html",resources:s},null,2);await Promise.all([Promise.all([ia(t,r,{name:"index.html",extension:".html",content:e.content,url:i,password:n.password},n.disableCompression),ia(t,r,{name:"manifest.json",extension:".json",content:a,password:n.password},n.disableCompression)]),Promise.all(Object.keys(e.resources).map(async o=>Promise.all(e.resources[o].map(c=>o=="frames"?Zf(t,c,n,r+c.name,c.url):ia(t,r,c,n.disableCompression)))))])}async function ia(t,e,n,r){let i=typeof n.content=="string"?new Gt(n.content):new Nt(new aa([new Uint8Array(n.content)])),s={password:n.password,bufferedWrite:!0};n.password||(s.comment=n.url&&n.url.startsWith("data:")?"data:":n.url),(r||!Em(n.contentType)&&Zg.includes(n.extension))&&(s.level=0),await t.add(e+n.name,i,s)}function Em(t){return!!t&&(t.startsWith(Xg)||Wg.includes(t))}async function hm(){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",e="sfz-data",{Blob:n,XMLHttpRequest:r,NodeFilter:i,document:s,zip:a,location:o}=globalThis,c=new Map([[65533,0],[8364,128],[8218,130],[402,131],[8222,132],[8230,133],[8224,134],[8225,135],[710,136],[8240,137],[352,138],[8249,139],[338,140],[381,142],[8216,145],[8217,146],[8220,147],[8221,148],[8226,149],[8211,150],[8212,151],[732,152],[8482,153],[353,154],[8250,155],[339,156],[382,158],[376,159]]),l=new Uint32Array(256).map((E,_)=>{let R=_;for(let T=0;T<8;T++)R=R&1?3988292384^R>>>1:R>>>1;return R});return new Promise((E,_)=>{let R=!1;o.protocol=="file:"?T():w();async function T(){try{await u(s),s.body.querySelectorAll("meta, style").forEach(S=>s.head.appendChild(S));let p=d();f("sfz-wait-message",2),E(p)}catch(p){console.error(p),f("sfz-error-message",2),_(p)}}function w(){let p=new r;p.responseType="blob",p.open("GET",""),p.onerror=()=>T(),p.send(),p.onreadystatechange=()=>{if(p.readyState===2&&!R)if(p.status===200){R=!0;let S=p.getResponseHeader("Accept-Ranges")==="bytes";p.abort(),f("sfz-wait-message",2,!0),S?E(new a.HttpRangeReader(o.href,{useXHR:!0,combineSizeEocd:!0})):w()}else p.abort(),T()},R&&(p.onload=()=>E(p.response))}});function u(E){return new Promise(_=>{E.readyState==="complete"||E.readyState==="interactive"?_():E.addEventListener("DOMContentLoaded",()=>_())})}function f(E,_=0,R){let T=s.getElementById(E);T&&(Array.from(s.body.childNodes).forEach(w=>{w.id!=E&&(w.id=="sfz-wait-message"||w.id=="sfz-error-message"?w.hidden=!0:R||w.remove())}),T.hidden=!1,s.body.hidden=!1,T.style="opacity: 0; animation: 0s linear "+_+"s display-wait-message 1 normal forwards")}function d(){let E=s.querySelector("sfz-extra-data");if(E){let _=a.inflateRaw(g(E.textContent)),R=new DataView(_.buffer,_.byteOffset,_.length&-4),T=s.getElementById(e);if(T)return h(T,R,0);let w=s.createTreeWalker(s,i.SHOW_COMMENT);for(;w.nextNode();)if(w.currentNode.data.startsWith(e))return h(w.currentNode,R,e.length)}throw new Error("Extra zip data not found")}function h(E,_,R){let T=_.getUint32(0,!0),w=_.getUint32(4,!0),p=_.getUint32(8,!0),S=new Uint8Array(w+2),{textContent:N}=E,y=0,F=0,x=-1;for(let M=R;M<N.length&&y<w;M++){let B=N.charCodeAt(M);if(B==10){let G=_.getUint32(12+(F>>4)*4,!0)>>>(F&15)*2&3;if(F++,G==3)throw new Error("Unsupported newline code in the extracted zip data");G==0?v(10):(v(13),G==2&&v(10))}else v(B>255?c.get(B):B)}if(x=(x^-1)>>>0,y!=w||F!=p||x!=T)throw new Error("Invalid checksum of the extracted zip data");return new n([S],{type:"application/octet-stream"});function v(M){S[y]=M,x=x>>>8^l[(x^M)&255],y++}}function g(E){E=String(E).replace(/[^A-Za-z0-9+/=]/g,"");let _=E.length,R=[];for(let T=0;T<_;T+=4){let w=t.indexOf(E[T]),p=t.indexOf(E[T+1]),S=t.indexOf(E[T+2]),N=t.indexOf(E[T+3]),y=w<<18|p<<12|(S&63)<<6|N&63;R.push(y>>16&255),E[T+2]!=="="&&R.push(y>>8&255),E[T+3]!=="="&&R.push(y&255)}return new Uint8Array(R)}}var bt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function gm(t){let e="",n=t.length,r=0;for(;r+2<n;r+=3){let s=t[r]<<16|t[r+1]<<8|t[r+2];e+=bt[s>>18&63]+bt[s>>12&63]+bt[s>>6&63]+bt[s&63]}let i=n-r;if(i===1){let s=t[r]<<16;e+=bt[s>>18&63]+bt[s>>12&63]+"=="}else if(i===2){let s=t[r]<<16|t[r+1]<<8;e+=bt[s>>18&63]+bt[s>>12&63]+bt[s>>6&63]+"="}return e}var ma=globalThis.browser,mm="pages/",wm="sfz-pages.json",_m="sfz-toc.html",wa="Table of contents",Tm="body{font-family:system-ui,sans-serif;margin:2em auto;max-width:40em;padding:0 1em;background-color:#fff;color:#000}a{color:#0000ee}a:visited{color:#551a8b}summary{cursor:pointer;font-weight:bold;margin:.5em 0}details{padding-left:1em}ul{margin:.25em 0;padding-left:1.5em}@media(prefers-color-scheme:dark){body{background-color:#111;color:#eee}a{color:#8ab4f8}a:visited{color:#c58af9}}",pm="Page saved with SingleFile",Rm=41471;async function rw(t,e){ma&&ma.runtime&&ma.runtime.getURL?Cn({workerURI:"/lib/single-file-z-worker.js",workerStartupTimeout:2e3}):Cn({useWebWorkers:!1});let n={pages:t.map((c,l)=>({path:Kf(l),url:c.url,originalUrls:c.originalUrls,title:c.title}))};e.markUnarchivedLinks&&(n.markUnarchivedLinks=!0),e.pageTransitions&&e.pageTransitions!="auto"&&(n.pageTransitions=e.pageTransitions);let r={doctype:"<!DOCTYPE html>",content:"",title:t[0].title||"",comment:e.insertSingleFileComment?Im(t[0].url,e):void 0,tocContent:e.pageList?Nm(t):void 0},i={url:t[0].url,multiPageArchive:!0,selfExtractingArchive:e.selfExtractingArchive,extractDataFromPage:e.extractDataFromPage,preventAppendedData:e.preventAppendedData,declareAppendedData:e.declareAppendedData,embeddedPdf:e.embeddedPdf,embeddedImage:e.embeddedImage,includeBOM:e.includeBOM,insertMetaCSP:e.insertMetaCSP,insertCanonicalLink:e.insertCanonicalLink,insertMetaNoIndex:e.insertMetaNoIndex},s=e.dedupPages?new Map:void 0,a={},o=await ga(r,i,e.zipScript,async c=>{for(let l=0;l<t.length;l++){let u=Kf(l),f=new On(new Qt(await t[l].getData()));for(let d of await f.getEntries()){let h=u+d.filename,g=await d.getData(new en,{passThrough:!0,checkSignature:!1}),E=s&&Am(s,h,d,g);E===void 0?await c.add(h,new Qt(g),{passThrough:!0,compressionMethod:d.compressionMethod,uncompressedSize:d.uncompressedSize,signature:d.signature,comment:d.comment,lastModDate:d.lastModDate}):(a[h]=E,await c.add(h,new Gt(Sm(h,E)),{msDosCompatible:!1,unixMode:Rm,level:0,comment:d.comment,lastModDate:d.lastModDate}))}await f.close()}Object.keys(a).length&&(n.aliases=a),e.tocPage&&await c.add(_m,new Gt(Dm(n.pages))),await c.add(wm,new Gt(JSON.stringify(n,null,2)))});return new Uint8Array(await o.arrayBuffer())}function Am(t,e,n,r){if(n.directory||!n.uncompressedSize)return;let i=[n.compressionMethod,n.uncompressedSize,n.signature,r.length].join(":"),s=t.get(i);if(s){let a=s.find(o=>ym(o.rawData,r));if(a)return a.filename;s.push({filename:e,rawData:r})}else t.set(i,[{filename:e,rawData:r}])}function ym(t,e){return t.length==e.length&&t.every((n,r)=>n==e[r])}function Sm(t,e){let n=t.split("/").slice(0,-1),r=e.split("/");for(;n.length&&r.length>1&&n[0]==r[0];)n.shift(),r.shift();return"../".repeat(n.length)+r.join("/")}function Kf(t){return t==0?"":mm+(t+1)+"/"}function Im(t,e){return`
|
|
12
|
+
`+pm+`
|
|
13
13
|
url: `+t+(e.removeSavedDate?" ":`
|
|
14
14
|
saved date: `+new Date)+`
|
|
15
|
-
`}function
|
|
15
|
+
`}function Dm(t){let e=new Set(t.map(i=>new URL(i.url).origin)),n={groups:new Map,pages:[]};t.forEach(i=>{let s=new URL(i.url),a=s.pathname.split("/").slice(1,-1);e.size>1&&a.unshift(s.origin);let o=n;a.forEach(c=>{o.groups.has(c)||o.groups.set(c,{groups:new Map,pages:[]}),o=o.groups.get(c)}),o.pages.push(i)});let r=t[0].title?wa+" - "+t[0].title:wa;return'<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>'+dr(r)+"</title><style>"+Tm+"</style></head><body><main><h1>"+dr(wa)+"</h1>"+qf(n)+"</main></body></html>"}function qf(t){let e="";return t.pages.length&&(e+="<ul>"+t.pages.map(n=>'<li><a href="'+dr(n.path+"index.html")+'">'+dr(n.title||n.url)+"</a></li>").join("")+"</ul>"),t.groups.forEach((n,r)=>{e+="<details open><summary>"+dr(r)+"</summary>"+qf(n)+"</details>"}),e}function dr(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")}function Nm(t){return"<nav><ul>"+t.map(e=>'<li><a href="'+Un(e.url)+'">'+Un(e.title||e.url)+"</a></li>").join("")+"</ul></nav>"}export{Nt as BlobReader,js as BlobWriter,qa as Data64URIReader,ja as Data64URIWriter,Hl as ERR_AMBIGUOUS_ARCHIVE,kn as ERR_BAD_FORMAT,Cl as ERR_CENTRAL_DIRECTORY_NOT_FOUND,uf as ERR_DUPLICATED_NAME,Ml as ERR_ENCRYPTED,kl as ERR_ENCRYPTED_CENTRAL_DIRECTORY,Bl as ERR_ENTRY_DATA_OUT_OF_BOUNDS,Pl as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,xl as ERR_EOCDR_NOT_FOUND,Ul as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,At as ERR_HTTP_RANGE,Za as ERR_HTTP_RESOURCE_CHANGED,Ac as ERR_INVALID_AUTHENTICATION_CODE,va as ERR_INVALID_CODEC_DEFINITION,Pd as ERR_INVALID_CODEC_MODULE,df as ERR_INVALID_COMMENT,Ah as ERR_INVALID_COMMENT_TYPE,Lc as ERR_INVALID_COMPRESSED_DATA,Uc as ERR_INVALID_CRC32,Ih as ERR_INVALID_DATE,Nh as ERR_INVALID_ENCRYPTION_STRENGTH,yh as ERR_INVALID_ENTRY_COMMENT,Sh as ERR_INVALID_ENTRY_COMMENT_TYPE,Dh as ERR_INVALID_ENTRY_NAME,Fh as ERR_INVALID_EXTRAFIELD,Qi as ERR_INVALID_EXTRAFIELD_DATA,Ph as ERR_INVALID_EXTRAFIELD_DATA_TYPE,xh as ERR_INVALID_EXTRAFIELD_TYPE,Yl as ERR_INVALID_FILENAME_VALIDATION,qu as ERR_INVALID_FUNCTION_OPTION,Hh as ERR_INVALID_GID,Wh as ERR_INVALID_LEVEL,Vl as ERR_INVALID_MAX_APPENDED_DATA_SIZE,Qu as ERR_INVALID_MAX_WORKERS,Yh as ERR_INVALID_MSDOS_ATTRIBUTES,Vh as ERR_INVALID_MSDOS_DATA,bi as ERR_INVALID_PASSWORD,$u as ERR_INVALID_PASSWORD_TYPE,ju as ERR_INVALID_SIGNAL,Oi as ERR_INVALID_SIGNATURE,Xh as ERR_INVALID_SIGNATURE_DATA,Gl as ERR_INVALID_STRICTNESS,Bh as ERR_INVALID_UID,Qr as ERR_INVALID_UNCOMPRESSED_SIZE,zh as ERR_INVALID_UNIX_EXTRA_FIELD_TYPE,Gh as ERR_INVALID_UNIX_ID_SIZE,kh as ERR_INVALID_UNIX_MODE,Ef as ERR_INVALID_VERSION,dE as ERR_ITERATOR_COMPLETED_TOO_SOON,Ll as ERR_LOCAL_FILE_HEADER_NOT_FOUND,vl as ERR_OVERLAPPING_ENTRY,xd as ERR_RESERVED_COMPRESSION_METHOD,ai as ERR_SPLIT_ZIP_FILE,Uh as ERR_UNDEFINED_COMPRESSION_METHOD,Mh as ERR_UNDEFINED_READER,Lh as ERR_UNDEFINED_UNCOMPRESSED_SIZE,Pm as ERR_UNDETERMINED_SIZE,zl as ERR_UNSAFE_FILENAME,ii as ERR_UNSUPPORTED_COMPRESSION,Og as ERR_UNSUPPORTED_CONTEXT,dd as ERR_UNSUPPORTED_CRYPTO_API,si as ERR_UNSUPPORTED_ENCRYPTION,Oh as ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH,bh as ERR_UNSUPPORTED_ENCRYPTION_USDZ,ea as ERR_UNSUPPORTED_FORMAT,Wl as ERR_UNSUPPORTED_UINT64,Li as ERR_WORKER_STARTUP_TIMEOUT,EE as ERR_WRITER_NOT_INITIALIZED,vh as ERR_ZIP_NOT_EMPTY,to as HttpRangeReader,ei as HttpReader,Jm as PROCESS_OPTION_NAMES,Et as Reader,ti as SplitDataReader,ni as SplitDataWriter,Gt as TextReader,$a as TextWriter,Qt as Uint8ArrayReader,en as Uint8ArrayWriter,Um as VERSION,ci as WARNING_APPENDED_DATA,Kl as WARNING_COMPRESSED_PATCHED_DATA,$l as WARNING_DUPLICATE_FILENAME,ji as WARNING_MALFORMED_EXTRA_FIELD,Jl as WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG,Ql as WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD,ef as WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES,zn as WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY,li as WARNING_PREPENDED_DATA,jl as WARNING_TRAILING_CENTRAL_DIRECTORY_DATA,Zl as WARNING_UNKNOWN_VERSION,ql as WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA,Xl as WARNING_UNSORTED_CENTRAL_DIRECTORY,oi as WARNING_WRAPPED_ENTRIES_COUNT,kr as Writer,On as ZipReader,fi as ZipReaderStream,Fn as ZipWriter,Ro as ZipWriterStream,Cn as configure,ga as createArchive,vm as createBlobTempStream,Mm as createOPFSTempStream,rw as createPagesArchive,Bm as createSyncAccessHandleTempStream,Ff as deflateRaw,Un as escapeHTML,Cm as getMimeType,Ld as getRegisteredCodecs,Lm as getSupportedCompressionMethods,Hm as inflateRaw,Be as initStream,rh as isZipFile,Qm as process,_e as readUint8Array,Om as registerCodec,bm as resetConfiguration,xm as terminateWorkers,Fm as unregisterCodec};
|