single-file-cli 2.4.0 → 2.5.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 +35 -30
- package/deno.json +1 -1
- package/dev-build.sh +7 -2
- 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 -0
- package/package.json +1 -1
- package/single-file-cli-api.js +5 -0
- package/test/e2e/compress-content.test.js +93 -0
- package/test/e2e/crawl-save-archive.test.js +6 -0
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
var{Array:je,Object:U,String:da,Number:pe,BigInt:Ce,Math:X,Date:yt,Map:gt,Set:yr,Response:Bf,URL:Sr,Error:S,Uint8Array:Y,Uint16Array:Hf,Uint32Array:Io,DataView:tn,Blob:An,Promise:ge,TextEncoder:Ea,TextDecoder:Ir,crypto:st,btoa:ha,TransformStream:we,ReadableStream:it,WritableStream:at,CompressionStream:ga,DecompressionStream:ma,navigator:Bn,Worker:gr,setTimeout:Xr,clearTimeout:Wr}=typeof globalThis<"u"?globalThis:self,me=4294967295,W=65535,rt=255,xn=8,Yn=9,St=0,Zr=99,Do=67324752,rr=134695760,zf=808471376,No=rr,kf=134630224,bo=84233040,Ut=33639248,Oo=101010256,Ts=101075792,_i=117853008,yn=46,Ie=22,Lt=20,et=56,wa=Ie+Lt+et,Fo=12,xo=20,Kt=4,Mt=4,Kr=1,Po=39169,Co=10,Lo=1,Ti=21589,Gf=28789,Yf=25461,Uo=6534,vo=30837,Mo=30805,Vf=22613,Xf=13,Dr=1,Bo=6,Wf=2,Zf=4,Kf=6,Nr=8,_a=32,Ta=64,br=2048,pa=8192,Or=16,ps=1,Rs=2,As=4,ys=32,En=61440,Hn=16384,Ho=40960,qf=32768,zn=73,mr=420,Ss=2048,Is=1024,Ds=512,jf=10,$f=20,Fr=45,Ra=51,Jf=20,Aa=768,hn="/",Ve=30,Qf=0,Vn=10,sr=14,ir=18,eu=22,tu=24,qt=4,ya=new yt(2107,11,31,23,59,58),xr=new yt(1980,0,1),m=void 0,cn=1/0,It="undefined",De="function",nu="object",Sn="string",ru="number",su="boolean",fe=new Y,iu="filenameEncoding",au="commentEncoding",ou="decodeText",cu="extractPrependedData",lu="extractAppendedData",zo="password",ko="rawPassword",Go="passThrough",Yo="signal",fu="checkPasswordOnly",uu="checkOverlappingEntryOnly",du="checkOverlappingEntry",Eu="checkAmbiguity",hu="checkLocalDirectory",gu="checkSignature",mu="checkCrc32",wu="checkAuthenticationCode",Vo="useWebWorkers",Xo="useCompressionStream",Wo="transferStreams",Zo="preventClose",_u="encryptionStrength",Tu="extendedTimestamp",pu="ntfsTimestamp",Ru="keepOrder",Au="level",yu="bufferedWrite",Su="createTempStream",Iu="dataDescriptorSignature",Du="useUnicodeFileNames",Ko="dataDescriptor",Nu="supportZip64SplitFile",bu="encodeText",Er="offset",Xn="usdz",Ou="unixExtraFieldType",Fu="localExtraField",xu="centralExtraField",Pu="strictness",Cu="filenameValidation",Lu="normalizeFilename",qo="maxAppendedDataSize",Uu="decryptCentralDirectory",vu="signCentralDirectory",jo="filename",$o="comment",nn="strict",pi="balanced",zt="tolerant",Mu="Invalid option (must be a function)",Bu="Invalid signal (must be an AbortSignal instance)",Hu="Invalid password (password must be a string, rawPassword must be a Uint8Array)";function Ri(t){if(t&&typeof t!=De)throw new S(Mu);return t}function Jo(t){if(t&&(typeof t.addEventListener!=De||typeof t.aborted!=su))throw new S(Bu);return t||m}function Qo(t,e){if(t&&typeof t!=Sn||e&&!(e instanceof Y))throw new S(Hu)}function ec(t,e,n){if(!pe.isInteger(t)||t<0||t>e)throw new S(n)}function Un(t,e,n){t!==m&&ec(t,e,n)}function qr(t){return typeof t==Sn&&t.trim()?pe(t):t}var tc=64*1024,zu=64,nc=1,ku="Invalid maxWorkers (must be an integer greater than 0)",rc=2;try{typeof Bn!=It&&Bn.hardwareConcurrency&&(rc=Bn.hardwareConcurrency)}catch{}var Ai={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:tc,maxWorkers:rc,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof ga!=It&&ga,DecompressionStream:typeof ma!=It&&ma},sc="maxWorkers",Gu=["baseURI","wasmURI","workerURI"],Yu=["useCompressionStream","useWebWorkers","transferStreams"],ic=["chunkSize",sc,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],ac=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],oc=[...Gu,...Yu,...ic,...ac],Wn={...Ai};function rn(){return Wn}function yi(t){return cc(t.chunkSize)}function cc(t){return t=qr(t),pe.isInteger(t)&&t>=nc?X.max(t,zu):tc}function ar(t){U.assign(Wn,lc(fc(t)))}function lc(t){let e={};for(let n of oc){let r=t[n];r!==m&&(e[n]=Vu(n,r))}return e}function Vu(t,e){if(ic.includes(t)){if(e=qr(e),t==sc&&(!pe.isInteger(e)||e<nc))throw new S(ku)}else ac.includes(t)&&Ri(e);return e}function fc(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 Xu(t){let e=lc(fc(t));U.assign(Ai,e),U.assign(Wn,e)}function im(){for(let t of oc)delete Wn[t];U.assign(Wn,Ai)}function Bt(t,e){let n=new Y(t.length+e.length);return n.set(t),n.set(e,t.length),n}function uc(t){return t.byteOffset||t.byteLength!=t.buffer.byteLength?new Y(t):t}function K(t){return new tn(t.buffer,t.byteOffset,t.byteLength)}var kn=[[],[],[],[],[],[],[],[]];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;kn[0][t]=e}for(let t=0;t<256;t++)for(let e=1;e<8;e++){let n=kn[e-1][t];kn[e][t]=n>>>8^kn[0][n&255]}var[Sa,Wu,Zu,Ku,qu,ju,$u,Ju]=kn,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=Ju[o&255]^$u[o>>>8&255]^ju[o>>>16&255]^qu[o>>>24&255]^Ku[c&255]^Zu[c>>>8&255]^Wu[c>>>16&255]^Sa[c>>>24&255]}}for(;i<r;i++)n=n>>>8^Sa[(n^e[i])&255];this.crc=n}get(){return~this.crc}},Pr=class extends we{constructor(){let e,n=new jt;super({transform(r,i){n.append(r),i.enqueue(r)},flush(){let r=new Y(4);new tn(r.buffer).setUint32(0,n.get()),e.value=r}}),e=this}};function wr(t){if(typeof Ea==It){t=unescape(encodeURIComponent(t));let e=new Y(t.length);for(let n=0;n<e.length;n++)e[n]=t.charCodeAt(n);return e}else return new Ea().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,X.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 X.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}},Cr={bytes:{fromBits(t){let n=Me.bitLength(t)/8,r=new Y(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}}},dc={};dc.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=Cr.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 S("Cannot hash more than 2^53 - 1 bits");let s=new Io(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(X.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[X.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 Ec={};Ec.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 S("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,g=i[f]*257^f*16843008;for(let h=0;h<4;h++)t[h][u]=g=g<<24^g>>>8,e[h][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 S("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],g=t[2]^n[2],h=t[e?1:3]^n[3],E=4,_,R,A;for(let w=0;w<r;w++)_=a[f>>>24]^o[d>>16&255]^c[g>>8&255]^l[h&255]^n[E],R=a[d>>>24]^o[g>>16&255]^c[h>>8&255]^l[f&255]^n[E+1],A=a[g>>>24]^o[h>>16&255]^c[f>>8&255]^l[d&255]^n[E+2],h=a[h>>>24]^o[f>>16&255]^c[d>>8&255]^l[g&255]^n[E+3],E+=4,f=_,d=R,g=A;for(let w=0;w<4;w++)i[e?3&-w:w]=u[f>>>24]<<24^u[d>>16&255]<<16^u[g>>8&255]<<8^u[h&255]^n[E++],_=f,f=d,d=g,g=h,h=_;return i}};var hc={};hc.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(Cr.bytes.toBits(t))},pbkdf2(t,e,n,r){if(n=n||1e4,r<0||n<0)throw new S("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,g=Me;for(e=Cr.bytes.toBits(e),l=1;d<(i||1);l++){for(s=a=t.encrypt(g.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=dc.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 S("encrypt on already updated hmac called!");return this.update(t),this.digest(t)}};var Qu=typeof st!=It&&typeof st.getRandomValues==De,Si="Invalid password",Ii="Invalid signature",gc=Ii,Di="zipjs-abort-check-password",ed="Crypto API not supported";function mc(t){if(Qu)return st.getRandomValues(t);throw new S(ed)}var ln=16,td="raw",wc={name:"PBKDF2"},nd={name:"HMAC"},rd="SHA-1",sd=U.assign({hash:nd},wc),Ns=U.assign({iterations:1e3,hash:{name:rd}},wc),id=["deriveBits"],Zn=[8,12,16],Pn=[16,24,32],Tt=10,ad=[0,0,0,0],jr=typeof st!=It,or=jr&&st.subtle,_c=jr&&typeof or!=It,ft=Cr.bytes,od=Ec.aes,cd=hc.ctrGladman,ld=$t.hmacSha1,Ia=jr&&_c&&typeof or.importKey==De,Da=jr&&_c&&typeof or.deriveBits==De,bs=class extends we{constructor({password:e,rawPassword:n,encryptionStrength:r,checkPasswordOnly:i,checkAuthenticationCode:s=!0}){super({start(){Tc(this,e,n,r)},async transform(a,o){let c=this,{password:l,strength:u,resolveReady:f,ready:d}=c;l?(await fd(c,u,l,qe(a,0,Zn[u]+2)),a=qe(a,Zn[u]+2),i?o.error(new S(Di)):f()):await d;let g=new Y(a.length-Tt-(a.length-Tt)%ln);o.enqueue(pc(c,a,g,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),g=fe;if(f.length){let _=qn(ft,f);c.update(_);let R=o.update(_);g=Kn(ft,R)}let h=qe(Kn(ft,c.digest()),0,Tt),E=l.length<Tt?1:0;for(let _=0;_<Tt;_++)E|=h[_]^d[_];if(E&&s)throw new S(gc);a.enqueue(g)}}})}},Os=class extends we{constructor({password:e,rawPassword:n,encryptionStrength:r}){super({start(){Tc(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 ud(a,c,o),l()):await u;let d=new Y(f.length+i.length-i.length%ln);d.set(f,0),s.enqueue(pc(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=Kn(ft,f)}let u=Kn(ft,a.digest()).slice(0,Tt);i.enqueue(Bt(l,u))}}})}};function Tc(t,e,n,r){U.assign(t,{ready:new ge(i=>t.resolveReady=i),password:hd(e,n),strength:r-1,pendingInput:fe})}function pc(t,e,n,r,i,s){let{ctr:a,hmac:o,pendingInput:c}=t;c.length&&(e=Bt(c,e));let l=e.length-i;n=gd(n,r+(l-l%ln));let u;for(u=0;u<=l-ln;u+=ln){let f=qn(ft,qe(e,u,u+ln));s&&o.update(f);let d=a.update(f);s||o.update(d),n.set(Kn(ft,d),u+r)}return t.pendingInput=qe(e,u),n}async function fd(t,e,n,r){let i=await Rc(t,e,n,qe(r,0,Zn[e])),s=qe(r,Zn[e]);if(i[0]!=s[0]||i[1]!=s[1])throw new S(Si)}async function ud(t,e,n){let r=mc(new Y(Zn[e])),i=await Rc(t,e,n,r);return Bt(r,i)}async function Rc(t,e,n,r){t.password=null;let i=await dd(td,n,sd,!1,id),s=await Ed(U.assign({salt:r},Ns),i,8*(Pn[e]*2+2)),a=new Y(s),o=qn(ft,qe(a,0,Pn[e])),c=qn(ft,qe(a,Pn[e],Pn[e]*2)),l=qe(a,Pn[e]*2);return U.assign(t,{keys:{key:o,authentication:c,passwordVerification:l},ctr:new cd(new od(o),je.from(ad)),hmac:new ld(c)}),l}async function dd(t,e,n,r,i){if(Ia)try{return await or.importKey(t,e,n,r,i)}catch{return Ia=!1,$t.importKey(e)}else return $t.importKey(e)}async function Ed(t,e,n){if(Da)try{return await or.deriveBits(t,e,n)}catch{return Da=!1,$t.pbkdf2(e,t.salt,Ns.iterations,n)}else return $t.pbkdf2(e,t.salt,Ns.iterations,n)}function hd(t,e){return e===m?wr(t):e}function gd(t,e){if(e&&e>t.length){let n=t;t=new Y(e),t.set(n,0)}return t}function qe(t,e,n){return t.subarray(e,n)}function Kn(t,e){return t.fromBits(e)}function qn(t,e){return t.toBits(e)}var gn=12,Fs=class extends we{constructor({password:e,rawPassword:n,passwordVerification:r,checkPasswordOnly:i}){super({start(){Ac(this,e,n,r)},transform(s,a){let o=this;if(o.password||o.rawPassword){let c=Na(o,s.subarray(0,gn));if(o.password=o.rawPassword=null,(c[gn-1]^o.passwordVerification)!=0)throw new S(Si);s=s.subarray(gn)}i?a.error(new S(Di)):a.enqueue(Na(o,s))}})}},xs=class extends we{constructor({password:e,rawPassword:n,passwordVerification:r}){super({start(){Ac(this,e,n,r)},transform(i,s){let a=this,o,c;if(a.password||a.rawPassword){a.password=a.rawPassword=null;let l=mc(new Y(gn));l[gn-1]=a.passwordVerification,o=new Y(i.length+l.length),o.set(ba(a,l),0),c=gn}else o=new Y(i.length),c=0;o.set(ba(a,i),c),s.enqueue(o)}})}};function Ac(t,e,n,r){U.assign(t,{password:e,rawPassword:n,passwordVerification:r}),md(t,e,n)}function Na(t,e){let n=new Y(e.length);for(let r=0;r<e.length;r++)n[r]=yc(t)^e[r],Lr(t,n[r]);return n}function ba(t,e){let n=new Y(e.length);for(let r=0;r<e.length;r++)n[r]=yc(t)^e[r],Lr(t,e[r]);return n}function md(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++)Lr(t,n[i]);else for(let i=0;i<e.length;i++)Lr(t,e.charCodeAt(i))}function Lr(t,e){let[,n]=t.keys;t.crcKey0.append([e]);let r=~t.crcKey0.get();n=Oa(X.imul(Oa(n+Sc(r)),134775813)+1),t.crcKey2.append([n>>>24]);let i=~t.crcKey2.get();t.keys=[r,n,i]}function yc(t){let e=t.keys[2]|2;return Sc(X.imul(e,e^1)>>>8)}function Sc(t){return t&255}function Oa(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(wd())return new Bf(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 wd(){return typeof An.prototype.stream!=De||new An([]).stream()instanceof it}function _d(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 Fa="Invalid codec definition",Td="Reserved compression method",pd="Invalid codec module",Rd=[St,xn,Yn,Zr],mn=new gt,cr=new gt;function am(t={}){let{compressionMethod:e,format:n,codecURI:r,CompressionStream:i,DecompressionStream:s,versionNeeded:a}=t;if(!pe.isInteger(e)||e<0||e>W||typeof n!=Sn||!n.length)throw new S(Fa);if(Rd.includes(e))throw new S(Td);let o=typeof i==De||typeof s==De;if(!o&&(typeof r!=Sn||!r.length))throw new S(Fa);mn.set(e,{compressionMethod:e,format:n,codecURI:r,versionNeeded:a}),o&&Dc(n,{CompressionStream:i,DecompressionStream:s})}function om(t){let e=mn.get(t);if(e){mn.delete(t);let n;mn.forEach(r=>n=n||r.format==e.format),n||cr.delete(e.format)}}function Ic(t){return mn.get(t)}function Ad(){return je.from(mn.values(),t=>U.assign({},t,cr.get(t.format)))}function Ni(t){return cr.get(t)}function Dc(t,e){let{CompressionStream:n,DecompressionStream:r}=e;if(typeof n!=De&&typeof r!=De)throw new S(pd);cr.set(t,{CompressionStream:n,DecompressionStream:r})}async function yd(t,e){!cr.has(t)&&e&&Dc(t,await import(e))}var $r="Invalid uncompressed size",Nc="Invalid compressed data",bc=Ii,Sd="Compression method not supported",fn="deflate-raw",Ps="deflate64-raw",In="gzip",Oc=10,Cs=8,Id=[31,139,8],Dd=5e3,Ls=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:g,inputSize:h}=e,E=this,_,R,A,w=super.readable,T=d&&Ni(d),y=l&&s&&!f&&!T&&(!a||c)&&!!(o&&i);if((!a||c)&&l&&!y&&(_=new Pr,w=nt(w,_)),s)if(T)w=wn(w,Pc(T.CompressionStream,d,{level:u,chunkSize:n,compressionMethod:g,uncompressedSize:h}));else if(y)A=new Ur,w=wn(w,new i(In)),w=nt(w,A);else try{w=Cc(w,o,{level:u,chunkSize:n},i,r)}catch(O){let b;try{b=new i(In)}catch{throw O}w=wn(w,b),w=nt(w,new Ur)}a&&(c?w=nt(w,new xs(e)):(R=new Os(e),w=nt(w,R))),xc(E,w,()=>{(!a||c)&&l&&(E.crc32=y?A.crc32:new tn(_.value.buffer).getUint32(0))})}},Ur=class extends we{constructor(){let e,n=Oc,r=new Y(0);super({transform(i,s){if(n){let l=X.min(n,i.length);if(n-=l,i=i.subarray(l),!i.length)return}let a=r.length+i.length;if(a<=Cs){r=Bt(r,i);return}let o=a-Cs,c=X.min(o,r.length);s.enqueue(Bt(r.subarray(0,c),i.subarray(0,o-c))),r=Bt(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 Nd(t,e,n){let r=new jt,i=0,s=!1,a,o,c,l=new ge((h,E)=>{o=h,c=E});l.catch(()=>{}),n||o();let u=new we({start(h){let E=new Y(Oc);E.set(Id),h.enqueue(E)},transform(h,E){E.enqueue(h)},async flush(h){s=!0,d();try{await l}finally{g()}let E=new Y(Cs),_=K(E);_.setUint32(0,r.get(),!0),_.setUint32(4,n,!0),h.enqueue(E)},cancel(h){c(h)}}),f=new we({transform(h,E){r.append(h),i+=h.length,i>=n?o():s&&d(),E.enqueue(h)},cancel(h){c(h)}});return t=nt(t,u),t=wn(t,e),nt(t,f);function d(){g(),a=Xr(()=>c(new S($r)),Dd)}function g(){Wr(a)}}var Us=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:g,rawBitFlag:h,outputSize:E}=e,_,R,A=super.readable;if(a&&(s?A=nt(A,new Fs(e)):(R=new bs(e),A=nt(A,R))),l){let w=d&&Ni(d);if(w)A=wn(A,Pc(w.DecompressionStream,d,{chunkSize:n,compressionMethod:g,rawBitFlag:h,uncompressedSize:E}));else try{A=Cc(A,u,{chunkSize:n,deflate64:f},i,r)}catch(T){if(f||E===m)throw T;let y;try{y=new i(In)}catch{throw T}A=Nd(A,y,E)}A=xd(A)}o&&(_=new Pr,A=nt(A,_)),xc(this,A,()=>{if(o){let w=new tn(_.value.buffer);if(c!=w.getUint32(0,!1))throw new S(bc)}})}},xa=new gt;function bi(t,e){if(!t)return!1;let n=xa.get(t);n||(n=new gt,xa.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 Fc(t){return bi(t,fn)}function bd(t){return bi(t,In)}function xc(t,e,n){e=nt(e,new we({flush:n})),U.defineProperty(t,"readable",{get(){return e}})}function Pc(t,e,n){if(!t)throw new S(Sd);return new t(e,n)}function Cc(t,e,n,r,i){let s=e&&r?r:i||r,a=n.deflate64?Ps: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 Od(n,s),await Fd(r,s)}}}async function Od(t,e){try{await t.abort(e)}catch{}}async function Fd(t,e){try{await t.cancel(e)}catch{}}function xd(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 S(Nc);throw o.cause=a,o}let{value:i,done:s}=r;s?n.close():n.enqueue(i)},cancel(n){return e.cancel(n)}})}var Pd=64*1024,Cd="message",Ld="start",Ud="pull",Pa="data",vd="ack",Md="close",Oi="deflate",Lc="inflate",vs=class extends we{constructor(e,n){super({});let r=this,{codecType:i}=e,s;i.startsWith(Oi)?s=Ls:i.startsWith(Lc)&&(s=Us),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 S($r)},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)}})}},vr=class extends we{constructor(e){let n=[],r=0;(!pe.isFinite(e)||e<1)&&(e=Pd),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 Y(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 Y(o),l=0;for(let u of a)c.set(u,l),l+=u.length;return c}}},Fi="Worker startup timeout",Gn,xi,Ms,Bs=()=>{};function Bd(t){Ms=t}async function Hd(t){let{CompressionStream:e,CompressionStreamFallback:n}=t;if(n&&!n.requiresModule||Fc(e)||bd(e))return!0;if(n)try{return await Bs(t),!0}catch{return!1}return!1}function zd(){Gn=m,xi=!1}function Ca(t){t.createWorker?xi=!0:Gn=!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 xi&&(u=m),U.assign(e,{busy:!0,generation:(e.generation||0)+1,readable:n.pipeThrough(new vr(yi(s))).pipeThrough(new Hs(a),{signal:d}),writable:r,options:U.assign({},i),workerURI:l,createWorker:u,transferStreams:c,terminate(){return new ge(g=>{let{worker:h,busy:E}=e;h?(E?e.resolveTerminated=g:(h.terminate(),g()),e.interface=null):g()})},onTaskFinished(){if(e.busy){let{resolveTerminated:g}=e;g&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),g()),e.busy=!1,f(e)}}}),Gn===m&&(Gn=typeof gr!=It),(o&&Ms&&(Gn&&l||u)?Ms:Uc)(e,s)}},Hs=class extends we{constructor({onstart:e,onprogress:n,size:r,onend:i}){let s=0;super({async start(){e&&await ss(e,r)},async transform(a,o){s+=a.length,n&&await ss(n,s,r),o.enqueue(a)},async flush(){i&&await ss(i,s)}})}};async function ss(t,...e){try{await t(...e)}catch{}}function Uc(t,e){return{run:()=>zs(t,e)}}async function zs({options:t,readable:e,writable:n,onTaskFinished:r},i){let s;try{if(t.compressed&&!t.format){let l=t.codecType.startsWith(Oi),u=l?i.CompressionStreamFallback:i.DecompressionStreamFallback,f=l?i.CompressionStream:i.DecompressionStream;if(t.useCompressionStream){if(u&&u.requiresModule&&!Fc(f))try{await Bs(i)}catch{}}else try{await Bs(i)}catch{(!u||u.requiresModule)&&(t.useCompressionStream=!0)}}s=new vs(t,i),await e.pipeThrough(s).pipeThrough(new vr(yi(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 La={type:"module"},ks="error",kd="messageerror",Ua,is,va,Gs=!0;try{Gs=typeof structuredClone==De&&structuredClone(new DOMException("","AbortError")).code!==m}catch{}Bd(Gd);function Gd(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=_r(t.workerURI,n,t)}catch{return Ca(t),Uc(t,e)}U.assign(t,{worker:a,workerAlive:!1,terminated:!1,startupError:null,interface:{run:async()=>{try{return await Yd(t,{chunkSize:r,wasmURI:s,baseURI:n,workerStartupTimeout:i})}catch(o){if(o&&o.workerStartupFailed)return Ca(t),Ma(t),zs(t,e);if(o&&o.codecImportFailed){if(t.reader)return Ma(t),zs(t,e);t.onTaskFinished()}throw o}}}})}return t.interface}async function Yd(t,e){if(!t.worker){let{startupError:g}=t;t.startupError=null;let h=g||new S(Fi);throw h.workerStartupFailed=!0,h}let n,r,i=new ge((g,h)=>{n=g,r=h});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}=Vd(t.writable),u;try{u=Ys({type:Ld,options:a,config:e,readable:s,writable:o},t)}catch(g){l();try{await c}catch{}throw t.onTaskFinished(),g}u||U.assign(t,{reader:s.getReader(),writer:o.getWriter()});let{workerStartupTimeout:f}=e;!t.workerAlive&&pe.isFinite(f)&&f>=0&&(t.startupTimeout=Xr(()=>Xd(t),f));try{let g=await i;return await d(),await c,g}catch(g){await d(),l();try{await c}catch{}throw g}async function d(){if(!u&&!o.locked)try{await o.getWriter().close()}catch{}}}function Vd(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 Ma(t){let{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function Pi(t){let{worker:e}=t;if(e)try{e.terminate()}catch{}t.interface=null}function _r(t,e,n,r,i=!0){let{createWorker:s}=n,a,o,c;if(s)a=s();else if(is===m||Ua!==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=La);try{a=new gr(o,c)}catch(d){if(f)try{Sr.revokeObjectURL(o)}catch{}if(l&&f)return _r(t,e,n,r,!1);if(r)throw d;return _r(t,e,n,!0,!1)}}else{r===m&&(r=!0),r&&(c=La);try{o=new Sr(o,e)}catch{}try{a=new gr(o,c)}catch(d){if(r)return _r(t,e,n,!1,i);throw d}}Ua=t,is=o,va=c}else a=new gr(is,va);return a.addEventListener(Cd,l=>{n.workerAlive=!0,vc(n),Wd(l,n)}),a.addEventListener(ks,l=>Ba(l,n)),a.addEventListener(kd,l=>Ba(l,n)),a}function Xd(t){if(t.startupTimeout=null,t.workerAlive)return;let{rejectResult:e,writer:n}=t;if(Pi(t),t.worker=null,e){let r=new S(Fi);r.workerStartupFailed=!0,e(r),n&&n.releaseLock()}}function vc(t){let{startupTimeout:e}=t;e&&(Wr(e),t.startupTimeout=null)}function Ba(t,e){t.preventDefault&&t.preventDefault(),vc(e);let{workerAlive:n,rejectResult:r,writer:i,onTaskFinished:s}=e;Pi(e),n||(e.worker=null);let a=t.error||new S(t.message||ks);n||(a=U.assign(new S(a.message||ks),{workerStartupFailed:!0}),e.startupError=a),r&&(r(a),i&&i.releaseLock(),n&&s())}function Ys(t,{worker:e,writer:n,transferStreams:r,workerAlive:i}){try{let{value:s,readable:a,writable:o}=t,c=[];if(s&&(t.value=uc(s),c.push(t.value.buffer)),r&&Gs&&i?(a&&c.push(a),o&&c.push(o)):t.readable=t.writable=null,c.length)try{return e.postMessage(t,c),!0}catch{Gs=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(s){throw n&&n.releaseLock(),s}}async function Wd({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,g=()=>e.generation!=d;try{if(a){let{message:E,stack:_,code:R,name:A,outputSize:w,cause:T,codecImportFailed:y}=a,O=new S(E);U.assign(O,{stack:_,code:R,name:A,outputSize:w}),T&&(O.cause=U.assign(new S(T.message),{name:T.name})),y&&(O.codecImportFailed=!0),h(O)}else{if(n==Ud){let{value:E,done:_}=await o.read();g()||Ys({type:Pa,value:E,done:_,messageId:i},e)}n==Pa&&(await c.ready,await c.write(new Y(r)),g()||Ys({type:vd,messageId:i},e)),n==Md&&h(null,s)}}catch(E){g()||(Pi(e),h(E))}function h(E,_){g()||(E?u(E):l(_),c&&c.releaseLock(),E&&E.codecImportFailed||f())}}var vt=[],Tn=[],pn,Tr,Ha=0;async function Mc(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:g,createWorker:h,maxWorkers:E}=r;f&&(d&&(n.codecURI=Zd(d,r.baseURI)),await yd(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&&g?g:m,e.createWorker=e.useWebWorkers&&h?h:m,n.useCompressionStream=a||a===m&&r.useCompressionStream,(await A()).run();async function A(){let T=vt.find(y=>!y.busy);if(T)return Vs(T),new _n(T,t,e,w);if(vt.length<E){let y={indexWorker:Ha};return Ha++,vt.push(y),new _n(y,t,e,w)}else return new ge(y=>{Tn.push({resolve:y,stream:t,workerOptions:e}),Tr=r.workerStarvationTimeout,Mr()})}function w(T){if(Bc(),Tn.length){let[{resolve:y,stream:O,workerOptions:b}]=Tn.splice(0,1);y(new _n(T,O,b,w)),Mr()}else T.worker?(Vs(T),jd(T,e)):vt=vt.filter(y=>y!=T)}}function Zd(t,e){try{return new Sr(t,e).toString()}catch{return t}}function Mr(){!pn&&Tn.length&&pe.isFinite(Tr)&&Tr>=0&&(pn=Xr(Kd,Tr))}function Bc(){pn&&(Wr(pn),pn=null)}function Kd(){if(pn=null,Tn.length){let[{resolve:t,stream:e,workerOptions:n}]=Tn.splice(0,1),r=U.assign({},n,{useWebWorkers:!1,workerURI:m,createWorker:m});t(new _n({},e,r,qd)),Mr()}}function qd(){Bc(),Mr()}function jd(t,e){let{config:n}=e,{terminateWorkerTimeout:r}=n;pe.isFinite(r)&&r>=0&&(t.terminated?t.terminated=!1:t.terminateTimeout=Xr(async()=>{vt=vt.filter(i=>i!=t);try{await t.terminate()}catch{}},r))}function Vs(t){let{terminateTimeout:e}=t;e&&(Wr(e),t.terminateTimeout=null)}async function cm(){await ge.allSettled(vt.map(t=>(Vs(t),t.terminate()))),zd()}var Hc="\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(""),$d=Hc.length==256;function Jd(t){if($d){let e="";for(let n=0;n<t.length;n++)e+=Hc[t[n]];return e}else return new Ir().decode(t)}function pr(t,e){return zc(t,e,!0)}function Qd(t,e){return zc(t,e,!1)}function zc(t,e,n){return e&&e.trim().toLowerCase()=="cp437"?Jd(t):new Ir(e,{ignoreBOM:n}).decode(t)}var kc="HTTP error ",Rt="HTTP Range not supported",za="HTTP resource changed",eE="Writer iterator completed too soon",tE="Writer not initialized",nE="text/plain",rE="Content-Length",sE="Content-Encoding",Ci="Content-Range",iE="Accept-Ranges",aE="Range",oE="Etag",cE="Last-Modified",lE="HEAD",Jr="GET",Gc="bytes",fE=256*1024,uE=16*1024*1024,Li="writable",ka=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=yi(rn())}={}){let i=this,s=0;return r=cc(r),new it({async pull(a){let o=n===m?r:X.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}})}},Br=class extends Dn{constructor(){super();let e=this,n=new at({write(r){if(!e.initialized)throw new S(tE);return e.writeUint8Array(uc(r))}});U.defineProperty(e,Li,{get(){return n}})}writeUint8Array(){}},Ga=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:X.floor((n-r)*.75)})}readUint8Array(e,n){let{dataStart:r,dataURI:i}=this,s=new Y(n),a=X.floor(e/3)*4,o=atob(i.substring(a+r,X.ceil((e+n)/3)*4+r)),c=e-X.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}},Ya=class extends Br{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<X.floor((s+e.length)/3)*3-s;r++)i+=da.fromCharCode(e[r]);for(;r<e.length;r++)n.pendingCharacters+=da.fromCharCode(e[r]);i.length>2?n.data+=ha(i):n.pendingCharacters=i+n.pendingCharacters}getData(){return this.data+ha(this.pendingCharacters)}},Xs,Yc;function dE(){Yc=(async()=>{try{let e=new An([new Y(3)]).slice(1,2).stream().getReader(),n=0,r=await e.read();for(;!r.done;)n+=r.value.length,r=await e.read();Xs=n==1}catch{Xs=!1}})()}var Dt=class extends Et{constructor(e){super(),U.assign(this,{sourceBlob:e,size:e.size}),Yc||dE()}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()):Xs?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 Y(o)}},Ws=class extends Dn{constructor(e){super();let n=this,r=new we;U.defineProperty(n,Li,{get(){return r.writable}}),n.contentType=e,n.blobPromise=Qt(r.readable,e),n.blobPromise.catch(()=>{})}getData(){return this.blobPromise}},kt=class extends Dt{constructor(e){super(new An([e],{type:nE}))}},Va=class extends Ws{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():Qd(new Y(await r.arrayBuffer()),e)}},Zs=class extends Et{constructor(e,n){super(),Vc(this,e,n)}async init(){await Xc(this,Hr,Xa),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 EE(n,a,X.min(o,s-a))}return super.createReadable(e)}readUint8Array(e,n){return Wc(this,e,n,Hr,Xa)}},Ks=class extends Et{constructor(e,n){super(),Vc(this,e,n)}async init(){await Xc(this,qs,Wa),super.init()}readUint8Array(e,n){return Wc(this,e,n,qs,Wa)}};function Vc(t,e,n){let{preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:o=!0,maximumRangeSize:c=uE,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 Xc(t,e,n){let{url:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o}=t;if(hE(r)&&(s||a)&&(typeof i==It||i)){let c=await e(Jr,t,vi(t,o?-Ie:void 0)),l=c.headers.get(iE);if(!a&&(!l||l.toLowerCase()!=Gc))throw new S(Rt);{if(o){let f=new Y(await c.arrayBuffer());c.status==206&&f.length==Ie&&(t.eocdCache=f)}Ui(t,c);let u=Zc(c);u===m?await Za(t,e,n):t.size=u}}else await Za(t,e,n)}async function Wc(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(Jr,t,vi(t,e,n));if(u.status!=206)throw new S(Rt);let f=u.headers.get(Ci);if(f){let g=pe(f.trim().split(/[\s-]+/)[1]);if(!pe.isNaN(g)&&g!=e)throw new S(Rt)}qc(t,u),Ui(t,u);let d=new Y(await u.arrayBuffer());if(d.length!=n)throw new S(Rt);return d}}else{let{data:u}=t;return u||await i(t,l),t.data.subarray(e,e+n)}}function EE(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 S(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=X.min(t.maximumRangeSize,a),u=await Hr(Jr,t,vi(t,i,l));if(u.status!=206)throw new S(Rt);let f=u.headers.get(Ci);if(f){let d=pe(f.trim().split(/[\s-]+/)[1]);if(!pe.isNaN(d)&&d!=i)throw new S(Rt)}qc(t,u),Ui(t,u),i+=l,s=l,r=u.body.getReader()}async function c(){let l=r;r=m,await l.cancel()}}function Zc(t){let e=t.headers.get(Ci);if(e){let n=e.trim().split(/\s*\/\s*/)[1];if(n&&n!="*"){let r=pe(n);if(!pe.isNaN(r))return r}}}function Kc({headers:t}){return{etag:t.get(oE)||m,lastModified:t.get(cE)||m}}function Ui(t,e){let{checkResourceChanges:n,resourceValidators:r}=t;n&&!r&&e.status==206&&(t.resourceValidators=Kc(e))}function qc(t,e){let{checkResourceChanges:n,resourceValidators:r,size:i}=t;if(n){let s=Zc(e);if(s!==m&&i!==m&&s!=i)throw new S(za);if(r){let a=Kc(e);if(U.entries(r).some(([c,l])=>l!==m&&a[c]!==m&&l!=a[c]))throw new S(za)}}}function vi(t,e=0,n=1){return U.assign({},Mi(t),{[aE]:Gc+"="+(e<0?e:e+"-"+(e+n-1))})}function Mi({options:t}){let{headers:e}=t;if(e)return Symbol.iterator in e?U.fromEntries(e):e}async function Xa(t){await jc(t,Hr)}async function Wa(t){await jc(t,qs)}async function jc(t,e){let n=await e(Jr,t,Mi(t));t.data=new Y(await n.arrayBuffer()),t.size=t.data.length}async function Za(t,e,n){if(t.preventHeadRequest)await n(t,t.options);else{let r=await e(lE,t,Mi(t)),i=r.headers.get(rE);i&&!r.headers.get(sE)?t.size=pe(i):await n(t,t.options)}}async function Hr(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 S(Rt):new S(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 S(Rt):new S(kc+(s.statusText||s.status)))},!1),s.addEventListener("error",a=>i(a.detail?a.detail.error:new S("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 js=class extends Et{constructor(e,n={}){super(),U.assign(this,{url:e,reader:n.useXHR&&!n.fetch?new Ks(e,n):new Zs(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)}},Ka=class extends js{constructor(e,n={}){super(e,U.assign({},n,{useRangeHeader:!0}))}},jn=class extends Et{constructor(e){super(),e=new Y(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 Br{constructor(e){super(),this.defaultBufferSize=e||fE}init(e=0){U.assign(this,{offset:0,array:new Y(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 Y(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)}},$s=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(gE));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=Bt(f,d)}}else s=fe;return r.lastDiskNumber=X.max(a,r.lastDiskNumber),s}},Js=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===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:g,done:h}=await e.next();if(h&&!g)throw new S(eE);i=g,i.size=0,i.maxSize&&(r.maxSize=i.maxSize),r.availableSize=r.maxSize,await Be(i),s=g.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,Li,{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()}}},en=class{constructor(e){return je.isArray(e)&&(e=new $s(e)),(e instanceof it||typeof e.getReader==De)&&(e={readable:Jt(e)}),e}},zr=class{constructor(e){return e.writable===m&&typeof e.next==De&&(e=new Js(e)),(e instanceof at||typeof e.getWriter==De)&&(e={writable:_d(e)}),e.size===m&&(e.size=0),e}};function $c(t){return!!(t&&t.getData)}function hE(t){let{baseURI:e}=rn(),{protocol:n}=new Sr(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 gE(t){return t=new en(t),await Be(t),(t.size===m||!t.readUint8Array)&&(t=new Dt(await Qt(t.readable)),await Be(t)),t}function _e(t,e,n){return t.readUint8Array(e,n)}function Jc(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?Et.prototype.createReadable.call(t,e):t.readable}var Qc="filename",el="rawFilename",Bi="comment",tl="rawComment",Hi="uncompressedSize",nl="compressedSize",rl="offset",sl="diskNumberStart",kr="lastModDate",Gr="rawLastModDate",zi="lastAccessDate",il="rawLastAccessDate",ki="creationDate",al="rawCreationDate",ol="internalFileAttributes",cl="externalFileAttributes",Gi="internalFileAttribute",Yi="externalFileAttribute",ll="msdosAttributesRaw",fl="msdosAttributes",ul="msDosCompatible",Vi="zip64",dl="encrypted",El="version",hl="versionMadeBy",gl="zipCrypto",Rn="directory",ml="executable",mE="symlink",wl="compressionMethod",Qs="signature",wE="crc32",Xi="extraField",_E="extraFieldInfoZip",TE="extraFieldUnix",pE="extraFieldUnixType1",RE="extraFieldPkwareUnix",_l="uid",Tl="gid",pl="unixMode",Rl="setuid",Al="setgid",yl="sticky",AE="bitFlag",yE="rawBitFlag",SE="filenameLength",IE="extraFieldLength",DE="unixExternalUpper",NE="filenameUTF8",bE="commentUTF8",OE="rawExtraField",FE="extraFieldZip64",xE="extraFieldUnicodePath",PE="extraFieldUnicodeComment",CE="extraFieldAES",LE="extraFieldNTFS",UE="extraFieldExtendedTimestamp",vE="extraFieldUSDZ",ME=[Qc,el,Hi,nl,kr,Gr,Bi,tl,zi,il,ki,al,rl,sl,ol,cl,Gi,Yi,ll,fl,ul,Vi,dl,El,hl,gl,Rn,ml,mE,wl,Qs,wE,Xi,TE,_E,pE,RE,_l,Tl,pl,DE,Rl,Al,yl,AE,yE,SE,IE,NE,bE,OE,FE,xE,PE,CE,LE,UE,vE],bn=class{constructor(e){ME.forEach(n=>this[n]=e[n])}},vn="File format is not recognized",Sl="End of central directory not found",Il="End of Zip64 central directory locator not found",Dl="Central directory header not found",Nl="Local file header not found",bl="Zip64 extra field not found",Ol="File contains encrypted entry",ei="Encryption method not supported",ti="Compression method not supported",ni="Split zip file",Fl="Overlapping entry found",xl="Entry data out of bounds",Pl="Ambiguous archive",Cl="Encrypted central directory is not supported",Ll="Unsafe filename",Ul="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",vl="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Ml="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Bl="64-bit value exceeds Number.MAX_SAFE_INTEGER",Hl="unsorted central directory",zl="unknown version needed to extract",kl="compressed patched data",Wi="malformed extra field",Gl="unknown zip64 extensible data",ri="wrapped entries count",si="appended data",ii="prepended data",Yl="trailing central directory data",Vl="duplicate filename",Mn="mismatched zip64 end of central directory record",Xl="mismatched local file header (general purpose bit flag)",Wl="mismatched local file header (compression method)",Zl="mismatched local file header (crc32 or sizes)",BE=63,HE=/^[a-zA-Z]:/,qa="utf-8",zE="UTF8",ja="cp437",$a=Dr|Nr|br,Kl=1,kE=[[Hi,me],[nl,me],[rl,me],[sl,W]],Ja={[W]:{getValue:j,bytes:4},[me]:{getValue:Ge,bytes:8}},GE=Ce(pe.MAX_SAFE_INTEGER),YE=64,VE=1032,Qa=0,Zi=1,Yr=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===m||!r.readUint8Array)&&(r=new Dt(await Qt(r.readable)),await Be(r)),r.size<Ie)throw new S(vn);let i=n.warnings=[],s=Ki(e,n.options),a=s==nn,o=s!=zt,c=Ql(Te(n,e,qo),s),l=sh(Te(n,e,Cu),s),u=Te(n,e,Lu),{endOfDirectoryInfo:f,endOfDirectoryReachingEndCount:d}=await ef(r,o,c);if(!f)throw await QE(r)?new S(ni):new S(Sl);o&&d>1&&Rr("multiple end of central directory records");let g=K(f),h=j(g,12),E=j(g,16),_=f.offset,R=ie(g,20),A=_+Ie+R,w=r.size-A;w>c&&Rr(si),w>0&&tt(i,si);let T=ie(g,4),y=r.lastDiskNumber||0,O=ie(g,6),b=ie(g,10),F=0,P,v,M,z=et,V,k=E==me||h==me||b==W||O==W;if(E!=me&&O!=W&&(E+=un(r,O)),k){let ue=f.offset>=Lt?await _e(r,f.offset-Lt,Lt):fe,B=K(ue);if(ue.length==Lt&&j(B,0)==_i){E=un(r,j(B,4))+Ge(B,8);let ye=await _e(r,E,et),Ee=K(ye),He=f.offset-Lt-et;if((ye.length<et||j(Ee,0)!=Ts)&&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)!=Ts)throw new S(Il);if(v=!0,M=Ge(Ee,4)>et-12,M){let be=X.min(Ge(Ee,4)-(et-12),r.size-E-et);if(be>0){z+=be;let We=await _e(r,E+et,be);V=ZE(We)}}T==W?T=j(Ee,16):T!=j(Ee,16)&<(a,i,Mn),O==W?O=j(Ee,20):O!=j(Ee,20)&<(a,i,Mn),b==W?b=Ge(Ee,32):b!=Ge(Ee,32)&<(a,i,Mn),h==me?h=Ge(Ee,40):h!=Ge(Ee,40)&<(a,i,Mn),E=un(r,O)+Ge(Ee,48)+F}}let G=h,N=f.offset-(v?z+Lt:0);if(E>=r.size&&(F=r.size-E-h-Ie,E=r.size-h-Ie),y!=T)throw new S(ni);if(E<0)throw new S(vn);let I=0,C=await _e(r,E,h),x=K(C);if(h){if(C.length<4)throw new S(vn);let ue=N-h;if(E!=ue&&O==T){let ye=!(j(x,I)==Ut||!!(V&&V.compressedSize)||as(x));if(!ye&&ue>=0&&ue+4<=r.size){let Ee=await _e(r,ue,4);ye=j(K(Ee),0)==Ut}if(ye){let Ee=E;E=ue,E>Ee&&(F+=E-Ee),C=await _e(r,E,h),x=K(C)}}}let Z=N-E;if(h!=Z&&Z>=0&&O==T&&(h=Z,C=await _e(r,E,h),x=K(C)),E<0||E>=r.size)throw new S(vn);n.directoryOffset=E,n.directoryLength=G;let L=co(n,e,Uu),q,ne;if(L&&b&&C.length>=4&&j(x,0)!=Ut&&(M||as(x))){let ue=WE(V,G,C.length);ne=C.subarray(ue),C=await L(C.subarray(0,ue),V),x=K(C),G=C.length,q=!0}V&&!q&&(C.length<4||j(x,0)==Ut)&&tt(i,Gl),P=E;let re=Te(n,e,iu),$=Te(n,e,au),ce=new yr,ae,Ae=-1,Ne=!a&&!v;!b&&Ne&&(b=eo(x,C,I),b&&tt(i,ri));for(let ue=0;ue<b;ue++){let B=new oi(r,n.options);if(I+yn>C.length||j(x,I)!=Ut)throw ue==0&&!q&&(M||as(x))?new S(Cl):new S(Dl);ql(B,x,I+6);let ye=!!B.bitFlag.languageEncodingFlag,Ee=I+yn,He=Ee+B.filenameLength,be=He+B.extraFieldLength,We=ie(x,I+4),mt=We>>8==0,Xt=We>>8==3,Le=C.subarray(Ee,He),ot=ie(x,I+32),Se=be+ot,ct=C.subarray(be,Se),Wt=ye,Ze=ye,sn=j(x,I+38),$e=sn&rt,bt={readOnly:!!($e&ps),hidden:!!($e&Rs),system:!!($e&As),directory:!!($e&Or),archive:!!($e&ys)},Ot=j(x,I+42),ke=co(n,e,ou)||pr,Ke=Wt?qa:re||ja,Zt=Ze?qa:$||ja,Ue=ke(Le,Ke,jo);if(Ue===m&&(Ue=pr(Le,Ke)),u){let ve=u(Ue);ve!==m&&(Ue=ve)}if(ih(Ue,l)){let ve=new S(Ll);throw ve.filename=Ue,ve}let Ft=ke(ct,Zt,$o);Ft===m&&(Ft=pr(ct,Zt)),U.assign(B,{index:ue,decryptedDirectory:q,versionMadeBy:We,msDosCompatible:mt,zip64:!1,compressedSize:0,uncompressedSize:0,commentLength:ot,offset:Ot,diskNumberStart:ie(x,I+34),internalFileAttributes:ie(x,I+36),externalFileAttributes:sn,msdosAttributesRaw:$e,msdosAttributes:bt,rawFilename:Le,filenameUTF8:Wt,commentUTF8:Ze,rawExtraField:C.subarray(He,be),rawComment:ct,filename:Ue,comment:Ft}),jl(B,B,x,I+6)&&tt(i,Wi,Ue),B.offset+=F;let xt=un(r,B.diskNumberStart)+B.offset;P=X.min(xt,P),xt<Ae&&tt(i,Hl,Ue),Ae=xt,(B.version&rt)>BE&&tt(i,zl,Ue),(B.rawBitFlag&_a)==_a&&tt(i,kl,Ue),ce.has(B.filename)&&(ae=!0),ce.add(B.filename);let Fe=B.externalFileAttributes>>16&W;B.unixMode===m&&(Fe&(mr|zn|Hn))!=0&&(B.unixMode=Fe);let ur=!!(B.unixMode&Ss),rs=!!(B.unixMode&Is),Oe=!!(B.unixMode&Ds),p=((B.unixMode===m?Fe:B.unixMode)&En)==Ho,D=!p&&(B.unixMode!==m?(B.unixMode&zn)!=0:Xt&&(Fe&zn)!=0),H=B.unixMode!==m&&(B.unixMode&En)==Hn,se=(Fe&En)==Hn;U.assign(B,{setuid:ur,setgid:rs,sticky:Oe,symlink:p,unixExternalUpper:Fe,internalFileAttribute:B.internalFileAttributes,externalFileAttribute:B.externalFileAttributes,executable:D,directory:H||se||mt&&bt.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,Pt=Qt(an.readable).then(on=>on.arrayBuffer());return Pt.catch(()=>{}),await B.getData(an,le,n.readRanges,ve),Pt},I=Se,ue==b-1&&Ne){let ve=eo(x,C,I);ve&&(b+=ve,tt(i,ri))}let{onprogress:Je}=e;if(Je)try{await Je(ue+1,b,new bn(B))}catch{}yield le}let he=I,Q=os(C.subarray(I))||(q?os(ne):m);if(!Q&&!q){let ue=E+I,B=X.min(N-ue,6+W);B>=6&&(Q=os(await _e(r,ue,B)))}Q&&(n.digitalSignature=Q,he=I+6+Q.length),(I!=G&&he!=G||!q&&I!=h&&he!=h)&<(a,i,Yl),ae&<(a,i,Vl);let Re=Te(n,e,cu),oe=Te(n,e,lu),ee=(a||Re)&&b&&P==Mt&&await eh(r)?Mt:0;return a&&(F||b&&P>ee)&&Rr(ii),(F||b&&P>Mt)&&tt(i,ii),Re&&(n.prependedData=P>ee?await _e(r,ee,P-ee):fe),n.comment=R?await _e(r,_+Ie,R):fe,oe&&(n.appendedData=A<r.size?await _e(r,A,r.size-A):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()}},ai=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 XE(t,e={}){if(t=new en(t),await Be(t),(t.size===m||!t.readUint8Array)&&(t=new Dt(await Qt(t.readable)),await Be(t)),t.size<Ie)return!1;let n=Ki(e,{}),r=n!=zt,i=Ql(e[qo],n),{endOfDirectoryInfo:s,endOfDirectoryReachingEndCount:a}=await ef(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 oi=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:g,bitFlag:h,rawBitFlag:E,crc32:_,rawLastModDate:R,uncompressedSize:A,compressedSize:w}=s,{dataDescriptor:T}=h,y=n.localDirectory={},O=n.warnings=[],b=un(o,u)+l,F=await _e(o,b,Ve),P=K(F),v=Te(s,i,zo),M=Te(s,i,ko),z=Te(s,i,Go);if(Qo(v,M),v=v&&v.length&&v,M=M&&M.length&&M,f&&f.originalCompressionMethod!=Zr)throw new S(ti);if(F.length<Ve||j(P,0)!=Do)throw new S(Nl);ql(y,P,4);let{extraFieldLength:V,filenameLength:k}=y,G=y.dataOffset=b+Ve+k+V,N=Te(s,i,hu),I=Ki(i,s.options),C=nh(N,I),x=rh(N,I),Z=fe;if(x&&(k||V)){let Se=await _e(o,b+Ve,k+V);Z=Se.subarray(0,k),y.rawExtraField=Se.subarray(k)}else y.rawExtraField=V?await _e(o,b+Ve+k,V):fe;x&&(y.rawFilename=Z),jl(s,y,P,4,!0)&&tt(O,Wi),oh(s,y,Z,x,C?m:O);let{lastAccessDate:L,creationDate:q,uid:ne,gid:re}=y;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&&y.encrypted&&!z,ce=$&&!f;if(z||(n.zipCrypto=ce),$&&(y.rawBitFlag&Ta)==Ta)throw new S(ei);let ae=z?m:Ic(g);if(g!=St&&g!=xn&&g!=Yn&&!ae&&!z)throw new S(ti);if($){if(!ce&&(f.strength<1||f.strength>3))throw new S(ei);if(!v&&!M)throw new S(Ol)}if(G+w>o.size)throw new S(xl);let Ae=w,Ne=Jt(o.createReadable({offset:G,size:Ae})),he=Jo(Te(s,i,Yo)),Q=Te(s,i,fu),Re=Te(s,i,du),oe=Te(s,i,uu);oe&&(Re=!0);let{onstart:ee,onprogress:ue,onend:B}=i,ye=g!=St&&!z,Ee=z?w:A,He=g==Yn,be=Te(s,i,Xo);He&&(be=!1);let We=Te(s,i,mu),mt=(We===m?Te(s,i,gu):We)&&!z&&(!$||ce||f&&f.vendorVersion==Kl),Xt={options:{codecType:Lc,password:v,rawPassword:M,zipCrypto:ce,encryptionStrength:f&&f.strength,checkCrc32:mt,checkAuthenticationCode:Te(s,i,wu),passwordVerification:ce&&(T?R>>>8&rt:_>>>24&rt),outputSize:Ee,crc32:_,compressed:ye,encrypted:$,useWebWorkers:Te(s,i,Vo),useCompressionStream:be,transferStreams:Te(s,i,Wo),deflate64:He,format:ae?ae.format:m,codecURI:ae?ae.codecURI:m,compressionMethod:g,rawBitFlag:E,checkPasswordOnly:Q},config:a,streamOptions:{signal:he,size:Ae,onstart:ee,onprogress:ue,onend:B}};Re&&await JE({reader:o,fileEntry:n,index:c,offset:b,crc32:_,compressedSize:w,uncompressedSize:A,dataOffset:G,dataDescriptor:T||y.bitFlag.dataDescriptor,extraFieldZip64:d||y.extraFieldZip64,readRanges:r});let Le,ot;try{if(!oe){Q&&(e=new at),e=new zr(e),await Be(e,th(Ee,w,ye)),{writable:Le}=e;let{outputSize:Se}=await Mc({readable:Ne,writable:Le},Xt);if(e.size+=Se,Se!=Ee)throw new S($r)}}catch(Se){if(Se.outputSize!==m&&(e.size+=Se.outputSize),!Q||Se.message!=Di)throw ot=Se,Se}finally{if(!(!$c(e)&&Te(s,i,Zo))&&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 as(t){let e=X.min(t.byteLength,1024)-3;for(let n=0;n<e;n++)if(j(t,n)==kf)return!0;return!1}function eo(t,e,n){let r=0;for(;n+yn<=e.length&&j(t,n)==Ut;)n+=yn+ie(t,n+28)+ie(t,n+30)+ie(t,n+32),r++;return r%(W+1)?0:r}function os(t){if(t.length>=6){let e=K(t);if(j(e,0)==bo){let n=ie(e,4);if(6+n<=t.length)return t.subarray(6,6+n)}}}function WE(t,e,n){let r=t&&t.compressedSize?t.compressedSize:e;return r>0&&r<=n?r:n}function ZE(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&Dr)==Dr,s=j(e,n+6);U.assign(t,{encrypted:i,version:ie(e,n),bitFlag:{level:(r&Bo)>>1,dataDescriptor:(r&Nr)==Nr,languageEncodingFlag:(r&br)==br},rawLastModDate:s,lastModDate:ch(s),filenameLength:ie(e,n+22),extraFieldLength:ie(e,n+24)})}function jl(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),b=ie(o,c+2);a.set(O,{type:O,data:s.slice(c+4,c+4+b)}),c+=4+b}}catch{l=!0}c>s.length&&(l=!0);let u=ie(n,r+4);U.assign(e,{signature:j(n,r+Vn),crc32:j(n,r+Vn),compressedSize:j(n,r+sr),uncompressedSize:j(n,r+ir)});let f=a.get(Kr);f&&(KE(f,e),e.extraFieldZip64=f);let d=a.get(Gf);d&&(to(d,Qc,el,e,t),e.extraFieldUnicodePath=d);let g=a.get(Yf);g&&(to(g,Bi,tl,e,t),e.extraFieldUnicodeComment=g);let h=a.get(Po);h&&h.data.length>=7?(qE(h,e,u),e.extraFieldAES=h):e.compressionMethod=u;let E=a.get(Xf);E&&(no(E,e),e.extraFieldPkwareUnix=E);let _=a.get(Vf);_&&(no(_,e),e.extraFieldUnixType1=_);let R=a.get(Co);R&&(jE(R,e),e.extraFieldNTFS=R);let A=a.get(Mo),w;if(A&&(w=ro(A,e,!1),e.extraFieldUnix=A),!w){let O=a.get(vo);O&&(ro(O,e,!0),e.extraFieldInfoZip=O)}let T=a.get(Ti);T&&($E(T,e,i),e.extraFieldExtendedTimestamp=T);let y=a.get(Uo);return y&&(e.extraFieldUSDZ=y),l}function KE(t,e){e.zip64=!0;let n=K(t.data),r=kE.filter(([s,a])=>e[s]==a),i=r.reduce((s,[,a])=>s+Ja[a].bytes,0);if(t.data.length<i)throw new S(bl);for(let s=0,a=0;s<r.length;s++){let[o,c]=r[s],l=Ja[c];e[o]=t[o]=l.getValue(n,a),a+=l.bytes}}function to(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 Y(4));o.setUint32(0,a.get(),!0);let c=j(s,1),l=Ht(s,0);U.assign(t,{version:l,[e]:pr(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 qE(t,e,n){let r=K(t.data),i=Ht(r,4);U.assign(t,{vendorVersion:Ht(r,0),vendorId:Ht(r,2),strength:i,originalCompressionMethod:n,compressionMethod:ie(r,5)}),e.compressionMethod=t.compressionMethod,t.vendorVersion!=Kl&&(e.crc32=m)}function jE(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==Lo&&(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=cs(a),u=cs(o),f=cs(c),d={lastModDate:l,lastAccessDate:u,creationDate:f};U.assign(t,d),U.assign(e,d,{rawLastAccessDate:o,rawCreationDate:c})}}function no(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 ro(t,e,n){try{let r=K(t.data),i,s;if(n){let a=0,o=Ht(r,a++),c=Ht(r,a++);i=so(t.data.subarray(a,a+c)),a+=c;let l=Ht(r,a++);s=so(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 so(t){let e=new Y(4);return e.set(t,0),new tn(e.buffer,e.byteOffset,4).getUint32(0,!0)}function $E(t,e,n){if(!t.data.length)return;let r=K(t.data),i=Ht(r,0),s=[],a=[];n?((i&1)==1&&(s.push(kr),a.push(Gr)),(i&2)==2&&(s.push(zi),a.push(il)),(i&4)==4&&(s.push(ki),a.push(al))):t.data.length>=5&&(s.push(kr),a.push(Gr));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 JE({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=xo:f=Fo),f){let g=await _e(t,o+s,f+Kt),h=K(g),E=g.length==f+Kt&&j(h,0)==No;if(E){let _=io(h,Kt,l);(e.encrypted&&!e.zipCrypto||_.crc32==i)&&_.compressedSize==s&&_.uncompressedSize==a?f+=Kt:E=!1}if(g.length>=f){let _=io(h,E?Kt:0,l);_.signature=E,e.localDirectory.dataDescriptor=_}}let d={start:r,end:o+s+f,fileEntry:e};for(let[g,h]of u)if(g!=n&&d.start<h.end&&h.start<d.end){let E=new S(Fl);throw E.overlappingEntry=h.fileEntry,E}u.set(n,d)}function io(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 QE(t){return await $l(t)==rr}async function eh(t){let e=await $l(t);return e==rr||e==zf}async function $l(t){let e=await _e(t,0,Mt);return j(K(e))}function Jl(t){return t===nn||t===pi||t===zt}function th(t,e,n){return X.min(t,n?e*VE:e)}function Ki(t,e){return ao(t,ao(e,pi))}function ao(t,e){let n=t[Pu];if(n!==m){if(!Jl(n))throw new S(Ul);return n}let r=t[Eu];return r===m?e:r?nn:e==zt?zt:pi}function nh(t,e){return t===m?e!=zt:!!t}function rh(t,e){return t===m?e==nn:!!t}function sh(t,e){if(t===m)return e;if(!Jl(t))throw new S(vl);return t}function ih(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("\\\\")||HE.test(t)?!0:e==nn&&(n.includes(".")||n.includes(""))}function Ql(t,e){if(t!==m){let n=qr(t);if(typeof n!=ru||pe.isNaN(n)||n<0)throw new S(Ml);return n}return e==nn?0:e==zt?1/0:W}async function ef(t,e,n){let{size:r}=t,i=X.min(r,Ie+W),s={count:YE},a,o,c=0;for await(let[l,u,f,d,g]of tf(t,i)){let h=ie(l,d+20);if(g+Ie+h==r){let E=await nf(t,l,u,d,g,r,s);if(E==Yr){if(a||(a=ci(f,d,g)),c++,!e||c>1)break}else E==Zi&&!o&&(o=ci(f,d,g))}}return a||(a=o),a||(a=await ah(t,n,s)),{endOfDirectoryInfo:a,endOfDirectoryReachingEndCount:c}}async function ah(t,e,n){let{size:r}=t,i=X.min(r,e==1/0?r:Ie+W+e),s,a;for await(let[o,c,l,u,f]of tf(t,i)){let d=ci(l,u,f);s||(s=d);let g=await nf(t,o,c,u,f,r,n);if(g==Yr)return d;g==Zi&&!a&&(a=d)}return a||s}async function*tf(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)==Oo&&(yield[i,n,r,s,n+s])}function ci(t,e,n){return{offset:n,buffer:t.slice(e,e+Ie).buffer}}async function nf(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==W||c==me||l==me)return await oo(t,e,n,i-Lt,s,a)==_i?Yr:Qa;if(!o&&!c)return Zi;let u=ie(e,r+6);for(let f of[i-c,un(t,u)+l])if(await oo(t,e,n,f,s,a)==Ut)return Yr;return Qa}async function oo(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 oh(t,e,n,r,i){let{rawFilename:s}=t,a=!i,o=t.decryptedDirectory&&(e.rawBitFlag&pa)==pa;r&&!o&&(n.length!=s.length||n.some((c,l)=>c!=s[l]))&<(a,i,"mismatched local file header (filename)"),(e.rawBitFlag&$a)!=(t.rawBitFlag&$a)&<(a,i,Xl),e.compressionMethod!=t.compressionMethod&<(a,i,Wl),!e.bitFlag.dataDescriptor&&!o&&(e.crc32||e.compressedSize||e.uncompressedSize)&&(e.crc32!=t.crc32||e.compressedSize!=t.compressedSize||e.uncompressedSize!=t.uncompressedSize)&<(a,i,Zl)}function lt(t,e,n){t?Rr(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 Rr(t){let e=new S(Pl);throw e.reason=t,e}function Te(t,e,n){return e[n]===m?t.options[n]:e[n]}function co(t,e,n){return Ri(Te(t,e,n))}function ch(t){let e=(t&4294901760)>>16,n=t&W,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<xr?xr:r}function cs(t){return new yt(pe(t/Ce(1e4)-Ce(116444736e5)))}function Ht(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>GE)throw new S(Bl);return pe(n)}var lh=U.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Pl,ERR_BAD_FORMAT:vn,ERR_CENTRAL_DIRECTORY_NOT_FOUND:Dl,ERR_ENCRYPTED:Ol,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Cl,ERR_ENTRY_DATA_OUT_OF_BOUNDS:xl,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Il,ERR_EOCDR_NOT_FOUND:Sl,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:bl,ERR_INVALID_AUTHENTICATION_CODE:gc,ERR_INVALID_COMPRESSED_DATA:Nc,ERR_INVALID_CRC32:bc,ERR_INVALID_FILENAME_VALIDATION:vl,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Ml,ERR_INVALID_PASSWORD:Si,ERR_INVALID_SIGNATURE:Ii,ERR_INVALID_STRICTNESS:Ul,ERR_INVALID_UNCOMPRESSED_SIZE:$r,ERR_LOCAL_FILE_HEADER_NOT_FOUND:Nl,ERR_OVERLAPPING_ENTRY:Fl,ERR_SPLIT_ZIP_FILE:ni,ERR_UNSAFE_FILENAME:Ll,ERR_UNSUPPORTED_COMPRESSION:ti,ERR_UNSUPPORTED_ENCRYPTION:ei,ERR_UNSUPPORTED_UINT64:Bl,ERR_WORKER_STARTUP_TIMEOUT:Fi,WARNING_APPENDED_DATA:si,WARNING_COMPRESSED_PATCHED_DATA:kl,WARNING_DUPLICATE_FILENAME:Vl,WARNING_MALFORMED_EXTRA_FIELD:Wi,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Xl,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:Wl,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:Zl,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:Mn,WARNING_PREPENDED_DATA:ii,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Yl,WARNING_UNKNOWN_VERSION:zl,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Gl,WARNING_UNSORTED_CENTRAL_DIRECTORY:Hl,WARNING_WRAPPED_ENTRIES_COUNT:ri,ZipReader:On,ZipReaderStream:ai,isZipFile:XE}),rf="File already exists",sf="Zip file comment exceeds 64KB",fh="Invalid zip file comment (must be a Uint8Array)",uh="File entry comment exceeds 64KB",dh="Invalid file entry comment (must be a string)",Eh="Invalid date (must be a valid Date instance)",hh="File entry name exceeds 64KB",af="Version exceeds 65535",gh="The strength must equal 1, 2, or 3",mh="Encryption is not supported in USDZ files",wh="Encryption is not supported when the 'passThrough' option is set",_h="Invalid extra field (must be a Map)",Th="Invalid extra field type (must be integer 0..65535)",ph="Invalid extra field data (must be a Uint8Array)",qi="Extra field data exceeds 64KB",Rh="Compression method not supported",of=-2147483648,cf=2147483647,lo=Ce(0),fo=Ce("0x7fffffffffffffff"),ji="Zip64 is not supported (set the 'zip64' option to 'true')",Ah="Undefined uncompressed size",yh="Undefined compression method",lm="Undetermined size",Sh="Undefined reader",Ih="Zip file not empty",Dh="Invalid uid (must be integer 0..2^32-1)",Nh="Invalid gid (must be integer 0..2^32-1)",bh="Invalid UNIX mode (must be integer 0..65535)",Oh="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Fh="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",xh="Invalid msdosAttributesRaw (must be integer 0..255)",Ph="Invalid msdosAttributes (must be an object with boolean flags)",Ch="Invalid level (must be integer 0..9)",Lh="Signature data exceeds 64KB",uo=new Y([7,0,2,0,65,69,3,0,0]),Uh=4,vh=9,Mh=67,Bh=1,li="infozip",fi="unix",Hh=9,ls=0,Eo=[],$n=class{constructor(e,n={}){e=new zr(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 yr,offset:n[Er]===m?e.size||e.writable.size||0:n[Er],initialOffset:n[Er]===m?0:n[Er]-(e.size||e.writable.size||0),pendingAddFileCalls:new yr,pendingErrors:[],bufferedWrites:0,lastFileEntry:m})}prependZip(e){return fs(this,zh(this,e))}appendZip(e){return fs(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===m||!e.readUint8Array)&&(e=new Dt(await Qt(e.readable)),await Be(e));let{ZipReader:u}=await ge.resolve().then(function(){return lh}),f=new u(e),d=await f.getEntries();await f.close(),await Be(n.writer);let{directoryOffset:g}=f;d.forEach(({filename:_})=>{if(i.has(_))throw new S(rf);i.add(_),c.push(_)}),n.writerLocked=!0;let{lockWriter:h}=n;n.lockWriter=new ge(_=>l=()=>{n.writerLocked=!1,_()}),await h,n.addSplitZipSignature&&(delete n.addSplitZipSignature,await ig(e)||(await ht(n.writer,ff()),n.offset+=Mt));let E=await ag(n,e,d,g);d.forEach(_=>{let{version:R,rawLastModDate:A,rawFilename:w,bitFlag:T,encrypted:y,uncompressedSize:O,compressedSize:b,extraFieldZip64:F}=_,{compressionMethod:P,rawExtraField:v}=_,{level:M,languageEncodingFlag:z,dataDescriptor:V}=T;v=lf(v||fe),_.extraFieldAES&&(P=Zr);let k=te(v),G=!!F&&F.uncompressedSize!==m,N=!!F&&F.compressedSize!==m,I=gf(M,z,V,y,P)&~Bo|M<<1,{headerArray:C,headerView:x}=hf({version:R,bitFlag:I,compressionMethod:P,uncompressedSize:O,compressedSize:b,rawLastModDate:A,rawFilename:w,zip64CompressedSize:N,zip64UncompressedSize:G,extraFieldLength:k}),{crc32:Z}=_;Z!==m&&xe(x,Vn,Z);let{offset:L,diskNumberStart:q}=E.get(_);U.assign(_,{zip64UncompressedSize:G,zip64CompressedSize:N,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:x}),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=kh(i,e,n,r);s.add(a);let o=()=>s.delete(a);return ge.prototype.then.call(a,o,o),fs(i,a)}remove(e){let{filenames:n,fileEntries:r}=this;if(typeof e==Sn&&(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 Y))throw new S(fh);if(te(e)>W)throw new S(sf);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 eg(r,e,n),!$c(s)&&J(r,n,Zo)||await a.getWriter().close(),s.getData?s.getData():a}},ho=class{constructor(e={}){let{readable:n,writable:r}=new we;this.readable=n,this.zipWriter=new $n(r,e),this.pendingAddFileCalls=new yr}transform(e){let n=this.zipWriter,r,{readable:i,writable:s}=new we({start(o){r=o},flush:()=>{a()}});return go(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 us(n,o)}}}writable(e){let n,{readable:r,writable:i}=new we({start(s){n=s}});return go(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 us(r,a),a}try{return await r.close(e,n)}catch(a){throw await us(r,a),a}}},ui=class extends ge{then(e,n){let{watcher:r}=this;return r&&(r.observed=!0),super.then(e,n)}};function fs(t,e){let n=new ui((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 zh(t,e){if(t.filenames.size)throw new S(Ih);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 S(rf);t.filenames.add(e),ls<rn().maxWorkers?ls++:await new ge(i=>Eo.push(i));try{return await Gh(t,e,n,r)}catch(i){throw t.filenames.delete(e),i}finally{let i=Eo.shift();i?i():ls--}}async function us(t,e){try{await t.writer.writable.abort(e)}catch{}}function go(t,e,n){t.pendingAddFileCalls.add(e),e.catch(r=>{try{n(r)}catch{}})}async function Gh(t,e,n,r){let i=Yh(t,e,r);({name:e}=i);let s=Vh(t,e,r),{comment:a}=s,o=r[Xi];t.fileEntries.set(e,m);let c;try{let{resolvedOptions:l}=s;l.level!=0&&l.compressionMethod===m&&!l.passThrough&&!await Hd(rn())&&(l.level=0);let u=await Xh(t,n,s,r);({reader:n}=u);let f=Jn(t.writer),d=At(t.writer);r=U.assign({},r,i.resolvedOptions,s.resolvedOptions,u.resolvedOptions,{signature:r[Qs],crc32:r.crc32===m?r[Qs]:r.crc32,offset:t.offset-f,diskNumberStart:d,[Xn]:t.options[Xn]});let g=qh(r),h=$h(r),E=te(g.localHeaderArray,h.dataDescriptorArray);c=await Zh(t,e,n,{headerInfo:g,dataDescriptorInfo:h,metadataSize:E},r)}catch(l){throw t.fileEntries.delete(e),l}return U.assign(c,{name:e,comment:a,extraField:o,[Gi]:c.internalFileAttributes,[Yi]:c.externalFileAttributes}),new bn(c)}function Yh(t,e,n){let r=J(t,n,ul),i=J(t,n,hl,r?Jf:Aa),s=J(t,n,ml),a=dn(t,n,_l),o=dn(t,n,Tl),c=dn(t,n,pl),l=J(t,n,Ou),u=J(t,n,Rl),f=J(t,n,Al),d=J(t,n,yl);if(Un(a,me,Dh),Un(o,me,Nh),Un(c,W,bh),l!==m&&l!==li&&l!==fi)throw new S(Oh);if(l===fi&&(a!==m&&a>W||o!==m&&o>W))throw new S(Fh);l===m&&(a!==m||o!==m)&&(l=li);let g=dn(t,n,ll),h=J(t,n,fl),E=a!==m||o!==m||c!==m||l||s,_=g!==m||h!==m;if(E?(r=!1,i=i&rt|Aa):_&&(r=!0,i=i&rt),Un(g,rt,xh),h&&(typeof h!==nu||je.isArray(h)))throw new S(Ph);if(i>W)throw new S(af);let R=Ef(t,n,cl,Yi),A=R!==m;A||(R=0),!n[Rn]&&e.endsWith(hn)&&(n[Rn]=!0);let w=J(t,n,Rn);if(w?(e.endsWith(hn)||(e+=hn),A||(R=Or,r||(R|=(Hn|zn|mr)<<16))):!r&&!A&&(s?R=(zn|mr)<<16:R=mr<<16),!r){let O=c!==m||!!(u||f||d),b=R>>16&W;c=c===m?b:c&W,u?c|=Ss:u=!!(c&Ss),f?c|=Is:f=!!(c&Is),d?c|=Ds:d=!!(c&Ds),(!A||O)&&(w?c=c&~En|Hn:c&En||(c|=qf),R=(c&W)<<16|R&W)}({msdosAttributesRaw:g,msdosAttributes:h}=jh(g,h)),_&&(R=R&me|g&rt);let T=R>>16&W,y=c!==m&&(c&En)==Ho;return{name:e,resolvedOptions:{versionMadeBy:i,msDosCompatible:!!r,externalFileAttributes:R,unixExternalUpper:T,uid:a,gid:o,unixMode:c,unixExtraFieldType:l,symlink:y,setuid:u,setgid:f,sticky:d,msdosAttributesRaw:g,msdosAttributes:h}}}function Vh(t,e,n){let r=di(t,n,bu)||wr,i=r(e,jo);if(i===m&&(i=wr(e)),te(i)>W)throw new S(hh);let s=n[Bi]||"";if(typeof s!=Sn)throw new S(dh);let a=r(s,$o);if(a===m&&(a=wr(s)),te(a)>W)throw new S(uh);let o=J(t,n,El);if(o!==m&&o>W)throw new S(af);let c=gs(t,n,kr,new yt),l=J(t,n,Gr),u=gs(t,n,zi),f=gs(t,n,ki),d=Ef(t,n,ol,Gi,0),g=J(t,n,Go),h=J(t,n,zo),E=J(t,n,ko);Qo(h,E);let _=dn(t,n,_u,3),R=J(t,n,gl),A=J(t,n,Tu,!0),w=J(t,n,pu),T=J(t,n,Ru,!0),y=J(t,n,Vo),O=J(t,n,Wo),b=J(t,n,yu),F=di(t,n,Su),P=J(t,n,Iu,!0),v=Jo(J(t,n,Yo)),M=J(t,n,Du,!0),z=J(t,n,wl),V=g||z===m?m:Ic(z);if(!g&&z!==m&&z!==St&&z!==xn&&!V)throw new S(Rh);let k=dn(t,n,Au);if(Un(k,Hh,Ch),t.options[Xn]){if(h!==m||E!==m)throw new S(mh);k===m&&z===m&&(k=0)}g&&(k=m);let G=J(t,n,Xo),N=J(t,n,Ko);b&&N===m&&(N=!1),(N===m||R&&!g)&&(N=!0),k!==m&&k!=6&&(G=!1);let I=J(t,n,Vi);if(!R&&(h!==m||E!==m)&&!(pe.isInteger(_)&&_>=1&&_<=3))throw new S(gh);let C=ds(n[Xi]),x=ds(n[Fu]),Z=ds(n[xu]);return{comment:s,resolvedOptions:{rawFilename:i,rawComment:a,version:o,lastModDate:c,rawLastModDate:l,lastAccessDate:u,creationDate:f,internalFileAttributes:d,passThrough:g,password:h,rawPassword:E,encryptionStrength:_,zipCrypto:R,extendedTimestamp:A,ntfsTimestamp:w,keepOrder:T,useWebWorkers:y,transferStreams:O,bufferedWrite:b,createTempStream:F,dataDescriptorSignature:P,signal:v,useUnicodeFileNames:M,compressionMethod:z,format:V?V.format:m,codecURI:V?V.codecURI:m,codecVersionNeeded:V?V.versionNeeded:m,level:k,useCompressionStream:G,dataDescriptor:N,zip64:I,rawExtraField:C,rawLocalExtraField:x,rawCentralExtraField:Z}}}function ds(t){if(!t)return fe;if(!(t instanceof gt))throw new S(_h);let e=0,n=0;t.forEach((s,a)=>{if(ec(a,W,Th),!(s instanceof Y))throw new S(ph);if(te(s)>W)throw new S(qi);e+=4+te(s)});let r=new Y(e),i=K(r);return t.forEach((s,a)=>{ut(i,n,a),ut(i,n+2,te(s)),tr(r,s,n+4),n+=4+te(s)}),r}async function Xh(t,e,{resolvedOptions:n},r){if(n.passThrough&&!e&&!J(t,r,Rn))throw new S(Sh);let i;return e&&(e=new en(e),await Be(e),{size:i}=e),U.assign({reader:e},Wh(t,!!e,i,n,r))}function Wh(t,e,n,r,i){let{passThrough:s,zipCrypto:a,password:o,rawPassword:c,encryptionStrength:l}=r,{dataDescriptor:u,zip64:f,level:d,compressionMethod:g}=r,h=0,E=0;if(s&&e){if(E=i[Hi],E===m)throw new S(Ah);if(g===m)throw new S(yh)}let _=f===!0,R=J(t,i,dl);if(e&&s&&!R&&te(o,c))throw new S(wh);let A=e&&(!!(o&&te(o)||c&&te(c))||s&&R);e||(d=0,g=St);let w=A?a?12:16+l*4:0;e&&(s?(i.uncompressedSize=E,h=n===m?Ro(E)+w:n):n===m?(u=!0,(f||f===m)&&(f=!0,E=h=me+1)):(i.uncompressedSize=E=n,h=(Ei(g,d)?Ro(E):E)+w));let T=!A&&(!e||n===0&&!s)&&!Ei(g,d);T&&!a&&J(t,i,Ko)===m&&(u=!1);let y=_||E>=me,O=_||h>=me;if(y||O){if(f===!1)throw new S(ji);f=!0}return f=f||!1,{maximumCompressedSize:h,resolvedOptions:{dataDescriptor:u,emptyEntry:T,zip64:f,zip64UncompressedSize:y,zip64CompressedSize:O,uncompressedSize:E,level:d,compressionMethod:g,encrypted:A}}}async function Zh(t,e,n,r,i){let{fileEntries:s,writer:a}=t,{keepOrder:o,dataDescriptor:c,emptyEntry:l,signal:u}=i,{headerInfo:f}=r,d=t.options[Xn],g=t.lastFileEntry,h={},E,_,R,A,w,T,y=0,O;s.set(e,h),t.lastFileEntry=h;try{let v;o&&(v=g&&g.lockFileEntry,b()),i.bufferedWrite||!o||t.writerLocked||t.bufferedWrites||!c&&!l?(E=!0,t.bufferedWrites++,i.createTempStream?O=await i.createTempStream():O=new we(m,m,{highWaterMark:cn}),O.size=0,await Be(a)):(O=a,await F()),await Be(O);let M=Jn(a);t.addSplitZipSignature&&!E&&await _o(t,a),d&&!E&&mo(r,t.offset-M);let{localHeaderArray:z}=f;E||(await v,await P());let V=At(a),k=Qn(t,a);if(h.diskNumberStart=V,E||(w=!0,T=a.size,await ht(O,z)),h=await Kh(n,O,h,r,rn(),i),E||(w=!1),s.set(e,h),h.filename=e,E){if(await ge.all([O.writable.getWriter().close(),v]),await F(),t.addSplitZipSignature&&await _o(t,a),A=!0,T=a.size,await P(),h.diskNumberStart=At(a),h.offset=Qn(t,a),d){let G=r.metadataSize;mo(r,t.offset-Jn(a)),h.size+=r.metadataSize-G}Qh(h,f.localHeaderView,i),await ht(a,f.localHeaderArray),await uf(O.readable,a,u,G=>y+=G),a.size+=O.size,A=!1}else h.diskNumberStart=V,h.offset=k;return t.offset+=h.size,h}catch(v){if(A||w){if(t.hasCorruptedEntries=!0,v)try{v.corruptedEntry=!0}catch{}t.offset+=a.size-T,E&&(t.offset+=y)}throw s.delete(e),v}finally{if(E&&t.bufferedWrites--,R&&R(),_&&_(),E&&O&&O.dispose)try{await O.dispose()}catch{}}function b(){h.lockFileEntry=new ge(v=>R=v)}async function F(){t.writerLocked=!0;let{lockWriter:v}=t;t.lockWriter=new ge(M=>_=()=>{t.writerLocked=!1,M()}),await v}async function P(){Fn(a,te(f.localHeaderArray))&&await a.closeDisk()}}async function Kh(t,e,{diskNumberStart:n,lockFileEntry:r},i,s,a){let{headerInfo:o,dataDescriptorInfo:c,metadataSize:l}=i,{headerArray:u,headerView:f,lastModDate:d,rawLastModDate:g,encrypted:h,compressed:E,version:_,compressionMethod:R,rawExtraFieldZip64:A,localExtraFieldZip64Length:w,rawExtraFieldExtendedTimestamp:T,extraFieldExtendedTimestampFlag:y,rawExtraFieldNTFS:O,rawExtraFieldUnix:b,rawExtraFieldAES:F}=o,{dataDescriptorArray:P}=c,{rawFilename:v,lastAccessDate:M,creationDate:z,password:V,rawPassword:k,level:G,zip64:N,zip64UncompressedSize:I,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:We,setuid:mt,setgid:Xt,sticky:Le,unixExternalUpper:ot,msdosAttributesRaw:Se,msdosAttributes:ct,useCompressionStream:Wt,passThrough:Ze,format:sn,codecURI:$e}=a,bt={lockFileEntry:r,versionMadeBy:ne,zip64:N,directory:!!L,executable:!!q,filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:re,rawExtraFieldZip64:A,localExtraFieldZip64Length:w,rawExtraFieldExtendedTimestamp:T,rawExtraFieldNTFS:O,rawExtraFieldUnix:b,rawExtraFieldAES:F,rawExtraField:$,rawCentralExtraField:ce,extendedTimestamp:ee,msDosCompatible:ue,internalFileAttributes:B,externalFileAttributes:ye,diskNumberStart:n,uid:Ee,gid:He,unixMode:be,symlink:!!We,setuid:mt,setgid:Xt,sticky:Le,unixExternalUpper:ot,msdosAttributesRaw:Se,msdosAttributes:ct},{crc32:Ot,uncompressedSize:ke}=a,Ke=0;Ze||(ke=0);let{writable:Zt}=e;if(t){let Ue=Jt(Jc(t)),Ft=t.size,xt={options:{codecType:Oi,inputSize:Ft,level:G,rawPassword:k,password:V,encryptionStrength:oe,zipCrypto:h&&x,passwordVerification:h&&x&&g>>8&rt,computeCrc32:!Ze,compressed:E&&!Ze,encrypted:h&&!Ze,useWebWorkers:ae,useCompressionStream:Wt,transferStreams:Ae,format:sn,codecURI:$e,compressionMethod:R},config:s,streamOptions:{signal:Re,size:Ft,onstart:Ne,onprogress:he,onend:Q}};try{let Fe=await Mc({readable:Ue,writable:Zt},xt);if(Ke=Fe.outputSize,e.size+=Ke,Ze||(ke=Fe.inputSize,(!h||x)&&(Ot=Fe.crc32)),!C&&Ke>=me||!I&&ke>=me)throw new S(ji)}catch(Fe){throw Fe.outputSize!==m&&(e.size+=Fe.outputSize),Fe}}return Jh({crc32:Ot,compressedSize:Ke,uncompressedSize:ke,headerInfo:o,dataDescriptorInfo:c},a),Z&&await ht(e,P),U.assign(bt,{uncompressedSize:ke,compressedSize:Ke,lastModDate:d,rawLastModDate:g,creationDate:z,lastAccessDate:M,encrypted:!!h,zipCrypto:!!x,size:l+Ke,compressionMethod:R,version:_,headerArray:u,headerView:f,signature:Ot,crc32:h&&!x&&!Ze?m:Ot,extraFieldExtendedTimestampFlag:y,zip64UncompressedSize:I,zip64CompressedSize:C}),bt}function qh(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:g,encryptionStrength:h,extendedTimestamp:E,ntfsTimestamp:_,passThrough:R,encrypted:A,zip64UncompressedSize:w,zip64CompressedSize:T,uncompressedSize:y,crc32:O}=t,{version:b,compressionMethod:F}=t,P=!f&&Ei(F,a),v,M=R||!P,z=o&&(t.bufferedWrite||!u||!w&&!T||M),V=z||o&&u&&(w||T);if(o&&(w||T)){let Q=Ye(20);if(Q.writeUint16(Kr),Q.writeUint16(16),v=Q.array,z&&(Q.writeUint64(y),M)){let Re=A?c?12:16+h*4:0;Q.writeUint64(R?0:y+Re)}}else v=fe;let k;if(A&&!c){let he=Ye(te(uo)+2);he.writeUint16(Po),he.writeBytes(uo),k=he.array,k[8]=h}else k=fe;let G,N,I;if(E){let he=Ar(n),Q=df(he);if(Q){let oe=9+(i?4:0)+(s?4:0),ee=Ye(oe);I=1+(i?2:0)+(s?4:0),ee.writeUint16(Ti),ee.writeUint16(oe-4),ee.writeUint8(I),ee.writeUint32(he),i&&ee.writeUint32(To(Ar(i))),s&&ee.writeUint32(To(Ar(s))),N=ee.array}else N=fe;if(_===m?!Q||!!(i||s):_)try{let oe=hs(n),ee=Ye(36);ee.writeUint16(Co),ee.writeUint16(32),ee.skip(4),ee.writeUint16(Lo),ee.writeUint16(24),ee.writeUint64(oe),ee.writeUint64(i?hs(i):oe),ee.writeUint64(s?hs(s):oe),G=ee.array}catch{G=fe}else G=fe}else G=N=fe;let C;try{let{uid:he,gid:Q,unixExtraFieldType:Re}=t;if(Re==li&&(he!==m||Q!==m)){let oe=wo(he===m?0:he),ee=wo(Q===m?0:Q),ue=3+oe.length+ee.length,B=Ye(4+ue);B.writeUint16(vo),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==fi&&(he!==m||Q!==m)){let oe=Ye(8);oe.writeUint16(Mo),oe.writeUint16(4),oe.writeUint16((he===m?0:he)&W),oe.writeUint16((Q===m?0:Q)&W),C=oe.array}else C=fe}catch{C=fe}F===m&&(F=P?xn:St),b===m&&(b=F==St&&!f&&!A?jf:$f);let{codecVersionNeeded:x}=t;P&&x!==m&&(b=b>x?b:x),o&&(b=b>Fr?b:Fr),A&&!c&&(b=b>Ra?b:Ra,R&&O!==m&&(k[Uh]=Bh),ut(K(k),vh,F),F=Zr);let Z=V?te(v):0,L=Z+te(k,N,G,C,d,g),q=t[Xn]?Mh:0;if(L+q>W)throw new S(qi);let ne=new yt(X.ceil(X.floor(n.getTime()/1e3)/2)*2e3),{headerArray:re,headerView:$,rawLastModDate:ce}=hf({version:b,bitFlag:gf(a,l,u,A,F),compressionMethod:F,uncompressedSize:y,lastModDate:ne<xr?xr:ne>ya?ya:ne,rawLastModDate:r,rawFilename:e,zip64CompressedSize:T,zip64UncompressedSize:w,extraFieldLength:L}),ae=Ye(Ve+te(e)+L),Ae=ae.array,Ne=K(Ae);return ae.writeUint32(Do),ae.writeBytes(re),ae.writeBytes(e),V&&ae.writeBytes(v),ae.writeBytes(k),ae.writeBytes(N),ae.writeBytes(G),ae.writeBytes(C),ae.writeBytes(d),ae.writeBytes(g),u&&(T||xe(Ne,sr+qt,0),w||xe(Ne,ir+qt,0)),{localHeaderArray:Ae,localHeaderView:Ne,headerArray:re,headerView:$,lastModDate:n,rawLastModDate:ce,encrypted:A,compressed:P,version:b,compressionMethod:F,extraFieldExtendedTimestampFlag:I,rawExtraFieldZip64:fe,localExtraFieldZip64Length:Z,rawExtraFieldExtendedTimestamp:N,rawExtraFieldNTFS:G,rawExtraFieldUnix:C,rawExtraFieldAES:k,extraFieldLength:L}}function mo(t,e){let{headerInfo:n}=t,{localHeaderArray:r,extraFieldLength:i}=n,s=64-(e+te(r))%64;s<4&&(s+=64);let a=new Y(s),o=K(a);ut(o,0,Uo),ut(o,2,s-4);let c=r;n.localHeaderArray=r=new Y(te(c)+s),tr(r,c),tr(r,a,te(c));let l=K(r);ut(l,28,i+s),n.localHeaderView=l,t.metadataSize+=s}function wo(t){let e=new Y(4);K(e).setUint32(0,t,!0);let r=4;for(;r>1&&e[r-1]===0;)r--;return e.subarray(0,r)}function jh(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|=ps),r&&(o|=Rs),i&&(o|=As),s&&(o|=Or),a&&(o|=ys),t=o&rt}return e===m&&(e={readOnly:!!(t&ps),hidden:!!(t&Rs),system:!!(t&As),directory:!!(t&Or),archive:!!(t&ys)}),{msdosAttributesRaw:t,msdosAttributes:e}}function $h({zip64:t,dataDescriptor:e,dataDescriptorSignature:n}){let r=fe,i,s=0,a=t?xo:Fo;return n&&(a+=Kt),e&&(r=new Y(a),i=K(r),n&&(s=Kt,xe(i,0,No))),{dataDescriptorArray:r,dataDescriptorView:i,dataDescriptorOffset:s}}function Jh({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,Vn,t),c&&xe(f,d,t)),s?c&&(er(f,d+4,Ce(e)),er(f,d+12,Ce(n))):(xe(l,sr,e),xe(l,ir,n),c&&(xe(f,d+4,e),xe(f,d+8,n)))}function Qh({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,Vn+qt,i),c||xe(l,sr+qt,s),o||xe(l,ir+qt,a)),n&&r){let d=Ve+te(t)+4;er(l,d,Ce(a)),er(l,d+8,Ce(s))}}async function eg(t,e,n){let r=tg(t.fileEntries),{directoryStart:i,directoryEnd:s,directoryArray:a}=await ng(t,r,n),o=await rg(t,a,n);await sg(t,e,n,{directoryStart:i,directoryEnd:s,directoryDataLength:r,signatureLength:o})}function tg(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:g,zip64CompressedSize:h,uncompressedSize:E,compressedSize:_}=n,R=n.offset>=me,A=n.diskNumberStart>=W,w;if(R||A||g||h){let b=4+(g?8:0)+(h?8:0)+(R?8:0)+(A?4:0),F=Ye(b);F.writeUint16(Kr),F.writeUint16(b-4),g&&F.writeUint64(E),h&&F.writeUint64(_),R&&F.writeUint64(n.offset),A&&F.writeUint32(n.diskNumberStart),w=F.array}else w=fe;n.rawExtraFieldZip64=w,n.zip64Offset=R,n.zip64DiskNumberStart=A;let T,y=Ar(d);if(u&&df(y)){let b=Ye(9);b.writeUint16(Ti),b.writeUint16(5),b.writeUint8(f),b.writeUint32(y),T=b.array}else T=fe;n.rawExtraFieldExtendedTimestamp=T;let O=te(w,i,a,o,T,c,l);if(O>W)throw new S(qi);e+=yn+te(r,s)+O}return e}async function ng(t,e,n){let{fileEntries:r,writer:i}=t,s=new Y(e);await Be(i);let a=0,o=0,c=At(i),l=Jn(i),u=0;for(let[f,d]of je.from(r.values()).entries()){let{offset:g,rawFilename:h,rawExtraFieldZip64:E,rawExtraFieldAES:_,rawExtraFieldExtendedTimestamp:R,rawExtraFieldNTFS:A,rawExtraFieldUnix:w,rawExtraField:T,rawCentralExtraField:y,rawComment:O,versionMadeBy:b,headerArray:F,headerView:P,zip64UncompressedSize:v,zip64CompressedSize:M,zip64DiskNumberStart:z,zip64Offset:V,internalFileAttributes:k,externalFileAttributes:G,diskNumberStart:N,uncompressedSize:I,compressedSize:C}=d,x=te(E,_,R,A,w,T,y),Z=yn+te(h,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=Jn(i)),v||xe(P,ir,I),M||xe(P,sr,C),(V||z)&&d.version<Fr&&ut(P,Qf,Fr);let L=Ye(Z);if(L.writeUint32(Ut),L.writeUint16(b),L.writeBytes(F.subarray(0,Ve-4-2)),L.writeUint16(x),L.writeUint16(te(O)),L.writeUint16(z?W:N),L.writeUint16(k),L.writeUint32(G),L.writeUint32(V?me:g),L.writeBytes(h),L.writeBytes(E),L.writeBytes(_),L.writeBytes(R),L.writeBytes(A),L.writeBytes(w),L.writeBytes(T),L.writeBytes(y),L.writeBytes(O),tr(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 rg(t,e,n){let r=di(t,n,vu);if(r){let i=await r(e),s=te(i);if(s>W)throw new S(Lh);let a=Ye(6+s);a.writeUint32(bo),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 sg(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=Qn(t,s),d=te(e);if(d>W)throw new S(sf);let g=J(t,n,Vi),h=At(i);if(Fn(i,(g?wa:Ie)+d)&&h++,f>=me||c>=me||l>=W||h>=W){if(g===!1)throw new S(ji);g=!0}let E=Ye(g?wa:Ie);Fn(i,te(E.array)+d)&&await i.closeDisk(),h=At(i);let _=h==a.diskNumber?a.entriesLength:0;g&&(E.writeUint32(Ts),E.writeUint64(44),E.writeUint16(45),E.writeUint16(45),E.writeUint32(h),E.writeUint32(u),E.writeUint64(_),E.writeUint64(l),E.writeUint64(c),E.writeUint64(f),E.writeUint32(_i),E.writeUint32(h),E.writeUint64(Ce(Qn(t,i))+Ce(c)+Ce(o)),E.writeUint32(h+1),J(t,n,Nu,!0)&&(h=W,u=W),_=W,l=W,f=me,c=me),E.writeUint32(Oo),E.writeUint16(h),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 Y(t),n=K(e),r=0;return{array:e,writeUint8:i=>{lg(n,r,i),r+=1},writeUint16:i=>{ut(n,r,i),r+=2},writeUint32:i=>{xe(n,r,i),r+=4},writeUint64:i=>{er(n,r,Ce(i)),r+=8},writeBytes:i=>{tr(e,i,r),r+=te(i)},skip:i=>r+=i}}function At(t){let{diskNumber:e=0}=t;return e}function Jn(t){let{diskOffset:e=0}=t;return e}function Fn(t,e){let{availableSize:n=cn}=t;return e>n}function Qn(t,{diskNumber:e=0,diskOffset:n=0}){return t.offset-n-(e?t.initialOffset:0)}async function ig(t){let e=await _e(t,0,Mt);return cg(K(e),0)==rr}function lf(t){let e=K(t),n=0;for(;n+4<=te(t);){let r=4+Vr(e,n+2);if(Vr(e,n)==Kr)return lf(Bt(t.subarray(0,n),t.subarray(X.min(n+r,te(t)))));n+=r}return t}async function ag(t,e,n,r){let{writer:i}=t,s=new gt;if(i.closeDisk){let a=je.from(n).sort((c,l)=>hr(e,c)-hr(e,l)),o=0;for(let c of a){let l=hr(e,c);await Es(t,e,o,l-o),Fn(i,await og(e,l))&&await i.closeDisk(),s.set(c,{offset:Qn(t,i),diskNumberStart:At(i)}),o=l}await Es(t,e,o,r-o)}else{let a=t.offset;await Es(t,e,0,r),n.forEach(o=>s.set(o,{offset:a+hr(e,o),diskNumberStart:0}))}return s}async function Es(t,e,n,r){if(r>0){let{writer:i}=t,s=0;try{await uf(Jc(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 og(t,e){let n=await _e(t,e,Ve);if(te(n)<Ve)return Ve;let r=K(n);return Ve+Vr(r,eu+qt)+Vr(r,tu+qt)}function hr(t,{offset:e,diskNumberStart:n}){return e+(t.getDiskOffset?t.getDiskOffset(n):0)}function ff(){let t=new Y(Mt);return xe(K(t),0,rr),t}async function _o(t,e){delete t.addSplitZipSignature,await ht(e,ff()),t.offset+=Mt}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 uf(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 hs(t){if(t){let e=(Ce(t.getTime())+Ce(116444736e5))*Ce(1e4);return e<lo?lo:e>fo?fo:e}}function Ar(t){return X.floor(t.getTime()/1e3)}function df(t){return t>=of&&t<=cf}function To(t){return X.min(cf,X.max(of,t))}function J(t,e,n,r){let i=e[n]===m?t.options[n]:e[n];return i===m?r:i}function gs(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 S(Eh);return i}function di(t,e,n){return Ri(J(t,e,n))}function Ef(t,e,n,r,i){let s=po(e,n,r),a=s===m?po(t.options,n,r):s;return a===m?i:a}function po(t,e,n){return t[e]===m?t[n]:t[e]}function dn(t,e,n,r){return qr(J(t,e,n,r))}function Ro(t){return t+5*(X.floor(t/16383)+1)}function Ei(t,e){return t===m?e===m||e>0:t!==St}function Vr(t,e){return t.getUint16(e,!0)}function cg(t,e){return t.getUint32(e,!0)}function lg(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 er(t,e,n){t.setBigUint64(e,n,!0)}function tr(t,e,n){t.set(e,n)}function te(...t){let e=0;return t.forEach(n=>n&&(e+=n.length)),e}function hf({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,g=K(d);if(f.writeUint16(t),f.writeUint16(e),f.writeUint16(n),a===m){let h=new Io(1),E=K(h);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=h[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:g,rawLastModDate:a}}function gf(t,e,n,r,i){let s=0;return e&&(s=s|br),n&&(s=s|Nr),(i==xn||i==Yn)&&(t>=0&&t<=3&&(s=s|Kf),t>3&&t<=5&&(s=s|Zf),t==9&&(s=s|Wf)),r&&(s=s|Dr),s}function fm(){return"application/octet-stream"}function um(){let{CompressionStream:t,DecompressionStream:e,CompressionStreamFallback:n,DecompressionStreamFallback:r}=rn(),i=[{compressionMethod:St,compression:!0,decompression:!0,registered:!1},{compressionMethod:xn,compression:Ct(n,fn)||Ct(t,fn)||Ct(t,In),decompression:Ct(r,fn)||Ct(e,fn)||Ct(e,In),registered:!1},{compressionMethod:Yn,compression:!1,decompression:Ct(r,Ps)||Ct(e,Ps),registered:!1}];for(let s of Ad()){let a=Ni(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 Ct(t,e){if(!t)return!1;let{supportedFormats:n}=t;return n?n.includes(e):bi(t,e)}var dm="2.8.60",fg=1024*1024,ug=".zip.js-temp";function Em(t={}){let{thresholdBytes:e=fg,directoryName:n=ug,getDirectory:r=()=>Bn.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 g(){let A=await s();l=dg(),u=await A.getFileHandle(l,{create:!0}),f=(await u.createWritable()).getWriter(),c=!0;for(let w of a)await f.write(w);a.length=0}let h=new at({async write(A){c?await f.write(A):(a.push(A),o+=A.length,o>e&&await g())},async close(){f&&(await f.close(),f=null)}}),E=0,_=new it({async pull(A){if(c){d||(d=(await u.getFile()).stream().getReader());let{value:w,done:T}=await d.read();T?A.close():A.enqueue(w)}else E<a.length?A.enqueue(a[E++]):A.close()},async cancel(A){d&&await d.cancel(A)}},{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:h,readable:_,dispose:R}}}function dg(){return st.randomUUID?st.randomUUID():je.from(st.getRandomValues(new Y(16)),t=>t.toString(16).padStart(2,"0")).join("")}var Eg=1024*1024;function hm(t={}){let{thresholdBytes:e=Eg}=t;return function(){let n=[],r=0,i=!1,s,a,o;async function c(){let g=new we;a=Qt(g.readable),s=g.writable.getWriter(),i=!0;for(let h of n)await s.write(h);n.length=0}let l=new at({async write(g){i?await s.write(g):(n.push(g),r+=g.length,r>e&&await c())},async close(){s&&(await s.close(),s=null)}}),u=0,f=new it({async pull(g){if(i){o||(o=(await a).stream().getReader());let{value:h,done:E}=await o.read();E?g.close():g.enqueue(h)}else u<n.length?g.enqueue(n[u++]):g.close()},async cancel(g){o&&await o.cancel(g)}},{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 hg=1024*1024,gg=".zip.js-temp",mg=512*1024,wg="createSyncAccessHandle is only available in dedicated workers";function gm(t={}){let{thresholdBytes:e=hg,directoryName:n=gg,getDirectory:r}=t;if(!r&&(typeof FileSystemFileHandle>"u"||!FileSystemFileHandle.prototype.createSyncAccessHandle))throw new S(wg);let i=r||(()=>Bn.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,g=0;async function h(){let w=await a();u=_g(),f=await(await w.getFileHandle(u,{create:!0})).createSyncAccessHandle(),l=!0;for(let y of o)f.write(y,{at:d}),d+=y.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 h())},close(){f&&f.flush()}}),_=0,R=new it({pull(w){if(l){let T=d-g;if(T<=0){w.close();return}let y=new Y(X.min(mg,T)),O=f.read(y,{at:g});O?(g+=O,w.enqueue(y.subarray(0,O))):w.close()}else _<o.length?w.enqueue(o[_++]):w.close()}},{highWaterMark:0});async function A(){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:A}}}function _g(){return st.randomUUID?st.randomUUID():je.from(st.getRandomValues(new Y(16)),t=>t.toString(16).padStart(2,"0")).join("")}try{Xu({baseURI:import.meta.url})}catch{}var Pe=Y,Xe=Hf,$i=Int32Array,Qr=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]),es=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]),hi=new Pe([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),mf=function(t,e){for(var n=new Xe(31),r=0;r<31;++r)n[r]=e+=1<<t[r-1];for(var i=new $i(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}},wf=mf(Qr,2),_f=wf.b,gi=wf.r;_f[28]=258,gi[258]=28;var Tf=mf(es,0),Tg=Tf.b,Ao=Tf.r,mi=new Xe(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,mi[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 Xe(e);i<r;++i)t[i]&&++s[t[i]-1];var a=new Xe(e);for(i=1;i<e;++i)a[i]=a[i-1]+s[i-1]<<1;var o;if(n){o=new Xe(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[mi[f]>>c]=l}else for(o=new Xe(r),i=0;i<r;++i)t[i]&&(o[i]=mi[a[t[i]-1]++]>>15-t[i]);return o}),Gt=new Pe(288);for(de=0;de<144;++de)Gt[de]=8;var de;for(de=144;de<256;++de)Gt[de]=9;var de;for(de=256;de<280;++de)Gt[de]=7;var de;for(de=280;de<288;++de)Gt[de]=8;var de,nr=new Pe(32);for(de=0;de<32;++de)nr[de]=5;var de,pg=dt(Gt,9,0),Rg=dt(Gt,9,1),Ag=dt(nr,5,0),yg=dt(nr,5,1),ms=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},ws=function(t,e){var n=e/8|0;return(t[n]|t[n+1]<<8|t[n+2]<<16)>>(e&7)},Ji=function(t){return(t+7)/8|0},pf=function(t,e,n){return(n==null||n>t.length)&&(n=t.length),new Pe(t.subarray(e,n))},Sg=["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 S(e||Sg[t]);if(r.code=t,S.captureStackTrace&&S.captureStackTrace(r,pt),!n)throw r;return r},Ig=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(X.max(Re*2,Q));oe.set(n),n=oe}},u=e.f||0,f=e.p||0,d=e.b||0,g=e.l,h=e.d,E=e.m,_=e.n,R=i*8;do{if(!g){u=Qe(t,f,1);var A=Qe(t,f+1,3);if(f+=3,A)if(A==1)g=Rg,h=yg,E=9,_=5;else if(A==2){var O=Qe(t,f,31)+257,b=Qe(t,f+10,15)+4,F=O+Qe(t,f+5,31)+1;f+=14;for(var P=new Pe(F),v=new Pe(19),M=0;M<b;++M)v[hi[M]]=Qe(t,f+M*3,7);f+=b*3;for(var z=ms(v),V=(1<<z)-1,k=dt(v,z,1),M=0;M<F;){var G=k[Qe(t,f,V)];f+=G&15;var w=G>>4;if(w<16)P[M++]=w;else{var N=0,I=0;for(w==16?(I=3+Qe(t,f,3),f+=2,N=P[M-1]):w==17?(I=3+Qe(t,f,7),f+=3):w==18&&(I=11+Qe(t,f,127),f+=7);I--;)P[M++]=N}}var C=P.subarray(0,O),x=P.subarray(O);E=ms(C),_=ms(x),g=dt(C,E,1),h=dt(x,_,1)}else pt(1);else{var w=Ji(f)+4,T=t[w-4]|t[w-3]<<8,y=w+T;if(y>i){c&&pt(0);break}o&&l(d+T),n.set(t.subarray(w,y),d),e.b=d+=T,e.p=f=y*8,e.f=u;continue}if(f>R){c&&pt(0);break}}o&&l(d+131072);for(var Z=(1<<E)-1,L=(1<<_)-1,q=f;;q=f){var N=g[ws(t,f)&Z],ne=N>>4;if(f+=N&15,f>R){c&&pt(0);break}if(N||pt(2),ne<256)n[d++]=ne;else if(ne==256){q=f,g=null;break}else{var re=ne-254;if(ne>264){var M=ne-257,$=Qr[M];re=Qe(t,f,(1<<$)-1)+_f[M],f+=$}var ce=h[ws(t,f)&L],ae=ce>>4;ce||pt(3),f+=ce&15;var x=Tg[ae];if(ae>3){var $=es[ae];x+=ws(t,f)&(1<<$)-1,f+=$}if(f>R){c&&pt(0);break}o&&l(d+131072);var Ae=d+re;if(d<x){var Ne=s-x,he=X.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=g,e.p=q,e.b=d,e.f=u,g&&(u=1,e.m=E,e.d=h,e.n=_)}while(!u);return d!=n.length&&a?pf(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},Cn=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},_s=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:Af,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(y,O){return y.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 g=new Xe(d+1),h=wi(n[u-1],g,0);if(h>e){var r=0,E=0,_=h-e,R=1<<_;for(s.sort(function(O,b){return g[b.s]-g[O.s]||O.f-b.f});r<i;++r){var A=s[r].s;if(g[A]>e)E+=R-(1<<h-g[A]),g[A]=e;else break}for(E>>=_;E>0;){var w=s[r].s;g[w]<e?E-=1<<e-g[w]++-1:++r}for(;r>=0&&E;--r){var T=s[r].s;g[T]==e&&(--g[T],++E)}h=e}return{t:new Pe(g),l:h}},wi=function(t,e,n){return t.s==-1?X.max(wi(t.l,e,n+1),wi(t.r,e,n+1)):e[t.s]=n},yo=function(t){for(var e=t.length;e&&!t[--e];);for(var n=new Xe(++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}},Ln=function(t,e){for(var n=0,r=0;r<e.length;++r)n+=t[r]*e[r];return n},Rf=function(t,e,n){var r=n.length,i=Ji(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},So=function(t,e,n,r,i,s,a,o,c,l,u){_t(e,u++,n),++i[256];for(var f=_s(i,15),d=f.t,g=f.l,h=_s(s,15),E=h.t,_=h.l,R=yo(d),A=R.c,w=R.n,T=yo(E),y=T.c,O=T.n,b=new Xe(19),F=0;F<A.length;++F)++b[A[F]&31];for(var F=0;F<y.length;++F)++b[y[F]&31];for(var P=_s(b,7),v=P.t,M=P.l,z=19;z>4&&!v[hi[z-1]];--z);var V=l+5<<3,k=Ln(i,Gt)+Ln(s,nr)+a,G=Ln(i,d)+Ln(s,E)+a+14+3*z+Ln(b,v)+2*b[16]+3*b[17]+7*b[18];if(c>=0&&V<=k&&V<=G)return Rf(e,u,t.subarray(c,c+l));var N,I,C,x;if(_t(e,u,1+(G<k)),u+=2,G<k){N=dt(d,g,0),I=d,C=dt(E,_,0),x=E;var Z=dt(v,M,0);_t(e,u,w-257),_t(e,u+5,O-1),_t(e,u+10,z-4),u+=14;for(var F=0;F<z;++F)_t(e,u+3*F,v[hi[F]]);u+=3*z;for(var L=[A,y],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+=v[re],re>15&&(_t(e,u,ne[F]>>5&127),u+=ne[F]>>12)}}else N=pg,I=Gt,C=Ag,x=nr;for(var F=0;F<o;++F){var $=r[F];if($>255){var re=$>>18&31;Cn(e,u,N[re+257]),u+=I[re+257],re>7&&(_t(e,u,$>>23&31),u+=Qr[re]);var ce=$&31;Cn(e,u,C[ce]),u+=x[ce],ce>3&&(Cn(e,u,$>>5&8191),u+=es[ce])}else Cn(e,u,N[$]),u+=I[$]}return Cn(e,u,N[256]),u+I[256]},Dg=new $i([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),Af=new Pe(0),Ng=function(t,e,n,r,i,s){var a=s.z||t.length,o=new Pe(r+a+5*(1+X.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=Dg[e-1],d=f>>13,g=f&8191,h=(1<<n)-1,E=s.p||new Xe(32768),_=s.h||new Xe(h+1),R=X.ceil(n/3),A=2*R,w=function(ee){return(t[ee]^t[ee+1]<<R^t[ee+2]<<A)&h},T=new $i(25e3),y=new Xe(288),O=new Xe(32),b=0,F=0,P=s.i||0,v=0,M=s.w||0,z=0;P+2<a;++P){var V=w(P),k=P&32767,G=_[V];if(E[k]=G,_[V]=k,M<=P){var N=a-P;if((b>7e3||v>24576)&&(N>423||!l)){u=So(t,c,0,T,y,O,F,v,z,P-z,u),v=b=F=0,z=P;for(var I=0;I<286;++I)y[I]=0;for(var I=0;I<30;++I)O[I]=0}var C=2,x=0,Z=g,L=k-G&32767;if(N>2&&V==w(P-L))for(var q=X.min(d,N)-1,ne=X.min(32767,P),re=X.min(258,N);L<=ne&&--Z&&k!=G;){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=X.min(L,$-2),ae=0,I=0;I<ce;++I){var Ae=P-L+I&32767,Ne=E[Ae],he=Ae-Ne&32767;he>ae&&(ae=he,G=Ae)}}}k=G,G=E[k],L+=k-G&32767}if(x){T[v++]=268435456|gi[C]<<18|Ao[x];var Q=gi[C]&31,Re=Ao[x]&31;F+=Qr[Q]+es[Re],++y[257+Q],++O[Re],M=P+C,++b}else T[v++]=t[P],++y[t[P]]}}for(P=X.max(P,M);P<a;++P)T[v++]=t[P],++y[t[P]];u=So(t,c,l,T,y,O,F,v,z,P-z,u),l||(s.r=u&7|c[u/8|0]<<3,u-=7,s.h=_,s.p=E,s.i=P,s.w=M)}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=Rf(c,u+1,t.subarray(P,oe))}s.i=a}return pf(o,0,r+Ji(u)+i)},bg=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 Ng(t,e.level==null?6:e.level,e.mem==null?i.l?X.ceil(X.max(8,X.min(13,X.log(t.length)))*1.5):20:12+e.mem,n,r,i)};function yf(t,e){return bg(t,e||{},0,0)}function mm(t,e){return Ig(t,{i:2},e&&e.out,e&&e.dictionary)}var Og=typeof Ir<"u"&&new Ir,Fg=0;try{Og.decode(Af,{stream:!0}),Fg=1}catch{}async function Qi(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$/,g=/index\.html$/,h=/frames\//,E=/^frames\/\d+\/index.html/,_=/manifest\.json$/,R=";charset=utf-8",A=/([{}()^$&.*?/+|[\\\\]|\]|-)/g,w;if(zip.configure(r),!s){let N;t.readUint8Array?N=t:(Array.isArray(t)&&(t=new Blob([new Uint8Array(t)])),N=new zip.BlobReader(t)),w=new zip.ZipReader(N),s=await w.getEntries()}if(c){let N=s;s=s.map(I=>{let C=c[I.filename],x=C&&N.find(Z=>Z.filename==C);return x?{filename:I.filename,comment:x.comment,encrypted:x.encrypted,uncompressedSize:x.uncompressedSize,getData:(Z,L)=>x.getData(Z,L)}:I})}a?s=s.filter(N=>N.filename.startsWith(a)):o&&(s=s.filter(N=>!o.some(I=>N.filename.startsWith(I))));let T={password:e},y,O,b,F=[],P=[],v=[];await Promise.all(s.map(async N=>{let I=N.filename.substring(a.length),C,x,Z,L,q={};if(!T.password&&N.encrypted&&(T.password=n("Please enter the password to view the page")),I.match(g)||I.match(u)||I.match(f))I.match(g)?P.push(q):v.push(q),C=new zip.TextWriter,N.uncompressedSize>0?Z=await N.getData(C,T):Z="",I.match(g)?L="text/html"+R:I.match(u)?L="text/css"+R:I.match(f)&&(L="text/javascript"+R);else{F.push(q);let ce=I.match(/\.([^.]+)/);if(ce&&ce[1]&&l[ce[1]]?L=l[ce[1]]:L="application/octet-stream",I.match(h)||i)x=await N.getData(new zip.Data64URIWriter(L),T);else{let ae=await N.getData(new zip.BlobWriter(L),T);x=URL.createObjectURL(ae)}}let ne=I.match(/^([0-9_]+\/)?(.*)$/)[2],re="",$=I.match(/(.*\/)[^/]+$/);$&&$[1]&&(re=$[1]),Object.assign(q,{prefixPath:re,filename:I,name:ne,url:N.comment,content:x,mimeType:L,textContent:Z,parentResources:[]})})),w&&await w.close(),P.sort(k),v.sort(G),F=F.sort(k).concat(...v).concat(...P);for(let N of F){let{filename:I,prefixPath:C}=N,{textContent:x}=N;x!==void 0&&(I.match(d)&&(O=x),I.match(f)||(F.forEach(Z=>{let{filename:L,parentResources:q,content:ne}=Z;if(L.startsWith(C)&&L!=N.filename){let re=L.substring(C.length);re.match(_)||x.includes(re)&&(q.push(N.filename),Z.textContent===void 0&&(x=V(x,re,ne)))}}),N.textContent=x))}for(let N of F){let{textContent:I,prefixPath:C,filename:x}=N;if(I!==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(_)||I.indexOf(ne)!=-1&&(L.content=await M(L),I=V(I,ne,L.content))}}N.textContent=I,N.content=await M(N)}x.match(d)&&(y=I,b=N.url)}}return{docContent:y,origDocContent:O,resources:F,url:b};async function M(N){return N.filename.match(h)&&!N.filename.match(E)||i?await z(N.textContent,N.mimeType):URL.createObjectURL(new Blob([N.textContent],{type:N.mimeType}))}async function z(N,I){let C=new Blob([N],{type:I}),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(R,"")}function V(N,I,C){if(typeof N.replaceAll=="function")return N.replaceAll(I,C);{let x=new RegExp(I.replace(A,"\\$1"),"g");return N.replace(x,C)}}function k(N,I){let C=I.filename.length-N.filename.length;return C||I.filename.localeCompare(N.filename)}function G(N,I){let C=N.filename.length-I.filename.length;return C||N.filename.localeCompare(I.filename)}}async function ea(t,e,{disableFramePointerEvents:n,inPlace:r}={}){e=e.replace(/<noscript/gi,"<template disabled-noscript"),e=e.replace(/<\/noscript/gi,"</template");let i=new DOMParser().parseFromString(e,"text/html");if(n&&i.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&&i.compatMode==t.compatMode&&!i.querySelector("script")){await Promise.all(Array.from(i.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(i.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(s(i)),t.write(i.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)));function s(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}}async function Sf(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,g="#551a8b",h="data-sfz-unarchived",E="a["+h+']::after{content:" \\2197";font-size:.75em;opacity:.7}',_="Not saved in this archive",R=["http:","https:"],A=100,{zip:w,document:T,location:y,history:O,CSS:b,URL:F,setTimeout:P,clearTimeout:v}=globalThis,M=new Map,z=new Map,V=new Map,k=new Set,G=Math.random().toString(36).substring(2),N,I,C,x,Z=0;try{O.scrollRestoration="manual"}catch{}w.configure({useWebWorkers:!0});let q=await new w.ZipReader(t.readUint8Array?t:new w.BlobReader(t)).getEntries(),ne=q.find(p=>p.filename==s);if(!ne)throw new Error("Pages data not found");let re=JSON.parse(await ne.getData(new w.TextWriter)),$=q.find(p=>p.filename==a),{pages:ce}=re,ae=re.pageTransitions||"auto",Ae=new Map(Object.entries(re.aliases||{}));return ce.forEach(p=>{z.set(Oe(p.url),p.path),p.originalUrls&&p.originalUrls.forEach(D=>z.set(Oe(D),p.path))}),Ne(),I=Wt(),I===null&&(I=Ze()),oe(!0);function Ne(){globalThis.addEventListener("click",Q,!0),globalThis.addEventListener("auxclick",Q,!0),globalThis.addEventListener("mouseover",Xt,!0),globalThis.addEventListener("hashchange",he)}function he(){Re().catch(p=>globalThis.console.error(p))}function Q(p){if(p.type=="auxclick"&&p.button!=1)return;let D=Le(p.target);if(D&&D.href){let H=dr(D.href);if(H&&H.startsWith(o)&&Oe(D.href)==Oe(y.href))return;let se=z.get(Oe(D.href));if(se===void 0&&H&&Oe(D.href)==Oe(y.href)&&(se=N),se!==void 0)if(p.preventDefault(),p.type=="auxclick"||p.metaKey||p.ctrlKey||p.shiftKey||p.altKey)globalThis.open(Oe(y.href)+o+se+(H||""));else{let le=y.hash;y.hash=o+se+(H||""),y.hash==le&&H&&(xt(),ke(H))}}}async function Re(){xt(),V.set(I,sn());let p=$e(),D=Wt(),{routed:H,path:se,fragment:le}=ee();H&&se!=N&&B(se)&&T.startViewTransition&&ot()&&!ct()?await T.startViewTransition(ve).updateCallbackDone:await ve();async function ve(){let Pt=await oe();Pt&&rs(),an(Pt)}function an(Pt){if(D!==null){I=D;let on=V.get(D);if(on&&(bt(on.elements),globalThis.scrollTo(on.x,on.y)),le){let ua=Ke(le);ua&&Zt(ua)}}else I=Ze(),Pt&&bt(p),le?ke(le):Pt&&globalThis.scrollTo(0,0)}}async function oe(p){let{routed:D,path:H,fragment:se}=ee();if(!D&&!p||H==N||!B(H))return!1;let le=await ye(H);return N=H,await n(T,le,{inPlace:!0}),Ne(),H==c&&We(),k.add(H),Ue(),re.markUnarchivedLinks&&Ft(),p&&(se?ke(se):!D&&y.hash&&ke(y.hash)),!0}function ee(){let p=y.hash,D=!p||p.startsWith(o),H=ce[0].path,se;return D&&p&&({path:H,fragment:se}=ue(p)),{routed:D,path:H,fragment:se}}function ue(p){let D=p.substring(o.length),H=D.indexOf("#");return{path:decodeURIComponent(H==-1?D:D.substring(0,H)),fragment:H==-1?void 0:D.substring(H)}}function B(p){return p==c?!!$:!!ce.find(D=>D.path==p)}function ye(p){if(!M.has(p)){let D=Ee(p);D.catch(()=>M.delete(p)),M.set(p,D)}return M.get(p)}async function Ee(p){if(p==c)return $.getData(new w.TextWriter);let D=q.filter(se=>be(se.filename,p)&&!Ae.has(se.filename)).concat(He(p)),{docContent:H}=await e(null,{entries:D,pagePath:p});return H}function He(p){return Array.from(Ae).filter(([D])=>be(D,p)).map(([D,H])=>{let se=q.find(le=>le.filename==H);return se&&{filename:D,comment:se.comment,encrypted:se.encrypted,uncompressedSize:se.uncompressedSize,getData:(le,Je)=>se.getData(le,Je)}}).filter(Boolean)}function be(p,D){return D==""?!p.startsWith(r)&&!p.startsWith(i):p.startsWith(D)}function We(){let p=new Map;ce.forEach(D=>p.set(new F(D.path+"index.html",Oe(y.href)).href,D.path)),T.querySelectorAll("a[href]").forEach(D=>{let H=dr(D.href),se=p.get(Oe(D.href));se!==void 0&&D.setAttribute("href",o+se+(H||""))})}function mt(p){let D=dr(p);return D&&D.startsWith(o)&&Oe(p)==Oe(y.href)?ue(D).path:z.get(Oe(p))}function Xt(p){let D=Le(p.target);if(D&&D.href){let H=mt(D.href);H!==void 0&&H!=N&&!M.has(H)&&(v(x),x=P(()=>ye(H).catch(()=>{}),A))}}function Le(p){for(;p&&p.tagName!="A";)p=p.parentNode;return p}function ot(){return ae=="fade"?!0:ae=="none"?!1:Array.from(T.styleSheets).some(p=>{try{return Se(p.cssRules)}catch{return!1}})}function Se(p){return Array.from(p).some(D=>D.navigation=="auto"||D.cssRules&&D.cssRules.length&&Se(D.cssRules))}function ct(){return!!(globalThis.matchMedia&&globalThis.matchMedia("(prefers-reduced-motion: reduce)").matches)}function Wt(){let p=O.state;return p&&p.sfzSession==G&&typeof p.sfzEntry=="number"?p.sfzEntry:null}function Ze(){let p=Z++;try{O.replaceState({sfzSession:G,sfzEntry:p},"")}catch{}return p}function sn(){return{x:globalThis.scrollX,y:globalThis.scrollY,elements:$e()}}function $e(){let p=[];return T.querySelectorAll("*").forEach(D=>{if(D.scrollTop||D.scrollLeft){let H=Ot(D);H&&p.push({path:H,top:D.scrollTop,left:D.scrollLeft})}}),p}function bt(p){p.forEach(({path:D,top:H,left:se})=>{let le;try{le=T.querySelector(D)}catch{}le&&(le.scrollTop=H,le.scrollLeft=se)})}function Ot(p){let D=[];for(;p&&p.parentElement;){if(p.id&&b)return D.unshift("#"+b.escape(p.id)),D.join(">");let H=p.parentElement;D.unshift(p.tagName+":nth-child("+(Array.from(H.children).indexOf(p)+1)+")"),p=H}return D.join(">")}function ke(p){let D=Ke(p);D&&(Zt(D),D.scrollIntoView())}function Ke(p){let D=decodeURIComponent(p.substring(1)),H=T.getElementById(D);return!H&&b&&(H=T.querySelector("a[name="+b.escape(D)+"]")),H}function Zt(p){let D=Fe(u,l);D&&(p.setAttribute(l,""),C=T.createElement("style"),C.textContent=D,T.head.appendChild(C))}function Ue(){let p=T.createElement("style");p.textContent="a["+f+"]{color:"+g+"}"+Fe(d,f),T.head.appendChild(p),T.querySelectorAll("a[href]").forEach(D=>{let H=mt(D.href);H!==void 0&&k.has(H)&&D.setAttribute(f,"")})}function Ft(){let p=T.createElement("style");p.textContent=E,T.head.appendChild(p),T.querySelectorAll("a[href]").forEach(D=>{R.includes(D.protocol)&&z.get(Oe(D.href))===void 0&&Oe(D.href)!=Oe(y.href)&&(D.setAttribute(h,""),D.hasAttribute("title")||D.setAttribute("title",_))})}function xt(){if(C){let p=T.querySelector("["+l+"]");p&&p.removeAttribute(l),C.remove(),C=void 0}}function Fe(p,D){let H="";return Array.from(T.styleSheets).forEach(se=>{try{H+=ur(se.cssRules,p,D)}catch{}}),H}function ur(p,D,H){let se="";return Array.from(p).forEach(le=>{if(le.cssRules&&le.cssRules.length){let Je=ur(le.cssRules,D,H);Je&&(se+=le.cssText.substring(0,le.cssText.indexOf("{")+1)+Je+"}")}else if(le.selectorText){let Je=le.selectorText.replace(D,"["+H+"]");Je!=le.selectorText&&(se+=Je+"{"+le.style.cssText+"}")}}),se}function rs(){let p=T.querySelector("h1")||T.body;p&&(p.setAttribute("tabindex","-1"),p.focus({preventScroll:!0}))}function Oe(p){let D=p.indexOf("#");return D==-1?p:p.substring(0,D)}function dr(p){let D=p.indexOf("#");return D==-1?void 0:p.substring(D)}}var{Blob:ia,fetch:xg,TextEncoder:Yt,TextDecoder:Pg,DOMParser:If}=globalThis,ns=new Pg("windows-1252"),Cg=[".jpg",".jpeg",".png",".avi",".apng",".pdf",".woff2",".mp4",".mp3",".ogg",".webp",".webm",".avi",".mpeg",".ts",".ogv",".heif",".heic"],Lg="/lib/single-file-zip.min.js",lr=[["<noscript>","</noscript>"],["<noframes>","</noframes>"],["<noembed>","</noembed>"],["<script type=sfz-data>","</script>"],["<style type=sfz-data>","</style>"],["<iframe>","</iframe>"],["<xmp>","</xmp>"],["<plaintext>","</plaintext>"]],bf=[["<!--","-->"],...lr],ca=[[/<noscript/i,/<\/noscript[\t\n\f\r />]/i],[/<noframes/i,/<\/noframes[\t\n\f\r />]/i],[/<noembed/i,/<\/noembed[\t\n\f\r />]/i],[/<script/i,/<\/script[\t\n\f\r />]/i],[/<style/i,/<\/style[\t\n\f\r />]/i],[/<iframe/i,/<\/iframe[\t\n\f\r />]/i],[/<xmp/i,/<\/xmp[\t\n\f\r />]/i],[/<plaintext/i,/<\/plaintext[\t\n\f\r />]/i]],Of=[[/<!--/i,/--!?>/i],...ca],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}),ta=12,Df=8,Nf=25,Ug="page.pdf",vg=67324752,Mg=33639248,Bg=101010256,Hg=101075792,zg=117853008,ts=globalThis.browser;async function Om(t,e,n=new Date){let r;return e.zipScript?r=e.zipScript:ts&&ts.runtime&&ts.runtime.getURL&&(ar({workerURI:"/lib/single-file-z-worker.js"}),r=await(await xg(ts.runtime.getURL(Lg))).text()),Vt(t,e,r,i=>(t.url=e.url,t.archiveTime=new Date().toISOString(),Lf(i,t,{password:e.password,disableCompression:e.disableCompression},e.createRootDirectory?String(Date.now())+"_"+(e.tabId||0)+"/":"",e.url)),n)}async function Vt(t,e,n,r,i=new Date){let s=new Nn;s.init();let a,o,c,l,u;if(e.embeddedImage){e.embeddedImage=new Uint8Array(e.embeddedImage);let E=e.embeddedImage.slice(Df+Nf,e.embeddedImage.length-ta);if(await ze(s.writable,e.embeddedImage.slice(0,Df+Nf)),e.selfExtractingArchive){let _=ns.decode(E),R=Of.slice(0,-1).findIndex(O=>!_.match(O[1])),A;[A,l]=R==-1?["",""]:bf[R];let w=Pf(t,e,i,A),T=w.htmlArray;w.pdfEntry&&(u=w.pdfEntry,u.offset+=s.offset+12);let y=new Uint8Array([...ra(T.length+4),116,69,88,116,80,78,71,0,...T]);await ze(s.writable,y),await ze(s.writable,na(y,4))}else if(e.embeddedPdf){let _=new Uint8Array([...ra(e.embeddedPdf.length+4),116,69,88,116,80,68,70,0,...new Uint8Array(e.embeddedPdf)]);await ze(s.writable,_),await ze(s.writable,na(_,4))}await ze(s.writable,E),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 Yt().encode(l))}if(e.selfExtractingArchive){let E=await Yg(t,s,n,e,i);a=E.extraDataOffset,u=u||E.pdfEntry}else!e.embeddedImage&&e.embeddedPdf&&await ze(s.writable,new Uint8Array(e.embeddedPdf));let f=s.offset,d=new $n({writable:s.writable,size:f},{bufferedWrite:!0,keepOrder:!0,lastModDate:i,useCompressionStream:!0});await r(d),u&&(new DataView(u.centralRecord.buffer).setUint32(42,u.offset,!0),await ze(s.writable,u.centralRecord)),await d.close(void 0,{preventClose:!0}),u&&Gg(s,u.centralRecord.length);let g=s.getData();if(e.selfExtractingArchive){let E=[],_=-1;if(e.extractDataFromPage){if(!e.extractDataFromPageTags||e.extractDataFromPageTags[0]!="<plaintext>"){let w=ns.decode(g.subarray(f));if(e.extractDataFromPageTags){let T=lr.indexOf(e.extractDataFromPageTags),y=ca[T];if(w.match(y[0])||w.match(y[1]))return oa(w,t,e,n,r,i,T+1)}else if(w.match(/<!--/i)||w.match(/--!?>/i))return oa(w,t,e,n,r,i)}for(let w=f;w<g.length;w++){let T=g[w];_=_>>>8^aa[(_^T)&255],T==10?E.push(0):T==13&&(g[w+1]==10?(w++,_=_>>>8^aa[(_^10)&255],E.push(2)):E.push(1))}_=(_^-1)>>>0}let R="";e.preventAppendedData||(e.extractDataFromPageTags?R+=e.extractDataFromPageTags[1]:R+="-->");let A=e.preventAppendedData||e.embeddedImage?"":"</body></html>";if(e.extractDataFromPage){let w=new Uint32Array(3+Math.ceil(E.length/16));if(w[0]=_,w[1]=g.length-f,w[2]=E.length,E.forEach((T,y)=>w[3+(y>>4)]|=T<<(y&15)*2),o="<sfz-extra-data>"+Wg(yf(new Uint8Array(w.buffer)))+"</sfz-extra-data>",e.preventAppendedData||o.length>65535-A.length-(e.embeddedImage?ta:0)){if(!e.extraDataSize)return e.extraDataSize=Math.floor(o.length*1.001),Vt(t,e,n,r,i)}else{if(e.extraDataSize)return e.extraDataSize=void 0,Vt(t,e,n,r,i);R+=o}}R+=A,await ze(s.writable,new Yt().encode(R))}await s.writable.close();let h=await s.getData();if(e.extractDataFromPage&&e.extraDataSize!==void 0)if(e.extraDataSize>=o.length)h.set(new Yt().encode(o),f-a);else return e.extraData=o,e.extraDataSize=Math.floor(o.length*1.001),Vt(t,e,n,r,i);return e.embeddedImage?(h.set(ra(s.offset-c-4),c-4),new ia([h,na(h,c),e.embeddedImage.slice(e.embeddedImage.length-ta)],{type:"application/octet-stream"})):new ia([h],{type:"application/octet-stream"})}function na(t,e=0){let n=new Uint8Array(4);return xf(n,Ff(t,e)),n}function Ff(t,e=0){let n=-1;for(;e<t.length;e++)n=n>>>8^aa[(n^t[e])&255];return(n^-1)>>>0}function kg(t,e=new Date){let n=new Yt().encode(Ug),r=Ff(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,vg,!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,Mg,!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 Gg(t,e){let n=new DataView(t.array.buffer),r=t.offset-22;if(n.getUint32(r,!0)!=Bg)return;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)==zg){if(c=Number(n.getBigUint64(o+8,!0))+e,n.getUint32(c,!0)!=Hg)return}else if(i+1>=65535||s+1>=65535||a+e>=4294967295)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))}function ra(t){let e=new Uint8Array(4);return xf(e,t),e}function xf(t,e){t[0]=e>>24,t[1]=e>>16,t[2]=e>>8,t[3]=e}async function Yg(t,e,n,r,i){let s="",a;if(!r.embeddedImage){let d=Pf(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){let d=new If().parseFromString(t.content,"text/html");d.body.querySelectorAll("style, script, noscript").forEach(h=>h.remove());let g="";r.extractDataFromPage&&(g+=Cf(t)+`
|
|
1
|
+
var{Array:je,Object:U,String:ha,Number:pe,BigInt:Ce,Math:W,Date:yt,Map:gt,Set:Sr,Response:Yf,URL:Ir,Error:I,Uint8Array:V,Uint16Array:Vf,Uint32Array:No,DataView:tn,Blob:An,Promise:ge,TextEncoder:ga,TextDecoder:Dr,crypto:st,btoa:ma,TransformStream:we,ReadableStream:it,WritableStream:at,CompressionStream:wa,DecompressionStream:_a,navigator:Hn,Worker:mr,setTimeout:Xr,clearTimeout:Zr}=typeof globalThis<"u"?globalThis:self,me=4294967295,X=65535,rt=255,xn=8,Vn=9,St=0,Kr=99,bo=67324752,sr=134695760,Wf=808471376,Oo=sr,Xf=134630224,Fo=84233040,Mt=33639248,xo=101010256,Rs=101075792,pi=117853008,yn=46,Ie=22,vt=20,et=56,Ta=Ie+vt+et,Po=12,Co=20,Kt=4,Ht=4,qr=1,Lo=39169,Uo=10,vo=1,Ri=21589,Zf=28789,Kf=25461,Mo=6534,Bo=30837,Ho=30805,qf=22613,jf=13,Nr=1,zo=6,$f=2,Jf=4,Qf=6,br=8,pa=32,Ra=64,Or=2048,Aa=8192,Fr=16,As=1,ys=2,Ss=4,Is=32,En=61440,zn=16384,ko=40960,eu=32768,kn=73,wr=420,Ds=2048,Ns=1024,bs=512,tu=10,nu=20,xr=45,ya=51,ru=20,Sa=768,hn="/",Ve=30,su=0,Wn=10,ir=14,ar=18,iu=22,au=24,qt=4,Ia=new yt(2107,11,31,23,59,58),Pr=new yt(1980,0,1),w=void 0,cn=1/0,It="undefined",De="function",ou="object",Sn="string",cu="number",lu="boolean",fe=new V,fu="filenameEncoding",uu="commentEncoding",du="decodeText",Eu="extractPrependedData",hu="extractAppendedData",Go="password",Yo="rawPassword",Vo="passThrough",Wo="signal",gu="checkPasswordOnly",mu="checkOverlappingEntryOnly",wu="checkOverlappingEntry",_u="checkAmbiguity",Tu="checkLocalDirectory",pu="checkSignature",Ru="checkCrc32",Au="checkAuthenticationCode",Xo="useWebWorkers",Zo="useCompressionStream",Ko="transferStreams",qo="preventClose",yu="encryptionStrength",Su="extendedTimestamp",Iu="ntfsTimestamp",Du="keepOrder",Nu="level",bu="bufferedWrite",Ou="createTempStream",Fu="dataDescriptorSignature",xu="useUnicodeFileNames",jo="dataDescriptor",Pu="supportZip64SplitFile",Cu="encodeText",hr="offset",Xn="usdz",Lu="unixExtraFieldType",Uu="localExtraField",vu="centralExtraField",Mu="strictness",Bu="filenameValidation",Hu="normalizeFilename",$o="maxAppendedDataSize",zu="decryptCentralDirectory",ku="signCentralDirectory",Jo="filename",Qo="comment",nn="strict",Ai="balanced",Gt="tolerant",Gu="Invalid option (must be a function)",Yu="Invalid signal (must be an AbortSignal instance)",Vu="Invalid password (password must be a string, rawPassword must be a Uint8Array)";function yi(t){if(t&&typeof t!=De)throw new I(Gu);return t}function ec(t){if(t&&(typeof t.addEventListener!=De||typeof t.aborted!=lu))throw new I(Yu);return t||w}function tc(t,e){if(t&&typeof t!=Sn||e&&!(e instanceof V))throw new I(Vu)}function nc(t,e,n){if(!pe.isInteger(t)||t<0||t>e)throw new I(n)}function vn(t,e,n){t!==w&&nc(t,e,n)}function jr(t){return typeof t==Sn&&t.trim()?pe(t):t}var rc=64*1024,Wu=64,sc=1,Xu="Invalid maxWorkers (must be an integer greater than 0)",ic=2;try{typeof Hn!=It&&Hn.hardwareConcurrency&&(ic=Hn.hardwareConcurrency)}catch{}var Si={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:rc,maxWorkers:ic,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof wa!=It&&wa,DecompressionStream:typeof _a!=It&&_a},ac="maxWorkers",Zu=["baseURI","wasmURI","workerURI"],Ku=["useCompressionStream","useWebWorkers","transferStreams"],oc=["chunkSize",ac,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],cc=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],lc=[...Zu,...Ku,...oc,...cc],Zn={...Si};function rn(){return Zn}function Ii(t){return fc(t.chunkSize)}function fc(t){return t=jr(t),pe.isInteger(t)&&t>=sc?W.max(t,Wu):rc}function or(t){U.assign(Zn,uc(dc(t)))}function uc(t){let e={};for(let n of lc){let r=t[n];r!==w&&(e[n]=qu(n,r))}return e}function qu(t,e){if(oc.includes(t)){if(e=jr(e),t==ac&&(!pe.isInteger(e)||e<sc))throw new I(Xu)}else cc.includes(t)&&yi(e);return e}function dc(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=uc(dc(t));U.assign(Si,e),U.assign(Zn,e)}function gm(){for(let t of lc)delete Zn[t];U.assign(Zn,Si)}function zt(t,e){let n=new V(t.length+e.length);return n.set(t),n.set(e,t.length),n}function Ec(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 Gn=[[],[],[],[],[],[],[],[]];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;Gn[0][t]=e}for(let t=0;t<256;t++)for(let e=1;e<8;e++){let n=Gn[e-1][t];Gn[e][t]=n>>>8^Gn[0][n&255]}var[Da,$u,Ju,Qu,ed,td,nd,rd]=Gn,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=rd[o&255]^nd[o>>>8&255]^td[o>>>16&255]^ed[o>>>24&255]^Qu[c&255]^Ju[c>>>8&255]^$u[c>>>16&255]^Da[c>>>24&255]}}for(;i<r;i++)n=n>>>8^Da[(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 ga==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 ga().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}}},hc={};hc.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 No(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 gc={};gc.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,R,p;for(let T=0;T<r;T++)m=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],p=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=R,h=p;for(let T=0;T<4;T++)i[e?3&-T:T]=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 mc={};mc.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=hc.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 sd=typeof st!=It&&typeof st.getRandomValues==De,Di="Invalid password",Ni="Invalid signature",wc=Ni,bi="zipjs-abort-check-password",id="Crypto API not supported";function _c(t){if(sd)return st.getRandomValues(t);throw new I(id)}var ln=16,ad="raw",Tc={name:"PBKDF2"},od={name:"HMAC"},cd="SHA-1",ld=U.assign({hash:od},Tc),Os=U.assign({iterations:1e3,hash:{name:cd}},Tc),fd=["deriveBits"],Kn=[8,12,16],Cn=[16,24,32],Tt=10,ud=[0,0,0,0],$r=typeof st!=It,cr=$r&&st.subtle,pc=$r&&typeof cr!=It,ft=Lr.bytes,dd=gc.aes,Ed=mc.ctrGladman,hd=$t.hmacSha1,Na=$r&&pc&&typeof cr.importKey==De,ba=$r&&pc&&typeof cr.deriveBits==De,Fs=class extends we{constructor({password:e,rawPassword:n,encryptionStrength:r,checkPasswordOnly:i,checkAuthenticationCode:s=!0}){super({start(){Rc(this,e,n,r)},async transform(a,o){let c=this,{password:l,strength:u,resolveReady:f,ready:d}=c;l?(await gd(c,u,l,qe(a,0,Kn[u]+2)),a=qe(a,Kn[u]+2),i?o.error(new I(bi)):f()):await d;let h=new V(a.length-Tt-(a.length-Tt)%ln);o.enqueue(Ac(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=jn(ft,f);c.update(m);let R=o.update(m);h=qn(ft,R)}let g=qe(qn(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(wc);a.enqueue(h)}}})}},xs=class extends we{constructor({password:e,rawPassword:n,encryptionStrength:r}){super({start(){Rc(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 md(a,c,o),l()):await u;let d=new V(f.length+i.length-i.length%ln);d.set(f,0),s.enqueue(Ac(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(jn(ft,o));a.update(f),l=qn(ft,f)}let u=qn(ft,a.digest()).slice(0,Tt);i.enqueue(zt(l,u))}}})}};function Rc(t,e,n,r){U.assign(t,{ready:new ge(i=>t.resolveReady=i),password:Td(e,n),strength:r-1,pendingInput:fe})}function Ac(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=pd(n,r+(l-l%ln));let u;for(u=0;u<=l-ln;u+=ln){let f=jn(ft,qe(e,u,u+ln));s&&o.update(f);let d=a.update(f);s||o.update(d),n.set(qn(ft,d),u+r)}return t.pendingInput=qe(e,u),n}async function gd(t,e,n,r){let i=await yc(t,e,n,qe(r,0,Kn[e])),s=qe(r,Kn[e]);if(i[0]!=s[0]||i[1]!=s[1])throw new I(Di)}async function md(t,e,n){let r=_c(new V(Kn[e])),i=await yc(t,e,n,r);return zt(r,i)}async function yc(t,e,n,r){t.password=null;let i=await wd(ad,n,ld,!1,fd),s=await _d(U.assign({salt:r},Os),i,8*(Cn[e]*2+2)),a=new V(s),o=jn(ft,qe(a,0,Cn[e])),c=jn(ft,qe(a,Cn[e],Cn[e]*2)),l=qe(a,Cn[e]*2);return U.assign(t,{keys:{key:o,authentication:c,passwordVerification:l},ctr:new Ed(new dd(o),je.from(ud)),hmac:new hd(c)}),l}async function wd(t,e,n,r,i){if(Na)try{return await cr.importKey(t,e,n,r,i)}catch{return Na=!1,$t.importKey(e)}else return $t.importKey(e)}async function _d(t,e,n){if(ba)try{return await cr.deriveBits(t,e,n)}catch{return ba=!1,$t.pbkdf2(e,t.salt,Os.iterations,n)}else return $t.pbkdf2(e,t.salt,Os.iterations,n)}function Td(t,e){return e===w?_r(t):e}function pd(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 qn(t,e){return t.fromBits(e)}function jn(t,e){return t.toBits(e)}var gn=12,Ps=class extends we{constructor({password:e,rawPassword:n,passwordVerification:r,checkPasswordOnly:i}){super({start(){Sc(this,e,n,r)},transform(s,a){let o=this;if(o.password||o.rawPassword){let c=Oa(o,s.subarray(0,gn));if(o.password=o.rawPassword=null,(c[gn-1]^o.passwordVerification)!=0)throw new I(Di);s=s.subarray(gn)}i?a.error(new I(bi)):a.enqueue(Oa(o,s))}})}},Cs=class extends we{constructor({password:e,rawPassword:n,passwordVerification:r}){super({start(){Sc(this,e,n,r)},transform(i,s){let a=this,o,c;if(a.password||a.rawPassword){a.password=a.rawPassword=null;let l=_c(new V(gn));l[gn-1]=a.passwordVerification,o=new V(i.length+l.length),o.set(Fa(a,l),0),c=gn}else o=new V(i.length),c=0;o.set(Fa(a,i),c),s.enqueue(o)}})}};function Sc(t,e,n,r){U.assign(t,{password:e,rawPassword:n,passwordVerification:r}),Rd(t,e,n)}function Oa(t,e){let n=new V(e.length);for(let r=0;r<e.length;r++)n[r]=Ic(t)^e[r],Ur(t,n[r]);return n}function Fa(t,e){let n=new V(e.length);for(let r=0;r<e.length;r++)n[r]=Ic(t)^e[r],Ur(t,e[r]);return n}function Rd(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=xa(W.imul(xa(n+Dc(r)),134775813)+1),t.crcKey2.append([n>>>24]);let i=~t.crcKey2.get();t.keys=[r,n,i]}function Ic(t){let e=t.keys[2]|2;return Dc(W.imul(e,e^1)>>>8)}function Dc(t){return t&255}function xa(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(Ad())return new Yf(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 Ad(){return typeof An.prototype.stream!=De||new An([]).stream()instanceof it}function yd(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 Pa="Invalid codec definition",Sd="Reserved compression method",Id="Invalid codec module",Dd=[St,xn,Vn,Kr],mn=new gt,lr=new gt;function mm(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(Pa);if(Dd.includes(e))throw new I(Sd);let o=typeof i==De||typeof s==De;if(!o&&(typeof r!=Sn||!r.length))throw new I(Pa);mn.set(e,{compressionMethod:e,format:n,codecURI:r,versionNeeded:a}),o&&bc(n,{CompressionStream:i,DecompressionStream:s})}function wm(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 Nc(t){return mn.get(t)}function Nd(){return je.from(mn.values(),t=>U.assign({},t,lr.get(t.format)))}function Oi(t){return lr.get(t)}function bc(t,e){let{CompressionStream:n,DecompressionStream:r}=e;if(typeof n!=De&&typeof r!=De)throw new I(Id);lr.set(t,{CompressionStream:n,DecompressionStream:r})}async function bd(t,e){!lr.has(t)&&e&&bc(t,await import(e))}var Jr="Invalid uncompressed size",Oc="Invalid compressed data",Fc=Ni,Od="Compression method not supported",fn="deflate-raw",Ls="deflate64-raw",In="gzip",xc=10,Us=8,Fd=[31,139,8],xd=5e3,vs=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,R,p,T=super.readable,_=d&&Oi(d),A=l&&s&&!f&&!_&&(!a||c)&&!!(o&&i);if((!a||c)&&l&&!A&&(m=new Cr,T=nt(T,m)),s)if(_)T=wn(T,Lc(_.CompressionStream,d,{level:u,chunkSize:n,compressionMethod:h,uncompressedSize:g}));else if(A)p=new vr,T=wn(T,new i(In)),T=nt(T,p);else try{T=Uc(T,o,{level:u,chunkSize:n},i,r)}catch(O){let S;try{S=new i(In)}catch{throw O}T=wn(T,S),T=nt(T,new vr)}a&&(c?T=nt(T,new Cs(e)):(R=new xs(e),T=nt(T,R))),Cc(E,T,()=>{(!a||c)&&l&&(E.crc32=A?p.crc32:new tn(m.value.buffer).getUint32(0))})}},vr=class extends we{constructor(){let e,n=xc,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<=Us){r=zt(r,i);return}let o=a-Us,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 Pd(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(xc);E.set(Fd),g.enqueue(E)},transform(g,E){E.enqueue(g)},async flush(g){s=!0,d();try{await l}finally{h()}let E=new V(Us),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)),xd)}function h(){Zr(a)}}var Ms=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,R,p=super.readable;if(a&&(s?p=nt(p,new Ps(e)):(R=new Fs(e),p=nt(p,R))),l){let T=d&&Oi(d);if(T)p=wn(p,Lc(T.DecompressionStream,d,{chunkSize:n,compressionMethod:h,rawBitFlag:g,uncompressedSize:E}));else try{p=Uc(p,u,{chunkSize:n,deflate64:f},i,r)}catch(_){if(f||E===w)throw _;let A;try{A=new i(In)}catch{throw _}p=Pd(p,A,E)}p=vd(p)}o&&(m=new Cr,p=nt(p,m)),Cc(this,p,()=>{if(o){let T=new tn(m.value.buffer);if(c!=T.getUint32(0,!1))throw new I(Fc)}})}},Ca=new gt;function Fi(t,e){if(!t)return!1;let n=Ca.get(t);n||(n=new gt,Ca.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 Pc(t){return Fi(t,fn)}function Cd(t){return Fi(t,In)}function Cc(t,e,n){e=nt(e,new we({flush:n})),U.defineProperty(t,"readable",{get(){return e}})}function Lc(t,e,n){if(!t)throw new I(Od);return new t(e,n)}function Uc(t,e,n,r,i){let s=e&&r?r:i||r,a=n.deflate64?Ls: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 Ld(n,s),await Ud(r,s)}}}async function Ld(t,e){try{await t.abort(e)}catch{}}async function Ud(t,e){try{await t.cancel(e)}catch{}}function vd(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(Oc);throw o.cause=a,o}let{value:i,done:s}=r;s?n.close():n.enqueue(i)},cancel(n){return e.cancel(n)}})}var Md=64*1024,Bd="message",Hd="start",zd="pull",La="data",kd="ack",Gd="close",xi="deflate",vc="inflate",Bs=class extends we{constructor(e,n){super({});let r=this,{codecType:i}=e,s;i.startsWith(xi)?s=vs:i.startsWith(vc)&&(s=Ms),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=Md),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}}},Pi="Worker startup timeout",Yn,Ci,Hs,zs=()=>{};function Yd(t){Hs=t}async function Vd(t){let{CompressionStream:e,CompressionStreamFallback:n}=t;if(n&&!n.requiresModule||Pc(e)||Cd(e))return!0;if(n)try{return await zs(t),!0}catch{return!1}return!1}function Wd(){Yn=w,Ci=!1}function Ua(t){t.createWorker?Ci=!0:Yn=!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 Ci&&(u=w),U.assign(e,{busy:!0,generation:(e.generation||0)+1,readable:n.pipeThrough(new Mr(Ii(s))).pipeThrough(new ks(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)}}}),Yn===w&&(Yn=typeof mr!=It),(o&&Hs&&(Yn&&l||u)?Hs:Mc)(e,s)}},ks=class extends we{constructor({onstart:e,onprogress:n,size:r,onend:i}){let s=0;super({async start(){e&&await as(e,r)},async transform(a,o){s+=a.length,n&&await as(n,s,r),o.enqueue(a)},async flush(){i&&await as(i,s)}})}};async function as(t,...e){try{await t(...e)}catch{}}function Mc(t,e){return{run:()=>Gs(t,e)}}async function Gs({options:t,readable:e,writable:n,onTaskFinished:r},i){let s;try{if(t.compressed&&!t.format){let l=t.codecType.startsWith(xi),u=l?i.CompressionStreamFallback:i.DecompressionStreamFallback,f=l?i.CompressionStream:i.DecompressionStream;if(t.useCompressionStream){if(u&&u.requiresModule&&!Pc(f))try{await zs(i)}catch{}}else try{await zs(i)}catch{(!u||u.requiresModule)&&(t.useCompressionStream=!0)}}s=new Bs(t,i),await e.pipeThrough(s).pipeThrough(new Mr(Ii(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 va={type:"module"},Ys="error",Xd="messageerror",Ma,os,Ba,Vs=!0;try{Vs=typeof structuredClone==De&&structuredClone(new DOMException("","AbortError")).code!==w}catch{}Yd(Zd);function Zd(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 Ua(t),Mc(t,e)}U.assign(t,{worker:a,workerAlive:!1,terminated:!1,startupError:null,interface:{run:async()=>{try{return await Kd(t,{chunkSize:r,wasmURI:s,baseURI:n,workerStartupTimeout:i})}catch(o){if(o&&o.workerStartupFailed)return Ua(t),Ha(t),Gs(t,e);if(o&&o.codecImportFailed){if(t.reader)return Ha(t),Gs(t,e);t.onTaskFinished()}throw o}}}})}return t.interface}async function Kd(t,e){if(!t.worker){let{startupError:h}=t;t.startupError=null;let g=h||new I(Pi);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}=qd(t.writable),u;try{u=Ws({type:Hd,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 qd(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 Ha(t){let{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function Li(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(os===w||Ma!==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=va);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=va);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}}Ma=t,os=o,Ba=c}else a=new mr(os,Ba);return a.addEventListener(Bd,l=>{n.workerAlive=!0,Bc(n),$d(l,n)}),a.addEventListener(Ys,l=>za(l,n)),a.addEventListener(Xd,l=>za(l,n)),a}function jd(t){if(t.startupTimeout=null,t.workerAlive)return;let{rejectResult:e,writer:n}=t;if(Li(t),t.worker=null,e){let r=new I(Pi);r.workerStartupFailed=!0,e(r),n&&n.releaseLock()}}function Bc(t){let{startupTimeout:e}=t;e&&(Zr(e),t.startupTimeout=null)}function za(t,e){t.preventDefault&&t.preventDefault(),Bc(e);let{workerAlive:n,rejectResult:r,writer:i,onTaskFinished:s}=e;Li(e),n||(e.worker=null);let a=t.error||new I(t.message||Ys);n||(a=U.assign(new I(a.message||Ys),{workerStartupFailed:!0}),e.startupError=a),r&&(r(a),i&&i.releaseLock(),n&&s())}function Ws(t,{worker:e,writer:n,transferStreams:r,workerAlive:i}){try{let{value:s,readable:a,writable:o}=t,c=[];if(s&&(t.value=Ec(s),c.push(t.value.buffer)),r&&Vs&&i?(a&&c.push(a),o&&c.push(o)):t.readable=t.writable=null,c.length)try{return e.postMessage(t,c),!0}catch{Vs=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(s){throw n&&n.releaseLock(),s}}async function $d({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:R,name:p,outputSize:T,cause:_,codecImportFailed:A}=a,O=new I(E);U.assign(O,{stack:m,code:R,name:p,outputSize:T}),_&&(O.cause=U.assign(new I(_.message),{name:_.name})),A&&(O.codecImportFailed=!0),g(O)}else{if(n==zd){let{value:E,done:m}=await o.read();h()||Ws({type:La,value:E,done:m,messageId:i},e)}n==La&&(await c.ready,await c.write(new V(r)),h()||Ws({type:kd,messageId:i},e)),n==Gd&&g(null,s)}}catch(E){h()||(Li(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,ka=0;async function Hc(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=Jd(d,r.baseURI)),await bd(f,n.codecURI)),e.transferStreams=!f&&(i||i===w&&r.transferStreams);let m=!o&&!c&&!l&&!u,R=f===w||!!n.codecURI;return e.useWebWorkers=!m&&R&&(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 p()).run();async function p(){let _=Bt.find(A=>!A.busy);if(_)return Xs(_),new _n(_,t,e,T);if(Bt.length<E){let A={indexWorker:ka};return ka++,Bt.push(A),new _n(A,t,e,T)}else return new ge(A=>{Tn.push({resolve:A,stream:t,workerOptions:e}),pr=r.workerStarvationTimeout,Br()})}function T(_){if(zc(),Tn.length){let[{resolve:A,stream:O,workerOptions:S}]=Tn.splice(0,1);A(new _n(_,O,S,T)),Br()}else _.worker?(Xs(_),tE(_,e)):Bt=Bt.filter(A=>A!=_)}}function Jd(t,e){try{return new Ir(t,e).toString()}catch{return t}}function Br(){!pn&&Tn.length&&pe.isFinite(pr)&&pr>=0&&(pn=Xr(Qd,pr))}function zc(){pn&&(Zr(pn),pn=null)}function Qd(){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,eE)),Br()}}function eE(){zc(),Br()}function tE(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 Xs(t){let{terminateTimeout:e}=t;e&&(Zr(e),t.terminateTimeout=null)}async function _m(){await ge.allSettled(Bt.map(t=>(Xs(t),t.terminate()))),Wd()}var kc="\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(""),nE=kc.length==256;function rE(t){if(nE){let e="";for(let n=0;n<t.length;n++)e+=kc[t[n]];return e}else return new Dr().decode(t)}function Rr(t,e){return Gc(t,e,!0)}function sE(t,e){return Gc(t,e,!1)}function Gc(t,e,n){return e&&e.trim().toLowerCase()=="cp437"?rE(t):new Dr(e,{ignoreBOM:n}).decode(t)}var Yc="HTTP error ",Rt="HTTP Range not supported",Ga="HTTP resource changed",iE="Writer iterator completed too soon",aE="Writer not initialized",oE="text/plain",cE="Content-Length",lE="Content-Encoding",Ui="Content-Range",fE="Accept-Ranges",uE="Range",dE="Etag",EE="Last-Modified",hE="HEAD",Qr="GET",Vc="bytes",gE=256*1024,mE=16*1024*1024,vi="writable",Ya=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=Ii(rn())}={}){let i=this,s=0;return r=fc(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(aE);return e.writeUint8Array(Ec(r))}});U.defineProperty(e,vi,{get(){return n}})}writeUint8Array(){}},Va=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}},Wa=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+=ha.fromCharCode(e[r]);for(;r<e.length;r++)n.pendingCharacters+=ha.fromCharCode(e[r]);i.length>2?n.data+=ma(i):n.pendingCharacters=i+n.pendingCharacters}getData(){return this.data+ma(this.pendingCharacters)}},Zs,Wc;function wE(){Wc=(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();Zs=n==1}catch{Zs=!1}})()}var Dt=class extends Et{constructor(e){super(),U.assign(this,{sourceBlob:e,size:e.size}),Wc||wE()}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()):Zs?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)}},Ks=class extends Dn{constructor(e){super();let n=this,r=new we;U.defineProperty(n,vi,{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:oE}))}},Xa=class extends Ks{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():sE(new V(await r.arrayBuffer()),e)}},qs=class extends Et{constructor(e,n){super(),Xc(this,e,n)}async init(){await Zc(this,zr,Za),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 _E(n,a,W.min(o,s-a))}return super.createReadable(e)}readUint8Array(e,n){return Kc(this,e,n,zr,Za)}},js=class extends Et{constructor(e,n){super(),Xc(this,e,n)}async init(){await Zc(this,$s,Ka),super.init()}readUint8Array(e,n){return Kc(this,e,n,$s,Ka)}};function Xc(t,e,n){let{preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:o=!0,maximumRangeSize:c=mE,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 Zc(t,e,n){let{url:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o}=t;if(TE(r)&&(s||a)&&(typeof i==It||i)){let c=await e(Qr,t,Bi(t,o?-Ie:void 0)),l=c.headers.get(fE);if(!a&&(!l||l.toLowerCase()!=Vc))throw new I(Rt);{if(o){let f=new V(await c.arrayBuffer());c.status==206&&f.length==Ie&&(t.eocdCache=f)}Mi(t,c);let u=qc(c);u===w?await qa(t,e,n):t.size=u}}else await qa(t,e,n)}async function Kc(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,Bi(t,e,n));if(u.status!=206)throw new I(Rt);let f=u.headers.get(Ui);if(f){let h=pe(f.trim().split(/[\s-]+/)[1]);if(!pe.isNaN(h)&&h!=e)throw new I(Rt)}$c(t,u),Mi(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 _E(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,Bi(t,i,l));if(u.status!=206)throw new I(Rt);let f=u.headers.get(Ui);if(f){let d=pe(f.trim().split(/[\s-]+/)[1]);if(!pe.isNaN(d)&&d!=i)throw new I(Rt)}$c(t,u),Mi(t,u),i+=l,s=l,r=u.body.getReader()}async function c(){let l=r;r=w,await l.cancel()}}function qc(t){let e=t.headers.get(Ui);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(dE)||w,lastModified:t.get(EE)||w}}function Mi(t,e){let{checkResourceChanges:n,resourceValidators:r}=t;n&&!r&&e.status==206&&(t.resourceValidators=jc(e))}function $c(t,e){let{checkResourceChanges:n,resourceValidators:r,size:i}=t;if(n){let s=qc(e);if(s!==w&&i!==w&&s!=i)throw new I(Ga);if(r){let a=jc(e);if(U.entries(r).some(([c,l])=>l!==w&&a[c]!==w&&l!=a[c]))throw new I(Ga)}}}function Bi(t,e=0,n=1){return U.assign({},Hi(t),{[uE]:Vc+"="+(e<0?e:e+"-"+(e+n-1))})}function Hi({options:t}){let{headers:e}=t;if(e)return Symbol.iterator in e?U.fromEntries(e):e}async function Za(t){await Jc(t,zr)}async function Ka(t){await Jc(t,$s)}async function Jc(t,e){let n=await e(Qr,t,Hi(t));t.data=new V(await n.arrayBuffer()),t.size=t.data.length}async function qa(t,e,n){if(t.preventHeadRequest)await n(t,t.options);else{let r=await e(hE,t,Hi(t)),i=r.headers.get(cE);i&&!r.headers.get(lE)?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(Yc+(s.statusText||s.status))}function $s(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(Yc+(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 Js=class extends Et{constructor(e,n={}){super(),U.assign(this,{url:e,reader:n.useXHR&&!n.fetch?new js(e,n):new qs(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 Js{constructor(e,n={}){super(e,U.assign({},n,{useRangeHeader:!0}))}},$n=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||gE}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)}},Qs=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(pE));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}},ei=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===Ya){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(iE);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,vi,{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(Ya)}finally{e.releaseLock()}}},en=class{constructor(e){return je.isArray(e)&&(e=new Qs(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 ei(e)),(e instanceof at||typeof e.getWriter==De)&&(e={writable:yd(e)}),e.size===w&&(e.size=0),e}};function Qc(t){return!!(t&&t.getData)}function TE(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 pE(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 el(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?Et.prototype.createReadable.call(t,e):t.readable}var tl="filename",nl="rawFilename",zi="comment",rl="rawComment",ki="uncompressedSize",sl="compressedSize",il="offset",al="diskNumberStart",Gr="lastModDate",Yr="rawLastModDate",Gi="lastAccessDate",ol="rawLastAccessDate",Yi="creationDate",cl="rawCreationDate",ll="internalFileAttributes",fl="externalFileAttributes",Vi="internalFileAttribute",Wi="externalFileAttribute",ul="msdosAttributesRaw",dl="msdosAttributes",El="msDosCompatible",Xi="zip64",hl="encrypted",gl="version",ml="versionMadeBy",wl="zipCrypto",Rn="directory",_l="executable",RE="symlink",Tl="compressionMethod",ti="signature",AE="crc32",Zi="extraField",yE="extraFieldInfoZip",SE="extraFieldUnix",IE="extraFieldUnixType1",DE="extraFieldPkwareUnix",pl="uid",Rl="gid",Al="unixMode",yl="setuid",Sl="setgid",Il="sticky",NE="bitFlag",bE="rawBitFlag",OE="filenameLength",FE="extraFieldLength",xE="unixExternalUpper",PE="filenameUTF8",CE="commentUTF8",LE="rawExtraField",UE="extraFieldZip64",vE="extraFieldUnicodePath",ME="extraFieldUnicodeComment",BE="extraFieldAES",HE="extraFieldNTFS",zE="extraFieldExtendedTimestamp",kE="extraFieldUSDZ",GE=[tl,nl,ki,sl,Gr,Yr,zi,rl,Gi,ol,Yi,cl,il,al,ll,fl,Vi,Wi,ul,dl,El,Xi,hl,gl,ml,wl,Rn,_l,RE,Tl,ti,AE,Zi,SE,yE,IE,DE,pl,Rl,Al,xE,yl,Sl,Il,NE,bE,OE,FE,PE,CE,LE,UE,vE,ME,BE,HE,zE,kE],bn=class{constructor(e){GE.forEach(n=>this[n]=e[n])}},Mn="File format is not recognized",Dl="End of central directory not found",Nl="End of Zip64 central directory locator not found",bl="Central directory header not found",Ol="Local file header not found",Fl="Zip64 extra field not found",xl="File contains encrypted entry",ni="Encryption method not supported",ri="Compression method not supported",si="Split zip file",Pl="Overlapping entry found",Cl="Entry data out of bounds",Ll="Ambiguous archive",Ul="Encrypted central directory is not supported",vl="Unsafe filename",Ml="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",Bl="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Hl="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",zl="64-bit value exceeds Number.MAX_SAFE_INTEGER",kl="unsorted central directory",Gl="unknown version needed to extract",Yl="compressed patched data",Ki="malformed extra field",Vl="unknown zip64 extensible data",ii="wrapped entries count",ai="appended data",oi="prepended data",Wl="trailing central directory data",Xl="duplicate filename",Bn="mismatched zip64 end of central directory record",Zl="mismatched local file header (general purpose bit flag)",Kl="mismatched local file header (compression method)",ql="mismatched local file header (crc32 or sizes)",YE=63,VE=/^[a-zA-Z]:/,$a="utf-8",WE="UTF8",Ja="cp437",Qa=Nr|br|Or,jl=1,XE=[[ki,me],[sl,me],[il,me],[al,X]],eo={[X]:{getValue:j,bytes:4},[me]:{getValue:Ge,bytes:8}},ZE=Ce(pe.MAX_SAFE_INTEGER),KE=64,qE=1032,to=0,qi=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(Mn);let i=n.warnings=[],s=ji(e,n.options),a=s==nn,o=s!=Gt,c=tf(Te(n,e,$o),s),l=lh(Te(n,e,Bu),s),u=Te(n,e,Hu),{endOfDirectoryInfo:f,endOfDirectoryReachingEndCount:d}=await nf(r,o,c);if(!f)throw await sh(r)?new I(si):new I(Dl);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,R=ie(h,20),p=m+Ie+R,T=r.size-p;T>c&&Ar(ai),T>0&&tt(i,ai);let _=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)==pi){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)!=Rs)&&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)!=Rs)throw new I(Nl);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=JE(Xe)}}_==X?_=j(Ee,16):_!=j(Ee,16)&<(a,i,Bn),O==X?O=j(Ee,20):O!=j(Ee,20)&<(a,i,Bn),S==X?S=Ge(Ee,32):S!=Ge(Ee,32)&<(a,i,Bn),g==me?g=Ge(Ee,40):g!=Ge(Ee,40)&<(a,i,Bn),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!=_)throw new I(si);if(E<0)throw new I(Mn);let D=0,C=await _e(r,E,g),x=K(C);if(g){if(C.length<4)throw new I(Mn);let ue=b-g;if(E!=ue&&O==_){let ye=!(j(x,D)==Mt||!!(G&&G.compressedSize)||cs(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==_&&(g=Z,C=await _e(r,E,g),x=K(C)),E<0||E>=r.size)throw new I(Mn);n.directoryOffset=E,n.directoryLength=Y;let L=fo(n,e,zu),q,ne;if(L&&S&&C.length>=4&&j(x,0)!=Mt&&(v||cs(x))){let ue=$E(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,Vl),P=E;let re=Te(n,e,fu),$=Te(n,e,uu),ce=new Sr,ae,Ae=-1,Ne=!a&&!H;!S&&Ne&&(S=no(x,C,D),S&&tt(i,ii));for(let ue=0;ue<S;ue++){let B=new li(r,n.options);if(D+yn>C.length||j(x,D)!=Mt)throw ue==0&&!q&&(v||cs(x))?new I(Ul):new I(bl);$l(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&As),hidden:!!($e&ys),system:!!($e&Ss),directory:!!($e&Fr),archive:!!($e&Is)},xt=j(x,D+42),ke=fo(n,e,du)||Rr,Ke=Xt?$a:re||Ja,Zt=Ze?$a:$||Ja,Ue=ke(Le,Ke,Jo);if(Ue===w&&(Ue=Rr(Le,Ke)),u){let ve=u(Ue);ve!==w&&(Ue=ve)}if(fh(Ue,l)){let ve=new I(vl);throw ve.filename=Ue,ve}let Pt=ke(ct,Zt,Qo);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}),Jl(B,B,x,D+6)&&tt(i,Ki,Ue),B.offset+=F;let Ct=un(r,B.diskNumberStart)+B.offset;P=W.min(Ct,P),Ct<Ae&&tt(i,kl,Ue),Ae=Ct,(B.version&rt)>YE&&tt(i,Gl,Ue),(B.rawBitFlag&pa)==pa&&tt(i,Yl,Ue),ce.has(B.filename)&&(ae=!0),ce.add(B.filename);let Fe=B.externalFileAttributes>>16&X;B.unixMode===w&&(Fe&(wr|kn|zn))!=0&&(B.unixMode=Fe);let dr=!!(B.unixMode&Ds),is=!!(B.unixMode&Ns),Oe=!!(B.unixMode&bs),y=((B.unixMode===w?Fe:B.unixMode)&En)==ko,N=!y&&(B.unixMode!==w?(B.unixMode&kn)!=0:Wt&&(Fe&kn)!=0),z=B.unixMode!==w&&(B.unixMode&En)==zn,se=(Fe&En)==zn;U.assign(B,{setuid:dr,setgid:is,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=no(x,C,D);ve&&(S+=ve,tt(i,ii))}let{onprogress:Je}=e;if(Je)try{await Je(ue+1,S,new bn(B))}catch{}yield le}let he=D,Q=ls(C.subarray(D))||(q?ls(ne):w);if(!Q&&!q){let ue=E+D,B=W.min(b-ue,6+X);B>=6&&(Q=ls(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,Wl),ae&<(a,i,Xl);let Re=Te(n,e,Eu),oe=Te(n,e,hu),ee=(a||Re)&&S&&P==Ht&&await ih(r)?Ht:0;return a&&(F||S&&P>ee)&&Ar(oi),(F||S&&P>Ht)&&tt(i,oi),Re&&(n.prependedData=P>ee?await _e(r,ee,P-ee):fe),n.comment=R?await _e(r,m+Ie,R):fe,oe&&(n.appendedData=p<r.size?await _e(r,p,r.size-p):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()}},ci=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=ji(e,{}),r=n!=Gt,i=tf(e[$o],n),{endOfDirectoryInfo:s,endOfDirectoryReachingEndCount:a}=await nf(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 li=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:R,uncompressedSize:p,compressedSize:T}=s,{dataDescriptor:_}=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,Go),v=Te(s,i,Yo),M=Te(s,i,Vo);if(tc(H,v),H=H&&H.length&&H,v=v&&v.length&&v,f&&f.originalCompressionMethod!=Kr)throw new I(ri);if(F.length<Ve||j(P,0)!=bo)throw new I(Ol);$l(A,P,4);let{extraFieldLength:G,filenameLength:k}=A,Y=A.dataOffset=S+Ve+k+G,b=Te(s,i,Tu),D=ji(i,s.options),C=oh(b,D),x=ch(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),Jl(s,A,P,4,!0)&&tt(O,Ki),dh(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&Ra)==Ra)throw new I(ni);let ae=M?w:Nc(h);if(h!=St&&h!=xn&&h!=Vn&&!ae&&!M)throw new I(ri);if($){if(!ce&&(f.strength<1||f.strength>3))throw new I(ni);if(!H&&!v)throw new I(xl)}if(Y+T>o.size)throw new I(Cl);let Ae=T,Ne=Jt(o.createReadable({offset:Y,size:Ae})),he=ec(Te(s,i,Wo)),Q=Te(s,i,gu),Re=Te(s,i,wu),oe=Te(s,i,mu);oe&&(Re=!0);let{onstart:ee,onprogress:ue,onend:B}=i,ye=h!=St&&!M,Ee=M?T:p,He=h==Vn,be=Te(s,i,Zo);He&&(be=!1);let Xe=Te(s,i,Ru),mt=(Xe===w?Te(s,i,pu):Xe)&&!M&&(!$||ce||f&&f.vendorVersion==jl),Wt={options:{codecType:vc,password:H,rawPassword:v,zipCrypto:ce,encryptionStrength:f&&f.strength,checkCrc32:mt,checkAuthenticationCode:Te(s,i,Au),passwordVerification:ce&&(_?R>>>8&rt:m>>>24&rt),outputSize:Ee,crc32:m,compressed:ye,encrypted:$,useWebWorkers:Te(s,i,Xo),useCompressionStream:be,transferStreams:Te(s,i,Ko),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 rh({reader:o,fileEntry:n,index:c,offset:S,crc32:m,compressedSize:T,uncompressedSize:p,dataOffset:Y,dataDescriptor:_||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,ah(Ee,T,ye)),{writable:Le}=e;let{outputSize:Se}=await Hc({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!=bi)throw ot=Se,Se}finally{if(!(!Qc(e)&&Te(s,i,qo))&&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 cs(t){let e=W.min(t.byteLength,1024)-3;for(let n=0;n<e;n++)if(j(t,n)==Xf)return!0;return!1}function no(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 ls(t){if(t.length>=6){let e=K(t);if(j(e,0)==Fo){let n=ie(e,4);if(6+n<=t.length)return t.subarray(6,6+n)}}}function $E(t,e,n){let r=t&&t.compressedSize?t.compressedSize:e;return r>0&&r<=n?r:n}function JE(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 $l(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&zo)>>1,dataDescriptor:(r&br)==br,languageEncodingFlag:(r&Or)==Or},rawLastModDate:s,lastModDate:Eh(s),filenameLength:ie(e,n+22),extraFieldLength:ie(e,n+24)})}function Jl(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+Wn),crc32:j(n,r+Wn),compressedSize:j(n,r+ir),uncompressedSize:j(n,r+ar)});let f=a.get(qr);f&&(QE(f,e),e.extraFieldZip64=f);let d=a.get(Zf);d&&(ro(d,tl,nl,e,t),e.extraFieldUnicodePath=d);let h=a.get(Kf);h&&(ro(h,zi,rl,e,t),e.extraFieldUnicodeComment=h);let g=a.get(Lo);g&&g.data.length>=7?(eh(g,e,u),e.extraFieldAES=g):e.compressionMethod=u;let E=a.get(jf);E&&(so(E,e),e.extraFieldPkwareUnix=E);let m=a.get(qf);m&&(so(m,e),e.extraFieldUnixType1=m);let R=a.get(Uo);R&&(th(R,e),e.extraFieldNTFS=R);let p=a.get(Ho),T;if(p&&(T=io(p,e,!1),e.extraFieldUnix=p),!T){let O=a.get(Bo);O&&(io(O,e,!0),e.extraFieldInfoZip=O)}let _=a.get(Ri);_&&(nh(_,e,i),e.extraFieldExtendedTimestamp=_);let A=a.get(Mo);return A&&(e.extraFieldUSDZ=A),l}function QE(t,e){e.zip64=!0;let n=K(t.data),r=XE.filter(([s,a])=>e[s]==a),i=r.reduce((s,[,a])=>s+eo[a].bytes,0);if(t.data.length<i)throw new I(Fl);for(let s=0,a=0;s<r.length;s++){let[o,c]=r[s],l=eo[c];e[o]=t[o]=l.getValue(n,a),a+=l.bytes}}function ro(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+WE]=!0)}function eh(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 th(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==vo&&(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=fs(a),u=fs(o),f=fs(c),d={lastModDate:l,lastAccessDate:u,creationDate:f};U.assign(t,d),U.assign(e,d,{rawLastAccessDate:o,rawCreationDate:c})}}function so(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 io(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=ao(t.data.subarray(a,a+c)),a+=c;let l=kt(r,a++);s=ao(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 ao(t){let e=new V(4);return e.set(t,0),new tn(e.buffer,e.byteOffset,4).getUint32(0,!0)}function nh(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(Gi),a.push(ol)),(i&4)==4&&(s.push(Yi),a.push(cl))):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 rh({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=Co:f=Po),f){let h=await _e(t,o+s,f+Kt),g=K(h),E=h.length==f+Kt&&j(g,0)==Oo;if(E){let m=oo(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=oo(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(Pl);throw E.overlappingEntry=g.fileEntry,E}u.set(n,d)}function oo(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 sh(t){return await Ql(t)==sr}async function ih(t){let e=await Ql(t);return e==sr||e==Wf}async function Ql(t){let e=await _e(t,0,Ht);return j(K(e))}function ef(t){return t===nn||t===Ai||t===Gt}function ah(t,e,n){return W.min(t,n?e*qE:e)}function ji(t,e){return co(t,co(e,Ai))}function co(t,e){let n=t[Mu];if(n!==w){if(!ef(n))throw new I(Ml);return n}let r=t[_u];return r===w?e:r?nn:e==Gt?Gt:Ai}function oh(t,e){return t===w?e!=Gt:!!t}function ch(t,e){return t===w?e==nn:!!t}function lh(t,e){if(t===w)return e;if(!ef(t))throw new I(Bl);return t}function fh(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("\\\\")||VE.test(t)?!0:e==nn&&(n.includes(".")||n.includes(""))}function tf(t,e){if(t!==w){let n=jr(t);if(typeof n!=cu||pe.isNaN(n)||n<0)throw new I(Hl);return n}return e==nn?0:e==Gt?1/0:X}async function nf(t,e,n){let{size:r}=t,i=W.min(r,Ie+X),s={count:KE},a,o,c=0;for await(let[l,u,f,d,h]of rf(t,i)){let g=ie(l,d+20);if(h+Ie+g==r){let E=await sf(t,l,u,d,h,r,s);if(E==Vr){if(a||(a=fi(f,d,h)),c++,!e||c>1)break}else E==qi&&!o&&(o=fi(f,d,h))}}return a||(a=o),a||(a=await uh(t,n,s)),{endOfDirectoryInfo:a,endOfDirectoryReachingEndCount:c}}async function uh(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 rf(t,i)){let d=fi(l,u,f);s||(s=d);let h=await sf(t,o,c,u,f,r,n);if(h==Vr)return d;h==qi&&!a&&(a=d)}return a||s}async function*rf(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)==xo&&(yield[i,n,r,s,n+s])}function fi(t,e,n){return{offset:n,buffer:t.slice(e,e+Ie).buffer}}async function sf(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 lo(t,e,n,i-vt,s,a)==pi?Vr:to;if(!o&&!c)return qi;let u=ie(e,r+6);for(let f of[i-c,un(t,u)+l])if(await lo(t,e,n,f,s,a)==Mt)return Vr;return to}async function lo(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 dh(t,e,n,r,i){let{rawFilename:s}=t,a=!i,o=t.decryptedDirectory&&(e.rawBitFlag&Aa)==Aa;r&&!o&&(n.length!=s.length||n.some((c,l)=>c!=s[l]))&<(a,i,"mismatched local file header (filename)"),(e.rawBitFlag&Qa)!=(t.rawBitFlag&Qa)&<(a,i,Zl),e.compressionMethod!=t.compressionMethod&<(a,i,Kl),!e.bitFlag.dataDescriptor&&!o&&(e.crc32||e.compressedSize||e.uncompressedSize)&&(e.crc32!=t.crc32||e.compressedSize!=t.compressedSize||e.uncompressedSize!=t.uncompressedSize)&<(a,i,ql)}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(Ll);throw e.reason=t,e}function Te(t,e,n){return e[n]===w?t.options[n]:e[n]}function fo(t,e,n){return yi(Te(t,e,n))}function Eh(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 fs(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>ZE)throw new I(zl);return pe(n)}var hh=U.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Ll,ERR_BAD_FORMAT:Mn,ERR_CENTRAL_DIRECTORY_NOT_FOUND:bl,ERR_ENCRYPTED:xl,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Ul,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Cl,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Nl,ERR_EOCDR_NOT_FOUND:Dl,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Fl,ERR_INVALID_AUTHENTICATION_CODE:wc,ERR_INVALID_COMPRESSED_DATA:Oc,ERR_INVALID_CRC32:Fc,ERR_INVALID_FILENAME_VALIDATION:Bl,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Hl,ERR_INVALID_PASSWORD:Di,ERR_INVALID_SIGNATURE:Ni,ERR_INVALID_STRICTNESS:Ml,ERR_INVALID_UNCOMPRESSED_SIZE:Jr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:Ol,ERR_OVERLAPPING_ENTRY:Pl,ERR_SPLIT_ZIP_FILE:si,ERR_UNSAFE_FILENAME:vl,ERR_UNSUPPORTED_COMPRESSION:ri,ERR_UNSUPPORTED_ENCRYPTION:ni,ERR_UNSUPPORTED_UINT64:zl,ERR_WORKER_STARTUP_TIMEOUT:Pi,WARNING_APPENDED_DATA:ai,WARNING_COMPRESSED_PATCHED_DATA:Yl,WARNING_DUPLICATE_FILENAME:Xl,WARNING_MALFORMED_EXTRA_FIELD:Ki,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Zl,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:Kl,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:ql,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:Bn,WARNING_PREPENDED_DATA:oi,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Wl,WARNING_UNKNOWN_VERSION:Gl,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Vl,WARNING_UNSORTED_CENTRAL_DIRECTORY:kl,WARNING_WRAPPED_ENTRIES_COUNT:ii,ZipReader:On,ZipReaderStream:ci,isZipFile:jE}),af="File already exists",of="Zip file comment exceeds 64KB",gh="Invalid zip file comment (must be a Uint8Array)",mh="File entry comment exceeds 64KB",wh="Invalid file entry comment (must be a string)",_h="Invalid date (must be a valid Date instance)",Th="File entry name exceeds 64KB",cf="Version exceeds 65535",ph="The strength must equal 1, 2, or 3",Rh="Encryption is not supported in USDZ files",Ah="Encryption is not supported when the 'passThrough' option is set",yh="Invalid extra field (must be a Map)",Sh="Invalid extra field type (must be integer 0..65535)",Ih="Invalid extra field data (must be a Uint8Array)",$i="Extra field data exceeds 64KB",Dh="Compression method not supported",lf=-2147483648,ff=2147483647,uo=Ce(0),Eo=Ce("0x7fffffffffffffff"),Ji="Zip64 is not supported (set the 'zip64' option to 'true')",Nh="Undefined uncompressed size",bh="Undefined compression method",Tm="Undetermined size",Oh="Undefined reader",Fh="Zip file not empty",xh="Invalid uid (must be integer 0..2^32-1)",Ph="Invalid gid (must be integer 0..2^32-1)",Ch="Invalid UNIX mode (must be integer 0..65535)",Lh="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Uh="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",vh="Invalid msdosAttributesRaw (must be integer 0..255)",Mh="Invalid msdosAttributes (must be an object with boolean flags)",Bh="Invalid level (must be integer 0..9)",Hh="Signature data exceeds 64KB",ho=new V([7,0,2,0,65,69,3,0,0]),zh=4,kh=9,Gh=67,Yh=1,ui="infozip",di="unix",Vh=9,us=0,go=[],Jn=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 ds(this,Wh(this,e))}appendZip(e){return ds(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 hh}),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(af);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 fg(e)||(await ht(n.writer,df()),n.offset+=Ht));let E=await ug(n,e,d,h);d.forEach(m=>{let{version:R,rawLastModDate:p,rawFilename:T,bitFlag:_,encrypted:A,uncompressedSize:O,compressedSize:S,extraFieldZip64:F}=m,{compressionMethod:P,rawExtraField:H}=m,{level:v,languageEncodingFlag:M,dataDescriptor:G}=_;H=uf(H||fe),m.extraFieldAES&&(P=Kr);let k=te(H),Y=!!F&&F.uncompressedSize!==w,b=!!F&&F.compressedSize!==w,D=wf(v,M,G,A,P)&~zo|v<<1,{headerArray:C,headerView:x}=mf({version:R,bitFlag:D,compressionMethod:P,uncompressedSize:O,compressedSize:S,rawLastModDate:p,rawFilename:T,zip64CompressedSize:b,zip64UncompressedSize:Y,extraFieldLength:k}),{crc32:Z}=m;Z!==w&&xe(x,Wn,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=Xh(i,e,n,r);s.add(a);let o=()=>s.delete(a);return ge.prototype.then.call(a,o,o),ds(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(gh);if(te(e)>X)throw new I(of);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 ig(r,e,n),!Qc(s)&&J(r,n,qo)||await a.getWriter().close(),s.getData?s.getData():a}},mo=class{constructor(e={}){let{readable:n,writable:r}=new we;this.readable=n,this.zipWriter=new Jn(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 wo(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 Es(n,o)}}}writable(e){let n,{readable:r,writable:i}=new we({start(s){n=s}});return wo(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 Es(r,a),a}try{return await r.close(e,n)}catch(a){throw await Es(r,a),a}}},Ei=class extends ge{then(e,n){let{watcher:r}=this;return r&&(r.observed=!0),super.then(e,n)}};function ds(t,e){let n=new Ei((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 Wh(t,e){if(t.filenames.size)throw new I(Fh);await t.appendZipEntries(e)}async function Xh(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(af);t.filenames.add(e),us<rn().maxWorkers?us++:await new ge(i=>go.push(i));try{return await Zh(t,e,n,r)}catch(i){throw t.filenames.delete(e),i}finally{let i=go.shift();i?i():us--}}async function Es(t,e){try{await t.writer.writable.abort(e)}catch{}}function wo(t,e,n){t.pendingAddFileCalls.add(e),e.catch(r=>{try{n(r)}catch{}})}async function Zh(t,e,n,r){let i=Kh(t,e,r);({name:e}=i);let s=qh(t,e,r),{comment:a}=s,o=r[Zi];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 Vd(rn())&&(d.level=0);let h=await jh(t,n,s,r);({reader:n}=h);let g=Qn(t.writer),E=At(t.writer);r=U.assign({},r,i.resolvedOptions,s.resolvedOptions,h.resolvedOptions,{signature:r[ti],crc32:r.crc32===w?r[ti]:r.crc32,offset:t.offset-g,diskNumberStart:E,[Xn]:t.options[Xn]});let m=eg(r),R=ng(r),p=te(m.localHeaderArray,R.dataDescriptorArray);f=await Jh(t,e,n,{headerInfo:m,dataDescriptorInfo:R,metadataSize:p,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,[Vi]:f.internalFileAttributes,[Wi]:f.externalFileAttributes}),new bn(f)}function Kh(t,e,n){let r=J(t,n,El),i=J(t,n,ml,r?ru:Sa),s=J(t,n,_l),a=dn(t,n,pl),o=dn(t,n,Rl),c=dn(t,n,Al),l=J(t,n,Lu),u=J(t,n,yl),f=J(t,n,Sl),d=J(t,n,Il);if(vn(a,me,xh),vn(o,me,Ph),vn(c,X,Ch),l!==w&&l!==ui&&l!==di)throw new I(Lh);if(l===di&&(a!==w&&a>X||o!==w&&o>X))throw new I(Uh);l===w&&(a!==w||o!==w)&&(l=ui);let h=dn(t,n,ul),g=J(t,n,dl),E=a!==w||o!==w||c!==w||l||s,m=h!==w||g!==w;if(E?(r=!1,i=i&rt|Sa):m&&(r=!0,i=i&rt),vn(h,rt,vh),g&&(typeof g!==ou||je.isArray(g)))throw new I(Mh);if(i>X)throw new I(cf);let R=gf(t,n,fl,Wi),p=R!==w;p||(R=0),!n[Rn]&&e.endsWith(hn)&&(n[Rn]=!0);let T=J(t,n,Rn);if(T?(e.endsWith(hn)||(e+=hn),p||(R=Fr,r||(R|=(zn|kn|wr)<<16))):!r&&!p&&(s?R=(kn|wr)<<16:R=wr<<16),!r){let O=c!==w||!!(u||f||d),S=R>>16&X;c=c===w?S:c&X,u?c|=Ds:u=!!(c&Ds),f?c|=Ns:f=!!(c&Ns),d?c|=bs:d=!!(c&bs),(!p||O)&&(T?c=c&~En|zn:c&En||(c|=eu),R=(c&X)<<16|R&X)}({msdosAttributesRaw:h,msdosAttributes:g}=tg(h,g)),m&&(R=R&me|h&rt);let _=R>>16&X,A=c!==w&&(c&En)==ko;return{name:e,resolvedOptions:{versionMadeBy:i,msDosCompatible:!!r,externalFileAttributes:R,unixExternalUpper:_,uid:a,gid:o,unixMode:c,unixExtraFieldType:l,symlink:A,setuid:u,setgid:f,sticky:d,msdosAttributesRaw:h,msdosAttributes:g}}}function qh(t,e,n){let r=hi(t,n,Cu)||_r,i=r(e,Jo);if(i===w&&(i=_r(e)),te(i)>X)throw new I(Th);let s=n[zi]||"";if(typeof s!=Sn)throw new I(wh);let a=r(s,Qo);if(a===w&&(a=_r(s)),te(a)>X)throw new I(mh);let o=J(t,n,gl);if(o!==w&&o>X)throw new I(cf);let c=ws(t,n,Gr,new yt),l=J(t,n,Yr),u=ws(t,n,Gi),f=ws(t,n,Yi),d=gf(t,n,ll,Vi,0),h=J(t,n,Vo),g=J(t,n,Go),E=J(t,n,Yo);tc(g,E);let m=dn(t,n,yu,3),R=J(t,n,wl),p=J(t,n,Su,!0),T=J(t,n,Iu),_=J(t,n,Du,!0),A=J(t,n,Xo),O=J(t,n,Ko),S=J(t,n,bu),F=hi(t,n,Ou),P=J(t,n,Fu,!0),H=ec(J(t,n,Wo)),v=J(t,n,xu,!0),M=J(t,n,Tl),G=h||M===w?w:Nc(M);if(!h&&M!==w&&M!==St&&M!==xn&&!G)throw new I(Dh);let k=dn(t,n,Nu);if(vn(k,Vh,Bh),t.options[Xn]){if(g!==w||E!==w)throw new I(Rh);k===w&&M===w&&(k=0)}h&&(k=w);let Y=J(t,n,Zo),b=J(t,n,jo);S&&b===w&&(b=!1),(b===w||R&&!h)&&(b=!0),k!==w&&k!=6&&(Y=!1);let D=J(t,n,Xi);if(!R&&(g!==w||E!==w)&&!(pe.isInteger(m)&&m>=1&&m<=3))throw new I(ph);let C=hs(n[Zi]),x=hs(n[Uu]),Z=hs(n[vu]);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:R,extendedTimestamp:p,ntfsTimestamp:T,keepOrder:_,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 hs(t){if(!t)return fe;if(!(t instanceof gt))throw new I(yh);let e=0,n=0;t.forEach((s,a)=>{if(nc(a,X,Sh),!(s instanceof V))throw new I(Ih);if(te(s)>X)throw new I($i);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)),nr(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(Oh);let i;return e&&(e=new en(e),await Be(e),{size:i}=e),U.assign({reader:e},$h(t,!!e,i,n,r))}function $h(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[ki],E===w)throw new I(Nh);if(h===w)throw new I(bh)}let m=f===!0,R=J(t,i,hl);if(e&&s&&!R&&te(o,c))throw new I(Ah);let p=e&&(!!(o&&te(o)||c&&te(c))||s&&R);e||(d=0,h=St);let T=p?a?12:16+l*4:0;e&&(s?(i.uncompressedSize=E,g=n===w?yo(E)+T:n):n===w?(u=!0,(f||f===w)&&(f=!0,E=g=me+1)):(i.uncompressedSize=E=n,g=(gi(h,d)?yo(E):E)+T));let _=!p&&(!e||n===0&&!s)&&!gi(h,d);_&&!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(Ji);f=!0}return f=f||!1,{maximumCompressedSize:g,resolvedOptions:{dataDescriptor:u,emptyEntry:_,zip64:f,zip64UncompressedSize:A,zip64CompressedSize:O,uncompressedSize:E,level:d,compressionMethod:h,encrypted:p}}}async function Jh(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[Xn],m=d,R,p,T,_,A,O=0,S,F=o&&h?h.lockFileEntry:w;s.set(e,m);try{i.bufferedWrite||!o||t.writerLocked||t.bufferedWrites||!c&&!l?(R=!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=Qn(a);t.addSplitZipSignature&&!R&&await po(t,a),E&&!R&&_o(r,t.offset-v);let{localHeaderArray:M}=f;R||await H();let G=At(a),k=er(t,a);if(m.diskNumberStart=G,R||(_=!0,A=a.size,await ht(S,M)),m=await Qh(n,S,m,r,rn(),i),R||(_=!1),s.set(e,m),m.filename=e,R){if(await ge.all([S.writable.getWriter().close(),F]),await P(),t.addSplitZipSignature&&await po(t,a),T=!0,A=a.size,await H(),m.diskNumberStart=At(a),m.offset=er(t,a),E){let Y=r.metadataSize;_o(r,t.offset-Qn(a)),m.size+=r.metadataSize-Y}sg(m,f.localHeaderView,i),await ht(a,f.localHeaderArray),await Ef(S.readable,a,u,Y=>O+=Y),a.size+=S.size,T=!1}else m.diskNumberStart=G,m.offset=k;return t.offset+=m.size,m}catch(v){if(T||_){if(t.hasCorruptedEntries=!0,v)try{v.corruptedEntry=!0}catch{}t.offset+=a.size-A,R&&(t.offset+=O)}throw s.delete(e),v}finally{if(R&&t.bufferedWrites--,g&&g(F),p&&p(),R&&S&&S.dispose)try{await S.dispose()}catch{}}async function P(){t.writerLocked=!0;let{lockWriter:v}=t;t.lockWriter=new ge(M=>p=()=>{t.writerLocked=!1,M()}),await v}async function H(){Fn(a,te(f.localHeaderArray))&&await a.closeDisk()}}async function Qh(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:R,rawExtraFieldZip64:p,localExtraFieldZip64Length:T,rawExtraFieldExtendedTimestamp:_,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:p,localExtraFieldZip64Length:T,rawExtraFieldExtendedTimestamp:_,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(el(t)),Pt=t.size,Ct={options:{codecType:xi,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:R},config:s,streamOptions:{signal:Re,size:Pt,onstart:Ne,onprogress:he,onend:Q}};try{let Fe=await Hc({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(Ji)}catch(Fe){throw Fe.outputSize!==w&&(e.size+=Fe.outputSize),Fe}}return rg({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:R,version:m,headerArray:u,headerView:f,signature:xt,crc32:g&&!x&&!Ze?w:xt,extraFieldExtendedTimestampFlag:A,zip64UncompressedSize:D,zip64CompressedSize:C}),Ft}function eg(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:R,encrypted:p,zip64UncompressedSize:T,zip64CompressedSize:_,uncompressedSize:A,crc32:O}=t,{version:S,compressionMethod:F}=t,P=!f&&gi(F,a),H,v=R||!P,M=o&&(t.bufferedWrite||!u||!T&&!_||v),G=M||o&&u&&(T||_);if(o&&(T||_)){let Q=Ye(20);if(Q.writeUint16(qr),Q.writeUint16(16),H=Q.array,M&&(Q.writeUint64(A),v)){let Re=p?c?12:16+g*4:0;Q.writeUint64(R?0:A+Re)}}else H=fe;let k;if(p&&!c){let he=Ye(te(ho)+2);he.writeUint16(Lo),he.writeBytes(ho),k=he.array,k[8]=g}else k=fe;let Y,b,D;if(E){let he=yr(n),Q=hf(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(Ri),ee.writeUint16(oe-4),ee.writeUint8(D),ee.writeUint32(he),i&&ee.writeUint32(Ro(yr(i))),s&&ee.writeUint32(Ro(yr(s))),b=ee.array}else b=fe;if(m===w?!Q||!!(i||s):m)try{let oe=ms(n),ee=Ye(36);ee.writeUint16(Uo),ee.writeUint16(32),ee.skip(4),ee.writeUint16(vo),ee.writeUint16(24),ee.writeUint64(oe),ee.writeUint64(i?ms(i):oe),ee.writeUint64(s?ms(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==ui&&(he!==w||Q!==w)){let oe=To(he===w?0:he),ee=To(Q===w?0:Q),ue=3+oe.length+ee.length,B=Ye(4+ue);B.writeUint16(Bo),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==di&&(he!==w||Q!==w)){let oe=Ye(8);oe.writeUint16(Ho),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&&!p?tu:nu);let{codecVersionNeeded:x}=t;P&&x!==w&&(S=S>x?S:x),o&&(S=S>xr?S:xr),p&&!c&&(S=S>ya?S:ya,R&&O!==w&&(k[zh]=Yh),ut(K(k),kh,F),F=Kr);let Z=G?te(H):0,L=Z+te(k,b,Y,C,d,h),q=t[Xn]?Gh:0;if(L+q>X)throw new I($i);let ne=new yt(W.ceil(W.floor(n.getTime()/1e3)/2)*2e3),{headerArray:re,headerView:$,rawLastModDate:ce}=mf({version:S,bitFlag:wf(a,l,u,p,F),compressionMethod:F,uncompressedSize:A,lastModDate:ne<Pr?Pr:ne>Ia?Ia:ne,rawLastModDate:r,rawFilename:e,zip64CompressedSize:_,zip64UncompressedSize:T,extraFieldLength:L}),ae=Ye(Ve+te(e)+L),Ae=ae.array,Ne=K(Ae);return ae.writeUint32(bo),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&&(_||xe(Ne,ir+qt,0),T||xe(Ne,ar+qt,0)),{localHeaderArray:Ae,localHeaderView:Ne,headerArray:re,headerView:$,lastModDate:n,rawLastModDate:ce,encrypted:p,compressed:P,version:S,compressionMethod:F,extraFieldExtendedTimestampFlag:D,rawExtraFieldZip64:fe,localExtraFieldZip64Length:Z,rawExtraFieldExtendedTimestamp:b,rawExtraFieldNTFS:Y,rawExtraFieldUnix:C,rawExtraFieldAES:k,extraFieldLength:L}}function _o(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,Mo),ut(o,2,s-4);let c=r;n.localHeaderArray=r=new V(te(c)+s),nr(r,c),nr(r,a,te(c));let l=K(r);ut(l,28,i+s),n.localHeaderView=l,t.metadataSize+=s}function To(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 tg(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|=As),r&&(o|=ys),i&&(o|=Ss),s&&(o|=Fr),a&&(o|=Is),t=o&rt}return e===w&&(e={readOnly:!!(t&As),hidden:!!(t&ys),system:!!(t&Ss),directory:!!(t&Fr),archive:!!(t&Is)}),{msdosAttributesRaw:t,msdosAttributes:e}}function ng({zip64:t,dataDescriptor:e,dataDescriptorSignature:n}){let r=fe,i,s=0,a=t?Co:Po;return n&&(a+=Kt),e&&(r=new V(a),i=K(r),n&&(s=Kt,xe(i,0,Oo))),{dataDescriptorArray:r,dataDescriptorView:i,dataDescriptorOffset:s}}function rg({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,Wn,t),c&&xe(f,d,t)),s?c&&(tr(f,d+4,Ce(e)),tr(f,d+12,Ce(n))):(xe(l,ir,e),xe(l,ar,n),c&&(xe(f,d+4,e),xe(f,d+8,n)))}function sg({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,Wn+qt,i),c||xe(l,ir+qt,s),o||xe(l,ar+qt,a)),n&&r){let d=Ve+te(t)+4;tr(l,d,Ce(a)),tr(l,d+8,Ce(s))}}async function ig(t,e,n){let r=ag(t.fileEntries),{directoryStart:i,directoryEnd:s,directoryArray:a}=await og(t,r,n),o=await cg(t,a,n);await lg(t,e,n,{directoryStart:i,directoryEnd:s,directoryDataLength:r,signatureLength:o})}function ag(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,R=n.offset>=me,p=n.diskNumberStart>=X,T;if(R||p||h||g){let S=4+(h?8:0)+(g?8:0)+(R?8:0)+(p?4:0),F=Ye(S);F.writeUint16(qr),F.writeUint16(S-4),h&&F.writeUint64(E),g&&F.writeUint64(m),R&&F.writeUint64(n.offset),p&&F.writeUint32(n.diskNumberStart),T=F.array}else T=fe;n.rawExtraFieldZip64=T,n.zip64Offset=R,n.zip64DiskNumberStart=p;let _,A=yr(d);if(u&&hf(A)){let S=Ye(9);S.writeUint16(Ri),S.writeUint16(5),S.writeUint8(f),S.writeUint32(A),_=S.array}else _=fe;n.rawExtraFieldExtendedTimestamp=_;let O=te(T,i,a,o,_,c,l);if(O>X)throw new I($i);e+=yn+te(r,s)+O}return e}async function og(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=Qn(i),u=0;for(let[f,d]of je.from(r.values()).entries()){let{offset:h,rawFilename:g,rawExtraFieldZip64:E,rawExtraFieldAES:m,rawExtraFieldExtendedTimestamp:R,rawExtraFieldNTFS:p,rawExtraFieldUnix:T,rawExtraField:_,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,R,p,T,_,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=Qn(i)),H||xe(P,ar,D),v||xe(P,ir,C),(G||M)&&d.version<xr&&ut(P,su,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(R),L.writeBytes(p),L.writeBytes(T),L.writeBytes(_),L.writeBytes(A),L.writeBytes(O),nr(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 cg(t,e,n){let r=hi(t,n,ku);if(r){let i=await r(e),s=te(i);if(s>X)throw new I(Hh);let a=Ye(6+s);a.writeUint32(Fo),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 lg(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=er(t,s),d=te(e);if(d>X)throw new I(of);let h=J(t,n,Xi),g=At(i);if(Fn(i,(h?Ta:Ie)+d)&&g++,f>=me||c>=me||l>=X||g>=X){if(h===!1)throw new I(Ji);h=!0}let E=Ye(h?Ta:Ie);Fn(i,te(E.array)+d)&&await i.closeDisk(),g=At(i);let m=g==a.diskNumber?a.entriesLength:0;h&&(E.writeUint32(Rs),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(pi),E.writeUint32(g),E.writeUint64(Ce(er(t,i))+Ce(c)+Ce(o)),E.writeUint32(g+1),J(t,n,Pu,!0)&&(g=X,u=X),m=X,l=X,f=me,c=me),E.writeUint32(xo),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=>{hg(n,r,i),r+=1},writeUint16:i=>{ut(n,r,i),r+=2},writeUint32:i=>{xe(n,r,i),r+=4},writeUint64:i=>{tr(n,r,Ce(i)),r+=8},writeBytes:i=>{nr(e,i,r),r+=te(i)},skip:i=>r+=i}}function At(t){let{diskNumber:e=0}=t;return e}function Qn(t){let{diskOffset:e=0}=t;return e}function Fn(t,e){let{availableSize:n=cn}=t;return e>n}function er(t,{diskNumber:e=0,diskOffset:n=0}){return t.offset-n-(e?t.initialOffset:0)}async function fg(t){let e=await _e(t,0,Ht);return Eg(K(e),0)==sr}function uf(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 uf(zt(t.subarray(0,n),t.subarray(W.min(n+r,te(t)))));n+=r}return t}async function ug(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 gs(t,e,o,l-o),Fn(i,await dg(e,l))&&await i.closeDisk(),s.set(c,{offset:er(t,i),diskNumberStart:At(i)}),o=l}await gs(t,e,o,r-o)}else{let a=t.offset;await gs(t,e,0,r),n.forEach(o=>s.set(o,{offset:a+gr(e,o),diskNumberStart:0}))}return s}async function gs(t,e,n,r){if(r>0){let{writer:i}=t,s=0;try{await Ef(el(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 dg(t,e){let n=await _e(t,e,Ve);if(te(n)<Ve)return Ve;let r=K(n);return Ve+Wr(r,iu+qt)+Wr(r,au+qt)}function gr(t,{offset:e,diskNumberStart:n}){return e+(t.getDiskOffset?t.getDiskOffset(n):0)}function df(){let t=new V(Ht);return xe(K(t),0,sr),t}async function po(t,e){delete t.addSplitZipSignature,await ht(e,df()),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 Ef(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 ms(t){if(t){let e=(Ce(t.getTime())+Ce(116444736e5))*Ce(1e4);return e<uo?uo:e>Eo?Eo:e}}function yr(t){return W.floor(t.getTime()/1e3)}function hf(t){return t>=lf&&t<=ff}function Ro(t){return W.min(ff,W.max(lf,t))}function J(t,e,n,r){let i=e[n]===w?t.options[n]:e[n];return i===w?r:i}function ws(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(_h);return i}function hi(t,e,n){return yi(J(t,e,n))}function gf(t,e,n,r,i){let s=Ao(e,n,r),a=s===w?Ao(t.options,n,r):s;return a===w?i:a}function Ao(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 yo(t){return t+5*(W.floor(t/16383)+1)}function gi(t,e){return t===w?e===w||e>0:t!==St}function Wr(t,e){return t.getUint16(e,!0)}function Eg(t,e){return t.getUint32(e,!0)}function hg(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 tr(t,e,n){t.setBigUint64(e,n,!0)}function nr(t,e,n){t.set(e,n)}function te(...t){let e=0;return t.forEach(n=>n&&(e+=n.length)),e}function mf({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 No(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 wf(t,e,n,r,i){let s=0;return e&&(s=s|Or),n&&(s=s|br),(i==xn||i==Vn)&&(t>=0&&t<=3&&(s=s|Qf),t>3&&t<=5&&(s=s|Jf),t==9&&(s=s|$f)),r&&(s=s|Nr),s}function pm(){return"application/octet-stream"}function Rm(){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:Vn,compression:!1,decompression:Ut(r,Ls)||Ut(e,Ls),registered:!1}];for(let s of Nd()){let a=Oi(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):Fi(t,e)}var Am="2.8.61",gg=1024*1024,mg=".zip.js-temp";function ym(t={}){let{thresholdBytes:e=gg,directoryName:n=mg,getDirectory:r=()=>Hn.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 p=await s();l=wg(),u=await p.getFileHandle(l,{create:!0}),f=(await u.createWritable()).getWriter(),c=!0;for(let T of a)await f.write(T);a.length=0}let g=new at({async write(p){c?await f.write(p):(a.push(p),o+=p.length,o>e&&await h())},async close(){f&&(await f.close(),f=null)}}),E=0,m=new it({async pull(p){if(c){d||(d=(await u.getFile()).stream().getReader());let{value:T,done:_}=await d.read();_?p.close():p.enqueue(T)}else E<a.length?p.enqueue(a[E++]):p.close()},async cancel(p){d&&await d.cancel(p)}},{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:m,dispose:R}}}function wg(){return st.randomUUID?st.randomUUID():je.from(st.getRandomValues(new V(16)),t=>t.toString(16).padStart(2,"0")).join("")}var _g=1024*1024;function Sm(t={}){let{thresholdBytes:e=_g}=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 Tg=1024*1024,pg=".zip.js-temp",Rg=512*1024,Ag="createSyncAccessHandle is only available in dedicated workers";function Im(t={}){let{thresholdBytes:e=Tg,directoryName:n=pg,getDirectory:r}=t;if(!r&&(typeof FileSystemFileHandle>"u"||!FileSystemFileHandle.prototype.createSyncAccessHandle))throw new I(Ag);let i=r||(()=>Hn.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 T=await a();u=yg(),f=await(await T.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(T){l?(f.write(T,{at:d}),d+=T.length):(o.push(T),c+=T.length,c>e&&await g())},close(){f&&f.flush()}}),m=0,R=new it({pull(T){if(l){let _=d-h;if(_<=0){T.close();return}let A=new V(W.min(Rg,_)),O=f.read(A,{at:h});O?(h+=O,T.enqueue(A.subarray(0,O))):T.close()}else m<o.length?T.enqueue(o[m++]):T.close()}},{highWaterMark:0});async function p(){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:p}}}function yg(){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=Vf,Qi=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]),mi=new Pe([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),_f=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 Qi(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}},Tf=_f(es,2),pf=Tf.b,wi=Tf.r;pf[28]=258,wi[258]=28;var Rf=_f(ts,0),Sg=Rf.b,So=Rf.r,_i=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,_i[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[_i[f]>>c]=l}else for(o=new We(r),i=0;i<r;++i)t[i]&&(o[i]=_i[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,rr=new Pe(32);for(de=0;de<32;++de)rr[de]=5;var de,Ig=dt(Vt,9,0),Dg=dt(Vt,9,1),Ng=dt(rr,5,0),bg=dt(rr,5,1),_s=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},Ts=function(t,e){var n=e/8|0;return(t[n]|t[n+1]<<8|t[n+2]<<16)>>(e&7)},ea=function(t){return(t+7)/8|0},Af=function(t,e,n){return(n==null||n>t.length)&&(n=t.length),new Pe(t.subarray(e,n))},Og=["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||Og[t]);if(r.code=t,I.captureStackTrace&&I.captureStackTrace(r,pt),!n)throw r;return r},Fg=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,R=i*8;do{if(!h){u=Qe(t,f,1);var p=Qe(t,f+1,3);if(f+=3,p)if(p==1)h=Dg,g=bg,E=9,m=5;else if(p==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[mi[v]]=Qe(t,f+v*3,7);f+=S*3;for(var M=_s(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 T=Y>>4;if(T<16)P[v++]=T;else{var b=0,D=0;for(T==16?(D=3+Qe(t,f,3),f+=2,b=P[v-1]):T==17?(D=3+Qe(t,f,7),f+=3):T==18&&(D=11+Qe(t,f,127),f+=7);D--;)P[v++]=b}}var C=P.subarray(0,O),x=P.subarray(O);E=_s(C),m=_s(x),h=dt(C,E,1),g=dt(x,m,1)}else pt(1);else{var T=ea(f)+4,_=t[T-4]|t[T-3]<<8,A=T+_;if(A>i){c&&pt(0);break}o&&l(d+_),n.set(t.subarray(T,A),d),e.b=d+=_,e.p=f=A*8,e.f=u;continue}if(f>R){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[Ts(t,f)&Z],ne=b>>4;if(f+=b&15,f>R){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)+pf[v],f+=$}var ce=g[Ts(t,f)&L],ae=ce>>4;ce||pt(3),f+=ce&15;var x=Sg[ae];if(ae>3){var $=ts[ae];x+=Ts(t,f)&(1<<$)-1,f+=$}if(f>R){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?Af(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},Ln=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},ps=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:Sf,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=Ti(n[u-1],h,0);if(g>e){var r=0,E=0,m=g-e,R=1<<m;for(s.sort(function(O,S){return h[S.s]-h[O.s]||O.f-S.f});r<i;++r){var p=s[r].s;if(h[p]>e)E+=R-(1<<g-h[p]),h[p]=e;else break}for(E>>=m;E>0;){var T=s[r].s;h[T]<e?E-=1<<e-h[T]++-1:++r}for(;r>=0&&E;--r){var _=s[r].s;h[_]==e&&(--h[_],++E)}g=e}return{t:new Pe(h),l:g}},Ti=function(t,e,n){return t.s==-1?W.max(Ti(t.l,e,n+1),Ti(t.r,e,n+1)):e[t.s]=n},Io=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}},Un=function(t,e){for(var n=0,r=0;r<e.length;++r)n+=t[r]*e[r];return n},yf=function(t,e,n){var r=n.length,i=ea(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},Do=function(t,e,n,r,i,s,a,o,c,l,u){_t(e,u++,n),++i[256];for(var f=ps(i,15),d=f.t,h=f.l,g=ps(s,15),E=g.t,m=g.l,R=Io(d),p=R.c,T=R.n,_=Io(E),A=_.c,O=_.n,S=new We(19),F=0;F<p.length;++F)++S[p[F]&31];for(var F=0;F<A.length;++F)++S[A[F]&31];for(var P=ps(S,7),H=P.t,v=P.l,M=19;M>4&&!H[mi[M-1]];--M);var G=l+5<<3,k=Un(i,Vt)+Un(s,rr)+a,Y=Un(i,d)+Un(s,E)+a+14+3*M+Un(S,H)+2*S[16]+3*S[17]+7*S[18];if(c>=0&&G<=k&&G<=Y)return yf(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,T-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[mi[F]]);u+=3*M;for(var L=[p,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=Ig,D=Vt,C=Ng,x=rr;for(var F=0;F<o;++F){var $=r[F];if($>255){var re=$>>18&31;Ln(e,u,b[re+257]),u+=D[re+257],re>7&&(_t(e,u,$>>23&31),u+=es[re]);var ce=$&31;Ln(e,u,C[ce]),u+=x[ce],ce>3&&(Ln(e,u,$>>5&8191),u+=ts[ce])}else Ln(e,u,b[$]),u+=D[$]}return Ln(e,u,b[256]),u+D[256]},xg=new Qi([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),Sf=new Pe(0),Pg=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=xg[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),R=W.ceil(n/3),p=2*R,T=function(ee){return(t[ee]^t[ee+1]<<R^t[ee+2]<<p)&g},_=new Qi(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=T(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=Do(t,c,0,_,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==T(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){_[H++]=268435456|wi[C]<<18|So[x];var Q=wi[C]&31,Re=So[x]&31;F+=es[Q]+ts[Re],++A[257+Q],++O[Re],v=P+C,++S}else _[H++]=t[P],++A[t[P]]}}for(P=W.max(P,v);P<a;++P)_[H++]=t[P],++A[t[P]];u=Do(t,c,l,_,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=yf(c,u+1,t.subarray(P,oe))}s.i=a}return Af(o,0,r+ea(u)+i)},Cg=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 Pg(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 If(t,e){return Cg(t,e||{},0,0)}function Dm(t,e){return Fg(t,{i:2},e&&e.out,e&&e.dictionary)}var Lg=typeof Dr<"u"&&new Dr,Ug=0;try{Lg.decode(Sf,{stream:!0}),Ug=1}catch{}async function ta(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$/,R=";charset=utf-8",p=/([{}()^$&.*?/+|[\\\\]|\]|-)/g,T;if(!s){let b;t.readUint8Array?b=t:(Array.isArray(t)&&(t=new Blob([new Uint8Array(t)])),b=new zip.BlobReader(t)),T=new zip.ZipReader(b,r),s=await T.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 _=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(!_.password&&b.encrypted&&(_.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,_):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)x=await b.getData(new zip.Data64URIWriter(L),_);else{let ae=await b.getData(new zip.BlobWriter(L),_);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:[]})})),T&&await T.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(R,"")}function G(b,D,C){if(typeof b.replaceAll=="function")return b.replaceAll(D,C);{let x=new RegExp(D.replace(p,"\\$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 na(t,e,{disableFramePointerEvents:n,inPlace:r}={}){e=e.replace(/<noscript/gi,"<template disabled-noscript"),e=e.replace(/<\/noscript/gi,"</template");let i=new DOMParser().parseFromString(e,"text/html");if(n&&i.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&&i.compatMode==t.compatMode&&!i.querySelector("script")){await Promise.all(Array.from(i.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(i.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(s(i)),t.write(i.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)));function s(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}}async function Df(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",R=["http:","https:"],p=100,{zip:T,document:_,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{}T.configure({useWebWorkers:!0});let q=await new T.ZipReader(t.readUint8Array?t:new T.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 T.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)&&_.startViewTransition&&ot()&&!ct()?await _.startViewTransition(ve).updateCallbackDone:await ve();async function ve(){let Lt=await oe();Lt&&is(),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 Ea=Ke(le);Ea&&Zt(Ea)}}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(_,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 T.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)),_.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(()=>{}),p))}}function Le(y){for(;y&&y.tagName!="A";)y=y.parentNode;return y}function ot(){return ae=="fade"?!0:ae=="none"?!1:Array.from(_.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 _.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=_.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=_.getElementById(N);return!z&&S&&(z=_.querySelector("a[name="+S.escape(N)+"]")),z}function Zt(y){let N=Fe(u,l);N&&(y.setAttribute(l,""),C=_.createElement("style"),C.textContent=N,_.head.appendChild(C))}function Ue(){let y=_.createElement("style");y.textContent="a["+f+"]{color:"+h+"}"+Fe(d,f),_.head.appendChild(y),_.querySelectorAll("a[href]").forEach(N=>{let z=mt(N.href);z!==void 0&&k.has(z)&&N.setAttribute(f,"")})}function Pt(){let y=_.createElement("style");y.textContent=E,_.head.appendChild(y),_.querySelectorAll("a[href]").forEach(N=>{R.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=_.querySelector("["+l+"]");y&&y.removeAttribute(l),C.remove(),C=void 0}}function Fe(y,N){let z="";return Array.from(_.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 is(){let y=_.querySelector("h1")||_.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:aa,fetch:vg,TextEncoder:bt,TextDecoder:Mg,DOMParser:Nf}=globalThis,ss=new Mg("windows-1252"),Bg=[".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"],Hg="/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>"],["<plaintext>","</plaintext>"]],la=[["<!--","-->"],...fr],bf="sfz-data",fa=[[/<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],[/<plaintext/i,/<\/plaintext[\t\n\f\r />]/i]],Lf=[[/<!--/i,/--!?>|<!-$/i],...fa],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}),ns=12,Of=4,Ff=8,xf=25,zg=2,Pf=65535,kg="page.pdf",Gg=1024,Yg="<!DOCTYPE html>",Vg=67324752,Wg=33639248,Xg=101010256,Zg=101075792,Kg=117853008,rs=globalThis.browser;async function Hm(t,e,n=new Date){let r;return e.zipScript?r=e.zipScript:rs&&rs.runtime&&rs.runtime.getURL&&(or({workerURI:"/lib/single-file-z-worker.js"}),r=await(await vg(rs.runtime.getURL(Hg))).text()),Ot(t,e,r,i=>(t.url=e.url,t.archiveTime=new Date().toISOString(),Hf(i,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;if(e.embeddedImage){e.embeddedImage=new Uint8Array(e.embeddedImage);let m=e.embeddedImage.slice(Ff+xf,e.embeddedImage.length-ns);if(await ze(s.writable,e.embeddedImage.slice(0,Ff+xf)),e.selfExtractingArchive){let R=ss.decode(m),p=Bf(R),T,_,A,O,S;do[T,l]=p==-1?["",""]:la[p],_=Mf(t,e,i,T),A=new Uint8Array([...sa(_.htmlArray.length+4),116,69,88,116,80,78,71,0,..._.htmlArray]),O=ra(A,4),S=p==0&&(O[0]==62||O[0]==45&&O[1]==62),S&&p++;while(S);_.pdfEntry&&(u=_.pdfEntry,u.offset+=s.offset+12),await ze(s.writable,A),await ze(s.writable,O)}else if(e.embeddedPdf){let R=new Uint8Array([...sa(e.embeddedPdf.length+4),116,69,88,116,80,68,70,0,...new Uint8Array(e.embeddedPdf)]);await ze(s.writable,R),await ze(s.writable,ra(R,4))}await ze(s.writable,m),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 m=await $g(t,s,n,e,i);a=m.extraDataOffset,u=u||m.pdfEntry}else!e.embeddedImage&&e.embeddedPdf&&await ze(s.writable,new Uint8Array(e.embeddedPdf));let f=s.offset,d=new Jn({writable:s.writable,size:f},{bufferedWrite:!0,keepOrder:!0,lastModDate:i,useCompressionStream:!0});if(await r(d),u&&(new DataView(u.centralRecord.buffer).setUint32(42,u.offset,!0),await ze(s.writable,u.centralRecord)),await d.close(void 0,{preventClose:!0}),u&&!jg(s,u.centralRecord.length))return e.preventEmbeddedPdfEntry=!0,Ot(t,e,n,r,i);let h=s.getData(),g=h.length-zg;if(e.selfExtractingArchive){let m=[],R=-1;if(!e.extractDataFromPageTags||e.extractDataFromPageTags[0]!="<plaintext>"){let _=ss.decode(h.subarray(f));if(e.extractDataFromPageTags){let A=fr.indexOf(e.extractDataFromPageTags),O=fa[A];if(_.match(O[0])||_.match(O[1]))return ca(_,t,e,n,r,i,A+1)}else{let[A,O]=Lf[0];if(_.match(A)||_.match(O))return ca(_,t,e,n,r,i)}}if(e.extractDataFromPage){for(let _=f;_<g;_++){let A=h[_];R=R>>>8^oa[(R^A)&255],A==10?m.push(0):A==13&&(_+1<g&&h[_+1]==10?(_++,R=R>>>8^oa[(R^10)&255],m.push(2)):m.push(1))}R=(R^-1)>>>0}let p="";e.preventAppendedData||(e.extractDataFromPageTags?p+=e.extractDataFromPageTags[1]:p+="-->");let T=e.preventAppendedData||e.embeddedImage?"":"</body></html>";if(e.extractDataFromPage){let _=new Uint32Array(3+Math.ceil(m.length/16));if(_[0]=R,_[1]=g-f,_[2]=m.length,m.forEach((A,O)=>_[3+(O>>4)]|=A<<(O&15)*2),o="<sfz-extra-data>"+nm(If(new Uint8Array(_.buffer)))+"</sfz-extra-data>",e.preventAppendedData||o.length>Pf-p.length-T.length-(e.embeddedImage?ns+Of: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 p+=o}p+=T,await ze(s.writable,new bt().encode(p))}await s.writable.close();let E=await s.getData();if(e.extractDataFromPage&&e.extraDataSize!==void 0)if(e.extraDataSize>=o.length)E.set(new bt().encode(o),f-a);else return e.extraData=o,e.extraDataSize=Cf(o.length),Ot(t,e,n,r,i);if(e.declareAppendedData){let m=E.length-h.length+(e.embeddedImage?Of+ns:0);m&&m<=Pf&&new DataView(E.buffer,E.byteOffset).setUint16(g,m,!0)}return e.embeddedImage?(E.set(sa(s.offset-c-4),c-4),new aa([E,ra(E,c),e.embeddedImage.slice(e.embeddedImage.length-ns)],{type:"application/octet-stream"})):new aa([E],{type:"application/octet-stream"})}function ra(t,e=0){let n=new Uint8Array(4);return vf(n,Uf(t,e)),n}function Uf(t,e=0){let n=-1;for(;e<t.length;e++)n=n>>>8^oa[(n^t[e])&255];return(n^-1)>>>0}function qg(t,e=new Date){let n=new bt().encode(kg),r=Uf(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,Vg,!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,Wg,!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 jg(t,e){let n=new DataView(t.array.buffer),r=t.offset-22;if(n.getUint32(r,!0)!=Xg)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)==Kg){if(c=Number(n.getBigUint64(o+8,!0))+e,n.getUint32(c,!0)!=Zg)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 Pn(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 sa(t){let e=new Uint8Array(4);return vf(e,t),e}function vf(t,e){t[0]=e>>24,t[1]=e>>16,t[2]=e>>8,t[3]=e}async function $g(t,e,n,r,i){let s="",a;if(!r.embeddedImage){let d=Mf(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 Nf().parseFromString(t.content,"text/html");d.body.querySelectorAll("style, script, noscript").forEach(g=>g.remove());let h="";r.extractDataFromPage&&(h+=(t.title||"")+`
|
|
2
2
|
|
|
3
|
-
`),
|
|
4
|
-
`+
|
|
3
|
+
`),h+=d.body.innerText,d.body.querySelectorAll("single-file-note").forEach(g=>{let E=g.querySelector("template");if(E){let m=new Nf().parseFromString(E.innerHTML,"text/html");h+=`
|
|
4
|
+
`+m.body.querySelector("textarea").value}}),h=h.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
|
+
`+h+`
|
|
10
10
|
</main>
|
|
11
|
-
`}let o={insertEmbeddedImage:!!r.embeddedImage,insertEmbeddedScreenshotImage:!!r.embeddedScreenshotImage},c=r.multiPageArchive?"("+Sf.toString().replace(/\n|\t/g,"")+")(content,{extract:"+Qi.toString().replace(/\n|\t/g,"")+",display:"+ea.toString().replace(/\n|\t/g,"")+"})":"("+Qi.toString().replace(/\n|\t/g,"")+")(content,{prompt}).then(({docContent}) => "+ea.toString().replace(/\n|\t/g,"")+"(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;}})();("+Xg.toString().replace(/\n|\t/g,"")+')().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=r.extractDataFromPageTags?r.extractDataFromPageTags[0]:"<!--";s+=(l?" ":"")+u;let f=u.length+l.length+(l?1:0);return await ze(e.writable,new Yt().encode(s)),{extraDataOffset:f,pdfEntry:a}}function Pf(t,e,n,r=""){let i="";e.includeBOM&&!e.extractDataFromPage&&!e.embeddedImage&&(i+="\uFEFF"),i+=e.embeddedImage?"":t.doctype,i+="<html data-sfz>",i+=t.comment&&!e.embeddedImage?"<!--"+t.comment+"-->":"";let s=e.extractDataFromPage?"windows-1252":"utf-8";i+="<meta charset="+s+">";let a=Vg(t,e),o,c;if(e.embeddedPdf){let l=new Uint8Array(e.embeddedPdf);c=kg(l,n);let u=ns.decode(c.localHeader)+ns.decode(l),f=Of.slice(0,-1).findIndex(_=>!u.match(_[1])),[d,g]=f==-1?["",""]:bf[f],h=new Yt().encode(i+d),E=new Yt().encode(g+a+r);o=new Uint8Array(h.length+c.localHeader.length+l.length+E.length),o.set(h),o.set(c.localHeader,h.length),o.set(l,h.length+c.localHeader.length),o.set(E,h.length+c.localHeader.length+l.length),c.offset=h.length}else o=new Yt().encode(i+a+r);return{htmlArray:o,pdfEntry:c}}function Vg(t,e){let n="",r=e.extractDataFromPage?"":Cf(t);return n+="<title>"+r+"</title>",e.insertCanonicalLink&&(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 Cf(t){return t.title.replace(/</g,"<").replace(/>/g,">")||""}function oa(t,e,n,r,i,s,a=0){let o=ca[a];return!(lr[a][0]=="<plaintext>")&&(t.match(o[0])||t.match(o[1]))?a<lr.length-1?oa(t,e,n,r,i,s,a+1):(n.extractDataFromPage=!1,Vt(e,n,r,i,s)):(n.extractDataFromPageTags=lr[a],n.extractDataFromPageTags[0]=="<plaintext>"&&(n.preventAppendedData=!0),Vt(e,n,r,i,s))}async function ze(t,e){let n=t.getWriter();await n.ready,await n.write(e),n.releaseLock()}async function Lf(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"?Lf(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 kt(n.content):new Dt(new ia([new Uint8Array(n.content)])),s={comment:n.url&&n.url.startsWith("data:")?"data:":n.url,password:n.password,bufferedWrite:!0};(Cg.includes(n.extension)||r)&&(s.level=0),await t.add(e+n.name,i,s)}async function Xg(){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",{Blob:e,XMLHttpRequest:n,document:r,zip:i,location:s}=globalThis,a=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]]),o=new Uint32Array(256).map((d,g)=>{let h=g;for(let E=0;E<8;E++)h=h&1?3988292384^h>>>1:h>>>1;return h});return new Promise((d,g)=>{let h=!1;s.protocol=="file:"?E():_();async function E(){try{await c(r),r.body.querySelectorAll("meta, style").forEach(A=>r.head.appendChild(A));let R=u();l("sfz-wait-message",2),d(R)}catch(R){console.error(R),l("sfz-error-message",2),g(R)}}function _(){let R=new n;R.responseType="blob",R.open("GET",""),R.onerror=()=>{h?(l("sfz-error-message",2),g()):E()},R.send(),R.onreadystatechange=()=>{if(R.readyState===2&&R.status===200&&!h){h=!0;let A=R.getResponseHeader("Accept-Ranges")==="bytes";R.abort(),l("sfz-wait-message",2),A?d(new i.HttpRangeReader(s.href,{useXHR:!0,combineSizeEocd:!0})):_()}},h&&(R.onload=()=>d(R.response))}});function c(d){return new Promise(g=>{d.readyState==="complete"||d.readyState==="interactive"?g():d.addEventListener("DOMContentLoaded",()=>g())})}function l(d,g=0){let h=r.getElementById(d);h&&(Array.from(r.body.childNodes).forEach(E=>{E.id!=d&&(E.id=="sfz-wait-message"||E.id=="sfz-error-message"?E.hidden=!0:E.remove())}),h.hidden=!1,r.body.hidden=!1,h.style="opacity: 0; animation: 0s linear "+g+"s display-wait-message 1 normal forwards")}function u(){let d=r.querySelector("sfz-extra-data");if(d){let F=function(P){w[y]=P,b=b>>>8^o[(b^P)&255],y++},g=d.nextSibling;g&&g.nodeType==Node.TEXT_NODE&&g.nextSibling?g=g.nextSibling:g=d.previousSibling;let h=i.inflateRaw(f(d.textContent)),E=new Uint32Array(h.buffer,h.byteOffset,h.length>>2),_=E[0],R=E[1],A=E[2],w=new Uint8Array(R),{textContent:T}=g,y=0,O=0,b=-1;for(let P=0;P<T.length;P++){let v=T.charCodeAt(P);if(v==10){let M=E[3+(O>>4)]>>>(O&15)*2&3;O++,M==0?F(10):(F(13),M==2&&F(10))}else F(v>255?a.get(v):v)}if(b=(b^-1)>>>0,y!=R||O!=A||b!=_)throw new Error("Invalid checksum of the extracted zip data");return new e([w],{type:"application/octet-stream"})}throw new Error("Extra zip data data not found")}function f(d){d=String(d).replace(/[^A-Za-z0-9+/=]/g,"");let g=d.length,h=[];for(let E=0;E<g;E+=4){let _=t.indexOf(d[E]),R=t.indexOf(d[E+1]),A=t.indexOf(d[E+2]),w=t.indexOf(d[E+3]),T=_<<18|R<<12|(A&63)<<6|w&63;h.push(T>>16&255),d[E+2]!=="="&&h.push(T>>8&255),d[E+3]!=="="&&h.push(T&255)}return new Uint8Array(h)}}var Nt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Wg(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 la=globalThis.browser,Zg="pages/",Kg="sfz-pages.json",qg="sfz-toc.html",fa="Table of contents",jg="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}}",$g="Page saved with SingleFile",Jg=41471;async function Cm(t,e){la&&la.runtime&&la.runtime.getURL?ar({workerURI:"/lib/single-file-z-worker.js",workerStartupTimeout:2e3}):ar({useWebWorkers:!1});let n={pages:t.map((c,l)=>({path:Uf(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?nm(t[0].url,e):void 0,tocContent:sm(t)},i={url:t[0].url,multiPageArchive:!0,selfExtractingArchive:e.selfExtractingArchive,extractDataFromPage:e.extractDataFromPage,preventAppendedData:e.preventAppendedData,includeBOM:e.includeBOM,insertMetaCSP:e.insertMetaCSP,insertCanonicalLink:e.insertCanonicalLink,insertMetaNoIndex:e.insertMetaNoIndex},s=e.dedupPages?new Map:void 0,a={},o=await Vt(r,i,e.zipScript,async c=>{for(let l=0;l<t.length;l++){let u=Uf(l),f=new On(new jn(await t[l].getData()));for(let d of await f.getEntries()){let g=u+d.filename,h=await d.getData(new Nn,{passThrough:!0,checkSignature:!1}),E=s&&Qg(s,g,d,h);E===void 0?await c.add(g,new jn(h),{passThrough:!0,compressionMethod:d.compressionMethod,uncompressedSize:d.uncompressedSize,signature:d.signature,comment:d.comment,lastModDate:d.lastModDate}):(a[g]=E,await c.add(g,new kt(tm(g,E)),{msDosCompatible:!1,unixMode:Jg,level:0,comment:d.comment,lastModDate:d.lastModDate}))}await f.close()}Object.keys(a).length&&(n.aliases=a),e.tocPage&&await c.add(qg,new kt(rm(n.pages))),await c.add(Kg,new kt(JSON.stringify(n,null,2)))});return new Uint8Array(await o.arrayBuffer())}function Qg(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=>em(o.rawData,r));if(a)return a.filename;s.push({filename:e,rawData:r})}else t.set(i,[{filename:e,rawData:r}])}function em(t,e){return t.length==e.length&&t.every((n,r)=>n==e[r])}function tm(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 Uf(t){return t==0?"":Zg+(t+1)+"/"}function nm(t,e){return`
|
|
12
|
-
|
|
11
|
+
`}let o={insertEmbeddedImage:!!r.embeddedImage,insertEmbeddedScreenshotImage:!!r.embeddedScreenshotImage},c=r.multiPageArchive?"("+Pn(Df)+")(content,{extract:"+Pn(ta)+",display:"+Pn(na)+"})":"("+Pn(ta)+")(content,{prompt}).then(({docContent}) => "+Pn(na)+"(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;}})();("+Pn(tm)+')().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=Jg(r.extractDataFromPageTags||la[0]);s+=u;let f=u.length+l.length;return await ze(e.writable,new bt().encode(s)),{extraDataOffset:f,pdfEntry:a}}function Jg([t]){return t=="<!--"?t+bf:t.slice(0,-1)+" id="+bf+">"}function Mf(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?"<!--"+t.comment+"-->":"",u=Qg(t,e),f,d;if(e.embeddedPdf){let h=new Uint8Array(e.embeddedPdf);d=e.preventEmbeddedPdfEntry?void 0:qg(h,n);let g=d?d.localHeader:new Uint8Array(0),E=ss.decode(g)+ss.decode(h),m=Bf(E),[R,p]=m==-1?["",""]:la[m],T=new bt().encode(c+R);T.length+g.length>Gg&&(T=new bt().encode(i+Yg+o+R));let _=new bt().encode(p+l+u+r);f=new Uint8Array(T.length+g.length+h.length+_.length),f.set(T),f.set(g,T.length),f.set(h,T.length+g.length),f.set(_,T.length+g.length+h.length),d&&(d.offset=T.length)}else f=new bt().encode(c+l+u+r);return{htmlArray:f,pdfEntry:d}}function Qg(t,e){let n="",r=e.password?"":em(t);return n+="<title>"+r+"</title>",e.insertCanonicalLink&&(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 em(t){return Array.from(t.title||"").map(e=>{let n=e.codePointAt(0);return n<32||n>126||e=="&"||e=="<"||e==">"?"&#"+n+";":e}).join("")}function ca(t,e,n,r,i,s,a=0){let o=fa[a];return!(fr[a][0]=="<plaintext>")&&(t.match(o[0])||t.match(o[1]))?a<fr.length-1?ca(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 Bf(t){return Lf.slice(0,-1).findIndex(([e,n])=>!t.match(e)&&!t.match(n))}async function ze(t,e){let n=t.getWriter();await n.ready,await n.write(e),n.releaseLock()}async function Hf(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"?Hf(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 Yt(n.content):new Dt(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),(Bg.includes(n.extension)||r)&&(s.level=0),await t.add(e+n.name,i,s)}async function tm(){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 R=m;for(let p=0;p<8;p++)R=R&1?3988292384^R>>>1:R>>>1;return R});return new Promise((E,m)=>{let R=!1;o.protocol=="file:"?p():T();async function p(){try{await u(s),s.body.querySelectorAll("meta, style").forEach(A=>s.head.appendChild(A));let _=d();f("sfz-wait-message",2),E(_)}catch(_){console.error(_),f("sfz-error-message",2),m(_)}}function T(){let _=new r;_.responseType="blob",_.open("GET",""),_.onerror=()=>p(),_.send(),_.onreadystatechange=()=>{if(_.readyState===2&&!R)if(_.status===200){R=!0;let A=_.getResponseHeader("Accept-Ranges")==="bytes";_.abort(),f("sfz-wait-message",2,!0),A?E(new a.HttpRangeReader(o.href,{useXHR:!0,combineSizeEocd:!0})):T()}else _.abort(),p()},R&&(_.onload=()=>E(_.response))}});function u(E){return new Promise(m=>{E.readyState==="complete"||E.readyState==="interactive"?m():E.addEventListener("DOMContentLoaded",()=>m())})}function f(E,m=0,R){let p=s.getElementById(E);p&&(Array.from(s.body.childNodes).forEach(T=>{T.id!=E&&(T.id=="sfz-wait-message"||T.id=="sfz-error-message"?T.hidden=!0:R||T.remove())}),p.hidden=!1,s.body.hidden=!1,p.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)),R=new Uint32Array(m.buffer,m.byteOffset,m.length>>2),p=s.getElementById(e);if(p)return h(p,R,0);let T=s.createTreeWalker(s.body,i.SHOW_COMMENT);for(;T.nextNode();)if(T.currentNode.data.startsWith(e))return h(T.currentNode,R,e.length)}throw new Error("Extra zip data not found")}function h(E,m,R){let p=m[0],T=m[1],_=m[2],A=new Uint8Array(T+2),{textContent:O}=E,S=0,F=0,P=-1;for(let v=R;v<O.length&&S<T;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!=T||F!=_||P!=p)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,R=[];for(let p=0;p<m;p+=4){let T=t.indexOf(E[p]),_=t.indexOf(E[p+1]),A=t.indexOf(E[p+2]),O=t.indexOf(E[p+3]),S=T<<18|_<<12|(A&63)<<6|O&63;R.push(S>>16&255),E[p+2]!=="="&&R.push(S>>8&255),E[p+3]!=="="&&R.push(S&255)}return new Uint8Array(R)}}var Nt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function nm(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 ua=globalThis.browser,rm="pages/",sm="sfz-pages.json",im="sfz-toc.html",da="Table of contents",am="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}}",om="Page saved with SingleFile",cm=41471;async function Ym(t,e){ua&&ua.runtime&&ua.runtime.getURL?or({workerURI:"/lib/single-file-z-worker.js",workerStartupTimeout:2e3}):or({useWebWorkers:!1});let n={pages:t.map((c,l)=>({path:zf(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?dm(t[0].url,e):void 0,tocContent:e.pageList?hm(t):void 0},i={url:t[0].url,multiPageArchive:!0,selfExtractingArchive:e.selfExtractingArchive,extractDataFromPage:e.extractDataFromPage,preventAppendedData:e.preventAppendedData,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=zf(l),f=new On(new $n(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&&lm(s,h,d,g);E===void 0?await c.add(h,new $n(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(um(h,E)),{msDosCompatible:!1,unixMode:cm,level:0,comment:d.comment,lastModDate:d.lastModDate}))}await f.close()}Object.keys(a).length&&(n.aliases=a),e.tocPage&&await c.add(im,new Yt(Em(n.pages))),await c.add(sm,new Yt(JSON.stringify(n,null,2)))});return new Uint8Array(await o.arrayBuffer())}function lm(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=>fm(o.rawData,r));if(a)return a.filename;s.push({filename:e,rawData:r})}else t.set(i,[{filename:e,rawData:r}])}function fm(t,e){return t.length==e.length&&t.every((n,r)=>n==e[r])}function um(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 zf(t){return t==0?"":rm+(t+1)+"/"}function dm(t,e){return`
|
|
12
|
+
`+om+`
|
|
13
13
|
url: `+t+(e.removeSavedDate?" ":`
|
|
14
14
|
saved date: `+new Date)+`
|
|
15
|
-
`}function
|
|
15
|
+
`}function Em(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?da+" - "+t[0].title:da;return'<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>'+ur(r)+"</title><style>"+am+"</style></head><body><main><h1>"+ur(da)+"</h1>"+Gf(n)+"</main></body></html>"}function Gf(t){let e="";return t.pages.length&&(e+="<ul>"+t.pages.map(n=>'<li><a href="'+ur(n.path+"index.html")+'">'+ur(n.title||n.url)+"</a></li>").join("")+"</ul>"),t.groups.forEach((n,r)=>{e+="<details open><summary>"+ur(r)+"</summary>"+Gf(n)+"</details>"}),e}function ur(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")}function hm(t){return"<nav><ul>"+t.map(e=>'<li><a href="'+kf(e.url)+'">'+kf(e.title||e.url)+"</a></li>").join("")+"</ul></nav>"}function kf(t){return Array.from(t).map(e=>{let n=e.codePointAt(0);return n<32||n>126||e=="&"||e=="<"||e==">"||e=='"'?"&#"+n+";":e}).join("")}export{Dt as BlobReader,Ks as BlobWriter,Va as Data64URIReader,Wa as Data64URIWriter,Ll as ERR_AMBIGUOUS_ARCHIVE,Mn as ERR_BAD_FORMAT,bl as ERR_CENTRAL_DIRECTORY_NOT_FOUND,af as ERR_DUPLICATED_NAME,xl as ERR_ENCRYPTED,Ul as ERR_ENCRYPTED_CENTRAL_DIRECTORY,Cl as ERR_ENTRY_DATA_OUT_OF_BOUNDS,Nl as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,Dl as ERR_EOCDR_NOT_FOUND,Fl as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,Rt as ERR_HTTP_RANGE,Ga as ERR_HTTP_RESOURCE_CHANGED,wc as ERR_INVALID_AUTHENTICATION_CODE,Pa as ERR_INVALID_CODEC_DEFINITION,Id as ERR_INVALID_CODEC_MODULE,of as ERR_INVALID_COMMENT,gh as ERR_INVALID_COMMENT_TYPE,Oc as ERR_INVALID_COMPRESSED_DATA,Fc as ERR_INVALID_CRC32,_h as ERR_INVALID_DATE,ph as ERR_INVALID_ENCRYPTION_STRENGTH,mh as ERR_INVALID_ENTRY_COMMENT,wh as ERR_INVALID_ENTRY_COMMENT_TYPE,Th as ERR_INVALID_ENTRY_NAME,yh as ERR_INVALID_EXTRAFIELD,$i as ERR_INVALID_EXTRAFIELD_DATA,Ih as ERR_INVALID_EXTRAFIELD_DATA_TYPE,Sh as ERR_INVALID_EXTRAFIELD_TYPE,Bl as ERR_INVALID_FILENAME_VALIDATION,Gu as ERR_INVALID_FUNCTION_OPTION,Ph as ERR_INVALID_GID,Bh as ERR_INVALID_LEVEL,Hl as ERR_INVALID_MAX_APPENDED_DATA_SIZE,Xu as ERR_INVALID_MAX_WORKERS,vh as ERR_INVALID_MSDOS_ATTRIBUTES,Mh as ERR_INVALID_MSDOS_DATA,Di as ERR_INVALID_PASSWORD,Vu as ERR_INVALID_PASSWORD_TYPE,Yu as ERR_INVALID_SIGNAL,Ni as ERR_INVALID_SIGNATURE,Hh as ERR_INVALID_SIGNATURE_DATA,Ml as ERR_INVALID_STRICTNESS,xh as ERR_INVALID_UID,Jr as ERR_INVALID_UNCOMPRESSED_SIZE,Lh as ERR_INVALID_UNIX_EXTRA_FIELD_TYPE,Uh as ERR_INVALID_UNIX_ID_SIZE,Ch as ERR_INVALID_UNIX_MODE,cf as ERR_INVALID_VERSION,iE as ERR_ITERATOR_COMPLETED_TOO_SOON,Ol as ERR_LOCAL_FILE_HEADER_NOT_FOUND,Pl as ERR_OVERLAPPING_ENTRY,Sd as ERR_RESERVED_COMPRESSION_METHOD,si as ERR_SPLIT_ZIP_FILE,bh as ERR_UNDEFINED_COMPRESSION_METHOD,Oh as ERR_UNDEFINED_READER,Nh as ERR_UNDEFINED_UNCOMPRESSED_SIZE,Tm as ERR_UNDETERMINED_SIZE,vl as ERR_UNSAFE_FILENAME,ri as ERR_UNSUPPORTED_COMPRESSION,Ag as ERR_UNSUPPORTED_CONTEXT,id as ERR_UNSUPPORTED_CRYPTO_API,ni as ERR_UNSUPPORTED_ENCRYPTION,Ah as ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH,Rh as ERR_UNSUPPORTED_ENCRYPTION_USDZ,Ji as ERR_UNSUPPORTED_FORMAT,zl as ERR_UNSUPPORTED_UINT64,Pi as ERR_WORKER_STARTUP_TIMEOUT,aE as ERR_WRITER_NOT_INITIALIZED,Fh as ERR_ZIP_NOT_EMPTY,ja as HttpRangeReader,Js as HttpReader,Et as Reader,Qs as SplitDataReader,ei as SplitDataWriter,Yt as TextReader,Xa as TextWriter,$n as Uint8ArrayReader,Nn as Uint8ArrayWriter,Am as VERSION,ai as WARNING_APPENDED_DATA,Yl as WARNING_COMPRESSED_PATCHED_DATA,Xl as WARNING_DUPLICATE_FILENAME,Ki as WARNING_MALFORMED_EXTRA_FIELD,Zl as WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG,Kl as WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD,ql as WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES,Bn as WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY,oi as WARNING_PREPENDED_DATA,Wl as WARNING_TRAILING_CENTRAL_DIRECTORY_DATA,Gl as WARNING_UNKNOWN_VERSION,Vl as WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA,kl as WARNING_UNSORTED_CENTRAL_DIRECTORY,ii as WARNING_WRAPPED_ENTRIES_COUNT,Hr as Writer,On as ZipReader,ci as ZipReaderStream,Jn as ZipWriter,mo as ZipWriterStream,or as configure,Ot as createArchive,Sm as createBlobTempStream,ym as createOPFSTempStream,Ym as createPagesArchive,Im as createSyncAccessHandleTempStream,If as deflateRaw,pm as getMimeType,Nd as getRegisteredCodecs,Rm as getSupportedCompressionMethods,Dm as inflateRaw,Be as initStream,jE as isZipFile,Hm as process,_e as readUint8Array,mm as registerCodec,gm as resetConfiguration,_m as terminateWorkers,wm as unregisterCodec};
|