@zip.js/zip.js 2.6.31 → 2.6.33

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.
@@ -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:s,BigInt:a,Math:i,Date:o,Map:c,Set:l,Response:d,URL:u,Error:f,Uint8Array:p,Uint16Array:h,Uint32Array:w,DataView:g,Blob:_,Promise:m,TextEncoder:y,TextDecoder:b,document:x,crypto:v,btoa:S,TransformStream:k,ReadableStream:z,WritableStream:R,CompressionStream:D,DecompressionStream:E,navigator:A}="undefined"!=typeof globalThis?globalThis:this||self,T=-2;function F(e){return C(e.map((([e,n])=>new t(e).fill(n,0,e))))}function C(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?C(n):n)),[])}const W=[0,1,2,3].concat(...F([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function U(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,s=e.stat_desc.static_tree,a=e.stat_desc.elems;let o,c,l,d=-1;for(n.heap_len=0,n.heap_max=573,o=0;a>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=d=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)l=n.heap[++n.heap_len]=2>d?++d:0,r[2*l]=1,n.depth[l]=0,n.opt_len--,s&&(n.static_len-=s[2*l+1]);for(e.max_code=d,o=i.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);l=a;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),c=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=c,r[2*l]=r[2*o]+r[2*c],n.depth[l]=i.max(n.depth[o],n.depth[c])+1,r[2*o+1]=r[2*c+1]=l,n.heap[1]=l++,n.pqdownheap(r,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,r=e.stat_desc.static_tree,s=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,i=e.stat_desc.max_length;let o,c,l,d,u,f,p=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)c=t.heap[o],d=n[2*n[2*c+1]+1]+1,d>i&&(d=i,p++),n[2*c+1]=d,c>e.max_code||(t.bl_count[d]++,u=0,a>c||(u=s[c-a]),f=n[2*c],t.opt_len+=f*(d+u),r&&(t.static_len+=f*(r[2*c+1]+u)));if(0!==p){do{for(d=i-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[i]--,p-=2}while(p>0);for(d=i;0!==d;d--)for(c=t.bl_count[d];0!==c;)l=t.heap[--o],l>e.max_code||(n[2*l+1]!=d&&(t.opt_len+=(d-n[2*l+1])*n[2*l],n[2*l+1]=d),c--)}})(n),((e,n,r)=>{const s=[];let a,i,o,c=0;for(a=1;15>=a;a++)s[a]=c=c+r[a-1]<<1;for(i=0;n>=i;i++)o=e[2*i+1],0!==o&&(e[2*i]=t(s[o]++,o))})(r,e.max_code,n.bl_count)}}function I(e,t,n,r,s){const a=this;a.static_tree=e,a.extra_bits=t,a.extra_base=n,a.elems=r,a.max_length=s}U._length_code=[0,1,2,3,4,5,6,7].concat(...F([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),U.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],U.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],U.d_code=e=>256>e?W[e]:W[256+(e>>>7)],U.extra_lbits=[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],U.extra_dbits=[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],U.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],U.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const H=F([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=C([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,H[t]])));const M=F([[30,5]]);function L(e,t,n,r,s){const a=this;a.good_length=e,a.max_lazy=t,a.nice_length=n,a.max_chain=r,a.func=s}I.static_dtree=C([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,M[t]]))),I.static_l_desc=new I(I.static_ltree,U.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,U.extra_dbits,0,30,15),I.static_bl_desc=new I(null,U.extra_blbits,0,19,7);const q=[new L(0,0,0,0,0),new L(4,4,8,4,1),new L(4,5,16,8,1),new L(4,6,32,32,1),new L(4,4,16,16,2),new L(8,16,32,32,2),new L(8,16,128,128,2),new L(8,32,128,256,2),new L(32,128,258,1024,2),new L(32,258,258,4096,2)],N=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],B=113,V=666,P=262;function O(e,t,n,r){const s=e[2*t],a=e[2*n];return a>s||s==a&&r[t]<=r[n]}function K(){const e=this;let t,n,r,s,a,o,c,l,d,u,f,w,g,_,m,y,b,x,v,S,k,z,R,D,E,A,F,C,W,H,M,L,K;const Z=new U,X=new U,Y=new U;let j,G,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)M[2*t]=0;for(t=0;30>t;t++)L[2*t]=0;for(t=0;19>t;t++)K[2*t]=0;M[512]=1,e.opt_len=e.static_len=0,G=J=0}function ne(e,t){let n,r=-1,s=e[1],a=0,i=7,o=4;0===s&&(i=138,o=3),e[2*(t+1)+1]=65535;for(let c=0;t>=c;c++)n=s,s=e[2*(c+1)+1],++a<i&&n==s||(o>a?K[2*n]+=a:0!==n?(n!=r&&K[2*n]++,K[32]++):a>10?K[36]++:K[34]++,a=0,r=n,0===s?(i=138,o=3):n==s?(i=6,o=3):(i=7,o=4))}function re(t){e.pending_buf[e.pending++]=t}function se(e){re(255&e),re(e>>>8&255)}function ae(e,t){let n;const r=t;ee>16-r?(n=e,$|=n<<ee&65535,se($),$=n>>>16-ee,ee+=r-16):($|=e<<ee&65535,ee+=r)}function ie(e,t){const n=2*e;ae(65535&t[n],65535&t[n+1])}function oe(e,t){let n,r,s=-1,a=e[1],i=0,o=7,c=4;for(0===a&&(o=138,c=3),n=0;t>=n;n++)if(r=a,a=e[2*(n+1)+1],++i>=o||r!=a){if(c>i)do{ie(r,K)}while(0!=--i);else 0!==r?(r!=s&&(ie(r,K),i--),ie(16,K),ae(i-3,2)):i>10?(ie(18,K),ae(i-11,7)):(ie(17,K),ae(i-3,3));i=0,s=r,0===a?(o=138,c=3):r==a?(o=6,c=3):(o=7,c=4)}}function ce(){16==ee?(se($),$=0,ee=0):8>ee||(re(255&$),$>>>=8,ee-=8)}function le(t,n){let r,s,a;if(e.dist_buf[G]=t,e.lc_buf[G]=255&n,G++,0===t?M[2*n]++:(J++,t--,M[2*(U._length_code[n]+256+1)]++,L[2*U.d_code(t)]++),0==(8191&G)&&F>2){for(r=8*G,s=k-b,a=0;30>a;a++)r+=L[2*a]*(5+U.extra_dbits[a]);if(r>>>=3,J<i.floor(G/2)&&r<i.floor(s/2))return!0}return G==j-1}function de(t,n){let r,s,a,i,o=0;if(0!==G)do{r=e.dist_buf[o],s=e.lc_buf[o],o++,0===r?ie(s,t):(a=U._length_code[s],ie(a+256+1,t),i=U.extra_lbits[a],0!==i&&(s-=U.base_length[a],ae(s,i)),r--,a=U.d_code(r),ie(a,n),i=U.extra_dbits[a],0!==i&&(r-=U.base_dist[a],ae(r,i)))}while(G>o);ie(256,t),Q=t[513]}function ue(){ee>8?se($):ee>0&&re(255&$),$=0,ee=0}function fe(t,n,r){ae(0+(r?1:0),3),((t,n)=>{ue(),Q=8,se(n),se(~n),e.pending_buf.set(l.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function pe(n){((t,n,r)=>{let s,a,i=0;F>0?(Z.build_tree(e),X.build_tree(e),i=(()=>{let t;for(ne(M,Z.max_code),ne(L,X.max_code),Y.build_tree(e),t=18;t>=3&&0===K[2*U.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),s=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a>s||(s=a)):s=a=n+5,n+4>s||-1==t?a==s?(ae(2+(r?1:0),3),de(I.static_ltree,I.static_dtree)):(ae(4+(r?1:0),3),((e,t,n)=>{let r;for(ae(e-257,5),ae(t-1,5),ae(n-4,4),r=0;n>r;r++)ae(K[2*U.bl_order[r]+1],3);oe(M,e-1),oe(L,t-1)})(Z.max_code+1,X.max_code+1,i+1),de(M,L)):fe(t,n,r),te(),r&&ue()})(0>b?-1:b,k-b,n),b=k,t.flush_pending()}function he(){let e,n,r,s;do{if(s=d-R-k,0===s&&0===k&&0===R)s=a;else if(-1==s)s--;else if(k>=a+a-P){l.set(l.subarray(a,a+a),0),z-=a,k-=a,b-=a,e=g,r=e;do{n=65535&f[--r],f[r]=a>n?0:n-a}while(0!=--e);e=a,r=e;do{n=65535&u[--r],u[r]=a>n?0:n-a}while(0!=--e);s+=a}if(0===t.avail_in)return;e=t.read_buf(l,k+R,s),R+=e,3>R||(w=255&l[k],w=(w<<y^255&l[k+1])&m)}while(P>R&&0!==t.avail_in)}function we(e){let t,n,r=E,s=k,i=D;const o=k>a-P?k-(a-P):0;let d=H;const f=c,p=k+258;let h=l[s+i-1],w=l[s+i];W>D||(r>>=2),d>R&&(d=R);do{if(t=e,l[t+i]==w&&l[t+i-1]==h&&l[t]==l[s]&&l[++t]==l[s+1]){s+=2,t++;do{}while(l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&p>s);if(n=258-(p-s),s=p-258,n>i){if(z=e,i=n,n>=d)break;h=l[s+i-1],w=l[s+i]}}}while((e=65535&u[e&f])>o&&0!=--r);return i>R?R:i}e.depth=[],e.bl_count=[],e.heap=[],M=[],L=[],K=[],e.pqdownheap=(t,n)=>{const r=e.heap,s=r[n];let a=n<<1;for(;a<=e.heap_len&&(a<e.heap_len&&O(t,r[a+1],r[a],e.depth)&&a++,!O(t,s,r[a],e.depth));)r[n]=r[a],n=a,a<<=1;r[n]=s},e.deflateInit=(t,v,z,U,N,V)=>(U||(U=8),N||(N=8),V||(V=0),t.msg=null,-1==v&&(v=6),1>N||N>9||8!=U||9>z||z>15||0>v||v>9||0>V||V>2?T:(t.dstate=e,o=z,a=1<<o,c=a-1,_=N+7,g=1<<_,m=g-1,y=i.floor((_+3-1)/3),l=new p(2*a),u=[],f=[],j=1<<N+6,e.pending_buf=new p(4*j),r=4*j,e.dist_buf=new h(j),e.lc_buf=new p(j),F=v,C=V,(t=>(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=B,s=0,Z.dyn_tree=M,Z.stat_desc=I.static_l_desc,X.dyn_tree=L,X.stat_desc=I.static_d_desc,Y.dyn_tree=K,Y.stat_desc=I.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*a,f[g-1]=0;for(let e=0;g-1>e;e++)f[e]=0;A=q[F].max_lazy,W=q[F].good_length,H=q[F].nice_length,E=q[F].max_chain,k=0,b=0,R=0,x=D=2,S=0,w=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=B&&n!=V?T:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,l=null,e.dstate=null,n==B?-3:0),e.deflateParams=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?T:(q[F].func!=q[t].func&&0!==e.total_in&&(r=e.deflate(1)),F!=t&&(F=t,A=q[F].max_lazy,W=q[F].good_length,H=q[F].nice_length,E=q[F].max_chain),C=n,r)},e.deflateSetDictionary=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return T;if(3>i)return 0;for(i>a-P&&(i=a-P,o=r-i),l.set(t.subarray(o,o+i),0),k=i,b=i,w=255&l[0],w=(w<<y^255&l[1])&m,s=0;i-3>=s;s++)w=(w<<y^255&l[s+2])&m,u[s&c]=f[w],f[w]=s;return 0},e.deflate=(i,d)=>{let p,h,_,E,W;if(d>4||0>d)return T;if(!i.next_out||!i.next_in&&0!==i.avail_in||n==V&&4!=d)return i.msg=N[4],T;if(0===i.avail_out)return i.msg=N[7],-5;var U;if(t=i,E=s,s=d,42==n&&(h=8+(o-8<<4)<<8,_=(F-1&255)>>1,_>3&&(_=3),h|=_<<6,0!==k&&(h|=32),h+=31-h%31,n=B,re((U=h)>>8&255),re(255&U)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return s=-1,0}else if(0===t.avail_in&&E>=d&&4!=d)return t.msg=N[7],-5;if(n==V&&0!==t.avail_in)return i.msg=N[7],-5;if(0!==t.avail_in||0!==R||0!=d&&n!=V){switch(W=-1,q[F].func){case 0:W=(e=>{let n,s=65535;for(s>r-5&&(s=r-5);;){if(1>=R){if(he(),0===R&&0==e)return 0;if(0===R)break}if(k+=R,R=0,n=b+s,(0===k||k>=n)&&(R=k-n,k=n,pe(!1),0===t.avail_out))return 0;if(k-b>=a-P&&(pe(!1),0===t.avail_out))return 0}return pe(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 1:W=(e=>{let n,r=0;for(;;){if(P>R){if(he(),P>R&&0==e)return 0;if(0===R)break}if(3>R||(w=(w<<y^255&l[k+2])&m,r=65535&f[w],u[k&c]=f[w],f[w]=k),0===r||(k-r&65535)>a-P||2!=C&&(x=we(r)),3>x)n=le(0,255&l[k]),R--,k++;else if(n=le(k-z,x-3),R-=x,x>A||3>R)k+=x,x=0,w=255&l[k],w=(w<<y^255&l[k+1])&m;else{x--;do{k++,w=(w<<y^255&l[k+2])&m,r=65535&f[w],u[k&c]=f[w],f[w]=k}while(0!=--x);k++}if(n&&(pe(!1),0===t.avail_out))return 0}return pe(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 2:W=(e=>{let n,r,s=0;for(;;){if(P>R){if(he(),P>R&&0==e)return 0;if(0===R)break}if(3>R||(w=(w<<y^255&l[k+2])&m,s=65535&f[w],u[k&c]=f[w],f[w]=k),D=x,v=z,x=2,0!==s&&A>D&&a-P>=(k-s&65535)&&(2!=C&&(x=we(s)),5>=x&&(1==C||3==x&&k-z>4096)&&(x=2)),3>D||x>D)if(0!==S){if(n=le(0,255&l[k-1]),n&&pe(!1),k++,R--,0===t.avail_out)return 0}else S=1,k++,R--;else{r=k+R-3,n=le(k-1-v,D-3),R-=D-1,D-=2;do{++k>r||(w=(w<<y^255&l[k+2])&m,s=65535&f[w],u[k&c]=f[w],f[w]=k)}while(0!=--D);if(S=0,x=2,k++,n&&(pe(!1),0===t.avail_out))return 0}}return 0!==S&&(n=le(0,255&l[k-1]),S=0),pe(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d)}if(2!=W&&3!=W||(n=V),0==W||2==W)return 0===t.avail_out&&(s=-1),0;if(1==W){if(1==d)ae(2,3),ie(256,I.static_ltree),ce(),9>1+Q+10-ee&&(ae(2,3),ie(256,I.static_ltree),ce()),Q=7;else if(fe(0,0,!1),3==d)for(p=0;g>p;p++)f[p]=0;if(t.flush_pending(),0===t.avail_out)return s=-1,0}}return 4!=d?0:1}}function Z(){const e=this;e.next_in_index=0,e.next_out_index=0,e.avail_in=0,e.total_in=0,e.avail_out=0,e.total_out=0}Z.prototype={deflateInit(e,t){const n=this;return n.dstate=new K,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):T},deflateEnd(){const e=this;if(!e.dstate)return T;const t=e.dstate.deflateEnd();return e.dstate=null,t},deflateParams(e,t){const n=this;return n.dstate?n.dstate.deflateParams(n,e,t):T},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):T},read_buf(e,t,n){const r=this;let s=r.avail_in;return s>n&&(s=n),0===s?0:(r.avail_in-=s,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+s),t),r.next_in_index+=s,r.total_in+=s,s)},flush_pending(){const e=this;let t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),0!==t&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,0===e.dstate.pending&&(e.dstate.pending_out=0))}};const X=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;X[e]=t}class Y{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^X[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class j extends k{constructor(){const e=new Y;super({transform(t){e.append(t)},flush(t){const n=new p(4);new g(n.buffer).setUint32(0,e.get()),t.enqueue(n)}})}}function G(e){if(void 0===y){const t=new p((e=unescape(encodeURIComponent(e))).length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new y).encode(e)}const J={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=J.getPartial(n);return 32===r?e.concat(t):J._shiftRight(t,r,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+J.getPartial(n)},clamp(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,i.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=J.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>i.round(e/1099511627776)||32,_shiftRight(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s<e.length;s++)r.push(n|e[s]>>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,a=J.getPartial(s);return r.push(J.partial(t+a&31,t+a>32?n:r.pop(),1)),r}},Q={bytes:{fromBits(e){const t=J.bitLength(e)/8,n=new p(t);let r;for(let s=0;t>s;s++)0==(3&s)&&(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],3==(3&n)&&(t.push(r),r=0);return 3&n&&t.push(J.partial(8*(3&n),r)),t}}},$={sha1:function(e){e?(this._h=e._h.slice(0),this._buffer=e._buffer.slice(0),this._length=e._length):this.reset()}};$.sha1.prototype={blockSize:512,reset(){const e=this;return e._h=this._init.slice(0),e._buffer=[],e._length=0,e},update(e){const t=this;"string"==typeof e&&(e=Q.utf8String.toBits(e));const n=t._buffer=J.concat(t._buffer,e),r=t._length,s=t._length=r+J.bitLength(e);if(s>9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new w(n);let i=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);s>=e;e+=t.blockSize)t._block(a.subarray(16*i,16*(i+1))),i+=1;return n.splice(0,16*i),t},finalize(){const e=this;let t=e._buffer;const n=e._h;t=J.concat(t,[J.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(i.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n},_init:[1732584193,4023233417,2562383102,271733878,3285377520],_key:[1518500249,1859775393,2400959708,3395469782],_f:(e,t,n,r)=>e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r,_S:(e,t)=>t<<e|t>>>32-e,_block(e){const n=this,r=n._h,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let a=r[0],o=r[1],c=r[2],l=r[3],d=r[4];for(let e=0;79>=e;e++){16>e||(s[e]=n._S(1,s[e-3]^s[e-8]^s[e-14]^s[e-16]));const t=n._S(5,a)+n._f(e,o,c,l)+d+s[e]+n._key[i.floor(e/20)]|0;d=l,l=c,c=n._S(30,o),o=a,a=t}r[0]=r[0]+a|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+d|0}};const ee={getRandomValues(e){const t=new w(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(i.random()>.5?1:-1))};for(let r,s=0;s<e.length;s+=4){const e=n(4294967296*(r||i.random()));r=987654071*e(),t[s/4]=4294967296*e()|0}return e}},te={importKey:e=>new te.hmacSha1(Q.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new f("invalid params to pbkdf2");const s=1+(r>>5)<<2;let a,i,o,c,l;const d=new ArrayBuffer(s),u=new g(d);let p=0;const h=J;for(t=Q.bytes.toBits(t),l=1;(s||1)>p;l++){for(a=i=e.encrypt(h.concat(t,[l])),o=1;n>o;o++)for(i=e.encrypt(i),c=0;c<i.length;c++)a[c]^=i[c];for(o=0;(s||1)>p&&o<a.length;o++)u.setInt32(p,a[o]),p+=4}return d.slice(0,r/8)},hmacSha1:class{constructor(e){const t=this,n=t._hash=$.sha1,r=[[],[]],s=n.prototype.blockSize/32;t._baseHash=[new n,new n],e.length>s&&(e=n.hash(e));for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},ne=void 0!==v&&"function"==typeof v.getRandomValues,re="Invalid password",se="Invalid signature";function ae(e){return ne?v.getRandomValues(e):ee.getRandomValues(e)}const ie=16,oe={name:"PBKDF2"},ce=n.assign({hash:{name:"HMAC"}},oe),le=n.assign({iterations:1e3,hash:{name:"SHA-1"}},oe),de=["deriveBits"],ue=[8,12,16],fe=[16,24,32],pe=10,he=[0,0,0,0],we="undefined",ge="function",_e=typeof v!=we,me=_e&&v.subtle,ye=_e&&typeof me!=we,be=_e&&ye&&typeof me.importKey==ge,xe=_e&&ye&&typeof me.deriveBits==ge,ve=Q.bytes,Se=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],s=e.length;let a,i,o,c=1;if(4!==s&&6!==s&&8!==s)throw new f("invalid aes key size");for(t._key=[i=e.slice(0),o=[]],a=s;4*s+28>a;a++){let e=i[a-1];(a%s==0||8===s&&a%s==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],a%s==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),i[a]=i[a-s]^e}for(let e=0;a;e++,a--){const t=i[3&e?a:a-4];o[e]=4>=a||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],s=[],a=[];let i,o,c,l;for(let e=0;256>e;e++)a[(s[e]=e<<1^283*(e>>7))^e]=e;for(let d=i=0;!n[d];d^=o||1,i=a[i]||1){let a=i^i<<1^i<<2^i<<3^i<<4;a=a>>8^255&a^99,n[d]=a,r[a]=d,l=s[c=s[o=s[d]]];let u=16843009*l^65537*c^257*o^16843008*d,f=257*s[a]^16843008*a;for(let n=0;4>n;n++)e[n][d]=f=f<<24^f>>>8,t[n][a]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],r=n.length/4-2,s=[0,0,0,0],a=this._tables[t],i=a[0],o=a[1],c=a[2],l=a[3],d=a[4];let u,p,h,w=e[0]^n[0],g=e[t?3:1]^n[1],_=e[2]^n[2],m=e[t?1:3]^n[3],y=4;for(let e=0;r>e;e++)u=i[w>>>24]^o[g>>16&255]^c[_>>8&255]^l[255&m]^n[y],p=i[g>>>24]^o[_>>16&255]^c[m>>8&255]^l[255&w]^n[y+1],h=i[_>>>24]^o[m>>16&255]^c[w>>8&255]^l[255&g]^n[y+2],m=i[m>>>24]^o[w>>16&255]^c[g>>8&255]^l[255&_]^n[y+3],y+=4,w=u,g=p,_=h;for(let e=0;4>e;e++)s[t?3&-e:e]=d[w>>>24]<<24^d[g>>16&255]<<16^d[_>>8&255]<<8^d[255&m]^n[y++],u=w,w=g,g=_,_=m,m=u;return s}},ke=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255==(e>>24&255)){let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}else e+=1<<24;return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];const s=J.bitLength(t);for(let s=0;r>s;s+=4){this.incCounter(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return J.clamp(t,s)}},ze=te.hmacSha1;class Re extends k{constructor(e,t,r){super({start(){n.assign(this,{ready:new m((e=>this.resolveReady=e)),password:e,signed:t,strength:r-1,pending:new p})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:a,ready:i}=n;r?(await(async(e,t,n,r)=>{const s=await Ae(e,t,n,Fe(r,0,ue[t])),a=Fe(r,ue[t]);if(s[0]!=a[0]||s[1]!=a[1])throw new f(re)})(n,s,r,Fe(e,0,ue[s]+2)),e=Fe(e,ue[s]+2),a()):await i;const o=new p(e.length-pe-(e.length-pe)%ie);t.enqueue(Ee(n,e,o,0,pe,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:a}=this;await a;const i=Fe(s,0,s.length-pe),o=Fe(s,s.length-pe);let c=new p;if(i.length){const e=We(ve,i);r.update(e);const t=n.update(e);c=Ce(ve,t)}if(t){const e=Fe(Ce(ve,r.digest()),0,pe);for(let t=0;pe>t;t++)if(e[t]!=o[t])throw new f(se)}e.enqueue(c)}})}}class De extends k{constructor(e,t){let r;super({start(){n.assign(this,{ready:new m((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new p})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:a,ready:i}=n;let o=new p;r?(o=await(async(e,t,n)=>{const r=ae(new p(ue[t]));return Te(r,await Ae(e,t,n,r))})(n,s,r),a()):await i;const c=new p(o.length+e.length-e.length%ie);c.set(o,0),t.enqueue(Ee(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:s,ready:a}=this;await a;let i=new p;if(s.length){const e=t.update(We(ve,s));n.update(e),i=Ce(ve,e)}r.signature=Ce(ve,n.digest()).slice(0,pe),e.enqueue(Te(i,r.signature))}}),r=this}}function Ee(e,t,n,r,s,a){const{ctr:i,hmac:o,pending:c}=e,l=t.length-s;let d;for(c.length&&(t=Te(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new p(t)).set(n,0)}return e})(n,l-l%ie)),d=0;l-ie>=d;d+=ie){const e=We(ve,Fe(t,d,d+ie));a&&o.update(e);const s=i.update(e);a||o.update(s),n.set(Ce(ve,s),d+r)}return e.pending=Fe(t,d),n}async function Ae(e,r,s,a){e.password=null;const i=G(s),o=await((e,t,n,r,s)=>be?me.importKey("raw",t,n,!1,s):te.importKey(t))(0,i,ce,0,de),c=await(async(e,t,n)=>xe?await me.deriveBits(e,t,n):te.pbkdf2(t,e.salt,le.iterations,n))(n.assign({salt:a},le),o,8*(2*fe[r]+2)),l=new p(c),d=We(ve,Fe(l,0,fe[r])),u=We(ve,Fe(l,fe[r],2*fe[r])),f=Fe(l,2*fe[r]);return n.assign(e,{keys:{key:d,authentication:u,passwordVerification:f},ctr:new ke(new Se(d),t.from(he)),hmac:new ze(u)}),f}function Te(e,t){let n=e;return e.length+t.length&&(n=new p(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Fe(e,t,n){return e.subarray(t,n)}function Ce(e,t){return e.fromBits(t)}function We(e,t){return e.toBits(t)}class Ue extends k{constructor(e,t){super({start(){n.assign(this,{password:e,passwordVerification:t}),Le(this,e)},transform(e,t){const n=this;if(n.password){const t=He(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(re);e=e.subarray(12)}t.enqueue(He(n,e))}})}}class Ie extends k{constructor(e,t){super({start(){n.assign(this,{password:e,passwordVerification:t}),Le(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=ae(new p(12));t[11]=n.passwordVerification,r=new p(e.length+t.length),r.set(Me(n,t),0),s=12}else r=new p(e.length),s=0;r.set(Me(n,e),s),t.enqueue(r)}})}}function He(e,t){const n=new p(t.length);for(let r=0;r<t.length;r++)n[r]=Ne(e)^t[r],qe(e,n[r]);return n}function Me(e,t){const n=new p(t.length);for(let r=0;r<t.length;r++)n[r]=Ne(e)^t[r],qe(e,t[r]);return n}function Le(e,t){const r=[305419896,591751049,878082192];n.assign(e,{keys:r,crcKey0:new Y(r[0]),crcKey2:new Y(r[2])});for(let n=0;n<t.length;n++)qe(e,t.charCodeAt(n))}function qe(e,t){let[n,r,s]=e.keys;e.crcKey0.append([t]),n=~e.crcKey0.get(),r=Ve(i.imul(Ve(r+Be(n)),134775813)+1),e.crcKey2.append([r>>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function Ne(e){const t=2|e.keys[2];return Be(i.imul(t,1^t)>>>8)}function Be(e){return 255&e}function Ve(e){return 4294967295&e}const Pe="deflate-raw";class Oe extends k{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:a,useCompressionStream:i,password:o,passwordVerification:c,encryptionStrength:l,zipCrypto:d,signed:u,level:f}=e,p=this;let h,w,_=Ze(super.readable);a&&!d||!u||([_,h]=_.tee(),h=je(h,new j)),s&&(_=Ye(_,i,{level:f,chunkSize:t},r,n)),a&&(d?_=je(_,new Ie(o,c)):(w=new De(o,l),_=je(_,w))),Xe(p,_,(async()=>{let e;a&&!d&&(e=w.signature),a&&!d||!u||(e=await h.getReader().read(),e=new g(e.value.buffer).getUint32(0)),p.signature=e}))}}class Ke extends k{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:a,password:i,passwordVerification:o,signed:c,signature:l,encryptionStrength:d,compressed:u,useCompressionStream:p}=e;let h,w,_=Ze(super.readable);a&&(s?_=je(_,new Ue(i,o)):(w=new Re(i,c,d),_=je(_,w))),u&&(_=Ye(_,p,{chunkSize:t},r,n)),a&&!s||!c||([_,h]=_.tee(),h=je(h,new j)),Xe(this,_,(async()=>{if((!a||s)&&c){const e=await h.getReader().read(),t=new g(e.value.buffer);if(l!=t.getUint32(0,!1))throw new f(se)}}))}}function Ze(e){return je(e,new k({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function Xe(e,t,r){t=je(t,new k({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Ye(e,t,n,r,s){try{e=je(e,new(t&&r?r:s)(Pe,n))}catch(r){if(!t)throw r;e=je(e,new s(Pe,n))}return e}function je(e,t){return e.pipeThrough(t)}class Ge extends k{constructor(e,t){const n=new e(t);super({transform(e,t){t.enqueue(n.append(e))},flush(e){const t=n.flush();t&&e.enqueue(t)}})}}const Je="deflate",Qe="data";class $e{constructor(e,t,r,s){const{codecType:a}=r;let i;a.startsWith(Je)?i=Oe:a.startsWith("inflate")&&(i=Ke),n.assign(this,{CodecStream:i,readable:e,writable:t,options:r,config:s})}async run(){const{CodecStream:e,readable:t,writable:n,options:r,config:s}=this,a=new e(r,s);let i=0;await t.pipeThrough(a).pipeThrough(new k({transform(e,t){e&&e.length&&(i+=e.length,t.enqueue(e))}})).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:o}=a;return{size:i,signature:o}}}function et(e){return class extends Ge{constructor(t,n){super(e,n)}}}const tt=void 0;let nt=2;try{void 0!==A&&A.hardwareConcurrency&&(nt=A.hardwareConcurrency)}catch(e){}const rt={chunkSize:524288,maxWorkers:nt,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:void 0,CompressionStreamNative:void 0!==D&&D,DecompressionStreamNative:void 0!==E&&E},st=n.assign({},rt);function at(){return st}function it(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:a,useCompressionStream:i,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:d,DecompressionStream:u,workerScripts:p}=e;if(ot("baseURL",n),ot("chunkSize",r),ot("maxWorkers",s),ot("terminateWorkerTimeout",a),ot("useCompressionStream",i),ot("useWebWorkers",o),c&&(st.CompressionStream=et(c)),l&&(st.DecompressionStream=et(l)),ot("CompressionStream",d),ot("DecompressionStream",u),p!==tt){const{deflate:e,inflate:n}=p;if((e||n)&&(st.workerScripts||(st.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");st.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");st.workerScripts.inflate=n}}}function ot(e,t){t!==tt&&(st[e]=t)}let ct,lt=!0,dt=!0;class ut{constructor(e,t,r,s){const{readable:a,writable:i}=t,{options:o,config:c,streamOptions:l,useWebWorkers:d,transferStreams:h,scripts:w}=r;n.assign(e,{busy:!0,readable:a,writable:i,options:n.assign({},o),scripts:w,transferStreams:h,terminate(){e.worker&&!e.busy&&(e.worker.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,s(e)}});const{signal:g,onstart:_,onprogress:y,size:b,onend:x}=l;let v=0;const S={};return _&&(S.start=()=>ft(_,b)),S.transform=async(e,t)=>{v+=e.length,y&&await ft(y,v,b),t.enqueue(e)},S.flush=()=>{a.size=v,x&&ft(x,v)},e.readable=a.pipeThrough(new k(S,{highWaterMark:1,size:()=>c.chunkSize}),{signal:g}),void 0===ct&&(ct="undefined"!=typeof Worker),d&&ct?((e,{baseURL:t,chunkSize:r})=>{const s={type:"module"};if(n.assign(e,{streams:{},result:new m(((t,n)=>{e.resolveResult=t,e.rejectResult=n}))}),!e.interface){if(lt)try{e.worker=i({})}catch(t){lt=!1,e.worker=i(s)}else e.worker=i(s);e.worker.addEventListener("message",(async t=>{const r=t.data,{resolveResult:s,rejectResult:a,onTaskFinished:i}=e,{reader:c,writer:l}=e.streams,{type:d,data:u,messageId:h,result:w}=r,g=r.error;try{if(g){const{message:e,stack:t,code:r,name:s}=g,a=new f(e);n.assign(a,{stack:t,code:r,name:s}),_(a)}else{if("pull"==d){const{value:e,done:t}=await c.read();o({type:Qe,data:e,done:t,messageId:h})}d==Qe&&(await l.ready,await l.write(new p(u)),o({type:"ack",messageId:h})),"close"==d&&_(null,w)}}catch(e){_(e)}function _(e,t){e?a(e):s(t),l&&l.releaseLock(),i()}}),!1),e.interface={async run(){const{readable:t,options:n}=e,s=e.writable.getWriter();let i,c;c=new m((e=>i=e));const l=new R({async write(e){await s.ready,await s.write(new p(e))},async close(){s.releaseLock(),i()},abort(e){s.abort(e)}}),d={type:"start",scripts:e.scripts.slice(1),options:n,config:{chunkSize:r}};e.transferStreams&&dt?o({...d,readable:t,writable:l})||(dt=!1,a(t,l)):(o(d),a(t,l));const u=await e.result;try{await l.close()}catch(e){}return await c,u}}}return e.interface;function a(t,r){n.assign(e.streams,{reader:t.getReader(),writer:r.getWriter()})}function i(n){let r,s;r=e.scripts[0],"function"==typeof r&&(r=r());try{s=new u(r,t)}catch(e){s=r}return new Worker(s,n)}function o(t){const{worker:n,writer:r,onTaskFinished:s}=e;try{let{data:e,readable:r,writable:s}=t;const a=[];if(e){const{buffer:n,length:r}=e;r!=n.byteLength&&(e=new p(e)),t.data=e.buffer,a.push(t.data)}if(r&&a.push(r),s&&a.push(s),a.length)try{return n.postMessage(t,a),!0}catch(e){t.readable=t.writable=null,n.postMessage(t)}else n.postMessage(t)}catch(e){throw r&&r.releaseLock(),s(),e}}})(e,c):((e,t)=>{const n=new $e(e.readable,e.writable,e.options,t),{onTaskFinished:r}=e;return{async run(){try{return await n.run()}finally{r()}}}})(e,c)}}async function ft(e,...t){try{await e(...t)}catch(e){}}let pt=[];const ht=[];let wt=0;function gt(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const _t="HTTP error ",mt="HTTP Range not supported",yt="GET",bt=65536;class xt{constructor(){this.size=0}init(){this.initialized=!0}}class vt extends xt{get readable(){const e=this,{chunkSize:t=bt}=e,n=new z({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:a,diskNumberStart:o}=n,{chunkOffset:c}=this;r.enqueue(await Nt(e,s+c,i.min(t,a-c),o)),c+t>a?r.close():this.chunkOffset+=t}});return n}}class St extends xt{constructor(){super();const e=this,t=new R({write:t=>e.writeUint8Array(t)});n.defineProperty(e,"writable",{get:()=>t})}writeUint8Array(){}}class kt extends vt{constructor(e){super(),this.blob=e,this.size=e.size}async readUint8Array(e,t){return new p(await this.blob.slice(e,e+t).arrayBuffer())}}class zt extends xt{constructor(e){super();const t=new k,r=[];e&&r.push(["content-type",e]),n.defineProperty(this,"writable",{get:()=>t.writable}),this.blob=new d(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Rt extends vt{constructor(e,t){super();const r=this;r.url=e,r.preventHeadRequest=t.preventHeadRequest,r.useRangeHeader=t.useRangeHeader,r.forceRangeRequests=t.forceRangeRequests,r.options=t=n.assign({},t),delete t.preventHeadRequest,delete t.useRangeHeader,delete t.forceRangeRequests,delete t.useXHR}async init(){super.init(),await Et(this,Ht,Ct)}readUint8Array(e,t){return At(this,e,t,Ht,Ct)}}class Dt extends vt{constructor(e,t){super();const n=this;n.url=e,n.preventHeadRequest=t.preventHeadRequest,n.useRangeHeader=t.useRangeHeader,n.forceRangeRequests=t.forceRangeRequests,n.options=t}async init(){super.init(),await Et(this,Mt,Wt)}readUint8Array(e,t){return At(this,e,t,Mt,Wt)}}async function Et(e,t,n){if((e=>{const{baseURL:t}=at(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(e.url)&&(e.useRangeHeader||e.forceRangeRequests)){const r=await t(yt,e,Tt(e));if(!e.forceRangeRequests&&"bytes"!=r.headers.get("Accept-Ranges"))throw new f(mt);{let a;const i=r.headers.get("Content-Range");if(i){const e=i.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=s(t))}}void 0===a?await It(e,t,n):e.size=a}}else await It(e,t,n)}async function At(e,t,n,r,s){if(e.useRangeHeader||e.forceRangeRequests){const s=await r(yt,e,Tt(e,t,n));if(206!=s.status)throw new f(mt);return new p(await s.arrayBuffer())}return e.data||await s(e,e.options),new p(e.data.subarray(t,t+n))}function Tt(e,t=0,r=1){return n.assign({},Ft(e),{Range:"bytes="+t+"-"+(t+r-1)})}function Ft(e){const t=e.options.headers;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Ct(e){await Ut(e,Ht)}async function Wt(e){await Ut(e,Mt)}async function Ut(e,t){const n=await t(yt,e,Ft(e));e.data=new p(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function It(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Ft(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function Ht(e,{options:t,url:r},s){const a=await fetch(r,n.assign({},t,{method:e,headers:s}));if(400>a.status)return a;throw 416==a.status?new f(mt):new f(_t+(a.statusText||a.status))}function Mt(e,{url:t},r){return new m(((s,a)=>{const i=new XMLHttpRequest;if(i.addEventListener("load",(()=>{if(400>i.status){const e=[];i.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)})),s({status:i.status,arrayBuffer:()=>i.response,headers:new c(e)})}else a(416==i.status?new f(mt):new f(_t+(i.statusText||i.status)))}),!1),i.addEventListener("error",(e=>a(e.detail.error)),!1),i.open(e,t),r)for(const e of n.entries(r))i.setRequestHeader(e[0],e[1]);i.responseType="arraybuffer",i.send()}))}class Lt extends vt{constructor(e,t={}){super(),this.url=e,this.reader=t.useXHR?new Dt(e,t):new Rt(e,t)}set size(e){}get size(){return this.reader.size}async init(){super.init(),await this.reader.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}async function qt(e,t){e.init&&!e.initialized&&await e.init(t)}function Nt(e,t,n,r){return e.readUint8Array(t,n,r)}const Bt=4294967295,Vt=65535,Pt=new o(2107,11,31),Ot=new o(1980,0,1),Kt=["filename","rawFilename","directory","encrypted","compressedSize","uncompressedSize","lastModDate","rawLastModDate","comment","rawComment","signature","extraField","rawExtraField","bitFlag","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","filenameUTF8","commentUTF8","offset","zip64","compressionMethod","extraFieldNTFS","lastAccessDate","creationDate","extraFieldExtendedTimestamp","version","versionMadeBy","msDosCompatible","internalFileAttribute","externalFileAttribute"];class Zt{constructor(e){Kt.forEach((t=>this[t]=e[t]))}}const Xt="File already exists",Yt="Zip file comment exceeds 64KB",jt="File entry comment exceeds 64KB",Gt="File entry name exceeds 64KB",Jt="Version exceeds 65535",Qt="The strength must equal 1, 2, or 3",$t="Extra field type exceeds 65535",en="Extra field data exceeds 64KB",tn="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",nn=new p([7,0,2,0,65,69,3,0,0]);let rn=0;const sn=[];async function an(e,t){const n=e.getWriter();await n.ready,e.size+=wn(t),await n.write(t),n.releaseLock()}function on(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function cn(e,t,n){return void 0===t[n]?e.options[n]:t[n]}function ln(e,t,n){e.setUint8(t,n)}function dn(e,t,n){e.setUint16(t,n,!0)}function un(e,t,n){e.setUint32(t,n,!0)}function fn(e,t,n){e.setBigUint64(t,n,!0)}function pn(e,t,n){e.set(t,n)}function hn(e){return new g(e.buffer)}function wn(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}it({Deflate:function(e){const t=new Z,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(i.floor(r/16383)+1);var r;const s=new p(n);let a=e?e.level:-1;void 0===a&&(a=-1),t.deflateInit(a),t.next_out=s,this.append=(e,r)=>{let a,i,o=0,c=0,l=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,a=t.deflate(0),0!=a)throw new f("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?d.push(new p(s)):d.push(s.slice(0,t.next_out_index))),l+=t.next_out_index,r&&t.next_in_index>0&&t.next_in_index!=o&&(r(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(i=new p(l),d.forEach((e=>{i.set(e,c),c+=e.length}))):i=d[0]||new p,i}},this.flush=()=>{let e,r,a=0,i=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw new f("deflating: "+t.msg);n-t.avail_out>0&&o.push(s.slice(0,t.next_out_index)),i+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new p(i),o.forEach((e=>{r.set(e,a),a+=e.length})),r}}}),e.BlobReader=kt,e.BlobWriter=zt,e.Data64URIReader=class extends vt{constructor(e){super();const t=this;t.dataURI=e;let n=e.length;for(;"="==e.charAt(n-1);)n--;t.dataStart=e.indexOf(",")+1,t.size=i.floor(.75*(n-t.dataStart))}readUint8Array(e,t){const n=new p(t),r=4*i.floor(e/3),s=this.dataStart,a=atob(this.dataURI.substring(r+s,4*i.ceil((e+t)/3)+s)),o=e-3*i.floor(r/4);for(let e=o;o+t>e;e++)n[e-o]=a.charCodeAt(e);return n}},e.Data64URIWriter=class extends St{constructor(e){super(),this.data="data:"+(e||"")+";base64,",this.pending=[]}writeUint8Array(e){const t=this;let n=0,s=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*i.floor((a+e.length)/3)-a;n++)s+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.pending+=r.fromCharCode(e[n]);s.length>2?t.data+=S(s):t.pending=s}getData(){return this.data+S(this.pending)}},e.ERR_DUPLICATED_NAME=Xt,e.ERR_HTTP_RANGE=mt,e.ERR_INVALID_COMMENT=Yt,e.ERR_INVALID_ENCRYPTION_STRENGTH=Qt,e.ERR_INVALID_ENTRY_COMMENT=jt,e.ERR_INVALID_ENTRY_NAME=Gt,e.ERR_INVALID_EXTRAFIELD_DATA=en,e.ERR_INVALID_EXTRAFIELD_TYPE=$t,e.ERR_INVALID_VERSION=Jt,e.ERR_UNSUPPORTED_FORMAT=tn,e.HttpRangeReader=class extends Lt{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Lt,e.Reader=vt,e.SplitZipReader=class extends vt{constructor(e){super(),this.readers=e}async init(){super.init();const e=this,{readers:t}=e;e.lastDiskNumber=0,await m.all(t.map((async t=>{await t.init(),e.size+=t.size})))}async readUint8Array(e,t,n=0){const r=this,{readers:s}=this;let a,o=n;-1==o&&(o=s.length-1);let c=e;for(;c>=s[o].size;)c-=s[o].size,o++;const l=s[o],d=l.size;if(c+t>d){const s=d-c;a=new p(t),a.set(await Nt(l,c,s)),a.set(await r.readUint8Array(e+s,t-s,n),s)}else a=await Nt(l,c,t);return r.lastDiskNumber=i.max(o,r.lastDiskNumber),a}},e.TextReader=class extends kt{constructor(e){super(new _([e],{type:"text/plain"}))}},e.TextWriter=class extends zt{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,n=await super.getData();if(n.text&&t)return n.text();{const t=new FileReader;return new m(((r,s)=>{t.onload=({target:e})=>r(e.result),t.onerror=()=>s(t.error),t.readAsText(n,e)}))}}},e.Uint8ArrayReader=class extends vt{constructor(e){super(),this.array=e,this.size=e.length}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends St{init(e=0){super.init(),this.offset=0,this.array=new p(e)}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new p(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=St,e.ZipWriter=class{constructor(e,t={}){e instanceof R&&(e={writable:e}),void 0===e.writable.size&&(e.writable.size=0),n.assign(this,{writer:e,options:t,config:at(),files:new c,filenames:new l,offset:e.writable.size,pendingEntriesSize:0,pendingAddFileCalls:new l})}async add(e="",r,c={}){const l=this,{pendingAddFileCalls:d,config:u}=l;let _;rn<u.maxWorkers?rn++:await new m((e=>sn.push(e)));try{if(e=e.trim(),l.filenames.has(e))throw new f(Xt);return l.filenames.add(e),_=(async(e,r,c,l)=>{r=r.trim(),l.directory&&!r.endsWith("/")?r+="/":l.directory=r.endsWith("/");const d=G(r);if(wn(d)>Vt)throw new f(Gt);const u=l.comment||"",_=G(u);if(wn(_)>Vt)throw new f(jt);const y=e.options.version||l.version||0;if(y>Vt)throw new f(Jt);const b=e.options.versionMadeBy||l.versionMadeBy||20;if(b>Vt)throw new f(Jt);const x=cn(e,l,"lastModDate")||new o,v=cn(e,l,"lastAccessDate"),S=cn(e,l,"creationDate"),k=cn(e,l,"password"),R=cn(e,l,"encryptionStrength")||3,D=cn(e,l,"zipCrypto");if(void 0!==k&&void 0!==R&&(1>R||R>3))throw new f(Qt);let E=new p;const{extraField:A}=l;if(A){let e=0,t=0;A.forEach((t=>e+=4+wn(t))),E=new p(e),A.forEach(((e,n)=>{if(n>Vt)throw new f($t);if(wn(e)>Vt)throw new f(en);pn(E,new h([n]),t),pn(E,new h([wn(e)]),t+2),pn(E,e,t+4),t+=4+wn(e)}))}let T=cn(e,l,"extendedTimestamp");void 0===T&&(T=!0);let F=0,C=0,W=cn(e,l,"keepOrder");void 0===W&&(W=!0);let U=0,I=cn(e,l,"msDosCompatible");void 0===I&&(I=!0);const H=cn(e,l,"internalFileAttribute")||0,M=cn(e,l,"externalFileAttribute")||0;let L=cn(e,l,"zip64");if(c&&(c instanceof z&&(c={readable:c}),await qt(c),void 0===c.size?(l.dataDescriptor=!0,void 0===L&&(L=!0)):U=c.size,F=(e=>e+5*(i.floor(e/16383)+1))(U)),e.offset+e.pendingEntriesSize>=Bt||U>=Bt||F>=Bt){if(!1===L||!W)throw new f(tn);L=!0}L=L||!1;const q=cn(e,l,"level"),N=cn(e,l,"useWebWorkers"),B=cn(e,l,"bufferedWrite");let V=cn(e,l,"dataDescriptor"),P=cn(e,l,"dataDescriptorSignature");const O=cn(e,l,"signal"),K=cn(e,l,"useCompressionStream");void 0===V&&(V=!0),V&&void 0===P&&(P=!1);const Z=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,password:a,level:o,zip64:c,zipCrypto:l,dataDescriptor:d,directory:u,rawExtraField:f,encryptionStrength:h,extendedTimestamp:g}=e,_=0!==o&&!u,m=!(!a||!wn(a));let y,b,x;if(m&&!l){y=new p(wn(nn)+2);const e=hn(y);dn(e,0,39169),pn(y,nn,2),ln(e,8,h)}else y=new p;if(g){x=new p(9+(r?4:0)+(s?4:0));const e=hn(x);dn(e,0,21589),dn(e,2,wn(x)-4),ln(e,4,1+(r?2:0)+(s?4:0)),un(e,5,i.floor(n.getTime()/1e3)),r&&un(e,9,i.floor(r.getTime()/1e3)),s&&un(e,13,i.floor(s.getTime()/1e3));try{b=new p(36);const e=hn(b),t=on(n);dn(e,0,10),dn(e,2,32),dn(e,8,1),dn(e,10,24),fn(e,12,t),fn(e,20,on(r)||t),fn(e,28,on(s)||t)}catch(e){b=new p}}else b=x=new p;let v=2048;d&&(v|=8);let S=0;_&&(S=8);let k=e.version||20;c&&(k=k>45?k:45),m&&(v|=1,l||(k=k>51?k:51,S=99,_&&(y[9]=8)));const z=new p(26),R=hn(z);dn(R,0,k),dn(R,2,v),dn(R,4,S);const D=new w(1),E=hn(D);let A;A=Ot>n?Ot:n>Pt?Pt:n,dn(E,0,(A.getHours()<<6|A.getMinutes())<<5|A.getSeconds()/2),dn(E,2,(A.getFullYear()-1980<<4|A.getMonth()+1)<<5|A.getDate());const T=D[0];un(R,6,T),dn(R,22,wn(t));const F=wn(y,x,b,f);dn(R,24,F);const C=new p(30+wn(t)+F);return un(hn(C),0,67324752),pn(C,z,4),pn(C,t,30),pn(C,y,30+wn(t)),pn(C,x,30+wn(t,y)),pn(C,b,30+wn(t,y,x)),pn(C,f,30+wn(t,y,x,b)),{localHeaderArray:C,headerArray:z,headerView:R,lastModDate:n,rawLastModDate:T,encrypted:m,compressed:_,version:k,compressionMethod:S,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:b,rawExtraFieldAES:y}})(l=n.assign({},l,{rawFilename:d,rawComment:_,version:y,versionMadeBy:b,lastModDate:x,lastAccessDate:v,creationDate:S,rawExtraField:E,zip64:L,password:k,level:q,useWebWorkers:N,encryptionStrength:R,extendedTimestamp:T,zipCrypto:D,bufferedWrite:B,keepOrder:W,dataDescriptor:V,dataDescriptorSignature:P,signal:O,msDosCompatible:I,internalFileAttribute:H,externalFileAttribute:M,useCompressionStream:K})),X=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let s,a=new p,i=0;return n&&(a=new p(t?r?24:20:r?16:12),s=hn(a),r&&(i=4,un(s,0,134695760))),{dataDescriptorArray:a,dataDescriptorView:s,dataDescriptorOffset:i}})(l);let Y;C=wn(Z.localHeaderArray,X.dataDescriptorArray)+F,e.pendingEntriesSize+=C;try{Y=await(async(e,r,o,c,l)=>{const{files:d,writer:u}=e,{keepOrder:h,dataDescriptor:w,zipCrypto:_,signal:y}=l,b=t.from(d.values()).pop();let x,v,S,k,z,R,D={};d.set(r,D);try{let t;if(h&&(t=b&&b.lock,D.lock=new m((e=>S=e))),l.bufferedWrite||e.lockWriter||!w?(R=new zt,R.writable.size=0,x=!0,await qt(u)):(R=u,e.lockWriter=m.resolve(),v=()=>delete e.lockWriter),await qt(R),x||await t,z=!0,D=await(async(e,t,r,o,c,l)=>{const{headerInfo:d,dataDescriptorInfo:u}=o,{localHeaderArray:f,headerArray:h,lastModDate:w,rawLastModDate:g,encrypted:_,compressed:y,version:b,compressionMethod:x,rawExtraFieldExtendedTimestamp:v,rawExtraFieldNTFS:S,rawExtraFieldAES:k}=d,{dataDescriptorArray:z}=u,{rawFilename:R,lastAccessDate:D,creationDate:E,password:A,level:T,zip64:F,zipCrypto:C,dataDescriptor:W,directory:U,versionMadeBy:I,rawComment:H,rawExtraField:M,useWebWorkers:L,onstart:q,onprogress:N,onend:B,signal:V,encryptionStrength:P,extendedTimestamp:O,msDosCompatible:K,internalFileAttribute:Z,externalFileAttribute:X,useCompressionStream:Y}=l,j={lock:r.lock,versionMadeBy:I,zip64:F,directory:!!U,filenameUTF8:!0,rawFilename:R,commentUTF8:!0,rawComment:H,rawExtraFieldExtendedTimestamp:v,rawExtraFieldNTFS:S,rawExtraFieldAES:k,rawExtraField:M,extendedTimestamp:O,msDosCompatible:K,internalFileAttribute:Z,externalFileAttribute:X};let G,J=0,Q=0;const{writable:$}=t;if(e){e.chunkSize=(e=>i.max(e.chunkSize,64))(c),await an($,f);const t=e.readable,n=t.size=e.size,r={options:{codecType:Je,level:T,password:A,encryptionStrength:P,zipCrypto:_&&C,passwordVerification:_&&C&&g>>8&255,signed:!0,compressed:y,encrypted:_,useWebWorkers:L,useCompressionStream:Y,transferStreams:!1},config:c,streamOptions:{signal:V,size:n,onstart:q,onprogress:N,onend:B}},a=await(async(e,t)=>{const{options:n,config:r}=t,{transferStreams:a,useWebWorkers:i,useCompressionStream:o,codecType:c,compressed:l,signed:d,encrypted:u}=n,{workerScripts:f}=r;t.transferStreams=a||void 0===a;const p=!(l||d||u||t.transferStreams);let h;if(t.useWebWorkers=!p&&(i||void 0===i&&r.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[c]:[],n.useCompressionStream=o||void 0===o&&r.useCompressionStream,pt.length<r.maxWorkers){const n={indexWorker:wt};wt++,pt.push(n),h=new ut(n,e,t,w)}else{const n=pt.find((e=>!e.busy));n?(gt(n),h=new ut(n,e,t,w)):h=await new m((n=>ht.push({resolve:n,stream:e,workerOptions:t})))}return h.run();function w(e){if(ht.length){const[{resolve:t,stream:n,workerOptions:r}]=ht.splice(0,1);t(new ut(e,n,r,w))}else if(e.worker){const{terminateWorkerTimeout:t}=r;gt(e),s.isFinite(t)&&t>=0&&(e.terminateTimeout=setTimeout((()=>{pt=pt.filter((t=>t!=e)),e.terminate()}),t))}else pt=pt.filter((t=>t!=e))}})({readable:t,writable:$},r);$.size+=a.size,G=a.signature,J=e.size=t.size,Q=a.size}else await an($,f);const ee=F?new p(28):new p;return e&&((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:s,uncompressedSize:i,headerInfo:o,dataDescriptorInfo:c}=e,{headerView:l,encrypted:d}=o,{dataDescriptorView:u,dataDescriptorOffset:f}=c,{zip64:p,zipCrypto:h,dataDescriptor:w}=t;if(d&&!h||void 0===n||(un(l,10,n),w&&un(u,f,n)),p){const e=hn(r);dn(e,0,1),dn(e,2,24),un(l,14,Bt),fn(e,12,a(s)),un(l,18,Bt),fn(e,4,a(i)),w&&(fn(u,f+4,a(s)),fn(u,f+12,a(i)))}else un(l,14,s),un(l,18,i),w&&(un(u,f+4,s),un(u,f+8,i))})({signature:G,rawExtraFieldZip64:ee,compressedSize:Q,uncompressedSize:J,headerInfo:d,dataDescriptorInfo:u},l),W&&await an($,z),n.assign(j,{compressedSize:Q,lastModDate:w,rawLastModDate:g,creationDate:E,lastAccessDate:D,encrypted:_,length:wn(f,z)+Q,compressionMethod:x,version:b,headerArray:h,signature:G,rawExtraFieldZip64:ee}),j})(o,R,D,c,e.config,l),z=!1,d.set(r,D),D.filename=r,x){await R.writable.close();let n=await R.getData();await t,await async function t(){const{lockWriter:n}=e;if(n)return await n.then((()=>delete e.lockWriter)),t();e.lockWriter=new m((e=>v=e))}(),k=!0;const{writable:r}=u;if(!w){const e=await(e=>e.slice(0,26).arrayBuffer())(n),t=new g(e);D.encrypted&&!_||un(t,14,D.signature),D.zip64?(un(t,18,Bt),un(t,22,Bt)):(un(t,18,D.compressedSize),un(t,22,D.uncompressedSize)),await an(r,new p(e)),n=n.slice(e.byteLength)}await n.stream().pipeTo(r,{preventClose:!0,signal:y}),k=!1}if(D.offset=e.offset,D.zip64)fn(hn(D.rawExtraFieldZip64),20,a(D.offset));else if(D.offset>=Bt)throw new f(tn);return e.offset+=D.length,D}catch(t){throw(x&&k||!x&&z)&&(e.hasCorruptedEntries=!0,t&&(t.corruptedEntry=!0),x?e.offset+=R.writable.size:e.offset=R.writable.size),d.delete(r),t}finally{S&&S(),v&&v()}})(e,r,c,{headerInfo:Z,dataDescriptorInfo:X},l)}catch(t){throw!t.corruptedEntry&&C&&(e.pendingEntriesSize-=C),t}return n.assign(Y,{name:r,comment:u,extraField:A}),new Zt(Y)})(l,e,r,c),d.add(_),await _}catch(t){throw l.filenames.delete(e),t}finally{d.delete(_);const e=sn.shift();e?e():rn--}}async close(e=new p,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await m.all(t.from(r));return await(async(e,n,r)=>{const{files:s}=e;let o=0,c=0,l=e.offset,d=s.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:r,rawComment:a,rawExtraFieldExtendedTimestamp:i,rawExtraFieldNTFS:o}]of s)c+=46+wn(e,a,t,n,i,o,r);let u=r.zip64||e.options.zip64||!1;if(l>=Bt||c>=Bt||d>=Vt){if(!1===r.zip64||!1===e.options.zip64)throw new f(tn);u=!0}const h=new p(c+(u?98:22)),w=hn(h);for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:c,rawExtraFieldAES:l,rawExtraFieldNTFS:d,rawExtraField:u,rawComment:f,versionMadeBy:g,headerArray:_,directory:m,zip64:y,msDosCompatible:b,internalFileAttribute:x,externalFileAttribute:v,extendedTimestamp:S,lastModDate:k}=n;let z;if(S){z=new p(9);const e=hn(z);dn(e,0,21589),dn(e,2,wn(z)-4),ln(e,4,1),un(e,5,i.floor(k.getTime()/1e3))}else z=new p;const R=wn(c,l,z,d,u);if(un(w,o,33639248),dn(w,o+4,g),pn(h,_,o+6),dn(w,o+30,R),dn(w,o+32,wn(f)),dn(w,o+36,x),v?un(w,o+38,v):m&&b&&ln(w,o+38,16),un(w,o+42,y?Bt:t),pn(h,a,o+46),pn(h,c,o+46+wn(a)),pn(h,l,o+46+wn(a,c)),pn(h,z,o+46+wn(a,c,l)),pn(h,d,o+46+wn(a,c,l,z)),pn(h,u,o+46+wn(a,c,l,z,d)),pn(h,f,o+46+wn(a)+R),o+=46+wn(a,f)+R,r.onprogress)try{await r.onprogress(e+1,s.size,new Zt(n))}catch(e){}}u&&(un(w,o,101075792),fn(w,o+4,a(44)),dn(w,o+12,45),dn(w,o+14,45),fn(w,o+24,a(d)),fn(w,o+32,a(d)),fn(w,o+40,a(c)),fn(w,o+48,a(l)),un(w,o+56,117853008),fn(w,o+64,a(l)+a(c)),un(w,o+72,1),d=Vt,l=Bt,c=Bt,o+=76),un(w,o,101010256),dn(w,o+8,d),dn(w,o+10,d),un(w,o+12,c),un(w,o+16,l);const g=wn(n);if(g){if(g>Vt)throw new f(Yt);dn(w,o+20,g)}const{writable:_}=e.writer;await qt(e.writer),await an(_,h),g&&await an(_,n)})(this,e,n),s.preventClose||n.preventClose||await o.close(),s.getData?s.getData():o}},e.configure=it,e.getMimeType=()=>"application/octet-stream",e.initStream=qt,e.readUint8Array=Nt,e.terminateWorkers=()=>{pt.forEach((e=>{gt(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})}));
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:s,BigInt:a,Math:i,Date:o,Map:c,Set:l,Response:d,URL:u,Error:f,Uint8Array:p,Uint16Array:h,Uint32Array:w,DataView:g,Blob:_,Promise:m,TextEncoder:y,TextDecoder:b,document:x,crypto:S,btoa:k,TransformStream:z,ReadableStream:v,WritableStream:R,CompressionStream:D,DecompressionStream:E,navigator:A}="undefined"!=typeof globalThis?globalThis:this||self,T=-2;function F(e){return C(e.map((([e,n])=>new t(e).fill(n,0,e))))}function C(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?C(n):n)),[])}const W=[0,1,2,3].concat(...F([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function U(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,s=e.stat_desc.static_tree,a=e.stat_desc.elems;let o,c,l,d=-1;for(n.heap_len=0,n.heap_max=573,o=0;a>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=d=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)l=n.heap[++n.heap_len]=2>d?++d:0,r[2*l]=1,n.depth[l]=0,n.opt_len--,s&&(n.static_len-=s[2*l+1]);for(e.max_code=d,o=i.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);l=a;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),c=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=c,r[2*l]=r[2*o]+r[2*c],n.depth[l]=i.max(n.depth[o],n.depth[c])+1,r[2*o+1]=r[2*c+1]=l,n.heap[1]=l++,n.pqdownheap(r,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,r=e.stat_desc.static_tree,s=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,i=e.stat_desc.max_length;let o,c,l,d,u,f,p=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)c=t.heap[o],d=n[2*n[2*c+1]+1]+1,d>i&&(d=i,p++),n[2*c+1]=d,c>e.max_code||(t.bl_count[d]++,u=0,a>c||(u=s[c-a]),f=n[2*c],t.opt_len+=f*(d+u),r&&(t.static_len+=f*(r[2*c+1]+u)));if(0!==p){do{for(d=i-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[i]--,p-=2}while(p>0);for(d=i;0!==d;d--)for(c=t.bl_count[d];0!==c;)l=t.heap[--o],l>e.max_code||(n[2*l+1]!=d&&(t.opt_len+=(d-n[2*l+1])*n[2*l],n[2*l+1]=d),c--)}})(n),((e,n,r)=>{const s=[];let a,i,o,c=0;for(a=1;15>=a;a++)s[a]=c=c+r[a-1]<<1;for(i=0;n>=i;i++)o=e[2*i+1],0!==o&&(e[2*i]=t(s[o]++,o))})(r,e.max_code,n.bl_count)}}function I(e,t,n,r,s){const a=this;a.static_tree=e,a.extra_bits=t,a.extra_base=n,a.elems=r,a.max_length=s}U._length_code=[0,1,2,3,4,5,6,7].concat(...F([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),U.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],U.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],U.d_code=e=>256>e?W[e]:W[256+(e>>>7)],U.extra_lbits=[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],U.extra_dbits=[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],U.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],U.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const M=F([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=C([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,M[t]])));const H=F([[30,5]]);function L(e,t,n,r,s){const a=this;a.good_length=e,a.max_lazy=t,a.nice_length=n,a.max_chain=r,a.func=s}I.static_dtree=C([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,H[t]]))),I.static_l_desc=new I(I.static_ltree,U.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,U.extra_dbits,0,30,15),I.static_bl_desc=new I(null,U.extra_blbits,0,19,7);const N=[new L(0,0,0,0,0),new L(4,4,8,4,1),new L(4,5,16,8,1),new L(4,6,32,32,1),new L(4,4,16,16,2),new L(8,16,32,32,2),new L(8,16,128,128,2),new L(8,32,128,256,2),new L(32,128,258,1024,2),new L(32,258,258,4096,2)],B=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],q=113,V=666,P=262;function O(e,t,n,r){const s=e[2*t],a=e[2*n];return a>s||s==a&&r[t]<=r[n]}function K(){const e=this;let t,n,r,s,a,o,c,l,d,u,f,w,g,_,m,y,b,x,S,k,z,v,R,D,E,A,F,C,W,M,H,L,K;const Z=new U,X=new U,Y=new U;let j,G,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)H[2*t]=0;for(t=0;30>t;t++)L[2*t]=0;for(t=0;19>t;t++)K[2*t]=0;H[512]=1,e.opt_len=e.static_len=0,G=J=0}function ne(e,t){let n,r=-1,s=e[1],a=0,i=7,o=4;0===s&&(i=138,o=3),e[2*(t+1)+1]=65535;for(let c=0;t>=c;c++)n=s,s=e[2*(c+1)+1],++a<i&&n==s||(o>a?K[2*n]+=a:0!==n?(n!=r&&K[2*n]++,K[32]++):a>10?K[36]++:K[34]++,a=0,r=n,0===s?(i=138,o=3):n==s?(i=6,o=3):(i=7,o=4))}function re(t){e.pending_buf[e.pending++]=t}function se(e){re(255&e),re(e>>>8&255)}function ae(e,t){let n;const r=t;ee>16-r?(n=e,$|=n<<ee&65535,se($),$=n>>>16-ee,ee+=r-16):($|=e<<ee&65535,ee+=r)}function ie(e,t){const n=2*e;ae(65535&t[n],65535&t[n+1])}function oe(e,t){let n,r,s=-1,a=e[1],i=0,o=7,c=4;for(0===a&&(o=138,c=3),n=0;t>=n;n++)if(r=a,a=e[2*(n+1)+1],++i>=o||r!=a){if(c>i)do{ie(r,K)}while(0!=--i);else 0!==r?(r!=s&&(ie(r,K),i--),ie(16,K),ae(i-3,2)):i>10?(ie(18,K),ae(i-11,7)):(ie(17,K),ae(i-3,3));i=0,s=r,0===a?(o=138,c=3):r==a?(o=6,c=3):(o=7,c=4)}}function ce(){16==ee?(se($),$=0,ee=0):8>ee||(re(255&$),$>>>=8,ee-=8)}function le(t,n){let r,s,a;if(e.dist_buf[G]=t,e.lc_buf[G]=255&n,G++,0===t?H[2*n]++:(J++,t--,H[2*(U._length_code[n]+256+1)]++,L[2*U.d_code(t)]++),0==(8191&G)&&F>2){for(r=8*G,s=z-b,a=0;30>a;a++)r+=L[2*a]*(5+U.extra_dbits[a]);if(r>>>=3,J<i.floor(G/2)&&r<i.floor(s/2))return!0}return G==j-1}function de(t,n){let r,s,a,i,o=0;if(0!==G)do{r=e.dist_buf[o],s=e.lc_buf[o],o++,0===r?ie(s,t):(a=U._length_code[s],ie(a+256+1,t),i=U.extra_lbits[a],0!==i&&(s-=U.base_length[a],ae(s,i)),r--,a=U.d_code(r),ie(a,n),i=U.extra_dbits[a],0!==i&&(r-=U.base_dist[a],ae(r,i)))}while(G>o);ie(256,t),Q=t[513]}function ue(){ee>8?se($):ee>0&&re(255&$),$=0,ee=0}function fe(t,n,r){ae(0+(r?1:0),3),((t,n)=>{ue(),Q=8,se(n),se(~n),e.pending_buf.set(l.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function pe(n){((t,n,r)=>{let s,a,i=0;F>0?(Z.build_tree(e),X.build_tree(e),i=(()=>{let t;for(ne(H,Z.max_code),ne(L,X.max_code),Y.build_tree(e),t=18;t>=3&&0===K[2*U.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),s=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a>s||(s=a)):s=a=n+5,n+4>s||-1==t?a==s?(ae(2+(r?1:0),3),de(I.static_ltree,I.static_dtree)):(ae(4+(r?1:0),3),((e,t,n)=>{let r;for(ae(e-257,5),ae(t-1,5),ae(n-4,4),r=0;n>r;r++)ae(K[2*U.bl_order[r]+1],3);oe(H,e-1),oe(L,t-1)})(Z.max_code+1,X.max_code+1,i+1),de(H,L)):fe(t,n,r),te(),r&&ue()})(0>b?-1:b,z-b,n),b=z,t.flush_pending()}function he(){let e,n,r,s;do{if(s=d-R-z,0===s&&0===z&&0===R)s=a;else if(-1==s)s--;else if(z>=a+a-P){l.set(l.subarray(a,a+a),0),v-=a,z-=a,b-=a,e=g,r=e;do{n=65535&f[--r],f[r]=a>n?0:n-a}while(0!=--e);e=a,r=e;do{n=65535&u[--r],u[r]=a>n?0:n-a}while(0!=--e);s+=a}if(0===t.avail_in)return;e=t.read_buf(l,z+R,s),R+=e,3>R||(w=255&l[z],w=(w<<y^255&l[z+1])&m)}while(P>R&&0!==t.avail_in)}function we(e){let t,n,r=E,s=z,i=D;const o=z>a-P?z-(a-P):0;let d=M;const f=c,p=z+258;let h=l[s+i-1],w=l[s+i];W>D||(r>>=2),d>R&&(d=R);do{if(t=e,l[t+i]==w&&l[t+i-1]==h&&l[t]==l[s]&&l[++t]==l[s+1]){s+=2,t++;do{}while(l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&p>s);if(n=258-(p-s),s=p-258,n>i){if(v=e,i=n,n>=d)break;h=l[s+i-1],w=l[s+i]}}}while((e=65535&u[e&f])>o&&0!=--r);return i>R?R:i}e.depth=[],e.bl_count=[],e.heap=[],H=[],L=[],K=[],e.pqdownheap=(t,n)=>{const r=e.heap,s=r[n];let a=n<<1;for(;a<=e.heap_len&&(a<e.heap_len&&O(t,r[a+1],r[a],e.depth)&&a++,!O(t,s,r[a],e.depth));)r[n]=r[a],n=a,a<<=1;r[n]=s},e.deflateInit=(t,S,v,U,B,V)=>(U||(U=8),B||(B=8),V||(V=0),t.msg=null,-1==S&&(S=6),1>B||B>9||8!=U||9>v||v>15||0>S||S>9||0>V||V>2?T:(t.dstate=e,o=v,a=1<<o,c=a-1,_=B+7,g=1<<_,m=g-1,y=i.floor((_+3-1)/3),l=new p(2*a),u=[],f=[],j=1<<B+6,e.pending_buf=new p(4*j),r=4*j,e.dist_buf=new h(j),e.lc_buf=new p(j),F=S,C=V,(t=>(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=q,s=0,Z.dyn_tree=H,Z.stat_desc=I.static_l_desc,X.dyn_tree=L,X.stat_desc=I.static_d_desc,Y.dyn_tree=K,Y.stat_desc=I.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*a,f[g-1]=0;for(let e=0;g-1>e;e++)f[e]=0;A=N[F].max_lazy,W=N[F].good_length,M=N[F].nice_length,E=N[F].max_chain,z=0,b=0,R=0,x=D=2,k=0,w=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=q&&n!=V?T:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,l=null,e.dstate=null,n==q?-3:0),e.deflateParams=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?T:(N[F].func!=N[t].func&&0!==e.total_in&&(r=e.deflate(1)),F!=t&&(F=t,A=N[F].max_lazy,W=N[F].good_length,M=N[F].nice_length,E=N[F].max_chain),C=n,r)},e.deflateSetDictionary=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return T;if(3>i)return 0;for(i>a-P&&(i=a-P,o=r-i),l.set(t.subarray(o,o+i),0),z=i,b=i,w=255&l[0],w=(w<<y^255&l[1])&m,s=0;i-3>=s;s++)w=(w<<y^255&l[s+2])&m,u[s&c]=f[w],f[w]=s;return 0},e.deflate=(i,d)=>{let p,h,_,E,W;if(d>4||0>d)return T;if(!i.next_out||!i.next_in&&0!==i.avail_in||n==V&&4!=d)return i.msg=B[4],T;if(0===i.avail_out)return i.msg=B[7],-5;var U;if(t=i,E=s,s=d,42==n&&(h=8+(o-8<<4)<<8,_=(F-1&255)>>1,_>3&&(_=3),h|=_<<6,0!==z&&(h|=32),h+=31-h%31,n=q,re((U=h)>>8&255),re(255&U)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return s=-1,0}else if(0===t.avail_in&&E>=d&&4!=d)return t.msg=B[7],-5;if(n==V&&0!==t.avail_in)return i.msg=B[7],-5;if(0!==t.avail_in||0!==R||0!=d&&n!=V){switch(W=-1,N[F].func){case 0:W=(e=>{let n,s=65535;for(s>r-5&&(s=r-5);;){if(1>=R){if(he(),0===R&&0==e)return 0;if(0===R)break}if(z+=R,R=0,n=b+s,(0===z||z>=n)&&(R=z-n,z=n,pe(!1),0===t.avail_out))return 0;if(z-b>=a-P&&(pe(!1),0===t.avail_out))return 0}return pe(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 1:W=(e=>{let n,r=0;for(;;){if(P>R){if(he(),P>R&&0==e)return 0;if(0===R)break}if(3>R||(w=(w<<y^255&l[z+2])&m,r=65535&f[w],u[z&c]=f[w],f[w]=z),0===r||(z-r&65535)>a-P||2!=C&&(x=we(r)),3>x)n=le(0,255&l[z]),R--,z++;else if(n=le(z-v,x-3),R-=x,x>A||3>R)z+=x,x=0,w=255&l[z],w=(w<<y^255&l[z+1])&m;else{x--;do{z++,w=(w<<y^255&l[z+2])&m,r=65535&f[w],u[z&c]=f[w],f[w]=z}while(0!=--x);z++}if(n&&(pe(!1),0===t.avail_out))return 0}return pe(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 2:W=(e=>{let n,r,s=0;for(;;){if(P>R){if(he(),P>R&&0==e)return 0;if(0===R)break}if(3>R||(w=(w<<y^255&l[z+2])&m,s=65535&f[w],u[z&c]=f[w],f[w]=z),D=x,S=v,x=2,0!==s&&A>D&&a-P>=(z-s&65535)&&(2!=C&&(x=we(s)),5>=x&&(1==C||3==x&&z-v>4096)&&(x=2)),3>D||x>D)if(0!==k){if(n=le(0,255&l[z-1]),n&&pe(!1),z++,R--,0===t.avail_out)return 0}else k=1,z++,R--;else{r=z+R-3,n=le(z-1-S,D-3),R-=D-1,D-=2;do{++z>r||(w=(w<<y^255&l[z+2])&m,s=65535&f[w],u[z&c]=f[w],f[w]=z)}while(0!=--D);if(k=0,x=2,z++,n&&(pe(!1),0===t.avail_out))return 0}}return 0!==k&&(n=le(0,255&l[z-1]),k=0),pe(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d)}if(2!=W&&3!=W||(n=V),0==W||2==W)return 0===t.avail_out&&(s=-1),0;if(1==W){if(1==d)ae(2,3),ie(256,I.static_ltree),ce(),9>1+Q+10-ee&&(ae(2,3),ie(256,I.static_ltree),ce()),Q=7;else if(fe(0,0,!1),3==d)for(p=0;g>p;p++)f[p]=0;if(t.flush_pending(),0===t.avail_out)return s=-1,0}}return 4!=d?0:1}}function Z(){const e=this;e.next_in_index=0,e.next_out_index=0,e.avail_in=0,e.total_in=0,e.avail_out=0,e.total_out=0}Z.prototype={deflateInit(e,t){const n=this;return n.dstate=new K,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):T},deflateEnd(){const e=this;if(!e.dstate)return T;const t=e.dstate.deflateEnd();return e.dstate=null,t},deflateParams(e,t){const n=this;return n.dstate?n.dstate.deflateParams(n,e,t):T},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):T},read_buf(e,t,n){const r=this;let s=r.avail_in;return s>n&&(s=n),0===s?0:(r.avail_in-=s,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+s),t),r.next_in_index+=s,r.total_in+=s,s)},flush_pending(){const e=this;let t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),0!==t&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,0===e.dstate.pending&&(e.dstate.pending_out=0))}};const X=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;X[e]=t}class Y{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^X[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class j extends z{constructor(){const e=new Y;super({transform(t){e.append(t)},flush(t){const n=new p(4);new g(n.buffer).setUint32(0,e.get()),t.enqueue(n)}})}}function G(e){if(void 0===y){const t=new p((e=unescape(encodeURIComponent(e))).length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new y).encode(e)}const J={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=J.getPartial(n);return 32===r?e.concat(t):J._shiftRight(t,r,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+J.getPartial(n)},clamp(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,i.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=J.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>i.round(e/1099511627776)||32,_shiftRight(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s<e.length;s++)r.push(n|e[s]>>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,a=J.getPartial(s);return r.push(J.partial(t+a&31,t+a>32?n:r.pop(),1)),r}},Q={bytes:{fromBits(e){const t=J.bitLength(e)/8,n=new p(t);let r;for(let s=0;t>s;s++)0==(3&s)&&(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],3==(3&n)&&(t.push(r),r=0);return 3&n&&t.push(J.partial(8*(3&n),r)),t}}},$={sha1:function(e){e?(this._h=e._h.slice(0),this._buffer=e._buffer.slice(0),this._length=e._length):this.reset()}};$.sha1.prototype={blockSize:512,reset(){const e=this;return e._h=this._init.slice(0),e._buffer=[],e._length=0,e},update(e){const t=this;"string"==typeof e&&(e=Q.utf8String.toBits(e));const n=t._buffer=J.concat(t._buffer,e),r=t._length,s=t._length=r+J.bitLength(e);if(s>9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new w(n);let i=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);s>=e;e+=t.blockSize)t._block(a.subarray(16*i,16*(i+1))),i+=1;return n.splice(0,16*i),t},finalize(){const e=this;let t=e._buffer;const n=e._h;t=J.concat(t,[J.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(i.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n},_init:[1732584193,4023233417,2562383102,271733878,3285377520],_key:[1518500249,1859775393,2400959708,3395469782],_f:(e,t,n,r)=>e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r,_S:(e,t)=>t<<e|t>>>32-e,_block(e){const n=this,r=n._h,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let a=r[0],o=r[1],c=r[2],l=r[3],d=r[4];for(let e=0;79>=e;e++){16>e||(s[e]=n._S(1,s[e-3]^s[e-8]^s[e-14]^s[e-16]));const t=n._S(5,a)+n._f(e,o,c,l)+d+s[e]+n._key[i.floor(e/20)]|0;d=l,l=c,c=n._S(30,o),o=a,a=t}r[0]=r[0]+a|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+d|0}};const ee={getRandomValues(e){const t=new w(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(i.random()>.5?1:-1))};for(let r,s=0;s<e.length;s+=4){const e=n(4294967296*(r||i.random()));r=987654071*e(),t[s/4]=4294967296*e()|0}return e}},te={importKey:e=>new te.hmacSha1(Q.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new f("invalid params to pbkdf2");const s=1+(r>>5)<<2;let a,i,o,c,l;const d=new ArrayBuffer(s),u=new g(d);let p=0;const h=J;for(t=Q.bytes.toBits(t),l=1;(s||1)>p;l++){for(a=i=e.encrypt(h.concat(t,[l])),o=1;n>o;o++)for(i=e.encrypt(i),c=0;c<i.length;c++)a[c]^=i[c];for(o=0;(s||1)>p&&o<a.length;o++)u.setInt32(p,a[o]),p+=4}return d.slice(0,r/8)},hmacSha1:class{constructor(e){const t=this,n=t._hash=$.sha1,r=[[],[]],s=n.prototype.blockSize/32;t._baseHash=[new n,new n],e.length>s&&(e=n.hash(e));for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},ne=void 0!==S&&"function"==typeof S.getRandomValues,re="Invalid password",se="Invalid signature";function ae(e){return ne?S.getRandomValues(e):ee.getRandomValues(e)}const ie=16,oe={name:"PBKDF2"},ce=n.assign({hash:{name:"HMAC"}},oe),le=n.assign({iterations:1e3,hash:{name:"SHA-1"}},oe),de=["deriveBits"],ue=[8,12,16],fe=[16,24,32],pe=10,he=[0,0,0,0],we="undefined",ge="function",_e=typeof S!=we,me=_e&&S.subtle,ye=_e&&typeof me!=we,be=_e&&ye&&typeof me.importKey==ge,xe=_e&&ye&&typeof me.deriveBits==ge,Se=Q.bytes,ke=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],s=e.length;let a,i,o,c=1;if(4!==s&&6!==s&&8!==s)throw new f("invalid aes key size");for(t._key=[i=e.slice(0),o=[]],a=s;4*s+28>a;a++){let e=i[a-1];(a%s==0||8===s&&a%s==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],a%s==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),i[a]=i[a-s]^e}for(let e=0;a;e++,a--){const t=i[3&e?a:a-4];o[e]=4>=a||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],s=[],a=[];let i,o,c,l;for(let e=0;256>e;e++)a[(s[e]=e<<1^283*(e>>7))^e]=e;for(let d=i=0;!n[d];d^=o||1,i=a[i]||1){let a=i^i<<1^i<<2^i<<3^i<<4;a=a>>8^255&a^99,n[d]=a,r[a]=d,l=s[c=s[o=s[d]]];let u=16843009*l^65537*c^257*o^16843008*d,f=257*s[a]^16843008*a;for(let n=0;4>n;n++)e[n][d]=f=f<<24^f>>>8,t[n][a]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],r=n.length/4-2,s=[0,0,0,0],a=this._tables[t],i=a[0],o=a[1],c=a[2],l=a[3],d=a[4];let u,p,h,w=e[0]^n[0],g=e[t?3:1]^n[1],_=e[2]^n[2],m=e[t?1:3]^n[3],y=4;for(let e=0;r>e;e++)u=i[w>>>24]^o[g>>16&255]^c[_>>8&255]^l[255&m]^n[y],p=i[g>>>24]^o[_>>16&255]^c[m>>8&255]^l[255&w]^n[y+1],h=i[_>>>24]^o[m>>16&255]^c[w>>8&255]^l[255&g]^n[y+2],m=i[m>>>24]^o[w>>16&255]^c[g>>8&255]^l[255&_]^n[y+3],y+=4,w=u,g=p,_=h;for(let e=0;4>e;e++)s[t?3&-e:e]=d[w>>>24]<<24^d[g>>16&255]<<16^d[_>>8&255]<<8^d[255&m]^n[y++],u=w,w=g,g=_,_=m,m=u;return s}},ze=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255==(e>>24&255)){let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}else e+=1<<24;return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];const s=J.bitLength(t);for(let s=0;r>s;s+=4){this.incCounter(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return J.clamp(t,s)}},ve=te.hmacSha1;class Re extends z{constructor(e,t,r){super({start(){n.assign(this,{ready:new m((e=>this.resolveReady=e)),password:e,signed:t,strength:r-1,pending:new p})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:a,ready:i}=n;r?(await(async(e,t,n,r)=>{const s=await Ae(e,t,n,Fe(r,0,ue[t])),a=Fe(r,ue[t]);if(s[0]!=a[0]||s[1]!=a[1])throw new f(re)})(n,s,r,Fe(e,0,ue[s]+2)),e=Fe(e,ue[s]+2),a()):await i;const o=new p(e.length-pe-(e.length-pe)%ie);t.enqueue(Ee(n,e,o,0,pe,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:a}=this;await a;const i=Fe(s,0,s.length-pe),o=Fe(s,s.length-pe);let c=new p;if(i.length){const e=We(Se,i);r.update(e);const t=n.update(e);c=Ce(Se,t)}if(t){const e=Fe(Ce(Se,r.digest()),0,pe);for(let t=0;pe>t;t++)if(e[t]!=o[t])throw new f(se)}e.enqueue(c)}})}}class De extends z{constructor(e,t){let r;super({start(){n.assign(this,{ready:new m((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new p})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:a,ready:i}=n;let o=new p;r?(o=await(async(e,t,n)=>{const r=ae(new p(ue[t]));return Te(r,await Ae(e,t,n,r))})(n,s,r),a()):await i;const c=new p(o.length+e.length-e.length%ie);c.set(o,0),t.enqueue(Ee(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:s,ready:a}=this;await a;let i=new p;if(s.length){const e=t.update(We(Se,s));n.update(e),i=Ce(Se,e)}r.signature=Ce(Se,n.digest()).slice(0,pe),e.enqueue(Te(i,r.signature))}}),r=this}}function Ee(e,t,n,r,s,a){const{ctr:i,hmac:o,pending:c}=e,l=t.length-s;let d;for(c.length&&(t=Te(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new p(t)).set(n,0)}return e})(n,l-l%ie)),d=0;l-ie>=d;d+=ie){const e=We(Se,Fe(t,d,d+ie));a&&o.update(e);const s=i.update(e);a||o.update(s),n.set(Ce(Se,s),d+r)}return e.pending=Fe(t,d),n}async function Ae(e,r,s,a){e.password=null;const i=G(s),o=await((e,t,n,r,s)=>be?me.importKey("raw",t,n,!1,s):te.importKey(t))(0,i,ce,0,de),c=await(async(e,t,n)=>xe?await me.deriveBits(e,t,n):te.pbkdf2(t,e.salt,le.iterations,n))(n.assign({salt:a},le),o,8*(2*fe[r]+2)),l=new p(c),d=We(Se,Fe(l,0,fe[r])),u=We(Se,Fe(l,fe[r],2*fe[r])),f=Fe(l,2*fe[r]);return n.assign(e,{keys:{key:d,authentication:u,passwordVerification:f},ctr:new ze(new ke(d),t.from(he)),hmac:new ve(u)}),f}function Te(e,t){let n=e;return e.length+t.length&&(n=new p(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Fe(e,t,n){return e.subarray(t,n)}function Ce(e,t){return e.fromBits(t)}function We(e,t){return e.toBits(t)}class Ue extends z{constructor(e,t){super({start(){n.assign(this,{password:e,passwordVerification:t}),Le(this,e)},transform(e,t){const n=this;if(n.password){const t=Me(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(re);e=e.subarray(12)}t.enqueue(Me(n,e))}})}}class Ie extends z{constructor(e,t){super({start(){n.assign(this,{password:e,passwordVerification:t}),Le(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=ae(new p(12));t[11]=n.passwordVerification,r=new p(e.length+t.length),r.set(He(n,t),0),s=12}else r=new p(e.length),s=0;r.set(He(n,e),s),t.enqueue(r)}})}}function Me(e,t){const n=new p(t.length);for(let r=0;r<t.length;r++)n[r]=Be(e)^t[r],Ne(e,n[r]);return n}function He(e,t){const n=new p(t.length);for(let r=0;r<t.length;r++)n[r]=Be(e)^t[r],Ne(e,t[r]);return n}function Le(e,t){const r=[305419896,591751049,878082192];n.assign(e,{keys:r,crcKey0:new Y(r[0]),crcKey2:new Y(r[2])});for(let n=0;n<t.length;n++)Ne(e,t.charCodeAt(n))}function Ne(e,t){let[n,r,s]=e.keys;e.crcKey0.append([t]),n=~e.crcKey0.get(),r=Ve(i.imul(Ve(r+qe(n)),134775813)+1),e.crcKey2.append([r>>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function Be(e){const t=2|e.keys[2];return qe(i.imul(t,1^t)>>>8)}function qe(e){return 255&e}function Ve(e){return 4294967295&e}const Pe="deflate-raw";class Oe extends z{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:a,useCompressionStream:i,password:o,passwordVerification:c,encryptionStrength:l,zipCrypto:d,signed:u,level:f}=e,p=this;let h,w,_=Ze(super.readable);a&&!d||!u||([_,h]=_.tee(),h=je(h,new j)),s&&(_=Ye(_,i,{level:f,chunkSize:t},r,n)),a&&(d?_=je(_,new Ie(o,c)):(w=new De(o,l),_=je(_,w))),Xe(p,_,(async()=>{let e;a&&!d&&(e=w.signature),a&&!d||!u||(e=await h.getReader().read(),e=new g(e.value.buffer).getUint32(0)),p.signature=e}))}}class Ke extends z{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:a,password:i,passwordVerification:o,signed:c,signature:l,encryptionStrength:d,compressed:u,useCompressionStream:p}=e;let h,w,_=Ze(super.readable);a&&(s?_=je(_,new Ue(i,o)):(w=new Re(i,c,d),_=je(_,w))),u&&(_=Ye(_,p,{chunkSize:t},r,n)),a&&!s||!c||([_,h]=_.tee(),h=je(h,new j)),Xe(this,_,(async()=>{if((!a||s)&&c){const e=await h.getReader().read(),t=new g(e.value.buffer);if(l!=t.getUint32(0,!1))throw new f(se)}}))}}function Ze(e){return je(e,new z({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function Xe(e,t,r){t=je(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Ye(e,t,n,r,s){try{e=je(e,new(t&&r?r:s)(Pe,n))}catch(r){if(!t)throw r;e=je(e,new s(Pe,n))}return e}function je(e,t){return e.pipeThrough(t)}class Ge extends z{constructor(e,t){const n=new e(t);super({transform(e,t){t.enqueue(n.append(e))},flush(e){const t=n.flush();t&&e.enqueue(t)}})}}const Je="deflate",Qe="data";class $e{constructor(e,t,r,s){const{codecType:a}=r;let i;a.startsWith(Je)?i=Oe:a.startsWith("inflate")&&(i=Ke),n.assign(this,{CodecStream:i,readable:e,writable:t,options:r,config:s})}async run(){const{CodecStream:e,readable:t,writable:n,options:r,config:s}=this,a=new e(r,s);let i=0;await t.pipeThrough(a).pipeThrough(new z({transform(e,t){e&&e.length&&(i+=e.length,t.enqueue(e))}})).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:o}=a;return{size:i,signature:o}}}function et(e){return class extends Ge{constructor(t,n){super(e,n)}}}const tt=4294967295,nt=65535,rt=new o(2107,11,31),st=new o(1980,0,1),at=void 0,it="undefined";let ot=2;try{typeof A!=it&&A.hardwareConcurrency&&(ot=A.hardwareConcurrency)}catch(e){}const ct={chunkSize:524288,maxWorkers:ot,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:at,CompressionStreamNative:typeof D!=it&&D,DecompressionStreamNative:typeof E!=it&&E},lt=n.assign({},ct);function dt(){return lt}function ut(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:a,useCompressionStream:i,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:d,DecompressionStream:u,workerScripts:p}=e;if(ft("baseURL",n),ft("chunkSize",r),ft("maxWorkers",s),ft("terminateWorkerTimeout",a),ft("useCompressionStream",i),ft("useWebWorkers",o),c&&(lt.CompressionStream=et(c)),l&&(lt.DecompressionStream=et(l)),ft("CompressionStream",d),ft("DecompressionStream",u),p!==at){const{deflate:e,inflate:n}=p;if((e||n)&&(lt.workerScripts||(lt.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");lt.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");lt.workerScripts.inflate=n}}}function ft(e,t){t!==at&&(lt[e]=t)}let pt,ht=!0,wt=!0;class gt{constructor(e,t,r,s){const{readable:a,writable:i}=t,{options:o,config:c,streamOptions:l,useWebWorkers:d,transferStreams:h,scripts:w}=r;n.assign(e,{busy:!0,readable:a,writable:i,options:n.assign({},o),scripts:w,transferStreams:h,terminate(){e.worker&&!e.busy&&(e.worker.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,s(e)}});const{signal:g,onstart:_,onprogress:y,size:b,onend:x}=l;let S=0;const k={};return _&&(k.start=()=>_t(_,b)),k.transform=async(e,t)=>{S+=e.length,y&&await _t(y,S,b),t.enqueue(e)},k.flush=()=>{a.size=S,x&&_t(x,S)},e.readable=a.pipeThrough(new z(k,{highWaterMark:1,size:()=>c.chunkSize}),{signal:g}),pt===at&&(pt=typeof Worker!=it),d&&pt?((e,{baseURL:t,chunkSize:r})=>{const s={type:"module"};if(n.assign(e,{streams:{},result:new m(((t,n)=>{e.resolveResult=t,e.rejectResult=n}))}),!e.interface){if(ht)try{e.worker=i({})}catch(t){ht=!1,e.worker=i(s)}else e.worker=i(s);e.worker.addEventListener("message",(async t=>{const r=t.data,{resolveResult:s,rejectResult:a,onTaskFinished:i}=e,{reader:c,writer:l}=e.streams,{type:d,data:u,messageId:h,result:w}=r,g=r.error;try{if(g){const{message:e,stack:t,code:r,name:s}=g,a=new f(e);n.assign(a,{stack:t,code:r,name:s}),_(a)}else{if("pull"==d){const{value:e,done:t}=await c.read();o({type:Qe,data:e,done:t,messageId:h})}d==Qe&&(await l.ready,await l.write(new p(u)),o({type:"ack",messageId:h})),"close"==d&&_(null,w)}}catch(e){_(e)}function _(e,t){e?a(e):s(t),l&&l.releaseLock(),i()}}),!1),e.interface={async run(){const{readable:t,options:n}=e,s=e.writable.getWriter();let i,c;c=new m((e=>i=e));const l=new R({async write(e){await s.ready,await s.write(e)},async close(){s.releaseLock(),i()},abort(e){s.abort(e)}}),d={type:"start",scripts:e.scripts.slice(1),options:n,config:{chunkSize:r}};e.transferStreams&&wt?o({...d,readable:t,writable:l})||(wt=!1,a(t,l)):(o(d),a(t,l));const u=await e.result;try{await l.close()}catch(e){}return await c,u}}}return e.interface;function a(t,r){n.assign(e.streams,{reader:t.getReader(),writer:r.getWriter()})}function i(n){let r,s;r=e.scripts[0],"function"==typeof r&&(r=r());try{s=new u(r,t)}catch(e){s=r}return new Worker(s,n)}function o(t){const{worker:n,writer:r,onTaskFinished:s}=e;try{let{data:e,readable:r,writable:s}=t;const a=[];if(e){const{buffer:n,length:r}=e;r!=n.byteLength&&(e=new p(e)),t.data=e.buffer,a.push(t.data)}if(r&&a.push(r),s&&a.push(s),a.length)try{return n.postMessage(t,a),!0}catch(e){t.readable=t.writable=null,n.postMessage(t)}else n.postMessage(t)}catch(e){throw r&&r.releaseLock(),s(),e}}})(e,c):((e,t)=>{const n=new $e(e.readable,e.writable,e.options,t),{onTaskFinished:r}=e;return{async run(){try{return await n.run()}finally{r()}}}})(e,c)}}async function _t(e,...t){try{await e(...t)}catch(e){}}let mt=[];const yt=[];let bt=0;function xt(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const St="HTTP error ",kt="HTTP Range not supported",zt="GET",vt=65536,Rt="writable";class Dt{constructor(){this.size=0}init(){this.initialized=!0}}class Et extends Dt{get readable(){const e=this,{chunkSize:t=vt}=e,n=new v({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:a,diskNumberStart:o}=n,{chunkOffset:c}=this;r.enqueue(await Xt(e,s+c,i.min(t,a-c),o)),c+t>a?r.close():this.chunkOffset+=t}});return n}}class At extends Dt{constructor(){super();const e=this,t=new R({write:t=>e.writeUint8Array(t)});n.defineProperty(e,Rt,{get:()=>t})}writeUint8Array(){}}class Tt extends Et{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){return new p(await this.blob.slice(e,e+t).arrayBuffer())}}class Ft extends Dt{constructor(e){super();const t=new z,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,Rt,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Ct extends Et{constructor(e,t){super(),Ut(this,e,t)}async init(){super.init(),await It(this,Pt,Nt)}readUint8Array(e,t){return Mt(this,e,t,Pt,Nt)}}class Wt extends Et{constructor(e,t){super(),Ut(this,e,t)}async init(){super.init(),await It(this,Ot,Bt)}readUint8Array(e,t){return Mt(this,e,t,Ot,Bt)}}function Ut(e,t,r){const{preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:i}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:i})}async function It(e,t,n){const{url:r,useRangeHeader:a,forceRangeRequests:i}=e;if((e=>{const{baseURL:t}=dt(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(r)&&(a||i)){const{headers:r}=await t(zt,e,Ht(e));if(!i&&"bytes"!=r.get("Accept-Ranges"))throw new f(kt);{let a;const i=r.get("Content-Range");if(i){const e=i.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=s(t))}}a===at?await Vt(e,t,n):e.size=a}}else await Vt(e,t,n)}async function Mt(e,t,n,r,s){const{data:a,useRangeHeader:i,forceRangeRequests:o,options:c}=e;if(i||o){const s=await r(zt,e,Ht(e,t,n));if(206!=s.status)throw new f(kt);return new p(await s.arrayBuffer())}return a||await s(e,c),new p(a.subarray(t,t+n))}function Ht(e,t=0,r=1){return n.assign({},Lt(e),{Range:"bytes="+t+"-"+(t+r-1)})}function Lt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Nt(e){await qt(e,Pt)}async function Bt(e){await qt(e,Ot)}async function qt(e,t){const n=await t(zt,e,Lt(e));e.data=new p(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Vt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Lt(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function Pt(e,{options:t,url:r},s){const a=await fetch(r,n.assign({},t,{method:e,headers:s}));if(400>a.status)return a;throw 416==a.status?new f(kt):new f(St+(a.statusText||a.status))}function Ot(e,{url:t},r){return new m(((s,a)=>{const i=new XMLHttpRequest;if(i.addEventListener("load",(()=>{if(400>i.status){const e=[];i.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)})),s({status:i.status,arrayBuffer:()=>i.response,headers:new c(e)})}else a(416==i.status?new f(kt):new f(St+(i.statusText||i.status)))}),!1),i.addEventListener("error",(e=>a(e.detail.error)),!1),i.open(e,t),r)for(const e of n.entries(r))i.setRequestHeader(e[0],e[1]);i.responseType="arraybuffer",i.send()}))}class Kt extends Et{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Wt(e,t):new Ct(e,t)})}set size(e){}get size(){return this.reader.size}async init(){super.init(),await this.reader.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}async function Zt(e,t){e.init&&!e.initialized&&await e.init(t)}function Xt(e,t,n,r){return e.readUint8Array(t,n,r)}const Yt=["filename","rawFilename","directory","encrypted","compressedSize","uncompressedSize","lastModDate","rawLastModDate","comment","rawComment","signature","extraField","rawExtraField","bitFlag","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","filenameUTF8","commentUTF8","offset","zip64","compressionMethod","extraFieldNTFS","lastAccessDate","creationDate","extraFieldExtendedTimestamp","version","versionMadeBy","msDosCompatible","internalFileAttribute","externalFileAttribute"];class jt{constructor(e){Yt.forEach((t=>this[t]=e[t]))}}const Gt="File already exists",Jt="Zip file comment exceeds 64KB",Qt="File entry comment exceeds 64KB",$t="File entry name exceeds 64KB",en="Version exceeds 65535",tn="The strength must equal 1, 2, or 3",nn="Extra field type exceeds 65535",rn="Extra field data exceeds 64KB",sn="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",an=new p([7,0,2,0,65,69,3,0,0]);let on=0;const cn=[];async function ln(e,t){const n=e.getWriter();await n.ready,e.size+=mn(t),await n.write(t),n.releaseLock()}function dn(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function un(e,t,n){return t[n]===at?e.options[n]:t[n]}function fn(e,t,n){e.setUint8(t,n)}function pn(e,t,n){e.setUint16(t,n,!0)}function hn(e,t,n){e.setUint32(t,n,!0)}function wn(e,t,n){e.setBigUint64(t,n,!0)}function gn(e,t,n){e.set(t,n)}function _n(e){return new g(e.buffer)}function mn(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}ut({Deflate:function(e){const t=new Z,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(i.floor(r/16383)+1);var r;const s=new p(n);let a=e?e.level:-1;void 0===a&&(a=-1),t.deflateInit(a),t.next_out=s,this.append=(e,r)=>{let a,i,o=0,c=0,l=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,a=t.deflate(0),0!=a)throw new f("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?d.push(new p(s)):d.push(s.slice(0,t.next_out_index))),l+=t.next_out_index,r&&t.next_in_index>0&&t.next_in_index!=o&&(r(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(i=new p(l),d.forEach((e=>{i.set(e,c),c+=e.length}))):i=d[0]||new p,i}},this.flush=()=>{let e,r,a=0,i=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw new f("deflating: "+t.msg);n-t.avail_out>0&&o.push(s.slice(0,t.next_out_index)),i+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new p(i),o.forEach((e=>{r.set(e,a),a+=e.length})),r}}}),e.BlobReader=Tt,e.BlobWriter=Ft,e.Data64URIReader=class extends Et{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:i.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,s=new p(t),a=4*i.floor(e/3),o=atob(r.substring(a+n,4*i.ceil((e+t)/3)+n)),c=e-3*i.floor(a/4);for(let e=c;c+t>e;e++)s[e-c]=o.charCodeAt(e);return s}},e.Data64URIWriter=class extends At{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,s=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*i.floor((a+e.length)/3)-a;n++)s+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.pending+=r.fromCharCode(e[n]);s.length>2?t.data+=k(s):t.pending=s}getData(){return this.data+k(this.pending)}},e.ERR_DUPLICATED_NAME=Gt,e.ERR_HTTP_RANGE=kt,e.ERR_INVALID_COMMENT=Jt,e.ERR_INVALID_ENCRYPTION_STRENGTH=tn,e.ERR_INVALID_ENTRY_COMMENT=Qt,e.ERR_INVALID_ENTRY_NAME=$t,e.ERR_INVALID_EXTRAFIELD_DATA=rn,e.ERR_INVALID_EXTRAFIELD_TYPE=nn,e.ERR_INVALID_VERSION=en,e.ERR_UNSUPPORTED_FORMAT=sn,e.HttpRangeReader=class extends Kt{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Kt,e.Reader=Et,e.SplitZipReader=class extends Et{constructor(e){super(),this.readers=e}async init(){super.init();const e=this,{readers:t}=e;e.lastDiskNumber=0,await m.all(t.map((async t=>{await t.init(),e.size+=t.size})))}async readUint8Array(e,t,n=0){const r=this,{readers:s}=this;let a,o=n;-1==o&&(o=s.length-1);let c=e;for(;c>=s[o].size;)c-=s[o].size,o++;const l=s[o],d=l.size;if(c+t>d){const s=d-c;a=new p(t),a.set(await Xt(l,c,s)),a.set(await r.readUint8Array(e+s,t-s,n),s)}else a=await Xt(l,c,t);return r.lastDiskNumber=i.max(o,r.lastDiskNumber),a}},e.TextReader=class extends Tt{constructor(e){super(new _([e],{type:"text/plain"}))}},e.TextWriter=class extends Ft{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new m(((s,a)=>{n.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>a(t.error)}),t.readAsText(r,e)}))}}},e.Uint8ArrayReader=class extends Et{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends At{init(e=0){super.init(),n.assign(this,{offset:0,array:new p(e)})}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new p(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=At,e.ZipWriter=class{constructor(e,t={}){e instanceof R&&(e={writable:e}),e.writable.size===at&&(e.writable.size=0),n.assign(this,{writer:e,options:t,config:dt(),files:new c,filenames:new l,offset:e.writable.size,pendingEntriesSize:0,pendingAddFileCalls:new l})}async add(e="",r,c={}){const l=this,{pendingAddFileCalls:d,config:u}=l;let _;on<u.maxWorkers?on++:await new m((e=>cn.push(e)));try{if(e=e.trim(),l.filenames.has(e))throw new f(Gt);return l.filenames.add(e),_=(async(e,r,c,l)=>{r=r.trim(),l.directory&&!r.endsWith("/")?r+="/":l.directory=r.endsWith("/");const d=G(r);if(mn(d)>nt)throw new f($t);const u=l.comment||"",_=G(u);if(mn(_)>nt)throw new f(Qt);const y=e.options.version||l.version||0;if(y>nt)throw new f(en);const b=e.options.versionMadeBy||l.versionMadeBy||20;if(b>nt)throw new f(en);const x=un(e,l,"lastModDate")||new o,S=un(e,l,"lastAccessDate"),k=un(e,l,"creationDate"),z=un(e,l,"password"),R=un(e,l,"encryptionStrength")||3,D=un(e,l,"zipCrypto");if(z!==at&&R!==at&&(1>R||R>3))throw new f(tn);let E=new p;const{extraField:A}=l;if(A){let e=0,t=0;A.forEach((t=>e+=4+mn(t))),E=new p(e),A.forEach(((e,n)=>{if(n>nt)throw new f(nn);if(mn(e)>nt)throw new f(rn);gn(E,new h([n]),t),gn(E,new h([mn(e)]),t+2),gn(E,e,t+4),t+=4+mn(e)}))}let T=un(e,l,"extendedTimestamp");T===at&&(T=!0);let F=0,C=0,W=un(e,l,"keepOrder");W===at&&(W=!0);let U=0,I=un(e,l,"msDosCompatible");I===at&&(I=!0);const M=un(e,l,"internalFileAttribute")||0,H=un(e,l,"externalFileAttribute")||0;let L=un(e,l,"zip64");if(c&&(c instanceof v&&(c={readable:c}),await Zt(c),c.size===at?(l.dataDescriptor=!0,(L||L===at)&&(L=!0,F=tt)):(U=c.size,F=(e=>e+5*(i.floor(e/16383)+1))(U))),e.offset+e.pendingEntriesSize>=tt||U>=tt||F>=tt){if(!1===L||!W)throw new f(sn);L=!0}L=L||!1;const N=un(e,l,"level"),B=un(e,l,"useWebWorkers"),q=un(e,l,"bufferedWrite");let V=un(e,l,"dataDescriptor"),P=un(e,l,"dataDescriptorSignature");const O=un(e,l,"signal"),K=un(e,l,"useCompressionStream");V===at&&(V=!0),V&&P===at&&(P=!1);const Z=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,password:a,level:o,zip64:c,zipCrypto:l,dataDescriptor:d,directory:u,rawExtraField:f,encryptionStrength:h,extendedTimestamp:g}=e,_=0!==o&&!u,m=!(!a||!mn(a));let y,b,x;if(m&&!l){y=new p(mn(an)+2);const e=_n(y);pn(e,0,39169),gn(y,an,2),fn(e,8,h)}else y=new p;if(g){x=new p(9+(r?4:0)+(s?4:0));const e=_n(x);pn(e,0,21589),pn(e,2,mn(x)-4),fn(e,4,1+(r?2:0)+(s?4:0)),hn(e,5,i.floor(n.getTime()/1e3)),r&&hn(e,9,i.floor(r.getTime()/1e3)),s&&hn(e,13,i.floor(s.getTime()/1e3));try{b=new p(36);const e=_n(b),t=dn(n);pn(e,0,10),pn(e,2,32),pn(e,8,1),pn(e,10,24),wn(e,12,t),wn(e,20,dn(r)||t),wn(e,28,dn(s)||t)}catch(e){b=new p}}else b=x=new p;let S=2048;d&&(S|=8);let k=0;_&&(k=8);let z=e.version||20;c&&(z=z>45?z:45),m&&(S|=1,l||(z=z>51?z:51,k=99,_&&(y[9]=8)));const v=new p(26),R=_n(v);pn(R,0,z),pn(R,2,S),pn(R,4,k);const D=new w(1),E=_n(D);let A;A=st>n?st:n>rt?rt:n,pn(E,0,(A.getHours()<<6|A.getMinutes())<<5|A.getSeconds()/2),pn(E,2,(A.getFullYear()-1980<<4|A.getMonth()+1)<<5|A.getDate());const T=D[0];hn(R,6,T),pn(R,22,mn(t));const F=mn(y,x,b,f);pn(R,24,F);const C=new p(30+mn(t)+F);return hn(_n(C),0,67324752),gn(C,v,4),gn(C,t,30),gn(C,y,30+mn(t)),gn(C,x,30+mn(t,y)),gn(C,b,30+mn(t,y,x)),gn(C,f,30+mn(t,y,x,b)),{localHeaderArray:C,headerArray:v,headerView:R,lastModDate:n,rawLastModDate:T,encrypted:m,compressed:_,version:z,compressionMethod:k,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:b,rawExtraFieldAES:y}})(l=n.assign({},l,{rawFilename:d,rawComment:_,version:y,versionMadeBy:b,lastModDate:x,lastAccessDate:S,creationDate:k,rawExtraField:E,zip64:L,password:z,level:N,useWebWorkers:B,encryptionStrength:R,extendedTimestamp:T,zipCrypto:D,bufferedWrite:q,keepOrder:W,dataDescriptor:V,dataDescriptorSignature:P,signal:O,msDosCompatible:I,internalFileAttribute:M,externalFileAttribute:H,useCompressionStream:K})),X=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let s,a=new p,i=0;return n&&(a=new p(t?r?24:20:r?16:12),s=_n(a),r&&(i=4,hn(s,0,134695760))),{dataDescriptorArray:a,dataDescriptorView:s,dataDescriptorOffset:i}})(l);let Y;C=mn(Z.localHeaderArray,X.dataDescriptorArray)+F,e.pendingEntriesSize+=C;try{Y=await(async(e,r,o,c,l)=>{const{files:d,writer:u}=e,{keepOrder:h,dataDescriptor:w,zipCrypto:_,signal:y}=l,b=t.from(d.values()).pop();let x,S,k,z,v,R,D={};d.set(r,D);try{let t;if(h&&(t=b&&b.lock,D.lock=new m((e=>k=e))),l.bufferedWrite||e.lockWriter||!w?(R=new Ft,R.writable.size=0,x=!0,await Zt(u)):(R=u,e.lockWriter=m.resolve(),S=()=>delete e.lockWriter),await Zt(R),x||await t,v=!0,D=await(async(e,t,r,o,c,l)=>{const{headerInfo:d,dataDescriptorInfo:u}=o,{localHeaderArray:f,headerArray:h,lastModDate:w,rawLastModDate:g,encrypted:_,compressed:y,version:b,compressionMethod:x,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:z}=d,{dataDescriptorArray:v}=u,{rawFilename:R,lastAccessDate:D,creationDate:E,password:A,level:T,zip64:F,zipCrypto:C,dataDescriptor:W,directory:U,versionMadeBy:I,rawComment:M,rawExtraField:H,useWebWorkers:L,onstart:N,onprogress:B,onend:q,signal:V,encryptionStrength:P,extendedTimestamp:O,msDosCompatible:K,internalFileAttribute:Z,externalFileAttribute:X,useCompressionStream:Y}=l,j={lock:r.lock,versionMadeBy:I,zip64:F,directory:!!U,filenameUTF8:!0,rawFilename:R,commentUTF8:!0,rawComment:M,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:z,rawExtraField:H,extendedTimestamp:O,msDosCompatible:K,internalFileAttribute:Z,externalFileAttribute:X};let G,J=0,Q=0;const{writable:$}=t;if(e){e.chunkSize=(e=>i.max(e.chunkSize,64))(c),await ln($,f);const t=e.readable,n=t.size=e.size,r={options:{codecType:Je,level:T,password:A,encryptionStrength:P,zipCrypto:_&&C,passwordVerification:_&&C&&g>>8&255,signed:!0,compressed:y,encrypted:_,useWebWorkers:L,useCompressionStream:Y,transferStreams:!1},config:c,streamOptions:{signal:V,size:n,onstart:N,onprogress:B,onend:q}},a=await(async(e,t)=>{const{options:n,config:r}=t,{transferStreams:a,useWebWorkers:i,useCompressionStream:o,codecType:c,compressed:l,signed:d,encrypted:u}=n,{workerScripts:f}=r;t.transferStreams=a||a===at;const p=!(l||d||u||t.transferStreams);let h;if(t.useWebWorkers=!p&&(i||i===at&&r.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[c]:[],n.useCompressionStream=o||o===at&&r.useCompressionStream,mt.length<r.maxWorkers){const n={indexWorker:bt};bt++,mt.push(n),h=new gt(n,e,t,w)}else{const n=mt.find((e=>!e.busy));n?(xt(n),h=new gt(n,e,t,w)):h=await new m((n=>yt.push({resolve:n,stream:e,workerOptions:t})))}return h.run();function w(e){if(yt.length){const[{resolve:t,stream:n,workerOptions:r}]=yt.splice(0,1);t(new gt(e,n,r,w))}else if(e.worker){const{terminateWorkerTimeout:t}=r;xt(e),s.isFinite(t)&&t>=0&&(e.terminateTimeout=setTimeout((()=>{mt=mt.filter((t=>t!=e)),e.terminate()}),t))}else mt=mt.filter((t=>t!=e))}})({readable:t,writable:$},r);$.size+=a.size,G=a.signature,J=e.size=t.size,Q=a.size}else await ln($,f);const ee=F?new p(28):new p;return e&&((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:s,uncompressedSize:i,headerInfo:o,dataDescriptorInfo:c}=e,{headerView:l,encrypted:d}=o,{dataDescriptorView:u,dataDescriptorOffset:f}=c,{zip64:p,zipCrypto:h,dataDescriptor:w}=t;if(d&&!h||n===at||(hn(l,10,n),w&&hn(u,f,n)),p){const e=_n(r);pn(e,0,1),pn(e,2,24),hn(l,14,tt),wn(e,12,a(s)),hn(l,18,tt),wn(e,4,a(i)),w&&(wn(u,f+4,a(s)),wn(u,f+12,a(i)))}else hn(l,14,s),hn(l,18,i),w&&(hn(u,f+4,s),hn(u,f+8,i))})({signature:G,rawExtraFieldZip64:ee,compressedSize:Q,uncompressedSize:J,headerInfo:d,dataDescriptorInfo:u},l),W&&await ln($,v),n.assign(j,{compressedSize:Q,lastModDate:w,rawLastModDate:g,creationDate:E,lastAccessDate:D,encrypted:_,length:mn(f,v)+Q,compressionMethod:x,version:b,headerArray:h,signature:G,rawExtraFieldZip64:ee}),j})(o,R,D,c,e.config,l),v=!1,d.set(r,D),D.filename=r,x){await R.writable.close();let n=await R.getData();await t,await async function t(){const{lockWriter:n}=e;if(n)return await n.then((()=>delete e.lockWriter)),t();e.lockWriter=new m((e=>S=e))}(),z=!0;const{writable:r}=u;if(!w){const e=await(e=>e.slice(0,26).arrayBuffer())(n),t=new g(e);D.encrypted&&!_||hn(t,14,D.signature),D.zip64?(hn(t,18,tt),hn(t,22,tt)):(hn(t,18,D.compressedSize),hn(t,22,D.uncompressedSize)),await ln(r,new p(e)),n=n.slice(e.byteLength)}await n.stream().pipeTo(r,{preventClose:!0,signal:y}),z=!1}if(D.offset=e.offset,D.zip64)wn(_n(D.rawExtraFieldZip64),20,a(D.offset));else if(D.offset>=tt)throw new f(sn);return e.offset+=D.length,D}catch(t){throw(x&&z||!x&&v)&&(e.hasCorruptedEntries=!0,t&&(t.corruptedEntry=!0),x?e.offset+=R.writable.size:e.offset=R.writable.size),d.delete(r),t}finally{k&&k(),S&&S()}})(e,r,c,{headerInfo:Z,dataDescriptorInfo:X},l)}catch(t){throw!t.corruptedEntry&&C&&(e.pendingEntriesSize-=C),t}return n.assign(Y,{name:r,comment:u,extraField:A}),new jt(Y)})(l,e,r,c),d.add(_),await _}catch(t){throw l.filenames.delete(e),t}finally{d.delete(_);const e=cn.shift();e?e():on--}}async close(e=new p,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await m.all(t.from(r));return await(async(e,n,r)=>{const{files:s}=e;let o=0,c=0,l=e.offset,d=s.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:r,rawComment:a,rawExtraFieldExtendedTimestamp:i,rawExtraFieldNTFS:o}]of s)c+=46+mn(e,a,t,n,i,o,r);let u=r.zip64||e.options.zip64||!1;if(l>=tt||c>=tt||d>=nt){if(!1===r.zip64||!1===e.options.zip64)throw new f(sn);u=!0}const h=new p(c+(u?98:22)),w=_n(h);for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:c,rawExtraFieldAES:l,rawExtraFieldNTFS:d,rawExtraField:u,rawComment:f,versionMadeBy:g,headerArray:_,directory:m,zip64:y,msDosCompatible:b,internalFileAttribute:x,externalFileAttribute:S,extendedTimestamp:k,lastModDate:z}=n;let v;if(k){v=new p(9);const e=_n(v);pn(e,0,21589),pn(e,2,mn(v)-4),fn(e,4,1),hn(e,5,i.floor(z.getTime()/1e3))}else v=new p;const R=mn(c,l,v,d,u);if(hn(w,o,33639248),pn(w,o+4,g),gn(h,_,o+6),pn(w,o+30,R),pn(w,o+32,mn(f)),pn(w,o+36,x),S?hn(w,o+38,S):m&&b&&fn(w,o+38,16),hn(w,o+42,y?tt:t),gn(h,a,o+46),gn(h,c,o+46+mn(a)),gn(h,l,o+46+mn(a,c)),gn(h,v,o+46+mn(a,c,l)),gn(h,d,o+46+mn(a,c,l,v)),gn(h,u,o+46+mn(a,c,l,v,d)),gn(h,f,o+46+mn(a)+R),o+=46+mn(a,f)+R,r.onprogress)try{await r.onprogress(e+1,s.size,new jt(n))}catch(e){}}u&&(hn(w,o,101075792),wn(w,o+4,a(44)),pn(w,o+12,45),pn(w,o+14,45),wn(w,o+24,a(d)),wn(w,o+32,a(d)),wn(w,o+40,a(c)),wn(w,o+48,a(l)),hn(w,o+56,117853008),wn(w,o+64,a(l)+a(c)),hn(w,o+72,1),d=nt,l=tt,c=tt,o+=76),hn(w,o,101010256),pn(w,o+8,d),pn(w,o+10,d),hn(w,o+12,c),hn(w,o+16,l);const g=mn(n);if(g){if(g>nt)throw new f(Jt);pn(w,o+20,g)}const{writable:_}=e.writer;await Zt(e.writer),await ln(_,h),g&&await ln(_,n)})(this,e,n),s.preventClose||n.preventClose||await o.close(),s.getData?s.getData():o}},e.configure=ut,e.getMimeType=()=>"application/octet-stream",e.initStream=Zt,e.readUint8Array=Xt,e.terminateWorkers=()=>{mt.forEach((e=>{xt(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})}));
@@ -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:i,Number:r,BigInt:a,Math:s,Date:o,Map:l,Set:c,Response:d,URL:u,Error:f,Uint8Array:h,Uint16Array:_,Uint32Array:w,DataView:p,Blob:b,Promise:g,TextEncoder:m,TextDecoder:y,document:x,crypto:k,btoa:v,TransformStream:R,ReadableStream:S,WritableStream:z,CompressionStream:D,DecompressionStream:E,navigator:A}="undefined"!=typeof globalThis?globalThis:this||self,T=-2,C=-3,F=-5,U=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],L=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],W=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],I=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],N=[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,112,112],H=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],O=[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];function M(){let e,t,n,i,r,a;function s(e,t,s,o,l,c,d,u,f,h,_){let w,p,b,g,m,y,x,k,v,R,S,z,D,E,A;R=0,m=s;do{n[e[t+R]]++,R++,m--}while(0!==m);if(n[0]==s)return d[0]=-1,u[0]=0,0;for(k=u[0],y=1;15>=y&&0===n[y];y++);for(x=y,y>k&&(k=y),m=15;0!==m&&0===n[m];m--);for(b=m,k>m&&(k=m),u[0]=k,E=1<<y;m>y;y++,E<<=1)if(0>(E-=n[y]))return C;if(0>(E-=n[m]))return C;for(n[m]+=E,a[1]=y=0,R=1,D=2;0!=--m;)a[D]=y+=n[R],D++,R++;m=0,R=0;do{0!==(y=e[t+R])&&(_[a[y]++]=m),R++}while(++m<s);for(s=a[b],a[0]=m=0,R=0,g=-1,z=-k,r[0]=0,S=0,A=0;b>=x;x++)for(w=n[x];0!=w--;){for(;x>z+k;){if(g++,z+=k,A=b-z,A=A>k?k:A,(p=1<<(y=x-z))>w+1&&(p-=w+1,D=x,A>y))for(;++y<A&&(p<<=1)>n[++D];)p-=n[D];if(A=1<<y,h[0]+A>1440)return C;r[g]=S=h[0],h[0]+=A,0!==g?(a[g]=m,i[0]=y,i[1]=k,y=m>>>z-k,i[2]=S-r[g-1]-y,f.set(i,3*(r[g-1]+y))):d[0]=S}for(i[1]=x-z,s>R?_[R]<o?(i[0]=256>_[R]?0:96,i[2]=_[R++]):(i[0]=c[_[R]-o]+16+64,i[2]=l[_[R++]-o]):i[0]=192,p=1<<x-z,y=m>>>z;A>y;y+=p)f.set(i,3*(S+y));for(y=1<<x-1;0!=(m&y);y>>>=1)m^=y;for(m^=y,v=(1<<z)-1;(m&v)!=a[g];)g--,z-=k,v=(1<<z)-1}return 0!==E&&1!=b?F:0}function o(s){let o;for(e||(e=[],t=[],n=new Int32Array(16),i=[],r=new Int32Array(15),a=new Int32Array(16)),t.length<s&&(t=[]),o=0;s>o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)i[o]=0;r.set(n.subarray(0,15),0),a.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,i,r,a,l)=>{let c;return o(19),e[0]=0,c=s(n,0,19,19,null,null,r,i,a,e,t),c==C?l.msg="oversubscribed dynamic bit lengths tree":c!=F&&0!==i[0]||(l.msg="incomplete dynamic bit lengths tree",c=C),c},this.inflate_trees_dynamic=(n,i,r,a,l,c,d,u,f)=>{let h;return o(288),e[0]=0,h=s(r,0,n,257,I,N,c,a,u,e,t),0!=h||0===a[0]?(h==C?f.msg="oversubscribed literal/length tree":-4!=h&&(f.msg="incomplete literal/length tree",h=C),h):(o(288),h=s(r,n,i,0,H,O,d,l,u,e,t),0!=h||0===l[0]&&n>257?(h==C?f.msg="oversubscribed distance tree":h==F?(f.msg="incomplete distance tree",h=C):-4!=h&&(f.msg="empty distance tree with lengths",h=C),h):0)}}function P(){const e=this;let t,n,i,r,a=0,s=0,o=0,l=0,c=0,d=0,u=0,f=0,h=0,_=0;function w(e,t,n,i,r,a,s,o){let l,c,d,u,f,h,_,w,p,b,g,m,y,x,k,v;_=o.next_in_index,w=o.avail_in,f=s.bitb,h=s.bitk,p=s.write,b=p<s.read?s.read-p-1:s.end-p,g=U[e],m=U[t];do{for(;20>h;)w--,f|=(255&o.read_byte(_++))<<h,h+=8;if(l=f&g,c=n,d=i,v=3*(d+l),0!==(u=c[v]))for(;;){if(f>>=c[v+1],h-=c[v+1],0!=(16&u)){for(u&=15,y=c[v+2]+(f&U[u]),f>>=u,h-=u;15>h;)w--,f|=(255&o.read_byte(_++))<<h,h+=8;for(l=f&m,c=r,d=a,v=3*(d+l),u=c[v];;){if(f>>=c[v+1],h-=c[v+1],0!=(16&u)){for(u&=15;u>h;)w--,f|=(255&o.read_byte(_++))<<h,h+=8;if(x=c[v+2]+(f&U[u]),f>>=u,h-=u,b-=y,x>p){k=p-x;do{k+=s.end}while(0>k);if(u=s.end-k,y>u){if(y-=u,p-k>0&&u>p-k)do{s.win[p++]=s.win[k++]}while(0!=--u);else s.win.set(s.win.subarray(k,k+u),p),p+=u,k+=u,u=0;k=0}}else k=p-x,p-k>0&&2>p-k?(s.win[p++]=s.win[k++],s.win[p++]=s.win[k++],y-=2):(s.win.set(s.win.subarray(k,k+2),p),p+=2,k+=2,y-=2);if(p-k>0&&y>p-k)do{s.win[p++]=s.win[k++]}while(0!=--y);else s.win.set(s.win.subarray(k,k+y),p),p+=y,k+=y,y=0;break}if(0!=(64&u))return o.msg="invalid distance code",y=o.avail_in-w,y=y>h>>3?h>>3:y,w+=y,_-=y,h-=y<<3,s.bitb=f,s.bitk=h,o.avail_in=w,o.total_in+=_-o.next_in_index,o.next_in_index=_,s.write=p,C;l+=c[v+2],l+=f&U[u],v=3*(d+l),u=c[v]}break}if(0!=(64&u))return 0!=(32&u)?(y=o.avail_in-w,y=y>h>>3?h>>3:y,w+=y,_-=y,h-=y<<3,s.bitb=f,s.bitk=h,o.avail_in=w,o.total_in+=_-o.next_in_index,o.next_in_index=_,s.write=p,1):(o.msg="invalid literal/length code",y=o.avail_in-w,y=y>h>>3?h>>3:y,w+=y,_-=y,h-=y<<3,s.bitb=f,s.bitk=h,o.avail_in=w,o.total_in+=_-o.next_in_index,o.next_in_index=_,s.write=p,C);if(l+=c[v+2],l+=f&U[u],v=3*(d+l),0===(u=c[v])){f>>=c[v+1],h-=c[v+1],s.win[p++]=c[v+2],b--;break}}else f>>=c[v+1],h-=c[v+1],s.win[p++]=c[v+2],b--}while(b>=258&&w>=10);return y=o.avail_in-w,y=y>h>>3?h>>3:y,w+=y,_-=y,h-=y<<3,s.bitb=f,s.bitk=h,o.avail_in=w,o.total_in+=_-o.next_in_index,o.next_in_index=_,s.write=p,0}e.init=(e,a,s,o,l,c)=>{t=0,u=e,f=a,i=s,h=o,r=l,_=c,n=null},e.proc=(e,p,b)=>{let g,m,y,x,k,v,R,S=0,z=0,D=0;for(D=p.next_in_index,x=p.avail_in,S=e.bitb,z=e.bitk,k=e.write,v=k<e.read?e.read-k-1:e.end-k;;)switch(t){case 0:if(v>=258&&x>=10&&(e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,b=w(u,f,i,h,r,_,e,p),D=p.next_in_index,x=p.avail_in,S=e.bitb,z=e.bitk,k=e.write,v=k<e.read?e.read-k-1:e.end-k,0!=b)){t=1==b?7:9;break}o=u,n=i,s=h,t=1;case 1:for(g=o;g>z;){if(0===x)return e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,S|=(255&p.read_byte(D++))<<z,z+=8}if(m=3*(s+(S&U[g])),S>>>=n[m+1],z-=n[m+1],y=n[m],0===y){l=n[m+2],t=6;break}if(0!=(16&y)){c=15&y,a=n[m+2],t=2;break}if(0==(64&y)){o=y,s=m/3+n[m+2];break}if(0!=(32&y)){t=7;break}return t=9,p.msg="invalid literal/length code",b=C,e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);case 2:for(g=c;g>z;){if(0===x)return e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,S|=(255&p.read_byte(D++))<<z,z+=8}a+=S&U[g],S>>=g,z-=g,o=f,n=r,s=_,t=3;case 3:for(g=o;g>z;){if(0===x)return e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,S|=(255&p.read_byte(D++))<<z,z+=8}if(m=3*(s+(S&U[g])),S>>=n[m+1],z-=n[m+1],y=n[m],0!=(16&y)){c=15&y,d=n[m+2],t=4;break}if(0==(64&y)){o=y,s=m/3+n[m+2];break}return t=9,p.msg="invalid distance code",b=C,e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);case 4:for(g=c;g>z;){if(0===x)return e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,S|=(255&p.read_byte(D++))<<z,z+=8}d+=S&U[g],S>>=g,z-=g,t=5;case 5:for(R=k-d;0>R;)R+=e.end;for(;0!==a;){if(0===v&&(k==e.end&&0!==e.read&&(k=0,v=k<e.read?e.read-k-1:e.end-k),0===v&&(e.write=k,b=e.inflate_flush(p,b),k=e.write,v=k<e.read?e.read-k-1:e.end-k,k==e.end&&0!==e.read&&(k=0,v=k<e.read?e.read-k-1:e.end-k),0===v)))return e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);e.win[k++]=e.win[R++],v--,R==e.end&&(R=0),a--}t=0;break;case 6:if(0===v&&(k==e.end&&0!==e.read&&(k=0,v=k<e.read?e.read-k-1:e.end-k),0===v&&(e.write=k,b=e.inflate_flush(p,b),k=e.write,v=k<e.read?e.read-k-1:e.end-k,k==e.end&&0!==e.read&&(k=0,v=k<e.read?e.read-k-1:e.end-k),0===v)))return e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,e.win[k++]=l,v--,t=0;break;case 7:if(z>7&&(z-=8,x++,D--),e.write=k,b=e.inflate_flush(p,b),k=e.write,v=k<e.read?e.read-k-1:e.end-k,e.read!=e.write)return e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);t=8;case 8:return b=1,e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);case 9:return b=C,e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);default:return b=T,e.bitb=S,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b)}},e.free=()=>{}}M.inflate_trees_fixed=(e,t,n,i)=>(e[0]=9,t[0]=5,n[0]=L,i[0]=W,0);const q=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function B(e,t){const n=this;let i,r=0,a=0,s=0,o=0;const l=[0],c=[0],d=new P;let u=0,f=new Int32Array(4320);const _=new M;n.bitk=0,n.bitb=0,n.win=new h(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==r&&d.free(e),r=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let i,r,a;return r=e.next_out_index,a=n.read,i=(a>n.write?n.end:n.write)-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==F&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i,a==n.end&&(a=0,n.write==n.end&&(n.write=0),i=n.write-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==F&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i),e.next_out_index=r,n.read=a,t},n.proc=(e,t)=>{let h,w,p,b,g,m,y,x;for(b=e.next_in_index,g=e.avail_in,w=n.bitb,p=n.bitk,m=n.write,y=m<n.read?n.read-m-1:n.end-m;;){let k,v,R,S,z,D,E,A;switch(r){case 0:for(;3>p;){if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,w|=(255&e.read_byte(b++))<<p,p+=8}switch(h=7&w,u=1&h,h>>>1){case 0:w>>>=3,p-=3,h=7&p,w>>>=h,p-=h,r=1;break;case 1:k=[],v=[],R=[[]],S=[[]],M.inflate_trees_fixed(k,v,R,S),d.init(k[0],v[0],R[0],0,S[0],0),w>>>=3,p-=3,r=6;break;case 2:w>>>=3,p-=3,r=3;break;case 3:return w>>>=3,p-=3,r=9,e.msg="invalid block type",t=C,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t)}break;case 1:for(;32>p;){if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,w|=(255&e.read_byte(b++))<<p,p+=8}if((~w>>>16&65535)!=(65535&w))return r=9,e.msg="invalid stored block lengths",t=C,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);a=65535&w,w=p=0,r=0!==a?2:0!==u?7:0;break;case 2:if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(0===y&&(m==n.end&&0!==n.read&&(m=0,y=m<n.read?n.read-m-1:n.end-m),0===y&&(n.write=m,t=n.inflate_flush(e,t),m=n.write,y=m<n.read?n.read-m-1:n.end-m,m==n.end&&0!==n.read&&(m=0,y=m<n.read?n.read-m-1:n.end-m),0===y)))return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(t=0,h=a,h>g&&(h=g),h>y&&(h=y),n.win.set(e.read_buf(b,h),m),b+=h,g-=h,m+=h,y-=h,0!=(a-=h))break;r=0!==u?7:0;break;case 3:for(;14>p;){if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,w|=(255&e.read_byte(b++))<<p,p+=8}if(s=h=16383&w,(31&h)>29||(h>>5&31)>29)return r=9,e.msg="too many length or distance symbols",t=C,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(h=258+(31&h)+(h>>5&31),!i||i.length<h)i=[];else for(x=0;h>x;x++)i[x]=0;w>>>=14,p-=14,o=0,r=4;case 4:for(;4+(s>>>10)>o;){for(;3>p;){if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,w|=(255&e.read_byte(b++))<<p,p+=8}i[q[o++]]=7&w,w>>>=3,p-=3}for(;19>o;)i[q[o++]]=0;if(l[0]=7,h=_.inflate_trees_bits(i,l,c,f,e),0!=h)return(t=h)==C&&(i=null,r=9),n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);o=0,r=5;case 5:for(;h=s,258+(31&h)+(h>>5&31)>o;){let a,d;for(h=l[0];h>p;){if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,w|=(255&e.read_byte(b++))<<p,p+=8}if(h=f[3*(c[0]+(w&U[h]))+1],d=f[3*(c[0]+(w&U[h]))+2],16>d)w>>>=h,p-=h,i[o++]=d;else{for(x=18==d?7:d-14,a=18==d?11:3;h+x>p;){if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,w|=(255&e.read_byte(b++))<<p,p+=8}if(w>>>=h,p-=h,a+=w&U[x],w>>>=x,p-=x,x=o,h=s,x+a>258+(31&h)+(h>>5&31)||16==d&&1>x)return i=null,r=9,e.msg="invalid bit length repeat",t=C,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d=16==d?i[x-1]:0;do{i[x++]=d}while(0!=--a);o=x}}if(c[0]=-1,z=[],D=[],E=[],A=[],z[0]=9,D[0]=6,h=s,h=_.inflate_trees_dynamic(257+(31&h),1+(h>>5&31),i,z,D,E,A,f,e),0!=h)return h==C&&(i=null,r=9),t=h,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d.init(z[0],D[0],f,E[0],f,A[0]),r=6;case 6:if(n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),b=e.next_in_index,g=e.avail_in,w=n.bitb,p=n.bitk,m=n.write,y=m<n.read?n.read-m-1:n.end-m,0===u){r=0;break}r=7;case 7:if(n.write=m,t=n.inflate_flush(e,t),m=n.write,y=m<n.read?n.read-m-1:n.end-m,n.read!=n.write)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);r=8;case 8:return t=1,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);case 9:return t=C,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);default:return t=T,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t)}}},n.free=e=>{n.reset(e,null),n.win=null,f=null},n.set_dictionary=(e,t,i)=>{n.win.set(e.subarray(t,t+i),0),n.read=n.write=i},n.sync_point=()=>1==r?1:0}const V=13,K=[0,0,255,255];function Z(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):T}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,i)=>(n.msg=null,e.blocks=null,8>i||i>15?(e.inflateEnd(n),T):(e.wbits=i,n.istate.blocks=new B(n,1<<i),t(n),0)),e.inflate=(e,t)=>{let n,i;if(!e||!e.istate||!e.next_in)return T;const r=e.istate;for(t=4==t?F:0,n=F;;)switch(r.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(r.method=e.read_byte(e.next_in_index++)))){r.mode=V,e.msg="unknown compression method",r.marker=5;break}if(8+(r.method>>4)>r.wbits){r.mode=V,e.msg="invalid win size",r.marker=5;break}r.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,i=255&e.read_byte(e.next_in_index++),((r.method<<8)+i)%31!=0){r.mode=V,e.msg="incorrect header check",r.marker=5;break}if(0==(32&i)){r.mode=7;break}r.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,r.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,r.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,r.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,r.need+=255&e.read_byte(e.next_in_index++),r.mode=6,2);case 6:return r.mode=V,e.msg="need dictionary",r.marker=0,T;case 7:if(n=r.blocks.proc(e,n),n==C){r.mode=V,r.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,r.blocks.reset(e,r.was),r.mode=12;case 12:return e.avail_in=0,1;case V:return C;default:return T}},e.inflateSetDictionary=(e,t,n)=>{let i=0,r=n;if(!e||!e.istate||6!=e.istate.mode)return T;const a=e.istate;return r<1<<a.wbits||(r=(1<<a.wbits)-1,i=n-r),a.blocks.set_dictionary(t,i,r),a.mode=7,0},e.inflateSync=e=>{let n,i,r,a,s;if(!e||!e.istate)return T;const o=e.istate;if(o.mode!=V&&(o.mode=V,o.marker=0),0===(n=e.avail_in))return F;for(i=e.next_in_index,r=o.marker;0!==n&&4>r;)e.read_byte(i)==K[r]?r++:r=0!==e.read_byte(i)?0:4-r,i++,n--;return e.total_in+=i-e.next_in_index,e.next_in_index=i,e.avail_in=n,o.marker=r,4!=r?C:(a=e.total_in,s=e.total_out,t(e),e.total_in=a,e.total_out=s,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():T}function G(){}G.prototype={inflateInit(e){const t=this;return t.istate=new Z,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):T},inflateEnd(){const e=this;if(!e.istate)return T;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):T},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):T},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const j=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;j[e]=t}class X{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,i=0|e.length;i>n;n++)t=t>>>8^j[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Y extends R{constructor(){const e=new X;super({transform(t){e.append(t)},flush(t){const n=new h(4);new p(n.buffer).setUint32(0,e.get()),t.enqueue(n)}})}}const J={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],i=J.getPartial(n);return 32===i?e.concat(t):J._shiftRight(t,i,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+J.getPartial(n)},clamp(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,s.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=J.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>s.round(e/1099511627776)||32,_shiftRight(e,t,n,i){for(void 0===i&&(i=[]);t>=32;t-=32)i.push(n),n=0;if(0===t)return i.concat(e);for(let r=0;r<e.length;r++)i.push(n|e[r]>>>t),n=e[r]<<32-t;const r=e.length?e[e.length-1]:0,a=J.getPartial(r);return i.push(J.partial(t+a&31,t+a>32?n:i.pop(),1)),i}},Q={bytes:{fromBits(e){const t=J.bitLength(e)/8,n=new h(t);let i;for(let r=0;t>r;r++)0==(3&r)&&(i=e[r/4]),n[r]=i>>>24,i<<=8;return n},toBits(e){const t=[];let n,i=0;for(n=0;n<e.length;n++)i=i<<8|e[n],3==(3&n)&&(t.push(i),i=0);return 3&n&&t.push(J.partial(8*(3&n),i)),t}}},$={sha1:function(e){e?(this._h=e._h.slice(0),this._buffer=e._buffer.slice(0),this._length=e._length):this.reset()}};$.sha1.prototype={blockSize:512,reset(){const e=this;return e._h=this._init.slice(0),e._buffer=[],e._length=0,e},update(e){const t=this;"string"==typeof e&&(e=Q.utf8String.toBits(e));const n=t._buffer=J.concat(t._buffer,e),i=t._length,r=t._length=i+J.bitLength(e);if(r>9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new w(n);let s=0;for(let e=t.blockSize+i-(t.blockSize+i&t.blockSize-1);r>=e;e+=t.blockSize)t._block(a.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t},finalize(){const e=this;let t=e._buffer;const n=e._h;t=J.concat(t,[J.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n},_init:[1732584193,4023233417,2562383102,271733878,3285377520],_key:[1518500249,1859775393,2400959708,3395469782],_f:(e,t,n,i)=>e>19?e>39?e>59?e>79?void 0:t^n^i:t&n|t&i|n&i:t^n^i:t&n|~t&i,_S:(e,t)=>t<<e|t>>>32-e,_block(e){const n=this,i=n._h,r=t(80);for(let t=0;16>t;t++)r[t]=e[t];let a=i[0],o=i[1],l=i[2],c=i[3],d=i[4];for(let e=0;79>=e;e++){16>e||(r[e]=n._S(1,r[e-3]^r[e-8]^r[e-14]^r[e-16]));const t=n._S(5,a)+n._f(e,o,l,c)+d+r[e]+n._key[s.floor(e/20)]|0;d=c,c=l,l=n._S(30,o),o=a,a=t}i[0]=i[0]+a|0,i[1]=i[1]+o|0,i[2]=i[2]+l|0,i[3]=i[3]+c|0,i[4]=i[4]+d|0}};const ee={getRandomValues(e){const t=new w(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(s.random()>.5?1:-1))};for(let i,r=0;r<e.length;r+=4){const e=n(4294967296*(i||s.random()));i=987654071*e(),t[r/4]=4294967296*e()|0}return e}},te={importKey:e=>new te.hmacSha1(Q.bytes.toBits(e)),pbkdf2(e,t,n,i){if(n=n||1e4,0>i||0>n)throw new f("invalid params to pbkdf2");const r=1+(i>>5)<<2;let a,s,o,l,c;const d=new ArrayBuffer(r),u=new p(d);let h=0;const _=J;for(t=Q.bytes.toBits(t),c=1;(r||1)>h;c++){for(a=s=e.encrypt(_.concat(t,[c])),o=1;n>o;o++)for(s=e.encrypt(s),l=0;l<s.length;l++)a[l]^=s[l];for(o=0;(r||1)>h&&o<a.length;o++)u.setInt32(h,a[o]),h+=4}return d.slice(0,i/8)},hmacSha1:class{constructor(e){const t=this,n=t._hash=$.sha1,i=[[],[]],r=n.prototype.blockSize/32;t._baseHash=[new n,new n],e.length>r&&(e=n.hash(e));for(let t=0;r>t;t++)i[0][t]=909522486^e[t],i[1][t]=1549556828^e[t];t._baseHash[0].update(i[0]),t._baseHash[1].update(i[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},ne=void 0!==k&&"function"==typeof k.getRandomValues,ie="Invalid password",re="Invalid signature";function ae(e){return ne?k.getRandomValues(e):ee.getRandomValues(e)}const se=16,oe={name:"PBKDF2"},le=n.assign({hash:{name:"HMAC"}},oe),ce=n.assign({iterations:1e3,hash:{name:"SHA-1"}},oe),de=["deriveBits"],ue=[8,12,16],fe=[16,24,32],he=10,_e=[0,0,0,0],we="undefined",pe="function",be=typeof k!=we,ge=be&&k.subtle,me=be&&typeof ge!=we,ye=be&&me&&typeof ge.importKey==pe,xe=be&&me&&typeof ge.deriveBits==pe,ke=Q.bytes,ve=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],i=t._tables[1],r=e.length;let a,s,o,l=1;if(4!==r&&6!==r&&8!==r)throw new f("invalid aes key size");for(t._key=[s=e.slice(0),o=[]],a=r;4*r+28>a;a++){let e=s[a-1];(a%r==0||8===r&&a%r==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],a%r==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),s[a]=s[a-r]^e}for(let e=0;a;e++,a--){const t=s[3&e?a:a-4];o[e]=4>=a||4>e?t:i[0][n[t>>>24]]^i[1][n[t>>16&255]]^i[2][n[t>>8&255]]^i[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],i=t[4],r=[],a=[];let s,o,l,c;for(let e=0;256>e;e++)a[(r[e]=e<<1^283*(e>>7))^e]=e;for(let d=s=0;!n[d];d^=o||1,s=a[s]||1){let a=s^s<<1^s<<2^s<<3^s<<4;a=a>>8^255&a^99,n[d]=a,i[a]=d,c=r[l=r[o=r[d]]];let u=16843009*c^65537*l^257*o^16843008*d,f=257*r[a]^16843008*a;for(let n=0;4>n;n++)e[n][d]=f=f<<24^f>>>8,t[n][a]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],i=n.length/4-2,r=[0,0,0,0],a=this._tables[t],s=a[0],o=a[1],l=a[2],c=a[3],d=a[4];let u,h,_,w=e[0]^n[0],p=e[t?3:1]^n[1],b=e[2]^n[2],g=e[t?1:3]^n[3],m=4;for(let e=0;i>e;e++)u=s[w>>>24]^o[p>>16&255]^l[b>>8&255]^c[255&g]^n[m],h=s[p>>>24]^o[b>>16&255]^l[g>>8&255]^c[255&w]^n[m+1],_=s[b>>>24]^o[g>>16&255]^l[w>>8&255]^c[255&p]^n[m+2],g=s[g>>>24]^o[w>>16&255]^l[p>>8&255]^c[255&b]^n[m+3],m+=4,w=u,p=h,b=_;for(let e=0;4>e;e++)r[t?3&-e:e]=d[w>>>24]<<24^d[p>>16&255]<<16^d[b>>8&255]<<8^d[255&g]^n[m++],u=w,w=p,p=b,b=g,g=u;return r}},Re=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255==(e>>24&255)){let t=e>>16&255,n=e>>8&255,i=255&e;255===t?(t=0,255===n?(n=0,255===i?i=0:++i):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=i}else e+=1<<24;return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let i;if(!(i=t.length))return[];const r=J.bitLength(t);for(let r=0;i>r;r+=4){this.incCounter(n);const i=e.encrypt(n);t[r]^=i[0],t[r+1]^=i[1],t[r+2]^=i[2],t[r+3]^=i[3]}return J.clamp(t,r)}},Se=te.hmacSha1;class ze extends R{constructor(e,t,i){super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:e,signed:t,strength:i-1,pending:new h})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:a,ready:s}=n;i?(await(async(e,t,n,i)=>{const r=await Ae(e,t,n,Ce(i,0,ue[t])),a=Ce(i,ue[t]);if(r[0]!=a[0]||r[1]!=a[1])throw new f(ie)})(n,r,i,Ce(e,0,ue[r]+2)),e=Ce(e,ue[r]+2),a()):await s;const o=new h(e.length-he-(e.length-he)%se);t.enqueue(Ee(n,e,o,0,he,!0))},async flush(e){const{signed:t,ctr:n,hmac:i,pending:r,ready:a}=this;await a;const s=Ce(r,0,r.length-he),o=Ce(r,r.length-he);let l=new h;if(s.length){const e=Ue(ke,s);i.update(e);const t=n.update(e);l=Fe(ke,t)}if(t){const e=Ce(Fe(ke,i.digest()),0,he);for(let t=0;he>t;t++)if(e[t]!=o[t])throw new f(re)}e.enqueue(l)}})}}class De extends R{constructor(e,t){let i;super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new h})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:a,ready:s}=n;let o=new h;i?(o=await(async(e,t,n)=>{const i=ae(new h(ue[t]));return Te(i,await Ae(e,t,n,i))})(n,r,i),a()):await s;const l=new h(o.length+e.length-e.length%se);l.set(o,0),t.enqueue(Ee(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:a}=this;await a;let s=new h;if(r.length){const e=t.update(Ue(ke,r));n.update(e),s=Fe(ke,e)}i.signature=Fe(ke,n.digest()).slice(0,he),e.enqueue(Te(s,i.signature))}}),i=this}}function Ee(e,t,n,i,r,a){const{ctr:s,hmac:o,pending:l}=e,c=t.length-r;let d;for(l.length&&(t=Te(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new h(t)).set(n,0)}return e})(n,c-c%se)),d=0;c-se>=d;d+=se){const e=Ue(ke,Ce(t,d,d+se));a&&o.update(e);const r=s.update(e);a||o.update(r),n.set(Fe(ke,r),d+i)}return e.pending=Ce(t,d),n}async function Ae(e,i,r,a){e.password=null;const s=(e=>{if(void 0===m){const t=new h((e=unescape(encodeURIComponent(e))).length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new m).encode(e)})(r),o=await((e,t,n,i,r)=>ye?ge.importKey("raw",t,n,!1,r):te.importKey(t))(0,s,le,0,de),l=await(async(e,t,n)=>xe?await ge.deriveBits(e,t,n):te.pbkdf2(t,e.salt,ce.iterations,n))(n.assign({salt:a},ce),o,8*(2*fe[i]+2)),c=new h(l),d=Ue(ke,Ce(c,0,fe[i])),u=Ue(ke,Ce(c,fe[i],2*fe[i])),f=Ce(c,2*fe[i]);return n.assign(e,{keys:{key:d,authentication:u,passwordVerification:f},ctr:new Re(new ve(d),t.from(_e)),hmac:new Se(u)}),f}function Te(e,t){let n=e;return e.length+t.length&&(n=new h(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Ce(e,t,n){return e.subarray(t,n)}function Fe(e,t){return e.fromBits(t)}function Ue(e,t){return e.toBits(t)}class Le extends R{constructor(e,t){super({start(){n.assign(this,{password:e,passwordVerification:t}),He(this,e)},transform(e,t){const n=this;if(n.password){const t=Ie(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(ie);e=e.subarray(12)}t.enqueue(Ie(n,e))}})}}class We extends R{constructor(e,t){super({start(){n.assign(this,{password:e,passwordVerification:t}),He(this,e)},transform(e,t){const n=this;let i,r;if(n.password){n.password=null;const t=ae(new h(12));t[11]=n.passwordVerification,i=new h(e.length+t.length),i.set(Ne(n,t),0),r=12}else i=new h(e.length),r=0;i.set(Ne(n,e),r),t.enqueue(i)}})}}function Ie(e,t){const n=new h(t.length);for(let i=0;i<t.length;i++)n[i]=Me(e)^t[i],Oe(e,n[i]);return n}function Ne(e,t){const n=new h(t.length);for(let i=0;i<t.length;i++)n[i]=Me(e)^t[i],Oe(e,t[i]);return n}function He(e,t){const i=[305419896,591751049,878082192];n.assign(e,{keys:i,crcKey0:new X(i[0]),crcKey2:new X(i[2])});for(let n=0;n<t.length;n++)Oe(e,t.charCodeAt(n))}function Oe(e,t){let[n,i,r]=e.keys;e.crcKey0.append([t]),n=~e.crcKey0.get(),i=qe(s.imul(qe(i+Pe(n)),134775813)+1),e.crcKey2.append([i>>>24]),r=~e.crcKey2.get(),e.keys=[n,i,r]}function Me(e){const t=2|e.keys[2];return Pe(s.imul(t,1^t)>>>8)}function Pe(e){return 255&e}function qe(e){return 4294967295&e}const Be="deflate-raw";class Ve extends R{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:i}){super({});const{compressed:r,encrypted:a,useCompressionStream:s,password:o,passwordVerification:l,encryptionStrength:c,zipCrypto:d,signed:u,level:f}=e,h=this;let _,w,b=Ze(super.readable);a&&!d||!u||([b,_]=b.tee(),_=Xe(_,new Y)),r&&(b=je(b,s,{level:f,chunkSize:t},i,n)),a&&(d?b=Xe(b,new We(o,l)):(w=new De(o,c),b=Xe(b,w))),Ge(h,b,(async()=>{let e;a&&!d&&(e=w.signature),a&&!d||!u||(e=await _.getReader().read(),e=new p(e.value.buffer).getUint32(0)),h.signature=e}))}}class Ke extends R{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:i}){super({});const{zipCrypto:r,encrypted:a,password:s,passwordVerification:o,signed:l,signature:c,encryptionStrength:d,compressed:u,useCompressionStream:h}=e;let _,w,b=Ze(super.readable);a&&(r?b=Xe(b,new Le(s,o)):(w=new ze(s,l,d),b=Xe(b,w))),u&&(b=je(b,h,{chunkSize:t},i,n)),a&&!r||!l||([b,_]=b.tee(),_=Xe(_,new Y)),Ge(this,b,(async()=>{if((!a||r)&&l){const e=await _.getReader().read(),t=new p(e.value.buffer);if(c!=t.getUint32(0,!1))throw new f(re)}}))}}function Ze(e){return Xe(e,new R({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function Ge(e,t,i){t=Xe(t,new R({flush:i})),n.defineProperty(e,"readable",{get:()=>t})}function je(e,t,n,i,r){try{e=Xe(e,new(t&&i?i:r)(Be,n))}catch(i){if(!t)throw i;e=Xe(e,new r(Be,n))}return e}function Xe(e,t){return e.pipeThrough(t)}class Ye extends R{constructor(e,t){const n=new e(t);super({transform(e,t){t.enqueue(n.append(e))},flush(e){const t=n.flush();t&&e.enqueue(t)}})}}const Je="inflate",Qe="data";class $e{constructor(e,t,i,r){const{codecType:a}=i;let s;a.startsWith("deflate")?s=Ve:a.startsWith(Je)&&(s=Ke),n.assign(this,{CodecStream:s,readable:e,writable:t,options:i,config:r})}async run(){const{CodecStream:e,readable:t,writable:n,options:i,config:r}=this,a=new e(i,r);let s=0;await t.pipeThrough(a).pipeThrough(new R({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))}})).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:o}=a;return{size:s,signature:o}}}function et(e){return class extends Ye{constructor(t,n){super(e,n)}}}const tt=void 0;let nt=2;try{void 0!==A&&A.hardwareConcurrency&&(nt=A.hardwareConcurrency)}catch(e){}const it={chunkSize:524288,maxWorkers:nt,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:void 0,CompressionStreamNative:void 0!==D&&D,DecompressionStreamNative:void 0!==E&&E},rt=n.assign({},it);function at(){return rt}function st(e){const{baseURL:n,chunkSize:i,maxWorkers:r,terminateWorkerTimeout:a,useCompressionStream:s,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:u,workerScripts:h}=e;if(ot("baseURL",n),ot("chunkSize",i),ot("maxWorkers",r),ot("terminateWorkerTimeout",a),ot("useCompressionStream",s),ot("useWebWorkers",o),l&&(rt.CompressionStream=et(l)),c&&(rt.DecompressionStream=et(c)),ot("CompressionStream",d),ot("DecompressionStream",u),h!==tt){const{deflate:e,inflate:n}=h;if((e||n)&&(rt.workerScripts||(rt.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");rt.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");rt.workerScripts.inflate=n}}}function ot(e,t){t!==tt&&(rt[e]=t)}let lt,ct=!0,dt=!0;class ut{constructor(e,t,i,r){const{readable:a,writable:s}=t,{options:o,config:l,streamOptions:c,useWebWorkers:d,transferStreams:_,scripts:w}=i;n.assign(e,{busy:!0,readable:a,writable:s,options:n.assign({},o),scripts:w,transferStreams:_,terminate(){e.worker&&!e.busy&&(e.worker.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,r(e)}});const{signal:p,onstart:b,onprogress:m,size:y,onend:x}=c;let k=0;const v={};return b&&(v.start=()=>ft(b,y)),v.transform=async(e,t)=>{k+=e.length,m&&await ft(m,k,y),t.enqueue(e)},v.flush=()=>{a.size=k,x&&ft(x,k)},e.readable=a.pipeThrough(new R(v,{highWaterMark:1,size:()=>l.chunkSize}),{signal:p}),void 0===lt&&(lt="undefined"!=typeof Worker),d&&lt?((e,{baseURL:t,chunkSize:i})=>{const r={type:"module"};if(n.assign(e,{streams:{},result:new g(((t,n)=>{e.resolveResult=t,e.rejectResult=n}))}),!e.interface){if(ct)try{e.worker=s({})}catch(t){ct=!1,e.worker=s(r)}else e.worker=s(r);e.worker.addEventListener("message",(async t=>{const i=t.data,{resolveResult:r,rejectResult:a,onTaskFinished:s}=e,{reader:l,writer:c}=e.streams,{type:d,data:u,messageId:_,result:w}=i,p=i.error;try{if(p){const{message:e,stack:t,code:i,name:r}=p,a=new f(e);n.assign(a,{stack:t,code:i,name:r}),b(a)}else{if("pull"==d){const{value:e,done:t}=await l.read();o({type:Qe,data:e,done:t,messageId:_})}d==Qe&&(await c.ready,await c.write(new h(u)),o({type:"ack",messageId:_})),"close"==d&&b(null,w)}}catch(e){b(e)}function b(e,t){e?a(e):r(t),c&&c.releaseLock(),s()}}),!1),e.interface={async run(){const{readable:t,options:n}=e,r=e.writable.getWriter();let s,l;l=new g((e=>s=e));const c=new z({async write(e){await r.ready,await r.write(new h(e))},async close(){r.releaseLock(),s()},abort(e){r.abort(e)}}),d={type:"start",scripts:e.scripts.slice(1),options:n,config:{chunkSize:i}};e.transferStreams&&dt?o({...d,readable:t,writable:c})||(dt=!1,a(t,c)):(o(d),a(t,c));const u=await e.result;try{await c.close()}catch(e){}return await l,u}}}return e.interface;function a(t,i){n.assign(e.streams,{reader:t.getReader(),writer:i.getWriter()})}function s(n){let i,r;i=e.scripts[0],"function"==typeof i&&(i=i());try{r=new u(i,t)}catch(e){r=i}return new Worker(r,n)}function o(t){const{worker:n,writer:i,onTaskFinished:r}=e;try{let{data:e,readable:i,writable:r}=t;const a=[];if(e){const{buffer:n,length:i}=e;i!=n.byteLength&&(e=new h(e)),t.data=e.buffer,a.push(t.data)}if(i&&a.push(i),r&&a.push(r),a.length)try{return n.postMessage(t,a),!0}catch(e){t.readable=t.writable=null,n.postMessage(t)}else n.postMessage(t)}catch(e){throw i&&i.releaseLock(),r(),e}}})(e,l):((e,t)=>{const n=new $e(e.readable,e.writable,e.options,t),{onTaskFinished:i}=e;return{async run(){try{return await n.run()}finally{i()}}}})(e,l)}}async function ft(e,...t){try{await e(...t)}catch(e){}}let ht=[];const _t=[];let wt=0;function pt(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const bt="HTTP error ",gt="HTTP Range not supported",mt="GET",yt=65536;class xt{constructor(){this.size=0}init(){this.initialized=!0}}class kt extends xt{get readable(){const e=this,{chunkSize:t=yt}=e,n=new S({start(){this.chunkOffset=0},async pull(i){const{offset:r=0,size:a,diskNumberStart:o}=n,{chunkOffset:l}=this;i.enqueue(await Pt(e,r+l,s.min(t,a-l),o)),l+t>a?i.close():this.chunkOffset+=t}});return n}}class vt extends xt{constructor(){super();const e=this,t=new z({write:t=>e.writeUint8Array(t)});n.defineProperty(e,"writable",{get:()=>t})}writeUint8Array(){}}class Rt extends kt{constructor(e){super(),this.blob=e,this.size=e.size}async readUint8Array(e,t){return new h(await this.blob.slice(e,e+t).arrayBuffer())}}class St extends xt{constructor(e){super();const t=new R,i=[];e&&i.push(["content-type",e]),n.defineProperty(this,"writable",{get:()=>t.writable}),this.blob=new d(t.readable,{headers:i}).blob()}getData(){return this.blob}}class zt extends kt{constructor(e,t){super();const i=this;i.url=e,i.preventHeadRequest=t.preventHeadRequest,i.useRangeHeader=t.useRangeHeader,i.forceRangeRequests=t.forceRangeRequests,i.options=t=n.assign({},t),delete t.preventHeadRequest,delete t.useRangeHeader,delete t.forceRangeRequests,delete t.useXHR}async init(){super.init(),await Et(this,It,Ft)}readUint8Array(e,t){return At(this,e,t,It,Ft)}}class Dt extends kt{constructor(e,t){super();const n=this;n.url=e,n.preventHeadRequest=t.preventHeadRequest,n.useRangeHeader=t.useRangeHeader,n.forceRangeRequests=t.forceRangeRequests,n.options=t}async init(){super.init(),await Et(this,Nt,Ut)}readUint8Array(e,t){return At(this,e,t,Nt,Ut)}}async function Et(e,t,n){if((e=>{const{baseURL:t}=at(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(e.url)&&(e.useRangeHeader||e.forceRangeRequests)){const i=await t(mt,e,Tt(e));if(!e.forceRangeRequests&&"bytes"!=i.headers.get("Accept-Ranges"))throw new f(gt);{let a;const s=i.headers.get("Content-Range");if(s){const e=s.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=r(t))}}void 0===a?await Wt(e,t,n):e.size=a}}else await Wt(e,t,n)}async function At(e,t,n,i,r){if(e.useRangeHeader||e.forceRangeRequests){const r=await i(mt,e,Tt(e,t,n));if(206!=r.status)throw new f(gt);return new h(await r.arrayBuffer())}return e.data||await r(e,e.options),new h(e.data.subarray(t,t+n))}function Tt(e,t=0,i=1){return n.assign({},Ct(e),{Range:"bytes="+t+"-"+(t+i-1)})}function Ct(e){const t=e.options.headers;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Ft(e){await Lt(e,It)}async function Ut(e){await Lt(e,Nt)}async function Lt(e,t){const n=await t(mt,e,Ct(e));e.data=new h(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Wt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const i=(await t("HEAD",e,Ct(e))).headers.get("Content-Length");i?e.size=r(i):await n(e,e.options)}}async function It(e,{options:t,url:i},r){const a=await fetch(i,n.assign({},t,{method:e,headers:r}));if(400>a.status)return a;throw 416==a.status?new f(gt):new f(bt+(a.statusText||a.status))}function Nt(e,{url:t},i){return new g(((r,a)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",(()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),r({status:s.status,arrayBuffer:()=>s.response,headers:new l(e)})}else a(416==s.status?new f(gt):new f(bt+(s.statusText||s.status)))}),!1),s.addEventListener("error",(e=>a(e.detail.error)),!1),s.open(e,t),i)for(const e of n.entries(i))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()}))}class Ht extends kt{constructor(e,t={}){super(),this.url=e,this.reader=t.useXHR?new Dt(e,t):new zt(e,t)}set size(e){}get size(){return this.reader.size}async init(){super.init(),await this.reader.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Ot extends kt{constructor(e){super(),this.readers=e}async init(){super.init();const e=this,{readers:t}=e;e.lastDiskNumber=0,await g.all(t.map((async t=>{await t.init(),e.size+=t.size})))}async readUint8Array(e,t,n=0){const i=this,{readers:r}=this;let a,o=n;-1==o&&(o=r.length-1);let l=e;for(;l>=r[o].size;)l-=r[o].size,o++;const c=r[o],d=c.size;if(l+t>d){const r=d-l;a=new h(t),a.set(await Pt(c,l,r)),a.set(await i.readUint8Array(e+r,t-r,n),r)}else a=await Pt(c,l,t);return i.lastDiskNumber=s.max(o,i.lastDiskNumber),a}}async function Mt(e,t){e.init&&!e.initialized&&await e.init(t)}function Pt(e,t,n,i){return e.readUint8Array(t,n,i)}const qt=4294967295,Bt=65535,Vt=33639248,Kt=101075792,Zt="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Gt(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;n<e.length;n++)t+=Zt[e[n]];return t}})(e):new y(t).decode(e)}const jt=["filename","rawFilename","directory","encrypted","compressedSize","uncompressedSize","lastModDate","rawLastModDate","comment","rawComment","signature","extraField","rawExtraField","bitFlag","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","filenameUTF8","commentUTF8","offset","zip64","compressionMethod","extraFieldNTFS","lastAccessDate","creationDate","extraFieldExtendedTimestamp","version","versionMadeBy","msDosCompatible","internalFileAttribute","externalFileAttribute"];class Xt{constructor(e){jt.forEach((t=>this[t]=e[t]))}}const Yt="File format is not recognized",Jt="End of central directory not found",Qt="End of Zip64 central directory not found",$t="End of Zip64 central directory locator not found",en="Central directory header not found",tn="Local file header not found",nn="Zip64 extra field not found",rn="File contains encrypted entry",an="Encryption method not supported",sn="Compression method not supported",on="Split zip file",ln="utf-8",cn="cp437",dn=[["uncompressedSize",qt],["compressedSize",qt],["offset",qt],["diskNumberStart",Bt]],un={[Bt]:{getValue:xn,bytes:4},[qt]:{getValue:kn,bytes:8}};class fn{constructor(e,t,i){n.assign(this,{reader:e,config:t,options:i})}async getData(e,t,i={}){const a=this,{reader:s,offset:o,diskNumberStart:l,extraFieldAES:c,compressionMethod:d,config:u,bitFlag:h,signature:_,rawLastModDate:w,uncompressedSize:p,compressedSize:b}=a,m=a.localDirectory={};let y=await Pt(s,o,30,l);const x=vn(y);let k=pn(a,i,"password");if(k=k&&k.length&&k,c&&99!=c.originalCompressionMethod)throw new f(sn);if(0!=d&&8!=d)throw new f(sn);if(67324752!=xn(x,0))throw new f(tn);hn(m,x,4),y=await Pt(s,o,30+m.filenameLength+m.extraFieldLength,l),m.rawExtraField=y.subarray(30+m.filenameLength),await _n(a,m,x,4),n.assign(t,{lastAccessDate:m.lastAccessDate,creationDate:m.creationDate});const v=a.encrypted&&m.encrypted,R=v&&!c;if(v){if(!R&&void 0===c.strength)throw new f(an);if(!k)throw new f(rn)}const S=o+30+m.filenameLength+m.extraFieldLength,D=s.readable;D.diskNumberStart=l,D.offset=S;const E=D.size=b;e instanceof z&&(e={writable:e});const{writable:A}=e;void 0===A.size&&(A.size=0);const T=pn(a,i,"signal");await Mt(e,p);const{onstart:C,onprogress:F,onend:U}=i,L={options:{codecType:Je,password:k,zipCrypto:R,encryptionStrength:c&&c.strength,signed:pn(a,i,"checkSignature"),passwordVerification:R&&(h.dataDescriptor?w>>>8&255:_>>>24&255),signature:_,compressed:0!=d,encrypted:v,useWebWorkers:pn(a,i,"useWebWorkers"),useCompressionStream:pn(a,i,"useCompressionStream"),transferStreams:pn(a,i,"transferStreams")},config:u,streamOptions:{signal:T,size:E,onstart:C,onprogress:F,onend:U}};return A.size+=(await(async(e,t)=>{const{options:n,config:i}=t,{transferStreams:a,useWebWorkers:s,useCompressionStream:o,codecType:l,compressed:c,signed:d,encrypted:u}=n,{workerScripts:f}=i;t.transferStreams=a||void 0===a;const h=!(c||d||u||t.transferStreams);let _;if(t.useWebWorkers=!h&&(s||void 0===s&&i.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[l]:[],n.useCompressionStream=o||void 0===o&&i.useCompressionStream,ht.length<i.maxWorkers){const n={indexWorker:wt};wt++,ht.push(n),_=new ut(n,e,t,w)}else{const n=ht.find((e=>!e.busy));n?(pt(n),_=new ut(n,e,t,w)):_=await new g((n=>_t.push({resolve:n,stream:e,workerOptions:t})))}return _.run();function w(e){if(_t.length){const[{resolve:t,stream:n,workerOptions:i}]=_t.splice(0,1);t(new ut(e,n,i,w))}else if(e.worker){const{terminateWorkerTimeout:t}=i;pt(e),r.isFinite(t)&&t>=0&&(e.terminateTimeout=setTimeout((()=>{ht=ht.filter((t=>t!=e)),e.terminate()}),t))}else ht=ht.filter((t=>t!=e))}})({readable:D,writable:A},L)).size,pn(a,i,"preventClose")||await A.close(),e.getData?e.getData():A}}function hn(e,t,i){const r=e.rawBitFlag=yn(t,i+2),a=1==(1&r),s=xn(t,i+6);n.assign(e,{encrypted:a,version:yn(t,i),bitFlag:{level:(6&r)>>1,dataDescriptor:8==(8&r),languageEncodingFlag:2048==(2048&r)},rawLastModDate:s,lastModDate:bn(s),filenameLength:yn(t,i+22),extraFieldLength:yn(t,i+24)})}async function _n(e,t,i,r){const{rawExtraField:a}=t,s=t.extraField=new l,c=vn(new h(a));let d=0;try{for(;d<a.length;){const e=yn(c,d),t=yn(c,d+2);s.set(e,{type:e,data:a.slice(d+4,d+4+t)}),d+=4+t}}catch(e){}const u=yn(i,r+4);n.assign(t,{signature:xn(i,r+10),uncompressedSize:xn(i,r+18),compressedSize:xn(i,r+14)});const _=s.get(1);_&&(((e,t)=>{t.zip64=!0;const n=vn(e.data),i=dn.filter((([e,n])=>t[e]==n));for(let r=0,a=0;r<i.length;r++){const[s,o]=i[r];if(t[s]==o){const i=un[o];t[s]=e[s]=i.getValue(n,a),a+=i.bytes}else if(e[s])throw new f(nn)}})(_,t),t.extraFieldZip64=_);const w=s.get(28789);w&&(await wn(w,"filename","rawFilename",t,e),t.extraFieldUnicodePath=w);const p=s.get(25461);p&&(await wn(p,"comment","rawComment",t,e),t.extraFieldUnicodeComment=p);const b=s.get(39169);b?(((e,t,i)=>{const r=vn(e.data),a=mn(r,4);n.assign(e,{vendorVersion:mn(r,0),vendorId:mn(r,2),strength:a,originalCompressionMethod:i,compressionMethod:yn(r,5)}),t.compressionMethod=e.compressionMethod})(b,t,u),t.extraFieldAES=b):t.compressionMethod=u;const g=s.get(10);g&&(((e,t)=>{const i=vn(e.data);let r,a=4;try{for(;a<e.data.length&&!r;){const t=yn(i,a),n=yn(i,a+2);1==t&&(r=e.data.slice(a+4,a+4+n)),a+=4+n}}catch(e){}try{if(r&&24==r.length){const i=vn(r),a=i.getBigUint64(0,!0),s=i.getBigUint64(8,!0),o=i.getBigUint64(16,!0);n.assign(e,{rawLastModDate:a,rawLastAccessDate:s,rawCreationDate:o});const l={lastModDate:gn(a),lastAccessDate:gn(s),creationDate:gn(o)};n.assign(e,l),n.assign(t,l)}}catch(e){}})(g,t),t.extraFieldNTFS=g);const m=s.get(21589);m&&(((e,t)=>{const n=vn(e.data),i=mn(n,0),r=[],a=[];1==(1&i)&&(r.push("lastModDate"),a.push("rawLastModDate")),2==(2&i)&&(r.push("lastAccessDate"),a.push("rawLastAccessDate")),4==(4&i)&&(r.push("creationDate"),a.push("rawCreationDate"));let s=1;r.forEach(((i,r)=>{if(e.data.length>=s+4){const l=xn(n,s);t[i]=e[i]=new o(1e3*l);const c=a[r];e[c]=l}s+=4}))})(m,t),t.extraFieldExtendedTimestamp=m)}async function wn(e,t,i,r,a){const s=vn(e.data),o=new X;o.append(a[i]);const l=vn(new h(4));l.setUint32(0,o.get(),!0),n.assign(e,{version:mn(s,0),signature:xn(s,1),[t]:await Gt(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&e.signature==xn(l,0)}),e.valid&&(r[t]=e[t],r[t+"UTF8"]=!0)}function pn(e,t,n){return void 0===t[n]?e.options[n]:t[n]}function bn(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function gn(e){return new o(r(e/a(1e4)-a(116444736e5)))}function mn(e,t){return e.getUint8(t)}function yn(e,t){return e.getUint16(t,!0)}function xn(e,t){return e.getUint32(t,!0)}function kn(e,t){return r(e.getBigUint64(t,!0))}function vn(e){return new p(e.buffer)}st({Inflate:function(e){const t=new G,n=e&&e.chunkSize?s.floor(2*e.chunkSize):131072,i=new h(n);let r=!1;t.inflateInit(),t.next_out=i,this.append=(e,a)=>{const s=[];let o,l,c=0,d=0,u=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||r||(t.next_in_index=0,r=!0),o=t.inflate(0),r&&o===F){if(0!==t.avail_in)throw new f("inflating: bad input")}else if(0!==o&&1!==o)throw new f("inflating: "+t.msg);if((r||1===o)&&t.avail_in===e.length)throw new f("inflating: bad input");t.next_out_index&&(t.next_out_index===n?s.push(new h(i)):s.push(i.slice(0,t.next_out_index))),u+=t.next_out_index,a&&t.next_in_index>0&&t.next_in_index!=c&&(a(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return s.length>1?(l=new h(u),s.forEach((e=>{l.set(e,d),d+=e.length}))):l=s[0]||new h,l}},this.flush=()=>{t.inflateEnd()}}}),e.BlobReader=Rt,e.BlobWriter=St,e.Data64URIReader=class extends kt{constructor(e){super();const t=this;t.dataURI=e;let n=e.length;for(;"="==e.charAt(n-1);)n--;t.dataStart=e.indexOf(",")+1,t.size=s.floor(.75*(n-t.dataStart))}readUint8Array(e,t){const n=new h(t),i=4*s.floor(e/3),r=this.dataStart,a=atob(this.dataURI.substring(i+r,4*s.ceil((e+t)/3)+r)),o=e-3*s.floor(i/4);for(let e=o;o+t>e;e++)n[e-o]=a.charCodeAt(e);return n}},e.Data64URIWriter=class extends vt{constructor(e){super(),this.data="data:"+(e||"")+";base64,",this.pending=[]}writeUint8Array(e){const t=this;let n=0,r=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*s.floor((a+e.length)/3)-a;n++)r+=i.fromCharCode(e[n]);for(;n<e.length;n++)t.pending+=i.fromCharCode(e[n]);r.length>2?t.data+=v(r):t.pending=r}getData(){return this.data+v(this.pending)}},e.ERR_BAD_FORMAT=Yt,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=en,e.ERR_ENCRYPTED=rn,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=$t,e.ERR_EOCDR_NOT_FOUND=Jt,e.ERR_EOCDR_ZIP64_NOT_FOUND=Qt,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=nn,e.ERR_HTTP_RANGE=gt,e.ERR_INVALID_PASSWORD=ie,e.ERR_INVALID_SIGNATURE=re,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=tn,e.ERR_SPLIT_ZIP_FILE=on,e.ERR_UNSUPPORTED_COMPRESSION=sn,e.ERR_UNSUPPORTED_ENCRYPTION=an,e.HttpRangeReader=class extends Ht{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Ht,e.Reader=kt,e.SplitZipReader=Ot,e.TextReader=class extends Rt{constructor(e){super(new b([e],{type:"text/plain"}))}},e.TextWriter=class extends St{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,n=await super.getData();if(n.text&&t)return n.text();{const t=new FileReader;return new g(((i,r)=>{t.onload=({target:e})=>i(e.result),t.onerror=()=>r(t.error),t.readAsText(n,e)}))}}},e.Uint8ArrayReader=class extends kt{constructor(e){super(),this.array=e,this.size=e.length}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends vt{init(e=0){super.init(),this.offset=0,this.array=new h(e)}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new h(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=vt,e.ZipReader=class{constructor(e,t={}){e instanceof S&&(e={readable:e}),n.assign(this,{reader:e,options:t,config:at()})}async*getEntriesGenerator(e={}){const i=this;let{reader:r}=i;const{config:a}=i;if(await Mt(r),void 0!==r.size&&r.readUint8Array||(r=t.isArray(r)?new Ot(r):new Rt(await new d(r.readable).blob()),await Mt(r)),22>r.size)throw new f(Yt);r.chunkSize=(e=>s.max(e.chunkSize,64))(a);const o=await(async(e,t,n)=>{const i=new h(4);return vn(i).setUint32(0,101010256,!0),await r(22)||await r(s.min(1048582,n));async function r(t){const r=n-t,a=await Pt(e,r,t);for(let e=a.length-22;e>=0;e--)if(a[e]==i[0]&&a[e+1]==i[1]&&a[e+2]==i[2]&&a[e+3]==i[3])return{offset:r+e,buffer:a.slice(e,e+22).buffer}}})(r,0,r.size);if(!o)throw 134695760==xn(vn(await Pt(r,0,4)))?new f(on):new f(Jt);const{lastDiskNumber:l}=r,c=vn(o);let u=xn(c,12),_=xn(c,16);const w=o.offset,p=yn(c,20),b=w+22+p;let m=yn(c,4);if(void 0!==l&&m!=l)throw new f(on);let y=yn(c,8),x=0,k=0;if(_==qt||u==qt||y==Bt||m==Bt){const e=vn(await Pt(r,o.offset-20,20));if(117853008!=xn(e,0))throw new f(Qt);_=kn(e,8);let t=await Pt(r,_,56,-1),n=vn(t);const i=o.offset-20-56;if(xn(n,0)!=Kt&&_!=i){const e=_;_=i,x=_-e,t=await Pt(r,_,56,-1),n=vn(t)}if(xn(n,0)!=Kt)throw new f($t);m==Bt&&(m=xn(n,16)),y==Bt&&(y=kn(n,32)),u==qt&&(u=kn(n,40)),_-=u}if(0>_||_>=r.size)throw new f(Yt);let v=0,R=await Pt(r,_,u,m),S=vn(R);if(u){const e=o.offset-u;if(xn(S,v)!=Vt&&_!=e){const t=_;_=e,x=_-t,R=await Pt(r,_,u,m),S=vn(R)}}if(0>_||_>=r.size)throw new f(Yt);const z=pn(i,e,"filenameEncoding"),D=pn(i,e,"commentEncoding");for(let t=0;y>t;t++){const o=new fn(r,a,i.options);if(xn(S,v)!=Vt)throw new f(en);hn(o,S,v+6);const l=!!o.bitFlag.languageEncodingFlag,c=v+46,d=c+o.filenameLength,u=d+o.extraFieldLength,h=yn(S,v+4),_=0==(0&h),w=R.subarray(c,d),p=yn(S,v+32),b=u+p,m=R.subarray(u,b),E=l,A=l,T=_&&16==(16&mn(S,v+38)),C=xn(S,v+42)+x;n.assign(o,{versionMadeBy:h,msDosCompatible:_,compressedSize:0,uncompressedSize:0,commentLength:p,directory:T,offset:C,diskNumberStart:yn(S,v+34),internalFileAttribute:yn(S,v+36),externalFileAttribute:xn(S,v+38),rawFilename:w,filenameUTF8:E,commentUTF8:A,rawExtraField:R.subarray(d,u)});const[F,U]=await g.all([Gt(w,E?ln:z||cn),Gt(m,A?ln:D||cn)]);n.assign(o,{rawComment:m,filename:F,comment:U,directory:T||F.endsWith("/")}),k=s.max(C,k),await _n(o,o,S,v+6);const L=new Xt(o);L.getData=(e,t)=>o.getData(e,L,t),v=b;const{onprogress:W}=e;if(W)try{await W(t+1,y,new Xt(o))}catch(e){}yield L}const E=pn(i,e,"extractPrependedData"),A=pn(i,e,"extractAppendedData");return E&&(i.prependedData=k>0?await Pt(r,0,k):new h),i.comment=p?await Pt(r,w+22,p):new h,A&&(i.appendedData=b<r.size?await Pt(r,b,r.size-b):new h),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){}},e.configure=st,e.getMimeType=()=>"application/octet-stream",e.initStream=Mt,e.readUint8Array=Pt,e.terminateWorkers=()=>{ht.forEach((e=>{pt(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})}));
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:i,Number:r,BigInt:a,Math:s,Date:o,Map:l,Set:c,Response:d,URL:u,Error:f,Uint8Array:_,Uint16Array:h,Uint32Array:w,DataView:p,Blob:b,Promise:g,TextEncoder:m,TextDecoder:y,document:x,crypto:k,btoa:v,TransformStream:S,ReadableStream:R,WritableStream:z,CompressionStream:D,DecompressionStream:E,navigator:T}="undefined"!=typeof globalThis?globalThis:this||self,A=-2,C=-3,F=-5,U=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],L=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],W=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],I=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],N=[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,112,112],O=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],H=[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];function M(){let e,t,n,i,r,a;function s(e,t,s,o,l,c,d,u,f,_,h){let w,p,b,g,m,y,x,k,v,S,R,z,D,E,T;S=0,m=s;do{n[e[t+S]]++,S++,m--}while(0!==m);if(n[0]==s)return d[0]=-1,u[0]=0,0;for(k=u[0],y=1;15>=y&&0===n[y];y++);for(x=y,y>k&&(k=y),m=15;0!==m&&0===n[m];m--);for(b=m,k>m&&(k=m),u[0]=k,E=1<<y;m>y;y++,E<<=1)if(0>(E-=n[y]))return C;if(0>(E-=n[m]))return C;for(n[m]+=E,a[1]=y=0,S=1,D=2;0!=--m;)a[D]=y+=n[S],D++,S++;m=0,S=0;do{0!==(y=e[t+S])&&(h[a[y]++]=m),S++}while(++m<s);for(s=a[b],a[0]=m=0,S=0,g=-1,z=-k,r[0]=0,R=0,T=0;b>=x;x++)for(w=n[x];0!=w--;){for(;x>z+k;){if(g++,z+=k,T=b-z,T=T>k?k:T,(p=1<<(y=x-z))>w+1&&(p-=w+1,D=x,T>y))for(;++y<T&&(p<<=1)>n[++D];)p-=n[D];if(T=1<<y,_[0]+T>1440)return C;r[g]=R=_[0],_[0]+=T,0!==g?(a[g]=m,i[0]=y,i[1]=k,y=m>>>z-k,i[2]=R-r[g-1]-y,f.set(i,3*(r[g-1]+y))):d[0]=R}for(i[1]=x-z,s>S?h[S]<o?(i[0]=256>h[S]?0:96,i[2]=h[S++]):(i[0]=c[h[S]-o]+16+64,i[2]=l[h[S++]-o]):i[0]=192,p=1<<x-z,y=m>>>z;T>y;y+=p)f.set(i,3*(R+y));for(y=1<<x-1;0!=(m&y);y>>>=1)m^=y;for(m^=y,v=(1<<z)-1;(m&v)!=a[g];)g--,z-=k,v=(1<<z)-1}return 0!==E&&1!=b?F:0}function o(s){let o;for(e||(e=[],t=[],n=new Int32Array(16),i=[],r=new Int32Array(15),a=new Int32Array(16)),t.length<s&&(t=[]),o=0;s>o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)i[o]=0;r.set(n.subarray(0,15),0),a.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,i,r,a,l)=>{let c;return o(19),e[0]=0,c=s(n,0,19,19,null,null,r,i,a,e,t),c==C?l.msg="oversubscribed dynamic bit lengths tree":c!=F&&0!==i[0]||(l.msg="incomplete dynamic bit lengths tree",c=C),c},this.inflate_trees_dynamic=(n,i,r,a,l,c,d,u,f)=>{let _;return o(288),e[0]=0,_=s(r,0,n,257,I,N,c,a,u,e,t),0!=_||0===a[0]?(_==C?f.msg="oversubscribed literal/length tree":-4!=_&&(f.msg="incomplete literal/length tree",_=C),_):(o(288),_=s(r,n,i,0,O,H,d,l,u,e,t),0!=_||0===l[0]&&n>257?(_==C?f.msg="oversubscribed distance tree":_==F?(f.msg="incomplete distance tree",_=C):-4!=_&&(f.msg="empty distance tree with lengths",_=C),_):0)}}function P(){const e=this;let t,n,i,r,a=0,s=0,o=0,l=0,c=0,d=0,u=0,f=0,_=0,h=0;function w(e,t,n,i,r,a,s,o){let l,c,d,u,f,_,h,w,p,b,g,m,y,x,k,v;h=o.next_in_index,w=o.avail_in,f=s.bitb,_=s.bitk,p=s.write,b=p<s.read?s.read-p-1:s.end-p,g=U[e],m=U[t];do{for(;20>_;)w--,f|=(255&o.read_byte(h++))<<_,_+=8;if(l=f&g,c=n,d=i,v=3*(d+l),0!==(u=c[v]))for(;;){if(f>>=c[v+1],_-=c[v+1],0!=(16&u)){for(u&=15,y=c[v+2]+(f&U[u]),f>>=u,_-=u;15>_;)w--,f|=(255&o.read_byte(h++))<<_,_+=8;for(l=f&m,c=r,d=a,v=3*(d+l),u=c[v];;){if(f>>=c[v+1],_-=c[v+1],0!=(16&u)){for(u&=15;u>_;)w--,f|=(255&o.read_byte(h++))<<_,_+=8;if(x=c[v+2]+(f&U[u]),f>>=u,_-=u,b-=y,x>p){k=p-x;do{k+=s.end}while(0>k);if(u=s.end-k,y>u){if(y-=u,p-k>0&&u>p-k)do{s.win[p++]=s.win[k++]}while(0!=--u);else s.win.set(s.win.subarray(k,k+u),p),p+=u,k+=u,u=0;k=0}}else k=p-x,p-k>0&&2>p-k?(s.win[p++]=s.win[k++],s.win[p++]=s.win[k++],y-=2):(s.win.set(s.win.subarray(k,k+2),p),p+=2,k+=2,y-=2);if(p-k>0&&y>p-k)do{s.win[p++]=s.win[k++]}while(0!=--y);else s.win.set(s.win.subarray(k,k+y),p),p+=y,k+=y,y=0;break}if(0!=(64&u))return o.msg="invalid distance code",y=o.avail_in-w,y=y>_>>3?_>>3:y,w+=y,h-=y,_-=y<<3,s.bitb=f,s.bitk=_,o.avail_in=w,o.total_in+=h-o.next_in_index,o.next_in_index=h,s.write=p,C;l+=c[v+2],l+=f&U[u],v=3*(d+l),u=c[v]}break}if(0!=(64&u))return 0!=(32&u)?(y=o.avail_in-w,y=y>_>>3?_>>3:y,w+=y,h-=y,_-=y<<3,s.bitb=f,s.bitk=_,o.avail_in=w,o.total_in+=h-o.next_in_index,o.next_in_index=h,s.write=p,1):(o.msg="invalid literal/length code",y=o.avail_in-w,y=y>_>>3?_>>3:y,w+=y,h-=y,_-=y<<3,s.bitb=f,s.bitk=_,o.avail_in=w,o.total_in+=h-o.next_in_index,o.next_in_index=h,s.write=p,C);if(l+=c[v+2],l+=f&U[u],v=3*(d+l),0===(u=c[v])){f>>=c[v+1],_-=c[v+1],s.win[p++]=c[v+2],b--;break}}else f>>=c[v+1],_-=c[v+1],s.win[p++]=c[v+2],b--}while(b>=258&&w>=10);return y=o.avail_in-w,y=y>_>>3?_>>3:y,w+=y,h-=y,_-=y<<3,s.bitb=f,s.bitk=_,o.avail_in=w,o.total_in+=h-o.next_in_index,o.next_in_index=h,s.write=p,0}e.init=(e,a,s,o,l,c)=>{t=0,u=e,f=a,i=s,_=o,r=l,h=c,n=null},e.proc=(e,p,b)=>{let g,m,y,x,k,v,S,R=0,z=0,D=0;for(D=p.next_in_index,x=p.avail_in,R=e.bitb,z=e.bitk,k=e.write,v=k<e.read?e.read-k-1:e.end-k;;)switch(t){case 0:if(v>=258&&x>=10&&(e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,b=w(u,f,i,_,r,h,e,p),D=p.next_in_index,x=p.avail_in,R=e.bitb,z=e.bitk,k=e.write,v=k<e.read?e.read-k-1:e.end-k,0!=b)){t=1==b?7:9;break}o=u,n=i,s=_,t=1;case 1:for(g=o;g>z;){if(0===x)return e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,R|=(255&p.read_byte(D++))<<z,z+=8}if(m=3*(s+(R&U[g])),R>>>=n[m+1],z-=n[m+1],y=n[m],0===y){l=n[m+2],t=6;break}if(0!=(16&y)){c=15&y,a=n[m+2],t=2;break}if(0==(64&y)){o=y,s=m/3+n[m+2];break}if(0!=(32&y)){t=7;break}return t=9,p.msg="invalid literal/length code",b=C,e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);case 2:for(g=c;g>z;){if(0===x)return e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,R|=(255&p.read_byte(D++))<<z,z+=8}a+=R&U[g],R>>=g,z-=g,o=f,n=r,s=h,t=3;case 3:for(g=o;g>z;){if(0===x)return e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,R|=(255&p.read_byte(D++))<<z,z+=8}if(m=3*(s+(R&U[g])),R>>=n[m+1],z-=n[m+1],y=n[m],0!=(16&y)){c=15&y,d=n[m+2],t=4;break}if(0==(64&y)){o=y,s=m/3+n[m+2];break}return t=9,p.msg="invalid distance code",b=C,e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);case 4:for(g=c;g>z;){if(0===x)return e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,R|=(255&p.read_byte(D++))<<z,z+=8}d+=R&U[g],R>>=g,z-=g,t=5;case 5:for(S=k-d;0>S;)S+=e.end;for(;0!==a;){if(0===v&&(k==e.end&&0!==e.read&&(k=0,v=k<e.read?e.read-k-1:e.end-k),0===v&&(e.write=k,b=e.inflate_flush(p,b),k=e.write,v=k<e.read?e.read-k-1:e.end-k,k==e.end&&0!==e.read&&(k=0,v=k<e.read?e.read-k-1:e.end-k),0===v)))return e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);e.win[k++]=e.win[S++],v--,S==e.end&&(S=0),a--}t=0;break;case 6:if(0===v&&(k==e.end&&0!==e.read&&(k=0,v=k<e.read?e.read-k-1:e.end-k),0===v&&(e.write=k,b=e.inflate_flush(p,b),k=e.write,v=k<e.read?e.read-k-1:e.end-k,k==e.end&&0!==e.read&&(k=0,v=k<e.read?e.read-k-1:e.end-k),0===v)))return e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,e.win[k++]=l,v--,t=0;break;case 7:if(z>7&&(z-=8,x++,D--),e.write=k,b=e.inflate_flush(p,b),k=e.write,v=k<e.read?e.read-k-1:e.end-k,e.read!=e.write)return e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);t=8;case 8:return b=1,e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);case 9:return b=C,e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);default:return b=A,e.bitb=R,e.bitk=z,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b)}},e.free=()=>{}}M.inflate_trees_fixed=(e,t,n,i)=>(e[0]=9,t[0]=5,n[0]=L,i[0]=W,0);const B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function q(e,t){const n=this;let i,r=0,a=0,s=0,o=0;const l=[0],c=[0],d=new P;let u=0,f=new Int32Array(4320);const h=new M;n.bitk=0,n.bitb=0,n.win=new _(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==r&&d.free(e),r=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let i,r,a;return r=e.next_out_index,a=n.read,i=(a>n.write?n.end:n.write)-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==F&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i,a==n.end&&(a=0,n.write==n.end&&(n.write=0),i=n.write-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==F&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i),e.next_out_index=r,n.read=a,t},n.proc=(e,t)=>{let _,w,p,b,g,m,y,x;for(b=e.next_in_index,g=e.avail_in,w=n.bitb,p=n.bitk,m=n.write,y=m<n.read?n.read-m-1:n.end-m;;){let k,v,S,R,z,D,E,T;switch(r){case 0:for(;3>p;){if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,w|=(255&e.read_byte(b++))<<p,p+=8}switch(_=7&w,u=1&_,_>>>1){case 0:w>>>=3,p-=3,_=7&p,w>>>=_,p-=_,r=1;break;case 1:k=[],v=[],S=[[]],R=[[]],M.inflate_trees_fixed(k,v,S,R),d.init(k[0],v[0],S[0],0,R[0],0),w>>>=3,p-=3,r=6;break;case 2:w>>>=3,p-=3,r=3;break;case 3:return w>>>=3,p-=3,r=9,e.msg="invalid block type",t=C,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t)}break;case 1:for(;32>p;){if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,w|=(255&e.read_byte(b++))<<p,p+=8}if((~w>>>16&65535)!=(65535&w))return r=9,e.msg="invalid stored block lengths",t=C,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);a=65535&w,w=p=0,r=0!==a?2:0!==u?7:0;break;case 2:if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(0===y&&(m==n.end&&0!==n.read&&(m=0,y=m<n.read?n.read-m-1:n.end-m),0===y&&(n.write=m,t=n.inflate_flush(e,t),m=n.write,y=m<n.read?n.read-m-1:n.end-m,m==n.end&&0!==n.read&&(m=0,y=m<n.read?n.read-m-1:n.end-m),0===y)))return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(t=0,_=a,_>g&&(_=g),_>y&&(_=y),n.win.set(e.read_buf(b,_),m),b+=_,g-=_,m+=_,y-=_,0!=(a-=_))break;r=0!==u?7:0;break;case 3:for(;14>p;){if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,w|=(255&e.read_byte(b++))<<p,p+=8}if(s=_=16383&w,(31&_)>29||(_>>5&31)>29)return r=9,e.msg="too many length or distance symbols",t=C,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(_=258+(31&_)+(_>>5&31),!i||i.length<_)i=[];else for(x=0;_>x;x++)i[x]=0;w>>>=14,p-=14,o=0,r=4;case 4:for(;4+(s>>>10)>o;){for(;3>p;){if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,w|=(255&e.read_byte(b++))<<p,p+=8}i[B[o++]]=7&w,w>>>=3,p-=3}for(;19>o;)i[B[o++]]=0;if(l[0]=7,_=h.inflate_trees_bits(i,l,c,f,e),0!=_)return(t=_)==C&&(i=null,r=9),n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);o=0,r=5;case 5:for(;_=s,258+(31&_)+(_>>5&31)>o;){let a,d;for(_=l[0];_>p;){if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,w|=(255&e.read_byte(b++))<<p,p+=8}if(_=f[3*(c[0]+(w&U[_]))+1],d=f[3*(c[0]+(w&U[_]))+2],16>d)w>>>=_,p-=_,i[o++]=d;else{for(x=18==d?7:d-14,a=18==d?11:3;_+x>p;){if(0===g)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,w|=(255&e.read_byte(b++))<<p,p+=8}if(w>>>=_,p-=_,a+=w&U[x],w>>>=x,p-=x,x=o,_=s,x+a>258+(31&_)+(_>>5&31)||16==d&&1>x)return i=null,r=9,e.msg="invalid bit length repeat",t=C,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d=16==d?i[x-1]:0;do{i[x++]=d}while(0!=--a);o=x}}if(c[0]=-1,z=[],D=[],E=[],T=[],z[0]=9,D[0]=6,_=s,_=h.inflate_trees_dynamic(257+(31&_),1+(_>>5&31),i,z,D,E,T,f,e),0!=_)return _==C&&(i=null,r=9),t=_,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d.init(z[0],D[0],f,E[0],f,T[0]),r=6;case 6:if(n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),b=e.next_in_index,g=e.avail_in,w=n.bitb,p=n.bitk,m=n.write,y=m<n.read?n.read-m-1:n.end-m,0===u){r=0;break}r=7;case 7:if(n.write=m,t=n.inflate_flush(e,t),m=n.write,y=m<n.read?n.read-m-1:n.end-m,n.read!=n.write)return n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);r=8;case 8:return t=1,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);case 9:return t=C,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);default:return t=A,n.bitb=w,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t)}}},n.free=e=>{n.reset(e,null),n.win=null,f=null},n.set_dictionary=(e,t,i)=>{n.win.set(e.subarray(t,t+i),0),n.read=n.write=i},n.sync_point=()=>1==r?1:0}const V=13,K=[0,0,255,255];function Z(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):A}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,i)=>(n.msg=null,e.blocks=null,8>i||i>15?(e.inflateEnd(n),A):(e.wbits=i,n.istate.blocks=new q(n,1<<i),t(n),0)),e.inflate=(e,t)=>{let n,i;if(!e||!e.istate||!e.next_in)return A;const r=e.istate;for(t=4==t?F:0,n=F;;)switch(r.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(r.method=e.read_byte(e.next_in_index++)))){r.mode=V,e.msg="unknown compression method",r.marker=5;break}if(8+(r.method>>4)>r.wbits){r.mode=V,e.msg="invalid win size",r.marker=5;break}r.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,i=255&e.read_byte(e.next_in_index++),((r.method<<8)+i)%31!=0){r.mode=V,e.msg="incorrect header check",r.marker=5;break}if(0==(32&i)){r.mode=7;break}r.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,r.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,r.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,r.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,r.need+=255&e.read_byte(e.next_in_index++),r.mode=6,2);case 6:return r.mode=V,e.msg="need dictionary",r.marker=0,A;case 7:if(n=r.blocks.proc(e,n),n==C){r.mode=V,r.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,r.blocks.reset(e,r.was),r.mode=12;case 12:return e.avail_in=0,1;case V:return C;default:return A}},e.inflateSetDictionary=(e,t,n)=>{let i=0,r=n;if(!e||!e.istate||6!=e.istate.mode)return A;const a=e.istate;return r<1<<a.wbits||(r=(1<<a.wbits)-1,i=n-r),a.blocks.set_dictionary(t,i,r),a.mode=7,0},e.inflateSync=e=>{let n,i,r,a,s;if(!e||!e.istate)return A;const o=e.istate;if(o.mode!=V&&(o.mode=V,o.marker=0),0===(n=e.avail_in))return F;for(i=e.next_in_index,r=o.marker;0!==n&&4>r;)e.read_byte(i)==K[r]?r++:r=0!==e.read_byte(i)?0:4-r,i++,n--;return e.total_in+=i-e.next_in_index,e.next_in_index=i,e.avail_in=n,o.marker=r,4!=r?C:(a=e.total_in,s=e.total_out,t(e),e.total_in=a,e.total_out=s,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():A}function G(){}G.prototype={inflateInit(e){const t=this;return t.istate=new Z,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):A},inflateEnd(){const e=this;if(!e.istate)return A;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):A},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):A},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const j=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;j[e]=t}class X{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,i=0|e.length;i>n;n++)t=t>>>8^j[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Y extends S{constructor(){const e=new X;super({transform(t){e.append(t)},flush(t){const n=new _(4);new p(n.buffer).setUint32(0,e.get()),t.enqueue(n)}})}}const J={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],i=J.getPartial(n);return 32===i?e.concat(t):J._shiftRight(t,i,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+J.getPartial(n)},clamp(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,s.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=J.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>s.round(e/1099511627776)||32,_shiftRight(e,t,n,i){for(void 0===i&&(i=[]);t>=32;t-=32)i.push(n),n=0;if(0===t)return i.concat(e);for(let r=0;r<e.length;r++)i.push(n|e[r]>>>t),n=e[r]<<32-t;const r=e.length?e[e.length-1]:0,a=J.getPartial(r);return i.push(J.partial(t+a&31,t+a>32?n:i.pop(),1)),i}},Q={bytes:{fromBits(e){const t=J.bitLength(e)/8,n=new _(t);let i;for(let r=0;t>r;r++)0==(3&r)&&(i=e[r/4]),n[r]=i>>>24,i<<=8;return n},toBits(e){const t=[];let n,i=0;for(n=0;n<e.length;n++)i=i<<8|e[n],3==(3&n)&&(t.push(i),i=0);return 3&n&&t.push(J.partial(8*(3&n),i)),t}}},$={sha1:function(e){e?(this._h=e._h.slice(0),this._buffer=e._buffer.slice(0),this._length=e._length):this.reset()}};$.sha1.prototype={blockSize:512,reset(){const e=this;return e._h=this._init.slice(0),e._buffer=[],e._length=0,e},update(e){const t=this;"string"==typeof e&&(e=Q.utf8String.toBits(e));const n=t._buffer=J.concat(t._buffer,e),i=t._length,r=t._length=i+J.bitLength(e);if(r>9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new w(n);let s=0;for(let e=t.blockSize+i-(t.blockSize+i&t.blockSize-1);r>=e;e+=t.blockSize)t._block(a.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t},finalize(){const e=this;let t=e._buffer;const n=e._h;t=J.concat(t,[J.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n},_init:[1732584193,4023233417,2562383102,271733878,3285377520],_key:[1518500249,1859775393,2400959708,3395469782],_f:(e,t,n,i)=>e>19?e>39?e>59?e>79?void 0:t^n^i:t&n|t&i|n&i:t^n^i:t&n|~t&i,_S:(e,t)=>t<<e|t>>>32-e,_block(e){const n=this,i=n._h,r=t(80);for(let t=0;16>t;t++)r[t]=e[t];let a=i[0],o=i[1],l=i[2],c=i[3],d=i[4];for(let e=0;79>=e;e++){16>e||(r[e]=n._S(1,r[e-3]^r[e-8]^r[e-14]^r[e-16]));const t=n._S(5,a)+n._f(e,o,l,c)+d+r[e]+n._key[s.floor(e/20)]|0;d=c,c=l,l=n._S(30,o),o=a,a=t}i[0]=i[0]+a|0,i[1]=i[1]+o|0,i[2]=i[2]+l|0,i[3]=i[3]+c|0,i[4]=i[4]+d|0}};const ee={getRandomValues(e){const t=new w(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(s.random()>.5?1:-1))};for(let i,r=0;r<e.length;r+=4){const e=n(4294967296*(i||s.random()));i=987654071*e(),t[r/4]=4294967296*e()|0}return e}},te={importKey:e=>new te.hmacSha1(Q.bytes.toBits(e)),pbkdf2(e,t,n,i){if(n=n||1e4,0>i||0>n)throw new f("invalid params to pbkdf2");const r=1+(i>>5)<<2;let a,s,o,l,c;const d=new ArrayBuffer(r),u=new p(d);let _=0;const h=J;for(t=Q.bytes.toBits(t),c=1;(r||1)>_;c++){for(a=s=e.encrypt(h.concat(t,[c])),o=1;n>o;o++)for(s=e.encrypt(s),l=0;l<s.length;l++)a[l]^=s[l];for(o=0;(r||1)>_&&o<a.length;o++)u.setInt32(_,a[o]),_+=4}return d.slice(0,i/8)},hmacSha1:class{constructor(e){const t=this,n=t._hash=$.sha1,i=[[],[]],r=n.prototype.blockSize/32;t._baseHash=[new n,new n],e.length>r&&(e=n.hash(e));for(let t=0;r>t;t++)i[0][t]=909522486^e[t],i[1][t]=1549556828^e[t];t._baseHash[0].update(i[0]),t._baseHash[1].update(i[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},ne=void 0!==k&&"function"==typeof k.getRandomValues,ie="Invalid password",re="Invalid signature";function ae(e){return ne?k.getRandomValues(e):ee.getRandomValues(e)}const se=16,oe={name:"PBKDF2"},le=n.assign({hash:{name:"HMAC"}},oe),ce=n.assign({iterations:1e3,hash:{name:"SHA-1"}},oe),de=["deriveBits"],ue=[8,12,16],fe=[16,24,32],_e=10,he=[0,0,0,0],we="undefined",pe="function",be=typeof k!=we,ge=be&&k.subtle,me=be&&typeof ge!=we,ye=be&&me&&typeof ge.importKey==pe,xe=be&&me&&typeof ge.deriveBits==pe,ke=Q.bytes,ve=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],i=t._tables[1],r=e.length;let a,s,o,l=1;if(4!==r&&6!==r&&8!==r)throw new f("invalid aes key size");for(t._key=[s=e.slice(0),o=[]],a=r;4*r+28>a;a++){let e=s[a-1];(a%r==0||8===r&&a%r==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],a%r==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),s[a]=s[a-r]^e}for(let e=0;a;e++,a--){const t=s[3&e?a:a-4];o[e]=4>=a||4>e?t:i[0][n[t>>>24]]^i[1][n[t>>16&255]]^i[2][n[t>>8&255]]^i[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],i=t[4],r=[],a=[];let s,o,l,c;for(let e=0;256>e;e++)a[(r[e]=e<<1^283*(e>>7))^e]=e;for(let d=s=0;!n[d];d^=o||1,s=a[s]||1){let a=s^s<<1^s<<2^s<<3^s<<4;a=a>>8^255&a^99,n[d]=a,i[a]=d,c=r[l=r[o=r[d]]];let u=16843009*c^65537*l^257*o^16843008*d,f=257*r[a]^16843008*a;for(let n=0;4>n;n++)e[n][d]=f=f<<24^f>>>8,t[n][a]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],i=n.length/4-2,r=[0,0,0,0],a=this._tables[t],s=a[0],o=a[1],l=a[2],c=a[3],d=a[4];let u,_,h,w=e[0]^n[0],p=e[t?3:1]^n[1],b=e[2]^n[2],g=e[t?1:3]^n[3],m=4;for(let e=0;i>e;e++)u=s[w>>>24]^o[p>>16&255]^l[b>>8&255]^c[255&g]^n[m],_=s[p>>>24]^o[b>>16&255]^l[g>>8&255]^c[255&w]^n[m+1],h=s[b>>>24]^o[g>>16&255]^l[w>>8&255]^c[255&p]^n[m+2],g=s[g>>>24]^o[w>>16&255]^l[p>>8&255]^c[255&b]^n[m+3],m+=4,w=u,p=_,b=h;for(let e=0;4>e;e++)r[t?3&-e:e]=d[w>>>24]<<24^d[p>>16&255]<<16^d[b>>8&255]<<8^d[255&g]^n[m++],u=w,w=p,p=b,b=g,g=u;return r}},Se=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255==(e>>24&255)){let t=e>>16&255,n=e>>8&255,i=255&e;255===t?(t=0,255===n?(n=0,255===i?i=0:++i):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=i}else e+=1<<24;return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let i;if(!(i=t.length))return[];const r=J.bitLength(t);for(let r=0;i>r;r+=4){this.incCounter(n);const i=e.encrypt(n);t[r]^=i[0],t[r+1]^=i[1],t[r+2]^=i[2],t[r+3]^=i[3]}return J.clamp(t,r)}},Re=te.hmacSha1;class ze extends S{constructor(e,t,i){super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:e,signed:t,strength:i-1,pending:new _})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:a,ready:s}=n;i?(await(async(e,t,n,i)=>{const r=await Te(e,t,n,Ce(i,0,ue[t])),a=Ce(i,ue[t]);if(r[0]!=a[0]||r[1]!=a[1])throw new f(ie)})(n,r,i,Ce(e,0,ue[r]+2)),e=Ce(e,ue[r]+2),a()):await s;const o=new _(e.length-_e-(e.length-_e)%se);t.enqueue(Ee(n,e,o,0,_e,!0))},async flush(e){const{signed:t,ctr:n,hmac:i,pending:r,ready:a}=this;await a;const s=Ce(r,0,r.length-_e),o=Ce(r,r.length-_e);let l=new _;if(s.length){const e=Ue(ke,s);i.update(e);const t=n.update(e);l=Fe(ke,t)}if(t){const e=Ce(Fe(ke,i.digest()),0,_e);for(let t=0;_e>t;t++)if(e[t]!=o[t])throw new f(re)}e.enqueue(l)}})}}class De extends S{constructor(e,t){let i;super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new _})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:a,ready:s}=n;let o=new _;i?(o=await(async(e,t,n)=>{const i=ae(new _(ue[t]));return Ae(i,await Te(e,t,n,i))})(n,r,i),a()):await s;const l=new _(o.length+e.length-e.length%se);l.set(o,0),t.enqueue(Ee(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:a}=this;await a;let s=new _;if(r.length){const e=t.update(Ue(ke,r));n.update(e),s=Fe(ke,e)}i.signature=Fe(ke,n.digest()).slice(0,_e),e.enqueue(Ae(s,i.signature))}}),i=this}}function Ee(e,t,n,i,r,a){const{ctr:s,hmac:o,pending:l}=e,c=t.length-r;let d;for(l.length&&(t=Ae(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new _(t)).set(n,0)}return e})(n,c-c%se)),d=0;c-se>=d;d+=se){const e=Ue(ke,Ce(t,d,d+se));a&&o.update(e);const r=s.update(e);a||o.update(r),n.set(Fe(ke,r),d+i)}return e.pending=Ce(t,d),n}async function Te(e,i,r,a){e.password=null;const s=(e=>{if(void 0===m){const t=new _((e=unescape(encodeURIComponent(e))).length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new m).encode(e)})(r),o=await((e,t,n,i,r)=>ye?ge.importKey("raw",t,n,!1,r):te.importKey(t))(0,s,le,0,de),l=await(async(e,t,n)=>xe?await ge.deriveBits(e,t,n):te.pbkdf2(t,e.salt,ce.iterations,n))(n.assign({salt:a},ce),o,8*(2*fe[i]+2)),c=new _(l),d=Ue(ke,Ce(c,0,fe[i])),u=Ue(ke,Ce(c,fe[i],2*fe[i])),f=Ce(c,2*fe[i]);return n.assign(e,{keys:{key:d,authentication:u,passwordVerification:f},ctr:new Se(new ve(d),t.from(he)),hmac:new Re(u)}),f}function Ae(e,t){let n=e;return e.length+t.length&&(n=new _(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Ce(e,t,n){return e.subarray(t,n)}function Fe(e,t){return e.fromBits(t)}function Ue(e,t){return e.toBits(t)}class Le extends S{constructor(e,t){super({start(){n.assign(this,{password:e,passwordVerification:t}),Oe(this,e)},transform(e,t){const n=this;if(n.password){const t=Ie(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(ie);e=e.subarray(12)}t.enqueue(Ie(n,e))}})}}class We extends S{constructor(e,t){super({start(){n.assign(this,{password:e,passwordVerification:t}),Oe(this,e)},transform(e,t){const n=this;let i,r;if(n.password){n.password=null;const t=ae(new _(12));t[11]=n.passwordVerification,i=new _(e.length+t.length),i.set(Ne(n,t),0),r=12}else i=new _(e.length),r=0;i.set(Ne(n,e),r),t.enqueue(i)}})}}function Ie(e,t){const n=new _(t.length);for(let i=0;i<t.length;i++)n[i]=Me(e)^t[i],He(e,n[i]);return n}function Ne(e,t){const n=new _(t.length);for(let i=0;i<t.length;i++)n[i]=Me(e)^t[i],He(e,t[i]);return n}function Oe(e,t){const i=[305419896,591751049,878082192];n.assign(e,{keys:i,crcKey0:new X(i[0]),crcKey2:new X(i[2])});for(let n=0;n<t.length;n++)He(e,t.charCodeAt(n))}function He(e,t){let[n,i,r]=e.keys;e.crcKey0.append([t]),n=~e.crcKey0.get(),i=Be(s.imul(Be(i+Pe(n)),134775813)+1),e.crcKey2.append([i>>>24]),r=~e.crcKey2.get(),e.keys=[n,i,r]}function Me(e){const t=2|e.keys[2];return Pe(s.imul(t,1^t)>>>8)}function Pe(e){return 255&e}function Be(e){return 4294967295&e}const qe="deflate-raw";class Ve extends S{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:i}){super({});const{compressed:r,encrypted:a,useCompressionStream:s,password:o,passwordVerification:l,encryptionStrength:c,zipCrypto:d,signed:u,level:f}=e,_=this;let h,w,b=Ze(super.readable);a&&!d||!u||([b,h]=b.tee(),h=Xe(h,new Y)),r&&(b=je(b,s,{level:f,chunkSize:t},i,n)),a&&(d?b=Xe(b,new We(o,l)):(w=new De(o,c),b=Xe(b,w))),Ge(_,b,(async()=>{let e;a&&!d&&(e=w.signature),a&&!d||!u||(e=await h.getReader().read(),e=new p(e.value.buffer).getUint32(0)),_.signature=e}))}}class Ke extends S{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:i}){super({});const{zipCrypto:r,encrypted:a,password:s,passwordVerification:o,signed:l,signature:c,encryptionStrength:d,compressed:u,useCompressionStream:_}=e;let h,w,b=Ze(super.readable);a&&(r?b=Xe(b,new Le(s,o)):(w=new ze(s,l,d),b=Xe(b,w))),u&&(b=je(b,_,{chunkSize:t},i,n)),a&&!r||!l||([b,h]=b.tee(),h=Xe(h,new Y)),Ge(this,b,(async()=>{if((!a||r)&&l){const e=await h.getReader().read(),t=new p(e.value.buffer);if(c!=t.getUint32(0,!1))throw new f(re)}}))}}function Ze(e){return Xe(e,new S({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function Ge(e,t,i){t=Xe(t,new S({flush:i})),n.defineProperty(e,"readable",{get:()=>t})}function je(e,t,n,i,r){try{e=Xe(e,new(t&&i?i:r)(qe,n))}catch(i){if(!t)throw i;e=Xe(e,new r(qe,n))}return e}function Xe(e,t){return e.pipeThrough(t)}class Ye extends S{constructor(e,t){const n=new e(t);super({transform(e,t){t.enqueue(n.append(e))},flush(e){const t=n.flush();t&&e.enqueue(t)}})}}const Je="inflate",Qe="data";class $e{constructor(e,t,i,r){const{codecType:a}=i;let s;a.startsWith("deflate")?s=Ve:a.startsWith(Je)&&(s=Ke),n.assign(this,{CodecStream:s,readable:e,writable:t,options:i,config:r})}async run(){const{CodecStream:e,readable:t,writable:n,options:i,config:r}=this,a=new e(i,r);let s=0;await t.pipeThrough(a).pipeThrough(new S({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))}})).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:o}=a;return{size:s,signature:o}}}function et(e){return class extends Ye{constructor(t,n){super(e,n)}}}const tt=4294967295,nt=65535,it=33639248,rt=101075792,at=void 0,st="undefined";let ot=2;try{typeof T!=st&&T.hardwareConcurrency&&(ot=T.hardwareConcurrency)}catch(e){}const lt={chunkSize:524288,maxWorkers:ot,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:at,CompressionStreamNative:typeof D!=st&&D,DecompressionStreamNative:typeof E!=st&&E},ct=n.assign({},lt);function dt(){return ct}function ut(e){const{baseURL:n,chunkSize:i,maxWorkers:r,terminateWorkerTimeout:a,useCompressionStream:s,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:u,workerScripts:_}=e;if(ft("baseURL",n),ft("chunkSize",i),ft("maxWorkers",r),ft("terminateWorkerTimeout",a),ft("useCompressionStream",s),ft("useWebWorkers",o),l&&(ct.CompressionStream=et(l)),c&&(ct.DecompressionStream=et(c)),ft("CompressionStream",d),ft("DecompressionStream",u),_!==at){const{deflate:e,inflate:n}=_;if((e||n)&&(ct.workerScripts||(ct.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");ct.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");ct.workerScripts.inflate=n}}}function ft(e,t){t!==at&&(ct[e]=t)}let _t,ht=!0,wt=!0;class pt{constructor(e,t,i,r){const{readable:a,writable:s}=t,{options:o,config:l,streamOptions:c,useWebWorkers:d,transferStreams:h,scripts:w}=i;n.assign(e,{busy:!0,readable:a,writable:s,options:n.assign({},o),scripts:w,transferStreams:h,terminate(){e.worker&&!e.busy&&(e.worker.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,r(e)}});const{signal:p,onstart:b,onprogress:m,size:y,onend:x}=c;let k=0;const v={};return b&&(v.start=()=>bt(b,y)),v.transform=async(e,t)=>{k+=e.length,m&&await bt(m,k,y),t.enqueue(e)},v.flush=()=>{a.size=k,x&&bt(x,k)},e.readable=a.pipeThrough(new S(v,{highWaterMark:1,size:()=>l.chunkSize}),{signal:p}),_t===at&&(_t=typeof Worker!=st),d&&_t?((e,{baseURL:t,chunkSize:i})=>{const r={type:"module"};if(n.assign(e,{streams:{},result:new g(((t,n)=>{e.resolveResult=t,e.rejectResult=n}))}),!e.interface){if(ht)try{e.worker=s({})}catch(t){ht=!1,e.worker=s(r)}else e.worker=s(r);e.worker.addEventListener("message",(async t=>{const i=t.data,{resolveResult:r,rejectResult:a,onTaskFinished:s}=e,{reader:l,writer:c}=e.streams,{type:d,data:u,messageId:h,result:w}=i,p=i.error;try{if(p){const{message:e,stack:t,code:i,name:r}=p,a=new f(e);n.assign(a,{stack:t,code:i,name:r}),b(a)}else{if("pull"==d){const{value:e,done:t}=await l.read();o({type:Qe,data:e,done:t,messageId:h})}d==Qe&&(await c.ready,await c.write(new _(u)),o({type:"ack",messageId:h})),"close"==d&&b(null,w)}}catch(e){b(e)}function b(e,t){e?a(e):r(t),c&&c.releaseLock(),s()}}),!1),e.interface={async run(){const{readable:t,options:n}=e,r=e.writable.getWriter();let s,l;l=new g((e=>s=e));const c=new z({async write(e){await r.ready,await r.write(e)},async close(){r.releaseLock(),s()},abort(e){r.abort(e)}}),d={type:"start",scripts:e.scripts.slice(1),options:n,config:{chunkSize:i}};e.transferStreams&&wt?o({...d,readable:t,writable:c})||(wt=!1,a(t,c)):(o(d),a(t,c));const u=await e.result;try{await c.close()}catch(e){}return await l,u}}}return e.interface;function a(t,i){n.assign(e.streams,{reader:t.getReader(),writer:i.getWriter()})}function s(n){let i,r;i=e.scripts[0],"function"==typeof i&&(i=i());try{r=new u(i,t)}catch(e){r=i}return new Worker(r,n)}function o(t){const{worker:n,writer:i,onTaskFinished:r}=e;try{let{data:e,readable:i,writable:r}=t;const a=[];if(e){const{buffer:n,length:i}=e;i!=n.byteLength&&(e=new _(e)),t.data=e.buffer,a.push(t.data)}if(i&&a.push(i),r&&a.push(r),a.length)try{return n.postMessage(t,a),!0}catch(e){t.readable=t.writable=null,n.postMessage(t)}else n.postMessage(t)}catch(e){throw i&&i.releaseLock(),r(),e}}})(e,l):((e,t)=>{const n=new $e(e.readable,e.writable,e.options,t),{onTaskFinished:i}=e;return{async run(){try{return await n.run()}finally{i()}}}})(e,l)}}async function bt(e,...t){try{await e(...t)}catch(e){}}let gt=[];const mt=[];let yt=0;function xt(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const kt="HTTP error ",vt="HTTP Range not supported",St="GET",Rt=65536,zt="writable";class Dt{constructor(){this.size=0}init(){this.initialized=!0}}class Et extends Dt{get readable(){const e=this,{chunkSize:t=Rt}=e,n=new R({start(){this.chunkOffset=0},async pull(i){const{offset:r=0,size:a,diskNumberStart:o}=n,{chunkOffset:l}=this;i.enqueue(await jt(e,r+l,s.min(t,a-l),o)),l+t>a?i.close():this.chunkOffset+=t}});return n}}class Tt extends Dt{constructor(){super();const e=this,t=new z({write:t=>e.writeUint8Array(t)});n.defineProperty(e,zt,{get:()=>t})}writeUint8Array(){}}class At extends Et{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){return new _(await this.blob.slice(e,e+t).arrayBuffer())}}class Ct extends Dt{constructor(e){super();const t=new S,i=[];e&&i.push(["Content-Type",e]),n.defineProperty(this,zt,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:i}).blob()}getData(){return this.blob}}class Ft extends Et{constructor(e,t){super(),Lt(this,e,t)}async init(){super.init(),await Wt(this,qt,Ht)}readUint8Array(e,t){return It(this,e,t,qt,Ht)}}class Ut extends Et{constructor(e,t){super(),Lt(this,e,t)}async init(){super.init(),await Wt(this,Vt,Mt)}readUint8Array(e,t){return It(this,e,t,Vt,Mt)}}function Lt(e,t,i){const{preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s}=i;delete(i=n.assign({},i)).preventHeadRequest,delete i.useRangeHeader,delete i.forceRangeRequests,delete i.useXHR,n.assign(e,{url:t,options:i,preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s})}async function Wt(e,t,n){const{url:i,useRangeHeader:a,forceRangeRequests:s}=e;if((e=>{const{baseURL:t}=dt(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(i)&&(a||s)){const{headers:i}=await t(St,e,Nt(e));if(!s&&"bytes"!=i.get("Accept-Ranges"))throw new f(vt);{let a;const s=i.get("Content-Range");if(s){const e=s.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=r(t))}}a===at?await Bt(e,t,n):e.size=a}}else await Bt(e,t,n)}async function It(e,t,n,i,r){const{data:a,useRangeHeader:s,forceRangeRequests:o,options:l}=e;if(s||o){const r=await i(St,e,Nt(e,t,n));if(206!=r.status)throw new f(vt);return new _(await r.arrayBuffer())}return a||await r(e,l),new _(a.subarray(t,t+n))}function Nt(e,t=0,i=1){return n.assign({},Ot(e),{Range:"bytes="+t+"-"+(t+i-1)})}function Ot({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Ht(e){await Pt(e,qt)}async function Mt(e){await Pt(e,Vt)}async function Pt(e,t){const n=await t(St,e,Ot(e));e.data=new _(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Bt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const i=(await t("HEAD",e,Ot(e))).headers.get("Content-Length");i?e.size=r(i):await n(e,e.options)}}async function qt(e,{options:t,url:i},r){const a=await fetch(i,n.assign({},t,{method:e,headers:r}));if(400>a.status)return a;throw 416==a.status?new f(vt):new f(kt+(a.statusText||a.status))}function Vt(e,{url:t},i){return new g(((r,a)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",(()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),r({status:s.status,arrayBuffer:()=>s.response,headers:new l(e)})}else a(416==s.status?new f(vt):new f(kt+(s.statusText||s.status)))}),!1),s.addEventListener("error",(e=>a(e.detail.error)),!1),s.open(e,t),i)for(const e of n.entries(i))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()}))}class Kt extends Et{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Ut(e,t):new Ft(e,t)})}set size(e){}get size(){return this.reader.size}async init(){super.init(),await this.reader.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Zt extends Et{constructor(e){super(),this.readers=e}async init(){super.init();const e=this,{readers:t}=e;e.lastDiskNumber=0,await g.all(t.map((async t=>{await t.init(),e.size+=t.size})))}async readUint8Array(e,t,n=0){const i=this,{readers:r}=this;let a,o=n;-1==o&&(o=r.length-1);let l=e;for(;l>=r[o].size;)l-=r[o].size,o++;const c=r[o],d=c.size;if(l+t>d){const r=d-l;a=new _(t),a.set(await jt(c,l,r)),a.set(await i.readUint8Array(e+r,t-r,n),r)}else a=await jt(c,l,t);return i.lastDiskNumber=s.max(o,i.lastDiskNumber),a}}async function Gt(e,t){e.init&&!e.initialized&&await e.init(t)}function jt(e,t,n,i){return e.readUint8Array(t,n,i)}const Xt="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Yt(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;n<e.length;n++)t+=Xt[e[n]];return t}})(e):new y(t).decode(e)}const Jt=["filename","rawFilename","directory","encrypted","compressedSize","uncompressedSize","lastModDate","rawLastModDate","comment","rawComment","signature","extraField","rawExtraField","bitFlag","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","filenameUTF8","commentUTF8","offset","zip64","compressionMethod","extraFieldNTFS","lastAccessDate","creationDate","extraFieldExtendedTimestamp","version","versionMadeBy","msDosCompatible","internalFileAttribute","externalFileAttribute"];class Qt{constructor(e){Jt.forEach((t=>this[t]=e[t]))}}const $t="File format is not recognized",en="End of central directory not found",tn="End of Zip64 central directory not found",nn="End of Zip64 central directory locator not found",rn="Central directory header not found",an="Local file header not found",sn="Zip64 extra field not found",on="File contains encrypted entry",ln="Encryption method not supported",cn="Compression method not supported",dn="Split zip file",un="utf-8",fn="cp437",_n=[["uncompressedSize",tt],["compressedSize",tt],["offset",tt],["diskNumberStart",nt]],hn={[nt]:{getValue:Sn,bytes:4},[tt]:{getValue:Rn,bytes:8}};class wn{constructor(e,t,i){n.assign(this,{reader:e,config:t,options:i})}async getData(e,t,i={}){const a=this,{reader:s,offset:o,diskNumberStart:l,extraFieldAES:c,compressionMethod:d,config:u,bitFlag:h,signature:w,rawLastModDate:p,uncompressedSize:b,compressedSize:m}=a,y=a.localDirectory={},x=zn(await jt(s,o,30,l));let k=mn(a,i,"password");if(k=k&&k.length&&k,c&&99!=c.originalCompressionMethod)throw new f(cn);if(0!=d&&8!=d)throw new f(cn);if(67324752!=Sn(x,0))throw new f(an);pn(y,x,4),y.rawExtraField=y.extraFieldLength?await jt(s,o+30+y.filenameLength,y.extraFieldLength,l):new _,await bn(a,y,x,4),n.assign(t,{lastAccessDate:y.lastAccessDate,creationDate:y.creationDate});const v=a.encrypted&&y.encrypted,S=v&&!c;if(v){if(!S&&c.strength===at)throw new f(ln);if(!k)throw new f(on)}const R=o+30+y.filenameLength+y.extraFieldLength,D=s.readable;D.diskNumberStart=l,D.offset=R;const E=D.size=m;e instanceof z&&(e={writable:e});const{writable:T}=e;T.size===at&&(T.size=0);const A=mn(a,i,"signal");await Gt(e,b);const{onstart:C,onprogress:F,onend:U}=i,L={options:{codecType:Je,password:k,zipCrypto:S,encryptionStrength:c&&c.strength,signed:mn(a,i,"checkSignature"),passwordVerification:S&&(h.dataDescriptor?p>>>8&255:w>>>24&255),signature:w,compressed:0!=d,encrypted:v,useWebWorkers:mn(a,i,"useWebWorkers"),useCompressionStream:mn(a,i,"useCompressionStream"),transferStreams:mn(a,i,"transferStreams")},config:u,streamOptions:{signal:A,size:E,onstart:C,onprogress:F,onend:U}};return T.size+=(await(async(e,t)=>{const{options:n,config:i}=t,{transferStreams:a,useWebWorkers:s,useCompressionStream:o,codecType:l,compressed:c,signed:d,encrypted:u}=n,{workerScripts:f}=i;t.transferStreams=a||a===at;const _=!(c||d||u||t.transferStreams);let h;if(t.useWebWorkers=!_&&(s||s===at&&i.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[l]:[],n.useCompressionStream=o||o===at&&i.useCompressionStream,gt.length<i.maxWorkers){const n={indexWorker:yt};yt++,gt.push(n),h=new pt(n,e,t,w)}else{const n=gt.find((e=>!e.busy));n?(xt(n),h=new pt(n,e,t,w)):h=await new g((n=>mt.push({resolve:n,stream:e,workerOptions:t})))}return h.run();function w(e){if(mt.length){const[{resolve:t,stream:n,workerOptions:i}]=mt.splice(0,1);t(new pt(e,n,i,w))}else if(e.worker){const{terminateWorkerTimeout:t}=i;xt(e),r.isFinite(t)&&t>=0&&(e.terminateTimeout=setTimeout((()=>{gt=gt.filter((t=>t!=e)),e.terminate()}),t))}else gt=gt.filter((t=>t!=e))}})({readable:D,writable:T},L)).size,mn(a,i,"preventClose")||await T.close(),e.getData?e.getData():T}}function pn(e,t,i){const r=e.rawBitFlag=vn(t,i+2),a=1==(1&r),s=Sn(t,i+6);n.assign(e,{encrypted:a,version:vn(t,i),bitFlag:{level:(6&r)>>1,dataDescriptor:8==(8&r),languageEncodingFlag:2048==(2048&r)},rawLastModDate:s,lastModDate:yn(s),filenameLength:vn(t,i+22),extraFieldLength:vn(t,i+24)})}async function bn(e,t,i,r){const{rawExtraField:a}=t,s=t.extraField=new l,c=zn(new _(a));let d=0;try{for(;d<a.length;){const e=vn(c,d),t=vn(c,d+2);s.set(e,{type:e,data:a.slice(d+4,d+4+t)}),d+=4+t}}catch(e){}const u=vn(i,r+4);n.assign(t,{signature:Sn(i,r+10),uncompressedSize:Sn(i,r+18),compressedSize:Sn(i,r+14)});const h=s.get(1);h&&(((e,t)=>{t.zip64=!0;const n=zn(e.data),i=_n.filter((([e,n])=>t[e]==n));for(let r=0,a=0;r<i.length;r++){const[s,o]=i[r];if(t[s]==o){const i=hn[o];t[s]=e[s]=i.getValue(n,a),a+=i.bytes}else if(e[s])throw new f(sn)}})(h,t),t.extraFieldZip64=h);const w=s.get(28789);w&&(await gn(w,"filename","rawFilename",t,e),t.extraFieldUnicodePath=w);const p=s.get(25461);p&&(await gn(p,"comment","rawComment",t,e),t.extraFieldUnicodeComment=p);const b=s.get(39169);b?(((e,t,i)=>{const r=zn(e.data),a=kn(r,4);n.assign(e,{vendorVersion:kn(r,0),vendorId:kn(r,2),strength:a,originalCompressionMethod:i,compressionMethod:vn(r,5)}),t.compressionMethod=e.compressionMethod})(b,t,u),t.extraFieldAES=b):t.compressionMethod=u;const g=s.get(10);g&&(((e,t)=>{const i=zn(e.data);let r,a=4;try{for(;a<e.data.length&&!r;){const t=vn(i,a),n=vn(i,a+2);1==t&&(r=e.data.slice(a+4,a+4+n)),a+=4+n}}catch(e){}try{if(r&&24==r.length){const i=zn(r),a=i.getBigUint64(0,!0),s=i.getBigUint64(8,!0),o=i.getBigUint64(16,!0);n.assign(e,{rawLastModDate:a,rawLastAccessDate:s,rawCreationDate:o});const l={lastModDate:xn(a),lastAccessDate:xn(s),creationDate:xn(o)};n.assign(e,l),n.assign(t,l)}}catch(e){}})(g,t),t.extraFieldNTFS=g);const m=s.get(21589);m&&(((e,t)=>{const n=zn(e.data),i=kn(n,0),r=[],a=[];1==(1&i)&&(r.push("lastModDate"),a.push("rawLastModDate")),2==(2&i)&&(r.push("lastAccessDate"),a.push("rawLastAccessDate")),4==(4&i)&&(r.push("creationDate"),a.push("rawCreationDate"));let s=1;r.forEach(((i,r)=>{if(e.data.length>=s+4){const l=Sn(n,s);t[i]=e[i]=new o(1e3*l);const c=a[r];e[c]=l}s+=4}))})(m,t),t.extraFieldExtendedTimestamp=m)}async function gn(e,t,i,r,a){const s=zn(e.data),o=new X;o.append(a[i]);const l=zn(new _(4));l.setUint32(0,o.get(),!0),n.assign(e,{version:kn(s,0),signature:Sn(s,1),[t]:await Yt(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&e.signature==Sn(l,0)}),e.valid&&(r[t]=e[t],r[t+"UTF8"]=!0)}function mn(e,t,n){return t[n]===at?e.options[n]:t[n]}function yn(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function xn(e){return new o(r(e/a(1e4)-a(116444736e5)))}function kn(e,t){return e.getUint8(t)}function vn(e,t){return e.getUint16(t,!0)}function Sn(e,t){return e.getUint32(t,!0)}function Rn(e,t){return r(e.getBigUint64(t,!0))}function zn(e){return new p(e.buffer)}ut({Inflate:function(e){const t=new G,n=e&&e.chunkSize?s.floor(2*e.chunkSize):131072,i=new _(n);let r=!1;t.inflateInit(),t.next_out=i,this.append=(e,a)=>{const s=[];let o,l,c=0,d=0,u=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||r||(t.next_in_index=0,r=!0),o=t.inflate(0),r&&o===F){if(0!==t.avail_in)throw new f("inflating: bad input")}else if(0!==o&&1!==o)throw new f("inflating: "+t.msg);if((r||1===o)&&t.avail_in===e.length)throw new f("inflating: bad input");t.next_out_index&&(t.next_out_index===n?s.push(new _(i)):s.push(i.slice(0,t.next_out_index))),u+=t.next_out_index,a&&t.next_in_index>0&&t.next_in_index!=c&&(a(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return s.length>1?(l=new _(u),s.forEach((e=>{l.set(e,d),d+=e.length}))):l=s[0]||new _,l}},this.flush=()=>{t.inflateEnd()}}}),e.BlobReader=At,e.BlobWriter=Ct,e.Data64URIReader=class extends Et{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const i=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:i,size:s.floor(.75*(t-i))})}readUint8Array(e,t){const{dataStart:n,dataURI:i}=this,r=new _(t),a=4*s.floor(e/3),o=atob(i.substring(a+n,4*s.ceil((e+t)/3)+n)),l=e-3*s.floor(a/4);for(let e=l;l+t>e;e++)r[e-l]=o.charCodeAt(e);return r}},e.Data64URIWriter=class extends Tt{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,r=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*s.floor((a+e.length)/3)-a;n++)r+=i.fromCharCode(e[n]);for(;n<e.length;n++)t.pending+=i.fromCharCode(e[n]);r.length>2?t.data+=v(r):t.pending=r}getData(){return this.data+v(this.pending)}},e.ERR_BAD_FORMAT=$t,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=rn,e.ERR_ENCRYPTED=on,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=nn,e.ERR_EOCDR_NOT_FOUND=en,e.ERR_EOCDR_ZIP64_NOT_FOUND=tn,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=sn,e.ERR_HTTP_RANGE=vt,e.ERR_INVALID_PASSWORD=ie,e.ERR_INVALID_SIGNATURE=re,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=an,e.ERR_SPLIT_ZIP_FILE=dn,e.ERR_UNSUPPORTED_COMPRESSION=cn,e.ERR_UNSUPPORTED_ENCRYPTION=ln,e.HttpRangeReader=class extends Kt{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Kt,e.Reader=Et,e.SplitZipReader=Zt,e.TextReader=class extends At{constructor(e){super(new b([e],{type:"text/plain"}))}},e.TextWriter=class extends Ct{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,i=await super.getData();if(i.text&&t)return i.text();{const t=new FileReader;return new g(((r,a)=>{n.assign(t,{onload:({target:e})=>r(e.result),onerror:()=>a(t.error)}),t.readAsText(i,e)}))}}},e.Uint8ArrayReader=class extends Et{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Tt{init(e=0){super.init(),n.assign(this,{offset:0,array:new _(e)})}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new _(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=Tt,e.ZipReader=class{constructor(e,t={}){e instanceof R&&(e={readable:e}),n.assign(this,{reader:e,options:t,config:dt()})}async*getEntriesGenerator(e={}){const i=this;let{reader:r}=i;const{config:a}=i;if(await Gt(r),r.size!==at&&r.readUint8Array||(r=t.isArray(r)?new Zt(r):new At(await new d(r.readable).blob()),await Gt(r)),22>r.size)throw new f($t);r.chunkSize=(e=>s.max(e.chunkSize,64))(a);const o=await(async(e,t,n)=>{const i=new _(4);return zn(i).setUint32(0,101010256,!0),await r(22)||await r(s.min(1048582,n));async function r(t){const r=n-t,a=await jt(e,r,t);for(let e=a.length-22;e>=0;e--)if(a[e]==i[0]&&a[e+1]==i[1]&&a[e+2]==i[2]&&a[e+3]==i[3])return{offset:r+e,buffer:a.slice(e,e+22).buffer}}})(r,0,r.size);if(!o)throw 134695760==Sn(zn(await jt(r,0,4)))?new f(dn):new f(en);const{lastDiskNumber:l}=r,c=zn(o);let u=Sn(c,12),h=Sn(c,16);const w=o.offset,p=vn(c,20),b=w+22+p;let m=vn(c,4);if(l!==at&&m!=l)throw new f(dn);let y=vn(c,8),x=0,k=0;if(h==tt||u==tt||y==nt||m==nt){const e=zn(await jt(r,o.offset-20,20));if(117853008!=Sn(e,0))throw new f(tn);h=Rn(e,8);let t=await jt(r,h,56,-1),n=zn(t);const i=o.offset-20-56;if(Sn(n,0)!=rt&&h!=i){const e=h;h=i,x=h-e,t=await jt(r,h,56,-1),n=zn(t)}if(Sn(n,0)!=rt)throw new f(nn);m==nt&&(m=Sn(n,16)),y==nt&&(y=Rn(n,32)),u==tt&&(u=Rn(n,40)),h-=u}if(0>h||h>=r.size)throw new f($t);let v=0,S=await jt(r,h,u,m),R=zn(S);if(u){const e=o.offset-u;if(Sn(R,v)!=it&&h!=e){const t=h;h=e,x=h-t,S=await jt(r,h,u,m),R=zn(S)}}if(0>h||h>=r.size)throw new f($t);const z=mn(i,e,"filenameEncoding"),D=mn(i,e,"commentEncoding");for(let t=0;y>t;t++){const o=new wn(r,a,i.options);if(Sn(R,v)!=it)throw new f(rn);pn(o,R,v+6);const l=!!o.bitFlag.languageEncodingFlag,c=v+46,d=c+o.filenameLength,u=d+o.extraFieldLength,_=vn(R,v+4),h=0==(0&_),w=S.subarray(c,d),p=vn(R,v+32),b=u+p,m=S.subarray(u,b),E=l,T=l,A=h&&16==(16&kn(R,v+38)),C=Sn(R,v+42)+x;n.assign(o,{versionMadeBy:_,msDosCompatible:h,compressedSize:0,uncompressedSize:0,commentLength:p,directory:A,offset:C,diskNumberStart:vn(R,v+34),internalFileAttribute:vn(R,v+36),externalFileAttribute:Sn(R,v+38),rawFilename:w,filenameUTF8:E,commentUTF8:T,rawExtraField:S.subarray(d,u)});const[F,U]=await g.all([Yt(w,E?un:z||fn),Yt(m,T?un:D||fn)]);n.assign(o,{rawComment:m,filename:F,comment:U,directory:A||F.endsWith("/")}),k=s.max(C,k),await bn(o,o,R,v+6);const L=new Qt(o);L.getData=(e,t)=>o.getData(e,L,t),v=b;const{onprogress:W}=e;if(W)try{await W(t+1,y,new Qt(o))}catch(e){}yield L}const E=mn(i,e,"extractPrependedData"),T=mn(i,e,"extractAppendedData");return E&&(i.prependedData=k>0?await jt(r,0,k):new _),i.comment=p?await jt(r,w+22,p):new _,T&&(i.appendedData=b<r.size?await jt(r,b,r.size-b):new _),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){}},e.configure=ut,e.getMimeType=()=>"application/octet-stream",e.initStream=Gt,e.readUint8Array=jt,e.terminateWorkers=()=>{gt.forEach((e=>{xt(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})}));