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