@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
- const t=4294967295,e=65535,r=255,n=67324752,o=134695760,a=o,i=84233040,s=33639248,c=101010256,l=101075792,u=117853008,f=46,d=22,w=20,p=56,m=39169,h=21589,y=6534,E=30837,b=30805,S=2048,g=61440,A=16384,R=2048,D=1024,x="/",z=30,F=new Date(2107,11,31,23,59,58),T=new Date(1980,0,1),I=void 0,O=1/0,U="undefined",C="function",k="object",M="string",N="boolean",v=new Uint8Array,_=Symbol.asyncDispose||Symbol(),L="password",B="rawPassword",j="passThrough",P="signal",W="useWebWorkers",V="useCompressionStream",Z="transferStreams",H="preventClose",G="level",K="useUnicodeFileNames",Y="dataDescriptor",q="offset",X="usdz",J="maxAppendedDataSize",Q="entry",$="filename",tt="comment",et="strict",rt="balanced",nt="tolerant",ot="compressed",at="Invalid option (must be a function)",it="Invalid signal (must be an AbortSignal instance)",st="Invalid password (password must be a string, rawPassword must be a Uint8Array)",ct="Invalid passThrough option (must be a boolean or 'compressed')",lt="The operation was aborted";function ut(t){if(t&&typeof t!=C)throw new Error(at);return t}function ft(t){if(t&&(typeof t.addEventListener!=C||typeof t.aborted!=N))throw new Error(it);return t||I}function dt(t){if(t&&t.aborted)throw t.reason===I?new DOMException(lt,"AbortError"):t.reason}function wt(t,e){if(t&&typeof t!=M||e&&!(e instanceof Uint8Array))throw new Error(st)}function pt(t){if(t!==I&&typeof t!=N&&t!==ot)throw new Error(ct);return t}function mt(t,e,r){if(!Number.isInteger(t)||t<0||t>e)throw new Error(r)}function ht(t,e,r){t!==I&&mt(t,e,r)}function yt(t){return typeof t==M&&t.trim()?Number(t):t}const Et="Invalid maxWorkers (must be an integer greater than 0)",bt="Invalid baseURI (must be a string)",St="Invalid URI (must be a string or a function returning a string)";let gt=2;try{typeof navigator!=U&&navigator.hardwareConcurrency&&(gt=navigator.hardwareConcurrency)}catch{}const At={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:gt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof CompressionStream!=U&&CompressionStream,DecompressionStream:typeof DecompressionStream!=U&&DecompressionStream},Rt="maxWorkers",Dt="baseURI",xt=["wasmURI","workerURI"],zt=["chunkSize",Rt,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],Ft=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],Tt=[Dt,...xt,"useCompressionStream","useWebWorkers","transferStreams",...zt,...Ft],It={...At};function Ot(){return It}function Ut(t){return Ct(t.chunkSize)}function Ct(t){return t=yt(t),Number.isInteger(t)&&t>=1?Math.max(t,64):65536}function kt(t){Object.assign(It,Mt(vt(t)))}function Mt(t){const e={};for(const r of Tt){const n=t[r];n!==I&&(e[r]=Nt(r,n))}return e}function Nt(t,e){if(zt.includes(t)){if(e=yt(e),t==Rt&&(!Number.isInteger(e)||e<1))throw new Error(Et)}else if(Ft.includes(t))ut(e);else if(t==Dt){if(e&&typeof e!=M)throw new Error(bt)}else if(xt.includes(t)&&e&&typeof e!=M&&typeof e!=C)throw new Error(St);return e}function vt(t){t=t||{};const{CompressionStreamZlib:e,DecompressionStreamZlib:r}=t;if(e===I&&r===I)return t;const n=Object.assign({},t);return n.CompressionStreamFallback===I&&(n.CompressionStreamFallback=e),n.DecompressionStreamFallback===I&&(n.DecompressionStreamFallback=r),n}function _t(t){const e=Mt(vt(t));Object.assign(At,e),Object.assign(It,e)}function Lt(){for(const t of Tt)delete It[t];Object.assign(It,At)}function Bt(t,e){const r=new Uint8Array(t.length+e.length);return r.set(t),r.set(e,t.length),r}function jt(t){return t.byteOffset||t.byteLength!=t.buffer.byteLength?new Uint8Array(t):t}function Pt(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Wt(t){return Boolean(t)&&"object"==typeof t}const Vt=[[],[],[],[],[],[],[],[]];for(let t=0;t<256;t++){let e=t;for(let t=0;t<8;t++)e=1&e?e>>>1^3988292384:e>>>1;Vt[0][t]=e}for(let t=0;t<256;t++)for(let e=1;e<8;e++){const r=Vt[e-1][t];Vt[e][t]=r>>>8^Vt[0][255&r]}const[Zt,Ht,Gt,Kt,Yt,qt,Xt,Jt]=Vt;class Qt{constructor(t){this.o=t||-1}append(t){let e=0|this.o;const r=0|t.length;let n=0;if(r>=8&&t.buffer){const o=new DataView(t.buffer,t.byteOffset,r),a=r-8;for(;n<=a;n+=8){const t=e^o.getInt32(n,!0),r=o.getInt32(n+4,!0);e=Jt[255&t]^Xt[t>>>8&255]^qt[t>>>16&255]^Yt[t>>>24&255]^Kt[255&r]^Gt[r>>>8&255]^Ht[r>>>16&255]^Zt[r>>>24&255]}}for(;n<r;n++)e=e>>>8^Zt[255&(e^t[n])];this.o=e}get(){return~this.o}}class $t extends TransformStream{constructor(){let t;const e=new Qt;super({transform(t,r){e.append(t),r.enqueue(t)},flush(){const r=new Uint8Array(4);new DataView(r.buffer).setUint32(0,e.get()),t.value=r}}),t=this}}function te(t){if(typeof TextEncoder==U){t=unescape(encodeURIComponent(t));const e=new Uint8Array(t.length);for(let r=0;r<e.length;r++)e[r]=t.charCodeAt(r);return e}return(new TextEncoder).encode(t)}const ee={concat(t,e){if(0===t.length||0===e.length)return t.concat(e);const r=t[t.length-1],n=ee.l(r);return 32===n?t.concat(e):ee.m(e,n,0|r,t.slice(0,t.length-1))},bitLength(t){const e=t.length;if(0===e)return 0;const r=t[e-1];return 32*(e-1)+ee.l(r)},h(t,e){if(32*t.length<e)return t;const r=(t=t.slice(0,Math.ceil(e/32))).length;return e&=31,r>0&&e&&(t[r-1]=ee.S(e,t[r-1]&2147483648>>e-1,1)),t},S:(t,e,r)=>32===t?e:(r?0|e:e<<32-t)+1099511627776*t,l:t=>Math.round(t/1099511627776)||32,m(t,e,r,n){for(void 0===n&&(n=[]);e>=32;e-=32)n.push(r),r=0;if(0===e)return n.concat(t);for(let o=0;o<t.length;o++)n.push(r|t[o]>>>e),r=t[o]<<32-e;const o=t.length?t[t.length-1]:0,a=ee.l(o);return n.push(ee.S(e+a&31,e+a>32?r:n.pop(),1)),n}},re={bytes:{A(t){const e=ee.bitLength(t)/8,r=new Uint8Array(e);let n;for(let o=0;o<e;o++)3&o||(n=t[o/4]),r[o]=n>>>24,n<<=8;return r},R(t){const e=[];let r,n=0;for(r=0;r<t.length;r++)n=n<<8|t[r],3&~r||(e.push(n),n=0);return 3&r&&e.push(ee.S(8*(3&r),n)),e}}},ne=class{constructor(t){const e=this;e.blockSize=512,e.D=[1732584193,4023233417,2562383102,271733878,3285377520],e.F=[1518500249,1859775393,2400959708,3395469782],t?(e.T=t.T.slice(0),e.I=t.I.slice(0),e.O=t.O):e.reset()}reset(){const t=this;return t.T=t.D.slice(0),t.I=[],t.O=0,t}update(t){const e=this;"string"==typeof t&&(t=re.U.R(t));const r=e.I=ee.concat(e.I,t),n=e.O,o=e.O=n+ee.bitLength(t);if(o>9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");const a=new Uint32Array(r);let i=0;for(let t=e.blockSize+n-(e.blockSize+n&e.blockSize-1);t<=o;t+=e.blockSize)e.C(a.subarray(16*i,16*(i+1))),i+=1;return r.splice(0,16*i),e}M(){const t=this;let e=t.I;const r=t.T;e=ee.concat(e,[ee.S(1,1)]);for(let t=e.length+2;15&t;t++)e.push(0);for(e.push(Math.floor(t.O/4294967296)),e.push(0|t.O);e.length;)t.C(e.splice(0,16));return t.reset(),r}N(t,e,r,n){return t<=19?e&r|~e&n:t<=39?e^r^n:t<=59?e&r|e&n|r&n:t<=79?e^r^n:void 0}v(t,e){return e<<t|e>>>32-t}C(t){const e=this,r=e.T,n=Array(80);for(let e=0;e<16;e++)n[e]=t[e];let o=r[0],a=r[1],i=r[2],s=r[3],c=r[4];for(let t=0;t<=79;t++){t>=16&&(n[t]=e.v(1,n[t-3]^n[t-8]^n[t-14]^n[t-16]));const r=e.v(5,o)+e.N(t,a,i,s)+c+n[t]+e.F[Math.floor(t/20)]|0;c=s,s=i,i=e.v(30,a),a=o,o=r}r[0]=r[0]+o|0,r[1]=r[1]+a|0,r[2]=r[2]+i|0,r[3]=r[3]+s|0,r[4]=r[4]+c|0}},oe={importKey:t=>new oe._(re.bytes.R(t)),L(t,e,r,n){if(r=r||1e4,n<0||r<0)throw new Error("invalid params to pbkdf2");const o=1+(n>>5)<<2;let a,i,s,c,l;const u=new ArrayBuffer(o),f=new DataView(u);let d=0;const w=ee;for(e=re.bytes.R(e),l=1;d<(o||1);l++){for(a=i=t.encrypt(w.concat(e,[l])),s=1;s<r;s++)for(i=t.encrypt(i),c=0;c<i.length;c++)a[c]^=i[c];for(s=0;d<(o||1)&&s<a.length;s++)f.setInt32(d,a[s]),d+=4}return u.slice(0,n/8)},_:class{constructor(t){const e=this,r=e.B=ne,n=[[],[]];e.j=[new r,new r];const o=e.j[0].blockSize/32;t.length>o&&(t=(new r).update(t).M());for(let e=0;e<o;e++)n[0][e]=909522486^t[e],n[1][e]=1549556828^t[e];e.j[0].update(n[0]),e.j[1].update(n[1]),e.P=new r(e.j[0])}reset(){const t=this;t.P=new t.B(t.j[0]),t.W=!1}update(t){this.W=!0,this.P.update(t)}digest(){const t=this,e=t.P.M(),r=new t.B(t.j[1]).update(e).M();return t.reset(),r}encrypt(t){if(this.W)throw new Error("encrypt on already updated hmac called!");return this.update(t),this.digest(t)}}},ae=typeof crypto!=U&&typeof crypto.getRandomValues==C,ie="Invalid password",se="Invalid authentication code",ce="zipjs-abort-check-password",le="Crypto API not supported";function ue(t){if(ae)return crypto.getRandomValues(t);throw new Error(le)}const fe=16,de={name:"PBKDF2"},we=Object.assign({hash:{name:"HMAC"}},de),pe=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},de),me=["deriveBits"],he=[8,12,16],ye=[16,24,32],Ee=10,be=[0,0,0,0],Se=typeof crypto!=U,ge=Se&&crypto.subtle,Ae=Se&&typeof ge!=U,Re=re.bytes,De=class{constructor(t){const e=this;e.V=[[[],[],[],[],[]],[[],[],[],[],[]]],e.V[0][0][0]||e.Z();const r=e.V[0][4],n=e.V[1],o=t.length;let a,i,s,c=1;if(4!==o&&6!==o&&8!==o)throw new Error("invalid aes key size");for(e.F=[i=t.slice(0),s=[]],a=o;a<4*o+28;a++){let t=i[a-1];(a%o===0||8===o&&a%o===4)&&(t=r[t>>>24]<<24^r[t>>16&255]<<16^r[t>>8&255]<<8^r[255&t],a%o===0&&(t=t<<8^t>>>24^c<<24,c=c<<1^283*(c>>7))),i[a]=i[a-o]^t}for(let t=0;a;t++,a--){const e=i[3&t?a:a-4];s[t]=a<=4||t<4?e:n[0][r[e>>>24]]^n[1][r[e>>16&255]]^n[2][r[e>>8&255]]^n[3][r[255&e]]}}encrypt(t){return this.H(t,0)}decrypt(t){return this.H(t,1)}Z(){const t=this.V[0],e=this.V[1],r=t[4],n=e[4],o=[],a=[];let i,s,c,l;for(let t=0;t<256;t++)a[(o[t]=t<<1^283*(t>>7))^t]=t;for(let u=i=0;!r[u];u^=s||1,i=a[i]||1){let a=i^i<<1^i<<2^i<<3^i<<4;a=a>>8^255&a^99,r[u]=a,n[a]=u,l=o[c=o[s=o[u]]];let f=16843009*l^65537*c^257*s^16843008*u,d=257*o[a]^16843008*a;for(let r=0;r<4;r++)t[r][u]=d=d<<24^d>>>8,e[r][a]=f=f<<24^f>>>8}for(let r=0;r<5;r++)t[r]=t[r].slice(0),e[r]=e[r].slice(0)}H(t,e){if(4!==t.length)throw new Error("invalid aes block size");const r=this.F[e],n=r.length/4-2,o=[0,0,0,0],a=this.V[e],i=a[0],s=a[1],c=a[2],l=a[3],u=a[4];let f,d,w,p=t[0]^r[0],m=t[e?3:1]^r[1],h=t[2]^r[2],y=t[e?1:3]^r[3],E=4;for(let t=0;t<n;t++)f=i[p>>>24]^s[m>>16&255]^c[h>>8&255]^l[255&y]^r[E],d=i[m>>>24]^s[h>>16&255]^c[y>>8&255]^l[255&p]^r[E+1],w=i[h>>>24]^s[y>>16&255]^c[p>>8&255]^l[255&m]^r[E+2],y=i[y>>>24]^s[p>>16&255]^c[m>>8&255]^l[255&h]^r[E+3],E+=4,p=f,m=d,h=w;for(let t=0;t<4;t++)o[e?3&-t:t]=u[p>>>24]<<24^u[m>>16&255]<<16^u[h>>8&255]<<8^u[255&y]^r[E++],f=p,p=m,m=h,h=y,y=f;return o}},xe=class{constructor(t,e){this.G=t,this.K=e,this.Y=e}reset(){this.Y=this.K}update(t){return this.X(this.G,t,this.Y)}J(t){if(255&~(t>>24))t+=1<<24;else{let e=t>>16&255,r=t>>8&255,n=255&t;255===e?(e=0,255===r?(r=0,255===n?n=0:++n):++r):++e,t=0,t+=e<<16,t+=r<<8,t+=n}return t}$(t){0===(t[0]=this.J(t[0]))&&(t[1]=this.J(t[1]))}X(t,e,r){let n;if(!(n=e.length))return[];const o=ee.bitLength(e);for(let o=0;o<n;o+=4){this.$(r);const n=t.encrypt(r);e[o]^=n[0],e[o+1]^=n[1],e[o+2]^=n[2],e[o+3]^=n[3]}return ee.h(e,o)}},ze=oe._;let Fe=Se&&Ae&&typeof ge.importKey==C,Te=Se&&Ae&&typeof ge.deriveBits==C;class Ie extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r,checkPasswordOnly:n,checkAuthenticationCode:o=!0}){super({start(){Ue(this,t,e,r)},async transform(t,e){const r=this,{password:o,strength:a,et:i,ready:s}=r;o?(await async function(t,e,r,n){const o=await ke(t,e,r,Ne(n,0,he[e])),a=Ne(n,he[e]);if(o[0]!=a[0]||o[1]!=a[1])throw new Error(ie)}(r,a,o,Ne(t,0,he[a]+2)),t=Ne(t,he[a]+2),n?e.error(new Error(ce)):i()):await s;const c=new Uint8Array(t.length-Ee-(t.length-Ee)%fe);e.enqueue(Ce(r,t,c,0,Ee,!0))},async flush(t){const{nt:e,ot:r,it:n,ready:a}=this;if(r&&e){await a;const i=Ne(n,0,n.length-Ee),s=Ne(n,n.length-Ee);let c=v;if(i.length){const t=_e(Re,i);r.update(t);const n=e.update(t);c=ve(Re,n)}const l=Ne(ve(Re,r.digest()),0,Ee);let u=n.length<Ee?1:0;for(let t=0;t<Ee;t++)u|=l[t]^s[t];if(u&&o)throw new Error(se);t.enqueue(c)}}})}}class Oe extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r}){super({start(){Ue(this,t,e,r)},async transform(t,e){const r=this,{password:n,strength:o,et:a,ready:i}=r;let s=v;n?(s=await async function(t,e,r){const n=ue(new Uint8Array(he[e]));return Bt(n,await ke(t,e,r,n))}(r,o,n),a()):await i;const c=new Uint8Array(s.length+t.length-t.length%fe);c.set(s,0),e.enqueue(Ce(r,t,c,s.length,0))},async flush(t){const{nt:e,ot:r,it:n,ready:o}=this;if(r&&e){await o;let a=v;if(n.length){const t=e.update(_e(Re,n));r.update(t),a=ve(Re,t)}const i=ve(Re,r.digest()).slice(0,Ee);t.enqueue(Bt(a,i))}}})}}function Ue(t,e,r,n){Object.assign(t,{ready:new Promise(e=>t.et=e),password:Me(e,r),strength:n-1,it:v})}function Ce(t,e,r,n,o,a){const{nt:i,ot:s,it:c}=t;c.length&&(e=Bt(c,e));const l=e.length-o;let u;for(r=function(t,e){if(e&&e>t.length){const r=t;(t=new Uint8Array(e)).set(r,0)}return t}(r,n+(l-l%fe)),u=0;u<=l-fe;u+=fe){const t=_e(Re,Ne(e,u,u+fe));a&&s.update(t);const o=i.update(t);a||s.update(o),r.set(ve(Re,o),u+n)}return t.it=Ne(e,u),r}async function ke(t,e,r,n){t.password=null;const o=await async function(t,e,r,n,o){if(!Fe)return oe.importKey(e);try{return await ge.importKey("raw",e,r,!1,o)}catch{return Fe=!1,oe.importKey(e)}}(0,r,we,0,me),a=await async function(t,e,r){if(!Te)return oe.L(e,t.salt,pe.iterations,r);try{return await ge.deriveBits(t,e,r)}catch{return Te=!1,oe.L(e,t.salt,pe.iterations,r)}}(Object.assign({salt:n},pe),o,8*(2*ye[e]+2)),i=new Uint8Array(a),s=_e(Re,Ne(i,0,ye[e])),c=_e(Re,Ne(i,ye[e],2*ye[e])),l=Ne(i,2*ye[e]);return Object.assign(t,{keys:{key:s,st:c,passwordVerification:l},nt:new xe(new De(s),Array.from(be)),ot:new ze(c)}),l}function Me(t,e){return e===I?te(t):e}function Ne(t,e,r){return t.subarray(e,r)}function ve(t,e){return t.A(e)}function _e(t,e){return t.R(e)}class Le extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r,checkPasswordOnly:n}){super({start(){je(this,t,e,r)},transform(t,e){const r=this;if(r.password||r.rawPassword){const e=Pe(r,t.subarray(0,12));if(r.password=r.rawPassword=null,0!=(e[11]^r.passwordVerification))throw new Error(ie);t=t.subarray(12)}n?e.error(new Error(ce)):e.enqueue(Pe(r,t))}})}}class Be extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r}){super({start(){je(this,t,e,r)},transform(t,e){const r=this;let n,o;if(r.password||r.rawPassword){r.password=r.rawPassword=null;const e=ue(new Uint8Array(12));e[11]=r.passwordVerification,n=new Uint8Array(t.length+e.length),n.set(We(r,e),0),o=12}else n=new Uint8Array(t.length),o=0;n.set(We(r,t),o),e.enqueue(n)}})}}function je(t,e,r,n){Object.assign(t,{password:e,rawPassword:r,passwordVerification:n}),function(t,e,r){const n=[305419896,591751049,878082192];if(Object.assign(t,{keys:n,ct:new Qt(n[0]),lt:new Qt(n[2])}),r)for(let e=0;e<r.length;e++)Ve(t,r[e]);else for(let r=0;r<e.length;r++)Ve(t,e.charCodeAt(r))}(t,e,r)}function Pe(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=Ze(t)^e[n],Ve(t,r[n]);return r}function We(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=Ze(t)^e[n],Ve(t,e[n]);return r}function Ve(t,e){let[,r]=t.keys;t.ct.append([e]);const n=~t.ct.get();r=Ge(Math.imul(Ge(r+He(n)),134775813)+1),t.lt.append([r>>>24]);const o=~t.lt.get();t.keys=[n,r,o]}function Ze(t){const e=2|t.keys[2];return He(Math.imul(e,1^e)>>>8)}function He(t){return 255&t}function Ge(t){return 4294967295&t}function Ke(t){if(t instanceof ReadableStream)return t;const e=t.getReader();return new ReadableStream({async pull(t){const{value:r,done:n}=await e.read();n?t.close():t.enqueue(r)},cancel:t=>e.cancel(t)})}function Ye(t,e){t=Ke(t);const r=e?{type:e}:{};if(typeof Blob.prototype.stream!=C||new Blob([]).stream()instanceof ReadableStream)return new Response(t).blob().then(t=>e?new Blob([t],r):t);const n=[];return t.pipeTo(new WritableStream({write(t){n.push(t)}})).then(()=>new Blob(n,r))}function qe(t){if(t instanceof WritableStream)return t;const e=t.getWriter();return new WritableStream({write:t=>e.write(t),close:()=>e.close(),abort:t=>e.abort(t)})}const Xe="Invalid codec definition",Je="Reserved compression method",Qe="Invalid codec module",$e="Compression method not supported",tr=[0,8,9,99],er=new Map,rr=new Map;function nr(t={}){const{compressionMethod:r,format:n,codecURI:o,CompressionStream:a,DecompressionStream:i,versionNeeded:s}=t;if(!Number.isInteger(r)||r<0||r>e||typeof n!=M||!n.length)throw new Error(Xe);if(tr.includes(r))throw new Error(Je);const c=typeof a==C||typeof i==C;if(!(c||typeof o==M&&o.length))throw new Error(Xe);er.set(r,{compressionMethod:r,format:n,codecURI:o,versionNeeded:s}),c&&cr(n,{CompressionStream:a,DecompressionStream:i})}function or(t){const e=er.get(t);if(e){let r;er.delete(t),er.forEach(t=>r=r||t.format==e.format),r||rr.delete(e.format)}}function ar(t){return er.get(t)}function ir(){return Array.from(er.values(),t=>Object.assign({},t,rr.get(t.format)))}function sr(t){return rr.get(t)}function cr(t,e){const{CompressionStream:r,DecompressionStream:n}=e;if(typeof r!=C&&typeof n!=C)throw new Error(Qe);rr.set(t,{CompressionStream:r,DecompressionStream:n})}const lr="Invalid uncompressed size",ur="Invalid compressed data",fr="Invalid CRC32",dr="deflate-raw",wr="deflate64-raw",pr="gzip",mr=[31,139,8];class hr extends TransformStream{constructor(t,{chunkSize:e,CompressionStreamFallback:r,CompressionStream:n}){super({});const{compressed:o,encrypted:a,useCompressionStream:i,zipCrypto:s,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:d,inputSize:w}=t,p=this;let m,h,y,E=super.readable;const b=f&&sr(f),S=c&&o&&!u&&!b&&(!a||s)&&Boolean(i&&n);if(a&&!s||!c||S||(m=new $t,E=xr(E,m)),o)if(b)E=zr(E,Rr(b.CompressionStream,f,{level:l,chunkSize:e,compressionMethod:d,uncompressedSize:w}));else if(S)y=new yr,E=zr(E,new n(pr)),E=xr(E,y);else try{E=Dr(E,i,{level:l,chunkSize:e},n,r)}catch(t){let e;try{e=new n(pr)}catch{throw t}E=zr(E,e),E=xr(E,new yr)}a&&(s?E=xr(E,new Be(t)):(h=new Oe(t),E=xr(E,h))),Ar(p,E,()=>{a&&!s||!c||(p.crc32=S?y.crc32:new DataView(m.value.buffer).getUint32(0))})}}class yr extends TransformStream{constructor(){let t,e=10,r=new Uint8Array(0);super({transform(t,n){if(e){const r=Math.min(e,t.length);if(e-=r,!(t=t.subarray(r)).length)return}const o=r.length+t.length;if(o<=8)return void(r=Bt(r,t));const a=o-8,i=Math.min(a,r.length);n.enqueue(Bt(r.subarray(0,i),t.subarray(0,a-i))),r=Bt(r.subarray(i),t.subarray(a-i))},flush(){const e=Pt(r);t.crc32=e.getUint32(0,!0),t.uncompressedSize=e.getUint32(4,!0)}}),t=this}}class Er extends TransformStream{constructor(t,{chunkSize:e,DecompressionStreamFallback:r,DecompressionStream:n}){super({});const{zipCrypto:o,encrypted:a,checkCrc32:i,crc32:s,compressed:c,useCompressionStream:l,deflate64:u,format:f,compressionMethod:d,rawBitFlag:w,outputSize:p}=t;let m,h,y=super.readable;if(a&&(o?y=xr(y,new Le(t)):(h=new Ie(t),y=xr(y,h))),c){const t=f&&sr(f);if(t)y=zr(y,Rr(t.DecompressionStream,f,{chunkSize:e,compressionMethod:d,rawBitFlag:w,uncompressedSize:p}));else try{y=Dr(y,l,{chunkSize:e,deflate64:u},n,r)}catch(t){if(u||p===I)throw t;let e;try{e=new n(pr)}catch{throw t}y=function(t,e,r){const n=new Qt;let o,a,i,s=0,c=!1;const l=new Promise((t,e)=>{a=t,i=e});l.catch(()=>{}),r||a();const u=new TransformStream({start(t){const e=new Uint8Array(10);e.set(mr),t.enqueue(e)},transform(t,e){e.enqueue(t)},async flush(t){c=!0,d();try{await l}finally{w()}const e=new Uint8Array(8),o=Pt(e);o.setUint32(0,n.get(),!0),o.setUint32(4,r,!0),t.enqueue(e)},cancel(t){i(t)}}),f=new TransformStream({transform(t,e){n.append(t),s+=t.length,s>=r?a():c&&d(),e.enqueue(t)},cancel(t){i(t)}});return t=xr(t,u),xr(t=zr(t,e),f);function d(){w(),o=setTimeout(()=>i(new Error(lr)),5e3)}function w(){clearTimeout(o)}}(y,e,p)}y=function(t){const e=t.getReader();return new ReadableStream({async pull(t){let r;try{r=await e.read()}catch(t){if(t&&t.message)throw t;const e=new Error(ur);throw e.cause=t,e}const{value:n,done:o}=r;o?t.close():t.enqueue(n)},cancel:t=>e.cancel(t)})}(y)}i&&(m=new $t,y=xr(y,m)),Ar(this,y,()=>{if(i){const t=new DataView(m.value.buffer);if(s!=t.getUint32(0,!1))throw new Error(fr)}})}}const br=new Map;function Sr(t,e){if(!t)return!1;let r=br.get(t);r||(r=new Map,br.set(t,r));let n=r.get(e);if(n===I){try{new t(e),n=!0}catch{n=!1}r.set(e,n)}return n}function gr(t){return Sr(t,dr)}function Ar(t,e,r){e=xr(e,new TransformStream({flush:r})),Object.defineProperty(t,"readable",{get:()=>e})}function Rr(t,e,r){if(!t)throw new Error($e);return new t(e,r)}function Dr(t,e,r,n,o){const a=e&&n?n:o||n,i=r.deflate64?wr:dr;let s;try{s=new a(i,r)}catch(t){if(!e||!o||a==o)throw t;s=new o(i,r)}return zr(t,s)}function xr(t,e){return Ke(t).pipeThrough(e)}function zr(t,e){const r=e.writable.getWriter(),n=t.getReader();return async function(){try{for(;;){await r.ready;const t=await n.read();if(t.done){await r.close();break}await r.write(t.value)}}catch(t){await async function(t,e){try{await t.abort(e)}catch{}}(r,t),await async function(t,e){try{await t.cancel(e)}catch{}}(n,t)}}(),e.readable}const Fr="data",Tr="deflate",Ir="inflate";class Or extends TransformStream{constructor(t,e){super({});const r=this,{codecType:n}=t;let o;n.startsWith(Tr)?o=hr:n.startsWith(Ir)&&(o=Er),r.outputSize=0;let a=0;const i=new o(t,e),s=super.readable,c=new TransformStream({transform(t,e){t&&t.length&&(a+=t.length,e.enqueue(t))},flush(){Object.assign(r,{inputSize:a})}}),l=new TransformStream({transform(e,n){if(e&&e.length&&(n.enqueue(e),r.outputSize+=e.length,t.outputSize!==I&&r.outputSize>t.outputSize))throw new Error(lr)},flush(){const{crc32:t}=i;Object.assign(r,{crc32:t,inputSize:a})}});Object.defineProperty(r,"readable",{get:()=>s.pipeThrough(c).pipeThrough(i).pipeThrough(l)})}}class Ur extends TransformStream{constructor(t){const e=[];let r=0,n=0;function o(){const n=new Uint8Array(t);let o=0;for(;o<t;){const r=e[0],a=t-o;r.length<=a?(n.set(r,o),o+=r.length,e.shift()):(n.set(r.subarray(0,a),o),e[0]=r.subarray(a),o+=a)}return r-=t,n}(!Number.isFinite(t)||t<1)&&(t=65536),super({transform(a,i){for(e.push(a),r+=a.length;r>t;)n+=t,i.enqueue(o())},flush(t){r&&(n+=r,t.enqueue(function(t,e){const r=new Uint8Array(e);let n=0;for(const e of t)r.set(e,n),n+=e.length;return r}(e,r)))}}),Object.defineProperty(this,"outputSize",{get:()=>n})}}const Cr="Worker startup timeout";let kr,Mr,Nr,vr=()=>{};function _r(t){t.createWorker?Mr=!0:kr=!1}class Lr{constructor(t,{readable:e,writable:r},n,o){const{options:a,config:i,ut:s,useWebWorkers:c,transferStreams:l,workerURI:u}=n;let{createWorker:f}=n;const{signal:d}=s;return Mr&&(f=I),Object.assign(t,{ft:!0,wt:(t.wt||0)+1,readable:e.pipeThrough(new Ur(Ut(i))).pipeThrough(new Br(s),{signal:d}),writable:r,options:Object.assign({},a),ht:n,workerURI:u,createWorker:f,transferStreams:l,terminate:()=>new Promise(e=>{const{yt:r,ft:n}=t;r?(n?t.Et=e:(r.terminate(),e()),t.bt=null):e()}),St(){if(t.ft){const{Et:e}=t;e&&(t.Et=null,t.gt=!0,t.yt.terminate(),e()),t.ft=!1,o(t)}}}),kr===I&&(kr=typeof Worker!=U),(c&&Nr&&(kr&&u||f)?Nr:Pr)(t,i)}}class Br extends TransformStream{constructor({onstart:t,onprogress:e,size:r,onend:n}){let o=0;super({async start(){t&&await jr(t,r)},async transform(t,n){o+=t.length,e&&await jr(e,o,r),n.enqueue(t)},async flush(){n&&await jr(n,o)}})}}async function jr(t,...e){try{await t(...e)}catch{}}function Pr(t,e){return{run:()=>Wr(t,e)}}async function Wr({options:t,readable:e,writable:r,St:n,ht:o},a){let i,s;try{if(t.compressed&&!t.format){const e=t.codecType.startsWith(Tr),r=e?a.CompressionStreamFallback:a.DecompressionStreamFallback,n=e?a.CompressionStream:a.DecompressionStream;if(t.useCompressionStream){if(r&&r.At&&!gr(n))try{await vr(a)}catch{}}else try{await vr(a)}catch{r&&!r.At||(t.useCompressionStream=!0)}}i=new Or(t,a),s=new Ur(Ut(a)),await e.pipeThrough(i).pipeThrough(s).pipeTo(r,{preventClose:!0,preventAbort:!0});const{crc32:n,inputSize:o,outputSize:c}=i;return{crc32:n,inputSize:o,outputSize:c}}catch(t){if(i){const e=s?s.outputSize:0;if(o.outputSize=e,Wt(t))try{t.outputSize=e}catch{}}throw t}finally{n()}}const Vr={type:"module"},Zr="error";let Hr,Gr,Kr,Yr=!0;try{Yr=typeof structuredClone==C&&structuredClone(new DOMException("","AbortError")).code!==I}catch{}var qr;function Xr(t){const{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function Jr(t){const{yt:e}=t;if(e)try{e.terminate()}catch{}t.bt=null}function Qr(t,e,r,n,o=!0){const{createWorker:a}=r;let i,s,c;if(a)i=a();else if(Gr===I||Hr!==t){const a=typeof t==C;s=a?t(o):t;const l=s.startsWith("data:"),u=s.startsWith("blob:");if(l||u){n===I&&(n=!1),n&&(c=Vr);try{i=new Worker(s,c)}catch(o){if(u)try{URL.revokeObjectURL(s)}catch{}if(a&&u)return Qr(t,e,r,n,!1);if(n)throw o;return Qr(t,e,r,!0,!1)}}else{n===I&&(n=!0),n&&(c=Vr);try{s=new URL(s,e)}catch{}try{i=new Worker(s,c)}catch(a){if(n)return Qr(t,e,r,!1,o);throw a}}Hr=t,Gr=s,Kr=c}else i=new Worker(Gr,Kr);return i.addEventListener("message",t=>{r.Rt=!0,$r(r),async function({data:t},e){const{type:r,value:n,messageId:o,result:a,error:i,errorValue:s}=t,{reader:c,writer:l,Dt:u,xt:f,St:d,wt:w}=e,p=()=>e.wt!=w;try{if(i)i.outputSize!==I&&(e.outputSize=i.outputSize),m(function(t,e){const{message:r,stack:n,code:o,name:a,outputSize:i,cause:s,codecImportFailed:c}=t;let l;if(e?l=e.value:(l=Object.assign(new Error(r),{stack:n,code:o,name:a}),s&&(l.cause=Object.assign(new Error(s.message),{name:s.name}))),Wt(l))try{i!==I&&(l.outputSize=i),c&&(l.codecImportFailed=!0),e&&(l.name!==a&&(l.name=a),l.code!==o&&(l.code=o))}catch{}return l}(i,s));else{if("pull"==r){const{value:t,done:r}=await c.read();p()||en({type:Fr,value:t,done:r,messageId:o},e)}if(r==Fr){const t=new Uint8Array(n);await l.ready,await l.write(t),e.outputSize+=t.length,p()||en({type:"ack",messageId:o},e)}"close"==r&&function(t){p()||(u(t),h(),d())}(a)}}catch(i){p()||(Jr(e),m(i))}function m(t){p()||(f(t),h(),Wt(t)&&t.codecImportFailed||d())}function h(){l&&l.releaseLock()}}(t,r)}),i.addEventListener(Zr,t=>tn(t,r)),i.addEventListener("messageerror",t=>tn(t,r)),i}function $r(t){const{zt:e}=t;e&&(clearTimeout(e),t.zt=null)}function tn(t,e){t.preventDefault&&t.preventDefault(),$r(e);const{Rt:r,xt:n,writer:o,St:a}=e;Jr(e),r||(e.yt=null);let i=t.error||new Error(t.message||Zr);r||(i=Object.assign(new Error(i.message||Zr),{Ft:!0}),e.Tt=i),n&&(n(i),o&&o.releaseLock(),r&&a())}function en(t,{yt:e,writer:r,transferStreams:n,Rt:o}){try{const{value:r,readable:a,writable:i}=t,s=[];if(r&&(t.value=jt(r),s.push(t.value.buffer)),n&&Yr&&o?(a&&s.push(a),i&&s.push(i)):t.readable=t.writable=null,s.length)try{return e.postMessage(t,s),!0}catch{Yr=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(t){throw r&&r.releaseLock(),t}}qr=function(t,e){const{baseURI:r,chunkSize:n,workerStartupTimeout:o}=e;let{wasmURI:a}=e;if(!t.bt){let i;typeof a==C&&(a=a());try{i=Qr(t.workerURI,r,t)}catch{return _r(t),Pr(t,e)}Object.assign(t,{yt:i,Rt:!1,gt:!1,Tt:null,bt:{run:async()=>{try{return await async function(t,e){if(!t.yt){const{Tt:e}=t;t.Tt=null;const r=e||new Error(Cr);throw r.Ft=!0,r}let r,n;const o=new Promise((e,o)=>{r=e,n=e=>{const{outputSize:r,ht:n}=t;if(n.outputSize=r,Wt(e)&&e.outputSize===I)try{e.outputSize=r}catch{}o(e)}});Object.assign(t,{reader:null,writer:null,outputSize:0,Dt:r,xt:n,result:o});const{readable:a,options:i}=t,{writable:s,closed:c,It:l}=function(t){const e=new AbortController,{writable:r,readable:n}=new TransformStream,o=n.pipeTo(t,{preventClose:!0,preventAbort:!0,signal:e.signal});return o.catch(()=>{}),{writable:r,closed:o,It:()=>e.abort()}}(t.writable);let u;try{u=en({type:"start",options:i,config:e,readable:a,writable:s},t)}catch(e){l();try{await c}catch{}throw t.St(),e}u||Object.assign(t,{reader:a.getReader(),writer:s.getWriter()});const{workerStartupTimeout:f}=e;!t.Rt&&Number.isFinite(f)&&f>=0&&(t.zt=setTimeout(()=>function(t){if(t.zt=null,t.Rt)return;const{xt:e,writer:r}=t;if(Jr(t),t.yt=null,e){const t=new Error(Cr);t.Ft=!0,e(t),r&&r.releaseLock()}}(t),f));try{const t=await o;return await d(),await c,t}catch(t){await d(),l();try{await c}catch{}throw t}async function d(){if(!u&&!s.locked)try{await s.getWriter().close()}catch{}}}(t,{chunkSize:n,wasmURI:a,baseURI:r,workerStartupTimeout:o})}catch(r){if(r&&r.Ft)return _r(t),Xr(t),Wr(t,e);if(r&&r.codecImportFailed){if(t.reader)return Xr(t),Wr(t,e);t.St()}throw r}}}})}return t.bt},Nr=qr;let rn=[];const nn=[];let on,an,sn=0;async function cn(t,e){const{options:r,config:n}=e,{transferStreams:o,useWebWorkers:a,useCompressionStream:i,compressed:s,checkCrc32:c,computeCrc32:l,encrypted:u,format:f,codecURI:d}=r,{workerURI:w,createWorker:p,maxWorkers:m}=n;f&&(d&&(r.codecURI=function(t,e){try{return new URL(t,e).toString()}catch{return t}}(d,n.baseURI)),await async function(t,e){!rr.has(t)&&e&&cr(t,await(import(/* webpackIgnore: true */ /* @vite-ignore */e)))}(f,r.codecURI)),e.transferStreams=!f&&(o||o===I&&n.transferStreams);const h=!(s||c||l||u),y=f===I||Boolean(r.codecURI);return e.useWebWorkers=!h&&y&&(a||a===I&&n.useWebWorkers),e.workerURI=e.useWebWorkers&&w?w:I,e.createWorker=e.useWebWorkers&&p?p:I,r.useCompressionStream=i||i===I&&n.useCompressionStream,(await async function(){const r=rn.find(t=>!t.ft);if(r)return wn(r),new Lr(r,t,e,E);if(rn.length<m){const r={Ot:sn};return sn++,rn.push(r),new Lr(r,t,e,E)}return new Promise(r=>{nn.push({resolve:r,stream:t,ht:e}),an=n.workerStarvationTimeout,ln()})}()).run();function E(t){if(un(),nn.length){const[{resolve:e,stream:r,ht:n}]=nn.splice(0,1);e(new Lr(t,r,n,E)),ln()}else t.yt?(wn(t),function(t,e){const{config:r}=e,{terminateWorkerTimeout:n}=r;Number.isFinite(n)&&n>=0&&(t.gt?t.gt=!1:t.Ut=setTimeout(async()=>{rn=rn.filter(e=>e!=t);try{await t.terminate()}catch{}},n))}(t,e)):rn=rn.filter(e=>e!=t)}}function ln(){!on&&nn.length&&Number.isFinite(an)&&an>=0&&(on=setTimeout(fn,an))}function un(){on&&(clearTimeout(on),on=null)}function fn(){if(on=null,nn.length){const[{resolve:t,stream:e,ht:r}]=nn.splice(0,1),n=Object.assign({},r,{useWebWorkers:!1,workerURI:I,createWorker:I});t(new Lr({},e,n,dn)),ln()}}function dn(){un(),ln()}function wn(t){const{Ut:e}=t;e&&(clearTimeout(e),t.Ut=null)}const pn="\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 mn(t,e){return hn(t,e,!0)}function hn(t,e,r){return e&&"cp437"==e.trim().toLowerCase()?function(t){let e="";for(let r=0;r<t.length;r++)e+=pn[t[r]];return e}(t):new TextDecoder(e,{ignoreBOM:r}).decode(t)}const yn="HTTP error ",En="HTTP Range not supported",bn="HTTP resource changed",Sn="Writer iterator completed too soon",gn="Writer not initialized",An="Invalid writer (size must be writable)",Rn="Content-Range",Dn="Range",xn="GET",zn="bytes",Fn=16777216,Tn="writable",In=Symbol();class On{constructor(){this.size=0}init(){this.initialized=!0}}class Un extends On{get readable(){return this.createReadable()}createReadable({offset:t=0,size:e,chunkSize:r=Ut(Ot())}={}){const n=this;let o=0;return r=Ct(r),new ReadableStream({async pull(a){const i=e===I?r:Math.min(r,e-o),s=await ho(n,t+o,i);s.length&&(a.enqueue(s),o+=s.length),(e!==I&&o>=e||!s.length&&i)&&a.close()}})}}class Cn extends On{constructor(){super();const t=this,e=new WritableStream({write(e){if(!t.initialized)throw new Error(gn);return t.writeUint8Array(jt(e))}});Object.defineProperty(t,Tn,{get:()=>e})}writeUint8Array(){}}class kn extends Un{constructor(t){super();let e=t.length;for(;"="==t.charAt(e-1);)e--;const r=t.indexOf(",")+1;Object.assign(this,{Ct:t,kt:r,size:Math.floor(.75*(e-r))})}readUint8Array(t,e){const{kt:r,Ct:n}=this,o=new Uint8Array(e),a=4*Math.floor(t/3),i=atob(n.substring(a+r,4*Math.ceil((t+e)/3)+r)),s=t-3*Math.floor(a/4);let c=0;for(let t=s;t<s+e&&t<i.length;t++)o[t-s]=i.charCodeAt(t),c++;return c<o.length?o.subarray(0,c):o}}class Mn extends Cn{constructor(t){super(),Object.assign(this,{contentType:t,data:"data:"+(t||"")+";base64,",Mt:""})}writeUint8Array(t){const e=this;let r,n=e.Mt;const o=e.Mt.length;for(e.Mt="",r=0;r<3*Math.floor((o+t.length)/3)-o;r++)n+=String.fromCharCode(t[r]);for(;r<t.length;r++)e.Mt+=String.fromCharCode(t[r]);n.length>2?e.data+=btoa(n):e.Mt=n+e.Mt}getData(){return this.data+btoa(this.Mt)}}let Nn,vn;class _n extends Un{constructor(t){super(),Object.assign(this,{Nt:t,size:t.size}),vn||(vn=(async()=>{try{const t=new Blob([new Uint8Array(3)]).slice(1,2).stream().getReader();let e=0,r=await t.read();for(;!r.done;)e+=r.value.length,r=await t.read();Nn=1==e}catch{Nn=!1}})())}createReadable(t){const{Nt:e,size:r}=this,{offset:n=0,size:o=r-n}=t||{};if(typeof e.stream==C){if(!n&&o>=r)return Ke(e.stream());if(Nn)return Ke(e.slice(n,n+o).stream())}return super.createReadable(t)}async readUint8Array(t,e){const r=this,n=t+e,o=!t&&n>=r.size?r.Nt:r.Nt.slice(t,n);let a=await o.arrayBuffer();return a.byteLength>e&&(a=a.slice(t,n)),new Uint8Array(a)}}class Ln extends On{constructor(t){super();const e=this,r=new TransformStream;Object.defineProperty(e,Tn,{get:()=>r.writable}),e.contentType=t,e.vt=Ye(r.readable,t),e.vt.catch(()=>{})}getData(){return this.vt}}class Bn extends _n{constructor(t){super(new Blob([t],{type:"text/plain"}))}}class jn extends Ln{constructor(t){super(),Object.assign(this,{encoding:t,_t:!t||"utf-8"==t.toLowerCase()})}async getData(){const{encoding:t,_t:e}=this,r=await super.getData();return r.text&&e?r.text():function(t,e){return hn(t,e,!1)}(new Uint8Array(await r.arrayBuffer()),t)}}class Pn extends Un{constructor(t,e){super(),Vn(this,t,e)}async init(){await Zn(this,ro,Qn),super.init()}createReadable(t){const e=this,{useRangeHeader:r,forceRangeRequests:n,size:o}=e;if((r||n)&&o!==I){const{offset:r=0,size:n=o-r}=t||{};if(n>0&&r<o)return function(t,e,r){let n,o=e,a=0,i=r;return new ReadableStream({start:()=>s(),async pull(t){n||await s();const{value:e,done:r}=await n.read();if(r)throw new Error(En);const o=e.length>a?e.subarray(0,a):e;a-=o.length,i-=o.length,o.length&&t.enqueue(o),a||(await async function(){const t=n;n=I,await t.cancel()}(),i||t.close())},cancel:t=>n&&n.cancel(t)});async function s(){const e=Math.min(t.maximumRangeSize,i),r=await ro(xn,t,Xn(t,o,e));if(206!=r.status)throw new Error(En);const s=r.headers.get(Rn);if(s){const t=Number(s.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(t)&&t!=o)throw new Error(En)}qn(t,r),Yn(t,r),o+=e,a=e,n=r.body.getReader()}}(e,r,Math.min(n,o-r))}return super.createReadable(t)}readUint8Array(t,e){return Hn(this,t,e,ro,Qn)}}class Wn extends Un{constructor(t,e){super(),Vn(this,t,e)}async init(){await Zn(this,no,$n),super.init()}readUint8Array(t,e){return Hn(this,t,e,no,$n)}}function Vn(t,e,r){const{preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s=!0,maximumRangeSize:c=Fn,fetch:l}=r;delete(r=Object.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,Object.assign(t,{url:e,options:r,preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s,maximumRangeSize:c,fetch:l})}async function Zn(t,e,r){const{url:n,preventHeadRequest:o,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:s}=t;if(function(t){const{baseURI:e}=Ot(),{protocol:r}=new URL(t,e);return"http:"==r||"https:"==r}(n)&&(a||i)&&(typeof o==U||o)){const n=await e(xn,t,Xn(t,s?-22:void 0)),o=n.headers.get("Accept-Ranges");if(!(i||o&&o.toLowerCase()==zn))throw new Error(En);{if(s){const e=new Uint8Array(await n.arrayBuffer());206==n.status&&e.length==d&&(t.Lt=e)}Yn(t,n);const o=Gn(n);o===I?await eo(t,e,r):t.size=o}}else await eo(t,e,r)}async function Hn(t,e,r,n,o){const{useRangeHeader:a,forceRangeRequests:i,Lt:s,size:c,options:l}=t;if(a||i){if(s&&e==c-d&&r==d)return s;if(e>=c||0===r)return v;{e+r>c&&(r=c-e);const o=await n(xn,t,Xn(t,e,r));if(206!=o.status)throw new Error(En);const a=o.headers.get(Rn);if(a){const t=Number(a.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(t)&&t!=e)throw new Error(En)}qn(t,o),Yn(t,o);const i=new Uint8Array(await o.arrayBuffer());if(i.length!=r)throw new Error(En);return i}}{const{data:n}=t;return n||await o(t,l),t.data.subarray(e,e+r)}}function Gn(t){const e=t.headers.get(Rn);if(e){const t=e.trim().split(/\s*\/\s*/)[1];if(t&&"*"!=t){const e=Number(t);if(!Number.isNaN(e))return e}}}function Kn({headers:t}){return{Bt:t.get("Etag")||I,lastModified:t.get("Last-Modified")||I}}function Yn(t,e){const{checkResourceChanges:r,jt:n}=t;r&&!n&&206==e.status&&(t.jt=Kn(e))}function qn(t,e){const{checkResourceChanges:r,jt:n,size:o}=t;if(r){const t=Gn(e);if(t!==I&&o!==I&&t!=o)throw new Error(bn);if(n){const t=Kn(e);if(Object.entries(n).some(([e,r])=>r!==I&&t[e]!==I&&r!=t[e]))throw new Error(bn)}}}function Xn(t,e=0,r=1){return Object.assign({},Jn(t),{[Dn]:zn+"="+(e<0?e:e+"-"+(e+r-1))})}function Jn({options:t}){const{headers:e}=t;if(e)return Symbol.iterator in e?Object.fromEntries(e):e}async function Qn(t){await to(t,ro)}async function $n(t){await to(t,no)}async function to(t,e){const r=await e(xn,t,Jn(t));t.data=new Uint8Array(await r.arrayBuffer()),t.size=t.data.length}async function eo(t,e,r){if(t.preventHeadRequest)await r(t,t.options);else{const n=await e("HEAD",t,Jn(t)),o=n.headers.get("Content-Length");o&&!n.headers.get("Content-Encoding")?t.size=Number(o):await r(t,t.options)}}async function ro(t,{fetch:e=fetch,options:r,url:n},o){const a=await e(n,Object.assign({},r,{method:t,headers:o}));if(a.status>=200&&a.status<=299)return a;throw 416==a.status?new Error(En):new Error(yn+(a.statusText||a.status))}function no(t,{url:e},r){return new Promise((n,o)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status>=200&&a.status<=299){const t=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(e=>{const r=e.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,t=>t.toUpperCase()),t.push(r)}),n({status:a.status,arrayBuffer:()=>a.response,headers:new Map(t)})}else o(416==a.status?new Error(En):new Error(yn+(a.statusText||a.status)))},!1),a.addEventListener("error",t=>o(t.detail?t.detail.error:new Error("Network error")),!1),a.open(t,e),r)for(const t of Object.entries(r))a.setRequestHeader(t[0],t[1]);a.responseType="arraybuffer",a.send()})}class oo extends Un{constructor(t,e={}){super(),Object.assign(this,{url:t,reader:e.useXHR&&!e.fetch?new Wn(t,e):new Pn(t,e)})}set size(t){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(t){return this.reader.createReadable(t)}readUint8Array(t,e){return this.reader.readUint8Array(t,e)}}class ao extends oo{constructor(t,e={}){super(t,Object.assign({},e,{useRangeHeader:!0}))}}class io extends Un{constructor(t){super(),t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),Object.assign(this,{Pt:t,size:t.length})}readUint8Array(t,e){return this.Pt.slice(t,t+e)}}class so extends Cn{constructor(t){super(),this.Wt=t||262144}init(t=0){Object.assign(this,{offset:0,Pt:new Uint8Array(t>0?t:this.Wt)}),super.init()}writeUint8Array(t){const e=this,r=e.offset+t.length;if(r>e.Pt.length){let t=e.Pt.length?2*e.Pt.length:e.Wt;for(;t<r;)t*=2;const n=e.Pt;e.Pt=new Uint8Array(t),e.Pt.set(n)}e.Pt.set(t,e.offset),e.offset+=t.length}getData(){return this.offset===this.Pt.length?this.Pt:this.Pt.slice(0,this.offset)}}class co extends Un{constructor(t){super(),this.Vt=t}async init(){const t=this;t.Zt=0;const e=t.Vt=await Promise.all(t.Vt.map(mo));t.Ht=e.map(e=>{const r=t.size;return t.size+=e.size,r}),super.init()}Gt(t){const{Ht:e,size:r}=this,n=e[t];return n===I?r:n}async readUint8Array(t,e){const r=this,{Vt:n}=this;let o,a=0,i=t;for(;n[a]&&i>=n[a].size;)i-=n[a].size,a++;const s=n[a];if(s){const n=s.size;if(i+e<=n)o=await ho(s,i,e);else{const a=n-i;o=Bt(await ho(s,i,a),await r.readUint8Array(t+a,e-a))}}else o=v;return r.Zt=Math.max(a,r.Zt),o}}class lo extends On{constructor(t,e=4294967295){super();const r=this;let n,o,a;Object.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});const i=new WritableStream({async write(e){if(e===In)return void(a&&await c());const{availableSize:i}=r;if(a)e.length>=i?(await s(e.subarray(0,i)),await c(),e.length>i&&await this.write(e.subarray(i))):await s(e);else{const{value:i,done:s}=await t.next();if(s&&!i)throw new Error(Sn);n=i,n.size=0,n.maxSize&&(r.maxSize=n.maxSize),r.availableSize=r.maxSize,await po(n),o=i.writable,a=o.getWriter(),await this.write(e)}},async close(){a&&(await a.ready,await l())},async abort(t){a&&await a.abort(t)}});async function s(t){const e=t.length;e&&(await a.ready,await a.write(t),n.size+=e,r.availableSize-=e)}async function c(){await l(),r.diskOffset+=n.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function l(){await a.close()}Object.defineProperty(r,Tn,{get:()=>i})}async closeDisk(){const t=this.writable.getWriter();try{await t.ready,await t.write(In)}finally{t.releaseLock()}}}class uo{constructor(t){return Array.isArray(t)&&(t=new co(t)),(t instanceof ReadableStream||typeof t.getReader==C)&&(t={readable:Ke(t)}),t}}class fo{constructor(t){t.writable===I&&typeof t.next==C&&(t=new lo(t)),(t instanceof WritableStream||typeof t.getWriter==C)&&(t={writable:qe(t)});try{t.size=t.size===I?0:t.size}catch{throw new Error(An)}return t}}function wo(t){return Boolean(t&&t.getData)}async function po(t,e){if(!t.init||t.initialized)return Promise.resolve();await t.init(e)}async function mo(t){return t=new uo(t),await po(t),t.size!==I&&t.readUint8Array||(t=new _n(await Ye(t.readable)),await po(t)),t}function ho(t,e,r){return t.readUint8Array(e,r)}function yo(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?Un.prototype.createReadable.call(t,e):t.readable}function Eo(t,e,r){if(!t.some(t=>t.reason==e)){const n={reason:e};r!==I&&(n.filename=r),t.push(n)}}const bo="filename",So="rawFilename",go="comment",Ao="rawComment",Ro="uncompressedSize",Do="compressedSize",xo="offset",zo="diskNumberStart",Fo="lastModDate",To="rawLastModDate",Io="lastAccessDate",Oo="rawLastAccessDate",Uo="creationDate",Co="rawCreationDate",ko="internalFileAttributes",Mo="externalFileAttributes",No="msdosAttributesRaw",vo="msdosAttributes",_o="msDosCompatible",Lo="zip64",Bo="encrypted",jo="version",Po="versionMadeBy",Wo="zipCrypto",Vo="directory",Zo="executable",Ho="compressionMethod",Go="signature",Ko="extraField",Yo="unixMode",qo="setuid",Xo="setgid",Jo="sticky",Qo=[bo,So,Ro,Do,Fo,To,go,Ao,Io,Oo,Uo,Co,xo,zo,ko,Mo,No,vo,_o,Lo,Bo,jo,Po,Wo,Vo,Zo,"symlink",Ho,Go,"crc32",Ko,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",Yo,"unixExternalUpper",qo,Xo,Jo,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class $o{constructor(t){Qo.forEach(e=>this[e]=t[e])}}const ta=new Set([1,m,10,h,28789,25461,y,E,b,22613,13]);function ea(t,e,r){return t?e?12:16+4*r:0}const ra="File format is not recognized",na="End of central directory not found",oa="End of Zip64 central directory locator not found",aa="Central directory header not found",ia="Local file header not found",sa="Zip64 extra field not found",ca="File contains encrypted entry",la="Encryption method not supported",ua="Split zip file",fa="Overlapping entry found",da="Entry data out of bounds",wa="Ambiguous archive",pa="Encrypted central directory is not supported",ma="Unsafe filename",ha="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",ya="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Ea="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",ba="64-bit value exceeds Number.MAX_SAFE_INTEGER",Sa="unsorted central directory",ga="unknown version needed to extract",Aa="compressed patched data",Ra="malformed extra field",Da="unknown zip64 extensible data",xa="wrapped entries count",za="appended data",Fa="prepended data",Ta="prepended central directory",Ia="trailing central directory data",Oa="duplicate filename",Ua="mismatched zip64 end of central directory record",Ca="multiple end of central directory records",ka="mismatched local file header (filename)",Ma="mismatched local file header (general purpose bit flag)",Na="mismatched local file header (compression method)",va="mismatched local file header (crc32 or sizes)",_a=/^[a-zA-Z]:/,La="utf-8",Ba="cp437",ja=[[Ro,t],[Do,t],[xo,t],[zo,e]],Pa={[e]:{Kt:Ri,bytes:4},[t]:{Kt:Di,bytes:8}},Wa=BigInt(Number.MAX_SAFE_INTEGER);class Va{constructor(t,e={}){Object.assign(this,{reader:new uo(t),options:e,Yt:new Map})}async*getEntriesGenerator(n={}){const a=this;let{reader:i}=a;if(await po(i),i.size!==I&&i.readUint8Array||(i=new _n(await Ye(i.readable)),await po(i)),i.size<d)throw new Error(ra);const c=a.warnings=[],m=ii(n,a.options),h=m==et,y=m!=nt,E=li(yi(a,n,J),m),b=function(t,e){if(t===I)return e;if(!ai(t))throw new Error(ya);return t}(yi(a,n,"filenameValidation"),m),S=yi(a,n,"normalizeFilename"),{qt:z,Xt:F}=await ui(i,y,E);if(!z)throw await async function(t){return await oi(t)==o}(i)?new Error(ua):new Error(na);y&&F>1&&hi(Ca);const T=Pt(z);let O=Ri(T,12),U=Ri(T,16);const C=z.offset,k=Ai(T,20),M=C+d+k,N=i.size-M;N>E&&hi(za),N>0&&Eo(c,za);let _=Ai(T,4);const L=i.Zt||0;let B,j,P,W,V,Z=Ai(T,6),H=Ai(T,10),G=0,K=p;const Y=U==t||O==t||H==e||Z==e;if(U!=t&&Z!=e&&(U+=ni(i,Z)),Y){const r=z.offset>=w?await ho(i,z.offset-w,w):v,n=Pt(r);if(r.length==w&&Ri(n,0)==u){U=ni(i,Ri(n,4))+Di(n,8);let r=await ho(i,U,p),o=Pt(r);const a=z.offset-w-p;if((r.length<p||Ri(o,0)!=l)&&U!=a&&a>=0){const t=U;U=a,U>t&&(G=U-t),r=await ho(i,U,p),o=Pt(r)}if(r.length<p||Ri(o,0)!=l)throw new Error(oa);if(P=!0,W=Di(o,4)>44,W){const t=Math.min(Di(o,4)-44,i.size-U-p);t>0&&(K+=t,V=function(t){const e={rawExtensibleData:t};if(t.length>=28){const r=Pt(t),n=Ai(r,26);Object.assign(e,{compressionMethod:Ai(r,0),compressedSize:Di(r,2),uncompressedSize:Di(r,10),encryptionAlgorithm:Ai(r,18),bitLength:Ai(r,20),flags:Ai(r,22),hashAlgorithm:Ai(r,24),hashData:t.subarray(28,28+n)})}return e}(await ho(i,U+p,t)))}_==e?_=Ri(o,16):_!=Ri(o,16)&&mi(h,c,Ua),Z==e?Z=Ri(o,20):Z!=Ri(o,20)&&mi(h,c,Ua),H==e?H=Di(o,32):H!=Di(o,32)&&mi(h,c,Ua),O==t?O=Di(o,40):O!=Di(o,40)&&mi(h,c,Ua),U=ni(i,Z)+Di(o,48)+G}}let q=O;const X=z.offset-(P?K+w:0);if(U>=i.size&&(G=i.size-U-O-d,U=i.size-O-d),L!=_)throw new Error(ua);if(U<0)throw new Error(ra);let Q=0,rt=await ho(i,U,O),ot=Pt(rt);if(O){if(rt.length<4)throw new Error(ra);const t=X-O;if(U!=t&&Z==_){const e=Ri(ot,Q)==s||Boolean(V&&V.compressedSize)||Ka(ot);let r=!e;if(!r&&t>=0&&t+4<=i.size&&(r=Ri(Pt(await ho(i,t,4)),0)==s),r){const r=U;U=t,U>r&&(G+=U-r,B=e),rt=await ho(i,U,O),ot=Pt(rt)}}}const at=X-U;if(O!=at&&at>=0&&Z==_&&(O=at,rt=await ho(i,U,O),ot=Pt(rt)),U<0||U>=i.size)throw new Error(ra);a.directoryOffset=U,a.directoryLength=q;const it=Ei(a,n,"decryptCentralDirectory");let st,ct;if(it&&H&&rt.length>=4&&Ri(ot,0)!=s&&(W||Ka(ot))){const t=function(t,e,r){const n=t&&t.compressedSize?t.compressedSize:e;return n>0&&n<=r?n:r}(V,q,rt.length);ct=rt.subarray(t),rt=await it(rt.subarray(0,t),V),ot=Pt(rt),q=rt.length,st=!0}V&&!st&&(rt.length<4||Ri(ot,0)==s)&&Eo(c,Da),j=U;const lt=yi(a,n,"filenameEncoding"),ut=yi(a,n,"commentEncoding"),ft=new Set;let dt,wt=-1;const pt=!h&&!P;!H&&pt&&(H=Ya(ot,rt,Q),H&&Eo(c,xa));for(let t=0;t<H;t++){const o=new Ga(i,a.options);if(Q+f>rt.length||Ri(ot,Q)!=s){if(0==t&&!st&&(W||Ka(ot)))throw new Error(pa);throw new Error(aa)}Xa(o,ot,Q+6);const l=Boolean(o.bitFlag.languageEncodingFlag),u=Q+f,d=u+o.filenameLength,w=d+o.extraFieldLength,p=Ai(ot,Q+4),m=!(p>>8),h=p>>8==3,y=rt.subarray(u,d),E=Ai(ot,Q+32),z=w+E,F=rt.subarray(w,z),T=l,O=l,U=Ri(ot,Q+38),C=U&r,k={readOnly:Boolean(1&C),hidden:Boolean(2&C),system:Boolean(4&C),directory:Boolean(16&C),archive:Boolean(32&C)},M=Ri(ot,Q+42),N=Ei(a,n,"decodeText")||mn,v=T?La:lt||Ba,_=O?La:ut||Ba;let L=N(y,v,$);if(L===I&&(L=mn(y,v)),S){const t=S(L);t!==I&&(L=t)}if(ci(L,b)){const t=new Error(ma);throw t.filename=L,t}let B=N(F,_,tt);B===I&&(B=mn(F,_)),Object.assign(o,{index:t,Jt:st,versionMadeBy:p,msDosCompatible:m,zip64:!1,compressedSize:0,uncompressedSize:0,Qt:E,offset:M,diskNumberStart:Ai(ot,Q+34),internalFileAttributes:Ai(ot,Q+36),externalFileAttributes:U,msdosAttributesRaw:C,msdosAttributes:k,rawFilename:y,filenameUTF8:T,commentUTF8:O,rawExtraField:rt.subarray(d,w),rawComment:F,filename:L,comment:B}),Ja(o,o,ot,Q+6)&&Eo(c,Ra,L),o.offset+=G;const P=ni(i,o.diskNumberStart)+o.offset;j=Math.min(P,j),P<wt&&Eo(c,Sa,L),wt=P,(o.version&r)>63&&Eo(c,ga,L),32&~o.rawBitFlag||Eo(c,Aa,L),ft.has(o.filename)&&(dt=!0),ft.add(o.filename);const V=o.externalFileAttributes>>16&e;o.unixMode===I&&16877&V&&(o.unixMode=V);const Z=Boolean(o.unixMode&R),K=Boolean(o.unixMode&D),Y=Boolean(512&o.unixMode),q=40960==((o.unixMode===I?V:o.unixMode)&g),X=!q&&(o.unixMode!==I?!!(73&o.unixMode):h&&!!(73&V)),J=o.unixMode!==I&&(o.unixMode&g)==A,et=(V&g)==A;Object.assign(o,{setuid:Z,setgid:K,sticky:Y,symlink:q,unixExternalUpper:V,executable:X,directory:J||et||m&&k.directory||o.filename.endsWith(x),zipCrypto:o.encrypted&&!o.extraFieldAES});const nt=new $o(o);if(nt.getData=(t,e)=>o.getData(t,nt,a.Yt,e),nt.arrayBuffer=async t=>{const e=new TransformStream,r=Ye(e.readable).then(t=>t.arrayBuffer());return r.catch(()=>{}),await o.getData(e,nt,a.Yt,Object.assign({},t,{preventClose:!1})),r},Q=z,t==H-1&&pt){const t=Ya(ot,rt,Q);t&&(H+=t,Eo(c,xa))}const{onprogress:at}=n;if(at)try{await at(t+1,H,new $o(o))}catch{}yield nt}let mt=Q,ht=qa(rt.subarray(Q))||(st?qa(ct):I);if(!ht&&!st){const t=U+Q,e=Math.min(X-t,65541);e>=6&&(ht=qa(await ho(i,t,e)))}ht&&(a.digitalSignature=ht,mt=Q+6+ht.length),(Q!=q&&mt!=q||!st&&Q!=O&&mt!=O)&&mi(h,c,Ia),dt&&mi(h,c,Oa);const yt=yi(a,n,"extractPrependedData"),Et=yi(a,n,"extractAppendedData"),bt=(h||yt)&&H&&4==j&&await async function(t){const e=await oi(t);return e==o||808471376==e}(i)?4:0;return h&&(G||H&&j>bt)&&hi(Fa),(G||H&&j>4)&&Eo(c,Fa),B&&Eo(c,Ta),yt&&(a.prependedData=j>bt?await ho(i,bt,j-bt):v),a.comment=k?await ho(i,C+d,k):v,Et&&(a.appendedData=M<i.size?await ho(i,M,i.size-M):v),!0}async getEntries(t={}){const e=[];for await(const r of this.getEntriesGenerator(t))e.push(r);return e}async close(){const{reader:t}=this;t.readUint8Array||!t.readable||t.readable.locked||await t.readable.cancel()}[_](){return this.close()}}class Za{constructor(t={}){let e;const{readable:r,writable:n}=new TransformStream({start(t){e=t}}),o=new Va(r,t),a=o.getEntriesGenerator(),i=new Set;this.readable=new ReadableStream({async pull(t){const{done:e,value:r}=await a.next();if(e)return t.close();const n=function(t,e){const{readable:r,writable:n}=new TransformStream;let o;const a={cancel:async t=>{e.delete(a),await(o?o.cancel(t):r.cancel(t))}};return a.readable=new ReadableStream({async pull(i){o||(o=r.getReader(),e.add(a),async function(){try{await t.getData(n,{preventClose:!1})}catch(t){try{await n.abort(t)}catch{}}finally{e.delete(a)}}());const{done:s,value:c}=await o.read();s?i.close():i.enqueue(c)},cancel:t=>a.cancel(t)},{highWaterMark:0}),a}(r,i),o={...r,readable:n.readable};delete o.getData,Object.defineProperties(o,{localDirectory:{get:()=>r.localDirectory,enumerable:!0},warnings:{get:()=>r.warnings,enumerable:!0}}),t.enqueue(o)},async cancel(t){const r=Array.from(i);i.clear(),e.error(t),await Promise.allSettled(r.map(e=>e.cancel(t))),await Promise.allSettled([a.return(),o.close()])}}),this.writable=n}}async function Ha(t,e={}){if(t=new uo(t),await po(t),t.size!==I&&t.readUint8Array||(t=new _n(await Ye(t.readable)),await po(t)),t.size<d)return!1;const r=ii(e,{}),n=r!=nt,o=li(e[J],r),{qt:a,Xt:i}=await ui(t,n,o);if(!a||r==et&&i>1)return!1;const s=Ai(Pt(a),20),c=a.offset+d+s;return t.size-c<=o}class Ga{constructor(t,e){Object.assign(this,{reader:t,options:e})}async getData(t,e,o,i={}){const s=this,c=Ot(),{reader:l,index:u,offset:f,diskNumberStart:d,extraFieldAES:w,extraFieldZip64:p,compressionMethod:m,bitFlag:h,rawBitFlag:y,crc32:E,rawLastModDate:b,uncompressedSize:S,compressedSize:g}=s,{dataDescriptor:A}=h,R=e.localDirectory={},D=e.warnings=[],x=ni(l,d)+f,F=await ho(l,x,z),T=Pt(F);let O=yi(s,i,L),U=yi(s,i,B);const C=pt(yi(s,i,j)),k=Boolean(C),M=!0===C;if(wt(O,U),O=O&&O.length&&O,U=U&&U.length&&U,w&&99!=w.originalCompressionMethod)throw new Error($e);if(F.length<z||Ri(T,0)!=n)throw new Error(ia);Xa(R,T,4);const{extraFieldLength:N,filenameLength:_}=R,G=R.dataOffset=x+z+_+N,K=yi(s,i,"checkLocalDirectory"),Y=ii(i,s.options),q=function(t,e){return t===I?e!=nt:Boolean(t)}(K,Y),X=yi(s,i,"checkLocalFilename"),J=function(t,e){return t===I?e==et:Boolean(t)}(X===I?K:X,Y);let Q=v;if(J&&(_||N)){const t=await ho(l,x+z,_+N);Q=t.subarray(0,_),R.rawExtraField=t.subarray(_)}else R.rawExtraField=N?await ho(l,x+z+_,N):v;J&&(R.rawFilename=Q),Ja(s,R,T,4,!0)&&Eo(D,Ra),function(t,e,r,n,o){const{rawFilename:a}=t,i=!o,s=t.Jt&&!(8192&~e.rawBitFlag);!n||s||r.length==a.length&&!r.some((t,e)=>t!=a[e])||mi(i,o,ka),(2057&e.rawBitFlag)!=(2057&t.rawBitFlag)&&mi(i,o,Ma),e.compressionMethod!=t.compressionMethod&&mi(i,o,Na),e.bitFlag.dataDescriptor||s||!(e.crc32||e.compressedSize||e.uncompressedSize)||e.crc32==t.crc32&&e.compressedSize==t.compressedSize&&e.uncompressedSize==t.uncompressedSize||mi(i,o,va)}(s,R,Q,J,q?I:D);const{lastAccessDate:$,creationDate:tt,uid:rt,gid:ot}=R;$&&(e.lastAccessDate=$),tt&&(e.creationDate=tt),rt!==I&&e.uid===I&&(e.uid=rt),ot!==I&&e.gid===I&&(e.gid=ot);const at=yi(s,i,"checkPasswordOnly"),it=s.encrypted&&R.encrypted&&(!M||at),st=it&&!w;if(M||(e.zipCrypto=st),it&&!(64&~R.rawBitFlag))throw new Error(la);const ct=k?I:ar(m);if(0!=m&&8!=m&&9!=m&&!ct&&!k)throw new Error($e);if(it){if(!st&&(w.strength<1||w.strength>3))throw new Error(la);if(!O&&!U)throw new Error(ca)}if(G+g>l.size)throw new Error(da);const lt=g,ut=Ke(l.createReadable({offset:G,size:lt})),mt=ft(yi(s,i,P));dt(mt);let ht=yi(s,i,"checkOverlappingEntry");const yt=yi(s,i,"checkOverlappingEntryOnly");yt&&(ht=!0);const{onstart:Et,onprogress:bt,onend:St}=i,gt=0!=m&&!k,At=k?g-ea(it,st,w&&w.strength):S,Rt=9==m;let Dt=yi(s,i,V);Rt&&(Dt=!1);const xt=yi(s,i,"checkCrc32"),zt=(xt===I?yi(s,i,"checkSignature"):xt)&&!k&&(!it||st||w&&1==w.vendorVersion),Ft={options:{codecType:Ir,password:O,rawPassword:U,zipCrypto:st,encryptionStrength:w&&w.strength,checkCrc32:zt,checkAuthenticationCode:yi(s,i,"checkAuthenticationCode"),passwordVerification:st&&(A?b>>>8&r:E>>>24&r),outputSize:At,crc32:E,compressed:gt,encrypted:it,useWebWorkers:yi(s,i,W),useCompressionStream:Dt,transferStreams:yi(s,i,Z),deflate64:Rt,format:ct?ct.format:I,codecURI:ct?ct.codecURI:I,compressionMethod:m,rawBitFlag:y,checkPasswordOnly:at},config:c,ut:{signal:mt,size:lt,onstart:Et,onprogress:bt,onend:St}};let Tt,It,Ut;ht&&await async function({reader:t,$t:e,index:r,offset:n,crc32:o,compressedSize:i,uncompressedSize:s,dataOffset:c,dataDescriptor:l,extraFieldZip64:u,Yt:f}){let d=0;if(l&&(d=u?20:12),d){const r=await ho(t,c+i,d+4),n=Pt(r);let l=r.length==d+4&&Ri(n,0)==a;if(l){const t=ri(n,4,u);(e.encrypted&&!e.zipCrypto||t.crc32==o)&&t.compressedSize==i&&t.uncompressedSize==s?d+=4:l=!1}if(r.length>=d){const t=ri(n,l?4:0,u);t.signature=l,e.localDirectory.dataDescriptor=t}}const w={start:n,end:c+i+d,$t:e};for(const[t,e]of f)if(t!=r&&w.start<e.end&&e.start<w.end){const t=new Error(fa);throw t.overlappingEntry=e.$t,t}f.set(r,w)}({reader:l,$t:e,index:u,offset:x,crc32:E,compressedSize:g,uncompressedSize:S,dataOffset:G,dataDescriptor:A||R.bitFlag.dataDescriptor,extraFieldZip64:p||R.extraFieldZip64,Yt:o});try{if(!yt){at&&(t=new WritableStream),t=new fo(t),await po(t,function(t,e,r){return Math.min(t,r?1032*e:e)}(At,g,gt)),({writable:Tt}=t);const{outputSize:e}=await cn({readable:ut,writable:Tt},Ft);if(e!=At)throw Object.assign(new Error(lr),{outputSize:e});t.size+=e}}catch(e){const{outputSize:r}=Ft;if(r!==I?t.size+=r:Wt(e)&&e.outputSize!==I&&(t.size+=e.outputSize),!at||!Wt(e)||e.message!=ce)throw It=e,Ut=!0,e}finally{if((wo(t)||!yi(s,i,H))&&Tt&&!Tt.locked){const t=Tt.getWriter();if(Ut)try{await t.abort(It)}catch{}else await t.close()}}return at||yt?I:t.getData?t.getData():Tt}}function Ka(t){const e=Math.min(t.byteLength,1024)-3;for(let r=0;r<e;r++)if(134630224==Ri(t,r))return!0;return!1}function Ya(t,e,r){let n=0;for(;r+f<=e.length&&Ri(t,r)==s;)r+=f+Ai(t,r+28)+Ai(t,r+30)+Ai(t,r+32),n++;return n%65536?0:n}function qa(t){if(t.length>=6){const e=Pt(t);if(Ri(e,0)==i){const r=Ai(e,4);if(6+r<=t.length)return t.subarray(6,6+r)}}}function Xa(t,e,r){const n=t.rawBitFlag=Ai(e,r+2),o=!(1&~n),a=Ri(e,r+6);Object.assign(t,{encrypted:o,version:Ai(e,r),bitFlag:{level:(6&n)>>1,dataDescriptor:!(8&~n),languageEncodingFlag:(n&S)==S},rawLastModDate:a,lastModDate:bi(a),filenameLength:Ai(e,r+22),extraFieldLength:Ai(e,r+24)})}function Ja(t,e,r,n,o){const{rawExtraField:a}=e,i=e.extraField=new Map,s=Pt(a);let c=0,l=!1;try{for(;c<a.length;){const t=Ai(s,c),e=Ai(s,c+2);i.set(t,{type:t,data:a.slice(c+4,c+4+e)}),c+=4+e}}catch{l=!0}c>a.length&&(l=!0);const u=Ai(r,n+4);Object.assign(e,{signature:Ri(r,n+10),crc32:Ri(r,n+10),compressedSize:Ri(r,n+14),uncompressedSize:Ri(r,n+18)});const f=i.get(1);f&&(function(t,e){e.zip64=!0;const r=Pt(t.data),n=ja.filter(([t,r])=>e[t]==r),o=n.reduce((t,[,e])=>t+Pa[e].bytes,0);if(t.data.length<o)throw new Error(sa);for(let o=0,a=0;o<n.length;o++){const[i,s]=n[o],c=Pa[s];e[i]=t[i]=c.Kt(r,a),a+=c.bytes}}(f,e),e.extraFieldZip64=f);const d=i.get(28789);d&&(Qa(d,bo,So,e,t),e.extraFieldUnicodePath=d);const w=i.get(25461);w&&(Qa(w,go,Ao,e,t),e.extraFieldUnicodeComment=w);const p=i.get(m);p&&p.data.length>=7?(function(t,e,r){const n=Pt(t.data),o=gi(n,4);Object.assign(t,{vendorVersion:gi(n,0),vendorId:gi(n,2),strength:o,originalCompressionMethod:r,compressionMethod:Ai(n,5)}),e.compressionMethod=t.compressionMethod,1!=t.vendorVersion&&(e.crc32=I)}(p,e,u),e.extraFieldAES=p):e.compressionMethod=u;const S=i.get(13);S&&($a(S,e),e.extraFieldPkwareUnix=S);const g=i.get(22613);g&&($a(g,e),e.extraFieldUnixType1=g);const A=i.get(10);A&&(function(t,e){const r=Pt(t.data);let n,o=4;try{for(;o<t.data.length&&!n;){const e=Ai(r,o),a=Ai(r,o+2);1==e&&(n=t.data.slice(o+4,o+4+a)),o+=4+a}}catch{}if(n&&24==n.length){const r=Pt(n),o=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),i=r.getBigUint64(16,!0);Object.assign(t,{rawLastModDate:o,rawLastAccessDate:a,rawCreationDate:i});const s={lastModDate:Si(o),lastAccessDate:Si(a),creationDate:Si(i)};Object.assign(t,s),Object.assign(e,s,{rawLastAccessDate:a,rawCreationDate:i})}}(A,e),e.extraFieldNTFS=A);const R=i.get(b);let D;if(R&&(D=ti(R,e,!1),e.extraFieldUnix=R),!D){const t=i.get(E);t&&(ti(t,e,!0),e.extraFieldInfoZip=t)}const x=i.get(h);x&&(function(t,e,r){if(!t.data.length)return;const n=Pt(t.data),o=gi(n,0),a=[],i=[];r?(1&~o||(a.push(Fo),i.push(To)),2&~o||(a.push(Io),i.push(Oo)),4&~o||(a.push(Uo),i.push(Co))):t.data.length>=5&&(a.push(Fo),i.push(To));let s=1;a.forEach((r,o)=>{if(t.data.length>=s+4){const a=Ri(n,s);e[r]=t[r]=new Date(1e3*(0|a));const c=i[o];t[c]=a}s+=4})}(x,e,o),e.extraFieldExtendedTimestamp=x);const z=i.get(y);return z&&(e.extraFieldUSDZ=z),l}function Qa(t,e,r,n,o){if(t.data.length<5)return void(t.valid=!1);const a=Pt(t.data),i=new Qt;i.append(o[r]);const s=Pt(new Uint8Array(4));s.setUint32(0,i.get(),!0);const c=Ri(a,1),l=gi(a,0);Object.assign(t,{version:l,[e]:mn(t.data.subarray(5)),valid:1==l&&!o.bitFlag.languageEncodingFlag&&c==Ri(s,0)}),t.valid&&(n[e]=t[e],n[e+"UTF8"]=!0)}function $a(t,e){if(t.data.length<8)return;const r=Pt(t.data),n={lastAccessDate:new Date(1e3*(0|Ri(r,0))),lastModDate:new Date(1e3*(0|Ri(r,4)))};t.data.length>=12&&(n.uid=Ai(r,8),n.gid=Ai(r,10)),Object.assign(t,n),Object.assign(e,n)}function ti(t,e,r){try{const n=Pt(t.data);let o,a;if(r){let e=0;const r=gi(n,e++),i=gi(n,e++);o=ei(t.data.subarray(e,e+i)),e+=i;const s=gi(n,e++);a=ei(t.data.subarray(e,e+s)),Object.assign(t,{version:r,uid:o,gid:a})}else t.data.length>=4&&(o=Ai(n,0),a=Ai(n,2),Object.assign(t,{uid:o,gid:a}));return o!==I&&(e.uid=o),a!==I&&(e.gid=a),o!==I||a!==I}catch{}}function ei(t){const e=new Uint8Array(4);return e.set(t,0),new DataView(e.buffer,e.byteOffset,4).getUint32(0,!0)}function ri(t,e,r){const n=Ri(t,e);let o,a;return r?(o=Di(t,e+4),a=Di(t,e+12)):(o=Ri(t,e+4),a=Ri(t,e+8)),{crc32:n,compressedSize:o,uncompressedSize:a}}function ni(t,e){return t.Gt?t.Gt(e):0}async function oi(t){return Ri(Pt(await ho(t,0,4)))}function ai(t){return t===et||t===rt||t===nt}function ii(t,e){return si(t,si(e,rt))}function si(t,e){const r=t.strictness;if(r!==I){if(!ai(r))throw new Error(ha);return r}const n=t.checkAmbiguity;return n===I?e:n?et:e==nt?nt:rt}function ci(t,e){if(e==nt)return!1;const r=t.split("/");return r.length>1&&""===r[r.length-1]&&r.pop(),!!(r.includes("..")||t.startsWith("/")||t.startsWith("\\\\")||_a.test(t))||e==et&&(r.includes(".")||r.includes(""))}function li(t,r){if(t!==I){const e=yt(t);if("number"!=typeof e||Number.isNaN(e)||e<0)throw new Error(Ea);return e}return r==et?0:r==nt?1/0:e}async function ui(t,e,r){const{size:n}=t,o=Math.min(n,65557),a={count:64};let i,s,c=0;for await(const[r,l,u,f,w]of fi(t,o)){const o=Ai(r,f+20);if(w+d+o==n){const o=await wi(t,r,l,f,w,n,a);if(2==o){if(i||(i=di(u,f,w)),c++,!e||c>1)break}else 1!=o||s||(s=di(u,f,w))}}return i||(i=s),i||(i=await async function(t,e,r){const{size:n}=t,o=Math.min(n,e==1/0?n:65557+e);let a,i;for await(const[e,s,c,l,u]of fi(t,o)){const o=di(c,l,u);a||(a=o);const f=await wi(t,e,s,l,u,n,r);if(2==f)return o;1!=f||i||(i=o)}return i||a}(t,r,a)),{qt:i,Xt:c}}async function*fi(t,e){const r=t.size-e,n=await ho(t,r,e),o=Pt(n);for(let t=n.length-d;t>=0;t--)Ri(o,t)==c&&(yield[o,r,n,t,r+t])}function di(t,e,r){return{offset:r,buffer:t.slice(e,e+d).buffer}}async function wi(r,n,o,a,i,c,l){const f=Ai(n,a+10),d=Ri(n,a+12),p=Ri(n,a+16);if(f==e||d==t||p==t)return await pi(r,n,o,i-w,c,l)==u?2:0;if(!f&&!d)return 1;const m=Ai(n,a+6);for(const t of[i-d,ni(r,m)+p])if(await pi(r,n,o,t,c,l)==s)return 2;return 0}async function pi(t,e,r,n,o,a){return n<0||n+4>o?I:n>=r?Ri(e,n-r):a.count>0?(a.count--,Ri(Pt(await ho(t,n,4)),0)):I}function mi(t,e,r){t?hi(r):Eo(e,r)}function hi(t){const e=new Error(wa);throw e.reason=t,e}function yi(t,e,r){return e[r]===I?t.options[r]:e[r]}function Ei(t,e,r){return ut(yi(t,e,r))}function bi(t){const r=(4294901760&t)>>16,n=t&e,o=new Date(1980+((65024&r)>>9),((480&r)>>5)-1,31&r,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return o<T?T:o}function Si(t){return new Date(Number(t/BigInt(1e4)-BigInt(116444736e5)))}function gi(t,e){return t.getUint8(e)}function Ai(t,e){return t.getUint16(e,!0)}function Ri(t,e){return t.getUint32(e,!0)}function Di(t,e){const r=t.getBigUint64(e,!0);if(r>Wa)throw new Error(ba);return Number(r)}var xi=Object.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:wa,ERR_BAD_FORMAT:ra,ERR_CENTRAL_DIRECTORY_NOT_FOUND:aa,ERR_ENCRYPTED:ca,ERR_ENCRYPTED_CENTRAL_DIRECTORY:pa,ERR_ENTRY_DATA_OUT_OF_BOUNDS:da,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:oa,ERR_EOCDR_NOT_FOUND:na,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:sa,ERR_INVALID_AUTHENTICATION_CODE:se,ERR_INVALID_COMPRESSED_DATA:ur,ERR_INVALID_CRC32:fr,ERR_INVALID_FILENAME_VALIDATION:ya,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Ea,ERR_INVALID_PASSWORD:ie,ERR_INVALID_STRICTNESS:ha,ERR_INVALID_UNCOMPRESSED_SIZE:lr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:ia,ERR_OVERLAPPING_ENTRY:fa,ERR_SPLIT_ZIP_FILE:ua,ERR_UNSAFE_FILENAME:ma,ERR_UNSUPPORTED_COMPRESSION:$e,ERR_UNSUPPORTED_ENCRYPTION:la,ERR_UNSUPPORTED_UINT64:ba,ERR_WORKER_STARTUP_TIMEOUT:Cr,WARNING_APPENDED_DATA:za,WARNING_COMPRESSED_PATCHED_DATA:Aa,WARNING_DUPLICATE_FILENAME:Oa,WARNING_MALFORMED_EXTRA_FIELD:Ra,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Ma,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:Na,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:va,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:ka,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:Ua,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:Ca,WARNING_PREPENDED_CENTRAL_DIRECTORY:Ta,WARNING_PREPENDED_DATA:Fa,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Ia,WARNING_UNKNOWN_VERSION:ga,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Da,WARNING_UNSORTED_CENTRAL_DIRECTORY:Sa,WARNING_WRAPPED_ENTRIES_COUNT:xa,ZipReader:Va,ZipReaderStream:Za,isZipFile:Ha});const zi="File already exists",Fi="Zip file comment exceeds 64KB",Ti="Invalid zip file comment (must be a Uint8Array)",Ii="File entry comment exceeds 64KB",Oi="Invalid file entry comment (must be a string)",Ui="Invalid date (must be a valid Date instance)",Ci="File entry name exceeds 64KB",ki="Version exceeds 65535",Mi="The strength must equal 1, 2, or 3",Ni="Encryption is not supported in USDZ files",vi="Split zip files are not supported in USDZ files",_i="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",Li="Invalid extra field (must be a Map)",Bi="Invalid extra field type (must be integer 0..65535)",ji="Invalid extra field data (must be a Uint8Array)",Pi="Extra field data exceeds 64KB",Wi=-2147483648,Vi=2147483647,Zi=BigInt(0),Hi=BigInt("0x7fffffffffffffff"),Gi="Zip64 is not supported (set the 'zip64' option to 'true')",Ki="Undefined uncompressed size",Yi="Undefined compression method",qi="Undefined CRC32",Xi="Undetermined size",Ji="Undefined reader",Qi="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",$i="Zip file not empty",ts="Invalid uid (must be integer 0..2^32-1)",es="Invalid gid (must be integer 0..2^32-1)",rs="Invalid UNIX mode (must be integer 0..65535)",ns="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",os="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",as="Invalid msdosAttributesRaw (must be integer 0..255)",is="Invalid msdosAttributes (must be an object with boolean flags)",ss="Invalid level (must be integer 0..9)",cs="Signature data exceeds 64KB",ls="Invalid entry option (must be an entry returned by ZipReader#getEntries())",us="The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set",fs="compression unavailable",ds="clamped last modification date",ws=new Uint8Array([7,0,2,0,65,69,3,0,0]),ps="infozip",ms="unix",hs=[8,9,5,3];let ys=0;const Es=[];class bs{constructor(t,e={}){t=new fo(t);const{availableSize:r=O,maxSize:n=O}=t,o=r>0&&r!==O&&n>0&&n!==O;if(o&&e[X])throw new Error(vi);Object.assign(this,{writer:t,te:o,options:e,ee:new Map,re:new Set,offset:e[q]===I?t.size||t.writable.size||0:e[q],ne:e[q]===I?0:e[q]-(t.size||t.writable.size||0),oe:new Set,ae:[],warnings:[],ie:0,se:0,ce:I,le:!1})}prependZip(t){return Rs(this,async function(t,e){if(t.re.size)throw new Error($i);await t.ue(e)}(this,t))}appendZip(t){return Rs(this,this.ue(t))}async ue(t){const e=this,{oe:r,re:n,ee:a}=e;for(;r.size;)await Promise.allSettled(Array.from(r));let i;const s=new Promise(t=>i=t);r.add(s);const c=[];let l;try{t=new uo(t),await po(t),t.size!==I&&t.readUint8Array||(t=new _n(await Ye(t.readable)),await po(t));const{ZipReader:r}=await Promise.resolve().then(function(){return xi}),i=new r(t),s=await i.getEntries();await i.close(),await po(e.writer);const{directoryOffset:u}=i;s.forEach(({filename:t})=>{if(n.has(t))throw new Error(zi);n.add(t),c.push(t)}),e.fe=!0;const{de:f}=e;e.de=new Promise(t=>l=()=>{e.fe=!1,t()}),await f,e.te&&(delete e.te,await async function(t){return Pt(await ho(t,0,4)).getUint32(0,!0)==o}(t)||(await js(e.writer,Ls()),e.offset+=4));const d=await async function(t,e,r,n){const{writer:o}=t,a=new Map;if(o.closeDisk){const i=Array.from(r).sort((t,r)=>_s(e,t)-_s(e,r));let s=0;for(const r of i){const n=_s(e,r);await Ns(t,e,s,n-s),Cs(o,await vs(e,n))&&await o.closeDisk(),a.set(r,{offset:ks(t,o),diskNumberStart:Os(o)}),s=n}await Ns(t,e,s,n-s)}else{const o=t.offset;await Ns(t,e,0,n),r.forEach(t=>a.set(t,{offset:o+_s(e,t),diskNumberStart:0}))}return a}(e,t,s,u);s.forEach(t=>{const{version:e,rawLastModDate:r,rawFilename:n,bitFlag:o,encrypted:i,uncompressedSize:s,compressedSize:c,extraFieldZip64:l}=t;let{compressionMethod:u,rawExtraField:f}=t;const{level:w,languageEncodingFlag:p,dataDescriptor:m}=o;f=Ms(f||v),t.extraFieldAES&&(u=99);const h=rc(f),y=Boolean(l)&&l.uncompressedSize!==I,E=Boolean(l)&&l.compressedSize!==I,b=-7&ac(w,p,m,i,u)|w<<1,{we:S,pe:g}=nc({version:e,bitFlag:b,compressionMethod:u,uncompressedSize:s,compressedSize:c,rawLastModDate:r,rawFilename:n,me:E,he:y,extraFieldLength:h}),{crc32:A}=t;A!==I&&$s(g,10,A);const{offset:R,diskNumberStart:D}=d.get(t);Object.assign(t,{ye:!0,he:y,me:E,offset:R,diskNumberStart:D,Ee:!1,be:v,Se:v,ge:v,Ae:v,Re:v,rawExtraField:f,De:v,extendedTimestamp:!1,we:S,pe:g}),a.set(t.filename,t)})}catch(t){throw c.forEach(t=>n.delete(t)),t}finally{i(),r.delete(s),l&&l()}}add(o="",i,s={}){const c=this,{oe:l}=c,u=async function(o,i,s,c){const l=(c=Object.assign({},c))[Q];if(l!==I){const{xe:t,ze:e}=function(t,e,n){if(null===t||typeof t!=k||Array.isArray(t))throw new Error(ls);const{externalFileAttributes:o,versionMadeBy:a,comment:i,lastModDate:s,rawLastModDate:c,creationDate:l,lastAccessDate:u,uncompressedSize:f,encrypted:d,zipCrypto:w,crc32:p,compressionMethod:m,extraFieldAES:h,extraFieldUnix:y,internalFileAttributes:E,extraField:b,bitFlag:S,directory:g,uid:A,gid:R}=t,D={externalFileAttributes:o,versionMadeBy:a,comment:i,lastModDate:s,creationDate:l,lastAccessDate:u,internalFileAttributes:E,directory:g};S&&S.languageEncodingFlag&&(D[K]=!0);const x=function(t){if(t){const e=new Map;if(t.forEach((t,r)=>{ta.has(r)||e.set(r,t.data)}),e.size)return e}}(b);x&&(D[Ko]=x),A===I&&R===I||Object.assign(D,{uid:A,gid:R,unixExtraFieldType:y?ms:ps});const z={};if(e&&!g)if(Object.assign(z,{uncompressedSize:f,crc32:p,compressionMethod:m}),e!==ot&&Object.assign(z,{encrypted:d,zipCrypto:w,encryptionStrength:h?h.strength:I}),S&&(z.dataDescriptor=S.dataDescriptor,z[G]=hs[S.level]),n===I)z.rawLastModDate=c;else if(e!==ot&&w&&(!S||S.dataDescriptor)&&n instanceof Date&&function(t){let e=new Date(2e3*Math.ceil(Math.floor(t.getTime()/1e3)/2));return e<T?e=T:e>F&&(e=F),(e.getHours()<<3|e.getMinutes()>>3)&r}(n)!=(c>>>8&r))throw new Error(us);return{xe:D,ze:z}}(l,pt(Hs(o,c,j)),Hs(o,c,Fo));delete c[Q],c=Object.assign(t,e,c)}if(Hs(o,c,Vo)&&!i.endsWith(x)&&(i+=x),o.re.has(i))throw new Error(zi);o.re.add(i),ys<Ot().maxWorkers?ys++:await new Promise(t=>Es.push(t));try{return await async function(o,i,s,c){const l=function(n,o,a){let i=Hs(n,a,_o),s=Hs(n,a,Po,i?20:768);const c=Hs(n,a,Zo),l=Ys(n,a,"uid"),u=Ys(n,a,"gid");let f=Ys(n,a,Yo),d=Hs(n,a,"unixExtraFieldType"),w=Hs(n,a,qo),p=Hs(n,a,Xo),m=Hs(n,a,Jo);if(ht(l,t,ts),ht(u,t,es),ht(f,e,rs),d!==I&&d!==ps&&d!==ms)throw new Error(ns);if(d===ms&&(l!==I&&l>e||u!==I&&u>e))throw new Error(os);d!==I||l===I&&u===I||(d=ps);let h=Ys(n,a,No),y=Hs(n,a,vo);const E=h!==I||y!==I;if(l!==I||u!==I||f!==I||d||c?(i=!1,s=s&r|768):E&&(i=!0,s&=r),ht(h,r,as),y&&(typeof y!==k||Array.isArray(y)))throw new Error(is);if(s>e)throw new Error(ki);let b=Hs(n,a,Mo);const S=b!==I;S||(b=0),!a[Vo]&&o.endsWith(x)&&(a[Vo]=!0);const z=Hs(n,a,Vo);if(z?(o.endsWith(x)||(o+=x),S||(b=16,i||(b|=16877<<16))):i||S||(b=c?493<<16:27525120),!i){const t=f!==I||Boolean(w||p||m);f=f===I?b>>16&e:f&e,w?f|=R:w=Boolean(f&R),p?f|=D:p=Boolean(f&D),m?f|=512:m=Boolean(512&f),S&&!t||(z?f=-61441&f|A:f&g||(f|=32768),b=(f&e)<<16|b&e)}({msdosAttributesRaw:h,msdosAttributes:y}=function(t,e){if(t!==I)t&=r;else if(e!==I){const{readOnly:n,hidden:o,system:a,directory:i,archive:s}=e;let c=0;n&&(c|=1),o&&(c|=2),a&&(c|=4),i&&(c|=16),s&&(c|=32),t=c&r}return e===I&&(e={readOnly:Boolean(1&t),hidden:Boolean(2&t),system:Boolean(4&t),directory:Boolean(16&t),archive:Boolean(32&t)}),{msdosAttributesRaw:t,msdosAttributes:e}}(h,y)),E&&(b=b&t|h&r);const F=b>>16&e,T=f!==I&&40960==(f&g);return{name:o,Fe:{versionMadeBy:s,msDosCompatible:Boolean(i),externalFileAttributes:b,unixExternalUpper:F,uid:l,gid:u,unixMode:f,unixExtraFieldType:d,symlink:T,setuid:w,setgid:p,sticky:m,msdosAttributesRaw:h,msdosAttributes:y}}}(o,i,c);({name:i}=l);const u=function(t,r,n){const o=Ks(t,n,"encodeText")||te;let a=o(r,$);if(a===I&&(a=te(r)),rc(a)>e)throw new Error(Ci);const i=n[go]||"";if(typeof i!=M)throw new Error(Oi);let s=o(i,tt);if(s===I&&(s=te(i)),rc(s)>e)throw new Error(Ii);const c=Hs(t,n,jo);if(c!==I&&c>e)throw new Error(ki);const l=Gs(t,n,Fo,new Date),u=Hs(t,n,To),f=Gs(t,n,Io),d=Gs(t,n,Uo),w=Hs(t,n,ko,0),p=pt(Hs(t,n,j)),m=Boolean(p),h=!0===p,y=Hs(t,n,L),E=Hs(t,n,B);wt(y,E);const b=Ys(t,n,"encryptionStrength",3),S=Hs(t,n,Wo),g=Hs(t,n,"extendedTimestamp",!0),A=Hs(t,n,"ntfsTimestamp"),R=Hs(t,n,"keepOrder",!0),D=Hs(t,n,W),x=Hs(t,n,Z),z=Hs(t,n,"bufferedWrite"),F=Ks(t,n,"createTempStream"),T=Hs(t,n,"dataDescriptorSignature",!0),O=ft(Hs(t,n,P));dt(O);const U=Hs(t,n,K,!oc(a)||!oc(s)),C=Hs(t,n,Ho),k=m||C===I?I:ar(C);if(!m&&C!==I&&0!==C&&8!==C&&!k)throw new Error($e);let N=Ys(t,n,G);if(ht(N,9,ss),t.options[X]){if(y!==I||E!==I)throw new Error(Ni);N===I&&C===I&&(N=0)}m&&(N=yt(n[G]));let v=Hs(t,n,V),_=Hs(t,n,Y);z&&_===I&&(_=!1),(_===I||S&&!h)&&(_=!0),N!==I&&6!=N&&(v=!1);const H=Hs(t,n,Lo);if(!(S||y===I&&E===I||Number.isInteger(b)&&b>=1&&b<=3))throw new Error(Mi);const q=zs(n[Ko]),J=zs(n.localExtraField),Q=zs(n.centralExtraField);return{comment:i,Fe:{rawFilename:a,rawComment:s,version:c,lastModDate:l,rawLastModDate:u,lastAccessDate:f,creationDate:d,internalFileAttributes:w,Te:m,Ie:h,password:y,rawPassword:E,encryptionStrength:b,zipCrypto:S,extendedTimestamp:g,ntfsTimestamp:A,keepOrder:R,useWebWorkers:D,transferStreams:x,bufferedWrite:z,createTempStream:F,dataDescriptorSignature:T,signal:O,useUnicodeFileNames:U,compressionMethod:C,format:k?k.format:I,codecURI:k?k.codecURI:I,Oe:k?k.versionNeeded:I,level:N,useCompressionStream:v,dataDescriptor:_,zip64:H,rawExtraField:q,Ue:J,De:Q}}}(o,i,c),{comment:f}=u,d=c[Ko];o.ee.set(i,I);const w=o.ce,p={};let y,S;u.Fe.keepOrder&&(p.Ce=new Promise(t=>y=t)),o.ce=p;try{const{Fe:f}=u;0==f.level||f.compressionMethod!==I||f.Te||await async function(t){const{CompressionStream:e,CompressionStreamFallback:r}=t;if(r&&!r.At)return!0;if(gr(e)||Sr(e,pr))return!0;if(r)try{return await vr(t),!0}catch{return!1}return!1}(Ot())||(f.level=0,Eo(o.warnings,fs,i));const d=await async function(e,r,{Fe:n},o){if(n.Te&&!r&&!Hs(e,o,Vo))throw new Error(Ji);let a;if(r){if(r=new uo(r),await po(r),!r.readable&&!r.readUint8Array)throw new Error(Qi);({size:a}=r)}return Object.assign({reader:r},function(e,r,n,o,a){const{Te:i,Ie:s,zipCrypto:c,password:l,rawPassword:u,encryptionStrength:f}=o;let{dataDescriptor:d,zip64:w,level:p,compressionMethod:m}=o,h=0,y=0,E=!1;if(i&&r){if(y=a[Ro],y===I)throw new Error(Ki);if(m===I)throw new Error(Yi)}const b=!0===w,S=Hs(e,a,Bo);if(r&&s&&!S&&rc(l,u))throw new Error(_i);const g=r&&(Boolean(l&&rc(l)||u&&rc(u))||s&&S);r||(p=0,m=0);const A=ea(g,c,f);r&&(i?(a.uncompressedSize=y,h=n===I?qs(y)+A:n+(s?0:A)):n===I?(d=!0,(w||w===I)&&(w=E=!0,h=4294967296)):(a.uncompressedSize=y=n,h=(Xs(m,p)?qs(y):y)+A));const R=!(g||r&&(0!==n||i)||Xs(m,p));R&&!c&&Hs(e,a,Y)===I&&(d=!1);const D=b||E||y>=t,x=b||h>=t;if(D||x){if(!1===w)throw new Error(Gi);w=!0}return w=w||!1,{ke:h,Fe:{dataDescriptor:d,Me:R,zip64:w,ye:b,Ne:E,he:D,me:x,uncompressedSize:y,level:p,compressionMethod:m,encrypted:g}}}(e,Boolean(r),a,n,o))}(o,s,u,c);({reader:s}=d);const g=Us(o.writer),A=Os(o.writer);let R=c.crc32===I?c[Go]:c.crc32;const D=d.Fe.encrypted&&!f.zipCrypto;if(f.Te&&!f.Ie&&D&&(R=I),f.Te&&s&&!D&&R===I)throw new Error(qi);const x=function(t){const{rawFilename:r,lastModDate:o,rawLastModDate:a,lastAccessDate:i,creationDate:s,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:f,dataDescriptor:d,directory:w,rawExtraField:p,Ue:y,encryptionStrength:S,extendedTimestamp:g,ntfsTimestamp:A,Te:R,encrypted:D,he:x,me:O,uncompressedSize:U,Ne:C,crc32:k}=t;let{version:M,compressionMethod:N}=t;const _=!w&&Xs(N,c);let L;const B=R||!_,j=l&&(t.bufferedWrite||!d||!x&&!O||B&&!C),P=j||l&&d&&(x||O);if(l&&(x||O)){const t=20,e=Is(t);if(e.ve(1),e.ve(t-4),L=e.Pt,j&&(e._e(U),B)){const t=ea(D,u,S);e._e(R?0:U+t)}}else L=v;let W,V,Z,H,G,K;if(D&&!u){const t=Is(rc(ws)+2);t.ve(m),t.Le(ws),W=t.Pt,W[8]=S}else W=v;if(g){const t=Vs(o),e=(Y=t)>=Wi&&Y<=Vi;if(e){const e=9+(i?4:0)+(s?4:0),r=Is(e);H=1+(i?2:0)+(s?4:0),G=t,r.ve(h),r.ve(e-4),r.Be(H),r.je(t),i&&r.je(Zs(Vs(i))),s&&r.je(Zs(Vs(s))),Z=r.Pt}else Z=v;if(A===I?!e||Boolean(i||s):A)try{const t=Ws(o),e=Is(36);e.ve(10),e.ve(32),e.Pe(4),e.ve(1),e.ve(24),e._e(t),e._e(i?Ws(i):t),e._e(s?Ws(s):t),V=e.Pt}catch{V=v}else V=v}else V=Z=v;var Y;try{const{uid:r,gid:n,unixExtraFieldType:o}=t;if(o!=ps||r===I&&n===I)if(o!=ms||r===I&&n===I)K=v;else{const t=Is(8);t.ve(b),t.ve(4),t.ve((r===I?0:r)&e),t.ve((n===I?0:n)&e),K=t.Pt}else{const t=Ts(r===I?0:r),e=Ts(n===I?0:n),o=3+t.length+e.length,a=Is(4+o);a.ve(E),a.ve(o),a.Be(1),a.Be(t.length),a.Le(t),a.Be(e.length),a.Le(e),K=a.Pt}}catch{K=v}N===I&&(N=_?8:0),M===I&&(M=0!=N||w||D?20:10);const{Oe:q}=t;_&&q!==I&&(M=M>q?M:q),l&&(M=M>45?M:45),D&&!u&&(M=M>51?M:51,R&&k!==I&&(W[4]=1),Qs(Pt(W),9,N),N=99);const J=P?rc(L):0,Q=J+rc(W,Z,V,K,p,y);if(Q+(t[X]?67:0)>e)throw new Error(Pi);const $=new Date(2e3*Math.ceil(Math.floor(o.getTime()/1e3)/2)),tt=$<T?T:$>F?F:$,et=rc(Z)?new Date(1e3*Vs(o)):rc(V)?o:tt,{we:rt,pe:nt,rawLastModDate:ot}=nc({version:M,bitFlag:ac(c,f,d,D,N),compressionMethod:N,uncompressedSize:U,lastModDate:tt,rawLastModDate:a,rawFilename:r,me:O,he:x,extraFieldLength:Q}),at=Is(z+rc(r)+Q),it=at.Pt,st=Pt(it);return at.je(n),at.Le(rt),at.Le(r),P&&at.Le(L),at.Le(W),at.Le(Z),at.Le(V),at.Le(K),at.Le(p),at.Le(y),d&&(O||$s(st,18,0),x||$s(st,22,0)),{We:it,Ve:st,we:rt,pe:nt,lastModDate:et,Ze:et===tt&&$.getTime()!=tt.getTime(),rawLastModDate:ot,encrypted:D,compressed:_,version:M,compressionMethod:N,He:H,Ge:G,be:v,Ke:J,ge:Z,Ae:V,Re:K,Se:W,extraFieldLength:Q}}(c=Object.assign({},c,l.Fe,u.Fe,d.Fe,{signature:c[Go],crc32:R,offset:o.offset-g,diskNumberStart:A,[X]:o.options[X]}));x.Ze&&Eo(o.warnings,ds,i);const U=function({zip64:t,dataDescriptor:e,dataDescriptorSignature:r}){let n,o=v,i=0,s=t?20:12;return r&&(s+=4),e&&(o=new Uint8Array(s),n=Pt(o),r&&(i=4,$s(n,0,a))),{Ye:o,qe:n,Xe:i}}(c),C=rc(x.We,U.Ye);S=await async function(e,n,o,a,i){const{ee:s,writer:c}=e,{keepOrder:l,dataDescriptor:u,Me:f,signal:d}=i,{Je:w,$t:p,Qe:m,$e:h}=a,y=e.options[X];let E,b,S,g,A,R,D,x=p,F=0;const T=l&&m?m.Ce:I;s.set(n,x);try{i.bufferedWrite||!l||e.fe||e.ie||e.se||!u&&!f?(E=!0,e.ie++,D=i.createTempStream?await i.createTempStream():new TransformStream(I,I,{highWaterMark:O}),D.size=0,await po(c)):(b=!0,e.se++,D=c,await T,await U()),await po(D);const p=Us(c);e.te&&!E&&await Bs(e,c),y&&!E&&Fs(a,e.offset-p);const{We:m}=w;E||await C();const h=Os(c),S=ks(e,c);if(x.diskNumberStart=h,E||(A=!0,R=c.size,await js(D,m)),x=await async function(e,n,{diskNumberStart:o,Ce:a},i,s,c){const{Je:l,er:u,rr:f}=i,{we:d,pe:w,lastModDate:p,rawLastModDate:m,encrypted:h,compressed:y,version:E,compressionMethod:b,be:S,Ke:g,ge:A,He:R,Ge:D,Ae:x,Re:z,Se:F}=l,{Ye:T}=u,{rawFilename:O,lastAccessDate:U,creationDate:C,password:k,rawPassword:M,level:N,useUnicodeFileNames:v,zip64:_,ye:L,he:B,me:j,zipCrypto:P,dataDescriptor:W,directory:V,executable:Z,versionMadeBy:H,rawComment:G,rawExtraField:K,De:Y,useWebWorkers:q,transferStreams:X,onstart:J,onprogress:Q,onend:$,signal:tt,encryptionStrength:et,extendedTimestamp:rt,msDosCompatible:nt,internalFileAttributes:ot,externalFileAttributes:at,uid:it,gid:st,unixMode:ct,symlink:lt,setuid:ut,setgid:ft,sticky:dt,unixExternalUpper:wt,msdosAttributesRaw:pt,msdosAttributes:mt,useCompressionStream:ht,Te:yt,Ie:Et,format:bt,codecURI:St}=c,gt={Ce:a,versionMadeBy:H,zip64:_,ye:L,directory:Boolean(V),executable:Boolean(Z),filenameUTF8:Boolean(v),rawFilename:O,commentUTF8:Boolean(v),rawComment:G,be:S,Ke:g,ge:A,Ae:x,Re:z,Se:F,rawExtraField:K,De:Y,extendedTimestamp:rt,msDosCompatible:nt,internalFileAttributes:ot,externalFileAttributes:at,diskNumberStart:o,uid:it,gid:st,unixMode:ct,symlink:Boolean(lt),setuid:ut,setgid:ft,sticky:dt,unixExternalUpper:wt,msdosAttributesRaw:pt,msdosAttributes:mt};let{crc32:At,uncompressedSize:Rt}=c,Dt=0;yt||(Rt=0);const{writable:xt}=n;if(e){const o=e.size,a=Ke(yo(e,{size:o})),i={options:{codecType:Tr,inputSize:o,level:N,rawPassword:M,password:k,encryptionStrength:et,zipCrypto:h&&P,passwordVerification:h&&P&&m>>8&r,computeCrc32:!yt,compressed:y&&!yt,encrypted:h&&!Et,useWebWorkers:q,useCompressionStream:ht,transferStreams:X,format:bt,codecURI:St,compressionMethod:b},config:s,ut:{signal:tt,size:o,onstart:J,onprogress:Q,onend:$}};try{const e=await cn({readable:a,writable:xt},i);if(Dt=e.outputSize,n.size+=Dt,yt||(Rt=e.inputSize,h&&!P||(At=e.crc32)),!j&&Dt>=t||!B&&Rt>=t)throw new Error(Gi)}catch(t){const{outputSize:e}=i;throw e!==I?n.size+=e:Wt(t)&&t.outputSize!==I&&(n.size+=t.outputSize),t}}return function({crc32:t,compressedSize:e,uncompressedSize:r,Je:n,er:o},{zip64:a,zipCrypto:i,Te:s,dataDescriptor:c}){const{pe:l,encrypted:u}=n,{qe:f,Xe:d}=o;u&&!i&&!s||t===I||($s(l,10,t),c&&$s(f,d,t)),a?c&&(tc(f,d+4,BigInt(e)),tc(f,d+12,BigInt(r))):($s(l,14,e),$s(l,18,r),c&&($s(f,d+4,e),$s(f,d+8,r)))}({crc32:At,compressedSize:Dt,uncompressedSize:Rt,Je:l,er:u},c),W&&await js(n,T),Object.assign(gt,{uncompressedSize:Rt,compressedSize:Dt,lastModDate:p,rawLastModDate:m,creationDate:C,lastAccessDate:U,encrypted:Boolean(h),zipCrypto:Boolean(P),size:f+Dt,compressionMethod:b,version:E,we:d,pe:w,signature:At,crc32:!h||P||yt?At:I,He:R,Ge:D,he:B,me:j}),gt}(o,D,x,a,Ot(),i),E||(A=!1),s.set(n,x),x.filename=n,E){if(await Promise.all([D.writable.getWriter().close(),T]),await U(),e.te&&await Bs(e,c),g=!0,R=c.size,await C(),x.diskNumberStart=Os(c),x.offset=ks(e,c),y){const t=a.rr;Fs(a,e.offset-Us(c)),x.size+=a.rr-t}!function({rawFilename:t,encrypted:e,zip64:r,Ke:n,crc32:o,compressedSize:a,uncompressedSize:i,he:s,me:c},l,{dataDescriptor:u,Te:f}){if(u||((!e||f&&o!==I)&&$s(l,14,o),c||$s(l,18,a),s||$s(l,22,i)),r&&n){const e=z+rc(t)+4;tc(l,e,BigInt(i)),tc(l,e+8,BigInt(a))}}(x,w.Ve,i),await js(c,w.We),await Ps(D.readable,c,d,t=>F+=t),c.size+=D.size,g=!1}else x.diskNumberStart=h,x.offset=S;return e.offset+=x.size,x}catch(t){if(g||A){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch{}e.offset+=c.size-R,E&&(e.offset+=F)}throw s.delete(n),t}finally{if(E&&e.ie--,b&&e.se--,h&&h(T),S&&S(),E&&D&&D.dispose)try{await D.dispose()}catch{}}async function U(){e.fe=!0;const{de:t}=e;e.de=new Promise(t=>S=()=>{e.fe=!1,t()}),await t}async function C(){Cs(c,rc(w.We))&&await c.closeDisk()}}(o,i,s,{Je:x,er:U,rr:C,$t:p,Qe:w,$e:y},c)}catch(t){throw o.ee.delete(i),t}finally{y&&y(w&&w.Ce)}return Object.assign(S,{name:i,comment:f,extraField:d}),new $o(S)}(o,i,s,c)}catch(t){throw o.re.delete(i),t}finally{const t=Es.shift();t?t():ys--}}(c,o,i,s);l.add(u);const f=()=>l.delete(u);return Promise.prototype.then.call(u,f,f),Rs(c,u)}remove(t){const{re:e,ee:r}=this;if(typeof t==M&&(t=r.get(t)),t&&t.filename!==I){const{filename:n}=t;if(e.has(n)&&r.has(n))return e.delete(n),r.delete(n),!0}return!1}async close(r=v,n={}){const o=this,{oe:a,writer:w}=this,{writable:p}=w;if(o.le)return As(w);if(!(r instanceof Uint8Array))throw new Error(Ti);if(rc(r)>e)throw new Error(Fi);for(;a.size;)await Promise.allSettled(Array.from(a));await Promise.allSettled(o.ae.map(t=>t.nr));const m=o.ae.filter(t=>t.ar&&!t.ir);if(m.length){const t=m.map(t=>t.error);m.forEach(t=>t.ir=!0);const[e]=t;try{e.entryErrors=t}catch{}throw e}return await async function(r,n,o){const{sr:a,cr:w}=function(r){let n=0,o=!1;for(const[,a]of r){const{rawFilename:r,Se:i,rawComment:s,Ae:c,Re:l,rawExtraField:u,De:d,He:w,Ge:p,ye:m,uncompressedSize:y,compressedSize:E}=a;let{he:b,me:S}=a;m||(b&&y<t&&(b=a.he=!1),S&&E<t&&(S=a.me=!1)),o=o||b||S;const g=a.offset>=t,A=a.diskNumberStart>=e;let R,D;if(g||A||b||S){const t=4+(b?8:0)+(S?8:0)+(g?8:0)+(A?4:0),e=Is(t);e.ve(1),e.ve(t-4),b&&e._e(y),S&&e._e(E),g&&e._e(a.offset),A&&e.je(a.diskNumberStart),R=e.Pt}else R=v;if(a.be=R,a.lr=g,a.Ee=A,p===I)D=v;else{const t=Is(9);t.ve(h),t.ve(5),t.Be(w),t.je(p),D=t.Pt}a.ge=D;const x=rc(R,i,c,l,D,u,d);if(x>e)throw new Error(Pi);n+=f+rc(r,s)+x}return{sr:n,cr:o}}(r.ee),{ur:p,dr:m,wr:y}=await async function(r,n,o){const{ee:a,writer:i}=r,c=new Uint8Array(n);await po(i);let l=0,u=0,d=Os(i),w=Us(i),p=0;for(const[r,n]of Array.from(a.values()).entries()){const{offset:m,rawFilename:h,be:y,Se:E,ge:b,Ae:S,Re:g,rawExtraField:A,De:R,rawComment:D,versionMadeBy:x,we:z,pe:F,he:T,me:I,Ee:O,lr:U,internalFileAttributes:C,externalFileAttributes:k,diskNumberStart:M,uncompressedSize:N,compressedSize:v}=n,_=rc(y,E,b,S,g,A,R),L=f+rc(h,D)+_;Cs(i,l+L-u)&&(await js(i,c.slice(u,l)),u=l,p=0,await i.closeDisk()),0==r&&(d=Os(i),w=Us(i)),T||$s(F,18,N),I||$s(F,14,v),(U||O)&&n.version<45&&Qs(F,0,45);const B=Is(L);if(B.je(s),B.ve(x),B.Le(z.subarray(0,24)),B.ve(_),B.ve(rc(D)),B.ve(O?e:M),B.ve(C),B.je(k),B.je(U?t:m),B.Le(h),B.Le(y),B.Le(E),B.Le(b),B.Le(S),B.Le(g),B.Le(A),B.Le(R),B.Le(D),ec(c,B.Pt,l),l+=L,p++,o.onprogress)try{await o.onprogress(r+1,a.size,new $o(n))}catch{}}return await js(i,u?c.slice(u):c),{ur:{diskNumber:d,diskOffset:w},dr:{diskNumber:Os(i),pr:p},wr:c}}(r,a,o),E=await async function(t,r,n){const o=Ks(t,n,"signCentralDirectory");if(o){const n=await o(r),a=rc(n);if(a>e)throw new Error(cs);const s=Is(6+a);s.je(i),s.ve(a),s.Le(n);const{writer:c}=t;return Cs(c,rc(s.Pt))&&await c.closeDisk(),await js(c,s.Pt),6+a}return 0}(r,y,o);await async function(r,n,o,a){const{writer:i}=r,{ur:s,dr:f,mr:w,cr:p}=a;let{sr:m}=a,h=r.ee.size,y=s.diskNumber,E=ks(r,s);const b=rc(n);if(b>e)throw new Error(Fi);let S=Hs(r,o,Lo),g=Os(i);if(Cs(i,(S?98:d)+b)&&g++,E>=t||m>=t||h>=e||g>=e){if(!1===S)throw new Error(Gi);S=!0}else S===I&&p&&(S=!0);const A=Is(S?98:d);Cs(i,rc(A.Pt)+b)&&await i.closeDisk(),g=Os(i);let R=g==f.diskNumber?f.pr:0;S&&(A.je(l),A._e(44),A.ve(45),A.ve(45),A.je(g),A.je(y),A._e(R),A._e(h),A._e(m),A._e(E),A.je(u),A.je(g),A._e(BigInt(ks(r,i))+BigInt(m)+BigInt(w)),A.je(g+1),Hs(r,o,"supportZip64SplitFile",!0)&&(g=e,y=e),R=e,h=e,E=t,m=t),A.je(c),A.ve(g),A.ve(y),A.ve(R),A.ve(h),A.je(m),A.je(E),A.ve(b),await js(i,A.Pt),b&&await js(i,n)}(r,n,o,{ur:p,dr:m,sr:a,mr:E,cr:w})}(o,r,n),o.le=!0,!wo(w)&&Hs(o,n,H)||await p.getWriter().close(),As(w)}[_](){return this.close()}}class Ss{constructor(t={}){const{readable:e,writable:r}=new TransformStream;this.readable=e,this.zipWriter=new bs(r,t),this.oe=new Set}transform(t){const e=this.zipWriter;let r;const{readable:n,writable:o}=new TransformStream({start(t){r=t},flush:()=>{!async function(){try{await e.close()}catch(t){await Ds(e,t)}}()}});return xs(this,this.zipWriter.add(t,n),t=>r.error(t)),{readable:this.readable,writable:o}}writable(t){let e;const{readable:r,writable:n}=new TransformStream({start(t){e=t}});return xs(this,this.zipWriter.add(t,r),t=>e.error(t)),n}async close(t,e={}){const{zipWriter:r}=this,n=(await Promise.allSettled(Array.from(this.oe))).filter(t=>"rejected"==t.status).map(t=>t.reason);if(n.length){const[t]=n;try{t.entryErrors=n}catch{}throw await Ds(r,t),t}try{return await r.close(t,e)}catch(t){throw await Ds(r,t),t}}}class gs extends Promise{then(t,e){const{yr:r}=this;return r&&(r.ir=!0),super.then(t,e)}}function As(t){return t.getData?t.getData():t.writable}function Rs(t,e){const r=new gs((t,r)=>Promise.prototype.then.call(e,t,r)),n={};return r.yr=n,n.nr=Promise.prototype.then.call(r,I,t=>Object.assign(n,{ar:!0,error:t})),t.ae.push(n),r}async function Ds(t,e){try{await t.writer.writable.abort(e)}catch{}}function xs(t,e,r){t.oe.add(e),e.catch(t=>{try{r(t)}catch{}})}function zs(t){if(!t)return v;if(!(t instanceof Map))throw new Error(Li);let r=0,n=0;t.forEach((t,n)=>{if(mt(n,e,Bi),!(t instanceof Uint8Array))throw new Error(ji);if(rc(t)>e)throw new Error(Pi);r+=4+rc(t)});const o=new Uint8Array(r),a=Pt(o);return t.forEach((t,e)=>{Qs(a,n,e),Qs(a,n+2,rc(t)),ec(o,t,n+4),n+=4+rc(t)}),o}function Fs(t,e){const{Je:r}=t;let{We:n,extraFieldLength:o}=r,a=64-(e+rc(n))%64;a<4&&(a+=64);const i=new Uint8Array(a),s=Pt(i);Qs(s,0,y),Qs(s,2,a-4);const c=n;r.We=n=new Uint8Array(rc(c)+a),ec(n,c),ec(n,i,rc(c));const l=Pt(n);Qs(l,28,o+a),r.Ve=l,t.rr+=a}function Ts(t){const e=new Uint8Array(4);Pt(e).setUint32(0,t,!0);let r=4;for(;r>1&&0===e[r-1];)r--;return e.subarray(0,r)}function Is(t){const e=new Uint8Array(t),r=Pt(e);let n=0;return{Pt:e,Be:t=>{!function(t,e,r){t.setUint8(e,r)}(r,n,t),n+=1},ve:t=>{Qs(r,n,t),n+=2},je:t=>{$s(r,n,t),n+=4},_e:t=>{tc(r,n,BigInt(t)),n+=8},Le:t=>{ec(e,t,n),n+=rc(t)},Pe:t=>n+=t}}function Os(t){const{diskNumber:e=0}=t;return e}function Us(t){const{diskOffset:e=0}=t;return e}function Cs(t,e){const{availableSize:r=O}=t;return e>r}function ks(t,{diskNumber:e=0,diskOffset:r=0}){return t.offset-r-(e?t.ne:0)}function Ms(t){const e=Pt(t);let r=0;for(;r+4<=rc(t);){const n=4+Js(e,r+2);if(1==Js(e,r))return Ms(Bt(t.subarray(0,r),t.subarray(Math.min(r+n,rc(t)))));r+=n}return t}async function Ns(t,e,r,n){if(n>0){const{writer:o}=t;let a=0;try{await Ps(yo(e,{offset:r,size:n}),o,I,t=>a+=t)}catch(e){t.hasCorruptedEntries=!0;try{e.corruptedEntry=!0}catch{}throw e}finally{o.size+=a,t.offset+=a}}}async function vs(t,e){const r=await ho(t,e,z);if(rc(r)<z)return z;const n=Pt(r);return z+Js(n,26)+Js(n,28)}function _s(t,{offset:e,diskNumberStart:r}){return e+(t.Gt?t.Gt(r):0)}function Ls(){const t=new Uint8Array(4);return $s(Pt(t),0,o),t}async function Bs(t,e){delete t.te,await js(e,Ls()),t.offset+=4}async function js(t,e){const{writable:r}=t,n=r.getWriter();try{await n.ready,t.size+=rc(e),await n.write(e)}finally{n.releaseLock()}}async function Ps(t,e,r,n){const o=e.writable.getWriter();try{await t.pipeTo(new WritableStream({async write(t){await o.ready,await o.write(t),n(rc(t))}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{o.releaseLock()}}function Ws(t){if(t){const e=(BigInt(t.getTime())+BigInt(116444736e5))*BigInt(1e4);return e<Zi?Zi:e>Hi?Hi:e}}function Vs(t){return Math.floor(t.getTime()/1e3)}function Zs(t){return Math.min(Vi,Math.max(Wi,t))}function Hs(t,e,r,n){const o=e[r]===I?t.options[r]:e[r];return o===I?n:o}function Gs(t,e,r,n){const o=Hs(t,e,r,n);if(null===o)return n;if(o!==I&&(typeof o.getTime!=C||Number.isNaN(o.getTime())))throw new Error(Ui);return o}function Ks(t,e,r){return ut(Hs(t,e,r))}function Ys(t,e,r,n){return yt(Hs(t,e,r,n))}function qs(t){return t+5*(Math.floor(t/16383)+1)}function Xs(t,e){return t===I?e===I||e>0:0!==t}function Js(t,e){return t.getUint16(e,!0)}function Qs(t,e,r){t.setUint16(e,r,!0)}function $s(t,e,r){t.setUint32(e,r,!0)}function tc(t,e,r){t.setBigUint64(e,r,!0)}function ec(t,e,r){t.set(e,r)}function rc(...t){let e=0;return t.forEach(t=>t&&(e+=t.length)),e}function nc({version:e,bitFlag:r,compressionMethod:n,uncompressedSize:o,compressedSize:a,lastModDate:i,rawLastModDate:s,rawFilename:c,me:l,he:u,extraFieldLength:f}){const d=Is(26),w=d.Pt,p=Pt(w);if(d.ve(e),d.ve(r),d.ve(n),s===I){const t=new Uint32Array(1),e=Pt(t);Qs(e,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Qs(e,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),s=t[0]}return d.je(s),d.Pe(4),l||a!==I?d.je(l?t:a):d.Pe(4),u||o!==I?d.je(u?t:o):d.Pe(4),d.ve(rc(c)),d.ve(f),{we:w,pe:p,rawLastModDate:s}}function oc(t){return t.every(t=>t>=32&&t<=126)}function ac(t,e,r,n,o){let a=0;return e&&(a|=S),r&&(a|=8),8!=o&&9!=o||(t>=0&&t<=3&&(a|=6),t>3&&t<=5&&(a|=4),9==t&&(a|=2)),n&&(a|=1),a}function ic(){return"application/octet-stream"}function sc(){const{CompressionStream:t,DecompressionStream:e,CompressionStreamFallback:r,DecompressionStreamFallback:n}=Ot(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:cc(r,dr)||cc(t,dr)||cc(t,pr),decompression:cc(n,dr)||cc(e,dr)||cc(e,pr),registered:!1},{compressionMethod:9,compression:!1,decompression:cc(n,wr)||cc(e,wr),registered:!1}];for(const t of ir()){const e=sr(t.format);o.push({compressionMethod:t.compressionMethod,compression:e?typeof e.CompressionStream==C:I,decompression:e?typeof e.DecompressionStream==C:I,registered:!0})}return o}function cc(t,e){if(!t)return!1;const{Er:r}=t;return r?r.includes(e):Sr(t,e)}const lc="2.13.0",uc=1048576,fc=".zip.js-temp";function dc(t={}){const{thresholdBytes:e=uc,directoryName:r=fc,getDirectory:n=()=>navigator.storage.getDirectory()}=t;let o;function a(){return o||(o=Promise.resolve(n()).then(t=>t.getDirectoryHandle(r,{create:!0}))),o}return function(){const t=[];let r,n,o,i,s=0,c=!1;const l=new WritableStream({async write(i){c?await o.write(i):(t.push(i),s+=i.length,s>e&&await async function(){const e=await a();r=crypto.randomUUID?crypto.randomUUID():Array.from(crypto.getRandomValues(new Uint8Array(16)),t=>t.toString(16).padStart(2,"0")).join(""),n=await e.getFileHandle(r,{create:!0}),o=(await n.createWritable()).getWriter(),c=!0;for(const e of t)await o.write(e);t.length=0}())},async close(){o&&(await o.close(),o=null)}});let u=0;return{writable:l,readable:new ReadableStream({async pull(e){if(c){if(!i){const t=await n.getFile();i=t.stream().getReader()}const{value:t,done:r}=await i.read();r?e.close():e.enqueue(t)}else u<t.length?e.enqueue(t[u++]):e.close()},async cancel(t){i&&await i.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(o){try{await o.close()}catch{}o=null}if(r){try{const t=await a();await t.removeEntry(r)}catch{}n=r=null}t.length=0}}}}const wc=1048576;function pc(t={}){const{thresholdBytes:e=wc}=t;return function(){const t=[];let r,n,o,a=0,i=!1;const s=new WritableStream({async write(o){i?await r.write(o):(t.push(o),a+=o.length,a>e&&await async function(){const e=new TransformStream;n=Ye(e.readable),r=e.writable.getWriter(),i=!0;for(const e of t)await r.write(e);t.length=0}())},async close(){r&&(await r.close(),r=null)}});let c=0;return{writable:s,readable:new ReadableStream({async pull(e){if(i){if(!o){const t=await n;o=t.stream().getReader()}const{value:t,done:r}=await o.read();r?e.close():e.enqueue(t)}else c<t.length?e.enqueue(t[c++]):e.close()},async cancel(t){o&&await o.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(r){try{await r.abort()}catch{}r=null}n&&(n.catch(()=>{}),n=null),t.length=0}}}}const mc=1048576,hc=".zip.js-temp",yc="createSyncAccessHandle is only available in dedicated workers";function Ec(t={}){const{thresholdBytes:e=mc,directoryName:r=hc,getDirectory:n}=t;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new Error(yc);const o=n||(()=>navigator.storage.getDirectory());let a;function i(){return a||(a=Promise.resolve(o()).then(t=>t.getDirectoryHandle(r,{create:!0}))),a}return function(){const t=[];let r,n,o=0,a=!1,s=0,c=0;const l=new WritableStream({async write(c){a?(n.write(c,{at:s}),s+=c.length):(t.push(c),o+=c.length,o>e&&await async function(){const e=await i();r=crypto.randomUUID?crypto.randomUUID():Array.from(crypto.getRandomValues(new Uint8Array(16)),t=>t.toString(16).padStart(2,"0")).join("");const o=await e.getFileHandle(r,{create:!0});n=await o.createSyncAccessHandle(),a=!0;for(const e of t)n.write(e,{at:s}),s+=e.length;t.length=0}())},close(){n&&n.flush()}});let u=0;return{writable:l,readable:new ReadableStream({pull(e){if(a){const t=s-c;if(t<=0)return void e.close();const r=new Uint8Array(Math.min(524288,t)),o=n.read(r,{at:c});o?(c+=o,e.enqueue(r.subarray(0,o))):e.close()}else u<t.length?e.enqueue(t[u++]):e.close()}},{highWaterMark:0}),dispose:async function(){if(n){try{n.close()}catch{}n=null}if(r){try{const t=await i();await t.removeEntry(r)}catch{}r=null}t.length=0}}}}try{_t({baseURI:import.meta.url})}catch{}const bc="deflate",Sc="deflate-raw",gc="deflate64-raw",Ac="gzip";let Rc,Dc,xc,zc,Fc;function Tc(t,e,r={}){if(!Rc){const t=new Error("WASM module not loaded");throw t.cause=Fc,t}const n="number"==typeof r.level?r.level:-1,o="number"==typeof r.outBuffer?r.outBuffer:65536,a="number"==typeof r.inBufferSize?r.inBufferSize:65536;return new TransformStream({start(){try{let r;if(this.Sr=Dc(o),this.in=Dc(a),this.inBufferSize=a,!this.Sr||!this.in)throw new Error("allocation failed");if(this.gr=new Uint8Array(o),t?(this.Ar=Rc.deflate_process,this.Rr=Rc.deflate_last_consumed,this.Dr=Rc.deflate_end,this.zr=Rc.deflate_new(),r=e===Ac?Rc.deflate_init_gzip(this.zr,n):e===Sc?Rc.deflate_init_raw(this.zr,n):Rc.deflate_init(this.zr,n)):e===gc?(this.Ar=Rc.inflate9_process,this.Rr=Rc.inflate9_last_consumed,this.Dr=Rc.inflate9_end,this.zr=Rc.inflate9_new(),r=Rc.inflate9_init_raw(this.zr)):(this.Ar=Rc.inflate_process,this.Rr=Rc.inflate_last_consumed,this.Dr=Rc.inflate_end,this.zr=Rc.inflate_new(),r=e===Sc?Rc.inflate_init_raw(this.zr):e===Ac?Rc.inflate_init_gzip(this.zr):Rc.inflate_init(this.zr)),0!==r)throw new Error("init failed:"+r)}catch(t){throw i(this),t}},transform(t,e){try{const r=t,n=new Uint8Array(zc.buffer),a=this.Ar,i=this.Rr,s=this.Sr,c=this.gr;let l=0;for(;l<r.length;){const t=Math.min(r.length-l,32768);if((!this.in||this.inBufferSize<t)&&(this.in&&xc&&(xc(this.in),this.in=0),this.in=Dc(t),this.inBufferSize=t,!this.in))throw new Error("allocation failed");n.set(r.subarray(l,l+t),this.in);const u=a(this.zr,this.in,t,s,o,0),f=u>>24&255,d=128&f?f-256:f;if(d<0)throw new Error("process error:"+d);const w=16777215&u;w&&(c.set(n.subarray(s,s+w),0),e.enqueue(c.slice(0,w)));const p=i(this.zr);if(0===p&&0===w)break;l+=p}}catch(t){i(this),e.error(t)}},flush(t){try{const e=new Uint8Array(zc.buffer),r=this.Ar,n=this.Sr,a=this.gr;for(;;){const i=r(this.zr,0,0,n,o,4),s=i>>24&255,c=128&s?s-256:s;if(c<0)throw new Error("process error:"+c);const l=16777215&i;if(l&&(a.set(e.subarray(n,n+l),0),t.enqueue(a.slice(0,l))),1===s||0===l)break}}catch(e){t.error(e)}finally{const e=i(this);0!==e&&t.error(new Error("end error:"+e))}},cancel(){i(this)}});function i(t){let e=0;return t.zr&&t.Dr&&(e=t.Dr(t.zr)),t.zr=0,t.in&&xc&&xc(t.in),t.in=0,t.Sr&&xc&&xc(t.Sr),t.Sr=0,e}}class Ic{constructor(t=bc,e){return Tc(!0,t,e)}}class Oc{constructor(t=bc,e){return Tc(!1,t,e)}}Ic.At=!0,Oc.At=!0,Ic.Er=[bc,Sc,Ac],Oc.Er=[bc,Sc,Ac,gc];let Uc,Cc=!1;async function kc(){await async function(){await Promise.allSettled(rn.map(t=>(wn(t),t.terminate()))),kr=I,Mr=!1}(),Uc=null,Cc=!1,Rc=Dc=xc=zc=Fc=null}!function({Fr:t}){vr=t}({Fr:t=>{if(!Uc){let{wasmURI:e}=t;typeof e==C&&(e=e()),Uc=async function(t,{baseURI:e}){if(!Cc)try{await async function(t,e){let r,n;try{try{n=new URL(t,e)}catch{}const o=await fetch(n);r=await o.arrayBuffer()}catch(e){if(!t.startsWith("data:application/wasm;base64,"))throw e;r=function(t){const e=t.split(",")[1],r=atob(e),n=r.length,o=new Uint8Array(n);for(let t=0;t<n;++t)o[t]=r.charCodeAt(t);return o.buffer}(t)}!function(t){if(Rc=t,({malloc:Dc,free:xc,memory:zc}=Rc),"function"!=typeof Dc||"function"!=typeof xc||!zc)throw Rc=Dc=xc=zc=null,new Error("Invalid WASM module")}((await WebAssembly.instantiate(r)).instance.exports)}(t,e),Cc=!0}catch(t){throw function(t){Fc=t}(t),t}}(e,t).catch(t=>{throw Uc=null,t})}return Uc}}),_t({CompressionStreamFallback:Ic,DecompressionStreamFallback:Oc}),_t({workerURI:new URL("./zip-web-worker.js",import.meta.url).href,wasmURI:new URL("./zip-module.wasm",import.meta.url).href});export{_n as BlobReader,Ln as BlobWriter,kn as Data64URIReader,Mn as Data64URIWriter,lt as ERR_ABORTED,wa as ERR_AMBIGUOUS_ARCHIVE,ra as ERR_BAD_FORMAT,aa as ERR_CENTRAL_DIRECTORY_NOT_FOUND,zi as ERR_DUPLICATED_NAME,ca as ERR_ENCRYPTED,pa as ERR_ENCRYPTED_CENTRAL_DIRECTORY,da as ERR_ENTRY_DATA_OUT_OF_BOUNDS,oa as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,na as ERR_EOCDR_NOT_FOUND,sa as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,En as ERR_HTTP_RANGE,bn as ERR_HTTP_RESOURCE_CHANGED,yn as ERR_HTTP_STATUS,se as ERR_INVALID_AUTHENTICATION_CODE,bt as ERR_INVALID_BASE_URI,Xe as ERR_INVALID_CODEC_DEFINITION,Qe as ERR_INVALID_CODEC_MODULE,Fi as ERR_INVALID_COMMENT,Ti as ERR_INVALID_COMMENT_TYPE,ur as ERR_INVALID_COMPRESSED_DATA,fr as ERR_INVALID_CRC32,Ui as ERR_INVALID_DATE,Mi as ERR_INVALID_ENCRYPTION_STRENGTH,ls as ERR_INVALID_ENTRY,Ii as ERR_INVALID_ENTRY_COMMENT,Oi as ERR_INVALID_ENTRY_COMMENT_TYPE,Ci as ERR_INVALID_ENTRY_NAME,Li as ERR_INVALID_EXTRAFIELD,Pi as ERR_INVALID_EXTRAFIELD_DATA,ji as ERR_INVALID_EXTRAFIELD_DATA_TYPE,Bi as ERR_INVALID_EXTRAFIELD_TYPE,ya as ERR_INVALID_FILENAME_VALIDATION,at as ERR_INVALID_FUNCTION_OPTION,es as ERR_INVALID_GID,ss as ERR_INVALID_LEVEL,Ea as ERR_INVALID_MAX_APPENDED_DATA_SIZE,Et as ERR_INVALID_MAX_WORKERS,as as ERR_INVALID_MSDOS_ATTRIBUTES,is as ERR_INVALID_MSDOS_DATA,ie as ERR_INVALID_PASSWORD,st as ERR_INVALID_PASSWORD_TYPE,ct as ERR_INVALID_PASS_THROUGH_VALUE,Qi as ERR_INVALID_READER,it as ERR_INVALID_SIGNAL,cs as ERR_INVALID_SIGNATURE_DATA,ha as ERR_INVALID_STRICTNESS,ts as ERR_INVALID_UID,lr as ERR_INVALID_UNCOMPRESSED_SIZE,ns as ERR_INVALID_UNIX_EXTRA_FIELD_TYPE,os as ERR_INVALID_UNIX_ID_SIZE,rs as ERR_INVALID_UNIX_MODE,St as ERR_INVALID_URI,ki as ERR_INVALID_VERSION,Sn as ERR_ITERATOR_COMPLETED_TOO_SOON,ia as ERR_LOCAL_FILE_HEADER_NOT_FOUND,fa as ERR_OVERLAPPING_ENTRY,Je as ERR_RESERVED_COMPRESSION_METHOD,ua as ERR_SPLIT_ZIP_FILE,Yi as ERR_UNDEFINED_COMPRESSION_METHOD,qi as ERR_UNDEFINED_CRC32,Ji as ERR_UNDEFINED_READER,Ki as ERR_UNDEFINED_UNCOMPRESSED_SIZE,Xi as ERR_UNDETERMINED_SIZE,ma as ERR_UNSAFE_FILENAME,$e as ERR_UNSUPPORTED_COMPRESSION,yc as ERR_UNSUPPORTED_CONTEXT,le as ERR_UNSUPPORTED_CRYPTO_API,la as ERR_UNSUPPORTED_ENCRYPTION,_i as ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH,Ni as ERR_UNSUPPORTED_ENCRYPTION_USDZ,Gi as ERR_UNSUPPORTED_FORMAT,vi as ERR_UNSUPPORTED_SPLIT_USDZ,ba as ERR_UNSUPPORTED_UINT64,Cr as ERR_WORKER_STARTUP_TIMEOUT,gn as ERR_WRITER_NOT_INITIALIZED,An as ERR_WRITER_SIZE_NOT_WRITABLE,us as ERR_ZIP_CRYPTO_LAST_MOD_DATE,$i as ERR_ZIP_NOT_EMPTY,ao as HttpRangeReader,oo as HttpReader,Un as Reader,co as SplitDataReader,lo as SplitDataWriter,Bn as TextReader,jn as TextWriter,io as Uint8ArrayReader,so as Uint8ArrayWriter,lc as VERSION,za as WARNING_APPENDED_DATA,ds as WARNING_CLAMPED_LAST_MODIFICATION_DATE,Aa as WARNING_COMPRESSED_PATCHED_DATA,fs as WARNING_COMPRESSION_UNAVAILABLE,Oa as WARNING_DUPLICATE_FILENAME,Ra as WARNING_MALFORMED_EXTRA_FIELD,Ma as WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG,Na as WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD,va as WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES,ka as WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME,Ua as WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY,Ca as WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY,Ta as WARNING_PREPENDED_CENTRAL_DIRECTORY,Fa as WARNING_PREPENDED_DATA,Ia as WARNING_TRAILING_CENTRAL_DIRECTORY_DATA,ga as WARNING_UNKNOWN_VERSION,Da as WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA,Sa as WARNING_UNSORTED_CENTRAL_DIRECTORY,xa as WARNING_WRAPPED_ENTRIES_COUNT,Cn as Writer,Va as ZipReader,Za as ZipReaderStream,bs as ZipWriter,Ss as ZipWriterStream,kt as configure,pc as createBlobTempStream,dc as createOPFSTempStream,Ec as createSyncAccessHandleTempStream,ic as getMimeType,ir as getRegisteredCodecs,sc as getSupportedCompressionMethods,Ha as isZipFile,nr as registerCodec,Lt as resetConfiguration,kc as terminateWorkers,or as unregisterCodec};
1
+ const t=4294967295,e=65535,r=255,n=67324752,o=134695760,a=o,i=84233040,s=33639248,c=101010256,l=101075792,u=117853008,f=46,d=22,w=20,p=56,m=39169,h=21589,y=6534,E=30837,b=30805,S=2048,A=61440,g=16384,R=2048,D=1024,x="/",F=30,z=new Date(2107,11,31,23,59,58),I=new Date(1980,0,1),T=void 0,U=1/0,O="undefined",C="function",k="object",M="string",N="boolean",v=new Uint8Array,_=Symbol.asyncDispose||Symbol(),L="password",B="rawPassword",j="passThrough",P="signal",W="useWebWorkers",V="useCompressionStream",Z="transferStreams",H="preventClose",G="level",Y="useUnicodeFileNames",q="dataDescriptor",K="offset",X="usdz",J="maxAppendedDataSize",Q="entry",$="filename",tt="comment",et="strict",rt="balanced",nt="tolerant",ot="compressed",at="Invalid option (must be a function)",it="Invalid signal (must be an AbortSignal instance)",st="Invalid password (password must be a string, rawPassword must be a Uint8Array)",ct="Invalid passThrough option (must be a boolean or 'compressed')",lt="The operation was aborted";function ut(t){if(t&&typeof t!=C)throw new Error(at);return t}function ft(t){if(t&&(typeof t.addEventListener!=C||typeof t.aborted!=N))throw new Error(it);return t||T}function dt(t){if(t&&t.aborted)throw t.reason===T?new DOMException(lt,"AbortError"):t.reason}function wt(t,e){if(t&&typeof t!=M||e&&!(e instanceof Uint8Array))throw new Error(st)}function pt(t){if(t!==T&&typeof t!=N&&t!==ot)throw new Error(ct);return t}function mt(t,e,r){if(!Number.isInteger(t)||t<0||t>e)throw new Error(r)}function ht(t,e,r){t!==T&&mt(t,e,r)}function yt(t){return typeof t==M&&t.trim()?Number(t):t}const Et="Invalid maxWorkers (must be an integer greater than 0)",bt="Invalid baseURI (must be a string)",St="Invalid URI (must be a string or a function returning a string)";let At=2;try{typeof navigator!=O&&navigator.hardwareConcurrency&&(At=navigator.hardwareConcurrency)}catch{}const gt={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:At,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof CompressionStream!=O&&CompressionStream,DecompressionStream:typeof DecompressionStream!=O&&DecompressionStream},Rt="maxWorkers",Dt="baseURI",xt=["wasmURI","workerURI"],Ft=["chunkSize",Rt,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],zt=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],It=[Dt,...xt,"useCompressionStream","useWebWorkers","transferStreams",...Ft,...zt],Tt={...gt};function Ut(){return Tt}function Ot(t){return Ct(t.chunkSize)}function Ct(t){return t=yt(t),Number.isInteger(t)&&t>=1?Math.max(t,64):65536}function kt(t){Object.assign(Tt,Mt(vt(t)))}function Mt(t){const e={};for(const r of It){const n=t[r];n!==T&&(e[r]=Nt(r,n))}return e}function Nt(t,e){if(Ft.includes(t)){if(e=yt(e),t==Rt&&(!Number.isInteger(e)||e<1))throw new Error(Et)}else if(zt.includes(t))ut(e);else if(t==Dt){if(e&&typeof e!=M)throw new Error(bt)}else if(xt.includes(t)&&e&&typeof e!=M&&typeof e!=C)throw new Error(St);return e}function vt(t){t=t||{};const{CompressionStreamZlib:e,DecompressionStreamZlib:r}=t;if(e===T&&r===T)return t;const n=Object.assign({},t);return n.CompressionStreamFallback===T&&(n.CompressionStreamFallback=e),n.DecompressionStreamFallback===T&&(n.DecompressionStreamFallback=r),n}function _t(t){const e=Mt(vt(t));Object.assign(gt,e),Object.assign(Tt,e)}function Lt(){for(const t of It)delete Tt[t];Object.assign(Tt,gt)}function Bt(t,e){const r=new Uint8Array(t.length+e.length);return r.set(t),r.set(e,t.length),r}function jt(t){return t.byteOffset||t.byteLength!=t.buffer.byteLength?new Uint8Array(t):t}function Pt(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Wt(t){return Boolean(t)&&"object"==typeof t}const Vt=[[],[],[],[],[],[],[],[]];for(let t=0;t<256;t++){let e=t;for(let t=0;t<8;t++)e=1&e?e>>>1^3988292384:e>>>1;Vt[0][t]=e}for(let t=0;t<256;t++)for(let e=1;e<8;e++){const r=Vt[e-1][t];Vt[e][t]=r>>>8^Vt[0][255&r]}const[Zt,Ht,Gt,Yt,qt,Kt,Xt,Jt]=Vt;class Qt{constructor(t){this.o=t||-1}append(t){let e=0|this.o;const r=0|t.length;let n=0;if(r>=8&&t.buffer){const o=new DataView(t.buffer,t.byteOffset,r),a=r-8;for(;n<=a;n+=8){const t=e^o.getInt32(n,!0),r=o.getInt32(n+4,!0);e=Jt[255&t]^Xt[t>>>8&255]^Kt[t>>>16&255]^qt[t>>>24&255]^Yt[255&r]^Gt[r>>>8&255]^Ht[r>>>16&255]^Zt[r>>>24&255]}}for(;n<r;n++)e=e>>>8^Zt[255&(e^t[n])];this.o=e}get(){return~this.o}}class $t extends TransformStream{constructor(){let t;const e=new Qt;super({transform(t,r){e.append(t),r.enqueue(t)},flush(){const r=new Uint8Array(4);new DataView(r.buffer).setUint32(0,e.get()),t.value=r}}),t=this}}function te(t){if(typeof TextEncoder==O){t=unescape(encodeURIComponent(t));const e=new Uint8Array(t.length);for(let r=0;r<e.length;r++)e[r]=t.charCodeAt(r);return e}return(new TextEncoder).encode(t)}const ee=64,re=20,ne=new Uint8Array([128]),oe=new Uint8Array(1),ae=new Int32Array([1732584193,4023233417,2562383102,271733878,3285377520]),ie=new Uint8Array(256),se=new Int32Array(256),ce=new Int32Array(256),le=new Int32Array(256),ue=new Int32Array(256);let fe=!1;function de(t,e){!function(){if(!fe){let t=1,e=1;do{t=255&(t^t<<1^(128&t?27:0)),e=255&(e^e<<1),e=255&(e^e<<2),e=255&(e^e<<4),128&e&&(e^=9),ie[t]=255&(e^(e<<1|e>>7)^(e<<2|e>>6)^(e<<3|e>>5)^(e<<4|e>>4)^99)}while(1!=t);ie[0]=99;for(let t=0;t<256;t++){const e=ie[t],r=me(e),n=r<<24|e<<16|e<<8|r^e;se[t]=n,ce[t]=n>>>8|n<<24,le[t]=n>>>16|n<<16,ue[t]=n>>>24|n<<8}fe=!0}}();const r=new Int32Array(60),n=function(t,e){const r=t.length>>2,n=r+6,o=4*(n+1);let a=1;for(let n=0;n<r;n++)e[n]=t[4*n]<<24|t[4*n+1]<<16|t[4*n+2]<<8|t[4*n+3];for(let t=r;t<o;t++){let n=e[t-1];t%r==0?(n=pe(n<<8|n>>>24)^a<<24,a=me(a)):r>6&&t%r==4&&(n=pe(n)),e[t]=e[t-r]^n}return n}(t,r),o=new Uint8Array(16),a=new Int32Array(4),i=we(e);return{process(t,e){e&&i.update(t,0,t.length),function(t){const e=new DataView(t.buffer,t.byteOffset,t.byteLength),r=t.length;let n=0;for(;n+16<=r;n+=16)s(),e.setInt32(n,e.getInt32(n)^a[0]),e.setInt32(n+4,e.getInt32(n+4)^a[1]),e.setInt32(n+8,e.getInt32(n+8)^a[2]),e.setInt32(n+12,e.getInt32(n+12)^a[3]);if(n<r){s();for(let e=0;n<r;n++,e++)t[n]^=a[e>>2]>>>24-8*(3&e)}}(t),e||i.update(t,0,t.length)},digest:()=>i.digest()};function s(){for(let t=0;t<16&&(o[t]++,0===o[t]);t++);let t=(o[0]<<24|o[1]<<16|o[2]<<8|o[3])^r[0],e=(o[4]<<24|o[5]<<16|o[6]<<8|o[7])^r[1],i=(o[8]<<24|o[9]<<16|o[10]<<8|o[11])^r[2],s=(o[12]<<24|o[13]<<16|o[14]<<8|o[15])^r[3],c=4;for(let o=1;o<n;o++,c+=4){const n=se[t>>>24]^ce[e>>>16&255]^le[i>>>8&255]^ue[255&s]^r[c],o=se[e>>>24]^ce[i>>>16&255]^le[s>>>8&255]^ue[255&t]^r[c+1],a=se[i>>>24]^ce[s>>>16&255]^le[t>>>8&255]^ue[255&e]^r[c+2],l=se[s>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&i]^r[c+3];t=n,e=o,i=a,s=l}a[0]=(ie[t>>>24]<<24|ie[e>>>16&255]<<16|ie[i>>>8&255]<<8|ie[255&s])^r[c],a[1]=(ie[e>>>24]<<24|ie[i>>>16&255]<<16|ie[s>>>8&255]<<8|ie[255&t])^r[c+1],a[2]=(ie[i>>>24]<<24|ie[s>>>16&255]<<16|ie[t>>>8&255]<<8|ie[255&e])^r[c+2],a[3]=(ie[s>>>24]<<24|ie[t>>>16&255]<<16|ie[e>>>8&255]<<8|ie[255&i])^r[c+3]}}function we(t){const e=function(){const t=new Int32Array(ae),e=new Int32Array(80),r=new Uint8Array(ee),n=new DataView(r.buffer),o=new Uint8Array(8);let a=0,i=0;return{update:s,digest:function(){const e=8*i,r=Math.floor(e/4294967296),n=e>>>0;for(s(ne,0,1);56!=a;)s(oe,0,1);o[0]=r>>>24,o[1]=r>>>16,o[2]=r>>>8,o[3]=r,o[4]=n>>>24,o[5]=n>>>16,o[6]=n>>>8,o[7]=n,s(o,0,8);const c=new Uint8Array(re),l=new DataView(c.buffer);for(let e=0;e<t.length;e++)l.setInt32(4*e,t[e]);return t.set(ae),a=0,i=0,c}};function s(t,e,o){const s=e+o;if(i+=o,a){for(;e<s&&a<ee;)r[a++]=t[e++];a==ee&&(c(n,0),a=0)}if(e+ee<=s){const r=new DataView(t.buffer,t.byteOffset,t.byteLength);for(;e+ee<=s;e+=ee)c(r,e)}for(;e<s;)r[a++]=t[e++]}function c(r,n){for(let t=0;t<16;t++)e[t]=r.getInt32(n+4*t);for(let t=16;t<80;t++){const r=e[t-3]^e[t-8]^e[t-14]^e[t-16];e[t]=r<<1|r>>>31}let o,a=t[0],i=t[1],s=t[2],c=t[3],l=t[4];for(let t=0;t<20;t++)o=(a<<5|a>>>27)+(i&s|~i&c)+l+1518500249+e[t]|0,l=c,c=s,s=i<<30|i>>>2,i=a,a=o;for(let t=20;t<40;t++)o=(a<<5|a>>>27)+(i^s^c)+l+1859775393+e[t]|0,l=c,c=s,s=i<<30|i>>>2,i=a,a=o;for(let t=40;t<60;t++)o=(a<<5|a>>>27)+(i&s|i&c|s&c)+l+2400959708+e[t]|0,l=c,c=s,s=i<<30|i>>>2,i=a,a=o;for(let t=60;t<80;t++)o=(a<<5|a>>>27)+(i^s^c)+l+3395469782+e[t]|0,l=c,c=s,s=i<<30|i>>>2,i=a,a=o;t[0]=t[0]+a|0,t[1]=t[1]+i|0,t[2]=t[2]+s|0,t[3]=t[3]+c|0,t[4]=t[4]+l|0}}(),r=new Uint8Array(ee),n=new Uint8Array(ee);t.length>ee&&(e.update(t,0,t.length),t=e.digest());for(let e=0;e<ee;e++){const o=e<t.length?t[e]:0;r[e]=54^o,n[e]=92^o}return e.update(r,0,ee),{update(t,r,n){e.update(t,r,n)},digest(){const t=e.digest();e.update(n,0,ee),e.update(t,0,re);const o=e.digest();return e.update(r,0,ee),o}}}function pe(t){return ie[t>>>24]<<24|ie[t>>>16&255]<<16|ie[t>>>8&255]<<8|ie[255&t]}function me(t){return 255&(t<<1^27*(t>>7))}const he=typeof crypto!=O&&typeof crypto.getRandomValues==C,ye="Invalid password",Ee="Invalid authentication code",be="zipjs-abort-check-password",Se="Crypto API not supported";function Ae(t){if(he)return crypto.getRandomValues(t);throw new Error(Se)}const ge={name:"PBKDF2"},Re=Object.assign({hash:{name:"HMAC"}},ge),De=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},ge),xe=["deriveBits"],Fe=[8,12,16],ze=[16,24,32],Ie=10,Te=typeof crypto!=O,Ue=Te&&crypto.subtle;let Oe=Te&&typeof Ue!=O&&typeof Ue.importKey==C&&typeof Ue.deriveBits==C,Ce=de;class ke extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r,checkPasswordOnly:n,checkAuthenticationCode:o=!0}){super({start(){Ne(this,t,e,r)},async transform(t,e){const r=this,{password:o,strength:a,l:i,ready:s}=r;o?(await async function(t,e,r,n){const o=await Le(t,e,r,je(n,0,Fe[e])),a=je(n,Fe[e]);if(o[0]!=a[0]||o[1]!=a[1])throw _e(t),new Error(ye)}(r,a,o,je(t,0,Fe[a]+2)),t=je(t,Fe[a]+2),n?(_e(r),e.error(new Error(be))):i()):await s;const c=new Uint8Array(t.length-Ie-(t.length-Ie)%16);e.enqueue(ve(r,t,c,0,Ie,!0))},async flush(t){const{m:e,h:r,ready:n}=this;if(e){await n;const a=je(r,r.length-Ie),i=new Uint8Array(je(r,0,r.length-Ie));e.process(i,!0);const s=e.digest();let c=r.length<Ie?1:0;for(let t=0;t<Ie;t++)c|=s[t]^a[t];if(c&&o)throw new Error(Ee);t.enqueue(i)}},cancel(){_e(this)}})}}class Me extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r}){super({start(){Ne(this,t,e,r)},async transform(t,e){const r=this,{password:n,strength:o,l:a,ready:i}=r;let s=v;n?(s=await async function(t,e,r){const n=Ae(new Uint8Array(Fe[e]));return Bt(n,await Le(t,e,r,n))}(r,o,n),a()):await i;const c=new Uint8Array(s.length+t.length-t.length%16);c.set(s,0),e.enqueue(ve(r,t,c,s.length,0,!1))},async flush(t){const{m:e,h:r,ready:n}=this;if(e){await n;const o=new Uint8Array(r);e.process(o,!1);const a=je(e.digest(),0,Ie);t.enqueue(Bt(o,a))}},cancel(){_e(this)}})}}function Ne(t,e,r,n){Object.assign(t,{ready:new Promise(e=>t.l=e),password:Be(e,r),strength:n-1,h:v})}function ve(t,e,r,n,o,a){const{m:i,h:s}=t;s.length&&(e=Bt(s,e));const c=e.length-o,l=c-c%16;if(r=function(t,e){if(e&&e>t.length){const r=t;(t=new Uint8Array(e)).set(r,0)}return t}(r,n+l),l){const t=je(r,n,n+l);t.set(je(e,0,l)),i.process(t,a)}return t.h=je(e,l),r}function _e({m:t}){t&&t.dispose&&t.dispose()}async function Le(t,e,r,n){t.password=null;const o=ze[e],a=await async function(t,e,r){if(Oe)try{const n=await Ue.importKey("raw",t,Re,!1,xe);return new Uint8Array(await Ue.deriveBits(Object.assign({salt:e},De),n,8*r))}catch{Oe=!1}return function(t,e,r,n){const o=we(t),a=new Uint8Array(n),i=new Uint8Array(e.length+4),s=new DataView(i.buffer);i.set(e);for(let t=1,r=0;r<n;t++,r+=re){s.setUint32(e.length,t),o.update(i,0,i.length);let c=o.digest();const l=c.slice();for(let t=1;t<1e3;t++){o.update(c,0,re),c=o.digest();for(let t=0;t<re;t++)l[t]^=c[t]}a.set(l.subarray(0,Math.min(re,n-r)),r)}return a}(t,e,0,r)}(r,n,2*o+2);return t.m=Ce(je(a,0,o),je(a,o,2*o)),je(a,2*o)}function Be(t,e){return e===T?te(t):e}function je(t,e,r){return t.subarray(e,r)}class Pe extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r,checkPasswordOnly:n}){super({start(){Ve(this,t,e,r)},transform(t,e){const r=this;if(r.password||r.rawPassword){const e=Ze(r,t.subarray(0,12));if(r.password=r.rawPassword=null,0!=(e[11]^r.passwordVerification))throw new Error(ye);t=t.subarray(12)}n?e.error(new Error(be)):e.enqueue(Ze(r,t))}})}}class We extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r}){super({start(){Ve(this,t,e,r)},transform(t,e){const r=this;let n,o;if(r.password||r.rawPassword){r.password=r.rawPassword=null;const e=Ae(new Uint8Array(12));e[11]=r.passwordVerification,n=new Uint8Array(t.length+e.length),n.set(He(r,e),0),o=12}else n=new Uint8Array(t.length),o=0;n.set(He(r,t),o),e.enqueue(n)}})}}function Ve(t,e,r,n){Object.assign(t,{password:e,rawPassword:r,passwordVerification:n}),function(t,e,r){const n=[305419896,591751049,878082192];if(Object.assign(t,{keys:n,S:new Qt(n[0]),A:new Qt(n[2])}),r)for(let e=0;e<r.length;e++)Ge(t,r[e]);else for(let r=0;r<e.length;r++)Ge(t,e.charCodeAt(r))}(t,e,r)}function Ze(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=Ye(t)^e[n],Ge(t,r[n]);return r}function He(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=Ye(t)^e[n],Ge(t,e[n]);return r}function Ge(t,e){let[,r]=t.keys;t.S.append([e]);const n=~t.S.get();r=Ke(Math.imul(Ke(r+qe(n)),134775813)+1),t.A.append([r>>>24]);const o=~t.A.get();t.keys=[n,r,o]}function Ye(t){const e=2|t.keys[2];return qe(Math.imul(e,1^e)>>>8)}function qe(t){return 255&t}function Ke(t){return 4294967295&t}function Xe(t){if(t instanceof ReadableStream)return t;const e=t.getReader();return new ReadableStream({async pull(t){const{value:r,done:n}=await e.read();n?t.close():t.enqueue(r)},cancel:t=>e.cancel(t)})}function Je(t,e){t=Xe(t);const r=e?{type:e}:{};if(typeof Blob.prototype.stream!=C||new Blob([]).stream()instanceof ReadableStream)return new Response(t).blob().then(t=>e?new Blob([t],r):t);const n=[];return t.pipeTo(new WritableStream({write(t){n.push(t)}})).then(()=>new Blob(n,r))}function Qe(t){if(t instanceof WritableStream)return t;const e=t.getWriter();return new WritableStream({write:t=>e.write(t),close:()=>e.close(),abort:t=>e.abort(t)})}const $e="Invalid codec definition",tr="Reserved compression method",er="Invalid codec module",rr="Compression method not supported",nr=[0,8,9,99],or=new Map,ar=new Map;function ir(t={}){const{compressionMethod:r,format:n,codecURI:o,CompressionStream:a,DecompressionStream:i,versionNeeded:s}=t;if(!Number.isInteger(r)||r<0||r>e||typeof n!=M||!n.length)throw new Error($e);if(nr.includes(r))throw new Error(tr);const c=typeof a==C||typeof i==C;if(!(c||typeof o==M&&o.length))throw new Error($e);or.set(r,{compressionMethod:r,format:n,codecURI:o,versionNeeded:s}),c&&fr(n,{CompressionStream:a,DecompressionStream:i})}function sr(t){const e=or.get(t);if(e){let r;or.delete(t),or.forEach(t=>r=r||t.format==e.format),r||ar.delete(e.format)}}function cr(t){return or.get(t)}function lr(){return Array.from(or.values(),t=>Object.assign({},t,ar.get(t.format)))}function ur(t){return ar.get(t)}function fr(t,e){const{CompressionStream:r,DecompressionStream:n}=e;if(typeof r!=C&&typeof n!=C)throw new Error(er);ar.set(t,{CompressionStream:r,DecompressionStream:n})}const dr="Invalid uncompressed size",wr="Invalid compressed data",pr="Invalid CRC32",mr="deflate-raw",hr="deflate64-raw",yr="gzip",Er=[31,139,8];class br extends TransformStream{constructor(t,{chunkSize:e,CompressionStreamFallback:r,CompressionStream:n}){super({});const{compressed:o,encrypted:a,useCompressionStream:i,zipCrypto:s,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:d,inputSize:w}=t,p=this;let m,h,y,E=super.readable;const b=f&&ur(f),S=c&&o&&!u&&!b&&(!a||s)&&Boolean(i&&n);if(a&&!s||!c||S||(m=new $t,E=Ir(E,m)),o)if(b)E=Tr(E,Fr(b.CompressionStream,f,{level:l,chunkSize:e,compressionMethod:d,uncompressedSize:w}));else if(S)y=new Sr,E=Tr(E,new n(yr)),E=Ir(E,y);else try{E=zr(E,i,{level:l,chunkSize:e},n,r)}catch(t){let e;try{e=new n(yr)}catch{throw t}E=Tr(E,e),E=Ir(E,new Sr)}a&&(s?E=Ir(E,new We(t)):(h=new Me(t),E=Ir(E,h))),xr(p,E,()=>{a&&!s||!c||(p.crc32=S?y.crc32:new DataView(m.value.buffer).getUint32(0))})}}class Sr extends TransformStream{constructor(){let t,e=10,r=new Uint8Array(0);super({transform(t,n){if(e){const r=Math.min(e,t.length);if(e-=r,!(t=t.subarray(r)).length)return}const o=r.length+t.length;if(o<=8)return void(r=Bt(r,t));const a=o-8,i=Math.min(a,r.length);n.enqueue(Bt(r.subarray(0,i),t.subarray(0,a-i))),r=Bt(r.subarray(i),t.subarray(a-i))},flush(){const e=Pt(r);t.crc32=e.getUint32(0,!0),t.uncompressedSize=e.getUint32(4,!0)}}),t=this}}class Ar extends TransformStream{constructor(t,{chunkSize:e,DecompressionStreamFallback:r,DecompressionStream:n}){super({});const{zipCrypto:o,encrypted:a,checkCrc32:i,crc32:s,compressed:c,useCompressionStream:l,deflate64:u,format:f,compressionMethod:d,rawBitFlag:w,outputSize:p}=t;let m,h,y=super.readable;if(a&&(o?y=Ir(y,new Pe(t)):(h=new ke(t),y=Ir(y,h))),c){const t=f&&ur(f);if(t)y=Tr(y,Fr(t.DecompressionStream,f,{chunkSize:e,compressionMethod:d,rawBitFlag:w,uncompressedSize:p}));else try{y=zr(y,l,{chunkSize:e,deflate64:u},n,r)}catch(t){if(u||p===T)throw t;let e;try{e=new n(yr)}catch{throw t}y=function(t,e,r){const n=new Qt;let o,a,i,s=0,c=!1;const l=new Promise((t,e)=>{a=t,i=e});l.catch(()=>{}),r||a();const u=new TransformStream({start(t){const e=new Uint8Array(10);e.set(Er),t.enqueue(e)},transform(t,e){e.enqueue(t)},async flush(t){c=!0,d();try{await l}finally{w()}const e=new Uint8Array(8),o=Pt(e);o.setUint32(0,n.get(),!0),o.setUint32(4,r,!0),t.enqueue(e)},cancel(t){i(t)}}),f=new TransformStream({transform(t,e){n.append(t),s+=t.length,s>=r?a():c&&d(),e.enqueue(t)},cancel(t){i(t)}});return t=Ir(t,u),Ir(t=Tr(t,e),f);function d(){w(),o=setTimeout(()=>i(new Error(dr)),5e3)}function w(){clearTimeout(o)}}(y,e,p)}y=function(t){const e=t.getReader();return new ReadableStream({async pull(t){let r;try{r=await e.read()}catch(t){if(t&&t.message)throw t;const e=new Error(wr);throw e.cause=t,e}const{value:n,done:o}=r;o?t.close():t.enqueue(n)},cancel:t=>e.cancel(t)})}(y)}i&&(m=new $t,y=Ir(y,m)),xr(this,y,()=>{if(i){const t=new DataView(m.value.buffer);if(s!=t.getUint32(0,!1))throw new Error(pr)}})}}const gr=new Map;function Rr(t,e){if(!t)return!1;let r=gr.get(t);r||(r=new Map,gr.set(t,r));let n=r.get(e);if(n===T){try{new t(e),n=!0}catch{n=!1}r.set(e,n)}return n}function Dr(t){return Rr(t,mr)}function xr(t,e,r){e=Ir(e,new TransformStream({flush:r})),Object.defineProperty(t,"readable",{get:()=>e})}function Fr(t,e,r){if(!t)throw new Error(rr);return new t(e,r)}function zr(t,e,r,n,o){const a=e&&n?n:o||n,i=r.deflate64?hr:mr;let s;try{s=new a(i,r)}catch(t){if(!e||!o||a==o)throw t;s=new o(i,r)}return Tr(t,s)}function Ir(t,e){return Xe(t).pipeThrough(e)}function Tr(t,e){const r=e.writable.getWriter(),n=t.getReader();return async function(){try{for(;;){await r.ready;const t=await n.read();if(t.done){await r.close();break}await r.write(t.value)}}catch(t){await async function(t,e){try{await t.abort(e)}catch{}}(r,t),await async function(t,e){try{await t.cancel(e)}catch{}}(n,t)}}(),e.readable}const Ur="data",Or="deflate",Cr="inflate";class kr extends TransformStream{constructor(t,e){super({});const r=this,{codecType:n}=t;let o;n.startsWith(Or)?o=br:n.startsWith(Cr)&&(o=Ar),r.outputSize=0;let a=0;const i=new o(t,e),s=super.readable,c=new TransformStream({transform(t,e){t&&t.length&&(a+=t.length,e.enqueue(t))},flush(){Object.assign(r,{inputSize:a})}}),l=new TransformStream({transform(e,n){if(e&&e.length&&(n.enqueue(e),r.outputSize+=e.length,t.outputSize!==T&&r.outputSize>t.outputSize))throw new Error(dr)},flush(){const{crc32:t}=i;Object.assign(r,{crc32:t,inputSize:a})}});Object.defineProperty(r,"readable",{get:()=>s.pipeThrough(c).pipeThrough(i).pipeThrough(l)})}}class Mr extends TransformStream{constructor(t){const e=[];let r=0,n=0;function o(){const n=new Uint8Array(t);let o=0;for(;o<t;){const r=e[0],a=t-o;r.length<=a?(n.set(r,o),o+=r.length,e.shift()):(n.set(r.subarray(0,a),o),e[0]=r.subarray(a),o+=a)}return r-=t,n}(!Number.isFinite(t)||t<1)&&(t=65536),super({transform(a,i){for(e.push(a),r+=a.length;r>t;)n+=t,i.enqueue(o())},flush(t){r&&(n+=r,t.enqueue(function(t,e){const r=new Uint8Array(e);let n=0;for(const e of t)r.set(e,n),n+=e.length;return r}(e,r)))}}),Object.defineProperty(this,"outputSize",{get:()=>n})}}const Nr="Worker startup timeout";let vr,_r,Lr,Br=()=>{};async function jr(t){if(Br)try{return await Br(t),!0}catch{}return!1}function Pr(t){t.createWorker?_r=!0:vr=!1}class Wr{constructor(t,{readable:e,writable:r},n,o){const{options:a,config:i,R:s,useWebWorkers:c,transferStreams:l,workerURI:u}=n;let{createWorker:f}=n;const{signal:d}=s;return _r&&(f=T),Object.assign(t,{D:!0,F:(t.F||0)+1,readable:e.pipeThrough(new Mr(Ot(i))).pipeThrough(new Vr(s),{signal:d}),writable:r,options:Object.assign({},a),I:n,workerURI:u,createWorker:f,transferStreams:l,terminate:()=>new Promise(e=>{const{T:r,D:n}=t;n?t.U=e:(r&&(r.terminate(),t.T=null),e()),t.O=null}),C(){if(t.D){const{U:e,T:r}=t;e&&(t.U=null,r&&(t.M=!0,r.terminate()),e()),t.D=!1,o(t)}}}),vr===T&&(vr=typeof Worker!=O),(c&&Lr&&(vr&&u||f)?Lr:Hr)(t,i)}}class Vr extends TransformStream{constructor({onstart:t,onprogress:e,size:r,onend:n}){let o=0;super({async start(){t&&await Zr(t,r)},async transform(t,n){o+=t.length,e&&await Zr(e,o,r),n.enqueue(t)},async flush(){n&&await Zr(n,o)}})}}async function Zr(t,...e){try{await t(...e)}catch{}}function Hr(t,e){return{run:()=>Gr(t,e)}}async function Gr({options:t,readable:e,writable:r,C:n,I:o},a){let i,s,c;try{if(t.compressed&&!t.format){const e=t.codecType.startsWith(Or),r=e?a.CompressionStreamFallback:a.DecompressionStreamFallback,n=e?a.CompressionStream:a.DecompressionStream;t.useCompressionStream?r&&r.N&&!Dr(n)&&await l():await l()||r&&!r.N||(t.useCompressionStream=!0)}t.encrypted&&!t.zipCrypto&&await l(),i=new kr(t,a),s=new Mr(Ot(a)),await e.pipeThrough(i).pipeThrough(s).pipeTo(r,{preventClose:!0,preventAbort:!0});const{crc32:n,inputSize:o,outputSize:c}=i;return{crc32:n,inputSize:o,outputSize:c}}catch(t){if(i){const e=s?s.outputSize:0;if(o.outputSize=e,Wt(t))try{t.outputSize=e}catch{}}throw t}finally{n()}function l(){return c||(c=jr(a)),c}}const Yr={type:"module"},qr="error";let Kr,Xr,Jr,Qr=!0;try{Qr=typeof structuredClone==C&&structuredClone(new DOMException("","AbortError")).code!==T}catch{}var $r;function tn(t){const{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function en(t){const{T:e}=t;if(e)try{e.terminate()}catch{}t.O=null}function rn(t,e,r,n,o=!0){const{createWorker:a}=r;let i,s,c;if(a)i=a();else if(Xr===T||Kr!==t){const a=typeof t==C;s=a?t(o):t;const l=s.startsWith("data:"),u=s.startsWith("blob:");if(l||u){n===T&&(n=!1),n&&(c=Yr);try{i=new Worker(s,c)}catch(o){if(u)try{URL.revokeObjectURL(s)}catch{}if(a&&u)return rn(t,e,r,n,!1);if(n)throw o;return rn(t,e,r,!0,!1)}}else{n===T&&(n=!0),n&&(c=Yr);try{s=new URL(s,e)}catch{}try{i=new Worker(s,c)}catch(a){if(n)return rn(t,e,r,!1,o);throw a}}Kr=t,Xr=s,Jr=c}else i=new Worker(Xr,Jr);return i.addEventListener("message",t=>{r.v=!0,nn(r),async function({data:t},e){const{type:r,value:n,messageId:o,result:a,error:i,errorValue:s}=t,{reader:c,writer:l,_:u,L:f,C:d,F:w}=e,p=()=>e.F!=w;try{if(i)m(function(t,e){const{message:r,stack:n,code:o,name:a,outputSize:i,cause:s,codecImportFailed:c}=t;let l;if(e?l=e.value:(l=Object.assign(new Error(r),{stack:n,code:o,name:a}),s&&(l.cause=Object.assign(new Error(s.message),{name:s.name}))),Wt(l))try{i!==T&&(l.outputSize=i),c&&(l.codecImportFailed=!0),e&&(l.name!==a&&(l.name=a),l.code!==o&&(l.code=o))}catch{}return l}(i,s));else{if("pull"==r){const{value:t,done:r}=await c.read();p()||an({type:Ur,value:t,done:r,messageId:o},e)}if(r==Ur){const t=new Uint8Array(n);await l.ready,await l.write(t),p()||an({type:"ack",messageId:o},e)}"close"==r&&function(t){p()||(u(t),h(),d())}(a)}}catch(i){p()||(en(e),m(i))}function m(t){p()||(f(t),h(),Wt(t)&&t.codecImportFailed||d())}function h(){l&&l.releaseLock()}}(t,r)}),i.addEventListener(qr,t=>on(t,r)),i.addEventListener("messageerror",t=>on(t,r)),i}function nn(t){const{B:e}=t;e&&(clearTimeout(e),t.B=null)}function on(t,e){t.preventDefault&&t.preventDefault(),nn(e);const{v:r,L:n,writer:o,C:a}=e;en(e),r||(e.T=null);let i=t.error||new Error(t.message||qr);r||(i=Object.assign(new Error(i.message||qr),{j:!0}),e.P=i),n&&(n(i),o&&o.releaseLock(),r&&a())}function an(t,{T:e,writer:r,transferStreams:n,v:o}){try{const{value:r,readable:a,writable:i}=t,s=[];if(r&&(t.value=jt(r),s.push(t.value.buffer)),n&&Qr&&o?(a&&s.push(a),i&&s.push(i)):t.readable=t.writable=null,s.length)try{return e.postMessage(t,s),!0}catch{Qr=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(t){throw r&&r.releaseLock(),t}}$r=function(t,e){const{baseURI:r,chunkSize:n,workerStartupTimeout:o}=e;let{wasmURI:a}=e;if(!t.O){let i;typeof a==C&&(a=a());try{i=rn(t.workerURI,r,t)}catch{return Pr(t),Hr(t,e)}Object.assign(t,{T:i,v:!1,M:!1,P:null,O:{run:async()=>{try{return await async function(t,e){if(!t.T){const{P:e}=t;t.P=null;const r=e||new Error(Nr);throw r.j=!0,r}let r,n;const o=new Promise((e,o)=>{r=e,n=e=>{const{outputSize:r,I:n}=t;if(n.outputSize=r,Wt(e))try{e.outputSize=r}catch{}o(e)}});Object.assign(t,{reader:null,writer:null,outputSize:0,W:!1,V:null,_:r,L:n,result:o});const{readable:a,options:i}=t,{writable:s,closed:c,Z:l}=function(t,e){const r=new AbortController;let n;const{writable:o,readable:a}=new TransformStream({transform(t,r){e.outputSize+=t.length,r.enqueue(t)}}),i=a.pipeTo(t,{preventClose:!0,preventAbort:!0,signal:r.signal});return i.catch(t=>{n||Object.assign(e,{W:!0,V:t})}),{writable:o,closed:i,Z:()=>{n=!0,r.abort()}}}(t.writable,t);let u;try{u=an({type:"start",options:i,config:e,readable:a,writable:s},t)}catch(e){l();try{await c}catch{}throw t.C(),e}u||Object.assign(t,{reader:a.getReader(),writer:s.getWriter()});const{workerStartupTimeout:f}=e;!t.v&&Number.isFinite(f)&&f>=0&&(t.B=setTimeout(()=>function(t){if(t.B=null,t.v)return;const{L:e,writer:r}=t;if(en(t),t.T=null,e){const t=new Error(Nr);t.j=!0,e(t),r&&r.releaseLock()}}(t),f));try{const t=await o;return await d(),await c,t}catch(e){await d(),l();try{await c}catch{}const{outputSize:r,I:n,W:o,V:a}=t;n.outputSize=r;const i=Wt(e)&&(e.codecImportFailed||e.j),s=o&&!i?a:e;if(Wt(s))try{s.outputSize=r}catch{}throw s}async function d(){if(!u&&!s.locked)try{await s.getWriter().close()}catch{}}}(t,{chunkSize:n,wasmURI:a,baseURI:r,workerStartupTimeout:o})}catch(r){if(r&&r.j)return Pr(t),tn(t),Gr(t,e);if(r&&r.codecImportFailed){if(t.reader)return tn(t),Gr(t,e);t.C()}throw r}}}})}return t.O},Lr=$r;let sn=[];const cn=[];let ln,un,fn=0;async function dn(t,e){const{options:r,config:n}=e,{transferStreams:o,useWebWorkers:a,useCompressionStream:i,compressed:s,checkCrc32:c,computeCrc32:l,encrypted:u,format:f,codecURI:d}=r,{workerURI:w,createWorker:p,maxWorkers:m}=n;f&&(d&&(r.codecURI=function(t,e){try{return new URL(t,e).toString()}catch{return t}}(d,n.baseURI)),await async function(t,e){!ar.has(t)&&e&&fr(t,await(import(/* webpackIgnore: true */ /* @vite-ignore */e)))}(f,r.codecURI)),e.transferStreams=!f&&(o||o===T&&n.transferStreams);const h=!(s||c||l||u),y=f===T||Boolean(r.codecURI);return e.useWebWorkers=!h&&y&&(a||a===T&&n.useWebWorkers),e.workerURI=e.useWebWorkers&&w?w:T,e.createWorker=e.useWebWorkers&&p?p:T,r.useCompressionStream=i||i===T&&n.useCompressionStream,(await async function(){const r=sn.find(t=>!t.D);if(r)return yn(r),new Wr(r,t,e,E);if(sn.length<m){const r={H:fn};return fn++,sn.push(r),new Wr(r,t,e,E)}return new Promise(r=>{cn.push({resolve:r,stream:t,I:e}),un=n.workerStarvationTimeout,wn()})}()).run();function E(t){if(pn(),cn.length){const[{resolve:e,stream:r,I:n}]=cn.splice(0,1);e(new Wr(t,r,n,E)),wn()}else t.T?(yn(t),function(t,e){const{config:r}=e,{terminateWorkerTimeout:n}=r;Number.isFinite(n)&&n>=0&&(t.M?t.M=!1:t.G=setTimeout(async()=>{sn=sn.filter(e=>e!=t);try{await t.terminate()}catch{}},n))}(t,e)):sn=sn.filter(e=>e!=t)}}function wn(){!ln&&cn.length&&Number.isFinite(un)&&un>=0&&(ln=setTimeout(mn,un))}function pn(){ln&&(clearTimeout(ln),ln=null)}function mn(){if(ln=null,cn.length){const[{resolve:t,stream:e,I:r}]=cn.splice(0,1),n=Object.assign({},r,{useWebWorkers:!1,workerURI:T,createWorker:T});t(new Wr({},e,n,hn)),wn()}}function hn(){pn(),wn()}function yn(t){const{G:e}=t;e&&(clearTimeout(e),t.G=null)}const En="\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 bn(t,e){return Sn(t,e,!0)}function Sn(t,e,r){return e&&"cp437"==e.trim().toLowerCase()?function(t){let e="";for(let r=0;r<t.length;r++)e+=En[t[r]];return e}(t):new TextDecoder(e,{ignoreBOM:r}).decode(t)}const An="HTTP error ",gn="HTTP Range not supported",Rn="HTTP resource changed",Dn="Writer iterator completed too soon",xn="Writer not initialized",Fn="Invalid writer (size must be writable)",zn="Content-Range",In="Range",Tn="GET",Un="bytes",On=16777216,Cn="writable",kn=Symbol();class Mn{constructor(){this.size=0}init(){this.initialized=!0}}class Nn extends Mn{get readable(){return this.createReadable()}createReadable({offset:t=0,size:e,chunkSize:r=Ot(Ut())}={}){const n=this;let o=0;return r=Ct(r),new ReadableStream({async pull(a){const i=e===T?r:Math.min(r,e-o),s=await Ao(n,t+o,i);s.length&&(a.enqueue(s),o+=s.length),(e!==T&&o>=e||!s.length&&i)&&a.close()}})}}class vn extends Mn{constructor(){super();const t=this,e=new WritableStream({write(e){if(!t.initialized)throw new Error(xn);return t.writeUint8Array(jt(e))}});Object.defineProperty(t,Cn,{get:()=>e})}writeUint8Array(){}}class _n extends Nn{constructor(t){super();let e=t.length;for(;"="==t.charAt(e-1);)e--;const r=t.indexOf(",")+1;Object.assign(this,{Y:t,K:r,size:Math.floor(.75*(e-r))})}readUint8Array(t,e){const{K:r,Y:n}=this,o=new Uint8Array(e),a=4*Math.floor(t/3),i=atob(n.substring(a+r,4*Math.ceil((t+e)/3)+r)),s=t-3*Math.floor(a/4);let c=0;for(let t=s;t<s+e&&t<i.length;t++)o[t-s]=i.charCodeAt(t),c++;return c<o.length?o.subarray(0,c):o}}class Ln extends vn{constructor(t){super(),Object.assign(this,{contentType:t,data:"data:"+(t||"")+";base64,",X:""})}writeUint8Array(t){const e=this;let r,n=e.X;const o=e.X.length;for(e.X="",r=0;r<3*Math.floor((o+t.length)/3)-o;r++)n+=String.fromCharCode(t[r]);for(;r<t.length;r++)e.X+=String.fromCharCode(t[r]);n.length>2?e.data+=btoa(n):e.X=n+e.X}getData(){return this.data+btoa(this.X)}}let Bn,jn;class Pn extends Nn{constructor(t){super(),Object.assign(this,{J:t,size:t.size}),jn||(jn=(async()=>{try{const t=new Blob([new Uint8Array(3)]).slice(1,2).stream().getReader();let e=0,r=await t.read();for(;!r.done;)e+=r.value.length,r=await t.read();Bn=1==e}catch{Bn=!1}})())}createReadable(t){const{J:e,size:r}=this,{offset:n=0,size:o=r-n}=t||{};if(typeof e.stream==C){if(!n&&o>=r)return Xe(e.stream());if(Bn)return Xe(e.slice(n,n+o).stream())}return super.createReadable(t)}async readUint8Array(t,e){const r=this,n=t+e,o=!t&&n>=r.size?r.J:r.J.slice(t,n);let a=await o.arrayBuffer();return a.byteLength>e&&(a=a.slice(t,n)),new Uint8Array(a)}}class Wn extends Mn{constructor(t){super();const e=this,r=new TransformStream;Object.defineProperty(e,Cn,{get:()=>r.writable}),e.contentType=t,e.$=Je(r.readable,t),e.$.catch(()=>{})}getData(){return this.$}}class Vn extends Pn{constructor(t){super(new Blob([t],{type:"text/plain"}))}}class Zn extends Wn{constructor(t){super(),Object.assign(this,{encoding:t,et:!t||"utf-8"==t.toLowerCase()})}async getData(){const{encoding:t,et:e}=this,r=await super.getData();return r.text&&e?r.text():function(t,e){return Sn(t,e,!1)}(new Uint8Array(await r.arrayBuffer()),t)}}class Hn extends Nn{constructor(t,e){super(),Yn(this,t,e)}async init(){await qn(this,so,no),super.init()}createReadable(t){const e=this,{useRangeHeader:r,forceRangeRequests:n,size:o}=e;if((r||n)&&o!==T){const{offset:r=0,size:n=o-r}=t||{};if(n>0&&r<o)return function(t,e,r){let n,o=e,a=0,i=r;return new ReadableStream({start:()=>s(),async pull(t){n||await s();const{value:e,done:r}=await n.read();if(r)throw new Error(gn);const o=e.length>a?e.subarray(0,a):e;a-=o.length,i-=o.length,o.length&&t.enqueue(o),a||(await async function(){const t=n;n=T,await t.cancel()}(),i||t.close())},cancel:t=>n&&n.cancel(t)});async function s(){const e=Math.min(t.maximumRangeSize,i),r=await so(Tn,t,eo(t,o,e));if(206!=r.status)throw new Error(gn);const s=Xn(r);if(s!==T&&s!=o)throw new Error(gn);to(t,r),$n(t,r),o+=e,a=e,n=r.body.getReader()}}(e,r,Math.min(n,o-r))}return super.createReadable(t)}readUint8Array(t,e){return Kn(this,t,e,so,no)}}class Gn extends Nn{constructor(t,e){super(),Yn(this,t,e)}async init(){await qn(this,co,oo),super.init()}readUint8Array(t,e){return Kn(this,t,e,co,oo)}}function Yn(t,e,r){const{preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s=!0,maximumRangeSize:c=On,fetch:l}=r;delete(r=Object.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,Object.assign(t,{url:e,options:r,preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s,maximumRangeSize:c,fetch:l})}async function qn(t,e,r){const{url:n,preventHeadRequest:o,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:s}=t;if(function(t){const{baseURI:e}=Ut(),{protocol:r}=new URL(t,e);return"http:"==r||"https:"==r}(n)&&(a||i)&&(typeof o==O||o)){const n=await e(Tn,t,eo(t,s?-65557:void 0)),o=n.headers.get("Accept-Ranges");if(!(i||o&&o.toLowerCase()==Un))throw new Error(gn);{let o;s&&206==n.status&&(o=new Uint8Array(await n.arrayBuffer())),$n(t,n);const a=Jn(n);a===T?await io(t,e,r):t.size=a,o&&o.length&&Xn(n)===t.size-o.length&&(t.nt=o)}}else await io(t,e,r)}async function Kn(t,e,r,n,o){const{useRangeHeader:a,forceRangeRequests:i,nt:s,size:c,options:l}=t;if(a||i){if(e>=c||0===r)return v;{if(e+r>c&&(r=c-e),s&&e>=c-s.length){const t=e-(c-s.length);return s.slice(t,t+r)}const o=await n(Tn,t,eo(t,e,r));if(206!=o.status)throw new Error(gn);const a=Xn(o);if(a!==T&&a!=e)throw new Error(gn);to(t,o),$n(t,o);const i=new Uint8Array(await o.arrayBuffer());if(i.length!=r)throw new Error(gn);return i}}{const{data:n}=t;return n||await o(t,l),t.data.subarray(e,e+r)}}function Xn(t){const e=t.headers.get(zn);if(e){const t=Number(e.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(t))return t}}function Jn(t){const e=t.headers.get(zn);if(e){const t=e.trim().split(/\s*\/\s*/)[1];if(t&&"*"!=t){const e=Number(t);if(!Number.isNaN(e))return e}}}function Qn({headers:t}){return{ot:t.get("Etag")||T,lastModified:t.get("Last-Modified")||T}}function $n(t,e){const{checkResourceChanges:r,it:n}=t;r&&!n&&206==e.status&&(t.it=Qn(e))}function to(t,e){const{checkResourceChanges:r,it:n,size:o}=t;if(r){const t=Jn(e);if(t!==T&&o!==T&&t!=o)throw new Error(Rn);if(n){const t=Qn(e);if(Object.entries(n).some(([e,r])=>r!==T&&t[e]!==T&&r!=t[e]))throw new Error(Rn)}}}function eo(t,e=0,r=1){return Object.assign({},ro(t),{[In]:Un+"="+(e<0?e:e+"-"+(e+r-1))})}function ro({options:t}){const{headers:e}=t;if(e)return Symbol.iterator in e?Object.fromEntries(e):e}async function no(t){await ao(t,so)}async function oo(t){await ao(t,co)}async function ao(t,e){const r=await e(Tn,t,ro(t));t.data=new Uint8Array(await r.arrayBuffer()),t.size=t.data.length}async function io(t,e,r){if(t.preventHeadRequest)await r(t,t.options);else{const n=await e("HEAD",t,ro(t)),o=n.headers.get("Content-Length");o&&!n.headers.get("Content-Encoding")?t.size=Number(o):await r(t,t.options)}}async function so(t,{fetch:e=fetch,options:r,url:n},o){const a=await e(n,Object.assign({},r,{method:t,headers:o}));if(a.status>=200&&a.status<=299)return a;throw 416==a.status?new Error(gn):new Error(An+(a.statusText||a.status))}function co(t,{url:e},r){return new Promise((n,o)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status>=200&&a.status<=299){const t=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(e=>{const r=e.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,t=>t.toUpperCase()),t.push(r)}),n({status:a.status,arrayBuffer:()=>a.response,headers:new Map(t)})}else o(416==a.status?new Error(gn):new Error(An+(a.statusText||a.status)))},!1),a.addEventListener("error",t=>o(t.detail?t.detail.error:new Error("Network error")),!1),a.open(t,e),r)for(const t of Object.entries(r))a.setRequestHeader(t[0],t[1]);a.responseType="arraybuffer",a.send()})}class lo extends Nn{constructor(t,e={}){super(),Object.assign(this,{url:t,reader:e.useXHR&&!e.fetch?new Gn(t,e):new Hn(t,e)})}set size(t){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(t){return this.reader.createReadable(t)}readUint8Array(t,e){return this.reader.readUint8Array(t,e)}}class uo extends lo{constructor(t,e={}){super(t,Object.assign({},e,{useRangeHeader:!0}))}}class fo extends Nn{constructor(t){super(),t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),Object.assign(this,{st:t,size:t.length})}readUint8Array(t,e){return this.st.slice(t,t+e)}}class wo extends vn{constructor(t){super(),this.ct=t||262144}init(t=0){Object.assign(this,{offset:0,st:new Uint8Array(t>0?t:this.ct)}),super.init()}writeUint8Array(t){const e=this,r=e.offset+t.length;if(r>e.st.length){let t=e.st.length?2*e.st.length:e.ct;for(;t<r;)t*=2;const n=e.st;e.st=new Uint8Array(t),e.st.set(n)}e.st.set(t,e.offset),e.offset+=t.length}getData(){return this.offset===this.st.length?this.st:this.st.slice(0,this.offset)}}class po extends Nn{constructor(t){super(),this.lt=t}async init(){const t=this;t.ut=0;const e=t.lt=await Promise.all(t.lt.map(So));t.ft=e.map(e=>{const r=t.size;return t.size+=e.size,r}),super.init()}wt(t){const{ft:e,size:r}=this,n=e[t];return n===T?r:n}async readUint8Array(t,e){const r=this,{lt:n}=this;let o,a=0,i=t;for(;n[a]&&i>=n[a].size;)i-=n[a].size,a++;const s=n[a];if(s){const n=s.size;if(i+e<=n)o=await Ao(s,i,e);else{const a=n-i;o=Bt(await Ao(s,i,a),await r.readUint8Array(t+a,e-a))}}else o=v;return r.ut=Math.max(a,r.ut),o}}class mo extends Mn{constructor(t,e=4294967295){super();const r=this;let n,o,a;Object.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});const i=new WritableStream({async write(e){if(e===kn)return void(a&&await c());const{availableSize:i}=r;if(a)e.length>=i?(await s(e.subarray(0,i)),await c(),e.length>i&&await this.write(e.subarray(i))):await s(e);else{const{value:i,done:s}=await t.next();if(s&&!i)throw new Error(Dn);n=i,n.size=0,n.maxSize&&(r.maxSize=n.maxSize),r.availableSize=r.maxSize,await bo(n),o=i.writable,a=o.getWriter(),await this.write(e)}},async close(){a&&(await a.ready,await l())},async abort(t){a&&await a.abort(t)}});async function s(t){const e=t.length;e&&(await a.ready,await a.write(t),n.size+=e,r.availableSize-=e)}async function c(){await l(),r.diskOffset+=n.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function l(){await a.close()}Object.defineProperty(r,Cn,{get:()=>i})}async closeDisk(){const t=this.writable.getWriter();try{await t.ready,await t.write(kn)}finally{t.releaseLock()}}}class ho{constructor(t){return Array.isArray(t)&&(t=new po(t)),(t instanceof ReadableStream||typeof t.getReader==C)&&(t={readable:Xe(t)}),t}}class yo{constructor(t){t.writable===T&&typeof t.next==C&&(t=new mo(t)),(t instanceof WritableStream||typeof t.getWriter==C)&&(t={writable:Qe(t)});try{t.size=t.size===T?0:t.size}catch{throw new Error(Fn)}return t}}function Eo(t){return Boolean(t&&t.getData)}async function bo(t,e){if(!t.init||t.initialized)return Promise.resolve();await t.init(e)}async function So(t){return t=new ho(t),await bo(t),t.size!==T&&t.readUint8Array||(t=new Pn(await Je(t.readable)),await bo(t)),t}function Ao(t,e,r){return t.readUint8Array(e,r)}function go(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?Nn.prototype.createReadable.call(t,e):t.readable}function Ro(t,e,r){if(!t.some(t=>t.reason==e)){const n={reason:e};r!==T&&(n.filename=r),t.push(n)}}const Do="filename",xo="rawFilename",Fo="comment",zo="rawComment",Io="uncompressedSize",To="compressedSize",Uo="offset",Oo="diskNumberStart",Co="lastModDate",ko="rawLastModDate",Mo="lastAccessDate",No="rawLastAccessDate",vo="creationDate",_o="rawCreationDate",Lo="internalFileAttributes",Bo="externalFileAttributes",jo="msdosAttributesRaw",Po="msdosAttributes",Wo="msDosCompatible",Vo="zip64",Zo="encrypted",Ho="version",Go="versionMadeBy",Yo="zipCrypto",qo="directory",Ko="executable",Xo="compressionMethod",Jo="signature",Qo="extraField",$o="unixMode",ta="setuid",ea="setgid",ra="sticky",na=[Do,xo,Io,To,Co,ko,Fo,zo,Mo,No,vo,_o,Uo,Oo,Lo,Bo,jo,Po,Wo,Vo,Zo,Ho,Go,Yo,qo,Ko,"symlink",Xo,Jo,"crc32",Qo,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",$o,"unixExternalUpper",ta,ea,ra,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class oa{constructor(t){na.forEach(e=>this[e]=t[e])}}const aa=new Set([1,m,10,h,28789,25461,y,E,b,22613,13]);function ia(t,e,r){return t?e?12:16+4*r:0}const sa="File format is not recognized",ca="End of central directory not found",la="End of Zip64 central directory locator not found",ua="Central directory header not found",fa="Local file header not found",da="Zip64 extra field not found",wa="File contains encrypted entry",pa="Encryption method not supported",ma="Split zip file",ha="Overlapping entry found",ya="Entry data out of bounds",Ea="Ambiguous archive",ba="Encrypted central directory is not supported",Sa="Unsafe filename",Aa="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",ga="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Ra="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Da="64-bit value exceeds Number.MAX_SAFE_INTEGER",xa="unsorted central directory",Fa="unknown version needed to extract",za="compressed patched data",Ia="malformed extra field",Ta="unknown zip64 extensible data",Ua="wrapped entries count",Oa="appended data",Ca="prepended data",ka="prepended central directory",Ma="trailing central directory data",Na="duplicate filename",va="mismatched zip64 end of central directory record",_a="multiple end of central directory records",La="mismatched local file header (filename)",Ba="mismatched local file header (general purpose bit flag)",ja="mismatched local file header (compression method)",Pa="mismatched local file header (crc32 or sizes)",Wa=/^[a-zA-Z]:/,Va="utf-8",Za="cp437",Ha=[[Io,t],[To,t],[Uo,t],[Oo,e]],Ga={[e]:{ht:Ii,bytes:4},[t]:{ht:Ti,bytes:8}},Ya=BigInt(Number.MAX_SAFE_INTEGER);class qa{constructor(t,e={}){Object.assign(this,{reader:new ho(t),options:e,yt:new Map})}async*getEntriesGenerator(n={}){const a=this;let{reader:i}=a;if(await bo(i),i.size!==T&&i.readUint8Array||(i=new Pn(await Je(i.readable)),await bo(i)),i.size<d)throw new Error(sa);const c=a.warnings=[],m=fi(n,a.options),h=m==et,y=m!=nt,E=pi(gi(a,n,J),m),b=function(t,e){if(t===T)return e;if(!ui(t))throw new Error(ga);return t}(gi(a,n,"filenameValidation"),m),S=gi(a,n,"normalizeFilename"),{Et:F,bt:z}=await mi(i,y,E);if(!F)throw await async function(t){return await li(t)==o}(i)?new Error(ma):new Error(ca);y&&z>1&&Ai(_a);const I=Pt(F);let U=Ii(I,12),O=Ii(I,16);const C=F.offset,k=zi(I,20),M=C+d+k,N=i.size-M;N>E&&Ai(Oa),N>0&&Ro(c,Oa);let _=zi(I,4);const L=i.ut||0;let B,j,P,W,V,Z=zi(I,6),H=zi(I,10),G=0,Y=p;const q=O==t||U==t||H==e||Z==e;if(O!=t&&Z!=e&&(O+=ci(i,Z)),q){const r=F.offset>=w?await Ao(i,F.offset-w,w):v,n=Pt(r);if(r.length==w&&Ii(n,0)==u){O=ci(i,Ii(n,4))+Ti(n,8);let r=await Ao(i,O,p),o=Pt(r);const a=F.offset-w-p;if((r.length<p||Ii(o,0)!=l)&&O!=a&&a>=0){const t=O;O=a,O>t&&(G=O-t),r=await Ao(i,O,p),o=Pt(r)}if(r.length<p||Ii(o,0)!=l)throw new Error(la);if(P=!0,W=Ti(o,4)>44,W){const t=Math.min(Ti(o,4)-44,i.size-O-p);t>0&&(Y+=t,V=function(t){const e={rawExtensibleData:t};if(t.length>=28){const r=Pt(t),n=zi(r,26);Object.assign(e,{compressionMethod:zi(r,0),compressedSize:Ti(r,2),uncompressedSize:Ti(r,10),encryptionAlgorithm:zi(r,18),bitLength:zi(r,20),flags:zi(r,22),hashAlgorithm:zi(r,24),hashData:t.subarray(28,28+n)})}return e}(await Ao(i,O+p,t)))}_==e?_=Ii(o,16):_!=Ii(o,16)&&Si(h,c,va),Z==e?Z=Ii(o,20):Z!=Ii(o,20)&&Si(h,c,va),H==e?H=Ti(o,32):H!=Ti(o,32)&&Si(h,c,va),U==t?U=Ti(o,40):U!=Ti(o,40)&&Si(h,c,va),O=ci(i,Z)+Ti(o,48)+G}}let K=U;const X=F.offset-(P?Y+w:0);if(O>=i.size&&(G=i.size-O-U-d,O=i.size-U-d),L!=_)throw new Error(ma);if(O<0)throw new Error(sa);let Q=0,rt=await Ao(i,O,U),ot=Pt(rt);if(U){if(rt.length<4)throw new Error(sa);const t=X-U;if(O!=t&&Z==_){const e=Ii(ot,Q)==s||Boolean(V&&V.compressedSize)||Qa(ot);let r=!e;if(!r&&t>=0&&t+4<=i.size&&(r=Ii(Pt(await Ao(i,t,4)),0)==s),r){const r=O;O=t,O>r&&(G+=O-r,B=e),rt=await Ao(i,O,U),ot=Pt(rt)}}}const at=X-O;if(U!=at&&at>=0&&Z==_&&(U=at,rt=await Ao(i,O,U),ot=Pt(rt)),O<0||O>=i.size)throw new Error(sa);a.directoryOffset=O,a.directoryLength=K;const it=Ri(a,n,"decryptCentralDirectory");let st,ct;if(it&&H&&rt.length>=4&&Ii(ot,0)!=s&&(W||Qa(ot))){const t=function(t,e,r){const n=t&&t.compressedSize?t.compressedSize:e;return n>0&&n<=r?n:r}(V,K,rt.length);ct=rt.subarray(t),rt=await it(rt.subarray(0,t),V),ot=Pt(rt),K=rt.length,st=!0}V&&!st&&(rt.length<4||Ii(ot,0)==s)&&Ro(c,Ta),j=O;const lt=gi(a,n,"filenameEncoding"),ut=gi(a,n,"commentEncoding"),ft=new Set;let dt,wt=-1;const pt=!h&&!P;!H&&pt&&(H=$a(ot,rt,Q),H&&Ro(c,Ua));for(let t=0;t<H;t++){const o=new Ja(i,a.options);if(Q+f>rt.length||Ii(ot,Q)!=s){if(0==t&&!st&&(W||Qa(ot)))throw new Error(ba);throw new Error(ua)}ei(o,ot,Q+6);const l=Boolean(o.bitFlag.languageEncodingFlag),u=Q+f,d=u+o.filenameLength,w=d+o.extraFieldLength,p=zi(ot,Q+4),m=!(p>>8),h=p>>8==3,y=rt.subarray(u,d),E=zi(ot,Q+32),F=w+E,z=rt.subarray(w,F),I=l,U=l,O=Ii(ot,Q+38),C=O&r,k={readOnly:Boolean(1&C),hidden:Boolean(2&C),system:Boolean(4&C),directory:Boolean(16&C),archive:Boolean(32&C)},M=Ii(ot,Q+42),N=Ri(a,n,"decodeText")||bn,v=I?Va:lt||Za,_=U?Va:ut||Za;let L=N(y,v,$);if(L===T&&(L=bn(y,v)),S){const t=S(L);t!==T&&(L=t)}if(wi(L,b)){const t=new Error(Sa);throw t.filename=L,t}let B=N(z,_,tt);B===T&&(B=bn(z,_)),Object.assign(o,{index:t,St:st,versionMadeBy:p,msDosCompatible:m,zip64:!1,compressedSize:0,uncompressedSize:0,At:E,offset:M,diskNumberStart:zi(ot,Q+34),internalFileAttributes:zi(ot,Q+36),externalFileAttributes:O,msdosAttributesRaw:C,msdosAttributes:k,rawFilename:y,filenameUTF8:I,commentUTF8:U,rawExtraField:rt.subarray(d,w),rawComment:z,filename:L,comment:B}),ri(o,o,ot,Q+6)&&Ro(c,Ia,L),o.offset+=G;const P=ci(i,o.diskNumberStart)+o.offset;j=Math.min(P,j),P<wt&&Ro(c,xa,L),wt=P,(o.version&r)>63&&Ro(c,Fa,L),32&~o.rawBitFlag||Ro(c,za,L),ft.has(o.filename)&&(dt=!0),ft.add(o.filename);const V=o.externalFileAttributes>>16&e;o.unixMode===T&&16877&V&&(o.unixMode=V);const Z=Boolean(o.unixMode&R),Y=Boolean(o.unixMode&D),q=Boolean(512&o.unixMode),K=40960==((o.unixMode===T?V:o.unixMode)&A),X=!K&&(o.unixMode!==T?!!(73&o.unixMode):h&&!!(73&V)),J=o.unixMode!==T&&(o.unixMode&A)==g,et=(V&A)==g;Object.assign(o,{setuid:Z,setgid:Y,sticky:q,symlink:K,unixExternalUpper:V,executable:X,directory:J||et||m&&k.directory||o.filename.endsWith(x),zipCrypto:o.encrypted&&!o.extraFieldAES});const nt=new oa(o);if(nt.getData=(t,e)=>o.getData(t,nt,a.yt,e),nt.arrayBuffer=async t=>{const e=new TransformStream,r=Je(e.readable).then(t=>t.arrayBuffer());return r.catch(()=>{}),await o.getData(e,nt,a.yt,Object.assign({},t,{preventClose:!1})),r},Q=F,t==H-1&&pt){const t=$a(ot,rt,Q);t&&(H+=t,Ro(c,Ua))}const{onprogress:at}=n;if(at)try{await at(t+1,H,new oa(o))}catch{}yield nt}let mt=Q,ht=ti(rt.subarray(Q))||(st?ti(ct):T);if(!ht&&!st){const t=O+Q,e=Math.min(X-t,65541);e>=6&&(ht=ti(await Ao(i,t,e)))}ht&&(a.digitalSignature=ht,mt=Q+6+ht.length),(Q!=K&&mt!=K||!st&&Q!=U&&mt!=U)&&Si(h,c,Ma),dt&&Si(h,c,Na);const yt=gi(a,n,"extractPrependedData"),Et=gi(a,n,"extractAppendedData"),bt=(h||yt)&&H&&4==j&&await async function(t){const e=await li(t);return e==o||808471376==e}(i)?4:0;return h&&(G||H&&j>bt)&&Ai(Ca),(G||H&&j>4)&&Ro(c,Ca),B&&Ro(c,ka),yt&&(a.prependedData=j>bt?await Ao(i,bt,j-bt):v),a.comment=k?await Ao(i,C+d,k):v,Et&&(a.appendedData=M<i.size?await Ao(i,M,i.size-M):v),!0}async getEntries(t={}){const e=[];for await(const r of this.getEntriesGenerator(t))e.push(r);return e}async close(){const{reader:t}=this;t.readUint8Array||!t.readable||t.readable.locked||await t.readable.cancel()}[_](){return this.close()}}class Ka{constructor(t={}){let e;const{readable:r,writable:n}=new TransformStream({start(t){e=t}}),o=new qa(r,t),a=o.getEntriesGenerator(),i=new Set;this.readable=new ReadableStream({async pull(t){const{done:e,value:r}=await a.next();if(e)return t.close();const n=function(t,e){const{readable:r,writable:n}=new TransformStream;let o;const a={cancel:async t=>{e.delete(a),await(o?o.cancel(t):r.cancel(t))}};return a.readable=new ReadableStream({async pull(i){o||(o=r.getReader(),e.add(a),async function(){try{await t.getData(n,{preventClose:!1})}catch(t){try{await n.abort(t)}catch{}}finally{e.delete(a)}}());const{done:s,value:c}=await o.read();s?i.close():i.enqueue(c)},cancel:t=>a.cancel(t)},{highWaterMark:0}),a}(r,i),o={...r,readable:n.readable};delete o.getData,Object.defineProperties(o,{localDirectory:{get:()=>r.localDirectory,enumerable:!0},warnings:{get:()=>r.warnings,enumerable:!0}}),t.enqueue(o)},async cancel(t){const r=Array.from(i);i.clear(),e.error(t),await Promise.allSettled(r.map(e=>e.cancel(t))),await Promise.allSettled([a.return(),o.close()])}}),this.writable=n}}async function Xa(t,e={}){if(t=new ho(t),await bo(t),t.size!==T&&t.readUint8Array||(t=new Pn(await Je(t.readable)),await bo(t)),t.size<d)return!1;const r=fi(e,{}),n=r!=nt,o=pi(e[J],r),{Et:a,bt:i}=await mi(t,n,o);if(!a||r==et&&i>1)return!1;const s=zi(Pt(a),20),c=a.offset+d+s;return t.size-c<=o}class Ja{constructor(t,e){Object.assign(this,{reader:t,options:e})}async getData(t,e,o,i={}){const s=this,c=Ut(),{reader:l,index:u,offset:f,diskNumberStart:d,extraFieldAES:w,extraFieldZip64:p,compressionMethod:m,bitFlag:h,rawBitFlag:y,crc32:E,rawLastModDate:b,uncompressedSize:S,compressedSize:A}=s,{dataDescriptor:g}=h,R=e.localDirectory={},D=e.warnings=[],x=ci(l,d)+f,z=await Ao(l,x,F),I=Pt(z);let U=gi(s,i,L),O=gi(s,i,B);const C=pt(gi(s,i,j)),k=Boolean(C),M=!0===C;if(wt(U,O),U=U&&U.length&&U,O=O&&O.length&&O,w&&99!=w.originalCompressionMethod)throw new Error(rr);if(z.length<F||Ii(I,0)!=n)throw new Error(fa);ei(R,I,4);const{extraFieldLength:N,filenameLength:_}=R,G=R.dataOffset=x+F+_+N,Y=gi(s,i,"checkLocalDirectory"),q=fi(i,s.options),K=function(t,e){return t===T?e!=nt:Boolean(t)}(Y,q),X=gi(s,i,"checkLocalFilename"),J=function(t,e){return t===T?e==et:Boolean(t)}(X===T?Y:X,q);let Q=v;if(J&&(_||N)){const t=await Ao(l,x+F,_+N);Q=t.subarray(0,_),R.rawExtraField=t.subarray(_)}else R.rawExtraField=N?await Ao(l,x+F+_,N):v;J&&(R.rawFilename=Q),ri(s,R,I,4,!0)&&Ro(D,Ia),function(t,e,r,n,o){const{rawFilename:a}=t,i=!o,s=t.St&&!(8192&~e.rawBitFlag);!n||s||r.length==a.length&&!r.some((t,e)=>t!=a[e])||Si(i,o,La),(2057&e.rawBitFlag)!=(2057&t.rawBitFlag)&&Si(i,o,Ba),e.compressionMethod!=t.compressionMethod&&Si(i,o,ja),e.bitFlag.dataDescriptor||s||!(e.crc32||e.compressedSize||e.uncompressedSize)||e.crc32==t.crc32&&e.compressedSize==t.compressedSize&&e.uncompressedSize==t.uncompressedSize||Si(i,o,Pa)}(s,R,Q,J,K?T:D);const{lastAccessDate:$,creationDate:tt,uid:rt,gid:ot}=R;$&&(e.lastAccessDate=$),tt&&(e.creationDate=tt),rt!==T&&e.uid===T&&(e.uid=rt),ot!==T&&e.gid===T&&(e.gid=ot);const at=gi(s,i,"checkPasswordOnly"),it=s.encrypted&&R.encrypted&&(!M||at),st=it&&!w;if(M||(e.zipCrypto=st),it&&!(64&~R.rawBitFlag))throw new Error(pa);const ct=k?T:cr(m);if(0!=m&&8!=m&&9!=m&&!ct&&!k)throw new Error(rr);if(it){if(!st&&(w.strength<1||w.strength>3))throw new Error(pa);if(!U&&!O)throw new Error(wa)}if(G+A>l.size)throw new Error(ya);const lt=A,ut=Xe(l.createReadable({offset:G,size:lt})),mt=ft(gi(s,i,P));dt(mt);let ht=gi(s,i,"checkOverlappingEntry");const yt=gi(s,i,"checkOverlappingEntryOnly");yt&&(ht=!0);const{onstart:Et,onprogress:bt,onend:St}=i,At=0!=m&&!k,gt=k?A-ia(it,st,w&&w.strength):S,Rt=9==m;let Dt=gi(s,i,V);Rt&&(Dt=!1);const xt=gi(s,i,"checkCrc32"),Ft=(xt===T?gi(s,i,"checkSignature"):xt)&&!k&&(!it||st||w&&1==w.vendorVersion),zt={options:{codecType:Cr,password:U,rawPassword:O,zipCrypto:st,encryptionStrength:w&&w.strength,checkCrc32:Ft,checkAuthenticationCode:gi(s,i,"checkAuthenticationCode"),passwordVerification:st&&(g?b>>>8&r:E>>>24&r),outputSize:gt,crc32:E,compressed:At,encrypted:it,useWebWorkers:gi(s,i,W),useCompressionStream:Dt,transferStreams:gi(s,i,Z),deflate64:Rt,format:ct?ct.format:T,codecURI:ct?ct.codecURI:T,compressionMethod:m,rawBitFlag:y,checkPasswordOnly:at},config:c,R:{signal:mt,size:lt,onstart:Et,onprogress:bt,onend:St}};let It,Tt,Ot;ht&&await async function({reader:t,gt:e,index:r,offset:n,crc32:o,compressedSize:i,uncompressedSize:s,dataOffset:c,dataDescriptor:l,extraFieldZip64:u,yt:f}){let d=0;if(l&&(d=u?20:12),d){const r=await Ao(t,c+i,d+4),n=Pt(r);let l=r.length==d+4&&Ii(n,0)==a;if(l){const t=si(n,4,u);(e.encrypted&&!e.zipCrypto||t.crc32==o)&&t.compressedSize==i&&t.uncompressedSize==s?d+=4:l=!1}if(r.length>=d){const t=si(n,l?4:0,u);t.signature=l,e.localDirectory.dataDescriptor=t}}const w={start:n,end:c+i+d,gt:e};for(const[t,e]of f)if(t!=r&&w.start<e.end&&e.start<w.end){const t=new Error(ha);throw t.overlappingEntry=e.gt,t}f.set(r,w)}({reader:l,gt:e,index:u,offset:x,crc32:E,compressedSize:A,uncompressedSize:S,dataOffset:G,dataDescriptor:g||R.bitFlag.dataDescriptor,extraFieldZip64:p||R.extraFieldZip64,yt:o});try{if(!yt){at&&(t=new WritableStream),t=new yo(t),await bo(t,function(t,e,r){return Math.min(t,r?1032*e:e)}(gt,A,At)),({writable:It}=t);const{outputSize:e}=await dn({readable:ut,writable:It},zt);if(e!=gt)throw Object.assign(new Error(dr),{outputSize:e});t.size+=e}}catch(e){const{outputSize:r}=zt;if(r!==T?t.size+=r:Wt(e)&&e.outputSize!==T&&(t.size+=e.outputSize),!at||!Wt(e)||e.message!=be)throw Tt=e,Ot=!0,e}finally{if((Eo(t)||!gi(s,i,H))&&It&&!It.locked){const t=It.getWriter();if(Ot)try{await t.abort(Tt)}catch{}else await t.close()}}return at||yt?T:t.getData?t.getData():It}}function Qa(t){const e=Math.min(t.byteLength,1024)-3;for(let r=0;r<e;r++)if(134630224==Ii(t,r))return!0;return!1}function $a(t,e,r){let n=0;for(;r+f<=e.length&&Ii(t,r)==s;)r+=f+zi(t,r+28)+zi(t,r+30)+zi(t,r+32),n++;return n%65536?0:n}function ti(t){if(t.length>=6){const e=Pt(t);if(Ii(e,0)==i){const r=zi(e,4);if(6+r<=t.length)return t.subarray(6,6+r)}}}function ei(t,e,r){const n=t.rawBitFlag=zi(e,r+2),o=!(1&~n),a=Ii(e,r+6);Object.assign(t,{encrypted:o,version:zi(e,r),bitFlag:{level:(6&n)>>1,dataDescriptor:!(8&~n),languageEncodingFlag:(n&S)==S},rawLastModDate:a,lastModDate:Di(a),filenameLength:zi(e,r+22),extraFieldLength:zi(e,r+24)})}function ri(t,e,r,n,o){const{rawExtraField:a}=e,i=e.extraField=new Map,s=Pt(a);let c=0,l=!1;try{for(;c<a.length;){const t=zi(s,c),e=zi(s,c+2);i.set(t,{type:t,data:a.slice(c+4,c+4+e)}),c+=4+e}}catch{l=!0}c>a.length&&(l=!0);const u=zi(r,n+4);Object.assign(e,{signature:Ii(r,n+10),crc32:Ii(r,n+10),compressedSize:Ii(r,n+14),uncompressedSize:Ii(r,n+18)});const f=i.get(1);f&&(function(t,e){e.zip64=!0;const r=Pt(t.data),n=Ha.filter(([t,r])=>e[t]==r),o=n.reduce((t,[,e])=>t+Ga[e].bytes,0);if(t.data.length<o)throw new Error(da);for(let o=0,a=0;o<n.length;o++){const[i,s]=n[o],c=Ga[s];e[i]=t[i]=c.ht(r,a),a+=c.bytes}}(f,e),e.extraFieldZip64=f);const d=i.get(28789);d&&(ni(d,Do,xo,e,t),e.extraFieldUnicodePath=d);const w=i.get(25461);w&&(ni(w,Fo,zo,e,t),e.extraFieldUnicodeComment=w);const p=i.get(m);p&&p.data.length>=7?(function(t,e,r){const n=Pt(t.data),o=Fi(n,4);Object.assign(t,{vendorVersion:Fi(n,0),vendorId:Fi(n,2),strength:o,originalCompressionMethod:r,compressionMethod:zi(n,5)}),e.compressionMethod=t.compressionMethod,1!=t.vendorVersion&&(e.crc32=T)}(p,e,u),e.extraFieldAES=p):e.compressionMethod=u;const S=i.get(13);S&&(oi(S,e),e.extraFieldPkwareUnix=S);const A=i.get(22613);A&&(oi(A,e),e.extraFieldUnixType1=A);const g=i.get(10);g&&(function(t,e){const r=Pt(t.data);let n,o=4;try{for(;o<t.data.length&&!n;){const e=zi(r,o),a=zi(r,o+2);1==e&&(n=t.data.slice(o+4,o+4+a)),o+=4+a}}catch{}if(n&&24==n.length){const r=Pt(n),o=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),i=r.getBigUint64(16,!0);Object.assign(t,{rawLastModDate:o,rawLastAccessDate:a,rawCreationDate:i});const s={lastModDate:xi(o),lastAccessDate:xi(a),creationDate:xi(i)};Object.assign(t,s),Object.assign(e,s,{rawLastAccessDate:a,rawCreationDate:i})}}(g,e),e.extraFieldNTFS=g);const R=i.get(b);let D;if(R&&(D=ai(R,e,!1),e.extraFieldUnix=R),!D){const t=i.get(E);t&&(ai(t,e,!0),e.extraFieldInfoZip=t)}const x=i.get(h);x&&(function(t,e,r){if(!t.data.length)return;const n=Pt(t.data),o=Fi(n,0),a=[],i=[];r?(1&~o||(a.push(Co),i.push(ko)),2&~o||(a.push(Mo),i.push(No)),4&~o||(a.push(vo),i.push(_o))):t.data.length>=5&&(a.push(Co),i.push(ko));let s=1;a.forEach((r,o)=>{if(t.data.length>=s+4){const a=Ii(n,s);e[r]=t[r]=new Date(1e3*(0|a));const c=i[o];t[c]=a}s+=4})}(x,e,o),e.extraFieldExtendedTimestamp=x);const F=i.get(y);return F&&(e.extraFieldUSDZ=F),l}function ni(t,e,r,n,o){if(t.data.length<5)return void(t.valid=!1);const a=Pt(t.data),i=new Qt;i.append(o[r]);const s=Pt(new Uint8Array(4));s.setUint32(0,i.get(),!0);const c=Ii(a,1),l=Fi(a,0);Object.assign(t,{version:l,[e]:bn(t.data.subarray(5)),valid:1==l&&!o.bitFlag.languageEncodingFlag&&c==Ii(s,0)}),t.valid&&(n[e]=t[e],n[e+"UTF8"]=!0)}function oi(t,e){if(t.data.length<8)return;const r=Pt(t.data),n={lastAccessDate:new Date(1e3*(0|Ii(r,0))),lastModDate:new Date(1e3*(0|Ii(r,4)))};t.data.length>=12&&(n.uid=zi(r,8),n.gid=zi(r,10)),Object.assign(t,n),Object.assign(e,n)}function ai(t,e,r){try{const n=Pt(t.data);let o,a;if(r){let e=0;const r=Fi(n,e++),i=Fi(n,e++);o=ii(t.data.subarray(e,e+i)),e+=i;const s=Fi(n,e++);a=ii(t.data.subarray(e,e+s)),Object.assign(t,{version:r,uid:o,gid:a})}else t.data.length>=4&&(o=zi(n,0),a=zi(n,2),Object.assign(t,{uid:o,gid:a}));return o!==T&&(e.uid=o),a!==T&&(e.gid=a),o!==T||a!==T}catch{}}function ii(t){const e=new Uint8Array(4);return e.set(t,0),new DataView(e.buffer,e.byteOffset,4).getUint32(0,!0)}function si(t,e,r){const n=Ii(t,e);let o,a;return r?(o=Ti(t,e+4),a=Ti(t,e+12)):(o=Ii(t,e+4),a=Ii(t,e+8)),{crc32:n,compressedSize:o,uncompressedSize:a}}function ci(t,e){return t.wt?t.wt(e):0}async function li(t){return Ii(Pt(await Ao(t,0,4)))}function ui(t){return t===et||t===rt||t===nt}function fi(t,e){return di(t,di(e,rt))}function di(t,e){const r=t.strictness;if(r!==T){if(!ui(r))throw new Error(Aa);return r}const n=t.checkAmbiguity;return n===T?e:n?et:e==nt?nt:rt}function wi(t,e){if(e==nt)return!1;const r=t.split("/");return r.length>1&&""===r[r.length-1]&&r.pop(),!!(r.includes("..")||t.startsWith("/")||t.startsWith("\\\\")||Wa.test(t))||e==et&&(r.includes(".")||r.includes(""))}function pi(t,r){if(t!==T){const e=yt(t);if("number"!=typeof e||Number.isNaN(e)||e<0)throw new Error(Ra);return e}return r==et?0:r==nt?1/0:e}async function mi(t,e,r){const{size:n}=t,o=Math.min(n,65557),a={count:64};let i,s,c=0;for await(const[r,l,u,f,w]of hi(t,o)){const o=zi(r,f+20);if(w+d+o==n){const o=await Ei(t,r,l,f,w,n,a);if(2==o){if(i||(i=yi(u,f,w)),c++,!e||c>1)break}else 1!=o||s||(s=yi(u,f,w))}}return i||(i=s),i||(i=await async function(t,e,r){const{size:n}=t,o=Math.min(n,e==1/0?n:65557+e);let a,i;for await(const[e,s,c,l,u]of hi(t,o)){const o=yi(c,l,u);a||(a=o);const f=await Ei(t,e,s,l,u,n,r);if(2==f)return o;1!=f||i||(i=o)}return i||a}(t,r,a)),{Et:i,bt:c}}async function*hi(t,e){const r=t.size-e,n=await Ao(t,r,e),o=Pt(n);for(let t=n.length-d;t>=0;t--)Ii(o,t)==c&&(yield[o,r,n,t,r+t])}function yi(t,e,r){return{offset:r,buffer:t.slice(e,e+d).buffer}}async function Ei(r,n,o,a,i,c,l){const f=zi(n,a+10),d=Ii(n,a+12),p=Ii(n,a+16);if(f==e||d==t||p==t)return await bi(r,n,o,i-w,c,l)==u?2:0;if(!f&&!d)return 1;const m=zi(n,a+6);for(const t of[i-d,ci(r,m)+p])if(await bi(r,n,o,t,c,l)==s)return 2;return 0}async function bi(t,e,r,n,o,a){return n<0||n+4>o?T:n>=r?Ii(e,n-r):a.count>0?(a.count--,Ii(Pt(await Ao(t,n,4)),0)):T}function Si(t,e,r){t?Ai(r):Ro(e,r)}function Ai(t){const e=new Error(Ea);throw e.reason=t,e}function gi(t,e,r){return e[r]===T?t.options[r]:e[r]}function Ri(t,e,r){return ut(gi(t,e,r))}function Di(t){const r=(4294901760&t)>>16,n=t&e,o=new Date(1980+((65024&r)>>9),((480&r)>>5)-1,31&r,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return o<I?I:o}function xi(t){return new Date(Number(t/BigInt(1e4)-BigInt(116444736e5)))}function Fi(t,e){return t.getUint8(e)}function zi(t,e){return t.getUint16(e,!0)}function Ii(t,e){return t.getUint32(e,!0)}function Ti(t,e){const r=t.getBigUint64(e,!0);if(r>Ya)throw new Error(Da);return Number(r)}var Ui=Object.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Ea,ERR_BAD_FORMAT:sa,ERR_CENTRAL_DIRECTORY_NOT_FOUND:ua,ERR_ENCRYPTED:wa,ERR_ENCRYPTED_CENTRAL_DIRECTORY:ba,ERR_ENTRY_DATA_OUT_OF_BOUNDS:ya,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:la,ERR_EOCDR_NOT_FOUND:ca,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:da,ERR_INVALID_AUTHENTICATION_CODE:Ee,ERR_INVALID_COMPRESSED_DATA:wr,ERR_INVALID_CRC32:pr,ERR_INVALID_FILENAME_VALIDATION:ga,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Ra,ERR_INVALID_PASSWORD:ye,ERR_INVALID_STRICTNESS:Aa,ERR_INVALID_UNCOMPRESSED_SIZE:dr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:fa,ERR_OVERLAPPING_ENTRY:ha,ERR_SPLIT_ZIP_FILE:ma,ERR_UNSAFE_FILENAME:Sa,ERR_UNSUPPORTED_COMPRESSION:rr,ERR_UNSUPPORTED_ENCRYPTION:pa,ERR_UNSUPPORTED_UINT64:Da,ERR_WORKER_STARTUP_TIMEOUT:Nr,WARNING_APPENDED_DATA:Oa,WARNING_COMPRESSED_PATCHED_DATA:za,WARNING_DUPLICATE_FILENAME:Na,WARNING_MALFORMED_EXTRA_FIELD:Ia,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Ba,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:ja,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:Pa,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:La,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:va,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:_a,WARNING_PREPENDED_CENTRAL_DIRECTORY:ka,WARNING_PREPENDED_DATA:Ca,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Ma,WARNING_UNKNOWN_VERSION:Fa,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Ta,WARNING_UNSORTED_CENTRAL_DIRECTORY:xa,WARNING_WRAPPED_ENTRIES_COUNT:Ua,ZipReader:qa,ZipReaderStream:Ka,isZipFile:Xa});const Oi="File already exists",Ci="Zip file comment exceeds 64KB",ki="Invalid zip file comment (must be a Uint8Array)",Mi="File entry comment exceeds 64KB",Ni="Invalid file entry comment (must be a string)",vi="Invalid date (must be a valid Date instance)",_i="File entry name exceeds 64KB",Li="Version exceeds 65535",Bi="The strength must equal 1, 2, or 3",ji="Encryption is not supported in USDZ files",Pi="Split zip files are not supported in USDZ files",Wi="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",Vi="Invalid extra field (must be a Map)",Zi="Invalid extra field type (must be integer 0..65535)",Hi="Invalid extra field data (must be a Uint8Array)",Gi="Extra field data exceeds 64KB",Yi=-2147483648,qi=2147483647,Ki=BigInt(0),Xi=BigInt("0x7fffffffffffffff"),Ji="Zip64 is not supported (set the 'zip64' option to 'true')",Qi="Undefined uncompressed size",$i="Undefined compression method",ts="Undefined CRC32",es="Undetermined size",rs="Undefined reader",ns="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",os="Zip file not empty",as="Invalid uid (must be integer 0..2^32-1)",is="Invalid gid (must be integer 0..2^32-1)",ss="Invalid UNIX mode (must be integer 0..65535)",cs="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",ls="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",us="Invalid msdosAttributesRaw (must be integer 0..255)",fs="Invalid msdosAttributes (must be an object with boolean flags)",ds="Invalid level (must be integer 0..9)",ws="Signature data exceeds 64KB",ps="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",hs="compression unavailable",ys="clamped last modification date",Es=new Uint8Array([7,0,2,0,65,69,3,0,0]),bs="infozip",Ss="unix",As=[8,9,5,3];let gs=0;const Rs=[];class Ds{constructor(t,e={}){t=new yo(t);const{availableSize:r=U,maxSize:n=U}=t,o=r>0&&r!==U&&n>0&&n!==U;if(o&&e[X])throw new Error(Pi);Object.assign(this,{writer:t,Rt:o,options:e,Dt:new Map,xt:new Set,offset:e[K]===T?t.size||t.writable.size||0:e[K],Ft:e[K]===T?0:e[K]-(t.size||t.writable.size||0),zt:new Set,It:[],warnings:[],Tt:0,Ut:0,Ot:T,Ct:!1})}prependZip(t){return Is(this,async function(t,e){if(t.xt.size)throw new Error(os);await t.kt(e)}(this,t))}appendZip(t){return Is(this,this.kt(t))}async kt(t){const e=this,{zt:r,xt:n,Dt:a}=e;for(;r.size;)await Promise.allSettled(Array.from(r));let i;const s=new Promise(t=>i=t);r.add(s);const c=[];let l;try{t=new ho(t),await bo(t),t.size!==T&&t.readUint8Array||(t=new Pn(await Je(t.readable)),await bo(t));const{ZipReader:r}=await Promise.resolve().then(function(){return Ui}),i=new r(t),s=await i.getEntries();await i.close(),await bo(e.writer);const{directoryOffset:u}=i;s.forEach(({filename:t})=>{if(n.has(t))throw new Error(Oi);n.add(t),c.push(t)}),e.Mt=!0;const{Nt:f}=e;e.Nt=new Promise(t=>l=()=>{e.Mt=!1,t()}),await f,e.Rt&&(delete e.Rt,await async function(t){return Pt(await Ao(t,0,4)).getUint32(0,!0)==o}(t)||(await Hs(e.writer,Vs()),e.offset+=4));const d=await async function(t,e,r,n){const{writer:o}=t,a=new Map;if(o.closeDisk){const i=Array.from(r).sort((t,r)=>Ws(e,t)-Ws(e,r));let s=0;for(const r of i){const n=Ws(e,r);await js(t,e,s,n-s),_s(o,await Ps(e,n))&&await o.closeDisk(),a.set(r,{offset:Ls(t,o),diskNumberStart:Ns(o)}),s=n}await js(t,e,s,n-s)}else{const o=t.offset;await js(t,e,0,n),r.forEach(t=>a.set(t,{offset:o+Ws(e,t),diskNumberStart:0}))}return a}(e,t,s,u);s.forEach(t=>{const{version:e,rawLastModDate:r,rawFilename:n,bitFlag:o,encrypted:i,uncompressedSize:s,compressedSize:c,extraFieldZip64:l}=t;let{compressionMethod:u,rawExtraField:f}=t;const{level:w,languageEncodingFlag:p,dataDescriptor:m}=o;f=Bs(f||v),t.extraFieldAES&&(u=99);const h=sc(f),y=Boolean(l)&&l.uncompressedSize!==T,E=Boolean(l)&&l.compressedSize!==T,b=-7&uc(w,p,m,i,u)|w<<1,{vt:S,_t:A}=cc({version:e,bitFlag:b,compressionMethod:u,uncompressedSize:s,compressedSize:c,rawLastModDate:r,rawFilename:n,Lt:E,Bt:y,extraFieldLength:h}),{crc32:g}=t;g!==T&&oc(A,10,g);const{offset:R,diskNumberStart:D}=d.get(t);Object.assign(t,{jt:!0,Bt:y,Lt:E,offset:R,diskNumberStart:D,Pt:!1,Wt:v,Vt:v,Zt:v,Ht:v,Gt:v,rawExtraField:f,Yt:v,vt:S,_t:A}),a.set(t.filename,t)})}catch(t){throw c.forEach(t=>n.delete(t)),t}finally{i(),r.delete(s),l&&l()}}add(o="",i,s={}){const c=this,{zt:l}=c,u=async function(o,i,s,c){const l=(c=Object.assign({},c))[Q];if(l!==T){const{qt:t,Kt:e}=function(t,e,n){if(null===t||typeof t!=k||Array.isArray(t))throw new Error(ps);const{externalFileAttributes:o,versionMadeBy:a,comment:i,lastModDate:s,rawLastModDate:c,creationDate:l,lastAccessDate:u,uncompressedSize:f,encrypted:d,zipCrypto:w,crc32:p,compressionMethod:m,extraFieldAES:h,extraFieldUnix:y,internalFileAttributes:E,extraField:b,bitFlag:S,directory:A,uid:g,gid:R}=t,D={externalFileAttributes:o,versionMadeBy:a,comment:i,lastModDate:s,creationDate:l,lastAccessDate:u,internalFileAttributes:E,directory:A};S&&S.languageEncodingFlag&&(D[Y]=!0);const x=function(t){if(t){const e=new Map;if(t.forEach((t,r)=>{aa.has(r)||e.set(r,t.data)}),e.size)return e}}(b);x&&(D[Qo]=x),g===T&&R===T||Object.assign(D,{uid:g,gid:R,unixExtraFieldType:y?Ss:bs});const F={};if(e&&!A)if(Object.assign(F,{uncompressedSize:f,crc32:p,compressionMethod:m}),e!==ot&&Object.assign(F,{encrypted:d,zipCrypto:w,encryptionStrength:h?h.strength:T}),S&&(F.dataDescriptor=S.dataDescriptor,F[G]=As[S.level]),n===T)F.rawLastModDate=c;else if(e!==ot&&w&&(!S||S.dataDescriptor)&&n instanceof Date&&function(t){let e=new Date(2e3*Math.ceil(Math.floor(t.getTime()/1e3)/2));return e<I?e=I:e>z&&(e=z),(e.getHours()<<3|e.getMinutes()>>3)&r}(n)!=(c>>>8&r))throw new Error(ms);return{qt:D,Kt:F}}(l,pt(Xs(o,c,j)),Xs(o,c,Co));delete c[Q],c=Object.assign(t,e,c)}if(Xs(o,c,qo)&&!i.endsWith(x)&&(i+=x),o.xt.has(i))throw new Error(Oi);o.xt.add(i),gs<Ut().maxWorkers?gs++:await new Promise(t=>Rs.push(t));try{return await async function(o,i,s,c){const l=function(n,o,a){let i=Xs(n,a,Wo),s=Xs(n,a,Go,i?20:768);const c=Xs(n,a,Ko),l=$s(n,a,"uid"),u=$s(n,a,"gid");let f=$s(n,a,$o),d=Xs(n,a,"unixExtraFieldType"),w=Xs(n,a,ta),p=Xs(n,a,ea),m=Xs(n,a,ra);if(ht(l,t,as),ht(u,t,is),ht(f,e,ss),d!==T&&d!==bs&&d!==Ss)throw new Error(cs);if(d===Ss&&(l!==T&&l>e||u!==T&&u>e))throw new Error(ls);d!==T||l===T&&u===T||(d=bs);let h=$s(n,a,jo),y=Xs(n,a,Po);const E=h!==T||y!==T;if(l!==T||u!==T||f!==T||d||c?(i=!1,s=s&r|768):E&&(i=!0,s&=r),ht(h,r,us),y&&(typeof y!==k||Array.isArray(y)))throw new Error(fs);if(s>e)throw new Error(Li);let b=Xs(n,a,Bo);const S=b!==T;S||(b=0),!a[qo]&&o.endsWith(x)&&(a[qo]=!0);const F=Xs(n,a,qo);if(F?(o.endsWith(x)||(o+=x),S||(b=16,i||(b|=16877<<16))):i||S||(b=c?493<<16:27525120),!i){const t=f!==T||Boolean(w||p||m);f=f===T?b>>16&e:f&e,w?f|=R:w=Boolean(f&R),p?f|=D:p=Boolean(f&D),m?f|=512:m=Boolean(512&f),S&&!t||(F?f=-61441&f|g:f&A||(f|=32768),b=(f&e)<<16|b&e)}({msdosAttributesRaw:h,msdosAttributes:y}=function(t,e){if(t!==T)t&=r;else if(e!==T){const{readOnly:n,hidden:o,system:a,directory:i,archive:s}=e;let c=0;n&&(c|=1),o&&(c|=2),a&&(c|=4),i&&(c|=16),s&&(c|=32),t=c&r}return e===T&&(e={readOnly:Boolean(1&t),hidden:Boolean(2&t),system:Boolean(4&t),directory:Boolean(16&t),archive:Boolean(32&t)}),{msdosAttributesRaw:t,msdosAttributes:e}}(h,y)),E&&(b=b&t|h&r);const z=b>>16&e,I=f!==T&&40960==(f&A);return{name:o,Xt:{versionMadeBy:s,msDosCompatible:Boolean(i),externalFileAttributes:b,unixExternalUpper:z,uid:l,gid:u,unixMode:f,unixExtraFieldType:d,symlink:I,setuid:w,setgid:p,sticky:m,msdosAttributesRaw:h,msdosAttributes:y}}}(o,i,c);({name:i}=l);const u=function(t,r,n){const o=Qs(t,n,"encodeText")||te;let a=o(r,$);if(a===T&&(a=te(r)),sc(a)>e)throw new Error(_i);const i=n[Fo]||"";if(typeof i!=M)throw new Error(Ni);let s=o(i,tt);if(s===T&&(s=te(i)),sc(s)>e)throw new Error(Mi);const c=Xs(t,n,Ho);if(c!==T&&c>e)throw new Error(Li);const l=Js(t,n,Co,new Date),u=Xs(t,n,ko),f=Js(t,n,Mo),d=Js(t,n,vo),w=Xs(t,n,Lo,0),p=pt(Xs(t,n,j)),m=Boolean(p),h=!0===p,y=Xs(t,n,L),E=Xs(t,n,B);wt(y,E);const b=$s(t,n,"encryptionStrength",3),S=Xs(t,n,Yo),A=Xs(t,n,"extendedTimestamp",!0),g=Xs(t,n,"ntfsTimestamp"),R=Xs(t,n,"keepOrder",!0),D=Xs(t,n,W),x=Xs(t,n,Z),F=Xs(t,n,"bufferedWrite"),z=Qs(t,n,"createTempStream"),I=Xs(t,n,"dataDescriptorSignature",!0),U=ft(Xs(t,n,P));dt(U);const O=Xs(t,n,Y,!lc(a)||!lc(s)),C=Xs(t,n,Xo),k=m||C===T?T:cr(C);if(!m&&C!==T&&0!==C&&8!==C&&!k)throw new Error(rr);let N=$s(t,n,G);if(ht(N,9,ds),t.options[X]){if(y!==T||E!==T)throw new Error(ji);N===T&&C===T&&(N=0)}m&&(N=yt(n[G]));let v=Xs(t,n,V),_=Xs(t,n,q);F&&_===T&&(_=!1),(_===T||S&&!h)&&(_=!0),N!==T&&6!=N&&(v=!1);const H=Xs(t,n,Vo);if(!(S||y===T&&E===T||Number.isInteger(b)&&b>=1&&b<=3))throw new Error(Bi);const K=Os(n[Qo]),J=Os(n.localExtraField),Q=Os(n.centralExtraField);return{comment:i,Xt:{rawFilename:a,rawComment:s,version:c,lastModDate:l,rawLastModDate:u,lastAccessDate:f,creationDate:d,internalFileAttributes:w,Jt:m,Qt:h,password:y,rawPassword:E,encryptionStrength:b,zipCrypto:S,extendedTimestamp:A,ntfsTimestamp:g,keepOrder:R,useWebWorkers:D,transferStreams:x,bufferedWrite:F,createTempStream:z,dataDescriptorSignature:I,signal:U,useUnicodeFileNames:O,compressionMethod:C,format:k?k.format:T,codecURI:k?k.codecURI:T,$t:k?k.versionNeeded:T,level:N,useCompressionStream:v,dataDescriptor:_,zip64:H,rawExtraField:K,te:J,Yt:Q}}}(o,i,c),{comment:f}=u,d=c[Qo];o.Dt.set(i,T);const w=o.Ot,p={};let y,S;u.Xt.keepOrder&&(p.ee=new Promise(t=>y=t)),o.Ot=p;try{const{Xt:f}=u;0==f.level||f.compressionMethod!==T||f.Jt||await async function(t){const{CompressionStream:e,CompressionStreamFallback:r}=t;return!(!r||r.N)||!(!Dr(e)&&(n=e,!Rr(n,yr)))||!!r&&await jr(t);var n}(Ut())||(f.level=0,Ro(o.warnings,hs,i));const d=await async function(e,r,{Xt:n},o){if(n.Jt&&!r&&!Xs(e,o,qo))throw new Error(rs);let a;if(r){if(r=new ho(r),await bo(r),!r.readable&&!r.readUint8Array)throw new Error(ns);({size:a}=r)}return Object.assign({reader:r},function(e,r,n,o,a){const{Jt:i,Qt:s,zipCrypto:c,password:l,rawPassword:u,encryptionStrength:f}=o;let{dataDescriptor:d,zip64:w,level:p,compressionMethod:m}=o,h=0,y=0,E=!1;if(i&&r){if(y=a[Io],y===T)throw new Error(Qi);if(m===T)throw new Error($i)}const b=!0===w,S=Xs(e,a,Zo);if(r&&s&&!S&&sc(l,u))throw new Error(Wi);const A=r&&(Boolean(l&&sc(l)||u&&sc(u))||s&&S);r||(p=0,m=0);const g=ia(A,c,f);r&&(i?(a.uncompressedSize=y,h=n===T?tc(y)+g:n+(s?0:g)):n===T?(d=!0,(w||w===T)&&(w=E=!0,h=4294967296)):(a.uncompressedSize=y=n,h=(ec(m,p)?tc(y):y)+g));const R=!(A||r&&(0!==n||i)||ec(m,p));R&&Xs(e,a,q)===T&&(d=!1);const D=b||E||y>=t,x=b||h>=t;if(D||x){if(!1===w)throw new Error(Ji);w=!0}return w=w||!1,{re:h,Xt:{dataDescriptor:d,ne:R,zip64:w,jt:b,oe:E,Bt:D,Lt:x,uncompressedSize:y,level:p,compressionMethod:m,encrypted:A}}}(e,Boolean(r),a,n,o))}(o,s,u,c);({reader:s}=d);const A=vs(o.writer),g=Ns(o.writer);let R=c.crc32===T?c[Jo]:c.crc32;const D=d.Xt.encrypted&&!f.zipCrypto;if(f.Jt&&!f.Qt&&D&&(R=T),f.Jt&&s&&!D&&R===T)throw new Error(ts);const x=function(t){const{rawFilename:r,lastModDate:o,rawLastModDate:a,lastAccessDate:i,creationDate:s,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:f,dataDescriptor:d,directory:w,rawExtraField:p,te:y,encryptionStrength:S,extendedTimestamp:A,ntfsTimestamp:g,Jt:R,encrypted:D,Bt:x,Lt:U,uncompressedSize:O,oe:C,crc32:k}=t;let{version:M,compressionMethod:N}=t;const _=!w&&ec(N,c);let L;const B=R||!_,j=l&&(t.bufferedWrite||!d||!x&&!U||B&&!C),P=j||l&&d&&(x||U);if(l&&(x||U)){const t=20,e=Ms(t);if(e.ae(1),e.ae(t-4),L=e.st,j&&(e.ie(O),B)){const t=ia(D,u,S);e.ie(R?0:O+t)}}else L=v;let W,V,Z,H,G,Y;if(D&&!u){const t=Ms(sc(Es)+2);t.ae(m),t.se(Es),W=t.st,W[8]=S}else W=v;if(A){const t=qs(o),e=(q=t)>=Yi&&q<=qi;if(e){const e=9+(i?4:0)+(s?4:0),r=Ms(e);H=1+(i?2:0)+(s?4:0),G=t,r.ae(h),r.ae(e-4),r.ce(H),r.le(t),i&&r.le(Ks(qs(i))),s&&r.le(Ks(qs(s))),Z=r.st}else Z=v;if(g===T?!e||Boolean(i||s):g)try{const t=Ys(o),e=Ms(36);e.ae(10),e.ae(32),e.ue(4),e.ae(1),e.ae(24),e.ie(t),e.ie(i?Ys(i):t),e.ie(s?Ys(s):t),V=e.st}catch{V=v}else V=v}else V=Z=v;var q;try{const{uid:r,gid:n,unixExtraFieldType:o}=t;if(o!=bs||r===T&&n===T)if(o!=Ss||r===T&&n===T)Y=v;else{const t=Ms(8);t.ae(b),t.ae(4),t.ae((r===T?0:r)&e),t.ae((n===T?0:n)&e),Y=t.st}else{const t=ks(r===T?0:r),e=ks(n===T?0:n),o=3+t.length+e.length,a=Ms(4+o);a.ae(E),a.ae(o),a.ce(1),a.ce(t.length),a.se(t),a.ce(e.length),a.se(e),Y=a.st}}catch{Y=v}N===T&&(N=_?8:0),M===T&&(M=0!=N||w||D?20:10);const{$t:K}=t;_&&K!==T&&(M=M>K?M:K),l&&(M=M>45?M:45),D&&!u&&(M=M>51?M:51,R&&k!==T&&(W[4]=1),nc(Pt(W),9,N),N=99);const J=P?sc(L):0,Q=J+sc(W,Z,V,Y,p,y);if(Q+(t[X]?67:0)>e)throw new Error(Gi);const $=new Date(2e3*Math.ceil(Math.floor(o.getTime()/1e3)/2)),tt=$<I?I:$>z?z:$,et=sc(Z)?new Date(1e3*qs(o)):sc(V)?o:tt,{vt:rt,_t:nt,rawLastModDate:ot}=cc({version:M,bitFlag:uc(c,f,d,D,N),compressionMethod:N,uncompressedSize:O,lastModDate:tt,rawLastModDate:a,rawFilename:r,Lt:U,Bt:x,extraFieldLength:Q}),at=Ms(F+sc(r)+Q),it=at.st,st=Pt(it);return at.le(n),at.se(rt),at.se(r),P&&at.se(L),at.se(W),at.se(Z),at.se(V),at.se(Y),at.se(p),at.se(y),d&&(U||oc(st,18,0),x||oc(st,22,0)),{fe:it,de:st,vt:rt,_t:nt,lastModDate:et,we:et===tt&&$.getTime()!=tt.getTime(),rawLastModDate:ot,encrypted:D,compressed:_,version:M,compressionMethod:N,pe:H,me:G,Wt:v,he:J,Zt:Z,Ht:V,Gt:Y,Vt:W,extraFieldLength:Q}}(c=Object.assign({},c,l.Xt,u.Xt,d.Xt,{signature:c[Jo],crc32:R,offset:o.offset-A,diskNumberStart:g,[X]:o.options[X]}));x.we&&Ro(o.warnings,ys,i);const O=function({zip64:t,dataDescriptor:e,dataDescriptorSignature:r}){let n,o=v,i=0,s=t?20:12;return r&&(s+=4),e&&(o=new Uint8Array(s),n=Pt(o),r&&(i=4,oc(n,0,a))),{ye:o,Ee:n,be:i}}(c),C=sc(x.fe,O.ye);S=await async function(e,n,o,a,i){const{Dt:s,writer:c}=e,{keepOrder:l,dataDescriptor:u,ne:f,signal:d}=i,{Se:w,gt:p,Ae:m,ge:h}=a,y=e.options[X];let E,b,S,A,g,R,D,x=p,z=0;const I=l&&m?m.ee:T;s.set(n,x);try{i.bufferedWrite||!l||e.Mt||e.Tt||e.Ut||!u&&!f?(E=!0,e.Tt++,D=i.createTempStream?await i.createTempStream():new TransformStream(T,T,{highWaterMark:U}),D.size=0,await bo(c)):(b=!0,e.Ut++,D=c,await I,await O()),await bo(D);const p=vs(c);e.Rt&&!E&&await Zs(e,c),y&&!E&&Cs(a,e.offset-p);const{fe:m}=w;E||await C();const h=Ns(c),S=Ls(e,c);if(x.diskNumberStart=h,E||(g=!0,R=c.size,await Hs(D,m)),x=await async function(e,n,{diskNumberStart:o,ee:a},i,s,c){const{Se:l,Re:u,De:f}=i,{vt:d,_t:w,lastModDate:p,rawLastModDate:m,encrypted:h,compressed:y,version:E,compressionMethod:b,Wt:S,he:A,Zt:g,pe:R,me:D,Ht:x,Gt:F,Vt:z}=l,{ye:I}=u,{rawFilename:U,lastAccessDate:O,creationDate:C,password:k,rawPassword:M,level:N,useUnicodeFileNames:v,zip64:_,jt:L,Bt:B,Lt:j,zipCrypto:P,dataDescriptor:W,directory:V,executable:Z,versionMadeBy:H,rawComment:G,rawExtraField:Y,Yt:q,useWebWorkers:K,transferStreams:X,onstart:J,onprogress:Q,onend:$,signal:tt,encryptionStrength:et,extendedTimestamp:rt,msDosCompatible:nt,internalFileAttributes:ot,externalFileAttributes:at,uid:it,gid:st,unixMode:ct,symlink:lt,setuid:ut,setgid:ft,sticky:dt,unixExternalUpper:wt,msdosAttributesRaw:pt,msdosAttributes:mt,useCompressionStream:ht,Jt:yt,Qt:Et,format:bt,codecURI:St}=c,At={ee:a,versionMadeBy:H,zip64:_,jt:L,directory:Boolean(V),executable:Boolean(Z),filenameUTF8:Boolean(v),rawFilename:U,commentUTF8:Boolean(v),rawComment:G,Wt:S,he:A,Zt:g,Ht:x,Gt:F,Vt:z,rawExtraField:Y,Yt:q,extendedTimestamp:rt,msDosCompatible:nt,internalFileAttributes:ot,externalFileAttributes:at,diskNumberStart:o,uid:it,gid:st,unixMode:ct,symlink:Boolean(lt),setuid:ut,setgid:ft,sticky:dt,unixExternalUpper:wt,msdosAttributesRaw:pt,msdosAttributes:mt};let{crc32:gt,uncompressedSize:Rt}=c,Dt=0;yt||(Rt=0);const{writable:xt}=n;if(e){const o=e.size,a=Xe(go(e,{size:o})),i={options:{codecType:Or,inputSize:o,level:N,rawPassword:M,password:k,encryptionStrength:et,zipCrypto:h&&P,passwordVerification:h&&P&&m>>8&r,computeCrc32:!yt,compressed:y&&!yt,encrypted:h&&!Et,useWebWorkers:K,useCompressionStream:ht,transferStreams:X,format:bt,codecURI:St,compressionMethod:b},config:s,R:{signal:tt,size:o,onstart:J,onprogress:Q,onend:$}};try{const e=await dn({readable:a,writable:xt},i);if(Dt=e.outputSize,n.size+=Dt,yt||(Rt=e.inputSize,h&&!P||(gt=e.crc32)),!j&&Dt>=t||!B&&Rt>=t)throw new Error(Ji)}catch(t){const{outputSize:e}=i;throw e!==T?n.size+=e:Wt(t)&&t.outputSize!==T&&(n.size+=t.outputSize),t}}return function({crc32:t,compressedSize:e,uncompressedSize:r,Se:n,Re:o},{zip64:a,zipCrypto:i,Jt:s,dataDescriptor:c}){const{_t:l,encrypted:u}=n,{Ee:f,be:d}=o;u&&!i&&!s||t===T||(oc(l,10,t),c&&oc(f,d,t)),a?c&&(ac(f,d+4,BigInt(e)),ac(f,d+12,BigInt(r))):(oc(l,14,e),oc(l,18,r),c&&(oc(f,d+4,e),oc(f,d+8,r)))}({crc32:gt,compressedSize:Dt,uncompressedSize:Rt,Se:l,Re:u},c),W&&await Hs(n,I),Object.assign(At,{uncompressedSize:Rt,compressedSize:Dt,lastModDate:p,rawLastModDate:m,creationDate:C,lastAccessDate:O,encrypted:Boolean(h),zipCrypto:Boolean(P),size:f+Dt,compressionMethod:b,version:E,vt:d,_t:w,signature:gt,crc32:!h||P||yt?gt:T,pe:R,me:D,Bt:B,Lt:j}),At}(o,D,x,a,Ut(),i),E||(g=!1),s.set(n,x),x.filename=n,E){if(await Promise.all([D.writable.getWriter().close(),I]),await O(),e.Rt&&await Zs(e,c),A=!0,R=c.size,await C(),x.diskNumberStart=Ns(c),x.offset=Ls(e,c),y){const t=a.De;Cs(a,e.offset-vs(c)),x.size+=a.De-t}!function({rawFilename:t,encrypted:e,zip64:r,he:n,crc32:o,compressedSize:a,uncompressedSize:i,Bt:s,Lt:c},l,{dataDescriptor:u,Jt:f}){if(u||((!e||f&&o!==T)&&oc(l,14,o),c||oc(l,18,a),s||oc(l,22,i)),r&&n){const e=F+sc(t)+4;ac(l,e,BigInt(i)),ac(l,e+8,BigInt(a))}}(x,w.de,i),await Hs(c,w.fe),await Gs(D.readable,c,d,t=>z+=t),c.size+=D.size,A=!1}else x.diskNumberStart=h,x.offset=S;return e.offset+=x.size,x}catch(t){if(A||g){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch{}e.offset+=c.size-R,E&&(e.offset+=z)}throw s.delete(n),t}finally{if(E&&e.Tt--,b&&e.Ut--,h&&h(I),S&&S(),E&&D&&D.dispose)try{await D.dispose()}catch{}}async function O(){e.Mt=!0;const{Nt:t}=e;e.Nt=new Promise(t=>S=()=>{e.Mt=!1,t()}),await t}async function C(){_s(c,sc(w.fe))&&await c.closeDisk()}}(o,i,s,{Se:x,Re:O,De:C,gt:p,Ae:w,ge:y},c)}catch(t){throw o.Dt.delete(i),t}finally{y&&y(w&&w.ee)}return Object.assign(S,{name:i,comment:f,extraField:d}),new oa(S)}(o,i,s,c)}catch(t){throw o.xt.delete(i),t}finally{const t=Rs.shift();t?t():gs--}}(c,o,i,s);l.add(u);const f=()=>l.delete(u);return Promise.prototype.then.call(u,f,f),Is(c,u)}remove(t){const{xt:e,Dt:r}=this;if(typeof t==M&&(t=r.get(t)),t&&t.filename!==T){const{filename:n}=t;if(e.has(n)&&r.has(n))return e.delete(n),r.delete(n),!0}return!1}async close(r=v,n={}){const o=this,{zt:a,writer:w}=this,{writable:p}=w;if(o.Ct)return zs(w);if(!(r instanceof Uint8Array))throw new Error(ki);if(sc(r)>e)throw new Error(Ci);for(;a.size;)await Promise.allSettled(Array.from(a));await Promise.allSettled(o.It.map(t=>t.xe));const m=o.It.filter(t=>t.Fe&&!t.ze);if(m.length){const t=m.map(t=>t.error);m.forEach(t=>t.ze=!0);const[e]=t;try{e.entryErrors=t}catch{}throw e}return await async function(r,n,o){const{Ie:a,Te:w}=function(r){let n=0,o=!1;for(const[,a]of r){const{rawFilename:r,Vt:i,rawComment:s,Ht:c,Gt:l,rawExtraField:u,Yt:d,pe:w,me:p,jt:m,uncompressedSize:y,compressedSize:E}=a;let{Bt:b,Lt:S}=a;m||(b&&y<t&&(b=a.Bt=!1),S&&E<t&&(S=a.Lt=!1)),o=o||b||S;const A=a.offset>=t,g=a.diskNumberStart>=e;let R,D;if(A||g||b||S){const t=4+(b?8:0)+(S?8:0)+(A?8:0)+(g?4:0),e=Ms(t);e.ae(1),e.ae(t-4),b&&e.ie(y),S&&e.ie(E),A&&e.ie(a.offset),g&&e.le(a.diskNumberStart),R=e.st}else R=v;if(a.Wt=R,a.Ue=A,a.Pt=g,p===T)D=v;else{const t=Ms(9);t.ae(h),t.ae(5),t.ce(w),t.le(p),D=t.st}a.Zt=D;const x=sc(R,i,c,l,D,u,d);if(x>e)throw new Error(Gi);n+=f+sc(r,s)+x}return{Ie:n,Te:o}}(r.Dt),{Oe:p,Ce:m,ke:y}=await async function(r,n,o){const{Dt:a,writer:i}=r,c=new Uint8Array(n);await bo(i);let l=0,u=0,d=Ns(i),w=vs(i),p=0;for(const[r,n]of Array.from(a.values()).entries()){const{offset:m,rawFilename:h,Wt:y,Vt:E,Zt:b,Ht:S,Gt:A,rawExtraField:g,Yt:R,rawComment:D,versionMadeBy:x,vt:F,_t:z,Bt:I,Lt:T,Pt:U,Ue:O,internalFileAttributes:C,externalFileAttributes:k,diskNumberStart:M,uncompressedSize:N,compressedSize:v}=n,_=sc(y,E,b,S,A,g,R),L=f+sc(h,D)+_;_s(i,l+L-u)&&(await Hs(i,c.slice(u,l)),u=l,p=0,await i.closeDisk()),0==r&&(d=Ns(i),w=vs(i)),I||oc(z,18,N),T||oc(z,14,v),(O||U)&&n.version<45&&nc(z,0,45);const B=Ms(L);if(B.le(s),B.ae(x),B.se(F.subarray(0,24)),B.ae(_),B.ae(sc(D)),B.ae(U?e:M),B.ae(C),B.le(k),B.le(O?t:m),B.se(h),B.se(y),B.se(E),B.se(b),B.se(S),B.se(A),B.se(g),B.se(R),B.se(D),ic(c,B.st,l),l+=L,p++,o.onprogress)try{await o.onprogress(r+1,a.size,new oa(n))}catch{}}return await Hs(i,u?c.slice(u):c),{Oe:{diskNumber:d,diskOffset:w},Ce:{diskNumber:Ns(i),Me:p},ke:c}}(r,a,o),E=await async function(t,r,n){const o=Qs(t,n,"signCentralDirectory");if(o){const n=await o(r),a=sc(n);if(a>e)throw new Error(ws);const s=Ms(6+a);s.le(i),s.ae(a),s.se(n);const{writer:c}=t;return _s(c,sc(s.st))&&await c.closeDisk(),await Hs(c,s.st),6+a}return 0}(r,y,o);await async function(r,n,o,a){const{writer:i}=r,{Oe:s,Ce:f,Ne:w,Te:p}=a;let{Ie:m}=a,h=r.Dt.size,y=s.diskNumber,E=Ls(r,s);const b=sc(n);if(b>e)throw new Error(Ci);let S=Xs(r,o,Vo),A=Ns(i);if(_s(i,(S?98:d)+b)&&A++,E>=t||m>=t||h>=e||A>=e){if(!1===S)throw new Error(Ji);S=!0}else S===T&&p&&(S=!0);const g=Ms(S?98:d);_s(i,sc(g.st)+b)&&await i.closeDisk(),A=Ns(i);let R=A==f.diskNumber?f.Me:0;S&&(g.le(l),g.ie(44),g.ae(45),g.ae(45),g.le(A),g.le(y),g.ie(R),g.ie(h),g.ie(m),g.ie(E),g.le(u),g.le(A),g.ie(BigInt(Ls(r,i))+BigInt(m)+BigInt(w)),g.le(A+1),Xs(r,o,"supportZip64SplitFile",!0)&&(A=e,y=e),R=e,h=e,E=t,m=t),g.le(c),g.ae(A),g.ae(y),g.ae(R),g.ae(h),g.le(m),g.le(E),g.ae(b),await Hs(i,g.st),b&&await Hs(i,n)}(r,n,o,{Oe:p,Ce:m,Ie:a,Ne:E,Te:w})}(o,r,n),o.Ct=!0,!Eo(w)&&Xs(o,n,H)||await p.getWriter().close(),zs(w)}[_](){return this.close()}}class xs{constructor(t={}){const{readable:e,writable:r}=new TransformStream;this.readable=e,this.zipWriter=new Ds(r,t),this.zt=new Set}transform(t){const e=this.zipWriter;let r;const{readable:n,writable:o}=new TransformStream({start(t){r=t},flush:()=>{!async function(){try{await e.close()}catch(t){await Ts(e,t)}}()}});return Us(this,this.zipWriter.add(t,n),t=>r.error(t)),{readable:this.readable,writable:o}}writable(t){let e;const{readable:r,writable:n}=new TransformStream({start(t){e=t}});return Us(this,this.zipWriter.add(t,r),t=>e.error(t)),n}async close(t,e={}){const{zipWriter:r}=this,n=(await Promise.allSettled(Array.from(this.zt))).filter(t=>"rejected"==t.status).map(t=>t.reason);if(n.length){const[t]=n;try{t.entryErrors=n}catch{}throw await Ts(r,t),t}try{return await r.close(t,e)}catch(t){throw await Ts(r,t),t}}}class Fs extends Promise{then(t,e){const{ve:r}=this;return r&&(r.ze=!0),super.then(t,e)}}function zs(t){return t.getData?t.getData():t.writable}function Is(t,e){const r=new Fs((t,r)=>Promise.prototype.then.call(e,t,r)),n={};return r.ve=n,n.xe=Promise.prototype.then.call(r,T,t=>Object.assign(n,{Fe:!0,error:t})),t.It.push(n),r}async function Ts(t,e){try{await t.writer.writable.abort(e)}catch{}}function Us(t,e,r){t.zt.add(e),e.catch(t=>{try{r(t)}catch{}})}function Os(t){if(!t)return v;if(!(t instanceof Map))throw new Error(Vi);let r=0,n=0;t.forEach((t,n)=>{if(mt(n,e,Zi),!(t instanceof Uint8Array))throw new Error(Hi);if(sc(t)>e)throw new Error(Gi);r+=4+sc(t)});const o=new Uint8Array(r),a=Pt(o);return t.forEach((t,e)=>{nc(a,n,e),nc(a,n+2,sc(t)),ic(o,t,n+4),n+=4+sc(t)}),o}function Cs(t,e){const{Se:r}=t;let{fe:n,extraFieldLength:o}=r,a=64-(e+sc(n))%64;a<4&&(a+=64);const i=new Uint8Array(a),s=Pt(i);nc(s,0,y),nc(s,2,a-4);const c=n;r.fe=n=new Uint8Array(sc(c)+a),ic(n,c),ic(n,i,sc(c));const l=Pt(n);nc(l,28,o+a),r.de=l,t.De+=a}function ks(t){const e=new Uint8Array(4);Pt(e).setUint32(0,t,!0);let r=4;for(;r>1&&0===e[r-1];)r--;return e.subarray(0,r)}function Ms(t){const e=new Uint8Array(t),r=Pt(e);let n=0;return{st:e,ce:t=>{!function(t,e,r){t.setUint8(e,r)}(r,n,t),n+=1},ae:t=>{nc(r,n,t),n+=2},le:t=>{oc(r,n,t),n+=4},ie:t=>{ac(r,n,BigInt(t)),n+=8},se:t=>{ic(e,t,n),n+=sc(t)},ue:t=>n+=t}}function Ns(t){const{diskNumber:e=0}=t;return e}function vs(t){const{diskOffset:e=0}=t;return e}function _s(t,e){const{availableSize:r=U}=t;return e>r}function Ls(t,{diskNumber:e=0,diskOffset:r=0}){return t.offset-r-(e?t.Ft:0)}function Bs(t){const e=Pt(t);let r=0;for(;r+4<=sc(t);){const n=4+rc(e,r+2);if(1==rc(e,r))return Bs(Bt(t.subarray(0,r),t.subarray(Math.min(r+n,sc(t)))));r+=n}return t}async function js(t,e,r,n){if(n>0){const{writer:o}=t;let a=0;try{await Gs(go(e,{offset:r,size:n}),o,T,t=>a+=t)}catch(e){t.hasCorruptedEntries=!0;try{e.corruptedEntry=!0}catch{}throw e}finally{o.size+=a,t.offset+=a}}}async function Ps(t,e){const r=await Ao(t,e,F);if(sc(r)<F)return F;const n=Pt(r);return F+rc(n,26)+rc(n,28)}function Ws(t,{offset:e,diskNumberStart:r}){return e+(t.wt?t.wt(r):0)}function Vs(){const t=new Uint8Array(4);return oc(Pt(t),0,o),t}async function Zs(t,e){delete t.Rt,await Hs(e,Vs()),t.offset+=4}async function Hs(t,e){const{writable:r}=t,n=r.getWriter();try{await n.ready,t.size+=sc(e),await n.write(e)}finally{n.releaseLock()}}async function Gs(t,e,r,n){const o=e.writable.getWriter();try{await t.pipeTo(new WritableStream({async write(t){await o.ready,await o.write(t),n(sc(t))}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{o.releaseLock()}}function Ys(t){if(t){const e=(BigInt(t.getTime())+BigInt(116444736e5))*BigInt(1e4);return e<Ki?Ki:e>Xi?Xi:e}}function qs(t){return Math.floor(t.getTime()/1e3)}function Ks(t){return Math.min(qi,Math.max(Yi,t))}function Xs(t,e,r,n){const o=e[r]===T?t.options[r]:e[r];return o===T?n:o}function Js(t,e,r,n){const o=Xs(t,e,r,n);if(null===o)return n;if(o!==T&&(typeof o.getTime!=C||Number.isNaN(o.getTime())))throw new Error(vi);return o}function Qs(t,e,r){return ut(Xs(t,e,r))}function $s(t,e,r,n){return yt(Xs(t,e,r,n))}function tc(t){return t+5*(Math.floor(t/16383)+1)}function ec(t,e){return t===T?e===T||e>0:0!==t}function rc(t,e){return t.getUint16(e,!0)}function nc(t,e,r){t.setUint16(e,r,!0)}function oc(t,e,r){t.setUint32(e,r,!0)}function ac(t,e,r){t.setBigUint64(e,r,!0)}function ic(t,e,r){t.set(e,r)}function sc(...t){let e=0;return t.forEach(t=>t&&(e+=t.length)),e}function cc({version:e,bitFlag:r,compressionMethod:n,uncompressedSize:o,compressedSize:a,lastModDate:i,rawLastModDate:s,rawFilename:c,Lt:l,Bt:u,extraFieldLength:f}){const d=Ms(26),w=d.st,p=Pt(w);if(d.ae(e),d.ae(r),d.ae(n),s===T){const t=new Uint32Array(1),e=Pt(t);nc(e,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),nc(e,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),s=t[0]}return d.le(s),d.ue(4),l||a!==T?d.le(l?t:a):d.ue(4),u||o!==T?d.le(u?t:o):d.ue(4),d.ae(sc(c)),d.ae(f),{vt:w,_t:p,rawLastModDate:s}}function lc(t){return t.every(t=>t>=32&&t<=126)}function uc(t,e,r,n,o){let a=0;return e&&(a|=S),r&&(a|=8),8!=o&&9!=o||(t>=0&&t<=3&&(a|=6),t>3&&t<=5&&(a|=4),9==t&&(a|=2)),n&&(a|=1),a}function fc(){return"application/octet-stream"}function dc(){const{CompressionStream:t,DecompressionStream:e,CompressionStreamFallback:r,DecompressionStreamFallback:n}=Ut(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:wc(r,mr)||wc(t,mr)||wc(t,yr),decompression:wc(n,mr)||wc(e,mr)||wc(e,yr),registered:!1},{compressionMethod:9,compression:!1,decompression:wc(n,hr)||wc(e,hr),registered:!1}];for(const t of lr()){const e=ur(t.format);o.push({compressionMethod:t.compressionMethod,compression:e?typeof e.CompressionStream==C:T,decompression:e?typeof e.DecompressionStream==C:T,registered:!0})}return o}function wc(t,e){if(!t)return!1;const{_e:r}=t;return r?r.includes(e):Rr(t,e)}const pc="2.14.0",mc=1048576,hc=".zip.js-temp";function yc(t={}){const{thresholdBytes:e=mc,directoryName:r=hc,getDirectory:n=()=>navigator.storage.getDirectory()}=t;let o;function a(){return o||(o=Promise.resolve(n()).then(t=>t.getDirectoryHandle(r,{create:!0}))),o}return function(){const t=[];let r,n,o,i,s=0,c=!1;const l=new WritableStream({async write(i){c?await o.write(i):(t.push(i),s+=i.length,s>e&&await async function(){const e=await a();r=crypto.randomUUID?crypto.randomUUID():Array.from(crypto.getRandomValues(new Uint8Array(16)),t=>t.toString(16).padStart(2,"0")).join(""),n=await e.getFileHandle(r,{create:!0}),o=(await n.createWritable()).getWriter(),c=!0;for(const e of t)await o.write(e);t.length=0}())},async close(){o&&(await o.close(),o=null)}});let u=0;return{writable:l,readable:new ReadableStream({async pull(e){if(c){if(!i){const t=await n.getFile();i=t.stream().getReader()}const{value:t,done:r}=await i.read();r?e.close():e.enqueue(t)}else u<t.length?e.enqueue(t[u++]):e.close()},async cancel(t){i&&await i.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(o){try{await o.close()}catch{}o=null}if(r){try{const t=await a();await t.removeEntry(r)}catch{}n=r=null}t.length=0}}}}const Ec=1048576;function bc(t={}){const{thresholdBytes:e=Ec}=t;return function(){const t=[];let r,n,o,a=0,i=!1;const s=new WritableStream({async write(o){i?await r.write(o):(t.push(o),a+=o.length,a>e&&await async function(){const e=new TransformStream;n=Je(e.readable),r=e.writable.getWriter(),i=!0;for(const e of t)await r.write(e);t.length=0}())},async close(){r&&(await r.close(),r=null)}});let c=0;return{writable:s,readable:new ReadableStream({async pull(e){if(i){if(!o){const t=await n;o=t.stream().getReader()}const{value:t,done:r}=await o.read();r?e.close():e.enqueue(t)}else c<t.length?e.enqueue(t[c++]):e.close()},async cancel(t){o&&await o.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(r){try{await r.abort()}catch{}r=null}n&&(n.catch(()=>{}),n=null),t.length=0}}}}const Sc=1048576,Ac=".zip.js-temp",gc="createSyncAccessHandle is only available in dedicated workers";function Rc(t={}){const{thresholdBytes:e=Sc,directoryName:r=Ac,getDirectory:n}=t;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new Error(gc);const o=n||(()=>navigator.storage.getDirectory());let a;function i(){return a||(a=Promise.resolve(o()).then(t=>t.getDirectoryHandle(r,{create:!0}))),a}return function(){const t=[];let r,n,o=0,a=!1,s=0,c=0;const l=new WritableStream({async write(c){a?(n.write(c,{at:s}),s+=c.length):(t.push(c),o+=c.length,o>e&&await async function(){const e=await i();r=crypto.randomUUID?crypto.randomUUID():Array.from(crypto.getRandomValues(new Uint8Array(16)),t=>t.toString(16).padStart(2,"0")).join("");const o=await e.getFileHandle(r,{create:!0});n=await o.createSyncAccessHandle(),a=!0;for(const e of t)n.write(e,{at:s}),s+=e.length;t.length=0}())},close(){n&&n.flush()}});let u=0;const f=new ReadableStream({pull(e){if(a){const t=s-c;if(t<=0)return void e.close();const r=new Uint8Array(Math.min(524288,t)),o=n.read(r,{at:c});o?(c+=o,e.enqueue(r.subarray(0,o))):e.close()}else u<t.length?e.enqueue(t[u++]):e.close()}},{highWaterMark:0});return{writable:l,readable:f,dispose:async function(){if(n){try{n.close()}catch{}n=null}if(r){try{const t=await i();await t.removeEntry(r)}catch{}r=null}t.length=0}}}}try{_t({baseURI:import.meta.url})}catch{}const Dc="deflate",xc="deflate-raw",Fc="deflate64-raw",zc="gzip";let Ic,Tc,Uc,Oc,Cc;function kc(t,e,r={}){if(!Ic){const t=new Error("WASM module not loaded");throw t.cause=Cc,t}const n="number"==typeof r.level?r.level:-1,o="number"==typeof r.outBuffer?r.outBuffer:65536,a="number"==typeof r.inBufferSize?r.inBufferSize:65536;return new TransformStream({start(){try{let r;if(this.Le=Tc(o),this.in=Tc(a),this.inBufferSize=a,!this.Le||!this.in)throw new Error("allocation failed");if(this.Be=new Uint8Array(o),t?(this.je=Ic.deflate_process,this.Pe=Ic.deflate_last_consumed,this.We=Ic.deflate_end,this.Ve=Ic.deflate_new(),r=e===zc?Ic.deflate_init_gzip(this.Ve,n):e===xc?Ic.deflate_init_raw(this.Ve,n):Ic.deflate_init(this.Ve,n)):e===Fc?(this.je=Ic.inflate9_process,this.Pe=Ic.inflate9_last_consumed,this.We=Ic.inflate9_end,this.Ve=Ic.inflate9_new(),r=Ic.inflate9_init_raw(this.Ve)):(this.je=Ic.inflate_process,this.Pe=Ic.inflate_last_consumed,this.We=Ic.inflate_end,this.Ve=Ic.inflate_new(),r=e===xc?Ic.inflate_init_raw(this.Ve):e===zc?Ic.inflate_init_gzip(this.Ve):Ic.inflate_init(this.Ve)),0!==r)throw new Error("init failed:"+r)}catch(t){throw i(this),t}},transform(t,e){try{const r=t,n=new Uint8Array(Oc.buffer),a=this.je,i=this.Pe,s=this.Le,c=this.Be;let l=0;for(;l<r.length;){const t=Math.min(r.length-l,32768);if((!this.in||this.inBufferSize<t)&&(this.in&&Uc&&(Uc(this.in),this.in=0),this.in=Tc(t),this.inBufferSize=t,!this.in))throw new Error("allocation failed");n.set(r.subarray(l,l+t),this.in);const u=a(this.Ve,this.in,t,s,o,0),f=u>>24&255,d=128&f?f-256:f;if(d<0)throw new Error("process error:"+d);const w=16777215&u;w&&(c.set(n.subarray(s,s+w),0),e.enqueue(c.slice(0,w)));const p=i(this.Ve);if(0===p&&0===w)break;l+=p}}catch(t){i(this),e.error(t)}},flush(t){try{const e=new Uint8Array(Oc.buffer),r=this.je,n=this.Le,a=this.Be;for(;;){const i=r(this.Ve,0,0,n,o,4),s=i>>24&255,c=128&s?s-256:s;if(c<0)throw new Error("process error:"+c);const l=16777215&i;if(l&&(a.set(e.subarray(n,n+l),0),t.enqueue(a.slice(0,l))),1===s||0===l)break}}catch(e){t.error(e)}finally{const e=i(this);0!==e&&t.error(new Error("end error:"+e))}},cancel(){i(this)}});function i(t){let e=0;return t.Ve&&t.We&&(e=t.We(t.Ve)),t.Ve=0,t.in&&Uc&&Uc(t.in),t.in=0,t.Le&&Uc&&Uc(t.Le),t.Le=0,e}}class Mc{constructor(t=Dc,e){return kc(!0,t,e)}}class Nc{constructor(t=Dc,e){return kc(!1,t,e)}}Mc.N=!0,Nc.N=!0,Mc._e=[Dc,xc,zc],Nc._e=[Dc,xc,zc,Fc];const vc=65536;let _c,Lc;function Bc(t){return new Uint8Array(t.memory.buffer)}let jc,Pc=!1;var Wc;async function Vc(){await async function(){await Promise.allSettled(sn.map(t=>(yn(t),t.terminate()))),vr=T,_r=!1}(),jc=null,Pc=!1,Ic=Tc=Uc=Oc=Cc=null,_c=null,Lc=0}Wc=function(t,e){const r=_c;let n=r?function(t,e,r){Lc||(Lc=t.malloc(vc));const n=Lc?t.aes_hmac_new():0;if(n){const o=Bc(t);if(o.set(e,Lc),o.set(r,Lc+e.length),t.aes_hmac_init(n,Lc,e.length,Lc+e.length,r.length))return t.aes_hmac_end(n,0),0}return n}(r,t,e):0;if(!n)return de(t,e);const o=Lc;return{process(t,e){for(let a=0;a<t.length;a+=vc){const i=t.subarray(a,a+vc),s=Bc(r);s.set(i,o),r.aes_hmac_process(n,o,i.length,e?1:0),i.set(s.subarray(o,o+i.length))}},digest:()=>(r.aes_hmac_end(n,o),n=0,Bc(r).slice(o,o+20)),dispose(){n&&(r.aes_hmac_end(n,0),n=0)}}},Ce=Wc||de,function({Ze:t}){Br=t}({Ze:t=>{if(!jc){let{wasmURI:e}=t;typeof e==C&&(e=e()),jc=async function(t,{baseURI:e}){if(!Pc)try{await async function(t,e){let r,n;try{try{n=new URL(t,e)}catch{}const o=await fetch(n);r=await o.arrayBuffer()}catch(e){if(!t.startsWith("data:application/wasm;base64,"))throw e;r=function(t){const e=t.split(",")[1],r=atob(e),n=r.length,o=new Uint8Array(n);for(let t=0;t<n;++t)o[t]=r.charCodeAt(t);return o.buffer}(t)}const o=await WebAssembly.instantiate(r);var a;(function(t){if(Ic=t,({malloc:Tc,free:Uc,memory:Oc}=Ic),"function"!=typeof Tc||"function"!=typeof Uc||!Oc)throw Ic=Tc=Uc=Oc=null,new Error("Invalid WASM module")})(o.instance.exports),typeof(a=o.instance.exports).aes_hmac_new==C&&(_c=a,Lc=0)}(t,e),Pc=!0}catch(t){throw function(t){Cc=t}(t),t}}(e,t).catch(t=>{throw jc=null,t})}return jc}}),_t({CompressionStreamFallback:Mc,DecompressionStreamFallback:Nc}),_t({workerURI:new URL("./zip-web-worker.js",import.meta.url).href,wasmURI:new URL("./zip-module.wasm",import.meta.url).href});export{Pn as BlobReader,Wn as BlobWriter,_n as Data64URIReader,Ln as Data64URIWriter,lt as ERR_ABORTED,Ea as ERR_AMBIGUOUS_ARCHIVE,sa as ERR_BAD_FORMAT,ua as ERR_CENTRAL_DIRECTORY_NOT_FOUND,Oi as ERR_DUPLICATED_NAME,wa as ERR_ENCRYPTED,ba as ERR_ENCRYPTED_CENTRAL_DIRECTORY,ya as ERR_ENTRY_DATA_OUT_OF_BOUNDS,la as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,ca as ERR_EOCDR_NOT_FOUND,da as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,gn as ERR_HTTP_RANGE,Rn as ERR_HTTP_RESOURCE_CHANGED,An as ERR_HTTP_STATUS,Ee as ERR_INVALID_AUTHENTICATION_CODE,bt as ERR_INVALID_BASE_URI,$e as ERR_INVALID_CODEC_DEFINITION,er as ERR_INVALID_CODEC_MODULE,Ci as ERR_INVALID_COMMENT,ki as ERR_INVALID_COMMENT_TYPE,wr as ERR_INVALID_COMPRESSED_DATA,pr as ERR_INVALID_CRC32,vi as ERR_INVALID_DATE,Bi as ERR_INVALID_ENCRYPTION_STRENGTH,ps as ERR_INVALID_ENTRY,Mi as ERR_INVALID_ENTRY_COMMENT,Ni as ERR_INVALID_ENTRY_COMMENT_TYPE,_i as ERR_INVALID_ENTRY_NAME,Vi as ERR_INVALID_EXTRAFIELD,Gi as ERR_INVALID_EXTRAFIELD_DATA,Hi as ERR_INVALID_EXTRAFIELD_DATA_TYPE,Zi as ERR_INVALID_EXTRAFIELD_TYPE,ga as ERR_INVALID_FILENAME_VALIDATION,at as ERR_INVALID_FUNCTION_OPTION,is as ERR_INVALID_GID,ds as ERR_INVALID_LEVEL,Ra as ERR_INVALID_MAX_APPENDED_DATA_SIZE,Et as ERR_INVALID_MAX_WORKERS,us as ERR_INVALID_MSDOS_ATTRIBUTES,fs as ERR_INVALID_MSDOS_DATA,ye as ERR_INVALID_PASSWORD,st as ERR_INVALID_PASSWORD_TYPE,ct as ERR_INVALID_PASS_THROUGH_VALUE,ns as ERR_INVALID_READER,it as ERR_INVALID_SIGNAL,ws as ERR_INVALID_SIGNATURE_DATA,Aa as ERR_INVALID_STRICTNESS,as as ERR_INVALID_UID,dr as ERR_INVALID_UNCOMPRESSED_SIZE,cs as ERR_INVALID_UNIX_EXTRA_FIELD_TYPE,ls as ERR_INVALID_UNIX_ID_SIZE,ss as ERR_INVALID_UNIX_MODE,St as ERR_INVALID_URI,Li as ERR_INVALID_VERSION,Dn as ERR_ITERATOR_COMPLETED_TOO_SOON,fa as ERR_LOCAL_FILE_HEADER_NOT_FOUND,ha as ERR_OVERLAPPING_ENTRY,tr as ERR_RESERVED_COMPRESSION_METHOD,ma as ERR_SPLIT_ZIP_FILE,$i as ERR_UNDEFINED_COMPRESSION_METHOD,ts as ERR_UNDEFINED_CRC32,rs as ERR_UNDEFINED_READER,Qi as ERR_UNDEFINED_UNCOMPRESSED_SIZE,es as ERR_UNDETERMINED_SIZE,Sa as ERR_UNSAFE_FILENAME,rr as ERR_UNSUPPORTED_COMPRESSION,gc as ERR_UNSUPPORTED_CONTEXT,Se as ERR_UNSUPPORTED_CRYPTO_API,pa as ERR_UNSUPPORTED_ENCRYPTION,Wi as ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH,ji as ERR_UNSUPPORTED_ENCRYPTION_USDZ,Ji as ERR_UNSUPPORTED_FORMAT,Pi as ERR_UNSUPPORTED_SPLIT_USDZ,Da as ERR_UNSUPPORTED_UINT64,Nr as ERR_WORKER_STARTUP_TIMEOUT,xn as ERR_WRITER_NOT_INITIALIZED,Fn as ERR_WRITER_SIZE_NOT_WRITABLE,ms as ERR_ZIP_CRYPTO_LAST_MOD_DATE,os as ERR_ZIP_NOT_EMPTY,uo as HttpRangeReader,lo as HttpReader,Nn as Reader,po as SplitDataReader,mo as SplitDataWriter,Vn as TextReader,Zn as TextWriter,fo as Uint8ArrayReader,wo as Uint8ArrayWriter,pc as VERSION,Oa as WARNING_APPENDED_DATA,ys as WARNING_CLAMPED_LAST_MODIFICATION_DATE,za as WARNING_COMPRESSED_PATCHED_DATA,hs as WARNING_COMPRESSION_UNAVAILABLE,Na as WARNING_DUPLICATE_FILENAME,Ia as WARNING_MALFORMED_EXTRA_FIELD,Ba as WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG,ja as WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD,Pa as WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES,La as WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME,va as WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY,_a as WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY,ka as WARNING_PREPENDED_CENTRAL_DIRECTORY,Ca as WARNING_PREPENDED_DATA,Ma as WARNING_TRAILING_CENTRAL_DIRECTORY_DATA,Fa as WARNING_UNKNOWN_VERSION,Ta as WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA,xa as WARNING_UNSORTED_CENTRAL_DIRECTORY,Ua as WARNING_WRAPPED_ENTRIES_COUNT,vn as Writer,qa as ZipReader,Ka as ZipReaderStream,Ds as ZipWriter,xs as ZipWriterStream,kt as configure,bc as createBlobTempStream,yc as createOPFSTempStream,Rc as createSyncAccessHandleTempStream,fc as getMimeType,lr as getRegisteredCodecs,dc as getSupportedCompressionMethods,Xa as isZipFile,ir as registerCodec,Lt as resetConfiguration,Vc as terminateWorkers,sr as unregisterCodec};