@zip.js/zip.js 2.6.56 → 2.6.57

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:l,Set:c,Response:d,URL:u,Error:f,Uint8Array:p,Uint16Array:h,Uint32Array:w,DataView:g,Blob:m,Promise:_,TextEncoder:y,TextDecoder:b,document:x,crypto:S,btoa:k,TransformStream:z,ReadableStream:v,WritableStream:R,CompressionStream:E,DecompressionStream:D,navigator:T}="undefined"!=typeof globalThis?globalThis:this||self,A=-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 N(){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,l,c,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;)c=n.heap[++n.heap_len]=2>d?++d:0,r[2*c]=1,n.depth[c]=0,n.opt_len--,s&&(n.static_len-=s[2*c+1]);for(e.max_code=d,o=i.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);c=a;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),l=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=l,r[2*c]=r[2*o]+r[2*l],n.depth[c]=i.max(n.depth[o],n.depth[l])+1,r[2*o+1]=r[2*l+1]=c,n.heap[1]=c++,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,l,c,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++)l=t.heap[o],d=n[2*n[2*l+1]+1]+1,d>i&&(d=i,p++),n[2*l+1]=d,l>e.max_code||(t.bl_count[d]++,u=0,a>l||(u=s[l-a]),f=n[2*l],t.opt_len+=f*(d+u),r&&(t.static_len+=f*(r[2*l+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(l=t.bl_count[d];0!==l;)c=t.heap[--o],c>e.max_code||(n[2*c+1]!=d&&(t.opt_len+=(d-n[2*c+1])*n[2*c],n[2*c+1]=d),l--)}})(n),((e,n,r)=>{const s=[];let a,i,o,l=0;for(a=1;15>=a;a++)s[a]=l=l+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}N._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]])),N.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],N.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],N.d_code=e=>256>e?W[e]:W[256+(e>>>7)],N.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],N.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],N.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],N.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const U=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,U[t]])));const M=F([[30,5]]);function H(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,N.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,N.extra_dbits,0,30,15),I.static_bl_desc=new I(null,N.extra_blbits,0,19,7);const L=[new H(0,0,0,0,0),new H(4,4,8,4,1),new H(4,5,16,8,1),new H(4,6,32,32,1),new H(4,4,16,16,2),new H(8,16,32,32,2),new H(8,16,128,128,2),new H(8,32,128,256,2),new H(32,128,258,1024,2),new H(32,258,258,4096,2)],O=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],B=113,q=666,V=262;function P(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,l,c,d,u,f,w,g,m,_,y,b,x,S,k,z,v,R,E,D,T,F,C,W,U,M,H,K;const Z=new N,X=new N,Y=new N;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++)H[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 l=0;t>=l;l++)n=s,s=e[2*(l+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,l=4;for(0===a&&(o=138,l=3),n=0;t>=n;n++)if(r=a,a=e[2*(n+1)+1],++i>=o||r!=a){if(l>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,l=3):r==a?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(se($),$=0,ee=0):8>ee||(re(255&$),$>>>=8,ee-=8)}function ce(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*(N._length_code[n]+256+1)]++,H[2*N.d_code(t)]++),0==(8191&G)&&F>2){for(r=8*G,s=z-b,a=0;30>a;a++)r+=H[2*a]*(5+N.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=N._length_code[s],ie(a+256+1,t),i=N.extra_lbits[a],0!==i&&(s-=N.base_length[a],ae(s,i)),r--,a=N.d_code(r),ie(a,n),i=N.extra_dbits[a],0!==i&&(r-=N.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(c.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(H,X.max_code),Y.build_tree(e),t=18;t>=3&&0===K[2*N.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*N.bl_order[r]+1],3);oe(M,e-1),oe(H,t-1)})(Z.max_code+1,X.max_code+1,i+1),de(M,H)):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-V){c.set(c.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(c,z+R,s),R+=e,3>R||(w=255&c[z],w=(w<<y^255&c[z+1])&_)}while(V>R&&0!==t.avail_in)}function we(e){let t,n,r=D,s=z,i=E;const o=z>a-V?z-(a-V):0;let d=U;const f=l,p=z+258;let h=c[s+i-1],w=c[s+i];W>E||(r>>=2),d>R&&(d=R);do{if(t=e,c[t+i]==w&&c[t+i-1]==h&&c[t]==c[s]&&c[++t]==c[s+1]){s+=2,t++;do{}while(c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&p>s);if(n=258-(p-s),s=p-258,n>i){if(v=e,i=n,n>=d)break;h=c[s+i-1],w=c[s+i]}}}while((e=65535&u[e&f])>o&&0!=--r);return i>R?R:i}e.depth=[],e.bl_count=[],e.heap=[],M=[],H=[],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&&P(t,r[a+1],r[a],e.depth)&&a++,!P(t,s,r[a],e.depth));)r[n]=r[a],n=a,a<<=1;r[n]=s},e.deflateInit=(t,S,v,N,O,q)=>(N||(N=8),O||(O=8),q||(q=0),t.msg=null,-1==S&&(S=6),1>O||O>9||8!=N||9>v||v>15||0>S||S>9||0>q||q>2?A:(t.dstate=e,o=v,a=1<<o,l=a-1,m=O+7,g=1<<m,_=g-1,y=i.floor((m+3-1)/3),c=new p(2*a),u=[],f=[],j=1<<O+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=q,(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=H,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;T=L[F].max_lazy,W=L[F].good_length,U=L[F].nice_length,D=L[F].max_chain,z=0,b=0,R=0,x=E=2,k=0,w=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=B&&n!=q?A:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,c=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?A:(L[F].func!=L[t].func&&0!==e.total_in&&(r=e.deflate(1)),F!=t&&(F=t,T=L[F].max_lazy,W=L[F].good_length,U=L[F].nice_length,D=L[F].max_chain),C=n,r)},e.deflateSetDictionary=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return A;if(3>i)return 0;for(i>a-V&&(i=a-V,o=r-i),c.set(t.subarray(o,o+i),0),z=i,b=i,w=255&c[0],w=(w<<y^255&c[1])&_,s=0;i-3>=s;s++)w=(w<<y^255&c[s+2])&_,u[s&l]=f[w],f[w]=s;return 0},e.deflate=(i,d)=>{let p,h,m,D,W;if(d>4||0>d)return A;if(!i.next_out||!i.next_in&&0!==i.avail_in||n==q&&4!=d)return i.msg=O[4],A;if(0===i.avail_out)return i.msg=O[7],-5;var N;if(t=i,D=s,s=d,42==n&&(h=8+(o-8<<4)<<8,m=(F-1&255)>>1,m>3&&(m=3),h|=m<<6,0!==z&&(h|=32),h+=31-h%31,n=B,re((N=h)>>8&255),re(255&N)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return s=-1,0}else if(0===t.avail_in&&D>=d&&4!=d)return t.msg=O[7],-5;if(n==q&&0!==t.avail_in)return i.msg=O[7],-5;if(0!==t.avail_in||0!==R||0!=d&&n!=q){switch(W=-1,L[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-V&&(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(V>R){if(he(),V>R&&0==e)return 0;if(0===R)break}if(3>R||(w=(w<<y^255&c[z+2])&_,r=65535&f[w],u[z&l]=f[w],f[w]=z),0===r||(z-r&65535)>a-V||2!=C&&(x=we(r)),3>x)n=ce(0,255&c[z]),R--,z++;else if(n=ce(z-v,x-3),R-=x,x>T||3>R)z+=x,x=0,w=255&c[z],w=(w<<y^255&c[z+1])&_;else{x--;do{z++,w=(w<<y^255&c[z+2])&_,r=65535&f[w],u[z&l]=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(V>R){if(he(),V>R&&0==e)return 0;if(0===R)break}if(3>R||(w=(w<<y^255&c[z+2])&_,s=65535&f[w],u[z&l]=f[w],f[w]=z),E=x,S=v,x=2,0!==s&&T>E&&a-V>=(z-s&65535)&&(2!=C&&(x=we(s)),5>=x&&(1==C||3==x&&z-v>4096)&&(x=2)),3>E||x>E)if(0!==k){if(n=ce(0,255&c[z-1]),n&&pe(!1),z++,R--,0===t.avail_out)return 0}else k=1,z++,R--;else{r=z+R-3,n=ce(z-1-S,E-3),R-=E-1,E-=2;do{++z>r||(w=(w<<y^255&c[z+2])&_,s=65535&f[w],u[z&l]=f[w],f[w]=z)}while(0!=--E);if(k=0,x=2,z++,n&&(pe(!1),0===t.avail_out))return 0}}return 0!==k&&(n=ce(0,255&c[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=q),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),le(),9>1+Q+10-ee&&(ae(2,3),ie(256,I.static_ltree),le()),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):A},deflateEnd(){const e=this;if(!e.dstate)return A;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):A},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):A},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=4294967295,Y=65535,j=new o(2107,11,31),G=new o(1980,0,1),J=void 0,Q="undefined",$="function";class ee{constructor(e){return class extends z{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}let te=2;try{typeof T!=Q&&T.hardwareConcurrency&&(te=T.hardwareConcurrency)}catch(e){}const ne={chunkSize:524288,maxWorkers:te,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:J,CompressionStreamNative:typeof E!=Q&&E,DecompressionStreamNative:typeof D!=Q&&D},re=n.assign({},ne);function se(){return re}function ae(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:a,useCompressionStream:i,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:u,workerScripts:p}=e;if(ie("baseURL",n),ie("chunkSize",r),ie("maxWorkers",s),ie("terminateWorkerTimeout",a),ie("useCompressionStream",i),ie("useWebWorkers",o),l&&(re.CompressionStream=new ee(l)),c&&(re.DecompressionStream=new ee(c)),ie("CompressionStream",d),ie("DecompressionStream",u),p!==J){const{deflate:e,inflate:n}=p;if((e||n)&&(re.workerScripts||(re.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");re.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");re.workerScripts.inflate=n}}}function ie(e,t){t!==J&&(re[e]=t)}const oe=[];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;oe[e]=t}class le{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^oe[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class ce extends z{constructor(){const e=new le;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 de(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 ue={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=ue.getPartial(n);return 32===r?e.concat(t):ue._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)+ue.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]=ue.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=ue.getPartial(s);return r.push(ue.partial(t+a&31,t+a>32?n:r.pop(),1)),r}},fe={bytes:{fromBits(e){const t=ue.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(ue.partial(8*(3&n),r)),t}}},pe={sha1:function(e){e?(this._h=e._h.slice(0),this._buffer=e._buffer.slice(0),this._length=e._length):this.reset()}};pe.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=fe.utf8String.toBits(e));const n=t._buffer=ue.concat(t._buffer,e),r=t._length,s=t._length=r+ue.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=ue.concat(t,[ue.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],l=r[2],c=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,l,c)+d+s[e]+n._key[i.floor(e/20)]|0;d=c,c=l,l=n._S(30,o),o=a,a=t}r[0]=r[0]+a|0,r[1]=r[1]+o|0,r[2]=r[2]+l|0,r[3]=r[3]+c|0,r[4]=r[4]+d|0}};const he={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}},we={importKey:e=>new we.hmacSha1(fe.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,l,c;const d=new ArrayBuffer(s),u=new g(d);let p=0;const h=ue;for(t=fe.bytes.toBits(t),c=1;(s||1)>p;c++){for(a=i=e.encrypt(h.concat(t,[c])),o=1;n>o;o++)for(i=e.encrypt(i),l=0;l<i.length;l++)a[l]^=i[l];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=pe.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)}}},ge=void 0!==S&&"function"==typeof S.getRandomValues,me="Invalid password",_e="Invalid signature";function ye(e){return ge?S.getRandomValues(e):he.getRandomValues(e)}const be=16,xe={name:"PBKDF2"},Se=n.assign({hash:{name:"HMAC"}},xe),ke=n.assign({iterations:1e3,hash:{name:"SHA-1"}},xe),ze=["deriveBits"],ve=[8,12,16],Re=[16,24,32],Ee=10,De=[0,0,0,0],Te="undefined",Ae="function",Fe=typeof S!=Te,Ce=Fe&&S.subtle,We=Fe&&typeof Ce!=Te,Ne=fe.bytes,Ie=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,l=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^l<<24,l=l<<1^283*(l>>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,l,c;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,c=s[l=s[o=s[d]]];let u=16843009*c^65537*l^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],l=a[2],c=a[3],d=a[4];let u,p,h,w=e[0]^n[0],g=e[t?3:1]^n[1],m=e[2]^n[2],_=e[t?1:3]^n[3],y=4;for(let e=0;r>e;e++)u=i[w>>>24]^o[g>>16&255]^l[m>>8&255]^c[255&_]^n[y],p=i[g>>>24]^o[m>>16&255]^l[_>>8&255]^c[255&w]^n[y+1],h=i[m>>>24]^o[_>>16&255]^l[w>>8&255]^c[255&g]^n[y+2],_=i[_>>>24]^o[w>>16&255]^l[g>>8&255]^c[255&m]^n[y+3],y+=4,w=u,g=p,m=h;for(let e=0;4>e;e++)s[t?3&-e:e]=d[w>>>24]<<24^d[g>>16&255]<<16^d[m>>8&255]<<8^d[255&_]^n[y++],u=w,w=g,g=m,m=_,_=u;return s}},Ue=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=ue.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 ue.clamp(t,s)}},Me=we.hmacSha1;let He=Fe&&We&&typeof Ce.importKey==Ae,Le=Fe&&We&&typeof Ce.deriveBits==Ae;class Oe extends z{constructor({password:e,signed:t,encryptionStrength:r}){super({start(){n.assign(this,{ready:new _((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 Ve(e,t,n,Ke(r,0,ve[t])),a=Ke(r,ve[t]);if(s[0]!=a[0]||s[1]!=a[1])throw new f(me)})(n,s,r,Ke(e,0,ve[s]+2)),e=Ke(e,ve[s]+2),a()):await i;const o=new p(e.length-Ee-(e.length-Ee)%be);t.enqueue(qe(n,e,o,0,Ee,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:a}=this;await a;const i=Ke(s,0,s.length-Ee),o=Ke(s,s.length-Ee);let l=new p;if(i.length){const e=Xe(Ne,i);r.update(e);const t=n.update(e);l=Ze(Ne,t)}if(t){const e=Ke(Ze(Ne,r.digest()),0,Ee);for(let t=0;Ee>t;t++)if(e[t]!=o[t])throw new f(_e)}e.enqueue(l)}})}}class Be extends z{constructor({password:e,encryptionStrength:t}){let r;super({start(){n.assign(this,{ready:new _((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=ye(new p(ve[t]));return Pe(r,await Ve(e,t,n,r))})(n,s,r),a()):await i;const l=new p(o.length+e.length-e.length%be);l.set(o,0),t.enqueue(qe(n,e,l,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(Xe(Ne,s));n.update(e),i=Ze(Ne,e)}r.signature=Ze(Ne,n.digest()).slice(0,Ee),e.enqueue(Pe(i,r.signature))}}),r=this}}function qe(e,t,n,r,s,a){const{ctr:i,hmac:o,pending:l}=e,c=t.length-s;let d;for(l.length&&(t=Pe(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new p(t)).set(n,0)}return e})(n,c-c%be)),d=0;c-be>=d;d+=be){const e=Xe(Ne,Ke(t,d,d+be));a&&o.update(e);const s=i.update(e);a||o.update(s),n.set(Ze(Ne,s),d+r)}return e.pending=Ke(t,d),n}async function Ve(e,r,s,a){e.password=null;const i=de(s),o=await(async(e,t,n,r,s)=>{if(!He)return we.importKey(t);try{return await Ce.importKey("raw",t,n,!1,s)}catch(e){return He=!1,we.importKey(t)}})(0,i,Se,0,ze),l=await(async(e,t,n)=>{if(!Le)return we.pbkdf2(t,e.salt,ke.iterations,n);try{return await Ce.deriveBits(e,t,n)}catch(r){return Le=!1,we.pbkdf2(t,e.salt,ke.iterations,n)}})(n.assign({salt:a},ke),o,8*(2*Re[r]+2)),c=new p(l),d=Xe(Ne,Ke(c,0,Re[r])),u=Xe(Ne,Ke(c,Re[r],2*Re[r])),f=Ke(c,2*Re[r]);return n.assign(e,{keys:{key:d,authentication:u,passwordVerification:f},ctr:new Ue(new Ie(d),t.from(De)),hmac:new Me(u)}),f}function Pe(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 Ke(e,t,n){return e.subarray(t,n)}function Ze(e,t){return e.fromBits(t)}function Xe(e,t){return e.toBits(t)}class Ye extends z{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Qe(this,e)},transform(e,t){const n=this;if(n.password){const t=Ge(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(me);e=e.subarray(12)}t.enqueue(Ge(n,e))}})}}class je extends z{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Qe(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=ye(new p(12));t[11]=n.passwordVerification,r=new p(e.length+t.length),r.set(Je(n,t),0),s=12}else r=new p(e.length),s=0;r.set(Je(n,e),s),t.enqueue(r)}})}}function Ge(e,t){const n=new p(t.length);for(let r=0;r<t.length;r++)n[r]=et(e)^t[r],$e(e,n[r]);return n}function Je(e,t){const n=new p(t.length);for(let r=0;r<t.length;r++)n[r]=et(e)^t[r],$e(e,t[r]);return n}function Qe(e,t){const r=[305419896,591751049,878082192];n.assign(e,{keys:r,crcKey0:new le(r[0]),crcKey2:new le(r[2])});for(let n=0;n<t.length;n++)$e(e,t.charCodeAt(n))}function $e(e,t){let[n,r,s]=e.keys;e.crcKey0.append([t]),n=~e.crcKey0.get(),r=nt(i.imul(nt(r+tt(n)),134775813)+1),e.crcKey2.append([r>>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function et(e){const t=2|e.keys[2];return tt(i.imul(t,1^t)>>>8)}function tt(e){return 255&e}function nt(e){return 4294967295&e}const rt="deflate-raw";class st extends z{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:a,useCompressionStream:i,zipCrypto:o,signed:l,level:c}=e,d=this;let u,f,p=it(super.readable);a&&!o||!l||([p,u]=p.tee(),u=ct(u,new ce)),s&&(p=lt(p,i,{level:c,chunkSize:t},r,n)),a&&(o?p=ct(p,new je(e)):(f=new Be(e),p=ct(p,f))),ot(d,p,(async()=>{let e;a&&!o&&(e=f.signature),a&&!o||!l||(e=await u.getReader().read(),e=new g(e.value.buffer).getUint32(0)),d.signature=e}))}}class at extends z{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:a,signed:i,signature:o,compressed:l,useCompressionStream:c}=e;let d,u,p=it(super.readable);a&&(s?p=ct(p,new Ye(e)):(u=new Oe(e),p=ct(p,u))),l&&(p=lt(p,c,{chunkSize:t},r,n)),a&&!s||!i||([p,d]=p.tee(),d=ct(d,new ce)),ot(this,p,(async()=>{if((!a||s)&&i){const e=await d.getReader().read(),t=new g(e.value.buffer);if(o!=t.getUint32(0,!1))throw new f(_e)}}))}}function it(e){return ct(e,new z({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ot(e,t,r){t=ct(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function lt(e,t,n,r,s){try{e=ct(e,new(t&&r?r:s)(rt,n))}catch(r){if(!t)throw r;e=ct(e,new s(rt,n))}return e}function ct(e,t){return e.pipeThrough(t)}const dt="data",ut="deflate";class ft extends z{constructor(e,t){super({});const r=this,{codecType:s}=e;let a;s.startsWith(ut)?a=st:s.startsWith("inflate")&&(a=at);let i=0;const o=new a(e,t),l=super.readable,c=new z({transform(e,t){e&&e.length&&(i+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;n.assign(r,{signature:e,size:i})}});n.defineProperty(r,"readable",{get:()=>l.pipeThrough(o).pipeThrough(c)})}}const pt=typeof Worker!=Q;class ht{constructor(e,{readable:t,writable:r},{options:s,config:a,streamOptions:i,useWebWorkers:o,transferStreams:l,scripts:c},d){const{signal:u}=i;return n.assign(e,{busy:!0,readable:t.pipeThrough(new wt(t,i,a),{signal:u}),writable:r,options:n.assign({},s),scripts:c,transferStreams:l,terminate(){const{worker:t,busy:n}=e;t&&!n&&(t.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,d(e)}}),(o&&pt?_t:mt)(e,a)}}class wt extends z{constructor(e,{onstart:t,onprogress:n,size:r,onend:s},{chunkSize:a}){let i=0;super({start(){t&&gt(t,r)},async transform(e,t){i+=e.length,n&&await gt(n,i,r),t.enqueue(e)},flush(){e.size=i,s&&gt(s,i)}},{highWaterMark:1,size:()=>a})}}async function gt(e,...t){try{await e(...t)}catch(e){}}function mt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{const a=new ft(e,s);try{await t.pipeThrough(a).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:e,size:s}=a;return{signature:e,size:s}}finally{r()}})(e,t)}}function _t(e,{baseURL:t,chunkSize:r}){return e.interface||n.assign(e,{worker:xt(e.scripts[0],t,e),interface:{run:()=>(async(e,t)=>{let r,s;const a=new _(((e,t)=>{r=e,s=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:s,result:a});const{readable:i,options:o,scripts:l}=e,{writable:c,closed:d}=(e=>{const t=e.getWriter();let n;const r=new _((e=>n=e));return{writable:new R({async write(e){await t.ready,await t.write(e)},close(){t.releaseLock(),n()},abort:e=>t.abort(e)}),closed:r}})(e.writable);St({type:"start",scripts:l.slice(1),options:o,config:t,readable:i,writable:c},e)||n.assign(e,{reader:i.getReader(),writer:c.getWriter()});const u=await a;try{await c.close()}catch(e){}return await d,u})(e,{chunkSize:r})}}),e.interface}let yt=!0,bt=!0;function xt(e,t,r){const s={type:"module"};let a,i;typeof e==$&&(e=e());try{a=new u(e,t)}catch(t){a=e}if(yt)try{i=new Worker(a)}catch(e){yt=!1,i=new Worker(a,s)}else i=new Worker(a,s);return i.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:s,messageId:a,result:i,error:o}=e,{reader:l,writer:c,resolveResult:d,rejectResult:u,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:r,name:s}=o,a=new f(e);n.assign(a,{stack:t,code:r,name:s}),w(a)}else{if("pull"==r){const{value:e,done:n}=await l.read();St({type:dt,value:e,done:n,messageId:a},t)}r==dt&&(await c.ready,await c.write(new p(s)),St({type:"ack",messageId:a},t)),"close"==r&&w(null,i)}}catch(o){w(o)}function w(e,t){e?u(e):d(t),c&&c.releaseLock(),h()}})(e,r))),i}function St(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{let{value:n,readable:r,writable:a}=e;const i=[];if(n){const{buffer:t,length:r}=n;r!=t.byteLength&&(n=new p(n)),e.value=n.buffer,i.push(e.value)}if(s&&bt?(r&&i.push(r),a&&i.push(a)):e.readable=e.writable=null,i.length)try{return t.postMessage(e,i),!0}catch(n){bt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let kt=[];const zt=[];let vt=0;function Rt(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const Et="HTTP error ",Dt="HTTP Range not supported",Tt="Writer iterator completed too soon",At="GET",Ft=65536,Ct="writable";class Wt{constructor(){this.size=0}init(){this.initialized=!0}}class Nt extends Wt{get readable(){const e=this,{chunkSize:t=Ft}=e,n=new v({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:a,diskNumberStart:o}=n,{chunkOffset:l}=this;r.enqueue(await rn(e,s+l,i.min(t,a-l),o)),l+t>a?r.close():this.chunkOffset+=t}});return n}}class It extends Wt{constructor(){super();const e=this,t=new R({write:t=>e.writeUint8Array(t)});n.defineProperty(e,Ct,{get:()=>t})}writeUint8Array(){}}class Ut extends Nt{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||r<n.size?n.blob.slice(e,r):n.blob;return new p(await s.arrayBuffer())}}class Mt extends Wt{constructor(e){super();const t=new z,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,Ct,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Ht extends Nt{constructor(e,t){super(),Ot(this,e,t)}async init(){super.init(),await Bt(this,jt,Kt)}readUint8Array(e,t){return qt(this,e,t,jt,Kt)}}class Lt extends Nt{constructor(e,t){super(),Ot(this,e,t)}async init(){super.init(),await Bt(this,Gt,Zt)}readUint8Array(e,t){return qt(this,e,t,Gt,Zt)}}function Ot(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 Bt(e,t,n){const{url:r,useRangeHeader:a,forceRangeRequests:i}=e;if((e=>{const{baseURL:t}=se(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(r)&&(a||i)){const{headers:r}=await t(At,e,Vt(e));if(!i&&"bytes"!=r.get("Accept-Ranges"))throw new f(Dt);{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===J?await Yt(e,t,n):e.size=a}}else await Yt(e,t,n)}async function qt(e,t,n,r,s){const{useRangeHeader:a,forceRangeRequests:i,options:o}=e;if(a||i){const s=await r(At,e,Vt(e,t,n));if(206!=s.status)throw new f(Dt);return new p(await s.arrayBuffer())}{const{data:r}=e;return r||await s(e,o),new p(e.data.subarray(t,t+n))}}function Vt(e,t=0,r=1){return n.assign({},Pt(e),{Range:"bytes="+t+"-"+(t+r-1)})}function Pt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Kt(e){await Xt(e,jt)}async function Zt(e){await Xt(e,Gt)}async function Xt(e,t){const n=await t(At,e,Pt(e));e.data=new p(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Yt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Pt(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function jt(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(Dt):new f(Et+(a.statusText||a.status))}function Gt(e,{url:t},r){return new _(((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 l(e)})}else a(416==i.status?new f(Dt):new f(Et+(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 Jt extends Nt{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Lt(e,t):new Ht(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 Qt extends Nt{constructor(e){super(),this.readers=e}async init(){super.init();const e=this,{readers:t}=e;e.lastDiskNumber=0,await _.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 l=e;for(;l>=s[o].size;)l-=s[o].size,o++;const c=s[o],d=c.size;if(l+t>d){const s=d-l;a=new p(t),a.set(await rn(c,l,s)),a.set(await r.readUint8Array(e+s,t-s,n),s)}else a=await rn(c,l,t);return r.lastDiskNumber=i.max(o,r.lastDiskNumber),a}}class $t extends Wt{constructor(e,t=4294967295){super();const r=this;let s,a,i;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new R({async write(t){const{availableSize:n}=r;if(i)t.length<n?await l(t):(await l(t.slice(0,n)),await c(),r.diskOffset+=s.size,r.diskNumber++,i=null,await this.write(t.slice(n)));else{const{value:n,done:o}=await e.next();if(o&&!n)throw new f(Tt);s=n,s.size=0,s.maxSize&&(r.maxSize=s.maxSize),r.availableSize=r.maxSize,await en(s),a=n.writable,i=a.getWriter(),await this.write(t)}},async close(){await i.ready,await c()}});async function l(e){const t=e.length;t&&(await i.ready,await i.write(e),s.size+=t,r.size+=t,r.availableSize-=t)}async function c(){a.size=s.size,await i.close()}n.defineProperty(r,Ct,{get:()=>o})}}async function en(e,t){e.init&&!e.initialized&&await e.init(t)}function tn(e){return t.isArray(e)&&(e=new Qt(e)),e instanceof v&&(e={readable:e}),e}function nn(e){e.writable===J&&typeof e.next==$&&(e=new $t(e)),e instanceof R&&(e={writable:e});const{writable:t}=e;return t.size===J&&(t.size=0),e instanceof $t||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function rn(e,t,n,r){return e.readUint8Array(t,n,r)}const sn=Qt,an=$t,on="diskNumberStart",ln="lastModDate",cn="lastAccessDate",dn="creationDate",un="internalFileAttribute",fn="externalFileAttribute",pn="msDosCompatible",hn="zip64",wn=["filename","rawFilename","compressedSize","uncompressedSize",ln,"rawLastModDate","comment","rawComment",cn,dn,"offset",on,on,un,fn,pn,hn,"directory","bitFlag","encrypted","signature","filenameUTF8","commentUTF8","compressionMethod","version","versionMadeBy","extraField","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class gn{constructor(e){wn.forEach((t=>this[t]=e[t]))}}const mn="File already exists",_n="Zip file comment exceeds 64KB",yn="File entry comment exceeds 64KB",bn="File entry name exceeds 64KB",xn="Version exceeds 65535",Sn="The strength must equal 1, 2, or 3",kn="Extra field type exceeds 65535",zn="Extra field data exceeds 64KB",vn="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Rn=new p([7,0,2,0,65,69,3,0,0]);let En=0;const Dn=[];async function Tn(e,t){const n=e.getWriter();await n.ready,e.size+=Hn(t),await n.write(t),n.releaseLock()}function An(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function Fn(e,t,n,r){const s=t[n]===J?e.options[n]:t[n];return s===J?r:s}function Cn(e,t,n){e.setUint8(t,n)}function Wn(e,t,n){e.setUint16(t,n,!0)}function Nn(e,t,n){e.setUint32(t,n,!0)}function In(e,t,n){e.setBigUint64(t,n,!0)}function Un(e,t,n){e.set(t,n)}function Mn(e){return new g(e.buffer)}function Hn(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}ae({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,l=0,c=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))),c+=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(c),d.forEach((e=>{i.set(e,l),l+=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=Ut,e.BlobWriter=Mt,e.Data64URIReader=class extends Nt{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)),l=e-3*i.floor(a/4);for(let e=l;l+t>e;e++)s[e-l]=o.charCodeAt(e);return s}},e.Data64URIWriter=class extends It{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=mn,e.ERR_HTTP_RANGE=Dt,e.ERR_INVALID_COMMENT=_n,e.ERR_INVALID_ENCRYPTION_STRENGTH=Sn,e.ERR_INVALID_ENTRY_COMMENT=yn,e.ERR_INVALID_ENTRY_NAME=bn,e.ERR_INVALID_EXTRAFIELD_DATA=zn,e.ERR_INVALID_EXTRAFIELD_TYPE=kn,e.ERR_INVALID_VERSION=xn,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Tt,e.ERR_UNSUPPORTED_FORMAT=vn,e.HttpRangeReader=class extends Jt{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Jt,e.Reader=Nt,e.SplitDataReader=Qt,e.SplitDataWriter=$t,e.SplitZipReader=sn,e.SplitZipWriter=an,e.TextReader=class extends Ut{constructor(e){super(new m([e],{type:"text/plain"}))}},e.TextWriter=class extends Mt{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 _(((s,a)=>{n.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>a(t.error)}),t.readAsText(r,e)}))}}},e.Uint8ArrayReader=class extends Nt{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 It{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=It,e.ZipWriter=class{constructor(e,t={}){e=nn(e),n.assign(this,{writer:e,addSplitZipSignature:e instanceof $t,options:t,config:se(),files:new l,filenames:new c,offset:e.writable.size,pendingEntriesSize:0,pendingAddFileCalls:new c})}async add(e="",r,l={}){const c=this,{pendingAddFileCalls:d,config:u}=c;let m;En<u.maxWorkers?En++:await new _((e=>Dn.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new f(mn);return c.filenames.add(e),m=(async(e,r,l,c)=>{r=r.trim(),c.directory&&!r.endsWith("/")?r+="/":c.directory=r.endsWith("/");const d=de(r);if(Hn(d)>Y)throw new f(bn);const u=c.comment||"",m=de(u);if(Hn(m)>Y)throw new f(yn);const y=Fn(e,c,"version",20);if(y>Y)throw new f(xn);const b=Fn(e,c,"versionMadeBy",20);if(b>Y)throw new f(xn);const x=Fn(e,c,ln,new o),S=Fn(e,c,cn),k=Fn(e,c,dn),z=Fn(e,c,pn,!0),v=Fn(e,c,un,0),R=Fn(e,c,fn,0),E=Fn(e,c,"password"),D=Fn(e,c,"encryptionStrength",3),T=Fn(e,c,"zipCrypto"),A=Fn(e,c,"extendedTimestamp",!0),F=Fn(e,c,"keepOrder",!0),C=Fn(e,c,"level"),W=Fn(e,c,"useWebWorkers"),N=Fn(e,c,"bufferedWrite"),I=Fn(e,c,"dataDescriptorSignature",!1),U=Fn(e,c,"signal"),M=Fn(e,c,"useCompressionStream");let H=Fn(e,c,"dataDescriptor",!0),L=Fn(e,c,hn);if(E!==J&&D!==J&&(1>D||D>3))throw new f(Sn);let O=new p;const{extraField:B}=c;if(B){let e=0,t=0;B.forEach((t=>e+=4+Hn(t))),O=new p(e),B.forEach(((e,n)=>{if(n>Y)throw new f(kn);if(Hn(e)>Y)throw new f(zn);Un(O,new h([n]),t),Un(O,new h([Hn(e)]),t+2),Un(O,e,t+4),t+=4+Hn(e)}))}let q=0,V=0,P=0;l&&(l=tn(l),await en(l),l.size===J?(H=!0,(L||L===J)&&(L=!0,q=X)):(P=l.size,q=(e=>e+5*(i.floor(e/16383)+1))(P)));const{diskOffset:K,diskNumber:Z,maxSize:Q}=e.writer;if(!(e.offset+e.pendingEntriesSize-K<X&&X>P&&X>q&&Z+i.ceil(e.pendingEntriesSize/Q)<Y)){if(!1===L||!F)throw new f(vn);L=!0}L=L||!1;const $=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,password:a,level:o,zip64:l,zipCrypto:c,dataDescriptor:d,directory:u,rawExtraField:f,encryptionStrength:h,extendedTimestamp:g}=e,m=0!==o&&!u,_=!(!a||!Hn(a));let y,b,x,S=e.version;if(_&&!c){y=new p(Hn(Rn)+2);const e=Mn(y);Wn(e,0,39169),Un(y,Rn,2),Cn(e,8,h)}else y=new p;if(g){x=new p(9+(r?4:0)+(s?4:0));const e=Mn(x);Wn(e,0,21589),Wn(e,2,Hn(x)-4),Cn(e,4,1+(r?2:0)+(s?4:0)),Nn(e,5,i.floor(n.getTime()/1e3)),r&&Nn(e,9,i.floor(r.getTime()/1e3)),s&&Nn(e,13,i.floor(s.getTime()/1e3));try{b=new p(36);const e=Mn(b),t=An(n);Wn(e,0,10),Wn(e,2,32),Wn(e,8,1),Wn(e,10,24),In(e,12,t),In(e,20,An(r)||t),In(e,28,An(s)||t)}catch(e){b=new p}}else b=x=new p;let k=2048;d&&(k|=8);let z=0;m&&(z=8),l&&(S=S>45?S:45),_&&(k|=1,c||(S=S>51?S:51,z=99,m&&(y[9]=8)));const v=new p(26),R=Mn(v);Wn(R,0,S),Wn(R,2,k),Wn(R,4,z);const E=new w(1),D=Mn(E);let T;T=G>n?G:n>j?j:n,Wn(D,0,(T.getHours()<<6|T.getMinutes())<<5|T.getSeconds()/2),Wn(D,2,(T.getFullYear()-1980<<4|T.getMonth()+1)<<5|T.getDate());const A=E[0];Nn(R,6,A),Wn(R,22,Hn(t));const F=Hn(y,x,b,f);Wn(R,24,F);const C=new p(30+Hn(t)+F);return Nn(Mn(C),0,67324752),Un(C,v,4),Un(C,t,30),Un(C,y,30+Hn(t)),Un(C,x,30+Hn(t,y)),Un(C,b,30+Hn(t,y,x)),Un(C,f,30+Hn(t,y,x,b)),{localHeaderArray:C,headerArray:v,headerView:R,lastModDate:n,rawLastModDate:A,encrypted:_,compressed:m,version:S,compressionMethod:z,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:b,rawExtraFieldAES:y}})(c=n.assign({},c,{rawFilename:d,rawComment:m,version:y,versionMadeBy:b,lastModDate:x,lastAccessDate:S,creationDate:k,rawExtraField:O,zip64:L,password:E,level:C,useWebWorkers:W,encryptionStrength:D,extendedTimestamp:A,zipCrypto:T,bufferedWrite:N,keepOrder:F,dataDescriptor:H,dataDescriptorSignature:I,signal:U,msDosCompatible:z,internalFileAttribute:v,externalFileAttribute:R,useCompressionStream:M})),ee=(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=Mn(a),r&&(i=4,Nn(s,0,134695760))),{dataDescriptorArray:a,dataDescriptorView:s,dataDescriptorOffset:i}})(c);let te;V=Hn($.localHeaderArray,ee.dataDescriptorArray)+q,e.pendingEntriesSize+=V;try{te=await(async(e,r,o,l,c)=>{const{files:d,writer:u}=e,{keepOrder:h,dataDescriptor:w,signal:m}=c,{headerInfo:y}=l,b=t.from(d.values()).pop();let x,S,k,z,v,R,E={};d.set(r,E);try{let t;h&&(t=b&&b.lock,E.lock=new _((e=>k=e))),c.bufferedWrite||e.lockWriter||!w?(R=new Mt,R.writable.size=0,x=!0,await en(u)):(R=u,e.lockWriter=_.resolve(),S=()=>delete e.lockWriter),await en(R);const{writable:y}=u;let{diskOffset:T}=u;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new p(4);Nn(Mn(t),0,134695760),await Tn(y,t),e.offset+=4}x||(await t,await D(y));const{diskNumber:A}=u;if(v=!0,E.diskNumberStart=A,E=await(async(e,t,{diskNumberStart:r,lock:o},l,c,d)=>{const{headerInfo:u,dataDescriptorInfo:f}=l,{localHeaderArray:h,headerArray:w,lastModDate:g,rawLastModDate:m,encrypted:y,compressed:b,version:x,compressionMethod:S,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:z,rawExtraFieldAES:v}=u,{dataDescriptorArray:R}=f,{rawFilename:E,lastAccessDate:D,creationDate:T,password:A,level:F,zip64:C,zipCrypto:W,dataDescriptor:N,directory:I,versionMadeBy:U,rawComment:M,rawExtraField:H,useWebWorkers:L,onstart:O,onprogress:B,onend:q,signal:V,encryptionStrength:P,extendedTimestamp:K,msDosCompatible:Z,internalFileAttribute:Y,externalFileAttribute:j,useCompressionStream:G}=d,Q={lock:o,versionMadeBy:U,zip64:C,directory:!!I,filenameUTF8:!0,rawFilename:E,commentUTF8:!0,rawComment:M,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:z,rawExtraFieldAES:v,rawExtraField:H,extendedTimestamp:K,msDosCompatible:Z,internalFileAttribute:Y,externalFileAttribute:j,diskNumberStart:r};let $,ee=0,te=0;const{writable:ne}=t;if(e){e.chunkSize=(e=>i.max(e.chunkSize,64))(c),await Tn(ne,h);const t=e.readable,n=t.size=e.size,r={options:{codecType:ut,level:F,password:A,encryptionStrength:P,zipCrypto:y&&W,passwordVerification:y&&W&&m>>8&255,signed:!0,compressed:b,encrypted:y,useWebWorkers:L,useCompressionStream:G,transferStreams:!1},config:c,streamOptions:{signal:V,size:n,onstart:O,onprogress:B,onend:q}},a=await(async(e,t)=>{const{options:n,config:r}=t,{transferStreams:a,useWebWorkers:i,useCompressionStream:o,codecType:l,compressed:c,signed:d,encrypted:u}=n,{workerScripts:f,maxWorkers:p,terminateWorkerTimeout:h}=r;t.transferStreams=a||a===J;const w=!(c||d||u||t.transferStreams);let g;t.useWebWorkers=!w&&(i||i===J&&r.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[l]:[],n.useCompressionStream=o||o===J&&r.useCompressionStream;const m=kt.find((e=>!e.busy));if(m)Rt(m),g=new ht(m,e,t,y);else if(kt.length<p){const n={indexWorker:vt};vt++,kt.push(n),g=new ht(n,e,t,y)}else g=await new _((n=>zt.push({resolve:n,stream:e,workerOptions:t})));return g.run();function y(e){if(zt.length){const[{resolve:t,stream:n,workerOptions:r}]=zt.splice(0,1);t(new ht(e,n,r,y))}else e.worker?(Rt(e),s.isFinite(h)&&h>=0&&(e.terminateTimeout=setTimeout((()=>{kt=kt.filter((t=>t!=e)),e.terminate()}),h))):kt=kt.filter((t=>t!=e))}})({readable:t,writable:ne},r);ne.size+=a.size,$=a.signature,te=e.size=t.size,ee=a.size}else await Tn(ne,h);const re=C?new p(32):new p;return e&&((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:s,uncompressedSize:i,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:d}=o,{dataDescriptorView:u,dataDescriptorOffset:f}=l,{zip64:p,zipCrypto:h,dataDescriptor:w}=t;if(d&&!h||n===J||(Nn(c,10,n),w&&Nn(u,f,n)),p){const e=Mn(r);Wn(e,0,1),Wn(e,2,28),Nn(c,14,X),In(e,12,a(s)),Nn(c,18,X),In(e,4,a(i)),w&&(In(u,f+4,a(s)),In(u,f+12,a(i)))}else Nn(c,14,s),Nn(c,18,i),w&&(Nn(u,f+4,s),Nn(u,f+8,i))})({signature:$,rawExtraFieldZip64:re,compressedSize:ee,uncompressedSize:te,headerInfo:u,dataDescriptorInfo:f},d),N&&await Tn(ne,R),n.assign(Q,{compressedSize:ee,lastModDate:g,rawLastModDate:m,creationDate:T,lastAccessDate:D,encrypted:y,length:Hn(h,R)+ee,compressionMethod:S,version:x,headerArray:w,signature:$,rawExtraFieldZip64:re}),Q})(o,R,E,l,e.config,c),v=!1,d.set(r,E),E.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 _((e=>S=e))}(),z=!0,w||(n=await(async(e,t,n,{zipCrypto:r})=>{const s=await(e=>e.slice(0,26).arrayBuffer())(t),a=new g(s);return e.encrypted&&!r||Nn(a,14,e.signature),e.zip64?(Nn(a,18,X),Nn(a,22,X)):(Nn(a,18,e.compressedSize),Nn(a,22,e.uncompressedSize)),await Tn(n,new p(s)),t.slice(s.byteLength)})(E,n,y,c)),await D(y),E.diskNumberStart=u.diskNumber,T=u.diskOffset,await n.stream().pipeTo(y,{preventClose:!0,signal:m}),y.size+=n.size,z=!1}if(E.offset=e.offset-T,E.zip64)(e=>{const{rawExtraFieldZip64:t,offset:n,diskNumberStart:r}=e,s=Mn(t);In(s,20,a(n)),Nn(s,28,r)})(E);else if(E.offset>=X)throw new f(vn);return e.offset+=E.length,E}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()}async function D(e){y.localHeaderArray.length>u.availableSize&&(u.availableSize=0,await Tn(e,new p))}})(e,r,l,{headerInfo:$,dataDescriptorInfo:ee},c)}finally{e.pendingEntriesSize-=V}return n.assign(te,{name:r,comment:u,extraField:B}),new gn(te)})(c,e,r,l),d.add(m),await m}catch(t){throw c.filenames.delete(e),t}finally{d.delete(m);const e=Dn.shift();e?e():En--}}async close(e=new p,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await _.all(t.from(r));return await(async(e,n,r)=>{const{files:s,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:d}=o,u=0,h=0,w=e.offset-l,g=s.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:r,rawComment:a,rawExtraFieldExtendedTimestamp:i,rawExtraFieldNTFS:o}]of s)h+=46+Hn(e,a,t,n,i,o,r);const m=new p(h),_=Mn(m);await en(o);let y=0;for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:l,rawExtraFieldAES:d,rawExtraFieldNTFS:f,rawExtraField:h,rawComment:w,versionMadeBy:g,headerArray:b,directory:x,zip64:S,msDosCompatible:k,internalFileAttribute:z,externalFileAttribute:v,extendedTimestamp:R,lastModDate:E,diskNumberStart:D}=n;let T;if(R){T=new p(9);const e=Mn(T);Wn(e,0,21589),Wn(e,2,Hn(T)-4),Cn(e,4,1),Nn(e,5,i.floor(E.getTime()/1e3))}else T=new p;const A=Hn(l,d,T,f,h);Nn(_,u,33639248),Wn(_,u+4,g),Un(m,b,u+6),Wn(_,u+30,A),Wn(_,u+32,Hn(w)),Wn(_,u+34,S?Y:D),Wn(_,u+36,z),v?Nn(_,u+38,v):x&&k&&Cn(_,u+38,16),Nn(_,u+42,S?X:t),Un(m,a,u+46),Un(m,l,u+46+Hn(a)),Un(m,d,u+46+Hn(a,l)),Un(m,T,u+46+Hn(a,l,d)),Un(m,f,u+46+Hn(a,l,d,T)),Un(m,h,u+46+Hn(a,l,d,T,f)),Un(m,w,u+46+Hn(a)+A);const F=46+Hn(a,w)+A;if(u-y>o.availableSize&&(o.availableSize=0,await Tn(c,m.slice(y,u)),y=u),u+=F,r.onprogress)try{await r.onprogress(e+1,s.size,new gn(n))}catch(e){}}await Tn(c,y?m.slice(y):m);let b=o.diskNumber;const{availableSize:x}=o;22>x&&b++;let S=Fn(e,r,"zip64");if(!(X>w&&X>h&&Y>g&&Y>b)){if(!1===S)throw new f(vn);S=!0}const k=new p(S?98:22),z=Mn(k);u=0,S&&(Nn(z,0,101075792),In(z,4,a(44)),Wn(z,12,45),Wn(z,14,45),Nn(z,16,b),Nn(z,20,d),In(z,24,a(g)),In(z,32,a(g)),In(z,40,a(h)),In(z,48,a(w)),Nn(z,56,117853008),In(z,64,a(w)+a(h)),Nn(z,72,b+1),d=Y,g=Y,w=X,h=X,u+=76),Nn(z,u,101010256),Wn(z,u+4,b),Wn(z,u+6,d),Wn(z,u+8,g),Wn(z,u+10,g),Nn(z,u+12,h),Nn(z,u+16,w);const v=Hn(n);if(v){if(v>Y)throw new f(_n);Wn(z,u+20,v)}await Tn(c,k),v&&await Tn(c,n)})(this,e,n),Fn(this,n,"preventClose")||await o.close(),s.getData?s.getData():o}},e.configure=ae,e.getMimeType=()=>"application/octet-stream",e.initReader=tn,e.initStream=en,e.initWriter=nn,e.readUint8Array=rn,e.terminateWorkers=()=>{kt.forEach((e=>{Rt(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:l,Set:c,Response:d,URL:u,Error:f,Uint8Array:p,Uint16Array:h,Uint32Array:w,DataView:g,Blob:m,Promise:_,TextEncoder:y,TextDecoder:b,document:x,crypto:S,btoa:k,TransformStream:z,ReadableStream:v,WritableStream:R,CompressionStream:E,DecompressionStream:D,navigator:T}="undefined"!=typeof globalThis?globalThis:this||self,A=-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 N(){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,l,c,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;)c=n.heap[++n.heap_len]=2>d?++d:0,r[2*c]=1,n.depth[c]=0,n.opt_len--,s&&(n.static_len-=s[2*c+1]);for(e.max_code=d,o=i.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);c=a;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),l=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=l,r[2*c]=r[2*o]+r[2*l],n.depth[c]=i.max(n.depth[o],n.depth[l])+1,r[2*o+1]=r[2*l+1]=c,n.heap[1]=c++,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,l,c,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++)l=t.heap[o],d=n[2*n[2*l+1]+1]+1,d>i&&(d=i,p++),n[2*l+1]=d,l>e.max_code||(t.bl_count[d]++,u=0,a>l||(u=s[l-a]),f=n[2*l],t.opt_len+=f*(d+u),r&&(t.static_len+=f*(r[2*l+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(l=t.bl_count[d];0!==l;)c=t.heap[--o],c>e.max_code||(n[2*c+1]!=d&&(t.opt_len+=(d-n[2*c+1])*n[2*c],n[2*c+1]=d),l--)}})(n),((e,n,r)=>{const s=[];let a,i,o,l=0;for(a=1;15>=a;a++)s[a]=l=l+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}N._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]])),N.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],N.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],N.d_code=e=>256>e?W[e]:W[256+(e>>>7)],N.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],N.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],N.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],N.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const U=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,U[t]])));const M=F([[30,5]]);function H(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,N.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,N.extra_dbits,0,30,15),I.static_bl_desc=new I(null,N.extra_blbits,0,19,7);const L=[new H(0,0,0,0,0),new H(4,4,8,4,1),new H(4,5,16,8,1),new H(4,6,32,32,1),new H(4,4,16,16,2),new H(8,16,32,32,2),new H(8,16,128,128,2),new H(8,32,128,256,2),new H(32,128,258,1024,2),new H(32,258,258,4096,2)],O=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],B=113,q=666,V=262;function P(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,l,c,d,u,f,w,g,m,_,y,b,x,S,k,z,v,R,E,D,T,F,C,W,U,M,H,K;const Z=new N,X=new N,Y=new N;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++)H[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 l=0;t>=l;l++)n=s,s=e[2*(l+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,l=4;for(0===a&&(o=138,l=3),n=0;t>=n;n++)if(r=a,a=e[2*(n+1)+1],++i>=o||r!=a){if(l>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,l=3):r==a?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(se($),$=0,ee=0):8>ee||(re(255&$),$>>>=8,ee-=8)}function ce(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*(N._length_code[n]+256+1)]++,H[2*N.d_code(t)]++),0==(8191&G)&&F>2){for(r=8*G,s=z-b,a=0;30>a;a++)r+=H[2*a]*(5+N.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=N._length_code[s],ie(a+256+1,t),i=N.extra_lbits[a],0!==i&&(s-=N.base_length[a],ae(s,i)),r--,a=N.d_code(r),ie(a,n),i=N.extra_dbits[a],0!==i&&(r-=N.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(c.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(H,X.max_code),Y.build_tree(e),t=18;t>=3&&0===K[2*N.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*N.bl_order[r]+1],3);oe(M,e-1),oe(H,t-1)})(Z.max_code+1,X.max_code+1,i+1),de(M,H)):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-V){c.set(c.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(c,z+R,s),R+=e,3>R||(w=255&c[z],w=(w<<y^255&c[z+1])&_)}while(V>R&&0!==t.avail_in)}function we(e){let t,n,r=D,s=z,i=E;const o=z>a-V?z-(a-V):0;let d=U;const f=l,p=z+258;let h=c[s+i-1],w=c[s+i];W>E||(r>>=2),d>R&&(d=R);do{if(t=e,c[t+i]==w&&c[t+i-1]==h&&c[t]==c[s]&&c[++t]==c[s+1]){s+=2,t++;do{}while(c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&p>s);if(n=258-(p-s),s=p-258,n>i){if(v=e,i=n,n>=d)break;h=c[s+i-1],w=c[s+i]}}}while((e=65535&u[e&f])>o&&0!=--r);return i>R?R:i}e.depth=[],e.bl_count=[],e.heap=[],M=[],H=[],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&&P(t,r[a+1],r[a],e.depth)&&a++,!P(t,s,r[a],e.depth));)r[n]=r[a],n=a,a<<=1;r[n]=s},e.deflateInit=(t,S,v,N,O,q)=>(N||(N=8),O||(O=8),q||(q=0),t.msg=null,-1==S&&(S=6),1>O||O>9||8!=N||9>v||v>15||0>S||S>9||0>q||q>2?A:(t.dstate=e,o=v,a=1<<o,l=a-1,m=O+7,g=1<<m,_=g-1,y=i.floor((m+3-1)/3),c=new p(2*a),u=[],f=[],j=1<<O+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=q,(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=H,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;T=L[F].max_lazy,W=L[F].good_length,U=L[F].nice_length,D=L[F].max_chain,z=0,b=0,R=0,x=E=2,k=0,w=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=B&&n!=q?A:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,c=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?A:(L[F].func!=L[t].func&&0!==e.total_in&&(r=e.deflate(1)),F!=t&&(F=t,T=L[F].max_lazy,W=L[F].good_length,U=L[F].nice_length,D=L[F].max_chain),C=n,r)},e.deflateSetDictionary=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return A;if(3>i)return 0;for(i>a-V&&(i=a-V,o=r-i),c.set(t.subarray(o,o+i),0),z=i,b=i,w=255&c[0],w=(w<<y^255&c[1])&_,s=0;i-3>=s;s++)w=(w<<y^255&c[s+2])&_,u[s&l]=f[w],f[w]=s;return 0},e.deflate=(i,d)=>{let p,h,m,D,W;if(d>4||0>d)return A;if(!i.next_out||!i.next_in&&0!==i.avail_in||n==q&&4!=d)return i.msg=O[4],A;if(0===i.avail_out)return i.msg=O[7],-5;var N;if(t=i,D=s,s=d,42==n&&(h=8+(o-8<<4)<<8,m=(F-1&255)>>1,m>3&&(m=3),h|=m<<6,0!==z&&(h|=32),h+=31-h%31,n=B,re((N=h)>>8&255),re(255&N)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return s=-1,0}else if(0===t.avail_in&&D>=d&&4!=d)return t.msg=O[7],-5;if(n==q&&0!==t.avail_in)return i.msg=O[7],-5;if(0!==t.avail_in||0!==R||0!=d&&n!=q){switch(W=-1,L[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-V&&(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(V>R){if(he(),V>R&&0==e)return 0;if(0===R)break}if(3>R||(w=(w<<y^255&c[z+2])&_,r=65535&f[w],u[z&l]=f[w],f[w]=z),0===r||(z-r&65535)>a-V||2!=C&&(x=we(r)),3>x)n=ce(0,255&c[z]),R--,z++;else if(n=ce(z-v,x-3),R-=x,x>T||3>R)z+=x,x=0,w=255&c[z],w=(w<<y^255&c[z+1])&_;else{x--;do{z++,w=(w<<y^255&c[z+2])&_,r=65535&f[w],u[z&l]=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(V>R){if(he(),V>R&&0==e)return 0;if(0===R)break}if(3>R||(w=(w<<y^255&c[z+2])&_,s=65535&f[w],u[z&l]=f[w],f[w]=z),E=x,S=v,x=2,0!==s&&T>E&&a-V>=(z-s&65535)&&(2!=C&&(x=we(s)),5>=x&&(1==C||3==x&&z-v>4096)&&(x=2)),3>E||x>E)if(0!==k){if(n=ce(0,255&c[z-1]),n&&pe(!1),z++,R--,0===t.avail_out)return 0}else k=1,z++,R--;else{r=z+R-3,n=ce(z-1-S,E-3),R-=E-1,E-=2;do{++z>r||(w=(w<<y^255&c[z+2])&_,s=65535&f[w],u[z&l]=f[w],f[w]=z)}while(0!=--E);if(k=0,x=2,z++,n&&(pe(!1),0===t.avail_out))return 0}}return 0!==k&&(n=ce(0,255&c[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=q),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),le(),9>1+Q+10-ee&&(ae(2,3),ie(256,I.static_ltree),le()),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):A},deflateEnd(){const e=this;if(!e.dstate)return A;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):A},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):A},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=4294967295,Y=65535,j=new o(2107,11,31),G=new o(1980,0,1),J=void 0,Q="undefined",$="function";class ee{constructor(e){return class extends z{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}let te=2;try{typeof T!=Q&&T.hardwareConcurrency&&(te=T.hardwareConcurrency)}catch(e){}const ne={chunkSize:524288,maxWorkers:te,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:J,CompressionStreamNative:typeof E!=Q&&E,DecompressionStreamNative:typeof D!=Q&&D},re=n.assign({},ne);function se(){return re}function ae(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:a,useCompressionStream:i,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:u,workerScripts:p}=e;if(ie("baseURL",n),ie("chunkSize",r),ie("maxWorkers",s),ie("terminateWorkerTimeout",a),ie("useCompressionStream",i),ie("useWebWorkers",o),l&&(re.CompressionStream=new ee(l)),c&&(re.DecompressionStream=new ee(c)),ie("CompressionStream",d),ie("DecompressionStream",u),p!==J){const{deflate:e,inflate:n}=p;if((e||n)&&(re.workerScripts||(re.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");re.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");re.workerScripts.inflate=n}}}function ie(e,t){t!==J&&(re[e]=t)}const oe=[];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;oe[e]=t}class le{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^oe[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class ce extends z{constructor(){const e=new le;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 de(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 ue={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=ue.getPartial(n);return 32===r?e.concat(t):ue._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)+ue.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]=ue.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=ue.getPartial(s);return r.push(ue.partial(t+a&31,t+a>32?n:r.pop(),1)),r}},fe={bytes:{fromBits(e){const t=ue.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(ue.partial(8*(3&n),r)),t}}},pe={sha1:function(e){e?(this._h=e._h.slice(0),this._buffer=e._buffer.slice(0),this._length=e._length):this.reset()}};pe.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=fe.utf8String.toBits(e));const n=t._buffer=ue.concat(t._buffer,e),r=t._length,s=t._length=r+ue.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=ue.concat(t,[ue.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],l=r[2],c=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,l,c)+d+s[e]+n._key[i.floor(e/20)]|0;d=c,c=l,l=n._S(30,o),o=a,a=t}r[0]=r[0]+a|0,r[1]=r[1]+o|0,r[2]=r[2]+l|0,r[3]=r[3]+c|0,r[4]=r[4]+d|0}};const he={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}},we={importKey:e=>new we.hmacSha1(fe.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,l,c;const d=new ArrayBuffer(s),u=new g(d);let p=0;const h=ue;for(t=fe.bytes.toBits(t),c=1;(s||1)>p;c++){for(a=i=e.encrypt(h.concat(t,[c])),o=1;n>o;o++)for(i=e.encrypt(i),l=0;l<i.length;l++)a[l]^=i[l];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=pe.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)}}},ge=void 0!==S&&"function"==typeof S.getRandomValues,me="Invalid password",_e="Invalid signature";function ye(e){return ge?S.getRandomValues(e):he.getRandomValues(e)}const be=16,xe={name:"PBKDF2"},Se=n.assign({hash:{name:"HMAC"}},xe),ke=n.assign({iterations:1e3,hash:{name:"SHA-1"}},xe),ze=["deriveBits"],ve=[8,12,16],Re=[16,24,32],Ee=10,De=[0,0,0,0],Te="undefined",Ae="function",Fe=typeof S!=Te,Ce=Fe&&S.subtle,We=Fe&&typeof Ce!=Te,Ne=fe.bytes,Ie=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,l=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^l<<24,l=l<<1^283*(l>>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,l,c;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,c=s[l=s[o=s[d]]];let u=16843009*c^65537*l^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],l=a[2],c=a[3],d=a[4];let u,p,h,w=e[0]^n[0],g=e[t?3:1]^n[1],m=e[2]^n[2],_=e[t?1:3]^n[3],y=4;for(let e=0;r>e;e++)u=i[w>>>24]^o[g>>16&255]^l[m>>8&255]^c[255&_]^n[y],p=i[g>>>24]^o[m>>16&255]^l[_>>8&255]^c[255&w]^n[y+1],h=i[m>>>24]^o[_>>16&255]^l[w>>8&255]^c[255&g]^n[y+2],_=i[_>>>24]^o[w>>16&255]^l[g>>8&255]^c[255&m]^n[y+3],y+=4,w=u,g=p,m=h;for(let e=0;4>e;e++)s[t?3&-e:e]=d[w>>>24]<<24^d[g>>16&255]<<16^d[m>>8&255]<<8^d[255&_]^n[y++],u=w,w=g,g=m,m=_,_=u;return s}},Ue=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=ue.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 ue.clamp(t,s)}},Me=we.hmacSha1;let He=Fe&&We&&typeof Ce.importKey==Ae,Le=Fe&&We&&typeof Ce.deriveBits==Ae;class Oe extends z{constructor({password:e,signed:t,encryptionStrength:r}){super({start(){n.assign(this,{ready:new _((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 Ve(e,t,n,Ke(r,0,ve[t])),a=Ke(r,ve[t]);if(s[0]!=a[0]||s[1]!=a[1])throw new f(me)})(n,s,r,Ke(e,0,ve[s]+2)),e=Ke(e,ve[s]+2),a()):await i;const o=new p(e.length-Ee-(e.length-Ee)%be);t.enqueue(qe(n,e,o,0,Ee,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:a}=this;await a;const i=Ke(s,0,s.length-Ee),o=Ke(s,s.length-Ee);let l=new p;if(i.length){const e=Xe(Ne,i);r.update(e);const t=n.update(e);l=Ze(Ne,t)}if(t){const e=Ke(Ze(Ne,r.digest()),0,Ee);for(let t=0;Ee>t;t++)if(e[t]!=o[t])throw new f(_e)}e.enqueue(l)}})}}class Be extends z{constructor({password:e,encryptionStrength:t}){let r;super({start(){n.assign(this,{ready:new _((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=ye(new p(ve[t]));return Pe(r,await Ve(e,t,n,r))})(n,s,r),a()):await i;const l=new p(o.length+e.length-e.length%be);l.set(o,0),t.enqueue(qe(n,e,l,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(Xe(Ne,s));n.update(e),i=Ze(Ne,e)}r.signature=Ze(Ne,n.digest()).slice(0,Ee),e.enqueue(Pe(i,r.signature))}}),r=this}}function qe(e,t,n,r,s,a){const{ctr:i,hmac:o,pending:l}=e,c=t.length-s;let d;for(l.length&&(t=Pe(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new p(t)).set(n,0)}return e})(n,c-c%be)),d=0;c-be>=d;d+=be){const e=Xe(Ne,Ke(t,d,d+be));a&&o.update(e);const s=i.update(e);a||o.update(s),n.set(Ze(Ne,s),d+r)}return e.pending=Ke(t,d),n}async function Ve(e,r,s,a){e.password=null;const i=de(s),o=await(async(e,t,n,r,s)=>{if(!He)return we.importKey(t);try{return await Ce.importKey("raw",t,n,!1,s)}catch(e){return He=!1,we.importKey(t)}})(0,i,Se,0,ze),l=await(async(e,t,n)=>{if(!Le)return we.pbkdf2(t,e.salt,ke.iterations,n);try{return await Ce.deriveBits(e,t,n)}catch(r){return Le=!1,we.pbkdf2(t,e.salt,ke.iterations,n)}})(n.assign({salt:a},ke),o,8*(2*Re[r]+2)),c=new p(l),d=Xe(Ne,Ke(c,0,Re[r])),u=Xe(Ne,Ke(c,Re[r],2*Re[r])),f=Ke(c,2*Re[r]);return n.assign(e,{keys:{key:d,authentication:u,passwordVerification:f},ctr:new Ue(new Ie(d),t.from(De)),hmac:new Me(u)}),f}function Pe(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 Ke(e,t,n){return e.subarray(t,n)}function Ze(e,t){return e.fromBits(t)}function Xe(e,t){return e.toBits(t)}class Ye extends z{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Qe(this,e)},transform(e,t){const n=this;if(n.password){const t=Ge(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(me);e=e.subarray(12)}t.enqueue(Ge(n,e))}})}}class je extends z{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Qe(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=ye(new p(12));t[11]=n.passwordVerification,r=new p(e.length+t.length),r.set(Je(n,t),0),s=12}else r=new p(e.length),s=0;r.set(Je(n,e),s),t.enqueue(r)}})}}function Ge(e,t){const n=new p(t.length);for(let r=0;r<t.length;r++)n[r]=et(e)^t[r],$e(e,n[r]);return n}function Je(e,t){const n=new p(t.length);for(let r=0;r<t.length;r++)n[r]=et(e)^t[r],$e(e,t[r]);return n}function Qe(e,t){const r=[305419896,591751049,878082192];n.assign(e,{keys:r,crcKey0:new le(r[0]),crcKey2:new le(r[2])});for(let n=0;n<t.length;n++)$e(e,t.charCodeAt(n))}function $e(e,t){let[n,r,s]=e.keys;e.crcKey0.append([t]),n=~e.crcKey0.get(),r=nt(i.imul(nt(r+tt(n)),134775813)+1),e.crcKey2.append([r>>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function et(e){const t=2|e.keys[2];return tt(i.imul(t,1^t)>>>8)}function tt(e){return 255&e}function nt(e){return 4294967295&e}const rt="deflate-raw";class st extends z{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:a,useCompressionStream:i,zipCrypto:o,signed:l,level:c}=e,d=this;let u,f,p=it(super.readable);a&&!o||!l||([p,u]=p.tee(),u=ct(u,new ce)),s&&(p=lt(p,i,{level:c,chunkSize:t},r,n)),a&&(o?p=ct(p,new je(e)):(f=new Be(e),p=ct(p,f))),ot(d,p,(async()=>{let e;a&&!o&&(e=f.signature),a&&!o||!l||(e=await u.getReader().read(),e=new g(e.value.buffer).getUint32(0)),d.signature=e}))}}class at extends z{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:a,signed:i,signature:o,compressed:l,useCompressionStream:c}=e;let d,u,p=it(super.readable);a&&(s?p=ct(p,new Ye(e)):(u=new Oe(e),p=ct(p,u))),l&&(p=lt(p,c,{chunkSize:t},r,n)),a&&!s||!i||([p,d]=p.tee(),d=ct(d,new ce)),ot(this,p,(async()=>{if((!a||s)&&i){const e=await d.getReader().read(),t=new g(e.value.buffer);if(o!=t.getUint32(0,!1))throw new f(_e)}}))}}function it(e){return ct(e,new z({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ot(e,t,r){t=ct(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function lt(e,t,n,r,s){try{e=ct(e,new(t&&r?r:s)(rt,n))}catch(r){if(!t)throw r;e=ct(e,new s(rt,n))}return e}function ct(e,t){return e.pipeThrough(t)}const dt="data",ut="deflate";class ft extends z{constructor(e,t){super({});const r=this,{codecType:s}=e;let a;s.startsWith(ut)?a=st:s.startsWith("inflate")&&(a=at);let i=0;const o=new a(e,t),l=super.readable,c=new z({transform(e,t){e&&e.length&&(i+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;n.assign(r,{signature:e,size:i})}});n.defineProperty(r,"readable",{get:()=>l.pipeThrough(o).pipeThrough(c)})}}const pt=typeof Worker!=Q;class ht{constructor(e,{readable:t,writable:r},{options:s,config:a,streamOptions:i,useWebWorkers:o,transferStreams:l,scripts:c},d){const{signal:u}=i;return n.assign(e,{busy:!0,readable:t.pipeThrough(new wt(t,i,a),{signal:u}),writable:r,options:n.assign({},s),scripts:c,transferStreams:l,terminate(){const{worker:t,busy:n}=e;t&&!n&&(t.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,d(e)}}),(o&&pt?_t:mt)(e,a)}}class wt extends z{constructor(e,{onstart:t,onprogress:n,size:r,onend:s},{chunkSize:a}){let i=0;super({start(){t&&gt(t,r)},async transform(e,t){i+=e.length,n&&await gt(n,i,r),t.enqueue(e)},flush(){e.size=i,s&&gt(s,i)}},{highWaterMark:1,size:()=>a})}}async function gt(e,...t){try{await e(...t)}catch(e){}}function mt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{const a=new ft(e,s);try{await t.pipeThrough(a).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:e,size:s}=a;return{signature:e,size:s}}finally{r()}})(e,t)}}function _t(e,{baseURL:t,chunkSize:r}){return e.interface||n.assign(e,{worker:xt(e.scripts[0],t,e),interface:{run:()=>(async(e,t)=>{let r,s;const a=new _(((e,t)=>{r=e,s=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:s,result:a});const{readable:i,options:o,scripts:l}=e,{writable:c,closed:d}=(e=>{const t=e.getWriter();let n;const r=new _((e=>n=e));return{writable:new R({async write(e){await t.ready,await t.write(e)},close(){t.releaseLock(),n()},abort:e=>t.abort(e)}),closed:r}})(e.writable);St({type:"start",scripts:l.slice(1),options:o,config:t,readable:i,writable:c},e)||n.assign(e,{reader:i.getReader(),writer:c.getWriter()});const u=await a;try{await c.close()}catch(e){}return await d,u})(e,{chunkSize:r})}}),e.interface}let yt=!0,bt=!0;function xt(e,t,r){const s={type:"module"};let a,i;typeof e==$&&(e=e());try{a=new u(e,t)}catch(t){a=e}if(yt)try{i=new Worker(a)}catch(e){yt=!1,i=new Worker(a,s)}else i=new Worker(a,s);return i.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:s,messageId:a,result:i,error:o}=e,{reader:l,writer:c,resolveResult:d,rejectResult:u,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:r,name:s}=o,a=new f(e);n.assign(a,{stack:t,code:r,name:s}),w(a)}else{if("pull"==r){const{value:e,done:n}=await l.read();St({type:dt,value:e,done:n,messageId:a},t)}r==dt&&(await c.ready,await c.write(new p(s)),St({type:"ack",messageId:a},t)),"close"==r&&w(null,i)}}catch(o){w(o)}function w(e,t){e?u(e):d(t),c&&c.releaseLock(),h()}})(e,r))),i}function St(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{let{value:n,readable:r,writable:a}=e;const i=[];if(n){const{buffer:t,length:r}=n;r!=t.byteLength&&(n=new p(n)),e.value=n.buffer,i.push(e.value)}if(s&&bt?(r&&i.push(r),a&&i.push(a)):e.readable=e.writable=null,i.length)try{return t.postMessage(e,i),!0}catch(n){bt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let kt=[];const zt=[];let vt=0;function Rt(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const Et="HTTP error ",Dt="HTTP Range not supported",Tt="Writer iterator completed too soon",At="GET",Ft=65536,Ct="writable";class Wt{constructor(){this.size=0}init(){this.initialized=!0}}class Nt extends Wt{get readable(){const e=this,{chunkSize:t=Ft}=e,n=new v({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:a,diskNumberStart:o}=n,{chunkOffset:l}=this;r.enqueue(await rn(e,s+l,i.min(t,a-l),o)),l+t>a?r.close():this.chunkOffset+=t}});return n}}class It extends Wt{constructor(){super();const e=this,t=new R({write:t=>e.writeUint8Array(t)});n.defineProperty(e,Ct,{get:()=>t})}writeUint8Array(){}}class Ut extends Nt{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||r<n.size?n.blob.slice(e,r):n.blob;return new p(await s.arrayBuffer())}}class Mt extends Wt{constructor(e){super();const t=new z,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,Ct,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Ht extends Nt{constructor(e,t){super(),Ot(this,e,t)}async init(){super.init(),await Bt(this,jt,Kt)}readUint8Array(e,t){return qt(this,e,t,jt,Kt)}}class Lt extends Nt{constructor(e,t){super(),Ot(this,e,t)}async init(){super.init(),await Bt(this,Gt,Zt)}readUint8Array(e,t){return qt(this,e,t,Gt,Zt)}}function Ot(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 Bt(e,t,n){const{url:r,useRangeHeader:a,forceRangeRequests:i}=e;if((e=>{const{baseURL:t}=se(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(r)&&(a||i)){const{headers:r}=await t(At,e,Vt(e));if(!i&&"bytes"!=r.get("Accept-Ranges"))throw new f(Dt);{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===J?await Yt(e,t,n):e.size=a}}else await Yt(e,t,n)}async function qt(e,t,n,r,s){const{useRangeHeader:a,forceRangeRequests:i,options:o}=e;if(a||i){const s=await r(At,e,Vt(e,t,n));if(206!=s.status)throw new f(Dt);return new p(await s.arrayBuffer())}{const{data:r}=e;return r||await s(e,o),new p(e.data.subarray(t,t+n))}}function Vt(e,t=0,r=1){return n.assign({},Pt(e),{Range:"bytes="+t+"-"+(t+r-1)})}function Pt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Kt(e){await Xt(e,jt)}async function Zt(e){await Xt(e,Gt)}async function Xt(e,t){const n=await t(At,e,Pt(e));e.data=new p(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Yt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Pt(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function jt(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(Dt):new f(Et+(a.statusText||a.status))}function Gt(e,{url:t},r){return new _(((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 l(e)})}else a(416==i.status?new f(Dt):new f(Et+(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 Jt extends Nt{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Lt(e,t):new Ht(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 Qt extends Nt{constructor(e){super(),this.readers=e}async init(){super.init();const e=this,{readers:t}=e;e.lastDiskNumber=0,await _.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 l=e;for(;l>=s[o].size;)l-=s[o].size,o++;const c=s[o],d=c.size;if(l+t>d){const s=d-l;a=new p(t),a.set(await rn(c,l,s)),a.set(await r.readUint8Array(e+s,t-s,n),s)}else a=await rn(c,l,t);return r.lastDiskNumber=i.max(o,r.lastDiskNumber),a}}class $t extends Wt{constructor(e,t=4294967295){super();const r=this;let s,a,i;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new R({async write(t){const{availableSize:n}=r;if(i)t.length<n?await l(t):(await l(t.slice(0,n)),await c(),r.diskOffset+=s.size,r.diskNumber++,i=null,await this.write(t.slice(n)));else{const{value:n,done:o}=await e.next();if(o&&!n)throw new f(Tt);s=n,s.size=0,s.maxSize&&(r.maxSize=s.maxSize),r.availableSize=r.maxSize,await en(s),a=n.writable,i=a.getWriter(),await this.write(t)}},async close(){await i.ready,await c()}});async function l(e){const t=e.length;t&&(await i.ready,await i.write(e),s.size+=t,r.size+=t,r.availableSize-=t)}async function c(){a.size=s.size,await i.close()}n.defineProperty(r,Ct,{get:()=>o})}}async function en(e,t){e.init&&!e.initialized&&await e.init(t)}function tn(e){return t.isArray(e)&&(e=new Qt(e)),e instanceof v&&(e={readable:e}),e}function nn(e){e.writable===J&&typeof e.next==$&&(e=new $t(e)),e instanceof R&&(e={writable:e});const{writable:t}=e;return t.size===J&&(t.size=0),e instanceof $t||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function rn(e,t,n,r){return e.readUint8Array(t,n,r)}const sn=Qt,an=$t,on="diskNumberStart",ln="lastModDate",cn="lastAccessDate",dn="creationDate",un="internalFileAttribute",fn="externalFileAttribute",pn="msDosCompatible",hn="zip64",wn=["filename","rawFilename","compressedSize","uncompressedSize",ln,"rawLastModDate","comment","rawComment",cn,dn,"offset",on,on,un,fn,pn,hn,"directory","bitFlag","encrypted","signature","filenameUTF8","commentUTF8","compressionMethod","version","versionMadeBy","extraField","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class gn{constructor(e){wn.forEach((t=>this[t]=e[t]))}}const mn="File already exists",_n="Zip file comment exceeds 64KB",yn="File entry comment exceeds 64KB",bn="File entry name exceeds 64KB",xn="Version exceeds 65535",Sn="The strength must equal 1, 2, or 3",kn="Extra field type exceeds 65535",zn="Extra field data exceeds 64KB",vn="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Rn=new p([7,0,2,0,65,69,3,0,0]);let En=0;const Dn=[];async function Tn(e,t){const n=e.getWriter();await n.ready,e.size+=Hn(t),await n.write(t),n.releaseLock()}function An(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function Fn(e,t,n,r){const s=t[n]===J?e.options[n]:t[n];return s===J?r:s}function Cn(e,t,n){e.setUint8(t,n)}function Wn(e,t,n){e.setUint16(t,n,!0)}function Nn(e,t,n){e.setUint32(t,n,!0)}function In(e,t,n){e.setBigUint64(t,n,!0)}function Un(e,t,n){e.set(t,n)}function Mn(e){return new g(e.buffer)}function Hn(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}ae({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,l=0,c=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))),c+=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(c),d.forEach((e=>{i.set(e,l),l+=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=Ut,e.BlobWriter=Mt,e.Data64URIReader=class extends Nt{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)),l=e-3*i.floor(a/4);for(let e=l;l+t>e;e++)s[e-l]=o.charCodeAt(e);return s}},e.Data64URIWriter=class extends It{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=mn,e.ERR_HTTP_RANGE=Dt,e.ERR_INVALID_COMMENT=_n,e.ERR_INVALID_ENCRYPTION_STRENGTH=Sn,e.ERR_INVALID_ENTRY_COMMENT=yn,e.ERR_INVALID_ENTRY_NAME=bn,e.ERR_INVALID_EXTRAFIELD_DATA=zn,e.ERR_INVALID_EXTRAFIELD_TYPE=kn,e.ERR_INVALID_VERSION=xn,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Tt,e.ERR_UNSUPPORTED_FORMAT=vn,e.HttpRangeReader=class extends Jt{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Jt,e.Reader=Nt,e.SplitDataReader=Qt,e.SplitDataWriter=$t,e.SplitZipReader=sn,e.SplitZipWriter=an,e.TextReader=class extends Ut{constructor(e){super(new m([e],{type:"text/plain"}))}},e.TextWriter=class extends Mt{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 _(((s,a)=>{n.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>a(t.error)}),t.readAsText(r,e)}))}}},e.Uint8ArrayReader=class extends Nt{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 It{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=It,e.ZipWriter=class{constructor(e,t={}){e=nn(e),n.assign(this,{writer:e,addSplitZipSignature:e instanceof $t,options:t,config:se(),files:new l,filenames:new c,offset:e.writable.size,pendingEntriesSize:0,pendingAddFileCalls:new c,bufferedWrites:0})}async add(e="",r,l={}){const c=this,{pendingAddFileCalls:d,config:u}=c;let m;En<u.maxWorkers?En++:await new _((e=>Dn.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new f(mn);return c.filenames.add(e),m=(async(e,r,l,c)=>{r=r.trim(),c.directory&&!r.endsWith("/")?r+="/":c.directory=r.endsWith("/");const d=de(r);if(Hn(d)>Y)throw new f(bn);const u=c.comment||"",m=de(u);if(Hn(m)>Y)throw new f(yn);const y=Fn(e,c,"version",20);if(y>Y)throw new f(xn);const b=Fn(e,c,"versionMadeBy",20);if(b>Y)throw new f(xn);const x=Fn(e,c,ln,new o),S=Fn(e,c,cn),k=Fn(e,c,dn),z=Fn(e,c,pn,!0),v=Fn(e,c,un,0),R=Fn(e,c,fn,0),E=Fn(e,c,"password"),D=Fn(e,c,"encryptionStrength",3),T=Fn(e,c,"zipCrypto"),A=Fn(e,c,"extendedTimestamp",!0),F=Fn(e,c,"keepOrder",!0),C=Fn(e,c,"level"),W=Fn(e,c,"useWebWorkers"),N=Fn(e,c,"bufferedWrite"),I=Fn(e,c,"dataDescriptorSignature",!1),U=Fn(e,c,"signal"),M=Fn(e,c,"useCompressionStream");let H=Fn(e,c,"dataDescriptor",!0),L=Fn(e,c,hn);if(E!==J&&D!==J&&(1>D||D>3))throw new f(Sn);let O=new p;const{extraField:B}=c;if(B){let e=0,t=0;B.forEach((t=>e+=4+Hn(t))),O=new p(e),B.forEach(((e,n)=>{if(n>Y)throw new f(kn);if(Hn(e)>Y)throw new f(zn);Un(O,new h([n]),t),Un(O,new h([Hn(e)]),t+2),Un(O,e,t+4),t+=4+Hn(e)}))}let q=0,V=0,P=0;l&&(l=tn(l),await en(l),l.size===J?(H=!0,(L||L===J)&&(L=!0,q=X)):(P=l.size,q=(e=>e+5*(i.floor(e/16383)+1))(P)));const{diskOffset:K,diskNumber:Z,maxSize:Q}=e.writer;if(!(e.offset+e.pendingEntriesSize-K<X&&X>P&&X>q&&Z+i.ceil(e.pendingEntriesSize/Q)<Y)){if(!1===L||!F)throw new f(vn);L=!0}L=L||!1;const $=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,password:a,level:o,zip64:l,zipCrypto:c,dataDescriptor:d,directory:u,rawExtraField:f,encryptionStrength:h,extendedTimestamp:g}=e,m=0!==o&&!u,_=!(!a||!Hn(a));let y,b,x,S=e.version;if(_&&!c){y=new p(Hn(Rn)+2);const e=Mn(y);Wn(e,0,39169),Un(y,Rn,2),Cn(e,8,h)}else y=new p;if(g){x=new p(9+(r?4:0)+(s?4:0));const e=Mn(x);Wn(e,0,21589),Wn(e,2,Hn(x)-4),Cn(e,4,1+(r?2:0)+(s?4:0)),Nn(e,5,i.floor(n.getTime()/1e3)),r&&Nn(e,9,i.floor(r.getTime()/1e3)),s&&Nn(e,13,i.floor(s.getTime()/1e3));try{b=new p(36);const e=Mn(b),t=An(n);Wn(e,0,10),Wn(e,2,32),Wn(e,8,1),Wn(e,10,24),In(e,12,t),In(e,20,An(r)||t),In(e,28,An(s)||t)}catch(e){b=new p}}else b=x=new p;let k=2048;d&&(k|=8);let z=0;m&&(z=8),l&&(S=S>45?S:45),_&&(k|=1,c||(S=S>51?S:51,z=99,m&&(y[9]=8)));const v=new p(26),R=Mn(v);Wn(R,0,S),Wn(R,2,k),Wn(R,4,z);const E=new w(1),D=Mn(E);let T;T=G>n?G:n>j?j:n,Wn(D,0,(T.getHours()<<6|T.getMinutes())<<5|T.getSeconds()/2),Wn(D,2,(T.getFullYear()-1980<<4|T.getMonth()+1)<<5|T.getDate());const A=E[0];Nn(R,6,A),Wn(R,22,Hn(t));const F=Hn(y,x,b,f);Wn(R,24,F);const C=new p(30+Hn(t)+F);return Nn(Mn(C),0,67324752),Un(C,v,4),Un(C,t,30),Un(C,y,30+Hn(t)),Un(C,x,30+Hn(t,y)),Un(C,b,30+Hn(t,y,x)),Un(C,f,30+Hn(t,y,x,b)),{localHeaderArray:C,headerArray:v,headerView:R,lastModDate:n,rawLastModDate:A,encrypted:_,compressed:m,version:S,compressionMethod:z,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:b,rawExtraFieldAES:y}})(c=n.assign({},c,{rawFilename:d,rawComment:m,version:y,versionMadeBy:b,lastModDate:x,lastAccessDate:S,creationDate:k,rawExtraField:O,zip64:L,password:E,level:C,useWebWorkers:W,encryptionStrength:D,extendedTimestamp:A,zipCrypto:T,bufferedWrite:N,keepOrder:F,dataDescriptor:H,dataDescriptorSignature:I,signal:U,msDosCompatible:z,internalFileAttribute:v,externalFileAttribute:R,useCompressionStream:M})),ee=(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=Mn(a),r&&(i=4,Nn(s,0,134695760))),{dataDescriptorArray:a,dataDescriptorView:s,dataDescriptorOffset:i}})(c);let te;V=Hn($.localHeaderArray,ee.dataDescriptorArray)+q,e.pendingEntriesSize+=V;try{te=await(async(e,r,o,l,c)=>{const{files:d,writer:u}=e,{keepOrder:h,dataDescriptor:w,signal:m}=c,{headerInfo:y}=l,b=t.from(d.values()).pop();let x,S,k,z,v,R,E={};d.set(r,E);try{let t;h&&(t=b&&b.lock,E.lock=new _((e=>k=e))),c.bufferedWrite||e.writerLocked||e.bufferedWrites||!w?(R=new Mt,R.writable.size=0,x=!0,e.bufferedWrites++,await en(u)):(R=u,D()),await en(R);const{writable:y}=u;let{diskOffset:A}=u;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new p(4);Nn(Mn(t),0,134695760),await Tn(y,t),e.offset+=4}x||(await t,await T(y));const{diskNumber:F}=u;if(v=!0,E.diskNumberStart=F,E=await(async(e,t,{diskNumberStart:r,lock:o},l,c,d)=>{const{headerInfo:u,dataDescriptorInfo:f}=l,{localHeaderArray:h,headerArray:w,lastModDate:g,rawLastModDate:m,encrypted:y,compressed:b,version:x,compressionMethod:S,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:z,rawExtraFieldAES:v}=u,{dataDescriptorArray:R}=f,{rawFilename:E,lastAccessDate:D,creationDate:T,password:A,level:F,zip64:C,zipCrypto:W,dataDescriptor:N,directory:I,versionMadeBy:U,rawComment:M,rawExtraField:H,useWebWorkers:L,onstart:O,onprogress:B,onend:q,signal:V,encryptionStrength:P,extendedTimestamp:K,msDosCompatible:Z,internalFileAttribute:Y,externalFileAttribute:j,useCompressionStream:G}=d,Q={lock:o,versionMadeBy:U,zip64:C,directory:!!I,filenameUTF8:!0,rawFilename:E,commentUTF8:!0,rawComment:M,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:z,rawExtraFieldAES:v,rawExtraField:H,extendedTimestamp:K,msDosCompatible:Z,internalFileAttribute:Y,externalFileAttribute:j,diskNumberStart:r};let $,ee=0,te=0;const{writable:ne}=t;if(e){e.chunkSize=(e=>i.max(e.chunkSize,64))(c),await Tn(ne,h);const t=e.readable,n=t.size=e.size,r={options:{codecType:ut,level:F,password:A,encryptionStrength:P,zipCrypto:y&&W,passwordVerification:y&&W&&m>>8&255,signed:!0,compressed:b,encrypted:y,useWebWorkers:L,useCompressionStream:G,transferStreams:!1},config:c,streamOptions:{signal:V,size:n,onstart:O,onprogress:B,onend:q}},a=await(async(e,t)=>{const{options:n,config:r}=t,{transferStreams:a,useWebWorkers:i,useCompressionStream:o,codecType:l,compressed:c,signed:d,encrypted:u}=n,{workerScripts:f,maxWorkers:p,terminateWorkerTimeout:h}=r;t.transferStreams=a||a===J;const w=!(c||d||u||t.transferStreams);let g;t.useWebWorkers=!w&&(i||i===J&&r.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[l]:[],n.useCompressionStream=o||o===J&&r.useCompressionStream;const m=kt.find((e=>!e.busy));if(m)Rt(m),g=new ht(m,e,t,y);else if(kt.length<p){const n={indexWorker:vt};vt++,kt.push(n),g=new ht(n,e,t,y)}else g=await new _((n=>zt.push({resolve:n,stream:e,workerOptions:t})));return g.run();function y(e){if(zt.length){const[{resolve:t,stream:n,workerOptions:r}]=zt.splice(0,1);t(new ht(e,n,r,y))}else e.worker?(Rt(e),s.isFinite(h)&&h>=0&&(e.terminateTimeout=setTimeout((()=>{kt=kt.filter((t=>t!=e)),e.terminate()}),h))):kt=kt.filter((t=>t!=e))}})({readable:t,writable:ne},r);ne.size+=a.size,$=a.signature,te=e.size=t.size,ee=a.size}else await Tn(ne,h);const re=C?new p(32):new p;return e&&((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:s,uncompressedSize:i,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:d}=o,{dataDescriptorView:u,dataDescriptorOffset:f}=l,{zip64:p,zipCrypto:h,dataDescriptor:w}=t;if(d&&!h||n===J||(Nn(c,10,n),w&&Nn(u,f,n)),p){const e=Mn(r);Wn(e,0,1),Wn(e,2,28),Nn(c,14,X),In(e,12,a(s)),Nn(c,18,X),In(e,4,a(i)),w&&(In(u,f+4,a(s)),In(u,f+12,a(i)))}else Nn(c,14,s),Nn(c,18,i),w&&(Nn(u,f+4,s),Nn(u,f+8,i))})({signature:$,rawExtraFieldZip64:re,compressedSize:ee,uncompressedSize:te,headerInfo:u,dataDescriptorInfo:f},d),N&&await Tn(ne,R),n.assign(Q,{compressedSize:ee,lastModDate:g,rawLastModDate:m,creationDate:T,lastAccessDate:D,encrypted:y,length:Hn(h,R)+ee,compressionMethod:S,version:x,headerArray:w,signature:$,rawExtraFieldZip64:re}),Q})(o,R,E,l,e.config,c),v=!1,d.set(r,E),E.filename=r,x){await R.writable.close();let e=await R.getData();await t,await D(),z=!0,w||(e=await(async(e,t,n,{zipCrypto:r})=>{const s=await(e=>e.slice(0,26).arrayBuffer())(t),a=new g(s);return e.encrypted&&!r||Nn(a,14,e.signature),e.zip64?(Nn(a,18,X),Nn(a,22,X)):(Nn(a,18,e.compressedSize),Nn(a,22,e.uncompressedSize)),await Tn(n,new p(s)),t.slice(s.byteLength)})(E,e,y,c)),await T(y),E.diskNumberStart=u.diskNumber,A=u.diskOffset,await e.stream().pipeTo(y,{preventClose:!0,signal:m}),y.size+=e.size,z=!1}if(E.offset=e.offset-A,E.zip64)(e=>{const{rawExtraFieldZip64:t,offset:n,diskNumberStart:r}=e,s=Mn(t);In(s,20,a(n)),Nn(s,28,r)})(E);else if(E.offset>=X)throw new f(vn);return e.offset+=E.length,E}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{x&&e.bufferedWrites--,k&&k(),S&&S()}async function D(){e.writerLocked=!0;let{lockWriter:t}=e;e.lockWriter=new _((t=>S=()=>{e.writerLocked=!1,t()})),await t}async function T(e){y.localHeaderArray.length>u.availableSize&&(u.availableSize=0,await Tn(e,new p))}})(e,r,l,{headerInfo:$,dataDescriptorInfo:ee},c)}finally{e.pendingEntriesSize-=V}return n.assign(te,{name:r,comment:u,extraField:B}),new gn(te)})(c,e,r,l),d.add(m),await m}catch(t){throw c.filenames.delete(e),t}finally{d.delete(m);const e=Dn.shift();e?e():En--}}async close(e=new p,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await _.all(t.from(r));return await(async(e,n,r)=>{const{files:s,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:d}=o,u=0,h=0,w=e.offset-l,g=s.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:r,rawComment:a,rawExtraFieldExtendedTimestamp:i,rawExtraFieldNTFS:o}]of s)h+=46+Hn(e,a,t,n,i,o,r);const m=new p(h),_=Mn(m);await en(o);let y=0;for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:l,rawExtraFieldAES:d,rawExtraFieldNTFS:f,rawExtraField:h,rawComment:w,versionMadeBy:g,headerArray:b,directory:x,zip64:S,msDosCompatible:k,internalFileAttribute:z,externalFileAttribute:v,extendedTimestamp:R,lastModDate:E,diskNumberStart:D}=n;let T;if(R){T=new p(9);const e=Mn(T);Wn(e,0,21589),Wn(e,2,Hn(T)-4),Cn(e,4,1),Nn(e,5,i.floor(E.getTime()/1e3))}else T=new p;const A=Hn(l,d,T,f,h);Nn(_,u,33639248),Wn(_,u+4,g),Un(m,b,u+6),Wn(_,u+30,A),Wn(_,u+32,Hn(w)),Wn(_,u+34,S?Y:D),Wn(_,u+36,z),v?Nn(_,u+38,v):x&&k&&Cn(_,u+38,16),Nn(_,u+42,S?X:t),Un(m,a,u+46),Un(m,l,u+46+Hn(a)),Un(m,d,u+46+Hn(a,l)),Un(m,T,u+46+Hn(a,l,d)),Un(m,f,u+46+Hn(a,l,d,T)),Un(m,h,u+46+Hn(a,l,d,T,f)),Un(m,w,u+46+Hn(a)+A);const F=46+Hn(a,w)+A;if(u-y>o.availableSize&&(o.availableSize=0,await Tn(c,m.slice(y,u)),y=u),u+=F,r.onprogress)try{await r.onprogress(e+1,s.size,new gn(n))}catch(e){}}await Tn(c,y?m.slice(y):m);let b=o.diskNumber;const{availableSize:x}=o;22>x&&b++;let S=Fn(e,r,"zip64");if(!(X>w&&X>h&&Y>g&&Y>b)){if(!1===S)throw new f(vn);S=!0}const k=new p(S?98:22),z=Mn(k);u=0,S&&(Nn(z,0,101075792),In(z,4,a(44)),Wn(z,12,45),Wn(z,14,45),Nn(z,16,b),Nn(z,20,d),In(z,24,a(g)),In(z,32,a(g)),In(z,40,a(h)),In(z,48,a(w)),Nn(z,56,117853008),In(z,64,a(w)+a(h)),Nn(z,72,b+1),d=Y,g=Y,w=X,h=X,u+=76),Nn(z,u,101010256),Wn(z,u+4,b),Wn(z,u+6,d),Wn(z,u+8,g),Wn(z,u+10,g),Nn(z,u+12,h),Nn(z,u+16,w);const v=Hn(n);if(v){if(v>Y)throw new f(_n);Wn(z,u+20,v)}await Tn(c,k),v&&await Tn(c,n)})(this,e,n),Fn(this,n,"preventClose")||await o.close(),s.getData?s.getData():o}},e.configure=ae,e.getMimeType=()=>"application/octet-stream",e.initReader=tn,e.initStream=en,e.initWriter=nn,e.readUint8Array=rn,e.terminateWorkers=()=>{kt.forEach((e=>{Rt(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})}));