From 38fb90709391ff2abaa06621acf5371439b72cfe Mon Sep 17 00:00:00 2001 From: Gildas Date: Tue, 11 Jul 2023 12:24:48 +0200 Subject: [PATCH] bump version --- dist/zip-fs-full.js | 3 ++- dist/zip-fs-full.min.js | 2 +- dist/zip-fs.js | 3 ++- dist/zip-fs.min.js | 2 +- dist/zip-full.js | 3 ++- dist/zip-full.min.js | 2 +- dist/zip-no-worker-deflate.min.js | 2 +- dist/zip-no-worker.min.js | 2 +- dist/zip.js | 3 ++- dist/zip.min.js | 2 +- index.cjs | 3 ++- package-lock.json | 4 ++-- package.json | 2 +- 13 files changed, 19 insertions(+), 14 deletions(-) diff --git a/dist/zip-fs-full.js b/dist/zip-fs-full.js index 685f4a81..01c9697b 100644 --- a/dist/zip-fs-full.js +++ b/dist/zip-fs-full.js @@ -9533,6 +9533,7 @@ let uncompressedSize = 0; let signature; const { writable } = writer; + const metaDataLength = getLength(localHeaderArray, dataDescriptorArray); if (reader) { reader.chunkSize = getChunkSize(config); await writeData(writable, localHeaderArray); @@ -9602,7 +9603,7 @@ creationDate, lastAccessDate, encrypted, - length: getLength(localHeaderArray, dataDescriptorArray) + compressedSize, + length: metaDataLength + compressedSize, compressionMethod, version, headerArray, diff --git a/dist/zip-fs-full.min.js b/dist/zip-fs-full.min.js index 86acdf57..543f3e80 100644 --- a/dist/zip-fs-full.min.js +++ b/dist/zip-fs-full.min.js @@ -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:i,BigInt:s,Math:a,Date:o,Map:c,Set:l,Response:d,URL:f,Error:u,Uint8Array:p,Uint16Array:m,Uint32Array:h,DataView:w,Blob:x,Promise:g,TextEncoder:v,TextDecoder:b,document:y,crypto:_,btoa:k,TransformStream:z,ReadableStream:S,WritableStream:C,CompressionStream:D,DecompressionStream:R,navigator:A,Worker:W}="undefined"!=typeof globalThis?globalThis:this||self,F=-2;function E(e){return T(e.map((([e,n])=>new t(e).fill(n,0,e))))}function T(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?T(n):n)),[])}const q=[0,1,2,3].concat(...E([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function U(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,i=e.stat_desc.static_tree,s=e.stat_desc.elems;let o,c,l,d=-1;for(n.heap_len=0,n.heap_max=573,o=0;s>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=d=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)l=n.heap[++n.heap_len]=2>d?++d:0,r[2*l]=1,n.depth[l]=0,n.opt_len--,i&&(n.static_len-=i[2*l+1]);for(e.max_code=d,o=a.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);l=s;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),c=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=c,r[2*l]=r[2*o]+r[2*c],n.depth[l]=a.max(n.depth[o],n.depth[c])+1,r[2*o+1]=r[2*c+1]=l,n.heap[1]=l++,n.pqdownheap(r,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,r=e.stat_desc.static_tree,i=e.stat_desc.extra_bits,s=e.stat_desc.extra_base,a=e.stat_desc.max_length;let o,c,l,d,f,u,p=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)c=t.heap[o],d=n[2*n[2*c+1]+1]+1,d>a&&(d=a,p++),n[2*c+1]=d,c>e.max_code||(t.bl_count[d]++,f=0,s>c||(f=i[c-s]),u=n[2*c],t.opt_len+=u*(d+f),r&&(t.static_len+=u*(r[2*c+1]+f)));if(0!==p){do{for(d=a-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[a]--,p-=2}while(p>0);for(d=a;0!==d;d--)for(c=t.bl_count[d];0!==c;)l=t.heap[--o],l>e.max_code||(n[2*l+1]!=d&&(t.opt_len+=(d-n[2*l+1])*n[2*l],n[2*l+1]=d),c--)}})(n),((e,n,r)=>{const i=[];let s,a,o,c=0;for(s=1;15>=s;s++)i[s]=c=c+r[s-1]<<1;for(a=0;n>=a;a++)o=e[2*a+1],0!==o&&(e[2*a]=t(i[o]++,o))})(r,e.max_code,n.bl_count)}}function I(e,t,n,r,i){const s=this;s.static_tree=e,s.extra_bits=t,s.extra_base=n,s.elems=r,s.max_length=i}U._length_code=[0,1,2,3,4,5,6,7].concat(...E([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),U.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],U.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],U.d_code=e=>256>e?q[e]:q[256+(e>>>7)],U.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],U.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],U.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],U.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const L=E([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=T([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,L[t]])));const N=E([[30,5]]);function O(e,t,n,r,i){const s=this;s.good_length=e,s.max_lazy=t,s.nice_length=n,s.max_chain=r,s.func=i}I.static_dtree=T([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,N[t]]))),I.static_l_desc=new I(I.static_ltree,U.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,U.extra_dbits,0,30,15),I.static_bl_desc=new I(null,U.extra_blbits,0,19,7);const j=[new O(0,0,0,0,0),new O(4,4,8,4,1),new O(4,5,16,8,1),new O(4,6,32,32,1),new O(4,4,16,16,2),new O(8,16,32,32,2),new O(8,16,128,128,2),new O(8,32,128,256,2),new O(32,128,258,1024,2),new O(32,258,258,4096,2)],P=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],M=113,B=666,K=262;function V(e,t,n,r){const i=e[2*t],s=e[2*n];return s>i||i==s&&r[t]<=r[n]}function H(){const e=this;let t,n,r,i,s,o,c,l,d,f,u,h,w,x,g,v,b,y,_,k,z,S,C,D,R,A,W,E,T,q,L,N,O;const H=new U,Z=new U,Y=new U;let X,G,J,$,Q,ee;function te(){let t;for(t=0;286>t;t++)L[2*t]=0;for(t=0;30>t;t++)N[2*t]=0;for(t=0;19>t;t++)O[2*t]=0;L[512]=1,e.opt_len=e.static_len=0,G=J=0}function ne(e,t){let n,r=-1,i=e[1],s=0,a=7,o=4;0===i&&(a=138,o=3),e[2*(t+1)+1]=65535;for(let c=0;t>=c;c++)n=i,i=e[2*(c+1)+1],++ss?O[2*n]+=s:0!==n?(n!=r&&O[2*n]++,O[32]++):s>10?O[36]++:O[34]++,s=0,r=n,0===i?(a=138,o=3):n==i?(a=6,o=3):(a=7,o=4))}function re(t){e.pending_buf[e.pending++]=t}function ie(e){re(255&e),re(e>>>8&255)}function se(e,t){let n;const r=t;ee>16-r?(n=e,Q|=n<>>16-ee,ee+=r-16):(Q|=e<=n;n++)if(r=s,s=e[2*(n+1)+1],++a>=o||r!=s){if(c>a)do{ae(r,O)}while(0!=--a);else 0!==r?(r!=i&&(ae(r,O),a--),ae(16,O),se(a-3,2)):a>10?(ae(18,O),se(a-11,7)):(ae(17,O),se(a-3,3));a=0,i=r,0===s?(o=138,c=3):r==s?(o=6,c=3):(o=7,c=4)}}function ce(){16==ee?(ie(Q),Q=0,ee=0):8>ee||(re(255&Q),Q>>>=8,ee-=8)}function le(t,n){let r,i,s;if(e.dist_buf[G]=t,e.lc_buf[G]=255&n,G++,0===t?L[2*n]++:(J++,t--,L[2*(U._length_code[n]+256+1)]++,N[2*U.d_code(t)]++),0==(8191&G)&&W>2){for(r=8*G,i=z-b,s=0;30>s;s++)r+=N[2*s]*(5+U.extra_dbits[s]);if(r>>>=3,Jo);ae(256,t),$=t[513]}function fe(){ee>8?ie(Q):ee>0&&re(255&Q),Q=0,ee=0}function ue(t,n,r){se(0+(r?1:0),3),((t,n)=>{fe(),$=8,ie(n),ie(~n),e.pending_buf.set(l.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function pe(n){((t,n,r)=>{let i,s,a=0;W>0?(H.build_tree(e),Z.build_tree(e),a=(()=>{let t;for(ne(L,H.max_code),ne(N,Z.max_code),Y.build_tree(e),t=18;t>=3&&0===O[2*U.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),i=e.opt_len+3+7>>>3,s=e.static_len+3+7>>>3,s>i||(i=s)):i=s=n+5,n+4>i||-1==t?s==i?(se(2+(r?1:0),3),de(I.static_ltree,I.static_dtree)):(se(4+(r?1:0),3),((e,t,n)=>{let r;for(se(e-257,5),se(t-1,5),se(n-4,4),r=0;n>r;r++)se(O[2*U.bl_order[r]+1],3);oe(L,e-1),oe(N,t-1)})(H.max_code+1,Z.max_code+1,a+1),de(L,N)):ue(t,n,r),te(),r&&fe()})(0>b?-1:b,z-b,n),b=z,t.flush_pending()}function me(){let e,n,r,i;do{if(i=d-C-z,0===i&&0===z&&0===C)i=s;else if(-1==i)i--;else if(z>=s+s-K){l.set(l.subarray(s,s+s),0),S-=s,z-=s,b-=s,e=w,r=e;do{n=65535&u[--r],u[r]=s>n?0:n-s}while(0!=--e);e=s,r=e;do{n=65535&f[--r],f[r]=s>n?0:n-s}while(0!=--e);i+=s}if(0===t.avail_in)return;e=t.read_buf(l,z+C,i),C+=e,3>C||(h=255&l[z],h=(h<C&&0!==t.avail_in)}function he(e){let t,n,r=R,i=z,a=D;const o=z>s-K?z-(s-K):0;let d=q;const u=c,p=z+258;let m=l[i+a-1],h=l[i+a];T>D||(r>>=2),d>C&&(d=C);do{if(t=e,l[t+a]==h&&l[t+a-1]==m&&l[t]==l[i]&&l[++t]==l[i+1]){i+=2,t++;do{}while(l[++i]==l[++t]&&l[++i]==l[++t]&&l[++i]==l[++t]&&l[++i]==l[++t]&&l[++i]==l[++t]&&l[++i]==l[++t]&&l[++i]==l[++t]&&l[++i]==l[++t]&&p>i);if(n=258-(p-i),i=p-258,n>a){if(S=e,a=n,n>=d)break;m=l[i+a-1],h=l[i+a]}}}while((e=65535&f[e&u])>o&&0!=--r);return a>C?C:a}e.depth=[],e.bl_count=[],e.heap=[],L=[],N=[],O=[],e.pqdownheap=(t,n)=>{const r=e.heap,i=r[n];let s=n<<1;for(;s<=e.heap_len&&(s(U||(U=8),P||(P=8),B||(B=0),t.msg=null,-1==_&&(_=6),1>P||P>9||8!=U||9>S||S>15||0>_||_>9||0>B||B>2?F:(t.dstate=e,o=S,s=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=M,i=0,H.dyn_tree=L,H.stat_desc=I.static_l_desc,Z.dyn_tree=N,Z.stat_desc=I.static_d_desc,Y.dyn_tree=O,Y.stat_desc=I.static_bl_desc,Q=0,ee=0,$=8,te(),(()=>{d=2*s,u[w-1]=0;for(let e=0;w-1>e;e++)u[e]=0;A=j[W].max_lazy,T=j[W].good_length,q=j[W].nice_length,R=j[W].max_chain,z=0,b=0,C=0,y=D=2,k=0,h=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=M&&n!=B?F:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,u=null,f=null,l=null,e.dstate=null,n==M?-3:0),e.deflateParams=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?F:(j[W].func!=j[t].func&&0!==e.total_in&&(r=e.deflate(1)),W!=t&&(W=t,A=j[W].max_lazy,T=j[W].good_length,q=j[W].nice_length,R=j[W].max_chain),E=n,r)},e.deflateSetDictionary=(e,t,r)=>{let i,a=r,o=0;if(!t||42!=n)return F;if(3>a)return 0;for(a>s-K&&(a=s-K,o=r-a),l.set(t.subarray(o,o+a),0),z=a,b=a,h=255&l[0],h=(h<=i;i++)h=(h<{let p,m,x,R,T;if(d>4||0>d)return F;if(!a.next_out||!a.next_in&&0!==a.avail_in||n==B&&4!=d)return a.msg=P[4],F;if(0===a.avail_out)return a.msg=P[7],-5;var q;if(t=a,R=i,i=d,42==n&&(m=8+(o-8<<4)<<8,x=(W-1&255)>>1,x>3&&(x=3),m|=x<<6,0!==z&&(m|=32),m+=31-m%31,n=M,re((q=m)>>8&255),re(255&q)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return i=-1,0}else if(0===t.avail_in&&R>=d&&4!=d)return t.msg=P[7],-5;if(n==B&&0!==t.avail_in)return a.msg=P[7],-5;if(0!==t.avail_in||0!==C||0!=d&&n!=B){switch(T=-1,j[W].func){case 0:T=(e=>{let n,i=65535;for(i>r-5&&(i=r-5);;){if(1>=C){if(me(),0===C&&0==e)return 0;if(0===C)break}if(z+=C,C=0,n=b+i,(0===z||z>=n)&&(C=z-n,z=n,pe(!1),0===t.avail_out))return 0;if(z-b>=s-K&&(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:T=(e=>{let n,r=0;for(;;){if(K>C){if(me(),K>C&&0==e)return 0;if(0===C)break}if(3>C||(h=(h<s-K||2!=E&&(y=he(r)),3>y)n=le(0,255&l[z]),C--,z++;else if(n=le(z-S,y-3),C-=y,y>A||3>C)z+=y,y=0,h=255&l[z],h=(h<{let n,r,i=0;for(;;){if(K>C){if(me(),K>C&&0==e)return 0;if(0===C)break}if(3>C||(h=(h<D&&s-K>=(z-i&65535)&&(2!=E&&(y=he(i)),5>=y&&(1==E||3==y&&z-S>4096)&&(y=2)),3>D||y>D)if(0!==k){if(n=le(0,255&l[z-1]),n&&pe(!1),z++,C--,0===t.avail_out)return 0}else k=1,z++,C--;else{r=z+C-3,n=le(z-1-_,D-3),C-=D-1,D-=2;do{++z>r||(h=(h<1+$+10-ee&&(se(2,3),ae(256,I.static_ltree),ce()),$=7;else if(ue(0,0,!1),3==d)for(p=0;w>p;p++)u[p]=0;if(t.flush_pending(),0===t.avail_out)return i=-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 H,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):F},deflateEnd(){const e=this;if(!e.dstate)return F;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):F},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):F},read_buf(e,t,n){const r=this;let i=r.avail_in;return i>n&&(i=n),0===i?0:(r.avail_in-=i,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),t),r.next_in_index+=i,r.total_in+=i,i)},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 Y=-2,X=-3,G=-5,J=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],$=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],Q=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],ee=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],te=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ne=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],re=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ie(){let e,t,n,r,i,s;function a(e,t,a,o,c,l,d,f,u,p,m){let h,w,x,g,v,b,y,_,k,z,S,C,D,R,A;z=0,v=a;do{n[e[t+z]]++,z++,v--}while(0!==v);if(n[0]==a)return d[0]=-1,f[0]=0,0;for(_=f[0],b=1;15>=b&&0===n[b];b++);for(y=b,b>_&&(_=b),v=15;0!==v&&0===n[v];v--);for(x=v,_>v&&(_=v),f[0]=_,R=1<b;b++,R<<=1)if(0>(R-=n[b]))return X;if(0>(R-=n[v]))return X;for(n[v]+=R,s[1]=b=0,z=1,D=2;0!=--v;)s[D]=b+=n[z],D++,z++;v=0,z=0;do{0!==(b=e[t+z])&&(m[s[b]++]=v),z++}while(++v=y;y++)for(h=n[y];0!=h--;){for(;y>C+_;){if(g++,C+=_,A=x-C,A=A>_?_:A,(w=1<<(b=y-C))>h+1&&(w-=h+1,D=y,A>b))for(;++bn[++D];)w-=n[D];if(A=1<1440)return X;i[g]=S=p[0],p[0]+=A,0!==g?(s[g]=v,r[0]=b,r[1]=_,b=v>>>C-_,r[2]=S-i[g-1]-b,u.set(r,3*(i[g-1]+b))):d[0]=S}for(r[1]=y-C,a>z?m[z]m[z]?0:96,r[2]=m[z++]):(r[0]=l[m[z]-o]+16+64,r[2]=c[m[z++]-o]):r[0]=192,w=1<>>C;A>b;b+=w)u.set(r,3*(S+b));for(b=1<>>=1)v^=b;for(v^=b,k=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)r[o]=0;i.set(n.subarray(0,15),0),s.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,r,i,s,c)=>{let l;return o(19),e[0]=0,l=a(n,0,19,19,null,null,i,r,s,e,t),l==X?c.msg="oversubscribed dynamic bit lengths tree":l!=G&&0!==r[0]||(c.msg="incomplete dynamic bit lengths tree",l=X),l},this.inflate_trees_dynamic=(n,r,i,s,c,l,d,f,u)=>{let p;return o(288),e[0]=0,p=a(i,0,n,257,ee,te,l,s,f,e,t),0!=p||0===s[0]?(p==X?u.msg="oversubscribed literal/length tree":-4!=p&&(u.msg="incomplete literal/length tree",p=X),p):(o(288),p=a(i,n,r,0,ne,re,d,c,f,e,t),0!=p||0===c[0]&&n>257?(p==X?u.msg="oversubscribed distance tree":p==G?(u.msg="incomplete distance tree",p=X):-4!=p&&(u.msg="empty distance tree with lengths",p=X),p):0)}}function se(){const e=this;let t,n,r,i,s=0,a=0,o=0,c=0,l=0,d=0,f=0,u=0,p=0,m=0;function h(e,t,n,r,i,s,a,o){let c,l,d,f,u,p,m,h,w,x,g,v,b,y,_,k;m=o.next_in_index,h=o.avail_in,u=a.bitb,p=a.bitk,w=a.write,x=wp;)h--,u|=(255&o.read_byte(m++))<>=l[k+1],p-=l[k+1],0!=(16&f)){for(f&=15,b=l[k+2]+(u&J[f]),u>>=f,p-=f;15>p;)h--,u|=(255&o.read_byte(m++))<>=l[k+1],p-=l[k+1],0!=(16&f)){for(f&=15;f>p;)h--,u|=(255&o.read_byte(m++))<>=f,p-=f,x-=b,y>w){_=w-y;do{_+=a.end}while(0>_);if(f=a.end-_,b>f){if(b-=f,w-_>0&&f>w-_)do{a.win[w++]=a.win[_++]}while(0!=--f);else a.win.set(a.win.subarray(_,_+f),w),w+=f,_+=f,f=0;_=0}}else _=w-y,w-_>0&&2>w-_?(a.win[w++]=a.win[_++],a.win[w++]=a.win[_++],b-=2):(a.win.set(a.win.subarray(_,_+2),w),w+=2,_+=2,b-=2);if(w-_>0&&b>w-_)do{a.win[w++]=a.win[_++]}while(0!=--b);else a.win.set(a.win.subarray(_,_+b),w),w+=b,_+=b,b=0;break}if(0!=(64&f))return o.msg="invalid distance code",b=o.avail_in-h,b=b>p>>3?p>>3:b,h+=b,m-=b,p-=b<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,X;c+=l[k+2],c+=u&J[f],k=3*(d+c),f=l[k]}break}if(0!=(64&f))return 0!=(32&f)?(b=o.avail_in-h,b=b>p>>3?p>>3:b,h+=b,m-=b,p-=b<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,1):(o.msg="invalid literal/length code",b=o.avail_in-h,b=b>p>>3?p>>3:b,h+=b,m-=b,p-=b<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,X);if(c+=l[k+2],c+=u&J[f],k=3*(d+c),0===(f=l[k])){u>>=l[k+1],p-=l[k+1],a.win[w++]=l[k+2],x--;break}}else u>>=l[k+1],p-=l[k+1],a.win[w++]=l[k+2],x--}while(x>=258&&h>=10);return b=o.avail_in-h,b=b>p>>3?p>>3:b,h+=b,m-=b,p-=b<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,0}e.init=(e,s,a,o,c,l)=>{t=0,f=e,u=s,r=a,p=o,i=c,m=l,n=null},e.proc=(e,w,x)=>{let g,v,b,y,_,k,z,S=0,C=0,D=0;for(D=w.next_in_index,y=w.avail_in,S=e.bitb,C=e.bitk,_=e.write,k=_=258&&y>=10&&(e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,x=h(f,u,r,p,i,m,e,w),D=w.next_in_index,y=w.avail_in,S=e.bitb,C=e.bitk,_=e.write,k=_C;){if(0===y)return e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,x);x=0,y--,S|=(255&w.read_byte(D++))<>>=n[v+1],C-=n[v+1],b=n[v],0===b){c=n[v+2],t=6;break}if(0!=(16&b)){l=15&b,s=n[v+2],t=2;break}if(0==(64&b)){o=b,a=v/3+n[v+2];break}if(0!=(32&b)){t=7;break}return t=9,w.msg="invalid literal/length code",x=X,e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,x);case 2:for(g=l;g>C;){if(0===y)return e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,x);x=0,y--,S|=(255&w.read_byte(D++))<>=g,C-=g,o=u,n=i,a=m,t=3;case 3:for(g=o;g>C;){if(0===y)return e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,x);x=0,y--,S|=(255&w.read_byte(D++))<>=n[v+1],C-=n[v+1],b=n[v],0!=(16&b)){l=15&b,d=n[v+2],t=4;break}if(0==(64&b)){o=b,a=v/3+n[v+2];break}return t=9,w.msg="invalid distance code",x=X,e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,x);case 4:for(g=l;g>C;){if(0===y)return e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,x);x=0,y--,S|=(255&w.read_byte(D++))<>=g,C-=g,t=5;case 5:for(z=_-d;0>z;)z+=e.end;for(;0!==s;){if(0===k&&(_==e.end&&0!==e.read&&(_=0,k=_7&&(C-=8,y++,D--),e.write=_,x=e.inflate_flush(w,x),_=e.write,k=_{}}ie.inflate_trees_fixed=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=$,r[0]=Q,0);const ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function oe(e,t){const n=this;let r,i=0,s=0,a=0,o=0;const c=[0],l=[0],d=new se;let f=0,u=new Int32Array(4320);const m=new ie;n.bitk=0,n.bitb=0,n.win=new p(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==i&&d.free(e),i=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let r,i,s;return i=e.next_out_index,s=n.read,r=(s>n.write?n.end:n.write)-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==G&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r,s==n.end&&(s=0,n.write==n.end&&(n.write=0),r=n.write-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==G&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r),e.next_out_index=i,n.read=s,t},n.proc=(e,t)=>{let p,h,w,x,g,v,b,y;for(x=e.next_in_index,g=e.avail_in,h=n.bitb,w=n.bitk,v=n.write,b=vw;){if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);t=0,g--,h|=(255&e.read_byte(x++))<>>1){case 0:h>>>=3,w-=3,p=7&w,h>>>=p,w-=p,i=1;break;case 1:_=[],k=[],z=[[]],S=[[]],ie.inflate_trees_fixed(_,k,z,S),d.init(_[0],k[0],z[0],0,S[0],0),h>>>=3,w-=3,i=6;break;case 2:h>>>=3,w-=3,i=3;break;case 3:return h>>>=3,w-=3,i=9,e.msg="invalid block type",t=X,n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t)}break;case 1:for(;32>w;){if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);t=0,g--,h|=(255&e.read_byte(x++))<>>16&65535)!=(65535&h))return i=9,e.msg="invalid stored block lengths",t=X,n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);s=65535&h,h=w=0,i=0!==s?2:0!==f?7:0;break;case 2:if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);if(0===b&&(v==n.end&&0!==n.read&&(v=0,b=vg&&(p=g),p>b&&(p=b),n.win.set(e.read_buf(x,p),v),x+=p,g-=p,v+=p,b-=p,0!=(s-=p))break;i=0!==f?7:0;break;case 3:for(;14>w;){if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);t=0,g--,h|=(255&e.read_byte(x++))<29||(p>>5&31)>29)return i=9,e.msg="too many length or distance symbols",t=X,n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);if(p=258+(31&p)+(p>>5&31),!r||r.lengthy;y++)r[y]=0;h>>>=14,w-=14,o=0,i=4;case 4:for(;4+(a>>>10)>o;){for(;3>w;){if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);t=0,g--,h|=(255&e.read_byte(x++))<>>=3,w-=3}for(;19>o;)r[ae[o++]]=0;if(c[0]=7,p=m.inflate_trees_bits(r,c,l,u,e),0!=p)return(t=p)==X&&(r=null,i=9),n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);o=0,i=5;case 5:for(;p=a,258+(31&p)+(p>>5&31)>o;){let s,d;for(p=c[0];p>w;){if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);t=0,g--,h|=(255&e.read_byte(x++))<d)h>>>=p,w-=p,r[o++]=d;else{for(y=18==d?7:d-14,s=18==d?11:3;p+y>w;){if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);t=0,g--,h|=(255&e.read_byte(x++))<>>=p,w-=p,s+=h&J[y],h>>>=y,w-=y,y=o,p=a,y+s>258+(31&p)+(p>>5&31)||16==d&&1>y)return r=null,i=9,e.msg="invalid bit length repeat",t=X,n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);d=16==d?r[y-1]:0;do{r[y++]=d}while(0!=--s);o=y}}if(l[0]=-1,C=[],D=[],R=[],A=[],C[0]=9,D[0]=6,p=a,p=m.inflate_trees_dynamic(257+(31&p),1+(p>>5&31),r,C,D,R,A,u,e),0!=p)return p==X&&(r=null,i=9),t=p,n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);d.init(C[0],D[0],u,R[0],u,A[0]),i=6;case 6:if(n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),x=e.next_in_index,g=e.avail_in,h=n.bitb,w=n.bitk,v=n.write,b=v{n.reset(e,null),n.win=null,u=null},n.set_dictionary=(e,t,r)=>{n.win.set(e.subarray(t,t+r),0),n.read=n.write=r},n.sync_point=()=>1==i?1:0}const ce=13,le=[0,0,255,255];function de(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):Y}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,r)=>(n.msg=null,e.blocks=null,8>r||r>15?(e.inflateEnd(n),Y):(e.wbits=r,n.istate.blocks=new oe(n,1<{let n,r;if(!e||!e.istate||!e.next_in)return Y;const i=e.istate;for(t=4==t?G:0,n=G;;)switch(i.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(i.method=e.read_byte(e.next_in_index++)))){i.mode=ce,e.msg="unknown compression method",i.marker=5;break}if(8+(i.method>>4)>i.wbits){i.mode=ce,e.msg="invalid win size",i.marker=5;break}i.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,r=255&e.read_byte(e.next_in_index++),((i.method<<8)+r)%31!=0){i.mode=ce,e.msg="incorrect header check",i.marker=5;break}if(0==(32&r)){i.mode=7;break}i.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,i.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,i.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,i.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,i.need+=255&e.read_byte(e.next_in_index++),i.mode=6,2);case 6:return i.mode=ce,e.msg="need dictionary",i.marker=0,Y;case 7:if(n=i.blocks.proc(e,n),n==X){i.mode=ce,i.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,i.blocks.reset(e,i.was),i.mode=12;case 12:return e.avail_in=0,1;case ce:return X;default:return Y}},e.inflateSetDictionary=(e,t,n)=>{let r=0,i=n;if(!e||!e.istate||6!=e.istate.mode)return Y;const s=e.istate;return i<1<{let n,r,i,s,a;if(!e||!e.istate)return Y;const o=e.istate;if(o.mode!=ce&&(o.mode=ce,o.marker=0),0===(n=e.avail_in))return G;for(r=e.next_in_index,i=o.marker;0!==n&&4>i;)e.read_byte(r)==le[i]?i++:i=0!==e.read_byte(r)?0:4-i,r++,n--;return e.total_in+=r-e.next_in_index,e.next_in_index=r,e.avail_in=n,o.marker=i,4!=i?X:(s=e.total_in,a=e.total_out,t(e),e.total_in=s,e.total_out=a,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():Y}function fe(){}fe.prototype={inflateInit(e){const t=this;return t.istate=new de,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):Y},inflateEnd(){const e=this;if(!e.istate)return Y;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):Y},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):Y},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const ue=4294967295,pe=65535,me=67324752,he=134695760,we=33639248,xe=101075792,ge=117853008,ve=21589,be=2048,ye="/",_e=new o(2107,11,31),ke=new o(1980,0,1),ze=void 0,Se="undefined",Ce="function";class De{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 Re=2;try{typeof A!=Se&&A.hardwareConcurrency&&(Re=A.hardwareConcurrency)}catch(e){}const Ae={chunkSize:524288,maxWorkers:Re,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:ze,CompressionStreamNative:typeof D!=Se&&D,DecompressionStreamNative:typeof R!=Se&&R},We=n.assign({},Ae);function Fe(){return We}function Ee(e){return a.max(e.chunkSize,64)}function Te(e){const{baseURL:n,chunkSize:r,maxWorkers:i,terminateWorkerTimeout:s,useCompressionStream:a,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:d,DecompressionStream:f,workerScripts:p}=e;if(qe("baseURL",n),qe("chunkSize",r),qe("maxWorkers",i),qe("terminateWorkerTimeout",s),qe("useCompressionStream",a),qe("useWebWorkers",o),c&&(We.CompressionStream=new De(c)),l&&(We.DecompressionStream=new De(l)),qe("CompressionStream",d),qe("DecompressionStream",f),p!==ze){const{deflate:e,inflate:n}=p;if((e||n)&&(We.workerScripts||(We.workerScripts={})),e){if(!t.isArray(e))throw new u("workerScripts.deflate must be an array");We.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new u("workerScripts.inflate must be an array");We.workerScripts.inflate=n}}}function qe(e,t){t!==ze&&(We[e]=t)}const Ue={application:{"andrew-inset":"ez",annodex:"anx","atom+xml":"atom","atomcat+xml":"atomcat","atomserv+xml":"atomsrv",bbolin:"lin",cap:["cap","pcap"],"cu-seeme":"cu","davmount+xml":"davmount",dsptype:"tsp",ecmascript:["es","ecma"],futuresplash:"spl",hta:"hta","java-archive":"jar","java-serialized-object":"ser","java-vm":"class",javascript:"js",m3g:"m3g","mac-binhex40":"hqx",mathematica:["nb","ma","mb"],msaccess:"mdb",msword:["doc","dot"],mxf:"mxf",oda:"oda",ogg:"ogx",pdf:"pdf","pgp-keys":"key","pgp-signature":["asc","sig"],"pics-rules":"prf",postscript:["ps","ai","eps","epsi","epsf","eps2","eps3"],rar:"rar","rdf+xml":"rdf","rss+xml":"rss",rtf:"rtf",smil:["smi","smil"],"xhtml+xml":["xhtml","xht"],xml:["xml","xsl","xsd"],"xspf+xml":"xspf",zip:"zip","vnd.android.package-archive":"apk","vnd.cinderella":"cdy","vnd.google-earth.kml+xml":"kml","vnd.google-earth.kmz":"kmz","vnd.mozilla.xul+xml":"xul","vnd.ms-excel":["xls","xlb","xlt","xlm","xla","xlc","xlw"],"vnd.ms-pki.seccat":"cat","vnd.ms-pki.stl":"stl","vnd.ms-powerpoint":["ppt","pps","pot"],"vnd.oasis.opendocument.chart":"odc","vnd.oasis.opendocument.database":"odb","vnd.oasis.opendocument.formula":"odf","vnd.oasis.opendocument.graphics":"odg","vnd.oasis.opendocument.graphics-template":"otg","vnd.oasis.opendocument.image":"odi","vnd.oasis.opendocument.presentation":"odp","vnd.oasis.opendocument.presentation-template":"otp","vnd.oasis.opendocument.spreadsheet":"ods","vnd.oasis.opendocument.spreadsheet-template":"ots","vnd.oasis.opendocument.text":"odt","vnd.oasis.opendocument.text-master":"odm","vnd.oasis.opendocument.text-template":"ott","vnd.oasis.opendocument.text-web":"oth","vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","vnd.openxmlformats-officedocument.spreadsheetml.template":"xltx","vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","vnd.openxmlformats-officedocument.presentationml.slideshow":"ppsx","vnd.openxmlformats-officedocument.presentationml.template":"potx","vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","vnd.openxmlformats-officedocument.wordprocessingml.template":"dotx","vnd.smaf":"mmf","vnd.stardivision.calc":"sdc","vnd.stardivision.chart":"sds","vnd.stardivision.draw":"sda","vnd.stardivision.impress":"sdd","vnd.stardivision.math":["sdf","smf"],"vnd.stardivision.writer":["sdw","vor"],"vnd.stardivision.writer-global":"sgl","vnd.sun.xml.calc":"sxc","vnd.sun.xml.calc.template":"stc","vnd.sun.xml.draw":"sxd","vnd.sun.xml.draw.template":"std","vnd.sun.xml.impress":"sxi","vnd.sun.xml.impress.template":"sti","vnd.sun.xml.math":"sxm","vnd.sun.xml.writer":"sxw","vnd.sun.xml.writer.global":"sxg","vnd.sun.xml.writer.template":"stw","vnd.symbian.install":["sis","sisx"],"vnd.visio":["vsd","vst","vss","vsw"],"vnd.wap.wbxml":"wbxml","vnd.wap.wmlc":"wmlc","vnd.wap.wmlscriptc":"wmlsc","vnd.wordperfect":"wpd","vnd.wordperfect5.1":"wp5","x-123":"wk","x-7z-compressed":"7z","x-abiword":"abw","x-apple-diskimage":"dmg","x-bcpio":"bcpio","x-bittorrent":"torrent","x-cbr":["cbr","cba","cbt","cb7"],"x-cbz":"cbz","x-cdf":["cdf","cda"],"x-cdlink":"vcd","x-chess-pgn":"pgn","x-cpio":"cpio","x-csh":"csh","x-debian-package":["deb","udeb"],"x-director":["dcr","dir","dxr","cst","cct","cxt","w3d","fgd","swa"],"x-dms":"dms","x-doom":"wad","x-dvi":"dvi","x-httpd-eruby":"rhtml","x-font":"pcf.Z","x-freemind":"mm","x-gnumeric":"gnumeric","x-go-sgf":"sgf","x-graphing-calculator":"gcf","x-gtar":["gtar","taz"],"x-hdf":"hdf","x-httpd-php":["phtml","pht","php"],"x-httpd-php-source":"phps","x-httpd-php3":"php3","x-httpd-php3-preprocessed":"php3p","x-httpd-php4":"php4","x-httpd-php5":"php5","x-ica":"ica","x-info":"info","x-internet-signup":["ins","isp"],"x-iphone":"iii","x-iso9660-image":"iso","x-java-jnlp-file":"jnlp","x-jmol":"jmz","x-killustrator":"kil","x-koan":["skp","skd","skt","skm"],"x-kpresenter":["kpr","kpt"],"x-kword":["kwd","kwt"],"x-latex":"latex","x-lha":"lha","x-lyx":"lyx","x-lzh":"lzh","x-lzx":"lzx","x-maker":["frm","maker","frame","fm","fb","book","fbdoc"],"x-ms-wmd":"wmd","x-ms-wmz":"wmz","x-msdos-program":["com","exe","bat","dll"],"x-msi":"msi","x-netcdf":["nc","cdf"],"x-ns-proxy-autoconfig":["pac","dat"],"x-nwc":"nwc","x-object":"o","x-oz-application":"oza","x-pkcs7-certreqresp":"p7r","x-python-code":["pyc","pyo"],"x-qgis":["qgs","shp","shx"],"x-quicktimeplayer":"qtl","x-redhat-package-manager":"rpm","x-ruby":"rb","x-sh":"sh","x-shar":"shar","x-shockwave-flash":["swf","swfl"],"x-silverlight":"scr","x-stuffit":"sit","x-sv4cpio":"sv4cpio","x-sv4crc":"sv4crc","x-tar":"tar","x-tcl":"tcl","x-tex-gf":"gf","x-tex-pk":"pk","x-texinfo":["texinfo","texi"],"x-trash":["~","%","bak","old","sik"],"x-troff":["t","tr","roff"],"x-troff-man":"man","x-troff-me":"me","x-troff-ms":"ms","x-ustar":"ustar","x-wais-source":"src","x-wingz":"wz","x-x509-ca-cert":["crt","der","cer"],"x-xcf":"xcf","x-xfig":"fig","x-xpinstall":"xpi",applixware:"aw","atomsvc+xml":"atomsvc","ccxml+xml":"ccxml","cdmi-capability":"cdmia","cdmi-container":"cdmic","cdmi-domain":"cdmid","cdmi-object":"cdmio","cdmi-queue":"cdmiq","docbook+xml":"dbk","dssc+der":"dssc","dssc+xml":"xdssc","emma+xml":"emma","epub+zip":"epub",exi:"exi","font-tdpfr":"pfr","gml+xml":"gml","gpx+xml":"gpx",gxf:"gxf",hyperstudio:"stk","inkml+xml":["ink","inkml"],ipfix:"ipfix",json:"json","jsonml+json":"jsonml","lost+xml":"lostxml","mads+xml":"mads",marc:"mrc","marcxml+xml":"mrcx","mathml+xml":"mathml",mbox:"mbox","mediaservercontrol+xml":"mscml","metalink+xml":"metalink","metalink4+xml":"meta4","mets+xml":"mets","mods+xml":"mods",mp21:["m21","mp21"],mp4:"mp4s","oebps-package+xml":"opf","omdoc+xml":"omdoc",onenote:["onetoc","onetoc2","onetmp","onepkg"],oxps:"oxps","patch-ops-error+xml":"xer","pgp-encrypted":"pgp",pkcs10:"p10","pkcs7-mime":["p7m","p7c"],"pkcs7-signature":"p7s",pkcs8:"p8","pkix-attr-cert":"ac","pkix-crl":"crl","pkix-pkipath":"pkipath",pkixcmp:"pki","pls+xml":"pls","prs.cww":"cww","pskc+xml":"pskcxml","reginfo+xml":"rif","relax-ng-compact-syntax":"rnc","resource-lists+xml":"rl","resource-lists-diff+xml":"rld","rls-services+xml":"rs","rpki-ghostbusters":"gbr","rpki-manifest":"mft","rpki-roa":"roa","rsd+xml":"rsd","sbml+xml":"sbml","scvp-cv-request":"scq","scvp-cv-response":"scs","scvp-vp-request":"spq","scvp-vp-response":"spp",sdp:"sdp","set-payment-initiation":"setpay","set-registration-initiation":"setreg","shf+xml":"shf","sparql-query":"rq","sparql-results+xml":"srx",srgs:"gram","srgs+xml":"grxml","sru+xml":"sru","ssdl+xml":"ssdl","ssml+xml":"ssml","tei+xml":["tei","teicorpus"],"thraud+xml":"tfi","timestamped-data":"tsd","vnd.3gpp.pic-bw-large":"plb","vnd.3gpp.pic-bw-small":"psb","vnd.3gpp.pic-bw-var":"pvb","vnd.3gpp2.tcap":"tcap","vnd.3m.post-it-notes":"pwn","vnd.accpac.simply.aso":"aso","vnd.accpac.simply.imp":"imp","vnd.acucobol":"acu","vnd.acucorp":["atc","acutc"],"vnd.adobe.air-application-installer-package+zip":"air","vnd.adobe.formscentral.fcdt":"fcdt","vnd.adobe.fxp":["fxp","fxpl"],"vnd.adobe.xdp+xml":"xdp","vnd.adobe.xfdf":"xfdf","vnd.ahead.space":"ahead","vnd.airzip.filesecure.azf":"azf","vnd.airzip.filesecure.azs":"azs","vnd.amazon.ebook":"azw","vnd.americandynamics.acc":"acc","vnd.amiga.ami":"ami","vnd.anser-web-certificate-issue-initiation":"cii","vnd.anser-web-funds-transfer-initiation":"fti","vnd.antix.game-component":"atx","vnd.apple.installer+xml":"mpkg","vnd.apple.mpegurl":"m3u8","vnd.aristanetworks.swi":"swi","vnd.astraea-software.iota":"iota","vnd.audiograph":"aep","vnd.blueice.multipass":"mpm","vnd.bmi":"bmi","vnd.businessobjects":"rep","vnd.chemdraw+xml":"cdxml","vnd.chipnuts.karaoke-mmd":"mmd","vnd.claymore":"cla","vnd.cloanto.rp9":"rp9","vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"vnd.cluetrust.cartomobile-config":"c11amc","vnd.cluetrust.cartomobile-config-pkg":"c11amz","vnd.commonspace":"csp","vnd.contact.cmsg":"cdbcmsg","vnd.cosmocaller":"cmc","vnd.crick.clicker":"clkx","vnd.crick.clicker.keyboard":"clkk","vnd.crick.clicker.palette":"clkp","vnd.crick.clicker.template":"clkt","vnd.crick.clicker.wordbank":"clkw","vnd.criticaltools.wbs+xml":"wbs","vnd.ctc-posml":"pml","vnd.cups-ppd":"ppd","vnd.curl.car":"car","vnd.curl.pcurl":"pcurl","vnd.dart":"dart","vnd.data-vision.rdz":"rdz","vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"vnd.dece.ttml+xml":["uvt","uvvt"],"vnd.dece.unspecified":["uvx","uvvx"],"vnd.dece.zip":["uvz","uvvz"],"vnd.denovo.fcselayout-link":"fe_launch","vnd.dna":"dna","vnd.dolby.mlp":"mlp","vnd.dpgraph":"dpg","vnd.dreamfactory":"dfac","vnd.ds-keypoint":"kpxx","vnd.dvb.ait":"ait","vnd.dvb.service":"svc","vnd.dynageo":"geo","vnd.ecowin.chart":"mag","vnd.enliven":"nml","vnd.epson.esf":"esf","vnd.epson.msf":"msf","vnd.epson.quickanime":"qam","vnd.epson.salt":"slt","vnd.epson.ssf":"ssf","vnd.eszigno3+xml":["es3","et3"],"vnd.ezpix-album":"ez2","vnd.ezpix-package":"ez3","vnd.fdf":"fdf","vnd.fdsn.mseed":"mseed","vnd.fdsn.seed":["seed","dataless"],"vnd.flographit":"gph","vnd.fluxtime.clip":"ftc","vnd.framemaker":["fm","frame","maker","book"],"vnd.frogans.fnc":"fnc","vnd.frogans.ltf":"ltf","vnd.fsc.weblaunch":"fsc","vnd.fujitsu.oasys":"oas","vnd.fujitsu.oasys2":"oa2","vnd.fujitsu.oasys3":"oa3","vnd.fujitsu.oasysgp":"fg5","vnd.fujitsu.oasysprs":"bh2","vnd.fujixerox.ddd":"ddd","vnd.fujixerox.docuworks":"xdw","vnd.fujixerox.docuworks.binder":"xbd","vnd.fuzzysheet":"fzs","vnd.genomatix.tuxedo":"txd","vnd.geogebra.file":"ggb","vnd.geogebra.tool":"ggt","vnd.geometry-explorer":["gex","gre"],"vnd.geonext":"gxt","vnd.geoplan":"g2w","vnd.geospace":"g3w","vnd.gmx":"gmx","vnd.grafeq":["gqf","gqs"],"vnd.groove-account":"gac","vnd.groove-help":"ghf","vnd.groove-identity-message":"gim","vnd.groove-injector":"grv","vnd.groove-tool-message":"gtm","vnd.groove-tool-template":"tpl","vnd.groove-vcard":"vcg","vnd.hal+xml":"hal","vnd.handheld-entertainment+xml":"zmm","vnd.hbci":"hbci","vnd.hhe.lesson-player":"les","vnd.hp-hpgl":"hpgl","vnd.hp-hpid":"hpid","vnd.hp-hps":"hps","vnd.hp-jlyt":"jlt","vnd.hp-pcl":"pcl","vnd.hp-pclxl":"pclxl","vnd.hydrostatix.sof-data":"sfd-hdstx","vnd.ibm.minipay":"mpy","vnd.ibm.modcap":["afp","listafp","list3820"],"vnd.ibm.rights-management":"irm","vnd.ibm.secure-container":"sc","vnd.iccprofile":["icc","icm"],"vnd.igloader":"igl","vnd.immervision-ivp":"ivp","vnd.immervision-ivu":"ivu","vnd.insors.igm":"igm","vnd.intercon.formnet":["xpw","xpx"],"vnd.intergeo":"i2g","vnd.intu.qbo":"qbo","vnd.intu.qfx":"qfx","vnd.ipunplugged.rcprofile":"rcprofile","vnd.irepository.package+xml":"irp","vnd.is-xpr":"xpr","vnd.isac.fcs":"fcs","vnd.jam":"jam","vnd.jcp.javame.midlet-rms":"rms","vnd.jisp":"jisp","vnd.joost.joda-archive":"joda","vnd.kahootz":["ktz","ktr"],"vnd.kde.karbon":"karbon","vnd.kde.kchart":"chrt","vnd.kde.kformula":"kfo","vnd.kde.kivio":"flw","vnd.kde.kontour":"kon","vnd.kde.kpresenter":["kpr","kpt"],"vnd.kde.kspread":"ksp","vnd.kde.kword":["kwd","kwt"],"vnd.kenameaapp":"htke","vnd.kidspiration":"kia","vnd.kinar":["kne","knp"],"vnd.koan":["skp","skd","skt","skm"],"vnd.kodak-descriptor":"sse","vnd.las.las+xml":"lasxml","vnd.llamagraphics.life-balance.desktop":"lbd","vnd.llamagraphics.life-balance.exchange+xml":"lbe","vnd.lotus-1-2-3":"123","vnd.lotus-approach":"apr","vnd.lotus-freelance":"pre","vnd.lotus-notes":"nsf","vnd.lotus-organizer":"org","vnd.lotus-screencam":"scm","vnd.lotus-wordpro":"lwp","vnd.macports.portpkg":"portpkg","vnd.mcd":"mcd","vnd.medcalcdata":"mc1","vnd.mediastation.cdkey":"cdkey","vnd.mfer":"mwf","vnd.mfmp":"mfm","vnd.micrografx.flo":"flo","vnd.micrografx.igx":"igx","vnd.mif":"mif","vnd.mobius.daf":"daf","vnd.mobius.dis":"dis","vnd.mobius.mbk":"mbk","vnd.mobius.mqy":"mqy","vnd.mobius.msl":"msl","vnd.mobius.plc":"plc","vnd.mobius.txf":"txf","vnd.mophun.application":"mpn","vnd.mophun.certificate":"mpc","vnd.ms-artgalry":"cil","vnd.ms-cab-compressed":"cab","vnd.ms-excel.addin.macroenabled.12":"xlam","vnd.ms-excel.sheet.binary.macroenabled.12":"xlsb","vnd.ms-excel.sheet.macroenabled.12":"xlsm","vnd.ms-excel.template.macroenabled.12":"xltm","vnd.ms-fontobject":"eot","vnd.ms-htmlhelp":"chm","vnd.ms-ims":"ims","vnd.ms-lrm":"lrm","vnd.ms-officetheme":"thmx","vnd.ms-powerpoint.addin.macroenabled.12":"ppam","vnd.ms-powerpoint.presentation.macroenabled.12":"pptm","vnd.ms-powerpoint.slide.macroenabled.12":"sldm","vnd.ms-powerpoint.slideshow.macroenabled.12":"ppsm","vnd.ms-powerpoint.template.macroenabled.12":"potm","vnd.ms-project":["mpp","mpt"],"vnd.ms-word.document.macroenabled.12":"docm","vnd.ms-word.template.macroenabled.12":"dotm","vnd.ms-works":["wps","wks","wcm","wdb"],"vnd.ms-wpl":"wpl","vnd.ms-xpsdocument":"xps","vnd.mseq":"mseq","vnd.musician":"mus","vnd.muvee.style":"msty","vnd.mynfc":"taglet","vnd.neurolanguage.nlu":"nlu","vnd.nitf":["ntf","nitf"],"vnd.noblenet-directory":"nnd","vnd.noblenet-sealer":"nns","vnd.noblenet-web":"nnw","vnd.nokia.n-gage.data":"ngdat","vnd.nokia.n-gage.symbian.install":"n-gage","vnd.nokia.radio-preset":"rpst","vnd.nokia.radio-presets":"rpss","vnd.novadigm.edm":"edm","vnd.novadigm.edx":"edx","vnd.novadigm.ext":"ext","vnd.oasis.opendocument.chart-template":"otc","vnd.oasis.opendocument.formula-template":"odft","vnd.oasis.opendocument.image-template":"oti","vnd.olpc-sugar":"xo","vnd.oma.dd2+xml":"dd2","vnd.openofficeorg.extension":"oxt","vnd.openxmlformats-officedocument.presentationml.slide":"sldx","vnd.osgeo.mapguide.package":"mgp","vnd.osgi.dp":"dp","vnd.osgi.subsystem":"esa","vnd.palm":["pdb","pqa","oprc"],"vnd.pawaafile":"paw","vnd.pg.format":"str","vnd.pg.osasli":"ei6","vnd.picsel":"efif","vnd.pmi.widget":"wg","vnd.pocketlearn":"plf","vnd.powerbuilder6":"pbd","vnd.previewsystems.box":"box","vnd.proteus.magazine":"mgz","vnd.publishare-delta-tree":"qps","vnd.pvi.ptid1":"ptid","vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"vnd.realvnc.bed":"bed","vnd.recordare.musicxml":"mxl","vnd.recordare.musicxml+xml":"musicxml","vnd.rig.cryptonote":"cryptonote","vnd.rn-realmedia":"rm","vnd.rn-realmedia-vbr":"rmvb","vnd.route66.link66+xml":"link66","vnd.sailingtracker.track":"st","vnd.seemail":"see","vnd.sema":"sema","vnd.semd":"semd","vnd.semf":"semf","vnd.shana.informed.formdata":"ifm","vnd.shana.informed.formtemplate":"itp","vnd.shana.informed.interchange":"iif","vnd.shana.informed.package":"ipk","vnd.simtech-mindmapper":["twd","twds"],"vnd.smart.teacher":"teacher","vnd.solent.sdkm+xml":["sdkm","sdkd"],"vnd.spotfire.dxp":"dxp","vnd.spotfire.sfs":"sfs","vnd.stepmania.package":"smzip","vnd.stepmania.stepchart":"sm","vnd.sus-calendar":["sus","susp"],"vnd.svd":"svd","vnd.syncml+xml":"xsm","vnd.syncml.dm+wbxml":"bdm","vnd.syncml.dm+xml":"xdm","vnd.tao.intent-module-archive":"tao","vnd.tcpdump.pcap":["pcap","cap","dmp"],"vnd.tmobile-livetv":"tmo","vnd.trid.tpt":"tpt","vnd.triscape.mxs":"mxs","vnd.trueapp":"tra","vnd.ufdl":["ufd","ufdl"],"vnd.uiq.theme":"utz","vnd.umajin":"umj","vnd.unity":"unityweb","vnd.uoml+xml":"uoml","vnd.vcx":"vcx","vnd.visionary":"vis","vnd.vsf":"vsf","vnd.webturbo":"wtb","vnd.wolfram.player":"nbp","vnd.wqd":"wqd","vnd.wt.stf":"stf","vnd.xara":"xar","vnd.xfdl":"xfdl","vnd.yamaha.hv-dic":"hvd","vnd.yamaha.hv-script":"hvs","vnd.yamaha.hv-voice":"hvp","vnd.yamaha.openscoreformat":"osf","vnd.yamaha.openscoreformat.osfpvg+xml":"osfpvg","vnd.yamaha.smaf-audio":"saf","vnd.yamaha.smaf-phrase":"spf","vnd.yellowriver-custom-menu":"cmp","vnd.zul":["zir","zirz"],"vnd.zzazz.deck+xml":"zaz","voicexml+xml":"vxml",widget:"wgt",winhlp:"hlp","wsdl+xml":"wsdl","wspolicy+xml":"wspolicy","x-ace-compressed":"ace","x-authorware-bin":["aab","x32","u32","vox"],"x-authorware-map":"aam","x-authorware-seg":"aas","x-blorb":["blb","blorb"],"x-bzip":"bz","x-bzip2":["bz2","boz"],"x-cfs-compressed":"cfs","x-chat":"chat","x-conference":"nsc","x-dgc-compressed":"dgc","x-dtbncx+xml":"ncx","x-dtbook+xml":"dtb","x-dtbresource+xml":"res","x-eva":"eva","x-font-bdf":"bdf","x-font-ghostscript":"gsf","x-font-linux-psf":"psf","x-font-otf":"otf","x-font-pcf":"pcf","x-font-snf":"snf","x-font-ttf":["ttf","ttc"],"x-font-type1":["pfa","pfb","pfm","afm"],"x-font-woff":"woff","x-freearc":"arc","x-gca-compressed":"gca","x-glulx":"ulx","x-gramps-xml":"gramps","x-install-instructions":"install","x-lzh-compressed":["lzh","lha"],"x-mie":"mie","x-mobipocket-ebook":["prc","mobi"],"x-ms-application":"application","x-ms-shortcut":"lnk","x-ms-xbap":"xbap","x-msbinder":"obd","x-mscardfile":"crd","x-msclip":"clp","x-msdownload":["exe","dll","com","bat","msi"],"x-msmediaview":["mvb","m13","m14"],"x-msmetafile":["wmf","wmz","emf","emz"],"x-msmoney":"mny","x-mspublisher":"pub","x-msschedule":"scd","x-msterminal":"trm","x-mswrite":"wri","x-nzb":"nzb","x-pkcs12":["p12","pfx"],"x-pkcs7-certificates":["p7b","spc"],"x-research-info-systems":"ris","x-silverlight-app":"xap","x-sql":"sql","x-stuffitx":"sitx","x-subrip":"srt","x-t3vm-image":"t3","x-tads":"gam","x-tex":"tex","x-tex-tfm":"tfm","x-tgif":"obj","x-xliff+xml":"xlf","x-xz":"xz","x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"xaml+xml":"xaml","xcap-diff+xml":"xdf","xenc+xml":"xenc","xml-dtd":"dtd","xop+xml":"xop","xproc+xml":"xpl","xslt+xml":"xslt","xv+xml":["mxml","xhvml","xvml","xvm"],yang:"yang","yin+xml":"yin",envoy:"evy",fractals:"fif","internet-property-stream":"acx",olescript:"axs","vnd.ms-outlook":"msg","vnd.ms-pkicertstore":"sst","x-compress":"z","x-compressed":"tgz","x-gzip":"gz","x-perfmon":["pma","pmc","pml","pmr","pmw"],"x-pkcs7-mime":["p7c","p7m"],"ynd.ms-pkipko":"pko"},audio:{amr:"amr","amr-wb":"awb",annodex:"axa",basic:["au","snd"],flac:"flac",midi:["mid","midi","kar","rmi"],mpeg:["mpga","mpega","mp2","mp3","m4a","mp2a","m2a","m3a"],mpegurl:"m3u",ogg:["oga","ogg","spx"],"prs.sid":"sid","x-aiff":["aif","aiff","aifc"],"x-gsm":"gsm","x-ms-wma":"wma","x-ms-wax":"wax","x-pn-realaudio":"ram","x-realaudio":"ra","x-sd2":"sd2","x-wav":"wav",adpcm:"adp",mp4:"mp4a",s3m:"s3m",silk:"sil","vnd.dece.audio":["uva","uvva"],"vnd.digital-winds":"eol","vnd.dra":"dra","vnd.dts":"dts","vnd.dts.hd":"dtshd","vnd.lucent.voice":"lvp","vnd.ms-playready.media.pya":"pya","vnd.nuera.ecelp4800":"ecelp4800","vnd.nuera.ecelp7470":"ecelp7470","vnd.nuera.ecelp9600":"ecelp9600","vnd.rip":"rip",webm:"weba","x-aac":"aac","x-caf":"caf","x-matroska":"mka","x-pn-realaudio-plugin":"rmp",xm:"xm",mid:["mid","rmi"]},chemical:{"x-alchemy":"alc","x-cache":["cac","cache"],"x-cache-csf":"csf","x-cactvs-binary":["cbin","cascii","ctab"],"x-cdx":"cdx","x-chem3d":"c3d","x-cif":"cif","x-cmdf":"cmdf","x-cml":"cml","x-compass":"cpa","x-crossfire":"bsd","x-csml":["csml","csm"],"x-ctx":"ctx","x-cxf":["cxf","cef"],"x-embl-dl-nucleotide":["emb","embl"],"x-gamess-input":["inp","gam","gamin"],"x-gaussian-checkpoint":["fch","fchk"],"x-gaussian-cube":"cub","x-gaussian-input":["gau","gjc","gjf"],"x-gaussian-log":"gal","x-gcg8-sequence":"gcg","x-genbank":"gen","x-hin":"hin","x-isostar":["istr","ist"],"x-jcamp-dx":["jdx","dx"],"x-kinemage":"kin","x-macmolecule":"mcm","x-macromodel-input":["mmd","mmod"],"x-mdl-molfile":"mol","x-mdl-rdfile":"rd","x-mdl-rxnfile":"rxn","x-mdl-sdfile":["sd","sdf"],"x-mdl-tgf":"tgf","x-mmcif":"mcif","x-mol2":"mol2","x-molconn-Z":"b","x-mopac-graph":"gpt","x-mopac-input":["mop","mopcrt","mpc","zmt"],"x-mopac-out":"moo","x-ncbi-asn1":"asn","x-ncbi-asn1-ascii":["prt","ent"],"x-ncbi-asn1-binary":["val","aso"],"x-pdb":["pdb","ent"],"x-rosdal":"ros","x-swissprot":"sw","x-vamas-iso14976":"vms","x-vmd":"vmd","x-xtel":"xtel","x-xyz":"xyz"},image:{gif:"gif",ief:"ief",jpeg:["jpeg","jpg","jpe"],pcx:"pcx",png:"png","svg+xml":["svg","svgz"],tiff:["tiff","tif"],"vnd.djvu":["djvu","djv"],"vnd.wap.wbmp":"wbmp","x-canon-cr2":"cr2","x-canon-crw":"crw","x-cmu-raster":"ras","x-coreldraw":"cdr","x-coreldrawpattern":"pat","x-coreldrawtemplate":"cdt","x-corelphotopaint":"cpt","x-epson-erf":"erf","x-icon":"ico","x-jg":"art","x-jng":"jng","x-nikon-nef":"nef","x-olympus-orf":"orf","x-photoshop":"psd","x-portable-anymap":"pnm","x-portable-bitmap":"pbm","x-portable-graymap":"pgm","x-portable-pixmap":"ppm","x-rgb":"rgb","x-xbitmap":"xbm","x-xpixmap":"xpm","x-xwindowdump":"xwd",bmp:"bmp",cgm:"cgm",g3fax:"g3",ktx:"ktx","prs.btif":"btif",sgi:"sgi","vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"vnd.dwg":"dwg","vnd.dxf":"dxf","vnd.fastbidsheet":"fbs","vnd.fpx":"fpx","vnd.fst":"fst","vnd.fujixerox.edmics-mmr":"mmr","vnd.fujixerox.edmics-rlc":"rlc","vnd.ms-modi":"mdi","vnd.ms-photo":"wdp","vnd.net-fpx":"npx","vnd.xiff":"xif",webp:"webp","x-3ds":"3ds","x-cmx":"cmx","x-freehand":["fh","fhc","fh4","fh5","fh7"],"x-pict":["pic","pct"],"x-tga":"tga","cis-cod":"cod",pipeg:"jfif"},message:{rfc822:["eml","mime","mht","mhtml","nws"]},model:{iges:["igs","iges"],mesh:["msh","mesh","silo"],vrml:["wrl","vrml"],"x3d+vrml":["x3dv","x3dvz"],"x3d+xml":["x3d","x3dz"],"x3d+binary":["x3db","x3dbz"],"vnd.collada+xml":"dae","vnd.dwf":"dwf","vnd.gdl":"gdl","vnd.gtw":"gtw","vnd.mts":"mts","vnd.vtu":"vtu"},text:{"cache-manifest":["manifest","appcache"],calendar:["ics","icz","ifb"],css:"css",csv:"csv",h323:"323",html:["html","htm","shtml","stm"],iuls:"uls",mathml:"mml",plain:["txt","text","brf","conf","def","list","log","in","bas"],richtext:"rtx",scriptlet:["sct","wsc"],texmacs:["tm","ts"],"tab-separated-values":"tsv","vnd.sun.j2me.app-descriptor":"jad","vnd.wap.wml":"wml","vnd.wap.wmlscript":"wmls","x-bibtex":"bib","x-boo":"boo","x-c++hdr":["h++","hpp","hxx","hh"],"x-c++src":["c++","cpp","cxx","cc"],"x-component":"htc","x-dsrc":"d","x-diff":["diff","patch"],"x-haskell":"hs","x-java":"java","x-literate-haskell":"lhs","x-moc":"moc","x-pascal":["p","pas"],"x-pcs-gcd":"gcd","x-perl":["pl","pm"],"x-python":"py","x-scala":"scala","x-setext":"etx","x-tcl":["tcl","tk"],"x-tex":["tex","ltx","sty","cls"],"x-vcalendar":"vcs","x-vcard":"vcf",n3:"n3","prs.lines.tag":"dsc",sgml:["sgml","sgm"],troff:["t","tr","roff","man","me","ms"],turtle:"ttl","uri-list":["uri","uris","urls"],vcard:"vcard","vnd.curl":"curl","vnd.curl.dcurl":"dcurl","vnd.curl.scurl":"scurl","vnd.curl.mcurl":"mcurl","vnd.dvb.subtitle":"sub","vnd.fly":"fly","vnd.fmi.flexstor":"flx","vnd.graphviz":"gv","vnd.in3d.3dml":"3dml","vnd.in3d.spot":"spot","x-asm":["s","asm"],"x-c":["c","cc","cxx","cpp","h","hh","dic"],"x-fortran":["f","for","f77","f90"],"x-opml":"opml","x-nfo":"nfo","x-sfv":"sfv","x-uuencode":"uu",webviewhtml:"htt"},video:{avif:".avif","3gpp":"3gp",annodex:"axv",dl:"dl",dv:["dif","dv"],fli:"fli",gl:"gl",mpeg:["mpeg","mpg","mpe","m1v","m2v","mp2","mpa","mpv2"],mp4:["mp4","mp4v","mpg4"],quicktime:["qt","mov"],ogg:"ogv","vnd.mpegurl":["mxu","m4u"],"x-flv":"flv","x-la-asf":["lsf","lsx"],"x-mng":"mng","x-ms-asf":["asf","asx","asr"],"x-ms-wm":"wm","x-ms-wmv":"wmv","x-ms-wmx":"wmx","x-ms-wvx":"wvx","x-msvideo":"avi","x-sgi-movie":"movie","x-matroska":["mpv","mkv","mk3d","mks"],"3gpp2":"3g2",h261:"h261",h263:"h263",h264:"h264",jpeg:"jpgv",jpm:["jpm","jpgm"],mj2:["mj2","mjp2"],"vnd.dece.hd":["uvh","uvvh"],"vnd.dece.mobile":["uvm","uvvm"],"vnd.dece.pd":["uvp","uvvp"],"vnd.dece.sd":["uvs","uvvs"],"vnd.dece.video":["uvv","uvvv"],"vnd.dvb.file":"dvb","vnd.fvt":"fvt","vnd.ms-playready.media.pyv":"pyv","vnd.uvvu.mp4":["uvu","uvvu"],"vnd.vivo":"viv",webm:"webm","x-f4v":"f4v","x-m4v":"m4v","x-ms-vob":"vob","x-smv":"smv"},"x-conference":{"x-cooltalk":"ice"},"x-world":{"x-vrml":["vrm","vrml","wrl","flr","wrz","xaf","xof"]}},Ie=(()=>{const e={};for(const t in Ue)if(Ue.hasOwnProperty(t))for(const n in Ue[t])if(Ue[t].hasOwnProperty(n)){const r=Ue[t][n];if("string"==typeof r)e[r]=t+"/"+n;else for(let i=0;ie;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;Le[e]=t}class Ne{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^Le[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Oe extends z{constructor(){let e;const t=new Ne;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new p(4);new w(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function je(e){if(void 0===v){const t=new p((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=Pe.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=>a.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 i=0;i>>t),n=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=Pe.getPartial(i);return r.push(Pe.partial(t+s&31,t+s>32?n:r.pop(),1)),r}},Me={bytes:{fromBits(e){const t=Pe.bitLength(e)/8,n=new p(t);let r;for(let i=0;t>i;i++)0==(3&i)&&(r=e[i/4]),n[i]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new u("Cannot hash more than 2^53 - 1 bits");const s=new h(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=Pe.concat(t,[Pe.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return 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){return t<>>32-e}_block(e){const n=this,r=n._h,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let s=r[0],o=r[1],c=r[2],l=r[3],d=r[4];for(let e=0;79>=e;e++){16>e||(i[e]=n._S(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n._S(5,s)+n._f(e,o,c,l)+d+i[e]+n._key[a.floor(e/20)]|0;d=l,l=c,c=n._S(30,o),o=s,s=t}r[0]=r[0]+s|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+d|0}},Ke={getRandomValues(e){const t=new h(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)*(a.random()>.5?1:-1))};for(let r,i=0;inew Ve.hmacSha1(Me.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new u("invalid params to pbkdf2");const i=1+(r>>5)<<2;let s,a,o,c,l;const d=new ArrayBuffer(i),f=new w(d);let p=0;const m=Pe;for(t=Me.bytes.toBits(t),l=1;(i||1)>p;l++){for(s=a=e.encrypt(m.concat(t,[l])),o=1;n>o;o++)for(a=e.encrypt(a),c=0;cp&&oi&&(e=(new n).update(e).finalize());for(let t=0;i>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 u("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},He=void 0!==_&&"function"==typeof _.getRandomValues,Ze="Invalid password",Ye="Invalid signature",Xe="zipjs-abort-check-password";function Ge(e){return He?_.getRandomValues(e):Ke.getRandomValues(e)}const Je=16,$e={name:"PBKDF2"},Qe=n.assign({hash:{name:"HMAC"}},$e),et=n.assign({iterations:1e3,hash:{name:"SHA-1"}},$e),tt=["deriveBits"],nt=[8,12,16],rt=[16,24,32],it=10,st=[0,0,0,0],at="undefined",ot="function",ct=typeof _!=at,lt=ct&&_.subtle,dt=ct&&typeof lt!=at,ft=Me.bytes,ut=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],i=e.length;let s,a,o,c=1;if(4!==i&&6!==i&&8!==i)throw new u("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],s=i;4*i+28>s;s++){let e=a[s-1];(s%i==0||8===i&&s%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],s%i==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[s]=a[s-i]^e}for(let e=0;s;e++,s--){const t=a[3&e?s:s-4];o[e]=4>=s||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],i=[],s=[];let a,o,c,l;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let d=a=0;!n[d];d^=o||1,a=s[a]||1){let s=a^a<<1^a<<2^a<<3^a<<4;s=s>>8^255&s^99,n[d]=s,r[s]=d,l=i[c=i[o=i[d]]];let f=16843009*l^65537*c^257*o^16843008*d,u=257*i[s]^16843008*s;for(let n=0;4>n;n++)e[n][d]=u=u<<24^u>>>8,t[n][s]=f=f<<24^f>>>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 u("invalid aes block size");const n=this._key[t],r=n.length/4-2,i=[0,0,0,0],s=this._tables[t],a=s[0],o=s[1],c=s[2],l=s[3],d=s[4];let f,p,m,h=e[0]^n[0],w=e[t?3:1]^n[1],x=e[2]^n[2],g=e[t?1:3]^n[3],v=4;for(let e=0;r>e;e++)f=a[h>>>24]^o[w>>16&255]^c[x>>8&255]^l[255&g]^n[v],p=a[w>>>24]^o[x>>16&255]^c[g>>8&255]^l[255&h]^n[v+1],m=a[x>>>24]^o[g>>16&255]^c[h>>8&255]^l[255&w]^n[v+2],g=a[g>>>24]^o[h>>16&255]^c[w>>8&255]^l[255&x]^n[v+3],v+=4,h=f,w=p,x=m;for(let e=0;4>e;e++)i[t?3&-e:e]=d[h>>>24]<<24^d[w>>16&255]<<16^d[x>>8&255]<<8^d[255&g]^n[v++],f=h,h=w,w=x,x=g,g=f;return i}},pt=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 i=Pe.bitLength(t);for(let i=0;r>i;i+=4){this.incCounter(n);const r=e.encrypt(n);t[i]^=r[0],t[i+1]^=r[1],t[i+2]^=r[2],t[i+3]^=r[3]}return Pe.clamp(t,i)}},mt=Ve.hmacSha1;let ht=ct&&dt&&typeof lt.importKey==ot,wt=ct&&dt&&typeof lt.deriveBits==ot;class xt extends z{constructor({password:e,signed:t,encryptionStrength:r,checkPasswordOnly:i}){super({start(){n.assign(this,{ready:new g((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:o}=n;r?(await(async(e,t,n,r)=>{const i=await bt(e,t,n,_t(r,0,nt[t])),s=_t(r,nt[t]);if(i[0]!=s[0]||i[1]!=s[1])throw new u(Ze)})(n,s,r,_t(e,0,nt[s]+2)),e=_t(e,nt[s]+2),i?t.error(new u(Xe)):a()):await o;const c=new p(e.length-it-(e.length-it)%Je);t.enqueue(vt(n,e,c,0,it,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:i,ready:s}=this;await s;const a=_t(i,0,i.length-it),o=_t(i,i.length-it);let c=new p;if(a.length){const e=zt(ft,a);r.update(e);const t=n.update(e);c=kt(ft,t)}if(t){const e=_t(kt(ft,r.digest()),0,it);for(let t=0;it>t;t++)if(e[t]!=o[t])throw new u(Ye)}e.enqueue(c)}})}}class gt extends z{constructor({password:e,encryptionStrength:t}){let r;super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new p})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:s,ready:a}=n;let o=new p;r?(o=await(async(e,t,n)=>{const r=Ge(new p(nt[t]));return yt(r,await bt(e,t,n,r))})(n,i,r),s()):await a;const c=new p(o.length+e.length-e.length%Je);c.set(o,0),t.enqueue(vt(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:i,ready:s}=this;await s;let a=new p;if(i.length){const e=t.update(zt(ft,i));n.update(e),a=kt(ft,e)}r.signature=kt(ft,n.digest()).slice(0,it),e.enqueue(yt(a,r.signature))}}),r=this}}function vt(e,t,n,r,i,s){const{ctr:a,hmac:o,pending:c}=e,l=t.length-i;let d;for(c.length&&(t=yt(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new p(t)).set(n,0)}return e})(n,l-l%Je)),d=0;l-Je>=d;d+=Je){const e=zt(ft,_t(t,d,d+Je));s&&o.update(e);const i=a.update(e);s||o.update(i),n.set(kt(ft,i),d+r)}return e.pending=_t(t,d),n}async function bt(e,r,i,s){e.password=null;const a=je(i),o=await(async(e,t,n,r,i)=>{if(!ht)return Ve.importKey(t);try{return await lt.importKey("raw",t,n,!1,i)}catch(e){return ht=!1,Ve.importKey(t)}})(0,a,Qe,0,tt),c=await(async(e,t,n)=>{if(!wt)return Ve.pbkdf2(t,e.salt,et.iterations,n);try{return await lt.deriveBits(e,t,n)}catch(r){return wt=!1,Ve.pbkdf2(t,e.salt,et.iterations,n)}})(n.assign({salt:s},et),o,8*(2*rt[r]+2)),l=new p(c),d=zt(ft,_t(l,0,rt[r])),f=zt(ft,_t(l,rt[r],2*rt[r])),u=_t(l,2*rt[r]);return n.assign(e,{keys:{key:d,authentication:f,passwordVerification:u},ctr:new pt(new ut(d),t.from(st)),hmac:new mt(f)}),u}function yt(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 _t(e,t,n){return e.subarray(t,n)}function kt(e,t){return e.fromBits(t)}function zt(e,t){return e.toBits(t)}class St extends z{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),At(this,e)},transform(e,t){const n=this;if(n.password){const t=Dt(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new u(Ze);e=e.subarray(12)}r?t.error(new u(Xe)):t.enqueue(Dt(n,e))}})}}class Ct extends z{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),At(this,e)},transform(e,t){const n=this;let r,i;if(n.password){n.password=null;const t=Ge(new p(12));t[11]=n.passwordVerification,r=new p(e.length+t.length),r.set(Rt(n,t),0),i=12}else r=new p(e.length),i=0;r.set(Rt(n,e),i),t.enqueue(r)}})}}function Dt(e,t){const n=new p(t.length);for(let r=0;r>>24]),i=~e.crcKey2.get(),e.keys=[n,r,i]}function Ft(e){const t=2|e.keys[2];return Et(a.imul(t,1^t)>>>8)}function Et(e){return 255&e}function Tt(e){return 4294967295&e}const qt="deflate-raw";class Ut extends z{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:i,encrypted:s,useCompressionStream:a,zipCrypto:o,signed:c,level:l}=e,d=this;let f,u,p=Lt(super.readable);s&&!o||!c||(f=new Oe,p=jt(p,f)),i&&(p=Ot(p,a,{level:l,chunkSize:t},r,n)),s&&(o?p=jt(p,new Ct(e)):(u=new gt(e),p=jt(p,u))),Nt(d,p,(async()=>{let e;s&&!o&&(e=u.signature),s&&!o||!c||(e=new w(f.value.buffer).getUint32(0)),d.signature=e}))}}class It extends z{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:s,signed:a,signature:o,compressed:c,useCompressionStream:l}=e;let d,f,p=Lt(super.readable);s&&(i?p=jt(p,new St(e)):(f=new xt(e),p=jt(p,f))),c&&(p=Ot(p,l,{chunkSize:t},r,n)),s&&!i||!a||(d=new Oe,p=jt(p,d)),Nt(this,p,(async()=>{if((!s||i)&&a){const e=new w(d.value.buffer);if(o!=e.getUint32(0,!1))throw new u(Ye)}}))}}function Lt(e){return jt(e,new z({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function Nt(e,t,r){t=jt(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Ot(e,t,n,r,i){try{e=jt(e,new(t&&r?r:i)(qt,n))}catch(r){if(!t)throw r;e=jt(e,new i(qt,n))}return e}function jt(e,t){return e.pipeThrough(t)}const Pt="data",Mt="deflate",Bt="inflate";class Kt extends z{constructor(e,t){super({});const r=this,{codecType:i}=e;let s;i.startsWith(Mt)?s=Ut:i.startsWith(Bt)&&(s=It);let a=0;const o=new s(e,t),c=super.readable,l=new z({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;n.assign(r,{signature:e,size:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(o).pipeThrough(l)})}}const Vt=typeof W!=Se;class Ht{constructor(e,{readable:t,writable:r},{options:i,config:s,streamOptions:a,useWebWorkers:o,transferStreams:c,scripts:l},d){const{signal:f}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Zt(t,a,s),{signal:f}),writable:r,options:n.assign({},i),scripts:l,transferStreams:c,terminate(){const{worker:t,busy:n}=e;t&&!n&&(t.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,d(e)}}),(o&&Vt?Gt:Xt)(e,s)}}class Zt extends z{constructor(e,{onstart:t,onprogress:n,size:r,onend:i},{chunkSize:s}){let a=0;super({start(){t&&Yt(t,r)},async transform(e,t){a+=e.length,n&&await Yt(n,a,r),t.enqueue(e)},flush(){e.size=a,i&&Yt(i,a)}},{highWaterMark:1,size:()=>s})}}async function Yt(e,...t){try{await e(...t)}catch(e){}}function Xt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},i)=>{const s=new Kt(e,i);try{await t.pipeThrough(s).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:e,size:i}=s;return{signature:e,size:i}}finally{r()}})(e,t)}}function Gt(e,{baseURL:t,chunkSize:r}){return e.interface||n.assign(e,{worker:Qt(e.scripts[0],t,e),interface:{run:()=>(async(e,t)=>{let r,i;const s=new g(((e,t)=>{r=e,i=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:i,result:s});const{readable:a,options:o,scripts:c}=e,{writable:l,closed:d}=(e=>{const t=e.getWriter();let n;const r=new g((e=>n=e));return{writable:new C({async write(e){await t.ready,await t.write(e)},close(){t.releaseLock(),n()},abort:e=>t.abort(e)}),closed:r}})(e.writable);en({type:"start",scripts:c.slice(1),options:o,config:t,readable:a,writable:l},e)||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const f=await s;try{await l.getWriter().close()}catch(e){}return await d,f})(e,{chunkSize:r})}}),e.interface}let Jt=!0,$t=!0;function Qt(e,t,r){const i={type:"module"};let s,a;typeof e==Ce&&(e=e());try{s=new f(e,t)}catch(t){s=e}if(Jt)try{a=new W(s)}catch(e){Jt=!1,a=new W(s,i)}else a=new W(s,i);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:i,messageId:s,result:a,error:o}=e,{reader:c,writer:l,resolveResult:d,rejectResult:f,onTaskFinished:m}=t;try{if(o){const{message:e,stack:t,code:r,name:i}=o,s=new u(e);n.assign(s,{stack:t,code:r,name:i}),h(s)}else{if("pull"==r){const{value:e,done:n}=await c.read();en({type:Pt,value:e,done:n,messageId:s},t)}r==Pt&&(await l.ready,await l.write(new p(i)),en({type:"ack",messageId:s},t)),"close"==r&&h(null,a)}}catch(o){h(o)}function h(e,t){e?f(e):d(t),l&&l.releaseLock(),m()}})(e,r))),a}function en(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:i}){try{let{value:n,readable:r,writable:s}=e;const a=[];if(n&&(e.value=n.buffer,a.push(e.value)),i&&$t?(r&&a.push(r),s&&a.push(s)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch(n){$t=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let tn=[];const nn=[];let rn=0;async function sn(e,t){const{options:n,config:r}=t,{transferStreams:s,useWebWorkers:a,useCompressionStream:o,codecType:c,compressed:l,signed:d,encrypted:f}=n,{workerScripts:u,maxWorkers:p,terminateWorkerTimeout:m}=r;t.transferStreams=s||s===ze;const h=!(l||d||f||t.transferStreams);let w;t.useWebWorkers=!h&&(a||a===ze&&r.useWebWorkers),t.scripts=t.useWebWorkers&&u?u[c]:[],n.useCompressionStream=o||o===ze&&r.useCompressionStream;const x=tn.find((e=>!e.busy));if(x)an(x),w=new Ht(x,e,t,v);else if(tn.lengthnn.push({resolve:n,stream:e,workerOptions:t})));return w.run();function v(e){if(nn.length){const[{resolve:t,stream:n,workerOptions:r}]=nn.splice(0,1);t(new Ht(e,n,r,v))}else e.worker?(an(e),i.isFinite(m)&&m>=0&&(e.terminateTimeout=setTimeout((()=>{tn=tn.filter((t=>t!=e)),e.terminate()}),m))):tn=tn.filter((t=>t!=e))}}function an(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}function on(e,t,r){return class{constructor(i){const s=this;var a,o;a=i,o="level",("function"==typeof n.hasOwn?n.hasOwn(a,o):a.hasOwnProperty(o))&&void 0===i.level&&delete i.level,s.codec=new e(n.assign({},t,i)),r(s.codec,(e=>{if(s.pendingData){const t=s.pendingData;s.pendingData=new p(t.length+e.length);const{pendingData:n}=s;n.set(t,0),n.set(e,t.length)}else s.pendingData=new p(e)}))}append(e){return this.codec.push(e),i(this)}flush(){return this.codec.push(new p,!0),i(this)}};function i(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new p}}const cn="HTTP error ",ln="HTTP Range not supported",dn="Writer iterator completed too soon",fn="GET",un="bytes",pn=65536,mn="writable";class hn{constructor(){this.size=0}init(){this.initialized=!0}}class wn extends hn{get readable(){const e=this,{chunkSize:t=pn}=e,n=new S({start(){this.chunkOffset=0},async pull(r){const{offset:i=0,size:s,diskNumberStart:o}=n,{chunkOffset:c}=this;r.enqueue(await Vn(e,i+c,a.min(t,s-c),o)),c+t>s?r.close():this.chunkOffset+=t}});return n}}class xn extends hn{constructor(){super();const e=this,t=new C({write:t=>e.writeUint8Array(t)});n.defineProperty(e,mn,{get:()=>t})}writeUint8Array(){}}class gn extends wn{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:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,i=new p(t),s=4*a.floor(e/3),o=atob(r.substring(s+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(s/4);for(let e=c;c+t>e;e++)i[e-c]=o.charCodeAt(e);return i}}class vn extends xn{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,i=t.pending;const s=t.pending.length;for(t.pending="",n=0;n<3*a.floor((s+e.length)/3)-s;n++)i+=r.fromCharCode(e[n]);for(;n2?t.data+=k(i):t.pending=i}getData(){return this.data+k(this.pending)}}class bn extends wn{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,i=e||rt&&(s=s.slice(e,r)),new p(s)}}class yn extends hn{constructor(e){super();const t=new z,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,mn,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:r}).blob()}getData(){return this.blob}}class _n extends bn{constructor(e){super(new x([e],{type:"text/plain"}))}}class kn extends yn{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 g(((i,s)=>{n.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>s(t.error)}),t.readAsText(r,e)}))}}}class zn extends wn{constructor(e,t){super(),Cn(this,e,t)}async init(){await Dn(this,Un,Fn),super.init()}readUint8Array(e,t){return Rn(this,e,t,Un,Fn)}}class Sn extends wn{constructor(e,t){super(),Cn(this,e,t)}async init(){await Dn(this,In,En),super.init()}readUint8Array(e,t){return Rn(this,e,t,In,En)}}function Cn(e,t,r){const{preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a})}async function Dn(e,t,n){const{url:r,useRangeHeader:s,forceRangeRequests:a}=e;if((e=>{const{baseURL:t}=Fe(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n})(r)&&(s||a)){const{headers:r}=await t(fn,e,An(e));if(!a&&r.get("Accept-Ranges")!=un)throw new u(ln);{let s;const a=r.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(s=i(t))}}s===ze?await qn(e,t,n):e.size=s}}else await qn(e,t,n)}async function Rn(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,options:o}=e;if(s||a){const i=await r(fn,e,An(e,t,n));if(206!=i.status)throw new u(ln);return new p(await i.arrayBuffer())}{const{data:r}=e;return r||await i(e,o),new p(e.data.subarray(t,t+n))}}function An(e,t=0,r=1){return n.assign({},Wn(e),{Range:un+"="+t+"-"+(t+r-1)})}function Wn({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Fn(e){await Tn(e,Un)}async function En(e){await Tn(e,In)}async function Tn(e,t){const n=await t(fn,e,Wn(e));e.data=new p(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function qn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Wn(e))).headers.get("Content-Length");r?e.size=i(r):await n(e,e.options)}}async function Un(e,{options:t,url:r},i){const s=await fetch(r,n.assign({},t,{method:e,headers:i}));if(400>s.status)return s;throw 416==s.status?new u(ln):new u(cn+(s.statusText||s.status))}function In(e,{url:t},r){return new g(((i,s)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),i({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else s(416==a.status?new u(ln):new u(cn+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>s(e.detail?e.detail.error:new u("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class Ln extends wn{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Sn(e,t):new zn(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Nn extends wn{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class On extends xn{init(e=0){n.assign(this,{offset:0,array:new p(e)}),super.init()}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}}class jn extends wn{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await g.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:i}=this;let s,o=n;-1==o&&(o=i.length-1);let c=e;for(;c>=i[o].size;)c-=i[o].size,o++;const l=i[o],d=l.size;if(c+t>d){const i=d-c;s=new p(t),s.set(await Vn(l,c,i)),s.set(await r.readUint8Array(e+i,t-i,n),i)}else s=await Vn(l,c,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),s}}class Pn extends hn{constructor(e,t=4294967295){super();const r=this;let i,s,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new C({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function Mn(e,t){e.init&&!e.initialized&&await e.init(t)}function Bn(e){return t.isArray(e)&&(e=new jn(e)),e instanceof S&&(e={readable:e}),e}function Kn(e){e.writable===ze&&typeof e.next==Ce&&(e=new Pn(e)),e instanceof C&&(e={writable:e});const{writable:t}=e;return t.size===ze&&(t.size=0),e instanceof Pn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function Vn(e,t,n,r){return e.readUint8Array(t,n,r)}const Hn=jn,Zn=Pn,Yn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Xn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const mr="File format is not recognized",hr="End of central directory not found",wr="End of Zip64 central directory not found",xr="End of Zip64 central directory locator not found",gr="Central directory header not found",vr="Local file header not found",br="Zip64 extra field not found",yr="File contains encrypted entry",_r="Encryption method not supported",kr="Compression method not supported",zr="Split zip file",Sr="utf-8",Cr="cp437",Dr=[[er,ue],[tr,ue],[nr,ue],[rr,pe]],Rr={[pe]:{getValue:Or,bytes:4},[ue]:{getValue:jr,bytes:8}};class Ar{constructor(e,t={}){n.assign(this,{reader:Bn(e),options:t,config:Fe()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:i}=t;if(await Mn(r),r.size!==ze&&r.readUint8Array||(r=new bn(await new d(r.readable).blob()),await Mn(r)),22>r.size)throw new u(mr);r.chunkSize=Ee(i);const s=await(async(e,t,n)=>{const r=new p(4);return Pr(r).setUint32(0,101010256,!0),await i(22)||await i(a.min(1048582,n));async function i(t){const i=n-t,s=await Vn(e,i,t);for(let e=s.length-22;e>=0;e--)if(s[e]==r[0]&&s[e+1]==r[1]&&s[e+2]==r[2]&&s[e+3]==r[3])return{offset:i+e,buffer:s.slice(e,e+22).buffer}}})(r,0,r.size);if(!s)throw Or(Pr(await Vn(r,0,4)))==he?new u(zr):new u(hr);const o=Pr(s);let c=Or(o,12),l=Or(o,16);const f=s.offset,m=Nr(o,20),h=f+22+m;let w=Nr(o,4);const x=r.lastDiskNumber||0;let v=Nr(o,6),b=Nr(o,8),y=0,_=0;if(l==ue||c==ue||b==pe||v==pe){const e=Pr(await Vn(r,s.offset-20,20));if(Or(e,0)!=ge)throw new u(wr);l=jr(e,8);let t=await Vn(r,l,56,-1),n=Pr(t);const i=s.offset-20-56;if(Or(n,0)!=xe&&l!=i){const e=l;l=i,y=l-e,t=await Vn(r,l,56,-1),n=Pr(t)}if(Or(n,0)!=xe)throw new u(xr);w==pe&&(w=Or(n,16)),v==pe&&(v=Or(n,20)),b==pe&&(b=jr(n,32)),c==ue&&(c=jr(n,40)),l-=c}if(x!=w)throw new u(zr);if(0>l||l>=r.size)throw new u(mr);let k=0,z=await Vn(r,l,c,v),S=Pr(z);if(c){const e=s.offset-c;if(Or(S,k)!=we&&l!=e){const t=l;l=e,y=l-t,z=await Vn(r,l,c,v),S=Pr(z)}}const C=s.offset-l-(r.lastDiskOffset||0);if(c==C||0>C||(c=C,z=await Vn(r,l,c,v),S=Pr(z)),0>l||l>=r.size)throw new u(mr);const D=qr(t,e,"filenameEncoding"),R=qr(t,e,"commentEncoding");for(let s=0;b>s;s++){const o=new Wr(r,i,t.options);if(Or(S,k)!=we)throw new u(gr);Fr(o,S,k+6);const c=!!o.bitFlag.languageEncodingFlag,l=k+46,d=l+o.filenameLength,f=d+o.extraFieldLength,p=Nr(S,k+4),m=0==(0&p),h=z.subarray(l,d),w=Nr(S,k+32),x=f+w,v=z.subarray(f,x),C=c,A=c,W=m&&16==(16&Lr(S,k+38)),F=Or(S,k+42)+y;n.assign(o,{versionMadeBy:p,msDosCompatible:m,compressedSize:0,uncompressedSize:0,commentLength:w,directory:W,offset:F,diskNumberStart:Nr(S,k+34),internalFileAttribute:Nr(S,k+36),externalFileAttribute:Or(S,k+38),rawFilename:h,filenameUTF8:C,commentUTF8:A,rawExtraField:z.subarray(d,f)});const[E,T]=await g.all([Xn(h,C?Sr:D||Cr),Xn(v,A?Sr:R||Cr)]);n.assign(o,{rawComment:v,filename:E,comment:T,directory:W||E.endsWith(ye)}),_=a.max(F,_),await Er(o,o,S,k+6);const q=new pr(o);q.getData=(e,t)=>o.getData(e,q,t),k=x;const{onprogress:U}=e;if(U)try{await U(s+1,b,new pr(o))}catch(e){}yield q}const A=qr(t,e,"extractPrependedData"),W=qr(t,e,"extractAppendedData");return A&&(t.prependedData=_>0?await Vn(r,0,_):new p),t.comment=m?await Vn(r,f+22,m):new p,W&&(t.appendedData=h>>8&255:m>>>24&255),signature:m,compressed:0!=l,encrypted:y,useWebWorkers:qr(i,r,"useWebWorkers"),useCompressionStream:qr(i,r,"useCompressionStream"),transferStreams:qr(i,r,"transferStreams"),checkPasswordOnly:R},config:d,streamOptions:{signal:D,size:z,onstart:W,onprogress:F,onend:E}};let q=0;try{({outputSize:q}=await sn({readable:S,writable:A},T))}catch(e){if(!R||e.message!=Xe)throw e}finally{const e=qr(i,r,"preventClose");A.size+=q,e||A.locked||await A.getWriter().close()}return R?void 0:e.getData?e.getData():A}}function Fr(e,t,r){const i=e.rawBitFlag=Nr(t,r+2),s=1==(1&i),a=Or(t,r+6);n.assign(e,{encrypted:s,version:Nr(t,r),bitFlag:{level:(6&i)>>1,dataDescriptor:8==(8&i),languageEncodingFlag:(i&be)==be},rawLastModDate:a,lastModDate:Ur(a),filenameLength:Nr(t,r+22),extraFieldLength:Nr(t,r+24)})}async function Er(e,t,r,i){const{rawExtraField:s}=t,a=t.extraField=new c,l=Pr(new p(s));let d=0;try{for(;d{t.zip64=!0;const n=Pr(e.data),r=Dr.filter((([e,n])=>t[e]==n));for(let i=0,s=0;i{const i=Pr(e.data),s=Lr(i,4);n.assign(e,{vendorVersion:Lr(i,0),vendorId:Lr(i,2),strength:s,originalCompressionMethod:r,compressionMethod:Nr(i,5)}),t.compressionMethod=e.compressionMethod})(x,t,f),t.extraFieldAES=x):t.compressionMethod=f;const g=a.get(10);g&&(((e,t)=>{const r=Pr(e.data);let i,s=4;try{for(;s{const n=Pr(e.data),r=Lr(n,0),i=[],s=[];1==(1&r)&&(i.push(ir),s.push(sr)),2==(2&r)&&(i.push(ar),s.push("rawLastAccessDate")),4==(4&r)&&(i.push(or),s.push("rawCreationDate"));let a=1;i.forEach(((r,i)=>{if(e.data.length>=a+4){const c=Or(n,a);t[r]=e[r]=new o(1e3*c);const l=s[i];e[l]=c}a+=4}))})(v,t),t.extraFieldExtendedTimestamp=v)}async function Tr(e,t,r,i,s){const a=Pr(e.data),o=new Ne;o.append(s[r]);const c=Pr(new p(4));c.setUint32(0,o.get(),!0);const l=Or(a,1);n.assign(e,{version:Lr(a,0),[t]:Xn(e.data.subarray(5)),valid:!s.bitFlag.languageEncodingFlag&&l==Or(c,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function qr(e,t,n){return t[n]===ze?e.options[n]:t[n]}function Ur(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Ir(e){return new o(i(e/s(1e4)-s(116444736e5)))}function Lr(e,t){return e.getUint8(t)}function Nr(e,t){return e.getUint16(t,!0)}function Or(e,t){return e.getUint32(t,!0)}function jr(e,t){return i(e.getBigUint64(t,!0))}function Pr(e){return new w(e.buffer)}const Mr="File already exists",Br="Zip file comment exceeds 64KB",Kr="File entry comment exceeds 64KB",Vr="File entry name exceeds 64KB",Hr="Version exceeds 65535",Zr="The strength must equal 1, 2, or 3",Yr="Extra field type exceeds 65535",Xr="Extra field data exceeds 64KB",Gr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Jr=new p([7,0,2,0,65,69,3,0,0]);let $r=0;const Qr=[];class ei{constructor(e,t={}){e=Kn(e),n.assign(this,{writer:e,addSplitZipSignature:e instanceof Pn,options:t,config:Fe(),files:new c,filenames:new l,offset:e.writable.size,pendingEntriesSize:0,pendingAddFileCalls:new l,bufferedWrites:0})}async add(e="",r,i={}){const c=this,{pendingAddFileCalls:l,config:d}=c;let f;$rQr.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new u(Mr);return c.filenames.add(e),f=(async(e,r,i,c)=>{r=r.trim(),c.directory&&!r.endsWith(ye)?r+=ye:c.directory=r.endsWith(ye);const l=je(r);if(di(l)>pe)throw new u(Vr);const d=c.comment||"",f=je(d);if(di(f)>pe)throw new u(Kr);const x=ri(e,c,"version",20);if(x>pe)throw new u(Hr);const v=ri(e,c,"versionMadeBy",20);if(v>pe)throw new u(Hr);const b=ri(e,c,ir,new o),y=ri(e,c,ar),_=ri(e,c,or),k=ri(e,c,dr,!0),z=ri(e,c,cr,0),S=ri(e,c,lr,0),C=ri(e,c,"password"),D=ri(e,c,"encryptionStrength",3),R=ri(e,c,"zipCrypto"),A=ri(e,c,"extendedTimestamp",!0),W=ri(e,c,"keepOrder",!0),F=ri(e,c,"level"),E=ri(e,c,"useWebWorkers"),T=ri(e,c,"bufferedWrite"),q=ri(e,c,"dataDescriptorSignature",!1),U=ri(e,c,"signal"),I=ri(e,c,"useCompressionStream");let L=ri(e,c,"dataDescriptor",!0),N=ri(e,c,fr);if(C!==ze&&D!==ze&&(1>D||D>3))throw new u(Zr);let O=new p;const{extraField:j}=c;if(j){let e=0,t=0;j.forEach((t=>e+=4+di(t))),O=new p(e),j.forEach(((e,n)=>{if(n>pe)throw new u(Yr);if(di(e)>pe)throw new u(Xr);ci(O,new m([n]),t),ci(O,new m([di(e)]),t+2),ci(O,e,t+4),t+=4+di(e)}))}let P=0,M=0,B=0;const K=!0===N;i&&(i=Bn(i),await Mn(i),i.size===ze?(L=!0,(N||N===ze)&&(N=!0,B=P=ue)):(B=i.size,P=(e=>e+5*(a.floor(e/16383)+1))(B)));const{diskOffset:V,diskNumber:H,maxSize:Z}=e.writer,Y=K||B>=ue,X=K||P>=ue,G=K||e.offset+e.pendingEntriesSize-V>=ue,J=ri(e,c,"supportZip64SplitFile",!0)&&K||H+a.ceil(e.pendingEntriesSize/Z)>=pe;if(G||Y||X||J){if(!1===N||!W)throw new u(Gr);N=!0}N=N||!1;const $=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:i,password:s,level:o,zip64:c,zipCrypto:l,dataDescriptor:d,directory:f,rawExtraField:u,encryptionStrength:m,extendedTimestamp:w}=e,x=0!==o&&!f,g=!(!s||!di(s));let v,b,y,_=e.version;if(g&&!l){v=new p(di(Jr)+2);const e=li(v);si(e,0,39169),ci(v,Jr,2),ii(e,8,m)}else v=new p;if(w){y=new p(9+(r?4:0)+(i?4:0));const e=li(y);si(e,0,ve),si(e,2,di(y)-4),ii(e,4,1+(r?2:0)+(i?4:0)),ai(e,5,a.floor(n.getTime()/1e3)),r&&ai(e,9,a.floor(r.getTime()/1e3)),i&&ai(e,13,a.floor(i.getTime()/1e3));try{b=new p(36);const e=li(b),t=ni(n);si(e,0,10),si(e,2,32),si(e,8,1),si(e,10,24),oi(e,12,t),oi(e,20,ni(r)||t),oi(e,28,ni(i)||t)}catch(e){b=new p}}else b=y=new p;let k=be;d&&(k|=8);let z=0;x&&(z=8),c&&(_=_>45?_:45),g&&(k|=1,l||(_=_>51?_:51,z=99,x&&(v[9]=8)));const S=new p(26),C=li(S);si(C,0,_),si(C,2,k),si(C,4,z);const D=new h(1),R=li(D);let A;A=ke>n?ke:n>_e?_e:n,si(R,0,(A.getHours()<<6|A.getMinutes())<<5|A.getSeconds()/2),si(R,2,(A.getFullYear()-1980<<4|A.getMonth()+1)<<5|A.getDate());const W=D[0];ai(C,6,W),si(C,22,di(t));const F=di(v,y,b,u);si(C,24,F);const E=new p(30+di(t)+F);return ai(li(E),0,me),ci(E,S,4),ci(E,t,30),ci(E,v,30+di(t)),ci(E,y,30+di(t,v)),ci(E,b,30+di(t,v,y)),ci(E,u,30+di(t,v,y,b)),{localHeaderArray:E,headerArray:S,headerView:C,lastModDate:n,rawLastModDate:W,encrypted:g,compressed:x,version:_,compressionMethod:z,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:b,rawExtraFieldAES:v}})(c=n.assign({},c,{rawFilename:l,rawComment:f,version:x,versionMadeBy:v,lastModDate:b,lastAccessDate:y,creationDate:_,rawExtraField:O,zip64:N,zip64UncompressedSize:Y,zip64CompressedSize:X,zip64Offset:G,zip64DiskNumberStart:J,password:C,level:F,useWebWorkers:E,encryptionStrength:D,extendedTimestamp:A,zipCrypto:R,bufferedWrite:T,keepOrder:W,dataDescriptor:L,dataDescriptorSignature:q,signal:U,msDosCompatible:k,internalFileAttribute:z,externalFileAttribute:S,useCompressionStream:I})),Q=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let i,s=new p,a=0;return n&&(s=new p(t?r?24:20:r?16:12),i=li(s),r&&(a=4,ai(i,0,134695760))),{dataDescriptorArray:s,dataDescriptorView:i,dataDescriptorOffset:a}})(c);let ee;M=di($.localHeaderArray,Q.dataDescriptorArray)+P,e.pendingEntriesSize+=M;try{ee=await(async(e,r,i,a,o)=>{const{files:c,writer:l}=e,{keepOrder:d,dataDescriptor:f,signal:m}=o,{headerInfo:h}=a,x=t.from(c.values()).pop();let v,b,y,_,k,z,S={};c.set(r,S);try{let t;d&&(t=x&&x.lock,S.lock=new g((e=>y=e))),o.bufferedWrite||e.writerLocked||e.bufferedWrites&&d||!f?(z=new yn,z.writable.size=0,v=!0,e.bufferedWrites++,await Mn(l)):(z=l,await C()),await Mn(z);const{writable:h}=l;let{diskOffset:R}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new p(4);ai(li(t),0,he),await ti(h,t),e.offset+=4}v||(await t,await D(h));const{diskNumber:A}=l;if(k=!0,S.diskNumberStart=A,S=await(async(e,t,{diskNumberStart:r,lock:i},a,o,c)=>{const{headerInfo:l,dataDescriptorInfo:d}=a,{localHeaderArray:f,headerArray:u,lastModDate:m,rawLastModDate:h,encrypted:w,compressed:x,version:g,compressionMethod:v,rawExtraFieldExtendedTimestamp:b,rawExtraFieldNTFS:y,rawExtraFieldAES:_}=l,{dataDescriptorArray:k}=d,{rawFilename:z,lastAccessDate:S,creationDate:C,password:D,level:R,zip64:A,zip64UncompressedSize:W,zip64CompressedSize:F,zip64Offset:E,zip64DiskNumberStart:T,zipCrypto:q,dataDescriptor:U,directory:I,versionMadeBy:L,rawComment:N,rawExtraField:O,useWebWorkers:j,onstart:P,onprogress:M,onend:B,signal:K,encryptionStrength:V,extendedTimestamp:H,msDosCompatible:Z,internalFileAttribute:Y,externalFileAttribute:X,useCompressionStream:G}=c,J={lock:i,versionMadeBy:L,zip64:A,directory:!!I,filenameUTF8:!0,rawFilename:z,commentUTF8:!0,rawComment:N,rawExtraFieldExtendedTimestamp:b,rawExtraFieldNTFS:y,rawExtraFieldAES:_,rawExtraField:O,extendedTimestamp:H,msDosCompatible:Z,internalFileAttribute:Y,externalFileAttribute:X,diskNumberStart:r};let $,Q=0,ee=0;const{writable:te}=t;if(e){e.chunkSize=Ee(o),await ti(te,f);const t=e.readable,n=t.size=e.size,r={options:{codecType:Mt,level:R,password:D,encryptionStrength:V,zipCrypto:w&&q,passwordVerification:w&&q&&h>>8&255,signed:!0,compressed:x,encrypted:w,useWebWorkers:j,useCompressionStream:G,transferStreams:!1},config:o,streamOptions:{signal:K,size:n,onstart:P,onprogress:M,onend:B}},i=await sn({readable:t,writable:te},r);te.size+=i.size,$=i.signature,ee=e.size=t.size,Q=i.size}else await ti(te,f);let ne;if(A){let e=4;W&&(e+=8),F&&(e+=8),E&&(e+=8),T&&(e+=4),ne=new p(e)}else ne=new p;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:i,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:c}=e,{headerView:l,encrypted:d}=o,{dataDescriptorView:f,dataDescriptorOffset:u}=c,{zip64:p,zip64UncompressedSize:m,zip64CompressedSize:h,zipCrypto:w,dataDescriptor:x}=t;if(d&&!w||n===ze||(ai(l,10,n),x&&ai(f,u,n)),p){const e=li(r);si(e,0,1),si(e,2,r.length-4);let t=4;m&&(ai(l,18,ue),oi(e,t,s(a)),t+=8),h&&(ai(l,14,ue),oi(e,t,s(i))),x&&(oi(f,u+4,s(i)),oi(f,u+12,s(a)))}else ai(l,14,i),ai(l,18,a),x&&(ai(f,u+4,i),ai(f,u+8,a))})({signature:$,rawExtraFieldZip64:ne,compressedSize:Q,uncompressedSize:ee,headerInfo:l,dataDescriptorInfo:d},c),U&&await ti(te,k),n.assign(J,{uncompressedSize:ee,compressedSize:Q,lastModDate:m,rawLastModDate:h,creationDate:C,lastAccessDate:S,encrypted:w,length:di(f,k)+Q,compressionMethod:v,version:g,headerArray:u,signature:$,rawExtraFieldZip64:ne,zip64UncompressedSize:W,zip64CompressedSize:F,zip64Offset:E,zip64DiskNumberStart:T}),J})(i,z,S,a,e.config,o),k=!1,c.set(r,S),S.filename=r,v){await z.writable.getWriter().close();let e=await z.getData();await t,await C(),_=!0,f||(e=await(async(e,t,n,{zipCrypto:r})=>{let i;i=await t.slice(0,26).arrayBuffer(),26!=i.byteLength&&(i=i.slice(0,26));const s=new w(i);return e.encrypted&&!r||ai(s,14,e.signature),e.zip64?(ai(s,18,ue),ai(s,22,ue)):(ai(s,18,e.compressedSize),ai(s,22,e.uncompressedSize)),await ti(n,new p(i)),t.slice(i.byteLength)})(S,e,h,o)),await D(h),S.diskNumberStart=l.diskNumber,R=l.diskOffset,await e.stream().pipeTo(h,{preventClose:!0,preventAbort:!0,signal:m}),h.size+=e.size,_=!1}if(S.offset=e.offset-R,S.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:i}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:c,zip64DiskNumberStart:l}=t,d=li(n);let f=4;a&&(f+=8),o&&(f+=8),c&&(oi(d,f,s(r)),f+=8),l&&ai(d,f,i)})(S,o);else if(S.offset>=ue)throw new u(Gr);return e.offset+=S.length,S}catch(t){if(v&&_||!v&&k){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}v?e.offset+=z.writable.size:e.offset=z.writable.size}throw c.delete(r),t}finally{v&&e.bufferedWrites--,y&&y(),b&&b()}async function C(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new g((t=>b=()=>{e.writerLocked=!1,t()})),await t}async function D(e){h.localHeaderArray.length>l.availableSize&&(l.availableSize=0,await ti(e,new p))}})(e,r,i,{headerInfo:$,dataDescriptorInfo:Q},c)}finally{e.pendingEntriesSize-=M}return n.assign(ee,{name:r,comment:d,extraField:j}),new pr(ee)})(c,e,r,i),l.add(f),await f}catch(t){throw c.filenames.delete(e),t}finally{l.delete(f);const e=Qr.shift();e?e():$r--}}async close(e=new p,n={}){const{pendingAddFileCalls:r,writer:i}=this,{writable:o}=i;for(;r.size;)await g.all(t.from(r));return await(async(e,n,r)=>{const{files:i,writer:o}=e,{diskOffset:c,writable:l}=o;let{diskNumber:d}=o,f=0,m=0,h=e.offset-c,w=i.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:r,rawComment:s,rawExtraFieldExtendedTimestamp:a,rawExtraFieldNTFS:o}]of i)m+=46+di(e,s,t,n,a,o,r);const x=new p(m),g=li(x);await Mn(o);let v=0;for(const[e,n]of t.from(i.values()).entries()){const{offset:t,rawFilename:s,rawExtraFieldZip64:c,rawExtraFieldAES:d,rawExtraFieldNTFS:u,rawExtraField:m,rawComment:h,versionMadeBy:w,headerArray:b,directory:y,zip64:_,zip64UncompressedSize:k,zip64CompressedSize:z,zip64DiskNumberStart:S,zip64Offset:C,msDosCompatible:D,internalFileAttribute:R,externalFileAttribute:A,extendedTimestamp:W,lastModDate:F,diskNumberStart:E,uncompressedSize:T,compressedSize:q}=n;let U;if(W){U=new p(9);const e=li(U);si(e,0,ve),si(e,2,di(U)-4),ii(e,4,1),ai(e,5,a.floor(F.getTime()/1e3))}else U=new p;const I=di(c,d,U,u,m);ai(g,f,we),si(g,f+4,w);const L=li(b);k||ai(L,18,T),z||ai(L,14,q),ci(x,b,f+6),si(g,f+30,I),si(g,f+32,di(h)),si(g,f+34,_&&S?pe:E),si(g,f+36,R),A?ai(g,f+38,A):y&&D&&ii(g,f+38,16),ai(g,f+42,_&&C?ue:t),ci(x,s,f+46),ci(x,c,f+46+di(s)),ci(x,d,f+46+di(s,c)),ci(x,U,f+46+di(s,c,d)),ci(x,u,f+46+di(s,c,d,U)),ci(x,m,f+46+di(s,c,d,U,u)),ci(x,h,f+46+di(s)+I);const N=46+di(s,h)+I;if(f-v>o.availableSize&&(o.availableSize=0,await ti(l,x.slice(v,f)),v=f),f+=N,r.onprogress)try{await r.onprogress(e+1,i.size,new pr(n))}catch(e){}}await ti(l,v?x.slice(v):x);let b=o.diskNumber;const{availableSize:y}=o;22>y&&b++;let _=ri(e,r,"zip64");if(!(ue>h&&ue>m&&pe>w&&pe>b)){if(!1===_)throw new u(Gr);_=!0}const k=new p(_?98:22),z=li(k);f=0,_&&(ai(z,0,xe),oi(z,4,s(44)),si(z,12,45),si(z,14,45),ai(z,16,b),ai(z,20,d),oi(z,24,s(w)),oi(z,32,s(w)),oi(z,40,s(m)),oi(z,48,s(h)),ai(z,56,ge),oi(z,64,s(h)+s(m)),ai(z,72,b+1),ri(e,r,"supportZip64SplitFile",!0)&&(b=pe,d=pe),w=pe,h=ue,m=ue,f+=76),ai(z,f,101010256),si(z,f+4,b),si(z,f+6,d),si(z,f+8,w),si(z,f+10,w),ai(z,f+12,m),ai(z,f+16,h);const S=di(n);if(S){if(S>pe)throw new u(Br);si(z,f+20,S)}await ti(l,k),S&&await ti(l,n)})(this,e,n),ri(this,n,"preventClose")||await o.getWriter().close(),i.getData?i.getData():o}}async function ti(e,t){const n=e.getWriter();await n.ready,e.size+=di(t),await n.write(t),n.releaseLock()}function ni(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function ri(e,t,n,r){const i=t[n]===ze?e.options[n]:t[n];return i===ze?r:i}function ii(e,t,n){e.setUint8(t,n)}function si(e,t,n){e.setUint16(t,n,!0)}function ai(e,t,n){e.setUint32(t,n,!0)}function oi(e,t,n){e.setBigUint64(t,n,!0)}function ci(e,t,n){e.set(t,n)}function li(e){return new w(e.buffer)}function di(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}class fi{constructor(e,t,r,i){const s=this;if(e.root&&i&&i.getChildByName(t))throw new u("Entry filename already exists");r||(r={}),n.assign(s,{fs:e,name:t,data:r.data,options:r.options,id:e.entries.length,parent:i,children:[],uncompressedSize:r.uncompressedSize||0}),e.entries.push(s),i&&s.parent.children.push(s)}moveTo(e){this.fs.move(this,e)}getFullname(){return this.getRelativeName()}getRelativeName(e=this.fs.root){let t=this.name,n=this.parent;for(;n&&n!=e;)t=(n.name?n.name+"/":"")+t,n=n.parent;return t}isDescendantOf(e){let t=this.parent;for(;t&&t.id!=e.id;)t=t.parent;return!!t}rename(e){const t=this.parent;if(t&&t.getChildByName(e))throw new u("Entry filename already exists");this.name=e}}class ui extends fi{constructor(e,t,n,r){super(e,t,n,r);const i=this;i.Reader=n.Reader,i.Writer=n.Writer,n.getData&&(i.getData=n.getData)}clone(){return new ui(this.fs,this.name,this)}async getData(e,t={}){const n=this;if(!e||e.constructor==n.Writer&&n.data)return n.data;{const r=n.reader=new n.Reader(n.data,t),i=n.data?n.data.uncompressedSize:r.size;await g.all([Mn(r),Mn(e,i)]);const s=r.readable;return s.size=n.uncompressedSize=r.size,await s.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return this.data.encrypted}async checkPassword(e,t={}){const n=this;if(!n.isPasswordProtected())return!0;t.password=e,t.checkPasswordOnly=!0;try{return await n.data.getData(null,t),!0}catch(e){if(e.message==Ze)return!1;throw e}}getText(e,t){return this.getData(new kn(e),t)}getBlob(e,t){return this.getData(new yn(e),t)}getData64URI(e,t){return this.getData(new vn(e),t)}getUint8Array(e){return this.getData(new On,e)}getWritable(e=new C,t){return this.getData({writable:e},t)}replaceBlob(e){n.assign(this,{data:e,Reader:bn,Writer:yn,reader:null})}replaceText(e){n.assign(this,{data:e,Reader:_n,Writer:kn,reader:null})}replaceData64URI(e){n.assign(this,{data:e,Reader:gn,Writer:vn,reader:null})}replaceUint8Array(e){n.assign(this,{data:e,Reader:Nn,Writer:On,reader:null})}replaceReadable(e){n.assign(this,{data:null,Reader:()=>({readable:e}),Writer:null,reader:null})}}class pi extends fi{constructor(e,t,n,r){super(e,t,n,r),this.directory=!0}clone(e){const t=this,n=new pi(t.fs,t.name);return e&&(n.children=t.children.map((t=>{const r=t.clone(e);return r.parent=n,r}))),n}addDirectory(e,t){return yi(this,e,{options:t},!0)}addText(e,t,n={}){return yi(this,e,{data:t,Reader:_n,Writer:kn,options:n,uncompressedSize:t.length})}addBlob(e,t,n={}){return yi(this,e,{data:t,Reader:bn,Writer:yn,options:n,uncompressedSize:t.size})}addData64URI(e,t,n={}){let r=t.length;for(;"="==t.charAt(r-1);)r--;const i=t.indexOf(",")+1;return yi(this,e,{data:t,Reader:gn,Writer:vn,options:n,uncompressedSize:a.floor(.75*(r-i))})}addUint8Array(e,t,n={}){return yi(this,e,{data:t,Reader:Nn,Writer:On,options:n,uncompressedSize:t.length})}addHttpContent(e,t,n={}){return yi(this,e,{data:t,Reader:class extends Ln{constructor(e){super(e,n)}},options:n})}addReadable(e,t,n={}){return yi(this,e,{Reader:()=>({readable:t}),options:n})}addFileSystemEntry(e,t={}){return gi(this,e,t)}addFileSystemHandle(e,t={}){return gi(this,e,t)}addFile(e,t={}){return t.lastModDate||(t.lastModDate=new o(e.lastModified)),yi(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}addData(e,t){return yi(this,e,t)}importBlob(e,t){return this.importZip(new bn(e),t)}importData64URI(e,t){return this.importZip(new gn(e),t)}importUint8Array(e,t){return this.importZip(new Nn(e),t)}importHttpContent(e,t){return this.importZip(new Ln(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new yn(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new vn(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new On,e)}async exportWritable(e=new C,t={}){return await this.exportZip({writable:e},t),e}async importZip(e,t={}){await Mn(e);const r=new Ar(e,t),i=[],s=await r.getEntries();for(const e of s){let r=this;try{const s=e.filename.split("/"),a=s.pop();s.forEach(((t,n)=>{const a=r;r=r.getChildByName(t),r||(r=new pi(this.fs,t,{data:n==s.length-1?e:null},a),i.push(r))})),e.directory||i.push(yi(r,a,{data:e,Reader:hi(n.assign({},t)),uncompressedSize:e.uncompressedSize}))}catch(t){try{t.cause={entry:e}}catch(e){}throw t}}return i}async exportZip(e,r){const i=this;await g.all([wi(i,r.readerOptions),Mn(e)]);const s=new ei(e,r);return await(async(e,r,i,s)=>{const a=r,o=new c;await async function e(r,c){async function l(c){const l=s.relativePath?c.getRelativeName(a):c.getFullname();let d,f,u,p,m=c.options||{};c.data instanceof pr&&({externalFileAttribute:d,versionMadeBy:f,comment:u,lastModDate:p}=c.data),await r.add(l,c.reader,n.assign({directory:c.directory},n.assign({},s,{externalFileAttribute:d,versionMadeBy:f,comment:u,lastModDate:p,onprogress:async e=>{if(s.onprogress){o.set(l,e);try{await s.onprogress(t.from(o.values()).reduce(((e,t)=>e+t)),i)}catch(e){}}}},m))),await e(r,c)}await(async()=>{if(s.bufferedWrite)await g.allSettled(c.children.map(l));else for(const e of c.children)await l(e)})()}(e,r)})(s,i,(e=>{let t=0;return e.forEach((function e(n){t+=n.uncompressedSize,n.children&&n.children.forEach(e)})),t})([i]),r),await s.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let n=0;nn.checkPassword(e,t))))).includes(!1)}}const mi={FS:class{constructor(){bi(this)}get children(){return this.root.children}remove(e){xi(e),this.entries[e.id]=null}move(e,t){if(e==this.root)throw new u("Root directory cannot be moved");if(!t.directory)throw new u("Target entry is not a directory");if(t.isDescendantOf(e))throw new u("Entry is a ancestor of target entry");if(e!=t){if(t.getChildByName(e.name))throw new u("Entry filename already exists");xi(e),e.parent=t,t.children.push(e)}}find(e){const t=e.split("/");let n=this.root;for(let e=0;n&&e{if(e.directory)await wi(e,t);else{const n=e.reader=new e.Reader(e.data,t);try{await Mn(n)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch(e){}throw t}e.uncompressedSize=n.size}})))}function xi(e){if(e.parent){const t=e.parent.children;t.forEach(((n,r)=>{n.id==e.id&&t.splice(r,1)}))}}async function gi(e,t,r){return async function e(t,i,s){try{if((i.isFile||i.isDirectory)&&(i=await vi(i)),"file"==i.kind){const e=await i.getFile();s.push(t.addData(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:n.assign({},{lastModDate:new o(e.lastModified)},r),uncompressedSize:e.size}))}else if("directory"==i.kind){const n=t.addDirectory(i.name);s.push(n);for await(const t of i.values())await e(n,t,s)}}catch(e){const t=e.message+(i?" ("+i.name+")":"");throw new u(t)}return s}(e,t,[])}async function vi(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new g(((t,n)=>e.file(t,n)))),e.isDirectory){t.kind="directory";const n=await(async e=>{const t=[];function n(e,r,i){e.readEntries((async s=>{if(s.length){for(const e of s)t.push(await vi(e));n(e,r,i)}else r(t)}),i)}return await new g(((t,r)=>n(e.createReader(),t,r))),{[Symbol.iterator](){let e=0;return{next(){const n={value:t[e],done:e===t.length};return e++,n}}}}})(e);t.values=()=>n}return t}function bi(e){e.entries=[],e.root=new pi(e)}function yi(e,t,n,r){if(e.directory)return r?new pi(e.fs,t,n,e):new ui(e.fs,t,n,e);throw new u("Parent entry is not a directory")}let _i;try{_i=void 0===y&&"undefined"==typeof location?new(require("url").URL)("file:"+__filename).href:void 0===y?location.href:y.currentScript&&y.currentScript.src||new f("zip-fs-full.min.js",y.baseURI).href}catch(e){}Te({baseURL:_i}),(e=>{const t=()=>f.createObjectURL(new x(['const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self;class k{constructor(e){return class extends p{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)}})}}}}const v=[];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;v[e]=t}class S{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^v[255&(t^e[n])];this.t=t}get(){return~this.t}}class z extends p{constructor(){let e;const t=new S;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const C={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=C.i(n);return 32===r?e.concat(t):C.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+C.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=C.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=C.i(s);return r.push(C.h(t+i&31,t+i>32?n:r.pop(),1)),r}},x={p:{m(e){const t=C.l(e)/8,n=new i(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},g(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}D(){const e=this;let t=e.C;const n=e.S;t=C.concat(t,[C.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e._/4294967296)),t.push(0|e._);t.length;)e.I(t.splice(0,16));return e.reset(),n}V(e,t,n,r){return 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}P(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.P(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.P(5,o)+n.V(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.P(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},A={getRandomValues(e){const t=new c(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)*(r.random()>.5?1:-1))};for(let s,i=0;inew I.R(x.p.g(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=C;for(t=x.p.g(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).D());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.K[0].update(r[0]),t.K[1].update(r[1]),t.U=new n(t.K[0])}reset(){const e=this;e.U=new e.M(e.K[0]),e.N=!1}update(e){this.N=!0,this.U.update(e)}digest(){const e=this,t=e.U.D(),n=new e.M(e.K[1]).update(t).D();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},D=void 0!==h&&"function"==typeof h.getRandomValues,V="Invalid password",P="Invalid signature",R="zipjs-abort-check-password";function B(e){return D?h.getRandomValues(e):A.getRandomValues(e)}const E=16,M={name:"PBKDF2"},K=t.assign({hash:{name:"HMAC"}},M),U=t.assign({iterations:1e3,hash:{name:"SHA-1"}},M),N=["deriveBits"],O=[8,12,16],T=[16,24,32],W=10,j=[0,0,0,0],H="undefined",L="function",F=typeof h!=H,q=F&&h.subtle,G=F&&typeof q!=H,J=x.p,Q=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||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.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},X=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(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}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=C.l(t);for(let s=0;r>s;s+=4){this.G(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 C.u(t,s)}},Y=I.R;let Z=F&&G&&typeof q.importKey==L,$=F&&G&&typeof q.deriveBits==L;class ee extends p{constructor({password:e,signed:n,encryptionStrength:r,checkPasswordOnly:o}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,signed:n,X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:c,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await re(e,t,n,ie(r,0,O[t])),o=ie(r,O[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(V)})(n,c,r,ie(e,0,O[c]+2)),e=ie(e,O[c]+2),o?t.error(new s(R)):f()):await a;const l=new i(e.length-W-(e.length-W)%E);t.enqueue(ne(n,e,l,0,W,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;await c;const f=ie(o,0,o.length-W),a=ie(o,o.length-W);let l=new i;if(f.length){const e=ce(J,f);r.update(e);const t=n.update(e);l=oe(J,t)}if(t){const e=ie(oe(J,r.digest()),0,W);for(let t=0;W>t;t++)if(e[t]!=a[t])throw new s(P)}e.enqueue(l)}})}}class te extends p{constructor({password:e,encryptionStrength:n}){let r;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,X:n-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=B(new i(O[t]));return se(r,await re(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%E);a.set(f,0),t.enqueue(ne(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:s,ready:o}=this;await o;let c=new i;if(s.length){const e=t.update(ce(J,s));n.update(e),c=oe(J,e)}r.signature=oe(J,n.digest()).slice(0,W),e.enqueue(se(c,r.signature))}}),r=this}}function ne(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=se(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%E)),u=0;l-E>=u;u+=E){const e=ce(J,ie(t,u,u+E));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(oe(J,s),u+r)}return e.pending=ie(t,u),n}async function re(n,r,s,o){n.password=null;const c=(e=>{if(void 0===w){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n{if(!Z)return I.importKey(t);try{return await q.importKey("raw",t,n,!1,s)}catch(e){return Z=!1,I.importKey(t)}})(0,c,K,0,N),a=await(async(e,t,n)=>{if(!$)return I.B(t,e.salt,U.iterations,n);try{return await q.deriveBits(e,t,n)}catch(r){return $=!1,I.B(t,e.salt,U.iterations,n)}})(t.assign({salt:o},U),f,8*(2*T[r]+2)),l=new i(a),u=ce(J,ie(l,0,T[r])),h=ce(J,ie(l,T[r],2*T[r])),d=ie(l,2*T[r]);return t.assign(n,{keys:{key:u,$:h,passwordVerification:d},Y:new X(new Q(u),e.from(j)),Z:new Y(h)}),d}function se(e,t){let n=e;return e.length+t.length&&(n=new i(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function ie(e,t,n){return e.subarray(t,n)}function oe(e,t){return e.m(t)}function ce(e,t){return e.g(t)}class fe extends p{constructor({password:e,passwordVerification:n,checkPasswordOnly:r}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;if(n.password){const t=le(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new s(V);e=e.subarray(12)}r?t.error(new s(R)):t.enqueue(le(n,e))}})}}class ae extends p{constructor({password:e,passwordVerification:n}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=B(new i(12));t[11]=n.passwordVerification,r=new i(e.length+t.length),r.set(ue(n,t),0),s=12}else r=new i(e.length),s=0;r.set(ue(n,e),s),t.enqueue(r)}})}}function le(e,t){const n=new i(t.length);for(let r=0;r>>24]),i=~e.te.get(),e.keys=[n,s,i]}function de(e){const t=2|e.keys[2];return pe(r.imul(t,1^t)>>>8)}function pe(e){return 255&e}function ye(e){return 4294967295&e}const me="deflate-raw";class be extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=ke(super.readable);i&&!c||!f||(w=new z,d=ze(d,w)),s&&(d=Se(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=ze(d,new ae(e)):(h=new te(e),d=ze(d,h))),ve(u,d,(async()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ge extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=ke(super.readable);o&&(i?d=ze(d,new fe(e)):(h=new ee(e),d=ze(d,h))),a&&(d=Se(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new z,d=ze(d,w)),ve(this,d,(async()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(P)}}))}}function ke(e){return ze(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ve(e,n,r){n=ze(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Se(e,t,n,r,s){try{e=ze(e,new(t&&r?r:s)(me,n))}catch(r){if(!t)throw r;e=ze(e,new s(me,n))}return e}function ze(e,t){return e.pipeThrough(t)}const Ce="data";class xe extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=be:s.startsWith("inflate")&&(i=ge);let o=0;const c=new i(e,n),f=super.readable,a=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;t.assign(r,{signature:e,size:o})}});t.defineProperty(r,"readable",{get:()=>f.pipeThrough(c).pipeThrough(a)})}}const _e=new a,Ae=new a;let Ie=0;async function De(e){try{const{options:t,scripts:r,config:s}=e;r&&r.length&&importScripts.apply(void 0,r),self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new k(self.Deflate)),self.Inflate&&(s.DecompressionStream=new k(self.Inflate));const i={highWaterMark:1,size:()=>s.chunkSize},o=e.readable||new y({async pull(e){const t=new u((e=>_e.set(Ie,e)));Ve({type:"pull",messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ae.set(Ie,t),Ve({type:Ce,value:e,messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new xe(t,s);await o.pipeThrough(f).pipeTo(c,{preventClose:!0,preventAbort:!0});try{await c.getWriter().close()}catch(e){}const{signature:a,size:l}=f;Ve({type:"close",result:{signature:a,size:l}})}catch(e){Pe(e)}}function Ve(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Pe(e){const{message:t,stack:n,code:r,name:s}=e;d({error:{message:t,stack:n,code:r,name:s}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&De(e),t==Ce){const e=_e.get(n);_e.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ae.get(n);Ae.delete(n),e()}}catch(e){Pe(e)}}));const Re=-2;function Be(t){return Ee(t.map((([t,n])=>new e(t).fill(n,0,t))))}function Ee(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?Ee(n):n)),[])}const Me=[0,1,2,3].concat(...Be([[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 Ke(){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.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Ue(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}Ke.ge=[0,1,2,3,4,5,6,7].concat(...Be([[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]])),Ke.ke=[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],Ke.ve=[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],Ke.Se=e=>256>e?Me[e]:Me[256+(e>>>7)],Ke.ze=[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],Ke.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Ke.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Ke._e=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Ne=Be([[144,8],[112,9],[24,7],[8,8]]);Ue.Ae=Ee([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,Ne[t]])));const Oe=Be([[30,5]]);function Te(e,t,n,r,s){const i=this;i.Ie=e,i.De=t,i.Ve=n,i.Pe=r,i.Re=s}Ue.Be=Ee([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,Oe[t]]))),Ue.Ee=new Ue(Ue.Ae,Ke.ze,257,286,15),Ue.Me=new Ue(Ue.Be,Ke.Ce,0,30,15),Ue.Ke=new Ue(null,Ke.xe,0,19,7);const We=[new Te(0,0,0,0,0),new Te(4,4,8,4,1),new Te(4,5,16,8,1),new Te(4,6,32,32,1),new Te(4,4,16,16,2),new Te(8,16,32,32,2),new Te(8,16,128,128,2),new Te(8,32,128,256,2),new Te(32,128,258,1024,2),new Te(32,258,258,4096,2)],je=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],He=113,Le=666,Fe=262;function qe(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function Ge(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,_,A,I,D,V,P,R,B,E,M,K;const U=new Ke,N=new Ke,O=new Ke;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)K[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?K[2*n]+=i:0!==n?(n!=r&&K[2*n]++,K[32]++):i>10?K[36]++:K[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ue[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,K)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,K),o--),Y(16,K),X(o-3,2)):o>10?(Y(18,K),X(o-11,7)):(Y(17,K),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(Ke.ge[n]+256+1)]++,M[2*Ke.Se(t)]++),0==(8191&W)&&V>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+Ke.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ue.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;V>0?(U.ne(e),N.ne(e),o=(()=>{let t;for(G(E,U.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===K[2*Ke._e[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Ue.Ae,Ue.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(K[2*Ke._e[r]+1],3);Z(E,e-1),Z(M,t-1)})(U.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-_-C,0===s&&0===C&&0===_)s=f;else if(-1==s)s--;else if(C>=f+f-Fe){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+_,s),_+=e,3>_||(p=255&u[C],p=(p<_&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=A;const o=C>f-Fe?C-(f-Fe):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>A||(r>>=2),c>_&&(c=_);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>_?_:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],K=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Re:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=He,c=0,U.re=E,U.ie=Ue.Ee,N.re=M,N.ie=Ue.Me,O.re=K,O.ie=Ue.Ke,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe,C=0,k=0,_=0,v=A=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=He&&n!=Le?Re:(e.Oe=null,e.Ne=null,e.Ue=null,d=null,h=null,u=null,e.Fe=null,n==He?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Re:(We[V].Re!=We[t].Re&&0!==e.qe&&(r=e.Ye(1)),V!=t&&(V=t,D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe),P=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Re;if(3>i)return 0;for(i>f-Fe&&(i=f-Fe,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Re;if(!r.$e||!r.et&&0!==r.We||n==Le&&4!=i)return r.Le=je[4],Re;if(0===r.tt)return r.Le=je[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(V-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=He,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=je[7],-5;if(n==Le&&0!==t.We)return r.Le=je[7],-5;if(0!==t.We||0!==_||0!=i&&n!=Le){switch(R=-1,We[V].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=_){if(ie(),0===_&&0==e)return 0;if(0===_)break}if(C+=_,_=0,n=k+r,(0===C||C>=n)&&(_=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Fe&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<f-Fe||2!=P&&(v=oe(r)),3>v)n=ee(0,255&u[C]),_--,C++;else if(n=ee(C-x,v-3),_-=v,v>D||3>_)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<A&&f-Fe>=(C-s&65535)&&(2!=P&&(v=oe(s)),5>=v&&(1==P||3==v&&C-x>4096)&&(v=2)),3>A||v>A)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,_--,0===t.tt)return 0}else z=1,C++,_--;else{r=C+_-3,n=ee(C-1-S,A-3),_-=A-1,A-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Ue.Ae),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function Je(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function Qe(e){const t=new Je,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}Je.prototype={He(e,t){const n=this;return n.Fe=new Ge,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Re},Qe(){const e=this;if(!e.Fe)return Re;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Re},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Re},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ue.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const Xe=-2,Ye=-3,Ze=-5,$e=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],et=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],tt=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],nt=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],rt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],st=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],it=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ot(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,_,A,I,D;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return Ye;if(0>(I-=n[g]))return Ye;for(n[g]+=I,i[1]=k=0,C=1,A=2;0!=--g;)i[A]=k+=n[C],A++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>_+S;){if(b++,_+=S,D=m-_,D=D>S?S:D,(y=1<<(k=v-_))>p+1&&(y-=p+1,A=v,D>k))for(;++kn[++A];)y-=n[A];if(D=1<1440)return Ye;s[b]=x=h[0],h[0]+=D,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>_-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-_,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>_;D>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<<_)-1;(g&z)!=i[b];)b--,_-=S,z=(1<<_)-1}return 0!==I&&1!=m?Ze:0}function c(o){let c;for(e||(e=[],t=[],n=new f(16),r=[],s=new f(15),i=new f(16)),t.lengthc;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==Ye?f.Le="oversubscribed dynamic bit lengths tree":a!=Ze&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=Ye),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,nt,rt,a,i,u,e,t),0!=h||0===i[0]?(h==Ye?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=Ye),h):(c(288),h=o(s,n,r,0,st,it,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==Ye?w.Le="oversubscribed distance tree":h==Ze?(w.Le="incomplete distance tree",h=Ye):-4!=h&&(w.Le="empty distance tree with lengths",h=Ye),h):0)}}function ct(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15,k=a[z+2]+(w&$e[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(0!=(64&u))return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye;f+=a[z+2],f+=w&$e[u],z=3*(l+f),u=a[z]}break}if(0!=(64&u))return 0!=(32&u)?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye);if(f+=a[z+2],f+=w&$e[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,_=0,A=0;for(A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,m=p(u,w,r,h,s,d,e,y),A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>>=n[g+1],_-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(0!=(16&k)){a=15&k,i=n[g+2],t=2;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}if(0!=(32&k)){t=7;break}return t=9,y.Le="invalid literal/length code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 2:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}i+=x&$e[b],x>>=b,_-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>=n[g+1],_-=n[g+1],k=n[g],0!=(16&k)){a=15&k,l=n[g+2],t=4;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 4:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}l+=x&$e[b],x>>=b,_-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(_-=8,v++,A--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ot.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=et,r[0]=tt,0);const ft=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function at(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new ct;let h=0,d=new f(4320);const p=new ot;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ot.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[ft[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==Ye&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&$e[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,_=[],A=[],I=[],D=[],_[0]=9,A[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,_,A,I,D,d,e),0!=i)return i==Ye&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(_[0],A[0],d,I[0],d,D[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const lt=13,ut=[0,0,255,255];function wt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):Xe}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),Xe):(e.zt=r,n.gt.kt=new at(n,1<{let n,r;if(!e||!e.gt||!e.et)return Xe;const s=e.gt;for(t=4==t?Ze:0,n=Ze;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=lt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=lt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=lt,e.Le="incorrect header check",s.marker=5;break}if(0==(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=lt,e.Le="need dictionary",s.marker=0,Xe;case 7:if(n=s.kt.ut(e,n),n==Ye){s.mode=lt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case lt:return Ye;default:return Xe}},e.At=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return Xe;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return Xe;const c=e.gt;if(c.mode!=lt&&(c.mode=lt,c.marker=0),0===(n=e.We))return Ze;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==ut[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?Ye:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Dt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():Xe}function ht(){}function dt(e){const t=new ht,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t._t(0),c&&a===Ze){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}ht.prototype={xt(e){const t=this;return t.gt=new wt,e||(e=15),t.gt.xt(t,e)},_t(e){const t=this;return t.gt?t.gt._t(t,e):Xe},Ct(){const e=this;if(!e.gt)return Xe;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):Xe},At(e,t){const n=this;return n.gt?n.gt.At(n,e,t):Xe},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=Qe,self.Inflate=dt};\n'],{type:"text/javascript"}));e({workerScripts:{inflate:[t],deflate:[t]}})})(Te),Te({Deflate:function(e){const t=new Z,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(a.floor(r/16383)+1);var r;const i=new p(n);let s=e?e.level:-1;void 0===s&&(s=-1),t.deflateInit(s),t.next_out=i,this.append=(e,r)=>{let s,a,o=0,c=0,l=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,s=t.deflate(0),0!=s)throw new u("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?d.push(new p(i)):d.push(i.subarray(0,t.next_out_index))),l+=t.next_out_index,r&&t.next_in_index>0&&t.next_in_index!=o&&(r(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(a=new p(l),d.forEach((e=>{a.set(e,c),c+=e.length}))):a=d[0]?new p(d[0]):new p,a}},this.flush=()=>{let e,r,s=0,a=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw new u("deflating: "+t.msg);n-t.avail_out>0&&o.push(i.slice(0,t.next_out_index)),a+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new p(a),o.forEach((e=>{r.set(e,s),s+=e.length})),r}},Inflate:function(e){const t=new fe,n=e&&e.chunkSize?a.floor(2*e.chunkSize):131072,r=new p(n);let i=!1;t.inflateInit(),t.next_out=r,this.append=(e,s)=>{const a=[];let o,c,l=0,d=0,f=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||i||(t.next_in_index=0,i=!0),o=t.inflate(0),i&&o===G){if(0!==t.avail_in)throw new u("inflating: bad input")}else if(0!==o&&1!==o)throw new u("inflating: "+t.msg);if((i||1===o)&&t.avail_in===e.length)throw new u("inflating: bad input");t.next_out_index&&(t.next_out_index===n?a.push(new p(r)):a.push(r.subarray(0,t.next_out_index))),f+=t.next_out_index,s&&t.next_in_index>0&&t.next_in_index!=l&&(s(t.next_in_index),l=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return a.length>1?(c=new p(f),a.forEach((e=>{c.set(e,d),d+=e.length}))):c=a[0]?new p(a[0]):new p,c}},this.flush=()=>{t.inflateEnd()}}}),e.BlobReader=bn,e.BlobWriter=yn,e.Data64URIReader=gn,e.Data64URIWriter=vn,e.ERR_BAD_FORMAT=mr,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=gr,e.ERR_DUPLICATED_NAME=Mr,e.ERR_ENCRYPTED=yr,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=xr,e.ERR_EOCDR_NOT_FOUND=hr,e.ERR_EOCDR_ZIP64_NOT_FOUND=wr,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=br,e.ERR_HTTP_RANGE=ln,e.ERR_INVALID_COMMENT=Br,e.ERR_INVALID_ENCRYPTION_STRENGTH=Zr,e.ERR_INVALID_ENTRY_COMMENT=Kr,e.ERR_INVALID_ENTRY_NAME=Vr,e.ERR_INVALID_EXTRAFIELD_DATA=Xr,e.ERR_INVALID_EXTRAFIELD_TYPE=Yr,e.ERR_INVALID_PASSWORD=Ze,e.ERR_INVALID_SIGNATURE=Ye,e.ERR_INVALID_VERSION=Hr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=dn,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=vr,e.ERR_SPLIT_ZIP_FILE=zr,e.ERR_UNSUPPORTED_COMPRESSION=kr,e.ERR_UNSUPPORTED_ENCRYPTION=_r,e.ERR_UNSUPPORTED_FORMAT=Gr,e.HttpRangeReader=class extends Ln{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Ln,e.Reader=wn,e.SplitDataReader=jn,e.SplitDataWriter=Pn,e.SplitZipReader=Hn,e.SplitZipWriter=Zn,e.TextReader=_n,e.TextWriter=kn,e.Uint8ArrayReader=Nn,e.Uint8ArrayWriter=On,e.Writer=xn,e.ZipReader=Ar,e.ZipWriter=ei,e.configure=Te,e.fs=mi,e.getMimeType=e=>e&&Ie[e.split(".").pop().toLowerCase()]||"application/octet-stream",e.initShimAsyncCodec=(e,t={},n)=>({Deflate:on(e.Deflate,t.deflate,n),Inflate:on(e.Inflate,t.inflate,n)}),e.terminateWorkers=()=>{tn.forEach((e=>{an(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})})); +((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:i,BigInt:s,Math:a,Date:o,Map:c,Set:l,Response:d,URL:f,Error:u,Uint8Array:p,Uint16Array:m,Uint32Array:h,DataView:w,Blob:x,Promise:g,TextEncoder:v,TextDecoder:b,document:y,crypto:_,btoa:k,TransformStream:z,ReadableStream:S,WritableStream:C,CompressionStream:D,DecompressionStream:R,navigator:A,Worker:W}="undefined"!=typeof globalThis?globalThis:this||self,F=-2;function E(e){return T(e.map((([e,n])=>new t(e).fill(n,0,e))))}function T(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?T(n):n)),[])}const q=[0,1,2,3].concat(...E([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function U(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,i=e.stat_desc.static_tree,s=e.stat_desc.elems;let o,c,l,d=-1;for(n.heap_len=0,n.heap_max=573,o=0;s>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=d=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)l=n.heap[++n.heap_len]=2>d?++d:0,r[2*l]=1,n.depth[l]=0,n.opt_len--,i&&(n.static_len-=i[2*l+1]);for(e.max_code=d,o=a.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);l=s;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),c=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=c,r[2*l]=r[2*o]+r[2*c],n.depth[l]=a.max(n.depth[o],n.depth[c])+1,r[2*o+1]=r[2*c+1]=l,n.heap[1]=l++,n.pqdownheap(r,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,r=e.stat_desc.static_tree,i=e.stat_desc.extra_bits,s=e.stat_desc.extra_base,a=e.stat_desc.max_length;let o,c,l,d,f,u,p=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)c=t.heap[o],d=n[2*n[2*c+1]+1]+1,d>a&&(d=a,p++),n[2*c+1]=d,c>e.max_code||(t.bl_count[d]++,f=0,s>c||(f=i[c-s]),u=n[2*c],t.opt_len+=u*(d+f),r&&(t.static_len+=u*(r[2*c+1]+f)));if(0!==p){do{for(d=a-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[a]--,p-=2}while(p>0);for(d=a;0!==d;d--)for(c=t.bl_count[d];0!==c;)l=t.heap[--o],l>e.max_code||(n[2*l+1]!=d&&(t.opt_len+=(d-n[2*l+1])*n[2*l],n[2*l+1]=d),c--)}})(n),((e,n,r)=>{const i=[];let s,a,o,c=0;for(s=1;15>=s;s++)i[s]=c=c+r[s-1]<<1;for(a=0;n>=a;a++)o=e[2*a+1],0!==o&&(e[2*a]=t(i[o]++,o))})(r,e.max_code,n.bl_count)}}function I(e,t,n,r,i){const s=this;s.static_tree=e,s.extra_bits=t,s.extra_base=n,s.elems=r,s.max_length=i}U._length_code=[0,1,2,3,4,5,6,7].concat(...E([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),U.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],U.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],U.d_code=e=>256>e?q[e]:q[256+(e>>>7)],U.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],U.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],U.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],U.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const L=E([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=T([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,L[t]])));const N=E([[30,5]]);function O(e,t,n,r,i){const s=this;s.good_length=e,s.max_lazy=t,s.nice_length=n,s.max_chain=r,s.func=i}I.static_dtree=T([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,N[t]]))),I.static_l_desc=new I(I.static_ltree,U.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,U.extra_dbits,0,30,15),I.static_bl_desc=new I(null,U.extra_blbits,0,19,7);const j=[new O(0,0,0,0,0),new O(4,4,8,4,1),new O(4,5,16,8,1),new O(4,6,32,32,1),new O(4,4,16,16,2),new O(8,16,32,32,2),new O(8,16,128,128,2),new O(8,32,128,256,2),new O(32,128,258,1024,2),new O(32,258,258,4096,2)],P=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],M=113,B=666,K=262;function V(e,t,n,r){const i=e[2*t],s=e[2*n];return s>i||i==s&&r[t]<=r[n]}function H(){const e=this;let t,n,r,i,s,o,c,l,d,f,u,h,w,x,g,v,b,y,_,k,z,S,C,D,R,A,W,E,T,q,L,N,O;const H=new U,Z=new U,Y=new U;let X,G,J,$,Q,ee;function te(){let t;for(t=0;286>t;t++)L[2*t]=0;for(t=0;30>t;t++)N[2*t]=0;for(t=0;19>t;t++)O[2*t]=0;L[512]=1,e.opt_len=e.static_len=0,G=J=0}function ne(e,t){let n,r=-1,i=e[1],s=0,a=7,o=4;0===i&&(a=138,o=3),e[2*(t+1)+1]=65535;for(let c=0;t>=c;c++)n=i,i=e[2*(c+1)+1],++ss?O[2*n]+=s:0!==n?(n!=r&&O[2*n]++,O[32]++):s>10?O[36]++:O[34]++,s=0,r=n,0===i?(a=138,o=3):n==i?(a=6,o=3):(a=7,o=4))}function re(t){e.pending_buf[e.pending++]=t}function ie(e){re(255&e),re(e>>>8&255)}function se(e,t){let n;const r=t;ee>16-r?(n=e,Q|=n<>>16-ee,ee+=r-16):(Q|=e<=n;n++)if(r=s,s=e[2*(n+1)+1],++a>=o||r!=s){if(c>a)do{ae(r,O)}while(0!=--a);else 0!==r?(r!=i&&(ae(r,O),a--),ae(16,O),se(a-3,2)):a>10?(ae(18,O),se(a-11,7)):(ae(17,O),se(a-3,3));a=0,i=r,0===s?(o=138,c=3):r==s?(o=6,c=3):(o=7,c=4)}}function ce(){16==ee?(ie(Q),Q=0,ee=0):8>ee||(re(255&Q),Q>>>=8,ee-=8)}function le(t,n){let r,i,s;if(e.dist_buf[G]=t,e.lc_buf[G]=255&n,G++,0===t?L[2*n]++:(J++,t--,L[2*(U._length_code[n]+256+1)]++,N[2*U.d_code(t)]++),0==(8191&G)&&W>2){for(r=8*G,i=z-b,s=0;30>s;s++)r+=N[2*s]*(5+U.extra_dbits[s]);if(r>>>=3,Jo);ae(256,t),$=t[513]}function fe(){ee>8?ie(Q):ee>0&&re(255&Q),Q=0,ee=0}function ue(t,n,r){se(0+(r?1:0),3),((t,n)=>{fe(),$=8,ie(n),ie(~n),e.pending_buf.set(l.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function pe(n){((t,n,r)=>{let i,s,a=0;W>0?(H.build_tree(e),Z.build_tree(e),a=(()=>{let t;for(ne(L,H.max_code),ne(N,Z.max_code),Y.build_tree(e),t=18;t>=3&&0===O[2*U.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),i=e.opt_len+3+7>>>3,s=e.static_len+3+7>>>3,s>i||(i=s)):i=s=n+5,n+4>i||-1==t?s==i?(se(2+(r?1:0),3),de(I.static_ltree,I.static_dtree)):(se(4+(r?1:0),3),((e,t,n)=>{let r;for(se(e-257,5),se(t-1,5),se(n-4,4),r=0;n>r;r++)se(O[2*U.bl_order[r]+1],3);oe(L,e-1),oe(N,t-1)})(H.max_code+1,Z.max_code+1,a+1),de(L,N)):ue(t,n,r),te(),r&&fe()})(0>b?-1:b,z-b,n),b=z,t.flush_pending()}function me(){let e,n,r,i;do{if(i=d-C-z,0===i&&0===z&&0===C)i=s;else if(-1==i)i--;else if(z>=s+s-K){l.set(l.subarray(s,s+s),0),S-=s,z-=s,b-=s,e=w,r=e;do{n=65535&u[--r],u[r]=s>n?0:n-s}while(0!=--e);e=s,r=e;do{n=65535&f[--r],f[r]=s>n?0:n-s}while(0!=--e);i+=s}if(0===t.avail_in)return;e=t.read_buf(l,z+C,i),C+=e,3>C||(h=255&l[z],h=(h<C&&0!==t.avail_in)}function he(e){let t,n,r=R,i=z,a=D;const o=z>s-K?z-(s-K):0;let d=q;const u=c,p=z+258;let m=l[i+a-1],h=l[i+a];T>D||(r>>=2),d>C&&(d=C);do{if(t=e,l[t+a]==h&&l[t+a-1]==m&&l[t]==l[i]&&l[++t]==l[i+1]){i+=2,t++;do{}while(l[++i]==l[++t]&&l[++i]==l[++t]&&l[++i]==l[++t]&&l[++i]==l[++t]&&l[++i]==l[++t]&&l[++i]==l[++t]&&l[++i]==l[++t]&&l[++i]==l[++t]&&p>i);if(n=258-(p-i),i=p-258,n>a){if(S=e,a=n,n>=d)break;m=l[i+a-1],h=l[i+a]}}}while((e=65535&f[e&u])>o&&0!=--r);return a>C?C:a}e.depth=[],e.bl_count=[],e.heap=[],L=[],N=[],O=[],e.pqdownheap=(t,n)=>{const r=e.heap,i=r[n];let s=n<<1;for(;s<=e.heap_len&&(s(U||(U=8),P||(P=8),B||(B=0),t.msg=null,-1==_&&(_=6),1>P||P>9||8!=U||9>S||S>15||0>_||_>9||0>B||B>2?F:(t.dstate=e,o=S,s=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=M,i=0,H.dyn_tree=L,H.stat_desc=I.static_l_desc,Z.dyn_tree=N,Z.stat_desc=I.static_d_desc,Y.dyn_tree=O,Y.stat_desc=I.static_bl_desc,Q=0,ee=0,$=8,te(),(()=>{d=2*s,u[w-1]=0;for(let e=0;w-1>e;e++)u[e]=0;A=j[W].max_lazy,T=j[W].good_length,q=j[W].nice_length,R=j[W].max_chain,z=0,b=0,C=0,y=D=2,k=0,h=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=M&&n!=B?F:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,u=null,f=null,l=null,e.dstate=null,n==M?-3:0),e.deflateParams=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?F:(j[W].func!=j[t].func&&0!==e.total_in&&(r=e.deflate(1)),W!=t&&(W=t,A=j[W].max_lazy,T=j[W].good_length,q=j[W].nice_length,R=j[W].max_chain),E=n,r)},e.deflateSetDictionary=(e,t,r)=>{let i,a=r,o=0;if(!t||42!=n)return F;if(3>a)return 0;for(a>s-K&&(a=s-K,o=r-a),l.set(t.subarray(o,o+a),0),z=a,b=a,h=255&l[0],h=(h<=i;i++)h=(h<{let p,m,x,R,T;if(d>4||0>d)return F;if(!a.next_out||!a.next_in&&0!==a.avail_in||n==B&&4!=d)return a.msg=P[4],F;if(0===a.avail_out)return a.msg=P[7],-5;var q;if(t=a,R=i,i=d,42==n&&(m=8+(o-8<<4)<<8,x=(W-1&255)>>1,x>3&&(x=3),m|=x<<6,0!==z&&(m|=32),m+=31-m%31,n=M,re((q=m)>>8&255),re(255&q)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return i=-1,0}else if(0===t.avail_in&&R>=d&&4!=d)return t.msg=P[7],-5;if(n==B&&0!==t.avail_in)return a.msg=P[7],-5;if(0!==t.avail_in||0!==C||0!=d&&n!=B){switch(T=-1,j[W].func){case 0:T=(e=>{let n,i=65535;for(i>r-5&&(i=r-5);;){if(1>=C){if(me(),0===C&&0==e)return 0;if(0===C)break}if(z+=C,C=0,n=b+i,(0===z||z>=n)&&(C=z-n,z=n,pe(!1),0===t.avail_out))return 0;if(z-b>=s-K&&(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:T=(e=>{let n,r=0;for(;;){if(K>C){if(me(),K>C&&0==e)return 0;if(0===C)break}if(3>C||(h=(h<s-K||2!=E&&(y=he(r)),3>y)n=le(0,255&l[z]),C--,z++;else if(n=le(z-S,y-3),C-=y,y>A||3>C)z+=y,y=0,h=255&l[z],h=(h<{let n,r,i=0;for(;;){if(K>C){if(me(),K>C&&0==e)return 0;if(0===C)break}if(3>C||(h=(h<D&&s-K>=(z-i&65535)&&(2!=E&&(y=he(i)),5>=y&&(1==E||3==y&&z-S>4096)&&(y=2)),3>D||y>D)if(0!==k){if(n=le(0,255&l[z-1]),n&&pe(!1),z++,C--,0===t.avail_out)return 0}else k=1,z++,C--;else{r=z+C-3,n=le(z-1-_,D-3),C-=D-1,D-=2;do{++z>r||(h=(h<1+$+10-ee&&(se(2,3),ae(256,I.static_ltree),ce()),$=7;else if(ue(0,0,!1),3==d)for(p=0;w>p;p++)u[p]=0;if(t.flush_pending(),0===t.avail_out)return i=-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 H,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):F},deflateEnd(){const e=this;if(!e.dstate)return F;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):F},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):F},read_buf(e,t,n){const r=this;let i=r.avail_in;return i>n&&(i=n),0===i?0:(r.avail_in-=i,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),t),r.next_in_index+=i,r.total_in+=i,i)},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 Y=-2,X=-3,G=-5,J=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],$=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],Q=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],ee=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],te=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ne=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],re=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ie(){let e,t,n,r,i,s;function a(e,t,a,o,c,l,d,f,u,p,m){let h,w,x,g,v,b,y,_,k,z,S,C,D,R,A;z=0,v=a;do{n[e[t+z]]++,z++,v--}while(0!==v);if(n[0]==a)return d[0]=-1,f[0]=0,0;for(_=f[0],b=1;15>=b&&0===n[b];b++);for(y=b,b>_&&(_=b),v=15;0!==v&&0===n[v];v--);for(x=v,_>v&&(_=v),f[0]=_,R=1<b;b++,R<<=1)if(0>(R-=n[b]))return X;if(0>(R-=n[v]))return X;for(n[v]+=R,s[1]=b=0,z=1,D=2;0!=--v;)s[D]=b+=n[z],D++,z++;v=0,z=0;do{0!==(b=e[t+z])&&(m[s[b]++]=v),z++}while(++v=y;y++)for(h=n[y];0!=h--;){for(;y>C+_;){if(g++,C+=_,A=x-C,A=A>_?_:A,(w=1<<(b=y-C))>h+1&&(w-=h+1,D=y,A>b))for(;++bn[++D];)w-=n[D];if(A=1<1440)return X;i[g]=S=p[0],p[0]+=A,0!==g?(s[g]=v,r[0]=b,r[1]=_,b=v>>>C-_,r[2]=S-i[g-1]-b,u.set(r,3*(i[g-1]+b))):d[0]=S}for(r[1]=y-C,a>z?m[z]m[z]?0:96,r[2]=m[z++]):(r[0]=l[m[z]-o]+16+64,r[2]=c[m[z++]-o]):r[0]=192,w=1<>>C;A>b;b+=w)u.set(r,3*(S+b));for(b=1<>>=1)v^=b;for(v^=b,k=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)r[o]=0;i.set(n.subarray(0,15),0),s.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,r,i,s,c)=>{let l;return o(19),e[0]=0,l=a(n,0,19,19,null,null,i,r,s,e,t),l==X?c.msg="oversubscribed dynamic bit lengths tree":l!=G&&0!==r[0]||(c.msg="incomplete dynamic bit lengths tree",l=X),l},this.inflate_trees_dynamic=(n,r,i,s,c,l,d,f,u)=>{let p;return o(288),e[0]=0,p=a(i,0,n,257,ee,te,l,s,f,e,t),0!=p||0===s[0]?(p==X?u.msg="oversubscribed literal/length tree":-4!=p&&(u.msg="incomplete literal/length tree",p=X),p):(o(288),p=a(i,n,r,0,ne,re,d,c,f,e,t),0!=p||0===c[0]&&n>257?(p==X?u.msg="oversubscribed distance tree":p==G?(u.msg="incomplete distance tree",p=X):-4!=p&&(u.msg="empty distance tree with lengths",p=X),p):0)}}function se(){const e=this;let t,n,r,i,s=0,a=0,o=0,c=0,l=0,d=0,f=0,u=0,p=0,m=0;function h(e,t,n,r,i,s,a,o){let c,l,d,f,u,p,m,h,w,x,g,v,b,y,_,k;m=o.next_in_index,h=o.avail_in,u=a.bitb,p=a.bitk,w=a.write,x=wp;)h--,u|=(255&o.read_byte(m++))<>=l[k+1],p-=l[k+1],0!=(16&f)){for(f&=15,b=l[k+2]+(u&J[f]),u>>=f,p-=f;15>p;)h--,u|=(255&o.read_byte(m++))<>=l[k+1],p-=l[k+1],0!=(16&f)){for(f&=15;f>p;)h--,u|=(255&o.read_byte(m++))<>=f,p-=f,x-=b,y>w){_=w-y;do{_+=a.end}while(0>_);if(f=a.end-_,b>f){if(b-=f,w-_>0&&f>w-_)do{a.win[w++]=a.win[_++]}while(0!=--f);else a.win.set(a.win.subarray(_,_+f),w),w+=f,_+=f,f=0;_=0}}else _=w-y,w-_>0&&2>w-_?(a.win[w++]=a.win[_++],a.win[w++]=a.win[_++],b-=2):(a.win.set(a.win.subarray(_,_+2),w),w+=2,_+=2,b-=2);if(w-_>0&&b>w-_)do{a.win[w++]=a.win[_++]}while(0!=--b);else a.win.set(a.win.subarray(_,_+b),w),w+=b,_+=b,b=0;break}if(0!=(64&f))return o.msg="invalid distance code",b=o.avail_in-h,b=b>p>>3?p>>3:b,h+=b,m-=b,p-=b<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,X;c+=l[k+2],c+=u&J[f],k=3*(d+c),f=l[k]}break}if(0!=(64&f))return 0!=(32&f)?(b=o.avail_in-h,b=b>p>>3?p>>3:b,h+=b,m-=b,p-=b<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,1):(o.msg="invalid literal/length code",b=o.avail_in-h,b=b>p>>3?p>>3:b,h+=b,m-=b,p-=b<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,X);if(c+=l[k+2],c+=u&J[f],k=3*(d+c),0===(f=l[k])){u>>=l[k+1],p-=l[k+1],a.win[w++]=l[k+2],x--;break}}else u>>=l[k+1],p-=l[k+1],a.win[w++]=l[k+2],x--}while(x>=258&&h>=10);return b=o.avail_in-h,b=b>p>>3?p>>3:b,h+=b,m-=b,p-=b<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,0}e.init=(e,s,a,o,c,l)=>{t=0,f=e,u=s,r=a,p=o,i=c,m=l,n=null},e.proc=(e,w,x)=>{let g,v,b,y,_,k,z,S=0,C=0,D=0;for(D=w.next_in_index,y=w.avail_in,S=e.bitb,C=e.bitk,_=e.write,k=_=258&&y>=10&&(e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,x=h(f,u,r,p,i,m,e,w),D=w.next_in_index,y=w.avail_in,S=e.bitb,C=e.bitk,_=e.write,k=_C;){if(0===y)return e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,x);x=0,y--,S|=(255&w.read_byte(D++))<>>=n[v+1],C-=n[v+1],b=n[v],0===b){c=n[v+2],t=6;break}if(0!=(16&b)){l=15&b,s=n[v+2],t=2;break}if(0==(64&b)){o=b,a=v/3+n[v+2];break}if(0!=(32&b)){t=7;break}return t=9,w.msg="invalid literal/length code",x=X,e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,x);case 2:for(g=l;g>C;){if(0===y)return e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,x);x=0,y--,S|=(255&w.read_byte(D++))<>=g,C-=g,o=u,n=i,a=m,t=3;case 3:for(g=o;g>C;){if(0===y)return e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,x);x=0,y--,S|=(255&w.read_byte(D++))<>=n[v+1],C-=n[v+1],b=n[v],0!=(16&b)){l=15&b,d=n[v+2],t=4;break}if(0==(64&b)){o=b,a=v/3+n[v+2];break}return t=9,w.msg="invalid distance code",x=X,e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,x);case 4:for(g=l;g>C;){if(0===y)return e.bitb=S,e.bitk=C,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,x);x=0,y--,S|=(255&w.read_byte(D++))<>=g,C-=g,t=5;case 5:for(z=_-d;0>z;)z+=e.end;for(;0!==s;){if(0===k&&(_==e.end&&0!==e.read&&(_=0,k=_7&&(C-=8,y++,D--),e.write=_,x=e.inflate_flush(w,x),_=e.write,k=_{}}ie.inflate_trees_fixed=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=$,r[0]=Q,0);const ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function oe(e,t){const n=this;let r,i=0,s=0,a=0,o=0;const c=[0],l=[0],d=new se;let f=0,u=new Int32Array(4320);const m=new ie;n.bitk=0,n.bitb=0,n.win=new p(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==i&&d.free(e),i=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let r,i,s;return i=e.next_out_index,s=n.read,r=(s>n.write?n.end:n.write)-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==G&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r,s==n.end&&(s=0,n.write==n.end&&(n.write=0),r=n.write-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==G&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r),e.next_out_index=i,n.read=s,t},n.proc=(e,t)=>{let p,h,w,x,g,v,b,y;for(x=e.next_in_index,g=e.avail_in,h=n.bitb,w=n.bitk,v=n.write,b=vw;){if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);t=0,g--,h|=(255&e.read_byte(x++))<>>1){case 0:h>>>=3,w-=3,p=7&w,h>>>=p,w-=p,i=1;break;case 1:_=[],k=[],z=[[]],S=[[]],ie.inflate_trees_fixed(_,k,z,S),d.init(_[0],k[0],z[0],0,S[0],0),h>>>=3,w-=3,i=6;break;case 2:h>>>=3,w-=3,i=3;break;case 3:return h>>>=3,w-=3,i=9,e.msg="invalid block type",t=X,n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t)}break;case 1:for(;32>w;){if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);t=0,g--,h|=(255&e.read_byte(x++))<>>16&65535)!=(65535&h))return i=9,e.msg="invalid stored block lengths",t=X,n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);s=65535&h,h=w=0,i=0!==s?2:0!==f?7:0;break;case 2:if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);if(0===b&&(v==n.end&&0!==n.read&&(v=0,b=vg&&(p=g),p>b&&(p=b),n.win.set(e.read_buf(x,p),v),x+=p,g-=p,v+=p,b-=p,0!=(s-=p))break;i=0!==f?7:0;break;case 3:for(;14>w;){if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);t=0,g--,h|=(255&e.read_byte(x++))<29||(p>>5&31)>29)return i=9,e.msg="too many length or distance symbols",t=X,n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);if(p=258+(31&p)+(p>>5&31),!r||r.lengthy;y++)r[y]=0;h>>>=14,w-=14,o=0,i=4;case 4:for(;4+(a>>>10)>o;){for(;3>w;){if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);t=0,g--,h|=(255&e.read_byte(x++))<>>=3,w-=3}for(;19>o;)r[ae[o++]]=0;if(c[0]=7,p=m.inflate_trees_bits(r,c,l,u,e),0!=p)return(t=p)==X&&(r=null,i=9),n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);o=0,i=5;case 5:for(;p=a,258+(31&p)+(p>>5&31)>o;){let s,d;for(p=c[0];p>w;){if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);t=0,g--,h|=(255&e.read_byte(x++))<d)h>>>=p,w-=p,r[o++]=d;else{for(y=18==d?7:d-14,s=18==d?11:3;p+y>w;){if(0===g)return n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);t=0,g--,h|=(255&e.read_byte(x++))<>>=p,w-=p,s+=h&J[y],h>>>=y,w-=y,y=o,p=a,y+s>258+(31&p)+(p>>5&31)||16==d&&1>y)return r=null,i=9,e.msg="invalid bit length repeat",t=X,n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);d=16==d?r[y-1]:0;do{r[y++]=d}while(0!=--s);o=y}}if(l[0]=-1,C=[],D=[],R=[],A=[],C[0]=9,D[0]=6,p=a,p=m.inflate_trees_dynamic(257+(31&p),1+(p>>5&31),r,C,D,R,A,u,e),0!=p)return p==X&&(r=null,i=9),t=p,n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,n.inflate_flush(e,t);d.init(C[0],D[0],u,R[0],u,A[0]),i=6;case 6:if(n.bitb=h,n.bitk=w,e.avail_in=g,e.total_in+=x-e.next_in_index,e.next_in_index=x,n.write=v,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),x=e.next_in_index,g=e.avail_in,h=n.bitb,w=n.bitk,v=n.write,b=v{n.reset(e,null),n.win=null,u=null},n.set_dictionary=(e,t,r)=>{n.win.set(e.subarray(t,t+r),0),n.read=n.write=r},n.sync_point=()=>1==i?1:0}const ce=13,le=[0,0,255,255];function de(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):Y}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,r)=>(n.msg=null,e.blocks=null,8>r||r>15?(e.inflateEnd(n),Y):(e.wbits=r,n.istate.blocks=new oe(n,1<{let n,r;if(!e||!e.istate||!e.next_in)return Y;const i=e.istate;for(t=4==t?G:0,n=G;;)switch(i.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(i.method=e.read_byte(e.next_in_index++)))){i.mode=ce,e.msg="unknown compression method",i.marker=5;break}if(8+(i.method>>4)>i.wbits){i.mode=ce,e.msg="invalid win size",i.marker=5;break}i.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,r=255&e.read_byte(e.next_in_index++),((i.method<<8)+r)%31!=0){i.mode=ce,e.msg="incorrect header check",i.marker=5;break}if(0==(32&r)){i.mode=7;break}i.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,i.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,i.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,i.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,i.need+=255&e.read_byte(e.next_in_index++),i.mode=6,2);case 6:return i.mode=ce,e.msg="need dictionary",i.marker=0,Y;case 7:if(n=i.blocks.proc(e,n),n==X){i.mode=ce,i.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,i.blocks.reset(e,i.was),i.mode=12;case 12:return e.avail_in=0,1;case ce:return X;default:return Y}},e.inflateSetDictionary=(e,t,n)=>{let r=0,i=n;if(!e||!e.istate||6!=e.istate.mode)return Y;const s=e.istate;return i<1<{let n,r,i,s,a;if(!e||!e.istate)return Y;const o=e.istate;if(o.mode!=ce&&(o.mode=ce,o.marker=0),0===(n=e.avail_in))return G;for(r=e.next_in_index,i=o.marker;0!==n&&4>i;)e.read_byte(r)==le[i]?i++:i=0!==e.read_byte(r)?0:4-i,r++,n--;return e.total_in+=r-e.next_in_index,e.next_in_index=r,e.avail_in=n,o.marker=i,4!=i?X:(s=e.total_in,a=e.total_out,t(e),e.total_in=s,e.total_out=a,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():Y}function fe(){}fe.prototype={inflateInit(e){const t=this;return t.istate=new de,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):Y},inflateEnd(){const e=this;if(!e.istate)return Y;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):Y},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):Y},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const ue=4294967295,pe=65535,me=67324752,he=134695760,we=33639248,xe=101075792,ge=117853008,ve=21589,be=2048,ye="/",_e=new o(2107,11,31),ke=new o(1980,0,1),ze=void 0,Se="undefined",Ce="function";class De{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 Re=2;try{typeof A!=Se&&A.hardwareConcurrency&&(Re=A.hardwareConcurrency)}catch(e){}const Ae={chunkSize:524288,maxWorkers:Re,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:ze,CompressionStreamNative:typeof D!=Se&&D,DecompressionStreamNative:typeof R!=Se&&R},We=n.assign({},Ae);function Fe(){return We}function Ee(e){return a.max(e.chunkSize,64)}function Te(e){const{baseURL:n,chunkSize:r,maxWorkers:i,terminateWorkerTimeout:s,useCompressionStream:a,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:d,DecompressionStream:f,workerScripts:p}=e;if(qe("baseURL",n),qe("chunkSize",r),qe("maxWorkers",i),qe("terminateWorkerTimeout",s),qe("useCompressionStream",a),qe("useWebWorkers",o),c&&(We.CompressionStream=new De(c)),l&&(We.DecompressionStream=new De(l)),qe("CompressionStream",d),qe("DecompressionStream",f),p!==ze){const{deflate:e,inflate:n}=p;if((e||n)&&(We.workerScripts||(We.workerScripts={})),e){if(!t.isArray(e))throw new u("workerScripts.deflate must be an array");We.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new u("workerScripts.inflate must be an array");We.workerScripts.inflate=n}}}function qe(e,t){t!==ze&&(We[e]=t)}const Ue={application:{"andrew-inset":"ez",annodex:"anx","atom+xml":"atom","atomcat+xml":"atomcat","atomserv+xml":"atomsrv",bbolin:"lin",cap:["cap","pcap"],"cu-seeme":"cu","davmount+xml":"davmount",dsptype:"tsp",ecmascript:["es","ecma"],futuresplash:"spl",hta:"hta","java-archive":"jar","java-serialized-object":"ser","java-vm":"class",javascript:"js",m3g:"m3g","mac-binhex40":"hqx",mathematica:["nb","ma","mb"],msaccess:"mdb",msword:["doc","dot"],mxf:"mxf",oda:"oda",ogg:"ogx",pdf:"pdf","pgp-keys":"key","pgp-signature":["asc","sig"],"pics-rules":"prf",postscript:["ps","ai","eps","epsi","epsf","eps2","eps3"],rar:"rar","rdf+xml":"rdf","rss+xml":"rss",rtf:"rtf",smil:["smi","smil"],"xhtml+xml":["xhtml","xht"],xml:["xml","xsl","xsd"],"xspf+xml":"xspf",zip:"zip","vnd.android.package-archive":"apk","vnd.cinderella":"cdy","vnd.google-earth.kml+xml":"kml","vnd.google-earth.kmz":"kmz","vnd.mozilla.xul+xml":"xul","vnd.ms-excel":["xls","xlb","xlt","xlm","xla","xlc","xlw"],"vnd.ms-pki.seccat":"cat","vnd.ms-pki.stl":"stl","vnd.ms-powerpoint":["ppt","pps","pot"],"vnd.oasis.opendocument.chart":"odc","vnd.oasis.opendocument.database":"odb","vnd.oasis.opendocument.formula":"odf","vnd.oasis.opendocument.graphics":"odg","vnd.oasis.opendocument.graphics-template":"otg","vnd.oasis.opendocument.image":"odi","vnd.oasis.opendocument.presentation":"odp","vnd.oasis.opendocument.presentation-template":"otp","vnd.oasis.opendocument.spreadsheet":"ods","vnd.oasis.opendocument.spreadsheet-template":"ots","vnd.oasis.opendocument.text":"odt","vnd.oasis.opendocument.text-master":"odm","vnd.oasis.opendocument.text-template":"ott","vnd.oasis.opendocument.text-web":"oth","vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","vnd.openxmlformats-officedocument.spreadsheetml.template":"xltx","vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","vnd.openxmlformats-officedocument.presentationml.slideshow":"ppsx","vnd.openxmlformats-officedocument.presentationml.template":"potx","vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","vnd.openxmlformats-officedocument.wordprocessingml.template":"dotx","vnd.smaf":"mmf","vnd.stardivision.calc":"sdc","vnd.stardivision.chart":"sds","vnd.stardivision.draw":"sda","vnd.stardivision.impress":"sdd","vnd.stardivision.math":["sdf","smf"],"vnd.stardivision.writer":["sdw","vor"],"vnd.stardivision.writer-global":"sgl","vnd.sun.xml.calc":"sxc","vnd.sun.xml.calc.template":"stc","vnd.sun.xml.draw":"sxd","vnd.sun.xml.draw.template":"std","vnd.sun.xml.impress":"sxi","vnd.sun.xml.impress.template":"sti","vnd.sun.xml.math":"sxm","vnd.sun.xml.writer":"sxw","vnd.sun.xml.writer.global":"sxg","vnd.sun.xml.writer.template":"stw","vnd.symbian.install":["sis","sisx"],"vnd.visio":["vsd","vst","vss","vsw"],"vnd.wap.wbxml":"wbxml","vnd.wap.wmlc":"wmlc","vnd.wap.wmlscriptc":"wmlsc","vnd.wordperfect":"wpd","vnd.wordperfect5.1":"wp5","x-123":"wk","x-7z-compressed":"7z","x-abiword":"abw","x-apple-diskimage":"dmg","x-bcpio":"bcpio","x-bittorrent":"torrent","x-cbr":["cbr","cba","cbt","cb7"],"x-cbz":"cbz","x-cdf":["cdf","cda"],"x-cdlink":"vcd","x-chess-pgn":"pgn","x-cpio":"cpio","x-csh":"csh","x-debian-package":["deb","udeb"],"x-director":["dcr","dir","dxr","cst","cct","cxt","w3d","fgd","swa"],"x-dms":"dms","x-doom":"wad","x-dvi":"dvi","x-httpd-eruby":"rhtml","x-font":"pcf.Z","x-freemind":"mm","x-gnumeric":"gnumeric","x-go-sgf":"sgf","x-graphing-calculator":"gcf","x-gtar":["gtar","taz"],"x-hdf":"hdf","x-httpd-php":["phtml","pht","php"],"x-httpd-php-source":"phps","x-httpd-php3":"php3","x-httpd-php3-preprocessed":"php3p","x-httpd-php4":"php4","x-httpd-php5":"php5","x-ica":"ica","x-info":"info","x-internet-signup":["ins","isp"],"x-iphone":"iii","x-iso9660-image":"iso","x-java-jnlp-file":"jnlp","x-jmol":"jmz","x-killustrator":"kil","x-koan":["skp","skd","skt","skm"],"x-kpresenter":["kpr","kpt"],"x-kword":["kwd","kwt"],"x-latex":"latex","x-lha":"lha","x-lyx":"lyx","x-lzh":"lzh","x-lzx":"lzx","x-maker":["frm","maker","frame","fm","fb","book","fbdoc"],"x-ms-wmd":"wmd","x-ms-wmz":"wmz","x-msdos-program":["com","exe","bat","dll"],"x-msi":"msi","x-netcdf":["nc","cdf"],"x-ns-proxy-autoconfig":["pac","dat"],"x-nwc":"nwc","x-object":"o","x-oz-application":"oza","x-pkcs7-certreqresp":"p7r","x-python-code":["pyc","pyo"],"x-qgis":["qgs","shp","shx"],"x-quicktimeplayer":"qtl","x-redhat-package-manager":"rpm","x-ruby":"rb","x-sh":"sh","x-shar":"shar","x-shockwave-flash":["swf","swfl"],"x-silverlight":"scr","x-stuffit":"sit","x-sv4cpio":"sv4cpio","x-sv4crc":"sv4crc","x-tar":"tar","x-tcl":"tcl","x-tex-gf":"gf","x-tex-pk":"pk","x-texinfo":["texinfo","texi"],"x-trash":["~","%","bak","old","sik"],"x-troff":["t","tr","roff"],"x-troff-man":"man","x-troff-me":"me","x-troff-ms":"ms","x-ustar":"ustar","x-wais-source":"src","x-wingz":"wz","x-x509-ca-cert":["crt","der","cer"],"x-xcf":"xcf","x-xfig":"fig","x-xpinstall":"xpi",applixware:"aw","atomsvc+xml":"atomsvc","ccxml+xml":"ccxml","cdmi-capability":"cdmia","cdmi-container":"cdmic","cdmi-domain":"cdmid","cdmi-object":"cdmio","cdmi-queue":"cdmiq","docbook+xml":"dbk","dssc+der":"dssc","dssc+xml":"xdssc","emma+xml":"emma","epub+zip":"epub",exi:"exi","font-tdpfr":"pfr","gml+xml":"gml","gpx+xml":"gpx",gxf:"gxf",hyperstudio:"stk","inkml+xml":["ink","inkml"],ipfix:"ipfix",json:"json","jsonml+json":"jsonml","lost+xml":"lostxml","mads+xml":"mads",marc:"mrc","marcxml+xml":"mrcx","mathml+xml":"mathml",mbox:"mbox","mediaservercontrol+xml":"mscml","metalink+xml":"metalink","metalink4+xml":"meta4","mets+xml":"mets","mods+xml":"mods",mp21:["m21","mp21"],mp4:"mp4s","oebps-package+xml":"opf","omdoc+xml":"omdoc",onenote:["onetoc","onetoc2","onetmp","onepkg"],oxps:"oxps","patch-ops-error+xml":"xer","pgp-encrypted":"pgp",pkcs10:"p10","pkcs7-mime":["p7m","p7c"],"pkcs7-signature":"p7s",pkcs8:"p8","pkix-attr-cert":"ac","pkix-crl":"crl","pkix-pkipath":"pkipath",pkixcmp:"pki","pls+xml":"pls","prs.cww":"cww","pskc+xml":"pskcxml","reginfo+xml":"rif","relax-ng-compact-syntax":"rnc","resource-lists+xml":"rl","resource-lists-diff+xml":"rld","rls-services+xml":"rs","rpki-ghostbusters":"gbr","rpki-manifest":"mft","rpki-roa":"roa","rsd+xml":"rsd","sbml+xml":"sbml","scvp-cv-request":"scq","scvp-cv-response":"scs","scvp-vp-request":"spq","scvp-vp-response":"spp",sdp:"sdp","set-payment-initiation":"setpay","set-registration-initiation":"setreg","shf+xml":"shf","sparql-query":"rq","sparql-results+xml":"srx",srgs:"gram","srgs+xml":"grxml","sru+xml":"sru","ssdl+xml":"ssdl","ssml+xml":"ssml","tei+xml":["tei","teicorpus"],"thraud+xml":"tfi","timestamped-data":"tsd","vnd.3gpp.pic-bw-large":"plb","vnd.3gpp.pic-bw-small":"psb","vnd.3gpp.pic-bw-var":"pvb","vnd.3gpp2.tcap":"tcap","vnd.3m.post-it-notes":"pwn","vnd.accpac.simply.aso":"aso","vnd.accpac.simply.imp":"imp","vnd.acucobol":"acu","vnd.acucorp":["atc","acutc"],"vnd.adobe.air-application-installer-package+zip":"air","vnd.adobe.formscentral.fcdt":"fcdt","vnd.adobe.fxp":["fxp","fxpl"],"vnd.adobe.xdp+xml":"xdp","vnd.adobe.xfdf":"xfdf","vnd.ahead.space":"ahead","vnd.airzip.filesecure.azf":"azf","vnd.airzip.filesecure.azs":"azs","vnd.amazon.ebook":"azw","vnd.americandynamics.acc":"acc","vnd.amiga.ami":"ami","vnd.anser-web-certificate-issue-initiation":"cii","vnd.anser-web-funds-transfer-initiation":"fti","vnd.antix.game-component":"atx","vnd.apple.installer+xml":"mpkg","vnd.apple.mpegurl":"m3u8","vnd.aristanetworks.swi":"swi","vnd.astraea-software.iota":"iota","vnd.audiograph":"aep","vnd.blueice.multipass":"mpm","vnd.bmi":"bmi","vnd.businessobjects":"rep","vnd.chemdraw+xml":"cdxml","vnd.chipnuts.karaoke-mmd":"mmd","vnd.claymore":"cla","vnd.cloanto.rp9":"rp9","vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"vnd.cluetrust.cartomobile-config":"c11amc","vnd.cluetrust.cartomobile-config-pkg":"c11amz","vnd.commonspace":"csp","vnd.contact.cmsg":"cdbcmsg","vnd.cosmocaller":"cmc","vnd.crick.clicker":"clkx","vnd.crick.clicker.keyboard":"clkk","vnd.crick.clicker.palette":"clkp","vnd.crick.clicker.template":"clkt","vnd.crick.clicker.wordbank":"clkw","vnd.criticaltools.wbs+xml":"wbs","vnd.ctc-posml":"pml","vnd.cups-ppd":"ppd","vnd.curl.car":"car","vnd.curl.pcurl":"pcurl","vnd.dart":"dart","vnd.data-vision.rdz":"rdz","vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"vnd.dece.ttml+xml":["uvt","uvvt"],"vnd.dece.unspecified":["uvx","uvvx"],"vnd.dece.zip":["uvz","uvvz"],"vnd.denovo.fcselayout-link":"fe_launch","vnd.dna":"dna","vnd.dolby.mlp":"mlp","vnd.dpgraph":"dpg","vnd.dreamfactory":"dfac","vnd.ds-keypoint":"kpxx","vnd.dvb.ait":"ait","vnd.dvb.service":"svc","vnd.dynageo":"geo","vnd.ecowin.chart":"mag","vnd.enliven":"nml","vnd.epson.esf":"esf","vnd.epson.msf":"msf","vnd.epson.quickanime":"qam","vnd.epson.salt":"slt","vnd.epson.ssf":"ssf","vnd.eszigno3+xml":["es3","et3"],"vnd.ezpix-album":"ez2","vnd.ezpix-package":"ez3","vnd.fdf":"fdf","vnd.fdsn.mseed":"mseed","vnd.fdsn.seed":["seed","dataless"],"vnd.flographit":"gph","vnd.fluxtime.clip":"ftc","vnd.framemaker":["fm","frame","maker","book"],"vnd.frogans.fnc":"fnc","vnd.frogans.ltf":"ltf","vnd.fsc.weblaunch":"fsc","vnd.fujitsu.oasys":"oas","vnd.fujitsu.oasys2":"oa2","vnd.fujitsu.oasys3":"oa3","vnd.fujitsu.oasysgp":"fg5","vnd.fujitsu.oasysprs":"bh2","vnd.fujixerox.ddd":"ddd","vnd.fujixerox.docuworks":"xdw","vnd.fujixerox.docuworks.binder":"xbd","vnd.fuzzysheet":"fzs","vnd.genomatix.tuxedo":"txd","vnd.geogebra.file":"ggb","vnd.geogebra.tool":"ggt","vnd.geometry-explorer":["gex","gre"],"vnd.geonext":"gxt","vnd.geoplan":"g2w","vnd.geospace":"g3w","vnd.gmx":"gmx","vnd.grafeq":["gqf","gqs"],"vnd.groove-account":"gac","vnd.groove-help":"ghf","vnd.groove-identity-message":"gim","vnd.groove-injector":"grv","vnd.groove-tool-message":"gtm","vnd.groove-tool-template":"tpl","vnd.groove-vcard":"vcg","vnd.hal+xml":"hal","vnd.handheld-entertainment+xml":"zmm","vnd.hbci":"hbci","vnd.hhe.lesson-player":"les","vnd.hp-hpgl":"hpgl","vnd.hp-hpid":"hpid","vnd.hp-hps":"hps","vnd.hp-jlyt":"jlt","vnd.hp-pcl":"pcl","vnd.hp-pclxl":"pclxl","vnd.hydrostatix.sof-data":"sfd-hdstx","vnd.ibm.minipay":"mpy","vnd.ibm.modcap":["afp","listafp","list3820"],"vnd.ibm.rights-management":"irm","vnd.ibm.secure-container":"sc","vnd.iccprofile":["icc","icm"],"vnd.igloader":"igl","vnd.immervision-ivp":"ivp","vnd.immervision-ivu":"ivu","vnd.insors.igm":"igm","vnd.intercon.formnet":["xpw","xpx"],"vnd.intergeo":"i2g","vnd.intu.qbo":"qbo","vnd.intu.qfx":"qfx","vnd.ipunplugged.rcprofile":"rcprofile","vnd.irepository.package+xml":"irp","vnd.is-xpr":"xpr","vnd.isac.fcs":"fcs","vnd.jam":"jam","vnd.jcp.javame.midlet-rms":"rms","vnd.jisp":"jisp","vnd.joost.joda-archive":"joda","vnd.kahootz":["ktz","ktr"],"vnd.kde.karbon":"karbon","vnd.kde.kchart":"chrt","vnd.kde.kformula":"kfo","vnd.kde.kivio":"flw","vnd.kde.kontour":"kon","vnd.kde.kpresenter":["kpr","kpt"],"vnd.kde.kspread":"ksp","vnd.kde.kword":["kwd","kwt"],"vnd.kenameaapp":"htke","vnd.kidspiration":"kia","vnd.kinar":["kne","knp"],"vnd.koan":["skp","skd","skt","skm"],"vnd.kodak-descriptor":"sse","vnd.las.las+xml":"lasxml","vnd.llamagraphics.life-balance.desktop":"lbd","vnd.llamagraphics.life-balance.exchange+xml":"lbe","vnd.lotus-1-2-3":"123","vnd.lotus-approach":"apr","vnd.lotus-freelance":"pre","vnd.lotus-notes":"nsf","vnd.lotus-organizer":"org","vnd.lotus-screencam":"scm","vnd.lotus-wordpro":"lwp","vnd.macports.portpkg":"portpkg","vnd.mcd":"mcd","vnd.medcalcdata":"mc1","vnd.mediastation.cdkey":"cdkey","vnd.mfer":"mwf","vnd.mfmp":"mfm","vnd.micrografx.flo":"flo","vnd.micrografx.igx":"igx","vnd.mif":"mif","vnd.mobius.daf":"daf","vnd.mobius.dis":"dis","vnd.mobius.mbk":"mbk","vnd.mobius.mqy":"mqy","vnd.mobius.msl":"msl","vnd.mobius.plc":"plc","vnd.mobius.txf":"txf","vnd.mophun.application":"mpn","vnd.mophun.certificate":"mpc","vnd.ms-artgalry":"cil","vnd.ms-cab-compressed":"cab","vnd.ms-excel.addin.macroenabled.12":"xlam","vnd.ms-excel.sheet.binary.macroenabled.12":"xlsb","vnd.ms-excel.sheet.macroenabled.12":"xlsm","vnd.ms-excel.template.macroenabled.12":"xltm","vnd.ms-fontobject":"eot","vnd.ms-htmlhelp":"chm","vnd.ms-ims":"ims","vnd.ms-lrm":"lrm","vnd.ms-officetheme":"thmx","vnd.ms-powerpoint.addin.macroenabled.12":"ppam","vnd.ms-powerpoint.presentation.macroenabled.12":"pptm","vnd.ms-powerpoint.slide.macroenabled.12":"sldm","vnd.ms-powerpoint.slideshow.macroenabled.12":"ppsm","vnd.ms-powerpoint.template.macroenabled.12":"potm","vnd.ms-project":["mpp","mpt"],"vnd.ms-word.document.macroenabled.12":"docm","vnd.ms-word.template.macroenabled.12":"dotm","vnd.ms-works":["wps","wks","wcm","wdb"],"vnd.ms-wpl":"wpl","vnd.ms-xpsdocument":"xps","vnd.mseq":"mseq","vnd.musician":"mus","vnd.muvee.style":"msty","vnd.mynfc":"taglet","vnd.neurolanguage.nlu":"nlu","vnd.nitf":["ntf","nitf"],"vnd.noblenet-directory":"nnd","vnd.noblenet-sealer":"nns","vnd.noblenet-web":"nnw","vnd.nokia.n-gage.data":"ngdat","vnd.nokia.n-gage.symbian.install":"n-gage","vnd.nokia.radio-preset":"rpst","vnd.nokia.radio-presets":"rpss","vnd.novadigm.edm":"edm","vnd.novadigm.edx":"edx","vnd.novadigm.ext":"ext","vnd.oasis.opendocument.chart-template":"otc","vnd.oasis.opendocument.formula-template":"odft","vnd.oasis.opendocument.image-template":"oti","vnd.olpc-sugar":"xo","vnd.oma.dd2+xml":"dd2","vnd.openofficeorg.extension":"oxt","vnd.openxmlformats-officedocument.presentationml.slide":"sldx","vnd.osgeo.mapguide.package":"mgp","vnd.osgi.dp":"dp","vnd.osgi.subsystem":"esa","vnd.palm":["pdb","pqa","oprc"],"vnd.pawaafile":"paw","vnd.pg.format":"str","vnd.pg.osasli":"ei6","vnd.picsel":"efif","vnd.pmi.widget":"wg","vnd.pocketlearn":"plf","vnd.powerbuilder6":"pbd","vnd.previewsystems.box":"box","vnd.proteus.magazine":"mgz","vnd.publishare-delta-tree":"qps","vnd.pvi.ptid1":"ptid","vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"vnd.realvnc.bed":"bed","vnd.recordare.musicxml":"mxl","vnd.recordare.musicxml+xml":"musicxml","vnd.rig.cryptonote":"cryptonote","vnd.rn-realmedia":"rm","vnd.rn-realmedia-vbr":"rmvb","vnd.route66.link66+xml":"link66","vnd.sailingtracker.track":"st","vnd.seemail":"see","vnd.sema":"sema","vnd.semd":"semd","vnd.semf":"semf","vnd.shana.informed.formdata":"ifm","vnd.shana.informed.formtemplate":"itp","vnd.shana.informed.interchange":"iif","vnd.shana.informed.package":"ipk","vnd.simtech-mindmapper":["twd","twds"],"vnd.smart.teacher":"teacher","vnd.solent.sdkm+xml":["sdkm","sdkd"],"vnd.spotfire.dxp":"dxp","vnd.spotfire.sfs":"sfs","vnd.stepmania.package":"smzip","vnd.stepmania.stepchart":"sm","vnd.sus-calendar":["sus","susp"],"vnd.svd":"svd","vnd.syncml+xml":"xsm","vnd.syncml.dm+wbxml":"bdm","vnd.syncml.dm+xml":"xdm","vnd.tao.intent-module-archive":"tao","vnd.tcpdump.pcap":["pcap","cap","dmp"],"vnd.tmobile-livetv":"tmo","vnd.trid.tpt":"tpt","vnd.triscape.mxs":"mxs","vnd.trueapp":"tra","vnd.ufdl":["ufd","ufdl"],"vnd.uiq.theme":"utz","vnd.umajin":"umj","vnd.unity":"unityweb","vnd.uoml+xml":"uoml","vnd.vcx":"vcx","vnd.visionary":"vis","vnd.vsf":"vsf","vnd.webturbo":"wtb","vnd.wolfram.player":"nbp","vnd.wqd":"wqd","vnd.wt.stf":"stf","vnd.xara":"xar","vnd.xfdl":"xfdl","vnd.yamaha.hv-dic":"hvd","vnd.yamaha.hv-script":"hvs","vnd.yamaha.hv-voice":"hvp","vnd.yamaha.openscoreformat":"osf","vnd.yamaha.openscoreformat.osfpvg+xml":"osfpvg","vnd.yamaha.smaf-audio":"saf","vnd.yamaha.smaf-phrase":"spf","vnd.yellowriver-custom-menu":"cmp","vnd.zul":["zir","zirz"],"vnd.zzazz.deck+xml":"zaz","voicexml+xml":"vxml",widget:"wgt",winhlp:"hlp","wsdl+xml":"wsdl","wspolicy+xml":"wspolicy","x-ace-compressed":"ace","x-authorware-bin":["aab","x32","u32","vox"],"x-authorware-map":"aam","x-authorware-seg":"aas","x-blorb":["blb","blorb"],"x-bzip":"bz","x-bzip2":["bz2","boz"],"x-cfs-compressed":"cfs","x-chat":"chat","x-conference":"nsc","x-dgc-compressed":"dgc","x-dtbncx+xml":"ncx","x-dtbook+xml":"dtb","x-dtbresource+xml":"res","x-eva":"eva","x-font-bdf":"bdf","x-font-ghostscript":"gsf","x-font-linux-psf":"psf","x-font-otf":"otf","x-font-pcf":"pcf","x-font-snf":"snf","x-font-ttf":["ttf","ttc"],"x-font-type1":["pfa","pfb","pfm","afm"],"x-font-woff":"woff","x-freearc":"arc","x-gca-compressed":"gca","x-glulx":"ulx","x-gramps-xml":"gramps","x-install-instructions":"install","x-lzh-compressed":["lzh","lha"],"x-mie":"mie","x-mobipocket-ebook":["prc","mobi"],"x-ms-application":"application","x-ms-shortcut":"lnk","x-ms-xbap":"xbap","x-msbinder":"obd","x-mscardfile":"crd","x-msclip":"clp","x-msdownload":["exe","dll","com","bat","msi"],"x-msmediaview":["mvb","m13","m14"],"x-msmetafile":["wmf","wmz","emf","emz"],"x-msmoney":"mny","x-mspublisher":"pub","x-msschedule":"scd","x-msterminal":"trm","x-mswrite":"wri","x-nzb":"nzb","x-pkcs12":["p12","pfx"],"x-pkcs7-certificates":["p7b","spc"],"x-research-info-systems":"ris","x-silverlight-app":"xap","x-sql":"sql","x-stuffitx":"sitx","x-subrip":"srt","x-t3vm-image":"t3","x-tads":"gam","x-tex":"tex","x-tex-tfm":"tfm","x-tgif":"obj","x-xliff+xml":"xlf","x-xz":"xz","x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"xaml+xml":"xaml","xcap-diff+xml":"xdf","xenc+xml":"xenc","xml-dtd":"dtd","xop+xml":"xop","xproc+xml":"xpl","xslt+xml":"xslt","xv+xml":["mxml","xhvml","xvml","xvm"],yang:"yang","yin+xml":"yin",envoy:"evy",fractals:"fif","internet-property-stream":"acx",olescript:"axs","vnd.ms-outlook":"msg","vnd.ms-pkicertstore":"sst","x-compress":"z","x-compressed":"tgz","x-gzip":"gz","x-perfmon":["pma","pmc","pml","pmr","pmw"],"x-pkcs7-mime":["p7c","p7m"],"ynd.ms-pkipko":"pko"},audio:{amr:"amr","amr-wb":"awb",annodex:"axa",basic:["au","snd"],flac:"flac",midi:["mid","midi","kar","rmi"],mpeg:["mpga","mpega","mp2","mp3","m4a","mp2a","m2a","m3a"],mpegurl:"m3u",ogg:["oga","ogg","spx"],"prs.sid":"sid","x-aiff":["aif","aiff","aifc"],"x-gsm":"gsm","x-ms-wma":"wma","x-ms-wax":"wax","x-pn-realaudio":"ram","x-realaudio":"ra","x-sd2":"sd2","x-wav":"wav",adpcm:"adp",mp4:"mp4a",s3m:"s3m",silk:"sil","vnd.dece.audio":["uva","uvva"],"vnd.digital-winds":"eol","vnd.dra":"dra","vnd.dts":"dts","vnd.dts.hd":"dtshd","vnd.lucent.voice":"lvp","vnd.ms-playready.media.pya":"pya","vnd.nuera.ecelp4800":"ecelp4800","vnd.nuera.ecelp7470":"ecelp7470","vnd.nuera.ecelp9600":"ecelp9600","vnd.rip":"rip",webm:"weba","x-aac":"aac","x-caf":"caf","x-matroska":"mka","x-pn-realaudio-plugin":"rmp",xm:"xm",mid:["mid","rmi"]},chemical:{"x-alchemy":"alc","x-cache":["cac","cache"],"x-cache-csf":"csf","x-cactvs-binary":["cbin","cascii","ctab"],"x-cdx":"cdx","x-chem3d":"c3d","x-cif":"cif","x-cmdf":"cmdf","x-cml":"cml","x-compass":"cpa","x-crossfire":"bsd","x-csml":["csml","csm"],"x-ctx":"ctx","x-cxf":["cxf","cef"],"x-embl-dl-nucleotide":["emb","embl"],"x-gamess-input":["inp","gam","gamin"],"x-gaussian-checkpoint":["fch","fchk"],"x-gaussian-cube":"cub","x-gaussian-input":["gau","gjc","gjf"],"x-gaussian-log":"gal","x-gcg8-sequence":"gcg","x-genbank":"gen","x-hin":"hin","x-isostar":["istr","ist"],"x-jcamp-dx":["jdx","dx"],"x-kinemage":"kin","x-macmolecule":"mcm","x-macromodel-input":["mmd","mmod"],"x-mdl-molfile":"mol","x-mdl-rdfile":"rd","x-mdl-rxnfile":"rxn","x-mdl-sdfile":["sd","sdf"],"x-mdl-tgf":"tgf","x-mmcif":"mcif","x-mol2":"mol2","x-molconn-Z":"b","x-mopac-graph":"gpt","x-mopac-input":["mop","mopcrt","mpc","zmt"],"x-mopac-out":"moo","x-ncbi-asn1":"asn","x-ncbi-asn1-ascii":["prt","ent"],"x-ncbi-asn1-binary":["val","aso"],"x-pdb":["pdb","ent"],"x-rosdal":"ros","x-swissprot":"sw","x-vamas-iso14976":"vms","x-vmd":"vmd","x-xtel":"xtel","x-xyz":"xyz"},image:{gif:"gif",ief:"ief",jpeg:["jpeg","jpg","jpe"],pcx:"pcx",png:"png","svg+xml":["svg","svgz"],tiff:["tiff","tif"],"vnd.djvu":["djvu","djv"],"vnd.wap.wbmp":"wbmp","x-canon-cr2":"cr2","x-canon-crw":"crw","x-cmu-raster":"ras","x-coreldraw":"cdr","x-coreldrawpattern":"pat","x-coreldrawtemplate":"cdt","x-corelphotopaint":"cpt","x-epson-erf":"erf","x-icon":"ico","x-jg":"art","x-jng":"jng","x-nikon-nef":"nef","x-olympus-orf":"orf","x-photoshop":"psd","x-portable-anymap":"pnm","x-portable-bitmap":"pbm","x-portable-graymap":"pgm","x-portable-pixmap":"ppm","x-rgb":"rgb","x-xbitmap":"xbm","x-xpixmap":"xpm","x-xwindowdump":"xwd",bmp:"bmp",cgm:"cgm",g3fax:"g3",ktx:"ktx","prs.btif":"btif",sgi:"sgi","vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"vnd.dwg":"dwg","vnd.dxf":"dxf","vnd.fastbidsheet":"fbs","vnd.fpx":"fpx","vnd.fst":"fst","vnd.fujixerox.edmics-mmr":"mmr","vnd.fujixerox.edmics-rlc":"rlc","vnd.ms-modi":"mdi","vnd.ms-photo":"wdp","vnd.net-fpx":"npx","vnd.xiff":"xif",webp:"webp","x-3ds":"3ds","x-cmx":"cmx","x-freehand":["fh","fhc","fh4","fh5","fh7"],"x-pict":["pic","pct"],"x-tga":"tga","cis-cod":"cod",pipeg:"jfif"},message:{rfc822:["eml","mime","mht","mhtml","nws"]},model:{iges:["igs","iges"],mesh:["msh","mesh","silo"],vrml:["wrl","vrml"],"x3d+vrml":["x3dv","x3dvz"],"x3d+xml":["x3d","x3dz"],"x3d+binary":["x3db","x3dbz"],"vnd.collada+xml":"dae","vnd.dwf":"dwf","vnd.gdl":"gdl","vnd.gtw":"gtw","vnd.mts":"mts","vnd.vtu":"vtu"},text:{"cache-manifest":["manifest","appcache"],calendar:["ics","icz","ifb"],css:"css",csv:"csv",h323:"323",html:["html","htm","shtml","stm"],iuls:"uls",mathml:"mml",plain:["txt","text","brf","conf","def","list","log","in","bas"],richtext:"rtx",scriptlet:["sct","wsc"],texmacs:["tm","ts"],"tab-separated-values":"tsv","vnd.sun.j2me.app-descriptor":"jad","vnd.wap.wml":"wml","vnd.wap.wmlscript":"wmls","x-bibtex":"bib","x-boo":"boo","x-c++hdr":["h++","hpp","hxx","hh"],"x-c++src":["c++","cpp","cxx","cc"],"x-component":"htc","x-dsrc":"d","x-diff":["diff","patch"],"x-haskell":"hs","x-java":"java","x-literate-haskell":"lhs","x-moc":"moc","x-pascal":["p","pas"],"x-pcs-gcd":"gcd","x-perl":["pl","pm"],"x-python":"py","x-scala":"scala","x-setext":"etx","x-tcl":["tcl","tk"],"x-tex":["tex","ltx","sty","cls"],"x-vcalendar":"vcs","x-vcard":"vcf",n3:"n3","prs.lines.tag":"dsc",sgml:["sgml","sgm"],troff:["t","tr","roff","man","me","ms"],turtle:"ttl","uri-list":["uri","uris","urls"],vcard:"vcard","vnd.curl":"curl","vnd.curl.dcurl":"dcurl","vnd.curl.scurl":"scurl","vnd.curl.mcurl":"mcurl","vnd.dvb.subtitle":"sub","vnd.fly":"fly","vnd.fmi.flexstor":"flx","vnd.graphviz":"gv","vnd.in3d.3dml":"3dml","vnd.in3d.spot":"spot","x-asm":["s","asm"],"x-c":["c","cc","cxx","cpp","h","hh","dic"],"x-fortran":["f","for","f77","f90"],"x-opml":"opml","x-nfo":"nfo","x-sfv":"sfv","x-uuencode":"uu",webviewhtml:"htt"},video:{avif:".avif","3gpp":"3gp",annodex:"axv",dl:"dl",dv:["dif","dv"],fli:"fli",gl:"gl",mpeg:["mpeg","mpg","mpe","m1v","m2v","mp2","mpa","mpv2"],mp4:["mp4","mp4v","mpg4"],quicktime:["qt","mov"],ogg:"ogv","vnd.mpegurl":["mxu","m4u"],"x-flv":"flv","x-la-asf":["lsf","lsx"],"x-mng":"mng","x-ms-asf":["asf","asx","asr"],"x-ms-wm":"wm","x-ms-wmv":"wmv","x-ms-wmx":"wmx","x-ms-wvx":"wvx","x-msvideo":"avi","x-sgi-movie":"movie","x-matroska":["mpv","mkv","mk3d","mks"],"3gpp2":"3g2",h261:"h261",h263:"h263",h264:"h264",jpeg:"jpgv",jpm:["jpm","jpgm"],mj2:["mj2","mjp2"],"vnd.dece.hd":["uvh","uvvh"],"vnd.dece.mobile":["uvm","uvvm"],"vnd.dece.pd":["uvp","uvvp"],"vnd.dece.sd":["uvs","uvvs"],"vnd.dece.video":["uvv","uvvv"],"vnd.dvb.file":"dvb","vnd.fvt":"fvt","vnd.ms-playready.media.pyv":"pyv","vnd.uvvu.mp4":["uvu","uvvu"],"vnd.vivo":"viv",webm:"webm","x-f4v":"f4v","x-m4v":"m4v","x-ms-vob":"vob","x-smv":"smv"},"x-conference":{"x-cooltalk":"ice"},"x-world":{"x-vrml":["vrm","vrml","wrl","flr","wrz","xaf","xof"]}},Ie=(()=>{const e={};for(const t in Ue)if(Ue.hasOwnProperty(t))for(const n in Ue[t])if(Ue[t].hasOwnProperty(n)){const r=Ue[t][n];if("string"==typeof r)e[r]=t+"/"+n;else for(let i=0;ie;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;Le[e]=t}class Ne{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^Le[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Oe extends z{constructor(){let e;const t=new Ne;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new p(4);new w(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function je(e){if(void 0===v){const t=new p((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=Pe.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=>a.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 i=0;i>>t),n=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=Pe.getPartial(i);return r.push(Pe.partial(t+s&31,t+s>32?n:r.pop(),1)),r}},Me={bytes:{fromBits(e){const t=Pe.bitLength(e)/8,n=new p(t);let r;for(let i=0;t>i;i++)0==(3&i)&&(r=e[i/4]),n[i]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new u("Cannot hash more than 2^53 - 1 bits");const s=new h(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=Pe.concat(t,[Pe.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return 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){return t<>>32-e}_block(e){const n=this,r=n._h,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let s=r[0],o=r[1],c=r[2],l=r[3],d=r[4];for(let e=0;79>=e;e++){16>e||(i[e]=n._S(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n._S(5,s)+n._f(e,o,c,l)+d+i[e]+n._key[a.floor(e/20)]|0;d=l,l=c,c=n._S(30,o),o=s,s=t}r[0]=r[0]+s|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+d|0}},Ke={getRandomValues(e){const t=new h(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)*(a.random()>.5?1:-1))};for(let r,i=0;inew Ve.hmacSha1(Me.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new u("invalid params to pbkdf2");const i=1+(r>>5)<<2;let s,a,o,c,l;const d=new ArrayBuffer(i),f=new w(d);let p=0;const m=Pe;for(t=Me.bytes.toBits(t),l=1;(i||1)>p;l++){for(s=a=e.encrypt(m.concat(t,[l])),o=1;n>o;o++)for(a=e.encrypt(a),c=0;cp&&oi&&(e=(new n).update(e).finalize());for(let t=0;i>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 u("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},He=void 0!==_&&"function"==typeof _.getRandomValues,Ze="Invalid password",Ye="Invalid signature",Xe="zipjs-abort-check-password";function Ge(e){return He?_.getRandomValues(e):Ke.getRandomValues(e)}const Je=16,$e={name:"PBKDF2"},Qe=n.assign({hash:{name:"HMAC"}},$e),et=n.assign({iterations:1e3,hash:{name:"SHA-1"}},$e),tt=["deriveBits"],nt=[8,12,16],rt=[16,24,32],it=10,st=[0,0,0,0],at="undefined",ot="function",ct=typeof _!=at,lt=ct&&_.subtle,dt=ct&&typeof lt!=at,ft=Me.bytes,ut=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],i=e.length;let s,a,o,c=1;if(4!==i&&6!==i&&8!==i)throw new u("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],s=i;4*i+28>s;s++){let e=a[s-1];(s%i==0||8===i&&s%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],s%i==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[s]=a[s-i]^e}for(let e=0;s;e++,s--){const t=a[3&e?s:s-4];o[e]=4>=s||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],i=[],s=[];let a,o,c,l;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let d=a=0;!n[d];d^=o||1,a=s[a]||1){let s=a^a<<1^a<<2^a<<3^a<<4;s=s>>8^255&s^99,n[d]=s,r[s]=d,l=i[c=i[o=i[d]]];let f=16843009*l^65537*c^257*o^16843008*d,u=257*i[s]^16843008*s;for(let n=0;4>n;n++)e[n][d]=u=u<<24^u>>>8,t[n][s]=f=f<<24^f>>>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 u("invalid aes block size");const n=this._key[t],r=n.length/4-2,i=[0,0,0,0],s=this._tables[t],a=s[0],o=s[1],c=s[2],l=s[3],d=s[4];let f,p,m,h=e[0]^n[0],w=e[t?3:1]^n[1],x=e[2]^n[2],g=e[t?1:3]^n[3],v=4;for(let e=0;r>e;e++)f=a[h>>>24]^o[w>>16&255]^c[x>>8&255]^l[255&g]^n[v],p=a[w>>>24]^o[x>>16&255]^c[g>>8&255]^l[255&h]^n[v+1],m=a[x>>>24]^o[g>>16&255]^c[h>>8&255]^l[255&w]^n[v+2],g=a[g>>>24]^o[h>>16&255]^c[w>>8&255]^l[255&x]^n[v+3],v+=4,h=f,w=p,x=m;for(let e=0;4>e;e++)i[t?3&-e:e]=d[h>>>24]<<24^d[w>>16&255]<<16^d[x>>8&255]<<8^d[255&g]^n[v++],f=h,h=w,w=x,x=g,g=f;return i}},pt=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 i=Pe.bitLength(t);for(let i=0;r>i;i+=4){this.incCounter(n);const r=e.encrypt(n);t[i]^=r[0],t[i+1]^=r[1],t[i+2]^=r[2],t[i+3]^=r[3]}return Pe.clamp(t,i)}},mt=Ve.hmacSha1;let ht=ct&&dt&&typeof lt.importKey==ot,wt=ct&&dt&&typeof lt.deriveBits==ot;class xt extends z{constructor({password:e,signed:t,encryptionStrength:r,checkPasswordOnly:i}){super({start(){n.assign(this,{ready:new g((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:o}=n;r?(await(async(e,t,n,r)=>{const i=await bt(e,t,n,_t(r,0,nt[t])),s=_t(r,nt[t]);if(i[0]!=s[0]||i[1]!=s[1])throw new u(Ze)})(n,s,r,_t(e,0,nt[s]+2)),e=_t(e,nt[s]+2),i?t.error(new u(Xe)):a()):await o;const c=new p(e.length-it-(e.length-it)%Je);t.enqueue(vt(n,e,c,0,it,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:i,ready:s}=this;await s;const a=_t(i,0,i.length-it),o=_t(i,i.length-it);let c=new p;if(a.length){const e=zt(ft,a);r.update(e);const t=n.update(e);c=kt(ft,t)}if(t){const e=_t(kt(ft,r.digest()),0,it);for(let t=0;it>t;t++)if(e[t]!=o[t])throw new u(Ye)}e.enqueue(c)}})}}class gt extends z{constructor({password:e,encryptionStrength:t}){let r;super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new p})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:s,ready:a}=n;let o=new p;r?(o=await(async(e,t,n)=>{const r=Ge(new p(nt[t]));return yt(r,await bt(e,t,n,r))})(n,i,r),s()):await a;const c=new p(o.length+e.length-e.length%Je);c.set(o,0),t.enqueue(vt(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:i,ready:s}=this;await s;let a=new p;if(i.length){const e=t.update(zt(ft,i));n.update(e),a=kt(ft,e)}r.signature=kt(ft,n.digest()).slice(0,it),e.enqueue(yt(a,r.signature))}}),r=this}}function vt(e,t,n,r,i,s){const{ctr:a,hmac:o,pending:c}=e,l=t.length-i;let d;for(c.length&&(t=yt(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new p(t)).set(n,0)}return e})(n,l-l%Je)),d=0;l-Je>=d;d+=Je){const e=zt(ft,_t(t,d,d+Je));s&&o.update(e);const i=a.update(e);s||o.update(i),n.set(kt(ft,i),d+r)}return e.pending=_t(t,d),n}async function bt(e,r,i,s){e.password=null;const a=je(i),o=await(async(e,t,n,r,i)=>{if(!ht)return Ve.importKey(t);try{return await lt.importKey("raw",t,n,!1,i)}catch(e){return ht=!1,Ve.importKey(t)}})(0,a,Qe,0,tt),c=await(async(e,t,n)=>{if(!wt)return Ve.pbkdf2(t,e.salt,et.iterations,n);try{return await lt.deriveBits(e,t,n)}catch(r){return wt=!1,Ve.pbkdf2(t,e.salt,et.iterations,n)}})(n.assign({salt:s},et),o,8*(2*rt[r]+2)),l=new p(c),d=zt(ft,_t(l,0,rt[r])),f=zt(ft,_t(l,rt[r],2*rt[r])),u=_t(l,2*rt[r]);return n.assign(e,{keys:{key:d,authentication:f,passwordVerification:u},ctr:new pt(new ut(d),t.from(st)),hmac:new mt(f)}),u}function yt(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 _t(e,t,n){return e.subarray(t,n)}function kt(e,t){return e.fromBits(t)}function zt(e,t){return e.toBits(t)}class St extends z{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),At(this,e)},transform(e,t){const n=this;if(n.password){const t=Dt(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new u(Ze);e=e.subarray(12)}r?t.error(new u(Xe)):t.enqueue(Dt(n,e))}})}}class Ct extends z{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),At(this,e)},transform(e,t){const n=this;let r,i;if(n.password){n.password=null;const t=Ge(new p(12));t[11]=n.passwordVerification,r=new p(e.length+t.length),r.set(Rt(n,t),0),i=12}else r=new p(e.length),i=0;r.set(Rt(n,e),i),t.enqueue(r)}})}}function Dt(e,t){const n=new p(t.length);for(let r=0;r>>24]),i=~e.crcKey2.get(),e.keys=[n,r,i]}function Ft(e){const t=2|e.keys[2];return Et(a.imul(t,1^t)>>>8)}function Et(e){return 255&e}function Tt(e){return 4294967295&e}const qt="deflate-raw";class Ut extends z{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:i,encrypted:s,useCompressionStream:a,zipCrypto:o,signed:c,level:l}=e,d=this;let f,u,p=Lt(super.readable);s&&!o||!c||(f=new Oe,p=jt(p,f)),i&&(p=Ot(p,a,{level:l,chunkSize:t},r,n)),s&&(o?p=jt(p,new Ct(e)):(u=new gt(e),p=jt(p,u))),Nt(d,p,(async()=>{let e;s&&!o&&(e=u.signature),s&&!o||!c||(e=new w(f.value.buffer).getUint32(0)),d.signature=e}))}}class It extends z{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:s,signed:a,signature:o,compressed:c,useCompressionStream:l}=e;let d,f,p=Lt(super.readable);s&&(i?p=jt(p,new St(e)):(f=new xt(e),p=jt(p,f))),c&&(p=Ot(p,l,{chunkSize:t},r,n)),s&&!i||!a||(d=new Oe,p=jt(p,d)),Nt(this,p,(async()=>{if((!s||i)&&a){const e=new w(d.value.buffer);if(o!=e.getUint32(0,!1))throw new u(Ye)}}))}}function Lt(e){return jt(e,new z({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function Nt(e,t,r){t=jt(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Ot(e,t,n,r,i){try{e=jt(e,new(t&&r?r:i)(qt,n))}catch(r){if(!t)throw r;e=jt(e,new i(qt,n))}return e}function jt(e,t){return e.pipeThrough(t)}const Pt="data",Mt="deflate",Bt="inflate";class Kt extends z{constructor(e,t){super({});const r=this,{codecType:i}=e;let s;i.startsWith(Mt)?s=Ut:i.startsWith(Bt)&&(s=It);let a=0;const o=new s(e,t),c=super.readable,l=new z({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;n.assign(r,{signature:e,size:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(o).pipeThrough(l)})}}const Vt=typeof W!=Se;class Ht{constructor(e,{readable:t,writable:r},{options:i,config:s,streamOptions:a,useWebWorkers:o,transferStreams:c,scripts:l},d){const{signal:f}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Zt(t,a,s),{signal:f}),writable:r,options:n.assign({},i),scripts:l,transferStreams:c,terminate(){const{worker:t,busy:n}=e;t&&!n&&(t.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,d(e)}}),(o&&Vt?Gt:Xt)(e,s)}}class Zt extends z{constructor(e,{onstart:t,onprogress:n,size:r,onend:i},{chunkSize:s}){let a=0;super({start(){t&&Yt(t,r)},async transform(e,t){a+=e.length,n&&await Yt(n,a,r),t.enqueue(e)},flush(){e.size=a,i&&Yt(i,a)}},{highWaterMark:1,size:()=>s})}}async function Yt(e,...t){try{await e(...t)}catch(e){}}function Xt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},i)=>{const s=new Kt(e,i);try{await t.pipeThrough(s).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:e,size:i}=s;return{signature:e,size:i}}finally{r()}})(e,t)}}function Gt(e,{baseURL:t,chunkSize:r}){return e.interface||n.assign(e,{worker:Qt(e.scripts[0],t,e),interface:{run:()=>(async(e,t)=>{let r,i;const s=new g(((e,t)=>{r=e,i=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:i,result:s});const{readable:a,options:o,scripts:c}=e,{writable:l,closed:d}=(e=>{const t=e.getWriter();let n;const r=new g((e=>n=e));return{writable:new C({async write(e){await t.ready,await t.write(e)},close(){t.releaseLock(),n()},abort:e=>t.abort(e)}),closed:r}})(e.writable);en({type:"start",scripts:c.slice(1),options:o,config:t,readable:a,writable:l},e)||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const f=await s;try{await l.getWriter().close()}catch(e){}return await d,f})(e,{chunkSize:r})}}),e.interface}let Jt=!0,$t=!0;function Qt(e,t,r){const i={type:"module"};let s,a;typeof e==Ce&&(e=e());try{s=new f(e,t)}catch(t){s=e}if(Jt)try{a=new W(s)}catch(e){Jt=!1,a=new W(s,i)}else a=new W(s,i);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:i,messageId:s,result:a,error:o}=e,{reader:c,writer:l,resolveResult:d,rejectResult:f,onTaskFinished:m}=t;try{if(o){const{message:e,stack:t,code:r,name:i}=o,s=new u(e);n.assign(s,{stack:t,code:r,name:i}),h(s)}else{if("pull"==r){const{value:e,done:n}=await c.read();en({type:Pt,value:e,done:n,messageId:s},t)}r==Pt&&(await l.ready,await l.write(new p(i)),en({type:"ack",messageId:s},t)),"close"==r&&h(null,a)}}catch(o){h(o)}function h(e,t){e?f(e):d(t),l&&l.releaseLock(),m()}})(e,r))),a}function en(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:i}){try{let{value:n,readable:r,writable:s}=e;const a=[];if(n&&(e.value=n.buffer,a.push(e.value)),i&&$t?(r&&a.push(r),s&&a.push(s)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch(n){$t=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let tn=[];const nn=[];let rn=0;async function sn(e,t){const{options:n,config:r}=t,{transferStreams:s,useWebWorkers:a,useCompressionStream:o,codecType:c,compressed:l,signed:d,encrypted:f}=n,{workerScripts:u,maxWorkers:p,terminateWorkerTimeout:m}=r;t.transferStreams=s||s===ze;const h=!(l||d||f||t.transferStreams);let w;t.useWebWorkers=!h&&(a||a===ze&&r.useWebWorkers),t.scripts=t.useWebWorkers&&u?u[c]:[],n.useCompressionStream=o||o===ze&&r.useCompressionStream;const x=tn.find((e=>!e.busy));if(x)an(x),w=new Ht(x,e,t,v);else if(tn.lengthnn.push({resolve:n,stream:e,workerOptions:t})));return w.run();function v(e){if(nn.length){const[{resolve:t,stream:n,workerOptions:r}]=nn.splice(0,1);t(new Ht(e,n,r,v))}else e.worker?(an(e),i.isFinite(m)&&m>=0&&(e.terminateTimeout=setTimeout((()=>{tn=tn.filter((t=>t!=e)),e.terminate()}),m))):tn=tn.filter((t=>t!=e))}}function an(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}function on(e,t,r){return class{constructor(i){const s=this;var a,o;a=i,o="level",("function"==typeof n.hasOwn?n.hasOwn(a,o):a.hasOwnProperty(o))&&void 0===i.level&&delete i.level,s.codec=new e(n.assign({},t,i)),r(s.codec,(e=>{if(s.pendingData){const t=s.pendingData;s.pendingData=new p(t.length+e.length);const{pendingData:n}=s;n.set(t,0),n.set(e,t.length)}else s.pendingData=new p(e)}))}append(e){return this.codec.push(e),i(this)}flush(){return this.codec.push(new p,!0),i(this)}};function i(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new p}}const cn="HTTP error ",ln="HTTP Range not supported",dn="Writer iterator completed too soon",fn="GET",un="bytes",pn=65536,mn="writable";class hn{constructor(){this.size=0}init(){this.initialized=!0}}class wn extends hn{get readable(){const e=this,{chunkSize:t=pn}=e,n=new S({start(){this.chunkOffset=0},async pull(r){const{offset:i=0,size:s,diskNumberStart:o}=n,{chunkOffset:c}=this;r.enqueue(await Vn(e,i+c,a.min(t,s-c),o)),c+t>s?r.close():this.chunkOffset+=t}});return n}}class xn extends hn{constructor(){super();const e=this,t=new C({write:t=>e.writeUint8Array(t)});n.defineProperty(e,mn,{get:()=>t})}writeUint8Array(){}}class gn extends wn{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:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,i=new p(t),s=4*a.floor(e/3),o=atob(r.substring(s+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(s/4);for(let e=c;c+t>e;e++)i[e-c]=o.charCodeAt(e);return i}}class vn extends xn{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,i=t.pending;const s=t.pending.length;for(t.pending="",n=0;n<3*a.floor((s+e.length)/3)-s;n++)i+=r.fromCharCode(e[n]);for(;n2?t.data+=k(i):t.pending=i}getData(){return this.data+k(this.pending)}}class bn extends wn{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,i=e||rt&&(s=s.slice(e,r)),new p(s)}}class yn extends hn{constructor(e){super();const t=new z,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,mn,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:r}).blob()}getData(){return this.blob}}class _n extends bn{constructor(e){super(new x([e],{type:"text/plain"}))}}class kn extends yn{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 g(((i,s)=>{n.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>s(t.error)}),t.readAsText(r,e)}))}}}class zn extends wn{constructor(e,t){super(),Cn(this,e,t)}async init(){await Dn(this,Un,Fn),super.init()}readUint8Array(e,t){return Rn(this,e,t,Un,Fn)}}class Sn extends wn{constructor(e,t){super(),Cn(this,e,t)}async init(){await Dn(this,In,En),super.init()}readUint8Array(e,t){return Rn(this,e,t,In,En)}}function Cn(e,t,r){const{preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a})}async function Dn(e,t,n){const{url:r,useRangeHeader:s,forceRangeRequests:a}=e;if((e=>{const{baseURL:t}=Fe(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n})(r)&&(s||a)){const{headers:r}=await t(fn,e,An(e));if(!a&&r.get("Accept-Ranges")!=un)throw new u(ln);{let s;const a=r.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(s=i(t))}}s===ze?await qn(e,t,n):e.size=s}}else await qn(e,t,n)}async function Rn(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,options:o}=e;if(s||a){const i=await r(fn,e,An(e,t,n));if(206!=i.status)throw new u(ln);return new p(await i.arrayBuffer())}{const{data:r}=e;return r||await i(e,o),new p(e.data.subarray(t,t+n))}}function An(e,t=0,r=1){return n.assign({},Wn(e),{Range:un+"="+t+"-"+(t+r-1)})}function Wn({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Fn(e){await Tn(e,Un)}async function En(e){await Tn(e,In)}async function Tn(e,t){const n=await t(fn,e,Wn(e));e.data=new p(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function qn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Wn(e))).headers.get("Content-Length");r?e.size=i(r):await n(e,e.options)}}async function Un(e,{options:t,url:r},i){const s=await fetch(r,n.assign({},t,{method:e,headers:i}));if(400>s.status)return s;throw 416==s.status?new u(ln):new u(cn+(s.statusText||s.status))}function In(e,{url:t},r){return new g(((i,s)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),i({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else s(416==a.status?new u(ln):new u(cn+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>s(e.detail?e.detail.error:new u("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class Ln extends wn{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Sn(e,t):new zn(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Nn extends wn{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class On extends xn{init(e=0){n.assign(this,{offset:0,array:new p(e)}),super.init()}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}}class jn extends wn{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await g.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:i}=this;let s,o=n;-1==o&&(o=i.length-1);let c=e;for(;c>=i[o].size;)c-=i[o].size,o++;const l=i[o],d=l.size;if(c+t>d){const i=d-c;s=new p(t),s.set(await Vn(l,c,i)),s.set(await r.readUint8Array(e+i,t-i,n),i)}else s=await Vn(l,c,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),s}}class Pn extends hn{constructor(e,t=4294967295){super();const r=this;let i,s,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new C({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function Mn(e,t){e.init&&!e.initialized&&await e.init(t)}function Bn(e){return t.isArray(e)&&(e=new jn(e)),e instanceof S&&(e={readable:e}),e}function Kn(e){e.writable===ze&&typeof e.next==Ce&&(e=new Pn(e)),e instanceof C&&(e={writable:e});const{writable:t}=e;return t.size===ze&&(t.size=0),e instanceof Pn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function Vn(e,t,n,r){return e.readUint8Array(t,n,r)}const Hn=jn,Zn=Pn,Yn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Xn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const mr="File format is not recognized",hr="End of central directory not found",wr="End of Zip64 central directory not found",xr="End of Zip64 central directory locator not found",gr="Central directory header not found",vr="Local file header not found",br="Zip64 extra field not found",yr="File contains encrypted entry",_r="Encryption method not supported",kr="Compression method not supported",zr="Split zip file",Sr="utf-8",Cr="cp437",Dr=[[er,ue],[tr,ue],[nr,ue],[rr,pe]],Rr={[pe]:{getValue:Or,bytes:4},[ue]:{getValue:jr,bytes:8}};class Ar{constructor(e,t={}){n.assign(this,{reader:Bn(e),options:t,config:Fe()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:i}=t;if(await Mn(r),r.size!==ze&&r.readUint8Array||(r=new bn(await new d(r.readable).blob()),await Mn(r)),22>r.size)throw new u(mr);r.chunkSize=Ee(i);const s=await(async(e,t,n)=>{const r=new p(4);return Pr(r).setUint32(0,101010256,!0),await i(22)||await i(a.min(1048582,n));async function i(t){const i=n-t,s=await Vn(e,i,t);for(let e=s.length-22;e>=0;e--)if(s[e]==r[0]&&s[e+1]==r[1]&&s[e+2]==r[2]&&s[e+3]==r[3])return{offset:i+e,buffer:s.slice(e,e+22).buffer}}})(r,0,r.size);if(!s)throw Or(Pr(await Vn(r,0,4)))==he?new u(zr):new u(hr);const o=Pr(s);let c=Or(o,12),l=Or(o,16);const f=s.offset,m=Nr(o,20),h=f+22+m;let w=Nr(o,4);const x=r.lastDiskNumber||0;let v=Nr(o,6),b=Nr(o,8),y=0,_=0;if(l==ue||c==ue||b==pe||v==pe){const e=Pr(await Vn(r,s.offset-20,20));if(Or(e,0)!=ge)throw new u(wr);l=jr(e,8);let t=await Vn(r,l,56,-1),n=Pr(t);const i=s.offset-20-56;if(Or(n,0)!=xe&&l!=i){const e=l;l=i,y=l-e,t=await Vn(r,l,56,-1),n=Pr(t)}if(Or(n,0)!=xe)throw new u(xr);w==pe&&(w=Or(n,16)),v==pe&&(v=Or(n,20)),b==pe&&(b=jr(n,32)),c==ue&&(c=jr(n,40)),l-=c}if(x!=w)throw new u(zr);if(0>l||l>=r.size)throw new u(mr);let k=0,z=await Vn(r,l,c,v),S=Pr(z);if(c){const e=s.offset-c;if(Or(S,k)!=we&&l!=e){const t=l;l=e,y=l-t,z=await Vn(r,l,c,v),S=Pr(z)}}const C=s.offset-l-(r.lastDiskOffset||0);if(c==C||0>C||(c=C,z=await Vn(r,l,c,v),S=Pr(z)),0>l||l>=r.size)throw new u(mr);const D=qr(t,e,"filenameEncoding"),R=qr(t,e,"commentEncoding");for(let s=0;b>s;s++){const o=new Wr(r,i,t.options);if(Or(S,k)!=we)throw new u(gr);Fr(o,S,k+6);const c=!!o.bitFlag.languageEncodingFlag,l=k+46,d=l+o.filenameLength,f=d+o.extraFieldLength,p=Nr(S,k+4),m=0==(0&p),h=z.subarray(l,d),w=Nr(S,k+32),x=f+w,v=z.subarray(f,x),C=c,A=c,W=m&&16==(16&Lr(S,k+38)),F=Or(S,k+42)+y;n.assign(o,{versionMadeBy:p,msDosCompatible:m,compressedSize:0,uncompressedSize:0,commentLength:w,directory:W,offset:F,diskNumberStart:Nr(S,k+34),internalFileAttribute:Nr(S,k+36),externalFileAttribute:Or(S,k+38),rawFilename:h,filenameUTF8:C,commentUTF8:A,rawExtraField:z.subarray(d,f)});const[E,T]=await g.all([Xn(h,C?Sr:D||Cr),Xn(v,A?Sr:R||Cr)]);n.assign(o,{rawComment:v,filename:E,comment:T,directory:W||E.endsWith(ye)}),_=a.max(F,_),await Er(o,o,S,k+6);const q=new pr(o);q.getData=(e,t)=>o.getData(e,q,t),k=x;const{onprogress:U}=e;if(U)try{await U(s+1,b,new pr(o))}catch(e){}yield q}const A=qr(t,e,"extractPrependedData"),W=qr(t,e,"extractAppendedData");return A&&(t.prependedData=_>0?await Vn(r,0,_):new p),t.comment=m?await Vn(r,f+22,m):new p,W&&(t.appendedData=h>>8&255:m>>>24&255),signature:m,compressed:0!=l,encrypted:y,useWebWorkers:qr(i,r,"useWebWorkers"),useCompressionStream:qr(i,r,"useCompressionStream"),transferStreams:qr(i,r,"transferStreams"),checkPasswordOnly:R},config:d,streamOptions:{signal:D,size:z,onstart:W,onprogress:F,onend:E}};let q=0;try{({outputSize:q}=await sn({readable:S,writable:A},T))}catch(e){if(!R||e.message!=Xe)throw e}finally{const e=qr(i,r,"preventClose");A.size+=q,e||A.locked||await A.getWriter().close()}return R?void 0:e.getData?e.getData():A}}function Fr(e,t,r){const i=e.rawBitFlag=Nr(t,r+2),s=1==(1&i),a=Or(t,r+6);n.assign(e,{encrypted:s,version:Nr(t,r),bitFlag:{level:(6&i)>>1,dataDescriptor:8==(8&i),languageEncodingFlag:(i&be)==be},rawLastModDate:a,lastModDate:Ur(a),filenameLength:Nr(t,r+22),extraFieldLength:Nr(t,r+24)})}async function Er(e,t,r,i){const{rawExtraField:s}=t,a=t.extraField=new c,l=Pr(new p(s));let d=0;try{for(;d{t.zip64=!0;const n=Pr(e.data),r=Dr.filter((([e,n])=>t[e]==n));for(let i=0,s=0;i{const i=Pr(e.data),s=Lr(i,4);n.assign(e,{vendorVersion:Lr(i,0),vendorId:Lr(i,2),strength:s,originalCompressionMethod:r,compressionMethod:Nr(i,5)}),t.compressionMethod=e.compressionMethod})(x,t,f),t.extraFieldAES=x):t.compressionMethod=f;const g=a.get(10);g&&(((e,t)=>{const r=Pr(e.data);let i,s=4;try{for(;s{const n=Pr(e.data),r=Lr(n,0),i=[],s=[];1==(1&r)&&(i.push(ir),s.push(sr)),2==(2&r)&&(i.push(ar),s.push("rawLastAccessDate")),4==(4&r)&&(i.push(or),s.push("rawCreationDate"));let a=1;i.forEach(((r,i)=>{if(e.data.length>=a+4){const c=Or(n,a);t[r]=e[r]=new o(1e3*c);const l=s[i];e[l]=c}a+=4}))})(v,t),t.extraFieldExtendedTimestamp=v)}async function Tr(e,t,r,i,s){const a=Pr(e.data),o=new Ne;o.append(s[r]);const c=Pr(new p(4));c.setUint32(0,o.get(),!0);const l=Or(a,1);n.assign(e,{version:Lr(a,0),[t]:Xn(e.data.subarray(5)),valid:!s.bitFlag.languageEncodingFlag&&l==Or(c,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function qr(e,t,n){return t[n]===ze?e.options[n]:t[n]}function Ur(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Ir(e){return new o(i(e/s(1e4)-s(116444736e5)))}function Lr(e,t){return e.getUint8(t)}function Nr(e,t){return e.getUint16(t,!0)}function Or(e,t){return e.getUint32(t,!0)}function jr(e,t){return i(e.getBigUint64(t,!0))}function Pr(e){return new w(e.buffer)}const Mr="File already exists",Br="Zip file comment exceeds 64KB",Kr="File entry comment exceeds 64KB",Vr="File entry name exceeds 64KB",Hr="Version exceeds 65535",Zr="The strength must equal 1, 2, or 3",Yr="Extra field type exceeds 65535",Xr="Extra field data exceeds 64KB",Gr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Jr=new p([7,0,2,0,65,69,3,0,0]);let $r=0;const Qr=[];class ei{constructor(e,t={}){e=Kn(e),n.assign(this,{writer:e,addSplitZipSignature:e instanceof Pn,options:t,config:Fe(),files:new c,filenames:new l,offset:e.writable.size,pendingEntriesSize:0,pendingAddFileCalls:new l,bufferedWrites:0})}async add(e="",r,i={}){const c=this,{pendingAddFileCalls:l,config:d}=c;let f;$rQr.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new u(Mr);return c.filenames.add(e),f=(async(e,r,i,c)=>{r=r.trim(),c.directory&&!r.endsWith(ye)?r+=ye:c.directory=r.endsWith(ye);const l=je(r);if(di(l)>pe)throw new u(Vr);const d=c.comment||"",f=je(d);if(di(f)>pe)throw new u(Kr);const x=ri(e,c,"version",20);if(x>pe)throw new u(Hr);const v=ri(e,c,"versionMadeBy",20);if(v>pe)throw new u(Hr);const b=ri(e,c,ir,new o),y=ri(e,c,ar),_=ri(e,c,or),k=ri(e,c,dr,!0),z=ri(e,c,cr,0),S=ri(e,c,lr,0),C=ri(e,c,"password"),D=ri(e,c,"encryptionStrength",3),R=ri(e,c,"zipCrypto"),A=ri(e,c,"extendedTimestamp",!0),W=ri(e,c,"keepOrder",!0),F=ri(e,c,"level"),E=ri(e,c,"useWebWorkers"),T=ri(e,c,"bufferedWrite"),q=ri(e,c,"dataDescriptorSignature",!1),U=ri(e,c,"signal"),I=ri(e,c,"useCompressionStream");let L=ri(e,c,"dataDescriptor",!0),N=ri(e,c,fr);if(C!==ze&&D!==ze&&(1>D||D>3))throw new u(Zr);let O=new p;const{extraField:j}=c;if(j){let e=0,t=0;j.forEach((t=>e+=4+di(t))),O=new p(e),j.forEach(((e,n)=>{if(n>pe)throw new u(Yr);if(di(e)>pe)throw new u(Xr);ci(O,new m([n]),t),ci(O,new m([di(e)]),t+2),ci(O,e,t+4),t+=4+di(e)}))}let P=0,M=0,B=0;const K=!0===N;i&&(i=Bn(i),await Mn(i),i.size===ze?(L=!0,(N||N===ze)&&(N=!0,B=P=ue)):(B=i.size,P=(e=>e+5*(a.floor(e/16383)+1))(B)));const{diskOffset:V,diskNumber:H,maxSize:Z}=e.writer,Y=K||B>=ue,X=K||P>=ue,G=K||e.offset+e.pendingEntriesSize-V>=ue,J=ri(e,c,"supportZip64SplitFile",!0)&&K||H+a.ceil(e.pendingEntriesSize/Z)>=pe;if(G||Y||X||J){if(!1===N||!W)throw new u(Gr);N=!0}N=N||!1;const $=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:i,password:s,level:o,zip64:c,zipCrypto:l,dataDescriptor:d,directory:f,rawExtraField:u,encryptionStrength:m,extendedTimestamp:w}=e,x=0!==o&&!f,g=!(!s||!di(s));let v,b,y,_=e.version;if(g&&!l){v=new p(di(Jr)+2);const e=li(v);si(e,0,39169),ci(v,Jr,2),ii(e,8,m)}else v=new p;if(w){y=new p(9+(r?4:0)+(i?4:0));const e=li(y);si(e,0,ve),si(e,2,di(y)-4),ii(e,4,1+(r?2:0)+(i?4:0)),ai(e,5,a.floor(n.getTime()/1e3)),r&&ai(e,9,a.floor(r.getTime()/1e3)),i&&ai(e,13,a.floor(i.getTime()/1e3));try{b=new p(36);const e=li(b),t=ni(n);si(e,0,10),si(e,2,32),si(e,8,1),si(e,10,24),oi(e,12,t),oi(e,20,ni(r)||t),oi(e,28,ni(i)||t)}catch(e){b=new p}}else b=y=new p;let k=be;d&&(k|=8);let z=0;x&&(z=8),c&&(_=_>45?_:45),g&&(k|=1,l||(_=_>51?_:51,z=99,x&&(v[9]=8)));const S=new p(26),C=li(S);si(C,0,_),si(C,2,k),si(C,4,z);const D=new h(1),R=li(D);let A;A=ke>n?ke:n>_e?_e:n,si(R,0,(A.getHours()<<6|A.getMinutes())<<5|A.getSeconds()/2),si(R,2,(A.getFullYear()-1980<<4|A.getMonth()+1)<<5|A.getDate());const W=D[0];ai(C,6,W),si(C,22,di(t));const F=di(v,y,b,u);si(C,24,F);const E=new p(30+di(t)+F);return ai(li(E),0,me),ci(E,S,4),ci(E,t,30),ci(E,v,30+di(t)),ci(E,y,30+di(t,v)),ci(E,b,30+di(t,v,y)),ci(E,u,30+di(t,v,y,b)),{localHeaderArray:E,headerArray:S,headerView:C,lastModDate:n,rawLastModDate:W,encrypted:g,compressed:x,version:_,compressionMethod:z,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:b,rawExtraFieldAES:v}})(c=n.assign({},c,{rawFilename:l,rawComment:f,version:x,versionMadeBy:v,lastModDate:b,lastAccessDate:y,creationDate:_,rawExtraField:O,zip64:N,zip64UncompressedSize:Y,zip64CompressedSize:X,zip64Offset:G,zip64DiskNumberStart:J,password:C,level:F,useWebWorkers:E,encryptionStrength:D,extendedTimestamp:A,zipCrypto:R,bufferedWrite:T,keepOrder:W,dataDescriptor:L,dataDescriptorSignature:q,signal:U,msDosCompatible:k,internalFileAttribute:z,externalFileAttribute:S,useCompressionStream:I})),Q=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let i,s=new p,a=0;return n&&(s=new p(t?r?24:20:r?16:12),i=li(s),r&&(a=4,ai(i,0,134695760))),{dataDescriptorArray:s,dataDescriptorView:i,dataDescriptorOffset:a}})(c);let ee;M=di($.localHeaderArray,Q.dataDescriptorArray)+P,e.pendingEntriesSize+=M;try{ee=await(async(e,r,i,a,o)=>{const{files:c,writer:l}=e,{keepOrder:d,dataDescriptor:f,signal:m}=o,{headerInfo:h}=a,x=t.from(c.values()).pop();let v,b,y,_,k,z,S={};c.set(r,S);try{let t;d&&(t=x&&x.lock,S.lock=new g((e=>y=e))),o.bufferedWrite||e.writerLocked||e.bufferedWrites&&d||!f?(z=new yn,z.writable.size=0,v=!0,e.bufferedWrites++,await Mn(l)):(z=l,await C()),await Mn(z);const{writable:h}=l;let{diskOffset:R}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new p(4);ai(li(t),0,he),await ti(h,t),e.offset+=4}v||(await t,await D(h));const{diskNumber:A}=l;if(k=!0,S.diskNumberStart=A,S=await(async(e,t,{diskNumberStart:r,lock:i},a,o,c)=>{const{headerInfo:l,dataDescriptorInfo:d}=a,{localHeaderArray:f,headerArray:u,lastModDate:m,rawLastModDate:h,encrypted:w,compressed:x,version:g,compressionMethod:v,rawExtraFieldExtendedTimestamp:b,rawExtraFieldNTFS:y,rawExtraFieldAES:_}=l,{dataDescriptorArray:k}=d,{rawFilename:z,lastAccessDate:S,creationDate:C,password:D,level:R,zip64:A,zip64UncompressedSize:W,zip64CompressedSize:F,zip64Offset:E,zip64DiskNumberStart:T,zipCrypto:q,dataDescriptor:U,directory:I,versionMadeBy:L,rawComment:N,rawExtraField:O,useWebWorkers:j,onstart:P,onprogress:M,onend:B,signal:K,encryptionStrength:V,extendedTimestamp:H,msDosCompatible:Z,internalFileAttribute:Y,externalFileAttribute:X,useCompressionStream:G}=c,J={lock:i,versionMadeBy:L,zip64:A,directory:!!I,filenameUTF8:!0,rawFilename:z,commentUTF8:!0,rawComment:N,rawExtraFieldExtendedTimestamp:b,rawExtraFieldNTFS:y,rawExtraFieldAES:_,rawExtraField:O,extendedTimestamp:H,msDosCompatible:Z,internalFileAttribute:Y,externalFileAttribute:X,diskNumberStart:r};let $,Q=0,ee=0;const{writable:te}=t,ne=di(f,k);if(e){e.chunkSize=Ee(o),await ti(te,f);const t=e.readable,n=t.size=e.size,r={options:{codecType:Mt,level:R,password:D,encryptionStrength:V,zipCrypto:w&&q,passwordVerification:w&&q&&h>>8&255,signed:!0,compressed:x,encrypted:w,useWebWorkers:j,useCompressionStream:G,transferStreams:!1},config:o,streamOptions:{signal:K,size:n,onstart:P,onprogress:M,onend:B}},i=await sn({readable:t,writable:te},r);te.size+=i.size,$=i.signature,ee=e.size=t.size,Q=i.size}else await ti(te,f);let re;if(A){let e=4;W&&(e+=8),F&&(e+=8),E&&(e+=8),T&&(e+=4),re=new p(e)}else re=new p;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:i,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:c}=e,{headerView:l,encrypted:d}=o,{dataDescriptorView:f,dataDescriptorOffset:u}=c,{zip64:p,zip64UncompressedSize:m,zip64CompressedSize:h,zipCrypto:w,dataDescriptor:x}=t;if(d&&!w||n===ze||(ai(l,10,n),x&&ai(f,u,n)),p){const e=li(r);si(e,0,1),si(e,2,r.length-4);let t=4;m&&(ai(l,18,ue),oi(e,t,s(a)),t+=8),h&&(ai(l,14,ue),oi(e,t,s(i))),x&&(oi(f,u+4,s(i)),oi(f,u+12,s(a)))}else ai(l,14,i),ai(l,18,a),x&&(ai(f,u+4,i),ai(f,u+8,a))})({signature:$,rawExtraFieldZip64:re,compressedSize:Q,uncompressedSize:ee,headerInfo:l,dataDescriptorInfo:d},c),U&&await ti(te,k),n.assign(J,{uncompressedSize:ee,compressedSize:Q,lastModDate:m,rawLastModDate:h,creationDate:C,lastAccessDate:S,encrypted:w,length:ne+Q,compressionMethod:v,version:g,headerArray:u,signature:$,rawExtraFieldZip64:re,zip64UncompressedSize:W,zip64CompressedSize:F,zip64Offset:E,zip64DiskNumberStart:T}),J})(i,z,S,a,e.config,o),k=!1,c.set(r,S),S.filename=r,v){await z.writable.getWriter().close();let e=await z.getData();await t,await C(),_=!0,f||(e=await(async(e,t,n,{zipCrypto:r})=>{let i;i=await t.slice(0,26).arrayBuffer(),26!=i.byteLength&&(i=i.slice(0,26));const s=new w(i);return e.encrypted&&!r||ai(s,14,e.signature),e.zip64?(ai(s,18,ue),ai(s,22,ue)):(ai(s,18,e.compressedSize),ai(s,22,e.uncompressedSize)),await ti(n,new p(i)),t.slice(i.byteLength)})(S,e,h,o)),await D(h),S.diskNumberStart=l.diskNumber,R=l.diskOffset,await e.stream().pipeTo(h,{preventClose:!0,preventAbort:!0,signal:m}),h.size+=e.size,_=!1}if(S.offset=e.offset-R,S.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:i}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:c,zip64DiskNumberStart:l}=t,d=li(n);let f=4;a&&(f+=8),o&&(f+=8),c&&(oi(d,f,s(r)),f+=8),l&&ai(d,f,i)})(S,o);else if(S.offset>=ue)throw new u(Gr);return e.offset+=S.length,S}catch(t){if(v&&_||!v&&k){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}v?e.offset+=z.writable.size:e.offset=z.writable.size}throw c.delete(r),t}finally{v&&e.bufferedWrites--,y&&y(),b&&b()}async function C(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new g((t=>b=()=>{e.writerLocked=!1,t()})),await t}async function D(e){h.localHeaderArray.length>l.availableSize&&(l.availableSize=0,await ti(e,new p))}})(e,r,i,{headerInfo:$,dataDescriptorInfo:Q},c)}finally{e.pendingEntriesSize-=M}return n.assign(ee,{name:r,comment:d,extraField:j}),new pr(ee)})(c,e,r,i),l.add(f),await f}catch(t){throw c.filenames.delete(e),t}finally{l.delete(f);const e=Qr.shift();e?e():$r--}}async close(e=new p,n={}){const{pendingAddFileCalls:r,writer:i}=this,{writable:o}=i;for(;r.size;)await g.all(t.from(r));return await(async(e,n,r)=>{const{files:i,writer:o}=e,{diskOffset:c,writable:l}=o;let{diskNumber:d}=o,f=0,m=0,h=e.offset-c,w=i.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:r,rawComment:s,rawExtraFieldExtendedTimestamp:a,rawExtraFieldNTFS:o}]of i)m+=46+di(e,s,t,n,a,o,r);const x=new p(m),g=li(x);await Mn(o);let v=0;for(const[e,n]of t.from(i.values()).entries()){const{offset:t,rawFilename:s,rawExtraFieldZip64:c,rawExtraFieldAES:d,rawExtraFieldNTFS:u,rawExtraField:m,rawComment:h,versionMadeBy:w,headerArray:b,directory:y,zip64:_,zip64UncompressedSize:k,zip64CompressedSize:z,zip64DiskNumberStart:S,zip64Offset:C,msDosCompatible:D,internalFileAttribute:R,externalFileAttribute:A,extendedTimestamp:W,lastModDate:F,diskNumberStart:E,uncompressedSize:T,compressedSize:q}=n;let U;if(W){U=new p(9);const e=li(U);si(e,0,ve),si(e,2,di(U)-4),ii(e,4,1),ai(e,5,a.floor(F.getTime()/1e3))}else U=new p;const I=di(c,d,U,u,m);ai(g,f,we),si(g,f+4,w);const L=li(b);k||ai(L,18,T),z||ai(L,14,q),ci(x,b,f+6),si(g,f+30,I),si(g,f+32,di(h)),si(g,f+34,_&&S?pe:E),si(g,f+36,R),A?ai(g,f+38,A):y&&D&&ii(g,f+38,16),ai(g,f+42,_&&C?ue:t),ci(x,s,f+46),ci(x,c,f+46+di(s)),ci(x,d,f+46+di(s,c)),ci(x,U,f+46+di(s,c,d)),ci(x,u,f+46+di(s,c,d,U)),ci(x,m,f+46+di(s,c,d,U,u)),ci(x,h,f+46+di(s)+I);const N=46+di(s,h)+I;if(f-v>o.availableSize&&(o.availableSize=0,await ti(l,x.slice(v,f)),v=f),f+=N,r.onprogress)try{await r.onprogress(e+1,i.size,new pr(n))}catch(e){}}await ti(l,v?x.slice(v):x);let b=o.diskNumber;const{availableSize:y}=o;22>y&&b++;let _=ri(e,r,"zip64");if(!(ue>h&&ue>m&&pe>w&&pe>b)){if(!1===_)throw new u(Gr);_=!0}const k=new p(_?98:22),z=li(k);f=0,_&&(ai(z,0,xe),oi(z,4,s(44)),si(z,12,45),si(z,14,45),ai(z,16,b),ai(z,20,d),oi(z,24,s(w)),oi(z,32,s(w)),oi(z,40,s(m)),oi(z,48,s(h)),ai(z,56,ge),oi(z,64,s(h)+s(m)),ai(z,72,b+1),ri(e,r,"supportZip64SplitFile",!0)&&(b=pe,d=pe),w=pe,h=ue,m=ue,f+=76),ai(z,f,101010256),si(z,f+4,b),si(z,f+6,d),si(z,f+8,w),si(z,f+10,w),ai(z,f+12,m),ai(z,f+16,h);const S=di(n);if(S){if(S>pe)throw new u(Br);si(z,f+20,S)}await ti(l,k),S&&await ti(l,n)})(this,e,n),ri(this,n,"preventClose")||await o.getWriter().close(),i.getData?i.getData():o}}async function ti(e,t){const n=e.getWriter();await n.ready,e.size+=di(t),await n.write(t),n.releaseLock()}function ni(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function ri(e,t,n,r){const i=t[n]===ze?e.options[n]:t[n];return i===ze?r:i}function ii(e,t,n){e.setUint8(t,n)}function si(e,t,n){e.setUint16(t,n,!0)}function ai(e,t,n){e.setUint32(t,n,!0)}function oi(e,t,n){e.setBigUint64(t,n,!0)}function ci(e,t,n){e.set(t,n)}function li(e){return new w(e.buffer)}function di(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}class fi{constructor(e,t,r,i){const s=this;if(e.root&&i&&i.getChildByName(t))throw new u("Entry filename already exists");r||(r={}),n.assign(s,{fs:e,name:t,data:r.data,options:r.options,id:e.entries.length,parent:i,children:[],uncompressedSize:r.uncompressedSize||0}),e.entries.push(s),i&&s.parent.children.push(s)}moveTo(e){this.fs.move(this,e)}getFullname(){return this.getRelativeName()}getRelativeName(e=this.fs.root){let t=this.name,n=this.parent;for(;n&&n!=e;)t=(n.name?n.name+"/":"")+t,n=n.parent;return t}isDescendantOf(e){let t=this.parent;for(;t&&t.id!=e.id;)t=t.parent;return!!t}rename(e){const t=this.parent;if(t&&t.getChildByName(e))throw new u("Entry filename already exists");this.name=e}}class ui extends fi{constructor(e,t,n,r){super(e,t,n,r);const i=this;i.Reader=n.Reader,i.Writer=n.Writer,n.getData&&(i.getData=n.getData)}clone(){return new ui(this.fs,this.name,this)}async getData(e,t={}){const n=this;if(!e||e.constructor==n.Writer&&n.data)return n.data;{const r=n.reader=new n.Reader(n.data,t),i=n.data?n.data.uncompressedSize:r.size;await g.all([Mn(r),Mn(e,i)]);const s=r.readable;return s.size=n.uncompressedSize=r.size,await s.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return this.data.encrypted}async checkPassword(e,t={}){const n=this;if(!n.isPasswordProtected())return!0;t.password=e,t.checkPasswordOnly=!0;try{return await n.data.getData(null,t),!0}catch(e){if(e.message==Ze)return!1;throw e}}getText(e,t){return this.getData(new kn(e),t)}getBlob(e,t){return this.getData(new yn(e),t)}getData64URI(e,t){return this.getData(new vn(e),t)}getUint8Array(e){return this.getData(new On,e)}getWritable(e=new C,t){return this.getData({writable:e},t)}replaceBlob(e){n.assign(this,{data:e,Reader:bn,Writer:yn,reader:null})}replaceText(e){n.assign(this,{data:e,Reader:_n,Writer:kn,reader:null})}replaceData64URI(e){n.assign(this,{data:e,Reader:gn,Writer:vn,reader:null})}replaceUint8Array(e){n.assign(this,{data:e,Reader:Nn,Writer:On,reader:null})}replaceReadable(e){n.assign(this,{data:null,Reader:()=>({readable:e}),Writer:null,reader:null})}}class pi extends fi{constructor(e,t,n,r){super(e,t,n,r),this.directory=!0}clone(e){const t=this,n=new pi(t.fs,t.name);return e&&(n.children=t.children.map((t=>{const r=t.clone(e);return r.parent=n,r}))),n}addDirectory(e,t){return yi(this,e,{options:t},!0)}addText(e,t,n={}){return yi(this,e,{data:t,Reader:_n,Writer:kn,options:n,uncompressedSize:t.length})}addBlob(e,t,n={}){return yi(this,e,{data:t,Reader:bn,Writer:yn,options:n,uncompressedSize:t.size})}addData64URI(e,t,n={}){let r=t.length;for(;"="==t.charAt(r-1);)r--;const i=t.indexOf(",")+1;return yi(this,e,{data:t,Reader:gn,Writer:vn,options:n,uncompressedSize:a.floor(.75*(r-i))})}addUint8Array(e,t,n={}){return yi(this,e,{data:t,Reader:Nn,Writer:On,options:n,uncompressedSize:t.length})}addHttpContent(e,t,n={}){return yi(this,e,{data:t,Reader:class extends Ln{constructor(e){super(e,n)}},options:n})}addReadable(e,t,n={}){return yi(this,e,{Reader:()=>({readable:t}),options:n})}addFileSystemEntry(e,t={}){return gi(this,e,t)}addFileSystemHandle(e,t={}){return gi(this,e,t)}addFile(e,t={}){return t.lastModDate||(t.lastModDate=new o(e.lastModified)),yi(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}addData(e,t){return yi(this,e,t)}importBlob(e,t){return this.importZip(new bn(e),t)}importData64URI(e,t){return this.importZip(new gn(e),t)}importUint8Array(e,t){return this.importZip(new Nn(e),t)}importHttpContent(e,t){return this.importZip(new Ln(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new yn(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new vn(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new On,e)}async exportWritable(e=new C,t={}){return await this.exportZip({writable:e},t),e}async importZip(e,t={}){await Mn(e);const r=new Ar(e,t),i=[],s=await r.getEntries();for(const e of s){let r=this;try{const s=e.filename.split("/"),a=s.pop();s.forEach(((t,n)=>{const a=r;r=r.getChildByName(t),r||(r=new pi(this.fs,t,{data:n==s.length-1?e:null},a),i.push(r))})),e.directory||i.push(yi(r,a,{data:e,Reader:hi(n.assign({},t)),uncompressedSize:e.uncompressedSize}))}catch(t){try{t.cause={entry:e}}catch(e){}throw t}}return i}async exportZip(e,r){const i=this;await g.all([wi(i,r.readerOptions),Mn(e)]);const s=new ei(e,r);return await(async(e,r,i,s)=>{const a=r,o=new c;await async function e(r,c){async function l(c){const l=s.relativePath?c.getRelativeName(a):c.getFullname();let d,f,u,p,m=c.options||{};c.data instanceof pr&&({externalFileAttribute:d,versionMadeBy:f,comment:u,lastModDate:p}=c.data),await r.add(l,c.reader,n.assign({directory:c.directory},n.assign({},s,{externalFileAttribute:d,versionMadeBy:f,comment:u,lastModDate:p,onprogress:async e=>{if(s.onprogress){o.set(l,e);try{await s.onprogress(t.from(o.values()).reduce(((e,t)=>e+t)),i)}catch(e){}}}},m))),await e(r,c)}await(async()=>{if(s.bufferedWrite)await g.allSettled(c.children.map(l));else for(const e of c.children)await l(e)})()}(e,r)})(s,i,(e=>{let t=0;return e.forEach((function e(n){t+=n.uncompressedSize,n.children&&n.children.forEach(e)})),t})([i]),r),await s.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let n=0;nn.checkPassword(e,t))))).includes(!1)}}const mi={FS:class{constructor(){bi(this)}get children(){return this.root.children}remove(e){xi(e),this.entries[e.id]=null}move(e,t){if(e==this.root)throw new u("Root directory cannot be moved");if(!t.directory)throw new u("Target entry is not a directory");if(t.isDescendantOf(e))throw new u("Entry is a ancestor of target entry");if(e!=t){if(t.getChildByName(e.name))throw new u("Entry filename already exists");xi(e),e.parent=t,t.children.push(e)}}find(e){const t=e.split("/");let n=this.root;for(let e=0;n&&e{if(e.directory)await wi(e,t);else{const n=e.reader=new e.Reader(e.data,t);try{await Mn(n)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch(e){}throw t}e.uncompressedSize=n.size}})))}function xi(e){if(e.parent){const t=e.parent.children;t.forEach(((n,r)=>{n.id==e.id&&t.splice(r,1)}))}}async function gi(e,t,r){return async function e(t,i,s){try{if((i.isFile||i.isDirectory)&&(i=await vi(i)),"file"==i.kind){const e=await i.getFile();s.push(t.addData(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:n.assign({},{lastModDate:new o(e.lastModified)},r),uncompressedSize:e.size}))}else if("directory"==i.kind){const n=t.addDirectory(i.name);s.push(n);for await(const t of i.values())await e(n,t,s)}}catch(e){const t=e.message+(i?" ("+i.name+")":"");throw new u(t)}return s}(e,t,[])}async function vi(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new g(((t,n)=>e.file(t,n)))),e.isDirectory){t.kind="directory";const n=await(async e=>{const t=[];function n(e,r,i){e.readEntries((async s=>{if(s.length){for(const e of s)t.push(await vi(e));n(e,r,i)}else r(t)}),i)}return await new g(((t,r)=>n(e.createReader(),t,r))),{[Symbol.iterator](){let e=0;return{next(){const n={value:t[e],done:e===t.length};return e++,n}}}}})(e);t.values=()=>n}return t}function bi(e){e.entries=[],e.root=new pi(e)}function yi(e,t,n,r){if(e.directory)return r?new pi(e.fs,t,n,e):new ui(e.fs,t,n,e);throw new u("Parent entry is not a directory")}let _i;try{_i=void 0===y&&"undefined"==typeof location?new(require("url").URL)("file:"+__filename).href:void 0===y?location.href:y.currentScript&&y.currentScript.src||new f("zip-fs-full.min.js",y.baseURI).href}catch(e){}Te({baseURL:_i}),(e=>{const t=()=>f.createObjectURL(new x(['const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self;class k{constructor(e){return class extends p{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)}})}}}}const v=[];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;v[e]=t}class S{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^v[255&(t^e[n])];this.t=t}get(){return~this.t}}class z extends p{constructor(){let e;const t=new S;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const C={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=C.i(n);return 32===r?e.concat(t):C.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+C.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=C.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=C.i(s);return r.push(C.h(t+i&31,t+i>32?n:r.pop(),1)),r}},x={p:{m(e){const t=C.l(e)/8,n=new i(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},g(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}D(){const e=this;let t=e.C;const n=e.S;t=C.concat(t,[C.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e._/4294967296)),t.push(0|e._);t.length;)e.I(t.splice(0,16));return e.reset(),n}V(e,t,n,r){return 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}P(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.P(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.P(5,o)+n.V(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.P(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},A={getRandomValues(e){const t=new c(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)*(r.random()>.5?1:-1))};for(let s,i=0;inew I.R(x.p.g(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=C;for(t=x.p.g(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).D());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.K[0].update(r[0]),t.K[1].update(r[1]),t.U=new n(t.K[0])}reset(){const e=this;e.U=new e.M(e.K[0]),e.N=!1}update(e){this.N=!0,this.U.update(e)}digest(){const e=this,t=e.U.D(),n=new e.M(e.K[1]).update(t).D();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},D=void 0!==h&&"function"==typeof h.getRandomValues,V="Invalid password",P="Invalid signature",R="zipjs-abort-check-password";function B(e){return D?h.getRandomValues(e):A.getRandomValues(e)}const E=16,M={name:"PBKDF2"},K=t.assign({hash:{name:"HMAC"}},M),U=t.assign({iterations:1e3,hash:{name:"SHA-1"}},M),N=["deriveBits"],O=[8,12,16],T=[16,24,32],W=10,j=[0,0,0,0],H="undefined",L="function",F=typeof h!=H,q=F&&h.subtle,G=F&&typeof q!=H,J=x.p,Q=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||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.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},X=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(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}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=C.l(t);for(let s=0;r>s;s+=4){this.G(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 C.u(t,s)}},Y=I.R;let Z=F&&G&&typeof q.importKey==L,$=F&&G&&typeof q.deriveBits==L;class ee extends p{constructor({password:e,signed:n,encryptionStrength:r,checkPasswordOnly:o}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,signed:n,X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:c,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await re(e,t,n,ie(r,0,O[t])),o=ie(r,O[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(V)})(n,c,r,ie(e,0,O[c]+2)),e=ie(e,O[c]+2),o?t.error(new s(R)):f()):await a;const l=new i(e.length-W-(e.length-W)%E);t.enqueue(ne(n,e,l,0,W,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;await c;const f=ie(o,0,o.length-W),a=ie(o,o.length-W);let l=new i;if(f.length){const e=ce(J,f);r.update(e);const t=n.update(e);l=oe(J,t)}if(t){const e=ie(oe(J,r.digest()),0,W);for(let t=0;W>t;t++)if(e[t]!=a[t])throw new s(P)}e.enqueue(l)}})}}class te extends p{constructor({password:e,encryptionStrength:n}){let r;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,X:n-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=B(new i(O[t]));return se(r,await re(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%E);a.set(f,0),t.enqueue(ne(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:s,ready:o}=this;await o;let c=new i;if(s.length){const e=t.update(ce(J,s));n.update(e),c=oe(J,e)}r.signature=oe(J,n.digest()).slice(0,W),e.enqueue(se(c,r.signature))}}),r=this}}function ne(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=se(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%E)),u=0;l-E>=u;u+=E){const e=ce(J,ie(t,u,u+E));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(oe(J,s),u+r)}return e.pending=ie(t,u),n}async function re(n,r,s,o){n.password=null;const c=(e=>{if(void 0===w){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n{if(!Z)return I.importKey(t);try{return await q.importKey("raw",t,n,!1,s)}catch(e){return Z=!1,I.importKey(t)}})(0,c,K,0,N),a=await(async(e,t,n)=>{if(!$)return I.B(t,e.salt,U.iterations,n);try{return await q.deriveBits(e,t,n)}catch(r){return $=!1,I.B(t,e.salt,U.iterations,n)}})(t.assign({salt:o},U),f,8*(2*T[r]+2)),l=new i(a),u=ce(J,ie(l,0,T[r])),h=ce(J,ie(l,T[r],2*T[r])),d=ie(l,2*T[r]);return t.assign(n,{keys:{key:u,$:h,passwordVerification:d},Y:new X(new Q(u),e.from(j)),Z:new Y(h)}),d}function se(e,t){let n=e;return e.length+t.length&&(n=new i(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function ie(e,t,n){return e.subarray(t,n)}function oe(e,t){return e.m(t)}function ce(e,t){return e.g(t)}class fe extends p{constructor({password:e,passwordVerification:n,checkPasswordOnly:r}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;if(n.password){const t=le(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new s(V);e=e.subarray(12)}r?t.error(new s(R)):t.enqueue(le(n,e))}})}}class ae extends p{constructor({password:e,passwordVerification:n}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=B(new i(12));t[11]=n.passwordVerification,r=new i(e.length+t.length),r.set(ue(n,t),0),s=12}else r=new i(e.length),s=0;r.set(ue(n,e),s),t.enqueue(r)}})}}function le(e,t){const n=new i(t.length);for(let r=0;r>>24]),i=~e.te.get(),e.keys=[n,s,i]}function de(e){const t=2|e.keys[2];return pe(r.imul(t,1^t)>>>8)}function pe(e){return 255&e}function ye(e){return 4294967295&e}const me="deflate-raw";class be extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=ke(super.readable);i&&!c||!f||(w=new z,d=ze(d,w)),s&&(d=Se(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=ze(d,new ae(e)):(h=new te(e),d=ze(d,h))),ve(u,d,(async()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ge extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=ke(super.readable);o&&(i?d=ze(d,new fe(e)):(h=new ee(e),d=ze(d,h))),a&&(d=Se(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new z,d=ze(d,w)),ve(this,d,(async()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(P)}}))}}function ke(e){return ze(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ve(e,n,r){n=ze(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Se(e,t,n,r,s){try{e=ze(e,new(t&&r?r:s)(me,n))}catch(r){if(!t)throw r;e=ze(e,new s(me,n))}return e}function ze(e,t){return e.pipeThrough(t)}const Ce="data";class xe extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=be:s.startsWith("inflate")&&(i=ge);let o=0;const c=new i(e,n),f=super.readable,a=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;t.assign(r,{signature:e,size:o})}});t.defineProperty(r,"readable",{get:()=>f.pipeThrough(c).pipeThrough(a)})}}const _e=new a,Ae=new a;let Ie=0;async function De(e){try{const{options:t,scripts:r,config:s}=e;r&&r.length&&importScripts.apply(void 0,r),self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new k(self.Deflate)),self.Inflate&&(s.DecompressionStream=new k(self.Inflate));const i={highWaterMark:1,size:()=>s.chunkSize},o=e.readable||new y({async pull(e){const t=new u((e=>_e.set(Ie,e)));Ve({type:"pull",messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ae.set(Ie,t),Ve({type:Ce,value:e,messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new xe(t,s);await o.pipeThrough(f).pipeTo(c,{preventClose:!0,preventAbort:!0});try{await c.getWriter().close()}catch(e){}const{signature:a,size:l}=f;Ve({type:"close",result:{signature:a,size:l}})}catch(e){Pe(e)}}function Ve(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Pe(e){const{message:t,stack:n,code:r,name:s}=e;d({error:{message:t,stack:n,code:r,name:s}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&De(e),t==Ce){const e=_e.get(n);_e.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ae.get(n);Ae.delete(n),e()}}catch(e){Pe(e)}}));const Re=-2;function Be(t){return Ee(t.map((([t,n])=>new e(t).fill(n,0,t))))}function Ee(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?Ee(n):n)),[])}const Me=[0,1,2,3].concat(...Be([[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 Ke(){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.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Ue(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}Ke.ge=[0,1,2,3,4,5,6,7].concat(...Be([[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]])),Ke.ke=[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],Ke.ve=[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],Ke.Se=e=>256>e?Me[e]:Me[256+(e>>>7)],Ke.ze=[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],Ke.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Ke.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Ke._e=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Ne=Be([[144,8],[112,9],[24,7],[8,8]]);Ue.Ae=Ee([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,Ne[t]])));const Oe=Be([[30,5]]);function Te(e,t,n,r,s){const i=this;i.Ie=e,i.De=t,i.Ve=n,i.Pe=r,i.Re=s}Ue.Be=Ee([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,Oe[t]]))),Ue.Ee=new Ue(Ue.Ae,Ke.ze,257,286,15),Ue.Me=new Ue(Ue.Be,Ke.Ce,0,30,15),Ue.Ke=new Ue(null,Ke.xe,0,19,7);const We=[new Te(0,0,0,0,0),new Te(4,4,8,4,1),new Te(4,5,16,8,1),new Te(4,6,32,32,1),new Te(4,4,16,16,2),new Te(8,16,32,32,2),new Te(8,16,128,128,2),new Te(8,32,128,256,2),new Te(32,128,258,1024,2),new Te(32,258,258,4096,2)],je=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],He=113,Le=666,Fe=262;function qe(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function Ge(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,_,A,I,D,V,P,R,B,E,M,K;const U=new Ke,N=new Ke,O=new Ke;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)K[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?K[2*n]+=i:0!==n?(n!=r&&K[2*n]++,K[32]++):i>10?K[36]++:K[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ue[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,K)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,K),o--),Y(16,K),X(o-3,2)):o>10?(Y(18,K),X(o-11,7)):(Y(17,K),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(Ke.ge[n]+256+1)]++,M[2*Ke.Se(t)]++),0==(8191&W)&&V>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+Ke.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ue.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;V>0?(U.ne(e),N.ne(e),o=(()=>{let t;for(G(E,U.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===K[2*Ke._e[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Ue.Ae,Ue.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(K[2*Ke._e[r]+1],3);Z(E,e-1),Z(M,t-1)})(U.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-_-C,0===s&&0===C&&0===_)s=f;else if(-1==s)s--;else if(C>=f+f-Fe){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+_,s),_+=e,3>_||(p=255&u[C],p=(p<_&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=A;const o=C>f-Fe?C-(f-Fe):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>A||(r>>=2),c>_&&(c=_);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>_?_:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],K=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Re:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=He,c=0,U.re=E,U.ie=Ue.Ee,N.re=M,N.ie=Ue.Me,O.re=K,O.ie=Ue.Ke,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe,C=0,k=0,_=0,v=A=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=He&&n!=Le?Re:(e.Oe=null,e.Ne=null,e.Ue=null,d=null,h=null,u=null,e.Fe=null,n==He?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Re:(We[V].Re!=We[t].Re&&0!==e.qe&&(r=e.Ye(1)),V!=t&&(V=t,D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe),P=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Re;if(3>i)return 0;for(i>f-Fe&&(i=f-Fe,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Re;if(!r.$e||!r.et&&0!==r.We||n==Le&&4!=i)return r.Le=je[4],Re;if(0===r.tt)return r.Le=je[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(V-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=He,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=je[7],-5;if(n==Le&&0!==t.We)return r.Le=je[7],-5;if(0!==t.We||0!==_||0!=i&&n!=Le){switch(R=-1,We[V].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=_){if(ie(),0===_&&0==e)return 0;if(0===_)break}if(C+=_,_=0,n=k+r,(0===C||C>=n)&&(_=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Fe&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<f-Fe||2!=P&&(v=oe(r)),3>v)n=ee(0,255&u[C]),_--,C++;else if(n=ee(C-x,v-3),_-=v,v>D||3>_)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<A&&f-Fe>=(C-s&65535)&&(2!=P&&(v=oe(s)),5>=v&&(1==P||3==v&&C-x>4096)&&(v=2)),3>A||v>A)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,_--,0===t.tt)return 0}else z=1,C++,_--;else{r=C+_-3,n=ee(C-1-S,A-3),_-=A-1,A-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Ue.Ae),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function Je(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function Qe(e){const t=new Je,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}Je.prototype={He(e,t){const n=this;return n.Fe=new Ge,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Re},Qe(){const e=this;if(!e.Fe)return Re;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Re},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Re},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ue.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const Xe=-2,Ye=-3,Ze=-5,$e=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],et=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],tt=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],nt=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],rt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],st=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],it=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ot(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,_,A,I,D;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return Ye;if(0>(I-=n[g]))return Ye;for(n[g]+=I,i[1]=k=0,C=1,A=2;0!=--g;)i[A]=k+=n[C],A++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>_+S;){if(b++,_+=S,D=m-_,D=D>S?S:D,(y=1<<(k=v-_))>p+1&&(y-=p+1,A=v,D>k))for(;++kn[++A];)y-=n[A];if(D=1<1440)return Ye;s[b]=x=h[0],h[0]+=D,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>_-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-_,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>_;D>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<<_)-1;(g&z)!=i[b];)b--,_-=S,z=(1<<_)-1}return 0!==I&&1!=m?Ze:0}function c(o){let c;for(e||(e=[],t=[],n=new f(16),r=[],s=new f(15),i=new f(16)),t.lengthc;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==Ye?f.Le="oversubscribed dynamic bit lengths tree":a!=Ze&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=Ye),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,nt,rt,a,i,u,e,t),0!=h||0===i[0]?(h==Ye?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=Ye),h):(c(288),h=o(s,n,r,0,st,it,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==Ye?w.Le="oversubscribed distance tree":h==Ze?(w.Le="incomplete distance tree",h=Ye):-4!=h&&(w.Le="empty distance tree with lengths",h=Ye),h):0)}}function ct(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15,k=a[z+2]+(w&$e[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(0!=(64&u))return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye;f+=a[z+2],f+=w&$e[u],z=3*(l+f),u=a[z]}break}if(0!=(64&u))return 0!=(32&u)?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye);if(f+=a[z+2],f+=w&$e[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,_=0,A=0;for(A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,m=p(u,w,r,h,s,d,e,y),A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>>=n[g+1],_-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(0!=(16&k)){a=15&k,i=n[g+2],t=2;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}if(0!=(32&k)){t=7;break}return t=9,y.Le="invalid literal/length code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 2:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}i+=x&$e[b],x>>=b,_-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>=n[g+1],_-=n[g+1],k=n[g],0!=(16&k)){a=15&k,l=n[g+2],t=4;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 4:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}l+=x&$e[b],x>>=b,_-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(_-=8,v++,A--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ot.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=et,r[0]=tt,0);const ft=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function at(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new ct;let h=0,d=new f(4320);const p=new ot;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ot.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[ft[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==Ye&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&$e[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,_=[],A=[],I=[],D=[],_[0]=9,A[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,_,A,I,D,d,e),0!=i)return i==Ye&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(_[0],A[0],d,I[0],d,D[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const lt=13,ut=[0,0,255,255];function wt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):Xe}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),Xe):(e.zt=r,n.gt.kt=new at(n,1<{let n,r;if(!e||!e.gt||!e.et)return Xe;const s=e.gt;for(t=4==t?Ze:0,n=Ze;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=lt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=lt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=lt,e.Le="incorrect header check",s.marker=5;break}if(0==(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=lt,e.Le="need dictionary",s.marker=0,Xe;case 7:if(n=s.kt.ut(e,n),n==Ye){s.mode=lt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case lt:return Ye;default:return Xe}},e.At=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return Xe;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return Xe;const c=e.gt;if(c.mode!=lt&&(c.mode=lt,c.marker=0),0===(n=e.We))return Ze;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==ut[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?Ye:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Dt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():Xe}function ht(){}function dt(e){const t=new ht,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t._t(0),c&&a===Ze){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}ht.prototype={xt(e){const t=this;return t.gt=new wt,e||(e=15),t.gt.xt(t,e)},_t(e){const t=this;return t.gt?t.gt._t(t,e):Xe},Ct(){const e=this;if(!e.gt)return Xe;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):Xe},At(e,t){const n=this;return n.gt?n.gt.At(n,e,t):Xe},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=Qe,self.Inflate=dt};\n'],{type:"text/javascript"}));e({workerScripts:{inflate:[t],deflate:[t]}})})(Te),Te({Deflate:function(e){const t=new Z,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(a.floor(r/16383)+1);var r;const i=new p(n);let s=e?e.level:-1;void 0===s&&(s=-1),t.deflateInit(s),t.next_out=i,this.append=(e,r)=>{let s,a,o=0,c=0,l=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,s=t.deflate(0),0!=s)throw new u("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?d.push(new p(i)):d.push(i.subarray(0,t.next_out_index))),l+=t.next_out_index,r&&t.next_in_index>0&&t.next_in_index!=o&&(r(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(a=new p(l),d.forEach((e=>{a.set(e,c),c+=e.length}))):a=d[0]?new p(d[0]):new p,a}},this.flush=()=>{let e,r,s=0,a=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw new u("deflating: "+t.msg);n-t.avail_out>0&&o.push(i.slice(0,t.next_out_index)),a+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new p(a),o.forEach((e=>{r.set(e,s),s+=e.length})),r}},Inflate:function(e){const t=new fe,n=e&&e.chunkSize?a.floor(2*e.chunkSize):131072,r=new p(n);let i=!1;t.inflateInit(),t.next_out=r,this.append=(e,s)=>{const a=[];let o,c,l=0,d=0,f=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||i||(t.next_in_index=0,i=!0),o=t.inflate(0),i&&o===G){if(0!==t.avail_in)throw new u("inflating: bad input")}else if(0!==o&&1!==o)throw new u("inflating: "+t.msg);if((i||1===o)&&t.avail_in===e.length)throw new u("inflating: bad input");t.next_out_index&&(t.next_out_index===n?a.push(new p(r)):a.push(r.subarray(0,t.next_out_index))),f+=t.next_out_index,s&&t.next_in_index>0&&t.next_in_index!=l&&(s(t.next_in_index),l=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return a.length>1?(c=new p(f),a.forEach((e=>{c.set(e,d),d+=e.length}))):c=a[0]?new p(a[0]):new p,c}},this.flush=()=>{t.inflateEnd()}}}),e.BlobReader=bn,e.BlobWriter=yn,e.Data64URIReader=gn,e.Data64URIWriter=vn,e.ERR_BAD_FORMAT=mr,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=gr,e.ERR_DUPLICATED_NAME=Mr,e.ERR_ENCRYPTED=yr,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=xr,e.ERR_EOCDR_NOT_FOUND=hr,e.ERR_EOCDR_ZIP64_NOT_FOUND=wr,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=br,e.ERR_HTTP_RANGE=ln,e.ERR_INVALID_COMMENT=Br,e.ERR_INVALID_ENCRYPTION_STRENGTH=Zr,e.ERR_INVALID_ENTRY_COMMENT=Kr,e.ERR_INVALID_ENTRY_NAME=Vr,e.ERR_INVALID_EXTRAFIELD_DATA=Xr,e.ERR_INVALID_EXTRAFIELD_TYPE=Yr,e.ERR_INVALID_PASSWORD=Ze,e.ERR_INVALID_SIGNATURE=Ye,e.ERR_INVALID_VERSION=Hr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=dn,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=vr,e.ERR_SPLIT_ZIP_FILE=zr,e.ERR_UNSUPPORTED_COMPRESSION=kr,e.ERR_UNSUPPORTED_ENCRYPTION=_r,e.ERR_UNSUPPORTED_FORMAT=Gr,e.HttpRangeReader=class extends Ln{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Ln,e.Reader=wn,e.SplitDataReader=jn,e.SplitDataWriter=Pn,e.SplitZipReader=Hn,e.SplitZipWriter=Zn,e.TextReader=_n,e.TextWriter=kn,e.Uint8ArrayReader=Nn,e.Uint8ArrayWriter=On,e.Writer=xn,e.ZipReader=Ar,e.ZipWriter=ei,e.configure=Te,e.fs=mi,e.getMimeType=e=>e&&Ie[e.split(".").pop().toLowerCase()]||"application/octet-stream",e.initShimAsyncCodec=(e,t={},n)=>({Deflate:on(e.Deflate,t.deflate,n),Inflate:on(e.Inflate,t.inflate,n)}),e.terminateWorkers=()=>{tn.forEach((e=>{an(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})})); diff --git a/dist/zip-fs.js b/dist/zip-fs.js index 0c225262..a1e7e899 100644 --- a/dist/zip-fs.js +++ b/dist/zip-fs.js @@ -4309,6 +4309,7 @@ let uncompressedSize = 0; let signature; const { writable } = writer; + const metaDataLength = getLength(localHeaderArray, dataDescriptorArray); if (reader) { reader.chunkSize = getChunkSize(config); await writeData(writable, localHeaderArray); @@ -4378,7 +4379,7 @@ creationDate, lastAccessDate, encrypted, - length: getLength(localHeaderArray, dataDescriptorArray) + compressedSize, + length: metaDataLength + compressedSize, compressionMethod, version, headerArray, diff --git a/dist/zip-fs.min.js b/dist/zip-fs.min.js index 540c8487..71836cc9 100644 --- a/dist/zip-fs.min.js +++ b/dist/zip-fs.min.js @@ -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:i,Math:a,Date:o,Map:c,Set:l,Response:u,URL:d,Error:f,Uint8Array:w,Uint16Array:h,Uint32Array:p,DataView:g,Blob:m,Promise:y,TextEncoder:b,TextDecoder:S,document:k,crypto:z,btoa:v,TransformStream:_,ReadableStream:C,WritableStream:x,CompressionStream:D,DecompressionStream:R,navigator:W,Worker:A}="undefined"!=typeof globalThis?globalThis:this||self,F=4294967295,E=65535,T=67324752,U=134695760,I=33639248,L=101075792,N=117853008,O=21589,q=2048,M="/",B=new o(2107,11,31),P=new o(1980,0,1),K=void 0,V="undefined",H="function";class Z{constructor(e){return class extends _{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 Y=2;try{typeof W!=V&&W.hardwareConcurrency&&(Y=W.hardwareConcurrency)}catch(e){}const X={chunkSize:524288,maxWorkers:Y,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:K,CompressionStreamNative:typeof D!=V&&D,DecompressionStreamNative:typeof R!=V&&R},j=n.assign({},X);function G(){return j}function J(e){return a.max(e.chunkSize,64)}function $(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:u,DecompressionStream:d,workerScripts:w}=e;if(Q("baseURL",n),Q("chunkSize",r),Q("maxWorkers",s),Q("terminateWorkerTimeout",i),Q("useCompressionStream",a),Q("useWebWorkers",o),c&&(j.CompressionStream=new Z(c)),l&&(j.DecompressionStream=new Z(l)),Q("CompressionStream",u),Q("DecompressionStream",d),w!==K){const{deflate:e,inflate:n}=w;if((e||n)&&(j.workerScripts||(j.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");j.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");j.workerScripts.inflate=n}}}function Q(e,t){t!==K&&(j[e]=t)}function ee(e,t,r){return class{constructor(s){const i=this;var a,o;a=s,o="level",("function"==typeof n.hasOwn?n.hasOwn(a,o):a.hasOwnProperty(o))&&void 0===s.level&&delete s.level,i.codec=new e(n.assign({},t,s)),r(i.codec,(e=>{if(i.pendingData){const t=i.pendingData;i.pendingData=new w(t.length+e.length);const{pendingData:n}=i;n.set(t,0),n.set(e,t.length)}else i.pendingData=new w(e)}))}append(e){return this.codec.push(e),s(this)}flush(){return this.codec.push(new w,!0),s(this)}};function s(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new w}}const te=[];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;te[e]=t}class ne{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^te[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class re extends _{constructor(){let e;const t=new ne;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new g(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function se(e){if(void 0===b){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=ie.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=>a.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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=ie.getPartial(s);return r.push(ie.partial(t+i&31,t+i>32?n:r.pop(),1)),r}},ae={bytes:{fromBits(e){const t=ie.bitLength(e)/8,n=new w(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;n9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const i=new p(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);s>=e;e+=t.blockSize)t._block(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=ie.concat(t,[ie.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return 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){return 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 i=r[0],o=r[1],c=r[2],l=r[3],u=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,i)+n._f(e,o,c,l)+u+s[e]+n._key[a.floor(e/20)]|0;u=l,l=c,c=n._S(30,o),o=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},ce={getRandomValues(e){const t=new p(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)*(a.random()>.5?1:-1))};for(let r,s=0;snew le.hmacSha1(ae.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 i,a,o,c,l;const u=new ArrayBuffer(s),d=new g(u);let w=0;const h=ie;for(t=ae.bytes.toBits(t),l=1;(s||1)>w;l++){for(i=a=e.encrypt(h.concat(t,[l])),o=1;n>o;o++)for(a=e.encrypt(a),c=0;cw&&os&&(e=(new n).update(e).finalize());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)}}},ue=void 0!==z&&"function"==typeof z.getRandomValues,de="Invalid password",fe="Invalid signature",we="zipjs-abort-check-password";function he(e){return ue?z.getRandomValues(e):ce.getRandomValues(e)}const pe=16,ge={name:"PBKDF2"},me=n.assign({hash:{name:"HMAC"}},ge),ye=n.assign({iterations:1e3,hash:{name:"SHA-1"}},ge),be=["deriveBits"],Se=[8,12,16],ke=[16,24,32],ze=10,ve=[0,0,0,0],_e="undefined",Ce="function",xe=typeof z!=_e,De=xe&&z.subtle,Re=xe&&typeof De!=_e,We=ae.bytes,Ae=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 i,a,o,c=1;if(4!==s&&6!==s&&8!==s)throw new f("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],i=s;4*s+28>i;i++){let e=a[i-1];(i%s==0||8===s&&i%s==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%s==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[i]=a[i-s]^e}for(let e=0;i;e++,i--){const t=a[3&e?i:i-4];o[e]=4>=i||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=[],i=[];let a,o,c,l;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=o||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=s[c=s[o=s[u]]];let d=16843009*l^65537*c^257*o^16843008*u,f=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][u]=f=f<<24^f>>>8,t[n][i]=d=d<<24^d>>>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],i=this._tables[t],a=i[0],o=i[1],c=i[2],l=i[3],u=i[4];let d,w,h,p=e[0]^n[0],g=e[t?3:1]^n[1],m=e[2]^n[2],y=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)d=a[p>>>24]^o[g>>16&255]^c[m>>8&255]^l[255&y]^n[b],w=a[g>>>24]^o[m>>16&255]^c[y>>8&255]^l[255&p]^n[b+1],h=a[m>>>24]^o[y>>16&255]^c[p>>8&255]^l[255&g]^n[b+2],y=a[y>>>24]^o[p>>16&255]^c[g>>8&255]^l[255&m]^n[b+3],b+=4,p=d,g=w,m=h;for(let e=0;4>e;e++)s[t?3&-e:e]=u[p>>>24]<<24^u[g>>16&255]<<16^u[m>>8&255]<<8^u[255&y]^n[b++],d=p,p=g,g=m,m=y,y=d;return s}},Fe=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=ie.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 ie.clamp(t,s)}},Ee=le.hmacSha1;let Te=xe&&Re&&typeof De.importKey==Ce,Ue=xe&&Re&&typeof De.deriveBits==Ce;class Ie extends _{constructor({password:e,signed:t,encryptionStrength:r,checkPasswordOnly:s}){super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:e,signed:t,strength:r-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const s=await Oe(e,t,n,Me(r,0,Se[t])),i=Me(r,Se[t]);if(s[0]!=i[0]||s[1]!=i[1])throw new f(de)})(n,i,r,Me(e,0,Se[i]+2)),e=Me(e,Se[i]+2),s?t.error(new f(we)):a()):await o;const c=new w(e.length-ze-(e.length-ze)%pe);t.enqueue(Ne(n,e,c,0,ze,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:i}=this;await i;const a=Me(s,0,s.length-ze),o=Me(s,s.length-ze);let c=new w;if(a.length){const e=Pe(We,a);r.update(e);const t=n.update(e);c=Be(We,t)}if(t){const e=Me(Be(We,r.digest()),0,ze);for(let t=0;ze>t;t++)if(e[t]!=o[t])throw new f(fe)}e.enqueue(c)}})}}class Le extends _{constructor({password:e,encryptionStrength:t}){let r;super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:i,ready:a}=n;let o=new w;r?(o=await(async(e,t,n)=>{const r=he(new w(Se[t]));return qe(r,await Oe(e,t,n,r))})(n,s,r),i()):await a;const c=new w(o.length+e.length-e.length%pe);c.set(o,0),t.enqueue(Ne(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:s,ready:i}=this;await i;let a=new w;if(s.length){const e=t.update(Pe(We,s));n.update(e),a=Be(We,e)}r.signature=Be(We,n.digest()).slice(0,ze),e.enqueue(qe(a,r.signature))}}),r=this}}function Ne(e,t,n,r,s,i){const{ctr:a,hmac:o,pending:c}=e,l=t.length-s;let u;for(c.length&&(t=qe(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e})(n,l-l%pe)),u=0;l-pe>=u;u+=pe){const e=Pe(We,Me(t,u,u+pe));i&&o.update(e);const s=a.update(e);i||o.update(s),n.set(Be(We,s),u+r)}return e.pending=Me(t,u),n}async function Oe(e,r,s,i){e.password=null;const a=se(s),o=await(async(e,t,n,r,s)=>{if(!Te)return le.importKey(t);try{return await De.importKey("raw",t,n,!1,s)}catch(e){return Te=!1,le.importKey(t)}})(0,a,me,0,be),c=await(async(e,t,n)=>{if(!Ue)return le.pbkdf2(t,e.salt,ye.iterations,n);try{return await De.deriveBits(e,t,n)}catch(r){return Ue=!1,le.pbkdf2(t,e.salt,ye.iterations,n)}})(n.assign({salt:i},ye),o,8*(2*ke[r]+2)),l=new w(c),u=Pe(We,Me(l,0,ke[r])),d=Pe(We,Me(l,ke[r],2*ke[r])),f=Me(l,2*ke[r]);return n.assign(e,{keys:{key:u,authentication:d,passwordVerification:f},ctr:new Fe(new Ae(u),t.from(ve)),hmac:new Ee(d)}),f}function qe(e,t){let n=e;return e.length+t.length&&(n=new w(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Me(e,t,n){return e.subarray(t,n)}function Be(e,t){return e.fromBits(t)}function Pe(e,t){return e.toBits(t)}class Ke extends _{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Ye(this,e)},transform(e,t){const n=this;if(n.password){const t=He(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(de);e=e.subarray(12)}r?t.error(new f(we)):t.enqueue(He(n,e))}})}}class Ve extends _{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Ye(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=he(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Ze(n,t),0),s=12}else r=new w(e.length),s=0;r.set(Ze(n,e),s),t.enqueue(r)}})}}function He(e,t){const n=new w(t.length);for(let r=0;r>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function je(e){const t=2|e.keys[2];return Ge(a.imul(t,1^t)>>>8)}function Ge(e){return 255&e}function Je(e){return 4294967295&e}const $e="deflate-raw";class Qe extends _{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:a,zipCrypto:o,signed:c,level:l}=e,u=this;let d,f,w=tt(super.readable);i&&!o||!c||(d=new re,w=st(w,d)),s&&(w=rt(w,a,{level:l,chunkSize:t},r,n)),i&&(o?w=st(w,new Ve(e)):(f=new Le(e),w=st(w,f))),nt(u,w,(async()=>{let e;i&&!o&&(e=f.signature),i&&!o||!c||(e=new g(d.value.buffer).getUint32(0)),u.signature=e}))}}class et extends _{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:i,signed:a,signature:o,compressed:c,useCompressionStream:l}=e;let u,d,w=tt(super.readable);i&&(s?w=st(w,new Ke(e)):(d=new Ie(e),w=st(w,d))),c&&(w=rt(w,l,{chunkSize:t},r,n)),i&&!s||!a||(u=new re,w=st(w,u)),nt(this,w,(async()=>{if((!i||s)&&a){const e=new g(u.value.buffer);if(o!=e.getUint32(0,!1))throw new f(fe)}}))}}function tt(e){return st(e,new _({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function nt(e,t,r){t=st(t,new _({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function rt(e,t,n,r,s){try{e=st(e,new(t&&r?r:s)($e,n))}catch(r){if(!t)throw r;e=st(e,new s($e,n))}return e}function st(e,t){return e.pipeThrough(t)}const it="data",at="deflate",ot="inflate";class ct extends _{constructor(e,t){super({});const r=this,{codecType:s}=e;let i;s.startsWith(at)?i=Qe:s.startsWith(ot)&&(i=et);let a=0;const o=new i(e,t),c=super.readable,l=new _({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;n.assign(r,{signature:e,size:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(o).pipeThrough(l)})}}const lt=typeof A!=V;class ut{constructor(e,{readable:t,writable:r},{options:s,config:i,streamOptions:a,useWebWorkers:o,transferStreams:c,scripts:l},u){const{signal:d}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new dt(t,a,i),{signal:d}),writable:r,options:n.assign({},s),scripts:l,transferStreams:c,terminate(){const{worker:t,busy:n}=e;t&&!n&&(t.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,u(e)}}),(o&<?ht:wt)(e,i)}}class dt extends _{constructor(e,{onstart:t,onprogress:n,size:r,onend:s},{chunkSize:i}){let a=0;super({start(){t&&ft(t,r)},async transform(e,t){a+=e.length,n&&await ft(n,a,r),t.enqueue(e)},flush(){e.size=a,s&&ft(s,a)}},{highWaterMark:1,size:()=>i})}}async function ft(e,...t){try{await e(...t)}catch(e){}}function wt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{const i=new ct(e,s);try{await t.pipeThrough(i).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:e,size:s}=i;return{signature:e,size:s}}finally{r()}})(e,t)}}function ht(e,{baseURL:t,chunkSize:r}){return e.interface||n.assign(e,{worker:mt(e.scripts[0],t,e),interface:{run:()=>(async(e,t)=>{let r,s;const i=new y(((e,t)=>{r=e,s=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:s,result:i});const{readable:a,options:o,scripts:c}=e,{writable:l,closed:u}=(e=>{const t=e.getWriter();let n;const r=new y((e=>n=e));return{writable:new x({async write(e){await t.ready,await t.write(e)},close(){t.releaseLock(),n()},abort:e=>t.abort(e)}),closed:r}})(e.writable);yt({type:"start",scripts:c.slice(1),options:o,config:t,readable:a,writable:l},e)||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const d=await i;try{await l.getWriter().close()}catch(e){}return await u,d})(e,{chunkSize:r})}}),e.interface}let pt=!0,gt=!0;function mt(e,t,r){const s={type:"module"};let i,a;typeof e==H&&(e=e());try{i=new d(e,t)}catch(t){i=e}if(pt)try{a=new A(i)}catch(e){pt=!1,a=new A(i,s)}else a=new A(i,s);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:s,messageId:i,result:a,error:o}=e,{reader:c,writer:l,resolveResult:u,rejectResult:d,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:r,name:s}=o,i=new f(e);n.assign(i,{stack:t,code:r,name:s}),p(i)}else{if("pull"==r){const{value:e,done:n}=await c.read();yt({type:it,value:e,done:n,messageId:i},t)}r==it&&(await l.ready,await l.write(new w(s)),yt({type:"ack",messageId:i},t)),"close"==r&&p(null,a)}}catch(o){p(o)}function p(e,t){e?d(e):u(t),l&&l.releaseLock(),h()}})(e,r))),a}function yt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{let{value:n,readable:r,writable:i}=e;const a=[];if(n&&(e.value=n.buffer,a.push(e.value)),s&>?(r&&a.push(r),i&&a.push(i)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch(n){gt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let bt=[];const St=[];let kt=0;async function zt(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:a,useCompressionStream:o,codecType:c,compressed:l,signed:u,encrypted:d}=n,{workerScripts:f,maxWorkers:w,terminateWorkerTimeout:h}=r;t.transferStreams=i||i===K;const p=!(l||u||d||t.transferStreams);let g;t.useWebWorkers=!p&&(a||a===K&&r.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[c]:[],n.useCompressionStream=o||o===K&&r.useCompressionStream;const m=bt.find((e=>!e.busy));if(m)vt(m),g=new ut(m,e,t,b);else if(bt.lengthSt.push({resolve:n,stream:e,workerOptions:t})));return g.run();function b(e){if(St.length){const[{resolve:t,stream:n,workerOptions:r}]=St.splice(0,1);t(new ut(e,n,r,b))}else e.worker?(vt(e),s.isFinite(h)&&h>=0&&(e.terminateTimeout=setTimeout((()=>{bt=bt.filter((t=>t!=e)),e.terminate()}),h))):bt=bt.filter((t=>t!=e))}}function vt(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const _t="HTTP error ",Ct="HTTP Range not supported",xt="Writer iterator completed too soon",Dt="GET",Rt="bytes",Wt=65536,At="writable";class Ft{constructor(){this.size=0}init(){this.initialized=!0}}class Et extends Ft{get readable(){const e=this,{chunkSize:t=Wt}=e,n=new C({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:i,diskNumberStart:o}=n,{chunkOffset:c}=this;r.enqueue(await cn(e,s+c,a.min(t,i-c),o)),c+t>i?r.close():this.chunkOffset+=t}});return n}}class Tt extends Ft{constructor(){super();const e=this,t=new x({write:t=>e.writeUint8Array(t)});n.defineProperty(e,At,{get:()=>t})}writeUint8Array(){}}class Ut extends Et{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,s=new w(t),i=4*a.floor(e/3),o=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);for(let e=c;c+t>e;e++)s[e-c]=o.charCodeAt(e);return s}}class It extends Tt{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,s=t.pending;const i=t.pending.length;for(t.pending="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)s+=r.fromCharCode(e[n]);for(;n2?t.data+=v(s):t.pending=s}getData(){return this.data+v(this.pending)}}class Lt extends Et{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||rt&&(i=i.slice(e,r)),new w(i)}}class Nt extends Ft{constructor(e){super();const t=new _,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,At,{get:()=>t.writable}),this.blob=new u(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Ot extends Lt{constructor(e){super(new m([e],{type:"text/plain"}))}}class qt extends Nt{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 y(((s,i)=>{n.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>i(t.error)}),t.readAsText(r,e)}))}}}class Mt extends Et{constructor(e,t){super(),Pt(this,e,t)}async init(){await Kt(this,Jt,Yt),super.init()}readUint8Array(e,t){return Vt(this,e,t,Jt,Yt)}}class Bt extends Et{constructor(e,t){super(),Pt(this,e,t)}async init(){await Kt(this,$t,Xt),super.init()}readUint8Array(e,t){return Vt(this,e,t,$t,Xt)}}function Pt(e,t,r){const{preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a}=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:i,forceRangeRequests:a})}async function Kt(e,t,n){const{url:r,useRangeHeader:i,forceRangeRequests:a}=e;if((e=>{const{baseURL:t}=G(),{protocol:n}=new d(e,t);return"http:"==n||"https:"==n})(r)&&(i||a)){const{headers:r}=await t(Dt,e,Ht(e));if(!a&&r.get("Accept-Ranges")!=Rt)throw new f(Ct);{let i;const a=r.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(i=s(t))}}i===K?await Gt(e,t,n):e.size=i}}else await Gt(e,t,n)}async function Vt(e,t,n,r,s){const{useRangeHeader:i,forceRangeRequests:a,options:o}=e;if(i||a){const s=await r(Dt,e,Ht(e,t,n));if(206!=s.status)throw new f(Ct);return new w(await s.arrayBuffer())}{const{data:r}=e;return r||await s(e,o),new w(e.data.subarray(t,t+n))}}function Ht(e,t=0,r=1){return n.assign({},Zt(e),{Range:Rt+"="+t+"-"+(t+r-1)})}function Zt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Yt(e){await jt(e,Jt)}async function Xt(e){await jt(e,$t)}async function jt(e,t){const n=await t(Dt,e,Zt(e));e.data=new w(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Gt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Zt(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 i=await fetch(r,n.assign({},t,{method:e,headers:s}));if(400>i.status)return i;throw 416==i.status?new f(Ct):new f(_t+(i.statusText||i.status))}function $t(e,{url:t},r){return new y(((s,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),s({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new f(Ct):new f(_t+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>i(e.detail?e.detail.error:new f("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class Qt extends Et{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Bt(e,t):new Mt(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class en extends Et{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class tn extends Tt{init(e=0){n.assign(this,{offset:0,array:new w(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new w(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}}class nn extends Et{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await y.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:s}=this;let i,o=n;-1==o&&(o=s.length-1);let c=e;for(;c>=s[o].size;)c-=s[o].size,o++;const l=s[o],u=l.size;if(c+t>u){const s=u-c;i=new w(t),i.set(await cn(l,c,s)),i.set(await r.readUint8Array(e+s,t-s,n),s)}else i=await cn(l,c,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),i}}class rn extends Ft{constructor(e,t=4294967295){super();const r=this;let s,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new x({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function sn(e,t){e.init&&!e.initialized&&await e.init(t)}function an(e){return t.isArray(e)&&(e=new nn(e)),e instanceof C&&(e={readable:e}),e}function on(e){e.writable===K&&typeof e.next==H&&(e=new rn(e)),e instanceof x&&(e={writable:e});const{writable:t}=e;return t.size===K&&(t.size=0),e instanceof rn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function cn(e,t,n,r){return e.readUint8Array(t,n,r)}const ln=nn,un=rn,dn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function fn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const Fn="File format is not recognized",En="End of central directory not found",Tn="End of Zip64 central directory not found",Un="End of Zip64 central directory locator not found",In="Central directory header not found",Ln="Local file header not found",Nn="Zip64 extra field not found",On="File contains encrypted entry",qn="Encryption method not supported",Mn="Compression method not supported",Bn="Split zip file",Pn="utf-8",Kn="cp437",Vn=[[mn,F],[yn,F],[bn,F],[Sn,E]],Hn={[E]:{getValue:nr,bytes:4},[F]:{getValue:rr,bytes:8}};class Zn{constructor(e,t={}){n.assign(this,{reader:an(e),options:t,config:G()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:s}=t;if(await sn(r),r.size!==K&&r.readUint8Array||(r=new Lt(await new u(r.readable).blob()),await sn(r)),22>r.size)throw new f(Fn);r.chunkSize=J(s);const i=await(async(e,t,n)=>{const r=new w(4);return sr(r).setUint32(0,101010256,!0),await s(22)||await s(a.min(1048582,n));async function s(t){const s=n-t,i=await cn(e,s,t);for(let e=i.length-22;e>=0;e--)if(i[e]==r[0]&&i[e+1]==r[1]&&i[e+2]==r[2]&&i[e+3]==r[3])return{offset:s+e,buffer:i.slice(e,e+22).buffer}}})(r,0,r.size);if(!i)throw nr(sr(await cn(r,0,4)))==U?new f(Bn):new f(En);const o=sr(i);let c=nr(o,12),l=nr(o,16);const d=i.offset,h=tr(o,20),p=d+22+h;let g=tr(o,4);const m=r.lastDiskNumber||0;let b=tr(o,6),S=tr(o,8),k=0,z=0;if(l==F||c==F||S==E||b==E){const e=sr(await cn(r,i.offset-20,20));if(nr(e,0)!=N)throw new f(Tn);l=rr(e,8);let t=await cn(r,l,56,-1),n=sr(t);const s=i.offset-20-56;if(nr(n,0)!=L&&l!=s){const e=l;l=s,k=l-e,t=await cn(r,l,56,-1),n=sr(t)}if(nr(n,0)!=L)throw new f(Un);g==E&&(g=nr(n,16)),b==E&&(b=nr(n,20)),S==E&&(S=rr(n,32)),c==F&&(c=rr(n,40)),l-=c}if(m!=g)throw new f(Bn);if(0>l||l>=r.size)throw new f(Fn);let v=0,_=await cn(r,l,c,b),C=sr(_);if(c){const e=i.offset-c;if(nr(C,v)!=I&&l!=e){const t=l;l=e,k=l-t,_=await cn(r,l,c,b),C=sr(_)}}const x=i.offset-l-(r.lastDiskOffset||0);if(c==x||0>x||(c=x,_=await cn(r,l,c,b),C=sr(_)),0>l||l>=r.size)throw new f(Fn);const D=Jn(t,e,"filenameEncoding"),R=Jn(t,e,"commentEncoding");for(let i=0;S>i;i++){const o=new Yn(r,s,t.options);if(nr(C,v)!=I)throw new f(In);Xn(o,C,v+6);const c=!!o.bitFlag.languageEncodingFlag,l=v+46,u=l+o.filenameLength,d=u+o.extraFieldLength,w=tr(C,v+4),h=0==(0&w),p=_.subarray(l,u),g=tr(C,v+32),m=d+g,b=_.subarray(d,m),x=c,W=c,A=h&&16==(16&er(C,v+38)),F=nr(C,v+42)+k;n.assign(o,{versionMadeBy:w,msDosCompatible:h,compressedSize:0,uncompressedSize:0,commentLength:g,directory:A,offset:F,diskNumberStart:tr(C,v+34),internalFileAttribute:tr(C,v+36),externalFileAttribute:nr(C,v+38),rawFilename:p,filenameUTF8:x,commentUTF8:W,rawExtraField:_.subarray(u,d)});const[E,T]=await y.all([fn(p,x?Pn:D||Kn),fn(b,W?Pn:R||Kn)]);n.assign(o,{rawComment:b,filename:E,comment:T,directory:A||E.endsWith(M)}),z=a.max(F,z),await jn(o,o,C,v+6);const U=new An(o);U.getData=(e,t)=>o.getData(e,U,t),v=m;const{onprogress:L}=e;if(L)try{await L(i+1,S,new An(o))}catch(e){}yield U}const W=Jn(t,e,"extractPrependedData"),A=Jn(t,e,"extractAppendedData");return W&&(t.prependedData=z>0?await cn(r,0,z):new w),t.comment=h?await cn(r,d+22,h):new w,A&&(t.appendedData=p>>8&255:h>>>24&255),signature:h,compressed:0!=l,encrypted:k,useWebWorkers:Jn(s,r,"useWebWorkers"),useCompressionStream:Jn(s,r,"useCompressionStream"),transferStreams:Jn(s,r,"transferStreams"),checkPasswordOnly:R},config:u,streamOptions:{signal:D,size:_,onstart:A,onprogress:F,onend:E}};let I=0;try{({outputSize:I}=await zt({readable:C,writable:W},U))}catch(e){if(!R||e.message!=we)throw e}finally{const e=Jn(s,r,"preventClose");W.size+=I,e||W.locked||await W.getWriter().close()}return R?void 0:e.getData?e.getData():W}}function Xn(e,t,r){const s=e.rawBitFlag=tr(t,r+2),i=1==(1&s),a=nr(t,r+6);n.assign(e,{encrypted:i,version:tr(t,r),bitFlag:{level:(6&s)>>1,dataDescriptor:8==(8&s),languageEncodingFlag:(s&q)==q},rawLastModDate:a,lastModDate:$n(a),filenameLength:tr(t,r+22),extraFieldLength:tr(t,r+24)})}async function jn(e,t,r,s){const{rawExtraField:i}=t,a=t.extraField=new c,l=sr(new w(i));let u=0;try{for(;u{t.zip64=!0;const n=sr(e.data),r=Vn.filter((([e,n])=>t[e]==n));for(let s=0,i=0;s{const s=sr(e.data),i=er(s,4);n.assign(e,{vendorVersion:er(s,0),vendorId:er(s,2),strength:i,originalCompressionMethod:r,compressionMethod:tr(s,5)}),t.compressionMethod=e.compressionMethod})(m,t,d),t.extraFieldAES=m):t.compressionMethod=d;const y=a.get(10);y&&(((e,t)=>{const r=sr(e.data);let s,i=4;try{for(;i{const n=sr(e.data),r=er(n,0),s=[],i=[];1==(1&r)&&(s.push(kn),i.push(zn)),2==(2&r)&&(s.push(vn),i.push("rawLastAccessDate")),4==(4&r)&&(s.push(_n),i.push("rawCreationDate"));let a=1;s.forEach(((r,s)=>{if(e.data.length>=a+4){const c=nr(n,a);t[r]=e[r]=new o(1e3*c);const l=i[s];e[l]=c}a+=4}))})(b,t),t.extraFieldExtendedTimestamp=b)}async function Gn(e,t,r,s,i){const a=sr(e.data),o=new ne;o.append(i[r]);const c=sr(new w(4));c.setUint32(0,o.get(),!0);const l=nr(a,1);n.assign(e,{version:er(a,0),[t]:fn(e.data.subarray(5)),valid:!i.bitFlag.languageEncodingFlag&&l==nr(c,0)}),e.valid&&(s[t]=e[t],s[t+"UTF8"]=!0)}function Jn(e,t,n){return t[n]===K?e.options[n]:t[n]}function $n(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Qn(e){return new o(s(e/i(1e4)-i(116444736e5)))}function er(e,t){return e.getUint8(t)}function tr(e,t){return e.getUint16(t,!0)}function nr(e,t){return e.getUint32(t,!0)}function rr(e,t){return s(e.getBigUint64(t,!0))}function sr(e){return new g(e.buffer)}const ir="File already exists",ar="Zip file comment exceeds 64KB",or="File entry comment exceeds 64KB",cr="File entry name exceeds 64KB",lr="Version exceeds 65535",ur="The strength must equal 1, 2, or 3",dr="Extra field type exceeds 65535",fr="Extra field data exceeds 64KB",wr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",hr=new w([7,0,2,0,65,69,3,0,0]);let pr=0;const gr=[];class mr{constructor(e,t={}){e=on(e),n.assign(this,{writer:e,addSplitZipSignature:e instanceof rn,options:t,config:G(),files:new c,filenames:new l,offset:e.writable.size,pendingEntriesSize:0,pendingAddFileCalls:new l,bufferedWrites:0})}async add(e="",r,s={}){const c=this,{pendingAddFileCalls:l,config:u}=c;let d;prgr.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new f(ir);return c.filenames.add(e),d=(async(e,r,s,c)=>{r=r.trim(),c.directory&&!r.endsWith(M)?r+=M:c.directory=r.endsWith(M);const l=se(r);if(Dr(l)>E)throw new f(cr);const u=c.comment||"",d=se(u);if(Dr(d)>E)throw new f(or);const m=Sr(e,c,"version",20);if(m>E)throw new f(lr);const b=Sr(e,c,"versionMadeBy",20);if(b>E)throw new f(lr);const S=Sr(e,c,kn,new o),k=Sr(e,c,vn),z=Sr(e,c,_n),v=Sr(e,c,Dn,!0),_=Sr(e,c,Cn,0),C=Sr(e,c,xn,0),x=Sr(e,c,"password"),D=Sr(e,c,"encryptionStrength",3),R=Sr(e,c,"zipCrypto"),W=Sr(e,c,"extendedTimestamp",!0),A=Sr(e,c,"keepOrder",!0),I=Sr(e,c,"level"),L=Sr(e,c,"useWebWorkers"),N=Sr(e,c,"bufferedWrite"),V=Sr(e,c,"dataDescriptorSignature",!1),H=Sr(e,c,"signal"),Z=Sr(e,c,"useCompressionStream");let Y=Sr(e,c,"dataDescriptor",!0),X=Sr(e,c,Rn);if(x!==K&&D!==K&&(1>D||D>3))throw new f(ur);let j=new w;const{extraField:G}=c;if(G){let e=0,t=0;G.forEach((t=>e+=4+Dr(t))),j=new w(e),G.forEach(((e,n)=>{if(n>E)throw new f(dr);if(Dr(e)>E)throw new f(fr);Cr(j,new h([n]),t),Cr(j,new h([Dr(e)]),t+2),Cr(j,e,t+4),t+=4+Dr(e)}))}let $=0,Q=0,ee=0;const te=!0===X;s&&(s=an(s),await sn(s),s.size===K?(Y=!0,(X||X===K)&&(X=!0,ee=$=F)):(ee=s.size,$=(e=>e+5*(a.floor(e/16383)+1))(ee)));const{diskOffset:ne,diskNumber:re,maxSize:ie}=e.writer,ae=te||ee>=F,oe=te||$>=F,ce=te||e.offset+e.pendingEntriesSize-ne>=F,le=Sr(e,c,"supportZip64SplitFile",!0)&&te||re+a.ceil(e.pendingEntriesSize/ie)>=E;if(ce||ae||oe||le){if(!1===X||!A)throw new f(wr);X=!0}X=X||!1;const ue=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,password:i,level:o,zip64:c,zipCrypto:l,dataDescriptor:u,directory:d,rawExtraField:f,encryptionStrength:h,extendedTimestamp:g}=e,m=0!==o&&!d,y=!(!i||!Dr(i));let b,S,k,z=e.version;if(y&&!l){b=new w(Dr(hr)+2);const e=xr(b);zr(e,0,39169),Cr(b,hr,2),kr(e,8,h)}else b=new w;if(g){k=new w(9+(r?4:0)+(s?4:0));const e=xr(k);zr(e,0,O),zr(e,2,Dr(k)-4),kr(e,4,1+(r?2:0)+(s?4:0)),vr(e,5,a.floor(n.getTime()/1e3)),r&&vr(e,9,a.floor(r.getTime()/1e3)),s&&vr(e,13,a.floor(s.getTime()/1e3));try{S=new w(36);const e=xr(S),t=br(n);zr(e,0,10),zr(e,2,32),zr(e,8,1),zr(e,10,24),_r(e,12,t),_r(e,20,br(r)||t),_r(e,28,br(s)||t)}catch(e){S=new w}}else S=k=new w;let v=q;u&&(v|=8);let _=0;m&&(_=8),c&&(z=z>45?z:45),y&&(v|=1,l||(z=z>51?z:51,_=99,m&&(b[9]=8)));const C=new w(26),x=xr(C);zr(x,0,z),zr(x,2,v),zr(x,4,_);const D=new p(1),R=xr(D);let W;W=P>n?P:n>B?B:n,zr(R,0,(W.getHours()<<6|W.getMinutes())<<5|W.getSeconds()/2),zr(R,2,(W.getFullYear()-1980<<4|W.getMonth()+1)<<5|W.getDate());const A=D[0];vr(x,6,A),zr(x,22,Dr(t));const F=Dr(b,k,S,f);zr(x,24,F);const E=new w(30+Dr(t)+F);return vr(xr(E),0,T),Cr(E,C,4),Cr(E,t,30),Cr(E,b,30+Dr(t)),Cr(E,k,30+Dr(t,b)),Cr(E,S,30+Dr(t,b,k)),Cr(E,f,30+Dr(t,b,k,S)),{localHeaderArray:E,headerArray:C,headerView:x,lastModDate:n,rawLastModDate:A,encrypted:y,compressed:m,version:z,compressionMethod:_,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:S,rawExtraFieldAES:b}})(c=n.assign({},c,{rawFilename:l,rawComment:d,version:m,versionMadeBy:b,lastModDate:S,lastAccessDate:k,creationDate:z,rawExtraField:j,zip64:X,zip64UncompressedSize:ae,zip64CompressedSize:oe,zip64Offset:ce,zip64DiskNumberStart:le,password:x,level:I,useWebWorkers:L,encryptionStrength:D,extendedTimestamp:W,zipCrypto:R,bufferedWrite:N,keepOrder:A,dataDescriptor:Y,dataDescriptorSignature:V,signal:H,msDosCompatible:v,internalFileAttribute:_,externalFileAttribute:C,useCompressionStream:Z})),de=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let s,i=new w,a=0;return n&&(i=new w(t?r?24:20:r?16:12),s=xr(i),r&&(a=4,vr(s,0,134695760))),{dataDescriptorArray:i,dataDescriptorView:s,dataDescriptorOffset:a}})(c);let fe;Q=Dr(ue.localHeaderArray,de.dataDescriptorArray)+$,e.pendingEntriesSize+=Q;try{fe=await(async(e,r,s,a,o)=>{const{files:c,writer:l}=e,{keepOrder:u,dataDescriptor:d,signal:h}=o,{headerInfo:p}=a,m=t.from(c.values()).pop();let b,S,k,z,v,_,C={};c.set(r,C);try{let t;u&&(t=m&&m.lock,C.lock=new y((e=>k=e))),o.bufferedWrite||e.writerLocked||e.bufferedWrites&&u||!d?(_=new Nt,_.writable.size=0,b=!0,e.bufferedWrites++,await sn(l)):(_=l,await x()),await sn(_);const{writable:p}=l;let{diskOffset:R}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new w(4);vr(xr(t),0,U),await yr(p,t),e.offset+=4}b||(await t,await D(p));const{diskNumber:W}=l;if(v=!0,C.diskNumberStart=W,C=await(async(e,t,{diskNumberStart:r,lock:s},a,o,c)=>{const{headerInfo:l,dataDescriptorInfo:u}=a,{localHeaderArray:d,headerArray:f,lastModDate:h,rawLastModDate:p,encrypted:g,compressed:m,version:y,compressionMethod:b,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:z}=l,{dataDescriptorArray:v}=u,{rawFilename:_,lastAccessDate:C,creationDate:x,password:D,level:R,zip64:W,zip64UncompressedSize:A,zip64CompressedSize:E,zip64Offset:T,zip64DiskNumberStart:U,zipCrypto:I,dataDescriptor:L,directory:N,versionMadeBy:O,rawComment:q,rawExtraField:M,useWebWorkers:B,onstart:P,onprogress:V,onend:H,signal:Z,encryptionStrength:Y,extendedTimestamp:X,msDosCompatible:j,internalFileAttribute:G,externalFileAttribute:$,useCompressionStream:Q}=c,ee={lock:s,versionMadeBy:O,zip64:W,directory:!!N,filenameUTF8:!0,rawFilename:_,commentUTF8:!0,rawComment:q,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:z,rawExtraField:M,extendedTimestamp:X,msDosCompatible:j,internalFileAttribute:G,externalFileAttribute:$,diskNumberStart:r};let te,ne=0,re=0;const{writable:se}=t;if(e){e.chunkSize=J(o),await yr(se,d);const t=e.readable,n=t.size=e.size,r={options:{codecType:at,level:R,password:D,encryptionStrength:Y,zipCrypto:g&&I,passwordVerification:g&&I&&p>>8&255,signed:!0,compressed:m,encrypted:g,useWebWorkers:B,useCompressionStream:Q,transferStreams:!1},config:o,streamOptions:{signal:Z,size:n,onstart:P,onprogress:V,onend:H}},s=await zt({readable:t,writable:se},r);se.size+=s.size,te=s.signature,re=e.size=t.size,ne=s.size}else await yr(se,d);let ie;if(W){let e=4;A&&(e+=8),E&&(e+=8),T&&(e+=8),U&&(e+=4),ie=new w(e)}else ie=new w;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:s,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:c}=e,{headerView:l,encrypted:u}=o,{dataDescriptorView:d,dataDescriptorOffset:f}=c,{zip64:w,zip64UncompressedSize:h,zip64CompressedSize:p,zipCrypto:g,dataDescriptor:m}=t;if(u&&!g||n===K||(vr(l,10,n),m&&vr(d,f,n)),w){const e=xr(r);zr(e,0,1),zr(e,2,r.length-4);let t=4;h&&(vr(l,18,F),_r(e,t,i(a)),t+=8),p&&(vr(l,14,F),_r(e,t,i(s))),m&&(_r(d,f+4,i(s)),_r(d,f+12,i(a)))}else vr(l,14,s),vr(l,18,a),m&&(vr(d,f+4,s),vr(d,f+8,a))})({signature:te,rawExtraFieldZip64:ie,compressedSize:ne,uncompressedSize:re,headerInfo:l,dataDescriptorInfo:u},c),L&&await yr(se,v),n.assign(ee,{uncompressedSize:re,compressedSize:ne,lastModDate:h,rawLastModDate:p,creationDate:x,lastAccessDate:C,encrypted:g,length:Dr(d,v)+ne,compressionMethod:b,version:y,headerArray:f,signature:te,rawExtraFieldZip64:ie,zip64UncompressedSize:A,zip64CompressedSize:E,zip64Offset:T,zip64DiskNumberStart:U}),ee})(s,_,C,a,e.config,o),v=!1,c.set(r,C),C.filename=r,b){await _.writable.getWriter().close();let e=await _.getData();await t,await x(),z=!0,d||(e=await(async(e,t,n,{zipCrypto:r})=>{let s;s=await t.slice(0,26).arrayBuffer(),26!=s.byteLength&&(s=s.slice(0,26));const i=new g(s);return e.encrypted&&!r||vr(i,14,e.signature),e.zip64?(vr(i,18,F),vr(i,22,F)):(vr(i,18,e.compressedSize),vr(i,22,e.uncompressedSize)),await yr(n,new w(s)),t.slice(s.byteLength)})(C,e,p,o)),await D(p),C.diskNumberStart=l.diskNumber,R=l.diskOffset,await e.stream().pipeTo(p,{preventClose:!0,preventAbort:!0,signal:h}),p.size+=e.size,z=!1}if(C.offset=e.offset-R,C.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:s}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:c,zip64DiskNumberStart:l}=t,u=xr(n);let d=4;a&&(d+=8),o&&(d+=8),c&&(_r(u,d,i(r)),d+=8),l&&vr(u,d,s)})(C,o);else if(C.offset>=F)throw new f(wr);return e.offset+=C.length,C}catch(t){if(b&&z||!b&&v){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}b?e.offset+=_.writable.size:e.offset=_.writable.size}throw c.delete(r),t}finally{b&&e.bufferedWrites--,k&&k(),S&&S()}async function x(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new y((t=>S=()=>{e.writerLocked=!1,t()})),await t}async function D(e){p.localHeaderArray.length>l.availableSize&&(l.availableSize=0,await yr(e,new w))}})(e,r,s,{headerInfo:ue,dataDescriptorInfo:de},c)}finally{e.pendingEntriesSize-=Q}return n.assign(fe,{name:r,comment:u,extraField:G}),new An(fe)})(c,e,r,s),l.add(d),await d}catch(t){throw c.filenames.delete(e),t}finally{l.delete(d);const e=gr.shift();e?e():pr--}}async close(e=new w,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await y.all(t.from(r));return await(async(e,n,r)=>{const{files:s,writer:o}=e,{diskOffset:c,writable:l}=o;let{diskNumber:u}=o,d=0,h=0,p=e.offset-c,g=s.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:r,rawComment:i,rawExtraFieldExtendedTimestamp:a,rawExtraFieldNTFS:o}]of s)h+=46+Dr(e,i,t,n,a,o,r);const m=new w(h),y=xr(m);await sn(o);let b=0;for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:i,rawExtraFieldZip64:c,rawExtraFieldAES:u,rawExtraFieldNTFS:f,rawExtraField:h,rawComment:p,versionMadeBy:g,headerArray:S,directory:k,zip64:z,zip64UncompressedSize:v,zip64CompressedSize:_,zip64DiskNumberStart:C,zip64Offset:x,msDosCompatible:D,internalFileAttribute:R,externalFileAttribute:W,extendedTimestamp:A,lastModDate:T,diskNumberStart:U,uncompressedSize:L,compressedSize:N}=n;let q;if(A){q=new w(9);const e=xr(q);zr(e,0,O),zr(e,2,Dr(q)-4),kr(e,4,1),vr(e,5,a.floor(T.getTime()/1e3))}else q=new w;const M=Dr(c,u,q,f,h);vr(y,d,I),zr(y,d+4,g);const B=xr(S);v||vr(B,18,L),_||vr(B,14,N),Cr(m,S,d+6),zr(y,d+30,M),zr(y,d+32,Dr(p)),zr(y,d+34,z&&C?E:U),zr(y,d+36,R),W?vr(y,d+38,W):k&&D&&kr(y,d+38,16),vr(y,d+42,z&&x?F:t),Cr(m,i,d+46),Cr(m,c,d+46+Dr(i)),Cr(m,u,d+46+Dr(i,c)),Cr(m,q,d+46+Dr(i,c,u)),Cr(m,f,d+46+Dr(i,c,u,q)),Cr(m,h,d+46+Dr(i,c,u,q,f)),Cr(m,p,d+46+Dr(i)+M);const P=46+Dr(i,p)+M;if(d-b>o.availableSize&&(o.availableSize=0,await yr(l,m.slice(b,d)),b=d),d+=P,r.onprogress)try{await r.onprogress(e+1,s.size,new An(n))}catch(e){}}await yr(l,b?m.slice(b):m);let S=o.diskNumber;const{availableSize:k}=o;22>k&&S++;let z=Sr(e,r,"zip64");if(!(F>p&&F>h&&E>g&&E>S)){if(!1===z)throw new f(wr);z=!0}const v=new w(z?98:22),_=xr(v);d=0,z&&(vr(_,0,L),_r(_,4,i(44)),zr(_,12,45),zr(_,14,45),vr(_,16,S),vr(_,20,u),_r(_,24,i(g)),_r(_,32,i(g)),_r(_,40,i(h)),_r(_,48,i(p)),vr(_,56,N),_r(_,64,i(p)+i(h)),vr(_,72,S+1),Sr(e,r,"supportZip64SplitFile",!0)&&(S=E,u=E),g=E,p=F,h=F,d+=76),vr(_,d,101010256),zr(_,d+4,S),zr(_,d+6,u),zr(_,d+8,g),zr(_,d+10,g),vr(_,d+12,h),vr(_,d+16,p);const C=Dr(n);if(C){if(C>E)throw new f(ar);zr(_,d+20,C)}await yr(l,v),C&&await yr(l,n)})(this,e,n),Sr(this,n,"preventClose")||await o.getWriter().close(),s.getData?s.getData():o}}async function yr(e,t){const n=e.getWriter();await n.ready,e.size+=Dr(t),await n.write(t),n.releaseLock()}function br(e){if(e)return(i(e.getTime())+i(116444736e5))*i(1e4)}function Sr(e,t,n,r){const s=t[n]===K?e.options[n]:t[n];return s===K?r:s}function kr(e,t,n){e.setUint8(t,n)}function zr(e,t,n){e.setUint16(t,n,!0)}function vr(e,t,n){e.setUint32(t,n,!0)}function _r(e,t,n){e.setBigUint64(t,n,!0)}function Cr(e,t,n){e.set(t,n)}function xr(e){return new g(e.buffer)}function Dr(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}class Rr{constructor(e,t,r,s){const i=this;if(e.root&&s&&s.getChildByName(t))throw new f("Entry filename already exists");r||(r={}),n.assign(i,{fs:e,name:t,data:r.data,options:r.options,id:e.entries.length,parent:s,children:[],uncompressedSize:r.uncompressedSize||0}),e.entries.push(i),s&&i.parent.children.push(i)}moveTo(e){this.fs.move(this,e)}getFullname(){return this.getRelativeName()}getRelativeName(e=this.fs.root){let t=this.name,n=this.parent;for(;n&&n!=e;)t=(n.name?n.name+"/":"")+t,n=n.parent;return t}isDescendantOf(e){let t=this.parent;for(;t&&t.id!=e.id;)t=t.parent;return!!t}rename(e){const t=this.parent;if(t&&t.getChildByName(e))throw new f("Entry filename already exists");this.name=e}}class Wr extends Rr{constructor(e,t,n,r){super(e,t,n,r);const s=this;s.Reader=n.Reader,s.Writer=n.Writer,n.getData&&(s.getData=n.getData)}clone(){return new Wr(this.fs,this.name,this)}async getData(e,t={}){const n=this;if(!e||e.constructor==n.Writer&&n.data)return n.data;{const r=n.reader=new n.Reader(n.data,t),s=n.data?n.data.uncompressedSize:r.size;await y.all([sn(r),sn(e,s)]);const i=r.readable;return i.size=n.uncompressedSize=r.size,await i.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return this.data.encrypted}async checkPassword(e,t={}){const n=this;if(!n.isPasswordProtected())return!0;t.password=e,t.checkPasswordOnly=!0;try{return await n.data.getData(null,t),!0}catch(e){if(e.message==de)return!1;throw e}}getText(e,t){return this.getData(new qt(e),t)}getBlob(e,t){return this.getData(new Nt(e),t)}getData64URI(e,t){return this.getData(new It(e),t)}getUint8Array(e){return this.getData(new tn,e)}getWritable(e=new x,t){return this.getData({writable:e},t)}replaceBlob(e){n.assign(this,{data:e,Reader:Lt,Writer:Nt,reader:null})}replaceText(e){n.assign(this,{data:e,Reader:Ot,Writer:qt,reader:null})}replaceData64URI(e){n.assign(this,{data:e,Reader:Ut,Writer:It,reader:null})}replaceUint8Array(e){n.assign(this,{data:e,Reader:en,Writer:tn,reader:null})}replaceReadable(e){n.assign(this,{data:null,Reader:()=>({readable:e}),Writer:null,reader:null})}}class Ar extends Rr{constructor(e,t,n,r){super(e,t,n,r),this.directory=!0}clone(e){const t=this,n=new Ar(t.fs,t.name);return e&&(n.children=t.children.map((t=>{const r=t.clone(e);return r.parent=n,r}))),n}addDirectory(e,t){return Or(this,e,{options:t},!0)}addText(e,t,n={}){return Or(this,e,{data:t,Reader:Ot,Writer:qt,options:n,uncompressedSize:t.length})}addBlob(e,t,n={}){return Or(this,e,{data:t,Reader:Lt,Writer:Nt,options:n,uncompressedSize:t.size})}addData64URI(e,t,n={}){let r=t.length;for(;"="==t.charAt(r-1);)r--;const s=t.indexOf(",")+1;return Or(this,e,{data:t,Reader:Ut,Writer:It,options:n,uncompressedSize:a.floor(.75*(r-s))})}addUint8Array(e,t,n={}){return Or(this,e,{data:t,Reader:en,Writer:tn,options:n,uncompressedSize:t.length})}addHttpContent(e,t,n={}){return Or(this,e,{data:t,Reader:class extends Qt{constructor(e){super(e,n)}},options:n})}addReadable(e,t,n={}){return Or(this,e,{Reader:()=>({readable:t}),options:n})}addFileSystemEntry(e,t={}){return Ir(this,e,t)}addFileSystemHandle(e,t={}){return Ir(this,e,t)}addFile(e,t={}){return t.lastModDate||(t.lastModDate=new o(e.lastModified)),Or(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}addData(e,t){return Or(this,e,t)}importBlob(e,t){return this.importZip(new Lt(e),t)}importData64URI(e,t){return this.importZip(new Ut(e),t)}importUint8Array(e,t){return this.importZip(new en(e),t)}importHttpContent(e,t){return this.importZip(new Qt(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new Nt(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new It(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new tn,e)}async exportWritable(e=new x,t={}){return await this.exportZip({writable:e},t),e}async importZip(e,t={}){await sn(e);const r=new Zn(e,t),s=[],i=await r.getEntries();for(const e of i){let r=this;try{const i=e.filename.split("/"),a=i.pop();i.forEach(((t,n)=>{const a=r;r=r.getChildByName(t),r||(r=new Ar(this.fs,t,{data:n==i.length-1?e:null},a),s.push(r))})),e.directory||s.push(Or(r,a,{data:e,Reader:Er(n.assign({},t)),uncompressedSize:e.uncompressedSize}))}catch(t){try{t.cause={entry:e}}catch(e){}throw t}}return s}async exportZip(e,r){const s=this;await y.all([Tr(s,r.readerOptions),sn(e)]);const i=new mr(e,r);return await(async(e,r,s,i)=>{const a=r,o=new c;await async function e(r,c){async function l(c){const l=i.relativePath?c.getRelativeName(a):c.getFullname();let u,d,f,w,h=c.options||{};c.data instanceof An&&({externalFileAttribute:u,versionMadeBy:d,comment:f,lastModDate:w}=c.data),await r.add(l,c.reader,n.assign({directory:c.directory},n.assign({},i,{externalFileAttribute:u,versionMadeBy:d,comment:f,lastModDate:w,onprogress:async e=>{if(i.onprogress){o.set(l,e);try{await i.onprogress(t.from(o.values()).reduce(((e,t)=>e+t)),s)}catch(e){}}}},h))),await e(r,c)}await(async()=>{if(i.bufferedWrite)await y.allSettled(c.children.map(l));else for(const e of c.children)await l(e)})()}(e,r)})(i,s,(e=>{let t=0;return e.forEach((function e(n){t+=n.uncompressedSize,n.children&&n.children.forEach(e)})),t})([s]),r),await i.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let n=0;nn.checkPassword(e,t))))).includes(!1)}}const Fr={FS:class{constructor(){Nr(this)}get children(){return this.root.children}remove(e){Ur(e),this.entries[e.id]=null}move(e,t){if(e==this.root)throw new f("Root directory cannot be moved");if(!t.directory)throw new f("Target entry is not a directory");if(t.isDescendantOf(e))throw new f("Entry is a ancestor of target entry");if(e!=t){if(t.getChildByName(e.name))throw new f("Entry filename already exists");Ur(e),e.parent=t,t.children.push(e)}}find(e){const t=e.split("/");let n=this.root;for(let e=0;n&&e{if(e.directory)await Tr(e,t);else{const n=e.reader=new e.Reader(e.data,t);try{await sn(n)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch(e){}throw t}e.uncompressedSize=n.size}})))}function Ur(e){if(e.parent){const t=e.parent.children;t.forEach(((n,r)=>{n.id==e.id&&t.splice(r,1)}))}}async function Ir(e,t,r){return async function e(t,s,i){try{if((s.isFile||s.isDirectory)&&(s=await Lr(s)),"file"==s.kind){const e=await s.getFile();i.push(t.addData(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:n.assign({},{lastModDate:new o(e.lastModified)},r),uncompressedSize:e.size}))}else if("directory"==s.kind){const n=t.addDirectory(s.name);i.push(n);for await(const t of s.values())await e(n,t,i)}}catch(e){const t=e.message+(s?" ("+s.name+")":"");throw new f(t)}return i}(e,t,[])}async function Lr(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new y(((t,n)=>e.file(t,n)))),e.isDirectory){t.kind="directory";const n=await(async e=>{const t=[];function n(e,r,s){e.readEntries((async i=>{if(i.length){for(const e of i)t.push(await Lr(e));n(e,r,s)}else r(t)}),s)}return await new y(((t,r)=>n(e.createReader(),t,r))),{[Symbol.iterator](){let e=0;return{next(){const n={value:t[e],done:e===t.length};return e++,n}}}}})(e);t.values=()=>n}return t}function Nr(e){e.entries=[],e.root=new Ar(e)}function Or(e,t,n,r){if(e.directory)return r?new Ar(e.fs,t,n,e):new Wr(e.fs,t,n,e);throw new f("Parent entry is not a directory")}let qr;try{qr=void 0===k&&"undefined"==typeof location?new(require("url").URL)("file:"+__filename).href:void 0===k?location.href:k.currentScript&&k.currentScript.src||new d("zip-fs.min.js",k.baseURI).href}catch(e){}$({baseURL:qr}),(e=>{const t=()=>d.createObjectURL(new m(['const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self;class k{constructor(e){return class extends p{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)}})}}}}const v=[];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;v[e]=t}class S{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^v[255&(t^e[n])];this.t=t}get(){return~this.t}}class z extends p{constructor(){let e;const t=new S;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const C={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=C.i(n);return 32===r?e.concat(t):C.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+C.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=C.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=C.i(s);return r.push(C.h(t+i&31,t+i>32?n:r.pop(),1)),r}},x={p:{m(e){const t=C.l(e)/8,n=new i(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},g(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}D(){const e=this;let t=e.C;const n=e.S;t=C.concat(t,[C.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e._/4294967296)),t.push(0|e._);t.length;)e.I(t.splice(0,16));return e.reset(),n}V(e,t,n,r){return 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}P(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.P(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.P(5,o)+n.V(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.P(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},A={getRandomValues(e){const t=new c(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)*(r.random()>.5?1:-1))};for(let s,i=0;inew I.R(x.p.g(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=C;for(t=x.p.g(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).D());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.K[0].update(r[0]),t.K[1].update(r[1]),t.U=new n(t.K[0])}reset(){const e=this;e.U=new e.M(e.K[0]),e.N=!1}update(e){this.N=!0,this.U.update(e)}digest(){const e=this,t=e.U.D(),n=new e.M(e.K[1]).update(t).D();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},D=void 0!==h&&"function"==typeof h.getRandomValues,V="Invalid password",P="Invalid signature",R="zipjs-abort-check-password";function B(e){return D?h.getRandomValues(e):A.getRandomValues(e)}const E=16,M={name:"PBKDF2"},K=t.assign({hash:{name:"HMAC"}},M),U=t.assign({iterations:1e3,hash:{name:"SHA-1"}},M),N=["deriveBits"],O=[8,12,16],T=[16,24,32],W=10,j=[0,0,0,0],H="undefined",L="function",F=typeof h!=H,q=F&&h.subtle,G=F&&typeof q!=H,J=x.p,Q=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||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.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},X=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(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}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=C.l(t);for(let s=0;r>s;s+=4){this.G(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 C.u(t,s)}},Y=I.R;let Z=F&&G&&typeof q.importKey==L,$=F&&G&&typeof q.deriveBits==L;class ee extends p{constructor({password:e,signed:n,encryptionStrength:r,checkPasswordOnly:o}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,signed:n,X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:c,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await re(e,t,n,ie(r,0,O[t])),o=ie(r,O[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(V)})(n,c,r,ie(e,0,O[c]+2)),e=ie(e,O[c]+2),o?t.error(new s(R)):f()):await a;const l=new i(e.length-W-(e.length-W)%E);t.enqueue(ne(n,e,l,0,W,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;await c;const f=ie(o,0,o.length-W),a=ie(o,o.length-W);let l=new i;if(f.length){const e=ce(J,f);r.update(e);const t=n.update(e);l=oe(J,t)}if(t){const e=ie(oe(J,r.digest()),0,W);for(let t=0;W>t;t++)if(e[t]!=a[t])throw new s(P)}e.enqueue(l)}})}}class te extends p{constructor({password:e,encryptionStrength:n}){let r;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,X:n-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=B(new i(O[t]));return se(r,await re(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%E);a.set(f,0),t.enqueue(ne(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:s,ready:o}=this;await o;let c=new i;if(s.length){const e=t.update(ce(J,s));n.update(e),c=oe(J,e)}r.signature=oe(J,n.digest()).slice(0,W),e.enqueue(se(c,r.signature))}}),r=this}}function ne(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=se(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%E)),u=0;l-E>=u;u+=E){const e=ce(J,ie(t,u,u+E));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(oe(J,s),u+r)}return e.pending=ie(t,u),n}async function re(n,r,s,o){n.password=null;const c=(e=>{if(void 0===w){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n{if(!Z)return I.importKey(t);try{return await q.importKey("raw",t,n,!1,s)}catch(e){return Z=!1,I.importKey(t)}})(0,c,K,0,N),a=await(async(e,t,n)=>{if(!$)return I.B(t,e.salt,U.iterations,n);try{return await q.deriveBits(e,t,n)}catch(r){return $=!1,I.B(t,e.salt,U.iterations,n)}})(t.assign({salt:o},U),f,8*(2*T[r]+2)),l=new i(a),u=ce(J,ie(l,0,T[r])),h=ce(J,ie(l,T[r],2*T[r])),d=ie(l,2*T[r]);return t.assign(n,{keys:{key:u,$:h,passwordVerification:d},Y:new X(new Q(u),e.from(j)),Z:new Y(h)}),d}function se(e,t){let n=e;return e.length+t.length&&(n=new i(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function ie(e,t,n){return e.subarray(t,n)}function oe(e,t){return e.m(t)}function ce(e,t){return e.g(t)}class fe extends p{constructor({password:e,passwordVerification:n,checkPasswordOnly:r}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;if(n.password){const t=le(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new s(V);e=e.subarray(12)}r?t.error(new s(R)):t.enqueue(le(n,e))}})}}class ae extends p{constructor({password:e,passwordVerification:n}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=B(new i(12));t[11]=n.passwordVerification,r=new i(e.length+t.length),r.set(ue(n,t),0),s=12}else r=new i(e.length),s=0;r.set(ue(n,e),s),t.enqueue(r)}})}}function le(e,t){const n=new i(t.length);for(let r=0;r>>24]),i=~e.te.get(),e.keys=[n,s,i]}function de(e){const t=2|e.keys[2];return pe(r.imul(t,1^t)>>>8)}function pe(e){return 255&e}function ye(e){return 4294967295&e}const me="deflate-raw";class be extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=ke(super.readable);i&&!c||!f||(w=new z,d=ze(d,w)),s&&(d=Se(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=ze(d,new ae(e)):(h=new te(e),d=ze(d,h))),ve(u,d,(async()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ge extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=ke(super.readable);o&&(i?d=ze(d,new fe(e)):(h=new ee(e),d=ze(d,h))),a&&(d=Se(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new z,d=ze(d,w)),ve(this,d,(async()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(P)}}))}}function ke(e){return ze(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ve(e,n,r){n=ze(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Se(e,t,n,r,s){try{e=ze(e,new(t&&r?r:s)(me,n))}catch(r){if(!t)throw r;e=ze(e,new s(me,n))}return e}function ze(e,t){return e.pipeThrough(t)}const Ce="data";class xe extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=be:s.startsWith("inflate")&&(i=ge);let o=0;const c=new i(e,n),f=super.readable,a=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;t.assign(r,{signature:e,size:o})}});t.defineProperty(r,"readable",{get:()=>f.pipeThrough(c).pipeThrough(a)})}}const _e=new a,Ae=new a;let Ie=0;async function De(e){try{const{options:t,scripts:r,config:s}=e;r&&r.length&&importScripts.apply(void 0,r),self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new k(self.Deflate)),self.Inflate&&(s.DecompressionStream=new k(self.Inflate));const i={highWaterMark:1,size:()=>s.chunkSize},o=e.readable||new y({async pull(e){const t=new u((e=>_e.set(Ie,e)));Ve({type:"pull",messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ae.set(Ie,t),Ve({type:Ce,value:e,messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new xe(t,s);await o.pipeThrough(f).pipeTo(c,{preventClose:!0,preventAbort:!0});try{await c.getWriter().close()}catch(e){}const{signature:a,size:l}=f;Ve({type:"close",result:{signature:a,size:l}})}catch(e){Pe(e)}}function Ve(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Pe(e){const{message:t,stack:n,code:r,name:s}=e;d({error:{message:t,stack:n,code:r,name:s}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&De(e),t==Ce){const e=_e.get(n);_e.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ae.get(n);Ae.delete(n),e()}}catch(e){Pe(e)}}));const Re=-2;function Be(t){return Ee(t.map((([t,n])=>new e(t).fill(n,0,t))))}function Ee(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?Ee(n):n)),[])}const Me=[0,1,2,3].concat(...Be([[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 Ke(){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.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Ue(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}Ke.ge=[0,1,2,3,4,5,6,7].concat(...Be([[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]])),Ke.ke=[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],Ke.ve=[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],Ke.Se=e=>256>e?Me[e]:Me[256+(e>>>7)],Ke.ze=[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],Ke.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Ke.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Ke._e=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Ne=Be([[144,8],[112,9],[24,7],[8,8]]);Ue.Ae=Ee([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,Ne[t]])));const Oe=Be([[30,5]]);function Te(e,t,n,r,s){const i=this;i.Ie=e,i.De=t,i.Ve=n,i.Pe=r,i.Re=s}Ue.Be=Ee([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,Oe[t]]))),Ue.Ee=new Ue(Ue.Ae,Ke.ze,257,286,15),Ue.Me=new Ue(Ue.Be,Ke.Ce,0,30,15),Ue.Ke=new Ue(null,Ke.xe,0,19,7);const We=[new Te(0,0,0,0,0),new Te(4,4,8,4,1),new Te(4,5,16,8,1),new Te(4,6,32,32,1),new Te(4,4,16,16,2),new Te(8,16,32,32,2),new Te(8,16,128,128,2),new Te(8,32,128,256,2),new Te(32,128,258,1024,2),new Te(32,258,258,4096,2)],je=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],He=113,Le=666,Fe=262;function qe(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function Ge(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,_,A,I,D,V,P,R,B,E,M,K;const U=new Ke,N=new Ke,O=new Ke;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)K[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?K[2*n]+=i:0!==n?(n!=r&&K[2*n]++,K[32]++):i>10?K[36]++:K[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ue[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,K)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,K),o--),Y(16,K),X(o-3,2)):o>10?(Y(18,K),X(o-11,7)):(Y(17,K),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(Ke.ge[n]+256+1)]++,M[2*Ke.Se(t)]++),0==(8191&W)&&V>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+Ke.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ue.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;V>0?(U.ne(e),N.ne(e),o=(()=>{let t;for(G(E,U.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===K[2*Ke._e[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Ue.Ae,Ue.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(K[2*Ke._e[r]+1],3);Z(E,e-1),Z(M,t-1)})(U.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-_-C,0===s&&0===C&&0===_)s=f;else if(-1==s)s--;else if(C>=f+f-Fe){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+_,s),_+=e,3>_||(p=255&u[C],p=(p<_&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=A;const o=C>f-Fe?C-(f-Fe):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>A||(r>>=2),c>_&&(c=_);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>_?_:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],K=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Re:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=He,c=0,U.re=E,U.ie=Ue.Ee,N.re=M,N.ie=Ue.Me,O.re=K,O.ie=Ue.Ke,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe,C=0,k=0,_=0,v=A=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=He&&n!=Le?Re:(e.Oe=null,e.Ne=null,e.Ue=null,d=null,h=null,u=null,e.Fe=null,n==He?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Re:(We[V].Re!=We[t].Re&&0!==e.qe&&(r=e.Ye(1)),V!=t&&(V=t,D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe),P=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Re;if(3>i)return 0;for(i>f-Fe&&(i=f-Fe,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Re;if(!r.$e||!r.et&&0!==r.We||n==Le&&4!=i)return r.Le=je[4],Re;if(0===r.tt)return r.Le=je[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(V-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=He,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=je[7],-5;if(n==Le&&0!==t.We)return r.Le=je[7],-5;if(0!==t.We||0!==_||0!=i&&n!=Le){switch(R=-1,We[V].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=_){if(ie(),0===_&&0==e)return 0;if(0===_)break}if(C+=_,_=0,n=k+r,(0===C||C>=n)&&(_=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Fe&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<f-Fe||2!=P&&(v=oe(r)),3>v)n=ee(0,255&u[C]),_--,C++;else if(n=ee(C-x,v-3),_-=v,v>D||3>_)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<A&&f-Fe>=(C-s&65535)&&(2!=P&&(v=oe(s)),5>=v&&(1==P||3==v&&C-x>4096)&&(v=2)),3>A||v>A)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,_--,0===t.tt)return 0}else z=1,C++,_--;else{r=C+_-3,n=ee(C-1-S,A-3),_-=A-1,A-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Ue.Ae),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function Je(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function Qe(e){const t=new Je,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}Je.prototype={He(e,t){const n=this;return n.Fe=new Ge,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Re},Qe(){const e=this;if(!e.Fe)return Re;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Re},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Re},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ue.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const Xe=-2,Ye=-3,Ze=-5,$e=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],et=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],tt=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],nt=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],rt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],st=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],it=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ot(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,_,A,I,D;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return Ye;if(0>(I-=n[g]))return Ye;for(n[g]+=I,i[1]=k=0,C=1,A=2;0!=--g;)i[A]=k+=n[C],A++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>_+S;){if(b++,_+=S,D=m-_,D=D>S?S:D,(y=1<<(k=v-_))>p+1&&(y-=p+1,A=v,D>k))for(;++kn[++A];)y-=n[A];if(D=1<1440)return Ye;s[b]=x=h[0],h[0]+=D,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>_-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-_,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>_;D>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<<_)-1;(g&z)!=i[b];)b--,_-=S,z=(1<<_)-1}return 0!==I&&1!=m?Ze:0}function c(o){let c;for(e||(e=[],t=[],n=new f(16),r=[],s=new f(15),i=new f(16)),t.lengthc;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==Ye?f.Le="oversubscribed dynamic bit lengths tree":a!=Ze&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=Ye),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,nt,rt,a,i,u,e,t),0!=h||0===i[0]?(h==Ye?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=Ye),h):(c(288),h=o(s,n,r,0,st,it,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==Ye?w.Le="oversubscribed distance tree":h==Ze?(w.Le="incomplete distance tree",h=Ye):-4!=h&&(w.Le="empty distance tree with lengths",h=Ye),h):0)}}function ct(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15,k=a[z+2]+(w&$e[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(0!=(64&u))return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye;f+=a[z+2],f+=w&$e[u],z=3*(l+f),u=a[z]}break}if(0!=(64&u))return 0!=(32&u)?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye);if(f+=a[z+2],f+=w&$e[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,_=0,A=0;for(A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,m=p(u,w,r,h,s,d,e,y),A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>>=n[g+1],_-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(0!=(16&k)){a=15&k,i=n[g+2],t=2;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}if(0!=(32&k)){t=7;break}return t=9,y.Le="invalid literal/length code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 2:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}i+=x&$e[b],x>>=b,_-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>=n[g+1],_-=n[g+1],k=n[g],0!=(16&k)){a=15&k,l=n[g+2],t=4;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 4:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}l+=x&$e[b],x>>=b,_-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(_-=8,v++,A--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ot.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=et,r[0]=tt,0);const ft=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function at(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new ct;let h=0,d=new f(4320);const p=new ot;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ot.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[ft[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==Ye&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&$e[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,_=[],A=[],I=[],D=[],_[0]=9,A[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,_,A,I,D,d,e),0!=i)return i==Ye&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(_[0],A[0],d,I[0],d,D[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const lt=13,ut=[0,0,255,255];function wt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):Xe}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),Xe):(e.zt=r,n.gt.kt=new at(n,1<{let n,r;if(!e||!e.gt||!e.et)return Xe;const s=e.gt;for(t=4==t?Ze:0,n=Ze;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=lt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=lt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=lt,e.Le="incorrect header check",s.marker=5;break}if(0==(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=lt,e.Le="need dictionary",s.marker=0,Xe;case 7:if(n=s.kt.ut(e,n),n==Ye){s.mode=lt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case lt:return Ye;default:return Xe}},e.At=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return Xe;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return Xe;const c=e.gt;if(c.mode!=lt&&(c.mode=lt,c.marker=0),0===(n=e.We))return Ze;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==ut[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?Ye:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Dt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():Xe}function ht(){}function dt(e){const t=new ht,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t._t(0),c&&a===Ze){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}ht.prototype={xt(e){const t=this;return t.gt=new wt,e||(e=15),t.gt.xt(t,e)},_t(e){const t=this;return t.gt?t.gt._t(t,e):Xe},Ct(){const e=this;if(!e.gt)return Xe;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):Xe},At(e,t){const n=this;return n.gt?n.gt.At(n,e,t):Xe},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=Qe,self.Inflate=dt};\n'],{type:"text/javascript"}));e({workerScripts:{inflate:[t],deflate:[t]}})})($),e.BlobReader=Lt,e.BlobWriter=Nt,e.Data64URIReader=Ut,e.Data64URIWriter=It,e.ERR_BAD_FORMAT=Fn,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=In,e.ERR_DUPLICATED_NAME=ir,e.ERR_ENCRYPTED=On,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Un,e.ERR_EOCDR_NOT_FOUND=En,e.ERR_EOCDR_ZIP64_NOT_FOUND=Tn,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Nn,e.ERR_HTTP_RANGE=Ct,e.ERR_INVALID_COMMENT=ar,e.ERR_INVALID_ENCRYPTION_STRENGTH=ur,e.ERR_INVALID_ENTRY_COMMENT=or,e.ERR_INVALID_ENTRY_NAME=cr,e.ERR_INVALID_EXTRAFIELD_DATA=fr,e.ERR_INVALID_EXTRAFIELD_TYPE=dr,e.ERR_INVALID_PASSWORD=de,e.ERR_INVALID_SIGNATURE=fe,e.ERR_INVALID_VERSION=lr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=xt,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Ln,e.ERR_SPLIT_ZIP_FILE=Bn,e.ERR_UNSUPPORTED_COMPRESSION=Mn,e.ERR_UNSUPPORTED_ENCRYPTION=qn,e.ERR_UNSUPPORTED_FORMAT=wr,e.HttpRangeReader=class extends Qt{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Qt,e.Reader=Et,e.SplitDataReader=nn,e.SplitDataWriter=rn,e.SplitZipReader=ln,e.SplitZipWriter=un,e.TextReader=Ot,e.TextWriter=qt,e.Uint8ArrayReader=en,e.Uint8ArrayWriter=tn,e.Writer=Tt,e.ZipReader=Zn,e.ZipWriter=mr,e.configure=$,e.fs=Fr,e.getMimeType=()=>"application/octet-stream",e.initReader=an,e.initShimAsyncCodec=(e,t={},n)=>({Deflate:ee(e.Deflate,t.deflate,n),Inflate:ee(e.Inflate,t.inflate,n)}),e.initStream=sn,e.initWriter=on,e.readUint8Array=cn,e.terminateWorkers=()=>{bt.forEach((e=>{vt(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})})); +((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:i,Math:a,Date:o,Map:c,Set:l,Response:u,URL:d,Error:f,Uint8Array:w,Uint16Array:h,Uint32Array:p,DataView:g,Blob:m,Promise:y,TextEncoder:b,TextDecoder:S,document:k,crypto:z,btoa:v,TransformStream:_,ReadableStream:C,WritableStream:x,CompressionStream:D,DecompressionStream:R,navigator:W,Worker:A}="undefined"!=typeof globalThis?globalThis:this||self,F=4294967295,E=65535,T=67324752,U=134695760,I=33639248,L=101075792,N=117853008,O=21589,q=2048,M="/",B=new o(2107,11,31),P=new o(1980,0,1),K=void 0,V="undefined",H="function";class Z{constructor(e){return class extends _{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 Y=2;try{typeof W!=V&&W.hardwareConcurrency&&(Y=W.hardwareConcurrency)}catch(e){}const X={chunkSize:524288,maxWorkers:Y,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:K,CompressionStreamNative:typeof D!=V&&D,DecompressionStreamNative:typeof R!=V&&R},j=n.assign({},X);function G(){return j}function J(e){return a.max(e.chunkSize,64)}function $(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:u,DecompressionStream:d,workerScripts:w}=e;if(Q("baseURL",n),Q("chunkSize",r),Q("maxWorkers",s),Q("terminateWorkerTimeout",i),Q("useCompressionStream",a),Q("useWebWorkers",o),c&&(j.CompressionStream=new Z(c)),l&&(j.DecompressionStream=new Z(l)),Q("CompressionStream",u),Q("DecompressionStream",d),w!==K){const{deflate:e,inflate:n}=w;if((e||n)&&(j.workerScripts||(j.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");j.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");j.workerScripts.inflate=n}}}function Q(e,t){t!==K&&(j[e]=t)}function ee(e,t,r){return class{constructor(s){const i=this;var a,o;a=s,o="level",("function"==typeof n.hasOwn?n.hasOwn(a,o):a.hasOwnProperty(o))&&void 0===s.level&&delete s.level,i.codec=new e(n.assign({},t,s)),r(i.codec,(e=>{if(i.pendingData){const t=i.pendingData;i.pendingData=new w(t.length+e.length);const{pendingData:n}=i;n.set(t,0),n.set(e,t.length)}else i.pendingData=new w(e)}))}append(e){return this.codec.push(e),s(this)}flush(){return this.codec.push(new w,!0),s(this)}};function s(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new w}}const te=[];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;te[e]=t}class ne{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^te[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class re extends _{constructor(){let e;const t=new ne;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new g(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function se(e){if(void 0===b){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=ie.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=>a.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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=ie.getPartial(s);return r.push(ie.partial(t+i&31,t+i>32?n:r.pop(),1)),r}},ae={bytes:{fromBits(e){const t=ie.bitLength(e)/8,n=new w(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;n9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const i=new p(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);s>=e;e+=t.blockSize)t._block(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=ie.concat(t,[ie.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return 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){return 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 i=r[0],o=r[1],c=r[2],l=r[3],u=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,i)+n._f(e,o,c,l)+u+s[e]+n._key[a.floor(e/20)]|0;u=l,l=c,c=n._S(30,o),o=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},ce={getRandomValues(e){const t=new p(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)*(a.random()>.5?1:-1))};for(let r,s=0;snew le.hmacSha1(ae.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 i,a,o,c,l;const u=new ArrayBuffer(s),d=new g(u);let w=0;const h=ie;for(t=ae.bytes.toBits(t),l=1;(s||1)>w;l++){for(i=a=e.encrypt(h.concat(t,[l])),o=1;n>o;o++)for(a=e.encrypt(a),c=0;cw&&os&&(e=(new n).update(e).finalize());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)}}},ue=void 0!==z&&"function"==typeof z.getRandomValues,de="Invalid password",fe="Invalid signature",we="zipjs-abort-check-password";function he(e){return ue?z.getRandomValues(e):ce.getRandomValues(e)}const pe=16,ge={name:"PBKDF2"},me=n.assign({hash:{name:"HMAC"}},ge),ye=n.assign({iterations:1e3,hash:{name:"SHA-1"}},ge),be=["deriveBits"],Se=[8,12,16],ke=[16,24,32],ze=10,ve=[0,0,0,0],_e="undefined",Ce="function",xe=typeof z!=_e,De=xe&&z.subtle,Re=xe&&typeof De!=_e,We=ae.bytes,Ae=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 i,a,o,c=1;if(4!==s&&6!==s&&8!==s)throw new f("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],i=s;4*s+28>i;i++){let e=a[i-1];(i%s==0||8===s&&i%s==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%s==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[i]=a[i-s]^e}for(let e=0;i;e++,i--){const t=a[3&e?i:i-4];o[e]=4>=i||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=[],i=[];let a,o,c,l;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=o||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=s[c=s[o=s[u]]];let d=16843009*l^65537*c^257*o^16843008*u,f=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][u]=f=f<<24^f>>>8,t[n][i]=d=d<<24^d>>>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],i=this._tables[t],a=i[0],o=i[1],c=i[2],l=i[3],u=i[4];let d,w,h,p=e[0]^n[0],g=e[t?3:1]^n[1],m=e[2]^n[2],y=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)d=a[p>>>24]^o[g>>16&255]^c[m>>8&255]^l[255&y]^n[b],w=a[g>>>24]^o[m>>16&255]^c[y>>8&255]^l[255&p]^n[b+1],h=a[m>>>24]^o[y>>16&255]^c[p>>8&255]^l[255&g]^n[b+2],y=a[y>>>24]^o[p>>16&255]^c[g>>8&255]^l[255&m]^n[b+3],b+=4,p=d,g=w,m=h;for(let e=0;4>e;e++)s[t?3&-e:e]=u[p>>>24]<<24^u[g>>16&255]<<16^u[m>>8&255]<<8^u[255&y]^n[b++],d=p,p=g,g=m,m=y,y=d;return s}},Fe=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=ie.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 ie.clamp(t,s)}},Ee=le.hmacSha1;let Te=xe&&Re&&typeof De.importKey==Ce,Ue=xe&&Re&&typeof De.deriveBits==Ce;class Ie extends _{constructor({password:e,signed:t,encryptionStrength:r,checkPasswordOnly:s}){super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:e,signed:t,strength:r-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const s=await Oe(e,t,n,Me(r,0,Se[t])),i=Me(r,Se[t]);if(s[0]!=i[0]||s[1]!=i[1])throw new f(de)})(n,i,r,Me(e,0,Se[i]+2)),e=Me(e,Se[i]+2),s?t.error(new f(we)):a()):await o;const c=new w(e.length-ze-(e.length-ze)%pe);t.enqueue(Ne(n,e,c,0,ze,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:i}=this;await i;const a=Me(s,0,s.length-ze),o=Me(s,s.length-ze);let c=new w;if(a.length){const e=Pe(We,a);r.update(e);const t=n.update(e);c=Be(We,t)}if(t){const e=Me(Be(We,r.digest()),0,ze);for(let t=0;ze>t;t++)if(e[t]!=o[t])throw new f(fe)}e.enqueue(c)}})}}class Le extends _{constructor({password:e,encryptionStrength:t}){let r;super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:i,ready:a}=n;let o=new w;r?(o=await(async(e,t,n)=>{const r=he(new w(Se[t]));return qe(r,await Oe(e,t,n,r))})(n,s,r),i()):await a;const c=new w(o.length+e.length-e.length%pe);c.set(o,0),t.enqueue(Ne(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:s,ready:i}=this;await i;let a=new w;if(s.length){const e=t.update(Pe(We,s));n.update(e),a=Be(We,e)}r.signature=Be(We,n.digest()).slice(0,ze),e.enqueue(qe(a,r.signature))}}),r=this}}function Ne(e,t,n,r,s,i){const{ctr:a,hmac:o,pending:c}=e,l=t.length-s;let u;for(c.length&&(t=qe(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e})(n,l-l%pe)),u=0;l-pe>=u;u+=pe){const e=Pe(We,Me(t,u,u+pe));i&&o.update(e);const s=a.update(e);i||o.update(s),n.set(Be(We,s),u+r)}return e.pending=Me(t,u),n}async function Oe(e,r,s,i){e.password=null;const a=se(s),o=await(async(e,t,n,r,s)=>{if(!Te)return le.importKey(t);try{return await De.importKey("raw",t,n,!1,s)}catch(e){return Te=!1,le.importKey(t)}})(0,a,me,0,be),c=await(async(e,t,n)=>{if(!Ue)return le.pbkdf2(t,e.salt,ye.iterations,n);try{return await De.deriveBits(e,t,n)}catch(r){return Ue=!1,le.pbkdf2(t,e.salt,ye.iterations,n)}})(n.assign({salt:i},ye),o,8*(2*ke[r]+2)),l=new w(c),u=Pe(We,Me(l,0,ke[r])),d=Pe(We,Me(l,ke[r],2*ke[r])),f=Me(l,2*ke[r]);return n.assign(e,{keys:{key:u,authentication:d,passwordVerification:f},ctr:new Fe(new Ae(u),t.from(ve)),hmac:new Ee(d)}),f}function qe(e,t){let n=e;return e.length+t.length&&(n=new w(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Me(e,t,n){return e.subarray(t,n)}function Be(e,t){return e.fromBits(t)}function Pe(e,t){return e.toBits(t)}class Ke extends _{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Ye(this,e)},transform(e,t){const n=this;if(n.password){const t=He(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(de);e=e.subarray(12)}r?t.error(new f(we)):t.enqueue(He(n,e))}})}}class Ve extends _{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Ye(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=he(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Ze(n,t),0),s=12}else r=new w(e.length),s=0;r.set(Ze(n,e),s),t.enqueue(r)}})}}function He(e,t){const n=new w(t.length);for(let r=0;r>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function je(e){const t=2|e.keys[2];return Ge(a.imul(t,1^t)>>>8)}function Ge(e){return 255&e}function Je(e){return 4294967295&e}const $e="deflate-raw";class Qe extends _{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:a,zipCrypto:o,signed:c,level:l}=e,u=this;let d,f,w=tt(super.readable);i&&!o||!c||(d=new re,w=st(w,d)),s&&(w=rt(w,a,{level:l,chunkSize:t},r,n)),i&&(o?w=st(w,new Ve(e)):(f=new Le(e),w=st(w,f))),nt(u,w,(async()=>{let e;i&&!o&&(e=f.signature),i&&!o||!c||(e=new g(d.value.buffer).getUint32(0)),u.signature=e}))}}class et extends _{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:i,signed:a,signature:o,compressed:c,useCompressionStream:l}=e;let u,d,w=tt(super.readable);i&&(s?w=st(w,new Ke(e)):(d=new Ie(e),w=st(w,d))),c&&(w=rt(w,l,{chunkSize:t},r,n)),i&&!s||!a||(u=new re,w=st(w,u)),nt(this,w,(async()=>{if((!i||s)&&a){const e=new g(u.value.buffer);if(o!=e.getUint32(0,!1))throw new f(fe)}}))}}function tt(e){return st(e,new _({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function nt(e,t,r){t=st(t,new _({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function rt(e,t,n,r,s){try{e=st(e,new(t&&r?r:s)($e,n))}catch(r){if(!t)throw r;e=st(e,new s($e,n))}return e}function st(e,t){return e.pipeThrough(t)}const it="data",at="deflate",ot="inflate";class ct extends _{constructor(e,t){super({});const r=this,{codecType:s}=e;let i;s.startsWith(at)?i=Qe:s.startsWith(ot)&&(i=et);let a=0;const o=new i(e,t),c=super.readable,l=new _({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;n.assign(r,{signature:e,size:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(o).pipeThrough(l)})}}const lt=typeof A!=V;class ut{constructor(e,{readable:t,writable:r},{options:s,config:i,streamOptions:a,useWebWorkers:o,transferStreams:c,scripts:l},u){const{signal:d}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new dt(t,a,i),{signal:d}),writable:r,options:n.assign({},s),scripts:l,transferStreams:c,terminate(){const{worker:t,busy:n}=e;t&&!n&&(t.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,u(e)}}),(o&<?ht:wt)(e,i)}}class dt extends _{constructor(e,{onstart:t,onprogress:n,size:r,onend:s},{chunkSize:i}){let a=0;super({start(){t&&ft(t,r)},async transform(e,t){a+=e.length,n&&await ft(n,a,r),t.enqueue(e)},flush(){e.size=a,s&&ft(s,a)}},{highWaterMark:1,size:()=>i})}}async function ft(e,...t){try{await e(...t)}catch(e){}}function wt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{const i=new ct(e,s);try{await t.pipeThrough(i).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:e,size:s}=i;return{signature:e,size:s}}finally{r()}})(e,t)}}function ht(e,{baseURL:t,chunkSize:r}){return e.interface||n.assign(e,{worker:mt(e.scripts[0],t,e),interface:{run:()=>(async(e,t)=>{let r,s;const i=new y(((e,t)=>{r=e,s=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:s,result:i});const{readable:a,options:o,scripts:c}=e,{writable:l,closed:u}=(e=>{const t=e.getWriter();let n;const r=new y((e=>n=e));return{writable:new x({async write(e){await t.ready,await t.write(e)},close(){t.releaseLock(),n()},abort:e=>t.abort(e)}),closed:r}})(e.writable);yt({type:"start",scripts:c.slice(1),options:o,config:t,readable:a,writable:l},e)||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const d=await i;try{await l.getWriter().close()}catch(e){}return await u,d})(e,{chunkSize:r})}}),e.interface}let pt=!0,gt=!0;function mt(e,t,r){const s={type:"module"};let i,a;typeof e==H&&(e=e());try{i=new d(e,t)}catch(t){i=e}if(pt)try{a=new A(i)}catch(e){pt=!1,a=new A(i,s)}else a=new A(i,s);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:s,messageId:i,result:a,error:o}=e,{reader:c,writer:l,resolveResult:u,rejectResult:d,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:r,name:s}=o,i=new f(e);n.assign(i,{stack:t,code:r,name:s}),p(i)}else{if("pull"==r){const{value:e,done:n}=await c.read();yt({type:it,value:e,done:n,messageId:i},t)}r==it&&(await l.ready,await l.write(new w(s)),yt({type:"ack",messageId:i},t)),"close"==r&&p(null,a)}}catch(o){p(o)}function p(e,t){e?d(e):u(t),l&&l.releaseLock(),h()}})(e,r))),a}function yt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{let{value:n,readable:r,writable:i}=e;const a=[];if(n&&(e.value=n.buffer,a.push(e.value)),s&>?(r&&a.push(r),i&&a.push(i)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch(n){gt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let bt=[];const St=[];let kt=0;async function zt(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:a,useCompressionStream:o,codecType:c,compressed:l,signed:u,encrypted:d}=n,{workerScripts:f,maxWorkers:w,terminateWorkerTimeout:h}=r;t.transferStreams=i||i===K;const p=!(l||u||d||t.transferStreams);let g;t.useWebWorkers=!p&&(a||a===K&&r.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[c]:[],n.useCompressionStream=o||o===K&&r.useCompressionStream;const m=bt.find((e=>!e.busy));if(m)vt(m),g=new ut(m,e,t,b);else if(bt.lengthSt.push({resolve:n,stream:e,workerOptions:t})));return g.run();function b(e){if(St.length){const[{resolve:t,stream:n,workerOptions:r}]=St.splice(0,1);t(new ut(e,n,r,b))}else e.worker?(vt(e),s.isFinite(h)&&h>=0&&(e.terminateTimeout=setTimeout((()=>{bt=bt.filter((t=>t!=e)),e.terminate()}),h))):bt=bt.filter((t=>t!=e))}}function vt(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const _t="HTTP error ",Ct="HTTP Range not supported",xt="Writer iterator completed too soon",Dt="GET",Rt="bytes",Wt=65536,At="writable";class Ft{constructor(){this.size=0}init(){this.initialized=!0}}class Et extends Ft{get readable(){const e=this,{chunkSize:t=Wt}=e,n=new C({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:i,diskNumberStart:o}=n,{chunkOffset:c}=this;r.enqueue(await cn(e,s+c,a.min(t,i-c),o)),c+t>i?r.close():this.chunkOffset+=t}});return n}}class Tt extends Ft{constructor(){super();const e=this,t=new x({write:t=>e.writeUint8Array(t)});n.defineProperty(e,At,{get:()=>t})}writeUint8Array(){}}class Ut extends Et{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,s=new w(t),i=4*a.floor(e/3),o=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);for(let e=c;c+t>e;e++)s[e-c]=o.charCodeAt(e);return s}}class It extends Tt{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,s=t.pending;const i=t.pending.length;for(t.pending="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)s+=r.fromCharCode(e[n]);for(;n2?t.data+=v(s):t.pending=s}getData(){return this.data+v(this.pending)}}class Lt extends Et{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||rt&&(i=i.slice(e,r)),new w(i)}}class Nt extends Ft{constructor(e){super();const t=new _,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,At,{get:()=>t.writable}),this.blob=new u(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Ot extends Lt{constructor(e){super(new m([e],{type:"text/plain"}))}}class qt extends Nt{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 y(((s,i)=>{n.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>i(t.error)}),t.readAsText(r,e)}))}}}class Mt extends Et{constructor(e,t){super(),Pt(this,e,t)}async init(){await Kt(this,Jt,Yt),super.init()}readUint8Array(e,t){return Vt(this,e,t,Jt,Yt)}}class Bt extends Et{constructor(e,t){super(),Pt(this,e,t)}async init(){await Kt(this,$t,Xt),super.init()}readUint8Array(e,t){return Vt(this,e,t,$t,Xt)}}function Pt(e,t,r){const{preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a}=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:i,forceRangeRequests:a})}async function Kt(e,t,n){const{url:r,useRangeHeader:i,forceRangeRequests:a}=e;if((e=>{const{baseURL:t}=G(),{protocol:n}=new d(e,t);return"http:"==n||"https:"==n})(r)&&(i||a)){const{headers:r}=await t(Dt,e,Ht(e));if(!a&&r.get("Accept-Ranges")!=Rt)throw new f(Ct);{let i;const a=r.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(i=s(t))}}i===K?await Gt(e,t,n):e.size=i}}else await Gt(e,t,n)}async function Vt(e,t,n,r,s){const{useRangeHeader:i,forceRangeRequests:a,options:o}=e;if(i||a){const s=await r(Dt,e,Ht(e,t,n));if(206!=s.status)throw new f(Ct);return new w(await s.arrayBuffer())}{const{data:r}=e;return r||await s(e,o),new w(e.data.subarray(t,t+n))}}function Ht(e,t=0,r=1){return n.assign({},Zt(e),{Range:Rt+"="+t+"-"+(t+r-1)})}function Zt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Yt(e){await jt(e,Jt)}async function Xt(e){await jt(e,$t)}async function jt(e,t){const n=await t(Dt,e,Zt(e));e.data=new w(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Gt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Zt(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 i=await fetch(r,n.assign({},t,{method:e,headers:s}));if(400>i.status)return i;throw 416==i.status?new f(Ct):new f(_t+(i.statusText||i.status))}function $t(e,{url:t},r){return new y(((s,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),s({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new f(Ct):new f(_t+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>i(e.detail?e.detail.error:new f("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class Qt extends Et{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Bt(e,t):new Mt(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class en extends Et{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class tn extends Tt{init(e=0){n.assign(this,{offset:0,array:new w(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new w(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}}class nn extends Et{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await y.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:s}=this;let i,o=n;-1==o&&(o=s.length-1);let c=e;for(;c>=s[o].size;)c-=s[o].size,o++;const l=s[o],u=l.size;if(c+t>u){const s=u-c;i=new w(t),i.set(await cn(l,c,s)),i.set(await r.readUint8Array(e+s,t-s,n),s)}else i=await cn(l,c,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),i}}class rn extends Ft{constructor(e,t=4294967295){super();const r=this;let s,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new x({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function sn(e,t){e.init&&!e.initialized&&await e.init(t)}function an(e){return t.isArray(e)&&(e=new nn(e)),e instanceof C&&(e={readable:e}),e}function on(e){e.writable===K&&typeof e.next==H&&(e=new rn(e)),e instanceof x&&(e={writable:e});const{writable:t}=e;return t.size===K&&(t.size=0),e instanceof rn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function cn(e,t,n,r){return e.readUint8Array(t,n,r)}const ln=nn,un=rn,dn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function fn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const Fn="File format is not recognized",En="End of central directory not found",Tn="End of Zip64 central directory not found",Un="End of Zip64 central directory locator not found",In="Central directory header not found",Ln="Local file header not found",Nn="Zip64 extra field not found",On="File contains encrypted entry",qn="Encryption method not supported",Mn="Compression method not supported",Bn="Split zip file",Pn="utf-8",Kn="cp437",Vn=[[mn,F],[yn,F],[bn,F],[Sn,E]],Hn={[E]:{getValue:nr,bytes:4},[F]:{getValue:rr,bytes:8}};class Zn{constructor(e,t={}){n.assign(this,{reader:an(e),options:t,config:G()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:s}=t;if(await sn(r),r.size!==K&&r.readUint8Array||(r=new Lt(await new u(r.readable).blob()),await sn(r)),22>r.size)throw new f(Fn);r.chunkSize=J(s);const i=await(async(e,t,n)=>{const r=new w(4);return sr(r).setUint32(0,101010256,!0),await s(22)||await s(a.min(1048582,n));async function s(t){const s=n-t,i=await cn(e,s,t);for(let e=i.length-22;e>=0;e--)if(i[e]==r[0]&&i[e+1]==r[1]&&i[e+2]==r[2]&&i[e+3]==r[3])return{offset:s+e,buffer:i.slice(e,e+22).buffer}}})(r,0,r.size);if(!i)throw nr(sr(await cn(r,0,4)))==U?new f(Bn):new f(En);const o=sr(i);let c=nr(o,12),l=nr(o,16);const d=i.offset,h=tr(o,20),p=d+22+h;let g=tr(o,4);const m=r.lastDiskNumber||0;let b=tr(o,6),S=tr(o,8),k=0,z=0;if(l==F||c==F||S==E||b==E){const e=sr(await cn(r,i.offset-20,20));if(nr(e,0)!=N)throw new f(Tn);l=rr(e,8);let t=await cn(r,l,56,-1),n=sr(t);const s=i.offset-20-56;if(nr(n,0)!=L&&l!=s){const e=l;l=s,k=l-e,t=await cn(r,l,56,-1),n=sr(t)}if(nr(n,0)!=L)throw new f(Un);g==E&&(g=nr(n,16)),b==E&&(b=nr(n,20)),S==E&&(S=rr(n,32)),c==F&&(c=rr(n,40)),l-=c}if(m!=g)throw new f(Bn);if(0>l||l>=r.size)throw new f(Fn);let v=0,_=await cn(r,l,c,b),C=sr(_);if(c){const e=i.offset-c;if(nr(C,v)!=I&&l!=e){const t=l;l=e,k=l-t,_=await cn(r,l,c,b),C=sr(_)}}const x=i.offset-l-(r.lastDiskOffset||0);if(c==x||0>x||(c=x,_=await cn(r,l,c,b),C=sr(_)),0>l||l>=r.size)throw new f(Fn);const D=Jn(t,e,"filenameEncoding"),R=Jn(t,e,"commentEncoding");for(let i=0;S>i;i++){const o=new Yn(r,s,t.options);if(nr(C,v)!=I)throw new f(In);Xn(o,C,v+6);const c=!!o.bitFlag.languageEncodingFlag,l=v+46,u=l+o.filenameLength,d=u+o.extraFieldLength,w=tr(C,v+4),h=0==(0&w),p=_.subarray(l,u),g=tr(C,v+32),m=d+g,b=_.subarray(d,m),x=c,W=c,A=h&&16==(16&er(C,v+38)),F=nr(C,v+42)+k;n.assign(o,{versionMadeBy:w,msDosCompatible:h,compressedSize:0,uncompressedSize:0,commentLength:g,directory:A,offset:F,diskNumberStart:tr(C,v+34),internalFileAttribute:tr(C,v+36),externalFileAttribute:nr(C,v+38),rawFilename:p,filenameUTF8:x,commentUTF8:W,rawExtraField:_.subarray(u,d)});const[E,T]=await y.all([fn(p,x?Pn:D||Kn),fn(b,W?Pn:R||Kn)]);n.assign(o,{rawComment:b,filename:E,comment:T,directory:A||E.endsWith(M)}),z=a.max(F,z),await jn(o,o,C,v+6);const U=new An(o);U.getData=(e,t)=>o.getData(e,U,t),v=m;const{onprogress:L}=e;if(L)try{await L(i+1,S,new An(o))}catch(e){}yield U}const W=Jn(t,e,"extractPrependedData"),A=Jn(t,e,"extractAppendedData");return W&&(t.prependedData=z>0?await cn(r,0,z):new w),t.comment=h?await cn(r,d+22,h):new w,A&&(t.appendedData=p>>8&255:h>>>24&255),signature:h,compressed:0!=l,encrypted:k,useWebWorkers:Jn(s,r,"useWebWorkers"),useCompressionStream:Jn(s,r,"useCompressionStream"),transferStreams:Jn(s,r,"transferStreams"),checkPasswordOnly:R},config:u,streamOptions:{signal:D,size:_,onstart:A,onprogress:F,onend:E}};let I=0;try{({outputSize:I}=await zt({readable:C,writable:W},U))}catch(e){if(!R||e.message!=we)throw e}finally{const e=Jn(s,r,"preventClose");W.size+=I,e||W.locked||await W.getWriter().close()}return R?void 0:e.getData?e.getData():W}}function Xn(e,t,r){const s=e.rawBitFlag=tr(t,r+2),i=1==(1&s),a=nr(t,r+6);n.assign(e,{encrypted:i,version:tr(t,r),bitFlag:{level:(6&s)>>1,dataDescriptor:8==(8&s),languageEncodingFlag:(s&q)==q},rawLastModDate:a,lastModDate:$n(a),filenameLength:tr(t,r+22),extraFieldLength:tr(t,r+24)})}async function jn(e,t,r,s){const{rawExtraField:i}=t,a=t.extraField=new c,l=sr(new w(i));let u=0;try{for(;u{t.zip64=!0;const n=sr(e.data),r=Vn.filter((([e,n])=>t[e]==n));for(let s=0,i=0;s{const s=sr(e.data),i=er(s,4);n.assign(e,{vendorVersion:er(s,0),vendorId:er(s,2),strength:i,originalCompressionMethod:r,compressionMethod:tr(s,5)}),t.compressionMethod=e.compressionMethod})(m,t,d),t.extraFieldAES=m):t.compressionMethod=d;const y=a.get(10);y&&(((e,t)=>{const r=sr(e.data);let s,i=4;try{for(;i{const n=sr(e.data),r=er(n,0),s=[],i=[];1==(1&r)&&(s.push(kn),i.push(zn)),2==(2&r)&&(s.push(vn),i.push("rawLastAccessDate")),4==(4&r)&&(s.push(_n),i.push("rawCreationDate"));let a=1;s.forEach(((r,s)=>{if(e.data.length>=a+4){const c=nr(n,a);t[r]=e[r]=new o(1e3*c);const l=i[s];e[l]=c}a+=4}))})(b,t),t.extraFieldExtendedTimestamp=b)}async function Gn(e,t,r,s,i){const a=sr(e.data),o=new ne;o.append(i[r]);const c=sr(new w(4));c.setUint32(0,o.get(),!0);const l=nr(a,1);n.assign(e,{version:er(a,0),[t]:fn(e.data.subarray(5)),valid:!i.bitFlag.languageEncodingFlag&&l==nr(c,0)}),e.valid&&(s[t]=e[t],s[t+"UTF8"]=!0)}function Jn(e,t,n){return t[n]===K?e.options[n]:t[n]}function $n(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Qn(e){return new o(s(e/i(1e4)-i(116444736e5)))}function er(e,t){return e.getUint8(t)}function tr(e,t){return e.getUint16(t,!0)}function nr(e,t){return e.getUint32(t,!0)}function rr(e,t){return s(e.getBigUint64(t,!0))}function sr(e){return new g(e.buffer)}const ir="File already exists",ar="Zip file comment exceeds 64KB",or="File entry comment exceeds 64KB",cr="File entry name exceeds 64KB",lr="Version exceeds 65535",ur="The strength must equal 1, 2, or 3",dr="Extra field type exceeds 65535",fr="Extra field data exceeds 64KB",wr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",hr=new w([7,0,2,0,65,69,3,0,0]);let pr=0;const gr=[];class mr{constructor(e,t={}){e=on(e),n.assign(this,{writer:e,addSplitZipSignature:e instanceof rn,options:t,config:G(),files:new c,filenames:new l,offset:e.writable.size,pendingEntriesSize:0,pendingAddFileCalls:new l,bufferedWrites:0})}async add(e="",r,s={}){const c=this,{pendingAddFileCalls:l,config:u}=c;let d;prgr.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new f(ir);return c.filenames.add(e),d=(async(e,r,s,c)=>{r=r.trim(),c.directory&&!r.endsWith(M)?r+=M:c.directory=r.endsWith(M);const l=se(r);if(Dr(l)>E)throw new f(cr);const u=c.comment||"",d=se(u);if(Dr(d)>E)throw new f(or);const m=Sr(e,c,"version",20);if(m>E)throw new f(lr);const b=Sr(e,c,"versionMadeBy",20);if(b>E)throw new f(lr);const S=Sr(e,c,kn,new o),k=Sr(e,c,vn),z=Sr(e,c,_n),v=Sr(e,c,Dn,!0),_=Sr(e,c,Cn,0),C=Sr(e,c,xn,0),x=Sr(e,c,"password"),D=Sr(e,c,"encryptionStrength",3),R=Sr(e,c,"zipCrypto"),W=Sr(e,c,"extendedTimestamp",!0),A=Sr(e,c,"keepOrder",!0),I=Sr(e,c,"level"),L=Sr(e,c,"useWebWorkers"),N=Sr(e,c,"bufferedWrite"),V=Sr(e,c,"dataDescriptorSignature",!1),H=Sr(e,c,"signal"),Z=Sr(e,c,"useCompressionStream");let Y=Sr(e,c,"dataDescriptor",!0),X=Sr(e,c,Rn);if(x!==K&&D!==K&&(1>D||D>3))throw new f(ur);let j=new w;const{extraField:G}=c;if(G){let e=0,t=0;G.forEach((t=>e+=4+Dr(t))),j=new w(e),G.forEach(((e,n)=>{if(n>E)throw new f(dr);if(Dr(e)>E)throw new f(fr);Cr(j,new h([n]),t),Cr(j,new h([Dr(e)]),t+2),Cr(j,e,t+4),t+=4+Dr(e)}))}let $=0,Q=0,ee=0;const te=!0===X;s&&(s=an(s),await sn(s),s.size===K?(Y=!0,(X||X===K)&&(X=!0,ee=$=F)):(ee=s.size,$=(e=>e+5*(a.floor(e/16383)+1))(ee)));const{diskOffset:ne,diskNumber:re,maxSize:ie}=e.writer,ae=te||ee>=F,oe=te||$>=F,ce=te||e.offset+e.pendingEntriesSize-ne>=F,le=Sr(e,c,"supportZip64SplitFile",!0)&&te||re+a.ceil(e.pendingEntriesSize/ie)>=E;if(ce||ae||oe||le){if(!1===X||!A)throw new f(wr);X=!0}X=X||!1;const ue=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,password:i,level:o,zip64:c,zipCrypto:l,dataDescriptor:u,directory:d,rawExtraField:f,encryptionStrength:h,extendedTimestamp:g}=e,m=0!==o&&!d,y=!(!i||!Dr(i));let b,S,k,z=e.version;if(y&&!l){b=new w(Dr(hr)+2);const e=xr(b);zr(e,0,39169),Cr(b,hr,2),kr(e,8,h)}else b=new w;if(g){k=new w(9+(r?4:0)+(s?4:0));const e=xr(k);zr(e,0,O),zr(e,2,Dr(k)-4),kr(e,4,1+(r?2:0)+(s?4:0)),vr(e,5,a.floor(n.getTime()/1e3)),r&&vr(e,9,a.floor(r.getTime()/1e3)),s&&vr(e,13,a.floor(s.getTime()/1e3));try{S=new w(36);const e=xr(S),t=br(n);zr(e,0,10),zr(e,2,32),zr(e,8,1),zr(e,10,24),_r(e,12,t),_r(e,20,br(r)||t),_r(e,28,br(s)||t)}catch(e){S=new w}}else S=k=new w;let v=q;u&&(v|=8);let _=0;m&&(_=8),c&&(z=z>45?z:45),y&&(v|=1,l||(z=z>51?z:51,_=99,m&&(b[9]=8)));const C=new w(26),x=xr(C);zr(x,0,z),zr(x,2,v),zr(x,4,_);const D=new p(1),R=xr(D);let W;W=P>n?P:n>B?B:n,zr(R,0,(W.getHours()<<6|W.getMinutes())<<5|W.getSeconds()/2),zr(R,2,(W.getFullYear()-1980<<4|W.getMonth()+1)<<5|W.getDate());const A=D[0];vr(x,6,A),zr(x,22,Dr(t));const F=Dr(b,k,S,f);zr(x,24,F);const E=new w(30+Dr(t)+F);return vr(xr(E),0,T),Cr(E,C,4),Cr(E,t,30),Cr(E,b,30+Dr(t)),Cr(E,k,30+Dr(t,b)),Cr(E,S,30+Dr(t,b,k)),Cr(E,f,30+Dr(t,b,k,S)),{localHeaderArray:E,headerArray:C,headerView:x,lastModDate:n,rawLastModDate:A,encrypted:y,compressed:m,version:z,compressionMethod:_,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:S,rawExtraFieldAES:b}})(c=n.assign({},c,{rawFilename:l,rawComment:d,version:m,versionMadeBy:b,lastModDate:S,lastAccessDate:k,creationDate:z,rawExtraField:j,zip64:X,zip64UncompressedSize:ae,zip64CompressedSize:oe,zip64Offset:ce,zip64DiskNumberStart:le,password:x,level:I,useWebWorkers:L,encryptionStrength:D,extendedTimestamp:W,zipCrypto:R,bufferedWrite:N,keepOrder:A,dataDescriptor:Y,dataDescriptorSignature:V,signal:H,msDosCompatible:v,internalFileAttribute:_,externalFileAttribute:C,useCompressionStream:Z})),de=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let s,i=new w,a=0;return n&&(i=new w(t?r?24:20:r?16:12),s=xr(i),r&&(a=4,vr(s,0,134695760))),{dataDescriptorArray:i,dataDescriptorView:s,dataDescriptorOffset:a}})(c);let fe;Q=Dr(ue.localHeaderArray,de.dataDescriptorArray)+$,e.pendingEntriesSize+=Q;try{fe=await(async(e,r,s,a,o)=>{const{files:c,writer:l}=e,{keepOrder:u,dataDescriptor:d,signal:h}=o,{headerInfo:p}=a,m=t.from(c.values()).pop();let b,S,k,z,v,_,C={};c.set(r,C);try{let t;u&&(t=m&&m.lock,C.lock=new y((e=>k=e))),o.bufferedWrite||e.writerLocked||e.bufferedWrites&&u||!d?(_=new Nt,_.writable.size=0,b=!0,e.bufferedWrites++,await sn(l)):(_=l,await x()),await sn(_);const{writable:p}=l;let{diskOffset:R}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new w(4);vr(xr(t),0,U),await yr(p,t),e.offset+=4}b||(await t,await D(p));const{diskNumber:W}=l;if(v=!0,C.diskNumberStart=W,C=await(async(e,t,{diskNumberStart:r,lock:s},a,o,c)=>{const{headerInfo:l,dataDescriptorInfo:u}=a,{localHeaderArray:d,headerArray:f,lastModDate:h,rawLastModDate:p,encrypted:g,compressed:m,version:y,compressionMethod:b,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:z}=l,{dataDescriptorArray:v}=u,{rawFilename:_,lastAccessDate:C,creationDate:x,password:D,level:R,zip64:W,zip64UncompressedSize:A,zip64CompressedSize:E,zip64Offset:T,zip64DiskNumberStart:U,zipCrypto:I,dataDescriptor:L,directory:N,versionMadeBy:O,rawComment:q,rawExtraField:M,useWebWorkers:B,onstart:P,onprogress:V,onend:H,signal:Z,encryptionStrength:Y,extendedTimestamp:X,msDosCompatible:j,internalFileAttribute:G,externalFileAttribute:$,useCompressionStream:Q}=c,ee={lock:s,versionMadeBy:O,zip64:W,directory:!!N,filenameUTF8:!0,rawFilename:_,commentUTF8:!0,rawComment:q,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:z,rawExtraField:M,extendedTimestamp:X,msDosCompatible:j,internalFileAttribute:G,externalFileAttribute:$,diskNumberStart:r};let te,ne=0,re=0;const{writable:se}=t,ie=Dr(d,v);if(e){e.chunkSize=J(o),await yr(se,d);const t=e.readable,n=t.size=e.size,r={options:{codecType:at,level:R,password:D,encryptionStrength:Y,zipCrypto:g&&I,passwordVerification:g&&I&&p>>8&255,signed:!0,compressed:m,encrypted:g,useWebWorkers:B,useCompressionStream:Q,transferStreams:!1},config:o,streamOptions:{signal:Z,size:n,onstart:P,onprogress:V,onend:H}},s=await zt({readable:t,writable:se},r);se.size+=s.size,te=s.signature,re=e.size=t.size,ne=s.size}else await yr(se,d);let ae;if(W){let e=4;A&&(e+=8),E&&(e+=8),T&&(e+=8),U&&(e+=4),ae=new w(e)}else ae=new w;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:s,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:c}=e,{headerView:l,encrypted:u}=o,{dataDescriptorView:d,dataDescriptorOffset:f}=c,{zip64:w,zip64UncompressedSize:h,zip64CompressedSize:p,zipCrypto:g,dataDescriptor:m}=t;if(u&&!g||n===K||(vr(l,10,n),m&&vr(d,f,n)),w){const e=xr(r);zr(e,0,1),zr(e,2,r.length-4);let t=4;h&&(vr(l,18,F),_r(e,t,i(a)),t+=8),p&&(vr(l,14,F),_r(e,t,i(s))),m&&(_r(d,f+4,i(s)),_r(d,f+12,i(a)))}else vr(l,14,s),vr(l,18,a),m&&(vr(d,f+4,s),vr(d,f+8,a))})({signature:te,rawExtraFieldZip64:ae,compressedSize:ne,uncompressedSize:re,headerInfo:l,dataDescriptorInfo:u},c),L&&await yr(se,v),n.assign(ee,{uncompressedSize:re,compressedSize:ne,lastModDate:h,rawLastModDate:p,creationDate:x,lastAccessDate:C,encrypted:g,length:ie+ne,compressionMethod:b,version:y,headerArray:f,signature:te,rawExtraFieldZip64:ae,zip64UncompressedSize:A,zip64CompressedSize:E,zip64Offset:T,zip64DiskNumberStart:U}),ee})(s,_,C,a,e.config,o),v=!1,c.set(r,C),C.filename=r,b){await _.writable.getWriter().close();let e=await _.getData();await t,await x(),z=!0,d||(e=await(async(e,t,n,{zipCrypto:r})=>{let s;s=await t.slice(0,26).arrayBuffer(),26!=s.byteLength&&(s=s.slice(0,26));const i=new g(s);return e.encrypted&&!r||vr(i,14,e.signature),e.zip64?(vr(i,18,F),vr(i,22,F)):(vr(i,18,e.compressedSize),vr(i,22,e.uncompressedSize)),await yr(n,new w(s)),t.slice(s.byteLength)})(C,e,p,o)),await D(p),C.diskNumberStart=l.diskNumber,R=l.diskOffset,await e.stream().pipeTo(p,{preventClose:!0,preventAbort:!0,signal:h}),p.size+=e.size,z=!1}if(C.offset=e.offset-R,C.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:s}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:c,zip64DiskNumberStart:l}=t,u=xr(n);let d=4;a&&(d+=8),o&&(d+=8),c&&(_r(u,d,i(r)),d+=8),l&&vr(u,d,s)})(C,o);else if(C.offset>=F)throw new f(wr);return e.offset+=C.length,C}catch(t){if(b&&z||!b&&v){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}b?e.offset+=_.writable.size:e.offset=_.writable.size}throw c.delete(r),t}finally{b&&e.bufferedWrites--,k&&k(),S&&S()}async function x(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new y((t=>S=()=>{e.writerLocked=!1,t()})),await t}async function D(e){p.localHeaderArray.length>l.availableSize&&(l.availableSize=0,await yr(e,new w))}})(e,r,s,{headerInfo:ue,dataDescriptorInfo:de},c)}finally{e.pendingEntriesSize-=Q}return n.assign(fe,{name:r,comment:u,extraField:G}),new An(fe)})(c,e,r,s),l.add(d),await d}catch(t){throw c.filenames.delete(e),t}finally{l.delete(d);const e=gr.shift();e?e():pr--}}async close(e=new w,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await y.all(t.from(r));return await(async(e,n,r)=>{const{files:s,writer:o}=e,{diskOffset:c,writable:l}=o;let{diskNumber:u}=o,d=0,h=0,p=e.offset-c,g=s.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:r,rawComment:i,rawExtraFieldExtendedTimestamp:a,rawExtraFieldNTFS:o}]of s)h+=46+Dr(e,i,t,n,a,o,r);const m=new w(h),y=xr(m);await sn(o);let b=0;for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:i,rawExtraFieldZip64:c,rawExtraFieldAES:u,rawExtraFieldNTFS:f,rawExtraField:h,rawComment:p,versionMadeBy:g,headerArray:S,directory:k,zip64:z,zip64UncompressedSize:v,zip64CompressedSize:_,zip64DiskNumberStart:C,zip64Offset:x,msDosCompatible:D,internalFileAttribute:R,externalFileAttribute:W,extendedTimestamp:A,lastModDate:T,diskNumberStart:U,uncompressedSize:L,compressedSize:N}=n;let q;if(A){q=new w(9);const e=xr(q);zr(e,0,O),zr(e,2,Dr(q)-4),kr(e,4,1),vr(e,5,a.floor(T.getTime()/1e3))}else q=new w;const M=Dr(c,u,q,f,h);vr(y,d,I),zr(y,d+4,g);const B=xr(S);v||vr(B,18,L),_||vr(B,14,N),Cr(m,S,d+6),zr(y,d+30,M),zr(y,d+32,Dr(p)),zr(y,d+34,z&&C?E:U),zr(y,d+36,R),W?vr(y,d+38,W):k&&D&&kr(y,d+38,16),vr(y,d+42,z&&x?F:t),Cr(m,i,d+46),Cr(m,c,d+46+Dr(i)),Cr(m,u,d+46+Dr(i,c)),Cr(m,q,d+46+Dr(i,c,u)),Cr(m,f,d+46+Dr(i,c,u,q)),Cr(m,h,d+46+Dr(i,c,u,q,f)),Cr(m,p,d+46+Dr(i)+M);const P=46+Dr(i,p)+M;if(d-b>o.availableSize&&(o.availableSize=0,await yr(l,m.slice(b,d)),b=d),d+=P,r.onprogress)try{await r.onprogress(e+1,s.size,new An(n))}catch(e){}}await yr(l,b?m.slice(b):m);let S=o.diskNumber;const{availableSize:k}=o;22>k&&S++;let z=Sr(e,r,"zip64");if(!(F>p&&F>h&&E>g&&E>S)){if(!1===z)throw new f(wr);z=!0}const v=new w(z?98:22),_=xr(v);d=0,z&&(vr(_,0,L),_r(_,4,i(44)),zr(_,12,45),zr(_,14,45),vr(_,16,S),vr(_,20,u),_r(_,24,i(g)),_r(_,32,i(g)),_r(_,40,i(h)),_r(_,48,i(p)),vr(_,56,N),_r(_,64,i(p)+i(h)),vr(_,72,S+1),Sr(e,r,"supportZip64SplitFile",!0)&&(S=E,u=E),g=E,p=F,h=F,d+=76),vr(_,d,101010256),zr(_,d+4,S),zr(_,d+6,u),zr(_,d+8,g),zr(_,d+10,g),vr(_,d+12,h),vr(_,d+16,p);const C=Dr(n);if(C){if(C>E)throw new f(ar);zr(_,d+20,C)}await yr(l,v),C&&await yr(l,n)})(this,e,n),Sr(this,n,"preventClose")||await o.getWriter().close(),s.getData?s.getData():o}}async function yr(e,t){const n=e.getWriter();await n.ready,e.size+=Dr(t),await n.write(t),n.releaseLock()}function br(e){if(e)return(i(e.getTime())+i(116444736e5))*i(1e4)}function Sr(e,t,n,r){const s=t[n]===K?e.options[n]:t[n];return s===K?r:s}function kr(e,t,n){e.setUint8(t,n)}function zr(e,t,n){e.setUint16(t,n,!0)}function vr(e,t,n){e.setUint32(t,n,!0)}function _r(e,t,n){e.setBigUint64(t,n,!0)}function Cr(e,t,n){e.set(t,n)}function xr(e){return new g(e.buffer)}function Dr(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}class Rr{constructor(e,t,r,s){const i=this;if(e.root&&s&&s.getChildByName(t))throw new f("Entry filename already exists");r||(r={}),n.assign(i,{fs:e,name:t,data:r.data,options:r.options,id:e.entries.length,parent:s,children:[],uncompressedSize:r.uncompressedSize||0}),e.entries.push(i),s&&i.parent.children.push(i)}moveTo(e){this.fs.move(this,e)}getFullname(){return this.getRelativeName()}getRelativeName(e=this.fs.root){let t=this.name,n=this.parent;for(;n&&n!=e;)t=(n.name?n.name+"/":"")+t,n=n.parent;return t}isDescendantOf(e){let t=this.parent;for(;t&&t.id!=e.id;)t=t.parent;return!!t}rename(e){const t=this.parent;if(t&&t.getChildByName(e))throw new f("Entry filename already exists");this.name=e}}class Wr extends Rr{constructor(e,t,n,r){super(e,t,n,r);const s=this;s.Reader=n.Reader,s.Writer=n.Writer,n.getData&&(s.getData=n.getData)}clone(){return new Wr(this.fs,this.name,this)}async getData(e,t={}){const n=this;if(!e||e.constructor==n.Writer&&n.data)return n.data;{const r=n.reader=new n.Reader(n.data,t),s=n.data?n.data.uncompressedSize:r.size;await y.all([sn(r),sn(e,s)]);const i=r.readable;return i.size=n.uncompressedSize=r.size,await i.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return this.data.encrypted}async checkPassword(e,t={}){const n=this;if(!n.isPasswordProtected())return!0;t.password=e,t.checkPasswordOnly=!0;try{return await n.data.getData(null,t),!0}catch(e){if(e.message==de)return!1;throw e}}getText(e,t){return this.getData(new qt(e),t)}getBlob(e,t){return this.getData(new Nt(e),t)}getData64URI(e,t){return this.getData(new It(e),t)}getUint8Array(e){return this.getData(new tn,e)}getWritable(e=new x,t){return this.getData({writable:e},t)}replaceBlob(e){n.assign(this,{data:e,Reader:Lt,Writer:Nt,reader:null})}replaceText(e){n.assign(this,{data:e,Reader:Ot,Writer:qt,reader:null})}replaceData64URI(e){n.assign(this,{data:e,Reader:Ut,Writer:It,reader:null})}replaceUint8Array(e){n.assign(this,{data:e,Reader:en,Writer:tn,reader:null})}replaceReadable(e){n.assign(this,{data:null,Reader:()=>({readable:e}),Writer:null,reader:null})}}class Ar extends Rr{constructor(e,t,n,r){super(e,t,n,r),this.directory=!0}clone(e){const t=this,n=new Ar(t.fs,t.name);return e&&(n.children=t.children.map((t=>{const r=t.clone(e);return r.parent=n,r}))),n}addDirectory(e,t){return Or(this,e,{options:t},!0)}addText(e,t,n={}){return Or(this,e,{data:t,Reader:Ot,Writer:qt,options:n,uncompressedSize:t.length})}addBlob(e,t,n={}){return Or(this,e,{data:t,Reader:Lt,Writer:Nt,options:n,uncompressedSize:t.size})}addData64URI(e,t,n={}){let r=t.length;for(;"="==t.charAt(r-1);)r--;const s=t.indexOf(",")+1;return Or(this,e,{data:t,Reader:Ut,Writer:It,options:n,uncompressedSize:a.floor(.75*(r-s))})}addUint8Array(e,t,n={}){return Or(this,e,{data:t,Reader:en,Writer:tn,options:n,uncompressedSize:t.length})}addHttpContent(e,t,n={}){return Or(this,e,{data:t,Reader:class extends Qt{constructor(e){super(e,n)}},options:n})}addReadable(e,t,n={}){return Or(this,e,{Reader:()=>({readable:t}),options:n})}addFileSystemEntry(e,t={}){return Ir(this,e,t)}addFileSystemHandle(e,t={}){return Ir(this,e,t)}addFile(e,t={}){return t.lastModDate||(t.lastModDate=new o(e.lastModified)),Or(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}addData(e,t){return Or(this,e,t)}importBlob(e,t){return this.importZip(new Lt(e),t)}importData64URI(e,t){return this.importZip(new Ut(e),t)}importUint8Array(e,t){return this.importZip(new en(e),t)}importHttpContent(e,t){return this.importZip(new Qt(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new Nt(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new It(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new tn,e)}async exportWritable(e=new x,t={}){return await this.exportZip({writable:e},t),e}async importZip(e,t={}){await sn(e);const r=new Zn(e,t),s=[],i=await r.getEntries();for(const e of i){let r=this;try{const i=e.filename.split("/"),a=i.pop();i.forEach(((t,n)=>{const a=r;r=r.getChildByName(t),r||(r=new Ar(this.fs,t,{data:n==i.length-1?e:null},a),s.push(r))})),e.directory||s.push(Or(r,a,{data:e,Reader:Er(n.assign({},t)),uncompressedSize:e.uncompressedSize}))}catch(t){try{t.cause={entry:e}}catch(e){}throw t}}return s}async exportZip(e,r){const s=this;await y.all([Tr(s,r.readerOptions),sn(e)]);const i=new mr(e,r);return await(async(e,r,s,i)=>{const a=r,o=new c;await async function e(r,c){async function l(c){const l=i.relativePath?c.getRelativeName(a):c.getFullname();let u,d,f,w,h=c.options||{};c.data instanceof An&&({externalFileAttribute:u,versionMadeBy:d,comment:f,lastModDate:w}=c.data),await r.add(l,c.reader,n.assign({directory:c.directory},n.assign({},i,{externalFileAttribute:u,versionMadeBy:d,comment:f,lastModDate:w,onprogress:async e=>{if(i.onprogress){o.set(l,e);try{await i.onprogress(t.from(o.values()).reduce(((e,t)=>e+t)),s)}catch(e){}}}},h))),await e(r,c)}await(async()=>{if(i.bufferedWrite)await y.allSettled(c.children.map(l));else for(const e of c.children)await l(e)})()}(e,r)})(i,s,(e=>{let t=0;return e.forEach((function e(n){t+=n.uncompressedSize,n.children&&n.children.forEach(e)})),t})([s]),r),await i.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let n=0;nn.checkPassword(e,t))))).includes(!1)}}const Fr={FS:class{constructor(){Nr(this)}get children(){return this.root.children}remove(e){Ur(e),this.entries[e.id]=null}move(e,t){if(e==this.root)throw new f("Root directory cannot be moved");if(!t.directory)throw new f("Target entry is not a directory");if(t.isDescendantOf(e))throw new f("Entry is a ancestor of target entry");if(e!=t){if(t.getChildByName(e.name))throw new f("Entry filename already exists");Ur(e),e.parent=t,t.children.push(e)}}find(e){const t=e.split("/");let n=this.root;for(let e=0;n&&e{if(e.directory)await Tr(e,t);else{const n=e.reader=new e.Reader(e.data,t);try{await sn(n)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch(e){}throw t}e.uncompressedSize=n.size}})))}function Ur(e){if(e.parent){const t=e.parent.children;t.forEach(((n,r)=>{n.id==e.id&&t.splice(r,1)}))}}async function Ir(e,t,r){return async function e(t,s,i){try{if((s.isFile||s.isDirectory)&&(s=await Lr(s)),"file"==s.kind){const e=await s.getFile();i.push(t.addData(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:n.assign({},{lastModDate:new o(e.lastModified)},r),uncompressedSize:e.size}))}else if("directory"==s.kind){const n=t.addDirectory(s.name);i.push(n);for await(const t of s.values())await e(n,t,i)}}catch(e){const t=e.message+(s?" ("+s.name+")":"");throw new f(t)}return i}(e,t,[])}async function Lr(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new y(((t,n)=>e.file(t,n)))),e.isDirectory){t.kind="directory";const n=await(async e=>{const t=[];function n(e,r,s){e.readEntries((async i=>{if(i.length){for(const e of i)t.push(await Lr(e));n(e,r,s)}else r(t)}),s)}return await new y(((t,r)=>n(e.createReader(),t,r))),{[Symbol.iterator](){let e=0;return{next(){const n={value:t[e],done:e===t.length};return e++,n}}}}})(e);t.values=()=>n}return t}function Nr(e){e.entries=[],e.root=new Ar(e)}function Or(e,t,n,r){if(e.directory)return r?new Ar(e.fs,t,n,e):new Wr(e.fs,t,n,e);throw new f("Parent entry is not a directory")}let qr;try{qr=void 0===k&&"undefined"==typeof location?new(require("url").URL)("file:"+__filename).href:void 0===k?location.href:k.currentScript&&k.currentScript.src||new d("zip-fs.min.js",k.baseURI).href}catch(e){}$({baseURL:qr}),(e=>{const t=()=>d.createObjectURL(new m(['const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self;class k{constructor(e){return class extends p{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)}})}}}}const v=[];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;v[e]=t}class S{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^v[255&(t^e[n])];this.t=t}get(){return~this.t}}class z extends p{constructor(){let e;const t=new S;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const C={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=C.i(n);return 32===r?e.concat(t):C.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+C.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=C.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=C.i(s);return r.push(C.h(t+i&31,t+i>32?n:r.pop(),1)),r}},x={p:{m(e){const t=C.l(e)/8,n=new i(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},g(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}D(){const e=this;let t=e.C;const n=e.S;t=C.concat(t,[C.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e._/4294967296)),t.push(0|e._);t.length;)e.I(t.splice(0,16));return e.reset(),n}V(e,t,n,r){return 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}P(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.P(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.P(5,o)+n.V(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.P(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},A={getRandomValues(e){const t=new c(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)*(r.random()>.5?1:-1))};for(let s,i=0;inew I.R(x.p.g(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=C;for(t=x.p.g(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).D());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.K[0].update(r[0]),t.K[1].update(r[1]),t.U=new n(t.K[0])}reset(){const e=this;e.U=new e.M(e.K[0]),e.N=!1}update(e){this.N=!0,this.U.update(e)}digest(){const e=this,t=e.U.D(),n=new e.M(e.K[1]).update(t).D();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},D=void 0!==h&&"function"==typeof h.getRandomValues,V="Invalid password",P="Invalid signature",R="zipjs-abort-check-password";function B(e){return D?h.getRandomValues(e):A.getRandomValues(e)}const E=16,M={name:"PBKDF2"},K=t.assign({hash:{name:"HMAC"}},M),U=t.assign({iterations:1e3,hash:{name:"SHA-1"}},M),N=["deriveBits"],O=[8,12,16],T=[16,24,32],W=10,j=[0,0,0,0],H="undefined",L="function",F=typeof h!=H,q=F&&h.subtle,G=F&&typeof q!=H,J=x.p,Q=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||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.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},X=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(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}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=C.l(t);for(let s=0;r>s;s+=4){this.G(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 C.u(t,s)}},Y=I.R;let Z=F&&G&&typeof q.importKey==L,$=F&&G&&typeof q.deriveBits==L;class ee extends p{constructor({password:e,signed:n,encryptionStrength:r,checkPasswordOnly:o}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,signed:n,X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:c,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await re(e,t,n,ie(r,0,O[t])),o=ie(r,O[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(V)})(n,c,r,ie(e,0,O[c]+2)),e=ie(e,O[c]+2),o?t.error(new s(R)):f()):await a;const l=new i(e.length-W-(e.length-W)%E);t.enqueue(ne(n,e,l,0,W,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;await c;const f=ie(o,0,o.length-W),a=ie(o,o.length-W);let l=new i;if(f.length){const e=ce(J,f);r.update(e);const t=n.update(e);l=oe(J,t)}if(t){const e=ie(oe(J,r.digest()),0,W);for(let t=0;W>t;t++)if(e[t]!=a[t])throw new s(P)}e.enqueue(l)}})}}class te extends p{constructor({password:e,encryptionStrength:n}){let r;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,X:n-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=B(new i(O[t]));return se(r,await re(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%E);a.set(f,0),t.enqueue(ne(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:s,ready:o}=this;await o;let c=new i;if(s.length){const e=t.update(ce(J,s));n.update(e),c=oe(J,e)}r.signature=oe(J,n.digest()).slice(0,W),e.enqueue(se(c,r.signature))}}),r=this}}function ne(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=se(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%E)),u=0;l-E>=u;u+=E){const e=ce(J,ie(t,u,u+E));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(oe(J,s),u+r)}return e.pending=ie(t,u),n}async function re(n,r,s,o){n.password=null;const c=(e=>{if(void 0===w){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n{if(!Z)return I.importKey(t);try{return await q.importKey("raw",t,n,!1,s)}catch(e){return Z=!1,I.importKey(t)}})(0,c,K,0,N),a=await(async(e,t,n)=>{if(!$)return I.B(t,e.salt,U.iterations,n);try{return await q.deriveBits(e,t,n)}catch(r){return $=!1,I.B(t,e.salt,U.iterations,n)}})(t.assign({salt:o},U),f,8*(2*T[r]+2)),l=new i(a),u=ce(J,ie(l,0,T[r])),h=ce(J,ie(l,T[r],2*T[r])),d=ie(l,2*T[r]);return t.assign(n,{keys:{key:u,$:h,passwordVerification:d},Y:new X(new Q(u),e.from(j)),Z:new Y(h)}),d}function se(e,t){let n=e;return e.length+t.length&&(n=new i(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function ie(e,t,n){return e.subarray(t,n)}function oe(e,t){return e.m(t)}function ce(e,t){return e.g(t)}class fe extends p{constructor({password:e,passwordVerification:n,checkPasswordOnly:r}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;if(n.password){const t=le(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new s(V);e=e.subarray(12)}r?t.error(new s(R)):t.enqueue(le(n,e))}})}}class ae extends p{constructor({password:e,passwordVerification:n}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=B(new i(12));t[11]=n.passwordVerification,r=new i(e.length+t.length),r.set(ue(n,t),0),s=12}else r=new i(e.length),s=0;r.set(ue(n,e),s),t.enqueue(r)}})}}function le(e,t){const n=new i(t.length);for(let r=0;r>>24]),i=~e.te.get(),e.keys=[n,s,i]}function de(e){const t=2|e.keys[2];return pe(r.imul(t,1^t)>>>8)}function pe(e){return 255&e}function ye(e){return 4294967295&e}const me="deflate-raw";class be extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=ke(super.readable);i&&!c||!f||(w=new z,d=ze(d,w)),s&&(d=Se(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=ze(d,new ae(e)):(h=new te(e),d=ze(d,h))),ve(u,d,(async()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ge extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=ke(super.readable);o&&(i?d=ze(d,new fe(e)):(h=new ee(e),d=ze(d,h))),a&&(d=Se(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new z,d=ze(d,w)),ve(this,d,(async()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(P)}}))}}function ke(e){return ze(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ve(e,n,r){n=ze(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Se(e,t,n,r,s){try{e=ze(e,new(t&&r?r:s)(me,n))}catch(r){if(!t)throw r;e=ze(e,new s(me,n))}return e}function ze(e,t){return e.pipeThrough(t)}const Ce="data";class xe extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=be:s.startsWith("inflate")&&(i=ge);let o=0;const c=new i(e,n),f=super.readable,a=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;t.assign(r,{signature:e,size:o})}});t.defineProperty(r,"readable",{get:()=>f.pipeThrough(c).pipeThrough(a)})}}const _e=new a,Ae=new a;let Ie=0;async function De(e){try{const{options:t,scripts:r,config:s}=e;r&&r.length&&importScripts.apply(void 0,r),self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new k(self.Deflate)),self.Inflate&&(s.DecompressionStream=new k(self.Inflate));const i={highWaterMark:1,size:()=>s.chunkSize},o=e.readable||new y({async pull(e){const t=new u((e=>_e.set(Ie,e)));Ve({type:"pull",messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ae.set(Ie,t),Ve({type:Ce,value:e,messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new xe(t,s);await o.pipeThrough(f).pipeTo(c,{preventClose:!0,preventAbort:!0});try{await c.getWriter().close()}catch(e){}const{signature:a,size:l}=f;Ve({type:"close",result:{signature:a,size:l}})}catch(e){Pe(e)}}function Ve(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Pe(e){const{message:t,stack:n,code:r,name:s}=e;d({error:{message:t,stack:n,code:r,name:s}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&De(e),t==Ce){const e=_e.get(n);_e.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ae.get(n);Ae.delete(n),e()}}catch(e){Pe(e)}}));const Re=-2;function Be(t){return Ee(t.map((([t,n])=>new e(t).fill(n,0,t))))}function Ee(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?Ee(n):n)),[])}const Me=[0,1,2,3].concat(...Be([[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 Ke(){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.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Ue(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}Ke.ge=[0,1,2,3,4,5,6,7].concat(...Be([[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]])),Ke.ke=[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],Ke.ve=[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],Ke.Se=e=>256>e?Me[e]:Me[256+(e>>>7)],Ke.ze=[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],Ke.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Ke.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Ke._e=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Ne=Be([[144,8],[112,9],[24,7],[8,8]]);Ue.Ae=Ee([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,Ne[t]])));const Oe=Be([[30,5]]);function Te(e,t,n,r,s){const i=this;i.Ie=e,i.De=t,i.Ve=n,i.Pe=r,i.Re=s}Ue.Be=Ee([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,Oe[t]]))),Ue.Ee=new Ue(Ue.Ae,Ke.ze,257,286,15),Ue.Me=new Ue(Ue.Be,Ke.Ce,0,30,15),Ue.Ke=new Ue(null,Ke.xe,0,19,7);const We=[new Te(0,0,0,0,0),new Te(4,4,8,4,1),new Te(4,5,16,8,1),new Te(4,6,32,32,1),new Te(4,4,16,16,2),new Te(8,16,32,32,2),new Te(8,16,128,128,2),new Te(8,32,128,256,2),new Te(32,128,258,1024,2),new Te(32,258,258,4096,2)],je=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],He=113,Le=666,Fe=262;function qe(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function Ge(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,_,A,I,D,V,P,R,B,E,M,K;const U=new Ke,N=new Ke,O=new Ke;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)K[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?K[2*n]+=i:0!==n?(n!=r&&K[2*n]++,K[32]++):i>10?K[36]++:K[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ue[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,K)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,K),o--),Y(16,K),X(o-3,2)):o>10?(Y(18,K),X(o-11,7)):(Y(17,K),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(Ke.ge[n]+256+1)]++,M[2*Ke.Se(t)]++),0==(8191&W)&&V>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+Ke.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ue.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;V>0?(U.ne(e),N.ne(e),o=(()=>{let t;for(G(E,U.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===K[2*Ke._e[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Ue.Ae,Ue.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(K[2*Ke._e[r]+1],3);Z(E,e-1),Z(M,t-1)})(U.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-_-C,0===s&&0===C&&0===_)s=f;else if(-1==s)s--;else if(C>=f+f-Fe){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+_,s),_+=e,3>_||(p=255&u[C],p=(p<_&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=A;const o=C>f-Fe?C-(f-Fe):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>A||(r>>=2),c>_&&(c=_);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>_?_:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],K=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Re:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=He,c=0,U.re=E,U.ie=Ue.Ee,N.re=M,N.ie=Ue.Me,O.re=K,O.ie=Ue.Ke,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe,C=0,k=0,_=0,v=A=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=He&&n!=Le?Re:(e.Oe=null,e.Ne=null,e.Ue=null,d=null,h=null,u=null,e.Fe=null,n==He?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Re:(We[V].Re!=We[t].Re&&0!==e.qe&&(r=e.Ye(1)),V!=t&&(V=t,D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe),P=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Re;if(3>i)return 0;for(i>f-Fe&&(i=f-Fe,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Re;if(!r.$e||!r.et&&0!==r.We||n==Le&&4!=i)return r.Le=je[4],Re;if(0===r.tt)return r.Le=je[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(V-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=He,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=je[7],-5;if(n==Le&&0!==t.We)return r.Le=je[7],-5;if(0!==t.We||0!==_||0!=i&&n!=Le){switch(R=-1,We[V].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=_){if(ie(),0===_&&0==e)return 0;if(0===_)break}if(C+=_,_=0,n=k+r,(0===C||C>=n)&&(_=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Fe&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<f-Fe||2!=P&&(v=oe(r)),3>v)n=ee(0,255&u[C]),_--,C++;else if(n=ee(C-x,v-3),_-=v,v>D||3>_)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<A&&f-Fe>=(C-s&65535)&&(2!=P&&(v=oe(s)),5>=v&&(1==P||3==v&&C-x>4096)&&(v=2)),3>A||v>A)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,_--,0===t.tt)return 0}else z=1,C++,_--;else{r=C+_-3,n=ee(C-1-S,A-3),_-=A-1,A-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Ue.Ae),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function Je(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function Qe(e){const t=new Je,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}Je.prototype={He(e,t){const n=this;return n.Fe=new Ge,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Re},Qe(){const e=this;if(!e.Fe)return Re;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Re},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Re},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ue.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const Xe=-2,Ye=-3,Ze=-5,$e=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],et=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],tt=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],nt=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],rt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],st=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],it=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ot(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,_,A,I,D;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return Ye;if(0>(I-=n[g]))return Ye;for(n[g]+=I,i[1]=k=0,C=1,A=2;0!=--g;)i[A]=k+=n[C],A++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>_+S;){if(b++,_+=S,D=m-_,D=D>S?S:D,(y=1<<(k=v-_))>p+1&&(y-=p+1,A=v,D>k))for(;++kn[++A];)y-=n[A];if(D=1<1440)return Ye;s[b]=x=h[0],h[0]+=D,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>_-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-_,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>_;D>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<<_)-1;(g&z)!=i[b];)b--,_-=S,z=(1<<_)-1}return 0!==I&&1!=m?Ze:0}function c(o){let c;for(e||(e=[],t=[],n=new f(16),r=[],s=new f(15),i=new f(16)),t.lengthc;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==Ye?f.Le="oversubscribed dynamic bit lengths tree":a!=Ze&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=Ye),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,nt,rt,a,i,u,e,t),0!=h||0===i[0]?(h==Ye?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=Ye),h):(c(288),h=o(s,n,r,0,st,it,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==Ye?w.Le="oversubscribed distance tree":h==Ze?(w.Le="incomplete distance tree",h=Ye):-4!=h&&(w.Le="empty distance tree with lengths",h=Ye),h):0)}}function ct(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15,k=a[z+2]+(w&$e[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(0!=(64&u))return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye;f+=a[z+2],f+=w&$e[u],z=3*(l+f),u=a[z]}break}if(0!=(64&u))return 0!=(32&u)?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye);if(f+=a[z+2],f+=w&$e[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,_=0,A=0;for(A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,m=p(u,w,r,h,s,d,e,y),A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>>=n[g+1],_-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(0!=(16&k)){a=15&k,i=n[g+2],t=2;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}if(0!=(32&k)){t=7;break}return t=9,y.Le="invalid literal/length code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 2:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}i+=x&$e[b],x>>=b,_-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>=n[g+1],_-=n[g+1],k=n[g],0!=(16&k)){a=15&k,l=n[g+2],t=4;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 4:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}l+=x&$e[b],x>>=b,_-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(_-=8,v++,A--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ot.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=et,r[0]=tt,0);const ft=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function at(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new ct;let h=0,d=new f(4320);const p=new ot;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ot.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[ft[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==Ye&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&$e[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,_=[],A=[],I=[],D=[],_[0]=9,A[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,_,A,I,D,d,e),0!=i)return i==Ye&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(_[0],A[0],d,I[0],d,D[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const lt=13,ut=[0,0,255,255];function wt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):Xe}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),Xe):(e.zt=r,n.gt.kt=new at(n,1<{let n,r;if(!e||!e.gt||!e.et)return Xe;const s=e.gt;for(t=4==t?Ze:0,n=Ze;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=lt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=lt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=lt,e.Le="incorrect header check",s.marker=5;break}if(0==(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=lt,e.Le="need dictionary",s.marker=0,Xe;case 7:if(n=s.kt.ut(e,n),n==Ye){s.mode=lt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case lt:return Ye;default:return Xe}},e.At=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return Xe;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return Xe;const c=e.gt;if(c.mode!=lt&&(c.mode=lt,c.marker=0),0===(n=e.We))return Ze;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==ut[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?Ye:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Dt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():Xe}function ht(){}function dt(e){const t=new ht,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t._t(0),c&&a===Ze){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}ht.prototype={xt(e){const t=this;return t.gt=new wt,e||(e=15),t.gt.xt(t,e)},_t(e){const t=this;return t.gt?t.gt._t(t,e):Xe},Ct(){const e=this;if(!e.gt)return Xe;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):Xe},At(e,t){const n=this;return n.gt?n.gt.At(n,e,t):Xe},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=Qe,self.Inflate=dt};\n'],{type:"text/javascript"}));e({workerScripts:{inflate:[t],deflate:[t]}})})($),e.BlobReader=Lt,e.BlobWriter=Nt,e.Data64URIReader=Ut,e.Data64URIWriter=It,e.ERR_BAD_FORMAT=Fn,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=In,e.ERR_DUPLICATED_NAME=ir,e.ERR_ENCRYPTED=On,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Un,e.ERR_EOCDR_NOT_FOUND=En,e.ERR_EOCDR_ZIP64_NOT_FOUND=Tn,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Nn,e.ERR_HTTP_RANGE=Ct,e.ERR_INVALID_COMMENT=ar,e.ERR_INVALID_ENCRYPTION_STRENGTH=ur,e.ERR_INVALID_ENTRY_COMMENT=or,e.ERR_INVALID_ENTRY_NAME=cr,e.ERR_INVALID_EXTRAFIELD_DATA=fr,e.ERR_INVALID_EXTRAFIELD_TYPE=dr,e.ERR_INVALID_PASSWORD=de,e.ERR_INVALID_SIGNATURE=fe,e.ERR_INVALID_VERSION=lr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=xt,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Ln,e.ERR_SPLIT_ZIP_FILE=Bn,e.ERR_UNSUPPORTED_COMPRESSION=Mn,e.ERR_UNSUPPORTED_ENCRYPTION=qn,e.ERR_UNSUPPORTED_FORMAT=wr,e.HttpRangeReader=class extends Qt{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Qt,e.Reader=Et,e.SplitDataReader=nn,e.SplitDataWriter=rn,e.SplitZipReader=ln,e.SplitZipWriter=un,e.TextReader=Ot,e.TextWriter=qt,e.Uint8ArrayReader=en,e.Uint8ArrayWriter=tn,e.Writer=Tt,e.ZipReader=Zn,e.ZipWriter=mr,e.configure=$,e.fs=Fr,e.getMimeType=()=>"application/octet-stream",e.initReader=an,e.initShimAsyncCodec=(e,t={},n)=>({Deflate:ee(e.Deflate,t.deflate,n),Inflate:ee(e.Inflate,t.inflate,n)}),e.initStream=sn,e.initWriter=on,e.readUint8Array=cn,e.terminateWorkers=()=>{bt.forEach((e=>{vt(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})})); diff --git a/dist/zip-full.js b/dist/zip-full.js index 8cddd9d7..b69ab47d 100644 --- a/dist/zip-full.js +++ b/dist/zip-full.js @@ -8532,6 +8532,7 @@ let uncompressedSize = 0; let signature; const { writable } = writer; + const metaDataLength = getLength(localHeaderArray, dataDescriptorArray); if (reader) { reader.chunkSize = getChunkSize(config); await writeData(writable, localHeaderArray); @@ -8601,7 +8602,7 @@ creationDate, lastAccessDate, encrypted, - length: getLength(localHeaderArray, dataDescriptorArray) + compressedSize, + length: metaDataLength + compressedSize, compressionMethod, version, headerArray, diff --git a/dist/zip-full.min.js b/dist/zip-full.min.js index b63109cb..ec816363 100644 --- a/dist/zip-full.min.js +++ b/dist/zip-full.min.js @@ -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:i,BigInt:s,Math:a,Date:o,Map:l,Set:c,Response:f,URL:u,Error:d,Uint8Array:w,Uint16Array:h,Uint32Array:p,DataView:_,Blob:g,Promise:m,TextEncoder:b,TextDecoder:y,document:x,crypto:k,btoa:S,TransformStream:v,ReadableStream:z,WritableStream:C,CompressionStream:D,DecompressionStream:A,navigator:W,Worker:R}="undefined"!=typeof globalThis?globalThis:this||self,E=-2;function F(e){return T(e.map((([e,n])=>new t(e).fill(n,0,e))))}function T(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?T(n):n)),[])}const I=[0,1,2,3].concat(...F([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function U(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,i=e.stat_desc.static_tree,s=e.stat_desc.elems;let o,l,c,f=-1;for(n.heap_len=0,n.heap_max=573,o=0;s>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=f=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>f?++f:0,r[2*c]=1,n.depth[c]=0,n.opt_len--,i&&(n.static_len-=i[2*c+1]);for(e.max_code=f,o=a.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);c=s;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]=a.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,i=e.stat_desc.extra_bits,s=e.stat_desc.extra_base,a=e.stat_desc.max_length;let o,l,c,f,u,d,w=0;for(f=0;15>=f;f++)t.bl_count[f]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)l=t.heap[o],f=n[2*n[2*l+1]+1]+1,f>a&&(f=a,w++),n[2*l+1]=f,l>e.max_code||(t.bl_count[f]++,u=0,s>l||(u=i[l-s]),d=n[2*l],t.opt_len+=d*(f+u),r&&(t.static_len+=d*(r[2*l+1]+u)));if(0!==w){do{for(f=a-1;0===t.bl_count[f];)f--;t.bl_count[f]--,t.bl_count[f+1]+=2,t.bl_count[a]--,w-=2}while(w>0);for(f=a;0!==f;f--)for(l=t.bl_count[f];0!==l;)c=t.heap[--o],c>e.max_code||(n[2*c+1]!=f&&(t.opt_len+=(f-n[2*c+1])*n[2*c],n[2*c+1]=f),l--)}})(n),((e,n,r)=>{const i=[];let s,a,o,l=0;for(s=1;15>=s;s++)i[s]=l=l+r[s-1]<<1;for(a=0;n>=a;a++)o=e[2*a+1],0!==o&&(e[2*a]=t(i[o]++,o))})(r,e.max_code,n.bl_count)}}function L(e,t,n,r,i){const s=this;s.static_tree=e,s.extra_bits=t,s.extra_base=n,s.elems=r,s.max_length=i}U._length_code=[0,1,2,3,4,5,6,7].concat(...F([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),U.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],U.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],U.d_code=e=>256>e?I[e]:I[256+(e>>>7)],U.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],U.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],U.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],U.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const q=F([[144,8],[112,9],[24,7],[8,8]]);L.static_ltree=T([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,q[t]])));const N=F([[30,5]]);function O(e,t,n,r,i){const s=this;s.good_length=e,s.max_lazy=t,s.nice_length=n,s.max_chain=r,s.func=i}L.static_dtree=T([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,N[t]]))),L.static_l_desc=new L(L.static_ltree,U.extra_lbits,257,286,15),L.static_d_desc=new L(L.static_dtree,U.extra_dbits,0,30,15),L.static_bl_desc=new L(null,U.extra_blbits,0,19,7);const M=[new O(0,0,0,0,0),new O(4,4,8,4,1),new O(4,5,16,8,1),new O(4,6,32,32,1),new O(4,4,16,16,2),new O(8,16,32,32,2),new O(8,16,128,128,2),new O(8,32,128,256,2),new O(32,128,258,1024,2),new O(32,258,258,4096,2)],K=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],V=113,P=666,B=262;function H(e,t,n,r){const i=e[2*t],s=e[2*n];return s>i||i==s&&r[t]<=r[n]}function Y(){const e=this;let t,n,r,i,s,o,l,c,f,u,d,p,_,g,m,b,y,x,k,S,v,z,C,D,A,W,R,F,T,I,q,N,O;const Y=new U,Z=new U,X=new U;let j,G,J,$,Q,ee;function te(){let t;for(t=0;286>t;t++)q[2*t]=0;for(t=0;30>t;t++)N[2*t]=0;for(t=0;19>t;t++)O[2*t]=0;q[512]=1,e.opt_len=e.static_len=0,G=J=0}function ne(e,t){let n,r=-1,i=e[1],s=0,a=7,o=4;0===i&&(a=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)n=i,i=e[2*(l+1)+1],++ss?O[2*n]+=s:0!==n?(n!=r&&O[2*n]++,O[32]++):s>10?O[36]++:O[34]++,s=0,r=n,0===i?(a=138,o=3):n==i?(a=6,o=3):(a=7,o=4))}function re(t){e.pending_buf[e.pending++]=t}function ie(e){re(255&e),re(e>>>8&255)}function se(e,t){let n;const r=t;ee>16-r?(n=e,Q|=n<>>16-ee,ee+=r-16):(Q|=e<=n;n++)if(r=s,s=e[2*(n+1)+1],++a>=o||r!=s){if(l>a)do{ae(r,O)}while(0!=--a);else 0!==r?(r!=i&&(ae(r,O),a--),ae(16,O),se(a-3,2)):a>10?(ae(18,O),se(a-11,7)):(ae(17,O),se(a-3,3));a=0,i=r,0===s?(o=138,l=3):r==s?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(ie(Q),Q=0,ee=0):8>ee||(re(255&Q),Q>>>=8,ee-=8)}function ce(t,n){let r,i,s;if(e.dist_buf[G]=t,e.lc_buf[G]=255&n,G++,0===t?q[2*n]++:(J++,t--,q[2*(U._length_code[n]+256+1)]++,N[2*U.d_code(t)]++),0==(8191&G)&&R>2){for(r=8*G,i=v-y,s=0;30>s;s++)r+=N[2*s]*(5+U.extra_dbits[s]);if(r>>>=3,Jo);ae(256,t),$=t[513]}function ue(){ee>8?ie(Q):ee>0&&re(255&Q),Q=0,ee=0}function de(t,n,r){se(0+(r?1:0),3),((t,n)=>{ue(),$=8,ie(n),ie(~n),e.pending_buf.set(c.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function we(n){((t,n,r)=>{let i,s,a=0;R>0?(Y.build_tree(e),Z.build_tree(e),a=(()=>{let t;for(ne(q,Y.max_code),ne(N,Z.max_code),X.build_tree(e),t=18;t>=3&&0===O[2*U.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),i=e.opt_len+3+7>>>3,s=e.static_len+3+7>>>3,s>i||(i=s)):i=s=n+5,n+4>i||-1==t?s==i?(se(2+(r?1:0),3),fe(L.static_ltree,L.static_dtree)):(se(4+(r?1:0),3),((e,t,n)=>{let r;for(se(e-257,5),se(t-1,5),se(n-4,4),r=0;n>r;r++)se(O[2*U.bl_order[r]+1],3);oe(q,e-1),oe(N,t-1)})(Y.max_code+1,Z.max_code+1,a+1),fe(q,N)):de(t,n,r),te(),r&&ue()})(0>y?-1:y,v-y,n),y=v,t.flush_pending()}function he(){let e,n,r,i;do{if(i=f-C-v,0===i&&0===v&&0===C)i=s;else if(-1==i)i--;else if(v>=s+s-B){c.set(c.subarray(s,s+s),0),z-=s,v-=s,y-=s,e=_,r=e;do{n=65535&d[--r],d[r]=s>n?0:n-s}while(0!=--e);e=s,r=e;do{n=65535&u[--r],u[r]=s>n?0:n-s}while(0!=--e);i+=s}if(0===t.avail_in)return;e=t.read_buf(c,v+C,i),C+=e,3>C||(p=255&c[v],p=(p<C&&0!==t.avail_in)}function pe(e){let t,n,r=A,i=v,a=D;const o=v>s-B?v-(s-B):0;let f=I;const d=l,w=v+258;let h=c[i+a-1],p=c[i+a];T>D||(r>>=2),f>C&&(f=C);do{if(t=e,c[t+a]==p&&c[t+a-1]==h&&c[t]==c[i]&&c[++t]==c[i+1]){i+=2,t++;do{}while(c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&w>i);if(n=258-(w-i),i=w-258,n>a){if(z=e,a=n,n>=f)break;h=c[i+a-1],p=c[i+a]}}}while((e=65535&u[e&d])>o&&0!=--r);return a>C?C:a}e.depth=[],e.bl_count=[],e.heap=[],q=[],N=[],O=[],e.pqdownheap=(t,n)=>{const r=e.heap,i=r[n];let s=n<<1;for(;s<=e.heap_len&&(s(U||(U=8),K||(K=8),P||(P=0),t.msg=null,-1==k&&(k=6),1>K||K>9||8!=U||9>z||z>15||0>k||k>9||0>P||P>2?E:(t.dstate=e,o=z,s=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=V,i=0,Y.dyn_tree=q,Y.stat_desc=L.static_l_desc,Z.dyn_tree=N,Z.stat_desc=L.static_d_desc,X.dyn_tree=O,X.stat_desc=L.static_bl_desc,Q=0,ee=0,$=8,te(),(()=>{f=2*s,d[_-1]=0;for(let e=0;_-1>e;e++)d[e]=0;W=M[R].max_lazy,T=M[R].good_length,I=M[R].nice_length,A=M[R].max_chain,v=0,y=0,C=0,x=D=2,S=0,p=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=V&&n!=P?E:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,d=null,u=null,c=null,e.dstate=null,n==V?-3:0),e.deflateParams=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?E:(M[R].func!=M[t].func&&0!==e.total_in&&(r=e.deflate(1)),R!=t&&(R=t,W=M[R].max_lazy,T=M[R].good_length,I=M[R].nice_length,A=M[R].max_chain),F=n,r)},e.deflateSetDictionary=(e,t,r)=>{let i,a=r,o=0;if(!t||42!=n)return E;if(3>a)return 0;for(a>s-B&&(a=s-B,o=r-a),c.set(t.subarray(o,o+a),0),v=a,y=a,p=255&c[0],p=(p<=i;i++)p=(p<{let w,h,g,A,T;if(f>4||0>f)return E;if(!a.next_out||!a.next_in&&0!==a.avail_in||n==P&&4!=f)return a.msg=K[4],E;if(0===a.avail_out)return a.msg=K[7],-5;var I;if(t=a,A=i,i=f,42==n&&(h=8+(o-8<<4)<<8,g=(R-1&255)>>1,g>3&&(g=3),h|=g<<6,0!==v&&(h|=32),h+=31-h%31,n=V,re((I=h)>>8&255),re(255&I)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return i=-1,0}else if(0===t.avail_in&&A>=f&&4!=f)return t.msg=K[7],-5;if(n==P&&0!==t.avail_in)return a.msg=K[7],-5;if(0!==t.avail_in||0!==C||0!=f&&n!=P){switch(T=-1,M[R].func){case 0:T=(e=>{let n,i=65535;for(i>r-5&&(i=r-5);;){if(1>=C){if(he(),0===C&&0==e)return 0;if(0===C)break}if(v+=C,C=0,n=y+i,(0===v||v>=n)&&(C=v-n,v=n,we(!1),0===t.avail_out))return 0;if(v-y>=s-B&&(we(!1),0===t.avail_out))return 0}return we(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(f);break;case 1:T=(e=>{let n,r=0;for(;;){if(B>C){if(he(),B>C&&0==e)return 0;if(0===C)break}if(3>C||(p=(p<s-B||2!=F&&(x=pe(r)),3>x)n=ce(0,255&c[v]),C--,v++;else if(n=ce(v-z,x-3),C-=x,x>W||3>C)v+=x,x=0,p=255&c[v],p=(p<{let n,r,i=0;for(;;){if(B>C){if(he(),B>C&&0==e)return 0;if(0===C)break}if(3>C||(p=(p<D&&s-B>=(v-i&65535)&&(2!=F&&(x=pe(i)),5>=x&&(1==F||3==x&&v-z>4096)&&(x=2)),3>D||x>D)if(0!==S){if(n=ce(0,255&c[v-1]),n&&we(!1),v++,C--,0===t.avail_out)return 0}else S=1,v++,C--;else{r=v+C-3,n=ce(v-1-k,D-3),C-=D-1,D-=2;do{++v>r||(p=(p<1+$+10-ee&&(se(2,3),ae(256,L.static_ltree),le()),$=7;else if(de(0,0,!1),3==f)for(w=0;_>w;w++)d[w]=0;if(t.flush_pending(),0===t.avail_out)return i=-1,0}}return 4!=f?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 Y,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):E},deflateEnd(){const e=this;if(!e.dstate)return E;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):E},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):E},read_buf(e,t,n){const r=this;let i=r.avail_in;return i>n&&(i=n),0===i?0:(r.avail_in-=i,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),t),r.next_in_index+=i,r.total_in+=i,i)},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=-2,j=-3,G=-5,J=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],$=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],Q=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],ee=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],te=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ne=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],re=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ie(){let e,t,n,r,i,s;function a(e,t,a,o,l,c,f,u,d,w,h){let p,_,g,m,b,y,x,k,S,v,z,C,D,A,W;v=0,b=a;do{n[e[t+v]]++,v++,b--}while(0!==b);if(n[0]==a)return f[0]=-1,u[0]=0,0;for(k=u[0],y=1;15>=y&&0===n[y];y++);for(x=y,y>k&&(k=y),b=15;0!==b&&0===n[b];b--);for(g=b,k>b&&(k=b),u[0]=k,A=1<y;y++,A<<=1)if(0>(A-=n[y]))return j;if(0>(A-=n[b]))return j;for(n[b]+=A,s[1]=y=0,v=1,D=2;0!=--b;)s[D]=y+=n[v],D++,v++;b=0,v=0;do{0!==(y=e[t+v])&&(h[s[y]++]=b),v++}while(++b=x;x++)for(p=n[x];0!=p--;){for(;x>C+k;){if(m++,C+=k,W=g-C,W=W>k?k:W,(_=1<<(y=x-C))>p+1&&(_-=p+1,D=x,W>y))for(;++yn[++D];)_-=n[D];if(W=1<1440)return j;i[m]=z=w[0],w[0]+=W,0!==m?(s[m]=b,r[0]=y,r[1]=k,y=b>>>C-k,r[2]=z-i[m-1]-y,d.set(r,3*(i[m-1]+y))):f[0]=z}for(r[1]=x-C,a>v?h[v]h[v]?0:96,r[2]=h[v++]):(r[0]=c[h[v]-o]+16+64,r[2]=l[h[v++]-o]):r[0]=192,_=1<>>C;W>y;y+=_)d.set(r,3*(z+y));for(y=1<>>=1)b^=y;for(b^=y,S=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)r[o]=0;i.set(n.subarray(0,15),0),s.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,r,i,s,l)=>{let c;return o(19),e[0]=0,c=a(n,0,19,19,null,null,i,r,s,e,t),c==j?l.msg="oversubscribed dynamic bit lengths tree":c!=G&&0!==r[0]||(l.msg="incomplete dynamic bit lengths tree",c=j),c},this.inflate_trees_dynamic=(n,r,i,s,l,c,f,u,d)=>{let w;return o(288),e[0]=0,w=a(i,0,n,257,ee,te,c,s,u,e,t),0!=w||0===s[0]?(w==j?d.msg="oversubscribed literal/length tree":-4!=w&&(d.msg="incomplete literal/length tree",w=j),w):(o(288),w=a(i,n,r,0,ne,re,f,l,u,e,t),0!=w||0===l[0]&&n>257?(w==j?d.msg="oversubscribed distance tree":w==G?(d.msg="incomplete distance tree",w=j):-4!=w&&(d.msg="empty distance tree with lengths",w=j),w):0)}}function se(){const e=this;let t,n,r,i,s=0,a=0,o=0,l=0,c=0,f=0,u=0,d=0,w=0,h=0;function p(e,t,n,r,i,s,a,o){let l,c,f,u,d,w,h,p,_,g,m,b,y,x,k,S;h=o.next_in_index,p=o.avail_in,d=a.bitb,w=a.bitk,_=a.write,g=_w;)p--,d|=(255&o.read_byte(h++))<>=c[S+1],w-=c[S+1],0!=(16&u)){for(u&=15,y=c[S+2]+(d&J[u]),d>>=u,w-=u;15>w;)p--,d|=(255&o.read_byte(h++))<>=c[S+1],w-=c[S+1],0!=(16&u)){for(u&=15;u>w;)p--,d|=(255&o.read_byte(h++))<>=u,w-=u,g-=y,x>_){k=_-x;do{k+=a.end}while(0>k);if(u=a.end-k,y>u){if(y-=u,_-k>0&&u>_-k)do{a.win[_++]=a.win[k++]}while(0!=--u);else a.win.set(a.win.subarray(k,k+u),_),_+=u,k+=u,u=0;k=0}}else k=_-x,_-k>0&&2>_-k?(a.win[_++]=a.win[k++],a.win[_++]=a.win[k++],y-=2):(a.win.set(a.win.subarray(k,k+2),_),_+=2,k+=2,y-=2);if(_-k>0&&y>_-k)do{a.win[_++]=a.win[k++]}while(0!=--y);else a.win.set(a.win.subarray(k,k+y),_),_+=y,k+=y,y=0;break}if(0!=(64&u))return o.msg="invalid distance code",y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=_,j;l+=c[S+2],l+=d&J[u],S=3*(f+l),u=c[S]}break}if(0!=(64&u))return 0!=(32&u)?(y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=_,1):(o.msg="invalid literal/length code",y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=_,j);if(l+=c[S+2],l+=d&J[u],S=3*(f+l),0===(u=c[S])){d>>=c[S+1],w-=c[S+1],a.win[_++]=c[S+2],g--;break}}else d>>=c[S+1],w-=c[S+1],a.win[_++]=c[S+2],g--}while(g>=258&&p>=10);return y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=_,0}e.init=(e,s,a,o,l,c)=>{t=0,u=e,d=s,r=a,w=o,i=l,h=c,n=null},e.proc=(e,_,g)=>{let m,b,y,x,k,S,v,z=0,C=0,D=0;for(D=_.next_in_index,x=_.avail_in,z=e.bitb,C=e.bitk,k=e.write,S=k=258&&x>=10&&(e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,g=p(u,d,r,w,i,h,e,_),D=_.next_in_index,x=_.avail_in,z=e.bitb,C=e.bitk,k=e.write,S=kC;){if(0===x)return e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,e.inflate_flush(_,g);g=0,x--,z|=(255&_.read_byte(D++))<>>=n[b+1],C-=n[b+1],y=n[b],0===y){l=n[b+2],t=6;break}if(0!=(16&y)){c=15&y,s=n[b+2],t=2;break}if(0==(64&y)){o=y,a=b/3+n[b+2];break}if(0!=(32&y)){t=7;break}return t=9,_.msg="invalid literal/length code",g=j,e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,e.inflate_flush(_,g);case 2:for(m=c;m>C;){if(0===x)return e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,e.inflate_flush(_,g);g=0,x--,z|=(255&_.read_byte(D++))<>=m,C-=m,o=d,n=i,a=h,t=3;case 3:for(m=o;m>C;){if(0===x)return e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,e.inflate_flush(_,g);g=0,x--,z|=(255&_.read_byte(D++))<>=n[b+1],C-=n[b+1],y=n[b],0!=(16&y)){c=15&y,f=n[b+2],t=4;break}if(0==(64&y)){o=y,a=b/3+n[b+2];break}return t=9,_.msg="invalid distance code",g=j,e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,e.inflate_flush(_,g);case 4:for(m=c;m>C;){if(0===x)return e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,e.inflate_flush(_,g);g=0,x--,z|=(255&_.read_byte(D++))<>=m,C-=m,t=5;case 5:for(v=k-f;0>v;)v+=e.end;for(;0!==s;){if(0===S&&(k==e.end&&0!==e.read&&(k=0,S=k7&&(C-=8,x++,D--),e.write=k,g=e.inflate_flush(_,g),k=e.write,S=k{}}ie.inflate_trees_fixed=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=$,r[0]=Q,0);const ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function oe(e,t){const n=this;let r,i=0,s=0,a=0,o=0;const l=[0],c=[0],f=new se;let u=0,d=new Int32Array(4320);const h=new ie;n.bitk=0,n.bitb=0,n.win=new w(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==i&&f.free(e),i=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let r,i,s;return i=e.next_out_index,s=n.read,r=(s>n.write?n.end:n.write)-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==G&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r,s==n.end&&(s=0,n.write==n.end&&(n.write=0),r=n.write-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==G&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r),e.next_out_index=i,n.read=s,t},n.proc=(e,t)=>{let w,p,_,g,m,b,y,x;for(g=e.next_in_index,m=e.avail_in,p=n.bitb,_=n.bitk,b=n.write,y=b_;){if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(g++))<<_,_+=8}switch(w=7&p,u=1&w,w>>>1){case 0:p>>>=3,_-=3,w=7&_,p>>>=w,_-=w,i=1;break;case 1:k=[],S=[],v=[[]],z=[[]],ie.inflate_trees_fixed(k,S,v,z),f.init(k[0],S[0],v[0],0,z[0],0),p>>>=3,_-=3,i=6;break;case 2:p>>>=3,_-=3,i=3;break;case 3:return p>>>=3,_-=3,i=9,e.msg="invalid block type",t=j,n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t)}break;case 1:for(;32>_;){if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(g++))<<_,_+=8}if((~p>>>16&65535)!=(65535&p))return i=9,e.msg="invalid stored block lengths",t=j,n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);s=65535&p,p=_=0,i=0!==s?2:0!==u?7:0;break;case 2:if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);if(0===y&&(b==n.end&&0!==n.read&&(b=0,y=bm&&(w=m),w>y&&(w=y),n.win.set(e.read_buf(g,w),b),g+=w,m-=w,b+=w,y-=w,0!=(s-=w))break;i=0!==u?7:0;break;case 3:for(;14>_;){if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(g++))<<_,_+=8}if(a=w=16383&p,(31&w)>29||(w>>5&31)>29)return i=9,e.msg="too many length or distance symbols",t=j,n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);if(w=258+(31&w)+(w>>5&31),!r||r.lengthx;x++)r[x]=0;p>>>=14,_-=14,o=0,i=4;case 4:for(;4+(a>>>10)>o;){for(;3>_;){if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(g++))<<_,_+=8}r[ae[o++]]=7&p,p>>>=3,_-=3}for(;19>o;)r[ae[o++]]=0;if(l[0]=7,w=h.inflate_trees_bits(r,l,c,d,e),0!=w)return(t=w)==j&&(r=null,i=9),n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);o=0,i=5;case 5:for(;w=a,258+(31&w)+(w>>5&31)>o;){let s,f;for(w=l[0];w>_;){if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(g++))<<_,_+=8}if(w=d[3*(c[0]+(p&J[w]))+1],f=d[3*(c[0]+(p&J[w]))+2],16>f)p>>>=w,_-=w,r[o++]=f;else{for(x=18==f?7:f-14,s=18==f?11:3;w+x>_;){if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(g++))<<_,_+=8}if(p>>>=w,_-=w,s+=p&J[x],p>>>=x,_-=x,x=o,w=a,x+s>258+(31&w)+(w>>5&31)||16==f&&1>x)return r=null,i=9,e.msg="invalid bit length repeat",t=j,n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);f=16==f?r[x-1]:0;do{r[x++]=f}while(0!=--s);o=x}}if(c[0]=-1,C=[],D=[],A=[],W=[],C[0]=9,D[0]=6,w=a,w=h.inflate_trees_dynamic(257+(31&w),1+(w>>5&31),r,C,D,A,W,d,e),0!=w)return w==j&&(r=null,i=9),t=w,n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);f.init(C[0],D[0],d,A[0],d,W[0]),i=6;case 6:if(n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,1!=(t=f.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,f.free(e),g=e.next_in_index,m=e.avail_in,p=n.bitb,_=n.bitk,b=n.write,y=b{n.reset(e,null),n.win=null,d=null},n.set_dictionary=(e,t,r)=>{n.win.set(e.subarray(t,t+r),0),n.read=n.write=r},n.sync_point=()=>1==i?1:0}const le=13,ce=[0,0,255,255];function fe(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):X}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,r)=>(n.msg=null,e.blocks=null,8>r||r>15?(e.inflateEnd(n),X):(e.wbits=r,n.istate.blocks=new oe(n,1<{let n,r;if(!e||!e.istate||!e.next_in)return X;const i=e.istate;for(t=4==t?G:0,n=G;;)switch(i.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(i.method=e.read_byte(e.next_in_index++)))){i.mode=le,e.msg="unknown compression method",i.marker=5;break}if(8+(i.method>>4)>i.wbits){i.mode=le,e.msg="invalid win size",i.marker=5;break}i.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,r=255&e.read_byte(e.next_in_index++),((i.method<<8)+r)%31!=0){i.mode=le,e.msg="incorrect header check",i.marker=5;break}if(0==(32&r)){i.mode=7;break}i.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,i.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,i.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,i.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,i.need+=255&e.read_byte(e.next_in_index++),i.mode=6,2);case 6:return i.mode=le,e.msg="need dictionary",i.marker=0,X;case 7:if(n=i.blocks.proc(e,n),n==j){i.mode=le,i.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,i.blocks.reset(e,i.was),i.mode=12;case 12:return e.avail_in=0,1;case le:return j;default:return X}},e.inflateSetDictionary=(e,t,n)=>{let r=0,i=n;if(!e||!e.istate||6!=e.istate.mode)return X;const s=e.istate;return i<1<{let n,r,i,s,a;if(!e||!e.istate)return X;const o=e.istate;if(o.mode!=le&&(o.mode=le,o.marker=0),0===(n=e.avail_in))return G;for(r=e.next_in_index,i=o.marker;0!==n&&4>i;)e.read_byte(r)==ce[i]?i++:i=0!==e.read_byte(r)?0:4-i,r++,n--;return e.total_in+=r-e.next_in_index,e.next_in_index=r,e.avail_in=n,o.marker=i,4!=i?j:(s=e.total_in,a=e.total_out,t(e),e.total_in=s,e.total_out=a,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():X}function ue(){}ue.prototype={inflateInit(e){const t=this;return t.istate=new fe,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):X},inflateEnd(){const e=this;if(!e.istate)return X;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):X},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):X},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const de=4294967295,we=65535,he=67324752,pe=134695760,_e=33639248,ge=101075792,me=117853008,be=21589,ye=2048,xe="/",ke=new o(2107,11,31),Se=new o(1980,0,1),ve=void 0,ze="undefined",Ce="function";class De{constructor(e){return class extends v{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 Ae=2;try{typeof W!=ze&&W.hardwareConcurrency&&(Ae=W.hardwareConcurrency)}catch(e){}const We={chunkSize:524288,maxWorkers:Ae,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:ve,CompressionStreamNative:typeof D!=ze&&D,DecompressionStreamNative:typeof A!=ze&&A},Re=n.assign({},We);function Ee(){return Re}function Fe(e){return a.max(e.chunkSize,64)}function Te(e){const{baseURL:n,chunkSize:r,maxWorkers:i,terminateWorkerTimeout:s,useCompressionStream:a,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:f,DecompressionStream:u,workerScripts:w}=e;if(Ie("baseURL",n),Ie("chunkSize",r),Ie("maxWorkers",i),Ie("terminateWorkerTimeout",s),Ie("useCompressionStream",a),Ie("useWebWorkers",o),l&&(Re.CompressionStream=new De(l)),c&&(Re.DecompressionStream=new De(c)),Ie("CompressionStream",f),Ie("DecompressionStream",u),w!==ve){const{deflate:e,inflate:n}=w;if((e||n)&&(Re.workerScripts||(Re.workerScripts={})),e){if(!t.isArray(e))throw new d("workerScripts.deflate must be an array");Re.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new d("workerScripts.inflate must be an array");Re.workerScripts.inflate=n}}}function Ie(e,t){t!==ve&&(Re[e]=t)}function Ue(e,t,r){return class{constructor(i){const s=this;var a,o;a=i,o="level",("function"==typeof n.hasOwn?n.hasOwn(a,o):a.hasOwnProperty(o))&&void 0===i.level&&delete i.level,s.codec=new e(n.assign({},t,i)),r(s.codec,(e=>{if(s.pendingData){const t=s.pendingData;s.pendingData=new w(t.length+e.length);const{pendingData:n}=s;n.set(t,0),n.set(e,t.length)}else s.pendingData=new w(e)}))}append(e){return this.codec.push(e),i(this)}flush(){return this.codec.push(new w,!0),i(this)}};function i(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new w}}const Le=[];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;Le[e]=t}class qe{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^Le[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Ne extends v{constructor(){let e;const t=new qe;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new _(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function Oe(e){if(void 0===b){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=Me.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=>a.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 i=0;i>>t),n=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=Me.getPartial(i);return r.push(Me.partial(t+s&31,t+s>32?n:r.pop(),1)),r}},Ke={bytes:{fromBits(e){const t=Me.bitLength(e)/8,n=new w(t);let r;for(let i=0;t>i;i++)0==(3&i)&&(r=e[i/4]),n[i]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const s=new p(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=Me.concat(t,[Me.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return 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){return t<>>32-e}_block(e){const n=this,r=n._h,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let s=r[0],o=r[1],l=r[2],c=r[3],f=r[4];for(let e=0;79>=e;e++){16>e||(i[e]=n._S(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n._S(5,s)+n._f(e,o,l,c)+f+i[e]+n._key[a.floor(e/20)]|0;f=c,c=l,l=n._S(30,o),o=s,s=t}r[0]=r[0]+s|0,r[1]=r[1]+o|0,r[2]=r[2]+l|0,r[3]=r[3]+c|0,r[4]=r[4]+f|0}},Pe={getRandomValues(e){const t=new p(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)*(a.random()>.5?1:-1))};for(let r,i=0;inew Be.hmacSha1(Ke.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new d("invalid params to pbkdf2");const i=1+(r>>5)<<2;let s,a,o,l,c;const f=new ArrayBuffer(i),u=new _(f);let w=0;const h=Me;for(t=Ke.bytes.toBits(t),c=1;(i||1)>w;c++){for(s=a=e.encrypt(h.concat(t,[c])),o=1;n>o;o++)for(a=e.encrypt(a),l=0;lw&&oi&&(e=(new n).update(e).finalize());for(let t=0;i>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 d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},He=void 0!==k&&"function"==typeof k.getRandomValues,Ye="Invalid password",Ze="Invalid signature",Xe="zipjs-abort-check-password";function je(e){return He?k.getRandomValues(e):Pe.getRandomValues(e)}const Ge=16,Je={name:"PBKDF2"},$e=n.assign({hash:{name:"HMAC"}},Je),Qe=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Je),et=["deriveBits"],tt=[8,12,16],nt=[16,24,32],rt=10,it=[0,0,0,0],st="undefined",at="function",ot=typeof k!=st,lt=ot&&k.subtle,ct=ot&&typeof lt!=st,ft=Ke.bytes,ut=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],i=e.length;let s,a,o,l=1;if(4!==i&&6!==i&&8!==i)throw new d("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],s=i;4*i+28>s;s++){let e=a[s-1];(s%i==0||8===i&&s%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],s%i==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),a[s]=a[s-i]^e}for(let e=0;s;e++,s--){const t=a[3&e?s:s-4];o[e]=4>=s||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],i=[],s=[];let a,o,l,c;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let f=a=0;!n[f];f^=o||1,a=s[a]||1){let s=a^a<<1^a<<2^a<<3^a<<4;s=s>>8^255&s^99,n[f]=s,r[s]=f,c=i[l=i[o=i[f]]];let u=16843009*c^65537*l^257*o^16843008*f,d=257*i[s]^16843008*s;for(let n=0;4>n;n++)e[n][f]=d=d<<24^d>>>8,t[n][s]=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 d("invalid aes block size");const n=this._key[t],r=n.length/4-2,i=[0,0,0,0],s=this._tables[t],a=s[0],o=s[1],l=s[2],c=s[3],f=s[4];let u,w,h,p=e[0]^n[0],_=e[t?3:1]^n[1],g=e[2]^n[2],m=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)u=a[p>>>24]^o[_>>16&255]^l[g>>8&255]^c[255&m]^n[b],w=a[_>>>24]^o[g>>16&255]^l[m>>8&255]^c[255&p]^n[b+1],h=a[g>>>24]^o[m>>16&255]^l[p>>8&255]^c[255&_]^n[b+2],m=a[m>>>24]^o[p>>16&255]^l[_>>8&255]^c[255&g]^n[b+3],b+=4,p=u,_=w,g=h;for(let e=0;4>e;e++)i[t?3&-e:e]=f[p>>>24]<<24^f[_>>16&255]<<16^f[g>>8&255]<<8^f[255&m]^n[b++],u=p,p=_,_=g,g=m,m=u;return i}},dt=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 i=Me.bitLength(t);for(let i=0;r>i;i+=4){this.incCounter(n);const r=e.encrypt(n);t[i]^=r[0],t[i+1]^=r[1],t[i+2]^=r[2],t[i+3]^=r[3]}return Me.clamp(t,i)}},wt=Be.hmacSha1;let ht=ot&&ct&&typeof lt.importKey==at,pt=ot&&ct&&typeof lt.deriveBits==at;class _t extends v{constructor({password:e,signed:t,encryptionStrength:r,checkPasswordOnly:i}){super({start(){n.assign(this,{ready:new m((e=>this.resolveReady=e)),password:e,signed:t,strength:r-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const i=await bt(e,t,n,xt(r,0,tt[t])),s=xt(r,tt[t]);if(i[0]!=s[0]||i[1]!=s[1])throw new d(Ye)})(n,s,r,xt(e,0,tt[s]+2)),e=xt(e,tt[s]+2),i?t.error(new d(Xe)):a()):await o;const l=new w(e.length-rt-(e.length-rt)%Ge);t.enqueue(mt(n,e,l,0,rt,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:i,ready:s}=this;await s;const a=xt(i,0,i.length-rt),o=xt(i,i.length-rt);let l=new w;if(a.length){const e=St(ft,a);r.update(e);const t=n.update(e);l=kt(ft,t)}if(t){const e=xt(kt(ft,r.digest()),0,rt);for(let t=0;rt>t;t++)if(e[t]!=o[t])throw new d(Ze)}e.enqueue(l)}})}}class gt extends v{constructor({password:e,encryptionStrength:t}){let r;super({start(){n.assign(this,{ready:new m((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:s,ready:a}=n;let o=new w;r?(o=await(async(e,t,n)=>{const r=je(new w(tt[t]));return yt(r,await bt(e,t,n,r))})(n,i,r),s()):await a;const l=new w(o.length+e.length-e.length%Ge);l.set(o,0),t.enqueue(mt(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:i,ready:s}=this;await s;let a=new w;if(i.length){const e=t.update(St(ft,i));n.update(e),a=kt(ft,e)}r.signature=kt(ft,n.digest()).slice(0,rt),e.enqueue(yt(a,r.signature))}}),r=this}}function mt(e,t,n,r,i,s){const{ctr:a,hmac:o,pending:l}=e,c=t.length-i;let f;for(l.length&&(t=yt(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e})(n,c-c%Ge)),f=0;c-Ge>=f;f+=Ge){const e=St(ft,xt(t,f,f+Ge));s&&o.update(e);const i=a.update(e);s||o.update(i),n.set(kt(ft,i),f+r)}return e.pending=xt(t,f),n}async function bt(e,r,i,s){e.password=null;const a=Oe(i),o=await(async(e,t,n,r,i)=>{if(!ht)return Be.importKey(t);try{return await lt.importKey("raw",t,n,!1,i)}catch(e){return ht=!1,Be.importKey(t)}})(0,a,$e,0,et),l=await(async(e,t,n)=>{if(!pt)return Be.pbkdf2(t,e.salt,Qe.iterations,n);try{return await lt.deriveBits(e,t,n)}catch(r){return pt=!1,Be.pbkdf2(t,e.salt,Qe.iterations,n)}})(n.assign({salt:s},Qe),o,8*(2*nt[r]+2)),c=new w(l),f=St(ft,xt(c,0,nt[r])),u=St(ft,xt(c,nt[r],2*nt[r])),d=xt(c,2*nt[r]);return n.assign(e,{keys:{key:f,authentication:u,passwordVerification:d},ctr:new dt(new ut(f),t.from(it)),hmac:new wt(u)}),d}function yt(e,t){let n=e;return e.length+t.length&&(n=new w(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function xt(e,t,n){return e.subarray(t,n)}function kt(e,t){return e.fromBits(t)}function St(e,t){return e.toBits(t)}class vt extends v{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),At(this,e)},transform(e,t){const n=this;if(n.password){const t=Ct(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new d(Ye);e=e.subarray(12)}r?t.error(new d(Xe)):t.enqueue(Ct(n,e))}})}}class zt extends v{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),At(this,e)},transform(e,t){const n=this;let r,i;if(n.password){n.password=null;const t=je(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Dt(n,t),0),i=12}else r=new w(e.length),i=0;r.set(Dt(n,e),i),t.enqueue(r)}})}}function Ct(e,t){const n=new w(t.length);for(let r=0;r>>24]),i=~e.crcKey2.get(),e.keys=[n,r,i]}function Rt(e){const t=2|e.keys[2];return Et(a.imul(t,1^t)>>>8)}function Et(e){return 255&e}function Ft(e){return 4294967295&e}const Tt="deflate-raw";class It extends v{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:i,encrypted:s,useCompressionStream:a,zipCrypto:o,signed:l,level:c}=e,f=this;let u,d,w=Lt(super.readable);s&&!o||!l||(u=new Ne,w=Ot(w,u)),i&&(w=Nt(w,a,{level:c,chunkSize:t},r,n)),s&&(o?w=Ot(w,new zt(e)):(d=new gt(e),w=Ot(w,d))),qt(f,w,(async()=>{let e;s&&!o&&(e=d.signature),s&&!o||!l||(e=new _(u.value.buffer).getUint32(0)),f.signature=e}))}}class Ut extends v{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:s,signed:a,signature:o,compressed:l,useCompressionStream:c}=e;let f,u,w=Lt(super.readable);s&&(i?w=Ot(w,new vt(e)):(u=new _t(e),w=Ot(w,u))),l&&(w=Nt(w,c,{chunkSize:t},r,n)),s&&!i||!a||(f=new Ne,w=Ot(w,f)),qt(this,w,(async()=>{if((!s||i)&&a){const e=new _(f.value.buffer);if(o!=e.getUint32(0,!1))throw new d(Ze)}}))}}function Lt(e){return Ot(e,new v({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function qt(e,t,r){t=Ot(t,new v({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Nt(e,t,n,r,i){try{e=Ot(e,new(t&&r?r:i)(Tt,n))}catch(r){if(!t)throw r;e=Ot(e,new i(Tt,n))}return e}function Ot(e,t){return e.pipeThrough(t)}const Mt="data",Kt="deflate",Vt="inflate";class Pt extends v{constructor(e,t){super({});const r=this,{codecType:i}=e;let s;i.startsWith(Kt)?s=It:i.startsWith(Vt)&&(s=Ut);let a=0;const o=new s(e,t),l=super.readable,c=new v({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;n.assign(r,{signature:e,size:a})}});n.defineProperty(r,"readable",{get:()=>l.pipeThrough(o).pipeThrough(c)})}}const Bt=typeof R!=ze;class Ht{constructor(e,{readable:t,writable:r},{options:i,config:s,streamOptions:a,useWebWorkers:o,transferStreams:l,scripts:c},f){const{signal:u}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Yt(t,a,s),{signal:u}),writable:r,options:n.assign({},i),scripts:c,transferStreams:l,terminate(){const{worker:t,busy:n}=e;t&&!n&&(t.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,f(e)}}),(o&&Bt?jt:Xt)(e,s)}}class Yt extends v{constructor(e,{onstart:t,onprogress:n,size:r,onend:i},{chunkSize:s}){let a=0;super({start(){t&&Zt(t,r)},async transform(e,t){a+=e.length,n&&await Zt(n,a,r),t.enqueue(e)},flush(){e.size=a,i&&Zt(i,a)}},{highWaterMark:1,size:()=>s})}}async function Zt(e,...t){try{await e(...t)}catch(e){}}function Xt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},i)=>{const s=new Pt(e,i);try{await t.pipeThrough(s).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:e,size:i}=s;return{signature:e,size:i}}finally{r()}})(e,t)}}function jt(e,{baseURL:t,chunkSize:r}){return e.interface||n.assign(e,{worker:$t(e.scripts[0],t,e),interface:{run:()=>(async(e,t)=>{let r,i;const s=new m(((e,t)=>{r=e,i=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:i,result:s});const{readable:a,options:o,scripts:l}=e,{writable:c,closed:f}=(e=>{const t=e.getWriter();let n;const r=new m((e=>n=e));return{writable:new C({async write(e){await t.ready,await t.write(e)},close(){t.releaseLock(),n()},abort:e=>t.abort(e)}),closed:r}})(e.writable);Qt({type:"start",scripts:l.slice(1),options:o,config:t,readable:a,writable:c},e)||n.assign(e,{reader:a.getReader(),writer:c.getWriter()});const u=await s;try{await c.getWriter().close()}catch(e){}return await f,u})(e,{chunkSize:r})}}),e.interface}let Gt=!0,Jt=!0;function $t(e,t,r){const i={type:"module"};let s,a;typeof e==Ce&&(e=e());try{s=new u(e,t)}catch(t){s=e}if(Gt)try{a=new R(s)}catch(e){Gt=!1,a=new R(s,i)}else a=new R(s,i);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:i,messageId:s,result:a,error:o}=e,{reader:l,writer:c,resolveResult:f,rejectResult:u,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:r,name:i}=o,s=new d(e);n.assign(s,{stack:t,code:r,name:i}),p(s)}else{if("pull"==r){const{value:e,done:n}=await l.read();Qt({type:Mt,value:e,done:n,messageId:s},t)}r==Mt&&(await c.ready,await c.write(new w(i)),Qt({type:"ack",messageId:s},t)),"close"==r&&p(null,a)}}catch(o){p(o)}function p(e,t){e?u(e):f(t),c&&c.releaseLock(),h()}})(e,r))),a}function Qt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:i}){try{let{value:n,readable:r,writable:s}=e;const a=[];if(n&&(e.value=n.buffer,a.push(e.value)),i&&Jt?(r&&a.push(r),s&&a.push(s)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch(n){Jt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let en=[];const tn=[];let nn=0;async function rn(e,t){const{options:n,config:r}=t,{transferStreams:s,useWebWorkers:a,useCompressionStream:o,codecType:l,compressed:c,signed:f,encrypted:u}=n,{workerScripts:d,maxWorkers:w,terminateWorkerTimeout:h}=r;t.transferStreams=s||s===ve;const p=!(c||f||u||t.transferStreams);let _;t.useWebWorkers=!p&&(a||a===ve&&r.useWebWorkers),t.scripts=t.useWebWorkers&&d?d[l]:[],n.useCompressionStream=o||o===ve&&r.useCompressionStream;const g=en.find((e=>!e.busy));if(g)sn(g),_=new Ht(g,e,t,b);else if(en.lengthtn.push({resolve:n,stream:e,workerOptions:t})));return _.run();function b(e){if(tn.length){const[{resolve:t,stream:n,workerOptions:r}]=tn.splice(0,1);t(new Ht(e,n,r,b))}else e.worker?(sn(e),i.isFinite(h)&&h>=0&&(e.terminateTimeout=setTimeout((()=>{en=en.filter((t=>t!=e)),e.terminate()}),h))):en=en.filter((t=>t!=e))}}function sn(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const an="HTTP error ",on="HTTP Range not supported",ln="Writer iterator completed too soon",cn="GET",fn="bytes",un=65536,dn="writable";class wn{constructor(){this.size=0}init(){this.initialized=!0}}class hn extends wn{get readable(){const e=this,{chunkSize:t=un}=e,n=new z({start(){this.chunkOffset=0},async pull(r){const{offset:i=0,size:s,diskNumberStart:o}=n,{chunkOffset:l}=this;r.enqueue(await qn(e,i+l,a.min(t,s-l),o)),l+t>s?r.close():this.chunkOffset+=t}});return n}}class pn extends wn{constructor(){super();const e=this,t=new C({write:t=>e.writeUint8Array(t)});n.defineProperty(e,dn,{get:()=>t})}writeUint8Array(){}}class _n extends hn{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,i=e||rt&&(s=s.slice(e,r)),new w(s)}}class gn extends wn{constructor(e){super();const t=new v,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,dn,{get:()=>t.writable}),this.blob=new f(t.readable,{headers:r}).blob()}getData(){return this.blob}}class mn extends hn{constructor(e,t){super(),yn(this,e,t)}async init(){await xn(this,Wn,zn),super.init()}readUint8Array(e,t){return kn(this,e,t,Wn,zn)}}class bn extends hn{constructor(e,t){super(),yn(this,e,t)}async init(){await xn(this,Rn,Cn),super.init()}readUint8Array(e,t){return kn(this,e,t,Rn,Cn)}}function yn(e,t,r){const{preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a})}async function xn(e,t,n){const{url:r,useRangeHeader:s,forceRangeRequests:a}=e;if((e=>{const{baseURL:t}=Ee(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(r)&&(s||a)){const{headers:r}=await t(cn,e,Sn(e));if(!a&&r.get("Accept-Ranges")!=fn)throw new d(on);{let s;const a=r.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(s=i(t))}}s===ve?await An(e,t,n):e.size=s}}else await An(e,t,n)}async function kn(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,options:o}=e;if(s||a){const i=await r(cn,e,Sn(e,t,n));if(206!=i.status)throw new d(on);return new w(await i.arrayBuffer())}{const{data:r}=e;return r||await i(e,o),new w(e.data.subarray(t,t+n))}}function Sn(e,t=0,r=1){return n.assign({},vn(e),{Range:fn+"="+t+"-"+(t+r-1)})}function vn({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function zn(e){await Dn(e,Wn)}async function Cn(e){await Dn(e,Rn)}async function Dn(e,t){const n=await t(cn,e,vn(e));e.data=new w(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function An(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,vn(e))).headers.get("Content-Length");r?e.size=i(r):await n(e,e.options)}}async function Wn(e,{options:t,url:r},i){const s=await fetch(r,n.assign({},t,{method:e,headers:i}));if(400>s.status)return s;throw 416==s.status?new d(on):new d(an+(s.statusText||s.status))}function Rn(e,{url:t},r){return new m(((i,s)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),i({status:a.status,arrayBuffer:()=>a.response,headers:new l(e)})}else s(416==a.status?new d(on):new d(an+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>s(e.detail?e.detail.error:new d("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class En extends hn{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new bn(e,t):new mn(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Fn extends hn{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await m.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:i}=this;let s,o=n;-1==o&&(o=i.length-1);let l=e;for(;l>=i[o].size;)l-=i[o].size,o++;const c=i[o],f=c.size;if(l+t>f){const i=f-l;s=new w(t),s.set(await qn(c,l,i)),s.set(await r.readUint8Array(e+i,t-i,n),i)}else s=await qn(c,l,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),s}}class Tn extends wn{constructor(e,t=4294967295){super();const r=this;let i,s,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new C({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function In(e,t){e.init&&!e.initialized&&await e.init(t)}function Un(e){return t.isArray(e)&&(e=new Fn(e)),e instanceof z&&(e={readable:e}),e}function Ln(e){e.writable===ve&&typeof e.next==Ce&&(e=new Tn(e)),e instanceof C&&(e={writable:e});const{writable:t}=e;return t.size===ve&&(t.size=0),e instanceof Tn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function qn(e,t,n,r){return e.readUint8Array(t,n,r)}const Nn=Fn,On=Tn,Mn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Kn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const ar="File format is not recognized",or="End of central directory not found",lr="End of Zip64 central directory not found",cr="End of Zip64 central directory locator not found",fr="Central directory header not found",ur="Local file header not found",dr="Zip64 extra field not found",wr="File contains encrypted entry",hr="Encryption method not supported",pr="Compression method not supported",_r="Split zip file",gr="utf-8",mr="cp437",br=[[Yn,de],[Zn,de],[Xn,de],[jn,we]],yr={[we]:{getValue:Rr,bytes:4},[de]:{getValue:Er,bytes:8}};class xr{constructor(e,t,r){n.assign(this,{reader:e,config:t,options:r})}async getData(e,t,r={}){const i=this,{reader:s,offset:a,diskNumberStart:o,extraFieldAES:l,compressionMethod:c,config:f,bitFlag:u,signature:h,rawLastModDate:p,uncompressedSize:_,compressedSize:g}=i,m=i.localDirectory={},b=Fr(await qn(s,a,30,o));let y=zr(i,r,"password");if(y=y&&y.length&&y,l&&99!=l.originalCompressionMethod)throw new d(pr);if(0!=c&&8!=c)throw new d(pr);if(Rr(b,0)!=he)throw new d(ur);kr(m,b,4),m.rawExtraField=m.extraFieldLength?await qn(s,a+30+m.filenameLength,m.extraFieldLength,o):new w,await Sr(i,m,b,4),n.assign(t,{lastAccessDate:m.lastAccessDate,creationDate:m.creationDate});const x=i.encrypted&&m.encrypted,k=x&&!l;if(x){if(!k&&l.strength===ve)throw new d(hr);if(!y)throw new d(wr)}const S=a+30+m.filenameLength+m.extraFieldLength,v=g,z=s.readable;n.assign(z,{diskNumberStart:o,offset:S,size:v});const D=zr(i,r,"signal"),A=zr(i,r,"checkPasswordOnly");A&&(e=new C),e=Ln(e),await In(e,_);const{writable:W}=e,{onstart:R,onprogress:E,onend:F}=r,T={options:{codecType:Vt,password:y,zipCrypto:k,encryptionStrength:l&&l.strength,signed:zr(i,r,"checkSignature"),passwordVerification:k&&(u.dataDescriptor?p>>>8&255:h>>>24&255),signature:h,compressed:0!=c,encrypted:x,useWebWorkers:zr(i,r,"useWebWorkers"),useCompressionStream:zr(i,r,"useCompressionStream"),transferStreams:zr(i,r,"transferStreams"),checkPasswordOnly:A},config:f,streamOptions:{signal:D,size:v,onstart:R,onprogress:E,onend:F}};let I=0;try{({outputSize:I}=await rn({readable:z,writable:W},T))}catch(e){if(!A||e.message!=Xe)throw e}finally{const e=zr(i,r,"preventClose");W.size+=I,e||W.locked||await W.getWriter().close()}return A?void 0:e.getData?e.getData():W}}function kr(e,t,r){const i=e.rawBitFlag=Wr(t,r+2),s=1==(1&i),a=Rr(t,r+6);n.assign(e,{encrypted:s,version:Wr(t,r),bitFlag:{level:(6&i)>>1,dataDescriptor:8==(8&i),languageEncodingFlag:(i&ye)==ye},rawLastModDate:a,lastModDate:Cr(a),filenameLength:Wr(t,r+22),extraFieldLength:Wr(t,r+24)})}async function Sr(e,t,r,i){const{rawExtraField:s}=t,a=t.extraField=new l,c=Fr(new w(s));let f=0;try{for(;f{t.zip64=!0;const n=Fr(e.data),r=br.filter((([e,n])=>t[e]==n));for(let i=0,s=0;i{const i=Fr(e.data),s=Ar(i,4);n.assign(e,{vendorVersion:Ar(i,0),vendorId:Ar(i,2),strength:s,originalCompressionMethod:r,compressionMethod:Wr(i,5)}),t.compressionMethod=e.compressionMethod})(g,t,u),t.extraFieldAES=g):t.compressionMethod=u;const m=a.get(10);m&&(((e,t)=>{const r=Fr(e.data);let i,s=4;try{for(;s{const n=Fr(e.data),r=Ar(n,0),i=[],s=[];1==(1&r)&&(i.push(Gn),s.push(Jn)),2==(2&r)&&(i.push($n),s.push("rawLastAccessDate")),4==(4&r)&&(i.push(Qn),s.push("rawCreationDate"));let a=1;i.forEach(((r,i)=>{if(e.data.length>=a+4){const l=Rr(n,a);t[r]=e[r]=new o(1e3*l);const c=s[i];e[c]=l}a+=4}))})(b,t),t.extraFieldExtendedTimestamp=b)}async function vr(e,t,r,i,s){const a=Fr(e.data),o=new qe;o.append(s[r]);const l=Fr(new w(4));l.setUint32(0,o.get(),!0);const c=Rr(a,1);n.assign(e,{version:Ar(a,0),[t]:Kn(e.data.subarray(5)),valid:!s.bitFlag.languageEncodingFlag&&c==Rr(l,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function zr(e,t,n){return t[n]===ve?e.options[n]:t[n]}function Cr(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Dr(e){return new o(i(e/s(1e4)-s(116444736e5)))}function Ar(e,t){return e.getUint8(t)}function Wr(e,t){return e.getUint16(t,!0)}function Rr(e,t){return e.getUint32(t,!0)}function Er(e,t){return i(e.getBigUint64(t,!0))}function Fr(e){return new _(e.buffer)}const Tr="File already exists",Ir="Zip file comment exceeds 64KB",Ur="File entry comment exceeds 64KB",Lr="File entry name exceeds 64KB",qr="Version exceeds 65535",Nr="The strength must equal 1, 2, or 3",Or="Extra field type exceeds 65535",Mr="Extra field data exceeds 64KB",Kr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Vr=new w([7,0,2,0,65,69,3,0,0]);let Pr=0;const Br=[];async function Hr(e,t){const n=e.getWriter();await n.ready,e.size+=ei(t),await n.write(t),n.releaseLock()}function Yr(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function Zr(e,t,n,r){const i=t[n]===ve?e.options[n]:t[n];return i===ve?r:i}function Xr(e,t,n){e.setUint8(t,n)}function jr(e,t,n){e.setUint16(t,n,!0)}function Gr(e,t,n){e.setUint32(t,n,!0)}function Jr(e,t,n){e.setBigUint64(t,n,!0)}function $r(e,t,n){e.set(t,n)}function Qr(e){return new _(e.buffer)}function ei(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}let ti;try{ti=void 0===x&&"undefined"==typeof location?new(require("url").URL)("file:"+__filename).href:void 0===x?location.href:x.currentScript&&x.currentScript.src||new u("zip-full.min.js",x.baseURI).href}catch(e){}(e=>{const t=()=>u.createObjectURL(new g(['const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self;class k{constructor(e){return class extends p{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)}})}}}}const v=[];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;v[e]=t}class S{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^v[255&(t^e[n])];this.t=t}get(){return~this.t}}class z extends p{constructor(){let e;const t=new S;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const C={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=C.i(n);return 32===r?e.concat(t):C.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+C.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=C.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=C.i(s);return r.push(C.h(t+i&31,t+i>32?n:r.pop(),1)),r}},x={p:{m(e){const t=C.l(e)/8,n=new i(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},g(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}D(){const e=this;let t=e.C;const n=e.S;t=C.concat(t,[C.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e._/4294967296)),t.push(0|e._);t.length;)e.I(t.splice(0,16));return e.reset(),n}V(e,t,n,r){return 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}P(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.P(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.P(5,o)+n.V(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.P(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},A={getRandomValues(e){const t=new c(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)*(r.random()>.5?1:-1))};for(let s,i=0;inew I.R(x.p.g(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=C;for(t=x.p.g(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).D());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.K[0].update(r[0]),t.K[1].update(r[1]),t.U=new n(t.K[0])}reset(){const e=this;e.U=new e.M(e.K[0]),e.N=!1}update(e){this.N=!0,this.U.update(e)}digest(){const e=this,t=e.U.D(),n=new e.M(e.K[1]).update(t).D();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},D=void 0!==h&&"function"==typeof h.getRandomValues,V="Invalid password",P="Invalid signature",R="zipjs-abort-check-password";function B(e){return D?h.getRandomValues(e):A.getRandomValues(e)}const E=16,M={name:"PBKDF2"},K=t.assign({hash:{name:"HMAC"}},M),U=t.assign({iterations:1e3,hash:{name:"SHA-1"}},M),N=["deriveBits"],O=[8,12,16],T=[16,24,32],W=10,j=[0,0,0,0],H="undefined",L="function",F=typeof h!=H,q=F&&h.subtle,G=F&&typeof q!=H,J=x.p,Q=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||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.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},X=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(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}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=C.l(t);for(let s=0;r>s;s+=4){this.G(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 C.u(t,s)}},Y=I.R;let Z=F&&G&&typeof q.importKey==L,$=F&&G&&typeof q.deriveBits==L;class ee extends p{constructor({password:e,signed:n,encryptionStrength:r,checkPasswordOnly:o}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,signed:n,X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:c,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await re(e,t,n,ie(r,0,O[t])),o=ie(r,O[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(V)})(n,c,r,ie(e,0,O[c]+2)),e=ie(e,O[c]+2),o?t.error(new s(R)):f()):await a;const l=new i(e.length-W-(e.length-W)%E);t.enqueue(ne(n,e,l,0,W,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;await c;const f=ie(o,0,o.length-W),a=ie(o,o.length-W);let l=new i;if(f.length){const e=ce(J,f);r.update(e);const t=n.update(e);l=oe(J,t)}if(t){const e=ie(oe(J,r.digest()),0,W);for(let t=0;W>t;t++)if(e[t]!=a[t])throw new s(P)}e.enqueue(l)}})}}class te extends p{constructor({password:e,encryptionStrength:n}){let r;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,X:n-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=B(new i(O[t]));return se(r,await re(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%E);a.set(f,0),t.enqueue(ne(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:s,ready:o}=this;await o;let c=new i;if(s.length){const e=t.update(ce(J,s));n.update(e),c=oe(J,e)}r.signature=oe(J,n.digest()).slice(0,W),e.enqueue(se(c,r.signature))}}),r=this}}function ne(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=se(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%E)),u=0;l-E>=u;u+=E){const e=ce(J,ie(t,u,u+E));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(oe(J,s),u+r)}return e.pending=ie(t,u),n}async function re(n,r,s,o){n.password=null;const c=(e=>{if(void 0===w){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n{if(!Z)return I.importKey(t);try{return await q.importKey("raw",t,n,!1,s)}catch(e){return Z=!1,I.importKey(t)}})(0,c,K,0,N),a=await(async(e,t,n)=>{if(!$)return I.B(t,e.salt,U.iterations,n);try{return await q.deriveBits(e,t,n)}catch(r){return $=!1,I.B(t,e.salt,U.iterations,n)}})(t.assign({salt:o},U),f,8*(2*T[r]+2)),l=new i(a),u=ce(J,ie(l,0,T[r])),h=ce(J,ie(l,T[r],2*T[r])),d=ie(l,2*T[r]);return t.assign(n,{keys:{key:u,$:h,passwordVerification:d},Y:new X(new Q(u),e.from(j)),Z:new Y(h)}),d}function se(e,t){let n=e;return e.length+t.length&&(n=new i(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function ie(e,t,n){return e.subarray(t,n)}function oe(e,t){return e.m(t)}function ce(e,t){return e.g(t)}class fe extends p{constructor({password:e,passwordVerification:n,checkPasswordOnly:r}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;if(n.password){const t=le(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new s(V);e=e.subarray(12)}r?t.error(new s(R)):t.enqueue(le(n,e))}})}}class ae extends p{constructor({password:e,passwordVerification:n}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=B(new i(12));t[11]=n.passwordVerification,r=new i(e.length+t.length),r.set(ue(n,t),0),s=12}else r=new i(e.length),s=0;r.set(ue(n,e),s),t.enqueue(r)}})}}function le(e,t){const n=new i(t.length);for(let r=0;r>>24]),i=~e.te.get(),e.keys=[n,s,i]}function de(e){const t=2|e.keys[2];return pe(r.imul(t,1^t)>>>8)}function pe(e){return 255&e}function ye(e){return 4294967295&e}const me="deflate-raw";class be extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=ke(super.readable);i&&!c||!f||(w=new z,d=ze(d,w)),s&&(d=Se(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=ze(d,new ae(e)):(h=new te(e),d=ze(d,h))),ve(u,d,(async()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ge extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=ke(super.readable);o&&(i?d=ze(d,new fe(e)):(h=new ee(e),d=ze(d,h))),a&&(d=Se(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new z,d=ze(d,w)),ve(this,d,(async()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(P)}}))}}function ke(e){return ze(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ve(e,n,r){n=ze(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Se(e,t,n,r,s){try{e=ze(e,new(t&&r?r:s)(me,n))}catch(r){if(!t)throw r;e=ze(e,new s(me,n))}return e}function ze(e,t){return e.pipeThrough(t)}const Ce="data";class xe extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=be:s.startsWith("inflate")&&(i=ge);let o=0;const c=new i(e,n),f=super.readable,a=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;t.assign(r,{signature:e,size:o})}});t.defineProperty(r,"readable",{get:()=>f.pipeThrough(c).pipeThrough(a)})}}const _e=new a,Ae=new a;let Ie=0;async function De(e){try{const{options:t,scripts:r,config:s}=e;r&&r.length&&importScripts.apply(void 0,r),self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new k(self.Deflate)),self.Inflate&&(s.DecompressionStream=new k(self.Inflate));const i={highWaterMark:1,size:()=>s.chunkSize},o=e.readable||new y({async pull(e){const t=new u((e=>_e.set(Ie,e)));Ve({type:"pull",messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ae.set(Ie,t),Ve({type:Ce,value:e,messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new xe(t,s);await o.pipeThrough(f).pipeTo(c,{preventClose:!0,preventAbort:!0});try{await c.getWriter().close()}catch(e){}const{signature:a,size:l}=f;Ve({type:"close",result:{signature:a,size:l}})}catch(e){Pe(e)}}function Ve(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Pe(e){const{message:t,stack:n,code:r,name:s}=e;d({error:{message:t,stack:n,code:r,name:s}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&De(e),t==Ce){const e=_e.get(n);_e.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ae.get(n);Ae.delete(n),e()}}catch(e){Pe(e)}}));const Re=-2;function Be(t){return Ee(t.map((([t,n])=>new e(t).fill(n,0,t))))}function Ee(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?Ee(n):n)),[])}const Me=[0,1,2,3].concat(...Be([[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 Ke(){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.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Ue(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}Ke.ge=[0,1,2,3,4,5,6,7].concat(...Be([[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]])),Ke.ke=[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],Ke.ve=[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],Ke.Se=e=>256>e?Me[e]:Me[256+(e>>>7)],Ke.ze=[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],Ke.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Ke.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Ke._e=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Ne=Be([[144,8],[112,9],[24,7],[8,8]]);Ue.Ae=Ee([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,Ne[t]])));const Oe=Be([[30,5]]);function Te(e,t,n,r,s){const i=this;i.Ie=e,i.De=t,i.Ve=n,i.Pe=r,i.Re=s}Ue.Be=Ee([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,Oe[t]]))),Ue.Ee=new Ue(Ue.Ae,Ke.ze,257,286,15),Ue.Me=new Ue(Ue.Be,Ke.Ce,0,30,15),Ue.Ke=new Ue(null,Ke.xe,0,19,7);const We=[new Te(0,0,0,0,0),new Te(4,4,8,4,1),new Te(4,5,16,8,1),new Te(4,6,32,32,1),new Te(4,4,16,16,2),new Te(8,16,32,32,2),new Te(8,16,128,128,2),new Te(8,32,128,256,2),new Te(32,128,258,1024,2),new Te(32,258,258,4096,2)],je=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],He=113,Le=666,Fe=262;function qe(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function Ge(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,_,A,I,D,V,P,R,B,E,M,K;const U=new Ke,N=new Ke,O=new Ke;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)K[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?K[2*n]+=i:0!==n?(n!=r&&K[2*n]++,K[32]++):i>10?K[36]++:K[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ue[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,K)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,K),o--),Y(16,K),X(o-3,2)):o>10?(Y(18,K),X(o-11,7)):(Y(17,K),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(Ke.ge[n]+256+1)]++,M[2*Ke.Se(t)]++),0==(8191&W)&&V>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+Ke.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ue.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;V>0?(U.ne(e),N.ne(e),o=(()=>{let t;for(G(E,U.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===K[2*Ke._e[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Ue.Ae,Ue.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(K[2*Ke._e[r]+1],3);Z(E,e-1),Z(M,t-1)})(U.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-_-C,0===s&&0===C&&0===_)s=f;else if(-1==s)s--;else if(C>=f+f-Fe){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+_,s),_+=e,3>_||(p=255&u[C],p=(p<_&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=A;const o=C>f-Fe?C-(f-Fe):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>A||(r>>=2),c>_&&(c=_);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>_?_:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],K=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Re:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=He,c=0,U.re=E,U.ie=Ue.Ee,N.re=M,N.ie=Ue.Me,O.re=K,O.ie=Ue.Ke,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe,C=0,k=0,_=0,v=A=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=He&&n!=Le?Re:(e.Oe=null,e.Ne=null,e.Ue=null,d=null,h=null,u=null,e.Fe=null,n==He?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Re:(We[V].Re!=We[t].Re&&0!==e.qe&&(r=e.Ye(1)),V!=t&&(V=t,D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe),P=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Re;if(3>i)return 0;for(i>f-Fe&&(i=f-Fe,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Re;if(!r.$e||!r.et&&0!==r.We||n==Le&&4!=i)return r.Le=je[4],Re;if(0===r.tt)return r.Le=je[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(V-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=He,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=je[7],-5;if(n==Le&&0!==t.We)return r.Le=je[7],-5;if(0!==t.We||0!==_||0!=i&&n!=Le){switch(R=-1,We[V].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=_){if(ie(),0===_&&0==e)return 0;if(0===_)break}if(C+=_,_=0,n=k+r,(0===C||C>=n)&&(_=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Fe&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<f-Fe||2!=P&&(v=oe(r)),3>v)n=ee(0,255&u[C]),_--,C++;else if(n=ee(C-x,v-3),_-=v,v>D||3>_)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<A&&f-Fe>=(C-s&65535)&&(2!=P&&(v=oe(s)),5>=v&&(1==P||3==v&&C-x>4096)&&(v=2)),3>A||v>A)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,_--,0===t.tt)return 0}else z=1,C++,_--;else{r=C+_-3,n=ee(C-1-S,A-3),_-=A-1,A-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Ue.Ae),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function Je(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function Qe(e){const t=new Je,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}Je.prototype={He(e,t){const n=this;return n.Fe=new Ge,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Re},Qe(){const e=this;if(!e.Fe)return Re;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Re},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Re},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ue.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const Xe=-2,Ye=-3,Ze=-5,$e=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],et=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],tt=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],nt=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],rt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],st=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],it=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ot(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,_,A,I,D;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return Ye;if(0>(I-=n[g]))return Ye;for(n[g]+=I,i[1]=k=0,C=1,A=2;0!=--g;)i[A]=k+=n[C],A++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>_+S;){if(b++,_+=S,D=m-_,D=D>S?S:D,(y=1<<(k=v-_))>p+1&&(y-=p+1,A=v,D>k))for(;++kn[++A];)y-=n[A];if(D=1<1440)return Ye;s[b]=x=h[0],h[0]+=D,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>_-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-_,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>_;D>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<<_)-1;(g&z)!=i[b];)b--,_-=S,z=(1<<_)-1}return 0!==I&&1!=m?Ze:0}function c(o){let c;for(e||(e=[],t=[],n=new f(16),r=[],s=new f(15),i=new f(16)),t.lengthc;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==Ye?f.Le="oversubscribed dynamic bit lengths tree":a!=Ze&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=Ye),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,nt,rt,a,i,u,e,t),0!=h||0===i[0]?(h==Ye?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=Ye),h):(c(288),h=o(s,n,r,0,st,it,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==Ye?w.Le="oversubscribed distance tree":h==Ze?(w.Le="incomplete distance tree",h=Ye):-4!=h&&(w.Le="empty distance tree with lengths",h=Ye),h):0)}}function ct(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15,k=a[z+2]+(w&$e[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(0!=(64&u))return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye;f+=a[z+2],f+=w&$e[u],z=3*(l+f),u=a[z]}break}if(0!=(64&u))return 0!=(32&u)?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye);if(f+=a[z+2],f+=w&$e[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,_=0,A=0;for(A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,m=p(u,w,r,h,s,d,e,y),A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>>=n[g+1],_-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(0!=(16&k)){a=15&k,i=n[g+2],t=2;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}if(0!=(32&k)){t=7;break}return t=9,y.Le="invalid literal/length code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 2:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}i+=x&$e[b],x>>=b,_-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>=n[g+1],_-=n[g+1],k=n[g],0!=(16&k)){a=15&k,l=n[g+2],t=4;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 4:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}l+=x&$e[b],x>>=b,_-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(_-=8,v++,A--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ot.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=et,r[0]=tt,0);const ft=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function at(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new ct;let h=0,d=new f(4320);const p=new ot;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ot.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[ft[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==Ye&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&$e[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,_=[],A=[],I=[],D=[],_[0]=9,A[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,_,A,I,D,d,e),0!=i)return i==Ye&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(_[0],A[0],d,I[0],d,D[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const lt=13,ut=[0,0,255,255];function wt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):Xe}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),Xe):(e.zt=r,n.gt.kt=new at(n,1<{let n,r;if(!e||!e.gt||!e.et)return Xe;const s=e.gt;for(t=4==t?Ze:0,n=Ze;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=lt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=lt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=lt,e.Le="incorrect header check",s.marker=5;break}if(0==(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=lt,e.Le="need dictionary",s.marker=0,Xe;case 7:if(n=s.kt.ut(e,n),n==Ye){s.mode=lt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case lt:return Ye;default:return Xe}},e.At=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return Xe;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return Xe;const c=e.gt;if(c.mode!=lt&&(c.mode=lt,c.marker=0),0===(n=e.We))return Ze;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==ut[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?Ye:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Dt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():Xe}function ht(){}function dt(e){const t=new ht,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t._t(0),c&&a===Ze){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}ht.prototype={xt(e){const t=this;return t.gt=new wt,e||(e=15),t.gt.xt(t,e)},_t(e){const t=this;return t.gt?t.gt._t(t,e):Xe},Ct(){const e=this;if(!e.gt)return Xe;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):Xe},At(e,t){const n=this;return n.gt?n.gt.At(n,e,t):Xe},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=Qe,self.Inflate=dt};\n'],{type:"text/javascript"}));e({workerScripts:{inflate:[t],deflate:[t]}})})(Te),Te({Deflate:function(e){const t=new Z,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(a.floor(r/16383)+1);var r;const i=new w(n);let s=e?e.level:-1;void 0===s&&(s=-1),t.deflateInit(s),t.next_out=i,this.append=(e,r)=>{let s,a,o=0,l=0,c=0;const f=[];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,s=t.deflate(0),0!=s)throw new d("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?f.push(new w(i)):f.push(i.subarray(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 f.length>1?(a=new w(c),f.forEach((e=>{a.set(e,l),l+=e.length}))):a=f[0]?new w(f[0]):new w,a}},this.flush=()=>{let e,r,s=0,a=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw new d("deflating: "+t.msg);n-t.avail_out>0&&o.push(i.slice(0,t.next_out_index)),a+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new w(a),o.forEach((e=>{r.set(e,s),s+=e.length})),r}},Inflate:function(e){const t=new ue,n=e&&e.chunkSize?a.floor(2*e.chunkSize):131072,r=new w(n);let i=!1;t.inflateInit(),t.next_out=r,this.append=(e,s)=>{const a=[];let o,l,c=0,f=0,u=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||i||(t.next_in_index=0,i=!0),o=t.inflate(0),i&&o===G){if(0!==t.avail_in)throw new d("inflating: bad input")}else if(0!==o&&1!==o)throw new d("inflating: "+t.msg);if((i||1===o)&&t.avail_in===e.length)throw new d("inflating: bad input");t.next_out_index&&(t.next_out_index===n?a.push(new w(r)):a.push(r.subarray(0,t.next_out_index))),u+=t.next_out_index,s&&t.next_in_index>0&&t.next_in_index!=c&&(s(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return a.length>1?(l=new w(u),a.forEach((e=>{l.set(e,f),f+=e.length}))):l=a[0]?new w(a[0]):new w,l}},this.flush=()=>{t.inflateEnd()}},baseURL:ti}),e.BlobReader=_n,e.BlobWriter=gn,e.Data64URIReader=class extends hn{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:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,i=new w(t),s=4*a.floor(e/3),o=atob(r.substring(s+n,4*a.ceil((e+t)/3)+n)),l=e-3*a.floor(s/4);for(let e=l;l+t>e;e++)i[e-l]=o.charCodeAt(e);return i}},e.Data64URIWriter=class extends pn{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,i=t.pending;const s=t.pending.length;for(t.pending="",n=0;n<3*a.floor((s+e.length)/3)-s;n++)i+=r.fromCharCode(e[n]);for(;n2?t.data+=S(i):t.pending=i}getData(){return this.data+S(this.pending)}},e.ERR_BAD_FORMAT=ar,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=fr,e.ERR_DUPLICATED_NAME=Tr,e.ERR_ENCRYPTED=wr,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=cr,e.ERR_EOCDR_NOT_FOUND=or,e.ERR_EOCDR_ZIP64_NOT_FOUND=lr,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=dr,e.ERR_HTTP_RANGE=on,e.ERR_INVALID_COMMENT=Ir,e.ERR_INVALID_ENCRYPTION_STRENGTH=Nr,e.ERR_INVALID_ENTRY_COMMENT=Ur,e.ERR_INVALID_ENTRY_NAME=Lr,e.ERR_INVALID_EXTRAFIELD_DATA=Mr,e.ERR_INVALID_EXTRAFIELD_TYPE=Or,e.ERR_INVALID_PASSWORD=Ye,e.ERR_INVALID_SIGNATURE=Ze,e.ERR_INVALID_VERSION=qr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=ln,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=ur,e.ERR_SPLIT_ZIP_FILE=_r,e.ERR_UNSUPPORTED_COMPRESSION=pr,e.ERR_UNSUPPORTED_ENCRYPTION=hr,e.ERR_UNSUPPORTED_FORMAT=Kr,e.HttpRangeReader=class extends En{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=En,e.Reader=hn,e.SplitDataReader=Fn,e.SplitDataWriter=Tn,e.SplitZipReader=Nn,e.SplitZipWriter=On,e.TextReader=class extends _n{constructor(e){super(new g([e],{type:"text/plain"}))}},e.TextWriter=class extends gn{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new m(((i,s)=>{n.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>s(t.error)}),t.readAsText(r,e)}))}}},e.Uint8ArrayReader=class extends hn{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 pn{init(e=0){n.assign(this,{offset:0,array:new w(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new w(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=pn,e.ZipReader=class{constructor(e,t={}){n.assign(this,{reader:Un(e),options:t,config:Ee()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:i}=t;if(await In(r),r.size!==ve&&r.readUint8Array||(r=new _n(await new f(r.readable).blob()),await In(r)),22>r.size)throw new d(ar);r.chunkSize=Fe(i);const s=await(async(e,t,n)=>{const r=new w(4);return Fr(r).setUint32(0,101010256,!0),await i(22)||await i(a.min(1048582,n));async function i(t){const i=n-t,s=await qn(e,i,t);for(let e=s.length-22;e>=0;e--)if(s[e]==r[0]&&s[e+1]==r[1]&&s[e+2]==r[2]&&s[e+3]==r[3])return{offset:i+e,buffer:s.slice(e,e+22).buffer}}})(r,0,r.size);if(!s)throw Rr(Fr(await qn(r,0,4)))==pe?new d(_r):new d(or);const o=Fr(s);let l=Rr(o,12),c=Rr(o,16);const u=s.offset,h=Wr(o,20),p=u+22+h;let _=Wr(o,4);const g=r.lastDiskNumber||0;let b=Wr(o,6),y=Wr(o,8),x=0,k=0;if(c==de||l==de||y==we||b==we){const e=Fr(await qn(r,s.offset-20,20));if(Rr(e,0)!=me)throw new d(lr);c=Er(e,8);let t=await qn(r,c,56,-1),n=Fr(t);const i=s.offset-20-56;if(Rr(n,0)!=ge&&c!=i){const e=c;c=i,x=c-e,t=await qn(r,c,56,-1),n=Fr(t)}if(Rr(n,0)!=ge)throw new d(cr);_==we&&(_=Rr(n,16)),b==we&&(b=Rr(n,20)),y==we&&(y=Er(n,32)),l==de&&(l=Er(n,40)),c-=l}if(g!=_)throw new d(_r);if(0>c||c>=r.size)throw new d(ar);let S=0,v=await qn(r,c,l,b),z=Fr(v);if(l){const e=s.offset-l;if(Rr(z,S)!=_e&&c!=e){const t=c;c=e,x=c-t,v=await qn(r,c,l,b),z=Fr(v)}}const C=s.offset-c-(r.lastDiskOffset||0);if(l==C||0>C||(l=C,v=await qn(r,c,l,b),z=Fr(v)),0>c||c>=r.size)throw new d(ar);const D=zr(t,e,"filenameEncoding"),A=zr(t,e,"commentEncoding");for(let s=0;y>s;s++){const o=new xr(r,i,t.options);if(Rr(z,S)!=_e)throw new d(fr);kr(o,z,S+6);const l=!!o.bitFlag.languageEncodingFlag,c=S+46,f=c+o.filenameLength,u=f+o.extraFieldLength,w=Wr(z,S+4),h=0==(0&w),p=v.subarray(c,f),_=Wr(z,S+32),g=u+_,b=v.subarray(u,g),C=l,W=l,R=h&&16==(16&Ar(z,S+38)),E=Rr(z,S+42)+x;n.assign(o,{versionMadeBy:w,msDosCompatible:h,compressedSize:0,uncompressedSize:0,commentLength:_,directory:R,offset:E,diskNumberStart:Wr(z,S+34),internalFileAttribute:Wr(z,S+36),externalFileAttribute:Rr(z,S+38),rawFilename:p,filenameUTF8:C,commentUTF8:W,rawExtraField:v.subarray(f,u)});const[F,T]=await m.all([Kn(p,C?gr:D||mr),Kn(b,W?gr:A||mr)]);n.assign(o,{rawComment:b,filename:F,comment:T,directory:R||F.endsWith(xe)}),k=a.max(E,k),await Sr(o,o,z,S+6);const I=new sr(o);I.getData=(e,t)=>o.getData(e,I,t),S=g;const{onprogress:U}=e;if(U)try{await U(s+1,y,new sr(o))}catch(e){}yield I}const W=zr(t,e,"extractPrependedData"),R=zr(t,e,"extractAppendedData");return W&&(t.prependedData=k>0?await qn(r,0,k):new w),t.comment=h?await qn(r,u+22,h):new w,R&&(t.appendedData=pBr.push(e)));try{if(e=e.trim(),l.filenames.has(e))throw new d(Tr);return l.filenames.add(e),u=(async(e,r,i,l)=>{r=r.trim(),l.directory&&!r.endsWith(xe)?r+=xe:l.directory=r.endsWith(xe);const c=Oe(r);if(ei(c)>we)throw new d(Lr);const f=l.comment||"",u=Oe(f);if(ei(u)>we)throw new d(Ur);const g=Zr(e,l,"version",20);if(g>we)throw new d(qr);const b=Zr(e,l,"versionMadeBy",20);if(b>we)throw new d(qr);const y=Zr(e,l,Gn,new o),x=Zr(e,l,$n),k=Zr(e,l,Qn),S=Zr(e,l,nr,!0),v=Zr(e,l,er,0),z=Zr(e,l,tr,0),C=Zr(e,l,"password"),D=Zr(e,l,"encryptionStrength",3),A=Zr(e,l,"zipCrypto"),W=Zr(e,l,"extendedTimestamp",!0),R=Zr(e,l,"keepOrder",!0),E=Zr(e,l,"level"),F=Zr(e,l,"useWebWorkers"),T=Zr(e,l,"bufferedWrite"),I=Zr(e,l,"dataDescriptorSignature",!1),U=Zr(e,l,"signal"),L=Zr(e,l,"useCompressionStream");let q=Zr(e,l,"dataDescriptor",!0),N=Zr(e,l,rr);if(C!==ve&&D!==ve&&(1>D||D>3))throw new d(Nr);let O=new w;const{extraField:M}=l;if(M){let e=0,t=0;M.forEach((t=>e+=4+ei(t))),O=new w(e),M.forEach(((e,n)=>{if(n>we)throw new d(Or);if(ei(e)>we)throw new d(Mr);$r(O,new h([n]),t),$r(O,new h([ei(e)]),t+2),$r(O,e,t+4),t+=4+ei(e)}))}let K=0,V=0,P=0;const B=!0===N;i&&(i=Un(i),await In(i),i.size===ve?(q=!0,(N||N===ve)&&(N=!0,P=K=de)):(P=i.size,K=(e=>e+5*(a.floor(e/16383)+1))(P)));const{diskOffset:H,diskNumber:Y,maxSize:Z}=e.writer,X=B||P>=de,j=B||K>=de,G=B||e.offset+e.pendingEntriesSize-H>=de,J=Zr(e,l,"supportZip64SplitFile",!0)&&B||Y+a.ceil(e.pendingEntriesSize/Z)>=we;if(G||X||j||J){if(!1===N||!R)throw new d(Kr);N=!0}N=N||!1;const $=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:i,password:s,level:o,zip64:l,zipCrypto:c,dataDescriptor:f,directory:u,rawExtraField:d,encryptionStrength:h,extendedTimestamp:_}=e,g=0!==o&&!u,m=!(!s||!ei(s));let b,y,x,k=e.version;if(m&&!c){b=new w(ei(Vr)+2);const e=Qr(b);jr(e,0,39169),$r(b,Vr,2),Xr(e,8,h)}else b=new w;if(_){x=new w(9+(r?4:0)+(i?4:0));const e=Qr(x);jr(e,0,be),jr(e,2,ei(x)-4),Xr(e,4,1+(r?2:0)+(i?4:0)),Gr(e,5,a.floor(n.getTime()/1e3)),r&&Gr(e,9,a.floor(r.getTime()/1e3)),i&&Gr(e,13,a.floor(i.getTime()/1e3));try{y=new w(36);const e=Qr(y),t=Yr(n);jr(e,0,10),jr(e,2,32),jr(e,8,1),jr(e,10,24),Jr(e,12,t),Jr(e,20,Yr(r)||t),Jr(e,28,Yr(i)||t)}catch(e){y=new w}}else y=x=new w;let S=ye;f&&(S|=8);let v=0;g&&(v=8),l&&(k=k>45?k:45),m&&(S|=1,c||(k=k>51?k:51,v=99,g&&(b[9]=8)));const z=new w(26),C=Qr(z);jr(C,0,k),jr(C,2,S),jr(C,4,v);const D=new p(1),A=Qr(D);let W;W=Se>n?Se:n>ke?ke:n,jr(A,0,(W.getHours()<<6|W.getMinutes())<<5|W.getSeconds()/2),jr(A,2,(W.getFullYear()-1980<<4|W.getMonth()+1)<<5|W.getDate());const R=D[0];Gr(C,6,R),jr(C,22,ei(t));const E=ei(b,x,y,d);jr(C,24,E);const F=new w(30+ei(t)+E);return Gr(Qr(F),0,he),$r(F,z,4),$r(F,t,30),$r(F,b,30+ei(t)),$r(F,x,30+ei(t,b)),$r(F,y,30+ei(t,b,x)),$r(F,d,30+ei(t,b,x,y)),{localHeaderArray:F,headerArray:z,headerView:C,lastModDate:n,rawLastModDate:R,encrypted:m,compressed:g,version:k,compressionMethod:v,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:y,rawExtraFieldAES:b}})(l=n.assign({},l,{rawFilename:c,rawComment:u,version:g,versionMadeBy:b,lastModDate:y,lastAccessDate:x,creationDate:k,rawExtraField:O,zip64:N,zip64UncompressedSize:X,zip64CompressedSize:j,zip64Offset:G,zip64DiskNumberStart:J,password:C,level:E,useWebWorkers:F,encryptionStrength:D,extendedTimestamp:W,zipCrypto:A,bufferedWrite:T,keepOrder:R,dataDescriptor:q,dataDescriptorSignature:I,signal:U,msDosCompatible:S,internalFileAttribute:v,externalFileAttribute:z,useCompressionStream:L})),Q=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let i,s=new w,a=0;return n&&(s=new w(t?r?24:20:r?16:12),i=Qr(s),r&&(a=4,Gr(i,0,134695760))),{dataDescriptorArray:s,dataDescriptorView:i,dataDescriptorOffset:a}})(l);let ee;V=ei($.localHeaderArray,Q.dataDescriptorArray)+K,e.pendingEntriesSize+=V;try{ee=await(async(e,r,i,a,o)=>{const{files:l,writer:c}=e,{keepOrder:f,dataDescriptor:u,signal:h}=o,{headerInfo:p}=a,g=t.from(l.values()).pop();let b,y,x,k,S,v,z={};l.set(r,z);try{let t;f&&(t=g&&g.lock,z.lock=new m((e=>x=e))),o.bufferedWrite||e.writerLocked||e.bufferedWrites&&f||!u?(v=new gn,v.writable.size=0,b=!0,e.bufferedWrites++,await In(c)):(v=c,await C()),await In(v);const{writable:p}=c;let{diskOffset:A}=c;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new w(4);Gr(Qr(t),0,pe),await Hr(p,t),e.offset+=4}b||(await t,await D(p));const{diskNumber:W}=c;if(S=!0,z.diskNumberStart=W,z=await(async(e,t,{diskNumberStart:r,lock:i},a,o,l)=>{const{headerInfo:c,dataDescriptorInfo:f}=a,{localHeaderArray:u,headerArray:d,lastModDate:h,rawLastModDate:p,encrypted:_,compressed:g,version:m,compressionMethod:b,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:x,rawExtraFieldAES:k}=c,{dataDescriptorArray:S}=f,{rawFilename:v,lastAccessDate:z,creationDate:C,password:D,level:A,zip64:W,zip64UncompressedSize:R,zip64CompressedSize:E,zip64Offset:F,zip64DiskNumberStart:T,zipCrypto:I,dataDescriptor:U,directory:L,versionMadeBy:q,rawComment:N,rawExtraField:O,useWebWorkers:M,onstart:K,onprogress:V,onend:P,signal:B,encryptionStrength:H,extendedTimestamp:Y,msDosCompatible:Z,internalFileAttribute:X,externalFileAttribute:j,useCompressionStream:G}=l,J={lock:i,versionMadeBy:q,zip64:W,directory:!!L,filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:N,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:x,rawExtraFieldAES:k,rawExtraField:O,extendedTimestamp:Y,msDosCompatible:Z,internalFileAttribute:X,externalFileAttribute:j,diskNumberStart:r};let $,Q=0,ee=0;const{writable:te}=t;if(e){e.chunkSize=Fe(o),await Hr(te,u);const t=e.readable,n=t.size=e.size,r={options:{codecType:Kt,level:A,password:D,encryptionStrength:H,zipCrypto:_&&I,passwordVerification:_&&I&&p>>8&255,signed:!0,compressed:g,encrypted:_,useWebWorkers:M,useCompressionStream:G,transferStreams:!1},config:o,streamOptions:{signal:B,size:n,onstart:K,onprogress:V,onend:P}},i=await rn({readable:t,writable:te},r);te.size+=i.size,$=i.signature,ee=e.size=t.size,Q=i.size}else await Hr(te,u);let ne;if(W){let e=4;R&&(e+=8),E&&(e+=8),F&&(e+=8),T&&(e+=4),ne=new w(e)}else ne=new w;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:i,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:f}=o,{dataDescriptorView:u,dataDescriptorOffset:d}=l,{zip64:w,zip64UncompressedSize:h,zip64CompressedSize:p,zipCrypto:_,dataDescriptor:g}=t;if(f&&!_||n===ve||(Gr(c,10,n),g&&Gr(u,d,n)),w){const e=Qr(r);jr(e,0,1),jr(e,2,r.length-4);let t=4;h&&(Gr(c,18,de),Jr(e,t,s(a)),t+=8),p&&(Gr(c,14,de),Jr(e,t,s(i))),g&&(Jr(u,d+4,s(i)),Jr(u,d+12,s(a)))}else Gr(c,14,i),Gr(c,18,a),g&&(Gr(u,d+4,i),Gr(u,d+8,a))})({signature:$,rawExtraFieldZip64:ne,compressedSize:Q,uncompressedSize:ee,headerInfo:c,dataDescriptorInfo:f},l),U&&await Hr(te,S),n.assign(J,{uncompressedSize:ee,compressedSize:Q,lastModDate:h,rawLastModDate:p,creationDate:C,lastAccessDate:z,encrypted:_,length:ei(u,S)+Q,compressionMethod:b,version:m,headerArray:d,signature:$,rawExtraFieldZip64:ne,zip64UncompressedSize:R,zip64CompressedSize:E,zip64Offset:F,zip64DiskNumberStart:T}),J})(i,v,z,a,e.config,o),S=!1,l.set(r,z),z.filename=r,b){await v.writable.getWriter().close();let e=await v.getData();await t,await C(),k=!0,u||(e=await(async(e,t,n,{zipCrypto:r})=>{let i;i=await t.slice(0,26).arrayBuffer(),26!=i.byteLength&&(i=i.slice(0,26));const s=new _(i);return e.encrypted&&!r||Gr(s,14,e.signature),e.zip64?(Gr(s,18,de),Gr(s,22,de)):(Gr(s,18,e.compressedSize),Gr(s,22,e.uncompressedSize)),await Hr(n,new w(i)),t.slice(i.byteLength)})(z,e,p,o)),await D(p),z.diskNumberStart=c.diskNumber,A=c.diskOffset,await e.stream().pipeTo(p,{preventClose:!0,preventAbort:!0,signal:h}),p.size+=e.size,k=!1}if(z.offset=e.offset-A,z.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:i}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,f=Qr(n);let u=4;a&&(u+=8),o&&(u+=8),l&&(Jr(f,u,s(r)),u+=8),c&&Gr(f,u,i)})(z,o);else if(z.offset>=de)throw new d(Kr);return e.offset+=z.length,z}catch(t){if(b&&k||!b&&S){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}b?e.offset+=v.writable.size:e.offset=v.writable.size}throw l.delete(r),t}finally{b&&e.bufferedWrites--,x&&x(),y&&y()}async function C(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new m((t=>y=()=>{e.writerLocked=!1,t()})),await t}async function D(e){p.localHeaderArray.length>c.availableSize&&(c.availableSize=0,await Hr(e,new w))}})(e,r,i,{headerInfo:$,dataDescriptorInfo:Q},l)}finally{e.pendingEntriesSize-=V}return n.assign(ee,{name:r,comment:f,extraField:M}),new sr(ee)})(l,e,r,i),c.add(u),await u}catch(t){throw l.filenames.delete(e),t}finally{c.delete(u);const e=Br.shift();e?e():Pr--}}async close(e=new w,n={}){const{pendingAddFileCalls:r,writer:i}=this,{writable:o}=i;for(;r.size;)await m.all(t.from(r));return await(async(e,n,r)=>{const{files:i,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:f}=o,u=0,h=0,p=e.offset-l,_=i.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:r,rawComment:s,rawExtraFieldExtendedTimestamp:a,rawExtraFieldNTFS:o}]of i)h+=46+ei(e,s,t,n,a,o,r);const g=new w(h),m=Qr(g);await In(o);let b=0;for(const[e,n]of t.from(i.values()).entries()){const{offset:t,rawFilename:s,rawExtraFieldZip64:l,rawExtraFieldAES:f,rawExtraFieldNTFS:d,rawExtraField:h,rawComment:p,versionMadeBy:_,headerArray:y,directory:x,zip64:k,zip64UncompressedSize:S,zip64CompressedSize:v,zip64DiskNumberStart:z,zip64Offset:C,msDosCompatible:D,internalFileAttribute:A,externalFileAttribute:W,extendedTimestamp:R,lastModDate:E,diskNumberStart:F,uncompressedSize:T,compressedSize:I}=n;let U;if(R){U=new w(9);const e=Qr(U);jr(e,0,be),jr(e,2,ei(U)-4),Xr(e,4,1),Gr(e,5,a.floor(E.getTime()/1e3))}else U=new w;const L=ei(l,f,U,d,h);Gr(m,u,_e),jr(m,u+4,_);const q=Qr(y);S||Gr(q,18,T),v||Gr(q,14,I),$r(g,y,u+6),jr(m,u+30,L),jr(m,u+32,ei(p)),jr(m,u+34,k&&z?we:F),jr(m,u+36,A),W?Gr(m,u+38,W):x&&D&&Xr(m,u+38,16),Gr(m,u+42,k&&C?de:t),$r(g,s,u+46),$r(g,l,u+46+ei(s)),$r(g,f,u+46+ei(s,l)),$r(g,U,u+46+ei(s,l,f)),$r(g,d,u+46+ei(s,l,f,U)),$r(g,h,u+46+ei(s,l,f,U,d)),$r(g,p,u+46+ei(s)+L);const N=46+ei(s,p)+L;if(u-b>o.availableSize&&(o.availableSize=0,await Hr(c,g.slice(b,u)),b=u),u+=N,r.onprogress)try{await r.onprogress(e+1,i.size,new sr(n))}catch(e){}}await Hr(c,b?g.slice(b):g);let y=o.diskNumber;const{availableSize:x}=o;22>x&&y++;let k=Zr(e,r,"zip64");if(!(de>p&&de>h&&we>_&&we>y)){if(!1===k)throw new d(Kr);k=!0}const S=new w(k?98:22),v=Qr(S);u=0,k&&(Gr(v,0,ge),Jr(v,4,s(44)),jr(v,12,45),jr(v,14,45),Gr(v,16,y),Gr(v,20,f),Jr(v,24,s(_)),Jr(v,32,s(_)),Jr(v,40,s(h)),Jr(v,48,s(p)),Gr(v,56,me),Jr(v,64,s(p)+s(h)),Gr(v,72,y+1),Zr(e,r,"supportZip64SplitFile",!0)&&(y=we,f=we),_=we,p=de,h=de,u+=76),Gr(v,u,101010256),jr(v,u+4,y),jr(v,u+6,f),jr(v,u+8,_),jr(v,u+10,_),Gr(v,u+12,h),Gr(v,u+16,p);const z=ei(n);if(z){if(z>we)throw new d(Ir);jr(v,u+20,z)}await Hr(c,S),z&&await Hr(c,n)})(this,e,n),Zr(this,n,"preventClose")||await o.getWriter().close(),i.getData?i.getData():o}},e.configure=Te,e.getMimeType=()=>"application/octet-stream",e.initReader=Un,e.initShimAsyncCodec=(e,t={},n)=>({Deflate:Ue(e.Deflate,t.deflate,n),Inflate:Ue(e.Inflate,t.inflate,n)}),e.initStream=In,e.initWriter=Ln,e.readUint8Array=qn,e.terminateWorkers=()=>{en.forEach((e=>{sn(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})})); +((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:i,BigInt:s,Math:a,Date:o,Map:l,Set:c,Response:f,URL:u,Error:d,Uint8Array:w,Uint16Array:h,Uint32Array:p,DataView:_,Blob:g,Promise:m,TextEncoder:b,TextDecoder:y,document:x,crypto:k,btoa:S,TransformStream:v,ReadableStream:z,WritableStream:C,CompressionStream:D,DecompressionStream:A,navigator:W,Worker:R}="undefined"!=typeof globalThis?globalThis:this||self,E=-2;function F(e){return T(e.map((([e,n])=>new t(e).fill(n,0,e))))}function T(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?T(n):n)),[])}const I=[0,1,2,3].concat(...F([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function U(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,i=e.stat_desc.static_tree,s=e.stat_desc.elems;let o,l,c,f=-1;for(n.heap_len=0,n.heap_max=573,o=0;s>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=f=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>f?++f:0,r[2*c]=1,n.depth[c]=0,n.opt_len--,i&&(n.static_len-=i[2*c+1]);for(e.max_code=f,o=a.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);c=s;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]=a.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,i=e.stat_desc.extra_bits,s=e.stat_desc.extra_base,a=e.stat_desc.max_length;let o,l,c,f,u,d,w=0;for(f=0;15>=f;f++)t.bl_count[f]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)l=t.heap[o],f=n[2*n[2*l+1]+1]+1,f>a&&(f=a,w++),n[2*l+1]=f,l>e.max_code||(t.bl_count[f]++,u=0,s>l||(u=i[l-s]),d=n[2*l],t.opt_len+=d*(f+u),r&&(t.static_len+=d*(r[2*l+1]+u)));if(0!==w){do{for(f=a-1;0===t.bl_count[f];)f--;t.bl_count[f]--,t.bl_count[f+1]+=2,t.bl_count[a]--,w-=2}while(w>0);for(f=a;0!==f;f--)for(l=t.bl_count[f];0!==l;)c=t.heap[--o],c>e.max_code||(n[2*c+1]!=f&&(t.opt_len+=(f-n[2*c+1])*n[2*c],n[2*c+1]=f),l--)}})(n),((e,n,r)=>{const i=[];let s,a,o,l=0;for(s=1;15>=s;s++)i[s]=l=l+r[s-1]<<1;for(a=0;n>=a;a++)o=e[2*a+1],0!==o&&(e[2*a]=t(i[o]++,o))})(r,e.max_code,n.bl_count)}}function L(e,t,n,r,i){const s=this;s.static_tree=e,s.extra_bits=t,s.extra_base=n,s.elems=r,s.max_length=i}U._length_code=[0,1,2,3,4,5,6,7].concat(...F([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),U.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],U.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],U.d_code=e=>256>e?I[e]:I[256+(e>>>7)],U.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],U.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],U.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],U.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const q=F([[144,8],[112,9],[24,7],[8,8]]);L.static_ltree=T([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,q[t]])));const N=F([[30,5]]);function O(e,t,n,r,i){const s=this;s.good_length=e,s.max_lazy=t,s.nice_length=n,s.max_chain=r,s.func=i}L.static_dtree=T([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,N[t]]))),L.static_l_desc=new L(L.static_ltree,U.extra_lbits,257,286,15),L.static_d_desc=new L(L.static_dtree,U.extra_dbits,0,30,15),L.static_bl_desc=new L(null,U.extra_blbits,0,19,7);const M=[new O(0,0,0,0,0),new O(4,4,8,4,1),new O(4,5,16,8,1),new O(4,6,32,32,1),new O(4,4,16,16,2),new O(8,16,32,32,2),new O(8,16,128,128,2),new O(8,32,128,256,2),new O(32,128,258,1024,2),new O(32,258,258,4096,2)],K=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],V=113,P=666,B=262;function H(e,t,n,r){const i=e[2*t],s=e[2*n];return s>i||i==s&&r[t]<=r[n]}function Y(){const e=this;let t,n,r,i,s,o,l,c,f,u,d,p,_,g,m,b,y,x,k,S,v,z,C,D,A,W,R,F,T,I,q,N,O;const Y=new U,Z=new U,X=new U;let j,G,J,$,Q,ee;function te(){let t;for(t=0;286>t;t++)q[2*t]=0;for(t=0;30>t;t++)N[2*t]=0;for(t=0;19>t;t++)O[2*t]=0;q[512]=1,e.opt_len=e.static_len=0,G=J=0}function ne(e,t){let n,r=-1,i=e[1],s=0,a=7,o=4;0===i&&(a=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)n=i,i=e[2*(l+1)+1],++ss?O[2*n]+=s:0!==n?(n!=r&&O[2*n]++,O[32]++):s>10?O[36]++:O[34]++,s=0,r=n,0===i?(a=138,o=3):n==i?(a=6,o=3):(a=7,o=4))}function re(t){e.pending_buf[e.pending++]=t}function ie(e){re(255&e),re(e>>>8&255)}function se(e,t){let n;const r=t;ee>16-r?(n=e,Q|=n<>>16-ee,ee+=r-16):(Q|=e<=n;n++)if(r=s,s=e[2*(n+1)+1],++a>=o||r!=s){if(l>a)do{ae(r,O)}while(0!=--a);else 0!==r?(r!=i&&(ae(r,O),a--),ae(16,O),se(a-3,2)):a>10?(ae(18,O),se(a-11,7)):(ae(17,O),se(a-3,3));a=0,i=r,0===s?(o=138,l=3):r==s?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(ie(Q),Q=0,ee=0):8>ee||(re(255&Q),Q>>>=8,ee-=8)}function ce(t,n){let r,i,s;if(e.dist_buf[G]=t,e.lc_buf[G]=255&n,G++,0===t?q[2*n]++:(J++,t--,q[2*(U._length_code[n]+256+1)]++,N[2*U.d_code(t)]++),0==(8191&G)&&R>2){for(r=8*G,i=v-y,s=0;30>s;s++)r+=N[2*s]*(5+U.extra_dbits[s]);if(r>>>=3,Jo);ae(256,t),$=t[513]}function ue(){ee>8?ie(Q):ee>0&&re(255&Q),Q=0,ee=0}function de(t,n,r){se(0+(r?1:0),3),((t,n)=>{ue(),$=8,ie(n),ie(~n),e.pending_buf.set(c.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function we(n){((t,n,r)=>{let i,s,a=0;R>0?(Y.build_tree(e),Z.build_tree(e),a=(()=>{let t;for(ne(q,Y.max_code),ne(N,Z.max_code),X.build_tree(e),t=18;t>=3&&0===O[2*U.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),i=e.opt_len+3+7>>>3,s=e.static_len+3+7>>>3,s>i||(i=s)):i=s=n+5,n+4>i||-1==t?s==i?(se(2+(r?1:0),3),fe(L.static_ltree,L.static_dtree)):(se(4+(r?1:0),3),((e,t,n)=>{let r;for(se(e-257,5),se(t-1,5),se(n-4,4),r=0;n>r;r++)se(O[2*U.bl_order[r]+1],3);oe(q,e-1),oe(N,t-1)})(Y.max_code+1,Z.max_code+1,a+1),fe(q,N)):de(t,n,r),te(),r&&ue()})(0>y?-1:y,v-y,n),y=v,t.flush_pending()}function he(){let e,n,r,i;do{if(i=f-C-v,0===i&&0===v&&0===C)i=s;else if(-1==i)i--;else if(v>=s+s-B){c.set(c.subarray(s,s+s),0),z-=s,v-=s,y-=s,e=_,r=e;do{n=65535&d[--r],d[r]=s>n?0:n-s}while(0!=--e);e=s,r=e;do{n=65535&u[--r],u[r]=s>n?0:n-s}while(0!=--e);i+=s}if(0===t.avail_in)return;e=t.read_buf(c,v+C,i),C+=e,3>C||(p=255&c[v],p=(p<C&&0!==t.avail_in)}function pe(e){let t,n,r=A,i=v,a=D;const o=v>s-B?v-(s-B):0;let f=I;const d=l,w=v+258;let h=c[i+a-1],p=c[i+a];T>D||(r>>=2),f>C&&(f=C);do{if(t=e,c[t+a]==p&&c[t+a-1]==h&&c[t]==c[i]&&c[++t]==c[i+1]){i+=2,t++;do{}while(c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&w>i);if(n=258-(w-i),i=w-258,n>a){if(z=e,a=n,n>=f)break;h=c[i+a-1],p=c[i+a]}}}while((e=65535&u[e&d])>o&&0!=--r);return a>C?C:a}e.depth=[],e.bl_count=[],e.heap=[],q=[],N=[],O=[],e.pqdownheap=(t,n)=>{const r=e.heap,i=r[n];let s=n<<1;for(;s<=e.heap_len&&(s(U||(U=8),K||(K=8),P||(P=0),t.msg=null,-1==k&&(k=6),1>K||K>9||8!=U||9>z||z>15||0>k||k>9||0>P||P>2?E:(t.dstate=e,o=z,s=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=V,i=0,Y.dyn_tree=q,Y.stat_desc=L.static_l_desc,Z.dyn_tree=N,Z.stat_desc=L.static_d_desc,X.dyn_tree=O,X.stat_desc=L.static_bl_desc,Q=0,ee=0,$=8,te(),(()=>{f=2*s,d[_-1]=0;for(let e=0;_-1>e;e++)d[e]=0;W=M[R].max_lazy,T=M[R].good_length,I=M[R].nice_length,A=M[R].max_chain,v=0,y=0,C=0,x=D=2,S=0,p=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=V&&n!=P?E:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,d=null,u=null,c=null,e.dstate=null,n==V?-3:0),e.deflateParams=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?E:(M[R].func!=M[t].func&&0!==e.total_in&&(r=e.deflate(1)),R!=t&&(R=t,W=M[R].max_lazy,T=M[R].good_length,I=M[R].nice_length,A=M[R].max_chain),F=n,r)},e.deflateSetDictionary=(e,t,r)=>{let i,a=r,o=0;if(!t||42!=n)return E;if(3>a)return 0;for(a>s-B&&(a=s-B,o=r-a),c.set(t.subarray(o,o+a),0),v=a,y=a,p=255&c[0],p=(p<=i;i++)p=(p<{let w,h,g,A,T;if(f>4||0>f)return E;if(!a.next_out||!a.next_in&&0!==a.avail_in||n==P&&4!=f)return a.msg=K[4],E;if(0===a.avail_out)return a.msg=K[7],-5;var I;if(t=a,A=i,i=f,42==n&&(h=8+(o-8<<4)<<8,g=(R-1&255)>>1,g>3&&(g=3),h|=g<<6,0!==v&&(h|=32),h+=31-h%31,n=V,re((I=h)>>8&255),re(255&I)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return i=-1,0}else if(0===t.avail_in&&A>=f&&4!=f)return t.msg=K[7],-5;if(n==P&&0!==t.avail_in)return a.msg=K[7],-5;if(0!==t.avail_in||0!==C||0!=f&&n!=P){switch(T=-1,M[R].func){case 0:T=(e=>{let n,i=65535;for(i>r-5&&(i=r-5);;){if(1>=C){if(he(),0===C&&0==e)return 0;if(0===C)break}if(v+=C,C=0,n=y+i,(0===v||v>=n)&&(C=v-n,v=n,we(!1),0===t.avail_out))return 0;if(v-y>=s-B&&(we(!1),0===t.avail_out))return 0}return we(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(f);break;case 1:T=(e=>{let n,r=0;for(;;){if(B>C){if(he(),B>C&&0==e)return 0;if(0===C)break}if(3>C||(p=(p<s-B||2!=F&&(x=pe(r)),3>x)n=ce(0,255&c[v]),C--,v++;else if(n=ce(v-z,x-3),C-=x,x>W||3>C)v+=x,x=0,p=255&c[v],p=(p<{let n,r,i=0;for(;;){if(B>C){if(he(),B>C&&0==e)return 0;if(0===C)break}if(3>C||(p=(p<D&&s-B>=(v-i&65535)&&(2!=F&&(x=pe(i)),5>=x&&(1==F||3==x&&v-z>4096)&&(x=2)),3>D||x>D)if(0!==S){if(n=ce(0,255&c[v-1]),n&&we(!1),v++,C--,0===t.avail_out)return 0}else S=1,v++,C--;else{r=v+C-3,n=ce(v-1-k,D-3),C-=D-1,D-=2;do{++v>r||(p=(p<1+$+10-ee&&(se(2,3),ae(256,L.static_ltree),le()),$=7;else if(de(0,0,!1),3==f)for(w=0;_>w;w++)d[w]=0;if(t.flush_pending(),0===t.avail_out)return i=-1,0}}return 4!=f?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 Y,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):E},deflateEnd(){const e=this;if(!e.dstate)return E;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):E},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):E},read_buf(e,t,n){const r=this;let i=r.avail_in;return i>n&&(i=n),0===i?0:(r.avail_in-=i,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),t),r.next_in_index+=i,r.total_in+=i,i)},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=-2,j=-3,G=-5,J=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],$=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],Q=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],ee=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],te=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ne=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],re=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ie(){let e,t,n,r,i,s;function a(e,t,a,o,l,c,f,u,d,w,h){let p,_,g,m,b,y,x,k,S,v,z,C,D,A,W;v=0,b=a;do{n[e[t+v]]++,v++,b--}while(0!==b);if(n[0]==a)return f[0]=-1,u[0]=0,0;for(k=u[0],y=1;15>=y&&0===n[y];y++);for(x=y,y>k&&(k=y),b=15;0!==b&&0===n[b];b--);for(g=b,k>b&&(k=b),u[0]=k,A=1<y;y++,A<<=1)if(0>(A-=n[y]))return j;if(0>(A-=n[b]))return j;for(n[b]+=A,s[1]=y=0,v=1,D=2;0!=--b;)s[D]=y+=n[v],D++,v++;b=0,v=0;do{0!==(y=e[t+v])&&(h[s[y]++]=b),v++}while(++b=x;x++)for(p=n[x];0!=p--;){for(;x>C+k;){if(m++,C+=k,W=g-C,W=W>k?k:W,(_=1<<(y=x-C))>p+1&&(_-=p+1,D=x,W>y))for(;++yn[++D];)_-=n[D];if(W=1<1440)return j;i[m]=z=w[0],w[0]+=W,0!==m?(s[m]=b,r[0]=y,r[1]=k,y=b>>>C-k,r[2]=z-i[m-1]-y,d.set(r,3*(i[m-1]+y))):f[0]=z}for(r[1]=x-C,a>v?h[v]h[v]?0:96,r[2]=h[v++]):(r[0]=c[h[v]-o]+16+64,r[2]=l[h[v++]-o]):r[0]=192,_=1<>>C;W>y;y+=_)d.set(r,3*(z+y));for(y=1<>>=1)b^=y;for(b^=y,S=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)r[o]=0;i.set(n.subarray(0,15),0),s.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,r,i,s,l)=>{let c;return o(19),e[0]=0,c=a(n,0,19,19,null,null,i,r,s,e,t),c==j?l.msg="oversubscribed dynamic bit lengths tree":c!=G&&0!==r[0]||(l.msg="incomplete dynamic bit lengths tree",c=j),c},this.inflate_trees_dynamic=(n,r,i,s,l,c,f,u,d)=>{let w;return o(288),e[0]=0,w=a(i,0,n,257,ee,te,c,s,u,e,t),0!=w||0===s[0]?(w==j?d.msg="oversubscribed literal/length tree":-4!=w&&(d.msg="incomplete literal/length tree",w=j),w):(o(288),w=a(i,n,r,0,ne,re,f,l,u,e,t),0!=w||0===l[0]&&n>257?(w==j?d.msg="oversubscribed distance tree":w==G?(d.msg="incomplete distance tree",w=j):-4!=w&&(d.msg="empty distance tree with lengths",w=j),w):0)}}function se(){const e=this;let t,n,r,i,s=0,a=0,o=0,l=0,c=0,f=0,u=0,d=0,w=0,h=0;function p(e,t,n,r,i,s,a,o){let l,c,f,u,d,w,h,p,_,g,m,b,y,x,k,S;h=o.next_in_index,p=o.avail_in,d=a.bitb,w=a.bitk,_=a.write,g=_w;)p--,d|=(255&o.read_byte(h++))<>=c[S+1],w-=c[S+1],0!=(16&u)){for(u&=15,y=c[S+2]+(d&J[u]),d>>=u,w-=u;15>w;)p--,d|=(255&o.read_byte(h++))<>=c[S+1],w-=c[S+1],0!=(16&u)){for(u&=15;u>w;)p--,d|=(255&o.read_byte(h++))<>=u,w-=u,g-=y,x>_){k=_-x;do{k+=a.end}while(0>k);if(u=a.end-k,y>u){if(y-=u,_-k>0&&u>_-k)do{a.win[_++]=a.win[k++]}while(0!=--u);else a.win.set(a.win.subarray(k,k+u),_),_+=u,k+=u,u=0;k=0}}else k=_-x,_-k>0&&2>_-k?(a.win[_++]=a.win[k++],a.win[_++]=a.win[k++],y-=2):(a.win.set(a.win.subarray(k,k+2),_),_+=2,k+=2,y-=2);if(_-k>0&&y>_-k)do{a.win[_++]=a.win[k++]}while(0!=--y);else a.win.set(a.win.subarray(k,k+y),_),_+=y,k+=y,y=0;break}if(0!=(64&u))return o.msg="invalid distance code",y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=_,j;l+=c[S+2],l+=d&J[u],S=3*(f+l),u=c[S]}break}if(0!=(64&u))return 0!=(32&u)?(y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=_,1):(o.msg="invalid literal/length code",y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=_,j);if(l+=c[S+2],l+=d&J[u],S=3*(f+l),0===(u=c[S])){d>>=c[S+1],w-=c[S+1],a.win[_++]=c[S+2],g--;break}}else d>>=c[S+1],w-=c[S+1],a.win[_++]=c[S+2],g--}while(g>=258&&p>=10);return y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=_,0}e.init=(e,s,a,o,l,c)=>{t=0,u=e,d=s,r=a,w=o,i=l,h=c,n=null},e.proc=(e,_,g)=>{let m,b,y,x,k,S,v,z=0,C=0,D=0;for(D=_.next_in_index,x=_.avail_in,z=e.bitb,C=e.bitk,k=e.write,S=k=258&&x>=10&&(e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,g=p(u,d,r,w,i,h,e,_),D=_.next_in_index,x=_.avail_in,z=e.bitb,C=e.bitk,k=e.write,S=kC;){if(0===x)return e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,e.inflate_flush(_,g);g=0,x--,z|=(255&_.read_byte(D++))<>>=n[b+1],C-=n[b+1],y=n[b],0===y){l=n[b+2],t=6;break}if(0!=(16&y)){c=15&y,s=n[b+2],t=2;break}if(0==(64&y)){o=y,a=b/3+n[b+2];break}if(0!=(32&y)){t=7;break}return t=9,_.msg="invalid literal/length code",g=j,e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,e.inflate_flush(_,g);case 2:for(m=c;m>C;){if(0===x)return e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,e.inflate_flush(_,g);g=0,x--,z|=(255&_.read_byte(D++))<>=m,C-=m,o=d,n=i,a=h,t=3;case 3:for(m=o;m>C;){if(0===x)return e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,e.inflate_flush(_,g);g=0,x--,z|=(255&_.read_byte(D++))<>=n[b+1],C-=n[b+1],y=n[b],0!=(16&y)){c=15&y,f=n[b+2],t=4;break}if(0==(64&y)){o=y,a=b/3+n[b+2];break}return t=9,_.msg="invalid distance code",g=j,e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,e.inflate_flush(_,g);case 4:for(m=c;m>C;){if(0===x)return e.bitb=z,e.bitk=C,_.avail_in=x,_.total_in+=D-_.next_in_index,_.next_in_index=D,e.write=k,e.inflate_flush(_,g);g=0,x--,z|=(255&_.read_byte(D++))<>=m,C-=m,t=5;case 5:for(v=k-f;0>v;)v+=e.end;for(;0!==s;){if(0===S&&(k==e.end&&0!==e.read&&(k=0,S=k7&&(C-=8,x++,D--),e.write=k,g=e.inflate_flush(_,g),k=e.write,S=k{}}ie.inflate_trees_fixed=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=$,r[0]=Q,0);const ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function oe(e,t){const n=this;let r,i=0,s=0,a=0,o=0;const l=[0],c=[0],f=new se;let u=0,d=new Int32Array(4320);const h=new ie;n.bitk=0,n.bitb=0,n.win=new w(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==i&&f.free(e),i=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let r,i,s;return i=e.next_out_index,s=n.read,r=(s>n.write?n.end:n.write)-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==G&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r,s==n.end&&(s=0,n.write==n.end&&(n.write=0),r=n.write-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==G&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r),e.next_out_index=i,n.read=s,t},n.proc=(e,t)=>{let w,p,_,g,m,b,y,x;for(g=e.next_in_index,m=e.avail_in,p=n.bitb,_=n.bitk,b=n.write,y=b_;){if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(g++))<<_,_+=8}switch(w=7&p,u=1&w,w>>>1){case 0:p>>>=3,_-=3,w=7&_,p>>>=w,_-=w,i=1;break;case 1:k=[],S=[],v=[[]],z=[[]],ie.inflate_trees_fixed(k,S,v,z),f.init(k[0],S[0],v[0],0,z[0],0),p>>>=3,_-=3,i=6;break;case 2:p>>>=3,_-=3,i=3;break;case 3:return p>>>=3,_-=3,i=9,e.msg="invalid block type",t=j,n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t)}break;case 1:for(;32>_;){if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(g++))<<_,_+=8}if((~p>>>16&65535)!=(65535&p))return i=9,e.msg="invalid stored block lengths",t=j,n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);s=65535&p,p=_=0,i=0!==s?2:0!==u?7:0;break;case 2:if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);if(0===y&&(b==n.end&&0!==n.read&&(b=0,y=bm&&(w=m),w>y&&(w=y),n.win.set(e.read_buf(g,w),b),g+=w,m-=w,b+=w,y-=w,0!=(s-=w))break;i=0!==u?7:0;break;case 3:for(;14>_;){if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(g++))<<_,_+=8}if(a=w=16383&p,(31&w)>29||(w>>5&31)>29)return i=9,e.msg="too many length or distance symbols",t=j,n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);if(w=258+(31&w)+(w>>5&31),!r||r.lengthx;x++)r[x]=0;p>>>=14,_-=14,o=0,i=4;case 4:for(;4+(a>>>10)>o;){for(;3>_;){if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(g++))<<_,_+=8}r[ae[o++]]=7&p,p>>>=3,_-=3}for(;19>o;)r[ae[o++]]=0;if(l[0]=7,w=h.inflate_trees_bits(r,l,c,d,e),0!=w)return(t=w)==j&&(r=null,i=9),n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);o=0,i=5;case 5:for(;w=a,258+(31&w)+(w>>5&31)>o;){let s,f;for(w=l[0];w>_;){if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(g++))<<_,_+=8}if(w=d[3*(c[0]+(p&J[w]))+1],f=d[3*(c[0]+(p&J[w]))+2],16>f)p>>>=w,_-=w,r[o++]=f;else{for(x=18==f?7:f-14,s=18==f?11:3;w+x>_;){if(0===m)return n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(g++))<<_,_+=8}if(p>>>=w,_-=w,s+=p&J[x],p>>>=x,_-=x,x=o,w=a,x+s>258+(31&w)+(w>>5&31)||16==f&&1>x)return r=null,i=9,e.msg="invalid bit length repeat",t=j,n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);f=16==f?r[x-1]:0;do{r[x++]=f}while(0!=--s);o=x}}if(c[0]=-1,C=[],D=[],A=[],W=[],C[0]=9,D[0]=6,w=a,w=h.inflate_trees_dynamic(257+(31&w),1+(w>>5&31),r,C,D,A,W,d,e),0!=w)return w==j&&(r=null,i=9),t=w,n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);f.init(C[0],D[0],d,A[0],d,W[0]),i=6;case 6:if(n.bitb=p,n.bitk=_,e.avail_in=m,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,1!=(t=f.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,f.free(e),g=e.next_in_index,m=e.avail_in,p=n.bitb,_=n.bitk,b=n.write,y=b{n.reset(e,null),n.win=null,d=null},n.set_dictionary=(e,t,r)=>{n.win.set(e.subarray(t,t+r),0),n.read=n.write=r},n.sync_point=()=>1==i?1:0}const le=13,ce=[0,0,255,255];function fe(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):X}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,r)=>(n.msg=null,e.blocks=null,8>r||r>15?(e.inflateEnd(n),X):(e.wbits=r,n.istate.blocks=new oe(n,1<{let n,r;if(!e||!e.istate||!e.next_in)return X;const i=e.istate;for(t=4==t?G:0,n=G;;)switch(i.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(i.method=e.read_byte(e.next_in_index++)))){i.mode=le,e.msg="unknown compression method",i.marker=5;break}if(8+(i.method>>4)>i.wbits){i.mode=le,e.msg="invalid win size",i.marker=5;break}i.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,r=255&e.read_byte(e.next_in_index++),((i.method<<8)+r)%31!=0){i.mode=le,e.msg="incorrect header check",i.marker=5;break}if(0==(32&r)){i.mode=7;break}i.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,i.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,i.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,i.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,i.need+=255&e.read_byte(e.next_in_index++),i.mode=6,2);case 6:return i.mode=le,e.msg="need dictionary",i.marker=0,X;case 7:if(n=i.blocks.proc(e,n),n==j){i.mode=le,i.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,i.blocks.reset(e,i.was),i.mode=12;case 12:return e.avail_in=0,1;case le:return j;default:return X}},e.inflateSetDictionary=(e,t,n)=>{let r=0,i=n;if(!e||!e.istate||6!=e.istate.mode)return X;const s=e.istate;return i<1<{let n,r,i,s,a;if(!e||!e.istate)return X;const o=e.istate;if(o.mode!=le&&(o.mode=le,o.marker=0),0===(n=e.avail_in))return G;for(r=e.next_in_index,i=o.marker;0!==n&&4>i;)e.read_byte(r)==ce[i]?i++:i=0!==e.read_byte(r)?0:4-i,r++,n--;return e.total_in+=r-e.next_in_index,e.next_in_index=r,e.avail_in=n,o.marker=i,4!=i?j:(s=e.total_in,a=e.total_out,t(e),e.total_in=s,e.total_out=a,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():X}function ue(){}ue.prototype={inflateInit(e){const t=this;return t.istate=new fe,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):X},inflateEnd(){const e=this;if(!e.istate)return X;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):X},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):X},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const de=4294967295,we=65535,he=67324752,pe=134695760,_e=33639248,ge=101075792,me=117853008,be=21589,ye=2048,xe="/",ke=new o(2107,11,31),Se=new o(1980,0,1),ve=void 0,ze="undefined",Ce="function";class De{constructor(e){return class extends v{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 Ae=2;try{typeof W!=ze&&W.hardwareConcurrency&&(Ae=W.hardwareConcurrency)}catch(e){}const We={chunkSize:524288,maxWorkers:Ae,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:ve,CompressionStreamNative:typeof D!=ze&&D,DecompressionStreamNative:typeof A!=ze&&A},Re=n.assign({},We);function Ee(){return Re}function Fe(e){return a.max(e.chunkSize,64)}function Te(e){const{baseURL:n,chunkSize:r,maxWorkers:i,terminateWorkerTimeout:s,useCompressionStream:a,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:f,DecompressionStream:u,workerScripts:w}=e;if(Ie("baseURL",n),Ie("chunkSize",r),Ie("maxWorkers",i),Ie("terminateWorkerTimeout",s),Ie("useCompressionStream",a),Ie("useWebWorkers",o),l&&(Re.CompressionStream=new De(l)),c&&(Re.DecompressionStream=new De(c)),Ie("CompressionStream",f),Ie("DecompressionStream",u),w!==ve){const{deflate:e,inflate:n}=w;if((e||n)&&(Re.workerScripts||(Re.workerScripts={})),e){if(!t.isArray(e))throw new d("workerScripts.deflate must be an array");Re.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new d("workerScripts.inflate must be an array");Re.workerScripts.inflate=n}}}function Ie(e,t){t!==ve&&(Re[e]=t)}function Ue(e,t,r){return class{constructor(i){const s=this;var a,o;a=i,o="level",("function"==typeof n.hasOwn?n.hasOwn(a,o):a.hasOwnProperty(o))&&void 0===i.level&&delete i.level,s.codec=new e(n.assign({},t,i)),r(s.codec,(e=>{if(s.pendingData){const t=s.pendingData;s.pendingData=new w(t.length+e.length);const{pendingData:n}=s;n.set(t,0),n.set(e,t.length)}else s.pendingData=new w(e)}))}append(e){return this.codec.push(e),i(this)}flush(){return this.codec.push(new w,!0),i(this)}};function i(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new w}}const Le=[];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;Le[e]=t}class qe{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^Le[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Ne extends v{constructor(){let e;const t=new qe;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new _(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function Oe(e){if(void 0===b){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=Me.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=>a.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 i=0;i>>t),n=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=Me.getPartial(i);return r.push(Me.partial(t+s&31,t+s>32?n:r.pop(),1)),r}},Ke={bytes:{fromBits(e){const t=Me.bitLength(e)/8,n=new w(t);let r;for(let i=0;t>i;i++)0==(3&i)&&(r=e[i/4]),n[i]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const s=new p(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=Me.concat(t,[Me.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return 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){return t<>>32-e}_block(e){const n=this,r=n._h,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let s=r[0],o=r[1],l=r[2],c=r[3],f=r[4];for(let e=0;79>=e;e++){16>e||(i[e]=n._S(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n._S(5,s)+n._f(e,o,l,c)+f+i[e]+n._key[a.floor(e/20)]|0;f=c,c=l,l=n._S(30,o),o=s,s=t}r[0]=r[0]+s|0,r[1]=r[1]+o|0,r[2]=r[2]+l|0,r[3]=r[3]+c|0,r[4]=r[4]+f|0}},Pe={getRandomValues(e){const t=new p(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)*(a.random()>.5?1:-1))};for(let r,i=0;inew Be.hmacSha1(Ke.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new d("invalid params to pbkdf2");const i=1+(r>>5)<<2;let s,a,o,l,c;const f=new ArrayBuffer(i),u=new _(f);let w=0;const h=Me;for(t=Ke.bytes.toBits(t),c=1;(i||1)>w;c++){for(s=a=e.encrypt(h.concat(t,[c])),o=1;n>o;o++)for(a=e.encrypt(a),l=0;lw&&oi&&(e=(new n).update(e).finalize());for(let t=0;i>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 d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},He=void 0!==k&&"function"==typeof k.getRandomValues,Ye="Invalid password",Ze="Invalid signature",Xe="zipjs-abort-check-password";function je(e){return He?k.getRandomValues(e):Pe.getRandomValues(e)}const Ge=16,Je={name:"PBKDF2"},$e=n.assign({hash:{name:"HMAC"}},Je),Qe=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Je),et=["deriveBits"],tt=[8,12,16],nt=[16,24,32],rt=10,it=[0,0,0,0],st="undefined",at="function",ot=typeof k!=st,lt=ot&&k.subtle,ct=ot&&typeof lt!=st,ft=Ke.bytes,ut=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],i=e.length;let s,a,o,l=1;if(4!==i&&6!==i&&8!==i)throw new d("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],s=i;4*i+28>s;s++){let e=a[s-1];(s%i==0||8===i&&s%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],s%i==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),a[s]=a[s-i]^e}for(let e=0;s;e++,s--){const t=a[3&e?s:s-4];o[e]=4>=s||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],i=[],s=[];let a,o,l,c;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let f=a=0;!n[f];f^=o||1,a=s[a]||1){let s=a^a<<1^a<<2^a<<3^a<<4;s=s>>8^255&s^99,n[f]=s,r[s]=f,c=i[l=i[o=i[f]]];let u=16843009*c^65537*l^257*o^16843008*f,d=257*i[s]^16843008*s;for(let n=0;4>n;n++)e[n][f]=d=d<<24^d>>>8,t[n][s]=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 d("invalid aes block size");const n=this._key[t],r=n.length/4-2,i=[0,0,0,0],s=this._tables[t],a=s[0],o=s[1],l=s[2],c=s[3],f=s[4];let u,w,h,p=e[0]^n[0],_=e[t?3:1]^n[1],g=e[2]^n[2],m=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)u=a[p>>>24]^o[_>>16&255]^l[g>>8&255]^c[255&m]^n[b],w=a[_>>>24]^o[g>>16&255]^l[m>>8&255]^c[255&p]^n[b+1],h=a[g>>>24]^o[m>>16&255]^l[p>>8&255]^c[255&_]^n[b+2],m=a[m>>>24]^o[p>>16&255]^l[_>>8&255]^c[255&g]^n[b+3],b+=4,p=u,_=w,g=h;for(let e=0;4>e;e++)i[t?3&-e:e]=f[p>>>24]<<24^f[_>>16&255]<<16^f[g>>8&255]<<8^f[255&m]^n[b++],u=p,p=_,_=g,g=m,m=u;return i}},dt=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 i=Me.bitLength(t);for(let i=0;r>i;i+=4){this.incCounter(n);const r=e.encrypt(n);t[i]^=r[0],t[i+1]^=r[1],t[i+2]^=r[2],t[i+3]^=r[3]}return Me.clamp(t,i)}},wt=Be.hmacSha1;let ht=ot&&ct&&typeof lt.importKey==at,pt=ot&&ct&&typeof lt.deriveBits==at;class _t extends v{constructor({password:e,signed:t,encryptionStrength:r,checkPasswordOnly:i}){super({start(){n.assign(this,{ready:new m((e=>this.resolveReady=e)),password:e,signed:t,strength:r-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const i=await bt(e,t,n,xt(r,0,tt[t])),s=xt(r,tt[t]);if(i[0]!=s[0]||i[1]!=s[1])throw new d(Ye)})(n,s,r,xt(e,0,tt[s]+2)),e=xt(e,tt[s]+2),i?t.error(new d(Xe)):a()):await o;const l=new w(e.length-rt-(e.length-rt)%Ge);t.enqueue(mt(n,e,l,0,rt,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:i,ready:s}=this;await s;const a=xt(i,0,i.length-rt),o=xt(i,i.length-rt);let l=new w;if(a.length){const e=St(ft,a);r.update(e);const t=n.update(e);l=kt(ft,t)}if(t){const e=xt(kt(ft,r.digest()),0,rt);for(let t=0;rt>t;t++)if(e[t]!=o[t])throw new d(Ze)}e.enqueue(l)}})}}class gt extends v{constructor({password:e,encryptionStrength:t}){let r;super({start(){n.assign(this,{ready:new m((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:s,ready:a}=n;let o=new w;r?(o=await(async(e,t,n)=>{const r=je(new w(tt[t]));return yt(r,await bt(e,t,n,r))})(n,i,r),s()):await a;const l=new w(o.length+e.length-e.length%Ge);l.set(o,0),t.enqueue(mt(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:i,ready:s}=this;await s;let a=new w;if(i.length){const e=t.update(St(ft,i));n.update(e),a=kt(ft,e)}r.signature=kt(ft,n.digest()).slice(0,rt),e.enqueue(yt(a,r.signature))}}),r=this}}function mt(e,t,n,r,i,s){const{ctr:a,hmac:o,pending:l}=e,c=t.length-i;let f;for(l.length&&(t=yt(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e})(n,c-c%Ge)),f=0;c-Ge>=f;f+=Ge){const e=St(ft,xt(t,f,f+Ge));s&&o.update(e);const i=a.update(e);s||o.update(i),n.set(kt(ft,i),f+r)}return e.pending=xt(t,f),n}async function bt(e,r,i,s){e.password=null;const a=Oe(i),o=await(async(e,t,n,r,i)=>{if(!ht)return Be.importKey(t);try{return await lt.importKey("raw",t,n,!1,i)}catch(e){return ht=!1,Be.importKey(t)}})(0,a,$e,0,et),l=await(async(e,t,n)=>{if(!pt)return Be.pbkdf2(t,e.salt,Qe.iterations,n);try{return await lt.deriveBits(e,t,n)}catch(r){return pt=!1,Be.pbkdf2(t,e.salt,Qe.iterations,n)}})(n.assign({salt:s},Qe),o,8*(2*nt[r]+2)),c=new w(l),f=St(ft,xt(c,0,nt[r])),u=St(ft,xt(c,nt[r],2*nt[r])),d=xt(c,2*nt[r]);return n.assign(e,{keys:{key:f,authentication:u,passwordVerification:d},ctr:new dt(new ut(f),t.from(it)),hmac:new wt(u)}),d}function yt(e,t){let n=e;return e.length+t.length&&(n=new w(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function xt(e,t,n){return e.subarray(t,n)}function kt(e,t){return e.fromBits(t)}function St(e,t){return e.toBits(t)}class vt extends v{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),At(this,e)},transform(e,t){const n=this;if(n.password){const t=Ct(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new d(Ye);e=e.subarray(12)}r?t.error(new d(Xe)):t.enqueue(Ct(n,e))}})}}class zt extends v{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),At(this,e)},transform(e,t){const n=this;let r,i;if(n.password){n.password=null;const t=je(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Dt(n,t),0),i=12}else r=new w(e.length),i=0;r.set(Dt(n,e),i),t.enqueue(r)}})}}function Ct(e,t){const n=new w(t.length);for(let r=0;r>>24]),i=~e.crcKey2.get(),e.keys=[n,r,i]}function Rt(e){const t=2|e.keys[2];return Et(a.imul(t,1^t)>>>8)}function Et(e){return 255&e}function Ft(e){return 4294967295&e}const Tt="deflate-raw";class It extends v{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:i,encrypted:s,useCompressionStream:a,zipCrypto:o,signed:l,level:c}=e,f=this;let u,d,w=Lt(super.readable);s&&!o||!l||(u=new Ne,w=Ot(w,u)),i&&(w=Nt(w,a,{level:c,chunkSize:t},r,n)),s&&(o?w=Ot(w,new zt(e)):(d=new gt(e),w=Ot(w,d))),qt(f,w,(async()=>{let e;s&&!o&&(e=d.signature),s&&!o||!l||(e=new _(u.value.buffer).getUint32(0)),f.signature=e}))}}class Ut extends v{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:s,signed:a,signature:o,compressed:l,useCompressionStream:c}=e;let f,u,w=Lt(super.readable);s&&(i?w=Ot(w,new vt(e)):(u=new _t(e),w=Ot(w,u))),l&&(w=Nt(w,c,{chunkSize:t},r,n)),s&&!i||!a||(f=new Ne,w=Ot(w,f)),qt(this,w,(async()=>{if((!s||i)&&a){const e=new _(f.value.buffer);if(o!=e.getUint32(0,!1))throw new d(Ze)}}))}}function Lt(e){return Ot(e,new v({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function qt(e,t,r){t=Ot(t,new v({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Nt(e,t,n,r,i){try{e=Ot(e,new(t&&r?r:i)(Tt,n))}catch(r){if(!t)throw r;e=Ot(e,new i(Tt,n))}return e}function Ot(e,t){return e.pipeThrough(t)}const Mt="data",Kt="deflate",Vt="inflate";class Pt extends v{constructor(e,t){super({});const r=this,{codecType:i}=e;let s;i.startsWith(Kt)?s=It:i.startsWith(Vt)&&(s=Ut);let a=0;const o=new s(e,t),l=super.readable,c=new v({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;n.assign(r,{signature:e,size:a})}});n.defineProperty(r,"readable",{get:()=>l.pipeThrough(o).pipeThrough(c)})}}const Bt=typeof R!=ze;class Ht{constructor(e,{readable:t,writable:r},{options:i,config:s,streamOptions:a,useWebWorkers:o,transferStreams:l,scripts:c},f){const{signal:u}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Yt(t,a,s),{signal:u}),writable:r,options:n.assign({},i),scripts:c,transferStreams:l,terminate(){const{worker:t,busy:n}=e;t&&!n&&(t.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,f(e)}}),(o&&Bt?jt:Xt)(e,s)}}class Yt extends v{constructor(e,{onstart:t,onprogress:n,size:r,onend:i},{chunkSize:s}){let a=0;super({start(){t&&Zt(t,r)},async transform(e,t){a+=e.length,n&&await Zt(n,a,r),t.enqueue(e)},flush(){e.size=a,i&&Zt(i,a)}},{highWaterMark:1,size:()=>s})}}async function Zt(e,...t){try{await e(...t)}catch(e){}}function Xt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},i)=>{const s=new Pt(e,i);try{await t.pipeThrough(s).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:e,size:i}=s;return{signature:e,size:i}}finally{r()}})(e,t)}}function jt(e,{baseURL:t,chunkSize:r}){return e.interface||n.assign(e,{worker:$t(e.scripts[0],t,e),interface:{run:()=>(async(e,t)=>{let r,i;const s=new m(((e,t)=>{r=e,i=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:i,result:s});const{readable:a,options:o,scripts:l}=e,{writable:c,closed:f}=(e=>{const t=e.getWriter();let n;const r=new m((e=>n=e));return{writable:new C({async write(e){await t.ready,await t.write(e)},close(){t.releaseLock(),n()},abort:e=>t.abort(e)}),closed:r}})(e.writable);Qt({type:"start",scripts:l.slice(1),options:o,config:t,readable:a,writable:c},e)||n.assign(e,{reader:a.getReader(),writer:c.getWriter()});const u=await s;try{await c.getWriter().close()}catch(e){}return await f,u})(e,{chunkSize:r})}}),e.interface}let Gt=!0,Jt=!0;function $t(e,t,r){const i={type:"module"};let s,a;typeof e==Ce&&(e=e());try{s=new u(e,t)}catch(t){s=e}if(Gt)try{a=new R(s)}catch(e){Gt=!1,a=new R(s,i)}else a=new R(s,i);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:i,messageId:s,result:a,error:o}=e,{reader:l,writer:c,resolveResult:f,rejectResult:u,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:r,name:i}=o,s=new d(e);n.assign(s,{stack:t,code:r,name:i}),p(s)}else{if("pull"==r){const{value:e,done:n}=await l.read();Qt({type:Mt,value:e,done:n,messageId:s},t)}r==Mt&&(await c.ready,await c.write(new w(i)),Qt({type:"ack",messageId:s},t)),"close"==r&&p(null,a)}}catch(o){p(o)}function p(e,t){e?u(e):f(t),c&&c.releaseLock(),h()}})(e,r))),a}function Qt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:i}){try{let{value:n,readable:r,writable:s}=e;const a=[];if(n&&(e.value=n.buffer,a.push(e.value)),i&&Jt?(r&&a.push(r),s&&a.push(s)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch(n){Jt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let en=[];const tn=[];let nn=0;async function rn(e,t){const{options:n,config:r}=t,{transferStreams:s,useWebWorkers:a,useCompressionStream:o,codecType:l,compressed:c,signed:f,encrypted:u}=n,{workerScripts:d,maxWorkers:w,terminateWorkerTimeout:h}=r;t.transferStreams=s||s===ve;const p=!(c||f||u||t.transferStreams);let _;t.useWebWorkers=!p&&(a||a===ve&&r.useWebWorkers),t.scripts=t.useWebWorkers&&d?d[l]:[],n.useCompressionStream=o||o===ve&&r.useCompressionStream;const g=en.find((e=>!e.busy));if(g)sn(g),_=new Ht(g,e,t,b);else if(en.lengthtn.push({resolve:n,stream:e,workerOptions:t})));return _.run();function b(e){if(tn.length){const[{resolve:t,stream:n,workerOptions:r}]=tn.splice(0,1);t(new Ht(e,n,r,b))}else e.worker?(sn(e),i.isFinite(h)&&h>=0&&(e.terminateTimeout=setTimeout((()=>{en=en.filter((t=>t!=e)),e.terminate()}),h))):en=en.filter((t=>t!=e))}}function sn(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const an="HTTP error ",on="HTTP Range not supported",ln="Writer iterator completed too soon",cn="GET",fn="bytes",un=65536,dn="writable";class wn{constructor(){this.size=0}init(){this.initialized=!0}}class hn extends wn{get readable(){const e=this,{chunkSize:t=un}=e,n=new z({start(){this.chunkOffset=0},async pull(r){const{offset:i=0,size:s,diskNumberStart:o}=n,{chunkOffset:l}=this;r.enqueue(await qn(e,i+l,a.min(t,s-l),o)),l+t>s?r.close():this.chunkOffset+=t}});return n}}class pn extends wn{constructor(){super();const e=this,t=new C({write:t=>e.writeUint8Array(t)});n.defineProperty(e,dn,{get:()=>t})}writeUint8Array(){}}class _n extends hn{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,i=e||rt&&(s=s.slice(e,r)),new w(s)}}class gn extends wn{constructor(e){super();const t=new v,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,dn,{get:()=>t.writable}),this.blob=new f(t.readable,{headers:r}).blob()}getData(){return this.blob}}class mn extends hn{constructor(e,t){super(),yn(this,e,t)}async init(){await xn(this,Wn,zn),super.init()}readUint8Array(e,t){return kn(this,e,t,Wn,zn)}}class bn extends hn{constructor(e,t){super(),yn(this,e,t)}async init(){await xn(this,Rn,Cn),super.init()}readUint8Array(e,t){return kn(this,e,t,Rn,Cn)}}function yn(e,t,r){const{preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a})}async function xn(e,t,n){const{url:r,useRangeHeader:s,forceRangeRequests:a}=e;if((e=>{const{baseURL:t}=Ee(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(r)&&(s||a)){const{headers:r}=await t(cn,e,Sn(e));if(!a&&r.get("Accept-Ranges")!=fn)throw new d(on);{let s;const a=r.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(s=i(t))}}s===ve?await An(e,t,n):e.size=s}}else await An(e,t,n)}async function kn(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,options:o}=e;if(s||a){const i=await r(cn,e,Sn(e,t,n));if(206!=i.status)throw new d(on);return new w(await i.arrayBuffer())}{const{data:r}=e;return r||await i(e,o),new w(e.data.subarray(t,t+n))}}function Sn(e,t=0,r=1){return n.assign({},vn(e),{Range:fn+"="+t+"-"+(t+r-1)})}function vn({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function zn(e){await Dn(e,Wn)}async function Cn(e){await Dn(e,Rn)}async function Dn(e,t){const n=await t(cn,e,vn(e));e.data=new w(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function An(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,vn(e))).headers.get("Content-Length");r?e.size=i(r):await n(e,e.options)}}async function Wn(e,{options:t,url:r},i){const s=await fetch(r,n.assign({},t,{method:e,headers:i}));if(400>s.status)return s;throw 416==s.status?new d(on):new d(an+(s.statusText||s.status))}function Rn(e,{url:t},r){return new m(((i,s)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),i({status:a.status,arrayBuffer:()=>a.response,headers:new l(e)})}else s(416==a.status?new d(on):new d(an+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>s(e.detail?e.detail.error:new d("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class En extends hn{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new bn(e,t):new mn(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Fn extends hn{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await m.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:i}=this;let s,o=n;-1==o&&(o=i.length-1);let l=e;for(;l>=i[o].size;)l-=i[o].size,o++;const c=i[o],f=c.size;if(l+t>f){const i=f-l;s=new w(t),s.set(await qn(c,l,i)),s.set(await r.readUint8Array(e+i,t-i,n),i)}else s=await qn(c,l,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),s}}class Tn extends wn{constructor(e,t=4294967295){super();const r=this;let i,s,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new C({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function In(e,t){e.init&&!e.initialized&&await e.init(t)}function Un(e){return t.isArray(e)&&(e=new Fn(e)),e instanceof z&&(e={readable:e}),e}function Ln(e){e.writable===ve&&typeof e.next==Ce&&(e=new Tn(e)),e instanceof C&&(e={writable:e});const{writable:t}=e;return t.size===ve&&(t.size=0),e instanceof Tn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function qn(e,t,n,r){return e.readUint8Array(t,n,r)}const Nn=Fn,On=Tn,Mn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Kn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const ar="File format is not recognized",or="End of central directory not found",lr="End of Zip64 central directory not found",cr="End of Zip64 central directory locator not found",fr="Central directory header not found",ur="Local file header not found",dr="Zip64 extra field not found",wr="File contains encrypted entry",hr="Encryption method not supported",pr="Compression method not supported",_r="Split zip file",gr="utf-8",mr="cp437",br=[[Yn,de],[Zn,de],[Xn,de],[jn,we]],yr={[we]:{getValue:Rr,bytes:4},[de]:{getValue:Er,bytes:8}};class xr{constructor(e,t,r){n.assign(this,{reader:e,config:t,options:r})}async getData(e,t,r={}){const i=this,{reader:s,offset:a,diskNumberStart:o,extraFieldAES:l,compressionMethod:c,config:f,bitFlag:u,signature:h,rawLastModDate:p,uncompressedSize:_,compressedSize:g}=i,m=i.localDirectory={},b=Fr(await qn(s,a,30,o));let y=zr(i,r,"password");if(y=y&&y.length&&y,l&&99!=l.originalCompressionMethod)throw new d(pr);if(0!=c&&8!=c)throw new d(pr);if(Rr(b,0)!=he)throw new d(ur);kr(m,b,4),m.rawExtraField=m.extraFieldLength?await qn(s,a+30+m.filenameLength,m.extraFieldLength,o):new w,await Sr(i,m,b,4),n.assign(t,{lastAccessDate:m.lastAccessDate,creationDate:m.creationDate});const x=i.encrypted&&m.encrypted,k=x&&!l;if(x){if(!k&&l.strength===ve)throw new d(hr);if(!y)throw new d(wr)}const S=a+30+m.filenameLength+m.extraFieldLength,v=g,z=s.readable;n.assign(z,{diskNumberStart:o,offset:S,size:v});const D=zr(i,r,"signal"),A=zr(i,r,"checkPasswordOnly");A&&(e=new C),e=Ln(e),await In(e,_);const{writable:W}=e,{onstart:R,onprogress:E,onend:F}=r,T={options:{codecType:Vt,password:y,zipCrypto:k,encryptionStrength:l&&l.strength,signed:zr(i,r,"checkSignature"),passwordVerification:k&&(u.dataDescriptor?p>>>8&255:h>>>24&255),signature:h,compressed:0!=c,encrypted:x,useWebWorkers:zr(i,r,"useWebWorkers"),useCompressionStream:zr(i,r,"useCompressionStream"),transferStreams:zr(i,r,"transferStreams"),checkPasswordOnly:A},config:f,streamOptions:{signal:D,size:v,onstart:R,onprogress:E,onend:F}};let I=0;try{({outputSize:I}=await rn({readable:z,writable:W},T))}catch(e){if(!A||e.message!=Xe)throw e}finally{const e=zr(i,r,"preventClose");W.size+=I,e||W.locked||await W.getWriter().close()}return A?void 0:e.getData?e.getData():W}}function kr(e,t,r){const i=e.rawBitFlag=Wr(t,r+2),s=1==(1&i),a=Rr(t,r+6);n.assign(e,{encrypted:s,version:Wr(t,r),bitFlag:{level:(6&i)>>1,dataDescriptor:8==(8&i),languageEncodingFlag:(i&ye)==ye},rawLastModDate:a,lastModDate:Cr(a),filenameLength:Wr(t,r+22),extraFieldLength:Wr(t,r+24)})}async function Sr(e,t,r,i){const{rawExtraField:s}=t,a=t.extraField=new l,c=Fr(new w(s));let f=0;try{for(;f{t.zip64=!0;const n=Fr(e.data),r=br.filter((([e,n])=>t[e]==n));for(let i=0,s=0;i{const i=Fr(e.data),s=Ar(i,4);n.assign(e,{vendorVersion:Ar(i,0),vendorId:Ar(i,2),strength:s,originalCompressionMethod:r,compressionMethod:Wr(i,5)}),t.compressionMethod=e.compressionMethod})(g,t,u),t.extraFieldAES=g):t.compressionMethod=u;const m=a.get(10);m&&(((e,t)=>{const r=Fr(e.data);let i,s=4;try{for(;s{const n=Fr(e.data),r=Ar(n,0),i=[],s=[];1==(1&r)&&(i.push(Gn),s.push(Jn)),2==(2&r)&&(i.push($n),s.push("rawLastAccessDate")),4==(4&r)&&(i.push(Qn),s.push("rawCreationDate"));let a=1;i.forEach(((r,i)=>{if(e.data.length>=a+4){const l=Rr(n,a);t[r]=e[r]=new o(1e3*l);const c=s[i];e[c]=l}a+=4}))})(b,t),t.extraFieldExtendedTimestamp=b)}async function vr(e,t,r,i,s){const a=Fr(e.data),o=new qe;o.append(s[r]);const l=Fr(new w(4));l.setUint32(0,o.get(),!0);const c=Rr(a,1);n.assign(e,{version:Ar(a,0),[t]:Kn(e.data.subarray(5)),valid:!s.bitFlag.languageEncodingFlag&&c==Rr(l,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function zr(e,t,n){return t[n]===ve?e.options[n]:t[n]}function Cr(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Dr(e){return new o(i(e/s(1e4)-s(116444736e5)))}function Ar(e,t){return e.getUint8(t)}function Wr(e,t){return e.getUint16(t,!0)}function Rr(e,t){return e.getUint32(t,!0)}function Er(e,t){return i(e.getBigUint64(t,!0))}function Fr(e){return new _(e.buffer)}const Tr="File already exists",Ir="Zip file comment exceeds 64KB",Ur="File entry comment exceeds 64KB",Lr="File entry name exceeds 64KB",qr="Version exceeds 65535",Nr="The strength must equal 1, 2, or 3",Or="Extra field type exceeds 65535",Mr="Extra field data exceeds 64KB",Kr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Vr=new w([7,0,2,0,65,69,3,0,0]);let Pr=0;const Br=[];async function Hr(e,t){const n=e.getWriter();await n.ready,e.size+=ei(t),await n.write(t),n.releaseLock()}function Yr(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function Zr(e,t,n,r){const i=t[n]===ve?e.options[n]:t[n];return i===ve?r:i}function Xr(e,t,n){e.setUint8(t,n)}function jr(e,t,n){e.setUint16(t,n,!0)}function Gr(e,t,n){e.setUint32(t,n,!0)}function Jr(e,t,n){e.setBigUint64(t,n,!0)}function $r(e,t,n){e.set(t,n)}function Qr(e){return new _(e.buffer)}function ei(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}let ti;try{ti=void 0===x&&"undefined"==typeof location?new(require("url").URL)("file:"+__filename).href:void 0===x?location.href:x.currentScript&&x.currentScript.src||new u("zip-full.min.js",x.baseURI).href}catch(e){}(e=>{const t=()=>u.createObjectURL(new g(['const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self;class k{constructor(e){return class extends p{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)}})}}}}const v=[];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;v[e]=t}class S{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^v[255&(t^e[n])];this.t=t}get(){return~this.t}}class z extends p{constructor(){let e;const t=new S;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const C={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=C.i(n);return 32===r?e.concat(t):C.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+C.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=C.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=C.i(s);return r.push(C.h(t+i&31,t+i>32?n:r.pop(),1)),r}},x={p:{m(e){const t=C.l(e)/8,n=new i(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},g(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}D(){const e=this;let t=e.C;const n=e.S;t=C.concat(t,[C.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e._/4294967296)),t.push(0|e._);t.length;)e.I(t.splice(0,16));return e.reset(),n}V(e,t,n,r){return 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}P(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.P(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.P(5,o)+n.V(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.P(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},A={getRandomValues(e){const t=new c(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)*(r.random()>.5?1:-1))};for(let s,i=0;inew I.R(x.p.g(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=C;for(t=x.p.g(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).D());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.K[0].update(r[0]),t.K[1].update(r[1]),t.U=new n(t.K[0])}reset(){const e=this;e.U=new e.M(e.K[0]),e.N=!1}update(e){this.N=!0,this.U.update(e)}digest(){const e=this,t=e.U.D(),n=new e.M(e.K[1]).update(t).D();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},D=void 0!==h&&"function"==typeof h.getRandomValues,V="Invalid password",P="Invalid signature",R="zipjs-abort-check-password";function B(e){return D?h.getRandomValues(e):A.getRandomValues(e)}const E=16,M={name:"PBKDF2"},K=t.assign({hash:{name:"HMAC"}},M),U=t.assign({iterations:1e3,hash:{name:"SHA-1"}},M),N=["deriveBits"],O=[8,12,16],T=[16,24,32],W=10,j=[0,0,0,0],H="undefined",L="function",F=typeof h!=H,q=F&&h.subtle,G=F&&typeof q!=H,J=x.p,Q=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||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.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},X=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(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}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=C.l(t);for(let s=0;r>s;s+=4){this.G(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 C.u(t,s)}},Y=I.R;let Z=F&&G&&typeof q.importKey==L,$=F&&G&&typeof q.deriveBits==L;class ee extends p{constructor({password:e,signed:n,encryptionStrength:r,checkPasswordOnly:o}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,signed:n,X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:c,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await re(e,t,n,ie(r,0,O[t])),o=ie(r,O[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(V)})(n,c,r,ie(e,0,O[c]+2)),e=ie(e,O[c]+2),o?t.error(new s(R)):f()):await a;const l=new i(e.length-W-(e.length-W)%E);t.enqueue(ne(n,e,l,0,W,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;await c;const f=ie(o,0,o.length-W),a=ie(o,o.length-W);let l=new i;if(f.length){const e=ce(J,f);r.update(e);const t=n.update(e);l=oe(J,t)}if(t){const e=ie(oe(J,r.digest()),0,W);for(let t=0;W>t;t++)if(e[t]!=a[t])throw new s(P)}e.enqueue(l)}})}}class te extends p{constructor({password:e,encryptionStrength:n}){let r;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,X:n-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=B(new i(O[t]));return se(r,await re(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%E);a.set(f,0),t.enqueue(ne(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:s,ready:o}=this;await o;let c=new i;if(s.length){const e=t.update(ce(J,s));n.update(e),c=oe(J,e)}r.signature=oe(J,n.digest()).slice(0,W),e.enqueue(se(c,r.signature))}}),r=this}}function ne(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=se(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%E)),u=0;l-E>=u;u+=E){const e=ce(J,ie(t,u,u+E));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(oe(J,s),u+r)}return e.pending=ie(t,u),n}async function re(n,r,s,o){n.password=null;const c=(e=>{if(void 0===w){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n{if(!Z)return I.importKey(t);try{return await q.importKey("raw",t,n,!1,s)}catch(e){return Z=!1,I.importKey(t)}})(0,c,K,0,N),a=await(async(e,t,n)=>{if(!$)return I.B(t,e.salt,U.iterations,n);try{return await q.deriveBits(e,t,n)}catch(r){return $=!1,I.B(t,e.salt,U.iterations,n)}})(t.assign({salt:o},U),f,8*(2*T[r]+2)),l=new i(a),u=ce(J,ie(l,0,T[r])),h=ce(J,ie(l,T[r],2*T[r])),d=ie(l,2*T[r]);return t.assign(n,{keys:{key:u,$:h,passwordVerification:d},Y:new X(new Q(u),e.from(j)),Z:new Y(h)}),d}function se(e,t){let n=e;return e.length+t.length&&(n=new i(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function ie(e,t,n){return e.subarray(t,n)}function oe(e,t){return e.m(t)}function ce(e,t){return e.g(t)}class fe extends p{constructor({password:e,passwordVerification:n,checkPasswordOnly:r}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;if(n.password){const t=le(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new s(V);e=e.subarray(12)}r?t.error(new s(R)):t.enqueue(le(n,e))}})}}class ae extends p{constructor({password:e,passwordVerification:n}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=B(new i(12));t[11]=n.passwordVerification,r=new i(e.length+t.length),r.set(ue(n,t),0),s=12}else r=new i(e.length),s=0;r.set(ue(n,e),s),t.enqueue(r)}})}}function le(e,t){const n=new i(t.length);for(let r=0;r>>24]),i=~e.te.get(),e.keys=[n,s,i]}function de(e){const t=2|e.keys[2];return pe(r.imul(t,1^t)>>>8)}function pe(e){return 255&e}function ye(e){return 4294967295&e}const me="deflate-raw";class be extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=ke(super.readable);i&&!c||!f||(w=new z,d=ze(d,w)),s&&(d=Se(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=ze(d,new ae(e)):(h=new te(e),d=ze(d,h))),ve(u,d,(async()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ge extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=ke(super.readable);o&&(i?d=ze(d,new fe(e)):(h=new ee(e),d=ze(d,h))),a&&(d=Se(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new z,d=ze(d,w)),ve(this,d,(async()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(P)}}))}}function ke(e){return ze(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ve(e,n,r){n=ze(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Se(e,t,n,r,s){try{e=ze(e,new(t&&r?r:s)(me,n))}catch(r){if(!t)throw r;e=ze(e,new s(me,n))}return e}function ze(e,t){return e.pipeThrough(t)}const Ce="data";class xe extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=be:s.startsWith("inflate")&&(i=ge);let o=0;const c=new i(e,n),f=super.readable,a=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;t.assign(r,{signature:e,size:o})}});t.defineProperty(r,"readable",{get:()=>f.pipeThrough(c).pipeThrough(a)})}}const _e=new a,Ae=new a;let Ie=0;async function De(e){try{const{options:t,scripts:r,config:s}=e;r&&r.length&&importScripts.apply(void 0,r),self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new k(self.Deflate)),self.Inflate&&(s.DecompressionStream=new k(self.Inflate));const i={highWaterMark:1,size:()=>s.chunkSize},o=e.readable||new y({async pull(e){const t=new u((e=>_e.set(Ie,e)));Ve({type:"pull",messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ae.set(Ie,t),Ve({type:Ce,value:e,messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new xe(t,s);await o.pipeThrough(f).pipeTo(c,{preventClose:!0,preventAbort:!0});try{await c.getWriter().close()}catch(e){}const{signature:a,size:l}=f;Ve({type:"close",result:{signature:a,size:l}})}catch(e){Pe(e)}}function Ve(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Pe(e){const{message:t,stack:n,code:r,name:s}=e;d({error:{message:t,stack:n,code:r,name:s}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&De(e),t==Ce){const e=_e.get(n);_e.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ae.get(n);Ae.delete(n),e()}}catch(e){Pe(e)}}));const Re=-2;function Be(t){return Ee(t.map((([t,n])=>new e(t).fill(n,0,t))))}function Ee(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?Ee(n):n)),[])}const Me=[0,1,2,3].concat(...Be([[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 Ke(){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.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Ue(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}Ke.ge=[0,1,2,3,4,5,6,7].concat(...Be([[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]])),Ke.ke=[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],Ke.ve=[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],Ke.Se=e=>256>e?Me[e]:Me[256+(e>>>7)],Ke.ze=[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],Ke.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Ke.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Ke._e=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Ne=Be([[144,8],[112,9],[24,7],[8,8]]);Ue.Ae=Ee([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,Ne[t]])));const Oe=Be([[30,5]]);function Te(e,t,n,r,s){const i=this;i.Ie=e,i.De=t,i.Ve=n,i.Pe=r,i.Re=s}Ue.Be=Ee([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,Oe[t]]))),Ue.Ee=new Ue(Ue.Ae,Ke.ze,257,286,15),Ue.Me=new Ue(Ue.Be,Ke.Ce,0,30,15),Ue.Ke=new Ue(null,Ke.xe,0,19,7);const We=[new Te(0,0,0,0,0),new Te(4,4,8,4,1),new Te(4,5,16,8,1),new Te(4,6,32,32,1),new Te(4,4,16,16,2),new Te(8,16,32,32,2),new Te(8,16,128,128,2),new Te(8,32,128,256,2),new Te(32,128,258,1024,2),new Te(32,258,258,4096,2)],je=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],He=113,Le=666,Fe=262;function qe(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function Ge(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,_,A,I,D,V,P,R,B,E,M,K;const U=new Ke,N=new Ke,O=new Ke;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)K[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?K[2*n]+=i:0!==n?(n!=r&&K[2*n]++,K[32]++):i>10?K[36]++:K[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ue[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,K)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,K),o--),Y(16,K),X(o-3,2)):o>10?(Y(18,K),X(o-11,7)):(Y(17,K),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(Ke.ge[n]+256+1)]++,M[2*Ke.Se(t)]++),0==(8191&W)&&V>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+Ke.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ue.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;V>0?(U.ne(e),N.ne(e),o=(()=>{let t;for(G(E,U.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===K[2*Ke._e[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Ue.Ae,Ue.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(K[2*Ke._e[r]+1],3);Z(E,e-1),Z(M,t-1)})(U.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-_-C,0===s&&0===C&&0===_)s=f;else if(-1==s)s--;else if(C>=f+f-Fe){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+_,s),_+=e,3>_||(p=255&u[C],p=(p<_&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=A;const o=C>f-Fe?C-(f-Fe):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>A||(r>>=2),c>_&&(c=_);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>_?_:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],K=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Re:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=He,c=0,U.re=E,U.ie=Ue.Ee,N.re=M,N.ie=Ue.Me,O.re=K,O.ie=Ue.Ke,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe,C=0,k=0,_=0,v=A=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=He&&n!=Le?Re:(e.Oe=null,e.Ne=null,e.Ue=null,d=null,h=null,u=null,e.Fe=null,n==He?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Re:(We[V].Re!=We[t].Re&&0!==e.qe&&(r=e.Ye(1)),V!=t&&(V=t,D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe),P=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Re;if(3>i)return 0;for(i>f-Fe&&(i=f-Fe,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Re;if(!r.$e||!r.et&&0!==r.We||n==Le&&4!=i)return r.Le=je[4],Re;if(0===r.tt)return r.Le=je[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(V-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=He,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=je[7],-5;if(n==Le&&0!==t.We)return r.Le=je[7],-5;if(0!==t.We||0!==_||0!=i&&n!=Le){switch(R=-1,We[V].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=_){if(ie(),0===_&&0==e)return 0;if(0===_)break}if(C+=_,_=0,n=k+r,(0===C||C>=n)&&(_=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Fe&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<f-Fe||2!=P&&(v=oe(r)),3>v)n=ee(0,255&u[C]),_--,C++;else if(n=ee(C-x,v-3),_-=v,v>D||3>_)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<A&&f-Fe>=(C-s&65535)&&(2!=P&&(v=oe(s)),5>=v&&(1==P||3==v&&C-x>4096)&&(v=2)),3>A||v>A)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,_--,0===t.tt)return 0}else z=1,C++,_--;else{r=C+_-3,n=ee(C-1-S,A-3),_-=A-1,A-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Ue.Ae),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function Je(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function Qe(e){const t=new Je,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}Je.prototype={He(e,t){const n=this;return n.Fe=new Ge,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Re},Qe(){const e=this;if(!e.Fe)return Re;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Re},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Re},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ue.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const Xe=-2,Ye=-3,Ze=-5,$e=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],et=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],tt=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],nt=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],rt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],st=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],it=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ot(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,_,A,I,D;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return Ye;if(0>(I-=n[g]))return Ye;for(n[g]+=I,i[1]=k=0,C=1,A=2;0!=--g;)i[A]=k+=n[C],A++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>_+S;){if(b++,_+=S,D=m-_,D=D>S?S:D,(y=1<<(k=v-_))>p+1&&(y-=p+1,A=v,D>k))for(;++kn[++A];)y-=n[A];if(D=1<1440)return Ye;s[b]=x=h[0],h[0]+=D,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>_-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-_,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>_;D>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<<_)-1;(g&z)!=i[b];)b--,_-=S,z=(1<<_)-1}return 0!==I&&1!=m?Ze:0}function c(o){let c;for(e||(e=[],t=[],n=new f(16),r=[],s=new f(15),i=new f(16)),t.lengthc;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==Ye?f.Le="oversubscribed dynamic bit lengths tree":a!=Ze&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=Ye),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,nt,rt,a,i,u,e,t),0!=h||0===i[0]?(h==Ye?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=Ye),h):(c(288),h=o(s,n,r,0,st,it,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==Ye?w.Le="oversubscribed distance tree":h==Ze?(w.Le="incomplete distance tree",h=Ye):-4!=h&&(w.Le="empty distance tree with lengths",h=Ye),h):0)}}function ct(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15,k=a[z+2]+(w&$e[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(0!=(64&u))return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye;f+=a[z+2],f+=w&$e[u],z=3*(l+f),u=a[z]}break}if(0!=(64&u))return 0!=(32&u)?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye);if(f+=a[z+2],f+=w&$e[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,_=0,A=0;for(A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,m=p(u,w,r,h,s,d,e,y),A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>>=n[g+1],_-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(0!=(16&k)){a=15&k,i=n[g+2],t=2;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}if(0!=(32&k)){t=7;break}return t=9,y.Le="invalid literal/length code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 2:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}i+=x&$e[b],x>>=b,_-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>=n[g+1],_-=n[g+1],k=n[g],0!=(16&k)){a=15&k,l=n[g+2],t=4;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 4:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}l+=x&$e[b],x>>=b,_-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(_-=8,v++,A--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ot.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=et,r[0]=tt,0);const ft=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function at(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new ct;let h=0,d=new f(4320);const p=new ot;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ot.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[ft[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==Ye&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&$e[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,_=[],A=[],I=[],D=[],_[0]=9,A[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,_,A,I,D,d,e),0!=i)return i==Ye&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(_[0],A[0],d,I[0],d,D[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const lt=13,ut=[0,0,255,255];function wt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):Xe}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),Xe):(e.zt=r,n.gt.kt=new at(n,1<{let n,r;if(!e||!e.gt||!e.et)return Xe;const s=e.gt;for(t=4==t?Ze:0,n=Ze;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=lt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=lt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=lt,e.Le="incorrect header check",s.marker=5;break}if(0==(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=lt,e.Le="need dictionary",s.marker=0,Xe;case 7:if(n=s.kt.ut(e,n),n==Ye){s.mode=lt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case lt:return Ye;default:return Xe}},e.At=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return Xe;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return Xe;const c=e.gt;if(c.mode!=lt&&(c.mode=lt,c.marker=0),0===(n=e.We))return Ze;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==ut[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?Ye:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Dt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():Xe}function ht(){}function dt(e){const t=new ht,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t._t(0),c&&a===Ze){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}ht.prototype={xt(e){const t=this;return t.gt=new wt,e||(e=15),t.gt.xt(t,e)},_t(e){const t=this;return t.gt?t.gt._t(t,e):Xe},Ct(){const e=this;if(!e.gt)return Xe;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):Xe},At(e,t){const n=this;return n.gt?n.gt.At(n,e,t):Xe},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=Qe,self.Inflate=dt};\n'],{type:"text/javascript"}));e({workerScripts:{inflate:[t],deflate:[t]}})})(Te),Te({Deflate:function(e){const t=new Z,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(a.floor(r/16383)+1);var r;const i=new w(n);let s=e?e.level:-1;void 0===s&&(s=-1),t.deflateInit(s),t.next_out=i,this.append=(e,r)=>{let s,a,o=0,l=0,c=0;const f=[];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,s=t.deflate(0),0!=s)throw new d("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?f.push(new w(i)):f.push(i.subarray(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 f.length>1?(a=new w(c),f.forEach((e=>{a.set(e,l),l+=e.length}))):a=f[0]?new w(f[0]):new w,a}},this.flush=()=>{let e,r,s=0,a=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw new d("deflating: "+t.msg);n-t.avail_out>0&&o.push(i.slice(0,t.next_out_index)),a+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new w(a),o.forEach((e=>{r.set(e,s),s+=e.length})),r}},Inflate:function(e){const t=new ue,n=e&&e.chunkSize?a.floor(2*e.chunkSize):131072,r=new w(n);let i=!1;t.inflateInit(),t.next_out=r,this.append=(e,s)=>{const a=[];let o,l,c=0,f=0,u=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||i||(t.next_in_index=0,i=!0),o=t.inflate(0),i&&o===G){if(0!==t.avail_in)throw new d("inflating: bad input")}else if(0!==o&&1!==o)throw new d("inflating: "+t.msg);if((i||1===o)&&t.avail_in===e.length)throw new d("inflating: bad input");t.next_out_index&&(t.next_out_index===n?a.push(new w(r)):a.push(r.subarray(0,t.next_out_index))),u+=t.next_out_index,s&&t.next_in_index>0&&t.next_in_index!=c&&(s(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return a.length>1?(l=new w(u),a.forEach((e=>{l.set(e,f),f+=e.length}))):l=a[0]?new w(a[0]):new w,l}},this.flush=()=>{t.inflateEnd()}},baseURL:ti}),e.BlobReader=_n,e.BlobWriter=gn,e.Data64URIReader=class extends hn{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:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,i=new w(t),s=4*a.floor(e/3),o=atob(r.substring(s+n,4*a.ceil((e+t)/3)+n)),l=e-3*a.floor(s/4);for(let e=l;l+t>e;e++)i[e-l]=o.charCodeAt(e);return i}},e.Data64URIWriter=class extends pn{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,i=t.pending;const s=t.pending.length;for(t.pending="",n=0;n<3*a.floor((s+e.length)/3)-s;n++)i+=r.fromCharCode(e[n]);for(;n2?t.data+=S(i):t.pending=i}getData(){return this.data+S(this.pending)}},e.ERR_BAD_FORMAT=ar,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=fr,e.ERR_DUPLICATED_NAME=Tr,e.ERR_ENCRYPTED=wr,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=cr,e.ERR_EOCDR_NOT_FOUND=or,e.ERR_EOCDR_ZIP64_NOT_FOUND=lr,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=dr,e.ERR_HTTP_RANGE=on,e.ERR_INVALID_COMMENT=Ir,e.ERR_INVALID_ENCRYPTION_STRENGTH=Nr,e.ERR_INVALID_ENTRY_COMMENT=Ur,e.ERR_INVALID_ENTRY_NAME=Lr,e.ERR_INVALID_EXTRAFIELD_DATA=Mr,e.ERR_INVALID_EXTRAFIELD_TYPE=Or,e.ERR_INVALID_PASSWORD=Ye,e.ERR_INVALID_SIGNATURE=Ze,e.ERR_INVALID_VERSION=qr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=ln,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=ur,e.ERR_SPLIT_ZIP_FILE=_r,e.ERR_UNSUPPORTED_COMPRESSION=pr,e.ERR_UNSUPPORTED_ENCRYPTION=hr,e.ERR_UNSUPPORTED_FORMAT=Kr,e.HttpRangeReader=class extends En{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=En,e.Reader=hn,e.SplitDataReader=Fn,e.SplitDataWriter=Tn,e.SplitZipReader=Nn,e.SplitZipWriter=On,e.TextReader=class extends _n{constructor(e){super(new g([e],{type:"text/plain"}))}},e.TextWriter=class extends gn{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new m(((i,s)=>{n.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>s(t.error)}),t.readAsText(r,e)}))}}},e.Uint8ArrayReader=class extends hn{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 pn{init(e=0){n.assign(this,{offset:0,array:new w(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new w(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=pn,e.ZipReader=class{constructor(e,t={}){n.assign(this,{reader:Un(e),options:t,config:Ee()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:i}=t;if(await In(r),r.size!==ve&&r.readUint8Array||(r=new _n(await new f(r.readable).blob()),await In(r)),22>r.size)throw new d(ar);r.chunkSize=Fe(i);const s=await(async(e,t,n)=>{const r=new w(4);return Fr(r).setUint32(0,101010256,!0),await i(22)||await i(a.min(1048582,n));async function i(t){const i=n-t,s=await qn(e,i,t);for(let e=s.length-22;e>=0;e--)if(s[e]==r[0]&&s[e+1]==r[1]&&s[e+2]==r[2]&&s[e+3]==r[3])return{offset:i+e,buffer:s.slice(e,e+22).buffer}}})(r,0,r.size);if(!s)throw Rr(Fr(await qn(r,0,4)))==pe?new d(_r):new d(or);const o=Fr(s);let l=Rr(o,12),c=Rr(o,16);const u=s.offset,h=Wr(o,20),p=u+22+h;let _=Wr(o,4);const g=r.lastDiskNumber||0;let b=Wr(o,6),y=Wr(o,8),x=0,k=0;if(c==de||l==de||y==we||b==we){const e=Fr(await qn(r,s.offset-20,20));if(Rr(e,0)!=me)throw new d(lr);c=Er(e,8);let t=await qn(r,c,56,-1),n=Fr(t);const i=s.offset-20-56;if(Rr(n,0)!=ge&&c!=i){const e=c;c=i,x=c-e,t=await qn(r,c,56,-1),n=Fr(t)}if(Rr(n,0)!=ge)throw new d(cr);_==we&&(_=Rr(n,16)),b==we&&(b=Rr(n,20)),y==we&&(y=Er(n,32)),l==de&&(l=Er(n,40)),c-=l}if(g!=_)throw new d(_r);if(0>c||c>=r.size)throw new d(ar);let S=0,v=await qn(r,c,l,b),z=Fr(v);if(l){const e=s.offset-l;if(Rr(z,S)!=_e&&c!=e){const t=c;c=e,x=c-t,v=await qn(r,c,l,b),z=Fr(v)}}const C=s.offset-c-(r.lastDiskOffset||0);if(l==C||0>C||(l=C,v=await qn(r,c,l,b),z=Fr(v)),0>c||c>=r.size)throw new d(ar);const D=zr(t,e,"filenameEncoding"),A=zr(t,e,"commentEncoding");for(let s=0;y>s;s++){const o=new xr(r,i,t.options);if(Rr(z,S)!=_e)throw new d(fr);kr(o,z,S+6);const l=!!o.bitFlag.languageEncodingFlag,c=S+46,f=c+o.filenameLength,u=f+o.extraFieldLength,w=Wr(z,S+4),h=0==(0&w),p=v.subarray(c,f),_=Wr(z,S+32),g=u+_,b=v.subarray(u,g),C=l,W=l,R=h&&16==(16&Ar(z,S+38)),E=Rr(z,S+42)+x;n.assign(o,{versionMadeBy:w,msDosCompatible:h,compressedSize:0,uncompressedSize:0,commentLength:_,directory:R,offset:E,diskNumberStart:Wr(z,S+34),internalFileAttribute:Wr(z,S+36),externalFileAttribute:Rr(z,S+38),rawFilename:p,filenameUTF8:C,commentUTF8:W,rawExtraField:v.subarray(f,u)});const[F,T]=await m.all([Kn(p,C?gr:D||mr),Kn(b,W?gr:A||mr)]);n.assign(o,{rawComment:b,filename:F,comment:T,directory:R||F.endsWith(xe)}),k=a.max(E,k),await Sr(o,o,z,S+6);const I=new sr(o);I.getData=(e,t)=>o.getData(e,I,t),S=g;const{onprogress:U}=e;if(U)try{await U(s+1,y,new sr(o))}catch(e){}yield I}const W=zr(t,e,"extractPrependedData"),R=zr(t,e,"extractAppendedData");return W&&(t.prependedData=k>0?await qn(r,0,k):new w),t.comment=h?await qn(r,u+22,h):new w,R&&(t.appendedData=pBr.push(e)));try{if(e=e.trim(),l.filenames.has(e))throw new d(Tr);return l.filenames.add(e),u=(async(e,r,i,l)=>{r=r.trim(),l.directory&&!r.endsWith(xe)?r+=xe:l.directory=r.endsWith(xe);const c=Oe(r);if(ei(c)>we)throw new d(Lr);const f=l.comment||"",u=Oe(f);if(ei(u)>we)throw new d(Ur);const g=Zr(e,l,"version",20);if(g>we)throw new d(qr);const b=Zr(e,l,"versionMadeBy",20);if(b>we)throw new d(qr);const y=Zr(e,l,Gn,new o),x=Zr(e,l,$n),k=Zr(e,l,Qn),S=Zr(e,l,nr,!0),v=Zr(e,l,er,0),z=Zr(e,l,tr,0),C=Zr(e,l,"password"),D=Zr(e,l,"encryptionStrength",3),A=Zr(e,l,"zipCrypto"),W=Zr(e,l,"extendedTimestamp",!0),R=Zr(e,l,"keepOrder",!0),E=Zr(e,l,"level"),F=Zr(e,l,"useWebWorkers"),T=Zr(e,l,"bufferedWrite"),I=Zr(e,l,"dataDescriptorSignature",!1),U=Zr(e,l,"signal"),L=Zr(e,l,"useCompressionStream");let q=Zr(e,l,"dataDescriptor",!0),N=Zr(e,l,rr);if(C!==ve&&D!==ve&&(1>D||D>3))throw new d(Nr);let O=new w;const{extraField:M}=l;if(M){let e=0,t=0;M.forEach((t=>e+=4+ei(t))),O=new w(e),M.forEach(((e,n)=>{if(n>we)throw new d(Or);if(ei(e)>we)throw new d(Mr);$r(O,new h([n]),t),$r(O,new h([ei(e)]),t+2),$r(O,e,t+4),t+=4+ei(e)}))}let K=0,V=0,P=0;const B=!0===N;i&&(i=Un(i),await In(i),i.size===ve?(q=!0,(N||N===ve)&&(N=!0,P=K=de)):(P=i.size,K=(e=>e+5*(a.floor(e/16383)+1))(P)));const{diskOffset:H,diskNumber:Y,maxSize:Z}=e.writer,X=B||P>=de,j=B||K>=de,G=B||e.offset+e.pendingEntriesSize-H>=de,J=Zr(e,l,"supportZip64SplitFile",!0)&&B||Y+a.ceil(e.pendingEntriesSize/Z)>=we;if(G||X||j||J){if(!1===N||!R)throw new d(Kr);N=!0}N=N||!1;const $=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:i,password:s,level:o,zip64:l,zipCrypto:c,dataDescriptor:f,directory:u,rawExtraField:d,encryptionStrength:h,extendedTimestamp:_}=e,g=0!==o&&!u,m=!(!s||!ei(s));let b,y,x,k=e.version;if(m&&!c){b=new w(ei(Vr)+2);const e=Qr(b);jr(e,0,39169),$r(b,Vr,2),Xr(e,8,h)}else b=new w;if(_){x=new w(9+(r?4:0)+(i?4:0));const e=Qr(x);jr(e,0,be),jr(e,2,ei(x)-4),Xr(e,4,1+(r?2:0)+(i?4:0)),Gr(e,5,a.floor(n.getTime()/1e3)),r&&Gr(e,9,a.floor(r.getTime()/1e3)),i&&Gr(e,13,a.floor(i.getTime()/1e3));try{y=new w(36);const e=Qr(y),t=Yr(n);jr(e,0,10),jr(e,2,32),jr(e,8,1),jr(e,10,24),Jr(e,12,t),Jr(e,20,Yr(r)||t),Jr(e,28,Yr(i)||t)}catch(e){y=new w}}else y=x=new w;let S=ye;f&&(S|=8);let v=0;g&&(v=8),l&&(k=k>45?k:45),m&&(S|=1,c||(k=k>51?k:51,v=99,g&&(b[9]=8)));const z=new w(26),C=Qr(z);jr(C,0,k),jr(C,2,S),jr(C,4,v);const D=new p(1),A=Qr(D);let W;W=Se>n?Se:n>ke?ke:n,jr(A,0,(W.getHours()<<6|W.getMinutes())<<5|W.getSeconds()/2),jr(A,2,(W.getFullYear()-1980<<4|W.getMonth()+1)<<5|W.getDate());const R=D[0];Gr(C,6,R),jr(C,22,ei(t));const E=ei(b,x,y,d);jr(C,24,E);const F=new w(30+ei(t)+E);return Gr(Qr(F),0,he),$r(F,z,4),$r(F,t,30),$r(F,b,30+ei(t)),$r(F,x,30+ei(t,b)),$r(F,y,30+ei(t,b,x)),$r(F,d,30+ei(t,b,x,y)),{localHeaderArray:F,headerArray:z,headerView:C,lastModDate:n,rawLastModDate:R,encrypted:m,compressed:g,version:k,compressionMethod:v,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:y,rawExtraFieldAES:b}})(l=n.assign({},l,{rawFilename:c,rawComment:u,version:g,versionMadeBy:b,lastModDate:y,lastAccessDate:x,creationDate:k,rawExtraField:O,zip64:N,zip64UncompressedSize:X,zip64CompressedSize:j,zip64Offset:G,zip64DiskNumberStart:J,password:C,level:E,useWebWorkers:F,encryptionStrength:D,extendedTimestamp:W,zipCrypto:A,bufferedWrite:T,keepOrder:R,dataDescriptor:q,dataDescriptorSignature:I,signal:U,msDosCompatible:S,internalFileAttribute:v,externalFileAttribute:z,useCompressionStream:L})),Q=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let i,s=new w,a=0;return n&&(s=new w(t?r?24:20:r?16:12),i=Qr(s),r&&(a=4,Gr(i,0,134695760))),{dataDescriptorArray:s,dataDescriptorView:i,dataDescriptorOffset:a}})(l);let ee;V=ei($.localHeaderArray,Q.dataDescriptorArray)+K,e.pendingEntriesSize+=V;try{ee=await(async(e,r,i,a,o)=>{const{files:l,writer:c}=e,{keepOrder:f,dataDescriptor:u,signal:h}=o,{headerInfo:p}=a,g=t.from(l.values()).pop();let b,y,x,k,S,v,z={};l.set(r,z);try{let t;f&&(t=g&&g.lock,z.lock=new m((e=>x=e))),o.bufferedWrite||e.writerLocked||e.bufferedWrites&&f||!u?(v=new gn,v.writable.size=0,b=!0,e.bufferedWrites++,await In(c)):(v=c,await C()),await In(v);const{writable:p}=c;let{diskOffset:A}=c;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new w(4);Gr(Qr(t),0,pe),await Hr(p,t),e.offset+=4}b||(await t,await D(p));const{diskNumber:W}=c;if(S=!0,z.diskNumberStart=W,z=await(async(e,t,{diskNumberStart:r,lock:i},a,o,l)=>{const{headerInfo:c,dataDescriptorInfo:f}=a,{localHeaderArray:u,headerArray:d,lastModDate:h,rawLastModDate:p,encrypted:_,compressed:g,version:m,compressionMethod:b,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:x,rawExtraFieldAES:k}=c,{dataDescriptorArray:S}=f,{rawFilename:v,lastAccessDate:z,creationDate:C,password:D,level:A,zip64:W,zip64UncompressedSize:R,zip64CompressedSize:E,zip64Offset:F,zip64DiskNumberStart:T,zipCrypto:I,dataDescriptor:U,directory:L,versionMadeBy:q,rawComment:N,rawExtraField:O,useWebWorkers:M,onstart:K,onprogress:V,onend:P,signal:B,encryptionStrength:H,extendedTimestamp:Y,msDosCompatible:Z,internalFileAttribute:X,externalFileAttribute:j,useCompressionStream:G}=l,J={lock:i,versionMadeBy:q,zip64:W,directory:!!L,filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:N,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:x,rawExtraFieldAES:k,rawExtraField:O,extendedTimestamp:Y,msDosCompatible:Z,internalFileAttribute:X,externalFileAttribute:j,diskNumberStart:r};let $,Q=0,ee=0;const{writable:te}=t,ne=ei(u,S);if(e){e.chunkSize=Fe(o),await Hr(te,u);const t=e.readable,n=t.size=e.size,r={options:{codecType:Kt,level:A,password:D,encryptionStrength:H,zipCrypto:_&&I,passwordVerification:_&&I&&p>>8&255,signed:!0,compressed:g,encrypted:_,useWebWorkers:M,useCompressionStream:G,transferStreams:!1},config:o,streamOptions:{signal:B,size:n,onstart:K,onprogress:V,onend:P}},i=await rn({readable:t,writable:te},r);te.size+=i.size,$=i.signature,ee=e.size=t.size,Q=i.size}else await Hr(te,u);let re;if(W){let e=4;R&&(e+=8),E&&(e+=8),F&&(e+=8),T&&(e+=4),re=new w(e)}else re=new w;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:i,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:f}=o,{dataDescriptorView:u,dataDescriptorOffset:d}=l,{zip64:w,zip64UncompressedSize:h,zip64CompressedSize:p,zipCrypto:_,dataDescriptor:g}=t;if(f&&!_||n===ve||(Gr(c,10,n),g&&Gr(u,d,n)),w){const e=Qr(r);jr(e,0,1),jr(e,2,r.length-4);let t=4;h&&(Gr(c,18,de),Jr(e,t,s(a)),t+=8),p&&(Gr(c,14,de),Jr(e,t,s(i))),g&&(Jr(u,d+4,s(i)),Jr(u,d+12,s(a)))}else Gr(c,14,i),Gr(c,18,a),g&&(Gr(u,d+4,i),Gr(u,d+8,a))})({signature:$,rawExtraFieldZip64:re,compressedSize:Q,uncompressedSize:ee,headerInfo:c,dataDescriptorInfo:f},l),U&&await Hr(te,S),n.assign(J,{uncompressedSize:ee,compressedSize:Q,lastModDate:h,rawLastModDate:p,creationDate:C,lastAccessDate:z,encrypted:_,length:ne+Q,compressionMethod:b,version:m,headerArray:d,signature:$,rawExtraFieldZip64:re,zip64UncompressedSize:R,zip64CompressedSize:E,zip64Offset:F,zip64DiskNumberStart:T}),J})(i,v,z,a,e.config,o),S=!1,l.set(r,z),z.filename=r,b){await v.writable.getWriter().close();let e=await v.getData();await t,await C(),k=!0,u||(e=await(async(e,t,n,{zipCrypto:r})=>{let i;i=await t.slice(0,26).arrayBuffer(),26!=i.byteLength&&(i=i.slice(0,26));const s=new _(i);return e.encrypted&&!r||Gr(s,14,e.signature),e.zip64?(Gr(s,18,de),Gr(s,22,de)):(Gr(s,18,e.compressedSize),Gr(s,22,e.uncompressedSize)),await Hr(n,new w(i)),t.slice(i.byteLength)})(z,e,p,o)),await D(p),z.diskNumberStart=c.diskNumber,A=c.diskOffset,await e.stream().pipeTo(p,{preventClose:!0,preventAbort:!0,signal:h}),p.size+=e.size,k=!1}if(z.offset=e.offset-A,z.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:i}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,f=Qr(n);let u=4;a&&(u+=8),o&&(u+=8),l&&(Jr(f,u,s(r)),u+=8),c&&Gr(f,u,i)})(z,o);else if(z.offset>=de)throw new d(Kr);return e.offset+=z.length,z}catch(t){if(b&&k||!b&&S){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}b?e.offset+=v.writable.size:e.offset=v.writable.size}throw l.delete(r),t}finally{b&&e.bufferedWrites--,x&&x(),y&&y()}async function C(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new m((t=>y=()=>{e.writerLocked=!1,t()})),await t}async function D(e){p.localHeaderArray.length>c.availableSize&&(c.availableSize=0,await Hr(e,new w))}})(e,r,i,{headerInfo:$,dataDescriptorInfo:Q},l)}finally{e.pendingEntriesSize-=V}return n.assign(ee,{name:r,comment:f,extraField:M}),new sr(ee)})(l,e,r,i),c.add(u),await u}catch(t){throw l.filenames.delete(e),t}finally{c.delete(u);const e=Br.shift();e?e():Pr--}}async close(e=new w,n={}){const{pendingAddFileCalls:r,writer:i}=this,{writable:o}=i;for(;r.size;)await m.all(t.from(r));return await(async(e,n,r)=>{const{files:i,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:f}=o,u=0,h=0,p=e.offset-l,_=i.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:r,rawComment:s,rawExtraFieldExtendedTimestamp:a,rawExtraFieldNTFS:o}]of i)h+=46+ei(e,s,t,n,a,o,r);const g=new w(h),m=Qr(g);await In(o);let b=0;for(const[e,n]of t.from(i.values()).entries()){const{offset:t,rawFilename:s,rawExtraFieldZip64:l,rawExtraFieldAES:f,rawExtraFieldNTFS:d,rawExtraField:h,rawComment:p,versionMadeBy:_,headerArray:y,directory:x,zip64:k,zip64UncompressedSize:S,zip64CompressedSize:v,zip64DiskNumberStart:z,zip64Offset:C,msDosCompatible:D,internalFileAttribute:A,externalFileAttribute:W,extendedTimestamp:R,lastModDate:E,diskNumberStart:F,uncompressedSize:T,compressedSize:I}=n;let U;if(R){U=new w(9);const e=Qr(U);jr(e,0,be),jr(e,2,ei(U)-4),Xr(e,4,1),Gr(e,5,a.floor(E.getTime()/1e3))}else U=new w;const L=ei(l,f,U,d,h);Gr(m,u,_e),jr(m,u+4,_);const q=Qr(y);S||Gr(q,18,T),v||Gr(q,14,I),$r(g,y,u+6),jr(m,u+30,L),jr(m,u+32,ei(p)),jr(m,u+34,k&&z?we:F),jr(m,u+36,A),W?Gr(m,u+38,W):x&&D&&Xr(m,u+38,16),Gr(m,u+42,k&&C?de:t),$r(g,s,u+46),$r(g,l,u+46+ei(s)),$r(g,f,u+46+ei(s,l)),$r(g,U,u+46+ei(s,l,f)),$r(g,d,u+46+ei(s,l,f,U)),$r(g,h,u+46+ei(s,l,f,U,d)),$r(g,p,u+46+ei(s)+L);const N=46+ei(s,p)+L;if(u-b>o.availableSize&&(o.availableSize=0,await Hr(c,g.slice(b,u)),b=u),u+=N,r.onprogress)try{await r.onprogress(e+1,i.size,new sr(n))}catch(e){}}await Hr(c,b?g.slice(b):g);let y=o.diskNumber;const{availableSize:x}=o;22>x&&y++;let k=Zr(e,r,"zip64");if(!(de>p&&de>h&&we>_&&we>y)){if(!1===k)throw new d(Kr);k=!0}const S=new w(k?98:22),v=Qr(S);u=0,k&&(Gr(v,0,ge),Jr(v,4,s(44)),jr(v,12,45),jr(v,14,45),Gr(v,16,y),Gr(v,20,f),Jr(v,24,s(_)),Jr(v,32,s(_)),Jr(v,40,s(h)),Jr(v,48,s(p)),Gr(v,56,me),Jr(v,64,s(p)+s(h)),Gr(v,72,y+1),Zr(e,r,"supportZip64SplitFile",!0)&&(y=we,f=we),_=we,p=de,h=de,u+=76),Gr(v,u,101010256),jr(v,u+4,y),jr(v,u+6,f),jr(v,u+8,_),jr(v,u+10,_),Gr(v,u+12,h),Gr(v,u+16,p);const z=ei(n);if(z){if(z>we)throw new d(Ir);jr(v,u+20,z)}await Hr(c,S),z&&await Hr(c,n)})(this,e,n),Zr(this,n,"preventClose")||await o.getWriter().close(),i.getData?i.getData():o}},e.configure=Te,e.getMimeType=()=>"application/octet-stream",e.initReader=Un,e.initShimAsyncCodec=(e,t={},n)=>({Deflate:Ue(e.Deflate,t.deflate,n),Inflate:Ue(e.Inflate,t.inflate,n)}),e.initStream=In,e.initWriter=Ln,e.readUint8Array=qn,e.terminateWorkers=()=>{en.forEach((e=>{sn(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})})); diff --git a/dist/zip-no-worker-deflate.min.js b/dist/zip-no-worker-deflate.min.js index e539cdcd..ea1a82da 100644 --- a/dist/zip-no-worker-deflate.min.js +++ b/dist/zip-no-worker-deflate.min.js @@ -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:z,TransformStream:k,ReadableStream:v,WritableStream:R,CompressionStream:D,DecompressionStream:E,navigator:A,Worker:T}="undefined"!=typeof globalThis?globalThis:this||self,F=-2;function C(e){return W(e.map((([e,n])=>new t(e).fill(n,0,e))))}function W(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?W(n):n)),[])}const N=[0,1,2,3].concat(...C([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function U(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,s=e.stat_desc.static_tree,a=e.stat_desc.elems;let o,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}U._length_code=[0,1,2,3,4,5,6,7].concat(...C([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),U.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],U.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],U.d_code=e=>256>e?N[e]:N[256+(e>>>7)],U.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],U.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],U.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],U.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const O=C([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=W([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,O[t]])));const M=C([[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=W([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,M[t]]))),I.static_l_desc=new I(I.static_ltree,U.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,U.extra_dbits,0,30,15),I.static_bl_desc=new I(null,U.extra_blbits,0,19,7);const 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)],B=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],q=113,P=666,V=262;function Z(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,z,k,v,R,D,E,A,T,C,W,N,O,M,H;const K=new U,j=new U,X=new U;let Y,G,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)O[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)H[2*t]=0;O[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],++aa?H[2*n]+=a:0!==n?(n!=r&&H[2*n]++,H[32]++):a>10?H[36]++:H[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<>>16-ee,ee+=r-16):($|=e<=n;n++)if(r=a,a=e[2*(n+1)+1],++i>=o||r!=a){if(l>i)do{ie(r,H)}while(0!=--i);else 0!==r?(r!=s&&(ie(r,H),i--),ie(16,H),ae(i-3,2)):i>10?(ie(18,H),ae(i-11,7)):(ie(17,H),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?O[2*n]++:(J++,t--,O[2*(U._length_code[n]+256+1)]++,M[2*U.d_code(t)]++),0==(8191&G)&&T>2){for(r=8*G,s=k-b,a=0;30>a;a++)r+=M[2*a]*(5+U.extra_dbits[a]);if(r>>>=3,Jo);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;T>0?(K.build_tree(e),j.build_tree(e),i=(()=>{let t;for(ne(O,K.max_code),ne(M,j.max_code),X.build_tree(e),t=18;t>=3&&0===H[2*U.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),s=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a>s||(s=a)):s=a=n+5,n+4>s||-1==t?a==s?(ae(2+(r?1:0),3),de(I.static_ltree,I.static_dtree)):(ae(4+(r?1:0),3),((e,t,n)=>{let r;for(ae(e-257,5),ae(t-1,5),ae(n-4,4),r=0;n>r;r++)ae(H[2*U.bl_order[r]+1],3);oe(O,e-1),oe(M,t-1)})(K.max_code+1,j.max_code+1,i+1),de(O,M)):fe(t,n,r),te(),r&&ue()})(0>b?-1:b,k-b,n),b=k,t.flush_pending()}function he(){let e,n,r,s;do{if(s=d-R-k,0===s&&0===k&&0===R)s=a;else if(-1==s)s--;else if(k>=a+a-V){c.set(c.subarray(a,a+a),0),v-=a,k-=a,b-=a,e=g,r=e;do{n=65535&f[--r],f[r]=a>n?0:n-a}while(0!=--e);e=a,r=e;do{n=65535&u[--r],u[r]=a>n?0:n-a}while(0!=--e);s+=a}if(0===t.avail_in)return;e=t.read_buf(c,k+R,s),R+=e,3>R||(w=255&c[k],w=(w<R&&0!==t.avail_in)}function we(e){let t,n,r=E,s=k,i=D;const o=k>a-V?k-(a-V):0;let d=N;const f=l,p=k+258;let h=c[s+i-1],w=c[s+i];W>D||(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=[],O=[],M=[],H=[],e.pqdownheap=(t,n)=>{const r=e.heap,s=r[n];let a=n<<1;for(;a<=e.heap_len&&(a(U||(U=8),B||(B=8),P||(P=0),t.msg=null,-1==S&&(S=6),1>B||B>9||8!=U||9>v||v>15||0>S||S>9||0>P||P>2?F:(t.dstate=e,o=v,a=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=q,s=0,K.dyn_tree=O,K.stat_desc=I.static_l_desc,j.dyn_tree=M,j.stat_desc=I.static_d_desc,X.dyn_tree=H,X.stat_desc=I.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*a,f[g-1]=0;for(let e=0;g-1>e;e++)f[e]=0;A=L[T].max_lazy,W=L[T].good_length,N=L[T].nice_length,E=L[T].max_chain,k=0,b=0,R=0,x=D=2,z=0,w=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=q&&n!=P?F:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,c=null,e.dstate=null,n==q?-3:0),e.deflateParams=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?F:(L[T].func!=L[t].func&&0!==e.total_in&&(r=e.deflate(1)),T!=t&&(T=t,A=L[T].max_lazy,W=L[T].good_length,N=L[T].nice_length,E=L[T].max_chain),C=n,r)},e.deflateSetDictionary=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return F;if(3>i)return 0;for(i>a-V&&(i=a-V,o=r-i),c.set(t.subarray(o,o+i),0),k=i,b=i,w=255&c[0],w=(w<=s;s++)w=(w<{let p,h,m,E,W;if(d>4||0>d)return F;if(!i.next_out||!i.next_in&&0!==i.avail_in||n==P&&4!=d)return i.msg=B[4],F;if(0===i.avail_out)return i.msg=B[7],-5;var N;if(t=i,E=s,s=d,42==n&&(h=8+(o-8<<4)<<8,m=(T-1&255)>>1,m>3&&(m=3),h|=m<<6,0!==k&&(h|=32),h+=31-h%31,n=q,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&&E>=d&&4!=d)return t.msg=B[7],-5;if(n==P&&0!==t.avail_in)return i.msg=B[7],-5;if(0!==t.avail_in||0!==R||0!=d&&n!=P){switch(W=-1,L[T].func){case 0:W=(e=>{let n,s=65535;for(s>r-5&&(s=r-5);;){if(1>=R){if(he(),0===R&&0==e)return 0;if(0===R)break}if(k+=R,R=0,n=b+s,(0===k||k>=n)&&(R=k-n,k=n,pe(!1),0===t.avail_out))return 0;if(k-b>=a-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<a-V||2!=C&&(x=we(r)),3>x)n=ce(0,255&c[k]),R--,k++;else if(n=ce(k-v,x-3),R-=x,x>A||3>R)k+=x,x=0,w=255&c[k],w=(w<{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<D&&a-V>=(k-s&65535)&&(2!=C&&(x=we(s)),5>=x&&(1==C||3==x&&k-v>4096)&&(x=2)),3>D||x>D)if(0!==z){if(n=ce(0,255&c[k-1]),n&&pe(!1),k++,R--,0===t.avail_out)return 0}else z=1,k++,R--;else{r=k+R-3,n=ce(k-1-S,D-3),R-=D-1,D-=2;do{++k>r||(w=(w<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 j(){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}j.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):F},deflateEnd(){const e=this;if(!e.dstate)return F;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):F},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):F},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,G=new o(2107,11,31),J=new o(1980,0,1),Q=void 0,$="undefined",ee="function";class te{constructor(e){return class extends k{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 ne=2;try{typeof A!=$&&A.hardwareConcurrency&&(ne=A.hardwareConcurrency)}catch(e){}const re={chunkSize:524288,maxWorkers:ne,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:Q,CompressionStreamNative:typeof D!=$&&D,DecompressionStreamNative:typeof E!=$&&E},se=n.assign({},re);function ae(){return se}function ie(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(oe("baseURL",n),oe("chunkSize",r),oe("maxWorkers",s),oe("terminateWorkerTimeout",a),oe("useCompressionStream",i),oe("useWebWorkers",o),l&&(se.CompressionStream=new te(l)),c&&(se.DecompressionStream=new te(c)),oe("CompressionStream",d),oe("DecompressionStream",u),p!==Q){const{deflate:e,inflate:n}=p;if((e||n)&&(se.workerScripts||(se.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");se.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");se.workerScripts.inflate=n}}}function oe(e,t){t!==Q&&(se[e]=t)}const le=[];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;le[e]=t}class ce{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^le[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class de extends k{constructor(){let e;const t=new ce;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new p(4);new g(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function ue(e){if(void 0===y){const t=new p((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=fe.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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,a=fe.getPartial(s);return r.push(fe.partial(t+a&31,t+a>32?n:r.pop(),1)),r}},pe={bytes:{fromBits(e){const t=fe.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;n9007199254740991)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=fe.concat(t,[fe.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}_f(e,t,n,r){return 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){return 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}},we={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;snew ge.hmacSha1(pe.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=fe;for(t=pe.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;lp&&os&&(e=(new n).update(e).finalize());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)}}},me=void 0!==S&&"function"==typeof S.getRandomValues,_e="Invalid password",ye="Invalid signature",be="zipjs-abort-check-password";function xe(e){return me?S.getRandomValues(e):we.getRandomValues(e)}const Se=16,ze={name:"PBKDF2"},ke=n.assign({hash:{name:"HMAC"}},ze),ve=n.assign({iterations:1e3,hash:{name:"SHA-1"}},ze),Re=["deriveBits"],De=[8,12,16],Ee=[16,24,32],Ae=10,Te=[0,0,0,0],Fe="undefined",Ce="function",We=typeof S!=Fe,Ne=We&&S.subtle,Ue=We&&typeof Ne!=Fe,Ie=pe.bytes,Oe=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}},Me=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=fe.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 fe.clamp(t,s)}},He=ge.hmacSha1;let Le=We&&Ue&&typeof Ne.importKey==Ce,Be=We&&Ue&&typeof Ne.deriveBits==Ce;class qe extends k{constructor({password:e,signed:t,encryptionStrength:r,checkPasswordOnly:s}){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:a,resolveReady:i,ready:o}=n;r?(await(async(e,t,n,r)=>{const s=await Ze(e,t,n,je(r,0,De[t])),a=je(r,De[t]);if(s[0]!=a[0]||s[1]!=a[1])throw new f(_e)})(n,a,r,je(e,0,De[a]+2)),e=je(e,De[a]+2),s?t.error(new f(be)):i()):await o;const l=new p(e.length-Ae-(e.length-Ae)%Se);t.enqueue(Ve(n,e,l,0,Ae,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:a}=this;await a;const i=je(s,0,s.length-Ae),o=je(s,s.length-Ae);let l=new p;if(i.length){const e=Ye(Ie,i);r.update(e);const t=n.update(e);l=Xe(Ie,t)}if(t){const e=je(Xe(Ie,r.digest()),0,Ae);for(let t=0;Ae>t;t++)if(e[t]!=o[t])throw new f(ye)}e.enqueue(l)}})}}class Pe extends k{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=xe(new p(De[t]));return Ke(r,await Ze(e,t,n,r))})(n,s,r),a()):await i;const l=new p(o.length+e.length-e.length%Se);l.set(o,0),t.enqueue(Ve(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(Ye(Ie,s));n.update(e),i=Xe(Ie,e)}r.signature=Xe(Ie,n.digest()).slice(0,Ae),e.enqueue(Ke(i,r.signature))}}),r=this}}function Ve(e,t,n,r,s,a){const{ctr:i,hmac:o,pending:l}=e,c=t.length-s;let d;for(l.length&&(t=Ke(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%Se)),d=0;c-Se>=d;d+=Se){const e=Ye(Ie,je(t,d,d+Se));a&&o.update(e);const s=i.update(e);a||o.update(s),n.set(Xe(Ie,s),d+r)}return e.pending=je(t,d),n}async function Ze(e,r,s,a){e.password=null;const i=ue(s),o=await(async(e,t,n,r,s)=>{if(!Le)return ge.importKey(t);try{return await Ne.importKey("raw",t,n,!1,s)}catch(e){return Le=!1,ge.importKey(t)}})(0,i,ke,0,Re),l=await(async(e,t,n)=>{if(!Be)return ge.pbkdf2(t,e.salt,ve.iterations,n);try{return await Ne.deriveBits(e,t,n)}catch(r){return Be=!1,ge.pbkdf2(t,e.salt,ve.iterations,n)}})(n.assign({salt:a},ve),o,8*(2*Ee[r]+2)),c=new p(l),d=Ye(Ie,je(c,0,Ee[r])),u=Ye(Ie,je(c,Ee[r],2*Ee[r])),f=je(c,2*Ee[r]);return n.assign(e,{keys:{key:d,authentication:u,passwordVerification:f},ctr:new Me(new Oe(d),t.from(Te)),hmac:new He(u)}),f}function Ke(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 je(e,t,n){return e.subarray(t,n)}function Xe(e,t){return e.fromBits(t)}function Ye(e,t){return e.toBits(t)}class Ge extends k{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),et(this,e)},transform(e,t){const n=this;if(n.password){const t=Qe(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(_e);e=e.subarray(12)}r?t.error(new f(be)):t.enqueue(Qe(n,e))}})}}class Je extends k{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),et(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=xe(new p(12));t[11]=n.passwordVerification,r=new p(e.length+t.length),r.set($e(n,t),0),s=12}else r=new p(e.length),s=0;r.set($e(n,e),s),t.enqueue(r)}})}}function Qe(e,t){const n=new p(t.length);for(let r=0;r>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function nt(e){const t=2|e.keys[2];return rt(i.imul(t,1^t)>>>8)}function rt(e){return 255&e}function st(e){return 4294967295&e}const at="deflate-raw";class it extends k{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=lt(super.readable);a&&!o||!l||(u=new de,p=ut(p,u)),s&&(p=dt(p,i,{level:c,chunkSize:t},r,n)),a&&(o?p=ut(p,new Je(e)):(f=new Pe(e),p=ut(p,f))),ct(d,p,(async()=>{let e;a&&!o&&(e=f.signature),a&&!o||!l||(e=new g(u.value.buffer).getUint32(0)),d.signature=e}))}}class ot extends k{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=lt(super.readable);a&&(s?p=ut(p,new Ge(e)):(u=new qe(e),p=ut(p,u))),l&&(p=dt(p,c,{chunkSize:t},r,n)),a&&!s||!i||(d=new de,p=ut(p,d)),ct(this,p,(async()=>{if((!a||s)&&i){const e=new g(d.value.buffer);if(o!=e.getUint32(0,!1))throw new f(ye)}}))}}function lt(e){return ut(e,new k({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ct(e,t,r){t=ut(t,new k({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function dt(e,t,n,r,s){try{e=ut(e,new(t&&r?r:s)(at,n))}catch(r){if(!t)throw r;e=ut(e,new s(at,n))}return e}function ut(e,t){return e.pipeThrough(t)}const ft="data",pt="deflate";class ht extends k{constructor(e,t){super({});const r=this,{codecType:s}=e;let a;s.startsWith(pt)?a=it:s.startsWith("inflate")&&(a=ot);let i=0;const o=new a(e,t),l=super.readable,c=new k({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 wt=typeof T!=$;class gt{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 mt(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&&wt?bt:yt)(e,a)}}class mt extends k{constructor(e,{onstart:t,onprogress:n,size:r,onend:s},{chunkSize:a}){let i=0;super({start(){t&&_t(t,r)},async transform(e,t){i+=e.length,n&&await _t(n,i,r),t.enqueue(e)},flush(){e.size=i,s&&_t(s,i)}},{highWaterMark:1,size:()=>a})}}async function _t(e,...t){try{await e(...t)}catch(e){}}function yt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{const a=new ht(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 bt(e,{baseURL:t,chunkSize:r}){return e.interface||n.assign(e,{worker:zt(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);kt({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.getWriter().close()}catch(e){}return await d,u})(e,{chunkSize:r})}}),e.interface}let xt=!0,St=!0;function zt(e,t,r){const s={type:"module"};let a,i;typeof e==ee&&(e=e());try{a=new u(e,t)}catch(t){a=e}if(xt)try{i=new T(a)}catch(e){xt=!1,i=new T(a,s)}else i=new T(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();kt({type:ft,value:e,done:n,messageId:a},t)}r==ft&&(await c.ready,await c.write(new p(s)),kt({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 kt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{let{value:n,readable:r,writable:a}=e;const i=[];if(n&&(e.value=n.buffer,i.push(e.value)),s&&St?(r&&i.push(r),a&&i.push(a)):e.readable=e.writable=null,i.length)try{return t.postMessage(e,i),!0}catch(n){St=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let vt=[];const Rt=[];let Dt=0;function Et(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const At="HTTP error ",Tt="HTTP Range not supported",Ft="Writer iterator completed too soon",Ct="GET",Wt="bytes",Nt=65536,Ut="writable";class It{constructor(){this.size=0}init(){this.initialized=!0}}class Ot extends It{get readable(){const e=this,{chunkSize:t=Nt}=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 on(e,s+l,i.min(t,a-l),o)),l+t>a?r.close():this.chunkOffset+=t}});return n}}class Mt extends It{constructor(){super();const e=this,t=new R({write:t=>e.writeUint8Array(t)});n.defineProperty(e,Ut,{get:()=>t})}writeUint8Array(){}}class Ht extends Ot{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||rt&&(a=a.slice(e,r)),new p(a)}}class Lt extends It{constructor(e){super();const t=new k,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,Ut,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Bt extends Ot{constructor(e,t){super(),Pt(this,e,t)}async init(){await Vt(this,Qt,Xt),super.init()}readUint8Array(e,t){return Zt(this,e,t,Qt,Xt)}}class qt extends Ot{constructor(e,t){super(),Pt(this,e,t)}async init(){await Vt(this,$t,Yt),super.init()}readUint8Array(e,t){return Zt(this,e,t,$t,Yt)}}function Pt(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 Vt(e,t,n){const{url:r,useRangeHeader:a,forceRangeRequests:i}=e;if((e=>{const{baseURL:t}=ae(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(r)&&(a||i)){const{headers:r}=await t(Ct,e,Kt(e));if(!i&&r.get("Accept-Ranges")!=Wt)throw new f(Tt);{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===Q?await Jt(e,t,n):e.size=a}}else await Jt(e,t,n)}async function Zt(e,t,n,r,s){const{useRangeHeader:a,forceRangeRequests:i,options:o}=e;if(a||i){const s=await r(Ct,e,Kt(e,t,n));if(206!=s.status)throw new f(Tt);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 Kt(e,t=0,r=1){return n.assign({},jt(e),{Range:Wt+"="+t+"-"+(t+r-1)})}function jt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Xt(e){await Gt(e,Qt)}async function Yt(e){await Gt(e,$t)}async function Gt(e,t){const n=await t(Ct,e,jt(e));e.data=new p(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Jt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,jt(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function Qt(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(Tt):new f(At+(a.statusText||a.status))}function $t(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(Tt):new f(At+(i.statusText||i.status)))}),!1),i.addEventListener("error",(e=>a(e.detail?e.detail.error:new f("Network 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 en extends Ot{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new qt(e,t):new Bt(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class tn extends Ot{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await _.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}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 on(c,l,s)),a.set(await r.readUint8Array(e+s,t-s,n),s)}else a=await on(c,l,t);return r.lastDiskNumber=i.max(o,r.lastDiskNumber),a}}class nn extends It{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.lengtho})}}async function rn(e,t){e.init&&!e.initialized&&await e.init(t)}function sn(e){return t.isArray(e)&&(e=new tn(e)),e instanceof v&&(e={readable:e}),e}function an(e){e.writable===Q&&typeof e.next==ee&&(e=new nn(e)),e instanceof R&&(e={writable:e});const{writable:t}=e;return t.size===Q&&(t.size=0),e instanceof nn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function on(e,t,n,r){return e.readUint8Array(t,n,r)}const ln=tn,cn=nn,dn="diskNumberStart",un="lastModDate",fn="lastAccessDate",pn="creationDate",hn="internalFileAttribute",wn="externalFileAttribute",gn="msDosCompatible",mn="zip64",_n=["filename","rawFilename","compressedSize","uncompressedSize",un,"rawLastModDate","comment","rawComment",fn,pn,"offset",dn,dn,hn,wn,gn,mn,"directory","bitFlag","encrypted","signature","filenameUTF8","commentUTF8","compressionMethod","version","versionMadeBy","extraField","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class yn{constructor(e){_n.forEach((t=>this[t]=e[t]))}}const bn="File already exists",xn="Zip file comment exceeds 64KB",Sn="File entry comment exceeds 64KB",zn="File entry name exceeds 64KB",kn="Version exceeds 65535",vn="The strength must equal 1, 2, or 3",Rn="Extra field type exceeds 65535",Dn="Extra field data exceeds 64KB",En="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",An=new p([7,0,2,0,65,69,3,0,0]);let Tn=0;const Fn=[];async function Cn(e,t){const n=e.getWriter();await n.ready,e.size+=Bn(t),await n.write(t),n.releaseLock()}function Wn(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function Nn(e,t,n,r){const s=t[n]===Q?e.options[n]:t[n];return s===Q?r:s}function Un(e,t,n){e.setUint8(t,n)}function In(e,t,n){e.setUint16(t,n,!0)}function On(e,t,n){e.setUint32(t,n,!0)}function Mn(e,t,n){e.setBigUint64(t,n,!0)}function Hn(e,t,n){e.set(t,n)}function Ln(e){return new g(e.buffer)}function Bn(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}ie({Deflate:function(e){const t=new j,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.subarray(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(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=Ht,e.BlobWriter=Lt,e.Data64URIReader=class extends Ot{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 Mt{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(;n2?t.data+=z(s):t.pending=s}getData(){return this.data+z(this.pending)}},e.ERR_DUPLICATED_NAME=bn,e.ERR_HTTP_RANGE=Tt,e.ERR_INVALID_COMMENT=xn,e.ERR_INVALID_ENCRYPTION_STRENGTH=vn,e.ERR_INVALID_ENTRY_COMMENT=Sn,e.ERR_INVALID_ENTRY_NAME=zn,e.ERR_INVALID_EXTRAFIELD_DATA=Dn,e.ERR_INVALID_EXTRAFIELD_TYPE=Rn,e.ERR_INVALID_VERSION=kn,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Ft,e.ERR_UNSUPPORTED_FORMAT=En,e.HttpRangeReader=class extends en{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=en,e.Reader=Ot,e.SplitDataReader=tn,e.SplitDataWriter=nn,e.SplitZipReader=ln,e.SplitZipWriter=cn,e.TextReader=class extends Ht{constructor(e){super(new m([e],{type:"text/plain"}))}},e.TextWriter=class extends Lt{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 Ot{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 Mt{init(e=0){n.assign(this,{offset:0,array:new p(e)}),super.init()}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=Mt,e.ZipWriter=class{constructor(e,t={}){e=an(e),n.assign(this,{writer:e,addSplitZipSignature:e instanceof nn,options:t,config:ae(),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;TnFn.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new f(bn);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=ue(r);if(Bn(d)>Y)throw new f(zn);const u=c.comment||"",m=ue(u);if(Bn(m)>Y)throw new f(Sn);const y=Nn(e,c,"version",20);if(y>Y)throw new f(kn);const b=Nn(e,c,"versionMadeBy",20);if(b>Y)throw new f(kn);const x=Nn(e,c,un,new o),S=Nn(e,c,fn),z=Nn(e,c,pn),k=Nn(e,c,gn,!0),v=Nn(e,c,hn,0),R=Nn(e,c,wn,0),D=Nn(e,c,"password"),E=Nn(e,c,"encryptionStrength",3),A=Nn(e,c,"zipCrypto"),T=Nn(e,c,"extendedTimestamp",!0),F=Nn(e,c,"keepOrder",!0),C=Nn(e,c,"level"),W=Nn(e,c,"useWebWorkers"),N=Nn(e,c,"bufferedWrite"),U=Nn(e,c,"dataDescriptorSignature",!1),I=Nn(e,c,"signal"),O=Nn(e,c,"useCompressionStream");let M=Nn(e,c,"dataDescriptor",!0),H=Nn(e,c,mn);if(D!==Q&&E!==Q&&(1>E||E>3))throw new f(vn);let L=new p;const{extraField:B}=c;if(B){let e=0,t=0;B.forEach((t=>e+=4+Bn(t))),L=new p(e),B.forEach(((e,n)=>{if(n>Y)throw new f(Rn);if(Bn(e)>Y)throw new f(Dn);Hn(L,new h([n]),t),Hn(L,new h([Bn(e)]),t+2),Hn(L,e,t+4),t+=4+Bn(e)}))}let q=0,P=0,V=0;const Z=!0===H;l&&(l=sn(l),await rn(l),l.size===Q?(M=!0,(H||H===Q)&&(H=!0,V=q=X)):(V=l.size,q=(e=>e+5*(i.floor(e/16383)+1))(V)));const{diskOffset:K,diskNumber:j,maxSize:$}=e.writer,ee=Z||V>=X,te=Z||q>=X,ne=Z||e.offset+e.pendingEntriesSize-K>=X,re=Nn(e,c,"supportZip64SplitFile",!0)&&Z||j+i.ceil(e.pendingEntriesSize/$)>=Y;if(ne||ee||te||re){if(!1===H||!F)throw new f(En);H=!0}H=H||!1;const se=(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||!Bn(a));let y,b,x,S=e.version;if(_&&!c){y=new p(Bn(An)+2);const e=Ln(y);In(e,0,39169),Hn(y,An,2),Un(e,8,h)}else y=new p;if(g){x=new p(9+(r?4:0)+(s?4:0));const e=Ln(x);In(e,0,21589),In(e,2,Bn(x)-4),Un(e,4,1+(r?2:0)+(s?4:0)),On(e,5,i.floor(n.getTime()/1e3)),r&&On(e,9,i.floor(r.getTime()/1e3)),s&&On(e,13,i.floor(s.getTime()/1e3));try{b=new p(36);const e=Ln(b),t=Wn(n);In(e,0,10),In(e,2,32),In(e,8,1),In(e,10,24),Mn(e,12,t),Mn(e,20,Wn(r)||t),Mn(e,28,Wn(s)||t)}catch(e){b=new p}}else b=x=new p;let z=2048;d&&(z|=8);let k=0;m&&(k=8),l&&(S=S>45?S:45),_&&(z|=1,c||(S=S>51?S:51,k=99,m&&(y[9]=8)));const v=new p(26),R=Ln(v);In(R,0,S),In(R,2,z),In(R,4,k);const D=new w(1),E=Ln(D);let A;A=J>n?J:n>G?G:n,In(E,0,(A.getHours()<<6|A.getMinutes())<<5|A.getSeconds()/2),In(E,2,(A.getFullYear()-1980<<4|A.getMonth()+1)<<5|A.getDate());const T=D[0];On(R,6,T),In(R,22,Bn(t));const F=Bn(y,x,b,f);In(R,24,F);const C=new p(30+Bn(t)+F);return On(Ln(C),0,67324752),Hn(C,v,4),Hn(C,t,30),Hn(C,y,30+Bn(t)),Hn(C,x,30+Bn(t,y)),Hn(C,b,30+Bn(t,y,x)),Hn(C,f,30+Bn(t,y,x,b)),{localHeaderArray:C,headerArray:v,headerView:R,lastModDate:n,rawLastModDate:T,encrypted:_,compressed:m,version:S,compressionMethod:k,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:b,rawExtraFieldAES:y}})(c=n.assign({},c,{rawFilename:d,rawComment:m,version:y,versionMadeBy:b,lastModDate:x,lastAccessDate:S,creationDate:z,rawExtraField:L,zip64:H,zip64UncompressedSize:ee,zip64CompressedSize:te,zip64Offset:ne,zip64DiskNumberStart:re,password:D,level:C,useWebWorkers:W,encryptionStrength:E,extendedTimestamp:T,zipCrypto:A,bufferedWrite:N,keepOrder:F,dataDescriptor:M,dataDescriptorSignature:U,signal:I,msDosCompatible:k,internalFileAttribute:v,externalFileAttribute:R,useCompressionStream:O})),ae=(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=Ln(a),r&&(i=4,On(s,0,134695760))),{dataDescriptorArray:a,dataDescriptorView:s,dataDescriptorOffset:i}})(c);let ie;P=Bn(se.localHeaderArray,ae.dataDescriptorArray)+q,e.pendingEntriesSize+=P;try{ie=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,z,k,v,R,D={};d.set(r,D);try{let t;h&&(t=b&&b.lock,D.lock=new _((e=>z=e))),c.bufferedWrite||e.writerLocked||e.bufferedWrites&&h||!w?(R=new Lt,R.writable.size=0,x=!0,e.bufferedWrites++,await rn(u)):(R=u,await E()),await rn(R);const{writable:y}=u;let{diskOffset:T}=u;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new p(4);On(Ln(t),0,134695760),await Cn(y,t),e.offset+=4}x||(await t,await A(y));const{diskNumber:F}=u;if(v=!0,D.diskNumberStart=F,D=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:z,rawExtraFieldNTFS:k,rawExtraFieldAES:v}=u,{dataDescriptorArray:R}=f,{rawFilename:D,lastAccessDate:E,creationDate:A,password:T,level:F,zip64:C,zip64UncompressedSize:W,zip64CompressedSize:N,zip64Offset:U,zip64DiskNumberStart:I,zipCrypto:O,dataDescriptor:M,directory:H,versionMadeBy:L,rawComment:B,rawExtraField:q,useWebWorkers:P,onstart:V,onprogress:Z,onend:K,signal:j,encryptionStrength:Y,extendedTimestamp:G,msDosCompatible:J,internalFileAttribute:$,externalFileAttribute:ee,useCompressionStream:te}=d,ne={lock:o,versionMadeBy:L,zip64:C,directory:!!H,filenameUTF8:!0,rawFilename:D,commentUTF8:!0,rawComment:B,rawExtraFieldExtendedTimestamp:z,rawExtraFieldNTFS:k,rawExtraFieldAES:v,rawExtraField:q,extendedTimestamp:G,msDosCompatible:J,internalFileAttribute:$,externalFileAttribute:ee,diskNumberStart:r};let re,se=0,ae=0;const{writable:ie}=t;if(e){e.chunkSize=(e=>i.max(e.chunkSize,64))(c),await Cn(ie,h);const t=e.readable,n=t.size=e.size,r={options:{codecType:pt,level:F,password:T,encryptionStrength:Y,zipCrypto:y&&O,passwordVerification:y&&O&&m>>8&255,signed:!0,compressed:b,encrypted:y,useWebWorkers:P,useCompressionStream:te,transferStreams:!1},config:c,streamOptions:{signal:j,size:n,onstart:V,onprogress:Z,onend:K}},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===Q;const w=!(c||d||u||t.transferStreams);let g;t.useWebWorkers=!w&&(i||i===Q&&r.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[l]:[],n.useCompressionStream=o||o===Q&&r.useCompressionStream;const m=vt.find((e=>!e.busy));if(m)Et(m),g=new gt(m,e,t,y);else if(vt.lengthRt.push({resolve:n,stream:e,workerOptions:t})));return g.run();function y(e){if(Rt.length){const[{resolve:t,stream:n,workerOptions:r}]=Rt.splice(0,1);t(new gt(e,n,r,y))}else e.worker?(Et(e),s.isFinite(h)&&h>=0&&(e.terminateTimeout=setTimeout((()=>{vt=vt.filter((t=>t!=e)),e.terminate()}),h))):vt=vt.filter((t=>t!=e))}})({readable:t,writable:ie},r);ie.size+=a.size,re=a.signature,ae=e.size=t.size,se=a.size}else await Cn(ie,h);let oe;if(C){let e=4;W&&(e+=8),N&&(e+=8),U&&(e+=8),I&&(e+=4),oe=new p(e)}else oe=new p;return((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,zip64UncompressedSize:h,zip64CompressedSize:w,zipCrypto:g,dataDescriptor:m}=t;if(d&&!g||n===Q||(On(c,10,n),m&&On(u,f,n)),p){const e=Ln(r);In(e,0,1),In(e,2,r.length-4);let t=4;h&&(On(c,18,X),Mn(e,t,a(i)),t+=8),w&&(On(c,14,X),Mn(e,t,a(s))),m&&(Mn(u,f+4,a(s)),Mn(u,f+12,a(i)))}else On(c,14,s),On(c,18,i),m&&(On(u,f+4,s),On(u,f+8,i))})({signature:re,rawExtraFieldZip64:oe,compressedSize:se,uncompressedSize:ae,headerInfo:u,dataDescriptorInfo:f},d),M&&await Cn(ie,R),n.assign(ne,{uncompressedSize:ae,compressedSize:se,lastModDate:g,rawLastModDate:m,creationDate:A,lastAccessDate:E,encrypted:y,length:Bn(h,R)+se,compressionMethod:S,version:x,headerArray:w,signature:re,rawExtraFieldZip64:oe,zip64UncompressedSize:W,zip64CompressedSize:N,zip64Offset:U,zip64DiskNumberStart:I}),ne})(o,R,D,l,e.config,c),v=!1,d.set(r,D),D.filename=r,x){await R.writable.getWriter().close();let e=await R.getData();await t,await E(),k=!0,w||(e=await(async(e,t,n,{zipCrypto:r})=>{let s;s=await t.slice(0,26).arrayBuffer(),26!=s.byteLength&&(s=s.slice(0,26));const a=new g(s);return e.encrypted&&!r||On(a,14,e.signature),e.zip64?(On(a,18,X),On(a,22,X)):(On(a,18,e.compressedSize),On(a,22,e.uncompressedSize)),await Cn(n,new p(s)),t.slice(s.byteLength)})(D,e,y,c)),await A(y),D.diskNumberStart=u.diskNumber,T=u.diskOffset,await e.stream().pipeTo(y,{preventClose:!0,preventAbort:!0,signal:m}),y.size+=e.size,k=!1}if(D.offset=e.offset-T,D.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:s}=e,{zip64UncompressedSize:i,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,d=Ln(n);let u=4;i&&(u+=8),o&&(u+=8),l&&(Mn(d,u,a(r)),u+=8),c&&On(d,u,s)})(D,c);else if(D.offset>=X)throw new f(En);return e.offset+=D.length,D}catch(t){if(x&&k||!x&&v){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}x?e.offset+=R.writable.size:e.offset=R.writable.size}throw d.delete(r),t}finally{x&&e.bufferedWrites--,z&&z(),S&&S()}async function E(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new _((t=>S=()=>{e.writerLocked=!1,t()})),await t}async function A(e){y.localHeaderArray.length>u.availableSize&&(u.availableSize=0,await Cn(e,new p))}})(e,r,l,{headerInfo:se,dataDescriptorInfo:ae},c)}finally{e.pendingEntriesSize-=P}return n.assign(ie,{name:r,comment:u,extraField:B}),new yn(ie)})(c,e,r,l),d.add(m),await m}catch(t){throw c.filenames.delete(e),t}finally{d.delete(m);const e=Fn.shift();e?e():Tn--}}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+Bn(e,a,t,n,i,o,r);const m=new p(h),_=Ln(m);await rn(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,zip64UncompressedSize:z,zip64CompressedSize:k,zip64DiskNumberStart:v,zip64Offset:R,msDosCompatible:D,internalFileAttribute:E,externalFileAttribute:A,extendedTimestamp:T,lastModDate:F,diskNumberStart:C,uncompressedSize:W,compressedSize:N}=n;let U;if(T){U=new p(9);const e=Ln(U);In(e,0,21589),In(e,2,Bn(U)-4),Un(e,4,1),On(e,5,i.floor(F.getTime()/1e3))}else U=new p;const I=Bn(l,d,U,f,h);On(_,u,33639248),In(_,u+4,g);const O=Ln(b);z||On(O,18,W),k||On(O,14,N),Hn(m,b,u+6),In(_,u+30,I),In(_,u+32,Bn(w)),In(_,u+34,S&&v?Y:C),In(_,u+36,E),A?On(_,u+38,A):x&&D&&Un(_,u+38,16),On(_,u+42,S&&R?X:t),Hn(m,a,u+46),Hn(m,l,u+46+Bn(a)),Hn(m,d,u+46+Bn(a,l)),Hn(m,U,u+46+Bn(a,l,d)),Hn(m,f,u+46+Bn(a,l,d,U)),Hn(m,h,u+46+Bn(a,l,d,U,f)),Hn(m,w,u+46+Bn(a)+I);const M=46+Bn(a,w)+I;if(u-y>o.availableSize&&(o.availableSize=0,await Cn(c,m.slice(y,u)),y=u),u+=M,r.onprogress)try{await r.onprogress(e+1,s.size,new yn(n))}catch(e){}}await Cn(c,y?m.slice(y):m);let b=o.diskNumber;const{availableSize:x}=o;22>x&&b++;let S=Nn(e,r,"zip64");if(!(X>w&&X>h&&Y>g&&Y>b)){if(!1===S)throw new f(En);S=!0}const z=new p(S?98:22),k=Ln(z);u=0,S&&(On(k,0,101075792),Mn(k,4,a(44)),In(k,12,45),In(k,14,45),On(k,16,b),On(k,20,d),Mn(k,24,a(g)),Mn(k,32,a(g)),Mn(k,40,a(h)),Mn(k,48,a(w)),On(k,56,117853008),Mn(k,64,a(w)+a(h)),On(k,72,b+1),Nn(e,r,"supportZip64SplitFile",!0)&&(b=Y,d=Y),g=Y,w=X,h=X,u+=76),On(k,u,101010256),In(k,u+4,b),In(k,u+6,d),In(k,u+8,g),In(k,u+10,g),On(k,u+12,h),On(k,u+16,w);const v=Bn(n);if(v){if(v>Y)throw new f(xn);In(k,u+20,v)}await Cn(c,z),v&&await Cn(c,n)})(this,e,n),Nn(this,n,"preventClose")||await o.getWriter().close(),s.getData?s.getData():o}},e.configure=ie,e.getMimeType=()=>"application/octet-stream",e.initReader=sn,e.initStream=rn,e.initWriter=an,e.readUint8Array=on,e.terminateWorkers=()=>{vt.forEach((e=>{Et(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})})); +((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:z,TransformStream:k,ReadableStream:v,WritableStream:R,CompressionStream:D,DecompressionStream:E,navigator:A,Worker:T}="undefined"!=typeof globalThis?globalThis:this||self,F=-2;function C(e){return W(e.map((([e,n])=>new t(e).fill(n,0,e))))}function W(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?W(n):n)),[])}const N=[0,1,2,3].concat(...C([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function U(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,s=e.stat_desc.static_tree,a=e.stat_desc.elems;let o,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}U._length_code=[0,1,2,3,4,5,6,7].concat(...C([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),U.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],U.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],U.d_code=e=>256>e?N[e]:N[256+(e>>>7)],U.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],U.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],U.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],U.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const O=C([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=W([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,O[t]])));const M=C([[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=W([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,M[t]]))),I.static_l_desc=new I(I.static_ltree,U.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,U.extra_dbits,0,30,15),I.static_bl_desc=new I(null,U.extra_blbits,0,19,7);const 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)],B=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],q=113,P=666,V=262;function Z(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,z,k,v,R,D,E,A,T,C,W,N,O,M,H;const K=new U,j=new U,X=new U;let Y,G,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)O[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)H[2*t]=0;O[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],++aa?H[2*n]+=a:0!==n?(n!=r&&H[2*n]++,H[32]++):a>10?H[36]++:H[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<>>16-ee,ee+=r-16):($|=e<=n;n++)if(r=a,a=e[2*(n+1)+1],++i>=o||r!=a){if(l>i)do{ie(r,H)}while(0!=--i);else 0!==r?(r!=s&&(ie(r,H),i--),ie(16,H),ae(i-3,2)):i>10?(ie(18,H),ae(i-11,7)):(ie(17,H),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?O[2*n]++:(J++,t--,O[2*(U._length_code[n]+256+1)]++,M[2*U.d_code(t)]++),0==(8191&G)&&T>2){for(r=8*G,s=k-b,a=0;30>a;a++)r+=M[2*a]*(5+U.extra_dbits[a]);if(r>>>=3,Jo);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;T>0?(K.build_tree(e),j.build_tree(e),i=(()=>{let t;for(ne(O,K.max_code),ne(M,j.max_code),X.build_tree(e),t=18;t>=3&&0===H[2*U.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),s=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a>s||(s=a)):s=a=n+5,n+4>s||-1==t?a==s?(ae(2+(r?1:0),3),de(I.static_ltree,I.static_dtree)):(ae(4+(r?1:0),3),((e,t,n)=>{let r;for(ae(e-257,5),ae(t-1,5),ae(n-4,4),r=0;n>r;r++)ae(H[2*U.bl_order[r]+1],3);oe(O,e-1),oe(M,t-1)})(K.max_code+1,j.max_code+1,i+1),de(O,M)):fe(t,n,r),te(),r&&ue()})(0>b?-1:b,k-b,n),b=k,t.flush_pending()}function he(){let e,n,r,s;do{if(s=d-R-k,0===s&&0===k&&0===R)s=a;else if(-1==s)s--;else if(k>=a+a-V){c.set(c.subarray(a,a+a),0),v-=a,k-=a,b-=a,e=g,r=e;do{n=65535&f[--r],f[r]=a>n?0:n-a}while(0!=--e);e=a,r=e;do{n=65535&u[--r],u[r]=a>n?0:n-a}while(0!=--e);s+=a}if(0===t.avail_in)return;e=t.read_buf(c,k+R,s),R+=e,3>R||(w=255&c[k],w=(w<R&&0!==t.avail_in)}function we(e){let t,n,r=E,s=k,i=D;const o=k>a-V?k-(a-V):0;let d=N;const f=l,p=k+258;let h=c[s+i-1],w=c[s+i];W>D||(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=[],O=[],M=[],H=[],e.pqdownheap=(t,n)=>{const r=e.heap,s=r[n];let a=n<<1;for(;a<=e.heap_len&&(a(U||(U=8),B||(B=8),P||(P=0),t.msg=null,-1==S&&(S=6),1>B||B>9||8!=U||9>v||v>15||0>S||S>9||0>P||P>2?F:(t.dstate=e,o=v,a=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=q,s=0,K.dyn_tree=O,K.stat_desc=I.static_l_desc,j.dyn_tree=M,j.stat_desc=I.static_d_desc,X.dyn_tree=H,X.stat_desc=I.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*a,f[g-1]=0;for(let e=0;g-1>e;e++)f[e]=0;A=L[T].max_lazy,W=L[T].good_length,N=L[T].nice_length,E=L[T].max_chain,k=0,b=0,R=0,x=D=2,z=0,w=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=q&&n!=P?F:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,c=null,e.dstate=null,n==q?-3:0),e.deflateParams=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?F:(L[T].func!=L[t].func&&0!==e.total_in&&(r=e.deflate(1)),T!=t&&(T=t,A=L[T].max_lazy,W=L[T].good_length,N=L[T].nice_length,E=L[T].max_chain),C=n,r)},e.deflateSetDictionary=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return F;if(3>i)return 0;for(i>a-V&&(i=a-V,o=r-i),c.set(t.subarray(o,o+i),0),k=i,b=i,w=255&c[0],w=(w<=s;s++)w=(w<{let p,h,m,E,W;if(d>4||0>d)return F;if(!i.next_out||!i.next_in&&0!==i.avail_in||n==P&&4!=d)return i.msg=B[4],F;if(0===i.avail_out)return i.msg=B[7],-5;var N;if(t=i,E=s,s=d,42==n&&(h=8+(o-8<<4)<<8,m=(T-1&255)>>1,m>3&&(m=3),h|=m<<6,0!==k&&(h|=32),h+=31-h%31,n=q,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&&E>=d&&4!=d)return t.msg=B[7],-5;if(n==P&&0!==t.avail_in)return i.msg=B[7],-5;if(0!==t.avail_in||0!==R||0!=d&&n!=P){switch(W=-1,L[T].func){case 0:W=(e=>{let n,s=65535;for(s>r-5&&(s=r-5);;){if(1>=R){if(he(),0===R&&0==e)return 0;if(0===R)break}if(k+=R,R=0,n=b+s,(0===k||k>=n)&&(R=k-n,k=n,pe(!1),0===t.avail_out))return 0;if(k-b>=a-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<a-V||2!=C&&(x=we(r)),3>x)n=ce(0,255&c[k]),R--,k++;else if(n=ce(k-v,x-3),R-=x,x>A||3>R)k+=x,x=0,w=255&c[k],w=(w<{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<D&&a-V>=(k-s&65535)&&(2!=C&&(x=we(s)),5>=x&&(1==C||3==x&&k-v>4096)&&(x=2)),3>D||x>D)if(0!==z){if(n=ce(0,255&c[k-1]),n&&pe(!1),k++,R--,0===t.avail_out)return 0}else z=1,k++,R--;else{r=k+R-3,n=ce(k-1-S,D-3),R-=D-1,D-=2;do{++k>r||(w=(w<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 j(){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}j.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):F},deflateEnd(){const e=this;if(!e.dstate)return F;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):F},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):F},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,G=new o(2107,11,31),J=new o(1980,0,1),Q=void 0,$="undefined",ee="function";class te{constructor(e){return class extends k{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 ne=2;try{typeof A!=$&&A.hardwareConcurrency&&(ne=A.hardwareConcurrency)}catch(e){}const re={chunkSize:524288,maxWorkers:ne,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:Q,CompressionStreamNative:typeof D!=$&&D,DecompressionStreamNative:typeof E!=$&&E},se=n.assign({},re);function ae(){return se}function ie(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(oe("baseURL",n),oe("chunkSize",r),oe("maxWorkers",s),oe("terminateWorkerTimeout",a),oe("useCompressionStream",i),oe("useWebWorkers",o),l&&(se.CompressionStream=new te(l)),c&&(se.DecompressionStream=new te(c)),oe("CompressionStream",d),oe("DecompressionStream",u),p!==Q){const{deflate:e,inflate:n}=p;if((e||n)&&(se.workerScripts||(se.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");se.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");se.workerScripts.inflate=n}}}function oe(e,t){t!==Q&&(se[e]=t)}const le=[];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;le[e]=t}class ce{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^le[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class de extends k{constructor(){let e;const t=new ce;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new p(4);new g(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function ue(e){if(void 0===y){const t=new p((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=fe.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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,a=fe.getPartial(s);return r.push(fe.partial(t+a&31,t+a>32?n:r.pop(),1)),r}},pe={bytes:{fromBits(e){const t=fe.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;n9007199254740991)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=fe.concat(t,[fe.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}_f(e,t,n,r){return 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){return 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}},we={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;snew ge.hmacSha1(pe.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=fe;for(t=pe.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;lp&&os&&(e=(new n).update(e).finalize());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)}}},me=void 0!==S&&"function"==typeof S.getRandomValues,_e="Invalid password",ye="Invalid signature",be="zipjs-abort-check-password";function xe(e){return me?S.getRandomValues(e):we.getRandomValues(e)}const Se=16,ze={name:"PBKDF2"},ke=n.assign({hash:{name:"HMAC"}},ze),ve=n.assign({iterations:1e3,hash:{name:"SHA-1"}},ze),Re=["deriveBits"],De=[8,12,16],Ee=[16,24,32],Ae=10,Te=[0,0,0,0],Fe="undefined",Ce="function",We=typeof S!=Fe,Ne=We&&S.subtle,Ue=We&&typeof Ne!=Fe,Ie=pe.bytes,Oe=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}},Me=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=fe.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 fe.clamp(t,s)}},He=ge.hmacSha1;let Le=We&&Ue&&typeof Ne.importKey==Ce,Be=We&&Ue&&typeof Ne.deriveBits==Ce;class qe extends k{constructor({password:e,signed:t,encryptionStrength:r,checkPasswordOnly:s}){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:a,resolveReady:i,ready:o}=n;r?(await(async(e,t,n,r)=>{const s=await Ze(e,t,n,je(r,0,De[t])),a=je(r,De[t]);if(s[0]!=a[0]||s[1]!=a[1])throw new f(_e)})(n,a,r,je(e,0,De[a]+2)),e=je(e,De[a]+2),s?t.error(new f(be)):i()):await o;const l=new p(e.length-Ae-(e.length-Ae)%Se);t.enqueue(Ve(n,e,l,0,Ae,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:a}=this;await a;const i=je(s,0,s.length-Ae),o=je(s,s.length-Ae);let l=new p;if(i.length){const e=Ye(Ie,i);r.update(e);const t=n.update(e);l=Xe(Ie,t)}if(t){const e=je(Xe(Ie,r.digest()),0,Ae);for(let t=0;Ae>t;t++)if(e[t]!=o[t])throw new f(ye)}e.enqueue(l)}})}}class Pe extends k{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=xe(new p(De[t]));return Ke(r,await Ze(e,t,n,r))})(n,s,r),a()):await i;const l=new p(o.length+e.length-e.length%Se);l.set(o,0),t.enqueue(Ve(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(Ye(Ie,s));n.update(e),i=Xe(Ie,e)}r.signature=Xe(Ie,n.digest()).slice(0,Ae),e.enqueue(Ke(i,r.signature))}}),r=this}}function Ve(e,t,n,r,s,a){const{ctr:i,hmac:o,pending:l}=e,c=t.length-s;let d;for(l.length&&(t=Ke(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%Se)),d=0;c-Se>=d;d+=Se){const e=Ye(Ie,je(t,d,d+Se));a&&o.update(e);const s=i.update(e);a||o.update(s),n.set(Xe(Ie,s),d+r)}return e.pending=je(t,d),n}async function Ze(e,r,s,a){e.password=null;const i=ue(s),o=await(async(e,t,n,r,s)=>{if(!Le)return ge.importKey(t);try{return await Ne.importKey("raw",t,n,!1,s)}catch(e){return Le=!1,ge.importKey(t)}})(0,i,ke,0,Re),l=await(async(e,t,n)=>{if(!Be)return ge.pbkdf2(t,e.salt,ve.iterations,n);try{return await Ne.deriveBits(e,t,n)}catch(r){return Be=!1,ge.pbkdf2(t,e.salt,ve.iterations,n)}})(n.assign({salt:a},ve),o,8*(2*Ee[r]+2)),c=new p(l),d=Ye(Ie,je(c,0,Ee[r])),u=Ye(Ie,je(c,Ee[r],2*Ee[r])),f=je(c,2*Ee[r]);return n.assign(e,{keys:{key:d,authentication:u,passwordVerification:f},ctr:new Me(new Oe(d),t.from(Te)),hmac:new He(u)}),f}function Ke(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 je(e,t,n){return e.subarray(t,n)}function Xe(e,t){return e.fromBits(t)}function Ye(e,t){return e.toBits(t)}class Ge extends k{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),et(this,e)},transform(e,t){const n=this;if(n.password){const t=Qe(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(_e);e=e.subarray(12)}r?t.error(new f(be)):t.enqueue(Qe(n,e))}})}}class Je extends k{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),et(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=xe(new p(12));t[11]=n.passwordVerification,r=new p(e.length+t.length),r.set($e(n,t),0),s=12}else r=new p(e.length),s=0;r.set($e(n,e),s),t.enqueue(r)}})}}function Qe(e,t){const n=new p(t.length);for(let r=0;r>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function nt(e){const t=2|e.keys[2];return rt(i.imul(t,1^t)>>>8)}function rt(e){return 255&e}function st(e){return 4294967295&e}const at="deflate-raw";class it extends k{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=lt(super.readable);a&&!o||!l||(u=new de,p=ut(p,u)),s&&(p=dt(p,i,{level:c,chunkSize:t},r,n)),a&&(o?p=ut(p,new Je(e)):(f=new Pe(e),p=ut(p,f))),ct(d,p,(async()=>{let e;a&&!o&&(e=f.signature),a&&!o||!l||(e=new g(u.value.buffer).getUint32(0)),d.signature=e}))}}class ot extends k{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=lt(super.readable);a&&(s?p=ut(p,new Ge(e)):(u=new qe(e),p=ut(p,u))),l&&(p=dt(p,c,{chunkSize:t},r,n)),a&&!s||!i||(d=new de,p=ut(p,d)),ct(this,p,(async()=>{if((!a||s)&&i){const e=new g(d.value.buffer);if(o!=e.getUint32(0,!1))throw new f(ye)}}))}}function lt(e){return ut(e,new k({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ct(e,t,r){t=ut(t,new k({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function dt(e,t,n,r,s){try{e=ut(e,new(t&&r?r:s)(at,n))}catch(r){if(!t)throw r;e=ut(e,new s(at,n))}return e}function ut(e,t){return e.pipeThrough(t)}const ft="data",pt="deflate";class ht extends k{constructor(e,t){super({});const r=this,{codecType:s}=e;let a;s.startsWith(pt)?a=it:s.startsWith("inflate")&&(a=ot);let i=0;const o=new a(e,t),l=super.readable,c=new k({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 wt=typeof T!=$;class gt{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 mt(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&&wt?bt:yt)(e,a)}}class mt extends k{constructor(e,{onstart:t,onprogress:n,size:r,onend:s},{chunkSize:a}){let i=0;super({start(){t&&_t(t,r)},async transform(e,t){i+=e.length,n&&await _t(n,i,r),t.enqueue(e)},flush(){e.size=i,s&&_t(s,i)}},{highWaterMark:1,size:()=>a})}}async function _t(e,...t){try{await e(...t)}catch(e){}}function yt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{const a=new ht(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 bt(e,{baseURL:t,chunkSize:r}){return e.interface||n.assign(e,{worker:zt(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);kt({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.getWriter().close()}catch(e){}return await d,u})(e,{chunkSize:r})}}),e.interface}let xt=!0,St=!0;function zt(e,t,r){const s={type:"module"};let a,i;typeof e==ee&&(e=e());try{a=new u(e,t)}catch(t){a=e}if(xt)try{i=new T(a)}catch(e){xt=!1,i=new T(a,s)}else i=new T(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();kt({type:ft,value:e,done:n,messageId:a},t)}r==ft&&(await c.ready,await c.write(new p(s)),kt({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 kt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{let{value:n,readable:r,writable:a}=e;const i=[];if(n&&(e.value=n.buffer,i.push(e.value)),s&&St?(r&&i.push(r),a&&i.push(a)):e.readable=e.writable=null,i.length)try{return t.postMessage(e,i),!0}catch(n){St=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let vt=[];const Rt=[];let Dt=0;function Et(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const At="HTTP error ",Tt="HTTP Range not supported",Ft="Writer iterator completed too soon",Ct="GET",Wt="bytes",Nt=65536,Ut="writable";class It{constructor(){this.size=0}init(){this.initialized=!0}}class Ot extends It{get readable(){const e=this,{chunkSize:t=Nt}=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 on(e,s+l,i.min(t,a-l),o)),l+t>a?r.close():this.chunkOffset+=t}});return n}}class Mt extends It{constructor(){super();const e=this,t=new R({write:t=>e.writeUint8Array(t)});n.defineProperty(e,Ut,{get:()=>t})}writeUint8Array(){}}class Ht extends Ot{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||rt&&(a=a.slice(e,r)),new p(a)}}class Lt extends It{constructor(e){super();const t=new k,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,Ut,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Bt extends Ot{constructor(e,t){super(),Pt(this,e,t)}async init(){await Vt(this,Qt,Xt),super.init()}readUint8Array(e,t){return Zt(this,e,t,Qt,Xt)}}class qt extends Ot{constructor(e,t){super(),Pt(this,e,t)}async init(){await Vt(this,$t,Yt),super.init()}readUint8Array(e,t){return Zt(this,e,t,$t,Yt)}}function Pt(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 Vt(e,t,n){const{url:r,useRangeHeader:a,forceRangeRequests:i}=e;if((e=>{const{baseURL:t}=ae(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(r)&&(a||i)){const{headers:r}=await t(Ct,e,Kt(e));if(!i&&r.get("Accept-Ranges")!=Wt)throw new f(Tt);{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===Q?await Jt(e,t,n):e.size=a}}else await Jt(e,t,n)}async function Zt(e,t,n,r,s){const{useRangeHeader:a,forceRangeRequests:i,options:o}=e;if(a||i){const s=await r(Ct,e,Kt(e,t,n));if(206!=s.status)throw new f(Tt);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 Kt(e,t=0,r=1){return n.assign({},jt(e),{Range:Wt+"="+t+"-"+(t+r-1)})}function jt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Xt(e){await Gt(e,Qt)}async function Yt(e){await Gt(e,$t)}async function Gt(e,t){const n=await t(Ct,e,jt(e));e.data=new p(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Jt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,jt(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function Qt(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(Tt):new f(At+(a.statusText||a.status))}function $t(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(Tt):new f(At+(i.statusText||i.status)))}),!1),i.addEventListener("error",(e=>a(e.detail?e.detail.error:new f("Network 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 en extends Ot{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new qt(e,t):new Bt(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class tn extends Ot{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await _.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}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 on(c,l,s)),a.set(await r.readUint8Array(e+s,t-s,n),s)}else a=await on(c,l,t);return r.lastDiskNumber=i.max(o,r.lastDiskNumber),a}}class nn extends It{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.lengtho})}}async function rn(e,t){e.init&&!e.initialized&&await e.init(t)}function sn(e){return t.isArray(e)&&(e=new tn(e)),e instanceof v&&(e={readable:e}),e}function an(e){e.writable===Q&&typeof e.next==ee&&(e=new nn(e)),e instanceof R&&(e={writable:e});const{writable:t}=e;return t.size===Q&&(t.size=0),e instanceof nn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function on(e,t,n,r){return e.readUint8Array(t,n,r)}const ln=tn,cn=nn,dn="diskNumberStart",un="lastModDate",fn="lastAccessDate",pn="creationDate",hn="internalFileAttribute",wn="externalFileAttribute",gn="msDosCompatible",mn="zip64",_n=["filename","rawFilename","compressedSize","uncompressedSize",un,"rawLastModDate","comment","rawComment",fn,pn,"offset",dn,dn,hn,wn,gn,mn,"directory","bitFlag","encrypted","signature","filenameUTF8","commentUTF8","compressionMethod","version","versionMadeBy","extraField","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class yn{constructor(e){_n.forEach((t=>this[t]=e[t]))}}const bn="File already exists",xn="Zip file comment exceeds 64KB",Sn="File entry comment exceeds 64KB",zn="File entry name exceeds 64KB",kn="Version exceeds 65535",vn="The strength must equal 1, 2, or 3",Rn="Extra field type exceeds 65535",Dn="Extra field data exceeds 64KB",En="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",An=new p([7,0,2,0,65,69,3,0,0]);let Tn=0;const Fn=[];async function Cn(e,t){const n=e.getWriter();await n.ready,e.size+=Bn(t),await n.write(t),n.releaseLock()}function Wn(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function Nn(e,t,n,r){const s=t[n]===Q?e.options[n]:t[n];return s===Q?r:s}function Un(e,t,n){e.setUint8(t,n)}function In(e,t,n){e.setUint16(t,n,!0)}function On(e,t,n){e.setUint32(t,n,!0)}function Mn(e,t,n){e.setBigUint64(t,n,!0)}function Hn(e,t,n){e.set(t,n)}function Ln(e){return new g(e.buffer)}function Bn(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}ie({Deflate:function(e){const t=new j,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.subarray(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(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=Ht,e.BlobWriter=Lt,e.Data64URIReader=class extends Ot{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 Mt{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(;n2?t.data+=z(s):t.pending=s}getData(){return this.data+z(this.pending)}},e.ERR_DUPLICATED_NAME=bn,e.ERR_HTTP_RANGE=Tt,e.ERR_INVALID_COMMENT=xn,e.ERR_INVALID_ENCRYPTION_STRENGTH=vn,e.ERR_INVALID_ENTRY_COMMENT=Sn,e.ERR_INVALID_ENTRY_NAME=zn,e.ERR_INVALID_EXTRAFIELD_DATA=Dn,e.ERR_INVALID_EXTRAFIELD_TYPE=Rn,e.ERR_INVALID_VERSION=kn,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Ft,e.ERR_UNSUPPORTED_FORMAT=En,e.HttpRangeReader=class extends en{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=en,e.Reader=Ot,e.SplitDataReader=tn,e.SplitDataWriter=nn,e.SplitZipReader=ln,e.SplitZipWriter=cn,e.TextReader=class extends Ht{constructor(e){super(new m([e],{type:"text/plain"}))}},e.TextWriter=class extends Lt{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 Ot{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 Mt{init(e=0){n.assign(this,{offset:0,array:new p(e)}),super.init()}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=Mt,e.ZipWriter=class{constructor(e,t={}){e=an(e),n.assign(this,{writer:e,addSplitZipSignature:e instanceof nn,options:t,config:ae(),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;TnFn.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new f(bn);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=ue(r);if(Bn(d)>Y)throw new f(zn);const u=c.comment||"",m=ue(u);if(Bn(m)>Y)throw new f(Sn);const y=Nn(e,c,"version",20);if(y>Y)throw new f(kn);const b=Nn(e,c,"versionMadeBy",20);if(b>Y)throw new f(kn);const x=Nn(e,c,un,new o),S=Nn(e,c,fn),z=Nn(e,c,pn),k=Nn(e,c,gn,!0),v=Nn(e,c,hn,0),R=Nn(e,c,wn,0),D=Nn(e,c,"password"),E=Nn(e,c,"encryptionStrength",3),A=Nn(e,c,"zipCrypto"),T=Nn(e,c,"extendedTimestamp",!0),F=Nn(e,c,"keepOrder",!0),C=Nn(e,c,"level"),W=Nn(e,c,"useWebWorkers"),N=Nn(e,c,"bufferedWrite"),U=Nn(e,c,"dataDescriptorSignature",!1),I=Nn(e,c,"signal"),O=Nn(e,c,"useCompressionStream");let M=Nn(e,c,"dataDescriptor",!0),H=Nn(e,c,mn);if(D!==Q&&E!==Q&&(1>E||E>3))throw new f(vn);let L=new p;const{extraField:B}=c;if(B){let e=0,t=0;B.forEach((t=>e+=4+Bn(t))),L=new p(e),B.forEach(((e,n)=>{if(n>Y)throw new f(Rn);if(Bn(e)>Y)throw new f(Dn);Hn(L,new h([n]),t),Hn(L,new h([Bn(e)]),t+2),Hn(L,e,t+4),t+=4+Bn(e)}))}let q=0,P=0,V=0;const Z=!0===H;l&&(l=sn(l),await rn(l),l.size===Q?(M=!0,(H||H===Q)&&(H=!0,V=q=X)):(V=l.size,q=(e=>e+5*(i.floor(e/16383)+1))(V)));const{diskOffset:K,diskNumber:j,maxSize:$}=e.writer,ee=Z||V>=X,te=Z||q>=X,ne=Z||e.offset+e.pendingEntriesSize-K>=X,re=Nn(e,c,"supportZip64SplitFile",!0)&&Z||j+i.ceil(e.pendingEntriesSize/$)>=Y;if(ne||ee||te||re){if(!1===H||!F)throw new f(En);H=!0}H=H||!1;const se=(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||!Bn(a));let y,b,x,S=e.version;if(_&&!c){y=new p(Bn(An)+2);const e=Ln(y);In(e,0,39169),Hn(y,An,2),Un(e,8,h)}else y=new p;if(g){x=new p(9+(r?4:0)+(s?4:0));const e=Ln(x);In(e,0,21589),In(e,2,Bn(x)-4),Un(e,4,1+(r?2:0)+(s?4:0)),On(e,5,i.floor(n.getTime()/1e3)),r&&On(e,9,i.floor(r.getTime()/1e3)),s&&On(e,13,i.floor(s.getTime()/1e3));try{b=new p(36);const e=Ln(b),t=Wn(n);In(e,0,10),In(e,2,32),In(e,8,1),In(e,10,24),Mn(e,12,t),Mn(e,20,Wn(r)||t),Mn(e,28,Wn(s)||t)}catch(e){b=new p}}else b=x=new p;let z=2048;d&&(z|=8);let k=0;m&&(k=8),l&&(S=S>45?S:45),_&&(z|=1,c||(S=S>51?S:51,k=99,m&&(y[9]=8)));const v=new p(26),R=Ln(v);In(R,0,S),In(R,2,z),In(R,4,k);const D=new w(1),E=Ln(D);let A;A=J>n?J:n>G?G:n,In(E,0,(A.getHours()<<6|A.getMinutes())<<5|A.getSeconds()/2),In(E,2,(A.getFullYear()-1980<<4|A.getMonth()+1)<<5|A.getDate());const T=D[0];On(R,6,T),In(R,22,Bn(t));const F=Bn(y,x,b,f);In(R,24,F);const C=new p(30+Bn(t)+F);return On(Ln(C),0,67324752),Hn(C,v,4),Hn(C,t,30),Hn(C,y,30+Bn(t)),Hn(C,x,30+Bn(t,y)),Hn(C,b,30+Bn(t,y,x)),Hn(C,f,30+Bn(t,y,x,b)),{localHeaderArray:C,headerArray:v,headerView:R,lastModDate:n,rawLastModDate:T,encrypted:_,compressed:m,version:S,compressionMethod:k,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:b,rawExtraFieldAES:y}})(c=n.assign({},c,{rawFilename:d,rawComment:m,version:y,versionMadeBy:b,lastModDate:x,lastAccessDate:S,creationDate:z,rawExtraField:L,zip64:H,zip64UncompressedSize:ee,zip64CompressedSize:te,zip64Offset:ne,zip64DiskNumberStart:re,password:D,level:C,useWebWorkers:W,encryptionStrength:E,extendedTimestamp:T,zipCrypto:A,bufferedWrite:N,keepOrder:F,dataDescriptor:M,dataDescriptorSignature:U,signal:I,msDosCompatible:k,internalFileAttribute:v,externalFileAttribute:R,useCompressionStream:O})),ae=(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=Ln(a),r&&(i=4,On(s,0,134695760))),{dataDescriptorArray:a,dataDescriptorView:s,dataDescriptorOffset:i}})(c);let ie;P=Bn(se.localHeaderArray,ae.dataDescriptorArray)+q,e.pendingEntriesSize+=P;try{ie=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,z,k,v,R,D={};d.set(r,D);try{let t;h&&(t=b&&b.lock,D.lock=new _((e=>z=e))),c.bufferedWrite||e.writerLocked||e.bufferedWrites&&h||!w?(R=new Lt,R.writable.size=0,x=!0,e.bufferedWrites++,await rn(u)):(R=u,await E()),await rn(R);const{writable:y}=u;let{diskOffset:T}=u;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new p(4);On(Ln(t),0,134695760),await Cn(y,t),e.offset+=4}x||(await t,await A(y));const{diskNumber:F}=u;if(v=!0,D.diskNumberStart=F,D=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:z,rawExtraFieldNTFS:k,rawExtraFieldAES:v}=u,{dataDescriptorArray:R}=f,{rawFilename:D,lastAccessDate:E,creationDate:A,password:T,level:F,zip64:C,zip64UncompressedSize:W,zip64CompressedSize:N,zip64Offset:U,zip64DiskNumberStart:I,zipCrypto:O,dataDescriptor:M,directory:H,versionMadeBy:L,rawComment:B,rawExtraField:q,useWebWorkers:P,onstart:V,onprogress:Z,onend:K,signal:j,encryptionStrength:Y,extendedTimestamp:G,msDosCompatible:J,internalFileAttribute:$,externalFileAttribute:ee,useCompressionStream:te}=d,ne={lock:o,versionMadeBy:L,zip64:C,directory:!!H,filenameUTF8:!0,rawFilename:D,commentUTF8:!0,rawComment:B,rawExtraFieldExtendedTimestamp:z,rawExtraFieldNTFS:k,rawExtraFieldAES:v,rawExtraField:q,extendedTimestamp:G,msDosCompatible:J,internalFileAttribute:$,externalFileAttribute:ee,diskNumberStart:r};let re,se=0,ae=0;const{writable:ie}=t,oe=Bn(h,R);if(e){e.chunkSize=(e=>i.max(e.chunkSize,64))(c),await Cn(ie,h);const t=e.readable,n=t.size=e.size,r={options:{codecType:pt,level:F,password:T,encryptionStrength:Y,zipCrypto:y&&O,passwordVerification:y&&O&&m>>8&255,signed:!0,compressed:b,encrypted:y,useWebWorkers:P,useCompressionStream:te,transferStreams:!1},config:c,streamOptions:{signal:j,size:n,onstart:V,onprogress:Z,onend:K}},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===Q;const w=!(c||d||u||t.transferStreams);let g;t.useWebWorkers=!w&&(i||i===Q&&r.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[l]:[],n.useCompressionStream=o||o===Q&&r.useCompressionStream;const m=vt.find((e=>!e.busy));if(m)Et(m),g=new gt(m,e,t,y);else if(vt.lengthRt.push({resolve:n,stream:e,workerOptions:t})));return g.run();function y(e){if(Rt.length){const[{resolve:t,stream:n,workerOptions:r}]=Rt.splice(0,1);t(new gt(e,n,r,y))}else e.worker?(Et(e),s.isFinite(h)&&h>=0&&(e.terminateTimeout=setTimeout((()=>{vt=vt.filter((t=>t!=e)),e.terminate()}),h))):vt=vt.filter((t=>t!=e))}})({readable:t,writable:ie},r);ie.size+=a.size,re=a.signature,ae=e.size=t.size,se=a.size}else await Cn(ie,h);let le;if(C){let e=4;W&&(e+=8),N&&(e+=8),U&&(e+=8),I&&(e+=4),le=new p(e)}else le=new p;return((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,zip64UncompressedSize:h,zip64CompressedSize:w,zipCrypto:g,dataDescriptor:m}=t;if(d&&!g||n===Q||(On(c,10,n),m&&On(u,f,n)),p){const e=Ln(r);In(e,0,1),In(e,2,r.length-4);let t=4;h&&(On(c,18,X),Mn(e,t,a(i)),t+=8),w&&(On(c,14,X),Mn(e,t,a(s))),m&&(Mn(u,f+4,a(s)),Mn(u,f+12,a(i)))}else On(c,14,s),On(c,18,i),m&&(On(u,f+4,s),On(u,f+8,i))})({signature:re,rawExtraFieldZip64:le,compressedSize:se,uncompressedSize:ae,headerInfo:u,dataDescriptorInfo:f},d),M&&await Cn(ie,R),n.assign(ne,{uncompressedSize:ae,compressedSize:se,lastModDate:g,rawLastModDate:m,creationDate:A,lastAccessDate:E,encrypted:y,length:oe+se,compressionMethod:S,version:x,headerArray:w,signature:re,rawExtraFieldZip64:le,zip64UncompressedSize:W,zip64CompressedSize:N,zip64Offset:U,zip64DiskNumberStart:I}),ne})(o,R,D,l,e.config,c),v=!1,d.set(r,D),D.filename=r,x){await R.writable.getWriter().close();let e=await R.getData();await t,await E(),k=!0,w||(e=await(async(e,t,n,{zipCrypto:r})=>{let s;s=await t.slice(0,26).arrayBuffer(),26!=s.byteLength&&(s=s.slice(0,26));const a=new g(s);return e.encrypted&&!r||On(a,14,e.signature),e.zip64?(On(a,18,X),On(a,22,X)):(On(a,18,e.compressedSize),On(a,22,e.uncompressedSize)),await Cn(n,new p(s)),t.slice(s.byteLength)})(D,e,y,c)),await A(y),D.diskNumberStart=u.diskNumber,T=u.diskOffset,await e.stream().pipeTo(y,{preventClose:!0,preventAbort:!0,signal:m}),y.size+=e.size,k=!1}if(D.offset=e.offset-T,D.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:s}=e,{zip64UncompressedSize:i,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,d=Ln(n);let u=4;i&&(u+=8),o&&(u+=8),l&&(Mn(d,u,a(r)),u+=8),c&&On(d,u,s)})(D,c);else if(D.offset>=X)throw new f(En);return e.offset+=D.length,D}catch(t){if(x&&k||!x&&v){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}x?e.offset+=R.writable.size:e.offset=R.writable.size}throw d.delete(r),t}finally{x&&e.bufferedWrites--,z&&z(),S&&S()}async function E(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new _((t=>S=()=>{e.writerLocked=!1,t()})),await t}async function A(e){y.localHeaderArray.length>u.availableSize&&(u.availableSize=0,await Cn(e,new p))}})(e,r,l,{headerInfo:se,dataDescriptorInfo:ae},c)}finally{e.pendingEntriesSize-=P}return n.assign(ie,{name:r,comment:u,extraField:B}),new yn(ie)})(c,e,r,l),d.add(m),await m}catch(t){throw c.filenames.delete(e),t}finally{d.delete(m);const e=Fn.shift();e?e():Tn--}}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+Bn(e,a,t,n,i,o,r);const m=new p(h),_=Ln(m);await rn(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,zip64UncompressedSize:z,zip64CompressedSize:k,zip64DiskNumberStart:v,zip64Offset:R,msDosCompatible:D,internalFileAttribute:E,externalFileAttribute:A,extendedTimestamp:T,lastModDate:F,diskNumberStart:C,uncompressedSize:W,compressedSize:N}=n;let U;if(T){U=new p(9);const e=Ln(U);In(e,0,21589),In(e,2,Bn(U)-4),Un(e,4,1),On(e,5,i.floor(F.getTime()/1e3))}else U=new p;const I=Bn(l,d,U,f,h);On(_,u,33639248),In(_,u+4,g);const O=Ln(b);z||On(O,18,W),k||On(O,14,N),Hn(m,b,u+6),In(_,u+30,I),In(_,u+32,Bn(w)),In(_,u+34,S&&v?Y:C),In(_,u+36,E),A?On(_,u+38,A):x&&D&&Un(_,u+38,16),On(_,u+42,S&&R?X:t),Hn(m,a,u+46),Hn(m,l,u+46+Bn(a)),Hn(m,d,u+46+Bn(a,l)),Hn(m,U,u+46+Bn(a,l,d)),Hn(m,f,u+46+Bn(a,l,d,U)),Hn(m,h,u+46+Bn(a,l,d,U,f)),Hn(m,w,u+46+Bn(a)+I);const M=46+Bn(a,w)+I;if(u-y>o.availableSize&&(o.availableSize=0,await Cn(c,m.slice(y,u)),y=u),u+=M,r.onprogress)try{await r.onprogress(e+1,s.size,new yn(n))}catch(e){}}await Cn(c,y?m.slice(y):m);let b=o.diskNumber;const{availableSize:x}=o;22>x&&b++;let S=Nn(e,r,"zip64");if(!(X>w&&X>h&&Y>g&&Y>b)){if(!1===S)throw new f(En);S=!0}const z=new p(S?98:22),k=Ln(z);u=0,S&&(On(k,0,101075792),Mn(k,4,a(44)),In(k,12,45),In(k,14,45),On(k,16,b),On(k,20,d),Mn(k,24,a(g)),Mn(k,32,a(g)),Mn(k,40,a(h)),Mn(k,48,a(w)),On(k,56,117853008),Mn(k,64,a(w)+a(h)),On(k,72,b+1),Nn(e,r,"supportZip64SplitFile",!0)&&(b=Y,d=Y),g=Y,w=X,h=X,u+=76),On(k,u,101010256),In(k,u+4,b),In(k,u+6,d),In(k,u+8,g),In(k,u+10,g),On(k,u+12,h),On(k,u+16,w);const v=Bn(n);if(v){if(v>Y)throw new f(xn);In(k,u+20,v)}await Cn(c,z),v&&await Cn(c,n)})(this,e,n),Nn(this,n,"preventClose")||await o.getWriter().close(),s.getData?s.getData():o}},e.configure=ie,e.getMimeType=()=>"application/octet-stream",e.initReader=sn,e.initStream=rn,e.initWriter=an,e.readUint8Array=on,e.terminateWorkers=()=>{vt.forEach((e=>{Et(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})})); diff --git a/dist/zip-no-worker.min.js b/dist/zip-no-worker.min.js index 4d78fcc6..5676851c 100644 --- a/dist/zip-no-worker.min.js +++ b/dist/zip-no-worker.min.js @@ -1 +1 @@ -((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:i,Number:r,BigInt:a,Math:s,Date:o,Map:l,Set:c,Response:d,URL:u,Error:f,Uint8Array:_,Uint16Array:w,Uint32Array:p,DataView:h,Blob:b,Promise:g,TextEncoder:m,TextDecoder:x,document:y,crypto:k,btoa:S,TransformStream:v,ReadableStream:z,WritableStream:E,CompressionStream:D,DecompressionStream:R,navigator:F,Worker:A}="undefined"!=typeof globalThis?globalThis:this||self,T=-2;function C(e){return N(e.map((([e,n])=>new t(e).fill(n,0,e))))}function N(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?N(n):n)),[])}const U=[0,1,2,3].concat(...C([[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 W(){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 i=e.dyn_tree,r=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!==i[2*o]?(n.heap[++n.heap_len]=d=o,n.depth[o]=0):i[2*o+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>d?++d:0,i[2*c]=1,n.depth[c]=0,n.opt_len--,r&&(n.static_len-=r[2*c+1]);for(e.max_code=d,o=s.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(i,o);c=a;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(i,1),l=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=l,i[2*c]=i[2*o]+i[2*l],n.depth[c]=s.max(n.depth[o],n.depth[l])+1,i[2*o+1]=i[2*l+1]=c,n.heap[1]=c++,n.pqdownheap(i,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,i=e.stat_desc.static_tree,r=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,s=e.stat_desc.max_length;let o,l,c,d,u,f,_=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>s&&(d=s,_++),n[2*l+1]=d,l>e.max_code||(t.bl_count[d]++,u=0,a>l||(u=r[l-a]),f=n[2*l],t.opt_len+=f*(d+u),i&&(t.static_len+=f*(i[2*l+1]+u)));if(0!==_){do{for(d=s-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[s]--,_-=2}while(_>0);for(d=s;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,i)=>{const r=[];let a,s,o,l=0;for(a=1;15>=a;a++)r[a]=l=l+i[a-1]<<1;for(s=0;n>=s;s++)o=e[2*s+1],0!==o&&(e[2*s]=t(r[o]++,o))})(i,e.max_code,n.bl_count)}}function I(e,t,n,i,r){const a=this;a.static_tree=e,a.extra_bits=t,a.extra_base=n,a.elems=i,a.max_length=r}W._length_code=[0,1,2,3,4,5,6,7].concat(...C([[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]])),W.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],W.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],W.d_code=e=>256>e?U[e]:U[256+(e>>>7)],W.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],W.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],W.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],W.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const O=C([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=N([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,O[t]])));const L=C([[30,5]]);function M(e,t,n,i,r){const a=this;a.good_length=e,a.max_lazy=t,a.nice_length=n,a.max_chain=i,a.func=r}I.static_dtree=N([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,L[t]]))),I.static_l_desc=new I(I.static_ltree,W.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,W.extra_dbits,0,30,15),I.static_bl_desc=new I(null,W.extra_blbits,0,19,7);const P=[new M(0,0,0,0,0),new M(4,4,8,4,1),new M(4,5,16,8,1),new M(4,6,32,32,1),new M(4,4,16,16,2),new M(8,16,32,32,2),new M(8,16,128,128,2),new M(8,32,128,256,2),new M(32,128,258,1024,2),new M(32,258,258,4096,2)],H=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],B=113,V=666,q=262;function Z(e,t,n,i){const r=e[2*t],a=e[2*n];return a>r||r==a&&i[t]<=i[n]}function K(){const e=this;let t,n,i,r,a,o,l,c,d,u,f,p,h,b,g,m,x,y,k,S,v,z,E,D,R,F,A,C,N,U,O,L,M;const K=new W,Y=new W,G=new W;let X,j,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)O[2*t]=0;for(t=0;30>t;t++)L[2*t]=0;for(t=0;19>t;t++)M[2*t]=0;O[512]=1,e.opt_len=e.static_len=0,j=J=0}function ne(e,t){let n,i=-1,r=e[1],a=0,s=7,o=4;0===r&&(s=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)n=r,r=e[2*(l+1)+1],++aa?M[2*n]+=a:0!==n?(n!=i&&M[2*n]++,M[32]++):a>10?M[36]++:M[34]++,a=0,i=n,0===r?(s=138,o=3):n==r?(s=6,o=3):(s=7,o=4))}function ie(t){e.pending_buf[e.pending++]=t}function re(e){ie(255&e),ie(e>>>8&255)}function ae(e,t){let n;const i=t;ee>16-i?(n=e,$|=n<>>16-ee,ee+=i-16):($|=e<=n;n++)if(i=a,a=e[2*(n+1)+1],++s>=o||i!=a){if(l>s)do{se(i,M)}while(0!=--s);else 0!==i?(i!=r&&(se(i,M),s--),se(16,M),ae(s-3,2)):s>10?(se(18,M),ae(s-11,7)):(se(17,M),ae(s-3,3));s=0,r=i,0===a?(o=138,l=3):i==a?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(re($),$=0,ee=0):8>ee||(ie(255&$),$>>>=8,ee-=8)}function ce(t,n){let i,r,a;if(e.dist_buf[j]=t,e.lc_buf[j]=255&n,j++,0===t?O[2*n]++:(J++,t--,O[2*(W._length_code[n]+256+1)]++,L[2*W.d_code(t)]++),0==(8191&j)&&A>2){for(i=8*j,r=v-x,a=0;30>a;a++)i+=L[2*a]*(5+W.extra_dbits[a]);if(i>>>=3,Jo);se(256,t),Q=t[513]}function ue(){ee>8?re($):ee>0&&ie(255&$),$=0,ee=0}function fe(t,n,i){ae(0+(i?1:0),3),((t,n)=>{ue(),Q=8,re(n),re(~n),e.pending_buf.set(c.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function _e(n){((t,n,i)=>{let r,a,s=0;A>0?(K.build_tree(e),Y.build_tree(e),s=(()=>{let t;for(ne(O,K.max_code),ne(L,Y.max_code),G.build_tree(e),t=18;t>=3&&0===M[2*W.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),r=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a>r||(r=a)):r=a=n+5,n+4>r||-1==t?a==r?(ae(2+(i?1:0),3),de(I.static_ltree,I.static_dtree)):(ae(4+(i?1:0),3),((e,t,n)=>{let i;for(ae(e-257,5),ae(t-1,5),ae(n-4,4),i=0;n>i;i++)ae(M[2*W.bl_order[i]+1],3);oe(O,e-1),oe(L,t-1)})(K.max_code+1,Y.max_code+1,s+1),de(O,L)):fe(t,n,i),te(),i&&ue()})(0>x?-1:x,v-x,n),x=v,t.flush_pending()}function we(){let e,n,i,r;do{if(r=d-E-v,0===r&&0===v&&0===E)r=a;else if(-1==r)r--;else if(v>=a+a-q){c.set(c.subarray(a,a+a),0),z-=a,v-=a,x-=a,e=h,i=e;do{n=65535&f[--i],f[i]=a>n?0:n-a}while(0!=--e);e=a,i=e;do{n=65535&u[--i],u[i]=a>n?0:n-a}while(0!=--e);r+=a}if(0===t.avail_in)return;e=t.read_buf(c,v+E,r),E+=e,3>E||(p=255&c[v],p=(p<E&&0!==t.avail_in)}function pe(e){let t,n,i=R,r=v,s=D;const o=v>a-q?v-(a-q):0;let d=U;const f=l,_=v+258;let w=c[r+s-1],p=c[r+s];N>D||(i>>=2),d>E&&(d=E);do{if(t=e,c[t+s]==p&&c[t+s-1]==w&&c[t]==c[r]&&c[++t]==c[r+1]){r+=2,t++;do{}while(c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&_>r);if(n=258-(_-r),r=_-258,n>s){if(z=e,s=n,n>=d)break;w=c[r+s-1],p=c[r+s]}}}while((e=65535&u[e&f])>o&&0!=--i);return s>E?E:s}e.depth=[],e.bl_count=[],e.heap=[],O=[],L=[],M=[],e.pqdownheap=(t,n)=>{const i=e.heap,r=i[n];let a=n<<1;for(;a<=e.heap_len&&(a(W||(W=8),H||(H=8),V||(V=0),t.msg=null,-1==k&&(k=6),1>H||H>9||8!=W||9>z||z>15||0>k||k>9||0>V||V>2?T:(t.dstate=e,o=z,a=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=B,r=0,K.dyn_tree=O,K.stat_desc=I.static_l_desc,Y.dyn_tree=L,Y.stat_desc=I.static_d_desc,G.dyn_tree=M,G.stat_desc=I.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*a,f[h-1]=0;for(let e=0;h-1>e;e++)f[e]=0;F=P[A].max_lazy,N=P[A].good_length,U=P[A].nice_length,R=P[A].max_chain,v=0,x=0,E=0,y=D=2,S=0,p=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=B&&n!=V?T:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,c=null,e.dstate=null,n==B?-3:0),e.deflateParams=(e,t,n)=>{let i=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?T:(P[A].func!=P[t].func&&0!==e.total_in&&(i=e.deflate(1)),A!=t&&(A=t,F=P[A].max_lazy,N=P[A].good_length,U=P[A].nice_length,R=P[A].max_chain),C=n,i)},e.deflateSetDictionary=(e,t,i)=>{let r,s=i,o=0;if(!t||42!=n)return T;if(3>s)return 0;for(s>a-q&&(s=a-q,o=i-s),c.set(t.subarray(o,o+s),0),v=s,x=s,p=255&c[0],p=(p<=r;r++)p=(p<{let _,w,b,R,N;if(d>4||0>d)return T;if(!s.next_out||!s.next_in&&0!==s.avail_in||n==V&&4!=d)return s.msg=H[4],T;if(0===s.avail_out)return s.msg=H[7],-5;var U;if(t=s,R=r,r=d,42==n&&(w=8+(o-8<<4)<<8,b=(A-1&255)>>1,b>3&&(b=3),w|=b<<6,0!==v&&(w|=32),w+=31-w%31,n=B,ie((U=w)>>8&255),ie(255&U)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return r=-1,0}else if(0===t.avail_in&&R>=d&&4!=d)return t.msg=H[7],-5;if(n==V&&0!==t.avail_in)return s.msg=H[7],-5;if(0!==t.avail_in||0!==E||0!=d&&n!=V){switch(N=-1,P[A].func){case 0:N=(e=>{let n,r=65535;for(r>i-5&&(r=i-5);;){if(1>=E){if(we(),0===E&&0==e)return 0;if(0===E)break}if(v+=E,E=0,n=x+r,(0===v||v>=n)&&(E=v-n,v=n,_e(!1),0===t.avail_out))return 0;if(v-x>=a-q&&(_e(!1),0===t.avail_out))return 0}return _e(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 1:N=(e=>{let n,i=0;for(;;){if(q>E){if(we(),q>E&&0==e)return 0;if(0===E)break}if(3>E||(p=(p<a-q||2!=C&&(y=pe(i)),3>y)n=ce(0,255&c[v]),E--,v++;else if(n=ce(v-z,y-3),E-=y,y>F||3>E)v+=y,y=0,p=255&c[v],p=(p<{let n,i,r=0;for(;;){if(q>E){if(we(),q>E&&0==e)return 0;if(0===E)break}if(3>E||(p=(p<D&&a-q>=(v-r&65535)&&(2!=C&&(y=pe(r)),5>=y&&(1==C||3==y&&v-z>4096)&&(y=2)),3>D||y>D)if(0!==S){if(n=ce(0,255&c[v-1]),n&&_e(!1),v++,E--,0===t.avail_out)return 0}else S=1,v++,E--;else{i=v+E-3,n=ce(v-1-k,D-3),E-=D-1,D-=2;do{++v>i||(p=(p<1+Q+10-ee&&(ae(2,3),se(256,I.static_ltree),le()),Q=7;else if(fe(0,0,!1),3==d)for(_=0;h>_;_++)f[_]=0;if(t.flush_pending(),0===t.avail_out)return r=-1,0}}return 4!=d?0:1}}function Y(){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}Y.prototype={deflateInit(e,t){const n=this;return n.dstate=new K,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):T},deflateEnd(){const e=this;if(!e.dstate)return T;const t=e.dstate.deflateEnd();return e.dstate=null,t},deflateParams(e,t){const n=this;return n.dstate?n.dstate.deflateParams(n,e,t):T},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):T},read_buf(e,t,n){const i=this;let r=i.avail_in;return r>n&&(r=n),0===r?0:(i.avail_in-=r,e.set(i.next_in.subarray(i.next_in_index,i.next_in_index+r),t),i.next_in_index+=r,i.total_in+=r,r)},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 G=-2,X=-3,j=-5,J=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],Q=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],$=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],ee=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],te=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ne=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],ie=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function re(){let e,t,n,i,r,a;function s(e,t,s,o,l,c,d,u,f,_,w){let p,h,b,g,m,x,y,k,S,v,z,E,D,R,F;v=0,m=s;do{n[e[t+v]]++,v++,m--}while(0!==m);if(n[0]==s)return d[0]=-1,u[0]=0,0;for(k=u[0],x=1;15>=x&&0===n[x];x++);for(y=x,x>k&&(k=x),m=15;0!==m&&0===n[m];m--);for(b=m,k>m&&(k=m),u[0]=k,R=1<x;x++,R<<=1)if(0>(R-=n[x]))return X;if(0>(R-=n[m]))return X;for(n[m]+=R,a[1]=x=0,v=1,D=2;0!=--m;)a[D]=x+=n[v],D++,v++;m=0,v=0;do{0!==(x=e[t+v])&&(w[a[x]++]=m),v++}while(++m=y;y++)for(p=n[y];0!=p--;){for(;y>E+k;){if(g++,E+=k,F=b-E,F=F>k?k:F,(h=1<<(x=y-E))>p+1&&(h-=p+1,D=y,F>x))for(;++xn[++D];)h-=n[D];if(F=1<1440)return X;r[g]=z=_[0],_[0]+=F,0!==g?(a[g]=m,i[0]=x,i[1]=k,x=m>>>E-k,i[2]=z-r[g-1]-x,f.set(i,3*(r[g-1]+x))):d[0]=z}for(i[1]=y-E,s>v?w[v]w[v]?0:96,i[2]=w[v++]):(i[0]=c[w[v]-o]+16+64,i[2]=l[w[v++]-o]):i[0]=192,h=1<>>E;F>x;x+=h)f.set(i,3*(z+x));for(x=1<>>=1)m^=x;for(m^=x,S=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)i[o]=0;r.set(n.subarray(0,15),0),a.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,i,r,a,l)=>{let c;return o(19),e[0]=0,c=s(n,0,19,19,null,null,r,i,a,e,t),c==X?l.msg="oversubscribed dynamic bit lengths tree":c!=j&&0!==i[0]||(l.msg="incomplete dynamic bit lengths tree",c=X),c},this.inflate_trees_dynamic=(n,i,r,a,l,c,d,u,f)=>{let _;return o(288),e[0]=0,_=s(r,0,n,257,ee,te,c,a,u,e,t),0!=_||0===a[0]?(_==X?f.msg="oversubscribed literal/length tree":-4!=_&&(f.msg="incomplete literal/length tree",_=X),_):(o(288),_=s(r,n,i,0,ne,ie,d,l,u,e,t),0!=_||0===l[0]&&n>257?(_==X?f.msg="oversubscribed distance tree":_==j?(f.msg="incomplete distance tree",_=X):-4!=_&&(f.msg="empty distance tree with lengths",_=X),_):0)}}function ae(){const e=this;let t,n,i,r,a=0,s=0,o=0,l=0,c=0,d=0,u=0,f=0,_=0,w=0;function p(e,t,n,i,r,a,s,o){let l,c,d,u,f,_,w,p,h,b,g,m,x,y,k,S;w=o.next_in_index,p=o.avail_in,f=s.bitb,_=s.bitk,h=s.write,b=h_;)p--,f|=(255&o.read_byte(w++))<<_,_+=8;if(l=f&g,c=n,d=i,S=3*(d+l),0!==(u=c[S]))for(;;){if(f>>=c[S+1],_-=c[S+1],0!=(16&u)){for(u&=15,x=c[S+2]+(f&J[u]),f>>=u,_-=u;15>_;)p--,f|=(255&o.read_byte(w++))<<_,_+=8;for(l=f&m,c=r,d=a,S=3*(d+l),u=c[S];;){if(f>>=c[S+1],_-=c[S+1],0!=(16&u)){for(u&=15;u>_;)p--,f|=(255&o.read_byte(w++))<<_,_+=8;if(y=c[S+2]+(f&J[u]),f>>=u,_-=u,b-=x,y>h){k=h-y;do{k+=s.end}while(0>k);if(u=s.end-k,x>u){if(x-=u,h-k>0&&u>h-k)do{s.win[h++]=s.win[k++]}while(0!=--u);else s.win.set(s.win.subarray(k,k+u),h),h+=u,k+=u,u=0;k=0}}else k=h-y,h-k>0&&2>h-k?(s.win[h++]=s.win[k++],s.win[h++]=s.win[k++],x-=2):(s.win.set(s.win.subarray(k,k+2),h),h+=2,k+=2,x-=2);if(h-k>0&&x>h-k)do{s.win[h++]=s.win[k++]}while(0!=--x);else s.win.set(s.win.subarray(k,k+x),h),h+=x,k+=x,x=0;break}if(0!=(64&u))return o.msg="invalid distance code",x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,X;l+=c[S+2],l+=f&J[u],S=3*(d+l),u=c[S]}break}if(0!=(64&u))return 0!=(32&u)?(x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,1):(o.msg="invalid literal/length code",x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,X);if(l+=c[S+2],l+=f&J[u],S=3*(d+l),0===(u=c[S])){f>>=c[S+1],_-=c[S+1],s.win[h++]=c[S+2],b--;break}}else f>>=c[S+1],_-=c[S+1],s.win[h++]=c[S+2],b--}while(b>=258&&p>=10);return x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,0}e.init=(e,a,s,o,l,c)=>{t=0,u=e,f=a,i=s,_=o,r=l,w=c,n=null},e.proc=(e,h,b)=>{let g,m,x,y,k,S,v,z=0,E=0,D=0;for(D=h.next_in_index,y=h.avail_in,z=e.bitb,E=e.bitk,k=e.write,S=k=258&&y>=10&&(e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,b=p(u,f,i,_,r,w,e,h),D=h.next_in_index,y=h.avail_in,z=e.bitb,E=e.bitk,k=e.write,S=kE;){if(0===y)return e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,z|=(255&h.read_byte(D++))<>>=n[m+1],E-=n[m+1],x=n[m],0===x){l=n[m+2],t=6;break}if(0!=(16&x)){c=15&x,a=n[m+2],t=2;break}if(0==(64&x)){o=x,s=m/3+n[m+2];break}if(0!=(32&x)){t=7;break}return t=9,h.msg="invalid literal/length code",b=X,e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);case 2:for(g=c;g>E;){if(0===y)return e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,z|=(255&h.read_byte(D++))<>=g,E-=g,o=f,n=r,s=w,t=3;case 3:for(g=o;g>E;){if(0===y)return e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,z|=(255&h.read_byte(D++))<>=n[m+1],E-=n[m+1],x=n[m],0!=(16&x)){c=15&x,d=n[m+2],t=4;break}if(0==(64&x)){o=x,s=m/3+n[m+2];break}return t=9,h.msg="invalid distance code",b=X,e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);case 4:for(g=c;g>E;){if(0===y)return e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,z|=(255&h.read_byte(D++))<>=g,E-=g,t=5;case 5:for(v=k-d;0>v;)v+=e.end;for(;0!==a;){if(0===S&&(k==e.end&&0!==e.read&&(k=0,S=k7&&(E-=8,y++,D--),e.write=k,b=e.inflate_flush(h,b),k=e.write,S=k{}}re.inflate_trees_fixed=(e,t,n,i)=>(e[0]=9,t[0]=5,n[0]=Q,i[0]=$,0);const se=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function oe(e,t){const n=this;let i,r=0,a=0,s=0,o=0;const l=[0],c=[0],d=new ae;let u=0,f=new Int32Array(4320);const w=new re;n.bitk=0,n.bitb=0,n.win=new _(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==r&&d.free(e),r=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let i,r,a;return r=e.next_out_index,a=n.read,i=(a>n.write?n.end:n.write)-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==j&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i,a==n.end&&(a=0,n.write==n.end&&(n.write=0),i=n.write-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==j&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i),e.next_out_index=r,n.read=a,t},n.proc=(e,t)=>{let _,p,h,b,g,m,x,y;for(b=e.next_in_index,g=e.avail_in,p=n.bitb,h=n.bitk,m=n.write,x=mh;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>1){case 0:p>>>=3,h-=3,_=7&h,p>>>=_,h-=_,r=1;break;case 1:k=[],S=[],v=[[]],z=[[]],re.inflate_trees_fixed(k,S,v,z),d.init(k[0],S[0],v[0],0,z[0],0),p>>>=3,h-=3,r=6;break;case 2:p>>>=3,h-=3,r=3;break;case 3:return p>>>=3,h-=3,r=9,e.msg="invalid block type",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t)}break;case 1:for(;32>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>16&65535)!=(65535&p))return r=9,e.msg="invalid stored block lengths",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);a=65535&p,p=h=0,r=0!==a?2:0!==u?7:0;break;case 2:if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(0===x&&(m==n.end&&0!==n.read&&(m=0,x=mg&&(_=g),_>x&&(_=x),n.win.set(e.read_buf(b,_),m),b+=_,g-=_,m+=_,x-=_,0!=(a-=_))break;r=0!==u?7:0;break;case 3:for(;14>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<29||(_>>5&31)>29)return r=9,e.msg="too many length or distance symbols",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(_=258+(31&_)+(_>>5&31),!i||i.length<_)i=[];else for(y=0;_>y;y++)i[y]=0;p>>>=14,h-=14,o=0,r=4;case 4:for(;4+(s>>>10)>o;){for(;3>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>=3,h-=3}for(;19>o;)i[se[o++]]=0;if(l[0]=7,_=w.inflate_trees_bits(i,l,c,f,e),0!=_)return(t=_)==X&&(i=null,r=9),n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);o=0,r=5;case 5:for(;_=s,258+(31&_)+(_>>5&31)>o;){let a,d;for(_=l[0];_>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<d)p>>>=_,h-=_,i[o++]=d;else{for(y=18==d?7:d-14,a=18==d?11:3;_+y>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>=_,h-=_,a+=p&J[y],p>>>=y,h-=y,y=o,_=s,y+a>258+(31&_)+(_>>5&31)||16==d&&1>y)return i=null,r=9,e.msg="invalid bit length repeat",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d=16==d?i[y-1]:0;do{i[y++]=d}while(0!=--a);o=y}}if(c[0]=-1,E=[],D=[],R=[],F=[],E[0]=9,D[0]=6,_=s,_=w.inflate_trees_dynamic(257+(31&_),1+(_>>5&31),i,E,D,R,F,f,e),0!=_)return _==X&&(i=null,r=9),t=_,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d.init(E[0],D[0],f,R[0],f,F[0]),r=6;case 6:if(n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),b=e.next_in_index,g=e.avail_in,p=n.bitb,h=n.bitk,m=n.write,x=m{n.reset(e,null),n.win=null,f=null},n.set_dictionary=(e,t,i)=>{n.win.set(e.subarray(t,t+i),0),n.read=n.write=i},n.sync_point=()=>1==r?1:0}const le=13,ce=[0,0,255,255];function de(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):G}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,i)=>(n.msg=null,e.blocks=null,8>i||i>15?(e.inflateEnd(n),G):(e.wbits=i,n.istate.blocks=new oe(n,1<{let n,i;if(!e||!e.istate||!e.next_in)return G;const r=e.istate;for(t=4==t?j:0,n=j;;)switch(r.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(r.method=e.read_byte(e.next_in_index++)))){r.mode=le,e.msg="unknown compression method",r.marker=5;break}if(8+(r.method>>4)>r.wbits){r.mode=le,e.msg="invalid win size",r.marker=5;break}r.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,i=255&e.read_byte(e.next_in_index++),((r.method<<8)+i)%31!=0){r.mode=le,e.msg="incorrect header check",r.marker=5;break}if(0==(32&i)){r.mode=7;break}r.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,r.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,r.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,r.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,r.need+=255&e.read_byte(e.next_in_index++),r.mode=6,2);case 6:return r.mode=le,e.msg="need dictionary",r.marker=0,G;case 7:if(n=r.blocks.proc(e,n),n==X){r.mode=le,r.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,r.blocks.reset(e,r.was),r.mode=12;case 12:return e.avail_in=0,1;case le:return X;default:return G}},e.inflateSetDictionary=(e,t,n)=>{let i=0,r=n;if(!e||!e.istate||6!=e.istate.mode)return G;const a=e.istate;return r<1<{let n,i,r,a,s;if(!e||!e.istate)return G;const o=e.istate;if(o.mode!=le&&(o.mode=le,o.marker=0),0===(n=e.avail_in))return j;for(i=e.next_in_index,r=o.marker;0!==n&&4>r;)e.read_byte(i)==ce[r]?r++:r=0!==e.read_byte(i)?0:4-r,i++,n--;return e.total_in+=i-e.next_in_index,e.next_in_index=i,e.avail_in=n,o.marker=r,4!=r?X:(a=e.total_in,s=e.total_out,t(e),e.total_in=a,e.total_out=s,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():G}function ue(){}ue.prototype={inflateInit(e){const t=this;return t.istate=new de,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):G},inflateEnd(){const e=this;if(!e.istate)return G;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):G},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):G},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const fe=4294967295,_e=65535,we=67324752,pe=134695760,he=33639248,be=101075792,ge=117853008,me=21589,xe=2048,ye="/",ke=new o(2107,11,31),Se=new o(1980,0,1),ve=void 0,ze="undefined",Ee="function";class De{constructor(e){return class extends v{constructor(t,n){const i=new e(n);super({transform(e,t){t.enqueue(i.append(e))},flush(e){const t=i.flush();t&&e.enqueue(t)}})}}}}let Re=2;try{typeof F!=ze&&F.hardwareConcurrency&&(Re=F.hardwareConcurrency)}catch(e){}const Fe={chunkSize:524288,maxWorkers:Re,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:ve,CompressionStreamNative:typeof D!=ze&&D,DecompressionStreamNative:typeof R!=ze&&R},Ae=n.assign({},Fe);function Te(){return Ae}function Ce(e){return s.max(e.chunkSize,64)}function Ne(e){const{baseURL:n,chunkSize:i,maxWorkers:r,terminateWorkerTimeout:a,useCompressionStream:s,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:u,workerScripts:_}=e;if(Ue("baseURL",n),Ue("chunkSize",i),Ue("maxWorkers",r),Ue("terminateWorkerTimeout",a),Ue("useCompressionStream",s),Ue("useWebWorkers",o),l&&(Ae.CompressionStream=new De(l)),c&&(Ae.DecompressionStream=new De(c)),Ue("CompressionStream",d),Ue("DecompressionStream",u),_!==ve){const{deflate:e,inflate:n}=_;if((e||n)&&(Ae.workerScripts||(Ae.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");Ae.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");Ae.workerScripts.inflate=n}}}function Ue(e,t){t!==ve&&(Ae[e]=t)}const We=[];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;We[e]=t}class Ie{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,i=0|e.length;i>n;n++)t=t>>>8^We[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Oe extends v{constructor(){let e;const t=new Ie;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new _(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function Le(e){if(void 0===m){const t=new _((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=Me.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>s.round(e/1099511627776)||32,_shiftRight(e,t,n,i){for(void 0===i&&(i=[]);t>=32;t-=32)i.push(n),n=0;if(0===t)return i.concat(e);for(let r=0;r>>t),n=e[r]<<32-t;const r=e.length?e[e.length-1]:0,a=Me.getPartial(r);return i.push(Me.partial(t+a&31,t+a>32?n:i.pop(),1)),i}},Pe={bytes:{fromBits(e){const t=Me.bitLength(e)/8,n=new _(t);let i;for(let r=0;t>r;r++)0==(3&r)&&(i=e[r/4]),n[r]=i>>>24,i<<=8;return n},toBits(e){const t=[];let n,i=0;for(n=0;n9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new p(n);let s=0;for(let e=t.blockSize+i-(t.blockSize+i&t.blockSize-1);r>=e;e+=t.blockSize)t._block(a.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=Me.concat(t,[Me.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,i){return e>19?e>39?e>59?e>79?void 0:t^n^i:t&n|t&i|n&i:t^n^i:t&n|~t&i}_S(e,t){return t<>>32-e}_block(e){const n=this,i=n._h,r=t(80);for(let t=0;16>t;t++)r[t]=e[t];let a=i[0],o=i[1],l=i[2],c=i[3],d=i[4];for(let e=0;79>=e;e++){16>e||(r[e]=n._S(1,r[e-3]^r[e-8]^r[e-14]^r[e-16]));const t=n._S(5,a)+n._f(e,o,l,c)+d+r[e]+n._key[s.floor(e/20)]|0;d=c,c=l,l=n._S(30,o),o=a,a=t}i[0]=i[0]+a|0,i[1]=i[1]+o|0,i[2]=i[2]+l|0,i[3]=i[3]+c|0,i[4]=i[4]+d|0}},Be={getRandomValues(e){const t=new p(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(s.random()>.5?1:-1))};for(let i,r=0;rnew Ve.hmacSha1(Pe.bytes.toBits(e)),pbkdf2(e,t,n,i){if(n=n||1e4,0>i||0>n)throw new f("invalid params to pbkdf2");const r=1+(i>>5)<<2;let a,s,o,l,c;const d=new ArrayBuffer(r),u=new h(d);let _=0;const w=Me;for(t=Pe.bytes.toBits(t),c=1;(r||1)>_;c++){for(a=s=e.encrypt(w.concat(t,[c])),o=1;n>o;o++)for(s=e.encrypt(s),l=0;l_&&or&&(e=(new n).update(e).finalize());for(let t=0;r>t;t++)i[0][t]=909522486^e[t],i[1][t]=1549556828^e[t];t._baseHash[0].update(i[0]),t._baseHash[1].update(i[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},qe=void 0!==k&&"function"==typeof k.getRandomValues,Ze="Invalid password",Ke="Invalid signature",Ye="zipjs-abort-check-password";function Ge(e){return qe?k.getRandomValues(e):Be.getRandomValues(e)}const Xe=16,je={name:"PBKDF2"},Je=n.assign({hash:{name:"HMAC"}},je),Qe=n.assign({iterations:1e3,hash:{name:"SHA-1"}},je),$e=["deriveBits"],et=[8,12,16],tt=[16,24,32],nt=10,it=[0,0,0,0],rt="undefined",at="function",st=typeof k!=rt,ot=st&&k.subtle,lt=st&&typeof ot!=rt,ct=Pe.bytes,dt=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],i=t._tables[1],r=e.length;let a,s,o,l=1;if(4!==r&&6!==r&&8!==r)throw new f("invalid aes key size");for(t._key=[s=e.slice(0),o=[]],a=r;4*r+28>a;a++){let e=s[a-1];(a%r==0||8===r&&a%r==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],a%r==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),s[a]=s[a-r]^e}for(let e=0;a;e++,a--){const t=s[3&e?a:a-4];o[e]=4>=a||4>e?t:i[0][n[t>>>24]]^i[1][n[t>>16&255]]^i[2][n[t>>8&255]]^i[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],i=t[4],r=[],a=[];let s,o,l,c;for(let e=0;256>e;e++)a[(r[e]=e<<1^283*(e>>7))^e]=e;for(let d=s=0;!n[d];d^=o||1,s=a[s]||1){let a=s^s<<1^s<<2^s<<3^s<<4;a=a>>8^255&a^99,n[d]=a,i[a]=d,c=r[l=r[o=r[d]]];let u=16843009*c^65537*l^257*o^16843008*d,f=257*r[a]^16843008*a;for(let n=0;4>n;n++)e[n][d]=f=f<<24^f>>>8,t[n][a]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],i=n.length/4-2,r=[0,0,0,0],a=this._tables[t],s=a[0],o=a[1],l=a[2],c=a[3],d=a[4];let u,_,w,p=e[0]^n[0],h=e[t?3:1]^n[1],b=e[2]^n[2],g=e[t?1:3]^n[3],m=4;for(let e=0;i>e;e++)u=s[p>>>24]^o[h>>16&255]^l[b>>8&255]^c[255&g]^n[m],_=s[h>>>24]^o[b>>16&255]^l[g>>8&255]^c[255&p]^n[m+1],w=s[b>>>24]^o[g>>16&255]^l[p>>8&255]^c[255&h]^n[m+2],g=s[g>>>24]^o[p>>16&255]^l[h>>8&255]^c[255&b]^n[m+3],m+=4,p=u,h=_,b=w;for(let e=0;4>e;e++)r[t?3&-e:e]=d[p>>>24]<<24^d[h>>16&255]<<16^d[b>>8&255]<<8^d[255&g]^n[m++],u=p,p=h,h=b,b=g,g=u;return r}},ut=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255==(e>>24&255)){let t=e>>16&255,n=e>>8&255,i=255&e;255===t?(t=0,255===n?(n=0,255===i?i=0:++i):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=i}else e+=1<<24;return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let i;if(!(i=t.length))return[];const r=Me.bitLength(t);for(let r=0;i>r;r+=4){this.incCounter(n);const i=e.encrypt(n);t[r]^=i[0],t[r+1]^=i[1],t[r+2]^=i[2],t[r+3]^=i[3]}return Me.clamp(t,r)}},ft=Ve.hmacSha1;let _t=st&<&&typeof ot.importKey==at,wt=st&<&&typeof ot.deriveBits==at;class pt extends v{constructor({password:e,signed:t,encryptionStrength:i,checkPasswordOnly:r}){super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:e,signed:t,strength:i-1,pending:new _})},async transform(e,t){const n=this,{password:i,strength:a,resolveReady:s,ready:o}=n;i?(await(async(e,t,n,i)=>{const r=await gt(e,t,n,xt(i,0,et[t])),a=xt(i,et[t]);if(r[0]!=a[0]||r[1]!=a[1])throw new f(Ze)})(n,a,i,xt(e,0,et[a]+2)),e=xt(e,et[a]+2),r?t.error(new f(Ye)):s()):await o;const l=new _(e.length-nt-(e.length-nt)%Xe);t.enqueue(bt(n,e,l,0,nt,!0))},async flush(e){const{signed:t,ctr:n,hmac:i,pending:r,ready:a}=this;await a;const s=xt(r,0,r.length-nt),o=xt(r,r.length-nt);let l=new _;if(s.length){const e=kt(ct,s);i.update(e);const t=n.update(e);l=yt(ct,t)}if(t){const e=xt(yt(ct,i.digest()),0,nt);for(let t=0;nt>t;t++)if(e[t]!=o[t])throw new f(Ke)}e.enqueue(l)}})}}class ht extends v{constructor({password:e,encryptionStrength:t}){let i;super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new _})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:a,ready:s}=n;let o=new _;i?(o=await(async(e,t,n)=>{const i=Ge(new _(et[t]));return mt(i,await gt(e,t,n,i))})(n,r,i),a()):await s;const l=new _(o.length+e.length-e.length%Xe);l.set(o,0),t.enqueue(bt(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:a}=this;await a;let s=new _;if(r.length){const e=t.update(kt(ct,r));n.update(e),s=yt(ct,e)}i.signature=yt(ct,n.digest()).slice(0,nt),e.enqueue(mt(s,i.signature))}}),i=this}}function bt(e,t,n,i,r,a){const{ctr:s,hmac:o,pending:l}=e,c=t.length-r;let d;for(l.length&&(t=mt(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new _(t)).set(n,0)}return e})(n,c-c%Xe)),d=0;c-Xe>=d;d+=Xe){const e=kt(ct,xt(t,d,d+Xe));a&&o.update(e);const r=s.update(e);a||o.update(r),n.set(yt(ct,r),d+i)}return e.pending=xt(t,d),n}async function gt(e,i,r,a){e.password=null;const s=Le(r),o=await(async(e,t,n,i,r)=>{if(!_t)return Ve.importKey(t);try{return await ot.importKey("raw",t,n,!1,r)}catch(e){return _t=!1,Ve.importKey(t)}})(0,s,Je,0,$e),l=await(async(e,t,n)=>{if(!wt)return Ve.pbkdf2(t,e.salt,Qe.iterations,n);try{return await ot.deriveBits(e,t,n)}catch(i){return wt=!1,Ve.pbkdf2(t,e.salt,Qe.iterations,n)}})(n.assign({salt:a},Qe),o,8*(2*tt[i]+2)),c=new _(l),d=kt(ct,xt(c,0,tt[i])),u=kt(ct,xt(c,tt[i],2*tt[i])),f=xt(c,2*tt[i]);return n.assign(e,{keys:{key:d,authentication:u,passwordVerification:f},ctr:new ut(new dt(d),t.from(it)),hmac:new ft(u)}),f}function mt(e,t){let n=e;return e.length+t.length&&(n=new _(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function xt(e,t,n){return e.subarray(t,n)}function yt(e,t){return e.fromBits(t)}function kt(e,t){return e.toBits(t)}class St extends v{constructor({password:e,passwordVerification:t,checkPasswordOnly:i}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Dt(this,e)},transform(e,t){const n=this;if(n.password){const t=zt(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(Ze);e=e.subarray(12)}i?t.error(new f(Ye)):t.enqueue(zt(n,e))}})}}class vt extends v{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Dt(this,e)},transform(e,t){const n=this;let i,r;if(n.password){n.password=null;const t=Ge(new _(12));t[11]=n.passwordVerification,i=new _(e.length+t.length),i.set(Et(n,t),0),r=12}else i=new _(e.length),r=0;i.set(Et(n,e),r),t.enqueue(i)}})}}function zt(e,t){const n=new _(t.length);for(let i=0;i>>24]),r=~e.crcKey2.get(),e.keys=[n,i,r]}function Ft(e){const t=2|e.keys[2];return At(s.imul(t,1^t)>>>8)}function At(e){return 255&e}function Tt(e){return 4294967295&e}const Ct="deflate-raw";class Nt extends v{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:i}){super({});const{compressed:r,encrypted:a,useCompressionStream:s,zipCrypto:o,signed:l,level:c}=e,d=this;let u,f,_=Wt(super.readable);a&&!o||!l||(u=new Oe,_=Lt(_,u)),r&&(_=Ot(_,s,{level:c,chunkSize:t},i,n)),a&&(o?_=Lt(_,new vt(e)):(f=new ht(e),_=Lt(_,f))),It(d,_,(async()=>{let e;a&&!o&&(e=f.signature),a&&!o||!l||(e=new h(u.value.buffer).getUint32(0)),d.signature=e}))}}class Ut extends v{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:i}){super({});const{zipCrypto:r,encrypted:a,signed:s,signature:o,compressed:l,useCompressionStream:c}=e;let d,u,_=Wt(super.readable);a&&(r?_=Lt(_,new St(e)):(u=new pt(e),_=Lt(_,u))),l&&(_=Ot(_,c,{chunkSize:t},i,n)),a&&!r||!s||(d=new Oe,_=Lt(_,d)),It(this,_,(async()=>{if((!a||r)&&s){const e=new h(d.value.buffer);if(o!=e.getUint32(0,!1))throw new f(Ke)}}))}}function Wt(e){return Lt(e,new v({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function It(e,t,i){t=Lt(t,new v({flush:i})),n.defineProperty(e,"readable",{get:()=>t})}function Ot(e,t,n,i,r){try{e=Lt(e,new(t&&i?i:r)(Ct,n))}catch(i){if(!t)throw i;e=Lt(e,new r(Ct,n))}return e}function Lt(e,t){return e.pipeThrough(t)}const Mt="data",Pt="deflate",Ht="inflate";class Bt extends v{constructor(e,t){super({});const i=this,{codecType:r}=e;let a;r.startsWith(Pt)?a=Nt:r.startsWith(Ht)&&(a=Ut);let s=0;const o=new a(e,t),l=super.readable,c=new v({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;n.assign(i,{signature:e,size:s})}});n.defineProperty(i,"readable",{get:()=>l.pipeThrough(o).pipeThrough(c)})}}const Vt=typeof A!=ze;class qt{constructor(e,{readable:t,writable:i},{options:r,config:a,streamOptions:s,useWebWorkers:o,transferStreams:l,scripts:c},d){const{signal:u}=s;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Zt(t,s,a),{signal:u}),writable:i,options:n.assign({},r),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&&Vt?Gt:Yt)(e,a)}}class Zt extends v{constructor(e,{onstart:t,onprogress:n,size:i,onend:r},{chunkSize:a}){let s=0;super({start(){t&&Kt(t,i)},async transform(e,t){s+=e.length,n&&await Kt(n,s,i),t.enqueue(e)},flush(){e.size=s,r&&Kt(r,s)}},{highWaterMark:1,size:()=>a})}}async function Kt(e,...t){try{await e(...t)}catch(e){}}function Yt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:i},r)=>{const a=new Bt(e,r);try{await t.pipeThrough(a).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:e,size:r}=a;return{signature:e,size:r}}finally{i()}})(e,t)}}function Gt(e,{baseURL:t,chunkSize:i}){return e.interface||n.assign(e,{worker:Jt(e.scripts[0],t,e),interface:{run:()=>(async(e,t)=>{let i,r;const a=new g(((e,t)=>{i=e,r=t}));n.assign(e,{reader:null,writer:null,resolveResult:i,rejectResult:r,result:a});const{readable:s,options:o,scripts:l}=e,{writable:c,closed:d}=(e=>{const t=e.getWriter();let n;const i=new g((e=>n=e));return{writable:new E({async write(e){await t.ready,await t.write(e)},close(){t.releaseLock(),n()},abort:e=>t.abort(e)}),closed:i}})(e.writable);Qt({type:"start",scripts:l.slice(1),options:o,config:t,readable:s,writable:c},e)||n.assign(e,{reader:s.getReader(),writer:c.getWriter()});const u=await a;try{await c.getWriter().close()}catch(e){}return await d,u})(e,{chunkSize:i})}}),e.interface}let Xt=!0,jt=!0;function Jt(e,t,i){const r={type:"module"};let a,s;typeof e==Ee&&(e=e());try{a=new u(e,t)}catch(t){a=e}if(Xt)try{s=new A(a)}catch(e){Xt=!1,s=new A(a,r)}else s=new A(a,r);return s.addEventListener("message",(e=>(async({data:e},t)=>{const{type:i,value:r,messageId:a,result:s,error:o}=e,{reader:l,writer:c,resolveResult:d,rejectResult:u,onTaskFinished:w}=t;try{if(o){const{message:e,stack:t,code:i,name:r}=o,a=new f(e);n.assign(a,{stack:t,code:i,name:r}),p(a)}else{if("pull"==i){const{value:e,done:n}=await l.read();Qt({type:Mt,value:e,done:n,messageId:a},t)}i==Mt&&(await c.ready,await c.write(new _(r)),Qt({type:"ack",messageId:a},t)),"close"==i&&p(null,s)}}catch(o){p(o)}function p(e,t){e?u(e):d(t),c&&c.releaseLock(),w()}})(e,i))),s}function Qt(e,{worker:t,writer:n,onTaskFinished:i,transferStreams:r}){try{let{value:n,readable:i,writable:a}=e;const s=[];if(n&&(e.value=n.buffer,s.push(e.value)),r&&jt?(i&&s.push(i),a&&s.push(a)):e.readable=e.writable=null,s.length)try{return t.postMessage(e,s),!0}catch(n){jt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),i(),e}}let $t=[];const en=[];let tn=0;async function nn(e,t){const{options:n,config:i}=t,{transferStreams:a,useWebWorkers:s,useCompressionStream:o,codecType:l,compressed:c,signed:d,encrypted:u}=n,{workerScripts:f,maxWorkers:_,terminateWorkerTimeout:w}=i;t.transferStreams=a||a===ve;const p=!(c||d||u||t.transferStreams);let h;t.useWebWorkers=!p&&(s||s===ve&&i.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[l]:[],n.useCompressionStream=o||o===ve&&i.useCompressionStream;const b=$t.find((e=>!e.busy));if(b)rn(b),h=new qt(b,e,t,m);else if($t.length<_){const n={indexWorker:tn};tn++,$t.push(n),h=new qt(n,e,t,m)}else h=await new g((n=>en.push({resolve:n,stream:e,workerOptions:t})));return h.run();function m(e){if(en.length){const[{resolve:t,stream:n,workerOptions:i}]=en.splice(0,1);t(new qt(e,n,i,m))}else e.worker?(rn(e),r.isFinite(w)&&w>=0&&(e.terminateTimeout=setTimeout((()=>{$t=$t.filter((t=>t!=e)),e.terminate()}),w))):$t=$t.filter((t=>t!=e))}}function rn(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const an="HTTP error ",sn="HTTP Range not supported",on="Writer iterator completed too soon",ln="GET",cn="bytes",dn=65536,un="writable";class fn{constructor(){this.size=0}init(){this.initialized=!0}}class _n extends fn{get readable(){const e=this,{chunkSize:t=dn}=e,n=new z({start(){this.chunkOffset=0},async pull(i){const{offset:r=0,size:a,diskNumberStart:o}=n,{chunkOffset:l}=this;i.enqueue(await In(e,r+l,s.min(t,a-l),o)),l+t>a?i.close():this.chunkOffset+=t}});return n}}class wn extends fn{constructor(){super();const e=this,t=new E({write:t=>e.writeUint8Array(t)});n.defineProperty(e,un,{get:()=>t})}writeUint8Array(){}}class pn extends _n{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,i=e+t,r=e||it&&(a=a.slice(e,i)),new _(a)}}class hn extends fn{constructor(e){super();const t=new v,i=[];e&&i.push(["Content-Type",e]),n.defineProperty(this,un,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:i}).blob()}getData(){return this.blob}}class bn extends _n{constructor(e,t){super(),mn(this,e,t)}async init(){await xn(this,Rn,vn),super.init()}readUint8Array(e,t){return yn(this,e,t,Rn,vn)}}class gn extends _n{constructor(e,t){super(),mn(this,e,t)}async init(){await xn(this,Fn,zn),super.init()}readUint8Array(e,t){return yn(this,e,t,Fn,zn)}}function mn(e,t,i){const{preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s}=i;delete(i=n.assign({},i)).preventHeadRequest,delete i.useRangeHeader,delete i.forceRangeRequests,delete i.useXHR,n.assign(e,{url:t,options:i,preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s})}async function xn(e,t,n){const{url:i,useRangeHeader:a,forceRangeRequests:s}=e;if((e=>{const{baseURL:t}=Te(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(i)&&(a||s)){const{headers:i}=await t(ln,e,kn(e));if(!s&&i.get("Accept-Ranges")!=cn)throw new f(sn);{let a;const s=i.get("Content-Range");if(s){const e=s.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=r(t))}}a===ve?await Dn(e,t,n):e.size=a}}else await Dn(e,t,n)}async function yn(e,t,n,i,r){const{useRangeHeader:a,forceRangeRequests:s,options:o}=e;if(a||s){const r=await i(ln,e,kn(e,t,n));if(206!=r.status)throw new f(sn);return new _(await r.arrayBuffer())}{const{data:i}=e;return i||await r(e,o),new _(e.data.subarray(t,t+n))}}function kn(e,t=0,i=1){return n.assign({},Sn(e),{Range:cn+"="+t+"-"+(t+i-1)})}function Sn({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function vn(e){await En(e,Rn)}async function zn(e){await En(e,Fn)}async function En(e,t){const n=await t(ln,e,Sn(e));e.data=new _(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Dn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const i=(await t("HEAD",e,Sn(e))).headers.get("Content-Length");i?e.size=r(i):await n(e,e.options)}}async function Rn(e,{options:t,url:i},r){const a=await fetch(i,n.assign({},t,{method:e,headers:r}));if(400>a.status)return a;throw 416==a.status?new f(sn):new f(an+(a.statusText||a.status))}function Fn(e,{url:t},i){return new g(((r,a)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",(()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),r({status:s.status,arrayBuffer:()=>s.response,headers:new l(e)})}else a(416==s.status?new f(sn):new f(an+(s.statusText||s.status)))}),!1),s.addEventListener("error",(e=>a(e.detail?e.detail.error:new f("Network error"))),!1),s.open(e,t),i)for(const e of n.entries(i))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()}))}class An extends _n{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new gn(e,t):new bn(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Tn extends _n{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await g.all(t.map((async(n,i)=>{await n.init(),i!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const i=this,{readers:r}=this;let a,o=n;-1==o&&(o=r.length-1);let l=e;for(;l>=r[o].size;)l-=r[o].size,o++;const c=r[o],d=c.size;if(l+t>d){const r=d-l;a=new _(t),a.set(await In(c,l,r)),a.set(await i.readUint8Array(e+r,t-r,n),r)}else a=await In(c,l,t);return i.lastDiskNumber=s.max(o,i.lastDiskNumber),a}}class Cn extends fn{constructor(e,t=4294967295){super();const i=this;let r,a,s;n.assign(i,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new E({async write(t){const{availableSize:n}=i;if(s)t.lengtho})}}async function Nn(e,t){e.init&&!e.initialized&&await e.init(t)}function Un(e){return t.isArray(e)&&(e=new Tn(e)),e instanceof z&&(e={readable:e}),e}function Wn(e){e.writable===ve&&typeof e.next==Ee&&(e=new Cn(e)),e instanceof E&&(e={writable:e});const{writable:t}=e;return t.size===ve&&(t.size=0),e instanceof Cn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function In(e,t,n,i){return e.readUint8Array(t,n,i)}const On=Tn,Ln=Cn,Mn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Pn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const ai="File format is not recognized",si="End of central directory not found",oi="End of Zip64 central directory not found",li="End of Zip64 central directory locator not found",ci="Central directory header not found",di="Local file header not found",ui="Zip64 extra field not found",fi="File contains encrypted entry",_i="Encryption method not supported",wi="Compression method not supported",pi="Split zip file",hi="utf-8",bi="cp437",gi=[[Zn,fe],[Kn,fe],[Yn,fe],[Gn,_e]],mi={[_e]:{getValue:Fi,bytes:4},[fe]:{getValue:Ai,bytes:8}};class xi{constructor(e,t,i){n.assign(this,{reader:e,config:t,options:i})}async getData(e,t,i={}){const r=this,{reader:a,offset:s,diskNumberStart:o,extraFieldAES:l,compressionMethod:c,config:d,bitFlag:u,signature:w,rawLastModDate:p,uncompressedSize:h,compressedSize:b}=r,g=r.localDirectory={},m=Ti(await In(a,s,30,o));let x=vi(r,i,"password");if(x=x&&x.length&&x,l&&99!=l.originalCompressionMethod)throw new f(wi);if(0!=c&&8!=c)throw new f(wi);if(Fi(m,0)!=we)throw new f(di);yi(g,m,4),g.rawExtraField=g.extraFieldLength?await In(a,s+30+g.filenameLength,g.extraFieldLength,o):new _,await ki(r,g,m,4),n.assign(t,{lastAccessDate:g.lastAccessDate,creationDate:g.creationDate});const y=r.encrypted&&g.encrypted,k=y&&!l;if(y){if(!k&&l.strength===ve)throw new f(_i);if(!x)throw new f(fi)}const S=s+30+g.filenameLength+g.extraFieldLength,v=b,z=a.readable;n.assign(z,{diskNumberStart:o,offset:S,size:v});const D=vi(r,i,"signal"),R=vi(r,i,"checkPasswordOnly");R&&(e=new E),e=Wn(e),await Nn(e,h);const{writable:F}=e,{onstart:A,onprogress:T,onend:C}=i,N={options:{codecType:Ht,password:x,zipCrypto:k,encryptionStrength:l&&l.strength,signed:vi(r,i,"checkSignature"),passwordVerification:k&&(u.dataDescriptor?p>>>8&255:w>>>24&255),signature:w,compressed:0!=c,encrypted:y,useWebWorkers:vi(r,i,"useWebWorkers"),useCompressionStream:vi(r,i,"useCompressionStream"),transferStreams:vi(r,i,"transferStreams"),checkPasswordOnly:R},config:d,streamOptions:{signal:D,size:v,onstart:A,onprogress:T,onend:C}};let U=0;try{({outputSize:U}=await nn({readable:z,writable:F},N))}catch(e){if(!R||e.message!=Ye)throw e}finally{const e=vi(r,i,"preventClose");F.size+=U,e||F.locked||await F.getWriter().close()}return R?void 0:e.getData?e.getData():F}}function yi(e,t,i){const r=e.rawBitFlag=Ri(t,i+2),a=1==(1&r),s=Fi(t,i+6);n.assign(e,{encrypted:a,version:Ri(t,i),bitFlag:{level:(6&r)>>1,dataDescriptor:8==(8&r),languageEncodingFlag:(r&xe)==xe},rawLastModDate:s,lastModDate:zi(s),filenameLength:Ri(t,i+22),extraFieldLength:Ri(t,i+24)})}async function ki(e,t,i,r){const{rawExtraField:a}=t,s=t.extraField=new l,c=Ti(new _(a));let d=0;try{for(;d{t.zip64=!0;const n=Ti(e.data),i=gi.filter((([e,n])=>t[e]==n));for(let r=0,a=0;r{const r=Ti(e.data),a=Di(r,4);n.assign(e,{vendorVersion:Di(r,0),vendorId:Di(r,2),strength:a,originalCompressionMethod:i,compressionMethod:Ri(r,5)}),t.compressionMethod=e.compressionMethod})(b,t,u),t.extraFieldAES=b):t.compressionMethod=u;const g=s.get(10);g&&(((e,t)=>{const i=Ti(e.data);let r,a=4;try{for(;a{const n=Ti(e.data),i=Di(n,0),r=[],a=[];1==(1&i)&&(r.push(Xn),a.push(jn)),2==(2&i)&&(r.push(Jn),a.push("rawLastAccessDate")),4==(4&i)&&(r.push(Qn),a.push("rawCreationDate"));let s=1;r.forEach(((i,r)=>{if(e.data.length>=s+4){const l=Fi(n,s);t[i]=e[i]=new o(1e3*l);const c=a[r];e[c]=l}s+=4}))})(m,t),t.extraFieldExtendedTimestamp=m)}async function Si(e,t,i,r,a){const s=Ti(e.data),o=new Ie;o.append(a[i]);const l=Ti(new _(4));l.setUint32(0,o.get(),!0);const c=Fi(s,1);n.assign(e,{version:Di(s,0),[t]:Pn(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&c==Fi(l,0)}),e.valid&&(r[t]=e[t],r[t+"UTF8"]=!0)}function vi(e,t,n){return t[n]===ve?e.options[n]:t[n]}function zi(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Ei(e){return new o(r(e/a(1e4)-a(116444736e5)))}function Di(e,t){return e.getUint8(t)}function Ri(e,t){return e.getUint16(t,!0)}function Fi(e,t){return e.getUint32(t,!0)}function Ai(e,t){return r(e.getBigUint64(t,!0))}function Ti(e){return new h(e.buffer)}const Ci="File already exists",Ni="Zip file comment exceeds 64KB",Ui="File entry comment exceeds 64KB",Wi="File entry name exceeds 64KB",Ii="Version exceeds 65535",Oi="The strength must equal 1, 2, or 3",Li="Extra field type exceeds 65535",Mi="Extra field data exceeds 64KB",Pi="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Hi=new _([7,0,2,0,65,69,3,0,0]);let Bi=0;const Vi=[];async function qi(e,t){const n=e.getWriter();await n.ready,e.size+=$i(t),await n.write(t),n.releaseLock()}function Zi(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function Ki(e,t,n,i){const r=t[n]===ve?e.options[n]:t[n];return r===ve?i:r}function Yi(e,t,n){e.setUint8(t,n)}function Gi(e,t,n){e.setUint16(t,n,!0)}function Xi(e,t,n){e.setUint32(t,n,!0)}function ji(e,t,n){e.setBigUint64(t,n,!0)}function Ji(e,t,n){e.set(t,n)}function Qi(e){return new h(e.buffer)}function $i(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}Ne({Deflate:function(e){const t=new Y,n=(i=e&&e.chunkSize?e.chunkSize:65536)+5*(s.floor(i/16383)+1);var i;const r=new _(n);let a=e?e.level:-1;void 0===a&&(a=-1),t.deflateInit(a),t.next_out=r,this.append=(e,i)=>{let a,s,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 _(r)):d.push(r.subarray(0,t.next_out_index))),c+=t.next_out_index,i&&t.next_in_index>0&&t.next_in_index!=o&&(i(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(s=new _(c),d.forEach((e=>{s.set(e,l),l+=e.length}))):s=d[0]?new _(d[0]):new _,s}},this.flush=()=>{let e,i,a=0,s=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(r.slice(0,t.next_out_index)),s+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),i=new _(s),o.forEach((e=>{i.set(e,a),a+=e.length})),i}},Inflate:function(e){const t=new ue,n=e&&e.chunkSize?s.floor(2*e.chunkSize):131072,i=new _(n);let r=!1;t.inflateInit(),t.next_out=i,this.append=(e,a)=>{const s=[];let o,l,c=0,d=0,u=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||r||(t.next_in_index=0,r=!0),o=t.inflate(0),r&&o===j){if(0!==t.avail_in)throw new f("inflating: bad input")}else if(0!==o&&1!==o)throw new f("inflating: "+t.msg);if((r||1===o)&&t.avail_in===e.length)throw new f("inflating: bad input");t.next_out_index&&(t.next_out_index===n?s.push(new _(i)):s.push(i.subarray(0,t.next_out_index))),u+=t.next_out_index,a&&t.next_in_index>0&&t.next_in_index!=c&&(a(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return s.length>1?(l=new _(u),s.forEach((e=>{l.set(e,d),d+=e.length}))):l=s[0]?new _(s[0]):new _,l}},this.flush=()=>{t.inflateEnd()}}}),e.BlobReader=pn,e.BlobWriter=hn,e.Data64URIReader=class extends _n{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const i=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:i,size:s.floor(.75*(t-i))})}readUint8Array(e,t){const{dataStart:n,dataURI:i}=this,r=new _(t),a=4*s.floor(e/3),o=atob(i.substring(a+n,4*s.ceil((e+t)/3)+n)),l=e-3*s.floor(a/4);for(let e=l;l+t>e;e++)r[e-l]=o.charCodeAt(e);return r}},e.Data64URIWriter=class extends wn{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,r=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*s.floor((a+e.length)/3)-a;n++)r+=i.fromCharCode(e[n]);for(;n2?t.data+=S(r):t.pending=r}getData(){return this.data+S(this.pending)}},e.ERR_BAD_FORMAT=ai,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=ci,e.ERR_DUPLICATED_NAME=Ci,e.ERR_ENCRYPTED=fi,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=li,e.ERR_EOCDR_NOT_FOUND=si,e.ERR_EOCDR_ZIP64_NOT_FOUND=oi,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=ui,e.ERR_HTTP_RANGE=sn,e.ERR_INVALID_COMMENT=Ni,e.ERR_INVALID_ENCRYPTION_STRENGTH=Oi,e.ERR_INVALID_ENTRY_COMMENT=Ui,e.ERR_INVALID_ENTRY_NAME=Wi,e.ERR_INVALID_EXTRAFIELD_DATA=Mi,e.ERR_INVALID_EXTRAFIELD_TYPE=Li,e.ERR_INVALID_PASSWORD=Ze,e.ERR_INVALID_SIGNATURE=Ke,e.ERR_INVALID_VERSION=Ii,e.ERR_ITERATOR_COMPLETED_TOO_SOON=on,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=di,e.ERR_SPLIT_ZIP_FILE=pi,e.ERR_UNSUPPORTED_COMPRESSION=wi,e.ERR_UNSUPPORTED_ENCRYPTION=_i,e.ERR_UNSUPPORTED_FORMAT=Pi,e.HttpRangeReader=class extends An{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=An,e.Reader=_n,e.SplitDataReader=Tn,e.SplitDataWriter=Cn,e.SplitZipReader=On,e.SplitZipWriter=Ln,e.TextReader=class extends pn{constructor(e){super(new b([e],{type:"text/plain"}))}},e.TextWriter=class extends hn{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,i=await super.getData();if(i.text&&t)return i.text();{const t=new FileReader;return new g(((r,a)=>{n.assign(t,{onload:({target:e})=>r(e.result),onerror:()=>a(t.error)}),t.readAsText(i,e)}))}}},e.Uint8ArrayReader=class extends _n{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 wn{init(e=0){n.assign(this,{offset:0,array:new _(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new _(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=wn,e.ZipReader=class{constructor(e,t={}){n.assign(this,{reader:Un(e),options:t,config:Te()})}async*getEntriesGenerator(e={}){const t=this;let{reader:i}=t;const{config:r}=t;if(await Nn(i),i.size!==ve&&i.readUint8Array||(i=new pn(await new d(i.readable).blob()),await Nn(i)),22>i.size)throw new f(ai);i.chunkSize=Ce(r);const a=await(async(e,t,n)=>{const i=new _(4);return Ti(i).setUint32(0,101010256,!0),await r(22)||await r(s.min(1048582,n));async function r(t){const r=n-t,a=await In(e,r,t);for(let e=a.length-22;e>=0;e--)if(a[e]==i[0]&&a[e+1]==i[1]&&a[e+2]==i[2]&&a[e+3]==i[3])return{offset:r+e,buffer:a.slice(e,e+22).buffer}}})(i,0,i.size);if(!a)throw Fi(Ti(await In(i,0,4)))==pe?new f(pi):new f(si);const o=Ti(a);let l=Fi(o,12),c=Fi(o,16);const u=a.offset,w=Ri(o,20),p=u+22+w;let h=Ri(o,4);const b=i.lastDiskNumber||0;let m=Ri(o,6),x=Ri(o,8),y=0,k=0;if(c==fe||l==fe||x==_e||m==_e){const e=Ti(await In(i,a.offset-20,20));if(Fi(e,0)!=ge)throw new f(oi);c=Ai(e,8);let t=await In(i,c,56,-1),n=Ti(t);const r=a.offset-20-56;if(Fi(n,0)!=be&&c!=r){const e=c;c=r,y=c-e,t=await In(i,c,56,-1),n=Ti(t)}if(Fi(n,0)!=be)throw new f(li);h==_e&&(h=Fi(n,16)),m==_e&&(m=Fi(n,20)),x==_e&&(x=Ai(n,32)),l==fe&&(l=Ai(n,40)),c-=l}if(b!=h)throw new f(pi);if(0>c||c>=i.size)throw new f(ai);let S=0,v=await In(i,c,l,m),z=Ti(v);if(l){const e=a.offset-l;if(Fi(z,S)!=he&&c!=e){const t=c;c=e,y=c-t,v=await In(i,c,l,m),z=Ti(v)}}const E=a.offset-c-(i.lastDiskOffset||0);if(l==E||0>E||(l=E,v=await In(i,c,l,m),z=Ti(v)),0>c||c>=i.size)throw new f(ai);const D=vi(t,e,"filenameEncoding"),R=vi(t,e,"commentEncoding");for(let a=0;x>a;a++){const o=new xi(i,r,t.options);if(Fi(z,S)!=he)throw new f(ci);yi(o,z,S+6);const l=!!o.bitFlag.languageEncodingFlag,c=S+46,d=c+o.filenameLength,u=d+o.extraFieldLength,_=Ri(z,S+4),w=0==(0&_),p=v.subarray(c,d),h=Ri(z,S+32),b=u+h,m=v.subarray(u,b),E=l,F=l,A=w&&16==(16&Di(z,S+38)),T=Fi(z,S+42)+y;n.assign(o,{versionMadeBy:_,msDosCompatible:w,compressedSize:0,uncompressedSize:0,commentLength:h,directory:A,offset:T,diskNumberStart:Ri(z,S+34),internalFileAttribute:Ri(z,S+36),externalFileAttribute:Fi(z,S+38),rawFilename:p,filenameUTF8:E,commentUTF8:F,rawExtraField:v.subarray(d,u)});const[C,N]=await g.all([Pn(p,E?hi:D||bi),Pn(m,F?hi:R||bi)]);n.assign(o,{rawComment:m,filename:C,comment:N,directory:A||C.endsWith(ye)}),k=s.max(T,k),await ki(o,o,z,S+6);const U=new ri(o);U.getData=(e,t)=>o.getData(e,U,t),S=b;const{onprogress:W}=e;if(W)try{await W(a+1,x,new ri(o))}catch(e){}yield U}const F=vi(t,e,"extractPrependedData"),A=vi(t,e,"extractAppendedData");return F&&(t.prependedData=k>0?await In(i,0,k):new _),t.comment=w?await In(i,u+22,w):new _,A&&(t.appendedData=pVi.push(e)));try{if(e=e.trim(),l.filenames.has(e))throw new f(Ci);return l.filenames.add(e),u=(async(e,i,r,l)=>{i=i.trim(),l.directory&&!i.endsWith(ye)?i+=ye:l.directory=i.endsWith(ye);const c=Le(i);if($i(c)>_e)throw new f(Wi);const d=l.comment||"",u=Le(d);if($i(u)>_e)throw new f(Ui);const b=Ki(e,l,"version",20);if(b>_e)throw new f(Ii);const m=Ki(e,l,"versionMadeBy",20);if(m>_e)throw new f(Ii);const x=Ki(e,l,Xn,new o),y=Ki(e,l,Jn),k=Ki(e,l,Qn),S=Ki(e,l,ti,!0),v=Ki(e,l,$n,0),z=Ki(e,l,ei,0),E=Ki(e,l,"password"),D=Ki(e,l,"encryptionStrength",3),R=Ki(e,l,"zipCrypto"),F=Ki(e,l,"extendedTimestamp",!0),A=Ki(e,l,"keepOrder",!0),T=Ki(e,l,"level"),C=Ki(e,l,"useWebWorkers"),N=Ki(e,l,"bufferedWrite"),U=Ki(e,l,"dataDescriptorSignature",!1),W=Ki(e,l,"signal"),I=Ki(e,l,"useCompressionStream");let O=Ki(e,l,"dataDescriptor",!0),L=Ki(e,l,ni);if(E!==ve&&D!==ve&&(1>D||D>3))throw new f(Oi);let M=new _;const{extraField:P}=l;if(P){let e=0,t=0;P.forEach((t=>e+=4+$i(t))),M=new _(e),P.forEach(((e,n)=>{if(n>_e)throw new f(Li);if($i(e)>_e)throw new f(Mi);Ji(M,new w([n]),t),Ji(M,new w([$i(e)]),t+2),Ji(M,e,t+4),t+=4+$i(e)}))}let H=0,B=0,V=0;const q=!0===L;r&&(r=Un(r),await Nn(r),r.size===ve?(O=!0,(L||L===ve)&&(L=!0,V=H=fe)):(V=r.size,H=(e=>e+5*(s.floor(e/16383)+1))(V)));const{diskOffset:Z,diskNumber:K,maxSize:Y}=e.writer,G=q||V>=fe,X=q||H>=fe,j=q||e.offset+e.pendingEntriesSize-Z>=fe,J=Ki(e,l,"supportZip64SplitFile",!0)&&q||K+s.ceil(e.pendingEntriesSize/Y)>=_e;if(j||G||X||J){if(!1===L||!A)throw new f(Pi);L=!0}L=L||!1;const Q=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:i,creationDate:r,password:a,level:o,zip64:l,zipCrypto:c,dataDescriptor:d,directory:u,rawExtraField:f,encryptionStrength:w,extendedTimestamp:h}=e,b=0!==o&&!u,g=!(!a||!$i(a));let m,x,y,k=e.version;if(g&&!c){m=new _($i(Hi)+2);const e=Qi(m);Gi(e,0,39169),Ji(m,Hi,2),Yi(e,8,w)}else m=new _;if(h){y=new _(9+(i?4:0)+(r?4:0));const e=Qi(y);Gi(e,0,me),Gi(e,2,$i(y)-4),Yi(e,4,1+(i?2:0)+(r?4:0)),Xi(e,5,s.floor(n.getTime()/1e3)),i&&Xi(e,9,s.floor(i.getTime()/1e3)),r&&Xi(e,13,s.floor(r.getTime()/1e3));try{x=new _(36);const e=Qi(x),t=Zi(n);Gi(e,0,10),Gi(e,2,32),Gi(e,8,1),Gi(e,10,24),ji(e,12,t),ji(e,20,Zi(i)||t),ji(e,28,Zi(r)||t)}catch(e){x=new _}}else x=y=new _;let S=xe;d&&(S|=8);let v=0;b&&(v=8),l&&(k=k>45?k:45),g&&(S|=1,c||(k=k>51?k:51,v=99,b&&(m[9]=8)));const z=new _(26),E=Qi(z);Gi(E,0,k),Gi(E,2,S),Gi(E,4,v);const D=new p(1),R=Qi(D);let F;F=Se>n?Se:n>ke?ke:n,Gi(R,0,(F.getHours()<<6|F.getMinutes())<<5|F.getSeconds()/2),Gi(R,2,(F.getFullYear()-1980<<4|F.getMonth()+1)<<5|F.getDate());const A=D[0];Xi(E,6,A),Gi(E,22,$i(t));const T=$i(m,y,x,f);Gi(E,24,T);const C=new _(30+$i(t)+T);return Xi(Qi(C),0,we),Ji(C,z,4),Ji(C,t,30),Ji(C,m,30+$i(t)),Ji(C,y,30+$i(t,m)),Ji(C,x,30+$i(t,m,y)),Ji(C,f,30+$i(t,m,y,x)),{localHeaderArray:C,headerArray:z,headerView:E,lastModDate:n,rawLastModDate:A,encrypted:g,compressed:b,version:k,compressionMethod:v,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:x,rawExtraFieldAES:m}})(l=n.assign({},l,{rawFilename:c,rawComment:u,version:b,versionMadeBy:m,lastModDate:x,lastAccessDate:y,creationDate:k,rawExtraField:M,zip64:L,zip64UncompressedSize:G,zip64CompressedSize:X,zip64Offset:j,zip64DiskNumberStart:J,password:E,level:T,useWebWorkers:C,encryptionStrength:D,extendedTimestamp:F,zipCrypto:R,bufferedWrite:N,keepOrder:A,dataDescriptor:O,dataDescriptorSignature:U,signal:W,msDosCompatible:S,internalFileAttribute:v,externalFileAttribute:z,useCompressionStream:I})),$=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:i}=e;let r,a=new _,s=0;return n&&(a=new _(t?i?24:20:i?16:12),r=Qi(a),i&&(s=4,Xi(r,0,134695760))),{dataDescriptorArray:a,dataDescriptorView:r,dataDescriptorOffset:s}})(l);let ee;B=$i(Q.localHeaderArray,$.dataDescriptorArray)+H,e.pendingEntriesSize+=B;try{ee=await(async(e,i,r,s,o)=>{const{files:l,writer:c}=e,{keepOrder:d,dataDescriptor:u,signal:w}=o,{headerInfo:p}=s,b=t.from(l.values()).pop();let m,x,y,k,S,v,z={};l.set(i,z);try{let t;d&&(t=b&&b.lock,z.lock=new g((e=>y=e))),o.bufferedWrite||e.writerLocked||e.bufferedWrites&&d||!u?(v=new hn,v.writable.size=0,m=!0,e.bufferedWrites++,await Nn(c)):(v=c,await E()),await Nn(v);const{writable:p}=c;let{diskOffset:R}=c;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new _(4);Xi(Qi(t),0,pe),await qi(p,t),e.offset+=4}m||(await t,await D(p));const{diskNumber:F}=c;if(S=!0,z.diskNumberStart=F,z=await(async(e,t,{diskNumberStart:i,lock:r},s,o,l)=>{const{headerInfo:c,dataDescriptorInfo:d}=s,{localHeaderArray:u,headerArray:f,lastModDate:w,rawLastModDate:p,encrypted:h,compressed:b,version:g,compressionMethod:m,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:y,rawExtraFieldAES:k}=c,{dataDescriptorArray:S}=d,{rawFilename:v,lastAccessDate:z,creationDate:E,password:D,level:R,zip64:F,zip64UncompressedSize:A,zip64CompressedSize:T,zip64Offset:C,zip64DiskNumberStart:N,zipCrypto:U,dataDescriptor:W,directory:I,versionMadeBy:O,rawComment:L,rawExtraField:M,useWebWorkers:P,onstart:H,onprogress:B,onend:V,signal:q,encryptionStrength:Z,extendedTimestamp:K,msDosCompatible:Y,internalFileAttribute:G,externalFileAttribute:X,useCompressionStream:j}=l,J={lock:r,versionMadeBy:O,zip64:F,directory:!!I,filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:L,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:y,rawExtraFieldAES:k,rawExtraField:M,extendedTimestamp:K,msDosCompatible:Y,internalFileAttribute:G,externalFileAttribute:X,diskNumberStart:i};let Q,$=0,ee=0;const{writable:te}=t;if(e){e.chunkSize=Ce(o),await qi(te,u);const t=e.readable,n=t.size=e.size,i={options:{codecType:Pt,level:R,password:D,encryptionStrength:Z,zipCrypto:h&&U,passwordVerification:h&&U&&p>>8&255,signed:!0,compressed:b,encrypted:h,useWebWorkers:P,useCompressionStream:j,transferStreams:!1},config:o,streamOptions:{signal:q,size:n,onstart:H,onprogress:B,onend:V}},r=await nn({readable:t,writable:te},i);te.size+=r.size,Q=r.signature,ee=e.size=t.size,$=r.size}else await qi(te,u);let ne;if(F){let e=4;A&&(e+=8),T&&(e+=8),C&&(e+=8),N&&(e+=4),ne=new _(e)}else ne=new _;return((e,t)=>{const{signature:n,rawExtraFieldZip64:i,compressedSize:r,uncompressedSize:s,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:d}=o,{dataDescriptorView:u,dataDescriptorOffset:f}=l,{zip64:_,zip64UncompressedSize:w,zip64CompressedSize:p,zipCrypto:h,dataDescriptor:b}=t;if(d&&!h||n===ve||(Xi(c,10,n),b&&Xi(u,f,n)),_){const e=Qi(i);Gi(e,0,1),Gi(e,2,i.length-4);let t=4;w&&(Xi(c,18,fe),ji(e,t,a(s)),t+=8),p&&(Xi(c,14,fe),ji(e,t,a(r))),b&&(ji(u,f+4,a(r)),ji(u,f+12,a(s)))}else Xi(c,14,r),Xi(c,18,s),b&&(Xi(u,f+4,r),Xi(u,f+8,s))})({signature:Q,rawExtraFieldZip64:ne,compressedSize:$,uncompressedSize:ee,headerInfo:c,dataDescriptorInfo:d},l),W&&await qi(te,S),n.assign(J,{uncompressedSize:ee,compressedSize:$,lastModDate:w,rawLastModDate:p,creationDate:E,lastAccessDate:z,encrypted:h,length:$i(u,S)+$,compressionMethod:m,version:g,headerArray:f,signature:Q,rawExtraFieldZip64:ne,zip64UncompressedSize:A,zip64CompressedSize:T,zip64Offset:C,zip64DiskNumberStart:N}),J})(r,v,z,s,e.config,o),S=!1,l.set(i,z),z.filename=i,m){await v.writable.getWriter().close();let e=await v.getData();await t,await E(),k=!0,u||(e=await(async(e,t,n,{zipCrypto:i})=>{let r;r=await t.slice(0,26).arrayBuffer(),26!=r.byteLength&&(r=r.slice(0,26));const a=new h(r);return e.encrypted&&!i||Xi(a,14,e.signature),e.zip64?(Xi(a,18,fe),Xi(a,22,fe)):(Xi(a,18,e.compressedSize),Xi(a,22,e.uncompressedSize)),await qi(n,new _(r)),t.slice(r.byteLength)})(z,e,p,o)),await D(p),z.diskNumberStart=c.diskNumber,R=c.diskOffset,await e.stream().pipeTo(p,{preventClose:!0,preventAbort:!0,signal:w}),p.size+=e.size,k=!1}if(z.offset=e.offset-R,z.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:i,diskNumberStart:r}=e,{zip64UncompressedSize:s,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,d=Qi(n);let u=4;s&&(u+=8),o&&(u+=8),l&&(ji(d,u,a(i)),u+=8),c&&Xi(d,u,r)})(z,o);else if(z.offset>=fe)throw new f(Pi);return e.offset+=z.length,z}catch(t){if(m&&k||!m&&S){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}m?e.offset+=v.writable.size:e.offset=v.writable.size}throw l.delete(i),t}finally{m&&e.bufferedWrites--,y&&y(),x&&x()}async function E(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new g((t=>x=()=>{e.writerLocked=!1,t()})),await t}async function D(e){p.localHeaderArray.length>c.availableSize&&(c.availableSize=0,await qi(e,new _))}})(e,i,r,{headerInfo:Q,dataDescriptorInfo:$},l)}finally{e.pendingEntriesSize-=B}return n.assign(ee,{name:i,comment:d,extraField:P}),new ri(ee)})(l,e,i,r),c.add(u),await u}catch(t){throw l.filenames.delete(e),t}finally{c.delete(u);const e=Vi.shift();e?e():Bi--}}async close(e=new _,n={}){const{pendingAddFileCalls:i,writer:r}=this,{writable:o}=r;for(;i.size;)await g.all(t.from(i));return await(async(e,n,i)=>{const{files:r,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:d}=o,u=0,w=0,p=e.offset-l,h=r.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:i,rawComment:a,rawExtraFieldExtendedTimestamp:s,rawExtraFieldNTFS:o}]of r)w+=46+$i(e,a,t,n,s,o,i);const b=new _(w),g=Qi(b);await Nn(o);let m=0;for(const[e,n]of t.from(r.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:l,rawExtraFieldAES:d,rawExtraFieldNTFS:f,rawExtraField:w,rawComment:p,versionMadeBy:h,headerArray:x,directory:y,zip64:k,zip64UncompressedSize:S,zip64CompressedSize:v,zip64DiskNumberStart:z,zip64Offset:E,msDosCompatible:D,internalFileAttribute:R,externalFileAttribute:F,extendedTimestamp:A,lastModDate:T,diskNumberStart:C,uncompressedSize:N,compressedSize:U}=n;let W;if(A){W=new _(9);const e=Qi(W);Gi(e,0,me),Gi(e,2,$i(W)-4),Yi(e,4,1),Xi(e,5,s.floor(T.getTime()/1e3))}else W=new _;const I=$i(l,d,W,f,w);Xi(g,u,he),Gi(g,u+4,h);const O=Qi(x);S||Xi(O,18,N),v||Xi(O,14,U),Ji(b,x,u+6),Gi(g,u+30,I),Gi(g,u+32,$i(p)),Gi(g,u+34,k&&z?_e:C),Gi(g,u+36,R),F?Xi(g,u+38,F):y&&D&&Yi(g,u+38,16),Xi(g,u+42,k&&E?fe:t),Ji(b,a,u+46),Ji(b,l,u+46+$i(a)),Ji(b,d,u+46+$i(a,l)),Ji(b,W,u+46+$i(a,l,d)),Ji(b,f,u+46+$i(a,l,d,W)),Ji(b,w,u+46+$i(a,l,d,W,f)),Ji(b,p,u+46+$i(a)+I);const L=46+$i(a,p)+I;if(u-m>o.availableSize&&(o.availableSize=0,await qi(c,b.slice(m,u)),m=u),u+=L,i.onprogress)try{await i.onprogress(e+1,r.size,new ri(n))}catch(e){}}await qi(c,m?b.slice(m):b);let x=o.diskNumber;const{availableSize:y}=o;22>y&&x++;let k=Ki(e,i,"zip64");if(!(fe>p&&fe>w&&_e>h&&_e>x)){if(!1===k)throw new f(Pi);k=!0}const S=new _(k?98:22),v=Qi(S);u=0,k&&(Xi(v,0,be),ji(v,4,a(44)),Gi(v,12,45),Gi(v,14,45),Xi(v,16,x),Xi(v,20,d),ji(v,24,a(h)),ji(v,32,a(h)),ji(v,40,a(w)),ji(v,48,a(p)),Xi(v,56,ge),ji(v,64,a(p)+a(w)),Xi(v,72,x+1),Ki(e,i,"supportZip64SplitFile",!0)&&(x=_e,d=_e),h=_e,p=fe,w=fe,u+=76),Xi(v,u,101010256),Gi(v,u+4,x),Gi(v,u+6,d),Gi(v,u+8,h),Gi(v,u+10,h),Xi(v,u+12,w),Xi(v,u+16,p);const z=$i(n);if(z){if(z>_e)throw new f(Ni);Gi(v,u+20,z)}await qi(c,S),z&&await qi(c,n)})(this,e,n),Ki(this,n,"preventClose")||await o.getWriter().close(),r.getData?r.getData():o}},e.configure=Ne,e.getMimeType=()=>"application/octet-stream",e.initReader=Un,e.initStream=Nn,e.initWriter=Wn,e.readUint8Array=In,e.terminateWorkers=()=>{$t.forEach((e=>{rn(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})})); +((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:i,Number:r,BigInt:a,Math:s,Date:o,Map:l,Set:c,Response:d,URL:u,Error:f,Uint8Array:_,Uint16Array:w,Uint32Array:p,DataView:h,Blob:b,Promise:g,TextEncoder:m,TextDecoder:x,document:y,crypto:k,btoa:S,TransformStream:v,ReadableStream:z,WritableStream:E,CompressionStream:D,DecompressionStream:R,navigator:F,Worker:A}="undefined"!=typeof globalThis?globalThis:this||self,T=-2;function C(e){return N(e.map((([e,n])=>new t(e).fill(n,0,e))))}function N(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?N(n):n)),[])}const U=[0,1,2,3].concat(...C([[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 W(){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 i=e.dyn_tree,r=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!==i[2*o]?(n.heap[++n.heap_len]=d=o,n.depth[o]=0):i[2*o+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>d?++d:0,i[2*c]=1,n.depth[c]=0,n.opt_len--,r&&(n.static_len-=r[2*c+1]);for(e.max_code=d,o=s.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(i,o);c=a;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(i,1),l=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=l,i[2*c]=i[2*o]+i[2*l],n.depth[c]=s.max(n.depth[o],n.depth[l])+1,i[2*o+1]=i[2*l+1]=c,n.heap[1]=c++,n.pqdownheap(i,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,i=e.stat_desc.static_tree,r=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,s=e.stat_desc.max_length;let o,l,c,d,u,f,_=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>s&&(d=s,_++),n[2*l+1]=d,l>e.max_code||(t.bl_count[d]++,u=0,a>l||(u=r[l-a]),f=n[2*l],t.opt_len+=f*(d+u),i&&(t.static_len+=f*(i[2*l+1]+u)));if(0!==_){do{for(d=s-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[s]--,_-=2}while(_>0);for(d=s;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,i)=>{const r=[];let a,s,o,l=0;for(a=1;15>=a;a++)r[a]=l=l+i[a-1]<<1;for(s=0;n>=s;s++)o=e[2*s+1],0!==o&&(e[2*s]=t(r[o]++,o))})(i,e.max_code,n.bl_count)}}function I(e,t,n,i,r){const a=this;a.static_tree=e,a.extra_bits=t,a.extra_base=n,a.elems=i,a.max_length=r}W._length_code=[0,1,2,3,4,5,6,7].concat(...C([[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]])),W.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],W.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],W.d_code=e=>256>e?U[e]:U[256+(e>>>7)],W.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],W.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],W.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],W.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const O=C([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=N([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,O[t]])));const L=C([[30,5]]);function M(e,t,n,i,r){const a=this;a.good_length=e,a.max_lazy=t,a.nice_length=n,a.max_chain=i,a.func=r}I.static_dtree=N([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,L[t]]))),I.static_l_desc=new I(I.static_ltree,W.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,W.extra_dbits,0,30,15),I.static_bl_desc=new I(null,W.extra_blbits,0,19,7);const P=[new M(0,0,0,0,0),new M(4,4,8,4,1),new M(4,5,16,8,1),new M(4,6,32,32,1),new M(4,4,16,16,2),new M(8,16,32,32,2),new M(8,16,128,128,2),new M(8,32,128,256,2),new M(32,128,258,1024,2),new M(32,258,258,4096,2)],H=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],B=113,V=666,q=262;function Z(e,t,n,i){const r=e[2*t],a=e[2*n];return a>r||r==a&&i[t]<=i[n]}function K(){const e=this;let t,n,i,r,a,o,l,c,d,u,f,p,h,b,g,m,x,y,k,S,v,z,E,D,R,F,A,C,N,U,O,L,M;const K=new W,Y=new W,G=new W;let X,j,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)O[2*t]=0;for(t=0;30>t;t++)L[2*t]=0;for(t=0;19>t;t++)M[2*t]=0;O[512]=1,e.opt_len=e.static_len=0,j=J=0}function ne(e,t){let n,i=-1,r=e[1],a=0,s=7,o=4;0===r&&(s=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)n=r,r=e[2*(l+1)+1],++aa?M[2*n]+=a:0!==n?(n!=i&&M[2*n]++,M[32]++):a>10?M[36]++:M[34]++,a=0,i=n,0===r?(s=138,o=3):n==r?(s=6,o=3):(s=7,o=4))}function ie(t){e.pending_buf[e.pending++]=t}function re(e){ie(255&e),ie(e>>>8&255)}function ae(e,t){let n;const i=t;ee>16-i?(n=e,$|=n<>>16-ee,ee+=i-16):($|=e<=n;n++)if(i=a,a=e[2*(n+1)+1],++s>=o||i!=a){if(l>s)do{se(i,M)}while(0!=--s);else 0!==i?(i!=r&&(se(i,M),s--),se(16,M),ae(s-3,2)):s>10?(se(18,M),ae(s-11,7)):(se(17,M),ae(s-3,3));s=0,r=i,0===a?(o=138,l=3):i==a?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(re($),$=0,ee=0):8>ee||(ie(255&$),$>>>=8,ee-=8)}function ce(t,n){let i,r,a;if(e.dist_buf[j]=t,e.lc_buf[j]=255&n,j++,0===t?O[2*n]++:(J++,t--,O[2*(W._length_code[n]+256+1)]++,L[2*W.d_code(t)]++),0==(8191&j)&&A>2){for(i=8*j,r=v-x,a=0;30>a;a++)i+=L[2*a]*(5+W.extra_dbits[a]);if(i>>>=3,Jo);se(256,t),Q=t[513]}function ue(){ee>8?re($):ee>0&&ie(255&$),$=0,ee=0}function fe(t,n,i){ae(0+(i?1:0),3),((t,n)=>{ue(),Q=8,re(n),re(~n),e.pending_buf.set(c.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function _e(n){((t,n,i)=>{let r,a,s=0;A>0?(K.build_tree(e),Y.build_tree(e),s=(()=>{let t;for(ne(O,K.max_code),ne(L,Y.max_code),G.build_tree(e),t=18;t>=3&&0===M[2*W.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),r=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a>r||(r=a)):r=a=n+5,n+4>r||-1==t?a==r?(ae(2+(i?1:0),3),de(I.static_ltree,I.static_dtree)):(ae(4+(i?1:0),3),((e,t,n)=>{let i;for(ae(e-257,5),ae(t-1,5),ae(n-4,4),i=0;n>i;i++)ae(M[2*W.bl_order[i]+1],3);oe(O,e-1),oe(L,t-1)})(K.max_code+1,Y.max_code+1,s+1),de(O,L)):fe(t,n,i),te(),i&&ue()})(0>x?-1:x,v-x,n),x=v,t.flush_pending()}function we(){let e,n,i,r;do{if(r=d-E-v,0===r&&0===v&&0===E)r=a;else if(-1==r)r--;else if(v>=a+a-q){c.set(c.subarray(a,a+a),0),z-=a,v-=a,x-=a,e=h,i=e;do{n=65535&f[--i],f[i]=a>n?0:n-a}while(0!=--e);e=a,i=e;do{n=65535&u[--i],u[i]=a>n?0:n-a}while(0!=--e);r+=a}if(0===t.avail_in)return;e=t.read_buf(c,v+E,r),E+=e,3>E||(p=255&c[v],p=(p<E&&0!==t.avail_in)}function pe(e){let t,n,i=R,r=v,s=D;const o=v>a-q?v-(a-q):0;let d=U;const f=l,_=v+258;let w=c[r+s-1],p=c[r+s];N>D||(i>>=2),d>E&&(d=E);do{if(t=e,c[t+s]==p&&c[t+s-1]==w&&c[t]==c[r]&&c[++t]==c[r+1]){r+=2,t++;do{}while(c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&_>r);if(n=258-(_-r),r=_-258,n>s){if(z=e,s=n,n>=d)break;w=c[r+s-1],p=c[r+s]}}}while((e=65535&u[e&f])>o&&0!=--i);return s>E?E:s}e.depth=[],e.bl_count=[],e.heap=[],O=[],L=[],M=[],e.pqdownheap=(t,n)=>{const i=e.heap,r=i[n];let a=n<<1;for(;a<=e.heap_len&&(a(W||(W=8),H||(H=8),V||(V=0),t.msg=null,-1==k&&(k=6),1>H||H>9||8!=W||9>z||z>15||0>k||k>9||0>V||V>2?T:(t.dstate=e,o=z,a=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=B,r=0,K.dyn_tree=O,K.stat_desc=I.static_l_desc,Y.dyn_tree=L,Y.stat_desc=I.static_d_desc,G.dyn_tree=M,G.stat_desc=I.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*a,f[h-1]=0;for(let e=0;h-1>e;e++)f[e]=0;F=P[A].max_lazy,N=P[A].good_length,U=P[A].nice_length,R=P[A].max_chain,v=0,x=0,E=0,y=D=2,S=0,p=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=B&&n!=V?T:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,c=null,e.dstate=null,n==B?-3:0),e.deflateParams=(e,t,n)=>{let i=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?T:(P[A].func!=P[t].func&&0!==e.total_in&&(i=e.deflate(1)),A!=t&&(A=t,F=P[A].max_lazy,N=P[A].good_length,U=P[A].nice_length,R=P[A].max_chain),C=n,i)},e.deflateSetDictionary=(e,t,i)=>{let r,s=i,o=0;if(!t||42!=n)return T;if(3>s)return 0;for(s>a-q&&(s=a-q,o=i-s),c.set(t.subarray(o,o+s),0),v=s,x=s,p=255&c[0],p=(p<=r;r++)p=(p<{let _,w,b,R,N;if(d>4||0>d)return T;if(!s.next_out||!s.next_in&&0!==s.avail_in||n==V&&4!=d)return s.msg=H[4],T;if(0===s.avail_out)return s.msg=H[7],-5;var U;if(t=s,R=r,r=d,42==n&&(w=8+(o-8<<4)<<8,b=(A-1&255)>>1,b>3&&(b=3),w|=b<<6,0!==v&&(w|=32),w+=31-w%31,n=B,ie((U=w)>>8&255),ie(255&U)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return r=-1,0}else if(0===t.avail_in&&R>=d&&4!=d)return t.msg=H[7],-5;if(n==V&&0!==t.avail_in)return s.msg=H[7],-5;if(0!==t.avail_in||0!==E||0!=d&&n!=V){switch(N=-1,P[A].func){case 0:N=(e=>{let n,r=65535;for(r>i-5&&(r=i-5);;){if(1>=E){if(we(),0===E&&0==e)return 0;if(0===E)break}if(v+=E,E=0,n=x+r,(0===v||v>=n)&&(E=v-n,v=n,_e(!1),0===t.avail_out))return 0;if(v-x>=a-q&&(_e(!1),0===t.avail_out))return 0}return _e(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 1:N=(e=>{let n,i=0;for(;;){if(q>E){if(we(),q>E&&0==e)return 0;if(0===E)break}if(3>E||(p=(p<a-q||2!=C&&(y=pe(i)),3>y)n=ce(0,255&c[v]),E--,v++;else if(n=ce(v-z,y-3),E-=y,y>F||3>E)v+=y,y=0,p=255&c[v],p=(p<{let n,i,r=0;for(;;){if(q>E){if(we(),q>E&&0==e)return 0;if(0===E)break}if(3>E||(p=(p<D&&a-q>=(v-r&65535)&&(2!=C&&(y=pe(r)),5>=y&&(1==C||3==y&&v-z>4096)&&(y=2)),3>D||y>D)if(0!==S){if(n=ce(0,255&c[v-1]),n&&_e(!1),v++,E--,0===t.avail_out)return 0}else S=1,v++,E--;else{i=v+E-3,n=ce(v-1-k,D-3),E-=D-1,D-=2;do{++v>i||(p=(p<1+Q+10-ee&&(ae(2,3),se(256,I.static_ltree),le()),Q=7;else if(fe(0,0,!1),3==d)for(_=0;h>_;_++)f[_]=0;if(t.flush_pending(),0===t.avail_out)return r=-1,0}}return 4!=d?0:1}}function Y(){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}Y.prototype={deflateInit(e,t){const n=this;return n.dstate=new K,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):T},deflateEnd(){const e=this;if(!e.dstate)return T;const t=e.dstate.deflateEnd();return e.dstate=null,t},deflateParams(e,t){const n=this;return n.dstate?n.dstate.deflateParams(n,e,t):T},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):T},read_buf(e,t,n){const i=this;let r=i.avail_in;return r>n&&(r=n),0===r?0:(i.avail_in-=r,e.set(i.next_in.subarray(i.next_in_index,i.next_in_index+r),t),i.next_in_index+=r,i.total_in+=r,r)},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 G=-2,X=-3,j=-5,J=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],Q=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],$=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],ee=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],te=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ne=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],ie=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function re(){let e,t,n,i,r,a;function s(e,t,s,o,l,c,d,u,f,_,w){let p,h,b,g,m,x,y,k,S,v,z,E,D,R,F;v=0,m=s;do{n[e[t+v]]++,v++,m--}while(0!==m);if(n[0]==s)return d[0]=-1,u[0]=0,0;for(k=u[0],x=1;15>=x&&0===n[x];x++);for(y=x,x>k&&(k=x),m=15;0!==m&&0===n[m];m--);for(b=m,k>m&&(k=m),u[0]=k,R=1<x;x++,R<<=1)if(0>(R-=n[x]))return X;if(0>(R-=n[m]))return X;for(n[m]+=R,a[1]=x=0,v=1,D=2;0!=--m;)a[D]=x+=n[v],D++,v++;m=0,v=0;do{0!==(x=e[t+v])&&(w[a[x]++]=m),v++}while(++m=y;y++)for(p=n[y];0!=p--;){for(;y>E+k;){if(g++,E+=k,F=b-E,F=F>k?k:F,(h=1<<(x=y-E))>p+1&&(h-=p+1,D=y,F>x))for(;++xn[++D];)h-=n[D];if(F=1<1440)return X;r[g]=z=_[0],_[0]+=F,0!==g?(a[g]=m,i[0]=x,i[1]=k,x=m>>>E-k,i[2]=z-r[g-1]-x,f.set(i,3*(r[g-1]+x))):d[0]=z}for(i[1]=y-E,s>v?w[v]w[v]?0:96,i[2]=w[v++]):(i[0]=c[w[v]-o]+16+64,i[2]=l[w[v++]-o]):i[0]=192,h=1<>>E;F>x;x+=h)f.set(i,3*(z+x));for(x=1<>>=1)m^=x;for(m^=x,S=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)i[o]=0;r.set(n.subarray(0,15),0),a.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,i,r,a,l)=>{let c;return o(19),e[0]=0,c=s(n,0,19,19,null,null,r,i,a,e,t),c==X?l.msg="oversubscribed dynamic bit lengths tree":c!=j&&0!==i[0]||(l.msg="incomplete dynamic bit lengths tree",c=X),c},this.inflate_trees_dynamic=(n,i,r,a,l,c,d,u,f)=>{let _;return o(288),e[0]=0,_=s(r,0,n,257,ee,te,c,a,u,e,t),0!=_||0===a[0]?(_==X?f.msg="oversubscribed literal/length tree":-4!=_&&(f.msg="incomplete literal/length tree",_=X),_):(o(288),_=s(r,n,i,0,ne,ie,d,l,u,e,t),0!=_||0===l[0]&&n>257?(_==X?f.msg="oversubscribed distance tree":_==j?(f.msg="incomplete distance tree",_=X):-4!=_&&(f.msg="empty distance tree with lengths",_=X),_):0)}}function ae(){const e=this;let t,n,i,r,a=0,s=0,o=0,l=0,c=0,d=0,u=0,f=0,_=0,w=0;function p(e,t,n,i,r,a,s,o){let l,c,d,u,f,_,w,p,h,b,g,m,x,y,k,S;w=o.next_in_index,p=o.avail_in,f=s.bitb,_=s.bitk,h=s.write,b=h_;)p--,f|=(255&o.read_byte(w++))<<_,_+=8;if(l=f&g,c=n,d=i,S=3*(d+l),0!==(u=c[S]))for(;;){if(f>>=c[S+1],_-=c[S+1],0!=(16&u)){for(u&=15,x=c[S+2]+(f&J[u]),f>>=u,_-=u;15>_;)p--,f|=(255&o.read_byte(w++))<<_,_+=8;for(l=f&m,c=r,d=a,S=3*(d+l),u=c[S];;){if(f>>=c[S+1],_-=c[S+1],0!=(16&u)){for(u&=15;u>_;)p--,f|=(255&o.read_byte(w++))<<_,_+=8;if(y=c[S+2]+(f&J[u]),f>>=u,_-=u,b-=x,y>h){k=h-y;do{k+=s.end}while(0>k);if(u=s.end-k,x>u){if(x-=u,h-k>0&&u>h-k)do{s.win[h++]=s.win[k++]}while(0!=--u);else s.win.set(s.win.subarray(k,k+u),h),h+=u,k+=u,u=0;k=0}}else k=h-y,h-k>0&&2>h-k?(s.win[h++]=s.win[k++],s.win[h++]=s.win[k++],x-=2):(s.win.set(s.win.subarray(k,k+2),h),h+=2,k+=2,x-=2);if(h-k>0&&x>h-k)do{s.win[h++]=s.win[k++]}while(0!=--x);else s.win.set(s.win.subarray(k,k+x),h),h+=x,k+=x,x=0;break}if(0!=(64&u))return o.msg="invalid distance code",x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,X;l+=c[S+2],l+=f&J[u],S=3*(d+l),u=c[S]}break}if(0!=(64&u))return 0!=(32&u)?(x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,1):(o.msg="invalid literal/length code",x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,X);if(l+=c[S+2],l+=f&J[u],S=3*(d+l),0===(u=c[S])){f>>=c[S+1],_-=c[S+1],s.win[h++]=c[S+2],b--;break}}else f>>=c[S+1],_-=c[S+1],s.win[h++]=c[S+2],b--}while(b>=258&&p>=10);return x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,0}e.init=(e,a,s,o,l,c)=>{t=0,u=e,f=a,i=s,_=o,r=l,w=c,n=null},e.proc=(e,h,b)=>{let g,m,x,y,k,S,v,z=0,E=0,D=0;for(D=h.next_in_index,y=h.avail_in,z=e.bitb,E=e.bitk,k=e.write,S=k=258&&y>=10&&(e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,b=p(u,f,i,_,r,w,e,h),D=h.next_in_index,y=h.avail_in,z=e.bitb,E=e.bitk,k=e.write,S=kE;){if(0===y)return e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,z|=(255&h.read_byte(D++))<>>=n[m+1],E-=n[m+1],x=n[m],0===x){l=n[m+2],t=6;break}if(0!=(16&x)){c=15&x,a=n[m+2],t=2;break}if(0==(64&x)){o=x,s=m/3+n[m+2];break}if(0!=(32&x)){t=7;break}return t=9,h.msg="invalid literal/length code",b=X,e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);case 2:for(g=c;g>E;){if(0===y)return e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,z|=(255&h.read_byte(D++))<>=g,E-=g,o=f,n=r,s=w,t=3;case 3:for(g=o;g>E;){if(0===y)return e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,z|=(255&h.read_byte(D++))<>=n[m+1],E-=n[m+1],x=n[m],0!=(16&x)){c=15&x,d=n[m+2],t=4;break}if(0==(64&x)){o=x,s=m/3+n[m+2];break}return t=9,h.msg="invalid distance code",b=X,e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);case 4:for(g=c;g>E;){if(0===y)return e.bitb=z,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,z|=(255&h.read_byte(D++))<>=g,E-=g,t=5;case 5:for(v=k-d;0>v;)v+=e.end;for(;0!==a;){if(0===S&&(k==e.end&&0!==e.read&&(k=0,S=k7&&(E-=8,y++,D--),e.write=k,b=e.inflate_flush(h,b),k=e.write,S=k{}}re.inflate_trees_fixed=(e,t,n,i)=>(e[0]=9,t[0]=5,n[0]=Q,i[0]=$,0);const se=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function oe(e,t){const n=this;let i,r=0,a=0,s=0,o=0;const l=[0],c=[0],d=new ae;let u=0,f=new Int32Array(4320);const w=new re;n.bitk=0,n.bitb=0,n.win=new _(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==r&&d.free(e),r=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let i,r,a;return r=e.next_out_index,a=n.read,i=(a>n.write?n.end:n.write)-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==j&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i,a==n.end&&(a=0,n.write==n.end&&(n.write=0),i=n.write-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==j&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i),e.next_out_index=r,n.read=a,t},n.proc=(e,t)=>{let _,p,h,b,g,m,x,y;for(b=e.next_in_index,g=e.avail_in,p=n.bitb,h=n.bitk,m=n.write,x=mh;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>1){case 0:p>>>=3,h-=3,_=7&h,p>>>=_,h-=_,r=1;break;case 1:k=[],S=[],v=[[]],z=[[]],re.inflate_trees_fixed(k,S,v,z),d.init(k[0],S[0],v[0],0,z[0],0),p>>>=3,h-=3,r=6;break;case 2:p>>>=3,h-=3,r=3;break;case 3:return p>>>=3,h-=3,r=9,e.msg="invalid block type",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t)}break;case 1:for(;32>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>16&65535)!=(65535&p))return r=9,e.msg="invalid stored block lengths",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);a=65535&p,p=h=0,r=0!==a?2:0!==u?7:0;break;case 2:if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(0===x&&(m==n.end&&0!==n.read&&(m=0,x=mg&&(_=g),_>x&&(_=x),n.win.set(e.read_buf(b,_),m),b+=_,g-=_,m+=_,x-=_,0!=(a-=_))break;r=0!==u?7:0;break;case 3:for(;14>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<29||(_>>5&31)>29)return r=9,e.msg="too many length or distance symbols",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(_=258+(31&_)+(_>>5&31),!i||i.length<_)i=[];else for(y=0;_>y;y++)i[y]=0;p>>>=14,h-=14,o=0,r=4;case 4:for(;4+(s>>>10)>o;){for(;3>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>=3,h-=3}for(;19>o;)i[se[o++]]=0;if(l[0]=7,_=w.inflate_trees_bits(i,l,c,f,e),0!=_)return(t=_)==X&&(i=null,r=9),n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);o=0,r=5;case 5:for(;_=s,258+(31&_)+(_>>5&31)>o;){let a,d;for(_=l[0];_>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<d)p>>>=_,h-=_,i[o++]=d;else{for(y=18==d?7:d-14,a=18==d?11:3;_+y>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>=_,h-=_,a+=p&J[y],p>>>=y,h-=y,y=o,_=s,y+a>258+(31&_)+(_>>5&31)||16==d&&1>y)return i=null,r=9,e.msg="invalid bit length repeat",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d=16==d?i[y-1]:0;do{i[y++]=d}while(0!=--a);o=y}}if(c[0]=-1,E=[],D=[],R=[],F=[],E[0]=9,D[0]=6,_=s,_=w.inflate_trees_dynamic(257+(31&_),1+(_>>5&31),i,E,D,R,F,f,e),0!=_)return _==X&&(i=null,r=9),t=_,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d.init(E[0],D[0],f,R[0],f,F[0]),r=6;case 6:if(n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),b=e.next_in_index,g=e.avail_in,p=n.bitb,h=n.bitk,m=n.write,x=m{n.reset(e,null),n.win=null,f=null},n.set_dictionary=(e,t,i)=>{n.win.set(e.subarray(t,t+i),0),n.read=n.write=i},n.sync_point=()=>1==r?1:0}const le=13,ce=[0,0,255,255];function de(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):G}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,i)=>(n.msg=null,e.blocks=null,8>i||i>15?(e.inflateEnd(n),G):(e.wbits=i,n.istate.blocks=new oe(n,1<{let n,i;if(!e||!e.istate||!e.next_in)return G;const r=e.istate;for(t=4==t?j:0,n=j;;)switch(r.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(r.method=e.read_byte(e.next_in_index++)))){r.mode=le,e.msg="unknown compression method",r.marker=5;break}if(8+(r.method>>4)>r.wbits){r.mode=le,e.msg="invalid win size",r.marker=5;break}r.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,i=255&e.read_byte(e.next_in_index++),((r.method<<8)+i)%31!=0){r.mode=le,e.msg="incorrect header check",r.marker=5;break}if(0==(32&i)){r.mode=7;break}r.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,r.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,r.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,r.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,r.need+=255&e.read_byte(e.next_in_index++),r.mode=6,2);case 6:return r.mode=le,e.msg="need dictionary",r.marker=0,G;case 7:if(n=r.blocks.proc(e,n),n==X){r.mode=le,r.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,r.blocks.reset(e,r.was),r.mode=12;case 12:return e.avail_in=0,1;case le:return X;default:return G}},e.inflateSetDictionary=(e,t,n)=>{let i=0,r=n;if(!e||!e.istate||6!=e.istate.mode)return G;const a=e.istate;return r<1<{let n,i,r,a,s;if(!e||!e.istate)return G;const o=e.istate;if(o.mode!=le&&(o.mode=le,o.marker=0),0===(n=e.avail_in))return j;for(i=e.next_in_index,r=o.marker;0!==n&&4>r;)e.read_byte(i)==ce[r]?r++:r=0!==e.read_byte(i)?0:4-r,i++,n--;return e.total_in+=i-e.next_in_index,e.next_in_index=i,e.avail_in=n,o.marker=r,4!=r?X:(a=e.total_in,s=e.total_out,t(e),e.total_in=a,e.total_out=s,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():G}function ue(){}ue.prototype={inflateInit(e){const t=this;return t.istate=new de,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):G},inflateEnd(){const e=this;if(!e.istate)return G;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):G},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):G},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const fe=4294967295,_e=65535,we=67324752,pe=134695760,he=33639248,be=101075792,ge=117853008,me=21589,xe=2048,ye="/",ke=new o(2107,11,31),Se=new o(1980,0,1),ve=void 0,ze="undefined",Ee="function";class De{constructor(e){return class extends v{constructor(t,n){const i=new e(n);super({transform(e,t){t.enqueue(i.append(e))},flush(e){const t=i.flush();t&&e.enqueue(t)}})}}}}let Re=2;try{typeof F!=ze&&F.hardwareConcurrency&&(Re=F.hardwareConcurrency)}catch(e){}const Fe={chunkSize:524288,maxWorkers:Re,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:ve,CompressionStreamNative:typeof D!=ze&&D,DecompressionStreamNative:typeof R!=ze&&R},Ae=n.assign({},Fe);function Te(){return Ae}function Ce(e){return s.max(e.chunkSize,64)}function Ne(e){const{baseURL:n,chunkSize:i,maxWorkers:r,terminateWorkerTimeout:a,useCompressionStream:s,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:u,workerScripts:_}=e;if(Ue("baseURL",n),Ue("chunkSize",i),Ue("maxWorkers",r),Ue("terminateWorkerTimeout",a),Ue("useCompressionStream",s),Ue("useWebWorkers",o),l&&(Ae.CompressionStream=new De(l)),c&&(Ae.DecompressionStream=new De(c)),Ue("CompressionStream",d),Ue("DecompressionStream",u),_!==ve){const{deflate:e,inflate:n}=_;if((e||n)&&(Ae.workerScripts||(Ae.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");Ae.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");Ae.workerScripts.inflate=n}}}function Ue(e,t){t!==ve&&(Ae[e]=t)}const We=[];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;We[e]=t}class Ie{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,i=0|e.length;i>n;n++)t=t>>>8^We[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Oe extends v{constructor(){let e;const t=new Ie;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new _(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function Le(e){if(void 0===m){const t=new _((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=Me.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>s.round(e/1099511627776)||32,_shiftRight(e,t,n,i){for(void 0===i&&(i=[]);t>=32;t-=32)i.push(n),n=0;if(0===t)return i.concat(e);for(let r=0;r>>t),n=e[r]<<32-t;const r=e.length?e[e.length-1]:0,a=Me.getPartial(r);return i.push(Me.partial(t+a&31,t+a>32?n:i.pop(),1)),i}},Pe={bytes:{fromBits(e){const t=Me.bitLength(e)/8,n=new _(t);let i;for(let r=0;t>r;r++)0==(3&r)&&(i=e[r/4]),n[r]=i>>>24,i<<=8;return n},toBits(e){const t=[];let n,i=0;for(n=0;n9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new p(n);let s=0;for(let e=t.blockSize+i-(t.blockSize+i&t.blockSize-1);r>=e;e+=t.blockSize)t._block(a.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=Me.concat(t,[Me.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,i){return e>19?e>39?e>59?e>79?void 0:t^n^i:t&n|t&i|n&i:t^n^i:t&n|~t&i}_S(e,t){return t<>>32-e}_block(e){const n=this,i=n._h,r=t(80);for(let t=0;16>t;t++)r[t]=e[t];let a=i[0],o=i[1],l=i[2],c=i[3],d=i[4];for(let e=0;79>=e;e++){16>e||(r[e]=n._S(1,r[e-3]^r[e-8]^r[e-14]^r[e-16]));const t=n._S(5,a)+n._f(e,o,l,c)+d+r[e]+n._key[s.floor(e/20)]|0;d=c,c=l,l=n._S(30,o),o=a,a=t}i[0]=i[0]+a|0,i[1]=i[1]+o|0,i[2]=i[2]+l|0,i[3]=i[3]+c|0,i[4]=i[4]+d|0}},Be={getRandomValues(e){const t=new p(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(s.random()>.5?1:-1))};for(let i,r=0;rnew Ve.hmacSha1(Pe.bytes.toBits(e)),pbkdf2(e,t,n,i){if(n=n||1e4,0>i||0>n)throw new f("invalid params to pbkdf2");const r=1+(i>>5)<<2;let a,s,o,l,c;const d=new ArrayBuffer(r),u=new h(d);let _=0;const w=Me;for(t=Pe.bytes.toBits(t),c=1;(r||1)>_;c++){for(a=s=e.encrypt(w.concat(t,[c])),o=1;n>o;o++)for(s=e.encrypt(s),l=0;l_&&or&&(e=(new n).update(e).finalize());for(let t=0;r>t;t++)i[0][t]=909522486^e[t],i[1][t]=1549556828^e[t];t._baseHash[0].update(i[0]),t._baseHash[1].update(i[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},qe=void 0!==k&&"function"==typeof k.getRandomValues,Ze="Invalid password",Ke="Invalid signature",Ye="zipjs-abort-check-password";function Ge(e){return qe?k.getRandomValues(e):Be.getRandomValues(e)}const Xe=16,je={name:"PBKDF2"},Je=n.assign({hash:{name:"HMAC"}},je),Qe=n.assign({iterations:1e3,hash:{name:"SHA-1"}},je),$e=["deriveBits"],et=[8,12,16],tt=[16,24,32],nt=10,it=[0,0,0,0],rt="undefined",at="function",st=typeof k!=rt,ot=st&&k.subtle,lt=st&&typeof ot!=rt,ct=Pe.bytes,dt=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],i=t._tables[1],r=e.length;let a,s,o,l=1;if(4!==r&&6!==r&&8!==r)throw new f("invalid aes key size");for(t._key=[s=e.slice(0),o=[]],a=r;4*r+28>a;a++){let e=s[a-1];(a%r==0||8===r&&a%r==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],a%r==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),s[a]=s[a-r]^e}for(let e=0;a;e++,a--){const t=s[3&e?a:a-4];o[e]=4>=a||4>e?t:i[0][n[t>>>24]]^i[1][n[t>>16&255]]^i[2][n[t>>8&255]]^i[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],i=t[4],r=[],a=[];let s,o,l,c;for(let e=0;256>e;e++)a[(r[e]=e<<1^283*(e>>7))^e]=e;for(let d=s=0;!n[d];d^=o||1,s=a[s]||1){let a=s^s<<1^s<<2^s<<3^s<<4;a=a>>8^255&a^99,n[d]=a,i[a]=d,c=r[l=r[o=r[d]]];let u=16843009*c^65537*l^257*o^16843008*d,f=257*r[a]^16843008*a;for(let n=0;4>n;n++)e[n][d]=f=f<<24^f>>>8,t[n][a]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],i=n.length/4-2,r=[0,0,0,0],a=this._tables[t],s=a[0],o=a[1],l=a[2],c=a[3],d=a[4];let u,_,w,p=e[0]^n[0],h=e[t?3:1]^n[1],b=e[2]^n[2],g=e[t?1:3]^n[3],m=4;for(let e=0;i>e;e++)u=s[p>>>24]^o[h>>16&255]^l[b>>8&255]^c[255&g]^n[m],_=s[h>>>24]^o[b>>16&255]^l[g>>8&255]^c[255&p]^n[m+1],w=s[b>>>24]^o[g>>16&255]^l[p>>8&255]^c[255&h]^n[m+2],g=s[g>>>24]^o[p>>16&255]^l[h>>8&255]^c[255&b]^n[m+3],m+=4,p=u,h=_,b=w;for(let e=0;4>e;e++)r[t?3&-e:e]=d[p>>>24]<<24^d[h>>16&255]<<16^d[b>>8&255]<<8^d[255&g]^n[m++],u=p,p=h,h=b,b=g,g=u;return r}},ut=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255==(e>>24&255)){let t=e>>16&255,n=e>>8&255,i=255&e;255===t?(t=0,255===n?(n=0,255===i?i=0:++i):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=i}else e+=1<<24;return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let i;if(!(i=t.length))return[];const r=Me.bitLength(t);for(let r=0;i>r;r+=4){this.incCounter(n);const i=e.encrypt(n);t[r]^=i[0],t[r+1]^=i[1],t[r+2]^=i[2],t[r+3]^=i[3]}return Me.clamp(t,r)}},ft=Ve.hmacSha1;let _t=st&<&&typeof ot.importKey==at,wt=st&<&&typeof ot.deriveBits==at;class pt extends v{constructor({password:e,signed:t,encryptionStrength:i,checkPasswordOnly:r}){super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:e,signed:t,strength:i-1,pending:new _})},async transform(e,t){const n=this,{password:i,strength:a,resolveReady:s,ready:o}=n;i?(await(async(e,t,n,i)=>{const r=await gt(e,t,n,xt(i,0,et[t])),a=xt(i,et[t]);if(r[0]!=a[0]||r[1]!=a[1])throw new f(Ze)})(n,a,i,xt(e,0,et[a]+2)),e=xt(e,et[a]+2),r?t.error(new f(Ye)):s()):await o;const l=new _(e.length-nt-(e.length-nt)%Xe);t.enqueue(bt(n,e,l,0,nt,!0))},async flush(e){const{signed:t,ctr:n,hmac:i,pending:r,ready:a}=this;await a;const s=xt(r,0,r.length-nt),o=xt(r,r.length-nt);let l=new _;if(s.length){const e=kt(ct,s);i.update(e);const t=n.update(e);l=yt(ct,t)}if(t){const e=xt(yt(ct,i.digest()),0,nt);for(let t=0;nt>t;t++)if(e[t]!=o[t])throw new f(Ke)}e.enqueue(l)}})}}class ht extends v{constructor({password:e,encryptionStrength:t}){let i;super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new _})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:a,ready:s}=n;let o=new _;i?(o=await(async(e,t,n)=>{const i=Ge(new _(et[t]));return mt(i,await gt(e,t,n,i))})(n,r,i),a()):await s;const l=new _(o.length+e.length-e.length%Xe);l.set(o,0),t.enqueue(bt(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:a}=this;await a;let s=new _;if(r.length){const e=t.update(kt(ct,r));n.update(e),s=yt(ct,e)}i.signature=yt(ct,n.digest()).slice(0,nt),e.enqueue(mt(s,i.signature))}}),i=this}}function bt(e,t,n,i,r,a){const{ctr:s,hmac:o,pending:l}=e,c=t.length-r;let d;for(l.length&&(t=mt(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new _(t)).set(n,0)}return e})(n,c-c%Xe)),d=0;c-Xe>=d;d+=Xe){const e=kt(ct,xt(t,d,d+Xe));a&&o.update(e);const r=s.update(e);a||o.update(r),n.set(yt(ct,r),d+i)}return e.pending=xt(t,d),n}async function gt(e,i,r,a){e.password=null;const s=Le(r),o=await(async(e,t,n,i,r)=>{if(!_t)return Ve.importKey(t);try{return await ot.importKey("raw",t,n,!1,r)}catch(e){return _t=!1,Ve.importKey(t)}})(0,s,Je,0,$e),l=await(async(e,t,n)=>{if(!wt)return Ve.pbkdf2(t,e.salt,Qe.iterations,n);try{return await ot.deriveBits(e,t,n)}catch(i){return wt=!1,Ve.pbkdf2(t,e.salt,Qe.iterations,n)}})(n.assign({salt:a},Qe),o,8*(2*tt[i]+2)),c=new _(l),d=kt(ct,xt(c,0,tt[i])),u=kt(ct,xt(c,tt[i],2*tt[i])),f=xt(c,2*tt[i]);return n.assign(e,{keys:{key:d,authentication:u,passwordVerification:f},ctr:new ut(new dt(d),t.from(it)),hmac:new ft(u)}),f}function mt(e,t){let n=e;return e.length+t.length&&(n=new _(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function xt(e,t,n){return e.subarray(t,n)}function yt(e,t){return e.fromBits(t)}function kt(e,t){return e.toBits(t)}class St extends v{constructor({password:e,passwordVerification:t,checkPasswordOnly:i}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Dt(this,e)},transform(e,t){const n=this;if(n.password){const t=zt(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(Ze);e=e.subarray(12)}i?t.error(new f(Ye)):t.enqueue(zt(n,e))}})}}class vt extends v{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Dt(this,e)},transform(e,t){const n=this;let i,r;if(n.password){n.password=null;const t=Ge(new _(12));t[11]=n.passwordVerification,i=new _(e.length+t.length),i.set(Et(n,t),0),r=12}else i=new _(e.length),r=0;i.set(Et(n,e),r),t.enqueue(i)}})}}function zt(e,t){const n=new _(t.length);for(let i=0;i>>24]),r=~e.crcKey2.get(),e.keys=[n,i,r]}function Ft(e){const t=2|e.keys[2];return At(s.imul(t,1^t)>>>8)}function At(e){return 255&e}function Tt(e){return 4294967295&e}const Ct="deflate-raw";class Nt extends v{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:i}){super({});const{compressed:r,encrypted:a,useCompressionStream:s,zipCrypto:o,signed:l,level:c}=e,d=this;let u,f,_=Wt(super.readable);a&&!o||!l||(u=new Oe,_=Lt(_,u)),r&&(_=Ot(_,s,{level:c,chunkSize:t},i,n)),a&&(o?_=Lt(_,new vt(e)):(f=new ht(e),_=Lt(_,f))),It(d,_,(async()=>{let e;a&&!o&&(e=f.signature),a&&!o||!l||(e=new h(u.value.buffer).getUint32(0)),d.signature=e}))}}class Ut extends v{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:i}){super({});const{zipCrypto:r,encrypted:a,signed:s,signature:o,compressed:l,useCompressionStream:c}=e;let d,u,_=Wt(super.readable);a&&(r?_=Lt(_,new St(e)):(u=new pt(e),_=Lt(_,u))),l&&(_=Ot(_,c,{chunkSize:t},i,n)),a&&!r||!s||(d=new Oe,_=Lt(_,d)),It(this,_,(async()=>{if((!a||r)&&s){const e=new h(d.value.buffer);if(o!=e.getUint32(0,!1))throw new f(Ke)}}))}}function Wt(e){return Lt(e,new v({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function It(e,t,i){t=Lt(t,new v({flush:i})),n.defineProperty(e,"readable",{get:()=>t})}function Ot(e,t,n,i,r){try{e=Lt(e,new(t&&i?i:r)(Ct,n))}catch(i){if(!t)throw i;e=Lt(e,new r(Ct,n))}return e}function Lt(e,t){return e.pipeThrough(t)}const Mt="data",Pt="deflate",Ht="inflate";class Bt extends v{constructor(e,t){super({});const i=this,{codecType:r}=e;let a;r.startsWith(Pt)?a=Nt:r.startsWith(Ht)&&(a=Ut);let s=0;const o=new a(e,t),l=super.readable,c=new v({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;n.assign(i,{signature:e,size:s})}});n.defineProperty(i,"readable",{get:()=>l.pipeThrough(o).pipeThrough(c)})}}const Vt=typeof A!=ze;class qt{constructor(e,{readable:t,writable:i},{options:r,config:a,streamOptions:s,useWebWorkers:o,transferStreams:l,scripts:c},d){const{signal:u}=s;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Zt(t,s,a),{signal:u}),writable:i,options:n.assign({},r),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&&Vt?Gt:Yt)(e,a)}}class Zt extends v{constructor(e,{onstart:t,onprogress:n,size:i,onend:r},{chunkSize:a}){let s=0;super({start(){t&&Kt(t,i)},async transform(e,t){s+=e.length,n&&await Kt(n,s,i),t.enqueue(e)},flush(){e.size=s,r&&Kt(r,s)}},{highWaterMark:1,size:()=>a})}}async function Kt(e,...t){try{await e(...t)}catch(e){}}function Yt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:i},r)=>{const a=new Bt(e,r);try{await t.pipeThrough(a).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:e,size:r}=a;return{signature:e,size:r}}finally{i()}})(e,t)}}function Gt(e,{baseURL:t,chunkSize:i}){return e.interface||n.assign(e,{worker:Jt(e.scripts[0],t,e),interface:{run:()=>(async(e,t)=>{let i,r;const a=new g(((e,t)=>{i=e,r=t}));n.assign(e,{reader:null,writer:null,resolveResult:i,rejectResult:r,result:a});const{readable:s,options:o,scripts:l}=e,{writable:c,closed:d}=(e=>{const t=e.getWriter();let n;const i=new g((e=>n=e));return{writable:new E({async write(e){await t.ready,await t.write(e)},close(){t.releaseLock(),n()},abort:e=>t.abort(e)}),closed:i}})(e.writable);Qt({type:"start",scripts:l.slice(1),options:o,config:t,readable:s,writable:c},e)||n.assign(e,{reader:s.getReader(),writer:c.getWriter()});const u=await a;try{await c.getWriter().close()}catch(e){}return await d,u})(e,{chunkSize:i})}}),e.interface}let Xt=!0,jt=!0;function Jt(e,t,i){const r={type:"module"};let a,s;typeof e==Ee&&(e=e());try{a=new u(e,t)}catch(t){a=e}if(Xt)try{s=new A(a)}catch(e){Xt=!1,s=new A(a,r)}else s=new A(a,r);return s.addEventListener("message",(e=>(async({data:e},t)=>{const{type:i,value:r,messageId:a,result:s,error:o}=e,{reader:l,writer:c,resolveResult:d,rejectResult:u,onTaskFinished:w}=t;try{if(o){const{message:e,stack:t,code:i,name:r}=o,a=new f(e);n.assign(a,{stack:t,code:i,name:r}),p(a)}else{if("pull"==i){const{value:e,done:n}=await l.read();Qt({type:Mt,value:e,done:n,messageId:a},t)}i==Mt&&(await c.ready,await c.write(new _(r)),Qt({type:"ack",messageId:a},t)),"close"==i&&p(null,s)}}catch(o){p(o)}function p(e,t){e?u(e):d(t),c&&c.releaseLock(),w()}})(e,i))),s}function Qt(e,{worker:t,writer:n,onTaskFinished:i,transferStreams:r}){try{let{value:n,readable:i,writable:a}=e;const s=[];if(n&&(e.value=n.buffer,s.push(e.value)),r&&jt?(i&&s.push(i),a&&s.push(a)):e.readable=e.writable=null,s.length)try{return t.postMessage(e,s),!0}catch(n){jt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),i(),e}}let $t=[];const en=[];let tn=0;async function nn(e,t){const{options:n,config:i}=t,{transferStreams:a,useWebWorkers:s,useCompressionStream:o,codecType:l,compressed:c,signed:d,encrypted:u}=n,{workerScripts:f,maxWorkers:_,terminateWorkerTimeout:w}=i;t.transferStreams=a||a===ve;const p=!(c||d||u||t.transferStreams);let h;t.useWebWorkers=!p&&(s||s===ve&&i.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[l]:[],n.useCompressionStream=o||o===ve&&i.useCompressionStream;const b=$t.find((e=>!e.busy));if(b)rn(b),h=new qt(b,e,t,m);else if($t.length<_){const n={indexWorker:tn};tn++,$t.push(n),h=new qt(n,e,t,m)}else h=await new g((n=>en.push({resolve:n,stream:e,workerOptions:t})));return h.run();function m(e){if(en.length){const[{resolve:t,stream:n,workerOptions:i}]=en.splice(0,1);t(new qt(e,n,i,m))}else e.worker?(rn(e),r.isFinite(w)&&w>=0&&(e.terminateTimeout=setTimeout((()=>{$t=$t.filter((t=>t!=e)),e.terminate()}),w))):$t=$t.filter((t=>t!=e))}}function rn(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const an="HTTP error ",sn="HTTP Range not supported",on="Writer iterator completed too soon",ln="GET",cn="bytes",dn=65536,un="writable";class fn{constructor(){this.size=0}init(){this.initialized=!0}}class _n extends fn{get readable(){const e=this,{chunkSize:t=dn}=e,n=new z({start(){this.chunkOffset=0},async pull(i){const{offset:r=0,size:a,diskNumberStart:o}=n,{chunkOffset:l}=this;i.enqueue(await In(e,r+l,s.min(t,a-l),o)),l+t>a?i.close():this.chunkOffset+=t}});return n}}class wn extends fn{constructor(){super();const e=this,t=new E({write:t=>e.writeUint8Array(t)});n.defineProperty(e,un,{get:()=>t})}writeUint8Array(){}}class pn extends _n{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,i=e+t,r=e||it&&(a=a.slice(e,i)),new _(a)}}class hn extends fn{constructor(e){super();const t=new v,i=[];e&&i.push(["Content-Type",e]),n.defineProperty(this,un,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:i}).blob()}getData(){return this.blob}}class bn extends _n{constructor(e,t){super(),mn(this,e,t)}async init(){await xn(this,Rn,vn),super.init()}readUint8Array(e,t){return yn(this,e,t,Rn,vn)}}class gn extends _n{constructor(e,t){super(),mn(this,e,t)}async init(){await xn(this,Fn,zn),super.init()}readUint8Array(e,t){return yn(this,e,t,Fn,zn)}}function mn(e,t,i){const{preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s}=i;delete(i=n.assign({},i)).preventHeadRequest,delete i.useRangeHeader,delete i.forceRangeRequests,delete i.useXHR,n.assign(e,{url:t,options:i,preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s})}async function xn(e,t,n){const{url:i,useRangeHeader:a,forceRangeRequests:s}=e;if((e=>{const{baseURL:t}=Te(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(i)&&(a||s)){const{headers:i}=await t(ln,e,kn(e));if(!s&&i.get("Accept-Ranges")!=cn)throw new f(sn);{let a;const s=i.get("Content-Range");if(s){const e=s.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=r(t))}}a===ve?await Dn(e,t,n):e.size=a}}else await Dn(e,t,n)}async function yn(e,t,n,i,r){const{useRangeHeader:a,forceRangeRequests:s,options:o}=e;if(a||s){const r=await i(ln,e,kn(e,t,n));if(206!=r.status)throw new f(sn);return new _(await r.arrayBuffer())}{const{data:i}=e;return i||await r(e,o),new _(e.data.subarray(t,t+n))}}function kn(e,t=0,i=1){return n.assign({},Sn(e),{Range:cn+"="+t+"-"+(t+i-1)})}function Sn({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function vn(e){await En(e,Rn)}async function zn(e){await En(e,Fn)}async function En(e,t){const n=await t(ln,e,Sn(e));e.data=new _(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Dn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const i=(await t("HEAD",e,Sn(e))).headers.get("Content-Length");i?e.size=r(i):await n(e,e.options)}}async function Rn(e,{options:t,url:i},r){const a=await fetch(i,n.assign({},t,{method:e,headers:r}));if(400>a.status)return a;throw 416==a.status?new f(sn):new f(an+(a.statusText||a.status))}function Fn(e,{url:t},i){return new g(((r,a)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",(()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),r({status:s.status,arrayBuffer:()=>s.response,headers:new l(e)})}else a(416==s.status?new f(sn):new f(an+(s.statusText||s.status)))}),!1),s.addEventListener("error",(e=>a(e.detail?e.detail.error:new f("Network error"))),!1),s.open(e,t),i)for(const e of n.entries(i))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()}))}class An extends _n{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new gn(e,t):new bn(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Tn extends _n{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await g.all(t.map((async(n,i)=>{await n.init(),i!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const i=this,{readers:r}=this;let a,o=n;-1==o&&(o=r.length-1);let l=e;for(;l>=r[o].size;)l-=r[o].size,o++;const c=r[o],d=c.size;if(l+t>d){const r=d-l;a=new _(t),a.set(await In(c,l,r)),a.set(await i.readUint8Array(e+r,t-r,n),r)}else a=await In(c,l,t);return i.lastDiskNumber=s.max(o,i.lastDiskNumber),a}}class Cn extends fn{constructor(e,t=4294967295){super();const i=this;let r,a,s;n.assign(i,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new E({async write(t){const{availableSize:n}=i;if(s)t.lengtho})}}async function Nn(e,t){e.init&&!e.initialized&&await e.init(t)}function Un(e){return t.isArray(e)&&(e=new Tn(e)),e instanceof z&&(e={readable:e}),e}function Wn(e){e.writable===ve&&typeof e.next==Ee&&(e=new Cn(e)),e instanceof E&&(e={writable:e});const{writable:t}=e;return t.size===ve&&(t.size=0),e instanceof Cn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function In(e,t,n,i){return e.readUint8Array(t,n,i)}const On=Tn,Ln=Cn,Mn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Pn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const ai="File format is not recognized",si="End of central directory not found",oi="End of Zip64 central directory not found",li="End of Zip64 central directory locator not found",ci="Central directory header not found",di="Local file header not found",ui="Zip64 extra field not found",fi="File contains encrypted entry",_i="Encryption method not supported",wi="Compression method not supported",pi="Split zip file",hi="utf-8",bi="cp437",gi=[[Zn,fe],[Kn,fe],[Yn,fe],[Gn,_e]],mi={[_e]:{getValue:Fi,bytes:4},[fe]:{getValue:Ai,bytes:8}};class xi{constructor(e,t,i){n.assign(this,{reader:e,config:t,options:i})}async getData(e,t,i={}){const r=this,{reader:a,offset:s,diskNumberStart:o,extraFieldAES:l,compressionMethod:c,config:d,bitFlag:u,signature:w,rawLastModDate:p,uncompressedSize:h,compressedSize:b}=r,g=r.localDirectory={},m=Ti(await In(a,s,30,o));let x=vi(r,i,"password");if(x=x&&x.length&&x,l&&99!=l.originalCompressionMethod)throw new f(wi);if(0!=c&&8!=c)throw new f(wi);if(Fi(m,0)!=we)throw new f(di);yi(g,m,4),g.rawExtraField=g.extraFieldLength?await In(a,s+30+g.filenameLength,g.extraFieldLength,o):new _,await ki(r,g,m,4),n.assign(t,{lastAccessDate:g.lastAccessDate,creationDate:g.creationDate});const y=r.encrypted&&g.encrypted,k=y&&!l;if(y){if(!k&&l.strength===ve)throw new f(_i);if(!x)throw new f(fi)}const S=s+30+g.filenameLength+g.extraFieldLength,v=b,z=a.readable;n.assign(z,{diskNumberStart:o,offset:S,size:v});const D=vi(r,i,"signal"),R=vi(r,i,"checkPasswordOnly");R&&(e=new E),e=Wn(e),await Nn(e,h);const{writable:F}=e,{onstart:A,onprogress:T,onend:C}=i,N={options:{codecType:Ht,password:x,zipCrypto:k,encryptionStrength:l&&l.strength,signed:vi(r,i,"checkSignature"),passwordVerification:k&&(u.dataDescriptor?p>>>8&255:w>>>24&255),signature:w,compressed:0!=c,encrypted:y,useWebWorkers:vi(r,i,"useWebWorkers"),useCompressionStream:vi(r,i,"useCompressionStream"),transferStreams:vi(r,i,"transferStreams"),checkPasswordOnly:R},config:d,streamOptions:{signal:D,size:v,onstart:A,onprogress:T,onend:C}};let U=0;try{({outputSize:U}=await nn({readable:z,writable:F},N))}catch(e){if(!R||e.message!=Ye)throw e}finally{const e=vi(r,i,"preventClose");F.size+=U,e||F.locked||await F.getWriter().close()}return R?void 0:e.getData?e.getData():F}}function yi(e,t,i){const r=e.rawBitFlag=Ri(t,i+2),a=1==(1&r),s=Fi(t,i+6);n.assign(e,{encrypted:a,version:Ri(t,i),bitFlag:{level:(6&r)>>1,dataDescriptor:8==(8&r),languageEncodingFlag:(r&xe)==xe},rawLastModDate:s,lastModDate:zi(s),filenameLength:Ri(t,i+22),extraFieldLength:Ri(t,i+24)})}async function ki(e,t,i,r){const{rawExtraField:a}=t,s=t.extraField=new l,c=Ti(new _(a));let d=0;try{for(;d{t.zip64=!0;const n=Ti(e.data),i=gi.filter((([e,n])=>t[e]==n));for(let r=0,a=0;r{const r=Ti(e.data),a=Di(r,4);n.assign(e,{vendorVersion:Di(r,0),vendorId:Di(r,2),strength:a,originalCompressionMethod:i,compressionMethod:Ri(r,5)}),t.compressionMethod=e.compressionMethod})(b,t,u),t.extraFieldAES=b):t.compressionMethod=u;const g=s.get(10);g&&(((e,t)=>{const i=Ti(e.data);let r,a=4;try{for(;a{const n=Ti(e.data),i=Di(n,0),r=[],a=[];1==(1&i)&&(r.push(Xn),a.push(jn)),2==(2&i)&&(r.push(Jn),a.push("rawLastAccessDate")),4==(4&i)&&(r.push(Qn),a.push("rawCreationDate"));let s=1;r.forEach(((i,r)=>{if(e.data.length>=s+4){const l=Fi(n,s);t[i]=e[i]=new o(1e3*l);const c=a[r];e[c]=l}s+=4}))})(m,t),t.extraFieldExtendedTimestamp=m)}async function Si(e,t,i,r,a){const s=Ti(e.data),o=new Ie;o.append(a[i]);const l=Ti(new _(4));l.setUint32(0,o.get(),!0);const c=Fi(s,1);n.assign(e,{version:Di(s,0),[t]:Pn(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&c==Fi(l,0)}),e.valid&&(r[t]=e[t],r[t+"UTF8"]=!0)}function vi(e,t,n){return t[n]===ve?e.options[n]:t[n]}function zi(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Ei(e){return new o(r(e/a(1e4)-a(116444736e5)))}function Di(e,t){return e.getUint8(t)}function Ri(e,t){return e.getUint16(t,!0)}function Fi(e,t){return e.getUint32(t,!0)}function Ai(e,t){return r(e.getBigUint64(t,!0))}function Ti(e){return new h(e.buffer)}const Ci="File already exists",Ni="Zip file comment exceeds 64KB",Ui="File entry comment exceeds 64KB",Wi="File entry name exceeds 64KB",Ii="Version exceeds 65535",Oi="The strength must equal 1, 2, or 3",Li="Extra field type exceeds 65535",Mi="Extra field data exceeds 64KB",Pi="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Hi=new _([7,0,2,0,65,69,3,0,0]);let Bi=0;const Vi=[];async function qi(e,t){const n=e.getWriter();await n.ready,e.size+=$i(t),await n.write(t),n.releaseLock()}function Zi(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function Ki(e,t,n,i){const r=t[n]===ve?e.options[n]:t[n];return r===ve?i:r}function Yi(e,t,n){e.setUint8(t,n)}function Gi(e,t,n){e.setUint16(t,n,!0)}function Xi(e,t,n){e.setUint32(t,n,!0)}function ji(e,t,n){e.setBigUint64(t,n,!0)}function Ji(e,t,n){e.set(t,n)}function Qi(e){return new h(e.buffer)}function $i(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}Ne({Deflate:function(e){const t=new Y,n=(i=e&&e.chunkSize?e.chunkSize:65536)+5*(s.floor(i/16383)+1);var i;const r=new _(n);let a=e?e.level:-1;void 0===a&&(a=-1),t.deflateInit(a),t.next_out=r,this.append=(e,i)=>{let a,s,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 _(r)):d.push(r.subarray(0,t.next_out_index))),c+=t.next_out_index,i&&t.next_in_index>0&&t.next_in_index!=o&&(i(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(s=new _(c),d.forEach((e=>{s.set(e,l),l+=e.length}))):s=d[0]?new _(d[0]):new _,s}},this.flush=()=>{let e,i,a=0,s=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(r.slice(0,t.next_out_index)),s+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),i=new _(s),o.forEach((e=>{i.set(e,a),a+=e.length})),i}},Inflate:function(e){const t=new ue,n=e&&e.chunkSize?s.floor(2*e.chunkSize):131072,i=new _(n);let r=!1;t.inflateInit(),t.next_out=i,this.append=(e,a)=>{const s=[];let o,l,c=0,d=0,u=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||r||(t.next_in_index=0,r=!0),o=t.inflate(0),r&&o===j){if(0!==t.avail_in)throw new f("inflating: bad input")}else if(0!==o&&1!==o)throw new f("inflating: "+t.msg);if((r||1===o)&&t.avail_in===e.length)throw new f("inflating: bad input");t.next_out_index&&(t.next_out_index===n?s.push(new _(i)):s.push(i.subarray(0,t.next_out_index))),u+=t.next_out_index,a&&t.next_in_index>0&&t.next_in_index!=c&&(a(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return s.length>1?(l=new _(u),s.forEach((e=>{l.set(e,d),d+=e.length}))):l=s[0]?new _(s[0]):new _,l}},this.flush=()=>{t.inflateEnd()}}}),e.BlobReader=pn,e.BlobWriter=hn,e.Data64URIReader=class extends _n{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const i=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:i,size:s.floor(.75*(t-i))})}readUint8Array(e,t){const{dataStart:n,dataURI:i}=this,r=new _(t),a=4*s.floor(e/3),o=atob(i.substring(a+n,4*s.ceil((e+t)/3)+n)),l=e-3*s.floor(a/4);for(let e=l;l+t>e;e++)r[e-l]=o.charCodeAt(e);return r}},e.Data64URIWriter=class extends wn{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,r=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*s.floor((a+e.length)/3)-a;n++)r+=i.fromCharCode(e[n]);for(;n2?t.data+=S(r):t.pending=r}getData(){return this.data+S(this.pending)}},e.ERR_BAD_FORMAT=ai,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=ci,e.ERR_DUPLICATED_NAME=Ci,e.ERR_ENCRYPTED=fi,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=li,e.ERR_EOCDR_NOT_FOUND=si,e.ERR_EOCDR_ZIP64_NOT_FOUND=oi,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=ui,e.ERR_HTTP_RANGE=sn,e.ERR_INVALID_COMMENT=Ni,e.ERR_INVALID_ENCRYPTION_STRENGTH=Oi,e.ERR_INVALID_ENTRY_COMMENT=Ui,e.ERR_INVALID_ENTRY_NAME=Wi,e.ERR_INVALID_EXTRAFIELD_DATA=Mi,e.ERR_INVALID_EXTRAFIELD_TYPE=Li,e.ERR_INVALID_PASSWORD=Ze,e.ERR_INVALID_SIGNATURE=Ke,e.ERR_INVALID_VERSION=Ii,e.ERR_ITERATOR_COMPLETED_TOO_SOON=on,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=di,e.ERR_SPLIT_ZIP_FILE=pi,e.ERR_UNSUPPORTED_COMPRESSION=wi,e.ERR_UNSUPPORTED_ENCRYPTION=_i,e.ERR_UNSUPPORTED_FORMAT=Pi,e.HttpRangeReader=class extends An{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=An,e.Reader=_n,e.SplitDataReader=Tn,e.SplitDataWriter=Cn,e.SplitZipReader=On,e.SplitZipWriter=Ln,e.TextReader=class extends pn{constructor(e){super(new b([e],{type:"text/plain"}))}},e.TextWriter=class extends hn{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,i=await super.getData();if(i.text&&t)return i.text();{const t=new FileReader;return new g(((r,a)=>{n.assign(t,{onload:({target:e})=>r(e.result),onerror:()=>a(t.error)}),t.readAsText(i,e)}))}}},e.Uint8ArrayReader=class extends _n{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 wn{init(e=0){n.assign(this,{offset:0,array:new _(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new _(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=wn,e.ZipReader=class{constructor(e,t={}){n.assign(this,{reader:Un(e),options:t,config:Te()})}async*getEntriesGenerator(e={}){const t=this;let{reader:i}=t;const{config:r}=t;if(await Nn(i),i.size!==ve&&i.readUint8Array||(i=new pn(await new d(i.readable).blob()),await Nn(i)),22>i.size)throw new f(ai);i.chunkSize=Ce(r);const a=await(async(e,t,n)=>{const i=new _(4);return Ti(i).setUint32(0,101010256,!0),await r(22)||await r(s.min(1048582,n));async function r(t){const r=n-t,a=await In(e,r,t);for(let e=a.length-22;e>=0;e--)if(a[e]==i[0]&&a[e+1]==i[1]&&a[e+2]==i[2]&&a[e+3]==i[3])return{offset:r+e,buffer:a.slice(e,e+22).buffer}}})(i,0,i.size);if(!a)throw Fi(Ti(await In(i,0,4)))==pe?new f(pi):new f(si);const o=Ti(a);let l=Fi(o,12),c=Fi(o,16);const u=a.offset,w=Ri(o,20),p=u+22+w;let h=Ri(o,4);const b=i.lastDiskNumber||0;let m=Ri(o,6),x=Ri(o,8),y=0,k=0;if(c==fe||l==fe||x==_e||m==_e){const e=Ti(await In(i,a.offset-20,20));if(Fi(e,0)!=ge)throw new f(oi);c=Ai(e,8);let t=await In(i,c,56,-1),n=Ti(t);const r=a.offset-20-56;if(Fi(n,0)!=be&&c!=r){const e=c;c=r,y=c-e,t=await In(i,c,56,-1),n=Ti(t)}if(Fi(n,0)!=be)throw new f(li);h==_e&&(h=Fi(n,16)),m==_e&&(m=Fi(n,20)),x==_e&&(x=Ai(n,32)),l==fe&&(l=Ai(n,40)),c-=l}if(b!=h)throw new f(pi);if(0>c||c>=i.size)throw new f(ai);let S=0,v=await In(i,c,l,m),z=Ti(v);if(l){const e=a.offset-l;if(Fi(z,S)!=he&&c!=e){const t=c;c=e,y=c-t,v=await In(i,c,l,m),z=Ti(v)}}const E=a.offset-c-(i.lastDiskOffset||0);if(l==E||0>E||(l=E,v=await In(i,c,l,m),z=Ti(v)),0>c||c>=i.size)throw new f(ai);const D=vi(t,e,"filenameEncoding"),R=vi(t,e,"commentEncoding");for(let a=0;x>a;a++){const o=new xi(i,r,t.options);if(Fi(z,S)!=he)throw new f(ci);yi(o,z,S+6);const l=!!o.bitFlag.languageEncodingFlag,c=S+46,d=c+o.filenameLength,u=d+o.extraFieldLength,_=Ri(z,S+4),w=0==(0&_),p=v.subarray(c,d),h=Ri(z,S+32),b=u+h,m=v.subarray(u,b),E=l,F=l,A=w&&16==(16&Di(z,S+38)),T=Fi(z,S+42)+y;n.assign(o,{versionMadeBy:_,msDosCompatible:w,compressedSize:0,uncompressedSize:0,commentLength:h,directory:A,offset:T,diskNumberStart:Ri(z,S+34),internalFileAttribute:Ri(z,S+36),externalFileAttribute:Fi(z,S+38),rawFilename:p,filenameUTF8:E,commentUTF8:F,rawExtraField:v.subarray(d,u)});const[C,N]=await g.all([Pn(p,E?hi:D||bi),Pn(m,F?hi:R||bi)]);n.assign(o,{rawComment:m,filename:C,comment:N,directory:A||C.endsWith(ye)}),k=s.max(T,k),await ki(o,o,z,S+6);const U=new ri(o);U.getData=(e,t)=>o.getData(e,U,t),S=b;const{onprogress:W}=e;if(W)try{await W(a+1,x,new ri(o))}catch(e){}yield U}const F=vi(t,e,"extractPrependedData"),A=vi(t,e,"extractAppendedData");return F&&(t.prependedData=k>0?await In(i,0,k):new _),t.comment=w?await In(i,u+22,w):new _,A&&(t.appendedData=pVi.push(e)));try{if(e=e.trim(),l.filenames.has(e))throw new f(Ci);return l.filenames.add(e),u=(async(e,i,r,l)=>{i=i.trim(),l.directory&&!i.endsWith(ye)?i+=ye:l.directory=i.endsWith(ye);const c=Le(i);if($i(c)>_e)throw new f(Wi);const d=l.comment||"",u=Le(d);if($i(u)>_e)throw new f(Ui);const b=Ki(e,l,"version",20);if(b>_e)throw new f(Ii);const m=Ki(e,l,"versionMadeBy",20);if(m>_e)throw new f(Ii);const x=Ki(e,l,Xn,new o),y=Ki(e,l,Jn),k=Ki(e,l,Qn),S=Ki(e,l,ti,!0),v=Ki(e,l,$n,0),z=Ki(e,l,ei,0),E=Ki(e,l,"password"),D=Ki(e,l,"encryptionStrength",3),R=Ki(e,l,"zipCrypto"),F=Ki(e,l,"extendedTimestamp",!0),A=Ki(e,l,"keepOrder",!0),T=Ki(e,l,"level"),C=Ki(e,l,"useWebWorkers"),N=Ki(e,l,"bufferedWrite"),U=Ki(e,l,"dataDescriptorSignature",!1),W=Ki(e,l,"signal"),I=Ki(e,l,"useCompressionStream");let O=Ki(e,l,"dataDescriptor",!0),L=Ki(e,l,ni);if(E!==ve&&D!==ve&&(1>D||D>3))throw new f(Oi);let M=new _;const{extraField:P}=l;if(P){let e=0,t=0;P.forEach((t=>e+=4+$i(t))),M=new _(e),P.forEach(((e,n)=>{if(n>_e)throw new f(Li);if($i(e)>_e)throw new f(Mi);Ji(M,new w([n]),t),Ji(M,new w([$i(e)]),t+2),Ji(M,e,t+4),t+=4+$i(e)}))}let H=0,B=0,V=0;const q=!0===L;r&&(r=Un(r),await Nn(r),r.size===ve?(O=!0,(L||L===ve)&&(L=!0,V=H=fe)):(V=r.size,H=(e=>e+5*(s.floor(e/16383)+1))(V)));const{diskOffset:Z,diskNumber:K,maxSize:Y}=e.writer,G=q||V>=fe,X=q||H>=fe,j=q||e.offset+e.pendingEntriesSize-Z>=fe,J=Ki(e,l,"supportZip64SplitFile",!0)&&q||K+s.ceil(e.pendingEntriesSize/Y)>=_e;if(j||G||X||J){if(!1===L||!A)throw new f(Pi);L=!0}L=L||!1;const Q=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:i,creationDate:r,password:a,level:o,zip64:l,zipCrypto:c,dataDescriptor:d,directory:u,rawExtraField:f,encryptionStrength:w,extendedTimestamp:h}=e,b=0!==o&&!u,g=!(!a||!$i(a));let m,x,y,k=e.version;if(g&&!c){m=new _($i(Hi)+2);const e=Qi(m);Gi(e,0,39169),Ji(m,Hi,2),Yi(e,8,w)}else m=new _;if(h){y=new _(9+(i?4:0)+(r?4:0));const e=Qi(y);Gi(e,0,me),Gi(e,2,$i(y)-4),Yi(e,4,1+(i?2:0)+(r?4:0)),Xi(e,5,s.floor(n.getTime()/1e3)),i&&Xi(e,9,s.floor(i.getTime()/1e3)),r&&Xi(e,13,s.floor(r.getTime()/1e3));try{x=new _(36);const e=Qi(x),t=Zi(n);Gi(e,0,10),Gi(e,2,32),Gi(e,8,1),Gi(e,10,24),ji(e,12,t),ji(e,20,Zi(i)||t),ji(e,28,Zi(r)||t)}catch(e){x=new _}}else x=y=new _;let S=xe;d&&(S|=8);let v=0;b&&(v=8),l&&(k=k>45?k:45),g&&(S|=1,c||(k=k>51?k:51,v=99,b&&(m[9]=8)));const z=new _(26),E=Qi(z);Gi(E,0,k),Gi(E,2,S),Gi(E,4,v);const D=new p(1),R=Qi(D);let F;F=Se>n?Se:n>ke?ke:n,Gi(R,0,(F.getHours()<<6|F.getMinutes())<<5|F.getSeconds()/2),Gi(R,2,(F.getFullYear()-1980<<4|F.getMonth()+1)<<5|F.getDate());const A=D[0];Xi(E,6,A),Gi(E,22,$i(t));const T=$i(m,y,x,f);Gi(E,24,T);const C=new _(30+$i(t)+T);return Xi(Qi(C),0,we),Ji(C,z,4),Ji(C,t,30),Ji(C,m,30+$i(t)),Ji(C,y,30+$i(t,m)),Ji(C,x,30+$i(t,m,y)),Ji(C,f,30+$i(t,m,y,x)),{localHeaderArray:C,headerArray:z,headerView:E,lastModDate:n,rawLastModDate:A,encrypted:g,compressed:b,version:k,compressionMethod:v,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:x,rawExtraFieldAES:m}})(l=n.assign({},l,{rawFilename:c,rawComment:u,version:b,versionMadeBy:m,lastModDate:x,lastAccessDate:y,creationDate:k,rawExtraField:M,zip64:L,zip64UncompressedSize:G,zip64CompressedSize:X,zip64Offset:j,zip64DiskNumberStart:J,password:E,level:T,useWebWorkers:C,encryptionStrength:D,extendedTimestamp:F,zipCrypto:R,bufferedWrite:N,keepOrder:A,dataDescriptor:O,dataDescriptorSignature:U,signal:W,msDosCompatible:S,internalFileAttribute:v,externalFileAttribute:z,useCompressionStream:I})),$=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:i}=e;let r,a=new _,s=0;return n&&(a=new _(t?i?24:20:i?16:12),r=Qi(a),i&&(s=4,Xi(r,0,134695760))),{dataDescriptorArray:a,dataDescriptorView:r,dataDescriptorOffset:s}})(l);let ee;B=$i(Q.localHeaderArray,$.dataDescriptorArray)+H,e.pendingEntriesSize+=B;try{ee=await(async(e,i,r,s,o)=>{const{files:l,writer:c}=e,{keepOrder:d,dataDescriptor:u,signal:w}=o,{headerInfo:p}=s,b=t.from(l.values()).pop();let m,x,y,k,S,v,z={};l.set(i,z);try{let t;d&&(t=b&&b.lock,z.lock=new g((e=>y=e))),o.bufferedWrite||e.writerLocked||e.bufferedWrites&&d||!u?(v=new hn,v.writable.size=0,m=!0,e.bufferedWrites++,await Nn(c)):(v=c,await E()),await Nn(v);const{writable:p}=c;let{diskOffset:R}=c;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new _(4);Xi(Qi(t),0,pe),await qi(p,t),e.offset+=4}m||(await t,await D(p));const{diskNumber:F}=c;if(S=!0,z.diskNumberStart=F,z=await(async(e,t,{diskNumberStart:i,lock:r},s,o,l)=>{const{headerInfo:c,dataDescriptorInfo:d}=s,{localHeaderArray:u,headerArray:f,lastModDate:w,rawLastModDate:p,encrypted:h,compressed:b,version:g,compressionMethod:m,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:y,rawExtraFieldAES:k}=c,{dataDescriptorArray:S}=d,{rawFilename:v,lastAccessDate:z,creationDate:E,password:D,level:R,zip64:F,zip64UncompressedSize:A,zip64CompressedSize:T,zip64Offset:C,zip64DiskNumberStart:N,zipCrypto:U,dataDescriptor:W,directory:I,versionMadeBy:O,rawComment:L,rawExtraField:M,useWebWorkers:P,onstart:H,onprogress:B,onend:V,signal:q,encryptionStrength:Z,extendedTimestamp:K,msDosCompatible:Y,internalFileAttribute:G,externalFileAttribute:X,useCompressionStream:j}=l,J={lock:r,versionMadeBy:O,zip64:F,directory:!!I,filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:L,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:y,rawExtraFieldAES:k,rawExtraField:M,extendedTimestamp:K,msDosCompatible:Y,internalFileAttribute:G,externalFileAttribute:X,diskNumberStart:i};let Q,$=0,ee=0;const{writable:te}=t,ne=$i(u,S);if(e){e.chunkSize=Ce(o),await qi(te,u);const t=e.readable,n=t.size=e.size,i={options:{codecType:Pt,level:R,password:D,encryptionStrength:Z,zipCrypto:h&&U,passwordVerification:h&&U&&p>>8&255,signed:!0,compressed:b,encrypted:h,useWebWorkers:P,useCompressionStream:j,transferStreams:!1},config:o,streamOptions:{signal:q,size:n,onstart:H,onprogress:B,onend:V}},r=await nn({readable:t,writable:te},i);te.size+=r.size,Q=r.signature,ee=e.size=t.size,$=r.size}else await qi(te,u);let ie;if(F){let e=4;A&&(e+=8),T&&(e+=8),C&&(e+=8),N&&(e+=4),ie=new _(e)}else ie=new _;return((e,t)=>{const{signature:n,rawExtraFieldZip64:i,compressedSize:r,uncompressedSize:s,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:d}=o,{dataDescriptorView:u,dataDescriptorOffset:f}=l,{zip64:_,zip64UncompressedSize:w,zip64CompressedSize:p,zipCrypto:h,dataDescriptor:b}=t;if(d&&!h||n===ve||(Xi(c,10,n),b&&Xi(u,f,n)),_){const e=Qi(i);Gi(e,0,1),Gi(e,2,i.length-4);let t=4;w&&(Xi(c,18,fe),ji(e,t,a(s)),t+=8),p&&(Xi(c,14,fe),ji(e,t,a(r))),b&&(ji(u,f+4,a(r)),ji(u,f+12,a(s)))}else Xi(c,14,r),Xi(c,18,s),b&&(Xi(u,f+4,r),Xi(u,f+8,s))})({signature:Q,rawExtraFieldZip64:ie,compressedSize:$,uncompressedSize:ee,headerInfo:c,dataDescriptorInfo:d},l),W&&await qi(te,S),n.assign(J,{uncompressedSize:ee,compressedSize:$,lastModDate:w,rawLastModDate:p,creationDate:E,lastAccessDate:z,encrypted:h,length:ne+$,compressionMethod:m,version:g,headerArray:f,signature:Q,rawExtraFieldZip64:ie,zip64UncompressedSize:A,zip64CompressedSize:T,zip64Offset:C,zip64DiskNumberStart:N}),J})(r,v,z,s,e.config,o),S=!1,l.set(i,z),z.filename=i,m){await v.writable.getWriter().close();let e=await v.getData();await t,await E(),k=!0,u||(e=await(async(e,t,n,{zipCrypto:i})=>{let r;r=await t.slice(0,26).arrayBuffer(),26!=r.byteLength&&(r=r.slice(0,26));const a=new h(r);return e.encrypted&&!i||Xi(a,14,e.signature),e.zip64?(Xi(a,18,fe),Xi(a,22,fe)):(Xi(a,18,e.compressedSize),Xi(a,22,e.uncompressedSize)),await qi(n,new _(r)),t.slice(r.byteLength)})(z,e,p,o)),await D(p),z.diskNumberStart=c.diskNumber,R=c.diskOffset,await e.stream().pipeTo(p,{preventClose:!0,preventAbort:!0,signal:w}),p.size+=e.size,k=!1}if(z.offset=e.offset-R,z.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:i,diskNumberStart:r}=e,{zip64UncompressedSize:s,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,d=Qi(n);let u=4;s&&(u+=8),o&&(u+=8),l&&(ji(d,u,a(i)),u+=8),c&&Xi(d,u,r)})(z,o);else if(z.offset>=fe)throw new f(Pi);return e.offset+=z.length,z}catch(t){if(m&&k||!m&&S){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}m?e.offset+=v.writable.size:e.offset=v.writable.size}throw l.delete(i),t}finally{m&&e.bufferedWrites--,y&&y(),x&&x()}async function E(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new g((t=>x=()=>{e.writerLocked=!1,t()})),await t}async function D(e){p.localHeaderArray.length>c.availableSize&&(c.availableSize=0,await qi(e,new _))}})(e,i,r,{headerInfo:Q,dataDescriptorInfo:$},l)}finally{e.pendingEntriesSize-=B}return n.assign(ee,{name:i,comment:d,extraField:P}),new ri(ee)})(l,e,i,r),c.add(u),await u}catch(t){throw l.filenames.delete(e),t}finally{c.delete(u);const e=Vi.shift();e?e():Bi--}}async close(e=new _,n={}){const{pendingAddFileCalls:i,writer:r}=this,{writable:o}=r;for(;i.size;)await g.all(t.from(i));return await(async(e,n,i)=>{const{files:r,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:d}=o,u=0,w=0,p=e.offset-l,h=r.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:i,rawComment:a,rawExtraFieldExtendedTimestamp:s,rawExtraFieldNTFS:o}]of r)w+=46+$i(e,a,t,n,s,o,i);const b=new _(w),g=Qi(b);await Nn(o);let m=0;for(const[e,n]of t.from(r.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:l,rawExtraFieldAES:d,rawExtraFieldNTFS:f,rawExtraField:w,rawComment:p,versionMadeBy:h,headerArray:x,directory:y,zip64:k,zip64UncompressedSize:S,zip64CompressedSize:v,zip64DiskNumberStart:z,zip64Offset:E,msDosCompatible:D,internalFileAttribute:R,externalFileAttribute:F,extendedTimestamp:A,lastModDate:T,diskNumberStart:C,uncompressedSize:N,compressedSize:U}=n;let W;if(A){W=new _(9);const e=Qi(W);Gi(e,0,me),Gi(e,2,$i(W)-4),Yi(e,4,1),Xi(e,5,s.floor(T.getTime()/1e3))}else W=new _;const I=$i(l,d,W,f,w);Xi(g,u,he),Gi(g,u+4,h);const O=Qi(x);S||Xi(O,18,N),v||Xi(O,14,U),Ji(b,x,u+6),Gi(g,u+30,I),Gi(g,u+32,$i(p)),Gi(g,u+34,k&&z?_e:C),Gi(g,u+36,R),F?Xi(g,u+38,F):y&&D&&Yi(g,u+38,16),Xi(g,u+42,k&&E?fe:t),Ji(b,a,u+46),Ji(b,l,u+46+$i(a)),Ji(b,d,u+46+$i(a,l)),Ji(b,W,u+46+$i(a,l,d)),Ji(b,f,u+46+$i(a,l,d,W)),Ji(b,w,u+46+$i(a,l,d,W,f)),Ji(b,p,u+46+$i(a)+I);const L=46+$i(a,p)+I;if(u-m>o.availableSize&&(o.availableSize=0,await qi(c,b.slice(m,u)),m=u),u+=L,i.onprogress)try{await i.onprogress(e+1,r.size,new ri(n))}catch(e){}}await qi(c,m?b.slice(m):b);let x=o.diskNumber;const{availableSize:y}=o;22>y&&x++;let k=Ki(e,i,"zip64");if(!(fe>p&&fe>w&&_e>h&&_e>x)){if(!1===k)throw new f(Pi);k=!0}const S=new _(k?98:22),v=Qi(S);u=0,k&&(Xi(v,0,be),ji(v,4,a(44)),Gi(v,12,45),Gi(v,14,45),Xi(v,16,x),Xi(v,20,d),ji(v,24,a(h)),ji(v,32,a(h)),ji(v,40,a(w)),ji(v,48,a(p)),Xi(v,56,ge),ji(v,64,a(p)+a(w)),Xi(v,72,x+1),Ki(e,i,"supportZip64SplitFile",!0)&&(x=_e,d=_e),h=_e,p=fe,w=fe,u+=76),Xi(v,u,101010256),Gi(v,u+4,x),Gi(v,u+6,d),Gi(v,u+8,h),Gi(v,u+10,h),Xi(v,u+12,w),Xi(v,u+16,p);const z=$i(n);if(z){if(z>_e)throw new f(Ni);Gi(v,u+20,z)}await qi(c,S),z&&await qi(c,n)})(this,e,n),Ki(this,n,"preventClose")||await o.getWriter().close(),r.getData?r.getData():o}},e.configure=Ne,e.getMimeType=()=>"application/octet-stream",e.initReader=Un,e.initStream=Nn,e.initWriter=Wn,e.readUint8Array=In,e.terminateWorkers=()=>{$t.forEach((e=>{rn(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})})); diff --git a/dist/zip.js b/dist/zip.js index fa5affd8..d940100e 100644 --- a/dist/zip.js +++ b/dist/zip.js @@ -4309,6 +4309,7 @@ let uncompressedSize = 0; let signature; const { writable } = writer; + const metaDataLength = getLength(localHeaderArray, dataDescriptorArray); if (reader) { reader.chunkSize = getChunkSize(config); await writeData(writable, localHeaderArray); @@ -4378,7 +4379,7 @@ creationDate, lastAccessDate, encrypted, - length: getLength(localHeaderArray, dataDescriptorArray) + compressedSize, + length: metaDataLength + compressedSize, compressionMethod, version, headerArray, diff --git a/dist/zip.min.js b/dist/zip.min.js index 0db5c4cb..032f6fde 100644 --- a/dist/zip.min.js +++ b/dist/zip.min.js @@ -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:i,Math:a,Date:o,Map:c,Set:l,Response:u,URL:f,Error:d,Uint8Array:w,Uint16Array:h,Uint32Array:p,DataView:g,Blob:m,Promise:y,TextEncoder:b,TextDecoder:S,document:k,crypto:z,btoa:_,TransformStream:v,ReadableStream:C,WritableStream:x,CompressionStream:A,DecompressionStream:D,navigator:W,Worker:R}="undefined"!=typeof globalThis?globalThis:this||self,F=4294967295,E=65535,T=67324752,U=134695760,L=33639248,I=101075792,N=117853008,q=21589,O=2048,M="/",K=new o(2107,11,31),V=new o(1980,0,1),P=void 0,B="undefined",H="function";class Y{constructor(e){return class extends v{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 Z=2;try{typeof W!=B&&W.hardwareConcurrency&&(Z=W.hardwareConcurrency)}catch(e){}const X={chunkSize:524288,maxWorkers:Z,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:P,CompressionStreamNative:typeof A!=B&&A,DecompressionStreamNative:typeof D!=B&&D},j=n.assign({},X);function G(){return j}function J(e){return a.max(e.chunkSize,64)}function $(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:u,DecompressionStream:f,workerScripts:w}=e;if(Q("baseURL",n),Q("chunkSize",r),Q("maxWorkers",s),Q("terminateWorkerTimeout",i),Q("useCompressionStream",a),Q("useWebWorkers",o),c&&(j.CompressionStream=new Y(c)),l&&(j.DecompressionStream=new Y(l)),Q("CompressionStream",u),Q("DecompressionStream",f),w!==P){const{deflate:e,inflate:n}=w;if((e||n)&&(j.workerScripts||(j.workerScripts={})),e){if(!t.isArray(e))throw new d("workerScripts.deflate must be an array");j.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new d("workerScripts.inflate must be an array");j.workerScripts.inflate=n}}}function Q(e,t){t!==P&&(j[e]=t)}function ee(e,t,r){return class{constructor(s){const i=this;var a,o;a=s,o="level",("function"==typeof n.hasOwn?n.hasOwn(a,o):a.hasOwnProperty(o))&&void 0===s.level&&delete s.level,i.codec=new e(n.assign({},t,s)),r(i.codec,(e=>{if(i.pendingData){const t=i.pendingData;i.pendingData=new w(t.length+e.length);const{pendingData:n}=i;n.set(t,0),n.set(e,t.length)}else i.pendingData=new w(e)}))}append(e){return this.codec.push(e),s(this)}flush(){return this.codec.push(new w,!0),s(this)}};function s(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new w}}const te=[];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;te[e]=t}class ne{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^te[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class re extends v{constructor(){let e;const t=new ne;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new g(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function se(e){if(void 0===b){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=ie.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=>a.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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=ie.getPartial(s);return r.push(ie.partial(t+i&31,t+i>32?n:r.pop(),1)),r}},ae={bytes:{fromBits(e){const t=ie.bitLength(e)/8,n=new w(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;n9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const i=new p(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);s>=e;e+=t.blockSize)t._block(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=ie.concat(t,[ie.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return 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){return 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 i=r[0],o=r[1],c=r[2],l=r[3],u=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,i)+n._f(e,o,c,l)+u+s[e]+n._key[a.floor(e/20)]|0;u=l,l=c,c=n._S(30,o),o=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},ce={getRandomValues(e){const t=new p(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)*(a.random()>.5?1:-1))};for(let r,s=0;snew le.hmacSha1(ae.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new d("invalid params to pbkdf2");const s=1+(r>>5)<<2;let i,a,o,c,l;const u=new ArrayBuffer(s),f=new g(u);let w=0;const h=ie;for(t=ae.bytes.toBits(t),l=1;(s||1)>w;l++){for(i=a=e.encrypt(h.concat(t,[l])),o=1;n>o;o++)for(a=e.encrypt(a),c=0;cw&&os&&(e=(new n).update(e).finalize());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 d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},ue=void 0!==z&&"function"==typeof z.getRandomValues,fe="Invalid password",de="Invalid signature",we="zipjs-abort-check-password";function he(e){return ue?z.getRandomValues(e):ce.getRandomValues(e)}const pe=16,ge={name:"PBKDF2"},me=n.assign({hash:{name:"HMAC"}},ge),ye=n.assign({iterations:1e3,hash:{name:"SHA-1"}},ge),be=["deriveBits"],Se=[8,12,16],ke=[16,24,32],ze=10,_e=[0,0,0,0],ve="undefined",Ce="function",xe=typeof z!=ve,Ae=xe&&z.subtle,De=xe&&typeof Ae!=ve,We=ae.bytes,Re=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 i,a,o,c=1;if(4!==s&&6!==s&&8!==s)throw new d("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],i=s;4*s+28>i;i++){let e=a[i-1];(i%s==0||8===s&&i%s==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%s==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[i]=a[i-s]^e}for(let e=0;i;e++,i--){const t=a[3&e?i:i-4];o[e]=4>=i||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=[],i=[];let a,o,c,l;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=o||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=s[c=s[o=s[u]]];let f=16843009*l^65537*c^257*o^16843008*u,d=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][u]=d=d<<24^d>>>8,t[n][i]=f=f<<24^f>>>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 d("invalid aes block size");const n=this._key[t],r=n.length/4-2,s=[0,0,0,0],i=this._tables[t],a=i[0],o=i[1],c=i[2],l=i[3],u=i[4];let f,w,h,p=e[0]^n[0],g=e[t?3:1]^n[1],m=e[2]^n[2],y=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)f=a[p>>>24]^o[g>>16&255]^c[m>>8&255]^l[255&y]^n[b],w=a[g>>>24]^o[m>>16&255]^c[y>>8&255]^l[255&p]^n[b+1],h=a[m>>>24]^o[y>>16&255]^c[p>>8&255]^l[255&g]^n[b+2],y=a[y>>>24]^o[p>>16&255]^c[g>>8&255]^l[255&m]^n[b+3],b+=4,p=f,g=w,m=h;for(let e=0;4>e;e++)s[t?3&-e:e]=u[p>>>24]<<24^u[g>>16&255]<<16^u[m>>8&255]<<8^u[255&y]^n[b++],f=p,p=g,g=m,m=y,y=f;return s}},Fe=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=ie.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 ie.clamp(t,s)}},Ee=le.hmacSha1;let Te=xe&&De&&typeof Ae.importKey==Ce,Ue=xe&&De&&typeof Ae.deriveBits==Ce;class Le extends v{constructor({password:e,signed:t,encryptionStrength:r,checkPasswordOnly:s}){super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:e,signed:t,strength:r-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const s=await qe(e,t,n,Me(r,0,Se[t])),i=Me(r,Se[t]);if(s[0]!=i[0]||s[1]!=i[1])throw new d(fe)})(n,i,r,Me(e,0,Se[i]+2)),e=Me(e,Se[i]+2),s?t.error(new d(we)):a()):await o;const c=new w(e.length-ze-(e.length-ze)%pe);t.enqueue(Ne(n,e,c,0,ze,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:i}=this;await i;const a=Me(s,0,s.length-ze),o=Me(s,s.length-ze);let c=new w;if(a.length){const e=Ve(We,a);r.update(e);const t=n.update(e);c=Ke(We,t)}if(t){const e=Me(Ke(We,r.digest()),0,ze);for(let t=0;ze>t;t++)if(e[t]!=o[t])throw new d(de)}e.enqueue(c)}})}}class Ie extends v{constructor({password:e,encryptionStrength:t}){let r;super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:i,ready:a}=n;let o=new w;r?(o=await(async(e,t,n)=>{const r=he(new w(Se[t]));return Oe(r,await qe(e,t,n,r))})(n,s,r),i()):await a;const c=new w(o.length+e.length-e.length%pe);c.set(o,0),t.enqueue(Ne(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:s,ready:i}=this;await i;let a=new w;if(s.length){const e=t.update(Ve(We,s));n.update(e),a=Ke(We,e)}r.signature=Ke(We,n.digest()).slice(0,ze),e.enqueue(Oe(a,r.signature))}}),r=this}}function Ne(e,t,n,r,s,i){const{ctr:a,hmac:o,pending:c}=e,l=t.length-s;let u;for(c.length&&(t=Oe(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e})(n,l-l%pe)),u=0;l-pe>=u;u+=pe){const e=Ve(We,Me(t,u,u+pe));i&&o.update(e);const s=a.update(e);i||o.update(s),n.set(Ke(We,s),u+r)}return e.pending=Me(t,u),n}async function qe(e,r,s,i){e.password=null;const a=se(s),o=await(async(e,t,n,r,s)=>{if(!Te)return le.importKey(t);try{return await Ae.importKey("raw",t,n,!1,s)}catch(e){return Te=!1,le.importKey(t)}})(0,a,me,0,be),c=await(async(e,t,n)=>{if(!Ue)return le.pbkdf2(t,e.salt,ye.iterations,n);try{return await Ae.deriveBits(e,t,n)}catch(r){return Ue=!1,le.pbkdf2(t,e.salt,ye.iterations,n)}})(n.assign({salt:i},ye),o,8*(2*ke[r]+2)),l=new w(c),u=Ve(We,Me(l,0,ke[r])),f=Ve(We,Me(l,ke[r],2*ke[r])),d=Me(l,2*ke[r]);return n.assign(e,{keys:{key:u,authentication:f,passwordVerification:d},ctr:new Fe(new Re(u),t.from(_e)),hmac:new Ee(f)}),d}function Oe(e,t){let n=e;return e.length+t.length&&(n=new w(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Me(e,t,n){return e.subarray(t,n)}function Ke(e,t){return e.fromBits(t)}function Ve(e,t){return e.toBits(t)}class Pe extends v{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Ze(this,e)},transform(e,t){const n=this;if(n.password){const t=He(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new d(fe);e=e.subarray(12)}r?t.error(new d(we)):t.enqueue(He(n,e))}})}}class Be extends v{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Ze(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=he(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Ye(n,t),0),s=12}else r=new w(e.length),s=0;r.set(Ye(n,e),s),t.enqueue(r)}})}}function He(e,t){const n=new w(t.length);for(let r=0;r>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function je(e){const t=2|e.keys[2];return Ge(a.imul(t,1^t)>>>8)}function Ge(e){return 255&e}function Je(e){return 4294967295&e}const $e="deflate-raw";class Qe extends v{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:a,zipCrypto:o,signed:c,level:l}=e,u=this;let f,d,w=tt(super.readable);i&&!o||!c||(f=new re,w=st(w,f)),s&&(w=rt(w,a,{level:l,chunkSize:t},r,n)),i&&(o?w=st(w,new Be(e)):(d=new Ie(e),w=st(w,d))),nt(u,w,(async()=>{let e;i&&!o&&(e=d.signature),i&&!o||!c||(e=new g(f.value.buffer).getUint32(0)),u.signature=e}))}}class et extends v{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:i,signed:a,signature:o,compressed:c,useCompressionStream:l}=e;let u,f,w=tt(super.readable);i&&(s?w=st(w,new Pe(e)):(f=new Le(e),w=st(w,f))),c&&(w=rt(w,l,{chunkSize:t},r,n)),i&&!s||!a||(u=new re,w=st(w,u)),nt(this,w,(async()=>{if((!i||s)&&a){const e=new g(u.value.buffer);if(o!=e.getUint32(0,!1))throw new d(de)}}))}}function tt(e){return st(e,new v({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function nt(e,t,r){t=st(t,new v({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function rt(e,t,n,r,s){try{e=st(e,new(t&&r?r:s)($e,n))}catch(r){if(!t)throw r;e=st(e,new s($e,n))}return e}function st(e,t){return e.pipeThrough(t)}const it="data",at="deflate",ot="inflate";class ct extends v{constructor(e,t){super({});const r=this,{codecType:s}=e;let i;s.startsWith(at)?i=Qe:s.startsWith(ot)&&(i=et);let a=0;const o=new i(e,t),c=super.readable,l=new v({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;n.assign(r,{signature:e,size:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(o).pipeThrough(l)})}}const lt=typeof R!=B;class ut{constructor(e,{readable:t,writable:r},{options:s,config:i,streamOptions:a,useWebWorkers:o,transferStreams:c,scripts:l},u){const{signal:f}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new ft(t,a,i),{signal:f}),writable:r,options:n.assign({},s),scripts:l,transferStreams:c,terminate(){const{worker:t,busy:n}=e;t&&!n&&(t.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,u(e)}}),(o&<?ht:wt)(e,i)}}class ft extends v{constructor(e,{onstart:t,onprogress:n,size:r,onend:s},{chunkSize:i}){let a=0;super({start(){t&&dt(t,r)},async transform(e,t){a+=e.length,n&&await dt(n,a,r),t.enqueue(e)},flush(){e.size=a,s&&dt(s,a)}},{highWaterMark:1,size:()=>i})}}async function dt(e,...t){try{await e(...t)}catch(e){}}function wt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{const i=new ct(e,s);try{await t.pipeThrough(i).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:e,size:s}=i;return{signature:e,size:s}}finally{r()}})(e,t)}}function ht(e,{baseURL:t,chunkSize:r}){return e.interface||n.assign(e,{worker:mt(e.scripts[0],t,e),interface:{run:()=>(async(e,t)=>{let r,s;const i=new y(((e,t)=>{r=e,s=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:s,result:i});const{readable:a,options:o,scripts:c}=e,{writable:l,closed:u}=(e=>{const t=e.getWriter();let n;const r=new y((e=>n=e));return{writable:new x({async write(e){await t.ready,await t.write(e)},close(){t.releaseLock(),n()},abort:e=>t.abort(e)}),closed:r}})(e.writable);yt({type:"start",scripts:c.slice(1),options:o,config:t,readable:a,writable:l},e)||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const f=await i;try{await l.getWriter().close()}catch(e){}return await u,f})(e,{chunkSize:r})}}),e.interface}let pt=!0,gt=!0;function mt(e,t,r){const s={type:"module"};let i,a;typeof e==H&&(e=e());try{i=new f(e,t)}catch(t){i=e}if(pt)try{a=new R(i)}catch(e){pt=!1,a=new R(i,s)}else a=new R(i,s);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:s,messageId:i,result:a,error:o}=e,{reader:c,writer:l,resolveResult:u,rejectResult:f,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:r,name:s}=o,i=new d(e);n.assign(i,{stack:t,code:r,name:s}),p(i)}else{if("pull"==r){const{value:e,done:n}=await c.read();yt({type:it,value:e,done:n,messageId:i},t)}r==it&&(await l.ready,await l.write(new w(s)),yt({type:"ack",messageId:i},t)),"close"==r&&p(null,a)}}catch(o){p(o)}function p(e,t){e?f(e):u(t),l&&l.releaseLock(),h()}})(e,r))),a}function yt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{let{value:n,readable:r,writable:i}=e;const a=[];if(n&&(e.value=n.buffer,a.push(e.value)),s&>?(r&&a.push(r),i&&a.push(i)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch(n){gt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let bt=[];const St=[];let kt=0;async function zt(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:a,useCompressionStream:o,codecType:c,compressed:l,signed:u,encrypted:f}=n,{workerScripts:d,maxWorkers:w,terminateWorkerTimeout:h}=r;t.transferStreams=i||i===P;const p=!(l||u||f||t.transferStreams);let g;t.useWebWorkers=!p&&(a||a===P&&r.useWebWorkers),t.scripts=t.useWebWorkers&&d?d[c]:[],n.useCompressionStream=o||o===P&&r.useCompressionStream;const m=bt.find((e=>!e.busy));if(m)_t(m),g=new ut(m,e,t,b);else if(bt.lengthSt.push({resolve:n,stream:e,workerOptions:t})));return g.run();function b(e){if(St.length){const[{resolve:t,stream:n,workerOptions:r}]=St.splice(0,1);t(new ut(e,n,r,b))}else e.worker?(_t(e),s.isFinite(h)&&h>=0&&(e.terminateTimeout=setTimeout((()=>{bt=bt.filter((t=>t!=e)),e.terminate()}),h))):bt=bt.filter((t=>t!=e))}}function _t(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const vt="HTTP error ",Ct="HTTP Range not supported",xt="Writer iterator completed too soon",At="GET",Dt="bytes",Wt=65536,Rt="writable";class Ft{constructor(){this.size=0}init(){this.initialized=!0}}class Et extends Ft{get readable(){const e=this,{chunkSize:t=Wt}=e,n=new C({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:i,diskNumberStart:o}=n,{chunkOffset:c}=this;r.enqueue(await tn(e,s+c,a.min(t,i-c),o)),c+t>i?r.close():this.chunkOffset+=t}});return n}}class Tt extends Ft{constructor(){super();const e=this,t=new x({write:t=>e.writeUint8Array(t)});n.defineProperty(e,Rt,{get:()=>t})}writeUint8Array(){}}class Ut extends Et{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||rt&&(i=i.slice(e,r)),new w(i)}}class Lt extends Ft{constructor(e){super();const t=new v,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,Rt,{get:()=>t.writable}),this.blob=new u(t.readable,{headers:r}).blob()}getData(){return this.blob}}class It extends Et{constructor(e,t){super(),qt(this,e,t)}async init(){await Ot(this,Zt,Pt),super.init()}readUint8Array(e,t){return Mt(this,e,t,Zt,Pt)}}class Nt extends Et{constructor(e,t){super(),qt(this,e,t)}async init(){await Ot(this,Xt,Bt),super.init()}readUint8Array(e,t){return Mt(this,e,t,Xt,Bt)}}function qt(e,t,r){const{preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a}=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:i,forceRangeRequests:a})}async function Ot(e,t,n){const{url:r,useRangeHeader:i,forceRangeRequests:a}=e;if((e=>{const{baseURL:t}=G(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n})(r)&&(i||a)){const{headers:r}=await t(At,e,Kt(e));if(!a&&r.get("Accept-Ranges")!=Dt)throw new d(Ct);{let i;const a=r.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(i=s(t))}}i===P?await Yt(e,t,n):e.size=i}}else await Yt(e,t,n)}async function Mt(e,t,n,r,s){const{useRangeHeader:i,forceRangeRequests:a,options:o}=e;if(i||a){const s=await r(At,e,Kt(e,t,n));if(206!=s.status)throw new d(Ct);return new w(await s.arrayBuffer())}{const{data:r}=e;return r||await s(e,o),new w(e.data.subarray(t,t+n))}}function Kt(e,t=0,r=1){return n.assign({},Vt(e),{Range:Dt+"="+t+"-"+(t+r-1)})}function Vt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Pt(e){await Ht(e,Zt)}async function Bt(e){await Ht(e,Xt)}async function Ht(e,t){const n=await t(At,e,Vt(e));e.data=new w(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,Vt(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function Zt(e,{options:t,url:r},s){const i=await fetch(r,n.assign({},t,{method:e,headers:s}));if(400>i.status)return i;throw 416==i.status?new d(Ct):new d(vt+(i.statusText||i.status))}function Xt(e,{url:t},r){return new y(((s,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),s({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new d(Ct):new d(vt+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>i(e.detail?e.detail.error:new d("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class jt extends Et{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Nt(e,t):new It(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Gt extends Et{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await y.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:s}=this;let i,o=n;-1==o&&(o=s.length-1);let c=e;for(;c>=s[o].size;)c-=s[o].size,o++;const l=s[o],u=l.size;if(c+t>u){const s=u-c;i=new w(t),i.set(await tn(l,c,s)),i.set(await r.readUint8Array(e+s,t-s,n),s)}else i=await tn(l,c,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),i}}class Jt extends Ft{constructor(e,t=4294967295){super();const r=this;let s,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new x({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function $t(e,t){e.init&&!e.initialized&&await e.init(t)}function Qt(e){return t.isArray(e)&&(e=new Gt(e)),e instanceof C&&(e={readable:e}),e}function en(e){e.writable===P&&typeof e.next==H&&(e=new Jt(e)),e instanceof x&&(e={writable:e});const{writable:t}=e;return t.size===P&&(t.size=0),e instanceof Jt||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function tn(e,t,n,r){return e.readUint8Array(t,n,r)}const nn=Gt,rn=Jt,sn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function an(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const Cn="File format is not recognized",xn="End of central directory not found",An="End of Zip64 central directory not found",Dn="End of Zip64 central directory locator not found",Wn="Central directory header not found",Rn="Local file header not found",Fn="Zip64 extra field not found",En="File contains encrypted entry",Tn="Encryption method not supported",Un="Compression method not supported",Ln="Split zip file",In="utf-8",Nn="cp437",qn=[[fn,F],[dn,F],[wn,F],[hn,E]],On={[E]:{getValue:jn,bytes:4},[F]:{getValue:Gn,bytes:8}};class Mn{constructor(e,t,r){n.assign(this,{reader:e,config:t,options:r})}async getData(e,t,r={}){const s=this,{reader:i,offset:a,diskNumberStart:o,extraFieldAES:c,compressionMethod:l,config:u,bitFlag:f,signature:h,rawLastModDate:p,uncompressedSize:g,compressedSize:m}=s,y=s.localDirectory={},b=Jn(await tn(i,a,30,o));let S=Bn(s,r,"password");if(S=S&&S.length&&S,c&&99!=c.originalCompressionMethod)throw new d(Un);if(0!=l&&8!=l)throw new d(Un);if(jn(b,0)!=T)throw new d(Rn);Kn(y,b,4),y.rawExtraField=y.extraFieldLength?await tn(i,a+30+y.filenameLength,y.extraFieldLength,o):new w,await Vn(s,y,b,4),n.assign(t,{lastAccessDate:y.lastAccessDate,creationDate:y.creationDate});const k=s.encrypted&&y.encrypted,z=k&&!c;if(k){if(!z&&c.strength===P)throw new d(Tn);if(!S)throw new d(En)}const _=a+30+y.filenameLength+y.extraFieldLength,v=m,C=i.readable;n.assign(C,{diskNumberStart:o,offset:_,size:v});const A=Bn(s,r,"signal"),D=Bn(s,r,"checkPasswordOnly");D&&(e=new x),e=en(e),await $t(e,g);const{writable:W}=e,{onstart:R,onprogress:F,onend:E}=r,U={options:{codecType:ot,password:S,zipCrypto:z,encryptionStrength:c&&c.strength,signed:Bn(s,r,"checkSignature"),passwordVerification:z&&(f.dataDescriptor?p>>>8&255:h>>>24&255),signature:h,compressed:0!=l,encrypted:k,useWebWorkers:Bn(s,r,"useWebWorkers"),useCompressionStream:Bn(s,r,"useCompressionStream"),transferStreams:Bn(s,r,"transferStreams"),checkPasswordOnly:D},config:u,streamOptions:{signal:A,size:v,onstart:R,onprogress:F,onend:E}};let L=0;try{({outputSize:L}=await zt({readable:C,writable:W},U))}catch(e){if(!D||e.message!=we)throw e}finally{const e=Bn(s,r,"preventClose");W.size+=L,e||W.locked||await W.getWriter().close()}return D?void 0:e.getData?e.getData():W}}function Kn(e,t,r){const s=e.rawBitFlag=Xn(t,r+2),i=1==(1&s),a=jn(t,r+6);n.assign(e,{encrypted:i,version:Xn(t,r),bitFlag:{level:(6&s)>>1,dataDescriptor:8==(8&s),languageEncodingFlag:(s&O)==O},rawLastModDate:a,lastModDate:Hn(a),filenameLength:Xn(t,r+22),extraFieldLength:Xn(t,r+24)})}async function Vn(e,t,r,s){const{rawExtraField:i}=t,a=t.extraField=new c,l=Jn(new w(i));let u=0;try{for(;u{t.zip64=!0;const n=Jn(e.data),r=qn.filter((([e,n])=>t[e]==n));for(let s=0,i=0;s{const s=Jn(e.data),i=Zn(s,4);n.assign(e,{vendorVersion:Zn(s,0),vendorId:Zn(s,2),strength:i,originalCompressionMethod:r,compressionMethod:Xn(s,5)}),t.compressionMethod=e.compressionMethod})(m,t,f),t.extraFieldAES=m):t.compressionMethod=f;const y=a.get(10);y&&(((e,t)=>{const r=Jn(e.data);let s,i=4;try{for(;i{const n=Jn(e.data),r=Zn(n,0),s=[],i=[];1==(1&r)&&(s.push(pn),i.push(gn)),2==(2&r)&&(s.push(mn),i.push("rawLastAccessDate")),4==(4&r)&&(s.push(yn),i.push("rawCreationDate"));let a=1;s.forEach(((r,s)=>{if(e.data.length>=a+4){const c=jn(n,a);t[r]=e[r]=new o(1e3*c);const l=i[s];e[l]=c}a+=4}))})(b,t),t.extraFieldExtendedTimestamp=b)}async function Pn(e,t,r,s,i){const a=Jn(e.data),o=new ne;o.append(i[r]);const c=Jn(new w(4));c.setUint32(0,o.get(),!0);const l=jn(a,1);n.assign(e,{version:Zn(a,0),[t]:an(e.data.subarray(5)),valid:!i.bitFlag.languageEncodingFlag&&l==jn(c,0)}),e.valid&&(s[t]=e[t],s[t+"UTF8"]=!0)}function Bn(e,t,n){return t[n]===P?e.options[n]:t[n]}function Hn(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Yn(e){return new o(s(e/i(1e4)-i(116444736e5)))}function Zn(e,t){return e.getUint8(t)}function Xn(e,t){return e.getUint16(t,!0)}function jn(e,t){return e.getUint32(t,!0)}function Gn(e,t){return s(e.getBigUint64(t,!0))}function Jn(e){return new g(e.buffer)}const $n="File already exists",Qn="Zip file comment exceeds 64KB",er="File entry comment exceeds 64KB",tr="File entry name exceeds 64KB",nr="Version exceeds 65535",rr="The strength must equal 1, 2, or 3",sr="Extra field type exceeds 65535",ir="Extra field data exceeds 64KB",ar="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",or=new w([7,0,2,0,65,69,3,0,0]);let cr=0;const lr=[];async function ur(e,t){const n=e.getWriter();await n.ready,e.size+=br(t),await n.write(t),n.releaseLock()}function fr(e){if(e)return(i(e.getTime())+i(116444736e5))*i(1e4)}function dr(e,t,n,r){const s=t[n]===P?e.options[n]:t[n];return s===P?r:s}function wr(e,t,n){e.setUint8(t,n)}function hr(e,t,n){e.setUint16(t,n,!0)}function pr(e,t,n){e.setUint32(t,n,!0)}function gr(e,t,n){e.setBigUint64(t,n,!0)}function mr(e,t,n){e.set(t,n)}function yr(e){return new g(e.buffer)}function br(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}let Sr;try{Sr=void 0===k&&"undefined"==typeof location?new(require("url").URL)("file:"+__filename).href:void 0===k?location.href:k.currentScript&&k.currentScript.src||new f("zip.min.js",k.baseURI).href}catch(e){}$({baseURL:Sr}),(e=>{const t=()=>f.createObjectURL(new m(['const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self;class k{constructor(e){return class extends p{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)}})}}}}const v=[];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;v[e]=t}class S{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^v[255&(t^e[n])];this.t=t}get(){return~this.t}}class z extends p{constructor(){let e;const t=new S;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const C={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=C.i(n);return 32===r?e.concat(t):C.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+C.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=C.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=C.i(s);return r.push(C.h(t+i&31,t+i>32?n:r.pop(),1)),r}},x={p:{m(e){const t=C.l(e)/8,n=new i(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},g(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}D(){const e=this;let t=e.C;const n=e.S;t=C.concat(t,[C.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e._/4294967296)),t.push(0|e._);t.length;)e.I(t.splice(0,16));return e.reset(),n}V(e,t,n,r){return 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}P(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.P(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.P(5,o)+n.V(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.P(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},A={getRandomValues(e){const t=new c(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)*(r.random()>.5?1:-1))};for(let s,i=0;inew I.R(x.p.g(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=C;for(t=x.p.g(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).D());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.K[0].update(r[0]),t.K[1].update(r[1]),t.U=new n(t.K[0])}reset(){const e=this;e.U=new e.M(e.K[0]),e.N=!1}update(e){this.N=!0,this.U.update(e)}digest(){const e=this,t=e.U.D(),n=new e.M(e.K[1]).update(t).D();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},D=void 0!==h&&"function"==typeof h.getRandomValues,V="Invalid password",P="Invalid signature",R="zipjs-abort-check-password";function B(e){return D?h.getRandomValues(e):A.getRandomValues(e)}const E=16,M={name:"PBKDF2"},K=t.assign({hash:{name:"HMAC"}},M),U=t.assign({iterations:1e3,hash:{name:"SHA-1"}},M),N=["deriveBits"],O=[8,12,16],T=[16,24,32],W=10,j=[0,0,0,0],H="undefined",L="function",F=typeof h!=H,q=F&&h.subtle,G=F&&typeof q!=H,J=x.p,Q=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||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.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},X=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(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}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=C.l(t);for(let s=0;r>s;s+=4){this.G(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 C.u(t,s)}},Y=I.R;let Z=F&&G&&typeof q.importKey==L,$=F&&G&&typeof q.deriveBits==L;class ee extends p{constructor({password:e,signed:n,encryptionStrength:r,checkPasswordOnly:o}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,signed:n,X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:c,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await re(e,t,n,ie(r,0,O[t])),o=ie(r,O[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(V)})(n,c,r,ie(e,0,O[c]+2)),e=ie(e,O[c]+2),o?t.error(new s(R)):f()):await a;const l=new i(e.length-W-(e.length-W)%E);t.enqueue(ne(n,e,l,0,W,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;await c;const f=ie(o,0,o.length-W),a=ie(o,o.length-W);let l=new i;if(f.length){const e=ce(J,f);r.update(e);const t=n.update(e);l=oe(J,t)}if(t){const e=ie(oe(J,r.digest()),0,W);for(let t=0;W>t;t++)if(e[t]!=a[t])throw new s(P)}e.enqueue(l)}})}}class te extends p{constructor({password:e,encryptionStrength:n}){let r;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,X:n-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=B(new i(O[t]));return se(r,await re(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%E);a.set(f,0),t.enqueue(ne(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:s,ready:o}=this;await o;let c=new i;if(s.length){const e=t.update(ce(J,s));n.update(e),c=oe(J,e)}r.signature=oe(J,n.digest()).slice(0,W),e.enqueue(se(c,r.signature))}}),r=this}}function ne(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=se(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%E)),u=0;l-E>=u;u+=E){const e=ce(J,ie(t,u,u+E));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(oe(J,s),u+r)}return e.pending=ie(t,u),n}async function re(n,r,s,o){n.password=null;const c=(e=>{if(void 0===w){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n{if(!Z)return I.importKey(t);try{return await q.importKey("raw",t,n,!1,s)}catch(e){return Z=!1,I.importKey(t)}})(0,c,K,0,N),a=await(async(e,t,n)=>{if(!$)return I.B(t,e.salt,U.iterations,n);try{return await q.deriveBits(e,t,n)}catch(r){return $=!1,I.B(t,e.salt,U.iterations,n)}})(t.assign({salt:o},U),f,8*(2*T[r]+2)),l=new i(a),u=ce(J,ie(l,0,T[r])),h=ce(J,ie(l,T[r],2*T[r])),d=ie(l,2*T[r]);return t.assign(n,{keys:{key:u,$:h,passwordVerification:d},Y:new X(new Q(u),e.from(j)),Z:new Y(h)}),d}function se(e,t){let n=e;return e.length+t.length&&(n=new i(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function ie(e,t,n){return e.subarray(t,n)}function oe(e,t){return e.m(t)}function ce(e,t){return e.g(t)}class fe extends p{constructor({password:e,passwordVerification:n,checkPasswordOnly:r}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;if(n.password){const t=le(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new s(V);e=e.subarray(12)}r?t.error(new s(R)):t.enqueue(le(n,e))}})}}class ae extends p{constructor({password:e,passwordVerification:n}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=B(new i(12));t[11]=n.passwordVerification,r=new i(e.length+t.length),r.set(ue(n,t),0),s=12}else r=new i(e.length),s=0;r.set(ue(n,e),s),t.enqueue(r)}})}}function le(e,t){const n=new i(t.length);for(let r=0;r>>24]),i=~e.te.get(),e.keys=[n,s,i]}function de(e){const t=2|e.keys[2];return pe(r.imul(t,1^t)>>>8)}function pe(e){return 255&e}function ye(e){return 4294967295&e}const me="deflate-raw";class be extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=ke(super.readable);i&&!c||!f||(w=new z,d=ze(d,w)),s&&(d=Se(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=ze(d,new ae(e)):(h=new te(e),d=ze(d,h))),ve(u,d,(async()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ge extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=ke(super.readable);o&&(i?d=ze(d,new fe(e)):(h=new ee(e),d=ze(d,h))),a&&(d=Se(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new z,d=ze(d,w)),ve(this,d,(async()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(P)}}))}}function ke(e){return ze(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ve(e,n,r){n=ze(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Se(e,t,n,r,s){try{e=ze(e,new(t&&r?r:s)(me,n))}catch(r){if(!t)throw r;e=ze(e,new s(me,n))}return e}function ze(e,t){return e.pipeThrough(t)}const Ce="data";class xe extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=be:s.startsWith("inflate")&&(i=ge);let o=0;const c=new i(e,n),f=super.readable,a=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;t.assign(r,{signature:e,size:o})}});t.defineProperty(r,"readable",{get:()=>f.pipeThrough(c).pipeThrough(a)})}}const _e=new a,Ae=new a;let Ie=0;async function De(e){try{const{options:t,scripts:r,config:s}=e;r&&r.length&&importScripts.apply(void 0,r),self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new k(self.Deflate)),self.Inflate&&(s.DecompressionStream=new k(self.Inflate));const i={highWaterMark:1,size:()=>s.chunkSize},o=e.readable||new y({async pull(e){const t=new u((e=>_e.set(Ie,e)));Ve({type:"pull",messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ae.set(Ie,t),Ve({type:Ce,value:e,messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new xe(t,s);await o.pipeThrough(f).pipeTo(c,{preventClose:!0,preventAbort:!0});try{await c.getWriter().close()}catch(e){}const{signature:a,size:l}=f;Ve({type:"close",result:{signature:a,size:l}})}catch(e){Pe(e)}}function Ve(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Pe(e){const{message:t,stack:n,code:r,name:s}=e;d({error:{message:t,stack:n,code:r,name:s}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&De(e),t==Ce){const e=_e.get(n);_e.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ae.get(n);Ae.delete(n),e()}}catch(e){Pe(e)}}));const Re=-2;function Be(t){return Ee(t.map((([t,n])=>new e(t).fill(n,0,t))))}function Ee(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?Ee(n):n)),[])}const Me=[0,1,2,3].concat(...Be([[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 Ke(){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.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Ue(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}Ke.ge=[0,1,2,3,4,5,6,7].concat(...Be([[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]])),Ke.ke=[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],Ke.ve=[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],Ke.Se=e=>256>e?Me[e]:Me[256+(e>>>7)],Ke.ze=[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],Ke.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Ke.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Ke._e=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Ne=Be([[144,8],[112,9],[24,7],[8,8]]);Ue.Ae=Ee([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,Ne[t]])));const Oe=Be([[30,5]]);function Te(e,t,n,r,s){const i=this;i.Ie=e,i.De=t,i.Ve=n,i.Pe=r,i.Re=s}Ue.Be=Ee([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,Oe[t]]))),Ue.Ee=new Ue(Ue.Ae,Ke.ze,257,286,15),Ue.Me=new Ue(Ue.Be,Ke.Ce,0,30,15),Ue.Ke=new Ue(null,Ke.xe,0,19,7);const We=[new Te(0,0,0,0,0),new Te(4,4,8,4,1),new Te(4,5,16,8,1),new Te(4,6,32,32,1),new Te(4,4,16,16,2),new Te(8,16,32,32,2),new Te(8,16,128,128,2),new Te(8,32,128,256,2),new Te(32,128,258,1024,2),new Te(32,258,258,4096,2)],je=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],He=113,Le=666,Fe=262;function qe(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function Ge(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,_,A,I,D,V,P,R,B,E,M,K;const U=new Ke,N=new Ke,O=new Ke;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)K[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?K[2*n]+=i:0!==n?(n!=r&&K[2*n]++,K[32]++):i>10?K[36]++:K[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ue[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,K)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,K),o--),Y(16,K),X(o-3,2)):o>10?(Y(18,K),X(o-11,7)):(Y(17,K),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(Ke.ge[n]+256+1)]++,M[2*Ke.Se(t)]++),0==(8191&W)&&V>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+Ke.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ue.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;V>0?(U.ne(e),N.ne(e),o=(()=>{let t;for(G(E,U.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===K[2*Ke._e[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Ue.Ae,Ue.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(K[2*Ke._e[r]+1],3);Z(E,e-1),Z(M,t-1)})(U.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-_-C,0===s&&0===C&&0===_)s=f;else if(-1==s)s--;else if(C>=f+f-Fe){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+_,s),_+=e,3>_||(p=255&u[C],p=(p<_&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=A;const o=C>f-Fe?C-(f-Fe):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>A||(r>>=2),c>_&&(c=_);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>_?_:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],K=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Re:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=He,c=0,U.re=E,U.ie=Ue.Ee,N.re=M,N.ie=Ue.Me,O.re=K,O.ie=Ue.Ke,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe,C=0,k=0,_=0,v=A=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=He&&n!=Le?Re:(e.Oe=null,e.Ne=null,e.Ue=null,d=null,h=null,u=null,e.Fe=null,n==He?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Re:(We[V].Re!=We[t].Re&&0!==e.qe&&(r=e.Ye(1)),V!=t&&(V=t,D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe),P=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Re;if(3>i)return 0;for(i>f-Fe&&(i=f-Fe,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Re;if(!r.$e||!r.et&&0!==r.We||n==Le&&4!=i)return r.Le=je[4],Re;if(0===r.tt)return r.Le=je[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(V-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=He,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=je[7],-5;if(n==Le&&0!==t.We)return r.Le=je[7],-5;if(0!==t.We||0!==_||0!=i&&n!=Le){switch(R=-1,We[V].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=_){if(ie(),0===_&&0==e)return 0;if(0===_)break}if(C+=_,_=0,n=k+r,(0===C||C>=n)&&(_=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Fe&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<f-Fe||2!=P&&(v=oe(r)),3>v)n=ee(0,255&u[C]),_--,C++;else if(n=ee(C-x,v-3),_-=v,v>D||3>_)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<A&&f-Fe>=(C-s&65535)&&(2!=P&&(v=oe(s)),5>=v&&(1==P||3==v&&C-x>4096)&&(v=2)),3>A||v>A)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,_--,0===t.tt)return 0}else z=1,C++,_--;else{r=C+_-3,n=ee(C-1-S,A-3),_-=A-1,A-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Ue.Ae),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function Je(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function Qe(e){const t=new Je,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}Je.prototype={He(e,t){const n=this;return n.Fe=new Ge,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Re},Qe(){const e=this;if(!e.Fe)return Re;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Re},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Re},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ue.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const Xe=-2,Ye=-3,Ze=-5,$e=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],et=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],tt=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],nt=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],rt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],st=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],it=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ot(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,_,A,I,D;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return Ye;if(0>(I-=n[g]))return Ye;for(n[g]+=I,i[1]=k=0,C=1,A=2;0!=--g;)i[A]=k+=n[C],A++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>_+S;){if(b++,_+=S,D=m-_,D=D>S?S:D,(y=1<<(k=v-_))>p+1&&(y-=p+1,A=v,D>k))for(;++kn[++A];)y-=n[A];if(D=1<1440)return Ye;s[b]=x=h[0],h[0]+=D,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>_-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-_,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>_;D>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<<_)-1;(g&z)!=i[b];)b--,_-=S,z=(1<<_)-1}return 0!==I&&1!=m?Ze:0}function c(o){let c;for(e||(e=[],t=[],n=new f(16),r=[],s=new f(15),i=new f(16)),t.lengthc;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==Ye?f.Le="oversubscribed dynamic bit lengths tree":a!=Ze&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=Ye),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,nt,rt,a,i,u,e,t),0!=h||0===i[0]?(h==Ye?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=Ye),h):(c(288),h=o(s,n,r,0,st,it,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==Ye?w.Le="oversubscribed distance tree":h==Ze?(w.Le="incomplete distance tree",h=Ye):-4!=h&&(w.Le="empty distance tree with lengths",h=Ye),h):0)}}function ct(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15,k=a[z+2]+(w&$e[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(0!=(64&u))return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye;f+=a[z+2],f+=w&$e[u],z=3*(l+f),u=a[z]}break}if(0!=(64&u))return 0!=(32&u)?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye);if(f+=a[z+2],f+=w&$e[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,_=0,A=0;for(A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,m=p(u,w,r,h,s,d,e,y),A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>>=n[g+1],_-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(0!=(16&k)){a=15&k,i=n[g+2],t=2;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}if(0!=(32&k)){t=7;break}return t=9,y.Le="invalid literal/length code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 2:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}i+=x&$e[b],x>>=b,_-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>=n[g+1],_-=n[g+1],k=n[g],0!=(16&k)){a=15&k,l=n[g+2],t=4;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 4:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}l+=x&$e[b],x>>=b,_-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(_-=8,v++,A--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ot.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=et,r[0]=tt,0);const ft=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function at(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new ct;let h=0,d=new f(4320);const p=new ot;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ot.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[ft[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==Ye&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&$e[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,_=[],A=[],I=[],D=[],_[0]=9,A[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,_,A,I,D,d,e),0!=i)return i==Ye&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(_[0],A[0],d,I[0],d,D[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const lt=13,ut=[0,0,255,255];function wt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):Xe}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),Xe):(e.zt=r,n.gt.kt=new at(n,1<{let n,r;if(!e||!e.gt||!e.et)return Xe;const s=e.gt;for(t=4==t?Ze:0,n=Ze;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=lt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=lt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=lt,e.Le="incorrect header check",s.marker=5;break}if(0==(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=lt,e.Le="need dictionary",s.marker=0,Xe;case 7:if(n=s.kt.ut(e,n),n==Ye){s.mode=lt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case lt:return Ye;default:return Xe}},e.At=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return Xe;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return Xe;const c=e.gt;if(c.mode!=lt&&(c.mode=lt,c.marker=0),0===(n=e.We))return Ze;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==ut[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?Ye:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Dt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():Xe}function ht(){}function dt(e){const t=new ht,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t._t(0),c&&a===Ze){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}ht.prototype={xt(e){const t=this;return t.gt=new wt,e||(e=15),t.gt.xt(t,e)},_t(e){const t=this;return t.gt?t.gt._t(t,e):Xe},Ct(){const e=this;if(!e.gt)return Xe;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):Xe},At(e,t){const n=this;return n.gt?n.gt.At(n,e,t):Xe},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=Qe,self.Inflate=dt};\n'],{type:"text/javascript"}));e({workerScripts:{inflate:[t],deflate:[t]}})})($),e.BlobReader=Ut,e.BlobWriter=Lt,e.Data64URIReader=class extends Et{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,s=new w(t),i=4*a.floor(e/3),o=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);for(let e=c;c+t>e;e++)s[e-c]=o.charCodeAt(e);return s}},e.Data64URIWriter=class extends Tt{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,s=t.pending;const i=t.pending.length;for(t.pending="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)s+=r.fromCharCode(e[n]);for(;n2?t.data+=_(s):t.pending=s}getData(){return this.data+_(this.pending)}},e.ERR_BAD_FORMAT=Cn,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Wn,e.ERR_DUPLICATED_NAME=$n,e.ERR_ENCRYPTED=En,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Dn,e.ERR_EOCDR_NOT_FOUND=xn,e.ERR_EOCDR_ZIP64_NOT_FOUND=An,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Fn,e.ERR_HTTP_RANGE=Ct,e.ERR_INVALID_COMMENT=Qn,e.ERR_INVALID_ENCRYPTION_STRENGTH=rr,e.ERR_INVALID_ENTRY_COMMENT=er,e.ERR_INVALID_ENTRY_NAME=tr,e.ERR_INVALID_EXTRAFIELD_DATA=ir,e.ERR_INVALID_EXTRAFIELD_TYPE=sr,e.ERR_INVALID_PASSWORD=fe,e.ERR_INVALID_SIGNATURE=de,e.ERR_INVALID_VERSION=nr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=xt,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Rn,e.ERR_SPLIT_ZIP_FILE=Ln,e.ERR_UNSUPPORTED_COMPRESSION=Un,e.ERR_UNSUPPORTED_ENCRYPTION=Tn,e.ERR_UNSUPPORTED_FORMAT=ar,e.HttpRangeReader=class extends jt{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=jt,e.Reader=Et,e.SplitDataReader=Gt,e.SplitDataWriter=Jt,e.SplitZipReader=nn,e.SplitZipWriter=rn,e.TextReader=class extends Ut{constructor(e){super(new m([e],{type:"text/plain"}))}},e.TextWriter=class extends Lt{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 y(((s,i)=>{n.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>i(t.error)}),t.readAsText(r,e)}))}}},e.Uint8ArrayReader=class extends Et{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Tt{init(e=0){n.assign(this,{offset:0,array:new w(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new w(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=Tt,e.ZipReader=class{constructor(e,t={}){n.assign(this,{reader:Qt(e),options:t,config:G()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:s}=t;if(await $t(r),r.size!==P&&r.readUint8Array||(r=new Ut(await new u(r.readable).blob()),await $t(r)),22>r.size)throw new d(Cn);r.chunkSize=J(s);const i=await(async(e,t,n)=>{const r=new w(4);return Jn(r).setUint32(0,101010256,!0),await s(22)||await s(a.min(1048582,n));async function s(t){const s=n-t,i=await tn(e,s,t);for(let e=i.length-22;e>=0;e--)if(i[e]==r[0]&&i[e+1]==r[1]&&i[e+2]==r[2]&&i[e+3]==r[3])return{offset:s+e,buffer:i.slice(e,e+22).buffer}}})(r,0,r.size);if(!i)throw jn(Jn(await tn(r,0,4)))==U?new d(Ln):new d(xn);const o=Jn(i);let c=jn(o,12),l=jn(o,16);const f=i.offset,h=Xn(o,20),p=f+22+h;let g=Xn(o,4);const m=r.lastDiskNumber||0;let b=Xn(o,6),S=Xn(o,8),k=0,z=0;if(l==F||c==F||S==E||b==E){const e=Jn(await tn(r,i.offset-20,20));if(jn(e,0)!=N)throw new d(An);l=Gn(e,8);let t=await tn(r,l,56,-1),n=Jn(t);const s=i.offset-20-56;if(jn(n,0)!=I&&l!=s){const e=l;l=s,k=l-e,t=await tn(r,l,56,-1),n=Jn(t)}if(jn(n,0)!=I)throw new d(Dn);g==E&&(g=jn(n,16)),b==E&&(b=jn(n,20)),S==E&&(S=Gn(n,32)),c==F&&(c=Gn(n,40)),l-=c}if(m!=g)throw new d(Ln);if(0>l||l>=r.size)throw new d(Cn);let _=0,v=await tn(r,l,c,b),C=Jn(v);if(c){const e=i.offset-c;if(jn(C,_)!=L&&l!=e){const t=l;l=e,k=l-t,v=await tn(r,l,c,b),C=Jn(v)}}const x=i.offset-l-(r.lastDiskOffset||0);if(c==x||0>x||(c=x,v=await tn(r,l,c,b),C=Jn(v)),0>l||l>=r.size)throw new d(Cn);const A=Bn(t,e,"filenameEncoding"),D=Bn(t,e,"commentEncoding");for(let i=0;S>i;i++){const o=new Mn(r,s,t.options);if(jn(C,_)!=L)throw new d(Wn);Kn(o,C,_+6);const c=!!o.bitFlag.languageEncodingFlag,l=_+46,u=l+o.filenameLength,f=u+o.extraFieldLength,w=Xn(C,_+4),h=0==(0&w),p=v.subarray(l,u),g=Xn(C,_+32),m=f+g,b=v.subarray(f,m),x=c,W=c,R=h&&16==(16&Zn(C,_+38)),F=jn(C,_+42)+k;n.assign(o,{versionMadeBy:w,msDosCompatible:h,compressedSize:0,uncompressedSize:0,commentLength:g,directory:R,offset:F,diskNumberStart:Xn(C,_+34),internalFileAttribute:Xn(C,_+36),externalFileAttribute:jn(C,_+38),rawFilename:p,filenameUTF8:x,commentUTF8:W,rawExtraField:v.subarray(u,f)});const[E,T]=await y.all([an(p,x?In:A||Nn),an(b,W?In:D||Nn)]);n.assign(o,{rawComment:b,filename:E,comment:T,directory:R||E.endsWith(M)}),z=a.max(F,z),await Vn(o,o,C,_+6);const U=new vn(o);U.getData=(e,t)=>o.getData(e,U,t),_=m;const{onprogress:I}=e;if(I)try{await I(i+1,S,new vn(o))}catch(e){}yield U}const W=Bn(t,e,"extractPrependedData"),R=Bn(t,e,"extractAppendedData");return W&&(t.prependedData=z>0?await tn(r,0,z):new w),t.comment=h?await tn(r,f+22,h):new w,R&&(t.appendedData=plr.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new d($n);return c.filenames.add(e),f=(async(e,r,s,c)=>{r=r.trim(),c.directory&&!r.endsWith(M)?r+=M:c.directory=r.endsWith(M);const l=se(r);if(br(l)>E)throw new d(tr);const u=c.comment||"",f=se(u);if(br(f)>E)throw new d(er);const m=dr(e,c,"version",20);if(m>E)throw new d(nr);const b=dr(e,c,"versionMadeBy",20);if(b>E)throw new d(nr);const S=dr(e,c,pn,new o),k=dr(e,c,mn),z=dr(e,c,yn),_=dr(e,c,kn,!0),v=dr(e,c,bn,0),C=dr(e,c,Sn,0),x=dr(e,c,"password"),A=dr(e,c,"encryptionStrength",3),D=dr(e,c,"zipCrypto"),W=dr(e,c,"extendedTimestamp",!0),R=dr(e,c,"keepOrder",!0),L=dr(e,c,"level"),I=dr(e,c,"useWebWorkers"),N=dr(e,c,"bufferedWrite"),B=dr(e,c,"dataDescriptorSignature",!1),H=dr(e,c,"signal"),Y=dr(e,c,"useCompressionStream");let Z=dr(e,c,"dataDescriptor",!0),X=dr(e,c,zn);if(x!==P&&A!==P&&(1>A||A>3))throw new d(rr);let j=new w;const{extraField:G}=c;if(G){let e=0,t=0;G.forEach((t=>e+=4+br(t))),j=new w(e),G.forEach(((e,n)=>{if(n>E)throw new d(sr);if(br(e)>E)throw new d(ir);mr(j,new h([n]),t),mr(j,new h([br(e)]),t+2),mr(j,e,t+4),t+=4+br(e)}))}let $=0,Q=0,ee=0;const te=!0===X;s&&(s=Qt(s),await $t(s),s.size===P?(Z=!0,(X||X===P)&&(X=!0,ee=$=F)):(ee=s.size,$=(e=>e+5*(a.floor(e/16383)+1))(ee)));const{diskOffset:ne,diskNumber:re,maxSize:ie}=e.writer,ae=te||ee>=F,oe=te||$>=F,ce=te||e.offset+e.pendingEntriesSize-ne>=F,le=dr(e,c,"supportZip64SplitFile",!0)&&te||re+a.ceil(e.pendingEntriesSize/ie)>=E;if(ce||ae||oe||le){if(!1===X||!R)throw new d(ar);X=!0}X=X||!1;const ue=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,password:i,level:o,zip64:c,zipCrypto:l,dataDescriptor:u,directory:f,rawExtraField:d,encryptionStrength:h,extendedTimestamp:g}=e,m=0!==o&&!f,y=!(!i||!br(i));let b,S,k,z=e.version;if(y&&!l){b=new w(br(or)+2);const e=yr(b);hr(e,0,39169),mr(b,or,2),wr(e,8,h)}else b=new w;if(g){k=new w(9+(r?4:0)+(s?4:0));const e=yr(k);hr(e,0,q),hr(e,2,br(k)-4),wr(e,4,1+(r?2:0)+(s?4:0)),pr(e,5,a.floor(n.getTime()/1e3)),r&&pr(e,9,a.floor(r.getTime()/1e3)),s&&pr(e,13,a.floor(s.getTime()/1e3));try{S=new w(36);const e=yr(S),t=fr(n);hr(e,0,10),hr(e,2,32),hr(e,8,1),hr(e,10,24),gr(e,12,t),gr(e,20,fr(r)||t),gr(e,28,fr(s)||t)}catch(e){S=new w}}else S=k=new w;let _=O;u&&(_|=8);let v=0;m&&(v=8),c&&(z=z>45?z:45),y&&(_|=1,l||(z=z>51?z:51,v=99,m&&(b[9]=8)));const C=new w(26),x=yr(C);hr(x,0,z),hr(x,2,_),hr(x,4,v);const A=new p(1),D=yr(A);let W;W=V>n?V:n>K?K:n,hr(D,0,(W.getHours()<<6|W.getMinutes())<<5|W.getSeconds()/2),hr(D,2,(W.getFullYear()-1980<<4|W.getMonth()+1)<<5|W.getDate());const R=A[0];pr(x,6,R),hr(x,22,br(t));const F=br(b,k,S,d);hr(x,24,F);const E=new w(30+br(t)+F);return pr(yr(E),0,T),mr(E,C,4),mr(E,t,30),mr(E,b,30+br(t)),mr(E,k,30+br(t,b)),mr(E,S,30+br(t,b,k)),mr(E,d,30+br(t,b,k,S)),{localHeaderArray:E,headerArray:C,headerView:x,lastModDate:n,rawLastModDate:R,encrypted:y,compressed:m,version:z,compressionMethod:v,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:S,rawExtraFieldAES:b}})(c=n.assign({},c,{rawFilename:l,rawComment:f,version:m,versionMadeBy:b,lastModDate:S,lastAccessDate:k,creationDate:z,rawExtraField:j,zip64:X,zip64UncompressedSize:ae,zip64CompressedSize:oe,zip64Offset:ce,zip64DiskNumberStart:le,password:x,level:L,useWebWorkers:I,encryptionStrength:A,extendedTimestamp:W,zipCrypto:D,bufferedWrite:N,keepOrder:R,dataDescriptor:Z,dataDescriptorSignature:B,signal:H,msDosCompatible:_,internalFileAttribute:v,externalFileAttribute:C,useCompressionStream:Y})),fe=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let s,i=new w,a=0;return n&&(i=new w(t?r?24:20:r?16:12),s=yr(i),r&&(a=4,pr(s,0,134695760))),{dataDescriptorArray:i,dataDescriptorView:s,dataDescriptorOffset:a}})(c);let de;Q=br(ue.localHeaderArray,fe.dataDescriptorArray)+$,e.pendingEntriesSize+=Q;try{de=await(async(e,r,s,a,o)=>{const{files:c,writer:l}=e,{keepOrder:u,dataDescriptor:f,signal:h}=o,{headerInfo:p}=a,m=t.from(c.values()).pop();let b,S,k,z,_,v,C={};c.set(r,C);try{let t;u&&(t=m&&m.lock,C.lock=new y((e=>k=e))),o.bufferedWrite||e.writerLocked||e.bufferedWrites&&u||!f?(v=new Lt,v.writable.size=0,b=!0,e.bufferedWrites++,await $t(l)):(v=l,await x()),await $t(v);const{writable:p}=l;let{diskOffset:D}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new w(4);pr(yr(t),0,U),await ur(p,t),e.offset+=4}b||(await t,await A(p));const{diskNumber:W}=l;if(_=!0,C.diskNumberStart=W,C=await(async(e,t,{diskNumberStart:r,lock:s},a,o,c)=>{const{headerInfo:l,dataDescriptorInfo:u}=a,{localHeaderArray:f,headerArray:d,lastModDate:h,rawLastModDate:p,encrypted:g,compressed:m,version:y,compressionMethod:b,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:z}=l,{dataDescriptorArray:_}=u,{rawFilename:v,lastAccessDate:C,creationDate:x,password:A,level:D,zip64:W,zip64UncompressedSize:R,zip64CompressedSize:E,zip64Offset:T,zip64DiskNumberStart:U,zipCrypto:L,dataDescriptor:I,directory:N,versionMadeBy:q,rawComment:O,rawExtraField:M,useWebWorkers:K,onstart:V,onprogress:B,onend:H,signal:Y,encryptionStrength:Z,extendedTimestamp:X,msDosCompatible:j,internalFileAttribute:G,externalFileAttribute:$,useCompressionStream:Q}=c,ee={lock:s,versionMadeBy:q,zip64:W,directory:!!N,filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:O,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:z,rawExtraField:M,extendedTimestamp:X,msDosCompatible:j,internalFileAttribute:G,externalFileAttribute:$,diskNumberStart:r};let te,ne=0,re=0;const{writable:se}=t;if(e){e.chunkSize=J(o),await ur(se,f);const t=e.readable,n=t.size=e.size,r={options:{codecType:at,level:D,password:A,encryptionStrength:Z,zipCrypto:g&&L,passwordVerification:g&&L&&p>>8&255,signed:!0,compressed:m,encrypted:g,useWebWorkers:K,useCompressionStream:Q,transferStreams:!1},config:o,streamOptions:{signal:Y,size:n,onstart:V,onprogress:B,onend:H}},s=await zt({readable:t,writable:se},r);se.size+=s.size,te=s.signature,re=e.size=t.size,ne=s.size}else await ur(se,f);let ie;if(W){let e=4;R&&(e+=8),E&&(e+=8),T&&(e+=8),U&&(e+=4),ie=new w(e)}else ie=new w;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:s,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:c}=e,{headerView:l,encrypted:u}=o,{dataDescriptorView:f,dataDescriptorOffset:d}=c,{zip64:w,zip64UncompressedSize:h,zip64CompressedSize:p,zipCrypto:g,dataDescriptor:m}=t;if(u&&!g||n===P||(pr(l,10,n),m&&pr(f,d,n)),w){const e=yr(r);hr(e,0,1),hr(e,2,r.length-4);let t=4;h&&(pr(l,18,F),gr(e,t,i(a)),t+=8),p&&(pr(l,14,F),gr(e,t,i(s))),m&&(gr(f,d+4,i(s)),gr(f,d+12,i(a)))}else pr(l,14,s),pr(l,18,a),m&&(pr(f,d+4,s),pr(f,d+8,a))})({signature:te,rawExtraFieldZip64:ie,compressedSize:ne,uncompressedSize:re,headerInfo:l,dataDescriptorInfo:u},c),I&&await ur(se,_),n.assign(ee,{uncompressedSize:re,compressedSize:ne,lastModDate:h,rawLastModDate:p,creationDate:x,lastAccessDate:C,encrypted:g,length:br(f,_)+ne,compressionMethod:b,version:y,headerArray:d,signature:te,rawExtraFieldZip64:ie,zip64UncompressedSize:R,zip64CompressedSize:E,zip64Offset:T,zip64DiskNumberStart:U}),ee})(s,v,C,a,e.config,o),_=!1,c.set(r,C),C.filename=r,b){await v.writable.getWriter().close();let e=await v.getData();await t,await x(),z=!0,f||(e=await(async(e,t,n,{zipCrypto:r})=>{let s;s=await t.slice(0,26).arrayBuffer(),26!=s.byteLength&&(s=s.slice(0,26));const i=new g(s);return e.encrypted&&!r||pr(i,14,e.signature),e.zip64?(pr(i,18,F),pr(i,22,F)):(pr(i,18,e.compressedSize),pr(i,22,e.uncompressedSize)),await ur(n,new w(s)),t.slice(s.byteLength)})(C,e,p,o)),await A(p),C.diskNumberStart=l.diskNumber,D=l.diskOffset,await e.stream().pipeTo(p,{preventClose:!0,preventAbort:!0,signal:h}),p.size+=e.size,z=!1}if(C.offset=e.offset-D,C.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:s}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:c,zip64DiskNumberStart:l}=t,u=yr(n);let f=4;a&&(f+=8),o&&(f+=8),c&&(gr(u,f,i(r)),f+=8),l&&pr(u,f,s)})(C,o);else if(C.offset>=F)throw new d(ar);return e.offset+=C.length,C}catch(t){if(b&&z||!b&&_){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}b?e.offset+=v.writable.size:e.offset=v.writable.size}throw c.delete(r),t}finally{b&&e.bufferedWrites--,k&&k(),S&&S()}async function x(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new y((t=>S=()=>{e.writerLocked=!1,t()})),await t}async function A(e){p.localHeaderArray.length>l.availableSize&&(l.availableSize=0,await ur(e,new w))}})(e,r,s,{headerInfo:ue,dataDescriptorInfo:fe},c)}finally{e.pendingEntriesSize-=Q}return n.assign(de,{name:r,comment:u,extraField:G}),new vn(de)})(c,e,r,s),l.add(f),await f}catch(t){throw c.filenames.delete(e),t}finally{l.delete(f);const e=lr.shift();e?e():cr--}}async close(e=new w,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await y.all(t.from(r));return await(async(e,n,r)=>{const{files:s,writer:o}=e,{diskOffset:c,writable:l}=o;let{diskNumber:u}=o,f=0,h=0,p=e.offset-c,g=s.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:r,rawComment:i,rawExtraFieldExtendedTimestamp:a,rawExtraFieldNTFS:o}]of s)h+=46+br(e,i,t,n,a,o,r);const m=new w(h),y=yr(m);await $t(o);let b=0;for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:i,rawExtraFieldZip64:c,rawExtraFieldAES:u,rawExtraFieldNTFS:d,rawExtraField:h,rawComment:p,versionMadeBy:g,headerArray:S,directory:k,zip64:z,zip64UncompressedSize:_,zip64CompressedSize:v,zip64DiskNumberStart:C,zip64Offset:x,msDosCompatible:A,internalFileAttribute:D,externalFileAttribute:W,extendedTimestamp:R,lastModDate:T,diskNumberStart:U,uncompressedSize:I,compressedSize:N}=n;let O;if(R){O=new w(9);const e=yr(O);hr(e,0,q),hr(e,2,br(O)-4),wr(e,4,1),pr(e,5,a.floor(T.getTime()/1e3))}else O=new w;const M=br(c,u,O,d,h);pr(y,f,L),hr(y,f+4,g);const K=yr(S);_||pr(K,18,I),v||pr(K,14,N),mr(m,S,f+6),hr(y,f+30,M),hr(y,f+32,br(p)),hr(y,f+34,z&&C?E:U),hr(y,f+36,D),W?pr(y,f+38,W):k&&A&&wr(y,f+38,16),pr(y,f+42,z&&x?F:t),mr(m,i,f+46),mr(m,c,f+46+br(i)),mr(m,u,f+46+br(i,c)),mr(m,O,f+46+br(i,c,u)),mr(m,d,f+46+br(i,c,u,O)),mr(m,h,f+46+br(i,c,u,O,d)),mr(m,p,f+46+br(i)+M);const V=46+br(i,p)+M;if(f-b>o.availableSize&&(o.availableSize=0,await ur(l,m.slice(b,f)),b=f),f+=V,r.onprogress)try{await r.onprogress(e+1,s.size,new vn(n))}catch(e){}}await ur(l,b?m.slice(b):m);let S=o.diskNumber;const{availableSize:k}=o;22>k&&S++;let z=dr(e,r,"zip64");if(!(F>p&&F>h&&E>g&&E>S)){if(!1===z)throw new d(ar);z=!0}const _=new w(z?98:22),v=yr(_);f=0,z&&(pr(v,0,I),gr(v,4,i(44)),hr(v,12,45),hr(v,14,45),pr(v,16,S),pr(v,20,u),gr(v,24,i(g)),gr(v,32,i(g)),gr(v,40,i(h)),gr(v,48,i(p)),pr(v,56,N),gr(v,64,i(p)+i(h)),pr(v,72,S+1),dr(e,r,"supportZip64SplitFile",!0)&&(S=E,u=E),g=E,p=F,h=F,f+=76),pr(v,f,101010256),hr(v,f+4,S),hr(v,f+6,u),hr(v,f+8,g),hr(v,f+10,g),pr(v,f+12,h),pr(v,f+16,p);const C=br(n);if(C){if(C>E)throw new d(Qn);hr(v,f+20,C)}await ur(l,_),C&&await ur(l,n)})(this,e,n),dr(this,n,"preventClose")||await o.getWriter().close(),s.getData?s.getData():o}},e.configure=$,e.getMimeType=()=>"application/octet-stream",e.initReader=Qt,e.initShimAsyncCodec=(e,t={},n)=>({Deflate:ee(e.Deflate,t.deflate,n),Inflate:ee(e.Inflate,t.inflate,n)}),e.initStream=$t,e.initWriter=en,e.readUint8Array=tn,e.terminateWorkers=()=>{bt.forEach((e=>{_t(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})})); +((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:i,Math:a,Date:o,Map:c,Set:l,Response:u,URL:f,Error:d,Uint8Array:w,Uint16Array:h,Uint32Array:p,DataView:g,Blob:m,Promise:y,TextEncoder:b,TextDecoder:S,document:k,crypto:z,btoa:_,TransformStream:v,ReadableStream:C,WritableStream:x,CompressionStream:A,DecompressionStream:D,navigator:W,Worker:R}="undefined"!=typeof globalThis?globalThis:this||self,F=4294967295,E=65535,T=67324752,U=134695760,L=33639248,I=101075792,N=117853008,q=21589,O=2048,M="/",K=new o(2107,11,31),V=new o(1980,0,1),P=void 0,B="undefined",H="function";class Y{constructor(e){return class extends v{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 Z=2;try{typeof W!=B&&W.hardwareConcurrency&&(Z=W.hardwareConcurrency)}catch(e){}const X={chunkSize:524288,maxWorkers:Z,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:P,CompressionStreamNative:typeof A!=B&&A,DecompressionStreamNative:typeof D!=B&&D},j=n.assign({},X);function G(){return j}function J(e){return a.max(e.chunkSize,64)}function $(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:u,DecompressionStream:f,workerScripts:w}=e;if(Q("baseURL",n),Q("chunkSize",r),Q("maxWorkers",s),Q("terminateWorkerTimeout",i),Q("useCompressionStream",a),Q("useWebWorkers",o),c&&(j.CompressionStream=new Y(c)),l&&(j.DecompressionStream=new Y(l)),Q("CompressionStream",u),Q("DecompressionStream",f),w!==P){const{deflate:e,inflate:n}=w;if((e||n)&&(j.workerScripts||(j.workerScripts={})),e){if(!t.isArray(e))throw new d("workerScripts.deflate must be an array");j.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new d("workerScripts.inflate must be an array");j.workerScripts.inflate=n}}}function Q(e,t){t!==P&&(j[e]=t)}function ee(e,t,r){return class{constructor(s){const i=this;var a,o;a=s,o="level",("function"==typeof n.hasOwn?n.hasOwn(a,o):a.hasOwnProperty(o))&&void 0===s.level&&delete s.level,i.codec=new e(n.assign({},t,s)),r(i.codec,(e=>{if(i.pendingData){const t=i.pendingData;i.pendingData=new w(t.length+e.length);const{pendingData:n}=i;n.set(t,0),n.set(e,t.length)}else i.pendingData=new w(e)}))}append(e){return this.codec.push(e),s(this)}flush(){return this.codec.push(new w,!0),s(this)}};function s(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new w}}const te=[];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;te[e]=t}class ne{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^te[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class re extends v{constructor(){let e;const t=new ne;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new g(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function se(e){if(void 0===b){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=ie.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=>a.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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=ie.getPartial(s);return r.push(ie.partial(t+i&31,t+i>32?n:r.pop(),1)),r}},ae={bytes:{fromBits(e){const t=ie.bitLength(e)/8,n=new w(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;n9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const i=new p(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);s>=e;e+=t.blockSize)t._block(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=ie.concat(t,[ie.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return 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){return 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 i=r[0],o=r[1],c=r[2],l=r[3],u=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,i)+n._f(e,o,c,l)+u+s[e]+n._key[a.floor(e/20)]|0;u=l,l=c,c=n._S(30,o),o=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},ce={getRandomValues(e){const t=new p(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)*(a.random()>.5?1:-1))};for(let r,s=0;snew le.hmacSha1(ae.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new d("invalid params to pbkdf2");const s=1+(r>>5)<<2;let i,a,o,c,l;const u=new ArrayBuffer(s),f=new g(u);let w=0;const h=ie;for(t=ae.bytes.toBits(t),l=1;(s||1)>w;l++){for(i=a=e.encrypt(h.concat(t,[l])),o=1;n>o;o++)for(a=e.encrypt(a),c=0;cw&&os&&(e=(new n).update(e).finalize());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 d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},ue=void 0!==z&&"function"==typeof z.getRandomValues,fe="Invalid password",de="Invalid signature",we="zipjs-abort-check-password";function he(e){return ue?z.getRandomValues(e):ce.getRandomValues(e)}const pe=16,ge={name:"PBKDF2"},me=n.assign({hash:{name:"HMAC"}},ge),ye=n.assign({iterations:1e3,hash:{name:"SHA-1"}},ge),be=["deriveBits"],Se=[8,12,16],ke=[16,24,32],ze=10,_e=[0,0,0,0],ve="undefined",Ce="function",xe=typeof z!=ve,Ae=xe&&z.subtle,De=xe&&typeof Ae!=ve,We=ae.bytes,Re=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 i,a,o,c=1;if(4!==s&&6!==s&&8!==s)throw new d("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],i=s;4*s+28>i;i++){let e=a[i-1];(i%s==0||8===s&&i%s==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%s==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[i]=a[i-s]^e}for(let e=0;i;e++,i--){const t=a[3&e?i:i-4];o[e]=4>=i||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=[],i=[];let a,o,c,l;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=o||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=s[c=s[o=s[u]]];let f=16843009*l^65537*c^257*o^16843008*u,d=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][u]=d=d<<24^d>>>8,t[n][i]=f=f<<24^f>>>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 d("invalid aes block size");const n=this._key[t],r=n.length/4-2,s=[0,0,0,0],i=this._tables[t],a=i[0],o=i[1],c=i[2],l=i[3],u=i[4];let f,w,h,p=e[0]^n[0],g=e[t?3:1]^n[1],m=e[2]^n[2],y=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)f=a[p>>>24]^o[g>>16&255]^c[m>>8&255]^l[255&y]^n[b],w=a[g>>>24]^o[m>>16&255]^c[y>>8&255]^l[255&p]^n[b+1],h=a[m>>>24]^o[y>>16&255]^c[p>>8&255]^l[255&g]^n[b+2],y=a[y>>>24]^o[p>>16&255]^c[g>>8&255]^l[255&m]^n[b+3],b+=4,p=f,g=w,m=h;for(let e=0;4>e;e++)s[t?3&-e:e]=u[p>>>24]<<24^u[g>>16&255]<<16^u[m>>8&255]<<8^u[255&y]^n[b++],f=p,p=g,g=m,m=y,y=f;return s}},Fe=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=ie.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 ie.clamp(t,s)}},Ee=le.hmacSha1;let Te=xe&&De&&typeof Ae.importKey==Ce,Ue=xe&&De&&typeof Ae.deriveBits==Ce;class Le extends v{constructor({password:e,signed:t,encryptionStrength:r,checkPasswordOnly:s}){super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:e,signed:t,strength:r-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const s=await qe(e,t,n,Me(r,0,Se[t])),i=Me(r,Se[t]);if(s[0]!=i[0]||s[1]!=i[1])throw new d(fe)})(n,i,r,Me(e,0,Se[i]+2)),e=Me(e,Se[i]+2),s?t.error(new d(we)):a()):await o;const c=new w(e.length-ze-(e.length-ze)%pe);t.enqueue(Ne(n,e,c,0,ze,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:i}=this;await i;const a=Me(s,0,s.length-ze),o=Me(s,s.length-ze);let c=new w;if(a.length){const e=Ve(We,a);r.update(e);const t=n.update(e);c=Ke(We,t)}if(t){const e=Me(Ke(We,r.digest()),0,ze);for(let t=0;ze>t;t++)if(e[t]!=o[t])throw new d(de)}e.enqueue(c)}})}}class Ie extends v{constructor({password:e,encryptionStrength:t}){let r;super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:e,strength:t-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:i,ready:a}=n;let o=new w;r?(o=await(async(e,t,n)=>{const r=he(new w(Se[t]));return Oe(r,await qe(e,t,n,r))})(n,s,r),i()):await a;const c=new w(o.length+e.length-e.length%pe);c.set(o,0),t.enqueue(Ne(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:s,ready:i}=this;await i;let a=new w;if(s.length){const e=t.update(Ve(We,s));n.update(e),a=Ke(We,e)}r.signature=Ke(We,n.digest()).slice(0,ze),e.enqueue(Oe(a,r.signature))}}),r=this}}function Ne(e,t,n,r,s,i){const{ctr:a,hmac:o,pending:c}=e,l=t.length-s;let u;for(c.length&&(t=Oe(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e})(n,l-l%pe)),u=0;l-pe>=u;u+=pe){const e=Ve(We,Me(t,u,u+pe));i&&o.update(e);const s=a.update(e);i||o.update(s),n.set(Ke(We,s),u+r)}return e.pending=Me(t,u),n}async function qe(e,r,s,i){e.password=null;const a=se(s),o=await(async(e,t,n,r,s)=>{if(!Te)return le.importKey(t);try{return await Ae.importKey("raw",t,n,!1,s)}catch(e){return Te=!1,le.importKey(t)}})(0,a,me,0,be),c=await(async(e,t,n)=>{if(!Ue)return le.pbkdf2(t,e.salt,ye.iterations,n);try{return await Ae.deriveBits(e,t,n)}catch(r){return Ue=!1,le.pbkdf2(t,e.salt,ye.iterations,n)}})(n.assign({salt:i},ye),o,8*(2*ke[r]+2)),l=new w(c),u=Ve(We,Me(l,0,ke[r])),f=Ve(We,Me(l,ke[r],2*ke[r])),d=Me(l,2*ke[r]);return n.assign(e,{keys:{key:u,authentication:f,passwordVerification:d},ctr:new Fe(new Re(u),t.from(_e)),hmac:new Ee(f)}),d}function Oe(e,t){let n=e;return e.length+t.length&&(n=new w(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Me(e,t,n){return e.subarray(t,n)}function Ke(e,t){return e.fromBits(t)}function Ve(e,t){return e.toBits(t)}class Pe extends v{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Ze(this,e)},transform(e,t){const n=this;if(n.password){const t=He(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new d(fe);e=e.subarray(12)}r?t.error(new d(we)):t.enqueue(He(n,e))}})}}class Be extends v{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Ze(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=he(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Ye(n,t),0),s=12}else r=new w(e.length),s=0;r.set(Ye(n,e),s),t.enqueue(r)}})}}function He(e,t){const n=new w(t.length);for(let r=0;r>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function je(e){const t=2|e.keys[2];return Ge(a.imul(t,1^t)>>>8)}function Ge(e){return 255&e}function Je(e){return 4294967295&e}const $e="deflate-raw";class Qe extends v{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:a,zipCrypto:o,signed:c,level:l}=e,u=this;let f,d,w=tt(super.readable);i&&!o||!c||(f=new re,w=st(w,f)),s&&(w=rt(w,a,{level:l,chunkSize:t},r,n)),i&&(o?w=st(w,new Be(e)):(d=new Ie(e),w=st(w,d))),nt(u,w,(async()=>{let e;i&&!o&&(e=d.signature),i&&!o||!c||(e=new g(f.value.buffer).getUint32(0)),u.signature=e}))}}class et extends v{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:i,signed:a,signature:o,compressed:c,useCompressionStream:l}=e;let u,f,w=tt(super.readable);i&&(s?w=st(w,new Pe(e)):(f=new Le(e),w=st(w,f))),c&&(w=rt(w,l,{chunkSize:t},r,n)),i&&!s||!a||(u=new re,w=st(w,u)),nt(this,w,(async()=>{if((!i||s)&&a){const e=new g(u.value.buffer);if(o!=e.getUint32(0,!1))throw new d(de)}}))}}function tt(e){return st(e,new v({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function nt(e,t,r){t=st(t,new v({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function rt(e,t,n,r,s){try{e=st(e,new(t&&r?r:s)($e,n))}catch(r){if(!t)throw r;e=st(e,new s($e,n))}return e}function st(e,t){return e.pipeThrough(t)}const it="data",at="deflate",ot="inflate";class ct extends v{constructor(e,t){super({});const r=this,{codecType:s}=e;let i;s.startsWith(at)?i=Qe:s.startsWith(ot)&&(i=et);let a=0;const o=new i(e,t),c=super.readable,l=new v({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;n.assign(r,{signature:e,size:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(o).pipeThrough(l)})}}const lt=typeof R!=B;class ut{constructor(e,{readable:t,writable:r},{options:s,config:i,streamOptions:a,useWebWorkers:o,transferStreams:c,scripts:l},u){const{signal:f}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new ft(t,a,i),{signal:f}),writable:r,options:n.assign({},s),scripts:l,transferStreams:c,terminate(){const{worker:t,busy:n}=e;t&&!n&&(t.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,u(e)}}),(o&<?ht:wt)(e,i)}}class ft extends v{constructor(e,{onstart:t,onprogress:n,size:r,onend:s},{chunkSize:i}){let a=0;super({start(){t&&dt(t,r)},async transform(e,t){a+=e.length,n&&await dt(n,a,r),t.enqueue(e)},flush(){e.size=a,s&&dt(s,a)}},{highWaterMark:1,size:()=>i})}}async function dt(e,...t){try{await e(...t)}catch(e){}}function wt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{const i=new ct(e,s);try{await t.pipeThrough(i).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:e,size:s}=i;return{signature:e,size:s}}finally{r()}})(e,t)}}function ht(e,{baseURL:t,chunkSize:r}){return e.interface||n.assign(e,{worker:mt(e.scripts[0],t,e),interface:{run:()=>(async(e,t)=>{let r,s;const i=new y(((e,t)=>{r=e,s=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:s,result:i});const{readable:a,options:o,scripts:c}=e,{writable:l,closed:u}=(e=>{const t=e.getWriter();let n;const r=new y((e=>n=e));return{writable:new x({async write(e){await t.ready,await t.write(e)},close(){t.releaseLock(),n()},abort:e=>t.abort(e)}),closed:r}})(e.writable);yt({type:"start",scripts:c.slice(1),options:o,config:t,readable:a,writable:l},e)||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const f=await i;try{await l.getWriter().close()}catch(e){}return await u,f})(e,{chunkSize:r})}}),e.interface}let pt=!0,gt=!0;function mt(e,t,r){const s={type:"module"};let i,a;typeof e==H&&(e=e());try{i=new f(e,t)}catch(t){i=e}if(pt)try{a=new R(i)}catch(e){pt=!1,a=new R(i,s)}else a=new R(i,s);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:s,messageId:i,result:a,error:o}=e,{reader:c,writer:l,resolveResult:u,rejectResult:f,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:r,name:s}=o,i=new d(e);n.assign(i,{stack:t,code:r,name:s}),p(i)}else{if("pull"==r){const{value:e,done:n}=await c.read();yt({type:it,value:e,done:n,messageId:i},t)}r==it&&(await l.ready,await l.write(new w(s)),yt({type:"ack",messageId:i},t)),"close"==r&&p(null,a)}}catch(o){p(o)}function p(e,t){e?f(e):u(t),l&&l.releaseLock(),h()}})(e,r))),a}function yt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{let{value:n,readable:r,writable:i}=e;const a=[];if(n&&(e.value=n.buffer,a.push(e.value)),s&>?(r&&a.push(r),i&&a.push(i)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch(n){gt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let bt=[];const St=[];let kt=0;async function zt(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:a,useCompressionStream:o,codecType:c,compressed:l,signed:u,encrypted:f}=n,{workerScripts:d,maxWorkers:w,terminateWorkerTimeout:h}=r;t.transferStreams=i||i===P;const p=!(l||u||f||t.transferStreams);let g;t.useWebWorkers=!p&&(a||a===P&&r.useWebWorkers),t.scripts=t.useWebWorkers&&d?d[c]:[],n.useCompressionStream=o||o===P&&r.useCompressionStream;const m=bt.find((e=>!e.busy));if(m)_t(m),g=new ut(m,e,t,b);else if(bt.lengthSt.push({resolve:n,stream:e,workerOptions:t})));return g.run();function b(e){if(St.length){const[{resolve:t,stream:n,workerOptions:r}]=St.splice(0,1);t(new ut(e,n,r,b))}else e.worker?(_t(e),s.isFinite(h)&&h>=0&&(e.terminateTimeout=setTimeout((()=>{bt=bt.filter((t=>t!=e)),e.terminate()}),h))):bt=bt.filter((t=>t!=e))}}function _t(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const vt="HTTP error ",Ct="HTTP Range not supported",xt="Writer iterator completed too soon",At="GET",Dt="bytes",Wt=65536,Rt="writable";class Ft{constructor(){this.size=0}init(){this.initialized=!0}}class Et extends Ft{get readable(){const e=this,{chunkSize:t=Wt}=e,n=new C({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:i,diskNumberStart:o}=n,{chunkOffset:c}=this;r.enqueue(await tn(e,s+c,a.min(t,i-c),o)),c+t>i?r.close():this.chunkOffset+=t}});return n}}class Tt extends Ft{constructor(){super();const e=this,t=new x({write:t=>e.writeUint8Array(t)});n.defineProperty(e,Rt,{get:()=>t})}writeUint8Array(){}}class Ut extends Et{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||rt&&(i=i.slice(e,r)),new w(i)}}class Lt extends Ft{constructor(e){super();const t=new v,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,Rt,{get:()=>t.writable}),this.blob=new u(t.readable,{headers:r}).blob()}getData(){return this.blob}}class It extends Et{constructor(e,t){super(),qt(this,e,t)}async init(){await Ot(this,Zt,Pt),super.init()}readUint8Array(e,t){return Mt(this,e,t,Zt,Pt)}}class Nt extends Et{constructor(e,t){super(),qt(this,e,t)}async init(){await Ot(this,Xt,Bt),super.init()}readUint8Array(e,t){return Mt(this,e,t,Xt,Bt)}}function qt(e,t,r){const{preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a}=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:i,forceRangeRequests:a})}async function Ot(e,t,n){const{url:r,useRangeHeader:i,forceRangeRequests:a}=e;if((e=>{const{baseURL:t}=G(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n})(r)&&(i||a)){const{headers:r}=await t(At,e,Kt(e));if(!a&&r.get("Accept-Ranges")!=Dt)throw new d(Ct);{let i;const a=r.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(i=s(t))}}i===P?await Yt(e,t,n):e.size=i}}else await Yt(e,t,n)}async function Mt(e,t,n,r,s){const{useRangeHeader:i,forceRangeRequests:a,options:o}=e;if(i||a){const s=await r(At,e,Kt(e,t,n));if(206!=s.status)throw new d(Ct);return new w(await s.arrayBuffer())}{const{data:r}=e;return r||await s(e,o),new w(e.data.subarray(t,t+n))}}function Kt(e,t=0,r=1){return n.assign({},Vt(e),{Range:Dt+"="+t+"-"+(t+r-1)})}function Vt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Pt(e){await Ht(e,Zt)}async function Bt(e){await Ht(e,Xt)}async function Ht(e,t){const n=await t(At,e,Vt(e));e.data=new w(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,Vt(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function Zt(e,{options:t,url:r},s){const i=await fetch(r,n.assign({},t,{method:e,headers:s}));if(400>i.status)return i;throw 416==i.status?new d(Ct):new d(vt+(i.statusText||i.status))}function Xt(e,{url:t},r){return new y(((s,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),s({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new d(Ct):new d(vt+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>i(e.detail?e.detail.error:new d("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class jt extends Et{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Nt(e,t):new It(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Gt extends Et{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await y.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:s}=this;let i,o=n;-1==o&&(o=s.length-1);let c=e;for(;c>=s[o].size;)c-=s[o].size,o++;const l=s[o],u=l.size;if(c+t>u){const s=u-c;i=new w(t),i.set(await tn(l,c,s)),i.set(await r.readUint8Array(e+s,t-s,n),s)}else i=await tn(l,c,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),i}}class Jt extends Ft{constructor(e,t=4294967295){super();const r=this;let s,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new x({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function $t(e,t){e.init&&!e.initialized&&await e.init(t)}function Qt(e){return t.isArray(e)&&(e=new Gt(e)),e instanceof C&&(e={readable:e}),e}function en(e){e.writable===P&&typeof e.next==H&&(e=new Jt(e)),e instanceof x&&(e={writable:e});const{writable:t}=e;return t.size===P&&(t.size=0),e instanceof Jt||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function tn(e,t,n,r){return e.readUint8Array(t,n,r)}const nn=Gt,rn=Jt,sn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function an(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const Cn="File format is not recognized",xn="End of central directory not found",An="End of Zip64 central directory not found",Dn="End of Zip64 central directory locator not found",Wn="Central directory header not found",Rn="Local file header not found",Fn="Zip64 extra field not found",En="File contains encrypted entry",Tn="Encryption method not supported",Un="Compression method not supported",Ln="Split zip file",In="utf-8",Nn="cp437",qn=[[fn,F],[dn,F],[wn,F],[hn,E]],On={[E]:{getValue:jn,bytes:4},[F]:{getValue:Gn,bytes:8}};class Mn{constructor(e,t,r){n.assign(this,{reader:e,config:t,options:r})}async getData(e,t,r={}){const s=this,{reader:i,offset:a,diskNumberStart:o,extraFieldAES:c,compressionMethod:l,config:u,bitFlag:f,signature:h,rawLastModDate:p,uncompressedSize:g,compressedSize:m}=s,y=s.localDirectory={},b=Jn(await tn(i,a,30,o));let S=Bn(s,r,"password");if(S=S&&S.length&&S,c&&99!=c.originalCompressionMethod)throw new d(Un);if(0!=l&&8!=l)throw new d(Un);if(jn(b,0)!=T)throw new d(Rn);Kn(y,b,4),y.rawExtraField=y.extraFieldLength?await tn(i,a+30+y.filenameLength,y.extraFieldLength,o):new w,await Vn(s,y,b,4),n.assign(t,{lastAccessDate:y.lastAccessDate,creationDate:y.creationDate});const k=s.encrypted&&y.encrypted,z=k&&!c;if(k){if(!z&&c.strength===P)throw new d(Tn);if(!S)throw new d(En)}const _=a+30+y.filenameLength+y.extraFieldLength,v=m,C=i.readable;n.assign(C,{diskNumberStart:o,offset:_,size:v});const A=Bn(s,r,"signal"),D=Bn(s,r,"checkPasswordOnly");D&&(e=new x),e=en(e),await $t(e,g);const{writable:W}=e,{onstart:R,onprogress:F,onend:E}=r,U={options:{codecType:ot,password:S,zipCrypto:z,encryptionStrength:c&&c.strength,signed:Bn(s,r,"checkSignature"),passwordVerification:z&&(f.dataDescriptor?p>>>8&255:h>>>24&255),signature:h,compressed:0!=l,encrypted:k,useWebWorkers:Bn(s,r,"useWebWorkers"),useCompressionStream:Bn(s,r,"useCompressionStream"),transferStreams:Bn(s,r,"transferStreams"),checkPasswordOnly:D},config:u,streamOptions:{signal:A,size:v,onstart:R,onprogress:F,onend:E}};let L=0;try{({outputSize:L}=await zt({readable:C,writable:W},U))}catch(e){if(!D||e.message!=we)throw e}finally{const e=Bn(s,r,"preventClose");W.size+=L,e||W.locked||await W.getWriter().close()}return D?void 0:e.getData?e.getData():W}}function Kn(e,t,r){const s=e.rawBitFlag=Xn(t,r+2),i=1==(1&s),a=jn(t,r+6);n.assign(e,{encrypted:i,version:Xn(t,r),bitFlag:{level:(6&s)>>1,dataDescriptor:8==(8&s),languageEncodingFlag:(s&O)==O},rawLastModDate:a,lastModDate:Hn(a),filenameLength:Xn(t,r+22),extraFieldLength:Xn(t,r+24)})}async function Vn(e,t,r,s){const{rawExtraField:i}=t,a=t.extraField=new c,l=Jn(new w(i));let u=0;try{for(;u{t.zip64=!0;const n=Jn(e.data),r=qn.filter((([e,n])=>t[e]==n));for(let s=0,i=0;s{const s=Jn(e.data),i=Zn(s,4);n.assign(e,{vendorVersion:Zn(s,0),vendorId:Zn(s,2),strength:i,originalCompressionMethod:r,compressionMethod:Xn(s,5)}),t.compressionMethod=e.compressionMethod})(m,t,f),t.extraFieldAES=m):t.compressionMethod=f;const y=a.get(10);y&&(((e,t)=>{const r=Jn(e.data);let s,i=4;try{for(;i{const n=Jn(e.data),r=Zn(n,0),s=[],i=[];1==(1&r)&&(s.push(pn),i.push(gn)),2==(2&r)&&(s.push(mn),i.push("rawLastAccessDate")),4==(4&r)&&(s.push(yn),i.push("rawCreationDate"));let a=1;s.forEach(((r,s)=>{if(e.data.length>=a+4){const c=jn(n,a);t[r]=e[r]=new o(1e3*c);const l=i[s];e[l]=c}a+=4}))})(b,t),t.extraFieldExtendedTimestamp=b)}async function Pn(e,t,r,s,i){const a=Jn(e.data),o=new ne;o.append(i[r]);const c=Jn(new w(4));c.setUint32(0,o.get(),!0);const l=jn(a,1);n.assign(e,{version:Zn(a,0),[t]:an(e.data.subarray(5)),valid:!i.bitFlag.languageEncodingFlag&&l==jn(c,0)}),e.valid&&(s[t]=e[t],s[t+"UTF8"]=!0)}function Bn(e,t,n){return t[n]===P?e.options[n]:t[n]}function Hn(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Yn(e){return new o(s(e/i(1e4)-i(116444736e5)))}function Zn(e,t){return e.getUint8(t)}function Xn(e,t){return e.getUint16(t,!0)}function jn(e,t){return e.getUint32(t,!0)}function Gn(e,t){return s(e.getBigUint64(t,!0))}function Jn(e){return new g(e.buffer)}const $n="File already exists",Qn="Zip file comment exceeds 64KB",er="File entry comment exceeds 64KB",tr="File entry name exceeds 64KB",nr="Version exceeds 65535",rr="The strength must equal 1, 2, or 3",sr="Extra field type exceeds 65535",ir="Extra field data exceeds 64KB",ar="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",or=new w([7,0,2,0,65,69,3,0,0]);let cr=0;const lr=[];async function ur(e,t){const n=e.getWriter();await n.ready,e.size+=br(t),await n.write(t),n.releaseLock()}function fr(e){if(e)return(i(e.getTime())+i(116444736e5))*i(1e4)}function dr(e,t,n,r){const s=t[n]===P?e.options[n]:t[n];return s===P?r:s}function wr(e,t,n){e.setUint8(t,n)}function hr(e,t,n){e.setUint16(t,n,!0)}function pr(e,t,n){e.setUint32(t,n,!0)}function gr(e,t,n){e.setBigUint64(t,n,!0)}function mr(e,t,n){e.set(t,n)}function yr(e){return new g(e.buffer)}function br(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}let Sr;try{Sr=void 0===k&&"undefined"==typeof location?new(require("url").URL)("file:"+__filename).href:void 0===k?location.href:k.currentScript&&k.currentScript.src||new f("zip.min.js",k.baseURI).href}catch(e){}$({baseURL:Sr}),(e=>{const t=()=>f.createObjectURL(new m(['const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self;class k{constructor(e){return class extends p{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)}})}}}}const v=[];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;v[e]=t}class S{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^v[255&(t^e[n])];this.t=t}get(){return~this.t}}class z extends p{constructor(){let e;const t=new S;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const C={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=C.i(n);return 32===r?e.concat(t):C.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+C.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=C.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(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>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=C.i(s);return r.push(C.h(t+i&31,t+i>32?n:r.pop(),1)),r}},x={p:{m(e){const t=C.l(e)/8,n=new i(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},g(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}D(){const e=this;let t=e.C;const n=e.S;t=C.concat(t,[C.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e._/4294967296)),t.push(0|e._);t.length;)e.I(t.splice(0,16));return e.reset(),n}V(e,t,n,r){return 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}P(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.P(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.P(5,o)+n.V(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.P(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},A={getRandomValues(e){const t=new c(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)*(r.random()>.5?1:-1))};for(let s,i=0;inew I.R(x.p.g(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=C;for(t=x.p.g(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).D());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.K[0].update(r[0]),t.K[1].update(r[1]),t.U=new n(t.K[0])}reset(){const e=this;e.U=new e.M(e.K[0]),e.N=!1}update(e){this.N=!0,this.U.update(e)}digest(){const e=this,t=e.U.D(),n=new e.M(e.K[1]).update(t).D();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},D=void 0!==h&&"function"==typeof h.getRandomValues,V="Invalid password",P="Invalid signature",R="zipjs-abort-check-password";function B(e){return D?h.getRandomValues(e):A.getRandomValues(e)}const E=16,M={name:"PBKDF2"},K=t.assign({hash:{name:"HMAC"}},M),U=t.assign({iterations:1e3,hash:{name:"SHA-1"}},M),N=["deriveBits"],O=[8,12,16],T=[16,24,32],W=10,j=[0,0,0,0],H="undefined",L="function",F=typeof h!=H,q=F&&h.subtle,G=F&&typeof q!=H,J=x.p,Q=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||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.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},X=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(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}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=C.l(t);for(let s=0;r>s;s+=4){this.G(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 C.u(t,s)}},Y=I.R;let Z=F&&G&&typeof q.importKey==L,$=F&&G&&typeof q.deriveBits==L;class ee extends p{constructor({password:e,signed:n,encryptionStrength:r,checkPasswordOnly:o}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,signed:n,X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:c,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await re(e,t,n,ie(r,0,O[t])),o=ie(r,O[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(V)})(n,c,r,ie(e,0,O[c]+2)),e=ie(e,O[c]+2),o?t.error(new s(R)):f()):await a;const l=new i(e.length-W-(e.length-W)%E);t.enqueue(ne(n,e,l,0,W,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;await c;const f=ie(o,0,o.length-W),a=ie(o,o.length-W);let l=new i;if(f.length){const e=ce(J,f);r.update(e);const t=n.update(e);l=oe(J,t)}if(t){const e=ie(oe(J,r.digest()),0,W);for(let t=0;W>t;t++)if(e[t]!=a[t])throw new s(P)}e.enqueue(l)}})}}class te extends p{constructor({password:e,encryptionStrength:n}){let r;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,X:n-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=B(new i(O[t]));return se(r,await re(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%E);a.set(f,0),t.enqueue(ne(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:s,ready:o}=this;await o;let c=new i;if(s.length){const e=t.update(ce(J,s));n.update(e),c=oe(J,e)}r.signature=oe(J,n.digest()).slice(0,W),e.enqueue(se(c,r.signature))}}),r=this}}function ne(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=se(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%E)),u=0;l-E>=u;u+=E){const e=ce(J,ie(t,u,u+E));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(oe(J,s),u+r)}return e.pending=ie(t,u),n}async function re(n,r,s,o){n.password=null;const c=(e=>{if(void 0===w){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n{if(!Z)return I.importKey(t);try{return await q.importKey("raw",t,n,!1,s)}catch(e){return Z=!1,I.importKey(t)}})(0,c,K,0,N),a=await(async(e,t,n)=>{if(!$)return I.B(t,e.salt,U.iterations,n);try{return await q.deriveBits(e,t,n)}catch(r){return $=!1,I.B(t,e.salt,U.iterations,n)}})(t.assign({salt:o},U),f,8*(2*T[r]+2)),l=new i(a),u=ce(J,ie(l,0,T[r])),h=ce(J,ie(l,T[r],2*T[r])),d=ie(l,2*T[r]);return t.assign(n,{keys:{key:u,$:h,passwordVerification:d},Y:new X(new Q(u),e.from(j)),Z:new Y(h)}),d}function se(e,t){let n=e;return e.length+t.length&&(n=new i(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function ie(e,t,n){return e.subarray(t,n)}function oe(e,t){return e.m(t)}function ce(e,t){return e.g(t)}class fe extends p{constructor({password:e,passwordVerification:n,checkPasswordOnly:r}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;if(n.password){const t=le(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new s(V);e=e.subarray(12)}r?t.error(new s(R)):t.enqueue(le(n,e))}})}}class ae extends p{constructor({password:e,passwordVerification:n}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=B(new i(12));t[11]=n.passwordVerification,r=new i(e.length+t.length),r.set(ue(n,t),0),s=12}else r=new i(e.length),s=0;r.set(ue(n,e),s),t.enqueue(r)}})}}function le(e,t){const n=new i(t.length);for(let r=0;r>>24]),i=~e.te.get(),e.keys=[n,s,i]}function de(e){const t=2|e.keys[2];return pe(r.imul(t,1^t)>>>8)}function pe(e){return 255&e}function ye(e){return 4294967295&e}const me="deflate-raw";class be extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=ke(super.readable);i&&!c||!f||(w=new z,d=ze(d,w)),s&&(d=Se(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=ze(d,new ae(e)):(h=new te(e),d=ze(d,h))),ve(u,d,(async()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ge extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=ke(super.readable);o&&(i?d=ze(d,new fe(e)):(h=new ee(e),d=ze(d,h))),a&&(d=Se(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new z,d=ze(d,w)),ve(this,d,(async()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(P)}}))}}function ke(e){return ze(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ve(e,n,r){n=ze(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Se(e,t,n,r,s){try{e=ze(e,new(t&&r?r:s)(me,n))}catch(r){if(!t)throw r;e=ze(e,new s(me,n))}return e}function ze(e,t){return e.pipeThrough(t)}const Ce="data";class xe extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=be:s.startsWith("inflate")&&(i=ge);let o=0;const c=new i(e,n),f=super.readable,a=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;t.assign(r,{signature:e,size:o})}});t.defineProperty(r,"readable",{get:()=>f.pipeThrough(c).pipeThrough(a)})}}const _e=new a,Ae=new a;let Ie=0;async function De(e){try{const{options:t,scripts:r,config:s}=e;r&&r.length&&importScripts.apply(void 0,r),self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new k(self.Deflate)),self.Inflate&&(s.DecompressionStream=new k(self.Inflate));const i={highWaterMark:1,size:()=>s.chunkSize},o=e.readable||new y({async pull(e){const t=new u((e=>_e.set(Ie,e)));Ve({type:"pull",messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ae.set(Ie,t),Ve({type:Ce,value:e,messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new xe(t,s);await o.pipeThrough(f).pipeTo(c,{preventClose:!0,preventAbort:!0});try{await c.getWriter().close()}catch(e){}const{signature:a,size:l}=f;Ve({type:"close",result:{signature:a,size:l}})}catch(e){Pe(e)}}function Ve(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Pe(e){const{message:t,stack:n,code:r,name:s}=e;d({error:{message:t,stack:n,code:r,name:s}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&De(e),t==Ce){const e=_e.get(n);_e.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ae.get(n);Ae.delete(n),e()}}catch(e){Pe(e)}}));const Re=-2;function Be(t){return Ee(t.map((([t,n])=>new e(t).fill(n,0,t))))}function Ee(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?Ee(n):n)),[])}const Me=[0,1,2,3].concat(...Be([[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 Ke(){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.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Ue(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}Ke.ge=[0,1,2,3,4,5,6,7].concat(...Be([[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]])),Ke.ke=[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],Ke.ve=[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],Ke.Se=e=>256>e?Me[e]:Me[256+(e>>>7)],Ke.ze=[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],Ke.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Ke.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Ke._e=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Ne=Be([[144,8],[112,9],[24,7],[8,8]]);Ue.Ae=Ee([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,Ne[t]])));const Oe=Be([[30,5]]);function Te(e,t,n,r,s){const i=this;i.Ie=e,i.De=t,i.Ve=n,i.Pe=r,i.Re=s}Ue.Be=Ee([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,Oe[t]]))),Ue.Ee=new Ue(Ue.Ae,Ke.ze,257,286,15),Ue.Me=new Ue(Ue.Be,Ke.Ce,0,30,15),Ue.Ke=new Ue(null,Ke.xe,0,19,7);const We=[new Te(0,0,0,0,0),new Te(4,4,8,4,1),new Te(4,5,16,8,1),new Te(4,6,32,32,1),new Te(4,4,16,16,2),new Te(8,16,32,32,2),new Te(8,16,128,128,2),new Te(8,32,128,256,2),new Te(32,128,258,1024,2),new Te(32,258,258,4096,2)],je=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],He=113,Le=666,Fe=262;function qe(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function Ge(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,_,A,I,D,V,P,R,B,E,M,K;const U=new Ke,N=new Ke,O=new Ke;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)K[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?K[2*n]+=i:0!==n?(n!=r&&K[2*n]++,K[32]++):i>10?K[36]++:K[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ue[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,K)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,K),o--),Y(16,K),X(o-3,2)):o>10?(Y(18,K),X(o-11,7)):(Y(17,K),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(Ke.ge[n]+256+1)]++,M[2*Ke.Se(t)]++),0==(8191&W)&&V>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+Ke.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ue.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;V>0?(U.ne(e),N.ne(e),o=(()=>{let t;for(G(E,U.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===K[2*Ke._e[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Ue.Ae,Ue.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(K[2*Ke._e[r]+1],3);Z(E,e-1),Z(M,t-1)})(U.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-_-C,0===s&&0===C&&0===_)s=f;else if(-1==s)s--;else if(C>=f+f-Fe){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+_,s),_+=e,3>_||(p=255&u[C],p=(p<_&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=A;const o=C>f-Fe?C-(f-Fe):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>A||(r>>=2),c>_&&(c=_);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>_?_:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],K=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Re:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=He,c=0,U.re=E,U.ie=Ue.Ee,N.re=M,N.ie=Ue.Me,O.re=K,O.ie=Ue.Ke,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe,C=0,k=0,_=0,v=A=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=He&&n!=Le?Re:(e.Oe=null,e.Ne=null,e.Ue=null,d=null,h=null,u=null,e.Fe=null,n==He?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Re:(We[V].Re!=We[t].Re&&0!==e.qe&&(r=e.Ye(1)),V!=t&&(V=t,D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe),P=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Re;if(3>i)return 0;for(i>f-Fe&&(i=f-Fe,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Re;if(!r.$e||!r.et&&0!==r.We||n==Le&&4!=i)return r.Le=je[4],Re;if(0===r.tt)return r.Le=je[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(V-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=He,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=je[7],-5;if(n==Le&&0!==t.We)return r.Le=je[7],-5;if(0!==t.We||0!==_||0!=i&&n!=Le){switch(R=-1,We[V].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=_){if(ie(),0===_&&0==e)return 0;if(0===_)break}if(C+=_,_=0,n=k+r,(0===C||C>=n)&&(_=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Fe&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<f-Fe||2!=P&&(v=oe(r)),3>v)n=ee(0,255&u[C]),_--,C++;else if(n=ee(C-x,v-3),_-=v,v>D||3>_)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<A&&f-Fe>=(C-s&65535)&&(2!=P&&(v=oe(s)),5>=v&&(1==P||3==v&&C-x>4096)&&(v=2)),3>A||v>A)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,_--,0===t.tt)return 0}else z=1,C++,_--;else{r=C+_-3,n=ee(C-1-S,A-3),_-=A-1,A-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Ue.Ae),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function Je(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function Qe(e){const t=new Je,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}Je.prototype={He(e,t){const n=this;return n.Fe=new Ge,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Re},Qe(){const e=this;if(!e.Fe)return Re;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Re},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Re},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ue.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const Xe=-2,Ye=-3,Ze=-5,$e=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],et=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],tt=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],nt=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],rt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],st=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],it=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ot(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,_,A,I,D;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return Ye;if(0>(I-=n[g]))return Ye;for(n[g]+=I,i[1]=k=0,C=1,A=2;0!=--g;)i[A]=k+=n[C],A++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>_+S;){if(b++,_+=S,D=m-_,D=D>S?S:D,(y=1<<(k=v-_))>p+1&&(y-=p+1,A=v,D>k))for(;++kn[++A];)y-=n[A];if(D=1<1440)return Ye;s[b]=x=h[0],h[0]+=D,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>_-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-_,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>_;D>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<<_)-1;(g&z)!=i[b];)b--,_-=S,z=(1<<_)-1}return 0!==I&&1!=m?Ze:0}function c(o){let c;for(e||(e=[],t=[],n=new f(16),r=[],s=new f(15),i=new f(16)),t.lengthc;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==Ye?f.Le="oversubscribed dynamic bit lengths tree":a!=Ze&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=Ye),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,nt,rt,a,i,u,e,t),0!=h||0===i[0]?(h==Ye?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=Ye),h):(c(288),h=o(s,n,r,0,st,it,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==Ye?w.Le="oversubscribed distance tree":h==Ze?(w.Le="incomplete distance tree",h=Ye):-4!=h&&(w.Le="empty distance tree with lengths",h=Ye),h):0)}}function ct(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15,k=a[z+2]+(w&$e[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(0!=(64&u))return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye;f+=a[z+2],f+=w&$e[u],z=3*(l+f),u=a[z]}break}if(0!=(64&u))return 0!=(32&u)?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye);if(f+=a[z+2],f+=w&$e[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,_=0,A=0;for(A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,m=p(u,w,r,h,s,d,e,y),A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>>=n[g+1],_-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(0!=(16&k)){a=15&k,i=n[g+2],t=2;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}if(0!=(32&k)){t=7;break}return t=9,y.Le="invalid literal/length code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 2:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}i+=x&$e[b],x>>=b,_-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>=n[g+1],_-=n[g+1],k=n[g],0!=(16&k)){a=15&k,l=n[g+2],t=4;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 4:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}l+=x&$e[b],x>>=b,_-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(_-=8,v++,A--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ot.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=et,r[0]=tt,0);const ft=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function at(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new ct;let h=0,d=new f(4320);const p=new ot;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ot.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[ft[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==Ye&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&$e[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,_=[],A=[],I=[],D=[],_[0]=9,A[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,_,A,I,D,d,e),0!=i)return i==Ye&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(_[0],A[0],d,I[0],d,D[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const lt=13,ut=[0,0,255,255];function wt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):Xe}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),Xe):(e.zt=r,n.gt.kt=new at(n,1<{let n,r;if(!e||!e.gt||!e.et)return Xe;const s=e.gt;for(t=4==t?Ze:0,n=Ze;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=lt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=lt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=lt,e.Le="incorrect header check",s.marker=5;break}if(0==(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=lt,e.Le="need dictionary",s.marker=0,Xe;case 7:if(n=s.kt.ut(e,n),n==Ye){s.mode=lt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case lt:return Ye;default:return Xe}},e.At=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return Xe;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return Xe;const c=e.gt;if(c.mode!=lt&&(c.mode=lt,c.marker=0),0===(n=e.We))return Ze;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==ut[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?Ye:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Dt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():Xe}function ht(){}function dt(e){const t=new ht,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t._t(0),c&&a===Ze){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}ht.prototype={xt(e){const t=this;return t.gt=new wt,e||(e=15),t.gt.xt(t,e)},_t(e){const t=this;return t.gt?t.gt._t(t,e):Xe},Ct(){const e=this;if(!e.gt)return Xe;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):Xe},At(e,t){const n=this;return n.gt?n.gt.At(n,e,t):Xe},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=Qe,self.Inflate=dt};\n'],{type:"text/javascript"}));e({workerScripts:{inflate:[t],deflate:[t]}})})($),e.BlobReader=Ut,e.BlobWriter=Lt,e.Data64URIReader=class extends Et{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,s=new w(t),i=4*a.floor(e/3),o=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);for(let e=c;c+t>e;e++)s[e-c]=o.charCodeAt(e);return s}},e.Data64URIWriter=class extends Tt{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,s=t.pending;const i=t.pending.length;for(t.pending="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)s+=r.fromCharCode(e[n]);for(;n2?t.data+=_(s):t.pending=s}getData(){return this.data+_(this.pending)}},e.ERR_BAD_FORMAT=Cn,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Wn,e.ERR_DUPLICATED_NAME=$n,e.ERR_ENCRYPTED=En,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Dn,e.ERR_EOCDR_NOT_FOUND=xn,e.ERR_EOCDR_ZIP64_NOT_FOUND=An,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Fn,e.ERR_HTTP_RANGE=Ct,e.ERR_INVALID_COMMENT=Qn,e.ERR_INVALID_ENCRYPTION_STRENGTH=rr,e.ERR_INVALID_ENTRY_COMMENT=er,e.ERR_INVALID_ENTRY_NAME=tr,e.ERR_INVALID_EXTRAFIELD_DATA=ir,e.ERR_INVALID_EXTRAFIELD_TYPE=sr,e.ERR_INVALID_PASSWORD=fe,e.ERR_INVALID_SIGNATURE=de,e.ERR_INVALID_VERSION=nr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=xt,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Rn,e.ERR_SPLIT_ZIP_FILE=Ln,e.ERR_UNSUPPORTED_COMPRESSION=Un,e.ERR_UNSUPPORTED_ENCRYPTION=Tn,e.ERR_UNSUPPORTED_FORMAT=ar,e.HttpRangeReader=class extends jt{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=jt,e.Reader=Et,e.SplitDataReader=Gt,e.SplitDataWriter=Jt,e.SplitZipReader=nn,e.SplitZipWriter=rn,e.TextReader=class extends Ut{constructor(e){super(new m([e],{type:"text/plain"}))}},e.TextWriter=class extends Lt{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 y(((s,i)=>{n.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>i(t.error)}),t.readAsText(r,e)}))}}},e.Uint8ArrayReader=class extends Et{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Tt{init(e=0){n.assign(this,{offset:0,array:new w(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new w(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=Tt,e.ZipReader=class{constructor(e,t={}){n.assign(this,{reader:Qt(e),options:t,config:G()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:s}=t;if(await $t(r),r.size!==P&&r.readUint8Array||(r=new Ut(await new u(r.readable).blob()),await $t(r)),22>r.size)throw new d(Cn);r.chunkSize=J(s);const i=await(async(e,t,n)=>{const r=new w(4);return Jn(r).setUint32(0,101010256,!0),await s(22)||await s(a.min(1048582,n));async function s(t){const s=n-t,i=await tn(e,s,t);for(let e=i.length-22;e>=0;e--)if(i[e]==r[0]&&i[e+1]==r[1]&&i[e+2]==r[2]&&i[e+3]==r[3])return{offset:s+e,buffer:i.slice(e,e+22).buffer}}})(r,0,r.size);if(!i)throw jn(Jn(await tn(r,0,4)))==U?new d(Ln):new d(xn);const o=Jn(i);let c=jn(o,12),l=jn(o,16);const f=i.offset,h=Xn(o,20),p=f+22+h;let g=Xn(o,4);const m=r.lastDiskNumber||0;let b=Xn(o,6),S=Xn(o,8),k=0,z=0;if(l==F||c==F||S==E||b==E){const e=Jn(await tn(r,i.offset-20,20));if(jn(e,0)!=N)throw new d(An);l=Gn(e,8);let t=await tn(r,l,56,-1),n=Jn(t);const s=i.offset-20-56;if(jn(n,0)!=I&&l!=s){const e=l;l=s,k=l-e,t=await tn(r,l,56,-1),n=Jn(t)}if(jn(n,0)!=I)throw new d(Dn);g==E&&(g=jn(n,16)),b==E&&(b=jn(n,20)),S==E&&(S=Gn(n,32)),c==F&&(c=Gn(n,40)),l-=c}if(m!=g)throw new d(Ln);if(0>l||l>=r.size)throw new d(Cn);let _=0,v=await tn(r,l,c,b),C=Jn(v);if(c){const e=i.offset-c;if(jn(C,_)!=L&&l!=e){const t=l;l=e,k=l-t,v=await tn(r,l,c,b),C=Jn(v)}}const x=i.offset-l-(r.lastDiskOffset||0);if(c==x||0>x||(c=x,v=await tn(r,l,c,b),C=Jn(v)),0>l||l>=r.size)throw new d(Cn);const A=Bn(t,e,"filenameEncoding"),D=Bn(t,e,"commentEncoding");for(let i=0;S>i;i++){const o=new Mn(r,s,t.options);if(jn(C,_)!=L)throw new d(Wn);Kn(o,C,_+6);const c=!!o.bitFlag.languageEncodingFlag,l=_+46,u=l+o.filenameLength,f=u+o.extraFieldLength,w=Xn(C,_+4),h=0==(0&w),p=v.subarray(l,u),g=Xn(C,_+32),m=f+g,b=v.subarray(f,m),x=c,W=c,R=h&&16==(16&Zn(C,_+38)),F=jn(C,_+42)+k;n.assign(o,{versionMadeBy:w,msDosCompatible:h,compressedSize:0,uncompressedSize:0,commentLength:g,directory:R,offset:F,diskNumberStart:Xn(C,_+34),internalFileAttribute:Xn(C,_+36),externalFileAttribute:jn(C,_+38),rawFilename:p,filenameUTF8:x,commentUTF8:W,rawExtraField:v.subarray(u,f)});const[E,T]=await y.all([an(p,x?In:A||Nn),an(b,W?In:D||Nn)]);n.assign(o,{rawComment:b,filename:E,comment:T,directory:R||E.endsWith(M)}),z=a.max(F,z),await Vn(o,o,C,_+6);const U=new vn(o);U.getData=(e,t)=>o.getData(e,U,t),_=m;const{onprogress:I}=e;if(I)try{await I(i+1,S,new vn(o))}catch(e){}yield U}const W=Bn(t,e,"extractPrependedData"),R=Bn(t,e,"extractAppendedData");return W&&(t.prependedData=z>0?await tn(r,0,z):new w),t.comment=h?await tn(r,f+22,h):new w,R&&(t.appendedData=plr.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new d($n);return c.filenames.add(e),f=(async(e,r,s,c)=>{r=r.trim(),c.directory&&!r.endsWith(M)?r+=M:c.directory=r.endsWith(M);const l=se(r);if(br(l)>E)throw new d(tr);const u=c.comment||"",f=se(u);if(br(f)>E)throw new d(er);const m=dr(e,c,"version",20);if(m>E)throw new d(nr);const b=dr(e,c,"versionMadeBy",20);if(b>E)throw new d(nr);const S=dr(e,c,pn,new o),k=dr(e,c,mn),z=dr(e,c,yn),_=dr(e,c,kn,!0),v=dr(e,c,bn,0),C=dr(e,c,Sn,0),x=dr(e,c,"password"),A=dr(e,c,"encryptionStrength",3),D=dr(e,c,"zipCrypto"),W=dr(e,c,"extendedTimestamp",!0),R=dr(e,c,"keepOrder",!0),L=dr(e,c,"level"),I=dr(e,c,"useWebWorkers"),N=dr(e,c,"bufferedWrite"),B=dr(e,c,"dataDescriptorSignature",!1),H=dr(e,c,"signal"),Y=dr(e,c,"useCompressionStream");let Z=dr(e,c,"dataDescriptor",!0),X=dr(e,c,zn);if(x!==P&&A!==P&&(1>A||A>3))throw new d(rr);let j=new w;const{extraField:G}=c;if(G){let e=0,t=0;G.forEach((t=>e+=4+br(t))),j=new w(e),G.forEach(((e,n)=>{if(n>E)throw new d(sr);if(br(e)>E)throw new d(ir);mr(j,new h([n]),t),mr(j,new h([br(e)]),t+2),mr(j,e,t+4),t+=4+br(e)}))}let $=0,Q=0,ee=0;const te=!0===X;s&&(s=Qt(s),await $t(s),s.size===P?(Z=!0,(X||X===P)&&(X=!0,ee=$=F)):(ee=s.size,$=(e=>e+5*(a.floor(e/16383)+1))(ee)));const{diskOffset:ne,diskNumber:re,maxSize:ie}=e.writer,ae=te||ee>=F,oe=te||$>=F,ce=te||e.offset+e.pendingEntriesSize-ne>=F,le=dr(e,c,"supportZip64SplitFile",!0)&&te||re+a.ceil(e.pendingEntriesSize/ie)>=E;if(ce||ae||oe||le){if(!1===X||!R)throw new d(ar);X=!0}X=X||!1;const ue=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,password:i,level:o,zip64:c,zipCrypto:l,dataDescriptor:u,directory:f,rawExtraField:d,encryptionStrength:h,extendedTimestamp:g}=e,m=0!==o&&!f,y=!(!i||!br(i));let b,S,k,z=e.version;if(y&&!l){b=new w(br(or)+2);const e=yr(b);hr(e,0,39169),mr(b,or,2),wr(e,8,h)}else b=new w;if(g){k=new w(9+(r?4:0)+(s?4:0));const e=yr(k);hr(e,0,q),hr(e,2,br(k)-4),wr(e,4,1+(r?2:0)+(s?4:0)),pr(e,5,a.floor(n.getTime()/1e3)),r&&pr(e,9,a.floor(r.getTime()/1e3)),s&&pr(e,13,a.floor(s.getTime()/1e3));try{S=new w(36);const e=yr(S),t=fr(n);hr(e,0,10),hr(e,2,32),hr(e,8,1),hr(e,10,24),gr(e,12,t),gr(e,20,fr(r)||t),gr(e,28,fr(s)||t)}catch(e){S=new w}}else S=k=new w;let _=O;u&&(_|=8);let v=0;m&&(v=8),c&&(z=z>45?z:45),y&&(_|=1,l||(z=z>51?z:51,v=99,m&&(b[9]=8)));const C=new w(26),x=yr(C);hr(x,0,z),hr(x,2,_),hr(x,4,v);const A=new p(1),D=yr(A);let W;W=V>n?V:n>K?K:n,hr(D,0,(W.getHours()<<6|W.getMinutes())<<5|W.getSeconds()/2),hr(D,2,(W.getFullYear()-1980<<4|W.getMonth()+1)<<5|W.getDate());const R=A[0];pr(x,6,R),hr(x,22,br(t));const F=br(b,k,S,d);hr(x,24,F);const E=new w(30+br(t)+F);return pr(yr(E),0,T),mr(E,C,4),mr(E,t,30),mr(E,b,30+br(t)),mr(E,k,30+br(t,b)),mr(E,S,30+br(t,b,k)),mr(E,d,30+br(t,b,k,S)),{localHeaderArray:E,headerArray:C,headerView:x,lastModDate:n,rawLastModDate:R,encrypted:y,compressed:m,version:z,compressionMethod:v,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:S,rawExtraFieldAES:b}})(c=n.assign({},c,{rawFilename:l,rawComment:f,version:m,versionMadeBy:b,lastModDate:S,lastAccessDate:k,creationDate:z,rawExtraField:j,zip64:X,zip64UncompressedSize:ae,zip64CompressedSize:oe,zip64Offset:ce,zip64DiskNumberStart:le,password:x,level:L,useWebWorkers:I,encryptionStrength:A,extendedTimestamp:W,zipCrypto:D,bufferedWrite:N,keepOrder:R,dataDescriptor:Z,dataDescriptorSignature:B,signal:H,msDosCompatible:_,internalFileAttribute:v,externalFileAttribute:C,useCompressionStream:Y})),fe=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let s,i=new w,a=0;return n&&(i=new w(t?r?24:20:r?16:12),s=yr(i),r&&(a=4,pr(s,0,134695760))),{dataDescriptorArray:i,dataDescriptorView:s,dataDescriptorOffset:a}})(c);let de;Q=br(ue.localHeaderArray,fe.dataDescriptorArray)+$,e.pendingEntriesSize+=Q;try{de=await(async(e,r,s,a,o)=>{const{files:c,writer:l}=e,{keepOrder:u,dataDescriptor:f,signal:h}=o,{headerInfo:p}=a,m=t.from(c.values()).pop();let b,S,k,z,_,v,C={};c.set(r,C);try{let t;u&&(t=m&&m.lock,C.lock=new y((e=>k=e))),o.bufferedWrite||e.writerLocked||e.bufferedWrites&&u||!f?(v=new Lt,v.writable.size=0,b=!0,e.bufferedWrites++,await $t(l)):(v=l,await x()),await $t(v);const{writable:p}=l;let{diskOffset:D}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new w(4);pr(yr(t),0,U),await ur(p,t),e.offset+=4}b||(await t,await A(p));const{diskNumber:W}=l;if(_=!0,C.diskNumberStart=W,C=await(async(e,t,{diskNumberStart:r,lock:s},a,o,c)=>{const{headerInfo:l,dataDescriptorInfo:u}=a,{localHeaderArray:f,headerArray:d,lastModDate:h,rawLastModDate:p,encrypted:g,compressed:m,version:y,compressionMethod:b,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:z}=l,{dataDescriptorArray:_}=u,{rawFilename:v,lastAccessDate:C,creationDate:x,password:A,level:D,zip64:W,zip64UncompressedSize:R,zip64CompressedSize:E,zip64Offset:T,zip64DiskNumberStart:U,zipCrypto:L,dataDescriptor:I,directory:N,versionMadeBy:q,rawComment:O,rawExtraField:M,useWebWorkers:K,onstart:V,onprogress:B,onend:H,signal:Y,encryptionStrength:Z,extendedTimestamp:X,msDosCompatible:j,internalFileAttribute:G,externalFileAttribute:$,useCompressionStream:Q}=c,ee={lock:s,versionMadeBy:q,zip64:W,directory:!!N,filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:O,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:z,rawExtraField:M,extendedTimestamp:X,msDosCompatible:j,internalFileAttribute:G,externalFileAttribute:$,diskNumberStart:r};let te,ne=0,re=0;const{writable:se}=t,ie=br(f,_);if(e){e.chunkSize=J(o),await ur(se,f);const t=e.readable,n=t.size=e.size,r={options:{codecType:at,level:D,password:A,encryptionStrength:Z,zipCrypto:g&&L,passwordVerification:g&&L&&p>>8&255,signed:!0,compressed:m,encrypted:g,useWebWorkers:K,useCompressionStream:Q,transferStreams:!1},config:o,streamOptions:{signal:Y,size:n,onstart:V,onprogress:B,onend:H}},s=await zt({readable:t,writable:se},r);se.size+=s.size,te=s.signature,re=e.size=t.size,ne=s.size}else await ur(se,f);let ae;if(W){let e=4;R&&(e+=8),E&&(e+=8),T&&(e+=8),U&&(e+=4),ae=new w(e)}else ae=new w;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:s,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:c}=e,{headerView:l,encrypted:u}=o,{dataDescriptorView:f,dataDescriptorOffset:d}=c,{zip64:w,zip64UncompressedSize:h,zip64CompressedSize:p,zipCrypto:g,dataDescriptor:m}=t;if(u&&!g||n===P||(pr(l,10,n),m&&pr(f,d,n)),w){const e=yr(r);hr(e,0,1),hr(e,2,r.length-4);let t=4;h&&(pr(l,18,F),gr(e,t,i(a)),t+=8),p&&(pr(l,14,F),gr(e,t,i(s))),m&&(gr(f,d+4,i(s)),gr(f,d+12,i(a)))}else pr(l,14,s),pr(l,18,a),m&&(pr(f,d+4,s),pr(f,d+8,a))})({signature:te,rawExtraFieldZip64:ae,compressedSize:ne,uncompressedSize:re,headerInfo:l,dataDescriptorInfo:u},c),I&&await ur(se,_),n.assign(ee,{uncompressedSize:re,compressedSize:ne,lastModDate:h,rawLastModDate:p,creationDate:x,lastAccessDate:C,encrypted:g,length:ie+ne,compressionMethod:b,version:y,headerArray:d,signature:te,rawExtraFieldZip64:ae,zip64UncompressedSize:R,zip64CompressedSize:E,zip64Offset:T,zip64DiskNumberStart:U}),ee})(s,v,C,a,e.config,o),_=!1,c.set(r,C),C.filename=r,b){await v.writable.getWriter().close();let e=await v.getData();await t,await x(),z=!0,f||(e=await(async(e,t,n,{zipCrypto:r})=>{let s;s=await t.slice(0,26).arrayBuffer(),26!=s.byteLength&&(s=s.slice(0,26));const i=new g(s);return e.encrypted&&!r||pr(i,14,e.signature),e.zip64?(pr(i,18,F),pr(i,22,F)):(pr(i,18,e.compressedSize),pr(i,22,e.uncompressedSize)),await ur(n,new w(s)),t.slice(s.byteLength)})(C,e,p,o)),await A(p),C.diskNumberStart=l.diskNumber,D=l.diskOffset,await e.stream().pipeTo(p,{preventClose:!0,preventAbort:!0,signal:h}),p.size+=e.size,z=!1}if(C.offset=e.offset-D,C.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:s}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:c,zip64DiskNumberStart:l}=t,u=yr(n);let f=4;a&&(f+=8),o&&(f+=8),c&&(gr(u,f,i(r)),f+=8),l&&pr(u,f,s)})(C,o);else if(C.offset>=F)throw new d(ar);return e.offset+=C.length,C}catch(t){if(b&&z||!b&&_){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}b?e.offset+=v.writable.size:e.offset=v.writable.size}throw c.delete(r),t}finally{b&&e.bufferedWrites--,k&&k(),S&&S()}async function x(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new y((t=>S=()=>{e.writerLocked=!1,t()})),await t}async function A(e){p.localHeaderArray.length>l.availableSize&&(l.availableSize=0,await ur(e,new w))}})(e,r,s,{headerInfo:ue,dataDescriptorInfo:fe},c)}finally{e.pendingEntriesSize-=Q}return n.assign(de,{name:r,comment:u,extraField:G}),new vn(de)})(c,e,r,s),l.add(f),await f}catch(t){throw c.filenames.delete(e),t}finally{l.delete(f);const e=lr.shift();e?e():cr--}}async close(e=new w,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await y.all(t.from(r));return await(async(e,n,r)=>{const{files:s,writer:o}=e,{diskOffset:c,writable:l}=o;let{diskNumber:u}=o,f=0,h=0,p=e.offset-c,g=s.size;for(const[,{rawFilename:e,rawExtraFieldZip64:t,rawExtraFieldAES:n,rawExtraField:r,rawComment:i,rawExtraFieldExtendedTimestamp:a,rawExtraFieldNTFS:o}]of s)h+=46+br(e,i,t,n,a,o,r);const m=new w(h),y=yr(m);await $t(o);let b=0;for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:i,rawExtraFieldZip64:c,rawExtraFieldAES:u,rawExtraFieldNTFS:d,rawExtraField:h,rawComment:p,versionMadeBy:g,headerArray:S,directory:k,zip64:z,zip64UncompressedSize:_,zip64CompressedSize:v,zip64DiskNumberStart:C,zip64Offset:x,msDosCompatible:A,internalFileAttribute:D,externalFileAttribute:W,extendedTimestamp:R,lastModDate:T,diskNumberStart:U,uncompressedSize:I,compressedSize:N}=n;let O;if(R){O=new w(9);const e=yr(O);hr(e,0,q),hr(e,2,br(O)-4),wr(e,4,1),pr(e,5,a.floor(T.getTime()/1e3))}else O=new w;const M=br(c,u,O,d,h);pr(y,f,L),hr(y,f+4,g);const K=yr(S);_||pr(K,18,I),v||pr(K,14,N),mr(m,S,f+6),hr(y,f+30,M),hr(y,f+32,br(p)),hr(y,f+34,z&&C?E:U),hr(y,f+36,D),W?pr(y,f+38,W):k&&A&&wr(y,f+38,16),pr(y,f+42,z&&x?F:t),mr(m,i,f+46),mr(m,c,f+46+br(i)),mr(m,u,f+46+br(i,c)),mr(m,O,f+46+br(i,c,u)),mr(m,d,f+46+br(i,c,u,O)),mr(m,h,f+46+br(i,c,u,O,d)),mr(m,p,f+46+br(i)+M);const V=46+br(i,p)+M;if(f-b>o.availableSize&&(o.availableSize=0,await ur(l,m.slice(b,f)),b=f),f+=V,r.onprogress)try{await r.onprogress(e+1,s.size,new vn(n))}catch(e){}}await ur(l,b?m.slice(b):m);let S=o.diskNumber;const{availableSize:k}=o;22>k&&S++;let z=dr(e,r,"zip64");if(!(F>p&&F>h&&E>g&&E>S)){if(!1===z)throw new d(ar);z=!0}const _=new w(z?98:22),v=yr(_);f=0,z&&(pr(v,0,I),gr(v,4,i(44)),hr(v,12,45),hr(v,14,45),pr(v,16,S),pr(v,20,u),gr(v,24,i(g)),gr(v,32,i(g)),gr(v,40,i(h)),gr(v,48,i(p)),pr(v,56,N),gr(v,64,i(p)+i(h)),pr(v,72,S+1),dr(e,r,"supportZip64SplitFile",!0)&&(S=E,u=E),g=E,p=F,h=F,f+=76),pr(v,f,101010256),hr(v,f+4,S),hr(v,f+6,u),hr(v,f+8,g),hr(v,f+10,g),pr(v,f+12,h),pr(v,f+16,p);const C=br(n);if(C){if(C>E)throw new d(Qn);hr(v,f+20,C)}await ur(l,_),C&&await ur(l,n)})(this,e,n),dr(this,n,"preventClose")||await o.getWriter().close(),s.getData?s.getData():o}},e.configure=$,e.getMimeType=()=>"application/octet-stream",e.initReader=Qt,e.initShimAsyncCodec=(e,t={},n)=>({Deflate:ee(e.Deflate,t.deflate,n),Inflate:ee(e.Inflate,t.inflate,n)}),e.initStream=$t,e.initWriter=en,e.readUint8Array=tn,e.terminateWorkers=()=>{bt.forEach((e=>{_t(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})})); diff --git a/index.cjs b/index.cjs index 62fab14e..c30a4ed1 100644 --- a/index.cjs +++ b/index.cjs @@ -9529,6 +9529,7 @@ async function createFileEntry(reader, writer, { diskNumberStart, lock }, entryI let uncompressedSize = 0; let signature; const { writable } = writer; + const metaDataLength = getLength(localHeaderArray, dataDescriptorArray); if (reader) { reader.chunkSize = getChunkSize(config); await writeData(writable, localHeaderArray); @@ -9598,7 +9599,7 @@ async function createFileEntry(reader, writer, { diskNumberStart, lock }, entryI creationDate, lastAccessDate, encrypted, - length: getLength(localHeaderArray, dataDescriptorArray) + compressedSize, + length: metaDataLength + compressedSize, compressionMethod, version, headerArray, diff --git a/package-lock.json b/package-lock.json index a1bc03a9..0791350e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@zip.js/zip.js", - "version": "2.7.19", + "version": "2.7.20", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@zip.js/zip.js", - "version": "2.7.19", + "version": "2.7.20", "license": "BSD-3-Clause", "devDependencies": { "@rollup/plugin-node-resolve": "^15.0.1", diff --git a/package.json b/package.json index 391bed3b..9d9a18f0 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "description": "A JavaScript library to zip and unzip files in the browser, Deno and Node.js", "author": "Gildas Lormeau", "license": "BSD-3-Clause", - "version": "2.7.19", + "version": "2.7.20", "type": "module", "keywords": [ "zip",