1
0
forked from Rowland/EG
EG/Cesium-1.132/node_modules/@zip.js/zip.js/dist/zip-no-worker-deflate.min.js
2025-08-25 17:48:13 +08:00

2 lines
70 KiB
JavaScript

((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:s,BigInt:a,Math:i,Date:o,Map:c,Set:l,Response:d,URL:u,Error:f,Uint8Array:p,Uint16Array:w,Uint32Array:h,DataView:g,Blob:m,Promise:y,TextEncoder:b,TextDecoder:_,document:z,crypto:S,btoa:x,TransformStream:k,ReadableStream:F,WritableStream:E,CompressionStream:v,DecompressionStream:D,navigator:T,Worker:A}="undefined"!=typeof globalThis?globalThis:this||self,R=-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,c,l,d=-1;for(n.heap_len=0,n.heap_max=573,o=0;a>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=d=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)l=n.heap[++n.heap_len]=2>d?++d:0,r[2*l]=1,n.depth[l]=0,n.opt_len--,s&&(n.static_len-=s[2*l+1]);for(e.max_code=d,o=i.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);l=a;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),c=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=c,r[2*l]=r[2*o]+r[2*c],n.depth[l]=i.max(n.depth[o],n.depth[c])+1,r[2*o+1]=r[2*c+1]=l,n.heap[1]=l++,n.pqdownheap(r,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,r=e.stat_desc.static_tree,s=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,i=e.stat_desc.max_length;let o,c,l,d,u,f,p=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)c=t.heap[o],d=n[2*n[2*c+1]+1]+1,d>i&&(d=i,p++),n[2*c+1]=d,c>e.max_code||(t.bl_count[d]++,u=0,a>c||(u=s[c-a]),f=n[2*c],t.opt_len+=f*(d+u),r&&(t.static_len+=f*(r[2*c+1]+u)));if(0!==p){do{for(d=i-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[i]--,p-=2}while(p>0);for(d=i;0!==d;d--)for(c=t.bl_count[d];0!==c;)l=t.heap[--o],l>e.max_code||(n[2*l+1]!=d&&(t.opt_len+=(d-n[2*l+1])*n[2*l],n[2*l+1]=d),c--)}})(n),((e,n,r)=>{const s=[];let a,i,o,c=0;for(a=1;15>=a;a++)s[a]=c=c+r[a-1]<<1;for(i=0;n>=i;i++)o=e[2*i+1],0!==o&&(e[2*i]=t(s[o]++,o))})(r,e.max_code,n.bl_count)}}function L(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 M=C([[144,8],[112,9],[24,7],[8,8]]);L.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,M[t]]));const O=C([[30,5]]);function I(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}L.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,O[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 H=[new I(0,0,0,0,0),new I(4,4,8,4,1),new I(4,5,16,8,1),new I(4,6,32,32,1),new I(4,4,16,16,2),new I(8,16,32,32,2),new I(8,16,128,128,2),new I(8,32,128,256,2),new I(32,128,258,1024,2),new I(32,258,258,4096,2)],P=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],V=113,B=666,Z=262;function q(e,t,n,r){const s=e[2*t],a=e[2*n];return a>s||s==a&&r[t]<=r[n]}function K(){const e=this;let t,n,r,s,a,o,c,l,d,u,f,h,g,m,y,b,_,z,S,x,k,F,E,v,D,T,A,C,W,N,M,O,I;const K=new U,G=new U,Y=new U;let j,X,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)M[2*t]=0;for(t=0;30>t;t++)O[2*t]=0;for(t=0;19>t;t++)I[2*t]=0;M[512]=1,e.opt_len=e.static_len=0,X=J=0}function ne(e,t){let n,r=-1,s=e[1],a=0,i=7,o=4;0===s&&(i=138,o=3),e[2*(t+1)+1]=65535;for(let c=0;t>=c;c++)n=s,s=e[2*(c+1)+1],++a<i&&n==s||(o>a?I[2*n]+=a:0!==n?(n!=r&&I[2*n]++,I[32]++):a>10?I[36]++:I[34]++,a=0,r=n,0===s?(i=138,o=3):n==s?(i=6,o=3):(i=7,o=4))}function re(t){e.pending_buf[e.pending++]=t}function se(e){re(255&e),re(e>>>8&255)}function ae(e,t){let n;const r=t;ee>16-r?(n=e,$|=n<<ee&65535,se($),$=n>>>16-ee,ee+=r-16):($|=e<<ee&65535,ee+=r)}function ie(e,t){const n=2*e;ae(65535&t[n],65535&t[n+1])}function oe(e,t){let n,r,s=-1,a=e[1],i=0,o=7,c=4;for(0===a&&(o=138,c=3),n=0;t>=n;n++)if(r=a,a=e[2*(n+1)+1],++i>=o||r!=a){if(c>i)do{ie(r,I)}while(0!==--i);else 0!==r?(r!=s&&(ie(r,I),i--),ie(16,I),ae(i-3,2)):i>10?(ie(18,I),ae(i-11,7)):(ie(17,I),ae(i-3,3));i=0,s=r,0===a?(o=138,c=3):r==a?(o=6,c=3):(o=7,c=4)}}function ce(){16==ee?(se($),$=0,ee=0):8>ee||(re(255&$),$>>>=8,ee-=8)}function le(t,n){let r,s,a;if(e.dist_buf[X]=t,e.lc_buf[X]=255&n,X++,0===t?M[2*n]++:(J++,t--,M[2*(U._length_code[n]+256+1)]++,O[2*U.d_code(t)]++),!(8191&X)&&A>2){for(r=8*X,s=k-_,a=0;30>a;a++)r+=O[2*a]*(5+U.extra_dbits[a]);if(r>>>=3,J<i.floor(X/2)&&r<i.floor(s/2))return!0}return X==j-1}function de(t,n){let r,s,a,i,o=0;if(0!==X)do{r=e.dist_buf[o],s=e.lc_buf[o],o++,0===r?ie(s,t):(a=U._length_code[s],ie(a+256+1,t),i=U.extra_lbits[a],0!==i&&(s-=U.base_length[a],ae(s,i)),r--,a=U.d_code(r),ie(a,n),i=U.extra_dbits[a],0!==i&&(r-=U.base_dist[a],ae(r,i)))}while(X>o);ie(256,t),Q=t[513]}function ue(){ee>8?se($):ee>0&&re(255&$),$=0,ee=0}function fe(t,n,r){ae(0+(r?1:0),3),((t,n)=>{ue(),Q=8,se(n),se(~n),e.pending_buf.set(l.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function pe(n){((t,n,r)=>{let s,a,i=0;A>0?(K.build_tree(e),G.build_tree(e),i=(()=>{let t;for(ne(M,K.max_code),ne(O,G.max_code),Y.build_tree(e),t=18;t>=3&&0===I[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(L.static_ltree,L.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(I[2*U.bl_order[r]+1],3);oe(M,e-1),oe(O,t-1)})(K.max_code+1,G.max_code+1,i+1),de(M,O)):fe(t,n,r),te(),r&&ue()})(0>_?-1:_,k-_,n),_=k,t.flush_pending()}function we(){let e,n,r,s;do{if(s=d-E-k,0===s&&0===k&&0===E)s=a;else if(-1==s)s--;else if(k>=a+a-Z){l.set(l.subarray(a,a+a),0),F-=a,k-=a,_-=a,e=g,r=e;do{n=65535&f[--r],f[r]=a>n?0:n-a}while(0!==--e);e=a,r=e;do{n=65535&u[--r],u[r]=a>n?0:n-a}while(0!==--e);s+=a}if(0===t.avail_in)return;e=t.read_buf(l,k+E,s),E+=e,3>E||(h=255&l[k],h=(h<<b^255&l[k+1])&y)}while(Z>E&&0!==t.avail_in)}function he(e){let t,n,r=D,s=k,i=v;const o=k>a-Z?k-(a-Z):0;let d=N;const f=c,p=k+258;let w=l[s+i-1],h=l[s+i];W>v||(r>>=2),d>E&&(d=E);do{if(t=e,l[t+i]==h&&l[t+i-1]==w&&l[t]==l[s]&&l[++t]==l[s+1]){s+=2,t++;do{}while(l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&l[++s]==l[++t]&&p>s);if(n=258-(p-s),s=p-258,n>i){if(F=e,i=n,n>=d)break;w=l[s+i-1],h=l[s+i]}}}while((e=65535&u[e&f])>o&&0!==--r);return i>E?E:i}e.depth=[],e.bl_count=[],e.heap=[],M=[],O=[],I=[],e.pqdownheap=(t,n)=>{const r=e.heap,s=r[n];let a=n<<1;for(;a<=e.heap_len&&(a<e.heap_len&&q(t,r[a+1],r[a],e.depth)&&a++,!q(t,s,r[a],e.depth));)r[n]=r[a],n=a,a<<=1;r[n]=s},e.deflateInit=(t,S,F,U,P,B)=>(U||(U=8),P||(P=8),B||(B=0),t.msg=null,-1==S&&(S=6),1>P||P>9||8!=U||9>F||F>15||0>S||S>9||0>B||B>2?R:(t.dstate=e,o=F,a=1<<o,c=a-1,m=P+7,g=1<<m,y=g-1,b=i.floor((m+3-1)/3),l=new p(2*a),u=[],f=[],j=1<<P+6,e.pending_buf=new p(4*j),r=4*j,e.dist_buf=new w(j),e.lc_buf=new p(j),A=S,C=B,(t=>(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=V,s=0,K.dyn_tree=M,K.stat_desc=L.static_l_desc,G.dyn_tree=O,G.stat_desc=L.static_d_desc,Y.dyn_tree=I,Y.stat_desc=L.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*a,f[g-1]=0;for(let e=0;g-1>e;e++)f[e]=0;T=H[A].max_lazy,W=H[A].good_length,N=H[A].nice_length,D=H[A].max_chain,k=0,_=0,E=0,z=v=2,x=0,h=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=V&&n!=B?R:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,l=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?R:(H[A].func!=H[t].func&&0!==e.total_in&&(r=e.deflate(1)),A!=t&&(A=t,T=H[A].max_lazy,W=H[A].good_length,N=H[A].nice_length,D=H[A].max_chain),C=n,r)},e.deflateSetDictionary=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return R;if(3>i)return 0;for(i>a-Z&&(i=a-Z,o=r-i),l.set(t.subarray(o,o+i),0),k=i,_=i,h=255&l[0],h=(h<<b^255&l[1])&y,s=0;i-3>=s;s++)h=(h<<b^255&l[s+2])&y,u[s&c]=f[h],f[h]=s;return 0},e.deflate=(i,d)=>{let p,w,m,D,W;if(d>4||0>d)return R;if(!i.next_out||!i.next_in&&0!==i.avail_in||n==B&&4!=d)return i.msg=P[4],R;if(0===i.avail_out)return i.msg=P[7],-5;var N;if(t=i,D=s,s=d,42==n&&(w=8+(o-8<<4)<<8,m=(A-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==k&&(w|=32),w+=31-w%31,n=V,re((N=w)>>8&255),re(255&N)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return s=-1,0}else if(0===t.avail_in&&D>=d&&4!=d)return t.msg=P[7],-5;if(n==B&&0!==t.avail_in)return i.msg=P[7],-5;if(0!==t.avail_in||0!==E||0!=d&&n!=B){switch(W=-1,H[A].func){case 0:W=(e=>{let n,s=65535;for(s>r-5&&(s=r-5);;){if(1>=E){if(we(),0===E&&0==e)return 0;if(0===E)break}if(k+=E,E=0,n=_+s,(0===k||k>=n)&&(E=k-n,k=n,pe(!1),0===t.avail_out))return 0;if(k-_>=a-Z&&(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(Z>E){if(we(),Z>E&&0==e)return 0;if(0===E)break}if(3>E||(h=(h<<b^255&l[k+2])&y,r=65535&f[h],u[k&c]=f[h],f[h]=k),0===r||(k-r&65535)>a-Z||2!=C&&(z=he(r)),3>z)n=le(0,255&l[k]),E--,k++;else if(n=le(k-F,z-3),E-=z,z>T||3>E)k+=z,z=0,h=255&l[k],h=(h<<b^255&l[k+1])&y;else{z--;do{k++,h=(h<<b^255&l[k+2])&y,r=65535&f[h],u[k&c]=f[h],f[h]=k}while(0!==--z);k++}if(n&&(pe(!1),0===t.avail_out))return 0}return pe(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 2:W=(e=>{let n,r,s=0;for(;;){if(Z>E){if(we(),Z>E&&0==e)return 0;if(0===E)break}if(3>E||(h=(h<<b^255&l[k+2])&y,s=65535&f[h],u[k&c]=f[h],f[h]=k),v=z,S=F,z=2,0!==s&&T>v&&a-Z>=(k-s&65535)&&(2!=C&&(z=he(s)),5>=z&&(1==C||3==z&&k-F>4096)&&(z=2)),3>v||z>v)if(0!==x){if(n=le(0,255&l[k-1]),n&&pe(!1),k++,E--,0===t.avail_out)return 0}else x=1,k++,E--;else{r=k+E-3,n=le(k-1-S,v-3),E-=v-1,v-=2;do{++k>r||(h=(h<<b^255&l[k+2])&y,s=65535&f[h],u[k&c]=f[h],f[h]=k)}while(0!==--v);if(x=0,z=2,k++,n&&(pe(!1),0===t.avail_out))return 0}}return 0!==x&&(n=le(0,255&l[k-1]),x=0),pe(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d)}if(2!=W&&3!=W||(n=B),0==W||2==W)return 0===t.avail_out&&(s=-1),0;if(1==W){if(1==d)ae(2,3),ie(256,L.static_ltree),ce(),9>1+Q+10-ee&&(ae(2,3),ie(256,L.static_ltree),ce()),Q=7;else if(fe(0,0,!1),3==d)for(p=0;g>p;p++)f[p]=0;if(t.flush_pending(),0===t.avail_out)return s=-1,0}}return 4!=d?0:1}}function G(){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}G.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):R},deflateEnd(){const e=this;if(!e.dstate)return R;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):R},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):R},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 Y=4294967295,j=65535,X=67324752,J=134695760,Q=J,$=33639248,ee=101010256,te=101075792,ne=117853008,re=22,se=21589,ae=2048,ie="/",oe=30,ce=new o(2107,11,31),le=new o(1980,0,1),de=void 0,ue="undefined",fe="function";class pe{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 we=2;try{typeof T!=ue&&T.hardwareConcurrency&&(we=T.hardwareConcurrency)}catch(e){}const he={chunkSize:524288,maxWorkers:we,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:de,CompressionStreamNative:typeof v!=ue&&v,DecompressionStreamNative:typeof D!=ue&&D},ge=n.assign({},he);function me(){return ge}function ye(e){return i.max(e.chunkSize,64)}function be(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:a,useCompressionStream:i,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:d,DecompressionStream:u,workerScripts:p}=e;if(_e("baseURL",n),_e("chunkSize",r),_e("maxWorkers",s),_e("terminateWorkerTimeout",a),_e("useCompressionStream",i),_e("useWebWorkers",o),c&&(ge.CompressionStream=new pe(c)),l&&(ge.DecompressionStream=new pe(l)),_e("CompressionStream",d),_e("DecompressionStream",u),p!==de){const{deflate:e,inflate:n}=p;if((e||n)&&(ge.workerScripts||(ge.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");ge.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");ge.workerScripts.inflate=n}}}function _e(e,t){t!==de&&(ge[e]=t)}const ze=[];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;ze[e]=t}class Se{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^ze[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class xe extends k{constructor(){let e;const t=new Se;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 ke(e){if(typeof b==ue){const t=new p((e=unescape(encodeURIComponent(e))).length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new b).encode(e)}const Fe={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=Fe.getPartial(n);return 32===r?e.concat(t):Fe._shiftRight(t,r,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+Fe.getPartial(n)},clamp(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,i.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=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<e.length;s++)r.push(n|e[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}},Ee={bytes:{fromBits(e){const t=Fe.bitLength(e)/8,n=new p(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],3&~n||(t.push(r),r=0);return 3&n&&t.push(Fe.partial(8*(3&n),r)),t}}},ve=class{constructor(e){const t=this;t.blockSize=512,t._init=[1732584193,4023233417,2562383102,271733878,3285377520],t._key=[1518500249,1859775393,2400959708,3395469782],e?(t._h=e._h.slice(0),t._buffer=e._buffer.slice(0),t._length=e._length):t.reset()}reset(){const e=this;return e._h=e._init.slice(0),e._buffer=[],e._length=0,e}update(e){const t=this;"string"==typeof e&&(e=Ee.utf8String.toBits(e));const n=t._buffer=Fe.concat(t._buffer,e),r=t._length,s=t._length=r+Fe.bitLength(e);if(s>9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new h(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<<e|t>>>32-e}_block(e){const n=this,r=n._h,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let a=r[0],o=r[1],c=r[2],l=r[3],d=r[4];for(let e=0;79>=e;e++){16>e||(s[e]=n._S(1,s[e-3]^s[e-8]^s[e-14]^s[e-16]));const t=n._S(5,a)+n._f(e,o,c,l)+d+s[e]+n._key[i.floor(e/20)]|0;d=l,l=c,c=n._S(30,o),o=a,a=t}r[0]=r[0]+a|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+d|0}},De={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)*(i.random()>.5?1:-1))};for(let r,s=0;s<e.length;s+=4){const e=n(4294967296*(r||i.random()));r=987654071*e(),t[s/4]=4294967296*e()|0}return e}},Te={importKey:e=>new Te.hmacSha1(Ee.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new f("invalid params to pbkdf2");const s=1+(r>>5)<<2;let a,i,o,c,l;const d=new ArrayBuffer(s),u=new g(d);let p=0;const w=Fe;for(t=Ee.bytes.toBits(t),l=1;(s||1)>p;l++){for(a=i=e.encrypt(w.concat(t,[l])),o=1;n>o;o++)for(i=e.encrypt(i),c=0;c<i.length;c++)a[c]^=i[c];for(o=0;(s||1)>p&&o<a.length;o++)u.setInt32(p,a[o]),p+=4}return d.slice(0,r/8)},hmacSha1:class{constructor(e){const t=this,n=t._hash=ve,r=[[],[]];t._baseHash=[new n,new n];const s=t._baseHash[0].blockSize/32;e.length>s&&(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)}}},Ae=typeof S!=ue&&typeof S.getRandomValues==fe,Re="Invalid password",Ce="Invalid signature",We="zipjs-abort-check-password";function Ne(e){return Ae?S.getRandomValues(e):De.getRandomValues(e)}const Ue=16,Le={name:"PBKDF2"},Me=n.assign({hash:{name:"HMAC"}},Le),Oe=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Le),Ie=["deriveBits"],He=[8,12,16],Pe=[16,24,32],Ve=10,Be=[0,0,0,0],Ze=typeof S!=ue,qe=Ze&&S.subtle,Ke=Ze&&typeof qe!=ue,Ge=Ee.bytes,Ye=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],s=e.length;let a,i,o,c=1;if(4!==s&&6!==s&&8!==s)throw new f("invalid aes key size");for(t._key=[i=e.slice(0),o=[]],a=s;4*s+28>a;a++){let e=i[a-1];(a%s===0||8===s&&a%s===4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],a%s===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),i[a]=i[a-s]^e}for(let e=0;a;e++,a--){const t=i[3&e?a:a-4];o[e]=4>=a||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],s=[],a=[];let i,o,c,l;for(let e=0;256>e;e++)a[(s[e]=e<<1^283*(e>>7))^e]=e;for(let d=i=0;!n[d];d^=o||1,i=a[i]||1){let a=i^i<<1^i<<2^i<<3^i<<4;a=a>>8^255&a^99,n[d]=a,r[a]=d,l=s[c=s[o=s[d]]];let u=16843009*l^65537*c^257*o^16843008*d,f=257*s[a]^16843008*a;for(let n=0;4>n;n++)e[n][d]=f=f<<24^f>>>8,t[n][a]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],r=n.length/4-2,s=[0,0,0,0],a=this._tables[t],i=a[0],o=a[1],c=a[2],l=a[3],d=a[4];let u,p,w,h=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++)u=i[h>>>24]^o[g>>16&255]^c[m>>8&255]^l[255&y]^n[b],p=i[g>>>24]^o[m>>16&255]^c[y>>8&255]^l[255&h]^n[b+1],w=i[m>>>24]^o[y>>16&255]^c[h>>8&255]^l[255&g]^n[b+2],y=i[y>>>24]^o[h>>16&255]^c[g>>8&255]^l[255&m]^n[b+3],b+=4,h=u,g=p,m=w;for(let e=0;4>e;e++)s[t?3&-e:e]=d[h>>>24]<<24^d[g>>16&255]<<16^d[m>>8&255]<<8^d[255&y]^n[b++],u=h,h=g,g=m,m=y,y=u;return s}},je=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))e+=1<<24;else{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}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)}},Xe=Te.hmacSha1;let Je=Ze&&Ke&&typeof qe.importKey==fe,Qe=Ze&&Ke&&typeof qe.deriveBits==fe;class $e extends k{constructor({password:e,rawPassword:t,signed:r,encryptionStrength:s,checkPasswordOnly:a}){super({start(){n.assign(this,{ready:new y(e=>this.resolveReady=e),password:rt(e,t),signed:r,strength:s-1,pending:new p})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:i,ready:o}=n;r?(await(async(e,t,n,r)=>{const s=await nt(e,t,n,at(r,0,He[t])),a=at(r,He[t]);if(s[0]!=a[0]||s[1]!=a[1])throw new f(Re)})(n,s,r,at(e,0,He[s]+2)),e=at(e,He[s]+2),a?t.error(new f(We)):i()):await o;const c=new p(e.length-Ve-(e.length-Ve)%Ue);t.enqueue(tt(n,e,c,0,Ve,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:a}=this;if(r&&n){await a;const i=at(s,0,s.length-Ve),o=at(s,s.length-Ve);let c=new p;if(i.length){const e=ot(Ge,i);r.update(e);const t=n.update(e);c=it(Ge,t)}if(t){const e=at(it(Ge,r.digest()),0,Ve);for(let t=0;Ve>t;t++)if(e[t]!=o[t])throw new f(Ce)}e.enqueue(c)}}})}}class et extends k{constructor({password:e,rawPassword:t,encryptionStrength:r}){let s;super({start(){n.assign(this,{ready:new y(e=>this.resolveReady=e),password:rt(e,t),strength:r-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=Ne(new p(He[t]));return st(r,await nt(e,t,n,r))})(n,s,r),a()):await i;const c=new p(o.length+e.length-e.length%Ue);c.set(o,0),t.enqueue(tt(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:a}=this;if(n&&t){await a;let i=new p;if(r.length){const e=t.update(ot(Ge,r));n.update(e),i=it(Ge,e)}s.signature=it(Ge,n.digest()).slice(0,Ve),e.enqueue(st(i,s.signature))}}}),s=this}}function tt(e,t,n,r,s,a){const{ctr:i,hmac:o,pending:c}=e,l=t.length-s;let d;for(c.length&&(t=st(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%Ue)),d=0;l-Ue>=d;d+=Ue){const e=ot(Ge,at(t,d,d+Ue));a&&o.update(e);const s=i.update(e);a||o.update(s),n.set(it(Ge,s),d+r)}return e.pending=at(t,d),n}async function nt(e,r,s,a){e.password=null;const i=await(async(e,t,n,r,s)=>{if(!Je)return Te.importKey(t);try{return await qe.importKey("raw",t,n,!1,s)}catch(e){return Je=!1,Te.importKey(t)}})(0,s,Me,0,Ie),o=await(async(e,t,n)=>{if(!Qe)return Te.pbkdf2(t,e.salt,Oe.iterations,n);try{return await qe.deriveBits(e,t,n)}catch(r){return Qe=!1,Te.pbkdf2(t,e.salt,Oe.iterations,n)}})(n.assign({salt:a},Oe),i,8*(2*Pe[r]+2)),c=new p(o),l=ot(Ge,at(c,0,Pe[r])),d=ot(Ge,at(c,Pe[r],2*Pe[r])),u=at(c,2*Pe[r]);return n.assign(e,{keys:{key:l,authentication:d,passwordVerification:u},ctr:new je(new Ye(l),t.from(Be)),hmac:new Xe(d)}),u}function rt(e,t){return t===de?ke(e):t}function st(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 at(e,t,n){return e.subarray(t,n)}function it(e,t){return e.fromBits(t)}function ot(e,t){return e.toBits(t)}class ct extends k{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),ft(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 f(Re);e=e.subarray(12)}r?t.error(new f(We)):t.enqueue(dt(n,e))}})}}class lt extends k{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),ft(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=Ne(new p(12));t[11]=n.passwordVerification,r=new p(e.length+t.length),r.set(ut(n,t),0),s=12}else r=new p(e.length),s=0;r.set(ut(n,e),s),t.enqueue(r)}})}}function dt(e,t){const n=new p(t.length);for(let r=0;r<t.length;r++)n[r]=wt(e)^t[r],pt(e,n[r]);return n}function ut(e,t){const n=new p(t.length);for(let r=0;r<t.length;r++)n[r]=wt(e)^t[r],pt(e,t[r]);return n}function ft(e,t){const r=[305419896,591751049,878082192];n.assign(e,{keys:r,crcKey0:new Se(r[0]),crcKey2:new Se(r[2])});for(let n=0;n<t.length;n++)pt(e,t.charCodeAt(n))}function pt(e,t){let[n,r,s]=e.keys;e.crcKey0.append([t]),n=~e.crcKey0.get(),r=gt(i.imul(gt(r+ht(n)),134775813)+1),e.crcKey2.append([r>>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function wt(e){const t=2|e.keys[2];return ht(i.imul(t,1^t)>>>8)}function ht(e){return 255&e}function gt(e){return 4294967295&e}const mt="Invalid uncompressed size",yt="deflate-raw";class bt extends k{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:a,useCompressionStream:i,zipCrypto:o,signed:c,level:l}=e,d=this;let u,f,p=super.readable;a&&!o||!c||(u=new xe,p=xt(p,u)),s&&(p=St(p,i,{level:l,chunkSize:t},r,n)),a&&(o?p=xt(p,new lt(e)):(f=new et(e),p=xt(p,f))),zt(d,p,()=>{let e;a&&!o&&(e=f.signature),a&&!o||!c||(e=new g(u.value.buffer).getUint32(0)),d.signature=e})}}class _t extends k{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:a,signed:i,signature:o,compressed:c,useCompressionStream:l}=e;let d,u,p=super.readable;a&&(s?p=xt(p,new ct(e)):(u=new $e(e),p=xt(p,u))),c&&(p=St(p,l,{chunkSize:t},r,n)),a&&!s||!i||(d=new xe,p=xt(p,d)),zt(this,p,()=>{if((!a||s)&&i){const e=new g(d.value.buffer);if(o!=e.getUint32(0,!1))throw new f(Ce)}})}}function zt(e,t,r){t=xt(t,new k({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function St(e,t,n,r,s){try{e=xt(e,new(t&&r?r:s)(yt,n))}catch(r){if(!t)throw r;e=xt(e,new s(yt,n))}return e}function xt(e,t){return e.pipeThrough(t)}const kt="data",Ft="close",Et="deflate",vt="inflate";class Dt extends k{constructor(e,t){super({});const r=this,{codecType:s}=e;let a;s.startsWith(Et)?a=bt:s.startsWith(vt)&&(a=_t),r.outputSize=0;let i=0;const o=new a(e,t),c=super.readable,l=new k({transform(e,t){e&&e.length&&(i+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:i})}}),d=new k({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize&&r.outputSize>e.outputSize))throw new f(mt)},flush(){const{signature:e}=o;n.assign(r,{signature:e,inputSize:i})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(o).pipeThrough(d)})}}class Tt extends k{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new p(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}let At=typeof A!=ue;class Rt{constructor(e,{readable:t,writable:r},{options:s,config:a,streamOptions:i,useWebWorkers:o,transferStreams:c,scripts:l},d){const{signal:u}=i;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Tt(a.chunkSize)).pipeThrough(new Ct(i),{signal:u}),writable:r,options:n.assign({},s),scripts:l,transferStreams:c,terminate:()=>new y(t=>{const{worker:n,busy:r}=e;n?(r?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()}),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,d(e)}}),(o&&At?Ut:Nt)(e,a)}}class Ct extends k{constructor({onstart:e,onprogress:t,size:n,onend:r}){let s=0;super({async start(){e&&await Wt(e,n)},async transform(e,r){s+=e.length,t&&await Wt(t,s,n),r.enqueue(e)},async flush(){r&&await Wt(r,s)}})}}async function Wt(e,...t){try{await e(...t)}catch(e){}}function Nt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{let a;try{a=new Dt(e,s),await t.pipeThrough(a).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:r,inputSize:i,outputSize:o}=a;return{signature:r,inputSize:i,outputSize:o}}catch(e){throw a&&(e.outputSize=a.outputSize),e}finally{r()}})(e,t)}}function Ut(e,t){const{baseURL:r,chunkSize:s}=t;if(!e.interface){let a;try{a=((e,t,r)=>{const s={type:"module"};let a,i;typeof e==fe&&(e=e());try{a=new u(e,t)}catch(t){a=e}if(Lt)try{i=new A(a)}catch(e){Lt=!1,i=new A(a,s)}else i=new A(a,s);return i.addEventListener("message",e=>(async({data:e},t)=>{const{type:r,value:s,messageId:a,result:i,error:o}=e,{reader:c,writer:l,resolveResult:d,rejectResult:u,onTaskFinished:w}=t;try{if(o){const{message:e,stack:t,code:r,name:s,outputSize:a}=o,i=new f(e);n.assign(i,{stack:t,code:r,name:s,outputSize:a}),h(i)}else{if("pull"==r){const{value:e,done:n}=await c.read();Ot({type:kt,value:e,done:n,messageId:a},t)}r==kt&&(await l.ready,await l.write(new p(s)),Ot({type:"ack",messageId:a},t)),r==Ft&&h(null,i)}}catch(o){Ot({type:Ft,messageId:a},t),h(o)}function h(e,t){e?u(e):d(t),l&&l.releaseLock(),w()}})(e,r)),i})(e.scripts[0],r,e)}catch(n){return At=!1,Nt(e,t)}n.assign(e,{worker:a,interface:{run:()=>(async(e,t)=>{let r,s;const a=new y((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:c}=e,{writable:l,closed:d}=(e=>{let t;const n=new y(e=>t=e);return{writable:new E({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),u=Ot({type:"start",scripts:c.slice(1),options:o,config:t,readable:i,writable:l},e);u||n.assign(e,{reader:i.getReader(),writer:l.getWriter()});const f=await a;return u||await l.getWriter().close(),await d,f})(e,{chunkSize:s})}})}return e.interface}let Lt=!0,Mt=!0;function Ot(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{const{value:n,readable:r,writable:a}=e,i=[];if(n&&(n.byteLength<n.buffer.byteLength?e.value=n.buffer.slice(0,n.byteLength):e.value=n.buffer,i.push(e.value)),s&&Mt?(r&&i.push(r),a&&i.push(a)):e.readable=e.writable=null,i.length)try{return t.postMessage(e,i),!0}catch(n){Mt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),r(),e}}let It=[];const Ht=[];let Pt=0;async function Vt(e,t){const{options:n,config:r}=t,{transferStreams:a,useWebWorkers:i,useCompressionStream:o,codecType:c,compressed:l,signed:d,encrypted:u}=n,{workerScripts:f,maxWorkers:p}=r;t.transferStreams=a||a===de;const w=!(l||d||u||t.transferStreams);return t.useWebWorkers=!w&&(i||i===de&&r.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[c]:[],n.useCompressionStream=o||o===de&&r.useCompressionStream,(await(async()=>{const n=It.find(e=>!e.busy);if(n)return Bt(n),new Rt(n,e,t,h);if(It.length<p){const n={indexWorker:Pt};return Pt++,It.push(n),new Rt(n,e,t,h)}return new y(n=>Ht.push({resolve:n,stream:e,workerOptions:t}))})()).run();function h(e){if(Ht.length){const[{resolve:t,stream:n,workerOptions:r}]=Ht.splice(0,1);t(new Rt(e,n,r,h))}else e.worker?(Bt(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;s.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout(async()=>{It=It.filter(t=>t!=e);try{await e.terminate()}catch(e){}},r))})(e,t)):It=It.filter(t=>t!=e)}}function Bt(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const Zt="HTTP error ",qt="HTTP Range not supported",Kt="Writer iterator completed too soon",Gt="Writer not initialized",Yt="Range",jt="GET",Xt="bytes",Jt=65536,Qt="writable";class $t{constructor(){this.size=0}init(){this.initialized=!0}}class en extends $t{get readable(){const e=this,{chunkSize:t=Jt}=e,n=new F({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:a,diskNumberStart:o}=n,{chunkOffset:c}=this,l=a===de?t:i.min(t,a-c),d=await kn(e,s+c,l,o);r.enqueue(d),c+t>a||a===de&&!d.length&&l?r.close():this.chunkOffset+=t}});return n}}class tn extends $t{constructor(){super();const e=this,t=new E({write(t){if(!e.initialized)throw new f(Gt);return e.writeUint8Array(t)}});n.defineProperty(e,Qt,{get:()=>t})}writeUint8Array(){}}class nn extends en{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||r<n.size?n.blob.slice(e,r):n.blob;let a=await s.arrayBuffer();return a.byteLength>t&&(a=a.slice(e,r)),new p(a)}}class rn extends $t{constructor(e){super();const t=new k,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,Qt,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:r}).blob()}getData(){return this.blob}}class sn extends en{constructor(e,t){super(),on(this,e,t)}async init(){await cn(this,gn,fn),super.init()}readUint8Array(e,t){return ln(this,e,t,gn,fn)}}class an extends en{constructor(e,t){super(),on(this,e,t)}async init(){await cn(this,mn,pn),super.init()}readUint8Array(e,t){return ln(this,e,t,mn,pn)}}function on(e,t,r){const{preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:o}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:o})}async function cn(e,t,n){const{url:r,preventHeadRequest:a,useRangeHeader:i,forceRangeRequests:o,combineSizeEocd:c}=e;if((e=>{const{baseURL:t}=me(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(r)&&(i||o)&&(void 0===a||a)){const r=await t(jt,e,dn(e,c?-22:void 0));if(!o&&r.headers.get("Accept-Ranges")!=Xt)throw new f(qt);{let a;c&&(e.eocdCache=new p(await r.arrayBuffer()));const i=r.headers.get("Content-Range");if(i){const e=i.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=s(t))}}a===de?await hn(e,t,n):e.size=a}}else await hn(e,t,n)}async function ln(e,t,n,r,s){const{useRangeHeader:a,forceRangeRequests:i,eocdCache:o,size:c,options:l}=e;if(a||i){if(o&&t==c-re&&n==re)return o;if(c>t){t+n>c&&(n=c-t);const s=await r(jt,e,dn(e,t,n));if(206!=s.status)throw new f(qt);return new p(await s.arrayBuffer())}return new p}{const{data:r}=e;return r||await s(e,l),new p(e.data.subarray(t,t+n))}}function dn(e,t=0,r=1){return n.assign({},un(e),{[Yt]:Xt+"="+(0>t?t:t+"-"+(t+r-1))})}function un({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function fn(e){await wn(e,gn)}async function pn(e){await wn(e,mn)}async function wn(e,t){const n=await t(jt,e,un(e));e.data=new p(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function hn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,un(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function gn(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(qt):new f(Zt+(a.statusText||a.status))}function mn(e,{url:t},r){return new y((s,a)=>{const i=new XMLHttpRequest;if(i.addEventListener("load",()=>{if(400>i.status){const e=[];i.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),s({status:i.status,arrayBuffer:()=>i.response,headers:new c(e)})}else a(416==i.status?new f(qt):new f(Zt+(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 yn extends en{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new an(e,t):new sn(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 bn extends en{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 a,o=n;-1==o&&(o=s.length-1);let c=e;for(;s[o]&&c>=s[o].size;)c-=s[o].size,o++;const l=s[o];if(l){const s=l.size;if(c+t>s){const i=s-c;a=new p(t);const o=await kn(l,c,i);a.set(o,0);const d=await r.readUint8Array(e+i,t-i,n);a.set(d,i),o.length+d.length<t&&(a=a.subarray(0,o.length+d.length))}else a=await kn(l,c,t)}else a=new p;return r.lastDiskNumber=i.max(o,r.lastDiskNumber),a}}class _n extends $t{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 E({async write(t){const{availableSize:n}=r;if(i)t.length<n?await c(t):(await c(t.subarray(0,n)),await l(),r.diskOffset+=s.size,r.diskNumber++,i=null,await this.write(t.subarray(n)));else{const{value:n,done:o}=await e.next();if(o&&!n)throw new f(Kt);s=n,s.size=0,s.maxSize&&(r.maxSize=s.maxSize),r.availableSize=r.maxSize,await xn(s),a=n.writable,i=a.getWriter(),await this.write(t)}},async close(){await i.ready,await l()}});async function c(e){const t=e.length;t&&(await i.ready,await i.write(e),s.size+=t,r.size+=t,r.availableSize-=t)}async function l(){await i.close()}n.defineProperty(r,Qt,{get:()=>o})}}class zn{constructor(e){return t.isArray(e)&&(e=new bn(e)),e instanceof F&&(e={readable:e}),e}}class Sn{constructor(e){return e.writable===de&&typeof e.next==fe&&(e=new _n(e)),e instanceof E&&(e={writable:e}),e.size===de&&(e.size=0),e instanceof _n||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}}async function xn(e,t){if(!e.init||e.initialized)return y.resolve();await e.init(t)}function kn(e,t,n,r){return e.readUint8Array(t,n,r)}const Fn=bn,En=_n,vn="filename",Dn="rawFilename",Tn="comment",An="rawComment",Rn="uncompressedSize",Cn="compressedSize",Wn="offset",Nn="diskNumberStart",Un="lastModDate",Ln="rawLastModDate",Mn="lastAccessDate",On="creationDate",In="internalFileAttribute",Hn="internalFileAttributes",Pn="externalFileAttribute",Vn="externalFileAttributes",Bn="msDosCompatible",Zn="zip64",qn="encrypted",Kn="version",Gn="versionMadeBy",Yn="zipCrypto",jn="directory",Xn="executable",Jn="compressionMethod",Qn="signature",$n="extraField",er=[vn,Dn,Cn,Rn,Un,Ln,Tn,An,Mn,On,Wn,Nn,Nn,In,Hn,Pn,Vn,Bn,Zn,qn,Kn,Gn,Yn,jn,Xn,Jn,Qn,$n,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class tr{constructor(e){er.forEach(t=>this[t]=e[t])}}const nr="password",rr="rawPassword",sr="passThrough",ar="signal",ir="useWebWorkers",or="useCompressionStream",cr="preventClose",lr="supportZip64SplitFile",dr="offset",ur="usdz",fr="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function pr(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;n<e.length;n++)t+=fr[e[n]];return t}})(e):new _(t).decode(e)}const wr="File format is not recognized",hr="Compression method not supported",gr="Split zip file",mr="utf-8",yr="cp437",br=[[Rn,Y],[Cn,Y],[Wn,Y],[Nn,j]],_r={[j]:{getValue:Rr,bytes:4},[Y]:{getValue:Cr,bytes:8}};class zr{constructor(e,t={}){n.assign(this,{reader:new zn(e),options:t,config:me(),readRanges:[]})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:s}=t;if(await xn(r),r.size!==de&&r.readUint8Array||(r=new nn(await new d(r.readable).blob()),await xn(r)),r.size<re)throw new f(wr);r.chunkSize=ye(s);const a=await(async(e,t,n)=>{const r=new p(4);var s;return s=t,Wr(r).setUint32(0,s,!0),await a(22)||await a(i.min(1048582,n));async function a(t){const s=n-t,a=await kn(e,s,t);for(let e=a.length-22;e>=0;e--)if(a[e]==r[0]&&a[e+1]==r[1]&&a[e+2]==r[2]&&a[e+3]==r[3])return{offset:s+e,buffer:a.slice(e,e+22).buffer}}})(r,ee,r.size);if(!a)throw Rr(Wr(await kn(r,0,4)))==J?new f(gr):new f("End of central directory not found");const o=Wr(a);let c=Rr(o,12),l=Rr(o,16);const u=a.offset,w=Ar(o,20),h=u+re+w;let g=Ar(o,4);const m=r.lastDiskNumber||0;let b=Ar(o,6),_=Ar(o,8),z=0,S=0;if(l==Y||c==Y||_==j||b==j){const e=Wr(await kn(r,a.offset-20,20));if(Rr(e,0)==ne){l=Cr(e,8);let t=await kn(r,l,56,-1),n=Wr(t);const s=a.offset-20-56;if(Rr(n,0)!=te&&l!=s){const e=l;l=s,l>e&&(z=l-e),t=await kn(r,l,56,-1),n=Wr(t)}if(Rr(n,0)!=te)throw new f("End of Zip64 central directory locator not found");g==j&&(g=Rr(n,16)),b==j&&(b=Rr(n,20)),_==j&&(_=Cr(n,32)),c==Y&&(c=Cr(n,40)),l-=c}}if(l<r.size||(z=r.size-l-c-re,l=r.size-c-re),m!=g)throw new f(gr);if(0>l)throw new f(wr);let x=0,F=await kn(r,l,c,b),E=Wr(F);if(c){const e=a.offset-c;if(Rr(E,x)!=$&&l!=e){const t=l;l=e,l>t&&(z+=l-t),F=await kn(r,l,c,b),E=Wr(F)}}const v=a.offset-l-(r.lastDiskOffset||0);if(c==v||0>v||(c=v,F=await kn(r,l,c,b),E=Wr(F)),0>l||l>=r.size)throw new f(wr);const D=Er(t,e,"filenameEncoding"),T=Er(t,e,"commentEncoding");for(let a=0;_>a;a++){const o=new Sr(r,s,t.options);if(Rr(E,x)!=$)throw new f("Central directory header not found");xr(o,E,x+6);const c=!!o.bitFlag.languageEncodingFlag,l=x+46,u=l+o.filenameLength,p=u+o.extraFieldLength,w=Ar(E,x+4),h=!(w>>8),g=w>>8==3,m=F.subarray(l,u),b=Ar(E,x+32),v=p+b,A=F.subarray(p,v),R=c,C=c,W=Rr(E,x+38),N=h&&!(16&~Tr(E,x+38))||g&&16384==(W>>16&61440)||m.length&&47==m[m.length-1],U=g&&!!(W>>16&73),L=Rr(E,x+42)+z;n.assign(o,{versionMadeBy:w,msDosCompatible:h,compressedSize:0,uncompressedSize:0,commentLength:b,directory:N,offset:L,diskNumberStart:Ar(E,x+34),internalFileAttributes:Ar(E,x+36),externalFileAttributes:W,rawFilename:m,filenameUTF8:R,commentUTF8:C,rawExtraField:F.subarray(u,p),executable:U}),o.internalFileAttribute=o.internalFileAttributes,o.externalFileAttribute=o.externalFileAttributes;const M=Er(t,e,"decodeText")||pr,O=R?mr:D||yr,I=C?mr:T||yr;let H=M(m,O);H===de&&(H=pr(m,O));let P=M(A,I);P===de&&(P=pr(A,I)),n.assign(o,{rawComment:A,filename:H,comment:P,directory:N||H.endsWith(ie)}),S=i.max(L,S),kr(o,o,E,x+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const V=new tr(o);V.getData=(e,n)=>o.getData(e,V,t.readRanges,n),V.arrayBuffer=async e=>{const n=new k,[r]=await y.all([new d(n.readable).arrayBuffer(),o.getData(n,V,t.readRanges,e)]);return r},x=v;const{onprogress:B}=e;if(B)try{await B(a+1,_,new tr(o))}catch(e){}yield V}const A=Er(t,e,"extractPrependedData"),R=Er(t,e,"extractAppendedData");return A&&(t.prependedData=S>0?await kn(r,0,S):new p),t.comment=w?await kn(r,u+re,w):new p,R&&(t.appendedData=h<r.size?await kn(r,h,r.size-h):new p),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){}}class Sr{constructor(e,t,r){n.assign(this,{reader:e,config:t,options:r})}async getData(e,t,r,s={}){const a=this,{reader:i,offset:o,diskNumberStart:c,extraFieldAES:l,extraFieldZip64:d,compressionMethod:u,config:w,bitFlag:h,signature:g,rawLastModDate:m,uncompressedSize:y,compressedSize:b}=a,{dataDescriptor:_}=h,z=t.localDirectory={},S=Wr(await kn(i,o,oe,c));let x=Er(a,s,nr),k=Er(a,s,rr);const F=Er(a,s,sr);if(x=x&&x.length&&x,k=k&&k.length&&k,l&&99!=l.originalCompressionMethod)throw new f(hr);if(0!=u&&8!=u&&!F)throw new f(hr);if(Rr(S,0)!=X)throw new f("Local file header not found");xr(z,S,4);const{extraFieldLength:v,filenameLength:D,lastAccessDate:T,creationDate:A}=z;z.rawExtraField=v?await kn(i,o+oe+D,v,c):new p,kr(a,z,S,4,!0),n.assign(t,{lastAccessDate:T,creationDate:A});const R=a.encrypted&&z.encrypted&&!F,C=R&&!l;if(F||(t.zipCrypto=C),R){if(!C&&l.strength===de)throw new f("Encryption method not supported");if(!x&&!k)throw new f("File contains encrypted entry")}const W=o+oe+D+v,N=b,U=i.readable;n.assign(U,{diskNumberStart:c,offset:W,size:N});const L=Er(a,s,ar),M=Er(a,s,"checkPasswordOnly");let O=Er(a,s,"checkOverlappingEntry");const I=Er(a,s,"checkOverlappingEntryOnly");I&&(O=!0);const{onstart:H,onprogress:P,onend:V}=s,B={options:{codecType:vt,password:x,rawPassword:k,zipCrypto:C,encryptionStrength:l&&l.strength,signed:Er(a,s,"checkSignature")&&!F,passwordVerification:C&&(_?m>>>8&255:g>>>24&255),outputSize:y,signature:g,compressed:0!=u&&!F,encrypted:a.encrypted&&!F,useWebWorkers:Er(a,s,ir),useCompressionStream:Er(a,s,or),transferStreams:Er(a,s,"transferStreams"),checkPasswordOnly:M},config:w,streamOptions:{signal:L,size:N,onstart:H,onprogress:P,onend:V}};let Z;O&&await(async({reader:e,fileEntry:t,offset:n,diskNumberStart:r,signature:s,compressedSize:a,uncompressedSize:i,dataOffset:o,dataDescriptor:c,extraFieldZip64:l,readRanges:d})=>{let u=0;if(r)for(let t=0;r>t;t++)u+=e.readers[t].size;let p=0;if(c&&(p=l?20:12),p){const n=await kn(e,o+a,p+4,r);if(Rr(Wr(n),0)==Q){const e=Rr(Wr(n),4);let r,o;l?(r=Cr(Wr(n),8),o=Cr(Wr(n),16)):(r=Rr(Wr(n),8),o=Rr(Wr(n),12)),(t.encrypted&&!t.zipCrypto||e==s)&&r==a&&o==i&&(p+=4)}}const w={start:u+n,end:u+o+a+p,fileEntry:t};for(const e of d)if(e.fileEntry!=t&&w.start>=e.start&&w.start<e.end){const t=new f("Overlapping entry found");throw t.overlappingEntry=e.fileEntry,t}d.push(w)})({reader:i,fileEntry:t,offset:o,diskNumberStart:c,signature:g,compressedSize:b,uncompressedSize:y,dataOffset:W,dataDescriptor:_||z.bitFlag.dataDescriptor,extraFieldZip64:d||z.extraFieldZip64,readRanges:r});try{if(!I){M&&(e=new E),e=new Sn(e),await xn(e,F?b:y),({writable:Z}=e);const{outputSize:t}=await Vt({readable:U,writable:Z},B);if(e.size+=t,t!=(F?b:y))throw new f(mt)}}catch(t){if(t.outputSize!==de&&(e.size+=t.outputSize),!M||t.message!=We)throw t}finally{Er(a,s,cr)||!Z||Z.locked||await Z.getWriter().close()}return M||I?de:e.getData?e.getData():Z}}function xr(e,t,r){const s=e.rawBitFlag=Ar(t,r+2),a=!(1&~s),i=Rr(t,r+6);n.assign(e,{encrypted:a,version:Ar(t,r),bitFlag:{level:(6&s)>>1,dataDescriptor:!(8&~s),languageEncodingFlag:(s&ae)==ae},rawLastModDate:i,lastModDate:vr(i),filenameLength:Ar(t,r+22),extraFieldLength:Ar(t,r+24)})}function kr(e,t,r,s,a){const{rawExtraField:i}=t,l=t.extraField=new c,d=Wr(new p(i));let u=0;try{for(;u<i.length;){const e=Ar(d,u),t=Ar(d,u+2);l.set(e,{type:e,data:i.slice(u+4,u+4+t)}),u+=4+t}}catch(e){}const w=Ar(r,s+4);n.assign(t,{signature:Rr(r,s+10),compressedSize:Rr(r,s+14),uncompressedSize:Rr(r,s+18)});const h=l.get(1);h&&(((e,t)=>{t.zip64=!0;const n=Wr(e.data),r=br.filter(([e,n])=>t[e]==n);for(let s=0,a=0;s<r.length;s++){const[i,o]=r[s];if(t[i]==o){const r=_r[o];t[i]=e[i]=r.getValue(n,a),a+=r.bytes}else if(e[i])throw new f("Zip64 extra field not found")}})(h,t),t.extraFieldZip64=h);const g=l.get(28789);g&&(Fr(g,vn,Dn,t,e),t.extraFieldUnicodePath=g);const m=l.get(25461);m&&(Fr(m,Tn,An,t,e),t.extraFieldUnicodeComment=m);const y=l.get(39169);y?(((e,t,r)=>{const s=Wr(e.data),a=Tr(s,4);n.assign(e,{vendorVersion:Tr(s,0),vendorId:Tr(s,2),strength:a,originalCompressionMethod:r,compressionMethod:Ar(s,5)}),t.compressionMethod=e.compressionMethod})(y,t,w),t.extraFieldAES=y):t.compressionMethod=w;const b=l.get(10);b&&(((e,t)=>{const r=Wr(e.data);let s,a=4;try{for(;a<e.data.length&&!s;){const t=Ar(r,a),n=Ar(r,a+2);1==t&&(s=e.data.slice(a+4,a+4+n)),a+=4+n}}catch(e){}try{if(s&&24==s.length){const r=Wr(s),a=r.getBigUint64(0,!0),i=r.getBigUint64(8,!0),o=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:a,rawLastAccessDate:i,rawCreationDate:o});const c={lastModDate:Dr(a),lastAccessDate:Dr(i),creationDate:Dr(o)};n.assign(e,c),n.assign(t,c)}}catch(e){}})(b,t),t.extraFieldNTFS=b);const _=l.get(se);_&&(((e,t,n)=>{const r=Wr(e.data),s=Tr(r,0),a=[],i=[];n?(1&~s||(a.push(Un),i.push(Ln)),2&~s||(a.push(Mn),i.push("rawLastAccessDate")),4&~s||(a.push(On),i.push("rawCreationDate"))):5>e.data.length||(a.push(Un),i.push(Ln));let c=1;a.forEach((n,s)=>{if(e.data.length>=c+4){const a=Rr(r,c);t[n]=e[n]=new o(1e3*a);const l=i[s];e[l]=a}c+=4})})(_,t,a),t.extraFieldExtendedTimestamp=_);const z=l.get(6534);z&&(t.extraFieldUSDZ=z)}function Fr(e,t,r,s,a){const i=Wr(e.data),o=new Se;o.append(a[r]);const c=Wr(new p(4));c.setUint32(0,o.get(),!0);const l=Rr(i,1);n.assign(e,{version:Tr(i,0),[t]:pr(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&l==Rr(c,0)}),e.valid&&(s[t]=e[t],s[t+"UTF8"]=!0)}function Er(e,t,n){return t[n]===de?e.options[n]:t[n]}function vr(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(s(e/a(1e4)-a(116444736e5)))}function Tr(e,t){return e.getUint8(t)}function Ar(e,t){return e.getUint16(t,!0)}function Rr(e,t){return e.getUint32(t,!0)}function Cr(e,t){return s(e.getBigUint64(t,!0))}function Wr(e){return new g(e.buffer)}const Nr="File already exists",Ur="Zip file comment exceeds 64KB",Lr="File entry comment exceeds 64KB",Mr="File entry name exceeds 64KB",Or="Version exceeds 65535",Ir="The strength must equal 1, 2, or 3",Hr="Extra field type exceeds 65535",Pr="Extra field data exceeds 64KB",Vr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Br="Undefined uncompressed size",Zr="Zip file not empty",qr=new p([7,0,2,0,65,69,3,0,0]);let Kr=0;const Gr=[];class Yr{constructor(e,t={}){const r=(e=new Sn(e)).availableSize!==de&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==de&&e.maxSize>0&&e.maxSize!==1/0;n.assign(this,{writer:e,addSplitZipSignature:r,options:t,config:me(),files:new c,filenames:new l,offset:t[dr]===de?e.size||e.writable.size||0:t[dr],pendingEntriesSize:0,pendingAddFileCalls:new l,bufferedWrites:0})}async prependZip(e){if(this.filenames.size)throw new f(Zr);e=new zn(e);const t=new zr(e.readable),r=await t.getEntries();await t.close(),await e.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=e.size,this.filenames=new l(r.map(e=>e.filename)),this.files=new c(r.map(e=>{const{version:t,compressionMethod:r,lastModDate:s,lastAccessDate:a,creationDate:i,rawFilename:o,bitFlag:c,encrypted:l,uncompressedSize:d,compressedSize:u,diskOffset:f,diskNumber:w,zip64:h}=e;let{rawExtraFieldZip64:g,rawExtraFieldAES:m,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:b,rawExtraField:_}=e;const{level:z,languageEncodingFlag:S,dataDescriptor:x}=c;g=g||new p,m=m||new p,y=y||new p,b=b||new p,_=_||new p;const k=is(g,m,y,b,_),F=h&&d>Y,E=h&&u>Y,{headerArray:v,headerView:D}=os({version:t,bitFlag:cs(z,S,x,l,r),compressionMethod:r,uncompressedSize:d,compressedSize:u,lastModDate:s,rawFilename:o,zip64CompressedSize:E,zip64UncompressedSize:F,extraFieldLength:k});return n.assign(e,{zip64UncompressedSize:F,zip64CompressedSize:E,zip64Offset:h&&this.offset-f>Y,zip64DiskNumberStart:h&&w>j,rawExtraFieldZip64:g,rawExtraFieldAES:m,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:b,rawExtraField:_,extendedTimestamp:y.length>0||b.length>0,extraFieldExtendedTimestampFlag:1+(a?2:0)+(i?4:0),headerArray:v,headerView:D}),[e.filename,e]}))}async add(e="",r,s={}){const c=this,{pendingAddFileCalls:l,config:u}=c;let h;Kr<u.maxWorkers?Kr++:await new y(e=>Gr.push(e));try{if(e=e.trim(),c.filenames.has(e))throw new f(Nr);return c.filenames.add(e),h=(async(e,r,s,c)=>{r=r.trim();const l=Qr(e,c,Bn),u=Qr(e,c,Gn,l?20:768),h=Qr(e,c,Xn);if(u>j)throw new f(Or);let g=Qr(e,c,Vn,0);0===g&&(g=Qr(e,c,Pn,0)),!c[jn]&&r.endsWith(ie)&&(c[jn]=!0),Qr(e,c,jn)?(r.endsWith(ie)||(r+=ie),0===g&&(g=16,l||(g|=16877<<16))):l||0!==g||(g=h?493<<16:27525120);const m=Qr(e,c,"encodeText",ke);let b=m(r);if(b===de&&(b=ke(r)),is(b)>j)throw new f(Mr);const _=c[Tn]||"";let z=m(_);if(z===de&&(z=ke(_)),is(z)>j)throw new f(Lr);const S=Qr(e,c,Kn,20);if(S>j)throw new f(Or);const x=Qr(e,c,Un,new o),F=Qr(e,c,Mn),E=Qr(e,c,On);let v=Qr(e,c,Hn,0);0===v&&(v=Qr(e,c,In,0));const D=Qr(e,c,sr);let T,A;D||(T=Qr(e,c,nr),A=Qr(e,c,rr));const R=Qr(e,c,"encryptionStrength",3),C=Qr(e,c,Yn),W=Qr(e,c,"extendedTimestamp",!0),N=Qr(e,c,"keepOrder",!0),U=Qr(e,c,"level"),L=Qr(e,c,ir),M=Qr(e,c,"bufferedWrite"),O=Qr(e,c,"dataDescriptorSignature",!1),I=Qr(e,c,ar),H=Qr(e,c,"useUnicodeFileNames",!0),P=Qr(e,c,or),V=Qr(e,c,Jn);let B=Qr(e,c,"dataDescriptor");M&&B===de&&(B=!1),(B===de||C)&&(B=!0);let Z=Qr(e,c,Zn);if(!C&&(T!==de||A!==de)&&(1>R||R>3))throw new f(Ir);let q=new p;const K=c[$n];if(K){let e=0,t=0;K.forEach(t=>e+=4+is(t)),q=new p(e),K.forEach((e,n)=>{if(n>j)throw new f(Hr);if(is(e)>j)throw new f(Pr);ss(q,new w([n]),t),ss(q,new w([is(e)]),t+2),ss(q,e,t+4),t+=4+is(e)})}let G=0,$=0,ee=0;if(D&&(ee=c[Rn],ee===de))throw new f(Br);const te=!0===Z;s&&(s=new zn(s),await xn(s),D?(c.uncompressedSize=ee,G=$r(ee)):s.size===de?(B=!0,(Z||Z===de)&&(Z=!0,ee=G=4294967296)):(c.uncompressedSize=ee=s.size,G=$r(ee)));const{diskOffset:ne,diskNumber:re,maxSize:ae}=e.writer,ue=te||ee>Y,fe=te||G>Y,pe=te||e.offset+e.pendingEntriesSize-ne>Y,we=Qr(e,c,lr,!0)&&te||re+i.ceil(e.pendingEntriesSize/ae)>j;if(pe||ue||fe||we){if(!1===Z||!N)throw new f(Vr);Z=!0}Z=Z||!1;const he=Qr(e,c,qn),ge=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,level:o,zip64:c,zipCrypto:l,useUnicodeFileNames:d,dataDescriptor:u,directory:f,rawExtraField:w,encryptionStrength:h,extendedTimestamp:g,passThrough:m,encrypted:y,zip64UncompressedSize:b,zip64CompressedSize:_,zip64Offset:z,zip64DiskNumberStart:S,uncompressedSize:x,offset:k,diskNumberStart:F}=e;let{version:E,compressionMethod:v}=e;const D=!f&&(o>0||o===de&&0!==v);let T;const A=m||!D,R=c&&(e.bufferedWrite||!b&&!_||A);if(c){let e=4;b&&(e+=8),_&&(e+=8),z&&(e+=8),S&&(e+=4),T=new p(e);const t=as(T);if(ts(t,0,1),ts(t,2,is(T)-4),R){const e=as(T);let t=4;b&&(rs(e,t,a(x)),t+=8),_&&A&&(rs(e,t,a(x)),t+=8),z&&(rs(e,t,a(k)),t+=8),S&&(ns(e,t,F),t+=4)}}else T=new p;let C,W,N,U;if(y&&!l){C=new p(is(qr)+2);const e=as(C);ts(e,0,39169),ss(C,qr,2),es(e,8,h)}else C=new p;if(g){N=new p(9+(r?4:0)+(s?4:0));const e=as(N);ts(e,0,se),ts(e,2,is(N)-4),U=1+(r?2:0)+(s?4:0),es(e,4,U);let t=5;ns(e,t,i.floor(n.getTime()/1e3)),t+=4,r&&(ns(e,t,i.floor(r.getTime()/1e3)),t+=4),s&&ns(e,t,i.floor(s.getTime()/1e3));try{W=new p(36);const e=as(W),t=Jr(n);ts(e,0,10),ts(e,2,32),ts(e,8,1),ts(e,10,24),rs(e,12,t),rs(e,20,Jr(r)||t),rs(e,28,Jr(s)||t)}catch(e){W=new p}}else W=N=new p;v===de&&(v=D?8:0),c&&(E=E>45?E:45),y&&!l&&(E=E>51?E:51,C[9]=v,v=99);const L=R?is(T):0,M=L+is(C,N,W,w),{headerArray:O,headerView:I,rawLastModDate:H}=os({version:E,bitFlag:cs(o,d,u,y,v),compressionMethod:v,uncompressedSize:x,lastModDate:le>n?le:n>ce?ce:n,rawFilename:t,zip64CompressedSize:_,zip64UncompressedSize:b,extraFieldLength:M});let P=oe;const V=new p(P+is(t)+M),B=as(V);return ns(B,0,X),ss(V,O,4),ss(V,t,P),P+=is(t),R&&ss(V,T,P),P+=L,ss(V,C,P),P+=is(C),ss(V,N,P),P+=is(N),ss(V,W,P),P+=is(W),ss(V,w,P),u&&(ns(B,18,0),ns(B,22,0)),{localHeaderArray:V,localHeaderView:B,headerArray:O,headerView:I,lastModDate:n,rawLastModDate:H,encrypted:y,compressed:D,version:E,compressionMethod:v,extraFieldExtendedTimestampFlag:U,rawExtraFieldZip64:T,localExtraFieldZip64Length:L,rawExtraFieldExtendedTimestamp:N,rawExtraFieldNTFS:W,rawExtraFieldAES:C,extraFieldLength:M}})(c=n.assign({},c,{rawFilename:b,rawComment:z,version:S,versionMadeBy:u,lastModDate:x,lastAccessDate:F,creationDate:E,rawExtraField:q,zip64:Z,zip64UncompressedSize:ue,zip64CompressedSize:fe,zip64Offset:pe,zip64DiskNumberStart:we,password:T,rawPassword:A,level:P||e.config.CompressionStream!==de||e.config.CompressionStreamNative!==de?U:0,useWebWorkers:L,encryptionStrength:R,extendedTimestamp:W,zipCrypto:C,bufferedWrite:M,keepOrder:N,useUnicodeFileNames:H,dataDescriptor:B,dataDescriptorSignature:O,signal:I,msDosCompatible:l,internalFileAttribute:v,internalFileAttributes:v,externalFileAttribute:g,externalFileAttributes:g,useCompressionStream:P,passThrough:D,encrypted:!!(T&&is(T)||A&&is(A))||D&&he,signature:c[Qn],compressionMethod:V,uncompressedSize:ee,offset:e.offset-ne,diskNumberStart:re})),me=(({zip64:e,dataDescriptor:t,dataDescriptorSignature:n})=>{let r,s=new p,a=0,i=e?20:12;return n&&(i+=4),t&&(s=new p(i),r=as(s),n&&(a=4,ns(r,0,Q))),{dataDescriptorArray:s,dataDescriptorView:r,dataDescriptorOffset:a}})(c),be=is(ge.localHeaderArray,me.dataDescriptorArray);let _e;$=be+G,e.options[ur]&&($+=$+64),e.pendingEntriesSize+=$;try{_e=await(async(e,r,s,i,o)=>{const{files:c,writer:l}=e,{keepOrder:u,dataDescriptor:w,signal:h}=o,{headerInfo:g}=i,m=e.options[ur],b=t.from(c.values()).pop();let _,z,S,x,F,E,v,D={};c.set(r,D);try{let t;u&&(t=b&&b.lock,D.lock=new y(e=>S=e)),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&u)&&w||m?(E=l,await T()):(E=new k,E.size=0,_=!0,e.bufferedWrites++,await xn(l)),await xn(E);const{writable:z,diskOffset:R}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new p(4);ns(as(t),0,J),await Xr(l,t),e.offset+=4}m&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:r,extraFieldLength:s}=n,a=as(r),i=64-(t+is(r))%64;4>i&&(i+=64);const o=new p(i),c=as(o);ts(c,0,6534),ts(c,2,i-2);const l=r;n.localHeaderArray=r=new p(is(l)+i),ss(r,l),ss(r,o,is(l)),a=as(r),ts(a,28,s+i),e.metadataSize+=i})(i,e.offset-R);const{localHeaderView:C,localHeaderArray:W}=g;_||(await t,await A(z));const{diskNumber:N}=l;F=!0,D.diskNumberStart=N,_?v=new d(E.readable).blob():await Xr(E,W),D=await(async(e,t,{diskNumberStart:r,lock:s},i,o,c)=>{const{headerInfo:l,dataDescriptorInfo:d,metadataSize:u}=i,{headerArray:f,headerView:p,lastModDate:w,rawLastModDate:h,encrypted:g,compressed:m,version:y,compressionMethod:b,rawExtraFieldZip64:_,localExtraFieldZip64Length:z,rawExtraFieldExtendedTimestamp:S,extraFieldExtendedTimestampFlag:x,rawExtraFieldNTFS:k,rawExtraFieldAES:F}=l,{dataDescriptorArray:E}=d,{rawFilename:v,lastAccessDate:D,creationDate:T,password:A,rawPassword:R,level:C,zip64:W,zip64UncompressedSize:N,zip64CompressedSize:U,zip64Offset:L,zip64DiskNumberStart:M,zipCrypto:O,dataDescriptor:I,directory:H,executable:P,versionMadeBy:V,rawComment:B,rawExtraField:Z,useWebWorkers:q,onstart:K,onprogress:G,onend:Y,signal:j,encryptionStrength:X,extendedTimestamp:J,msDosCompatible:Q,internalFileAttributes:$,externalFileAttributes:ee,useCompressionStream:te,passThrough:ne}=c,re={lock:s,versionMadeBy:V,zip64:W,directory:!!H,executable:!!P,filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:B,rawExtraFieldZip64:_,localExtraFieldZip64Length:z,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:F,rawExtraField:Z,extendedTimestamp:J,msDosCompatible:Q,internalFileAttributes:$,externalFileAttributes:ee,diskNumberStart:r};let{signature:se,uncompressedSize:ae}=c,ie=0;ne||(ae=0);const{writable:oe}=t;if(e){e.chunkSize=ye(o);const n=e.readable,r=e.size,s={options:{codecType:Et,level:C,rawPassword:R,password:A,encryptionStrength:X,zipCrypto:g&&O,passwordVerification:g&&O&&h>>8&255,signed:!ne,compressed:m&&!ne,encrypted:g&&!ne,useWebWorkers:q,useCompressionStream:te,transferStreams:!1},config:o,streamOptions:{signal:j,size:r,onstart:K,onprogress:G,onend:Y}};try{const e=await Vt({readable:n,writable:oe},s);ie=e.outputSize,t.size+=ie,ne||(ae=e.inputSize,se=e.signature)}catch(e){throw e.outputSize!==de&&(t.size+=e.outputSize),e}}return(({signature:e,compressedSize:t,uncompressedSize:n,headerInfo:r,dataDescriptorInfo:s},{zip64:i,zipCrypto:o,dataDescriptor:c})=>{const{headerView:l,encrypted:d}=r,{dataDescriptorView:u,dataDescriptorOffset:f}=s;d&&!o||e===de||(ns(l,10,e),c&&ns(u,f,e)),i?c&&(rs(u,f+4,a(t)),rs(u,f+12,a(n))):(ns(l,14,t),ns(l,18,n),c&&(ns(u,f+4,t),ns(u,f+8,n)))})({signature:se,compressedSize:ie,uncompressedSize:ae,headerInfo:l,dataDescriptorInfo:d},c),I&&await Xr(t,E),n.assign(re,{uncompressedSize:ae,compressedSize:ie,lastModDate:w,rawLastModDate:h,creationDate:T,lastAccessDate:D,encrypted:g,zipCrypto:O,size:u+ie,compressionMethod:b,version:y,headerArray:f,headerView:p,signature:se,extraFieldExtendedTimestampFlag:x,zip64UncompressedSize:N,zip64CompressedSize:U,zip64Offset:L,zip64DiskNumberStart:M}),re})(s,E,D,i,e.config,o);const{zip64:U}=D;if(F=!1,c.set(r,D),D.filename=r,_){const[n]=await y.all([v,E.writable.getWriter().close(),t]);await T(),x=!0,D.diskNumberStart=l.diskNumber,D.offset=e.offset-l.diskOffset,U&&jr(D),(({rawFilename:e,encrypted:t,zip64:n,localExtraFieldZip64Length:r,signature:s,compressedSize:i,uncompressedSize:o,offset:c,diskNumberStart:l,zip64UncompressedSize:d,zip64CompressedSize:u,zip64Offset:f,zip64DiskNumberStart:p},w,{dataDescriptor:h})=>{if(h||(t||ns(w,14,s),n||(ns(w,18,i),ns(w,22,o))),n&&r){let t=oe+is(e)+4;d&&(rs(w,t,a(o)),t+=8),u&&(rs(w,t,a(i)),t+=8),f&&(rs(w,t,a(c)),t+=8),p&&ns(w,t,l)}})(D,C,o),await A(z),await Xr(l,W),await n.stream().pipeTo(z,{preventClose:!0,preventAbort:!0,signal:h}),l.size+=E.size,x=!1}else D.offset=e.offset-R,U&&jr(D);if(D.offset>Y&&!U)throw new f(Vr);return e.offset+=D.size,D}catch(t){if(_&&x||!_&&F){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}_?e.offset+=E.size:e.offset=E.size}throw c.delete(r),t}finally{_&&e.bufferedWrites--,S&&S(),z&&z()}async function T(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new y(t=>z=()=>{e.writerLocked=!1,t()}),await t}async function A(e){is(g.localHeaderArray)>l.availableSize&&(l.availableSize=0,await Xr(e,new p))}})(e,r,s,{headerInfo:ge,dataDescriptorInfo:me,metadataSize:be},c)}finally{e.pendingEntriesSize-=$}return n.assign(_e,{name:r,comment:_,extraField:K}),new tr(_e)})(c,e,r,s),l.add(h),await h}catch(t){throw c.filenames.delete(e),t}finally{l.delete(h);const e=Gr.shift();e?e():Kr--}}remove(e){const{filenames:t,files:n}=this;if("string"==typeof e&&(e=n.get(e)),e&&e.filename!==de){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=new p,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await y.allSettled(t.from(r));return await(async(e,n,r)=>{const{files:s,writer:o}=e,{diskOffset:c}=o;let{diskNumber:l}=o,d=0,u=0,w=e.offset-c,h=s.size;for(const[,e]of s){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:r,rawComment:s,rawExtraFieldNTFS:a,rawExtraField:o,extendedTimestamp:c,extraFieldExtendedTimestampFlag:l,lastModDate:d}=e;let f;if(c){f=new p(9);const e=as(f);ts(e,0,se),ts(e,2,5),es(e,4,l),ns(e,5,i.floor(d.getTime()/1e3))}else f=new p;e.rawExtraFieldExtendedTimestamp=f,u+=46+is(t,s,n,r,a,f,o)}const g=new p(u),m=as(g);await xn(o);let y=0;for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:i,rawExtraFieldAES:c,rawExtraFieldExtendedTimestamp:l,rawExtraFieldNTFS:u,rawExtraField:f,rawComment:p,versionMadeBy:w,headerArray:h,headerView:b,zip64:_,zip64UncompressedSize:z,zip64CompressedSize:S,zip64DiskNumberStart:x,zip64Offset:k,internalFileAttributes:F,externalFileAttributes:E,diskNumberStart:v,uncompressedSize:D,compressedSize:T}=n,A=is(i,c,l,u,f);ns(m,d,$),ts(m,d+4,w),z||ns(b,18,D),S||ns(b,14,T),ss(g,h,d+6);let R=d+oe;if(ts(m,R,A),R+=2,ts(m,R,is(p)),R+=2,ts(m,R,_&&x?j:v),R+=2,ts(m,R,F),R+=2,E&&ns(m,R,E),R+=4,ns(m,R,_&&k?Y:t),R+=4,ss(g,a,R),R+=is(a),ss(g,i,R),R+=is(i),ss(g,c,R),R+=is(c),ss(g,l,R),R+=is(l),ss(g,u,R),R+=is(u),ss(g,f,R),R+=is(f),ss(g,p,R),d-y>o.availableSize&&(o.availableSize=0,await Xr(o,g.slice(y,d)),y=d),d=R,r.onprogress)try{await r.onprogress(e+1,s.size,new tr(n))}catch(e){}}await Xr(o,y?g.slice(y):g);let b=o.diskNumber;const{availableSize:_}=o;re>_&&b++;let z=Qr(e,r,Zn);if(w>Y||u>Y||h>j||b>j){if(!1===z)throw new f(Vr);z=!0}const S=new p(z?98:re),x=as(S);d=0,z&&(ns(x,0,te),rs(x,4,a(44)),ts(x,12,45),ts(x,14,45),ns(x,16,b),ns(x,20,l),rs(x,24,a(h)),rs(x,32,a(h)),rs(x,40,a(u)),rs(x,48,a(w)),ns(x,56,ne),rs(x,64,a(w)+a(u)),ns(x,72,b+1),Qr(e,r,lr,!0)&&(b=j,l=j),h=j,w=Y,u=Y,d+=76),ns(x,d,ee),ts(x,d+4,b),ts(x,d+6,l),ts(x,d+8,h),ts(x,d+10,h),ns(x,d+12,u),ns(x,d+16,w);const k=is(n);if(k){if(k>j)throw new f(Ur);ts(x,d+20,k)}await Xr(o,S),k&&await Xr(o,n)})(this,e,n),Qr(this,n,cr)||await o.getWriter().close(),s.getData?s.getData():o}}function jr({compressedSize:e,uncompressedSize:t,offset:n,diskNumberStart:r,zip64UncompressedSize:s,zip64CompressedSize:i,zip64Offset:o,zip64DiskNumberStart:c,rawExtraFieldZip64:l}){const d=as(l);let u=4;s&&(rs(d,u,a(t)),u+=8),i&&(rs(d,u,a(e)),u+=8),o&&(rs(d,u,a(n)),u+=8),c&&ns(d,u,r)}async function Xr(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=is(t),await r.write(t)}finally{r.releaseLock()}}function Jr(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function Qr(e,t,n,r){const s=t[n]===de?e.options[n]:t[n];return s===de?r:s}function $r(e){return e+5*(i.floor(e/16383)+1)}function es(e,t,n){e.setUint8(t,n)}function ts(e,t,n){e.setUint16(t,n,!0)}function ns(e,t,n){e.setUint32(t,n,!0)}function rs(e,t,n){e.setBigUint64(t,n,!0)}function ss(e,t,n){e.set(t,n)}function as(e){return new g(e.buffer)}function is(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function os({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:s,lastModDate:a,rawFilename:i,zip64CompressedSize:o,zip64UncompressedSize:c,extraFieldLength:l}){const d=new p(26),u=as(d);ts(u,0,e),ts(u,2,t),ts(u,4,n);const f=new h(1),w=as(f);ts(w,0,(a.getHours()<<6|a.getMinutes())<<5|a.getSeconds()/2),ts(w,2,(a.getFullYear()-1980<<4|a.getMonth()+1)<<5|a.getDate());const g=f[0];return ns(u,6,g),(o||s!==de)&&ns(u,14,o?Y:s),(c||r!==de)&&ns(u,18,c?Y:r),ts(u,22,is(i)),ts(u,24,l),{headerArray:d,headerView:u,rawLastModDate:g}}function cs(e,t,n,r,s){let a=0;return t&&(a|=ae),n&&(a|=8),8!=s&&9!=s||(0>e||e>3||(a|=6),e>3&&5>=e&&(a|=4),9==e&&(a|=2)),r&&(a|=1),a}be({Deflate:function(e){const t=new G,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(i.floor(r/16383)+1);var r;const s=new p(n);let a=e?e.level:-1;void 0===a&&(a=-1),t.deflateInit(a),t.next_out=s,this.append=(e,r)=>{let a,i,o=0,c=0,l=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,a=t.deflate(0),0!=a)throw new f("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?d.push(new p(s)):d.push(s.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?(i=new p(l),d.forEach(e=>{i.set(e,c),c+=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=nn,e.BlobWriter=rn,e.Data64URIReader=class extends en{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:i.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,s=new p(t),a=4*i.floor(e/3),o=atob(r.substring(a+n,4*i.ceil((e+t)/3)+n)),c=e-3*i.floor(a/4);let l=0;for(let e=c;c+t>e&&e<o.length;e++)s[e-c]=o.charCodeAt(e),l++;return l<s.length?s.subarray(0,l):s}},e.Data64URIWriter=class extends tn{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,s=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*i.floor((a+e.length)/3)-a;n++)s+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.pending+=r.fromCharCode(e[n]);s.length&&(s.length>2?t.data+=x(s):t.pending+=s)}getData(){return this.data+x(this.pending)}},e.ERR_DUPLICATED_NAME=Nr,e.ERR_HTTP_RANGE=qt,e.ERR_INVALID_COMMENT=Ur,e.ERR_INVALID_ENCRYPTION_STRENGTH=Ir,e.ERR_INVALID_ENTRY_COMMENT=Lr,e.ERR_INVALID_ENTRY_NAME=Mr,e.ERR_INVALID_EXTRAFIELD_DATA=Pr,e.ERR_INVALID_EXTRAFIELD_TYPE=Hr,e.ERR_INVALID_VERSION=Or,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Kt,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=Br,e.ERR_UNSUPPORTED_FORMAT=Vr,e.ERR_WRITER_NOT_INITIALIZED=Gt,e.ERR_ZIP_NOT_EMPTY=Zr,e.GenericReader=zn,e.GenericWriter=Sn,e.HttpRangeReader=class extends yn{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=yn,e.Reader=en,e.SplitDataReader=bn,e.SplitDataWriter=_n,e.SplitZipReader=Fn,e.SplitZipWriter=En,e.TextReader=class extends nn{constructor(e){super(new m([e],{type:"text/plain"}))}},e.TextWriter=class extends rn{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,a)=>{n.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>a(t.error)}),t.readAsText(r,e)})}}},e.Uint8ArrayReader=class extends en{constructor(e){super(),e=new p(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends tn{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=tn,e.ZipWriter=Yr,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new k;this.readable=t,this.zipWriter=new Yr(n,e)}transform(e){const{readable:t,writable:n}=new k({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new k;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=be,e.getMimeType=()=>"application/octet-stream",e.initStream=xn,e.readUint8Array=kn,e.terminateWorkers=async()=>{await y.allSettled(It.map(e=>(Bt(e),e.terminate())))}});