@zip.js/zip.js 2.14.0 → 2.14.1

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 (39) hide show
  1. package/BENCHMARKS.md +342 -454
  2. package/deno.json +1 -1
  3. package/dist/zip-core-external.js +262 -81
  4. package/dist/zip-core-external.min.js +1 -1
  5. package/dist/zip-core.js +260 -74
  6. package/dist/zip-core.min.js +1 -1
  7. package/dist/zip-fs-core-external.js +262 -81
  8. package/dist/zip-fs-core-external.min.js +1 -1
  9. package/dist/zip-fs-core.js +260 -74
  10. package/dist/zip-fs-core.min.js +1 -1
  11. package/dist/zip-fs-external.js +262 -81
  12. package/dist/zip-fs-external.min.js +1 -1
  13. package/dist/zip-fs-native.js +262 -76
  14. package/dist/zip-fs-native.min.js +1 -1
  15. package/dist/zip-fs.js +266 -85
  16. package/dist/zip-fs.min.js +1 -1
  17. package/dist/zip-legacy.js +262 -76
  18. package/dist/zip-legacy.min.js +1 -1
  19. package/dist/zip-module.wasm +0 -0
  20. package/dist/zip-native.js +262 -76
  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 +266 -85
  25. package/dist/zip.min.js +1 -1
  26. package/index-native.cjs +262 -76
  27. package/index-native.min.js +1 -1
  28. package/index.cjs +266 -85
  29. package/index.min.js +1 -1
  30. package/lib/core/codec-worker.js +6 -5
  31. package/lib/core/streams/codecs/aes-hmac-sha1.js +194 -56
  32. package/lib/core/streams/zlib-wasm/zlib-streams.js +2 -7
  33. package/lib/core/streams/zlib-wasm/zlib-streams.wasm +0 -0
  34. package/lib/core/version.js +1 -1
  35. package/lib/core/web-worker-inline-native.js +1 -1
  36. package/lib/core/web-worker-inline-wasm.js +1 -1
  37. package/lib/core/zip-reader.js +53 -6
  38. package/lib/core/zlib-streams-inline.js +1 -1
  39. package/package.json +1 -1
