@zip.js/zip.js 2.6.9 → 2.6.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/dist/zip-fs-full.js +9 -3
  2. package/dist/zip-fs-full.min.js +1 -1
  3. package/dist/zip-fs.js +9 -3
  4. package/dist/zip-fs.min.js +1 -1
  5. package/dist/zip-full.js +9 -3
  6. package/dist/zip-full.min.js +1 -1
  7. package/dist/zip-no-worker-deflate.min.js +1 -1
  8. package/dist/zip-no-worker.min.js +1 -1
  9. package/dist/zip.js +9 -3
  10. package/dist/zip.min.js +1 -1
  11. package/index.d.ts +71 -3
  12. package/lib/core/zip-writer.js +9 -3
  13. package/package.json +16 -7
  14. package/tests/all/loader.html +2 -4
  15. package/tests/all/test-abort-signal-read.js +0 -1
  16. package/tests/all/test-abort-signal-write.js +0 -1
  17. package/tests/all/test-array.js +3 -1
  18. package/tests/all/test-base64.js +3 -1
  19. package/tests/all/test-blob.js +5 -1
  20. package/tests/all/test-codecs-interoperability.js +3 -1
  21. package/tests/all/test-crc.js +7 -12
  22. package/tests/all/test-crypto.js +3 -1
  23. package/tests/all/test-custom-io.js +3 -1
  24. package/tests/all/test-data-descriptor-signature.js +7 -1
  25. package/tests/all/test-data-descriptor.js +7 -1
  26. package/tests/all/test-duplicated-filename.js +24 -0
  27. package/tests/all/test-empty.js +3 -1
  28. package/tests/all/test-extended-timestamp.js +3 -1
  29. package/tests/all/test-extra-field.js +3 -2
  30. package/tests/all/test-fflate-no-worker.js +3 -1
  31. package/tests/all/test-fflate.js +3 -1
  32. package/tests/all/test-fs-base64.js +3 -1
  33. package/tests/all/test-fs-export-options.js +3 -1
  34. package/tests/all/test-fs-http-import.js +3 -1
  35. package/tests/all/test-fs-http-reader.js +3 -1
  36. package/tests/all/test-fs-replace.js +3 -1
  37. package/tests/all/test-fs-streams.js +3 -1
  38. package/tests/all/test-fs-text.js +3 -1
  39. package/tests/all/test-fs-unzip-store.js +3 -1
  40. package/tests/all/test-fs.js +3 -1
  41. package/tests/all/test-http-crypto.js +3 -2
  42. package/tests/all/test-http-range.js +3 -2
  43. package/tests/all/test-http-zip64.js +3 -2
  44. package/tests/all/test-invalid-crc.js +3 -1
  45. package/tests/all/test-no-worker.js +3 -1
  46. package/tests/all/test-pako-no-worker.js +3 -1
  47. package/tests/all/test-pako.js +3 -1
  48. package/tests/all/test-parallel-reads.js +3 -1
  49. package/tests/all/test-parallel-writes-auto-buffered.js +3 -1
  50. package/tests/all/test-parallel-writes-ordered.js +4 -2
  51. package/tests/all/test-parallel-writes.js +3 -1
  52. package/tests/all/test-readable-stream.js +8 -12
  53. package/tests/all/test-readable-zip-stream.js +3 -2
  54. package/tests/all/test-safe-closing.js +3 -1
  55. package/tests/all/test-store.js +9 -1
  56. package/tests/all/test-sw.js +0 -1
  57. package/tests/all/test-worker-timeout.js +7 -12
  58. package/tests/all/test-wrapped.js +4 -2
  59. package/tests/all/test-writable-stream.js +23 -25
  60. package/tests/all/test-zip64-auto.js +3 -1
  61. package/tests/all/test-zip64-crypto.js +3 -1
  62. package/tests/all/test-zip64.js +3 -1
  63. package/tests/all/test-zipcrypto.js +3 -1
  64. package/tests/node-runner.js +17 -9
  65. package/tests/tests-data.js +1 -0
  66. package/build.sh +0 -3
  67. package/tests/run-tests.sh +0 -3
