@zip.js/zip.js 2.8.39 → 2.8.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/README.md +37 -0
  2. package/deno.json +6 -2
  3. package/dist/README.md +10 -1
  4. package/dist/zip-core-external.js +8180 -0
  5. package/dist/zip-core-external.min.js +1 -0
  6. package/dist/zip-core.js +168 -30
  7. package/dist/zip-core.min.js +1 -1
  8. package/dist/zip-fs-core-external.js +9196 -0
  9. package/dist/zip-fs-core-external.min.js +1 -0
  10. package/dist/zip-fs-core.js +168 -30
  11. package/dist/zip-fs-core.min.js +1 -1
  12. package/dist/zip-fs-external.js +10833 -0
  13. package/dist/zip-fs-external.min.js +1 -0
  14. package/dist/zip-fs-native.js +170 -32
  15. package/dist/zip-fs-native.min.js +1 -1
  16. package/dist/zip-fs.js +244 -51
  17. package/dist/zip-fs.min.js +1 -1
  18. package/dist/zip-legacy.js +170 -32
  19. package/dist/zip-legacy.min.js +1 -1
  20. package/dist/zip-native.js +170 -32
  21. package/dist/zip-native.min.js +1 -1
  22. package/dist/zip-web-worker-native.js +1 -1
  23. package/dist/zip-web-worker.js +1 -1
  24. package/dist/zip.js +244 -51
  25. package/dist/zip.min.js +1 -1
  26. package/index-native.cjs +170 -32
  27. package/index-native.min.js +1 -1
  28. package/index.cjs +244 -51
  29. package/index.d.cts +11 -2
  30. package/index.d.ts +11 -2
  31. package/index.min.js +1 -1
  32. package/lib/core/codec-registry.js +1 -1
  33. package/lib/core/codec-worker.js +4 -1
  34. package/lib/core/external-assets.js +42 -0
  35. package/lib/core/io.js +27 -11
  36. package/lib/core/streams/zip-entry-stream.js +57 -7
  37. package/lib/core/streams/zlib-wasm/zlib-streams-loader.js +27 -17
  38. package/lib/core/streams/zlib-wasm/zlib-streams.js +14 -1
  39. package/lib/core/util/compatible-streams.js +72 -0
  40. package/lib/core/web-worker-base.js +6 -2
  41. package/lib/core/web-worker-inline-native.js +1 -1
  42. package/lib/core/web-worker-inline-wasm.js +1 -1
  43. package/lib/core/zip-reader.js +12 -8
  44. package/lib/core/zip-writer.js +4 -2
  45. package/lib/zip-core-external.js +34 -0
  46. package/lib/zip-fs-core-external.js +30 -0
  47. package/lib/zip-fs-external.js +30 -0
  48. package/lib/zip-mime-types.js +29 -0
  49. package/lib/zip-module-wasm-base.js +64 -0
  50. package/lib/zip-module-wasm.js +1 -31
  51. package/package.json +65 -2
  52. package/worker-message-property-names.js +1 -1
@@ -1 +1 @@
1
- ((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,function(e){"use strict";const{Array:t,Object:r,String:n,Number:i,BigInt:o,Math:s,Date:a,Map:c,Set:l,Response:f,URL:u,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:h,DataView:m,Blob:y,Promise:b,TextEncoder:g,TextDecoder:x,document:z,crypto:S,btoa:v,TransformStream:k,ReadableStream:F,WritableStream:D,CompressionStream:R,DecompressionStream:C,navigator:T,Worker:U}="undefined"!=typeof globalThis?globalThis:this||self;var N=void 0!==z?z.currentScript:null;const E=4294967295,M=65535,W=255,P=67324752,V=134695760,I=V,O=33639248,j=101010256,L=101075792,A=117853008,q=22,X=20,K=21589,Y=2048,H=16384,Z=2048,Q=1024,G="/",J=30,B=new a(2107,11,31,23,59,58),_=new a(1980,0,1),$=void 0,ee=1/0,te="undefined",re="function",ne=new w;let ie=2;try{typeof T!=te&&T.hardwareConcurrency&&(ie=T.hardwareConcurrency)}catch{}const oe={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:ie,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof R!=te&&R,DecompressionStream:typeof C!=te&&C},se=["baseURI","wasmURI","workerURI","chunkSize","maxWorkers","terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout","useCompressionStream","useWebWorkers","transferStreams","CompressionStream","DecompressionStream","CompressionStreamZlib","DecompressionStreamZlib"],ae={...oe};function ce(){return ae}function le(e){return s.max(e.chunkSize,64)}function fe(e){for(const t of se){const r=e[t];r!==$&&(ae[t]=r)}}function ue(e){for(const t of se){const r=e[t];r!==$&&(oe[t]=r)}fe(e)}const de=[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],we=[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],pe=[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],he=[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],me=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],ye=new w(288);ye.fill(8,0,144),ye.fill(9,144,256),ye.fill(7,256,280),ye.fill(8,280,288);const be=new w(30).fill(5);function ge(e){const t=new p(16);for(const r of e)t[r]++;t[0]=0;const r=new p(17);for(let e=1;15>=e;e++)r[e+1]=r[e]+t[e];const n=new p(e.length);for(let t=0;t<e.length;t++)e[t]&&(n[r[e[t]]++]=t);return{o:t,symbols:n}}const xe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ze="Invalid codec definition",Se="Reserved compression method",ve="Invalid codec module",ke="string",Fe=[0,8,9,99],De=new c,Re=new c;function Ce(e){return De.get(e)}function Te(e){return Re.get(e)}function Ue(e,t){const{CompressionStream:r,DecompressionStream:n}=t;if(typeof r!=re&&typeof n!=re)throw new d(ve);Re.set(e,{CompressionStream:r,DecompressionStream:n})}const Ne=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?t>>>1^3988292384:t>>>1;Ne[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){const r=Ne[t-1][e];Ne[t][e]=r>>>8^Ne[0][255&r]}const[Ee,Me,We,Pe,Ve,Ie,Oe,je]=Ne;class Le{constructor(e){this.l=e||-1}append(e){let t=0|this.l;const r=0|e.length;let n=0;if(r>=8&&e.buffer){const i=new m(e.buffer,e.byteOffset,r),o=r-8;for(;o>=n;n+=8){const e=t^i.getInt32(n,!0),r=i.getInt32(n+4,!0);t=je[255&e]^Oe[e>>>8&255]^Ie[e>>>16&255]^Ve[e>>>24&255]^Pe[255&r]^We[r>>>8&255]^Me[r>>>16&255]^Ee[r>>>24&255]}}for(;r>n;n++)t=t>>>8^Ee[255&(t^e[n])];this.l=t}get(){return~this.l}}class Ae extends k{constructor(){let e;const t=new Le;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new w(4);new m(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}function qe(e){if(typeof g==te){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let r=0;r<t.length;r++)t[r]=e.charCodeAt(r);return t}return(new g).encode(e)}function Xe(e,t){const r=new w(e.length+t.length);return r.set(e),r.set(t,e.length),r}function Ke(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function Ye(e){return new m(e.buffer,e.byteOffset,e.byteLength)}const He={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const r=e[e.length-1],n=He.h(r);return 32===n?e.concat(t):He.m(t,n,0|r,e.slice(0,e.length-1))},S(e){const t=e.length;if(0===t)return 0;const r=e[t-1];return 32*(t-1)+He.h(r)},v(e,t){if(32*e.length<t)return e;const r=(e=e.slice(0,s.ceil(t/32))).length;return t&=31,r>0&&t&&(e[r-1]=He.F(t,e[r-1]&2147483648>>t-1,1)),e},F:(e,t,r)=>32===e?t:(r?0|t:t<<32-e)+1099511627776*e,h:e=>s.round(e/1099511627776)||32,m(e,t,r,n){for(void 0===n&&(n=[]);t>=32;t-=32)n.push(r),r=0;if(0===t)return n.concat(e);for(let i=0;i<e.length;i++)n.push(r|e[i]>>>t),r=e[i]<<32-t;const i=e.length?e[e.length-1]:0,o=He.h(i);return n.push(He.F(t+o&31,t+o>32?r:n.pop(),1)),n}},Ze={bytes:{D(e){const t=He.S(e)/8,r=new w(t);let n;for(let i=0;t>i;i++)3&i||(n=e[i/4]),r[i]=n>>>24,n<<=8;return r},R(e){const t=[];let r,n=0;for(r=0;r<e.length;r++)n=n<<8|e[r],3&~r||(t.push(n),n=0);return 3&r&&t.push(He.F(8*(3&r),n)),t}}},Qe=class{constructor(e){const t=this;t.blockSize=512,t.C=[1732584193,4023233417,2562383102,271733878,3285377520],t.T=[1518500249,1859775393,2400959708,3395469782],e?(t.U=e.U.slice(0),t.N=e.N.slice(0),t.M=e.M):t.reset()}reset(){const e=this;return e.U=e.C.slice(0),e.N=[],e.M=0,e}update(e){const t=this;"string"==typeof e&&(e=Ze.W.R(e));const r=t.N=He.concat(t.N,e),n=t.M,i=t.M=n+He.S(e);if(i>9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const o=new h(r);let s=0;for(let e=t.blockSize+n-(t.blockSize+n&t.blockSize-1);i>=e;e+=t.blockSize)t.P(o.subarray(16*s,16*(s+1))),s+=1;return r.splice(0,16*s),t}V(){const e=this;let t=e.N;const r=e.U;t=He.concat(t,[He.F(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e.M/4294967296)),t.push(0|e.M);t.length;)e.P(t.splice(0,16));return e.reset(),r}I(e,t,r,n){return e>19?e>39?e>59?e>79?void 0:t^r^n:t&r|t&n|r&n:t^r^n:t&r|~t&n}O(e,t){return t<<e|t>>>32-e}P(e){const r=this,n=r.U,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let o=n[0],a=n[1],c=n[2],l=n[3],f=n[4];for(let e=0;79>=e;e++){16>e||(i[e]=r.O(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=r.O(5,o)+r.I(e,a,c,l)+f+i[e]+r.T[s.floor(e/20)]|0;f=l,l=c,c=r.O(30,a),a=o,o=t}n[0]=n[0]+o|0,n[1]=n[1]+a|0,n[2]=n[2]+c|0,n[3]=n[3]+l|0,n[4]=n[4]+f|0}},Ge={importKey:e=>new Ge.j(Ze.bytes.R(e)),L(e,t,r,n){if(r=r||1e4,0>n||0>r)throw new d("invalid params to pbkdf2");const i=1+(n>>5)<<2;let o,s,a,c,l;const f=new ArrayBuffer(i),u=new m(f);let w=0;const p=He;for(t=Ze.bytes.R(t),l=1;(i||1)>w;l++){for(o=s=e.encrypt(p.concat(t,[l])),a=1;r>a;a++)for(s=e.encrypt(s),c=0;c<s.length;c++)o[c]^=s[c];for(a=0;(i||1)>w&&a<o.length;a++)u.setInt32(w,o[a]),w+=4}return f.slice(0,n/8)},j:class{constructor(e){const t=this,r=t.A=Qe,n=[[],[]];t.X=[new r,new r];const i=t.X[0].blockSize/32;e.length>i&&(e=(new r).update(e).V());for(let t=0;i>t;t++)n[0][t]=909522486^e[t],n[1][t]=1549556828^e[t];t.X[0].update(n[0]),t.X[1].update(n[1]),t.K=new r(t.X[0])}reset(){const e=this;e.K=new e.A(e.X[0]),e.Y=!1}update(e){this.Y=!0,this.K.update(e)}digest(){const e=this,t=e.K.V(),r=new e.A(e.X[1]).update(t).V();return e.reset(),r}encrypt(e){if(this.Y)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Je=typeof S!=te&&typeof S.getRandomValues==re,Be="Invalid password",_e="Invalid signature",$e="zipjs-abort-check-password";function et(e){if(Je)return S.getRandomValues(e);throw new d("Crypto API not supported")}const tt=16,rt={name:"PBKDF2"},nt=r.assign({hash:{name:"HMAC"}},rt),it=r.assign({iterations:1e3,hash:{name:"SHA-1"}},rt),ot=["deriveBits"],st=[8,12,16],at=[16,24,32],ct=10,lt=[0,0,0,0],ft=typeof S!=te,ut=ft&&S.subtle,dt=ft&&typeof ut!=te,wt=Ze.bytes,pt=class{constructor(e){const t=this;t.H=[[[],[],[],[],[]],[[],[],[],[],[]]],t.H[0][0][0]||t.Z();const r=t.H[0][4],n=t.H[1],i=e.length;let o,s,a,c=1;if(4!==i&&6!==i&&8!==i)throw new d("invalid aes key size");for(t.T=[s=e.slice(0),a=[]],o=i;4*i+28>o;o++){let e=s[o-1];(o%i===0||8===i&&o%i===4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],o%i===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),s[o]=s[o-i]^e}for(let e=0;o;e++,o--){const t=s[3&e?o:o-4];a[e]=4>=o||4>e?t:n[0][r[t>>>24]]^n[1][r[t>>16&255]]^n[2][r[t>>8&255]]^n[3][r[255&t]]}}encrypt(e){return this.G(e,0)}decrypt(e){return this.G(e,1)}Z(){const e=this.H[0],t=this.H[1],r=e[4],n=t[4],i=[],o=[];let s,a,c,l;for(let e=0;256>e;e++)o[(i[e]=e<<1^283*(e>>7))^e]=e;for(let f=s=0;!r[f];f^=a||1,s=o[s]||1){let o=s^s<<1^s<<2^s<<3^s<<4;o=o>>8^255&o^99,r[f]=o,n[o]=f,l=i[c=i[a=i[f]]];let u=16843009*l^65537*c^257*a^16843008*f,d=257*i[o]^16843008*o;for(let r=0;4>r;r++)e[r][f]=d=d<<24^d>>>8,t[r][o]=u=u<<24^u>>>8}for(let r=0;5>r;r++)e[r]=e[r].slice(0),t[r]=t[r].slice(0)}G(e,t){if(4!==e.length)throw new d("invalid aes block size");const r=this.T[t],n=r.length/4-2,i=[0,0,0,0],o=this.H[t],s=o[0],a=o[1],c=o[2],l=o[3],f=o[4];let u,w,p,h=e[0]^r[0],m=e[t?3:1]^r[1],y=e[2]^r[2],b=e[t?1:3]^r[3],g=4;for(let e=0;n>e;e++)u=s[h>>>24]^a[m>>16&255]^c[y>>8&255]^l[255&b]^r[g],w=s[m>>>24]^a[y>>16&255]^c[b>>8&255]^l[255&h]^r[g+1],p=s[y>>>24]^a[b>>16&255]^c[h>>8&255]^l[255&m]^r[g+2],b=s[b>>>24]^a[h>>16&255]^c[m>>8&255]^l[255&y]^r[g+3],g+=4,h=u,m=w,y=p;for(let e=0;4>e;e++)i[t?3&-e:e]=f[h>>>24]<<24^f[m>>16&255]<<16^f[y>>8&255]<<8^f[255&b]^r[g++],u=h,h=m,m=y,y=b,b=u;return i}},ht=class{constructor(e,t){this.J=e,this.B=t,this._=t}reset(){this._=this.B}update(e){return this.$(this.J,e,this._)}ee(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,r=e>>8&255,n=255&e;255===t?(t=0,255===r?(r=0,255===n?n=0:++n):++r):++t,e=0,e+=t<<16,e+=r<<8,e+=n}return e}te(e){0===(e[0]=this.ee(e[0]))&&(e[1]=this.ee(e[1]))}$(e,t,r){let n;if(!(n=t.length))return[];const i=He.S(t);for(let i=0;n>i;i+=4){this.te(r);const n=e.encrypt(r);t[i]^=n[0],t[i+1]^=n[1],t[i+2]^=n[2],t[i+3]^=n[3]}return He.v(t,i)}},mt=Ge.j;let yt=ft&&dt&&typeof ut.importKey==re,bt=ft&&dt&&typeof ut.deriveBits==re;class gt extends k{constructor({password:e,rawPassword:t,encryptionStrength:r,checkPasswordOnly:n}){super({start(){zt(this,e,t,r)},async transform(e,t){const r=this,{password:i,strength:o,re:s,ready:a}=r;i?(await(async(e,t,r,n)=>{const i=await vt(e,t,r,Ft(n,0,st[t])),o=Ft(n,st[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new d(Be)})(r,o,i,Ft(e,0,st[o]+2)),e=Ft(e,st[o]+2),n?t.error(new d($e)):s()):await a;const c=new w(e.length-ct-(e.length-ct)%tt);t.enqueue(St(r,e,c,0,ct,!0))},async flush(e){const{ne:t,ie:r,pending:n,ready:i}=this;if(r&&t){await i;const o=Ft(n,0,n.length-ct),s=Ft(n,n.length-ct);let a=ne;if(o.length){const e=Rt(wt,o);r.update(e);const n=t.update(e);a=Dt(wt,n)}const c=Ft(Dt(wt,r.digest()),0,ct);let l=n.length<ct?1:0;for(let e=0;ct>e;e++)l|=c[e]^s[e];if(l)throw new d(_e);e.enqueue(a)}}})}}class xt extends k{constructor({password:e,rawPassword:t,encryptionStrength:r}){let n;super({start(){zt(this,e,t,r)},async transform(e,t){const r=this,{password:n,strength:i,re:o,ready:s}=r;let a=ne;n?(a=await(async(e,t,r)=>{const n=et(new w(st[t]));return Xe(n,await vt(e,t,r,n))})(r,i,n),o()):await s;const c=new w(a.length+e.length-e.length%tt);c.set(a,0),t.enqueue(St(r,e,c,a.length,0))},async flush(e){const{ne:t,ie:r,pending:i,ready:o}=this;if(r&&t){await o;let s=ne;if(i.length){const e=t.update(Rt(wt,i));r.update(e),s=Dt(wt,e)}n.signature=Dt(wt,r.digest()).slice(0,ct),e.enqueue(Xe(s,n.signature))}}}),n=this}}function zt(e,t,n,i){r.assign(e,{ready:new b(t=>e.re=t),password:kt(t,n),strength:i-1,pending:ne})}function St(e,t,r,n,i,o){const{ne:s,ie:a,pending:c}=e;c.length&&(t=Xe(c,t));const l=t.length-i;let f;for(r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new w(t)).set(r,0)}return e})(r,n+(l-l%tt)),f=0;l-tt>=f;f+=tt){const e=Rt(wt,Ft(t,f,f+tt));o&&a.update(e);const i=s.update(e);o||a.update(i),r.set(Dt(wt,i),f+n)}return e.pending=Ft(t,f),r}async function vt(e,n,i,o){e.password=null;const s=await(async(e,t,r,n,i)=>{if(!yt)return Ge.importKey(t);try{return await ut.importKey("raw",t,r,!1,i)}catch{return yt=!1,Ge.importKey(t)}})(0,i,nt,0,ot),a=await(async(e,t,r)=>{if(!bt)return Ge.L(t,e.salt,it.iterations,r);try{return await ut.deriveBits(e,t,r)}catch{return bt=!1,Ge.L(t,e.salt,it.iterations,r)}})(r.assign({salt:o},it),s,8*(2*at[n]+2)),c=new w(a),l=Rt(wt,Ft(c,0,at[n])),f=Rt(wt,Ft(c,at[n],2*at[n])),u=Ft(c,2*at[n]);return r.assign(e,{keys:{key:l,oe:f,passwordVerification:u},ne:new ht(new pt(l),t.from(lt)),ie:new mt(f)}),u}function kt(e,t){return t===$?qe(e):t}function Ft(e,t,r){return e.subarray(t,r)}function Dt(e,t){return e.D(t)}function Rt(e,t){return e.R(t)}class Ct extends k{constructor({password:e,rawPassword:t,passwordVerification:r,checkPasswordOnly:n}){super({start(){Ut(this,e,t,r)},transform(e,t){const r=this;if(r.password||r.rawPassword){const t=Nt(r,e.subarray(0,12));if(r.password=r.rawPassword=null,0!=(t[11]^r.passwordVerification))throw new d(Be);e=e.subarray(12)}n?t.error(new d($e)):t.enqueue(Nt(r,e))}})}}class Tt extends k{constructor({password:e,rawPassword:t,passwordVerification:r}){super({start(){Ut(this,e,t,r)},transform(e,t){const r=this;let n,i;if(r.password||r.rawPassword){r.password=r.rawPassword=null;const t=et(new w(12));t[11]=r.passwordVerification,n=new w(e.length+t.length),n.set(Et(r,t),0),i=12}else n=new w(e.length),i=0;n.set(Et(r,e),i),t.enqueue(n)}})}}function Ut(e,t,n,i){r.assign(e,{password:t,rawPassword:n,passwordVerification:i}),((e,t,n)=>{const i=[305419896,591751049,878082192];if(r.assign(e,{keys:i,se:new Le(i[0]),ae:new Le(i[2])}),n)for(let t=0;t<n.length;t++)Mt(e,n[t]);else for(let r=0;r<t.length;r++)Mt(e,t.charCodeAt(r))})(e,t,n)}function Nt(e,t){const r=new w(t.length);for(let n=0;n<t.length;n++)r[n]=Wt(e)^t[n],Mt(e,r[n]);return r}function Et(e,t){const r=new w(t.length);for(let n=0;n<t.length;n++)r[n]=Wt(e)^t[n],Mt(e,t[n]);return r}function Mt(e,t){let[,r]=e.keys;e.se.append([t]);const n=~e.se.get();r=Vt(s.imul(Vt(r+Pt(n)),134775813)+1),e.ae.append([r>>>24]);const i=~e.ae.get();e.keys=[n,r,i]}function Wt(e){const t=2|e.keys[2];return Pt(s.imul(t,1^t)>>>8)}function Pt(e){return 255&e}function Vt(e){return 4294967295&e}const It="Invalid uncompressed size",Ot="Invalid compressed data",jt="deflate-raw";class Lt extends k{constructor(e,{chunkSize:t,CompressionStreamZlib:r,CompressionStream:n}){super({});const{compressed:i,encrypted:o,useCompressionStream:s,zipCrypto:a,signed:c,level:l,deflate64:f,format:u}=e,d=this;let w,p,h,y=super.readable;const b=u&&Te(u),g=c&&i&&!f&&!b&&(!o||a)&&!(!s||!n);o&&!a||!c||g||(w=new Ae,y=Zt(y,w)),i&&(b?y=Qt(y,Yt(b.CompressionStream,u,{level:l,chunkSize:t})):g?(h=new At,y=Qt(y,new n("gzip")),y=Zt(y,h)):y=Ht(y,s,{level:l,chunkSize:t},n,r)),o&&(a?y=Zt(y,new Tt(e)):(p=new xt(e),y=Zt(y,p))),Kt(d,y,()=>{let e;o&&!a&&(e=p.signature),o&&!a||!c||(e=g?h.signature:new m(w.value.buffer).getUint32(0)),d.signature=e})}}class At extends k{constructor(){let e,t=10,r=new w(0);super({transform(e,n){if(t){const r=s.min(t,e.length);if(t-=r,!(e=e.subarray(r)).length)return}const i=r.length+e.length;if(8>=i)return void(r=Xe(r,e));const o=i-8,a=s.min(o,r.length);n.enqueue(Xe(r.subarray(0,a),e.subarray(0,o-a))),r=Xe(r.subarray(a),e.subarray(o-a))},flush(){const t=Ye(r);e.signature=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class qt extends k{constructor(e,{chunkSize:t,DecompressionStreamZlib:r,DecompressionStream:n}){super({});const{zipCrypto:i,encrypted:o,signed:s,signature:a,compressed:c,useCompressionStream:l,deflate64:f,format:u}=e;let w,p,h=super.readable;if(o&&(i?h=Zt(h,new Ct(e)):(p=new gt(e),h=Zt(h,p))),c){const e=u&&Te(u);h=e?Qt(h,Yt(e.DecompressionStream,u,{chunkSize:t})):Ht(h,l,{chunkSize:t,deflate64:f},n,r),h=(e=>{const t=e.getReader();return new F({async pull(e){let r;try{r=await t.read()}catch(e){if(e&&e.message)throw e;const t=new d(Ot);throw t.cause=e,t}const{value:n,done:i}=r;i?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})})(h)}o&&!i||!s||(w=new Ae,h=Zt(h,w)),Kt(this,h,()=>{if((!o||i)&&s){const e=new m(w.value.buffer);if(a!=e.getUint32(0,!1))throw new d(_e)}})}}const Xt=new c;function Kt(e,t,n){t=Zt(t,new k({flush:n})),r.defineProperty(e,"readable",{get:()=>t})}function Yt(e,t,r){if(!e)throw new d("Compression method not supported");return new e(t,r)}function Ht(e,t,r,n,i){const o=t&&n?n:i||n,s=r.deflate64?"deflate64-raw":jt;let a;try{a=new o(s,r)}catch(e){if(!t||!i||o==i)throw e;a=new i(s,r)}return Qt(e,a)}function Zt(e,t){return e.pipeThrough(t)}function Qt(e,t){const r=t.writable.getWriter(),n=e.getReader();return(async()=>{try{for(;;){await r.ready;const e=await n.read();if(e.done){await r.close();break}await r.write(e.value)}}catch(e){await(async(e,t)=>{try{await e.abort(t)}catch{}})(r,e),await(async(e,t)=>{try{await e.cancel(t)}catch{}})(n,e)}})(),t.readable}const Gt="data",Jt="deflate",Bt="inflate";class _t extends k{constructor(e,t){super({});const n=this,{codecType:i}=e;let o;i.startsWith(Jt)?o=Lt:i.startsWith(Bt)&&(o=qt),n.outputSize=0;let s=0;const a=new o(e,t),c=super.readable,l=new k({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){r.assign(n,{inputSize:s})}}),f=new k({transform(t,r){if(t&&t.length&&(r.enqueue(t),n.outputSize+=t.length,e.outputSize!==$&&n.outputSize>e.outputSize))throw new d(It)},flush(){const{signature:e}=a;r.assign(n,{signature:e,inputSize:s})}});r.defineProperty(n,"readable",{get:()=>c.pipeThrough(l).pipeThrough(a).pipeThrough(f)})}}class $t extends k{constructor(e){const t=[];let r=0;function n(){const n=new w(e);let i=0;for(;e>i;){const r=t[0],o=e-i;r.length>o?(n.set(r.subarray(0,o),i),t[0]=r.subarray(o),i+=o):(n.set(r,i),i+=r.length,t.shift())}return r-=e,n}i.isFinite(e)&&e>=1||(e=65536),super({transform(i,o){for(t.push(i),r+=i.length;r>e;)o.enqueue(n())},flush(e){r&&e.enqueue(((e,t)=>{const r=new w(t);let n=0;for(const t of e)r.set(t,n),n+=t.length;return r})(t,r))}})}}const er={type:"module"},tr="error";let rr,nr,ir,or,sr=!0;try{sr=typeof structuredClone==re&&structuredClone(new DOMException("","AbortError")).code!==$}catch{}class ar{constructor(e,{readable:t,writable:n},{options:i,config:o,ce:s,useWebWorkers:a,transferStreams:c,workerURI:l},f){const{signal:u}=s;return r.assign(e,{le:!0,fe:(e.fe||0)+1,readable:t.pipeThrough(new $t(le(o))).pipeThrough(new cr(s),{signal:u}),writable:n,options:r.assign({},i),workerURI:l,transferStreams:c,terminate:()=>new b(t=>{const{ue:r,le:n}=e;r?(n?e.de=t:(r.terminate(),t()),e.we=null):t()}),pe(){if(e.le){const{de:t}=e;t&&(e.de=null,e.he=!0,e.ue.terminate(),t()),e.le=!1,f(e)}}}),rr===$&&(rr=typeof U!=te),(a&&rr?ur:fr)(e,o)}}class cr extends k{constructor({onstart:e,onprogress:t,size:r,onend:n}){let i=0;super({async start(){e&&await lr(e,r)},async transform(e,n){i+=e.length,t&&await lr(t,i,r),n.enqueue(e)},async flush(){n&&await lr(n,i)}})}}async function lr(e,...t){try{await e(...t)}catch{}}function fr(e,t){return{run:()=>dr(e,t)}}function ur(e,t){const{baseURI:n,chunkSize:o,workerStartupTimeout:s}=t;let{wasmURI:a}=t;if(!e.we){let c;typeof a==re&&(a=a());try{c=pr(e.workerURI,n,e)}catch{return rr=!1,fr(e,t)}r.assign(e,{ue:c,me:!1,he:!1,we:{run:async()=>{try{return await(async(e,t)=>{let n,o;const s=new b((e,t)=>{n=e,o=t});r.assign(e,{reader:null,writer:null,ye:n,be:o,result:s});const{readable:a,options:c}=e,{writable:l,closed:f,ge:u}=(e=>{const t=new AbortController,{writable:r,readable:n}=new k,i=n.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return i.catch(()=>{}),{writable:r,closed:i,ge:()=>t.abort()}})(e.writable);let w;try{w=yr({type:"start",options:c,config:t,readable:a,writable:l},e)}catch(t){u();try{await f}catch{}throw e.pe(),t}w||r.assign(e,{reader:a.getReader(),writer:l.getWriter()});const{workerStartupTimeout:p}=t;e.me||!i.isFinite(p)||0>p||(e.xe=setTimeout(()=>(e=>{if(e.xe=null,e.me)return;const{be:t,writer:r}=e;if(wr(e),e.ue=null,t){const e=new d("Worker startup timeout");e.ze=!0,t(e),r&&r.releaseLock()}})(e),p));try{const e=await s;return await h(),await f,e}catch(e){await h(),u();try{await f}catch{}throw e}async function h(){if(!w&&!l.locked)try{await l.getWriter().close()}catch{}}})(e,{chunkSize:o,wasmURI:a,baseURI:n,workerStartupTimeout:s})}catch(r){if(r&&r.ze){rr=!1;const{reader:r}=e;return r&&r.releaseLock(),e.reader=null,e.writer=null,dr(e,t)}throw r}}}})}return e.we}async function dr({options:e,readable:t,writable:r,pe:n},i){let o;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(Jt),r=t?i.CompressionStreamZlib:i.DecompressionStreamZlib,n=t?i.CompressionStream:i.DecompressionStream;if(e.useCompressionStream){if(r&&r.Se&&!(e=>{if(!e)return!1;let t=Xt.get(e);if(t===$){try{new e(jt),t=!0}catch{t=!1}Xt.set(e,t)}return t})(n))try{await void 0}catch{}}else try{await void 0}catch{r&&!r.Se||(e.useCompressionStream=!0)}}o=new _t(e,i),await t.pipeThrough(o).pipeThrough(new $t(le(i))).pipeTo(r,{preventClose:!0,preventAbort:!0});const{signature:n,inputSize:s,outputSize:a}=o;return{signature:n,inputSize:s,outputSize:a}}catch(e){throw o&&(e.outputSize=o.outputSize),e}finally{n()}}function wr(e){const{ue:t}=e;if(t)try{t.terminate()}catch{}e.we=null}function pr(e,t,n,i,o=!0){let s,a,c;if(ir===$||nr!==e){const r=typeof e==re;a=r?e(o):e;const l=a.startsWith("data:"),f=a.startsWith("blob:");if(l||f){i===$&&(i=!1),i&&(c=er);try{s=new U(a,c)}catch(o){if(f)try{u.revokeObjectURL(a)}catch{}if(r&&f)return pr(e,t,n,i,!1);if(i)throw o;return pr(e,t,n,!0,!1)}}else{i===$&&(i=!0),i&&(c=er);try{a=new u(a,t)}catch{}try{s=new U(a,c)}catch(r){if(i)throw r;return pr(e,t,n,!1,o)}}nr=e,ir=a,or=c}else s=new U(ir,or);return s.addEventListener("message",e=>{n.me=!0,hr(n),(async({data:e},t)=>{const{type:n,value:i,messageId:o,result:s,error:a}=e,{reader:c,writer:l,ye:f,be:u,pe:p,fe:h}=t,m=()=>t.fe!=h;try{if(a){const{message:e,stack:t,code:n,name:i,outputSize:o}=a,s=new d(e);r.assign(s,{stack:t,code:n,name:i,outputSize:o}),y(s)}else{if("pull"==n){const{value:e,done:r}=await c.read();m()||yr({type:Gt,value:e,done:r,messageId:o},t)}n==Gt&&(await l.ready,await l.write(new w(i)),m()||yr({type:"ack",messageId:o},t)),"close"==n&&y(null,s)}}catch(a){m()||(wr(t),y(a))}function y(e,t){m()||(e?u(e):f(t),l&&l.releaseLock(),p())}})(e,n)}),s.addEventListener(tr,e=>mr(e,n)),s.addEventListener("messageerror",e=>mr(e,n)),s}function hr(e){const{xe:t}=e;t&&(clearTimeout(t),e.xe=null)}function mr(e,t){e.preventDefault&&e.preventDefault(),hr(t);const{me:n,be:i,writer:o,pe:s}=t;if(wr(t),n||(t.ue=null),i){let t=e.error||new d(e.message||tr);n||(t=r.assign(new d(t.message||tr),{ze:!0})),i(t),o&&o.releaseLock(),n&&s()}}function yr(e,{ue:t,writer:r,transferStreams:n,me:i}){try{const{value:r,readable:o,writable:s}=e,a=[];if(r&&(e.value=Ke(r),a.push(e.value.buffer)),n&&sr&&i?(o&&a.push(o),s&&a.push(s)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch{sr=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw r&&r.releaseLock(),e}}let br=[];const gr=[];let xr,zr,Sr=0;async function vr(e,t){const{options:r,config:n}=t,{transferStreams:o,useWebWorkers:s,useCompressionStream:a,compressed:c,signed:l,encrypted:f,format:d,codecURI:w}=r,{workerURI:p,maxWorkers:h}=n;d&&(w&&(r.codecURI=((e,t)=>{try{return new u(e,t).toString()}catch{return e}})(w,n.baseURI)),await(async(e,t)=>{!Re.has(e)&&t&&Ue(e,await(import(t)))})(d,r.codecURI)),t.transferStreams=o||o===$&&n.transferStreams;const m=!c&&!l&&!f,y=d===$||!!r.codecURI;return t.useWebWorkers=!m&&y&&(s||s===$&&n.useWebWorkers),t.workerURI=t.useWebWorkers&&p?p:$,r.useCompressionStream=a||a===$&&n.useCompressionStream,(await(async()=>{const r=br.find(e=>!e.le);if(r)return Cr(r),new ar(r,e,t,g);if(br.length<h){const r={ve:Sr};return Sr++,br.push(r),new ar(r,e,t,g)}return new b(r=>{gr.push({resolve:r,stream:e,ke:t}),zr=n.workerStarvationTimeout,kr()})})()).run();function g(e){if(Fr(),gr.length){const[{resolve:t,stream:r,ke:n}]=gr.splice(0,1);t(new ar(e,r,n,g)),kr()}else e.ue?(Cr(e),((e,t)=>{const{config:r}=t,{terminateWorkerTimeout:n}=r;i.isFinite(n)&&n>=0&&(e.he?e.he=!1:e.Fe=setTimeout(async()=>{br=br.filter(t=>t!=e);try{await e.terminate()}catch{}},n))})(e,t)):br=br.filter(t=>t!=e)}}function kr(){!xr&&gr.length&&i.isFinite(zr)&&zr>=0&&(xr=setTimeout(Dr,zr))}function Fr(){xr&&(clearTimeout(xr),xr=null)}function Dr(){if(xr=null,gr.length){const[{resolve:e,stream:t,ke:n}]=gr.splice(0,1),i=r.assign({},n,{useWebWorkers:!1,workerURI:$});e(new ar({},t,i,Rr)),kr()}}function Rr(){Fr(),kr()}function Cr(e){const{Fe:t}=e;t&&(clearTimeout(t),e.Fe=null)}const Tr="HTTP error ",Ur="HTTP Range not supported",Nr="HTTP resource changed",Er="Writer iterator completed too soon",Mr="Writer not initialized",Wr="Content-Range",Pr="Range",Vr="GET",Ir="bytes",Or=16777216,jr="writable",Lr=Symbol();class Ar{constructor(){this.size=0}init(){this.initialized=!0}}class qr extends Ar{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:r=le(ce())}={}){const n=this;let i=0;return new F({async pull(o){const a=t===$?r:s.min(r,t-i),c=await bn(n,e+i,a);o.enqueue(c),i+r>t||t===$&&!c.length&&a?o.close():i+=r}})}}class Xr extends Ar{constructor(){super();const e=this,t=new D({write(t){if(!e.initialized)throw new d(Mr);return e.writeUint8Array(Ke(t))}});r.defineProperty(e,jr,{get:()=>t})}writeUint8Array(){}}let Kr,Yr;class Hr extends qr{constructor(e){super(),r.assign(this,{blob:e,size:e.size}),Yr||(Yr=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,r=await e.read();for(;!r.done;)t+=r.value.length,r=await e.read();Kr=1==t}catch{Kr=!1}})())}createReadable(e){const{blob:t,size:r}=this,{offset:n=0,size:i=r-n}=e||{};return n||r>i?Kr?t.slice(n,n+i).stream():super.createReadable(e):t.stream()}async readUint8Array(e,t){const r=this,n=e+t,i=e||n<r.size?r.blob.slice(e,n):r.blob;let o=await i.arrayBuffer();return o.byteLength>t&&(o=o.slice(e,n)),new w(o)}}class Zr extends Ar{constructor(e){super();const t=this,n=new k,i=[];e&&i.push(["Content-Type",e]),r.defineProperty(t,jr,{get:()=>n.writable}),t.blob=new f(n.readable,{headers:i}).blob(),t.blob.catch(()=>{})}getData(){return this.blob}}class Qr extends qr{constructor(e,t){super(),Jr(this,e,t)}async init(){await Br(this,fn,sn),super.init()}createReadable(e){const t=this,{useRangeHeader:r,forceRangeRequests:n,size:o}=t;if((r||n)&&o!==$){const{offset:r=0,size:n=o-r}=e||{};if(n>0&&o>r)return((e,t,r)=>{let n,o=t,a=0,c=r;return new F({start:()=>l(),async pull(e){n||await l();const{value:t,done:r}=await n.read();if(r)throw new d(Ur);const i=t.length>a?t.subarray(0,a):t;a-=i.length,c-=i.length,i.length&&e.enqueue(i),a||(await(async()=>{const e=n;n=$,await e.cancel()})(),c||e.close())},cancel:e=>n&&n.cancel(e)});async function l(){const t=s.min(e.maximumRangeSize,c),r=await fn(Vr,e,nn(e,o,t));if(206!=r.status)throw new d(Ur);const l=r.headers.get(Wr);if(l){const e=i(l.trim().split(/[\s-]+/)[1]);if(!i.isNaN(e)&&e!=o)throw new d(Ur)}rn(e,r),tn(e,r),o+=t,a=t,n=r.body.getReader()}})(t,r,s.min(n,o-r))}return super.createReadable(e)}readUint8Array(e,t){return _r(this,e,t,fn,sn)}}class Gr extends qr{constructor(e,t){super(),Jr(this,e,t)}async init(){await Br(this,un,an),super.init()}readUint8Array(e,t){return _r(this,e,t,un,an)}}function Jr(e,t,n){const{preventHeadRequest:i,useRangeHeader:o,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c=!0,maximumRangeSize:l=Or,fetch:f}=n;delete(n=r.assign({},n)).preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.combineSizeEocd,delete n.checkResourceChanges,delete n.maximumRangeSize,delete n.useXHR,delete n.fetch,r.assign(e,{url:t,options:n,preventHeadRequest:i,useRangeHeader:o,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c,maximumRangeSize:l,fetch:f})}async function Br(e,t,r){const{url:n,preventHeadRequest:i,useRangeHeader:o,forceRangeRequests:s,combineSizeEocd:a}=e;if((e=>{const{baseURI:t}=ce(),{protocol:r}=new u(e,t);return"http:"==r||"https:"==r})(n)&&(o||s)&&(void 0===i||i)){const n=await t(Vr,e,nn(e,a?-22:void 0)),i=n.headers.get("Accept-Ranges");if(!(s||i&&i.toLowerCase()==Ir))throw new d(Ur);{if(a){const t=new w(await n.arrayBuffer());206==n.status&&t.length==q&&(e.De=t)}tn(e,n);const i=$r(n);i===$?await ln(e,t,r):e.size=i}}else await ln(e,t,r)}async function _r(e,t,r,n,o){const{useRangeHeader:s,forceRangeRequests:a,De:c,size:l,options:f}=e;if(s||a){if(c&&t==l-q&&r==q)return c;if(l>t&&0!==r){t+r>l&&(r=l-t);const o=await n(Vr,e,nn(e,t,r));if(206!=o.status)throw new d(Ur);const s=o.headers.get(Wr);if(s){const e=i(s.trim().split(/[\s-]+/)[1]);if(!i.isNaN(e)&&e!=t)throw new d(Ur)}rn(e,o),tn(e,o);const a=new w(await o.arrayBuffer());if(a.length!=r)throw new d(Ur);return a}return ne}{const{data:n}=e;return n||await o(e,f),e.data.subarray(t,t+r)}}function $r(e){const t=e.headers.get(Wr);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=i(e);if(!i.isNaN(t))return t}}}function en({headers:e}){return{Re:e.get("Etag")||$,lastModified:e.get("Last-Modified")||$}}function tn(e,t){const{checkResourceChanges:r,Ce:n}=e;r&&!n&&206==t.status&&(e.Ce=en(t))}function rn(e,t){const{checkResourceChanges:n,Ce:i,size:o}=e;if(n){const e=$r(t);if(e!==$&&o!==$&&e!=o)throw new d(Nr);if(i){const e=en(t);if(r.entries(i).some(([t,r])=>r!==$&&e[t]!==$&&r!=e[t]))throw new d(Nr)}}}function nn(e,t=0,n=1){return r.assign({},on(e),{[Pr]:Ir+"="+(0>t?t:t+"-"+(t+n-1))})}function on({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?r.fromEntries(t):t}async function sn(e){await cn(e,fn)}async function an(e){await cn(e,un)}async function cn(e,t){const r=await t(Vr,e,on(e));e.data=new w(await r.arrayBuffer()),e.size=e.data.length}async function ln(e,t,r){if(e.preventHeadRequest)await r(e,e.options);else{const n=await t("HEAD",e,on(e)),o=n.headers.get("Content-Length");o&&!n.headers.get("Content-Encoding")?e.size=i(o):await r(e,e.options)}}async function fn(e,{fetch:t=fetch,options:n,url:i},o){const s=await t(i,r.assign({},n,{method:e,headers:o}));if(400>s.status)return s;throw 416==s.status?new d(Ur):new d(Tr+(s.statusText||s.status))}function un(e,{url:t},n){return new b((i,o)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const r=t.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(r)}),i({status:s.status,arrayBuffer:()=>s.response,headers:new c(e)})}else o(416==s.status?new d(Ur):new d(Tr+(s.statusText||s.status)))},!1),s.addEventListener("error",e=>o(e.detail?e.detail.error:new d("Network error")),!1),s.open(e,t),n)for(const e of r.entries(n))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()})}class dn extends qr{constructor(e,t={}){super(),r.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Gr(e,t):new Qr(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(e){return this.reader.createReadable(e)}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class wn extends qr{constructor(e){super(),this.Te=e}async init(){const e=this,{Te:t}=e;e.Ue=0,await b.all(t.map(e=>yn(e))),e.Ne=t.map(t=>{const r=e.size;return e.size+=t.size,r}),super.init()}Ee(e){const{Ne:t,size:r}=this,n=t[e];return n===$?r:n}async readUint8Array(e,t){const r=this,{Te:n}=this;let i,o=0,a=e;for(;n[o]&&a>=n[o].size;)a-=n[o].size,o++;const c=n[o];if(c){const n=c.size;if(a+t>n){const o=n-a;i=Xe(await bn(c,a,o),await r.readUint8Array(e+o,t-o))}else i=await bn(c,a,t)}else i=ne;return r.Ue=s.max(o,r.Ue),i}}class pn extends Ar{constructor(e,t=4294967295){super();const n=this;let i,o,s;r.assign(n,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const a=new D({async write(t){if(t===Lr)return void(s&&await l());const{availableSize:r}=n;if(s)t.length<r?await c(t):(await c(t.subarray(0,r)),await l(),t.length>r&&await this.write(t.subarray(r)));else{const{value:r,done:a}=await e.next();if(a&&!r)throw new d(Er);i=r,i.size=0,i.maxSize&&(n.maxSize=i.maxSize),n.availableSize=n.maxSize,await yn(i),o=r.writable,s=o.getWriter(),await this.write(t)}},async close(){s&&(await s.ready,await f())},async abort(e){s&&await s.abort(e)}});async function c(e){const t=e.length;t&&(await s.ready,await s.write(e),i.size+=t,n.availableSize-=t)}async function l(){await f(),n.diskOffset+=i.size,n.diskNumber++,s=null,n.availableSize=n.maxSize}async function f(){await s.close()}r.defineProperty(n,jr,{get:()=>a})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(Lr)}finally{e.releaseLock()}}}class hn{constructor(e){return t.isArray(e)&&(e=new wn(e)),e instanceof F&&(e={readable:e}),e}}class mn{constructor(e){return e.writable===$&&typeof e.next==re&&(e=new pn(e)),e instanceof D&&(e={writable:e}),e.size===$&&(e.size=0),e}}async function yn(e,t){if(!e.init||e.initialized)return b.resolve();await e.init(t)}function bn(e,t,r){return e.readUint8Array(t,r)}const gn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function xn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let r=0;r<e.length;r++)t+=gn[e[r]];return t}})(e):new x(t,{ignoreBOM:!0}).decode(e)}const zn="filename",Sn="rawFilename",vn="comment",kn="rawComment",Fn="uncompressedSize",Dn="compressedSize",Rn="offset",Cn="diskNumberStart",Tn="lastModDate",Un="rawLastModDate",Nn="lastAccessDate",En="creationDate",Mn="rawCreationDate",Wn="internalFileAttributes",Pn="externalFileAttributes",Vn="msdosAttributesRaw",In="msdosAttributes",On="msDosCompatible",jn="zip64",Ln="encrypted",An="version",qn="versionMadeBy",Xn="zipCrypto",Kn="directory",Yn="executable",Hn="compressionMethod",Zn="signature",Qn="extraField",Gn="unixMode",Jn="setuid",Bn="setgid",_n="sticky",$n=[zn,Sn,Fn,Dn,Tn,Un,vn,kn,Nn,En,Mn,Rn,Cn,Wn,Pn,Vn,In,On,jn,Ln,An,qn,Xn,Kn,Yn,Hn,Zn,Qn,"extraFieldUnix","extraFieldInfoZip","uid","gid",Gn,Jn,Bn,_n,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class ei{constructor(e){$n.forEach(t=>this[t]=e[t])}}const ti="password",ri="rawPassword",ni="passThrough",ii="signal",oi="checkAmbiguity",si="useWebWorkers",ai="useCompressionStream",ci="transferStreams",li="preventClose",fi="offset",ui="usdz",di="strictness",wi="strict",pi="tolerant",hi="File format is not recognized",mi="End of central directory not found",yi="End of Zip64 central directory locator not found",bi="Central directory header not found",gi="Local file header not found",xi="Zip64 extra field not found",zi="File contains encrypted entry",Si="Encryption method not supported",vi="Compression method not supported",ki="Split zip file",Fi="Overlapping entry found",Di="Ambiguous archive",Ri="Encrypted central directory is not supported",Ci="utf-8",Ti="cp437",Ui=[[Fn,E],[Dn,E],[Rn,E],[Cn,M]],Ni={[M]:{Me:no,bytes:4},[E]:{Me:io,bytes:8}};class Ei{constructor(e,t={}){r.assign(this,{reader:new hn(e),options:t,config:ce(),We:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:n}=t;const{config:i}=t;if(await yn(n),n.size!==$&&n.readUint8Array||(n=new Hr(await new f(n.readable).blob()),await yn(n)),n.size<q)throw new d(hi);const o=qi(_i(t,e,di),_i(t,e,oi)),a=o==wi,c=o!=pi,u=((e,t)=>e!==$?e:t==wi?0:t==pi?1/0:M)(_i(t,e,"maxAppendedDataSize"),o),{Pe:w,Ve:p}=await(async(e,t,r)=>{const{size:n}=e,i=s.min(n,65557),o={count:Xi};let a,c,l=0;for await(const[r,s,f,u,d]of Zi(e,i)){const i=ro(r,u+20);if(d+q+i==n){const i=await Gi(e,r,s,u,d,n,o);if(i==Hi){if(a||(a=Qi(f,u,d)),l++,!t||l>1)break}else i!=Yi||c||(c=Qi(f,u,d))}}return a||(a=c),a||(a=await(async(e,t,r)=>{const{size:n}=e,i=s.min(n,t==1/0?n:65557+t);let o,a;for await(const[t,s,c,l,f]of Zi(e,i)){const i=Qi(c,l,f);o||(o=i);const u=await Gi(e,t,s,l,f,n,r);if(u==Hi)return i;u!=Yi||a||(a=i)}return a||o})(e,r,o)),{Pe:a,Ve:l}})(n,c,u);if(!w)throw no(Ye(await bn(n,0,4)))==V?new d(ki):new d(mi);c&&p>1&&Bi("multiple end of central directory records");const h=Ye(w);let m=no(h,12),y=no(h,16);const g=w.offset,x=ro(h,20),z=g+q+x;n.size-z>u&&Bi("appended data");let S=ro(h,4);const v=n.Ue||0;let F,D,R,C=ro(h,6),T=ro(h,10),U=0;const N=y==E||m==E||T==M||C==M;if(y!=E&&C!=M&&(y+=Ai(n,C)),N){const e=w.offset<X?ne:await bn(n,w.offset-X,X),t=Ye(e);if(e.length==X&&no(t,0)==A){y=Ai(n,no(t,4))+io(t,8);let e=await bn(n,y,56),r=Ye(e);const i=w.offset-X-56;if((56>e.length||no(r,0)!=L)&&y!=i&&i>=0){const t=y;y=i,y>t&&(U=y-t),e=await bn(n,y,56),r=Ye(e)}if(56>e.length||no(r,0)!=L)throw new d(yi);D=!0,R=io(r,4)>44,S==M?S=no(r,16):a&&S!=no(r,16)&&Bi("mismatched zip64 end of central directory record"),C==M?C=no(r,20):a&&C!=no(r,20)&&Bi("mismatched zip64 end of central directory record"),T==M?T=io(r,32):a&&T!=io(r,32)&&Bi("mismatched zip64 end of central directory record"),m==E?m=io(r,40):a&&m!=io(r,40)&&Bi("mismatched zip64 end of central directory record"),y=Ai(n,C)+io(r,48)+U}}const P=m,I=w.offset-(D?76:0);if(y<n.size||(U=n.size-y-m-q,y=n.size-m-q),v!=S)throw new d(ki);if(0>y)throw new d(hi);let j=0,K=await bn(n,y,m),Y=Ye(K);if(m){if(4>K.length)throw new d(hi);const e=I-m;if(y!=e&&C==S){let t=!(no(Y,j)==O);if(t||0>e||e+4>n.size||(t=no(Ye(await bn(n,e,4)),0)==O),t){const t=y;y=e,y>t&&(U+=y-t),K=await bn(n,y,m),Y=Ye(K)}}}const J=I-y;if(m==J||0>J||C!=S||(m=J,K=await bn(n,y,m),Y=Ye(K)),0>y||y>=n.size)throw new d(hi);F=y;const B=_i(t,e,"filenameEncoding"),_=_i(t,e,"commentEncoding"),ee=a?new l:$;let te;for(let o=0;T>o;o++){const c=new Wi(n,i,t.options);if(j+46>K.length||no(Y,j)!=O){if(0==o&&(R||Pi(Y)))throw new d(Ri);throw new d(bi)}Vi(c,Y,j+6);const l=!!c.bitFlag.languageEncodingFlag,u=j+46,w=u+c.filenameLength,p=w+c.extraFieldLength,h=ro(Y,j+4),m=!(h>>8),y=h>>8==3,g=K.subarray(u,w),x=ro(Y,j+32),z=p+x,S=K.subarray(p,z),v=l,D=l,C=no(Y,j+38),N=C&W,E={readOnly:!!(1&N),hidden:!!(2&N),system:!!(4&N),directory:!!(16&N),archive:!!(32&N)},P=no(Y,j+42),V=_i(t,e,"decodeText")||xn,I=v?Ci:B||Ti,L=D?Ci:_||Ti;let A=V(g,I);A===$&&(A=xn(g,I));let q=V(S,L);q===$&&(q=xn(S,L)),r.assign(c,{index:o,versionMadeBy:h,msDosCompatible:m,compressedSize:0,uncompressedSize:0,Ie:x,offset:P,diskNumberStart:ro(Y,j+34),internalFileAttributes:ro(Y,j+36),externalFileAttributes:C,msdosAttributesRaw:N,msdosAttributes:E,rawFilename:g,filenameUTF8:v,commentUTF8:D,rawExtraField:K.subarray(w,p),rawComment:S,filename:A,comment:q}),Ii(c,c,Y,j+6),c.offset+=U,F=s.min(Ai(n,c.diskNumberStart)+c.offset,F),a&&(ee.has(c.filename)&&(te=!0),ee.add(c.filename));const X=c.externalFileAttributes>>16&M;c.unixMode===$&&16877&X&&(c.unixMode=X);const J=!!(c.unixMode&Z),re=!!(c.unixMode&Q),ne=!!(512&c.unixMode),ie=c.unixMode!==$?!!(73&c.unixMode):y&&!!(73&X),oe=c.unixMode!==$&&(61440&c.unixMode)==H,se=(61440&X)==H;r.assign(c,{setuid:J,setgid:re,sticky:ne,unixExternalUpper:X,internalFileAttribute:c.internalFileAttributes,externalFileAttribute:c.externalFileAttributes,executable:ie,directory:oe||se||m&&E.directory||c.filename.endsWith(G)&&!c.uncompressedSize,zipCrypto:c.encrypted&&!c.extraFieldAES});const ae=new ei(c);ae.getData=(e,r)=>c.getData(e,ae,t.We,r),ae.arrayBuffer=async e=>{const r=new k,[n]=await b.all([new f(r.readable).arrayBuffer(),c.getData(r,ae,t.We,e)]);return n},j=z;const{onprogress:ce}=e;if(ce)try{await ce(o+1,T,new ei(c))}catch{}yield ae}a&&j!=P&&Bi("trailing central directory data"),te&&Bi("duplicate filename"),a&&(U||T&&F>0)&&Bi("prepended data");const re=_i(t,e,"extractPrependedData"),ie=_i(t,e,"extractAppendedData");return re&&(t.prependedData=F>0?await bn(n,0,F):ne),t.comment=x?await bn(n,g+q,x):ne,ie&&(t.appendedData=z<n.size?await bn(n,z,n.size-z):ne),!0}async getEntries(e={}){const t=[];for await(const r of this.getEntriesGenerator(e))t.push(r);return t}async close(){}}class Mi{constructor(e={}){const{readable:t,writable:r}=new k,n=new Ei(t,e).getEntriesGenerator();this.readable=new F({async pull(e){const{done:t,value:r}=await n.next();if(t)return e.close();const i={...r,readable:(()=>{const{readable:e,writable:t}=new k;if(r.getData)return(async()=>{try{await r.getData(t)}catch(e){try{await t.abort(e)}catch{}}})(),e})()};delete i.getData,e.enqueue(i)}}),this.writable=r}}class Wi{constructor(e,t,n){r.assign(this,{reader:e,config:t,options:n})}async getData(e,t,r,n={}){const i=this,{reader:o,index:s,offset:a,diskNumberStart:c,extraFieldAES:l,extraFieldZip64:f,compressionMethod:u,config:w,bitFlag:p,signature:h,rawLastModDate:m,uncompressedSize:y,compressedSize:b}=i,{dataDescriptor:g}=p,x=t.localDirectory={},z=Ai(o,c)+a,S=await bn(o,z,J),v=Ye(S);let k=_i(i,n,ti),F=_i(i,n,ri);const R=_i(i,n,ni);if(k=k&&k.length&&k,F=F&&F.length&&F,l&&99!=l.originalCompressionMethod)throw new d(vi);const C=R?$:Ce(u);if(0!=u&&8!=u&&9!=u&&!C&&!R)throw new d(vi);if(S.length<J||no(v,0)!=P)throw new d(gi);Vi(x,v,4);const{extraFieldLength:T,filenameLength:U}=x,N=qi(_i(i,n,di),_i(i,n,oi))==wi;let E=ne;if(N&&(U||T)){const e=await bn(o,z+J,U+T);E=e.subarray(0,U),x.rawExtraField=e.subarray(U)}else x.rawExtraField=T?await bn(o,z+J+U,T):ne;Ii(i,x,v,4,!0),N&&((e,t,r)=>{const{rawFilename:n}=e;(r.length!=n.length||r.some((e,t)=>e!=n[t]))&&Bi("mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&Bi("mismatched local file header (general purpose bit flag)"),t.compressionMethod!=e.compressionMethod&&Bi("mismatched local file header (compression method)"),t.bitFlag.dataDescriptor||!(t.signature||t.compressedSize||t.uncompressedSize)||t.signature==e.signature&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||Bi("mismatched local file header (signature or sizes)")})(i,x,E);const{lastAccessDate:M,creationDate:V}=x;M&&(t.lastAccessDate=M),V&&(t.creationDate=V);const O=i.encrypted&&x.encrypted&&!R,j=O&&!l;if(R||(t.zipCrypto=j),O){if(!(64&~x.rawBitFlag))throw new d(Si);if(!j&&(1>l.strength||l.strength>3))throw new d(Si);if(!k&&!F)throw new d(zi)}const L=z+J+U+T,A=b,q=o.createReadable({offset:L,size:A}),X=_i(i,n,ii),K=_i(i,n,"checkPasswordOnly");let Y=_i(i,n,"checkOverlappingEntry");const H=_i(i,n,"checkOverlappingEntryOnly");H&&(Y=!0);const{onstart:Z,onprogress:Q,onend:G}=n,B=9==u;let _=_i(i,n,ai);B&&(_=!1);const ee={options:{codecType:Bt,password:k,rawPassword:F,zipCrypto:j,encryptionStrength:l&&l.strength,signed:_i(i,n,"checkSignature")&&!R,passwordVerification:j&&(g?m>>>8&W:h>>>24&W),outputSize:R?b:y,signature:h,compressed:0!=u&&!R,encrypted:O,useWebWorkers:_i(i,n,si),useCompressionStream:_,transferStreams:_i(i,n,ci),deflate64:B,format:C?C.format:$,codecURI:C?C.codecURI:$,checkPasswordOnly:K},config:w,ce:{signal:X,size:A,onstart:Z,onprogress:Q,onend:G}};let te;Y&&await(async({reader:e,Oe:t,index:r,offset:n,signature:i,compressedSize:o,uncompressedSize:s,je:a,dataDescriptor:c,extraFieldZip64:l,We:f})=>{let u=0;if(c&&(u=l?20:12),u){const r=await bn(e,a+o,u+4);if(r.length==u+4&&no(Ye(r),0)==I){const e=no(Ye(r),4);let n,a;l?(n=io(Ye(r),8),a=io(Ye(r),16)):(n=no(Ye(r),8),a=no(Ye(r),12)),(t.encrypted&&!t.zipCrypto||e==i)&&n==o&&a==s&&(u+=4)}}const w={start:n,end:a+o+u,Oe:t};for(const[e,t]of f)if(e!=r&&w.start<t.end&&t.start<w.end){const e=new d(Fi);throw e.Le=t.Oe,e}f.set(r,w)})({reader:o,Oe:t,index:s,offset:z,signature:h,compressedSize:b,uncompressedSize:y,je:L,dataDescriptor:g||x.bitFlag.dataDescriptor,extraFieldZip64:f||x.extraFieldZip64,We:r});try{if(!H){K&&(e=new D),e=new mn(e),await yn(e,R?b:y),({writable:te}=e);const{outputSize:t}=await vr({readable:q,writable:te},ee);if(e.size+=t,t!=(R?b:y))throw new d(It)}}catch(t){if(t.outputSize!==$&&(e.size+=t.outputSize),!K||t.message!=$e)throw t}finally{_i(i,n,li)||!te||te.locked||await te.getWriter().close()}return K||H?$:e.getData?e.getData():te}}function Pi(e){const t=s.min(e.byteLength,1024)-3;for(let r=0;t>r;r++)if(134630224==no(e,r))return!0;return!1}function Vi(e,t,n){const i=e.rawBitFlag=ro(t,n+2),o=!(1&~i),s=no(t,n+6);r.assign(e,{encrypted:o,version:ro(t,n),bitFlag:{level:(6&i)>>1,dataDescriptor:!(8&~i),languageEncodingFlag:(i&Y)==Y},rawLastModDate:s,lastModDate:$i(s),filenameLength:ro(t,n+22),extraFieldLength:ro(t,n+24)})}function Ii(e,t,n,i,o){const{rawExtraField:s}=t,l=t.extraField=new c,f=Ye(s);let u=0;try{for(;u<s.length;){const e=ro(f,u),t=ro(f,u+2);l.set(e,{type:e,data:s.slice(u+4,u+4+t)}),u+=4+t}}catch{}const w=ro(n,i+4);r.assign(t,{signature:no(n,i+10),compressedSize:no(n,i+14),uncompressedSize:no(n,i+18)});const p=l.get(1);p&&(((e,t)=>{t.zip64=!0;const r=Ye(e.data),n=Ui.filter(([e,r])=>t[e]==r),i=n.reduce((e,[,t])=>e+Ni[t].bytes,0);if(e.data.length<i)throw new d(xi);for(let i=0,o=0;i<n.length;i++){const[s,a]=n[i],c=Ni[a];t[s]=e[s]=c.Me(r,o),o+=c.bytes}})(p,t),t.extraFieldZip64=p);const h=l.get(28789);h&&(Oi(h,zn,Sn,t,e),t.extraFieldUnicodePath=h);const m=l.get(25461);m&&(Oi(m,vn,kn,t,e),t.extraFieldUnicodeComment=m);const y=l.get(39169);y&&y.data.length>=7?(((e,t,n)=>{const i=Ye(e.data),o=to(i,4);r.assign(e,{Ae:to(i,0),vendorId:to(i,2),strength:o,originalCompressionMethod:n,compressionMethod:ro(i,5)}),t.compressionMethod=e.compressionMethod})(y,t,w),t.extraFieldAES=y):t.compressionMethod=w;const b=l.get(10);b&&(((e,t)=>{const n=Ye(e.data);let i,o=4;try{for(;o<e.data.length&&!i;){const t=ro(n,o),r=ro(n,o+2);1==t&&(i=e.data.slice(o+4,o+4+r)),o+=4+r}}catch{}try{if(i&&24==i.length){const n=Ye(i),o=n.getBigUint64(0,!0),s=n.getBigUint64(8,!0),a=n.getBigUint64(16,!0);r.assign(e,{rawLastModDate:o,rawLastAccessDate:s,rawCreationDate:a});const c={lastModDate:eo(o),lastAccessDate:eo(s),creationDate:eo(a)};r.assign(e,c),r.assign(t,c)}}catch{}})(b,t),t.extraFieldNTFS=b);const g=l.get(30805);if(g)ji(g,t,!1),t.extraFieldUnix=g;else{const e=l.get(30837);e&&(ji(e,t,!0),t.extraFieldInfoZip=e)}const x=l.get(K);x&&(((e,t,r)=>{if(!e.data.length)return;const n=Ye(e.data),i=to(n,0),o=[],s=[];r?(1&~i||(o.push(Tn),s.push(Un)),2&~i||(o.push(Nn),s.push("rawLastAccessDate")),4&~i||(o.push(En),s.push(Mn))):5>e.data.length||(o.push(Tn),s.push(Un));let c=1;o.forEach((r,i)=>{if(e.data.length>=c+4){const o=no(n,c);t[r]=e[r]=new a(1e3*(0|o));const l=s[i];e[l]=o}c+=4})})(x,t,o),t.extraFieldExtendedTimestamp=x);const z=l.get(6534);z&&(t.extraFieldUSDZ=z)}function Oi(e,t,n,i,o){if(5>e.data.length)return void(e.valid=!1);const s=Ye(e.data),a=new Le;a.append(o[n]);const c=Ye(new w(4));c.setUint32(0,a.get(),!0);const l=no(s,1);r.assign(e,{version:to(s,0),[t]:xn(e.data.subarray(5)),valid:!o.bitFlag.languageEncodingFlag&&l==no(c,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function ji(e,t,n){try{const i=Ye(e.data);let o,s;if(n){let t=0;const n=to(i,t++),a=to(i,t++);o=Li(e.data.subarray(t,t+a)),t+=a;const c=to(i,t++);s=Li(e.data.subarray(t,t+c)),r.assign(e,{version:n,uid:o,gid:s})}else 4>e.data.length||(o=ro(i,0),s=ro(i,2),r.assign(e,{uid:o,gid:s}));o!==$&&(t.uid=o),s!==$&&(t.gid=s)}catch{}}function Li(e){const t=new w(4);return t.set(e,0),new m(t.buffer,t.byteOffset,4).getUint32(0,!0)}function Ai(e,t){return e.Ee?e.Ee(t):0}function qi(e,t){return e===$?t?wi:"balanced":e}const Xi=64,Ki=0,Yi=1,Hi=2;async function*Zi(e,t){const r=e.size-t,n=await bn(e,r,t),i=Ye(n);for(let e=n.length-q;e>=0;e--)no(i,e)==j&&(yield[i,r,n,e,r+e])}function Qi(e,t,r){return{offset:r,buffer:e.slice(t,t+q).buffer}}async function Gi(e,t,r,n,i,o,s){const a=ro(t,n+10),c=no(t,n+12),l=no(t,n+16);if(a==M||c==E||l==E)return await Ji(e,t,r,i-X,o,s)==A?Hi:Ki;if(!a&&!c)return Yi;const f=ro(t,n+6);for(const n of[i-c,Ai(e,f)+l])if(await Ji(e,t,r,n,o,s)==O)return Hi;return Ki}async function Ji(e,t,r,n,i,o){return 0>n||n+4>i?$:r>n?o.count>0?(o.count--,no(Ye(await bn(e,n,4)),0)):$:no(t,n-r)}function Bi(e){const t=new d(Di);throw t.reason=e,t}function _i(e,t,r){return t[r]===$?e.options[r]:t[r]}function $i(e){const t=(4294901760&e)>>16,r=e&M;try{return new a(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&r)>>11,(2016&r)>>5,2*(31&r),0)}catch{}}function eo(e){return new a(i(e/o(1e4)-o(116444736e5)))}function to(e,t){return e.getUint8(t)}function ro(e,t){return e.getUint16(t,!0)}function no(e,t){return e.getUint32(t,!0)}function io(e,t){return i(e.getBigUint64(t,!0))}var oo=r.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Di,ERR_BAD_FORMAT:hi,ERR_CENTRAL_DIRECTORY_NOT_FOUND:bi,ERR_ENCRYPTED:zi,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Ri,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:yi,ERR_EOCDR_NOT_FOUND:mi,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:xi,ERR_INVALID_COMPRESSED_DATA:Ot,ERR_INVALID_PASSWORD:Be,ERR_INVALID_SIGNATURE:_e,ERR_INVALID_UNCOMPRESSED_SIZE:It,ERR_LOCAL_FILE_HEADER_NOT_FOUND:gi,ERR_OVERLAPPING_ENTRY:Fi,ERR_SPLIT_ZIP_FILE:ki,ERR_UNSUPPORTED_COMPRESSION:vi,ERR_UNSUPPORTED_ENCRYPTION:Si,ZipReader:Ei,ZipReaderStream:Mi});const so="File already exists",ao="Zip file comment exceeds 64KB",co="File entry comment exceeds 64KB",lo="File entry name exceeds 64KB",fo="Version exceeds 65535",uo="The strength must equal 1, 2, or 3",wo="Encryption is not supported in USDZ files",po="Extra field type exceeds 65535",ho="Extra field data exceeds 64KB",mo=-2147483648,yo=2147483647,bo="Zip64 is not supported (set the 'zip64' option to 'true')",go="Undefined uncompressed size",xo="Undefined reader",zo="Zip file not empty",So=new w([7,0,2,0,65,69,3,0,0]),vo="infozip",ko="unix";let Fo=0;const Do=[];class Ro{constructor(e,t={}){e=new mn(e);const{availableSize:n=ee,maxSize:i=ee}=e,o=n>0&&n!==ee&&i>0&&i!==ee;r.assign(this,{writer:e,qe:o,options:t,config:ce(),files:new c,Xe:new l,offset:t[fi]===$?e.size||e.writable.size||0:t[fi],Ke:t[fi]===$?0:t[fi]-(e.size||e.writable.size||0),Ye:new l,He:0,Ze:$})}async prependZip(e){if(this.Xe.size)throw new d(zo);e=new hn(e),await yn(e);const{ZipReader:t}=await b.resolve().then(()=>oo),n=new t(e.readable),i=await n.getEntries();await n.close(),await yn(this.writer),await e.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=e.size,this.Xe=new l(i.map(e=>e.filename)),this.files=new c(i.map(e=>{const{version:t,rawLastModDate:n,lastAccessDate:i,creationDate:o,rawFilename:s,bitFlag:a,encrypted:c,uncompressedSize:l,compressedSize:f,zip64:u}=e;let{compressionMethod:d,Qe:w,Ge:p,Je:h,Be:m,_e:y,rawExtraField:b}=e;const{level:g,languageEncodingFlag:x,dataDescriptor:z}=a;w=w||ne,p=p||ne,h=h||ne,m=m||ne,y=y||ne,b=b||ne,e.extraFieldAES&&(d=99);const S=Zo(w,p,h,m,y,b),v=u&&l>=E,k=u&&f>=E,F=-7&Go(g,x,z,c,d)|g<<1,{$e:D,et:R}=Qo({version:t,bitFlag:F,compressionMethod:d,uncompressedSize:l,compressedSize:f,rawLastModDate:n,rawFilename:s,nt:k,it:v,extraFieldLength:S}),{signature:C}=e;return C!==$&&Ko(R,10,C),r.assign(e,{it:v,nt:k,ot:u&&e.offset>=E,diskNumberStart:0,st:!1,Qe:w,Ge:p,Je:h,Be:m,_e:y,rawExtraField:b,extendedTimestamp:h.length>0||m.length>0,ct:1+(i?2:0)+(o?4:0),$e:D,et:R}),[e.filename,e]}))}async add(e="",t,n={}){const i=this;n=r.assign({},n);const{Ye:c,config:l}=i;let f,u;Fo<l.maxWorkers?Fo++:await new b(e=>Do.push(e));try{if(e=e.trim(),Ao(i,n,Kn)&&!e.endsWith(G)&&(e+=G),i.Xe.has(e))throw new d(so);return i.Xe.add(e),u=!0,f=(async(e,t,n,i)=>{const c=((e,t,r)=>{t=t.trim();let n=Ao(e,r,On),i=Ao(e,r,qn,n?20:768);const o=Ao(e,r,Yn),s=Ao(e,r,"uid"),a=Ao(e,r,"gid");let c=Ao(e,r,Gn),l=Ao(e,r,"unixExtraFieldType"),f=Ao(e,r,Jn),u=Ao(e,r,Bn),w=Ao(e,r,_n);if(s!==$&&(0>s||s>E))throw new d("Invalid uid (must be integer 0..2^32-1)");if(a!==$&&(0>a||a>E))throw new d("Invalid gid (must be integer 0..2^32-1)");if(c!==$&&(0>c||c>M))throw new d("Invalid UNIX mode (must be integer 0..65535)");if(l!==$&&l!==vo&&l!==ko)throw new d("Invalid unixExtraFieldType (must be 'infozip' or 'unix')");if(l===ko&&(s!==$&&s>M||a!==$&&a>M))throw new d("uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)");l!==$||s===$&&a===$||(l=vo);let p=Ao(e,r,Vn),h=Ao(e,r,In);const m=p!==$||h!==$;if(s!==$||a!==$||c!==$||l?(n=!1,i=i&M|768):m&&(n=!0,i&=W),p!==$&&(0>p||p>W))throw new d("Invalid msdosAttributesRaw (must be integer 0..255)");if(h&&"object"!=typeof h)throw new d("Invalid msdosAttributes (must be an object with boolean flags)");if(i>M)throw new d(fo);let y=Ao(e,r,Pn);const b=y!==$;b||(y=0),!r[Kn]&&t.endsWith(G)&&(r[Kn]=!0);const g=Ao(e,r,Kn);let x;if(g?(t.endsWith(G)||(t+=G),b||(y=16,n||(y|=16877<<16))):n||b||(y=o?493<<16:27525120),!n){const e=c!==$||!!(f||u||w);x=y>>16&M,c=c===$?x:c&M,f?c|=Z:f=!!(c&Z),u?c|=Q:u=!!(c&Q),w?c|=512:w=!!(512&c),b&&!e||(g&&(c|=H),y=(c&M)<<16|y&M)}return({msdosAttributesRaw:p,msdosAttributes:h}=((e,t)=>{if(e!==$)e&=W;else if(t!==$){const{readOnly:r,hidden:n,system:i,directory:o,archive:s}=t;let a=0;r&&(a|=1),n&&(a|=2),i&&(a|=4),o&&(a|=16),s&&(a|=32),e=a&W}return t===$&&(t={readOnly:!!(1&e),hidden:!!(2&e),system:!!(4&e),directory:!!(16&e),archive:!!(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}})(p,h)),m&&(y=y&E|p&W),{name:t,lt:{versionMadeBy:i,msDosCompatible:n,externalFileAttributes:y,unixExternalUpper:x,uid:s,gid:a,unixMode:c,unixExtraFieldType:l,setuid:f,setgid:u,sticky:w,msdosAttributesRaw:p,msdosAttributes:h}}})(e,t,i);({name:t}=c);const l=((e,t,r)=>{const n=Ao(e,r,"encodeText",qe);let i=n(t);if(i===$&&(i=qe(t)),Zo(i)>M)throw new d(lo);const o=r[vn]||"";let s=n(o);if(s===$&&(s=qe(o)),Zo(s)>M)throw new d(co);const c=Ao(e,r,An,20);if(c>M)throw new d(fo);const l=Ao(e,r,Tn,new a),f=Ao(e,r,Nn),u=Ao(e,r,En),p=Ao(e,r,Wn,0),h=Ao(e,r,ni);let m,y;h||(m=Ao(e,r,ti),y=Ao(e,r,ri));const b=Ao(e,r,"encryptionStrength",3),g=Ao(e,r,Xn),x=Ao(e,r,"extendedTimestamp",!0),z=Ao(e,r,"ntfsTimestamp"),S=Ao(e,r,"keepOrder",!0),v=Ao(e,r,si),k=Ao(e,r,ci),F=Ao(e,r,"bufferedWrite"),D=Ao(e,r,"createTempStream"),R=Ao(e,r,"dataDescriptorSignature",!0),C=Ao(e,r,ii),T=Ao(e,r,"useUnicodeFileNames",!0),U=Ao(e,r,Hn),N=h||U===$?$:Ce(U);if(!h&&U!==$&&0!==U&&8!==U&&!N)throw new d("Compression method not supported");let E=Ao(e,r,"level");if(e.options[ui]){if(m!==$||y!==$)throw new d(wo);E===$&&U===$&&(E=0)}let W=Ao(e,r,ai),P=Ao(e,r,"dataDescriptor");F&&P===$&&(P=!1),(P===$||g)&&(P=!0),E!==$&&6!=E&&(W=!1),W||N||e.config.CompressionStream!==$||e.config.CompressionStreamZlib!==$||(E=0);const V=Ao(e,r,jn);if(!g&&(m!==$||y!==$)&&(1>b||b>3))throw new d(uo);let I=ne;const O=r[Qn];if(O){let e=0,t=0;O.forEach(t=>e+=4+Zo(t)),I=new w(e);const r=Ye(I);O.forEach((e,n)=>{if(n>M)throw new d(po);if(Zo(e)>M)throw new d(ho);Xo(r,t,n),Xo(r,t+2,Zo(e)),Ho(I,e,t+4),t+=4+Zo(e)})}return{comment:o,lt:{rawFilename:i,rawComment:s,version:c,lastModDate:l,lastAccessDate:f,creationDate:u,internalFileAttributes:p,passThrough:h,password:m,rawPassword:y,encryptionStrength:b,zipCrypto:g,extendedTimestamp:x,ntfsTimestamp:z,keepOrder:S,useWebWorkers:v,transferStreams:k,bufferedWrite:F,createTempStream:D,dataDescriptorSignature:R,signal:C,useUnicodeFileNames:T,compressionMethod:U,format:N?N.format:$,codecURI:N?N.codecURI:$,ft:N?N.versionNeeded:$,level:E,useCompressionStream:W,dataDescriptor:P,zip64:V,rawExtraField:I}}})(e,t,i),{comment:f}=l,u=i[Qn];let p;e.files.set(t,$);try{const f=await(async(e,t,{lt:r},n)=>{const{passThrough:i,zipCrypto:o,password:s,rawPassword:a,encryptionStrength:c}=r;let{dataDescriptor:l,zip64:f,level:u,compressionMethod:w}=r,p=0,h=0;if(i){if(!t)throw new d(xo);if(h=n[Fn],h===$)throw new d(go)}const m=!0===f,y=Ao(e,n,Ln),b=!!t&&(!!(s&&Zo(s)||a&&Zo(a))||i&&y);t||(u=0,w=0);const g=b?o?12:16+4*c:0;t&&(t=new hn(t),await yn(t),i?(n.uncompressedSize=h,p=qo(h)+g):t.size===$?(l=!0,(f||f===$)&&(f=!0,h=p=4294967296)):(n.uncompressedSize=h=t.size,p=qo(h)+g));const x=m||h>=E,z=m||p>=E;if(x||z){if(!1===f)throw new d(bo);f=!0}return f=f||!1,{reader:t,lt:{dataDescriptor:l,zip64:f,it:x,nt:z,uncompressedSize:h,level:u,compressionMethod:w,encrypted:b}}})(e,n,l,i);({reader:n}=f);const u=Mo(e.writer),h=Eo(e.writer),m=(e=>{const{rawFilename:t,lastModDate:r,lastAccessDate:n,creationDate:i,level:o,zip64:c,zipCrypto:l,useUnicodeFileNames:f,dataDescriptor:u,directory:w,rawExtraField:p,encryptionStrength:h,extendedTimestamp:m,ntfsTimestamp:y,passThrough:b,encrypted:g,it:x,nt:z,uncompressedSize:S}=e;let{version:v,compressionMethod:k}=e;const F=!w&&(k===$?o===$||o>0:0!==k);let D;const R=b||!F,C=c&&(e.bufferedWrite||!u||!x&&!z||R),T=C||c&&u&&(x||z);if(c&&(x||z)){const e=20,t=No(e);if(t.uint16(1),t.uint16(e-4),D=t.array,C&&(t.ut(S),R)){const e=g?l?12:16+4*h:0;t.ut(b?0:S+e)}}else D=ne;let U,N,E,W,V;if(g&&!l){const e=No(Zo(So)+2);e.uint16(39169),e.bytes(So),U=e.array,U[8]=h}else U=ne;if(m){const e=Oo(r),t=jo(e);if(t){const t=9+(n?4:0)+(i?4:0),r=No(t);W=1+(n?2:0)+(i?4:0),r.uint16(K),r.uint16(t-4),r.uint8(W),r.uint32(e),n&&r.uint32(Lo(Oo(n))),i&&r.uint32(Lo(Oo(i))),E=r.array}else E=ne;if(y===$?!t||n||i:y)try{const e=Io(r),t=No(36);t.uint16(10),t.uint16(32),t.wt(4),t.uint16(1),t.uint16(24),t.ut(e),t.ut(Io(n)||e),t.ut(Io(i)||e),N=t.array}catch{N=ne}else N=ne}else N=E=ne;try{const{uid:t,gid:r,unixExtraFieldType:n}=e;if(n!=vo||t===$&&r===$)if(n!=ko||t===$&&r===$)V=ne;else{const e=No(8);e.uint16(30805),e.uint16(4),e.uint16((t===$?0:t)&M),e.uint16((r===$?0:r)&M),V=e.array}else{const e=Uo(t),n=Uo(r),i=3+e.length+n.length,o=No(4+i);o.uint16(30837),o.uint16(i),o.uint8(1),o.uint8(e.length),o.bytes(e),o.uint8(n.length),o.bytes(n),V=o.array}}catch{V=ne}k===$&&(k=F?8:0);const{ft:I}=e;F&&I!==$&&(v=v>I?v:I),c&&(v=v>45?v:45),g&&!l&&(v=v>51?v:51,U[9]=k,k=99);const O=T?Zo(D):0,j=O+Zo(U,E,N,V,p);if(j>M)throw new d(ho);const L=new a(2e3*s.ceil(r.getTime()/2e3)),{$e:A,et:q,rawLastModDate:X}=Qo({version:v,bitFlag:Go(o,f,u,g,k),compressionMethod:k,uncompressedSize:S,lastModDate:_>L?_:L>B?B:L,rawFilename:t,nt:z,it:x,extraFieldLength:j}),Y=No(J+Zo(t)+j),H=Y.array,Z=Ye(H);return Y.uint32(P),Y.bytes(A),Y.bytes(t),T&&Y.bytes(D),Y.bytes(U),Y.bytes(E),Y.bytes(N),Y.bytes(V),Y.bytes(p),u&&(z||Ko(Z,18,0),x||Ko(Z,22,0)),{ht:H,yt:Z,$e:A,et:q,lastModDate:r,rawLastModDate:X,encrypted:g,compressed:F,version:v,compressionMethod:k,ct:W,Qe:ne,bt:O,Je:E,Be:N,_e:V,Ge:U,extraFieldLength:j}})(i=r.assign({},i,c.lt,l.lt,f.lt,{internalFileAttribute:l.lt.internalFileAttributes,externalFileAttribute:c.lt.externalFileAttributes,signature:i[Zn],offset:e.offset-u,diskNumberStart:h})),y=(({zip64:e,dataDescriptor:t,dataDescriptorSignature:r})=>{let n,i=ne,o=0,s=e?20:12;return r&&(s+=4),t&&(i=new w(s),n=Ye(i),r&&(o=4,Ko(n,0,I))),{gt:i,xt:n,zt:o}})(i),g=Zo(m.ht,y.gt);p=await(async(e,t,n,i,s)=>{const{files:a,writer:c}=e,{keepOrder:l,dataDescriptor:f,signal:u}=s,{St:p}=i,h=e.options[ui],m=e.Ze;let y,g,x,z,S,v,F,R={},C=0;a.set(t,R),e.Ze=R;try{let g;l&&(g=m&&m.lock,R.lock=new b(e=>x=e)),s.bufferedWrite||!l||e.vt||e.He||!f?(y=!0,e.He++,F=s.createTempStream?await s.createTempStream():new k($,$,{highWaterMark:ee}),F.size=0,await yn(c)):(F=c,await T()),await yn(F);const N=Mo(c);if(e.qe){delete e.qe;const t=new w(4);Ko(Ye(t),0,V),await Vo(c,t),e.offset+=4}h&&!y&&To(i,e.offset-N);const{ht:M}=p;y||(await g,await U());const P=Eo(c),I=Po(e,c);if(R.diskNumberStart=P,y||(S=!0,v=c.size,await Vo(F,M)),R=await(async(e,t,{diskNumberStart:n,lock:i},s,a,c)=>{const{St:l,kt:f,Ft:u}=s,{$e:w,et:p,lastModDate:h,rawLastModDate:m,encrypted:y,compressed:b,version:g,compressionMethod:x,Qe:z,bt:S,Je:v,ct:k,Be:F,_e:D,Ge:R}=l,{gt:C}=f,{rawFilename:T,lastAccessDate:U,creationDate:N,password:M,rawPassword:P,level:V,zip64:I,it:O,nt:j,zipCrypto:L,dataDescriptor:A,directory:q,executable:X,versionMadeBy:K,rawComment:Y,rawExtraField:H,useWebWorkers:Z,transferStreams:Q,onstart:G,onprogress:J,onend:B,signal:_,encryptionStrength:ee,extendedTimestamp:te,msDosCompatible:re,internalFileAttributes:ne,externalFileAttributes:ie,uid:oe,gid:se,unixMode:ae,setuid:ce,setgid:le,sticky:fe,unixExternalUpper:ue,msdosAttributesRaw:de,msdosAttributes:we,useCompressionStream:pe,passThrough:he,format:me,codecURI:ye}=c,be={lock:i,versionMadeBy:K,zip64:I,directory:!!q,executable:!!X,filenameUTF8:!0,rawFilename:T,commentUTF8:!0,rawComment:Y,Qe:z,bt:S,Je:v,Be:F,_e:D,Ge:R,rawExtraField:H,extendedTimestamp:te,msDosCompatible:re,internalFileAttributes:ne,externalFileAttributes:ie,diskNumberStart:n,uid:oe,gid:se,unixMode:ae,setuid:ce,setgid:le,sticky:fe,unixExternalUpper:ue,msdosAttributesRaw:de,msdosAttributes:we};let{signature:ge,uncompressedSize:xe}=c,ze=0;he||(xe=0);const{writable:Se}=t;if(e){const r=e.createReadable?e.createReadable():e.readable,n=e.size,i={options:{codecType:Jt,level:V,rawPassword:P,password:M,encryptionStrength:ee,zipCrypto:y&&L,passwordVerification:y&&L&&m>>8&W,signed:!he,compressed:b&&!he,encrypted:y&&!he,useWebWorkers:Z,useCompressionStream:pe,transferStreams:Q,format:me,codecURI:ye},config:a,ce:{signal:_,size:n,onstart:G,onprogress:J,onend:B}};try{const e=await vr({readable:r,writable:Se},i);if(ze=e.outputSize,t.size+=ze,he||(xe=e.inputSize,ge=e.signature),!j&&ze>=E||!O&&xe>=E)throw new d(bo)}catch(e){throw e.outputSize!==$&&(t.size+=e.outputSize),e}}return(({signature:e,compressedSize:t,uncompressedSize:r,St:n,kt:i},{zip64:s,zipCrypto:a,dataDescriptor:c})=>{const{et:l,encrypted:f}=n,{xt:u,zt:d}=i;f&&!a||e===$||(Ko(l,10,e),c&&Ko(u,d,e)),s?c&&(Yo(u,d+4,o(t)),Yo(u,d+12,o(r))):(Ko(l,14,t),Ko(l,18,r),c&&(Ko(u,d+4,t),Ko(u,d+8,r)))})({signature:ge,compressedSize:ze,uncompressedSize:xe,St:l,kt:f},c),A&&await Vo(t,C),r.assign(be,{uncompressedSize:xe,compressedSize:ze,lastModDate:h,rawLastModDate:m,creationDate:N,lastAccessDate:U,encrypted:y,zipCrypto:L,size:u+ze,compressionMethod:x,version:g,$e:w,et:p,signature:ge,ct:k,it:O,nt:j}),be})(n,F,R,i,e.config,s),y||(S=!1),a.set(t,R),R.filename=t,y){if(await b.all([F.writable.getWriter().close(),g]),await T(),z=!0,v=c.size,await U(),R.diskNumberStart=Eo(c),R.offset=Po(e,c),h){const t=i.Ft;To(i,e.offset-Mo(c)),R.size+=i.Ft-t}(({rawFilename:e,encrypted:t,zip64:r,bt:n,signature:i,compressedSize:s,uncompressedSize:a,it:c,nt:l},f,{dataDescriptor:u})=>{if(u||(t||Ko(f,14,i),l||Ko(f,18,s),c||Ko(f,22,a)),r&&n){const t=J+Zo(e)+4;Yo(f,t,o(a)),Yo(f,t+8,o(s))}})(R,p.yt,s),await Vo(c,p.ht),await(async(e,t,r)=>{const n=t.writable.getWriter();try{await e.pipeTo(new D({async write(e){var t;await n.ready,await n.write(e),t=Zo(e),C+=t}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{n.releaseLock()}})(F.readable,c,u),c.size+=F.size,z=!1}else R.diskNumberStart=P,R.offset=I;return e.offset+=R.size,R}catch(r){if(z||S){if(e.hasCorruptedEntries=!0,r)try{r.corruptedEntry=!0}catch{}e.offset+=c.size-v,y&&(e.offset+=C)}throw a.delete(t),r}finally{if(y&&e.He--,x&&x(),g&&g(),y&&F&&F.dispose)try{await F.dispose()}catch{}}async function T(){e.vt=!0;const{Dt:t}=e;e.Dt=new b(t=>g=()=>{e.vt=!1,t()}),await t}async function U(){Wo(c,Zo(p.ht))&&await c.closeDisk()}})(e,t,n,{St:m,kt:y,Ft:g},i)}catch(r){throw e.files.delete(t),r}return r.assign(p,{name:t,comment:f,extraField:u}),new ei(p)})(i,e,t,n),c.add(f),await f}catch(t){throw u&&i.Xe.delete(e),t}finally{c.delete(f);const e=Do.shift();e?e():Fo--}}remove(e){const{Xe:t,files:r}=this;if("string"==typeof e&&(e=r.get(e)),e&&e.filename!==$){const{filename:n}=e;if(t.has(n)&&r.has(n))return t.delete(n),r.delete(n),!0}return!1}async close(e=ne,r={}){const{Ye:n,writer:i}=this,{writable:s}=i;if(Zo(e)>M)throw new d(ao);for(;n.size;)await b.allSettled(t.from(n));return await(async(e,r,n)=>{const i=(e=>{let t=0;for(const[,r]of e){const{rawFilename:e,Ge:n,rawComment:i,Be:o,_e:s,rawExtraField:a,extendedTimestamp:c,ct:l,lastModDate:f,it:u,nt:w,uncompressedSize:p,compressedSize:h}=r,m=r.offset>=E,y=r.diskNumberStart>=M;let b,g;if(m||y||u||w){const e=4+(u?8:0)+(w?8:0)+(m?8:0)+(y?4:0),t=No(e);t.uint16(1),t.uint16(e-4),u&&t.ut(p),w&&t.ut(h),m&&t.ut(r.offset),y&&t.uint32(r.diskNumberStart),b=t.array}else b=ne;r.Qe=b,r.ot=m,r.st=y;const x=Oo(f);if(c&&jo(x)){const e=No(9);e.uint16(K),e.uint16(5),e.uint8(l),e.uint32(x),g=e.array}else g=ne;r.Je=g;const z=Zo(b,n,o,s,g,a);if(z>M)throw new d(ho);t+=46+Zo(e,i)+z}return t})(e.files),s=await(async(e,r,n)=>{const{files:i,writer:o}=e,s=new w(r);await yn(o);let a=0,c=0,l=Eo(o),f=Mo(o);for(const[e,r]of t.from(i.values()).entries()){const{offset:t,rawFilename:u,Qe:d,Ge:w,Je:p,Be:h,_e:m,rawExtraField:y,rawComment:b,versionMadeBy:g,$e:x,et:z,it:S,nt:v,st:k,ot:F,internalFileAttributes:D,externalFileAttributes:R,diskNumberStart:C,uncompressedSize:T,compressedSize:U}=r,N=Zo(d,w,p,h,m,y),W=46+Zo(u,b)+N;Wo(o,a+W-c)&&(await Vo(o,s.slice(c,a)),c=a,await o.closeDisk()),0==e&&(l=Eo(o),f=Mo(o)),S||Ko(z,18,T),v||Ko(z,14,U),(F||k)&&45>r.version&&Xo(z,0,45);const P=No(W);if(P.uint32(O),P.uint16(g),P.bytes(x.subarray(0,24)),P.uint16(N),P.uint16(Zo(b)),P.uint16(k?M:C),P.uint16(D),P.uint32(R),P.uint32(F?E:t),P.bytes(u),P.bytes(d),P.bytes(w),P.bytes(p),P.bytes(h),P.bytes(m),P.bytes(y),P.bytes(b),Ho(s,P.array,a),a+=W,n.onprogress)try{await n.onprogress(e+1,i.size,new ei(r))}catch{}}return await Vo(o,c?s.slice(c):s),{diskNumber:l,diskOffset:f}})(e,i,n);await(async(e,t,r,n)=>{const{writer:i}=e,{Rt:s}=n;let{Ct:a}=n,c=e.files.size,l=s.diskNumber,f=Po(e,s),u=Eo(i);Wo(i,q)&&u++;let w=Ao(e,r,jn);if(!(E>f&&E>a&&M>c&&M>u)){if(!1===w)throw new d(bo);w=!0}const p=Zo(t);if(p>M)throw new d(ao);const h=No(w?98:q);Wo(i,Zo(h.array)+p)&&await i.closeDisk(),u=Eo(i),w&&(h.uint32(L),h.ut(44),h.uint16(45),h.uint16(45),h.uint32(u),h.uint32(l),h.ut(c),h.ut(c),h.ut(a),h.ut(f),h.uint32(A),h.uint32(u),h.ut(o(Po(e,i))+o(a)),h.uint32(u+1),Ao(e,r,"supportZip64SplitFile",!0)&&(u=M,l=M),c=M,f=E,a=E),h.uint32(j),h.uint16(u),h.uint16(l),h.uint16(c),h.uint16(c),h.uint32(a),h.uint32(f),h.uint16(p),await Vo(i,h.array),p&&await Vo(i,t)})(e,r,n,{Rt:s,Ct:i})})(this,e,r),Ao(this,r,li)||await s.getWriter().close(),i.getData?i.getData():s}}function Co(e,t,r){e.Ye.add(t),t.catch(e=>{try{r(e)}catch{}})}function To(e,t){const{St:r}=e;let{ht:n,extraFieldLength:i}=r,o=64-(t+Zo(n))%64;4>o&&(o+=64);const s=new w(o),a=Ye(s);Xo(a,0,6534),Xo(a,2,o-4);const c=n;r.ht=n=new w(Zo(c)+o),Ho(n,c),Ho(n,s,Zo(c));const l=Ye(n);Xo(l,28,i+o),r.yt=l,e.Ft+=o}function Uo(e){if(e===$)return ne;{const t=new w(4);Ye(t).setUint32(0,e,!0);let r=4;for(;r>1&&0===t[r-1];)r--;return t.subarray(0,r)}}function No(e){const t=new w(e),r=Ye(t);let n=0;return{array:t,uint8:e=>{((e,t,r)=>{e.setUint8(t,r)})(r,n,e),n+=1},uint16:e=>{Xo(r,n,e),n+=2},uint32:e=>{Ko(r,n,e),n+=4},ut:e=>{Yo(r,n,o(e)),n+=8},bytes:e=>{Ho(t,e,n),n+=Zo(e)},wt:e=>n+=e}}function Eo(e){const{diskNumber:t=0}=e;return t}function Mo(e){const{diskOffset:t=0}=e;return t}function Wo(e,t){const{availableSize:r=ee}=e;return t>r}function Po(e,{diskNumber:t=0,diskOffset:r=0}){return e.offset-r-(t?e.Ke:0)}async function Vo(e,t){const{writable:r}=e,n=r.getWriter();try{await n.ready,e.size+=Zo(t),await n.write(t)}finally{n.releaseLock()}}function Io(e){if(e)return(o(e.getTime())+o(116444736e5))*o(1e4)}function Oo(e){return s.floor(e.getTime()/1e3)}function jo(e){return e>=mo&&yo>=e}function Lo(e){return s.min(yo,s.max(mo,e))}function Ao(e,t,r,n){const i=t[r]===$?e.options[r]:t[r];return i===$?n:i}function qo(e){return e+5*(s.floor(e/16383)+1)}function Xo(e,t,r){e.setUint16(t,r,!0)}function Ko(e,t,r){e.setUint32(t,r,!0)}function Yo(e,t,r){e.setBigUint64(t,r,!0)}function Ho(e,t,r){e.set(t,r)}function Zo(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Qo({version:e,bitFlag:t,compressionMethod:r,uncompressedSize:n,compressedSize:i,lastModDate:o,rawLastModDate:s,rawFilename:a,nt:c,it:l,extraFieldLength:f}){const u=No(26),d=u.array,w=Ye(d);if(u.uint16(e),u.uint16(t),u.uint16(r),s===$){const e=new h(1),t=Ye(e);Xo(t,0,(o.getHours()<<6|o.getMinutes())<<5|o.getSeconds()/2),Xo(t,2,(o.getFullYear()-1980<<4|o.getMonth()+1)<<5|o.getDate()),s=e[0]}return u.uint32(s),u.wt(4),c||i!==$?u.uint32(c?E:i):u.wt(4),l||n!==$?u.uint32(l?E:n):u.wt(4),u.uint16(Zo(a)),u.uint16(f),{$e:d,et:w,rawLastModDate:s}}function Go(e,t,r,n,i){let o=0;return t&&(o|=Y),r&&(o|=8),8!=i&&9!=i||(0>e||e>3||(o|=6),e>3&&5>=e&&(o|=4),9==e&&(o|=2)),n&&(o|=1),o}const Jo=1048576,Bo=".zip.js-temp",_o=1048576,$o=1048576,es=".zip.js-temp";try{ue({baseURI:void 0===z&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===z?location.href:N&&"SCRIPT"===N.tagName.toUpperCase()&&N.src||new u("zip-native.min.js",z.baseURI).href})}catch{}var{Uint8Array:ts,Uint16Array:rs,Int32Array:ns,TransformStream:is,Math:os,Error:ss,Array:as}=globalThis,cs=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],ls=new ts(0),fs=new rs(0),us=[];for(let e=0;6>e;e++)us.push(e,0==e?8:4);us.push(0,1);var ds=[];for(let e=0;14>e;e++)ds.push(e,0==e?4:2);var ws=new rs([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]),ps=new rs([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]);function hs(e,t,r,n,i){if(0==i)return;let o=e instanceof ts?e:new ts(e.buffer,e.byteOffset,e.byteLength),s=r instanceof ts?r.subarray(n,n+i):new ts(r.buffer,r.byteOffset+n,i);o.set(s,t)}function ms(e,t,r){0!=r&&(e instanceof ts?e:new ts(e.buffer,e.byteOffset,e.byteLength)).fill(0,t,t+r)}function ys(){return{Tt:ls,Ut:0,Nt:0,Et:0,Mt:ls,Wt:0,Pt:0,Vt:0,It:"",t:0,i:0,Ot:0,jt:void 0}}function bs(e,t){let r=1<<t;return{o:e,u:new ts(r),Lt:r,At:t,k:0,qt:0,p:0,Xt:0}}function gs(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],i=e[r+1];for(let e=0;i>e;e++)t.push(n)}return new rs(t)}var xs=class{constructor(e,t){this.Kt=e,this.Yt=t,this.Ht=0}},zs=class{constructor(e,t,r,n,i){this.Zt=e,this.q=t,this.Qt=r,this.Gt=n,this.Jt=i}};function Ss(e){return Gs[-6>e||e>2?9:2-e]||""}function vs(e,t){try{e.It=Ss(t)}catch(r){e.It="zlib error "+n(t)+" ("+r+")"}return t}function ks(e,t){let r=e>>>0,n=0;for(let e=0;t>e;e++)n=n<<1|1&r,r>>>=1;return n}function Fs(e,t){e.Bt[e._t++]=t}function Ds(e,t){Fs(e,255&t),Fs(e,t>>>8&255)}function Rs(e,t,r){let n=255&r,i=65535&t,o=e.$t+e.er;return e.Bt[o]=255&i,e.Bt[o+1]=i>>>8&255,e.Bt[o+2]=n,e.er+=3,i=i-1&65535,e.nr[na[n]+As+1].rr++,e.ir[Us(i)].rr++,e.er==e.sr}function Cs(e,t){let r=255&t,n=e.$t+e.er;return e.Bt[n]=0,e.Bt[n+1]=0,e.Bt[n+2]=r,e.er+=3,e.nr[r].rr++,e.er==e.sr}function Ts(e){return e.Lt-js}function Us(e){return 256>e?ia[e]:ia[256+(e>>7)]}function Ns(e){let t=Vs+7,r=1<<t,n=(1<<t)-1,i=os.floor((t+Is-1)/Is),o=1<<8+Vs;return{...bs(e,15),o:e,ar:42,cr:0,lr:void 0,ur:32767,dr:t,wr:r,pr:n,mr:i,yr:new rs(32768),gr:new rs(r),zr:o,Bt:new ts(32768),Sr:0,vr:32768,_t:0,kr:0,Fr:0,Dr:0,Rr:0,Cr:0,Tr:-2,Ur:0,Nr:0,Er:0,Mr:0,Wr:0,Pr:0,Vr:0,Ir:0,Or:0,jr:0,Lr:0,Ar:0,qr:0,Xr:0,Kr:new ns(2*qs+1),Yr:new ts(2*qs+1),Hr:new rs(Hs+1),er:0,sr:0,Zr:ls,$t:0,Qr:0,Gr:0,Jr:8,Br:32768,_r:0,$r:0,en:0,nr:new as(Ys).fill(0).map(()=>({rr:0,tn:0,rn:0,nn:0})),ir:new as(2*Xs+1).fill(0).map(()=>({rr:0,tn:0,rn:0,nn:0})),sn:new as(2*Ks+1).fill(0).map(()=>({rr:0,tn:0,rn:0,nn:0})),an:Ws(),cn:Ws(),ln:Ws()}}function Es(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],i=e[r+1],o=Ms();o.tn=n,o.nn=i,t.push(o)}return t}function Ms(){return{rr:0,tn:0,rn:0,nn:0}}function Ws(){return new xs([],((e,t)=>new zs(null,t,0,0,0))(0,ls))}function Ps(e){let{code:t,length:r}=(e=>{let t=os.max(...e),r=new as(t+1).fill(0);for(let t of e)t>0&&r[t]++;let n=new as(e.length).fill(0),i=new as(t+1).fill(0),o=0;for(let e=1;t>=e;e++)o=o+r[e-1]<<1,i[e]=o;for(let t=0;t<e.length;t++){let r=e[t];0!=r&&(n[t]=i[r]++)}return{code:n,length:e}})(e),n=new rs(2*e.length),i=0;for(let o=0;o<e.length;o++){let e=r[o]||0,s=t[o]||0;n[i++]=e?ks(s,e):0,n[i++]=e}return new rs(n)}var Vs=8,Is=3,Os=258,js=Os+Is+1,Ls=Os,As=256,qs=As+1+29,Xs=30,Ks=19,Ys=2*qs+1,Hs=15,Zs=256,Qs=-1,Gs=["need dictionary","stream end","","file error","stream error","data error","insufficient memory","buffer error",""],Js=gs(us),Bs=gs(ds),_s=new rs(19);_s[16]=2,_s[17]=3,_s[18]=7;var $s=Ps((()=>{let e=new as(288).fill(0);for(let t=0;143>=t;t++)e[t]=8;for(let t=144;255>=t;t++)e[t]=9;for(let t=256;279>=t;t++)e[t]=7;for(let t=280;287>=t;t++)e[t]=8;return e})()),ea=Ps(new as(30).fill(5)),ta=Es($s),ra=Es(ea),na=((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let i=t[n]?1<<t[n]:1,o=e[n]+i-1;o>r&&(r=o)}258>r&&(r=258);let n=new ts(r+1);for(let i=0;r>=i;i++)for(let r=0;r<e.length;r++){let o=t[r]?1<<t[r]:1,s=e[r];if(i>=s&&s+o-1>=i){n[i]=r;break}}let i=0;for(let r=0;r<e.length-1;r++){let n=t[r]?1<<t[r]:1,o=e[r]+n-1;o>i&&(i=o)}return n[i]=e.length-1,n})(ps,Js),ia=(e=>{let t=new ts(512),r=e.length-1;for(let n=0;256>n;n++)t[n]=n>r?e[r]:e[n];for(let n=256;r>=n;n++){let r=n>>7;t[256+(r>255?255:r)]=e[n]}for(let e=257;512>e;e++)0==t[e]&&(t[e]=t[e-1]);return t})(((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let i=t[n]?1<<t[n]:1,o=e[n]+i-1;o>r&&(r=o)}let n=new ts(r+1);for(let i=0;r>=i;i++)for(let r=0;r<e.length;r++){let o=t[r]?1<<t[r]:1,s=e[r];if(i>=s&&s+o-1>=i){n[i]=r;break}}return n})(ws,Bs));function oa(e,t,r){if(void 0===t||void 0===r)return 1;let n=65535&e,i=e>>>16&65535,o=0;for(;r>0;){let e=r>2e3?2e3:r;r-=e;do{n=n+t[o++]|0,i=i+n|0}while(--e);n%=65521,i%=65521}return(i<<16|n)>>>0}var sa=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?3988292384^t>>>1:t>>>1;sa[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){let r=sa[t-1][e];sa[t][e]=r>>>8^sa[0][255&r]}var[aa,ca,la,fa,ua,da,wa,pa]=sa;function ha(e=0,t,r){if(!t)return 0;void 0===r&&(r=t.length);let n=0|~e,i=0;if((r=os.min(r,t.length))>=8){let e=new m(t.buffer,t.byteOffset,r),o=r-8;for(;o>=i;i+=8){let t=n^e.getInt32(i,!0),r=e.getInt32(i+4,!0);n=pa[255&t]^wa[t>>>8&255]^da[t>>>16&255]^ua[t>>>24&255]^fa[255&r]^la[r>>>8&255]^ca[r>>>16&255]^aa[r>>>24&255]}}for(;r>i;i++)n=n>>>8^aa[255&(n^t[i])];return(4294967295^n)>>>0}function ma(e){16==e.Xt?(Ds(e,e.p),e.p=0,e.Xt=0):e.Xt>=8&&(Fs(e,e.p),e.p>>=8,e.Xt-=8)}function ya(e){e.Xt>8?Ds(e,e.p):e.Xt>0&&Fs(e,e.p),e.Qr=1+(e.Xt-1&7),e.p=0,e.Xt=0}function ba(e,t,r){e.Xt>16-r?(e.p=65535&(e.p|t<<e.Xt),Ds(e,e.p),e.p=t>>16-e.Xt&65535,e.Xt+=r-16):(e.p=65535&(e.p|t<<e.Xt),e.Xt+=r)}function ga(e){for(let t=0;t<e.nr.length;t++)e.nr[t].rr=0;for(let t=0;t<e.ir.length;t++)e.ir[t].rr=0;for(let t=0;t<e.sn.length;t++)e.sn[t].rr=0;e.nr[Zs].rr=1,e.Fr=e.Dr=0,e.er=e.Rr=0}function xa(e,t,r){return r=e.Kr[1],e.Kr[1]=e.Kr[e.$r--],Sa(e,t,1),r}function za(e,t,r,n){return e[t].rr<e[r].rr||e[t].rr==e[r].rr&&n[t]<=n[r]}function Sa(e,t,r){let n=e.Kr[r],i=r<<1;for(;i<=e.$r&&(i<e.$r&&za(t,e.Kr[i+1],e.Kr[i],e.Yr)&&i++,!za(t,n,e.Kr[i],e.Yr));)e.Kr[r]=e.Kr[i],r=i,i<<=1;e.Kr[r]=n}function va(e,t){let r,n,i,o=t.Kt,s=t.Yt.Zt,a=t.Yt.Gt,c=-1;for(e.$r=0,e.en=Ys,r=0;a>r;r++)0!=o[r].rr?(e.Kr[++e.$r]=c=r,e.Yr[r]=0):o[r].nn=0;for(;2>e.$r;)i=e.Kr[++e.$r]=2>c?++c:0,o[i].rr=1,e.Yr[i]=0,e.Fr--,s&&(e.Dr-=s[i].nn);for(t.Ht=c,r=os.floor(e.$r/2);r>=1;r--)Sa(e,o,r);i=a;do{r=xa(e,o,r),n=e.Kr[1],e.Kr[--e.en]=r,e.Kr[--e.en]=n,o[i].rr=o[r].rr+o[n].rr,e.Yr[i]=(e.Yr[r]<e.Yr[n]?e.Yr[n]:e.Yr[r])+1,o[r].rn=o[n].rn=i,e.Kr[1]=i++,Sa(e,o,1)}while(e.$r>=2);e.Kr[--e.en]=e.Kr[1],((e,t)=>{let r,n,i,o,s,a,c=t.Kt,l=t.Ht,f=t.Yt.Zt,u=t.Yt.q,d=t.Yt.Qt,w=t.Yt.Jt,p=0;for(o=0;Hs>=o;o++)e.Hr[o]=0;for(c[e.Kr[e.en]].nn=0,r=e.en+1;Ys>r;r++)n=e.Kr[r],o=c[c[n].rn].nn+1,o>w&&(o=w,p++),c[n].nn=o,l>=n&&(e.Hr[o]++,s=0,n>=d&&(s=u[n-d]),a=c[n].rr,e.Fr+=a*(o+s),f&&(e.Dr+=a*(f[n].nn+s)));if(0!=p){do{for(o=w-1;0==e.Hr[o];)o--;e.Hr[o]--,e.Hr[o+1]+=2,e.Hr[w]--,p-=2}while(p>0);for(o=w;0!=o;o--)for(n=e.Hr[o];0!=n;)i=e.Kr[--r],l>=i&&(c[i].nn!=o&&(e.Fr+=(o-c[i].nn)*c[i].rr,c[i].nn=o),n--)}})(e,t),((e,t,r)=>{let n,i,o=[],s=0;for(n=1;Hs>=n;n++)s=s+r[n-1]<<1,o[n]=s;for(i=0;t>=i;i++){let t=e[i].nn;0!=t&&(e[i].tn=ks(o[t]++,t))}})(o,t.Ht,e.Hr)}function ka(e,t,r){let n,i,o=-1,s=t[0].nn,a=0,c=7,l=4;for(0==s&&(c=138,l=3),t[r+1].nn=65535,n=0;r>=n;n++)i=s,s=t[n+1].nn,(++a>=c||i!=s)&&(l>a?e.sn[i].rr+=a:0!=i?(i!=o&&e.sn[i].rr++,e.sn[16].rr++):a>10?e.sn[18].rr++:e.sn[17].rr++,a=0,o=i,0==s?(c=138,l=3):i==s?(c=6,l=3):(c=7,l=4))}function Fa(e,t,r){let n,i=-1,o=t[0].nn,s=0,a=7,c=4;0==o&&(a=138,c=3);for(let l=0;r>=l;l++)if(n=o,o=t[l+1].nn,++s>=a||n!=o){if(c>s)do{ba(e,e.sn[n].tn,e.sn[n].nn)}while(0!=--s);else 0!=n?(n!=i&&(ba(e,e.sn[n].tn,e.sn[n].nn),s--),ba(e,e.sn[16].tn,e.sn[16].nn),ba(e,s-3,2)):s>10?(ba(e,e.sn[18].tn,e.sn[18].nn),ba(e,s-11,7)):(ba(e,e.sn[17].tn,e.sn[17].nn),ba(e,s-3,3));s=0,i=n,0==o?(a=138,c=3):n==o?(a=6,c=3):(a=7,c=4)}}function Da(e,t,r,n,i=0){ba(e,0+n,3),ya(e),Ds(e,r),Ds(e,~r),r&&t&&hs(e.Bt,e._t,t,i,r),e._t+=r}function Ra(e,t,r){let n,i,o,s,a=0;if(0!=e.er)do{n=255&e.Zr[a],n+=(255&e.Zr[a+1])<<8,i=e.Zr[a+2],a+=3,0==n?ba(e,t[i].tn,t[i].nn):(o=na[i],ba(e,t[o+As+1].tn,t[o+As+1].nn),s=Js[o],0!=s&&(i-=ps[o],ba(e,i,s)),n--,o=Us(n),ba(e,r[o].tn,r[o].nn),s=Bs[o],0!=s&&(n-=ws[o],ba(e,n,s)))}while(a<e.er);ba(e,t[Zs].tn,t[Zs].nn)}var Ca=[{fn:Za,un:0,dn:0,wn:0,pn:0},{fn:Qa,un:4,dn:4,wn:8,pn:4},{fn:Qa,un:4,dn:5,wn:16,pn:8},{fn:Qa,un:4,dn:6,wn:32,pn:32},{fn:Ga,un:4,dn:4,wn:16,pn:16},{fn:Ga,un:8,dn:16,wn:32,pn:32},{fn:Ga,un:8,dn:16,wn:128,pn:128},{fn:Ga,un:8,dn:32,wn:128,pn:256},{fn:Ga,un:32,dn:128,wn:258,pn:1024},{fn:Ga,un:32,dn:258,wn:258,pn:4096}];function Ta(e){return 2*e-(e>4?9:0)}function Ua(e,t,r){return((t<<e.mr^r)&e.pr)>>>0}function Na(e,t){e.Ir=Ua(e,e.Ir,e.u[t+(Is-1)]);let r=e.yr[t&e.ur]=e.gr[e.Ir];return e.gr[e.Ir]=t,r}function Ea(e){e.gr[e.wr-1]=0,ms(e.gr,0,(e.wr-1)*e.gr.BYTES_PER_ELEMENT)}function Ma(e){let t,r,n=e.Lt;for(t=e.wr;t>0;)t--,r=e.gr[t],e.gr[t]=n>r?0:r-n;for(t=n;t>0;)t--,r=e.yr[t],e.yr[t]=n>r?0:r-n}function Wa(e,t,r,n){let i=e.Nt;return i>n&&(i=n),0==i?0:(e.Nt-=i,hs(t,r,e.Tt,e.Ut,i),1==e.jt.cr?e.i=oa(e.i,new ts(t.buffer,t.byteOffset+r,i),i):2==e.jt.cr&&(e.i=ha(e.i,new ts(t.buffer,t.byteOffset+r,i),i)),e.Ut+=i,e.Et+=i,i)}function Pa(e){let t,r,n=e.Lt;do{if(r=e.Br-e.Er-e.Nr,0==r&&0==e.Nr&&0==e.Er?r=n:-1==r&&r--,e.Nr>=n+Ts(e)&&(hs(e.u,0,e.u,n,n-r),e._r-=n,e.Nr-=n,e.Ur-=n,e.Cr>e.Nr&&(e.Cr=e.Nr),Ma(e),r+=n),0==e.o.Nt)break;if(t=Wa(e.o,e.u,e.Nr+e.Er,r),e.Er+=t,e.Er+e.Cr>=Is){let t=e.Nr-e.Cr;for(e.Ir=e.u[t],e.Ir=Ua(e,e.Ir,e.u[t+1]);e.Cr&&(e.Ir=Ua(e,e.Ir,e.u[t+Is-1]),e.yr[t&e.ur]=e.gr[e.Ir],e.gr[e.Ir]=t,t++,e.Cr--,e.Er+e.Cr>=Is););}}while(e.Er<js&&0!=e.o.Nt);if(e.k<e.Br){let t,r=e.Nr+e.Er;e.k<r?(t=e.Br-r,t>Ls&&(t=Ls),ms(e.u,r,t),e.k=r+t):e.k<r+Ls&&(t=r+Ls-e.k,t>e.Br-e.k&&(t=e.Br-e.k),ms(e.u,e.k,t),e.k+=t)}}function Va(e){if(null==e)return!0;let t=e.jt;return!t||t.o!=e||42!=t.ar&&57!=t.ar&&69!=t.ar&&73!=t.ar&&91!=t.ar&&103!=t.ar&&113!=t.ar&&666!=t.ar}function Ia(e,t){Fs(e,t>>8),Fs(e,255&t)}function Oa(e){let t,r=e.jt;(e=>{ma(e)})(r),t=r._t,t>e.Pt&&(t=e.Pt),0!=t&&(hs(e.Mt,e.Wt,r.Bt,r.kr,t),e.Wt+=t,r.kr+=t,e.Vt+=t,e.Pt-=t,r._t-=t,0==r._t&&(r.kr=r.Sr))}function ja(e,t){let r=e.jt;r.lr&&r.lr.hn&&(e.i=ha(e.i,new ts(r.Bt.buffer,r.Sr+t,r._t-t),r._t-t))}function La(e,t){let r,n=e.jt;if(Va(e)||t>5||0>t)return vs(e,-2);if(!e.Mt||0!=e.Nt&&!e.Tt||666==n.ar&&4!=t)return vs(e,-2);if(0==e.Pt)return vs(e,-5);if(r=n.Tr,n.Tr=t,0!=n._t){if(Oa(e),0==e.Pt)return n.Tr=Qs,0}else if(0==e.Nt&&Ta(t)<=Ta(r)&&4!=t)return vs(e,-5);if(666==n.ar&&0!=e.Nt)return vs(e,-5);if(42==n.ar&&0==n.cr&&(n.ar=113),42==n.ar){let t,r=8+(n.At-8<<4)<<8;if(t=n.jr>=2||2>n.Or?0:6>n.Or?1:6==n.Or?2:3,r|=t<<6,0!=n.Nr&&(r|=32),r+=31-r%31,Ia(n,r),0!=n.Nr&&(Ia(n,e.i>>16),Ia(n,65535&e.i)),e.i=1,n.ar=113,Oa(e),0!=n._t)return n.Tr=Qs,0}if(57==n.ar)if(e.i=ha(0),Fs(n,31),Fs(n,139),Fs(n,8),n.lr)Fs(n,(n.lr.yn?1:0)+(n.lr.hn?2:0)+(null==n.lr.bn?0:4)+(null==n.lr.gn?0:8)+(null==n.lr.xn?0:16)),Fs(n,255&n.lr.zn),Fs(n,n.lr.zn>>>8&255),Fs(n,n.lr.zn>>>16&255),Fs(n,n.lr.zn>>>24&255),Fs(n,9==n.Or?2:n.jr>=2||2>n.Or?4:0),Fs(n,255&n.lr.Sn),null!=n.lr.bn&&(Fs(n,255&n.lr.vn),Fs(n,n.lr.vn>>>8&255)),n.lr.hn&&(e.i=ha(e.i,n.Bt,n._t)),n.Gr=0,n.ar=69;else if(Fs(n,0),Fs(n,0),Fs(n,0),Fs(n,0),Fs(n,0),Fs(n,9==n.Or?2:n.jr>=2||2>n.Or?4:0),Fs(n,255),n.ar=113,Oa(e),0!=n._t)return n.Tr=Qs,0;if(69==n.ar){if(n.lr&&null!=n.lr.bn){let t=n._t,r=(65535&n.lr.vn)-n.Gr;for(;n._t+r>n.vr;){let i=n.vr-n._t;if(hs(n.Bt,n._t,n.lr.bn,n.Gr,i),n._t=n.vr,ja(e,t),n.Gr+=i,Oa(e),0!=n._t)return n.Tr=Qs,0;t=0,r-=i}hs(n.Bt,n._t,n.lr.bn,n.Gr,r),n._t+=r,ja(e,t),n.Gr=0}n.ar=73}if(73==n.ar){if(n.lr&&n.lr.gn&&n.lr.gn.length){let t,r=n._t;do{if(n._t==n.vr){if(ja(e,r),Oa(e),0!=n._t)return n.Tr=Qs,0;r=0}t=n.lr.gn[n.Gr++],Fs(n,t)}while(0!=t);ja(e,r),n.Gr=0}n.ar=91}if(91==n.ar){if(n.lr&&n.lr.xn&&n.lr.xn.length){let t,r=n._t;do{if(n._t==n.vr){if(ja(e,r),Oa(e),0!=n._t)return n.Tr=Qs,0;r=0}t=n.lr.xn[n.Gr++],Fs(n,t)}while(0!=t);ja(e,r)}n.ar=103}if(103==n.ar){if(n.lr&&n.lr.hn){if(n._t+2>n.vr&&(Oa(e),0!=n._t))return n.Tr=Qs,0;Fs(n,255&e.i),Fs(n,e.i>>>8&255),e.i=ha(0)}if(n.ar=113,Oa(e),0!=n._t)return n.Tr=Qs,0}if(0!=e.Nt||0!=n.Er||0!=t&&666!=n.ar){let r=0==n.Or?Za(n,t):2==n.jr?((e,t)=>{let r=!1;for(;;){if(0==e.Er&&(Pa(e),0==e.Er)){if(0==t)return 0;break}if(e.Mr=0,r=Cs(e,e.u[e.Nr]),e.Er--,e.Nr++,r){let t=Ka(e,!1);if(null!=t)return t}}if(e.Cr=0,4==t)return Ka(e,!0)??3;if(e.er){let t=Ka(e,!1);if(null!=t)return t}return 1})(n,t):3==n.jr?((e,t)=>{let r,n,i,o;for(;;){if(e.Er<=Os){if(Pa(e),e.Er<=Os&&0==t)return 0;if(0==e.Er)break}if(e.Mr=0,e.Er>=Is&&e.Nr>0&&(i=e.Nr-1,n=e.u[i],n==++i&&n==++i&&n==++i)){o=e.Nr+Os;do{}while(n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&o>i);e.Mr=Os-(o-i),e.Mr>e.Er&&(e.Mr=e.Er)}if(e.Mr<Is?(r=Cs(e,e.u[e.Nr]),e.Er--,e.Nr++):(e.Nr,e.Nr,e.Mr,r=Rs(e,1,e.Mr-Is),e.Er-=e.Mr,e.Nr+=e.Mr,e.Mr=0),r){let t=Ka(e,!1);if(null!=t)return t}}if(e.Cr=0,4==t)return Ka(e,!0)??3;if(e.er){let t=Ka(e,!1);if(null!=t)return t}return 1})(n,t):Ca[n.Or].fn(n,t);if((2==r||3==r)&&(n.ar=666),0==r||2==r)return 0==e.Pt&&(n.Tr=Qs),0;if(1==r&&(1==t?(e=>{ba(e,2,3),ba(e,ta[Zs].tn,ta[Zs].nn),ma(e)})(n):5!=t&&(Da(n,null,0,0),3==t&&(Ea(n),0==n.Er&&(n.Nr=0,n.Ur=0,n.Cr=0))),Oa(e),0==e.Pt))return n.Tr=Qs,0}return 4!=t?0:n.cr>0?(2==n.cr?(Fs(n,255&e.i),Fs(n,e.i>>>8&255),Fs(n,e.i>>>16&255),Fs(n,e.i>>>24&255),Fs(n,255&e.Et),Fs(n,e.Et>>>8&255),Fs(n,e.Et>>>16&255),Fs(n,e.Et>>>24&255)):(Ia(n,e.i>>>16&65535),Ia(n,65535&e.i)),Oa(e),n.cr>0&&(n.cr=-n.cr),0!=n._t?0:1):1}function Aa(e){if(Va(e))return-2;let t=e.jt,r=t.ar;return t.u=ls,t.yr=fs,t.gr=fs,t.Bt=ls,t.Zr=ls,t.Kr=new ns(0),t.Yr=ls,t.Hr=fs,t.nr.length=0,t.ir.length=0,t.sn.length=0,t.lr=void 0,t.Sr=0,t.kr=0,t.$t=0,113==r?-3:0}function qa(e,t){let r,n,i=e.qr,o=e.Nr,s=e.Wr,a=e.Ar,c=e.Nr>Ts(e)?e.Nr-Ts(e):0,l=e.yr,f=e.ur,u=e.u,d=e.Er,w=d>Os?Os:d,p=u[o],h=u[o+1],m=u[o+s-1],y=u[o+s];s>=e.Lr&&(i>>=2),a>d&&(a=d);do{if(r=t,u[r+s]!=y||u[r+s-1]!=m||u[r]!=p||u[r+1]!=h)continue;let i=2;for(;w>i&&u[o+i]==u[r+i];)i++;if(n=i,n>s){if(e._r=t,s=n,n>=a)break;m=u[o+s-1],y=u[o+s]}}while((t=l[t&f])>c&&0!=--i);return s>d?d:s}function Xa(e,t){((e,t,r,n,i=0)=>{let o,s,a=0;e.Or>0?(2==e.o.t&&(e.o.t=(e=>{let t,r=4093624447;for(t=0;31>=t;t++,r>>=1)if(1&r&&0!=e.nr[t].rr)return 0;if(0!=e.nr[9].rr||0!=e.nr[10].rr||0!=e.nr[13].rr)return 1;for(t=32;As>t;t++)if(0!=e.nr[t].rr)return 1;return 0})(e)),va(e,e.an),va(e,e.cn),a=(e=>{let t;for(ka(e,e.nr,e.an.Ht),ka(e,e.ir,e.cn.Ht),va(e,e.ln),t=Ks-1;t>=3&&0==e.sn[cs[t]].nn;t--);return e.Fr+=3*(t+1)+5+5+4,t})(e),o=e.Fr+3+7>>3,s=e.Dr+3+7>>3,(o>=s||4==e.jr)&&(o=s)):o=s=r+5,o>=r+4&&t?Da(e,t,r,n,i):s==o?(ba(e,2+n,3),Ra(e,ta,ra)):(ba(e,4+n,3),((e,t,r,n)=>{let i;for(ba(e,t-257,5),ba(e,r-1,5),ba(e,n-4,4),i=0;n>i;i++)ba(e,e.sn[cs[i]].nn,3);Fa(e,e.nr,t-1),Fa(e,e.ir,r-1)})(e,e.an.Ht+1,e.cn.Ht+1,a+1),Ra(e,e.nr,e.ir)),ga(e),n&&ya(e)})(e,e.u,e.Nr-e.Ur,t,e.Ur),e.Ur=e.Nr,Oa(e.o)}function Ka(e,t){return Xa(e,t?1:0),0==e.o.Pt?t?2:0:null}var Ya=65535;function Ha(e,t){return t>e?e:t}function Za(e,t){let r,n,i,o=Ha(e.vr-5,e.Lt),s=0,a=e.o.Nt;do{if(r=Ya,i=e.Xt+42>>3,e.o.Pt<i||(i=e.o.Pt-i,n=e.Nr-e.Ur,r>n+e.o.Nt&&(r=n+e.o.Nt),r>i&&(r=i),o>r&&(0==r&&4!=t||0==t||r!=n+e.o.Nt)))break;s=4==t&&r==n+e.o.Nt?1:0,Da(e,null,0,s),e.Bt[e._t-4]=r,e.Bt[e._t-3]=r>>8,e.Bt[e._t-2]=~r,e.Bt[e._t-1]=~r>>8,Oa(e.o),n&&(n>r&&(n=r),hs(e.o.Mt,e.o.Wt,e.u,e.Ur,n),e.o.Wt+=n,e.o.Pt-=n,e.o.Vt+=n,e.Ur+=n,r-=n),r&&(Wa(e.o,e.o.Mt,e.o.Wt,r),e.o.Wt+=r,e.o.Pt-=r,e.o.Vt+=r)}while(0==s);if(a-=e.o.Nt,a){if(a<e.Lt)e.Br-e.Nr<=a&&(e.Nr-=e.Lt,hs(e.u,0,e.u,e.Lt,e.Nr),2>e.Rr&&e.Rr++,e.Cr>e.Nr&&(e.Cr=e.Nr)),hs(e.u,e.Nr,e.o.Tt,e.o.Ut-a,a),e.Nr+=a,e.Cr+=Ha(a,e.Lt-e.Cr);else{e.Rr=2;let t=e.o.Ut-e.Lt;hs(e.u,0,e.o.Tt,t,e.Lt),e.Nr=e.Lt,e.Cr=e.Nr}e.Ur=e.Nr}return e.k<e.Nr&&(e.k=e.Nr),s?(e.Qr=8,3):0!=t&&4!=t&&0==e.o.Nt&&e.Nr==e.Ur?1:(i=e.Br-e.Nr,e.o.Nt>i&&e.Ur>=e.Lt&&(e.Ur-=e.Lt,e.Nr-=e.Lt,hs(e.u,0,e.u,e.Lt,e.Nr),2>e.Rr&&e.Rr++,i+=e.Lt,e.Cr>e.Nr&&(e.Cr=e.Nr)),i>e.o.Nt&&(i=e.o.Nt),i&&(Wa(e.o,e.u,e.Nr,i),e.Nr+=i,e.Cr+=Ha(i,e.Lt-e.Cr)),e.k<e.Nr&&(e.k=e.Nr),i=e.Xt+42>>3,i=Ha(e.vr-i,Ya),o=Ha(i,e.Lt),n=e.Nr-e.Ur,(n>=o||(n||4==t)&&0!=t&&0==e.o.Nt&&i>=n)&&(r=Ha(n,i),s=4==t&&0==e.o.Nt&&r==n?1:0,Da(e,e.u,r,s,e.Ur),e.Ur+=r,Oa(e.o)),s&&(e.Qr=8),s?2:0)}function Qa(e,t){let r,n=!1;for(;;){if(e.Er<js){if(Pa(e),e.Er<js&&0==t)return 0;if(0==e.Er)break}if(r=0,e.Er>=Is&&(r=Na(e,e.Nr)),0!=r&&e.Nr-r<=Ts(e)&&(e.Mr=qa(e,r)),e.Mr<Is)n=Cs(e,e.u[e.Nr]),e.Er--,e.Nr++;else if(e.Nr,e._r,e.Mr,n=Rs(e,e.Nr-e._r,e.Mr-Is),e.Er-=e.Mr,e.Mr>e.Xr||e.Er<Is)e.Nr+=e.Mr,e.Mr=0,e.Ir=e.u[e.Nr],e.Ir=Ua(e,e.Ir,e.u[e.Nr+1]);else{e.Mr--;do{e.Nr++,r=Na(e,e.Nr)}while(0!=--e.Mr);e.Nr++}if(n){let t=Ka(e,!1);if(null!=t)return t}}if(e.Cr=e.Nr<Is-1?e.Nr:Is-1,4==t)return Ka(e,!0)??3;if(e.er){let t=Ka(e,!1);if(null!=t)return t}return 1}function Ga(e,t){let r,n=!1;for(;;){if(e.Er<js){if(Pa(e),e.Er<js&&0==t)return 0;if(0==e.Er)break}if(r=0,e.Er>=Is&&(r=Na(e,e.Nr)),e.Wr=e.Mr,e.Pr=e._r,e.Mr=Is-1,0!=r&&e.Wr<e.Xr&&e.Nr-r<=Ts(e)&&(e.Mr=qa(e,r),5>=e.Mr&&(1==e.jr||e.Mr==Is&&e.Nr-e._r>4096)&&(e.Mr=Is-1)),e.Wr<Is||e.Mr>e.Wr)if(e.Vr){if(n=Cs(e,e.u[e.Nr-1]),n&&Xa(e,0),e.Nr++,e.Er--,0==e.o.Pt)return 0}else e.Vr=1,e.Nr++,e.Er--;else{let t=e.Nr+e.Er-Is;e.Nr,e.Pr,e.Wr,n=Rs(e,e.Nr-1-e.Pr,e.Wr-Is),e.Er-=e.Wr-1,e.Wr-=2;do{++e.Nr<=t&&(r=Na(e,e.Nr))}while(0!=--e.Wr);if(e.Vr=0,e.Mr=Is-1,e.Nr++,n){let t=Ka(e,!1);if(null!=t)return t}}}if(e.Vr&&(n=Cs(e,e.u[e.Nr-1]),e.Vr=0),e.Cr=e.Nr<Is-1?e.Nr:Is-1,4==t)return Ka(e,!0)??3;if(e.er){let t=Ka(e,!1);if(null!=t)return t}return 1}var Ja=852,Ba=ws.map(e=>e+1),_a=ps.subarray(0,-1).map(e=>e+3),$a=ds.map(uc),ec=ds.map(dc);$a.push(64,2),ec.push(142,2);var tc=us.slice(0,-2).map(uc),rc=us.slice(0,-2).map(dc);tc.push(16,1,73,1,200,1),rc.push(144,1,72,1,78,1);var nc=new rs([..._a,258,0,0]),ic=new rs([..._a,3,0,0]),oc=gs(tc),sc=gs(rc),ac=new rs([...Ba,0,0]),cc=new rs([...Ba,32769,49153]),lc=gs($a),fc=gs(ec);function uc(e,t){return t%2?e:e+16}function dc(e,t){return t%2?e:e+128}function wc(e,t){let r,n=e.jt,i=e.Ut,o=e.Wt,s=e.Tt,a=e.Mt,c=n.u,l=n.p>>>0,f=n.Xt>>>0,u=n.kn,d=n.tt,w=(1<<n.Fn)-1,p=(1<<n.rt)-1,h=n.Lt>>>0,m=n.k>>>0,y=n.qt>>>0,b=n.Dn,g=o-(t-e.Pt),x=o+(e.Pt-257),z=i+(e.Nt-5),S=0,v=0,k=0,F=0;e:do{for(;15>f;){if(i>=s.length)break e;l+=s[i++]<<f,f+=8}for(r=u[l&w];;){if(k=r>>>16&255,l>>>=k,f-=k,k=r>>>24,0==k){a[o++]=65535&r;break}if(16&k){if(S=65535&r,k&=15,k){for(;k>f;){if(i>=s.length){n.Rn=16200;break e}l+=s[i++]<<f,f+=8}S+=l&(1<<k)-1,l>>>=k,f-=k}for(;15>f;){if(i>=s.length){n.Rn=16200;break e}l+=s[i++]<<f,f+=8}for(r=d[l&p];;){if(k=r>>>16&255,l>>>=k,f-=k,k=r>>>24,16&k){if(v=65535&r,k&=15,k){for(;k>f;){if(i>=s.length){n.Rn=16200;break e}l+=s[i++]<<f,f+=8}v+=l&(1<<k)-1,l>>>=k,f-=k}let t=S,u=o-g;if(v>u){let r=v-u;if(r>m&&b){e.It="invalid distance too far back",n.Rn=16209;break e}if(0==y){if(F=h-r,r>=t){for(let e=0;t>e;++e)a[o++]=c[F++];continue e}for(let e=0;r>e;++e)a[o++]=c[F++];t-=r,F=o-v}else if(r>y){F=h+y-r;let e=r-y;if(e>=t){for(let e=0;t>e;++e)a[o++]=c[F++];continue e}for(let t=0;e>t;++t)a[o++]=c[F++];if(t-=e,F=0,t>y){for(let e=0;y>e;++e)a[o++]=c[F++];t-=y,F=o-v}}else{if(F=y-r,r>=t){for(let e=0;t>e;++e)a[o++]=c[F++];continue e}for(let e=0;r>e;++e)a[o++]=c[F++];t-=r,F=o-v}for(;t>2;)a[o++]=a[F++],a[o++]=a[F++],a[o++]=a[F++],t-=3;t&&(a[o++]=a[F++],t>1&&(a[o++]=a[F++]))}else{for(F=o-v;t>2;)a[o++]=a[F++],a[o++]=a[F++],a[o++]=a[F++],t-=3;t&&(a[o++]=a[F++],t>1&&(a[o++]=a[F++]))}break}if(64&k){e.It="invalid distance code",n.Rn=16209;break e}r=d[(65535&r)+(l&(1<<k)-1)]}break}if(64&k){if(32&k){n.Rn=16191;break e}e.It="invalid literal/length code",n.Rn=16209;break e}r=u[(65535&r)+(l&(1<<k)-1)]}}while(z>i&&x>o);let D=f>>3;i-=D,f-=D<<3,l&=(1<<f)-1,e.Ut=i,e.Wt=o,e.Nt=z>i?z-i+5:5-(i-z),e.Pt=x>o?x-o+257:257-(o-x),n.p=l>>>0,n.Xt=f>>>0}var pc=new ns(0);function hc(e,t){let r=pc,n=t?1446:1444;return{...bs(e,0),o:e,Rn:16180,Cn:!1,cr:0,Tn:!1,Un:0,Nn:0,En:0,Mn:0,u:ls,Wn:0,dt:0,bn:0,kn:r,tt:r,Fn:0,rt:0,Pn:0,Vn:0,In:0,On:0,jn:r,Ln:new rs(320),An:new rs(288),qn:new ns(n),Xn:0,Dn:!0,Kn:0,Yn:0,Hn:t}}function mc(e,t,r){return e<<24|t<<16|r}function yc(e=0,t=0,r=0){return mc(e,t,r)}function bc(e=1){return mc(64,e,0)}function gc(e){return(255&e)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>24&255}var xc={Hn:!1,Zn:nc,Qn:oc,Gn:ac,Jn:lc,Bn:20,_n:257,$n:0,ei:592,ti:!1,ri:!0},zc={Hn:!0,Zn:ic,Qn:sc,Gn:cc,Jn:fc,Bn:19,_n:256,$n:-1,ei:594,ti:!0,ri:!1};function Sc(e,t,r,n,i,o,s,a){let c,l,f,u,d,w,p,h,m,y,b,g,x,z,S,v,k,F,D,R=new rs(16),C=new rs(16),T=a?zc:xc;for(c=0;15>=c;c++)R[c]=0;for(l=0;r>l;l++)R[t[l]]++;for(d=i.ni,u=15;u>=1&&0==R[u];u--);if(d>u&&(d=u),0==u)return T.ri?(S=bc(1),n.ni[0]=S,n.ni[1]=S,i.ni=1,0):-1;for(f=1;u>f&&0==R[f];f++);for(f>d&&(d=f),h=1,c=1;15>=c;c++)if(h<<=1,h-=R[c],0>h)return-1;if(h>0&&(0==e||1!=u))return-1;for(C[1]=0,c=1;15>c;c++)C[c+1]=C[c]+R[c];for(l=0;r>l;l++)0!=t[l]&&(o[C[t[l]]++]=l);switch(e){case 0:k=F=o,D=T.Bn;break;case 1:k=T.Zn,F=T.Qn,D=T._n;break;default:k=T.Gn,F=T.Jn,D=T.$n}if(y=0,l=0,c=f,v=s.ni,w=d,p=0,x=-1,m=1<<d,z=m-1,1==e&&(T.ti?m>=Ja:m>Ja)||2==e&&(T.ti?m>=T.ei:m>T.ei))return 1;for(;;){S=vc(o,l,c,p,e,k,F,D,T.Hn),b=1<<c-p,g=1<<w,f=g;do{g-=b;let e=(y>>p)+g;n.ni[v+e]=S}while(0!=g);for(b=1<<c-1;y&b;)b>>=1;if(0!=b?(y&=b-1,y+=b):y=0,l++,0==--R[c]){if(c==u)break;c=t[o[l]]}if(c>d&&(y&z)!=x){for(0==p&&(p=d),v+=1<<w,w=c-p,h=1<<w;u>w+p&&(h-=R[w+p],h>0);)w++,h<<=1;if(m+=1<<w,1==e&&(T.ti?m>=Ja:m>Ja)||2==e&&(T.ti?m>=T.ei:m>T.ei))return 1;x=y&z,n.ni[s.ni+x]=mc(w,d,v-s.ni)}}if(0!=y)for(S=bc(c-p);0!=y;){for(0!=p&&(y&z)!=x&&(p=0,c=d,v=s.ni,w=d,S=bc(c)),n.ni[v+(y>>p)]=S,b=1<<c-1;y&b;)b>>=1;0!=b?(y&=b-1,y+=b):y=0}return s.ni+=m,i.ni=d,0}function vc(e,t,r,n,i,o,s,a,c){let l;if(c?e[t]<a:e[t]+1<a)l=yc(0,r-n,e[t]);else if(c?e[t]>a:e[t]>=a)if(c&&1==i){let i=e[t]-257;l=yc(s[i],r-n,o[i])}else{let i=c?e[t]:e[t]-a;l=yc(s[i],r-n,o[i])}else l=((e=0)=>mc(96,e,0))(r-n);return l}var kc=new ns(0),Fc={ii:!0,oi:new ns(544),si:kc,ai:kc},Dc={ii:!0,oi:new ns(544),si:kc,ai:kc};function Rc(e){let t;return!(e&&(t=e.jt,!(!t||t.o!=e||t.Hn&&(16191>t.Rn||t.Rn>16209)||!t.Hn&&(16180>t.Rn||t.Rn>16211))))}function Cc(e){let t=e.Hn?Dc:Fc,r={ni:0};if(t.ii){let n,i,o;for(n=0;144>n;)e.Ln[n++]=8;for(;256>n;)e.Ln[n++]=9;for(;280>n;)e.Ln[n++]=7;for(;288>n;)e.Ln[n++]=8;t.oi.fill(0),o=t.oi,t.si=o,i=9;let s={ni:o},a={ni:i},c={ni:0};for(Sc(1,e.Ln,288,s,a,e.An,c,e.Hn),o=s.ni,i=a.ni,e.Xn=c.ni,n=0;32>n;)e.Ln[n++]=5;i=5;let l=c.ni,f={ni:o},u={ni:i};r.ni=l,Sc(2,e.Ln,32,f,u,e.An,r,e.Hn),t.ai=o.slice(l),t.ii=!1}e.kn=t.si,e.Fn=9,e.tt=t.ai,e.rt=5,e.Xn=r.ni}var Tc=class extends ss{constructor(){super("Need more input")}};function Uc(e,t){let r,n,i,o,s,a,c,l,f,u,d,w,p,h,m,y,b,g=new ts(4);if(Rc(e)||!e.Mt||!e.Tt&&0!=e.Nt)return-2;a=0,l=0,c=0,f=0,n=ls,i=0,o=ls,s=0,r=e.jt,16191==r.Rn&&(r.Rn=16192),k(),u=a,d=c,b=0;try{for(;;)switch(r.Rn){case 16180:if(0==r.cr){r.Rn=16192;break}if(C(16),2&r.cr&&35615==l){0==r.At&&(r.At=15),r.En=ha(0),r.En=S(r.En,l),D(),r.Rn=16181;break}if(r.lr&&(r.lr.ci=-1),!(1&r.cr)||((T(8)<<8)+(l>>8))%31){e.It="incorrect header check",r.Rn=16209;break}if(8!=T(4)){e.It="unknown compression method",r.Rn=16209;break}if(U(4),y=T(4)+8,0==r.At&&(r.At=y),y>15||y>r.At){e.It="invalid window size",r.Rn=16209;break}r.Nn=1<<y,r.Un=0,e.i=r.En=oa(0),r.Rn=512&l?16189:16191,D();break;case 16181:if(C(16),r.Un=l,8!=(255&r.Un)){e.It="unknown compression method",r.Rn=16209;break}if(57344&r.Un){e.It="unknown header flags set",r.Rn=16209;break}r.lr&&(r.lr.yn=l>>8&1),512&r.Un&&4&r.cr&&(r.En=S(r.En,l)),D(),r.Rn=16182;case 16182:C(32),r.lr&&(r.lr.zn=l),512&r.Un&&4&r.cr&&(r.En=v(r.En,l)),D(),r.Rn=16183;case 16183:C(16),r.lr&&(r.lr.fi=255&l,r.lr.Sn=l>>8),512&r.Un&&4&r.cr&&(r.En=S(r.En,l)),D(),r.Rn=16184;case 16184:1024&r.Un?(C(16),r.Wn=l,r.lr&&(r.lr.vn=l),512&r.Un&&4&r.cr&&(r.En=S(r.En,l)),D()):r.lr&&(r.lr.bn=ls),r.Rn=16185;case 16185:if(1024&r.Un&&(w=r.Wn,w>a&&(w=a),w&&(r.lr&&r.lr.bn&&r.lr.ui&&(y=r.lr.vn-r.Wn)<r.lr.ui&&hs(r.lr.bn,y,n,i,w),512&r.Un&&4&r.cr&&(r.En=ha(r.En,n.subarray(i,i+w),w)),a-=w,i+=w,r.Wn-=w),r.Wn))return x();r.Wn=0,r.Rn=16186;case 16186:if(2048&r.Un){if(0==a)return x();w=0;do{y=n[i+w++],r.lr&&r.lr.di&&r.Wn<r.lr.di&&(r.lr.gn[r.Wn++]=y)}while(y&&a>w);if(512&r.Un&&4&r.cr&&(r.En=ha(r.En,n.subarray(i,i+w),w)),a-=w,i+=w,y)return x()}else r.lr&&(r.lr.gn=ls);r.Wn=0,r.Rn=16187;case 16187:if(4096&r.Un){if(0==a)return x();w=0;do{y=n[i+w++],r.lr&&r.lr.wi&&r.Wn<r.lr.wi&&(r.lr.xn[r.Wn++]=y)}while(y&&a>w);if(512&r.Un&&4&r.cr&&(r.En=ha(r.En,n.subarray(i,i+w),w)),a-=w,i+=w,y)return x()}else r.lr&&(r.lr.xn=ls);r.Rn=16188;case 16188:if(512&r.Un){if(C(16),4&r.cr&&l!=(65535&r.En)){e.It="header crc mismatch",r.Rn=16209;break}D()}r.lr&&(r.lr.hn=r.Un>>9&1,r.lr.ci=1),e.i=r.En=ha(0),r.Rn=16191;break;case 16189:C(32),e.i=r.En=gc(l),D(),r.Rn=16190;case 16190:if(!r.Tn)return F(),2;e.i=r.En=oa(0),r.Rn=16191;case 16191:if(5==t||6==t)return x();case 16192:if(r.Cn){N(),r.Rn=16206;break}switch(C(3),r.Cn=!!T(1),U(1),T(2)){case 0:r.Rn=16193;break;case 1:if(Cc(r),r.Rn=16199,6==t)return U(2),x();break;case 2:r.Rn=16196;break;case 3:e.It="invalid block type",r.Rn=16209}U(2);break;case 16193:if(N(),C(32),(65535&l)!=(l>>>16^65535)){e.It="invalid stored block lengths",r.Rn=16209;break}if(r.Wn=65535&l,D(),r.Rn=16194,6==t)return x();case 16194:r.Rn=16195;case 16195:if(w=r.Wn,w){if(w>a&&(w=a),w>c&&(w=c),0==w)return x();hs(o,s,n,i,w),a-=w,i+=w,c-=w,s+=w,r.Wn-=w;break}r.Rn=16191;break;case 16196:if(C(14),r.Vn=T(5)+257,U(5),r.In=T(5)+1,U(5),r.Pn=T(4)+4,U(4),r.Vn>286||!r.Hn&&r.In>30){e.It=r.Hn?"too many length":"too many length or distance symbols",r.Rn=16209;break}r.On=0,r.Rn=16197;case 16197:for(;r.On<r.Pn;)C(3),r.Ln[cs[r.On++]]=T(3),U(3);for(;19>r.On;)r.Ln[cs[r.On++]]=0;r.jn=r.qn,r.kn=r.tt=r.jn,r.Fn=7;let u={ni:r.jn},g={ni:r.Fn},E={ni:0};if(b=Sc(0,r.Ln,19,u,g,r.An,E,r.Hn),r.jn=u.ni,r.Fn=g.ni,b){e.It="invalid code lengths set",r.Rn=16209;break}r.On=0,r.Rn=16198;case 16198:for(;r.On<r.Vn+r.In;){for(;h=r.kn[T(r.Fn)],(h>>>16&255)>f;)R();if(16>(65535&h))U(h>>>16&255),r.Ln[r.On++]=65535&h;else{if(16==(65535&h)){if(C(2+(h>>>16&255)),U(h>>>16&255),0==r.On){e.It="invalid bit length repeat",r.Rn=16209;break}y=r.Ln[r.On-1],w=3+T(2),U(2)}else 17==(65535&h)?(C(3+(h>>>16&255)),U(h>>>16&255),y=0,w=3+T(3),U(3)):(C(7+(h>>>16&255)),U(h>>>16&255),y=0,w=11+T(7),U(7));if(r.On+w>r.Vn+r.In){e.It="invalid bit length repeat",r.Rn=16209;break}for(;w--;)r.Ln[r.On++]=y}}if(16209==r.Rn)break;if(0==r.Ln[256]){e.It="invalid code -- missing end-of-block",r.Rn=16209;break}r.jn=r.qn,r.Fn=9;let M={ni:r.jn},W={ni:r.Fn},P={ni:0};b=Sc(1,r.Ln,r.Vn,M,W,r.An,P,r.Hn),r.jn=M.ni,r.Fn=W.ni;let V=P.ni;if(r.kn=r.jn.slice(0,V),b){e.It="invalid literal/lengths set",r.Rn=16209;break}r.rt=6;let I=r.Ln.subarray(r.Vn,r.Vn+r.In),O={ni:r.jn},j={ni:r.rt},L={ni:V};if(b=Sc(2,I,r.In,O,j,r.An,L,r.Hn),r.jn=O.ni,r.rt=j.ni,r.tt=r.jn.slice(V),b){e.It="invalid distances set",r.Rn=16209;break}if(r.Rn=16199,6==t)return x();case 16199:r.Rn=16200;case 16200:if(!r.Hn&&a>=6&&c>=258){F(),wc(e,d),k(),16191==r.Rn&&(r.Kn=-1);break}for(r.Kn=0;h=r.kn[T(r.Fn)],(h>>>16&255)>f;)R();if(h>>>24&&!(h>>>24&240)){for(m=h;h=r.kn[(65535&m)+(T((m>>>16&255)+(m>>>24))>>(m>>>16&255))],(m>>>16&255)+(h>>>16&255)>f;)R();U(m>>>16&255),r.Kn+=m>>>16&255}if(U(h>>>16&255),r.Kn+=h>>>16&255,r.Wn=65535&h,!(h>>>24)){r.Rn=16205;break}if(h>>>24&32){r.Kn=-1,r.Rn=16191;break}if(h>>>24&64){e.It="invalid literal/length code",r.Rn=16209;break}r.bn=h>>>24&(r.Hn?31:15),r.Rn=16201;case 16201:r.bn&&(C(r.bn),r.Wn+=T(r.bn),U(r.bn),r.Kn+=r.bn),r.Yn=r.Wn,r.Rn=16202;case 16202:for(;h=r.tt[T(r.rt)],(h>>>16&255)>f;)R();if(!(h>>>24&240)){for(m=h;h=r.tt[(65535&m)+(T((m>>>16&255)+(m>>>24))>>(m>>>16&255))],(m>>>16&255)+(h>>>16&255)>f;)R();U(m>>>16&255),r.Kn+=m>>>16&255}if(U(h>>>16&255),r.Kn+=h>>>16&255,h>>>24&64){e.It="invalid distance code",r.Rn=16209;break}r.dt=65535&h,r.bn=h>>>24&15,r.Rn=16203;case 16203:r.bn&&(C(r.bn),r.dt+=T(r.bn),U(r.bn),r.Kn+=r.bn),r.Rn=16204;case 16204:if(0==c)return x();if(w=d-c,r.dt>w){if(w=r.dt-w,w>r.k&&r.Dn){e.It="invalid distance too far back",r.Rn=16209;break}w>r.qt?(w-=r.qt,p=r.Lt-w):p=r.qt-w,w>r.Wn&&(w=r.Wn),w>c&&(w=c);for(let e=0;w>e;++e)o[s]=255&r.u[p],++s,++p}else{p=s-r.dt,w=r.Wn,w>c&&(w=c);for(let e=0;w>e;++e)o[s]=o[p],++s,++p}w>c&&(w=c),c-=w,r.Wn-=w,0==r.Wn&&(r.Rn=16200);break;case 16205:if(0==c)return x();o[s++]=r.Wn,c--,r.Rn=16200;break;case 16206:if(r.cr){if(C(32),d-=c,e.Vt+=d,r.Mn+=d,4&r.cr&&d){let t=o.subarray(s-d,s);e.i=r.En=z(r.En,t,d)}if(d=c,4&r.cr&&(r.Un?l:gc(l)>>>0)!=r.En){e.It="incorrect data check",r.Rn=16209;break}D()}r.Rn=16207;case 16207:if(r.cr&&r.Un){if(C(32),4&r.cr&&l!=(4294967295&r.Mn)){e.It="incorrect length check",r.Rn=16209;break}D()}r.Rn=16208;case 16208:return b=1,x();case 16209:return b=-3,x();case 16210:return-4;default:return-2}}catch(e){if(e instanceof Tc)return x();throw e}function x(){if(F(),r.Lt||d!=e.Pt&&16209>r.Rn&&(r.Hn?16208>r.Rn:16206>r.Rn)||4!=t){let t=d-e.Pt;if(((e,t,r)=>{let n=e.jt;if(!(n.u&&0!=n.u.length||(n.u=new ts(1<<n.At),n.u)))return 1;if(0==n.Lt&&(n.Lt=1<<n.At,n.qt=0,n.k=0),r<n.Lt){let e=n.Lt-n.qt;e>r&&(e=r),hs(n.u,n.qt,t,t.length-r,e),(r-=e)?(hs(n.u,0,t,t.length-r,r),n.qt=r,n.k=n.Lt):(n.qt+=e,n.qt==n.Lt&&(n.qt=0),n.k<n.Lt&&(n.k+=e))}else hs(n.u,0,t,t.length-n.Lt,n.Lt),n.qt=0,n.k=n.Lt;return 0})(e,e.Mt.subarray(e.Wt-t,e.Wt),t))return r.Rn=16210,-4}return u-=e.Nt,d-=e.Pt,e.Et+=u,e.Vt+=d,r.Mn+=d,4&r.cr&&d&&(e.i=r.En=z(r.En,e.Mt.subarray(e.Wt-d,e.Wt),d)),e.t=r.Xt+(r.Cn?64:0)+(16191==r.Rn?128:0)+(16199==r.Rn||16194==r.Rn?256:0),(0==u&&0==d&&0==b||4==t&&0==b)&&(b=-5),b}function z(e,t,n){return r.Un?ha(e,t,n):oa(e,t,n)}function S(e,t){return g[0]=255&t,g[1]=t>>>8&255,ha(e,g,2)>>>0}function v(e,t){return g[0]=255&t,g[1]=t>>>8&255,g[2]=t>>>16&255,g[3]=t>>>24&255,ha(e,g,4)>>>0}function k(){o=e.Mt,s=e.Wt,c=e.Pt,n=e.Tt,i=e.Ut,a=e.Nt,l=r.p,f=r.Xt}function F(){e.Mt=o,e.Wt=s,e.Pt=c,e.Tt=n,e.Ut=i,e.Nt=a,r.p=l,r.Xt=f}function D(){l=0,f=0}function R(){if(0==a)throw new Tc;a--,l+=(255&n[i])<<f,i++,l>>>=0,f+=8}function C(e){for(;e>f;)R()}function T(e){return l&(1<<e)-1}function U(e){l>>>=e,f-=e}function N(){l>>>=7&f,f-=7&f}}function Nc(e){return Rc(e)?-2:0}var Ec=65536,Mc=class{constructor(e=16,t=Ec){this.pi=[],this.hi=e;for(let r=0;r<os.min(e,4);r++)this.pi.push(new ts(t))}yi(e=Ec){for(let t=this.pi.length-1;t>=0;t--){let r=this.pi[t];if(r.length>=e)return this.pi.splice(t,1),r}return new ts(e)}release(e){this.pi.length<this.hi&&this.pi.push(e)}};function Wc(e){let t=new Mc(32,Ec),r=null;function n(){let t=e.bi(),r=e.gi(t);if(0!=r&&0!=r)throw new ss("init failed: "+r);return{o:t}}function i(e){try{t.release(e)}catch{}}return new is({start(){},transform(o,s){r||(r=n());let a=r.o;if(r.xi)return;let c=0;for(;c<o.length;){let n=os.min(o.length-c,32768),l=o.subarray(c,c+n);for(a.Tt=l,a.Ut=0,a.Nt=l.length;a.Nt>0;){let n=t.yi(),o=!1;try{a.Mt=n,a.Wt=0,a.Pt=n.length;let i=e.zi(a,0),c=n.length-a.Pt;if(c>0){let e=!1,r={Si:n.subarray(0,c),release:()=>{e||(e=!0,t.release(n))}};o=!0,s.enqueue(r)}if(1==i){r.xi=!0;break}if(0!=i)throw new ss("process error: "+i)}finally{o||i(n)}}if(r.xi)break;c+=n}},flush(o){if(r&&r.xi)return;r||(r=n());let s=r.o;for(;;){let r=t.yi(),n=!1;try{s.Mt=r,s.Wt=0,s.Pt=r.length;let i=e.zi(s,4),a=r.length-s.Pt;if(a>0){let e=!1,i={Si:r.subarray(0,a),release:()=>{e||(e=!0,t.release(r))}};n=!0,o.enqueue(i)}if(1==i)break;if(0!=i)throw new ss("finalization error: "+i)}finally{n||i(r)}}let a=e.ki(s);if(0!=a&&0!=a)throw new ss("end failed: "+a)}})}function Pc(){return new is({start(){},transform(e,t){try{t.enqueue(e.Si.slice(0))}finally{e.release()}},flush(){}})}ue({workerURI:"./core/web-worker-native.js",wasmURI:null,CompressionStreamZlib:class{constructor(e="deflate",t){let r=function(e="deflate",t){let r="gzip"==e?31:"deflate-raw"==e?-15:15,n=t&&"number"==typeof t.level?t.level:-1;return Wc({bi:()=>(()=>{let e=ys();return e.jt=Ns(e),e})(),gi:e=>((e,t,r=8,n=15,i=Vs,o=0)=>{let s=1;if(!e)return-2;if(e.It="",-1==t&&(t=6),0>n){if(s=0,-15>n)return-2;n=-n}else n>15&&(s=2,n-=16);if(1>i||i>9||8!=r||8>n||n>15||0>t||t>9||0>o||o>4||8==n&&1!=s)return-2;8==n&&(n=9);let a=Ns(e);return a?(e.jt=a,a.o=e,a.ar=42,a.cr=s,a.lr=void 0,a.At=n,a.Lt=1<<a.At,a.ur=a.Lt-1,a.dr=i+7,a.wr=1<<a.dr,a.pr=a.wr-1,a.mr=(a.dr+Is-1)/Is,a.u=new ts(2*a.Lt),a.yr=new rs(a.Lt),a.gr=new rs(a.wr),a.k=0,a.zr=1<<i+6,a.Bt=new ts(4*a.zr),a.vr=4*a.zr,a.u&&a.yr&&a.gr&&a.Bt?(a.Zr=a.Bt.subarray(a.zr),a.$t=a.Sr+a.zr,a.sr=3*(a.zr-1),a.Or=t,a.jr=o,a.Jr=r,(e=>{let t=(e=>{let t;return Va(e)?-2:(e.Et=e.Vt=0,e.It="",e.t=2,t=e.jt,t._t=0,t.kr=t.Sr,0>t.cr&&(t.cr=-t.cr),t.ar=2==t.cr?57:42,e.i=2==t.cr?ha(0):oa(0),t.Tr=-2,(e=>{if(e.nr&&e.nr.length>=Ys)for(let t=0;Ys>t;t++)e.nr[t]=Ms();else{e.nr=[];for(let t=0;Ys>t;t++)e.nr.push(Ms())}if(e.ir&&e.ir.length>=2*Xs+1)for(let t=0;2*Xs+1>t;t++)e.ir[t]=Ms();else{e.ir=[];for(let t=0;2*Xs+1>t;t++)e.ir.push(Ms())}if(e.sn&&e.sn.length>=2*Ks+1)for(let t=0;2*Ks+1>t;t++)e.sn[t]=Ms();else{e.sn=[];for(let t=0;2*Ks+1>t;t++)e.sn.push(Ms())}e.an=new xs(e.nr,new zs(ta,Js,As+1,qs,Hs)),e.cn=new xs(e.ir,new zs(ra,Bs,0,Xs,Hs)),e.ln=new xs(e.sn,new zs(null,_s,0,Ks,7)),e.p=0,e.Xt=0,e.Qr=0,ga(e)})(t),0)})(e);return 0==t&&(e=>{e.Br=2*e.Lt,Ea(e),e.Xr=Ca[e.Or].dn,e.Lr=Ca[e.Or].un,e.Ar=Ca[e.Or].wn,e.qr=Ca[e.Or].pn,e.Nr=0,e.Ur=0,e.Er=0,e.Cr=0,e.Mr=e.Wr=Is-1,e.Vr=0,e.Ir=0})(e.jt),t})(e)):(a.ar=666,e.It=Ss(-4),Aa(e),-4)):-4})(e,n,8,r,8,0),zi:La,ki:Aa})}(e,t);this.writable=r.writable,this.readable=r.readable.pipeThrough(Pc())}},DecompressionStreamZlib:class{constructor(e="deflate"){let t=((e="deflate")=>{let t="gzip"==e?31:"deflate-raw"==e?-15:"deflate64-raw"==e?-16:15;return Wc({bi:()=>(()=>{let e=ys();return e.jt=hc(e,!1),e})(),gi:e=>function(e,t){let r,n;if(!e)return-2;e.It="";let i=-16==t;return n=hc(e,i),e.jt=n,n.o=e,n.Rn=i?16191:16180,r=((e,t)=>{let r,n;if(Rc(e))return-2;if(n=e.jt,0>t){if(-16>t)return-2;r=0,n.Hn=-16==t,t=-t}else r=5+(t>>4),n.Hn=!1,48>t&&(t&=15);let i=n.Hn?16:15;return t&&(8>t||t>i)?-2:(n.u.length>0&&n.At!=t&&(n.u=ls),n.cr=r,n.At=t,(e=>{let t;return Rc(e)?-2:(t=e.jt,t.Lt=0,t.k=0,t.qt=0,(e=>{let t;return Rc(e)?-2:(t=e.jt,e.Et=e.Vt=t.Mn=0,e.It="",t.cr&&(e.i=1&t.cr),t.Rn=t.Hn?16191:16180,t.Cn=!1,t.Tn=!1,t.Un=-1,t.Nn=t.Hn?65536:32768,delete t.lr,t.p=0,t.Xt=0,t.kn=t.qn,t.tt=t.qn,t.jn=t.qn,t.Dn=!0,t.Kn=-1,0)})(e))})(e))})(e,t),r}(e,t),zi:Uc,ki:Nc})})(e);this.writable=t.writable,this.readable=t.readable.pipeThrough(Pc())}}}),ue({workerURI:e=>{const t="text/javascript",r=(e=>{let t=0,r=0,n=0,i=new w(1024),o=0,s=0;for(;!s;){s=c(1);const e=c(2);if(0==e)l();else if(1==e)f(ge(ye),ge(be));else{if(2!=e)throw d("invalid deflate block type");f(...u())}}return i.subarray(0,o);function a(){if(t>=e.length)throw d("unexpected end of deflate data");return e[t++]}function c(e){for(;e>n;)r|=a()<<n,n+=8;const t=r&(1<<e)-1;return r>>>=e,n-=e,t}function l(){r=0,n=0;const e=a()|a()<<8;t+=2,h(o+e);for(let t=0;e>t;t++)i[o++]=a()}function f(e,t){let r=p(e);for(;256!=r;){if(256>r)h(o+1),i[o++]=r;else{const e=r-257,n=de[e]+c(we[e]),s=p(t),a=pe[s]+c(he[s]);h(o+n);const l=o-a;for(let e=0;n>e;e++)i[o++]=i[l+e]}r=p(e)}}function u(){const e=c(5)+257,t=c(5)+1,r=c(4)+4,n=new w(19);for(let e=0;r>e;e++)n[me[e]]=c(3);const i=ge(n),o=new w(e+t);let s=0;for(;s<o.length;){const e=p(i);if(16>e)o[s++]=e;else if(16==e){const e=o[s-1];let t=c(2)+3;for(;t--;)o[s++]=e}else s+=17==e?c(3)+3:c(7)+11}return[ge(o.subarray(0,e)),ge(o.subarray(e))]}function p(e){const{o:t,symbols:r}=e;let n=0,i=0,o=0;for(let e=1;15>=e;e++){n|=c(1);const s=t[e];if(s>n-i)return r[o+(n-i)];o+=s,i=i+s<<1,n<<=1}throw d("invalid huffman code")}function h(e){if(i.length<e){let t=2*i.length;for(;e>t;)t*=2;const r=new w(t);r.set(i.subarray(0,o)),i=r}}})((e=>{const t=(e=(e+"").replace(/[^A-Za-z0-9+/=]/g,"")).length,r=[];for(let n=0;t>n;n+=4){const t=xe.indexOf(e[n])<<18|xe.indexOf(e[n+1])<<12|(63&xe.indexOf(e[n+2]))<<6|63&xe.indexOf(e[n+3]);r.push(t>>16&255),"="!==e[n+2]&&r.push(t>>8&255),"="!==e[n+3]&&r.push(255&t)}return new w(r)})("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"));if(e){const e=new y([r],{type:t});return u.createObjectURL(e)}return"data:"+t+";base64,"+(e=>{let t="";const r=e.length;let n=0;for(;r>n+2;n+=3){const r=e[n]<<16|e[n+1]<<8|e[n+2];t+=xe[r>>18&63]+xe[r>>12&63]+xe[r>>6&63]+xe[63&r]}const i=r-n;if(1===i){const r=e[n]<<16;t+=xe[r>>18&63]+xe[r>>12&63]+"=="}else if(2===i){const r=e[n]<<16|e[n+1]<<8;t+=xe[r>>18&63]+xe[r>>12&63]+xe[r>>6&63]+"="}return t})(r)}}),e.BlobReader=Hr,e.BlobWriter=Zr,e.Data64URIReader=class extends qr{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const n=e.indexOf(",")+1;r.assign(this,{dataURI:e,Fi:n,size:s.floor(.75*(t-n))})}readUint8Array(e,t){const{Fi:r,dataURI:n}=this,i=new w(t),o=4*s.floor(e/3),a=atob(n.substring(o+r,4*s.ceil((e+t)/3)+r)),c=e-3*s.floor(o/4);let l=0;for(let e=c;c+t>e&&e<a.length;e++)i[e-c]=a.charCodeAt(e),l++;return l<i.length?i.subarray(0,l):i}},e.Data64URIWriter=class extends Xr{constructor(e){super(),r.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let r,i=t.pending;const o=t.pending.length;for(t.pending="",r=0;r<3*s.floor((o+e.length)/3)-o;r++)i+=n.fromCharCode(e[r]);for(;r<e.length;r++)t.pending+=n.fromCharCode(e[r]);i.length>2?t.data+=v(i):t.pending=i+t.pending}getData(){return this.data+v(this.pending)}},e.ERR_AMBIGUOUS_ARCHIVE=Di,e.ERR_BAD_FORMAT=hi,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=bi,e.ERR_DUPLICATED_NAME=so,e.ERR_ENCRYPTED=zi,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=Ri,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=yi,e.ERR_EOCDR_NOT_FOUND=mi,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=xi,e.ERR_HTTP_RANGE=Ur,e.ERR_HTTP_RESOURCE_CHANGED=Nr,e.ERR_INVALID_CODEC_DEFINITION=ze,e.ERR_INVALID_CODEC_MODULE=ve,e.ERR_INVALID_COMMENT=ao,e.ERR_INVALID_COMPRESSED_DATA=Ot,e.ERR_INVALID_ENCRYPTION_STRENGTH=uo,e.ERR_INVALID_ENTRY_COMMENT=co,e.ERR_INVALID_ENTRY_NAME=lo,e.ERR_INVALID_EXTRAFIELD_DATA=ho,e.ERR_INVALID_EXTRAFIELD_TYPE=po,e.ERR_INVALID_PASSWORD=Be,e.ERR_INVALID_SIGNATURE=_e,e.ERR_INVALID_UNCOMPRESSED_SIZE=It,e.ERR_INVALID_VERSION=fo,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Er,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=gi,e.ERR_OVERLAPPING_ENTRY=Fi,e.ERR_RESERVED_COMPRESSION_METHOD=Se,e.ERR_SPLIT_ZIP_FILE=ki,e.ERR_UNDEFINED_READER=xo,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=go,e.ERR_UNSUPPORTED_COMPRESSION=vi,e.ERR_UNSUPPORTED_ENCRYPTION=Si,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=wo,e.ERR_UNSUPPORTED_FORMAT=bo,e.ERR_WRITER_NOT_INITIALIZED=Mr,e.ERR_ZIP_NOT_EMPTY=zo,e.HttpRangeReader=class extends dn{constructor(e,t={}){super(e,r.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=dn,e.Reader=qr,e.SplitDataReader=wn,e.SplitDataWriter=pn,e.TextReader=class extends Hr{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends Zr{constructor(e){super(e),r.assign(this,{encoding:e,Di:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,Di:t}=this,n=await super.getData();if(n.text&&t)return n.text();{const t=new FileReader;return new b((i,o)=>{r.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>o(t.error)}),t.readAsText(n,e)})}}},e.Uint8ArrayReader=class extends qr{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),r.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Xr{constructor(e){super(),this.defaultBufferSize=e||262144}init(e=0){r.assign(this,{offset:0,array:new w(e>0?e:this.defaultBufferSize)}),super.init()}writeUint8Array(e){const t=this,r=t.offset+e.length;if(r>t.array.length){let e=t.array.length?2*t.array.length:t.defaultBufferSize;for(;r>e;)e*=2;const n=t.array;t.array=new w(e),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.array.length?this.array:this.array.slice(0,this.offset)}},e.Writer=Xr,e.ZipReader=Ei,e.ZipReaderStream=Mi,e.ZipWriter=Ro,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:r}=new k;this.readable=t,this.zipWriter=new Ro(r,e),this.Ye=new l}transform(e){const t=this.zipWriter;let r;const{readable:n,writable:i}=new k({start(e){r=e},flush:()=>{(async()=>{try{await t.close()}catch(e){try{await t.writer.writable.abort(e)}catch{}}})()}});return Co(this,this.zipWriter.add(e,n),e=>r.error(e)),{readable:this.readable,writable:i}}writable(e){let t;const{readable:r,writable:n}=new k({start(e){t=e}});return Co(this,this.zipWriter.add(e,r),e=>t.error(e)),n}async close(e,r={}){return await b.all(t.from(this.Ye)),this.zipWriter.close(e,r)}},e.configure=fe,e.createBlobTempStream=(e={})=>{const{thresholdBytes:t=_o}=e;return()=>{const e=[];let r,n,i,o=0,s=!1;const a=new D({async write(i){s?await r.write(i):(e.push(i),o+=i.length,o>t&&await(async()=>{const t=new k;n=new f(t.readable).blob(),r=t.writable.getWriter(),s=!0;for(const t of e)await r.write(t);e.length=0})())},async close(){r&&(await r.close(),r=null)}});let c=0;return{writable:a,readable:new F({async pull(t){if(s){if(!i){const e=await n;i=e.stream().getReader()}const{value:e,done:r}=await i.read();r?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){i&&await i.cancel(e)}},{highWaterMark:0}),dispose:async()=>{if(r){try{await r.abort()}catch{}r=null}n&&(n.catch(()=>{}),n=null),e.length=0}}}},e.createOPFSTempStream=(e={})=>{const{thresholdBytes:t=Jo,directoryName:r=Bo,getDirectory:n=()=>T.storage.getDirectory()}=e;let i;function o(){return i||(i=b.resolve(n()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return()=>{const e=[];let r,n,i,s,a=0,c=!1;const l=new D({async write(s){c?await i.write(s):(e.push(s),a+=s.length,a>t&&await(async()=>{const t=await o();r=S.randomUUID(),n=await t.getFileHandle(r,{create:!0}),i=(await n.createWritable()).getWriter(),c=!0;for(const t of e)await i.write(t);e.length=0})())},async close(){i&&(await i.close(),i=null)}});let f=0;return{writable:l,readable:new F({async pull(t){if(c){if(!s){const e=await n.getFile();s=e.stream().getReader()}const{value:e,done:r}=await s.read();r?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){s&&await s.cancel(e)}},{highWaterMark:0}),dispose:async()=>{if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await o();await e.removeEntry(r)}catch{}n=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=(e={})=>{const{thresholdBytes:t=$o,directoryName:r=es,getDirectory:n}=e;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d("createSyncAccessHandle is only available in dedicated workers");const i=n||(()=>T.storage.getDirectory());let o;function a(){return o||(o=b.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),o}return()=>{const e=[];let r,n,i=0,o=!1,c=0,l=0;const f=new D({async write(s){o?(n.write(s,{at:c}),c+=s.length):(e.push(s),i+=s.length,i>t&&await(async()=>{const t=await a();r=S.randomUUID();const i=await t.getFileHandle(r,{create:!0});n=await i.createSyncAccessHandle(),o=!0;for(const t of e)n.write(t,{at:c}),c+=t.length;e.length=0})())},close(){n&&n.flush()}});let u=0;return{writable:f,readable:new F({pull(t){if(o){const e=c-l;if(0>=e)return void t.close();const r=new w(s.min(524288,e)),i=n.read(r,{at:l});i?(l+=i,t.enqueue(r.subarray(0,i))):t.close()}else u<e.length?t.enqueue(e[u++]):t.close()}},{highWaterMark:0}),dispose:async()=>{if(n){try{n.close()}catch{}n=null}if(r){try{const e=await a();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=()=>"application/octet-stream",e.registerCodec=(e={})=>{const{compressionMethod:t,format:r,codecURI:n,CompressionStream:o,DecompressionStream:s,versionNeeded:a}=e;if(!i.isInteger(t)||0>t||t>M||typeof r!=ke||!r.length)throw new d(ze);if(Fe.includes(t))throw new d(Se);const c=typeof o==re||typeof s==re;if(!(c||typeof n==ke&&n.length))throw new d(ze);De.set(t,{compressionMethod:t,format:r,codecURI:n,versionNeeded:a}),c&&Ue(r,{CompressionStream:o,DecompressionStream:s})},e.resetConfiguration=()=>{for(const e of se)delete ae[e];r.assign(ae,oe)},e.terminateWorkers=async()=>{await b.allSettled(br.map(e=>(Cr(e),e.terminate()))),rr=$},e.unregisterCodec=e=>{const t=De.get(e);if(t){let r;De.delete(e),De.forEach(e=>r=r||e.format==t.format),r||Re.delete(t.format)}}});
1
+ ((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,function(e){"use strict";const{Array:t,Object:r,String:n,Number:i,BigInt:s,Math:o,Date:a,Map:c,Set:l,Response:f,URL:u,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:h,DataView:m,Blob:y,Promise:b,TextEncoder:g,TextDecoder:S,document:F,crypto:x,btoa:v,TransformStream:k,ReadableStream:R,WritableStream:z,CompressionStream:E,DecompressionStream:P,navigator:T,Worker:U}="undefined"!=typeof globalThis?globalThis:this||self;var D=void 0!==F?F.currentScript:null;const M=4294967295,I=65535,C=255,N=67324752,A=134695760,j=A,W=33639248,Z=101010256,V=101075792,q=117853008,H=22,K=20,X=21589,Y=2048,L=16384,B=2048,O=1024,Q="/",G=30,J=new a(2107,11,31,23,59,58),_=new a(1980,0,1),$=void 0,ee=1/0,te="undefined",re="function",ne=new w;let ie=2;try{typeof T!=te&&T.hardwareConcurrency&&(ie=T.hardwareConcurrency)}catch{}const se={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:ie,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof E!=te&&E,DecompressionStream:typeof P!=te&&P},oe=["baseURI","wasmURI","workerURI","chunkSize","maxWorkers","terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout","useCompressionStream","useWebWorkers","transferStreams","CompressionStream","DecompressionStream","CompressionStreamZlib","DecompressionStreamZlib"],ae={...se};function ce(){return ae}function le(e){return o.max(e.chunkSize,64)}function fe(e){for(const t of oe){const r=e[t];r!==$&&(ae[t]=r)}}function ue(e){for(const t of oe){const r=e[t];r!==$&&(se[t]=r)}fe(e)}const de=[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],we=[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],pe=[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],he=[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],me=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],ye=new w(288);ye.fill(8,0,144),ye.fill(9,144,256),ye.fill(7,256,280),ye.fill(8,280,288);const be=new w(30).fill(5);function ge(e){const t=new p(16);for(const r of e)t[r]++;t[0]=0;const r=new p(17);for(let e=1;15>=e;e++)r[e+1]=r[e]+t[e];const n=new p(e.length);for(let t=0;t<e.length;t++)e[t]&&(n[r[e[t]]++]=t);return{o:t,symbols:n}}const Se="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Fe="Invalid codec definition",xe="Reserved compression method",ve="Invalid codec module",ke="string",Re=[0,8,9,99],ze=new c,Ee=new c;function Pe(e){return ze.get(e)}function Te(e){return Ee.get(e)}function Ue(e,t){const{CompressionStream:r,DecompressionStream:n}=t;if(typeof r!=re&&typeof n!=re)throw new d(ve);Ee.set(e,{CompressionStream:r,DecompressionStream:n})}const De=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?t>>>1^3988292384:t>>>1;De[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){const r=De[t-1][e];De[t][e]=r>>>8^De[0][255&r]}const[Me,Ie,Ce,Ne,Ae,je,We,Ze]=De;class Ve{constructor(e){this.l=e||-1}append(e){let t=0|this.l;const r=0|e.length;let n=0;if(r>=8&&e.buffer){const i=new m(e.buffer,e.byteOffset,r),s=r-8;for(;s>=n;n+=8){const e=t^i.getInt32(n,!0),r=i.getInt32(n+4,!0);t=Ze[255&e]^We[e>>>8&255]^je[e>>>16&255]^Ae[e>>>24&255]^Ne[255&r]^Ce[r>>>8&255]^Ie[r>>>16&255]^Me[r>>>24&255]}}for(;r>n;n++)t=t>>>8^Me[255&(t^e[n])];this.l=t}get(){return~this.l}}class qe extends k{constructor(){let e;const t=new Ve;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new w(4);new m(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}function He(e){if(typeof g==te){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let r=0;r<t.length;r++)t[r]=e.charCodeAt(r);return t}return(new g).encode(e)}function Ke(e,t){const r=new w(e.length+t.length);return r.set(e),r.set(t,e.length),r}function Xe(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function Ye(e){return new m(e.buffer,e.byteOffset,e.byteLength)}const Le={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const r=e[e.length-1],n=Le.h(r);return 32===n?e.concat(t):Le.m(t,n,0|r,e.slice(0,e.length-1))},S(e){const t=e.length;if(0===t)return 0;const r=e[t-1];return 32*(t-1)+Le.h(r)},F(e,t){if(32*e.length<t)return e;const r=(e=e.slice(0,o.ceil(t/32))).length;return t&=31,r>0&&t&&(e[r-1]=Le.v(t,e[r-1]&2147483648>>t-1,1)),e},v:(e,t,r)=>32===e?t:(r?0|t:t<<32-e)+1099511627776*e,h:e=>o.round(e/1099511627776)||32,m(e,t,r,n){for(void 0===n&&(n=[]);t>=32;t-=32)n.push(r),r=0;if(0===t)return n.concat(e);for(let i=0;i<e.length;i++)n.push(r|e[i]>>>t),r=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=Le.h(i);return n.push(Le.v(t+s&31,t+s>32?r:n.pop(),1)),n}},Be={bytes:{R(e){const t=Le.S(e)/8,r=new w(t);let n;for(let i=0;t>i;i++)3&i||(n=e[i/4]),r[i]=n>>>24,n<<=8;return r},P(e){const t=[];let r,n=0;for(r=0;r<e.length;r++)n=n<<8|e[r],3&~r||(t.push(n),n=0);return 3&r&&t.push(Le.v(8*(3&r),n)),t}}},Oe=class{constructor(e){const t=this;t.blockSize=512,t.T=[1732584193,4023233417,2562383102,271733878,3285377520],t.U=[1518500249,1859775393,2400959708,3395469782],e?(t.D=e.D.slice(0),t.M=e.M.slice(0),t.I=e.I):t.reset()}reset(){const e=this;return e.D=e.T.slice(0),e.M=[],e.I=0,e}update(e){const t=this;"string"==typeof e&&(e=Be.C.P(e));const r=t.M=Le.concat(t.M,e),n=t.I,i=t.I=n+Le.S(e);if(i>9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const s=new h(r);let o=0;for(let e=t.blockSize+n-(t.blockSize+n&t.blockSize-1);i>=e;e+=t.blockSize)t.N(s.subarray(16*o,16*(o+1))),o+=1;return r.splice(0,16*o),t}A(){const e=this;let t=e.M;const r=e.D;t=Le.concat(t,[Le.v(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(o.floor(e.I/4294967296)),t.push(0|e.I);t.length;)e.N(t.splice(0,16));return e.reset(),r}j(e,t,r,n){return e>19?e>39?e>59?e>79?void 0:t^r^n:t&r|t&n|r&n:t^r^n:t&r|~t&n}W(e,t){return t<<e|t>>>32-e}N(e){const r=this,n=r.D,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let s=n[0],a=n[1],c=n[2],l=n[3],f=n[4];for(let e=0;79>=e;e++){16>e||(i[e]=r.W(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=r.W(5,s)+r.j(e,a,c,l)+f+i[e]+r.U[o.floor(e/20)]|0;f=l,l=c,c=r.W(30,a),a=s,s=t}n[0]=n[0]+s|0,n[1]=n[1]+a|0,n[2]=n[2]+c|0,n[3]=n[3]+l|0,n[4]=n[4]+f|0}},Qe={importKey:e=>new Qe.Z(Be.bytes.P(e)),V(e,t,r,n){if(r=r||1e4,0>n||0>r)throw new d("invalid params to pbkdf2");const i=1+(n>>5)<<2;let s,o,a,c,l;const f=new ArrayBuffer(i),u=new m(f);let w=0;const p=Le;for(t=Be.bytes.P(t),l=1;(i||1)>w;l++){for(s=o=e.encrypt(p.concat(t,[l])),a=1;r>a;a++)for(o=e.encrypt(o),c=0;c<o.length;c++)s[c]^=o[c];for(a=0;(i||1)>w&&a<s.length;a++)u.setInt32(w,s[a]),w+=4}return f.slice(0,n/8)},Z:class{constructor(e){const t=this,r=t.H=Oe,n=[[],[]];t.K=[new r,new r];const i=t.K[0].blockSize/32;e.length>i&&(e=(new r).update(e).A());for(let t=0;i>t;t++)n[0][t]=909522486^e[t],n[1][t]=1549556828^e[t];t.K[0].update(n[0]),t.K[1].update(n[1]),t.X=new r(t.K[0])}reset(){const e=this;e.X=new e.H(e.K[0]),e.Y=!1}update(e){this.Y=!0,this.X.update(e)}digest(){const e=this,t=e.X.A(),r=new e.H(e.K[1]).update(t).A();return e.reset(),r}encrypt(e){if(this.Y)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Ge=typeof x!=te&&typeof x.getRandomValues==re,Je="Invalid password",_e="Invalid signature",$e="zipjs-abort-check-password";function et(e){if(Ge)return x.getRandomValues(e);throw new d("Crypto API not supported")}const tt=16,rt={name:"PBKDF2"},nt=r.assign({hash:{name:"HMAC"}},rt),it=r.assign({iterations:1e3,hash:{name:"SHA-1"}},rt),st=["deriveBits"],ot=[8,12,16],at=[16,24,32],ct=10,lt=[0,0,0,0],ft=typeof x!=te,ut=ft&&x.subtle,dt=ft&&typeof ut!=te,wt=Be.bytes,pt=class{constructor(e){const t=this;t.L=[[[],[],[],[],[]],[[],[],[],[],[]]],t.L[0][0][0]||t.B();const r=t.L[0][4],n=t.L[1],i=e.length;let s,o,a,c=1;if(4!==i&&6!==i&&8!==i)throw new d("invalid aes key size");for(t.U=[o=e.slice(0),a=[]],s=i;4*i+28>s;s++){let e=o[s-1];(s%i===0||8===i&&s%i===4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],s%i===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),o[s]=o[s-i]^e}for(let e=0;s;e++,s--){const t=o[3&e?s:s-4];a[e]=4>=s||4>e?t:n[0][r[t>>>24]]^n[1][r[t>>16&255]]^n[2][r[t>>8&255]]^n[3][r[255&t]]}}encrypt(e){return this.O(e,0)}decrypt(e){return this.O(e,1)}B(){const e=this.L[0],t=this.L[1],r=e[4],n=t[4],i=[],s=[];let o,a,c,l;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let f=o=0;!r[f];f^=a||1,o=s[o]||1){let s=o^o<<1^o<<2^o<<3^o<<4;s=s>>8^255&s^99,r[f]=s,n[s]=f,l=i[c=i[a=i[f]]];let u=16843009*l^65537*c^257*a^16843008*f,d=257*i[s]^16843008*s;for(let r=0;4>r;r++)e[r][f]=d=d<<24^d>>>8,t[r][s]=u=u<<24^u>>>8}for(let r=0;5>r;r++)e[r]=e[r].slice(0),t[r]=t[r].slice(0)}O(e,t){if(4!==e.length)throw new d("invalid aes block size");const r=this.U[t],n=r.length/4-2,i=[0,0,0,0],s=this.L[t],o=s[0],a=s[1],c=s[2],l=s[3],f=s[4];let u,w,p,h=e[0]^r[0],m=e[t?3:1]^r[1],y=e[2]^r[2],b=e[t?1:3]^r[3],g=4;for(let e=0;n>e;e++)u=o[h>>>24]^a[m>>16&255]^c[y>>8&255]^l[255&b]^r[g],w=o[m>>>24]^a[y>>16&255]^c[b>>8&255]^l[255&h]^r[g+1],p=o[y>>>24]^a[b>>16&255]^c[h>>8&255]^l[255&m]^r[g+2],b=o[b>>>24]^a[h>>16&255]^c[m>>8&255]^l[255&y]^r[g+3],g+=4,h=u,m=w,y=p;for(let e=0;4>e;e++)i[t?3&-e:e]=f[h>>>24]<<24^f[m>>16&255]<<16^f[y>>8&255]<<8^f[255&b]^r[g++],u=h,h=m,m=y,y=b,b=u;return i}},ht=class{constructor(e,t){this.G=e,this.J=t,this._=t}reset(){this._=this.J}update(e){return this.$(this.G,e,this._)}ee(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,r=e>>8&255,n=255&e;255===t?(t=0,255===r?(r=0,255===n?n=0:++n):++r):++t,e=0,e+=t<<16,e+=r<<8,e+=n}return e}te(e){0===(e[0]=this.ee(e[0]))&&(e[1]=this.ee(e[1]))}$(e,t,r){let n;if(!(n=t.length))return[];const i=Le.S(t);for(let i=0;n>i;i+=4){this.te(r);const n=e.encrypt(r);t[i]^=n[0],t[i+1]^=n[1],t[i+2]^=n[2],t[i+3]^=n[3]}return Le.F(t,i)}},mt=Qe.Z;let yt=ft&&dt&&typeof ut.importKey==re,bt=ft&&dt&&typeof ut.deriveBits==re;class gt extends k{constructor({password:e,rawPassword:t,encryptionStrength:r,checkPasswordOnly:n}){super({start(){Ft(this,e,t,r)},async transform(e,t){const r=this,{password:i,strength:s,re:o,ready:a}=r;i?(await(async(e,t,r,n)=>{const i=await vt(e,t,r,Rt(n,0,ot[t])),s=Rt(n,ot[t]);if(i[0]!=s[0]||i[1]!=s[1])throw new d(Je)})(r,s,i,Rt(e,0,ot[s]+2)),e=Rt(e,ot[s]+2),n?t.error(new d($e)):o()):await a;const c=new w(e.length-ct-(e.length-ct)%tt);t.enqueue(xt(r,e,c,0,ct,!0))},async flush(e){const{ne:t,ie:r,pending:n,ready:i}=this;if(r&&t){await i;const s=Rt(n,0,n.length-ct),o=Rt(n,n.length-ct);let a=ne;if(s.length){const e=Et(wt,s);r.update(e);const n=t.update(e);a=zt(wt,n)}const c=Rt(zt(wt,r.digest()),0,ct);let l=n.length<ct?1:0;for(let e=0;ct>e;e++)l|=c[e]^o[e];if(l)throw new d(_e);e.enqueue(a)}}})}}class St extends k{constructor({password:e,rawPassword:t,encryptionStrength:r}){let n;super({start(){Ft(this,e,t,r)},async transform(e,t){const r=this,{password:n,strength:i,re:s,ready:o}=r;let a=ne;n?(a=await(async(e,t,r)=>{const n=et(new w(ot[t]));return Ke(n,await vt(e,t,r,n))})(r,i,n),s()):await o;const c=new w(a.length+e.length-e.length%tt);c.set(a,0),t.enqueue(xt(r,e,c,a.length,0))},async flush(e){const{ne:t,ie:r,pending:i,ready:s}=this;if(r&&t){await s;let o=ne;if(i.length){const e=t.update(Et(wt,i));r.update(e),o=zt(wt,e)}n.signature=zt(wt,r.digest()).slice(0,ct),e.enqueue(Ke(o,n.signature))}}}),n=this}}function Ft(e,t,n,i){r.assign(e,{ready:new b(t=>e.re=t),password:kt(t,n),strength:i-1,pending:ne})}function xt(e,t,r,n,i,s){const{ne:o,ie:a,pending:c}=e;c.length&&(t=Ke(c,t));const l=t.length-i;let f;for(r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new w(t)).set(r,0)}return e})(r,n+(l-l%tt)),f=0;l-tt>=f;f+=tt){const e=Et(wt,Rt(t,f,f+tt));s&&a.update(e);const i=o.update(e);s||a.update(i),r.set(zt(wt,i),f+n)}return e.pending=Rt(t,f),r}async function vt(e,n,i,s){e.password=null;const o=await(async(e,t,r,n,i)=>{if(!yt)return Qe.importKey(t);try{return await ut.importKey("raw",t,r,!1,i)}catch{return yt=!1,Qe.importKey(t)}})(0,i,nt,0,st),a=await(async(e,t,r)=>{if(!bt)return Qe.V(t,e.salt,it.iterations,r);try{return await ut.deriveBits(e,t,r)}catch{return bt=!1,Qe.V(t,e.salt,it.iterations,r)}})(r.assign({salt:s},it),o,8*(2*at[n]+2)),c=new w(a),l=Et(wt,Rt(c,0,at[n])),f=Et(wt,Rt(c,at[n],2*at[n])),u=Rt(c,2*at[n]);return r.assign(e,{keys:{key:l,se:f,passwordVerification:u},ne:new ht(new pt(l),t.from(lt)),ie:new mt(f)}),u}function kt(e,t){return t===$?He(e):t}function Rt(e,t,r){return e.subarray(t,r)}function zt(e,t){return e.R(t)}function Et(e,t){return e.P(t)}class Pt extends k{constructor({password:e,rawPassword:t,passwordVerification:r,checkPasswordOnly:n}){super({start(){Ut(this,e,t,r)},transform(e,t){const r=this;if(r.password||r.rawPassword){const t=Dt(r,e.subarray(0,12));if(r.password=r.rawPassword=null,0!=(t[11]^r.passwordVerification))throw new d(Je);e=e.subarray(12)}n?t.error(new d($e)):t.enqueue(Dt(r,e))}})}}class Tt extends k{constructor({password:e,rawPassword:t,passwordVerification:r}){super({start(){Ut(this,e,t,r)},transform(e,t){const r=this;let n,i;if(r.password||r.rawPassword){r.password=r.rawPassword=null;const t=et(new w(12));t[11]=r.passwordVerification,n=new w(e.length+t.length),n.set(Mt(r,t),0),i=12}else n=new w(e.length),i=0;n.set(Mt(r,e),i),t.enqueue(n)}})}}function Ut(e,t,n,i){r.assign(e,{password:t,rawPassword:n,passwordVerification:i}),((e,t,n)=>{const i=[305419896,591751049,878082192];if(r.assign(e,{keys:i,oe:new Ve(i[0]),ae:new Ve(i[2])}),n)for(let t=0;t<n.length;t++)It(e,n[t]);else for(let r=0;r<t.length;r++)It(e,t.charCodeAt(r))})(e,t,n)}function Dt(e,t){const r=new w(t.length);for(let n=0;n<t.length;n++)r[n]=Ct(e)^t[n],It(e,r[n]);return r}function Mt(e,t){const r=new w(t.length);for(let n=0;n<t.length;n++)r[n]=Ct(e)^t[n],It(e,t[n]);return r}function It(e,t){let[,r]=e.keys;e.oe.append([t]);const n=~e.oe.get();r=At(o.imul(At(r+Nt(n)),134775813)+1),e.ae.append([r>>>24]);const i=~e.ae.get();e.keys=[n,r,i]}function Ct(e){const t=2|e.keys[2];return Nt(o.imul(t,1^t)>>>8)}function Nt(e){return 255&e}function At(e){return 4294967295&e}function jt(e){if(e instanceof R)return e;const t=e.getReader();return new R({async pull(e){const{value:r,done:n}=await t.read();n?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})}function Wt(e){if(e instanceof z)return e;const t=e.getWriter();return new z({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const Zt="Invalid uncompressed size",Vt="Invalid compressed data",qt="deflate-raw",Ht="gzip",Kt=[31,139,8];class Xt extends k{constructor(e,{chunkSize:t,CompressionStreamZlib:r,CompressionStream:n}){super({});const{compressed:i,encrypted:s,useCompressionStream:o,zipCrypto:a,signed:c,level:l,deflate64:f,format:u,compressionMethod:d}=e,w=this;let p,h,y,b=super.readable;const g=u&&Te(u),S=c&&i&&!f&&!g&&(!s||a)&&!(!o||!n);if(s&&!a||!c||S||(p=new qe,b=_t(b,p)),i)if(g)b=$t(b,Gt(g.CompressionStream,u,{level:l,chunkSize:t,compressionMethod:d}));else if(S)y=new Yt,b=$t(b,new n(Ht)),b=_t(b,y);else try{b=Jt(b,o,{level:l,chunkSize:t},n,r)}catch(e){let t;try{t=new n(Ht)}catch{throw e}b=$t(b,t),b=_t(b,new Yt)}s&&(a?b=_t(b,new Tt(e)):(h=new St(e),b=_t(b,h))),Qt(w,b,()=>{let e;s&&!a&&(e=h.signature),s&&!a||!c||(e=S?y.signature:new m(p.value.buffer).getUint32(0)),w.signature=e})}}class Yt extends k{constructor(){let e,t=10,r=new w(0);super({transform(e,n){if(t){const r=o.min(t,e.length);if(t-=r,!(e=e.subarray(r)).length)return}const i=r.length+e.length;if(8>=i)return void(r=Ke(r,e));const s=i-8,a=o.min(s,r.length);n.enqueue(Ke(r.subarray(0,a),e.subarray(0,s-a))),r=Ke(r.subarray(a),e.subarray(s-a))},flush(){const t=Ye(r);e.signature=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class Lt extends k{constructor(e,t){super({start(e){const t=new w(10);t.set(Kt),e.enqueue(t)},transform(e,t){t.enqueue(e)},flush(r){const n=new w(8),i=Ye(n);i.setUint32(0,e,!0),i.setUint32(4,t,!0),r.enqueue(n)}})}}class Bt extends k{constructor(e,{chunkSize:t,DecompressionStreamZlib:r,DecompressionStream:n}){super({});const{zipCrypto:i,encrypted:s,signed:o,signature:a,compressed:c,useCompressionStream:l,deflate64:f,format:u,compressionMethod:w,rawBitFlag:p,outputSize:h}=e;let y,b,g=super.readable;if(s&&(i?g=_t(g,new Pt(e)):(b=new gt(e),g=_t(g,b))),c){const e=u&&Te(u);if(e)g=$t(g,Gt(e.DecompressionStream,u,{chunkSize:t,compressionMethod:w,rawBitFlag:p,uncompressedSize:h}));else try{g=Jt(g,l,{chunkSize:t,deflate64:f},n,r)}catch(e){if(f||s&&!i||a===$||h===$)throw e;let t;try{t=new n(Ht)}catch{throw e}g=_t(g,new Lt(a,h)),g=$t(g,t)}g=(e=>{const t=e.getReader();return new R({async pull(e){let r;try{r=await t.read()}catch(e){if(e&&e.message)throw e;const t=new d(Vt);throw t.cause=e,t}const{value:n,done:i}=r;i?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})})(g)}s&&!i||!o||(y=new qe,g=_t(g,y)),Qt(this,g,()=>{if((!s||i)&&o){const e=new m(y.value.buffer);if(a!=e.getUint32(0,!1))throw new d(_e)}})}}const Ot=new c;function Qt(e,t,n){t=_t(t,new k({flush:n})),r.defineProperty(e,"readable",{get:()=>t})}function Gt(e,t,r){if(!e)throw new d("Compression method not supported");return new e(t,r)}function Jt(e,t,r,n,i){const s=t&&n?n:i||n,o=r.deflate64?"deflate64-raw":qt;let a;try{a=new s(o,r)}catch(e){if(!t||!i||s==i)throw e;a=new i(o,r)}return $t(e,a)}function _t(e,t){return jt(e).pipeThrough(t)}function $t(e,t){const r=t.writable.getWriter(),n=e.getReader();return(async()=>{try{for(;;){await r.ready;const e=await n.read();if(e.done){await r.close();break}await r.write(e.value)}}catch(e){await(async(e,t)=>{try{await e.abort(t)}catch{}})(r,e),await(async(e,t)=>{try{await e.cancel(t)}catch{}})(n,e)}})(),t.readable}const er="data",tr="deflate",rr="inflate";class nr extends k{constructor(e,t){super({});const n=this,{codecType:i}=e;let s;i.startsWith(tr)?s=Xt:i.startsWith(rr)&&(s=Bt),n.outputSize=0;let o=0;const a=new s(e,t),c=super.readable,l=new k({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){r.assign(n,{inputSize:o})}}),f=new k({transform(t,r){if(t&&t.length&&(r.enqueue(t),n.outputSize+=t.length,e.outputSize!==$&&n.outputSize>e.outputSize))throw new d(Zt)},flush(){const{signature:e}=a;r.assign(n,{signature:e,inputSize:o})}});r.defineProperty(n,"readable",{get:()=>c.pipeThrough(l).pipeThrough(a).pipeThrough(f)})}}class ir extends k{constructor(e){const t=[];let r=0;function n(){const n=new w(e);let i=0;for(;e>i;){const r=t[0],s=e-i;r.length>s?(n.set(r.subarray(0,s),i),t[0]=r.subarray(s),i+=s):(n.set(r,i),i+=r.length,t.shift())}return r-=e,n}i.isFinite(e)&&e>=1||(e=65536),super({transform(i,s){for(t.push(i),r+=i.length;r>e;)s.enqueue(n())},flush(e){r&&e.enqueue(((e,t)=>{const r=new w(t);let n=0;for(const t of e)r.set(t,n),n+=t.length;return r})(t,r))}})}}const sr={type:"module"},or="error";let ar,cr,lr,fr,ur=!0;try{ur=typeof structuredClone==re&&structuredClone(new DOMException("","AbortError")).code!==$}catch{}class dr{constructor(e,{readable:t,writable:n},{options:i,config:s,ce:o,useWebWorkers:a,transferStreams:c,workerURI:l},f){const{signal:u}=o;return r.assign(e,{le:!0,fe:(e.fe||0)+1,readable:t.pipeThrough(new ir(le(s))).pipeThrough(new wr(o),{signal:u}),writable:n,options:r.assign({},i),workerURI:l,transferStreams:c,terminate:()=>new b(t=>{const{ue:r,le:n}=e;r?(n?e.de=t:(r.terminate(),t()),e.we=null):t()}),pe(){if(e.le){const{de:t}=e;t&&(e.de=null,e.he=!0,e.ue.terminate(),t()),e.le=!1,f(e)}}}),ar===$&&(ar=typeof U!=te),(a&&ar?mr:hr)(e,s)}}class wr extends k{constructor({onstart:e,onprogress:t,size:r,onend:n}){let i=0;super({async start(){e&&await pr(e,r)},async transform(e,n){i+=e.length,t&&await pr(t,i,r),n.enqueue(e)},async flush(){n&&await pr(n,i)}})}}async function pr(e,...t){try{await e(...t)}catch{}}function hr(e,t){return{run:()=>yr(e,t)}}function mr(e,t){const{baseURI:n,chunkSize:s,workerStartupTimeout:o}=t;let{wasmURI:a}=t;if(!e.we){let c;typeof a==re&&(a=a());try{c=gr(e.workerURI,n,e)}catch{return ar=!1,hr(e,t)}r.assign(e,{ue:c,me:!1,he:!1,we:{run:async()=>{try{return await(async(e,t)=>{let n,s;const o=new b((e,t)=>{n=e,s=t});r.assign(e,{reader:null,writer:null,ye:n,be:s,result:o});const{readable:a,options:c}=e,{writable:l,closed:f,ge:u}=(e=>{const t=new AbortController,{writable:r,readable:n}=new k,i=n.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return i.catch(()=>{}),{writable:r,closed:i,ge:()=>t.abort()}})(e.writable);let w;try{w=xr({type:"start",options:c,config:t,readable:a,writable:l},e)}catch(t){u();try{await f}catch{}throw e.pe(),t}w||r.assign(e,{reader:a.getReader(),writer:l.getWriter()});const{workerStartupTimeout:p}=t;e.me||!i.isFinite(p)||0>p||(e.Se=setTimeout(()=>(e=>{if(e.Se=null,e.me)return;const{be:t,writer:r}=e;if(br(e),e.ue=null,t){const e=new d("Worker startup timeout");e.Fe=!0,t(e),r&&r.releaseLock()}})(e),p));try{const e=await o;return await h(),await f,e}catch(e){await h(),u();try{await f}catch{}throw e}async function h(){if(!w&&!l.locked)try{await l.getWriter().close()}catch{}}})(e,{chunkSize:s,wasmURI:a,baseURI:n,workerStartupTimeout:o})}catch(r){if(r&&r.Fe){ar=!1;const{reader:r}=e;return r&&r.releaseLock(),e.reader=null,e.writer=null,yr(e,t)}throw r}}}})}return e.we}async function yr({options:e,readable:t,writable:r,pe:n},i){let s;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(tr),r=t?i.CompressionStreamZlib:i.DecompressionStreamZlib,n=t?i.CompressionStream:i.DecompressionStream;if(e.useCompressionStream){if(r&&r.xe&&!(e=>{if(!e)return!1;let t=Ot.get(e);if(t===$){try{new e(qt),t=!0}catch{t=!1}Ot.set(e,t)}return t})(n))try{await void 0}catch{}}else try{await void 0}catch{r&&!r.xe||(e.useCompressionStream=!0)}}s=new nr(e,i),await t.pipeThrough(s).pipeThrough(new ir(le(i))).pipeTo(r,{preventClose:!0,preventAbort:!0});const{signature:n,inputSize:o,outputSize:a}=s;return{signature:n,inputSize:o,outputSize:a}}catch(e){throw s&&(e.outputSize=s.outputSize),e}finally{n()}}function br(e){const{ue:t}=e;if(t)try{t.terminate()}catch{}e.we=null}function gr(e,t,n,i,s=!0){let o,a,c;if(lr===$||cr!==e){const r=typeof e==re;a=r?e(s):e;const l=a.startsWith("data:"),f=a.startsWith("blob:");if(l||f){i===$&&(i=!1),i&&(c=sr);try{o=new U(a,c)}catch(s){if(f)try{u.revokeObjectURL(a)}catch{}if(r&&f)return gr(e,t,n,i,!1);if(i)throw s;return gr(e,t,n,!0,!1)}}else{i===$&&(i=!0),i&&(c=sr);try{a=new u(a,t)}catch{}try{o=new U(a,c)}catch(r){if(i)throw r;return gr(e,t,n,!1,s)}}cr=e,lr=a,fr=c}else o=new U(lr,fr);return o.addEventListener("message",e=>{n.me=!0,Sr(n),(async({data:e},t)=>{const{type:n,value:i,messageId:s,result:o,error:a}=e,{reader:c,writer:l,ye:f,be:u,pe:p,fe:h}=t,m=()=>t.fe!=h;try{if(a){const{message:e,stack:t,code:n,name:i,outputSize:s,cause:o}=a,c=new d(e);r.assign(c,{stack:t,code:n,name:i,outputSize:s}),o&&(c.cause=r.assign(new d(o.message),{name:o.name})),y(c)}else{if("pull"==n){const{value:e,done:r}=await c.read();m()||xr({type:er,value:e,done:r,messageId:s},t)}n==er&&(await l.ready,await l.write(new w(i)),m()||xr({type:"ack",messageId:s},t)),"close"==n&&y(null,o)}}catch(a){m()||(br(t),y(a))}function y(e,t){m()||(e?u(e):f(t),l&&l.releaseLock(),p())}})(e,n)}),o.addEventListener(or,e=>Fr(e,n)),o.addEventListener("messageerror",e=>Fr(e,n)),o}function Sr(e){const{Se:t}=e;t&&(clearTimeout(t),e.Se=null)}function Fr(e,t){e.preventDefault&&e.preventDefault(),Sr(t);const{me:n,be:i,writer:s,pe:o}=t;if(br(t),n||(t.ue=null),i){let t=e.error||new d(e.message||or);n||(t=r.assign(new d(t.message||or),{Fe:!0})),i(t),s&&s.releaseLock(),n&&o()}}function xr(e,{ue:t,writer:r,transferStreams:n,me:i}){try{const{value:r,readable:s,writable:o}=e,a=[];if(r&&(e.value=Xe(r),a.push(e.value.buffer)),n&&ur&&i?(s&&a.push(s),o&&a.push(o)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch{ur=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw r&&r.releaseLock(),e}}let vr=[];const kr=[];let Rr,zr,Er=0;async function Pr(e,t){const{options:r,config:n}=t,{transferStreams:s,useWebWorkers:o,useCompressionStream:a,compressed:c,signed:l,encrypted:f,format:d,codecURI:w}=r,{workerURI:p,maxWorkers:h}=n;d&&(w&&(r.codecURI=((e,t)=>{try{return new u(e,t).toString()}catch{return e}})(w,n.baseURI)),await(async(e,t)=>{!Ee.has(e)&&t&&Ue(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))})(d,r.codecURI)),t.transferStreams=s||s===$&&n.transferStreams;const m=!c&&!l&&!f,y=d===$||!!r.codecURI;return t.useWebWorkers=!m&&y&&(o||o===$&&n.useWebWorkers),t.workerURI=t.useWebWorkers&&p?p:$,r.useCompressionStream=a||a===$&&n.useCompressionStream,(await(async()=>{const r=vr.find(e=>!e.le);if(r)return Ir(r),new dr(r,e,t,g);if(vr.length<h){const r={ve:Er};return Er++,vr.push(r),new dr(r,e,t,g)}return new b(r=>{kr.push({resolve:r,stream:e,ke:t}),zr=n.workerStarvationTimeout,Tr()})})()).run();function g(e){if(Ur(),kr.length){const[{resolve:t,stream:r,ke:n}]=kr.splice(0,1);t(new dr(e,r,n,g)),Tr()}else e.ue?(Ir(e),((e,t)=>{const{config:r}=t,{terminateWorkerTimeout:n}=r;i.isFinite(n)&&n>=0&&(e.he?e.he=!1:e.Re=setTimeout(async()=>{vr=vr.filter(t=>t!=e);try{await e.terminate()}catch{}},n))})(e,t)):vr=vr.filter(t=>t!=e)}}function Tr(){!Rr&&kr.length&&i.isFinite(zr)&&zr>=0&&(Rr=setTimeout(Dr,zr))}function Ur(){Rr&&(clearTimeout(Rr),Rr=null)}function Dr(){if(Rr=null,kr.length){const[{resolve:e,stream:t,ke:n}]=kr.splice(0,1),i=r.assign({},n,{useWebWorkers:!1,workerURI:$});e(new dr({},t,i,Mr)),Tr()}}function Mr(){Ur(),Tr()}function Ir(e){const{Re:t}=e;t&&(clearTimeout(t),e.Re=null)}const Cr="HTTP error ",Nr="HTTP Range not supported",Ar="HTTP resource changed",jr="Writer iterator completed too soon",Wr="Writer not initialized",Zr="Content-Range",Vr="Range",qr="GET",Hr="bytes",Kr=16777216,Xr="writable",Yr=Symbol();class Lr{constructor(){this.size=0}init(){this.initialized=!0}}class Br extends Lr{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:r=le(ce())}={}){const n=this;let i=0;return new R({async pull(s){const a=t===$?r:o.min(r,t-i),c=await vn(n,e+i,a);s.enqueue(c),i+r>t||t===$&&!c.length&&a?s.close():i+=r}})}}class Or extends Lr{constructor(){super();const e=this,t=new z({write(t){if(!e.initialized)throw new d(Wr);return e.writeUint8Array(Xe(t))}});r.defineProperty(e,Xr,{get:()=>t})}writeUint8Array(){}}let Qr,Gr;class Jr extends Br{constructor(e){super(),r.assign(this,{blob:e,size:e.size}),Gr||(Gr=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,r=await e.read();for(;!r.done;)t+=r.value.length,r=await e.read();Qr=1==t}catch{Qr=!1}})())}createReadable(e){const{blob:t,size:r}=this,{offset:n=0,size:i=r-n}=e||{};return n||r>i?Qr?jt(t.slice(n,n+i).stream()):super.createReadable(e):jt(t.stream())}async readUint8Array(e,t){const r=this,n=e+t,i=e||n<r.size?r.blob.slice(e,n):r.blob;let s=await i.arrayBuffer();return s.byteLength>t&&(s=s.slice(e,n)),new w(s)}}class _r extends Lr{constructor(e){super();const t=this,n=new k;if(r.defineProperty(t,Xr,{get:()=>n.writable}),typeof y.prototype.stream!=re||new y([]).stream()instanceof R){const r=[];e&&r.push(["Content-Type",e]),t.blob=new f(n.readable,{headers:r}).blob()}else{const r=[];t.blob=n.readable.pipeTo(new z({write(e){r.push(e)}})).then(()=>new y(r,{type:e}))}t.blob.catch(()=>{})}getData(){return this.blob}}class $r extends Br{constructor(e,t){super(),tn(this,e,t)}async init(){await rn(this,hn,un),super.init()}createReadable(e){const t=this,{useRangeHeader:r,forceRangeRequests:n,size:s}=t;if((r||n)&&s!==$){const{offset:r=0,size:n=s-r}=e||{};if(n>0&&s>r)return((e,t,r)=>{let n,s=t,a=0,c=r;return new R({start:()=>l(),async pull(e){n||await l();const{value:t,done:r}=await n.read();if(r)throw new d(Nr);const i=t.length>a?t.subarray(0,a):t;a-=i.length,c-=i.length,i.length&&e.enqueue(i),a||(await(async()=>{const e=n;n=$,await e.cancel()})(),c||e.close())},cancel:e=>n&&n.cancel(e)});async function l(){const t=o.min(e.maximumRangeSize,c),r=await hn(qr,e,ln(e,s,t));if(206!=r.status)throw new d(Nr);const l=r.headers.get(Zr);if(l){const e=i(l.trim().split(/[\s-]+/)[1]);if(!i.isNaN(e)&&e!=s)throw new d(Nr)}cn(e,r),an(e,r),s+=t,a=t,n=r.body.getReader()}})(t,r,o.min(n,s-r))}return super.createReadable(e)}readUint8Array(e,t){return nn(this,e,t,hn,un)}}class en extends Br{constructor(e,t){super(),tn(this,e,t)}async init(){await rn(this,mn,dn),super.init()}readUint8Array(e,t){return nn(this,e,t,mn,dn)}}function tn(e,t,n){const{preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:o,combineSizeEocd:a,checkResourceChanges:c=!0,maximumRangeSize:l=Kr,fetch:f}=n;delete(n=r.assign({},n)).preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.combineSizeEocd,delete n.checkResourceChanges,delete n.maximumRangeSize,delete n.useXHR,delete n.fetch,r.assign(e,{url:t,options:n,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:o,combineSizeEocd:a,checkResourceChanges:c,maximumRangeSize:l,fetch:f})}async function rn(e,t,r){const{url:n,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:o,combineSizeEocd:a}=e;if((e=>{const{baseURI:t}=ce(),{protocol:r}=new u(e,t);return"http:"==r||"https:"==r})(n)&&(s||o)&&(void 0===i||i)){const n=await t(qr,e,ln(e,a?-22:void 0)),i=n.headers.get("Accept-Ranges");if(!(o||i&&i.toLowerCase()==Hr))throw new d(Nr);{if(a){const t=new w(await n.arrayBuffer());206==n.status&&t.length==H&&(e.ze=t)}an(e,n);const i=sn(n);i===$?await pn(e,t,r):e.size=i}}else await pn(e,t,r)}async function nn(e,t,r,n,s){const{useRangeHeader:o,forceRangeRequests:a,ze:c,size:l,options:f}=e;if(o||a){if(c&&t==l-H&&r==H)return c;if(l>t&&0!==r){t+r>l&&(r=l-t);const s=await n(qr,e,ln(e,t,r));if(206!=s.status)throw new d(Nr);const o=s.headers.get(Zr);if(o){const e=i(o.trim().split(/[\s-]+/)[1]);if(!i.isNaN(e)&&e!=t)throw new d(Nr)}cn(e,s),an(e,s);const a=new w(await s.arrayBuffer());if(a.length!=r)throw new d(Nr);return a}return ne}{const{data:n}=e;return n||await s(e,f),e.data.subarray(t,t+r)}}function sn(e){const t=e.headers.get(Zr);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=i(e);if(!i.isNaN(t))return t}}}function on({headers:e}){return{Ee:e.get("Etag")||$,lastModified:e.get("Last-Modified")||$}}function an(e,t){const{checkResourceChanges:r,Pe:n}=e;r&&!n&&206==t.status&&(e.Pe=on(t))}function cn(e,t){const{checkResourceChanges:n,Pe:i,size:s}=e;if(n){const e=sn(t);if(e!==$&&s!==$&&e!=s)throw new d(Ar);if(i){const e=on(t);if(r.entries(i).some(([t,r])=>r!==$&&e[t]!==$&&r!=e[t]))throw new d(Ar)}}}function ln(e,t=0,n=1){return r.assign({},fn(e),{[Vr]:Hr+"="+(0>t?t:t+"-"+(t+n-1))})}function fn({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?r.fromEntries(t):t}async function un(e){await wn(e,hn)}async function dn(e){await wn(e,mn)}async function wn(e,t){const r=await t(qr,e,fn(e));e.data=new w(await r.arrayBuffer()),e.size=e.data.length}async function pn(e,t,r){if(e.preventHeadRequest)await r(e,e.options);else{const n=await t("HEAD",e,fn(e)),s=n.headers.get("Content-Length");s&&!n.headers.get("Content-Encoding")?e.size=i(s):await r(e,e.options)}}async function hn(e,{fetch:t=fetch,options:n,url:i},s){const o=await t(i,r.assign({},n,{method:e,headers:s}));if(400>o.status)return o;throw 416==o.status?new d(Nr):new d(Cr+(o.statusText||o.status))}function mn(e,{url:t},n){return new b((i,s)=>{const o=new XMLHttpRequest;if(o.addEventListener("load",()=>{if(400>o.status){const e=[];o.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const r=t.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(r)}),i({status:o.status,arrayBuffer:()=>o.response,headers:new c(e)})}else s(416==o.status?new d(Nr):new d(Cr+(o.statusText||o.status)))},!1),o.addEventListener("error",e=>s(e.detail?e.detail.error:new d("Network error")),!1),o.open(e,t),n)for(const e of r.entries(n))o.setRequestHeader(e[0],e[1]);o.responseType="arraybuffer",o.send()})}class yn extends Br{constructor(e,t={}){super(),r.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new en(e,t):new $r(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(e){return this.reader.createReadable(e)}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class bn extends Br{constructor(e){super(),this.Te=e}async init(){const e=this,{Te:t}=e;e.Ue=0,await b.all(t.map(e=>xn(e))),e.De=t.map(t=>{const r=e.size;return e.size+=t.size,r}),super.init()}Me(e){const{De:t,size:r}=this,n=t[e];return n===$?r:n}async readUint8Array(e,t){const r=this,{Te:n}=this;let i,s=0,a=e;for(;n[s]&&a>=n[s].size;)a-=n[s].size,s++;const c=n[s];if(c){const n=c.size;if(a+t>n){const s=n-a;i=Ke(await vn(c,a,s),await r.readUint8Array(e+s,t-s))}else i=await vn(c,a,t)}else i=ne;return r.Ue=o.max(s,r.Ue),i}}class gn extends Lr{constructor(e,t=4294967295){super();const n=this;let i,s,o;r.assign(n,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const a=new z({async write(t){if(t===Yr)return void(o&&await l());const{availableSize:r}=n;if(o)t.length<r?await c(t):(await c(t.subarray(0,r)),await l(),t.length>r&&await this.write(t.subarray(r)));else{const{value:r,done:a}=await e.next();if(a&&!r)throw new d(jr);i=r,i.size=0,i.maxSize&&(n.maxSize=i.maxSize),n.availableSize=n.maxSize,await xn(i),s=r.writable,o=s.getWriter(),await this.write(t)}},async close(){o&&(await o.ready,await f())},async abort(e){o&&await o.abort(e)}});async function c(e){const t=e.length;t&&(await o.ready,await o.write(e),i.size+=t,n.availableSize-=t)}async function l(){await f(),n.diskOffset+=i.size,n.diskNumber++,o=null,n.availableSize=n.maxSize}async function f(){await o.close()}r.defineProperty(n,Xr,{get:()=>a})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(Yr)}finally{e.releaseLock()}}}class Sn{constructor(e){return t.isArray(e)&&(e=new bn(e)),(e instanceof R||typeof e.getReader==re)&&(e={readable:jt(e)}),e}}class Fn{constructor(e){return e.writable===$&&typeof e.next==re&&(e=new gn(e)),(e instanceof z||typeof e.getWriter==re)&&(e={writable:Wt(e)}),e.size===$&&(e.size=0),e}}async function xn(e,t){if(!e.init||e.initialized)return b.resolve();await e.init(t)}function vn(e,t,r){return e.readUint8Array(t,r)}const kn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Rn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let r=0;r<e.length;r++)t+=kn[e[r]];return t}})(e):new S(t,{ignoreBOM:!0}).decode(e)}const zn="filename",En="rawFilename",Pn="comment",Tn="rawComment",Un="uncompressedSize",Dn="compressedSize",Mn="offset",In="diskNumberStart",Cn="lastModDate",Nn="rawLastModDate",An="lastAccessDate",jn="creationDate",Wn="rawCreationDate",Zn="internalFileAttributes",Vn="externalFileAttributes",qn="msdosAttributesRaw",Hn="msdosAttributes",Kn="msDosCompatible",Xn="zip64",Yn="encrypted",Ln="version",Bn="versionMadeBy",On="zipCrypto",Qn="directory",Gn="executable",Jn="compressionMethod",_n="signature",$n="extraField",ei="unixMode",ti="setuid",ri="setgid",ni="sticky",ii=[zn,En,Un,Dn,Cn,Nn,Pn,Tn,An,jn,Wn,Mn,In,Zn,Vn,qn,Hn,Kn,Xn,Yn,Ln,Bn,On,Qn,Gn,Jn,_n,$n,"extraFieldUnix","extraFieldInfoZip","uid","gid",ei,ti,ri,ni,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class si{constructor(e){ii.forEach(t=>this[t]=e[t])}}const oi="password",ai="rawPassword",ci="passThrough",li="signal",fi="checkAmbiguity",ui="useWebWorkers",di="useCompressionStream",wi="transferStreams",pi="preventClose",hi="offset",mi="usdz",yi="strictness",bi="strict",gi="tolerant",Si="File format is not recognized",Fi="End of central directory not found",xi="End of Zip64 central directory locator not found",vi="Central directory header not found",ki="Local file header not found",Ri="Zip64 extra field not found",zi="File contains encrypted entry",Ei="Encryption method not supported",Pi="Compression method not supported",Ti="Split zip file",Ui="Overlapping entry found",Di="Ambiguous archive",Mi="Encrypted central directory is not supported",Ii="utf-8",Ci="cp437",Ni=[[Un,M],[Dn,M],[Mn,M],[In,I]],Ai={[I]:{Ie:cs,bytes:4},[M]:{Ie:ls,bytes:8}};class ji{constructor(e,t={}){r.assign(this,{reader:new Sn(e),options:t,config:ce(),Ce:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:n}=t;const{config:i}=t;if(await xn(n),n.size!==$&&n.readUint8Array||(n=new Jr(await new f(n.readable).blob()),await xn(n)),n.size<H)throw new d(Si);const s=Bi(ns(t,e,yi),ns(t,e,fi)),a=s==bi,c=s!=gi,u=((e,t)=>e!==$?e:t==bi?0:t==gi?1/0:I)(ns(t,e,"maxAppendedDataSize"),s),{Ne:w,Ae:p}=await(async(e,t,r)=>{const{size:n}=e,i=o.min(n,65557),s={count:Oi};let a,c,l=0;for await(const[r,o,f,u,d]of _i(e,i)){const i=as(r,u+20);if(d+H+i==n){const i=await es(e,r,o,u,d,n,s);if(i==Ji){if(a||(a=$i(f,u,d)),l++,!t||l>1)break}else i!=Gi||c||(c=$i(f,u,d))}}return a||(a=c),a||(a=await(async(e,t,r)=>{const{size:n}=e,i=o.min(n,t==1/0?n:65557+t);let s,a;for await(const[t,o,c,l,f]of _i(e,i)){const i=$i(c,l,f);s||(s=i);const u=await es(e,t,o,l,f,n,r);if(u==Ji)return i;u!=Gi||a||(a=i)}return a||s})(e,r,s)),{Ne:a,Ae:l}})(n,c,u);if(!w)throw cs(Ye(await vn(n,0,4)))==A?new d(Ti):new d(Fi);c&&p>1&&rs("multiple end of central directory records");const h=Ye(w);let m=cs(h,12),y=cs(h,16);const g=w.offset,S=as(h,20),F=g+H+S;n.size-F>u&&rs("appended data");let x=as(h,4);const v=n.Ue||0;let R,z,E,P=as(h,6),T=as(h,10),U=0;const D=y==M||m==M||T==I||P==I;if(y!=M&&P!=I&&(y+=Li(n,P)),D){const e=w.offset<K?ne:await vn(n,w.offset-K,K),t=Ye(e);if(e.length==K&&cs(t,0)==q){y=Li(n,cs(t,4))+ls(t,8);let e=await vn(n,y,56),r=Ye(e);const i=w.offset-K-56;if((56>e.length||cs(r,0)!=V)&&y!=i&&i>=0){const t=y;y=i,y>t&&(U=y-t),e=await vn(n,y,56),r=Ye(e)}if(56>e.length||cs(r,0)!=V)throw new d(xi);z=!0,E=ls(r,4)>44,x==I?x=cs(r,16):a&&x!=cs(r,16)&&rs("mismatched zip64 end of central directory record"),P==I?P=cs(r,20):a&&P!=cs(r,20)&&rs("mismatched zip64 end of central directory record"),T==I?T=ls(r,32):a&&T!=ls(r,32)&&rs("mismatched zip64 end of central directory record"),m==M?m=ls(r,40):a&&m!=ls(r,40)&&rs("mismatched zip64 end of central directory record"),y=Li(n,P)+ls(r,48)+U}}const N=m,j=w.offset-(z?76:0);if(y<n.size||(U=n.size-y-m-H,y=n.size-m-H),v!=x)throw new d(Ti);if(0>y)throw new d(Si);let Z=0,X=await vn(n,y,m),Y=Ye(X);if(m){if(4>X.length)throw new d(Si);const e=j-m;if(y!=e&&P==x){let t=!(cs(Y,Z)==W);if(t||0>e||e+4>n.size||(t=cs(Ye(await vn(n,e,4)),0)==W),t){const t=y;y=e,y>t&&(U+=y-t),X=await vn(n,y,m),Y=Ye(X)}}}const G=j-y;if(m==G||0>G||P!=x||(m=G,X=await vn(n,y,m),Y=Ye(X)),0>y||y>=n.size)throw new d(Si);R=y;const J=ns(t,e,"filenameEncoding"),_=ns(t,e,"commentEncoding"),ee=a?new l:$;let te;for(let s=0;T>s;s++){const c=new Zi(n,i,t.options);if(Z+46>X.length||cs(Y,Z)!=W){if(0==s&&(E||Vi(Y)))throw new d(Mi);throw new d(vi)}qi(c,Y,Z+6);const l=!!c.bitFlag.languageEncodingFlag,u=Z+46,w=u+c.filenameLength,p=w+c.extraFieldLength,h=as(Y,Z+4),m=!(h>>8),y=h>>8==3,g=X.subarray(u,w),S=as(Y,Z+32),F=p+S,x=X.subarray(p,F),v=l,z=l,P=cs(Y,Z+38),D=P&C,M={readOnly:!!(1&D),hidden:!!(2&D),system:!!(4&D),directory:!!(16&D),archive:!!(32&D)},N=cs(Y,Z+42),A=ns(t,e,"decodeText")||Rn,j=v?Ii:J||Ci,V=z?Ii:_||Ci;let q=A(g,j);q===$&&(q=Rn(g,j));let H=A(x,V);H===$&&(H=Rn(x,V)),r.assign(c,{index:s,versionMadeBy:h,msDosCompatible:m,compressedSize:0,uncompressedSize:0,je:S,offset:N,diskNumberStart:as(Y,Z+34),internalFileAttributes:as(Y,Z+36),externalFileAttributes:P,msdosAttributesRaw:D,msdosAttributes:M,rawFilename:g,filenameUTF8:v,commentUTF8:z,rawExtraField:X.subarray(w,p),rawComment:x,filename:q,comment:H}),Hi(c,c,Y,Z+6),c.offset+=U,R=o.min(Li(n,c.diskNumberStart)+c.offset,R),a&&(ee.has(c.filename)&&(te=!0),ee.add(c.filename));const K=c.externalFileAttributes>>16&I;c.unixMode===$&&16877&K&&(c.unixMode=K);const G=!!(c.unixMode&B),re=!!(c.unixMode&O),ne=!!(512&c.unixMode),ie=c.unixMode!==$?!!(73&c.unixMode):y&&!!(73&K),se=c.unixMode!==$&&(61440&c.unixMode)==L,oe=(61440&K)==L;r.assign(c,{setuid:G,setgid:re,sticky:ne,unixExternalUpper:K,internalFileAttribute:c.internalFileAttributes,externalFileAttribute:c.externalFileAttributes,executable:ie,directory:se||oe||m&&M.directory||c.filename.endsWith(Q)&&!c.uncompressedSize,zipCrypto:c.encrypted&&!c.extraFieldAES});const ae=new si(c);ae.getData=(e,r)=>c.getData(e,ae,t.Ce,r),ae.arrayBuffer=async e=>{const r=new k,[n]=await b.all([new f(r.readable).arrayBuffer(),c.getData(r,ae,t.Ce,e)]);return n},Z=F;const{onprogress:ce}=e;if(ce)try{await ce(s+1,T,new si(c))}catch{}yield ae}a&&Z!=N&&rs("trailing central directory data"),te&&rs("duplicate filename"),a&&(U||T&&R>0)&&rs("prepended data");const re=ns(t,e,"extractPrependedData"),ie=ns(t,e,"extractAppendedData");return re&&(t.prependedData=R>0?await vn(n,0,R):ne),t.comment=S?await vn(n,g+H,S):ne,ie&&(t.appendedData=F<n.size?await vn(n,F,n.size-F):ne),!0}async getEntries(e={}){const t=[];for await(const r of this.getEntriesGenerator(e))t.push(r);return t}async close(){}}class Wi{constructor(e={}){const{readable:t,writable:r}=new k,n=new ji(t,e).getEntriesGenerator();this.readable=new R({async pull(e){const{done:t,value:r}=await n.next();if(t)return e.close();const i={...r,readable:(()=>{const{readable:e,writable:t}=new k;if(r.getData)return(async()=>{try{await r.getData(t)}catch(e){try{await t.abort(e)}catch{}}})(),e})()};delete i.getData,e.enqueue(i)}}),this.writable=r}}class Zi{constructor(e,t,n){r.assign(this,{reader:e,config:t,options:n})}async getData(e,t,r,n={}){const i=this,{reader:s,index:o,offset:a,diskNumberStart:c,extraFieldAES:l,extraFieldZip64:f,compressionMethod:u,config:w,bitFlag:p,rawBitFlag:h,signature:m,rawLastModDate:y,uncompressedSize:b,compressedSize:g}=i,{dataDescriptor:S}=p,F=t.localDirectory={},x=Li(s,c)+a,v=await vn(s,x,G),k=Ye(v);let R=ns(i,n,oi),E=ns(i,n,ai);const P=ns(i,n,ci);if(R=R&&R.length&&R,E=E&&E.length&&E,l&&99!=l.originalCompressionMethod)throw new d(Pi);if(v.length<G||cs(k,0)!=N)throw new d(ki);qi(F,k,4);const{extraFieldLength:T,filenameLength:U}=F,D=Bi(ns(i,n,yi),ns(i,n,fi))==bi;let M=ne;if(D&&(U||T)){const e=await vn(s,x+G,U+T);M=e.subarray(0,U),F.rawExtraField=e.subarray(U)}else F.rawExtraField=T?await vn(s,x+G+U,T):ne;Hi(i,F,k,4,!0),D&&((e,t,r)=>{const{rawFilename:n}=e;(r.length!=n.length||r.some((e,t)=>e!=n[t]))&&rs("mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&rs("mismatched local file header (general purpose bit flag)"),t.compressionMethod!=e.compressionMethod&&rs("mismatched local file header (compression method)"),t.bitFlag.dataDescriptor||!(t.signature||t.compressedSize||t.uncompressedSize)||t.signature==e.signature&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||rs("mismatched local file header (signature or sizes)")})(i,F,M);const{lastAccessDate:I,creationDate:A}=F;I&&(t.lastAccessDate=I),A&&(t.creationDate=A);const W=i.encrypted&&F.encrypted&&!P,Z=W&&!l;if(P||(t.zipCrypto=Z),W&&!(64&~F.rawBitFlag))throw new d(Ei);const V=P?$:Pe(u);if(0!=u&&8!=u&&9!=u&&!V&&!P)throw new d(Pi);if(W){if(!Z&&(1>l.strength||l.strength>3))throw new d(Ei);if(!R&&!E)throw new d(zi)}const q=x+G+U+T,H=g,K=jt(s.createReadable({offset:q,size:H})),X=ns(i,n,li),Y=ns(i,n,"checkPasswordOnly");let L=ns(i,n,"checkOverlappingEntry");const B=ns(i,n,"checkOverlappingEntryOnly");B&&(L=!0);const{onstart:O,onprogress:Q,onend:J}=n,_=9==u;let ee=ns(i,n,di);_&&(ee=!1);const te={options:{codecType:rr,password:R,rawPassword:E,zipCrypto:Z,encryptionStrength:l&&l.strength,signed:ns(i,n,"checkSignature")&&!P,passwordVerification:Z&&(S?y>>>8&C:m>>>24&C),outputSize:P?g:b,signature:m,compressed:0!=u&&!P,encrypted:W,useWebWorkers:ns(i,n,ui),useCompressionStream:ee,transferStreams:ns(i,n,wi),deflate64:_,format:V?V.format:$,codecURI:V?V.codecURI:$,compressionMethod:u,rawBitFlag:h,checkPasswordOnly:Y},config:w,ce:{signal:X,size:H,onstart:O,onprogress:Q,onend:J}};let re;L&&await(async({reader:e,We:t,index:r,offset:n,signature:i,compressedSize:s,uncompressedSize:o,Ze:a,dataDescriptor:c,extraFieldZip64:l,Ce:f})=>{let u=0;if(c&&(u=l?20:12),u){const r=await vn(e,a+s,u+4);if(r.length==u+4&&cs(Ye(r),0)==j){const e=cs(Ye(r),4);let n,a;l?(n=ls(Ye(r),8),a=ls(Ye(r),16)):(n=cs(Ye(r),8),a=cs(Ye(r),12)),(t.encrypted&&!t.zipCrypto||e==i)&&n==s&&a==o&&(u+=4)}}const w={start:n,end:a+s+u,We:t};for(const[e,t]of f)if(e!=r&&w.start<t.end&&t.start<w.end){const e=new d(Ui);throw e.Ve=t.We,e}f.set(r,w)})({reader:s,We:t,index:o,offset:x,signature:m,compressedSize:g,uncompressedSize:b,Ze:q,dataDescriptor:S||F.bitFlag.dataDescriptor,extraFieldZip64:f||F.extraFieldZip64,Ce:r});try{if(!B){Y&&(e=new z),e=new Fn(e),await xn(e,P?g:b),({writable:re}=e);const{outputSize:t}=await Pr({readable:K,writable:re},te);if(e.size+=t,t!=(P?g:b))throw new d(Zt)}}catch(t){if(t.outputSize!==$&&(e.size+=t.outputSize),!Y||t.message!=$e)throw t}finally{ns(i,n,pi)||!re||re.locked||await re.getWriter().close()}return Y||B?$:e.getData?e.getData():re}}function Vi(e){const t=o.min(e.byteLength,1024)-3;for(let r=0;t>r;r++)if(134630224==cs(e,r))return!0;return!1}function qi(e,t,n){const i=e.rawBitFlag=as(t,n+2),s=!(1&~i),o=cs(t,n+6);r.assign(e,{encrypted:s,version:as(t,n),bitFlag:{level:(6&i)>>1,dataDescriptor:!(8&~i),languageEncodingFlag:(i&Y)==Y},rawLastModDate:o,lastModDate:is(o),filenameLength:as(t,n+22),extraFieldLength:as(t,n+24)})}function Hi(e,t,n,i,s){const{rawExtraField:o}=t,l=t.extraField=new c,f=Ye(o);let u=0;try{for(;u<o.length;){const e=as(f,u),t=as(f,u+2);l.set(e,{type:e,data:o.slice(u+4,u+4+t)}),u+=4+t}}catch{}const w=as(n,i+4);r.assign(t,{signature:cs(n,i+10),compressedSize:cs(n,i+14),uncompressedSize:cs(n,i+18)});const p=l.get(1);p&&(((e,t)=>{t.zip64=!0;const r=Ye(e.data),n=Ni.filter(([e,r])=>t[e]==r),i=n.reduce((e,[,t])=>e+Ai[t].bytes,0);if(e.data.length<i)throw new d(Ri);for(let i=0,s=0;i<n.length;i++){const[o,a]=n[i],c=Ai[a];t[o]=e[o]=c.Ie(r,s),s+=c.bytes}})(p,t),t.extraFieldZip64=p);const h=l.get(28789);h&&(Ki(h,zn,En,t,e),t.extraFieldUnicodePath=h);const m=l.get(25461);m&&(Ki(m,Pn,Tn,t,e),t.extraFieldUnicodeComment=m);const y=l.get(39169);y&&y.data.length>=7?(((e,t,n)=>{const i=Ye(e.data),s=os(i,4);r.assign(e,{qe:os(i,0),vendorId:os(i,2),strength:s,originalCompressionMethod:n,compressionMethod:as(i,5)}),t.compressionMethod=e.compressionMethod})(y,t,w),t.extraFieldAES=y):t.compressionMethod=w;const b=l.get(10);b&&(((e,t)=>{const n=Ye(e.data);let i,s=4;try{for(;s<e.data.length&&!i;){const t=as(n,s),r=as(n,s+2);1==t&&(i=e.data.slice(s+4,s+4+r)),s+=4+r}}catch{}try{if(i&&24==i.length){const n=Ye(i),s=n.getBigUint64(0,!0),o=n.getBigUint64(8,!0),a=n.getBigUint64(16,!0);r.assign(e,{rawLastModDate:s,rawLastAccessDate:o,rawCreationDate:a});const c={lastModDate:ss(s),lastAccessDate:ss(o),creationDate:ss(a)};r.assign(e,c),r.assign(t,c)}}catch{}})(b,t),t.extraFieldNTFS=b);const g=l.get(30805);if(g)Xi(g,t,!1),t.extraFieldUnix=g;else{const e=l.get(30837);e&&(Xi(e,t,!0),t.extraFieldInfoZip=e)}const S=l.get(X);S&&(((e,t,r)=>{if(!e.data.length)return;const n=Ye(e.data),i=os(n,0),s=[],o=[];r?(1&~i||(s.push(Cn),o.push(Nn)),2&~i||(s.push(An),o.push("rawLastAccessDate")),4&~i||(s.push(jn),o.push(Wn))):5>e.data.length||(s.push(Cn),o.push(Nn));let c=1;s.forEach((r,i)=>{if(e.data.length>=c+4){const s=cs(n,c);t[r]=e[r]=new a(1e3*(0|s));const l=o[i];e[l]=s}c+=4})})(S,t,s),t.extraFieldExtendedTimestamp=S);const F=l.get(6534);F&&(t.extraFieldUSDZ=F)}function Ki(e,t,n,i,s){if(5>e.data.length)return void(e.valid=!1);const o=Ye(e.data),a=new Ve;a.append(s[n]);const c=Ye(new w(4));c.setUint32(0,a.get(),!0);const l=cs(o,1);r.assign(e,{version:os(o,0),[t]:Rn(e.data.subarray(5)),valid:!s.bitFlag.languageEncodingFlag&&l==cs(c,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function Xi(e,t,n){try{const i=Ye(e.data);let s,o;if(n){let t=0;const n=os(i,t++),a=os(i,t++);s=Yi(e.data.subarray(t,t+a)),t+=a;const c=os(i,t++);o=Yi(e.data.subarray(t,t+c)),r.assign(e,{version:n,uid:s,gid:o})}else 4>e.data.length||(s=as(i,0),o=as(i,2),r.assign(e,{uid:s,gid:o}));s!==$&&(t.uid=s),o!==$&&(t.gid=o)}catch{}}function Yi(e){const t=new w(4);return t.set(e,0),new m(t.buffer,t.byteOffset,4).getUint32(0,!0)}function Li(e,t){return e.Me?e.Me(t):0}function Bi(e,t){return e===$?t?bi:"balanced":e}const Oi=64,Qi=0,Gi=1,Ji=2;async function*_i(e,t){const r=e.size-t,n=await vn(e,r,t),i=Ye(n);for(let e=n.length-H;e>=0;e--)cs(i,e)==Z&&(yield[i,r,n,e,r+e])}function $i(e,t,r){return{offset:r,buffer:e.slice(t,t+H).buffer}}async function es(e,t,r,n,i,s,o){const a=as(t,n+10),c=cs(t,n+12),l=cs(t,n+16);if(a==I||c==M||l==M)return await ts(e,t,r,i-K,s,o)==q?Ji:Qi;if(!a&&!c)return Gi;const f=as(t,n+6);for(const n of[i-c,Li(e,f)+l])if(await ts(e,t,r,n,s,o)==W)return Ji;return Qi}async function ts(e,t,r,n,i,s){return 0>n||n+4>i?$:r>n?s.count>0?(s.count--,cs(Ye(await vn(e,n,4)),0)):$:cs(t,n-r)}function rs(e){const t=new d(Di);throw t.reason=e,t}function ns(e,t,r){return t[r]===$?e.options[r]:t[r]}function is(e){const t=(4294901760&e)>>16,r=e&I;try{return new a(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&r)>>11,(2016&r)>>5,2*(31&r),0)}catch{}}function ss(e){return new a(i(e/s(1e4)-s(116444736e5)))}function os(e,t){return e.getUint8(t)}function as(e,t){return e.getUint16(t,!0)}function cs(e,t){return e.getUint32(t,!0)}function ls(e,t){return i(e.getBigUint64(t,!0))}var fs=r.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Di,ERR_BAD_FORMAT:Si,ERR_CENTRAL_DIRECTORY_NOT_FOUND:vi,ERR_ENCRYPTED:zi,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Mi,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:xi,ERR_EOCDR_NOT_FOUND:Fi,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Ri,ERR_INVALID_COMPRESSED_DATA:Vt,ERR_INVALID_PASSWORD:Je,ERR_INVALID_SIGNATURE:_e,ERR_INVALID_UNCOMPRESSED_SIZE:Zt,ERR_LOCAL_FILE_HEADER_NOT_FOUND:ki,ERR_OVERLAPPING_ENTRY:Ui,ERR_SPLIT_ZIP_FILE:Ti,ERR_UNSUPPORTED_COMPRESSION:Pi,ERR_UNSUPPORTED_ENCRYPTION:Ei,ZipReader:ji,ZipReaderStream:Wi});const us="File already exists",ds="Zip file comment exceeds 64KB",ws="File entry comment exceeds 64KB",ps="File entry name exceeds 64KB",hs="Version exceeds 65535",ms="The strength must equal 1, 2, or 3",ys="Encryption is not supported in USDZ files",bs="Extra field type exceeds 65535",gs="Extra field data exceeds 64KB",Ss=-2147483648,Fs=2147483647,xs="Zip64 is not supported (set the 'zip64' option to 'true')",vs="Undefined uncompressed size",ks="Undefined reader",Rs="Zip file not empty",zs=new w([7,0,2,0,65,69,3,0,0]),Es="infozip",Ps="unix";let Ts=0;const Us=[];class Ds{constructor(e,t={}){e=new Fn(e);const{availableSize:n=ee,maxSize:i=ee}=e,s=n>0&&n!==ee&&i>0&&i!==ee;r.assign(this,{writer:e,He:s,options:t,config:ce(),files:new c,Ke:new l,offset:t[hi]===$?e.size||e.writable.size||0:t[hi],Xe:t[hi]===$?0:t[hi]-(e.size||e.writable.size||0),Ye:new l,Le:0,Be:$})}async prependZip(e){if(this.Ke.size)throw new d(Rs);e=new Sn(e),await xn(e);const{ZipReader:t}=await b.resolve().then(()=>fs),n=new t(e.readable),i=await n.getEntries();await n.close(),await xn(this.writer),await e.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=e.size,this.Ke=new l(i.map(e=>e.filename)),this.files=new c(i.map(e=>{const{version:t,rawLastModDate:n,lastAccessDate:i,creationDate:s,rawFilename:o,bitFlag:a,encrypted:c,uncompressedSize:l,compressedSize:f,zip64:u}=e;let{compressionMethod:d,Oe:w,Qe:p,Ge:h,Je:m,_e:y,rawExtraField:b}=e;const{level:g,languageEncodingFlag:S,dataDescriptor:F}=a;w=w||ne,p=p||ne,h=h||ne,m=m||ne,y=y||ne,b=b||ne,e.extraFieldAES&&(d=99);const x=Js(w,p,h,m,y,b),v=u&&l>=M,k=u&&f>=M,R=-7&$s(g,S,F,c,d)|g<<1,{$e:z,et:E}=_s({version:t,bitFlag:R,compressionMethod:d,uncompressedSize:l,compressedSize:f,rawLastModDate:n,rawFilename:o,nt:k,it:v,extraFieldLength:x}),{signature:P}=e;return P!==$&&Os(E,10,P),r.assign(e,{it:v,nt:k,st:u&&e.offset>=M,diskNumberStart:0,ot:!1,Oe:w,Qe:p,Ge:h,Je:m,_e:y,rawExtraField:b,extendedTimestamp:h.length>0||m.length>0,ct:1+(i?2:0)+(s?4:0),$e:z,et:E}),[e.filename,e]}))}async add(e="",t,n={}){const i=this;n=r.assign({},n);const{Ye:c,config:l}=i;let f,u;Ts<l.maxWorkers?Ts++:await new b(e=>Us.push(e));try{if(e=e.trim(),Ys(i,n,Qn)&&!e.endsWith(Q)&&(e+=Q),i.Ke.has(e))throw new d(us);return i.Ke.add(e),u=!0,f=(async(e,t,n,i)=>{const c=((e,t,r)=>{t=t.trim();let n=Ys(e,r,Kn),i=Ys(e,r,Bn,n?20:768);const s=Ys(e,r,Gn),o=Ys(e,r,"uid"),a=Ys(e,r,"gid");let c=Ys(e,r,ei),l=Ys(e,r,"unixExtraFieldType"),f=Ys(e,r,ti),u=Ys(e,r,ri),w=Ys(e,r,ni);if(o!==$&&(0>o||o>M))throw new d("Invalid uid (must be integer 0..2^32-1)");if(a!==$&&(0>a||a>M))throw new d("Invalid gid (must be integer 0..2^32-1)");if(c!==$&&(0>c||c>I))throw new d("Invalid UNIX mode (must be integer 0..65535)");if(l!==$&&l!==Es&&l!==Ps)throw new d("Invalid unixExtraFieldType (must be 'infozip' or 'unix')");if(l===Ps&&(o!==$&&o>I||a!==$&&a>I))throw new d("uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)");l!==$||o===$&&a===$||(l=Es);let p=Ys(e,r,qn),h=Ys(e,r,Hn);const m=p!==$||h!==$;if(o!==$||a!==$||c!==$||l?(n=!1,i=i&I|768):m&&(n=!0,i&=C),p!==$&&(0>p||p>C))throw new d("Invalid msdosAttributesRaw (must be integer 0..255)");if(h&&"object"!=typeof h)throw new d("Invalid msdosAttributes (must be an object with boolean flags)");if(i>I)throw new d(hs);let y=Ys(e,r,Vn);const b=y!==$;b||(y=0),!r[Qn]&&t.endsWith(Q)&&(r[Qn]=!0);const g=Ys(e,r,Qn);let S;if(g?(t.endsWith(Q)||(t+=Q),b||(y=16,n||(y|=16877<<16))):n||b||(y=s?493<<16:27525120),!n){const e=c!==$||!!(f||u||w);S=y>>16&I,c=c===$?S:c&I,f?c|=B:f=!!(c&B),u?c|=O:u=!!(c&O),w?c|=512:w=!!(512&c),b&&!e||(g&&(c|=L),y=(c&I)<<16|y&I)}return({msdosAttributesRaw:p,msdosAttributes:h}=((e,t)=>{if(e!==$)e&=C;else if(t!==$){const{readOnly:r,hidden:n,system:i,directory:s,archive:o}=t;let a=0;r&&(a|=1),n&&(a|=2),i&&(a|=4),s&&(a|=16),o&&(a|=32),e=a&C}return t===$&&(t={readOnly:!!(1&e),hidden:!!(2&e),system:!!(4&e),directory:!!(16&e),archive:!!(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}})(p,h)),m&&(y=y&M|p&C),{name:t,lt:{versionMadeBy:i,msDosCompatible:n,externalFileAttributes:y,unixExternalUpper:S,uid:o,gid:a,unixMode:c,unixExtraFieldType:l,setuid:f,setgid:u,sticky:w,msdosAttributesRaw:p,msdosAttributes:h}}})(e,t,i);({name:t}=c);const l=((e,t,r)=>{const n=Ys(e,r,"encodeText",He);let i=n(t);if(i===$&&(i=He(t)),Js(i)>I)throw new d(ps);const s=r[Pn]||"";let o=n(s);if(o===$&&(o=He(s)),Js(o)>I)throw new d(ws);const c=Ys(e,r,Ln,20);if(c>I)throw new d(hs);const l=Ys(e,r,Cn,new a),f=Ys(e,r,An),u=Ys(e,r,jn),p=Ys(e,r,Zn,0),h=Ys(e,r,ci);let m,y;h||(m=Ys(e,r,oi),y=Ys(e,r,ai));const b=Ys(e,r,"encryptionStrength",3),g=Ys(e,r,On),S=Ys(e,r,"extendedTimestamp",!0),F=Ys(e,r,"ntfsTimestamp"),x=Ys(e,r,"keepOrder",!0),v=Ys(e,r,ui),k=Ys(e,r,wi),R=Ys(e,r,"bufferedWrite"),z=Ys(e,r,"createTempStream"),E=Ys(e,r,"dataDescriptorSignature",!0),P=Ys(e,r,li),T=Ys(e,r,"useUnicodeFileNames",!0),U=Ys(e,r,Jn),D=h||U===$?$:Pe(U);if(!h&&U!==$&&0!==U&&8!==U&&!D)throw new d("Compression method not supported");let M=Ys(e,r,"level");if(e.options[mi]){if(m!==$||y!==$)throw new d(ys);M===$&&U===$&&(M=0)}let C=Ys(e,r,di),N=Ys(e,r,"dataDescriptor");R&&N===$&&(N=!1),(N===$||g)&&(N=!0),M!==$&&6!=M&&(C=!1),C||D||e.config.CompressionStream!==$||e.config.CompressionStreamZlib!==$||(M=0);const A=Ys(e,r,Xn);if(!g&&(m!==$||y!==$)&&(1>b||b>3))throw new d(ms);let j=ne;const W=r[$n];if(W){let e=0,t=0;W.forEach(t=>e+=4+Js(t)),j=new w(e);const r=Ye(j);W.forEach((e,n)=>{if(n>I)throw new d(bs);if(Js(e)>I)throw new d(gs);Bs(r,t,n),Bs(r,t+2,Js(e)),Gs(j,e,t+4),t+=4+Js(e)})}return{comment:s,lt:{rawFilename:i,rawComment:o,version:c,lastModDate:l,lastAccessDate:f,creationDate:u,internalFileAttributes:p,passThrough:h,password:m,rawPassword:y,encryptionStrength:b,zipCrypto:g,extendedTimestamp:S,ntfsTimestamp:F,keepOrder:x,useWebWorkers:v,transferStreams:k,bufferedWrite:R,createTempStream:z,dataDescriptorSignature:E,signal:P,useUnicodeFileNames:T,compressionMethod:U,format:D?D.format:$,codecURI:D?D.codecURI:$,ft:D?D.versionNeeded:$,level:M,useCompressionStream:C,dataDescriptor:N,zip64:A,rawExtraField:j}}})(e,t,i),{comment:f}=l,u=i[$n];let p;e.files.set(t,$);try{const f=await(async(e,t,{lt:r},n)=>{const{passThrough:i,zipCrypto:s,password:o,rawPassword:a,encryptionStrength:c}=r;let{dataDescriptor:l,zip64:f,level:u,compressionMethod:w}=r,p=0,h=0;if(i){if(!t)throw new d(ks);if(h=n[Un],h===$)throw new d(vs)}const m=!0===f,y=Ys(e,n,Yn),b=!!t&&(!!(o&&Js(o)||a&&Js(a))||i&&y);t||(u=0,w=0);const g=b?s?12:16+4*c:0;t&&(t=new Sn(t),await xn(t),i?(n.uncompressedSize=h,p=Ls(h)+g):t.size===$?(l=!0,(f||f===$)&&(f=!0,h=p=4294967296)):(n.uncompressedSize=h=t.size,p=Ls(h)+g));const S=m||h>=M,F=m||p>=M;if(S||F){if(!1===f)throw new d(xs);f=!0}return f=f||!1,{reader:t,lt:{dataDescriptor:l,zip64:f,it:S,nt:F,uncompressedSize:h,level:u,compressionMethod:w,encrypted:b}}})(e,n,l,i);({reader:n}=f);const u=js(e.writer),h=As(e.writer),m=(e=>{const{rawFilename:t,lastModDate:r,lastAccessDate:n,creationDate:i,level:s,zip64:c,zipCrypto:l,useUnicodeFileNames:f,dataDescriptor:u,directory:w,rawExtraField:p,encryptionStrength:h,extendedTimestamp:m,ntfsTimestamp:y,passThrough:b,encrypted:g,it:S,nt:F,uncompressedSize:x}=e;let{version:v,compressionMethod:k}=e;const R=!w&&(k===$?s===$||s>0:0!==k);let z;const E=b||!R,P=c&&(e.bufferedWrite||!u||!S&&!F||E),T=P||c&&u&&(S||F);if(c&&(S||F)){const e=20,t=Ns(e);if(t.uint16(1),t.uint16(e-4),z=t.array,P&&(t.ut(x),E)){const e=g?l?12:16+4*h:0;t.ut(b?0:x+e)}}else z=ne;let U,D,M,C,A;if(g&&!l){const e=Ns(Js(zs)+2);e.uint16(39169),e.bytes(zs),U=e.array,U[8]=h}else U=ne;if(m){const e=Hs(r),t=Ks(e);if(t){const t=9+(n?4:0)+(i?4:0),r=Ns(t);C=1+(n?2:0)+(i?4:0),r.uint16(X),r.uint16(t-4),r.uint8(C),r.uint32(e),n&&r.uint32(Xs(Hs(n))),i&&r.uint32(Xs(Hs(i))),M=r.array}else M=ne;if(y===$?!t||n||i:y)try{const e=qs(r),t=Ns(36);t.uint16(10),t.uint16(32),t.wt(4),t.uint16(1),t.uint16(24),t.ut(e),t.ut(qs(n)||e),t.ut(qs(i)||e),D=t.array}catch{D=ne}else D=ne}else D=M=ne;try{const{uid:t,gid:r,unixExtraFieldType:n}=e;if(n!=Es||t===$&&r===$)if(n!=Ps||t===$&&r===$)A=ne;else{const e=Ns(8);e.uint16(30805),e.uint16(4),e.uint16((t===$?0:t)&I),e.uint16((r===$?0:r)&I),A=e.array}else{const e=Cs(t),n=Cs(r),i=3+e.length+n.length,s=Ns(4+i);s.uint16(30837),s.uint16(i),s.uint8(1),s.uint8(e.length),s.bytes(e),s.uint8(n.length),s.bytes(n),A=s.array}}catch{A=ne}k===$&&(k=R?8:0);const{ft:j}=e;R&&j!==$&&(v=v>j?v:j),c&&(v=v>45?v:45),g&&!l&&(v=v>51?v:51,U[9]=k,k=99);const W=T?Js(z):0,Z=W+Js(U,M,D,A,p);if(Z>I)throw new d(gs);const V=new a(2e3*o.ceil(r.getTime()/2e3)),{$e:q,et:H,rawLastModDate:K}=_s({version:v,bitFlag:$s(s,f,u,g,k),compressionMethod:k,uncompressedSize:x,lastModDate:_>V?_:V>J?J:V,rawFilename:t,nt:F,it:S,extraFieldLength:Z}),Y=Ns(G+Js(t)+Z),L=Y.array,B=Ye(L);return Y.uint32(N),Y.bytes(q),Y.bytes(t),T&&Y.bytes(z),Y.bytes(U),Y.bytes(M),Y.bytes(D),Y.bytes(A),Y.bytes(p),u&&(F||Os(B,18,0),S||Os(B,22,0)),{ht:L,yt:B,$e:q,et:H,lastModDate:r,rawLastModDate:K,encrypted:g,compressed:R,version:v,compressionMethod:k,ct:C,Oe:ne,bt:W,Ge:M,Je:D,_e:A,Qe:U,extraFieldLength:Z}})(i=r.assign({},i,c.lt,l.lt,f.lt,{internalFileAttribute:l.lt.internalFileAttributes,externalFileAttribute:c.lt.externalFileAttributes,signature:i[_n],offset:e.offset-u,diskNumberStart:h})),y=(({zip64:e,dataDescriptor:t,dataDescriptorSignature:r})=>{let n,i=ne,s=0,o=e?20:12;return r&&(o+=4),t&&(i=new w(o),n=Ye(i),r&&(s=4,Os(n,0,j))),{gt:i,St:n,Ft:s}})(i),g=Js(m.ht,y.gt);p=await(async(e,t,n,i,o)=>{const{files:a,writer:c}=e,{keepOrder:l,dataDescriptor:f,signal:u}=o,{xt:p}=i,h=e.options[mi],m=e.Be;let y,g,S,F,x,v,R,E={},P=0;a.set(t,E),e.Be=E;try{let g;l&&(g=m&&m.lock,E.lock=new b(e=>S=e)),o.bufferedWrite||!l||e.vt||e.Le||!f?(y=!0,e.Le++,R=o.createTempStream?await o.createTempStream():new k($,$,{highWaterMark:ee}),R.size=0,await xn(c)):(R=c,await T()),await xn(R);const D=js(c);if(e.He){delete e.He;const t=new w(4);Os(Ye(t),0,A),await Vs(c,t),e.offset+=4}h&&!y&&Is(i,e.offset-D);const{ht:I}=p;y||(await g,await U());const N=As(c),j=Zs(e,c);if(E.diskNumberStart=N,y||(x=!0,v=c.size,await Vs(R,I)),E=await(async(e,t,{diskNumberStart:n,lock:i},o,a,c)=>{const{xt:l,kt:f,Rt:u}=o,{$e:w,et:p,lastModDate:h,rawLastModDate:m,encrypted:y,compressed:b,version:g,compressionMethod:S,Oe:F,bt:x,Ge:v,ct:k,Je:R,_e:z,Qe:E}=l,{gt:P}=f,{rawFilename:T,lastAccessDate:U,creationDate:D,password:I,rawPassword:N,level:A,zip64:j,it:W,nt:Z,zipCrypto:V,dataDescriptor:q,directory:H,executable:K,versionMadeBy:X,rawComment:Y,rawExtraField:L,useWebWorkers:B,transferStreams:O,onstart:Q,onprogress:G,onend:J,signal:_,encryptionStrength:ee,extendedTimestamp:te,msDosCompatible:re,internalFileAttributes:ne,externalFileAttributes:ie,uid:se,gid:oe,unixMode:ae,setuid:ce,setgid:le,sticky:fe,unixExternalUpper:ue,msdosAttributesRaw:de,msdosAttributes:we,useCompressionStream:pe,passThrough:he,format:me,codecURI:ye}=c,be={lock:i,versionMadeBy:X,zip64:j,directory:!!H,executable:!!K,filenameUTF8:!0,rawFilename:T,commentUTF8:!0,rawComment:Y,Oe:F,bt:x,Ge:v,Je:R,_e:z,Qe:E,rawExtraField:L,extendedTimestamp:te,msDosCompatible:re,internalFileAttributes:ne,externalFileAttributes:ie,diskNumberStart:n,uid:se,gid:oe,unixMode:ae,setuid:ce,setgid:le,sticky:fe,unixExternalUpper:ue,msdosAttributesRaw:de,msdosAttributes:we};let{signature:ge,uncompressedSize:Se}=c,Fe=0;he||(Se=0);const{writable:xe}=t;if(e){const r=jt(e.createReadable?e.createReadable():e.readable),n=e.size,i={options:{codecType:tr,level:A,rawPassword:N,password:I,encryptionStrength:ee,zipCrypto:y&&V,passwordVerification:y&&V&&m>>8&C,signed:!he,compressed:b&&!he,encrypted:y&&!he,useWebWorkers:B,useCompressionStream:pe,transferStreams:O,format:me,codecURI:ye,compressionMethod:S},config:a,ce:{signal:_,size:n,onstart:Q,onprogress:G,onend:J}};try{const e=await Pr({readable:r,writable:xe},i);if(Fe=e.outputSize,t.size+=Fe,he||(Se=e.inputSize,ge=e.signature),!Z&&Fe>=M||!W&&Se>=M)throw new d(xs)}catch(e){throw e.outputSize!==$&&(t.size+=e.outputSize),e}}return(({signature:e,compressedSize:t,uncompressedSize:r,xt:n,kt:i},{zip64:o,zipCrypto:a,dataDescriptor:c})=>{const{et:l,encrypted:f}=n,{St:u,Ft:d}=i;f&&!a||e===$||(Os(l,10,e),c&&Os(u,d,e)),o?c&&(Qs(u,d+4,s(t)),Qs(u,d+12,s(r))):(Os(l,14,t),Os(l,18,r),c&&(Os(u,d+4,t),Os(u,d+8,r)))})({signature:ge,compressedSize:Fe,uncompressedSize:Se,xt:l,kt:f},c),q&&await Vs(t,P),r.assign(be,{uncompressedSize:Se,compressedSize:Fe,lastModDate:h,rawLastModDate:m,creationDate:D,lastAccessDate:U,encrypted:y,zipCrypto:V,size:u+Fe,compressionMethod:S,version:g,$e:w,et:p,signature:ge,ct:k,it:W,nt:Z}),be})(n,R,E,i,e.config,o),y||(x=!1),a.set(t,E),E.filename=t,y){if(await b.all([R.writable.getWriter().close(),g]),await T(),F=!0,v=c.size,await U(),E.diskNumberStart=As(c),E.offset=Zs(e,c),h){const t=i.Rt;Is(i,e.offset-js(c)),E.size+=i.Rt-t}(({rawFilename:e,encrypted:t,zip64:r,bt:n,signature:i,compressedSize:o,uncompressedSize:a,it:c,nt:l},f,{dataDescriptor:u})=>{if(u||(t||Os(f,14,i),l||Os(f,18,o),c||Os(f,22,a)),r&&n){const t=G+Js(e)+4;Qs(f,t,s(a)),Qs(f,t+8,s(o))}})(E,p.yt,o),await Vs(c,p.ht),await(async(e,t,r)=>{const n=t.writable.getWriter();try{await e.pipeTo(new z({async write(e){var t;await n.ready,await n.write(e),t=Js(e),P+=t}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{n.releaseLock()}})(R.readable,c,u),c.size+=R.size,F=!1}else E.diskNumberStart=N,E.offset=j;return e.offset+=E.size,E}catch(r){if(F||x){if(e.hasCorruptedEntries=!0,r)try{r.corruptedEntry=!0}catch{}e.offset+=c.size-v,y&&(e.offset+=P)}throw a.delete(t),r}finally{if(y&&e.Le--,S&&S(),g&&g(),y&&R&&R.dispose)try{await R.dispose()}catch{}}async function T(){e.vt=!0;const{zt:t}=e;e.zt=new b(t=>g=()=>{e.vt=!1,t()}),await t}async function U(){Ws(c,Js(p.ht))&&await c.closeDisk()}})(e,t,n,{xt:m,kt:y,Rt:g},i)}catch(r){throw e.files.delete(t),r}return r.assign(p,{name:t,comment:f,extraField:u}),new si(p)})(i,e,t,n),c.add(f),await f}catch(t){throw u&&i.Ke.delete(e),t}finally{c.delete(f);const e=Us.shift();e?e():Ts--}}remove(e){const{Ke:t,files:r}=this;if("string"==typeof e&&(e=r.get(e)),e&&e.filename!==$){const{filename:n}=e;if(t.has(n)&&r.has(n))return t.delete(n),r.delete(n),!0}return!1}async close(e=ne,r={}){const{Ye:n,writer:i}=this,{writable:o}=i;if(Js(e)>I)throw new d(ds);for(;n.size;)await b.allSettled(t.from(n));return await(async(e,r,n)=>{const i=(e=>{let t=0;for(const[,r]of e){const{rawFilename:e,Qe:n,rawComment:i,Je:s,_e:o,rawExtraField:a,extendedTimestamp:c,ct:l,lastModDate:f,it:u,nt:w,uncompressedSize:p,compressedSize:h}=r,m=r.offset>=M,y=r.diskNumberStart>=I;let b,g;if(m||y||u||w){const e=4+(u?8:0)+(w?8:0)+(m?8:0)+(y?4:0),t=Ns(e);t.uint16(1),t.uint16(e-4),u&&t.ut(p),w&&t.ut(h),m&&t.ut(r.offset),y&&t.uint32(r.diskNumberStart),b=t.array}else b=ne;r.Oe=b,r.st=m,r.ot=y;const S=Hs(f);if(c&&Ks(S)){const e=Ns(9);e.uint16(X),e.uint16(5),e.uint8(l),e.uint32(S),g=e.array}else g=ne;r.Ge=g;const F=Js(b,n,s,o,g,a);if(F>I)throw new d(gs);t+=46+Js(e,i)+F}return t})(e.files),o=await(async(e,r,n)=>{const{files:i,writer:s}=e,o=new w(r);await xn(s);let a=0,c=0,l=As(s),f=js(s);for(const[e,r]of t.from(i.values()).entries()){const{offset:t,rawFilename:u,Oe:d,Qe:w,Ge:p,Je:h,_e:m,rawExtraField:y,rawComment:b,versionMadeBy:g,$e:S,et:F,it:x,nt:v,ot:k,st:R,internalFileAttributes:z,externalFileAttributes:E,diskNumberStart:P,uncompressedSize:T,compressedSize:U}=r,D=Js(d,w,p,h,m,y),C=46+Js(u,b)+D;Ws(s,a+C-c)&&(await Vs(s,o.slice(c,a)),c=a,await s.closeDisk()),0==e&&(l=As(s),f=js(s)),x||Os(F,18,T),v||Os(F,14,U),(R||k)&&45>r.version&&Bs(F,0,45);const N=Ns(C);if(N.uint32(W),N.uint16(g),N.bytes(S.subarray(0,24)),N.uint16(D),N.uint16(Js(b)),N.uint16(k?I:P),N.uint16(z),N.uint32(E),N.uint32(R?M:t),N.bytes(u),N.bytes(d),N.bytes(w),N.bytes(p),N.bytes(h),N.bytes(m),N.bytes(y),N.bytes(b),Gs(o,N.array,a),a+=C,n.onprogress)try{await n.onprogress(e+1,i.size,new si(r))}catch{}}return await Vs(s,c?o.slice(c):o),{diskNumber:l,diskOffset:f}})(e,i,n);await(async(e,t,r,n)=>{const{writer:i}=e,{Et:o}=n;let{Pt:a}=n,c=e.files.size,l=o.diskNumber,f=Zs(e,o),u=As(i);Ws(i,H)&&u++;let w=Ys(e,r,Xn);if(!(M>f&&M>a&&I>c&&I>u)){if(!1===w)throw new d(xs);w=!0}const p=Js(t);if(p>I)throw new d(ds);const h=Ns(w?98:H);Ws(i,Js(h.array)+p)&&await i.closeDisk(),u=As(i),w&&(h.uint32(V),h.ut(44),h.uint16(45),h.uint16(45),h.uint32(u),h.uint32(l),h.ut(c),h.ut(c),h.ut(a),h.ut(f),h.uint32(q),h.uint32(u),h.ut(s(Zs(e,i))+s(a)),h.uint32(u+1),Ys(e,r,"supportZip64SplitFile",!0)&&(u=I,l=I),c=I,f=M,a=M),h.uint32(Z),h.uint16(u),h.uint16(l),h.uint16(c),h.uint16(c),h.uint32(a),h.uint32(f),h.uint16(p),await Vs(i,h.array),p&&await Vs(i,t)})(e,r,n,{Et:o,Pt:i})})(this,e,r),Ys(this,r,pi)||await o.getWriter().close(),i.getData?i.getData():o}}function Ms(e,t,r){e.Ye.add(t),t.catch(e=>{try{r(e)}catch{}})}function Is(e,t){const{xt:r}=e;let{ht:n,extraFieldLength:i}=r,s=64-(t+Js(n))%64;4>s&&(s+=64);const o=new w(s),a=Ye(o);Bs(a,0,6534),Bs(a,2,s-4);const c=n;r.ht=n=new w(Js(c)+s),Gs(n,c),Gs(n,o,Js(c));const l=Ye(n);Bs(l,28,i+s),r.yt=l,e.Rt+=s}function Cs(e){if(e===$)return ne;{const t=new w(4);Ye(t).setUint32(0,e,!0);let r=4;for(;r>1&&0===t[r-1];)r--;return t.subarray(0,r)}}function Ns(e){const t=new w(e),r=Ye(t);let n=0;return{array:t,uint8:e=>{((e,t,r)=>{e.setUint8(t,r)})(r,n,e),n+=1},uint16:e=>{Bs(r,n,e),n+=2},uint32:e=>{Os(r,n,e),n+=4},ut:e=>{Qs(r,n,s(e)),n+=8},bytes:e=>{Gs(t,e,n),n+=Js(e)},wt:e=>n+=e}}function As(e){const{diskNumber:t=0}=e;return t}function js(e){const{diskOffset:t=0}=e;return t}function Ws(e,t){const{availableSize:r=ee}=e;return t>r}function Zs(e,{diskNumber:t=0,diskOffset:r=0}){return e.offset-r-(t?e.Xe:0)}async function Vs(e,t){const{writable:r}=e,n=r.getWriter();try{await n.ready,e.size+=Js(t),await n.write(t)}finally{n.releaseLock()}}function qs(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function Hs(e){return o.floor(e.getTime()/1e3)}function Ks(e){return e>=Ss&&Fs>=e}function Xs(e){return o.min(Fs,o.max(Ss,e))}function Ys(e,t,r,n){const i=t[r]===$?e.options[r]:t[r];return i===$?n:i}function Ls(e){return e+5*(o.floor(e/16383)+1)}function Bs(e,t,r){e.setUint16(t,r,!0)}function Os(e,t,r){e.setUint32(t,r,!0)}function Qs(e,t,r){e.setBigUint64(t,r,!0)}function Gs(e,t,r){e.set(t,r)}function Js(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function _s({version:e,bitFlag:t,compressionMethod:r,uncompressedSize:n,compressedSize:i,lastModDate:s,rawLastModDate:o,rawFilename:a,nt:c,it:l,extraFieldLength:f}){const u=Ns(26),d=u.array,w=Ye(d);if(u.uint16(e),u.uint16(t),u.uint16(r),o===$){const e=new h(1),t=Ye(e);Bs(t,0,(s.getHours()<<6|s.getMinutes())<<5|s.getSeconds()/2),Bs(t,2,(s.getFullYear()-1980<<4|s.getMonth()+1)<<5|s.getDate()),o=e[0]}return u.uint32(o),u.wt(4),c||i!==$?u.uint32(c?M:i):u.wt(4),l||n!==$?u.uint32(l?M:n):u.wt(4),u.uint16(Js(a)),u.uint16(f),{$e:d,et:w,rawLastModDate:o}}function $s(e,t,r,n,i){let s=0;return t&&(s|=Y),r&&(s|=8),8!=i&&9!=i||(0>e||e>3||(s|=6),e>3&&5>=e&&(s|=4),9==e&&(s|=2)),n&&(s|=1),s}const eo=1048576,to=".zip.js-temp",ro=1048576,no=1048576,io=".zip.js-temp";try{ue({baseURI:void 0===F&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===F?location.href:D&&"SCRIPT"===D.tagName.toUpperCase()&&D.src||new u("zip-native.min.js",F.baseURI).href})}catch{}var{Uint8Array:so,Uint16Array:oo,Int32Array:ao,TransformStream:co,Math:lo,Error:fo,Array:uo}=globalThis,wo=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],po=new so(0),ho=new oo(0),mo=[];for(let e=0;6>e;e++)mo.push(e,0==e?8:4);mo.push(0,1);var yo=[];for(let e=0;14>e;e++)yo.push(e,0==e?4:2);var bo=new oo([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]),go=new oo([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]);function So(e,t,r,n,i){if(0==i)return;let s=e instanceof so?e:new so(e.buffer,e.byteOffset,e.byteLength),o=r instanceof so?r.subarray(n,n+i):new so(r.buffer,r.byteOffset+n,i);s.set(o,t)}function Fo(e,t,r){0!=r&&(e instanceof so?e:new so(e.buffer,e.byteOffset,e.byteLength)).fill(0,t,t+r)}function xo(){return{Tt:po,Ut:0,Dt:0,Mt:0,It:po,Ct:0,Nt:0,At:0,jt:"",t:0,i:0,Wt:0,o:void 0}}function vo(e,t){let r=1<<t;return{Zt:e,u:new so(r),Vt:r,qt:t,k:0,Ht:0,p:0,Kt:0}}function ko(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],i=e[r+1];for(let e=0;i>e;e++)t.push(n)}return new oo(t)}var Ro=class{constructor(e,t){this.Xt=e,this.Yt=t,this.Lt=0}},zo=class{constructor(e,t,r,n,i){this.Bt=e,this.q=t,this.Ot=r,this.Qt=n,this.Gt=i}};function Eo(e){return ea[-6>e||e>2?9:2-e]||""}function Po(e,t){try{e.jt=Eo(t)}catch(r){e.jt="zlib error "+n(t)+" ("+r+")"}return t}function To(e,t){let r=e>>>0,n=0;for(let e=0;t>e;e++)n=n<<1|1&r,r>>>=1;return n}function Uo(e,t){e.Jt[e._t++]=t}function Do(e,t){Uo(e,255&t),Uo(e,t>>>8&255)}function Mo(e,t,r){let n=255&r,i=65535&t,s=e.$t+e.er;return e.Jt[s]=255&i,e.Jt[s+1]=i>>>8&255,e.Jt[s+2]=n,e.er+=3,i=i-1&65535,e.nr[ca[n]+Lo+1].rr++,e.ir[No(i)].rr++,e.er==e.sr}function Io(e,t){let r=255&t,n=e.$t+e.er;return e.Jt[n]=0,e.Jt[n+1]=0,e.Jt[n+2]=r,e.er+=3,e.nr[r].rr++,e.er==e.sr}function Co(e){return e.Vt-Xo}function No(e){return 256>e?la[e]:la[256+(e>>7)]}function Ao(e){let t=qo+7,r=1<<t,n=(1<<t)-1,i=lo.floor((t+Ho-1)/Ho),s=1<<8+qo;return{...vo(e,15),Zt:e,ar:42,cr:0,lr:void 0,ur:32767,dr:t,wr:r,pr:n,mr:i,yr:new oo(32768),gr:new oo(r),Sr:s,Jt:new so(32768),Fr:0,vr:32768,_t:0,kr:0,Rr:0,zr:0,Er:0,Pr:0,Tr:-2,Ur:0,Dr:0,Mr:0,Ir:0,Cr:0,Nr:0,Ar:0,jr:0,Wr:0,Zr:0,Vr:0,qr:0,Hr:0,Kr:0,Xr:new ao(2*Bo+1),Yr:new so(2*Bo+1),Lr:new oo(Jo+1),er:0,sr:0,Br:po,$t:0,Or:0,Qr:0,Gr:8,Jr:32768,_r:0,$r:0,en:0,nr:new uo(Go).fill(0).map(()=>({rr:0,tn:0,rn:0,nn:0})),ir:new uo(2*Oo+1).fill(0).map(()=>({rr:0,tn:0,rn:0,nn:0})),sn:new uo(2*Qo+1).fill(0).map(()=>({rr:0,tn:0,rn:0,nn:0})),an:Zo(),cn:Zo(),ln:Zo()}}function jo(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],i=e[r+1],s=Wo();s.tn=n,s.nn=i,t.push(s)}return t}function Wo(){return{rr:0,tn:0,rn:0,nn:0}}function Zo(){return new Ro([],((e,t)=>new zo(null,t,0,0,0))(0,po))}function Vo(e){let{code:t,length:r}=(e=>{let t=lo.max(...e),r=new uo(t+1).fill(0);for(let t of e)t>0&&r[t]++;let n=new uo(e.length).fill(0),i=new uo(t+1).fill(0),s=0;for(let e=1;t>=e;e++)s=s+r[e-1]<<1,i[e]=s;for(let t=0;t<e.length;t++){let r=e[t];0!=r&&(n[t]=i[r]++)}return{code:n,length:e}})(e),n=new oo(2*e.length),i=0;for(let s=0;s<e.length;s++){let e=r[s]||0,o=t[s]||0;n[i++]=e?To(o,e):0,n[i++]=e}return new oo(n)}var qo=8,Ho=3,Ko=258,Xo=Ko+Ho+1,Yo=Ko,Lo=256,Bo=Lo+1+29,Oo=30,Qo=19,Go=2*Bo+1,Jo=15,_o=256,$o=-1,ea=["need dictionary","stream end","","file error","stream error","data error","insufficient memory","buffer error",""],ta=ko(mo),ra=ko(yo),na=new oo(19);na[16]=2,na[17]=3,na[18]=7;var ia=Vo((()=>{let e=new uo(288).fill(0);for(let t=0;143>=t;t++)e[t]=8;for(let t=144;255>=t;t++)e[t]=9;for(let t=256;279>=t;t++)e[t]=7;for(let t=280;287>=t;t++)e[t]=8;return e})()),sa=Vo(new uo(30).fill(5)),oa=jo(ia),aa=jo(sa),ca=((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let i=t[n]?1<<t[n]:1,s=e[n]+i-1;s>r&&(r=s)}258>r&&(r=258);let n=new so(r+1);for(let i=0;r>=i;i++)for(let r=0;r<e.length;r++){let s=t[r]?1<<t[r]:1,o=e[r];if(i>=o&&o+s-1>=i){n[i]=r;break}}let i=0;for(let r=0;r<e.length-1;r++){let n=t[r]?1<<t[r]:1,s=e[r]+n-1;s>i&&(i=s)}return n[i]=e.length-1,n})(go,ta),la=(e=>{let t=new so(512),r=e.length-1;for(let n=0;256>n;n++)t[n]=n>r?e[r]:e[n];for(let n=256;r>=n;n++){let r=n>>7;t[256+(r>255?255:r)]=e[n]}for(let e=257;512>e;e++)0==t[e]&&(t[e]=t[e-1]);return t})(((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let i=t[n]?1<<t[n]:1,s=e[n]+i-1;s>r&&(r=s)}let n=new so(r+1);for(let i=0;r>=i;i++)for(let r=0;r<e.length;r++){let s=t[r]?1<<t[r]:1,o=e[r];if(i>=o&&o+s-1>=i){n[i]=r;break}}return n})(bo,ra));function fa(e,t,r){if(void 0===t||void 0===r)return 1;let n=65535&e,i=e>>>16&65535,s=0;for(;r>0;){let e=r>2e3?2e3:r;r-=e;do{n=n+t[s++]|0,i=i+n|0}while(--e);n%=65521,i%=65521}return(i<<16|n)>>>0}var ua=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?3988292384^t>>>1:t>>>1;ua[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){let r=ua[t-1][e];ua[t][e]=r>>>8^ua[0][255&r]}var[da,wa,pa,ha,ma,ya,ba,ga]=ua;function Sa(e=0,t,r){if(!t)return 0;void 0===r&&(r=t.length);let n=0|~e,i=0;if((r=lo.min(r,t.length))>=8){let e=new m(t.buffer,t.byteOffset,r),s=r-8;for(;s>=i;i+=8){let t=n^e.getInt32(i,!0),r=e.getInt32(i+4,!0);n=ga[255&t]^ba[t>>>8&255]^ya[t>>>16&255]^ma[t>>>24&255]^ha[255&r]^pa[r>>>8&255]^wa[r>>>16&255]^da[r>>>24&255]}}for(;r>i;i++)n=n>>>8^da[255&(n^t[i])];return(4294967295^n)>>>0}function Fa(e){16==e.Kt?(Do(e,e.p),e.p=0,e.Kt=0):e.Kt>=8&&(Uo(e,e.p),e.p>>=8,e.Kt-=8)}function xa(e){e.Kt>8?Do(e,e.p):e.Kt>0&&Uo(e,e.p),e.Or=1+(e.Kt-1&7),e.p=0,e.Kt=0}function va(e,t,r){e.Kt>16-r?(e.p=65535&(e.p|t<<e.Kt),Do(e,e.p),e.p=t>>16-e.Kt&65535,e.Kt+=r-16):(e.p=65535&(e.p|t<<e.Kt),e.Kt+=r)}function ka(e){for(let t=0;t<e.nr.length;t++)e.nr[t].rr=0;for(let t=0;t<e.ir.length;t++)e.ir[t].rr=0;for(let t=0;t<e.sn.length;t++)e.sn[t].rr=0;e.nr[_o].rr=1,e.Rr=e.zr=0,e.er=e.Er=0}function Ra(e,t,r){return r=e.Xr[1],e.Xr[1]=e.Xr[e.$r--],Ea(e,t,1),r}function za(e,t,r,n){return e[t].rr<e[r].rr||e[t].rr==e[r].rr&&n[t]<=n[r]}function Ea(e,t,r){let n=e.Xr[r],i=r<<1;for(;i<=e.$r&&(i<e.$r&&za(t,e.Xr[i+1],e.Xr[i],e.Yr)&&i++,!za(t,n,e.Xr[i],e.Yr));)e.Xr[r]=e.Xr[i],r=i,i<<=1;e.Xr[r]=n}function Pa(e,t){let r,n,i,s=t.Xt,o=t.Yt.Bt,a=t.Yt.Qt,c=-1;for(e.$r=0,e.en=Go,r=0;a>r;r++)0!=s[r].rr?(e.Xr[++e.$r]=c=r,e.Yr[r]=0):s[r].nn=0;for(;2>e.$r;)i=e.Xr[++e.$r]=2>c?++c:0,s[i].rr=1,e.Yr[i]=0,e.Rr--,o&&(e.zr-=o[i].nn);for(t.Lt=c,r=lo.floor(e.$r/2);r>=1;r--)Ea(e,s,r);i=a;do{r=Ra(e,s,r),n=e.Xr[1],e.Xr[--e.en]=r,e.Xr[--e.en]=n,s[i].rr=s[r].rr+s[n].rr,e.Yr[i]=(e.Yr[r]<e.Yr[n]?e.Yr[n]:e.Yr[r])+1,s[r].rn=s[n].rn=i,e.Xr[1]=i++,Ea(e,s,1)}while(e.$r>=2);e.Xr[--e.en]=e.Xr[1],((e,t)=>{let r,n,i,s,o,a,c=t.Xt,l=t.Lt,f=t.Yt.Bt,u=t.Yt.q,d=t.Yt.Ot,w=t.Yt.Gt,p=0;for(s=0;Jo>=s;s++)e.Lr[s]=0;for(c[e.Xr[e.en]].nn=0,r=e.en+1;Go>r;r++)n=e.Xr[r],s=c[c[n].rn].nn+1,s>w&&(s=w,p++),c[n].nn=s,l>=n&&(e.Lr[s]++,o=0,n>=d&&(o=u[n-d]),a=c[n].rr,e.Rr+=a*(s+o),f&&(e.zr+=a*(f[n].nn+o)));if(0!=p){do{for(s=w-1;0==e.Lr[s];)s--;e.Lr[s]--,e.Lr[s+1]+=2,e.Lr[w]--,p-=2}while(p>0);for(s=w;0!=s;s--)for(n=e.Lr[s];0!=n;)i=e.Xr[--r],l>=i&&(c[i].nn!=s&&(e.Rr+=(s-c[i].nn)*c[i].rr,c[i].nn=s),n--)}})(e,t),((e,t,r)=>{let n,i,s=[],o=0;for(n=1;Jo>=n;n++)o=o+r[n-1]<<1,s[n]=o;for(i=0;t>=i;i++){let t=e[i].nn;0!=t&&(e[i].tn=To(s[t]++,t))}})(s,t.Lt,e.Lr)}function Ta(e,t,r){let n,i,s=-1,o=t[0].nn,a=0,c=7,l=4;for(0==o&&(c=138,l=3),t[r+1].nn=65535,n=0;r>=n;n++)i=o,o=t[n+1].nn,(++a>=c||i!=o)&&(l>a?e.sn[i].rr+=a:0!=i?(i!=s&&e.sn[i].rr++,e.sn[16].rr++):a>10?e.sn[18].rr++:e.sn[17].rr++,a=0,s=i,0==o?(c=138,l=3):i==o?(c=6,l=3):(c=7,l=4))}function Ua(e,t,r){let n,i=-1,s=t[0].nn,o=0,a=7,c=4;0==s&&(a=138,c=3);for(let l=0;r>=l;l++)if(n=s,s=t[l+1].nn,++o>=a||n!=s){if(c>o)do{va(e,e.sn[n].tn,e.sn[n].nn)}while(0!=--o);else 0!=n?(n!=i&&(va(e,e.sn[n].tn,e.sn[n].nn),o--),va(e,e.sn[16].tn,e.sn[16].nn),va(e,o-3,2)):o>10?(va(e,e.sn[18].tn,e.sn[18].nn),va(e,o-11,7)):(va(e,e.sn[17].tn,e.sn[17].nn),va(e,o-3,3));o=0,i=n,0==s?(a=138,c=3):n==s?(a=6,c=3):(a=7,c=4)}}function Da(e,t,r,n,i=0){va(e,0+n,3),xa(e),Do(e,r),Do(e,~r),r&&t&&So(e.Jt,e._t,t,i,r),e._t+=r}function Ma(e,t,r){let n,i,s,o,a=0;if(0!=e.er)do{n=255&e.Br[a],n+=(255&e.Br[a+1])<<8,i=e.Br[a+2],a+=3,0==n?va(e,t[i].tn,t[i].nn):(s=ca[i],va(e,t[s+Lo+1].tn,t[s+Lo+1].nn),o=ta[s],0!=o&&(i-=go[s],va(e,i,o)),n--,s=No(n),va(e,r[s].tn,r[s].nn),o=ra[s],0!=o&&(n-=bo[s],va(e,n,o)))}while(a<e.er);va(e,t[_o].tn,t[_o].nn)}var Ia=[{fn:_a,un:0,dn:0,wn:0,pn:0},{fn:$a,un:4,dn:4,wn:8,pn:4},{fn:$a,un:4,dn:5,wn:16,pn:8},{fn:$a,un:4,dn:6,wn:32,pn:32},{fn:ec,un:4,dn:4,wn:16,pn:16},{fn:ec,un:8,dn:16,wn:32,pn:32},{fn:ec,un:8,dn:16,wn:128,pn:128},{fn:ec,un:8,dn:32,wn:128,pn:256},{fn:ec,un:32,dn:128,wn:258,pn:1024},{fn:ec,un:32,dn:258,wn:258,pn:4096}];function Ca(e){return 2*e-(e>4?9:0)}function Na(e,t,r){return((t<<e.mr^r)&e.pr)>>>0}function Aa(e,t){e.jr=Na(e,e.jr,e.u[t+(Ho-1)]);let r=e.yr[t&e.ur]=e.gr[e.jr];return e.gr[e.jr]=t,r}function ja(e){e.gr[e.wr-1]=0,Fo(e.gr,0,(e.wr-1)*e.gr.BYTES_PER_ELEMENT)}function Wa(e){let t,r,n=e.Vt;for(t=e.wr;t>0;)t--,r=e.gr[t],e.gr[t]=n>r?0:r-n;for(t=n;t>0;)t--,r=e.yr[t],e.yr[t]=n>r?0:r-n}function Za(e,t,r,n){let i=e.Dt;return i>n&&(i=n),0==i?0:(e.Dt-=i,So(t,r,e.Tt,e.Ut,i),1==e.o.cr?e.i=fa(e.i,new so(t.buffer,t.byteOffset+r,i),i):2==e.o.cr&&(e.i=Sa(e.i,new so(t.buffer,t.byteOffset+r,i),i)),e.Ut+=i,e.Mt+=i,i)}function Va(e){let t,r,n=e.Vt;do{if(r=e.Jr-e.Mr-e.Dr,0==r&&0==e.Dr&&0==e.Mr?r=n:-1==r&&r--,e.Dr>=n+Co(e)&&(So(e.u,0,e.u,n,n-r),e._r-=n,e.Dr-=n,e.Ur-=n,e.Pr>e.Dr&&(e.Pr=e.Dr),Wa(e),r+=n),0==e.Zt.Dt)break;if(t=Za(e.Zt,e.u,e.Dr+e.Mr,r),e.Mr+=t,e.Mr+e.Pr>=Ho){let t=e.Dr-e.Pr;for(e.jr=e.u[t],e.jr=Na(e,e.jr,e.u[t+1]);e.Pr&&(e.jr=Na(e,e.jr,e.u[t+Ho-1]),e.yr[t&e.ur]=e.gr[e.jr],e.gr[e.jr]=t,t++,e.Pr--,e.Mr+e.Pr>=Ho););}}while(e.Mr<Xo&&0!=e.Zt.Dt);if(e.k<e.Jr){let t,r=e.Dr+e.Mr;e.k<r?(t=e.Jr-r,t>Yo&&(t=Yo),Fo(e.u,r,t),e.k=r+t):e.k<r+Yo&&(t=r+Yo-e.k,t>e.Jr-e.k&&(t=e.Jr-e.k),Fo(e.u,e.k,t),e.k+=t)}}function qa(e){if(null==e)return!0;let t=e.o;return!t||t.Zt!=e||42!=t.ar&&57!=t.ar&&69!=t.ar&&73!=t.ar&&91!=t.ar&&103!=t.ar&&113!=t.ar&&666!=t.ar}function Ha(e,t){Uo(e,t>>8),Uo(e,255&t)}function Ka(e){let t,r=e.o;(e=>{Fa(e)})(r),t=r._t,t>e.Nt&&(t=e.Nt),0!=t&&(So(e.It,e.Ct,r.Jt,r.kr,t),e.Ct+=t,r.kr+=t,e.At+=t,e.Nt-=t,r._t-=t,0==r._t&&(r.kr=r.Fr))}function Xa(e,t){let r=e.o;r.lr&&r.lr.hn&&(e.i=Sa(e.i,new so(r.Jt.buffer,r.Fr+t,r._t-t),r._t-t))}function Ya(e,t){let r,n=e.o;if(qa(e)||t>5||0>t)return Po(e,-2);if(!e.It||0!=e.Dt&&!e.Tt||666==n.ar&&4!=t)return Po(e,-2);if(0==e.Nt)return Po(e,-5);if(r=n.Tr,n.Tr=t,0!=n._t){if(Ka(e),0==e.Nt)return n.Tr=$o,0}else if(0==e.Dt&&Ca(t)<=Ca(r)&&4!=t)return Po(e,-5);if(666==n.ar&&0!=e.Dt)return Po(e,-5);if(42==n.ar&&0==n.cr&&(n.ar=113),42==n.ar){let t,r=8+(n.qt-8<<4)<<8;if(t=n.Zr>=2||2>n.Wr?0:6>n.Wr?1:6==n.Wr?2:3,r|=t<<6,0!=n.Dr&&(r|=32),r+=31-r%31,Ha(n,r),0!=n.Dr&&(Ha(n,e.i>>16),Ha(n,65535&e.i)),e.i=1,n.ar=113,Ka(e),0!=n._t)return n.Tr=$o,0}if(57==n.ar)if(e.i=Sa(0),Uo(n,31),Uo(n,139),Uo(n,8),n.lr)Uo(n,(n.lr.yn?1:0)+(n.lr.hn?2:0)+(null==n.lr.bn?0:4)+(null==n.lr.gn?0:8)+(null==n.lr.Sn?0:16)),Uo(n,255&n.lr.Fn),Uo(n,n.lr.Fn>>>8&255),Uo(n,n.lr.Fn>>>16&255),Uo(n,n.lr.Fn>>>24&255),Uo(n,9==n.Wr?2:n.Zr>=2||2>n.Wr?4:0),Uo(n,255&n.lr.xn),null!=n.lr.bn&&(Uo(n,255&n.lr.vn),Uo(n,n.lr.vn>>>8&255)),n.lr.hn&&(e.i=Sa(e.i,n.Jt,n._t)),n.Qr=0,n.ar=69;else if(Uo(n,0),Uo(n,0),Uo(n,0),Uo(n,0),Uo(n,0),Uo(n,9==n.Wr?2:n.Zr>=2||2>n.Wr?4:0),Uo(n,255),n.ar=113,Ka(e),0!=n._t)return n.Tr=$o,0;if(69==n.ar){if(n.lr&&null!=n.lr.bn){let t=n._t,r=(65535&n.lr.vn)-n.Qr;for(;n._t+r>n.vr;){let i=n.vr-n._t;if(So(n.Jt,n._t,n.lr.bn,n.Qr,i),n._t=n.vr,Xa(e,t),n.Qr+=i,Ka(e),0!=n._t)return n.Tr=$o,0;t=0,r-=i}So(n.Jt,n._t,n.lr.bn,n.Qr,r),n._t+=r,Xa(e,t),n.Qr=0}n.ar=73}if(73==n.ar){if(n.lr&&n.lr.gn&&n.lr.gn.length){let t,r=n._t;do{if(n._t==n.vr){if(Xa(e,r),Ka(e),0!=n._t)return n.Tr=$o,0;r=0}t=n.lr.gn[n.Qr++],Uo(n,t)}while(0!=t);Xa(e,r),n.Qr=0}n.ar=91}if(91==n.ar){if(n.lr&&n.lr.Sn&&n.lr.Sn.length){let t,r=n._t;do{if(n._t==n.vr){if(Xa(e,r),Ka(e),0!=n._t)return n.Tr=$o,0;r=0}t=n.lr.Sn[n.Qr++],Uo(n,t)}while(0!=t);Xa(e,r)}n.ar=103}if(103==n.ar){if(n.lr&&n.lr.hn){if(n._t+2>n.vr&&(Ka(e),0!=n._t))return n.Tr=$o,0;Uo(n,255&e.i),Uo(n,e.i>>>8&255),e.i=Sa(0)}if(n.ar=113,Ka(e),0!=n._t)return n.Tr=$o,0}if(0!=e.Dt||0!=n.Mr||0!=t&&666!=n.ar){let r=0==n.Wr?_a(n,t):2==n.Zr?((e,t)=>{let r=!1;for(;;){if(0==e.Mr&&(Va(e),0==e.Mr)){if(0==t)return 0;break}if(e.Ir=0,r=Io(e,e.u[e.Dr]),e.Mr--,e.Dr++,r){let t=Qa(e,!1);if(null!=t)return t}}if(e.Pr=0,4==t)return Qa(e,!0)??3;if(e.er){let t=Qa(e,!1);if(null!=t)return t}return 1})(n,t):3==n.Zr?((e,t)=>{let r,n,i,s;for(;;){if(e.Mr<=Ko){if(Va(e),e.Mr<=Ko&&0==t)return 0;if(0==e.Mr)break}if(e.Ir=0,e.Mr>=Ho&&e.Dr>0&&(i=e.Dr-1,n=e.u[i],n==++i&&n==++i&&n==++i)){s=e.Dr+Ko;do{}while(n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&s>i);e.Ir=Ko-(s-i),e.Ir>e.Mr&&(e.Ir=e.Mr)}if(e.Ir<Ho?(r=Io(e,e.u[e.Dr]),e.Mr--,e.Dr++):(e.Dr,e.Dr,e.Ir,r=Mo(e,1,e.Ir-Ho),e.Mr-=e.Ir,e.Dr+=e.Ir,e.Ir=0),r){let t=Qa(e,!1);if(null!=t)return t}}if(e.Pr=0,4==t)return Qa(e,!0)??3;if(e.er){let t=Qa(e,!1);if(null!=t)return t}return 1})(n,t):Ia[n.Wr].fn(n,t);if((2==r||3==r)&&(n.ar=666),0==r||2==r)return 0==e.Nt&&(n.Tr=$o),0;if(1==r&&(1==t?(e=>{va(e,2,3),va(e,oa[_o].tn,oa[_o].nn),Fa(e)})(n):5!=t&&(Da(n,null,0,0),3==t&&(ja(n),0==n.Mr&&(n.Dr=0,n.Ur=0,n.Pr=0))),Ka(e),0==e.Nt))return n.Tr=$o,0}return 4!=t?0:n.cr>0?(2==n.cr?(Uo(n,255&e.i),Uo(n,e.i>>>8&255),Uo(n,e.i>>>16&255),Uo(n,e.i>>>24&255),Uo(n,255&e.Mt),Uo(n,e.Mt>>>8&255),Uo(n,e.Mt>>>16&255),Uo(n,e.Mt>>>24&255)):(Ha(n,e.i>>>16&65535),Ha(n,65535&e.i)),Ka(e),n.cr>0&&(n.cr=-n.cr),0!=n._t?0:1):1}function La(e){if(qa(e))return-2;let t=e.o,r=t.ar;return t.u=po,t.yr=ho,t.gr=ho,t.Jt=po,t.Br=po,t.Xr=new ao(0),t.Yr=po,t.Lr=ho,t.nr.length=0,t.ir.length=0,t.sn.length=0,t.lr=void 0,t.Fr=0,t.kr=0,t.$t=0,113==r?-3:0}function Ba(e,t){let r,n,i=e.Hr,s=e.Dr,o=e.Cr,a=e.qr,c=e.Dr>Co(e)?e.Dr-Co(e):0,l=e.yr,f=e.ur,u=e.u,d=e.Mr,w=d>Ko?Ko:d,p=u[s],h=u[s+1],m=u[s+o-1],y=u[s+o];o>=e.Vr&&(i>>=2),a>d&&(a=d);do{if(r=t,u[r+o]!=y||u[r+o-1]!=m||u[r]!=p||u[r+1]!=h)continue;let i=2;for(;w>i&&u[s+i]==u[r+i];)i++;if(n=i,n>o){if(e._r=t,o=n,n>=a)break;m=u[s+o-1],y=u[s+o]}}while((t=l[t&f])>c&&0!=--i);return o>d?d:o}function Oa(e,t){((e,t,r,n,i=0)=>{let s,o,a=0;e.Wr>0?(2==e.Zt.t&&(e.Zt.t=(e=>{let t,r=4093624447;for(t=0;31>=t;t++,r>>=1)if(1&r&&0!=e.nr[t].rr)return 0;if(0!=e.nr[9].rr||0!=e.nr[10].rr||0!=e.nr[13].rr)return 1;for(t=32;Lo>t;t++)if(0!=e.nr[t].rr)return 1;return 0})(e)),Pa(e,e.an),Pa(e,e.cn),a=(e=>{let t;for(Ta(e,e.nr,e.an.Lt),Ta(e,e.ir,e.cn.Lt),Pa(e,e.ln),t=Qo-1;t>=3&&0==e.sn[wo[t]].nn;t--);return e.Rr+=3*(t+1)+5+5+4,t})(e),s=e.Rr+3+7>>3,o=e.zr+3+7>>3,(s>=o||4==e.Zr)&&(s=o)):s=o=r+5,s>=r+4&&t?Da(e,t,r,n,i):o==s?(va(e,2+n,3),Ma(e,oa,aa)):(va(e,4+n,3),((e,t,r,n)=>{let i;for(va(e,t-257,5),va(e,r-1,5),va(e,n-4,4),i=0;n>i;i++)va(e,e.sn[wo[i]].nn,3);Ua(e,e.nr,t-1),Ua(e,e.ir,r-1)})(e,e.an.Lt+1,e.cn.Lt+1,a+1),Ma(e,e.nr,e.ir)),ka(e),n&&xa(e)})(e,e.u,e.Dr-e.Ur,t,e.Ur),e.Ur=e.Dr,Ka(e.Zt)}function Qa(e,t){return Oa(e,t?1:0),0==e.Zt.Nt?t?2:0:null}var Ga=65535;function Ja(e,t){return t>e?e:t}function _a(e,t){let r,n,i,s=Ja(e.vr-5,e.Vt),o=0,a=e.Zt.Dt;do{if(r=Ga,i=e.Kt+42>>3,e.Zt.Nt<i||(i=e.Zt.Nt-i,n=e.Dr-e.Ur,r>n+e.Zt.Dt&&(r=n+e.Zt.Dt),r>i&&(r=i),s>r&&(0==r&&4!=t||0==t||r!=n+e.Zt.Dt)))break;o=4==t&&r==n+e.Zt.Dt?1:0,Da(e,null,0,o),e.Jt[e._t-4]=r,e.Jt[e._t-3]=r>>8,e.Jt[e._t-2]=~r,e.Jt[e._t-1]=~r>>8,Ka(e.Zt),n&&(n>r&&(n=r),So(e.Zt.It,e.Zt.Ct,e.u,e.Ur,n),e.Zt.Ct+=n,e.Zt.Nt-=n,e.Zt.At+=n,e.Ur+=n,r-=n),r&&(Za(e.Zt,e.Zt.It,e.Zt.Ct,r),e.Zt.Ct+=r,e.Zt.Nt-=r,e.Zt.At+=r)}while(0==o);if(a-=e.Zt.Dt,a){if(a<e.Vt)e.Jr-e.Dr<=a&&(e.Dr-=e.Vt,So(e.u,0,e.u,e.Vt,e.Dr),2>e.Er&&e.Er++,e.Pr>e.Dr&&(e.Pr=e.Dr)),So(e.u,e.Dr,e.Zt.Tt,e.Zt.Ut-a,a),e.Dr+=a,e.Pr+=Ja(a,e.Vt-e.Pr);else{e.Er=2;let t=e.Zt.Ut-e.Vt;So(e.u,0,e.Zt.Tt,t,e.Vt),e.Dr=e.Vt,e.Pr=e.Dr}e.Ur=e.Dr}return e.k<e.Dr&&(e.k=e.Dr),o?(e.Or=8,3):0!=t&&4!=t&&0==e.Zt.Dt&&e.Dr==e.Ur?1:(i=e.Jr-e.Dr,e.Zt.Dt>i&&e.Ur>=e.Vt&&(e.Ur-=e.Vt,e.Dr-=e.Vt,So(e.u,0,e.u,e.Vt,e.Dr),2>e.Er&&e.Er++,i+=e.Vt,e.Pr>e.Dr&&(e.Pr=e.Dr)),i>e.Zt.Dt&&(i=e.Zt.Dt),i&&(Za(e.Zt,e.u,e.Dr,i),e.Dr+=i,e.Pr+=Ja(i,e.Vt-e.Pr)),e.k<e.Dr&&(e.k=e.Dr),i=e.Kt+42>>3,i=Ja(e.vr-i,Ga),s=Ja(i,e.Vt),n=e.Dr-e.Ur,(n>=s||(n||4==t)&&0!=t&&0==e.Zt.Dt&&i>=n)&&(r=Ja(n,i),o=4==t&&0==e.Zt.Dt&&r==n?1:0,Da(e,e.u,r,o,e.Ur),e.Ur+=r,Ka(e.Zt)),o&&(e.Or=8),o?2:0)}function $a(e,t){let r,n=!1;for(;;){if(e.Mr<Xo){if(Va(e),e.Mr<Xo&&0==t)return 0;if(0==e.Mr)break}if(r=0,e.Mr>=Ho&&(r=Aa(e,e.Dr)),0!=r&&e.Dr-r<=Co(e)&&(e.Ir=Ba(e,r)),e.Ir<Ho)n=Io(e,e.u[e.Dr]),e.Mr--,e.Dr++;else if(e.Dr,e._r,e.Ir,n=Mo(e,e.Dr-e._r,e.Ir-Ho),e.Mr-=e.Ir,e.Ir>e.Kr||e.Mr<Ho)e.Dr+=e.Ir,e.Ir=0,e.jr=e.u[e.Dr],e.jr=Na(e,e.jr,e.u[e.Dr+1]);else{e.Ir--;do{e.Dr++,r=Aa(e,e.Dr)}while(0!=--e.Ir);e.Dr++}if(n){let t=Qa(e,!1);if(null!=t)return t}}if(e.Pr=e.Dr<Ho-1?e.Dr:Ho-1,4==t)return Qa(e,!0)??3;if(e.er){let t=Qa(e,!1);if(null!=t)return t}return 1}function ec(e,t){let r,n=!1;for(;;){if(e.Mr<Xo){if(Va(e),e.Mr<Xo&&0==t)return 0;if(0==e.Mr)break}if(r=0,e.Mr>=Ho&&(r=Aa(e,e.Dr)),e.Cr=e.Ir,e.Nr=e._r,e.Ir=Ho-1,0!=r&&e.Cr<e.Kr&&e.Dr-r<=Co(e)&&(e.Ir=Ba(e,r),5>=e.Ir&&(1==e.Zr||e.Ir==Ho&&e.Dr-e._r>4096)&&(e.Ir=Ho-1)),e.Cr<Ho||e.Ir>e.Cr)if(e.Ar){if(n=Io(e,e.u[e.Dr-1]),n&&Oa(e,0),e.Dr++,e.Mr--,0==e.Zt.Nt)return 0}else e.Ar=1,e.Dr++,e.Mr--;else{let t=e.Dr+e.Mr-Ho;e.Dr,e.Nr,e.Cr,n=Mo(e,e.Dr-1-e.Nr,e.Cr-Ho),e.Mr-=e.Cr-1,e.Cr-=2;do{++e.Dr<=t&&(r=Aa(e,e.Dr))}while(0!=--e.Cr);if(e.Ar=0,e.Ir=Ho-1,e.Dr++,n){let t=Qa(e,!1);if(null!=t)return t}}}if(e.Ar&&(n=Io(e,e.u[e.Dr-1]),e.Ar=0),e.Pr=e.Dr<Ho-1?e.Dr:Ho-1,4==t)return Qa(e,!0)??3;if(e.er){let t=Qa(e,!1);if(null!=t)return t}return 1}var tc=852,rc=bo.map(e=>e+1),nc=go.subarray(0,-1).map(e=>e+3),ic=yo.map(mc),sc=yo.map(yc);ic.push(64,2),sc.push(142,2);var oc=mo.slice(0,-2).map(mc),ac=mo.slice(0,-2).map(yc);oc.push(16,1,73,1,200,1),ac.push(144,1,72,1,78,1);var cc=new oo([...nc,258,0,0]),lc=new oo([...nc,3,0,0]),fc=ko(oc),uc=ko(ac),dc=new oo([...rc,0,0]),wc=new oo([...rc,32769,49153]),pc=ko(ic),hc=ko(sc);function mc(e,t){return t%2?e:e+16}function yc(e,t){return t%2?e:e+128}function bc(e,t){let r,n=e.o,i=e.Ut,s=e.Ct,o=e.Tt,a=e.It,c=n.u,l=n.p>>>0,f=n.Kt>>>0,u=n.kn,d=n.tt,w=(1<<n.Rn)-1,p=(1<<n.rt)-1,h=n.Vt>>>0,m=n.k>>>0,y=n.Ht>>>0,b=n.zn,g=s-(t-e.Nt),S=s+(e.Nt-257),F=i+(e.Dt-5),x=0,v=0,k=0,R=0;e:do{for(;15>f;){if(i>=o.length)break e;l+=o[i++]<<f,f+=8}for(r=u[l&w];;){if(k=r>>>16&255,l>>>=k,f-=k,k=r>>>24,0==k){a[s++]=65535&r;break}if(16&k){if(x=65535&r,k&=15,k){for(;k>f;){if(i>=o.length){n.En=16200;break e}l+=o[i++]<<f,f+=8}x+=l&(1<<k)-1,l>>>=k,f-=k}for(;15>f;){if(i>=o.length){n.En=16200;break e}l+=o[i++]<<f,f+=8}for(r=d[l&p];;){if(k=r>>>16&255,l>>>=k,f-=k,k=r>>>24,16&k){if(v=65535&r,k&=15,k){for(;k>f;){if(i>=o.length){n.En=16200;break e}l+=o[i++]<<f,f+=8}v+=l&(1<<k)-1,l>>>=k,f-=k}let t=x,u=s-g;if(v>u){let r=v-u;if(r>m&&b){e.jt="invalid distance too far back",n.En=16209;break e}if(0==y){if(R=h-r,r>=t){for(let e=0;t>e;++e)a[s++]=c[R++];continue e}for(let e=0;r>e;++e)a[s++]=c[R++];t-=r,R=s-v}else if(r>y){R=h+y-r;let e=r-y;if(e>=t){for(let e=0;t>e;++e)a[s++]=c[R++];continue e}for(let t=0;e>t;++t)a[s++]=c[R++];if(t-=e,R=0,t>y){for(let e=0;y>e;++e)a[s++]=c[R++];t-=y,R=s-v}}else{if(R=y-r,r>=t){for(let e=0;t>e;++e)a[s++]=c[R++];continue e}for(let e=0;r>e;++e)a[s++]=c[R++];t-=r,R=s-v}for(;t>2;)a[s++]=a[R++],a[s++]=a[R++],a[s++]=a[R++],t-=3;t&&(a[s++]=a[R++],t>1&&(a[s++]=a[R++]))}else{for(R=s-v;t>2;)a[s++]=a[R++],a[s++]=a[R++],a[s++]=a[R++],t-=3;t&&(a[s++]=a[R++],t>1&&(a[s++]=a[R++]))}break}if(64&k){e.jt="invalid distance code",n.En=16209;break e}r=d[(65535&r)+(l&(1<<k)-1)]}break}if(64&k){if(32&k){n.En=16191;break e}e.jt="invalid literal/length code",n.En=16209;break e}r=u[(65535&r)+(l&(1<<k)-1)]}}while(F>i&&S>s);let z=f>>3;i-=z,f-=z<<3,l&=(1<<f)-1,e.Ut=i,e.Ct=s,e.Dt=F>i?F-i+5:5-(i-F),e.Nt=S>s?S-s+257:257-(s-S),n.p=l>>>0,n.Kt=f>>>0}var gc=new ao(0);function Sc(e,t){let r=gc,n=t?1446:1444;return{...vo(e,0),Zt:e,En:16180,Pn:!1,cr:0,Tn:!1,Un:0,Dn:0,Mn:0,In:0,u:po,Cn:0,dt:0,bn:0,kn:r,tt:r,Rn:0,rt:0,Nn:0,An:0,jn:0,Wn:0,Zn:r,Vn:new oo(320),qn:new oo(288),Hn:new ao(n),Kn:0,zn:!0,Xn:0,Yn:0,Ln:t}}function Fc(e,t,r){return e<<24|t<<16|r}function xc(e=0,t=0,r=0){return Fc(e,t,r)}function vc(e=1){return Fc(64,e,0)}function kc(e){return(255&e)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>24&255}var Rc={Ln:!1,Bn:cc,On:fc,Qn:dc,Gn:pc,Jn:20,_n:257,$n:0,ei:592,ti:!1,ri:!0},zc={Ln:!0,Bn:lc,On:uc,Qn:wc,Gn:hc,Jn:19,_n:256,$n:-1,ei:594,ti:!0,ri:!1};function Ec(e,t,r,n,i,s,o,a){let c,l,f,u,d,w,p,h,m,y,b,g,S,F,x,v,k,R,z,E=new oo(16),P=new oo(16),T=a?zc:Rc;for(c=0;15>=c;c++)E[c]=0;for(l=0;r>l;l++)E[t[l]]++;for(d=i.ni,u=15;u>=1&&0==E[u];u--);if(d>u&&(d=u),0==u)return T.ri?(x=vc(1),n.ni[0]=x,n.ni[1]=x,i.ni=1,0):-1;for(f=1;u>f&&0==E[f];f++);for(f>d&&(d=f),h=1,c=1;15>=c;c++)if(h<<=1,h-=E[c],0>h)return-1;if(h>0&&(0==e||1!=u))return-1;for(P[1]=0,c=1;15>c;c++)P[c+1]=P[c]+E[c];for(l=0;r>l;l++)0!=t[l]&&(s[P[t[l]]++]=l);switch(e){case 0:k=R=s,z=T.Jn;break;case 1:k=T.Bn,R=T.On,z=T._n;break;default:k=T.Qn,R=T.Gn,z=T.$n}if(y=0,l=0,c=f,v=o.ni,w=d,p=0,S=-1,m=1<<d,F=m-1,1==e&&(T.ti?m>=tc:m>tc)||2==e&&(T.ti?m>=T.ei:m>T.ei))return 1;for(;;){x=Pc(s,l,c,p,e,k,R,z,T.Ln),b=1<<c-p,g=1<<w,f=g;do{g-=b;let e=(y>>p)+g;n.ni[v+e]=x}while(0!=g);for(b=1<<c-1;y&b;)b>>=1;if(0!=b?(y&=b-1,y+=b):y=0,l++,0==--E[c]){if(c==u)break;c=t[s[l]]}if(c>d&&(y&F)!=S){for(0==p&&(p=d),v+=1<<w,w=c-p,h=1<<w;u>w+p&&(h-=E[w+p],h>0);)w++,h<<=1;if(m+=1<<w,1==e&&(T.ti?m>=tc:m>tc)||2==e&&(T.ti?m>=T.ei:m>T.ei))return 1;S=y&F,n.ni[o.ni+S]=Fc(w,d,v-o.ni)}}if(0!=y)for(x=vc(c-p);0!=y;){for(0!=p&&(y&F)!=S&&(p=0,c=d,v=o.ni,w=d,x=vc(c)),n.ni[v+(y>>p)]=x,b=1<<c-1;y&b;)b>>=1;0!=b?(y&=b-1,y+=b):y=0}return o.ni+=m,i.ni=d,0}function Pc(e,t,r,n,i,s,o,a,c){let l;if(c?e[t]<a:e[t]+1<a)l=xc(0,r-n,e[t]);else if(c?e[t]>a:e[t]>=a)if(c&&1==i){let i=e[t]-257;l=xc(o[i],r-n,s[i])}else{let i=c?e[t]:e[t]-a;l=xc(o[i],r-n,s[i])}else l=((e=0)=>Fc(96,e,0))(r-n);return l}var Tc=new ao(0),Uc={ii:!0,si:new ao(544),oi:Tc,ai:Tc},Dc={ii:!0,si:new ao(544),oi:Tc,ai:Tc};function Mc(e){let t;return!(e&&(t=e.o,!(!t||t.Zt!=e||t.Ln&&(16191>t.En||t.En>16209)||!t.Ln&&(16180>t.En||t.En>16211))))}function Ic(e){let t=e.Ln?Dc:Uc,r={ni:0};if(t.ii){let n,i,s;for(n=0;144>n;)e.Vn[n++]=8;for(;256>n;)e.Vn[n++]=9;for(;280>n;)e.Vn[n++]=7;for(;288>n;)e.Vn[n++]=8;t.si.fill(0),s=t.si,t.oi=s,i=9;let o={ni:s},a={ni:i},c={ni:0};for(Ec(1,e.Vn,288,o,a,e.qn,c,e.Ln),s=o.ni,i=a.ni,e.Kn=c.ni,n=0;32>n;)e.Vn[n++]=5;i=5;let l=c.ni,f={ni:s},u={ni:i};r.ni=l,Ec(2,e.Vn,32,f,u,e.qn,r,e.Ln),t.ai=s.slice(l),t.ii=!1}e.kn=t.oi,e.Rn=9,e.tt=t.ai,e.rt=5,e.Kn=r.ni}var Cc=class extends fo{constructor(){super("Need more input")}};function Nc(e,t){let r,n,i,s,o,a,c,l,f,u,d,w,p,h,m,y,b,g=new so(4);if(Mc(e)||!e.It||!e.Tt&&0!=e.Dt)return-2;a=0,l=0,c=0,f=0,n=po,i=0,s=po,o=0,r=e.o,16191==r.En&&(r.En=16192),k(),u=a,d=c,b=0;try{for(;;)switch(r.En){case 16180:if(0==r.cr){r.En=16192;break}if(P(16),2&r.cr&&35615==l){0==r.qt&&(r.qt=15),r.Mn=Sa(0),r.Mn=x(r.Mn,l),z(),r.En=16181;break}if(r.lr&&(r.lr.ci=-1),!(1&r.cr)||((T(8)<<8)+(l>>8))%31){e.jt="incorrect header check",r.En=16209;break}if(8!=T(4)){e.jt="unknown compression method",r.En=16209;break}if(U(4),y=T(4)+8,0==r.qt&&(r.qt=y),y>15||y>r.qt){e.jt="invalid window size",r.En=16209;break}r.Dn=1<<y,r.Un=0,e.i=r.Mn=fa(0),r.En=512&l?16189:16191,z();break;case 16181:if(P(16),r.Un=l,8!=(255&r.Un)){e.jt="unknown compression method",r.En=16209;break}if(57344&r.Un){e.jt="unknown header flags set",r.En=16209;break}r.lr&&(r.lr.yn=l>>8&1),512&r.Un&&4&r.cr&&(r.Mn=x(r.Mn,l)),z(),r.En=16182;case 16182:P(32),r.lr&&(r.lr.Fn=l),512&r.Un&&4&r.cr&&(r.Mn=v(r.Mn,l)),z(),r.En=16183;case 16183:P(16),r.lr&&(r.lr.fi=255&l,r.lr.xn=l>>8),512&r.Un&&4&r.cr&&(r.Mn=x(r.Mn,l)),z(),r.En=16184;case 16184:1024&r.Un?(P(16),r.Cn=l,r.lr&&(r.lr.vn=l),512&r.Un&&4&r.cr&&(r.Mn=x(r.Mn,l)),z()):r.lr&&(r.lr.bn=po),r.En=16185;case 16185:if(1024&r.Un&&(w=r.Cn,w>a&&(w=a),w&&(r.lr&&r.lr.bn&&r.lr.ui&&(y=r.lr.vn-r.Cn)<r.lr.ui&&So(r.lr.bn,y,n,i,w),512&r.Un&&4&r.cr&&(r.Mn=Sa(r.Mn,n.subarray(i,i+w),w)),a-=w,i+=w,r.Cn-=w),r.Cn))return S();r.Cn=0,r.En=16186;case 16186:if(2048&r.Un){if(0==a)return S();w=0;do{y=n[i+w++],r.lr&&r.lr.di&&r.Cn<r.lr.di&&(r.lr.gn[r.Cn++]=y)}while(y&&a>w);if(512&r.Un&&4&r.cr&&(r.Mn=Sa(r.Mn,n.subarray(i,i+w),w)),a-=w,i+=w,y)return S()}else r.lr&&(r.lr.gn=po);r.Cn=0,r.En=16187;case 16187:if(4096&r.Un){if(0==a)return S();w=0;do{y=n[i+w++],r.lr&&r.lr.wi&&r.Cn<r.lr.wi&&(r.lr.Sn[r.Cn++]=y)}while(y&&a>w);if(512&r.Un&&4&r.cr&&(r.Mn=Sa(r.Mn,n.subarray(i,i+w),w)),a-=w,i+=w,y)return S()}else r.lr&&(r.lr.Sn=po);r.En=16188;case 16188:if(512&r.Un){if(P(16),4&r.cr&&l!=(65535&r.Mn)){e.jt="header crc mismatch",r.En=16209;break}z()}r.lr&&(r.lr.hn=r.Un>>9&1,r.lr.ci=1),e.i=r.Mn=Sa(0),r.En=16191;break;case 16189:P(32),e.i=r.Mn=kc(l),z(),r.En=16190;case 16190:if(!r.Tn)return R(),2;e.i=r.Mn=fa(0),r.En=16191;case 16191:if(5==t||6==t)return S();case 16192:if(r.Pn){D(),r.En=16206;break}switch(P(3),r.Pn=!!T(1),U(1),T(2)){case 0:r.En=16193;break;case 1:if(Ic(r),r.En=16199,6==t)return U(2),S();break;case 2:r.En=16196;break;case 3:e.jt="invalid block type",r.En=16209}U(2);break;case 16193:if(D(),P(32),(65535&l)!=(l>>>16^65535)){e.jt="invalid stored block lengths",r.En=16209;break}if(r.Cn=65535&l,z(),r.En=16194,6==t)return S();case 16194:r.En=16195;case 16195:if(w=r.Cn,w){if(w>a&&(w=a),w>c&&(w=c),0==w)return S();So(s,o,n,i,w),a-=w,i+=w,c-=w,o+=w,r.Cn-=w;break}r.En=16191;break;case 16196:if(P(14),r.An=T(5)+257,U(5),r.jn=T(5)+1,U(5),r.Nn=T(4)+4,U(4),r.An>286||!r.Ln&&r.jn>30){e.jt=r.Ln?"too many length":"too many length or distance symbols",r.En=16209;break}r.Wn=0,r.En=16197;case 16197:for(;r.Wn<r.Nn;)P(3),r.Vn[wo[r.Wn++]]=T(3),U(3);for(;19>r.Wn;)r.Vn[wo[r.Wn++]]=0;r.Zn=r.Hn,r.kn=r.tt=r.Zn,r.Rn=7;let u={ni:r.Zn},g={ni:r.Rn},M={ni:0};if(b=Ec(0,r.Vn,19,u,g,r.qn,M,r.Ln),r.Zn=u.ni,r.Rn=g.ni,b){e.jt="invalid code lengths set",r.En=16209;break}r.Wn=0,r.En=16198;case 16198:for(;r.Wn<r.An+r.jn;){for(;h=r.kn[T(r.Rn)],(h>>>16&255)>f;)E();if(16>(65535&h))U(h>>>16&255),r.Vn[r.Wn++]=65535&h;else{if(16==(65535&h)){if(P(2+(h>>>16&255)),U(h>>>16&255),0==r.Wn){e.jt="invalid bit length repeat",r.En=16209;break}y=r.Vn[r.Wn-1],w=3+T(2),U(2)}else 17==(65535&h)?(P(3+(h>>>16&255)),U(h>>>16&255),y=0,w=3+T(3),U(3)):(P(7+(h>>>16&255)),U(h>>>16&255),y=0,w=11+T(7),U(7));if(r.Wn+w>r.An+r.jn){e.jt="invalid bit length repeat",r.En=16209;break}for(;w--;)r.Vn[r.Wn++]=y}}if(16209==r.En)break;if(0==r.Vn[256]){e.jt="invalid code -- missing end-of-block",r.En=16209;break}r.Zn=r.Hn,r.Rn=9;let I={ni:r.Zn},C={ni:r.Rn},N={ni:0};b=Ec(1,r.Vn,r.An,I,C,r.qn,N,r.Ln),r.Zn=I.ni,r.Rn=C.ni;let A=N.ni;if(r.kn=r.Zn.slice(0,A),b){e.jt="invalid literal/lengths set",r.En=16209;break}r.rt=6;let j=r.Vn.subarray(r.An,r.An+r.jn),W={ni:r.Zn},Z={ni:r.rt},V={ni:A};if(b=Ec(2,j,r.jn,W,Z,r.qn,V,r.Ln),r.Zn=W.ni,r.rt=Z.ni,r.tt=r.Zn.slice(A),b){e.jt="invalid distances set",r.En=16209;break}if(r.En=16199,6==t)return S();case 16199:r.En=16200;case 16200:if(!r.Ln&&a>=6&&c>=258){R(),bc(e,d),k(),16191==r.En&&(r.Xn=-1);break}for(r.Xn=0;h=r.kn[T(r.Rn)],(h>>>16&255)>f;)E();if(h>>>24&&!(h>>>24&240)){for(m=h;h=r.kn[(65535&m)+(T((m>>>16&255)+(m>>>24))>>(m>>>16&255))],(m>>>16&255)+(h>>>16&255)>f;)E();U(m>>>16&255),r.Xn+=m>>>16&255}if(U(h>>>16&255),r.Xn+=h>>>16&255,r.Cn=65535&h,!(h>>>24)){r.En=16205;break}if(h>>>24&32){r.Xn=-1,r.En=16191;break}if(h>>>24&64){e.jt="invalid literal/length code",r.En=16209;break}r.bn=h>>>24&(r.Ln?31:15),r.En=16201;case 16201:r.bn&&(P(r.bn),r.Cn+=T(r.bn),U(r.bn),r.Xn+=r.bn),r.Yn=r.Cn,r.En=16202;case 16202:for(;h=r.tt[T(r.rt)],(h>>>16&255)>f;)E();if(!(h>>>24&240)){for(m=h;h=r.tt[(65535&m)+(T((m>>>16&255)+(m>>>24))>>(m>>>16&255))],(m>>>16&255)+(h>>>16&255)>f;)E();U(m>>>16&255),r.Xn+=m>>>16&255}if(U(h>>>16&255),r.Xn+=h>>>16&255,h>>>24&64){e.jt="invalid distance code",r.En=16209;break}r.dt=65535&h,r.bn=h>>>24&15,r.En=16203;case 16203:r.bn&&(P(r.bn),r.dt+=T(r.bn),U(r.bn),r.Xn+=r.bn),r.En=16204;case 16204:if(0==c)return S();if(w=d-c,r.dt>w){if(w=r.dt-w,w>r.k&&r.zn){e.jt="invalid distance too far back",r.En=16209;break}w>r.Ht?(w-=r.Ht,p=r.Vt-w):p=r.Ht-w,w>r.Cn&&(w=r.Cn),w>c&&(w=c);for(let e=0;w>e;++e)s[o]=255&r.u[p],++o,++p}else{p=o-r.dt,w=r.Cn,w>c&&(w=c);for(let e=0;w>e;++e)s[o]=s[p],++o,++p}w>c&&(w=c),c-=w,r.Cn-=w,0==r.Cn&&(r.En=16200);break;case 16205:if(0==c)return S();s[o++]=r.Cn,c--,r.En=16200;break;case 16206:if(r.cr){if(P(32),d-=c,e.At+=d,r.In+=d,4&r.cr&&d){let t=s.subarray(o-d,o);e.i=r.Mn=F(r.Mn,t,d)}if(d=c,4&r.cr&&(r.Un?l:kc(l)>>>0)!=r.Mn){e.jt="incorrect data check",r.En=16209;break}z()}r.En=16207;case 16207:if(r.cr&&r.Un){if(P(32),4&r.cr&&l!=(4294967295&r.In)){e.jt="incorrect length check",r.En=16209;break}z()}r.En=16208;case 16208:return b=1,S();case 16209:return b=-3,S();case 16210:return-4;default:return-2}}catch(e){if(e instanceof Cc)return S();throw e}function S(){if(R(),r.Vt||d!=e.Nt&&16209>r.En&&(r.Ln?16208>r.En:16206>r.En)||4!=t){let t=d-e.Nt;if(((e,t,r)=>{let n=e.o;if(!(n.u&&0!=n.u.length||(n.u=new so(1<<n.qt),n.u)))return 1;if(0==n.Vt&&(n.Vt=1<<n.qt,n.Ht=0,n.k=0),r<n.Vt){let e=n.Vt-n.Ht;e>r&&(e=r),So(n.u,n.Ht,t,t.length-r,e),(r-=e)?(So(n.u,0,t,t.length-r,r),n.Ht=r,n.k=n.Vt):(n.Ht+=e,n.Ht==n.Vt&&(n.Ht=0),n.k<n.Vt&&(n.k+=e))}else So(n.u,0,t,t.length-n.Vt,n.Vt),n.Ht=0,n.k=n.Vt;return 0})(e,e.It.subarray(e.Ct-t,e.Ct),t))return r.En=16210,-4}return u-=e.Dt,d-=e.Nt,e.Mt+=u,e.At+=d,r.In+=d,4&r.cr&&d&&(e.i=r.Mn=F(r.Mn,e.It.subarray(e.Ct-d,e.Ct),d)),e.t=r.Kt+(r.Pn?64:0)+(16191==r.En?128:0)+(16199==r.En||16194==r.En?256:0),(0==u&&0==d&&0==b||4==t&&0==b)&&(b=-5),b}function F(e,t,n){return r.Un?Sa(e,t,n):fa(e,t,n)}function x(e,t){return g[0]=255&t,g[1]=t>>>8&255,Sa(e,g,2)>>>0}function v(e,t){return g[0]=255&t,g[1]=t>>>8&255,g[2]=t>>>16&255,g[3]=t>>>24&255,Sa(e,g,4)>>>0}function k(){s=e.It,o=e.Ct,c=e.Nt,n=e.Tt,i=e.Ut,a=e.Dt,l=r.p,f=r.Kt}function R(){e.It=s,e.Ct=o,e.Nt=c,e.Tt=n,e.Ut=i,e.Dt=a,r.p=l,r.Kt=f}function z(){l=0,f=0}function E(){if(0==a)throw new Cc;a--,l+=(255&n[i])<<f,i++,l>>>=0,f+=8}function P(e){for(;e>f;)E()}function T(e){return l&(1<<e)-1}function U(e){l>>>=e,f-=e}function D(){l>>>=7&f,f-=7&f}}function Ac(e){return Mc(e)?-2:0}var jc=65536,Wc=class{constructor(e=16,t=jc){this.pi=[],this.hi=e;for(let r=0;r<lo.min(e,4);r++)this.pi.push(new so(t))}yi(e=jc){for(let t=this.pi.length-1;t>=0;t--){let r=this.pi[t];if(r.length>=e)return this.pi.splice(t,1),r}return new so(e)}release(e){this.pi.length<this.hi&&this.pi.push(e)}};function Zc(e){let t=new Wc(32,jc),r=null;function n(){let t=e.bi(),r=e.gi(t);if(0!=r&&0!=r)throw new fo("init failed: "+r);return{Zt:t}}function i(e){try{t.release(e)}catch{}}return new co({start(){},transform(s,o){r||(r=n());let a=r.Zt;if(r.Si)return;let c=0;for(;c<s.length;){let n=lo.min(s.length-c,32768),l=s.subarray(c,c+n);for(a.Tt=l,a.Ut=0,a.Dt=l.length;a.Dt>0;){let n=t.yi(),s=!1;try{a.It=n,a.Ct=0,a.Nt=n.length;let i=e.Fi(a,0),c=n.length-a.Nt;if(c>0){let e=!1,r={xi:n.subarray(0,c),release:()=>{e||(e=!0,t.release(n))}};s=!0,o.enqueue(r)}if(1==i){r.Si=!0;break}if(0!=i)throw new fo("process error: "+i)}finally{s||i(n)}}if(r.Si)break;c+=n}},flush(s){if(r&&r.Si)return;r||(r=n());let o=r.Zt;for(;;){let r=t.yi(),n=!1;try{o.It=r,o.Ct=0,o.Nt=r.length;let i=e.Fi(o,4),a=r.length-o.Nt;if(a>0){let e=!1,i={xi:r.subarray(0,a),release:()=>{e||(e=!0,t.release(r))}};n=!0,s.enqueue(i)}if(1==i)break;if(0!=i)throw new fo("finalization error: "+i)}finally{n||i(r)}}let a=e.ki(o);if(0!=a&&0!=a)throw new fo("end failed: "+a)}})}function Vc(){return new co({start(){},transform(e,t){try{t.enqueue(e.xi.slice(0))}finally{e.release()}},flush(){}})}ue({workerURI:"./core/web-worker-native.js",wasmURI:null,CompressionStreamZlib:class{constructor(e="deflate",t){let r=function(e="deflate",t){let r="gzip"==e?31:"deflate-raw"==e?-15:15,n=t&&"number"==typeof t.level?t.level:-1;return Zc({bi:()=>(()=>{let e=xo();return e.o=Ao(e),e})(),gi:e=>((e,t,r=8,n=15,i=qo,s=0)=>{let o=1;if(!e)return-2;if(e.jt="",-1==t&&(t=6),0>n){if(o=0,-15>n)return-2;n=-n}else n>15&&(o=2,n-=16);if(1>i||i>9||8!=r||8>n||n>15||0>t||t>9||0>s||s>4||8==n&&1!=o)return-2;8==n&&(n=9);let a=Ao(e);return a?(e.o=a,a.Zt=e,a.ar=42,a.cr=o,a.lr=void 0,a.qt=n,a.Vt=1<<a.qt,a.ur=a.Vt-1,a.dr=i+7,a.wr=1<<a.dr,a.pr=a.wr-1,a.mr=(a.dr+Ho-1)/Ho,a.u=new so(2*a.Vt),a.yr=new oo(a.Vt),a.gr=new oo(a.wr),a.k=0,a.Sr=1<<i+6,a.Jt=new so(4*a.Sr),a.vr=4*a.Sr,a.u&&a.yr&&a.gr&&a.Jt?(a.Br=a.Jt.subarray(a.Sr),a.$t=a.Fr+a.Sr,a.sr=3*(a.Sr-1),a.Wr=t,a.Zr=s,a.Gr=r,(e=>{let t=(e=>{let t;return qa(e)?-2:(e.Mt=e.At=0,e.jt="",e.t=2,t=e.o,t._t=0,t.kr=t.Fr,0>t.cr&&(t.cr=-t.cr),t.ar=2==t.cr?57:42,e.i=2==t.cr?Sa(0):fa(0),t.Tr=-2,(e=>{if(e.nr&&e.nr.length>=Go)for(let t=0;Go>t;t++)e.nr[t]=Wo();else{e.nr=[];for(let t=0;Go>t;t++)e.nr.push(Wo())}if(e.ir&&e.ir.length>=2*Oo+1)for(let t=0;2*Oo+1>t;t++)e.ir[t]=Wo();else{e.ir=[];for(let t=0;2*Oo+1>t;t++)e.ir.push(Wo())}if(e.sn&&e.sn.length>=2*Qo+1)for(let t=0;2*Qo+1>t;t++)e.sn[t]=Wo();else{e.sn=[];for(let t=0;2*Qo+1>t;t++)e.sn.push(Wo())}e.an=new Ro(e.nr,new zo(oa,ta,Lo+1,Bo,Jo)),e.cn=new Ro(e.ir,new zo(aa,ra,0,Oo,Jo)),e.ln=new Ro(e.sn,new zo(null,na,0,Qo,7)),e.p=0,e.Kt=0,e.Or=0,ka(e)})(t),0)})(e);return 0==t&&(e=>{e.Jr=2*e.Vt,ja(e),e.Kr=Ia[e.Wr].dn,e.Vr=Ia[e.Wr].un,e.qr=Ia[e.Wr].wn,e.Hr=Ia[e.Wr].pn,e.Dr=0,e.Ur=0,e.Mr=0,e.Pr=0,e.Ir=e.Cr=Ho-1,e.Ar=0,e.jr=0})(e.o),t})(e)):(a.ar=666,e.jt=Eo(-4),La(e),-4)):-4})(e,n,8,r,8,0),Fi:Ya,ki:La})}(e,t);this.writable=r.writable,this.readable=r.readable.pipeThrough(Vc())}},DecompressionStreamZlib:class{constructor(e="deflate"){let t=((e="deflate")=>{let t="gzip"==e?31:"deflate-raw"==e?-15:"deflate64-raw"==e?-16:15;return Zc({bi:()=>(()=>{let e=xo();return e.o=Sc(e,!1),e})(),gi:e=>function(e,t){let r,n;if(!e)return-2;e.jt="";let i=-16==t;return n=Sc(e,i),e.o=n,n.Zt=e,n.En=i?16191:16180,r=((e,t)=>{let r,n;if(Mc(e))return-2;if(n=e.o,0>t){if(-16>t)return-2;r=0,n.Ln=-16==t,t=-t}else r=5+(t>>4),n.Ln=!1,48>t&&(t&=15);let i=n.Ln?16:15;return t&&(8>t||t>i)?-2:(n.u.length>0&&n.qt!=t&&(n.u=po),n.cr=r,n.qt=t,(e=>{let t;return Mc(e)?-2:(t=e.o,t.Vt=0,t.k=0,t.Ht=0,(e=>{let t;return Mc(e)?-2:(t=e.o,e.Mt=e.At=t.In=0,e.jt="",t.cr&&(e.i=1&t.cr),t.En=t.Ln?16191:16180,t.Pn=!1,t.Tn=!1,t.Un=-1,t.Dn=t.Ln?65536:32768,delete t.lr,t.p=0,t.Kt=0,t.kn=t.Hn,t.tt=t.Hn,t.Zn=t.Hn,t.zn=!0,t.Xn=-1,0)})(e))})(e))})(e,t),r}(e,t),Fi:Nc,ki:Ac})})(e);this.writable=t.writable,this.readable=t.readable.pipeThrough(Vc())}}}),ue({workerURI:e=>{const t="text/javascript",r=(e=>{let t=0,r=0,n=0,i=new w(1024),s=0,o=0;for(;!o;){o=c(1);const e=c(2);if(0==e)l();else if(1==e)f(ge(ye),ge(be));else{if(2!=e)throw d("invalid deflate block type");f(...u())}}return i.subarray(0,s);function a(){if(t>=e.length)throw d("unexpected end of deflate data");return e[t++]}function c(e){for(;e>n;)r|=a()<<n,n+=8;const t=r&(1<<e)-1;return r>>>=e,n-=e,t}function l(){r=0,n=0;const e=a()|a()<<8;t+=2,h(s+e);for(let t=0;e>t;t++)i[s++]=a()}function f(e,t){let r=p(e);for(;256!=r;){if(256>r)h(s+1),i[s++]=r;else{const e=r-257,n=de[e]+c(we[e]),o=p(t),a=pe[o]+c(he[o]);h(s+n);const l=s-a;for(let e=0;n>e;e++)i[s++]=i[l+e]}r=p(e)}}function u(){const e=c(5)+257,t=c(5)+1,r=c(4)+4,n=new w(19);for(let e=0;r>e;e++)n[me[e]]=c(3);const i=ge(n),s=new w(e+t);let o=0;for(;o<s.length;){const e=p(i);if(16>e)s[o++]=e;else if(16==e){const e=s[o-1];let t=c(2)+3;for(;t--;)s[o++]=e}else o+=17==e?c(3)+3:c(7)+11}return[ge(s.subarray(0,e)),ge(s.subarray(e))]}function p(e){const{o:t,symbols:r}=e;let n=0,i=0,s=0;for(let e=1;15>=e;e++){n|=c(1);const o=t[e];if(o>n-i)return r[s+(n-i)];s+=o,i=i+o<<1,n<<=1}throw d("invalid huffman code")}function h(e){if(i.length<e){let t=2*i.length;for(;e>t;)t*=2;const r=new w(t);r.set(i.subarray(0,s)),i=r}}})((e=>{const t=(e=(e+"").replace(/[^A-Za-z0-9+/=]/g,"")).length,r=[];for(let n=0;t>n;n+=4){const t=Se.indexOf(e[n])<<18|Se.indexOf(e[n+1])<<12|(63&Se.indexOf(e[n+2]))<<6|63&Se.indexOf(e[n+3]);r.push(t>>16&255),"="!==e[n+2]&&r.push(t>>8&255),"="!==e[n+3]&&r.push(255&t)}return new w(r)})("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"));if(e){const e=new y([r],{type:t});return u.createObjectURL(e)}return"data:"+t+";base64,"+(e=>{let t="";const r=e.length;let n=0;for(;r>n+2;n+=3){const r=e[n]<<16|e[n+1]<<8|e[n+2];t+=Se[r>>18&63]+Se[r>>12&63]+Se[r>>6&63]+Se[63&r]}const i=r-n;if(1===i){const r=e[n]<<16;t+=Se[r>>18&63]+Se[r>>12&63]+"=="}else if(2===i){const r=e[n]<<16|e[n+1]<<8;t+=Se[r>>18&63]+Se[r>>12&63]+Se[r>>6&63]+"="}return t})(r)}}),e.BlobReader=Jr,e.BlobWriter=_r,e.Data64URIReader=class extends Br{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const n=e.indexOf(",")+1;r.assign(this,{dataURI:e,Ri:n,size:o.floor(.75*(t-n))})}readUint8Array(e,t){const{Ri:r,dataURI:n}=this,i=new w(t),s=4*o.floor(e/3),a=atob(n.substring(s+r,4*o.ceil((e+t)/3)+r)),c=e-3*o.floor(s/4);let l=0;for(let e=c;c+t>e&&e<a.length;e++)i[e-c]=a.charCodeAt(e),l++;return l<i.length?i.subarray(0,l):i}},e.Data64URIWriter=class extends Or{constructor(e){super(),r.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let r,i=t.pending;const s=t.pending.length;for(t.pending="",r=0;r<3*o.floor((s+e.length)/3)-s;r++)i+=n.fromCharCode(e[r]);for(;r<e.length;r++)t.pending+=n.fromCharCode(e[r]);i.length>2?t.data+=v(i):t.pending=i+t.pending}getData(){return this.data+v(this.pending)}},e.ERR_AMBIGUOUS_ARCHIVE=Di,e.ERR_BAD_FORMAT=Si,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=vi,e.ERR_DUPLICATED_NAME=us,e.ERR_ENCRYPTED=zi,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=Mi,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=xi,e.ERR_EOCDR_NOT_FOUND=Fi,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Ri,e.ERR_HTTP_RANGE=Nr,e.ERR_HTTP_RESOURCE_CHANGED=Ar,e.ERR_INVALID_CODEC_DEFINITION=Fe,e.ERR_INVALID_CODEC_MODULE=ve,e.ERR_INVALID_COMMENT=ds,e.ERR_INVALID_COMPRESSED_DATA=Vt,e.ERR_INVALID_ENCRYPTION_STRENGTH=ms,e.ERR_INVALID_ENTRY_COMMENT=ws,e.ERR_INVALID_ENTRY_NAME=ps,e.ERR_INVALID_EXTRAFIELD_DATA=gs,e.ERR_INVALID_EXTRAFIELD_TYPE=bs,e.ERR_INVALID_PASSWORD=Je,e.ERR_INVALID_SIGNATURE=_e,e.ERR_INVALID_UNCOMPRESSED_SIZE=Zt,e.ERR_INVALID_VERSION=hs,e.ERR_ITERATOR_COMPLETED_TOO_SOON=jr,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=ki,e.ERR_OVERLAPPING_ENTRY=Ui,e.ERR_RESERVED_COMPRESSION_METHOD=xe,e.ERR_SPLIT_ZIP_FILE=Ti,e.ERR_UNDEFINED_READER=ks,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=vs,e.ERR_UNSUPPORTED_COMPRESSION=Pi,e.ERR_UNSUPPORTED_ENCRYPTION=Ei,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=ys,e.ERR_UNSUPPORTED_FORMAT=xs,e.ERR_WRITER_NOT_INITIALIZED=Wr,e.ERR_ZIP_NOT_EMPTY=Rs,e.HttpRangeReader=class extends yn{constructor(e,t={}){super(e,r.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=yn,e.Reader=Br,e.SplitDataReader=bn,e.SplitDataWriter=gn,e.TextReader=class extends Jr{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends _r{constructor(e){super(e),r.assign(this,{encoding:e,zi:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,zi:t}=this,n=await super.getData();if(n.text&&t)return n.text();{const t=new FileReader;return new b((i,s)=>{r.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>s(t.error)}),t.readAsText(n,e)})}}},e.Uint8ArrayReader=class extends Br{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),r.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Or{constructor(e){super(),this.defaultBufferSize=e||262144}init(e=0){r.assign(this,{offset:0,array:new w(e>0?e:this.defaultBufferSize)}),super.init()}writeUint8Array(e){const t=this,r=t.offset+e.length;if(r>t.array.length){let e=t.array.length?2*t.array.length:t.defaultBufferSize;for(;r>e;)e*=2;const n=t.array;t.array=new w(e),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.array.length?this.array:this.array.slice(0,this.offset)}},e.Writer=Or,e.ZipReader=ji,e.ZipReaderStream=Wi,e.ZipWriter=Ds,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:r}=new k;this.readable=t,this.zipWriter=new Ds(r,e),this.Ye=new l}transform(e){const t=this.zipWriter;let r;const{readable:n,writable:i}=new k({start(e){r=e},flush:()=>{(async()=>{try{await t.close()}catch(e){try{await t.writer.writable.abort(e)}catch{}}})()}});return Ms(this,this.zipWriter.add(e,n),e=>r.error(e)),{readable:this.readable,writable:i}}writable(e){let t;const{readable:r,writable:n}=new k({start(e){t=e}});return Ms(this,this.zipWriter.add(e,r),e=>t.error(e)),n}async close(e,r={}){return await b.all(t.from(this.Ye)),this.zipWriter.close(e,r)}},e.configure=fe,e.createBlobTempStream=(e={})=>{const{thresholdBytes:t=ro}=e;return()=>{const e=[];let r,n,i,s=0,o=!1;const a=new z({async write(i){o?await r.write(i):(e.push(i),s+=i.length,s>t&&await(async()=>{const t=new k;n=new f(t.readable).blob(),r=t.writable.getWriter(),o=!0;for(const t of e)await r.write(t);e.length=0})())},async close(){r&&(await r.close(),r=null)}});let c=0;return{writable:a,readable:new R({async pull(t){if(o){if(!i){const e=await n;i=e.stream().getReader()}const{value:e,done:r}=await i.read();r?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){i&&await i.cancel(e)}},{highWaterMark:0}),dispose:async()=>{if(r){try{await r.abort()}catch{}r=null}n&&(n.catch(()=>{}),n=null),e.length=0}}}},e.createOPFSTempStream=(e={})=>{const{thresholdBytes:t=eo,directoryName:r=to,getDirectory:n=()=>T.storage.getDirectory()}=e;let i;function s(){return i||(i=b.resolve(n()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return()=>{const e=[];let r,n,i,o,a=0,c=!1;const l=new z({async write(o){c?await i.write(o):(e.push(o),a+=o.length,a>t&&await(async()=>{const t=await s();r=x.randomUUID(),n=await t.getFileHandle(r,{create:!0}),i=(await n.createWritable()).getWriter(),c=!0;for(const t of e)await i.write(t);e.length=0})())},async close(){i&&(await i.close(),i=null)}});let f=0;return{writable:l,readable:new R({async pull(t){if(c){if(!o){const e=await n.getFile();o=e.stream().getReader()}const{value:e,done:r}=await o.read();r?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){o&&await o.cancel(e)}},{highWaterMark:0}),dispose:async()=>{if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await s();await e.removeEntry(r)}catch{}n=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=(e={})=>{const{thresholdBytes:t=no,directoryName:r=io,getDirectory:n}=e;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d("createSyncAccessHandle is only available in dedicated workers");const i=n||(()=>T.storage.getDirectory());let s;function a(){return s||(s=b.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),s}return()=>{const e=[];let r,n,i=0,s=!1,c=0,l=0;const f=new z({async write(o){s?(n.write(o,{at:c}),c+=o.length):(e.push(o),i+=o.length,i>t&&await(async()=>{const t=await a();r=x.randomUUID();const i=await t.getFileHandle(r,{create:!0});n=await i.createSyncAccessHandle(),s=!0;for(const t of e)n.write(t,{at:c}),c+=t.length;e.length=0})())},close(){n&&n.flush()}});let u=0;return{writable:f,readable:new R({pull(t){if(s){const e=c-l;if(0>=e)return void t.close();const r=new w(o.min(524288,e)),i=n.read(r,{at:l});i?(l+=i,t.enqueue(r.subarray(0,i))):t.close()}else u<e.length?t.enqueue(e[u++]):t.close()}},{highWaterMark:0}),dispose:async()=>{if(n){try{n.close()}catch{}n=null}if(r){try{const e=await a();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=()=>"application/octet-stream",e.registerCodec=(e={})=>{const{compressionMethod:t,format:r,codecURI:n,CompressionStream:s,DecompressionStream:o,versionNeeded:a}=e;if(!i.isInteger(t)||0>t||t>I||typeof r!=ke||!r.length)throw new d(Fe);if(Re.includes(t))throw new d(xe);const c=typeof s==re||typeof o==re;if(!(c||typeof n==ke&&n.length))throw new d(Fe);ze.set(t,{compressionMethod:t,format:r,codecURI:n,versionNeeded:a}),c&&Ue(r,{CompressionStream:s,DecompressionStream:o})},e.resetConfiguration=()=>{for(const e of oe)delete ae[e];r.assign(ae,se)},e.terminateWorkers=async()=>{await b.allSettled(vr.map(e=>(Ir(e),e.terminate()))),ar=$},e.unregisterCodec=e=>{const t=ze.get(e);if(t){let r;ze.delete(e),ze.forEach(e=>r=r||e.format==t.format),r||Ee.delete(t.format)}}});