@zip.js/zip.js 2.13.0 → 2.14.0

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 (50) hide show
  1. package/BENCHMARKS.md +46 -1
  2. package/deno.json +1 -1
  3. package/dist/zip-core-external.js +594 -935
  4. package/dist/zip-core-external.min.js +1 -1
  5. package/dist/zip-core.js +461 -908
  6. package/dist/zip-core.min.js +1 -1
  7. package/dist/zip-fs-core-external.js +601 -938
  8. package/dist/zip-fs-core-external.min.js +1 -1
  9. package/dist/zip-fs-core.js +468 -911
  10. package/dist/zip-fs-core.min.js +1 -1
  11. package/dist/zip-fs-external.js +601 -938
  12. package/dist/zip-fs-external.min.js +1 -1
  13. package/dist/zip-fs-native.js +470 -913
  14. package/dist/zip-fs-native.min.js +1 -1
  15. package/dist/zip-fs.js +604 -941
  16. package/dist/zip-fs.min.js +1 -1
  17. package/dist/zip-legacy.js +463 -910
  18. package/dist/zip-legacy.min.js +1 -1
  19. package/dist/zip-module.wasm +0 -0
  20. package/dist/zip-native.js +463 -910
  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 +597 -938
  25. package/dist/zip.min.js +1 -1
  26. package/index-native.cjs +470 -913
  27. package/index-native.min.js +1 -1
  28. package/index.cjs +604 -941
  29. package/index.d.cts +58 -12
  30. package/index.d.ts +58 -12
  31. package/index.min.js +1 -1
  32. package/lib/core/codec-worker-web.js +35 -11
  33. package/lib/core/codec-worker.js +33 -23
  34. package/lib/core/io.js +29 -21
  35. package/lib/core/streams/aes-crypto-stream.js +58 -99
  36. package/lib/core/streams/codecs/aes-hmac-sha1.js +348 -0
  37. package/lib/core/streams/zlib-wasm/aes-hmac-sha1-wasm.js +106 -0
  38. package/lib/core/streams/zlib-wasm/zlib-streams-loader.js +4 -0
  39. package/lib/core/streams/zlib-wasm/zlib-streams.wasm +0 -0
  40. package/lib/core/version.js +1 -1
  41. package/lib/core/web-worker-base.js +15 -9
  42. package/lib/core/web-worker-inline-native.js +1 -1
  43. package/lib/core/web-worker-inline-wasm.js +1 -1
  44. package/lib/core/web-worker-wasm.js +2 -0
  45. package/lib/core/zip-fs.js +7 -3
  46. package/lib/core/zip-writer.js +1 -2
  47. package/lib/core/zlib-streams-inline.js +1 -1
  48. package/lib/zip-module-wasm-base.js +3 -1
  49. package/package.json +1 -1
  50. package/lib/core/streams/codecs/sjcl.js +0 -795
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})}(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:o,BigInt:i,Math:s,Date:a,Map:c,Set:l,Response:u,URL:d,Error:f,Uint8Array:w,Uint16Array:p,Uint32Array:m,DataView:h,Blob:y,Promise:E,TextEncoder:S,TextDecoder:g,document:b,crypto:x,btoa:R,TransformStream:z,ReadableStream:F,WritableStream:D,CompressionStream:A,DecompressionStream:C,navigator:T,Worker:I,Symbol:k,setTimeout:v,clearTimeout:_,structuredClone:N}="undefined"!=typeof globalThis?globalThis:self;var U=void 0!==b?b.currentScript:null;const M=4294967295,O=65535,L=255,B=67324752,W=134695760,P=W,Z=84233040,V=33639248,H=101010256,G=101075792,j=117853008,q=46,K=22,Y=20,X=56,J=39169,Q=21589,$=6534,ee=30837,te=30805,ne=2048,re=61440,oe=16384,ie=2048,se=1024,ae="/",ce=30,le=new a(2107,11,31,23,59,58),ue=new a(1980,0,1),de=void 0,fe=1/0,we="undefined",pe="function",me="object",he="string",ye="boolean",Ee=new w,Se=k.asyncDispose||k(),ge="password",be="rawPassword",xe="passThrough",Re="signal",ze="useWebWorkers",Fe="useCompressionStream",De="transferStreams",Ae="preventClose",Ce="level",Te="useUnicodeFileNames",Ie="dataDescriptor",ke="offset",ve="usdz",_e="maxAppendedDataSize",Ne="entry",Ue="filename",Me="comment",Oe="strict",Le="balanced",Be="tolerant",We="compressed",Pe="Invalid option (must be a function)",Ze="Invalid signal (must be an AbortSignal instance)",Ve="Invalid password (password must be a string, rawPassword must be a Uint8Array)",He="Invalid passThrough option (must be a boolean or 'compressed')",Ge="The operation was aborted";function je(e){if(e&&typeof e!=pe)throw new f(Pe);return e}function qe(e){if(e&&(typeof e.addEventListener!=pe||typeof e.aborted!=ye))throw new f(Ze);return e||de}function Ke(e){if(e&&e.aborted)throw e.reason===de?new DOMException(Ge,"AbortError"):e.reason}function Ye(e,t){if(e&&typeof e!=he||t&&!(t instanceof w))throw new f(Ve)}function Xe(e){if(e!==de&&typeof e!=ye&&e!==We)throw new f(He);return e}function Je(e,t,n){if(!o.isInteger(e)||e<0||e>t)throw new f(n)}function Qe(e,t,n){e!==de&&Je(e,t,n)}function $e(e){return typeof e==he&&e.trim()?o(e):e}const et="Invalid maxWorkers (must be an integer greater than 0)",tt="Invalid baseURI (must be a string)",nt="Invalid URI (must be a string or a function returning a string)";let rt=2;try{typeof T!=we&&T.hardwareConcurrency&&(rt=T.hardwareConcurrency)}catch{}const ot={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:rt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof A!=we&&A,DecompressionStream:typeof C!=we&&C},it="maxWorkers",st="baseURI",at=["wasmURI","workerURI"],ct=["chunkSize",it,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],lt=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],ut=[st,...at,"useCompressionStream","useWebWorkers","transferStreams",...ct,...lt],dt={...ot};function ft(){return dt}function wt(e){return pt(e.chunkSize)}function pt(e){return e=$e(e),o.isInteger(e)&&e>=1?s.max(e,64):65536}function mt(e){const t={};for(const n of ut){const r=e[n];r!==de&&(t[n]=ht(n,r))}return t}function ht(e,t){if(ct.includes(e)){if(t=$e(t),e==it&&(!o.isInteger(t)||t<1))throw new f(et)}else if(lt.includes(e))je(t);else if(e==st){if(t&&typeof t!=he)throw new f(tt)}else if(at.includes(e)&&t&&typeof t!=he&&typeof t!=pe)throw new f(nt);return t}function yt(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===de&&r===de)return e;const o=n.assign({},e);return o.CompressionStreamFallback===de&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===de&&(o.DecompressionStreamFallback=r),o}function Et(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function St(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function gt(e){return new h(e.buffer,e.byteOffset,e.byteLength)}function bt(e){return Boolean(e)&&"object"==typeof e}const xt=[[],[],[],[],[],[],[],[]];for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=1&t?t>>>1^3988292384:t>>>1;xt[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){const n=xt[t-1][e];xt[t][e]=n>>>8^xt[0][255&n]}const[Rt,zt,Ft,Dt,At,Ct,Tt,It]=xt;class kt{constructor(e){this.o=e||-1}append(e){let t=0|this.o;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const o=new h(e.buffer,e.byteOffset,n),i=n-8;for(;r<=i;r+=8){const e=t^o.getInt32(r,!0),n=o.getInt32(r+4,!0);t=It[255&e]^Tt[e>>>8&255]^Ct[e>>>16&255]^At[e>>>24&255]^Dt[255&n]^Ft[n>>>8&255]^zt[n>>>16&255]^Rt[n>>>24&255]}}for(;r<n;r++)t=t>>>8^Rt[255&(t^e[r])];this.o=t}get(){return~this.o}}class vt extends z{constructor(){let e;const t=new kt;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function _t(e){if(typeof S==we){e=unescape(encodeURIComponent(e));const t=new w(e.length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new S).encode(e)}const Nt={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=Nt.l(n);return 32===r?e.concat(t):Nt.m(t,r,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+Nt.l(n)},h(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,s.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=Nt.S(t,e[n-1]&2147483648>>t-1,1)),e},S:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,l:e=>s.round(e/1099511627776)||32,m(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let o=0;o<e.length;o++)r.push(n|e[o]>>>t),n=e[o]<<32-t;const o=e.length?e[e.length-1]:0,i=Nt.l(o);return r.push(Nt.S(t+i&31,t+i>32?n:r.pop(),1)),r}},Ut={bytes:{R(e){const t=Nt.bitLength(e)/8,n=new w(t);let r;for(let o=0;o<t;o++)3&o||(r=e[o/4]),n[o]=r>>>24,r<<=8;return n},F(e){const t=[];let n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],3&~n||(t.push(r),r=0);return 3&n&&t.push(Nt.S(8*(3&n),r)),t}}},Mt=class{constructor(e){const t=this;t.blockSize=512,t.D=[1732584193,4023233417,2562383102,271733878,3285377520],t.A=[1518500249,1859775393,2400959708,3395469782],e?(t.C=e.C.slice(0),t.T=e.T.slice(0),t.I=e.I):t.reset()}reset(){const e=this;return e.C=e.D.slice(0),e.T=[],e.I=0,e}update(e){const t=this;"string"==typeof e&&(e=Ut.v.F(e));const n=t.T=Nt.concat(t.T,e),r=t.I,o=t.I=r+Nt.bitLength(e);if(o>9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const i=new m(n);let s=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);e<=o;e+=t.blockSize)t._(i.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t}N(){const e=this;let t=e.T;const n=e.C;t=Nt.concat(t,[Nt.S(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e.I/4294967296)),t.push(0|e.I);t.length;)e._(t.splice(0,16));return e.reset(),n}U(e,t,n,r){return e<=19?t&n|~t&r:e<=39?t^n^r:e<=59?t&n|t&r|n&r:e<=79?t^n^r:void 0}M(e,t){return t<<e|t>>>32-e}_(e){const n=this,r=n.C,o=t(80);for(let t=0;t<16;t++)o[t]=e[t];let i=r[0],a=r[1],c=r[2],l=r[3],u=r[4];for(let e=0;e<=79;e++){e>=16&&(o[e]=n.M(1,o[e-3]^o[e-8]^o[e-14]^o[e-16]));const t=n.M(5,i)+n.U(e,a,c,l)+u+o[e]+n.A[s.floor(e/20)]|0;u=l,l=c,c=n.M(30,a),a=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+a|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},Ot={importKey:e=>new Ot.O(Ut.bytes.F(e)),L(e,t,n,r){if(n=n||1e4,r<0||n<0)throw new f("invalid params to pbkdf2");const o=1+(r>>5)<<2;let i,s,a,c,l;const u=new ArrayBuffer(o),d=new h(u);let w=0;const p=Nt;for(t=Ut.bytes.F(t),l=1;w<(o||1);l++){for(i=s=e.encrypt(p.concat(t,[l])),a=1;a<n;a++)for(s=e.encrypt(s),c=0;c<s.length;c++)i[c]^=s[c];for(a=0;w<(o||1)&&a<i.length;a++)d.setInt32(w,i[a]),w+=4}return u.slice(0,r/8)},O:class{constructor(e){const t=this,n=t.B=Mt,r=[[],[]];t.W=[new n,new n];const o=t.W[0].blockSize/32;e.length>o&&(e=(new n).update(e).N());for(let t=0;t<o;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.W[0].update(r[0]),t.W[1].update(r[1]),t.P=new n(t.W[0])}reset(){const e=this;e.P=new e.B(e.W[0]),e.Z=!1}update(e){this.Z=!0,this.P.update(e)}digest(){const e=this,t=e.P.N(),n=new e.B(e.W[1]).update(t).N();return e.reset(),n}encrypt(e){if(this.Z)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Lt=typeof x!=we&&typeof x.getRandomValues==pe,Bt="Invalid password",Wt="Invalid authentication code",Pt="zipjs-abort-check-password",Zt="Crypto API not supported";function Vt(e){if(Lt)return x.getRandomValues(e);throw new f(Zt)}const Ht=16,Gt={name:"PBKDF2"},jt=n.assign({hash:{name:"HMAC"}},Gt),qt=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Gt),Kt=["deriveBits"],Yt=[8,12,16],Xt=[16,24,32],Jt=10,Qt=[0,0,0,0],$t=typeof x!=we,en=$t&&x.subtle,tn=$t&&typeof en!=we,nn=Ut.bytes,rn=class{constructor(e){const t=this;t.V=[[[],[],[],[],[]],[[],[],[],[],[]]],t.V[0][0][0]||t.H();const n=t.V[0][4],r=t.V[1],o=e.length;let i,s,a,c=1;if(4!==o&&6!==o&&8!==o)throw new f("invalid aes key size");for(t.A=[s=e.slice(0),a=[]],i=o;i<4*o+28;i++){let e=s[i-1];(i%o===0||8===o&&i%o===4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%o===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),s[i]=s[i-o]^e}for(let e=0;i;e++,i--){const t=s[3&e?i:i-4];a[e]=i<=4||e<4?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.G(e,0)}decrypt(e){return this.G(e,1)}H(){const e=this.V[0],t=this.V[1],n=e[4],r=t[4],o=[],i=[];let s,a,c,l;for(let e=0;e<256;e++)i[(o[e]=e<<1^283*(e>>7))^e]=e;for(let u=s=0;!n[u];u^=a||1,s=i[s]||1){let i=s^s<<1^s<<2^s<<3^s<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=o[c=o[a=o[u]]];let d=16843009*l^65537*c^257*a^16843008*u,f=257*o[i]^16843008*i;for(let n=0;n<4;n++)e[n][u]=f=f<<24^f>>>8,t[n][i]=d=d<<24^d>>>8}for(let n=0;n<5;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}G(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this.A[t],r=n.length/4-2,o=[0,0,0,0],i=this.V[t],s=i[0],a=i[1],c=i[2],l=i[3],u=i[4];let d,w,p,m=e[0]^n[0],h=e[t?3:1]^n[1],y=e[2]^n[2],E=e[t?1:3]^n[3],S=4;for(let e=0;e<r;e++)d=s[m>>>24]^a[h>>16&255]^c[y>>8&255]^l[255&E]^n[S],w=s[h>>>24]^a[y>>16&255]^c[E>>8&255]^l[255&m]^n[S+1],p=s[y>>>24]^a[E>>16&255]^c[m>>8&255]^l[255&h]^n[S+2],E=s[E>>>24]^a[m>>16&255]^c[h>>8&255]^l[255&y]^n[S+3],S+=4,m=d,h=w,y=p;for(let e=0;e<4;e++)o[t?3&-e:e]=u[m>>>24]<<24^u[h>>16&255]<<16^u[y>>8&255]<<8^u[255&E]^n[S++],d=m,m=h,h=y,y=E,E=d;return o}},on=class{constructor(e,t){this.j=e,this.K=t,this.Y=t}reset(){this.Y=this.K}update(e){return this.X(this.j,e,this.Y)}J(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}$(e){0===(e[0]=this.J(e[0]))&&(e[1]=this.J(e[1]))}X(e,t,n){let r;if(!(r=t.length))return[];const o=Nt.bitLength(t);for(let o=0;o<r;o+=4){this.$(n);const r=e.encrypt(n);t[o]^=r[0],t[o+1]^=r[1],t[o+2]^=r[2],t[o+3]^=r[3]}return Nt.h(t,o)}},sn=Ot.O;let an=$t&&tn&&typeof en.importKey==pe,cn=$t&&tn&&typeof en.deriveBits==pe;class ln extends z{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){super({start(){dn(this,e,t,n)},async transform(e,t){const n=this,{password:o,strength:i,ee:s,ready:a}=n;o?(await async function(e,t,n,r){const o=await wn(e,t,n,mn(r,0,Yt[t])),i=mn(r,Yt[t]);if(o[0]!=i[0]||o[1]!=i[1])throw new f(Bt)}(n,i,o,mn(e,0,Yt[i]+2)),e=mn(e,Yt[i]+2),r?t.error(new f(Pt)):s()):await a;const c=new w(e.length-Jt-(e.length-Jt)%Ht);t.enqueue(fn(n,e,c,0,Jt,!0))},async flush(e){const{te:t,ne:n,re:r,ready:i}=this;if(n&&t){await i;const s=mn(r,0,r.length-Jt),a=mn(r,r.length-Jt);let c=Ee;if(s.length){const e=yn(nn,s);n.update(e);const r=t.update(e);c=hn(nn,r)}const l=mn(hn(nn,n.digest()),0,Jt);let u=r.length<Jt?1:0;for(let e=0;e<Jt;e++)u|=l[e]^a[e];if(u&&o)throw new f(Wt);e.enqueue(c)}}})}}class un extends z{constructor({password:e,rawPassword:t,encryptionStrength:n}){super({start(){dn(this,e,t,n)},async transform(e,t){const n=this,{password:r,strength:o,ee:i,ready:s}=n;let a=Ee;r?(a=await async function(e,t,n){const r=Vt(new w(Yt[t]));return Et(r,await wn(e,t,n,r))}(n,o,r),i()):await s;const c=new w(a.length+e.length-e.length%Ht);c.set(a,0),t.enqueue(fn(n,e,c,a.length,0))},async flush(e){const{te:t,ne:n,re:r,ready:o}=this;if(n&&t){await o;let i=Ee;if(r.length){const e=t.update(yn(nn,r));n.update(e),i=hn(nn,e)}const s=hn(nn,n.digest()).slice(0,Jt);e.enqueue(Et(i,s))}}})}}function dn(e,t,r,o){n.assign(e,{ready:new E(t=>e.ee=t),password:pn(t,r),strength:o-1,re:Ee})}function fn(e,t,n,r,o,i){const{te:s,ne:a,re:c}=e;c.length&&(t=Et(c,t));const l=t.length-o;let u;for(n=function(e,t){if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e}(n,r+(l-l%Ht)),u=0;u<=l-Ht;u+=Ht){const e=yn(nn,mn(t,u,u+Ht));i&&a.update(e);const o=s.update(e);i||a.update(o),n.set(hn(nn,o),u+r)}return e.re=mn(t,u),n}async function wn(e,r,o,i){e.password=null;const s=await async function(e,t,n,r,o){if(!an)return Ot.importKey(t);try{return await en.importKey("raw",t,n,!1,o)}catch{return an=!1,Ot.importKey(t)}}(0,o,jt,0,Kt),a=await async function(e,t,n){if(!cn)return Ot.L(t,e.salt,qt.iterations,n);try{return await en.deriveBits(e,t,n)}catch{return cn=!1,Ot.L(t,e.salt,qt.iterations,n)}}(n.assign({salt:i},qt),s,8*(2*Xt[r]+2)),c=new w(a),l=yn(nn,mn(c,0,Xt[r])),u=yn(nn,mn(c,Xt[r],2*Xt[r])),d=mn(c,2*Xt[r]);return n.assign(e,{keys:{key:l,oe:u,passwordVerification:d},te:new on(new rn(l),t.from(Qt)),ne:new sn(u)}),d}function pn(e,t){return t===de?_t(e):t}function mn(e,t,n){return e.subarray(t,n)}function hn(e,t){return e.R(t)}function yn(e,t){return e.F(t)}class En extends z{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){gn(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=bn(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t[11]^n.passwordVerification))throw new f(Bt);e=e.subarray(12)}r?t.error(new f(Pt)):t.enqueue(bn(n,e))}})}}class Sn extends z{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){gn(this,e,t,n)},transform(e,t){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=Vt(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(xn(n,t),0),o=12}else r=new w(e.length),o=0;r.set(xn(n,e),o),t.enqueue(r)}})}}function gn(e,t,r,o){n.assign(e,{password:t,rawPassword:r,passwordVerification:o}),function(e,t,r){const o=[305419896,591751049,878082192];if(n.assign(e,{keys:o,ie:new kt(o[0]),se:new kt(o[2])}),r)for(let t=0;t<r.length;t++)Rn(e,r[t]);else for(let n=0;n<t.length;n++)Rn(e,t.charCodeAt(n))}(e,t,r)}function bn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=zn(e)^t[r],Rn(e,n[r]);return n}function xn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=zn(e)^t[r],Rn(e,t[r]);return n}function Rn(e,t){let[,n]=e.keys;e.ie.append([t]);const r=~e.ie.get();n=Dn(s.imul(Dn(n+Fn(r)),134775813)+1),e.se.append([n>>>24]);const o=~e.se.get();e.keys=[r,n,o]}function zn(e){const t=2|e.keys[2];return Fn(s.imul(t,1^t)>>>8)}function Fn(e){return 255&e}function Dn(e){return 4294967295&e}function An(e){if(e instanceof F)return e;const t=e.getReader();return new F({async pull(e){const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})}function Cn(e,t){e=An(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=pe||new y([]).stream()instanceof F)return new u(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new D({write(e){r.push(e)}})).then(()=>new y(r,n))}function Tn(e){if(e instanceof D)return e;const t=e.getWriter();return new D({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const In="Invalid codec definition",kn="Reserved compression method",vn="Invalid codec module",_n="Compression method not supported",Nn=[0,8,9,99],Un=new c,Mn=new c;function On(e){return Un.get(e)}function Ln(){return t.from(Un.values(),e=>n.assign({},e,Mn.get(e.format)))}function Bn(e){return Mn.get(e)}function Wn(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=pe&&typeof r!=pe)throw new f(vn);Mn.set(e,{CompressionStream:n,DecompressionStream:r})}const Pn="Invalid uncompressed size",Zn="Invalid compressed data",Vn="Invalid CRC32",Hn="deflate-raw",Gn="deflate64-raw",jn="gzip",qn=[31,139,8];class Kn extends z{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:s,zipCrypto:a,computeCrc32:c,level:l,deflate64:u,format:d,compressionMethod:f,inputSize:w}=e,p=this;let m,y,E,S=super.readable;const g=d&&Bn(d),b=c&&o&&!u&&!g&&(!i||a)&&Boolean(s&&r);if(i&&!a||!c||b||(m=new vt,S=rr(S,m)),o)if(g)S=or(S,tr(g.CompressionStream,d,{level:l,chunkSize:t,compressionMethod:f,uncompressedSize:w}));else if(b)E=new Yn,S=or(S,new r(jn)),S=rr(S,E);else try{S=nr(S,s,{level:l,chunkSize:t},r,n)}catch(e){let t;try{t=new r(jn)}catch{throw e}S=or(S,t),S=rr(S,new Yn)}i&&(a?S=rr(S,new Sn(e)):(y=new un(e),S=rr(S,y))),er(p,S,()=>{i&&!a||!c||(p.crc32=b?E.crc32:new h(m.value.buffer).getUint32(0))})}}class Yn extends z{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=s.min(t,e.length);if(t-=n,!(e=e.subarray(n)).length)return}const o=n.length+e.length;if(o<=8)return void(n=Et(n,e));const i=o-8,a=s.min(i,n.length);r.enqueue(Et(n.subarray(0,a),e.subarray(0,i-a))),n=Et(n.subarray(a),e.subarray(i-a))},flush(){const t=gt(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class Xn extends z{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:s,crc32:a,compressed:c,useCompressionStream:l,deflate64:u,format:d,compressionMethod:p,rawBitFlag:m,outputSize:y}=e;let S,g,b=super.readable;if(i&&(o?b=rr(b,new En(e)):(g=new ln(e),b=rr(b,g))),c){const e=d&&Bn(d);if(e)b=or(b,tr(e.DecompressionStream,d,{chunkSize:t,compressionMethod:p,rawBitFlag:m,uncompressedSize:y}));else try{b=nr(b,l,{chunkSize:t,deflate64:u},r,n)}catch(e){if(u||y===de)throw e;let t;try{t=new r(jn)}catch{throw e}b=function(e,t,n){const r=new kt;let o,i,s,a=0,c=!1;const l=new E((e,t)=>{i=e,s=t});l.catch(()=>{}),n||i();const u=new z({start(e){const t=new w(10);t.set(qn),e.enqueue(t)},transform(e,t){t.enqueue(e)},async flush(e){c=!0,p();try{await l}finally{m()}const t=new w(8),o=gt(t);o.setUint32(0,r.get(),!0),o.setUint32(4,n,!0),e.enqueue(t)},cancel(e){s(e)}}),d=new z({transform(e,t){r.append(e),a+=e.length,a>=n?i():c&&p(),t.enqueue(e)},cancel(e){s(e)}});return e=rr(e,u),rr(e=or(e,t),d);function p(){m(),o=v(()=>s(new f(Pn)),5e3)}function m(){_(o)}}(b,t,y)}b=function(e){const t=e.getReader();return new F({async pull(e){let n;try{n=await t.read()}catch(e){if(e&&e.message)throw e;const t=new f(Zn);throw t.cause=e,t}const{value:r,done:o}=n;o?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})}(b)}s&&(S=new vt,b=rr(b,S)),er(this,b,()=>{if(s){const e=new h(S.value.buffer);if(a!=e.getUint32(0,!1))throw new f(Vn)}})}}const Jn=new c;function Qn(e,t){if(!e)return!1;let n=Jn.get(e);n||(n=new c,Jn.set(e,n));let r=n.get(t);if(r===de){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function $n(e){return Qn(e,Hn)}function er(e,t,r){t=rr(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function tr(e,t,n){if(!e)throw new f(_n);return new e(t,n)}function nr(e,t,n,r,o){const i=t&&r?r:o||r,s=n.deflate64?Gn:Hn;let a;try{a=new i(s,n)}catch(e){if(!t||!o||i==o)throw e;a=new o(s,n)}return or(e,a)}function rr(e,t){return An(e).pipeThrough(t)}function or(e,t){const n=t.writable.getWriter(),r=e.getReader();return async function(){try{for(;;){await n.ready;const e=await r.read();if(e.done){await n.close();break}await n.write(e.value)}}catch(e){await async function(e,t){try{await e.abort(t)}catch{}}(n,e),await async function(e,t){try{await e.cancel(t)}catch{}}(r,e)}}(),t.readable}const ir="data",sr="deflate",ar="inflate";class cr extends z{constructor(e,t){super({});const r=this,{codecType:o}=e;let i;o.startsWith(sr)?i=Kn:o.startsWith(ar)&&(i=Xn),r.outputSize=0;let s=0;const a=new i(e,t),c=super.readable,l=new z({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:s})}}),u=new z({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==de&&r.outputSize>e.outputSize))throw new f(Pn)},flush(){const{crc32:e}=a;n.assign(r,{crc32:e,inputSize:s})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(a).pipeThrough(u)})}}class lr extends z{constructor(e){const t=[];let r=0,i=0;function s(){const n=new w(e);let o=0;for(;o<e;){const r=t[0],i=e-o;r.length<=i?(n.set(r,o),o+=r.length,t.shift()):(n.set(r.subarray(0,i),o),t[0]=r.subarray(i),o+=i)}return r-=e,n}(!o.isFinite(e)||e<1)&&(e=65536),super({transform(n,o){for(t.push(n),r+=n.length;r>e;)i+=e,o.enqueue(s())},flush(e){r&&(i+=r,e.enqueue(function(e,t){const n=new w(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(t,r)))}}),n.defineProperty(this,"outputSize",{get:()=>i})}}const ur="Worker startup timeout";let dr,fr,wr;function pr(e){e.createWorker?fr=!0:dr=!1}class mr{constructor(e,{readable:t,writable:r},o,i){const{options:s,config:a,ae:c,useWebWorkers:l,transferStreams:u,workerURI:d}=o;let{createWorker:f}=o;const{signal:w}=c;return fr&&(f=de),n.assign(e,{ce:!0,le:(e.le||0)+1,readable:t.pipeThrough(new lr(wt(a))).pipeThrough(new hr(c),{signal:w}),writable:r,options:n.assign({},s),ue:o,workerURI:d,createWorker:f,transferStreams:u,terminate:()=>new E(t=>{const{de:n,ce:r}=e;n?(r?e.fe=t:(n.terminate(),t()),e.we=null):t()}),pe(){if(e.ce){const{fe:t}=e;t&&(e.fe=null,e.me=!0,e.de.terminate(),t()),e.ce=!1,i(e)}}}),dr===de&&(dr=typeof I!=we),(l&&wr&&(dr&&d||f)?wr:Er)(e,a)}}class hr extends z{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await yr(e,n)},async transform(e,r){o+=e.length,t&&await yr(t,o,n),r.enqueue(e)},async flush(){r&&await yr(r,o)}})}}async function yr(e,...t){try{await e(...t)}catch{}}function Er(e,t){return{run:()=>Sr(e,t)}}async function Sr({options:e,readable:t,writable:n,pe:r,ue:o},i){let s,a;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(sr),n=t?i.CompressionStreamFallback:i.DecompressionStreamFallback,r=t?i.CompressionStream:i.DecompressionStream;if(e.useCompressionStream){if(n&&n.he&&!$n(r))try{await void 0}catch{}}else try{await void 0}catch{n&&!n.he||(e.useCompressionStream=!0)}}s=new cr(e,i),a=new lr(wt(i)),await t.pipeThrough(s).pipeThrough(a).pipeTo(n,{preventClose:!0,preventAbort:!0});const{crc32:r,inputSize:o,outputSize:c}=s;return{crc32:r,inputSize:o,outputSize:c}}catch(e){if(s){const t=a?a.outputSize:0;if(o.outputSize=t,bt(e))try{e.outputSize=t}catch{}}throw e}finally{r()}}const gr={type:"module"},br="error";let xr,Rr,zr,Fr=!0;try{Fr=typeof N==pe&&N(new DOMException("","AbortError")).code!==de}catch{}var Dr;function Ar(e){const{reader:t}=e;t&&t.releaseLock(),e.reader=null,e.writer=null}function Cr(e){const{de:t}=e;if(t)try{t.terminate()}catch{}e.we=null}function Tr(e,t,r,o,i=!0){const{createWorker:s}=r;let a,c,l;if(s)a=s();else if(Rr===de||xr!==e){const n=typeof e==pe;c=n?e(i):e;const s=c.startsWith("data:"),u=c.startsWith("blob:");if(s||u){o===de&&(o=!1),o&&(l=gr);try{a=new I(c,l)}catch(i){if(u)try{d.revokeObjectURL(c)}catch{}if(n&&u)return Tr(e,t,r,o,!1);if(o)throw i;return Tr(e,t,r,!0,!1)}}else{o===de&&(o=!0),o&&(l=gr);try{c=new d(c,t)}catch{}try{a=new I(c,l)}catch(n){if(o)return Tr(e,t,r,!1,i);throw n}}xr=e,Rr=c,zr=l}else a=new I(Rr,zr);return a.addEventListener("message",e=>{r.ye=!0,Ir(r),async function({data:e},t){const{type:r,value:o,messageId:i,result:s,error:a,errorValue:c}=e,{reader:l,writer:u,Ee:d,Se:p,pe:m,le:h}=t,y=()=>t.le!=h;try{if(a)a.outputSize!==de&&(t.outputSize=a.outputSize),E(function(e,t){const{message:r,stack:o,code:i,name:s,outputSize:a,cause:c,codecImportFailed:l}=e;let u;if(t?u=t.value:(u=n.assign(new f(r),{stack:o,code:i,name:s}),c&&(u.cause=n.assign(new f(c.message),{name:c.name}))),bt(u))try{a!==de&&(u.outputSize=a),l&&(u.codecImportFailed=!0),t&&(u.name!==s&&(u.name=s),u.code!==i&&(u.code=i))}catch{}return u}(a,c));else{if("pull"==r){const{value:e,done:n}=await l.read();y()||vr({type:ir,value:e,done:n,messageId:i},t)}if(r==ir){const e=new w(o);await u.ready,await u.write(e),t.outputSize+=e.length,y()||vr({type:"ack",messageId:i},t)}"close"==r&&function(e){y()||(d(e),S(),m())}(s)}}catch(a){y()||(Cr(t),E(a))}function E(e){y()||(p(e),S(),bt(e)&&e.codecImportFailed||m())}function S(){u&&u.releaseLock()}}(e,r)}),a.addEventListener(br,e=>kr(e,r)),a.addEventListener("messageerror",e=>kr(e,r)),a}function Ir(e){const{ge:t}=e;t&&(_(t),e.ge=null)}function kr(e,t){e.preventDefault&&e.preventDefault(),Ir(t);const{ye:r,Se:o,writer:i,pe:s}=t;Cr(t),r||(t.de=null);let a=e.error||new f(e.message||br);r||(a=n.assign(new f(a.message||br),{be:!0}),t.xe=a),o&&(o(a),i&&i.releaseLock(),r&&s())}function vr(e,{de:t,writer:n,transferStreams:r,ye:o}){try{const{value:n,readable:i,writable:s}=e,a=[];if(n&&(e.value=St(n),a.push(e.value.buffer)),r&&Fr&&o?(i&&a.push(i),s&&a.push(s)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch{Fr=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}Dr=function(e,t){const{baseURI:r,chunkSize:i,workerStartupTimeout:s}=t;let{wasmURI:a}=t;if(!e.we){let c;typeof a==pe&&(a=a());try{c=Tr(e.workerURI,r,e)}catch{return pr(e),Er(e,t)}n.assign(e,{de:c,ye:!1,me:!1,xe:null,we:{run:async()=>{try{return await async function(e,t){if(!e.de){const{xe:t}=e;e.xe=null;const n=t||new f(ur);throw n.be=!0,n}let r,i;const s=new E((t,n)=>{r=t,i=t=>{const{outputSize:r,ue:o}=e;if(o.outputSize=r,bt(t)&&t.outputSize===de)try{t.outputSize=r}catch{}n(t)}});n.assign(e,{reader:null,writer:null,outputSize:0,Ee:r,Se:i,result:s});const{readable:a,options:c}=e,{writable:l,closed:u,Re:d}=function(e){const t=new AbortController,{writable:n,readable:r}=new z,o=r.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return o.catch(()=>{}),{writable:n,closed:o,Re:()=>t.abort()}}(e.writable);let w;try{w=vr({type:"start",options:c,config:t,readable:a,writable:l},e)}catch(t){d();try{await u}catch{}throw e.pe(),t}w||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const{workerStartupTimeout:p}=t;!e.ye&&o.isFinite(p)&&p>=0&&(e.ge=v(()=>function(e){if(e.ge=null,e.ye)return;const{Se:t,writer:n}=e;if(Cr(e),e.de=null,t){const e=new f(ur);e.be=!0,t(e),n&&n.releaseLock()}}(e),p));try{const e=await s;return await m(),await u,e}catch(e){await m(),d();try{await u}catch{}throw e}async function m(){if(!w&&!l.locked)try{await l.getWriter().close()}catch{}}}(e,{chunkSize:i,wasmURI:a,baseURI:r,workerStartupTimeout:s})}catch(n){if(n&&n.be)return pr(e),Ar(e),Sr(e,t);if(n&&n.codecImportFailed){if(e.reader)return Ar(e),Sr(e,t);e.pe()}throw n}}}})}return e.we},wr=Dr;let _r=[];const Nr=[];let Ur,Mr,Or=0;async function Lr(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:s,useCompressionStream:a,compressed:c,checkCrc32:l,computeCrc32:u,encrypted:f,format:w,codecURI:p}=n,{workerURI:m,createWorker:h,maxWorkers:y}=r;w&&(p&&(n.codecURI=function(e,t){try{return new d(e,t).toString()}catch{return e}}(p,r.baseURI)),await async function(e,t){!Mn.has(e)&&t&&Wn(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(w,n.codecURI)),t.transferStreams=!w&&(i||i===de&&r.transferStreams);const S=!(c||l||u||f),g=w===de||Boolean(n.codecURI);return t.useWebWorkers=!S&&g&&(s||s===de&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&m?m:de,t.createWorker=t.useWebWorkers&&h?h:de,n.useCompressionStream=a||a===de&&r.useCompressionStream,(await async function(){const n=_r.find(e=>!e.ce);if(n)return Vr(n),new mr(n,e,t,b);if(_r.length<y){const n={ze:Or};return Or++,_r.push(n),new mr(n,e,t,b)}return new E(n=>{Nr.push({resolve:n,stream:e,ue:t}),Mr=r.workerStarvationTimeout,Br()})}()).run();function b(e){if(Wr(),Nr.length){const[{resolve:t,stream:n,ue:r}]=Nr.splice(0,1);t(new mr(e,n,r,b)),Br()}else e.de?(Vr(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.me?e.me=!1:e.Fe=v(async()=>{_r=_r.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}(e,t)):_r=_r.filter(t=>t!=e)}}function Br(){!Ur&&Nr.length&&o.isFinite(Mr)&&Mr>=0&&(Ur=v(Pr,Mr))}function Wr(){Ur&&(_(Ur),Ur=null)}function Pr(){if(Ur=null,Nr.length){const[{resolve:e,stream:t,ue:r}]=Nr.splice(0,1),o=n.assign({},r,{useWebWorkers:!1,workerURI:de,createWorker:de});e(new mr({},t,o,Zr)),Br()}}function Zr(){Wr(),Br()}function Vr(e){const{Fe:t}=e;t&&(_(t),e.Fe=null)}const Hr="\0\u263a\u263b\u2665\u2666\u2663\u2660\u2022\u25d8\u25cb\u25d9\u2642\u2640\u266a\u266b\u263c\u25ba\u25c4\u2195\u203c\xb6\xa7\u25ac\u21a8\u2191\u2193\u2192\u2190\u221f\u2194\u25b2\u25bc !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xa2\xa3\xa5\u20a7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\u2310\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0".split("");function Gr(e,t){return jr(e,t,!0)}function jr(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?function(e){let t="";for(let n=0;n<e.length;n++)t+=Hr[e[n]];return t}(e):new g(t,{ignoreBOM:n}).decode(e)}const qr="HTTP error ",Kr="HTTP Range not supported",Yr="HTTP resource changed",Xr="Writer iterator completed too soon",Jr="Writer not initialized",Qr="Invalid writer (size must be writable)",$r="Content-Range",eo="Range",to="GET",no="bytes",ro=16777216,oo="writable",io=k();class so{constructor(){this.size=0}init(){this.initialized=!0}}class ao extends so{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=wt(ft())}={}){const r=this;let o=0;return n=pt(n),new F({async pull(i){const a=t===de?n:s.min(n,t-o),c=await Bo(r,e+o,a);c.length&&(i.enqueue(c),o+=c.length),(t!==de&&o>=t||!c.length&&a)&&i.close()}})}}class co extends so{constructor(){super();const e=this,t=new D({write(t){if(!e.initialized)throw new f(Jr);return e.writeUint8Array(St(t))}});n.defineProperty(e,oo,{get:()=>t})}writeUint8Array(){}}let lo,uo;class fo extends ao{constructor(e){super(),n.assign(this,{De:e,size:e.size}),uo||(uo=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,n=await e.read();for(;!n.done;)t+=n.value.length,n=await e.read();lo=1==t}catch{lo=!1}})())}createReadable(e){const{De:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};if(typeof t.stream==pe){if(!r&&o>=n)return An(t.stream());if(lo)return An(t.slice(r,r+o).stream())}return super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=!e&&r>=n.size?n.De:n.De.slice(e,r);let i=await o.arrayBuffer();return i.byteLength>t&&(i=i.slice(e,r)),new w(i)}}class wo extends so{constructor(e){super();const t=this,r=new z;n.defineProperty(t,oo,{get:()=>r.writable}),t.contentType=e,t.Ae=Cn(r.readable,e),t.Ae.catch(()=>{})}getData(){return this.Ae}}class po extends ao{constructor(e,t){super(),ho(this,e,t)}async init(){await yo(this,To,Fo),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:i}=t;if((n||r)&&i!==de){const{offset:n=0,size:r=i-n}=e||{};if(r>0&&n<i)return function(e,t,n){let r,i=t,a=0,c=n;return new F({start:()=>l(),async pull(e){r||await l();const{value:t,done:n}=await r.read();if(n)throw new f(Kr);const o=t.length>a?t.subarray(0,a):t;a-=o.length,c-=o.length,o.length&&e.enqueue(o),a||(await async function(){const e=r;r=de,await e.cancel()}(),c||e.close())},cancel:e=>r&&r.cancel(e)});async function l(){const t=s.min(e.maximumRangeSize,c),n=await To(to,e,Ro(e,i,t));if(206!=n.status)throw new f(Kr);const l=n.headers.get($r);if(l){const e=o(l.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=i)throw new f(Kr)}xo(e,n),bo(e,n),i+=t,a=t,r=n.body.getReader()}}(t,n,s.min(r,i-n))}return super.createReadable(e)}readUint8Array(e,t){return Eo(this,e,t,To,Fo)}}class mo extends ao{constructor(e,t){super(),ho(this,e,t)}async init(){await yo(this,Io,Do),super.init()}readUint8Array(e,t){return Eo(this,e,t,Io,Do)}}function ho(e,t,r){const{preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c=!0,maximumRangeSize:l=ro,fetch:u}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(e,{url:t,options:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c,maximumRangeSize:l,fetch:u})}async function yo(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a}=e;if(function(e){const{baseURI:t}=ft(),{protocol:n}=new d(e,t);return"http:"==n||"https:"==n}(r)&&(i||s)&&(typeof o==we||o)){const r=await t(to,e,Ro(e,a?-22:void 0)),o=r.headers.get("Accept-Ranges");if(!(s||o&&o.toLowerCase()==no))throw new f(Kr);{if(a){const t=new w(await r.arrayBuffer());206==r.status&&t.length==K&&(e.Ce=t)}bo(e,r);const o=So(r);o===de?await Co(e,t,n):e.size=o}}else await Co(e,t,n)}async function Eo(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,Ce:c,size:l,options:u}=e;if(s||a){if(c&&t==l-K&&n==K)return c;if(t>=l||0===n)return Ee;{t+n>l&&(n=l-t);const i=await r(to,e,Ro(e,t,n));if(206!=i.status)throw new f(Kr);const s=i.headers.get($r);if(s){const e=o(s.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=t)throw new f(Kr)}xo(e,i),bo(e,i);const a=new w(await i.arrayBuffer());if(a.length!=n)throw new f(Kr);return a}}{const{data:r}=e;return r||await i(e,u),e.data.subarray(t,t+n)}}function So(e){const t=e.headers.get($r);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=o(e);if(!o.isNaN(t))return t}}}function go({headers:e}){return{Te:e.get("Etag")||de,lastModified:e.get("Last-Modified")||de}}function bo(e,t){const{checkResourceChanges:n,Ie:r}=e;n&&!r&&206==t.status&&(e.Ie=go(t))}function xo(e,t){const{checkResourceChanges:r,Ie:o,size:i}=e;if(r){const e=So(t);if(e!==de&&i!==de&&e!=i)throw new f(Yr);if(o){const e=go(t);if(n.entries(o).some(([t,n])=>n!==de&&e[t]!==de&&n!=e[t]))throw new f(Yr)}}}function Ro(e,t=0,r=1){return n.assign({},zo(e),{[eo]:no+"="+(t<0?t:t+"-"+(t+r-1))})}function zo({options:e}){const{headers:t}=e;if(t)return k.iterator in t?n.fromEntries(t):t}async function Fo(e){await Ao(e,To)}async function Do(e){await Ao(e,Io)}async function Ao(e,t){const n=await t(to,e,zo(e));e.data=new w(await n.arrayBuffer()),e.size=e.data.length}async function Co(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,zo(e)),i=r.headers.get("Content-Length");i&&!r.headers.get("Content-Encoding")?e.size=o(i):await n(e,e.options)}}async function To(e,{fetch:t=fetch,options:r,url:o},i){const s=await t(o,n.assign({},r,{method:e,headers:i}));if(s.status>=200&&s.status<=299)return s;throw 416==s.status?new f(Kr):new f(qr+(s.statusText||s.status))}function Io(e,{url:t},r){return new E((o,i)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",()=>{if(s.status>=200&&s.status<=299){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),o({status:s.status,arrayBuffer:()=>s.response,headers:new c(e)})}else i(416==s.status?new f(Kr):new f(qr+(s.statusText||s.status)))},!1),s.addEventListener("error",e=>i(e.detail?e.detail.error:new f("Network error")),!1),s.open(e,t),r)for(const e of n.entries(r))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()})}class ko extends ao{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new mo(e,t):new po(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 vo extends ao{constructor(e){super(),this.ke=e}async init(){const e=this;e.ve=0;const t=e.ke=await E.all(e.ke.map(Lo));e._e=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}Ne(e){const{_e:t,size:n}=this,r=t[e];return r===de?n:r}async readUint8Array(e,t){const n=this,{ke:r}=this;let o,i=0,a=e;for(;r[i]&&a>=r[i].size;)a-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(a+t<=r)o=await Bo(c,a,t);else{const i=r-a;o=Et(await Bo(c,a,i),await n.readUint8Array(e+i,t-i))}}else o=Ee;return n.ve=s.max(i,n.ve),o}}class _o extends so{constructor(e,t=4294967295){super();const r=this;let o,i,s;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const a=new D({async write(t){if(t===io)return void(s&&await l());const{availableSize:n}=r;if(s)t.length>=n?(await c(t.subarray(0,n)),await l(),t.length>n&&await this.write(t.subarray(n))):await c(t);else{const{value:n,done:a}=await e.next();if(a&&!n)throw new f(Xr);o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await Oo(o),i=n.writable,s=i.getWriter(),await this.write(t)}},async close(){s&&(await s.ready,await u())},async abort(e){s&&await s.abort(e)}});async function c(e){const t=e.length;t&&(await s.ready,await s.write(e),o.size+=t,r.availableSize-=t)}async function l(){await u(),r.diskOffset+=o.size,r.diskNumber++,s=null,r.availableSize=r.maxSize}async function u(){await s.close()}n.defineProperty(r,oo,{get:()=>a})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(io)}finally{e.releaseLock()}}}class No{constructor(e){return t.isArray(e)&&(e=new vo(e)),(e instanceof F||typeof e.getReader==pe)&&(e={readable:An(e)}),e}}class Uo{constructor(e){e.writable===de&&typeof e.next==pe&&(e=new _o(e)),(e instanceof D||typeof e.getWriter==pe)&&(e={writable:Tn(e)});try{e.size=e.size===de?0:e.size}catch{throw new f(Qr)}return e}}function Mo(e){return Boolean(e&&e.getData)}async function Oo(e,t){if(!e.init||e.initialized)return E.resolve();await e.init(t)}async function Lo(e){return e=new No(e),await Oo(e),e.size!==de&&e.readUint8Array||(e=new fo(await Cn(e.readable)),await Oo(e)),e}function Bo(e,t,n){return e.readUint8Array(t,n)}function Wo(e,t){return e.createReadable?e.createReadable(t):e.readUint8Array?ao.prototype.createReadable.call(e,t):e.readable}function Po(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==de&&(r.filename=n),e.push(r)}}const Zo="filename",Vo="rawFilename",Ho="comment",Go="rawComment",jo="uncompressedSize",qo="compressedSize",Ko="offset",Yo="diskNumberStart",Xo="lastModDate",Jo="rawLastModDate",Qo="lastAccessDate",$o="rawLastAccessDate",ei="creationDate",ti="rawCreationDate",ni="internalFileAttributes",ri="externalFileAttributes",oi="msdosAttributesRaw",ii="msdosAttributes",si="msDosCompatible",ai="zip64",ci="encrypted",li="version",ui="versionMadeBy",di="zipCrypto",fi="directory",wi="executable",pi="compressionMethod",mi="signature",hi="extraField",yi="unixMode",Ei="setuid",Si="setgid",gi="sticky",bi=[Zo,Vo,jo,qo,Xo,Jo,Ho,Go,Qo,$o,ei,ti,Ko,Yo,ni,ri,oi,ii,si,ai,ci,li,ui,di,fi,wi,"symlink",pi,mi,"crc32",hi,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",yi,"unixExternalUpper",Ei,Si,gi,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class xi{constructor(e){bi.forEach(t=>this[t]=e[t])}}const Ri=new l([1,J,10,Q,28789,25461,$,ee,te,22613,13]);function zi(e,t,n){return e?t?12:16+4*n:0}const Fi="File format is not recognized",Di="End of central directory not found",Ai="End of Zip64 central directory locator not found",Ci="Central directory header not found",Ti="Local file header not found",Ii="Zip64 extra field not found",ki="File contains encrypted entry",vi="Encryption method not supported",_i="Split zip file",Ni="Overlapping entry found",Ui="Entry data out of bounds",Mi="Ambiguous archive",Oi="Encrypted central directory is not supported",Li="Unsafe filename",Bi="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",Wi="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Pi="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Zi="64-bit value exceeds Number.MAX_SAFE_INTEGER",Vi="unsorted central directory",Hi="unknown version needed to extract",Gi="compressed patched data",ji="malformed extra field",qi="unknown zip64 extensible data",Ki="wrapped entries count",Yi="appended data",Xi="prepended data",Ji="prepended central directory",Qi="trailing central directory data",$i="duplicate filename",es="mismatched zip64 end of central directory record",ts="multiple end of central directory records",ns="mismatched local file header (filename)",rs="mismatched local file header (general purpose bit flag)",os="mismatched local file header (compression method)",is="mismatched local file header (crc32 or sizes)",ss=/^[a-zA-Z]:/,as="utf-8",cs="cp437",ls=[[jo,M],[qo,M],[Ko,M],[Yo,O]],us={[O]:{Ue:js,bytes:4},[M]:{Ue:qs,bytes:8}},ds=i(o.MAX_SAFE_INTEGER);class fs{constructor(e,t={}){n.assign(this,{reader:new No(e),options:t,Me:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await Oo(r),r.size!==de&&r.readUint8Array||(r=new fo(await Cn(r.readable)),await Oo(r)),r.size<K)throw new f(Fi);const o=t.warnings=[],i=Ts(e,t.options),a=i==Oe,c=i!=Be,u=vs(Ws(t,e,_e),i),d=function(e,t){if(e===de)return t;if(!Cs(e))throw new f(Wi);return e}(Ws(t,e,"filenameValidation"),i),w=Ws(t,e,"normalizeFilename"),{Oe:p,Le:m}=await _s(r,c,u);if(!p)throw await async function(e){return await As(e)==W}(r)?new f(_i):new f(Di);c&&m>1&&Bs(ts);const h=gt(p);let y=js(h,12),E=js(h,16);const S=p.offset,g=Gs(h,20),b=S+K+g,x=r.size-b;x>u&&Bs(Yi),x>0&&Po(o,Yi);let R=Gs(h,4);const F=r.ve||0;let D,A,C,T,I,k=Gs(h,6),v=Gs(h,10),_=0,N=X;const U=E==M||y==M||v==O||k==O;if(E!=M&&k!=O&&(E+=Ds(r,k)),U){const e=p.offset>=Y?await Bo(r,p.offset-Y,Y):Ee,t=gt(e);if(e.length==Y&&js(t,0)==j){E=Ds(r,js(t,4))+qs(t,8);let e=await Bo(r,E,X),i=gt(e);const c=p.offset-Y-X;if((e.length<X||js(i,0)!=G)&&E!=c&&c>=0){const t=E;E=c,E>t&&(_=E-t),e=await Bo(r,E,X),i=gt(e)}if(e.length<X||js(i,0)!=G)throw new f(Ai);if(C=!0,T=qs(i,4)>44,T){const e=s.min(qs(i,4)-44,r.size-E-X);e>0&&(N+=e,I=function(e){const t={rawExtensibleData:e};if(e.length>=28){const r=gt(e),o=Gs(r,26);n.assign(t,{compressionMethod:Gs(r,0),compressedSize:qs(r,2),uncompressedSize:qs(r,10),encryptionAlgorithm:Gs(r,18),bitLength:Gs(r,20),flags:Gs(r,22),hashAlgorithm:Gs(r,24),hashData:e.subarray(28,28+o)})}return t}(await Bo(r,E+X,e)))}R==O?R=js(i,16):R!=js(i,16)&&Ls(a,o,es),k==O?k=js(i,20):k!=js(i,20)&&Ls(a,o,es),v==O?v=qs(i,32):v!=qs(i,32)&&Ls(a,o,es),y==M?y=qs(i,40):y!=qs(i,40)&&Ls(a,o,es),E=Ds(r,k)+qs(i,48)+_}}let B=y;const P=p.offset-(C?N+Y:0);if(E>=r.size&&(_=r.size-E-y-K,E=r.size-y-K),F!=R)throw new f(_i);if(E<0)throw new f(Fi);let Z=0,H=await Bo(r,E,y),J=gt(H);if(y){if(H.length<4)throw new f(Fi);const e=P-y;if(E!=e&&k==R){const t=js(J,Z)==V||Boolean(I&&I.compressedSize)||hs(J);let n=!t;if(!n&&e>=0&&e+4<=r.size&&(n=js(gt(await Bo(r,e,4)),0)==V),n){const n=E;E=e,E>n&&(_+=E-n,D=t),H=await Bo(r,E,y),J=gt(H)}}}const Q=P-E;if(y!=Q&&Q>=0&&k==R&&(y=Q,H=await Bo(r,E,y),J=gt(H)),E<0||E>=r.size)throw new f(Fi);t.directoryOffset=E,t.directoryLength=B;const $=Ps(t,e,"decryptCentralDirectory");let ee,te;if($&&v&&H.length>=4&&js(J,0)!=V&&(T||hs(J))){const e=function(e,t,n){const r=e&&e.compressedSize?e.compressedSize:t;return r>0&&r<=n?r:n}(I,B,H.length);te=H.subarray(e),H=await $(H.subarray(0,e),I),J=gt(H),B=H.length,ee=!0}I&&!ee&&(H.length<4||js(J,0)==V)&&Po(o,qi),A=E;const ne=Ws(t,e,"filenameEncoding"),ce=Ws(t,e,"commentEncoding"),le=new l;let ue,fe=-1;const we=!a&&!C;!v&&we&&(v=ys(J,H,Z),v&&Po(o,Ki));for(let i=0;i<v;i++){const a=new ms(r,t.options);if(Z+q>H.length||js(J,Z)!=V){if(0==i&&!ee&&(T||hs(J)))throw new f(Oi);throw new f(Ci)}Ss(a,J,Z+6);const c=Boolean(a.bitFlag.languageEncodingFlag),l=Z+q,u=l+a.filenameLength,p=u+a.extraFieldLength,m=Gs(J,Z+4),h=!(m>>8),y=m>>8==3,E=H.subarray(l,u),S=Gs(J,Z+32),g=p+S,b=H.subarray(p,g),x=c,R=c,F=js(J,Z+38),D=F&L,C={readOnly:Boolean(1&D),hidden:Boolean(2&D),system:Boolean(4&D),directory:Boolean(16&D),archive:Boolean(32&D)},I=js(J,Z+42),k=Ps(t,e,"decodeText")||Gr,N=x?as:ne||cs,U=R?as:ce||cs;let M=k(E,N,Ue);if(M===de&&(M=Gr(E,N)),w){const e=w(M);e!==de&&(M=e)}if(ks(M,d)){const e=new f(Li);throw e.filename=M,e}let B=k(b,U,Me);B===de&&(B=Gr(b,U)),n.assign(a,{index:i,Be:ee,versionMadeBy:m,msDosCompatible:h,zip64:!1,compressedSize:0,uncompressedSize:0,We:S,offset:I,diskNumberStart:Gs(J,Z+34),internalFileAttributes:Gs(J,Z+36),externalFileAttributes:F,msdosAttributesRaw:D,msdosAttributes:C,rawFilename:E,filenameUTF8:x,commentUTF8:R,rawExtraField:H.subarray(u,p),rawComment:b,filename:M,comment:B}),gs(a,a,J,Z+6)&&Po(o,ji,M),a.offset+=_;const W=Ds(r,a.diskNumberStart)+a.offset;A=s.min(W,A),W<fe&&Po(o,Vi,M),fe=W,(a.version&L)>63&&Po(o,Hi,M),32&~a.rawBitFlag||Po(o,Gi,M),le.has(a.filename)&&(ue=!0),le.add(a.filename);const P=a.externalFileAttributes>>16&O;a.unixMode===de&&16877&P&&(a.unixMode=P);const G=Boolean(a.unixMode&ie),j=Boolean(a.unixMode&se),K=Boolean(512&a.unixMode),Y=40960==((a.unixMode===de?P:a.unixMode)&re),X=!Y&&(a.unixMode!==de?!!(73&a.unixMode):y&&!!(73&P)),Q=a.unixMode!==de&&(a.unixMode&re)==oe,$=(P&re)==oe;n.assign(a,{setuid:G,setgid:j,sticky:K,symlink:Y,unixExternalUpper:P,executable:X,directory:Q||$||h&&C.directory||a.filename.endsWith(ae),zipCrypto:a.encrypted&&!a.extraFieldAES});const te=new xi(a);if(te.getData=(e,n)=>a.getData(e,te,t.Me,n),te.arrayBuffer=async e=>{const r=new z,o=Cn(r.readable).then(e=>e.arrayBuffer());return o.catch(()=>{}),await a.getData(r,te,t.Me,n.assign({},e,{preventClose:!1})),o},Z=g,i==v-1&&we){const e=ys(J,H,Z);e&&(v+=e,Po(o,Ki))}const{onprogress:pe}=e;if(pe)try{await pe(i+1,v,new xi(a))}catch{}yield te}let pe=Z,me=Es(H.subarray(Z))||(ee?Es(te):de);if(!me&&!ee){const e=E+Z,t=s.min(P-e,65541);t>=6&&(me=Es(await Bo(r,e,t)))}me&&(t.digitalSignature=me,pe=Z+6+me.length),(Z!=B&&pe!=B||!ee&&Z!=y&&pe!=y)&&Ls(a,o,Qi),ue&&Ls(a,o,$i);const he=Ws(t,e,"extractPrependedData"),ye=Ws(t,e,"extractAppendedData"),Se=(a||he)&&v&&4==A&&await async function(e){const t=await As(e);return t==W||808471376==t}(r)?4:0;return a&&(_||v&&A>Se)&&Bs(Xi),(_||v&&A>4)&&Po(o,Xi),D&&Po(o,Ji),he&&(t.prependedData=A>Se?await Bo(r,Se,A-Se):Ee),t.comment=g?await Bo(r,S+K,g):Ee,ye&&(t.appendedData=b<r.size?await Bo(r,b,r.size-b):Ee),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){const{reader:e}=this;e.readUint8Array||!e.readable||e.readable.locked||await e.readable.cancel()}[Se](){return this.close()}}class ws{constructor(e={}){let r;const{readable:o,writable:i}=new z({start(e){r=e}}),s=new fs(o,e),a=s.getEntriesGenerator(),c=new l;this.readable=new F({async pull(e){const{done:t,value:r}=await a.next();if(t)return e.close();const o=function(e,t){const{readable:n,writable:r}=new z;let o;const i={cancel:async e=>{t.delete(i),await(o?o.cancel(e):n.cancel(e))}};return i.readable=new F({async pull(s){o||(o=n.getReader(),t.add(i),async function(){try{await e.getData(r,{preventClose:!1})}catch(e){try{await r.abort(e)}catch{}}finally{t.delete(i)}}());const{done:a,value:c}=await o.read();a?s.close():s.enqueue(c)},cancel:e=>i.cancel(e)},{highWaterMark:0}),i}(r,c),i={...r,readable:o.readable};delete i.getData,n.defineProperties(i,{localDirectory:{get:()=>r.localDirectory,enumerable:!0},warnings:{get:()=>r.warnings,enumerable:!0}}),e.enqueue(i)},async cancel(e){const n=t.from(c);c.clear(),r.error(e),await E.allSettled(n.map(t=>t.cancel(e))),await E.allSettled([a.return(),s.close()])}}),this.writable=i}}async function ps(e,t={}){if(e=new No(e),await Oo(e),e.size!==de&&e.readUint8Array||(e=new fo(await Cn(e.readable)),await Oo(e)),e.size<K)return!1;const n=Ts(t,{}),r=n!=Be,o=vs(t[_e],n),{Oe:i,Le:s}=await _s(e,r,o);if(!i||n==Oe&&s>1)return!1;const a=Gs(gt(i),20),c=i.offset+K+a;return e.size-c<=o}class ms{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,r,o={}){const i=this,a=ft(),{reader:c,index:l,offset:u,diskNumberStart:d,extraFieldAES:w,extraFieldZip64:p,compressionMethod:m,bitFlag:h,rawBitFlag:y,crc32:E,rawLastModDate:S,uncompressedSize:g,compressedSize:b}=i,{dataDescriptor:x}=h,R=t.localDirectory={},z=t.warnings=[],F=Ds(c,d)+u,A=await Bo(c,F,ce),C=gt(A);let T=Ws(i,o,ge),I=Ws(i,o,be);const k=Xe(Ws(i,o,xe)),v=Boolean(k),_=!0===k;if(Ye(T,I),T=T&&T.length&&T,I=I&&I.length&&I,w&&99!=w.originalCompressionMethod)throw new f(_n);if(A.length<ce||js(C,0)!=B)throw new f(Ti);Ss(R,C,4);const{extraFieldLength:N,filenameLength:U}=R,M=R.dataOffset=F+ce+U+N,O=Ws(i,o,"checkLocalDirectory"),W=Ts(o,i.options),Z=function(e,t){return e===de?t!=Be:Boolean(e)}(O,W),V=Ws(i,o,"checkLocalFilename"),H=function(e,t){return e===de?t==Oe:Boolean(e)}(V===de?O:V,W);let G=Ee;if(H&&(U||N)){const e=await Bo(c,F+ce,U+N);G=e.subarray(0,U),R.rawExtraField=e.subarray(U)}else R.rawExtraField=N?await Bo(c,F+ce+U,N):Ee;H&&(R.rawFilename=G),gs(i,R,C,4,!0)&&Po(z,ji),function(e,t,n,r,o){const{rawFilename:i}=e,s=!o,a=e.Be&&!(8192&~t.rawBitFlag);!r||a||n.length==i.length&&!n.some((e,t)=>e!=i[t])||Ls(s,o,ns),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&Ls(s,o,rs),t.compressionMethod!=e.compressionMethod&&Ls(s,o,os),t.bitFlag.dataDescriptor||a||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||Ls(s,o,is)}(i,R,G,H,Z?de:z);const{lastAccessDate:j,creationDate:q,uid:K,gid:Y}=R;j&&(t.lastAccessDate=j),q&&(t.creationDate=q),K!==de&&t.uid===de&&(t.uid=K),Y!==de&&t.gid===de&&(t.gid=Y);const X=Ws(i,o,"checkPasswordOnly"),J=i.encrypted&&R.encrypted&&(!_||X),Q=J&&!w;if(_||(t.zipCrypto=Q),J&&!(64&~R.rawBitFlag))throw new f(vi);const $=v?de:On(m);if(0!=m&&8!=m&&9!=m&&!$&&!v)throw new f(_n);if(J){if(!Q&&(w.strength<1||w.strength>3))throw new f(vi);if(!T&&!I)throw new f(ki)}if(M+b>c.size)throw new f(Ui);const ee=b,te=An(c.createReadable({offset:M,size:ee})),ne=qe(Ws(i,o,Re));Ke(ne);let re=Ws(i,o,"checkOverlappingEntry");const oe=Ws(i,o,"checkOverlappingEntryOnly");oe&&(re=!0);const{onstart:ie,onprogress:se,onend:ae}=o,le=0!=m&&!v,ue=v?b-zi(J,Q,w&&w.strength):g,fe=9==m;let we=Ws(i,o,Fe);fe&&(we=!1);const pe=Ws(i,o,"checkCrc32"),me=(pe===de?Ws(i,o,"checkSignature"):pe)&&!v&&(!J||Q||w&&1==w.vendorVersion),he={options:{codecType:ar,password:T,rawPassword:I,zipCrypto:Q,encryptionStrength:w&&w.strength,checkCrc32:me,checkAuthenticationCode:Ws(i,o,"checkAuthenticationCode"),passwordVerification:Q&&(x?S>>>8&L:E>>>24&L),outputSize:ue,crc32:E,compressed:le,encrypted:J,useWebWorkers:Ws(i,o,ze),useCompressionStream:we,transferStreams:Ws(i,o,De),deflate64:fe,format:$?$.format:de,codecURI:$?$.codecURI:de,compressionMethod:m,rawBitFlag:y,checkPasswordOnly:X},config:a,ae:{signal:ne,size:ee,onstart:ie,onprogress:se,onend:ae}};let ye,Se,Ce;re&&await async function({reader:e,Pe:t,index:n,offset:r,crc32:o,compressedSize:i,uncompressedSize:s,dataOffset:a,dataDescriptor:c,extraFieldZip64:l,Me:u}){let d=0;if(c&&(d=l?20:12),d){const n=await Bo(e,a+i,d+4),r=gt(n);let c=n.length==d+4&&js(r,0)==P;if(c){const e=Fs(r,4,l);(t.encrypted&&!t.zipCrypto||e.crc32==o)&&e.compressedSize==i&&e.uncompressedSize==s?d+=4:c=!1}if(n.length>=d){const e=Fs(r,c?4:0,l);e.signature=c,t.localDirectory.dataDescriptor=e}}const w={start:r,end:a+i+d,Pe:t};for(const[e,t]of u)if(e!=n&&w.start<t.end&&t.start<w.end){const e=new f(Ni);throw e.overlappingEntry=t.Pe,e}u.set(n,w)}({reader:c,Pe:t,index:l,offset:F,crc32:E,compressedSize:b,uncompressedSize:g,dataOffset:M,dataDescriptor:x||R.bitFlag.dataDescriptor,extraFieldZip64:p||R.extraFieldZip64,Me:r});try{if(!oe){X&&(e=new D),e=new Uo(e),await Oo(e,function(e,t,n){return s.min(e,n?1032*t:t)}(ue,b,le)),({writable:ye}=e);const{outputSize:t}=await Lr({readable:te,writable:ye},he);if(t!=ue)throw n.assign(new f(Pn),{outputSize:t});e.size+=t}}catch(t){const{outputSize:n}=he;if(n!==de?e.size+=n:bt(t)&&t.outputSize!==de&&(e.size+=t.outputSize),!X||!bt(t)||t.message!=Pt)throw Se=t,Ce=!0,t}finally{if((Mo(e)||!Ws(i,o,Ae))&&ye&&!ye.locked){const e=ye.getWriter();if(Ce)try{await e.abort(Se)}catch{}else await e.close()}}return X||oe?de:e.getData?e.getData():ye}}function hs(e){const t=s.min(e.byteLength,1024)-3;for(let n=0;n<t;n++)if(134630224==js(e,n))return!0;return!1}function ys(e,t,n){let r=0;for(;n+q<=t.length&&js(e,n)==V;)n+=q+Gs(e,n+28)+Gs(e,n+30)+Gs(e,n+32),r++;return r%65536?0:r}function Es(e){if(e.length>=6){const t=gt(e);if(js(t,0)==Z){const n=Gs(t,4);if(6+n<=e.length)return e.subarray(6,6+n)}}}function Ss(e,t,r){const o=e.rawBitFlag=Gs(t,r+2),i=!(1&~o),s=js(t,r+6);n.assign(e,{encrypted:i,version:Gs(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&ne)==ne},rawLastModDate:s,lastModDate:Zs(s),filenameLength:Gs(t,r+22),extraFieldLength:Gs(t,r+24)})}function gs(e,t,r,o,i){const{rawExtraField:s}=t,l=t.extraField=new c,u=gt(s);let d=0,w=!1;try{for(;d<s.length;){const e=Gs(u,d),t=Gs(u,d+2);l.set(e,{type:e,data:s.slice(d+4,d+4+t)}),d+=4+t}}catch{w=!0}d>s.length&&(w=!0);const p=Gs(r,o+4);n.assign(t,{signature:js(r,o+10),crc32:js(r,o+10),compressedSize:js(r,o+14),uncompressedSize:js(r,o+18)});const m=l.get(1);m&&(function(e,t){t.zip64=!0;const n=gt(e.data),r=ls.filter(([e,n])=>t[e]==n),o=r.reduce((e,[,t])=>e+us[t].bytes,0);if(e.data.length<o)throw new f(Ii);for(let o=0,i=0;o<r.length;o++){const[s,a]=r[o],c=us[a];t[s]=e[s]=c.Ue(n,i),i+=c.bytes}}(m,t),t.extraFieldZip64=m);const h=l.get(28789);h&&(bs(h,Zo,Vo,t,e),t.extraFieldUnicodePath=h);const y=l.get(25461);y&&(bs(y,Ho,Go,t,e),t.extraFieldUnicodeComment=y);const E=l.get(J);E&&E.data.length>=7?(function(e,t,r){const o=gt(e.data),i=Hs(o,4);n.assign(e,{vendorVersion:Hs(o,0),vendorId:Hs(o,2),strength:i,originalCompressionMethod:r,compressionMethod:Gs(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=de)}(E,t,p),t.extraFieldAES=E):t.compressionMethod=p;const S=l.get(13);S&&(xs(S,t),t.extraFieldPkwareUnix=S);const g=l.get(22613);g&&(xs(g,t),t.extraFieldUnixType1=g);const b=l.get(10);b&&(function(e,t){const r=gt(e.data);let o,i=4;try{for(;i<e.data.length&&!o;){const t=Gs(r,i),n=Gs(r,i+2);1==t&&(o=e.data.slice(i+4,i+4+n)),i+=4+n}}catch{}if(o&&24==o.length){const r=gt(o),i=r.getBigUint64(0,!0),s=r.getBigUint64(8,!0),a=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:i,rawLastAccessDate:s,rawCreationDate:a});const c={lastModDate:Vs(i),lastAccessDate:Vs(s),creationDate:Vs(a)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:s,rawCreationDate:a})}}(b,t),t.extraFieldNTFS=b);const x=l.get(te);let R;if(x&&(R=Rs(x,t,!1),t.extraFieldUnix=x),!R){const e=l.get(ee);e&&(Rs(e,t,!0),t.extraFieldInfoZip=e)}const z=l.get(Q);z&&(function(e,t,n){if(!e.data.length)return;const r=gt(e.data),o=Hs(r,0),i=[],s=[];n?(1&~o||(i.push(Xo),s.push(Jo)),2&~o||(i.push(Qo),s.push($o)),4&~o||(i.push(ei),s.push(ti))):e.data.length>=5&&(i.push(Xo),s.push(Jo));let c=1;i.forEach((n,o)=>{if(e.data.length>=c+4){const i=js(r,c);t[n]=e[n]=new a(1e3*(0|i));const l=s[o];e[l]=i}c+=4})}(z,t,i),t.extraFieldExtendedTimestamp=z);const F=l.get($);return F&&(t.extraFieldUSDZ=F),w}function bs(e,t,r,o,i){if(e.data.length<5)return void(e.valid=!1);const s=gt(e.data),a=new kt;a.append(i[r]);const c=gt(new w(4));c.setUint32(0,a.get(),!0);const l=js(s,1),u=Hs(s,0);n.assign(e,{version:u,[t]:Gr(e.data.subarray(5)),valid:1==u&&!i.bitFlag.languageEncodingFlag&&l==js(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function xs(e,t){if(e.data.length<8)return;const r=gt(e.data),o={lastAccessDate:new a(1e3*(0|js(r,0))),lastModDate:new a(1e3*(0|js(r,4)))};e.data.length>=12&&(o.uid=Gs(r,8),o.gid=Gs(r,10)),n.assign(e,o),n.assign(t,o)}function Rs(e,t,r){try{const o=gt(e.data);let i,s;if(r){let t=0;const r=Hs(o,t++),a=Hs(o,t++);i=zs(e.data.subarray(t,t+a)),t+=a;const c=Hs(o,t++);s=zs(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:i,gid:s})}else e.data.length>=4&&(i=Gs(o,0),s=Gs(o,2),n.assign(e,{uid:i,gid:s}));return i!==de&&(t.uid=i),s!==de&&(t.gid=s),i!==de||s!==de}catch{}}function zs(e){const t=new w(4);return t.set(e,0),new h(t.buffer,t.byteOffset,4).getUint32(0,!0)}function Fs(e,t,n){const r=js(e,t);let o,i;return n?(o=qs(e,t+4),i=qs(e,t+12)):(o=js(e,t+4),i=js(e,t+8)),{crc32:r,compressedSize:o,uncompressedSize:i}}function Ds(e,t){return e.Ne?e.Ne(t):0}async function As(e){return js(gt(await Bo(e,0,4)))}function Cs(e){return e===Oe||e===Le||e===Be}function Ts(e,t){return Is(e,Is(t,Le))}function Is(e,t){const n=e.strictness;if(n!==de){if(!Cs(n))throw new f(Bi);return n}const r=e.checkAmbiguity;return r===de?t:r?Oe:t==Be?Be:Le}function ks(e,t){if(t==Be)return!1;const n=e.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(n.includes("..")||e.startsWith("/")||e.startsWith("\\\\")||ss.test(e))||t==Oe&&(n.includes(".")||n.includes(""))}function vs(e,t){if(e!==de){const t=$e(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new f(Pi);return t}return t==Oe?0:t==Be?1/0:O}async function _s(e,t,n){const{size:r}=e,o=s.min(r,65557),i={count:64};let a,c,l=0;for await(const[n,s,u,d,f]of Ns(e,o)){const o=Gs(n,d+20);if(f+K+o==r){const o=await Ms(e,n,s,d,f,r,i);if(2==o){if(a||(a=Us(u,d,f)),l++,!t||l>1)break}else 1!=o||c||(c=Us(u,d,f))}}return a||(a=c),a||(a=await async function(e,t,n){const{size:r}=e,o=s.min(r,t==1/0?r:65557+t);let i,a;for await(const[t,s,c,l,u]of Ns(e,o)){const o=Us(c,l,u);i||(i=o);const d=await Ms(e,t,s,l,u,r,n);if(2==d)return o;1!=d||a||(a=o)}return a||i}(e,n,i)),{Oe:a,Le:l}}async function*Ns(e,t){const n=e.size-t,r=await Bo(e,n,t),o=gt(r);for(let e=r.length-K;e>=0;e--)js(o,e)==H&&(yield[o,n,r,e,n+e])}function Us(e,t,n){return{offset:n,buffer:e.slice(t,t+K).buffer}}async function Ms(e,t,n,r,o,i,s){const a=Gs(t,r+10),c=js(t,r+12),l=js(t,r+16);if(a==O||c==M||l==M)return await Os(e,t,n,o-Y,i,s)==j?2:0;if(!a&&!c)return 1;const u=Gs(t,r+6);for(const r of[o-c,Ds(e,u)+l])if(await Os(e,t,n,r,i,s)==V)return 2;return 0}async function Os(e,t,n,r,o,i){return r<0||r+4>o?de:r>=n?js(t,r-n):i.count>0?(i.count--,js(gt(await Bo(e,r,4)),0)):de}function Ls(e,t,n){e?Bs(n):Po(t,n)}function Bs(e){const t=new f(Mi);throw t.reason=e,t}function Ws(e,t,n){return t[n]===de?e.options[n]:t[n]}function Ps(e,t,n){return je(Ws(e,t,n))}function Zs(e){const t=(4294901760&e)>>16,n=e&O,r=new a(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<ue?ue:r}function Vs(e){return new a(o(e/i(1e4)-i(116444736e5)))}function Hs(e,t){return e.getUint8(t)}function Gs(e,t){return e.getUint16(t,!0)}function js(e,t){return e.getUint32(t,!0)}function qs(e,t){const n=e.getBigUint64(t,!0);if(n>ds)throw new f(Zi);return o(n)}var Ks=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Mi,ERR_BAD_FORMAT:Fi,ERR_CENTRAL_DIRECTORY_NOT_FOUND:Ci,ERR_ENCRYPTED:ki,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Oi,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Ui,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Ai,ERR_EOCDR_NOT_FOUND:Di,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Ii,ERR_INVALID_AUTHENTICATION_CODE:Wt,ERR_INVALID_COMPRESSED_DATA:Zn,ERR_INVALID_CRC32:Vn,ERR_INVALID_FILENAME_VALIDATION:Wi,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Pi,ERR_INVALID_PASSWORD:Bt,ERR_INVALID_STRICTNESS:Bi,ERR_INVALID_UNCOMPRESSED_SIZE:Pn,ERR_LOCAL_FILE_HEADER_NOT_FOUND:Ti,ERR_OVERLAPPING_ENTRY:Ni,ERR_SPLIT_ZIP_FILE:_i,ERR_UNSAFE_FILENAME:Li,ERR_UNSUPPORTED_COMPRESSION:_n,ERR_UNSUPPORTED_ENCRYPTION:vi,ERR_UNSUPPORTED_UINT64:Zi,ERR_WORKER_STARTUP_TIMEOUT:ur,WARNING_APPENDED_DATA:Yi,WARNING_COMPRESSED_PATCHED_DATA:Gi,WARNING_DUPLICATE_FILENAME:$i,WARNING_MALFORMED_EXTRA_FIELD:ji,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:rs,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:os,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:is,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:ns,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:es,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:ts,WARNING_PREPENDED_CENTRAL_DIRECTORY:Ji,WARNING_PREPENDED_DATA:Xi,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Qi,WARNING_UNKNOWN_VERSION:Hi,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:qi,WARNING_UNSORTED_CENTRAL_DIRECTORY:Vi,WARNING_WRAPPED_ENTRIES_COUNT:Ki,ZipReader:fs,ZipReaderStream:ws,isZipFile:ps});const Ys="File already exists",Xs="Zip file comment exceeds 64KB",Js="Invalid zip file comment (must be a Uint8Array)",Qs="File entry comment exceeds 64KB",$s="Invalid file entry comment (must be a string)",ea="Invalid date (must be a valid Date instance)",ta="File entry name exceeds 64KB",na="Version exceeds 65535",ra="The strength must equal 1, 2, or 3",oa="Encryption is not supported in USDZ files",ia="Split zip files are not supported in USDZ files",sa="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",aa="Invalid extra field (must be a Map)",ca="Invalid extra field type (must be integer 0..65535)",la="Invalid extra field data (must be a Uint8Array)",ua="Extra field data exceeds 64KB",da=-2147483648,fa=2147483647,wa=i(0),pa=i("0x7fffffffffffffff"),ma="Zip64 is not supported (set the 'zip64' option to 'true')",ha="Undefined uncompressed size",ya="Undefined compression method",Ea="Undefined CRC32",Sa="Undefined reader",ga="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",ba="Zip file not empty",xa="Invalid uid (must be integer 0..2^32-1)",Ra="Invalid gid (must be integer 0..2^32-1)",za="Invalid UNIX mode (must be integer 0..65535)",Fa="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Da="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",Aa="Invalid msdosAttributesRaw (must be integer 0..255)",Ca="Invalid msdosAttributes (must be an object with boolean flags)",Ta="Invalid level (must be integer 0..9)",Ia="Signature data exceeds 64KB",ka="Invalid entry option (must be an entry returned by ZipReader#getEntries())",va="The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set",_a="compression unavailable",Na="clamped last modification date",Ua=new w([7,0,2,0,65,69,3,0,0]),Ma="infozip",Oa="unix",La=[8,9,5,3];let Ba=0;const Wa=[];class Pa{constructor(e,t={}){e=new Uo(e);const{availableSize:r=fe,maxSize:o=fe}=e,i=r>0&&r!==fe&&o>0&&o!==fe;if(i&&t[ve])throw new f(ia);n.assign(this,{writer:e,Ze:i,options:t,Ve:new c,He:new l,offset:t[ke]===de?e.size||e.writable.size||0:t[ke],Ge:t[ke]===de?0:t[ke]-(e.size||e.writable.size||0),je:new l,qe:[],warnings:[],Ke:0,Ye:0,Xe:de,Je:!1})}prependZip(e){return Ha(this,async function(e,t){if(e.He.size)throw new f(ba);await e.Qe(t)}(this,e))}appendZip(e){return Ha(this,this.Qe(e))}async Qe(e){const r=this,{je:o,He:i,Ve:s}=r;for(;o.size;)await E.allSettled(t.from(o));let a;const l=new E(e=>a=e);o.add(l);const u=[];let d;try{e=new No(e),await Oo(e),e.size!==de&&e.readUint8Array||(e=new fo(await Cn(e.readable)),await Oo(e));const{ZipReader:o}=await E.resolve().then(function(){return Ks}),a=new o(e),l=await a.getEntries();await a.close(),await Oo(r.writer);const{directoryOffset:w}=a;l.forEach(({filename:e})=>{if(i.has(e))throw new f(Ys);i.add(e),u.push(e)}),r.$e=!0;const{et:p}=r;r.et=new E(e=>d=()=>{r.$e=!1,e()}),await p,r.Ze&&(delete r.Ze,await async function(e){return gt(await Bo(e,0,4)).getUint32(0,!0)==W}(e)||(await ac(r.writer,ic()),r.offset+=4));const m=await async function(e,n,r,o){const{writer:i}=e,s=new c;if(i.closeDisk){const a=t.from(r).sort((e,t)=>oc(n,e)-oc(n,t));let c=0;for(const t of a){const r=oc(n,t);await nc(e,n,c,r-c),$a(i,await rc(n,r))&&await i.closeDisk(),s.set(t,{offset:ec(e,i),diskNumberStart:Ja(i)}),c=r}await nc(e,n,c,o-c)}else{const t=e.offset;await nc(e,n,0,o),r.forEach(e=>s.set(e,{offset:t+oc(n,e),diskNumberStart:0}))}return s}(r,e,l,w);l.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,bitFlag:i,encrypted:a,uncompressedSize:c,compressedSize:l,extraFieldZip64:u}=e;let{compressionMethod:d,rawExtraField:f}=e;const{level:w,languageEncodingFlag:p,dataDescriptor:h}=i;f=tc(f||Ee),e.extraFieldAES&&(d=99);const y=Rc(f),E=Boolean(u)&&u.uncompressedSize!==de,S=Boolean(u)&&u.compressedSize!==de,g=-7&Dc(w,p,h,a,d)|w<<1,{nt:b,ot:x}=zc({version:t,bitFlag:g,compressionMethod:d,uncompressedSize:c,compressedSize:l,rawLastModDate:r,rawFilename:o,it:S,st:E,extraFieldLength:y}),{crc32:R}=e;R!==de&&gc(x,10,R);const{offset:z,diskNumberStart:F}=m.get(e);n.assign(e,{ct:!0,st:E,it:S,offset:z,diskNumberStart:F,lt:!1,ut:Ee,ft:Ee,wt:Ee,ht:Ee,yt:Ee,rawExtraField:f,Et:Ee,extendedTimestamp:!1,nt:b,ot:x}),s.set(e.filename,e)})}catch(e){throw u.forEach(e=>i.delete(e)),e}finally{a(),o.delete(l),d&&d()}}add(e="",r,l={}){const u=this,{je:d}=u,p=async function(e,r,l,u){const d=(u=n.assign({},u))[Ne];if(d!==de){const{St:r,gt:o}=function(e,r,o){if(null===e||typeof e!=me||t.isArray(e))throw new f(ka);const{externalFileAttributes:i,versionMadeBy:l,comment:u,lastModDate:d,rawLastModDate:w,creationDate:p,lastAccessDate:m,uncompressedSize:h,encrypted:y,zipCrypto:E,crc32:S,compressionMethod:g,extraFieldAES:b,extraFieldUnix:x,internalFileAttributes:R,extraField:z,bitFlag:F,directory:D,uid:A,gid:C}=e,T={externalFileAttributes:i,versionMadeBy:l,comment:u,lastModDate:d,creationDate:p,lastAccessDate:m,internalFileAttributes:R,directory:D};F&&F.languageEncodingFlag&&(T[Te]=!0);const I=function(e){if(e){const t=new c;if(e.forEach((e,n)=>{Ri.has(n)||t.set(n,e.data)}),t.size)return t}}(z);I&&(T[hi]=I),A===de&&C===de||n.assign(T,{uid:A,gid:C,unixExtraFieldType:x?Oa:Ma});const k={};if(r&&!D)if(n.assign(k,{uncompressedSize:h,crc32:S,compressionMethod:g}),r!==We&&n.assign(k,{encrypted:y,zipCrypto:E,encryptionStrength:b?b.strength:de}),F&&(k.dataDescriptor=F.dataDescriptor,k[Ce]=La[F.level]),o===de)k.rawLastModDate=w;else if(r!==We&&E&&(!F||F.dataDescriptor)&&o instanceof a&&function(e){let t=new a(2e3*s.ceil(s.floor(e.getTime()/1e3)/2));return t<ue?t=ue:t>le&&(t=le),(t.getHours()<<3|t.getMinutes()>>3)&L}(o)!=(w>>>8&L))throw new f(va);return{St:T,gt:k}}(d,Xe(fc(e,u,xe)),fc(e,u,Xo));delete u[Ne],u=n.assign(r,o,u)}if(fc(e,u,fi)&&!r.endsWith(ae)&&(r+=ae),e.He.has(r))throw new f(Ys);e.He.add(r),Ba<ft().maxWorkers?Ba++:await new E(e=>Wa.push(e));try{return await async function(e,r,c,l){const u=function(e,n,r){let o=fc(e,r,si),i=fc(e,r,ui,o?20:768);const s=fc(e,r,wi),a=mc(e,r,"uid"),c=mc(e,r,"gid");let l=mc(e,r,yi),u=fc(e,r,"unixExtraFieldType"),d=fc(e,r,Ei),w=fc(e,r,Si),p=fc(e,r,gi);if(Qe(a,M,xa),Qe(c,M,Ra),Qe(l,O,za),u!==de&&u!==Ma&&u!==Oa)throw new f(Fa);if(u===Oa&&(a!==de&&a>O||c!==de&&c>O))throw new f(Da);u!==de||a===de&&c===de||(u=Ma);let m=mc(e,r,oi),h=fc(e,r,ii);const y=m!==de||h!==de;if(a!==de||c!==de||l!==de||u||s?(o=!1,i=i&L|768):y&&(o=!0,i&=L),Qe(m,L,Aa),h&&(typeof h!==me||t.isArray(h)))throw new f(Ca);if(i>O)throw new f(na);let E=fc(e,r,ri);const S=E!==de;S||(E=0),!r[fi]&&n.endsWith(ae)&&(r[fi]=!0);const g=fc(e,r,fi);if(g?(n.endsWith(ae)||(n+=ae),S||(E=16,o||(E|=16877<<16))):o||S||(E=s?493<<16:27525120),!o){const e=l!==de||Boolean(d||w||p);l=l===de?E>>16&O:l&O,d?l|=ie:d=Boolean(l&ie),w?l|=se:w=Boolean(l&se),p?l|=512:p=Boolean(512&l),S&&!e||(g?l=-61441&l|oe:l&re||(l|=32768),E=(l&O)<<16|E&O)}({msdosAttributesRaw:m,msdosAttributes:h}=function(e,t){if(e!==de)e&=L;else if(t!==de){const{readOnly:n,hidden:r,system:o,directory:i,archive:s}=t;let a=0;n&&(a|=1),r&&(a|=2),o&&(a|=4),i&&(a|=16),s&&(a|=32),e=a&L}return t===de&&(t={readOnly:Boolean(1&e),hidden:Boolean(2&e),system:Boolean(4&e),directory:Boolean(16&e),archive:Boolean(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}}(m,h)),y&&(E=E&M|m&L);const b=E>>16&O,x=l!==de&&40960==(l&re);return{name:n,bt:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:E,unixExternalUpper:b,uid:a,gid:c,unixMode:l,unixExtraFieldType:u,symlink:x,setuid:d,setgid:w,sticky:p,msdosAttributesRaw:m,msdosAttributes:h}}}(e,r,l);({name:r}=u);const d=function(e,t,n){const r=pc(e,n,"encodeText")||_t;let i=r(t,Ue);if(i===de&&(i=_t(t)),Rc(i)>O)throw new f(ta);const s=n[Ho]||"";if(typeof s!=he)throw new f($s);let c=r(s,Me);if(c===de&&(c=_t(s)),Rc(c)>O)throw new f(Qs);const l=fc(e,n,li);if(l!==de&&l>O)throw new f(na);const u=wc(e,n,Xo,new a),d=fc(e,n,Jo),w=wc(e,n,Qo),p=wc(e,n,ei),m=fc(e,n,ni,0),h=Xe(fc(e,n,xe)),y=Boolean(h),E=!0===h,S=fc(e,n,ge),g=fc(e,n,be);Ye(S,g);const b=mc(e,n,"encryptionStrength",3),x=fc(e,n,di),R=fc(e,n,"extendedTimestamp",!0),z=fc(e,n,"ntfsTimestamp"),F=fc(e,n,"keepOrder",!0),D=fc(e,n,ze),A=fc(e,n,De),C=fc(e,n,"bufferedWrite"),T=pc(e,n,"createTempStream"),I=fc(e,n,"dataDescriptorSignature",!0),k=qe(fc(e,n,Re));Ke(k);const v=fc(e,n,Te,!Fc(i)||!Fc(c)),_=fc(e,n,pi),N=y||_===de?de:On(_);if(!y&&_!==de&&0!==_&&8!==_&&!N)throw new f(_n);let U=mc(e,n,Ce);if(Qe(U,9,Ta),e.options[ve]){if(S!==de||g!==de)throw new f(oa);U===de&&_===de&&(U=0)}y&&(U=$e(n[Ce]));let M=fc(e,n,Fe),L=fc(e,n,Ie);C&&L===de&&(L=!1),(L===de||x&&!E)&&(L=!0),U!==de&&6!=U&&(M=!1);const B=fc(e,n,ai);if(!(x||S===de&&g===de||o.isInteger(b)&&b>=1&&b<=3))throw new f(ra);const W=qa(n[hi]),P=qa(n.localExtraField),Z=qa(n.centralExtraField);return{comment:s,bt:{rawFilename:i,rawComment:c,version:l,lastModDate:u,rawLastModDate:d,lastAccessDate:w,creationDate:p,internalFileAttributes:m,xt:y,Rt:E,password:S,rawPassword:g,encryptionStrength:b,zipCrypto:x,extendedTimestamp:R,ntfsTimestamp:z,keepOrder:F,useWebWorkers:D,transferStreams:A,bufferedWrite:C,createTempStream:T,dataDescriptorSignature:I,signal:k,useUnicodeFileNames:v,compressionMethod:_,format:N?N.format:de,codecURI:N?N.codecURI:de,zt:N?N.versionNeeded:de,level:U,useCompressionStream:M,dataDescriptor:L,zip64:B,rawExtraField:W,Ft:P,Et:Z}}}(e,r,l),{comment:p}=d,m=l[hi];e.Ve.set(r,de);const h=e.Xe,y={};let S,g;d.bt.keepOrder&&(y.Dt=new E(e=>S=e)),e.Xe=y;try{const{bt:t}=d;0==t.level||t.compressionMethod!==de||t.xt||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;if(n&&!n.he)return!0;if($n(t)||Qn(t,jn))return!0;if(n)try{return await void 0,!0}catch{return!1}return!1}(ft())||(t.level=0,Po(e.warnings,_a,r));const o=await async function(e,t,{bt:r},o){if(r.xt&&!t&&!fc(e,o,fi))throw new f(Sa);let i;if(t){if(t=new No(t),await Oo(t),!t.readable&&!t.readUint8Array)throw new f(ga);({size:i}=t)}return n.assign({reader:t},function(e,t,n,r,o){const{xt:i,Rt:s,zipCrypto:a,password:c,rawPassword:l,encryptionStrength:u}=r;let{dataDescriptor:d,zip64:w,level:p,compressionMethod:m}=r,h=0,y=0,E=!1;if(i&&t){if(y=o[jo],y===de)throw new f(ha);if(m===de)throw new f(ya)}const S=!0===w,g=fc(e,o,ci);if(t&&s&&!g&&Rc(c,l))throw new f(sa);const b=t&&(Boolean(c&&Rc(c)||l&&Rc(l))||s&&g);t||(p=0,m=0);const x=zi(b,a,u);t&&(i?(o.uncompressedSize=y,h=n===de?hc(y)+x:n+(s?0:x)):n===de?(d=!0,(w||w===de)&&(w=E=!0,h=4294967296)):(o.uncompressedSize=y=n,h=(yc(m,p)?hc(y):y)+x));const R=!(b||t&&(0!==n||i)||yc(m,p));R&&!a&&fc(e,o,Ie)===de&&(d=!1);const z=S||E||y>=M,F=S||h>=M;if(z||F){if(!1===w)throw new f(ma);w=!0}return w=w||!1,{At:h,bt:{dataDescriptor:d,Ct:R,zip64:w,ct:S,Tt:E,st:z,it:F,uncompressedSize:y,level:p,compressionMethod:m,encrypted:b}}}(e,Boolean(t),i,r,o))}(e,c,d,l);({reader:c}=o);const p=Qa(e.writer),m=Ja(e.writer);let b=l.crc32===de?l[mi]:l.crc32;const x=o.bt.encrypted&&!t.zipCrypto;if(t.xt&&!t.Rt&&x&&(b=de),t.xt&&c&&!x&&b===de)throw new f(Ea);const R=function(e){const{rawFilename:t,lastModDate:n,rawLastModDate:r,lastAccessDate:o,creationDate:i,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:d,dataDescriptor:w,directory:p,rawExtraField:m,Ft:h,encryptionStrength:y,extendedTimestamp:E,ntfsTimestamp:S,xt:g,encrypted:b,st:x,it:R,uncompressedSize:z,Tt:F,crc32:D}=e;let{version:A,compressionMethod:C}=e;const T=!p&&yc(C,c);let I;const k=g||!T,v=l&&(e.bufferedWrite||!w||!x&&!R||k&&!F),_=v||l&&w&&(x||R);if(l&&(x||R)){const e=20,t=Xa(e);if(t.It(1),t.It(e-4),I=t.kt,v&&(t.vt(z),k)){const e=zi(b,u,y);t.vt(g?0:z+e)}}else I=Ee;let N,U,M,L,W,P;if(b&&!u){const e=Xa(Rc(Ua)+2);e.It(J),e._t(Ua),N=e.kt,N[8]=y}else N=Ee;if(E){const e=uc(n),t=(Z=e)>=da&&Z<=fa;if(t){const t=9+(o?4:0)+(i?4:0),n=Xa(t);L=1+(o?2:0)+(i?4:0),W=e,n.It(Q),n.It(t-4),n.Nt(L),n.Ut(e),o&&n.Ut(dc(uc(o))),i&&n.Ut(dc(uc(i))),M=n.kt}else M=Ee;if(S===de?!t||Boolean(o||i):S)try{const e=lc(n),t=Xa(36);t.It(10),t.It(32),t.Mt(4),t.It(1),t.It(24),t.vt(e),t.vt(o?lc(o):e),t.vt(i?lc(i):e),U=t.kt}catch{U=Ee}else U=Ee}else U=M=Ee;var Z;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=Ma||t===de&&n===de)if(r!=Oa||t===de&&n===de)P=Ee;else{const e=Xa(8);e.It(te),e.It(4),e.It((t===de?0:t)&O),e.It((n===de?0:n)&O),P=e.kt}else{const e=Ya(t===de?0:t),r=Ya(n===de?0:n),o=3+e.length+r.length,i=Xa(4+o);i.It(ee),i.It(o),i.Nt(1),i.Nt(e.length),i._t(e),i.Nt(r.length),i._t(r),P=i.kt}}catch{P=Ee}C===de&&(C=T?8:0),A===de&&(A=0!=C||p||b?20:10);const{zt:V}=e;T&&V!==de&&(A=A>V?A:V),l&&(A=A>45?A:45),b&&!u&&(A=A>51?A:51,g&&D!==de&&(N[4]=1),Sc(gt(N),9,C),C=99);const H=_?Rc(I):0,G=H+Rc(N,M,U,P,m,h);if(G+(e[ve]?67:0)>O)throw new f(ua);const j=new a(2e3*s.ceil(s.floor(n.getTime()/1e3)/2)),q=j<ue?ue:j>le?le:j,K=Rc(M)?new a(1e3*uc(n)):Rc(U)?n:q,{nt:Y,ot:X,rawLastModDate:$}=zc({version:A,bitFlag:Dc(c,d,w,b,C),compressionMethod:C,uncompressedSize:z,lastModDate:q,rawLastModDate:r,rawFilename:t,it:R,st:x,extraFieldLength:G}),ne=Xa(ce+Rc(t)+G),re=ne.kt,oe=gt(re);return ne.Ut(B),ne._t(Y),ne._t(t),_&&ne._t(I),ne._t(N),ne._t(M),ne._t(U),ne._t(P),ne._t(m),ne._t(h),w&&(R||gc(oe,18,0),x||gc(oe,22,0)),{Ot:re,Lt:oe,nt:Y,ot:X,lastModDate:K,Bt:K===q&&j.getTime()!=q.getTime(),rawLastModDate:$,encrypted:b,compressed:T,version:A,compressionMethod:C,Wt:L,Pt:W,ut:Ee,Zt:H,wt:M,ht:U,yt:P,ft:N,extraFieldLength:G}}(l=n.assign({},l,u.bt,d.bt,o.bt,{signature:l[mi],crc32:b,offset:e.offset-p,diskNumberStart:m,[ve]:e.options[ve]}));R.Bt&&Po(e.warnings,Na,r);const F=function({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r,o=Ee,i=0,s=e?20:12;return n&&(s+=4),t&&(o=new w(s),r=gt(o),n&&(i=4,gc(r,0,P))),{Vt:o,Ht:r,Gt:i}}(l),D=Rc(R.Ot,F.Vt);g=await async function(e,t,r,o,s){const{Ve:a,writer:c}=e,{keepOrder:l,dataDescriptor:u,Ct:d,signal:w}=s,{jt:p,Pe:m,qt:h,Kt:y}=o,S=e.options[ve];let g,b,x,R,F,D,A,C=m,T=0;const I=l&&h?h.Dt:de;a.set(t,C);try{s.bufferedWrite||!l||e.$e||e.Ke||e.Ye||!u&&!d?(g=!0,e.Ke++,A=s.createTempStream?await s.createTempStream():new z(de,de,{highWaterMark:fe}),A.size=0,await Oo(c)):(b=!0,e.Ye++,A=c,await I,await k()),await Oo(A);const m=Qa(c);e.Ze&&!g&&await sc(e,c),S&&!g&&Ka(o,e.offset-m);const{Ot:h}=p;g||await v();const y=Ja(c),x=ec(e,c);if(C.diskNumberStart=y,g||(F=!0,D=c.size,await ac(A,h)),C=await async function(e,t,{diskNumberStart:r,Dt:o},s,a,c){const{jt:l,Yt:u,Xt:d}=s,{nt:w,ot:p,lastModDate:m,rawLastModDate:h,encrypted:y,compressed:E,version:S,compressionMethod:g,ut:b,Zt:x,wt:R,Wt:z,Pt:F,ht:D,yt:A,ft:C}=l,{Vt:T}=u,{rawFilename:I,lastAccessDate:k,creationDate:v,password:_,rawPassword:N,level:U,useUnicodeFileNames:O,zip64:B,ct:W,st:P,it:Z,zipCrypto:V,dataDescriptor:H,directory:G,executable:j,versionMadeBy:q,rawComment:K,rawExtraField:Y,Et:X,useWebWorkers:J,transferStreams:Q,onstart:$,onprogress:ee,onend:te,signal:ne,encryptionStrength:re,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:se,externalFileAttributes:ae,uid:ce,gid:le,unixMode:ue,symlink:fe,setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:Ee,useCompressionStream:Se,xt:ge,Rt:be,format:xe,codecURI:Re}=c,ze={Dt:o,versionMadeBy:q,zip64:B,ct:W,directory:Boolean(G),executable:Boolean(j),filenameUTF8:Boolean(O),rawFilename:I,commentUTF8:Boolean(O),rawComment:K,ut:b,Zt:x,wt:R,ht:D,yt:A,ft:C,rawExtraField:Y,Et:X,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:se,externalFileAttributes:ae,diskNumberStart:r,uid:ce,gid:le,unixMode:ue,symlink:Boolean(fe),setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:Ee};let{crc32:Fe,uncompressedSize:De}=c,Ae=0;ge||(De=0);const{writable:Ce}=t;if(e){const n=e.size,r=An(Wo(e,{size:n})),o={options:{codecType:sr,inputSize:n,level:U,rawPassword:N,password:_,encryptionStrength:re,zipCrypto:y&&V,passwordVerification:y&&V&&h>>8&L,computeCrc32:!ge,compressed:E&&!ge,encrypted:y&&!be,useWebWorkers:J,useCompressionStream:Se,transferStreams:Q,format:xe,codecURI:Re,compressionMethod:g},config:a,ae:{signal:ne,size:n,onstart:$,onprogress:ee,onend:te}};try{const e=await Lr({readable:r,writable:Ce},o);if(Ae=e.outputSize,t.size+=Ae,ge||(De=e.inputSize,y&&!V||(Fe=e.crc32)),!Z&&Ae>=M||!P&&De>=M)throw new f(ma)}catch(e){const{outputSize:n}=o;throw n!==de?t.size+=n:bt(e)&&e.outputSize!==de&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,jt:r,Yt:o},{zip64:s,zipCrypto:a,xt:c,dataDescriptor:l}){const{ot:u,encrypted:d}=r,{Ht:f,Gt:w}=o;d&&!a&&!c||e===de||(gc(u,10,e),l&&gc(f,w,e)),s?l&&(bc(f,w+4,i(t)),bc(f,w+12,i(n))):(gc(u,14,t),gc(u,18,n),l&&(gc(f,w+4,t),gc(f,w+8,n)))}({crc32:Fe,compressedSize:Ae,uncompressedSize:De,jt:l,Yt:u},c),H&&await ac(t,T),n.assign(ze,{uncompressedSize:De,compressedSize:Ae,lastModDate:m,rawLastModDate:h,creationDate:v,lastAccessDate:k,encrypted:Boolean(y),zipCrypto:Boolean(V),size:d+Ae,compressionMethod:g,version:S,nt:w,ot:p,signature:Fe,crc32:!y||V||ge?Fe:de,Wt:z,Pt:F,st:P,it:Z}),ze}(r,A,C,o,ft(),s),g||(F=!1),a.set(t,C),C.filename=t,g){if(await E.all([A.writable.getWriter().close(),I]),await k(),e.Ze&&await sc(e,c),R=!0,D=c.size,await v(),C.diskNumberStart=Ja(c),C.offset=ec(e,c),S){const t=o.Xt;Ka(o,e.offset-Qa(c)),C.size+=o.Xt-t}!function({rawFilename:e,encrypted:t,zip64:n,Zt:r,crc32:o,compressedSize:s,uncompressedSize:a,st:c,it:l},u,{dataDescriptor:d,xt:f}){if(d||((!t||f&&o!==de)&&gc(u,14,o),l||gc(u,18,s),c||gc(u,22,a)),n&&r){const t=ce+Rc(e)+4;bc(u,t,i(a)),bc(u,t+8,i(s))}}(C,p.Lt,s),await ac(c,p.Ot),await cc(A.readable,c,w,e=>T+=e),c.size+=A.size,R=!1}else C.diskNumberStart=y,C.offset=x;return e.offset+=C.size,C}catch(n){if(R||F){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-D,g&&(e.offset+=T)}throw a.delete(t),n}finally{if(g&&e.Ke--,b&&e.Ye--,y&&y(I),x&&x(),g&&A&&A.dispose)try{await A.dispose()}catch{}}async function k(){e.$e=!0;const{et:t}=e;e.et=new E(t=>x=()=>{e.$e=!1,t()}),await t}async function v(){$a(c,Rc(p.Ot))&&await c.closeDisk()}}(e,r,c,{jt:R,Yt:F,Xt:D,Pe:y,qt:h,Kt:S},l)}catch(t){throw e.Ve.delete(r),t}finally{S&&S(h&&h.Dt)}return n.assign(g,{name:r,comment:p,extraField:m}),new xi(g)}(e,r,l,u)}catch(t){throw e.He.delete(r),t}finally{const e=Wa.shift();e?e():Ba--}}(u,e,r,l);d.add(p);const m=()=>d.delete(p);return E.prototype.then.call(p,m,m),Ha(u,p)}remove(e){const{He:t,Ve:n}=this;if(typeof e==he&&(e=n.get(e)),e&&e.filename!==de){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=Ee,n={}){const r=this,{je:o,writer:s}=this,{writable:a}=s;if(r.Je)return Va(s);if(!(e instanceof w))throw new f(Js);if(Rc(e)>O)throw new f(Xs);for(;o.size;)await E.allSettled(t.from(o));await E.allSettled(r.qe.map(e=>e.Jt));const c=r.qe.filter(e=>e.Qt&&!e.$t);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.$t=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const{en:o,tn:s}=function(e){let t=0,n=!1;for(const[,r]of e){const{rawFilename:e,ft:o,rawComment:i,ht:s,yt:a,rawExtraField:c,Et:l,Wt:u,Pt:d,ct:w,uncompressedSize:p,compressedSize:m}=r;let{st:h,it:y}=r;w||(h&&p<M&&(h=r.st=!1),y&&m<M&&(y=r.it=!1)),n=n||h||y;const E=r.offset>=M,S=r.diskNumberStart>=O;let g,b;if(E||S||h||y){const e=4+(h?8:0)+(y?8:0)+(E?8:0)+(S?4:0),t=Xa(e);t.It(1),t.It(e-4),h&&t.vt(p),y&&t.vt(m),E&&t.vt(r.offset),S&&t.Ut(r.diskNumberStart),g=t.kt}else g=Ee;if(r.ut=g,r.nn=E,r.lt=S,d===de)b=Ee;else{const e=Xa(9);e.It(Q),e.It(5),e.Nt(u),e.Ut(d),b=e.kt}r.wt=b;const x=Rc(g,o,s,a,b,c,l);if(x>O)throw new f(ua);t+=q+Rc(e,i)+x}return{en:t,tn:n}}(e.Ve),{rn:a,sn:c,an:l}=await async function(e,n,r){const{Ve:o,writer:i}=e,s=new w(n);await Oo(i);let a=0,c=0,l=Ja(i),u=Qa(i),d=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:f,ut:w,ft:p,wt:m,ht:h,yt:y,rawExtraField:E,Et:S,rawComment:g,versionMadeBy:b,nt:x,ot:R,st:z,it:F,lt:D,nn:A,internalFileAttributes:C,externalFileAttributes:T,diskNumberStart:I,uncompressedSize:k,compressedSize:v}=n,_=Rc(w,p,m,h,y,E,S),N=q+Rc(f,g)+_;$a(i,a+N-c)&&(await ac(i,s.slice(c,a)),c=a,d=0,await i.closeDisk()),0==e&&(l=Ja(i),u=Qa(i)),z||gc(R,18,k),F||gc(R,14,v),(A||D)&&n.version<45&&Sc(R,0,45);const U=Xa(N);if(U.Ut(V),U.It(b),U._t(x.subarray(0,24)),U.It(_),U.It(Rc(g)),U.It(D?O:I),U.It(C),U.Ut(T),U.Ut(A?M:t),U._t(f),U._t(w),U._t(p),U._t(m),U._t(h),U._t(y),U._t(E),U._t(S),U._t(g),xc(s,U.kt,a),a+=N,d++,r.onprogress)try{await r.onprogress(e+1,o.size,new xi(n))}catch{}}return await ac(i,c?s.slice(c):s),{rn:{diskNumber:l,diskOffset:u},sn:{diskNumber:Ja(i),cn:d},an:s}}(e,o,r),u=await async function(e,t,n){const r=pc(e,n,"signCentralDirectory");if(r){const n=await r(t),o=Rc(n);if(o>O)throw new f(Ia);const i=Xa(6+o);i.Ut(Z),i.It(o),i._t(n);const{writer:s}=e;return $a(s,Rc(i.kt))&&await s.closeDisk(),await ac(s,i.kt),6+o}return 0}(e,l,r);await async function(e,t,n,r){const{writer:o}=e,{rn:s,sn:a,ln:c,tn:l}=r;let{en:u}=r,d=e.Ve.size,w=s.diskNumber,p=ec(e,s);const m=Rc(t);if(m>O)throw new f(Xs);let h=fc(e,n,ai),y=Ja(o);if($a(o,(h?98:K)+m)&&y++,p>=M||u>=M||d>=O||y>=O){if(!1===h)throw new f(ma);h=!0}else h===de&&l&&(h=!0);const E=Xa(h?98:K);$a(o,Rc(E.kt)+m)&&await o.closeDisk(),y=Ja(o);let S=y==a.diskNumber?a.cn:0;h&&(E.Ut(G),E.vt(44),E.It(45),E.It(45),E.Ut(y),E.Ut(w),E.vt(S),E.vt(d),E.vt(u),E.vt(p),E.Ut(j),E.Ut(y),E.vt(i(ec(e,o))+i(u)+i(c)),E.Ut(y+1),fc(e,n,"supportZip64SplitFile",!0)&&(y=O,w=O),S=O,d=O,p=M,u=M),E.Ut(H),E.It(y),E.It(w),E.It(S),E.It(d),E.Ut(u),E.Ut(p),E.It(m),await ac(o,E.kt),m&&await ac(o,t)}(e,n,r,{rn:a,sn:c,en:o,ln:u,tn:s})}(r,e,n),r.Je=!0,!Mo(s)&&fc(r,n,Ae)||await a.getWriter().close(),Va(s)}[Se](){return this.close()}}class Za extends E{then(e,t){const{un:n}=this;return n&&(n.$t=!0),super.then(e,t)}}function Va(e){return e.getData?e.getData():e.writable}function Ha(e,t){const r=new Za((e,n)=>E.prototype.then.call(t,e,n)),o={};return r.un=o,o.Jt=E.prototype.then.call(r,de,e=>n.assign(o,{Qt:!0,error:e})),e.qe.push(o),r}async function Ga(e,t){try{await e.writer.writable.abort(t)}catch{}}function ja(e,t,n){e.je.add(t),t.catch(e=>{try{n(e)}catch{}})}function qa(e){if(!e)return Ee;if(!(e instanceof c))throw new f(aa);let t=0,n=0;e.forEach((e,n)=>{if(Je(n,O,ca),!(e instanceof w))throw new f(la);if(Rc(e)>O)throw new f(ua);t+=4+Rc(e)});const r=new w(t),o=gt(r);return e.forEach((e,t)=>{Sc(o,n,t),Sc(o,n+2,Rc(e)),xc(r,e,n+4),n+=4+Rc(e)}),r}function Ka(e,t){const{jt:n}=e;let{Ot:r,extraFieldLength:o}=n,i=64-(t+Rc(r))%64;i<4&&(i+=64);const s=new w(i),a=gt(s);Sc(a,0,$),Sc(a,2,i-4);const c=r;n.Ot=r=new w(Rc(c)+i),xc(r,c),xc(r,s,Rc(c));const l=gt(r);Sc(l,28,o+i),n.Lt=l,e.Xt+=i}function Ya(e){const t=new w(4);gt(t).setUint32(0,e,!0);let n=4;for(;n>1&&0===t[n-1];)n--;return t.subarray(0,n)}function Xa(e){const t=new w(e),n=gt(t);let r=0;return{kt:t,Nt:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},It:e=>{Sc(n,r,e),r+=2},Ut:e=>{gc(n,r,e),r+=4},vt:e=>{bc(n,r,i(e)),r+=8},_t:e=>{xc(t,e,r),r+=Rc(e)},Mt:e=>r+=e}}function Ja(e){const{diskNumber:t=0}=e;return t}function Qa(e){const{diskOffset:t=0}=e;return t}function $a(e,t){const{availableSize:n=fe}=e;return t>n}function ec(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.Ge:0)}function tc(e){const t=gt(e);let n=0;for(;n+4<=Rc(e);){const r=4+Ec(t,n+2);if(1==Ec(t,n))return tc(Et(e.subarray(0,n),e.subarray(s.min(n+r,Rc(e)))));n+=r}return e}async function nc(e,t,n,r){if(r>0){const{writer:o}=e;let i=0;try{await cc(Wo(t,{offset:n,size:r}),o,de,e=>i+=e)}catch(t){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}throw t}finally{o.size+=i,e.offset+=i}}}async function rc(e,t){const n=await Bo(e,t,ce);if(Rc(n)<ce)return ce;const r=gt(n);return ce+Ec(r,26)+Ec(r,28)}function oc(e,{offset:t,diskNumberStart:n}){return t+(e.Ne?e.Ne(n):0)}function ic(){const e=new w(4);return gc(gt(e),0,W),e}async function sc(e,t){delete e.Ze,await ac(t,ic()),e.offset+=4}async function ac(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=Rc(t),await r.write(t)}finally{r.releaseLock()}}async function cc(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new D({async write(e){await o.ready,await o.write(e),r(Rc(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function lc(e){if(e){const t=(i(e.getTime())+i(116444736e5))*i(1e4);return t<wa?wa:t>pa?pa:t}}function uc(e){return s.floor(e.getTime()/1e3)}function dc(e){return s.min(fa,s.max(da,e))}function fc(e,t,n,r){const o=t[n]===de?e.options[n]:t[n];return o===de?r:o}function wc(e,t,n,r){const i=fc(e,t,n,r);if(null===i)return r;if(i!==de&&(typeof i.getTime!=pe||o.isNaN(i.getTime())))throw new f(ea);return i}function pc(e,t,n){return je(fc(e,t,n))}function mc(e,t,n,r){return $e(fc(e,t,n,r))}function hc(e){return e+5*(s.floor(e/16383)+1)}function yc(e,t){return e===de?t===de||t>0:0!==e}function Ec(e,t){return e.getUint16(t,!0)}function Sc(e,t,n){e.setUint16(t,n,!0)}function gc(e,t,n){e.setUint32(t,n,!0)}function bc(e,t,n){e.setBigUint64(t,n,!0)}function xc(e,t,n){e.set(t,n)}function Rc(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function zc({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:s,rawFilename:a,it:c,st:l,extraFieldLength:u}){const d=Xa(26),f=d.kt,w=gt(f);if(d.It(e),d.It(t),d.It(n),s===de){const e=new m(1),t=gt(e);Sc(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Sc(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),s=e[0]}return d.Ut(s),d.Mt(4),c||o!==de?d.Ut(c?M:o):d.Mt(4),l||r!==de?d.Ut(l?M:r):d.Mt(4),d.It(Rc(a)),d.It(u),{nt:f,ot:w,rawLastModDate:s}}function Fc(e){return e.every(e=>e>=32&&e<=126)}function Dc(e,t,n,r,o){let i=0;return t&&(i|=ne),n&&(i|=8),8!=o&&9!=o||(e>=0&&e<=3&&(i|=6),e>3&&e<=5&&(i|=4),9==e&&(i|=2)),r&&(i|=1),i}function Ac(e,t){if(!e)return!1;const{dn:n}=e;return n?n.includes(t):Qn(e,t)}const Cc=1048576,Tc=".zip.js-temp",Ic=1048576,kc=1048576,vc=".zip.js-temp",_c="createSyncAccessHandle is only available in dedicated workers";try{!function(e){const t=mt(yt(e));n.assign(ot,t),n.assign(dt,t)}({baseURI:void 0===b&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===b?location.href:U&&"SCRIPT"===U.tagName.toUpperCase()&&U.src||new d("zip-core.min.js",b.baseURI).href})}catch{}e.BlobReader=fo,e.BlobWriter=wo,e.Data64URIReader=class extends ao{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{fn:e,wn:r,size:s.floor(.75*(t-r))})}readUint8Array(e,t){const{wn:n,fn:r}=this,o=new w(t),i=4*s.floor(e/3),a=atob(r.substring(i+n,4*s.ceil((e+t)/3)+n)),c=e-3*s.floor(i/4);let l=0;for(let e=c;e<c+t&&e<a.length;e++)o[e-c]=a.charCodeAt(e),l++;return l<o.length?o.subarray(0,l):o}},e.Data64URIWriter=class extends co{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",pn:""})}writeUint8Array(e){const t=this;let n,o=t.pn;const i=t.pn.length;for(t.pn="",n=0;n<3*s.floor((i+e.length)/3)-i;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.pn+=r.fromCharCode(e[n]);o.length>2?t.data+=R(o):t.pn=o+t.pn}getData(){return this.data+R(this.pn)}},e.ERR_ABORTED=Ge,e.ERR_AMBIGUOUS_ARCHIVE=Mi,e.ERR_BAD_FORMAT=Fi,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Ci,e.ERR_DUPLICATED_NAME=Ys,e.ERR_ENCRYPTED=ki,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=Oi,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=Ui,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Ai,e.ERR_EOCDR_NOT_FOUND=Di,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Ii,e.ERR_HTTP_RANGE=Kr,e.ERR_HTTP_RESOURCE_CHANGED=Yr,e.ERR_HTTP_STATUS=qr,e.ERR_INVALID_AUTHENTICATION_CODE=Wt,e.ERR_INVALID_BASE_URI=tt,e.ERR_INVALID_CODEC_DEFINITION=In,e.ERR_INVALID_CODEC_MODULE=vn,e.ERR_INVALID_COMMENT=Xs,e.ERR_INVALID_COMMENT_TYPE=Js,e.ERR_INVALID_COMPRESSED_DATA=Zn,e.ERR_INVALID_CRC32=Vn,e.ERR_INVALID_DATE=ea,e.ERR_INVALID_ENCRYPTION_STRENGTH=ra,e.ERR_INVALID_ENTRY=ka,e.ERR_INVALID_ENTRY_COMMENT=Qs,e.ERR_INVALID_ENTRY_COMMENT_TYPE=$s,e.ERR_INVALID_ENTRY_NAME=ta,e.ERR_INVALID_EXTRAFIELD=aa,e.ERR_INVALID_EXTRAFIELD_DATA=ua,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=la,e.ERR_INVALID_EXTRAFIELD_TYPE=ca,e.ERR_INVALID_FILENAME_VALIDATION=Wi,e.ERR_INVALID_FUNCTION_OPTION=Pe,e.ERR_INVALID_GID=Ra,e.ERR_INVALID_LEVEL=Ta,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=Pi,e.ERR_INVALID_MAX_WORKERS=et,e.ERR_INVALID_MSDOS_ATTRIBUTES=Aa,e.ERR_INVALID_MSDOS_DATA=Ca,e.ERR_INVALID_PASSWORD=Bt,e.ERR_INVALID_PASSWORD_TYPE=Ve,e.ERR_INVALID_PASS_THROUGH_VALUE=He,e.ERR_INVALID_READER=ga,e.ERR_INVALID_SIGNAL=Ze,e.ERR_INVALID_SIGNATURE_DATA=Ia,e.ERR_INVALID_STRICTNESS=Bi,e.ERR_INVALID_UID=xa,e.ERR_INVALID_UNCOMPRESSED_SIZE=Pn,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=Fa,e.ERR_INVALID_UNIX_ID_SIZE=Da,e.ERR_INVALID_UNIX_MODE=za,e.ERR_INVALID_URI=nt,e.ERR_INVALID_VERSION=na,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Xr,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Ti,e.ERR_OVERLAPPING_ENTRY=Ni,e.ERR_RESERVED_COMPRESSION_METHOD=kn,e.ERR_SPLIT_ZIP_FILE=_i,e.ERR_UNDEFINED_COMPRESSION_METHOD=ya,e.ERR_UNDEFINED_CRC32=Ea,e.ERR_UNDEFINED_READER=Sa,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=ha,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=Li,e.ERR_UNSUPPORTED_COMPRESSION=_n,e.ERR_UNSUPPORTED_CONTEXT=_c,e.ERR_UNSUPPORTED_CRYPTO_API=Zt,e.ERR_UNSUPPORTED_ENCRYPTION=vi,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=sa,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=oa,e.ERR_UNSUPPORTED_FORMAT=ma,e.ERR_UNSUPPORTED_SPLIT_USDZ=ia,e.ERR_UNSUPPORTED_UINT64=Zi,e.ERR_WORKER_STARTUP_TIMEOUT=ur,e.ERR_WRITER_NOT_INITIALIZED=Jr,e.ERR_WRITER_SIZE_NOT_WRITABLE=Qr,e.ERR_ZIP_CRYPTO_LAST_MOD_DATE=va,e.ERR_ZIP_NOT_EMPTY=ba,e.HttpRangeReader=class extends ko{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=ko,e.Reader=ao,e.SplitDataReader=vo,e.SplitDataWriter=_o,e.TextReader=class extends fo{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends wo{constructor(e){super(),n.assign(this,{encoding:e,hn:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,hn:t}=this,n=await super.getData();return n.text&&t?n.text():function(e,t){return jr(e,t,!1)}(new w(await n.arrayBuffer()),e)}},e.Uint8ArrayReader=class extends ao{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{kt:e,size:e.length})}readUint8Array(e,t){return this.kt.slice(e,e+t)}},e.Uint8ArrayWriter=class extends co{constructor(e){super(),this.yn=e||262144}init(e=0){n.assign(this,{offset:0,kt:new w(e>0?e:this.yn)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.kt.length){let e=t.kt.length?2*t.kt.length:t.yn;for(;e<n;)e*=2;const r=t.kt;t.kt=new w(e),t.kt.set(r)}t.kt.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.kt.length?this.kt:this.kt.slice(0,this.offset)}},e.VERSION="2.13.0",e.WARNING_APPENDED_DATA=Yi,e.WARNING_CLAMPED_LAST_MODIFICATION_DATE=Na,e.WARNING_COMPRESSED_PATCHED_DATA=Gi,e.WARNING_COMPRESSION_UNAVAILABLE=_a,e.WARNING_DUPLICATE_FILENAME=$i,e.WARNING_MALFORMED_EXTRA_FIELD=ji,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=rs,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=os,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=is,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME=ns,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=es,e.WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY=ts,e.WARNING_PREPENDED_CENTRAL_DIRECTORY=Ji,e.WARNING_PREPENDED_DATA=Xi,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=Qi,e.WARNING_UNKNOWN_VERSION=Hi,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=qi,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=Vi,e.WARNING_WRAPPED_ENTRIES_COUNT=Ki,e.Writer=co,e.ZipReader=fs,e.ZipReaderStream=ws,e.ZipWriter=Pa,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new z;this.readable=t,this.zipWriter=new Pa(n,e),this.je=new l}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:o}=new z({start(e){n=e},flush:()=>{!async function(){try{await t.close()}catch(e){await Ga(t,e)}}()}});return ja(this,this.zipWriter.add(e,r),e=>n.error(e)),{readable:this.readable,writable:o}}writable(e){let t;const{readable:n,writable:r}=new z({start(e){t=e}});return ja(this,this.zipWriter.add(e,n),e=>t.error(e)),r}async close(e,n={}){const{zipWriter:r}=this,o=(await E.allSettled(t.from(this.je))).filter(e=>"rejected"==e.status).map(e=>e.reason);if(o.length){const[e]=o;try{e.entryErrors=o}catch{}throw await Ga(r,e),e}try{return await r.close(e,n)}catch(e){throw await Ga(r,e),e}}},e.configure=function(e){n.assign(dt,mt(yt(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=Ic}=e;return function(){const e=[];let n,r,o,i=0,s=!1;const a=new D({async write(o){s?await n.write(o):(e.push(o),i+=o.length,i>t&&await async function(){const t=new z;r=Cn(t.readable),n=t.writable.getWriter(),s=!0;for(const t of e)await n.write(t);e.length=0}())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:a,readable:new F({async pull(t){if(s){if(!o){const e=await r;o=e.stream().getReader()}const{value:e,done:n}=await o.read();n?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){o&&await o.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(n){try{await n.abort()}catch{}n=null}r&&(r.catch(()=>{}),r=null),e.length=0}}}},e.createOPFSTempStream=function(e={}){const{thresholdBytes:n=Cc,directoryName:r=Tc,getDirectory:o=()=>T.storage.getDirectory()}=e;let i;function s(){return i||(i=E.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return function(){const e=[];let r,o,i,a,c=0,l=!1;const u=new D({async write(a){l?await i.write(a):(e.push(a),c+=a.length,c>n&&await async function(){const n=await s();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join(""),o=await n.getFileHandle(r,{create:!0}),i=(await o.createWritable()).getWriter(),l=!0;for(const t of e)await i.write(t);e.length=0}())},async close(){i&&(await i.close(),i=null)}});let d=0;return{writable:u,readable:new F({async pull(t){if(l){if(!a){const e=await o.getFile();a=e.stream().getReader()}const{value:e,done:n}=await a.read();n?t.close():t.enqueue(e)}else d<e.length?t.enqueue(e[d++]):t.close()},async cancel(e){a&&await a.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await s();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=kc,directoryName:r=vc,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new f(_c);const i=o||(()=>T.storage.getDirectory());let a;function c(){return a||(a=E.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),a}return function(){const e=[];let r,o,i=0,a=!1,l=0,u=0;const d=new D({async write(s){a?(o.write(s,{at:l}),l+=s.length):(e.push(s),i+=s.length,i>n&&await async function(){const n=await c();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join("");const i=await n.getFileHandle(r,{create:!0});o=await i.createSyncAccessHandle(),a=!0;for(const t of e)o.write(t,{at:l}),l+=t.length;e.length=0}())},close(){o&&o.flush()}});let f=0;return{writable:d,readable:new F({pull(t){if(a){const e=l-u;if(e<=0)return void t.close();const n=new w(s.min(524288,e)),r=o.read(n,{at:u});r?(u+=r,t.enqueue(n.subarray(0,r))):t.close()}else f<e.length?t.enqueue(e[f++]):t.close()}},{highWaterMark:0}),dispose:async function(){if(o){try{o.close()}catch{}o=null}if(r){try{const e=await c();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=function(){return"application/octet-stream"},e.getRegisteredCodecs=Ln,e.getSupportedCompressionMethods=function(){const{CompressionStream:e,DecompressionStream:t,CompressionStreamFallback:n,DecompressionStreamFallback:r}=ft(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:Ac(n,Hn)||Ac(e,Hn)||Ac(e,jn),decompression:Ac(r,Hn)||Ac(t,Hn)||Ac(t,jn),registered:!1},{compressionMethod:9,compression:!1,decompression:Ac(r,Gn)||Ac(t,Gn),registered:!1}];for(const e of Ln()){const t=Bn(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==pe:de,decompression:t?typeof t.DecompressionStream==pe:de,registered:!0})}return o},e.isZipFile=ps,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:i,DecompressionStream:s,versionNeeded:a}=e;if(!o.isInteger(t)||t<0||t>O||typeof n!=he||!n.length)throw new f(In);if(Nn.includes(t))throw new f(kn);const c=typeof i==pe||typeof s==pe;if(!(c||typeof r==he&&r.length))throw new f(In);Un.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:a}),c&&Wn(n,{CompressionStream:i,DecompressionStream:s})},e.resetConfiguration=function(){for(const e of ut)delete dt[e];n.assign(dt,ot)},e.terminateWorkers=async function(){await E.allSettled(_r.map(e=>(Vr(e),e.terminate()))),dr=de,fr=!1},e.unregisterCodec=function(e){const t=Un.get(e);if(t){let n;Un.delete(e),Un.forEach(e=>n=n||e.format==t.format),n||Mn.delete(t.format)}}});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})}(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:o,BigInt:i,Math:a,Date:s,Map:c,Set:l,Response:u,URL:d,Error:f,Uint8Array:w,Uint16Array:p,Uint32Array:m,DataView:h,Blob:y,Promise:E,TextEncoder:S,TextDecoder:g,document:b,crypto:x,btoa:F,TransformStream:R,ReadableStream:z,WritableStream:A,CompressionStream:D,DecompressionStream:I,navigator:C,Worker:T,Symbol:k,setTimeout:v,clearTimeout:_,structuredClone:N}="undefined"!=typeof globalThis?globalThis:self;var U=void 0!==b?b.currentScript:null;const M=4294967295,O=65535,L=255,B=67324752,W=134695760,P=W,Z=84233040,V=33639248,H=101010256,G=101075792,j=117853008,q=46,Y=22,K=20,X=56,J=39169,Q=21589,$=6534,ee=30837,te=30805,ne=2048,re=61440,oe=16384,ie=2048,ae=1024,se="/",ce=30,le=new s(2107,11,31,23,59,58),ue=new s(1980,0,1),de=void 0,fe=1/0,we="undefined",pe="function",me="object",he="string",ye="boolean",Ee=new w,Se=k.asyncDispose||k(),ge="password",be="rawPassword",xe="passThrough",Fe="signal",Re="useWebWorkers",ze="useCompressionStream",Ae="transferStreams",De="preventClose",Ie="level",Ce="useUnicodeFileNames",Te="dataDescriptor",ke="offset",ve="usdz",_e="maxAppendedDataSize",Ne="entry",Ue="filename",Me="comment",Oe="strict",Le="balanced",Be="tolerant",We="compressed",Pe="Invalid option (must be a function)",Ze="Invalid signal (must be an AbortSignal instance)",Ve="Invalid password (password must be a string, rawPassword must be a Uint8Array)",He="Invalid passThrough option (must be a boolean or 'compressed')",Ge="The operation was aborted";function je(e){if(e&&typeof e!=pe)throw new f(Pe);return e}function qe(e){if(e&&(typeof e.addEventListener!=pe||typeof e.aborted!=ye))throw new f(Ze);return e||de}function Ye(e){if(e&&e.aborted)throw e.reason===de?new DOMException(Ge,"AbortError"):e.reason}function Ke(e,t){if(e&&typeof e!=he||t&&!(t instanceof w))throw new f(Ve)}function Xe(e){if(e!==de&&typeof e!=ye&&e!==We)throw new f(He);return e}function Je(e,t,n){if(!o.isInteger(e)||e<0||e>t)throw new f(n)}function Qe(e,t,n){e!==de&&Je(e,t,n)}function $e(e){return typeof e==he&&e.trim()?o(e):e}const et="Invalid maxWorkers (must be an integer greater than 0)",tt="Invalid baseURI (must be a string)",nt="Invalid URI (must be a string or a function returning a string)";let rt=2;try{typeof C!=we&&C.hardwareConcurrency&&(rt=C.hardwareConcurrency)}catch{}const ot={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:rt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof D!=we&&D,DecompressionStream:typeof I!=we&&I},it="maxWorkers",at="baseURI",st=["wasmURI","workerURI"],ct=["chunkSize",it,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],lt=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],ut=[at,...st,"useCompressionStream","useWebWorkers","transferStreams",...ct,...lt],dt={...ot};function ft(){return dt}function wt(e){return pt(e.chunkSize)}function pt(e){return e=$e(e),o.isInteger(e)&&e>=1?a.max(e,64):65536}function mt(e){const t={};for(const n of ut){const r=e[n];r!==de&&(t[n]=ht(n,r))}return t}function ht(e,t){if(ct.includes(e)){if(t=$e(t),e==it&&(!o.isInteger(t)||t<1))throw new f(et)}else if(lt.includes(e))je(t);else if(e==at){if(t&&typeof t!=he)throw new f(tt)}else if(st.includes(e)&&t&&typeof t!=he&&typeof t!=pe)throw new f(nt);return t}function yt(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===de&&r===de)return e;const o=n.assign({},e);return o.CompressionStreamFallback===de&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===de&&(o.DecompressionStreamFallback=r),o}function Et(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function St(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function gt(e){return new h(e.buffer,e.byteOffset,e.byteLength)}function bt(e){return Boolean(e)&&"object"==typeof e}const xt=[[],[],[],[],[],[],[],[]];for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=1&t?t>>>1^3988292384:t>>>1;xt[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){const n=xt[t-1][e];xt[t][e]=n>>>8^xt[0][255&n]}const[Ft,Rt,zt,At,Dt,It,Ct,Tt]=xt;class kt{constructor(e){this.o=e||-1}append(e){let t=0|this.o;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const o=new h(e.buffer,e.byteOffset,n),i=n-8;for(;r<=i;r+=8){const e=t^o.getInt32(r,!0),n=o.getInt32(r+4,!0);t=Tt[255&e]^Ct[e>>>8&255]^It[e>>>16&255]^Dt[e>>>24&255]^At[255&n]^zt[n>>>8&255]^Rt[n>>>16&255]^Ft[n>>>24&255]}}for(;r<n;r++)t=t>>>8^Ft[255&(t^e[r])];this.o=t}get(){return~this.o}}class vt extends R{constructor(){let e;const t=new kt;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function _t(e){if(typeof S==we){e=unescape(encodeURIComponent(e));const t=new w(e.length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new S).encode(e)}const Nt=64,Ut=20,Mt=new w([128]),Ot=new w(1),Lt=new Int32Array([1732584193,4023233417,2562383102,271733878,3285377520]),Bt=new w(256),Wt=new Int32Array(256),Pt=new Int32Array(256),Zt=new Int32Array(256),Vt=new Int32Array(256);let Ht=!1;function Gt(e){const t=function(){const e=new Int32Array(Lt),t=new Int32Array(80),n=new w(Nt),r=new h(n.buffer),o=new w(8);let i=0,s=0;return{update:c,digest:function(){const t=8*s,n=a.floor(t/4294967296),r=t>>>0;for(c(Mt,0,1);56!=i;)c(Ot,0,1);o[0]=n>>>24,o[1]=n>>>16,o[2]=n>>>8,o[3]=n,o[4]=r>>>24,o[5]=r>>>16,o[6]=r>>>8,o[7]=r,c(o,0,8);const l=new w(Ut),u=new h(l.buffer);for(let t=0;t<e.length;t++)u.setInt32(4*t,e[t]);return e.set(Lt),i=0,s=0,l}};function c(e,t,o){const a=t+o;if(s+=o,i){for(;t<a&&i<Nt;)n[i++]=e[t++];i==Nt&&(l(r,0),i=0)}if(t+Nt<=a){const n=new h(e.buffer,e.byteOffset,e.byteLength);for(;t+Nt<=a;t+=Nt)l(n,t)}for(;t<a;)n[i++]=e[t++]}function l(n,r){for(let e=0;e<16;e++)t[e]=n.getInt32(r+4*e);for(let e=16;e<80;e++){const n=t[e-3]^t[e-8]^t[e-14]^t[e-16];t[e]=n<<1|n>>>31}let o,i=e[0],a=e[1],s=e[2],c=e[3],l=e[4];for(let e=0;e<20;e++)o=(i<<5|i>>>27)+(a&s|~a&c)+l+1518500249+t[e]|0,l=c,c=s,s=a<<30|a>>>2,a=i,i=o;for(let e=20;e<40;e++)o=(i<<5|i>>>27)+(a^s^c)+l+1859775393+t[e]|0,l=c,c=s,s=a<<30|a>>>2,a=i,i=o;for(let e=40;e<60;e++)o=(i<<5|i>>>27)+(a&s|a&c|s&c)+l+2400959708+t[e]|0,l=c,c=s,s=a<<30|a>>>2,a=i,i=o;for(let e=60;e<80;e++)o=(i<<5|i>>>27)+(a^s^c)+l+3395469782+t[e]|0,l=c,c=s,s=a<<30|a>>>2,a=i,i=o;e[0]=e[0]+i|0,e[1]=e[1]+a|0,e[2]=e[2]+s|0,e[3]=e[3]+c|0,e[4]=e[4]+l|0}}(),n=new w(Nt),r=new w(Nt);e.length>Nt&&(t.update(e,0,e.length),e=t.digest());for(let t=0;t<Nt;t++){const o=t<e.length?e[t]:0;n[t]=54^o,r[t]=92^o}return t.update(n,0,Nt),{update(e,n,r){t.update(e,n,r)},digest(){const e=t.digest();t.update(r,0,Nt),t.update(e,0,Ut);const o=t.digest();return t.update(n,0,Nt),o}}}function jt(e){return Bt[e>>>24]<<24|Bt[e>>>16&255]<<16|Bt[e>>>8&255]<<8|Bt[255&e]}function qt(e){return 255&(e<<1^27*(e>>7))}const Yt=typeof x!=we&&typeof x.getRandomValues==pe,Kt="Invalid password",Xt="Invalid authentication code",Jt="zipjs-abort-check-password",Qt="Crypto API not supported";function $t(e){if(Yt)return x.getRandomValues(e);throw new f(Qt)}const en={name:"PBKDF2"},tn=n.assign({hash:{name:"HMAC"}},en),nn=n.assign({iterations:1e3,hash:{name:"SHA-1"}},en),rn=["deriveBits"],on=[8,12,16],an=[16,24,32],sn=10,cn=typeof x!=we,ln=cn&&x.subtle;let un=cn&&typeof ln!=we&&typeof ln.importKey==pe&&typeof ln.deriveBits==pe;class dn extends R{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){super({start(){wn(this,e,t,n)},async transform(e,t){const n=this,{password:o,strength:i,l:a,ready:s}=n;o?(await async function(e,t,n,r){const o=await hn(e,t,n,En(r,0,on[t])),i=En(r,on[t]);if(o[0]!=i[0]||o[1]!=i[1])throw mn(e),new f(Kt)}(n,i,o,En(e,0,on[i]+2)),e=En(e,on[i]+2),r?(mn(n),t.error(new f(Jt))):a()):await s;const c=new w(e.length-sn-(e.length-sn)%16);t.enqueue(pn(n,e,c,0,sn,!0))},async flush(e){const{m:t,h:n,ready:r}=this;if(t){await r;const i=En(n,n.length-sn),a=new w(En(n,0,n.length-sn));t.process(a,!0);const s=t.digest();let c=n.length<sn?1:0;for(let e=0;e<sn;e++)c|=s[e]^i[e];if(c&&o)throw new f(Xt);e.enqueue(a)}},cancel(){mn(this)}})}}class fn extends R{constructor({password:e,rawPassword:t,encryptionStrength:n}){super({start(){wn(this,e,t,n)},async transform(e,t){const n=this,{password:r,strength:o,l:i,ready:a}=n;let s=Ee;r?(s=await async function(e,t,n){const r=$t(new w(on[t]));return Et(r,await hn(e,t,n,r))}(n,o,r),i()):await a;const c=new w(s.length+e.length-e.length%16);c.set(s,0),t.enqueue(pn(n,e,c,s.length,0,!1))},async flush(e){const{m:t,h:n,ready:r}=this;if(t){await r;const o=new w(n);t.process(o,!1);const i=En(t.digest(),0,sn);e.enqueue(Et(o,i))}},cancel(){mn(this)}})}}function wn(e,t,r,o){n.assign(e,{ready:new E(t=>e.l=t),password:yn(t,r),strength:o-1,h:Ee})}function pn(e,t,n,r,o,i){const{m:a,h:s}=e;s.length&&(t=Et(s,t));const c=t.length-o,l=c-c%16;if(n=function(e,t){if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e}(n,r+l),l){const e=En(n,r,r+l);e.set(En(t,0,l)),a.process(e,i)}return e.h=En(t,l),n}function mn({m:e}){e&&e.dispose&&e.dispose()}async function hn(e,t,r,o){e.password=null;const i=an[t],s=await async function(e,t,r){if(un)try{const o=await ln.importKey("raw",e,tn,!1,rn);return new w(await ln.deriveBits(n.assign({salt:t},nn),o,8*r))}catch{un=!1}return function(e,t,n,r){const o=Gt(e),i=new w(r),s=new w(t.length+4),c=new h(s.buffer);s.set(t);for(let e=1,n=0;n<r;e++,n+=Ut){c.setUint32(t.length,e),o.update(s,0,s.length);let l=o.digest();const u=l.slice();for(let e=1;e<1e3;e++){o.update(l,0,Ut),l=o.digest();for(let e=0;e<Ut;e++)u[e]^=l[e]}i.set(u.subarray(0,a.min(Ut,r-n)),n)}return i}(e,t,0,r)}(r,o,2*i+2);return e.m=function(e,t){!function(){if(!Ht){let e=1,t=1;do{e=255&(e^e<<1^(128&e?27:0)),t=255&(t^t<<1),t=255&(t^t<<2),t=255&(t^t<<4),128&t&&(t^=9),Bt[e]=255&(t^(t<<1|t>>7)^(t<<2|t>>6)^(t<<3|t>>5)^(t<<4|t>>4)^99)}while(1!=e);Bt[0]=99;for(let e=0;e<256;e++){const t=Bt[e],n=qt(t),r=n<<24|t<<16|t<<8|n^t;Wt[e]=r,Pt[e]=r>>>8|r<<24,Zt[e]=r>>>16|r<<16,Vt[e]=r>>>24|r<<8}Ht=!0}}();const n=new Int32Array(60),r=function(e,t){const n=e.length>>2,r=n+6,o=4*(r+1);let i=1;for(let r=0;r<n;r++)t[r]=e[4*r]<<24|e[4*r+1]<<16|e[4*r+2]<<8|e[4*r+3];for(let e=n;e<o;e++){let r=t[e-1];e%n==0?(r=jt(r<<8|r>>>24)^i<<24,i=qt(i)):n>6&&e%n==4&&(r=jt(r)),t[e]=t[e-n]^r}return r}(e,n),o=new w(16),i=new Int32Array(4),a=Gt(t);return{process(e,t){t&&a.update(e,0,e.length),function(e){const t=new h(e.buffer,e.byteOffset,e.byteLength),n=e.length;let r=0;for(;r+16<=n;r+=16)s(),t.setInt32(r,t.getInt32(r)^i[0]),t.setInt32(r+4,t.getInt32(r+4)^i[1]),t.setInt32(r+8,t.getInt32(r+8)^i[2]),t.setInt32(r+12,t.getInt32(r+12)^i[3]);if(r<n){s();for(let t=0;r<n;r++,t++)e[r]^=i[t>>2]>>>24-8*(3&t)}}(e),t||a.update(e,0,e.length)},digest:()=>a.digest()};function s(){for(let e=0;e<16&&(o[e]++,0===o[e]);e++);let e=(o[0]<<24|o[1]<<16|o[2]<<8|o[3])^n[0],t=(o[4]<<24|o[5]<<16|o[6]<<8|o[7])^n[1],a=(o[8]<<24|o[9]<<16|o[10]<<8|o[11])^n[2],s=(o[12]<<24|o[13]<<16|o[14]<<8|o[15])^n[3],c=4;for(let o=1;o<r;o++,c+=4){const r=Wt[e>>>24]^Pt[t>>>16&255]^Zt[a>>>8&255]^Vt[255&s]^n[c],o=Wt[t>>>24]^Pt[a>>>16&255]^Zt[s>>>8&255]^Vt[255&e]^n[c+1],i=Wt[a>>>24]^Pt[s>>>16&255]^Zt[e>>>8&255]^Vt[255&t]^n[c+2],l=Wt[s>>>24]^Pt[e>>>16&255]^Zt[t>>>8&255]^Vt[255&a]^n[c+3];e=r,t=o,a=i,s=l}i[0]=(Bt[e>>>24]<<24|Bt[t>>>16&255]<<16|Bt[a>>>8&255]<<8|Bt[255&s])^n[c],i[1]=(Bt[t>>>24]<<24|Bt[a>>>16&255]<<16|Bt[s>>>8&255]<<8|Bt[255&e])^n[c+1],i[2]=(Bt[a>>>24]<<24|Bt[s>>>16&255]<<16|Bt[e>>>8&255]<<8|Bt[255&t])^n[c+2],i[3]=(Bt[s>>>24]<<24|Bt[e>>>16&255]<<16|Bt[t>>>8&255]<<8|Bt[255&a])^n[c+3]}}(En(s,0,i),En(s,i,2*i)),En(s,2*i)}function yn(e,t){return t===de?_t(e):t}function En(e,t,n){return e.subarray(t,n)}class Sn extends R{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){bn(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=xn(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t[11]^n.passwordVerification))throw new f(Kt);e=e.subarray(12)}r?t.error(new f(Jt)):t.enqueue(xn(n,e))}})}}class gn extends R{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){bn(this,e,t,n)},transform(e,t){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=$t(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Fn(n,t),0),o=12}else r=new w(e.length),o=0;r.set(Fn(n,e),o),t.enqueue(r)}})}}function bn(e,t,r,o){n.assign(e,{password:t,rawPassword:r,passwordVerification:o}),function(e,t,r){const o=[305419896,591751049,878082192];if(n.assign(e,{keys:o,S:new kt(o[0]),F:new kt(o[2])}),r)for(let t=0;t<r.length;t++)Rn(e,r[t]);else for(let n=0;n<t.length;n++)Rn(e,t.charCodeAt(n))}(e,t,r)}function xn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=zn(e)^t[r],Rn(e,n[r]);return n}function Fn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=zn(e)^t[r],Rn(e,t[r]);return n}function Rn(e,t){let[,n]=e.keys;e.S.append([t]);const r=~e.S.get();n=Dn(a.imul(Dn(n+An(r)),134775813)+1),e.F.append([n>>>24]);const o=~e.F.get();e.keys=[r,n,o]}function zn(e){const t=2|e.keys[2];return An(a.imul(t,1^t)>>>8)}function An(e){return 255&e}function Dn(e){return 4294967295&e}function In(e){if(e instanceof z)return e;const t=e.getReader();return new z({async pull(e){const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})}function Cn(e,t){e=In(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=pe||new y([]).stream()instanceof z)return new u(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new A({write(e){r.push(e)}})).then(()=>new y(r,n))}function Tn(e){if(e instanceof A)return e;const t=e.getWriter();return new A({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const kn="Invalid codec definition",vn="Reserved compression method",_n="Invalid codec module",Nn="Compression method not supported",Un=[0,8,9,99],Mn=new c,On=new c;function Ln(e){return Mn.get(e)}function Bn(){return t.from(Mn.values(),e=>n.assign({},e,On.get(e.format)))}function Wn(e){return On.get(e)}function Pn(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=pe&&typeof r!=pe)throw new f(_n);On.set(e,{CompressionStream:n,DecompressionStream:r})}const Zn="Invalid uncompressed size",Vn="Invalid compressed data",Hn="Invalid CRC32",Gn="deflate-raw",jn="deflate64-raw",qn="gzip",Yn=[31,139,8];class Kn extends R{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:a,zipCrypto:s,computeCrc32:c,level:l,deflate64:u,format:d,compressionMethod:f,inputSize:w}=e,p=this;let m,y,E,S=super.readable;const g=d&&Wn(d),b=c&&o&&!u&&!g&&(!i||s)&&Boolean(a&&r);if(i&&!s||!c||b||(m=new vt,S=or(S,m)),o)if(g)S=ir(S,nr(g.CompressionStream,d,{level:l,chunkSize:t,compressionMethod:f,uncompressedSize:w}));else if(b)E=new Xn,S=ir(S,new r(qn)),S=or(S,E);else try{S=rr(S,a,{level:l,chunkSize:t},r,n)}catch(e){let t;try{t=new r(qn)}catch{throw e}S=ir(S,t),S=or(S,new Xn)}i&&(s?S=or(S,new gn(e)):(y=new fn(e),S=or(S,y))),tr(p,S,()=>{i&&!s||!c||(p.crc32=b?E.crc32:new h(m.value.buffer).getUint32(0))})}}class Xn extends R{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=a.min(t,e.length);if(t-=n,!(e=e.subarray(n)).length)return}const o=n.length+e.length;if(o<=8)return void(n=Et(n,e));const i=o-8,s=a.min(i,n.length);r.enqueue(Et(n.subarray(0,s),e.subarray(0,i-s))),n=Et(n.subarray(s),e.subarray(i-s))},flush(){const t=gt(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class Jn extends R{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:a,crc32:s,compressed:c,useCompressionStream:l,deflate64:u,format:d,compressionMethod:p,rawBitFlag:m,outputSize:y}=e;let S,g,b=super.readable;if(i&&(o?b=or(b,new Sn(e)):(g=new dn(e),b=or(b,g))),c){const e=d&&Wn(d);if(e)b=ir(b,nr(e.DecompressionStream,d,{chunkSize:t,compressionMethod:p,rawBitFlag:m,uncompressedSize:y}));else try{b=rr(b,l,{chunkSize:t,deflate64:u},r,n)}catch(e){if(u||y===de)throw e;let t;try{t=new r(qn)}catch{throw e}b=function(e,t,n){const r=new kt;let o,i,a,s=0,c=!1;const l=new E((e,t)=>{i=e,a=t});l.catch(()=>{}),n||i();const u=new R({start(e){const t=new w(10);t.set(Yn),e.enqueue(t)},transform(e,t){t.enqueue(e)},async flush(e){c=!0,p();try{await l}finally{m()}const t=new w(8),o=gt(t);o.setUint32(0,r.get(),!0),o.setUint32(4,n,!0),e.enqueue(t)},cancel(e){a(e)}}),d=new R({transform(e,t){r.append(e),s+=e.length,s>=n?i():c&&p(),t.enqueue(e)},cancel(e){a(e)}});return e=or(e,u),or(e=ir(e,t),d);function p(){m(),o=v(()=>a(new f(Zn)),5e3)}function m(){_(o)}}(b,t,y)}b=function(e){const t=e.getReader();return new z({async pull(e){let n;try{n=await t.read()}catch(e){if(e&&e.message)throw e;const t=new f(Vn);throw t.cause=e,t}const{value:r,done:o}=n;o?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})}(b)}a&&(S=new vt,b=or(b,S)),tr(this,b,()=>{if(a){const e=new h(S.value.buffer);if(s!=e.getUint32(0,!1))throw new f(Hn)}})}}const Qn=new c;function $n(e,t){if(!e)return!1;let n=Qn.get(e);n||(n=new c,Qn.set(e,n));let r=n.get(t);if(r===de){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function er(e){return $n(e,Gn)}function tr(e,t,r){t=or(t,new R({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function nr(e,t,n){if(!e)throw new f(Nn);return new e(t,n)}function rr(e,t,n,r,o){const i=t&&r?r:o||r,a=n.deflate64?jn:Gn;let s;try{s=new i(a,n)}catch(e){if(!t||!o||i==o)throw e;s=new o(a,n)}return ir(e,s)}function or(e,t){return In(e).pipeThrough(t)}function ir(e,t){const n=t.writable.getWriter(),r=e.getReader();return async function(){try{for(;;){await n.ready;const e=await r.read();if(e.done){await n.close();break}await n.write(e.value)}}catch(e){await async function(e,t){try{await e.abort(t)}catch{}}(n,e),await async function(e,t){try{await e.cancel(t)}catch{}}(r,e)}}(),t.readable}const ar="data",sr="deflate",cr="inflate";class lr extends R{constructor(e,t){super({});const r=this,{codecType:o}=e;let i;o.startsWith(sr)?i=Kn:o.startsWith(cr)&&(i=Jn),r.outputSize=0;let a=0;const s=new i(e,t),c=super.readable,l=new R({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:a})}}),u=new R({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==de&&r.outputSize>e.outputSize))throw new f(Zn)},flush(){const{crc32:e}=s;n.assign(r,{crc32:e,inputSize:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(s).pipeThrough(u)})}}class ur extends R{constructor(e){const t=[];let r=0,i=0;function a(){const n=new w(e);let o=0;for(;o<e;){const r=t[0],i=e-o;r.length<=i?(n.set(r,o),o+=r.length,t.shift()):(n.set(r.subarray(0,i),o),t[0]=r.subarray(i),o+=i)}return r-=e,n}(!o.isFinite(e)||e<1)&&(e=65536),super({transform(n,o){for(t.push(n),r+=n.length;r>e;)i+=e,o.enqueue(a())},flush(e){r&&(i+=r,e.enqueue(function(e,t){const n=new w(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(t,r)))}}),n.defineProperty(this,"outputSize",{get:()=>i})}}const dr="Worker startup timeout";let fr,wr,pr,mr=()=>{};async function hr(){if(mr)try{return await void 0,!0}catch{}return!1}function yr(e){e.createWorker?wr=!0:fr=!1}class Er{constructor(e,{readable:t,writable:r},o,i){const{options:a,config:s,R:c,useWebWorkers:l,transferStreams:u,workerURI:d}=o;let{createWorker:f}=o;const{signal:w}=c;return wr&&(f=de),n.assign(e,{A:!0,D:(e.D||0)+1,readable:t.pipeThrough(new ur(wt(s))).pipeThrough(new Sr(c),{signal:w}),writable:r,options:n.assign({},a),I:o,workerURI:d,createWorker:f,transferStreams:u,terminate:()=>new E(t=>{const{C:n,A:r}=e;r?e.T=t:(n&&(n.terminate(),e.C=null),t()),e.v=null}),_(){if(e.A){const{T:t,C:n}=e;t&&(e.T=null,n&&(e.N=!0,n.terminate()),t()),e.A=!1,i(e)}}}),fr===de&&(fr=typeof T!=we),(l&&pr&&(fr&&d||f)?pr:br)(e,s)}}class Sr extends R{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await gr(e,n)},async transform(e,r){o+=e.length,t&&await gr(t,o,n),r.enqueue(e)},async flush(){r&&await gr(r,o)}})}}async function gr(e,...t){try{await e(...t)}catch{}}function br(e,t){return{run:()=>xr(e,t)}}async function xr({options:e,readable:t,writable:n,_:r,I:o},i){let a,s,c;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(sr),n=t?i.CompressionStreamFallback:i.DecompressionStreamFallback,r=t?i.CompressionStream:i.DecompressionStream;e.useCompressionStream?n&&n.U&&!er(r)&&await l():await l()||n&&!n.U||(e.useCompressionStream=!0)}e.encrypted&&!e.zipCrypto&&await l(),a=new lr(e,i),s=new ur(wt(i)),await t.pipeThrough(a).pipeThrough(s).pipeTo(n,{preventClose:!0,preventAbort:!0});const{crc32:r,inputSize:o,outputSize:c}=a;return{crc32:r,inputSize:o,outputSize:c}}catch(e){if(a){const t=s?s.outputSize:0;if(o.outputSize=t,bt(e))try{e.outputSize=t}catch{}}throw e}finally{r()}function l(){return c||(c=hr()),c}}const Fr={type:"module"},Rr="error";let zr,Ar,Dr,Ir=!0;try{Ir=typeof N==pe&&N(new DOMException("","AbortError")).code!==de}catch{}var Cr;function Tr(e){const{reader:t}=e;t&&t.releaseLock(),e.reader=null,e.writer=null}function kr(e){const{C:t}=e;if(t)try{t.terminate()}catch{}e.v=null}function vr(e,t,r,o,i=!0){const{createWorker:a}=r;let s,c,l;if(a)s=a();else if(Ar===de||zr!==e){const n=typeof e==pe;c=n?e(i):e;const a=c.startsWith("data:"),u=c.startsWith("blob:");if(a||u){o===de&&(o=!1),o&&(l=Fr);try{s=new T(c,l)}catch(i){if(u)try{d.revokeObjectURL(c)}catch{}if(n&&u)return vr(e,t,r,o,!1);if(o)throw i;return vr(e,t,r,!0,!1)}}else{o===de&&(o=!0),o&&(l=Fr);try{c=new d(c,t)}catch{}try{s=new T(c,l)}catch(n){if(o)return vr(e,t,r,!1,i);throw n}}zr=e,Ar=c,Dr=l}else s=new T(Ar,Dr);return s.addEventListener("message",e=>{r.M=!0,_r(r),async function({data:e},t){const{type:r,value:o,messageId:i,result:a,error:s,errorValue:c}=e,{reader:l,writer:u,O:d,L:p,_:m,D:h}=t,y=()=>t.D!=h;try{if(s)E(function(e,t){const{message:r,stack:o,code:i,name:a,outputSize:s,cause:c,codecImportFailed:l}=e;let u;if(t?u=t.value:(u=n.assign(new f(r),{stack:o,code:i,name:a}),c&&(u.cause=n.assign(new f(c.message),{name:c.name}))),bt(u))try{s!==de&&(u.outputSize=s),l&&(u.codecImportFailed=!0),t&&(u.name!==a&&(u.name=a),u.code!==i&&(u.code=i))}catch{}return u}(s,c));else{if("pull"==r){const{value:e,done:n}=await l.read();y()||Ur({type:ar,value:e,done:n,messageId:i},t)}if(r==ar){const e=new w(o);await u.ready,await u.write(e),y()||Ur({type:"ack",messageId:i},t)}"close"==r&&function(e){y()||(d(e),S(),m())}(a)}}catch(s){y()||(kr(t),E(s))}function E(e){y()||(p(e),S(),bt(e)&&e.codecImportFailed||m())}function S(){u&&u.releaseLock()}}(e,r)}),s.addEventListener(Rr,e=>Nr(e,r)),s.addEventListener("messageerror",e=>Nr(e,r)),s}function _r(e){const{B:t}=e;t&&(_(t),e.B=null)}function Nr(e,t){e.preventDefault&&e.preventDefault(),_r(t);const{M:r,L:o,writer:i,_:a}=t;kr(t),r||(t.C=null);let s=e.error||new f(e.message||Rr);r||(s=n.assign(new f(s.message||Rr),{W:!0}),t.P=s),o&&(o(s),i&&i.releaseLock(),r&&a())}function Ur(e,{C:t,writer:n,transferStreams:r,M:o}){try{const{value:n,readable:i,writable:a}=e,s=[];if(n&&(e.value=St(n),s.push(e.value.buffer)),r&&Ir&&o?(i&&s.push(i),a&&s.push(a)):e.readable=e.writable=null,s.length)try{return t.postMessage(e,s),!0}catch{Ir=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}Cr=function(e,t){const{baseURI:r,chunkSize:i,workerStartupTimeout:a}=t;let{wasmURI:s}=t;if(!e.v){let c;typeof s==pe&&(s=s());try{c=vr(e.workerURI,r,e)}catch{return yr(e),br(e,t)}n.assign(e,{C:c,M:!1,N:!1,P:null,v:{run:async()=>{try{return await async function(e,t){if(!e.C){const{P:t}=e;e.P=null;const n=t||new f(dr);throw n.W=!0,n}let r,i;const a=new E((t,n)=>{r=t,i=t=>{const{outputSize:r,I:o}=e;if(o.outputSize=r,bt(t))try{t.outputSize=r}catch{}n(t)}});n.assign(e,{reader:null,writer:null,outputSize:0,Z:!1,V:null,O:r,L:i,result:a});const{readable:s,options:c}=e,{writable:l,closed:u,H:d}=function(e,t){const r=new AbortController;let o;const{writable:i,readable:a}=new R({transform(e,n){t.outputSize+=e.length,n.enqueue(e)}}),s=a.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:r.signal});return s.catch(e=>{o||n.assign(t,{Z:!0,V:e})}),{writable:i,closed:s,H:()=>{o=!0,r.abort()}}}(e.writable,e);let w;try{w=Ur({type:"start",options:c,config:t,readable:s,writable:l},e)}catch(t){d();try{await u}catch{}throw e._(),t}w||n.assign(e,{reader:s.getReader(),writer:l.getWriter()});const{workerStartupTimeout:p}=t;!e.M&&o.isFinite(p)&&p>=0&&(e.B=v(()=>function(e){if(e.B=null,e.M)return;const{L:t,writer:n}=e;if(kr(e),e.C=null,t){const e=new f(dr);e.W=!0,t(e),n&&n.releaseLock()}}(e),p));try{const e=await a;return await m(),await u,e}catch(t){await m(),d();try{await u}catch{}const{outputSize:n,I:r,Z:o,V:i}=e;r.outputSize=n;const a=bt(t)&&(t.codecImportFailed||t.W),s=o&&!a?i:t;if(bt(s))try{s.outputSize=n}catch{}throw s}async function m(){if(!w&&!l.locked)try{await l.getWriter().close()}catch{}}}(e,{chunkSize:i,wasmURI:s,baseURI:r,workerStartupTimeout:a})}catch(n){if(n&&n.W)return yr(e),Tr(e),xr(e,t);if(n&&n.codecImportFailed){if(e.reader)return Tr(e),xr(e,t);e._()}throw n}}}})}return e.v},pr=Cr;let Mr=[];const Or=[];let Lr,Br,Wr=0;async function Pr(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:a,useCompressionStream:s,compressed:c,checkCrc32:l,computeCrc32:u,encrypted:f,format:w,codecURI:p}=n,{workerURI:m,createWorker:h,maxWorkers:y}=r;w&&(p&&(n.codecURI=function(e,t){try{return new d(e,t).toString()}catch{return e}}(p,r.baseURI)),await async function(e,t){!On.has(e)&&t&&Pn(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(w,n.codecURI)),t.transferStreams=!w&&(i||i===de&&r.transferStreams);const S=!(c||l||u||f),g=w===de||Boolean(n.codecURI);return t.useWebWorkers=!S&&g&&(a||a===de&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&m?m:de,t.createWorker=t.useWebWorkers&&h?h:de,n.useCompressionStream=s||s===de&&r.useCompressionStream,(await async function(){const n=Mr.find(e=>!e.A);if(n)return jr(n),new Er(n,e,t,b);if(Mr.length<y){const n={G:Wr};return Wr++,Mr.push(n),new Er(n,e,t,b)}return new E(n=>{Or.push({resolve:n,stream:e,I:t}),Br=r.workerStarvationTimeout,Zr()})}()).run();function b(e){if(Vr(),Or.length){const[{resolve:t,stream:n,I:r}]=Or.splice(0,1);t(new Er(e,n,r,b)),Zr()}else e.C?(jr(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.N?e.N=!1:e.j=v(async()=>{Mr=Mr.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}(e,t)):Mr=Mr.filter(t=>t!=e)}}function Zr(){!Lr&&Or.length&&o.isFinite(Br)&&Br>=0&&(Lr=v(Hr,Br))}function Vr(){Lr&&(_(Lr),Lr=null)}function Hr(){if(Lr=null,Or.length){const[{resolve:e,stream:t,I:r}]=Or.splice(0,1),o=n.assign({},r,{useWebWorkers:!1,workerURI:de,createWorker:de});e(new Er({},t,o,Gr)),Zr()}}function Gr(){Vr(),Zr()}function jr(e){const{j:t}=e;t&&(_(t),e.j=null)}const qr="\0\u263a\u263b\u2665\u2666\u2663\u2660\u2022\u25d8\u25cb\u25d9\u2642\u2640\u266a\u266b\u263c\u25ba\u25c4\u2195\u203c\xb6\xa7\u25ac\u21a8\u2191\u2193\u2192\u2190\u221f\u2194\u25b2\u25bc !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xa2\xa3\xa5\u20a7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\u2310\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0".split("");function Yr(e,t){return Kr(e,t,!0)}function Kr(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?function(e){let t="";for(let n=0;n<e.length;n++)t+=qr[e[n]];return t}(e):new g(t,{ignoreBOM:n}).decode(e)}const Xr="HTTP error ",Jr="HTTP Range not supported",Qr="HTTP resource changed",$r="Writer iterator completed too soon",eo="Writer not initialized",to="Invalid writer (size must be writable)",no="Content-Range",ro="Range",oo="GET",io="bytes",ao=16777216,so="writable",co=k();class lo{constructor(){this.size=0}init(){this.initialized=!0}}class uo extends lo{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=wt(ft())}={}){const r=this;let o=0;return n=pt(n),new z({async pull(i){const s=t===de?n:a.min(n,t-o),c=await Vo(r,e+o,s);c.length&&(i.enqueue(c),o+=c.length),(t!==de&&o>=t||!c.length&&s)&&i.close()}})}}class fo extends lo{constructor(){super();const e=this,t=new A({write(t){if(!e.initialized)throw new f(eo);return e.writeUint8Array(St(t))}});n.defineProperty(e,so,{get:()=>t})}writeUint8Array(){}}let wo,po;class mo extends uo{constructor(e){super(),n.assign(this,{Y:e,size:e.size}),po||(po=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,n=await e.read();for(;!n.done;)t+=n.value.length,n=await e.read();wo=1==t}catch{wo=!1}})())}createReadable(e){const{Y:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};if(typeof t.stream==pe){if(!r&&o>=n)return In(t.stream());if(wo)return In(t.slice(r,r+o).stream())}return super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=!e&&r>=n.size?n.Y:n.Y.slice(e,r);let i=await o.arrayBuffer();return i.byteLength>t&&(i=i.slice(e,r)),new w(i)}}class ho extends lo{constructor(e){super();const t=this,r=new R;n.defineProperty(t,so,{get:()=>r.writable}),t.contentType=e,t.K=Cn(r.readable,e),t.K.catch(()=>{})}getData(){return this.K}}class yo extends uo{constructor(e,t){super(),So(this,e,t)}async init(){await go(this,_o,Co),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:o}=t;if((n||r)&&o!==de){const{offset:n=0,size:r=o-n}=e||{};if(r>0&&n<o)return function(e,t,n){let r,o=t,i=0,s=n;return new z({start:()=>c(),async pull(e){r||await c();const{value:t,done:n}=await r.read();if(n)throw new f(Jr);const o=t.length>i?t.subarray(0,i):t;i-=o.length,s-=o.length,o.length&&e.enqueue(o),i||(await async function(){const e=r;r=de,await e.cancel()}(),s||e.close())},cancel:e=>r&&r.cancel(e)});async function c(){const t=a.min(e.maximumRangeSize,s),n=await _o(oo,e,Do(e,o,t));if(206!=n.status)throw new f(Jr);const c=xo(n);if(c!==de&&c!=o)throw new f(Jr);Ao(e,n),zo(e,n),o+=t,i=t,r=n.body.getReader()}}(t,n,a.min(r,o-n))}return super.createReadable(e)}readUint8Array(e,t){return bo(this,e,t,_o,Co)}}class Eo extends uo{constructor(e,t){super(),So(this,e,t)}async init(){await go(this,No,To),super.init()}readUint8Array(e,t){return bo(this,e,t,No,To)}}function So(e,t,r){const{preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s,checkResourceChanges:c=!0,maximumRangeSize:l=ao,fetch:u}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(e,{url:t,options:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s,checkResourceChanges:c,maximumRangeSize:l,fetch:u})}async function go(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s}=e;if(function(e){const{baseURI:t}=ft(),{protocol:n}=new d(e,t);return"http:"==n||"https:"==n}(r)&&(i||a)&&(typeof o==we||o)){const r=await t(oo,e,Do(e,s?-65557:void 0)),o=r.headers.get("Accept-Ranges");if(!(a||o&&o.toLowerCase()==io))throw new f(Jr);{let o;s&&206==r.status&&(o=new w(await r.arrayBuffer())),zo(e,r);const i=Fo(r);i===de?await vo(e,t,n):e.size=i,o&&o.length&&xo(r)===e.size-o.length&&(e.X=o)}}else await vo(e,t,n)}async function bo(e,t,n,r,o){const{useRangeHeader:i,forceRangeRequests:a,X:s,size:c,options:l}=e;if(i||a){if(t>=c||0===n)return Ee;{if(t+n>c&&(n=c-t),s&&t>=c-s.length){const e=t-(c-s.length);return s.slice(e,e+n)}const o=await r(oo,e,Do(e,t,n));if(206!=o.status)throw new f(Jr);const i=xo(o);if(i!==de&&i!=t)throw new f(Jr);Ao(e,o),zo(e,o);const a=new w(await o.arrayBuffer());if(a.length!=n)throw new f(Jr);return a}}{const{data:r}=e;return r||await o(e,l),e.data.subarray(t,t+n)}}function xo(e){const t=e.headers.get(no);if(t){const e=o(t.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e))return e}}function Fo(e){const t=e.headers.get(no);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=o(e);if(!o.isNaN(t))return t}}}function Ro({headers:e}){return{J:e.get("Etag")||de,lastModified:e.get("Last-Modified")||de}}function zo(e,t){const{checkResourceChanges:n,$:r}=e;n&&!r&&206==t.status&&(e.$=Ro(t))}function Ao(e,t){const{checkResourceChanges:r,$:o,size:i}=e;if(r){const e=Fo(t);if(e!==de&&i!==de&&e!=i)throw new f(Qr);if(o){const e=Ro(t);if(n.entries(o).some(([t,n])=>n!==de&&e[t]!==de&&n!=e[t]))throw new f(Qr)}}}function Do(e,t=0,r=1){return n.assign({},Io(e),{[ro]:io+"="+(t<0?t:t+"-"+(t+r-1))})}function Io({options:e}){const{headers:t}=e;if(t)return k.iterator in t?n.fromEntries(t):t}async function Co(e){await ko(e,_o)}async function To(e){await ko(e,No)}async function ko(e,t){const n=await t(oo,e,Io(e));e.data=new w(await n.arrayBuffer()),e.size=e.data.length}async function vo(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,Io(e)),i=r.headers.get("Content-Length");i&&!r.headers.get("Content-Encoding")?e.size=o(i):await n(e,e.options)}}async function _o(e,{fetch:t=fetch,options:r,url:o},i){const a=await t(o,n.assign({},r,{method:e,headers:i}));if(a.status>=200&&a.status<=299)return a;throw 416==a.status?new f(Jr):new f(Xr+(a.statusText||a.status))}function No(e,{url:t},r){return new E((o,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status>=200&&a.status<=299){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),o({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new f(Jr):new f(Xr+(a.statusText||a.status)))},!1),a.addEventListener("error",e=>i(e.detail?e.detail.error:new f("Network error")),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()})}class Uo extends uo{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Eo(e,t):new yo(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 Mo extends uo{constructor(e){super(),this.ee=e}async init(){const e=this;e.te=0;const t=e.ee=await E.all(e.ee.map(Zo));e.ne=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}re(e){const{ne:t,size:n}=this,r=t[e];return r===de?n:r}async readUint8Array(e,t){const n=this,{ee:r}=this;let o,i=0,s=e;for(;r[i]&&s>=r[i].size;)s-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(s+t<=r)o=await Vo(c,s,t);else{const i=r-s;o=Et(await Vo(c,s,i),await n.readUint8Array(e+i,t-i))}}else o=Ee;return n.te=a.max(i,n.te),o}}class Oo extends lo{constructor(e,t=4294967295){super();const r=this;let o,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const s=new A({async write(t){if(t===co)return void(a&&await l());const{availableSize:n}=r;if(a)t.length>=n?(await c(t.subarray(0,n)),await l(),t.length>n&&await this.write(t.subarray(n))):await c(t);else{const{value:n,done:s}=await e.next();if(s&&!n)throw new f($r);o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await Po(o),i=n.writable,a=i.getWriter(),await this.write(t)}},async close(){a&&(await a.ready,await u())},async abort(e){a&&await a.abort(e)}});async function c(e){const t=e.length;t&&(await a.ready,await a.write(e),o.size+=t,r.availableSize-=t)}async function l(){await u(),r.diskOffset+=o.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function u(){await a.close()}n.defineProperty(r,so,{get:()=>s})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(co)}finally{e.releaseLock()}}}class Lo{constructor(e){return t.isArray(e)&&(e=new Mo(e)),(e instanceof z||typeof e.getReader==pe)&&(e={readable:In(e)}),e}}class Bo{constructor(e){e.writable===de&&typeof e.next==pe&&(e=new Oo(e)),(e instanceof A||typeof e.getWriter==pe)&&(e={writable:Tn(e)});try{e.size=e.size===de?0:e.size}catch{throw new f(to)}return e}}function Wo(e){return Boolean(e&&e.getData)}async function Po(e,t){if(!e.init||e.initialized)return E.resolve();await e.init(t)}async function Zo(e){return e=new Lo(e),await Po(e),e.size!==de&&e.readUint8Array||(e=new mo(await Cn(e.readable)),await Po(e)),e}function Vo(e,t,n){return e.readUint8Array(t,n)}function Ho(e,t){return e.createReadable?e.createReadable(t):e.readUint8Array?uo.prototype.createReadable.call(e,t):e.readable}function Go(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==de&&(r.filename=n),e.push(r)}}const jo="filename",qo="rawFilename",Yo="comment",Ko="rawComment",Xo="uncompressedSize",Jo="compressedSize",Qo="offset",$o="diskNumberStart",ei="lastModDate",ti="rawLastModDate",ni="lastAccessDate",ri="rawLastAccessDate",oi="creationDate",ii="rawCreationDate",ai="internalFileAttributes",si="externalFileAttributes",ci="msdosAttributesRaw",li="msdosAttributes",ui="msDosCompatible",di="zip64",fi="encrypted",wi="version",pi="versionMadeBy",mi="zipCrypto",hi="directory",yi="executable",Ei="compressionMethod",Si="signature",gi="extraField",bi="unixMode",xi="setuid",Fi="setgid",Ri="sticky",zi=[jo,qo,Xo,Jo,ei,ti,Yo,Ko,ni,ri,oi,ii,Qo,$o,ai,si,ci,li,ui,di,fi,wi,pi,mi,hi,yi,"symlink",Ei,Si,"crc32",gi,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",bi,"unixExternalUpper",xi,Fi,Ri,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class Ai{constructor(e){zi.forEach(t=>this[t]=e[t])}}const Di=new l([1,J,10,Q,28789,25461,$,ee,te,22613,13]);function Ii(e,t,n){return e?t?12:16+4*n:0}const Ci="File format is not recognized",Ti="End of central directory not found",ki="End of Zip64 central directory locator not found",vi="Central directory header not found",_i="Local file header not found",Ni="Zip64 extra field not found",Ui="File contains encrypted entry",Mi="Encryption method not supported",Oi="Split zip file",Li="Overlapping entry found",Bi="Entry data out of bounds",Wi="Ambiguous archive",Pi="Encrypted central directory is not supported",Zi="Unsafe filename",Vi="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",Hi="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Gi="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",ji="64-bit value exceeds Number.MAX_SAFE_INTEGER",qi="unsorted central directory",Yi="unknown version needed to extract",Ki="compressed patched data",Xi="malformed extra field",Ji="unknown zip64 extensible data",Qi="wrapped entries count",$i="appended data",ea="prepended data",ta="prepended central directory",na="trailing central directory data",ra="duplicate filename",oa="mismatched zip64 end of central directory record",ia="multiple end of central directory records",aa="mismatched local file header (filename)",sa="mismatched local file header (general purpose bit flag)",ca="mismatched local file header (compression method)",la="mismatched local file header (crc32 or sizes)",ua=/^[a-zA-Z]:/,da="utf-8",fa="cp437",wa=[[Xo,M],[Jo,M],[Qo,M],[$o,O]],pa={[O]:{oe:Xa,bytes:4},[M]:{oe:Ja,bytes:8}},ma=i(o.MAX_SAFE_INTEGER);class ha{constructor(e,t={}){n.assign(this,{reader:new Lo(e),options:t,ie:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await Po(r),r.size!==de&&r.readUint8Array||(r=new mo(await Cn(r.readable)),await Po(r)),r.size<Y)throw new f(Ci);const o=t.warnings=[],i=_a(e,t.options),s=i==Oe,c=i!=Be,u=Ma(Ha(t,e,_e),i),d=function(e,t){if(e===de)return t;if(!va(e))throw new f(Hi);return e}(Ha(t,e,"filenameValidation"),i),w=Ha(t,e,"normalizeFilename"),{ae:p,se:m}=await Oa(r,c,u);if(!p)throw await async function(e){return await ka(e)==W}(r)?new f(Oi):new f(Ti);c&&m>1&&Va(ia);const h=gt(p);let y=Xa(h,12),E=Xa(h,16);const S=p.offset,g=Ka(h,20),b=S+Y+g,x=r.size-b;x>u&&Va($i),x>0&&Go(o,$i);let F=Ka(h,4);const z=r.te||0;let A,D,I,C,T,k=Ka(h,6),v=Ka(h,10),_=0,N=X;const U=E==M||y==M||v==O||k==O;if(E!=M&&k!=O&&(E+=Ta(r,k)),U){const e=p.offset>=K?await Vo(r,p.offset-K,K):Ee,t=gt(e);if(e.length==K&&Xa(t,0)==j){E=Ta(r,Xa(t,4))+Ja(t,8);let e=await Vo(r,E,X),i=gt(e);const c=p.offset-K-X;if((e.length<X||Xa(i,0)!=G)&&E!=c&&c>=0){const t=E;E=c,E>t&&(_=E-t),e=await Vo(r,E,X),i=gt(e)}if(e.length<X||Xa(i,0)!=G)throw new f(ki);if(I=!0,C=Ja(i,4)>44,C){const e=a.min(Ja(i,4)-44,r.size-E-X);e>0&&(N+=e,T=function(e){const t={rawExtensibleData:e};if(e.length>=28){const r=gt(e),o=Ka(r,26);n.assign(t,{compressionMethod:Ka(r,0),compressedSize:Ja(r,2),uncompressedSize:Ja(r,10),encryptionAlgorithm:Ka(r,18),bitLength:Ka(r,20),flags:Ka(r,22),hashAlgorithm:Ka(r,24),hashData:e.subarray(28,28+o)})}return t}(await Vo(r,E+X,e)))}F==O?F=Xa(i,16):F!=Xa(i,16)&&Za(s,o,oa),k==O?k=Xa(i,20):k!=Xa(i,20)&&Za(s,o,oa),v==O?v=Ja(i,32):v!=Ja(i,32)&&Za(s,o,oa),y==M?y=Ja(i,40):y!=Ja(i,40)&&Za(s,o,oa),E=Ta(r,k)+Ja(i,48)+_}}let B=y;const P=p.offset-(I?N+K:0);if(E>=r.size&&(_=r.size-E-y-Y,E=r.size-y-Y),z!=F)throw new f(Oi);if(E<0)throw new f(Ci);let Z=0,H=await Vo(r,E,y),J=gt(H);if(y){if(H.length<4)throw new f(Ci);const e=P-y;if(E!=e&&k==F){const t=Xa(J,Z)==V||Boolean(T&&T.compressedSize)||ga(J);let n=!t;if(!n&&e>=0&&e+4<=r.size&&(n=Xa(gt(await Vo(r,e,4)),0)==V),n){const n=E;E=e,E>n&&(_+=E-n,A=t),H=await Vo(r,E,y),J=gt(H)}}}const Q=P-E;if(y!=Q&&Q>=0&&k==F&&(y=Q,H=await Vo(r,E,y),J=gt(H)),E<0||E>=r.size)throw new f(Ci);t.directoryOffset=E,t.directoryLength=B;const $=Ga(t,e,"decryptCentralDirectory");let ee,te;if($&&v&&H.length>=4&&Xa(J,0)!=V&&(C||ga(J))){const e=function(e,t,n){const r=e&&e.compressedSize?e.compressedSize:t;return r>0&&r<=n?r:n}(T,B,H.length);te=H.subarray(e),H=await $(H.subarray(0,e),T),J=gt(H),B=H.length,ee=!0}T&&!ee&&(H.length<4||Xa(J,0)==V)&&Go(o,Ji),D=E;const ne=Ha(t,e,"filenameEncoding"),ce=Ha(t,e,"commentEncoding"),le=new l;let ue,fe=-1;const we=!s&&!I;!v&&we&&(v=ba(J,H,Z),v&&Go(o,Qi));for(let i=0;i<v;i++){const s=new Sa(r,t.options);if(Z+q>H.length||Xa(J,Z)!=V){if(0==i&&!ee&&(C||ga(J)))throw new f(Pi);throw new f(vi)}Fa(s,J,Z+6);const c=Boolean(s.bitFlag.languageEncodingFlag),l=Z+q,u=l+s.filenameLength,p=u+s.extraFieldLength,m=Ka(J,Z+4),h=!(m>>8),y=m>>8==3,E=H.subarray(l,u),S=Ka(J,Z+32),g=p+S,b=H.subarray(p,g),x=c,F=c,z=Xa(J,Z+38),A=z&L,I={readOnly:Boolean(1&A),hidden:Boolean(2&A),system:Boolean(4&A),directory:Boolean(16&A),archive:Boolean(32&A)},T=Xa(J,Z+42),k=Ga(t,e,"decodeText")||Yr,N=x?da:ne||fa,U=F?da:ce||fa;let M=k(E,N,Ue);if(M===de&&(M=Yr(E,N)),w){const e=w(M);e!==de&&(M=e)}if(Ua(M,d)){const e=new f(Zi);throw e.filename=M,e}let B=k(b,U,Me);B===de&&(B=Yr(b,U)),n.assign(s,{index:i,ce:ee,versionMadeBy:m,msDosCompatible:h,zip64:!1,compressedSize:0,uncompressedSize:0,le:S,offset:T,diskNumberStart:Ka(J,Z+34),internalFileAttributes:Ka(J,Z+36),externalFileAttributes:z,msdosAttributesRaw:A,msdosAttributes:I,rawFilename:E,filenameUTF8:x,commentUTF8:F,rawExtraField:H.subarray(u,p),rawComment:b,filename:M,comment:B}),Ra(s,s,J,Z+6)&&Go(o,Xi,M),s.offset+=_;const W=Ta(r,s.diskNumberStart)+s.offset;D=a.min(W,D),W<fe&&Go(o,qi,M),fe=W,(s.version&L)>63&&Go(o,Yi,M),32&~s.rawBitFlag||Go(o,Ki,M),le.has(s.filename)&&(ue=!0),le.add(s.filename);const P=s.externalFileAttributes>>16&O;s.unixMode===de&&16877&P&&(s.unixMode=P);const G=Boolean(s.unixMode&ie),j=Boolean(s.unixMode&ae),Y=Boolean(512&s.unixMode),K=40960==((s.unixMode===de?P:s.unixMode)&re),X=!K&&(s.unixMode!==de?!!(73&s.unixMode):y&&!!(73&P)),Q=s.unixMode!==de&&(s.unixMode&re)==oe,$=(P&re)==oe;n.assign(s,{setuid:G,setgid:j,sticky:Y,symlink:K,unixExternalUpper:P,executable:X,directory:Q||$||h&&I.directory||s.filename.endsWith(se),zipCrypto:s.encrypted&&!s.extraFieldAES});const te=new Ai(s);if(te.getData=(e,n)=>s.getData(e,te,t.ie,n),te.arrayBuffer=async e=>{const r=new R,o=Cn(r.readable).then(e=>e.arrayBuffer());return o.catch(()=>{}),await s.getData(r,te,t.ie,n.assign({},e,{preventClose:!1})),o},Z=g,i==v-1&&we){const e=ba(J,H,Z);e&&(v+=e,Go(o,Qi))}const{onprogress:pe}=e;if(pe)try{await pe(i+1,v,new Ai(s))}catch{}yield te}let pe=Z,me=xa(H.subarray(Z))||(ee?xa(te):de);if(!me&&!ee){const e=E+Z,t=a.min(P-e,65541);t>=6&&(me=xa(await Vo(r,e,t)))}me&&(t.digitalSignature=me,pe=Z+6+me.length),(Z!=B&&pe!=B||!ee&&Z!=y&&pe!=y)&&Za(s,o,na),ue&&Za(s,o,ra);const he=Ha(t,e,"extractPrependedData"),ye=Ha(t,e,"extractAppendedData"),Se=(s||he)&&v&&4==D&&await async function(e){const t=await ka(e);return t==W||808471376==t}(r)?4:0;return s&&(_||v&&D>Se)&&Va(ea),(_||v&&D>4)&&Go(o,ea),A&&Go(o,ta),he&&(t.prependedData=D>Se?await Vo(r,Se,D-Se):Ee),t.comment=g?await Vo(r,S+Y,g):Ee,ye&&(t.appendedData=b<r.size?await Vo(r,b,r.size-b):Ee),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){const{reader:e}=this;e.readUint8Array||!e.readable||e.readable.locked||await e.readable.cancel()}[Se](){return this.close()}}class ya{constructor(e={}){let r;const{readable:o,writable:i}=new R({start(e){r=e}}),a=new ha(o,e),s=a.getEntriesGenerator(),c=new l;this.readable=new z({async pull(e){const{done:t,value:r}=await s.next();if(t)return e.close();const o=function(e,t){const{readable:n,writable:r}=new R;let o;const i={cancel:async e=>{t.delete(i),await(o?o.cancel(e):n.cancel(e))}};return i.readable=new z({async pull(a){o||(o=n.getReader(),t.add(i),async function(){try{await e.getData(r,{preventClose:!1})}catch(e){try{await r.abort(e)}catch{}}finally{t.delete(i)}}());const{done:s,value:c}=await o.read();s?a.close():a.enqueue(c)},cancel:e=>i.cancel(e)},{highWaterMark:0}),i}(r,c),i={...r,readable:o.readable};delete i.getData,n.defineProperties(i,{localDirectory:{get:()=>r.localDirectory,enumerable:!0},warnings:{get:()=>r.warnings,enumerable:!0}}),e.enqueue(i)},async cancel(e){const n=t.from(c);c.clear(),r.error(e),await E.allSettled(n.map(t=>t.cancel(e))),await E.allSettled([s.return(),a.close()])}}),this.writable=i}}async function Ea(e,t={}){if(e=new Lo(e),await Po(e),e.size!==de&&e.readUint8Array||(e=new mo(await Cn(e.readable)),await Po(e)),e.size<Y)return!1;const n=_a(t,{}),r=n!=Be,o=Ma(t[_e],n),{ae:i,se:a}=await Oa(e,r,o);if(!i||n==Oe&&a>1)return!1;const s=Ka(gt(i),20),c=i.offset+Y+s;return e.size-c<=o}class Sa{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,r,o={}){const i=this,s=ft(),{reader:c,index:l,offset:u,diskNumberStart:d,extraFieldAES:w,extraFieldZip64:p,compressionMethod:m,bitFlag:h,rawBitFlag:y,crc32:E,rawLastModDate:S,uncompressedSize:g,compressedSize:b}=i,{dataDescriptor:x}=h,F=t.localDirectory={},R=t.warnings=[],z=Ta(c,d)+u,D=await Vo(c,z,ce),I=gt(D);let C=Ha(i,o,ge),T=Ha(i,o,be);const k=Xe(Ha(i,o,xe)),v=Boolean(k),_=!0===k;if(Ke(C,T),C=C&&C.length&&C,T=T&&T.length&&T,w&&99!=w.originalCompressionMethod)throw new f(Nn);if(D.length<ce||Xa(I,0)!=B)throw new f(_i);Fa(F,I,4);const{extraFieldLength:N,filenameLength:U}=F,M=F.dataOffset=z+ce+U+N,O=Ha(i,o,"checkLocalDirectory"),W=_a(o,i.options),Z=function(e,t){return e===de?t!=Be:Boolean(e)}(O,W),V=Ha(i,o,"checkLocalFilename"),H=function(e,t){return e===de?t==Oe:Boolean(e)}(V===de?O:V,W);let G=Ee;if(H&&(U||N)){const e=await Vo(c,z+ce,U+N);G=e.subarray(0,U),F.rawExtraField=e.subarray(U)}else F.rawExtraField=N?await Vo(c,z+ce+U,N):Ee;H&&(F.rawFilename=G),Ra(i,F,I,4,!0)&&Go(R,Xi),function(e,t,n,r,o){const{rawFilename:i}=e,a=!o,s=e.ce&&!(8192&~t.rawBitFlag);!r||s||n.length==i.length&&!n.some((e,t)=>e!=i[t])||Za(a,o,aa),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&Za(a,o,sa),t.compressionMethod!=e.compressionMethod&&Za(a,o,ca),t.bitFlag.dataDescriptor||s||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||Za(a,o,la)}(i,F,G,H,Z?de:R);const{lastAccessDate:j,creationDate:q,uid:Y,gid:K}=F;j&&(t.lastAccessDate=j),q&&(t.creationDate=q),Y!==de&&t.uid===de&&(t.uid=Y),K!==de&&t.gid===de&&(t.gid=K);const X=Ha(i,o,"checkPasswordOnly"),J=i.encrypted&&F.encrypted&&(!_||X),Q=J&&!w;if(_||(t.zipCrypto=Q),J&&!(64&~F.rawBitFlag))throw new f(Mi);const $=v?de:Ln(m);if(0!=m&&8!=m&&9!=m&&!$&&!v)throw new f(Nn);if(J){if(!Q&&(w.strength<1||w.strength>3))throw new f(Mi);if(!C&&!T)throw new f(Ui)}if(M+b>c.size)throw new f(Bi);const ee=b,te=In(c.createReadable({offset:M,size:ee})),ne=qe(Ha(i,o,Fe));Ye(ne);let re=Ha(i,o,"checkOverlappingEntry");const oe=Ha(i,o,"checkOverlappingEntryOnly");oe&&(re=!0);const{onstart:ie,onprogress:ae,onend:se}=o,le=0!=m&&!v,ue=v?b-Ii(J,Q,w&&w.strength):g,fe=9==m;let we=Ha(i,o,ze);fe&&(we=!1);const pe=Ha(i,o,"checkCrc32"),me=(pe===de?Ha(i,o,"checkSignature"):pe)&&!v&&(!J||Q||w&&1==w.vendorVersion),he={options:{codecType:cr,password:C,rawPassword:T,zipCrypto:Q,encryptionStrength:w&&w.strength,checkCrc32:me,checkAuthenticationCode:Ha(i,o,"checkAuthenticationCode"),passwordVerification:Q&&(x?S>>>8&L:E>>>24&L),outputSize:ue,crc32:E,compressed:le,encrypted:J,useWebWorkers:Ha(i,o,Re),useCompressionStream:we,transferStreams:Ha(i,o,Ae),deflate64:fe,format:$?$.format:de,codecURI:$?$.codecURI:de,compressionMethod:m,rawBitFlag:y,checkPasswordOnly:X},config:s,R:{signal:ne,size:ee,onstart:ie,onprogress:ae,onend:se}};let ye,Se,Ie;re&&await async function({reader:e,ue:t,index:n,offset:r,crc32:o,compressedSize:i,uncompressedSize:a,dataOffset:s,dataDescriptor:c,extraFieldZip64:l,ie:u}){let d=0;if(c&&(d=l?20:12),d){const n=await Vo(e,s+i,d+4),r=gt(n);let c=n.length==d+4&&Xa(r,0)==P;if(c){const e=Ca(r,4,l);(t.encrypted&&!t.zipCrypto||e.crc32==o)&&e.compressedSize==i&&e.uncompressedSize==a?d+=4:c=!1}if(n.length>=d){const e=Ca(r,c?4:0,l);e.signature=c,t.localDirectory.dataDescriptor=e}}const w={start:r,end:s+i+d,ue:t};for(const[e,t]of u)if(e!=n&&w.start<t.end&&t.start<w.end){const e=new f(Li);throw e.overlappingEntry=t.ue,e}u.set(n,w)}({reader:c,ue:t,index:l,offset:z,crc32:E,compressedSize:b,uncompressedSize:g,dataOffset:M,dataDescriptor:x||F.bitFlag.dataDescriptor,extraFieldZip64:p||F.extraFieldZip64,ie:r});try{if(!oe){X&&(e=new A),e=new Bo(e),await Po(e,function(e,t,n){return a.min(e,n?1032*t:t)}(ue,b,le)),({writable:ye}=e);const{outputSize:t}=await Pr({readable:te,writable:ye},he);if(t!=ue)throw n.assign(new f(Zn),{outputSize:t});e.size+=t}}catch(t){const{outputSize:n}=he;if(n!==de?e.size+=n:bt(t)&&t.outputSize!==de&&(e.size+=t.outputSize),!X||!bt(t)||t.message!=Jt)throw Se=t,Ie=!0,t}finally{if((Wo(e)||!Ha(i,o,De))&&ye&&!ye.locked){const e=ye.getWriter();if(Ie)try{await e.abort(Se)}catch{}else await e.close()}}return X||oe?de:e.getData?e.getData():ye}}function ga(e){const t=a.min(e.byteLength,1024)-3;for(let n=0;n<t;n++)if(134630224==Xa(e,n))return!0;return!1}function ba(e,t,n){let r=0;for(;n+q<=t.length&&Xa(e,n)==V;)n+=q+Ka(e,n+28)+Ka(e,n+30)+Ka(e,n+32),r++;return r%65536?0:r}function xa(e){if(e.length>=6){const t=gt(e);if(Xa(t,0)==Z){const n=Ka(t,4);if(6+n<=e.length)return e.subarray(6,6+n)}}}function Fa(e,t,r){const o=e.rawBitFlag=Ka(t,r+2),i=!(1&~o),a=Xa(t,r+6);n.assign(e,{encrypted:i,version:Ka(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&ne)==ne},rawLastModDate:a,lastModDate:ja(a),filenameLength:Ka(t,r+22),extraFieldLength:Ka(t,r+24)})}function Ra(e,t,r,o,i){const{rawExtraField:a}=t,l=t.extraField=new c,u=gt(a);let d=0,w=!1;try{for(;d<a.length;){const e=Ka(u,d),t=Ka(u,d+2);l.set(e,{type:e,data:a.slice(d+4,d+4+t)}),d+=4+t}}catch{w=!0}d>a.length&&(w=!0);const p=Ka(r,o+4);n.assign(t,{signature:Xa(r,o+10),crc32:Xa(r,o+10),compressedSize:Xa(r,o+14),uncompressedSize:Xa(r,o+18)});const m=l.get(1);m&&(function(e,t){t.zip64=!0;const n=gt(e.data),r=wa.filter(([e,n])=>t[e]==n),o=r.reduce((e,[,t])=>e+pa[t].bytes,0);if(e.data.length<o)throw new f(Ni);for(let o=0,i=0;o<r.length;o++){const[a,s]=r[o],c=pa[s];t[a]=e[a]=c.oe(n,i),i+=c.bytes}}(m,t),t.extraFieldZip64=m);const h=l.get(28789);h&&(za(h,jo,qo,t,e),t.extraFieldUnicodePath=h);const y=l.get(25461);y&&(za(y,Yo,Ko,t,e),t.extraFieldUnicodeComment=y);const E=l.get(J);E&&E.data.length>=7?(function(e,t,r){const o=gt(e.data),i=Ya(o,4);n.assign(e,{vendorVersion:Ya(o,0),vendorId:Ya(o,2),strength:i,originalCompressionMethod:r,compressionMethod:Ka(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=de)}(E,t,p),t.extraFieldAES=E):t.compressionMethod=p;const S=l.get(13);S&&(Aa(S,t),t.extraFieldPkwareUnix=S);const g=l.get(22613);g&&(Aa(g,t),t.extraFieldUnixType1=g);const b=l.get(10);b&&(function(e,t){const r=gt(e.data);let o,i=4;try{for(;i<e.data.length&&!o;){const t=Ka(r,i),n=Ka(r,i+2);1==t&&(o=e.data.slice(i+4,i+4+n)),i+=4+n}}catch{}if(o&&24==o.length){const r=gt(o),i=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),s=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:i,rawLastAccessDate:a,rawCreationDate:s});const c={lastModDate:qa(i),lastAccessDate:qa(a),creationDate:qa(s)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:a,rawCreationDate:s})}}(b,t),t.extraFieldNTFS=b);const x=l.get(te);let F;if(x&&(F=Da(x,t,!1),t.extraFieldUnix=x),!F){const e=l.get(ee);e&&(Da(e,t,!0),t.extraFieldInfoZip=e)}const R=l.get(Q);R&&(function(e,t,n){if(!e.data.length)return;const r=gt(e.data),o=Ya(r,0),i=[],a=[];n?(1&~o||(i.push(ei),a.push(ti)),2&~o||(i.push(ni),a.push(ri)),4&~o||(i.push(oi),a.push(ii))):e.data.length>=5&&(i.push(ei),a.push(ti));let c=1;i.forEach((n,o)=>{if(e.data.length>=c+4){const i=Xa(r,c);t[n]=e[n]=new s(1e3*(0|i));const l=a[o];e[l]=i}c+=4})}(R,t,i),t.extraFieldExtendedTimestamp=R);const z=l.get($);return z&&(t.extraFieldUSDZ=z),w}function za(e,t,r,o,i){if(e.data.length<5)return void(e.valid=!1);const a=gt(e.data),s=new kt;s.append(i[r]);const c=gt(new w(4));c.setUint32(0,s.get(),!0);const l=Xa(a,1),u=Ya(a,0);n.assign(e,{version:u,[t]:Yr(e.data.subarray(5)),valid:1==u&&!i.bitFlag.languageEncodingFlag&&l==Xa(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function Aa(e,t){if(e.data.length<8)return;const r=gt(e.data),o={lastAccessDate:new s(1e3*(0|Xa(r,0))),lastModDate:new s(1e3*(0|Xa(r,4)))};e.data.length>=12&&(o.uid=Ka(r,8),o.gid=Ka(r,10)),n.assign(e,o),n.assign(t,o)}function Da(e,t,r){try{const o=gt(e.data);let i,a;if(r){let t=0;const r=Ya(o,t++),s=Ya(o,t++);i=Ia(e.data.subarray(t,t+s)),t+=s;const c=Ya(o,t++);a=Ia(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:i,gid:a})}else e.data.length>=4&&(i=Ka(o,0),a=Ka(o,2),n.assign(e,{uid:i,gid:a}));return i!==de&&(t.uid=i),a!==de&&(t.gid=a),i!==de||a!==de}catch{}}function Ia(e){const t=new w(4);return t.set(e,0),new h(t.buffer,t.byteOffset,4).getUint32(0,!0)}function Ca(e,t,n){const r=Xa(e,t);let o,i;return n?(o=Ja(e,t+4),i=Ja(e,t+12)):(o=Xa(e,t+4),i=Xa(e,t+8)),{crc32:r,compressedSize:o,uncompressedSize:i}}function Ta(e,t){return e.re?e.re(t):0}async function ka(e){return Xa(gt(await Vo(e,0,4)))}function va(e){return e===Oe||e===Le||e===Be}function _a(e,t){return Na(e,Na(t,Le))}function Na(e,t){const n=e.strictness;if(n!==de){if(!va(n))throw new f(Vi);return n}const r=e.checkAmbiguity;return r===de?t:r?Oe:t==Be?Be:Le}function Ua(e,t){if(t==Be)return!1;const n=e.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(n.includes("..")||e.startsWith("/")||e.startsWith("\\\\")||ua.test(e))||t==Oe&&(n.includes(".")||n.includes(""))}function Ma(e,t){if(e!==de){const t=$e(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new f(Gi);return t}return t==Oe?0:t==Be?1/0:O}async function Oa(e,t,n){const{size:r}=e,o=a.min(r,65557),i={count:64};let s,c,l=0;for await(const[n,a,u,d,f]of La(e,o)){const o=Ka(n,d+20);if(f+Y+o==r){const o=await Wa(e,n,a,d,f,r,i);if(2==o){if(s||(s=Ba(u,d,f)),l++,!t||l>1)break}else 1!=o||c||(c=Ba(u,d,f))}}return s||(s=c),s||(s=await async function(e,t,n){const{size:r}=e,o=a.min(r,t==1/0?r:65557+t);let i,s;for await(const[t,a,c,l,u]of La(e,o)){const o=Ba(c,l,u);i||(i=o);const d=await Wa(e,t,a,l,u,r,n);if(2==d)return o;1!=d||s||(s=o)}return s||i}(e,n,i)),{ae:s,se:l}}async function*La(e,t){const n=e.size-t,r=await Vo(e,n,t),o=gt(r);for(let e=r.length-Y;e>=0;e--)Xa(o,e)==H&&(yield[o,n,r,e,n+e])}function Ba(e,t,n){return{offset:n,buffer:e.slice(t,t+Y).buffer}}async function Wa(e,t,n,r,o,i,a){const s=Ka(t,r+10),c=Xa(t,r+12),l=Xa(t,r+16);if(s==O||c==M||l==M)return await Pa(e,t,n,o-K,i,a)==j?2:0;if(!s&&!c)return 1;const u=Ka(t,r+6);for(const r of[o-c,Ta(e,u)+l])if(await Pa(e,t,n,r,i,a)==V)return 2;return 0}async function Pa(e,t,n,r,o,i){return r<0||r+4>o?de:r>=n?Xa(t,r-n):i.count>0?(i.count--,Xa(gt(await Vo(e,r,4)),0)):de}function Za(e,t,n){e?Va(n):Go(t,n)}function Va(e){const t=new f(Wi);throw t.reason=e,t}function Ha(e,t,n){return t[n]===de?e.options[n]:t[n]}function Ga(e,t,n){return je(Ha(e,t,n))}function ja(e){const t=(4294901760&e)>>16,n=e&O,r=new s(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<ue?ue:r}function qa(e){return new s(o(e/i(1e4)-i(116444736e5)))}function Ya(e,t){return e.getUint8(t)}function Ka(e,t){return e.getUint16(t,!0)}function Xa(e,t){return e.getUint32(t,!0)}function Ja(e,t){const n=e.getBigUint64(t,!0);if(n>ma)throw new f(ji);return o(n)}var Qa=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Wi,ERR_BAD_FORMAT:Ci,ERR_CENTRAL_DIRECTORY_NOT_FOUND:vi,ERR_ENCRYPTED:Ui,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Pi,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Bi,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:ki,ERR_EOCDR_NOT_FOUND:Ti,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Ni,ERR_INVALID_AUTHENTICATION_CODE:Xt,ERR_INVALID_COMPRESSED_DATA:Vn,ERR_INVALID_CRC32:Hn,ERR_INVALID_FILENAME_VALIDATION:Hi,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Gi,ERR_INVALID_PASSWORD:Kt,ERR_INVALID_STRICTNESS:Vi,ERR_INVALID_UNCOMPRESSED_SIZE:Zn,ERR_LOCAL_FILE_HEADER_NOT_FOUND:_i,ERR_OVERLAPPING_ENTRY:Li,ERR_SPLIT_ZIP_FILE:Oi,ERR_UNSAFE_FILENAME:Zi,ERR_UNSUPPORTED_COMPRESSION:Nn,ERR_UNSUPPORTED_ENCRYPTION:Mi,ERR_UNSUPPORTED_UINT64:ji,ERR_WORKER_STARTUP_TIMEOUT:dr,WARNING_APPENDED_DATA:$i,WARNING_COMPRESSED_PATCHED_DATA:Ki,WARNING_DUPLICATE_FILENAME:ra,WARNING_MALFORMED_EXTRA_FIELD:Xi,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:sa,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:ca,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:la,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:aa,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:oa,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:ia,WARNING_PREPENDED_CENTRAL_DIRECTORY:ta,WARNING_PREPENDED_DATA:ea,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:na,WARNING_UNKNOWN_VERSION:Yi,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Ji,WARNING_UNSORTED_CENTRAL_DIRECTORY:qi,WARNING_WRAPPED_ENTRIES_COUNT:Qi,ZipReader:ha,ZipReaderStream:ya,isZipFile:Ea});const $a="File already exists",es="Zip file comment exceeds 64KB",ts="Invalid zip file comment (must be a Uint8Array)",ns="File entry comment exceeds 64KB",rs="Invalid file entry comment (must be a string)",os="Invalid date (must be a valid Date instance)",is="File entry name exceeds 64KB",as="Version exceeds 65535",ss="The strength must equal 1, 2, or 3",cs="Encryption is not supported in USDZ files",ls="Split zip files are not supported in USDZ files",us="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",ds="Invalid extra field (must be a Map)",fs="Invalid extra field type (must be integer 0..65535)",ws="Invalid extra field data (must be a Uint8Array)",ps="Extra field data exceeds 64KB",ms=-2147483648,hs=2147483647,ys=i(0),Es=i("0x7fffffffffffffff"),Ss="Zip64 is not supported (set the 'zip64' option to 'true')",gs="Undefined uncompressed size",bs="Undefined compression method",xs="Undefined CRC32",Fs="Undefined reader",Rs="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",zs="Zip file not empty",As="Invalid uid (must be integer 0..2^32-1)",Ds="Invalid gid (must be integer 0..2^32-1)",Is="Invalid UNIX mode (must be integer 0..65535)",Cs="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Ts="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",ks="Invalid msdosAttributesRaw (must be integer 0..255)",vs="Invalid msdosAttributes (must be an object with boolean flags)",_s="Invalid level (must be integer 0..9)",Ns="Signature data exceeds 64KB",Us="Invalid entry option (must be an entry returned by ZipReader#getEntries())",Ms="The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set",Os="compression unavailable",Ls="clamped last modification date",Bs=new w([7,0,2,0,65,69,3,0,0]),Ws="infozip",Ps="unix",Zs=[8,9,5,3];let Vs=0;const Hs=[];class Gs{constructor(e,t={}){e=new Bo(e);const{availableSize:r=fe,maxSize:o=fe}=e,i=r>0&&r!==fe&&o>0&&o!==fe;if(i&&t[ve])throw new f(ls);n.assign(this,{writer:e,de:i,options:t,fe:new c,we:new l,offset:t[ke]===de?e.size||e.writable.size||0:t[ke],pe:t[ke]===de?0:t[ke]-(e.size||e.writable.size||0),me:new l,he:[],warnings:[],ye:0,Ee:0,Se:de,ge:!1})}prependZip(e){return Ys(this,async function(e,t){if(e.we.size)throw new f(zs);await e.be(t)}(this,e))}appendZip(e){return Ys(this,this.be(e))}async be(e){const r=this,{me:o,we:i,fe:a}=r;for(;o.size;)await E.allSettled(t.from(o));let s;const l=new E(e=>s=e);o.add(l);const u=[];let d;try{e=new Lo(e),await Po(e),e.size!==de&&e.readUint8Array||(e=new mo(await Cn(e.readable)),await Po(e));const{ZipReader:o}=await E.resolve().then(function(){return Qa}),s=new o(e),l=await s.getEntries();await s.close(),await Po(r.writer);const{directoryOffset:w}=s;l.forEach(({filename:e})=>{if(i.has(e))throw new f($a);i.add(e),u.push(e)}),r.xe=!0;const{Fe:p}=r;r.Fe=new E(e=>d=()=>{r.xe=!1,e()}),await p,r.de&&(delete r.de,await async function(e){return gt(await Vo(e,0,4)).getUint32(0,!0)==W}(e)||(await dc(r.writer,lc()),r.offset+=4));const m=await async function(e,n,r,o){const{writer:i}=e,a=new c;if(i.closeDisk){const s=t.from(r).sort((e,t)=>cc(n,e)-cc(n,t));let c=0;for(const t of s){const r=cc(n,t);await ac(e,n,c,r-c),rc(i,await sc(n,r))&&await i.closeDisk(),a.set(t,{offset:oc(e,i),diskNumberStart:tc(i)}),c=r}await ac(e,n,c,o-c)}else{const t=e.offset;await ac(e,n,0,o),r.forEach(e=>a.set(e,{offset:t+cc(n,e),diskNumberStart:0}))}return a}(r,e,l,w);l.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,bitFlag:i,encrypted:s,uncompressedSize:c,compressedSize:l,extraFieldZip64:u}=e;let{compressionMethod:d,rawExtraField:f}=e;const{level:w,languageEncodingFlag:p,dataDescriptor:h}=i;f=ic(f||Ee),e.extraFieldAES&&(d=99);const y=Dc(f),E=Boolean(u)&&u.uncompressedSize!==de,S=Boolean(u)&&u.compressedSize!==de,g=-7&Tc(w,p,h,s,d)|w<<1,{Re:b,ze:x}=Ic({version:t,bitFlag:g,compressionMethod:d,uncompressedSize:c,compressedSize:l,rawLastModDate:r,rawFilename:o,Ae:S,De:E,extraFieldLength:y}),{crc32:F}=e;F!==de&&Rc(x,10,F);const{offset:R,diskNumberStart:z}=m.get(e);n.assign(e,{Ie:!0,De:E,Ae:S,offset:R,diskNumberStart:z,Ce:!1,Te:Ee,ke:Ee,ve:Ee,_e:Ee,Ne:Ee,rawExtraField:f,Ue:Ee,Re:b,ze:x}),a.set(e.filename,e)})}catch(e){throw u.forEach(e=>i.delete(e)),e}finally{s(),o.delete(l),d&&d()}}add(e="",r,l={}){const u=this,{me:d}=u,p=async function(e,r,l,u){const d=(u=n.assign({},u))[Ne];if(d!==de){const{Me:r,Oe:o}=function(e,r,o){if(null===e||typeof e!=me||t.isArray(e))throw new f(Us);const{externalFileAttributes:i,versionMadeBy:l,comment:u,lastModDate:d,rawLastModDate:w,creationDate:p,lastAccessDate:m,uncompressedSize:h,encrypted:y,zipCrypto:E,crc32:S,compressionMethod:g,extraFieldAES:b,extraFieldUnix:x,internalFileAttributes:F,extraField:R,bitFlag:z,directory:A,uid:D,gid:I}=e,C={externalFileAttributes:i,versionMadeBy:l,comment:u,lastModDate:d,creationDate:p,lastAccessDate:m,internalFileAttributes:F,directory:A};z&&z.languageEncodingFlag&&(C[Ce]=!0);const T=function(e){if(e){const t=new c;if(e.forEach((e,n)=>{Di.has(n)||t.set(n,e.data)}),t.size)return t}}(R);T&&(C[gi]=T),D===de&&I===de||n.assign(C,{uid:D,gid:I,unixExtraFieldType:x?Ps:Ws});const k={};if(r&&!A)if(n.assign(k,{uncompressedSize:h,crc32:S,compressionMethod:g}),r!==We&&n.assign(k,{encrypted:y,zipCrypto:E,encryptionStrength:b?b.strength:de}),z&&(k.dataDescriptor=z.dataDescriptor,k[Ie]=Zs[z.level]),o===de)k.rawLastModDate=w;else if(r!==We&&E&&(!z||z.dataDescriptor)&&o instanceof s&&function(e){let t=new s(2e3*a.ceil(a.floor(e.getTime()/1e3)/2));return t<ue?t=ue:t>le&&(t=le),(t.getHours()<<3|t.getMinutes()>>3)&L}(o)!=(w>>>8&L))throw new f(Ms);return{Me:C,Oe:k}}(d,Xe(hc(e,u,xe)),hc(e,u,ei));delete u[Ne],u=n.assign(r,o,u)}if(hc(e,u,hi)&&!r.endsWith(se)&&(r+=se),e.we.has(r))throw new f($a);e.we.add(r),Vs<ft().maxWorkers?Vs++:await new E(e=>Hs.push(e));try{return await async function(e,r,c,l){const u=function(e,n,r){let o=hc(e,r,ui),i=hc(e,r,pi,o?20:768);const a=hc(e,r,yi),s=Sc(e,r,"uid"),c=Sc(e,r,"gid");let l=Sc(e,r,bi),u=hc(e,r,"unixExtraFieldType"),d=hc(e,r,xi),w=hc(e,r,Fi),p=hc(e,r,Ri);if(Qe(s,M,As),Qe(c,M,Ds),Qe(l,O,Is),u!==de&&u!==Ws&&u!==Ps)throw new f(Cs);if(u===Ps&&(s!==de&&s>O||c!==de&&c>O))throw new f(Ts);u!==de||s===de&&c===de||(u=Ws);let m=Sc(e,r,ci),h=hc(e,r,li);const y=m!==de||h!==de;if(s!==de||c!==de||l!==de||u||a?(o=!1,i=i&L|768):y&&(o=!0,i&=L),Qe(m,L,ks),h&&(typeof h!==me||t.isArray(h)))throw new f(vs);if(i>O)throw new f(as);let E=hc(e,r,si);const S=E!==de;S||(E=0),!r[hi]&&n.endsWith(se)&&(r[hi]=!0);const g=hc(e,r,hi);if(g?(n.endsWith(se)||(n+=se),S||(E=16,o||(E|=16877<<16))):o||S||(E=a?493<<16:27525120),!o){const e=l!==de||Boolean(d||w||p);l=l===de?E>>16&O:l&O,d?l|=ie:d=Boolean(l&ie),w?l|=ae:w=Boolean(l&ae),p?l|=512:p=Boolean(512&l),S&&!e||(g?l=-61441&l|oe:l&re||(l|=32768),E=(l&O)<<16|E&O)}({msdosAttributesRaw:m,msdosAttributes:h}=function(e,t){if(e!==de)e&=L;else if(t!==de){const{readOnly:n,hidden:r,system:o,directory:i,archive:a}=t;let s=0;n&&(s|=1),r&&(s|=2),o&&(s|=4),i&&(s|=16),a&&(s|=32),e=s&L}return t===de&&(t={readOnly:Boolean(1&e),hidden:Boolean(2&e),system:Boolean(4&e),directory:Boolean(16&e),archive:Boolean(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}}(m,h)),y&&(E=E&M|m&L);const b=E>>16&O,x=l!==de&&40960==(l&re);return{name:n,Le:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:E,unixExternalUpper:b,uid:s,gid:c,unixMode:l,unixExtraFieldType:u,symlink:x,setuid:d,setgid:w,sticky:p,msdosAttributesRaw:m,msdosAttributes:h}}}(e,r,l);({name:r}=u);const d=function(e,t,n){const r=Ec(e,n,"encodeText")||_t;let i=r(t,Ue);if(i===de&&(i=_t(t)),Dc(i)>O)throw new f(is);const a=n[Yo]||"";if(typeof a!=he)throw new f(rs);let c=r(a,Me);if(c===de&&(c=_t(a)),Dc(c)>O)throw new f(ns);const l=hc(e,n,wi);if(l!==de&&l>O)throw new f(as);const u=yc(e,n,ei,new s),d=hc(e,n,ti),w=yc(e,n,ni),p=yc(e,n,oi),m=hc(e,n,ai,0),h=Xe(hc(e,n,xe)),y=Boolean(h),E=!0===h,S=hc(e,n,ge),g=hc(e,n,be);Ke(S,g);const b=Sc(e,n,"encryptionStrength",3),x=hc(e,n,mi),F=hc(e,n,"extendedTimestamp",!0),R=hc(e,n,"ntfsTimestamp"),z=hc(e,n,"keepOrder",!0),A=hc(e,n,Re),D=hc(e,n,Ae),I=hc(e,n,"bufferedWrite"),C=Ec(e,n,"createTempStream"),T=hc(e,n,"dataDescriptorSignature",!0),k=qe(hc(e,n,Fe));Ye(k);const v=hc(e,n,Ce,!Cc(i)||!Cc(c)),_=hc(e,n,Ei),N=y||_===de?de:Ln(_);if(!y&&_!==de&&0!==_&&8!==_&&!N)throw new f(Nn);let U=Sc(e,n,Ie);if(Qe(U,9,_s),e.options[ve]){if(S!==de||g!==de)throw new f(cs);U===de&&_===de&&(U=0)}y&&(U=$e(n[Ie]));let M=hc(e,n,ze),L=hc(e,n,Te);I&&L===de&&(L=!1),(L===de||x&&!E)&&(L=!0),U!==de&&6!=U&&(M=!1);const B=hc(e,n,di);if(!(x||S===de&&g===de||o.isInteger(b)&&b>=1&&b<=3))throw new f(ss);const W=Js(n[gi]),P=Js(n.localExtraField),Z=Js(n.centralExtraField);return{comment:a,Le:{rawFilename:i,rawComment:c,version:l,lastModDate:u,rawLastModDate:d,lastAccessDate:w,creationDate:p,internalFileAttributes:m,Be:y,We:E,password:S,rawPassword:g,encryptionStrength:b,zipCrypto:x,extendedTimestamp:F,ntfsTimestamp:R,keepOrder:z,useWebWorkers:A,transferStreams:D,bufferedWrite:I,createTempStream:C,dataDescriptorSignature:T,signal:k,useUnicodeFileNames:v,compressionMethod:_,format:N?N.format:de,codecURI:N?N.codecURI:de,Pe:N?N.versionNeeded:de,level:U,useCompressionStream:M,dataDescriptor:L,zip64:B,rawExtraField:W,Ze:P,Ue:Z}}}(e,r,l),{comment:p}=d,m=l[gi];e.fe.set(r,de);const h=e.Se,y={};let S,g;d.Le.keepOrder&&(y.Ve=new E(e=>S=e)),e.Se=y;try{const{Le:t}=d;0==t.level||t.compressionMethod!==de||t.Be||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;return!(!n||n.U)||!(!er(t)&&(r=t,!$n(r,qn)))||!!n&&await hr();var r}(ft())||(t.level=0,Go(e.warnings,Os,r));const o=await async function(e,t,{Le:r},o){if(r.Be&&!t&&!hc(e,o,hi))throw new f(Fs);let i;if(t){if(t=new Lo(t),await Po(t),!t.readable&&!t.readUint8Array)throw new f(Rs);({size:i}=t)}return n.assign({reader:t},function(e,t,n,r,o){const{Be:i,We:a,zipCrypto:s,password:c,rawPassword:l,encryptionStrength:u}=r;let{dataDescriptor:d,zip64:w,level:p,compressionMethod:m}=r,h=0,y=0,E=!1;if(i&&t){if(y=o[Xo],y===de)throw new f(gs);if(m===de)throw new f(bs)}const S=!0===w,g=hc(e,o,fi);if(t&&a&&!g&&Dc(c,l))throw new f(us);const b=t&&(Boolean(c&&Dc(c)||l&&Dc(l))||a&&g);t||(p=0,m=0);const x=Ii(b,s,u);t&&(i?(o.uncompressedSize=y,h=n===de?gc(y)+x:n+(a?0:x)):n===de?(d=!0,(w||w===de)&&(w=E=!0,h=4294967296)):(o.uncompressedSize=y=n,h=(bc(m,p)?gc(y):y)+x));const F=!(b||t&&(0!==n||i)||bc(m,p));F&&hc(e,o,Te)===de&&(d=!1);const R=S||E||y>=M,z=S||h>=M;if(R||z){if(!1===w)throw new f(Ss);w=!0}return w=w||!1,{He:h,Le:{dataDescriptor:d,Ge:F,zip64:w,Ie:S,je:E,De:R,Ae:z,uncompressedSize:y,level:p,compressionMethod:m,encrypted:b}}}(e,Boolean(t),i,r,o))}(e,c,d,l);({reader:c}=o);const p=nc(e.writer),m=tc(e.writer);let b=l.crc32===de?l[Si]:l.crc32;const x=o.Le.encrypted&&!t.zipCrypto;if(t.Be&&!t.We&&x&&(b=de),t.Be&&c&&!x&&b===de)throw new f(xs);const F=function(e){const{rawFilename:t,lastModDate:n,rawLastModDate:r,lastAccessDate:o,creationDate:i,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:d,dataDescriptor:w,directory:p,rawExtraField:m,Ze:h,encryptionStrength:y,extendedTimestamp:E,ntfsTimestamp:S,Be:g,encrypted:b,De:x,Ae:F,uncompressedSize:R,je:z,crc32:A}=e;let{version:D,compressionMethod:I}=e;const C=!p&&bc(I,c);let T;const k=g||!C,v=l&&(e.bufferedWrite||!w||!x&&!F||k&&!z),_=v||l&&w&&(x||F);if(l&&(x||F)){const e=20,t=ec(e);if(t.qe(1),t.qe(e-4),T=t.Ye,v&&(t.Ke(R),k)){const e=Ii(b,u,y);t.Ke(g?0:R+e)}}else T=Ee;let N,U,M,L,W,P;if(b&&!u){const e=ec(Dc(Bs)+2);e.qe(J),e.Xe(Bs),N=e.Ye,N[8]=y}else N=Ee;if(E){const e=pc(n),t=(Z=e)>=ms&&Z<=hs;if(t){const t=9+(o?4:0)+(i?4:0),n=ec(t);L=1+(o?2:0)+(i?4:0),W=e,n.qe(Q),n.qe(t-4),n.Je(L),n.Qe(e),o&&n.Qe(mc(pc(o))),i&&n.Qe(mc(pc(i))),M=n.Ye}else M=Ee;if(S===de?!t||Boolean(o||i):S)try{const e=wc(n),t=ec(36);t.qe(10),t.qe(32),t.$e(4),t.qe(1),t.qe(24),t.Ke(e),t.Ke(o?wc(o):e),t.Ke(i?wc(i):e),U=t.Ye}catch{U=Ee}else U=Ee}else U=M=Ee;var Z;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=Ws||t===de&&n===de)if(r!=Ps||t===de&&n===de)P=Ee;else{const e=ec(8);e.qe(te),e.qe(4),e.qe((t===de?0:t)&O),e.qe((n===de?0:n)&O),P=e.Ye}else{const e=$s(t===de?0:t),r=$s(n===de?0:n),o=3+e.length+r.length,i=ec(4+o);i.qe(ee),i.qe(o),i.Je(1),i.Je(e.length),i.Xe(e),i.Je(r.length),i.Xe(r),P=i.Ye}}catch{P=Ee}I===de&&(I=C?8:0),D===de&&(D=0!=I||p||b?20:10);const{Pe:V}=e;C&&V!==de&&(D=D>V?D:V),l&&(D=D>45?D:45),b&&!u&&(D=D>51?D:51,g&&A!==de&&(N[4]=1),Fc(gt(N),9,I),I=99);const H=_?Dc(T):0,G=H+Dc(N,M,U,P,m,h);if(G+(e[ve]?67:0)>O)throw new f(ps);const j=new s(2e3*a.ceil(a.floor(n.getTime()/1e3)/2)),q=j<ue?ue:j>le?le:j,Y=Dc(M)?new s(1e3*pc(n)):Dc(U)?n:q,{Re:K,ze:X,rawLastModDate:$}=Ic({version:D,bitFlag:Tc(c,d,w,b,I),compressionMethod:I,uncompressedSize:R,lastModDate:q,rawLastModDate:r,rawFilename:t,Ae:F,De:x,extraFieldLength:G}),ne=ec(ce+Dc(t)+G),re=ne.Ye,oe=gt(re);return ne.Qe(B),ne.Xe(K),ne.Xe(t),_&&ne.Xe(T),ne.Xe(N),ne.Xe(M),ne.Xe(U),ne.Xe(P),ne.Xe(m),ne.Xe(h),w&&(F||Rc(oe,18,0),x||Rc(oe,22,0)),{et:re,nt:oe,Re:K,ze:X,lastModDate:Y,ot:Y===q&&j.getTime()!=q.getTime(),rawLastModDate:$,encrypted:b,compressed:C,version:D,compressionMethod:I,it:L,st:W,Te:Ee,ct:H,ve:M,_e:U,Ne:P,ke:N,extraFieldLength:G}}(l=n.assign({},l,u.Le,d.Le,o.Le,{signature:l[Si],crc32:b,offset:e.offset-p,diskNumberStart:m,[ve]:e.options[ve]}));F.ot&&Go(e.warnings,Ls,r);const z=function({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r,o=Ee,i=0,a=e?20:12;return n&&(a+=4),t&&(o=new w(a),r=gt(o),n&&(i=4,Rc(r,0,P))),{lt:o,ut:r,ft:i}}(l),A=Dc(F.et,z.lt);g=await async function(e,t,r,o,a){const{fe:s,writer:c}=e,{keepOrder:l,dataDescriptor:u,Ge:d,signal:w}=a,{wt:p,ue:m,ht:h,yt:y}=o,S=e.options[ve];let g,b,x,F,z,A,D,I=m,C=0;const T=l&&h?h.Ve:de;s.set(t,I);try{a.bufferedWrite||!l||e.xe||e.ye||e.Ee||!u&&!d?(g=!0,e.ye++,D=a.createTempStream?await a.createTempStream():new R(de,de,{highWaterMark:fe}),D.size=0,await Po(c)):(b=!0,e.Ee++,D=c,await T,await k()),await Po(D);const m=nc(c);e.de&&!g&&await uc(e,c),S&&!g&&Qs(o,e.offset-m);const{et:h}=p;g||await v();const y=tc(c),x=oc(e,c);if(I.diskNumberStart=y,g||(z=!0,A=c.size,await dc(D,h)),I=await async function(e,t,{diskNumberStart:r,Ve:o},a,s,c){const{wt:l,Et:u,St:d}=a,{Re:w,ze:p,lastModDate:m,rawLastModDate:h,encrypted:y,compressed:E,version:S,compressionMethod:g,Te:b,ct:x,ve:F,it:R,st:z,_e:A,Ne:D,ke:I}=l,{lt:C}=u,{rawFilename:T,lastAccessDate:k,creationDate:v,password:_,rawPassword:N,level:U,useUnicodeFileNames:O,zip64:B,Ie:W,De:P,Ae:Z,zipCrypto:V,dataDescriptor:H,directory:G,executable:j,versionMadeBy:q,rawComment:Y,rawExtraField:K,Ue:X,useWebWorkers:J,transferStreams:Q,onstart:$,onprogress:ee,onend:te,signal:ne,encryptionStrength:re,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:ae,externalFileAttributes:se,uid:ce,gid:le,unixMode:ue,symlink:fe,setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:Ee,useCompressionStream:Se,Be:ge,We:be,format:xe,codecURI:Fe}=c,Re={Ve:o,versionMadeBy:q,zip64:B,Ie:W,directory:Boolean(G),executable:Boolean(j),filenameUTF8:Boolean(O),rawFilename:T,commentUTF8:Boolean(O),rawComment:Y,Te:b,ct:x,ve:F,_e:A,Ne:D,ke:I,rawExtraField:K,Ue:X,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:ae,externalFileAttributes:se,diskNumberStart:r,uid:ce,gid:le,unixMode:ue,symlink:Boolean(fe),setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:Ee};let{crc32:ze,uncompressedSize:Ae}=c,De=0;ge||(Ae=0);const{writable:Ie}=t;if(e){const n=e.size,r=In(Ho(e,{size:n})),o={options:{codecType:sr,inputSize:n,level:U,rawPassword:N,password:_,encryptionStrength:re,zipCrypto:y&&V,passwordVerification:y&&V&&h>>8&L,computeCrc32:!ge,compressed:E&&!ge,encrypted:y&&!be,useWebWorkers:J,useCompressionStream:Se,transferStreams:Q,format:xe,codecURI:Fe,compressionMethod:g},config:s,R:{signal:ne,size:n,onstart:$,onprogress:ee,onend:te}};try{const e=await Pr({readable:r,writable:Ie},o);if(De=e.outputSize,t.size+=De,ge||(Ae=e.inputSize,y&&!V||(ze=e.crc32)),!Z&&De>=M||!P&&Ae>=M)throw new f(Ss)}catch(e){const{outputSize:n}=o;throw n!==de?t.size+=n:bt(e)&&e.outputSize!==de&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,wt:r,Et:o},{zip64:a,zipCrypto:s,Be:c,dataDescriptor:l}){const{ze:u,encrypted:d}=r,{ut:f,ft:w}=o;d&&!s&&!c||e===de||(Rc(u,10,e),l&&Rc(f,w,e)),a?l&&(zc(f,w+4,i(t)),zc(f,w+12,i(n))):(Rc(u,14,t),Rc(u,18,n),l&&(Rc(f,w+4,t),Rc(f,w+8,n)))}({crc32:ze,compressedSize:De,uncompressedSize:Ae,wt:l,Et:u},c),H&&await dc(t,C),n.assign(Re,{uncompressedSize:Ae,compressedSize:De,lastModDate:m,rawLastModDate:h,creationDate:v,lastAccessDate:k,encrypted:Boolean(y),zipCrypto:Boolean(V),size:d+De,compressionMethod:g,version:S,Re:w,ze:p,signature:ze,crc32:!y||V||ge?ze:de,it:R,st:z,De:P,Ae:Z}),Re}(r,D,I,o,ft(),a),g||(z=!1),s.set(t,I),I.filename=t,g){if(await E.all([D.writable.getWriter().close(),T]),await k(),e.de&&await uc(e,c),F=!0,A=c.size,await v(),I.diskNumberStart=tc(c),I.offset=oc(e,c),S){const t=o.St;Qs(o,e.offset-nc(c)),I.size+=o.St-t}!function({rawFilename:e,encrypted:t,zip64:n,ct:r,crc32:o,compressedSize:a,uncompressedSize:s,De:c,Ae:l},u,{dataDescriptor:d,Be:f}){if(d||((!t||f&&o!==de)&&Rc(u,14,o),l||Rc(u,18,a),c||Rc(u,22,s)),n&&r){const t=ce+Dc(e)+4;zc(u,t,i(s)),zc(u,t+8,i(a))}}(I,p.nt,a),await dc(c,p.et),await fc(D.readable,c,w,e=>C+=e),c.size+=D.size,F=!1}else I.diskNumberStart=y,I.offset=x;return e.offset+=I.size,I}catch(n){if(F||z){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-A,g&&(e.offset+=C)}throw s.delete(t),n}finally{if(g&&e.ye--,b&&e.Ee--,y&&y(T),x&&x(),g&&D&&D.dispose)try{await D.dispose()}catch{}}async function k(){e.xe=!0;const{Fe:t}=e;e.Fe=new E(t=>x=()=>{e.xe=!1,t()}),await t}async function v(){rc(c,Dc(p.et))&&await c.closeDisk()}}(e,r,c,{wt:F,Et:z,St:A,ue:y,ht:h,yt:S},l)}catch(t){throw e.fe.delete(r),t}finally{S&&S(h&&h.Ve)}return n.assign(g,{name:r,comment:p,extraField:m}),new Ai(g)}(e,r,l,u)}catch(t){throw e.we.delete(r),t}finally{const e=Hs.shift();e?e():Vs--}}(u,e,r,l);d.add(p);const m=()=>d.delete(p);return E.prototype.then.call(p,m,m),Ys(u,p)}remove(e){const{we:t,fe:n}=this;if(typeof e==he&&(e=n.get(e)),e&&e.filename!==de){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=Ee,n={}){const r=this,{me:o,writer:a}=this,{writable:s}=a;if(r.ge)return qs(a);if(!(e instanceof w))throw new f(ts);if(Dc(e)>O)throw new f(es);for(;o.size;)await E.allSettled(t.from(o));await E.allSettled(r.he.map(e=>e.gt));const c=r.he.filter(e=>e.bt&&!e.xt);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.xt=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const{Ft:o,Rt:a}=function(e){let t=0,n=!1;for(const[,r]of e){const{rawFilename:e,ke:o,rawComment:i,_e:a,Ne:s,rawExtraField:c,Ue:l,it:u,st:d,Ie:w,uncompressedSize:p,compressedSize:m}=r;let{De:h,Ae:y}=r;w||(h&&p<M&&(h=r.De=!1),y&&m<M&&(y=r.Ae=!1)),n=n||h||y;const E=r.offset>=M,S=r.diskNumberStart>=O;let g,b;if(E||S||h||y){const e=4+(h?8:0)+(y?8:0)+(E?8:0)+(S?4:0),t=ec(e);t.qe(1),t.qe(e-4),h&&t.Ke(p),y&&t.Ke(m),E&&t.Ke(r.offset),S&&t.Qe(r.diskNumberStart),g=t.Ye}else g=Ee;if(r.Te=g,r.zt=E,r.Ce=S,d===de)b=Ee;else{const e=ec(9);e.qe(Q),e.qe(5),e.Je(u),e.Qe(d),b=e.Ye}r.ve=b;const x=Dc(g,o,a,s,b,c,l);if(x>O)throw new f(ps);t+=q+Dc(e,i)+x}return{Ft:t,Rt:n}}(e.fe),{At:s,Dt:c,It:l}=await async function(e,n,r){const{fe:o,writer:i}=e,a=new w(n);await Po(i);let s=0,c=0,l=tc(i),u=nc(i),d=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:f,Te:w,ke:p,ve:m,_e:h,Ne:y,rawExtraField:E,Ue:S,rawComment:g,versionMadeBy:b,Re:x,ze:F,De:R,Ae:z,Ce:A,zt:D,internalFileAttributes:I,externalFileAttributes:C,diskNumberStart:T,uncompressedSize:k,compressedSize:v}=n,_=Dc(w,p,m,h,y,E,S),N=q+Dc(f,g)+_;rc(i,s+N-c)&&(await dc(i,a.slice(c,s)),c=s,d=0,await i.closeDisk()),0==e&&(l=tc(i),u=nc(i)),R||Rc(F,18,k),z||Rc(F,14,v),(D||A)&&n.version<45&&Fc(F,0,45);const U=ec(N);if(U.Qe(V),U.qe(b),U.Xe(x.subarray(0,24)),U.qe(_),U.qe(Dc(g)),U.qe(A?O:T),U.qe(I),U.Qe(C),U.Qe(D?M:t),U.Xe(f),U.Xe(w),U.Xe(p),U.Xe(m),U.Xe(h),U.Xe(y),U.Xe(E),U.Xe(S),U.Xe(g),Ac(a,U.Ye,s),s+=N,d++,r.onprogress)try{await r.onprogress(e+1,o.size,new Ai(n))}catch{}}return await dc(i,c?a.slice(c):a),{At:{diskNumber:l,diskOffset:u},Dt:{diskNumber:tc(i),Ct:d},It:a}}(e,o,r),u=await async function(e,t,n){const r=Ec(e,n,"signCentralDirectory");if(r){const n=await r(t),o=Dc(n);if(o>O)throw new f(Ns);const i=ec(6+o);i.Qe(Z),i.qe(o),i.Xe(n);const{writer:a}=e;return rc(a,Dc(i.Ye))&&await a.closeDisk(),await dc(a,i.Ye),6+o}return 0}(e,l,r);await async function(e,t,n,r){const{writer:o}=e,{At:a,Dt:s,Tt:c,Rt:l}=r;let{Ft:u}=r,d=e.fe.size,w=a.diskNumber,p=oc(e,a);const m=Dc(t);if(m>O)throw new f(es);let h=hc(e,n,di),y=tc(o);if(rc(o,(h?98:Y)+m)&&y++,p>=M||u>=M||d>=O||y>=O){if(!1===h)throw new f(Ss);h=!0}else h===de&&l&&(h=!0);const E=ec(h?98:Y);rc(o,Dc(E.Ye)+m)&&await o.closeDisk(),y=tc(o);let S=y==s.diskNumber?s.Ct:0;h&&(E.Qe(G),E.Ke(44),E.qe(45),E.qe(45),E.Qe(y),E.Qe(w),E.Ke(S),E.Ke(d),E.Ke(u),E.Ke(p),E.Qe(j),E.Qe(y),E.Ke(i(oc(e,o))+i(u)+i(c)),E.Qe(y+1),hc(e,n,"supportZip64SplitFile",!0)&&(y=O,w=O),S=O,d=O,p=M,u=M),E.Qe(H),E.qe(y),E.qe(w),E.qe(S),E.qe(d),E.Qe(u),E.Qe(p),E.qe(m),await dc(o,E.Ye),m&&await dc(o,t)}(e,n,r,{At:s,Dt:c,Ft:o,Tt:u,Rt:a})}(r,e,n),r.ge=!0,!Wo(a)&&hc(r,n,De)||await s.getWriter().close(),qs(a)}[Se](){return this.close()}}class js extends E{then(e,t){const{kt:n}=this;return n&&(n.xt=!0),super.then(e,t)}}function qs(e){return e.getData?e.getData():e.writable}function Ys(e,t){const r=new js((e,n)=>E.prototype.then.call(t,e,n)),o={};return r.kt=o,o.gt=E.prototype.then.call(r,de,e=>n.assign(o,{bt:!0,error:e})),e.he.push(o),r}async function Ks(e,t){try{await e.writer.writable.abort(t)}catch{}}function Xs(e,t,n){e.me.add(t),t.catch(e=>{try{n(e)}catch{}})}function Js(e){if(!e)return Ee;if(!(e instanceof c))throw new f(ds);let t=0,n=0;e.forEach((e,n)=>{if(Je(n,O,fs),!(e instanceof w))throw new f(ws);if(Dc(e)>O)throw new f(ps);t+=4+Dc(e)});const r=new w(t),o=gt(r);return e.forEach((e,t)=>{Fc(o,n,t),Fc(o,n+2,Dc(e)),Ac(r,e,n+4),n+=4+Dc(e)}),r}function Qs(e,t){const{wt:n}=e;let{et:r,extraFieldLength:o}=n,i=64-(t+Dc(r))%64;i<4&&(i+=64);const a=new w(i),s=gt(a);Fc(s,0,$),Fc(s,2,i-4);const c=r;n.et=r=new w(Dc(c)+i),Ac(r,c),Ac(r,a,Dc(c));const l=gt(r);Fc(l,28,o+i),n.nt=l,e.St+=i}function $s(e){const t=new w(4);gt(t).setUint32(0,e,!0);let n=4;for(;n>1&&0===t[n-1];)n--;return t.subarray(0,n)}function ec(e){const t=new w(e),n=gt(t);let r=0;return{Ye:t,Je:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},qe:e=>{Fc(n,r,e),r+=2},Qe:e=>{Rc(n,r,e),r+=4},Ke:e=>{zc(n,r,i(e)),r+=8},Xe:e=>{Ac(t,e,r),r+=Dc(e)},$e:e=>r+=e}}function tc(e){const{diskNumber:t=0}=e;return t}function nc(e){const{diskOffset:t=0}=e;return t}function rc(e,t){const{availableSize:n=fe}=e;return t>n}function oc(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.pe:0)}function ic(e){const t=gt(e);let n=0;for(;n+4<=Dc(e);){const r=4+xc(t,n+2);if(1==xc(t,n))return ic(Et(e.subarray(0,n),e.subarray(a.min(n+r,Dc(e)))));n+=r}return e}async function ac(e,t,n,r){if(r>0){const{writer:o}=e;let i=0;try{await fc(Ho(t,{offset:n,size:r}),o,de,e=>i+=e)}catch(t){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}throw t}finally{o.size+=i,e.offset+=i}}}async function sc(e,t){const n=await Vo(e,t,ce);if(Dc(n)<ce)return ce;const r=gt(n);return ce+xc(r,26)+xc(r,28)}function cc(e,{offset:t,diskNumberStart:n}){return t+(e.re?e.re(n):0)}function lc(){const e=new w(4);return Rc(gt(e),0,W),e}async function uc(e,t){delete e.de,await dc(t,lc()),e.offset+=4}async function dc(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=Dc(t),await r.write(t)}finally{r.releaseLock()}}async function fc(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new A({async write(e){await o.ready,await o.write(e),r(Dc(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function wc(e){if(e){const t=(i(e.getTime())+i(116444736e5))*i(1e4);return t<ys?ys:t>Es?Es:t}}function pc(e){return a.floor(e.getTime()/1e3)}function mc(e){return a.min(hs,a.max(ms,e))}function hc(e,t,n,r){const o=t[n]===de?e.options[n]:t[n];return o===de?r:o}function yc(e,t,n,r){const i=hc(e,t,n,r);if(null===i)return r;if(i!==de&&(typeof i.getTime!=pe||o.isNaN(i.getTime())))throw new f(os);return i}function Ec(e,t,n){return je(hc(e,t,n))}function Sc(e,t,n,r){return $e(hc(e,t,n,r))}function gc(e){return e+5*(a.floor(e/16383)+1)}function bc(e,t){return e===de?t===de||t>0:0!==e}function xc(e,t){return e.getUint16(t,!0)}function Fc(e,t,n){e.setUint16(t,n,!0)}function Rc(e,t,n){e.setUint32(t,n,!0)}function zc(e,t,n){e.setBigUint64(t,n,!0)}function Ac(e,t,n){e.set(t,n)}function Dc(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Ic({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:a,rawFilename:s,Ae:c,De:l,extraFieldLength:u}){const d=ec(26),f=d.Ye,w=gt(f);if(d.qe(e),d.qe(t),d.qe(n),a===de){const e=new m(1),t=gt(e);Fc(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Fc(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),a=e[0]}return d.Qe(a),d.$e(4),c||o!==de?d.Qe(c?M:o):d.$e(4),l||r!==de?d.Qe(l?M:r):d.$e(4),d.qe(Dc(s)),d.qe(u),{Re:f,ze:w,rawLastModDate:a}}function Cc(e){return e.every(e=>e>=32&&e<=126)}function Tc(e,t,n,r,o){let i=0;return t&&(i|=ne),n&&(i|=8),8!=o&&9!=o||(e>=0&&e<=3&&(i|=6),e>3&&e<=5&&(i|=4),9==e&&(i|=2)),r&&(i|=1),i}function kc(e,t){if(!e)return!1;const{vt:n}=e;return n?n.includes(t):$n(e,t)}const vc=1048576,_c=".zip.js-temp",Nc=1048576,Uc=1048576,Mc=".zip.js-temp",Oc="createSyncAccessHandle is only available in dedicated workers";try{!function(e){const t=mt(yt(e));n.assign(ot,t),n.assign(dt,t)}({baseURI:void 0===b&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===b?location.href:U&&"SCRIPT"===U.tagName.toUpperCase()&&U.src||new d("zip-core.min.js",b.baseURI).href})}catch{}e.BlobReader=mo,e.BlobWriter=ho,e.Data64URIReader=class extends uo{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{_t:e,Nt:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{Nt:n,_t:r}=this,o=new w(t),i=4*a.floor(e/3),s=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);let l=0;for(let e=c;e<c+t&&e<s.length;e++)o[e-c]=s.charCodeAt(e),l++;return l<o.length?o.subarray(0,l):o}},e.Data64URIWriter=class extends fo{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",Ut:""})}writeUint8Array(e){const t=this;let n,o=t.Ut;const i=t.Ut.length;for(t.Ut="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.Ut+=r.fromCharCode(e[n]);o.length>2?t.data+=F(o):t.Ut=o+t.Ut}getData(){return this.data+F(this.Ut)}},e.ERR_ABORTED=Ge,e.ERR_AMBIGUOUS_ARCHIVE=Wi,e.ERR_BAD_FORMAT=Ci,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=vi,e.ERR_DUPLICATED_NAME=$a,e.ERR_ENCRYPTED=Ui,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=Pi,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=Bi,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=ki,e.ERR_EOCDR_NOT_FOUND=Ti,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Ni,e.ERR_HTTP_RANGE=Jr,e.ERR_HTTP_RESOURCE_CHANGED=Qr,e.ERR_HTTP_STATUS=Xr,e.ERR_INVALID_AUTHENTICATION_CODE=Xt,e.ERR_INVALID_BASE_URI=tt,e.ERR_INVALID_CODEC_DEFINITION=kn,e.ERR_INVALID_CODEC_MODULE=_n,e.ERR_INVALID_COMMENT=es,e.ERR_INVALID_COMMENT_TYPE=ts,e.ERR_INVALID_COMPRESSED_DATA=Vn,e.ERR_INVALID_CRC32=Hn,e.ERR_INVALID_DATE=os,e.ERR_INVALID_ENCRYPTION_STRENGTH=ss,e.ERR_INVALID_ENTRY=Us,e.ERR_INVALID_ENTRY_COMMENT=ns,e.ERR_INVALID_ENTRY_COMMENT_TYPE=rs,e.ERR_INVALID_ENTRY_NAME=is,e.ERR_INVALID_EXTRAFIELD=ds,e.ERR_INVALID_EXTRAFIELD_DATA=ps,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=ws,e.ERR_INVALID_EXTRAFIELD_TYPE=fs,e.ERR_INVALID_FILENAME_VALIDATION=Hi,e.ERR_INVALID_FUNCTION_OPTION=Pe,e.ERR_INVALID_GID=Ds,e.ERR_INVALID_LEVEL=_s,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=Gi,e.ERR_INVALID_MAX_WORKERS=et,e.ERR_INVALID_MSDOS_ATTRIBUTES=ks,e.ERR_INVALID_MSDOS_DATA=vs,e.ERR_INVALID_PASSWORD=Kt,e.ERR_INVALID_PASSWORD_TYPE=Ve,e.ERR_INVALID_PASS_THROUGH_VALUE=He,e.ERR_INVALID_READER=Rs,e.ERR_INVALID_SIGNAL=Ze,e.ERR_INVALID_SIGNATURE_DATA=Ns,e.ERR_INVALID_STRICTNESS=Vi,e.ERR_INVALID_UID=As,e.ERR_INVALID_UNCOMPRESSED_SIZE=Zn,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=Cs,e.ERR_INVALID_UNIX_ID_SIZE=Ts,e.ERR_INVALID_UNIX_MODE=Is,e.ERR_INVALID_URI=nt,e.ERR_INVALID_VERSION=as,e.ERR_ITERATOR_COMPLETED_TOO_SOON=$r,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=_i,e.ERR_OVERLAPPING_ENTRY=Li,e.ERR_RESERVED_COMPRESSION_METHOD=vn,e.ERR_SPLIT_ZIP_FILE=Oi,e.ERR_UNDEFINED_COMPRESSION_METHOD=bs,e.ERR_UNDEFINED_CRC32=xs,e.ERR_UNDEFINED_READER=Fs,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=gs,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=Zi,e.ERR_UNSUPPORTED_COMPRESSION=Nn,e.ERR_UNSUPPORTED_CONTEXT=Oc,e.ERR_UNSUPPORTED_CRYPTO_API=Qt,e.ERR_UNSUPPORTED_ENCRYPTION=Mi,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=us,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=cs,e.ERR_UNSUPPORTED_FORMAT=Ss,e.ERR_UNSUPPORTED_SPLIT_USDZ=ls,e.ERR_UNSUPPORTED_UINT64=ji,e.ERR_WORKER_STARTUP_TIMEOUT=dr,e.ERR_WRITER_NOT_INITIALIZED=eo,e.ERR_WRITER_SIZE_NOT_WRITABLE=to,e.ERR_ZIP_CRYPTO_LAST_MOD_DATE=Ms,e.ERR_ZIP_NOT_EMPTY=zs,e.HttpRangeReader=class extends Uo{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=Uo,e.Reader=uo,e.SplitDataReader=Mo,e.SplitDataWriter=Oo,e.TextReader=class extends mo{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends ho{constructor(e){super(),n.assign(this,{encoding:e,Mt:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,Mt:t}=this,n=await super.getData();return n.text&&t?n.text():function(e,t){return Kr(e,t,!1)}(new w(await n.arrayBuffer()),e)}},e.Uint8ArrayReader=class extends uo{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{Ye:e,size:e.length})}readUint8Array(e,t){return this.Ye.slice(e,e+t)}},e.Uint8ArrayWriter=class extends fo{constructor(e){super(),this.Ot=e||262144}init(e=0){n.assign(this,{offset:0,Ye:new w(e>0?e:this.Ot)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.Ye.length){let e=t.Ye.length?2*t.Ye.length:t.Ot;for(;e<n;)e*=2;const r=t.Ye;t.Ye=new w(e),t.Ye.set(r)}t.Ye.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.Ye.length?this.Ye:this.Ye.slice(0,this.offset)}},e.VERSION="2.14.0",e.WARNING_APPENDED_DATA=$i,e.WARNING_CLAMPED_LAST_MODIFICATION_DATE=Ls,e.WARNING_COMPRESSED_PATCHED_DATA=Ki,e.WARNING_COMPRESSION_UNAVAILABLE=Os,e.WARNING_DUPLICATE_FILENAME=ra,e.WARNING_MALFORMED_EXTRA_FIELD=Xi,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=sa,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=ca,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=la,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME=aa,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=oa,e.WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY=ia,e.WARNING_PREPENDED_CENTRAL_DIRECTORY=ta,e.WARNING_PREPENDED_DATA=ea,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=na,e.WARNING_UNKNOWN_VERSION=Yi,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=Ji,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=qi,e.WARNING_WRAPPED_ENTRIES_COUNT=Qi,e.Writer=fo,e.ZipReader=ha,e.ZipReaderStream=ya,e.ZipWriter=Gs,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new R;this.readable=t,this.zipWriter=new Gs(n,e),this.me=new l}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:o}=new R({start(e){n=e},flush:()=>{!async function(){try{await t.close()}catch(e){await Ks(t,e)}}()}});return Xs(this,this.zipWriter.add(e,r),e=>n.error(e)),{readable:this.readable,writable:o}}writable(e){let t;const{readable:n,writable:r}=new R({start(e){t=e}});return Xs(this,this.zipWriter.add(e,n),e=>t.error(e)),r}async close(e,n={}){const{zipWriter:r}=this,o=(await E.allSettled(t.from(this.me))).filter(e=>"rejected"==e.status).map(e=>e.reason);if(o.length){const[e]=o;try{e.entryErrors=o}catch{}throw await Ks(r,e),e}try{return await r.close(e,n)}catch(e){throw await Ks(r,e),e}}},e.configure=function(e){n.assign(dt,mt(yt(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=Nc}=e;return function(){const e=[];let n,r,o,i=0,a=!1;const s=new A({async write(o){a?await n.write(o):(e.push(o),i+=o.length,i>t&&await async function(){const t=new R;r=Cn(t.readable),n=t.writable.getWriter(),a=!0;for(const t of e)await n.write(t);e.length=0}())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:s,readable:new z({async pull(t){if(a){if(!o){const e=await r;o=e.stream().getReader()}const{value:e,done:n}=await o.read();n?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){o&&await o.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(n){try{await n.abort()}catch{}n=null}r&&(r.catch(()=>{}),r=null),e.length=0}}}},e.createOPFSTempStream=function(e={}){const{thresholdBytes:n=vc,directoryName:r=_c,getDirectory:o=()=>C.storage.getDirectory()}=e;let i;function a(){return i||(i=E.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return function(){const e=[];let r,o,i,s,c=0,l=!1;const u=new A({async write(s){l?await i.write(s):(e.push(s),c+=s.length,c>n&&await async function(){const n=await a();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join(""),o=await n.getFileHandle(r,{create:!0}),i=(await o.createWritable()).getWriter(),l=!0;for(const t of e)await i.write(t);e.length=0}())},async close(){i&&(await i.close(),i=null)}});let d=0;return{writable:u,readable:new z({async pull(t){if(l){if(!s){const e=await o.getFile();s=e.stream().getReader()}const{value:e,done:n}=await s.read();n?t.close():t.enqueue(e)}else d<e.length?t.enqueue(e[d++]):t.close()},async cancel(e){s&&await s.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await a();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=Uc,directoryName:r=Mc,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new f(Oc);const i=o||(()=>C.storage.getDirectory());let s;function c(){return s||(s=E.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),s}return function(){const e=[];let r,o,i=0,s=!1,l=0,u=0;const d=new A({async write(a){s?(o.write(a,{at:l}),l+=a.length):(e.push(a),i+=a.length,i>n&&await async function(){const n=await c();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join("");const i=await n.getFileHandle(r,{create:!0});o=await i.createSyncAccessHandle(),s=!0;for(const t of e)o.write(t,{at:l}),l+=t.length;e.length=0}())},close(){o&&o.flush()}});let f=0;return{writable:d,readable:new z({pull(t){if(s){const e=l-u;if(e<=0)return void t.close();const n=new w(a.min(524288,e)),r=o.read(n,{at:u});r?(u+=r,t.enqueue(n.subarray(0,r))):t.close()}else f<e.length?t.enqueue(e[f++]):t.close()}},{highWaterMark:0}),dispose:async function(){if(o){try{o.close()}catch{}o=null}if(r){try{const e=await c();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=function(){return"application/octet-stream"},e.getRegisteredCodecs=Bn,e.getSupportedCompressionMethods=function(){const{CompressionStream:e,DecompressionStream:t,CompressionStreamFallback:n,DecompressionStreamFallback:r}=ft(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:kc(n,Gn)||kc(e,Gn)||kc(e,qn),decompression:kc(r,Gn)||kc(t,Gn)||kc(t,qn),registered:!1},{compressionMethod:9,compression:!1,decompression:kc(r,jn)||kc(t,jn),registered:!1}];for(const e of Bn()){const t=Wn(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==pe:de,decompression:t?typeof t.DecompressionStream==pe:de,registered:!0})}return o},e.isZipFile=Ea,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:i,DecompressionStream:a,versionNeeded:s}=e;if(!o.isInteger(t)||t<0||t>O||typeof n!=he||!n.length)throw new f(kn);if(Un.includes(t))throw new f(vn);const c=typeof i==pe||typeof a==pe;if(!(c||typeof r==he&&r.length))throw new f(kn);Mn.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:s}),c&&Pn(n,{CompressionStream:i,DecompressionStream:a})},e.resetConfiguration=function(){for(const e of ut)delete dt[e];n.assign(dt,ot)},e.terminateWorkers=async function(){await E.allSettled(Mr.map(e=>(jr(e),e.terminate()))),fr=de,wr=!1},e.unregisterCodec=function(e){const t=Mn.get(e);if(t){let n;Mn.delete(e),Mn.forEach(e=>n=n||e.format==t.format),n||On.delete(t.format)}}});