single-file-core 1.6.19 → 1.6.21
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/core/helper.js +67 -2
- package/core/index.js +3 -2
- package/core/lib/processor-helper-common.js +17 -24
- package/core/lib/processor-helper-inline.js +7 -1
- package/core/lib/processor-helper.js +2 -1
- package/modules/css-fonts-minifier.js +257 -129
- package/package.json +1 -1
- package/vendor/css-font-property-parser.js +47 -6
- package/vendor/css-tree.js +12 -11
- package/vendor/zip/z-worker.js +1 -1
- package/vendor/zip/zip.js +867 -477
- package/vendor/zip/zip.min.js +1 -1
package/vendor/zip/zip.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:o,BigInt:s,Math:a,Date:i,Map:c,Set:u,Response:f,URL:w,Error:l,Uint8Array:d,Uint16Array:p,Uint32Array:h,DataView:m,Blob:y,Promise:g,TextEncoder:b,TextDecoder:v,crypto:S,btoa:k,TransformStream:x,ReadableStream:z,WritableStream:R,CompressionStream:D,DecompressionStream:C,navigator:A,Worker:F,setTimeout:I,clearTimeout:U}="undefined"!=typeof globalThis?globalThis:self,T=4294967295,E=65535,W=255,M=134695760,O=M,L=33639248,P=101075792,H=117853008,B=22,V=20,Z=56,q=61440,N=new i(1980,0,1),j=void 0,G="undefined",K="function",X="string",_="boolean",$=new d,J=Symbol.asyncDispose||Symbol(),Q="strict",Y="balanced",ee="tolerant";function te(e){if(e&&typeof e!=K)throw new l("Invalid option (must be a function)");return e}function ne(e){return typeof e==X&&e.trim()?o(e):e}let re=2;try{typeof A!=G&&A.hardwareConcurrency&&(re=A.hardwareConcurrency)}catch{}const oe={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:re,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof D!=G&&D,DecompressionStream:typeof C!=G&&C},se="maxWorkers",ae="baseURI",ie=["wasmURI","workerURI"],ce=["chunkSize",se,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],ue=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],fe=[ae,...ie,"useCompressionStream","useWebWorkers","transferStreams",...ce,...ue],we={...oe};function le(){return we}function de(e){return pe(e.chunkSize)}function pe(e){return e=ne(e),o.isInteger(e)&&e>=1?a.max(e,64):65536}function he(e){const t={};for(const n of fe){const r=e[n];r!==j&&(t[n]=me(n,r))}return t}function me(e,t){if(ce.includes(e)){if(t=ne(t),e==se&&(!o.isInteger(t)||1>t))throw new l("Invalid maxWorkers (must be an integer greater than 0)")}else if(ue.includes(e))te(t);else if(e==ae){if(t&&typeof t!=X)throw new l("Invalid baseURI (must be a string)")}else if(ie.includes(e)&&t&&typeof t!=X&&typeof t!=K)throw new l("Invalid URI (must be a string or a function returning a string)");return t}function ye(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===j&&r===j)return e;const o=n.assign({},e);return o.CompressionStreamFallback===j&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===j&&(o.DecompressionStreamFallback=r),o}var ge=d,be=p,ve=Int32Array,Se=new ge([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]),ke=new ge([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]),xe=new ge([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),ze=(e,t)=>{for(var n=new be(31),r=0;31>r;++r)n[r]=t+=1<<e[r-1];var o=new ve(n[30]);for(r=1;30>r;++r)for(var s=n[r];s<n[r+1];++s)o[s]=s-n[r]<<5|r;return{b:n,r:o}},Re=ze(Se,2),De=Re.b,Ce=Re.r;De[28]=258,Ce[258]=28;for(var Ae=ze(ke,0).b,Fe=new be(32768),Ie=0;32768>Ie;++Ie){var Ue=(43690&Ie)>>1|(21845&Ie)<<1;Ue=(61680&(Ue=(52428&Ue)>>2|(13107&Ue)<<2))>>4|(3855&Ue)<<4,Fe[Ie]=((65280&Ue)>>8|(255&Ue)<<8)>>1}var Te=(e,t,n)=>{for(var r=e.length,o=0,s=new be(t);r>o;++o)e[o]&&++s[e[o]-1];var a,i=new be(t);for(o=1;t>o;++o)i[o]=i[o-1]+s[o-1]<<1;if(n){a=new be(1<<t);var c=15-t;for(o=0;r>o;++o)if(e[o])for(var u=o<<4|e[o],f=t-e[o],w=i[e[o]-1]++<<f,l=w|(1<<f)-1;l>=w;++w)a[Fe[w]>>c]=u}else for(a=new be(r),o=0;r>o;++o)e[o]&&(a[o]=Fe[i[e[o]-1]++]>>15-e[o]);return a},Ee=new ge(288);for(Ie=0;144>Ie;++Ie)Ee[Ie]=8;for(Ie=144;256>Ie;++Ie)Ee[Ie]=9;for(Ie=256;280>Ie;++Ie)Ee[Ie]=7;for(Ie=280;288>Ie;++Ie)Ee[Ie]=8;var We=new ge(32);for(Ie=0;32>Ie;++Ie)We[Ie]=5;var Me=Te(Ee,9,1),Oe=Te(We,5,1),Le=e=>{for(var t=e[0],n=1;n<e.length;++n)e[n]>t&&(t=e[n]);return t},Pe=(e,t,n)=>{var r=t/8|0;return(e[r]|e[r+1]<<8)>>(7&t)&n},He=(e,t)=>{var n=t/8|0;return(e[n]|e[n+1]<<8|e[n+2]<<16)>>(7&t)},Be=e=>(e+7)/8|0,Ve=(e,t,n)=>((null==t||0>t)&&(t=0),(null==n||n>e.length)&&(n=e.length),new ge(e.subarray(t,n))),Ze=["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"],qe=(e,t,n)=>{var r=new l(t||Ze[e]);if(r.code=e,l.captureStackTrace&&l.captureStackTrace(r,qe),!n)throw r;return r},Ne=(e,t,n,r)=>{var o=e.length,s=r?r.length:0;if(!o||t.f&&!t.o)return n||new ge(0);var i=!n,c=i||2!=t.i,u=t.i;i&&(n=new ge(3*o));var f=e=>{var t=n.length;if(e>t){var r=new ge(a.max(2*t,e));r.set(n),n=r}},w=t.f||0,l=t.p||0,d=t.b||0,p=t.o,h=t.d,m=t.l,y=t.n,g=8*o;do{if(!p){w=Pe(e,l,1);var b=Pe(e,l+1,3);if(l+=3,!b){var v=e[(U=Be(l)+4)-4]|e[U-3]<<8,S=U+v;if(S>o){u&&qe(0);break}c&&f(d+v),n.set(e.subarray(U,S),d),t.b=d+=v,t.p=l=8*S,t.f=w;continue}if(1==b)p=Me,h=Oe,m=9,y=5;else if(2==b){var k=Pe(e,l,31)+257,x=Pe(e,l+10,15)+4,z=k+Pe(e,l+5,31)+1;l+=14;for(var R=new ge(z),D=new ge(19),C=0;x>C;++C)D[xe[C]]=Pe(e,l+3*C,7);l+=3*x;var A=Le(D),F=(1<<A)-1,I=Te(D,A,1);for(C=0;z>C;){var U,T=I[Pe(e,l,F)];if(l+=15&T,16>(U=T>>4))R[C++]=U;else{var E=0,W=0;for(16==U?(W=3+Pe(e,l,3),l+=2,E=R[C-1]):17==U?(W=3+Pe(e,l,7),l+=3):18==U&&(W=11+Pe(e,l,127),l+=7);W--;)R[C++]=E}}var M=R.subarray(0,k),O=R.subarray(k);m=Le(M),y=Le(O),p=Te(M,m,1),h=Te(O,y,1)}else qe(1);if(l>g){u&&qe(0);break}}c&&f(d+131072);for(var L=(1<<m)-1,P=(1<<y)-1,H=l;;H=l){var B=(E=p[He(e,l)&L])>>4;if((l+=15&E)>g){u&&qe(0);break}if(E||qe(2),256>B)n[d++]=B;else{if(256==B){H=l,p=null;break}var V=B-254;if(B>264){var Z=Se[C=B-257];V=Pe(e,l,(1<<Z)-1)+De[C],l+=Z}var q=h[He(e,l)&P],N=q>>4;if(q||qe(3),l+=15&q,O=Ae[N],N>3&&(Z=ke[N],O+=He(e,l)&(1<<Z)-1,l+=Z),l>g){u&&qe(0);break}c&&f(d+131072);var j=d+V;if(O>d){var G=s-O,K=a.min(O,j);for(0>G+d&&qe(3);K>d;++d)n[d]=r[G+d]}for(;j>d;++d)n[d]=n[d-O]}}t.o=p,t.p=H,t.b=d,t.f=w,p&&(w=1,t.l=m,t.d=h,t.n=y)}while(!w);return d!=n.length&&i?Ve(n,0,d):n.subarray(0,d)},je=new ge(0),Ge=function(){function e(e,t){"function"==typeof e&&(t=e,e={}),this.h=t;var n=e&&e.m&&e.m.subarray(-32768);this.s={i:0,b:n?n.length:0},this.v=new ge(32768),this.p=new ge(0),n&&this.v.set(n)}return e.prototype.e=function(e){if(this.h||qe(5),this.d&&qe(4),this.p.length){if(e.length){var t=new ge(this.p.length+e.length);t.set(this.p),t.set(e,this.p.length),this.p=t}}else this.p=e},e.prototype.c=function(e){this.s.i=+(this.d=e||!1);var t=this.s.b,n=Ne(this.p,this.s,this.v);this.h(Ve(n,t,this.s.b),this.d),this.v=Ve(n,this.s.b-32768),this.s.b=this.v.length,this.p=Ve(this.p,this.s.p/8|0),this.s.p&=7},e.prototype.push=function(e,t){this.e(e),this.c(t)},e}(),Ke=void 0!==v&&new v;try{Ke.decode(je,{stream:!0})}catch(e){}class Xe extends x{constructor(e){super({start(t){e.h=e=>{e.length&&t.enqueue(e)}},transform(t){e.push(t)},flush(){e.push(new d(0),!0)}})}}const _e="Compression method not supported",$e=new c,Je=new c;function Qe(e){return Je.get(e)}const Ye=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?t>>>1^3988292384:t>>>1;Ye[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){const n=Ye[t-1][e];Ye[t][e]=n>>>8^Ye[0][255&n]}const[et,tt,nt,rt,ot,st,at,it]=Ye;class ct{constructor(e){this.S=e||-1}append(e){let t=0|this.S;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const o=new m(e.buffer,e.byteOffset,n),s=n-8;for(;s>=r;r+=8){const e=t^o.getInt32(r,!0),n=o.getInt32(r+4,!0);t=it[255&e]^at[e>>>8&255]^st[e>>>16&255]^ot[e>>>24&255]^rt[255&n]^nt[n>>>8&255]^tt[n>>>16&255]^et[n>>>24&255]}}for(;n>r;r++)t=t>>>8^et[255&(t^e[r])];this.S=t}get(){return~this.S}}class ut extends x{constructor(){let e;const t=new ct;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new d(4);new m(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function ft(e,t){const n=new d(e.length+t.length);return n.set(e),n.set(t,e.length),n}function wt(e){return new m(e.buffer,e.byteOffset,e.byteLength)}const lt=64,dt=20,pt=new d([128]),ht=new d(1),mt=new Int32Array([1732584193,4023233417,2562383102,271733878,3285377520]),yt=new d(256),gt=new Int32Array(256),bt=new Int32Array(256),vt=new Int32Array(256),St=new Int32Array(256);let kt=!1;function xt(e){const t=(()=>{const e=new Int32Array(mt),t=new Int32Array(16),n=new d(lt),r=new m(n.buffer),o=new d(8);let s=0,i=0;return{update:c,digest:()=>{const t=8*i,n=a.floor(t/4294967296),r=t>>>0;for(c(pt,0,1);56!=s;)c(ht,0,1);o[0]=n>>>24,o[1]=n>>>16,o[2]=n>>>8,o[3]=n,o[4]=r>>>24,o[5]=r>>>16,o[6]=r>>>8,o[7]=r,c(o,0,8);const u=new d(dt),f=new m(u.buffer);for(let t=0;t<e.length;t++)f.setInt32(4*t,e[t]);return e.set(mt),s=0,i=0,u}};function c(e,t,o){const a=t+o;if(i+=o,s){for(;a>t&<>s;)n[s++]=e[t++];s==lt&&(u(r,0),s=0)}if(a>=t+lt){const n=new m(e.buffer,e.byteOffset,e.byteLength);for(;a>=t+lt;t+=lt)u(n,t)}for(;a>t;)n[s++]=e[t++]}function u(n,r){for(let e=0;16>e;e++)t[e]=n.getInt32(r+4*e);let o,s=e[0],a=e[1],i=e[2],c=e[3],u=e[4];for(let e=0;15>e;e+=5)u=(s<<5|s>>>27)+((i^c)&a^c)+u+1518500249+t[e]|0,a=a<<30|a>>>2,c=(u<<5|u>>>27)+((a^i)&s^i)+c+1518500249+t[e+1]|0,s=s<<30|s>>>2,i=(c<<5|c>>>27)+((s^a)&u^a)+i+1518500249+t[e+2]|0,u=u<<30|u>>>2,a=(i<<5|i>>>27)+((u^s)&c^s)+a+1518500249+t[e+3]|0,c=c<<30|c>>>2,s=(a<<5|a>>>27)+((c^u)&i^u)+s+1518500249+t[e+4]|0,i=i<<30|i>>>2;u=(s<<5|s>>>27)+((i^c)&a^c)+u+1518500249+t[15]|0,a=a<<30|a>>>2,o=t[13]^t[8]^t[2]^t[0],o=o<<1|o>>>31,t[0]=o,c=(u<<5|u>>>27)+((a^i)&s^i)+c+1518500249+o|0,s=s<<30|s>>>2,o=t[14]^t[9]^t[3]^t[1],o=o<<1|o>>>31,t[1]=o,i=(c<<5|c>>>27)+((s^a)&u^a)+i+1518500249+o|0,u=u<<30|u>>>2,o=t[15]^t[10]^t[4]^t[2],o=o<<1|o>>>31,t[2]=o,a=(i<<5|i>>>27)+((u^s)&c^s)+a+1518500249+o|0,c=c<<30|c>>>2,o=t[0]^t[11]^t[5]^t[3],o=o<<1|o>>>31,t[3]=o,s=(a<<5|a>>>27)+((c^u)&i^u)+s+1518500249+o|0,i=i<<30|i>>>2;for(let e=20;40>e;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,u=(s<<5|s>>>27)+(a^i^c)+u+1859775393+o|0,a=a<<30|a>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(u<<5|u>>>27)+(s^a^i)+c+1859775393+o|0,s=s<<30|s>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,i=(c<<5|c>>>27)+(u^s^a)+i+1859775393+o|0,u=u<<30|u>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,a=(i<<5|i>>>27)+(c^u^s)+a+1859775393+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,s=(a<<5|a>>>27)+(i^c^u)+s+1859775393+o|0,i=i<<30|i>>>2;for(let e=40;60>e;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,u=(s<<5|s>>>27)+(a&i|(a|i)&c)+u+2400959708+o|0,a=a<<30|a>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(u<<5|u>>>27)+(s&a|(s|a)&i)+c+2400959708+o|0,s=s<<30|s>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,i=(c<<5|c>>>27)+(u&s|(u|s)&a)+i+2400959708+o|0,u=u<<30|u>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,a=(i<<5|i>>>27)+(c&u|(c|u)&s)+a+2400959708+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,s=(a<<5|a>>>27)+(i&c|(i|c)&u)+s+2400959708+o|0,i=i<<30|i>>>2;for(let e=60;80>e;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,u=(s<<5|s>>>27)+(a^i^c)+u+3395469782+o|0,a=a<<30|a>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(u<<5|u>>>27)+(s^a^i)+c+3395469782+o|0,s=s<<30|s>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,i=(c<<5|c>>>27)+(u^s^a)+i+3395469782+o|0,u=u<<30|u>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,a=(i<<5|i>>>27)+(c^u^s)+a+3395469782+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,s=(a<<5|a>>>27)+(i^c^u)+s+3395469782+o|0,i=i<<30|i>>>2;e[0]=e[0]+s|0,e[1]=e[1]+a|0,e[2]=e[2]+i|0,e[3]=e[3]+c|0,e[4]=e[4]+u|0}})(),n=new d(lt),r=new d(lt);e.length>lt&&(t.update(e,0,e.length),e=t.digest());for(let t=0;lt>t;t++){const o=t<e.length?e[t]:0;n[t]=54^o,r[t]=92^o}return t.update(n,0,lt),{update(e,n,r){t.update(e,n,r)},digest(){const e=t.digest();t.update(r,0,lt),t.update(e,0,dt);const o=t.digest();return t.update(n,0,lt),o}}}function zt(e){return yt[e>>>24]<<24|yt[e>>>16&255]<<16|yt[e>>>8&255]<<8|yt[255&e]}function Rt(e){return e<<24|(65280&e)<<8|e>>>8&65280|e>>>24}function Dt(e){return 255&(e<<1^27*(e>>7))}const Ct=typeof S!=G&&typeof S.getRandomValues==K,At="Invalid password",Ft="zipjs-abort-check-password";function It(e){if(Ct)return S.getRandomValues(e);throw new l("Crypto API not supported")}const Ut={name:"PBKDF2"},Tt=n.assign({hash:{name:"HMAC"}},Ut),Et=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Ut),Wt=["deriveBits"],Mt=[8,12,16],Ot=[16,24,32],Lt=10,Pt=typeof S!=G,Ht=Pt&&S.subtle;let Bt=Pt&&typeof Ht!=G&&typeof Ht.importKey==K&&typeof Ht.deriveBits==K;class Vt extends x{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){super({start(){qt(this,e,t,n)},async transform(e,t){const n=this,{password:o,strength:s,R:a,ready:i}=n;o?(await(async(e,t,n,r)=>{const o=await Gt(e,t,n,Xt(r,0,Mt[t])),s=Xt(r,Mt[t]);if(o[0]!=s[0]||o[1]!=s[1])throw jt(e),new l(At)})(n,s,o,Xt(e,0,Mt[s]+2)),e=Xt(e,Mt[s]+2),r?(jt(n),t.error(new l(Ft))):a()):await i;const c=new d(e.length-Lt-(e.length-Lt)%16);t.enqueue(Nt(n,e,c,0,Lt,!0))},async flush(e){const{D:t,C:n,ready:r}=this;if(t){await r;const s=Xt(n,n.length-Lt),a=new d(Xt(n,0,n.length-Lt));t.process(a,!0);const i=t.digest();let c=n.length<Lt?1:0;for(let e=0;Lt>e;e++)c|=i[e]^s[e];if(c&&o)throw new l("Invalid authentication code");e.enqueue(a)}},cancel(){jt(this)}})}}class Zt extends x{constructor({password:e,rawPassword:t,encryptionStrength:n}){super({start(){qt(this,e,t,n)},async transform(e,t){const n=this,{password:r,strength:o,R:s,ready:a}=n;let i=$;r?(i=await(async(e,t,n)=>{const r=It(new d(Mt[t]));return ft(r,await Gt(e,t,n,r))})(n,o,r),s()):await a;const c=new d(i.length+e.length-e.length%16);c.set(i,0),t.enqueue(Nt(n,e,c,i.length,0,!1))},async flush(e){const{D:t,C:n,ready:r}=this;if(t){await r;const o=new d(n);t.process(o,!1);const s=Xt(t.digest(),0,Lt);e.enqueue(ft(o,s))}},cancel(){jt(this)}})}}function qt(e,t,r,o){n.assign(e,{ready:new g(t=>e.R=t),password:Kt(t,r),strength:o-1,C:$})}function Nt(e,t,n,r,o,s){const{D:a,C:i}=e;i.length&&(t=ft(i,t));const c=t.length-o,u=c-c%16;if(n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new d(t)).set(n,0)}return e})(n,r+u),u){const e=Xt(n,r,r+u);e.set(Xt(t,0,u)),a.process(e,s)}return e.C=Xt(t,u),n}function jt({D:e}){e&&e.dispose&&e.dispose()}async function Gt(e,t,r,o){e.password=null;const s=Ot[t],i=await(async(e,t,r)=>{if(Bt)try{const o=await Ht.importKey("raw",e,Tt,!1,Wt);return new d(await Ht.deriveBits(n.assign({salt:t},Et),o,8*r))}catch{Bt=!1}return((e,t,n,r)=>{const o=xt(e),s=new d(r),i=new d(t.length+4),c=new m(i.buffer);i.set(t);for(let e=1,n=0;r>n;e++,n+=dt){c.setUint32(t.length,e),o.update(i,0,i.length);let u=o.digest();const f=u.slice();for(let e=1;1e3>e;e++){o.update(u,0,dt),u=o.digest();for(let e=0;dt>e;e++)f[e]^=u[e]}s.set(f.subarray(0,a.min(dt,r-n)),n)}return s})(e,t,0,r)})(r,o,2*s+2);return e.D=((e,t)=>{(()=>{if(!kt){let e=1,t=1;do{e=255&(e^e<<1^(128&e?27:0)),t=255&(t^t<<1),t=255&(t^t<<2),t=255&(t^t<<4),128&t&&(t^=9),yt[e]=255&(t^(t<<1|t>>7)^(t<<2|t>>6)^(t<<3|t>>5)^(t<<4|t>>4)^99)}while(1!=e);yt[0]=99;for(let e=0;256>e;e++){const t=yt[e],n=Dt(t),r=n<<24|t<<16|t<<8|n^t;gt[e]=r,bt[e]=r>>>8|r<<24,vt[e]=r>>>16|r<<16,St[e]=r>>>24|r<<8}kt=!0}})();const n=new Int32Array(60),r=((e,t)=>{const n=e.length>>2,r=n+6,o=4*(r+1);let s=1;for(let r=0;n>r;r++)t[r]=e[4*r]<<24|e[4*r+1]<<16|e[4*r+2]<<8|e[4*r+3];for(let e=n;o>e;e++){let r=t[e-1];e%n==0?(r=zt(r<<8|r>>>24)^s<<24,s=Dt(s)):n>6&&e%n==4&&(r=zt(r)),t[e]=t[e-n]^r}return r})(e,n),o=new Int32Array(4),s=xt(t);let a=0,i=0,c=0,u=0;return{process(e,t){t&&s.update(e,0,e.length),(e=>{const t=new m(e.buffer,e.byteOffset,e.byteLength),n=e.length;let r=0;for(;n>=r+16;r+=16)f(),t.setInt32(r,t.getInt32(r)^o[0]),t.setInt32(r+4,t.getInt32(r+4)^o[1]),t.setInt32(r+8,t.getInt32(r+8)^o[2]),t.setInt32(r+12,t.getInt32(r+12)^o[3]);if(n>r){f();for(let t=0;n>r;r++,t++)e[r]^=o[t>>2]>>>24-8*(3&t)}})(e),t||s.update(e,0,e.length)},digest:()=>s.digest()};function f(){a=a+1|0,a||(i=i+1|0,i||(c=c+1|0,c||(u=u+1|0)));let e=Rt(a)^n[0],t=Rt(i)^n[1],s=Rt(c)^n[2],f=Rt(u)^n[3],w=gt[e>>>24]^bt[t>>>16&255]^vt[s>>>8&255]^St[255&f]^n[4],l=gt[t>>>24]^bt[s>>>16&255]^vt[f>>>8&255]^St[255&e]^n[5],d=gt[s>>>24]^bt[f>>>16&255]^vt[e>>>8&255]^St[255&t]^n[6],p=gt[f>>>24]^bt[e>>>16&255]^vt[t>>>8&255]^St[255&s]^n[7];e=gt[w>>>24]^bt[l>>>16&255]^vt[d>>>8&255]^St[255&p]^n[8],t=gt[l>>>24]^bt[d>>>16&255]^vt[p>>>8&255]^St[255&w]^n[9],s=gt[d>>>24]^bt[p>>>16&255]^vt[w>>>8&255]^St[255&l]^n[10],f=gt[p>>>24]^bt[w>>>16&255]^vt[l>>>8&255]^St[255&d]^n[11],w=gt[e>>>24]^bt[t>>>16&255]^vt[s>>>8&255]^St[255&f]^n[12],l=gt[t>>>24]^bt[s>>>16&255]^vt[f>>>8&255]^St[255&e]^n[13],d=gt[s>>>24]^bt[f>>>16&255]^vt[e>>>8&255]^St[255&t]^n[14],p=gt[f>>>24]^bt[e>>>16&255]^vt[t>>>8&255]^St[255&s]^n[15],e=gt[w>>>24]^bt[l>>>16&255]^vt[d>>>8&255]^St[255&p]^n[16],t=gt[l>>>24]^bt[d>>>16&255]^vt[p>>>8&255]^St[255&w]^n[17],s=gt[d>>>24]^bt[p>>>16&255]^vt[w>>>8&255]^St[255&l]^n[18],f=gt[p>>>24]^bt[w>>>16&255]^vt[l>>>8&255]^St[255&d]^n[19],w=gt[e>>>24]^bt[t>>>16&255]^vt[s>>>8&255]^St[255&f]^n[20],l=gt[t>>>24]^bt[s>>>16&255]^vt[f>>>8&255]^St[255&e]^n[21],d=gt[s>>>24]^bt[f>>>16&255]^vt[e>>>8&255]^St[255&t]^n[22],p=gt[f>>>24]^bt[e>>>16&255]^vt[t>>>8&255]^St[255&s]^n[23],e=gt[w>>>24]^bt[l>>>16&255]^vt[d>>>8&255]^St[255&p]^n[24],t=gt[l>>>24]^bt[d>>>16&255]^vt[p>>>8&255]^St[255&w]^n[25],s=gt[d>>>24]^bt[p>>>16&255]^vt[w>>>8&255]^St[255&l]^n[26],f=gt[p>>>24]^bt[w>>>16&255]^vt[l>>>8&255]^St[255&d]^n[27],w=gt[e>>>24]^bt[t>>>16&255]^vt[s>>>8&255]^St[255&f]^n[28],l=gt[t>>>24]^bt[s>>>16&255]^vt[f>>>8&255]^St[255&e]^n[29],d=gt[s>>>24]^bt[f>>>16&255]^vt[e>>>8&255]^St[255&t]^n[30],p=gt[f>>>24]^bt[e>>>16&255]^vt[t>>>8&255]^St[255&s]^n[31],e=gt[w>>>24]^bt[l>>>16&255]^vt[d>>>8&255]^St[255&p]^n[32],t=gt[l>>>24]^bt[d>>>16&255]^vt[p>>>8&255]^St[255&w]^n[33],s=gt[d>>>24]^bt[p>>>16&255]^vt[w>>>8&255]^St[255&l]^n[34],f=gt[p>>>24]^bt[w>>>16&255]^vt[l>>>8&255]^St[255&d]^n[35],w=gt[e>>>24]^bt[t>>>16&255]^vt[s>>>8&255]^St[255&f]^n[36],l=gt[t>>>24]^bt[s>>>16&255]^vt[f>>>8&255]^St[255&e]^n[37],d=gt[s>>>24]^bt[f>>>16&255]^vt[e>>>8&255]^St[255&t]^n[38],p=gt[f>>>24]^bt[e>>>16&255]^vt[t>>>8&255]^St[255&s]^n[39];let h=40;r>10&&(e=gt[w>>>24]^bt[l>>>16&255]^vt[d>>>8&255]^St[255&p]^n[40],t=gt[l>>>24]^bt[d>>>16&255]^vt[p>>>8&255]^St[255&w]^n[41],s=gt[d>>>24]^bt[p>>>16&255]^vt[w>>>8&255]^St[255&l]^n[42],f=gt[p>>>24]^bt[w>>>16&255]^vt[l>>>8&255]^St[255&d]^n[43],w=gt[e>>>24]^bt[t>>>16&255]^vt[s>>>8&255]^St[255&f]^n[44],l=gt[t>>>24]^bt[s>>>16&255]^vt[f>>>8&255]^St[255&e]^n[45],d=gt[s>>>24]^bt[f>>>16&255]^vt[e>>>8&255]^St[255&t]^n[46],p=gt[f>>>24]^bt[e>>>16&255]^vt[t>>>8&255]^St[255&s]^n[47],h=48),r>12&&(e=gt[w>>>24]^bt[l>>>16&255]^vt[d>>>8&255]^St[255&p]^n[48],t=gt[l>>>24]^bt[d>>>16&255]^vt[p>>>8&255]^St[255&w]^n[49],s=gt[d>>>24]^bt[p>>>16&255]^vt[w>>>8&255]^St[255&l]^n[50],f=gt[p>>>24]^bt[w>>>16&255]^vt[l>>>8&255]^St[255&d]^n[51],w=gt[e>>>24]^bt[t>>>16&255]^vt[s>>>8&255]^St[255&f]^n[52],l=gt[t>>>24]^bt[s>>>16&255]^vt[f>>>8&255]^St[255&e]^n[53],d=gt[s>>>24]^bt[f>>>16&255]^vt[e>>>8&255]^St[255&t]^n[54],p=gt[f>>>24]^bt[e>>>16&255]^vt[t>>>8&255]^St[255&s]^n[55],h=56),o[0]=(yt[w>>>24]<<24|yt[l>>>16&255]<<16|yt[d>>>8&255]<<8|yt[255&p])^n[h],o[1]=(yt[l>>>24]<<24|yt[d>>>16&255]<<16|yt[p>>>8&255]<<8|yt[255&w])^n[h+1],o[2]=(yt[d>>>24]<<24|yt[p>>>16&255]<<16|yt[w>>>8&255]<<8|yt[255&l])^n[h+2],o[3]=(yt[p>>>24]<<24|yt[w>>>16&255]<<16|yt[l>>>8&255]<<8|yt[255&d])^n[h+3]}})(Xt(i,0,s),Xt(i,s,2*s)),Xt(i,2*s)}function Kt(e,t){return t===j?(e=>{if(typeof b==G){const t=new d((e=unescape(encodeURIComponent(e))).length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new b).encode(e)})(e):t}function Xt(e,t,n){return e.subarray(t,n)}class _t extends x{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){Jt(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=Qt(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t[11]^n.passwordVerification))throw new l(At);e=e.subarray(12)}r?t.error(new l(Ft)):t.enqueue(Qt(n,e))}})}}class $t extends x{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){Jt(this,e,t,n)},transform(e,t){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=It(new d(12));t[11]=n.passwordVerification,r=new d(e.length+t.length),r.set(Yt(n,t),0),o=12}else r=new d(e.length),o=0;r.set(Yt(n,e),o),t.enqueue(r)}})}}function Jt(e,t,r,o){n.assign(e,{password:t,rawPassword:r,passwordVerification:o}),((e,t,r)=>{const o=[305419896,591751049,878082192];if(n.assign(e,{keys:o,A:new ct(o[0]),F:new ct(o[2])}),r)for(let t=0;t<r.length;t++)en(e,r[t]);else for(let n=0;n<t.length;n++)en(e,t.charCodeAt(n))})(e,t,r)}function Qt(e,t){const n=new d(t.length);for(let r=0;r<t.length;r++)n[r]=tn(e)^t[r],en(e,n[r]);return n}function Yt(e,t){const n=new d(t.length);for(let r=0;r<t.length;r++)n[r]=tn(e)^t[r],en(e,t[r]);return n}function en(e,t){let[,n]=e.keys;e.A.append([t]);const r=~e.A.get();n=rn(a.imul(rn(n+nn(r)),134775813)+1),e.F.append([n>>>24]);const o=~e.F.get();e.keys=[r,n,o]}function tn(e){const t=2|e.keys[2];return nn(a.imul(t,1^t)>>>8)}function nn(e){return 255&e}function rn(e){return 4294967295&e}function on(e){if(e instanceof z)return e;const t=e.getReader();return new z({async pull(e){const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})}function sn(e,t){e=on(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=K||new y([]).stream()instanceof z)return new f(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new R({write(e){r.push(e)}})).then(()=>new y(r,n))}function an(e){if(e instanceof R)return e;const t=e.getWriter();return new R({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const cn="Invalid uncompressed size",un="deflate-raw",fn="gzip",wn=[31,139,8];class ln extends x{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:s,useCompressionStream:a,zipCrypto:i,computeCrc32:c,level:u,deflate64:f,format:w,compressionMethod:l,inputSize:d}=e,p=this;let h,y,g,b=super.readable;const v=w&&Qe(w),S=((e,t,n)=>e&&t?t:n&&n.I?n:void 0)(a,r,n),k=c&&o&&!f&&!v&&(!s||i)&&!!S;if(s&&!i||!c||k||(h=new ut,b=bn(b,h)),o)if(v)b=vn(b,yn(v.CompressionStream,w,{level:u,chunkSize:t,compressionMethod:l,uncompressedSize:d}));else if(k)g=new dn,b=vn(b,new S(fn,{level:u,chunkSize:t})),b=bn(b,g);else try{b=gn(b,a,{level:u,chunkSize:t},r,n)}catch(e){let t;try{t=new r(fn)}catch{throw e}b=vn(b,t),b=bn(b,new dn)}s&&(i?b=bn(b,new $t(e)):(y=new Zt(e),b=bn(b,y))),mn(p,b,()=>{s&&!i||!c||(p.crc32=k?g.crc32:new m(h.value.buffer).getUint32(0))})}}class dn extends x{constructor(){let e,t=10,n=new d(0);super({transform(e,r){if(t){const n=a.min(t,e.length);if(t-=n,!(e=e.subarray(n)).length)return}const o=n.length+e.length;if(8>=o)return void(n=ft(n,e));const s=o-8,i=a.min(s,n.length);r.enqueue(ft(n.subarray(0,i),e.subarray(0,s-i))),n=ft(n.subarray(i),e.subarray(s-i))},flush(){const t=wt(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class pn extends x{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:s,checkCrc32:a,crc32:i,compressed:c,useCompressionStream:u,deflate64:f,format:w,compressionMethod:p,rawBitFlag:h,outputSize:y}=e;let b,v,S,k=super.readable;if(s&&(o?k=bn(k,new _t(e)):(v=new Vt(e),k=bn(k,v))),c){const e=w&&Qe(w);if(e)k=vn(k,yn(e.DecompressionStream,w,{chunkSize:t,compressionMethod:p,rawBitFlag:h,uncompressedSize:y}));else try{k=gn(k,u,{chunkSize:t,deflate64:f},r,n)}catch(e){if(f||y===j)throw e;let t;try{t=new r(fn)}catch{throw e}S=new ct,k=((e,t,n,r)=>{let o,s,a,i=0,c=!1;const u=new g((e,t)=>{s=e,a=t});u.catch(()=>{}),n||s();const f=new x({start(e){const t=new d(10);t.set(wn),e.enqueue(t)},transform(e,t){t.enqueue(e)},async flush(e){c=!0,p();try{await u}finally{h()}const t=new d(8),o=wt(t);o.setUint32(0,r.get(),!0),o.setUint32(4,n,!0),e.enqueue(t)},cancel(e){a(e)}}),w=new x({transform(e,t){r.append(e),i+=e.length,n>i?c&&p():s(),t.enqueue(e)},cancel(e){a(e)}});return e=bn(e,f),bn(e=vn(e,t),w);function p(){h(),o=I(()=>a(new l(cn)),5e3)}function h(){U(o)}})(k,t,y,S)}k=(e=>{const t=e.getReader();return new z({async pull(e){let n;try{n=await t.read()}catch(e){if(e&&e.message)throw e;const t=new l("Invalid compressed data");throw t.cause=e,t}const{value:r,done:o}=n;o?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})})(k)}a&&!S&&(b=new ut,k=bn(k,b)),mn(this,k,()=>{if(a){const e=S?S.get()>>>0:new m(b.value.buffer).getUint32(0,!1);if(i!=e)throw new l("Invalid CRC32")}})}}const hn=new c;function mn(e,t,r){t=bn(t,new x({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function yn(e,t,n){if(!e)throw new l(_e);return new e(t,n)}function gn(e,t,n,r,o){const s=t&&r?r:o||r,a=n.deflate64?"deflate64-raw":un;let i;try{i=new s(a,n)}catch(e){if(!t||!o||s==o)throw e;i=new o(a,n)}return vn(e,i)}function bn(e,t){return on(e).pipeThrough(t)}function vn(e,t){const n=t.writable.getWriter(),r=e.getReader();return(async()=>{try{for(;;){await n.ready;const e=await r.read();if(e.done){await n.close();break}await n.write(e.value)}}catch(e){await(async(e,t)=>{try{await e.abort(t)}catch{}})(n,e),await(async(e,t)=>{try{await e.cancel(t)}catch{}})(r,e)}})(),t.readable}const Sn="deflate",kn="inflate";class xn extends x{constructor(e,t){super({});const r=this,{codecType:o}=e;let s;o.startsWith(Sn)?s=ln:o.startsWith(kn)&&(s=pn),r.outputSize=0;let a=0;const i=new s(e,t),c=super.readable,u=new x({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:a})}}),f=new x({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==j&&r.outputSize>e.outputSize))throw new l(cn)},flush(){const{crc32:e}=i;n.assign(r,{crc32:e,inputSize:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(u).pipeThrough(i).pipeThrough(f)})}}class zn extends x{constructor(e){const t=[];let r=0,s=0;function a(){const n=new d(e);let o=0;for(;e>o;){const r=t[0],s=e-o;r.length>s?(n.set(r.subarray(0,s),o),t[0]=r.subarray(s),o+=s):(n.set(r,o),o+=r.length,t.shift())}return r-=e,n}o.isFinite(e)&&e>=1||(e=65536),super({transform(n,o){for(t.push(n),r+=n.length;r>e;)s+=e,o.enqueue(a())},flush(e){r&&(s+=r,e.enqueue(((e,t)=>{const n=new d(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n})(t,r)))}}),n.defineProperty(this,"outputSize",{get:()=>s})}}function Rn(e){return!!e&&"object"==typeof e}let Dn=()=>{};class Cn{constructor(e,{readable:t,writable:r},o,s){const{options:a,config:i,U:u,useWebWorkers:f,transferStreams:w,workerURI:l}=o;let{createWorker:d}=o;const{signal:p}=u;return n.assign(e,{T:!0,W:(e.W||0)+1,readable:t.pipeThrough(new zn(de(i))).pipeThrough(new An(u),{signal:p}),writable:r,options:n.assign({},a),M:o,workerURI:l,createWorker:d,transferStreams:w,terminate:()=>new g(t=>{const{O:n,T:r}=e;r?(e.L=e.L||[],e.L.push(t)):(n&&(n.terminate(),e.O=null),t()),e.P=null}),H(){if(e.T){const{L:t,O:n}=e;t&&(e.L=null,n&&(e.B=!0,n.terminate())),e.T=!1;const r=s(e);t&&t.forEach(e=>e(r))}}}),((e,t)=>({run:()=>(async({options:e,readable:t,writable:n,H:r,M:o},s)=>{let a,i,u;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(Sn),n=t?s.CompressionStreamFallback:s.DecompressionStreamFallback,r=t?s.CompressionStream:s.DecompressionStream;e.useCompressionStream?n&&n.I&&!((e,t)=>{if(!e)return!1;let n=hn.get(e);n||(n=new c,hn.set(e,n));let r=n.get(t);if(r===j){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r})(r,un)&&await f():await f()||n&&!n.I||(e.useCompressionStream=!0)}e.encrypted&&!e.zipCrypto&&await f(),a=new xn(e,s),i=new zn(de(s)),await t.pipeThrough(a).pipeThrough(i).pipeTo(n,{preventClose:!0,preventAbort:!0});const{crc32:r,inputSize:o,outputSize:u}=a;return{crc32:r,inputSize:o,outputSize:u}}catch(e){if(a){const t=i?i.outputSize:0;if(o.outputSize=t,Rn(e))try{e.outputSize=t}catch{}}throw e}finally{r()}function f(){return u||(u=(async()=>{if(Dn)try{return await void 0,!0}catch{}return!1})()),u}})(e,t)}))(e,i)}}class An extends x{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await Fn(e,n)},async transform(e,r){o+=e.length,t&&await Fn(t,o,n),r.enqueue(e)},async flush(){r&&await Fn(r,o)}})}}async function Fn(e,...t){try{await e(...t)}catch{}}let In=[];const Un=[];let Tn,En,Wn=0;function Mn(){!Tn&&Un.length&&o.isFinite(En)&&En>=0&&(Tn=I(Ln,En))}function On(){Tn&&(U(Tn),Tn=null)}function Ln(){if(Tn=null,Un.length){const[{resolve:e,stream:t,M:n}]=Un.splice(0,1);e(new Cn({},t,Pn(n),Hn)),Mn()}}function Pn(e){return n.assign({},e,{useWebWorkers:!1,workerURI:j,createWorker:j})}function Hn(){On(),Mn()}function Bn(e){const{V:t}=e;t&&(U(t),e.V=null)}const Vn="\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 Zn(e,t){return Nn(e,t,!0)}function qn(e){if(!e.some(e=>e>127))return!1;try{return new v("utf-8",{fatal:!0}).decode(e),!0}catch{return!1}}function Nn(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?(e=>{let t="";for(let n=0;n<e.length;n++)t+=Vn[e[n]];return t})(e):new v(t,{ignoreBOM:n}).decode(e)}const jn="HTTP error ",Gn="HTTP Range not supported",Kn="HTTP resource changed",Xn="Content-Range",_n="Range",$n="GET",Jn="bytes",Qn=16777216,Yn="writable",er=Symbol();class tr{constructor(){this.size=0}init(){this.initialized=!0}}class nr extends tr{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=de(le())}={}){const r=this;let o=0;return n=pe(n),new z({async pull(s){const i=t===j?n:a.min(n,t-o),c=await Er(r,e+o,i);c.length&&(s.enqueue(c),o+=c.length),(t!==j&&o>=t||!c.length&&i)&&s.close()}})}}class rr extends tr{constructor(){super();const e=this,t=new R({write(t){if(!e.initialized)throw new l("Writer not initialized");return e.writeUint8Array((n=t).byteOffset||n.byteLength!=n.buffer.byteLength?new d(n):n);var n}});n.defineProperty(e,Yn,{get:()=>t})}writeUint8Array(){}}let or,sr;class ar extends nr{constructor(e){super(),n.assign(this,{Z:e,size:e.size}),sr||(sr=(async()=>{try{const e=new y([new d(3)]).slice(1,2).stream().getReader();let t=0,n=await e.read();for(;!n.done;)t+=n.value.length,n=await e.read();or=1==t}catch{or=!1}})())}createReadable(e){const{Z:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};if(typeof t.stream==K){if(!r&&o>=n)return on(t.stream());if(or)return on(t.slice(r,r+o).stream())}return super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=e||r<n.size?n.Z.slice(e,r):n.Z;let s=await o.arrayBuffer();return s.byteLength>t&&(s=s.slice(e,r)),new d(s)}}class ir extends tr{constructor(e){super();const t=this,r=new x;n.defineProperty(t,Yn,{get:()=>r.writable}),t.contentType=e,t.N=sn(r.readable,e),t.N.catch(()=>{})}getData(){return this.N}}class cr extends nr{constructor(e,t){super(),fr(this,e,t)}async init(){await wr(this,zr,vr),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:o}=t;if((n||r)&&o!==j){const{offset:n=0,size:r=o-n}=e||{};if(r>0&&o>n)return((e,t,n)=>{let r,o=t,s=0,i=n;return new z({start:()=>c(),async pull(e){r||await c();const{value:t,done:n}=await r.read();if(n)throw new l(Gn);const o=t.length>s?t.subarray(0,s):t;s-=o.length,i-=o.length,o.length&&e.enqueue(o),s||(await(async()=>{const e=r;r=j,await e.cancel()})(),i||e.close())},cancel:e=>r&&r.cancel(e)});async function c(){const t=a.min(e.maximumRangeSize,i),n=await zr($n,e,gr(e,o,t));if(206!=n.status)throw new l(Gn);const c=dr(n);if(c!==j&&c!=o)throw new l(Gn);yr(e,n),mr(e,n),o+=t,s=t,r=n.body.getReader()}})(t,n,a.min(r,o-n))}return super.createReadable(e)}readUint8Array(e,t){return lr(this,e,t,zr,vr)}}class ur extends nr{constructor(e,t){super(),fr(this,e,t)}async init(){await wr(this,Rr,Sr),super.init()}readUint8Array(e,t){return lr(this,e,t,Rr,Sr)}}function fr(e,t,r){const{preventHeadRequest:o,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:c=!0,maximumRangeSize:u=Qn,fetch:f}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(e,{url:t,options:r,preventHeadRequest:o,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:c,maximumRangeSize:u,fetch:f})}async function wr(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:i}=e;if((e=>{const{baseURI:t}=le(),{protocol:n}=new w(e,t);return"http:"==n||"https:"==n})(r)&&(s||a)&&(typeof o==G||o)){const r=await t($n,e,gr(e,i?-65557:void 0)),o=r.headers.get("Accept-Ranges");if(!(a||o&&o.toLowerCase()==Jn))throw new l(Gn);{let o;i&&206==r.status&&(o=new d(await r.arrayBuffer())),mr(e,r);const s=pr(r);s===j?await xr(e,t,n):e.size=s,o&&o.length&&dr(r)===e.size-o.length&&(e.j=o)}}else await xr(e,t,n)}async function lr(e,t,n,r,o){const{useRangeHeader:s,forceRangeRequests:a,j:i,size:c,options:u}=e;if(s||a){if(c>t&&0!==n){if(t+n>c&&(n=c-t),i&&t>=c-i.length){const e=t-(c-i.length);return i.slice(e,e+n)}const o=await r($n,e,gr(e,t,n));if(206!=o.status)throw new l(Gn);const s=dr(o);if(s!==j&&s!=t)throw new l(Gn);yr(e,o),mr(e,o);const a=new d(await o.arrayBuffer());if(a.length!=n)throw new l(Gn);return a}return $}{const{data:r}=e;return r||await o(e,u),e.data.subarray(t,t+n)}}function dr(e){const t=e.headers.get(Xn);if(t){const e=o(t.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e))return e}}function pr(e){const t=e.headers.get(Xn);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=o(e);if(!o.isNaN(t))return t}}}function hr({headers:e}){return{G:e.get("Etag")||j,lastModified:e.get("Last-Modified")||j}}function mr(e,t){const{checkResourceChanges:n,K:r}=e;n&&!r&&206==t.status&&(e.K=hr(t))}function yr(e,t){const{checkResourceChanges:r,K:o,size:s}=e;if(r){const e=pr(t);if(e!==j&&s!==j&&e!=s)throw new l(Kn);if(o){const e=hr(t);if(n.entries(o).some(([t,n])=>n!==j&&e[t]!==j&&n!=e[t]))throw new l(Kn)}}}function gr(e,t=0,r=1){return n.assign({},br(e),{[_n]:Jn+"="+(0>t?t:t+"-"+(t+r-1))})}function br({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function vr(e){await kr(e,zr)}async function Sr(e){await kr(e,Rr)}async function kr(e,t){const n=await t($n,e,br(e));e.data=new d(await n.arrayBuffer()),e.size=e.data.length}async function xr(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,br(e)),s=r.headers.get("Content-Length");s&&!r.headers.get("Content-Encoding")?e.size=o(s):await n(e,e.options)}}async function zr(e,{fetch:t=fetch,options:r,url:o},s){const a=await t(o,n.assign({},r,{method:e,headers:s}));if(200>a.status||a.status>299)throw 416==a.status?new l(Gn):new l(jn+(a.statusText||a.status));return a}function Rr(e,{url:t},r){return new g((o,s)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(200>a.status||a.status>299)s(416==a.status?new l(Gn):new l(jn+(a.statusText||a.status)));else{const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),o({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}},!1),a.addEventListener("error",e=>s(e.detail?e.detail.error:new l("Network error")),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()})}class Dr extends nr{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new ur(e,t):new cr(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(e){return this.reader.createReadable(e)}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Cr extends nr{constructor(e){super(),this.X=e}async init(){const e=this;e._=0;const t=e.X=await g.all(e.X.map(Tr));e.$=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}J(e){const{$:t,size:n}=this,r=t[e];return r===j?n:r}async readUint8Array(e,t){const n=this,{X:r}=this;let o,s=0,i=e;for(;r[s]&&i>=r[s].size;)i-=r[s].size,s++;const c=r[s];if(c){const r=c.size;if(i+t>r){const s=r-i;o=ft(await Er(c,i,s),await n.readUint8Array(e+s,t-s))}else o=await Er(c,i,t)}else o=$;return n._=a.max(s,n._),o}}class Ar extends tr{constructor(e,t=4294967295){super();const r=this;let o,s,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const i=new R({async write(t){if(t===er)return void(a&&await u());const{availableSize:n}=r;if(a)t.length<n?await c(t):(await c(t.subarray(0,n)),await u(),t.length>n&&await this.write(t.subarray(n)));else{const{value:n,done:i}=await e.next();if(i&&!n)throw new l("Writer iterator completed too soon");o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await Ur(o),s=n.writable,a=s.getWriter(),await this.write(t)}},async close(){a&&(await a.ready,await f())},async abort(e){a&&await a.abort(e)}});async function c(e){const t=e.length;t&&(await a.ready,await a.write(e),o.size+=t,r.availableSize-=t)}async function u(){await f(),r.diskOffset+=o.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function f(){await a.close()}n.defineProperty(r,Yn,{get:()=>i})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(er)}finally{e.releaseLock()}}}class Fr{constructor(e){return t.isArray(e)&&(e=new Cr(e)),(e instanceof z||typeof e.getReader==K)&&(e={readable:on(e)}),e}}class Ir{constructor(e){e.writable===j&&typeof e.next==K&&(e=new Ar(e)),(e instanceof R||typeof e.getWriter==K)&&(e={writable:an(e)});try{e.size=e.size===j?0:e.size}catch{throw new l("Invalid writer (size must be writable)")}return e}}async function Ur(e,t){if(!e.init||e.initialized)return g.resolve();await e.init(t)}async function Tr(e){return e=new Fr(e),await Ur(e),e.size!==j&&e.readUint8Array||(e=new ar(await sn(e.readable)),await Ur(e)),e}function Er(e,t,n){return e.readUint8Array(t,n)}function Wr(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==j&&(r.filename=n),e.push(r)}}const Mr="filename",Or="rawFilename",Lr="comment",Pr="rawComment",Hr="uncompressedSize",Br="compressedSize",Vr="offset",Zr="diskNumberStart",qr="lastModDate",Nr="rawLastModDate",jr="lastAccessDate",Gr="rawLastAccessDate",Kr="creationDate",Xr="rawCreationDate",_r=[Mr,Or,Hr,Br,qr,Nr,Lr,Pr,jr,Gr,Kr,Xr,Vr,Zr,"internalFileAttributes","externalFileAttributes","msdosAttributesRaw","msdosAttributes","msDosCompatible","zip64","encrypted","version","versionMadeBy","zipCrypto","directory","executable","symlink","compressionMethod","signature","crc32","extraField","extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid","unixMode","unixExternalUpper","setuid","setgid","sticky","bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class $r{constructor(e){_r.forEach(t=>this[t]=e[t])}}const Jr="File format is not recognized",Qr="Encryption method not supported",Yr="Split zip file",eo="malformed extra field",to="wrapped entries count",no="appended data",ro="prepended data",oo="mismatched zip64 end of central directory record",so=/^[a-zA-Z]:/,ao=/(^|[\\/])\.\.([\\/]|$)/,io="utf-8",co="cp437",uo=[[Hr,T],[Br,T],[Vr,T],[Zr,E]],fo={[E]:{Y:qo,bytes:4},[T]:{Y:No,bytes:8}},wo=s(o.MAX_SAFE_INTEGER);class lo{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,r,s={}){const i=this,c=le(),{reader:u,index:f,offset:p,diskNumberStart:h,extraFieldAES:m,extraFieldZip64:y,compressionMethod:b,bitFlag:v,rawBitFlag:S,crc32:k,rawLastModDate:x,uncompressedSize:z,compressedSize:D}=i,{dataDescriptor:C}=v,A=t.localDirectory={},F=t.warnings=[],U=Ro(u,h)+p,T=await Er(u,U,30),E=wt(T);let M=Lo(i,s,"password"),L=Lo(i,s,"rawPassword");const P=(e=>{if(e!==j&&typeof e!=_&&"compressed"!==e)throw new l("Invalid passThrough option (must be a boolean or 'compressed')");return e})(Lo(i,s,"passThrough")),H=!!P,B=!0===P;if(((e,t)=>{if(e&&typeof e!=X||t&&!(t instanceof d))throw new l("Invalid password (password must be a string, rawPassword must be a Uint8Array)")})(M,L),M=M&&M.length&&M,L=L&&L.length&&L,m&&99!=m.originalCompressionMethod)throw new l(_e);if(30>T.length||67324752!=qo(E,0))throw new l("Local file header not found");yo(A,E,4);const{extraFieldLength:V,filenameLength:Z}=A,q=A.dataOffset=U+30+Z+V,N=Lo(i,s,"checkLocalDirectory"),G=Ao(s,i.options),J=((e,t)=>e===j?t!=ee:!!e)(N,G),Y=Lo(i,s,"checkLocalFilename"),te=((e,t)=>e===j?t==Q:!!e)(Y===j?N:Y,G);let ne=$;if(te&&(Z||V)){const e=await Er(u,U+30,Z+V);ne=e.subarray(0,Z),A.rawExtraField=e.subarray(Z)}else A.rawExtraField=V?await Er(u,U+30+Z,V):$;te&&(A.rawFilename=ne),go(i,A,E,4,!0)&&Wr(F,eo),((e,t,n,r,o)=>{const{rawFilename:s}=e,a=!o,i=e.ee&&!(8192&~t.rawBitFlag);!r||i||n.length==s.length&&!n.some((e,t)=>e!=s[t])||Mo(a,o,"mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&Mo(a,o,"mismatched local file header (general purpose bit flag)"),t.compressionMethod!=e.compressionMethod&&Mo(a,o,"mismatched local file header (compression method)"),t.bitFlag.dataDescriptor||i||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||Mo(a,o,"mismatched local file header (crc32 or sizes)")})(i,A,ne,te,J?j:F);const{lastAccessDate:re,creationDate:oe,uid:se,gid:ae}=A;re&&(t.lastAccessDate=re),oe&&(t.creationDate=oe),se!==j&&t.uid===j&&(t.uid=se),ae!==j&&t.gid===j&&(t.gid=ae);const ie=Lo(i,s,"checkPasswordOnly"),ce=i.encrypted&&A.encrypted&&(!B||ie),ue=ce&&!m;if(B||(t.zipCrypto=ue),ce&&!(64&~A.rawBitFlag))throw new l(Qr);const fe=H?j:(e=>$e.get(e))(b);if(0!=b&&8!=b&&9!=b&&!fe&&!H)throw new l(_e);if(ce){if(!ue&&(1>m.strength||m.strength>3))throw new l(Qr);if(!M&&!L)throw new l("File contains encrypted entry")}if(q+D>u.size)throw new l("Entry data out of bounds");const we=D,de=(e=>{if(e&&(typeof e.addEventListener!=K||typeof e.aborted!=_))throw new l("Invalid signal (must be an AbortSignal instance)");return e||j})(Lo(i,s,"signal"));(e=>{if(e&&e.aborted)throw e.reason===j?new DOMException("The operation was aborted","AbortError"):e.reason})(de);let pe=Lo(i,s,"checkOverlappingEntry");const he=Lo(i,s,"checkOverlappingEntryOnly");he&&(pe=!0);const{onstart:me,onprogress:ye,onend:ge}=s,be=0!=b&&!H,ve=H?D-((e,t,n)=>e?t?12:16+4*n:0)(ce,ue,m&&m.strength):z,Se=9==b;let ke=Lo(i,s,"useCompressionStream");Se&&(ke=!1);const xe=Lo(i,s,"checkCrc32"),ze=(xe===j?Lo(i,s,"checkSignature"):xe)&&!H&&(!ce||ue||m&&1==m.vendorVersion),Re={options:{codecType:kn,password:M,rawPassword:L,zipCrypto:ue,encryptionStrength:m&&m.strength,checkCrc32:ze,checkAuthenticationCode:Lo(i,s,"checkAuthenticationCode"),passwordVerification:ue&&(C?x>>>8&W:k>>>24&W),outputSize:ve,crc32:k,compressed:be,encrypted:ce,useWebWorkers:Lo(i,s,"useWebWorkers"),useCompressionStream:ke,transferStreams:Lo(i,s,"transferStreams"),deflate64:Se,format:fe?fe.format:j,codecURI:fe?fe.codecURI:j,compressionMethod:b,rawBitFlag:S,checkPasswordOnly:ie},config:c,U:{signal:de,size:we,onstart:me,onprogress:ye,onend:ge}};let De,Ce,Ae;pe&&await(async({reader:e,te:t,index:n,offset:r,crc32:o,compressedSize:s,uncompressedSize:a,dataOffset:i,dataDescriptor:c,extraFieldZip64:u,ne:f})=>{let w=0;if(c&&(w=u?20:12),w){const n=await Er(e,i+s,w+4),r=wt(n);let c=n.length==w+4&&qo(r,0)==O;if(c){const e=zo(r,4,u);(t.encrypted&&!t.zipCrypto||e.crc32==o)&&e.compressedSize==s&&e.uncompressedSize==a?w+=4:c=!1}if(n.length>=w){const e=zo(r,c?4:0,u);e.signature=c,t.localDirectory.dataDescriptor=e}}const d={start:r,end:i+s+w,te:t},{re:p,oe:h,se:m}=f;if(!p.has(n)){const e=((e,t)=>{let n=0,r=e.length;for(;r>n;){const o=n+r>>>1;e[o].start<t.start?n=o+1:r=o}const o=e[n-1],s=e[n];return o&&xo(t,o)?o:s&&xo(t,s)?s:void 0})(h,d)||m.find(e=>xo(d,e));if(e){const t=new l("Overlapping entry found");throw t.overlappingEntry=e.te,t}p.add(n),m.push(d),m.length*m.length>h.length&&(m.sort((e,t)=>e.start-t.start),f.oe=((e,t)=>{const n=[];let r=0,o=0;for(;r<e.length||o<t.length;)o==t.length||r<e.length&&e[r].start<t[o].start?n.push(e[r++]):n.push(t[o++]);return n})(h,m),m.length=0)}})({reader:u,te:t,index:f,offset:U,crc32:k,compressedSize:D,uncompressedSize:z,dataOffset:q,dataDescriptor:C||A.bitFlag.dataDescriptor,extraFieldZip64:y||A.extraFieldZip64,ne:r});try{if(!he){ie&&(e=new R),e=new Ir(e),await Ur(e,((e,t,n)=>a.min(e,n?1032*t:t))(ve,D,be)),({writable:De}=e);const t=on(u.createReadable({offset:q,size:we})),{outputSize:r}=await async function(e,t){const{options:n,config:r}=t,{transferStreams:s,useWebWorkers:a,useCompressionStream:i,compressed:c,checkCrc32:u,computeCrc32:f,encrypted:d,format:p,codecURI:h}=n,{workerURI:m,createWorker:y,maxWorkers:b}=r;p&&(h&&(n.codecURI=((e,t)=>{try{return new w(e,t).toString()}catch{return e}})(h,r.baseURI)),await(async(e,t)=>{!Je.has(e)&&t&&((e,t)=>{const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=K&&typeof r!=K)throw new l("Invalid codec module");Je.set(e,{CompressionStream:n,DecompressionStream:r})})(e,await(import(t)))})(p,n.codecURI)),t.transferStreams=!p&&(s||s===j&&r.transferStreams);const v=!(c||u||f||d),S=p===j||!!n.codecURI;return t.useWebWorkers=!v&&S&&(a||a===j&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&m?m:j,t.createWorker=t.useWebWorkers&&y?y:j,n.useCompressionStream=i||i===j&&r.useCompressionStream,(await(async()=>{const n=In.find(e=>!e.T);if(n)return Bn(n),new Cn(n,e,t,k);if(In.length<b){const n={ae:Wn};return Wn++,In.push(n),new Cn(n,e,t,k)}return new g(n=>{Un.push({resolve:n,stream:e,M:t}),En=r.workerStarvationTimeout,Mn()})})()).run();function k(e){if(On(),e.B)return e.B=!1,(()=>{const e=Un.splice(0).map(({resolve:e,stream:t,M:n})=>new g(r=>{e(new Cn({},t,Pn(n),()=>{Hn(),r()}))}));return On(),g.all(e)})();if(Un.length){const[{resolve:t,stream:n,M:r}]=Un.splice(0,1);t(new Cn(e,n,r,k)),Mn()}else e.O?(Bn(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.V=I(async()=>{In=In.filter(t=>t!=e);try{await e.terminate()}catch{}},r))})(e,t)):In=In.filter(t=>t!=e)}}({readable:t,writable:De},Re);if(r!=ve)throw n.assign(new l(cn),{outputSize:r});e.size+=r}}catch(t){const{outputSize:n}=Re;if(n!==j?e.size+=n:Rn(t)&&t.outputSize!==j&&(e.size+=t.outputSize),!ie||!Rn(t)||t.message!=Ft)throw Ce=t,Ae=!0,t}finally{const t=!(e=>!(!e||!e.getData))(e)&&Lo(i,s,"preventClose");if(!t&&De&&!De.locked){const e=De.getWriter();if(Ae)try{await e.abort(Ce)}catch{}else await e.close()}}return ie||he?j:e.getData?e.getData():De}}function po(e){const t=a.min(e.byteLength,1024)-3;for(let n=0;t>n;n++)if(134630224==qo(e,n))return!0;return!1}function ho(e,t,n){let r=0;for(;n+46<=t.length&&qo(e,n)==L;)n+=46+Zo(e,n+28)+Zo(e,n+30)+Zo(e,n+32),r++;return r%65536?0:r}function mo(e){if(e.length>=6){const t=wt(e);if(84233040==qo(t,0)){const n=Zo(t,4);if(6+n<=e.length)return new d(e.subarray(6,6+n))}}}function yo(e,t,r){const o=e.rawBitFlag=Zo(t,r+2),s=!(1&~o),a=qo(t,r+6);n.assign(e,{encrypted:s,version:Zo(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:!(2048&~o)},rawLastModDate:a,lastModDate:Ho(a),filenameLength:Zo(t,r+22),extraFieldLength:Zo(t,r+24)})}function go(e,t,r,o,s){const{rawExtraField:a}=t,u=t.extraField=new c,f=wt(a);let w=0,d=!1;try{for(;w<a.length;){const e=Zo(f,w),t=Zo(f,w+2);u.set(e,{type:e,data:a.slice(w+4,w+4+t)}),w+=4+t}}catch{d=!0}w>a.length&&(d=!0);const p=Zo(r,o+4);n.assign(t,{signature:qo(r,o+10),crc32:qo(r,o+10),compressedSize:qo(r,o+14),uncompressedSize:qo(r,o+18)});const h=u.get(1);h&&(((e,t)=>{t.zip64=!0;const n=wt(e.data),r=uo.filter(([e,n])=>t[e]==n),o=r.reduce((e,[,t])=>e+fo[t].bytes,0);if(e.data.length<o)throw new l("Zip64 extra field not found");for(let o=0,s=0;o<r.length;o++){const[a,i]=r[o],c=fo[i];t[a]=e[a]=c.Y(n,s),s+=c.bytes}})(h,t),t.extraFieldZip64=h);const m=u.get(28789);m&&(bo(m,Mr,Or,t,e),t.extraFieldUnicodePath=m);const y=u.get(25461);y&&(bo(y,Lr,Pr,t,e),t.extraFieldUnicodeComment=y);const g=u.get(39169);g&&g.data.length>=7?(((e,t,r)=>{const o=wt(e.data),s=Vo(o,4);n.assign(e,{vendorVersion:Vo(o,0),vendorId:Vo(o,2),strength:s,originalCompressionMethod:r,compressionMethod:Zo(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=j)})(g,t,p),t.extraFieldAES=g):t.compressionMethod=p;const b=u.get(13);b&&(vo(b,t),t.extraFieldPkwareUnix=b);const v=u.get(22613);v&&(vo(v,t),t.extraFieldUnixType1=v);const S=u.get(10);S&&(((e,t)=>{const r=wt(e.data);let o,s=4;try{for(;s<e.data.length&&!o;){const t=Zo(r,s),n=Zo(r,s+2);1==t&&(o=e.data.slice(s+4,s+4+n)),s+=4+n}}catch{}if(o&&24==o.length){const r=wt(o),s=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),i=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:s,rawLastAccessDate:a,rawCreationDate:i});const c={lastModDate:Bo(s),lastAccessDate:Bo(a),creationDate:Bo(i)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:a,rawCreationDate:i})}})(S,t),t.extraFieldNTFS=S);const k=u.get(30805);let x;if(k&&(x=So(k,t,!1),t.extraFieldUnix=k),!x){const e=u.get(30837);e&&(So(e,t,!0),t.extraFieldInfoZip=e)}const z=u.get(21589);z&&(((e,t,n)=>{if(!e.data.length)return;const r=wt(e.data),o=Vo(r,0),s=[],a=[];n?(1&~o||(s.push(qr),a.push(Nr)),2&~o||(s.push(jr),a.push(Gr)),4&~o||(s.push(Kr),a.push(Xr))):5>e.data.length||(s.push(qr),a.push(Nr));let c=1;s.forEach((n,o)=>{if(e.data.length>=c+4){const s=qo(r,c);t[n]=e[n]=new i(1e3*(0|s));const u=a[o];e[u]=s}c+=4})})(z,t,s),t.extraFieldExtendedTimestamp=z);const R=u.get(6534);return R&&(t.extraFieldUSDZ=R),d}function bo(e,t,r,o,s){if(5>e.data.length)return void(e.valid=!1);const a=wt(e.data),i=new ct;i.append(s[r]);const c=wt(new d(4));c.setUint32(0,i.get(),!0);const u=qo(a,1),f=Vo(a,0);n.assign(e,{version:f,[t]:Zn(e.data.subarray(5)),valid:1==f&&!s.bitFlag.languageEncodingFlag&&u==qo(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function vo(e,t){if(8>e.data.length)return;const r=wt(e.data),o={lastAccessDate:new i(1e3*(0|qo(r,0))),lastModDate:new i(1e3*(0|qo(r,4)))};12>e.data.length||(o.uid=Zo(r,8),o.gid=Zo(r,10)),n.assign(e,o),n.assign(t,o)}function So(e,t,r){try{const o=wt(e.data);let s,a;if(r){let t=0;const r=Vo(o,t++),i=Vo(o,t++);s=ko(e.data.subarray(t,t+i)),t+=i;const c=Vo(o,t++);a=ko(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:s,gid:a})}else 4>e.data.length||(s=Zo(o,0),a=Zo(o,2),n.assign(e,{uid:s,gid:a}));return s!==j&&(t.uid=s),a!==j&&(t.gid=a),s!==j||a!==j}catch{}}function ko(e){const t=new d(4);return t.set(e,0),new m(t.buffer,t.byteOffset,4).getUint32(0,!0)}function xo(e,t){return e.start<t.end&&t.start<e.end}function zo(e,t,n){const r=qo(e,t);let o,s;return n?(o=No(e,t+4),s=No(e,t+12)):(o=qo(e,t+4),s=qo(e,t+8)),{crc32:r,compressedSize:o,uncompressedSize:s}}function Ro(e,t){return e.J?e.J(t):0}async function Do(e){return qo(wt(await Er(e,0,4)))}function Co(e){return e===Q||e===Y||e===ee}function Ao(e,t){return Fo(e,Fo(t,Y))}function Fo(e,t){const n=e.strictness;if(n!==j){if(!Co(n))throw new l("Invalid strictness (must be 'strict', 'balanced' or 'tolerant')");return n}const r=e.checkAmbiguity;return r===j?t:r?Q:t==ee?ee:Y}function Io(e,t){if(t==ee)return!1;const n=e.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(ao.test(e)||e.startsWith("/")||e.startsWith("\\")||so.test(e))||t==Q&&(n.includes(".")||n.includes("")||e.includes("\0"))}async function*Uo(e,t){const n=e.size-t,r=await Er(e,n,t),o=wt(r);for(let e=r.length-B;e>=0;e--)101010256==qo(o,e)&&(yield[o,n,r,e,n+e])}function To(e,t,n){return{offset:n,buffer:new d(e.subarray(t,t+B)).buffer}}async function Eo(e,t,n,r,o,s,a){const i=Zo(t,r+10),c=qo(t,r+12),u=qo(t,r+16);if(i==E||c==T||u==T)return await Wo(e,t,n,o-V,s,a)==H?2:0;if(!i&&!c)return 1;const f=Zo(t,r+6);for(const r of[o-c,Ro(e,f)+u])if(await Wo(e,t,n,r,s,a)==L)return 2;return 0}async function Wo(e,t,n,r,o,s){return 0>r||r+4>o?j:n>r?s.count>0?(s.count--,qo(wt(await Er(e,r,4)),0)):j:qo(t,r-n)}function Mo(e,t,n){e?Oo(n):Wr(t,n)}function Oo(e){const t=new l("Ambiguous archive");throw t.reason=e,t}function Lo(e,t,n){return t[n]===j?e.options[n]:t[n]}function Po(e,t,n){return te(Lo(e,t,n))}function Ho(e){const t=(4294901760&e)>>16,n=e&E,r=new i(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return N>r?N:r}function Bo(e){return new i(o(e/s(1e4)-s(116444736e5)))}function Vo(e,t){return e.getUint8(t)}function Zo(e,t){return e.getUint16(t,!0)}function qo(e,t){return e.getUint32(t,!0)}function No(e,t){const n=e.getBigUint64(t,!0);if(n>wo)throw new l("64-bit value exceeds Number.MAX_SAFE_INTEGER");return o(n)}(e=>{const t=he(ye(e));n.assign(oe,t),n.assign(we,t)})({workerURI:null,wasmURI:null,DecompressionStreamFallback:class extends Xe{constructor(e){(e=>{if("deflate-raw"!=e)throw new TypeError("Unsupported compression format: "+e)})(e),super(new Ge)}}}),e.BlobReader=ar,e.BlobWriter=ir,e.Data64URIWriter=class extends rr{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",ie:""})}writeUint8Array(e){const t=this;let n,o=t.ie;const s=t.ie.length;for(t.ie="",n=0;n<3*a.floor((s+e.length)/3)-s;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.ie+=r.fromCharCode(e[n]);o.length>2?t.data+=k(o):t.ie=o+t.ie}getData(){return this.data+k(this.ie)}},e.HttpRangeReader=class extends Dr{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.TextWriter=class extends ir{constructor(e){super(),n.assign(this,{encoding:e,ce:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,ce:t}=this,n=await super.getData();return n.text&&t?n.text():((e,t)=>Nn(e,t,!1))(new d(await n.arrayBuffer()),e)}},e.ZipReader=class{constructor(e,t={}){n.assign(this,{reader:new Fr(e),options:t,ne:{re:new u,oe:[],se:[]}})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await Ur(r),r.size!==j&&r.readUint8Array||(r=new ar(await sn(r.readable)),await Ur(r)),r.size<B)throw new l(Jr);const s=t.warnings=[],i=Ao(e,t.options),c=i==Q,f=i!=ee,w=((e,t)=>{if(e!==j){const t=ne(e);if("number"!=typeof t||o.isNaN(t)||0>t)throw new l("Invalid maxAppendedDataSize (must be a number greater than or equal to 0)");return t}return t==Q?0:t==ee?1/0:E})(Lo(t,e,"maxAppendedDataSize"),i),p=((e,t)=>{if(e===j)return t;if(!Co(e))throw new l("Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')");return e})(Lo(t,e,"filenameValidation"),i),h=Lo(t,e,"normalizeFilename"),{ue:m,fe:y}=await(async(e,t,n)=>{const{size:r}=e,o=a.min(r,65557),s={count:64};let i,c,u=0;for await(const[n,a,f,w,l]of Uo(e,o)){const o=Zo(n,w+20);if(l+B+o==r){const o=await Eo(e,n,a,w,l,r,s);if(2==o){if(i||(i=To(f,w,l)),u++,!t||u>1)break}else 1!=o||c||(c=To(f,w,l))}}return i||(i=c),i||(i=await(async(e,t,n)=>{const{size:r}=e,o=a.min(r,t==1/0?r:65557+t);let s,i;for await(const[t,a,c,u,f]of Uo(e,o)){const o=To(c,u,f);s||(s=o);const w=await Eo(e,t,a,u,f,r,n);if(2==w)return o;1!=w||i||(i=o)}return i||s})(e,n,s)),{ue:i,fe:u}})(r,f,w);if(!m)throw await(async e=>await Do(e)==M)(r)?new l(Yr):new l("End of central directory not found");f&&y>1&&Oo("multiple end of central directory records");const g=wt(m);let b=qo(g,12),v=qo(g,16);const S=m.offset,k=Zo(g,20),z=S+B+k,R=r.size-z;R>w&&Oo(no),R>0&&Wr(s,no);let D=Zo(g,4);const C=r._||0;let A,F,I,U,O,N=Zo(g,6),G=Zo(g,10),K=0,X=Z;const _=v==T||b==T||G==E||N==E;if(v!=T&&N!=E&&(v+=Ro(r,N)),_){const e=m.offset<V?$:await Er(r,m.offset-V,V),t=wt(e);if(e.length==V&&qo(t,0)==H){v=Ro(r,qo(t,4))+No(t,8);let e=await Er(r,v,Z),o=wt(e);const i=m.offset-V-Z;if((e.length<Z||qo(o,0)!=P)&&v!=i&&i>=0){const t=v;v=i,v>t&&(K=v-t),e=await Er(r,v,Z),o=wt(e)}if(e.length<Z||qo(o,0)!=P)throw new l("End of Zip64 central directory locator not found");if(I=!0,U=No(o,4)>44,U){const e=a.min(No(o,4)-44,r.size-v-Z);e>0&&(X+=e,O=(e=>{const t={rawExtensibleData:e};if(e.length>=28){const r=wt(e),o=Zo(r,26);n.assign(t,{compressionMethod:Zo(r,0),compressedSize:No(r,2),uncompressedSize:No(r,10),encryptionAlgorithm:Zo(r,18),bitLength:Zo(r,20),flags:Zo(r,22),hashAlgorithm:Zo(r,24),hashData:e.subarray(28,28+o)})}return t})(await Er(r,v+Z,e)))}D==E?D=qo(o,16):D!=qo(o,16)&&Mo(c,s,oo),N==E?N=qo(o,20):N!=qo(o,20)&&Mo(c,s,oo),G==E?G=No(o,32):G!=No(o,32)&&Mo(c,s,oo),b==T?b=No(o,40):b!=No(o,40)&&Mo(c,s,oo),v=Ro(r,N)+No(o,48)+K}}let J=b;const Y=m.offset-(I?X+V:0);if(v<r.size||(K=r.size-v-b-B,v=r.size-b-B),C!=D)throw new l(Yr);if(0>v)throw new l(Jr);let te=0,re=await Er(r,v,b),oe=wt(re);if(b){if(4>re.length)throw new l(Jr);const e=Y-b;if(v!=e&&N==D){const t=qo(oe,te)==L||!(!O||!O.compressedSize)||po(oe);let n=!t;if(n||0>e||e+4>r.size||(n=qo(wt(await Er(r,e,4)),0)==L),n){const n=v;v=e,v>n&&(K+=v-n,A=t),re=await Er(r,v,b),oe=wt(re)}}}const se=Y-v;if(b==se||0>se||N!=D||(b=se,re=await Er(r,v,b),oe=wt(re)),0>v||v>=r.size)throw new l(Jr);t.directoryOffset=v,t.directoryLength=J;const ae=Po(t,e,"decryptCentralDirectory");let ie,ce;if(ae&&G&&re.length>=4&&qo(oe,0)!=L&&(U||po(oe))){const e=((e,t,n)=>{const r=e&&e.compressedSize?e.compressedSize:t;return r>0&&n>=r?r:n})(O,J,re.length);ce=re.subarray(e),re=await ae(re.subarray(0,e),O),oe=wt(re),J=re.length,ie=!0}!O||ie||re.length>=4&&qo(oe,0)!=L||Wr(s,"unknown zip64 extensible data"),F=v;const ue=Lo(t,e,"filenameEncoding"),fe=Lo(t,e,"commentEncoding"),we=new u;let le,de=-1;const pe=!c&&!I;!G&&pe&&(G=ho(oe,re,te),G&&Wr(s,to));for(let o=0;G>o;o++){const i=new lo(r,t.options);if(te+46>re.length||qo(oe,te)!=L){if(0==o&&!ie&&(U||po(oe)))throw new l("Encrypted central directory is not supported");throw new l("Central directory header not found")}yo(i,oe,te+6);const c=!!i.bitFlag.languageEncodingFlag,u=te+46,f=u+i.filenameLength+i.extraFieldLength,w=Zo(oe,te+4),m=!(w>>8),y=w>>8==3,g=Zo(oe,te+32),b=f+g,v=new d(re.subarray(u,b)),S=v.subarray(0,i.filenameLength),k=v.subarray(i.filenameLength+i.extraFieldLength),z=c||!ue&&qn(S),R=c||!fe&&qn(k),D=qo(oe,te+38),C=D&W,A={readOnly:!!(1&C),hidden:!!(2&C),system:!!(4&C),directory:!!(16&C),archive:!!(32&C)},I=qo(oe,te+42),T=Po(t,e,"decodeText")||Zn,M=z?io:ue||co,O=R?io:fe||co;let P=T(S,M,"filename");if(P===j&&(P=Zn(S,M)),h){const e=h(P);e!==j&&(P=e)}if(Io(P,p)){const e=new l("Unsafe filename");throw e.filename=P,e}let H=T(k,O,"comment");H===j&&(H=Zn(k,O)),n.assign(i,{index:o,ee:ie,versionMadeBy:w,msDosCompatible:m,zip64:!1,compressedSize:0,uncompressedSize:0,we:g,offset:I,diskNumberStart:Zo(oe,te+34),internalFileAttributes:Zo(oe,te+36),externalFileAttributes:D,msdosAttributesRaw:C,msdosAttributes:A,rawFilename:S,filenameUTF8:z,commentUTF8:R,rawExtraField:v.subarray(i.filenameLength,i.filenameLength+i.extraFieldLength),rawComment:k,filename:P,comment:H}),go(i,i,oe,te+6)&&Wr(s,eo,P),i.offset+=K;const B=Ro(r,i.diskNumberStart)+i.offset;F=a.min(B,F),de>B&&Wr(s,"unsorted central directory",P),de=B,(i.version&W)>63&&Wr(s,"unknown version needed to extract",P),32&~i.rawBitFlag||Wr(s,"compressed patched data",P),we.has(i.filename)&&(le=!0),we.add(i.filename);const V=i.externalFileAttributes>>16&E;i.unixMode===j&&16877&V&&(i.unixMode=V);const Z=!!(2048&i.unixMode),N=!!(1024&i.unixMode),X=!!(512&i.unixMode),_=40960==((i.unixMode===j?V:i.unixMode)&q),$=!_&&(i.unixMode!==j?!!(73&i.unixMode):y&&!!(73&V)),J=i.unixMode!==j&&16384==(i.unixMode&q),Q=16384==(V&q);n.assign(i,{setuid:Z,setgid:N,sticky:X,symlink:_,unixExternalUpper:V,executable:$,directory:J||Q||m&&A.directory||i.filename.endsWith("/"),zipCrypto:i.encrypted&&!i.extraFieldAES});const Y=new $r(i);if(Y.getData=(e,n)=>i.getData(e,Y,t.ne,n),Y.arrayBuffer=async e=>{const r=new x,o=sn(r.readable).then(e=>e.arrayBuffer());return o.catch(()=>{}),await i.getData(r,Y,t.ne,n.assign({},e,{preventClose:!1})),o},te=b,o==G-1&&pe){const e=ho(oe,re,te);e&&(G+=e,Wr(s,to))}const{onprogress:ee}=e;if(ee)try{await ee(o+1,G,new $r(i))}catch{}yield Y}let he=te,me=mo(re.subarray(te))||(ie?mo(ce):j);if(!me&&!ie){const e=v+te,t=a.min(Y-e,65541);6>t||(me=mo(await Er(r,e,t)))}me&&(t.digitalSignature=me,he=te+6+me.length),(te!=J&&he!=J||!ie&&te!=b&&he!=b)&&Mo(c,s,"trailing central directory data"),le&&Mo(c,s,"duplicate filename");const ye=Lo(t,e,"extractPrependedData"),ge=Lo(t,e,"extractAppendedData"),be=(c||ye)&&G&&4==F&&await(async e=>{const t=await Do(e);return t==M||808471376==t})(r)?4:0;return c&&(K||G&&F>be)&&Oo(ro),(K||G&&F>4)&&Wr(s,ro),A&&Wr(s,"prepended central directory"),ye&&(t.prependedData=F>be?await Er(r,be,F-be):$),t.comment=k?await Er(r,S+B,k):$,ge&&(t.appendedData=z<r.size?await Er(r,z,r.size-z):$),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){const{reader:e}=this;e.readUint8Array||!e.readable||e.readable.locked||await e.readable.cancel()}[J](){return this.close()}},e.configure=e=>{n.assign(we,he(ye(e)))},e.inflateRaw=(e,t)=>Ne(e,{i:2},t&&t.le,t&&t.m)});
|
|
1
|
+
((t,e)=>{"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).zip={})})(this,function(t){"use strict";const{Array:e,Object:n,String:r,Number:o,BigInt:s,Math:a,Date:i,Map:c,Set:u,Response:f,URL:w,Error:l,Uint8Array:d,Uint16Array:p,Uint32Array:h,DataView:m,Blob:y,Promise:g,TextEncoder:b,TextDecoder:v,crypto:S,btoa:k,TransformStream:z,ReadableStream:x,WritableStream:R,CompressionStream:D,DecompressionStream:C,navigator:A,Worker:F,setTimeout:I,clearTimeout:E}="undefined"!=typeof globalThis?globalThis:self,U=4294967295,T=65535,M=255,O=67324752,W=134695760,L=W,P=84233040,H=33639248,B=101075792,Z=117853008,V=46,q=22,N=20,j=56,K=8192,_=61440,G=new i(1980,0,1),X=void 0,$="Zip64 extra field not found",J="undefined",Q="function",Y="string",tt="boolean",et=new d,nt=Symbol.asyncDispose||Symbol(),rt="checkAmbiguity",ot="strictness",st="strict",at="balanced",it="tolerant";function ct(t){if(t&&typeof t!=Q)throw new l("Invalid option (must be a function)");return t}function ut(t){if(t&&t.aborted)throw t.reason===X?new DOMException("The operation was aborted","AbortError"):t.reason}function ft(t){return typeof t==Y&&t.trim()?o(t):t}const wt=262144;let lt=2;try{typeof A!=J&&A.hardwareConcurrency&&(lt=A.hardwareConcurrency)}catch{}const dt={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:wt,maxWorkers:lt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,CompressionStream:typeof D!=J&&D,DecompressionStream:typeof C!=J&&C},pt="maxWorkers",ht="baseURI",mt=["wasmURI","workerURI"],yt=["chunkSize",pt,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],gt=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],bt=[ht,...mt,"useCompressionStream","useWebWorkers",...yt,...gt],vt={...dt};function St(){return vt}function kt(t){return zt(t.chunkSize)}function zt(t){return t=ft(t),o.isInteger(t)&&t>=1?a.max(t,64):wt}function xt(t){const e={};for(const n of bt){const r=t[n];r!==X&&(e[n]=Rt(n,r))}return e}function Rt(t,e){if(yt.includes(t)){if(e=ft(e),t==pt&&(!o.isInteger(e)||1>e))throw new l("Invalid maxWorkers (must be an integer greater than 0)")}else if(gt.includes(t))ct(e);else if(t==ht){if(e&&typeof e!=Y)throw new l("Invalid baseURI (must be a string)")}else if(mt.includes(t)&&e&&typeof e!=Y&&typeof e!=Q)throw new l("Invalid URI (must be a string or a function returning a string)");return e}function Dt(t){t=t||{};const{CompressionStreamZlib:e,DecompressionStreamZlib:r}=t;if(e===X&&r===X)return t;const o=n.assign({},t);return o.CompressionStreamFallback===X&&(o.CompressionStreamFallback=e),o.DecompressionStreamFallback===X&&(o.DecompressionStreamFallback=r),o}var Ct=d,At=p,Ft=Int32Array,It=new Ct([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]),Et=new Ct([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]),Ut=new Ct([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Tt=(t,e)=>{for(var n=new At(31),r=0;31>r;++r)n[r]=e+=1<<t[r-1];var o=new Ft(n[30]);for(r=1;30>r;++r)for(var s=n[r];s<n[r+1];++s)o[s]=s-n[r]<<5|r;return{b:n,r:o}},Mt=Tt(It,2),Ot=Mt.b,Wt=Mt.r;Ot[28]=258,Wt[258]=28;for(var Lt=Tt(Et,0).b,Pt=new At(32768),Ht=0;32768>Ht;++Ht){var Bt=(43690&Ht)>>1|(21845&Ht)<<1;Bt=(61680&(Bt=(52428&Bt)>>2|(13107&Bt)<<2))>>4|(3855&Bt)<<4,Pt[Ht]=((65280&Bt)>>8|(255&Bt)<<8)>>1}var Zt=(t,e,n)=>{for(var r=t.length,o=0,s=new At(e);r>o;++o)t[o]&&++s[t[o]-1];var a,i=new At(e);for(o=1;e>o;++o)i[o]=i[o-1]+s[o-1]<<1;if(n){a=new At(1<<e);var c=15-e;for(o=0;r>o;++o)if(t[o])for(var u=o<<4|t[o],f=e-t[o],w=i[t[o]-1]++<<f,l=w|(1<<f)-1;l>=w;++w)a[Pt[w]>>c]=u}else for(a=new At(r),o=0;r>o;++o)t[o]&&(a[o]=Pt[i[t[o]-1]++]>>15-t[o]);return a},Vt=new Ct(288);for(Ht=0;144>Ht;++Ht)Vt[Ht]=8;for(Ht=144;256>Ht;++Ht)Vt[Ht]=9;for(Ht=256;280>Ht;++Ht)Vt[Ht]=7;for(Ht=280;288>Ht;++Ht)Vt[Ht]=8;var qt=new Ct(32);for(Ht=0;32>Ht;++Ht)qt[Ht]=5;var Nt=Zt(Vt,9,1),jt=Zt(qt,5,1),Kt=t=>{for(var e=t[0],n=1;n<t.length;++n)t[n]>e&&(e=t[n]);return e},_t=(t,e,n)=>{var r=e/8|0;return(t[r]|t[r+1]<<8)>>(7&e)&n},Gt=(t,e)=>{var n=e/8|0;return(t[n]|t[n+1]<<8|t[n+2]<<16)>>(7&e)},Xt=t=>(t+7)/8|0,$t=(t,e,n)=>((null==e||0>e)&&(e=0),(null==n||n>t.length)&&(n=t.length),new Ct(t.subarray(e,n))),Jt=["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"],Qt=(t,e,n)=>{var r=new l(e||Jt[t]);if(r.code=t,l.captureStackTrace&&l.captureStackTrace(r,Qt),!n)throw r;return r},Yt=(t,e,n,r)=>{var o=t.length,s=r?r.length:0;if(!o||e.f&&!e.o)return n||new Ct(0);var i=!n,c=i||2!=e.i,u=e.i;i&&(n=new Ct(3*o));var f=t=>{var e=n.length;if(t>e){var r=new Ct(a.max(2*e,t));r.set(n),n=r}},w=e.f||0,l=e.p||0,d=e.b||0,p=e.o,h=e.d,m=e.l,y=e.n,g=8*o;do{if(!p){w=_t(t,l,1);var b=_t(t,l+1,3);if(l+=3,!b){var v=t[(E=Xt(l)+4)-4]|t[E-3]<<8,S=E+v;if(S>o){u&&Qt(0);break}c&&f(d+v),n.set(t.subarray(E,S),d),e.b=d+=v,e.p=l=8*S,e.f=w;continue}if(1==b)p=Nt,h=jt,m=9,y=5;else if(2==b){var k=_t(t,l,31)+257,z=_t(t,l+10,15)+4,x=k+_t(t,l+5,31)+1;l+=14;for(var R=new Ct(x),D=new Ct(19),C=0;z>C;++C)D[Ut[C]]=_t(t,l+3*C,7);l+=3*z;var A=Kt(D),F=(1<<A)-1,I=Zt(D,A,1);for(C=0;x>C;){var E,U=I[_t(t,l,F)];if(l+=15&U,16>(E=U>>4))R[C++]=E;else{var T=0,M=0;for(16==E?(M=3+_t(t,l,3),l+=2,T=R[C-1]):17==E?(M=3+_t(t,l,7),l+=3):18==E&&(M=11+_t(t,l,127),l+=7);M--;)R[C++]=T}}var O=R.subarray(0,k),W=R.subarray(k);m=Kt(O),y=Kt(W),p=Zt(O,m,1),h=Zt(W,y,1)}else Qt(1);if(l>g){u&&Qt(0);break}}c&&f(d+131072);for(var L=(1<<m)-1,P=(1<<y)-1,H=l;;H=l){var B=(T=p[Gt(t,l)&L])>>4;if((l+=15&T)>g){u&&Qt(0);break}if(T||Qt(2),256>B)n[d++]=B;else{if(256==B){H=l,p=null;break}var Z=B-254;if(B>264){var V=It[C=B-257];Z=_t(t,l,(1<<V)-1)+Ot[C],l+=V}var q=h[Gt(t,l)&P],N=q>>4;if(q||Qt(3),l+=15&q,W=Lt[N],N>3&&(V=Et[N],W+=Gt(t,l)&(1<<V)-1,l+=V),l>g){u&&Qt(0);break}c&&f(d+131072);var j=d+Z;if(W>d){var K=s-W,_=a.min(W,j);for(0>K+d&&Qt(3);_>d;++d)n[d]=r[K+d]}for(;j>d;++d)n[d]=n[d-W]}}e.o=p,e.p=H,e.b=d,e.f=w,p&&(w=1,e.l=m,e.d=h,e.n=y)}while(!w);return d!=n.length&&i?$t(n,0,d):n.subarray(0,d)},te=new Ct(0),ee=function(){function t(t,e){"function"==typeof t&&(e=t,t={}),this.h=e;var n=t&&t.m&&t.m.subarray(-32768);this.s={i:0,b:n?n.length:0},this.v=new Ct(32768),this.p=new Ct(0),n&&this.v.set(n)}return t.prototype.e=function(t){if(this.h||Qt(5),this.d&&Qt(4),this.p.length){if(t.length){var e=new Ct(this.p.length+t.length);e.set(this.p),e.set(t,this.p.length),this.p=e}}else this.p=t},t.prototype.c=function(t){this.s.i=+(this.d=t||!1);var e=this.s.b,n=Yt(this.p,this.s,this.v);this.h($t(n,e,this.s.b),this.d),this.v=$t(n,this.s.b-32768),this.s.b=this.v.length,this.p=$t(this.p,this.s.p/8|0),this.s.p&=7},t.prototype.push=function(t,e){this.e(t),this.c(e)},t}(),ne=void 0!==v&&new v;try{ne.decode(te,{stream:!0})}catch(t){}class re extends z{constructor(t){super({start(e){t.h=t=>{t.length&&e.enqueue(t)}},transform(e){t.push(e)},flush(){t.push(new d(0),!0)}})}}const oe="Compression method not supported",se=new c,ae=new c;function ie(t){return ae.get(t)}const ce=[[],[],[],[],[],[],[],[]];for(let t=0;256>t;t++){let e=t;for(let t=0;8>t;t++)e=1&e?e>>>1^3988292384:e>>>1;ce[0][t]=e}for(let t=0;256>t;t++)for(let e=1;8>e;e++){const n=ce[e-1][t];ce[e][t]=n>>>8^ce[0][255&n]}const[ue,fe,we,le,de,pe,he,me]=ce;class ye{constructor(t){this.S=t||-1}append(t){let e=0|this.S;const n=0|t.length;let r=0;if(n>=8&&t.buffer){const o=new m(t.buffer,t.byteOffset,n),s=n-8;for(;s>=r;r+=8){const t=e^o.getInt32(r,!0),n=o.getInt32(r+4,!0);e=me[255&t]^he[t>>>8&255]^pe[t>>>16&255]^de[t>>>24&255]^le[255&n]^we[n>>>8&255]^fe[n>>>16&255]^ue[n>>>24&255]}}for(;n>r;r++)e=e>>>8^ue[255&(e^t[r])];this.S=e}get(){return~this.S}}class ge extends z{constructor(){let t;const e=new ye;super({transform(t,n){e.append(t),n.enqueue(t)},flush(){const n=new d(4);new m(n.buffer).setUint32(0,e.get()),t.value=n}}),t=this}}function be(t,e){const n=new d(t.length+e.length);return n.set(t),n.set(e,t.length),n}function ve(t){return new m(t.buffer,t.byteOffset,t.byteLength)}const Se=64,ke=20,ze=new d([128]),xe=new d(1),Re=new Int32Array([1732584193,4023233417,2562383102,271733878,3285377520]),De=new d(256),Ce=new Int32Array(256),Ae=new Int32Array(256),Fe=new Int32Array(256),Ie=new Int32Array(256);let Ee=!1;function Ue(t){const e=(()=>{const t=new Int32Array(Re),e=new Int32Array(16),n=new d(Se),r=new m(n.buffer),o=new d(8);let s=0,i=0;return{update:c,digest:()=>{const e=8*i,n=a.floor(e/4294967296),r=e>>>0;for(c(ze,0,1);56!=s;)c(xe,0,1);o[0]=n>>>24,o[1]=n>>>16,o[2]=n>>>8,o[3]=n,o[4]=r>>>24,o[5]=r>>>16,o[6]=r>>>8,o[7]=r,c(o,0,8);const u=new d(ke),f=new m(u.buffer);for(let e=0;e<t.length;e++)f.setInt32(4*e,t[e]);return t.set(Re),s=0,i=0,u}};function c(t,e,o){const a=e+o;if(i+=o,s){for(;a>e&&Se>s;)n[s++]=t[e++];s==Se&&(u(r,0),s=0)}if(a>=e+Se){const n=new m(t.buffer,t.byteOffset,t.byteLength);for(;a>=e+Se;e+=Se)u(n,e)}for(;a>e;)n[s++]=t[e++]}function u(n,r){for(let t=0;16>t;t++)e[t]=n.getInt32(r+4*t);let o,s=t[0],a=t[1],i=t[2],c=t[3],u=t[4];for(let t=0;15>t;t+=5)u=(s<<5|s>>>27)+((i^c)&a^c)+u+1518500249+e[t]|0,a=a<<30|a>>>2,c=(u<<5|u>>>27)+((a^i)&s^i)+c+1518500249+e[t+1]|0,s=s<<30|s>>>2,i=(c<<5|c>>>27)+((s^a)&u^a)+i+1518500249+e[t+2]|0,u=u<<30|u>>>2,a=(i<<5|i>>>27)+((u^s)&c^s)+a+1518500249+e[t+3]|0,c=c<<30|c>>>2,s=(a<<5|a>>>27)+((c^u)&i^u)+s+1518500249+e[t+4]|0,i=i<<30|i>>>2;u=(s<<5|s>>>27)+((i^c)&a^c)+u+1518500249+e[15]|0,a=a<<30|a>>>2,o=e[13]^e[8]^e[2]^e[0],o=o<<1|o>>>31,e[0]=o,c=(u<<5|u>>>27)+((a^i)&s^i)+c+1518500249+o|0,s=s<<30|s>>>2,o=e[14]^e[9]^e[3]^e[1],o=o<<1|o>>>31,e[1]=o,i=(c<<5|c>>>27)+((s^a)&u^a)+i+1518500249+o|0,u=u<<30|u>>>2,o=e[15]^e[10]^e[4]^e[2],o=o<<1|o>>>31,e[2]=o,a=(i<<5|i>>>27)+((u^s)&c^s)+a+1518500249+o|0,c=c<<30|c>>>2,o=e[0]^e[11]^e[5]^e[3],o=o<<1|o>>>31,e[3]=o,s=(a<<5|a>>>27)+((c^u)&i^u)+s+1518500249+o|0,i=i<<30|i>>>2;for(let t=20;40>t;t+=5)o=e[t-3&15]^e[t-8&15]^e[t-14&15]^e[15&t],o=o<<1|o>>>31,e[15&t]=o,u=(s<<5|s>>>27)+(a^i^c)+u+1859775393+o|0,a=a<<30|a>>>2,o=e[t-2&15]^e[t-7&15]^e[t-13&15]^e[t+1&15],o=o<<1|o>>>31,e[t+1&15]=o,c=(u<<5|u>>>27)+(s^a^i)+c+1859775393+o|0,s=s<<30|s>>>2,o=e[t-1&15]^e[t-6&15]^e[t-12&15]^e[t+2&15],o=o<<1|o>>>31,e[t+2&15]=o,i=(c<<5|c>>>27)+(u^s^a)+i+1859775393+o|0,u=u<<30|u>>>2,o=e[15&t]^e[t-5&15]^e[t-11&15]^e[t+3&15],o=o<<1|o>>>31,e[t+3&15]=o,a=(i<<5|i>>>27)+(c^u^s)+a+1859775393+o|0,c=c<<30|c>>>2,o=e[t+1&15]^e[t-4&15]^e[t-10&15]^e[t+4&15],o=o<<1|o>>>31,e[t+4&15]=o,s=(a<<5|a>>>27)+(i^c^u)+s+1859775393+o|0,i=i<<30|i>>>2;for(let t=40;60>t;t+=5)o=e[t-3&15]^e[t-8&15]^e[t-14&15]^e[15&t],o=o<<1|o>>>31,e[15&t]=o,u=(s<<5|s>>>27)+(a&i|(a|i)&c)+u+2400959708+o|0,a=a<<30|a>>>2,o=e[t-2&15]^e[t-7&15]^e[t-13&15]^e[t+1&15],o=o<<1|o>>>31,e[t+1&15]=o,c=(u<<5|u>>>27)+(s&a|(s|a)&i)+c+2400959708+o|0,s=s<<30|s>>>2,o=e[t-1&15]^e[t-6&15]^e[t-12&15]^e[t+2&15],o=o<<1|o>>>31,e[t+2&15]=o,i=(c<<5|c>>>27)+(u&s|(u|s)&a)+i+2400959708+o|0,u=u<<30|u>>>2,o=e[15&t]^e[t-5&15]^e[t-11&15]^e[t+3&15],o=o<<1|o>>>31,e[t+3&15]=o,a=(i<<5|i>>>27)+(c&u|(c|u)&s)+a+2400959708+o|0,c=c<<30|c>>>2,o=e[t+1&15]^e[t-4&15]^e[t-10&15]^e[t+4&15],o=o<<1|o>>>31,e[t+4&15]=o,s=(a<<5|a>>>27)+(i&c|(i|c)&u)+s+2400959708+o|0,i=i<<30|i>>>2;for(let t=60;80>t;t+=5)o=e[t-3&15]^e[t-8&15]^e[t-14&15]^e[15&t],o=o<<1|o>>>31,e[15&t]=o,u=(s<<5|s>>>27)+(a^i^c)+u+3395469782+o|0,a=a<<30|a>>>2,o=e[t-2&15]^e[t-7&15]^e[t-13&15]^e[t+1&15],o=o<<1|o>>>31,e[t+1&15]=o,c=(u<<5|u>>>27)+(s^a^i)+c+3395469782+o|0,s=s<<30|s>>>2,o=e[t-1&15]^e[t-6&15]^e[t-12&15]^e[t+2&15],o=o<<1|o>>>31,e[t+2&15]=o,i=(c<<5|c>>>27)+(u^s^a)+i+3395469782+o|0,u=u<<30|u>>>2,o=e[15&t]^e[t-5&15]^e[t-11&15]^e[t+3&15],o=o<<1|o>>>31,e[t+3&15]=o,a=(i<<5|i>>>27)+(c^u^s)+a+3395469782+o|0,c=c<<30|c>>>2,o=e[t+1&15]^e[t-4&15]^e[t-10&15]^e[t+4&15],o=o<<1|o>>>31,e[t+4&15]=o,s=(a<<5|a>>>27)+(i^c^u)+s+3395469782+o|0,i=i<<30|i>>>2;t[0]=t[0]+s|0,t[1]=t[1]+a|0,t[2]=t[2]+i|0,t[3]=t[3]+c|0,t[4]=t[4]+u|0}})(),n=new d(Se),r=new d(Se);t.length>Se&&(e.update(t,0,t.length),t=e.digest());for(let e=0;Se>e;e++){const o=e<t.length?t[e]:0;n[e]=54^o,r[e]=92^o}return e.update(n,0,Se),{update(t,n,r){e.update(t,n,r)},digest(){const t=e.digest();e.update(r,0,Se),e.update(t,0,ke);const o=e.digest();return e.update(n,0,Se),o}}}function Te(t){return De[t>>>24]<<24|De[t>>>16&255]<<16|De[t>>>8&255]<<8|De[255&t]}function Me(t){return t<<24|(65280&t)<<8|t>>>8&65280|t>>>24}function Oe(t){return 255&(t<<1^27*(t>>7))}const We=typeof S!=J&&typeof S.getRandomValues==Q,Le="Invalid password",Pe="zipjs-abort-check-password";function He(t){if(We)return S.getRandomValues(t);throw new l("Crypto API not supported")}const Be={name:"PBKDF2"},Ze=n.assign({hash:{name:"HMAC"}},Be),Ve=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Be),qe=["deriveBits"],Ne=[8,12,16],je=[16,24,32],Ke=10,_e=typeof S!=J,Ge=_e&&S.subtle;let Xe=_e&&typeof Ge!=J&&typeof Ge.importKey==Q&&typeof Ge.deriveBits==Q;class $e extends z{constructor({password:t,rawPassword:e,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){const s={};super({start(){Qe(s,t,e,n)},async transform(t,e){const{password:n,strength:o,R:a,ready:i}=s;if(n?(await(async(t,e,n,r)=>{const o=await nn(t,e,n,on(r,0,Ne[e])),s=on(r,Ne[e]);if(o[0]!=s[0]||o[1]!=s[1])throw en(t),new l(Le)})(s,o,n,on(t,0,Ne[o]+2)),t=on(t,Ne[o]+2),r?(en(s),e.error(new l(Pe))):a()):await i,s.D)return;const c=new d(t.length-Ke-(t.length-Ke)%16);e.enqueue(tn(s,t,c,0,Ke,!0))},async flush(t){const{C:e,A:n,ready:r}=s;if(e){if(await r,s.D)return;const a=on(n,n.length-Ke),i=new d(on(n,0,n.length-Ke));e.process(i,!0);const c=e.digest();let u=n.length<Ke?1:0;for(let t=0;Ke>t;t++)u|=c[t]^a[t];if(u&&o)return void t.error(new l("Invalid authentication code"));t.enqueue(i)}}}),Ye(this,s)}}class Je extends z{constructor({password:t,rawPassword:e,encryptionStrength:n}){const r={};super({start(){Qe(r,t,e,n)},async transform(t,e){const{password:n,strength:o,R:s,ready:a}=r;let i=et;if(n?(i=await(async(t,e,n)=>{const r=He(new d(Ne[e]));return be(r,await nn(t,e,n,r))})(r,o,n),s()):await a,r.D)return;const c=new d(i.length+t.length-t.length%16);c.set(i,0),e.enqueue(tn(r,t,c,i.length,0,!1))},async flush(t){const{C:e,A:n,ready:o}=r;if(e){if(await o,r.D)return;const s=new d(n);e.process(s,!1);const a=on(e.digest(),0,Ke);t.enqueue(be(s,a))}}}),Ye(this,r)}}function Qe(t,e,r,o){n.assign(t,{ready:new g(e=>t.R=e),password:rn(e,r),strength:o-1,A:et,D:!1})}function Ye(t,e){const r=t.readable.getReader(),o=new x({async pull(t){try{const{value:e,done:n}=await r.read();n?t.close():t.enqueue(e)}catch(t){throw en(e),r.cancel(t).catch(()=>{}),t}},cancel:t=>(en(e),r.cancel(t))});n.defineProperty(t,"readable",{get:()=>o})}function tn(t,e,n,r,o,s){const{C:a,A:i}=t;i.length&&(e=be(i,e));const c=e.length-o,u=c-c%16;if(n=((t,e)=>{if(e&&e>t.length){const n=t;(t=new d(e)).set(n,0)}return t})(n,r+u),u){const t=on(n,r,r+u);t.set(on(e,0,u)),a.process(t,s)}return t.A=on(e,u),n}function en(t){const{C:e}=t;t.D=!0,e&&e.dispose&&e.dispose()}async function nn(t,e,r,o){t.password=null;const s=je[e],i=await(async(t,e,r)=>{if(Xe)try{const o=await Ge.importKey("raw",t,Ze,!1,qe);return new d(await Ge.deriveBits(n.assign({salt:e},Ve),o,8*r))}catch{Xe=!1}return((t,e,n,r)=>{const o=Ue(t),s=new d(r),i=new d(e.length+4),c=new m(i.buffer);i.set(e);for(let t=1,n=0;r>n;t++,n+=ke){c.setUint32(e.length,t),o.update(i,0,i.length);let u=o.digest();const f=u.slice();for(let t=1;1e3>t;t++){o.update(u,0,ke),u=o.digest();for(let t=0;ke>t;t++)f[t]^=u[t]}s.set(f.subarray(0,a.min(ke,r-n)),n)}return s})(t,e,0,r)})(r,o,2*s+2);return t.C=((t,e)=>{(()=>{if(!Ee){let t=1,e=1;do{t=255&(t^t<<1^(128&t?27:0)),e=255&(e^e<<1),e=255&(e^e<<2),e=255&(e^e<<4),128&e&&(e^=9),De[t]=255&(e^(e<<1|e>>7)^(e<<2|e>>6)^(e<<3|e>>5)^(e<<4|e>>4)^99)}while(1!=t);De[0]=99;for(let t=0;256>t;t++){const e=De[t],n=Oe(e),r=n<<24|e<<16|e<<8|n^e;Ce[t]=r,Ae[t]=r>>>8|r<<24,Fe[t]=r>>>16|r<<16,Ie[t]=r>>>24|r<<8}Ee=!0}})();const n=new Int32Array(60),r=((t,e)=>{const n=t.length>>2,r=n+6,o=4*(r+1);let s=1;for(let r=0;n>r;r++)e[r]=t[4*r]<<24|t[4*r+1]<<16|t[4*r+2]<<8|t[4*r+3];for(let t=n;o>t;t++){let r=e[t-1];t%n==0?(r=Te(r<<8|r>>>24)^s<<24,s=Oe(s)):n>6&&t%n==4&&(r=Te(r)),e[t]=e[t-n]^r}return r})(t,n),o=new Int32Array(4),s=Ue(e);let a=0,i=0,c=0,u=0;return{process(t,e){e&&s.update(t,0,t.length),(t=>{const e=new m(t.buffer,t.byteOffset,t.byteLength),n=t.length;let r=0;for(;n>=r+16;r+=16)f(),e.setInt32(r,e.getInt32(r)^o[0]),e.setInt32(r+4,e.getInt32(r+4)^o[1]),e.setInt32(r+8,e.getInt32(r+8)^o[2]),e.setInt32(r+12,e.getInt32(r+12)^o[3]);if(n>r){f();for(let e=0;n>r;r++,e++)t[r]^=o[e>>2]>>>24-8*(3&e)}})(t),e||s.update(t,0,t.length)},digest:()=>s.digest()};function f(){a=a+1|0,a||(i=i+1|0,i||(c=c+1|0,c||(u=u+1|0)));let t=Me(a)^n[0],e=Me(i)^n[1],s=Me(c)^n[2],f=Me(u)^n[3],w=Ce[t>>>24]^Ae[e>>>16&255]^Fe[s>>>8&255]^Ie[255&f]^n[4],l=Ce[e>>>24]^Ae[s>>>16&255]^Fe[f>>>8&255]^Ie[255&t]^n[5],d=Ce[s>>>24]^Ae[f>>>16&255]^Fe[t>>>8&255]^Ie[255&e]^n[6],p=Ce[f>>>24]^Ae[t>>>16&255]^Fe[e>>>8&255]^Ie[255&s]^n[7];t=Ce[w>>>24]^Ae[l>>>16&255]^Fe[d>>>8&255]^Ie[255&p]^n[8],e=Ce[l>>>24]^Ae[d>>>16&255]^Fe[p>>>8&255]^Ie[255&w]^n[9],s=Ce[d>>>24]^Ae[p>>>16&255]^Fe[w>>>8&255]^Ie[255&l]^n[10],f=Ce[p>>>24]^Ae[w>>>16&255]^Fe[l>>>8&255]^Ie[255&d]^n[11],w=Ce[t>>>24]^Ae[e>>>16&255]^Fe[s>>>8&255]^Ie[255&f]^n[12],l=Ce[e>>>24]^Ae[s>>>16&255]^Fe[f>>>8&255]^Ie[255&t]^n[13],d=Ce[s>>>24]^Ae[f>>>16&255]^Fe[t>>>8&255]^Ie[255&e]^n[14],p=Ce[f>>>24]^Ae[t>>>16&255]^Fe[e>>>8&255]^Ie[255&s]^n[15],t=Ce[w>>>24]^Ae[l>>>16&255]^Fe[d>>>8&255]^Ie[255&p]^n[16],e=Ce[l>>>24]^Ae[d>>>16&255]^Fe[p>>>8&255]^Ie[255&w]^n[17],s=Ce[d>>>24]^Ae[p>>>16&255]^Fe[w>>>8&255]^Ie[255&l]^n[18],f=Ce[p>>>24]^Ae[w>>>16&255]^Fe[l>>>8&255]^Ie[255&d]^n[19],w=Ce[t>>>24]^Ae[e>>>16&255]^Fe[s>>>8&255]^Ie[255&f]^n[20],l=Ce[e>>>24]^Ae[s>>>16&255]^Fe[f>>>8&255]^Ie[255&t]^n[21],d=Ce[s>>>24]^Ae[f>>>16&255]^Fe[t>>>8&255]^Ie[255&e]^n[22],p=Ce[f>>>24]^Ae[t>>>16&255]^Fe[e>>>8&255]^Ie[255&s]^n[23],t=Ce[w>>>24]^Ae[l>>>16&255]^Fe[d>>>8&255]^Ie[255&p]^n[24],e=Ce[l>>>24]^Ae[d>>>16&255]^Fe[p>>>8&255]^Ie[255&w]^n[25],s=Ce[d>>>24]^Ae[p>>>16&255]^Fe[w>>>8&255]^Ie[255&l]^n[26],f=Ce[p>>>24]^Ae[w>>>16&255]^Fe[l>>>8&255]^Ie[255&d]^n[27],w=Ce[t>>>24]^Ae[e>>>16&255]^Fe[s>>>8&255]^Ie[255&f]^n[28],l=Ce[e>>>24]^Ae[s>>>16&255]^Fe[f>>>8&255]^Ie[255&t]^n[29],d=Ce[s>>>24]^Ae[f>>>16&255]^Fe[t>>>8&255]^Ie[255&e]^n[30],p=Ce[f>>>24]^Ae[t>>>16&255]^Fe[e>>>8&255]^Ie[255&s]^n[31],t=Ce[w>>>24]^Ae[l>>>16&255]^Fe[d>>>8&255]^Ie[255&p]^n[32],e=Ce[l>>>24]^Ae[d>>>16&255]^Fe[p>>>8&255]^Ie[255&w]^n[33],s=Ce[d>>>24]^Ae[p>>>16&255]^Fe[w>>>8&255]^Ie[255&l]^n[34],f=Ce[p>>>24]^Ae[w>>>16&255]^Fe[l>>>8&255]^Ie[255&d]^n[35],w=Ce[t>>>24]^Ae[e>>>16&255]^Fe[s>>>8&255]^Ie[255&f]^n[36],l=Ce[e>>>24]^Ae[s>>>16&255]^Fe[f>>>8&255]^Ie[255&t]^n[37],d=Ce[s>>>24]^Ae[f>>>16&255]^Fe[t>>>8&255]^Ie[255&e]^n[38],p=Ce[f>>>24]^Ae[t>>>16&255]^Fe[e>>>8&255]^Ie[255&s]^n[39];let h=40;r>10&&(t=Ce[w>>>24]^Ae[l>>>16&255]^Fe[d>>>8&255]^Ie[255&p]^n[40],e=Ce[l>>>24]^Ae[d>>>16&255]^Fe[p>>>8&255]^Ie[255&w]^n[41],s=Ce[d>>>24]^Ae[p>>>16&255]^Fe[w>>>8&255]^Ie[255&l]^n[42],f=Ce[p>>>24]^Ae[w>>>16&255]^Fe[l>>>8&255]^Ie[255&d]^n[43],w=Ce[t>>>24]^Ae[e>>>16&255]^Fe[s>>>8&255]^Ie[255&f]^n[44],l=Ce[e>>>24]^Ae[s>>>16&255]^Fe[f>>>8&255]^Ie[255&t]^n[45],d=Ce[s>>>24]^Ae[f>>>16&255]^Fe[t>>>8&255]^Ie[255&e]^n[46],p=Ce[f>>>24]^Ae[t>>>16&255]^Fe[e>>>8&255]^Ie[255&s]^n[47],h=48),r>12&&(t=Ce[w>>>24]^Ae[l>>>16&255]^Fe[d>>>8&255]^Ie[255&p]^n[48],e=Ce[l>>>24]^Ae[d>>>16&255]^Fe[p>>>8&255]^Ie[255&w]^n[49],s=Ce[d>>>24]^Ae[p>>>16&255]^Fe[w>>>8&255]^Ie[255&l]^n[50],f=Ce[p>>>24]^Ae[w>>>16&255]^Fe[l>>>8&255]^Ie[255&d]^n[51],w=Ce[t>>>24]^Ae[e>>>16&255]^Fe[s>>>8&255]^Ie[255&f]^n[52],l=Ce[e>>>24]^Ae[s>>>16&255]^Fe[f>>>8&255]^Ie[255&t]^n[53],d=Ce[s>>>24]^Ae[f>>>16&255]^Fe[t>>>8&255]^Ie[255&e]^n[54],p=Ce[f>>>24]^Ae[t>>>16&255]^Fe[e>>>8&255]^Ie[255&s]^n[55],h=56),o[0]=(De[w>>>24]<<24|De[l>>>16&255]<<16|De[d>>>8&255]<<8|De[255&p])^n[h],o[1]=(De[l>>>24]<<24|De[d>>>16&255]<<16|De[p>>>8&255]<<8|De[255&w])^n[h+1],o[2]=(De[d>>>24]<<24|De[p>>>16&255]<<16|De[w>>>8&255]<<8|De[255&l])^n[h+2],o[3]=(De[p>>>24]<<24|De[w>>>16&255]<<16|De[l>>>8&255]<<8|De[255&d])^n[h+3]}})(on(i,0,s),on(i,s,2*s)),t.D&&en(t),on(i,2*s)}function rn(t,e){return e===X?(t=>{if(typeof b==J){const e=new d((t=unescape(encodeURIComponent(t))).length);for(let n=0;n<e.length;n++)e[n]=t.charCodeAt(n);return e}return(new b).encode(t)})(t):e}function on(t,e,n){return t.subarray(e,n)}class sn extends z{constructor({password:t,rawPassword:e,passwordVerification:n,checkPasswordOnly:r}){super({start(){cn(this,t,e,n)},transform(t,e){const n=this;if(n.password||n.rawPassword){const e=un(n,t.subarray(0,12));if(n.password=n.rawPassword=null,0!=(e[11]^n.passwordVerification))throw new l(Le);t=t.subarray(12)}r?e.error(new l(Pe)):e.enqueue(un(n,t))}})}}class an extends z{constructor({password:t,rawPassword:e,passwordVerification:n}){super({start(){cn(this,t,e,n)},transform(t,e){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const e=He(new d(12));e[11]=n.passwordVerification,r=new d(t.length+e.length),r.set(fn(n,e),0),o=12}else r=new d(t.length),o=0;r.set(fn(n,t),o),e.enqueue(r)}})}}function cn(t,e,r,o){n.assign(t,{password:e,rawPassword:r,passwordVerification:o}),((t,e,r)=>{const o=[305419896,591751049,878082192];if(n.assign(t,{F:o,I:new ye(o[0]),U:new ye(o[2])}),r)for(let e=0;e<r.length;e++)wn(t,r[e]);else for(let n=0;n<e.length;n++)wn(t,e.charCodeAt(n))})(t,e,r)}function un(t,e){const n=new d(e.length);for(let r=0;r<e.length;r++)n[r]=ln(t)^e[r],wn(t,n[r]);return n}function fn(t,e){const n=new d(e.length);for(let r=0;r<e.length;r++)n[r]=ln(t)^e[r],wn(t,e[r]);return n}function wn(t,e){let[,n]=t.F;t.I.append([e]);const r=~t.I.get();n=pn(a.imul(pn(n+dn(r)),134775813)+1),t.U.append([n>>>24]);const o=~t.U.get();t.F=[r,n,o]}function ln(t){const e=2|t.F[2];return dn(a.imul(e,1^e)>>>8)}function dn(t){return 255&t}function pn(t){return 4294967295&t}function hn(t){if(t instanceof x)return t;const e=t.getReader();return new x({async pull(t){try{const{value:n,done:r}=await e.read();r?t.close():t.enqueue(n)}catch(t){throw e.cancel(t).catch(()=>{}),t}},cancel:t=>e.cancel(t)})}function mn(t,e){t=hn(t);const n=e?{type:e}:{};if(typeof y.prototype.stream!=Q||new y([]).stream()instanceof x)return new f(t).blob().then(t=>e?new y([t],n):t);const r=[];return t.pipeTo(new R({write(t){r.push(t)}})).then(()=>new y(r,n))}function yn(t){if(t instanceof R)return t;const e=t.getWriter();return new R({write:t=>e.write(t),close:()=>e.close(),abort:t=>e.abort(t)})}function gn(t){return!!t&&"object"==typeof t}const bn="Invalid uncompressed size",vn="Codec out of memory",Sn="Invalid CRC32",kn="deflate-raw",zn="gzip",xn=[31,139,8];class Rn extends z{constructor(t,{chunkSize:e,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:s,useCompressionStream:a,zipCrypto:i,computeCrc32:c,level:u,deflate64:f,format:w,compressionMethod:l,inputSize:d}=t,p=this;let h,y,g,b=super.readable;const v=w&&ie(w),S=En(a,r,n),k=c&&o&&!f&&!v&&(!s||i)&&!!S;if(s&&!i||!c||k||(h=new ge,b=Tn(b,h)),o)if(v)b=Mn(b,In(v.CompressionStream,w,{level:u,chunkSize:e,compressionMethod:l,uncompressedSize:d}));else if(k)g=new Dn,b=Mn(b,new S(zn,{level:u,chunkSize:e})),b=Tn(b,g);else try{b=Un(b,a,{level:u,chunkSize:e},r,n)}catch(t){if(!a&&n)throw Hn(t);let e;try{e=new r(zn)}catch{throw Hn(t)}b=Mn(b,e),b=Tn(b,new Dn)}s&&(i?b=Tn(b,new an(t)):(y=new Je(t),b=Tn(b,y))),Fn(p,b,()=>{s&&!i||!c||(p.crc32=k?g.crc32:new m(h.value.buffer).getUint32(0))})}}class Dn extends z{constructor(){let t,e=10,n=new d(0);super({transform(t,r){if(e){const n=a.min(e,t.length);if(e-=n,!(t=t.subarray(n)).length)return}const o=n.length+t.length;if(8>=o)return void(n=be(n,t));const s=o-8,i=a.min(s,n.length);r.enqueue(be(n.subarray(0,i),t.subarray(0,s-i))),n=be(n.subarray(i),t.subarray(s-i))},flush(){const e=ve(n);t.crc32=e.getUint32(0,!0),t.uncompressedSize=e.getUint32(4,!0)}}),t=this}}class Cn extends z{constructor(t,{chunkSize:e,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:s,checkCrc32:a,crc32:i,compressed:c,useCompressionStream:f,deflate64:w,format:p,compressionMethod:h,rawBitFlag:y,outputSize:b}=t;let v,S,k,z=super.readable;if(s&&(o?z=Tn(z,new sn(t)):(S=new $e(t),z=Tn(z,S))),c){const t=new u,o=p&&ie(p);let s;if(o)z=Mn(z,In(o.DecompressionStream,p,{chunkSize:e,compressionMethod:h,rawBitFlag:y,uncompressedSize:b}),t);else{const o=En(f,r,n);if(a&&!w&&i!==X&&b!==X&&o)try{s=new o(zn,{chunkSize:e})}catch{s=X}if(!s)try{z=Un(z,f,{chunkSize:e,deflate64:w},r,n,t)}catch(t){if(w||b===X||!f&&n)throw Hn(t);try{s=new r(zn)}catch{throw Hn(t)}}}s?(k=!0,z=((t,e,n,r,o)=>{const s=e.writable.getWriter(),a=e.readable.getReader(),i=r===X?new ye:X;let c,u,f=0,w=!1,p=!1;const h=new x({start(t){u=t},pull(){b()},cancel:t=>(p=!0,b(),a.cancel(t))});return(async()=>{const e=t.getReader();try{const t=new d(10);for(t.set(xn),await s.write(t);;){await y(),await s.ready;const{value:t,done:n}=await Ln(e,o);if(n)break;await s.write(t)}i&&await s.write(new d(0));const a=new d(8),c=ve(a);c.setUint32(0,i?i.get():r,!0),c.setUint32(4,n,!0),w=!0,await s.write(a),await s.close()}catch(t){await On(s,t),await Wn(e,t)}})(),(async()=>{try{for(;;){const{value:t,done:e}=await m();if(e)break;if(f+=t.length,f>n)throw new l(bn);i&&i.append(t),u.enqueue(t)}p||(p=!0,u.close())}catch(t){(t=>{p||(p=!0,u.error(t),b())})(t),await Wn(a,t)}})(),h;function m(){return a.read().catch(t=>{if(w){if(!i)throw Zn(t,Sn);if(f!=n)throw Zn(t,bn);return{done:!0}}throw Pn(t,o)})}function y(){if(!p&&0>=u.desiredSize)return new g(t=>c=t)}function b(){if(c){const t=c;c=X,t()}}})(z,s,b,i,t)):z=((t,e)=>{const n=t.getReader();return new x({async pull(t){try{const{value:e,done:r}=await n.read();r?t.close():t.enqueue(e)}catch(t){throw await Wn(n,t),Pn(t,e)}},cancel:t=>n.cancel(t)})})(z,t)}a&&!k&&(v=new ge,z=Tn(z,v)),Fn(this,z,()=>{if(v){const t=new m(v.value.buffer).getUint32(0,!1);if(i!=t)throw new l(Sn)}})}}const An=new c;function Fn(t,e,r){e=Tn(e,new z({flush:r})),n.defineProperty(t,"readable",{get:()=>e})}function In(t,e,n){if(!t)throw new l(oe);return new t(e,n)}function En(t,e,n){return t&&e?e:n&&n.requiresModule?n:void 0}function Un(t,e,n,r,o,s){const a=e&&r?r:o||r,i=n.deflate64?"deflate64-raw":kn;let c;try{c=new a(i,n)}catch(t){if(!e||!o||a==o)throw t;c=new o(i,n)}return Mn(t,c,s)}function Tn(t,e){return hn(t).pipeThrough(e)}function Mn(t,e,n){const r=e.writable.getWriter(),o=t.getReader();return(async()=>{try{for(;;){await r.ready;const t=await Ln(o,n);if(t.done){await r.close();break}await r.write(t.value)}}catch(t){await On(r,t),await Wn(o,t)}})(),e.readable}async function On(t,e){try{await t.abort(e)}catch{}}async function Wn(t,e){try{await t.cancel(e)}catch{}}function Ln(t,e){const n=t.read();return e?n.catch(t=>{throw e.add(t),t}):n}function Pn(t,e){return e.has(t)?t:Zn(t,Bn(t)?vn:"Invalid compressed data")}function Hn(t){return Bn(t)?Zn(t,vn):t}function Bn(t){return gn(t)&&"Z_MEM_ERROR"==t.code}function Zn(t,e){const n=new l(e);return n.cause=t,n}const Vn="deflate",qn="inflate";class Nn extends z{constructor(t,e){super({});const r=this,{codecType:o}=t;let s;o.startsWith(Vn)?s=Rn:o.startsWith(qn)&&(s=Cn),r.outputSize=0;let a=0;const i=new s(t,e),c=super.readable,u=new z({transform(t,e){t&&t.length&&(a+=t.length,e.enqueue(t))},flush(){n.assign(r,{inputSize:a})}}),f=new z({transform(e,n){if(e&&e.length&&(n.enqueue(e),r.outputSize+=e.length,t.outputSize!==X&&r.outputSize>t.outputSize))throw new l(bn)},flush(){const{crc32:t}=i;n.assign(r,{crc32:t,inputSize:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(u).pipeThrough(i).pipeThrough(f)})}}class jn extends z{constructor(t){const e=[];let r=0,s=0;function a(){const n=new d(t);let o=0;for(;t>o;){const r=e[0],s=t-o;r.length>s?(n.set(r.subarray(0,s),o),e[0]=r.subarray(s),o+=s):(n.set(r,o),o+=r.length,e.shift())}return r-=t,n}o.isFinite(t)&&t>=1||(t=262144),super({transform(n,o){for(e.push(n),r+=n.length;r>t;)s+=t,o.enqueue(a())},flush(t){r&&(s+=r,t.enqueue(((t,e)=>{const n=new d(e);let r=0;for(const e of t)n.set(e,r),r+=e.length;return n})(e,r)))}}),n.defineProperty(this,"outputSize",{get:()=>s})}}let Kn=()=>{};class _n{constructor(t,{readable:e,writable:r},o,s){const{options:a,config:i,T:u,useWebWorkers:f,workerURI:w}=o;let{createWorker:l}=o;const{signal:d}=u;return n.assign(t,{M:!0,O:(t.O||0)+1,readable:e.pipeThrough(new jn(kt(i))).pipeThrough(new Gn(u),{signal:d}),writable:r,options:n.assign({},a),W:o,workerURI:w,createWorker:l,terminate:()=>new g(e=>{const{L:n,M:r}=t;r?(t.P=t.P||[],t.P.push(e)):(n&&(n.terminate(),t.L=null),e()),t.H=null}),B(){if(t.M){const{P:e,L:n}=t;e&&(t.P=null,n&&(t.Z=!0,n.terminate())),t.M=!1;const r=s(t);e&&e.forEach(t=>t(r))}}}),((t,e)=>({run:()=>(async({options:t,readable:e,writable:n,B:r,W:o},s)=>{let a,i,u;try{if(t.compressed&&!t.format){const e=t.codecType.startsWith(Vn),n=e?s.CompressionStreamFallback:s.DecompressionStreamFallback,r=e?s.CompressionStream:s.DecompressionStream;t.useCompressionStream?n&&n.requiresModule&&!((t,e)=>{if(!t)return!1;let n=An.get(t);n||(n=new c,An.set(t,n));let r=n.get(e);if(r===X){try{new t(e),r=!0}catch{r=!1}n.set(e,r)}return r})(r,kn)&&await f():await f()||n&&!n.requiresModule||(t.useCompressionStream=!0)}t.encrypted&&!t.zipCrypto&&await f(),a=new Nn(t,s),i=new jn(kt(s));const{signal:r}=o.T;await e.pipeThrough(a).pipeThrough(i).pipeTo(n,{preventClose:!0,preventAbort:!0,signal:r});const{crc32:u,inputSize:w,outputSize:l}=a;return{crc32:u,inputSize:w,outputSize:l}}catch(t){if(a){const e=i?i.outputSize:0;if(o.outputSize=e,gn(t))try{t.outputSize=e}catch{}}throw t}finally{r()}function f(){return u||(u=(async()=>{if(Kn)try{return await void 0,!0}catch{}return!1})()),u}})(t,e)}))(t,i)}}class Gn extends z{constructor({onstart:t,onprogress:e,size:n,onend:r}){let o=0;super({async start(){t&&await Xn(t,n)},async transform(t,r){o+=t.length,e&&await Xn(e,o,n),r.enqueue(t)},async flush(){r&&await Xn(r,o)}})}}async function Xn(t,...e){try{await t(...e)}catch{}}let $n=[];const Jn=[];let Qn,Yn,tr=0;function er(){!Qn&&Jn.length&&o.isFinite(Yn)&&Yn>=0&&(Qn=I(rr,Yn))}function nr(){Qn&&(E(Qn),Qn=null)}function rr(){if(Qn=null,Jn.length){const[{resolve:t,stream:e,W:n}]=Jn.splice(0,1);t(new _n({},e,or(n),sr)),er()}}function or(t){return n.assign({},t,{useWebWorkers:!1,workerURI:X,createWorker:X})}function sr(){nr(),er()}function ar(t){const{V:e}=t;e&&(E(e),t.V=null)}const ir="\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 cr(t,e){return fr(t,e,!0)}function ur(t){if(!t.some(t=>t>127))return!1;try{return new v("utf-8",{fatal:!0}).decode(t),!0}catch{return!1}}function fr(t,e,n){return e&&"cp437"==e.trim().toLowerCase()?(t=>{let e="";for(let n=0;n<t.length;n++)e+=ir[t[n]];return e})(t):new v(e,{ignoreBOM:n}).decode(t)}const wr="HTTP error ",lr="HTTP Range not supported",dr="HTTP resource changed",pr="Content-Range",hr="Range",mr="GET",yr="bytes",gr=16777216,br="writable",vr=Symbol();class Sr{constructor(){this.size=0}init(){this.initialized=!0}}class kr extends Sr{get readable(){return this.createReadable()}createReadable({offset:t=0,size:e,chunkSize:n=kt(St())}={}){const r=this;let o=0;return n=zt(n),new x({async pull(s){const i=e===X?n:a.min(n,e-o),c=await Yr(r,t+o,i);c.length&&(s.enqueue(c),o+=c.length),(e!==X&&o>=e||!c.length&&i)&&s.close()}})}}class zr extends Sr{constructor(){super();const t=this,e=new R({write(e){if(!t.initialized)throw new l("Writer not initialized");return t.writeUint8Array((n=e).byteOffset||n.byteLength!=n.buffer.byteLength?new d(n):n);var n}});n.defineProperty(t,br,{get:()=>e})}writeUint8Array(){}}let xr,Rr;class Dr extends kr{constructor(t){super(),n.assign(this,{N:t,size:t.size}),Rr||(Rr=(async()=>{try{const t=new y([new d(3)]).slice(1,2).stream().getReader();let e=0,n=await t.read();for(;!n.done;)e+=n.value.length,n=await t.read();xr=1==e}catch{xr=!1}})())}createReadable(t){const{N:e,size:n}=this,{offset:r=0,size:o=n-r}=t||{};if(typeof e.stream==Q){if(!r&&o>=n)return hn(e.stream());if(xr)return hn(e.slice(r,r+o).stream())}return super.createReadable(t)}async readUint8Array(t,e){const n=this,r=t+e,o=t||r<n.size?n.N.slice(t,r):n.N;let s=await o.arrayBuffer();return s.byteLength>e&&(s=s.slice(t,r)),new d(s)}}class Cr extends Sr{constructor(t){super();const e=this,r=new z;n.defineProperty(e,br,{get:()=>r.writable}),e.contentType=t,e.j=mn(r.readable,t),e.j.catch(()=>{})}getData(){return this.j}}class Ar extends kr{constructor(t,e){super(),Ir(this,t,e)}async init(){await Er(this,Nr,Br),super.init()}createReadable(t){const e=this,{useRangeHeader:n,forceRangeRequests:r,size:o,K:s}=e;if((n||r)&&o!==X){const{offset:n=0,size:r=o-n}=t||{},i=s&&n>=o-s.length;if(r>0&&o>n&&!i)return((t,e,n)=>{let r,o=e,s=0,i=n;return new x({start:()=>c(),async pull(t){r||await c();const{value:e,done:n}=await r.read();if(n)throw new l(lr);const o=e.length>s?e.subarray(0,s):e;s-=o.length,i-=o.length,o.length&&t.enqueue(o),s||(await(async()=>{const t=r;r=X,await t.cancel()})(),i||t.close())},cancel:t=>r&&r.cancel(t)});async function c(){const e=a.min(t.maximumRangeSize,i),n=await Nr(mr,t,Pr(t,o,e));if(206!=n.status)throw new l(lr);const c=Tr(n);if(c!==X&&c!=o)throw new l(lr);Lr(t,n),Wr(t,n),o+=e,s=e,r=n.body.getReader()}})(e,n,a.min(r,o-n))}return super.createReadable(t)}readUint8Array(t,e){return Ur(this,t,e,Nr,Br)}}class Fr extends kr{constructor(t,e){super(),Ir(this,t,e)}async init(){await Er(this,jr,Zr),super.init()}readUint8Array(t,e){return Ur(this,t,e,jr,Zr)}}function Ir(t,e,r){const{preventHeadRequest:o,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:c=!0,maximumRangeSize:u=gr,fetch:f}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(t,{url:e,options:r,preventHeadRequest:o,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:c,maximumRangeSize:u,fetch:f})}async function Er(t,e,n){const{url:r,preventHeadRequest:o,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:i}=t;if((t=>{const{baseURI:e}=St(),{protocol:n}=new w(t,e);return"http:"==n||"https:"==n})(r)&&(s||a)&&(typeof o==J||o)){const r=await e(mr,t,Pr(t,i?-65557:void 0)),o=r.headers.get("Accept-Ranges");if(!(a||o&&o.toLowerCase()==yr))throw new l(lr);{let o;i&&206==r.status&&(o=new d(await r.arrayBuffer())),Wr(t,r);const s=Mr(r);s===X?await qr(t,e,n):t.size=s,o&&o.length&&Tr(r)===t.size-o.length&&(t.K=o)}}else await qr(t,e,n)}async function Ur(t,e,n,r,o){const{useRangeHeader:s,forceRangeRequests:a,K:i,size:c,options:u}=t;if(s||a){if(c>e&&0!==n){if(e+n>c&&(n=c-e),i&&e>=c-i.length){const t=e-(c-i.length);return i.slice(t,t+n)}const o=await r(mr,t,Pr(t,e,n));if(206!=o.status)throw new l(lr);const s=Tr(o);if(s!==X&&s!=e)throw new l(lr);Lr(t,o),Wr(t,o);const a=new d(await o.arrayBuffer());if(a.length!=n)throw new l(lr);return a}return et}{const{data:r}=t;return r||await o(t,u),t.data.subarray(e,e+n)}}function Tr(t){const e=t.headers.get(pr);if(e){const t=o(e.trim().split(/[\s-]+/)[1]);if(!o.isNaN(t))return t}}function Mr(t){const e=t.headers.get(pr);if(e){const t=e.trim().split(/\s*\/\s*/)[1];if(t&&"*"!=t){const e=o(t);if(!o.isNaN(e))return e}}}function Or({headers:t}){return{_:t.get("Etag")||X,lastModified:t.get("Last-Modified")||X}}function Wr(t,e){const{checkResourceChanges:n,G:r}=t;n&&!r&&206==e.status&&(t.G=Or(e))}function Lr(t,e){const{checkResourceChanges:r,G:o,size:s}=t;if(r){const t=Mr(e);if(t!==X&&s!==X&&t!=s)throw new l(dr);if(o){const t=Or(e);if(n.entries(o).some(([e,n])=>n!==X&&t[e]!==X&&n!=t[e]))throw new l(dr)}}}function Pr(t,e=0,r=1){return n.assign({},Hr(t),{[hr]:yr+"="+(0>e?e:e+"-"+(e+r-1))})}function Hr({options:t}){const{headers:e}=t;if(e)return Symbol.iterator in e?n.fromEntries(e):e}async function Br(t){await Vr(t,Nr)}async function Zr(t){await Vr(t,jr)}async function Vr(t,e){const n=await e(mr,t,Hr(t));t.data=new d(await n.arrayBuffer()),t.size=t.data.length}async function qr(t,e,n){if(t.preventHeadRequest)await n(t,t.options);else{const r=await e("HEAD",t,Hr(t)),s=r.headers.get("Content-Length");s&&!r.headers.get("Content-Encoding")?t.size=o(s):await n(t,t.options)}}async function Nr(t,{fetch:e=fetch,options:r,url:o},s){const a=await e(o,n.assign({},r,{method:t,headers:s}));if(200>a.status||a.status>299)throw 416==a.status?new l(lr):new l(wr+(a.statusText||a.status));return a}function jr(t,{url:e},r){return new g((o,s)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(200>a.status||a.status>299)s(416==a.status?new l(lr):new l(wr+(a.statusText||a.status)));else{const t=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(e=>{const n=e.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,t=>t.toUpperCase()),t.push(n)}),o({status:a.status,arrayBuffer:()=>a.response,headers:new c(t)})}},!1),a.addEventListener("error",t=>s(t.detail?t.detail.error:new l("Network error")),!1),a.open(t,e),r)for(const t of n.entries(r))a.setRequestHeader(t[0],t[1]);a.responseType="arraybuffer",a.send()})}class Kr extends kr{constructor(t,e={}){super(),n.assign(this,{url:t,reader:e.useXHR&&!e.fetch?new Fr(t,e):new Ar(t,e)})}set size(t){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(t){return this.reader.createReadable(t)}readUint8Array(t,e){return this.reader.readUint8Array(t,e)}}class _r extends kr{constructor(t){super(),this.X=t}async init(){const t=this;t.$=0;const e=t.X=await g.all(t.X.map(Qr));t.J=e.map(e=>{const n=t.size;return t.size+=e.size,n}),super.init()}Y(t){const{J:e,size:n}=this,r=e[t];return r===X?n:r}async readUint8Array(t,e){const n=this,{X:r}=this;let o,s=0,i=t;for(;r[s]&&i>=r[s].size;)i-=r[s].size,s++;const c=r[s];if(c){const r=c.size;if(i+e>r){const s=r-i;o=be(await Yr(c,i,s),await n.readUint8Array(t+s,e-s))}else o=await Yr(c,i,e)}else o=et;return n.$=a.max(s,n.$),o}}class Gr extends Sr{constructor(t,e=4294967295){super();const r=this;let o,s,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});const i=new R({async write(e){if(e===vr)return void(a&&await u());const{availableSize:n}=r;if(a)e.length<n?await c(e):(await c(e.subarray(0,n)),await u(),e.length>n&&await this.write(e.subarray(n)));else{const{value:n,done:i}=await t.next();if(i&&!n)throw new l("Writer iterator completed too soon");o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await Jr(o),s=n.writable,a=s.getWriter(),await this.write(e)}},async close(){a&&(await a.ready,await f())},async abort(t){a&&await a.abort(t)}});async function c(t){const e=t.length;e&&(await a.ready,await a.write(t),o.size+=e,r.availableSize-=e)}async function u(){await f(),r.diskOffset+=o.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function f(){await a.close()}n.defineProperty(r,br,{get:()=>i})}async closeDisk(){const t=this.writable.getWriter();try{await t.ready,await t.write(vr)}finally{t.releaseLock()}}}class Xr{constructor(t){return e.isArray(t)&&(t=new _r(t)),(t instanceof x||typeof t.getReader==Q)&&(t={readable:hn(t)}),t}}class $r{constructor(t){t.writable===X&&typeof t.next==Q&&(t=new Gr(t)),(t instanceof R||typeof t.getWriter==Q)&&(t={writable:yn(t)});try{t.size=t.size===X?0:t.size}catch{throw new l("Invalid writer (size must be writable)")}return t}}async function Jr(t,e){if(!t.init||t.initialized)return g.resolve();await t.init(e)}async function Qr(t){return t=new Xr(t),await Jr(t),t.size!==X&&t.readUint8Array||(t=new Dr(await mn(t.readable)),await Jr(t)),t}function Yr(t,e,n){return t.readUint8Array(e,n)}function to(t,e,n){if(!t.some(t=>t.reason==e)){const r={reason:e};n!==X&&(r.filename=n),t.push(r)}}const eo="filename",no="rawFilename",ro="comment",oo="rawComment",so="uncompressedSize",ao="compressedSize",io="offset",co="diskNumberStart",uo="lastModDate",fo="rawLastModDate",wo="lastAccessDate",lo="rawLastAccessDate",po="creationDate",ho="rawCreationDate",mo=[eo,no,so,ao,uo,fo,ro,oo,wo,lo,po,ho,io,co,"internalFileAttributes","externalFileAttributes","msdosAttributesRaw","msdosAttributes","msDosCompatible","zip64","encrypted","version","versionMadeBy","zipCrypto","directory","executable","symlink","compressionMethod","signature","crc32","extraField","extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid","unixMode","unixExternalUpper","setuid","setgid","sticky","bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class yo{constructor(t){mo.forEach(e=>this[e]=t[e])}}const go="File format is not recognized",bo="End of Zip64 central directory locator not found",vo="Encryption method not supported",So="Split zip file",ko="malformed extra field",zo="wrapped entries count",xo="appended data",Ro="prepended data",Do="mismatched zip64 end of central directory record",Co="mismatched local file header (crc32 or sizes)",Ao=/^[a-zA-Z]:/,Fo=/(^|[\\/])\.\.([\\/]|$)/,Io="utf-8",Eo="cp437",Uo=[[so,U],[ao,U],[io,U],[co,T]],To={[T]:{et:ps,bytes:4},[U]:{et:hs,bytes:8}},Mo=s(o.MAX_SAFE_INTEGER);class Oo{constructor(t,e){n.assign(this,{reader:t,options:e})}async getData(t,e,r,s={}){const i=this,{nt:c,directoryOffset:u}=r;if(i.ot)throw new l($);const f=St(),{reader:p,index:h,offset:m,diskNumberStart:y,extraFieldAES:b,extraFieldZip64:v,compressionMethod:S,bitFlag:k,rawBitFlag:z,crc32:x,rawLastModDate:D,uncompressedSize:C,compressedSize:A}=i,{dataDescriptor:F}=k,E=e.localDirectory={},U=e.warnings=[],T=$o(p,y)+m,W=await Yr(p,T,30),L=ve(W);let P=cs(i,s,"password"),H=cs(i,s,"rawPassword");const B=(t=>{if(t!==X&&typeof t!=tt&&"compressed"!==t)throw new l("Invalid passThrough option (must be a boolean or 'compressed')");return t})(cs(i,s,"passThrough")),Z=!!B,V=!0===B;if(((t,e)=>{if(t&&typeof t!=Y||e&&!(e instanceof d))throw new l("Invalid password (password must be a string, rawPassword must be a Uint8Array)")})(P,H),P=P&&P.length?P:X,H=H&&H.length?H:X,b&&99!=b.originalCompressionMethod)throw new l(oe);if(30>W.length||ps(L,0)!=O)throw new l("Local file header not found");Zo(E,L,4);const{extraFieldLength:q,filenameLength:N}=E,j=E.dataOffset=T+30+N+q,_=cs(i,s,"checkLocalDirectory"),G=Yo(s,i.options),J=((t,e)=>t===X?e!=it:!!t)(_,G),nt=cs(i,s,"checkLocalFilename"),rt=((t,e)=>t===X?e==st:!!t)(nt===X?_:nt,G);let ot=et;if(rt&&(N||q)){const t=await Yr(p,T+30,N+q);ot=t.subarray(0,N),E.rawExtraField=t.subarray(N)}else E.rawExtraField=q?await Yr(p,T+30+N,q):et;rt&&(E.rawFilename=ot),Vo(i,E,L,4,!0)&&to(U,ko),((t,e,n,r,o)=>{const{rawFilename:s}=t,a=!o,i=t.st&&(e.rawBitFlag&K)==K;!r||i||n.length==s.length&&!n.some((t,e)=>t!=s[e])||as(a,o,"mismatched local file header (filename)"),(2121&e.rawBitFlag)!=(2121&t.rawBitFlag)&&as(a,o,"mismatched local file header (general purpose bit flag)"),e.compressionMethod!=t.compressionMethod&&as(a,o,"mismatched local file header (compression method)"),e.bitFlag.dataDescriptor||i||!(e.crc32||e.compressedSize||e.uncompressedSize)||e.crc32==t.crc32&&e.compressedSize==t.compressedSize&&e.uncompressedSize==t.uncompressedSize||as(a,o,Co)})(i,E,ot,rt,J?X:U);const{lastAccessDate:at,creationDate:ct,uid:ft,gid:wt}=E;at&&e.lastAccessDate===X&&(e.lastAccessDate=at),ct&&e.creationDate===X&&(e.creationDate=ct),ft!==X&&e.uid===X&&(e.uid=ft),wt!==X&&e.gid===X&&(e.gid=wt);const lt=cs(i,s,"checkPasswordOnly"),dt=i.encrypted&&(!V||lt),pt=dt&&!b;if(V||(e.zipCrypto=pt),dt&&!(64&~i.rawBitFlag))throw new l(vo);const ht=Z?X:(t=>se.get(t))(S);if(0!=S&&8!=S&&9!=S&&!ht&&!Z)throw new l(oe);if(dt){if(!pt&&(1>b.strength||b.strength>3))throw new l(vo);if(!P&&!H)throw new l("File contains encrypted entry")}if(j+A>a.min(p.size,u))throw new l("Entry data out of bounds");const mt=A,yt=(t=>{if(t&&(typeof t.addEventListener!=Q||typeof t.aborted!=tt))throw new l("Invalid signal (must be an AbortSignal instance)");return t||X})(cs(i,s,"signal"));ut(yt);let gt=cs(i,s,"checkOverlappingEntry");const bt=cs(i,s,"checkOverlappingEntryOnly");bt&&(gt=!0);const{onstart:vt,onprogress:kt,onend:zt}=s,xt=0!=S&&!Z,Rt=Z?A-((t,e,n)=>t?e?12:16+4*n:0)(dt,pt,b&&b.strength):C,Dt=9==S;let Ct=cs(i,s,"useCompressionStream");Dt&&(Ct=!1);const At=cs(i,s,"checkCrc32"),Ft=(At===X?cs(i,s,"checkSignature"):At)&&!Z&&(!dt||pt||b&&1==b.vendorVersion),It={options:{codecType:qn,password:P,rawPassword:H,zipCrypto:pt,encryptionStrength:b&&b.strength,checkCrc32:Ft,checkAuthenticationCode:cs(i,s,"checkAuthenticationCode"),passwordVerification:pt&&(F?D>>>8&M:x>>>24&M),outputSize:Rt,crc32:x,compressed:xt,encrypted:dt,useWebWorkers:cs(i,s,"useWebWorkers"),useCompressionStream:Ct,deflate64:Dt,format:ht?ht.format:X,codecURI:ht?ht.codecURI:X,compressionMethod:S,rawBitFlag:z,checkPasswordOnly:lt},config:f,T:{signal:yt,size:mt,onstart:vt,onprogress:kt,onend:zt}};let Et,Ut,Tt;gt&&(await(async({reader:t,it:e,index:n,offset:r,crc32:o,compressedSize:s,uncompressedSize:i,dataOffset:c,dataDescriptor:u,extraFieldZip64:f,nt:w})=>{let d=0;if(u){const n=!!f,r=await(async(t,e,{crc32:n,compressedSize:r,uncompressedSize:o,zip64:s})=>{const i=a.min(24,a.max(0,t.size-e)),c=ve(i?await Yr(t,e,i):et),u=[[s,!0],[s,!1],[!s,!0],[!s,!1]].map(([t,e])=>Go(c,t,e)).filter(t=>t&&t.compressedSize==r&&t.uncompressedSize==o);return u.find(t=>t.crc32==n)||u[0]||Go(c,s,!0)||Go(c,s,!1)})(t,c+s,{crc32:o,compressedSize:s,uncompressedSize:i,zip64:n});r?(e.localDirectory.dataDescriptor=r,d=Xo(r.zip64,r.signature)):d=Xo(n,!1)}const p={start:r,end:c+s+d,it:e},{ct:h,ut:m,ft:y}=w;if(!h.has(n)){const t=((t,e)=>{let n=0,r=t.length;for(;r>n;){const o=n+r>>>1;t[o].start<e.start?n=o+1:r=o}const o=t[n-1],s=t[n];return o&&_o(e,o)?o:s&&_o(e,s)?s:void 0})(m,p)||y.find(t=>_o(p,t));if(t){const e=new l("Overlapping entry found");throw e.overlappingEntry=t.it,e}h.add(n),y.push(p),y.length*y.length>m.length&&(y.sort((t,e)=>t.start-e.start),w.ut=((t,e)=>{const n=[];let r=0,o=0;for(;r<t.length||o<e.length;)o==e.length||r<t.length&&t[r].start<e[o].start?n.push(t[r++]):n.push(e[o++]);return n})(m,y),y.length=0)}})({reader:p,it:e,index:h,offset:T,crc32:x,compressedSize:A,uncompressedSize:C,dataOffset:j,dataDescriptor:F||E.bitFlag.dataDescriptor,extraFieldZip64:v||E.extraFieldZip64,nt:c}),((t,e,n)=>{const{dataDescriptor:r}=e,o=t.st&&(e.rawBitFlag&K)==K;r&&!o&&(t.crc32!==X&&r.crc32!=t.crc32||r.compressedSize!=t.compressedSize||r.uncompressedSize!=t.uncompressedSize)&&as(!n,n,Co)})(i,E,J?X:U));try{if(!bt){lt&&(t=new R),t=new $r(t),await Jr(t,((t,e,n)=>a.min(t,n?1032*e:e))(Rt,A,xt)),({writable:Et}=t);const e=hn(p.createReadable({offset:j,size:mt})),{outputSize:r}=await async function(t,e){const{options:n,config:r}=e,{useWebWorkers:s,useCompressionStream:a,compressed:i,checkCrc32:c,computeCrc32:u,encrypted:f,format:d,codecURI:p}=n,{workerURI:h,createWorker:m,maxWorkers:y}=r;d&&(p&&(n.codecURI=((t,e)=>{try{return new w(t,e).toString()}catch{return t}})(p,r.baseURI)),await(async(t,e)=>{!ae.has(t)&&e&&((t,e)=>{const{CompressionStream:n,DecompressionStream:r}=e;if(typeof n!=Q&&typeof r!=Q)throw new l("Invalid codec module");ae.set(t,{CompressionStream:n,DecompressionStream:r})})(t,await(import(e)))})(d,n.codecURI));const b=!(i||c||u||f),v=d===X||!!n.codecURI;return e.useWebWorkers=!b&&v&&(s||s===X&&r.useWebWorkers),e.workerURI=e.useWebWorkers&&h?h:X,e.createWorker=e.useWebWorkers&&m?m:X,n.useCompressionStream=a||a===X&&r.useCompressionStream,(await(async()=>{const n=$n.find(t=>!t.M);if(n)return ar(n),new _n(n,t,e,S);if($n.length<y){const n={wt:tr};return tr++,$n.push(n),new _n(n,t,e,S)}return new g(n=>{Jn.push({resolve:n,stream:t,W:e}),Yn=r.workerStarvationTimeout,er()})})()).run();function S(t){if(nr(),t.Z)return t.Z=!1,(()=>{const t=Jn.splice(0).map(({resolve:t,stream:e,W:n})=>new g(r=>{t(new _n({},e,or(n),()=>{sr(),r()}))}));return nr(),g.all(t)})();if(Jn.length){const[{resolve:e,stream:n,W:r}]=Jn.splice(0,1);e(new _n(t,n,r,S)),er()}else t.L?(ar(t),((t,e)=>{const{config:n}=e,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(t.V=I(async()=>{$n=$n.filter(e=>e!=t);try{await t.terminate()}catch{}},r))})(t,e)):$n=$n.filter(e=>e!=t)}}({readable:e,writable:Et},It);if(ut(yt),r!=Rt)throw n.assign(new l(bn),{outputSize:r});t.size+=r}}catch(e){if(gn(e)&&e.outputSize!==X&&(t.size+=e.outputSize),!lt||!gn(e)||e.message!=Pe)throw Ut=e,Tt=!0,e}finally{const e=!(t=>!(!t||!t.getData))(t)&&cs(i,s,"preventClose");if(!e&&Et&&!Et.locked){const t=Et.getWriter();if(Tt)try{await t.abort(Ut)}catch{}else await t.close()}}return lt||bt?X:t.getData?t.getData():Et}}function Wo(t){return t.byteLength>=4&&134630224==ps(t,0)}function Lo(t,e,n){let r=0;for(;n+V<=e.length&&ps(t,n)==H;)n+=V+ds(t,n+28)+ds(t,n+30)+ds(t,n+32),r++;return r%65536?0:r}function Po(t,e){return Ho(t,e,H)}async function Ho(t,e,n){return e>=0&&e+4<=t.size&&ps(ve(await Yr(t,e,4)),0)==n}function Bo(t){if(t.length>=6){const e=ve(t);if(ps(e,0)==P){const n=ds(e,4);if(6+n<=t.length)return new d(t.subarray(6,6+n))}}}function Zo(t,e,r){const o=t.rawBitFlag=ds(e,r+2),s=!(1&~o),a=ps(e,r+6);n.assign(t,{encrypted:s,version:ds(e,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:!(2048&~o)},rawLastModDate:a,lastModDate:fs(a),filenameLength:ds(e,r+22),extraFieldLength:ds(e,r+24)})}function Vo(t,e,r,o,s){const{rawExtraField:a}=e,u=e.extraField=new c,f=ve(a);let w=0,d=!1;try{for(;w<a.length;){const t=ds(f,w),e=ds(f,w+2);u.set(t,{type:t,data:a.slice(w+4,w+4+e)}),w+=4+e}}catch{d=!0}w>a.length&&(d=!0);const p=ds(r,o+4);n.assign(e,{signature:ps(r,o+10),crc32:ps(r,o+10),compressedSize:ps(r,o+14),uncompressedSize:ps(r,o+18)});const h=u.get(1);let m;h?(((t,e,n)=>{e.zip64=!0;const r=ve(t.data),o=Uo.filter(([t,n])=>e[t]==n),s=o.reduce((t,[,e])=>t+To[e].bytes,0);if(t.data.length<s){if(n)return!1;throw new l($)}const a=[];try{for(let t=0,e=0;t<o.length;t++){const[,n]=o[t],s=To[n];a.push(s.et(r,e)),e+=s.bytes}}catch(t){if(n)return!1;throw t}return o.forEach(([n],r)=>{e[n]=t[n]=a[r]}),!0})(h,e,s)||(d=!0),e.extraFieldZip64=h):Uo.some(([t,n])=>e[t]==n)&&(s?d=!0:m=!0);const y=u.get(28789);y&&(qo(y,eo,no,e,t),e.extraFieldUnicodePath=y);const g=u.get(25461);g&&(qo(g,ro,oo,e,t),e.extraFieldUnicodeComment=g);const b=u.get(39169);!b||99!=p&&!e.encrypted||7>b.data.length?(b&&(d=!0),e.compressionMethod=p):(((t,e,r)=>{const o=ve(t.data),s=ls(o,4);n.assign(t,{vendorVersion:ls(o,0),vendorId:ls(o,2),strength:s,originalCompressionMethod:r,compressionMethod:ds(o,5)}),e.compressionMethod=t.compressionMethod,1!=t.vendorVersion&&(e.crc32=X)})(b,e,p),e.extraFieldAES=b);const v=u.get(13);v&&(No(v,e),e.extraFieldPkwareUnix=v);const S=u.get(22613);S&&(No(S,e),e.extraFieldUnixType1=S);const k=u.get(21589);k&&(((t,e,n)=>{if(!t.data.length)return;const r=ve(t.data),o=ls(r,0),s=[],a=[];n?(1&~o||(s.push(uo),a.push(fo)),2&~o||(s.push(wo),a.push(lo)),4&~o||(s.push(po),a.push(ho))):5>t.data.length||(s.push(uo),a.push(fo));let c=1;s.forEach((n,o)=>{if(t.data.length>=c+4){const s=ps(r,c);e[n]=t[n]=new i(1e3*(0|s));const u=a[o];t[u]=s}c+=4})})(k,e,s),e.extraFieldExtendedTimestamp=k);const z=u.get(10);z&&(((t,e)=>{const r=ve(t.data);let o,s=4;try{for(;s<t.data.length&&!o;){const e=ds(r,s),n=ds(r,s+2);1==e&&(o=t.data.slice(s+4,s+4+n)),s+=4+n}}catch{}if(o&&24==o.length){const r=ve(o),s=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),i=r.getBigUint64(16,!0);n.assign(t,{rawLastModDate:s,rawLastAccessDate:a,rawCreationDate:i});const c={lastModDate:ws(s),lastAccessDate:ws(a),creationDate:ws(i)};n.assign(t,c),n.assign(e,c,{rawLastAccessDate:a,rawCreationDate:i})}})(z,e),e.extraFieldNTFS=z);const x=u.get(30837);let R;x&&(R=jo(x,e,!0),e.extraFieldInfoZip=x);const D=u.get(30805);D&&(jo(D,R?{}:e,!1),e.extraFieldUnix=D);const C=u.get(6534);if(C&&(e.extraFieldUSDZ=C),m)throw new l($);return d}function qo(t,e,r,o,s){if(5>t.data.length)return void(t.valid=!1);const a=ve(t.data),i=new ye;i.append(s[r]);const c=ve(new d(4));c.setUint32(0,i.get(),!0);const u=ps(a,1),f=ls(a,0);n.assign(t,{version:f,[e]:cr(t.data.subarray(5)),valid:1==f&&!s.bitFlag.languageEncodingFlag&&u==ps(c,0)}),t.valid&&(o[e]=t[e],o[e+"UTF8"]=!0)}function No(t,e){if(8>t.data.length)return;const r=ve(t.data),o={lastAccessDate:new i(1e3*(0|ps(r,0))),lastModDate:new i(1e3*(0|ps(r,4)))};12>t.data.length||(o.uid=ds(r,8),o.gid=ds(r,10)),n.assign(t,o),n.assign(e,o)}function jo(t,e,r){try{const o=ve(t.data);let s,a;if(r){let e=0;const r=ls(o,e++),i=ls(o,e++);s=Ko(t.data.subarray(e,e+i)),e+=i;const c=ls(o,e++);a=Ko(t.data.subarray(e,e+c)),n.assign(t,{version:r,uid:s,gid:a})}else 4>t.data.length||(s=ds(o,0),a=ds(o,2),n.assign(t,{uid:s,gid:a}));return s!==X&&(e.uid=s),a!==X&&(e.gid=a),s!==X||a!==X}catch{}}function Ko(t){const e=new d(4);return e.set(t,0),new m(e.buffer,e.byteOffset,4).getUint32(0,!0)}function _o(t,e){return t.start<e.end&&e.start<t.end}function Go(t,e,n){const r=n?4:0;if(t.byteLength<Xo(e,n)||n&&ps(t,0)!=L)return X;const o=ps(t,r);let s,a;try{e?(s=hs(t,r+4),a=hs(t,r+12)):(s=ps(t,r+4),a=ps(t,r+8))}catch{return X}return{signature:n,zip64:e,crc32:o,compressedSize:s,uncompressedSize:a}}function Xo(t,e){return(t?20:12)+(e?4:0)}function $o(t,e){return t.Y?t.Y(e):0}async function Jo(t){return ps(ve(await Yr(t,0,4)))}function Qo(t){return t===st||t===at||t===it}function Yo(t,e){return ts(t,ts(e,at))}function ts(t,e){const n=t[ot];if(n!==X){if(!Qo(n))throw new l("Invalid strictness (must be 'strict', 'balanced' or 'tolerant')");return n}const r=t[rt];return r===X?e:r?st:e==it?it:at}function es(t,e){if(e==it)return!1;const n=t.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(Fo.test(t)||t.startsWith("/")||t.startsWith("\\")||Ao.test(t))||e==st&&(n.includes(".")||n.includes("")||t.includes("\0"))}async function*ns(t,e){const n=t.size-e,r=await Yr(t,n,e),o=ve(r);for(let t=r.length-q;t>=0;t--)101010256==ps(o,t)&&(yield[o,n,r,t,n+t])}function rs(t,e,n){return{offset:n,buffer:new d(t.subarray(e,e+q)).buffer}}async function os(t,e,n,r,o,s,a){const i=ds(e,r+10),c=ps(e,r+12),u=ps(e,r+16);if(i==T||c==U||u==U)return await ss(t,e,n,o-N,s,a)==Z?2:0;if(!i&&!c)return 1;const f=ds(e,r+6);for(const r of[o-c,$o(t,f)+u])if(await ss(t,e,n,r,s,a)==H)return 2;return 0}async function ss(t,e,n,r,o,s){return 0>r||r+4>o?X:n>r?s.lt>0?(s.lt--,ps(ve(await Yr(t,r,4)),0)):X:ps(e,r-n)}function as(t,e,n){t?is(n):to(e,n)}function is(t){const e=new l("Ambiguous archive");throw e.reason=t,e}function cs(t,e,n){return e[n]===X?t.options[n]:e[n]}function us(t,e,n){return ct(cs(t,e,n))}function fs(t){const e=(4294901760&t)>>16,n=t&T,r=new i(1980+((65024&e)>>9),((480&e)>>5)-1,31&e,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return G>r?G:r}function ws(t){return new i(o(t/s(1e4)-s(116444736e5)))}function ls(t,e){return t.getUint8(e)}function ds(t,e){return t.getUint16(e,!0)}function ps(t,e){return t.getUint32(e,!0)}function hs(t,e){const n=t.getBigUint64(e,!0);if(n>Mo)throw new l("64-bit value exceeds Number.MAX_SAFE_INTEGER");return o(n)}(t=>{const e=xt(Dt(t));n.assign(dt,e),n.assign(vt,e)})({workerURI:null,wasmURI:null,DecompressionStreamFallback:class extends re{constructor(t){(t=>{if("deflate-raw"!=t)throw new TypeError("Unsupported compression format: "+t)})(t),super(new ee)}}}),t.BlobReader=Dr,t.BlobWriter=Cr,t.Data64URIWriter=class extends zr{constructor(t){super(),n.assign(this,{contentType:t,data:"data:"+(t||"")+";base64,",ht:""})}writeUint8Array(t){const e=this;let n,o=e.ht;const s=e.ht.length;for(e.ht="",n=0;n<3*a.floor((s+t.length)/3)-s;n++)o+=r.fromCharCode(t[n]);for(;n<t.length;n++)e.ht+=r.fromCharCode(t[n]);o.length>2?e.data+=k(o):e.ht=o+e.ht}getData(){return this.data+k(this.ht)}},t.HttpRangeReader=class extends Kr{constructor(t,e={}){super(t,n.assign({},e,{useRangeHeader:!0}))}},t.TextWriter=class extends Cr{constructor(t){super(),n.assign(this,{encoding:t,yt:!t||"utf-8"==t.toLowerCase()})}async getData(){const{encoding:t,yt:e}=this,n=await super.getData();return n.text&&e?n.text():((t,e)=>fr(t,e,!1))(new d(await n.arrayBuffer()),t)}},t.ZipReader=class{constructor(t,e={}){n.assign(this,{reader:new Xr(t),options:e||{},nt:{ct:new u,ut:[],ft:[]},gt:new WeakSet})}async*getEntriesGenerator(t={}){const e=this;let{reader:r}=e;if(await Jr(r),r.size!==X&&r.readUint8Array||(r=new Dr(await mn(r.readable)),await Jr(r)),r.size<q)throw new l(go);const s=e.warnings=[],i=Yo(t,e.options),c=i==st,f=i!=it,w=((t,e)=>{if(t!==X){const e=ft(t);if("number"!=typeof e||o.isNaN(e)||0>e)throw new l("Invalid maxAppendedDataSize (must be a number greater than or equal to 0)");return e}return e==st?0:e==it?1/0:T})(cs(e,t,"maxAppendedDataSize"),i),p=((t,e)=>{if(t===X)return e;if(!Qo(t))throw new l("Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')");return t})(cs(e,t,"filenameValidation"),i),h=cs(e,t,"normalizeFilename"),{bt:m,vt:y}=await(async(t,e,n)=>{const{size:r}=t,o=a.min(r,65557),s={lt:64};let i,c,u=0;for await(const[n,a,f,w,l]of ns(t,o)){const o=ds(n,w+20);if(l+q+o==r){const o=await os(t,n,a,w,l,r,s);if(2==o){if(i||(i=rs(f,w,l)),u++,!e||u>1)break}else 1!=o||c||(c=rs(f,w,l))}}return i||(i=c),i||(i=await(async(t,e,n)=>{const{size:r}=t,o=a.min(r,e==1/0?r:65557+e);let s,i;for await(const[e,a,c,u,f]of ns(t,o)){const o=rs(c,u,f);s||(s=o);const w=await os(t,e,a,u,f,r,n);if(2==w)return o;1!=w||i||(i=o)}return i||s})(t,n,s)),{bt:i,vt:u}})(r,f,w);if(!m)throw await(async t=>await Jo(t)==W)(r)?new l(So):new l("End of central directory not found");f&&y>1&&is("multiple end of central directory records");const g=ve(m);let b=ps(g,12),v=ps(g,16);const S=m.offset,k=ds(g,20),x=S+q+k,R=r.size-x;R>w&&is(xo),R>0&&to(s,xo);let D=ds(g,4);const C=r.$||0;let A,F,I,E,L,K=ds(g,6),G=ds(g,10),J=0,Q=j;const Y=v==U||b==U||G==T||K==T;if(v!=U&&K!=T&&(v+=$o(r,K)),Y){const t=m.offset<N?et:await Yr(r,m.offset-N,N),e=ve(t);if(t.length==N&&ps(e,0)==Z){v=$o(r,ps(e,4))+hs(e,8);let t=await Yr(r,v,j),i=ve(t);if(t.length<j||ps(i,0)!=B){const e=m.offset-N;let n=e-j;if(await Ho(r,n,B)||(n=await(async(t,e)=>{const n=a.max(0,e-65591),r=await Yr(t,n,e-n),s=ve(r);for(let t=r.length-j;t>=0;t--)if(ps(s,t)==B&&t+12+o(s.getBigUint64(t+4,!0))==r.length)return n+t})(r,e)),n!==X&&n>=0&&v!=n){const e=v;v=n,v>e&&(J=v-e),t=await Yr(r,v,j),i=ve(t)}}if(t.length<j||ps(i,0)!=B)throw new l(bo);if(I=!0,E=hs(i,4)>44,E){const t=a.min(hs(i,4)-44,r.size-v-j);t>0&&(Q+=t,L=(t=>{const e={rawExtensibleData:t};if(t.length>=28){const r=ve(t),o=ds(r,26);n.assign(e,{compressionMethod:ds(r,0),compressedSize:hs(r,2),uncompressedSize:hs(r,10),encryptionAlgorithm:ds(r,18),bitLength:ds(r,20),flags:ds(r,22),hashAlgorithm:ds(r,24),hashData:t.subarray(28,28+o)})}return e})(await Yr(r,v+j,t)))}D==T?D=ps(i,16):D!=ps(i,16)&&as(c,s,Do),K==T?K=ps(i,20):K!=ps(i,20)&&as(c,s,Do),G==T?G=hs(i,32):G!=hs(i,32)&&as(c,s,Do),b==U?b=hs(i,40):b!=hs(i,40)&&as(c,s,Do),v=$o(r,K)+hs(i,48)+J}else if(v==U||b==U||K==T)throw new l(bo)}let tt=b;const nt=m.offset-(I?Q+N:0);if(C!=D)throw new l(So);if(0>v)throw new l(go);let at=0,ct=v<r.size?await Yr(r,v,b):et,ut=ve(ct);if(b){let t=nt-b;if(v!=t&&K==D){const e=ct.length>=4&&(ps(ut,at)==H||!(!L||!L.compressedSize)||Wo(ut));if(!e&&0>t)throw new l(go);let n=!e;if(t>=0&&t+4<=r.size){let o=await Po(r,t);if(!o){const e=await(async(t,e)=>{const n=a.max(0,e-65541),r=await Yr(t,n,e-n),o=ve(r);for(let t=r.length-6;t>=0;t--)if(ps(o,t)==P&&t+6+ds(o,t+4)==r.length)return n+t})(r,nt),n=e-b;e!==X&&n>=0&&await Po(r,n)&&(t=n,o=!0)}e&&(n=o)}if(n&&t!=v){const n=v;v=t,ct=await Yr(r,v,b),ut=ve(ct);const o=v-n,i=((t,e)=>{if(t.length<V)return X;const n=ps(e,42);if(n!=U)return n;let r=V+ds(e,28);const o=a.min(r+ds(e,30),t.length);for(;o>=r+4;){const t=ds(e,r),n=ds(e,r+2);if(1==t){let t=r+4;return ps(e,24)==U&&(t+=8),ps(e,20)==U&&(t+=8),t+8>o?X:hs(e,t)}r+=4+n}return X})(ct,ut),u=i!==X&&await Ho(r,i,O),f=i!==X&&await Ho(r,i+o,O);0>=o||u&&!f?(as(c,s,"mismatched central directory offset"),0>o&&!u&&f&&(J+=o)):(J+=o,A=e)}}if(4>ct.length)throw new l(go)}else!G&&nt>v&&K==D&&(J+=nt-v,v=nt);const wt=nt-v;if(b==wt||0>wt||K!=D||(b=wt,ct=await Yr(r,v,b),ut=ve(ct)),0>v||v>=r.size)throw new l(go);e.directoryOffset=v,e.directoryLength=tt;const lt=us(e,t,"decryptCentralDirectory");let dt,pt;if(lt&&G&&ct.length>=4&&ps(ut,0)!=H&&(E||Wo(ut))){const t=((t,e,n)=>{const r=t&&t.compressedSize?t.compressedSize:e;return r>0&&n>=r?r:n})(L,tt,ct.length);pt=ct.subarray(t),ct=await lt(ct.subarray(0,t),L),ut=ve(ct),tt=ct.length,dt=!0}!L||dt||ct.length>=4&&ps(ut,0)!=H||to(s,"unknown zip64 extensible data"),F=v;const ht=cs(e,t,"filenameEncoding"),mt=cs(e,t,"commentEncoding"),yt=new u;let gt,bt=-1;const vt=!c&&!I;!G&&vt&&(G=Lo(ut,ct,at),G&&to(s,zo));const St=n.assign({},e.options,t,{[ot]:i});delete St[rt];for(let o=0;G>o;o++){const i=new Oo(r,St);if(at+V>ct.length||ps(ut,at)!=H){if(0==o&&!dt&&(E||Wo(ut)))throw new l("Encrypted central directory is not supported");throw new l("Central directory header not found")}Zo(i,ut,at+6);const u=!!i.bitFlag.languageEncodingFlag,f=at+V,w=f+i.filenameLength+i.extraFieldLength,m=ds(ut,at+4),y=!(m>>8),g=m>>8==3,b=ds(ut,at+32),v=w+b,S=new d(ct.subarray(f,v)),k=S.subarray(0,i.filenameLength),x=S.subarray(i.filenameLength+i.extraFieldLength),R=u||!ht&&ur(k),D=u||!mt&&ur(x),C=ps(ut,at+38),A=C&M,I={readOnly:!!(1&A),hidden:!!(2&A),system:!!(4&A),directory:!!(16&A),archive:!!(32&A)},O=ps(ut,at+42),W=us(e,t,"decodeText")||cr,L=R?Io:ht||Eo,P=D?Io:mt||Eo;let B=W(k,L,"filename");B===X&&(B=cr(k,L));let Z,q=W(x,P,"comment");q===X&&(q=cr(x,P)),n.assign(i,{index:o,st:dt,versionMadeBy:m,msDosCompatible:y,zip64:!1,compressedSize:0,uncompressedSize:0,St:b,offset:O,diskNumberStart:ds(ut,at+34),internalFileAttributes:ds(ut,at+36),externalFileAttributes:C,msdosAttributesRaw:A,msdosAttributes:I,rawFilename:k,filenameUTF8:R,commentUTF8:D,rawExtraField:S.subarray(i.filenameLength,i.filenameLength+i.extraFieldLength),rawComment:x,filename:B,comment:q});try{Z=Vo(i,i,ut,at+6)}catch(t){if(c||t.message!=$)throw t;i.ot=!0,to(s,"missing zip64 extra field",i.filename)}if(B=i.filename,h){const t=h(B);t!==X&&(B=i.filename=t)}if(es(B,p)){const t=new l("Unsafe filename");throw t.filename=B,t}if(Z&&to(s,ko,B),i.ot&&i.offset==U)F=0;else{i.offset+=J;const t=$o(r,i.diskNumberStart)+i.offset;F=a.min(t,F),bt>t&&to(s,"unsorted central directory",B),bt=t}(i.version&M)>63&&to(s,"unknown version needed to extract",B),32&~i.rawBitFlag||to(s,"compressed patched data",B),yt.has(i.filename)&&(gt=!0),yt.add(i.filename);const N=i.externalFileAttributes>>16&T;i.unixMode===X&&16877&N&&(i.unixMode=N);const j=!!(2048&i.unixMode),K=!!(1024&i.unixMode),Q=!!(512&i.unixMode),Y=40960==((i.unixMode===X?N:i.unixMode)&_),tt=i.unixMode!==X&&16384==(i.unixMode&_)||16384==(N&_)||y&&I.directory||i.filename.endsWith("/"),et=!Y&&!tt&&(i.unixMode!==X?!!(73&i.unixMode):g&&!!(73&N));n.assign(i,{setuid:j,setgid:K,sticky:Q,symlink:Y,unixExternalUpper:N,executable:et,directory:tt,zipCrypto:i.encrypted&&!i.extraFieldAES});const nt=new yo(i);if(i.ot&&e.gt.add(nt),nt.getData=(t,n)=>i.getData(t,nt,e,n),nt.arrayBuffer=async t=>{const r=new z,o=mn(r.readable).then(t=>t.arrayBuffer());return o.catch(()=>{}),await i.getData(r,nt,e,n.assign({},t,{preventClose:!1})),o},at=v,o==G-1&&vt){const t=Lo(ut,ct,at);t&&(G+=t,to(s,zo))}const{onprogress:rt}=t;if(rt)try{await rt(o+1,G,new yo(i))}catch{}yield nt}let kt=at,zt=Bo(ct.subarray(at))||(dt?Bo(pt):X);if(!zt&&!dt){const t=v+at,e=a.min(nt-t,65541);6>e||(zt=Bo(await Yr(r,t,e)))}zt&&(e.digitalSignature=zt,kt=at+6+zt.length),(at!=tt&&kt!=tt||!dt&&at!=b&&kt!=b)&&as(c,s,"trailing central directory data"),gt&&as(c,s,"duplicate filename");const xt=cs(e,t,"extractPrependedData"),Rt=cs(e,t,"extractAppendedData"),Dt=(c||xt)&&G&&4==F&&await(async t=>{const e=await Jo(t);return e==W||808471376==e})(r)?4:0;return c&&(J>0||G&&F>Dt)&&is(Ro),(J>0||G&&F>4)&&to(s,Ro),A&&to(s,"prepended central directory"),xt&&(e.prependedData=F>Dt?await Yr(r,Dt,F-Dt):et),e.comment=k?await Yr(r,S+q,k):et,Rt&&(e.appendedData=x<r.size?await Yr(r,x,r.size-x):et),!0}async getEntries(t={}){const e=[];for await(const n of this.getEntriesGenerator(t))e.push(n);return e}async close(){const{reader:t}=this;t.readUint8Array||!t.readable||t.readable.locked||await t.readable.cancel()}[nt](){return this.close()}},t.configure=t=>{n.assign(vt,xt(Dt(t)))},t.inflateRaw=(t,e)=>Yt(t,{i:2},e&&e.kt,e&&e.m)});
|