@@ -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,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};
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="/",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 gt=2;try{typeof navigator!=O&&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!=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={...At};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(At,e),Object.assign(Tt,e)}function Lt(){for(const t of It)delete Tt[t];Object.assign(Tt,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,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=he(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=he(a)):r>6&&t%r==4&&(n=pe(n)),e[t]=e[t-r]^n}return n}(t,r),o=new Int32Array(4),a=we(e);let i=0,s=0,c=0,l=0;return{process(t,e){e&&a.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)u(),e.setInt32(n,e.getInt32(n)^o[0]),e.setInt32(n+4,e.getInt32(n+4)^o[1]),e.setInt32(n+8,e.getInt32(n+8)^o[2]),e.setInt32(n+12,e.getInt32(n+12)^o[3]);if(n<r){u();for(let e=0;n<r;n++,e++)t[n]^=o[e>>2]>>>24-8*(3&e)}}(t),e||a.update(t,0,t.length)},digest:()=>a.digest()};function u(){i=i+1|0,i||(s=s+1|0,s||(c=c+1|0,c||(l=l+1|0)));let t=me(i)^r[0],e=me(s)^r[1],a=me(c)^r[2],u=me(l)^r[3],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[4],d=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[5],w=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[6],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[7];t=se[f>>>24]^ce[d>>>16&255]^le[w>>>8&255]^ue[255&p]^r[8],e=se[d>>>24]^ce[w>>>16&255]^le[p>>>8&255]^ue[255&f]^r[9],a=se[w>>>24]^ce[p>>>16&255]^le[f>>>8&255]^ue[255&d]^r[10],u=se[p>>>24]^ce[f>>>16&255]^le[d>>>8&255]^ue[255&w]^r[11],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[12],d=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[13],w=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[14],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[15],t=se[f>>>24]^ce[d>>>16&255]^le[w>>>8&255]^ue[255&p]^r[16],e=se[d>>>24]^ce[w>>>16&255]^le[p>>>8&255]^ue[255&f]^r[17],a=se[w>>>24]^ce[p>>>16&255]^le[f>>>8&255]^ue[255&d]^r[18],u=se[p>>>24]^ce[f>>>16&255]^le[d>>>8&255]^ue[255&w]^r[19],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[20],d=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[21],w=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[22],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[23],t=se[f>>>24]^ce[d>>>16&255]^le[w>>>8&255]^ue[255&p]^r[24],e=se[d>>>24]^ce[w>>>16&255]^le[p>>>8&255]^ue[255&f]^r[25],a=se[w>>>24]^ce[p>>>16&255]^le[f>>>8&255]^ue[255&d]^r[26],u=se[p>>>24]^ce[f>>>16&255]^le[d>>>8&255]^ue[255&w]^r[27],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[28],d=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[29],w=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[30],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[31],t=se[f>>>24]^ce[d>>>16&255]^le[w>>>8&255]^ue[255&p]^r[32],e=se[d>>>24]^ce[w>>>16&255]^le[p>>>8&255]^ue[255&f]^r[33],a=se[w>>>24]^ce[p>>>16&255]^le[f>>>8&255]^ue[255&d]^r[34],u=se[p>>>24]^ce[f>>>16&255]^le[d>>>8&255]^ue[255&w]^r[35],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[36],d=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[37],w=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[38],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[39];let m=40;n>10&&(t=se[f>>>24]^ce[d>>>16&255]^le[w>>>8&255]^ue[255&p]^r[40],e=se[d>>>24]^ce[w>>>16&255]^le[p>>>8&255]^ue[255&f]^r[41],a=se[w>>>24]^ce[p>>>16&255]^le[f>>>8&255]^ue[255&d]^r[42],u=se[p>>>24]^ce[f>>>16&255]^le[d>>>8&255]^ue[255&w]^r[43],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[44],d=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[45],w=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[46],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[47],m=48),n>12&&(t=se[f>>>24]^ce[d>>>16&255]^le[w>>>8&255]^ue[255&p]^r[48],e=se[d>>>24]^ce[w>>>16&255]^le[p>>>8&255]^ue[255&f]^r[49],a=se[w>>>24]^ce[p>>>16&255]^le[f>>>8&255]^ue[255&d]^r[50],u=se[p>>>24]^ce[f>>>16&255]^le[d>>>8&255]^ue[255&w]^r[51],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[52],d=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[53],w=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[54],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[55],m=56),o[0]=(ie[f>>>24]<<24|ie[d>>>16&255]<<16|ie[w>>>8&255]<<8|ie[255&p])^r[m],o[1]=(ie[d>>>24]<<24|ie[w>>>16&255]<<16|ie[p>>>8&255]<<8|ie[255&f])^r[m+1],o[2]=(ie[w>>>24]<<24|ie[p>>>16&255]<<16|ie[f>>>8&255]<<8|ie[255&d])^r[m+2],o[3]=(ie[p>>>24]<<24|ie[f>>>16&255]<<16|ie[d>>>8&255]<<8|ie[255&w])^r[m+3]}}function we(t){const e=function(){const t=new Int32Array(ae),e=new Int32Array(16),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);let o,a=t[0],i=t[1],s=t[2],c=t[3],l=t[4];for(let t=0;t<15;t+=5)l=(a<<5|a>>>27)+((s^c)&i^c)+l+1518500249+e[t]|0,i=i<<30|i>>>2,c=(l<<5|l>>>27)+((i^s)&a^s)+c+1518500249+e[t+1]|0,a=a<<30|a>>>2,s=(c<<5|c>>>27)+((a^i)&l^i)+s+1518500249+e[t+2]|0,l=l<<30|l>>>2,i=(s<<5|s>>>27)+((l^a)&c^a)+i+1518500249+e[t+3]|0,c=c<<30|c>>>2,a=(i<<5|i>>>27)+((c^l)&s^l)+a+1518500249+e[t+4]|0,s=s<<30|s>>>2;l=(a<<5|a>>>27)+((s^c)&i^c)+l+1518500249+e[15]|0,i=i<<30|i>>>2,o=e[13]^e[8]^e[2]^e[0],o=o<<1|o>>>31,e[0]=o,c=(l<<5|l>>>27)+((i^s)&a^s)+c+1518500249+o|0,a=a<<30|a>>>2,o=e[14]^e[9]^e[3]^e[1],o=o<<1|o>>>31,e[1]=o,s=(c<<5|c>>>27)+((a^i)&l^i)+s+1518500249+o|0,l=l<<30|l>>>2,o=e[15]^e[10]^e[4]^e[2],o=o<<1|o>>>31,e[2]=o,i=(s<<5|s>>>27)+((l^a)&c^a)+i+1518500249+o|0,c=c<<30|c>>>2,o=e[0]^e[11]^e[5]^e[3],o=o<<1|o>>>31,e[3]=o,a=(i<<5|i>>>27)+((c^l)&s^l)+a+1518500249+o|0,s=s<<30|s>>>2;for(let t=20;t<40;t+=5)o=e[t-3&15]^e[t-8&15]^e[t-14&15]^e[15&t],o=o<<1|o>>>31,e[15&t]=o,l=(a<<5|a>>>27)+(i^s^c)+l+1859775393+o|0,i=i<<30|i>>>2,o=e[t-2&15]^e[t-7&15]^e[t-13&15]^e[t+1&15],o=o<<1|o>>>31,e[t+1&15]=o,c=(l<<5|l>>>27)+(a^i^s)+c+1859775393+o|0,a=a<<30|a>>>2,o=e[t-1&15]^e[t-6&15]^e[t-12&15]^e[t+2&15],o=o<<1|o>>>31,e[t+2&15]=o,s=(c<<5|c>>>27)+(l^a^i)+s+1859775393+o|0,l=l<<30|l>>>2,o=e[15&t]^e[t-5&15]^e[t-11&15]^e[t+3&15],o=o<<1|o>>>31,e[t+3&15]=o,i=(s<<5|s>>>27)+(c^l^a)+i+1859775393+o|0,c=c<<30|c>>>2,o=e[t+1&15]^e[t-4&15]^e[t-10&15]^e[t+4&15],o=o<<1|o>>>31,e[t+4&15]=o,a=(i<<5|i>>>27)+(s^c^l)+a+1859775393+o|0,s=s<<30|s>>>2;for(let t=40;t<60;t+=5)o=e[t-3&15]^e[t-8&15]^e[t-14&15]^e[15&t],o=o<<1|o>>>31,e[15&t]=o,l=(a<<5|a>>>27)+(i&s|(i|s)&c)+l+2400959708+o|0,i=i<<30|i>>>2,o=e[t-2&15]^e[t-7&15]^e[t-13&15]^e[t+1&15],o=o<<1|o>>>31,e[t+1&15]=o,c=(l<<5|l>>>27)+(a&i|(a|i)&s)+c+2400959708+o|0,a=a<<30|a>>>2,o=e[t-1&15]^e[t-6&15]^e[t-12&15]^e[t+2&15],o=o<<1|o>>>31,e[t+2&15]=o,s=(c<<5|c>>>27)+(l&a|(l|a)&i)+s+2400959708+o|0,l=l<<30|l>>>2,o=e[15&t]^e[t-5&15]^e[t-11&15]^e[t+3&15],o=o<<1|o>>>31,e[t+3&15]=o,i=(s<<5|s>>>27)+(c&l|(c|l)&a)+i+2400959708+o|0,c=c<<30|c>>>2,o=e[t+1&15]^e[t-4&15]^e[t-10&15]^e[t+4&15],o=o<<1|o>>>31,e[t+4&15]=o,a=(i<<5|i>>>27)+(s&c|(s|c)&l)+a+2400959708+o|0,s=s<<30|s>>>2;for(let t=60;t<80;t+=5)o=e[t-3&15]^e[t-8&15]^e[t-14&15]^e[15&t],o=o<<1|o>>>31,e[15&t]=o,l=(a<<5|a>>>27)+(i^s^c)+l+3395469782+o|0,i=i<<30|i>>>2,o=e[t-2&15]^e[t-7&15]^e[t-13&15]^e[t+1&15],o=o<<1|o>>>31,e[t+1&15]=o,c=(l<<5|l>>>27)+(a^i^s)+c+3395469782+o|0,a=a<<30|a>>>2,o=e[t-1&15]^e[t-6&15]^e[t-12&15]^e[t+2&15],o=o<<1|o>>>31,e[t+2&15]=o,s=(c<<5|c>>>27)+(l^a^i)+s+3395469782+o|0,l=l<<30|l>>>2,o=e[15&t]^e[t-5&15]^e[t-11&15]^e[t+3&15],o=o<<1|o>>>31,e[t+3&15]=o,i=(s<<5|s>>>27)+(c^l^a)+i+3395469782+o|0,c=c<<30|c>>>2,o=e[t+1&15]^e[t-4&15]^e[t-10&15]^e[t+4&15],o=o<<1|o>>>31,e[t+4&15]=o,a=(i<<5|i>>>27)+(s^c^l)+a+3395469782+o|0,s=s<<30|s>>>2;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 t<<24|(65280&t)<<8|t>>>8&65280|t>>>24}function he(t){return 255&(t<<1^27*(t>>7))}const ye=typeof crypto!=O&&typeof crypto.getRandomValues==C,Ee="Invalid password",be="Invalid authentication code",Se="zipjs-abort-check-password",ge="Crypto API not supported";function Ae(t){if(ye)return crypto.getRandomValues(t);throw new Error(ge)}const Re={name:"PBKDF2"},De=Object.assign({hash:{name:"HMAC"}},Re),xe=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},Re),Fe=["deriveBits"],ze=[8,12,16],Ie=[16,24,32],Te=10,Ue=typeof crypto!=O,Oe=Ue&&crypto.subtle;let Ce=Ue&&typeof Oe!=O&&typeof Oe.importKey==C&&typeof Oe.deriveBits==C,ke=de;class Me extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r,checkPasswordOnly:n,checkAuthenticationCode:o=!0}){super({start(){ve(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 Be(t,e,r,Pe(n,0,ze[e])),a=Pe(n,ze[e]);if(o[0]!=a[0]||o[1]!=a[1])throw Le(t),new Error(Ee)}(r,a,o,Pe(t,0,ze[a]+2)),t=Pe(t,ze[a]+2),n?(Le(r),e.error(new Error(Se))):i()):await s;const c=new Uint8Array(t.length-Te-(t.length-Te)%16);e.enqueue(_e(r,t,c,0,Te,!0))},async flush(t){const{m:e,h:r,ready:n}=this;if(e){await n;const a=Pe(r,r.length-Te),i=new Uint8Array(Pe(r,0,r.length-Te));e.process(i,!0);const s=e.digest();let c=r.length<Te?1:0;for(let t=0;t<Te;t++)c|=s[t]^a[t];if(c&&o)throw new Error(be);t.enqueue(i)}},cancel(){Le(this)}})}}class Ne extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r}){super({start(){ve(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(ze[e]));return Bt(n,await Be(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(_e(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=Pe(e.digest(),0,Te);t.enqueue(Bt(o,a))}},cancel(){Le(this)}})}}function ve(t,e,r,n){Object.assign(t,{ready:new Promise(e=>t.l=e),password:je(e,r),strength:n-1,h:v})}function _e(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=Pe(r,n,n+l);t.set(Pe(e,0,l)),i.process(t,a)}return t.h=Pe(e,l),r}function Le({m:t}){t&&t.dispose&&t.dispose()}async function Be(t,e,r,n){t.password=null;const o=Ie[e],a=await async function(t,e,r){if(Ce)try{const n=await Oe.importKey("raw",t,De,!1,Fe);return new Uint8Array(await Oe.deriveBits(Object.assign({salt:e},xe),n,8*r))}catch{Ce=!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=ke(Pe(a,0,o),Pe(a,o,2*o)),Pe(a,2*o)}function je(t,e){return e===T?te(t):e}function Pe(t,e,r){return t.subarray(e,r)}class We extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r,checkPasswordOnly:n}){super({start(){Ze(this,t,e,r)},transform(t,e){const r=this;if(r.password||r.rawPassword){const e=He(r,t.subarray(0,12));if(r.password=r.rawPassword=null,0!=(e[11]^r.passwordVerification))throw new Error(Ee);t=t.subarray(12)}n?e.error(new Error(Se)):e.enqueue(He(r,t))}})}}class Ve extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r}){super({start(){Ze(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(Ge(r,e),0),o=12}else n=new Uint8Array(t.length),o=0;n.set(Ge(r,t),o),e.enqueue(n)}})}}function Ze(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++)Ye(t,r[e]);else for(let r=0;r<e.length;r++)Ye(t,e.charCodeAt(r))}(t,e,r)}function He(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=qe(t)^e[n],Ye(t,r[n]);return r}function Ge(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=qe(t)^e[n],Ye(t,e[n]);return r}function Ye(t,e){let[,r]=t.keys;t.S.append([e]);const n=~t.S.get();r=Xe(Math.imul(Xe(r+Ke(n)),134775813)+1),t.A.append([r>>>24]);const o=~t.A.get();t.keys=[n,r,o]}function qe(t){const e=2|t.keys[2];return Ke(Math.imul(e,1^e)>>>8)}function Ke(t){return 255&t}function Xe(t){return 4294967295&t}function Je(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 Qe(t,e){t=Je(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 $e(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 tr="Invalid codec definition",er="Reserved compression method",rr="Invalid codec module",nr="Compression method not supported",or=[0,8,9,99],ar=new Map,ir=new Map;function sr(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(tr);if(or.includes(r))throw new Error(er);const c=typeof a==C||typeof i==C;if(!(c||typeof o==M&&o.length))throw new Error(tr);ar.set(r,{compressionMethod:r,format:n,codecURI:o,versionNeeded:s}),c&&dr(n,{CompressionStream:a,DecompressionStream:i})}function cr(t){const e=ar.get(t);if(e){let r;ar.delete(t),ar.forEach(t=>r=r||t.format==e.format),r||ir.delete(e.format)}}function lr(t){return ar.get(t)}function ur(){return Array.from(ar.values(),t=>Object.assign({},t,ir.get(t.format)))}function fr(t){return ir.get(t)}function dr(t,e){const{CompressionStream:r,DecompressionStream:n}=e;if(typeof r!=C&&typeof n!=C)throw new Error(rr);ir.set(t,{CompressionStream:r,DecompressionStream:n})}const wr="Invalid uncompressed size",pr="Invalid compressed data",mr="Invalid CRC32",hr="deflate-raw",yr="deflate64-raw",Er="gzip",br=[31,139,8];class Sr 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&&fr(f),S=c&&o&&!u&&!b&&(!a||s)&&Boolean(i&&n);if(a&&!s||!c||S||(m=new $t,E=Tr(E,m)),o)if(b)E=Ur(E,zr(b.CompressionStream,f,{level:l,chunkSize:e,compressionMethod:d,uncompressedSize:w}));else if(S)y=new gr,E=Ur(E,new n(Er)),E=Tr(E,y);else try{E=Ir(E,i,{level:l,chunkSize:e},n,r)}catch(t){let e;try{e=new n(Er)}catch{throw t}E=Ur(E,e),E=Tr(E,new gr)}a&&(s?E=Tr(E,new Ve(t)):(h=new Ne(t),E=Tr(E,h))),Fr(p,E,()=>{a&&!s||!c||(p.crc32=S?y.crc32:new DataView(m.value.buffer).getUint32(0))})}}class gr 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=Tr(y,new We(t)):(h=new Me(t),y=Tr(y,h))),c){const t=f&&fr(f);if(t)y=Ur(y,zr(t.DecompressionStream,f,{chunkSize:e,compressionMethod:d,rawBitFlag:w,uncompressedSize:p}));else try{y=Ir(y,l,{chunkSize:e,deflate64:u},n,r)}catch(t){if(u||p===T)throw t;let e;try{e=new n(Er)}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(br),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=Tr(t,u),Tr(t=Ur(t,e),f);function d(){w(),o=setTimeout(()=>i(new Error(wr)),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(pr);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=Tr(y,m)),Fr(this,y,()=>{if(i){const t=new DataView(m.value.buffer);if(s!=t.getUint32(0,!1))throw new Error(mr)}})}}const Rr=new Map;function Dr(t,e){if(!t)return!1;let r=Rr.get(t);r||(r=new Map,Rr.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 xr(t){return Dr(t,hr)}function Fr(t,e,r){e=Tr(e,new TransformStream({flush:r})),Object.defineProperty(t,"readable",{get:()=>e})}function zr(t,e,r){if(!t)throw new Error(nr);return new t(e,r)}function Ir(t,e,r,n,o){const a=e&&n?n:o||n,i=r.deflate64?yr:hr;let s;try{s=new a(i,r)}catch(t){if(!e||!o||a==o)throw t;s=new o(i,r)}return Ur(t,s)}function Tr(t,e){return Je(t).pipeThrough(e)}function Ur(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 Or="data",Cr="deflate",kr="inflate";class Mr extends TransformStream{constructor(t,e){super({});const r=this,{codecType:n}=t;let o;n.startsWith(Cr)?o=Sr:n.startsWith(kr)&&(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(wr)},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 Nr 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 vr="Worker startup timeout";let _r,Lr,Br,jr=()=>{};async function Pr(t){if(jr)try{return await jr(t),!0}catch{}return!1}function Wr(t){t.createWorker?Lr=!0:_r=!1}class Vr{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 Lr&&(f=T),Object.assign(t,{D:!0,F:(t.F||0)+1,readable:e.pipeThrough(new Nr(Ot(i))).pipeThrough(new Zr(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=t.U||[],t.U.push(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.forEach(t=>t())),t.D=!1,o(t)}}}),_r===T&&(_r=typeof Worker!=O),(c&&Br&&(_r&&u||f)?Br:Gr)(t,i)}}class Zr extends TransformStream{constructor({onstart:t,onprogress:e,size:r,onend:n}){let o=0;super({async start(){t&&await Hr(t,r)},async transform(t,n){o+=t.length,e&&await Hr(e,o,r),n.enqueue(t)},async flush(){n&&await Hr(n,o)}})}}async function Hr(t,...e){try{await t(...e)}catch{}}function Gr(t,e){return{run:()=>Yr(t,e)}}async function Yr({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(Cr),r=e?a.CompressionStreamFallback:a.DecompressionStreamFallback,n=e?a.CompressionStream:a.DecompressionStream;t.useCompressionStream?r&&r.N&&!xr(n)&&await l():await l()||r&&!r.N||(t.useCompressionStream=!0)}t.encrypted&&!t.zipCrypto&&await l(),i=new Mr(t,a),s=new Nr(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=Pr(a)),c}}const qr={type:"module"},Kr="error";let Xr,Jr,Qr,$r=!0;try{$r=typeof structuredClone==C&&structuredClone(new DOMException("","AbortError")).code!==T}catch{}var tn;function en(t){const{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function rn(t){const{T:e}=t;if(e)try{e.terminate()}catch{}t.O=null}function nn(t,e,r,n,o=!0){const{createWorker:a}=r;let i,s,c;if(a)i=a();else if(Jr===T||Xr!==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=qr);try{i=new Worker(s,c)}catch(o){if(u)try{URL.revokeObjectURL(s)}catch{}if(a&&u)return nn(t,e,r,n,!1);if(n)throw o;return nn(t,e,r,!0,!1)}}else{n===T&&(n=!0),n&&(c=qr);try{s=new URL(s,e)}catch{}try{i=new Worker(s,c)}catch(a){if(n)return nn(t,e,r,!1,o);throw a}}Xr=t,Jr=s,Qr=c}else i=new Worker(Jr,Qr);return i.addEventListener("message",t=>{r.v=!0,on(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()||sn({type:Or,value:t,done:r,messageId:o},e)}if(r==Or){const t=new Uint8Array(n);await l.ready,await l.write(t),p()||sn({type:"ack",messageId:o},e)}"close"==r&&function(t){p()||(u(t),h(),d())}(a)}}catch(i){p()||(rn(e),m(i))}function m(t){p()||(f(t),h(),Wt(t)&&t.codecImportFailed||d())}function h(){l&&l.releaseLock()}}(t,r)}),i.addEventListener(Kr,t=>an(t,r)),i.addEventListener("messageerror",t=>an(t,r)),i}function on(t){const{B:e}=t;e&&(clearTimeout(e),t.B=null)}function an(t,e){t.preventDefault&&t.preventDefault(),on(e);const{v:r,L:n,writer:o,C:a}=e;rn(e),r||(e.T=null);let i=t.error||new Error(t.message||Kr);r||(i=Object.assign(new Error(i.message||Kr),{j:!0}),e.P=i),n&&(n(i),o&&o.releaseLock(),r&&a())}function sn(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&&$r&&o?(a&&s.push(a),i&&s.push(i)):t.readable=t.writable=null,s.length)try{return e.postMessage(t,s),!0}catch{$r=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(t){throw r&&r.releaseLock(),t}}tn=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=nn(t.workerURI,r,t)}catch{return Wr(t),Gr(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(vr);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=sn({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(rn(t),t.T=null,e){const t=new Error(vr);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 Wr(t),en(t),Yr(t,e);if(r&&r.codecImportFailed){if(t.reader)return en(t),Yr(t,e);t.C()}throw r}}}})}return t.O},Br=tn;let cn=[];const ln=[];let un,fn,dn=0;async function wn(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){!ir.has(t)&&e&&dr(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=cn.find(t=>!t.D);if(r)return En(r),new Vr(r,t,e,E);if(cn.length<m){const r={H:dn};return dn++,cn.push(r),new Vr(r,t,e,E)}return new Promise(r=>{ln.push({resolve:r,stream:t,I:e}),fn=n.workerStarvationTimeout,pn()})}()).run();function E(t){if(mn(),ln.length){const[{resolve:e,stream:r,I:n}]=ln.splice(0,1);e(new Vr(t,r,n,E)),pn()}else t.T?(En(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()=>{cn=cn.filter(e=>e!=t);try{await t.terminate()}catch{}},n))}(t,e)):cn=cn.filter(e=>e!=t)}}function pn(){!un&&ln.length&&Number.isFinite(fn)&&fn>=0&&(un=setTimeout(hn,fn))}function mn(){un&&(clearTimeout(un),un=null)}function hn(){if(un=null,ln.length){const[{resolve:t,stream:e,I:r}]=ln.splice(0,1),n=Object.assign({},r,{useWebWorkers:!1,workerURI:T,createWorker:T});t(new Vr({},e,n,yn)),pn()}}function yn(){mn(),pn()}function En(t){const{G:e}=t;e&&(clearTimeout(e),t.G=null)}const bn="\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 Sn(t,e){return gn(t,e,!0)}function gn(t,e,r){return e&&"cp437"==e.trim().toLowerCase()?function(t){let e="";for(let r=0;r<t.length;r++)e+=bn[t[r]];return e}(t):new TextDecoder(e,{ignoreBOM:r}).decode(t)}const An="HTTP error ",Rn="HTTP Range not supported",Dn="HTTP resource changed",xn="Writer iterator completed too soon",Fn="Writer not initialized",zn="Invalid writer (size must be writable)",In="Content-Range",Tn="Range",Un="GET",On="bytes",Cn=16777216,kn="writable",Mn=Symbol();class Nn{constructor(){this.size=0}init(){this.initialized=!0}}class vn extends Nn{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 _n extends Nn{constructor(){super();const t=this,e=new WritableStream({write(e){if(!t.initialized)throw new Error(Fn);return t.writeUint8Array(jt(e))}});Object.defineProperty(t,kn,{get:()=>e})}writeUint8Array(){}}class Ln extends vn{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 Bn extends _n{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 jn,Pn;class Wn extends vn{constructor(t){super(),Object.assign(this,{J:t,size:t.size}),Pn||(Pn=(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();jn=1==e}catch{jn=!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 Je(e.stream());if(jn)return Je(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 Vn extends Nn{constructor(t){super();const e=this,r=new TransformStream;Object.defineProperty(e,kn,{get:()=>r.writable}),e.contentType=t,e.$=Qe(r.readable,t),e.$.catch(()=>{})}getData(){return this.$}}class Zn extends Wn{constructor(t){super(new Blob([t],{type:"text/plain"}))}}class Hn extends Vn{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 gn(t,e,!1)}(new Uint8Array(await r.arrayBuffer()),t)}}class Gn extends vn{constructor(t,e){super(),qn(this,t,e)}async init(){await Kn(this,co,oo),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(Rn);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 co(Un,t,ro(t,o,e));if(206!=r.status)throw new Error(Rn);const s=Jn(r);if(s!==T&&s!=o)throw new Error(Rn);eo(t,r),to(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 Xn(this,t,e,co,oo)}}class Yn extends vn{constructor(t,e){super(),qn(this,t,e)}async init(){await Kn(this,lo,ao),super.init()}readUint8Array(t,e){return Xn(this,t,e,lo,ao)}}function qn(t,e,r){const{preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s=!0,maximumRangeSize:c=Cn,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 Kn(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(Un,t,ro(t,s?-65557:void 0)),o=n.headers.get("Accept-Ranges");if(!(i||o&&o.toLowerCase()==On))throw new Error(Rn);{let o;s&&206==n.status&&(o=new Uint8Array(await n.arrayBuffer())),to(t,n);const a=Qn(n);a===T?await so(t,e,r):t.size=a,o&&o.length&&Jn(n)===t.size-o.length&&(t.nt=o)}}else await so(t,e,r)}async function Xn(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(Un,t,ro(t,e,r));if(206!=o.status)throw new Error(Rn);const a=Jn(o);if(a!==T&&a!=e)throw new Error(Rn);eo(t,o),to(t,o);const i=new Uint8Array(await o.arrayBuffer());if(i.length!=r)throw new Error(Rn);return i}}{const{data:n}=t;return n||await o(t,l),t.data.subarray(e,e+r)}}function Jn(t){const e=t.headers.get(In);if(e){const t=Number(e.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(t))return t}}function Qn(t){const e=t.headers.get(In);if(e){const t=e.trim().split(/\s*\/\s*/)[1];if(t&&"*"!=t){const e=Number(t);if(!Number.isNaN(e))return e}}}function $n({headers:t}){return{ot:t.get("Etag")||T,lastModified:t.get("Last-Modified")||T}}function to(t,e){const{checkResourceChanges:r,it:n}=t;r&&!n&&206==e.status&&(t.it=$n(e))}function eo(t,e){const{checkResourceChanges:r,it:n,size:o}=t;if(r){const t=Qn(e);if(t!==T&&o!==T&&t!=o)throw new Error(Dn);if(n){const t=$n(e);if(Object.entries(n).some(([e,r])=>r!==T&&t[e]!==T&&r!=t[e]))throw new Error(Dn)}}}function ro(t,e=0,r=1){return Object.assign({},no(t),{[Tn]:On+"="+(e<0?e:e+"-"+(e+r-1))})}function no({options:t}){const{headers:e}=t;if(e)return Symbol.iterator in e?Object.fromEntries(e):e}async function oo(t){await io(t,co)}async function ao(t){await io(t,lo)}async function io(t,e){const r=await e(Un,t,no(t));t.data=new Uint8Array(await r.arrayBuffer()),t.size=t.data.length}async function so(t,e,r){if(t.preventHeadRequest)await r(t,t.options);else{const n=await e("HEAD",t,no(t)),o=n.headers.get("Content-Length");o&&!n.headers.get("Content-Encoding")?t.size=Number(o):await r(t,t.options)}}async function co(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(Rn):new Error(An+(a.statusText||a.status))}function lo(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(Rn):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 uo extends vn{constructor(t,e={}){super(),Object.assign(this,{url:t,reader:e.useXHR&&!e.fetch?new Yn(t,e):new Gn(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 fo extends uo{constructor(t,e={}){super(t,Object.assign({},e,{useRangeHeader:!0}))}}class wo extends vn{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 po extends _n{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 mo extends vn{constructor(t){super(),this.lt=t}async init(){const t=this;t.ut=0;const e=t.lt=await Promise.all(t.lt.map(go));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 ho extends Nn{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===Mn)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(xn);n=i,n.size=0,n.maxSize&&(r.maxSize=n.maxSize),r.availableSize=r.maxSize,await So(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,kn,{get:()=>i})}async closeDisk(){const t=this.writable.getWriter();try{await t.ready,await t.write(Mn)}finally{t.releaseLock()}}}class yo{constructor(t){return Array.isArray(t)&&(t=new mo(t)),(t instanceof ReadableStream||typeof t.getReader==C)&&(t={readable:Je(t)}),t}}class Eo{constructor(t){t.writable===T&&typeof t.next==C&&(t=new ho(t)),(t instanceof WritableStream||typeof t.getWriter==C)&&(t={writable:$e(t)});try{t.size=t.size===T?0:t.size}catch{throw new Error(zn)}return t}}function bo(t){return Boolean(t&&t.getData)}async function So(t,e){if(!t.init||t.initialized)return Promise.resolve();await t.init(e)}async function go(t){return t=new yo(t),await So(t),t.size!==T&&t.readUint8Array||(t=new Wn(await Qe(t.readable)),await So(t)),t}function Ao(t,e,r){return t.readUint8Array(e,r)}function Ro(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?vn.prototype.createReadable.call(t,e):t.readable}function Do(t,e,r){if(!t.some(t=>t.reason==e)){const n={reason:e};r!==T&&(n.filename=r),t.push(n)}}const xo="filename",Fo="rawFilename",zo="comment",Io="rawComment",To="uncompressedSize",Uo="compressedSize",Oo="offset",Co="diskNumberStart",ko="lastModDate",Mo="rawLastModDate",No="lastAccessDate",vo="rawLastAccessDate",_o="creationDate",Lo="rawCreationDate",Bo="internalFileAttributes",jo="externalFileAttributes",Po="msdosAttributesRaw",Wo="msdosAttributes",Vo="msDosCompatible",Zo="zip64",Ho="encrypted",Go="version",Yo="versionMadeBy",qo="zipCrypto",Ko="directory",Xo="executable",Jo="compressionMethod",Qo="signature",$o="extraField",ta="unixMode",ea="setuid",ra="setgid",na="sticky",oa=[xo,Fo,To,Uo,ko,Mo,zo,Io,No,vo,_o,Lo,Oo,Co,Bo,jo,Po,Wo,Vo,Zo,Ho,Go,Yo,qo,Ko,Xo,"symlink",Jo,Qo,"crc32",$o,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",ta,"unixExternalUpper",ea,ra,na,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class aa{constructor(t){oa.forEach(e=>this[e]=t[e])}}const ia=new Set([1,m,10,h,28789,25461,y,E,b,22613,13]);function sa(t,e,r){return t?e?12:16+4*r:0}const ca="File format is not recognized",la="End of central directory not found",ua="End of Zip64 central directory locator not found",fa="Central directory header not found",da="Local file header not found",wa="Zip64 extra field not found",pa="File contains encrypted entry",ma="Encryption method not supported",ha="Split zip file",ya="Overlapping entry found",Ea="Entry data out of bounds",ba="Ambiguous archive",Sa="Encrypted central directory is not supported",ga="Unsafe filename",Aa="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",Ra="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Da="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",xa="64-bit value exceeds Number.MAX_SAFE_INTEGER",Fa="unsorted central directory",za="unknown version needed to extract",Ia="compressed patched data",Ta="malformed extra field",Ua="unknown zip64 extensible data",Oa="wrapped entries count",Ca="appended data",ka="prepended data",Ma="prepended central directory",Na="trailing central directory data",va="duplicate filename",_a="mismatched zip64 end of central directory record",La="multiple end of central directory records",Ba="mismatched local file header (filename)",ja="mismatched local file header (general purpose bit flag)",Pa="mismatched local file header (compression method)",Wa="mismatched local file header (crc32 or sizes)",Va=/^[a-zA-Z]:/,Za="utf-8",Ha="cp437",Ga=[[To,t],[Uo,t],[Oo,t],[Co,e]],Ya={[e]:{ht:Ui,bytes:4},[t]:{ht:Oi,bytes:8}},qa=BigInt(Number.MAX_SAFE_INTEGER);class Ka{constructor(t,e={}){Object.assign(this,{reader:new yo(t),options:e,yt:{Et:new Set,bt:[],St:[]}})}async*getEntriesGenerator(n={}){const a=this;let{reader:i}=a;if(await So(i),i.size!==T&&i.readUint8Array||(i=new Wn(await Qe(i.readable)),await So(i)),i.size<d)throw new Error(ca);const c=a.warnings=[],m=wi(n,a.options),h=m==et,y=m!=nt,E=hi(Di(a,n,J),m),b=function(t,e){if(t===T)return e;if(!di(t))throw new Error(Ra);return t}(Di(a,n,"filenameValidation"),m),S=Di(a,n,"normalizeFilename"),{gt:F,At:z}=await yi(i,y,E);if(!F)throw await async function(t){return await fi(t)==o}(i)?new Error(ha):new Error(la);y&&z>1&&Ri(La);const I=Pt(F);let U=Ui(I,12),O=Ui(I,16);const C=F.offset,k=Ti(I,20),M=C+d+k,N=i.size-M;N>E&&Ri(Ca),N>0&&Do(c,Ca);let _=Ti(I,4);const L=i.ut||0;let B,j,P,W,V,Z=Ti(I,6),H=Ti(I,10),G=0,Y=p;const q=O==t||U==t||H==e||Z==e;if(O!=t&&Z!=e&&(O+=ui(i,Z)),q){const r=F.offset>=w?await Ao(i,F.offset-w,w):v,n=Pt(r);if(r.length==w&&Ui(n,0)==u){O=ui(i,Ui(n,4))+Oi(n,8);let r=await Ao(i,O,p),o=Pt(r);const a=F.offset-w-p;if((r.length<p||Ui(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||Ui(o,0)!=l)throw new Error(ua);if(P=!0,W=Oi(o,4)>44,W){const t=Math.min(Oi(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=Ti(r,26);Object.assign(e,{compressionMethod:Ti(r,0),compressedSize:Oi(r,2),uncompressedSize:Oi(r,10),encryptionAlgorithm:Ti(r,18),bitLength:Ti(r,20),flags:Ti(r,22),hashAlgorithm:Ti(r,24),hashData:t.subarray(28,28+n)})}return e}(await Ao(i,O+p,t)))}_==e?_=Ui(o,16):_!=Ui(o,16)&&Ai(h,c,_a),Z==e?Z=Ui(o,20):Z!=Ui(o,20)&&Ai(h,c,_a),H==e?H=Oi(o,32):H!=Oi(o,32)&&Ai(h,c,_a),U==t?U=Oi(o,40):U!=Oi(o,40)&&Ai(h,c,_a),O=ui(i,Z)+Oi(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(ha);if(O<0)throw new Error(ca);let Q=0,rt=await Ao(i,O,U),ot=Pt(rt);if(U){if(rt.length<4)throw new Error(ca);const t=X-U;if(O!=t&&Z==_){const e=Ui(ot,Q)==s||Boolean(V&&V.compressedSize)||$a(ot);let r=!e;if(!r&&t>=0&&t+4<=i.size&&(r=Ui(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(ca);a.directoryOffset=O,a.directoryLength=K;const it=xi(a,n,"decryptCentralDirectory");let st,ct;if(it&&H&&rt.length>=4&&Ui(ot,0)!=s&&(W||$a(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||Ui(ot,0)==s)&&Do(c,Ua),j=O;const lt=Di(a,n,"filenameEncoding"),ut=Di(a,n,"commentEncoding"),ft=new Set;let dt,wt=-1;const pt=!h&&!P;!H&&pt&&(H=ti(ot,rt,Q),H&&Do(c,Oa));for(let t=0;t<H;t++){const o=new Qa(i,a.options);if(Q+f>rt.length||Ui(ot,Q)!=s){if(0==t&&!st&&(W||$a(ot)))throw new Error(Sa);throw new Error(fa)}ri(o,ot,Q+6);const l=Boolean(o.bitFlag.languageEncodingFlag),u=Q+f,d=u+o.filenameLength,w=d+o.extraFieldLength,p=Ti(ot,Q+4),m=!(p>>8),h=p>>8==3,y=rt.subarray(u,d),E=Ti(ot,Q+32),F=w+E,z=rt.subarray(w,F),I=l,U=l,O=Ui(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=Ui(ot,Q+42),N=xi(a,n,"decodeText")||Sn,v=I?Za:lt||Ha,_=U?Za:ut||Ha;let L=N(y,v,$);if(L===T&&(L=Sn(y,v)),S){const t=S(L);t!==T&&(L=t)}if(mi(L,b)){const t=new Error(ga);throw t.filename=L,t}let B=N(z,_,tt);B===T&&(B=Sn(z,_)),Object.assign(o,{index:t,Rt:st,versionMadeBy:p,msDosCompatible:m,zip64:!1,compressedSize:0,uncompressedSize:0,Dt:E,offset:M,diskNumberStart:Ti(ot,Q+34),internalFileAttributes:Ti(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}),ni(o,o,ot,Q+6)&&Do(c,Ta,L),o.offset+=G;const P=ui(i,o.diskNumberStart)+o.offset;j=Math.min(P,j),P<wt&&Do(c,Fa,L),wt=P,(o.version&r)>63&&Do(c,za,L),32&~o.rawBitFlag||Do(c,Ia,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)&g),X=!K&&(o.unixMode!==T?!!(73&o.unixMode):h&&!!(73&V)),J=o.unixMode!==T&&(o.unixMode&g)==A,et=(V&g)==A;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 aa(o);if(nt.getData=(t,e)=>o.getData(t,nt,a.yt,e),nt.arrayBuffer=async t=>{const e=new TransformStream,r=Qe(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=ti(ot,rt,Q);t&&(H+=t,Do(c,Oa))}const{onprogress:at}=n;if(at)try{await at(t+1,H,new aa(o))}catch{}yield nt}let mt=Q,ht=ei(rt.subarray(Q))||(st?ei(ct):T);if(!ht&&!st){const t=O+Q,e=Math.min(X-t,65541);e>=6&&(ht=ei(await Ao(i,t,e)))}ht&&(a.digitalSignature=ht,mt=Q+6+ht.length),(Q!=K&&mt!=K||!st&&Q!=U&&mt!=U)&&Ai(h,c,Na),dt&&Ai(h,c,va);const yt=Di(a,n,"extractPrependedData"),Et=Di(a,n,"extractAppendedData"),bt=(h||yt)&&H&&4==j&&await async function(t){const e=await fi(t);return e==o||808471376==e}(i)?4:0;return h&&(G||H&&j>bt)&&Ri(ka),(G||H&&j>4)&&Do(c,ka),B&&Do(c,Ma),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 Xa{constructor(t={}){let e;const{readable:r,writable:n}=new TransformStream({start(t){e=t}}),o=new Ka(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 Ja(t,e={}){if(t=new yo(t),await So(t),t.size!==T&&t.readUint8Array||(t=new Wn(await Qe(t.readable)),await So(t)),t.size<d)return!1;const r=wi(e,{}),n=r!=nt,o=hi(e[J],r),{gt:a,At:i}=await yi(t,n,o);if(!a||r==et&&i>1)return!1;const s=Ti(Pt(a),20),c=a.offset+d+s;return t.size-c<=o}class Qa{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:g}=s,{dataDescriptor:A}=h,R=e.localDirectory={},D=e.warnings=[],x=ui(l,d)+f,z=await Ao(l,x,F),I=Pt(z);let U=Di(s,i,L),O=Di(s,i,B);const C=pt(Di(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(nr);if(z.length<F||Ui(I,0)!=n)throw new Error(da);ri(R,I,4);const{extraFieldLength:N,filenameLength:_}=R,G=R.dataOffset=x+F+_+N,Y=Di(s,i,"checkLocalDirectory"),q=wi(i,s.options),K=function(t,e){return t===T?e!=nt:Boolean(t)}(Y,q),X=Di(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),ni(s,R,I,4,!0)&&Do(D,Ta),function(t,e,r,n,o){const{rawFilename:a}=t,i=!o,s=t.Rt&&!(8192&~e.rawBitFlag);!n||s||r.length==a.length&&!r.some((t,e)=>t!=a[e])||Ai(i,o,Ba),(2057&e.rawBitFlag)!=(2057&t.rawBitFlag)&&Ai(i,o,ja),e.compressionMethod!=t.compressionMethod&&Ai(i,o,Pa),e.bitFlag.dataDescriptor||s||!(e.crc32||e.compressedSize||e.uncompressedSize)||e.crc32==t.crc32&&e.compressedSize==t.compressedSize&&e.uncompressedSize==t.uncompressedSize||Ai(i,o,Wa)}(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=Di(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(ma);const ct=k?T:lr(m);if(0!=m&&8!=m&&9!=m&&!ct&&!k)throw new Error(nr);if(it){if(!st&&(w.strength<1||w.strength>3))throw new Error(ma);if(!U&&!O)throw new Error(pa)}if(G+g>l.size)throw new Error(Ea);const lt=g,ut=ft(Di(s,i,P));dt(ut);let mt=Di(s,i,"checkOverlappingEntry");const ht=Di(s,i,"checkOverlappingEntryOnly");ht&&(mt=!0);const{onstart:yt,onprogress:Et,onend:bt}=i,St=0!=m&&!k,gt=k?g-sa(it,st,w&&w.strength):S,At=9==m;let Rt=Di(s,i,V);At&&(Rt=!1);const Dt=Di(s,i,"checkCrc32"),xt=(Dt===T?Di(s,i,"checkSignature"):Dt)&&!k&&(!it||st||w&&1==w.vendorVersion),Ft={options:{codecType:kr,password:U,rawPassword:O,zipCrypto:st,encryptionStrength:w&&w.strength,checkCrc32:xt,checkAuthenticationCode:Di(s,i,"checkAuthenticationCode"),passwordVerification:st&&(A?b>>>8&r:E>>>24&r),outputSize:gt,crc32:E,compressed:St,encrypted:it,useWebWorkers:Di(s,i,W),useCompressionStream:Rt,transferStreams:Di(s,i,Z),deflate64:At,format:ct?ct.format:T,codecURI:ct?ct.codecURI:T,compressionMethod:m,rawBitFlag:y,checkPasswordOnly:at},config:c,R:{signal:ut,size:lt,onstart:yt,onprogress:Et,onend:bt}};let zt,It,Tt;mt&&await async function({reader:t,xt: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&&Ui(n,0)==a;if(l){const t=li(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=li(n,l?4:0,u);t.signature=l,e.localDirectory.dataDescriptor=t}}const w={start:n,end:c+i+d,xt:e},{Et:p,bt:m,St:h}=f;if(!p.has(r)){const t=function(t,e){let r=0,n=t.length;for(;r<n;){const o=r+n>>>1;t[o].start<e.start?r=o+1:n=o}const o=t[r-1],a=t[r];return o&&ci(e,o)?o:a&&ci(e,a)?a:void 0}(m,w)||h.find(t=>ci(w,t));if(t){const e=new Error(ya);throw e.overlappingEntry=t.xt,e}p.add(r),h.push(w),h.length*h.length>m.length&&(h.sort((t,e)=>t.start-e.start),f.bt=function(t,e){const r=[];let n=0,o=0;for(;n<t.length||o<e.length;)o==e.length||n<t.length&&t[n].start<e[o].start?r.push(t[n++]):r.push(e[o++]);return r}(m,h),h.length=0)}}({reader:l,xt: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(!ht){at&&(t=new WritableStream),t=new Eo(t),await So(t,function(t,e,r){return Math.min(t,r?1032*e:e)}(gt,g,St)),({writable:zt}=t);const e=Je(l.createReadable({offset:G,size:lt})),{outputSize:r}=await wn({readable:e,writable:zt},Ft);if(r!=gt)throw Object.assign(new Error(wr),{outputSize:r});t.size+=r}}catch(e){const{outputSize:r}=Ft;if(r!==T?t.size+=r:Wt(e)&&e.outputSize!==T&&(t.size+=e.outputSize),!at||!Wt(e)||e.message!=Se)throw It=e,Tt=!0,e}finally{if((bo(t)||!Di(s,i,H))&&zt&&!zt.locked){const t=zt.getWriter();if(Tt)try{await t.abort(It)}catch{}else await t.close()}}return at||ht?T:t.getData?t.getData():zt}}function $a(t){const e=Math.min(t.byteLength,1024)-3;for(let r=0;r<e;r++)if(134630224==Ui(t,r))return!0;return!1}function ti(t,e,r){let n=0;for(;r+f<=e.length&&Ui(t,r)==s;)r+=f+Ti(t,r+28)+Ti(t,r+30)+Ti(t,r+32),n++;return n%65536?0:n}function ei(t){if(t.length>=6){const e=Pt(t);if(Ui(e,0)==i){const r=Ti(e,4);if(6+r<=t.length)return t.subarray(6,6+r)}}}function ri(t,e,r){const n=t.rawBitFlag=Ti(e,r+2),o=!(1&~n),a=Ui(e,r+6);Object.assign(t,{encrypted:o,version:Ti(e,r),bitFlag:{level:(6&n)>>1,dataDescriptor:!(8&~n),languageEncodingFlag:(n&S)==S},rawLastModDate:a,lastModDate:Fi(a),filenameLength:Ti(e,r+22),extraFieldLength:Ti(e,r+24)})}function ni(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=Ti(s,c),e=Ti(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=Ti(r,n+4);Object.assign(e,{signature:Ui(r,n+10),crc32:Ui(r,n+10),compressedSize:Ui(r,n+14),uncompressedSize:Ui(r,n+18)});const f=i.get(1);f&&(function(t,e){e.zip64=!0;const r=Pt(t.data),n=Ga.filter(([t,r])=>e[t]==r),o=n.reduce((t,[,e])=>t+Ya[e].bytes,0);if(t.data.length<o)throw new Error(wa);for(let o=0,a=0;o<n.length;o++){const[i,s]=n[o],c=Ya[s];e[i]=t[i]=c.ht(r,a),a+=c.bytes}}(f,e),e.extraFieldZip64=f);const d=i.get(28789);d&&(oi(d,xo,Fo,e,t),e.extraFieldUnicodePath=d);const w=i.get(25461);w&&(oi(w,zo,Io,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=Ii(n,4);Object.assign(t,{vendorVersion:Ii(n,0),vendorId:Ii(n,2),strength:o,originalCompressionMethod:r,compressionMethod:Ti(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&&(ai(S,e),e.extraFieldPkwareUnix=S);const g=i.get(22613);g&&(ai(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=Ti(r,o),a=Ti(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:zi(o),lastAccessDate:zi(a),creationDate:zi(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=ii(R,e,!1),e.extraFieldUnix=R),!D){const t=i.get(E);t&&(ii(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=Ii(n,0),a=[],i=[];r?(1&~o||(a.push(ko),i.push(Mo)),2&~o||(a.push(No),i.push(vo)),4&~o||(a.push(_o),i.push(Lo))):t.data.length>=5&&(a.push(ko),i.push(Mo));let s=1;a.forEach((r,o)=>{if(t.data.length>=s+4){const a=Ui(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 oi(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=Ui(a,1),l=Ii(a,0);Object.assign(t,{version:l,[e]:Sn(t.data.subarray(5)),valid:1==l&&!o.bitFlag.languageEncodingFlag&&c==Ui(s,0)}),t.valid&&(n[e]=t[e],n[e+"UTF8"]=!0)}function ai(t,e){if(t.data.length<8)return;const r=Pt(t.data),n={lastAccessDate:new Date(1e3*(0|Ui(r,0))),lastModDate:new Date(1e3*(0|Ui(r,4)))};t.data.length>=12&&(n.uid=Ti(r,8),n.gid=Ti(r,10)),Object.assign(t,n),Object.assign(e,n)}function ii(t,e,r){try{const n=Pt(t.data);let o,a;if(r){let e=0;const r=Ii(n,e++),i=Ii(n,e++);o=si(t.data.subarray(e,e+i)),e+=i;const s=Ii(n,e++);a=si(t.data.subarray(e,e+s)),Object.assign(t,{version:r,uid:o,gid:a})}else t.data.length>=4&&(o=Ti(n,0),a=Ti(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 si(t){const e=new Uint8Array(4);return e.set(t,0),new DataView(e.buffer,e.byteOffset,4).getUint32(0,!0)}function ci(t,e){return t.start<e.end&&e.start<t.end}function li(t,e,r){const n=Ui(t,e);let o,a;return r?(o=Oi(t,e+4),a=Oi(t,e+12)):(o=Ui(t,e+4),a=Ui(t,e+8)),{crc32:n,compressedSize:o,uncompressedSize:a}}function ui(t,e){return t.wt?t.wt(e):0}async function fi(t){return Ui(Pt(await Ao(t,0,4)))}function di(t){return t===et||t===rt||t===nt}function wi(t,e){return pi(t,pi(e,rt))}function pi(t,e){const r=t.strictness;if(r!==T){if(!di(r))throw new Error(Aa);return r}const n=t.checkAmbiguity;return n===T?e:n?et:e==nt?nt:rt}function mi(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("\\\\")||Va.test(t))||e==et&&(r.includes(".")||r.includes(""))}function hi(t,r){if(t!==T){const e=yt(t);if("number"!=typeof e||Number.isNaN(e)||e<0)throw new Error(Da);return e}return r==et?0:r==nt?1/0:e}async function yi(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 Ei(t,o)){const o=Ti(r,f+20);if(w+d+o==n){const o=await Si(t,r,l,f,w,n,a);if(2==o){if(i||(i=bi(u,f,w)),c++,!e||c>1)break}else 1!=o||s||(s=bi(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 Ei(t,o)){const o=bi(c,l,u);a||(a=o);const f=await Si(t,e,s,l,u,n,r);if(2==f)return o;1!=f||i||(i=o)}return i||a}(t,r,a)),{gt:i,At:c}}async function*Ei(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--)Ui(o,t)==c&&(yield[o,r,n,t,r+t])}function bi(t,e,r){return{offset:r,buffer:t.slice(e,e+d).buffer}}async function Si(r,n,o,a,i,c,l){const f=Ti(n,a+10),d=Ui(n,a+12),p=Ui(n,a+16);if(f==e||d==t||p==t)return await gi(r,n,o,i-w,c,l)==u?2:0;if(!f&&!d)return 1;const m=Ti(n,a+6);for(const t of[i-d,ui(r,m)+p])if(await gi(r,n,o,t,c,l)==s)return 2;return 0}async function gi(t,e,r,n,o,a){return n<0||n+4>o?T:n>=r?Ui(e,n-r):a.count>0?(a.count--,Ui(Pt(await Ao(t,n,4)),0)):T}function Ai(t,e,r){t?Ri(r):Do(e,r)}function Ri(t){const e=new Error(ba);throw e.reason=t,e}function Di(t,e,r){return e[r]===T?t.options[r]:e[r]}function xi(t,e,r){return ut(Di(t,e,r))}function Fi(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 zi(t){return new Date(Number(t/BigInt(1e4)-BigInt(116444736e5)))}function Ii(t,e){return t.getUint8(e)}function Ti(t,e){return t.getUint16(e,!0)}function Ui(t,e){return t.getUint32(e,!0)}function Oi(t,e){const r=t.getBigUint64(e,!0);if(r>qa)throw new Error(xa);return Number(r)}var Ci=Object.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:ba,ERR_BAD_FORMAT:ca,ERR_CENTRAL_DIRECTORY_NOT_FOUND:fa,ERR_ENCRYPTED:pa,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Sa,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Ea,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:ua,ERR_EOCDR_NOT_FOUND:la,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:wa,ERR_INVALID_AUTHENTICATION_CODE:be,ERR_INVALID_COMPRESSED_DATA:pr,ERR_INVALID_CRC32:mr,ERR_INVALID_FILENAME_VALIDATION:Ra,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Da,ERR_INVALID_PASSWORD:Ee,ERR_INVALID_STRICTNESS:Aa,ERR_INVALID_UNCOMPRESSED_SIZE:wr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:da,ERR_OVERLAPPING_ENTRY:ya,ERR_SPLIT_ZIP_FILE:ha,ERR_UNSAFE_FILENAME:ga,ERR_UNSUPPORTED_COMPRESSION:nr,ERR_UNSUPPORTED_ENCRYPTION:ma,ERR_UNSUPPORTED_UINT64:xa,ERR_WORKER_STARTUP_TIMEOUT:vr,WARNING_APPENDED_DATA:Ca,WARNING_COMPRESSED_PATCHED_DATA:Ia,WARNING_DUPLICATE_FILENAME:va,WARNING_MALFORMED_EXTRA_FIELD:Ta,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:ja,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:Pa,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:Wa,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:Ba,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:_a,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:La,WARNING_PREPENDED_CENTRAL_DIRECTORY:Ma,WARNING_PREPENDED_DATA:ka,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Na,WARNING_UNKNOWN_VERSION:za,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Ua,WARNING_UNSORTED_CENTRAL_DIRECTORY:Fa,WARNING_WRAPPED_ENTRIES_COUNT:Oa,ZipReader:Ka,ZipReaderStream:Xa,isZipFile:Ja});const ki="File already exists",Mi="Zip file comment exceeds 64KB",Ni="Invalid zip file comment (must be a Uint8Array)",vi="File entry comment exceeds 64KB",_i="Invalid file entry comment (must be a string)",Li="Invalid date (must be a valid Date instance)",Bi="File entry name exceeds 64KB",ji="Version exceeds 65535",Pi="The strength must equal 1, 2, or 3",Wi="Encryption is not supported in USDZ files",Vi="Split zip files are not supported in USDZ files",Zi="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",Hi="Invalid extra field (must be a Map)",Gi="Invalid extra field type (must be integer 0..65535)",Yi="Invalid extra field data (must be a Uint8Array)",qi="Extra field data exceeds 64KB",Ki=-2147483648,Xi=2147483647,Ji=BigInt(0),Qi=BigInt("0x7fffffffffffffff"),$i="Zip64 is not supported (set the 'zip64' option to 'true')",ts="Undefined uncompressed size",es="Undefined compression method",rs="Undefined CRC32",ns="Undetermined size",os="Undefined reader",as="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",is="Zip file not empty",ss="Invalid uid (must be integer 0..2^32-1)",cs="Invalid gid (must be integer 0..2^32-1)",ls="Invalid UNIX mode (must be integer 0..65535)",us="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",fs="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",ds="Invalid msdosAttributesRaw (must be integer 0..255)",ws="Invalid msdosAttributes (must be an object with boolean flags)",ps="Invalid level (must be integer 0..9)",ms="Signature data exceeds 64KB",hs="Invalid entry option (must be an entry returned by ZipReader#getEntries())",ys="The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set",Es="compression unavailable",bs="clamped last modification date",Ss=new Uint8Array([7,0,2,0,65,69,3,0,0]),gs="infozip",As="unix",Rs=[8,9,5,3];let Ds=0;const xs=[];class Fs{constructor(t,e={}){t=new Eo(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(Vi);Object.assign(this,{writer:t,Ft:o,options:e,zt:new Map,It:new Set,offset:e[K]===T?t.size||t.writable.size||0:e[K],Tt:e[K]===T?0:e[K]-(t.size||t.writable.size||0),Ut:new Set,Ot:[],warnings:[],Ct:0,kt:0,Mt:T,Nt:!1})}prependZip(t){return Us(this,async function(t,e){if(t.It.size)throw new Error(is);await t.vt(e)}(this,t))}appendZip(t){return Us(this,this.vt(t))}async vt(t){const e=this,{Ut:r,It:n,zt: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 yo(t),await So(t),t.size!==T&&t.readUint8Array||(t=new Wn(await Qe(t.readable)),await So(t));const{ZipReader:r}=await Promise.resolve().then(function(){return Ci}),i=new r(t),s=await i.getEntries();await i.close(),await So(e.writer);const{directoryOffset:u}=i;s.forEach(({filename:t})=>{if(n.has(t))throw new Error(ki);n.add(t),c.push(t)}),e._t=!0;const{Lt:f}=e;e.Lt=new Promise(t=>l=()=>{e._t=!1,t()}),await f,e.Ft&&(delete e.Ft,await async function(t){return Pt(await Ao(t,0,4)).getUint32(0,!0)==o}(t)||(await Ys(e.writer,Hs()),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)=>Zs(e,t)-Zs(e,r));let s=0;for(const r of i){const n=Zs(e,r);await Ws(t,e,s,n-s),Bs(o,await Vs(e,n))&&await o.closeDisk(),a.set(r,{offset:js(t,o),diskNumberStart:_s(o)}),s=n}await Ws(t,e,s,n-s)}else{const o=t.offset;await Ws(t,e,0,n),r.forEach(t=>a.set(t,{offset:o+Zs(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=Ps(f||v),t.extraFieldAES&&(u=99);const h=lc(f),y=Boolean(l)&&l.uncompressedSize!==T,E=Boolean(l)&&l.compressedSize!==T,b=-7&dc(w,p,m,i,u)|w<<1,{Bt:S,jt:g}=uc({version:e,bitFlag:b,compressionMethod:u,uncompressedSize:s,compressedSize:c,rawLastModDate:r,rawFilename:n,Pt:E,Wt:y,extraFieldLength:h}),{crc32:A}=t;A!==T&&ic(g,10,A);const{offset:R,diskNumberStart:D}=d.get(t);Object.assign(t,{Vt:!0,Wt:y,Pt:E,offset:R,diskNumberStart:D,Zt:!1,Ht:v,Gt:v,Yt:v,qt:v,Kt:v,rawExtraField:f,Xt:v,Bt:S,jt: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,{Ut:l}=c,u=async function(o,i,s,c){const l=(c=Object.assign({},c))[Q];if(l!==T){const{Jt:t,Qt:e}=function(t,e,n){if(null===t||typeof t!=k||Array.isArray(t))throw new Error(hs);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[Y]=!0);const x=function(t){if(t){const e=new Map;if(t.forEach((t,r)=>{ia.has(r)||e.set(r,t.data)}),e.size)return e}}(b);x&&(D[$o]=x),A===T&&R===T||Object.assign(D,{uid:A,gid:R,unixExtraFieldType:y?As:gs});const F={};if(e&&!g)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]=Rs[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(ys);return{Jt:D,Qt:F}}(l,pt(Qs(o,c,j)),Qs(o,c,ko));delete c[Q],c=Object.assign(t,e,c)}if(Qs(o,c,Ko)&&!i.endsWith(x)&&(i+=x),o.It.has(i))throw new Error(ki);o.It.add(i),Ds<Ut().maxWorkers?Ds++:await new Promise(t=>xs.push(t));try{return await async function(o,i,s,c){const l=function(n,o,a){let i=Qs(n,a,Vo),s=Qs(n,a,Yo,i?20:768);const c=Qs(n,a,Xo),l=ec(n,a,"uid"),u=ec(n,a,"gid");let f=ec(n,a,ta),d=Qs(n,a,"unixExtraFieldType"),w=Qs(n,a,ea),p=Qs(n,a,ra),m=Qs(n,a,na);if(ht(l,t,ss),ht(u,t,cs),ht(f,e,ls),d!==T&&d!==gs&&d!==As)throw new Error(us);if(d===As&&(l!==T&&l>e||u!==T&&u>e))throw new Error(fs);d!==T||l===T&&u===T||(d=gs);let h=ec(n,a,Po),y=Qs(n,a,Wo);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,ds),y&&(typeof y!==k||Array.isArray(y)))throw new Error(ws);if(s>e)throw new Error(ji);let b=Qs(n,a,jo);const S=b!==T;S||(b=0),!a[Ko]&&o.endsWith(x)&&(a[Ko]=!0);const F=Qs(n,a,Ko);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|A:f&g||(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&g);return{name:o,$t:{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=tc(t,n,"encodeText")||te;let a=o(r,$);if(a===T&&(a=te(r)),lc(a)>e)throw new Error(Bi);const i=n[zo]||"";if(typeof i!=M)throw new Error(_i);let s=o(i,tt);if(s===T&&(s=te(i)),lc(s)>e)throw new Error(vi);const c=Qs(t,n,Go);if(c!==T&&c>e)throw new Error(ji);const l=$s(t,n,ko,new Date),u=Qs(t,n,Mo),f=$s(t,n,No),d=$s(t,n,_o),w=Qs(t,n,Bo,0),p=pt(Qs(t,n,j)),m=Boolean(p),h=!0===p,y=Qs(t,n,L),E=Qs(t,n,B);wt(y,E);const b=ec(t,n,"encryptionStrength",3),S=Qs(t,n,qo),g=Qs(t,n,"extendedTimestamp",!0),A=Qs(t,n,"ntfsTimestamp"),R=Qs(t,n,"keepOrder",!0),D=Qs(t,n,W),x=Qs(t,n,Z),F=Qs(t,n,"bufferedWrite"),z=tc(t,n,"createTempStream"),I=Qs(t,n,"dataDescriptorSignature",!0),U=ft(Qs(t,n,P));dt(U);const O=Qs(t,n,Y,!fc(a)||!fc(s)),C=Qs(t,n,Jo),k=m||C===T?T:lr(C);if(!m&&C!==T&&0!==C&&8!==C&&!k)throw new Error(nr);let N=ec(t,n,G);if(ht(N,9,ps),t.options[X]){if(y!==T||E!==T)throw new Error(Wi);N===T&&C===T&&(N=0)}m&&(N=yt(n[G]));let v=Qs(t,n,V),_=Qs(t,n,q);F&&_===T&&(_=!1),(_===T||S&&!h)&&(_=!0),N!==T&&6!=N&&(v=!1);const H=Qs(t,n,Zo);if(!(S||y===T&&E===T||Number.isInteger(b)&&b>=1&&b<=3))throw new Error(Pi);const K=ks(n[$o]),J=ks(n.localExtraField),Q=ks(n.centralExtraField);return{comment:i,$t:{rawFilename:a,rawComment:s,version:c,lastModDate:l,rawLastModDate:u,lastAccessDate:f,creationDate:d,internalFileAttributes:w,te:m,ee:h,password:y,rawPassword:E,encryptionStrength:b,zipCrypto:S,extendedTimestamp:g,ntfsTimestamp:A,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,re:k?k.versionNeeded:T,level:N,useCompressionStream:v,dataDescriptor:_,zip64:H,rawExtraField:K,ne:J,Xt:Q}}}(o,i,c),{comment:f}=u,d=c[$o];o.zt.set(i,T);const w=o.Mt,p={};let y,S;u.$t.keepOrder&&(p.oe=new Promise(t=>y=t)),o.Mt=p;try{const{$t:f}=u;0==f.level||f.compressionMethod!==T||f.te||await async function(t){const{CompressionStream:e,CompressionStreamFallback:r}=t;return!(!r||r.N)||!(!xr(e)&&(n=e,!Dr(n,Er)))||!!r&&await Pr(t);var n}(Ut())||(f.level=0,Do(o.warnings,Es,i));const d=await async function(e,r,{$t:n},o){if(n.te&&!r&&!Qs(e,o,Ko))throw new Error(os);let a;if(r){if(r=new yo(r),await So(r),!r.readable&&!r.readUint8Array)throw new Error(as);({size:a}=r)}return Object.assign({reader:r},function(e,r,n,o,a){const{te:i,ee: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[To],y===T)throw new Error(ts);if(m===T)throw new Error(es)}const b=!0===w,S=Qs(e,a,Ho);if(r&&s&&!S&&lc(l,u))throw new Error(Zi);const g=r&&(Boolean(l&&lc(l)||u&&lc(u))||s&&S);r||(p=0,m=0);const A=sa(g,c,f);r&&(i?(a.uncompressedSize=y,h=n===T?rc(y)+A:n+(s?0:A)):n===T?(d=!0,(w||w===T)&&(w=E=!0,h=4294967296)):(a.uncompressedSize=y=n,h=(nc(m,p)?rc(y):y)+A));const R=!(g||r&&(0!==n||i)||nc(m,p));R&&Qs(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($i);w=!0}return w=w||!1,{ae:h,$t:{dataDescriptor:d,ie:R,zip64:w,Vt:b,se:E,Wt:D,Pt:x,uncompressedSize:y,level:p,compressionMethod:m,encrypted:g}}}(e,Boolean(r),a,n,o))}(o,s,u,c);({reader:s}=d);const g=Ls(o.writer),A=_s(o.writer);let R=c.crc32===T?c[Qo]:c.crc32;const D=d.$t.encrypted&&!f.zipCrypto;if(f.te&&!f.ee&&D&&(R=T),f.te&&s&&!D&&R===T)throw new Error(rs);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,ne:y,encryptionStrength:S,extendedTimestamp:g,ntfsTimestamp:A,te:R,encrypted:D,Wt:x,Pt:U,uncompressedSize:O,se:C,crc32:k}=t;let{version:M,compressionMethod:N}=t;const _=!w&&nc(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=vs(t);if(e.ce(1),e.ce(t-4),L=e.st,j&&(e.le(O),B)){const t=sa(D,u,S);e.le(R?0:O+t)}}else L=v;let W,V,Z,H,G,Y;if(D&&!u){const t=vs(lc(Ss)+2);t.ce(m),t.ue(Ss),W=t.st,W[8]=S}else W=v;if(g){const t=Xs(o),e=(q=t)>=Ki&&q<=Xi;if(e){const e=9+(i?4:0)+(s?4:0),r=vs(e);H=1+(i?2:0)+(s?4:0),G=t,r.ce(h),r.ce(e-4),r.fe(H),r.de(t),i&&r.de(Js(Xs(i))),s&&r.de(Js(Xs(s))),Z=r.st}else Z=v;if(A===T?!e||Boolean(i||s):A)try{const t=Ks(o),e=vs(36);e.ce(10),e.ce(32),e.we(4),e.ce(1),e.ce(24),e.le(t),e.le(i?Ks(i):t),e.le(s?Ks(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!=gs||r===T&&n===T)if(o!=As||r===T&&n===T)Y=v;else{const t=vs(8);t.ce(b),t.ce(4),t.ce((r===T?0:r)&e),t.ce((n===T?0:n)&e),Y=t.st}else{const t=Ns(r===T?0:r),e=Ns(n===T?0:n),o=3+t.length+e.length,a=vs(4+o);a.ce(E),a.ce(o),a.fe(1),a.fe(t.length),a.ue(t),a.fe(e.length),a.ue(e),Y=a.st}}catch{Y=v}N===T&&(N=_?8:0),M===T&&(M=0!=N||w||D?20:10);const{re: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),ac(Pt(W),9,N),N=99);const J=P?lc(L):0,Q=J+lc(W,Z,V,Y,p,y);if(Q+(t[X]?67:0)>e)throw new Error(qi);const $=new Date(2e3*Math.ceil(Math.floor(o.getTime()/1e3)/2)),tt=$<I?I:$>z?z:$,et=lc(Z)?new Date(1e3*Xs(o)):lc(V)?o:tt,{Bt:rt,jt:nt,rawLastModDate:ot}=uc({version:M,bitFlag:dc(c,f,d,D,N),compressionMethod:N,uncompressedSize:O,lastModDate:tt,rawLastModDate:a,rawFilename:r,Pt:U,Wt:x,extraFieldLength:Q}),at=vs(F+lc(r)+Q),it=at.st,st=Pt(it);return at.de(n),at.ue(rt),at.ue(r),P&&at.ue(L),at.ue(W),at.ue(Z),at.ue(V),at.ue(Y),at.ue(p),at.ue(y),d&&(U||ic(st,18,0),x||ic(st,22,0)),{pe:it,me:st,Bt:rt,jt:nt,lastModDate:et,he:et===tt&&$.getTime()!=tt.getTime(),rawLastModDate:ot,encrypted:D,compressed:_,version:M,compressionMethod:N,ye:H,Ee:G,Ht:v,be:J,Yt:Z,qt:V,Kt:Y,Gt:W,extraFieldLength:Q}}(c=Object.assign({},c,l.$t,u.$t,d.$t,{signature:c[Qo],crc32:R,offset:o.offset-g,diskNumberStart:A,[X]:o.options[X]}));x.he&&Do(o.warnings,bs,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,ic(n,0,a))),{Se:o,ge:n,Ae:i}}(c),C=lc(x.pe,O.Se);S=await async function(e,n,o,a,i){const{zt:s,writer:c}=e,{keepOrder:l,dataDescriptor:u,ie:f,signal:d}=i,{Re:w,xt:p,De:m,xe:h}=a,y=e.options[X];let E,b,S,g,A,R,D,x=p,z=0;const I=l&&m?m.oe:T;s.set(n,x);try{i.bufferedWrite||!l||e._t||e.Ct||e.kt||!u&&!f?(E=!0,e.Ct++,D=i.createTempStream?await i.createTempStream():new TransformStream(T,T,{highWaterMark:U}),D.size=0,await So(c)):(b=!0,e.kt++,D=c,await I,await O()),await So(D);const p=Ls(c);e.Ft&&!E&&await Gs(e,c),y&&!E&&Ms(a,e.offset-p);const{pe:m}=w;E||await C();const h=_s(c),S=js(e,c);if(x.diskNumberStart=h,E||(A=!0,R=c.size,await Ys(D,m)),x=await async function(e,n,{diskNumberStart:o,oe:a},i,s,c){const{Re:l,Fe:u,ze:f}=i,{Bt:d,jt:w,lastModDate:p,rawLastModDate:m,encrypted:h,compressed:y,version:E,compressionMethod:b,Ht:S,be:g,Yt:A,ye:R,Ee:D,qt:x,Kt:F,Gt:z}=l,{Se:I}=u,{rawFilename:U,lastAccessDate:O,creationDate:C,password:k,rawPassword:M,level:N,useUnicodeFileNames:v,zip64:_,Vt:L,Wt:B,Pt:j,zipCrypto:P,dataDescriptor:W,directory:V,executable:Z,versionMadeBy:H,rawComment:G,rawExtraField:Y,Xt: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,te:yt,ee:Et,format:bt,codecURI:St}=c,gt={oe:a,versionMadeBy:H,zip64:_,Vt:L,directory:Boolean(V),executable:Boolean(Z),filenameUTF8:Boolean(v),rawFilename:U,commentUTF8:Boolean(v),rawComment:G,Ht:S,be:g,Yt:A,qt:x,Kt:F,Gt:z,rawExtraField:Y,Xt: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:At,uncompressedSize:Rt}=c,Dt=0;yt||(Rt=0);const{writable:xt}=n;if(e){const o=e.size,a=Je(Ro(e,{size:o})),i={options:{codecType:Cr,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 wn({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($i)}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,Re:n,Fe:o},{zip64:a,zipCrypto:i,te:s,dataDescriptor:c}){const{jt:l,encrypted:u}=n,{ge:f,Ae:d}=o;u&&!i&&!s||t===T||(ic(l,10,t),c&&ic(f,d,t)),a?c&&(sc(f,d+4,BigInt(e)),sc(f,d+12,BigInt(r))):(ic(l,14,e),ic(l,18,r),c&&(ic(f,d+4,e),ic(f,d+8,r)))}({crc32:At,compressedSize:Dt,uncompressedSize:Rt,Re:l,Fe:u},c),W&&await Ys(n,I),Object.assign(gt,{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,Bt:d,jt:w,signature:At,crc32:!h||P||yt?At:T,ye:R,Ee:D,Wt:B,Pt:j}),gt}(o,D,x,a,Ut(),i),E||(A=!1),s.set(n,x),x.filename=n,E){if(await Promise.all([D.writable.getWriter().close(),I]),await O(),e.Ft&&await Gs(e,c),g=!0,R=c.size,await C(),x.diskNumberStart=_s(c),x.offset=js(e,c),y){const t=a.ze;Ms(a,e.offset-Ls(c)),x.size+=a.ze-t}!function({rawFilename:t,encrypted:e,zip64:r,be:n,crc32:o,compressedSize:a,uncompressedSize:i,Wt:s,Pt:c},l,{dataDescriptor:u,te:f}){if(u||((!e||f&&o!==T)&&ic(l,14,o),c||ic(l,18,a),s||ic(l,22,i)),r&&n){const e=F+lc(t)+4;sc(l,e,BigInt(i)),sc(l,e+8,BigInt(a))}}(x,w.me,i),await Ys(c,w.pe),await qs(D.readable,c,d,t=>z+=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+=z)}throw s.delete(n),t}finally{if(E&&e.Ct--,b&&e.kt--,h&&h(I),S&&S(),E&&D&&D.dispose)try{await D.dispose()}catch{}}async function O(){e._t=!0;const{Lt:t}=e;e.Lt=new Promise(t=>S=()=>{e._t=!1,t()}),await t}async function C(){Bs(c,lc(w.pe))&&await c.closeDisk()}}(o,i,s,{Re:x,Fe:O,ze:C,xt:p,De:w,xe:y},c)}catch(t){throw o.zt.delete(i),t}finally{y&&y(w&&w.oe)}return Object.assign(S,{name:i,comment:f,extraField:d}),new aa(S)}(o,i,s,c)}catch(t){throw o.It.delete(i),t}finally{const t=xs.shift();t?t():Ds--}}(c,o,i,s);l.add(u);const f=()=>l.delete(u);return Promise.prototype.then.call(u,f,f),Us(c,u)}remove(t){const{It:e,zt: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,{Ut:a,writer:w}=this,{writable:p}=w;if(o.Nt)return Ts(w);if(!(r instanceof Uint8Array))throw new Error(Ni);if(lc(r)>e)throw new Error(Mi);for(;a.size;)await Promise.allSettled(Array.from(a));await Promise.allSettled(o.Ot.map(t=>t.Ie));const m=o.Ot.filter(t=>t.Te&&!t.Ue);if(m.length){const t=m.map(t=>t.error);m.forEach(t=>t.Ue=!0);const[e]=t;try{e.entryErrors=t}catch{}throw e}return await async function(r,n,o){const{Oe:a,Ce:w}=function(r){let n=0,o=!1;for(const[,a]of r){const{rawFilename:r,Gt:i,rawComment:s,qt:c,Kt:l,rawExtraField:u,Xt:d,ye:w,Ee:p,Vt:m,uncompressedSize:y,compressedSize:E}=a;let{Wt:b,Pt:S}=a;m||(b&&y<t&&(b=a.Wt=!1),S&&E<t&&(S=a.Pt=!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=vs(t);e.ce(1),e.ce(t-4),b&&e.le(y),S&&e.le(E),g&&e.le(a.offset),A&&e.de(a.diskNumberStart),R=e.st}else R=v;if(a.Ht=R,a.ke=g,a.Zt=A,p===T)D=v;else{const t=vs(9);t.ce(h),t.ce(5),t.fe(w),t.de(p),D=t.st}a.Yt=D;const x=lc(R,i,c,l,D,u,d);if(x>e)throw new Error(qi);n+=f+lc(r,s)+x}return{Oe:n,Ce:o}}(r.zt),{Me:p,Ne:m,ve:y}=await async function(r,n,o){const{zt:a,writer:i}=r,c=new Uint8Array(n);await So(i);let l=0,u=0,d=_s(i),w=Ls(i),p=0;for(const[r,n]of Array.from(a.values()).entries()){const{offset:m,rawFilename:h,Ht:y,Gt:E,Yt:b,qt:S,Kt:g,rawExtraField:A,Xt:R,rawComment:D,versionMadeBy:x,Bt:F,jt:z,Wt:I,Pt:T,Zt:U,ke:O,internalFileAttributes:C,externalFileAttributes:k,diskNumberStart:M,uncompressedSize:N,compressedSize:v}=n,_=lc(y,E,b,S,g,A,R),L=f+lc(h,D)+_;Bs(i,l+L-u)&&(await Ys(i,c.slice(u,l)),u=l,p=0,await i.closeDisk()),0==r&&(d=_s(i),w=Ls(i)),I||ic(z,18,N),T||ic(z,14,v),(O||U)&&n.version<45&&ac(z,0,45);const B=vs(L);if(B.de(s),B.ce(x),B.ue(F.subarray(0,24)),B.ce(_),B.ce(lc(D)),B.ce(U?e:M),B.ce(C),B.de(k),B.de(O?t:m),B.ue(h),B.ue(y),B.ue(E),B.ue(b),B.ue(S),B.ue(g),B.ue(A),B.ue(R),B.ue(D),cc(c,B.st,l),l+=L,p++,o.onprogress)try{await o.onprogress(r+1,a.size,new aa(n))}catch{}}return await Ys(i,u?c.slice(u):c),{Me:{diskNumber:d,diskOffset:w},Ne:{diskNumber:_s(i),_e:p},ve:c}}(r,a,o),E=await async function(t,r,n){const o=tc(t,n,"signCentralDirectory");if(o){const n=await o(r),a=lc(n);if(a>e)throw new Error(ms);const s=vs(6+a);s.de(i),s.ce(a),s.ue(n);const{writer:c}=t;return Bs(c,lc(s.st))&&await c.closeDisk(),await Ys(c,s.st),6+a}return 0}(r,y,o);await async function(r,n,o,a){const{writer:i}=r,{Me:s,Ne:f,Le:w,Ce:p}=a;let{Oe:m}=a,h=r.zt.size,y=s.diskNumber,E=js(r,s);const b=lc(n);if(b>e)throw new Error(Mi);let S=Qs(r,o,Zo),g=_s(i);if(Bs(i,(S?98:d)+b)&&g++,E>=t||m>=t||h>=e||g>=e){if(!1===S)throw new Error($i);S=!0}else S===T&&p&&(S=!0);const A=vs(S?98:d);Bs(i,lc(A.st)+b)&&await i.closeDisk(),g=_s(i);let R=g==f.diskNumber?f._e:0;S&&(A.de(l),A.le(44),A.ce(45),A.ce(45),A.de(g),A.de(y),A.le(R),A.le(h),A.le(m),A.le(E),A.de(u),A.de(g),A.le(BigInt(js(r,i))+BigInt(m)+BigInt(w)),A.de(g+1),Qs(r,o,"supportZip64SplitFile",!0)&&(g=e,y=e),R=e,h=e,E=t,m=t),A.de(c),A.ce(g),A.ce(y),A.ce(R),A.ce(h),A.de(m),A.de(E),A.ce(b),await Ys(i,A.st),b&&await Ys(i,n)}(r,n,o,{Me:p,Ne:m,Oe:a,Le:E,Ce:w})}(o,r,n),o.Nt=!0,!bo(w)&&Qs(o,n,H)||await p.getWriter().close(),Ts(w)}[_](){return this.close()}}class zs{constructor(t={}){const{readable:e,writable:r}=new TransformStream;this.readable=e,this.zipWriter=new Fs(r,t),this.Ut=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 Os(e,t)}}()}});return Cs(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 Cs(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.Ut))).filter(t=>"rejected"==t.status).map(t=>t.reason);if(n.length){const[t]=n;try{t.entryErrors=n}catch{}throw await Os(r,t),t}try{return await r.close(t,e)}catch(t){throw await Os(r,t),t}}}class Is extends Promise{then(t,e){const{Be:r}=this;return r&&(r.Ue=!0),super.then(t,e)}}function Ts(t){return t.getData?t.getData():t.writable}function Us(t,e){const r=new Is((t,r)=>Promise.prototype.then.call(e,t,r)),n={};return r.Be=n,n.Ie=Promise.prototype.then.call(r,T,t=>Object.assign(n,{Te:!0,error:t})),t.Ot.push(n),r}async function Os(t,e){try{await t.writer.writable.abort(e)}catch{}}function Cs(t,e,r){t.Ut.add(e),e.catch(t=>{try{r(t)}catch{}})}function ks(t){if(!t)return v;if(!(t instanceof Map))throw new Error(Hi);let r=0,n=0;t.forEach((t,n)=>{if(mt(n,e,Gi),!(t instanceof Uint8Array))throw new Error(Yi);if(lc(t)>e)throw new Error(qi);r+=4+lc(t)});const o=new Uint8Array(r),a=Pt(o);return t.forEach((t,e)=>{ac(a,n,e),ac(a,n+2,lc(t)),cc(o,t,n+4),n+=4+lc(t)}),o}function Ms(t,e){const{Re:r}=t;let{pe:n,extraFieldLength:o}=r,a=64-(e+lc(n))%64;a<4&&(a+=64);const i=new Uint8Array(a),s=Pt(i);ac(s,0,y),ac(s,2,a-4);const c=n;r.pe=n=new Uint8Array(lc(c)+a),cc(n,c),cc(n,i,lc(c));const l=Pt(n);ac(l,28,o+a),r.me=l,t.ze+=a}function Ns(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 vs(t){const e=new Uint8Array(t),r=Pt(e);let n=0;return{st:e,fe:t=>{!function(t,e,r){t.setUint8(e,r)}(r,n,t),n+=1},ce:t=>{ac(r,n,t),n+=2},de:t=>{ic(r,n,t),n+=4},le:t=>{sc(r,n,BigInt(t)),n+=8},ue:t=>{cc(e,t,n),n+=lc(t)},we:t=>n+=t}}function _s(t){const{diskNumber:e=0}=t;return e}function Ls(t){const{diskOffset:e=0}=t;return e}function Bs(t,e){const{availableSize:r=U}=t;return e>r}function js(t,{diskNumber:e=0,diskOffset:r=0}){return t.offset-r-(e?t.Tt:0)}function Ps(t){const e=Pt(t);let r=0;for(;r+4<=lc(t);){const n=4+oc(e,r+2);if(1==oc(e,r))return Ps(Bt(t.subarray(0,r),t.subarray(Math.min(r+n,lc(t)))));r+=n}return t}async function Ws(t,e,r,n){if(n>0){const{writer:o}=t;let a=0;try{await qs(Ro(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 Vs(t,e){const r=await Ao(t,e,F);if(lc(r)<F)return F;const n=Pt(r);return F+oc(n,26)+oc(n,28)}function Zs(t,{offset:e,diskNumberStart:r}){return e+(t.wt?t.wt(r):0)}function Hs(){const t=new Uint8Array(4);return ic(Pt(t),0,o),t}async function Gs(t,e){delete t.Ft,await Ys(e,Hs()),t.offset+=4}async function Ys(t,e){const{writable:r}=t,n=r.getWriter();try{await n.ready,t.size+=lc(e),await n.write(e)}finally{n.releaseLock()}}async function qs(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(lc(t))}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{o.releaseLock()}}function Ks(t){if(t){const e=(BigInt(t.getTime())+BigInt(116444736e5))*BigInt(1e4);return e<Ji?Ji:e>Qi?Qi:e}}function Xs(t){return Math.floor(t.getTime()/1e3)}function Js(t){return Math.min(Xi,Math.max(Ki,t))}function Qs(t,e,r,n){const o=e[r]===T?t.options[r]:e[r];return o===T?n:o}function $s(t,e,r,n){const o=Qs(t,e,r,n);if(null===o)return n;if(o!==T&&(typeof o.getTime!=C||Number.isNaN(o.getTime())))throw new Error(Li);return o}function tc(t,e,r){return ut(Qs(t,e,r))}function ec(t,e,r,n){return yt(Qs(t,e,r,n))}function rc(t){return t+5*(Math.floor(t/16383)+1)}function nc(t,e){return t===T?e===T||e>0:0!==t}function oc(t,e){return t.getUint16(e,!0)}function ac(t,e,r){t.setUint16(e,r,!0)}function ic(t,e,r){t.setUint32(e,r,!0)}function sc(t,e,r){t.setBigUint64(e,r,!0)}function cc(t,e,r){t.set(e,r)}function lc(...t){let e=0;return t.forEach(t=>t&&(e+=t.length)),e}function uc({version:e,bitFlag:r,compressionMethod:n,uncompressedSize:o,compressedSize:a,lastModDate:i,rawLastModDate:s,rawFilename:c,Pt:l,Wt:u,extraFieldLength:f}){const d=vs(26),w=d.st,p=Pt(w);if(d.ce(e),d.ce(r),d.ce(n),s===T){const t=new Uint32Array(1),e=Pt(t);ac(e,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),ac(e,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),s=t[0]}return d.de(s),d.we(4),l||a!==T?d.de(l?t:a):d.we(4),u||o!==T?d.de(u?t:o):d.we(4),d.ce(lc(c)),d.ce(f),{Bt:w,jt:p,rawLastModDate:s}}function fc(t){return t.every(t=>t>=32&&t<=126)}function dc(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 wc(){return"application/octet-stream"}function pc(){const{CompressionStream:t,DecompressionStream:e,CompressionStreamFallback:r,DecompressionStreamFallback:n}=Ut(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:mc(r,hr)||mc(t,hr)||mc(t,Er),decompression:mc(n,hr)||mc(e,hr)||mc(e,Er),registered:!1},{compressionMethod:9,compression:!1,decompression:mc(n,yr)||mc(e,yr),registered:!1}];for(const t of ur()){const e=fr(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 mc(t,e){if(!t)return!1;const{je:r}=t;return r?r.includes(e):Dr(t,e)}const hc="2.14.1",yc=1048576,Ec=".zip.js-temp";function bc(t={}){const{thresholdBytes:e=yc,directoryName:r=Ec,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 Sc=1048576;function gc(t={}){const{thresholdBytes:e=Sc}=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=Qe(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 Ac=1048576,Rc=".zip.js-temp",Dc="createSyncAccessHandle is only available in dedicated workers";function xc(t={}){const{thresholdBytes:e=Ac,directoryName:r=Rc,getDirectory:n}=t;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new Error(Dc);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 Fc="deflate",zc="deflate-raw",Ic="deflate64-raw",Tc="gzip";let Uc,Oc,Cc,kc,Mc;function Nc(t,e,r={}){if(!Uc){const t=new Error("WASM module not loaded");throw t.cause=Mc,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.Pe=Oc(o),this.in=Oc(a),this.inBufferSize=a,!this.Pe||!this.in)throw new Error("allocation failed");if(t?(this.We=Uc.deflate_process,this.Ve=Uc.deflate_last_consumed,this.Ze=Uc.deflate_end,this.He=Uc.deflate_new(),r=e===Tc?Uc.deflate_init_gzip(this.He,n):e===zc?Uc.deflate_init_raw(this.He,n):Uc.deflate_init(this.He,n)):e===Ic?(this.We=Uc.inflate9_process,this.Ve=Uc.inflate9_last_consumed,this.Ze=Uc.inflate9_end,this.He=Uc.inflate9_new(),r=Uc.inflate9_init_raw(this.He)):(this.We=Uc.inflate_process,this.Ve=Uc.inflate_last_consumed,this.Ze=Uc.inflate_end,this.He=Uc.inflate_new(),r=e===zc?Uc.inflate_init_raw(this.He):e===Tc?Uc.inflate_init_gzip(this.He):Uc.inflate_init(this.He)),0!==r)throw new Error("init failed:"+r)}catch(t){throw i(this),t}},transform(t,e){try{const r=t,n=new Uint8Array(kc.buffer),a=this.We,i=this.Ve,s=this.Pe;let c=0;for(;c<r.length;){const t=Math.min(r.length-c,32768);if((!this.in||this.inBufferSize<t)&&(this.in&&Cc&&(Cc(this.in),this.in=0),this.in=Oc(t),this.inBufferSize=t,!this.in))throw new Error("allocation failed");n.set(r.subarray(c,c+t),this.in);const l=a(this.He,this.in,t,s,o,0),u=l>>24&255,f=128&u?u-256:u;if(f<0)throw new Error("process error:"+f);const d=16777215&l;d&&e.enqueue(n.slice(s,s+d));const w=i(this.He);if(0===w&&0===d)break;c+=w}}catch(t){i(this),e.error(t)}},flush(t){try{const e=new Uint8Array(kc.buffer),r=this.We,n=this.Pe;for(;;){const a=r(this.He,0,0,n,o,4),i=a>>24&255,s=128&i?i-256:i;if(s<0)throw new Error("process error:"+s);const c=16777215&a;if(c&&t.enqueue(e.slice(n,n+c)),1===i||0===c)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.He&&t.Ze&&(e=t.Ze(t.He)),t.He=0,t.in&&Cc&&Cc(t.in),t.in=0,t.Pe&&Cc&&Cc(t.Pe),t.Pe=0,e}}class vc{constructor(t=Fc,e){return Nc(!0,t,e)}}class _c{constructor(t=Fc,e){return Nc(!1,t,e)}}vc.N=!0,_c.N=!0,vc.je=[Fc,zc,Tc],_c.je=[Fc,zc,Tc,Ic];const Lc=65536;let Bc,jc;function Pc(t){return new Uint8Array(t.memory.buffer)}let Wc,Vc=!1;var Zc;async function Hc(){await async function(){await Promise.allSettled(cn.map(t=>(En(t),t.terminate()))),_r=T,Lr=!1}(),Wc=null,Vc=!1,Uc=Oc=Cc=kc=Mc=null,Bc=null,jc=0}Zc=function(t,e){const r=Bc;let n=r?function(t,e,r){jc||(jc=t.malloc(Lc));const n=jc?t.aes_hmac_new():0;if(n){const o=Pc(t);if(o.set(e,jc),o.set(r,jc+e.length),t.aes_hmac_init(n,jc,e.length,jc+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=jc;return{process(t,e){for(let a=0;a<t.length;a+=Lc){const i=t.subarray(a,a+Lc),s=Pc(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,Pc(r).slice(o,o+20)),dispose(){n&&(r.aes_hmac_end(n,0),n=0)}}},ke=Zc||de,function({Ge:t}){jr=t}({Ge:t=>{if(!Wc){let{wasmURI:e}=t;typeof e==C&&(e=e()),Wc=async function(t,{baseURI:e}){if(!Vc)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(Uc=t,({malloc:Oc,free:Cc,memory:kc}=Uc),"function"!=typeof Oc||"function"!=typeof Cc||!kc)throw Uc=Oc=Cc=kc=null,new Error("Invalid WASM module")})(o.instance.exports),typeof(a=o.instance.exports).aes_hmac_new==C&&(Bc=a,jc=0)}(t,e),Vc=!0}catch(t){throw function(t){Mc=t}(t),t}}(e,t).catch(t=>{throw Wc=null,t})}return Wc}}),_t({CompressionStreamFallback:vc,DecompressionStreamFallback:_c}),_t({workerURI:new URL("./zip-web-worker.js",import.meta.url).href,wasmURI:new URL("./zip-module.wasm",import.meta.url).href});export{Wn as BlobReader,Vn as BlobWriter,Ln as Data64URIReader,Bn as Data64URIWriter,lt as ERR_ABORTED,ba as ERR_AMBIGUOUS_ARCHIVE,ca as ERR_BAD_FORMAT,fa as ERR_CENTRAL_DIRECTORY_NOT_FOUND,ki as ERR_DUPLICATED_NAME,pa as ERR_ENCRYPTED,Sa as ERR_ENCRYPTED_CENTRAL_DIRECTORY,Ea as ERR_ENTRY_DATA_OUT_OF_BOUNDS,ua as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,la as ERR_EOCDR_NOT_FOUND,wa as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,Rn as ERR_HTTP_RANGE,Dn as ERR_HTTP_RESOURCE_CHANGED,An as ERR_HTTP_STATUS,be as ERR_INVALID_AUTHENTICATION_CODE,bt as ERR_INVALID_BASE_URI,tr as ERR_INVALID_CODEC_DEFINITION,rr as ERR_INVALID_CODEC_MODULE,Mi as ERR_INVALID_COMMENT,Ni as ERR_INVALID_COMMENT_TYPE,pr as ERR_INVALID_COMPRESSED_DATA,mr as ERR_INVALID_CRC32,Li as ERR_INVALID_DATE,Pi as ERR_INVALID_ENCRYPTION_STRENGTH,hs as ERR_INVALID_ENTRY,vi as ERR_INVALID_ENTRY_COMMENT,_i as ERR_INVALID_ENTRY_COMMENT_TYPE,Bi as ERR_INVALID_ENTRY_NAME,Hi as ERR_INVALID_EXTRAFIELD,qi as ERR_INVALID_EXTRAFIELD_DATA,Yi as ERR_INVALID_EXTRAFIELD_DATA_TYPE,Gi as ERR_INVALID_EXTRAFIELD_TYPE,Ra as ERR_INVALID_FILENAME_VALIDATION,at as ERR_INVALID_FUNCTION_OPTION,cs as ERR_INVALID_GID,ps as ERR_INVALID_LEVEL,Da as ERR_INVALID_MAX_APPENDED_DATA_SIZE,Et as ERR_INVALID_MAX_WORKERS,ds as ERR_INVALID_MSDOS_ATTRIBUTES,ws as ERR_INVALID_MSDOS_DATA,Ee as ERR_INVALID_PASSWORD,st as ERR_INVALID_PASSWORD_TYPE,ct as ERR_INVALID_PASS_THROUGH_VALUE,as as ERR_INVALID_READER,it as ERR_INVALID_SIGNAL,ms as ERR_INVALID_SIGNATURE_DATA,Aa as ERR_INVALID_STRICTNESS,ss as ERR_INVALID_UID,wr as ERR_INVALID_UNCOMPRESSED_SIZE,us as ERR_INVALID_UNIX_EXTRA_FIELD_TYPE,fs as ERR_INVALID_UNIX_ID_SIZE,ls as ERR_INVALID_UNIX_MODE,St as ERR_INVALID_URI,ji as ERR_INVALID_VERSION,xn as ERR_ITERATOR_COMPLETED_TOO_SOON,da as ERR_LOCAL_FILE_HEADER_NOT_FOUND,ya as ERR_OVERLAPPING_ENTRY,er as ERR_RESERVED_COMPRESSION_METHOD,ha as ERR_SPLIT_ZIP_FILE,es as ERR_UNDEFINED_COMPRESSION_METHOD,rs as ERR_UNDEFINED_CRC32,os as ERR_UNDEFINED_READER,ts as ERR_UNDEFINED_UNCOMPRESSED_SIZE,ns as ERR_UNDETERMINED_SIZE,ga as ERR_UNSAFE_FILENAME,nr as ERR_UNSUPPORTED_COMPRESSION,Dc as ERR_UNSUPPORTED_CONTEXT,ge as ERR_UNSUPPORTED_CRYPTO_API,ma as ERR_UNSUPPORTED_ENCRYPTION,Zi as ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH,Wi as ERR_UNSUPPORTED_ENCRYPTION_USDZ,$i as ERR_UNSUPPORTED_FORMAT,Vi as ERR_UNSUPPORTED_SPLIT_USDZ,xa as ERR_UNSUPPORTED_UINT64,vr as ERR_WORKER_STARTUP_TIMEOUT,Fn as ERR_WRITER_NOT_INITIALIZED,zn as ERR_WRITER_SIZE_NOT_WRITABLE,ys as ERR_ZIP_CRYPTO_LAST_MOD_DATE,is as ERR_ZIP_NOT_EMPTY,fo as HttpRangeReader,uo as HttpReader,vn as Reader,mo as SplitDataReader,ho as SplitDataWriter,Zn as TextReader,Hn as TextWriter,wo as Uint8ArrayReader,po as Uint8ArrayWriter,hc as VERSION,Ca as WARNING_APPENDED_DATA,bs as WARNING_CLAMPED_LAST_MODIFICATION_DATE,Ia as WARNING_COMPRESSED_PATCHED_DATA,Es as WARNING_COMPRESSION_UNAVAILABLE,va as WARNING_DUPLICATE_FILENAME,Ta as WARNING_MALFORMED_EXTRA_FIELD,ja as WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG,Pa as WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD,Wa as WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES,Ba as WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME,_a as WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY,La as WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY,Ma as WARNING_PREPENDED_CENTRAL_DIRECTORY,ka as WARNING_PREPENDED_DATA,Na as WARNING_TRAILING_CENTRAL_DIRECTORY_DATA,za as WARNING_UNKNOWN_VERSION,Ua as WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA,Fa as WARNING_UNSORTED_CENTRAL_DIRECTORY,Oa as WARNING_WRAPPED_ENTRIES_COUNT,_n as Writer,Ka as ZipReader,Xa as ZipReaderStream,Fs as ZipWriter,zs as ZipWriterStream,kt as configure,gc as createBlobTempStream,bc as createOPFSTempStream,xc as createSyncAccessHandleTempStream,wc as getMimeType,ur as getRegisteredCodecs,pc as getSupportedCompressionMethods,Ja as isZipFile,sr as registerCodec,Lt as resetConfiguration,Hc as terminateWorkers,cr as unregisterCodec};