single-file-cli 2.8.0 → 2.9.1
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/README.MD +8 -2
- package/build-dev.sh +3 -1
- package/build.sh +6 -3
- package/deno.json +1 -1
- package/lib/bidi-client.js +1221 -0
- package/lib/bidi.js +141 -0
- package/lib/browser.js +14 -209
- package/lib/cdp-client.js +11 -11
- package/lib/chromium.js +225 -0
- package/lib/constants.js +27 -4
- package/lib/deno-polyfill.js +5 -0
- package/lib/firefox.js +182 -0
- package/lib/single-file-archive.js +5 -5
- package/lib/single-file-bundle.js +1 -1
- package/lib/version.js +1 -1
- package/options.js +19 -2
- package/package.json +2 -1
- package/single-file-cli-api.js +11 -5
- package/single-file-launcher.js +3 -3
- package/test/e2e/automation-detection.test.js +4 -3
- package/test/e2e/password.test.js +47 -0
- package/test/e2e/proxy-auth.test.js +53 -0
- package/test/e2e/service-worker.test.js +2 -2
- package/test/fidelity/browser.js +3 -3
- package/test/target.js +5 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
var{Array:je,Object:U,String:pa,Number:pe,BigInt:Ce,Math:W,Date:St,Map:gt,Set:Ir,Response:eu,URL:Dr,Error:I,Uint8Array:V,Uint16Array:tu,Uint32Array:Co,DataView:rn,Blob:Sn,Promise:ge,TextEncoder:Ra,TextDecoder:Nr,crypto:st,btoa:Aa,TransformStream:we,ReadableStream:it,WritableStream:at,CompressionStream:ya,DecompressionStream:Sa,navigator:Yn,Worker:wr,setTimeout:Zr,clearTimeout:Kr}=typeof globalThis<"u"?globalThis:self,me=4294967295,X=65535,rt=255,Cn=8,Kn=9,It=0,qr=99,Lo=67324752,ar=134695760,nu=808471376,Uo=ar,ru=134630224,Mo=84233040,Mt=33639248,vo=101010256,ys=101075792,Ai=117853008,In=46,Ie=22,Ut=20,et=56,Ia=Ie+Ut+et,Ho=12,Bo=20,Kt=4,Ht=4,jr=1,ko=39169,zo=10,Go=1,yi=21589,su=28789,iu=25461,Yo=6534,Vo=30837,Wo=30805,au=22613,ou=13,br=1,Xo=6,cu=2,lu=4,fu=6,Or=8,Da=32,Na=64,Fr=2048,ba=8192,xr=16,Ss=1,Is=2,Ds=4,Ns=32,gn=61440,Vn=16384,Zo=40960,uu=32768,Wn=73,_r=420,bs=2048,Os=1024,Fs=512,du=10,Eu=20,Pr=45,Oa=51,hu=20,Fa=768,mn="/",Ve=30,gu=0,qn=10,or=14,cr=18,mu=22,wu=24,qt=4,xa=new St(2107,11,31,23,59,58),Cr=new St(1980,0,1),m=void 0,fn=1/0,Dt="undefined",De="function",_u="object",Dn="string",Tu="number",pu="boolean",fe=new V,Ru="filenameEncoding",Au="commentEncoding",yu="decodeText",Su="extractPrependedData",Iu="extractAppendedData",Ko="password",qo="rawPassword",jo="passThrough",$o="signal",Du="checkPasswordOnly",Nu="checkOverlappingEntryOnly",bu="checkOverlappingEntry",Ou="checkAmbiguity",Fu="checkLocalDirectory",xu="checkSignature",Pu="checkCrc32",Cu="checkAuthenticationCode",Jo="useWebWorkers",Qo="useCompressionStream",ec="transferStreams",tc="preventClose",Lu="encryptionStrength",Uu="extendedTimestamp",Mu="ntfsTimestamp",vu="keepOrder",Hu="level",Bu="bufferedWrite",ku="createTempStream",zu="dataDescriptorSignature",Gu="useUnicodeFileNames",nc="dataDescriptor",Yu="supportZip64SplitFile",Vu="encodeText",gr="offset",jn="usdz",Wu="unixExtraFieldType",Xu="localExtraField",Zu="centralExtraField",Ku="strictness",qu="filenameValidation",ju="normalizeFilename",rc="maxAppendedDataSize",$u="decryptCentralDirectory",Ju="signCentralDirectory",sc="filename",ic="comment",sn="strict",Si="balanced",zt="tolerant",Qu="Invalid option (must be a function)",ed="Invalid signal (must be an AbortSignal instance)",td="Invalid password (password must be a string, rawPassword must be a Uint8Array)";function Ii(t){if(t&&typeof t!=De)throw new I(Qu);return t}function ac(t){if(t&&(typeof t.addEventListener!=De||typeof t.aborted!=pu))throw new I(ed);return t||m}function oc(t,e){if(t&&typeof t!=Dn||e&&!(e instanceof V))throw new I(td)}function cc(t,e,n){if(!pe.isInteger(t)||t<0||t>e)throw new I(n)}function kn(t,e,n){t!==m&&cc(t,e,n)}function $r(t){return typeof t==Dn&&t.trim()?pe(t):t}var lc=64*1024,nd=64,fc=1,rd="Invalid maxWorkers (must be an integer greater than 0)",uc=2;try{typeof Yn!=Dt&&Yn.hardwareConcurrency&&(uc=Yn.hardwareConcurrency)}catch{}var Di={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:lc,maxWorkers:uc,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof ya!=Dt&&ya,DecompressionStream:typeof Sa!=Dt&&Sa},dc="maxWorkers",sd=["baseURI","wasmURI","workerURI"],id=["useCompressionStream","useWebWorkers","transferStreams"],Ec=["chunkSize",dc,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],hc=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],gc=[...sd,...id,...Ec,...hc],$n={...Di};function an(){return $n}function Ni(t){return mc(t.chunkSize)}function mc(t){return t=$r(t),pe.isInteger(t)&&t>=fc?W.max(t,nd):lc}function Ln(t){U.assign($n,wc(_c(t)))}function wc(t){let e={};for(let n of gc){let r=t[n];r!==m&&(e[n]=ad(n,r))}return e}function ad(t,e){if(Ec.includes(t)){if(e=$r(e),t==dc&&(!pe.isInteger(e)||e<fc))throw new I(rd)}else hc.includes(t)&&Ii(e);return e}function _c(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 od(t){let e=wc(_c(t));U.assign(Di,e),U.assign($n,e)}function Pm(){for(let t of gc)delete $n[t];U.assign($n,Di)}function Bt(t,e){let n=new V(t.length+e.length);return n.set(t),n.set(e,t.length),n}function Tc(t){return t.byteOffset||t.byteLength!=t.buffer.byteLength?new V(t):t}function K(t){return new rn(t.buffer,t.byteOffset,t.byteLength)}var Xn=[[],[],[],[],[],[],[],[]];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;Xn[0][t]=e}for(let t=0;t<256;t++)for(let e=1;e<8;e++){let n=Xn[e-1][t];Xn[e][t]=n>>>8^Xn[0][n&255]}var[Pa,cd,ld,fd,ud,dd,Ed,hd]=Xn,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 rn(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=hd[o&255]^Ed[o>>>8&255]^dd[o>>>16&255]^ud[o>>>24&255]^fd[c&255]^ld[c>>>8&255]^cd[c>>>16&255]^Pa[c>>>24&255]}}for(;i<r;i++)n=n>>>8^Pa[(n^e[i])&255];this.crc=n}get(){return~this.crc}},Lr=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 rn(r.buffer).setUint32(0,n.get()),e.value=r}}),e=this}};function Tr(t){if(typeof Ra==Dt){t=unescape(encodeURIComponent(t));let e=new V(t.length);for(let n=0;n<e.length;n++)e[n]=t.charCodeAt(n);return e}else return new Ra().encode(t)}var ve={concat(t,e){if(t.length===0||e.length===0)return t.concat(e);let n=t[t.length-1],r=ve.getPartial(n);return r===32?t.concat(e):ve._shiftRight(e,r,n|0,t.slice(0,t.length-1))},bitLength(t){let e=t.length;if(e===0)return 0;let n=t[e-1];return(e-1)*32+ve.getPartial(n)},clamp(t,e){if(t.length*32<e)return t;t=t.slice(0,W.ceil(e/32));let n=t.length;return e=e&31,n>0&&e&&(t[n-1]=ve.partial(e,t[n-1]&2147483648>>e-1,1)),t},partial(t,e,n){return t===32?e:(n?e|0:e<<32-t)+t*1099511627776},getPartial(t){return W.round(t/1099511627776)||32},_shiftRight(t,e,n,r){for(r===void 0&&(r=[]);e>=32;e-=32)r.push(n),n=0;if(e===0)return r.concat(t);for(let a=0;a<t.length;a++)r.push(n|t[a]>>>e),n=t[a]<<32-e;let i=t.length?t[t.length-1]:0,s=ve.getPartial(i);return r.push(ve.partial(e+s&31,e+s>32?n:r.pop(),1)),r}},Ur={bytes:{fromBits(t){let n=ve.bitLength(t)/8,r=new V(n),i;for(let s=0;s<n;s++)(s&3)===0&&(i=t[s/4]),r[s]=i>>>24,i<<=8;return r},toBits(t){let e=[],n,r=0;for(n=0;n<t.length;n++)r=r<<8|t[n],(n&3)===3&&(e.push(r),r=0);return n&3&&e.push(ve.partial(8*(n&3),r)),e}}},pc={};pc.sha1=class{constructor(t){let e=this;e.blockSize=512,e._init=[1732584193,4023233417,2562383102,271733878,3285377520],e._key=[1518500249,1859775393,2400959708,3395469782],t?(e._h=t._h.slice(0),e._buffer=t._buffer.slice(0),e._length=t._length):e.reset()}reset(){let t=this;return t._h=t._init.slice(0),t._buffer=[],t._length=0,t}update(t){let e=this;typeof t=="string"&&(t=Ur.utf8String.toBits(t));let n=e._buffer=ve.concat(e._buffer,t),r=e._length,i=e._length=r+ve.bitLength(t);if(i>9007199254740991)throw new I("Cannot hash more than 2^53 - 1 bits");let s=new Co(n),a=0;for(let o=e.blockSize+r-(e.blockSize+r&e.blockSize-1);o<=i;o+=e.blockSize)e._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),e}finalize(){let t=this,e=t._buffer,n=t._h;e=ve.concat(e,[ve.partial(1,1)]);for(let r=e.length+2;r&15;r++)e.push(0);for(e.push(W.floor(t._length/4294967296)),e.push(t._length|0);e.length;)t._block(e.splice(0,16));return t.reset(),n}_f(t,e,n,r){if(t<=19)return e&n|~e&r;if(t<=39)return e^n^r;if(t<=59)return e&n|e&r|n&r;if(t<=79)return e^n^r}_S(t,e){return e<<t|e>>>32-t}_block(t){let e=this,n=e._h,r=je(80);for(let l=0;l<16;l++)r[l]=t[l];let i=n[0],s=n[1],a=n[2],o=n[3],c=n[4];for(let l=0;l<=79;l++){l>=16&&(r[l]=e._S(1,r[l-3]^r[l-8]^r[l-14]^r[l-16]));let u=e._S(5,i)+e._f(l,s,a,o)+c+r[l]+e._key[W.floor(l/20)]|0;c=o,o=a,a=e._S(30,s),s=i,i=u}n[0]=n[0]+i|0,n[1]=n[1]+s|0,n[2]=n[2]+a|0,n[3]=n[3]+o|0,n[4]=n[4]+c|0}};var Rc={};Rc.aes=class{constructor(t){let e=this;e._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],e._tables[0][0][0]||e._precompute();let n=e._tables[0][4],r=e._tables[1],i=t.length,s,a,o,c=1;if(i!==4&&i!==6&&i!==8)throw new I("invalid aes key size");for(e._key=[a=t.slice(0),o=[]],s=i;s<4*i+28;s++){let l=a[s-1];(s%i===0||i===8&&s%i===4)&&(l=n[l>>>24]<<24^n[l>>16&255]<<16^n[l>>8&255]<<8^n[l&255],s%i===0&&(l=l<<8^l>>>24^c<<24,c=c<<1^(c>>7)*283)),a[s]=a[s-i]^l}for(let l=0;s;l++,s--){let u=a[l&3?s:s-4];s<=4||l<4?o[l]=u:o[l]=r[0][n[u>>>24]]^r[1][n[u>>16&255]]^r[2][n[u>>8&255]]^r[3][n[u&255]]}}encrypt(t){return this._crypt(t,0)}decrypt(t){return this._crypt(t,1)}_precompute(){let t=this._tables[0],e=this._tables[1],n=t[4],r=e[4],i=[],s=[],a,o,c,l;for(let u=0;u<256;u++)s[(i[u]=u<<1^(u>>7)*283)^u]=u;for(let u=a=0;!n[u];u^=o||1,a=s[a]||1){let f=a^a<<1^a<<2^a<<3^a<<4;f=f>>8^f&255^99,n[u]=f,r[f]=u,l=i[c=i[o=i[u]]];let d=l*16843009^c*65537^o*257^u*16843008,h=i[f]*257^f*16843008;for(let g=0;g<4;g++)t[g][u]=h=h<<24^h>>>8,e[g][f]=d=d<<24^d>>>8}for(let u=0;u<5;u++)t[u]=t[u].slice(0),e[u]=e[u].slice(0)}_crypt(t,e){if(t.length!==4)throw new I("invalid aes block size");let n=this._key[e],r=n.length/4-2,i=[0,0,0,0],s=this._tables[e],a=s[0],o=s[1],c=s[2],l=s[3],u=s[4],f=t[0]^n[0],d=t[e?3:1]^n[1],h=t[2]^n[2],g=t[e?1:3]^n[3],E=4,_,R,T;for(let w=0;w<r;w++)_=a[f>>>24]^o[d>>16&255]^c[h>>8&255]^l[g&255]^n[E],R=a[d>>>24]^o[h>>16&255]^c[g>>8&255]^l[f&255]^n[E+1],T=a[h>>>24]^o[g>>16&255]^c[f>>8&255]^l[d&255]^n[E+2],g=a[g>>>24]^o[f>>16&255]^c[d>>8&255]^l[h&255]^n[E+3],E+=4,f=_,d=R,h=T;for(let w=0;w<4;w++)i[e?3&-w:w]=u[f>>>24]<<24^u[d>>16&255]<<16^u[h>>8&255]<<8^u[g&255]^n[E++],_=f,f=d,d=h,h=g,g=_;return i}};var Ac={};Ac.ctrGladman=class{constructor(t,e){this._prf=t,this._initIv=e,this._iv=e}reset(){this._iv=this._initIv}update(t){return this.calculate(this._prf,t,this._iv)}incWord(t){if((t>>24&255)===255){let e=t>>16&255,n=t>>8&255,r=t&255;e===255?(e=0,n===255?(n=0,r===255?r=0:++r):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=r}else t+=1<<24;return t}incCounter(t){(t[0]=this.incWord(t[0]))===0&&(t[1]=this.incWord(t[1]))}calculate(t,e,n){let r;if(!(r=e.length))return[];let i=ve.bitLength(e);for(let s=0;s<r;s+=4){this.incCounter(n);let a=t.encrypt(n);e[s]^=a[0],e[s+1]^=a[1],e[s+2]^=a[2],e[s+3]^=a[3]}return ve.clamp(e,i)}};var $t={importKey(t){return new $t.hmacSha1(Ur.bytes.toBits(t))},pbkdf2(t,e,n,r){if(n=n||1e4,r<0||n<0)throw new I("invalid params to pbkdf2");let i=(r>>5)+1<<2,s,a,o,c,l,u=new ArrayBuffer(i),f=new rn(u),d=0,h=ve;for(e=Ur.bytes.toBits(e),l=1;d<(i||1);l++){for(s=a=t.encrypt(h.concat(e,[l])),o=1;o<n;o++)for(a=t.encrypt(a),c=0;c<a.length;c++)s[c]^=a[c];for(o=0;d<(i||1)&&o<s.length;o++)f.setInt32(d,s[o]),d+=4}return u.slice(0,r/8)}};$t.hmacSha1=class{constructor(t){let e=this,n=e._hash=pc.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 gd=typeof st!=Dt&&typeof st.getRandomValues==De,bi="Invalid password",Oi="Invalid signature",yc=Oi,Fi="zipjs-abort-check-password",md="Crypto API not supported";function Sc(t){if(gd)return st.getRandomValues(t);throw new I(md)}var un=16,wd="raw",Ic={name:"PBKDF2"},_d={name:"HMAC"},Td="SHA-1",pd=U.assign({hash:_d},Ic),xs=U.assign({iterations:1e3,hash:{name:Td}},Ic),Rd=["deriveBits"],Jn=[8,12,16],vn=[16,24,32],pt=10,Ad=[0,0,0,0],Jr=typeof st!=Dt,lr=Jr&&st.subtle,Dc=Jr&&typeof lr!=Dt,ft=Ur.bytes,yd=Rc.aes,Sd=Ac.ctrGladman,Id=$t.hmacSha1,Ca=Jr&&Dc&&typeof lr.importKey==De,La=Jr&&Dc&&typeof lr.deriveBits==De,Ps=class extends we{constructor({password:e,rawPassword:n,encryptionStrength:r,checkPasswordOnly:i,checkAuthenticationCode:s=!0}){super({start(){Nc(this,e,n,r)},async transform(a,o){let c=this,{password:l,strength:u,resolveReady:f,ready:d}=c;l?(await Dd(c,u,l,qe(a,0,Jn[u]+2)),a=qe(a,Jn[u]+2),i?o.error(new I(Fi)):f()):await d;let h=new V(a.length-pt-(a.length-pt)%un);o.enqueue(bc(c,a,h,0,pt,!0))},async flush(a){let{ctr:o,hmac:c,pendingInput:l,ready:u}=this;if(c&&o){await u;let f=qe(l,0,l.length-pt),d=qe(l,l.length-pt),h=fe;if(f.length){let _=er(ft,f);c.update(_);let R=o.update(_);h=Qn(ft,R)}let g=qe(Qn(ft,c.digest()),0,pt),E=l.length<pt?1:0;for(let _=0;_<pt;_++)E|=g[_]^d[_];if(E&&s)throw new I(yc);a.enqueue(h)}}})}},Cs=class extends we{constructor({password:e,rawPassword:n,encryptionStrength:r}){super({start(){Nc(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 Nd(a,c,o),l()):await u;let d=new V(f.length+i.length-i.length%un);d.set(f,0),s.enqueue(bc(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(er(ft,o));a.update(f),l=Qn(ft,f)}let u=Qn(ft,a.digest()).slice(0,pt);i.enqueue(Bt(l,u))}}})}};function Nc(t,e,n,r){U.assign(t,{ready:new ge(i=>t.resolveReady=i),password:Fd(e,n),strength:r-1,pendingInput:fe})}function bc(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=xd(n,r+(l-l%un));let u;for(u=0;u<=l-un;u+=un){let f=er(ft,qe(e,u,u+un));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 Dd(t,e,n,r){let i=await Oc(t,e,n,qe(r,0,Jn[e])),s=qe(r,Jn[e]);if(i[0]!=s[0]||i[1]!=s[1])throw new I(bi)}async function Nd(t,e,n){let r=Sc(new V(Jn[e])),i=await Oc(t,e,n,r);return Bt(r,i)}async function Oc(t,e,n,r){t.password=null;let i=await bd(wd,n,pd,!1,Rd),s=await Od(U.assign({salt:r},xs),i,8*(vn[e]*2+2)),a=new V(s),o=er(ft,qe(a,0,vn[e])),c=er(ft,qe(a,vn[e],vn[e]*2)),l=qe(a,vn[e]*2);return U.assign(t,{keys:{key:o,authentication:c,passwordVerification:l},ctr:new Sd(new yd(o),je.from(Ad)),hmac:new Id(c)}),l}async function bd(t,e,n,r,i){if(Ca)try{return await lr.importKey(t,e,n,r,i)}catch{return Ca=!1,$t.importKey(e)}else return $t.importKey(e)}async function Od(t,e,n){if(La)try{return await lr.deriveBits(t,e,n)}catch{return La=!1,$t.pbkdf2(e,t.salt,xs.iterations,n)}else return $t.pbkdf2(e,t.salt,xs.iterations,n)}function Fd(t,e){return e===m?Tr(t):e}function xd(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 er(t,e){return t.toBits(e)}var wn=12,Ls=class extends we{constructor({password:e,rawPassword:n,passwordVerification:r,checkPasswordOnly:i}){super({start(){Fc(this,e,n,r)},transform(s,a){let o=this;if(o.password||o.rawPassword){let c=Ua(o,s.subarray(0,wn));if(o.password=o.rawPassword=null,(c[wn-1]^o.passwordVerification)!=0)throw new I(bi);s=s.subarray(wn)}i?a.error(new I(Fi)):a.enqueue(Ua(o,s))}})}},Us=class extends we{constructor({password:e,rawPassword:n,passwordVerification:r}){super({start(){Fc(this,e,n,r)},transform(i,s){let a=this,o,c;if(a.password||a.rawPassword){a.password=a.rawPassword=null;let l=Sc(new V(wn));l[wn-1]=a.passwordVerification,o=new V(i.length+l.length),o.set(Ma(a,l),0),c=wn}else o=new V(i.length),c=0;o.set(Ma(a,i),c),s.enqueue(o)}})}};function Fc(t,e,n,r){U.assign(t,{password:e,rawPassword:n,passwordVerification:r}),Pd(t,e,n)}function Ua(t,e){let n=new V(e.length);for(let r=0;r<e.length;r++)n[r]=xc(t)^e[r],Mr(t,n[r]);return n}function Ma(t,e){let n=new V(e.length);for(let r=0;r<e.length;r++)n[r]=xc(t)^e[r],Mr(t,e[r]);return n}function Pd(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++)Mr(t,n[i]);else for(let i=0;i<e.length;i++)Mr(t,e.charCodeAt(i))}function Mr(t,e){let[,n]=t.keys;t.crcKey0.append([e]);let r=~t.crcKey0.get();n=va(W.imul(va(n+Pc(r)),134775813)+1),t.crcKey2.append([n>>>24]);let i=~t.crcKey2.get();t.keys=[r,n,i]}function xc(t){let e=t.keys[2]|2;return Pc(W.imul(e,e^1)>>>8)}function Pc(t){return t&255}function va(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(Cd())return new eu(t).blob().then(i=>e?new Sn([i],n):i);let r=[];return t.pipeTo(new at({write(i){r.push(i)}})).then(()=>new Sn(r,n))}function Cd(){return typeof Sn.prototype.stream!=De||new Sn([]).stream()instanceof it}function Ld(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 Ha="Invalid codec definition",Ud="Reserved compression method",Md="Invalid codec module",vd=[It,Cn,Kn,qr],_n=new gt,fr=new gt;function Cm(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!=Dn||!n.length)throw new I(Ha);if(vd.includes(e))throw new I(Ud);let o=typeof i==De||typeof s==De;if(!o&&(typeof r!=Dn||!r.length))throw new I(Ha);_n.set(e,{compressionMethod:e,format:n,codecURI:r,versionNeeded:a}),o&&Lc(n,{CompressionStream:i,DecompressionStream:s})}function Lm(t){let e=_n.get(t);if(e){_n.delete(t);let n;_n.forEach(r=>n=n||r.format==e.format),n||fr.delete(e.format)}}function Cc(t){return _n.get(t)}function Hd(){return je.from(_n.values(),t=>U.assign({},t,fr.get(t.format)))}function xi(t){return fr.get(t)}function Lc(t,e){let{CompressionStream:n,DecompressionStream:r}=e;if(typeof n!=De&&typeof r!=De)throw new I(Md);fr.set(t,{CompressionStream:n,DecompressionStream:r})}async function Bd(t,e){!fr.has(t)&&e&&Lc(t,await import(e))}var Qr="Invalid uncompressed size",Uc="Invalid compressed data",Mc=Oi,kd="Compression method not supported",dn="deflate-raw",Ms="deflate64-raw",Nn="gzip",vc=10,vs=8,zd=[31,139,8],Gd=5e3,Hs=class extends we{constructor(e,{chunkSize:n,CompressionStreamFallback:r,CompressionStream:i}){super({});let{compressed:s,encrypted:a,useCompressionStream:o,zipCrypto:c,computeCrc32:l,level:u,deflate64:f,format:d,compressionMethod:h,inputSize:g}=e,E=this,_,R,T,w=super.readable,p=d&&xi(d),S=l&&s&&!f&&!p&&(!a||c)&&!!(o&&i);if((!a||c)&&l&&!S&&(_=new Lr,w=nt(w,_)),s)if(p)w=Tn(w,kc(p.CompressionStream,d,{level:u,chunkSize:n,compressionMethod:h,uncompressedSize:g}));else if(S)T=new vr,w=Tn(w,new i(Nn)),w=nt(w,T);else try{w=zc(w,o,{level:u,chunkSize:n},i,r)}catch(N){let y;try{y=new i(Nn)}catch{throw N}w=Tn(w,y),w=nt(w,new vr)}a&&(c?w=nt(w,new Us(e)):(R=new Cs(e),w=nt(w,R))),Bc(E,w,()=>{(!a||c)&&l&&(E.crc32=S?T.crc32:new rn(_.value.buffer).getUint32(0))})}},vr=class extends we{constructor(){let e,n=vc,r=new V(0);super({transform(i,s){if(n){let l=W.min(n,i.length);if(n-=l,i=i.subarray(l),!i.length)return}let a=r.length+i.length;if(a<=vs){r=Bt(r,i);return}let o=a-vs,c=W.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 Yd(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(vc);E.set(zd),g.enqueue(E)},transform(g,E){E.enqueue(g)},async flush(g){s=!0,d();try{await l}finally{h()}let E=new V(vs),_=K(E);_.setUint32(0,r.get(),!0),_.setUint32(4,n,!0),g.enqueue(E)},cancel(g){c(g)}}),f=new we({transform(g,E){r.append(g),i+=g.length,i>=n?o():s&&d(),E.enqueue(g)},cancel(g){c(g)}});return t=nt(t,u),t=Tn(t,e),nt(t,f);function d(){h(),a=Zr(()=>c(new I(Qr)),Gd)}function h(){Kr(a)}}var Bs=class extends we{constructor(e,{chunkSize:n,DecompressionStreamFallback:r,DecompressionStream:i}){super({});let{zipCrypto:s,encrypted:a,checkCrc32:o,crc32:c,compressed:l,useCompressionStream:u,deflate64:f,format:d,compressionMethod:h,rawBitFlag:g,outputSize:E}=e,_,R,T=super.readable;if(a&&(s?T=nt(T,new Ls(e)):(R=new Ps(e),T=nt(T,R))),l){let w=d&&xi(d);if(w)T=Tn(T,kc(w.DecompressionStream,d,{chunkSize:n,compressionMethod:h,rawBitFlag:g,uncompressedSize:E}));else try{T=zc(T,u,{chunkSize:n,deflate64:f},i,r)}catch(p){if(f||E===m)throw p;let S;try{S=new i(Nn)}catch{throw p}T=Yd(T,S,E)}T=Zd(T)}o&&(_=new Lr,T=nt(T,_)),Bc(this,T,()=>{if(o){let w=new rn(_.value.buffer);if(c!=w.getUint32(0,!1))throw new I(Mc)}})}},Ba=new gt;function Pi(t,e){if(!t)return!1;let n=Ba.get(t);n||(n=new gt,Ba.set(t,n));let r=n.get(e);if(r===m){try{new t(e),r=!0}catch{r=!1}n.set(e,r)}return r}function Hc(t){return Pi(t,dn)}function Vd(t){return Pi(t,Nn)}function Bc(t,e,n){e=nt(e,new we({flush:n})),U.defineProperty(t,"readable",{get(){return e}})}function kc(t,e,n){if(!t)throw new I(kd);return new t(e,n)}function zc(t,e,n,r,i){let s=e&&r?r:i||r,a=n.deflate64?Ms:dn,o;try{o=new s(a,n)}catch(c){if(e&&i&&s!=i)o=new i(a,n);else throw c}return Tn(t,o)}function nt(t,e){return Jt(t).pipeThrough(e)}function Tn(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 Wd(n,s),await Xd(r,s)}}}async function Wd(t,e){try{await t.abort(e)}catch{}}async function Xd(t,e){try{await t.cancel(e)}catch{}}function Zd(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(Uc);throw o.cause=a,o}let{value:i,done:s}=r;s?n.close():n.enqueue(i)},cancel(n){return e.cancel(n)}})}var Kd=64*1024,qd="message",jd="start",$d="pull",ka="data",Jd="ack",Qd="close",Ci="deflate",Gc="inflate",ks=class extends we{constructor(e,n){super({});let r=this,{codecType:i}=e,s;i.startsWith(Ci)?s=Hs:i.startsWith(Gc)&&(s=Bs),r.outputSize=0;let a=0,o=new s(e,n),c=super.readable,l=new we({transform(f,d){f&&f.length&&(a+=f.length,d.enqueue(f))},flush(){U.assign(r,{inputSize:a})}}),u=new we({transform(f,d){if(f&&f.length&&(d.enqueue(f),r.outputSize+=f.length,e.outputSize!==m&&r.outputSize>e.outputSize))throw new I(Qr)},flush(){let{crc32:f}=o;U.assign(r,{crc32:f,inputSize:a})}});U.defineProperty(r,"readable",{get(){return c.pipeThrough(l).pipeThrough(o).pipeThrough(u)}})}},Hr=class extends we{constructor(e){let n=[],r=0;(!pe.isFinite(e)||e<1)&&(e=Kd),super({transform(a,o){for(n.push(a),r+=a.length;r>e;)o.enqueue(i())},flush(a){r&&a.enqueue(s(n,r))}});function i(){let a=new V(e),o=0;for(;o<e;){let c=n[0],l=e-o;c.length<=l?(a.set(c,o),o+=c.length,n.shift()):(a.set(c.subarray(0,l),o),n[0]=c.subarray(l),o+=l)}return r-=e,a}function s(a,o){let c=new V(o),l=0;for(let u of a)c.set(u,l),l+=u.length;return c}}},Li="Worker startup timeout",Zn,Ui,zs,Gs=()=>{};function eE(t){zs=t}async function tE(t){let{CompressionStream:e,CompressionStreamFallback:n}=t;if(n&&!n.requiresModule||Hc(e)||Vd(e))return!0;if(n)try{return await Gs(t),!0}catch{return!1}return!1}function nE(){Zn=m,Ui=!1}function za(t){t.createWorker?Ui=!0:Zn=!1}var pn=class{constructor(e,{readable:n,writable:r},{options:i,config:s,streamOptions:a,useWebWorkers:o,transferStreams:c,workerURI:l,createWorker:u},f){let{signal:d}=a;return Ui&&(u=m),U.assign(e,{busy:!0,generation:(e.generation||0)+1,readable:n.pipeThrough(new Hr(Ni(s))).pipeThrough(new Ys(a),{signal:d}),writable:r,options:U.assign({},i),workerURI:l,createWorker:u,transferStreams:c,terminate(){return new ge(h=>{let{worker:g,busy:E}=e;g?(E?e.resolveTerminated=h:(g.terminate(),h()),e.interface=null):h()})},onTaskFinished(){if(e.busy){let{resolveTerminated:h}=e;h&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),h()),e.busy=!1,f(e)}}}),Zn===m&&(Zn=typeof wr!=Dt),(o&&zs&&(Zn&&l||u)?zs:Yc)(e,s)}},Ys=class extends we{constructor({onstart:e,onprogress:n,size:r,onend:i}){let s=0;super({async start(){e&&await cs(e,r)},async transform(a,o){s+=a.length,n&&await cs(n,s,r),o.enqueue(a)},async flush(){i&&await cs(i,s)}})}};async function cs(t,...e){try{await t(...e)}catch{}}function Yc(t,e){return{run:()=>Vs(t,e)}}async function Vs({options:t,readable:e,writable:n,onTaskFinished:r},i){let s;try{if(t.compressed&&!t.format){let l=t.codecType.startsWith(Ci),u=l?i.CompressionStreamFallback:i.DecompressionStreamFallback,f=l?i.CompressionStream:i.DecompressionStream;if(t.useCompressionStream){if(u&&u.requiresModule&&!Hc(f))try{await Gs(i)}catch{}}else try{await Gs(i)}catch{(!u||u.requiresModule)&&(t.useCompressionStream=!0)}}s=new ks(t,i),await e.pipeThrough(s).pipeThrough(new Hr(Ni(i))).pipeTo(n,{preventClose:!0,preventAbort:!0});let{crc32:a,inputSize:o,outputSize:c}=s;return{crc32:a,inputSize:o,outputSize:c}}catch(a){throw s&&(a.outputSize=s.outputSize),a}finally{r()}}var Ga={type:"module"},Ws="error",rE="messageerror",Ya,ls,Va,Xs=!0;try{Xs=typeof structuredClone==De&&structuredClone(new DOMException("","AbortError")).code!==m}catch{}eE(sE);function sE(t,e){let{baseURI:n,chunkSize:r,workerStartupTimeout:i}=e,{wasmURI:s}=e;if(!t.interface){typeof s==De&&(s=s());let a;try{a=pr(t.workerURI,n,t)}catch{return za(t),Yc(t,e)}U.assign(t,{worker:a,workerAlive:!1,terminated:!1,startupError:null,interface:{run:async()=>{try{return await iE(t,{chunkSize:r,wasmURI:s,baseURI:n,workerStartupTimeout:i})}catch(o){if(o&&o.workerStartupFailed)return za(t),Wa(t),Vs(t,e);if(o&&o.codecImportFailed){if(t.reader)return Wa(t),Vs(t,e);t.onTaskFinished()}throw o}}}})}return t.interface}async function iE(t,e){if(!t.worker){let{startupError:h}=t;t.startupError=null;let g=h||new I(Li);throw g.workerStartupFailed=!0,g}let n,r,i=new ge((h,g)=>{n=h,r=g});U.assign(t,{reader:null,writer:null,resolveResult:n,rejectResult:r,result:i});let{readable:s,options:a}=t,{writable:o,closed:c,abortPipe:l}=aE(t.writable),u;try{u=Zs({type:jd,options:a,config:e,readable:s,writable:o},t)}catch(h){l();try{await c}catch{}throw t.onTaskFinished(),h}u||U.assign(t,{reader:s.getReader(),writer:o.getWriter()});let{workerStartupTimeout:f}=e;!t.workerAlive&&pe.isFinite(f)&&f>=0&&(t.startupTimeout=Zr(()=>oE(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 aE(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 Wa(t){let{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function Mi(t){let{worker:e}=t;if(e)try{e.terminate()}catch{}t.interface=null}function pr(t,e,n,r,i=!0){let{createWorker:s}=n,a,o,c;if(s)a=s();else if(ls===m||Ya!==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=Ga);try{a=new wr(o,c)}catch(d){if(f)try{Dr.revokeObjectURL(o)}catch{}if(l&&f)return pr(t,e,n,r,!1);if(r)throw d;return pr(t,e,n,!0,!1)}}else{r===m&&(r=!0),r&&(c=Ga);try{o=new Dr(o,e)}catch{}try{a=new wr(o,c)}catch(d){if(r)return pr(t,e,n,!1,i);throw d}}Ya=t,ls=o,Va=c}else a=new wr(ls,Va);return a.addEventListener(qd,l=>{n.workerAlive=!0,Vc(n),cE(l,n)}),a.addEventListener(Ws,l=>Xa(l,n)),a.addEventListener(rE,l=>Xa(l,n)),a}function oE(t){if(t.startupTimeout=null,t.workerAlive)return;let{rejectResult:e,writer:n}=t;if(Mi(t),t.worker=null,e){let r=new I(Li);r.workerStartupFailed=!0,e(r),n&&n.releaseLock()}}function Vc(t){let{startupTimeout:e}=t;e&&(Kr(e),t.startupTimeout=null)}function Xa(t,e){t.preventDefault&&t.preventDefault(),Vc(e);let{workerAlive:n,rejectResult:r,writer:i,onTaskFinished:s}=e;Mi(e),n||(e.worker=null);let a=t.error||new I(t.message||Ws);n||(a=U.assign(new I(a.message||Ws),{workerStartupFailed:!0}),e.startupError=a),r&&(r(a),i&&i.releaseLock(),n&&s())}function Zs(t,{worker:e,writer:n,transferStreams:r,workerAlive:i}){try{let{value:s,readable:a,writable:o}=t,c=[];if(s&&(t.value=Tc(s),c.push(t.value.buffer)),r&&Xs&&i?(a&&c.push(a),o&&c.push(o)):t.readable=t.writable=null,c.length)try{return e.postMessage(t,c),!0}catch{Xs=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(s){throw n&&n.releaseLock(),s}}async function cE({data:t},e){let{type:n,value:r,messageId:i,result:s,error:a}=t,{reader:o,writer:c,resolveResult:l,rejectResult:u,onTaskFinished:f,generation:d}=e,h=()=>e.generation!=d;try{if(a){let{message:E,stack:_,code:R,name:T,outputSize:w,cause:p,codecImportFailed:S}=a,N=new I(E);U.assign(N,{stack:_,code:R,name:T,outputSize:w}),p&&(N.cause=U.assign(new I(p.message),{name:p.name})),S&&(N.codecImportFailed=!0),g(N)}else{if(n==$d){let{value:E,done:_}=await o.read();h()||Zs({type:ka,value:E,done:_,messageId:i},e)}n==ka&&(await c.ready,await c.write(new V(r)),h()||Zs({type:Jd,messageId:i},e)),n==Qd&&g(null,s)}}catch(E){h()||(Mi(e),g(E))}function g(E,_){h()||(E?u(E):l(_),c&&c.releaseLock(),E&&E.codecImportFailed||f())}}var vt=[],Rn=[],An,Rr,Za=0;async function Wc(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=lE(d,r.baseURI)),await Bd(f,n.codecURI)),e.transferStreams=!f&&(i||i===m&&r.transferStreams);let _=!o&&!c&&!l&&!u,R=f===m||!!n.codecURI;return e.useWebWorkers=!_&&R&&(s||s===m&&r.useWebWorkers),e.workerURI=e.useWebWorkers&&h?h:m,e.createWorker=e.useWebWorkers&&g?g:m,n.useCompressionStream=a||a===m&&r.useCompressionStream,(await T()).run();async function T(){let p=vt.find(S=>!S.busy);if(p)return Ks(p),new pn(p,t,e,w);if(vt.length<E){let S={indexWorker:Za};return Za++,vt.push(S),new pn(S,t,e,w)}else return new ge(S=>{Rn.push({resolve:S,stream:t,workerOptions:e}),Rr=r.workerStarvationTimeout,Br()})}function w(p){if(Xc(),Rn.length){let[{resolve:S,stream:N,workerOptions:y}]=Rn.splice(0,1);S(new pn(p,N,y,w)),Br()}else p.worker?(Ks(p),dE(p,e)):vt=vt.filter(S=>S!=p)}}function lE(t,e){try{return new Dr(t,e).toString()}catch{return t}}function Br(){!An&&Rn.length&&pe.isFinite(Rr)&&Rr>=0&&(An=Zr(fE,Rr))}function Xc(){An&&(Kr(An),An=null)}function fE(){if(An=null,Rn.length){let[{resolve:t,stream:e,workerOptions:n}]=Rn.splice(0,1),r=U.assign({},n,{useWebWorkers:!1,workerURI:m,createWorker:m});t(new pn({},e,r,uE)),Br()}}function uE(){Xc(),Br()}function dE(t,e){let{config:n}=e,{terminateWorkerTimeout:r}=n;pe.isFinite(r)&&r>=0&&(t.terminated?t.terminated=!1:t.terminateTimeout=Zr(async()=>{vt=vt.filter(i=>i!=t);try{await t.terminate()}catch{}},r))}function Ks(t){let{terminateTimeout:e}=t;e&&(Kr(e),t.terminateTimeout=null)}async function Um(){await ge.allSettled(vt.map(t=>(Ks(t),t.terminate()))),nE()}var Zc="\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(""),EE=Zc.length==256;function hE(t){if(EE){let e="";for(let n=0;n<t.length;n++)e+=Zc[t[n]];return e}else return new Nr().decode(t)}function Ar(t,e){return Kc(t,e,!0)}function gE(t,e){return Kc(t,e,!1)}function Kc(t,e,n){return e&&e.trim().toLowerCase()=="cp437"?hE(t):new Nr(e,{ignoreBOM:n}).decode(t)}var qc="HTTP error ",At="HTTP Range not supported",Ka="HTTP resource changed",mE="Writer iterator completed too soon",wE="Writer not initialized",_E="text/plain",TE="Content-Length",pE="Content-Encoding",vi="Content-Range",RE="Accept-Ranges",AE="Range",yE="Etag",SE="Last-Modified",IE="HEAD",es="GET",jc="bytes",DE=256*1024,NE=16*1024*1024,Hi="writable",qa=Symbol(),bn=class{constructor(){this.size=0}init(){this.initialized=!0}},Et=class extends bn{get readable(){return this.createReadable()}createReadable({offset:e=0,size:n,chunkSize:r=Ni(an())}={}){let i=this,s=0;return r=mc(r),new it({async pull(a){let o=n===m?r:W.min(r,n-s),c=await _e(i,e+s,o);c.length&&a.enqueue(c),s+r>=n||!c.length&&o?a.close():s+=r}})}},kr=class extends bn{constructor(){super();let e=this,n=new at({write(r){if(!e.initialized)throw new I(wE);return e.writeUint8Array(Tc(r))}});U.defineProperty(e,Hi,{get(){return n}})}writeUint8Array(){}},ja=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}},$a=class extends kr{constructor(e){super(),U.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",pendingCharacters:""})}writeUint8Array(e){let n=this,r,i=n.pendingCharacters,s=n.pendingCharacters.length;for(n.pendingCharacters="",r=0;r<W.floor((s+e.length)/3)*3-s;r++)i+=pa.fromCharCode(e[r]);for(;r<e.length;r++)n.pendingCharacters+=pa.fromCharCode(e[r]);i.length>2?n.data+=Aa(i):n.pendingCharacters=i+n.pendingCharacters}getData(){return this.data+Aa(this.pendingCharacters)}},qs,$c;function bE(){$c=(async()=>{try{let e=new Sn([new V(3)]).slice(1,2).stream().getReader(),n=0,r=await e.read();for(;!r.done;)n+=r.value.length,r=await e.read();qs=n==1}catch{qs=!1}})()}var Nt=class extends Et{constructor(e){super(),U.assign(this,{sourceBlob:e,size:e.size}),$c||bE()}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()):qs?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)}},js=class extends bn{constructor(e){super();let n=this,r=new we;U.defineProperty(n,Hi,{get(){return r.writable}}),n.contentType=e,n.blobPromise=Qt(r.readable,e),n.blobPromise.catch(()=>{})}getData(){return this.blobPromise}},Gt=class extends Nt{constructor(e){super(new Sn([e],{type:_E}))}},Ja=class extends js{constructor(e){super(),U.assign(this,{encoding:e,utf8:!e||e.toLowerCase()=="utf-8"})}async getData(){let{encoding:e,utf8:n}=this,r=await super.getData();return r.text&&n?r.text():gE(new V(await r.arrayBuffer()),e)}},$s=class extends Et{constructor(e,n){super(),Jc(this,e,n)}async init(){await Qc(this,zr,Qa),super.init()}createReadable(e){let n=this,{useRangeHeader:r,forceRangeRequests:i,size:s}=n;if((r||i)&&s!==m){let{offset:a=0,size:o=s-a}=e||{};if(o>0&&a<s)return OE(n,a,W.min(o,s-a))}return super.createReadable(e)}readUint8Array(e,n){return el(this,e,n,zr,Qa)}},Js=class extends Et{constructor(e,n){super(),Jc(this,e,n)}async init(){await Qc(this,Qs,eo),super.init()}readUint8Array(e,n){return el(this,e,n,Qs,eo)}};function Jc(t,e,n){let{preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:o=!0,maximumRangeSize:c=NE,fetch:l}=n;n=U.assign({},n),delete n.preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.combineSizeEocd,delete n.checkResourceChanges,delete n.maximumRangeSize,delete n.useXHR,delete n.fetch,U.assign(t,{url:e,options:n,preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:o,maximumRangeSize:c,fetch:l})}async function Qc(t,e,n){let{url:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o}=t;if(FE(r)&&(s||a)&&(typeof i==Dt||i)){let c=await e(es,t,ki(t,o?-Ie:void 0)),l=c.headers.get(RE);if(!a&&(!l||l.toLowerCase()!=jc))throw new I(At);{if(o){let f=new V(await c.arrayBuffer());c.status==206&&f.length==Ie&&(t.eocdCache=f)}Bi(t,c);let u=tl(c);u===m?await to(t,e,n):t.size=u}}else await to(t,e,n)}async function el(t,e,n,r,i){let{useRangeHeader:s,forceRangeRequests:a,eocdCache:o,size:c,options:l}=t;if(s||a){if(o&&e==c-Ie&&n==Ie)return o;if(e>=c||n===0)return fe;{e+n>c&&(n=c-e);let u=await r(es,t,ki(t,e,n));if(u.status!=206)throw new I(At);let f=u.headers.get(vi);if(f){let h=pe(f.trim().split(/[\s-]+/)[1]);if(!pe.isNaN(h)&&h!=e)throw new I(At)}rl(t,u),Bi(t,u);let d=new V(await u.arrayBuffer());if(d.length!=n)throw new I(At);return d}}else{let{data:u}=t;return u||await i(t,l),t.data.subarray(e,e+n)}}function OE(t,e,n){let r,i=e,s=0,a=n;return new it({start(){return o()},async pull(l){r||await o();let{value:u,done:f}=await r.read();if(f)throw new I(At);let d=u.length>s?u.subarray(0,s):u;s-=d.length,a-=d.length,d.length&&l.enqueue(d),s||(await c(),a||l.close())},cancel(l){return r&&r.cancel(l)}});async function o(){let l=W.min(t.maximumRangeSize,a),u=await zr(es,t,ki(t,i,l));if(u.status!=206)throw new I(At);let f=u.headers.get(vi);if(f){let d=pe(f.trim().split(/[\s-]+/)[1]);if(!pe.isNaN(d)&&d!=i)throw new I(At)}rl(t,u),Bi(t,u),i+=l,s=l,r=u.body.getReader()}async function c(){let l=r;r=m,await l.cancel()}}function tl(t){let e=t.headers.get(vi);if(e){let n=e.trim().split(/\s*\/\s*/)[1];if(n&&n!="*"){let r=pe(n);if(!pe.isNaN(r))return r}}}function nl({headers:t}){return{etag:t.get(yE)||m,lastModified:t.get(SE)||m}}function Bi(t,e){let{checkResourceChanges:n,resourceValidators:r}=t;n&&!r&&e.status==206&&(t.resourceValidators=nl(e))}function rl(t,e){let{checkResourceChanges:n,resourceValidators:r,size:i}=t;if(n){let s=tl(e);if(s!==m&&i!==m&&s!=i)throw new I(Ka);if(r){let a=nl(e);if(U.entries(r).some(([c,l])=>l!==m&&a[c]!==m&&l!=a[c]))throw new I(Ka)}}}function ki(t,e=0,n=1){return U.assign({},zi(t),{[AE]:jc+"="+(e<0?e:e+"-"+(e+n-1))})}function zi({options:t}){let{headers:e}=t;if(e)return Symbol.iterator in e?U.fromEntries(e):e}async function Qa(t){await sl(t,zr)}async function eo(t){await sl(t,Qs)}async function sl(t,e){let n=await e(es,t,zi(t));t.data=new V(await n.arrayBuffer()),t.size=t.data.length}async function to(t,e,n){if(t.preventHeadRequest)await n(t,t.options);else{let r=await e(IE,t,zi(t)),i=r.headers.get(TE);i&&!r.headers.get(pE)?t.size=pe(i):await n(t,t.options)}}async function zr(t,{fetch:e=fetch,options:n,url:r},i){let s=await e(r,U.assign({},n,{method:t,headers:i}));if(s.status<400)return s;throw s.status==416?new I(At):new I(qc+(s.statusText||s.status))}function Qs(t,{url:e},n){return new ge((r,i)=>{let s=new XMLHttpRequest;if(s.addEventListener("load",()=>{if(s.status<400){let a=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(o=>{let c=o.trim().split(/\s*:\s*/);c[0]=c[0].trim().replace(/^[a-z]|-[a-z]/g,l=>l.toUpperCase()),a.push(c)}),r({status:s.status,arrayBuffer:()=>s.response,headers:new gt(a)})}else i(s.status==416?new I(At):new I(qc+(s.statusText||s.status)))},!1),s.addEventListener("error",a=>i(a.detail?a.detail.error:new I("Network error")),!1),s.open(t,e),n)for(let a of U.entries(n))s.setRequestHeader(a[0],a[1]);s.responseType="arraybuffer",s.send()})}var ei=class extends Et{constructor(e,n={}){super(),U.assign(this,{url:e,reader:n.useXHR&&!n.fetch?new Js(e,n):new $s(e,n)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(e){return this.reader.createReadable(e)}readUint8Array(e,n){return this.reader.readUint8Array(e,n)}},no=class extends ei{constructor(e,n={}){super(e,U.assign({},n,{useRangeHeader:!0}))}},en=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)}},tn=class extends kr{constructor(e){super(),this.defaultBufferSize=e||DE}init(e=0){U.assign(this,{offset:0,array:new V(e>0?e:this.defaultBufferSize)}),super.init()}writeUint8Array(e){let n=this,r=n.offset+e.length;if(r>n.array.length){let i=n.array.length?n.array.length*2:n.defaultBufferSize;for(;i<r;)i*=2;let s=n.array;n.array=new V(i),n.array.set(s)}n.array.set(e,n.offset),n.offset+=e.length}getData(){return this.offset===this.array.length?this.array:this.array.slice(0,this.offset)}},ti=class extends Et{constructor(e){super(),this.readers=e}async init(){let e=this;e.lastDiskNumber=0;let n=e.readers=await ge.all(e.readers.map(xE));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=W.max(a,r.lastDiskNumber),s}},ni=class extends bn{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===qa){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(mE);i=h,i.size=0,i.maxSize&&(r.maxSize=i.maxSize),r.availableSize=r.maxSize,await He(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,Hi,{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(qa)}finally{e.releaseLock()}}},nn=class{constructor(e){return je.isArray(e)&&(e=new ti(e)),(e instanceof it||typeof e.getReader==De)&&(e={readable:Jt(e)}),e}},Gr=class{constructor(e){return e.writable===m&&typeof e.next==De&&(e=new ni(e)),(e instanceof at||typeof e.getWriter==De)&&(e={writable:Ld(e)}),e.size===m&&(e.size=0),e}};function il(t){return!!(t&&t.getData)}function FE(t){let{baseURI:e}=an(),{protocol:n}=new Dr(t,e);return n=="http:"||n=="https:"}async function He(t,e){if(t.init&&!t.initialized)await t.init(e);else return ge.resolve()}async function xE(t){return t=new nn(t),await He(t),(t.size===m||!t.readUint8Array)&&(t=new Nt(await Qt(t.readable)),await He(t)),t}function _e(t,e,n){return t.readUint8Array(e,n)}function al(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?Et.prototype.createReadable.call(t,e):t.readable}var ol="filename",cl="rawFilename",Gi="comment",ll="rawComment",Yi="uncompressedSize",fl="compressedSize",ul="offset",dl="diskNumberStart",Yr="lastModDate",Vr="rawLastModDate",Vi="lastAccessDate",El="rawLastAccessDate",Wi="creationDate",hl="rawCreationDate",gl="internalFileAttributes",ml="externalFileAttributes",Xi="internalFileAttribute",Zi="externalFileAttribute",wl="msdosAttributesRaw",_l="msdosAttributes",Tl="msDosCompatible",Ki="zip64",pl="encrypted",Rl="version",Al="versionMadeBy",yl="zipCrypto",yn="directory",Sl="executable",PE="symlink",Il="compressionMethod",ri="signature",CE="crc32",qi="extraField",LE="extraFieldInfoZip",UE="extraFieldUnix",ME="extraFieldUnixType1",vE="extraFieldPkwareUnix",Dl="uid",Nl="gid",bl="unixMode",Ol="setuid",Fl="setgid",xl="sticky",HE="bitFlag",BE="rawBitFlag",kE="filenameLength",zE="extraFieldLength",GE="unixExternalUpper",YE="filenameUTF8",VE="commentUTF8",WE="rawExtraField",XE="extraFieldZip64",ZE="extraFieldUnicodePath",KE="extraFieldUnicodeComment",qE="extraFieldAES",jE="extraFieldNTFS",$E="extraFieldExtendedTimestamp",JE="extraFieldUSDZ",QE=[ol,cl,Yi,fl,Yr,Vr,Gi,ll,Vi,El,Wi,hl,ul,dl,gl,ml,Xi,Zi,wl,_l,Tl,Ki,pl,Rl,Al,yl,yn,Sl,PE,Il,ri,CE,qi,UE,LE,ME,vE,Dl,Nl,bl,GE,Ol,Fl,xl,HE,BE,kE,zE,YE,VE,WE,XE,ZE,KE,qE,jE,$E,JE],On=class{constructor(e){QE.forEach(n=>this[n]=e[n])}},zn="File format is not recognized",Pl="End of central directory not found",Cl="End of Zip64 central directory locator not found",Ll="Central directory header not found",Ul="Local file header not found",Ml="Zip64 extra field not found",vl="File contains encrypted entry",si="Encryption method not supported",ii="Compression method not supported",ai="Split zip file",Hl="Overlapping entry found",Bl="Entry data out of bounds",kl="Ambiguous archive",zl="Encrypted central directory is not supported",Gl="Unsafe filename",Yl="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",Vl="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Wl="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Xl="64-bit value exceeds Number.MAX_SAFE_INTEGER",Zl="unsorted central directory",Kl="unknown version needed to extract",ql="compressed patched data",ji="malformed extra field",jl="unknown zip64 extensible data",oi="wrapped entries count",ci="appended data",li="prepended data",$l="trailing central directory data",Jl="duplicate filename",Gn="mismatched zip64 end of central directory record",Ql="mismatched local file header (general purpose bit flag)",ef="mismatched local file header (compression method)",tf="mismatched local file header (crc32 or sizes)",eh=63,th=/^[a-zA-Z]:/,ro="utf-8",nh="UTF8",so="cp437",io=br|Or|Fr,nf=1,rh=[[Yi,me],[fl,me],[ul,me],[dl,X]],ao={[X]:{getValue:j,bytes:4},[me]:{getValue:Ge,bytes:8}},sh=Ce(pe.MAX_SAFE_INTEGER),ih=64,ah=1032,oo=0,$i=1,Wr=2,Fn=class{constructor(e,n={}){U.assign(this,{reader:new nn(e),options:n,readRanges:new gt})}async*getEntriesGenerator(e={}){let n=this,{reader:r}=n;if(await He(r),(r.size===m||!r.readUint8Array)&&(r=new Nt(await Qt(r.readable)),await He(r)),r.size<Ie)throw new I(zn);let i=n.warnings=[],s=Ji(e,n.options),a=s==sn,o=s!=zt,c=cf(Te(n,e,rc),s),l=ph(Te(n,e,qu),s),u=Te(n,e,ju),{endOfDirectoryInfo:f,endOfDirectoryReachingEndCount:d}=await lf(r,o,c);if(!f)throw await gh(r)?new I(ai):new I(Pl);o&&d>1&&yr("multiple end of central directory records");let h=K(f),g=j(h,12),E=j(h,16),_=f.offset,R=ie(h,20),T=_+Ie+R,w=r.size-T;w>c&&yr(ci),w>0&&tt(i,ci);let p=ie(h,4),S=r.lastDiskNumber||0,N=ie(h,6),y=ie(h,10),F=0,x,v,M,H=et,G,z=E==me||g==me||y==X||N==X;if(E!=me&&N!=X&&(E+=En(r,N)),z){let ue=f.offset>=Ut?await _e(r,f.offset-Ut,Ut):fe,B=K(ue);if(ue.length==Ut&&j(B,0)==Ai){E=En(r,j(B,4))+Ge(B,8);let ye=await _e(r,E,et),Ee=K(ye),Be=f.offset-Ut-et;if((ye.length<et||j(Ee,0)!=ys)&&E!=Be&&Be>=0){let be=E;E=Be,E>be&&(F=E-be),ye=await _e(r,E,et),Ee=K(ye)}if(ye.length<et||j(Ee,0)!=ys)throw new I(Cl);if(v=!0,M=Ge(Ee,4)>et-12,M){let be=W.min(Ge(Ee,4)-(et-12),r.size-E-et);if(be>0){H+=be;let Xe=await _e(r,E+et,be);G=lh(Xe)}}p==X?p=j(Ee,16):p!=j(Ee,16)&<(a,i,Gn),N==X?N=j(Ee,20):N!=j(Ee,20)&<(a,i,Gn),y==X?y=Ge(Ee,32):y!=Ge(Ee,32)&<(a,i,Gn),g==me?g=Ge(Ee,40):g!=Ge(Ee,40)&<(a,i,Gn),E=En(r,N)+Ge(Ee,48)+F}}let Y=g,O=f.offset-(v?H+Ut:0);if(E>=r.size&&(F=r.size-E-g-Ie,E=r.size-g-Ie),S!=p)throw new I(ai);if(E<0)throw new I(zn);let D=0,C=await _e(r,E,g),P=K(C);if(g){if(C.length<4)throw new I(zn);let ue=O-g;if(E!=ue&&N==p){let ye=!(j(P,D)==Mt||!!(G&&G.compressedSize)||fs(P));if(!ye&&ue>=0&&ue+4<=r.size){let Ee=await _e(r,ue,4);ye=j(K(Ee),0)==Mt}if(ye){let Ee=E;E=ue,E>Ee&&(F+=E-Ee),C=await _e(r,E,g),P=K(C)}}}let Z=O-E;if(g!=Z&&Z>=0&&N==p&&(g=Z,C=await _e(r,E,g),P=K(C)),E<0||E>=r.size)throw new I(zn);n.directoryOffset=E,n.directoryLength=Y;let L=wo(n,e,$u),q,ne;if(L&&y&&C.length>=4&&j(P,0)!=Mt&&(M||fs(P))){let ue=ch(G,Y,C.length);ne=C.subarray(ue),C=await L(C.subarray(0,ue),G),P=K(C),Y=C.length,q=!0}G&&!q&&(C.length<4||j(P,0)==Mt)&&tt(i,jl),x=E;let re=Te(n,e,Ru),$=Te(n,e,Au),ce=new Ir,ae,Ae=-1,Ne=!a&&!v;!y&&Ne&&(y=co(P,C,D),y&&tt(i,oi));for(let ue=0;ue<y;ue++){let B=new ui(r,n.options);if(D+In>C.length||j(P,D)!=Mt)throw ue==0&&!q&&(M||fs(P))?new I(zl):new I(Ll);rf(B,P,D+6);let ye=!!B.bitFlag.languageEncodingFlag,Ee=D+In,Be=Ee+B.filenameLength,be=Be+B.extraFieldLength,Xe=ie(P,D+4),wt=Xe>>8==0,Wt=Xe>>8==3,Le=C.subarray(Ee,Be),ot=ie(P,D+32),Se=be+ot,ct=C.subarray(be,Se),Xt=ye,Ze=ye,on=j(P,D+38),$e=on&rt,Ot={readOnly:!!($e&Ss),hidden:!!($e&Is),system:!!($e&Ds),directory:!!($e&xr),archive:!!($e&Ns)},Ft=j(P,D+42),ze=wo(n,e,yu)||Ar,Ke=Xt?ro:re||so,Zt=Ze?ro:$||so,Ue=ze(Le,Ke,sc);if(Ue===m&&(Ue=Ar(Le,Ke)),u){let Me=u(Ue);Me!==m&&(Ue=Me)}if(Rh(Ue,l)){let Me=new I(Gl);throw Me.filename=Ue,Me}let xt=ze(ct,Zt,ic);xt===m&&(xt=Ar(ct,Zt)),U.assign(B,{index:ue,decryptedDirectory:q,versionMadeBy:Xe,msDosCompatible:wt,zip64:!1,compressedSize:0,uncompressedSize:0,commentLength:ot,offset:Ft,diskNumberStart:ie(P,D+34),internalFileAttributes:ie(P,D+36),externalFileAttributes:on,msdosAttributesRaw:$e,msdosAttributes:Ot,rawFilename:Le,filenameUTF8:Xt,commentUTF8:Ze,rawExtraField:C.subarray(Be,be),rawComment:ct,filename:Ue,comment:xt}),sf(B,B,P,D+6)&&tt(i,ji,Ue),B.offset+=F;let Pt=En(r,B.diskNumberStart)+B.offset;x=W.min(Pt,x),Pt<Ae&&tt(i,Zl,Ue),Ae=Pt,(B.version&rt)>eh&&tt(i,Kl,Ue),(B.rawBitFlag&Da)==Da&&tt(i,ql,Ue),ce.has(B.filename)&&(ae=!0),ce.add(B.filename);let Fe=B.externalFileAttributes>>16&X;B.unixMode===m&&(Fe&(_r|Wn|Vn))!=0&&(B.unixMode=Fe);let Er=!!(B.unixMode&bs),os=!!(B.unixMode&Os),Oe=!!(B.unixMode&Fs),A=((B.unixMode===m?Fe:B.unixMode)&gn)==Zo,b=!A&&(B.unixMode!==m?(B.unixMode&Wn)!=0:Wt&&(Fe&Wn)!=0),k=B.unixMode!==m&&(B.unixMode&gn)==Vn,se=(Fe&gn)==Vn;U.assign(B,{setuid:Er,setgid:os,sticky:Oe,symlink:A,unixExternalUpper:Fe,internalFileAttribute:B.internalFileAttributes,externalFileAttribute:B.externalFileAttributes,executable:b,directory:k||se||wt&&Ot.directory||B.filename.endsWith(mn),zipCrypto:B.encrypted&&!B.extraFieldAES});let le=new On(B);if(le.getData=(Me,cn)=>B.getData(Me,le,n.readRanges,cn),le.arrayBuffer=async Me=>{let cn=new we,Ct=Qt(cn.readable).then(ln=>ln.arrayBuffer());return Ct.catch(()=>{}),await B.getData(cn,le,n.readRanges,Me),Ct},D=Se,ue==y-1&&Ne){let Me=co(P,C,D);Me&&(y+=Me,tt(i,oi))}let{onprogress:Je}=e;if(Je)try{await Je(ue+1,y,new On(B))}catch{}yield le}let he=D,Q=us(C.subarray(D))||(q?us(ne):m);if(!Q&&!q){let ue=E+D,B=W.min(O-ue,6+X);B>=6&&(Q=us(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,$l),ae&<(a,i,Jl);let Re=Te(n,e,Su),oe=Te(n,e,Iu),ee=(a||Re)&&y&&x==Ht&&await mh(r)?Ht:0;return a&&(F||y&&x>ee)&&yr(li),(F||y&&x>Ht)&&tt(i,li),Re&&(n.prependedData=x>ee?await _e(r,ee,x-ee):fe),n.comment=R?await _e(r,_+Ie,R):fe,oe&&(n.appendedData=T<r.size?await _e(r,T,r.size-T):fe),!0}async getEntries(e={}){let n=[];for await(let r of this.getEntriesGenerator(e))n.push(r);return n}async close(){let{reader:e}=this;!e.readUint8Array&&e.readable&&!e.readable.locked&&await e.readable.cancel()}},fi=class{constructor(e={}){let{readable:n,writable:r}=new we,i=new Fn(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 oh(t,e={}){if(t=new nn(t),await He(t),(t.size===m||!t.readUint8Array)&&(t=new Nt(await Qt(t.readable)),await He(t)),t.size<Ie)return!1;let n=Ji(e,{}),r=n!=zt,i=cf(e[rc],n),{endOfDirectoryInfo:s,endOfDirectoryReachingEndCount:a}=await lf(t,r,i);if(!s||n==sn&&a>1)return!1;let o=ie(K(s),20),c=s.offset+Ie+o;return t.size-c<=i}var ui=class{constructor(e,n){U.assign(this,{reader:e,options:n})}async getData(e,n,r,i={}){let s=this,a=an(),{reader:o,index:c,offset:l,diskNumberStart:u,extraFieldAES:f,extraFieldZip64:d,compressionMethod:h,bitFlag:g,rawBitFlag:E,crc32:_,rawLastModDate:R,uncompressedSize:T,compressedSize:w}=s,{dataDescriptor:p}=g,S=n.localDirectory={},N=n.warnings=[],y=En(o,u)+l,F=await _e(o,y,Ve),x=K(F),v=Te(s,i,Ko),M=Te(s,i,qo),H=Te(s,i,jo);if(oc(v,M),v=v&&v.length&&v,M=M&&M.length&&M,f&&f.originalCompressionMethod!=qr)throw new I(ii);if(F.length<Ve||j(x,0)!=Lo)throw new I(Ul);rf(S,x,4);let{extraFieldLength:G,filenameLength:z}=S,Y=S.dataOffset=y+Ve+z+G,O=Te(s,i,Fu),D=Ji(i,s.options),C=_h(O,D),P=Th(O,D),Z=fe;if(P&&(z||G)){let Se=await _e(o,y+Ve,z+G);Z=Se.subarray(0,z),S.rawExtraField=Se.subarray(z)}else S.rawExtraField=G?await _e(o,y+Ve+z,G):fe;P&&(S.rawFilename=Z),sf(s,S,x,4,!0)&&tt(N,ji),yh(s,S,Z,P,C?m:N);let{lastAccessDate:L,creationDate:q,uid:ne,gid:re}=S;L&&(n.lastAccessDate=L),q&&(n.creationDate=q),ne!==m&&n.uid===m&&(n.uid=ne),re!==m&&n.gid===m&&(n.gid=re);let $=s.encrypted&&S.encrypted&&!H,ce=$&&!f;if(H||(n.zipCrypto=ce),$&&(S.rawBitFlag&Na)==Na)throw new I(si);let ae=H?m:Cc(h);if(h!=It&&h!=Cn&&h!=Kn&&!ae&&!H)throw new I(ii);if($){if(!ce&&(f.strength<1||f.strength>3))throw new I(si);if(!v&&!M)throw new I(vl)}if(Y+w>o.size)throw new I(Bl);let Ae=w,Ne=Jt(o.createReadable({offset:Y,size:Ae})),he=ac(Te(s,i,$o)),Q=Te(s,i,Du),Re=Te(s,i,bu),oe=Te(s,i,Nu);oe&&(Re=!0);let{onstart:ee,onprogress:ue,onend:B}=i,ye=h!=It&&!H,Ee=H?w:T,Be=h==Kn,be=Te(s,i,Qo);Be&&(be=!1);let Xe=Te(s,i,Pu),wt=(Xe===m?Te(s,i,xu):Xe)&&!H&&(!$||ce||f&&f.vendorVersion==nf),Wt={options:{codecType:Gc,password:v,rawPassword:M,zipCrypto:ce,encryptionStrength:f&&f.strength,checkCrc32:wt,checkAuthenticationCode:Te(s,i,Cu),passwordVerification:ce&&(p?R>>>8&rt:_>>>24&rt),outputSize:Ee,crc32:_,compressed:ye,encrypted:$,useWebWorkers:Te(s,i,Jo),useCompressionStream:be,transferStreams:Te(s,i,ec),deflate64:Be,format:ae?ae.format:m,codecURI:ae?ae.codecURI:m,compressionMethod:h,rawBitFlag:E,checkPasswordOnly:Q},config:a,streamOptions:{signal:he,size:Ae,onstart:ee,onprogress:ue,onend:B}};Re&&await hh({reader:o,fileEntry:n,index:c,offset:y,crc32:_,compressedSize:w,uncompressedSize:T,dataOffset:Y,dataDescriptor:p||S.bitFlag.dataDescriptor,extraFieldZip64:d||S.extraFieldZip64,readRanges:r});let Le,ot;try{if(!oe){Q&&(e=new at),e=new Gr(e),await He(e,wh(Ee,w,ye)),{writable:Le}=e;let{outputSize:Se}=await Wc({readable:Ne,writable:Le},Wt);if(e.size+=Se,Se!=Ee)throw new I(Qr)}}catch(Se){if(Se.outputSize!==m&&(e.size+=Se.outputSize),!Q||Se.message!=Fi)throw ot=Se,Se}finally{if(!(!il(e)&&Te(s,i,tc))&&Le&&!Le.locked){let ct=Le.getWriter();if(ot)try{await ct.abort(ot)}catch{}else await ct.close()}}return Q||oe?m:e.getData?e.getData():Le}};function fs(t){let e=W.min(t.byteLength,1024)-3;for(let n=0;n<e;n++)if(j(t,n)==ru)return!0;return!1}function co(t,e,n){let r=0;for(;n+In<=e.length&&j(t,n)==Mt;)n+=In+ie(t,n+28)+ie(t,n+30)+ie(t,n+32),r++;return r%(X+1)?0:r}function us(t){if(t.length>=6){let e=K(t);if(j(e,0)==Mo){let n=ie(e,4);if(6+n<=t.length)return t.subarray(6,6+n)}}}function ch(t,e,n){let r=t&&t.compressedSize?t.compressedSize:e;return r>0&&r<=n?r:n}function lh(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 rf(t,e,n){let r=t.rawBitFlag=ie(e,n+2),i=(r&br)==br,s=j(e,n+6);U.assign(t,{encrypted:i,version:ie(e,n),bitFlag:{level:(r&Xo)>>1,dataDescriptor:(r&Or)==Or,languageEncodingFlag:(r&Fr)==Fr},rawLastModDate:s,lastModDate:Sh(s),filenameLength:ie(e,n+22),extraFieldLength:ie(e,n+24)})}function sf(t,e,n,r,i){let{rawExtraField:s}=e,a=e.extraField=new gt,o=K(s),c=0,l=!1;try{for(;c<s.length;){let N=ie(o,c),y=ie(o,c+2);a.set(N,{type:N,data:s.slice(c+4,c+4+y)}),c+=4+y}}catch{l=!0}c>s.length&&(l=!0);let u=ie(n,r+4);U.assign(e,{signature:j(n,r+qn),crc32:j(n,r+qn),compressedSize:j(n,r+or),uncompressedSize:j(n,r+cr)});let f=a.get(jr);f&&(fh(f,e),e.extraFieldZip64=f);let d=a.get(su);d&&(lo(d,ol,cl,e,t),e.extraFieldUnicodePath=d);let h=a.get(iu);h&&(lo(h,Gi,ll,e,t),e.extraFieldUnicodeComment=h);let g=a.get(ko);g&&g.data.length>=7?(uh(g,e,u),e.extraFieldAES=g):e.compressionMethod=u;let E=a.get(ou);E&&(fo(E,e),e.extraFieldPkwareUnix=E);let _=a.get(au);_&&(fo(_,e),e.extraFieldUnixType1=_);let R=a.get(zo);R&&(dh(R,e),e.extraFieldNTFS=R);let T=a.get(Wo),w;if(T&&(w=uo(T,e,!1),e.extraFieldUnix=T),!w){let N=a.get(Vo);N&&(uo(N,e,!0),e.extraFieldInfoZip=N)}let p=a.get(yi);p&&(Eh(p,e,i),e.extraFieldExtendedTimestamp=p);let S=a.get(Yo);return S&&(e.extraFieldUSDZ=S),l}function fh(t,e){e.zip64=!0;let n=K(t.data),r=rh.filter(([s,a])=>e[s]==a),i=r.reduce((s,[,a])=>s+ao[a].bytes,0);if(t.data.length<i)throw new I(Ml);for(let s=0,a=0;s<r.length;s++){let[o,c]=r[s],l=ao[c];e[o]=t[o]=l.getValue(n,a),a+=l.bytes}}function lo(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]:Ar(t.data.subarray(5)),valid:l==1&&!i.bitFlag.languageEncodingFlag&&c==j(o,0)}),t.valid&&(r[e]=t[e],r[e+nh]=!0)}function uh(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!=nf&&(e.crc32=m)}function dh(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==Go&&(i=t.data.slice(r+4,r+4+a)),r+=4+a}}catch{}if(i&&i.length==24){let s=K(i),a=s.getBigUint64(0,!0),o=s.getBigUint64(8,!0),c=s.getBigUint64(16,!0);U.assign(t,{rawLastModDate:a,rawLastAccessDate:o,rawCreationDate:c});let l=ds(a),u=ds(o),f=ds(c),d={lastModDate:l,lastAccessDate:u,creationDate:f};U.assign(t,d),U.assign(e,d,{rawLastAccessDate:o,rawCreationDate:c})}}function fo(t,e){if(t.data.length<8)return;let n=K(t.data),r=new St((j(n,0)|0)*1e3),i=new St((j(n,4)|0)*1e3),s={lastAccessDate:r,lastModDate:i};t.data.length>=12&&(s.uid=ie(n,8),s.gid=ie(n,10)),U.assign(t,s),U.assign(e,s)}function uo(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=Eo(t.data.subarray(a,a+c)),a+=c;let l=kt(r,a++);s=Eo(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 Eo(t){let e=new V(4);return e.set(t,0),new rn(e.buffer,e.byteOffset,4).getUint32(0,!0)}function Eh(t,e,n){if(!t.data.length)return;let r=K(t.data),i=kt(r,0),s=[],a=[];n?((i&1)==1&&(s.push(Yr),a.push(Vr)),(i&2)==2&&(s.push(Vi),a.push(El)),(i&4)==4&&(s.push(Wi),a.push(hl))):t.data.length>=5&&(s.push(Yr),a.push(Vr));let o=1;s.forEach((c,l)=>{if(t.data.length>=o+4){let u=j(r,o);e[c]=t[c]=new St((u|0)*1e3);let f=a[l];t[f]=u}o+=4})}async function hh({reader:t,fileEntry:e,index:n,offset:r,crc32:i,compressedSize:s,uncompressedSize:a,dataOffset:o,dataDescriptor:c,extraFieldZip64:l,readRanges:u}){let f=0;if(c&&(l?f=Bo:f=Ho),f){let h=await _e(t,o+s,f+Kt),g=K(h),E=h.length==f+Kt&&j(g,0)==Uo;if(E){let _=ho(g,Kt,l);(e.encrypted&&!e.zipCrypto||_.crc32==i)&&_.compressedSize==s&&_.uncompressedSize==a?f+=Kt:E=!1}if(h.length>=f){let _=ho(g,E?Kt:0,l);_.signature=E,e.localDirectory.dataDescriptor=_}}let d={start:r,end:o+s+f,fileEntry:e};for(let[h,g]of u)if(h!=n&&d.start<g.end&&g.start<d.end){let E=new I(Hl);throw E.overlappingEntry=g.fileEntry,E}u.set(n,d)}function ho(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 En(t,e){return t.getDiskOffset?t.getDiskOffset(e):0}async function gh(t){return await af(t)==ar}async function mh(t){let e=await af(t);return e==ar||e==nu}async function af(t){let e=await _e(t,0,Ht);return j(K(e))}function of(t){return t===sn||t===Si||t===zt}function wh(t,e,n){return W.min(t,n?e*ah:e)}function Ji(t,e){return go(t,go(e,Si))}function go(t,e){let n=t[Ku];if(n!==m){if(!of(n))throw new I(Yl);return n}let r=t[Ou];return r===m?e:r?sn:e==zt?zt:Si}function _h(t,e){return t===m?e!=zt:!!t}function Th(t,e){return t===m?e==sn:!!t}function ph(t,e){if(t===m)return e;if(!of(t))throw new I(Vl);return t}function Rh(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("\\\\")||th.test(t)?!0:e==sn&&(n.includes(".")||n.includes(""))}function cf(t,e){if(t!==m){let n=$r(t);if(typeof n!=Tu||pe.isNaN(n)||n<0)throw new I(Wl);return n}return e==sn?0:e==zt?1/0:X}async function lf(t,e,n){let{size:r}=t,i=W.min(r,Ie+X),s={count:ih},a,o,c=0;for await(let[l,u,f,d,h]of ff(t,i)){let g=ie(l,d+20);if(h+Ie+g==r){let E=await uf(t,l,u,d,h,r,s);if(E==Wr){if(a||(a=di(f,d,h)),c++,!e||c>1)break}else E==$i&&!o&&(o=di(f,d,h))}}return a||(a=o),a||(a=await Ah(t,n,s)),{endOfDirectoryInfo:a,endOfDirectoryReachingEndCount:c}}async function Ah(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 ff(t,i)){let d=di(l,u,f);s||(s=d);let h=await uf(t,o,c,u,f,r,n);if(h==Wr)return d;h==$i&&!a&&(a=d)}return a||s}async function*ff(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)==vo&&(yield[i,n,r,s,n+s])}function di(t,e,n){return{offset:n,buffer:t.slice(e,e+Ie).buffer}}async function uf(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 mo(t,e,n,i-Ut,s,a)==Ai?Wr:oo;if(!o&&!c)return $i;let u=ie(e,r+6);for(let f of[i-c,En(t,u)+l])if(await mo(t,e,n,f,s,a)==Mt)return Wr;return oo}async function mo(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 yh(t,e,n,r,i){let{rawFilename:s}=t,a=!i,o=t.decryptedDirectory&&(e.rawBitFlag&ba)==ba;r&&!o&&(n.length!=s.length||n.some((c,l)=>c!=s[l]))&<(a,i,"mismatched local file header (filename)"),(e.rawBitFlag&io)!=(t.rawBitFlag&io)&<(a,i,Ql),e.compressionMethod!=t.compressionMethod&<(a,i,ef),!e.bitFlag.dataDescriptor&&!o&&(e.crc32||e.compressedSize||e.uncompressedSize)&&(e.crc32!=t.crc32||e.compressedSize!=t.compressedSize||e.uncompressedSize!=t.uncompressedSize)&<(a,i,tf)}function lt(t,e,n){t?yr(n):tt(e,n)}function tt(t,e,n){if(!t.some(r=>r.reason==e)){let r={reason:e};n!==m&&(r.filename=n),t.push(r)}}function yr(t){let e=new I(kl);throw e.reason=t,e}function Te(t,e,n){return e[n]===m?t.options[n]:e[n]}function wo(t,e,n){return Ii(Te(t,e,n))}function Sh(t){let e=(t&4294901760)>>16,n=t&X,r=new St(1980+((e&65024)>>9),((e&480)>>5)-1,e&31,(n&63488)>>11,(n&2016)>>5,(n&31)*2,0);return r<Cr?Cr:r}function ds(t){return new St(pe(t/Ce(1e4)-Ce(116444736e5)))}function kt(t,e){return t.getUint8(e)}function ie(t,e){return t.getUint16(e,!0)}function j(t,e){return t.getUint32(e,!0)}function Ge(t,e){let n=t.getBigUint64(e,!0);if(n>sh)throw new I(Xl);return pe(n)}var Ih=U.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:kl,ERR_BAD_FORMAT:zn,ERR_CENTRAL_DIRECTORY_NOT_FOUND:Ll,ERR_ENCRYPTED:vl,ERR_ENCRYPTED_CENTRAL_DIRECTORY:zl,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Bl,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Cl,ERR_EOCDR_NOT_FOUND:Pl,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Ml,ERR_INVALID_AUTHENTICATION_CODE:yc,ERR_INVALID_COMPRESSED_DATA:Uc,ERR_INVALID_CRC32:Mc,ERR_INVALID_FILENAME_VALIDATION:Vl,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Wl,ERR_INVALID_PASSWORD:bi,ERR_INVALID_SIGNATURE:Oi,ERR_INVALID_STRICTNESS:Yl,ERR_INVALID_UNCOMPRESSED_SIZE:Qr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:Ul,ERR_OVERLAPPING_ENTRY:Hl,ERR_SPLIT_ZIP_FILE:ai,ERR_UNSAFE_FILENAME:Gl,ERR_UNSUPPORTED_COMPRESSION:ii,ERR_UNSUPPORTED_ENCRYPTION:si,ERR_UNSUPPORTED_UINT64:Xl,ERR_WORKER_STARTUP_TIMEOUT:Li,WARNING_APPENDED_DATA:ci,WARNING_COMPRESSED_PATCHED_DATA:ql,WARNING_DUPLICATE_FILENAME:Jl,WARNING_MALFORMED_EXTRA_FIELD:ji,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Ql,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:ef,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:tf,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:Gn,WARNING_PREPENDED_DATA:li,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:$l,WARNING_UNKNOWN_VERSION:Kl,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:jl,WARNING_UNSORTED_CENTRAL_DIRECTORY:Zl,WARNING_WRAPPED_ENTRIES_COUNT:oi,ZipReader:Fn,ZipReaderStream:fi,isZipFile:oh}),df="File already exists",Ef="Zip file comment exceeds 64KB",Dh="Invalid zip file comment (must be a Uint8Array)",Nh="File entry comment exceeds 64KB",bh="Invalid file entry comment (must be a string)",Oh="Invalid date (must be a valid Date instance)",Fh="File entry name exceeds 64KB",hf="Version exceeds 65535",xh="The strength must equal 1, 2, or 3",Ph="Encryption is not supported in USDZ files",Ch="Encryption is not supported when the 'passThrough' option is set",Lh="Invalid extra field (must be a Map)",Uh="Invalid extra field type (must be integer 0..65535)",Mh="Invalid extra field data (must be a Uint8Array)",Qi="Extra field data exceeds 64KB",vh="Compression method not supported",gf=-2147483648,mf=2147483647,_o=Ce(0),To=Ce("0x7fffffffffffffff"),ea="Zip64 is not supported (set the 'zip64' option to 'true')",Hh="Undefined uncompressed size",Bh="Undefined compression method",Mm="Undetermined size",kh="Undefined reader",zh="Zip file not empty",Gh="Invalid uid (must be integer 0..2^32-1)",Yh="Invalid gid (must be integer 0..2^32-1)",Vh="Invalid UNIX mode (must be integer 0..65535)",Wh="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Xh="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",Zh="Invalid msdosAttributesRaw (must be integer 0..255)",Kh="Invalid msdosAttributes (must be an object with boolean flags)",qh="Invalid level (must be integer 0..9)",jh="Signature data exceeds 64KB",po=new V([7,0,2,0,65,69,3,0,0]),$h=4,Jh=9,Qh=67,eg=1,Ei="infozip",hi="unix",tg=9,Es=0,Ro=[],xn=class{constructor(e,n={}){e=new Gr(e);let{availableSize:r=fn,maxSize:i=fn}=e,s=r>0&&r!==fn&&i>0&&i!==fn;U.assign(this,{writer:e,addSplitZipSignature:s,options:n,fileEntries:new gt,filenames:new Ir,offset:n[gr]===m?e.size||e.writable.size||0:n[gr],initialOffset:n[gr]===m?0:n[gr]-(e.size||e.writable.size||0),pendingAddFileCalls:new Ir,pendingErrors:[],bufferedWrites:0,lastFileEntry:m})}prependZip(e){return hs(this,ng(this,e))}appendZip(e){return hs(this,this.appendZipEntries(e))}async appendZipEntries(e){let n=this,{pendingAddFileCalls:r,filenames:i,fileEntries:s}=n;for(;r.size;)await ge.allSettled(je.from(r));let a,o=new ge(u=>a=u);r.add(o);let c=[],l;try{e=new nn(e),await He(e),(e.size===m||!e.readUint8Array)&&(e=new Nt(await Qt(e.readable)),await He(e));let{ZipReader:u}=await ge.resolve().then(function(){return Ih}),f=new u(e),d=await f.getEntries();await f.close(),await He(n.writer);let{directoryOffset:h}=f;d.forEach(({filename:_})=>{if(i.has(_))throw new I(df);i.add(_),c.push(_)}),n.writerLocked=!0;let{lockWriter:g}=n;n.lockWriter=new ge(_=>l=()=>{n.writerLocked=!1,_()}),await g,n.addSplitZipSignature&&(delete n.addSplitZipSignature,await Rg(e)||(await ht(n.writer,_f()),n.offset+=Ht));let E=await Ag(n,e,d,h);d.forEach(_=>{let{version:R,rawLastModDate:T,rawFilename:w,bitFlag:p,encrypted:S,uncompressedSize:N,compressedSize:y,extraFieldZip64:F}=_,{compressionMethod:x,rawExtraField:v}=_,{level:M,languageEncodingFlag:H,dataDescriptor:G}=p;v=wf(v||fe),_.extraFieldAES&&(x=qr);let z=te(v),Y=!!F&&F.uncompressedSize!==m,O=!!F&&F.compressedSize!==m,D=yf(M,H,G,S,x)&~Xo|M<<1,{headerArray:C,headerView:P}=Af({version:R,bitFlag:D,compressionMethod:x,uncompressedSize:N,compressedSize:y,rawLastModDate:T,rawFilename:w,zip64CompressedSize:O,zip64UncompressedSize:Y,extraFieldLength:z}),{crc32:Z}=_;Z!==m&&xe(P,qn,Z);let{offset:L,diskNumberStart:q}=E.get(_);U.assign(_,{zip64UncompressedSize:Y,zip64CompressedSize:O,offset:L,diskNumberStart:q,zip64DiskNumberStart:!1,rawExtraFieldZip64:fe,rawExtraFieldAES:fe,rawExtraFieldExtendedTimestamp:fe,rawExtraFieldNTFS:fe,rawExtraFieldUnix:fe,rawExtraField:v,rawCentralExtraField:fe,extendedTimestamp:!1,headerArray:C,headerView:P}),s.set(_.filename,_)})}catch(u){throw c.forEach(f=>i.delete(f)),u}finally{a(),r.delete(o),l&&l()}}add(e="",n,r={}){let i=this,{pendingAddFileCalls:s}=i,a=rg(i,e,n,r);s.add(a);let o=()=>s.delete(a);return ge.prototype.then.call(a,o,o),hs(i,a)}remove(e){let{filenames:n,fileEntries:r}=this;if(typeof e==Dn&&(e=r.get(e)),e&&e.filename!==m){let{filename:i}=e;if(n.has(i)&&r.has(i))return n.delete(i),r.delete(i),!0}return!1}async close(e=fe,n={}){let r=this,{pendingAddFileCalls:i,writer:s}=this,{writable:a}=s;if(!(e instanceof V))throw new I(Dh);if(te(e)>X)throw new I(Ef);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 mg(r,e,n),!il(s)&&J(r,n,tc)||await a.getWriter().close(),s.getData?s.getData():a}},Ao=class{constructor(e={}){let{readable:n,writable:r}=new we;this.readable=n,this.zipWriter=new xn(r,e),this.pendingAddFileCalls=new Ir}transform(e){let n=this.zipWriter,r,{readable:i,writable:s}=new we({start(o){r=o},flush:()=>{a()}});return yo(this,this.zipWriter.add(e,i),o=>r.error(o)),{readable:this.readable,writable:s};async function a(){try{await n.close()}catch(o){await gs(n,o)}}}writable(e){let n,{readable:r,writable:i}=new we({start(s){n=s}});return yo(this,this.zipWriter.add(e,r),s=>n.error(s)),i}async close(e=m,n={}){let{zipWriter:r}=this,s=(await ge.allSettled(je.from(this.pendingAddFileCalls))).filter(a=>a.status=="rejected").map(a=>a.reason);if(s.length){let[a]=s;try{a.entryErrors=s}catch{}throw await gs(r,a),a}try{return await r.close(e,n)}catch(a){throw await gs(r,a),a}}},gi=class extends ge{then(e,n){let{watcher:r}=this;return r&&(r.observed=!0),super.then(e,n)}};function hs(t,e){let n=new gi((i,s)=>ge.prototype.then.call(e,i,s)),r={};return n.watcher=r,r.recorded=ge.prototype.then.call(n,m,i=>r.error=i),t.pendingErrors.push(r),n}async function ng(t,e){if(t.filenames.size)throw new I(zh);await t.appendZipEntries(e)}async function rg(t,e,n,r){if(r=U.assign({},r),J(t,r,yn)&&!e.endsWith(mn)&&(e+=mn),t.filenames.has(e))throw new I(df);t.filenames.add(e),Es<an().maxWorkers?Es++:await new ge(i=>Ro.push(i));try{return await sg(t,e,n,r)}catch(i){throw t.filenames.delete(e),i}finally{let i=Ro.shift();i?i():Es--}}async function gs(t,e){try{await t.writer.writable.abort(e)}catch{}}function yo(t,e,n){t.pendingAddFileCalls.add(e),e.catch(r=>{try{n(r)}catch{}})}async function sg(t,e,n,r){let i=ig(t,e,r);({name:e}=i);let s=ag(t,e,r),{comment:a}=s,o=r[qi];t.fileEntries.set(e,m);let c=t.lastFileEntry,l={},u;s.resolvedOptions.keepOrder&&(l.lockFileEntry=new ge(d=>u=d)),t.lastFileEntry=l;let f;try{let{resolvedOptions:d}=s;d.level!=0&&d.compressionMethod===m&&!d.passThrough&&!await tE(an())&&(d.level=0);let h=await og(t,n,s,r);({reader:n}=h);let g=tr(t.writer),E=yt(t.writer);r=U.assign({},r,i.resolvedOptions,s.resolvedOptions,h.resolvedOptions,{signature:r[ri],crc32:r.crc32===m?r[ri]:r.crc32,offset:t.offset-g,diskNumberStart:E,[jn]:t.options[jn]});let _=ug(r),R=Eg(r),T=te(_.localHeaderArray,R.dataDescriptorArray);f=await lg(t,e,n,{headerInfo:_,dataDescriptorInfo:R,metadataSize:T,fileEntry:l,previousFileEntry:c,releaseLockFileEntry:u},r)}catch(d){throw t.fileEntries.delete(e),d}finally{u&&u(c&&c.lockFileEntry)}return U.assign(f,{name:e,comment:a,extraField:o,[Xi]:f.internalFileAttributes,[Zi]:f.externalFileAttributes}),new On(f)}function ig(t,e,n){let r=J(t,n,Tl),i=J(t,n,Al,r?hu:Fa),s=J(t,n,Sl),a=hn(t,n,Dl),o=hn(t,n,Nl),c=hn(t,n,bl),l=J(t,n,Wu),u=J(t,n,Ol),f=J(t,n,Fl),d=J(t,n,xl);if(kn(a,me,Gh),kn(o,me,Yh),kn(c,X,Vh),l!==m&&l!==Ei&&l!==hi)throw new I(Wh);if(l===hi&&(a!==m&&a>X||o!==m&&o>X))throw new I(Xh);l===m&&(a!==m||o!==m)&&(l=Ei);let h=hn(t,n,wl),g=J(t,n,_l),E=a!==m||o!==m||c!==m||l||s,_=h!==m||g!==m;if(E?(r=!1,i=i&rt|Fa):_&&(r=!0,i=i&rt),kn(h,rt,Zh),g&&(typeof g!==_u||je.isArray(g)))throw new I(Kh);if(i>X)throw new I(hf);let R=Rf(t,n,ml,Zi),T=R!==m;T||(R=0),!n[yn]&&e.endsWith(mn)&&(n[yn]=!0);let w=J(t,n,yn);if(w?(e.endsWith(mn)||(e+=mn),T||(R=xr,r||(R|=(Vn|Wn|_r)<<16))):!r&&!T&&(s?R=(Wn|_r)<<16:R=_r<<16),!r){let N=c!==m||!!(u||f||d),y=R>>16&X;c=c===m?y:c&X,u?c|=bs:u=!!(c&bs),f?c|=Os:f=!!(c&Os),d?c|=Fs:d=!!(c&Fs),(!T||N)&&(w?c=c&~gn|Vn:c&gn||(c|=uu),R=(c&X)<<16|R&X)}({msdosAttributesRaw:h,msdosAttributes:g}=dg(h,g)),_&&(R=R&me|h&rt);let p=R>>16&X,S=c!==m&&(c&gn)==Zo;return{name:e,resolvedOptions:{versionMadeBy:i,msDosCompatible:!!r,externalFileAttributes:R,unixExternalUpper:p,uid:a,gid:o,unixMode:c,unixExtraFieldType:l,symlink:S,setuid:u,setgid:f,sticky:d,msdosAttributesRaw:h,msdosAttributes:g}}}function ag(t,e,n){let r=mi(t,n,Vu)||Tr,i=r(e,sc);if(i===m&&(i=Tr(e)),te(i)>X)throw new I(Fh);let s=n[Gi]||"";if(typeof s!=Dn)throw new I(bh);let a=r(s,ic);if(a===m&&(a=Tr(s)),te(a)>X)throw new I(Nh);let o=J(t,n,Rl);if(o!==m&&o>X)throw new I(hf);let c=Ts(t,n,Yr,new St),l=J(t,n,Vr),u=Ts(t,n,Vi),f=Ts(t,n,Wi),d=Rf(t,n,gl,Xi,0),h=J(t,n,jo),g=J(t,n,Ko),E=J(t,n,qo);oc(g,E);let _=hn(t,n,Lu,3),R=J(t,n,yl),T=J(t,n,Uu,!0),w=J(t,n,Mu),p=J(t,n,vu,!0),S=J(t,n,Jo),N=J(t,n,ec),y=J(t,n,Bu),F=mi(t,n,ku),x=J(t,n,zu,!0),v=ac(J(t,n,$o)),M=J(t,n,Gu,!0),H=J(t,n,Il),G=h||H===m?m:Cc(H);if(!h&&H!==m&&H!==It&&H!==Cn&&!G)throw new I(vh);let z=hn(t,n,Hu);if(kn(z,tg,qh),t.options[jn]){if(g!==m||E!==m)throw new I(Ph);z===m&&H===m&&(z=0)}h&&(z=m);let Y=J(t,n,Qo),O=J(t,n,nc);y&&O===m&&(O=!1),(O===m||R&&!h)&&(O=!0),z!==m&&z!=6&&(Y=!1);let D=J(t,n,Ki);if(!R&&(g!==m||E!==m)&&!(pe.isInteger(_)&&_>=1&&_<=3))throw new I(xh);let C=ms(n[qi]),P=ms(n[Xu]),Z=ms(n[Zu]);return{comment:s,resolvedOptions:{rawFilename:i,rawComment:a,version:o,lastModDate:c,rawLastModDate:l,lastAccessDate:u,creationDate:f,internalFileAttributes:d,passThrough:h,password:g,rawPassword:E,encryptionStrength:_,zipCrypto:R,extendedTimestamp:T,ntfsTimestamp:w,keepOrder:p,useWebWorkers:S,transferStreams:N,bufferedWrite:y,createTempStream:F,dataDescriptorSignature:x,signal:v,useUnicodeFileNames:M,compressionMethod:H,format:G?G.format:m,codecURI:G?G.codecURI:m,codecVersionNeeded:G?G.versionNeeded:m,level:z,useCompressionStream:Y,dataDescriptor:O,zip64:D,rawExtraField:C,rawLocalExtraField:P,rawCentralExtraField:Z}}}function ms(t){if(!t)return fe;if(!(t instanceof gt))throw new I(Lh);let e=0,n=0;t.forEach((s,a)=>{if(cc(a,X,Uh),!(s instanceof V))throw new I(Mh);if(te(s)>X)throw new I(Qi);e+=4+te(s)});let r=new V(e),i=K(r);return t.forEach((s,a)=>{ut(i,n,a),ut(i,n+2,te(s)),sr(r,s,n+4),n+=4+te(s)}),r}async function og(t,e,{resolvedOptions:n},r){if(n.passThrough&&!e&&!J(t,r,yn))throw new I(kh);let i;return e&&(e=new nn(e),await He(e),{size:i}=e),U.assign({reader:e},cg(t,!!e,i,n,r))}function cg(t,e,n,r,i){let{passThrough:s,zipCrypto:a,password:o,rawPassword:c,encryptionStrength:l}=r,{dataDescriptor:u,zip64:f,level:d,compressionMethod:h}=r,g=0,E=0;if(s&&e){if(E=i[Yi],E===m)throw new I(Hh);if(h===m)throw new I(Bh)}let _=f===!0,R=J(t,i,pl);if(e&&s&&!R&&te(o,c))throw new I(Ch);let T=e&&(!!(o&&te(o)||c&&te(c))||s&&R);e||(d=0,h=It);let w=T?a?12:16+l*4:0;e&&(s?(i.uncompressedSize=E,g=n===m?Oo(E)+w:n):n===m?(u=!0,(f||f===m)&&(f=!0,E=g=me+1)):(i.uncompressedSize=E=n,g=(wi(h,d)?Oo(E):E)+w));let p=!T&&(!e||n===0&&!s)&&!wi(h,d);p&&!a&&J(t,i,nc)===m&&(u=!1);let S=_||E>=me,N=_||g>=me;if(S||N){if(f===!1)throw new I(ea);f=!0}return f=f||!1,{maximumCompressedSize:g,resolvedOptions:{dataDescriptor:u,emptyEntry:p,zip64:f,zip64UncompressedSize:S,zip64CompressedSize:N,uncompressedSize:E,level:d,compressionMethod:h,encrypted:T}}}async function lg(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[jn],_=d,R,T,w,p,S,N=0,y,F=o&&h?h.lockFileEntry:m;s.set(e,_);try{i.bufferedWrite||!o||t.writerLocked||t.bufferedWrites||!c&&!l?(R=!0,t.bufferedWrites++,i.createTempStream?y=await i.createTempStream():y=new we(m,m,{highWaterMark:fn}),y.size=0,await He(a)):(y=a,await F,await x()),await He(y);let M=tr(a);t.addSplitZipSignature&&!R&&await Do(t,a),E&&!R&&So(r,t.offset-M);let{localHeaderArray:H}=f;R||await v();let G=yt(a),z=nr(t,a);if(_.diskNumberStart=G,R||(p=!0,S=a.size,await ht(y,H)),_=await fg(n,y,_,r,an(),i),R||(p=!1),s.set(e,_),_.filename=e,R){if(await ge.all([y.writable.getWriter().close(),F]),await x(),t.addSplitZipSignature&&await Do(t,a),w=!0,S=a.size,await v(),_.diskNumberStart=yt(a),_.offset=nr(t,a),E){let Y=r.metadataSize;So(r,t.offset-tr(a)),_.size+=r.metadataSize-Y}gg(_,f.localHeaderView,i),await ht(a,f.localHeaderArray),await Tf(y.readable,a,u,Y=>N+=Y),a.size+=y.size,w=!1}else _.diskNumberStart=G,_.offset=z;return t.offset+=_.size,_}catch(M){if(w||p){if(t.hasCorruptedEntries=!0,M)try{M.corruptedEntry=!0}catch{}t.offset+=a.size-S,R&&(t.offset+=N)}throw s.delete(e),M}finally{if(R&&t.bufferedWrites--,g&&g(F),T&&T(),R&&y&&y.dispose)try{await y.dispose()}catch{}}async function x(){t.writerLocked=!0;let{lockWriter:M}=t;t.lockWriter=new ge(H=>T=()=>{t.writerLocked=!1,H()}),await M}async function v(){Pn(a,te(f.localHeaderArray))&&await a.closeDisk()}}async function fg(t,e,{diskNumberStart:n,lockFileEntry:r},i,s,a){let{headerInfo:o,dataDescriptorInfo:c,metadataSize:l}=i,{headerArray:u,headerView:f,lastModDate:d,rawLastModDate:h,encrypted:g,compressed:E,version:_,compressionMethod:R,rawExtraFieldZip64:T,localExtraFieldZip64Length:w,rawExtraFieldExtendedTimestamp:p,extraFieldExtendedTimestampFlag:S,rawExtraFieldNTFS:N,rawExtraFieldUnix:y,rawExtraFieldAES:F}=o,{dataDescriptorArray:x}=c,{rawFilename:v,lastAccessDate:M,creationDate:H,password:G,rawPassword:z,level:Y,zip64:O,zip64UncompressedSize:D,zip64CompressedSize:C,zipCrypto:P,dataDescriptor:Z,directory:L,executable:q,versionMadeBy:ne,rawComment:re,rawExtraField:$,rawCentralExtraField:ce,useWebWorkers:ae,transferStreams:Ae,onstart:Ne,onprogress:he,onend:Q,signal:Re,encryptionStrength:oe,extendedTimestamp:ee,msDosCompatible:ue,internalFileAttributes:B,externalFileAttributes:ye,uid:Ee,gid:Be,unixMode:be,symlink:Xe,setuid:wt,setgid:Wt,sticky:Le,unixExternalUpper:ot,msdosAttributesRaw:Se,msdosAttributes:ct,useCompressionStream:Xt,passThrough:Ze,format:on,codecURI:$e}=a,Ot={lockFileEntry:r,versionMadeBy:ne,zip64:O,directory:!!L,executable:!!q,filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:re,rawExtraFieldZip64:T,localExtraFieldZip64Length:w,rawExtraFieldExtendedTimestamp:p,rawExtraFieldNTFS:N,rawExtraFieldUnix:y,rawExtraFieldAES:F,rawExtraField:$,rawCentralExtraField:ce,extendedTimestamp:ee,msDosCompatible:ue,internalFileAttributes:B,externalFileAttributes:ye,diskNumberStart:n,uid:Ee,gid:Be,unixMode:be,symlink:!!Xe,setuid:wt,setgid:Wt,sticky:Le,unixExternalUpper:ot,msdosAttributesRaw:Se,msdosAttributes:ct},{crc32:Ft,uncompressedSize:ze}=a,Ke=0;Ze||(ze=0);let{writable:Zt}=e;if(t){let Ue=Jt(al(t)),xt=t.size,Pt={options:{codecType:Ci,inputSize:xt,level:Y,rawPassword:z,password:G,encryptionStrength:oe,zipCrypto:g&&P,passwordVerification:g&&P&&h>>8&rt,computeCrc32:!Ze,compressed:E&&!Ze,encrypted:g&&!Ze,useWebWorkers:ae,useCompressionStream:Xt,transferStreams:Ae,format:on,codecURI:$e,compressionMethod:R},config:s,streamOptions:{signal:Re,size:xt,onstart:Ne,onprogress:he,onend:Q}};try{let Fe=await Wc({readable:Ue,writable:Zt},Pt);if(Ke=Fe.outputSize,e.size+=Ke,Ze||(ze=Fe.inputSize,(!g||P)&&(Ft=Fe.crc32)),!C&&Ke>=me||!D&&ze>=me)throw new I(ea)}catch(Fe){throw Fe.outputSize!==m&&(e.size+=Fe.outputSize),Fe}}return hg({crc32:Ft,compressedSize:Ke,uncompressedSize:ze,headerInfo:o,dataDescriptorInfo:c},a),Z&&await ht(e,x),U.assign(Ot,{uncompressedSize:ze,compressedSize:Ke,lastModDate:d,rawLastModDate:h,creationDate:H,lastAccessDate:M,encrypted:!!g,zipCrypto:!!P,size:l+Ke,compressionMethod:R,version:_,headerArray:u,headerView:f,signature:Ft,crc32:g&&!P&&!Ze?m:Ft,extraFieldExtendedTimestampFlag:S,zip64UncompressedSize:D,zip64CompressedSize:C}),Ot}function ug(t){let{rawFilename:e,lastModDate:n,rawLastModDate:r,lastAccessDate:i,creationDate:s,level:a,zip64:o,zipCrypto:c,useUnicodeFileNames:l,dataDescriptor:u,directory:f,rawExtraField:d,rawLocalExtraField:h,encryptionStrength:g,extendedTimestamp:E,ntfsTimestamp:_,passThrough:R,encrypted:T,zip64UncompressedSize:w,zip64CompressedSize:p,uncompressedSize:S,crc32:N}=t,{version:y,compressionMethod:F}=t,x=!f&&wi(F,a),v,M=R||!x,H=o&&(t.bufferedWrite||!u||!w&&!p||M),G=H||o&&u&&(w||p);if(o&&(w||p)){let Q=Ye(20);if(Q.writeUint16(jr),Q.writeUint16(16),v=Q.array,H&&(Q.writeUint64(S),M)){let Re=T?c?12:16+g*4:0;Q.writeUint64(R?0:S+Re)}}else v=fe;let z;if(T&&!c){let he=Ye(te(po)+2);he.writeUint16(ko),he.writeBytes(po),z=he.array,z[8]=g}else z=fe;let Y,O,D;if(E){let he=Sr(n),Q=pf(he);if(Q){let oe=9+(i?4:0)+(s?4:0),ee=Ye(oe);D=1+(i?2:0)+(s?4:0),ee.writeUint16(yi),ee.writeUint16(oe-4),ee.writeUint8(D),ee.writeUint32(he),i&&ee.writeUint32(No(Sr(i))),s&&ee.writeUint32(No(Sr(s))),O=ee.array}else O=fe;if(_===m?!Q||!!(i||s):_)try{let oe=_s(n),ee=Ye(36);ee.writeUint16(zo),ee.writeUint16(32),ee.skip(4),ee.writeUint16(Go),ee.writeUint16(24),ee.writeUint64(oe),ee.writeUint64(i?_s(i):oe),ee.writeUint64(s?_s(s):oe),Y=ee.array}catch{Y=fe}else Y=fe}else Y=O=fe;let C;try{let{uid:he,gid:Q,unixExtraFieldType:Re}=t;if(Re==Ei&&(he!==m||Q!==m)){let oe=Io(he===m?0:he),ee=Io(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==hi&&(he!==m||Q!==m)){let oe=Ye(8);oe.writeUint16(Wo),oe.writeUint16(4),oe.writeUint16((he===m?0:he)&X),oe.writeUint16((Q===m?0:Q)&X),C=oe.array}else C=fe}catch{C=fe}F===m&&(F=x?Cn:It),y===m&&(y=F==It&&!f&&!T?du:Eu);let{codecVersionNeeded:P}=t;x&&P!==m&&(y=y>P?y:P),o&&(y=y>Pr?y:Pr),T&&!c&&(y=y>Oa?y:Oa,R&&N!==m&&(z[$h]=eg),ut(K(z),Jh,F),F=qr);let Z=G?te(v):0,L=Z+te(z,O,Y,C,d,h),q=t[jn]?Qh:0;if(L+q>X)throw new I(Qi);let ne=new St(W.ceil(W.floor(n.getTime()/1e3)/2)*2e3),{headerArray:re,headerView:$,rawLastModDate:ce}=Af({version:y,bitFlag:yf(a,l,u,T,F),compressionMethod:F,uncompressedSize:S,lastModDate:ne<Cr?Cr:ne>xa?xa:ne,rawLastModDate:r,rawFilename:e,zip64CompressedSize:p,zip64UncompressedSize:w,extraFieldLength:L}),ae=Ye(Ve+te(e)+L),Ae=ae.array,Ne=K(Ae);return ae.writeUint32(Lo),ae.writeBytes(re),ae.writeBytes(e),G&&ae.writeBytes(v),ae.writeBytes(z),ae.writeBytes(O),ae.writeBytes(Y),ae.writeBytes(C),ae.writeBytes(d),ae.writeBytes(h),u&&(p||xe(Ne,or+qt,0),w||xe(Ne,cr+qt,0)),{localHeaderArray:Ae,localHeaderView:Ne,headerArray:re,headerView:$,lastModDate:n,rawLastModDate:ce,encrypted:T,compressed:x,version:y,compressionMethod:F,extraFieldExtendedTimestampFlag:D,rawExtraFieldZip64:fe,localExtraFieldZip64Length:Z,rawExtraFieldExtendedTimestamp:O,rawExtraFieldNTFS:Y,rawExtraFieldUnix:C,rawExtraFieldAES:z,extraFieldLength:L}}function So(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,Yo),ut(o,2,s-4);let c=r;n.localHeaderArray=r=new V(te(c)+s),sr(r,c),sr(r,a,te(c));let l=K(r);ut(l,28,i+s),n.localHeaderView=l,t.metadataSize+=s}function Io(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 dg(t,e){if(t!==m)t=t&rt;else if(e!==m){let{readOnly:n,hidden:r,system:i,directory:s,archive:a}=e,o=0;n&&(o|=Ss),r&&(o|=Is),i&&(o|=Ds),s&&(o|=xr),a&&(o|=Ns),t=o&rt}return e===m&&(e={readOnly:!!(t&Ss),hidden:!!(t&Is),system:!!(t&Ds),directory:!!(t&xr),archive:!!(t&Ns)}),{msdosAttributesRaw:t,msdosAttributes:e}}function Eg({zip64:t,dataDescriptor:e,dataDescriptorSignature:n}){let r=fe,i,s=0,a=t?Bo:Ho;return n&&(a+=Kt),e&&(r=new V(a),i=K(r),n&&(s=Kt,xe(i,0,Uo))),{dataDescriptorArray:r,dataDescriptorView:i,dataDescriptorOffset:s}}function hg({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,qn,t),c&&xe(f,d,t)),s?c&&(rr(f,d+4,Ce(e)),rr(f,d+12,Ce(n))):(xe(l,or,e),xe(l,cr,n),c&&(xe(f,d+4,e),xe(f,d+8,n)))}function gg({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,qn+qt,i),c||xe(l,or+qt,s),o||xe(l,cr+qt,a)),n&&r){let d=Ve+te(t)+4;rr(l,d,Ce(a)),rr(l,d+8,Ce(s))}}async function mg(t,e,n){let r=wg(t.fileEntries),{directoryStart:i,directoryEnd:s,directoryArray:a}=await _g(t,r,n),o=await Tg(t,a,n);await pg(t,e,n,{directoryStart:i,directoryEnd:s,directoryDataLength:r,signatureLength:o})}function wg(t){let e=0;for(let[,n]of t){let{rawFilename:r,rawExtraFieldAES:i,rawComment:s,rawExtraFieldNTFS:a,rawExtraFieldUnix:o,rawExtraField:c,rawCentralExtraField:l,extendedTimestamp:u,extraFieldExtendedTimestampFlag:f,lastModDate:d,zip64UncompressedSize:h,zip64CompressedSize:g,uncompressedSize:E,compressedSize:_}=n,R=n.offset>=me,T=n.diskNumberStart>=X,w;if(R||T||h||g){let y=4+(h?8:0)+(g?8:0)+(R?8:0)+(T?4:0),F=Ye(y);F.writeUint16(jr),F.writeUint16(y-4),h&&F.writeUint64(E),g&&F.writeUint64(_),R&&F.writeUint64(n.offset),T&&F.writeUint32(n.diskNumberStart),w=F.array}else w=fe;n.rawExtraFieldZip64=w,n.zip64Offset=R,n.zip64DiskNumberStart=T;let p,S=Sr(d);if(u&&pf(S)){let y=Ye(9);y.writeUint16(yi),y.writeUint16(5),y.writeUint8(f),y.writeUint32(S),p=y.array}else p=fe;n.rawExtraFieldExtendedTimestamp=p;let N=te(w,i,a,o,p,c,l);if(N>X)throw new I(Qi);e+=In+te(r,s)+N}return e}async function _g(t,e,n){let{fileEntries:r,writer:i}=t,s=new V(e);await He(i);let a=0,o=0,c=yt(i),l=tr(i),u=0;for(let[f,d]of je.from(r.values()).entries()){let{offset:h,rawFilename:g,rawExtraFieldZip64:E,rawExtraFieldAES:_,rawExtraFieldExtendedTimestamp:R,rawExtraFieldNTFS:T,rawExtraFieldUnix:w,rawExtraField:p,rawCentralExtraField:S,rawComment:N,versionMadeBy:y,headerArray:F,headerView:x,zip64UncompressedSize:v,zip64CompressedSize:M,zip64DiskNumberStart:H,zip64Offset:G,internalFileAttributes:z,externalFileAttributes:Y,diskNumberStart:O,uncompressedSize:D,compressedSize:C}=d,P=te(E,_,R,T,w,p,S),Z=In+te(g,N)+P;Pn(i,a+Z-o)&&(await ht(i,s.slice(o,a)),o=a,u=0,await i.closeDisk()),f==0&&(c=yt(i),l=tr(i)),v||xe(x,cr,D),M||xe(x,or,C),(G||H)&&d.version<Pr&&ut(x,gu,Pr);let L=Ye(Z);if(L.writeUint32(Mt),L.writeUint16(y),L.writeBytes(F.subarray(0,Ve-4-2)),L.writeUint16(P),L.writeUint16(te(N)),L.writeUint16(H?X:O),L.writeUint16(z),L.writeUint32(Y),L.writeUint32(G?me:h),L.writeBytes(g),L.writeBytes(E),L.writeBytes(_),L.writeBytes(R),L.writeBytes(T),L.writeBytes(w),L.writeBytes(p),L.writeBytes(S),L.writeBytes(N),sr(s,L.array,a),a+=Z,u++,n.onprogress)try{await n.onprogress(f+1,r.size,new On(d))}catch{}}return await ht(i,o?s.slice(o):s),{directoryStart:{diskNumber:c,diskOffset:l},directoryEnd:{diskNumber:yt(i),entriesLength:u},directoryArray:s}}async function Tg(t,e,n){let r=mi(t,n,Ju);if(r){let i=await r(e),s=te(i);if(s>X)throw new I(jh);let a=Ye(6+s);a.writeUint32(Mo),a.writeUint16(s),a.writeBytes(i);let{writer:o}=t;return Pn(o,te(a.array))&&await o.closeDisk(),await ht(o,a.array),6+s}return 0}async function pg(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=nr(t,s),d=te(e);if(d>X)throw new I(Ef);let h=J(t,n,Ki),g=yt(i);if(Pn(i,(h?Ia:Ie)+d)&&g++,f>=me||c>=me||l>=X||g>=X){if(h===!1)throw new I(ea);h=!0}let E=Ye(h?Ia:Ie);Pn(i,te(E.array)+d)&&await i.closeDisk(),g=yt(i);let _=g==a.diskNumber?a.entriesLength:0;h&&(E.writeUint32(ys),E.writeUint64(44),E.writeUint16(45),E.writeUint16(45),E.writeUint32(g),E.writeUint32(u),E.writeUint64(_),E.writeUint64(l),E.writeUint64(c),E.writeUint64(f),E.writeUint32(Ai),E.writeUint32(g),E.writeUint64(Ce(nr(t,i))+Ce(c)+Ce(o)),E.writeUint32(g+1),J(t,n,Yu,!0)&&(g=X,u=X),_=X,l=X,f=me,c=me),E.writeUint32(vo),E.writeUint16(g),E.writeUint16(u),E.writeUint16(_),E.writeUint16(l),E.writeUint32(c),E.writeUint32(f),E.writeUint16(d),await ht(i,E.array),d&&await ht(i,e)}function Ye(t){let e=new V(t),n=K(e),r=0;return{array:e,writeUint8:i=>{Ig(n,r,i),r+=1},writeUint16:i=>{ut(n,r,i),r+=2},writeUint32:i=>{xe(n,r,i),r+=4},writeUint64:i=>{rr(n,r,Ce(i)),r+=8},writeBytes:i=>{sr(e,i,r),r+=te(i)},skip:i=>r+=i}}function yt(t){let{diskNumber:e=0}=t;return e}function tr(t){let{diskOffset:e=0}=t;return e}function Pn(t,e){let{availableSize:n=fn}=t;return e>n}function nr(t,{diskNumber:e=0,diskOffset:n=0}){return t.offset-n-(e?t.initialOffset:0)}async function Rg(t){let e=await _e(t,0,Ht);return Sg(K(e),0)==ar}function wf(t){let e=K(t),n=0;for(;n+4<=te(t);){let r=4+Xr(e,n+2);if(Xr(e,n)==jr)return wf(Bt(t.subarray(0,n),t.subarray(W.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)=>mr(e,c)-mr(e,l)),o=0;for(let c of a){let l=mr(e,c);await ws(t,e,o,l-o),Pn(i,await yg(e,l))&&await i.closeDisk(),s.set(c,{offset:nr(t,i),diskNumberStart:yt(i)}),o=l}await ws(t,e,o,r-o)}else{let a=t.offset;await ws(t,e,0,r),n.forEach(o=>s.set(o,{offset:a+mr(e,o),diskNumberStart:0}))}return s}async function ws(t,e,n,r){if(r>0){let{writer:i}=t,s=0;try{await Tf(al(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 yg(t,e){let n=await _e(t,e,Ve);if(te(n)<Ve)return Ve;let r=K(n);return Ve+Xr(r,mu+qt)+Xr(r,wu+qt)}function mr(t,{offset:e,diskNumberStart:n}){return e+(t.getDiskOffset?t.getDiskOffset(n):0)}function _f(){let t=new V(Ht);return xe(K(t),0,ar),t}async function Do(t,e){delete t.addSplitZipSignature,await ht(e,_f()),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 Tf(t,e,n,r){let i=e.writable.getWriter();try{await t.pipeTo(new at({async write(s){await i.ready,await i.write(s),r(te(s))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{i.releaseLock()}}function _s(t){if(t){let e=(Ce(t.getTime())+Ce(116444736e5))*Ce(1e4);return e<_o?_o:e>To?To:e}}function Sr(t){return W.floor(t.getTime()/1e3)}function pf(t){return t>=gf&&t<=mf}function No(t){return W.min(mf,W.max(gf,t))}function J(t,e,n,r){let i=e[n]===m?t.options[n]:e[n];return i===m?r:i}function Ts(t,e,n,r){let i=J(t,e,n,r);if(i===null)return r;if(i!==m&&(typeof i.getTime!=De||pe.isNaN(i.getTime())))throw new I(Oh);return i}function mi(t,e,n){return Ii(J(t,e,n))}function Rf(t,e,n,r,i){let s=bo(e,n,r),a=s===m?bo(t.options,n,r):s;return a===m?i:a}function bo(t,e,n){return t[e]===m?t[n]:t[e]}function hn(t,e,n,r){return $r(J(t,e,n,r))}function Oo(t){return t+5*(W.floor(t/16383)+1)}function wi(t,e){return t===m?e===m||e>0:t!==It}function Xr(t,e){return t.getUint16(e,!0)}function Sg(t,e){return t.getUint32(e,!0)}function Ig(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 rr(t,e,n){t.setBigUint64(e,n,!0)}function sr(t,e,n){t.set(e,n)}function te(...t){let e=0;return t.forEach(n=>n&&(e+=n.length)),e}function Af({version:t,bitFlag:e,compressionMethod:n,uncompressedSize:r,compressedSize:i,lastModDate:s,rawLastModDate:a,rawFilename:o,zip64CompressedSize:c,zip64UncompressedSize:l,extraFieldLength:u}){let f=Ye(Ve-4),d=f.array,h=K(d);if(f.writeUint16(t),f.writeUint16(e),f.writeUint16(n),a===m){let g=new Co(1),E=K(g);ut(E,0,(s.getHours()<<6|s.getMinutes())<<5|s.getSeconds()/2),ut(E,2,(s.getFullYear()-1980<<4|s.getMonth()+1)<<5|s.getDate()),a=g[0]}return f.writeUint32(a),f.skip(4),c||i!==m?f.writeUint32(c?me:i):f.skip(4),l||r!==m?f.writeUint32(l?me:r):f.skip(4),f.writeUint16(te(o)),f.writeUint16(u),{headerArray:d,headerView:h,rawLastModDate:a}}function yf(t,e,n,r,i){let s=0;return e&&(s=s|Fr),n&&(s=s|Or),(i==Cn||i==Kn)&&(t>=0&&t<=3&&(s=s|fu),t>3&&t<=5&&(s=s|lu),t==9&&(s=s|cu)),r&&(s=s|br),s}function vm(){return"application/octet-stream"}function Hm(){let{CompressionStream:t,DecompressionStream:e,CompressionStreamFallback:n,DecompressionStreamFallback:r}=an(),i=[{compressionMethod:It,compression:!0,decompression:!0,registered:!1},{compressionMethod:Cn,compression:Lt(n,dn)||Lt(t,dn)||Lt(t,Nn),decompression:Lt(r,dn)||Lt(e,dn)||Lt(e,Nn),registered:!1},{compressionMethod:Kn,compression:!1,decompression:Lt(r,Ms)||Lt(e,Ms),registered:!1}];for(let s of Hd()){let a=xi(s.format);i.push({compressionMethod:s.compressionMethod,compression:a?typeof a.CompressionStream==De:m,decompression:a?typeof a.DecompressionStream==De:m,registered:!0})}return i}function Lt(t,e){if(!t)return!1;let{supportedFormats:n}=t;return n?n.includes(e):Pi(t,e)}var Bm="2.8.61",Dg=1024*1024,Ng=".zip.js-temp";function km(t={}){let{thresholdBytes:e=Dg,directoryName:n=Ng,getDirectory:r=()=>Yn.storage.getDirectory()}=t,i;function s(){return i||(i=ge.resolve(r()).then(a=>a.getDirectoryHandle(n,{create:!0}))),i}return function(){let a=[],o=0,c=!1,l,u,f,d;async function h(){let T=await s();l=bg(),u=await T.getFileHandle(l,{create:!0}),f=(await u.createWritable()).getWriter(),c=!0;for(let w of a)await f.write(w);a.length=0}let g=new at({async write(T){c?await f.write(T):(a.push(T),o+=T.length,o>e&&await h())},async close(){f&&(await f.close(),f=null)}}),E=0,_=new it({async pull(T){if(c){d||(d=(await u.getFile()).stream().getReader());let{value:w,done:p}=await d.read();p?T.close():T.enqueue(w)}else E<a.length?T.enqueue(a[E++]):T.close()},async cancel(T){d&&await d.cancel(T)}},{highWaterMark:0});async function R(){if(f){try{await f.close()}catch{}f=null}if(l){try{await(await s()).removeEntry(l)}catch{}u=l=null}a.length=0}return{writable:g,readable:_,dispose:R}}}function bg(){return st.randomUUID?st.randomUUID():je.from(st.getRandomValues(new V(16)),t=>t.toString(16).padStart(2,"0")).join("")}var Og=1024*1024;function zm(t={}){let{thresholdBytes:e=Og}=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 Fg=1024*1024,xg=".zip.js-temp",Pg=512*1024,Cg="createSyncAccessHandle is only available in dedicated workers";function Gm(t={}){let{thresholdBytes:e=Fg,directoryName:n=xg,getDirectory:r}=t;if(!r&&(typeof FileSystemFileHandle>"u"||!FileSystemFileHandle.prototype.createSyncAccessHandle))throw new I(Cg);let i=r||(()=>Yn.storage.getDirectory()),s;function a(){return s||(s=ge.resolve(i()).then(o=>o.getDirectoryHandle(n,{create:!0}))),s}return function(){let o=[],c=0,l=!1,u,f,d=0,h=0;async function g(){let w=await a();u=Lg(),f=await(await w.getFileHandle(u,{create:!0})).createSyncAccessHandle(),l=!0;for(let S of o)f.write(S,{at:d}),d+=S.length;o.length=0}let E=new at({async write(w){l?(f.write(w,{at:d}),d+=w.length):(o.push(w),c+=w.length,c>e&&await g())},close(){f&&f.flush()}}),_=0,R=new it({pull(w){if(l){let p=d-h;if(p<=0){w.close();return}let S=new V(W.min(Pg,p)),N=f.read(S,{at:h});N?(h+=N,w.enqueue(S.subarray(0,N))):w.close()}else _<o.length?w.enqueue(o[_++]):w.close()}},{highWaterMark:0});async function T(){if(f){try{f.close()}catch{}f=null}if(u){try{await(await a()).removeEntry(u)}catch{}u=null}o.length=0}return{writable:E,readable:R,dispose:T}}}function Lg(){return st.randomUUID?st.randomUUID():je.from(st.getRandomValues(new V(16)),t=>t.toString(16).padStart(2,"0")).join("")}try{od({baseURI:import.meta.url})}catch{}var Pe=V,We=tu,ta=Int32Array,ts=new Pe([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),ns=new Pe([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),_i=new Pe([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Sf=function(t,e){for(var n=new We(31),r=0;r<31;++r)n[r]=e+=1<<t[r-1];for(var i=new ta(n[30]),r=1;r<30;++r)for(var s=n[r];s<n[r+1];++s)i[s]=s-n[r]<<5|r;return{b:n,r:i}},If=Sf(ts,2),Df=If.b,Ti=If.r;Df[28]=258,Ti[258]=28;var Nf=Sf(ns,0),Ug=Nf.b,Fo=Nf.r,pi=new We(32768);for(de=0;de<32768;++de)_t=(de&43690)>>1|(de&21845)<<1,_t=(_t&52428)>>2|(_t&13107)<<2,_t=(_t&61680)>>4|(_t&3855)<<4,pi[de]=((_t&65280)>>8|(_t&255)<<8)>>1;var _t,de,dt=(function(t,e,n){for(var r=t.length,i=0,s=new We(e);i<r;++i)t[i]&&++s[t[i]-1];var a=new We(e);for(i=1;i<e;++i)a[i]=a[i-1]+s[i-1]<<1;var o;if(n){o=new We(1<<e);var c=15-e;for(i=0;i<r;++i)if(t[i])for(var l=i<<4|t[i],u=e-t[i],f=a[t[i]-1]++<<u,d=f|(1<<u)-1;f<=d;++f)o[pi[f]>>c]=l}else for(o=new We(r),i=0;i<r;++i)t[i]&&(o[i]=pi[a[t[i]-1]++]>>15-t[i]);return o}),Yt=new Pe(288);for(de=0;de<144;++de)Yt[de]=8;var de;for(de=144;de<256;++de)Yt[de]=9;var de;for(de=256;de<280;++de)Yt[de]=7;var de;for(de=280;de<288;++de)Yt[de]=8;var de,ir=new Pe(32);for(de=0;de<32;++de)ir[de]=5;var de,Mg=dt(Yt,9,0),vg=dt(Yt,9,1),Hg=dt(ir,5,0),Bg=dt(ir,5,1),ps=function(t){for(var e=t[0],n=1;n<t.length;++n)t[n]>e&&(e=t[n]);return e},Qe=function(t,e,n){var r=e/8|0;return(t[r]|t[r+1]<<8)>>(e&7)&n},Rs=function(t,e){var n=e/8|0;return(t[n]|t[n+1]<<8|t[n+2]<<16)>>(e&7)},na=function(t){return(t+7)/8|0},bf=function(t,e,n){return(n==null||n>t.length)&&(n=t.length),new Pe(t.subarray(e,n))},kg=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],Rt=function(t,e,n){var r=new I(e||kg[t]);if(r.code=t,I.captureStackTrace&&I.captureStackTrace(r,Rt),!n)throw r;return r},zg=function(t,e,n,r){var i=t.length,s=r?r.length:0;if(!i||e.f&&!e.l)return n||new Pe(0);var a=!n,o=a||e.i!=2,c=e.i;a&&(n=new Pe(i*3));var l=function(Q){var Re=n.length;if(Q>Re){var oe=new Pe(W.max(Re*2,Q));oe.set(n),n=oe}},u=e.f||0,f=e.p||0,d=e.b||0,h=e.l,g=e.d,E=e.m,_=e.n,R=i*8;do{if(!h){u=Qe(t,f,1);var T=Qe(t,f+1,3);if(f+=3,T)if(T==1)h=vg,g=Bg,E=9,_=5;else if(T==2){var N=Qe(t,f,31)+257,y=Qe(t,f+10,15)+4,F=N+Qe(t,f+5,31)+1;f+=14;for(var x=new Pe(F),v=new Pe(19),M=0;M<y;++M)v[_i[M]]=Qe(t,f+M*3,7);f+=y*3;for(var H=ps(v),G=(1<<H)-1,z=dt(v,H,1),M=0;M<F;){var Y=z[Qe(t,f,G)];f+=Y&15;var w=Y>>4;if(w<16)x[M++]=w;else{var O=0,D=0;for(w==16?(D=3+Qe(t,f,3),f+=2,O=x[M-1]):w==17?(D=3+Qe(t,f,7),f+=3):w==18&&(D=11+Qe(t,f,127),f+=7);D--;)x[M++]=O}}var C=x.subarray(0,N),P=x.subarray(N);E=ps(C),_=ps(P),h=dt(C,E,1),g=dt(P,_,1)}else Rt(1);else{var w=na(f)+4,p=t[w-4]|t[w-3]<<8,S=w+p;if(S>i){c&&Rt(0);break}o&&l(d+p),n.set(t.subarray(w,S),d),e.b=d+=p,e.p=f=S*8,e.f=u;continue}if(f>R){c&&Rt(0);break}}o&&l(d+131072);for(var Z=(1<<E)-1,L=(1<<_)-1,q=f;;q=f){var O=h[Rs(t,f)&Z],ne=O>>4;if(f+=O&15,f>R){c&&Rt(0);break}if(O||Rt(2),ne<256)n[d++]=ne;else if(ne==256){q=f,h=null;break}else{var re=ne-254;if(ne>264){var M=ne-257,$=ts[M];re=Qe(t,f,(1<<$)-1)+Df[M],f+=$}var ce=g[Rs(t,f)&L],ae=ce>>4;ce||Rt(3),f+=ce&15;var P=Ug[ae];if(ae>3){var $=ns[ae];P+=Rs(t,f)&(1<<$)-1,f+=$}if(f>R){c&&Rt(0);break}o&&l(d+131072);var Ae=d+re;if(d<P){var Ne=s-P,he=W.min(P,Ae);for(Ne+d<0&&Rt(3);d<he;++d)n[d]=r[Ne+d]}for(;d<Ae;++d)n[d]=n[d-P]}}e.l=h,e.p=q,e.b=d,e.f=u,h&&(u=1,e.m=E,e.d=g,e.n=_)}while(!u);return d!=n.length&&a?bf(n,0,d):n.subarray(0,d)},Tt=function(t,e,n){n<<=e&7;var r=e/8|0;t[r]|=n,t[r+1]|=n>>8},Hn=function(t,e,n){n<<=e&7;var r=e/8|0;t[r]|=n,t[r+1]|=n>>8,t[r+2]|=n>>16},As=function(t,e){for(var n=[],r=0;r<t.length;++r)t[r]&&n.push({s:r,f:t[r]});var i=n.length,s=n.slice();if(!i)return{t:Ff,l:0};if(i==1){var a=new Pe(n[0].s+1);return a[n[0].s]=1,{t:a,l:1}}n.sort(function(S,N){return S.f-N.f}),n.push({s:-1,f:25001});var o=n[0],c=n[1],l=0,u=1,f=2;for(n[0]={s:-1,f:o.f+c.f,l:o,r:c};u!=i-1;)o=n[n[l].f<n[f].f?l++:f++],c=n[l!=u&&n[l].f<n[f].f?l++:f++],n[u++]={s:-1,f:o.f+c.f,l:o,r:c};for(var d=s[0].s,r=1;r<i;++r)s[r].s>d&&(d=s[r].s);var h=new We(d+1),g=Ri(n[u-1],h,0);if(g>e){var r=0,E=0,_=g-e,R=1<<_;for(s.sort(function(N,y){return h[y.s]-h[N.s]||N.f-y.f});r<i;++r){var T=s[r].s;if(h[T]>e)E+=R-(1<<g-h[T]),h[T]=e;else break}for(E>>=_;E>0;){var w=s[r].s;h[w]<e?E-=1<<e-h[w]++-1:++r}for(;r>=0&&E;--r){var p=s[r].s;h[p]==e&&(--h[p],++E)}g=e}return{t:new Pe(h),l:g}},Ri=function(t,e,n){return t.s==-1?W.max(Ri(t.l,e,n+1),Ri(t.r,e,n+1)):e[t.s]=n},xo=function(t){for(var e=t.length;e&&!t[--e];);for(var n=new We(++e),r=0,i=t[0],s=1,a=function(c){n[r++]=c},o=1;o<=e;++o)if(t[o]==i&&o!=e)++s;else{if(!i&&s>2){for(;s>138;s-=138)a(32754);s>2&&(a(s>10?s-11<<5|28690:s-3<<5|12305),s=0)}else if(s>3){for(a(i),--s;s>6;s-=6)a(8304);s>2&&(a(s-3<<5|8208),s=0)}for(;s--;)a(i);s=1,i=t[o]}return{c:n.subarray(0,r),n:e}},Bn=function(t,e){for(var n=0,r=0;r<e.length;++r)n+=t[r]*e[r];return n},Of=function(t,e,n){var r=n.length,i=na(e+2);t[i]=r&255,t[i+1]=r>>8,t[i+2]=t[i]^255,t[i+3]=t[i+1]^255;for(var s=0;s<r;++s)t[i+s+4]=n[s];return(i+4+r)*8},Po=function(t,e,n,r,i,s,a,o,c,l,u){Tt(e,u++,n),++i[256];for(var f=As(i,15),d=f.t,h=f.l,g=As(s,15),E=g.t,_=g.l,R=xo(d),T=R.c,w=R.n,p=xo(E),S=p.c,N=p.n,y=new We(19),F=0;F<T.length;++F)++y[T[F]&31];for(var F=0;F<S.length;++F)++y[S[F]&31];for(var x=As(y,7),v=x.t,M=x.l,H=19;H>4&&!v[_i[H-1]];--H);var G=l+5<<3,z=Bn(i,Yt)+Bn(s,ir)+a,Y=Bn(i,d)+Bn(s,E)+a+14+3*H+Bn(y,v)+2*y[16]+3*y[17]+7*y[18];if(c>=0&&G<=z&&G<=Y)return Of(e,u,t.subarray(c,c+l));var O,D,C,P;if(Tt(e,u,1+(Y<z)),u+=2,Y<z){O=dt(d,h,0),D=d,C=dt(E,_,0),P=E;var Z=dt(v,M,0);Tt(e,u,w-257),Tt(e,u+5,N-1),Tt(e,u+10,H-4),u+=14;for(var F=0;F<H;++F)Tt(e,u+3*F,v[_i[F]]);u+=3*H;for(var L=[T,S],q=0;q<2;++q)for(var ne=L[q],F=0;F<ne.length;++F){var re=ne[F]&31;Tt(e,u,Z[re]),u+=v[re],re>15&&(Tt(e,u,ne[F]>>5&127),u+=ne[F]>>12)}}else O=Mg,D=Yt,C=Hg,P=ir;for(var F=0;F<o;++F){var $=r[F];if($>255){var re=$>>18&31;Hn(e,u,O[re+257]),u+=D[re+257],re>7&&(Tt(e,u,$>>23&31),u+=ts[re]);var ce=$&31;Hn(e,u,C[ce]),u+=P[ce],ce>3&&(Hn(e,u,$>>5&8191),u+=ns[ce])}else Hn(e,u,O[$]),u+=D[$]}return Hn(e,u,O[256]),u+D[256]},Gg=new ta([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),Ff=new Pe(0),Yg=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=Gg[e-1],d=f>>13,h=f&8191,g=(1<<n)-1,E=s.p||new We(32768),_=s.h||new We(g+1),R=W.ceil(n/3),T=2*R,w=function(ee){return(t[ee]^t[ee+1]<<R^t[ee+2]<<T)&g},p=new ta(25e3),S=new We(288),N=new We(32),y=0,F=0,x=s.i||0,v=0,M=s.w||0,H=0;x+2<a;++x){var G=w(x),z=x&32767,Y=_[G];if(E[z]=Y,_[G]=z,M<=x){var O=a-x;if((y>7e3||v>24576)&&(O>423||!l)){u=Po(t,c,0,p,S,N,F,v,H,x-H,u),v=y=F=0,H=x;for(var D=0;D<286;++D)S[D]=0;for(var D=0;D<30;++D)N[D]=0}var C=2,P=0,Z=h,L=z-Y&32767;if(O>2&&G==w(x-L))for(var q=W.min(d,O)-1,ne=W.min(32767,x),re=W.min(258,O);L<=ne&&--Z&&z!=Y;){if(t[x+C]==t[x+C-L]){for(var $=0;$<re&&t[x+$]==t[x+$-L];++$);if($>C){if(C=$,P=L,$>q)break;for(var ce=W.min(L,$-2),ae=0,D=0;D<ce;++D){var Ae=x-L+D&32767,Ne=E[Ae],he=Ae-Ne&32767;he>ae&&(ae=he,Y=Ae)}}}z=Y,Y=E[z],L+=z-Y&32767}if(P){p[v++]=268435456|Ti[C]<<18|Fo[P];var Q=Ti[C]&31,Re=Fo[P]&31;F+=ts[Q]+ns[Re],++S[257+Q],++N[Re],M=x+C,++y}else p[v++]=t[x],++S[t[x]]}}for(x=W.max(x,M);x<a;++x)p[v++]=t[x],++S[t[x]];u=Po(t,c,l,p,S,N,F,v,H,x-H,u),l||(s.r=u&7|c[u/8|0]<<3,u-=7,s.h=_,s.p=E,s.i=x,s.w=M)}else{for(var x=s.w||0;x<a+l;x+=65535){var oe=x+65535;oe>=a&&(c[u/8|0]=l,oe=a),u=Of(c,u+1,t.subarray(x,oe))}s.i=a}return bf(o,0,r+na(u)+i)},Vg=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 Yg(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 xf(t,e){return Vg(t,e||{},0,0)}function Ym(t,e){return zg(t,{i:2},e&&e.out,e&&e.dictionary)}var Wg=typeof Nr<"u"&&new Nr,Xg=0;try{Wg.decode(Ff,{stream:!0}),Xg=1}catch{}async function ra(t,{password:e,prompt:n=()=>{},zipOptions:r={useWebWorkers:!0},noBlobURL:i,entries:s,pagePath:a="",excludedPaths:o,aliases:c}={}){let l={gif:"image/gif",jpg:"image/jpeg",png:"image/png",tif:"image/tiff",tiff:"image/tiff",bmp:"image/bmp",ico:"image/vnd.microsoft.icon",webp:"image/webp",svg:"image/svg+xml",avi:"video/x-msvideo",ogv:"video/ogg",mp4:"video/mp4",mpeg:"video/mpeg",ts:"video/mp2t",webm:"video/webm","3gp":"video/3gpp","3g2":"video/3gpp",mp3:"audio/mpeg",oga:"audio/ogg",mid:"audio/midi",midi:"audio/midi",opus:"audio/opus",wav:"audio/wav",weba:"audio/webm",heif:"image/heif",heic:"image/heic",avif:"image/avif",apng:"image/apng",mov:"video/quicktime",otf:"font/otf",ttf:"font/ttf",woff:"font/woff",woff2:"font/woff2",eot:"application/vnd.ms-fontobject",pdf:"application/pdf"},u=/stylesheet_[0-9]+\.css/,f=/scripts\/[0-9]+\.js/,d=/^([0-9_]+\/)?index\.html$/,h=/index\.html$/,g=/frames\//,E=/^frames\/\d+\/index.html/,_=/manifest\.json$/,R=";charset=utf-8",T=/([{}()^$&.*?/+|[\\\\]|\]|-)/g,w;if(!s){let O;t.readUint8Array?O=t:(Array.isArray(t)&&(t=new Blob([new Uint8Array(t)])),O=new zip.BlobReader(t)),w=new zip.ZipReader(O,r),s=await w.getEntries()}if(s=s.filter(O=>O.filename!="page.pdf"),c){let O=s;s=s.map(D=>{let C=c[D.filename],P=C&&O.find(Z=>Z.filename==C);return P?{filename:D.filename,comment:P.comment,encrypted:P.encrypted,uncompressedSize:P.uncompressedSize,getData:(Z,L)=>P.getData(Z,L)}:D})}a?s=s.filter(O=>O.filename.startsWith(a)):o&&(s=s.filter(O=>!o.some(D=>O.filename.startsWith(D))));let p=Object.assign({password:e},r),S,N,y,F=[],x=[],v=[];await Promise.all(s.map(async O=>{let D=O.filename.substring(a.length),C,P,Z,L,q={};if(!p.password&&O.encrypted&&(p.password=n("Please enter the password to view the page")),D.match(h)||D.match(u)||D.match(f))D.match(h)?x.push(q):v.push(q),C=new zip.TextWriter,O.uncompressedSize>0?Z=await O.getData(C,p):Z="",D.match(h)?L="text/html"+R:D.match(u)?L="text/css"+R:D.match(f)&&(L="text/javascript"+R);else{F.push(q);let ce=D.match(/\.([^.]+)/);if(ce&&ce[1]&&l[ce[1]]?L=l[ce[1]]:L="application/octet-stream",D.match(g)||i)P=await O.getData(new zip.Data64URIWriter(L),p);else{let ae=await O.getData(new zip.BlobWriter(L),p);P=URL.createObjectURL(ae)}}let ne=D.match(/^([0-9_]+\/)?(.*)$/)[2],re="",$=D.match(/(.*\/)[^/]+$/);$&&$[1]&&(re=$[1]),Object.assign(q,{prefixPath:re,filename:D,name:ne,url:O.comment,content:P,mimeType:L,textContent:Z,parentResources:[]})})),w&&await w.close(),x.sort(z),v.sort(Y),F=F.sort(z).concat(...v).concat(...x);for(let O of F){let{filename:D,prefixPath:C}=O,{textContent:P}=O;P!==void 0&&(D.match(d)&&(N=P),D.match(f)||(F.forEach(Z=>{let{filename:L,parentResources:q,content:ne}=Z;if(L.startsWith(C)&&L!=O.filename){let re=L.substring(C.length);re.match(_)||P.includes(re)&&(q.push(O.filename),Z.textContent===void 0&&(P=G(P,re,ne)))}}),O.textContent=P))}for(let O of F){let{textContent:D,prefixPath:C,filename:P}=O;if(D!==void 0){if(!P.match(f)){let Z=P;for(let L of F){let{filename:q}=L;if(q.startsWith(C)&&q!=Z){let ne=q.substring(C.length);ne.match(_)||D.indexOf(ne)!=-1&&(L.content=await M(L),D=G(D,ne,L.content))}}O.textContent=D,O.content=await M(O)}P.match(d)&&(S=D,y=O.url)}}return{docContent:S,origDocContent:N,resources:F,url:y};async function M(O){return O.filename.match(g)&&!O.filename.match(E)||i?await H(O.textContent,O.mimeType):URL.createObjectURL(new Blob([O.textContent],{type:O.mimeType}))}async function H(O,D){let C=new Blob([O],{type:D}),P=new Uint8Array(await C.arrayBuffer()),Z="";for(let L=0;L<P.length;L+=8192)Z+=String.fromCharCode(...P.subarray(L,L+8192));return("data:"+(C.type||"application/octet-stream")+";base64,"+btoa(Z)).replace(R,"")}function G(O,D,C){if(typeof O.replaceAll=="function")return O.replaceAll(D,C);{let P=new RegExp(D.replace(T,"\\$1"),"g");return O.replace(P,C)}}function z(O,D){let C=D.filename.length-O.filename.length;return C||D.filename.localeCompare(O.filename)}function Y(O,D){let C=O.filename.length-D.filename.length;return C||O.filename.localeCompare(D.filename)}}async function sa(t,e,{disableFramePointerEvents:n,inPlace:r}={}){function i(a){let o=a.doctype,c="";return o&&(c="<!DOCTYPE "+o.nodeName,o.publicId?(c+=' PUBLIC "'+o.publicId+'"',o.systemId&&(c+=' "'+o.systemId+'"')):o.systemId&&(c+=' SYSTEM "'+o.systemId+'"'),o.internalSubset&&(c+=" ["+o.internalSubset+"]"),c+=">"),c}e=e.replace(/<noscript/gi,"<template disabled-noscript"),e=e.replace(/<\/noscript/gi,"</template");let s=new DOMParser().parseFromString(e,"text/html");if(n&&s.querySelectorAll("iframe").forEach(a=>{let o="pointer-events";a.style.setProperty("-sf-"+o,a.style.getPropertyValue(o),a.style.getPropertyPriority(o)),a.style.setProperty(o,"none","important")}),r&&s.compatMode==t.compatMode&&!s.querySelector("script")){await Promise.all(Array.from(s.querySelectorAll("link[rel~=stylesheet][href]")).map(c=>new Promise(l=>{let u=t.createElement("link");u.rel="preload",u.as="style",u.href=c.getAttribute("href"),u.onload=l,u.onerror=l,t.head.appendChild(u),setTimeout(l,500)})));let a=t.documentElement,o=t.adoptNode(s.documentElement);for(;a.attributes.length;)a.removeAttribute(a.attributes[0].name);if(Array.from(o.attributes).forEach(c=>a.setAttribute(c.name,c.value)),a.replaceChildren(...o.childNodes),t.querySelector("link[rel~=stylesheet][href]")){let c=t.createElement("style");c.textContent="html{visibility:hidden}",t.head.appendChild(c);let l=Date.now();for(;Date.now()-l<500&&Array.from(t.querySelectorAll("link[rel~=stylesheet][href]")).some(u=>!u.sheet);)await new Promise(u=>setTimeout(u,10));c.remove()}}else t.open(),t.write(i(s)),t.write(s.documentElement.outerHTML),t.close();t.querySelectorAll("template[disabled-noscript]").forEach(a=>{let o=t.createElement("noscript");a.removeAttribute("disabled-noscript"),Array.from(a.attributes).forEach(c=>o.setAttribute(c.name,c.value)),o.textContent=a.innerHTML,a.parentElement.replaceChild(o,a)}),t.documentElement.setAttribute("data-sfz",""),t.querySelectorAll("link[rel*=icon]").forEach(a=>a.replaceWith(a.cloneNode(!0)))}async function Pf(t,{extract:e,display:n}){let r="pages/",i="sfz-",s="sfz-pages.json",a="sfz-toc.html",o="#sfz/",c="?toc",l="data-sfz-target",u=/:target(?![\w-])/g,f="data-sfz-visited",d=/:visited(?![\w-])/g,h="#551a8b",g="data-sfz-unarchived",E="a["+g+']::after{content:" \\2197";font-size:.75em;opacity:.7}',_="Not saved in this archive",R=["http:","https:"],T=100,{zip:w,document:p,location:S,history:N,CSS:y,URL:F,setTimeout:x,clearTimeout:v}=globalThis,M=new Map,H=new Map,G=new Map,z=new Set,Y=Math.random().toString(36).substring(2),O,D,C,P,Z=0;try{N.scrollRestoration="manual"}catch{}w.configure({useWebWorkers:!0});let q=await new w.ZipReader(t.readUint8Array?t:new w.BlobReader(t)).getEntries(),ne=q.find(A=>A.filename==s);if(!ne)throw new Error("Pages data not found");let re=JSON.parse(await ne.getData(new w.TextWriter)),$=q.find(A=>A.filename==a),{pages:ce}=re,ae=re.pageTransitions||"auto",Ae=new Map(Object.entries(re.aliases||{}));return ce.forEach(A=>{H.set(Oe(A.url),A.path),A.originalUrls&&A.originalUrls.forEach(b=>H.set(Oe(b),A.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(A=>globalThis.console.error(A))}function Q(A){if(A.type=="auxclick"&&A.button!=1)return;let b=Le(A.target);if(b&&b.href){let k=hr(b.href);if(k&&k.startsWith(o)&&Oe(b.href)==Oe(S.href))return;let se=H.get(Oe(b.href));if(se===void 0&&k&&Oe(b.href)==Oe(S.href)&&(se=O),se!==void 0)if(A.preventDefault(),A.type=="auxclick"||A.metaKey||A.ctrlKey||A.shiftKey||A.altKey)globalThis.open(Oe(S.href)+o+se+(k||""));else{let le=S.hash;S.hash=o+se+(k||""),S.hash==le&&k&&(Pt(),ze(k))}}}async function Re(){Pt(),G.set(D,on());let A=$e(),b=Xt(),{routed:k,path:se,fragment:le}=ee();k&&se!=O&&B(se)&&p.startViewTransition&&ot()&&!ct()?await p.startViewTransition(Me).updateCallbackDone:await Me();async function Me(){let Ct=await oe();Ct&&os(),cn(Ct)}function cn(Ct){if(b!==null){D=b;let ln=G.get(b);if(ln&&(Ot(ln.elements),globalThis.scrollTo(ln.x,ln.y)),le){let Ta=Ke(le);Ta&&Zt(Ta)}}else D=Ze(),Ct&&Ot(A),le?ze(le):Ct&&globalThis.scrollTo(0,0)}}async function oe(A){let{routed:b,path:k,fragment:se}=ee();if(!b&&!A||k==O||!B(k))return!1;let le=await ye(k);return O=k,await n(p,le,{inPlace:!0}),Ne(),k==c&&Xe(),z.add(k),Ue(),re.markUnarchivedLinks&&xt(),A&&(se?ze(se):!b&&S.hash&&ze(S.hash)),!0}function ee(){let A=S.hash,b=!A||A.startsWith(o),k=ce[0].path,se;return b&&A&&({path:k,fragment:se}=ue(A)),{routed:b,path:k,fragment:se}}function ue(A){let b=A.substring(o.length),k=b.indexOf("#");return{path:decodeURIComponent(k==-1?b:b.substring(0,k)),fragment:k==-1?void 0:b.substring(k)}}function B(A){return A==c?!!$:!!ce.find(b=>b.path==A)}function ye(A){if(!M.has(A)){let b=Ee(A);b.catch(()=>M.delete(A)),M.set(A,b)}return M.get(A)}async function Ee(A){if(A==c)return $.getData(new w.TextWriter);let b=q.filter(se=>be(se.filename,A)&&!Ae.has(se.filename)).concat(Be(A)),{docContent:k}=await e(null,{entries:b,pagePath:A});return k}function Be(A){return Array.from(Ae).filter(([b])=>be(b,A)).map(([b,k])=>{let se=q.find(le=>le.filename==k);return se&&{filename:b,comment:se.comment,encrypted:se.encrypted,uncompressedSize:se.uncompressedSize,getData:(le,Je)=>se.getData(le,Je)}}).filter(Boolean)}function be(A,b){return b==""?!A.startsWith(r)&&!A.startsWith(i):A.startsWith(b)}function Xe(){let A=new Map;ce.forEach(b=>A.set(new F(b.path+"index.html",Oe(S.href)).href,b.path)),p.querySelectorAll("a[href]").forEach(b=>{let k=hr(b.href),se=A.get(Oe(b.href));se!==void 0&&b.setAttribute("href",o+se+(k||""))})}function wt(A){let b=hr(A);return b&&b.startsWith(o)&&Oe(A)==Oe(S.href)?ue(b).path:H.get(Oe(A))}function Wt(A){let b=Le(A.target);if(b&&b.href){let k=wt(b.href);k!==void 0&&k!=O&&!M.has(k)&&(v(P),P=x(()=>ye(k).catch(()=>{}),T))}}function Le(A){for(;A&&A.tagName!="A";)A=A.parentNode;return A}function ot(){return ae=="fade"?!0:ae=="none"?!1:Array.from(p.styleSheets).some(A=>{try{return Se(A.cssRules)}catch{return!1}})}function Se(A){return Array.from(A).some(b=>b.navigation=="auto"||b.cssRules&&b.cssRules.length&&Se(b.cssRules))}function ct(){return!!(globalThis.matchMedia&&globalThis.matchMedia("(prefers-reduced-motion: reduce)").matches)}function Xt(){let A=N.state;return A&&A.sfzSession==Y&&typeof A.sfzEntry=="number"?A.sfzEntry:null}function Ze(){let A=Z++;try{N.replaceState({sfzSession:Y,sfzEntry:A},"")}catch{}return A}function on(){return{x:globalThis.scrollX,y:globalThis.scrollY,elements:$e()}}function $e(){let A=[];return p.querySelectorAll("*").forEach(b=>{if(b.scrollTop||b.scrollLeft){let k=Ft(b);k&&A.push({path:k,top:b.scrollTop,left:b.scrollLeft})}}),A}function Ot(A){A.forEach(({path:b,top:k,left:se})=>{let le;try{le=p.querySelector(b)}catch{}le&&(le.scrollTop=k,le.scrollLeft=se)})}function Ft(A){let b=[];for(;A&&A.parentElement;){if(A.id&&y)return b.unshift("#"+y.escape(A.id)),b.join(">");let k=A.parentElement;b.unshift(A.tagName+":nth-child("+(Array.from(k.children).indexOf(A)+1)+")"),A=k}return b.join(">")}function ze(A){let b=Ke(A);b&&(Zt(b),b.scrollIntoView())}function Ke(A){let b=decodeURIComponent(A.substring(1)),k=p.getElementById(b);return!k&&y&&(k=p.querySelector("a[name="+y.escape(b)+"]")),k}function Zt(A){let b=Fe(u,l);b&&(A.setAttribute(l,""),C=p.createElement("style"),C.textContent=b,p.head.appendChild(C))}function Ue(){let A=p.createElement("style");A.textContent="a["+f+"]{color:"+h+"}"+Fe(d,f),p.head.appendChild(A),p.querySelectorAll("a[href]").forEach(b=>{let k=wt(b.href);k!==void 0&&z.has(k)&&b.setAttribute(f,"")})}function xt(){let A=p.createElement("style");A.textContent=E,p.head.appendChild(A),p.querySelectorAll("a[href]").forEach(b=>{R.includes(b.protocol)&&H.get(Oe(b.href))===void 0&&Oe(b.href)!=Oe(S.href)&&(b.setAttribute(g,""),b.hasAttribute("title")||b.setAttribute("title",_))})}function Pt(){if(C){let A=p.querySelector("["+l+"]");A&&A.removeAttribute(l),C.remove(),C=void 0}}function Fe(A,b){let k="";return Array.from(p.styleSheets).forEach(se=>{try{k+=Er(se.cssRules,A,b)}catch{}}),k}function Er(A,b,k){let se="";return Array.from(A).forEach(le=>{if(le.cssRules&&le.cssRules.length){let Je=Er(le.cssRules,b,k);Je&&(se+=le.cssText.substring(0,le.cssText.indexOf("{")+1)+Je+"}")}else if(le.selectorText){let Je=le.selectorText.replace(b,"["+k+"]");Je!=le.selectorText&&(se+=Je+"{"+le.style.cssText+"}")}}),se}function os(){let A=p.querySelector("h1")||p.body;A&&(A.setAttribute("tabindex","-1"),A.focus({preventScroll:!0}))}function Oe(A){let b=A.indexOf("#");return b==-1?A:A.substring(0,b)}function hr(A){let b=A.indexOf("#");return b==-1?void 0:A.substring(b)}}var{Blob:aa,fetch:Zg,TextEncoder:mt,TextDecoder:Kg,DOMParser:Cf}=globalThis,Vt=new Kg("windows-1252"),qg=["application/javascript","application/x-javascript","application/ecmascript","application/json","application/ld+json","application/manifest+json","application/xml","application/xhtml+xml","application/rss+xml","application/atom+xml","image/svg+xml"],jg="text/",$g=[".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"],Jg="/lib/single-file-zip.min.js",as=[["<script type=sfz-data>","</script>"],["<style type=sfz-data>","</style>"],["<noframes>","</noframes>"],["<noembed>","</noembed>"],["<iframe>","</iframe>"],["<xmp>","</xmp>"],["<svg><![CDATA[","]]></svg>"],["<plaintext>","</plaintext>"]],ua=[["<!--","-->"],...as],Lf="sfz-data",da=[[/<script/i,/<\/script[\t\n\f\r />]/i],[/<style/i,/<\/style[\t\n\f\r />]/i],[/<noframes/i,/<\/noframes[\t\n\f\r />]/i],[/<noembed/i,/<\/noembed[\t\n\f\r />]/i],[/<iframe/i,/<\/iframe[\t\n\f\r />]/i],[/<xmp/i,/<\/xmp[\t\n\f\r />]/i],[/<!\[CDATA\[/i,/\]\]>/],[/<plaintext/i,/<\/plaintext[\t\n\f\r />]/i]],Ea=[[/<!--/i,/--!?>|<!-$/i],...da],oa=new Uint32Array(256).map((t,e)=>{let n=e;for(let r=0;r<8;r++)n=n&1?3988292384^n>>>1:n>>>1;return n}),ss=12,Uf=4,ha=8,ga=25,Gf=2,Mf=65535,Qg="page.pdf",vf=1024,Yf=12,Vf=new Uint8Array([116,69,88,116,90,73,80,0]),em=754974720,Hf=12,Bf="<!DOCTYPE html>",tm="SingleFile: the page data contains every HTML tag that could hide an embedded file, the archive was written without its",nm="PNG image",rm="PDF document",sm=67324752,im=33639248,am=101010256,om=101075792,cm=117853008,kf=2048,rs=globalThis.browser,nw=["createRootDirectory","declareAppendedData","disableCompression","embeddedImage","embeddedPdf","extractDataFromPage","includeBOM","insertCanonicalLink","insertMetaCSP","insertMetaNoIndex","insertTextBody","password","preventAppendedData","selfExtractingArchive","url","zipScript"];async function rw(t,e,n=new Date){let r,i=!!(rs&&rs.runtime&&rs.runtime.getURL);return i?Ln({workerURI:"/lib/single-file-z-worker.js"}):Ln({useWebWorkers:!1}),e.zipScript?r=e.zipScript:i&&(r=await(await Zg(rs.runtime.getURL(Jg))).text()),ma(t,e,r,s=>(t.url=e.url,t.archiveTime=new Date().toISOString(),$f(s,t,{password:e.password,disableCompression:e.disableCompression},e.createRootDirectory?String(Date.now())+"_"+(e.tabId||0)+"/":"",e.url)),n)}async function ma(t,e,n,r,i=new Date){let s={bufferedWrite:!0,keepOrder:!0,lastModDate:i,useCompressionStream:!0},a=new xn(new tn,s);await r(a);let o=await a.close();return ur(t,e,n,o,s)}async function ur(t,e,n,r,i){let{lastModDate:s}=i,a=new tn;a.init();let o,c,l,u,f;e.embeddedImage&&(e.embeddedImage=new Uint8Array(e.embeddedImage));let d;if(e.embeddedImage&&e.selfExtractingArchive&&(d=mm(t,e,s),d||jf(e,"embeddedImage",nm)),e.embeddedImage){let T=qf(e.embeddedImage);if(await ke(a.writable,e.embeddedImage.slice(0,ha+ga)),e.selfExtractingArchive)u=d.endTag,d.startHTMLData.pdfEntry&&(f=d.startHTMLData.pdfEntry,f.offset+=a.offset+Yf),await ke(a.writable,d.htmlData),await ke(a.writable,d.htmlDataCRC);else if(e.embeddedPdf){let w=new Uint8Array([...la(e.embeddedPdf.length+4),116,69,88,116,80,68,70,0,...new Uint8Array(e.embeddedPdf)]);await ke(a.writable,w),await ke(a.writable,ca(w,4))}await ke(a.writable,T),await ke(a.writable,new Uint8Array(4)),l=a.offset,await ke(a.writable,Vf),e.selfExtractingArchive&&await ke(a.writable,new mt().encode(u))}if(e.selfExtractingArchive){let T=await dm(t,a,n,e,s);o=T.extraDataOffset,f=f||T.pdfEntry}else!e.embeddedImage&&e.embeddedPdf&&await ke(a.writable,new Uint8Array(e.embeddedPdf));let h=a.offset,g=new xn({writable:a.writable,size:h},i);if(await g.appendZip(new en(r)),f&&(new DataView(f.centralRecord.buffer).setUint32(42,f.offset,!0),await ke(a.writable,f.centralRecord)),await g.close(void 0,{preventClose:!0}),f&&!um(a,f.centralRecord.length))return e.preventEmbeddedPdfEntry=!0,ur(t,e,n,r,i);let E=a.getData(),_=E.length-Gf;if(e.selfExtractingArchive){let T=[],w=-1;if(!e.extractDataFromPageTags||e.extractDataFromPageTags[0]!="<plaintext>"){let N=Vt.decode(E.subarray(h));if(e.extractDataFromPageTags){let y=Kf(e.extractDataFromPageTags),F=da[y];if(N.match(F[0])||N.match(F[1]))return fa(N,t,e,n,r,i,y+1)}else{let[y,F]=Ea[0];if(N.match(y)||N.match(F))return fa(N,t,e,n,r,i)}}if(e.extractDataFromPage){for(let N=h;N<_;N++){let y=E[N];w=w>>>8^oa[(w^y)&255],y==10?T.push(0):y==13&&(N+1<_&&E[N+1]==10?(N++,w=w>>>8^oa[(w^10)&255],T.push(2)):T.push(1))}w=(w^-1)>>>0}let p="";e.preventAppendedData||(e.extractDataFromPageTags?p+=e.extractDataFromPageTags[1]:p+="-->");let S=e.preventAppendedData||e.embeddedImage?"":"</body></html>";if(e.extractDataFromPage){let N=new Uint32Array(3+Math.ceil(T.length/16));N[0]=w,N[1]=_-h,N[2]=T.length,T.forEach((x,v)=>N[3+(v>>4)]|=x<<(v&15)*2);let y=new Uint8Array(N.length*4),F=new DataView(y.buffer);if(N.forEach((x,v)=>F.setUint32(v*4,x,!0)),c="<sfz-extra-data>"+Tm(xf(y))+"</sfz-extra-data>",e.preventAppendedData||c.length>Mf-p.length-S.length-(e.embeddedImage?ss+Uf:0)){if(!e.extraDataSize)return e.preventAppendedData=!0,e.extraDataSize=zf(c.length),ur(t,e,n,r,i)}else p+=c}p+=S,await ke(a.writable,new mt().encode(p))}await a.writable.close();let R=await a.getData();if(e.extractDataFromPage&&e.extraDataSize!==void 0)if(e.extraDataSize>=c.length)R.set(new mt().encode(c),h-o);else return e.extraDataSize=zf(c.length),ur(t,e,n,r,i);if(e.declareAppendedData){let T=R.length-E.length+(e.embeddedImage?Uf+ss:0);T&&T<=Mf&&lm(R,_,T,e)&&new DataView(R.buffer,R.byteOffset).setUint16(_,T,!0)}if(e.embeddedImage){let T=a.offset-l-4;if(e.selfExtractingArchive&&T>=em)throw new Error("SingleFile: the embedded PNG chunk is too large to be hidden from the HTML parser");return R.set(la(T),l-4),new aa([R,ca(R,l),e.embeddedImage.slice(e.embeddedImage.length-ss)],{type:"application/octet-stream"})}else return new aa([R],{type:"application/octet-stream"})}function lm(t,e,n,r){if(r.extractDataFromPageTags&&r.extractDataFromPageTags[0]=="<plaintext>")return!0;let i=t.slice(e-Hf,e+Gf);new DataView(i.buffer).setUint16(Hf,n,!0);let s=r.extractDataFromPageTags?Kf(r.extractDataFromPageTags)+1:0,[a,o]=Ea[s],c=Vt.decode(i);return!c.match(a)&&!c.match(o)}function ca(t,e=0){let n=new Uint8Array(4);return Xf(n,Wf(t,e)),n}function Wf(t,e=0){let n=-1;for(;e<t.length;e++)n=n>>>8^oa[(n^t[e])&255];return(n^-1)>>>0}function fm(t,e=new Date){let n=new mt().encode(Qg),r=Wf(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,sm,!0),o.setUint16(4,20,!0),o.setUint16(6,kf,!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,im,!0),l.setUint16(4,768,!0),l.setUint16(6,20,!0),l.setUint16(8,kf,!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 um(t,e){let n=new DataView(t.array.buffer),r=t.offset-22;if(n.getUint32(r,!0)!=am)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)==cm){if(c=Number(n.getBigUint64(o+8,!0))+e,n.getUint32(c,!0)!=om)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 Un(t){return t.toString().replace(/^[ \t]*\/\/.*$/gm,"").replace(/\n|\t/g,"")}function zf(t){return Math.ceil(t*1.01)+32}function la(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 dm(t,e,n,r,i){let s="",a;if(!r.embeddedImage){let f=Zf(t,r,i);f.pdfEntry&&(a=f.pdfEntry,a.offset+=e.offset),await ke(e.writable,f.htmlArray)}if(s+="<div id=sfz-wait-message>Please wait...</div>",r.extractDataFromPage?(s+="<div id=sfz-error-message><strong>Error</strong>: Cannot extract the data of the page.",s+=' The file is still a valid ZIP file, you can rename it with a "zip" extension and unzip it to display the page and its resources.</div>'):(s+="<div id=sfz-error-message><strong>Error</strong>: Cannot open the page from the filesystem.",s+="<ul style='line-height:20px;'>",s+=`<li style='margin-bottom:10px'><strong>Chrome/Edge/Brave</strong>: Install <a href='https://www.getsinglefile.com'>SingleFile</a> and enable the option "Allow access to file URLs" in the details page of the extension.</li>`,s+='<li><strong>Safari</strong>: Select "Security > Disable Local File Restrictions" in the "Develop > Developer settings" menu.</li></ul></div>'),t.tocContent&&(s+=t.tocContent),r.insertTextBody&&!r.password){let f=new Cf().parseFromString(t.content,"text/html");f.body.querySelectorAll("style, script, noscript").forEach(h=>h.remove());let d="";r.extractDataFromPage&&(d+=(t.title||"")+`
|
|
1
|
+
var{Array:et,Object:v,String:wa,Number:Re,BigInt:Pe,Math:X,Date:Nt,Map:mt,Set:Nr,Response:qf,URL:br,Error:S,Uint8Array:Y,Uint16Array:jf,Uint32Array:Oo,DataView:sn,Blob:In,Promise:ge,TextEncoder:_a,TextDecoder:Is,crypto:at,btoa:Ta,TransformStream:we,ReadableStream:ot,WritableStream:ct,CompressionStream:pa,DecompressionStream:Ra,navigator:Wn,Worker:Tr,setTimeout:Kr,clearTimeout:qr}=typeof globalThis<"u"?globalThis:self,me=4294967295,Z=65535,it=255,Pn=8,jn=9,bt=0,jr=99,Fo=67324752,lr=134695760,$f=808471376,xo=lr,Jf=134630224,Co=84233040,Mt=33639248,Po=101010256,Ss=101075792,yi=117853008,Sn=46,Se=22,vt=20,rt=56,Aa=Se+vt+rt,Lo=12,Uo=20,qt=4,Ht=4,$r=1,vo=39169,Mo=10,Bo=1,Ii=21589,Qf=28789,eu=25461,Ho=6534,ko=30837,zo=30805,tu=22613,nu=13,Or=1,Go=6,ru=2,su=4,iu=6,Fr=8,ya=32,Ia=64,xr=2048,Sa=8192,Cr=16,Ds=1,Ns=2,bs=4,Os=32,gn=61440,Xn=16384,Yo=40960,au=32768,Zn=73,pr=420,Fs=2048,xs=1024,Cs=512,ou=10,cu=20,Pr=45,Da=51,lu=20,Na=768,mn="/",We=30,fu=0,$n=10,fr=14,ur=18,uu=22,du=24,jt=4,ba=new Nt(2107,11,31,23,59,58),Lr=new Nt(1980,0,1),m=void 0,fn=1/0,Ot="undefined",De="function",Eu="object",Dn="string",hu="number",gu="boolean",le=new Y,mu="filenameEncoding",wu="commentEncoding",_u="decodeText",Tu="extractPrependedData",pu="extractAppendedData",Vo="password",Wo="rawPassword",Xo="passThrough",Zo="signal",Ru="checkPasswordOnly",Au="checkOverlappingEntryOnly",yu="checkOverlappingEntry",Iu="checkAmbiguity",Su="checkLocalDirectory",Du="checkSignature",Nu="checkCrc32",bu="checkAuthenticationCode",Ko="useWebWorkers",qo="useCompressionStream",jo="transferStreams",$o="preventClose",Ou="encryptionStrength",Fu="extendedTimestamp",xu="ntfsTimestamp",Cu="keepOrder",Pu="level",Lu="bufferedWrite",Uu="createTempStream",vu="dataDescriptorSignature",Mu="useUnicodeFileNames",Jo="dataDescriptor",Bu="supportZip64SplitFile",Hu="encodeText",wr="offset",Jn="usdz",ku="unixExtraFieldType",zu="localExtraField",Gu="centralExtraField",Yu="strictness",Vu="filenameValidation",Wu="normalizeFilename",Qo="maxAppendedDataSize",Xu="decryptCentralDirectory",Zu="signCentralDirectory",ec="filename",tc="comment",an="strict",Si="balanced",Gt="tolerant",Ku="Invalid option (must be a function)",qu="Invalid signal (must be an AbortSignal instance)",ju="Invalid password (password must be a string, rawPassword must be a Uint8Array)";function Di(t){if(t&&typeof t!=De)throw new S(Ku);return t}function nc(t){if(t&&(typeof t.addEventListener!=De||typeof t.aborted!=gu))throw new S(qu);return t||m}function rc(t,e){if(t&&typeof t!=Dn||e&&!(e instanceof Y))throw new S(ju)}function sc(t,e,n){if(!Re.isInteger(t)||t<0||t>e)throw new S(n)}function Gn(t,e,n){t!==m&&sc(t,e,n)}function Jr(t){return typeof t==Dn&&t.trim()?Re(t):t}var ic=64*1024,$u=64,ac=1,Ju="Invalid maxWorkers (must be an integer greater than 0)",oc=2;try{typeof Wn!=Ot&&Wn.hardwareConcurrency&&(oc=Wn.hardwareConcurrency)}catch{}var Ni={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:ic,maxWorkers:oc,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof pa!=Ot&&pa,DecompressionStream:typeof Ra!=Ot&&Ra},cc="maxWorkers",Qu=["baseURI","wasmURI","workerURI"],ed=["useCompressionStream","useWebWorkers","transferStreams"],lc=["chunkSize",cc,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],fc=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],uc=[...Qu,...ed,...lc,...fc],Qn={...Ni};function on(){return Qn}function bi(t){return dc(t.chunkSize)}function dc(t){return t=Jr(t),Re.isInteger(t)&&t>=ac?X.max(t,$u):ic}function Ln(t){v.assign(Qn,Ec(hc(t)))}function Ec(t){let e={};for(let n of uc){let r=t[n];r!==m&&(e[n]=td(n,r))}return e}function td(t,e){if(lc.includes(t)){if(e=Jr(e),t==cc&&(!Re.isInteger(e)||e<ac))throw new S(Ju)}else fc.includes(t)&&Di(e);return e}function hc(t){t=t||{};let{CompressionStreamZlib:e,DecompressionStreamZlib:n}=t;if(e===m&&n===m)return t;let r=v.assign({},t);return r.CompressionStreamFallback===m&&(r.CompressionStreamFallback=e),r.DecompressionStreamFallback===m&&(r.DecompressionStreamFallback=n),r}function nd(t){let e=Ec(hc(t));v.assign(Ni,e),v.assign(Qn,e)}function Sm(){for(let t of uc)delete Qn[t];v.assign(Qn,Ni)}function kt(t,e){let n=new Y(t.length+e.length);return n.set(t),n.set(e,t.length),n}function gc(t){return t.byteOffset||t.byteLength!=t.buffer.byteLength?new Y(t):t}function K(t){return new sn(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[Oa,rd,sd,id,ad,od,cd,ld]=Kn,$t=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 sn(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=ld[o&255]^cd[o>>>8&255]^od[o>>>16&255]^ad[o>>>24&255]^id[c&255]^sd[c>>>8&255]^rd[c>>>16&255]^Oa[c>>>24&255]}}for(;i<r;i++)n=n>>>8^Oa[(n^e[i])&255];this.crc=n}get(){return~this.crc}},Ur=class extends we{constructor(){let e,n=new $t;super({transform(r,i){n.append(r),i.enqueue(r)},flush(){let r=new Y(4);new sn(r.buffer).setUint32(0,n.get()),e.value=r}}),e=this}};function Rr(t){if(typeof _a==Ot){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 _a().encode(t)}var Ue={concat(t,e){if(t.length===0||e.length===0)return t.concat(e);let n=t[t.length-1],r=Ue.getPartial(n);return r===32?t.concat(e):Ue._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+Ue.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]=Ue.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=Ue.getPartial(i);return r.push(Ue.partial(e+s&31,e+s>32?n:r.pop(),1)),r}},vr={bytes:{fromBits(t){let n=Ue.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(Ue.partial(8*(n&3),r)),e}}},mc={};mc.sha1=class{constructor(t){let e=this;e.blockSize=512,e._init=[1732584193,4023233417,2562383102,271733878,3285377520],e._key=[1518500249,1859775393,2400959708,3395469782],t?(e._h=t._h.slice(0),e._buffer=t._buffer.slice(0),e._length=t._length):e.reset()}reset(){let t=this;return t._h=t._init.slice(0),t._buffer=[],t._length=0,t}update(t){let e=this;typeof t=="string"&&(t=vr.utf8String.toBits(t));let n=e._buffer=Ue.concat(e._buffer,t),r=e._length,i=e._length=r+Ue.bitLength(t);if(i>9007199254740991)throw new S("Cannot hash more than 2^53 - 1 bits");let s=new Oo(n),a=0;for(let o=e.blockSize+r-(e.blockSize+r&e.blockSize-1);o<=i;o+=e.blockSize)e._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),e}finalize(){let t=this,e=t._buffer,n=t._h;e=Ue.concat(e,[Ue.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=et(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 wc={};wc.aes=class{constructor(t){let e=this;e._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],e._tables[0][0][0]||e._precompute();let n=e._tables[0][4],r=e._tables[1],i=t.length,s,a,o,c=1;if(i!==4&&i!==6&&i!==8)throw new 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,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 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],h=t[2]^n[2],g=t[e?1:3]^n[3],E=4,_,R,T;for(let w=0;w<r;w++)_=a[f>>>24]^o[d>>16&255]^c[h>>8&255]^l[g&255]^n[E],R=a[d>>>24]^o[h>>16&255]^c[g>>8&255]^l[f&255]^n[E+1],T=a[h>>>24]^o[g>>16&255]^c[f>>8&255]^l[d&255]^n[E+2],g=a[g>>>24]^o[f>>16&255]^c[d>>8&255]^l[h&255]^n[E+3],E+=4,f=_,d=R,h=T;for(let w=0;w<4;w++)i[e?3&-w:w]=u[f>>>24]<<24^u[d>>16&255]<<16^u[h>>8&255]<<8^u[g&255]^n[E++],_=f,f=d,d=h,h=g,g=_;return i}};var _c={};_c.ctrGladman=class{constructor(t,e){this._prf=t,this._initIv=e,this._iv=e}reset(){this._iv=this._initIv}update(t){return this.calculate(this._prf,t,this._iv)}incWord(t){if((t>>24&255)===255){let e=t>>16&255,n=t>>8&255,r=t&255;e===255?(e=0,n===255?(n=0,r===255?r=0:++r):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=r}else t+=1<<24;return t}incCounter(t){(t[0]=this.incWord(t[0]))===0&&(t[1]=this.incWord(t[1]))}calculate(t,e,n){let r;if(!(r=e.length))return[];let i=Ue.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 Ue.clamp(e,i)}};var Jt={importKey(t){return new Jt.hmacSha1(vr.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 sn(u),d=0,h=Ue;for(e=vr.bytes.toBits(e),l=1;d<(i||1);l++){for(s=a=t.encrypt(h.concat(e,[l])),o=1;o<n;o++)for(a=t.encrypt(a),c=0;c<a.length;c++)s[c]^=a[c];for(o=0;d<(i||1)&&o<s.length;o++)f.setInt32(d,s[o]),d+=4}return u.slice(0,r/8)}};Jt.hmacSha1=class{constructor(t){let e=this,n=e._hash=mc.sha1,r=[[],[]];e._baseHash=[new n,new n];let i=e._baseHash[0].blockSize/32;t.length>i&&(t=new n().update(t).finalize());for(let s=0;s<i;s++)r[0][s]=t[s]^909522486,r[1][s]=t[s]^1549556828;e._baseHash[0].update(r[0]),e._baseHash[1].update(r[1]),e._resultHash=new n(e._baseHash[0])}reset(){let t=this;t._resultHash=new t._hash(t._baseHash[0]),t._updated=!1}update(t){let e=this;e._updated=!0,e._resultHash.update(t)}digest(){let t=this,e=t._resultHash.finalize(),n=new t._hash(t._baseHash[1]).update(e).finalize();return t.reset(),n}encrypt(t){if(this._updated)throw new S("encrypt on already updated hmac called!");return this.update(t),this.digest(t)}};var fd=typeof at!=Ot&&typeof at.getRandomValues==De,Oi="Invalid password",Tc="Invalid authentication code",Fi="zipjs-abort-check-password",ud="Crypto API not supported";function pc(t){if(fd)return at.getRandomValues(t);throw new S(ud)}var un=16,dd="raw",Rc={name:"PBKDF2"},Ed={name:"HMAC"},hd="SHA-1",gd=v.assign({hash:Ed},Rc),Ps=v.assign({iterations:1e3,hash:{name:hd}},Rc),md=["deriveBits"],er=[8,12,16],Hn=[16,24,32],yt=10,wd=[0,0,0,0],Qr=typeof at!=Ot,dr=Qr&&at.subtle,Ac=Qr&&typeof dr!=Ot,ut=vr.bytes,_d=wc.aes,Td=_c.ctrGladman,pd=Jt.hmacSha1,Fa=Qr&&Ac&&typeof dr.importKey==De,xa=Qr&&Ac&&typeof dr.deriveBits==De,Ls=class extends we{constructor({password:e,rawPassword:n,encryptionStrength:r,checkPasswordOnly:i,checkAuthenticationCode:s=!0}){super({start(){yc(this,e,n,r)},async transform(a,o){let c=this,{password:l,strength:u,resolveReady:f,ready:d}=c;l?(await Rd(c,u,l,Qe(a,0,er[u]+2)),a=Qe(a,er[u]+2),i?o.error(new S(Fi)):f()):await d;let h=new Y(a.length-yt-(a.length-yt)%un);o.enqueue(Ic(c,a,h,0,yt,!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-yt),d=Qe(l,l.length-yt),h=le;if(f.length){let _=nr(ut,f);c.update(_);let R=o.update(_);h=tr(ut,R)}let g=Qe(tr(ut,c.digest()),0,yt),E=l.length<yt?1:0;for(let _=0;_<yt;_++)E|=g[_]^d[_];if(E&&s)throw new S(Tc);a.enqueue(h)}}})}},Us=class extends we{constructor({password:e,rawPassword:n,encryptionStrength:r}){super({start(){yc(this,e,n,r)},async transform(i,s){let a=this,{password:o,strength:c,resolveReady:l,ready:u}=a,f=le;o?(f=await Ad(a,c,o),l()):await u;let d=new Y(f.length+i.length-i.length%un);d.set(f,0),s.enqueue(Ic(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=le;if(o.length){let f=s.update(nr(ut,o));a.update(f),l=tr(ut,f)}let u=tr(ut,a.digest()).slice(0,yt);i.enqueue(kt(l,u))}}})}};function yc(t,e,n,r){v.assign(t,{ready:new ge(i=>t.resolveReady=i),password:Sd(e,n),strength:r-1,pendingInput:le})}function Ic(t,e,n,r,i,s){let{ctr:a,hmac:o,pendingInput:c}=t;c.length&&(e=kt(c,e));let l=e.length-i;n=Dd(n,r+(l-l%un));let u;for(u=0;u<=l-un;u+=un){let f=nr(ut,Qe(e,u,u+un));s&&o.update(f);let d=a.update(f);s||o.update(d),n.set(tr(ut,d),u+r)}return t.pendingInput=Qe(e,u),n}async function Rd(t,e,n,r){let i=await Sc(t,e,n,Qe(r,0,er[e])),s=Qe(r,er[e]);if(i[0]!=s[0]||i[1]!=s[1])throw new S(Oi)}async function Ad(t,e,n){let r=pc(new Y(er[e])),i=await Sc(t,e,n,r);return kt(r,i)}async function Sc(t,e,n,r){t.password=null;let i=await yd(dd,n,gd,!1,md),s=await Id(v.assign({salt:r},Ps),i,8*(Hn[e]*2+2)),a=new Y(s),o=nr(ut,Qe(a,0,Hn[e])),c=nr(ut,Qe(a,Hn[e],Hn[e]*2)),l=Qe(a,Hn[e]*2);return v.assign(t,{keys:{key:o,authentication:c,passwordVerification:l},ctr:new Td(new _d(o),et.from(wd)),hmac:new pd(c)}),l}async function yd(t,e,n,r,i){if(Fa)try{return await dr.importKey(t,e,n,r,i)}catch{return Fa=!1,Jt.importKey(e)}else return Jt.importKey(e)}async function Id(t,e,n){if(xa)try{return await dr.deriveBits(t,e,n)}catch{return xa=!1,Jt.pbkdf2(e,t.salt,Ps.iterations,n)}else return Jt.pbkdf2(e,t.salt,Ps.iterations,n)}function Sd(t,e){return e===m?Rr(t):e}function Dd(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 tr(t,e){return t.fromBits(e)}function nr(t,e){return t.toBits(e)}var wn=12,vs=class extends we{constructor({password:e,rawPassword:n,passwordVerification:r,checkPasswordOnly:i}){super({start(){Dc(this,e,n,r)},transform(s,a){let o=this;if(o.password||o.rawPassword){let c=Ca(o,s.subarray(0,wn));if(o.password=o.rawPassword=null,(c[wn-1]^o.passwordVerification)!=0)throw new S(Oi);s=s.subarray(wn)}i?a.error(new S(Fi)):a.enqueue(Ca(o,s))}})}},Ms=class extends we{constructor({password:e,rawPassword:n,passwordVerification:r}){super({start(){Dc(this,e,n,r)},transform(i,s){let a=this,o,c;if(a.password||a.rawPassword){a.password=a.rawPassword=null;let l=pc(new Y(wn));l[wn-1]=a.passwordVerification,o=new Y(i.length+l.length),o.set(Pa(a,l),0),c=wn}else o=new Y(i.length),c=0;o.set(Pa(a,i),c),s.enqueue(o)}})}};function Dc(t,e,n,r){v.assign(t,{password:e,rawPassword:n,passwordVerification:r}),Nd(t,e,n)}function Ca(t,e){let n=new Y(e.length);for(let r=0;r<e.length;r++)n[r]=Nc(t)^e[r],Mr(t,n[r]);return n}function Pa(t,e){let n=new Y(e.length);for(let r=0;r<e.length;r++)n[r]=Nc(t)^e[r],Mr(t,e[r]);return n}function Nd(t,e,n){let r=[305419896,591751049,878082192];if(v.assign(t,{keys:r,crcKey0:new $t(r[0]),crcKey2:new $t(r[2])}),n)for(let i=0;i<n.length;i++)Mr(t,n[i]);else for(let i=0;i<e.length;i++)Mr(t,e.charCodeAt(i))}function Mr(t,e){let[,n]=t.keys;t.crcKey0.append([e]);let r=~t.crcKey0.get();n=La(X.imul(La(n+bc(r)),134775813)+1),t.crcKey2.append([n>>>24]);let i=~t.crcKey2.get();t.keys=[r,n,i]}function Nc(t){let e=t.keys[2]|2;return bc(X.imul(e,e^1)>>>8)}function bc(t){return t&255}function La(t){return t&4294967295}function Qt(t){if(t instanceof ot)return t;let e=t.getReader();return new ot({async pull(n){let{value:r,done:i}=await e.read();i?n.close():n.enqueue(r)},cancel(n){return e.cancel(n)}})}function en(t,e){t=Qt(t);let n=e?{type:e}:{};if(bd())return new qf(t).blob().then(i=>e?new In([i],n):i);let r=[];return t.pipeTo(new ct({write(i){r.push(i)}})).then(()=>new In(r,n))}function bd(){return typeof In.prototype.stream!=De||new In([]).stream()instanceof ot}function Od(t){if(t instanceof ct)return t;let e=t.getWriter();return new ct({write(n){return e.write(n)},close(){return e.close()},abort(n){return e.abort(n)}})}var Ua="Invalid codec definition",Fd="Reserved compression method",xd="Invalid codec module",rr="Compression method not supported",Cd=[bt,Pn,jn,jr],_n=new mt,Er=new mt;function Dm(t={}){let{compressionMethod:e,format:n,codecURI:r,CompressionStream:i,DecompressionStream:s,versionNeeded:a}=t;if(!Re.isInteger(e)||e<0||e>Z||typeof n!=Dn||!n.length)throw new S(Ua);if(Cd.includes(e))throw new S(Fd);let o=typeof i==De||typeof s==De;if(!o&&(typeof r!=Dn||!r.length))throw new S(Ua);_n.set(e,{compressionMethod:e,format:n,codecURI:r,versionNeeded:a}),o&&Fc(n,{CompressionStream:i,DecompressionStream:s})}function Nm(t){let e=_n.get(t);if(e){_n.delete(t);let n;_n.forEach(r=>n=n||r.format==e.format),n||Er.delete(e.format)}}function Oc(t){return _n.get(t)}function Pd(){return et.from(_n.values(),t=>v.assign({},t,Er.get(t.format)))}function xi(t){return Er.get(t)}function Fc(t,e){let{CompressionStream:n,DecompressionStream:r}=e;if(typeof n!=De&&typeof r!=De)throw new S(xd);Er.set(t,{CompressionStream:n,DecompressionStream:r})}async function Ld(t,e){!Er.has(t)&&e&&Fc(t,await import(e))}var es="Invalid uncompressed size",xc="Invalid compressed data",Cc="Invalid CRC32",dn="deflate-raw",Bs="deflate64-raw",Nn="gzip",Pc=10,Hs=8,Ud=[31,139,8],vd=5e3,ks=class extends we{constructor(e,{chunkSize:n,CompressionStreamFallback:r,CompressionStream:i}){super({});let{compressed:s,encrypted:a,useCompressionStream:o,zipCrypto:c,computeCrc32:l,level:u,deflate64:f,format:d,compressionMethod:h,inputSize:g}=e,E=this,_,R,T,w=super.readable,p=d&&xi(d),I=l&&s&&!f&&!p&&(!a||c)&&!!(o&&i);if((!a||c)&&l&&!I&&(_=new Ur,w=st(w,_)),s)if(p)w=Tn(w,vc(p.CompressionStream,d,{level:u,chunkSize:n,compressionMethod:h,uncompressedSize:g}));else if(I)T=new Br,w=Tn(w,new i(Nn)),w=st(w,T);else try{w=Mc(w,o,{level:u,chunkSize:n},i,r)}catch(D){let y;try{y=new i(Nn)}catch{throw D}w=Tn(w,y),w=st(w,new Br)}a&&(c?w=st(w,new Ms(e)):(R=new Us(e),w=st(w,R))),Uc(E,w,()=>{(!a||c)&&l&&(E.crc32=I?T.crc32:new sn(_.value.buffer).getUint32(0))})}},Br=class extends we{constructor(){let e,n=Pc,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<=Hs){r=kt(r,i);return}let o=a-Hs,c=X.min(o,r.length);s.enqueue(kt(r.subarray(0,c),i.subarray(0,o-c))),r=kt(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 Md(t,e,n){let r=new $t,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 Y(Pc);E.set(Ud),g.enqueue(E)},transform(g,E){E.enqueue(g)},async flush(g){s=!0,d();try{await l}finally{h()}let E=new Y(Hs),_=K(E);_.setUint32(0,r.get(),!0),_.setUint32(4,n,!0),g.enqueue(E)},cancel(g){c(g)}}),f=new we({transform(g,E){r.append(g),i+=g.length,i>=n?o():s&&d(),E.enqueue(g)},cancel(g){c(g)}});return t=st(t,u),t=Tn(t,e),st(t,f);function d(){h(),a=Kr(()=>c(new S(es)),vd)}function h(){qr(a)}}var zs=class extends we{constructor(e,{chunkSize:n,DecompressionStreamFallback:r,DecompressionStream:i}){super({});let{zipCrypto:s,encrypted:a,checkCrc32:o,crc32:c,compressed:l,useCompressionStream:u,deflate64:f,format:d,compressionMethod:h,rawBitFlag:g,outputSize:E}=e,_,R,T=super.readable;if(a&&(s?T=st(T,new vs(e)):(R=new Ls(e),T=st(T,R))),l){let w=d&&xi(d);if(w)T=Tn(T,vc(w.DecompressionStream,d,{chunkSize:n,compressionMethod:h,rawBitFlag:g,uncompressedSize:E}));else try{T=Mc(T,u,{chunkSize:n,deflate64:f},i,r)}catch(p){if(f||E===m)throw p;let I;try{I=new i(Nn)}catch{throw p}T=Md(T,I,E)}T=zd(T)}o&&(_=new Ur,T=st(T,_)),Uc(this,T,()=>{if(o){let w=new sn(_.value.buffer);if(c!=w.getUint32(0,!1))throw new S(Cc)}})}},va=new mt;function Ci(t,e){if(!t)return!1;let n=va.get(t);n||(n=new mt,va.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 Lc(t){return Ci(t,dn)}function Bd(t){return Ci(t,Nn)}function Uc(t,e,n){e=st(e,new we({flush:n})),v.defineProperty(t,"readable",{get(){return e}})}function vc(t,e,n){if(!t)throw new S(rr);return new t(e,n)}function Mc(t,e,n,r,i){let s=e&&r?r:i||r,a=n.deflate64?Bs:dn,o;try{o=new s(a,n)}catch(c){if(e&&i&&s!=i)o=new i(a,n);else throw c}return Tn(t,o)}function st(t,e){return Qt(t).pipeThrough(e)}function Tn(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 Hd(n,s),await kd(r,s)}}}async function Hd(t,e){try{await t.abort(e)}catch{}}async function kd(t,e){try{await t.cancel(e)}catch{}}function zd(t){let e=t.getReader();return new ot({async pull(n){let r;try{r=await e.read()}catch(a){if(a&&a.message)throw a;let o=new S(xc);throw o.cause=a,o}let{value:i,done:s}=r;s?n.close():n.enqueue(i)},cancel(n){return e.cancel(n)}})}var Gd=64*1024,Yd="message",Vd="start",Wd="pull",Ma="data",Xd="ack",Zd="close",Pi="deflate",Bc="inflate",Gs=class extends we{constructor(e,n){super({});let r=this,{codecType:i}=e,s;i.startsWith(Pi)?s=ks:i.startsWith(Bc)&&(s=zs),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(){v.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(es)},flush(){let{crc32:f}=o;v.assign(r,{crc32:f,inputSize:a})}});v.defineProperty(r,"readable",{get(){return c.pipeThrough(l).pipeThrough(o).pipeThrough(u)}})}},Hr=class extends we{constructor(e){let n=[],r=0;(!Re.isFinite(e)||e<1)&&(e=Gd),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}}},Li="Worker startup timeout",qn,Ui,Ys,Vs=()=>{};function Kd(t){Ys=t}async function qd(t){let{CompressionStream:e,CompressionStreamFallback:n}=t;if(n&&!n.requiresModule||Lc(e)||Bd(e))return!0;if(n)try{return await Vs(t),!0}catch{return!1}return!1}function jd(){qn=m,Ui=!1}function Ba(t){t.createWorker?Ui=!0:qn=!1}var pn=class{constructor(e,{readable:n,writable:r},{options:i,config:s,streamOptions:a,useWebWorkers:o,transferStreams:c,workerURI:l,createWorker:u},f){let{signal:d}=a;return Ui&&(u=m),v.assign(e,{busy:!0,generation:(e.generation||0)+1,readable:n.pipeThrough(new Hr(bi(s))).pipeThrough(new Ws(a),{signal:d}),writable:r,options:v.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)}}}),qn===m&&(qn=typeof Tr!=Ot),(o&&Ys&&(qn&&l||u)?Ys:Hc)(e,s)}},Ws=class extends we{constructor({onstart:e,onprogress:n,size:r,onend:i}){let s=0;super({async start(){e&&await ls(e,r)},async transform(a,o){s+=a.length,n&&await ls(n,s,r),o.enqueue(a)},async flush(){i&&await ls(i,s)}})}};async function ls(t,...e){try{await t(...e)}catch{}}function Hc(t,e){return{run:()=>Xs(t,e)}}async function Xs({options:t,readable:e,writable:n,onTaskFinished:r},i){let s;try{if(t.compressed&&!t.format){let l=t.codecType.startsWith(Pi),u=l?i.CompressionStreamFallback:i.DecompressionStreamFallback,f=l?i.CompressionStream:i.DecompressionStream;if(t.useCompressionStream){if(u&&u.requiresModule&&!Lc(f))try{await Vs(i)}catch{}}else try{await Vs(i)}catch{(!u||u.requiresModule)&&(t.useCompressionStream=!0)}}s=new Gs(t,i),await e.pipeThrough(s).pipeThrough(new Hr(bi(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 Ha={type:"module"},Zs="error",$d="messageerror",ka,fs,za,Ks=!0;try{Ks=typeof structuredClone==De&&structuredClone(new DOMException("","AbortError")).code!==m}catch{}Kd(Jd);function Jd(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=Ar(t.workerURI,n,t)}catch{return Ba(t),Hc(t,e)}v.assign(t,{worker:a,workerAlive:!1,terminated:!1,startupError:null,interface:{run:async()=>{try{return await Qd(t,{chunkSize:r,wasmURI:s,baseURI:n,workerStartupTimeout:i})}catch(o){if(o&&o.workerStartupFailed)return Ba(t),Ga(t),Xs(t,e);if(o&&o.codecImportFailed){if(t.reader)return Ga(t),Xs(t,e);t.onTaskFinished()}throw o}}}})}return t.interface}async function Qd(t,e){if(!t.worker){let{startupError:h}=t;t.startupError=null;let g=h||new S(Li);throw g.workerStartupFailed=!0,g}let n,r,i=new ge((h,g)=>{n=h,r=g});v.assign(t,{reader:null,writer:null,resolveResult:n,rejectResult:r,result:i});let{readable:s,options:a}=t,{writable:o,closed:c,abortPipe:l}=eE(t.writable),u;try{u=qs({type:Vd,options:a,config:e,readable:s,writable:o},t)}catch(h){l();try{await c}catch{}throw t.onTaskFinished(),h}u||v.assign(t,{reader:s.getReader(),writer:o.getWriter()});let{workerStartupTimeout:f}=e;!t.workerAlive&&Re.isFinite(f)&&f>=0&&(t.startupTimeout=Kr(()=>tE(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 eE(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 Ga(t){let{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function vi(t){let{worker:e}=t;if(e)try{e.terminate()}catch{}t.interface=null}function Ar(t,e,n,r,i=!0){let{createWorker:s}=n,a,o,c;if(s)a=s();else if(fs===m||ka!==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=Ha);try{a=new Tr(o,c)}catch(d){if(f)try{br.revokeObjectURL(o)}catch{}if(l&&f)return Ar(t,e,n,r,!1);if(r)throw d;return Ar(t,e,n,!0,!1)}}else{r===m&&(r=!0),r&&(c=Ha);try{o=new br(o,e)}catch{}try{a=new Tr(o,c)}catch(d){if(r)return Ar(t,e,n,!1,i);throw d}}ka=t,fs=o,za=c}else a=new Tr(fs,za);return a.addEventListener(Yd,l=>{n.workerAlive=!0,kc(n),nE(l,n)}),a.addEventListener(Zs,l=>Ya(l,n)),a.addEventListener($d,l=>Ya(l,n)),a}function tE(t){if(t.startupTimeout=null,t.workerAlive)return;let{rejectResult:e,writer:n}=t;if(vi(t),t.worker=null,e){let r=new S(Li);r.workerStartupFailed=!0,e(r),n&&n.releaseLock()}}function kc(t){let{startupTimeout:e}=t;e&&(qr(e),t.startupTimeout=null)}function Ya(t,e){t.preventDefault&&t.preventDefault(),kc(e);let{workerAlive:n,rejectResult:r,writer:i,onTaskFinished:s}=e;vi(e),n||(e.worker=null);let a=t.error||new S(t.message||Zs);n||(a=v.assign(new S(a.message||Zs),{workerStartupFailed:!0}),e.startupError=a),r&&(r(a),i&&i.releaseLock(),n&&s())}function qs(t,{worker:e,writer:n,transferStreams:r,workerAlive:i}){try{let{value:s,readable:a,writable:o}=t,c=[];if(s&&(t.value=gc(s),c.push(t.value.buffer)),r&&Ks&&i?(a&&c.push(a),o&&c.push(o)):t.readable=t.writable=null,c.length)try{return e.postMessage(t,c),!0}catch{Ks=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(s){throw n&&n.releaseLock(),s}}async function nE({data:t},e){let{type:n,value:r,messageId:i,result:s,error:a}=t,{reader:o,writer:c,resolveResult:l,rejectResult:u,onTaskFinished:f,generation:d}=e,h=()=>e.generation!=d;try{if(a){let{message:E,stack:_,code:R,name:T,outputSize:w,cause:p,codecImportFailed:I}=a,D=new S(E);v.assign(D,{stack:_,code:R,name:T,outputSize:w}),p&&(D.cause=v.assign(new S(p.message),{name:p.name})),I&&(D.codecImportFailed=!0),g(D)}else{if(n==Wd){let{value:E,done:_}=await o.read();h()||qs({type:Ma,value:E,done:_,messageId:i},e)}n==Ma&&(await c.ready,await c.write(new Y(r)),h()||qs({type:Xd,messageId:i},e)),n==Zd&&g(null,s)}}catch(E){h()||(vi(e),g(E))}function g(E,_){h()||(E?u(E):l(_),c&&c.releaseLock(),E&&E.codecImportFailed||f())}}var Bt=[],Rn=[],An,yr,Va=0;async function zc(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=rE(d,r.baseURI)),await Ld(f,n.codecURI)),e.transferStreams=!f&&(i||i===m&&r.transferStreams);let _=!o&&!c&&!l&&!u,R=f===m||!!n.codecURI;return e.useWebWorkers=!_&&R&&(s||s===m&&r.useWebWorkers),e.workerURI=e.useWebWorkers&&h?h:m,e.createWorker=e.useWebWorkers&&g?g:m,n.useCompressionStream=a||a===m&&r.useCompressionStream,(await T()).run();async function T(){let p=Bt.find(I=>!I.busy);if(p)return js(p),new pn(p,t,e,w);if(Bt.length<E){let I={indexWorker:Va};return Va++,Bt.push(I),new pn(I,t,e,w)}else return new ge(I=>{Rn.push({resolve:I,stream:t,workerOptions:e}),yr=r.workerStarvationTimeout,kr()})}function w(p){if(Gc(),Rn.length){let[{resolve:I,stream:D,workerOptions:y}]=Rn.splice(0,1);I(new pn(p,D,y,w)),kr()}else p.worker?(js(p),aE(p,e)):Bt=Bt.filter(I=>I!=p)}}function rE(t,e){try{return new br(t,e).toString()}catch{return t}}function kr(){!An&&Rn.length&&Re.isFinite(yr)&&yr>=0&&(An=Kr(sE,yr))}function Gc(){An&&(qr(An),An=null)}function sE(){if(An=null,Rn.length){let[{resolve:t,stream:e,workerOptions:n}]=Rn.splice(0,1),r=v.assign({},n,{useWebWorkers:!1,workerURI:m,createWorker:m});t(new pn({},e,r,iE)),kr()}}function iE(){Gc(),kr()}function aE(t,e){let{config:n}=e,{terminateWorkerTimeout:r}=n;Re.isFinite(r)&&r>=0&&(t.terminated?t.terminated=!1:t.terminateTimeout=Kr(async()=>{Bt=Bt.filter(i=>i!=t);try{await t.terminate()}catch{}},r))}function js(t){let{terminateTimeout:e}=t;e&&(qr(e),t.terminateTimeout=null)}async function bm(){await ge.allSettled(Bt.map(t=>(js(t),t.terminate()))),jd()}var oE="\0\u263A\u263B\u2665\u2666\u2663\u2660\u2022\u25D8\u25CB\u25D9\u2642\u2640\u266A\u266B\u263C\u25BA\u25C4\u2195\u203C\xB6\xA7\u25AC\u21A8\u2191\u2193\u2192\u2190\u221F\u2194\u25B2\u25BC !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0".split("");function cE(t){let e="";for(let n=0;n<t.length;n++)e+=oE[t[n]];return e}function Ir(t,e){return Yc(t,e,!0)}function lE(t,e){return Yc(t,e,!1)}function Yc(t,e,n){return e&&e.trim().toLowerCase()=="cp437"?cE(t):new Is(e,{ignoreBOM:n}).decode(t)}var Vc="HTTP error ",St="HTTP Range not supported",Wa="HTTP resource changed",fE="Writer iterator completed too soon",uE="Writer not initialized",dE="text/plain",EE="Content-Length",hE="Content-Encoding",Mi="Content-Range",gE="Accept-Ranges",mE="Range",wE="Etag",_E="Last-Modified",TE="HEAD",ts="GET",Wc="bytes",pE=256*1024,RE=16*1024*1024,Bi="writable",Xa=Symbol(),bn=class{constructor(){this.size=0}init(){this.initialized=!0}},ht=class extends bn{get readable(){return this.createReadable()}createReadable({offset:e=0,size:n,chunkSize:r=bi(on())}={}){let i=this,s=0;return r=dc(r),new ot({async pull(a){let o=n===m?r:X.min(r,n-s),c=await Te(i,e+s,o);c.length&&a.enqueue(c),s+r>=n||!c.length&&o?a.close():s+=r}})}},zr=class extends bn{constructor(){super();let e=this,n=new ct({write(r){if(!e.initialized)throw new S(uE);return e.writeUint8Array(gc(r))}});v.defineProperty(e,Bi,{get(){return n}})}writeUint8Array(){}},Za=class extends ht{constructor(e){super();let n=e.length;for(;e.charAt(n-1)=="=";)n--;let r=e.indexOf(",")+1;v.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}},Ka=class extends zr{constructor(e){super(),v.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+=wa.fromCharCode(e[r]);for(;r<e.length;r++)n.pendingCharacters+=wa.fromCharCode(e[r]);i.length>2?n.data+=Ta(i):n.pendingCharacters=i+n.pendingCharacters}getData(){return this.data+Ta(this.pendingCharacters)}},$s,Xc;function AE(){Xc=(async()=>{try{let e=new In([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();$s=n==1}catch{$s=!1}})()}var Ft=class extends ht{constructor(e){super(),v.assign(this,{sourceBlob:e,size:e.size}),Xc||AE()}createReadable(e){let n=this,{sourceBlob:r,size:i}=n,{offset:s=0,size:a=i-s}=e||{};return!s&&a>=i?Qt(r.stream()):$s?Qt(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)}},Js=class extends bn{constructor(e){super();let n=this,r=new we;v.defineProperty(n,Bi,{get(){return r.writable}}),n.contentType=e,n.blobPromise=en(r.readable,e),n.blobPromise.catch(()=>{})}getData(){return this.blobPromise}},Yt=class extends Ft{constructor(e){super(new In([e],{type:dE}))}},qa=class extends Js{constructor(e){super(),v.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():lE(new Y(await r.arrayBuffer()),e)}},Qs=class extends ht{constructor(e,n){super(),Zc(this,e,n)}async init(){await Kc(this,Gr,ja),super.init()}createReadable(e){let n=this,{useRangeHeader:r,forceRangeRequests:i,size:s}=n;if((r||i)&&s!==m){let{offset:a=0,size:o=s-a}=e||{};if(o>0&&a<s)return yE(n,a,X.min(o,s-a))}return super.createReadable(e)}readUint8Array(e,n){return qc(this,e,n,Gr,ja)}},ei=class extends ht{constructor(e,n){super(),Zc(this,e,n)}async init(){await Kc(this,ti,$a),super.init()}readUint8Array(e,n){return qc(this,e,n,ti,$a)}};function Zc(t,e,n){let{preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:o=!0,maximumRangeSize:c=RE,fetch:l}=n;n=v.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,v.assign(t,{url:e,options:n,preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:o,maximumRangeSize:c,fetch:l})}async function Kc(t,e,n){let{url:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o}=t;if(IE(r)&&(s||a)&&(typeof i==Ot||i)){let c=await e(ts,t,ki(t,o?-Se:void 0)),l=c.headers.get(gE);if(!a&&(!l||l.toLowerCase()!=Wc))throw new S(St);{if(o){let f=new Y(await c.arrayBuffer());c.status==206&&f.length==Se&&(t.eocdCache=f)}Hi(t,c);let u=jc(c);u===m?await Ja(t,e,n):t.size=u}}else await Ja(t,e,n)}async function qc(t,e,n,r,i){let{useRangeHeader:s,forceRangeRequests:a,eocdCache:o,size:c,options:l}=t;if(s||a){if(o&&e==c-Se&&n==Se)return o;if(e>=c||n===0)return le;{e+n>c&&(n=c-e);let u=await r(ts,t,ki(t,e,n));if(u.status!=206)throw new S(St);let f=u.headers.get(Mi);if(f){let h=Re(f.trim().split(/[\s-]+/)[1]);if(!Re.isNaN(h)&&h!=e)throw new S(St)}Jc(t,u),Hi(t,u);let d=new Y(await u.arrayBuffer());if(d.length!=n)throw new S(St);return d}}else{let{data:u}=t;return u||await i(t,l),t.data.subarray(e,e+n)}}function yE(t,e,n){let r,i=e,s=0,a=n;return new ot({start(){return o()},async pull(l){r||await o();let{value:u,done:f}=await r.read();if(f)throw new S(St);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 Gr(ts,t,ki(t,i,l));if(u.status!=206)throw new S(St);let f=u.headers.get(Mi);if(f){let d=Re(f.trim().split(/[\s-]+/)[1]);if(!Re.isNaN(d)&&d!=i)throw new S(St)}Jc(t,u),Hi(t,u),i+=l,s=l,r=u.body.getReader()}async function c(){let l=r;r=m,await l.cancel()}}function jc(t){let e=t.headers.get(Mi);if(e){let n=e.trim().split(/\s*\/\s*/)[1];if(n&&n!="*"){let r=Re(n);if(!Re.isNaN(r))return r}}}function $c({headers:t}){return{etag:t.get(wE)||m,lastModified:t.get(_E)||m}}function Hi(t,e){let{checkResourceChanges:n,resourceValidators:r}=t;n&&!r&&e.status==206&&(t.resourceValidators=$c(e))}function Jc(t,e){let{checkResourceChanges:n,resourceValidators:r,size:i}=t;if(n){let s=jc(e);if(s!==m&&i!==m&&s!=i)throw new S(Wa);if(r){let a=$c(e);if(v.entries(r).some(([c,l])=>l!==m&&a[c]!==m&&l!=a[c]))throw new S(Wa)}}}function ki(t,e=0,n=1){return v.assign({},zi(t),{[mE]:Wc+"="+(e<0?e:e+"-"+(e+n-1))})}function zi({options:t}){let{headers:e}=t;if(e)return Symbol.iterator in e?v.fromEntries(e):e}async function ja(t){await Qc(t,Gr)}async function $a(t){await Qc(t,ti)}async function Qc(t,e){let n=await e(ts,t,zi(t));t.data=new Y(await n.arrayBuffer()),t.size=t.data.length}async function Ja(t,e,n){if(t.preventHeadRequest)await n(t,t.options);else{let r=await e(TE,t,zi(t)),i=r.headers.get(EE);i&&!r.headers.get(hE)?t.size=Re(i):await n(t,t.options)}}async function Gr(t,{fetch:e=fetch,options:n,url:r},i){let s=await e(r,v.assign({},n,{method:t,headers:i}));if(s.status<400)return s;throw s.status==416?new S(St):new S(Vc+(s.statusText||s.status))}function ti(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 mt(a)})}else i(s.status==416?new S(St):new S(Vc+(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 v.entries(n))s.setRequestHeader(a[0],a[1]);s.responseType="arraybuffer",s.send()})}var ni=class extends ht{constructor(e,n={}){super(),v.assign(this,{url:e,reader:n.useXHR&&!n.fetch?new ei(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)}},Qa=class extends ni{constructor(e,n={}){super(e,v.assign({},n,{useRangeHeader:!0}))}},tn=class extends ht{constructor(e){super(),e=new Y(e.buffer,e.byteOffset,e.byteLength),v.assign(this,{array:e,size:e.length})}readUint8Array(e,n){return this.array.slice(e,e+n)}},nn=class extends zr{constructor(e){super(),this.defaultBufferSize=e||pE}init(e=0){v.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)}},ri=class extends ht{constructor(e){super(),this.readers=e}async init(){let e=this;e.lastDiskNumber=0;let n=e.readers=await ge.all(e.readers.map(SE));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 Te(c,o,n);else{let u=l-o,f=await Te(c,o,u),d=await r.readUint8Array(e+u,n-u);s=kt(f,d)}}else s=le;return r.lastDiskNumber=X.max(a,r.lastDiskNumber),s}},si=class extends bn{constructor(e,n=4294967295){super();let r=this;v.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:n,availableSize:n});let i,s,a,o=new ct({async write(f){if(f===Xa){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 S(fE);i=h,i.size=0,i.maxSize&&(r.maxSize=i.maxSize),r.availableSize=r.maxSize,await ve(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)}});v.defineProperty(r,Bi,{get(){return o}});async function c(f){let d=f.length;d&&(await a.ready,await a.write(f),i.size+=d,r.availableSize-=d)}async function l(){await u(),r.diskOffset+=i.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function u(){await a.close()}}async closeDisk(){let e=this.writable.getWriter();try{await e.ready,await e.write(Xa)}finally{e.releaseLock()}}},rn=class{constructor(e){return et.isArray(e)&&(e=new ri(e)),(e instanceof ot||typeof e.getReader==De)&&(e={readable:Qt(e)}),e}},Yr=class{constructor(e){return e.writable===m&&typeof e.next==De&&(e=new si(e)),(e instanceof ct||typeof e.getWriter==De)&&(e={writable:Od(e)}),e.size===m&&(e.size=0),e}};function el(t){return!!(t&&t.getData)}function IE(t){let{baseURI:e}=on(),{protocol:n}=new br(t,e);return n=="http:"||n=="https:"}async function ve(t,e){if(t.init&&!t.initialized)await t.init(e);else return ge.resolve()}async function SE(t){return t=new rn(t),await ve(t),(t.size===m||!t.readUint8Array)&&(t=new Ft(await en(t.readable)),await ve(t)),t}function Te(t,e,n){return t.readUint8Array(e,n)}function tl(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?ht.prototype.createReadable.call(t,e):t.readable}var nl="filename",rl="rawFilename",Gi="comment",sl="rawComment",Yi="uncompressedSize",il="compressedSize",al="offset",ol="diskNumberStart",Vr="lastModDate",Wr="rawLastModDate",Vi="lastAccessDate",cl="rawLastAccessDate",Wi="creationDate",ll="rawCreationDate",fl="internalFileAttributes",ul="externalFileAttributes",dl="msdosAttributesRaw",El="msdosAttributes",hl="msDosCompatible",Xi="zip64",gl="encrypted",ml="version",wl="versionMadeBy",_l="zipCrypto",yn="directory",Tl="executable",DE="symlink",pl="compressionMethod",ii="signature",NE="crc32",Zi="extraField",bE="extraFieldInfoZip",OE="extraFieldUnix",FE="extraFieldUnixType1",xE="extraFieldPkwareUnix",Rl="uid",Al="gid",yl="unixMode",Il="setuid",Sl="setgid",Dl="sticky",CE="bitFlag",PE="rawBitFlag",LE="filenameLength",UE="extraFieldLength",vE="unixExternalUpper",ME="filenameUTF8",BE="commentUTF8",HE="rawExtraField",kE="extraFieldZip64",zE="extraFieldUnicodePath",GE="extraFieldUnicodeComment",YE="extraFieldAES",VE="extraFieldNTFS",WE="extraFieldExtendedTimestamp",XE="extraFieldUSDZ",ZE=[nl,rl,Yi,il,Vr,Wr,Gi,sl,Vi,cl,Wi,ll,al,ol,fl,ul,dl,El,hl,Xi,gl,ml,wl,_l,yn,Tl,DE,pl,ii,NE,Zi,OE,bE,FE,xE,Rl,Al,yl,vE,Il,Sl,Dl,CE,PE,LE,UE,ME,BE,HE,kE,zE,GE,YE,VE,WE,XE],On=class{constructor(e){ZE.forEach(n=>this[n]=e[n])}},Yn="File format is not recognized",Nl="End of central directory not found",bl="End of Zip64 central directory locator not found",Ol="Central directory header not found",Fl="Local file header not found",xl="Zip64 extra field not found",Cl="File contains encrypted entry",ai="Encryption method not supported",oi="Split zip file",Pl="Overlapping entry found",Ll="Entry data out of bounds",Ul="Ambiguous archive",vl="Encrypted central directory is not supported",Ml="Unsafe filename",Bl="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",Hl="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",kl="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",zl="64-bit value exceeds Number.MAX_SAFE_INTEGER",Gl="unsorted central directory",Yl="unknown version needed to extract",Vl="compressed patched data",Ki="malformed extra field",Wl="unknown zip64 extensible data",ci="wrapped entries count",li="appended data",fi="prepended data",Xl="prepended central directory",Zl="trailing central directory data",Kl="duplicate filename",Vn="mismatched zip64 end of central directory record",ql="mismatched local file header (general purpose bit flag)",jl="mismatched local file header (compression method)",$l="mismatched local file header (crc32 or sizes)",KE=63,qE=/^[a-zA-Z]:/,eo="utf-8",jE="UTF8",to="cp437",no=Or|Fr|xr,Jl=1,$E=[[Yi,me],[il,me],[al,me],[ol,Z]],ro={[Z]:{getValue:q,bytes:4},[me]:{getValue:Ye,bytes:8}},JE=Pe(Re.MAX_SAFE_INTEGER),QE=64,eh=1032,so=0,qi=1,Xr=2,Fn=class{constructor(e,n={}){v.assign(this,{reader:new rn(e),options:n,readRanges:new mt})}async*getEntriesGenerator(e={}){let n=this,{reader:r}=n;if(await ve(r),(r.size===m||!r.readUint8Array)&&(r=new Ft(await en(r.readable)),await ve(r)),r.size<Se)throw new S(Yn);let i=n.warnings=[],s=ji(e,n.options),a=s==an,o=s!=Gt,c=rf(pe(n,e,Qo),s),l=hh(pe(n,e,Vu),s),u=pe(n,e,Wu),{endOfDirectoryInfo:f,endOfDirectoryReachingEndCount:d}=await sf(r,o,c);if(!f)throw await lh(r)?new S(oi):new S(Nl);o&&d>1&&Sr("multiple end of central directory records");let h=K(f),g=q(h,12),E=q(h,16),_=f.offset,R=se(h,20),T=_+Se+R,w=r.size-T;w>c&&Sr(li),w>0&&Je(i,li);let p=se(h,4),I=r.lastDiskNumber||0,D=se(h,6),y=se(h,10),O=0,P,U,M,B,V=rt,k,W=E==me||g==me||y==Z||D==Z;if(E!=me&&D!=Z&&(E+=En(r,D)),W){let te=f.offset>=vt?await Te(r,f.offset-vt,vt):le,G=K(te);if(te.length==vt&&q(G,0)==yi){E=En(r,q(G,4))+Ye(G,8);let ye=await Te(r,E,rt),de=K(ye),Le=f.offset-vt-rt;if((ye.length<rt||q(de,0)!=Ss)&&E!=Le&&Le>=0){let Oe=E;E=Le,E>Oe&&(O=E-Oe),ye=await Te(r,E,rt),de=K(ye)}if(ye.length<rt||q(de,0)!=Ss)throw new S(bl);if(M=!0,B=Ye(de,4)>rt-12,B){let Oe=X.min(Ye(de,4)-(rt-12),r.size-E-rt);if(Oe>0){V+=Oe;let Ze=await Te(r,E+rt,Oe);k=rh(Ze)}}p==Z?p=q(de,16):p!=q(de,16)&&ft(a,i,Vn),D==Z?D=q(de,20):D!=q(de,20)&&ft(a,i,Vn),y==Z?y=Ye(de,32):y!=Ye(de,32)&&ft(a,i,Vn),g==me?g=Ye(de,40):g!=Ye(de,40)&&ft(a,i,Vn),E=En(r,D)+Ye(de,48)+O}}let b=g,x=f.offset-(M?V+vt:0);if(E>=r.size&&(O=r.size-E-g-Se,E=r.size-g-Se),I!=p)throw new S(oi);if(E<0)throw new S(Yn);let C=0,F=await Te(r,E,g),H=K(F);if(g){if(F.length<4)throw new S(Yn);let te=x-g;if(E!=te&&D==p){let G=q(H,C)==Mt||!!(k&&k.compressedSize)||us(H),ye=!G;if(!ye&&te>=0&&te+4<=r.size){let de=await Te(r,te,4);ye=q(K(de),0)==Mt}if(ye){let de=E;E=te,E>de&&(O+=E-de,P=G),F=await Te(r,E,g),H=K(F)}}}let L=x-E;if(g!=L&&L>=0&&D==p&&(g=L,F=await Te(r,E,g),H=K(F)),E<0||E>=r.size)throw new S(Yn);n.directoryOffset=E,n.directoryLength=b;let Q=ho(n,e,Xu),j,ee;if(Q&&y&&F.length>=4&&q(H,0)!=Mt&&(B||us(H))){let te=nh(k,b,F.length);ee=F.subarray(te),F=await Q(F.subarray(0,te),k),H=K(F),b=F.length,j=!0}k&&!j&&(F.length<4||q(H,0)==Mt)&&Je(i,Wl),U=E;let $=pe(n,e,mu),fe=pe(n,e,wu),oe=new Nr,Ae,Ne=-1,he=!a&&!M;!y&&he&&(y=io(H,F,C),y&&Je(i,ci));for(let te=0;te<y;te++){let G=new di(r,n.options);if(C+Sn>F.length||q(H,C)!=Mt)throw te==0&&!j&&(B||us(H))?new S(vl):new S(Ol);Ql(G,H,C+6);let ye=!!G.bitFlag.languageEncodingFlag,de=C+Sn,Le=de+G.filenameLength,Oe=Le+G.extraFieldLength,Ze=se(H,C+4),Ct=Ze>>8==0,Ge=Ze>>8==3,tt=F.subarray(de,Le),Ie=se(H,C+32),_t=Oe+Ie,Pt=F.subarray(Oe,_t),Ke=ye,cn=ye,Xt=q(H,C+38),qe=Xt&it,Tt={readOnly:!!(qe&Ds),hidden:!!(qe&Ns),system:!!(qe&bs),directory:!!(qe&Cr),archive:!!(qe&Os)},je=q(H,C+42),$e=ho(n,e,_u)||Ir,Zt=Ke?eo:$||to,ln=cn?eo:fe||to,xe=$e(tt,Zt,ec);if(xe===m&&(xe=Ir(tt,Zt)),u){let ke=u(xe);ke!==m&&(xe=ke)}if(gh(xe,l)){let ke=new S(Ml);throw ke.filename=xe,ke}let Lt=$e(Pt,ln,tc);Lt===m&&(Lt=Ir(Pt,ln)),v.assign(G,{index:te,decryptedDirectory:j,versionMadeBy:Ze,msDosCompatible:Ct,zip64:!1,compressedSize:0,uncompressedSize:0,commentLength:Ie,offset:je,diskNumberStart:se(H,C+34),internalFileAttributes:se(H,C+36),externalFileAttributes:Xt,msdosAttributesRaw:qe,msdosAttributes:Tt,rawFilename:tt,filenameUTF8:Ke,commentUTF8:cn,rawExtraField:F.subarray(Le,Oe),rawComment:Pt,filename:xe,comment:Lt}),ef(G,G,H,C+6)&&Je(i,Ki,xe),G.offset+=O;let Be=En(r,G.diskNumberStart)+G.offset;U=X.min(Be,U),Be<Ne&&Je(i,Gl,xe),Ne=Be,(G.version&it)>KE&&Je(i,Yl,xe),(G.rawBitFlag&ya)==ya&&Je(i,Vl,xe),oe.has(G.filename)&&(Ae=!0),oe.add(G.filename);let pt=G.externalFileAttributes>>16&Z;G.unixMode===m&&(pt&(pr|Zn|Xn))!=0&&(G.unixMode=pt);let cs=!!(G.unixMode&Fs),be=!!(G.unixMode&xs),Mn=!!(G.unixMode&Cs),N=((G.unixMode===m?pt:G.unixMode)&gn)==Yo,z=!N&&(G.unixMode!==m?(G.unixMode&Zn)!=0:Ge&&(pt&Zn)!=0),re=G.unixMode!==m&&(G.unixMode&gn)==Xn,Ee=(pt&gn)==Xn;v.assign(G,{setuid:cs,setgid:be,sticky:Mn,symlink:N,unixExternalUpper:pt,executable:z,directory:re||Ee||Ct&&Tt.directory||G.filename.endsWith(mn),zipCrypto:G.encrypted&&!G.extraFieldAES});let He=new On(G);if(He.getData=(ke,lt)=>G.getData(ke,He,n.readRanges,lt),He.arrayBuffer=async ke=>{let lt=new we,Kt=en(lt.readable).then(mr=>mr.arrayBuffer());return Kt.catch(()=>{}),await G.getData(lt,He,n.readRanges,ke),Kt},C=_t,te==y-1&&he){let ke=io(H,F,C);ke&&(y+=ke,Je(i,ci))}let{onprogress:Bn}=e;if(Bn)try{await Bn(te+1,y,new On(G))}catch{}yield He}let ie=C,_e=ds(F.subarray(C))||(j?ds(ee):m);if(!_e&&!j){let te=E+C,G=X.min(x-te,6+Z);G>=6&&(_e=ds(await Te(r,te,G)))}_e&&(n.digitalSignature=_e,ie=C+6+_e.length),(C!=b&&ie!=b||!j&&C!=g&&ie!=g)&&ft(a,i,Zl),Ae&&ft(a,i,Kl);let ae=pe(n,e,Tu),ce=pe(n,e,pu),Me=(a||ae)&&y&&U==Ht&&await fh(r)?Ht:0;return a&&(O||y&&U>Me)&&Sr(fi),(O||y&&U>Ht)&&Je(i,fi),P&&Je(i,Xl),ae&&(n.prependedData=U>Me?await Te(r,Me,U-Me):le),n.comment=R?await Te(r,_+Se,R):le,ce&&(n.appendedData=T<r.size?await Te(r,T,r.size-T):le),!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()}},ui=class{constructor(e={}){let{readable:n,writable:r}=new we,i=new Fn(n,e).getEntriesGenerator();this.readable=new ot({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 th(t,e={}){if(t=new rn(t),await ve(t),(t.size===m||!t.readUint8Array)&&(t=new Ft(await en(t.readable)),await ve(t)),t.size<Se)return!1;let n=ji(e,{}),r=n!=Gt,i=rf(e[Qo],n),{endOfDirectoryInfo:s,endOfDirectoryReachingEndCount:a}=await sf(t,r,i);if(!s||n==an&&a>1)return!1;let o=se(K(s),20),c=s.offset+Se+o;return t.size-c<=i}var di=class{constructor(e,n){v.assign(this,{reader:e,options:n})}async getData(e,n,r,i={}){let s=this,a=on(),{reader:o,index:c,offset:l,diskNumberStart:u,extraFieldAES:f,extraFieldZip64:d,compressionMethod:h,bitFlag:g,rawBitFlag:E,crc32:_,rawLastModDate:R,uncompressedSize:T,compressedSize:w}=s,{dataDescriptor:p}=g,I=n.localDirectory={},D=n.warnings=[],y=En(o,u)+l,O=await Te(o,y,We),P=K(O),U=pe(s,i,Vo),M=pe(s,i,Wo),B=pe(s,i,Xo);if(rc(U,M),U=U&&U.length&&U,M=M&&M.length&&M,f&&f.originalCompressionMethod!=jr)throw new S(rr);if(O.length<We||q(P,0)!=Fo)throw new S(Fl);Ql(I,P,4);let{extraFieldLength:V,filenameLength:k}=I,W=I.dataOffset=y+We+k+V,b=pe(s,i,Su),x=ji(i,s.options),C=dh(b,x),F=Eh(b,x),H=le;if(F&&(k||V)){let Ie=await Te(o,y+We,k+V);H=Ie.subarray(0,k),I.rawExtraField=Ie.subarray(k)}else I.rawExtraField=V?await Te(o,y+We+k,V):le;F&&(I.rawFilename=H),ef(s,I,P,4,!0)&&Je(D,Ki),wh(s,I,H,F,C?m:D);let{lastAccessDate:L,creationDate:Q,uid:j,gid:ee}=I;L&&(n.lastAccessDate=L),Q&&(n.creationDate=Q),j!==m&&n.uid===m&&(n.uid=j),ee!==m&&n.gid===m&&(n.gid=ee);let $=s.encrypted&&I.encrypted&&!B,fe=$&&!f;if(B||(n.zipCrypto=fe),$&&(I.rawBitFlag&Ia)==Ia)throw new S(ai);let oe=B?m:Oc(h);if(h!=bt&&h!=Pn&&h!=jn&&!oe&&!B)throw new S(rr);if($){if(!fe&&(f.strength<1||f.strength>3))throw new S(ai);if(!U&&!M)throw new S(Cl)}if(W+w>o.size)throw new S(Ll);let Ae=w,Ne=Qt(o.createReadable({offset:W,size:Ae})),he=nc(pe(s,i,Zo)),ie=pe(s,i,Ru),_e=pe(s,i,yu),ae=pe(s,i,Au);ae&&(_e=!0);let{onstart:ce,onprogress:Me,onend:te}=i,G=h!=bt&&!B,ye=B?w:T,de=h==jn,Le=pe(s,i,qo);de&&(Le=!1);let Oe=pe(s,i,Nu),Ze=(Oe===m?pe(s,i,Du):Oe)&&!B&&(!$||fe||f&&f.vendorVersion==Jl),Ct={options:{codecType:Bc,password:U,rawPassword:M,zipCrypto:fe,encryptionStrength:f&&f.strength,checkCrc32:Ze,checkAuthenticationCode:pe(s,i,bu),passwordVerification:fe&&(p?R>>>8&it:_>>>24&it),outputSize:ye,crc32:_,compressed:G,encrypted:$,useWebWorkers:pe(s,i,Ko),useCompressionStream:Le,transferStreams:pe(s,i,jo),deflate64:de,format:oe?oe.format:m,codecURI:oe?oe.codecURI:m,compressionMethod:h,rawBitFlag:E,checkPasswordOnly:ie},config:a,streamOptions:{signal:he,size:Ae,onstart:ce,onprogress:Me,onend:te}};_e&&await ch({reader:o,fileEntry:n,index:c,offset:y,crc32:_,compressedSize:w,uncompressedSize:T,dataOffset:W,dataDescriptor:p||I.bitFlag.dataDescriptor,extraFieldZip64:d||I.extraFieldZip64,readRanges:r});let Ge,tt;try{if(!ae){ie&&(e=new ct),e=new Yr(e),await ve(e,uh(ye,w,G)),{writable:Ge}=e;let{outputSize:Ie}=await zc({readable:Ne,writable:Ge},Ct);if(e.size+=Ie,Ie!=ye)throw new S(es)}}catch(Ie){if(Ie.outputSize!==m&&(e.size+=Ie.outputSize),!ie||Ie.message!=Fi)throw tt=Ie,Ie}finally{if(!(!el(e)&&pe(s,i,$o))&&Ge&&!Ge.locked){let _t=Ge.getWriter();if(tt)try{await _t.abort(tt)}catch{}else await _t.close()}}return ie||ae?m:e.getData?e.getData():Ge}};function us(t){let e=X.min(t.byteLength,1024)-3;for(let n=0;n<e;n++)if(q(t,n)==Jf)return!0;return!1}function io(t,e,n){let r=0;for(;n+Sn<=e.length&&q(t,n)==Mt;)n+=Sn+se(t,n+28)+se(t,n+30)+se(t,n+32),r++;return r%(Z+1)?0:r}function ds(t){if(t.length>=6){let e=K(t);if(q(e,0)==Co){let n=se(e,4);if(6+n<=t.length)return t.subarray(6,6+n)}}}function nh(t,e,n){let r=t&&t.compressedSize?t.compressedSize:e;return r>0&&r<=n?r:n}function rh(t){let e={rawExtensibleData:t};if(t.length>=28){let n=K(t),r=se(n,26);v.assign(e,{compressionMethod:se(n,0),compressedSize:Ye(n,2),uncompressedSize:Ye(n,10),encryptionAlgorithm:se(n,18),bitLength:se(n,20),flags:se(n,22),hashAlgorithm:se(n,24),hashData:t.subarray(28,28+r)})}return e}function Ql(t,e,n){let r=t.rawBitFlag=se(e,n+2),i=(r&Or)==Or,s=q(e,n+6);v.assign(t,{encrypted:i,version:se(e,n),bitFlag:{level:(r&Go)>>1,dataDescriptor:(r&Fr)==Fr,languageEncodingFlag:(r&xr)==xr},rawLastModDate:s,lastModDate:_h(s),filenameLength:se(e,n+22),extraFieldLength:se(e,n+24)})}function ef(t,e,n,r,i){let{rawExtraField:s}=e,a=e.extraField=new mt,o=K(s),c=0,l=!1;try{for(;c<s.length;){let D=se(o,c),y=se(o,c+2);a.set(D,{type:D,data:s.slice(c+4,c+4+y)}),c+=4+y}}catch{l=!0}c>s.length&&(l=!0);let u=se(n,r+4);v.assign(e,{signature:q(n,r+$n),crc32:q(n,r+$n),compressedSize:q(n,r+fr),uncompressedSize:q(n,r+ur)});let f=a.get($r);f&&(sh(f,e),e.extraFieldZip64=f);let d=a.get(Qf);d&&(ao(d,nl,rl,e,t),e.extraFieldUnicodePath=d);let h=a.get(eu);h&&(ao(h,Gi,sl,e,t),e.extraFieldUnicodeComment=h);let g=a.get(vo);g&&g.data.length>=7?(ih(g,e,u),e.extraFieldAES=g):e.compressionMethod=u;let E=a.get(nu);E&&(oo(E,e),e.extraFieldPkwareUnix=E);let _=a.get(tu);_&&(oo(_,e),e.extraFieldUnixType1=_);let R=a.get(Mo);R&&(ah(R,e),e.extraFieldNTFS=R);let T=a.get(zo),w;if(T&&(w=co(T,e,!1),e.extraFieldUnix=T),!w){let D=a.get(ko);D&&(co(D,e,!0),e.extraFieldInfoZip=D)}let p=a.get(Ii);p&&(oh(p,e,i),e.extraFieldExtendedTimestamp=p);let I=a.get(Ho);return I&&(e.extraFieldUSDZ=I),l}function sh(t,e){e.zip64=!0;let n=K(t.data),r=$E.filter(([s,a])=>e[s]==a),i=r.reduce((s,[,a])=>s+ro[a].bytes,0);if(t.data.length<i)throw new S(xl);for(let s=0,a=0;s<r.length;s++){let[o,c]=r[s],l=ro[c];e[o]=t[o]=l.getValue(n,a),a+=l.bytes}}function ao(t,e,n,r,i){if(t.data.length<5){t.valid=!1;return}let s=K(t.data),a=new $t;a.append(i[n]);let o=K(new Y(4));o.setUint32(0,a.get(),!0);let c=q(s,1),l=zt(s,0);v.assign(t,{version:l,[e]:Ir(t.data.subarray(5)),valid:l==1&&!i.bitFlag.languageEncodingFlag&&c==q(o,0)}),t.valid&&(r[e]=t[e],r[e+jE]=!0)}function ih(t,e,n){let r=K(t.data),i=zt(r,4);v.assign(t,{vendorVersion:zt(r,0),vendorId:zt(r,2),strength:i,originalCompressionMethod:n,compressionMethod:se(r,5)}),e.compressionMethod=t.compressionMethod,t.vendorVersion!=Jl&&(e.crc32=m)}function ah(t,e){let n=K(t.data),r=4,i;try{for(;r<t.data.length&&!i;){let s=se(n,r),a=se(n,r+2);s==Bo&&(i=t.data.slice(r+4,r+4+a)),r+=4+a}}catch{}if(i&&i.length==24){let s=K(i),a=s.getBigUint64(0,!0),o=s.getBigUint64(8,!0),c=s.getBigUint64(16,!0);v.assign(t,{rawLastModDate:a,rawLastAccessDate:o,rawCreationDate:c});let l=Es(a),u=Es(o),f=Es(c),d={lastModDate:l,lastAccessDate:u,creationDate:f};v.assign(t,d),v.assign(e,d,{rawLastAccessDate:o,rawCreationDate:c})}}function oo(t,e){if(t.data.length<8)return;let n=K(t.data),r=new Nt((q(n,0)|0)*1e3),i=new Nt((q(n,4)|0)*1e3),s={lastAccessDate:r,lastModDate:i};t.data.length>=12&&(s.uid=se(n,8),s.gid=se(n,10)),v.assign(t,s),v.assign(e,s)}function co(t,e,n){try{let r=K(t.data),i,s;if(n){let a=0,o=zt(r,a++),c=zt(r,a++);i=lo(t.data.subarray(a,a+c)),a+=c;let l=zt(r,a++);s=lo(t.data.subarray(a,a+l)),v.assign(t,{version:o,uid:i,gid:s})}else t.data.length>=4&&(i=se(r,0),s=se(r,2),v.assign(t,{uid:i,gid:s}));return i!==m&&(e.uid=i),s!==m&&(e.gid=s),i!==m||s!==m}catch{}}function lo(t){let e=new Y(4);return e.set(t,0),new sn(e.buffer,e.byteOffset,4).getUint32(0,!0)}function oh(t,e,n){if(!t.data.length)return;let r=K(t.data),i=zt(r,0),s=[],a=[];n?((i&1)==1&&(s.push(Vr),a.push(Wr)),(i&2)==2&&(s.push(Vi),a.push(cl)),(i&4)==4&&(s.push(Wi),a.push(ll))):t.data.length>=5&&(s.push(Vr),a.push(Wr));let o=1;s.forEach((c,l)=>{if(t.data.length>=o+4){let u=q(r,o);e[c]=t[c]=new Nt((u|0)*1e3);let f=a[l];t[f]=u}o+=4})}async function ch({reader:t,fileEntry:e,index:n,offset:r,crc32:i,compressedSize:s,uncompressedSize:a,dataOffset:o,dataDescriptor:c,extraFieldZip64:l,readRanges:u}){let f=0;if(c&&(l?f=Uo:f=Lo),f){let h=await Te(t,o+s,f+qt),g=K(h),E=h.length==f+qt&&q(g,0)==xo;if(E){let _=fo(g,qt,l);(e.encrypted&&!e.zipCrypto||_.crc32==i)&&_.compressedSize==s&&_.uncompressedSize==a?f+=qt:E=!1}if(h.length>=f){let _=fo(g,E?qt:0,l);_.signature=E,e.localDirectory.dataDescriptor=_}}let d={start:r,end:o+s+f,fileEntry:e};for(let[h,g]of u)if(h!=n&&d.start<g.end&&g.start<d.end){let E=new S(Pl);throw E.overlappingEntry=g.fileEntry,E}u.set(n,d)}function fo(t,e,n){let r=q(t,e),i,s;return n?(i=Ye(t,e+4),s=Ye(t,e+12)):(i=q(t,e+4),s=q(t,e+8)),{crc32:r,compressedSize:i,uncompressedSize:s}}function En(t,e){return t.getDiskOffset?t.getDiskOffset(e):0}async function lh(t){return await tf(t)==lr}async function fh(t){let e=await tf(t);return e==lr||e==$f}async function tf(t){let e=await Te(t,0,Ht);return q(K(e))}function nf(t){return t===an||t===Si||t===Gt}function uh(t,e,n){return X.min(t,n?e*eh:e)}function ji(t,e){return uo(t,uo(e,Si))}function uo(t,e){let n=t[Yu];if(n!==m){if(!nf(n))throw new S(Bl);return n}let r=t[Iu];return r===m?e:r?an:e==Gt?Gt:Si}function dh(t,e){return t===m?e!=Gt:!!t}function Eh(t,e){return t===m?e==an:!!t}function hh(t,e){if(t===m)return e;if(!nf(t))throw new S(Hl);return t}function gh(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("\\\\")||qE.test(t)?!0:e==an&&(n.includes(".")||n.includes(""))}function rf(t,e){if(t!==m){let n=Jr(t);if(typeof n!=hu||Re.isNaN(n)||n<0)throw new S(kl);return n}return e==an?0:e==Gt?1/0:Z}async function sf(t,e,n){let{size:r}=t,i=X.min(r,Se+Z),s={count:QE},a,o,c=0;for await(let[l,u,f,d,h]of af(t,i)){let g=se(l,d+20);if(h+Se+g==r){let E=await of(t,l,u,d,h,r,s);if(E==Xr){if(a||(a=Ei(f,d,h)),c++,!e||c>1)break}else E==qi&&!o&&(o=Ei(f,d,h))}}return a||(a=o),a||(a=await mh(t,n,s)),{endOfDirectoryInfo:a,endOfDirectoryReachingEndCount:c}}async function mh(t,e,n){let{size:r}=t,i=X.min(r,e==1/0?r:Se+Z+e),s,a;for await(let[o,c,l,u,f]of af(t,i)){let d=Ei(l,u,f);s||(s=d);let h=await of(t,o,c,u,f,r,n);if(h==Xr)return d;h==qi&&!a&&(a=d)}return a||s}async function*af(t,e){let n=t.size-e,r=await Te(t,n,e),i=K(r);for(let s=r.length-Se;s>=0;s--)q(i,s)==Po&&(yield[i,n,r,s,n+s])}function Ei(t,e,n){return{offset:n,buffer:t.slice(e,e+Se).buffer}}async function of(t,e,n,r,i,s,a){let o=se(e,r+10),c=q(e,r+12),l=q(e,r+16);if(o==Z||c==me||l==me)return await Eo(t,e,n,i-vt,s,a)==yi?Xr:so;if(!o&&!c)return qi;let u=se(e,r+6);for(let f of[i-c,En(t,u)+l])if(await Eo(t,e,n,f,s,a)==Mt)return Xr;return so}async function Eo(t,e,n,r,i,s){if(r<0||r+4>i)return m;if(r>=n)return q(e,r-n);if(s.count>0){s.count--;let a=await Te(t,r,4);return q(K(a),0)}return m}function wh(t,e,n,r,i){let{rawFilename:s}=t,a=!i,o=t.decryptedDirectory&&(e.rawBitFlag&Sa)==Sa;r&&!o&&(n.length!=s.length||n.some((c,l)=>c!=s[l]))&&ft(a,i,"mismatched local file header (filename)"),(e.rawBitFlag&no)!=(t.rawBitFlag&no)&&ft(a,i,ql),e.compressionMethod!=t.compressionMethod&&ft(a,i,jl),!e.bitFlag.dataDescriptor&&!o&&(e.crc32||e.compressedSize||e.uncompressedSize)&&(e.crc32!=t.crc32||e.compressedSize!=t.compressedSize||e.uncompressedSize!=t.uncompressedSize)&&ft(a,i,$l)}function ft(t,e,n){t?Sr(n):Je(e,n)}function Je(t,e,n){if(!t.some(r=>r.reason==e)){let r={reason:e};n!==m&&(r.filename=n),t.push(r)}}function Sr(t){let e=new S(Ul);throw e.reason=t,e}function pe(t,e,n){return e[n]===m?t.options[n]:e[n]}function ho(t,e,n){return Di(pe(t,e,n))}function _h(t){let e=(t&4294901760)>>16,n=t&Z,r=new Nt(1980+((e&65024)>>9),((e&480)>>5)-1,e&31,(n&63488)>>11,(n&2016)>>5,(n&31)*2,0);return r<Lr?Lr:r}function Es(t){return new Nt(Re(t/Pe(1e4)-Pe(116444736e5)))}function zt(t,e){return t.getUint8(e)}function se(t,e){return t.getUint16(e,!0)}function q(t,e){return t.getUint32(e,!0)}function Ye(t,e){let n=t.getBigUint64(e,!0);if(n>JE)throw new S(zl);return Re(n)}var Th=v.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Ul,ERR_BAD_FORMAT:Yn,ERR_CENTRAL_DIRECTORY_NOT_FOUND:Ol,ERR_ENCRYPTED:Cl,ERR_ENCRYPTED_CENTRAL_DIRECTORY:vl,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Ll,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:bl,ERR_EOCDR_NOT_FOUND:Nl,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:xl,ERR_INVALID_AUTHENTICATION_CODE:Tc,ERR_INVALID_COMPRESSED_DATA:xc,ERR_INVALID_CRC32:Cc,ERR_INVALID_FILENAME_VALIDATION:Hl,ERR_INVALID_MAX_APPENDED_DATA_SIZE:kl,ERR_INVALID_PASSWORD:Oi,ERR_INVALID_STRICTNESS:Bl,ERR_INVALID_UNCOMPRESSED_SIZE:es,ERR_LOCAL_FILE_HEADER_NOT_FOUND:Fl,ERR_OVERLAPPING_ENTRY:Pl,ERR_SPLIT_ZIP_FILE:oi,ERR_UNSAFE_FILENAME:Ml,ERR_UNSUPPORTED_COMPRESSION:rr,ERR_UNSUPPORTED_ENCRYPTION:ai,ERR_UNSUPPORTED_UINT64:zl,ERR_WORKER_STARTUP_TIMEOUT:Li,WARNING_APPENDED_DATA:li,WARNING_COMPRESSED_PATCHED_DATA:Vl,WARNING_DUPLICATE_FILENAME:Kl,WARNING_MALFORMED_EXTRA_FIELD:Ki,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:ql,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:jl,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:$l,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:Vn,WARNING_PREPENDED_CENTRAL_DIRECTORY:Xl,WARNING_PREPENDED_DATA:fi,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Zl,WARNING_UNKNOWN_VERSION:Yl,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Wl,WARNING_UNSORTED_CENTRAL_DIRECTORY:Gl,WARNING_WRAPPED_ENTRIES_COUNT:ci,ZipReader:Fn,ZipReaderStream:ui,isZipFile:th}),cf="File already exists",lf="Zip file comment exceeds 64KB",ph="Invalid zip file comment (must be a Uint8Array)",Rh="File entry comment exceeds 64KB",Ah="Invalid file entry comment (must be a string)",yh="Invalid date (must be a valid Date instance)",Ih="File entry name exceeds 64KB",ff="Version exceeds 65535",Sh="The strength must equal 1, 2, or 3",Dh="Encryption is not supported in USDZ files",Nh="Encryption is not supported when the 'passThrough' option is set",bh="Invalid extra field (must be a Map)",Oh="Invalid extra field type (must be integer 0..65535)",Fh="Invalid extra field data (must be a Uint8Array)",$i="Extra field data exceeds 64KB",uf=-2147483648,df=2147483647,go=Pe(0),mo=Pe("0x7fffffffffffffff"),Ji="Zip64 is not supported (set the 'zip64' option to 'true')",xh="Undefined uncompressed size",Ch="Undefined compression method",Om="Undetermined size",Ph="Undefined reader",Lh="Zip file not empty",Uh="Invalid uid (must be integer 0..2^32-1)",vh="Invalid gid (must be integer 0..2^32-1)",Mh="Invalid UNIX mode (must be integer 0..65535)",Bh="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Hh="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",kh="Invalid msdosAttributesRaw (must be integer 0..255)",zh="Invalid msdosAttributes (must be an object with boolean flags)",Gh="Invalid level (must be integer 0..9)",Yh="Signature data exceeds 64KB",wo=new Y([7,0,2,0,65,69,3,0,0]),Vh=4,Wh=9,Xh=67,Zh=1,hi="infozip",gi="unix",Kh=9,hs=0,_o=[],xn=class{constructor(e,n={}){e=new Yr(e);let{availableSize:r=fn,maxSize:i=fn}=e,s=r>0&&r!==fn&&i>0&&i!==fn;v.assign(this,{writer:e,addSplitZipSignature:s,options:n,fileEntries:new mt,filenames:new Nr,offset:n[wr]===m?e.size||e.writable.size||0:n[wr],initialOffset:n[wr]===m?0:n[wr]-(e.size||e.writable.size||0),pendingAddFileCalls:new Nr,pendingErrors:[],bufferedWrites:0,lastFileEntry:m})}prependZip(e){return gs(this,qh(this,e))}appendZip(e){return gs(this,this.appendZipEntries(e))}async appendZipEntries(e){let n=this,{pendingAddFileCalls:r,filenames:i,fileEntries:s}=n;for(;r.size;)await ge.allSettled(et.from(r));let a,o=new ge(u=>a=u);r.add(o);let c=[],l;try{e=new rn(e),await ve(e),(e.size===m||!e.readUint8Array)&&(e=new Ft(await en(e.readable)),await ve(e));let{ZipReader:u}=await ge.resolve().then(function(){return Th}),f=new u(e),d=await f.getEntries();await f.close(),await ve(n.writer);let{directoryOffset:h}=f;d.forEach(({filename:_})=>{if(i.has(_))throw new S(cf);i.add(_),c.push(_)}),n.writerLocked=!0;let{lockWriter:g}=n;n.lockWriter=new ge(_=>l=()=>{n.writerLocked=!1,_()}),await g,n.addSplitZipSignature&&(delete n.addSplitZipSignature,await hg(e)||(await gt(n.writer,hf()),n.offset+=Ht));let E=await gg(n,e,d,h);d.forEach(_=>{let{version:R,rawLastModDate:T,rawFilename:w,bitFlag:p,encrypted:I,uncompressedSize:D,compressedSize:y,extraFieldZip64:O}=_,{compressionMethod:P,rawExtraField:U}=_,{level:M,languageEncodingFlag:B,dataDescriptor:V}=p;U=Ef(U||le),_.extraFieldAES&&(P=jr);let k=ne(U),W=!!O&&O.uncompressedSize!==m,b=!!O&&O.compressedSize!==m,x=_f(M,B,V,I,P)&~Go|M<<1,{headerArray:C,headerView:F}=wf({version:R,bitFlag:x,compressionMethod:P,uncompressedSize:D,compressedSize:y,rawLastModDate:T,rawFilename:w,zip64CompressedSize:b,zip64UncompressedSize:W,extraFieldLength:k}),{crc32:H}=_;H!==m&&Fe(F,$n,H);let{offset:L,diskNumberStart:Q}=E.get(_);v.assign(_,{zip64UncompressedSize:W,zip64CompressedSize:b,offset:L,diskNumberStart:Q,zip64DiskNumberStart:!1,rawExtraFieldZip64:le,rawExtraFieldAES:le,rawExtraFieldExtendedTimestamp:le,rawExtraFieldNTFS:le,rawExtraFieldUnix:le,rawExtraField:U,rawCentralExtraField:le,extendedTimestamp:!1,headerArray:C,headerView:F}),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=jh(i,e,n,r);s.add(a);let o=()=>s.delete(a);return ge.prototype.then.call(a,o,o),gs(i,a)}remove(e){let{filenames:n,fileEntries:r}=this;if(typeof e==Dn&&(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=le,n={}){let r=this,{pendingAddFileCalls:i,writer:s}=this,{writable:a}=s;if(!(e instanceof Y))throw new S(ph);if(ne(e)>Z)throw new S(lf);for(;i.size;)await ge.allSettled(et.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 lg(r,e,n),!el(s)&&J(r,n,$o)||await a.getWriter().close(),s.getData?s.getData():a}},To=class{constructor(e={}){let{readable:n,writable:r}=new we;this.readable=n,this.zipWriter=new xn(r,e),this.pendingAddFileCalls=new Nr}transform(e){let n=this.zipWriter,r,{readable:i,writable:s}=new we({start(o){r=o},flush:()=>{a()}});return po(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 ms(n,o)}}}writable(e){let n,{readable:r,writable:i}=new we({start(s){n=s}});return po(this,this.zipWriter.add(e,r),s=>n.error(s)),i}async close(e=m,n={}){let{zipWriter:r}=this,s=(await ge.allSettled(et.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 ms(r,a),a}try{return await r.close(e,n)}catch(a){throw await ms(r,a),a}}},mi=class extends ge{then(e,n){let{watcher:r}=this;return r&&(r.observed=!0),super.then(e,n)}};function gs(t,e){let n=new mi((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 qh(t,e){if(t.filenames.size)throw new S(Lh);await t.appendZipEntries(e)}async function jh(t,e,n,r){if(r=v.assign({},r),J(t,r,yn)&&!e.endsWith(mn)&&(e+=mn),t.filenames.has(e))throw new S(cf);t.filenames.add(e),hs<on().maxWorkers?hs++:await new ge(i=>_o.push(i));try{return await $h(t,e,n,r)}catch(i){throw t.filenames.delete(e),i}finally{let i=_o.shift();i?i():hs--}}async function ms(t,e){try{await t.writer.writable.abort(e)}catch{}}function po(t,e,n){t.pendingAddFileCalls.add(e),e.catch(r=>{try{n(r)}catch{}})}async function $h(t,e,n,r){let i=Jh(t,e,r);({name:e}=i);let s=Qh(t,e,r),{comment:a}=s,o=r[Zi];t.fileEntries.set(e,m);let c=t.lastFileEntry,l={},u;s.resolvedOptions.keepOrder&&(l.lockFileEntry=new ge(d=>u=d)),t.lastFileEntry=l;let f;try{let{resolvedOptions:d}=s;d.level!=0&&d.compressionMethod===m&&!d.passThrough&&!await qd(on())&&(d.level=0);let h=await eg(t,n,s,r);({reader:n}=h);let g=sr(t.writer),E=Dt(t.writer);r=v.assign({},r,i.resolvedOptions,s.resolvedOptions,h.resolvedOptions,{signature:r[ii],crc32:r.crc32===m?r[ii]:r.crc32,offset:t.offset-g,diskNumberStart:E,[Jn]:t.options[Jn]});let _=sg(r),R=ag(r),T=ne(_.localHeaderArray,R.dataDescriptorArray);f=await ng(t,e,n,{headerInfo:_,dataDescriptorInfo:R,metadataSize:T,fileEntry:l,previousFileEntry:c,releaseLockFileEntry:u},r)}catch(d){throw t.fileEntries.delete(e),d}finally{u&&u(c&&c.lockFileEntry)}return v.assign(f,{name:e,comment:a,extraField:o}),new On(f)}function Jh(t,e,n){let r=J(t,n,hl),i=J(t,n,wl,r?lu:Na),s=J(t,n,Tl),a=hn(t,n,Rl),o=hn(t,n,Al),c=hn(t,n,yl),l=J(t,n,ku),u=J(t,n,Il),f=J(t,n,Sl),d=J(t,n,Dl);if(Gn(a,me,Uh),Gn(o,me,vh),Gn(c,Z,Mh),l!==m&&l!==hi&&l!==gi)throw new S(Bh);if(l===gi&&(a!==m&&a>Z||o!==m&&o>Z))throw new S(Hh);l===m&&(a!==m||o!==m)&&(l=hi);let h=hn(t,n,dl),g=J(t,n,El),E=a!==m||o!==m||c!==m||l||s,_=h!==m||g!==m;if(E?(r=!1,i=i&it|Na):_&&(r=!0,i=i&it),Gn(h,it,kh),g&&(typeof g!==Eu||et.isArray(g)))throw new S(zh);if(i>Z)throw new S(ff);let R=J(t,n,ul),T=R!==m;T||(R=0),!n[yn]&&e.endsWith(mn)&&(n[yn]=!0);let w=J(t,n,yn);if(w?(e.endsWith(mn)||(e+=mn),T||(R=Cr,r||(R|=(Xn|Zn|pr)<<16))):!r&&!T&&(s?R=(Zn|pr)<<16:R=pr<<16),!r){let D=c!==m||!!(u||f||d),y=R>>16&Z;c=c===m?y:c&Z,u?c|=Fs:u=!!(c&Fs),f?c|=xs:f=!!(c&xs),d?c|=Cs:d=!!(c&Cs),(!T||D)&&(w?c=c&~gn|Xn:c&gn||(c|=au),R=(c&Z)<<16|R&Z)}({msdosAttributesRaw:h,msdosAttributes:g}=ig(h,g)),_&&(R=R&me|h&it);let p=R>>16&Z,I=c!==m&&(c&gn)==Yo;return{name:e,resolvedOptions:{versionMadeBy:i,msDosCompatible:!!r,externalFileAttributes:R,unixExternalUpper:p,uid:a,gid:o,unixMode:c,unixExtraFieldType:l,symlink:I,setuid:u,setgid:f,sticky:d,msdosAttributesRaw:h,msdosAttributes:g}}}function Qh(t,e,n){let r=wi(t,n,Hu)||Rr,i=r(e,ec);if(i===m&&(i=Rr(e)),ne(i)>Z)throw new S(Ih);let s=n[Gi]||"";if(typeof s!=Dn)throw new S(Ah);let a=r(s,tc);if(a===m&&(a=Rr(s)),ne(a)>Z)throw new S(Rh);let o=J(t,n,ml);if(o!==m&&o>Z)throw new S(ff);let c=ps(t,n,Vr,new Nt),l=J(t,n,Wr),u=ps(t,n,Vi),f=ps(t,n,Wi),d=J(t,n,fl,0),h=J(t,n,Xo),g=J(t,n,Vo),E=J(t,n,Wo);rc(g,E);let _=hn(t,n,Ou,3),R=J(t,n,_l),T=J(t,n,Fu,!0),w=J(t,n,xu),p=J(t,n,Cu,!0),I=J(t,n,Ko),D=J(t,n,jo),y=J(t,n,Lu),O=wi(t,n,Uu),P=J(t,n,vu,!0),U=nc(J(t,n,Zo)),M=J(t,n,Mu,!0),B=J(t,n,pl),V=h||B===m?m:Oc(B);if(!h&&B!==m&&B!==bt&&B!==Pn&&!V)throw new S(rr);let k=hn(t,n,Pu);if(Gn(k,Kh,Gh),t.options[Jn]){if(g!==m||E!==m)throw new S(Dh);k===m&&B===m&&(k=0)}h&&(k=m);let W=J(t,n,qo),b=J(t,n,Jo);y&&b===m&&(b=!1),(b===m||R&&!h)&&(b=!0),k!==m&&k!=6&&(W=!1);let x=J(t,n,Xi);if(!R&&(g!==m||E!==m)&&!(Re.isInteger(_)&&_>=1&&_<=3))throw new S(Sh);let C=ws(n[Zi]),F=ws(n[zu]),H=ws(n[Gu]);return{comment:s,resolvedOptions:{rawFilename:i,rawComment:a,version:o,lastModDate:c,rawLastModDate:l,lastAccessDate:u,creationDate:f,internalFileAttributes:d,passThrough:h,password:g,rawPassword:E,encryptionStrength:_,zipCrypto:R,extendedTimestamp:T,ntfsTimestamp:w,keepOrder:p,useWebWorkers:I,transferStreams:D,bufferedWrite:y,createTempStream:O,dataDescriptorSignature:P,signal:U,useUnicodeFileNames:M,compressionMethod:B,format:V?V.format:m,codecURI:V?V.codecURI:m,codecVersionNeeded:V?V.versionNeeded:m,level:k,useCompressionStream:W,dataDescriptor:b,zip64:x,rawExtraField:C,rawLocalExtraField:F,rawCentralExtraField:H}}}function ws(t){if(!t)return le;if(!(t instanceof mt))throw new S(bh);let e=0,n=0;t.forEach((s,a)=>{if(sc(a,Z,Oh),!(s instanceof Y))throw new S(Fh);if(ne(s)>Z)throw new S($i);e+=4+ne(s)});let r=new Y(e),i=K(r);return t.forEach((s,a)=>{dt(i,n,a),dt(i,n+2,ne(s)),or(r,s,n+4),n+=4+ne(s)}),r}async function eg(t,e,{resolvedOptions:n},r){if(n.passThrough&&!e&&!J(t,r,yn))throw new S(Ph);let i;return e&&(e=new rn(e),await ve(e),{size:i}=e),v.assign({reader:e},tg(t,!!e,i,n,r))}function tg(t,e,n,r,i){let{passThrough:s,zipCrypto:a,password:o,rawPassword:c,encryptionStrength:l}=r,{dataDescriptor:u,zip64:f,level:d,compressionMethod:h}=r,g=0,E=0;if(s&&e){if(E=i[Yi],E===m)throw new S(xh);if(h===m)throw new S(Ch)}let _=f===!0,R=J(t,i,gl);if(e&&s&&!R&&ne(o,c))throw new S(Nh);let T=e&&(!!(o&&ne(o)||c&&ne(c))||s&&R);e||(d=0,h=bt);let w=T?a?12:16+l*4:0;e&&(s?(i.uncompressedSize=E,g=n===m?So(E)+w:n):n===m?(u=!0,(f||f===m)&&(f=!0,E=g=me+1)):(i.uncompressedSize=E=n,g=(_i(h,d)?So(E):E)+w));let p=!T&&(!e||n===0&&!s)&&!_i(h,d);p&&!a&&J(t,i,Jo)===m&&(u=!1);let I=_||E>=me,D=_||g>=me;if(I||D){if(f===!1)throw new S(Ji);f=!0}return f=f||!1,{maximumCompressedSize:g,resolvedOptions:{dataDescriptor:u,emptyEntry:p,zip64:f,zip64UncompressedSize:I,zip64CompressedSize:D,uncompressedSize:E,level:d,compressionMethod:h,encrypted:T}}}async function ng(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[Jn],_=d,R,T,w,p,I,D=0,y,O=o&&h?h.lockFileEntry:m;s.set(e,_);try{i.bufferedWrite||!o||t.writerLocked||t.bufferedWrites||!c&&!l?(R=!0,t.bufferedWrites++,i.createTempStream?y=await i.createTempStream():y=new we(m,m,{highWaterMark:fn}),y.size=0,await ve(a)):(y=a,await O,await P()),await ve(y);let M=sr(a);t.addSplitZipSignature&&!R&&await yo(t,a),E&&!R&&Ro(r,t.offset-M);let{localHeaderArray:B}=f;R||await U();let V=Dt(a),k=ir(t,a);if(_.diskNumberStart=V,R||(p=!0,I=a.size,await gt(y,B)),_=await rg(n,y,_,r,on(),i),R||(p=!1),s.set(e,_),_.filename=e,R){if(await ge.all([y.writable.getWriter().close(),O]),await P(),t.addSplitZipSignature&&await yo(t,a),w=!0,I=a.size,await U(),_.diskNumberStart=Dt(a),_.offset=ir(t,a),E){let W=r.metadataSize;Ro(r,t.offset-sr(a)),_.size+=r.metadataSize-W}cg(_,f.localHeaderView,i),await gt(a,f.localHeaderArray),await gf(y.readable,a,u,W=>D+=W),a.size+=y.size,w=!1}else _.diskNumberStart=V,_.offset=k;return t.offset+=_.size,_}catch(M){if(w||p){if(t.hasCorruptedEntries=!0,M)try{M.corruptedEntry=!0}catch{}t.offset+=a.size-I,R&&(t.offset+=D)}throw s.delete(e),M}finally{if(R&&t.bufferedWrites--,g&&g(O),T&&T(),R&&y&&y.dispose)try{await y.dispose()}catch{}}async function P(){t.writerLocked=!0;let{lockWriter:M}=t;t.lockWriter=new ge(B=>T=()=>{t.writerLocked=!1,B()}),await M}async function U(){Cn(a,ne(f.localHeaderArray))&&await a.closeDisk()}}async function rg(t,e,{diskNumberStart:n,lockFileEntry:r},i,s,a){let{headerInfo:o,dataDescriptorInfo:c,metadataSize:l}=i,{headerArray:u,headerView:f,lastModDate:d,rawLastModDate:h,encrypted:g,compressed:E,version:_,compressionMethod:R,rawExtraFieldZip64:T,localExtraFieldZip64Length:w,rawExtraFieldExtendedTimestamp:p,extraFieldExtendedTimestampFlag:I,rawExtraFieldNTFS:D,rawExtraFieldUnix:y,rawExtraFieldAES:O}=o,{dataDescriptorArray:P}=c,{rawFilename:U,lastAccessDate:M,creationDate:B,password:V,rawPassword:k,level:W,zip64:b,zip64UncompressedSize:x,zip64CompressedSize:C,zipCrypto:F,dataDescriptor:H,directory:L,executable:Q,versionMadeBy:j,rawComment:ee,rawExtraField:$,rawCentralExtraField:fe,useWebWorkers:oe,transferStreams:Ae,onstart:Ne,onprogress:he,onend:ie,signal:_e,encryptionStrength:ae,extendedTimestamp:ce,msDosCompatible:Me,internalFileAttributes:te,externalFileAttributes:G,uid:ye,gid:de,unixMode:Le,symlink:Oe,setuid:Ze,setgid:Ct,sticky:Ge,unixExternalUpper:tt,msdosAttributesRaw:Ie,msdosAttributes:_t,useCompressionStream:Pt,passThrough:Ke,format:cn,codecURI:Xt}=a,qe={lockFileEntry:r,versionMadeBy:j,zip64:b,directory:!!L,executable:!!Q,filenameUTF8:!0,rawFilename:U,commentUTF8:!0,rawComment:ee,rawExtraFieldZip64:T,localExtraFieldZip64Length:w,rawExtraFieldExtendedTimestamp:p,rawExtraFieldNTFS:D,rawExtraFieldUnix:y,rawExtraFieldAES:O,rawExtraField:$,rawCentralExtraField:fe,extendedTimestamp:ce,msDosCompatible:Me,internalFileAttributes:te,externalFileAttributes:G,diskNumberStart:n,uid:ye,gid:de,unixMode:Le,symlink:!!Oe,setuid:Ze,setgid:Ct,sticky:Ge,unixExternalUpper:tt,msdosAttributesRaw:Ie,msdosAttributes:_t},{crc32:Tt,uncompressedSize:je}=a,$e=0;Ke||(je=0);let{writable:Zt}=e;if(t){let ln=Qt(tl(t)),xe=t.size,Lt={options:{codecType:Pi,inputSize:xe,level:W,rawPassword:k,password:V,encryptionStrength:ae,zipCrypto:g&&F,passwordVerification:g&&F&&h>>8&it,computeCrc32:!Ke,compressed:E&&!Ke,encrypted:g&&!Ke,useWebWorkers:oe,useCompressionStream:Pt,transferStreams:Ae,format:cn,codecURI:Xt,compressionMethod:R},config:s,streamOptions:{signal:_e,size:xe,onstart:Ne,onprogress:he,onend:ie}};try{let Be=await zc({readable:ln,writable:Zt},Lt);if($e=Be.outputSize,e.size+=$e,Ke||(je=Be.inputSize,(!g||F)&&(Tt=Be.crc32)),!C&&$e>=me||!x&&je>=me)throw new S(Ji)}catch(Be){throw Be.outputSize!==m&&(e.size+=Be.outputSize),Be}}return og({crc32:Tt,compressedSize:$e,uncompressedSize:je,headerInfo:o,dataDescriptorInfo:c},a),H&&await gt(e,P),v.assign(qe,{uncompressedSize:je,compressedSize:$e,lastModDate:d,rawLastModDate:h,creationDate:B,lastAccessDate:M,encrypted:!!g,zipCrypto:!!F,size:l+$e,compressionMethod:R,version:_,headerArray:u,headerView:f,signature:Tt,crc32:g&&!F&&!Ke?m:Tt,extraFieldExtendedTimestampFlag:I,zip64UncompressedSize:x,zip64CompressedSize:C}),qe}function sg(t){let{rawFilename:e,lastModDate:n,rawLastModDate:r,lastAccessDate:i,creationDate:s,level:a,zip64:o,zipCrypto:c,useUnicodeFileNames:l,dataDescriptor:u,directory:f,rawExtraField:d,rawLocalExtraField:h,encryptionStrength:g,extendedTimestamp:E,ntfsTimestamp:_,passThrough:R,encrypted:T,zip64UncompressedSize:w,zip64CompressedSize:p,uncompressedSize:I,crc32:D}=t,{version:y,compressionMethod:O}=t,P=!f&&_i(O,a),U,M=R||!P,B=o&&(t.bufferedWrite||!u||!w&&!p||M),V=B||o&&u&&(w||p);if(o&&(w||p)){let ie=Ve(20);if(ie.writeUint16($r),ie.writeUint16(16),U=ie.array,B&&(ie.writeUint64(I),M)){let _e=T?c?12:16+g*4:0;ie.writeUint64(R?0:I+_e)}}else U=le;let k;if(T&&!c){let he=Ve(ne(wo)+2);he.writeUint16(vo),he.writeBytes(wo),k=he.array,k[8]=g}else k=le;let W,b,x;if(E){let he=Dr(n),ie=mf(he);if(ie){let ae=9+(i?4:0)+(s?4:0),ce=Ve(ae);x=1+(i?2:0)+(s?4:0),ce.writeUint16(Ii),ce.writeUint16(ae-4),ce.writeUint8(x),ce.writeUint32(he),i&&ce.writeUint32(Io(Dr(i))),s&&ce.writeUint32(Io(Dr(s))),b=ce.array}else b=le;if(_===m?!ie||!!(i||s):_)try{let ae=Ts(n),ce=Ve(36);ce.writeUint16(Mo),ce.writeUint16(32),ce.skip(4),ce.writeUint16(Bo),ce.writeUint16(24),ce.writeUint64(ae),ce.writeUint64(i?Ts(i):ae),ce.writeUint64(s?Ts(s):ae),W=ce.array}catch{W=le}else W=le}else W=b=le;let C;try{let{uid:he,gid:ie,unixExtraFieldType:_e}=t;if(_e==hi&&(he!==m||ie!==m)){let ae=Ao(he===m?0:he),ce=Ao(ie===m?0:ie),Me=3+ae.length+ce.length,te=Ve(4+Me);te.writeUint16(ko),te.writeUint16(Me),te.writeUint8(1),te.writeUint8(ae.length),te.writeBytes(ae),te.writeUint8(ce.length),te.writeBytes(ce),C=te.array}else if(_e==gi&&(he!==m||ie!==m)){let ae=Ve(8);ae.writeUint16(zo),ae.writeUint16(4),ae.writeUint16((he===m?0:he)&Z),ae.writeUint16((ie===m?0:ie)&Z),C=ae.array}else C=le}catch{C=le}O===m&&(O=P?Pn:bt),y===m&&(y=O==bt&&!f&&!T?ou:cu);let{codecVersionNeeded:F}=t;P&&F!==m&&(y=y>F?y:F),o&&(y=y>Pr?y:Pr),T&&!c&&(y=y>Da?y:Da,R&&D!==m&&(k[Vh]=Zh),dt(K(k),Wh,O),O=jr);let H=V?ne(U):0,L=H+ne(k,b,W,C,d,h),Q=t[Jn]?Xh:0;if(L+Q>Z)throw new S($i);let j=new Nt(X.ceil(X.floor(n.getTime()/1e3)/2)*2e3),{headerArray:ee,headerView:$,rawLastModDate:fe}=wf({version:y,bitFlag:_f(a,l,u,T,O),compressionMethod:O,uncompressedSize:I,lastModDate:j<Lr?Lr:j>ba?ba:j,rawLastModDate:r,rawFilename:e,zip64CompressedSize:p,zip64UncompressedSize:w,extraFieldLength:L}),oe=Ve(We+ne(e)+L),Ae=oe.array,Ne=K(Ae);return oe.writeUint32(Fo),oe.writeBytes(ee),oe.writeBytes(e),V&&oe.writeBytes(U),oe.writeBytes(k),oe.writeBytes(b),oe.writeBytes(W),oe.writeBytes(C),oe.writeBytes(d),oe.writeBytes(h),u&&(p||Fe(Ne,fr+jt,0),w||Fe(Ne,ur+jt,0)),{localHeaderArray:Ae,localHeaderView:Ne,headerArray:ee,headerView:$,lastModDate:n,rawLastModDate:fe,encrypted:T,compressed:P,version:y,compressionMethod:O,extraFieldExtendedTimestampFlag:x,rawExtraFieldZip64:le,localExtraFieldZip64Length:H,rawExtraFieldExtendedTimestamp:b,rawExtraFieldNTFS:W,rawExtraFieldUnix:C,rawExtraFieldAES:k,extraFieldLength:L}}function Ro(t,e){let{headerInfo:n}=t,{localHeaderArray:r,extraFieldLength:i}=n,s=64-(e+ne(r))%64;s<4&&(s+=64);let a=new Y(s),o=K(a);dt(o,0,Ho),dt(o,2,s-4);let c=r;n.localHeaderArray=r=new Y(ne(c)+s),or(r,c),or(r,a,ne(c));let l=K(r);dt(l,28,i+s),n.localHeaderView=l,t.metadataSize+=s}function Ao(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 ig(t,e){if(t!==m)t=t⁢else if(e!==m){let{readOnly:n,hidden:r,system:i,directory:s,archive:a}=e,o=0;n&&(o|=Ds),r&&(o|=Ns),i&&(o|=bs),s&&(o|=Cr),a&&(o|=Os),t=o&it}return e===m&&(e={readOnly:!!(t&Ds),hidden:!!(t&Ns),system:!!(t&bs),directory:!!(t&Cr),archive:!!(t&Os)}),{msdosAttributesRaw:t,msdosAttributes:e}}function ag({zip64:t,dataDescriptor:e,dataDescriptorSignature:n}){let r=le,i,s=0,a=t?Uo:Lo;return n&&(a+=qt),e&&(r=new Y(a),i=K(r),n&&(s=qt,Fe(i,0,xo))),{dataDescriptorArray:r,dataDescriptorView:i,dataDescriptorOffset:s}}function og({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&&(Fe(l,$n,t),c&&Fe(f,d,t)),s?c&&(ar(f,d+4,Pe(e)),ar(f,d+12,Pe(n))):(Fe(l,fr,e),Fe(l,ur,n),c&&(Fe(f,d+4,e),Fe(f,d+8,n)))}function cg({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)&&Fe(l,$n+jt,i),c||Fe(l,fr+jt,s),o||Fe(l,ur+jt,a)),n&&r){let d=We+ne(t)+4;ar(l,d,Pe(a)),ar(l,d+8,Pe(s))}}async function lg(t,e,n){let r=fg(t.fileEntries),{directoryStart:i,directoryEnd:s,directoryArray:a}=await ug(t,r,n),o=await dg(t,a,n);await Eg(t,e,n,{directoryStart:i,directoryEnd:s,directoryDataLength:r,signatureLength:o})}function fg(t){let e=0;for(let[,n]of t){let{rawFilename:r,rawExtraFieldAES:i,rawComment:s,rawExtraFieldNTFS:a,rawExtraFieldUnix:o,rawExtraField:c,rawCentralExtraField:l,extendedTimestamp:u,extraFieldExtendedTimestampFlag:f,lastModDate:d,zip64UncompressedSize:h,zip64CompressedSize:g,uncompressedSize:E,compressedSize:_}=n,R=n.offset>=me,T=n.diskNumberStart>=Z,w;if(R||T||h||g){let y=4+(h?8:0)+(g?8:0)+(R?8:0)+(T?4:0),O=Ve(y);O.writeUint16($r),O.writeUint16(y-4),h&&O.writeUint64(E),g&&O.writeUint64(_),R&&O.writeUint64(n.offset),T&&O.writeUint32(n.diskNumberStart),w=O.array}else w=le;n.rawExtraFieldZip64=w,n.zip64Offset=R,n.zip64DiskNumberStart=T;let p,I=Dr(d);if(u&&mf(I)){let y=Ve(9);y.writeUint16(Ii),y.writeUint16(5),y.writeUint8(f),y.writeUint32(I),p=y.array}else p=le;n.rawExtraFieldExtendedTimestamp=p;let D=ne(w,i,a,o,p,c,l);if(D>Z)throw new S($i);e+=Sn+ne(r,s)+D}return e}async function ug(t,e,n){let{fileEntries:r,writer:i}=t,s=new Y(e);await ve(i);let a=0,o=0,c=Dt(i),l=sr(i),u=0;for(let[f,d]of et.from(r.values()).entries()){let{offset:h,rawFilename:g,rawExtraFieldZip64:E,rawExtraFieldAES:_,rawExtraFieldExtendedTimestamp:R,rawExtraFieldNTFS:T,rawExtraFieldUnix:w,rawExtraField:p,rawCentralExtraField:I,rawComment:D,versionMadeBy:y,headerArray:O,headerView:P,zip64UncompressedSize:U,zip64CompressedSize:M,zip64DiskNumberStart:B,zip64Offset:V,internalFileAttributes:k,externalFileAttributes:W,diskNumberStart:b,uncompressedSize:x,compressedSize:C}=d,F=ne(E,_,R,T,w,p,I),H=Sn+ne(g,D)+F;Cn(i,a+H-o)&&(await gt(i,s.slice(o,a)),o=a,u=0,await i.closeDisk()),f==0&&(c=Dt(i),l=sr(i)),U||Fe(P,ur,x),M||Fe(P,fr,C),(V||B)&&d.version<Pr&&dt(P,fu,Pr);let L=Ve(H);if(L.writeUint32(Mt),L.writeUint16(y),L.writeBytes(O.subarray(0,We-4-2)),L.writeUint16(F),L.writeUint16(ne(D)),L.writeUint16(B?Z:b),L.writeUint16(k),L.writeUint32(W),L.writeUint32(V?me:h),L.writeBytes(g),L.writeBytes(E),L.writeBytes(_),L.writeBytes(R),L.writeBytes(T),L.writeBytes(w),L.writeBytes(p),L.writeBytes(I),L.writeBytes(D),or(s,L.array,a),a+=H,u++,n.onprogress)try{await n.onprogress(f+1,r.size,new On(d))}catch{}}return await gt(i,o?s.slice(o):s),{directoryStart:{diskNumber:c,diskOffset:l},directoryEnd:{diskNumber:Dt(i),entriesLength:u},directoryArray:s}}async function dg(t,e,n){let r=wi(t,n,Zu);if(r){let i=await r(e),s=ne(i);if(s>Z)throw new S(Yh);let a=Ve(6+s);a.writeUint32(Co),a.writeUint16(s),a.writeBytes(i);let{writer:o}=t;return Cn(o,ne(a.array))&&await o.closeDisk(),await gt(o,a.array),6+s}return 0}async function Eg(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=ir(t,s),d=ne(e);if(d>Z)throw new S(lf);let h=J(t,n,Xi),g=Dt(i);if(Cn(i,(h?Aa:Se)+d)&&g++,f>=me||c>=me||l>=Z||g>=Z){if(h===!1)throw new S(Ji);h=!0}let E=Ve(h?Aa:Se);Cn(i,ne(E.array)+d)&&await i.closeDisk(),g=Dt(i);let _=g==a.diskNumber?a.entriesLength:0;h&&(E.writeUint32(Ss),E.writeUint64(44),E.writeUint16(45),E.writeUint16(45),E.writeUint32(g),E.writeUint32(u),E.writeUint64(_),E.writeUint64(l),E.writeUint64(c),E.writeUint64(f),E.writeUint32(yi),E.writeUint32(g),E.writeUint64(Pe(ir(t,i))+Pe(c)+Pe(o)),E.writeUint32(g+1),J(t,n,Bu,!0)&&(g=Z,u=Z),_=Z,l=Z,f=me,c=me),E.writeUint32(Po),E.writeUint16(g),E.writeUint16(u),E.writeUint16(_),E.writeUint16(l),E.writeUint32(c),E.writeUint32(f),E.writeUint16(d),await gt(i,E.array),d&&await gt(i,e)}function Ve(t){let e=new Y(t),n=K(e),r=0;return{array:e,writeUint8:i=>{_g(n,r,i),r+=1},writeUint16:i=>{dt(n,r,i),r+=2},writeUint32:i=>{Fe(n,r,i),r+=4},writeUint64:i=>{ar(n,r,Pe(i)),r+=8},writeBytes:i=>{or(e,i,r),r+=ne(i)},skip:i=>r+=i}}function Dt(t){let{diskNumber:e=0}=t;return e}function sr(t){let{diskOffset:e=0}=t;return e}function Cn(t,e){let{availableSize:n=fn}=t;return e>n}function ir(t,{diskNumber:e=0,diskOffset:n=0}){return t.offset-n-(e?t.initialOffset:0)}async function hg(t){let e=await Te(t,0,Ht);return wg(K(e),0)==lr}function Ef(t){let e=K(t),n=0;for(;n+4<=ne(t);){let r=4+Zr(e,n+2);if(Zr(e,n)==$r)return Ef(kt(t.subarray(0,n),t.subarray(X.min(n+r,ne(t)))));n+=r}return t}async function gg(t,e,n,r){let{writer:i}=t,s=new mt;if(i.closeDisk){let a=et.from(n).sort((c,l)=>_r(e,c)-_r(e,l)),o=0;for(let c of a){let l=_r(e,c);await _s(t,e,o,l-o),Cn(i,await mg(e,l))&&await i.closeDisk(),s.set(c,{offset:ir(t,i),diskNumberStart:Dt(i)}),o=l}await _s(t,e,o,r-o)}else{let a=t.offset;await _s(t,e,0,r),n.forEach(o=>s.set(o,{offset:a+_r(e,o),diskNumberStart:0}))}return s}async function _s(t,e,n,r){if(r>0){let{writer:i}=t,s=0;try{await gf(tl(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 mg(t,e){let n=await Te(t,e,We);if(ne(n)<We)return We;let r=K(n);return We+Zr(r,uu+jt)+Zr(r,du+jt)}function _r(t,{offset:e,diskNumberStart:n}){return e+(t.getDiskOffset?t.getDiskOffset(n):0)}function hf(){let t=new Y(Ht);return Fe(K(t),0,lr),t}async function yo(t,e){delete t.addSplitZipSignature,await gt(e,hf()),t.offset+=Ht}async function gt(t,e){let{writable:n}=t,r=n.getWriter();try{await r.ready,t.size+=ne(e),await r.write(e)}finally{r.releaseLock()}}async function gf(t,e,n,r){let i=e.writable.getWriter();try{await t.pipeTo(new ct({async write(s){await i.ready,await i.write(s),r(ne(s))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{i.releaseLock()}}function Ts(t){if(t){let e=(Pe(t.getTime())+Pe(116444736e5))*Pe(1e4);return e<go?go:e>mo?mo:e}}function Dr(t){return X.floor(t.getTime()/1e3)}function mf(t){return t>=uf&&t<=df}function Io(t){return X.min(df,X.max(uf,t))}function J(t,e,n,r){let i=e[n]===m?t.options[n]:e[n];return i===m?r:i}function ps(t,e,n,r){let i=J(t,e,n,r);if(i===null)return r;if(i!==m&&(typeof i.getTime!=De||Re.isNaN(i.getTime())))throw new S(yh);return i}function wi(t,e,n){return Di(J(t,e,n))}function hn(t,e,n,r){return Jr(J(t,e,n,r))}function So(t){return t+5*(X.floor(t/16383)+1)}function _i(t,e){return t===m?e===m||e>0:t!==bt}function Zr(t,e){return t.getUint16(e,!0)}function wg(t,e){return t.getUint32(e,!0)}function _g(t,e,n){t.setUint8(e,n)}function dt(t,e,n){t.setUint16(e,n,!0)}function Fe(t,e,n){t.setUint32(e,n,!0)}function ar(t,e,n){t.setBigUint64(e,n,!0)}function or(t,e,n){t.set(e,n)}function ne(...t){let e=0;return t.forEach(n=>n&&(e+=n.length)),e}function wf({version:t,bitFlag:e,compressionMethod:n,uncompressedSize:r,compressedSize:i,lastModDate:s,rawLastModDate:a,rawFilename:o,zip64CompressedSize:c,zip64UncompressedSize:l,extraFieldLength:u}){let f=Ve(We-4),d=f.array,h=K(d);if(f.writeUint16(t),f.writeUint16(e),f.writeUint16(n),a===m){let g=new Oo(1),E=K(g);dt(E,0,(s.getHours()<<6|s.getMinutes())<<5|s.getSeconds()/2),dt(E,2,(s.getFullYear()-1980<<4|s.getMonth()+1)<<5|s.getDate()),a=g[0]}return f.writeUint32(a),f.skip(4),c||i!==m?f.writeUint32(c?me:i):f.skip(4),l||r!==m?f.writeUint32(l?me:r):f.skip(4),f.writeUint16(ne(o)),f.writeUint16(u),{headerArray:d,headerView:h,rawLastModDate:a}}function _f(t,e,n,r,i){let s=0;return e&&(s=s|xr),n&&(s=s|Fr),(i==Pn||i==jn)&&(t>=0&&t<=3&&(s=s|iu),t>3&&t<=5&&(s=s|su),t==9&&(s=s|ru)),r&&(s=s|Or),s}function Fm(){return"application/octet-stream"}function xm(){let{CompressionStream:t,DecompressionStream:e,CompressionStreamFallback:n,DecompressionStreamFallback:r}=on(),i=[{compressionMethod:bt,compression:!0,decompression:!0,registered:!1},{compressionMethod:Pn,compression:Ut(n,dn)||Ut(t,dn)||Ut(t,Nn),decompression:Ut(r,dn)||Ut(e,dn)||Ut(e,Nn),registered:!1},{compressionMethod:jn,compression:!1,decompression:Ut(r,Bs)||Ut(e,Bs),registered:!1}];for(let s of Pd()){let a=xi(s.format);i.push({compressionMethod:s.compressionMethod,compression:a?typeof a.CompressionStream==De:m,decompression:a?typeof a.DecompressionStream==De:m,registered:!0})}return i}function Ut(t,e){if(!t)return!1;let{supportedFormats:n}=t;return n?n.includes(e):Ci(t,e)}var Cm="2.11.1",Tg=1024*1024,pg=".zip.js-temp";function Pm(t={}){let{thresholdBytes:e=Tg,directoryName:n=pg,getDirectory:r=()=>Wn.storage.getDirectory()}=t,i;function s(){return i||(i=ge.resolve(r()).then(a=>a.getDirectoryHandle(n,{create:!0}))),i}return function(){let a=[],o=0,c=!1,l,u,f,d;async function h(){let T=await s();l=Rg(),u=await T.getFileHandle(l,{create:!0}),f=(await u.createWritable()).getWriter(),c=!0;for(let w of a)await f.write(w);a.length=0}let g=new ct({async write(T){c?await f.write(T):(a.push(T),o+=T.length,o>e&&await h())},async close(){f&&(await f.close(),f=null)}}),E=0,_=new ot({async pull(T){if(c){d||(d=(await u.getFile()).stream().getReader());let{value:w,done:p}=await d.read();p?T.close():T.enqueue(w)}else E<a.length?T.enqueue(a[E++]):T.close()},async cancel(T){d&&await d.cancel(T)}},{highWaterMark:0});async function R(){if(f){try{await f.close()}catch{}f=null}if(l){try{await(await s()).removeEntry(l)}catch{}u=l=null}a.length=0}return{writable:g,readable:_,dispose:R}}}function Rg(){return at.randomUUID?at.randomUUID():et.from(at.getRandomValues(new Y(16)),t=>t.toString(16).padStart(2,"0")).join("")}var Ag=1024*1024;function Lm(t={}){let{thresholdBytes:e=Ag}=t;return function(){let n=[],r=0,i=!1,s,a,o;async function c(){let h=new we;a=en(h.readable),s=h.writable.getWriter(),i=!0;for(let g of n)await s.write(g);n.length=0}let l=new ct({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 ot({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 yg=1024*1024,Ig=".zip.js-temp",Sg=512*1024,Dg="createSyncAccessHandle is only available in dedicated workers";function Um(t={}){let{thresholdBytes:e=yg,directoryName:n=Ig,getDirectory:r}=t;if(!r&&(typeof FileSystemFileHandle>"u"||!FileSystemFileHandle.prototype.createSyncAccessHandle))throw new S(Dg);let i=r||(()=>Wn.storage.getDirectory()),s;function a(){return s||(s=ge.resolve(i()).then(o=>o.getDirectoryHandle(n,{create:!0}))),s}return function(){let o=[],c=0,l=!1,u,f,d=0,h=0;async function g(){let w=await a();u=Ng(),f=await(await w.getFileHandle(u,{create:!0})).createSyncAccessHandle(),l=!0;for(let I of o)f.write(I,{at:d}),d+=I.length;o.length=0}let E=new ct({async write(w){l?(f.write(w,{at:d}),d+=w.length):(o.push(w),c+=w.length,c>e&&await g())},close(){f&&f.flush()}}),_=0,R=new ot({pull(w){if(l){let p=d-h;if(p<=0){w.close();return}let I=new Y(X.min(Sg,p)),D=f.read(I,{at:h});D?(h+=D,w.enqueue(I.subarray(0,D))):w.close()}else _<o.length?w.enqueue(o[_++]):w.close()}},{highWaterMark:0});async function T(){if(f){try{f.close()}catch{}f=null}if(u){try{await(await a()).removeEntry(u)}catch{}u=null}o.length=0}return{writable:E,readable:R,dispose:T}}}function Ng(){return at.randomUUID?at.randomUUID():et.from(at.getRandomValues(new Y(16)),t=>t.toString(16).padStart(2,"0")).join("")}try{nd({baseURI:import.meta.url})}catch{}var Ce=Y,Xe=jf,Qi=Int32Array,ns=new Ce([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]),rs=new Ce([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]),Ti=new Ce([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Tf=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 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}},pf=Tf(ns,2),Rf=pf.b,pi=pf.r;Rf[28]=258,pi[258]=28;var Af=Tf(rs,0),bg=Af.b,Do=Af.r,Ri=new Xe(32768);for(ue=0;ue<32768;++ue)Rt=(ue&43690)>>1|(ue&21845)<<1,Rt=(Rt&52428)>>2|(Rt&13107)<<2,Rt=(Rt&61680)>>4|(Rt&3855)<<4,Ri[ue]=((Rt&65280)>>8|(Rt&255)<<8)>>1;var Rt,ue,Et=(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[Ri[f]>>c]=l}else for(o=new Xe(r),i=0;i<r;++i)t[i]&&(o[i]=Ri[a[t[i]-1]++]>>15-t[i]);return o}),Vt=new Ce(288);for(ue=0;ue<144;++ue)Vt[ue]=8;var ue;for(ue=144;ue<256;++ue)Vt[ue]=9;var ue;for(ue=256;ue<280;++ue)Vt[ue]=7;var ue;for(ue=280;ue<288;++ue)Vt[ue]=8;var ue,cr=new Ce(32);for(ue=0;ue<32;++ue)cr[ue]=5;var ue,Og=Et(Vt,9,0),Fg=Et(Vt,9,1),xg=Et(cr,5,0),Cg=Et(cr,5,1),Rs=function(t){for(var e=t[0],n=1;n<t.length;++n)t[n]>e&&(e=t[n]);return e},nt=function(t,e,n){var r=e/8|0;return(t[r]|t[r+1]<<8)>>(e&7)&n},As=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},yf=function(t,e,n){return(n==null||n>t.length)&&(n=t.length),new Ce(t.subarray(e,n))},Pg=["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"],It=function(t,e,n){var r=new S(e||Pg[t]);if(r.code=t,S.captureStackTrace&&S.captureStackTrace(r,It),!n)throw r;return r},Lg=function(t,e,n,r){var i=t.length,s=r?r.length:0;if(!i||e.f&&!e.l)return n||new Ce(0);var a=!n,o=a||e.i!=2,c=e.i;a&&(n=new Ce(i*3));var l=function(ie){var _e=n.length;if(ie>_e){var ae=new Ce(X.max(_e*2,ie));ae.set(n),n=ae}},u=e.f||0,f=e.p||0,d=e.b||0,h=e.l,g=e.d,E=e.m,_=e.n,R=i*8;do{if(!h){u=nt(t,f,1);var T=nt(t,f+1,3);if(f+=3,T)if(T==1)h=Fg,g=Cg,E=9,_=5;else if(T==2){var D=nt(t,f,31)+257,y=nt(t,f+10,15)+4,O=D+nt(t,f+5,31)+1;f+=14;for(var P=new Ce(O),U=new Ce(19),M=0;M<y;++M)U[Ti[M]]=nt(t,f+M*3,7);f+=y*3;for(var B=Rs(U),V=(1<<B)-1,k=Et(U,B,1),M=0;M<O;){var W=k[nt(t,f,V)];f+=W&15;var w=W>>4;if(w<16)P[M++]=w;else{var b=0,x=0;for(w==16?(x=3+nt(t,f,3),f+=2,b=P[M-1]):w==17?(x=3+nt(t,f,7),f+=3):w==18&&(x=11+nt(t,f,127),f+=7);x--;)P[M++]=b}}var C=P.subarray(0,D),F=P.subarray(D);E=Rs(C),_=Rs(F),h=Et(C,E,1),g=Et(F,_,1)}else It(1);else{var w=ea(f)+4,p=t[w-4]|t[w-3]<<8,I=w+p;if(I>i){c&&It(0);break}o&&l(d+p),n.set(t.subarray(w,I),d),e.b=d+=p,e.p=f=I*8,e.f=u;continue}if(f>R){c&&It(0);break}}o&&l(d+131072);for(var H=(1<<E)-1,L=(1<<_)-1,Q=f;;Q=f){var b=h[As(t,f)&H],j=b>>4;if(f+=b&15,f>R){c&&It(0);break}if(b||It(2),j<256)n[d++]=j;else if(j==256){Q=f,h=null;break}else{var ee=j-254;if(j>264){var M=j-257,$=ns[M];ee=nt(t,f,(1<<$)-1)+Rf[M],f+=$}var fe=g[As(t,f)&L],oe=fe>>4;fe||It(3),f+=fe&15;var F=bg[oe];if(oe>3){var $=rs[oe];F+=As(t,f)&(1<<$)-1,f+=$}if(f>R){c&&It(0);break}o&&l(d+131072);var Ae=d+ee;if(d<F){var Ne=s-F,he=X.min(F,Ae);for(Ne+d<0&&It(3);d<he;++d)n[d]=r[Ne+d]}for(;d<Ae;++d)n[d]=n[d-F]}}e.l=h,e.p=Q,e.b=d,e.f=u,h&&(u=1,e.m=E,e.d=g,e.n=_)}while(!u);return d!=n.length&&a?yf(n,0,d):n.subarray(0,d)},At=function(t,e,n){n<<=e&7;var r=e/8|0;t[r]|=n,t[r+1]|=n>>8},kn=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},ys=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 Ce(n[0].s+1);return a[n[0].s]=1,{t:a,l:1}}n.sort(function(I,D){return I.f-D.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 Xe(d+1),g=Ai(n[u-1],h,0);if(g>e){var r=0,E=0,_=g-e,R=1<<_;for(s.sort(function(D,y){return h[y.s]-h[D.s]||D.f-y.f});r<i;++r){var T=s[r].s;if(h[T]>e)E+=R-(1<<g-h[T]),h[T]=e;else break}for(E>>=_;E>0;){var w=s[r].s;h[w]<e?E-=1<<e-h[w]++-1:++r}for(;r>=0&&E;--r){var p=s[r].s;h[p]==e&&(--h[p],++E)}g=e}return{t:new Ce(h),l:g}},Ai=function(t,e,n){return t.s==-1?X.max(Ai(t.l,e,n+1),Ai(t.r,e,n+1)):e[t.s]=n},No=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}},zn=function(t,e){for(var n=0,r=0;r<e.length;++r)n+=t[r]*e[r];return n},If=function(t,e,n){var r=n.length,i=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},bo=function(t,e,n,r,i,s,a,o,c,l,u){At(e,u++,n),++i[256];for(var f=ys(i,15),d=f.t,h=f.l,g=ys(s,15),E=g.t,_=g.l,R=No(d),T=R.c,w=R.n,p=No(E),I=p.c,D=p.n,y=new Xe(19),O=0;O<T.length;++O)++y[T[O]&31];for(var O=0;O<I.length;++O)++y[I[O]&31];for(var P=ys(y,7),U=P.t,M=P.l,B=19;B>4&&!U[Ti[B-1]];--B);var V=l+5<<3,k=zn(i,Vt)+zn(s,cr)+a,W=zn(i,d)+zn(s,E)+a+14+3*B+zn(y,U)+2*y[16]+3*y[17]+7*y[18];if(c>=0&&V<=k&&V<=W)return If(e,u,t.subarray(c,c+l));var b,x,C,F;if(At(e,u,1+(W<k)),u+=2,W<k){b=Et(d,h,0),x=d,C=Et(E,_,0),F=E;var H=Et(U,M,0);At(e,u,w-257),At(e,u+5,D-1),At(e,u+10,B-4),u+=14;for(var O=0;O<B;++O)At(e,u+3*O,U[Ti[O]]);u+=3*B;for(var L=[T,I],Q=0;Q<2;++Q)for(var j=L[Q],O=0;O<j.length;++O){var ee=j[O]&31;At(e,u,H[ee]),u+=U[ee],ee>15&&(At(e,u,j[O]>>5&127),u+=j[O]>>12)}}else b=Og,x=Vt,C=xg,F=cr;for(var O=0;O<o;++O){var $=r[O];if($>255){var ee=$>>18&31;kn(e,u,b[ee+257]),u+=x[ee+257],ee>7&&(At(e,u,$>>23&31),u+=ns[ee]);var fe=$&31;kn(e,u,C[fe]),u+=F[fe],fe>3&&(kn(e,u,$>>5&8191),u+=rs[fe])}else kn(e,u,b[$]),u+=x[$]}return kn(e,u,b[256]),u+x[256]},Ug=new Qi([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),Sf=new Ce(0),vg=function(t,e,n,r,i,s){var a=s.z||t.length,o=new Ce(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=Ug[e-1],d=f>>13,h=f&8191,g=(1<<n)-1,E=s.p||new Xe(32768),_=s.h||new Xe(g+1),R=X.ceil(n/3),T=2*R,w=function(ce){return(t[ce]^t[ce+1]<<R^t[ce+2]<<T)&g},p=new Qi(25e3),I=new Xe(288),D=new Xe(32),y=0,O=0,P=s.i||0,U=0,M=s.w||0,B=0;P+2<a;++P){var V=w(P),k=P&32767,W=_[V];if(E[k]=W,_[V]=k,M<=P){var b=a-P;if((y>7e3||U>24576)&&(b>423||!l)){u=bo(t,c,0,p,I,D,O,U,B,P-B,u),U=y=O=0,B=P;for(var x=0;x<286;++x)I[x]=0;for(var x=0;x<30;++x)D[x]=0}var C=2,F=0,H=h,L=k-W&32767;if(b>2&&V==w(P-L))for(var Q=X.min(d,b)-1,j=X.min(32767,P),ee=X.min(258,b);L<=j&&--H&&k!=W;){if(t[P+C]==t[P+C-L]){for(var $=0;$<ee&&t[P+$]==t[P+$-L];++$);if($>C){if(C=$,F=L,$>Q)break;for(var fe=X.min(L,$-2),oe=0,x=0;x<fe;++x){var Ae=P-L+x&32767,Ne=E[Ae],he=Ae-Ne&32767;he>oe&&(oe=he,W=Ae)}}}k=W,W=E[k],L+=k-W&32767}if(F){p[U++]=268435456|pi[C]<<18|Do[F];var ie=pi[C]&31,_e=Do[F]&31;O+=ns[ie]+rs[_e],++I[257+ie],++D[_e],M=P+C,++y}else p[U++]=t[P],++I[t[P]]}}for(P=X.max(P,M);P<a;++P)p[U++]=t[P],++I[t[P]];u=bo(t,c,l,p,I,D,O,U,B,P-B,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 ae=P+65535;ae>=a&&(c[u/8|0]=l,ae=a),u=If(c,u+1,t.subarray(P,ae))}s.i=a}return yf(o,0,r+ea(u)+i)},Mg=function(t,e,n,r,i){if(!i&&(i={l:1},e.dictionary)){var s=e.dictionary.subarray(-32768),a=new Ce(s.length+t.length);a.set(s),a.set(t,s.length),t=a,i.w=s.length}return vg(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 Df(t,e){return Mg(t,e||{},0,0)}function vm(t,e){return Lg(t,{i:2},e&&e.out,e&&e.dictionary)}var Bg=typeof Is<"u"&&new Is,Hg=0;try{Bg.decode(Sf,{stream:!0}),Hg=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/,_=/manifest\.json$/,R=";charset=utf-8",T=/([{}()^$&.*?/+|[\\\\]|\]|-)/g,w;if(!s){let b;t.readUint8Array?b=t:(Array.isArray(t)&&(t=new Blob([new Uint8Array(t)])),b=new zip.BlobReader(t)),w=new zip.ZipReader(b,r),s=await w.getEntries()}if(s=s.filter(b=>b.filename!="page.pdf"),c){let b=s;s=s.map(x=>{let C=c[x.filename],F=C&&b.find(H=>H.filename==C);return F?{filename:x.filename,comment:F.comment,encrypted:F.encrypted,uncompressedSize:F.uncompressedSize,getData:(H,L)=>F.getData(H,L)}:x})}a?s=s.filter(b=>b.filename.startsWith(a)):o&&(s=s.filter(b=>!o.some(x=>b.filename.startsWith(x))));let p=Object.assign({password:e},r),I,D,y,O=[],P=[],U=[];await Promise.all(s.map(async b=>{let x=b.filename.substring(a.length),C,F,H,L,Q={};if(!p.password&&b.encrypted&&(p.password=n("Please enter the password to view the page")),x.match(h)||x.match(u)||x.match(f))x.match(h)?P.push(Q):U.push(Q),C=new zip.TextWriter,b.uncompressedSize>0?H=await b.getData(C,p):H="",x.match(h)?L="text/html"+R:x.match(u)?L="text/css"+R:x.match(f)&&(L="text/javascript"+R);else{O.push(Q);let fe=x.match(/\.([^.]+)/);if(fe&&fe[1]&&l[fe[1]]?L=l[fe[1]]:L="application/octet-stream",x.match(g)||i)F=await b.getData(new zip.Data64URIWriter(L),p);else{let oe=await b.getData(new zip.BlobWriter(L),p);F=URL.createObjectURL(oe)}}let j=x.match(/^([0-9_]+\/)?(.*)$/)[2],ee="",$=x.match(/(.*\/)[^/]+$/);$&&$[1]&&(ee=$[1]),Object.assign(Q,{prefixPath:ee,filename:x,name:j,url:b.comment,content:F,mimeType:L,textContent:H,parentResources:[]})})),w&&await w.close(),P.sort(k),U.sort(W),O=O.sort(k).concat(...U).concat(...P);for(let b of O){let{filename:x,prefixPath:C}=b,{textContent:F}=b;F!==void 0&&(x.match(d)&&(D=F),x.match(f)||(O.forEach(H=>{let{filename:L,parentResources:Q,content:j}=H;if(L.startsWith(C)&&L!=b.filename){let ee=L.substring(C.length);ee.match(_)||F.includes(ee)&&(Q.push(b.filename),H.textContent===void 0&&(F=V(F,ee,j)))}}),b.textContent=F))}for(let b of O){let{textContent:x,prefixPath:C,filename:F}=b;if(x!==void 0){if(!F.match(f)){let H=F;for(let L of O){let{filename:Q}=L;if(Q.startsWith(C)&&Q!=H){let j=Q.substring(C.length);j.match(_)||x.indexOf(j)!=-1&&(L.content=await M(L),x=V(x,j,L.content))}}b.textContent=x,b.content=await M(b)}F.match(d)&&(I=x,y=b.url)}}return{docContent:I,origDocContent:D,resources:O,url:y};async function M(b){return b.filename.match(g)&&!b.filename.match(E)||i?await B(b.textContent,b.mimeType):URL.createObjectURL(new Blob([b.textContent],{type:b.mimeType}))}async function B(b,x){let C=new Blob([b],{type:x}),F=new Uint8Array(await C.arrayBuffer()),H="";for(let L=0;L<F.length;L+=8192)H+=String.fromCharCode(...F.subarray(L,L+8192));return("data:"+(C.type||"application/octet-stream")+";base64,"+btoa(H)).replace(R,"")}function V(b,x,C){if(typeof b.replaceAll=="function")return b.replaceAll(x,C);{let F=new RegExp(x.replace(T,"\\$1"),"g");return b.replace(F,C)}}function k(b,x){let C=x.filename.length-b.filename.length;return C||x.filename.localeCompare(b.filename)}function W(b,x){let C=b.filename.length-x.filename.length;return C||b.filename.localeCompare(x.filename)}}async function na(t,e,{disableFramePointerEvents:n,inPlace:r}={}){function i(a){let o=a.doctype,c="";return o&&(c="<!DOCTYPE "+o.nodeName,o.publicId?(c+=' PUBLIC "'+o.publicId+'"',o.systemId&&(c+=' "'+o.systemId+'"')):o.systemId&&(c+=' SYSTEM "'+o.systemId+'"'),o.internalSubset&&(c+=" ["+o.internalSubset+"]"),c+=">"),c}e=e.replace(/<noscript/gi,"<template disabled-noscript"),e=e.replace(/<\/noscript/gi,"</template");let s=new DOMParser().parseFromString(e,"text/html");if(n&&s.querySelectorAll("iframe").forEach(a=>{let o="pointer-events";a.style.setProperty("-sf-"+o,a.style.getPropertyValue(o),a.style.getPropertyPriority(o)),a.style.setProperty(o,"none","important")}),r&&s.compatMode==t.compatMode&&!s.querySelector("script")){await Promise.all(Array.from(s.querySelectorAll("link[rel~=stylesheet][href]")).map(c=>new Promise(l=>{let u=t.createElement("link");u.rel="preload",u.as="style",u.href=c.getAttribute("href"),u.onload=l,u.onerror=l,t.head.appendChild(u),setTimeout(l,500)})));let a=t.documentElement,o=t.adoptNode(s.documentElement);for(;a.attributes.length;)a.removeAttribute(a.attributes[0].name);if(Array.from(o.attributes).forEach(c=>a.setAttribute(c.name,c.value)),a.replaceChildren(...o.childNodes),t.querySelector("link[rel~=stylesheet][href]")){let c=t.createElement("style");c.textContent="html{visibility:hidden}",t.head.appendChild(c);let l=Date.now();for(;Date.now()-l<500&&Array.from(t.querySelectorAll("link[rel~=stylesheet][href]")).some(u=>!u.sheet);)await new Promise(u=>setTimeout(u,10));c.remove()}}else t.open(),t.write(i(s)),t.write(s.documentElement.outerHTML),t.close();t.querySelectorAll("template[disabled-noscript]").forEach(a=>{let o=t.createElement("noscript");a.removeAttribute("disabled-noscript"),Array.from(a.attributes).forEach(c=>o.setAttribute(c.name,c.value)),o.textContent=a.innerHTML,a.parentElement.replaceChild(o,a)}),t.documentElement.setAttribute("data-sfz",""),t.querySelectorAll("link[rel*=icon]").forEach(a=>a.replaceWith(a.cloneNode(!0)))}async function Nf(t,{extract:e,display:n}){let r="pages/",i="sfz-",s="sfz-pages.json",a="sfz-toc.html",o="#sfz/",c="?toc",l="data-sfz-target",u=/:target(?![\w-])/g,f="data-sfz-visited",d=/:visited(?![\w-])/g,h="#551a8b",g="data-sfz-unarchived",E="a["+g+']::after{content:" \\2197";font-size:.75em;opacity:.7}',_="Not saved in this archive",R=["http:","https:"],T=100,{zip:w,document:p,location:I,history:D,CSS:y,URL:O,setTimeout:P,clearTimeout:U}=globalThis,M=new Map,B=new Map,V=new Map,k=new Set,W=Math.random().toString(36).substring(2),b,x,C,F,H=0;try{D.scrollRestoration="manual"}catch{}w.configure({useWebWorkers:!0});let Q=await new w.ZipReader(t.readUint8Array?t:new w.BlobReader(t)).getEntries(),j=Q.find(A=>A.filename==s);if(!j)throw new Error("Pages data not found");let ee=JSON.parse(await j.getData(new w.TextWriter)),$=Q.find(A=>A.filename==a),{pages:fe}=ee,oe=ee.pageTransitions||"auto",Ae=new Map(Object.entries(ee.aliases||{}));return fe.forEach(A=>{B.set(be(A.url),A.path),A.originalUrls&&A.originalUrls.forEach(N=>B.set(be(N),A.path))}),Ne(),x=Pt(),x===null&&(x=Ke()),ae(!0);function Ne(){globalThis.addEventListener("click",ie,!0),globalThis.addEventListener("auxclick",ie,!0),globalThis.addEventListener("mouseover",Ct,!0),globalThis.addEventListener("hashchange",he)}function he(){_e().catch(A=>globalThis.console.error(A))}function ie(A){if(A.type=="auxclick"&&A.button!=1)return;let N=Ge(A.target);if(N&&N.href){let z=Mn(N.href);if(z&&z.startsWith(o)&&be(N.href)==be(I.href))return;let re=B.get(be(N.href));if(re===void 0&&z&&be(N.href)==be(I.href)&&(re=b),re!==void 0)if(A.preventDefault(),A.type=="auxclick"||A.metaKey||A.ctrlKey||A.shiftKey||A.altKey)globalThis.open(be(I.href)+o+re+(z||""));else{let Ee=I.hash;I.hash=o+re+(z||""),I.hash==Ee&&z&&(Lt(),je(z))}}}async function _e(){Lt(),V.set(x,cn());let A=Xt(),N=Pt(),{routed:z,path:re,fragment:Ee}=ce();z&&re!=b&&te(re)&&p.startViewTransition&&tt()&&!_t()?await p.startViewTransition(Bn).updateCallbackDone:await Bn();async function Bn(){let lt=await ae();lt&&cs(),ke(lt)}function ke(lt){if(N!==null){x=N;let Kt=V.get(N);if(Kt&&(qe(Kt.elements),globalThis.scrollTo(Kt.x,Kt.y)),Ee){let mr=$e(Ee);mr&&Zt(mr)}}else x=Ke(),lt&&qe(A),Ee?je(Ee):lt&&globalThis.scrollTo(0,0)}}async function ae(A){let{routed:N,path:z,fragment:re}=ce();if(!N&&!A||z==b||!te(z))return!1;let Ee=await G(z);return b=z,await n(p,Ee,{inPlace:!0}),Ne(),z==c&&Oe(),k.add(z),ln(),ee.markUnarchivedLinks&&xe(),A&&(re?je(re):!N&&I.hash&&je(I.hash)),!0}function ce(){let A=I.hash,N=!A||A.startsWith(o),z=fe[0].path,re;return N&&A&&({path:z,fragment:re}=Me(A)),{routed:N,path:z,fragment:re}}function Me(A){let N=A.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 te(A){return A==c?!!$:!!fe.find(N=>N.path==A)}function G(A){if(!M.has(A)){let N=ye(A);N.catch(()=>M.delete(A)),M.set(A,N)}return M.get(A)}async function ye(A){if(A==c)return $.getData(new w.TextWriter);let N=Q.filter(re=>Le(re.filename,A)&&!Ae.has(re.filename)).concat(de(A)),{docContent:z}=await e(null,{entries:N,pagePath:A});return z}function de(A){return Array.from(Ae).filter(([N])=>Le(N,A)).map(([N,z])=>{let re=Q.find(Ee=>Ee.filename==z);return re&&{filename:N,comment:re.comment,encrypted:re.encrypted,uncompressedSize:re.uncompressedSize,getData:(Ee,He)=>re.getData(Ee,He)}}).filter(Boolean)}function Le(A,N){return N==""?!A.startsWith(r)&&!A.startsWith(i):A.startsWith(N)}function Oe(){let A=new Map;fe.forEach(N=>A.set(new O(N.path+"index.html",be(I.href)).href,N.path)),p.querySelectorAll("a[href]").forEach(N=>{let z=Mn(N.href),re=A.get(be(N.href));re!==void 0&&N.setAttribute("href",o+re+(z||""))})}function Ze(A){let N=Mn(A);return N&&N.startsWith(o)&&be(A)==be(I.href)?Me(N).path:B.get(be(A))}function Ct(A){let N=Ge(A.target);if(N&&N.href){let z=Ze(N.href);z!==void 0&&z!=b&&!M.has(z)&&(U(F),F=P(()=>G(z).catch(()=>{}),T))}}function Ge(A){for(;A&&A.tagName!="A";)A=A.parentNode;return A}function tt(){return oe=="fade"?!0:oe=="none"?!1:Array.from(p.styleSheets).some(A=>{try{return Ie(A.cssRules)}catch{return!1}})}function Ie(A){return Array.from(A).some(N=>N.navigation=="auto"||N.cssRules&&N.cssRules.length&&Ie(N.cssRules))}function _t(){return!!(globalThis.matchMedia&&globalThis.matchMedia("(prefers-reduced-motion: reduce)").matches)}function Pt(){let A=D.state;return A&&A.sfzSession==W&&typeof A.sfzEntry=="number"?A.sfzEntry:null}function Ke(){let A=H++;try{D.replaceState({sfzSession:W,sfzEntry:A},"")}catch{}return A}function cn(){return{x:globalThis.scrollX,y:globalThis.scrollY,elements:Xt()}}function Xt(){let A=[];return p.querySelectorAll("*").forEach(N=>{if(N.scrollTop||N.scrollLeft){let z=Tt(N);z&&A.push({path:z,top:N.scrollTop,left:N.scrollLeft})}}),A}function qe(A){A.forEach(({path:N,top:z,left:re})=>{let Ee;try{Ee=p.querySelector(N)}catch{}Ee&&(Ee.scrollTop=z,Ee.scrollLeft=re)})}function Tt(A){let N=[];for(;A&&A.parentElement;){if(A.id&&y)return N.unshift("#"+y.escape(A.id)),N.join(">");let z=A.parentElement;N.unshift(A.tagName+":nth-child("+(Array.from(z.children).indexOf(A)+1)+")"),A=z}return N.join(">")}function je(A){let N=$e(A);N&&(Zt(N),N.scrollIntoView())}function $e(A){let N=decodeURIComponent(A.substring(1)),z=p.getElementById(N);return!z&&y&&(z=p.querySelector("a[name="+y.escape(N)+"]")),z}function Zt(A){let N=Be(u,l);N&&(A.setAttribute(l,""),C=p.createElement("style"),C.textContent=N,p.head.appendChild(C))}function ln(){let A=p.createElement("style");A.textContent="a["+f+"]{color:"+h+"}"+Be(d,f),p.head.appendChild(A),p.querySelectorAll("a[href]").forEach(N=>{let z=Ze(N.href);z!==void 0&&k.has(z)&&N.setAttribute(f,"")})}function xe(){let A=p.createElement("style");A.textContent=E,p.head.appendChild(A),p.querySelectorAll("a[href]").forEach(N=>{R.includes(N.protocol)&&B.get(be(N.href))===void 0&&be(N.href)!=be(I.href)&&(N.setAttribute(g,""),N.hasAttribute("title")||N.setAttribute("title",_))})}function Lt(){if(C){let A=p.querySelector("["+l+"]");A&&A.removeAttribute(l),C.remove(),C=void 0}}function Be(A,N){let z="";return Array.from(p.styleSheets).forEach(re=>{try{z+=pt(re.cssRules,A,N)}catch{}}),z}function pt(A,N,z){let re="";return Array.from(A).forEach(Ee=>{if(Ee.cssRules&&Ee.cssRules.length){let He=pt(Ee.cssRules,N,z);He&&(re+=Ee.cssText.substring(0,Ee.cssText.indexOf("{")+1)+He+"}")}else if(Ee.selectorText){let He=Ee.selectorText.replace(N,"["+z+"]");He!=Ee.selectorText&&(re+=He+"{"+Ee.style.cssText+"}")}}),re}function cs(){let A=p.querySelector("h1")||p.body;A&&(A.setAttribute("tabindex","-1"),A.focus({preventScroll:!0}))}function be(A){let N=A.indexOf("#");return N==-1?A:A.substring(0,N)}function Mn(A){let N=A.indexOf("#");return N==-1?void 0:A.substring(N)}}var{Blob:sa,fetch:kg,TextEncoder:wt,TextDecoder:zg,DOMParser:bf}=globalThis,Wt=new zg("windows-1252"),Gg=["application/javascript","application/x-javascript","application/ecmascript","application/json","application/ld+json","application/manifest+json","application/xml","application/xhtml+xml","application/rss+xml","application/atom+xml","image/svg+xml"],Yg="text/",Vg=[".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"],Wg="/lib/single-file-zip.min.js",os=[["<script type=sfz-data>","</script>"],["<style type=sfz-data>","</style>"],["<noframes>","</noframes>"],["<noembed>","</noembed>"],["<iframe>","</iframe>"],["<xmp>","</xmp>"],["<svg><![CDATA[","]]></svg>"],["<plaintext>","</plaintext>"]],la=[["<!--","-->"],...os],Of="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],[/<!\[CDATA\[/i,/\]\]>/],[/<plaintext/i,/<\/plaintext[\t\n\f\r />]/i]],ua=[[/<!--/i,/--!?>|<!-$/i],...fa],ia=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}),is=12,Ff=4,da=8,Ea=25,Mf=2,xf=65535,Xg="page.pdf",Cf=1024,Bf=12,Hf=new Uint8Array([116,69,88,116,90,73,80,0]),Zg=754974720,Pf=12,Lf="<!DOCTYPE html>",Kg="SingleFile: the page data contains every HTML tag that could hide an embedded file, the archive was written without its",qg="PNG image",jg="PDF document",$g=67324752,Jg=33639248,Qg=101010256,em=101075792,tm=117853008,Uf=2048,ss=globalThis.browser,qm=["createRootDirectory","declareAppendedData","disableCompression","embeddedImage","embeddedPdf","extractDataFromPage","includeBOM","insertCanonicalLink","insertMetaCSP","insertMetaNoIndex","insertTextBody","password","preventAppendedData","selfExtractingArchive","url","zipScript"];async function jm(t,e,n=new Date){let r,i=!!(ss&&ss.runtime&&ss.runtime.getURL);return i?Ln({workerURI:"/lib/single-file-z-worker.js"}):Ln({useWebWorkers:!1}),e.zipScript?r=e.zipScript:i&&(r=await(await kg(ss.runtime.getURL(Wg))).text()),ha(t,e,r,s=>(t.url=e.url,t.archiveTime=new Date().toISOString(),Xf(s,t,{password:e.password,disableCompression:e.disableCompression},e.createRootDirectory?String(Date.now())+"_"+(e.tabId||0)+"/":"",e.url)),n)}async function ha(t,e,n,r,i=new Date){let s={bufferedWrite:!0,keepOrder:!0,lastModDate:i,useCompressionStream:!0},a=new xn(new nn,s);await r(a);let o=await a.close();return hr(t,e,n,o,s)}async function hr(t,e,n,r,i){let{lastModDate:s}=i,a=new nn;a.init();let o,c,l,u,f;e.embeddedImage&&(e.embeddedImage=new Uint8Array(e.embeddedImage));let d;if(e.embeddedImage&&e.selfExtractingArchive&&(d=lm(t,e,s),d||Wf(e,"embeddedImage",qg)),e.embeddedImage){let T=Vf(e.embeddedImage);if(await ze(a.writable,e.embeddedImage.slice(0,da+Ea)),e.selfExtractingArchive)u=d.endTag,d.startHTMLData.pdfEntry&&(f=d.startHTMLData.pdfEntry,f.offset+=a.offset+Bf),await ze(a.writable,d.htmlData),await ze(a.writable,d.htmlDataCRC);else if(e.embeddedPdf){let w=new Uint8Array([...oa(e.embeddedPdf.length+4),116,69,88,116,80,68,70,0,...new Uint8Array(e.embeddedPdf)]);await ze(a.writable,w),await ze(a.writable,aa(w,4))}await ze(a.writable,T),await ze(a.writable,new Uint8Array(4)),l=a.offset,await ze(a.writable,Hf),e.selfExtractingArchive&&await ze(a.writable,new wt().encode(u))}if(e.selfExtractingArchive){let T=await im(t,a,n,e,s);o=T.extraDataOffset,f=f||T.pdfEntry}else!e.embeddedImage&&e.embeddedPdf&&await ze(a.writable,new Uint8Array(e.embeddedPdf));let h=a.offset,g=new xn({writable:a.writable,size:h},i);if(await g.appendZip(new tn(r)),f&&(new DataView(f.centralRecord.buffer).setUint32(42,f.offset,!0),await ze(a.writable,f.centralRecord)),await g.close(void 0,{preventClose:!0}),f&&!sm(a,f.centralRecord.length))return e.preventEmbeddedPdfEntry=!0,hr(t,e,n,r,i);let E=a.getData(),_=E.length-Mf;if(e.selfExtractingArchive){let T=[],w=-1;if(!e.extractDataFromPageTags||e.extractDataFromPageTags[0]!="<plaintext>"){let D=Wt.decode(E.subarray(h));if(e.extractDataFromPageTags){let y=Yf(e.extractDataFromPageTags),O=fa[y];if(D.match(O[0])||D.match(O[1]))return ca(D,t,e,n,r,i,y+1)}else{let[y,O]=ua[0];if(D.match(y)||D.match(O))return ca(D,t,e,n,r,i)}}if(e.extractDataFromPage){for(let D=h;D<_;D++){let y=E[D];w=w>>>8^ia[(w^y)&255],y==10?T.push(0):y==13&&(D+1<_&&E[D+1]==10?(D++,w=w>>>8^ia[(w^10)&255],T.push(2)):T.push(1))}w=(w^-1)>>>0}let p="";e.preventAppendedData||(e.extractDataFromPageTags?p+=e.extractDataFromPageTags[1]:p+="-->");let I=e.preventAppendedData||e.embeddedImage?"":"</body></html>";if(e.extractDataFromPage){let D=new Uint32Array(3+Math.ceil(T.length/16));D[0]=w,D[1]=_-h,D[2]=T.length,T.forEach((P,U)=>D[3+(U>>4)]|=P<<(U&15)*2);let y=new Uint8Array(D.length*4),O=new DataView(y.buffer);if(D.forEach((P,U)=>O.setUint32(U*4,P,!0)),c="<sfz-extra-data>"+dm(Df(y))+"</sfz-extra-data>",e.preventAppendedData||c.length>xf-p.length-I.length-(e.embeddedImage?is+Ff:0)){if(!e.extraDataSize)return e.preventAppendedData=!0,e.extraDataSize=vf(c.length),hr(t,e,n,r,i)}else p+=c}p+=I,await ze(a.writable,new wt().encode(p))}await a.writable.close();let R=await a.getData();if(e.extractDataFromPage&&e.extraDataSize!==void 0)if(e.extraDataSize>=c.length)R.set(new wt().encode(c),h-o);else return e.extraDataSize=vf(c.length),hr(t,e,n,r,i);if(e.declareAppendedData){let T=R.length-E.length+(e.embeddedImage?Ff+is:0);T&&T<=xf&&nm(R,_,T,e)&&new DataView(R.buffer,R.byteOffset).setUint16(_,T,!0)}if(e.embeddedImage){let T=a.offset-l-4;if(e.selfExtractingArchive&&T>=Zg)throw new Error("SingleFile: the embedded PNG chunk is too large to be hidden from the HTML parser");return R.set(oa(T),l-4),new sa([R,aa(R,l),e.embeddedImage.slice(e.embeddedImage.length-is)],{type:"application/octet-stream"})}else return new sa([R],{type:"application/octet-stream"})}function nm(t,e,n,r){if(r.extractDataFromPageTags&&r.extractDataFromPageTags[0]=="<plaintext>")return!0;let i=t.slice(e-Pf,e+Mf);new DataView(i.buffer).setUint16(Pf,n,!0);let s=r.extractDataFromPageTags?Yf(r.extractDataFromPageTags)+1:0,[a,o]=ua[s],c=Wt.decode(i);return!c.match(a)&&!c.match(o)}function aa(t,e=0){let n=new Uint8Array(4);return zf(n,kf(t,e)),n}function kf(t,e=0){let n=-1;for(;e<t.length;e++)n=n>>>8^ia[(n^t[e])&255];return(n^-1)>>>0}function rm(t,e=new Date){let n=new wt().encode(Xg),r=kf(t),i=e.getHours()<<11|e.getMinutes()<<5|e.getSeconds()>>1,s=Math.max(0,e.getFullYear()-1980)<<9|e.getMonth()+1<<5|e.getDate(),a=new Uint8Array(30+n.length),o=new DataView(a.buffer);o.setUint32(0,$g,!0),o.setUint16(4,20,!0),o.setUint16(6,Uf,!0),o.setUint16(10,i,!0),o.setUint16(12,s,!0),o.setUint32(14,r,!0),o.setUint32(18,t.length,!0),o.setUint32(22,t.length,!0),o.setUint16(26,n.length,!0),a.set(n,30);let c=new Uint8Array(46+n.length),l=new DataView(c.buffer);return l.setUint32(0,Jg,!0),l.setUint16(4,768,!0),l.setUint16(6,20,!0),l.setUint16(8,Uf,!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 sm(t,e){let n=new DataView(t.array.buffer),r=t.offset-22;if(n.getUint32(r,!0)!=Qg)return!1;let i=n.getUint16(r+8,!0),s=n.getUint16(r+10,!0),a=n.getUint32(r+12,!0),o=r-20,c;if(o>=0&&n.getUint32(o,!0)==tm){if(c=Number(n.getBigUint64(o+8,!0))+e,n.getUint32(c,!0)!=em)return!1}else if(i+1>=65535||s+1>=65535||a+e>=4294967295)return!1;return i!=65535&&n.setUint16(r+8,i+1,!0),s!=65535&&n.setUint16(r+10,s+1,!0),a!=4294967295&&n.setUint32(r+12,a+e,!0),c!==void 0&&(n.setBigUint64(o+8,BigInt(c),!0),n.setBigUint64(c+24,n.getBigUint64(c+24,!0)+1n,!0),n.setBigUint64(c+32,n.getBigUint64(c+32,!0)+1n,!0),n.setBigUint64(c+40,n.getBigUint64(c+40,!0)+BigInt(e),!0)),!0}function Un(t){return t.toString().replace(/^[ \t]*\/\/.*$/gm,"").replace(/\n|\t/g,"")}function vf(t){return Math.ceil(t*1.01)+32}function oa(t){let e=new Uint8Array(4);return zf(e,t),e}function zf(t,e){t[0]=e>>24,t[1]=e>>16,t[2]=e>>8,t[3]=e}async function im(t,e,n,r,i){let s="",a;if(!r.embeddedImage){let f=Gf(t,r,i);f.pdfEntry&&(a=f.pdfEntry,a.offset+=e.offset),await ze(e.writable,f.htmlArray)}if(s+="<div id=sfz-wait-message>Please wait...</div>",r.extractDataFromPage?(s+="<div id=sfz-error-message><strong>Error</strong>: Cannot extract the data of the page.",s+=' The file is still a valid ZIP file, you can rename it with a "zip" extension and unzip it to display the page and its resources.</div>'):(s+="<div id=sfz-error-message><strong>Error</strong>: Cannot open the page from the filesystem.",s+="<ul style='line-height:20px;'>",s+=`<li style='margin-bottom:10px'><strong>Chrome/Edge/Brave</strong>: Install <a href='https://www.getsinglefile.com'>SingleFile</a> and enable the option "Allow access to file URLs" in the details page of the extension.</li>`,s+='<li><strong>Safari</strong>: Select "Security > Disable Local File Restrictions" in the "Develop > Developer settings" menu.</li></ul></div>'),t.tocContent&&(s+=t.tocContent),r.insertTextBody&&!r.password){let f=new bf().parseFromString(t.content,"text/html");f.body.querySelectorAll("style, script, noscript").forEach(h=>h.remove());let d="";r.extractDataFromPage&&(d+=(t.title||"")+`
|
|
2
2
|
|
|
3
|
-
`),d+=f.body.innerText,f.body.querySelectorAll("single-file-note").forEach(h=>{let g=h.querySelector("template");if(g){let E=new
|
|
3
|
+
`),d+=f.body.innerText,f.body.querySelectorAll("single-file-note").forEach(h=>{let g=h.querySelector("template");if(g){let E=new bf().parseFromString(g.innerHTML,"text/html");d+=`
|
|
4
4
|
`+E.body.querySelector("textarea").value}}),d=d.replace(/</g,"<").replace(/>/g,">").replace(/\n +/g,`
|
|
5
5
|
`).replace(/\n\n\n+/g,`
|
|
6
6
|
|
|
@@ -8,8 +8,8 @@ var{Array:je,Object:U,String:pa,Number:pe,BigInt:Ce,Math:W,Date:St,Map:gt,Set:Ir
|
|
|
8
8
|
<main hidden>
|
|
9
9
|
`+d+`
|
|
10
10
|
</main>
|
|
11
|
-
`}let o=r.multiPageArchive?"("+Un(Pf)+")(content,{extract:"+Un(ra)+",display:"+Un(sa)+"})":"("+Un(ra)+")(content,{prompt}).then(({docContent}) => "+Un(sa)+"(document,docContent))";n="<script>"+n+"document.currentScript.remove();globalThis.bootstrap=(()=>{let bootstrapStarted;return async content=>{if (bootstrapStarted) return bootstrapStarted; bootstrapStarted = "+o+";return bootstrapStarted;}})();("+Un(_m)+')().then(globalThis.bootstrap).then(() => document.dispatchEvent(new CustomEvent("single-file-display-infobar"))).catch(error => {console.error(error);const waitMessage = document.getElementById("sfz-wait-message");if (waitMessage) { waitMessage.remove(); }const errorMessage = document.getElementById("sfz-error-message");if (errorMessage) { errorMessage.hidden = false; document.body.hidden = false; }});</script>',s+=n;let c="";if(r.extractDataFromPage&&r.extraDataSize){let f="<sfz-extra-data></sfz-extra-data>";c+=f+new Array(r.extraDataSize-f.length).fill(" ").join("")}s+=c;let l=Em(r.extractDataFromPageTags||ua[0]);s+=l;let u=l.length+c.length;return await ke(e.writable,new mt().encode(s)),{extraDataOffset:u,pdfEntry:a}}function Em([t]){if(t=="<!--")return t+Lf;let e=t.indexOf(">");return t.slice(0,e)+" id="+Lf+t.slice(e)}function Zf(t,e,n,r=""){let i="";e.includeBOM&&!e.extractDataFromPage&&!e.embeddedImage&&(i="\uFEFF");let s=e.embeddedImage?"":t.doctype,o="<html data-sfz><meta charset="+(e.extractDataFromPage?"windows-1252":"utf-8")+">",c=e.embeddedImage?ha+ga+Yf:0,l=i+s+o;c+new mt().encode(l).length>vf&&(l=i+Bf+o);let u=t.comment&&!e.embeddedImage&&!e.password?"<!--"+gm(t.comment)+"-->":"",f=hm(t,e),d,h;if(e.embeddedPdf){let g=new Uint8Array(e.embeddedPdf);h=e.preventEmbeddedPdfEntry?void 0:fm(g,n);let E=h?h.localHeader:new Uint8Array(0),_=Vt.decode(E)+Vt.decode(g),R=is(_);if(R==-1)jf(e,"embeddedPdf",rm),h=void 0;else{let[T,w]=ua[R],p=new mt().encode(l+T);c+p.length+E.length>vf&&(p=new mt().encode(i+Bf+o+T));let S=new mt().encode(w+u+f+r);d=new Uint8Array(p.length+E.length+g.length+S.length),d.set(p),d.set(E,p.length),d.set(g,p.length+E.length),d.set(S,p.length+E.length+g.length),h&&(h.offset=p.length)}}return e.embeddedPdf||(d=new mt().encode(l+u+f+r)),{htmlArray:d,pdfEntry:h}}function hm(t,e){let n="",r=e.password?"":Mn(t.title||"");return n+="<title>"+r+"</title>",e.insertCanonicalLink&&!e.password&&(n+='<link rel=canonical href="'+Mn(e.url)+'">'),e.insertMetaNoIndex&&(n+="<meta name=robots content=noindex>"),t.viewport&&(n+='<meta name=viewport content="'+Mn(t.viewport)+'">'),e.insertMetaCSP&&(n+=`<meta http-equiv=content-security-policy content=${JSON.stringify("default-src 'none';connect-src 'self' data: blob:;font-src 'self' data: blob:;img-src 'self' data: blob:;style-src 'self' 'unsafe-inline' data: blob:;frame-src 'self' data: blob:;media-src 'self' data: blob:;script-src 'self' 'unsafe-inline' data: blob:;object-src 'self' data: blob:;form-action 'none';base-uri 'none'")}>`),n+="<style>@keyframes display-wait-message{0%{opacity:0}100%{opacity:1}}body{color:transparent}div{color:initial}body>:not(#sfz-wait-message,#sfz-error-message){display:none}</style>",n+="<body hidden>",n}function gm(t){let e=t.replace(/--(!?)>/g,"--$1 >");return(e.startsWith(">")||e.startsWith("->"))&&(e=" "+e),e.endsWith("<!-")&&(e+=" "),e}function Mn(t){return Array.from(t).map(e=>{let n=e.codePointAt(0);return n<32||n>126||e=="&"||e=="<"||e==">"||e=='"'?"&#"+n+";":e}).join("")}function Kf(t){let e=as.findIndex(([n])=>n==t[0]);if(e==-1)throw new Error("Unknown data tags: "+t[0]);return e}function fa(t,e,n,r,i,s,a=0){let o=da[a];return!(as[a][0]=="<plaintext>")&&(t.match(o[0])||t.match(o[1]))?fa(t,e,n,r,i,s,a+1):(n.extractDataFromPageTags=as[a],n.extractDataFromPageTags[0]=="<plaintext>"&&(n.preventAppendedData=!0),ur(e,n,r,i,s))}function is(t,e=0){let n=Ea.slice(e,-1).findIndex(([r,i])=>!t.match(r)&&!t.match(i));return n==-1?-1:n+e}function mm(t,e,n){let r=Vt.decode(qf(e.embeddedImage))+Vt.decode(new Uint8Array(4))+Vt.decode(Vf),i=is(r);for(;i!=-1;){let[s,a]=ua[i],o=Zf(t,e,n,s),c=new Uint8Array([...la(o.htmlArray.length+4),116,69,88,116,80,78,71,0,...o.htmlArray]),l=ca(c,4),u=Vt.decode(l)+r;if(i==0&&(l[0]==62||l[0]==45&&l[1]==62)||is(u,i)!=i)i=is(r,i+1);else return{endTag:a,startHTMLData:o,htmlData:c,htmlDataCRC:l}}}function qf(t){return t.slice(ha+ga,t.length-ss)}function jf(t,e,n){delete t[e],console.warn(tm,n)}async function ke(t,e){let n=t.getWriter();await n.ready,await n.write(e),n.releaseLock()}async function $f(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"?(c.archiveTime=e.archiveTime,$f(t,c,n,r+c.name,c.url)):ia(t,r,c,n.disableCompression)))))])}async function ia(t,e,n,r){let i=typeof n.content=="string"?new Gt(n.content):new Nt(new aa([new Uint8Array(n.content)])),s={password:n.password,bufferedWrite:!0};n.password||(s.comment=n.url&&n.url.startsWith("data:")?"data:":n.url),(r||!wm(n.contentType)&&$g.includes(n.extension))&&(s.level=0),await t.add(e+n.name,i,s)}function wm(t){return!!t&&(t.startsWith(jg)||qg.includes(t))}async function _m(){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",e="sfz-data",{Blob:n,XMLHttpRequest:r,NodeFilter:i,document:s,zip:a,location:o}=globalThis,c=new Map([[65533,0],[8364,128],[8218,130],[402,131],[8222,132],[8230,133],[8224,134],[8225,135],[710,136],[8240,137],[352,138],[8249,139],[338,140],[381,142],[8216,145],[8217,146],[8220,147],[8221,148],[8226,149],[8211,150],[8212,151],[732,152],[8482,153],[353,154],[8250,155],[339,156],[382,158],[376,159]]),l=new Uint32Array(256).map((E,_)=>{let R=_;for(let T=0;T<8;T++)R=R&1?3988292384^R>>>1:R>>>1;return R});return new Promise((E,_)=>{let R=!1;o.protocol=="file:"?T():w();async function T(){try{await u(s),s.body.querySelectorAll("meta, style").forEach(S=>s.head.appendChild(S));let p=d();f("sfz-wait-message",2),E(p)}catch(p){console.error(p),f("sfz-error-message",2),_(p)}}function w(){let p=new r;p.responseType="blob",p.open("GET",""),p.onerror=()=>T(),p.send(),p.onreadystatechange=()=>{if(p.readyState===2&&!R)if(p.status===200){R=!0;let S=p.getResponseHeader("Accept-Ranges")==="bytes";p.abort(),f("sfz-wait-message",2,!0),S?E(new a.HttpRangeReader(o.href,{useXHR:!0,combineSizeEocd:!0})):w()}else p.abort(),T()},R&&(p.onload=()=>{p.status===200?E(p.response):T()})}});function u(E){return new Promise(_=>{E.readyState==="complete"||E.readyState==="interactive"?_():E.addEventListener("DOMContentLoaded",()=>_())})}function f(E,_=0,R){let T=s.getElementById(E);T&&(Array.from(s.body.childNodes).forEach(w=>{w.id!=E&&(w.id=="sfz-wait-message"||w.id=="sfz-error-message"?w.hidden=!0:R||w.remove())}),T.hidden=!1,s.body.hidden=!1,T.style="opacity: 0; animation: 0s linear "+_+"s display-wait-message 1 normal forwards")}function d(){let E=s.querySelector("sfz-extra-data");if(E){let _=a.inflateRaw(g(E.textContent)),R=new DataView(_.buffer,_.byteOffset,_.length&-4),T=s.getElementById(e);if(T)return h(T,R,0);let w=s.createTreeWalker(s,i.SHOW_COMMENT);for(;w.nextNode();)if(w.currentNode.data.startsWith(e))return h(w.currentNode,R,e.length)}throw new Error("Extra zip data not found")}function h(E,_,R){let T=_.getUint32(0,!0),w=_.getUint32(4,!0),p=_.getUint32(8,!0),S=new Uint8Array(w+2),{textContent:N}=E,y=0,F=0,x=-1;for(let M=R;M<N.length&&y<w;M++){let H=N.charCodeAt(M);if(H==10){let G=_.getUint32(12+(F>>4)*4,!0)>>>(F&15)*2&3;if(F++,G==3)throw new Error("Unsupported newline code in the extracted zip data");G==0?v(10):(v(13),G==2&&v(10))}else v(H>255?c.get(H):H)}if(x=(x^-1)>>>0,y!=w||F!=p||x!=T)throw new Error("Invalid checksum of the extracted zip data");return new n([S],{type:"application/octet-stream"});function v(M){S[y]=M,x=x>>>8^l[(x^M)&255],y++}}function g(E){E=String(E).replace(/[^A-Za-z0-9+/=]/g,"");let _=E.length,R=[];for(let T=0;T<_;T+=4){let w=t.indexOf(E[T]),p=t.indexOf(E[T+1]),S=t.indexOf(E[T+2]),N=t.indexOf(E[T+3]),y=w<<18|p<<12|(S&63)<<6|N&63;R.push(y>>16&255),E[T+2]!=="="&&R.push(y>>8&255),E[T+3]!=="="&&R.push(y&255)}return new Uint8Array(R)}}var bt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Tm(t){let e="",n=t.length,r=0;for(;r+2<n;r+=3){let s=t[r]<<16|t[r+1]<<8|t[r+2];e+=bt[s>>18&63]+bt[s>>12&63]+bt[s>>6&63]+bt[s&63]}let i=n-r;if(i===1){let s=t[r]<<16;e+=bt[s>>18&63]+bt[s>>12&63]+"=="}else if(i===2){let s=t[r]<<16|t[r+1]<<8;e+=bt[s>>18&63]+bt[s>>12&63]+bt[s>>6&63]+"="}return e}var wa=globalThis.browser,pm="pages/",Rm="sfz-pages.json",Am="sfz-toc.html",_a="Table of contents",ym="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}}",Sm="Page saved with SingleFile",Im=41471;async function ow(t,e){wa&&wa.runtime&&wa.runtime.getURL?Ln({workerURI:"/lib/single-file-z-worker.js",workerStartupTimeout:2e3}):Ln({useWebWorkers:!1});let n={pages:t.map((c,l)=>({path:Jf(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?Om(t[0].url,e):void 0,tocContent:e.pageList?xm(t):void 0},i={url:t[0].url,multiPageArchive:!0,selfExtractingArchive:e.selfExtractingArchive,extractDataFromPage:e.extractDataFromPage,preventAppendedData:e.preventAppendedData,declareAppendedData:e.declareAppendedData,embeddedPdf:e.embeddedPdf,embeddedImage:e.embeddedImage,includeBOM:e.includeBOM,insertMetaCSP:e.insertMetaCSP,insertCanonicalLink:e.insertCanonicalLink,insertMetaNoIndex:e.insertMetaNoIndex},s=e.dedupPages?new Map:void 0,a={},o=await ma(r,i,e.zipScript,async c=>{for(let l=0;l<t.length;l++){let u=Jf(l),f=new Fn(new en(await t[l].getData()));for(let d of await f.getEntries()){let h=u+d.filename,g=await d.getData(new tn,{passThrough:!0,checkSignature:!1}),E=s&&Dm(s,h,d,g);E===void 0?await c.add(h,new en(g),{passThrough:!0,compressionMethod:d.compressionMethod,uncompressedSize:d.uncompressedSize,signature:d.signature,comment:d.comment,lastModDate:d.lastModDate}):(a[h]=E,await c.add(h,new Gt(bm(h,E)),{msDosCompatible:!1,unixMode:Im,level:0,comment:d.comment,lastModDate:d.lastModDate}))}await f.close()}Object.keys(a).length&&(n.aliases=a),e.tocPage&&await c.add(Am,new Gt(Fm(n.pages))),await c.add(Rm,new Gt(JSON.stringify(n,null,2)))});return new Uint8Array(await o.arrayBuffer())}function Dm(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=>Nm(o.rawData,r));if(a)return a.filename;s.push({filename:e,rawData:r})}else t.set(i,[{filename:e,rawData:r}])}function Nm(t,e){return t.length==e.length&&t.every((n,r)=>n==e[r])}function bm(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 Jf(t){return t==0?"":pm+(t+1)+"/"}function Om(t,e){return`
|
|
12
|
-
`+
|
|
11
|
+
`}let o=r.multiPageArchive?"("+Un(Nf)+")(content,{extract:"+Un(ta)+",display:"+Un(na)+"})":"("+Un(ta)+")(content,{prompt}).then(({docContent}) => "+Un(na)+"(document,docContent))";n="<script>"+n+"document.currentScript.remove();globalThis.bootstrap=(()=>{let bootstrapStarted;return async content=>{if (bootstrapStarted) return bootstrapStarted; bootstrapStarted = "+o+";return bootstrapStarted;}})();("+Un(um)+')().then(globalThis.bootstrap).then(() => document.dispatchEvent(new CustomEvent("single-file-display-infobar"))).catch(error => {console.error(error);const waitMessage = document.getElementById("sfz-wait-message");if (waitMessage) { waitMessage.remove(); }const errorMessage = document.getElementById("sfz-error-message");if (errorMessage) { errorMessage.hidden = false; document.body.hidden = false; }});</script>',s+=n;let c="";if(r.extractDataFromPage&&r.extraDataSize){let f="<sfz-extra-data></sfz-extra-data>";c+=f+new Array(r.extraDataSize-f.length).fill(" ").join("")}s+=c;let l=am(r.extractDataFromPageTags||la[0]);s+=l;let u=l.length+c.length;return await ze(e.writable,new wt().encode(s)),{extraDataOffset:u,pdfEntry:a}}function am([t]){if(t=="<!--")return t+Of;let e=t.indexOf(">");return t.slice(0,e)+" id="+Of+t.slice(e)}function Gf(t,e,n,r=""){let i="";e.includeBOM&&!e.extractDataFromPage&&!e.embeddedImage&&(i="\uFEFF");let s=e.embeddedImage?"":t.doctype,o="<html data-sfz><meta charset="+(e.extractDataFromPage?"windows-1252":"utf-8")+">",c=e.embeddedImage?da+Ea+Bf:0,l=i+s+o;c+new wt().encode(l).length>Cf&&(l=i+Lf+o);let u=t.comment&&!e.embeddedImage&&!e.password?"<!--"+cm(t.comment)+"-->":"",f=om(t,e),d,h;if(e.embeddedPdf){let g=new Uint8Array(e.embeddedPdf);h=e.preventEmbeddedPdfEntry?void 0:rm(g,n);let E=h?h.localHeader:new Uint8Array(0),_=Wt.decode(E)+Wt.decode(g),R=as(_);if(R==-1)Wf(e,"embeddedPdf",jg),h=void 0;else{let[T,w]=la[R],p=new wt().encode(l+T);c+p.length+E.length>Cf&&(p=new wt().encode(i+Lf+o+T));let I=new wt().encode(w+u+f+r);d=new Uint8Array(p.length+E.length+g.length+I.length),d.set(p),d.set(E,p.length),d.set(g,p.length+E.length),d.set(I,p.length+E.length+g.length),h&&(h.offset=p.length)}}return e.embeddedPdf||(d=new wt().encode(l+u+f+r)),{htmlArray:d,pdfEntry:h}}function om(t,e){let n="",r=e.password?"":vn(t.title||"");return n+="<title>"+r+"</title>",e.insertCanonicalLink&&!e.password&&(n+='<link rel=canonical href="'+vn(e.url)+'">'),e.insertMetaNoIndex&&(n+="<meta name=robots content=noindex>"),t.viewport&&(n+='<meta name=viewport content="'+vn(t.viewport)+'">'),e.insertMetaCSP&&(n+=`<meta http-equiv=content-security-policy content=${JSON.stringify("default-src 'none';connect-src 'self' data: blob:;font-src 'self' data: blob:;img-src 'self' data: blob:;style-src 'self' 'unsafe-inline' data: blob:;frame-src 'self' data: blob:;media-src 'self' data: blob:;script-src 'self' 'unsafe-inline' data: blob:;object-src 'self' data: blob:;form-action 'none';base-uri 'none'")}>`),n+="<style>@keyframes display-wait-message{0%{opacity:0}100%{opacity:1}}body{color:transparent}div{color:initial}body>:not(#sfz-wait-message,#sfz-error-message){display:none}</style>",n+="<body hidden>",n}function cm(t){let e=t.replace(/--(!?)>/g,"--$1 >");return(e.startsWith(">")||e.startsWith("->"))&&(e=" "+e),e.endsWith("<!-")&&(e+=" "),e}function vn(t){return Array.from(t).map(e=>{let n=e.codePointAt(0);return n<32||n>126||e=="&"||e=="<"||e==">"||e=='"'?"&#"+n+";":e}).join("")}function Yf(t){let e=os.findIndex(([n])=>n==t[0]);if(e==-1)throw new Error("Unknown data tags: "+t[0]);return e}function ca(t,e,n,r,i,s,a=0){let o=fa[a];return!(os[a][0]=="<plaintext>")&&(t.match(o[0])||t.match(o[1]))?ca(t,e,n,r,i,s,a+1):(n.extractDataFromPageTags=os[a],n.extractDataFromPageTags[0]=="<plaintext>"&&(n.preventAppendedData=!0),hr(e,n,r,i,s))}function as(t,e=0){let n=ua.slice(e,-1).findIndex(([r,i])=>!t.match(r)&&!t.match(i));return n==-1?-1:n+e}function lm(t,e,n){let r=Wt.decode(Vf(e.embeddedImage))+Wt.decode(new Uint8Array(4))+Wt.decode(Hf),i=as(r);for(;i!=-1;){let[s,a]=la[i],o=Gf(t,e,n,s),c=new Uint8Array([...oa(o.htmlArray.length+4),116,69,88,116,80,78,71,0,...o.htmlArray]),l=aa(c,4),u=Wt.decode(l)+r;if(i==0&&(l[0]==62||l[0]==45&&l[1]==62)||as(u,i)!=i)i=as(r,i+1);else return{endTag:a,startHTMLData:o,htmlData:c,htmlDataCRC:l}}}function Vf(t){return t.slice(da+Ea,t.length-is)}function Wf(t,e,n){delete t[e],console.warn(Kg,n)}async function ze(t,e){let n=t.getWriter();await n.ready,await n.write(e),n.releaseLock()}async function Xf(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([ra(t,r,{name:"index.html",extension:".html",content:e.content,url:i,password:n.password},n.disableCompression),ra(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"?(c.archiveTime=e.archiveTime,Xf(t,c,n,r+c.name,c.url)):ra(t,r,c,n.disableCompression)))))])}async function ra(t,e,n,r){let i=typeof n.content=="string"?new Yt(n.content):new Ft(new sa([new Uint8Array(n.content)])),s={password:n.password,bufferedWrite:!0};n.password||(s.comment=n.url&&n.url.startsWith("data:")?"data:":n.url),(r||!fm(n.contentType)&&Vg.includes(n.extension))&&(s.level=0),await t.add(e+n.name,i,s)}function fm(t){return!!t&&(t.startsWith(Yg)||Gg.includes(t))}async function um(){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",e="sfz-data",{Blob:n,XMLHttpRequest:r,NodeFilter:i,document:s,zip:a,location:o}=globalThis,c=new Map([[65533,0],[8364,128],[8218,130],[402,131],[8222,132],[8230,133],[8224,134],[8225,135],[710,136],[8240,137],[352,138],[8249,139],[338,140],[381,142],[8216,145],[8217,146],[8220,147],[8221,148],[8226,149],[8211,150],[8212,151],[732,152],[8482,153],[353,154],[8250,155],[339,156],[382,158],[376,159]]),l=new Uint32Array(256).map((E,_)=>{let R=_;for(let T=0;T<8;T++)R=R&1?3988292384^R>>>1:R>>>1;return R});return new Promise((E,_)=>{let R=!1;o.protocol=="file:"?T():w();async function T(){try{await u(s),s.body.querySelectorAll("meta, style").forEach(I=>s.head.appendChild(I));let p=d();f("sfz-wait-message",2),E(p)}catch(p){console.error(p),f("sfz-error-message",2),_(p)}}function w(){let p=new r;p.responseType="blob",p.open("GET",""),p.onerror=()=>T(),p.send(),p.onreadystatechange=()=>{if(p.readyState===2&&!R)if(p.status===200){R=!0;let I=p.getResponseHeader("Accept-Ranges")==="bytes";p.abort(),f("sfz-wait-message",2,!0),I?E(new a.HttpRangeReader(o.href,{useXHR:!0,combineSizeEocd:!0})):w()}else p.abort(),T()},R&&(p.onload=()=>{p.status===200?E(p.response):T()})}});function u(E){return new Promise(_=>{E.readyState==="complete"||E.readyState==="interactive"?_():E.addEventListener("DOMContentLoaded",()=>_())})}function f(E,_=0,R){let T=s.getElementById(E);T&&(Array.from(s.body.childNodes).forEach(w=>{w.id!=E&&(w.id=="sfz-wait-message"||w.id=="sfz-error-message"?w.hidden=!0:R||w.remove())}),T.hidden=!1,s.body.hidden=!1,T.style="opacity: 0; animation: 0s linear "+_+"s display-wait-message 1 normal forwards")}function d(){let E=s.querySelector("sfz-extra-data");if(E){let _=a.inflateRaw(g(E.textContent)),R=new DataView(_.buffer,_.byteOffset,_.length&-4),T=s.getElementById(e);if(T)return h(T,R,0);let w=s.createTreeWalker(s,i.SHOW_COMMENT);for(;w.nextNode();)if(w.currentNode.data.startsWith(e))return h(w.currentNode,R,e.length)}throw new Error("Extra zip data not found")}function h(E,_,R){let T=_.getUint32(0,!0),w=_.getUint32(4,!0),p=_.getUint32(8,!0),I=new Uint8Array(w+2),{textContent:D}=E,y=0,O=0,P=-1;for(let M=R;M<D.length&&y<w;M++){let B=D.charCodeAt(M);if(B==10){let V=_.getUint32(12+(O>>4)*4,!0)>>>(O&15)*2&3;if(O++,V==3)throw new Error("Unsupported newline code in the extracted zip data");V==0?U(10):(U(13),V==2&&U(10))}else U(B>255?c.get(B):B)}if(P=(P^-1)>>>0,y!=w||O!=p||P!=T)throw new Error("Invalid checksum of the extracted zip data");return new n([I],{type:"application/octet-stream"});function U(M){I[y]=M,P=P>>>8^l[(P^M)&255],y++}}function g(E){E=String(E).replace(/[^A-Za-z0-9+/=]/g,"");let _=E.length,R=[];for(let T=0;T<_;T+=4){let w=t.indexOf(E[T]),p=t.indexOf(E[T+1]),I=t.indexOf(E[T+2]),D=t.indexOf(E[T+3]),y=w<<18|p<<12|(I&63)<<6|D&63;R.push(y>>16&255),E[T+2]!=="="&&R.push(y>>8&255),E[T+3]!=="="&&R.push(y&255)}return new Uint8Array(R)}}var xt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function dm(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+=xt[s>>18&63]+xt[s>>12&63]+xt[s>>6&63]+xt[s&63]}let i=n-r;if(i===1){let s=t[r]<<16;e+=xt[s>>18&63]+xt[s>>12&63]+"=="}else if(i===2){let s=t[r]<<16|t[r+1]<<8;e+=xt[s>>18&63]+xt[s>>12&63]+xt[s>>6&63]+"="}return e}var ga=globalThis.browser,Em="pages/",hm="sfz-pages.json",gm="sfz-toc.html",ma="Table of contents",mm="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}}",wm="Page saved with SingleFile",_m=41471;async function ew(t,e){ga&&ga.runtime&&ga.runtime.getURL?Ln({workerURI:"/lib/single-file-z-worker.js",workerStartupTimeout:2e3}):Ln({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?Am(t[0].url,e):void 0,tocContent:e.pageList?Im(t):void 0},i={url:t[0].url,multiPageArchive:!0,selfExtractingArchive:e.selfExtractingArchive,extractDataFromPage:e.extractDataFromPage,preventAppendedData:e.preventAppendedData,declareAppendedData:e.declareAppendedData,embeddedPdf:e.embeddedPdf,embeddedImage:e.embeddedImage,includeBOM:e.includeBOM,insertMetaCSP:e.insertMetaCSP,insertCanonicalLink:e.insertCanonicalLink,insertMetaNoIndex:e.insertMetaNoIndex},s=e.dedupPages?new Map:void 0,a={},o=await ha(r,i,e.zipScript,async c=>{for(let l=0;l<t.length;l++){let u=Zf(l),f=new Fn(new tn(await t[l].getData()));for(let d of await f.getEntries()){let h=u+d.filename,g=await d.getData(new nn,{passThrough:!0,checkCrc32:!1}),E=s&&Tm(s,h,d,g);E===void 0?await c.add(h,new tn(g),{passThrough:!0,compressionMethod:d.compressionMethod,uncompressedSize:d.uncompressedSize,crc32:d.crc32,comment:d.comment,lastModDate:d.lastModDate}):(a[h]=E,await c.add(h,new Yt(Rm(h,E)),{msDosCompatible:!1,unixMode:_m,level:0,comment:d.comment,lastModDate:d.lastModDate}))}await f.close()}Object.keys(a).length&&(n.aliases=a),e.tocPage&&await c.add(gm,new Yt(ym(n.pages))),await c.add(hm,new Yt(JSON.stringify(n,null,2)))});return new Uint8Array(await o.arrayBuffer())}function Tm(t,e,n,r){if(n.directory||!n.uncompressedSize)return;let i=[n.compressionMethod,n.uncompressedSize,n.crc32,r.length].join(":"),s=t.get(i);if(s){let a=s.find(o=>pm(o.rawData,r));if(a)return a.filename;s.push({filename:e,rawData:r})}else t.set(i,[{filename:e,rawData:r}])}function pm(t,e){return t.length==e.length&&t.every((n,r)=>n==e[r])}function Rm(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?"":Em+(t+1)+"/"}function Am(t,e){return`
|
|
12
|
+
`+wm+`
|
|
13
13
|
url: `+t+(e.removeSavedDate?" ":`
|
|
14
14
|
saved date: `+new Date)+`
|
|
15
|
-
`}function
|
|
15
|
+
`}function ym(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?ma+" - "+t[0].title:ma;return'<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>'+gr(r)+"</title><style>"+mm+"</style></head><body><main><h1>"+gr(ma)+"</h1>"+Kf(n)+"</main></body></html>"}function Kf(t){let e="";return t.pages.length&&(e+="<ul>"+t.pages.map(n=>'<li><a href="'+gr(n.path+"index.html")+'">'+gr(n.title||n.url)+"</a></li>").join("")+"</ul>"),t.groups.forEach((n,r)=>{e+="<details open><summary>"+gr(r)+"</summary>"+Kf(n)+"</details>"}),e}function gr(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")}function Im(t){return"<nav><ul>"+t.map(e=>'<li><a href="'+vn(e.url)+'">'+vn(e.title||e.url)+"</a></li>").join("")+"</ul></nav>"}export{Ft as BlobReader,Js as BlobWriter,Za as Data64URIReader,Ka as Data64URIWriter,Ul as ERR_AMBIGUOUS_ARCHIVE,Yn as ERR_BAD_FORMAT,Ol as ERR_CENTRAL_DIRECTORY_NOT_FOUND,cf as ERR_DUPLICATED_NAME,Cl as ERR_ENCRYPTED,vl as ERR_ENCRYPTED_CENTRAL_DIRECTORY,Ll as ERR_ENTRY_DATA_OUT_OF_BOUNDS,bl as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,Nl as ERR_EOCDR_NOT_FOUND,xl as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,St as ERR_HTTP_RANGE,Wa as ERR_HTTP_RESOURCE_CHANGED,Tc as ERR_INVALID_AUTHENTICATION_CODE,Ua as ERR_INVALID_CODEC_DEFINITION,xd as ERR_INVALID_CODEC_MODULE,lf as ERR_INVALID_COMMENT,ph as ERR_INVALID_COMMENT_TYPE,xc as ERR_INVALID_COMPRESSED_DATA,Cc as ERR_INVALID_CRC32,yh as ERR_INVALID_DATE,Sh as ERR_INVALID_ENCRYPTION_STRENGTH,Rh as ERR_INVALID_ENTRY_COMMENT,Ah as ERR_INVALID_ENTRY_COMMENT_TYPE,Ih as ERR_INVALID_ENTRY_NAME,bh as ERR_INVALID_EXTRAFIELD,$i as ERR_INVALID_EXTRAFIELD_DATA,Fh as ERR_INVALID_EXTRAFIELD_DATA_TYPE,Oh as ERR_INVALID_EXTRAFIELD_TYPE,Hl as ERR_INVALID_FILENAME_VALIDATION,Ku as ERR_INVALID_FUNCTION_OPTION,vh as ERR_INVALID_GID,Gh as ERR_INVALID_LEVEL,kl as ERR_INVALID_MAX_APPENDED_DATA_SIZE,Ju as ERR_INVALID_MAX_WORKERS,kh as ERR_INVALID_MSDOS_ATTRIBUTES,zh as ERR_INVALID_MSDOS_DATA,Oi as ERR_INVALID_PASSWORD,ju as ERR_INVALID_PASSWORD_TYPE,qu as ERR_INVALID_SIGNAL,Yh as ERR_INVALID_SIGNATURE_DATA,Bl as ERR_INVALID_STRICTNESS,Uh as ERR_INVALID_UID,es as ERR_INVALID_UNCOMPRESSED_SIZE,Bh as ERR_INVALID_UNIX_EXTRA_FIELD_TYPE,Hh as ERR_INVALID_UNIX_ID_SIZE,Mh as ERR_INVALID_UNIX_MODE,ff as ERR_INVALID_VERSION,fE as ERR_ITERATOR_COMPLETED_TOO_SOON,Fl as ERR_LOCAL_FILE_HEADER_NOT_FOUND,Pl as ERR_OVERLAPPING_ENTRY,Fd as ERR_RESERVED_COMPRESSION_METHOD,oi as ERR_SPLIT_ZIP_FILE,Ch as ERR_UNDEFINED_COMPRESSION_METHOD,Ph as ERR_UNDEFINED_READER,xh as ERR_UNDEFINED_UNCOMPRESSED_SIZE,Om as ERR_UNDETERMINED_SIZE,Ml as ERR_UNSAFE_FILENAME,rr as ERR_UNSUPPORTED_COMPRESSION,Dg as ERR_UNSUPPORTED_CONTEXT,ud as ERR_UNSUPPORTED_CRYPTO_API,ai as ERR_UNSUPPORTED_ENCRYPTION,Nh as ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH,Dh as ERR_UNSUPPORTED_ENCRYPTION_USDZ,Ji as ERR_UNSUPPORTED_FORMAT,zl as ERR_UNSUPPORTED_UINT64,Li as ERR_WORKER_STARTUP_TIMEOUT,uE as ERR_WRITER_NOT_INITIALIZED,Lh as ERR_ZIP_NOT_EMPTY,Qa as HttpRangeReader,ni as HttpReader,qm as PROCESS_OPTION_NAMES,ht as Reader,ri as SplitDataReader,si as SplitDataWriter,Yt as TextReader,qa as TextWriter,tn as Uint8ArrayReader,nn as Uint8ArrayWriter,Cm as VERSION,li as WARNING_APPENDED_DATA,Vl as WARNING_COMPRESSED_PATCHED_DATA,Kl as WARNING_DUPLICATE_FILENAME,Ki as WARNING_MALFORMED_EXTRA_FIELD,ql as WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG,jl as WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD,$l as WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES,Vn as WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY,Xl as WARNING_PREPENDED_CENTRAL_DIRECTORY,fi as WARNING_PREPENDED_DATA,Zl as WARNING_TRAILING_CENTRAL_DIRECTORY_DATA,Yl as WARNING_UNKNOWN_VERSION,Wl as WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA,Gl as WARNING_UNSORTED_CENTRAL_DIRECTORY,ci as WARNING_WRAPPED_ENTRIES_COUNT,zr as Writer,Fn as ZipReader,ui as ZipReaderStream,xn as ZipWriter,To as ZipWriterStream,Ln as configure,ha as createArchive,Lm as createBlobTempStream,Pm as createOPFSTempStream,ew as createPagesArchive,Um as createSyncAccessHandleTempStream,Df as deflateRaw,vn as escapeHTML,Fm as getMimeType,Pd as getRegisteredCodecs,xm as getSupportedCompressionMethods,vm as inflateRaw,ve as initStream,th as isZipFile,jm as process,Te as readUint8Array,Dm as registerCodec,Sm as resetConfiguration,bm as terminateWorkers,Nm as unregisterCodec};
|