@zip.js/zip.js 2.5.10 → 2.5.13

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.
package/dist/zip-full.js CHANGED
@@ -1898,7 +1898,7 @@
1898
1898
  }
1899
1899
 
1900
1900
  ZStream.prototype = {
1901
- deflateInit: function (level, bits) {
1901
+ deflateInit(level, bits) {
1902
1902
  const that = this;
1903
1903
  that.dstate = new Deflate();
1904
1904
  if (!bits)
@@ -1906,7 +1906,7 @@
1906
1906
  return that.dstate.deflateInit(that, level, bits);
1907
1907
  },
1908
1908
 
1909
- deflate: function (flush) {
1909
+ deflate(flush) {
1910
1910
  const that = this;
1911
1911
  if (!that.dstate) {
1912
1912
  return Z_STREAM_ERROR;
@@ -1914,7 +1914,7 @@
1914
1914
  return that.dstate.deflate(that, flush);
1915
1915
  },
1916
1916
 
1917
- deflateEnd: function () {
1917
+ deflateEnd() {
1918
1918
  const that = this;
1919
1919
  if (!that.dstate)
1920
1920
  return Z_STREAM_ERROR;
@@ -1923,14 +1923,14 @@
1923
1923
  return ret;
1924
1924
  },
1925
1925
 
1926
- deflateParams: function (level, strategy) {
1926
+ deflateParams(level, strategy) {
1927
1927
  const that = this;
1928
1928
  if (!that.dstate)
1929
1929
  return Z_STREAM_ERROR;
1930
1930
  return that.dstate.deflateParams(that, level, strategy);
1931
1931
  },
1932
1932
 
1933
- deflateSetDictionary: function (dictionary, dictLength) {
1933
+ deflateSetDictionary(dictionary, dictLength) {
1934
1934
  const that = this;
1935
1935
  if (!that.dstate)
1936
1936
  return Z_STREAM_ERROR;
@@ -1942,7 +1942,7 @@
1942
1942
  // this function so some applications may wish to modify it to avoid
1943
1943
  // allocating a large strm->next_in buffer and copying from it.
1944
1944
  // (See also flush_pending()).
1945
- read_buf: function (buf, start, size) {
1945
+ read_buf(buf, start, size) {
1946
1946
  const that = this;
1947
1947
  let len = that.avail_in;
1948
1948
  if (len > size)
@@ -1960,7 +1960,7 @@
1960
1960
  // through this function so some applications may wish to modify it
1961
1961
  // to avoid allocating a large strm->next_out buffer and copying into it.
1962
1962
  // (See also read_buf()).
1963
- flush_pending: function () {
1963
+ flush_pending() {
1964
1964
  const that = this;
1965
1965
  let len = that.dstate.pending;
1966
1966
 
@@ -4128,7 +4128,7 @@
4128
4128
  }
4129
4129
 
4130
4130
  ZStream.prototype = {
4131
- inflateInit: function (bits) {
4131
+ inflateInit(bits) {
4132
4132
  const that = this;
4133
4133
  that.istate = new Inflate();
4134
4134
  if (!bits)
@@ -4136,14 +4136,14 @@
4136
4136
  return that.istate.inflateInit(that, bits);
4137
4137
  },
4138
4138
 
4139
- inflate: function (f) {
4139
+ inflate(f) {
4140
4140
  const that = this;
4141
4141
  if (!that.istate)
4142
4142
  return Z_STREAM_ERROR;
4143
4143
  return that.istate.inflate(that, f);
4144
4144
  },
4145
4145
 
4146
- inflateEnd: function () {
4146
+ inflateEnd() {
4147
4147
  const that = this;
4148
4148
  if (!that.istate)
4149
4149
  return Z_STREAM_ERROR;
@@ -4152,23 +4152,23 @@
4152
4152
  return ret;
4153
4153
  },
4154
4154
 
4155
- inflateSync: function () {
4155
+ inflateSync() {
4156
4156
  const that = this;
4157
4157
  if (!that.istate)
4158
4158
  return Z_STREAM_ERROR;
4159
4159
  return that.istate.inflateSync(that);
4160
4160
  },
4161
- inflateSetDictionary: function (dictionary, dictLength) {
4161
+ inflateSetDictionary(dictionary, dictLength) {
4162
4162
  const that = this;
4163
4163
  if (!that.istate)
4164
4164
  return Z_STREAM_ERROR;
4165
4165
  return that.istate.inflateSetDictionary(that, dictionary, dictLength);
4166
4166
  },
4167
- read_byte: function (start) {
4167
+ read_byte(start) {
4168
4168
  const that = this;
4169
4169
  return that.next_in[start];
4170
4170
  },
4171
- read_buf: function (start, size) {
4171
+ read_buf(start, size) {
4172
4172
  const that = this;
4173
4173
  return that.next_in.subarray(start, start + size);
4174
4174
  }
@@ -4336,7 +4336,7 @@
4336
4336
  }
4337
4337
  }
4338
4338
 
4339
- var e=e=>{if("function"==typeof URL.createObjectURL){const t=()=>URL.createObjectURL(new Blob(['const{Array:t,Object:e,Math:n,Error:r,Uint8Array:i,Uint16Array:s,Uint32Array:o,Int32Array:f,DataView:c,TextEncoder:l,crypto:u,postMessage:a,TransformStream:w,ReadableStream:h,WritableStream:d,CompressionStream:p,DecompressionStream:b}=globalThis,y=[];for(let t=0;256>t;t++){let e=t;for(let t=0;8>t;t++)1&e?e=e>>>1^3988292384:e>>>=1;y[t]=e}class m{constructor(t){this.t=t||-1}append(t){let e=0|this.t;for(let n=0,r=0|t.length;r>n;n++)e=e>>>8^y[255&(e^t[n])];this.t=e}get(){return~this.t}}class k extends w{constructor(){super({start(){this.i=new m},transform(t){this.i.append(t)},flush(t){const e=new i(4);new c(e.buffer).setUint32(0,this.i.get()),t.enqueue(e)}})}}const g={concat(t,e){if(0===t.length||0===e.length)return t.concat(e);const n=t[t.length-1],r=g.o(n);return 32===r?t.concat(e):g.l(e,r,0|n,t.slice(0,t.length-1))},u(t){const e=t.length;if(0===e)return 0;const n=t[e-1];return 32*(e-1)+g.o(n)},h(t,e){if(32*t.length<e)return t;const r=(t=t.slice(0,n.ceil(e/32))).length;return e&=31,r>0&&e&&(t[r-1]=g.p(e,t[r-1]&2147483648>>e-1,1)),t},p:(t,e,n)=>32===t?e:(n?0|e:e<<32-t)+1099511627776*t,o:t=>n.round(t/1099511627776)||32,l(t,e,n,r){for(void 0===r&&(r=[]);e>=32;e-=32)r.push(n),n=0;if(0===e)return r.concat(t);for(let i=0;i<t.length;i++)r.push(n|t[i]>>>e),n=t[i]<<32-e;const i=t.length?t[t.length-1]:0,s=g.o(i);return r.push(g.p(e+s&31,e+s>32?n:r.pop(),1)),r}},v={m:{k(t){const e=g.u(t)/8,n=new i(e);let r;for(let i=0;e>i;i++)0==(3&i)&&(r=t[i/4]),n[i]=r>>>24,r<<=8;return n},g(t){const e=[];let n,r=0;for(n=0;n<t.length;n++)r=r<<8|t[n],3==(3&n)&&(e.push(r),r=0);return 3&n&&e.push(g.p(8*(3&n),r)),e}}},S={v:function(t){t?(this.S=t.S.slice(0),this._=t._.slice(0),this.C=t.C):this.reset()}};S.v.prototype={blockSize:512,reset:function(){const t=this;return t.S=this.A.slice(0),t._=[],t.C=0,t},update:function(t){const e=this;"string"==typeof t&&(t=v.I.g(t));const n=e._=g.concat(e._,t),i=e.C,s=e.C=i+g.u(t);if(s>9007199254740991)throw new r("Cannot hash more than 2^53 - 1 bits");const f=new o(n);let c=0;for(let t=e.blockSize+i-(e.blockSize+i&e.blockSize-1);s>=t;t+=e.blockSize)e.V(f.subarray(16*c,16*(c+1))),c+=1;return n.splice(0,16*c),e},P:function(){const t=this;let e=t._;const r=t.S;e=g.concat(e,[g.p(1,1)]);for(let t=e.length+2;15&t;t++)e.push(0);for(e.push(n.floor(t.C/4294967296)),e.push(0|t.C);e.length;)t.V(e.splice(0,16));return t.reset(),r},A:[1732584193,4023233417,2562383102,271733878,3285377520],B:[1518500249,1859775393,2400959708,3395469782],D:(t,e,n,r)=>t>19?t>39?t>59?t>79?void 0:e^n^r:e&n|e&r|n&r:e^n^r:e&n|~e&r,M:(t,e)=>e<<t|e>>>32-t,V:function(e){const r=this,i=r.S,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let o=i[0],f=i[1],c=i[2],l=i[3],u=i[4];for(let t=0;79>=t;t++){16>t||(s[t]=r.M(1,s[t-3]^s[t-8]^s[t-14]^s[t-16]));const e=r.M(5,o)+r.D(t,f,c,l)+u+s[t]+r.B[n.floor(t/20)]|0;u=l,l=c,c=r.M(30,f),f=o,o=e}i[0]=i[0]+o|0,i[1]=i[1]+f|0,i[2]=i[2]+c|0,i[3]=i[3]+l|0,i[4]=i[4]+u|0}};const _={getRandomValues(t){const e=new o(t.buffer),r=t=>{let e=987654321;const r=4294967295;return()=>(e=36969*(65535&e)+(e>>16)&r,(((e<<16)+(t=18e3*(65535&t)+(t>>16)&r)&r)/4294967296+.5)*(n.random()>.5?1:-1))};for(let i,s=0;s<t.length;s+=4){const t=r(4294967296*(i||n.random()));i=987654071*t(),e[s/4]=4294967296*t()|0}return t}},C={importKey:t=>new C.R(v.m.g(t)),U(t,e,n,i){if(n=n||1e4,0>i||0>n)throw new r("invalid params to pbkdf2");const s=1+(i>>5)<<2;let o,f,l,u,a;const w=new ArrayBuffer(s),h=new c(w);let d=0;const p=g;for(e=v.m.g(e),a=1;(s||1)>d;a++){for(o=f=t.encrypt(p.concat(e,[a])),l=1;n>l;l++)for(f=t.encrypt(f),u=0;u<f.length;u++)o[u]^=f[u];for(l=0;(s||1)>d&&l<o.length;l++)h.setInt32(d,o[l]),d+=4}return w.slice(0,i/8)},R:class{constructor(t){const e=this,n=e.T=S.v,r=[[],[]],i=n.prototype.blockSize/32;e.W=[new n,new n],t.length>i&&(t=n.hash(t));for(let e=0;i>e;e++)r[0][e]=909522486^t[e],r[1][e]=1549556828^t[e];e.W[0].update(r[0]),e.W[1].update(r[1]),e.j=new n(e.W[0])}reset(){const t=this;t.j=new t.T(t.W[0]),t.H=!1}update(t){this.H=!0,this.j.update(t)}digest(){const t=this,e=t.j.P(),n=new t.T(t.W[1]).update(e).P();return t.reset(),n}encrypt(t){if(this.H)throw new r("encrypt on already updated hmac called!");return this.update(t),this.digest(t)}}},z={name:"PBKDF2"},x=e.assign({hash:{name:"HMAC"}},z),A=e.assign({iterations:1e3,hash:{name:"SHA-1"}},z),I=["deriveBits"],V=[8,12,16],P=[16,24,32],B=[0,0,0,0],D=void 0!==u,E=D&&void 0!==u.subtle,M=D&&"function"==typeof u.getRandomValues,R=D&&E&&"function"==typeof u.subtle.importKey,U=D&&E&&"function"==typeof u.subtle.deriveBits,T=v.m,W=class{constructor(t){const e=this;e.K=[[[],[],[],[],[]],[[],[],[],[],[]]],e.K[0][0][0]||e.L();const n=e.K[0][4],i=e.K[1],s=t.length;let o,f,c,l=1;if(4!==s&&6!==s&&8!==s)throw new r("invalid aes key size");for(e.B=[f=t.slice(0),c=[]],o=s;4*s+28>o;o++){let t=f[o-1];(o%s==0||8===s&&o%s==4)&&(t=n[t>>>24]<<24^n[t>>16&255]<<16^n[t>>8&255]<<8^n[255&t],o%s==0&&(t=t<<8^t>>>24^l<<24,l=l<<1^283*(l>>7))),f[o]=f[o-s]^t}for(let t=0;o;t++,o--){const e=f[3&t?o:o-4];c[t]=4>=o||4>t?e:i[0][n[e>>>24]]^i[1][n[e>>16&255]]^i[2][n[e>>8&255]]^i[3][n[255&e]]}}encrypt(t){return this.F(t,0)}decrypt(t){return this.F(t,1)}L(){const t=this.K[0],e=this.K[1],n=t[4],r=e[4],i=[],s=[];let o,f,c,l;for(let t=0;256>t;t++)s[(i[t]=t<<1^283*(t>>7))^t]=t;for(let u=o=0;!n[u];u^=f||1,o=s[o]||1){let s=o^o<<1^o<<2^o<<3^o<<4;s=s>>8^255&s^99,n[u]=s,r[s]=u,l=i[c=i[f=i[u]]];let a=16843009*l^65537*c^257*f^16843008*u,w=257*i[s]^16843008*s;for(let n=0;4>n;n++)t[n][u]=w=w<<24^w>>>8,e[n][s]=a=a<<24^a>>>8}for(let n=0;5>n;n++)t[n]=t[n].slice(0),e[n]=e[n].slice(0)}F(t,e){if(4!==t.length)throw new r("invalid aes block size");const n=this.B[e],i=n.length/4-2,s=[0,0,0,0],o=this.K[e],f=o[0],c=o[1],l=o[2],u=o[3],a=o[4];let w,h,d,p=t[0]^n[0],b=t[e?3:1]^n[1],y=t[2]^n[2],m=t[e?1:3]^n[3],k=4;for(let t=0;i>t;t++)w=f[p>>>24]^c[b>>16&255]^l[y>>8&255]^u[255&m]^n[k],h=f[b>>>24]^c[y>>16&255]^l[m>>8&255]^u[255&p]^n[k+1],d=f[y>>>24]^c[m>>16&255]^l[p>>8&255]^u[255&b]^n[k+2],m=f[m>>>24]^c[p>>16&255]^l[b>>8&255]^u[255&y]^n[k+3],k+=4,p=w,b=h,y=d;for(let t=0;4>t;t++)s[e?3&-t:t]=a[p>>>24]<<24^a[b>>16&255]<<16^a[y>>8&255]<<8^a[255&m]^n[k++],w=p,p=b,b=y,y=m,m=w;return s}},j=class{constructor(t,e){this.O=t,this.q=e,this.G=e}reset(){this.G=this.q}update(t){return this.J(this.O,t,this.G)}N(t){if(255==(t>>24&255)){let e=t>>16&255,n=t>>8&255,r=255&t;255===e?(e=0,255===n?(n=0,255===r?r=0:++r):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=r}else t+=1<<24;return t}X(t){0===(t[0]=this.N(t[0]))&&(t[1]=this.N(t[1]))}J(t,e,n){let r;if(!(r=e.length))return[];const i=g.u(e);for(let i=0;r>i;i+=4){this.X(n);const r=t.encrypt(n);e[i]^=r[0],e[i+1]^=r[1],e[i+2]^=r[2],e[i+3]^=r[3]}return g.h(e,i)}},H=C.R;class K extends w{constructor(n,s,o){let f;super({start(){e.assign(this,{ready:new Promise((t=>this.Y=t)),password:n,signed:s,Z:o-1,pending:new i(0)})},async transform(e,n){const s=this;if(s.password){const n=s.password;s.password=null;const i=G(e,0,V[s.Z]+2);await(async(t,e,n)=>{await O(t,n,G(e,0,V[t.Z]));const i=G(e,V[t.Z]),s=t.keys.passwordVerification;if(s[0]!=i[0]||s[1]!=i[1])throw new r("Invalid pasword")})(s,i,n),s.$=new j(new W(s.keys.key),t.from(B)),s.tt=new H(s.keys.et),e=G(e,V[s.Z]+2),s.Y()}else await s.ready;const o=new i(e.length-10-(e.length-10)%16);n.enqueue(F(s,e,o,0,10,!0))},async flush(t){const e=this;await e.ready;const n=e.pending,r=G(n,0,n.length-10),s=G(n,n.length-10);let o=new i(0);if(r.length){const t=N(T,r);e.tt.update(t);const n=e.$.update(t);o=J(T,n)}if(f.valid=!0,e.signed){const t=G(J(T,e.tt.digest()),0,10);for(let e=0;10>e;e++)t[e]!=s[e]&&(f.valid=!1)}t.enqueue(o)}}),f=this}}class L extends w{constructor(n,r){let s;super({start(){e.assign(this,{ready:new Promise((t=>this.Y=t)),password:n,Z:r-1,pending:new i(0)})},async transform(e,n){const r=this;let s=new i(0);if(r.password){const e=r.password;r.password=null,s=await(async(t,e)=>{const n=(r=new i(V[t.Z]),M?u.getRandomValues(r):_.getRandomValues(r));var r;return await O(t,e,n),q(n,t.keys.passwordVerification)})(r,e),r.$=new j(new W(r.keys.key),t.from(B)),r.tt=new H(r.keys.et),r.Y()}else await r.ready;const o=new i(s.length+e.length-e.length%16);o.set(s,0),n.enqueue(F(r,e,o,s.length,0))},async flush(t){const e=this;await e.ready;let n=new i(0);if(e.pending.length){const t=e.$.update(N(T,e.pending));e.tt.update(t),n=J(T,t)}s.signature=J(T,e.tt.digest()).slice(0,10),t.enqueue(q(n,s.signature))}}),s=this}}function F(t,e,n,r,s,o){const f=e.length-s;let c;for(t.pending.length&&(e=q(t.pending,e),n=((t,e)=>{if(e&&e>t.length){const n=t;(t=new i(e)).set(n,0)}return t})(n,f-f%16)),c=0;f-16>=c;c+=16){const i=N(T,G(e,c,c+16));o&&t.tt.update(i);const s=t.$.update(i);o||t.tt.update(s),n.set(J(T,s),c+r)}return t.pending=G(e,c),n}async function O(t,n,r){const s=(t=>{if(void 0===l){const e=new i((t=unescape(encodeURIComponent(t))).length);for(let n=0;n<e.length;n++)e[n]=t.charCodeAt(n);return e}return(new l).encode(t)})(n),o=await((t,e,n,r,i)=>R?u.subtle.importKey("raw",e,n,!1,i):C.importKey(e))(0,s,x,0,I),f=await(async(t,e,n)=>U?await u.subtle.deriveBits(t,e,n):C.U(e,t.salt,A.iterations,n))(e.assign({salt:r},A),o,8*(2*P[t.Z]+2)),c=new i(f);t.keys={key:N(T,G(c,0,P[t.Z])),et:N(T,G(c,P[t.Z],2*P[t.Z])),passwordVerification:G(c,2*P[t.Z])}}function q(t,e){let n=t;return t.length+e.length&&(n=new i(t.length+e.length),n.set(t,0),n.set(e,t.length)),n}function G(t,e,n){return t.subarray(e,n)}function J(t,e){return t.k(e)}function N(t,e){return t.g(e)}class Q extends w{constructor(t,n){let i;super({start(){e.assign(this,{password:t,passwordVerification:n}),$(this,t)},transform(t,e){const n=this;if(n.password){const e=Y(n,t.subarray(0,12));if(n.password=null,e[11]!=n.passwordVerification)throw new r("Invalid pasword");t=t.subarray(12)}e.enqueue(Y(n,t))},flush(){i.valid=!0}}),i=this}}class X extends w{constructor(t,n){super({start(){e.assign(this,{password:t,passwordVerification:n}),$(this,t)},transform(t,e){const n=this;let r,s;if(n.password){n.password=null;const e=u.getRandomValues(new i(12));e[11]=n.passwordVerification,r=new i(t.length+e.length),r.set(Z(n,e),0),s=12}else r=new i(t.length),s=0;r.set(Z(n,t),s),e.enqueue(r)},flush(){}})}}function Y(t,e){const n=new i(e.length);for(let r=0;r<e.length;r++)n[r]=et(t)^e[r],tt(t,n[r]);return n}function Z(t,e){const n=new i(e.length);for(let r=0;r<e.length;r++)n[r]=et(t)^e[r],tt(t,e[r]);return n}function $(t,e){t.keys=[305419896,591751049,878082192],t.nt=new m(t.keys[0]),t.rt=new m(t.keys[2]);for(let n=0;n<e.length;n++)tt(t,e.charCodeAt(n))}function tt(t,e){t.nt.append([e]),t.keys[0]=~t.nt.get(),t.keys[1]=rt(t.keys[1]+nt(t.keys[0])),t.keys[1]=rt(n.imul(t.keys[1],134775813)+1),t.rt.append([t.keys[1]>>>24]),t.keys[2]=~t.rt.get()}function et(t){const e=2|t.keys[2];return nt(n.imul(e,1^e)>>>8)}function nt(t){return 255&t}function rt(t){return 4294967295&t}class it extends w{constructor(t,e){let n;super({start(){n=new t(e)},transform(t,e){t=n.append(t),e.enqueue(t)},flush(t){const e=n.flush();e&&t.enqueue(e)}})}}const st=void 0===p,ot=void 0===b;let ft=!0,ct=!0;class lt extends w{constructor(t,e,{it:n},...r){super({},...r);const{compressed:i,st:s,password:o,passwordVerification:f,encryptionStrength:l,zipCrypto:u,signed:a}=e,w=this;let h,d,b=wt(super.readable);const y=!!o;if(y&&!u||!a||([b,h]=b.tee(),h=h.pipeThrough(new k)),i)if(void 0!==s&&!s||st&&!ct)b=at(t,b,n);else try{const t=new p("deflate-raw");b=b.pipeThrough(t)}catch(e){ct=!1,b=at(t,b,n)}y&&(u?b=b.pipeThrough(new X(o,f)):(d=new L(o,l),b=b.pipeThrough(d))),ht(w,b,(async()=>{let t;y&&!u&&(t=d.signature),y&&!u||!a||(t=await h.getReader().read(),t=new c(t.value.buffer).getUint32(0)),w.signature=t}))}}class ut extends w{constructor(t,e,{it:n},...i){super({},...i);const{zipCrypto:s,password:o,passwordVerification:f,signed:l,encryptionStrength:u,compressed:a,st:w}=e;let h,d,p=wt(super.readable);const y=!!o;if(y&&(s?p=p.pipeThrough(new Q(o,f)):(d=new K(o,l,u),p=p.pipeThrough(d))),a)if(void 0!==w&&!w||ot&&!ft)p=at(t,p,n);else try{p=p.pipeThrough(new b("deflate-raw"))}catch(e){ft=!1,p=at(t,p,n)}y&&!s||!l||([p,h]=p.tee(),h=h.pipeThrough(new k)),ht(this,p,(async()=>{if(y&&!s&&!d.valid)throw new r("Invalid signature");if((!y||s)&&l){const t=await h.getReader().read();if(t!=new c(t.value.buffer).getUint32(0,!1))throw new r("Invalid signature")}}))}}function at(t,e,n){return e.pipeThrough(new it(t,{it:n}))}function wt(t){return t.pipeThrough(new w({transform(t,e){t&&t.length&&e.enqueue(t)}}))}function ht(t,n,r){t.length=0,n=n.pipeThrough(new w({transform(e,n){e&&e.length&&(t.length+=e.length,n.enqueue(e))},flush:r})),e.defineProperty(t,"readable",{get:()=>n})}const dt=new Map;let pt,bt=0;function yt(t){if(t.data){const e=t.data;if(e&&e.length)try{t.data=new i(e).buffer,a(t,[t.data])}catch(e){a(t)}else a(t)}else a(t)}addEventListener("message",(async t=>{const e=t.data,n=e.type;try{if("start"==n&&(async t=>{try{t.scripts&&t.scripts.length&&importScripts.apply(void 0,t.scripts);const e=t.options;let n;self.initCodec&&self.initCodec(),e.codecType.startsWith("deflate")?n=self.Deflate:e.codecType.startsWith("inflate")&&(n=self.Inflate);const r=new h({async pull(t){let e=new Promise(((t,e)=>dt.set(bt,{resolve:t,reject:e})));yt({type:"pull",messageId:bt}),bt++;const{value:n,done:r}=await e;t.enqueue(n),r&&t.close()}},{highWaterMark:1}),i=new d({write(t){yt({type:"data",data:t})}});pt=((t,e,n,r,i)=>{const s=new AbortController,{signal:o}=s;if(r.codecType.startsWith("deflate"))return{ot:()=>f(lt),abort:c};if(r.codecType.startsWith("inflate"))return{ot:()=>f(ut),abort:c};async function f(s){const f=new s(t,r,i);await e.pipeThrough(f,{signal:o}).pipeTo(n,{ft:!0});const{length:c,signature:l}=f;return{length:c,signature:l}}function c(){s.abort()}})(n,r,i,e,t.config),yt({type:"close",result:await pt.ot()})}catch(t){a({error:{message:t.message,stack:t.stack}})}})(e),"data"==n){const{resolve:t}=dt.get(e.messageId);dt.delete(e.messageId),t({value:new i(e.data),done:e.done})}"abort"==n&&pt.abort()}catch(t){a({error:{message:t.message,stack:t.stack}})}}));const mt=(()=>{const e=-2;function o(e){return f(e.map((([e,n])=>new t(e).fill(n,0,e))))}function f(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?f(n):n)),[])}const c=[0,1,2,3].concat(...o([[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 l(){const t=this;function e(t,e){let n=0;do{n|=1&t,t>>>=1,n<<=1}while(--e>0);return n>>>1}t.ct=r=>{const i=t.lt,s=t.wt.ut,o=t.wt.ht;let f,c,l,u=-1;for(r.dt=0,r.bt=573,f=0;o>f;f++)0!==i[2*f]?(r.yt[++r.dt]=u=f,r.kt[f]=0):i[2*f+1]=0;for(;2>r.dt;)l=r.yt[++r.dt]=2>u?++u:0,i[2*l]=1,r.kt[l]=0,r.gt--,s&&(r.vt-=s[2*l+1]);for(t.St=u,f=n.floor(r.dt/2);f>=1;f--)r._t(i,f);l=o;do{f=r.yt[1],r.yt[1]=r.yt[r.dt--],r._t(i,1),c=r.yt[1],r.yt[--r.bt]=f,r.yt[--r.bt]=c,i[2*l]=i[2*f]+i[2*c],r.kt[l]=n.max(r.kt[f],r.kt[c])+1,i[2*f+1]=i[2*c+1]=l,r.yt[1]=l++,r._t(i,1)}while(r.dt>=2);r.yt[--r.bt]=r.yt[1],(e=>{const n=t.lt,r=t.wt.ut,i=t.wt.Ct,s=t.wt.zt,o=t.wt.xt;let f,c,l,u,a,w,h=0;for(u=0;15>=u;u++)e.At[u]=0;for(n[2*e.yt[e.bt]+1]=0,f=e.bt+1;573>f;f++)c=e.yt[f],u=n[2*n[2*c+1]+1]+1,u>o&&(u=o,h++),n[2*c+1]=u,c>t.St||(e.At[u]++,a=0,s>c||(a=i[c-s]),w=n[2*c],e.gt+=w*(u+a),r&&(e.vt+=w*(r[2*c+1]+a)));if(0!==h){do{for(u=o-1;0===e.At[u];)u--;e.At[u]--,e.At[u+1]+=2,e.At[o]--,h-=2}while(h>0);for(u=o;0!==u;u--)for(c=e.At[u];0!==c;)l=e.yt[--f],l>t.St||(n[2*l+1]!=u&&(e.gt+=(u-n[2*l+1])*n[2*l],n[2*l+1]=u),c--)}})(r),((t,n,r)=>{const i=[];let s,o,f,c=0;for(s=1;15>=s;s++)i[s]=c=c+r[s-1]<<1;for(o=0;n>=o;o++)f=t[2*o+1],0!==f&&(t[2*o]=e(i[f]++,f))})(i,t.St,r.At)}}function u(t,e,n,r,i){const s=this;s.ut=t,s.Ct=e,s.zt=n,s.ht=r,s.xt=i}l.It=[0,1,2,3,4,5,6,7].concat(...o([[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]])),l.Vt=[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],l.Pt=[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],l.Bt=t=>256>t?c[t]:c[256+(t>>>7)],l.Dt=[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],l.Et=[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],l.Mt=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],l.Rt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const a=o([[144,8],[112,9],[24,7],[8,8]]);u.Ut=f([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(((t,e)=>[t,a[e]])));const w=o([[30,5]]);function h(t,e,n,r,i){const s=this;s.Tt=t,s.Wt=e,s.jt=n,s.Ht=r,s.Kt=i}u.Lt=f([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(((t,e)=>[t,w[e]]))),u.Ft=new u(u.Ut,l.Dt,257,286,15),u.Ot=new u(u.Lt,l.Et,0,30,15),u.qt=new u(null,l.Mt,0,19,7);const d=[new h(0,0,0,0,0),new h(4,4,8,4,1),new h(4,5,16,8,1),new h(4,6,32,32,1),new h(4,4,16,16,2),new h(8,16,32,32,2),new h(8,16,128,128,2),new h(8,32,128,256,2),new h(32,128,258,1024,2),new h(32,258,258,4096,2)],p=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],b=113,y=666,m=262;function k(t,e,n,r){const i=t[2*e],s=t[2*n];return s>i||i==s&&r[e]<=r[n]}function g(){const t=this;let r,o,f,c,a,w,h,g,v,S,_,C,z,x,A,I,V,P,B,D,E,M,R,U,T,W,j,H,K,L,F,O,q;const G=new l,J=new l,N=new l;let Q,X,Y,Z,$,tt;function et(){let e;for(e=0;286>e;e++)F[2*e]=0;for(e=0;30>e;e++)O[2*e]=0;for(e=0;19>e;e++)q[2*e]=0;F[512]=1,t.gt=t.vt=0,X=Y=0}function nt(t,e){let n,r=-1,i=t[1],s=0,o=7,f=4;0===i&&(o=138,f=3),t[2*(e+1)+1]=65535;for(let c=0;e>=c;c++)n=i,i=t[2*(c+1)+1],++s<o&&n==i||(f>s?q[2*n]+=s:0!==n?(n!=r&&q[2*n]++,q[32]++):s>10?q[36]++:q[34]++,s=0,r=n,0===i?(o=138,f=3):n==i?(o=6,f=3):(o=7,f=4))}function rt(e){t.Gt[t.pending++]=e}function it(t){rt(255&t),rt(t>>>8&255)}function st(t,e){let n;const r=e;tt>16-r?(n=t,$|=n<<tt&65535,it($),$=n>>>16-tt,tt+=r-16):($|=t<<tt&65535,tt+=r)}function ot(t,e){const n=2*t;st(65535&e[n],65535&e[n+1])}function ft(t,e){let n,r,i=-1,s=t[1],o=0,f=7,c=4;for(0===s&&(f=138,c=3),n=0;e>=n;n++)if(r=s,s=t[2*(n+1)+1],++o>=f||r!=s){if(c>o)do{ot(r,q)}while(0!=--o);else 0!==r?(r!=i&&(ot(r,q),o--),ot(16,q),st(o-3,2)):o>10?(ot(18,q),st(o-11,7)):(ot(17,q),st(o-3,3));o=0,i=r,0===s?(f=138,c=3):r==s?(f=6,c=3):(f=7,c=4)}}function ct(){16==tt?(it($),$=0,tt=0):8>tt||(rt(255&$),$>>>=8,tt-=8)}function lt(e,r){let i,s,o;if(t.Jt[X]=e,t.Nt[X]=255&r,X++,0===e?F[2*r]++:(Y++,e--,F[2*(l.It[r]+256+1)]++,O[2*l.Bt(e)]++),0==(8191&X)&&j>2){for(i=8*X,s=E-V,o=0;30>o;o++)i+=O[2*o]*(5+l.Et[o]);if(i>>>=3,Y<n.floor(X/2)&&i<n.floor(s/2))return!0}return X==Q-1}function ut(e,n){let r,i,s,o,f=0;if(0!==X)do{r=t.Jt[f],i=t.Nt[f],f++,0===r?ot(i,e):(s=l.It[i],ot(s+256+1,e),o=l.Dt[s],0!==o&&(i-=l.Vt[s],st(i,o)),r--,s=l.Bt(r),ot(s,n),o=l.Et[s],0!==o&&(r-=l.Pt[s],st(r,o)))}while(X>f);ot(256,e),Z=e[513]}function at(){tt>8?it($):tt>0&&rt(255&$),$=0,tt=0}function wt(e,n,r){st(0+(r?1:0),3),((e,n)=>{at(),Z=8,it(n),it(~n),t.Gt.set(g.subarray(e,e+n),t.pending),t.pending+=n})(e,n)}function ht(e){((e,n,r)=>{let i,s,o=0;j>0?(G.ct(t),J.ct(t),o=(()=>{let e;for(nt(F,G.St),nt(O,J.St),N.ct(t),e=18;e>=3&&0===q[2*l.Rt[e]+1];e--);return t.gt+=14+3*(e+1),e})(),i=t.gt+3+7>>>3,s=t.vt+3+7>>>3,s>i||(i=s)):i=s=n+5,n+4>i||-1==e?s==i?(st(2+(r?1:0),3),ut(u.Ut,u.Lt)):(st(4+(r?1:0),3),((t,e,n)=>{let r;for(st(t-257,5),st(e-1,5),st(n-4,4),r=0;n>r;r++)st(q[2*l.Rt[r]+1],3);ft(F,t-1),ft(O,e-1)})(G.St+1,J.St+1,o+1),ut(F,O)):wt(e,n,r),et(),r&&at()})(0>V?-1:V,E-V,e),V=E,r.Qt()}function dt(){let t,e,n,i;do{if(i=v-R-E,0===i&&0===E&&0===R)i=a;else if(-1==i)i--;else if(E>=a+a-m){g.set(g.subarray(a,a+a),0),M-=a,E-=a,V-=a,t=z,n=t;do{e=65535&_[--n],_[n]=a>e?0:e-a}while(0!=--t);t=a,n=t;do{e=65535&S[--n],S[n]=a>e?0:e-a}while(0!=--t);i+=a}if(0===r.Xt)return;t=r.Yt(g,E+R,i),R+=t,3>R||(C=255&g[E],C=(C<<I^255&g[E+1])&A)}while(m>R&&0!==r.Xt)}function pt(t){let e,n,r=T,i=E,s=U;const o=E>a-m?E-(a-m):0;let f=L;const c=h,l=E+258;let u=g[i+s-1],w=g[i+s];K>U||(r>>=2),f>R&&(f=R);do{if(e=t,g[e+s]==w&&g[e+s-1]==u&&g[e]==g[i]&&g[++e]==g[i+1]){i+=2,e++;do{}while(g[++i]==g[++e]&&g[++i]==g[++e]&&g[++i]==g[++e]&&g[++i]==g[++e]&&g[++i]==g[++e]&&g[++i]==g[++e]&&g[++i]==g[++e]&&g[++i]==g[++e]&&l>i);if(n=258-(l-i),i=l-258,n>s){if(M=t,s=n,n>=f)break;u=g[i+s-1],w=g[i+s]}}}while((t=65535&S[t&c])>o&&0!=--r);return s>R?R:s}t.kt=[],t.At=[],t.yt=[],F=[],O=[],q=[],t._t=(e,n)=>{const r=t.yt,i=r[n];let s=n<<1;for(;s<=t.dt&&(s<t.dt&&k(e,r[s+1],r[s],t.kt)&&s++,!k(e,i,r[s],t.kt));)r[n]=r[s],n=s,s<<=1;r[n]=i},t.Zt=(r,l,p,y,m,k)=>(y||(y=8),m||(m=8),k||(k=0),r.$t=null,-1==l&&(l=6),1>m||m>9||8!=y||9>p||p>15||0>l||l>9||0>k||k>2?e:(r.te=t,w=p,a=1<<w,h=a-1,x=m+7,z=1<<x,A=z-1,I=n.floor((x+3-1)/3),g=new i(2*a),S=[],_=[],Q=1<<m+6,t.Gt=new i(4*Q),f=4*Q,t.Jt=new s(Q),t.Nt=new i(Q),j=l,H=k,(e=>(e.ee=e.ne=0,e.$t=null,t.pending=0,t.re=0,o=b,c=0,G.lt=F,G.wt=u.Ft,J.lt=O,J.wt=u.Ot,N.lt=q,N.wt=u.qt,$=0,tt=0,Z=8,et(),(()=>{v=2*a,_[z-1]=0;for(let t=0;z-1>t;t++)_[t]=0;W=d[j].Wt,K=d[j].Tt,L=d[j].jt,T=d[j].Ht,E=0,V=0,R=0,P=U=2,D=0,C=0})(),0))(r))),t.ie=()=>42!=o&&o!=b&&o!=y?e:(t.Nt=null,t.Jt=null,t.Gt=null,_=null,S=null,g=null,t.te=null,o==b?-3:0),t.se=(t,n,r)=>{let i=0;return-1==n&&(n=6),0>n||n>9||0>r||r>2?e:(d[j].Kt!=d[n].Kt&&0!==t.ee&&(i=t.oe(1)),j!=n&&(j=n,W=d[j].Wt,K=d[j].Tt,L=d[j].jt,T=d[j].Ht),H=r,i)},t.fe=(t,n,r)=>{let i,s=r,f=0;if(!n||42!=o)return e;if(3>s)return 0;for(s>a-m&&(s=a-m,f=r-s),g.set(n.subarray(f,f+s),0),E=s,V=s,C=255&g[0],C=(C<<I^255&g[1])&A,i=0;s-3>=i;i++)C=(C<<I^255&g[i+2])&A,S[i&h]=_[C],_[C]=i;return 0},t.oe=(n,i)=>{let s,l,k,v,x;if(i>4||0>i)return e;if(!n.ce||!n.le&&0!==n.Xt||o==y&&4!=i)return n.$t=p[4],e;if(0===n.ue)return n.$t=p[7],-5;var T;if(r=n,v=c,c=i,42==o&&(l=8+(w-8<<4)<<8,k=(j-1&255)>>1,k>3&&(k=3),l|=k<<6,0!==E&&(l|=32),l+=31-l%31,o=b,rt((T=l)>>8&255),rt(255&T)),0!==t.pending){if(r.Qt(),0===r.ue)return c=-1,0}else if(0===r.Xt&&v>=i&&4!=i)return r.$t=p[7],-5;if(o==y&&0!==r.Xt)return n.$t=p[7],-5;if(0!==r.Xt||0!==R||0!=i&&o!=y){switch(x=-1,d[j].Kt){case 0:x=(t=>{let e,n=65535;for(n>f-5&&(n=f-5);;){if(1>=R){if(dt(),0===R&&0==t)return 0;if(0===R)break}if(E+=R,R=0,e=V+n,(0===E||E>=e)&&(R=E-e,E=e,ht(!1),0===r.ue))return 0;if(E-V>=a-m&&(ht(!1),0===r.ue))return 0}return ht(4==t),0===r.ue?4==t?2:0:4==t?3:1})(i);break;case 1:x=(t=>{let e,n=0;for(;;){if(m>R){if(dt(),m>R&&0==t)return 0;if(0===R)break}if(3>R||(C=(C<<I^255&g[E+2])&A,n=65535&_[C],S[E&h]=_[C],_[C]=E),0===n||(E-n&65535)>a-m||2!=H&&(P=pt(n)),3>P)e=lt(0,255&g[E]),R--,E++;else if(e=lt(E-M,P-3),R-=P,P>W||3>R)E+=P,P=0,C=255&g[E],C=(C<<I^255&g[E+1])&A;else{P--;do{E++,C=(C<<I^255&g[E+2])&A,n=65535&_[C],S[E&h]=_[C],_[C]=E}while(0!=--P);E++}if(e&&(ht(!1),0===r.ue))return 0}return ht(4==t),0===r.ue?4==t?2:0:4==t?3:1})(i);break;case 2:x=(t=>{let e,n,i=0;for(;;){if(m>R){if(dt(),m>R&&0==t)return 0;if(0===R)break}if(3>R||(C=(C<<I^255&g[E+2])&A,i=65535&_[C],S[E&h]=_[C],_[C]=E),U=P,B=M,P=2,0!==i&&W>U&&a-m>=(E-i&65535)&&(2!=H&&(P=pt(i)),5>=P&&(1==H||3==P&&E-M>4096)&&(P=2)),3>U||P>U)if(0!==D){if(e=lt(0,255&g[E-1]),e&&ht(!1),E++,R--,0===r.ue)return 0}else D=1,E++,R--;else{n=E+R-3,e=lt(E-1-B,U-3),R-=U-1,U-=2;do{++E>n||(C=(C<<I^255&g[E+2])&A,i=65535&_[C],S[E&h]=_[C],_[C]=E)}while(0!=--U);if(D=0,P=2,E++,e&&(ht(!1),0===r.ue))return 0}}return 0!==D&&(e=lt(0,255&g[E-1]),D=0),ht(4==t),0===r.ue?4==t?2:0:4==t?3:1})(i)}if(2!=x&&3!=x||(o=y),0==x||2==x)return 0===r.ue&&(c=-1),0;if(1==x){if(1==i)st(2,3),ot(256,u.Ut),ct(),9>1+Z+10-tt&&(st(2,3),ot(256,u.Ut),ct()),Z=7;else if(wt(0,0,!1),3==i)for(s=0;z>s;s++)_[s]=0;if(r.Qt(),0===r.ue)return c=-1,0}}return 4!=i?0:1}}function v(){const t=this;t.ae=0,t.we=0,t.Xt=0,t.ee=0,t.ue=0,t.ne=0}return v.prototype={Zt:function(t,e){const n=this;return n.te=new g,e||(e=15),n.te.Zt(n,t,e)},oe:function(t){const n=this;return n.te?n.te.oe(n,t):e},ie:function(){const t=this;if(!t.te)return e;const n=t.te.ie();return t.te=null,n},se:function(t,n){const r=this;return r.te?r.te.se(r,t,n):e},fe:function(t,n){const r=this;return r.te?r.te.fe(r,t,n):e},Yt:function(t,e,n){const r=this;let i=r.Xt;return i>n&&(i=n),0===i?0:(r.Xt-=i,t.set(r.le.subarray(r.ae,r.ae+i),e),r.ae+=i,r.ee+=i,i)},Qt:function(){const t=this;let e=t.te.pending;e>t.ue&&(e=t.ue),0!==e&&(t.ce.set(t.te.Gt.subarray(t.te.re,t.te.re+e),t.we),t.we+=e,t.te.re+=e,t.ne+=e,t.ue-=e,t.te.pending-=e,0===t.te.pending&&(t.te.re=0))}},function(t){const e=new v,s=(o=t&&t.it?t.it:65536)+5*(n.floor(o/16383)+1);var o;const f=new i(s);let c=t?t.level:-1;void 0===c&&(c=-1),e.Zt(c),e.ce=f,this.append=(t,n)=>{let o,c,l=0,u=0,a=0;const w=[];if(t.length){e.ae=0,e.le=t,e.Xt=t.length;do{if(e.we=0,e.ue=s,o=e.oe(0),0!=o)throw new r("deflating: "+e.$t);e.we&&(e.we==s?w.push(new i(f)):w.push(f.slice(0,e.we))),a+=e.we,n&&e.ae>0&&e.ae!=l&&(n(e.ae),l=e.ae)}while(e.Xt>0||0===e.ue);return w.length>1?(c=new i(a),w.forEach((t=>{c.set(t,u),u+=t.length}))):c=w[0]||new i(0),c}},this.flush=()=>{let t,n,o=0,c=0;const l=[];do{if(e.we=0,e.ue=s,t=e.oe(4),1!=t&&0!=t)throw new r("deflating: "+e.$t);s-e.ue>0&&l.push(f.slice(0,e.we)),c+=e.we}while(e.Xt>0||0===e.ue);return e.ie(),n=new i(c),l.forEach((t=>{n.set(t,o),o+=t.length})),n}}})(),kt=(()=>{const t=-2,e=-3,s=-5,o=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],c=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],l=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],u=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],a=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],w=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],h=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function d(){let t,n,r,i,o,c;function l(t,n,f,l,u,a,w,h,d,p,b){let y,m,k,g,v,S,_,C,z,x,A,I,V,P,B;x=0,v=f;do{r[t[n+x]]++,x++,v--}while(0!==v);if(r[0]==f)return w[0]=-1,h[0]=0,0;for(C=h[0],S=1;15>=S&&0===r[S];S++);for(_=S,S>C&&(C=S),v=15;0!==v&&0===r[v];v--);for(k=v,C>v&&(C=v),h[0]=C,P=1<<S;v>S;S++,P<<=1)if(0>(P-=r[S]))return e;if(0>(P-=r[v]))return e;for(r[v]+=P,c[1]=S=0,x=1,V=2;0!=--v;)c[V]=S+=r[x],V++,x++;v=0,x=0;do{0!==(S=t[n+x])&&(b[c[S]++]=v),x++}while(++v<f);for(f=c[k],c[0]=v=0,x=0,g=-1,I=-C,o[0]=0,A=0,B=0;k>=_;_++)for(y=r[_];0!=y--;){for(;_>I+C;){if(g++,I+=C,B=k-I,B=B>C?C:B,(m=1<<(S=_-I))>y+1&&(m-=y+1,V=_,B>S))for(;++S<B&&(m<<=1)>r[++V];)m-=r[V];if(B=1<<S,p[0]+B>1440)return e;o[g]=A=p[0],p[0]+=B,0!==g?(c[g]=v,i[0]=S,i[1]=C,S=v>>>I-C,i[2]=A-o[g-1]-S,d.set(i,3*(o[g-1]+S))):w[0]=A}for(i[1]=_-I,f>x?b[x]<l?(i[0]=256>b[x]?0:96,i[2]=b[x++]):(i[0]=a[b[x]-l]+16+64,i[2]=u[b[x++]-l]):i[0]=192,m=1<<_-I,S=v>>>I;B>S;S+=m)d.set(i,3*(A+S));for(S=1<<_-1;0!=(v&S);S>>>=1)v^=S;for(v^=S,z=(1<<I)-1;(v&z)!=c[g];)g--,I-=C,z=(1<<I)-1}return 0!==P&&1!=k?s:0}function d(e){let s;for(t||(t=[],n=[],r=new f(16),i=[],o=new f(15),c=new f(16)),n.length<e&&(n=[]),s=0;e>s;s++)n[s]=0;for(s=0;16>s;s++)r[s]=0;for(s=0;3>s;s++)i[s]=0;o.set(r.subarray(0,15),0),c.set(r.subarray(0,16),0)}this.he=(r,i,o,f,c)=>{let u;return d(19),t[0]=0,u=l(r,0,19,19,null,null,o,i,f,t,n),u==e?c.$t="oversubscribed dynamic bit lengths tree":u!=s&&0!==i[0]||(c.$t="incomplete dynamic bit lengths tree",u=e),u},this.de=(r,i,o,f,c,p,b,y,m)=>{let k;return d(288),t[0]=0,k=l(o,0,r,257,u,a,p,f,y,t,n),0!=k||0===f[0]?(k==e?m.$t="oversubscribed literal/length tree":-4!=k&&(m.$t="incomplete literal/length tree",k=e),k):(d(288),k=l(o,r,i,0,w,h,b,c,y,t,n),0!=k||0===c[0]&&r>257?(k==e?m.$t="oversubscribed distance tree":k==s?(m.$t="incomplete distance tree",k=e):-4!=k&&(m.$t="empty distance tree with lengths",k=e),k):0)}}function p(){const n=this;let r,i,s,f,c=0,l=0,u=0,a=0,w=0,h=0,d=0,p=0,b=0,y=0;function m(t,n,r,i,s,f,c,l){let u,a,w,h,d,p,b,y,m,k,g,v,S,_,C,z;b=l.ae,y=l.Xt,d=c.pe,p=c.be,m=c.write,k=m<c.read?c.read-m-1:c.end-m,g=o[t],v=o[n];do{for(;20>p;)y--,d|=(255&l.ye(b++))<<p,p+=8;if(u=d&g,a=r,w=i,z=3*(w+u),0!==(h=a[z]))for(;;){if(d>>=a[z+1],p-=a[z+1],0!=(16&h)){for(h&=15,S=a[z+2]+(d&o[h]),d>>=h,p-=h;15>p;)y--,d|=(255&l.ye(b++))<<p,p+=8;for(u=d&v,a=s,w=f,z=3*(w+u),h=a[z];;){if(d>>=a[z+1],p-=a[z+1],0!=(16&h)){for(h&=15;h>p;)y--,d|=(255&l.ye(b++))<<p,p+=8;if(_=a[z+2]+(d&o[h]),d>>=h,p-=h,k-=S,_>m){C=m-_;do{C+=c.end}while(0>C);if(h=c.end-C,S>h){if(S-=h,m-C>0&&h>m-C)do{c.me[m++]=c.me[C++]}while(0!=--h);else c.me.set(c.me.subarray(C,C+h),m),m+=h,C+=h,h=0;C=0}}else C=m-_,m-C>0&&2>m-C?(c.me[m++]=c.me[C++],c.me[m++]=c.me[C++],S-=2):(c.me.set(c.me.subarray(C,C+2),m),m+=2,C+=2,S-=2);if(m-C>0&&S>m-C)do{c.me[m++]=c.me[C++]}while(0!=--S);else c.me.set(c.me.subarray(C,C+S),m),m+=S,C+=S,S=0;break}if(0!=(64&h))return l.$t="invalid distance code",S=l.Xt-y,S=S>p>>3?p>>3:S,y+=S,b-=S,p-=S<<3,c.pe=d,c.be=p,l.Xt=y,l.ee+=b-l.ae,l.ae=b,c.write=m,e;u+=a[z+2],u+=d&o[h],z=3*(w+u),h=a[z]}break}if(0!=(64&h))return 0!=(32&h)?(S=l.Xt-y,S=S>p>>3?p>>3:S,y+=S,b-=S,p-=S<<3,c.pe=d,c.be=p,l.Xt=y,l.ee+=b-l.ae,l.ae=b,c.write=m,1):(l.$t="invalid literal/length code",S=l.Xt-y,S=S>p>>3?p>>3:S,y+=S,b-=S,p-=S<<3,c.pe=d,c.be=p,l.Xt=y,l.ee+=b-l.ae,l.ae=b,c.write=m,e);if(u+=a[z+2],u+=d&o[h],z=3*(w+u),0===(h=a[z])){d>>=a[z+1],p-=a[z+1],c.me[m++]=a[z+2],k--;break}}else d>>=a[z+1],p-=a[z+1],c.me[m++]=a[z+2],k--}while(k>=258&&y>=10);return S=l.Xt-y,S=S>p>>3?p>>3:S,y+=S,b-=S,p-=S<<3,c.pe=d,c.be=p,l.Xt=y,l.ee+=b-l.ae,l.ae=b,c.write=m,0}n.init=(t,e,n,o,c,l)=>{r=0,d=t,p=e,s=n,b=o,f=c,y=l,i=null},n.ke=(n,k,g)=>{let v,S,_,C,z,x,A,I=0,V=0,P=0;for(P=k.ae,C=k.Xt,I=n.pe,V=n.be,z=n.write,x=z<n.read?n.read-z-1:n.end-z;;)switch(r){case 0:if(x>=258&&C>=10&&(n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,g=m(d,p,s,b,f,y,n,k),P=k.ae,C=k.Xt,I=n.pe,V=n.be,z=n.write,x=z<n.read?n.read-z-1:n.end-z,0!=g)){r=1==g?7:9;break}u=d,i=s,l=b,r=1;case 1:for(v=u;v>V;){if(0===C)return n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,n.ge(k,g);g=0,C--,I|=(255&k.ye(P++))<<V,V+=8}if(S=3*(l+(I&o[v])),I>>>=i[S+1],V-=i[S+1],_=i[S],0===_){a=i[S+2],r=6;break}if(0!=(16&_)){w=15&_,c=i[S+2],r=2;break}if(0==(64&_)){u=_,l=S/3+i[S+2];break}if(0!=(32&_)){r=7;break}return r=9,k.$t="invalid literal/length code",g=e,n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,n.ge(k,g);case 2:for(v=w;v>V;){if(0===C)return n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,n.ge(k,g);g=0,C--,I|=(255&k.ye(P++))<<V,V+=8}c+=I&o[v],I>>=v,V-=v,u=p,i=f,l=y,r=3;case 3:for(v=u;v>V;){if(0===C)return n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,n.ge(k,g);g=0,C--,I|=(255&k.ye(P++))<<V,V+=8}if(S=3*(l+(I&o[v])),I>>=i[S+1],V-=i[S+1],_=i[S],0!=(16&_)){w=15&_,h=i[S+2],r=4;break}if(0==(64&_)){u=_,l=S/3+i[S+2];break}return r=9,k.$t="invalid distance code",g=e,n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,n.ge(k,g);case 4:for(v=w;v>V;){if(0===C)return n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,n.ge(k,g);g=0,C--,I|=(255&k.ye(P++))<<V,V+=8}h+=I&o[v],I>>=v,V-=v,r=5;case 5:for(A=z-h;0>A;)A+=n.end;for(;0!==c;){if(0===x&&(z==n.end&&0!==n.read&&(z=0,x=z<n.read?n.read-z-1:n.end-z),0===x&&(n.write=z,g=n.ge(k,g),z=n.write,x=z<n.read?n.read-z-1:n.end-z,z==n.end&&0!==n.read&&(z=0,x=z<n.read?n.read-z-1:n.end-z),0===x)))return n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,n.ge(k,g);n.me[z++]=n.me[A++],x--,A==n.end&&(A=0),c--}r=0;break;case 6:if(0===x&&(z==n.end&&0!==n.read&&(z=0,x=z<n.read?n.read-z-1:n.end-z),0===x&&(n.write=z,g=n.ge(k,g),z=n.write,x=z<n.read?n.read-z-1:n.end-z,z==n.end&&0!==n.read&&(z=0,x=z<n.read?n.read-z-1:n.end-z),0===x)))return n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,n.ge(k,g);g=0,n.me[z++]=a,x--,r=0;break;case 7:if(V>7&&(V-=8,C++,P--),n.write=z,g=n.ge(k,g),z=n.write,x=z<n.read?n.read-z-1:n.end-z,n.read!=n.write)return n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,n.ge(k,g);r=8;case 8:return g=1,n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,n.ge(k,g);case 9:return g=e,n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,n.ge(k,g);default:return g=t,n.pe=I,n.be=V,k.Xt=C,k.ee+=P-k.ae,k.ae=P,n.write=z,n.ge(k,g)}},n.ve=()=>{}}d.Se=(t,e,n,r)=>(t[0]=9,e[0]=5,n[0]=c,r[0]=l,0);const b=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function y(n,r){const c=this;let l,u=0,a=0,w=0,h=0;const y=[0],m=[0],k=new p;let g=0,v=new f(4320);const S=new d;c.be=0,c.pe=0,c.me=new i(r),c.end=r,c.read=0,c.write=0,c.reset=(t,e)=>{e&&(e[0]=0),6==u&&k.ve(t),u=0,c.be=0,c.pe=0,c.read=c.write=0},c.reset(n,null),c.ge=(t,e)=>{let n,r,i;return r=t.we,i=c.read,n=(i>c.write?c.end:c.write)-i,n>t.ue&&(n=t.ue),0!==n&&e==s&&(e=0),t.ue-=n,t.ne+=n,t.ce.set(c.me.subarray(i,i+n),r),r+=n,i+=n,i==c.end&&(i=0,c.write==c.end&&(c.write=0),n=c.write-i,n>t.ue&&(n=t.ue),0!==n&&e==s&&(e=0),t.ue-=n,t.ne+=n,t.ce.set(c.me.subarray(i,i+n),r),r+=n,i+=n),t.we=r,c.read=i,e},c.ke=(n,r)=>{let i,s,f,p,_,C,z,x;for(p=n.ae,_=n.Xt,s=c.pe,f=c.be,C=c.write,z=C<c.read?c.read-C-1:c.end-C;;){let A,I,V,P,B,D,E,M;switch(u){case 0:for(;3>f;){if(0===_)return c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);r=0,_--,s|=(255&n.ye(p++))<<f,f+=8}switch(i=7&s,g=1&i,i>>>1){case 0:s>>>=3,f-=3,i=7&f,s>>>=i,f-=i,u=1;break;case 1:A=[],I=[],V=[[]],P=[[]],d.Se(A,I,V,P),k.init(A[0],I[0],V[0],0,P[0],0),s>>>=3,f-=3,u=6;break;case 2:s>>>=3,f-=3,u=3;break;case 3:return s>>>=3,f-=3,u=9,n.$t="invalid block type",r=e,c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r)}break;case 1:for(;32>f;){if(0===_)return c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);r=0,_--,s|=(255&n.ye(p++))<<f,f+=8}if((~s>>>16&65535)!=(65535&s))return u=9,n.$t="invalid stored block lengths",r=e,c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);a=65535&s,s=f=0,u=0!==a?2:0!==g?7:0;break;case 2:if(0===_)return c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);if(0===z&&(C==c.end&&0!==c.read&&(C=0,z=C<c.read?c.read-C-1:c.end-C),0===z&&(c.write=C,r=c.ge(n,r),C=c.write,z=C<c.read?c.read-C-1:c.end-C,C==c.end&&0!==c.read&&(C=0,z=C<c.read?c.read-C-1:c.end-C),0===z)))return c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);if(r=0,i=a,i>_&&(i=_),i>z&&(i=z),c.me.set(n.Yt(p,i),C),p+=i,_-=i,C+=i,z-=i,0!=(a-=i))break;u=0!==g?7:0;break;case 3:for(;14>f;){if(0===_)return c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);r=0,_--,s|=(255&n.ye(p++))<<f,f+=8}if(w=i=16383&s,(31&i)>29||(i>>5&31)>29)return u=9,n.$t="too many length or distance symbols",r=e,c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);if(i=258+(31&i)+(i>>5&31),!l||l.length<i)l=[];else for(x=0;i>x;x++)l[x]=0;s>>>=14,f-=14,h=0,u=4;case 4:for(;4+(w>>>10)>h;){for(;3>f;){if(0===_)return c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);r=0,_--,s|=(255&n.ye(p++))<<f,f+=8}l[b[h++]]=7&s,s>>>=3,f-=3}for(;19>h;)l[b[h++]]=0;if(y[0]=7,i=S.he(l,y,m,v,n),0!=i)return(r=i)==e&&(l=null,u=9),c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);h=0,u=5;case 5:for(;i=w,258+(31&i)+(i>>5&31)>h;){let t,a;for(i=y[0];i>f;){if(0===_)return c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);r=0,_--,s|=(255&n.ye(p++))<<f,f+=8}if(i=v[3*(m[0]+(s&o[i]))+1],a=v[3*(m[0]+(s&o[i]))+2],16>a)s>>>=i,f-=i,l[h++]=a;else{for(x=18==a?7:a-14,t=18==a?11:3;i+x>f;){if(0===_)return c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);r=0,_--,s|=(255&n.ye(p++))<<f,f+=8}if(s>>>=i,f-=i,t+=s&o[x],s>>>=x,f-=x,x=h,i=w,x+t>258+(31&i)+(i>>5&31)||16==a&&1>x)return l=null,u=9,n.$t="invalid bit length repeat",r=e,c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);a=16==a?l[x-1]:0;do{l[x++]=a}while(0!=--t);h=x}}if(m[0]=-1,B=[],D=[],E=[],M=[],B[0]=9,D[0]=6,i=w,i=S.de(257+(31&i),1+(i>>5&31),l,B,D,E,M,v,n),0!=i)return i==e&&(l=null,u=9),r=i,c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);k.init(B[0],D[0],v,E[0],v,M[0]),u=6;case 6:if(c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,1!=(r=k.ke(c,n,r)))return c.ge(n,r);if(r=0,k.ve(n),p=n.ae,_=n.Xt,s=c.pe,f=c.be,C=c.write,z=C<c.read?c.read-C-1:c.end-C,0===g){u=0;break}u=7;case 7:if(c.write=C,r=c.ge(n,r),C=c.write,z=C<c.read?c.read-C-1:c.end-C,c.read!=c.write)return c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);u=8;case 8:return r=1,c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);case 9:return r=e,c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r);default:return r=t,c.pe=s,c.be=f,n.Xt=_,n.ee+=p-n.ae,n.ae=p,c.write=C,c.ge(n,r)}}},c.ve=t=>{c.reset(t,null),c.me=null,v=null},c._e=(t,e,n)=>{c.me.set(t.subarray(e,e+n),0),c.read=c.write=n},c.Ce=()=>1==u?1:0}const m=13,k=[0,0,255,255];function g(){const n=this;function r(e){return e&&e.ze?(e.ee=e.ne=0,e.$t=null,e.ze.mode=7,e.ze.xe.reset(e,null),0):t}n.mode=0,n.method=0,n.Ae=[0],n.Ie=0,n.marker=0,n.Ve=0,n.Pe=t=>(n.xe&&n.xe.ve(t),n.xe=null,0),n.Be=(e,i)=>(e.$t=null,n.xe=null,8>i||i>15?(n.Pe(e),t):(n.Ve=i,e.ze.xe=new y(e,1<<i),r(e),0)),n.De=(n,r)=>{let i,o;if(!n||!n.ze||!n.le)return t;const f=n.ze;for(r=4==r?s:0,i=s;;)switch(f.mode){case 0:if(0===n.Xt)return i;if(i=r,n.Xt--,n.ee++,8!=(15&(f.method=n.ye(n.ae++)))){f.mode=m,n.$t="unknown compression method",f.marker=5;break}if(8+(f.method>>4)>f.Ve){f.mode=m,n.$t="invalid win size",f.marker=5;break}f.mode=1;case 1:if(0===n.Xt)return i;if(i=r,n.Xt--,n.ee++,o=255&n.ye(n.ae++),((f.method<<8)+o)%31!=0){f.mode=m,n.$t="incorrect header check",f.marker=5;break}if(0==(32&o)){f.mode=7;break}f.mode=2;case 2:if(0===n.Xt)return i;i=r,n.Xt--,n.ee++,f.Ie=(255&n.ye(n.ae++))<<24&4278190080,f.mode=3;case 3:if(0===n.Xt)return i;i=r,n.Xt--,n.ee++,f.Ie+=(255&n.ye(n.ae++))<<16&16711680,f.mode=4;case 4:if(0===n.Xt)return i;i=r,n.Xt--,n.ee++,f.Ie+=(255&n.ye(n.ae++))<<8&65280,f.mode=5;case 5:return 0===n.Xt?i:(i=r,n.Xt--,n.ee++,f.Ie+=255&n.ye(n.ae++),f.mode=6,2);case 6:return f.mode=m,n.$t="need dictionary",f.marker=0,t;case 7:if(i=f.xe.ke(n,i),i==e){f.mode=m,f.marker=0;break}if(0==i&&(i=r),1!=i)return i;i=r,f.xe.reset(n,f.Ae),f.mode=12;case 12:return n.Xt=0,1;case m:return e;default:return t}},n.Ee=(e,n,r)=>{let i=0,s=r;if(!e||!e.ze||6!=e.ze.mode)return t;const o=e.ze;return s<1<<o.Ve||(s=(1<<o.Ve)-1,i=r-s),o.xe._e(n,i,s),o.mode=7,0},n.Me=n=>{let i,o,f,c,l;if(!n||!n.ze)return t;const u=n.ze;if(u.mode!=m&&(u.mode=m,u.marker=0),0===(i=n.Xt))return s;for(o=n.ae,f=u.marker;0!==i&&4>f;)n.ye(o)==k[f]?f++:f=0!==n.ye(o)?0:4-f,o++,i--;return n.ee+=o-n.ae,n.ae=o,n.Xt=i,u.marker=f,4!=f?e:(c=n.ee,l=n.ne,r(n),n.ee=c,n.ne=l,u.mode=7,0)},n.Re=e=>e&&e.ze&&e.ze.xe?e.ze.xe.Ce():t}function v(){}return v.prototype={Be:function(t){const e=this;return e.ze=new g,t||(t=15),e.ze.Be(e,t)},De:function(e){const n=this;return n.ze?n.ze.De(n,e):t},Pe:function(){const e=this;if(!e.ze)return t;const n=e.ze.Pe(e);return e.ze=null,n},Me:function(){const e=this;return e.ze?e.ze.Me(e):t},Ee:function(e,n){const r=this;return r.ze?r.ze.Ee(r,e,n):t},ye:function(t){return this.le[t]},Yt:function(t,e){return this.le.subarray(t,t+e)}},function(t){const e=new v,o=t&&t.it?n.floor(2*t.it):131072,f=new i(o);let c=!1;e.Be(),e.ce=f,this.append=(t,n)=>{const l=[];let u,a,w=0,h=0,d=0;if(0!==t.length){e.ae=0,e.le=t,e.Xt=t.length;do{if(e.we=0,e.ue=o,0!==e.Xt||c||(e.ae=0,c=!0),u=e.De(0),c&&u===s){if(0!==e.Xt)throw new r("inflating: bad input")}else if(0!==u&&1!==u)throw new r("inflating: "+e.$t);if((c||1===u)&&e.Xt===t.length)throw new r("inflating: bad input");e.we&&(e.we===o?l.push(new i(f)):l.push(f.slice(0,e.we))),d+=e.we,n&&e.ae>0&&e.ae!=w&&(n(e.ae),w=e.ae)}while(e.Xt>0||0===e.ue);return l.length>1?(a=new i(d),l.forEach((t=>{a.set(t,h),h+=t.length}))):a=l[0]||new i(0),a}},this.flush=()=>{e.Pe()}}})();self.initCodec=()=>{self.Deflate=mt,self.Inflate=kt};\n'],{type:"text/javascript"}));e({workerScripts:{inflate:[t],deflate:[t]}});}};
4339
+ var e=e=>{if("function"==typeof URL.createObjectURL){const t=()=>URL.createObjectURL(new Blob(['const{Array:t,Object:e,Math:n,Error:r,Uint8Array:i,Uint16Array:s,Uint32Array:o,Int32Array:f,DataView:c,TextEncoder:l,crypto:a,postMessage:u,TransformStream:w,ReadableStream:h,WritableStream:d,CompressionStream:p,DecompressionStream:b}=globalThis,y=[];for(let t=0;256>t;t++){let e=t;for(let t=0;8>t;t++)1&e?e=e>>>1^3988292384:e>>>=1;y[t]=e}class m{constructor(t){this.t=t||-1}append(t){let e=0|this.t;for(let n=0,r=0|t.length;r>n;n++)e=e>>>8^y[255&(e^t[n])];this.t=e}get(){return~this.t}}class g extends w{constructor(){super({start(){this.i=new m},transform(t){this.i.append(t)},flush(t){const e=new i(4);new c(e.buffer).setUint32(0,this.i.get()),t.enqueue(e)}})}}const k={concat(t,e){if(0===t.length||0===e.length)return t.concat(e);const n=t[t.length-1],r=k.o(n);return 32===r?t.concat(e):k.l(e,r,0|n,t.slice(0,t.length-1))},u(t){const e=t.length;if(0===e)return 0;const n=t[e-1];return 32*(e-1)+k.o(n)},h(t,e){if(32*t.length<e)return t;const r=(t=t.slice(0,n.ceil(e/32))).length;return e&=31,r>0&&e&&(t[r-1]=k.p(e,t[r-1]&2147483648>>e-1,1)),t},p:(t,e,n)=>32===t?e:(n?0|e:e<<32-t)+1099511627776*t,o:t=>n.round(t/1099511627776)||32,l(t,e,n,r){for(void 0===r&&(r=[]);e>=32;e-=32)r.push(n),n=0;if(0===e)return r.concat(t);for(let i=0;i<t.length;i++)r.push(n|t[i]>>>e),n=t[i]<<32-e;const i=t.length?t[t.length-1]:0,s=k.o(i);return r.push(k.p(e+s&31,e+s>32?n:r.pop(),1)),r}},v={m:{g(t){const e=k.u(t)/8,n=new i(e);let r;for(let i=0;e>i;i++)0==(3&i)&&(r=t[i/4]),n[i]=r>>>24,r<<=8;return n},k(t){const e=[];let n,r=0;for(n=0;n<t.length;n++)r=r<<8|t[n],3==(3&n)&&(e.push(r),r=0);return 3&n&&e.push(k.p(8*(3&n),r)),e}}},S={v:function(t){t?(this.S=t.S.slice(0),this._=t._.slice(0),this.C=t.C):this.reset()}};S.v.prototype={blockSize:512,reset(){const t=this;return t.S=this.I.slice(0),t._=[],t.C=0,t},update(t){const e=this;"string"==typeof t&&(t=v.A.k(t));const n=e._=k.concat(e._,t),i=e.C,s=e.C=i+k.u(t);if(s>9007199254740991)throw new r("Cannot hash more than 2^53 - 1 bits");const f=new o(n);let c=0;for(let t=e.blockSize+i-(e.blockSize+i&e.blockSize-1);s>=t;t+=e.blockSize)e.V(f.subarray(16*c,16*(c+1))),c+=1;return n.splice(0,16*c),e},P(){const t=this;let e=t._;const r=t.S;e=k.concat(e,[k.p(1,1)]);for(let t=e.length+2;15&t;t++)e.push(0);for(e.push(n.floor(t.C/4294967296)),e.push(0|t.C);e.length;)t.V(e.splice(0,16));return t.reset(),r},I:[1732584193,4023233417,2562383102,271733878,3285377520],B:[1518500249,1859775393,2400959708,3395469782],D:(t,e,n,r)=>t>19?t>39?t>59?t>79?void 0:e^n^r:e&n|e&r|n&r:e^n^r:e&n|~e&r,M:(t,e)=>e<<t|e>>>32-t,V(e){const r=this,i=r.S,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let o=i[0],f=i[1],c=i[2],l=i[3],a=i[4];for(let t=0;79>=t;t++){16>t||(s[t]=r.M(1,s[t-3]^s[t-8]^s[t-14]^s[t-16]));const e=r.M(5,o)+r.D(t,f,c,l)+a+s[t]+r.B[n.floor(t/20)]|0;a=l,l=c,c=r.M(30,f),f=o,o=e}i[0]=i[0]+o|0,i[1]=i[1]+f|0,i[2]=i[2]+c|0,i[3]=i[3]+l|0,i[4]=i[4]+a|0}};const _={getRandomValues(t){const e=new o(t.buffer),r=t=>{let e=987654321;const r=4294967295;return()=>(e=36969*(65535&e)+(e>>16)&r,(((e<<16)+(t=18e3*(65535&t)+(t>>16)&r)&r)/4294967296+.5)*(n.random()>.5?1:-1))};for(let i,s=0;s<t.length;s+=4){const t=r(4294967296*(i||n.random()));i=987654071*t(),e[s/4]=4294967296*t()|0}return t}},z={importKey:t=>new z.R(v.m.k(t)),U(t,e,n,i){if(n=n||1e4,0>i||0>n)throw new r("invalid params to pbkdf2");const s=1+(i>>5)<<2;let o,f,l,a,u;const w=new ArrayBuffer(s),h=new c(w);let d=0;const p=k;for(e=v.m.k(e),u=1;(s||1)>d;u++){for(o=f=t.encrypt(p.concat(e,[u])),l=1;n>l;l++)for(f=t.encrypt(f),a=0;a<f.length;a++)o[a]^=f[a];for(l=0;(s||1)>d&&l<o.length;l++)h.setInt32(d,o[l]),d+=4}return w.slice(0,i/8)},R:class{constructor(t){const e=this,n=e.T=S.v,r=[[],[]],i=n.prototype.blockSize/32;e.W=[new n,new n],t.length>i&&(t=n.hash(t));for(let e=0;i>e;e++)r[0][e]=909522486^t[e],r[1][e]=1549556828^t[e];e.W[0].update(r[0]),e.W[1].update(r[1]),e.j=new n(e.W[0])}reset(){const t=this;t.j=new t.T(t.W[0]),t.H=!1}update(t){this.H=!0,this.j.update(t)}digest(){const t=this,e=t.j.P(),n=new t.T(t.W[1]).update(e).P();return t.reset(),n}encrypt(t){if(this.H)throw new r("encrypt on already updated hmac called!");return this.update(t),this.digest(t)}}},C={name:"PBKDF2"},I=e.assign({hash:{name:"HMAC"}},C),x=e.assign({iterations:1e3,hash:{name:"SHA-1"}},C),A=["deriveBits"],V=[8,12,16],P=[16,24,32],B=[0,0,0,0],D=void 0!==a,E=D&&void 0!==a.subtle,M=D&&"function"==typeof a.getRandomValues,R=D&&E&&"function"==typeof a.subtle.importKey,U=D&&E&&"function"==typeof a.subtle.deriveBits,T=v.m,W=class{constructor(t){const e=this;e.K=[[[],[],[],[],[]],[[],[],[],[],[]]],e.K[0][0][0]||e.L();const n=e.K[0][4],i=e.K[1],s=t.length;let o,f,c,l=1;if(4!==s&&6!==s&&8!==s)throw new r("invalid aes key size");for(e.B=[f=t.slice(0),c=[]],o=s;4*s+28>o;o++){let t=f[o-1];(o%s==0||8===s&&o%s==4)&&(t=n[t>>>24]<<24^n[t>>16&255]<<16^n[t>>8&255]<<8^n[255&t],o%s==0&&(t=t<<8^t>>>24^l<<24,l=l<<1^283*(l>>7))),f[o]=f[o-s]^t}for(let t=0;o;t++,o--){const e=f[3&t?o:o-4];c[t]=4>=o||4>t?e:i[0][n[e>>>24]]^i[1][n[e>>16&255]]^i[2][n[e>>8&255]]^i[3][n[255&e]]}}encrypt(t){return this.F(t,0)}decrypt(t){return this.F(t,1)}L(){const t=this.K[0],e=this.K[1],n=t[4],r=e[4],i=[],s=[];let o,f,c,l;for(let t=0;256>t;t++)s[(i[t]=t<<1^283*(t>>7))^t]=t;for(let a=o=0;!n[a];a^=f||1,o=s[o]||1){let s=o^o<<1^o<<2^o<<3^o<<4;s=s>>8^255&s^99,n[a]=s,r[s]=a,l=i[c=i[f=i[a]]];let u=16843009*l^65537*c^257*f^16843008*a,w=257*i[s]^16843008*s;for(let n=0;4>n;n++)t[n][a]=w=w<<24^w>>>8,e[n][s]=u=u<<24^u>>>8}for(let n=0;5>n;n++)t[n]=t[n].slice(0),e[n]=e[n].slice(0)}F(t,e){if(4!==t.length)throw new r("invalid aes block size");const n=this.B[e],i=n.length/4-2,s=[0,0,0,0],o=this.K[e],f=o[0],c=o[1],l=o[2],a=o[3],u=o[4];let w,h,d,p=t[0]^n[0],b=t[e?3:1]^n[1],y=t[2]^n[2],m=t[e?1:3]^n[3],g=4;for(let t=0;i>t;t++)w=f[p>>>24]^c[b>>16&255]^l[y>>8&255]^a[255&m]^n[g],h=f[b>>>24]^c[y>>16&255]^l[m>>8&255]^a[255&p]^n[g+1],d=f[y>>>24]^c[m>>16&255]^l[p>>8&255]^a[255&b]^n[g+2],m=f[m>>>24]^c[p>>16&255]^l[b>>8&255]^a[255&y]^n[g+3],g+=4,p=w,b=h,y=d;for(let t=0;4>t;t++)s[e?3&-t:t]=u[p>>>24]<<24^u[b>>16&255]<<16^u[y>>8&255]<<8^u[255&m]^n[g++],w=p,p=b,b=y,y=m,m=w;return s}},j=class{constructor(t,e){this.N=t,this.O=e,this.q=e}reset(){this.q=this.O}update(t){return this.G(this.N,t,this.q)}J(t){if(255==(t>>24&255)){let e=t>>16&255,n=t>>8&255,r=255&t;255===e?(e=0,255===n?(n=0,255===r?r=0:++r):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=r}else t+=1<<24;return t}X(t){0===(t[0]=this.J(t[0]))&&(t[1]=this.J(t[1]))}G(t,e,n){let r;if(!(r=e.length))return[];const i=k.u(e);for(let i=0;r>i;i+=4){this.X(n);const r=t.encrypt(n);e[i]^=r[0],e[i+1]^=r[1],e[i+2]^=r[2],e[i+3]^=r[3]}return k.h(e,i)}},H=z.R;class K extends w{constructor(n,s,o){let f;super({start(){e.assign(this,{ready:new Promise((t=>this.Y=t)),password:n,signed:s,Z:o-1,pending:new i(0)})},async transform(e,n){const s=this;if(s.password){const n=s.password;s.password=null;const i=q(e,0,V[s.Z]+2);await(async(t,e,n)=>{await N(t,n,q(e,0,V[t.Z]));const i=q(e,V[t.Z]),s=t.keys.passwordVerification;if(s[0]!=i[0]||s[1]!=i[1])throw new r("Invalid pasword")})(s,i,n),s.$=new j(new W(s.keys.key),t.from(B)),s.tt=new H(s.keys.et),e=q(e,V[s.Z]+2),s.Y()}else await s.ready;const o=new i(e.length-10-(e.length-10)%16);n.enqueue(F(s,e,o,0,10,!0))},async flush(t){const e=this;await e.ready;const n=e.pending,r=q(n,0,n.length-10),s=q(n,n.length-10);let o=new i(0);if(r.length){const t=J(T,r);e.tt.update(t);const n=e.$.update(t);o=G(T,n)}if(f.valid=!0,e.signed){const t=q(G(T,e.tt.digest()),0,10);for(let e=0;10>e;e++)t[e]!=s[e]&&(f.valid=!1)}t.enqueue(o)}}),f=this}}class L extends w{constructor(n,r){let s;super({start(){e.assign(this,{ready:new Promise((t=>this.Y=t)),password:n,Z:r-1,pending:new i(0)})},async transform(e,n){const r=this;let s=new i(0);if(r.password){const e=r.password;r.password=null,s=await(async(t,e)=>{const n=(r=new i(V[t.Z]),M?a.getRandomValues(r):_.getRandomValues(r));var r;return await N(t,e,n),O(n,t.keys.passwordVerification)})(r,e),r.$=new j(new W(r.keys.key),t.from(B)),r.tt=new H(r.keys.et),r.Y()}else await r.ready;const o=new i(s.length+e.length-e.length%16);o.set(s,0),n.enqueue(F(r,e,o,s.length,0))},async flush(t){const e=this;await e.ready;let n=new i(0);if(e.pending.length){const t=e.$.update(J(T,e.pending));e.tt.update(t),n=G(T,t)}s.signature=G(T,e.tt.digest()).slice(0,10),t.enqueue(O(n,s.signature))}}),s=this}}function F(t,e,n,r,s,o){const f=e.length-s;let c;for(t.pending.length&&(e=O(t.pending,e),n=((t,e)=>{if(e&&e>t.length){const n=t;(t=new i(e)).set(n,0)}return t})(n,f-f%16)),c=0;f-16>=c;c+=16){const i=J(T,q(e,c,c+16));o&&t.tt.update(i);const s=t.$.update(i);o||t.tt.update(s),n.set(G(T,s),c+r)}return t.pending=q(e,c),n}async function N(t,n,r){const s=(t=>{if(void 0===l){const e=new i((t=unescape(encodeURIComponent(t))).length);for(let n=0;n<e.length;n++)e[n]=t.charCodeAt(n);return e}return(new l).encode(t)})(n),o=await((t,e,n,r,i)=>R?a.subtle.importKey("raw",e,n,!1,i):z.importKey(e))(0,s,I,0,A),f=await(async(t,e,n)=>U?await a.subtle.deriveBits(t,e,n):z.U(e,t.salt,x.iterations,n))(e.assign({salt:r},x),o,8*(2*P[t.Z]+2)),c=new i(f);t.keys={key:J(T,q(c,0,P[t.Z])),et:J(T,q(c,P[t.Z],2*P[t.Z])),passwordVerification:q(c,2*P[t.Z])}}function O(t,e){let n=t;return t.length+e.length&&(n=new i(t.length+e.length),n.set(t,0),n.set(e,t.length)),n}function q(t,e,n){return t.subarray(e,n)}function G(t,e){return t.g(e)}function J(t,e){return t.k(e)}class Q extends w{constructor(t,n){let i;super({start(){e.assign(this,{password:t,passwordVerification:n}),$(this,t)},transform(t,e){const n=this;if(n.password){const e=Y(n,t.subarray(0,12));if(n.password=null,e[11]!=n.passwordVerification)throw new r("Invalid pasword");t=t.subarray(12)}e.enqueue(Y(n,t))},flush(){i.valid=!0}}),i=this}}class X extends w{constructor(t,n){super({start(){e.assign(this,{password:t,passwordVerification:n}),$(this,t)},transform(t,e){const n=this;let r,s;if(n.password){n.password=null;const e=a.getRandomValues(new i(12));e[11]=n.passwordVerification,r=new i(t.length+e.length),r.set(Z(n,e),0),s=12}else r=new i(t.length),s=0;r.set(Z(n,t),s),e.enqueue(r)},flush(){}})}}function Y(t,e){const n=new i(e.length);for(let r=0;r<e.length;r++)n[r]=et(t)^e[r],tt(t,n[r]);return n}function Z(t,e){const n=new i(e.length);for(let r=0;r<e.length;r++)n[r]=et(t)^e[r],tt(t,e[r]);return n}function $(t,e){t.keys=[305419896,591751049,878082192],t.nt=new m(t.keys[0]),t.rt=new m(t.keys[2]);for(let n=0;n<e.length;n++)tt(t,e.charCodeAt(n))}function tt(t,e){t.nt.append([e]),t.keys[0]=~t.nt.get(),t.keys[1]=rt(t.keys[1]+nt(t.keys[0])),t.keys[1]=rt(n.imul(t.keys[1],134775813)+1),t.rt.append([t.keys[1]>>>24]),t.keys[2]=~t.rt.get()}function et(t){const e=2|t.keys[2];return nt(n.imul(e,1^e)>>>8)}function nt(t){return 255&t}function rt(t){return 4294967295&t}class it extends w{constructor(t,e){let n;super({start(){n=new t(e)},transform(t,e){t=n.append(t),e.enqueue(t)},flush(t){const e=n.flush();e&&t.enqueue(e)}})}}const st=void 0===p,ot=void 0===b;let ft=!0,ct=!0;class lt extends w{constructor(t,e,{chunkSize:n},...r){super({},...r);const{compressed:i,it:s,password:o,passwordVerification:f,encryptionStrength:l,zipCrypto:a,signed:u}=e,w=this;let h,d,b=wt(super.readable);const y=!!o;if(y&&!a||!u||([b,h]=b.tee(),h=h.pipeThrough(new g)),i)if(void 0!==s&&!s||st&&!ct)b=ut(t,b,n);else try{b=b.pipeThrough(new p("deflate-raw"))}catch(e){ct=!1,b=ut(t,b,n)}y&&(a?b=b.pipeThrough(new X(o,f)):(d=new L(o,l),b=b.pipeThrough(d))),ht(w,b,(async()=>{let t;y&&!a&&(t=d.signature),y&&!a||!u||(t=await h.getReader().read(),t=new c(t.value.buffer).getUint32(0)),w.signature=t}))}}class at extends w{constructor(t,e,{chunkSize:n},...i){super({},...i);const{zipCrypto:s,password:o,passwordVerification:f,signed:l,encryptionStrength:a,compressed:u,it:w}=e;let h,d,p=wt(super.readable);const y=!!o;if(y&&(s?p=p.pipeThrough(new Q(o,f)):(d=new K(o,l,a),p=p.pipeThrough(d))),u)if(void 0!==w&&!w||ot&&!ft)p=ut(t,p,n);else try{p=p.pipeThrough(new b("deflate-raw"))}catch(e){ft=!1,p=ut(t,p,n)}y&&!s||!l||([p,h]=p.tee(),h=h.pipeThrough(new g)),ht(this,p,(async()=>{if(y&&!s&&!d.valid)throw new r("Invalid signature");if((!y||s)&&l){const t=await h.getReader().read();if(t!=new c(t.value.buffer).getUint32(0,!1))throw new r("Invalid signature")}}))}}function ut(t,e,n){return e.pipeThrough(new it(t,{chunkSize:n}))}function wt(t){return t.pipeThrough(new w({transform(t,e){t&&t.length&&e.enqueue(t)}}))}function ht(t,n,r){t.length=0,n=n.pipeThrough(new w({transform(e,n){e&&e.length&&(t.length+=e.length,n.enqueue(e))},flush:r})),e.defineProperty(t,"readable",{get:()=>n})}const dt=new Map;let pt,bt=0;async function yt(t){try{t.scripts&&t.scripts.length&&importScripts.apply(void 0,t.scripts);const e=t.options;let n;self.initCodec&&self.initCodec(),e.codecType.startsWith("deflate")?n=self.Deflate:e.codecType.startsWith("inflate")&&(n=self.Inflate);const r={highWaterMark:1,size:()=>t.config.chunkSize},i=new h({async pull(t){let e=new Promise(((t,e)=>dt.set(bt,{resolve:t,reject:e})));mt({type:"pull",messageId:bt}),bt=(bt+1)%Number.MAX_SAFE_INTEGER;const{value:n,done:r}=await e;t.enqueue(n),r&&t.close()}},r),s=new d({write(t){mt({type:"data",data:t})}},r);pt=((t,e,n,r,i)=>{const s=new AbortController,{signal:o}=s;if(r.codecType.startsWith("deflate"))return{st:()=>f(lt),abort:c};if(r.codecType.startsWith("inflate"))return{st:()=>f(at),abort:c};async function f(s){const f=new s(t,r,i);await e.pipeThrough(f,{signal:o}).pipeTo(n,{ot:!0});const{length:c,signature:l}=f;return{length:c,signature:l}}function c(){s.abort()}})(n,i,s,e,t.config),mt({type:"close",result:await pt.st()})}catch(t){u({error:{message:t.message,stack:t.stack}})}}function mt(t){if(t.data){let{data:e}=t;if(e&&e.length)try{e.length!=e.buffer.byteLength&&(e=new i(e)),t.data=e.buffer,u(t,[t.data])}catch(e){u(t)}else u(t)}else u(t)}addEventListener("message",(async t=>{const e=t.data,{type:n,messageId:r,data:s,done:o}=e;try{if("start"==n&&yt(e),"data"==n){const{resolve:t}=dt.get(r);dt.delete(r),t({value:new i(s),done:o})}"abort"==n&&pt.abort()}catch(t){u({error:{message:t.message,stack:t.stack}})}}));const gt=(()=>{const e=-2;function o(e){return f(e.map((([e,n])=>new t(e).fill(n,0,e))))}function f(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?f(n):n)),[])}const c=[0,1,2,3].concat(...o([[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 l(){const t=this;function e(t,e){let n=0;do{n|=1&t,t>>>=1,n<<=1}while(--e>0);return n>>>1}t.ft=r=>{const i=t.ct,s=t.ut.lt,o=t.ut.wt;let f,c,l,a=-1;for(r.ht=0,r.dt=573,f=0;o>f;f++)0!==i[2*f]?(r.bt[++r.ht]=a=f,r.yt[f]=0):i[2*f+1]=0;for(;2>r.ht;)l=r.bt[++r.ht]=2>a?++a:0,i[2*l]=1,r.yt[l]=0,r.gt--,s&&(r.kt-=s[2*l+1]);for(t.vt=a,f=n.floor(r.ht/2);f>=1;f--)r.St(i,f);l=o;do{f=r.bt[1],r.bt[1]=r.bt[r.ht--],r.St(i,1),c=r.bt[1],r.bt[--r.dt]=f,r.bt[--r.dt]=c,i[2*l]=i[2*f]+i[2*c],r.yt[l]=n.max(r.yt[f],r.yt[c])+1,i[2*f+1]=i[2*c+1]=l,r.bt[1]=l++,r.St(i,1)}while(r.ht>=2);r.bt[--r.dt]=r.bt[1],(e=>{const n=t.ct,r=t.ut.lt,i=t.ut._t,s=t.ut.zt,o=t.ut.Ct;let f,c,l,a,u,w,h=0;for(a=0;15>=a;a++)e.It[a]=0;for(n[2*e.bt[e.dt]+1]=0,f=e.dt+1;573>f;f++)c=e.bt[f],a=n[2*n[2*c+1]+1]+1,a>o&&(a=o,h++),n[2*c+1]=a,c>t.vt||(e.It[a]++,u=0,s>c||(u=i[c-s]),w=n[2*c],e.gt+=w*(a+u),r&&(e.kt+=w*(r[2*c+1]+u)));if(0!==h){do{for(a=o-1;0===e.It[a];)a--;e.It[a]--,e.It[a+1]+=2,e.It[o]--,h-=2}while(h>0);for(a=o;0!==a;a--)for(c=e.It[a];0!==c;)l=e.bt[--f],l>t.vt||(n[2*l+1]!=a&&(e.gt+=(a-n[2*l+1])*n[2*l],n[2*l+1]=a),c--)}})(r),((t,n,r)=>{const i=[];let s,o,f,c=0;for(s=1;15>=s;s++)i[s]=c=c+r[s-1]<<1;for(o=0;n>=o;o++)f=t[2*o+1],0!==f&&(t[2*o]=e(i[f]++,f))})(i,t.vt,r.It)}}function a(t,e,n,r,i){const s=this;s.lt=t,s._t=e,s.zt=n,s.wt=r,s.Ct=i}l.xt=[0,1,2,3,4,5,6,7].concat(...o([[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]])),l.At=[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],l.Vt=[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],l.Pt=t=>256>t?c[t]:c[256+(t>>>7)],l.Bt=[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],l.Dt=[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],l.Et=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],l.Mt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const u=o([[144,8],[112,9],[24,7],[8,8]]);a.Rt=f([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(((t,e)=>[t,u[e]])));const w=o([[30,5]]);function h(t,e,n,r,i){const s=this;s.Ut=t,s.Tt=e,s.Wt=n,s.jt=r,s.Ht=i}a.Kt=f([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(((t,e)=>[t,w[e]]))),a.Lt=new a(a.Rt,l.Bt,257,286,15),a.Ft=new a(a.Kt,l.Dt,0,30,15),a.Nt=new a(null,l.Et,0,19,7);const d=[new h(0,0,0,0,0),new h(4,4,8,4,1),new h(4,5,16,8,1),new h(4,6,32,32,1),new h(4,4,16,16,2),new h(8,16,32,32,2),new h(8,16,128,128,2),new h(8,32,128,256,2),new h(32,128,258,1024,2),new h(32,258,258,4096,2)],p=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],b=113,y=666,m=262;function g(t,e,n,r){const i=t[2*e],s=t[2*n];return s>i||i==s&&r[e]<=r[n]}function k(){const t=this;let r,o,f,c,u,w,h,k,v,S,_,z,C,I,x,A,V,P,B,D,E,M,R,U,T,W,j,H,K,L,F,N,O;const q=new l,G=new l,J=new l;let Q,X,Y,Z,$,tt;function et(){let e;for(e=0;286>e;e++)F[2*e]=0;for(e=0;30>e;e++)N[2*e]=0;for(e=0;19>e;e++)O[2*e]=0;F[512]=1,t.gt=t.kt=0,X=Y=0}function nt(t,e){let n,r=-1,i=t[1],s=0,o=7,f=4;0===i&&(o=138,f=3),t[2*(e+1)+1]=65535;for(let c=0;e>=c;c++)n=i,i=t[2*(c+1)+1],++s<o&&n==i||(f>s?O[2*n]+=s:0!==n?(n!=r&&O[2*n]++,O[32]++):s>10?O[36]++:O[34]++,s=0,r=n,0===i?(o=138,f=3):n==i?(o=6,f=3):(o=7,f=4))}function rt(e){t.Ot[t.pending++]=e}function it(t){rt(255&t),rt(t>>>8&255)}function st(t,e){let n;const r=e;tt>16-r?(n=t,$|=n<<tt&65535,it($),$=n>>>16-tt,tt+=r-16):($|=t<<tt&65535,tt+=r)}function ot(t,e){const n=2*t;st(65535&e[n],65535&e[n+1])}function ft(t,e){let n,r,i=-1,s=t[1],o=0,f=7,c=4;for(0===s&&(f=138,c=3),n=0;e>=n;n++)if(r=s,s=t[2*(n+1)+1],++o>=f||r!=s){if(c>o)do{ot(r,O)}while(0!=--o);else 0!==r?(r!=i&&(ot(r,O),o--),ot(16,O),st(o-3,2)):o>10?(ot(18,O),st(o-11,7)):(ot(17,O),st(o-3,3));o=0,i=r,0===s?(f=138,c=3):r==s?(f=6,c=3):(f=7,c=4)}}function ct(){16==tt?(it($),$=0,tt=0):8>tt||(rt(255&$),$>>>=8,tt-=8)}function lt(e,r){let i,s,o;if(t.qt[X]=e,t.Gt[X]=255&r,X++,0===e?F[2*r]++:(Y++,e--,F[2*(l.xt[r]+256+1)]++,N[2*l.Pt(e)]++),0==(8191&X)&&j>2){for(i=8*X,s=E-V,o=0;30>o;o++)i+=N[2*o]*(5+l.Dt[o]);if(i>>>=3,Y<n.floor(X/2)&&i<n.floor(s/2))return!0}return X==Q-1}function at(e,n){let r,i,s,o,f=0;if(0!==X)do{r=t.qt[f],i=t.Gt[f],f++,0===r?ot(i,e):(s=l.xt[i],ot(s+256+1,e),o=l.Bt[s],0!==o&&(i-=l.At[s],st(i,o)),r--,s=l.Pt(r),ot(s,n),o=l.Dt[s],0!==o&&(r-=l.Vt[s],st(r,o)))}while(X>f);ot(256,e),Z=e[513]}function ut(){tt>8?it($):tt>0&&rt(255&$),$=0,tt=0}function wt(e,n,r){st(0+(r?1:0),3),((e,n)=>{ut(),Z=8,it(n),it(~n),t.Ot.set(k.subarray(e,e+n),t.pending),t.pending+=n})(e,n)}function ht(e){((e,n,r)=>{let i,s,o=0;j>0?(q.ft(t),G.ft(t),o=(()=>{let e;for(nt(F,q.vt),nt(N,G.vt),J.ft(t),e=18;e>=3&&0===O[2*l.Mt[e]+1];e--);return t.gt+=14+3*(e+1),e})(),i=t.gt+3+7>>>3,s=t.kt+3+7>>>3,s>i||(i=s)):i=s=n+5,n+4>i||-1==e?s==i?(st(2+(r?1:0),3),at(a.Rt,a.Kt)):(st(4+(r?1:0),3),((t,e,n)=>{let r;for(st(t-257,5),st(e-1,5),st(n-4,4),r=0;n>r;r++)st(O[2*l.Mt[r]+1],3);ft(F,t-1),ft(N,e-1)})(q.vt+1,G.vt+1,o+1),at(F,N)):wt(e,n,r),et(),r&&ut()})(0>V?-1:V,E-V,e),V=E,r.Jt()}function dt(){let t,e,n,i;do{if(i=v-R-E,0===i&&0===E&&0===R)i=u;else if(-1==i)i--;else if(E>=u+u-m){k.set(k.subarray(u,u+u),0),M-=u,E-=u,V-=u,t=C,n=t;do{e=65535&_[--n],_[n]=u>e?0:e-u}while(0!=--t);t=u,n=t;do{e=65535&S[--n],S[n]=u>e?0:e-u}while(0!=--t);i+=u}if(0===r.Qt)return;t=r.Xt(k,E+R,i),R+=t,3>R||(z=255&k[E],z=(z<<A^255&k[E+1])&x)}while(m>R&&0!==r.Qt)}function pt(t){let e,n,r=T,i=E,s=U;const o=E>u-m?E-(u-m):0;let f=L;const c=h,l=E+258;let a=k[i+s-1],w=k[i+s];K>U||(r>>=2),f>R&&(f=R);do{if(e=t,k[e+s]==w&&k[e+s-1]==a&&k[e]==k[i]&&k[++e]==k[i+1]){i+=2,e++;do{}while(k[++i]==k[++e]&&k[++i]==k[++e]&&k[++i]==k[++e]&&k[++i]==k[++e]&&k[++i]==k[++e]&&k[++i]==k[++e]&&k[++i]==k[++e]&&k[++i]==k[++e]&&l>i);if(n=258-(l-i),i=l-258,n>s){if(M=t,s=n,n>=f)break;a=k[i+s-1],w=k[i+s]}}}while((t=65535&S[t&c])>o&&0!=--r);return s>R?R:s}t.yt=[],t.It=[],t.bt=[],F=[],N=[],O=[],t.St=(e,n)=>{const r=t.bt,i=r[n];let s=n<<1;for(;s<=t.ht&&(s<t.ht&&g(e,r[s+1],r[s],t.yt)&&s++,!g(e,i,r[s],t.yt));)r[n]=r[s],n=s,s<<=1;r[n]=i},t.Yt=(r,l,p,y,m,g)=>(y||(y=8),m||(m=8),g||(g=0),r.Zt=null,-1==l&&(l=6),1>m||m>9||8!=y||9>p||p>15||0>l||l>9||0>g||g>2?e:(r.$t=t,w=p,u=1<<w,h=u-1,I=m+7,C=1<<I,x=C-1,A=n.floor((I+3-1)/3),k=new i(2*u),S=[],_=[],Q=1<<m+6,t.Ot=new i(4*Q),f=4*Q,t.qt=new s(Q),t.Gt=new i(Q),j=l,H=g,(e=>(e.te=e.ee=0,e.Zt=null,t.pending=0,t.ne=0,o=b,c=0,q.ct=F,q.ut=a.Lt,G.ct=N,G.ut=a.Ft,J.ct=O,J.ut=a.Nt,$=0,tt=0,Z=8,et(),(()=>{v=2*u,_[C-1]=0;for(let t=0;C-1>t;t++)_[t]=0;W=d[j].Tt,K=d[j].Ut,L=d[j].Wt,T=d[j].jt,E=0,V=0,R=0,P=U=2,D=0,z=0})(),0))(r))),t.re=()=>42!=o&&o!=b&&o!=y?e:(t.Gt=null,t.qt=null,t.Ot=null,_=null,S=null,k=null,t.$t=null,o==b?-3:0),t.ie=(t,n,r)=>{let i=0;return-1==n&&(n=6),0>n||n>9||0>r||r>2?e:(d[j].Ht!=d[n].Ht&&0!==t.te&&(i=t.se(1)),j!=n&&(j=n,W=d[j].Tt,K=d[j].Ut,L=d[j].Wt,T=d[j].jt),H=r,i)},t.oe=(t,n,r)=>{let i,s=r,f=0;if(!n||42!=o)return e;if(3>s)return 0;for(s>u-m&&(s=u-m,f=r-s),k.set(n.subarray(f,f+s),0),E=s,V=s,z=255&k[0],z=(z<<A^255&k[1])&x,i=0;s-3>=i;i++)z=(z<<A^255&k[i+2])&x,S[i&h]=_[z],_[z]=i;return 0},t.se=(n,i)=>{let s,l,g,v,I;if(i>4||0>i)return e;if(!n.fe||!n.ce&&0!==n.Qt||o==y&&4!=i)return n.Zt=p[4],e;if(0===n.le)return n.Zt=p[7],-5;var T;if(r=n,v=c,c=i,42==o&&(l=8+(w-8<<4)<<8,g=(j-1&255)>>1,g>3&&(g=3),l|=g<<6,0!==E&&(l|=32),l+=31-l%31,o=b,rt((T=l)>>8&255),rt(255&T)),0!==t.pending){if(r.Jt(),0===r.le)return c=-1,0}else if(0===r.Qt&&v>=i&&4!=i)return r.Zt=p[7],-5;if(o==y&&0!==r.Qt)return n.Zt=p[7],-5;if(0!==r.Qt||0!==R||0!=i&&o!=y){switch(I=-1,d[j].Ht){case 0:I=(t=>{let e,n=65535;for(n>f-5&&(n=f-5);;){if(1>=R){if(dt(),0===R&&0==t)return 0;if(0===R)break}if(E+=R,R=0,e=V+n,(0===E||E>=e)&&(R=E-e,E=e,ht(!1),0===r.le))return 0;if(E-V>=u-m&&(ht(!1),0===r.le))return 0}return ht(4==t),0===r.le?4==t?2:0:4==t?3:1})(i);break;case 1:I=(t=>{let e,n=0;for(;;){if(m>R){if(dt(),m>R&&0==t)return 0;if(0===R)break}if(3>R||(z=(z<<A^255&k[E+2])&x,n=65535&_[z],S[E&h]=_[z],_[z]=E),0===n||(E-n&65535)>u-m||2!=H&&(P=pt(n)),3>P)e=lt(0,255&k[E]),R--,E++;else if(e=lt(E-M,P-3),R-=P,P>W||3>R)E+=P,P=0,z=255&k[E],z=(z<<A^255&k[E+1])&x;else{P--;do{E++,z=(z<<A^255&k[E+2])&x,n=65535&_[z],S[E&h]=_[z],_[z]=E}while(0!=--P);E++}if(e&&(ht(!1),0===r.le))return 0}return ht(4==t),0===r.le?4==t?2:0:4==t?3:1})(i);break;case 2:I=(t=>{let e,n,i=0;for(;;){if(m>R){if(dt(),m>R&&0==t)return 0;if(0===R)break}if(3>R||(z=(z<<A^255&k[E+2])&x,i=65535&_[z],S[E&h]=_[z],_[z]=E),U=P,B=M,P=2,0!==i&&W>U&&u-m>=(E-i&65535)&&(2!=H&&(P=pt(i)),5>=P&&(1==H||3==P&&E-M>4096)&&(P=2)),3>U||P>U)if(0!==D){if(e=lt(0,255&k[E-1]),e&&ht(!1),E++,R--,0===r.le)return 0}else D=1,E++,R--;else{n=E+R-3,e=lt(E-1-B,U-3),R-=U-1,U-=2;do{++E>n||(z=(z<<A^255&k[E+2])&x,i=65535&_[z],S[E&h]=_[z],_[z]=E)}while(0!=--U);if(D=0,P=2,E++,e&&(ht(!1),0===r.le))return 0}}return 0!==D&&(e=lt(0,255&k[E-1]),D=0),ht(4==t),0===r.le?4==t?2:0:4==t?3:1})(i)}if(2!=I&&3!=I||(o=y),0==I||2==I)return 0===r.le&&(c=-1),0;if(1==I){if(1==i)st(2,3),ot(256,a.Rt),ct(),9>1+Z+10-tt&&(st(2,3),ot(256,a.Rt),ct()),Z=7;else if(wt(0,0,!1),3==i)for(s=0;C>s;s++)_[s]=0;if(r.Jt(),0===r.le)return c=-1,0}}return 4!=i?0:1}}function v(){const t=this;t.ae=0,t.ue=0,t.Qt=0,t.te=0,t.le=0,t.ee=0}return v.prototype={Yt(t,e){const n=this;return n.$t=new k,e||(e=15),n.$t.Yt(n,t,e)},se(t){const n=this;return n.$t?n.$t.se(n,t):e},re(){const t=this;if(!t.$t)return e;const n=t.$t.re();return t.$t=null,n},ie(t,n){const r=this;return r.$t?r.$t.ie(r,t,n):e},oe(t,n){const r=this;return r.$t?r.$t.oe(r,t,n):e},Xt(t,e,n){const r=this;let i=r.Qt;return i>n&&(i=n),0===i?0:(r.Qt-=i,t.set(r.ce.subarray(r.ae,r.ae+i),e),r.ae+=i,r.te+=i,i)},Jt(){const t=this;let e=t.$t.pending;e>t.le&&(e=t.le),0!==e&&(t.fe.set(t.$t.Ot.subarray(t.$t.ne,t.$t.ne+e),t.ue),t.ue+=e,t.$t.ne+=e,t.ee+=e,t.le-=e,t.$t.pending-=e,0===t.$t.pending&&(t.$t.ne=0))}},function(t){const e=new v,s=(o=t&&t.chunkSize?t.chunkSize:65536)+5*(n.floor(o/16383)+1);var o;const f=new i(s);let c=t?t.level:-1;void 0===c&&(c=-1),e.Yt(c),e.fe=f,this.append=(t,n)=>{let o,c,l=0,a=0,u=0;const w=[];if(t.length){e.ae=0,e.ce=t,e.Qt=t.length;do{if(e.ue=0,e.le=s,o=e.se(0),0!=o)throw new r("deflating: "+e.Zt);e.ue&&(e.ue==s?w.push(new i(f)):w.push(f.slice(0,e.ue))),u+=e.ue,n&&e.ae>0&&e.ae!=l&&(n(e.ae),l=e.ae)}while(e.Qt>0||0===e.le);return w.length>1?(c=new i(u),w.forEach((t=>{c.set(t,a),a+=t.length}))):c=w[0]||new i(0),c}},this.flush=()=>{let t,n,o=0,c=0;const l=[];do{if(e.ue=0,e.le=s,t=e.se(4),1!=t&&0!=t)throw new r("deflating: "+e.Zt);s-e.le>0&&l.push(f.slice(0,e.ue)),c+=e.ue}while(e.Qt>0||0===e.le);return e.re(),n=new i(c),l.forEach((t=>{n.set(t,o),o+=t.length})),n}}})(),kt=(()=>{const t=-2,e=-3,s=-5,o=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],c=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],l=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],a=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],u=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],w=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],h=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function d(){let t,n,r,i,o,c;function l(t,n,f,l,a,u,w,h,d,p,b){let y,m,g,k,v,S,_,z,C,I,x,A,V,P,B;I=0,v=f;do{r[t[n+I]]++,I++,v--}while(0!==v);if(r[0]==f)return w[0]=-1,h[0]=0,0;for(z=h[0],S=1;15>=S&&0===r[S];S++);for(_=S,S>z&&(z=S),v=15;0!==v&&0===r[v];v--);for(g=v,z>v&&(z=v),h[0]=z,P=1<<S;v>S;S++,P<<=1)if(0>(P-=r[S]))return e;if(0>(P-=r[v]))return e;for(r[v]+=P,c[1]=S=0,I=1,V=2;0!=--v;)c[V]=S+=r[I],V++,I++;v=0,I=0;do{0!==(S=t[n+I])&&(b[c[S]++]=v),I++}while(++v<f);for(f=c[g],c[0]=v=0,I=0,k=-1,A=-z,o[0]=0,x=0,B=0;g>=_;_++)for(y=r[_];0!=y--;){for(;_>A+z;){if(k++,A+=z,B=g-A,B=B>z?z:B,(m=1<<(S=_-A))>y+1&&(m-=y+1,V=_,B>S))for(;++S<B&&(m<<=1)>r[++V];)m-=r[V];if(B=1<<S,p[0]+B>1440)return e;o[k]=x=p[0],p[0]+=B,0!==k?(c[k]=v,i[0]=S,i[1]=z,S=v>>>A-z,i[2]=x-o[k-1]-S,d.set(i,3*(o[k-1]+S))):w[0]=x}for(i[1]=_-A,f>I?b[I]<l?(i[0]=256>b[I]?0:96,i[2]=b[I++]):(i[0]=u[b[I]-l]+16+64,i[2]=a[b[I++]-l]):i[0]=192,m=1<<_-A,S=v>>>A;B>S;S+=m)d.set(i,3*(x+S));for(S=1<<_-1;0!=(v&S);S>>>=1)v^=S;for(v^=S,C=(1<<A)-1;(v&C)!=c[k];)k--,A-=z,C=(1<<A)-1}return 0!==P&&1!=g?s:0}function d(e){let s;for(t||(t=[],n=[],r=new f(16),i=[],o=new f(15),c=new f(16)),n.length<e&&(n=[]),s=0;e>s;s++)n[s]=0;for(s=0;16>s;s++)r[s]=0;for(s=0;3>s;s++)i[s]=0;o.set(r.subarray(0,15),0),c.set(r.subarray(0,16),0)}this.we=(r,i,o,f,c)=>{let a;return d(19),t[0]=0,a=l(r,0,19,19,null,null,o,i,f,t,n),a==e?c.Zt="oversubscribed dynamic bit lengths tree":a!=s&&0!==i[0]||(c.Zt="incomplete dynamic bit lengths tree",a=e),a},this.he=(r,i,o,f,c,p,b,y,m)=>{let g;return d(288),t[0]=0,g=l(o,0,r,257,a,u,p,f,y,t,n),0!=g||0===f[0]?(g==e?m.Zt="oversubscribed literal/length tree":-4!=g&&(m.Zt="incomplete literal/length tree",g=e),g):(d(288),g=l(o,r,i,0,w,h,b,c,y,t,n),0!=g||0===c[0]&&r>257?(g==e?m.Zt="oversubscribed distance tree":g==s?(m.Zt="incomplete distance tree",g=e):-4!=g&&(m.Zt="empty distance tree with lengths",g=e),g):0)}}function p(){const n=this;let r,i,s,f,c=0,l=0,a=0,u=0,w=0,h=0,d=0,p=0,b=0,y=0;function m(t,n,r,i,s,f,c,l){let a,u,w,h,d,p,b,y,m,g,k,v,S,_,z,C;b=l.ae,y=l.Qt,d=c.de,p=c.pe,m=c.write,g=m<c.read?c.read-m-1:c.end-m,k=o[t],v=o[n];do{for(;20>p;)y--,d|=(255&l.be(b++))<<p,p+=8;if(a=d&k,u=r,w=i,C=3*(w+a),0!==(h=u[C]))for(;;){if(d>>=u[C+1],p-=u[C+1],0!=(16&h)){for(h&=15,S=u[C+2]+(d&o[h]),d>>=h,p-=h;15>p;)y--,d|=(255&l.be(b++))<<p,p+=8;for(a=d&v,u=s,w=f,C=3*(w+a),h=u[C];;){if(d>>=u[C+1],p-=u[C+1],0!=(16&h)){for(h&=15;h>p;)y--,d|=(255&l.be(b++))<<p,p+=8;if(_=u[C+2]+(d&o[h]),d>>=h,p-=h,g-=S,_>m){z=m-_;do{z+=c.end}while(0>z);if(h=c.end-z,S>h){if(S-=h,m-z>0&&h>m-z)do{c.ye[m++]=c.ye[z++]}while(0!=--h);else c.ye.set(c.ye.subarray(z,z+h),m),m+=h,z+=h,h=0;z=0}}else z=m-_,m-z>0&&2>m-z?(c.ye[m++]=c.ye[z++],c.ye[m++]=c.ye[z++],S-=2):(c.ye.set(c.ye.subarray(z,z+2),m),m+=2,z+=2,S-=2);if(m-z>0&&S>m-z)do{c.ye[m++]=c.ye[z++]}while(0!=--S);else c.ye.set(c.ye.subarray(z,z+S),m),m+=S,z+=S,S=0;break}if(0!=(64&h))return l.Zt="invalid distance code",S=l.Qt-y,S=S>p>>3?p>>3:S,y+=S,b-=S,p-=S<<3,c.de=d,c.pe=p,l.Qt=y,l.te+=b-l.ae,l.ae=b,c.write=m,e;a+=u[C+2],a+=d&o[h],C=3*(w+a),h=u[C]}break}if(0!=(64&h))return 0!=(32&h)?(S=l.Qt-y,S=S>p>>3?p>>3:S,y+=S,b-=S,p-=S<<3,c.de=d,c.pe=p,l.Qt=y,l.te+=b-l.ae,l.ae=b,c.write=m,1):(l.Zt="invalid literal/length code",S=l.Qt-y,S=S>p>>3?p>>3:S,y+=S,b-=S,p-=S<<3,c.de=d,c.pe=p,l.Qt=y,l.te+=b-l.ae,l.ae=b,c.write=m,e);if(a+=u[C+2],a+=d&o[h],C=3*(w+a),0===(h=u[C])){d>>=u[C+1],p-=u[C+1],c.ye[m++]=u[C+2],g--;break}}else d>>=u[C+1],p-=u[C+1],c.ye[m++]=u[C+2],g--}while(g>=258&&y>=10);return S=l.Qt-y,S=S>p>>3?p>>3:S,y+=S,b-=S,p-=S<<3,c.de=d,c.pe=p,l.Qt=y,l.te+=b-l.ae,l.ae=b,c.write=m,0}n.init=(t,e,n,o,c,l)=>{r=0,d=t,p=e,s=n,b=o,f=c,y=l,i=null},n.me=(n,g,k)=>{let v,S,_,z,C,I,x,A=0,V=0,P=0;for(P=g.ae,z=g.Qt,A=n.de,V=n.pe,C=n.write,I=C<n.read?n.read-C-1:n.end-C;;)switch(r){case 0:if(I>=258&&z>=10&&(n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,k=m(d,p,s,b,f,y,n,g),P=g.ae,z=g.Qt,A=n.de,V=n.pe,C=n.write,I=C<n.read?n.read-C-1:n.end-C,0!=k)){r=1==k?7:9;break}a=d,i=s,l=b,r=1;case 1:for(v=a;v>V;){if(0===z)return n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,n.ge(g,k);k=0,z--,A|=(255&g.be(P++))<<V,V+=8}if(S=3*(l+(A&o[v])),A>>>=i[S+1],V-=i[S+1],_=i[S],0===_){u=i[S+2],r=6;break}if(0!=(16&_)){w=15&_,c=i[S+2],r=2;break}if(0==(64&_)){a=_,l=S/3+i[S+2];break}if(0!=(32&_)){r=7;break}return r=9,g.Zt="invalid literal/length code",k=e,n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,n.ge(g,k);case 2:for(v=w;v>V;){if(0===z)return n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,n.ge(g,k);k=0,z--,A|=(255&g.be(P++))<<V,V+=8}c+=A&o[v],A>>=v,V-=v,a=p,i=f,l=y,r=3;case 3:for(v=a;v>V;){if(0===z)return n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,n.ge(g,k);k=0,z--,A|=(255&g.be(P++))<<V,V+=8}if(S=3*(l+(A&o[v])),A>>=i[S+1],V-=i[S+1],_=i[S],0!=(16&_)){w=15&_,h=i[S+2],r=4;break}if(0==(64&_)){a=_,l=S/3+i[S+2];break}return r=9,g.Zt="invalid distance code",k=e,n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,n.ge(g,k);case 4:for(v=w;v>V;){if(0===z)return n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,n.ge(g,k);k=0,z--,A|=(255&g.be(P++))<<V,V+=8}h+=A&o[v],A>>=v,V-=v,r=5;case 5:for(x=C-h;0>x;)x+=n.end;for(;0!==c;){if(0===I&&(C==n.end&&0!==n.read&&(C=0,I=C<n.read?n.read-C-1:n.end-C),0===I&&(n.write=C,k=n.ge(g,k),C=n.write,I=C<n.read?n.read-C-1:n.end-C,C==n.end&&0!==n.read&&(C=0,I=C<n.read?n.read-C-1:n.end-C),0===I)))return n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,n.ge(g,k);n.ye[C++]=n.ye[x++],I--,x==n.end&&(x=0),c--}r=0;break;case 6:if(0===I&&(C==n.end&&0!==n.read&&(C=0,I=C<n.read?n.read-C-1:n.end-C),0===I&&(n.write=C,k=n.ge(g,k),C=n.write,I=C<n.read?n.read-C-1:n.end-C,C==n.end&&0!==n.read&&(C=0,I=C<n.read?n.read-C-1:n.end-C),0===I)))return n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,n.ge(g,k);k=0,n.ye[C++]=u,I--,r=0;break;case 7:if(V>7&&(V-=8,z++,P--),n.write=C,k=n.ge(g,k),C=n.write,I=C<n.read?n.read-C-1:n.end-C,n.read!=n.write)return n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,n.ge(g,k);r=8;case 8:return k=1,n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,n.ge(g,k);case 9:return k=e,n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,n.ge(g,k);default:return k=t,n.de=A,n.pe=V,g.Qt=z,g.te+=P-g.ae,g.ae=P,n.write=C,n.ge(g,k)}},n.ke=()=>{}}d.ve=(t,e,n,r)=>(t[0]=9,e[0]=5,n[0]=c,r[0]=l,0);const b=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function y(n,r){const c=this;let l,a=0,u=0,w=0,h=0;const y=[0],m=[0],g=new p;let k=0,v=new f(4320);const S=new d;c.pe=0,c.de=0,c.ye=new i(r),c.end=r,c.read=0,c.write=0,c.reset=(t,e)=>{e&&(e[0]=0),6==a&&g.ke(t),a=0,c.pe=0,c.de=0,c.read=c.write=0},c.reset(n,null),c.ge=(t,e)=>{let n,r,i;return r=t.ue,i=c.read,n=(i>c.write?c.end:c.write)-i,n>t.le&&(n=t.le),0!==n&&e==s&&(e=0),t.le-=n,t.ee+=n,t.fe.set(c.ye.subarray(i,i+n),r),r+=n,i+=n,i==c.end&&(i=0,c.write==c.end&&(c.write=0),n=c.write-i,n>t.le&&(n=t.le),0!==n&&e==s&&(e=0),t.le-=n,t.ee+=n,t.fe.set(c.ye.subarray(i,i+n),r),r+=n,i+=n),t.ue=r,c.read=i,e},c.me=(n,r)=>{let i,s,f,p,_,z,C,I;for(p=n.ae,_=n.Qt,s=c.de,f=c.pe,z=c.write,C=z<c.read?c.read-z-1:c.end-z;;){let x,A,V,P,B,D,E,M;switch(a){case 0:for(;3>f;){if(0===_)return c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);r=0,_--,s|=(255&n.be(p++))<<f,f+=8}switch(i=7&s,k=1&i,i>>>1){case 0:s>>>=3,f-=3,i=7&f,s>>>=i,f-=i,a=1;break;case 1:x=[],A=[],V=[[]],P=[[]],d.ve(x,A,V,P),g.init(x[0],A[0],V[0],0,P[0],0),s>>>=3,f-=3,a=6;break;case 2:s>>>=3,f-=3,a=3;break;case 3:return s>>>=3,f-=3,a=9,n.Zt="invalid block type",r=e,c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r)}break;case 1:for(;32>f;){if(0===_)return c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);r=0,_--,s|=(255&n.be(p++))<<f,f+=8}if((~s>>>16&65535)!=(65535&s))return a=9,n.Zt="invalid stored block lengths",r=e,c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);u=65535&s,s=f=0,a=0!==u?2:0!==k?7:0;break;case 2:if(0===_)return c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);if(0===C&&(z==c.end&&0!==c.read&&(z=0,C=z<c.read?c.read-z-1:c.end-z),0===C&&(c.write=z,r=c.ge(n,r),z=c.write,C=z<c.read?c.read-z-1:c.end-z,z==c.end&&0!==c.read&&(z=0,C=z<c.read?c.read-z-1:c.end-z),0===C)))return c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);if(r=0,i=u,i>_&&(i=_),i>C&&(i=C),c.ye.set(n.Xt(p,i),z),p+=i,_-=i,z+=i,C-=i,0!=(u-=i))break;a=0!==k?7:0;break;case 3:for(;14>f;){if(0===_)return c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);r=0,_--,s|=(255&n.be(p++))<<f,f+=8}if(w=i=16383&s,(31&i)>29||(i>>5&31)>29)return a=9,n.Zt="too many length or distance symbols",r=e,c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);if(i=258+(31&i)+(i>>5&31),!l||l.length<i)l=[];else for(I=0;i>I;I++)l[I]=0;s>>>=14,f-=14,h=0,a=4;case 4:for(;4+(w>>>10)>h;){for(;3>f;){if(0===_)return c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);r=0,_--,s|=(255&n.be(p++))<<f,f+=8}l[b[h++]]=7&s,s>>>=3,f-=3}for(;19>h;)l[b[h++]]=0;if(y[0]=7,i=S.we(l,y,m,v,n),0!=i)return(r=i)==e&&(l=null,a=9),c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);h=0,a=5;case 5:for(;i=w,258+(31&i)+(i>>5&31)>h;){let t,u;for(i=y[0];i>f;){if(0===_)return c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);r=0,_--,s|=(255&n.be(p++))<<f,f+=8}if(i=v[3*(m[0]+(s&o[i]))+1],u=v[3*(m[0]+(s&o[i]))+2],16>u)s>>>=i,f-=i,l[h++]=u;else{for(I=18==u?7:u-14,t=18==u?11:3;i+I>f;){if(0===_)return c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);r=0,_--,s|=(255&n.be(p++))<<f,f+=8}if(s>>>=i,f-=i,t+=s&o[I],s>>>=I,f-=I,I=h,i=w,I+t>258+(31&i)+(i>>5&31)||16==u&&1>I)return l=null,a=9,n.Zt="invalid bit length repeat",r=e,c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);u=16==u?l[I-1]:0;do{l[I++]=u}while(0!=--t);h=I}}if(m[0]=-1,B=[],D=[],E=[],M=[],B[0]=9,D[0]=6,i=w,i=S.he(257+(31&i),1+(i>>5&31),l,B,D,E,M,v,n),0!=i)return i==e&&(l=null,a=9),r=i,c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);g.init(B[0],D[0],v,E[0],v,M[0]),a=6;case 6:if(c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,1!=(r=g.me(c,n,r)))return c.ge(n,r);if(r=0,g.ke(n),p=n.ae,_=n.Qt,s=c.de,f=c.pe,z=c.write,C=z<c.read?c.read-z-1:c.end-z,0===k){a=0;break}a=7;case 7:if(c.write=z,r=c.ge(n,r),z=c.write,C=z<c.read?c.read-z-1:c.end-z,c.read!=c.write)return c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);a=8;case 8:return r=1,c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);case 9:return r=e,c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r);default:return r=t,c.de=s,c.pe=f,n.Qt=_,n.te+=p-n.ae,n.ae=p,c.write=z,c.ge(n,r)}}},c.ke=t=>{c.reset(t,null),c.ye=null,v=null},c.Se=(t,e,n)=>{c.ye.set(t.subarray(e,e+n),0),c.read=c.write=n},c._e=()=>1==a?1:0}const m=13,g=[0,0,255,255];function k(){const n=this;function r(e){return e&&e.ze?(e.te=e.ee=0,e.Zt=null,e.ze.mode=7,e.ze.Ce.reset(e,null),0):t}n.mode=0,n.method=0,n.Ie=[0],n.xe=0,n.marker=0,n.Ae=0,n.Ve=t=>(n.Ce&&n.Ce.ke(t),n.Ce=null,0),n.Pe=(e,i)=>(e.Zt=null,n.Ce=null,8>i||i>15?(n.Ve(e),t):(n.Ae=i,e.ze.Ce=new y(e,1<<i),r(e),0)),n.Be=(n,r)=>{let i,o;if(!n||!n.ze||!n.ce)return t;const f=n.ze;for(r=4==r?s:0,i=s;;)switch(f.mode){case 0:if(0===n.Qt)return i;if(i=r,n.Qt--,n.te++,8!=(15&(f.method=n.be(n.ae++)))){f.mode=m,n.Zt="unknown compression method",f.marker=5;break}if(8+(f.method>>4)>f.Ae){f.mode=m,n.Zt="invalid win size",f.marker=5;break}f.mode=1;case 1:if(0===n.Qt)return i;if(i=r,n.Qt--,n.te++,o=255&n.be(n.ae++),((f.method<<8)+o)%31!=0){f.mode=m,n.Zt="incorrect header check",f.marker=5;break}if(0==(32&o)){f.mode=7;break}f.mode=2;case 2:if(0===n.Qt)return i;i=r,n.Qt--,n.te++,f.xe=(255&n.be(n.ae++))<<24&4278190080,f.mode=3;case 3:if(0===n.Qt)return i;i=r,n.Qt--,n.te++,f.xe+=(255&n.be(n.ae++))<<16&16711680,f.mode=4;case 4:if(0===n.Qt)return i;i=r,n.Qt--,n.te++,f.xe+=(255&n.be(n.ae++))<<8&65280,f.mode=5;case 5:return 0===n.Qt?i:(i=r,n.Qt--,n.te++,f.xe+=255&n.be(n.ae++),f.mode=6,2);case 6:return f.mode=m,n.Zt="need dictionary",f.marker=0,t;case 7:if(i=f.Ce.me(n,i),i==e){f.mode=m,f.marker=0;break}if(0==i&&(i=r),1!=i)return i;i=r,f.Ce.reset(n,f.Ie),f.mode=12;case 12:return n.Qt=0,1;case m:return e;default:return t}},n.De=(e,n,r)=>{let i=0,s=r;if(!e||!e.ze||6!=e.ze.mode)return t;const o=e.ze;return s<1<<o.Ae||(s=(1<<o.Ae)-1,i=r-s),o.Ce.Se(n,i,s),o.mode=7,0},n.Ee=n=>{let i,o,f,c,l;if(!n||!n.ze)return t;const a=n.ze;if(a.mode!=m&&(a.mode=m,a.marker=0),0===(i=n.Qt))return s;for(o=n.ae,f=a.marker;0!==i&&4>f;)n.be(o)==g[f]?f++:f=0!==n.be(o)?0:4-f,o++,i--;return n.te+=o-n.ae,n.ae=o,n.Qt=i,a.marker=f,4!=f?e:(c=n.te,l=n.ee,r(n),n.te=c,n.ee=l,a.mode=7,0)},n.Me=e=>e&&e.ze&&e.ze.Ce?e.ze.Ce._e():t}function v(){}return v.prototype={Pe(t){const e=this;return e.ze=new k,t||(t=15),e.ze.Pe(e,t)},Be(e){const n=this;return n.ze?n.ze.Be(n,e):t},Ve(){const e=this;if(!e.ze)return t;const n=e.ze.Ve(e);return e.ze=null,n},Ee(){const e=this;return e.ze?e.ze.Ee(e):t},De(e,n){const r=this;return r.ze?r.ze.De(r,e,n):t},be(t){return this.ce[t]},Xt(t,e){return this.ce.subarray(t,t+e)}},function(t){const e=new v,o=t&&t.chunkSize?n.floor(2*t.chunkSize):131072,f=new i(o);let c=!1;e.Pe(),e.fe=f,this.append=(t,n)=>{const l=[];let a,u,w=0,h=0,d=0;if(0!==t.length){e.ae=0,e.ce=t,e.Qt=t.length;do{if(e.ue=0,e.le=o,0!==e.Qt||c||(e.ae=0,c=!0),a=e.Be(0),c&&a===s){if(0!==e.Qt)throw new r("inflating: bad input")}else if(0!==a&&1!==a)throw new r("inflating: "+e.Zt);if((c||1===a)&&e.Qt===t.length)throw new r("inflating: bad input");e.ue&&(e.ue===o?l.push(new i(f)):l.push(f.slice(0,e.ue))),d+=e.ue,n&&e.ae>0&&e.ae!=w&&(n(e.ae),w=e.ae)}while(e.Qt>0||0===e.le);return l.length>1?(u=new i(d),l.forEach((t=>{u.set(t,h),h+=t.length}))):u=l[0]||new i(0),u}},this.flush=()=>{e.Ve()}}})();self.initCodec=()=>{self.Deflate=gt,self.Inflate=kt};\n'],{type:"text/javascript"}));e({workerScripts:{inflate:[t],deflate:[t]}});}};
4340
4340
 
4341
4341
  /*
4342
4342
  Copyright (c) 2022 Gildas Lormeau. All rights reserved.
@@ -4412,7 +4412,7 @@
4412
4412
  const codecAdapter = this;
4413
4413
  const onData = data => {
4414
4414
  if (codecAdapter.pendingData) {
4415
- const pendingData = codecAdapter.pendingData;
4415
+ const { pendingData } = codecAdapter;
4416
4416
  codecAdapter.pendingData = new Uint8Array(pendingData.length + data.length);
4417
4417
  codecAdapter.pendingData.set(pendingData, 0);
4418
4418
  codecAdapter.pendingData.set(data, pendingData.length);
@@ -4831,7 +4831,7 @@
4831
4831
  * Reset the hash state.
4832
4832
  * @return this
4833
4833
  */
4834
- reset: function () {
4834
+ reset() {
4835
4835
  const sha1 = this;
4836
4836
  sha1._h = this._init.slice(0);
4837
4837
  sha1._buffer = [];
@@ -4844,7 +4844,7 @@
4844
4844
  * @param {bitArray|String} data the data to hash.
4845
4845
  * @return this
4846
4846
  */
4847
- update: function (data) {
4847
+ update(data) {
4848
4848
  const sha1 = this;
4849
4849
  if (typeof data === "string") {
4850
4850
  data = codec.utf8String.toBits(data);
@@ -4870,7 +4870,7 @@
4870
4870
  * Complete hashing and output the hash value.
4871
4871
  * @return {bitArray} The hash value, an array of 5 big-endian words. TODO
4872
4872
  */
4873
- finalize: function () {
4873
+ finalize() {
4874
4874
  const sha1 = this;
4875
4875
  let b = sha1._buffer;
4876
4876
  const h = sha1._h;
@@ -4910,7 +4910,7 @@
4910
4910
  * The SHA-1 logical functions f(0), f(1), ..., f(79).
4911
4911
  * @private
4912
4912
  */
4913
- _f: function (t, b, c, d) {
4913
+ _f(t, b, c, d) {
4914
4914
  if (t <= 19) {
4915
4915
  return (b & c) | (~b & d);
4916
4916
  } else if (t <= 39) {
@@ -4926,7 +4926,7 @@
4926
4926
  * Circular left-shift operator.
4927
4927
  * @private
4928
4928
  */
4929
- _S: function (n, x) {
4929
+ _S(n, x) {
4930
4930
  return (x << n) | (x >>> 32 - n);
4931
4931
  },
4932
4932
 
@@ -4935,7 +4935,7 @@
4935
4935
  * @param {Uint32Array|bitArray} words one block of words.
4936
4936
  * @private
4937
4937
  */
4938
- _block: function (words) {
4938
+ _block(words) {
4939
4939
  const sha1 = this;
4940
4940
  const h = sha1._h;
4941
4941
  // When words is passed to _block, it has 16 elements. SHA1 _block
@@ -5941,8 +5941,7 @@
5941
5941
  readable = pipeCodecStream(codecConstructor, readable, chunkSize);
5942
5942
  } else {
5943
5943
  try {
5944
- const compressionStream = new CompressionStream(COMPRESSION_FORMAT);
5945
- readable = readable.pipeThrough(compressionStream);
5944
+ readable = readable.pipeThrough(new CompressionStream(COMPRESSION_FORMAT));
5946
5945
  } catch (_error) {
5947
5946
  DEFLATE_RAW_SUPPORTED = false;
5948
5947
  readable = pipeCodecStream(codecConstructor, readable, chunkSize);
@@ -6021,8 +6020,8 @@
6021
6020
  }
6022
6021
  }
6023
6022
 
6024
- function pipeCodecStream(codecConstructor, stream, chunkSize) {
6025
- return stream.pipeThrough(new CodecStream(codecConstructor, { chunkSize }));
6023
+ function pipeCodecStream(codecConstructor, readable, chunkSize) {
6024
+ return readable.pipeThrough(new CodecStream(codecConstructor, { chunkSize }));
6026
6025
  }
6027
6026
 
6028
6027
  function filterEmptyChunks(readable) {
@@ -6147,7 +6146,9 @@
6147
6146
 
6148
6147
  let classicWorkersSupported = true;
6149
6148
 
6150
- function getWorker(workerData, codecConstructor, readable, writable, options, config, streamOptions, onTaskFinished, webWorker, scripts) {
6149
+ function getWorker(workerData, stream, workerOptions, onTaskFinished) {
6150
+ const { readable, writable } = stream;
6151
+ const { options, config, streamOptions, webWorker, scripts, codecConstructor } = workerOptions;
6151
6152
  Object.assign(workerData, {
6152
6153
  busy: true,
6153
6154
  codecConstructor,
@@ -6166,26 +6167,36 @@
6166
6167
  onTaskFinished(workerData);
6167
6168
  }
6168
6169
  });
6169
- const { signal, onprogress, size } = streamOptions;
6170
- if (signal || onprogress) {
6170
+ const { signal, size, onstart, onprogress, onend } = streamOptions;
6171
+ if (signal || onstart || onprogress || onend) {
6171
6172
  let chunkOffset = 0;
6172
6173
  const transformer = {};
6174
+ if (onstart) {
6175
+ transformer.start = () => callHandler(onstart, size());
6176
+ }
6173
6177
  if (onprogress) {
6174
- transformer.transform = (chunk, controller) => {
6178
+ transformer.transform = async (chunk, controller) => {
6175
6179
  chunkOffset += chunk.length;
6176
- try {
6177
- onprogress(chunkOffset, size());
6178
- } catch (_error) {
6179
- // ignored
6180
- }
6180
+ await callHandler(onprogress, chunkOffset, size());
6181
6181
  controller.enqueue(chunk);
6182
6182
  };
6183
6183
  }
6184
- workerData.readable = readable.pipeThrough(new TransformStream(transformer), { signal });
6184
+ if (onend) {
6185
+ transformer.flush = () => callHandler(onend);
6186
+ }
6187
+ workerData.readable = readable.pipeThrough(new TransformStream(transformer, { highWaterMark: 1, size: () => config.chunkSize }), { signal });
6185
6188
  }
6186
6189
  return webWorker ? createWebWorkerInterface(workerData, config) : createWorkerInterface(workerData, config);
6187
6190
  }
6188
6191
 
6192
+ async function callHandler(handler, ...parameters) {
6193
+ try {
6194
+ await handler(...parameters);
6195
+ } catch (_error) {
6196
+ // ignored
6197
+ }
6198
+ }
6199
+
6189
6200
  function createWorkerInterface(workerData, config) {
6190
6201
  const interfaceCodec = createCodec(workerData.codecConstructor, workerData.readable, workerData.writable, workerData.options, config);
6191
6202
  const codec = {
@@ -6229,7 +6240,7 @@
6229
6240
  workerData.onTaskFinished();
6230
6241
  },
6231
6242
  run() {
6232
- const options = workerData.options;
6243
+ const { options } = workerData;
6233
6244
  const scripts = workerData.scripts.slice(1);
6234
6245
  sendMessage({ type: MESSAGE_START, scripts, options, config: { chunkSize } });
6235
6246
  return workerData.result;
@@ -6253,11 +6264,15 @@
6253
6264
  }
6254
6265
 
6255
6266
  function sendMessage(message) {
6256
- const worker = workerData.worker;
6267
+ const { worker } = workerData;
6257
6268
  try {
6258
- if (message.data) {
6269
+ let { data } = message;
6270
+ if (data) {
6259
6271
  try {
6260
- message.data = new Uint8Array(message.data).buffer;
6272
+ if (data.length != data.buffer.byteLength) {
6273
+ data = new Uint8Array(data);
6274
+ }
6275
+ message.data = data.buffer;
6261
6276
  worker.postMessage(message, [message.data]);
6262
6277
  } catch (_error) {
6263
6278
  worker.postMessage(message);
@@ -6340,24 +6355,26 @@
6340
6355
 
6341
6356
  let indexWorker = 0;
6342
6357
 
6343
- async function runCodec(codecConstructor, readable, writable, options, config, streamOptions) {
6358
+ async function runWorker(stream, workerOptions) {
6359
+ const { options, config, streamOptions } = workerOptions;
6344
6360
  const streamCopy = !options.compressed && !options.signed && !options.encrypted;
6345
- const webWorker = !streamCopy && (options.useWebWorkers || (options.useWebWorkers === undefined && config.useWebWorkers));
6346
- const scripts = webWorker && config.workerScripts ? config.workerScripts[options.codecType] : [];
6361
+ workerOptions.webWorker = !streamCopy && (options.useWebWorkers || (options.useWebWorkers === undefined && config.useWebWorkers));
6362
+ workerOptions.scripts = workerOptions.webWorker && config.workerScripts ? config.workerScripts[options.codecType] : [];
6347
6363
  options.useCompressionStream = options.useCompressionStream === undefined ? config.useCompressionStream : options.useCompressionStream;
6348
6364
  let codec;
6365
+
6349
6366
  if (pool.length < config.maxWorkers) {
6350
6367
  const workerData = { indexWorker };
6351
6368
  indexWorker++;
6352
6369
  pool.push(workerData);
6353
- codec = getWorker(workerData, codecConstructor, readable, writable, options, config, streamOptions, onTaskFinished, webWorker, scripts);
6370
+ codec = getWorker(workerData, stream, workerOptions, onTaskFinished);
6354
6371
  } else {
6355
6372
  const workerData = pool.find(workerData => !workerData.busy);
6356
6373
  if (workerData) {
6357
6374
  clearTerminateTimeout(workerData);
6358
- codec = getWorker(workerData, codecConstructor, readable, writable, options, config, streamOptions, onTaskFinished, webWorker, scripts);
6375
+ codec = getWorker(workerData, stream, workerOptions, onTaskFinished);
6359
6376
  } else {
6360
- codec = await new Promise(resolve => pendingRequests.push({ resolve, codecConstructor, readable, writable, options, webWorker, scripts }));
6377
+ codec = await new Promise(resolve => pendingRequests.push({ resolve, stream, workerOptions }));
6361
6378
  }
6362
6379
  }
6363
6380
  const { signal } = streamOptions;
@@ -6374,8 +6391,8 @@
6374
6391
 
6375
6392
  function onTaskFinished(workerData) {
6376
6393
  if (pendingRequests.length) {
6377
- const [{ resolve, codecConstructor, readable, writable, options, webWorker, scripts }] = pendingRequests.splice(0, 1);
6378
- resolve(getWorker(workerData, codecConstructor, readable, writable, options, config, streamOptions, onTaskFinished, webWorker, scripts));
6394
+ const [{ resolve, stream, workerOptions }] = pendingRequests.splice(0, 1);
6395
+ resolve(getWorker(workerData, stream, workerOptions, onTaskFinished));
6379
6396
  } else if (workerData.worker) {
6380
6397
  clearTerminateTimeout(workerData);
6381
6398
  if (Number.isFinite(config.terminateWorkerTimeout) && config.terminateWorkerTimeout >= 0) {
@@ -6461,7 +6478,7 @@
6461
6478
 
6462
6479
  class Reader extends Stream {
6463
6480
 
6464
- getStream({ offset, size, chunkSize } = { offset: 0, chunkSize: DEFAULT_CHUNK_SIZE }) {
6481
+ getReadable({ offset, size, chunkSize } = { offset: 0, chunkSize: DEFAULT_CHUNK_SIZE }) {
6465
6482
  const reader = this;
6466
6483
  return new ReadableStream({
6467
6484
  start() {
@@ -6482,7 +6499,7 @@
6482
6499
 
6483
6500
  class WriterStream extends Stream {
6484
6501
 
6485
- getStream() {
6502
+ get writable() {
6486
6503
  const writer = this;
6487
6504
  return new WritableStream({
6488
6505
  write(chunk) {
@@ -6633,9 +6650,10 @@
6633
6650
 
6634
6651
  constructor(contentType) {
6635
6652
  super();
6636
- this.contentType = contentType;
6637
- this.arrayBuffersMaxlength = 8;
6638
- initArrayBuffers(this);
6653
+ const writer = this;
6654
+ writer.contentType = contentType;
6655
+ writer.arrayBuffersMaxlength = 8;
6656
+ initArrayBuffers(writer);
6639
6657
  }
6640
6658
 
6641
6659
  writeUint8Array(array) {
@@ -6689,7 +6707,7 @@
6689
6707
  this.initialized = true;
6690
6708
  }
6691
6709
 
6692
- getStream() {
6710
+ getReadable() {
6693
6711
  return this.readableStream;
6694
6712
  }
6695
6713
  }
@@ -6698,8 +6716,11 @@
6698
6716
 
6699
6717
  constructor(writable) {
6700
6718
  super();
6701
- const writer = this;
6702
- writer.writable = writable;
6719
+ Object.defineProperty(this, "writable", {
6720
+ get() {
6721
+ return writable;
6722
+ }
6723
+ });
6703
6724
  }
6704
6725
 
6705
6726
  async writeUint8Array(array) {
@@ -6709,10 +6730,6 @@
6709
6730
  writer.releaseLock();
6710
6731
  }
6711
6732
 
6712
- getStream() {
6713
- return this.writable;
6714
- }
6715
-
6716
6733
  async getData() {
6717
6734
  await this.writable.getWriter().close();
6718
6735
  return this.writable;
@@ -6728,11 +6745,11 @@
6728
6745
  reader.preventHeadRequest = options.preventHeadRequest;
6729
6746
  reader.useRangeHeader = options.useRangeHeader;
6730
6747
  reader.forceRangeRequests = options.forceRangeRequests;
6731
- reader.options = Object.assign({}, options);
6732
- delete reader.options.preventHeadRequest;
6733
- delete reader.options.useRangeHeader;
6734
- delete reader.options.forceRangeRequests;
6735
- delete reader.options.useXHR;
6748
+ reader.options = options = Object.assign({}, options);
6749
+ delete options.preventHeadRequest;
6750
+ delete options.useRangeHeader;
6751
+ delete options.forceRangeRequests;
6752
+ delete options.useXHR;
6736
6753
  }
6737
6754
 
6738
6755
  async init() {
@@ -6900,12 +6917,9 @@
6900
6917
 
6901
6918
  constructor(url, options = {}) {
6902
6919
  super();
6903
- this.url = url;
6904
- if (options.useXHR) {
6905
- this.reader = new XHRReader(url, options);
6906
- } else {
6907
- this.reader = new FetchReader(url, options);
6908
- }
6920
+ const reader = this;
6921
+ reader.url = url;
6922
+ reader.reader = options.useXHR ? new XHRReader(url, options) : new FetchReader(url, options);
6909
6923
  }
6910
6924
 
6911
6925
  set size(value) {
@@ -7228,7 +7242,7 @@
7228
7242
 
7229
7243
  async* getEntriesGenerator(options = {}) {
7230
7244
  const zipReader = this;
7231
- const reader = zipReader.reader;
7245
+ const { reader, config } = zipReader;
7232
7246
  if (!reader.initialized) {
7233
7247
  await reader.init();
7234
7248
  }
@@ -7288,7 +7302,7 @@
7288
7302
  throw new Error(ERR_BAD_FORMAT);
7289
7303
  }
7290
7304
  for (let indexFile = 0; indexFile < filesLength; indexFile++) {
7291
- const fileEntry = new ZipEntry(reader, zipReader.config, zipReader.options);
7305
+ const fileEntry = new ZipEntry(reader, config, zipReader.options);
7292
7306
  if (getUint32(directoryView, offset) != CENTRAL_FILE_HEADER_SIGNATURE) {
7293
7307
  throw new Error(ERR_CENTRAL_DIRECTORY_NOT_FOUND);
7294
7308
  }
@@ -7333,7 +7347,7 @@
7333
7347
  offset = endOffset;
7334
7348
  if (options.onprogress) {
7335
7349
  try {
7336
- options.onprogress(indexFile + 1, filesLength, new Entry(fileEntry));
7350
+ await options.onprogress(indexFile + 1, filesLength, new Entry(fileEntry));
7337
7351
  } catch (_error) {
7338
7352
  // ignored
7339
7353
  }
@@ -7417,25 +7431,32 @@
7417
7431
  }
7418
7432
  const dataOffset = offset + 30 + localDirectory.filenameLength + localDirectory.extraFieldLength;
7419
7433
  const size = () => compressedSize;
7420
- const readable = reader.getStream({ offset: dataOffset, size, chunkSize: getChunkSize(config) });
7421
- const writable = writer.getStream();
7434
+ const readable = reader.getReadable({ offset: dataOffset, size, chunkSize: getChunkSize(config) });
7435
+ const { writable } = writer;
7422
7436
  const signal = getOptionValue$1(zipEntry, options, "signal");
7423
7437
  if (!writer.initialized) {
7424
7438
  await writer.init();
7425
7439
  }
7426
- await runCodec(config.Inflate, readable, writable, {
7427
- codecType: CODEC_INFLATE,
7428
- password,
7429
- zipCrypto,
7430
- encryptionStrength: extraFieldAES && extraFieldAES.strength,
7431
- signed: getOptionValue$1(zipEntry, options, "checkSignature"),
7432
- passwordVerification: zipCrypto && (bitFlag.dataDescriptor ? ((rawLastModDate >>> 8) & 0xFF) : ((signature >>> 24) & 0xFF)),
7433
- signature,
7434
- compressed: compressionMethod != 0,
7435
- encrypted,
7436
- useWebWorkers: getOptionValue$1(zipEntry, options, "useWebWorkers"),
7437
- useCompressionStream: getOptionValue$1(zipEntry, options, "useCompressionStream")
7438
- }, config, { signal, onprogress: options.onprogress, size });
7440
+ const { onstart, onprogress, onend } = options;
7441
+ const workerOptions = {
7442
+ options: {
7443
+ codecType: CODEC_INFLATE,
7444
+ password,
7445
+ zipCrypto,
7446
+ encryptionStrength: extraFieldAES && extraFieldAES.strength,
7447
+ signed: getOptionValue$1(zipEntry, options, "checkSignature"),
7448
+ passwordVerification: zipCrypto && (bitFlag.dataDescriptor ? ((rawLastModDate >>> 8) & 0xFF) : ((signature >>> 24) & 0xFF)),
7449
+ signature,
7450
+ compressed: compressionMethod != 0,
7451
+ encrypted,
7452
+ useWebWorkers: getOptionValue$1(zipEntry, options, "useWebWorkers"),
7453
+ useCompressionStream: getOptionValue$1(zipEntry, options, "useCompressionStream")
7454
+ },
7455
+ config,
7456
+ streamOptions: { signal, size, onstart, onprogress, onend },
7457
+ codecConstructor: config.Inflate
7458
+ };
7459
+ await runWorker({ readable, writable }, workerOptions);
7439
7460
  return writer.getData();
7440
7461
  }
7441
7462
  }
@@ -7460,7 +7481,7 @@
7460
7481
  }
7461
7482
 
7462
7483
  async function readCommonFooter(fileEntry, directory, dataView, offset) {
7463
- const rawExtraField = directory.rawExtraField;
7484
+ const { rawExtraField } = directory;
7464
7485
  const extraField = directory.extraField = new Map();
7465
7486
  const rawExtraFieldView = getDataView$1(new Uint8Array(rawExtraField));
7466
7487
  let offsetExtraField = 0;
@@ -7826,7 +7847,7 @@
7826
7847
  throw new Error(ERR_INVALID_ENCRYPTION_STRENGTH);
7827
7848
  }
7828
7849
  let rawExtraField = new Uint8Array(0);
7829
- const extraField = options.extraField;
7850
+ const { extraField } = options;
7830
7851
  if (extraField) {
7831
7852
  let extraFieldSize = 0;
7832
7853
  let offset = 0;
@@ -7937,11 +7958,10 @@
7937
7958
  try {
7938
7959
  let lockPreviousFileEntry;
7939
7960
  let fileWriter;
7940
- let lockCurrentFileEntry;
7941
7961
  if (options.keepOrder) {
7942
7962
  lockPreviousFileEntry = previousFileEntry && previousFileEntry.lock;
7943
7963
  }
7944
- fileEntry.lock = lockCurrentFileEntry = new Promise(resolve => resolveLockCurrentFileEntry = resolve);
7964
+ fileEntry.lock = new Promise(resolve => resolveLockCurrentFileEntry = resolve);
7945
7965
  if (options.bufferedWrite || zipWriter.lockWrite || !options.dataDescriptor) {
7946
7966
  fileWriter = new BlobWriter();
7947
7967
  fileWriter.init();
@@ -7953,8 +7973,7 @@
7953
7973
  }
7954
7974
  fileWriter = writer;
7955
7975
  }
7956
- fileEntry = await createFileEntry(reader, fileWriter.getStream(), zipWriter.config, options);
7957
- fileEntry.lock = lockCurrentFileEntry;
7976
+ fileEntry = await createFileEntry(reader, fileWriter.writable, zipWriter.config, options);
7958
7977
  files.set(name, fileEntry);
7959
7978
  fileEntry.filename = name;
7960
7979
  if (bufferedWrite) {
@@ -7969,7 +7988,7 @@
7969
7988
  }
7970
7989
  } while (pendingFileEntry && pendingFileEntry.lock);
7971
7990
  fileEntry.writingBufferedData = true;
7972
- const writable = writer.getStream();
7991
+ const { writable } = writer;
7973
7992
  if (!options.dataDescriptor) {
7974
7993
  const headerLength = 26;
7975
7994
  const arrayBuffer = await sliceAsArrayBuffer(blob, 0, headerLength);
@@ -8033,7 +8052,9 @@
8033
8052
  rawComment,
8034
8053
  rawExtraField,
8035
8054
  useWebWorkers,
8055
+ onstart,
8036
8056
  onprogress,
8057
+ onend,
8037
8058
  signal,
8038
8059
  encryptionStrength,
8039
8060
  extendedTimestamp,
@@ -8166,20 +8187,26 @@
8166
8187
  await writeUint8Array(writable, localHeaderArray);
8167
8188
  fileEntry.dataWritten = true;
8168
8189
  const size = () => reader.size;
8169
- const readable = reader.getStream({ offset: 0, size, chunkSize: getChunkSize(config) });
8170
- result = await runCodec(config.Deflate, readable, writable, {
8171
- codecType: CODEC_DEFLATE,
8172
- level,
8173
- password,
8174
- encryptionStrength,
8175
- zipCrypto: encrypted && zipCrypto,
8176
- passwordVerification: encrypted && zipCrypto && (rawLastModDate >> 8) & 0xFF,
8177
- signed: true,
8178
- compressed,
8179
- encrypted,
8180
- useWebWorkers,
8181
- useCompressionStream
8182
- }, config, { signal, onprogress, size });
8190
+ const readable = reader.getReadable({ offset: 0, size, chunkSize: getChunkSize(config) });
8191
+ const workerOptions = {
8192
+ options: {
8193
+ codecType: CODEC_DEFLATE,
8194
+ level,
8195
+ password,
8196
+ encryptionStrength,
8197
+ zipCrypto: encrypted && zipCrypto,
8198
+ passwordVerification: encrypted && zipCrypto && (rawLastModDate >> 8) & 0xFF,
8199
+ signed: true,
8200
+ compressed,
8201
+ encrypted,
8202
+ useWebWorkers,
8203
+ useCompressionStream
8204
+ },
8205
+ config,
8206
+ streamOptions: { signal, size, onstart, onprogress, onend },
8207
+ codecConstructor: config.Deflate
8208
+ };
8209
+ result = await runWorker({ readable, writable }, workerOptions);
8183
8210
  uncompressedSize = fileEntry.uncompressedSize = reader.size;
8184
8211
  compressedSize = result.length;
8185
8212
  } else {
@@ -8197,7 +8224,7 @@
8197
8224
  }
8198
8225
  }
8199
8226
  if (reader) {
8200
- const signature = result.signature;
8227
+ const { signature } = result;
8201
8228
  if ((!encrypted || zipCrypto) && signature !== undefined) {
8202
8229
  setUint32(headerView, 10, signature);
8203
8230
  fileEntry.signature = signature;
@@ -8322,7 +8349,7 @@
8322
8349
  offset += 46 + rawFilename.length + extraFieldLength + rawComment.length;
8323
8350
  if (options.onprogress) {
8324
8351
  try {
8325
- options.onprogress(indexFileEntry + 1, files.size, new Entry(fileEntry));
8352
+ await options.onprogress(indexFileEntry + 1, files.size, new Entry(fileEntry));
8326
8353
  } catch (_error) {
8327
8354
  // ignored
8328
8355
  }
@@ -8350,7 +8377,7 @@
8350
8377
  setUint16(directoryView, offset + 10, filesLength);
8351
8378
  setUint32(directoryView, offset + 12, directoryDataLength);
8352
8379
  setUint32(directoryView, offset + 16, directoryOffset);
8353
- const writable = zipWriter.writer.getStream();
8380
+ const { writable } = zipWriter.writer;
8354
8381
  await writeUint8Array(writable, directoryArray);
8355
8382
  if (comment && comment.length) {
8356
8383
  await writeUint8Array(writable, comment);