@@ -1 +1 @@
1
- ((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:r,BigInt:s,Math:i,Date:a,Map:o,URL:l,Error:c,Uint8Array:u,Uint16Array:d,Uint32Array:h,DataView:f,Blob:p,Promise:g,TextEncoder:w,TextDecoder:_,document:y,crypto:m,btoa:b,TransformStream:x,ReadableStream:v,WritableStream:k,CompressionStream:R,DecompressionStream:z,navigator:S}=globalThis,T=(()=>{const e=-2;function n(e){return r(e.map((([e,n])=>new t(e).fill(n,0,e))))}function r(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?r(n):n)),[])}const s=[0,1,2,3].concat(...n([[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 a(){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,u=-1;for(n.heap_len=0,n.heap_max=573,o=0;a>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=u=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>u?++u:0,r[2*c]=1,n.depth[c]=0,n.opt_len--,s&&(n.static_len-=s[2*c+1]);for(e.max_code=u,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,i=e.stat_desc.extra_base,a=e.stat_desc.max_length;let o,l,c,u,d,h,f=0;for(u=0;15>=u;u++)t.bl_count[u]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)l=t.heap[o],u=n[2*n[2*l+1]+1]+1,u>a&&(u=a,f++),n[2*l+1]=u,l>e.max_code||(t.bl_count[u]++,d=0,i>l||(d=s[l-i]),h=n[2*l],t.opt_len+=h*(u+d),r&&(t.static_len+=h*(r[2*l+1]+d)));if(0!==f){do{for(u=a-1;0===t.bl_count[u];)u--;t.bl_count[u]--,t.bl_count[u+1]+=2,t.bl_count[a]--,f-=2}while(f>0);for(u=a;0!==u;u--)for(l=t.bl_count[u];0!==l;)c=t.heap[--o],c>e.max_code||(n[2*c+1]!=u&&(t.opt_len+=(u-n[2*c+1])*n[2*c],n[2*c+1]=u),l--)}})(n),((e,n,r)=>{const s=[];let i,a,o,l=0;for(i=1;15>=i;i++)s[i]=l=l+r[i-1]<<1;for(a=0;n>=a;a++)o=e[2*a+1],0!==o&&(e[2*a]=t(s[o]++,o))})(r,e.max_code,n.bl_count)}}function o(e,t,n,r,s){const i=this;i.static_tree=e,i.extra_bits=t,i.extra_base=n,i.elems=r,i.max_length=s}a._length_code=[0,1,2,3,4,5,6,7].concat(...n([[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]])),a.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],a.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],a.d_code=e=>256>e?s[e]:s[256+(e>>>7)],a.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],a.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],a.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],a.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const l=n([[144,8],[112,9],[24,7],[8,8]]);o.static_ltree=r([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 h=n([[30,5]]);function f(e,t,n,r,s){const i=this;i.good_length=e,i.max_lazy=t,i.nice_length=n,i.max_chain=r,i.func=s}o.static_dtree=r([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,h[t]]))),o.static_l_desc=new o(o.static_ltree,a.extra_lbits,257,286,15),o.static_d_desc=new o(o.static_dtree,a.extra_dbits,0,30,15),o.static_bl_desc=new o(null,a.extra_blbits,0,19,7);const p=[new f(0,0,0,0,0),new f(4,4,8,4,1),new f(4,5,16,8,1),new f(4,6,32,32,1),new f(4,4,16,16,2),new f(8,16,32,32,2),new f(8,16,128,128,2),new f(8,32,128,256,2),new f(32,128,258,1024,2),new f(32,258,258,4096,2)],g=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],w=113,_=666,y=262;function m(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function b(){const t=this;let n,r,s,l,c,h,f,b,x,v,k,R,z,S,T,A,E,F,D,C,W,U,B,M,H,I,q,L,N,V,P,O,K;const Z=new a,j=new a,X=new a;let Y,G,J,Q,$,ee;function te(){let e;for(e=0;286>e;e++)P[2*e]=0;for(e=0;30>e;e++)O[2*e]=0;for(e=0;19>e;e++)K[2*e]=0;P[512]=1,t.opt_len=t.static_len=0,G=J=0}function ne(e,t){let n,r=-1,s=e[1],i=0,a=7,o=4;0===s&&(a=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)n=s,s=e[2*(l+1)+1],++i<a&&n==s||(o>i?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?(a=138,o=3):n==s?(a=6,o=3):(a=7,o=4))}function re(e){t.pending_buf[t.pending++]=e}function se(e){re(255&e),re(e>>>8&255)}function ie(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 ae(e,t){const n=2*e;ie(65535&t[n],65535&t[n+1])}function oe(e,t){let n,r,s=-1,i=e[1],a=0,o=7,l=4;for(0===i&&(o=138,l=3),n=0;t>=n;n++)if(r=i,i=e[2*(n+1)+1],++a>=o||r!=i){if(l>a)do{ae(r,K)}while(0!=--a);else 0!==r?(r!=s&&(ae(r,K),a--),ae(16,K),ie(a-3,2)):a>10?(ae(18,K),ie(a-11,7)):(ae(17,K),ie(a-3,3));a=0,s=r,0===i?(o=138,l=3):r==i?(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(e,n){let r,s,o;if(t.dist_buf[G]=e,t.lc_buf[G]=255&n,G++,0===e?P[2*n]++:(J++,e--,P[2*(a._length_code[n]+256+1)]++,O[2*a.d_code(e)]++),0==(8191&G)&&q>2){for(r=8*G,s=W-E,o=0;30>o;o++)r+=O[2*o]*(5+a.extra_dbits[o]);if(r>>>=3,J<i.floor(G/2)&&r<i.floor(s/2))return!0}return G==Y-1}function ue(e,n){let r,s,i,o,l=0;if(0!==G)do{r=t.dist_buf[l],s=t.lc_buf[l],l++,0===r?ae(s,e):(i=a._length_code[s],ae(i+256+1,e),o=a.extra_lbits[i],0!==o&&(s-=a.base_length[i],ie(s,o)),r--,i=a.d_code(r),ae(i,n),o=a.extra_dbits[i],0!==o&&(r-=a.base_dist[i],ie(r,o)))}while(G>l);ae(256,e),Q=e[513]}function de(){ee>8?se($):ee>0&&re(255&$),$=0,ee=0}function he(e,n,r){ie(0+(r?1:0),3),((e,n)=>{de(),Q=8,se(n),se(~n),t.pending_buf.set(b.subarray(e,e+n),t.pending),t.pending+=n})(e,n)}function fe(e){((e,n,r)=>{let s,i,l=0;q>0?(Z.build_tree(t),j.build_tree(t),l=(()=>{let e;for(ne(P,Z.max_code),ne(O,j.max_code),X.build_tree(t),e=18;e>=3&&0===K[2*a.bl_order[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(),s=t.opt_len+3+7>>>3,i=t.static_len+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==e?i==s?(ie(2+(r?1:0),3),ue(o.static_ltree,o.static_dtree)):(ie(4+(r?1:0),3),((e,t,n)=>{let r;for(ie(e-257,5),ie(t-1,5),ie(n-4,4),r=0;n>r;r++)ie(K[2*a.bl_order[r]+1],3);oe(P,e-1),oe(O,t-1)})(Z.max_code+1,j.max_code+1,l+1),ue(P,O)):he(e,n,r),te(),r&&de()})(0>E?-1:E,W-E,e),E=W,n.flush_pending()}function pe(){let e,t,r,s;do{if(s=x-B-W,0===s&&0===W&&0===B)s=c;else if(-1==s)s--;else if(W>=c+c-y){b.set(b.subarray(c,c+c),0),U-=c,W-=c,E-=c,e=z,r=e;do{t=65535&k[--r],k[r]=c>t?0:t-c}while(0!=--e);e=c,r=e;do{t=65535&v[--r],v[r]=c>t?0:t-c}while(0!=--e);s+=c}if(0===n.avail_in)return;e=n.read_buf(b,W+B,s),B+=e,3>B||(R=255&b[W],R=(R<<A^255&b[W+1])&T)}while(y>B&&0!==n.avail_in)}function ge(e){let t,n,r=H,s=W,i=M;const a=W>c-y?W-(c-y):0;let o=V;const l=f,u=W+258;let d=b[s+i-1],h=b[s+i];N>M||(r>>=2),o>B&&(o=B);do{if(t=e,b[t+i]==h&&b[t+i-1]==d&&b[t]==b[s]&&b[++t]==b[s+1]){s+=2,t++;do{}while(b[++s]==b[++t]&&b[++s]==b[++t]&&b[++s]==b[++t]&&b[++s]==b[++t]&&b[++s]==b[++t]&&b[++s]==b[++t]&&b[++s]==b[++t]&&b[++s]==b[++t]&&u>s);if(n=258-(u-s),s=u-258,n>i){if(U=e,i=n,n>=o)break;d=b[s+i-1],h=b[s+i]}}}while((e=65535&v[e&l])>a&&0!=--r);return i>B?B:i}t.depth=[],t.bl_count=[],t.heap=[],P=[],O=[],K=[],t.pqdownheap=(e,n)=>{const r=t.heap,s=r[n];let i=n<<1;for(;i<=t.heap_len&&(i<t.heap_len&&m(e,r[i+1],r[i],t.depth)&&i++,!m(e,s,r[i],t.depth));)r[n]=r[i],n=i,i<<=1;r[n]=s},t.deflateInit=(n,a,g,_,y,m)=>(_||(_=8),y||(y=8),m||(m=0),n.msg=null,-1==a&&(a=6),1>y||y>9||8!=_||9>g||g>15||0>a||a>9||0>m||m>2?e:(n.dstate=t,h=g,c=1<<h,f=c-1,S=y+7,z=1<<S,T=z-1,A=i.floor((S+3-1)/3),b=new u(2*c),v=[],k=[],Y=1<<y+6,t.pending_buf=new u(4*Y),s=4*Y,t.dist_buf=new d(Y),t.lc_buf=new u(Y),q=a,L=m,(e=>(e.total_in=e.total_out=0,e.msg=null,t.pending=0,t.pending_out=0,r=w,l=0,Z.dyn_tree=P,Z.stat_desc=o.static_l_desc,j.dyn_tree=O,j.stat_desc=o.static_d_desc,X.dyn_tree=K,X.stat_desc=o.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{x=2*c,k[z-1]=0;for(let e=0;z-1>e;e++)k[e]=0;I=p[q].max_lazy,N=p[q].good_length,V=p[q].nice_length,H=p[q].max_chain,W=0,E=0,B=0,F=M=2,C=0,R=0})(),0))(n))),t.deflateEnd=()=>42!=r&&r!=w&&r!=_?e:(t.lc_buf=null,t.dist_buf=null,t.pending_buf=null,k=null,v=null,b=null,t.dstate=null,r==w?-3:0),t.deflateParams=(t,n,r)=>{let s=0;return-1==n&&(n=6),0>n||n>9||0>r||r>2?e:(p[q].func!=p[n].func&&0!==t.total_in&&(s=t.deflate(1)),q!=n&&(q=n,I=p[q].max_lazy,N=p[q].good_length,V=p[q].nice_length,H=p[q].max_chain),L=r,s)},t.deflateSetDictionary=(t,n,s)=>{let i,a=s,o=0;if(!n||42!=r)return e;if(3>a)return 0;for(a>c-y&&(a=c-y,o=s-a),b.set(n.subarray(o,o+a),0),W=a,E=a,R=255&b[0],R=(R<<A^255&b[1])&T,i=0;a-3>=i;i++)R=(R<<A^255&b[i+2])&T,v[i&f]=k[R],k[R]=i;return 0},t.deflate=(i,a)=>{let u,d,m,x,S;if(a>4||0>a)return e;if(!i.next_out||!i.next_in&&0!==i.avail_in||r==_&&4!=a)return i.msg=g[4],e;if(0===i.avail_out)return i.msg=g[7],-5;var H;if(n=i,x=l,l=a,42==r&&(d=8+(h-8<<4)<<8,m=(q-1&255)>>1,m>3&&(m=3),d|=m<<6,0!==W&&(d|=32),d+=31-d%31,r=w,re((H=d)>>8&255),re(255&H)),0!==t.pending){if(n.flush_pending(),0===n.avail_out)return l=-1,0}else if(0===n.avail_in&&x>=a&&4!=a)return n.msg=g[7],-5;if(r==_&&0!==n.avail_in)return i.msg=g[7],-5;if(0!==n.avail_in||0!==B||0!=a&&r!=_){switch(S=-1,p[q].func){case 0:S=(e=>{let t,r=65535;for(r>s-5&&(r=s-5);;){if(1>=B){if(pe(),0===B&&0==e)return 0;if(0===B)break}if(W+=B,B=0,t=E+r,(0===W||W>=t)&&(B=W-t,W=t,fe(!1),0===n.avail_out))return 0;if(W-E>=c-y&&(fe(!1),0===n.avail_out))return 0}return fe(4==e),0===n.avail_out?4==e?2:0:4==e?3:1})(a);break;case 1:S=(e=>{let t,r=0;for(;;){if(y>B){if(pe(),y>B&&0==e)return 0;if(0===B)break}if(3>B||(R=(R<<A^255&b[W+2])&T,r=65535&k[R],v[W&f]=k[R],k[R]=W),0===r||(W-r&65535)>c-y||2!=L&&(F=ge(r)),3>F)t=ce(0,255&b[W]),B--,W++;else if(t=ce(W-U,F-3),B-=F,F>I||3>B)W+=F,F=0,R=255&b[W],R=(R<<A^255&b[W+1])&T;else{F--;do{W++,R=(R<<A^255&b[W+2])&T,r=65535&k[R],v[W&f]=k[R],k[R]=W}while(0!=--F);W++}if(t&&(fe(!1),0===n.avail_out))return 0}return fe(4==e),0===n.avail_out?4==e?2:0:4==e?3:1})(a);break;case 2:S=(e=>{let t,r,s=0;for(;;){if(y>B){if(pe(),y>B&&0==e)return 0;if(0===B)break}if(3>B||(R=(R<<A^255&b[W+2])&T,s=65535&k[R],v[W&f]=k[R],k[R]=W),M=F,D=U,F=2,0!==s&&I>M&&c-y>=(W-s&65535)&&(2!=L&&(F=ge(s)),5>=F&&(1==L||3==F&&W-U>4096)&&(F=2)),3>M||F>M)if(0!==C){if(t=ce(0,255&b[W-1]),t&&fe(!1),W++,B--,0===n.avail_out)return 0}else C=1,W++,B--;else{r=W+B-3,t=ce(W-1-D,M-3),B-=M-1,M-=2;do{++W>r||(R=(R<<A^255&b[W+2])&T,s=65535&k[R],v[W&f]=k[R],k[R]=W)}while(0!=--M);if(C=0,F=2,W++,t&&(fe(!1),0===n.avail_out))return 0}}return 0!==C&&(t=ce(0,255&b[W-1]),C=0),fe(4==e),0===n.avail_out?4==e?2:0:4==e?3:1})(a)}if(2!=S&&3!=S||(r=_),0==S||2==S)return 0===n.avail_out&&(l=-1),0;if(1==S){if(1==a)ie(2,3),ae(256,o.static_ltree),le(),9>1+Q+10-ee&&(ie(2,3),ae(256,o.static_ltree),le()),Q=7;else if(he(0,0,!1),3==a)for(u=0;z>u;u++)k[u]=0;if(n.flush_pending(),0===n.avail_out)return l=-1,0}}return 4!=a?0:1}}function x(){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}return x.prototype={deflateInit(e,t){const n=this;return n.dstate=new b,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(t){const n=this;return n.dstate?n.dstate.deflate(n,t):e},deflateEnd(){const t=this;if(!t.dstate)return e;const n=t.dstate.deflateEnd();return t.dstate=null,n},deflateParams(t,n){const r=this;return r.dstate?r.dstate.deflateParams(r,t,n):e},deflateSetDictionary(t,n){const r=this;return r.dstate?r.dstate.deflateSetDictionary(r,t,n):e},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))}},function(e){const t=new x,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(i.floor(r/16383)+1);var r;const s=new u(n);let a=e?e.level:-1;void 0===a&&(a=-1),t.deflateInit(a),t.next_out=s,this.append=(e,r)=>{let i,a,o=0,l=0,d=0;const h=[];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,i=t.deflate(0),0!=i)throw new c("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?h.push(new u(s)):h.push(s.slice(0,t.next_out_index))),d+=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 h.length>1?(a=new u(d),h.forEach((e=>{a.set(e,l),l+=e.length}))):a=h[0]||new u,a}},this.flush=()=>{let e,r,i=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 c("deflating: "+t.msg);n-t.avail_out>0&&o.push(s.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 u(a),o.forEach((e=>{r.set(e,i),i+=e.length})),r}}})(),A=void 0,E={chunkSize:524288,maxWorkers:void 0!==S&&S.hardwareConcurrency||2,terminateWorkerTimeout:5e3,useWebWorkers:!0,workerScripts:void 0},F=n.assign({},E);function D(){return F}function C(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,Deflate:l,Inflate:u,workerScripts:d}=e;if(n!==A&&(F.baseURL=n),r!==A&&(F.chunkSize=r),s!==A&&(F.maxWorkers=s),i!==A&&(F.terminateWorkerTimeout=i),a!==A&&(F.useCompressionStream=a),o!==A&&(F.useWebWorkers=o),l!==A&&(F.Deflate=l),u!==A&&(F.Inflate=u),d!==A){const{deflate:e,inflate:n}=d;if((e||n)&&(F.workerScripts||(F.workerScripts={})),e){if(!t.isArray(e))throw new c("workerScripts.deflate must be an array");F.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new c("workerScripts.inflate must be an array");F.workerScripts.inflate=n}}}const W=[];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;W[e]=t}class U{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^W[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class B extends x{constructor(){super({start(){this.crc32=new U},transform(e){this.crc32.append(e)},flush(e){const t=new u(4);new f(t.buffer).setUint32(0,this.crc32.get()),e.enqueue(t)}})}}function M(e){if(void 0===w){const t=new u((e=unescape(encodeURIComponent(e))).length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new w).encode(e)}const H={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=H.getPartial(n);return 32===r?e.concat(t):H._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)+H.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]=H.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,i=H.getPartial(s);return r.push(H.partial(t+i&31,t+i>32?n:r.pop(),1)),r}},I={bytes:{fromBits(e){const t=H.bitLength(e)/8,n=new u(t);let r;for(let s=0;t>s;s++)0==(3&s)&&(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],3==(3&n)&&(t.push(r),r=0);return 3&n&&t.push(H.partial(8*(3&n),r)),t}}},q={sha1:function(e){e?(this._h=e._h.slice(0),this._buffer=e._buffer.slice(0),this._length=e._length):this.reset()}};q.sha1.prototype={blockSize:512,reset(){const e=this;return e._h=this._init.slice(0),e._buffer=[],e._length=0,e},update(e){const t=this;"string"==typeof e&&(e=I.utf8String.toBits(e));const n=t._buffer=H.concat(t._buffer,e),r=t._length,s=t._length=r+H.bitLength(e);if(s>9007199254740991)throw new c("Cannot hash more than 2^53 - 1 bits");const i=new h(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=H.concat(t,[H.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(i.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n},_init:[1732584193,4023233417,2562383102,271733878,3285377520],_key:[1518500249,1859775393,2400959708,3395469782],_f:(e,t,n,r)=>e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r,_S:(e,t)=>t<<e|t>>>32-e,_block(e){const n=this,r=n._h,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let a=r[0],o=r[1],l=r[2],c=r[3],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,a)+n._f(e,o,l,c)+u+s[e]+n._key[i.floor(e/20)]|0;u=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]+u|0}};const L={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}},N={importKey:e=>new N.hmacSha1(I.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new c("invalid params to pbkdf2");const s=1+(r>>5)<<2;let i,a,o,l,u;const d=new ArrayBuffer(s),h=new f(d);let p=0;const g=H;for(t=I.bytes.toBits(t),u=1;(s||1)>p;u++){for(i=a=e.encrypt(g.concat(t,[u])),o=1;n>o;o++)for(a=e.encrypt(a),l=0;l<a.length;l++)i[l]^=a[l];for(o=0;(s||1)>p&&o<i.length;o++)h.setInt32(p,i[o]),p+=4}return d.slice(0,r/8)},hmacSha1:class{constructor(e){const t=this,n=t._hash=q.sha1,r=[[],[]],s=n.prototype.blockSize/32;t._baseHash=[new n,new n],e.length>s&&(e=n.hash(e));for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new c("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},V=void 0!==m&&"function"==typeof m.getRandomValues,P="Invalid password";function O(e){return V?m.getRandomValues(e):L.getRandomValues(e)}const K=16,Z={name:"PBKDF2"},j=n.assign({hash:{name:"HMAC"}},Z),X=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Z),Y=["deriveBits"],G=[8,12,16],J=[16,24,32],Q=10,$=[0,0,0,0],ee="undefined",te="function",ne=typeof m!=ee,re=ne&&typeof m.subtle!=ee,se=ne&&re&&typeof m.subtle.importKey==te,ie=ne&&re&&typeof m.subtle.deriveBits==te,ae=I.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 i,a,o,l=1;if(4!==s&&6!==s&&8!==s)throw new c("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^l<<24,l=l<<1^283*(l>>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,l,c;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,c=s[l=s[o=s[u]]];let d=16843009*c^65537*l^257*o^16843008*u,h=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][u]=h=h<<24^h>>>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 c("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],l=i[2],u=i[3],d=i[4];let h,f,p,g=e[0]^n[0],w=e[t?3:1]^n[1],_=e[2]^n[2],y=e[t?1:3]^n[3],m=4;for(let e=0;r>e;e++)h=a[g>>>24]^o[w>>16&255]^l[_>>8&255]^u[255&y]^n[m],f=a[w>>>24]^o[_>>16&255]^l[y>>8&255]^u[255&g]^n[m+1],p=a[_>>>24]^o[y>>16&255]^l[g>>8&255]^u[255&w]^n[m+2],y=a[y>>>24]^o[g>>16&255]^l[w>>8&255]^u[255&_]^n[m+3],m+=4,g=h,w=f,_=p;for(let e=0;4>e;e++)s[t?3&-e:e]=d[g>>>24]<<24^d[w>>16&255]<<16^d[_>>8&255]<<8^d[255&y]^n[m++],h=g,g=w,w=_,_=y,y=h;return s}},le=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=H.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 H.clamp(t,s)}},ce=N.hmacSha1;class ue extends x{constructor(e,r,s){let i;super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:e,signed:r,strength:s-1,pending:new u})},async transform(e,n){const r=this;if(r.password){const n=r.password;r.password=null;const s=ge(e,0,G[r.strength]+2);await(async(e,t,n)=>{await fe(e,n,ge(t,0,G[e.strength]));const r=ge(t,G[e.strength]),s=e.keys.passwordVerification;if(s[0]!=r[0]||s[1]!=r[1])throw new c(P)})(r,s,n),r.ctr=new le(new oe(r.keys.key),t.from($)),r.hmac=new ce(r.keys.authentication),e=ge(e,G[r.strength]+2),r.resolveReady()}else await r.ready;const s=new u(e.length-Q-(e.length-Q)%K);n.enqueue(he(r,e,s,0,Q,!0))},async flush(e){const t=this;await t.ready;const n=t.pending,r=ge(n,0,n.length-Q),s=ge(n,n.length-Q);let a=new u;if(r.length){const e=_e(ae,r);t.hmac.update(e);const n=t.ctr.update(e);a=we(ae,n)}if(i.valid=!0,t.signed){const e=ge(we(ae,t.hmac.digest()),0,Q);for(let t=0;Q>t;t++)e[t]!=s[t]&&(i.valid=!1)}e.enqueue(a)}}),i=this}}class de extends x{constructor(e,r){let s;super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:e,strength:r-1,pending:new u})},async transform(e,n){const r=this;let s=new u;if(r.password){const e=r.password;r.password=null,s=await(async(e,t)=>{const n=O(new u(G[e.strength]));return await fe(e,t,n),pe(n,e.keys.passwordVerification)})(r,e),r.ctr=new le(new oe(r.keys.key),t.from($)),r.hmac=new ce(r.keys.authentication),r.resolveReady()}else await r.ready;const i=new u(s.length+e.length-e.length%K);i.set(s,0),n.enqueue(he(r,e,i,s.length,0))},async flush(e){const t=this;await t.ready;let n=new u;if(t.pending.length){const e=t.ctr.update(_e(ae,t.pending));t.hmac.update(e),n=we(ae,e)}s.signature=we(ae,t.hmac.digest()).slice(0,Q),e.enqueue(pe(n,s.signature))}}),s=this}}function he(e,t,n,r,s,i){const a=t.length-s;let o;for(e.pending.length&&(t=pe(e.pending,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new u(t)).set(n,0)}return e})(n,a-a%K)),o=0;a-K>=o;o+=K){const s=_e(ae,ge(t,o,o+K));i&&e.hmac.update(s);const a=e.ctr.update(s);i||e.hmac.update(a),n.set(we(ae,a),o+r)}return e.pending=ge(t,o),n}async function fe(e,t,r){const s=M(t),i=await((e,t,n,r,s)=>se?m.subtle.importKey("raw",t,n,!1,s):N.importKey(t))(0,s,j,0,Y),a=await(async(e,t,n)=>ie?await m.subtle.deriveBits(e,t,n):N.pbkdf2(t,e.salt,X.iterations,n))(n.assign({salt:r},X),i,8*(2*J[e.strength]+2)),o=new u(a);e.keys={key:_e(ae,ge(o,0,J[e.strength])),authentication:_e(ae,ge(o,J[e.strength],2*J[e.strength])),passwordVerification:ge(o,2*J[e.strength])}}function pe(e,t){let n=e;return e.length+t.length&&(n=new u(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function ge(e,t,n){return e.subarray(t,n)}function we(e,t){return e.fromBits(t)}function _e(e,t){return e.toBits(t)}class ye extends x{constructor(e,t){let r;super({start(){n.assign(this,{password:e,passwordVerification:t}),ve(this,e)},transform(e,t){const n=this;if(n.password){const t=be(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new c(P);e=e.subarray(12)}t.enqueue(be(n,e))},flush(){r.valid=!0}}),r=this}}class me extends x{constructor(e,t){super({start(){n.assign(this,{password:e,passwordVerification:t}),ve(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=O(new u(12));t[11]=n.passwordVerification,r=new u(e.length+t.length),r.set(xe(n,t),0),s=12}else r=new u(e.length),s=0;r.set(xe(n,e),s),t.enqueue(r)},flush(){}})}}function be(e,t){const n=new u(t.length);for(let r=0;r<t.length;r++)n[r]=Re(e)^t[r],ke(e,n[r]);return n}function xe(e,t){const n=new u(t.length);for(let r=0;r<t.length;r++)n[r]=Re(e)^t[r],ke(e,t[r]);return n}function ve(e,t){e.keys=[305419896,591751049,878082192],e.crcKey0=new U(e.keys[0]),e.crcKey2=new U(e.keys[2]);for(let n=0;n<t.length;n++)ke(e,t.charCodeAt(n))}function ke(e,t){e.crcKey0.append([t]),e.keys[0]=~e.crcKey0.get(),e.keys[1]=Se(e.keys[1]+ze(e.keys[0])),e.keys[1]=Se(i.imul(e.keys[1],134775813)+1),e.crcKey2.append([e.keys[1]>>>24]),e.keys[2]=~e.crcKey2.get()}function Re(e){const t=2|e.keys[2];return ze(i.imul(t,1^t)>>>8)}function ze(e){return 255&e}function Se(e){return 4294967295&e}class Te extends x{constructor(e,t){let n;super({start(){n=new e(t)},transform(e,t){e=n.append(e),t.enqueue(e)},flush(e){const t=n.flush();t&&e.enqueue(t)}})}}const Ae="Invalid signature",Ee="deflate-raw",Fe="undefined",De=typeof R==Fe,Ce=typeof z==Fe;let We=!0,Ue=!0;class Be extends x{constructor(e,t,{chunkSize:n},...r){super({},...r);const{compressed:s,encrypted:i,useCompressionStream:a,password:o,passwordVerification:l,encryptionStrength:c,zipCrypto:u,signed:d,level:h}=t,p=this;let g,w,_=Ie(super.readable);if(i&&!u||!d||([_,g]=_.tee(),g=g.pipeThrough(new B)),s)if(void 0!==a&&!a||De&&!Ue)_=He(e,_,{chunkSize:n,level:h});else try{_=_.pipeThrough(new R(Ee))}catch(t){Ue=!1,_=He(e,_,{chunkSize:n,level:h})}i&&(u?_=_.pipeThrough(new me(o,l)):(w=new de(o,c),_=_.pipeThrough(w))),qe(p,_,(async()=>{let e;i&&!u&&(e=w.signature),i&&!u||!d||(e=await g.getReader().read(),e=new f(e.value.buffer).getUint32(0)),p.signature=e}))}}class Me extends x{constructor(e,t,{chunkSize:n},...r){super({},...r);const{zipCrypto:s,encrypted:i,password:a,passwordVerification:o,signed:l,encryptionStrength:u,compressed:d,useCompressionStream:h}=t;let p,g,w=Ie(super.readable);if(i&&(s?w=w.pipeThrough(new ye(a,o)):(g=new ue(a,l,u),w=w.pipeThrough(g))),d)if(void 0!==h&&!h||Ce&&!We)w=He(e,w,{chunkSize:n});else try{w=w.pipeThrough(new z(Ee))}catch(t){We=!1,w=He(e,w,{chunkSize:n})}i&&!s||!l||([w,p]=w.tee(),p=p.pipeThrough(new B)),qe(this,w,(async()=>{if(i&&!s&&!g.valid)throw new c(Ae);if((!i||s)&&l){const e=await p.getReader().read(),n=new f(e.value.buffer);if(t.signature!=n.getUint32(0,!1))throw new c(Ae)}}))}}function He(e,t,n){return t.pipeThrough(new Te(e,n))}function Ie(e){return e.pipeThrough(new x({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function qe(e,t,r){e.size=0,t=t.pipeThrough(new x({transform(t,n){t&&t.length&&(e.size+=t.length,n.enqueue(t))},flush:r})),n.defineProperty(e,"readable",{get:()=>t})}const Le="deflate",Ne="data";class Ve{constructor(e,t,n,r,s){const{codecType:i}=r;async function a(i){const a=new i(e,r,s);await t.pipeThrough(a).pipeTo(n,{preventClose:!0});const{size:o,signature:l}=a;return{size:o,signature:l}}i.startsWith(Le)?this.run=()=>a(Be):i.startsWith("inflate")&&(this.run=()=>a(Me))}}let Pe,Oe=!0;class Ke{constructor(e,t,r,s){const{readable:i,writable:a}=t,{options:o,config:d,streamOptions:h,webWorker:f,scripts:p,codecConstructor:w}=r;n.assign(e,{busy:!0,codecConstructor:w,readable:i,writable:a,options:n.assign({},o),scripts:p,terminate(){e.worker&&!e.busy&&(e.worker.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,s(e)}});const{signal:_,onstart:y,onprogress:m,size:b,onend:v}=h;let k=0;const R={};return y&&(R.start=()=>Ze(y,b())),R.transform=async(e,t)=>{k+=e.length,m&&await Ze(m,k,b()),t.enqueue(e)},R.flush=()=>{i.size=()=>k,v&&Ze(v,k)},e.readable=i.pipeThrough(new x(R,{highWaterMark:1,size:()=>d.chunkSize}),{signal:_}),void 0===Pe&&(Pe="undefined"!=typeof Worker),f&&Pe?((e,{baseURL:t,chunkSize:r})=>{const s={type:"module"},{readable:i,writable:a}=e;if(n.assign(e,{reader:i.getReader(),writer:a.getWriter(),result:new g(((t,n)=>{e.resolveResult=t,e.rejectResult=n}))}),!e.interface){if(Oe)try{e.worker=o({})}catch(t){Oe=!1,e.worker=o(s)}else e.worker=o(s);e.worker.addEventListener("message",(async t=>{const n=t.data,{reader:r,writer:s,resolveResult:i,rejectResult:a,onTaskFinished:o}=e,{type:l,data:h,messageId:f,result:p}=n,g=n.error;try{if(g){const{message:e,stack:t}=g,n=new c(e);n.stack=t,w(n)}else{if("pull"==l){const{value:e,done:t}=await r.read();d({type:Ne,data:e,done:t,messageId:f})}l==Ne&&(await s.ready,await s.write(new u(h))),"close"==l&&w(null,p)}}catch(e){w(e)}function w(e,t){e?a(e):i(t),s.releaseLock(),o()}}),!1),e.interface={run(){const{options:t}=e;return d({type:"start",scripts:e.scripts.slice(1),options:t,config:{chunkSize:r}}),e.result}}}return e.interface;function o(n){let r,s;r=e.scripts[0],"function"==typeof r&&(r=r());try{s=new l(r,t)}catch(e){s=r}return new Worker(s,n)}function d(t){const{worker:n,writer:r,onTaskFinished:s}=e;try{let{data:e}=t;if(e)try{const{buffer:r,length:s}=e;s!=r.byteLength&&(e=new u(e)),t.data=e.buffer,n.postMessage(t,[t.data])}catch(e){n.postMessage(t)}else n.postMessage(t)}catch(e){throw r.releaseLock(),s(),e}}})(e,d):((e,t)=>{const n=new Ve(e.codecConstructor,e.readable,e.writable,e.options,t),{onTaskFinished:r}=e;return{async run(){try{return await n.run()}finally{r()}}}})(e,d)}}async function Ze(e,...t){try{await e(...t)}catch(e){}}let je=[];const Xe=[];let Ye=0;function Ge(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const Je="HTTP error ",Qe="HTTP Range not supported",$e="text/plain",et="GET",tt=65536;class nt{constructor(){this.size=0}init(){this.initialized=!0}}class rt extends nt{get readable(){const e=this,{chunkSize:t=tt}=e,n=new v({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:a}=n,{chunkOffset:o}=this;r.enqueue(await e.readUint8Array(s+o,i.min(t,a()-o))),o+t>a()?r.close():this.chunkOffset+=t}});return n}}class st extends nt{constructor(){super();const e=this,t=new k({write:t=>e.writeUint8Array(t)});n.defineProperty(this,"writable",{get:()=>t})}}class it extends st{writeUint8Array(e){this.size+=e.length}}class at extends rt{constructor(e){super(),this.blob=e,this.size=e.size}async readUint8Array(e,t){return new u(await this.blob.slice(e,e+t).arrayBuffer())}}class ot extends it{constructor(e){super();const t=this;t.contentType=e,t.arrayBuffersMaxlength=8,lt(t)}writeUint8Array(e){super.writeUint8Array(e);const t=this;t.arrayBuffers.length==t.arrayBuffersMaxlength&&ct(t),t.arrayBuffers.push(e.buffer)}getData(){const e=this;return e.blob||(e.arrayBuffers.length&&ct(e),e.blob=e.pendingBlob,lt(e)),e.blob}}function lt(e){e.pendingBlob=new p([],{type:e.contentType}),e.arrayBuffers=[]}function ct(e){e.pendingBlob=new p([e.pendingBlob,...e.arrayBuffers],{type:e.contentType}),e.arrayBuffers=[]}class ut extends rt{constructor(e,t){super();const r=this;r.url=e,r.preventHeadRequest=t.preventHeadRequest,r.useRangeHeader=t.useRangeHeader,r.forceRangeRequests=t.forceRangeRequests,r.options=t=n.assign({},t),delete t.preventHeadRequest,delete t.useRangeHeader,delete t.forceRangeRequests,delete t.useXHR}async init(){super.init(),await ht(this,bt,wt)}readUint8Array(e,t){return ft(this,e,t,bt,wt)}}class dt extends rt{constructor(e,t){super();const n=this;n.url=e,n.preventHeadRequest=t.preventHeadRequest,n.useRangeHeader=t.useRangeHeader,n.forceRangeRequests=t.forceRangeRequests,n.options=t}async init(){super.init(),await ht(this,xt,_t)}readUint8Array(e,t){return ft(this,e,t,xt,_t)}}async function ht(e,t,n){if((e=>{const{baseURL:t}=D(),{protocol:n}=new l(e,t);return"http:"==n||"https:"==n})(e.url)&&(e.useRangeHeader||e.forceRangeRequests)){const r=await t(et,e,pt(e));if(!e.forceRangeRequests&&"bytes"!=r.headers.get("Accept-Ranges"))throw new c(Qe);{let s;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&&(s=Number(t))}}void 0===s?await mt(e,t,n):e.size=s}}else await mt(e,t,n)}async function ft(e,t,n,r,s){if(e.useRangeHeader||e.forceRangeRequests){const s=await r(et,e,pt(e,t,n));if(206!=s.status)throw new c(Qe);return new u(await s.arrayBuffer())}return e.data||await s(e,e.options),new u(e.data.subarray(t,t+n))}function pt(e,t=0,r=1){return n.assign({},gt(e),{Range:"bytes="+t+"-"+(t+r-1)})}function gt(e){const t=e.options.headers;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function wt(e){await yt(e,bt)}async function _t(e){await yt(e,xt)}async function yt(e,t){const n=await t(et,e,gt(e));e.data=new u(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function mt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,gt(e))).headers.get("Content-Length");r?e.size=Number(r):await n(e,e.options)}}async function bt(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 c(Qe):new c(Je+(i.statusText||i.status))}function xt(e,{url:t},r){return new g(((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 o(e)})}else i(416==a.status?new c(Qe):new c(Je+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>i(e.detail.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 vt extends rt{constructor(e,t={}){super(),this.url=e,this.reader=t.useXHR?new dt(e,t):new ut(e,t)}set size(e){}get size(){return this.reader.size}async init(){super.init(),await this.reader.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}async function kt(e){e.init&&!e.initialized&&await e.init()}const Rt=4294967295,zt=65535,St=new a(2107,11,31),Tt=new a(1980,0,1),At=["filename","rawFilename","directory","encrypted","compressedSize","uncompressedSize","lastModDate","rawLastModDate","comment","rawComment","signature","extraField","rawExtraField","bitFlag","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","filenameUTF8","commentUTF8","offset","zip64","compressionMethod","extraFieldNTFS","lastAccessDate","creationDate","extraFieldExtendedTimestamp","version","versionMadeBy","msDosCompatible","internalFileAttribute","externalFileAttribute"];class Et{constructor(e){At.forEach((t=>this[t]=e[t]))}}const Ft="File already exists",Dt="Zip file comment exceeds 64KB",Ct="File entry comment exceeds 64KB",Wt="File entry name exceeds 64KB",Ut="Version exceeds 65535",Bt="The strength must equal 1, 2, or 3",Mt="Extra field type exceeds 65535",Ht="Extra field data exceeds 64KB",It="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",qt=new u([7,0,2,0,65,69,3,0,0]);let Lt=0;async function Nt(e,t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()}function Vt(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function Pt(e,t,n){return void 0===t[n]?e.options[n]:t[n]}function Ot(e,t,n){e.setUint8(t,n)}function Kt(e,t,n){e.setUint16(t,n,!0)}function Zt(e,t,n){e.setUint32(t,n,!0)}function jt(e,t,n){e.setBigUint64(t,n,!0)}function Xt(e,t,n){e.set(t,n)}function Yt(e){return new f(e.buffer)}C({Deflate:T}),e.BlobReader=at,e.BlobWriter=ot,e.Data64URIReader=class extends rt{constructor(e){super();const t=this;t.dataURI=e;let n=e.length;for(;"="==e.charAt(n-1);)n--;t.dataStart=e.indexOf(",")+1,t.size=i.floor(.75*(n-t.dataStart))}readUint8Array(e,t){const n=new u(t),r=4*i.floor(e/3),s=this.dataStart,a=atob(this.dataURI.substring(r+s,4*i.ceil((e+t)/3)+s)),o=e-3*i.floor(r/4);for(let e=o;o+t>e;e++)n[e-o]=a.charCodeAt(e);return n}},e.Data64URIWriter=class extends it{constructor(e){super(),this.data="data:"+(e||"")+";base64,",this.pending=[]}writeUint8Array(e){super.writeUint8Array(e);const t=this;let n=0,s=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*i.floor((a+e.length)/3)-a;n++)s+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.pending+=r.fromCharCode(e[n]);s.length>2?t.data+=b(s):t.pending=s}getData(){return this.data+b(this.pending)}},e.ERR_DUPLICATED_NAME=Ft,e.ERR_HTTP_RANGE=Qe,e.ERR_INVALID_COMMENT=Dt,e.ERR_INVALID_ENCRYPTION_STRENGTH=Bt,e.ERR_INVALID_ENTRY_COMMENT=Ct,e.ERR_INVALID_ENTRY_NAME=Wt,e.ERR_INVALID_EXTRAFIELD_DATA=Ht,e.ERR_INVALID_EXTRAFIELD_TYPE=Mt,e.ERR_INVALID_VERSION=Ut,e.ERR_UNSUPPORTED_FORMAT=It,e.HttpRangeReader=class extends vt{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=vt,e.Reader=rt,e.TextReader=class extends rt{constructor(e){super(),this.blobReader=new at(new p([e],{type:$e}))}init(){const e=this;super.init(),e.blobReader.init(),e.size=e.blobReader.size}readUint8Array(e,t){return this.blobReader.readUint8Array(e,t)}},e.TextWriter=class extends it{constructor(e){super(),this.encoding=e,this.blob=new p([],{type:$e})}writeUint8Array(e){super.writeUint8Array(e),this.blob=new p([this.blob,e.buffer],{type:$e})}getData(){const e=this;if(e.blob.text&&(void 0===e.encoding||e.encoding&&"utf-8"==e.encoding.toLowerCase()))return e.blob.text();{const t=new FileReader;return new g(((n,r)=>{t.onload=e=>n(e.target.result),t.onerror=()=>r(t.error),t.readAsText(e.blob,e.encoding)}))}}},e.Uint8ArrayReader=class extends rt{constructor(e){super(),this.array=e,this.size=e.length}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends it{constructor(){super(),this.array=new u}writeUint8Array(e){super.writeUint8Array(e);const t=this,n=t.array;t.array=new u(n.length+e.length),t.array.set(n),t.array.set(e,n.length)}getData(){return this.array}},e.Writer=it,e.ZipWriter=class{constructor(e,t={}){n.assign(this,{writer:e,options:t,config:D(),files:new o,offset:e.size||0,pendingCompressedSize:0,pendingEntries:[],pendingAddFileCalls:new Set})}async add(e="",r,o={}){const l=this,{pendingAddFileCalls:p,pendingEntries:w,config:_}=l;if(Lt>=_.maxWorkers)return new g(((t,n)=>w.push({name:e,reader:r,options:o,resolve:t,reject:n})));{let _;Lt++;try{return _=(async(e,r,o,l)=>{if(r=r.trim(),l.directory&&!r.endsWith("/")?r+="/":l.directory=r.endsWith("/"),e.files.has(r))throw new c(Ft);const p=M(r);if(p.length>zt)throw new c(Wt);const w=l.comment||"",_=M(w);if(_.length>zt)throw new c(Ct);const y=e.options.version||l.version||0;if(y>zt)throw new c(Ut);const m=e.options.versionMadeBy||l.versionMadeBy||20;if(m>zt)throw new c(Ut);const b=Pt(e,l,"lastModDate")||new a,x=Pt(e,l,"lastAccessDate"),v=Pt(e,l,"creationDate"),k=Pt(e,l,"password"),R=Pt(e,l,"encryptionStrength")||3,z=Pt(e,l,"zipCrypto");if(void 0!==k&&void 0!==R&&(1>R||R>3))throw new c(Bt);let S=new u;const{extraField:T}=l;if(T){let e=0,t=0;T.forEach((t=>e+=4+t.length)),S=new u(e),T.forEach(((e,n)=>{if(n>zt)throw new c(Mt);if(e.length>zt)throw new c(Ht);Xt(S,new d([n]),t),Xt(S,new d([e.length]),t+2),Xt(S,e,t+4),t+=4+e.length}))}let A=Pt(e,l,"extendedTimestamp");void 0===A&&(A=!0);let E=0,F=Pt(e,l,"keepOrder");void 0===F&&(F=!0);let D=0,C=Pt(e,l,"msDosCompatible");void 0===C&&(C=!0);const W=Pt(e,l,"internalFileAttribute")||0,U=Pt(e,l,"externalFileAttribute")||0;o&&(await kt(o),void 0===o.size?l.dataDescriptor=!0:D=o.size,E=(e=>e+5*(i.floor(e/16383)+1))(D));let B=l.zip64||e.options.zip64||!1;if(e.offset+e.pendingCompressedSize>=Rt||D>=Rt||E>=Rt){if(!1===l.zip64||!1===e.options.zip64||!F)throw new c(It);B=!0}e.pendingCompressedSize+=E,await g.resolve();const H=Pt(e,l,"level"),I=Pt(e,l,"useWebWorkers"),q=Pt(e,l,"bufferedWrite");let L=Pt(e,l,"dataDescriptor"),N=Pt(e,l,"dataDescriptorSignature");const V=Pt(e,l,"signal"),P=Pt(e,l,"useCompressionStream");void 0===L&&(L=!0),L&&void 0===N&&(N=!1);const O=await(async(e,r,a,o)=>{const{files:l,writer:d}=e,{keepOrder:p,dataDescriptor:w,zipCrypto:_,signal:y}=o,m=t.from(l.values()).pop();let b,x,v,k,R,z={};l.set(r,z);try{let t;if(p&&(t=m&&m.lock,z.lock=new g((e=>v=e))),o.bufferedWrite||e.lockWriter||!w?(R=new ot,R.init(),b=!0):(e.lockWriter=g.resolve(),await kt(d),R=d),z=await(async(e,t,r,a,o)=>{const{rawFilename:l,lastAccessDate:c,creationDate:d,password:f,level:p,zip64:w,zipCrypto:_,dataDescriptor:y,dataDescriptorSignature:m,directory:b,version:x,versionMadeBy:v,rawComment:k,rawExtraField:R,useWebWorkers:z,onstart:S,onprogress:T,onend:A,signal:E,encryptionStrength:F,extendedTimestamp:D,msDosCompatible:C,internalFileAttribute:W,externalFileAttribute:U,useCompressionStream:B}=o,M=!(!f||!f.length),H=0!==p&&!b;let I,q,L;if(M&&!_){I=new u(qt.length+2);const e=Yt(I);Kt(e,0,39169),Xt(I,qt,2),Ot(e,8,F)}else I=new u;if(D){L=new u(9+(c?4:0)+(d?4:0));const e=Yt(L);Kt(e,0,21589),Kt(e,2,L.length-4),Ot(e,4,1+(c?2:0)+(d?4:0)),Zt(e,5,i.floor(o.lastModDate.getTime()/1e3)),c&&Zt(e,9,i.floor(c.getTime()/1e3)),d&&Zt(e,13,i.floor(d.getTime()/1e3));try{q=new u(36);const e=Yt(q),t=Vt(o.lastModDate);Kt(e,0,10),Kt(e,2,32),Kt(e,8,1),Kt(e,10,24),jt(e,12,t),jt(e,20,Vt(c)||t),jt(e,28,Vt(d)||t)}catch(e){q=new u}}else q=L=new u;const N={lock:t.lock,version:x||20,versionMadeBy:v,zip64:w,directory:!!b,filenameUTF8:!0,rawFilename:l,commentUTF8:!0,rawComment:k,rawExtraFieldZip64:w?new u(28):new u,rawExtraFieldExtendedTimestamp:L,rawExtraFieldNTFS:q,rawExtraFieldAES:I,rawExtraField:R,extendedTimestamp:D,msDosCompatible:C,internalFileAttribute:W,externalFileAttribute:U};let V=N.uncompressedSize=0,P=2048;y&&(P|=8);let O=0;H&&(O=8),w&&(N.version=N.version>45?N.version:45),M&&(P|=1,_||(N.version=N.version>51?N.version:51,O=99,H&&(N.rawExtraFieldAES[9]=8))),N.compressionMethod=O;const K=N.headerArray=new u(26),Z=Yt(K);Kt(Z,0,N.version),Kt(Z,2,P),Kt(Z,4,O);const j=new h(1),X=Yt(j);let Y;Y=o.lastModDate<Tt?Tt:o.lastModDate>St?St:o.lastModDate,Kt(X,0,(Y.getHours()<<6|Y.getMinutes())<<5|Y.getSeconds()/2),Kt(X,2,(Y.getFullYear()-1980<<4|Y.getMonth()+1)<<5|Y.getDate());const G=j[0];Zt(Z,6,G),Kt(Z,22,l.length);const J=I.length+L.length+q.length+R.length;Kt(Z,24,J);const Q=new u(30+l.length+J);let $;Zt(Yt(Q),0,67324752),Xt(Q,K,4),Xt(Q,l,30),Xt(Q,I,30+l.length),Xt(Q,L,30+l.length+I.length),Xt(Q,q,30+l.length+I.length+L.length),Xt(Q,R,30+l.length+I.length+L.length+q.length);let ee=0;if(e){e.chunkSize=(e=>i.max(e.chunkSize,64))(a),await Nt(r,Q),N.dataWritten=t.dataWritten=!0;const n=()=>e.size,s=e.readable;s.size=n;const o={options:{codecType:Le,level:p,password:f,encryptionStrength:F,zipCrypto:M&&_,passwordVerification:M&&_&&G>>8&255,signed:!0,compressed:H,encrypted:M,useWebWorkers:z,useCompressionStream:B},config:a,streamOptions:{signal:E,size:n,onstart:S,onprogress:T,onend:A},codecConstructor:a.Deflate};$=await(async(e,t)=>{const{options:n,config:r}=t,s=!n.compressed&&!n.signed&&!n.encrypted,{useWebWorkers:i,useCompressionStream:a,codecType:o}=n,{workerScripts:l}=r;let c;if(t.webWorker=!s&&(i||void 0===i&&r.useWebWorkers),t.scripts=t.webWorker&&l?l[o]:[],n.useCompressionStream=void 0===a?r.useCompressionStream:a,je.length<r.maxWorkers){const n={indexWorker:Ye};Ye++,je.push(n),c=new Ke(n,e,t,u)}else{const n=je.find((e=>!e.busy));n?(Ge(n),c=new Ke(n,e,t,u)):c=await new g((n=>Xe.push({resolve:n,stream:e,workerOptions:t})))}return c.run();function u(e){if(Xe.length){const[{resolve:t,stream:n,workerOptions:r}]=Xe.splice(0,1);t(new Ke(e,n,r,u))}else if(e.worker){const{terminateWorkerTimeout:t}=r;Ge(e),Number.isFinite(t)&&t>=0&&(e.terminateTimeout=setTimeout((()=>{je=je.filter((t=>t!=e)),e.terminate()}),t))}else je=je.filter((t=>t!=e))}})({readable:s,writable:r},o),V=N.uncompressedSize=e.size=s.size(),ee=$.size}else await Nt(r,Q),N.dataWritten=t.dataWritten=!0;let te,ne=new u,re=0;if(y&&(ne=new u(w?m?24:20:m?16:12),te=Yt(ne),m&&(re=4,Zt(te,0,134695760))),e){const{signature:e}=$;if(M&&!_||void 0===e||(Zt(Z,10,e),N.signature=e,y&&Zt(te,re,e)),w){const e=Yt(N.rawExtraFieldZip64);Kt(e,0,1),Kt(e,2,24),Zt(Z,14,Rt),jt(e,12,s(ee)),Zt(Z,18,Rt),jt(e,4,s(V)),y&&(jt(te,re+4,s(ee)),jt(te,re+12,s(V)))}else Zt(Z,14,ee),Zt(Z,18,V),y&&(Zt(te,re+4,ee),Zt(te,re+8,V))}y&&await Nt(r,ne);const se=Q.length+ee+ne.length;return n.assign(N,{compressedSize:ee,lastModDate:Y,rawLastModDate:G,creationDate:d,lastAccessDate:c,encrypted:M,length:se}),N})(a,z,R.writable,e.config,o),l.set(r,z),z.filename=r,b){let n=R.getData();await t,await async function t(){const{lockWriter:n}=e;if(n)return await n.then((()=>delete e.lockWriter)),t();e.lockWriter=new g((e=>x=e))}(),k=!0;const{writable:r}=d;if(!w){const e=26,t=await((e,t,n)=>n?e.slice(0,n).arrayBuffer():e.arrayBuffer())(n,0,e),s=new f(t);z.encrypted&&!_||Zt(s,14,z.signature),z.zip64?(Zt(s,18,Rt),Zt(s,22,Rt)):(Zt(s,18,z.compressedSize),Zt(s,22,z.uncompressedSize)),await Nt(r,new u(t)),n=n.slice(e)}await n.stream().pipeTo(r,{preventClose:!0,signal:y}),k=!1}if(z.offset=e.offset,z.zip64)jt(Yt(z.rawExtraFieldZip64),20,s(z.offset));else if(z.offset>=Rt)throw new c(It);return e.offset+=z.length,z}catch(t){throw(b&&k||!b&&z.dataWritten)&&(t.corruptedEntry=e.hasCorruptedEntries=!0,e.offset+=R.size),l.delete(r),t}finally{v&&v(),x&&x()}})(e,r,o,n.assign({},l,{rawFilename:p,rawComment:_,version:y,versionMadeBy:m,lastModDate:b,lastAccessDate:x,creationDate:v,rawExtraField:S,zip64:B,password:k,level:H,useWebWorkers:I,encryptionStrength:R,extendedTimestamp:A,zipCrypto:z,bufferedWrite:q,keepOrder:F,dataDescriptor:L,dataDescriptorSignature:N,signal:V,msDosCompatible:C,internalFileAttribute:W,externalFileAttribute:U,useCompressionStream:P}));return E&&(e.pendingCompressedSize-=E),n.assign(O,{name:r,comment:w,extraField:T}),new Et(O)})(l,e,r,o),p.add(_),await _}finally{p.delete(_),Lt--;const e=w.shift();e&&l.add(e.name,e.reader,e.options).then(e.resolve).catch(e.reject)}}}async close(e=new u,n={}){const{pendingAddFileCalls:r,writer:a}=this,{writable:o}=a;for(;r.size;)await g.all(t.from(r));return await(async(e,n,r)=>{const{files:a}=e;let o=0,l=0,d=e.offset,h=a.size;for(const[,e]of a)l+=46+e.rawFilename.length+e.rawComment.length+e.rawExtraFieldZip64.length+e.rawExtraFieldAES.length+e.rawExtraFieldExtendedTimestamp.length+e.rawExtraFieldNTFS.length+e.rawExtraField.length;let f=r.zip64||e.options.zip64||!1;if(d>=Rt||l>=Rt||h>=zt){if(!1===r.zip64||!1===e.options.zip64)throw new c(It);f=!0}const p=new u(l+(f?98:22)),g=Yt(p);for(const[e,n]of t.from(a.values()).entries()){const{rawFilename:t,rawExtraFieldZip64:s,rawExtraFieldAES:l,rawExtraField:c,rawComment:d,versionMadeBy:h,headerArray:f,directory:w,zip64:_,msDosCompatible:y,internalFileAttribute:m,externalFileAttribute:b}=n;let x,v;if(n.extendedTimestamp){v=n.rawExtraFieldNTFS,x=new u(9);const e=Yt(x);Kt(e,0,21589),Kt(e,2,x.length-4),Ot(e,4,1),Zt(e,5,i.floor(n.lastModDate.getTime()/1e3))}else v=x=new u;const k=s.length+l.length+x.length+v.length+c.length;if(Zt(g,o,33639248),Kt(g,o+4,h),Xt(p,f,o+6),Kt(g,o+30,k),Kt(g,o+32,d.length),Kt(g,o+36,m),b?Zt(g,o+38,b):w&&y&&Ot(g,o+38,16),Zt(g,o+42,_?Rt:n.offset),Xt(p,t,o+46),Xt(p,s,o+46+t.length),Xt(p,l,o+46+t.length+s.length),Xt(p,x,o+46+t.length+s.length+l.length),Xt(p,v,o+46+t.length+s.length+l.length+x.length),Xt(p,c,o+46+t.length+s.length+l.length+x.length+v.length),Xt(p,d,o+46+t.length+k),o+=46+t.length+k+d.length,r.onprogress)try{await r.onprogress(e+1,a.size,new Et(n))}catch(e){}}if(f&&(Zt(g,o,101075792),jt(g,o+4,s(44)),Kt(g,o+12,45),Kt(g,o+14,45),jt(g,o+24,s(h)),jt(g,o+32,s(h)),jt(g,o+40,s(l)),jt(g,o+48,s(d)),Zt(g,o+56,117853008),jt(g,o+64,s(d)+s(l)),Zt(g,o+72,1),h=zt,d=Rt,l=Rt,o+=76),Zt(g,o,101010256),Kt(g,o+8,h),Kt(g,o+10,h),Zt(g,o+12,l),Zt(g,o+16,d),n&&n.length){if(n.length>zt)throw new c(Dt);Kt(g,o+20,n.length)}const{writable:w}=e.writer;await Nt(w,p),n&&n.length&&await Nt(w,n)})(this,e,n),a.preventClose||n.preventClose||await o.getWriter().close(),a.getData?a.getData():o}},e.configure=C,e.getMimeType=()=>"application/octet-stream",e.initStream=kt,e.terminateWorkers=()=>{je.forEach((e=>{Ge(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})}));
1
+ ((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:r,BigInt:s,Math:i,Date:a,Map:o,URL:l,Error:c,Uint8Array:u,Uint16Array:d,Uint32Array:h,DataView:f,Blob:p,Promise:w,TextEncoder:g,TextDecoder:_,document:y,crypto:m,btoa:b,TransformStream:x,ReadableStream:v,WritableStream:k,CompressionStream:R,DecompressionStream:z,navigator:S}=globalThis,T=(()=>{const e=-2;function n(e){return r(e.map((([e,n])=>new t(e).fill(n,0,e))))}function r(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?r(n):n)),[])}const s=[0,1,2,3].concat(...n([[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 a(){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,u=-1;for(n.heap_len=0,n.heap_max=573,o=0;a>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=u=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>u?++u:0,r[2*c]=1,n.depth[c]=0,n.opt_len--,s&&(n.static_len-=s[2*c+1]);for(e.max_code=u,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,i=e.stat_desc.extra_base,a=e.stat_desc.max_length;let o,l,c,u,d,h,f=0;for(u=0;15>=u;u++)t.bl_count[u]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)l=t.heap[o],u=n[2*n[2*l+1]+1]+1,u>a&&(u=a,f++),n[2*l+1]=u,l>e.max_code||(t.bl_count[u]++,d=0,i>l||(d=s[l-i]),h=n[2*l],t.opt_len+=h*(u+d),r&&(t.static_len+=h*(r[2*l+1]+d)));if(0!==f){do{for(u=a-1;0===t.bl_count[u];)u--;t.bl_count[u]--,t.bl_count[u+1]+=2,t.bl_count[a]--,f-=2}while(f>0);for(u=a;0!==u;u--)for(l=t.bl_count[u];0!==l;)c=t.heap[--o],c>e.max_code||(n[2*c+1]!=u&&(t.opt_len+=(u-n[2*c+1])*n[2*c],n[2*c+1]=u),l--)}})(n),((e,n,r)=>{const s=[];let i,a,o,l=0;for(i=1;15>=i;i++)s[i]=l=l+r[i-1]<<1;for(a=0;n>=a;a++)o=e[2*a+1],0!==o&&(e[2*a]=t(s[o]++,o))})(r,e.max_code,n.bl_count)}}function o(e,t,n,r,s){const i=this;i.static_tree=e,i.extra_bits=t,i.extra_base=n,i.elems=r,i.max_length=s}a._length_code=[0,1,2,3,4,5,6,7].concat(...n([[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]])),a.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],a.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],a.d_code=e=>256>e?s[e]:s[256+(e>>>7)],a.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],a.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],a.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],a.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const l=n([[144,8],[112,9],[24,7],[8,8]]);o.static_ltree=r([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 h=n([[30,5]]);function f(e,t,n,r,s){const i=this;i.good_length=e,i.max_lazy=t,i.nice_length=n,i.max_chain=r,i.func=s}o.static_dtree=r([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,h[t]]))),o.static_l_desc=new o(o.static_ltree,a.extra_lbits,257,286,15),o.static_d_desc=new o(o.static_dtree,a.extra_dbits,0,30,15),o.static_bl_desc=new o(null,a.extra_blbits,0,19,7);const p=[new f(0,0,0,0,0),new f(4,4,8,4,1),new f(4,5,16,8,1),new f(4,6,32,32,1),new f(4,4,16,16,2),new f(8,16,32,32,2),new f(8,16,128,128,2),new f(8,32,128,256,2),new f(32,128,258,1024,2),new f(32,258,258,4096,2)],w=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],g=113,_=666,y=262;function m(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function b(){const t=this;let n,r,s,l,c,h,f,b,x,v,k,R,z,S,T,A,E,F,D,C,W,U,B,M,H,I,q,L,N,V,P,O,K;const Z=new a,j=new a,X=new a;let Y,G,J,Q,$,ee;function te(){let e;for(e=0;286>e;e++)P[2*e]=0;for(e=0;30>e;e++)O[2*e]=0;for(e=0;19>e;e++)K[2*e]=0;P[512]=1,t.opt_len=t.static_len=0,G=J=0}function ne(e,t){let n,r=-1,s=e[1],i=0,a=7,o=4;0===s&&(a=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)n=s,s=e[2*(l+1)+1],++i<a&&n==s||(o>i?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?(a=138,o=3):n==s?(a=6,o=3):(a=7,o=4))}function re(e){t.pending_buf[t.pending++]=e}function se(e){re(255&e),re(e>>>8&255)}function ie(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 ae(e,t){const n=2*e;ie(65535&t[n],65535&t[n+1])}function oe(e,t){let n,r,s=-1,i=e[1],a=0,o=7,l=4;for(0===i&&(o=138,l=3),n=0;t>=n;n++)if(r=i,i=e[2*(n+1)+1],++a>=o||r!=i){if(l>a)do{ae(r,K)}while(0!=--a);else 0!==r?(r!=s&&(ae(r,K),a--),ae(16,K),ie(a-3,2)):a>10?(ae(18,K),ie(a-11,7)):(ae(17,K),ie(a-3,3));a=0,s=r,0===i?(o=138,l=3):r==i?(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(e,n){let r,s,o;if(t.dist_buf[G]=e,t.lc_buf[G]=255&n,G++,0===e?P[2*n]++:(J++,e--,P[2*(a._length_code[n]+256+1)]++,O[2*a.d_code(e)]++),0==(8191&G)&&q>2){for(r=8*G,s=W-E,o=0;30>o;o++)r+=O[2*o]*(5+a.extra_dbits[o]);if(r>>>=3,J<i.floor(G/2)&&r<i.floor(s/2))return!0}return G==Y-1}function ue(e,n){let r,s,i,o,l=0;if(0!==G)do{r=t.dist_buf[l],s=t.lc_buf[l],l++,0===r?ae(s,e):(i=a._length_code[s],ae(i+256+1,e),o=a.extra_lbits[i],0!==o&&(s-=a.base_length[i],ie(s,o)),r--,i=a.d_code(r),ae(i,n),o=a.extra_dbits[i],0!==o&&(r-=a.base_dist[i],ie(r,o)))}while(G>l);ae(256,e),Q=e[513]}function de(){ee>8?se($):ee>0&&re(255&$),$=0,ee=0}function he(e,n,r){ie(0+(r?1:0),3),((e,n)=>{de(),Q=8,se(n),se(~n),t.pending_buf.set(b.subarray(e,e+n),t.pending),t.pending+=n})(e,n)}function fe(e){((e,n,r)=>{let s,i,l=0;q>0?(Z.build_tree(t),j.build_tree(t),l=(()=>{let e;for(ne(P,Z.max_code),ne(O,j.max_code),X.build_tree(t),e=18;e>=3&&0===K[2*a.bl_order[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(),s=t.opt_len+3+7>>>3,i=t.static_len+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==e?i==s?(ie(2+(r?1:0),3),ue(o.static_ltree,o.static_dtree)):(ie(4+(r?1:0),3),((e,t,n)=>{let r;for(ie(e-257,5),ie(t-1,5),ie(n-4,4),r=0;n>r;r++)ie(K[2*a.bl_order[r]+1],3);oe(P,e-1),oe(O,t-1)})(Z.max_code+1,j.max_code+1,l+1),ue(P,O)):he(e,n,r),te(),r&&de()})(0>E?-1:E,W-E,e),E=W,n.flush_pending()}function pe(){let e,t,r,s;do{if(s=x-B-W,0===s&&0===W&&0===B)s=c;else if(-1==s)s--;else if(W>=c+c-y){b.set(b.subarray(c,c+c),0),U-=c,W-=c,E-=c,e=z,r=e;do{t=65535&k[--r],k[r]=c>t?0:t-c}while(0!=--e);e=c,r=e;do{t=65535&v[--r],v[r]=c>t?0:t-c}while(0!=--e);s+=c}if(0===n.avail_in)return;e=n.read_buf(b,W+B,s),B+=e,3>B||(R=255&b[W],R=(R<<A^255&b[W+1])&T)}while(y>B&&0!==n.avail_in)}function we(e){let t,n,r=H,s=W,i=M;const a=W>c-y?W-(c-y):0;let o=V;const l=f,u=W+258;let d=b[s+i-1],h=b[s+i];N>M||(r>>=2),o>B&&(o=B);do{if(t=e,b[t+i]==h&&b[t+i-1]==d&&b[t]==b[s]&&b[++t]==b[s+1]){s+=2,t++;do{}while(b[++s]==b[++t]&&b[++s]==b[++t]&&b[++s]==b[++t]&&b[++s]==b[++t]&&b[++s]==b[++t]&&b[++s]==b[++t]&&b[++s]==b[++t]&&b[++s]==b[++t]&&u>s);if(n=258-(u-s),s=u-258,n>i){if(U=e,i=n,n>=o)break;d=b[s+i-1],h=b[s+i]}}}while((e=65535&v[e&l])>a&&0!=--r);return i>B?B:i}t.depth=[],t.bl_count=[],t.heap=[],P=[],O=[],K=[],t.pqdownheap=(e,n)=>{const r=t.heap,s=r[n];let i=n<<1;for(;i<=t.heap_len&&(i<t.heap_len&&m(e,r[i+1],r[i],t.depth)&&i++,!m(e,s,r[i],t.depth));)r[n]=r[i],n=i,i<<=1;r[n]=s},t.deflateInit=(n,a,w,_,y,m)=>(_||(_=8),y||(y=8),m||(m=0),n.msg=null,-1==a&&(a=6),1>y||y>9||8!=_||9>w||w>15||0>a||a>9||0>m||m>2?e:(n.dstate=t,h=w,c=1<<h,f=c-1,S=y+7,z=1<<S,T=z-1,A=i.floor((S+3-1)/3),b=new u(2*c),v=[],k=[],Y=1<<y+6,t.pending_buf=new u(4*Y),s=4*Y,t.dist_buf=new d(Y),t.lc_buf=new u(Y),q=a,L=m,(e=>(e.total_in=e.total_out=0,e.msg=null,t.pending=0,t.pending_out=0,r=g,l=0,Z.dyn_tree=P,Z.stat_desc=o.static_l_desc,j.dyn_tree=O,j.stat_desc=o.static_d_desc,X.dyn_tree=K,X.stat_desc=o.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{x=2*c,k[z-1]=0;for(let e=0;z-1>e;e++)k[e]=0;I=p[q].max_lazy,N=p[q].good_length,V=p[q].nice_length,H=p[q].max_chain,W=0,E=0,B=0,F=M=2,C=0,R=0})(),0))(n))),t.deflateEnd=()=>42!=r&&r!=g&&r!=_?e:(t.lc_buf=null,t.dist_buf=null,t.pending_buf=null,k=null,v=null,b=null,t.dstate=null,r==g?-3:0),t.deflateParams=(t,n,r)=>{let s=0;return-1==n&&(n=6),0>n||n>9||0>r||r>2?e:(p[q].func!=p[n].func&&0!==t.total_in&&(s=t.deflate(1)),q!=n&&(q=n,I=p[q].max_lazy,N=p[q].good_length,V=p[q].nice_length,H=p[q].max_chain),L=r,s)},t.deflateSetDictionary=(t,n,s)=>{let i,a=s,o=0;if(!n||42!=r)return e;if(3>a)return 0;for(a>c-y&&(a=c-y,o=s-a),b.set(n.subarray(o,o+a),0),W=a,E=a,R=255&b[0],R=(R<<A^255&b[1])&T,i=0;a-3>=i;i++)R=(R<<A^255&b[i+2])&T,v[i&f]=k[R],k[R]=i;return 0},t.deflate=(i,a)=>{let u,d,m,x,S;if(a>4||0>a)return e;if(!i.next_out||!i.next_in&&0!==i.avail_in||r==_&&4!=a)return i.msg=w[4],e;if(0===i.avail_out)return i.msg=w[7],-5;var H;if(n=i,x=l,l=a,42==r&&(d=8+(h-8<<4)<<8,m=(q-1&255)>>1,m>3&&(m=3),d|=m<<6,0!==W&&(d|=32),d+=31-d%31,r=g,re((H=d)>>8&255),re(255&H)),0!==t.pending){if(n.flush_pending(),0===n.avail_out)return l=-1,0}else if(0===n.avail_in&&x>=a&&4!=a)return n.msg=w[7],-5;if(r==_&&0!==n.avail_in)return i.msg=w[7],-5;if(0!==n.avail_in||0!==B||0!=a&&r!=_){switch(S=-1,p[q].func){case 0:S=(e=>{let t,r=65535;for(r>s-5&&(r=s-5);;){if(1>=B){if(pe(),0===B&&0==e)return 0;if(0===B)break}if(W+=B,B=0,t=E+r,(0===W||W>=t)&&(B=W-t,W=t,fe(!1),0===n.avail_out))return 0;if(W-E>=c-y&&(fe(!1),0===n.avail_out))return 0}return fe(4==e),0===n.avail_out?4==e?2:0:4==e?3:1})(a);break;case 1:S=(e=>{let t,r=0;for(;;){if(y>B){if(pe(),y>B&&0==e)return 0;if(0===B)break}if(3>B||(R=(R<<A^255&b[W+2])&T,r=65535&k[R],v[W&f]=k[R],k[R]=W),0===r||(W-r&65535)>c-y||2!=L&&(F=we(r)),3>F)t=ce(0,255&b[W]),B--,W++;else if(t=ce(W-U,F-3),B-=F,F>I||3>B)W+=F,F=0,R=255&b[W],R=(R<<A^255&b[W+1])&T;else{F--;do{W++,R=(R<<A^255&b[W+2])&T,r=65535&k[R],v[W&f]=k[R],k[R]=W}while(0!=--F);W++}if(t&&(fe(!1),0===n.avail_out))return 0}return fe(4==e),0===n.avail_out?4==e?2:0:4==e?3:1})(a);break;case 2:S=(e=>{let t,r,s=0;for(;;){if(y>B){if(pe(),y>B&&0==e)return 0;if(0===B)break}if(3>B||(R=(R<<A^255&b[W+2])&T,s=65535&k[R],v[W&f]=k[R],k[R]=W),M=F,D=U,F=2,0!==s&&I>M&&c-y>=(W-s&65535)&&(2!=L&&(F=we(s)),5>=F&&(1==L||3==F&&W-U>4096)&&(F=2)),3>M||F>M)if(0!==C){if(t=ce(0,255&b[W-1]),t&&fe(!1),W++,B--,0===n.avail_out)return 0}else C=1,W++,B--;else{r=W+B-3,t=ce(W-1-D,M-3),B-=M-1,M-=2;do{++W>r||(R=(R<<A^255&b[W+2])&T,s=65535&k[R],v[W&f]=k[R],k[R]=W)}while(0!=--M);if(C=0,F=2,W++,t&&(fe(!1),0===n.avail_out))return 0}}return 0!==C&&(t=ce(0,255&b[W-1]),C=0),fe(4==e),0===n.avail_out?4==e?2:0:4==e?3:1})(a)}if(2!=S&&3!=S||(r=_),0==S||2==S)return 0===n.avail_out&&(l=-1),0;if(1==S){if(1==a)ie(2,3),ae(256,o.static_ltree),le(),9>1+Q+10-ee&&(ie(2,3),ae(256,o.static_ltree),le()),Q=7;else if(he(0,0,!1),3==a)for(u=0;z>u;u++)k[u]=0;if(n.flush_pending(),0===n.avail_out)return l=-1,0}}return 4!=a?0:1}}function x(){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}return x.prototype={deflateInit(e,t){const n=this;return n.dstate=new b,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(t){const n=this;return n.dstate?n.dstate.deflate(n,t):e},deflateEnd(){const t=this;if(!t.dstate)return e;const n=t.dstate.deflateEnd();return t.dstate=null,n},deflateParams(t,n){const r=this;return r.dstate?r.dstate.deflateParams(r,t,n):e},deflateSetDictionary(t,n){const r=this;return r.dstate?r.dstate.deflateSetDictionary(r,t,n):e},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))}},function(e){const t=new x,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(i.floor(r/16383)+1);var r;const s=new u(n);let a=e?e.level:-1;void 0===a&&(a=-1),t.deflateInit(a),t.next_out=s,this.append=(e,r)=>{let i,a,o=0,l=0,d=0;const h=[];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,i=t.deflate(0),0!=i)throw new c("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?h.push(new u(s)):h.push(s.slice(0,t.next_out_index))),d+=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 h.length>1?(a=new u(d),h.forEach((e=>{a.set(e,l),l+=e.length}))):a=h[0]||new u,a}},this.flush=()=>{let e,r,i=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 c("deflating: "+t.msg);n-t.avail_out>0&&o.push(s.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 u(a),o.forEach((e=>{r.set(e,i),i+=e.length})),r}}})(),A=void 0,E={chunkSize:524288,maxWorkers:void 0!==S&&S.hardwareConcurrency||2,terminateWorkerTimeout:5e3,useWebWorkers:!0,workerScripts:void 0},F=n.assign({},E);function D(){return F}function C(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,Deflate:l,Inflate:u,workerScripts:d}=e;if(n!==A&&(F.baseURL=n),r!==A&&(F.chunkSize=r),s!==A&&(F.maxWorkers=s),i!==A&&(F.terminateWorkerTimeout=i),a!==A&&(F.useCompressionStream=a),o!==A&&(F.useWebWorkers=o),l!==A&&(F.Deflate=l),u!==A&&(F.Inflate=u),d!==A){const{deflate:e,inflate:n}=d;if((e||n)&&(F.workerScripts||(F.workerScripts={})),e){if(!t.isArray(e))throw new c("workerScripts.deflate must be an array");F.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new c("workerScripts.inflate must be an array");F.workerScripts.inflate=n}}}const W=[];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;W[e]=t}class U{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^W[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class B extends x{constructor(){super({start(){this.crc32=new U},transform(e){this.crc32.append(e)},flush(e){const t=new u(4);new f(t.buffer).setUint32(0,this.crc32.get()),e.enqueue(t)}})}}function M(e){if(void 0===g){const t=new u((e=unescape(encodeURIComponent(e))).length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new g).encode(e)}const H={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=H.getPartial(n);return 32===r?e.concat(t):H._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)+H.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]=H.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,i=H.getPartial(s);return r.push(H.partial(t+i&31,t+i>32?n:r.pop(),1)),r}},I={bytes:{fromBits(e){const t=H.bitLength(e)/8,n=new u(t);let r;for(let s=0;t>s;s++)0==(3&s)&&(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],3==(3&n)&&(t.push(r),r=0);return 3&n&&t.push(H.partial(8*(3&n),r)),t}}},q={sha1:function(e){e?(this._h=e._h.slice(0),this._buffer=e._buffer.slice(0),this._length=e._length):this.reset()}};q.sha1.prototype={blockSize:512,reset(){const e=this;return e._h=this._init.slice(0),e._buffer=[],e._length=0,e},update(e){const t=this;"string"==typeof e&&(e=I.utf8String.toBits(e));const n=t._buffer=H.concat(t._buffer,e),r=t._length,s=t._length=r+H.bitLength(e);if(s>9007199254740991)throw new c("Cannot hash more than 2^53 - 1 bits");const i=new h(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=H.concat(t,[H.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(i.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n},_init:[1732584193,4023233417,2562383102,271733878,3285377520],_key:[1518500249,1859775393,2400959708,3395469782],_f:(e,t,n,r)=>e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r,_S:(e,t)=>t<<e|t>>>32-e,_block(e){const n=this,r=n._h,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let a=r[0],o=r[1],l=r[2],c=r[3],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,a)+n._f(e,o,l,c)+u+s[e]+n._key[i.floor(e/20)]|0;u=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]+u|0}};const L={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}},N={importKey:e=>new N.hmacSha1(I.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new c("invalid params to pbkdf2");const s=1+(r>>5)<<2;let i,a,o,l,u;const d=new ArrayBuffer(s),h=new f(d);let p=0;const w=H;for(t=I.bytes.toBits(t),u=1;(s||1)>p;u++){for(i=a=e.encrypt(w.concat(t,[u])),o=1;n>o;o++)for(a=e.encrypt(a),l=0;l<a.length;l++)i[l]^=a[l];for(o=0;(s||1)>p&&o<i.length;o++)h.setInt32(p,i[o]),p+=4}return d.slice(0,r/8)},hmacSha1:class{constructor(e){const t=this,n=t._hash=q.sha1,r=[[],[]],s=n.prototype.blockSize/32;t._baseHash=[new n,new n],e.length>s&&(e=n.hash(e));for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new c("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},V=void 0!==m&&"function"==typeof m.getRandomValues,P="Invalid password";function O(e){return V?m.getRandomValues(e):L.getRandomValues(e)}const K=16,Z={name:"PBKDF2"},j=n.assign({hash:{name:"HMAC"}},Z),X=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Z),Y=["deriveBits"],G=[8,12,16],J=[16,24,32],Q=10,$=[0,0,0,0],ee="undefined",te="function",ne=typeof m!=ee,re=ne&&typeof m.subtle!=ee,se=ne&&re&&typeof m.subtle.importKey==te,ie=ne&&re&&typeof m.subtle.deriveBits==te,ae=I.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 i,a,o,l=1;if(4!==s&&6!==s&&8!==s)throw new c("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^l<<24,l=l<<1^283*(l>>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,l,c;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,c=s[l=s[o=s[u]]];let d=16843009*c^65537*l^257*o^16843008*u,h=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][u]=h=h<<24^h>>>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 c("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],l=i[2],u=i[3],d=i[4];let h,f,p,w=e[0]^n[0],g=e[t?3:1]^n[1],_=e[2]^n[2],y=e[t?1:3]^n[3],m=4;for(let e=0;r>e;e++)h=a[w>>>24]^o[g>>16&255]^l[_>>8&255]^u[255&y]^n[m],f=a[g>>>24]^o[_>>16&255]^l[y>>8&255]^u[255&w]^n[m+1],p=a[_>>>24]^o[y>>16&255]^l[w>>8&255]^u[255&g]^n[m+2],y=a[y>>>24]^o[w>>16&255]^l[g>>8&255]^u[255&_]^n[m+3],m+=4,w=h,g=f,_=p;for(let e=0;4>e;e++)s[t?3&-e:e]=d[w>>>24]<<24^d[g>>16&255]<<16^d[_>>8&255]<<8^d[255&y]^n[m++],h=w,w=g,g=_,_=y,y=h;return s}},le=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=H.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 H.clamp(t,s)}},ce=N.hmacSha1;class ue extends x{constructor(e,r,s){let i;super({start(){n.assign(this,{ready:new w((e=>this.resolveReady=e)),password:e,signed:r,strength:s-1,pending:new u})},async transform(e,n){const r=this;if(r.password){const n=r.password;r.password=null;const s=we(e,0,G[r.strength]+2);await(async(e,t,n)=>{await fe(e,n,we(t,0,G[e.strength]));const r=we(t,G[e.strength]),s=e.keys.passwordVerification;if(s[0]!=r[0]||s[1]!=r[1])throw new c(P)})(r,s,n),r.ctr=new le(new oe(r.keys.key),t.from($)),r.hmac=new ce(r.keys.authentication),e=we(e,G[r.strength]+2),r.resolveReady()}else await r.ready;const s=new u(e.length-Q-(e.length-Q)%K);n.enqueue(he(r,e,s,0,Q,!0))},async flush(e){const t=this;await t.ready;const n=t.pending,r=we(n,0,n.length-Q),s=we(n,n.length-Q);let a=new u;if(r.length){const e=_e(ae,r);t.hmac.update(e);const n=t.ctr.update(e);a=ge(ae,n)}if(i.valid=!0,t.signed){const e=we(ge(ae,t.hmac.digest()),0,Q);for(let t=0;Q>t;t++)e[t]!=s[t]&&(i.valid=!1)}e.enqueue(a)}}),i=this}}class de extends x{constructor(e,r){let s;super({start(){n.assign(this,{ready:new w((e=>this.resolveReady=e)),password:e,strength:r-1,pending:new u})},async transform(e,n){const r=this;let s=new u;if(r.password){const e=r.password;r.password=null,s=await(async(e,t)=>{const n=O(new u(G[e.strength]));return await fe(e,t,n),pe(n,e.keys.passwordVerification)})(r,e),r.ctr=new le(new oe(r.keys.key),t.from($)),r.hmac=new ce(r.keys.authentication),r.resolveReady()}else await r.ready;const i=new u(s.length+e.length-e.length%K);i.set(s,0),n.enqueue(he(r,e,i,s.length,0))},async flush(e){const t=this;await t.ready;let n=new u;if(t.pending.length){const e=t.ctr.update(_e(ae,t.pending));t.hmac.update(e),n=ge(ae,e)}s.signature=ge(ae,t.hmac.digest()).slice(0,Q),e.enqueue(pe(n,s.signature))}}),s=this}}function he(e,t,n,r,s,i){const a=t.length-s;let o;for(e.pending.length&&(t=pe(e.pending,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new u(t)).set(n,0)}return e})(n,a-a%K)),o=0;a-K>=o;o+=K){const s=_e(ae,we(t,o,o+K));i&&e.hmac.update(s);const a=e.ctr.update(s);i||e.hmac.update(a),n.set(ge(ae,a),o+r)}return e.pending=we(t,o),n}async function fe(e,t,r){const s=M(t),i=await((e,t,n,r,s)=>se?m.subtle.importKey("raw",t,n,!1,s):N.importKey(t))(0,s,j,0,Y),a=await(async(e,t,n)=>ie?await m.subtle.deriveBits(e,t,n):N.pbkdf2(t,e.salt,X.iterations,n))(n.assign({salt:r},X),i,8*(2*J[e.strength]+2)),o=new u(a);e.keys={key:_e(ae,we(o,0,J[e.strength])),authentication:_e(ae,we(o,J[e.strength],2*J[e.strength])),passwordVerification:we(o,2*J[e.strength])}}function pe(e,t){let n=e;return e.length+t.length&&(n=new u(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function we(e,t,n){return e.subarray(t,n)}function ge(e,t){return e.fromBits(t)}function _e(e,t){return e.toBits(t)}class ye extends x{constructor(e,t){let r;super({start(){n.assign(this,{password:e,passwordVerification:t}),ve(this,e)},transform(e,t){const n=this;if(n.password){const t=be(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new c(P);e=e.subarray(12)}t.enqueue(be(n,e))},flush(){r.valid=!0}}),r=this}}class me extends x{constructor(e,t){super({start(){n.assign(this,{password:e,passwordVerification:t}),ve(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=O(new u(12));t[11]=n.passwordVerification,r=new u(e.length+t.length),r.set(xe(n,t),0),s=12}else r=new u(e.length),s=0;r.set(xe(n,e),s),t.enqueue(r)},flush(){}})}}function be(e,t){const n=new u(t.length);for(let r=0;r<t.length;r++)n[r]=Re(e)^t[r],ke(e,n[r]);return n}function xe(e,t){const n=new u(t.length);for(let r=0;r<t.length;r++)n[r]=Re(e)^t[r],ke(e,t[r]);return n}function ve(e,t){e.keys=[305419896,591751049,878082192],e.crcKey0=new U(e.keys[0]),e.crcKey2=new U(e.keys[2]);for(let n=0;n<t.length;n++)ke(e,t.charCodeAt(n))}function ke(e,t){e.crcKey0.append([t]),e.keys[0]=~e.crcKey0.get(),e.keys[1]=Se(e.keys[1]+ze(e.keys[0])),e.keys[1]=Se(i.imul(e.keys[1],134775813)+1),e.crcKey2.append([e.keys[1]>>>24]),e.keys[2]=~e.crcKey2.get()}function Re(e){const t=2|e.keys[2];return ze(i.imul(t,1^t)>>>8)}function ze(e){return 255&e}function Se(e){return 4294967295&e}class Te extends x{constructor(e,t){let n;super({start(){n=new e(t)},transform(e,t){e=n.append(e),t.enqueue(e)},flush(e){const t=n.flush();t&&e.enqueue(t)}})}}const Ae="Invalid signature",Ee="deflate-raw",Fe="undefined",De=typeof R==Fe,Ce=typeof z==Fe;let We=!0,Ue=!0;class Be extends x{constructor(e,t,{chunkSize:n},...r){super({},...r);const{compressed:s,encrypted:i,useCompressionStream:a,password:o,passwordVerification:l,encryptionStrength:c,zipCrypto:u,signed:d,level:h}=t,p=this;let w,g,_=Ie(super.readable);if(i&&!u||!d||([_,w]=_.tee(),w=w.pipeThrough(new B)),s)if(void 0!==a&&!a||De&&!Ue)_=He(e,_,{chunkSize:n,level:h});else try{_=_.pipeThrough(new R(Ee))}catch(t){Ue=!1,_=He(e,_,{chunkSize:n,level:h})}i&&(u?_=_.pipeThrough(new me(o,l)):(g=new de(o,c),_=_.pipeThrough(g))),qe(p,_,(async()=>{let e;i&&!u&&(e=g.signature),i&&!u||!d||(e=await w.getReader().read(),e=new f(e.value.buffer).getUint32(0)),p.signature=e}))}}class Me extends x{constructor(e,t,{chunkSize:n},...r){super({},...r);const{zipCrypto:s,encrypted:i,password:a,passwordVerification:o,signed:l,encryptionStrength:u,compressed:d,useCompressionStream:h}=t;let p,w,g=Ie(super.readable);if(i&&(s?g=g.pipeThrough(new ye(a,o)):(w=new ue(a,l,u),g=g.pipeThrough(w))),d)if(void 0!==h&&!h||Ce&&!We)g=He(e,g,{chunkSize:n});else try{g=g.pipeThrough(new z(Ee))}catch(t){We=!1,g=He(e,g,{chunkSize:n})}i&&!s||!l||([g,p]=g.tee(),p=p.pipeThrough(new B)),qe(this,g,(async()=>{if(i&&!s&&!w.valid)throw new c(Ae);if((!i||s)&&l){const e=await p.getReader().read(),n=new f(e.value.buffer);if(t.signature!=n.getUint32(0,!1))throw new c(Ae)}}))}}function He(e,t,n){return t.pipeThrough(new Te(e,n))}function Ie(e){return e.pipeThrough(new x({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function qe(e,t,r){e.size=0,t=t.pipeThrough(new x({transform(t,n){t&&t.length&&(e.size+=t.length,n.enqueue(t))},flush:r})),n.defineProperty(e,"readable",{get:()=>t})}const Le="deflate",Ne="data";class Ve{constructor(e,t,n,r,s){const{codecType:i}=r;async function a(i){const a=new i(e,r,s);await t.pipeThrough(a).pipeTo(n,{preventClose:!0});const{size:o,signature:l}=a;return{size:o,signature:l}}i.startsWith(Le)?this.run=()=>a(Be):i.startsWith("inflate")&&(this.run=()=>a(Me))}}let Pe,Oe=!0;class Ke{constructor(e,t,r,s){const{readable:i,writable:a}=t,{options:o,config:d,streamOptions:h,webWorker:f,scripts:p,codecConstructor:g}=r;n.assign(e,{busy:!0,codecConstructor:g,readable:i,writable:a,options:n.assign({},o),scripts:p,terminate(){e.worker&&!e.busy&&(e.worker.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,s(e)}});const{signal:_,onstart:y,onprogress:m,size:b,onend:v}=h;let k=0;const R={};return y&&(R.start=()=>Ze(y,b())),R.transform=async(e,t)=>{k+=e.length,m&&await Ze(m,k,b()),t.enqueue(e)},R.flush=()=>{i.size=()=>k,v&&Ze(v,k)},e.readable=i.pipeThrough(new x(R,{highWaterMark:1,size:()=>d.chunkSize}),{signal:_}),void 0===Pe&&(Pe="undefined"!=typeof Worker),f&&Pe?((e,{baseURL:t,chunkSize:r})=>{const s={type:"module"},{readable:i,writable:a}=e;if(n.assign(e,{reader:i.getReader(),writer:a.getWriter(),result:new w(((t,n)=>{e.resolveResult=t,e.rejectResult=n}))}),!e.interface){if(Oe)try{e.worker=o({})}catch(t){Oe=!1,e.worker=o(s)}else e.worker=o(s);e.worker.addEventListener("message",(async t=>{const n=t.data,{reader:r,writer:s,resolveResult:i,rejectResult:a,onTaskFinished:o}=e,{type:l,data:h,messageId:f,result:p}=n,w=n.error;try{if(w){const{message:e,stack:t}=w,n=new c(e);n.stack=t,g(n)}else{if("pull"==l){const{value:e,done:t}=await r.read();d({type:Ne,data:e,done:t,messageId:f})}l==Ne&&(await s.ready,await s.write(new u(h))),"close"==l&&g(null,p)}}catch(e){g(e)}function g(e,t){e?a(e):i(t),s.releaseLock(),o()}}),!1),e.interface={run(){const{options:t}=e;return d({type:"start",scripts:e.scripts.slice(1),options:t,config:{chunkSize:r}}),e.result}}}return e.interface;function o(n){let r,s;r=e.scripts[0],"function"==typeof r&&(r=r());try{s=new l(r,t)}catch(e){s=r}return new Worker(s,n)}function d(t){const{worker:n,writer:r,onTaskFinished:s}=e;try{let{data:e}=t;if(e)try{const{buffer:r,length:s}=e;s!=r.byteLength&&(e=new u(e)),t.data=e.buffer,n.postMessage(t,[t.data])}catch(e){n.postMessage(t)}else n.postMessage(t)}catch(e){throw r.releaseLock(),s(),e}}})(e,d):((e,t)=>{const n=new Ve(e.codecConstructor,e.readable,e.writable,e.options,t),{onTaskFinished:r}=e;return{async run(){try{return await n.run()}finally{r()}}}})(e,d)}}async function Ze(e,...t){try{await e(...t)}catch(e){}}let je=[];const Xe=[];let Ye=0;function Ge(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const Je="HTTP error ",Qe="HTTP Range not supported",$e="text/plain",et="GET",tt=65536;class nt{constructor(){this.size=0}init(){this.initialized=!0}}class rt extends nt{get readable(){const e=this,{chunkSize:t=tt}=e,n=new v({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:a}=n,{chunkOffset:o}=this;r.enqueue(await e.readUint8Array(s+o,i.min(t,a()-o))),o+t>a()?r.close():this.chunkOffset+=t}});return n}}class st extends nt{constructor(){super();const e=this,t=new k({write:t=>e.writeUint8Array(t)});n.defineProperty(this,"writable",{get:()=>t})}}class it extends st{writeUint8Array(e){this.size+=e.length}}class at extends rt{constructor(e){super(),this.blob=e,this.size=e.size}async readUint8Array(e,t){return new u(await this.blob.slice(e,e+t).arrayBuffer())}}class ot extends it{constructor(e){super();const t=this;t.contentType=e,t.arrayBuffersMaxlength=8,lt(t)}writeUint8Array(e){super.writeUint8Array(e);const t=this;t.arrayBuffers.length==t.arrayBuffersMaxlength&&ct(t),t.arrayBuffers.push(e.buffer)}getData(){const e=this;return e.blob||(e.arrayBuffers.length&&ct(e),e.blob=e.pendingBlob,lt(e)),e.blob}}function lt(e){e.pendingBlob=new p([],{type:e.contentType}),e.arrayBuffers=[]}function ct(e){e.pendingBlob=new p([e.pendingBlob,...e.arrayBuffers],{type:e.contentType}),e.arrayBuffers=[]}class ut extends rt{constructor(e,t){super();const r=this;r.url=e,r.preventHeadRequest=t.preventHeadRequest,r.useRangeHeader=t.useRangeHeader,r.forceRangeRequests=t.forceRangeRequests,r.options=t=n.assign({},t),delete t.preventHeadRequest,delete t.useRangeHeader,delete t.forceRangeRequests,delete t.useXHR}async init(){super.init(),await ht(this,bt,gt)}readUint8Array(e,t){return ft(this,e,t,bt,gt)}}class dt extends rt{constructor(e,t){super();const n=this;n.url=e,n.preventHeadRequest=t.preventHeadRequest,n.useRangeHeader=t.useRangeHeader,n.forceRangeRequests=t.forceRangeRequests,n.options=t}async init(){super.init(),await ht(this,xt,_t)}readUint8Array(e,t){return ft(this,e,t,xt,_t)}}async function ht(e,t,n){if((e=>{const{baseURL:t}=D(),{protocol:n}=new l(e,t);return"http:"==n||"https:"==n})(e.url)&&(e.useRangeHeader||e.forceRangeRequests)){const r=await t(et,e,pt(e));if(!e.forceRangeRequests&&"bytes"!=r.headers.get("Accept-Ranges"))throw new c(Qe);{let s;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&&(s=Number(t))}}void 0===s?await mt(e,t,n):e.size=s}}else await mt(e,t,n)}async function ft(e,t,n,r,s){if(e.useRangeHeader||e.forceRangeRequests){const s=await r(et,e,pt(e,t,n));if(206!=s.status)throw new c(Qe);return new u(await s.arrayBuffer())}return e.data||await s(e,e.options),new u(e.data.subarray(t,t+n))}function pt(e,t=0,r=1){return n.assign({},wt(e),{Range:"bytes="+t+"-"+(t+r-1)})}function wt(e){const t=e.options.headers;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function gt(e){await yt(e,bt)}async function _t(e){await yt(e,xt)}async function yt(e,t){const n=await t(et,e,wt(e));e.data=new u(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function mt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,wt(e))).headers.get("Content-Length");r?e.size=Number(r):await n(e,e.options)}}async function bt(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 c(Qe):new c(Je+(i.statusText||i.status))}function xt(e,{url:t},r){return new w(((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 o(e)})}else i(416==a.status?new c(Qe):new c(Je+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>i(e.detail.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 vt extends rt{constructor(e,t={}){super(),this.url=e,this.reader=t.useXHR?new dt(e,t):new ut(e,t)}set size(e){}get size(){return this.reader.size}async init(){super.init(),await this.reader.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}async function kt(e){e.init&&!e.initialized&&await e.init()}const Rt=4294967295,zt=65535,St=new a(2107,11,31),Tt=new a(1980,0,1),At=["filename","rawFilename","directory","encrypted","compressedSize","uncompressedSize","lastModDate","rawLastModDate","comment","rawComment","signature","extraField","rawExtraField","bitFlag","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","filenameUTF8","commentUTF8","offset","zip64","compressionMethod","extraFieldNTFS","lastAccessDate","creationDate","extraFieldExtendedTimestamp","version","versionMadeBy","msDosCompatible","internalFileAttribute","externalFileAttribute"];class Et{constructor(e){At.forEach((t=>this[t]=e[t]))}}const Ft="File already exists",Dt="Zip file comment exceeds 64KB",Ct="File entry comment exceeds 64KB",Wt="File entry name exceeds 64KB",Ut="Version exceeds 65535",Bt="The strength must equal 1, 2, or 3",Mt="Extra field type exceeds 65535",Ht="Extra field data exceeds 64KB",It="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",qt=new u([7,0,2,0,65,69,3,0,0]);let Lt=0;async function Nt(e,t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()}function Vt(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function Pt(e,t,n){return void 0===t[n]?e.options[n]:t[n]}function Ot(e,t,n){e.setUint8(t,n)}function Kt(e,t,n){e.setUint16(t,n,!0)}function Zt(e,t,n){e.setUint32(t,n,!0)}function jt(e,t,n){e.setBigUint64(t,n,!0)}function Xt(e,t,n){e.set(t,n)}function Yt(e){return new f(e.buffer)}C({Deflate:T}),e.BlobReader=at,e.BlobWriter=ot,e.Data64URIReader=class extends rt{constructor(e){super();const t=this;t.dataURI=e;let n=e.length;for(;"="==e.charAt(n-1);)n--;t.dataStart=e.indexOf(",")+1,t.size=i.floor(.75*(n-t.dataStart))}readUint8Array(e,t){const n=new u(t),r=4*i.floor(e/3),s=this.dataStart,a=atob(this.dataURI.substring(r+s,4*i.ceil((e+t)/3)+s)),o=e-3*i.floor(r/4);for(let e=o;o+t>e;e++)n[e-o]=a.charCodeAt(e);return n}},e.Data64URIWriter=class extends it{constructor(e){super(),this.data="data:"+(e||"")+";base64,",this.pending=[]}writeUint8Array(e){super.writeUint8Array(e);const t=this;let n=0,s=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*i.floor((a+e.length)/3)-a;n++)s+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.pending+=r.fromCharCode(e[n]);s.length>2?t.data+=b(s):t.pending=s}getData(){return this.data+b(this.pending)}},e.ERR_DUPLICATED_NAME=Ft,e.ERR_HTTP_RANGE=Qe,e.ERR_INVALID_COMMENT=Dt,e.ERR_INVALID_ENCRYPTION_STRENGTH=Bt,e.ERR_INVALID_ENTRY_COMMENT=Ct,e.ERR_INVALID_ENTRY_NAME=Wt,e.ERR_INVALID_EXTRAFIELD_DATA=Ht,e.ERR_INVALID_EXTRAFIELD_TYPE=Mt,e.ERR_INVALID_VERSION=Ut,e.ERR_UNSUPPORTED_FORMAT=It,e.HttpRangeReader=class extends vt{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=vt,e.Reader=rt,e.TextReader=class extends rt{constructor(e){super(),this.blobReader=new at(new p([e],{type:$e}))}init(){const e=this;super.init(),e.blobReader.init(),e.size=e.blobReader.size}readUint8Array(e,t){return this.blobReader.readUint8Array(e,t)}},e.TextWriter=class extends it{constructor(e){super(),this.encoding=e,this.blob=new p([],{type:$e})}writeUint8Array(e){super.writeUint8Array(e),this.blob=new p([this.blob,e.buffer],{type:$e})}getData(){const e=this;if(e.blob.text&&(void 0===e.encoding||e.encoding&&"utf-8"==e.encoding.toLowerCase()))return e.blob.text();{const t=new FileReader;return new w(((n,r)=>{t.onload=e=>n(e.target.result),t.onerror=()=>r(t.error),t.readAsText(e.blob,e.encoding)}))}}},e.Uint8ArrayReader=class extends rt{constructor(e){super(),this.array=e,this.size=e.length}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends it{constructor(){super(),this.array=new u}writeUint8Array(e){super.writeUint8Array(e);const t=this,n=t.array;t.array=new u(n.length+e.length),t.array.set(n),t.array.set(e,n.length)}getData(){return this.array}},e.Writer=it,e.ZipWriter=class{constructor(e,t={}){n.assign(this,{writer:e,options:t,config:D(),files:new o,filenames:new Set,offset:e.size||0,pendingCompressedSize:0,pendingEntries:[],pendingAddFileCalls:new Set})}async add(e="",r,o={}){const l=this,{pendingAddFileCalls:p,pendingEntries:g,config:_}=l;if(Lt>=_.maxWorkers)return new w(((t,n)=>g.push({name:e,reader:r,options:o,resolve:t,reject:n})));{let _;Lt++;try{if(e=e.trim(),l.filenames.has(e))throw new c(Ft);return l.filenames.add(e),_=(async(e,r,o,l)=>{r=r.trim(),l.directory&&!r.endsWith("/")?r+="/":l.directory=r.endsWith("/");const p=M(r);if(p.length>zt)throw new c(Wt);const g=l.comment||"",_=M(g);if(_.length>zt)throw new c(Ct);const y=e.options.version||l.version||0;if(y>zt)throw new c(Ut);const m=e.options.versionMadeBy||l.versionMadeBy||20;if(m>zt)throw new c(Ut);const b=Pt(e,l,"lastModDate")||new a,x=Pt(e,l,"lastAccessDate"),v=Pt(e,l,"creationDate"),k=Pt(e,l,"password"),R=Pt(e,l,"encryptionStrength")||3,z=Pt(e,l,"zipCrypto");if(void 0!==k&&void 0!==R&&(1>R||R>3))throw new c(Bt);let S=new u;const{extraField:T}=l;if(T){let e=0,t=0;T.forEach((t=>e+=4+t.length)),S=new u(e),T.forEach(((e,n)=>{if(n>zt)throw new c(Mt);if(e.length>zt)throw new c(Ht);Xt(S,new d([n]),t),Xt(S,new d([e.length]),t+2),Xt(S,e,t+4),t+=4+e.length}))}let A=Pt(e,l,"extendedTimestamp");void 0===A&&(A=!0);let E=0,F=Pt(e,l,"keepOrder");void 0===F&&(F=!0);let D=0,C=Pt(e,l,"msDosCompatible");void 0===C&&(C=!0);const W=Pt(e,l,"internalFileAttribute")||0,U=Pt(e,l,"externalFileAttribute")||0;o&&(await kt(o),void 0===o.size?l.dataDescriptor=!0:D=o.size,E=(e=>e+5*(i.floor(e/16383)+1))(D));let B=l.zip64||e.options.zip64||!1;if(e.offset+e.pendingCompressedSize>=Rt||D>=Rt||E>=Rt){if(!1===l.zip64||!1===e.options.zip64||!F)throw new c(It);B=!0}e.pendingCompressedSize+=E,await w.resolve();const H=Pt(e,l,"level"),I=Pt(e,l,"useWebWorkers"),q=Pt(e,l,"bufferedWrite");let L=Pt(e,l,"dataDescriptor"),N=Pt(e,l,"dataDescriptorSignature");const V=Pt(e,l,"signal"),P=Pt(e,l,"useCompressionStream");void 0===L&&(L=!0),L&&void 0===N&&(N=!1);const O=await(async(e,r,a,o)=>{const{files:l,writer:d}=e,{keepOrder:p,dataDescriptor:g,zipCrypto:_,signal:y}=o,m=t.from(l.values()).pop();let b,x,v,k,R,z={};l.set(r,z);try{let t;if(p&&(t=m&&m.lock,z.lock=new w((e=>v=e))),o.bufferedWrite||e.lockWriter||!g?(R=new ot,R.init(),b=!0):(e.lockWriter=w.resolve(),await kt(d),R=d),z=await(async(e,t,r,a,o)=>{const{rawFilename:l,lastAccessDate:c,creationDate:d,password:f,level:p,zip64:g,zipCrypto:_,dataDescriptor:y,dataDescriptorSignature:m,directory:b,version:x,versionMadeBy:v,rawComment:k,rawExtraField:R,useWebWorkers:z,onstart:S,onprogress:T,onend:A,signal:E,encryptionStrength:F,extendedTimestamp:D,msDosCompatible:C,internalFileAttribute:W,externalFileAttribute:U,useCompressionStream:B}=o,M=!(!f||!f.length),H=0!==p&&!b;let I,q,L;if(M&&!_){I=new u(qt.length+2);const e=Yt(I);Kt(e,0,39169),Xt(I,qt,2),Ot(e,8,F)}else I=new u;if(D){L=new u(9+(c?4:0)+(d?4:0));const e=Yt(L);Kt(e,0,21589),Kt(e,2,L.length-4),Ot(e,4,1+(c?2:0)+(d?4:0)),Zt(e,5,i.floor(o.lastModDate.getTime()/1e3)),c&&Zt(e,9,i.floor(c.getTime()/1e3)),d&&Zt(e,13,i.floor(d.getTime()/1e3));try{q=new u(36);const e=Yt(q),t=Vt(o.lastModDate);Kt(e,0,10),Kt(e,2,32),Kt(e,8,1),Kt(e,10,24),jt(e,12,t),jt(e,20,Vt(c)||t),jt(e,28,Vt(d)||t)}catch(e){q=new u}}else q=L=new u;const N={lock:t.lock,version:x||20,versionMadeBy:v,zip64:g,directory:!!b,filenameUTF8:!0,rawFilename:l,commentUTF8:!0,rawComment:k,rawExtraFieldZip64:g?new u(28):new u,rawExtraFieldExtendedTimestamp:L,rawExtraFieldNTFS:q,rawExtraFieldAES:I,rawExtraField:R,extendedTimestamp:D,msDosCompatible:C,internalFileAttribute:W,externalFileAttribute:U};let V=N.uncompressedSize=0,P=2048;y&&(P|=8);let O=0;H&&(O=8),g&&(N.version=N.version>45?N.version:45),M&&(P|=1,_||(N.version=N.version>51?N.version:51,O=99,H&&(N.rawExtraFieldAES[9]=8))),N.compressionMethod=O;const K=N.headerArray=new u(26),Z=Yt(K);Kt(Z,0,N.version),Kt(Z,2,P),Kt(Z,4,O);const j=new h(1),X=Yt(j);let Y;Y=o.lastModDate<Tt?Tt:o.lastModDate>St?St:o.lastModDate,Kt(X,0,(Y.getHours()<<6|Y.getMinutes())<<5|Y.getSeconds()/2),Kt(X,2,(Y.getFullYear()-1980<<4|Y.getMonth()+1)<<5|Y.getDate());const G=j[0];Zt(Z,6,G),Kt(Z,22,l.length);const J=I.length+L.length+q.length+R.length;Kt(Z,24,J);const Q=new u(30+l.length+J);let $;Zt(Yt(Q),0,67324752),Xt(Q,K,4),Xt(Q,l,30),Xt(Q,I,30+l.length),Xt(Q,L,30+l.length+I.length),Xt(Q,q,30+l.length+I.length+L.length),Xt(Q,R,30+l.length+I.length+L.length+q.length);let ee=0;if(e){e.chunkSize=(e=>i.max(e.chunkSize,64))(a),await Nt(r,Q),N.dataWritten=t.dataWritten=!0;const n=()=>e.size,s=e.readable;s.size=n;const o={options:{codecType:Le,level:p,password:f,encryptionStrength:F,zipCrypto:M&&_,passwordVerification:M&&_&&G>>8&255,signed:!0,compressed:H,encrypted:M,useWebWorkers:z,useCompressionStream:B},config:a,streamOptions:{signal:E,size:n,onstart:S,onprogress:T,onend:A},codecConstructor:a.Deflate};$=await(async(e,t)=>{const{options:n,config:r}=t,s=!n.compressed&&!n.signed&&!n.encrypted,{useWebWorkers:i,useCompressionStream:a,codecType:o}=n,{workerScripts:l}=r;let c;if(t.webWorker=!s&&(i||void 0===i&&r.useWebWorkers),t.scripts=t.webWorker&&l?l[o]:[],n.useCompressionStream=void 0===a?r.useCompressionStream:a,je.length<r.maxWorkers){const n={indexWorker:Ye};Ye++,je.push(n),c=new Ke(n,e,t,u)}else{const n=je.find((e=>!e.busy));n?(Ge(n),c=new Ke(n,e,t,u)):c=await new w((n=>Xe.push({resolve:n,stream:e,workerOptions:t})))}return c.run();function u(e){if(Xe.length){const[{resolve:t,stream:n,workerOptions:r}]=Xe.splice(0,1);t(new Ke(e,n,r,u))}else if(e.worker){const{terminateWorkerTimeout:t}=r;Ge(e),Number.isFinite(t)&&t>=0&&(e.terminateTimeout=setTimeout((()=>{je=je.filter((t=>t!=e)),e.terminate()}),t))}else je=je.filter((t=>t!=e))}})({readable:s,writable:r},o),V=N.uncompressedSize=e.size=s.size(),ee=$.size}else await Nt(r,Q),N.dataWritten=t.dataWritten=!0;let te,ne=new u,re=0;if(y&&(ne=new u(g?m?24:20:m?16:12),te=Yt(ne),m&&(re=4,Zt(te,0,134695760))),e){const{signature:e}=$;if(M&&!_||void 0===e||(Zt(Z,10,e),N.signature=e,y&&Zt(te,re,e)),g){const e=Yt(N.rawExtraFieldZip64);Kt(e,0,1),Kt(e,2,24),Zt(Z,14,Rt),jt(e,12,s(ee)),Zt(Z,18,Rt),jt(e,4,s(V)),y&&(jt(te,re+4,s(ee)),jt(te,re+12,s(V)))}else Zt(Z,14,ee),Zt(Z,18,V),y&&(Zt(te,re+4,ee),Zt(te,re+8,V))}y&&await Nt(r,ne);const se=Q.length+ee+ne.length;return n.assign(N,{compressedSize:ee,lastModDate:Y,rawLastModDate:G,creationDate:d,lastAccessDate:c,encrypted:M,length:se}),N})(a,z,R.writable,e.config,o),l.set(r,z),z.filename=r,b){let n=R.getData();await t,await async function t(){const{lockWriter:n}=e;if(n)return await n.then((()=>delete e.lockWriter)),t();e.lockWriter=new w((e=>x=e))}(),k=!0;const{writable:r}=d;if(!g){const e=26,t=await((e,t,n)=>n?e.slice(0,n).arrayBuffer():e.arrayBuffer())(n,0,e),s=new f(t);z.encrypted&&!_||Zt(s,14,z.signature),z.zip64?(Zt(s,18,Rt),Zt(s,22,Rt)):(Zt(s,18,z.compressedSize),Zt(s,22,z.uncompressedSize)),await Nt(r,new u(t)),n=n.slice(e)}await n.stream().pipeTo(r,{preventClose:!0,signal:y}),k=!1}if(z.offset=e.offset,z.zip64)jt(Yt(z.rawExtraFieldZip64),20,s(z.offset));else if(z.offset>=Rt)throw new c(It);return e.offset+=z.length,z}catch(t){throw(b&&k||!b&&z.dataWritten)&&(t.corruptedEntry=e.hasCorruptedEntries=!0,e.offset+=R.size),l.delete(r),t}finally{v&&v(),x&&x()}})(e,r,o,n.assign({},l,{rawFilename:p,rawComment:_,version:y,versionMadeBy:m,lastModDate:b,lastAccessDate:x,creationDate:v,rawExtraField:S,zip64:B,password:k,level:H,useWebWorkers:I,encryptionStrength:R,extendedTimestamp:A,zipCrypto:z,bufferedWrite:q,keepOrder:F,dataDescriptor:L,dataDescriptorSignature:N,signal:V,msDosCompatible:C,internalFileAttribute:W,externalFileAttribute:U,useCompressionStream:P}));return E&&(e.pendingCompressedSize-=E),n.assign(O,{name:r,comment:g,extraField:T}),new Et(O)})(l,e,r,o),p.add(_),await _}catch(t){throw l.filenames.delete(e),t}finally{p.delete(_),Lt--;const e=g.shift();e&&l.add(e.name,e.reader,e.options).then(e.resolve).catch(e.reject)}}}async close(e=new u,n={}){const{pendingAddFileCalls:r,writer:a}=this,{writable:o}=a;for(;r.size;)await w.all(t.from(r));return await(async(e,n,r)=>{const{files:a}=e;let o=0,l=0,d=e.offset,h=a.size;for(const[,e]of a)l+=46+e.rawFilename.length+e.rawComment.length+e.rawExtraFieldZip64.length+e.rawExtraFieldAES.length+e.rawExtraFieldExtendedTimestamp.length+e.rawExtraFieldNTFS.length+e.rawExtraField.length;let f=r.zip64||e.options.zip64||!1;if(d>=Rt||l>=Rt||h>=zt){if(!1===r.zip64||!1===e.options.zip64)throw new c(It);f=!0}const p=new u(l+(f?98:22)),w=Yt(p);for(const[e,n]of t.from(a.values()).entries()){const{rawFilename:t,rawExtraFieldZip64:s,rawExtraFieldAES:l,rawExtraField:c,rawComment:d,versionMadeBy:h,headerArray:f,directory:g,zip64:_,msDosCompatible:y,internalFileAttribute:m,externalFileAttribute:b}=n;let x,v;if(n.extendedTimestamp){v=n.rawExtraFieldNTFS,x=new u(9);const e=Yt(x);Kt(e,0,21589),Kt(e,2,x.length-4),Ot(e,4,1),Zt(e,5,i.floor(n.lastModDate.getTime()/1e3))}else v=x=new u;const k=s.length+l.length+x.length+v.length+c.length;if(Zt(w,o,33639248),Kt(w,o+4,h),Xt(p,f,o+6),Kt(w,o+30,k),Kt(w,o+32,d.length),Kt(w,o+36,m),b?Zt(w,o+38,b):g&&y&&Ot(w,o+38,16),Zt(w,o+42,_?Rt:n.offset),Xt(p,t,o+46),Xt(p,s,o+46+t.length),Xt(p,l,o+46+t.length+s.length),Xt(p,x,o+46+t.length+s.length+l.length),Xt(p,v,o+46+t.length+s.length+l.length+x.length),Xt(p,c,o+46+t.length+s.length+l.length+x.length+v.length),Xt(p,d,o+46+t.length+k),o+=46+t.length+k+d.length,r.onprogress)try{await r.onprogress(e+1,a.size,new Et(n))}catch(e){}}if(f&&(Zt(w,o,101075792),jt(w,o+4,s(44)),Kt(w,o+12,45),Kt(w,o+14,45),jt(w,o+24,s(h)),jt(w,o+32,s(h)),jt(w,o+40,s(l)),jt(w,o+48,s(d)),Zt(w,o+56,117853008),jt(w,o+64,s(d)+s(l)),Zt(w,o+72,1),h=zt,d=Rt,l=Rt,o+=76),Zt(w,o,101010256),Kt(w,o+8,h),Kt(w,o+10,h),Zt(w,o+12,l),Zt(w,o+16,d),n&&n.length){if(n.length>zt)throw new c(Dt);Kt(w,o+20,n.length)}const{writable:g}=e.writer;await Nt(g,p),n&&n.length&&await Nt(g,n)})(this,e,n),a.preventClose||n.preventClose||await o.getWriter().close(),a.getData?a.getData():o}},e.configure=C,e.getMimeType=()=>"application/octet-stream",e.initStream=kt,e.terminateWorkers=()=>{je.forEach((e=>{Ge(e),e.terminate()}))},n.defineProperty(e,"__esModule",{value:!0})}));