@zip.js/zip.js 2.20.0 → 2.21.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.
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})}(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:o,BigInt:i,Math:a,Date:s,Map:c,Set:l,Response:u,URL:f,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:m,DataView:h,Blob:y,Promise:g,TextEncoder:E,TextDecoder:F,document:b,crypto:S,btoa:R,TransformStream:z,ReadableStream:D,WritableStream:x,CompressionStream:T,DecompressionStream:A,navigator:v,Worker:C,Symbol:N,setTimeout:I,clearTimeout:U,structuredClone:k}="undefined"!=typeof globalThis?globalThis:self;var W=void 0!==b?b.currentScript:null;const M=4294967295,L=65535,O=255,B=67324752,V=134695760,q=V,P=84233040,Y=33639248,H=101010256,J=101075792,G=117853008,Z=46,j=22,K=20,X=56,Q=39169,_=21589,$=6534,ee=30837,te=30805,ne=2048,re=61440,oe=16384,ie=2048,ae=1024,se="/",ce=30,le=new s(2107,11,31,23,59,58),ue=new s(1980,0,1),fe=void 0,de=1/0,we="undefined",pe="function",me="object",he="string",ye="boolean",ge=new w,Ee=N.asyncDispose||N(),Fe="password",be="rawPassword",Se="passThrough",Re="signal",ze="useWebWorkers",De="useCompressionStream",xe="preventClose",Te="level",Ae="useUnicodeFileNames",ve="dataDescriptor",Ce="offset",Ne="usdz",Ie="maxAppendedDataSize",Ue="entry",ke="filename",We="comment",Me="strict",Le="balanced",Oe="tolerant",Be="compressed",Ve="Invalid option (must be a function)",qe="Invalid signal (must be an AbortSignal instance)",Pe="Invalid password (password must be a string, rawPassword must be a Uint8Array)",Ye="Invalid passThrough option (must be a boolean or 'compressed')",He="The operation was aborted";function Je(e){if(e&&typeof e!=pe)throw new d(Ve);return e}function Ge(e){if(e&&(typeof e.addEventListener!=pe||typeof e.aborted!=ye))throw new d(qe);return e||fe}function Ze(e){if(e&&e.aborted)throw e.reason===fe?new DOMException(He,"AbortError"):e.reason}function je(e,t){if(e&&typeof e!=he||t&&!(t instanceof w))throw new d(Pe)}function Ke(e){if(e!==fe&&typeof e!=ye&&e!==Be)throw new d(Ye);return e}function Xe(e,t,n){if(!o.isInteger(e)||e<0||e>t)throw new d(n)}function Qe(e,t,n){e!==fe&&Xe(e,t,n)}function _e(e){return typeof e==he&&e.trim()?o(e):e}const $e=262144,et="Invalid maxWorkers (must be an integer greater than 0)",tt="Invalid baseURI (must be a string)",nt="Invalid URI (must be a string or a function returning a string)";let rt=2;try{typeof v!=we&&v.hardwareConcurrency&&(rt=v.hardwareConcurrency)}catch{}const ot={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:$e,maxWorkers:rt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof T!=we&&T,DecompressionStream:typeof A!=we&&A},it="maxWorkers",at="baseURI",st=["wasmURI","workerURI"],ct=["chunkSize",it,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],lt=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],ut=[at,...st,"useCompressionStream","useWebWorkers","transferStreams",...ct,...lt],ft={...ot};function dt(){return ft}function wt(e){return pt(e.chunkSize)}function pt(e){return e=_e(e),o.isInteger(e)&&e>=1?a.max(e,64):$e}function mt(e){const t={};for(const n of ut){const r=e[n];r!==fe&&(t[n]=ht(n,r))}return t}function ht(e,t){if(ct.includes(e)){if(t=_e(t),e==it&&(!o.isInteger(t)||t<1))throw new d(et)}else if(lt.includes(e))Je(t);else if(e==at){if(t&&typeof t!=he)throw new d(tt)}else if(st.includes(e)&&t&&typeof t!=he&&typeof t!=pe)throw new d(nt);return t}function yt(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===fe&&r===fe)return e;const o=n.assign({},e);return o.CompressionStreamFallback===fe&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===fe&&(o.DecompressionStreamFallback=r),o}function gt(e){const t=mt(yt(e));n.assign(ot,t),n.assign(ft,t)}const Et=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258],Ft=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],bt=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],St=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Rt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],zt=new w(288);zt.fill(8,0,144),zt.fill(9,144,256),zt.fill(7,256,280),zt.fill(8,280,288);const Dt=new w(30).fill(5);function xt(e){const t=new p(16);for(const n of e)t[n]++;t[0]=0;const n=new p(17);for(let e=1;e<=15;e++)n[e+1]=n[e]+t[e];const r=new p(e.length);for(let t=0;t<e.length;t++)e[t]&&(r[n[e[t]]++]=t);return{o:t,symbols:r}}const Tt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",At=(vt=()=>function(e){let t=0,n=0,r=0,o=new w(1024),i=0,a=0;for(;!a;){a=c(1);const e=c(2);if(0==e)l();else if(1==e)u(xt(zt),xt(Dt));else{if(2!=e)throw new d("invalid deflate block type");u(...f())}}return o.subarray(0,i);function s(){if(t>=e.length)throw new d("unexpected end of deflate data");return e[t++]}function c(e){for(;r<e;)n|=s()<<r,r+=8;const t=n&(1<<e)-1;return n>>>=e,r-=e,t}function l(){n=0,r=0;const e=s()|s()<<8;t+=2,m(i+e);for(let t=0;t<e;t++)o[i++]=s()}function u(e,t){let n=p(e);for(;256!=n;){if(n<256)m(i+1),o[i++]=n;else{const e=n-257,r=Et[e]+c(Ft[e]),a=p(t),s=bt[a]+c(St[a]);m(i+r);const l=i-s;for(let e=0;e<r;e++)o[i++]=o[l+e]}n=p(e)}}function f(){const e=c(5)+257,t=c(5)+1,n=c(4)+4,r=new w(19);for(let e=0;e<n;e++)r[Rt[e]]=c(3);const o=xt(r),i=new w(e+t);let a=0;for(;a<i.length;){const e=p(o);if(e<16)i[a++]=e;else if(16==e){const e=i[a-1];let t=c(2)+3;for(;t--;)i[a++]=e}else a+=17==e?c(3)+3:c(7)+11}return[xt(i.subarray(0,e)),xt(i.subarray(e))]}function p(e){const{o:t,symbols:n}=e;let r=0,o=0,i=0;for(let e=1;e<=15;e++){r|=c(1);const a=t[e];if(r-o<a)return n[i+(r-o)];i+=a,o=o+a<<1,r<<=1}throw new d("invalid huffman code")}function m(e){if(o.length<e){let t=2*o.length;for(;t<e;)t*=2;const n=new w(t);n.set(o.subarray(0,i)),o=n}}}(function(e){const t=(e=r(e).replace(/[^A-Za-z0-9+/=]/g,"")).length,n=[];for(let r=0;r<t;r+=4){const t=Tt.indexOf(e[r])<<18|Tt.indexOf(e[r+1])<<12|(63&Tt.indexOf(e[r+2]))<<6|63&Tt.indexOf(e[r+3]);n.push(t>>16&255),"="!==e[r+2]&&n.push(t>>8&255),"="!==e[r+3]&&n.push(255&t)}return new w(n)}("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")),e=>e({workerURI:e=>{const t="text/javascript";let n=vt();if("string"==typeof n&&(n=(new E).encode(n)),e){const e=new y([n],{type:t});return f.createObjectURL(e)}return"data:"+t+";base64,"+function(e){let t="";const n=e.length;let r=0;for(;r+2<n;r+=3){const n=e[r]<<16|e[r+1]<<8|e[r+2];t+=Tt[n>>18&63]+Tt[n>>12&63]+Tt[n>>6&63]+Tt[63&n]}const o=n-r;if(1===o){const n=e[r]<<16;t+=Tt[n>>18&63]+Tt[n>>12&63]+"=="}else if(2===o){const n=e[r]<<16|e[r+1]<<8;t+=Tt[n>>18&63]+Tt[n>>12&63]+Tt[n>>6&63]+"="}return t}(n)}}));var vt;function Ct(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function Nt(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function It(e){return new h(e.buffer,e.byteOffset,e.byteLength)}function Ut(e){return Boolean(e)&&"object"==typeof e}const kt=[[],[],[],[],[],[],[],[]];for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=1&t?t>>>1^3988292384:t>>>1;kt[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){const n=kt[t-1][e];kt[t][e]=n>>>8^kt[0][255&n]}const[Wt,Mt,Lt,Ot,Bt,Vt,qt,Pt]=kt;class Yt{constructor(e){this.l=e||-1}append(e){let t=0|this.l;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const o=new h(e.buffer,e.byteOffset,n),i=n-8;for(;r<=i;r+=8){const e=t^o.getInt32(r,!0),n=o.getInt32(r+4,!0);t=Pt[255&e]^qt[e>>>8&255]^Vt[e>>>16&255]^Bt[e>>>24&255]^Ot[255&n]^Lt[n>>>8&255]^Mt[n>>>16&255]^Wt[n>>>24&255]}}for(;r<n;r++)t=t>>>8^Wt[255&(t^e[r])];this.l=t}get(){return~this.l}}class Ht extends z{constructor(){let e;const t=new Yt;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function Jt(e){if(typeof E==we){e=unescape(encodeURIComponent(e));const t=new w(e.length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new E).encode(e)}const Gt=64,Zt=20,jt=new w([128]),Kt=new w(1),Xt=new Int32Array([1732584193,4023233417,2562383102,271733878,3285377520]),Qt=new w(256),_t=new Int32Array(256),$t=new Int32Array(256),en=new Int32Array(256),tn=new Int32Array(256);let nn=!1;function rn(e){const t=function(){const e=new Int32Array(Xt),t=new Int32Array(16),n=new w(Gt),r=new h(n.buffer),o=new w(8);let i=0,s=0;return{update:c,digest:function(){const t=8*s,n=a.floor(t/4294967296),r=t>>>0;for(c(jt,0,1);56!=i;)c(Kt,0,1);o[0]=n>>>24,o[1]=n>>>16,o[2]=n>>>8,o[3]=n,o[4]=r>>>24,o[5]=r>>>16,o[6]=r>>>8,o[7]=r,c(o,0,8);const l=new w(Zt),u=new h(l.buffer);for(let t=0;t<e.length;t++)u.setInt32(4*t,e[t]);return e.set(Xt),i=0,s=0,l}};function c(e,t,o){const a=t+o;if(s+=o,i){for(;t<a&&i<Gt;)n[i++]=e[t++];i==Gt&&(l(r,0),i=0)}if(t+Gt<=a){const n=new h(e.buffer,e.byteOffset,e.byteLength);for(;t+Gt<=a;t+=Gt)l(n,t)}for(;t<a;)n[i++]=e[t++]}function l(n,r){for(let e=0;e<16;e++)t[e]=n.getInt32(r+4*e);let o,i=e[0],a=e[1],s=e[2],c=e[3],l=e[4];for(let e=0;e<15;e+=5)l=(i<<5|i>>>27)+((s^c)&a^c)+l+1518500249+t[e]|0,a=a<<30|a>>>2,c=(l<<5|l>>>27)+((a^s)&i^s)+c+1518500249+t[e+1]|0,i=i<<30|i>>>2,s=(c<<5|c>>>27)+((i^a)&l^a)+s+1518500249+t[e+2]|0,l=l<<30|l>>>2,a=(s<<5|s>>>27)+((l^i)&c^i)+a+1518500249+t[e+3]|0,c=c<<30|c>>>2,i=(a<<5|a>>>27)+((c^l)&s^l)+i+1518500249+t[e+4]|0,s=s<<30|s>>>2;l=(i<<5|i>>>27)+((s^c)&a^c)+l+1518500249+t[15]|0,a=a<<30|a>>>2,o=t[13]^t[8]^t[2]^t[0],o=o<<1|o>>>31,t[0]=o,c=(l<<5|l>>>27)+((a^s)&i^s)+c+1518500249+o|0,i=i<<30|i>>>2,o=t[14]^t[9]^t[3]^t[1],o=o<<1|o>>>31,t[1]=o,s=(c<<5|c>>>27)+((i^a)&l^a)+s+1518500249+o|0,l=l<<30|l>>>2,o=t[15]^t[10]^t[4]^t[2],o=o<<1|o>>>31,t[2]=o,a=(s<<5|s>>>27)+((l^i)&c^i)+a+1518500249+o|0,c=c<<30|c>>>2,o=t[0]^t[11]^t[5]^t[3],o=o<<1|o>>>31,t[3]=o,i=(a<<5|a>>>27)+((c^l)&s^l)+i+1518500249+o|0,s=s<<30|s>>>2;for(let e=20;e<40;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,l=(i<<5|i>>>27)+(a^s^c)+l+1859775393+o|0,a=a<<30|a>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(l<<5|l>>>27)+(i^a^s)+c+1859775393+o|0,i=i<<30|i>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,s=(c<<5|c>>>27)+(l^i^a)+s+1859775393+o|0,l=l<<30|l>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,a=(s<<5|s>>>27)+(c^l^i)+a+1859775393+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,i=(a<<5|a>>>27)+(s^c^l)+i+1859775393+o|0,s=s<<30|s>>>2;for(let e=40;e<60;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,l=(i<<5|i>>>27)+(a&s|(a|s)&c)+l+2400959708+o|0,a=a<<30|a>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(l<<5|l>>>27)+(i&a|(i|a)&s)+c+2400959708+o|0,i=i<<30|i>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,s=(c<<5|c>>>27)+(l&i|(l|i)&a)+s+2400959708+o|0,l=l<<30|l>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,a=(s<<5|s>>>27)+(c&l|(c|l)&i)+a+2400959708+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,i=(a<<5|a>>>27)+(s&c|(s|c)&l)+i+2400959708+o|0,s=s<<30|s>>>2;for(let e=60;e<80;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,l=(i<<5|i>>>27)+(a^s^c)+l+3395469782+o|0,a=a<<30|a>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(l<<5|l>>>27)+(i^a^s)+c+3395469782+o|0,i=i<<30|i>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,s=(c<<5|c>>>27)+(l^i^a)+s+3395469782+o|0,l=l<<30|l>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,a=(s<<5|s>>>27)+(c^l^i)+a+3395469782+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,i=(a<<5|a>>>27)+(s^c^l)+i+3395469782+o|0,s=s<<30|s>>>2;e[0]=e[0]+i|0,e[1]=e[1]+a|0,e[2]=e[2]+s|0,e[3]=e[3]+c|0,e[4]=e[4]+l|0}}(),n=new w(Gt),r=new w(Gt);e.length>Gt&&(t.update(e,0,e.length),e=t.digest());for(let t=0;t<Gt;t++){const o=t<e.length?e[t]:0;n[t]=54^o,r[t]=92^o}return t.update(n,0,Gt),{update(e,n,r){t.update(e,n,r)},digest(){const e=t.digest();t.update(r,0,Gt),t.update(e,0,Zt);const o=t.digest();return t.update(n,0,Gt),o}}}function on(e){return Qt[e>>>24]<<24|Qt[e>>>16&255]<<16|Qt[e>>>8&255]<<8|Qt[255&e]}function an(e){return e<<24|(65280&e)<<8|e>>>8&65280|e>>>24}function sn(e){return 255&(e<<1^27*(e>>7))}const cn=typeof S!=we&&typeof S.getRandomValues==pe,ln="Invalid password",un="Invalid authentication code",fn="zipjs-abort-check-password",dn="Crypto API not supported";function wn(e){if(cn)return S.getRandomValues(e);throw new d(dn)}const pn={name:"PBKDF2"},mn=n.assign({hash:{name:"HMAC"}},pn),hn=n.assign({iterations:1e3,hash:{name:"SHA-1"}},pn),yn=["deriveBits"],gn=[8,12,16],En=[16,24,32],Fn=10,bn=typeof S!=we,Sn=bn&&S.subtle;let Rn=bn&&typeof Sn!=we&&typeof Sn.importKey==pe&&typeof Sn.deriveBits==pe;class zn extends z{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){const i={};super({start(){xn(i,e,t,n)},async transform(e,t){const{password:n,strength:o,m:a,ready:s}=i;if(n?(await async function(e,t,n,r){const o=await Cn(e,t,n,In(r,0,gn[t])),i=In(r,gn[t]);if(o[0]!=i[0]||o[1]!=i[1])throw vn(e),new d(ln)}(i,o,n,In(e,0,gn[o]+2)),e=In(e,gn[o]+2),r?(vn(i),t.error(new d(fn))):a()):await s,i.h)return;const c=new w(e.length-Fn-(e.length-Fn)%16);t.enqueue(An(i,e,c,0,Fn,!0))},async flush(e){const{F:t,S:n,ready:r}=i;if(t){if(await r,i.h)return;const a=In(n,n.length-Fn),s=new w(In(n,0,n.length-Fn));t.process(s,!0);const c=t.digest();let l=n.length<Fn?1:0;for(let e=0;e<Fn;e++)l|=c[e]^a[e];if(l&&o)return void e.error(new d(un));e.enqueue(s)}}}),Tn(this,i)}}class Dn extends z{constructor({password:e,rawPassword:t,encryptionStrength:n}){const r={};super({start(){xn(r,e,t,n)},async transform(e,t){const{password:n,strength:o,m:i,ready:a}=r;let s=ge;if(n?(s=await async function(e,t,n){const r=wn(new w(gn[t]));return Ct(r,await Cn(e,t,n,r))}(r,o,n),i()):await a,r.h)return;const c=new w(s.length+e.length-e.length%16);c.set(s,0),t.enqueue(An(r,e,c,s.length,0,!1))},async flush(e){const{F:t,S:n,ready:o}=r;if(t){if(await o,r.h)return;const i=new w(n);t.process(i,!1);const a=In(t.digest(),0,Fn);e.enqueue(Ct(i,a))}}}),Tn(this,r)}}function xn(e,t,r,o){n.assign(e,{ready:new g(t=>e.m=t),password:Nn(t,r),strength:o-1,S:ge,h:!1})}function Tn(e,t){const r=e.readable.getReader(),o=new D({async pull(e){try{const{value:t,done:n}=await r.read();n?e.close():e.enqueue(t)}catch(e){throw vn(t),r.cancel(e).catch(()=>{}),e}},cancel:e=>(vn(t),r.cancel(e))});n.defineProperty(e,"readable",{get:()=>o})}function An(e,t,n,r,o,i){const{F:a,S:s}=e;s.length&&(t=Ct(s,t));const c=t.length-o,l=c-c%16;if(n=function(e,t){if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e}(n,r+l),l){const e=In(n,r,r+l);e.set(In(t,0,l)),a.process(e,i)}return e.S=In(t,l),n}function vn(e){const{F:t}=e;e.h=!0,t&&t.dispose&&t.dispose()}async function Cn(e,t,r,o){e.password=null;const i=En[t],s=await async function(e,t,r){if(Rn)try{const o=await Sn.importKey("raw",e,mn,!1,yn);return new w(await Sn.deriveBits(n.assign({salt:t},hn),o,8*r))}catch{Rn=!1}return function(e,t,n,r){const o=rn(e),i=new w(r),s=new w(t.length+4),c=new h(s.buffer);s.set(t);for(let e=1,n=0;n<r;e++,n+=Zt){c.setUint32(t.length,e),o.update(s,0,s.length);let l=o.digest();const u=l.slice();for(let e=1;e<1e3;e++){o.update(l,0,Zt),l=o.digest();for(let e=0;e<Zt;e++)u[e]^=l[e]}i.set(u.subarray(0,a.min(Zt,r-n)),n)}return i}(e,t,0,r)}(r,o,2*i+2);return e.F=function(e,t){!function(){if(!nn){let e=1,t=1;do{e=255&(e^e<<1^(128&e?27:0)),t=255&(t^t<<1),t=255&(t^t<<2),t=255&(t^t<<4),128&t&&(t^=9),Qt[e]=255&(t^(t<<1|t>>7)^(t<<2|t>>6)^(t<<3|t>>5)^(t<<4|t>>4)^99)}while(1!=e);Qt[0]=99;for(let e=0;e<256;e++){const t=Qt[e],n=sn(t),r=n<<24|t<<16|t<<8|n^t;_t[e]=r,$t[e]=r>>>8|r<<24,en[e]=r>>>16|r<<16,tn[e]=r>>>24|r<<8}nn=!0}}();const n=new Int32Array(60),r=function(e,t){const n=e.length>>2,r=n+6,o=4*(r+1);let i=1;for(let r=0;r<n;r++)t[r]=e[4*r]<<24|e[4*r+1]<<16|e[4*r+2]<<8|e[4*r+3];for(let e=n;e<o;e++){let r=t[e-1];e%n==0?(r=on(r<<8|r>>>24)^i<<24,i=sn(i)):n>6&&e%n==4&&(r=on(r)),t[e]=t[e-n]^r}return r}(e,n),o=new Int32Array(4),i=rn(t);let a=0,s=0,c=0,l=0;return{process(e,t){t&&i.update(e,0,e.length),function(e){const t=new h(e.buffer,e.byteOffset,e.byteLength),n=e.length;let r=0;for(;r+16<=n;r+=16)u(),t.setInt32(r,t.getInt32(r)^o[0]),t.setInt32(r+4,t.getInt32(r+4)^o[1]),t.setInt32(r+8,t.getInt32(r+8)^o[2]),t.setInt32(r+12,t.getInt32(r+12)^o[3]);if(r<n){u();for(let t=0;r<n;r++,t++)e[r]^=o[t>>2]>>>24-8*(3&t)}}(e),t||i.update(e,0,e.length)},digest:()=>i.digest()};function u(){a=a+1|0,a||(s=s+1|0,s||(c=c+1|0,c||(l=l+1|0)));let e=an(a)^n[0],t=an(s)^n[1],i=an(c)^n[2],u=an(l)^n[3],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&u]^n[4],d=_t[t>>>24]^$t[i>>>16&255]^en[u>>>8&255]^tn[255&e]^n[5],w=_t[i>>>24]^$t[u>>>16&255]^en[e>>>8&255]^tn[255&t]^n[6],p=_t[u>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[7];e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[8],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[9],i=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[10],u=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[11],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&u]^n[12],d=_t[t>>>24]^$t[i>>>16&255]^en[u>>>8&255]^tn[255&e]^n[13],w=_t[i>>>24]^$t[u>>>16&255]^en[e>>>8&255]^tn[255&t]^n[14],p=_t[u>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[15],e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[16],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[17],i=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[18],u=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[19],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&u]^n[20],d=_t[t>>>24]^$t[i>>>16&255]^en[u>>>8&255]^tn[255&e]^n[21],w=_t[i>>>24]^$t[u>>>16&255]^en[e>>>8&255]^tn[255&t]^n[22],p=_t[u>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[23],e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[24],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[25],i=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[26],u=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[27],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&u]^n[28],d=_t[t>>>24]^$t[i>>>16&255]^en[u>>>8&255]^tn[255&e]^n[29],w=_t[i>>>24]^$t[u>>>16&255]^en[e>>>8&255]^tn[255&t]^n[30],p=_t[u>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[31],e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[32],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[33],i=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[34],u=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[35],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&u]^n[36],d=_t[t>>>24]^$t[i>>>16&255]^en[u>>>8&255]^tn[255&e]^n[37],w=_t[i>>>24]^$t[u>>>16&255]^en[e>>>8&255]^tn[255&t]^n[38],p=_t[u>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[39];let m=40;r>10&&(e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[40],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[41],i=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[42],u=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[43],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&u]^n[44],d=_t[t>>>24]^$t[i>>>16&255]^en[u>>>8&255]^tn[255&e]^n[45],w=_t[i>>>24]^$t[u>>>16&255]^en[e>>>8&255]^tn[255&t]^n[46],p=_t[u>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[47],m=48),r>12&&(e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[48],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[49],i=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[50],u=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[51],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&u]^n[52],d=_t[t>>>24]^$t[i>>>16&255]^en[u>>>8&255]^tn[255&e]^n[53],w=_t[i>>>24]^$t[u>>>16&255]^en[e>>>8&255]^tn[255&t]^n[54],p=_t[u>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[55],m=56),o[0]=(Qt[f>>>24]<<24|Qt[d>>>16&255]<<16|Qt[w>>>8&255]<<8|Qt[255&p])^n[m],o[1]=(Qt[d>>>24]<<24|Qt[w>>>16&255]<<16|Qt[p>>>8&255]<<8|Qt[255&f])^n[m+1],o[2]=(Qt[w>>>24]<<24|Qt[p>>>16&255]<<16|Qt[f>>>8&255]<<8|Qt[255&d])^n[m+2],o[3]=(Qt[p>>>24]<<24|Qt[f>>>16&255]<<16|Qt[d>>>8&255]<<8|Qt[255&w])^n[m+3]}}(In(s,0,i),In(s,i,2*i)),e.h&&vn(e),In(s,2*i)}function Nn(e,t){return t===fe?Jt(e):t}function In(e,t,n){return e.subarray(t,n)}class Un extends z{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){Wn(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=Mn(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t[11]^n.passwordVerification))throw new d(ln);e=e.subarray(12)}r?t.error(new d(fn)):t.enqueue(Mn(n,e))}})}}class kn extends z{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){Wn(this,e,t,n)},transform(e,t){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=wn(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Ln(n,t),0),o=12}else r=new w(e.length),o=0;r.set(Ln(n,e),o),t.enqueue(r)}})}}function Wn(e,t,r,o){n.assign(e,{password:t,rawPassword:r,passwordVerification:o}),function(e,t,r){const o=[305419896,591751049,878082192];if(n.assign(e,{R:o,D:new Yt(o[0]),T:new Yt(o[2])}),r)for(let t=0;t<r.length;t++)On(e,r[t]);else for(let n=0;n<t.length;n++)On(e,t.charCodeAt(n))}(e,t,r)}function Mn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=Bn(e)^t[r],On(e,n[r]);return n}function Ln(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=Bn(e)^t[r],On(e,t[r]);return n}function On(e,t){let[,n]=e.R;e.D.append([t]);const r=~e.D.get();n=qn(a.imul(qn(n+Vn(r)),134775813)+1),e.T.append([n>>>24]);const o=~e.T.get();e.R=[r,n,o]}function Bn(e){const t=2|e.R[2];return Vn(a.imul(t,1^t)>>>8)}function Vn(e){return 255&e}function qn(e){return 4294967295&e}function Pn(e){if(e instanceof D)return e;const t=e.getReader();return new D({async pull(e){try{const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)}catch(e){throw t.cancel(e).catch(()=>{}),e}},cancel:e=>t.cancel(e)})}function Yn(e,t){e=Pn(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=pe||new y([]).stream()instanceof D)return new u(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new x({write(e){r.push(e)}})).then(()=>new y(r,n))}function Hn(e){if(e instanceof x)return e;const t=e.getWriter();return new x({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const Jn="Invalid codec definition",Gn="Reserved compression method",Zn="Invalid codec module",jn="Compression method not supported",Kn=[0,8,9,99],Xn=new c,Qn=new c;function _n(e){return Xn.get(e)}function $n(){return t.from(Xn.values(),e=>n.assign({},e,Qn.get(e.format)))}function er(e){return Qn.get(e)}function tr(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=pe&&typeof r!=pe)throw new d(Zn);Qn.set(e,{CompressionStream:n,DecompressionStream:r})}const nr="Invalid uncompressed size",rr="Invalid compressed data",or="Codec out of memory",ir="Invalid CRC32",ar="deflate-raw",sr="deflate64-raw",cr="gzip",lr=[31,139,8];class ur extends z{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:a,zipCrypto:s,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:d,inputSize:w}=e,p=this;let m,y,g,E=super.readable;const F=f&&er(f),b=gr(a,r,n),S=c&&o&&!u&&!F&&(!i||s)&&Boolean(b);if(i&&!s||!c||S||(m=new Ht,E=Fr(E,m)),o)if(F)E=br(E,yr(F.CompressionStream,f,{level:l,chunkSize:t,compressionMethod:d,uncompressedSize:w}));else if(S)g=new fr,E=br(E,new b(cr,{level:l,chunkSize:t})),E=Fr(E,g);else try{E=Er(E,a,{level:l,chunkSize:t},r,n)}catch(e){if(!a&&n)throw xr(e);let t;try{t=new r(cr)}catch{throw xr(e)}E=br(E,t),E=Fr(E,new fr)}i&&(s?E=Fr(E,new kn(e)):(y=new Dn(e),E=Fr(E,y))),hr(p,E,()=>{i&&!s||!c||(p.crc32=S?g.crc32:new h(m.value.buffer).getUint32(0))})}}class fr extends z{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=a.min(t,e.length);if(t-=n,!(e=e.subarray(n)).length)return}const o=n.length+e.length;if(o<=8)return void(n=Ct(n,e));const i=o-8,s=a.min(i,n.length);r.enqueue(Ct(n.subarray(0,s),e.subarray(0,i-s))),n=Ct(n.subarray(s),e.subarray(i-s))},flush(){const t=It(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class dr extends z{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:a,crc32:s,compressed:c,useCompressionStream:u,deflate64:f,format:p,compressionMethod:m,rawBitFlag:y,outputSize:E}=e;let F,b,S,R=super.readable;if(i&&(o?R=Fr(R,new Un(e)):(b=new zn(e),R=Fr(R,b))),c){const e=new l,o=p&&er(p);let i;if(o)R=br(R,yr(o.DecompressionStream,p,{chunkSize:t,compressionMethod:m,rawBitFlag:y,uncompressedSize:E}),e);else{const o=gr(u,r,n);if(a&&!f&&s!==fe&&E!==fe&&o)try{i=new o(cr,{chunkSize:t})}catch{i=fe}if(!i)try{R=Er(R,u,{chunkSize:t,deflate64:f},r,n,e)}catch(e){if(f||E===fe||!u&&n)throw xr(e);try{i=new r(cr)}catch{throw xr(e)}}}i?(S=!0,R=function(e,t,n,r,o){const i=t.writable.getWriter(),a=t.readable.getReader(),s=r===fe?new Yt:fe;let c,l,u=0,f=!1,p=!1;const m=new D({start(e){l=e},pull(){E()},cancel:e=>(p=!0,E(),a.cancel(e))});return async function(){const t=e.getReader();try{const e=new w(10);for(e.set(lr),await i.write(e);;){await y(),await i.ready;const{value:e,done:n}=await zr(t,o);if(n)break;await i.write(e)}s&&await i.write(new w(0));const a=new w(8),c=It(a);c.setUint32(0,s?s.get():r,!0),c.setUint32(4,n,!0),f=!0,await i.write(a),await i.close()}catch(e){await Sr(i,e),await Rr(t,e)}}(),async function(){try{for(;;){const{value:e,done:t}=await h();if(t)break;if(u+=e.length,u>n)throw new d(nr);s&&s.append(e),l.enqueue(e)}p||(p=!0,l.close())}catch(e){!function(e){p||(p=!0,l.error(e),E())}(e),await Rr(a,e)}}(),m;function h(){return a.read().catch(e=>{if(f){if(!s)throw Ar(e,ir);if(u!=n)throw Ar(e,nr);return{done:!0}}throw Dr(e,o)})}function y(){if(!p&&l.desiredSize<=0)return new g(e=>c=e)}function E(){if(c){const e=c;c=fe,e()}}}(R,i,E,s,e)):R=function(e,t){const n=e.getReader();return new D({async pull(e){try{const{value:t,done:r}=await n.read();r?e.close():e.enqueue(t)}catch(e){throw await Rr(n,e),Dr(e,t)}},cancel:e=>n.cancel(e)})}(R,e)}a&&!S&&(F=new Ht,R=Fr(R,F)),hr(this,R,()=>{if(F){const e=new h(F.value.buffer).getUint32(0,!1);if(s!=e)throw new d(ir)}})}}const wr=new c;function pr(e,t){if(!e)return!1;let n=wr.get(e);n||(n=new c,wr.set(e,n));let r=n.get(t);if(r===fe){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function mr(e){return pr(e,ar)}function hr(e,t,r){t=Fr(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function yr(e,t,n){if(!e)throw new d(jn);return new e(t,n)}function gr(e,t,n){return e&&t?t:n&&n.requiresModule?n:void 0}function Er(e,t,n,r,o,i){const a=t&&r?r:o||r,s=n.deflate64?sr:ar;let c;try{c=new a(s,n)}catch(e){if(!t||!o||a==o)throw e;c=new o(s,n)}return br(e,c,i)}function Fr(e,t){return Pn(e).pipeThrough(t)}function br(e,t,n){const r=t.writable.getWriter(),o=e.getReader();return async function(){try{for(;;){await r.ready;const e=await zr(o,n);if(e.done){await r.close();break}await r.write(e.value)}}catch(e){await Sr(r,e),await Rr(o,e)}}(),t.readable}async function Sr(e,t){try{await e.abort(t)}catch{}}async function Rr(e,t){try{await e.cancel(t)}catch{}}function zr(e,t){const n=e.read();return t?n.catch(e=>{throw t.add(e),e}):n}function Dr(e,t){return t.has(e)?e:Ar(e,Tr(e)?or:rr)}function xr(e){return Tr(e)?Ar(e,or):e}function Tr(e){return Ut(e)&&"Z_MEM_ERROR"==e.code}function Ar(e,t){const n=new d(t);return n.cause=e,n}const vr="data",Cr="deflate",Nr="inflate";class Ir extends z{constructor(e,t){super({});const r=this,{codecType:o}=e;let i;o.startsWith(Cr)?i=ur:o.startsWith(Nr)&&(i=dr),r.outputSize=0;let a=0;const s=new i(e,t),c=super.readable,l=new z({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:a})}}),u=new z({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==fe&&r.outputSize>e.outputSize))throw new d(nr)},flush(){const{crc32:e}=s;n.assign(r,{crc32:e,inputSize:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(s).pipeThrough(u)})}}class Ur extends z{constructor(e){const t=[];let r=0,i=0;function a(){const n=new w(e);let o=0;for(;o<e;){const r=t[0],i=e-o;r.length<=i?(n.set(r,o),o+=r.length,t.shift()):(n.set(r.subarray(0,i),o),t[0]=r.subarray(i),o+=i)}return r-=e,n}(!o.isFinite(e)||e<1)&&(e=262144),super({transform(n,o){for(t.push(n),r+=n.length;r>e;)i+=e,o.enqueue(a())},flush(e){r&&(i+=r,e.enqueue(function(e,t){const n=new w(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(t,r)))}}),n.defineProperty(this,"outputSize",{get:()=>i})}}const kr="Worker startup timeout";let Wr,Mr,Lr,Or=()=>{};async function Br(){if(Or)try{return await void 0,!0}catch{}return!1}function Vr(e){e.createWorker?Mr=!0:Wr=!1}class qr{constructor(e,{readable:t,writable:r},o,i){const{options:a,config:s,A:c,useWebWorkers:l,workerURI:u}=o;let{createWorker:f}=o;const{signal:d}=c;return Mr&&(f=fe),n.assign(e,{v:!0,C:(e.C||0)+1,readable:t.pipeThrough(new Ur(wt(s))).pipeThrough(new Pr(c),{signal:d}),writable:r,options:n.assign({},a),N:o,workerURI:u,createWorker:f,terminate:()=>new g(t=>{const{I:n,v:r}=e;r?(e.U=e.U||[],e.U.push(t)):(n&&(n.terminate(),e.I=null),t()),e.W=null}),M(){if(e.v){const{U:t,I:n}=e;t&&(e.U=null,n&&(e.L=!0,n.terminate())),e.v=!1;const r=i(e);t&&t.forEach(e=>e(r))}}}),Wr===fe&&(Wr=typeof C!=we),(l&&Lr&&(Wr&&u||f)?Lr:Hr)(e,s)}}class Pr extends z{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await Yr(e,n)},async transform(e,r){o+=e.length,t&&await Yr(t,o,n),r.enqueue(e)},async flush(){r&&await Yr(r,o)}})}}async function Yr(e,...t){try{await e(...t)}catch{}}function Hr(e,t){return{run:()=>Jr(e,t)}}async function Jr({options:e,readable:t,writable:n,M:r,N:o},i){let a,s,c;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(Cr),n=t?i.CompressionStreamFallback:i.DecompressionStreamFallback,r=t?i.CompressionStream:i.DecompressionStream;e.useCompressionStream?n&&n.requiresModule&&!mr(r)&&await l():await l()||n&&!n.requiresModule||(e.useCompressionStream=!0)}e.encrypted&&!e.zipCrypto&&await l(),a=new Ir(e,i),s=new Ur(wt(i));const{signal:r}=o.A;await t.pipeThrough(a).pipeThrough(s).pipeTo(n,{preventClose:!0,preventAbort:!0,signal:r});const{crc32:c,inputSize:u,outputSize:f}=a;return{crc32:c,inputSize:u,outputSize:f}}catch(e){if(a){const t=s?s.outputSize:0;if(o.outputSize=t,Ut(e))try{e.outputSize=t}catch{}}throw e}finally{r()}function l(){return c||(c=Br()),c}}const Gr={type:"module"},Zr="error",jr="abort";let Kr,Xr,Qr;var _r;function $r(e){const{reader:t}=e;t&&t.releaseLock(),e.reader=null,e.writer=null}function eo(e){const{I:t}=e;if(t)try{t.terminate()}catch{}e.W=null}function to(e,t,r,o,i=!0){const{createWorker:a}=r;let s,c,l;if(a)s=a();else if(Xr===fe||Kr!==e){const n=typeof e==pe;c=n?e(i):e;const a=c.startsWith("data:"),u=c.startsWith("blob:");if(a||u){o===fe&&(o=!1),o&&(l=Gr);try{s=new C(c,l)}catch(i){if(u)try{f.revokeObjectURL(c)}catch{}if(n&&u)return to(e,t,r,o,!1);if(o)throw i;return to(e,t,r,!0,!1)}}else{o===fe&&(o=!0),o&&(l=Gr);try{c=new f(c,t)}catch{}try{s=new C(c,l)}catch(n){if(o)return to(e,t,r,!1,i);throw n}}Kr=e,Xr=c,Qr=l}else s=new C(Xr,Qr);return s.addEventListener("message",e=>{r.O=!0,no(r),async function({data:e},t){const{type:r,value:o,messageId:i,result:a,error:s,errorValue:c}=e,{reader:l,writer:u,B:f,V:p,M:m,C:h}=t,y=()=>t.C!=h;try{if(s)g(function(e,t){const{message:r,stack:o,code:i,name:a,outputSize:s,cause:c,codecImportFailed:l}=e;let u;if(u=t?t.value:n.assign(new d(r),{stack:o,code:i,name:a}),Ut(u))try{s!==fe&&(u.outputSize=s),l&&(u.codecImportFailed=!0),c&&(Ut(u.cause)||(u.cause=n.assign(new d(c.message),{name:c.name})),c.code!==fe&&u.cause.code!==c.code&&(u.cause.code=c.code)),t&&(u.name!==a&&(u.name=a),u.code!==i&&(u.code=i))}catch{}return u}(s,c));else{if("pull"==r){const{value:e,done:n}=await l.read();y()||oo({type:vr,value:e,done:n,messageId:i},t)}if(r==vr){const e=new w(o);await u.ready,await u.write(e),y()||oo({type:"ack",messageId:i},t)}"close"==r&&function(e){y()||(f(e),E(),m())}(a)}}catch(s){y()||(eo(t),g(s))}function g(e){y()||(p(e),E(),Ut(e)&&e.codecImportFailed||m())}function E(){u&&u.releaseLock()}}(e,r)}),s.addEventListener(Zr,e=>ro(e,r)),s.addEventListener("messageerror",e=>ro(e,r)),s}function no(e){const{P:t}=e;t&&(U(t),e.P=null)}function ro(e,t){e.preventDefault&&e.preventDefault(),no(t);const{O:r,V:o,writer:i,M:a}=t;eo(t),r||(t.I=null);let s=e.error||new d(e.message||Zr);r||(s=n.assign(new d(s.message||Zr),{Y:!0}),t.H=s),o&&(o(s),i&&i.releaseLock(),r&&a())}function oo(e,{I:t,writer:n}){try{const{value:n}=e;if(n){e.value=Nt(n);try{t.postMessage(e,[e.value.buffer])}catch{t.postMessage(e)}}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}_r=function(e,t){const{baseURI:r,chunkSize:i,workerStartupTimeout:a}=t;let{wasmURI:s}=t;if(!e.W){let c;typeof s==pe&&(s=s());try{c=to(e.workerURI,r,e)}catch{return Vr(e),Hr(e,t)}n.assign(e,{I:c,O:!1,L:!1,H:null,W:{run:async()=>{try{return await async function(e,t){if(!e.I){const{H:t}=e;e.H=null;const n=t||new d(kr);throw n.Y=!0,n}let r,i;const a=new g((t,n)=>{r=t,i=t=>{const{outputSize:r,N:o}=e;if(o.outputSize=r,Ut(t))try{t.outputSize=r}catch{}n(t)}});n.assign(e,{reader:null,writer:null,outputSize:0,J:!1,G:null,B:r,V:i,result:a});const{readable:s,options:c}=e,{writable:l,closed:u,Z:f}=function(e,t){const r=new AbortController;let o;const{writable:i,readable:a}=new z({transform(e,n){t.outputSize+=e.length,n.enqueue(e)}}),s=a.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:r.signal});s.catch(e=>{o||n.assign(t,{J:!0,G:e})});const{signal:c}=t.N.A;if(c){const e=()=>r.abort(c.reason),t=()=>c.removeEventListener(jr,e);c.addEventListener(jr,e),s.then(t,t)}return{writable:i,closed:s,Z:()=>{o=!0,r.abort()}}}(e.writable,e);try{oo({type:"start",options:c,config:t},e)}catch(t){f();try{await u}catch{}throw e.M(),t}n.assign(e,{reader:s.getReader(),writer:l.getWriter()});const{workerStartupTimeout:w}=t;!e.O&&o.isFinite(w)&&w>=0&&(e.P=I(()=>function(e){if(e.P=null,e.O)return;const{V:t,writer:n}=e;if(eo(e),e.I=null,t){const e=new d(kr);e.Y=!0,t(e),n&&n.releaseLock()}}(e),w));try{const e=await a;return await p(),await u,e}catch(t){await p(),f();try{await u}catch{}const{outputSize:n,N:r,J:o,G:i}=e;r.outputSize=n;const a=Ut(t)&&(t.codecImportFailed||t.Y),s=o&&!a?i:t;if(Ut(s))try{s.outputSize=n}catch{}throw s}async function p(){if(!l.locked)try{await l.getWriter().close()}catch{}}}(e,{chunkSize:i,wasmURI:s,baseURI:r,workerStartupTimeout:a})}catch(n){if(n&&n.Y)return Vr(e),$r(e),Jr(e,t);if(n&&n.codecImportFailed){if(e.reader)return $r(e),Jr(e,t);e.M()}throw n}}}})}return e.W},Lr=_r;let io=[];const ao=[];let so,co,lo=0;async function uo(e,t){const{options:n,config:r}=t,{useWebWorkers:i,useCompressionStream:a,compressed:s,checkCrc32:c,computeCrc32:l,encrypted:u,format:d,codecURI:w}=n,{workerURI:p,createWorker:m,maxWorkers:h}=r;d&&(w&&(n.codecURI=function(e,t){try{return new f(e,t).toString()}catch{return e}}(w,r.baseURI)),await async function(e,t){!Qn.has(e)&&t&&tr(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(d,n.codecURI));const y=!(s||c||l||u),E=d===fe||Boolean(n.codecURI);return t.useWebWorkers=!y&&E&&(i||i===fe&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&p?p:fe,t.createWorker=t.useWebWorkers&&m?m:fe,n.useCompressionStream=a||a===fe&&r.useCompressionStream,(await async function(){const n=io.find(e=>!e.v);if(n)return go(n),new qr(n,e,t,F);if(io.length<h){const n={j:lo};return lo++,io.push(n),new qr(n,e,t,F)}return new g(n=>{ao.push({resolve:n,stream:e,N:t}),co=r.workerStarvationTimeout,fo()})}()).run();function F(e){if(wo(),e.L)return e.L=!1,mo();if(ao.length){const[{resolve:t,stream:n,N:r}]=ao.splice(0,1);t(new qr(e,n,r,F)),fo()}else e.I?(go(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.K=I(async()=>{io=io.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}(e,t)):io=io.filter(t=>t!=e)}}function fo(){!so&&ao.length&&o.isFinite(co)&&co>=0&&(so=I(po,co))}function wo(){so&&(U(so),so=null)}function po(){if(so=null,ao.length){const[{resolve:e,stream:t,N:n}]=ao.splice(0,1);e(new qr({},t,ho(n),yo)),fo()}}function mo(){const e=ao.splice(0).map(({resolve:e,stream:t,N:n})=>new g(r=>{e(new qr({},t,ho(n),()=>{yo(),r()}))}));return wo(),g.all(e)}function ho(e){return n.assign({},e,{useWebWorkers:!1,workerURI:fe,createWorker:fe})}function yo(){wo(),fo()}function go(e){const{K:t}=e;t&&(U(t),e.K=null)}const Eo="\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 Fo(e,t){return So(e,t,!0)}function bo(e){if(!e.some(e=>e>127))return!1;try{return new F("utf-8",{fatal:!0}).decode(e),!0}catch{return!1}}function So(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?function(e){let t="";for(let n=0;n<e.length;n++)t+=Eo[e[n]];return t}(e):new F(t,{ignoreBOM:n}).decode(e)}const Ro="HTTP error ",zo="HTTP Range not supported",Do="HTTP resource changed",xo="Writer iterator completed too soon",To="Writer not initialized",Ao="Invalid writer (size must be writable)",vo="Content-Range",Co="Range",No="GET",Io="bytes",Uo=16777216,ko="writable",Wo=N();class Mo{constructor(){this.size=0}init(){this.initialized=!0}}class Lo extends Mo{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=wt(dt())}={}){const r=this;let o=0;return n=pt(n),new D({async pull(i){const s=t===fe?n:a.min(n,t-o),c=await mi(r,e+o,s);c.length&&(i.enqueue(c),o+=c.length),(t!==fe&&o>=t||!c.length&&s)&&i.close()}})}}class Oo extends Mo{constructor(){super();const e=this,t=new x({write(t){if(!e.initialized)throw new d(To);return e.writeUint8Array(Nt(t))}});n.defineProperty(e,ko,{get:()=>t})}writeUint8Array(){}}let Bo,Vo;class qo extends Lo{constructor(e){super(),n.assign(this,{X:e,size:e.size}),Vo||(Vo=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,n=await e.read();for(;!n.done;)t+=n.value.length,n=await e.read();Bo=1==t}catch{Bo=!1}})())}createReadable(e){const{X:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};if(typeof t.stream==pe){if(!r&&o>=n)return Pn(t.stream());if(Bo)return Pn(t.slice(r,r+o).stream())}return super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=!e&&r>=n.size?n.X:n.X.slice(e,r);let i=await o.arrayBuffer();return i.byteLength>t&&(i=i.slice(e,r)),new w(i)}}class Po extends Mo{constructor(e){super();const t=this,r=new z;n.defineProperty(t,ko,{get:()=>r.writable}),t.contentType=e,t._=Yn(r.readable,e),t._.catch(()=>{})}getData(){return this._}}class Yo extends Lo{constructor(e,t){super(),Jo(this,e,t)}async init(){await Go(this,ii,ti),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:o,$:i}=t;if((n||r)&&o!==fe){const{offset:n=0,size:r=o-n}=e||{},s=i&&n>=o-i.length;if(r>0&&n<o&&!s)return function(e,t,n){let r,o=t,i=0,s=n;return new D({start:()=>c(),async pull(e){r||await c();const{value:t,done:n}=await r.read();if(n)throw new d(zo);const o=t.length>i?t.subarray(0,i):t;i-=o.length,s-=o.length,o.length&&e.enqueue(o),i||(await async function(){const e=r;r=fe,await e.cancel()}(),s||e.close())},cancel:e=>r&&r.cancel(e)});async function c(){const t=a.min(e.maximumRangeSize,s),n=await ii(No,e,$o(e,o,t));if(206!=n.status)throw new d(zo);const c=jo(n);if(c!==fe&&c!=o)throw new d(zo);_o(e,n),Qo(e,n),o+=t,i=t,r=n.body.getReader()}}(t,n,a.min(r,o-n))}return super.createReadable(e)}readUint8Array(e,t){return Zo(this,e,t,ii,ti)}}class Ho extends Lo{constructor(e,t){super(),Jo(this,e,t)}async init(){await Go(this,ai,ni),super.init()}readUint8Array(e,t){return Zo(this,e,t,ai,ni)}}function Jo(e,t,r){const{preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s,checkResourceChanges:c=!0,maximumRangeSize:l=Uo,fetch:u}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(e,{url:t,options:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s,checkResourceChanges:c,maximumRangeSize:l,fetch:u})}async function Go(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s}=e;if(function(e){const{baseURI:t}=dt(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n}(r)&&(i||a)&&(typeof o==we||o)){const r=await t(No,e,$o(e,s?-65557:void 0)),o=r.headers.get("Accept-Ranges");if(!(a||o&&o.toLowerCase()==Io))throw new d(zo);{let o;s&&206==r.status&&(o=new w(await r.arrayBuffer())),Qo(e,r);const i=Ko(r);i===fe?await oi(e,t,n):e.size=i,o&&o.length&&jo(r)===e.size-o.length&&(e.$=o)}}else await oi(e,t,n)}async function Zo(e,t,n,r,o){const{useRangeHeader:i,forceRangeRequests:a,$:s,size:c,options:l}=e;if(i||a){if(t>=c||0===n)return ge;{if(t+n>c&&(n=c-t),s&&t>=c-s.length){const e=t-(c-s.length);return s.slice(e,e+n)}const o=await r(No,e,$o(e,t,n));if(206!=o.status)throw new d(zo);const i=jo(o);if(i!==fe&&i!=t)throw new d(zo);_o(e,o),Qo(e,o);const a=new w(await o.arrayBuffer());if(a.length!=n)throw new d(zo);return a}}{const{data:r}=e;return r||await o(e,l),e.data.subarray(t,t+n)}}function jo(e){const t=e.headers.get(vo);if(t){const e=o(t.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e))return e}}function Ko(e){const t=e.headers.get(vo);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=o(e);if(!o.isNaN(t))return t}}}function Xo({headers:e}){return{ee:e.get("Etag")||fe,lastModified:e.get("Last-Modified")||fe}}function Qo(e,t){const{checkResourceChanges:n,te:r}=e;n&&!r&&206==t.status&&(e.te=Xo(t))}function _o(e,t){const{checkResourceChanges:r,te:o,size:i}=e;if(r){const e=Ko(t);if(e!==fe&&i!==fe&&e!=i)throw new d(Do);if(o){const e=Xo(t);if(n.entries(o).some(([t,n])=>n!==fe&&e[t]!==fe&&n!=e[t]))throw new d(Do)}}}function $o(e,t=0,r=1){return n.assign({},ei(e),{[Co]:Io+"="+(t<0?t:t+"-"+(t+r-1))})}function ei({options:e}){const{headers:t}=e;if(t)return N.iterator in t?n.fromEntries(t):t}async function ti(e){await ri(e,ii)}async function ni(e){await ri(e,ai)}async function ri(e,t){const n=await t(No,e,ei(e));e.data=new w(await n.arrayBuffer()),e.size=e.data.length}async function oi(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,ei(e)),i=r.headers.get("Content-Length");i&&!r.headers.get("Content-Encoding")?e.size=o(i):await n(e,e.options)}}async function ii(e,{fetch:t=fetch,options:r,url:o},i){const a=await t(o,n.assign({},r,{method:e,headers:i}));if(a.status>=200&&a.status<=299)return a;throw 416==a.status?new d(zo):new d(Ro+(a.statusText||a.status))}function ai(e,{url:t},r){return new g((o,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status>=200&&a.status<=299){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),o({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new d(zo):new d(Ro+(a.statusText||a.status)))},!1),a.addEventListener("error",e=>i(e.detail?e.detail.error:new d("Network error")),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()})}class si extends Lo{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Ho(e,t):new Yo(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(e){return this.reader.createReadable(e)}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class ci extends Lo{constructor(e){super(),this.ne=e}async init(){const e=this;e.re=0;const t=e.ne=await g.all(e.ne.map(pi));e.oe=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}ie(e){const{oe:t,size:n}=this,r=t[e];return r===fe?n:r}async readUint8Array(e,t){const n=this,{ne:r}=this;let o,i=0,s=e;for(;r[i]&&s>=r[i].size;)s-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(s+t<=r)o=await mi(c,s,t);else{const i=r-s;o=Ct(await mi(c,s,i),await n.readUint8Array(e+i,t-i))}}else o=ge;return n.re=a.max(i,n.re),o}}class li extends Mo{constructor(e,t=4294967295){super();const r=this;let o,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const s=new x({async write(t){if(t===Wo)return void(a&&await l());const{availableSize:n}=r;if(a)t.length>=n?(await c(t.subarray(0,n)),await l(),t.length>n&&await this.write(t.subarray(n))):await c(t);else{const{value:n,done:s}=await e.next();if(s&&!n)throw new d(xo);o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await wi(o),i=n.writable,a=i.getWriter(),await this.write(t)}},async close(){a&&(await a.ready,await u())},async abort(e){a&&await a.abort(e)}});async function c(e){const t=e.length;t&&(await a.ready,await a.write(e),o.size+=t,r.availableSize-=t)}async function l(){await u(),r.diskOffset+=o.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function u(){await a.close()}n.defineProperty(r,ko,{get:()=>s})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(Wo)}finally{e.releaseLock()}}}class ui{constructor(e){return t.isArray(e)&&(e=new ci(e)),(e instanceof D||typeof e.getReader==pe)&&(e={readable:Pn(e)}),e}}class fi{constructor(e){e.writable===fe&&typeof e.next==pe&&(e=new li(e)),(e instanceof x||typeof e.getWriter==pe)&&(e={writable:Hn(e)});try{e.size=e.size===fe?0:e.size}catch{throw new d(Ao)}return e}}function di(e){return Boolean(e&&e.getData)}async function wi(e,t){if(!e.init||e.initialized)return g.resolve();await e.init(t)}async function pi(e){return e=new ui(e),await wi(e),e.size!==fe&&e.readUint8Array||(e=new qo(await Yn(e.readable)),await wi(e)),e}function mi(e,t,n){return e.readUint8Array(t,n)}function hi(e,t){return e.createReadable?e.createReadable(t):e.readUint8Array?Lo.prototype.createReadable.call(e,t):e.readable}function yi(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==fe&&(r.filename=n),e.push(r)}}const gi="filename",Ei="rawFilename",Fi="comment",bi="rawComment",Si="uncompressedSize",Ri="compressedSize",zi="offset",Di="diskNumberStart",xi="lastModDate",Ti="rawLastModDate",Ai="lastAccessDate",vi="rawLastAccessDate",Ci="creationDate",Ni="rawCreationDate",Ii="internalFileAttributes",Ui="externalFileAttributes",ki="msdosAttributesRaw",Wi="msdosAttributes",Mi="msDosCompatible",Li="zip64",Oi="encrypted",Bi="version",Vi="versionMadeBy",qi="zipCrypto",Pi="directory",Yi="executable",Hi="compressionMethod",Ji="signature",Gi="extraField",Zi="unixMode",ji="setuid",Ki="setgid",Xi="sticky",Qi=[gi,Ei,Si,Ri,xi,Ti,Fi,bi,Ai,vi,Ci,Ni,zi,Di,Ii,Ui,ki,Wi,Mi,Li,Oi,Bi,Vi,qi,Pi,Yi,"symlink",Hi,Ji,"crc32",Gi,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",Zi,"unixExternalUpper",ji,Ki,Xi,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class _i{constructor(e){Qi.forEach(t=>this[t]=e[t])}}const $i=new l([1,Q,10,_,28789,25461,$,ee,te,22613,13]);function ea(e,t,n){return e?t?12:16+4*n:0}const ta="File format is not recognized",na="End of central directory not found",ra="End of Zip64 central directory locator not found",oa="Central directory header not found",ia="Local file header not found",aa="Zip64 extra field not found",sa="File contains encrypted entry",ca="Encryption method not supported",la="Split zip file",ua="Overlapping entry found",fa="Entry data out of bounds",da="Ambiguous archive",wa="Encrypted central directory is not supported",pa="Unsafe filename",ma="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",ha="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",ya="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",ga="64-bit value exceeds Number.MAX_SAFE_INTEGER",Ea="unsorted central directory",Fa="unknown version needed to extract",ba="compressed patched data",Sa="malformed extra field",Ra="unknown zip64 extensible data",za="wrapped entries count",Da="appended data",xa="prepended data",Ta="prepended central directory",Aa="trailing central directory data",va="mismatched central directory offset",Ca="missing zip64 extra field",Na="duplicate filename",Ia="mismatched zip64 end of central directory record",Ua="multiple end of central directory records",ka="mismatched local file header (filename)",Wa="mismatched local file header (general purpose bit flag)",Ma="mismatched local file header (compression method)",La="mismatched local file header (crc32 or sizes)",Oa=/^[a-zA-Z]:/,Ba=/(^|[\\/])\.\.([\\/]|$)/,Va="utf-8",qa="cp437",Pa=[[Si,M],[Ri,M],[zi,M],[Di,L]],Ya={[L]:{ae:vs,bytes:4},[M]:{ae:Cs,bytes:8}},Ha=i(o.MAX_SAFE_INTEGER);class Ja{constructor(e,t={}){n.assign(this,{reader:new ui(e),options:t,se:{ce:new l,le:[],ue:[]}})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await wi(r),r.size!==fe&&r.readUint8Array||(r=new qo(await Yn(r.readable)),await wi(r)),r.size<j)throw new d(ta);const o=t.warnings=[],i=ds(e,t.options),s=i==Me,c=i!=Oe,u=ms(Rs(t,e,Ie),i),f=function(e,t){if(e===fe)return t;if(!fs(e))throw new d(ha);return e}(Rs(t,e,"filenameValidation"),i),p=Rs(t,e,"normalizeFilename"),{fe:m,de:h}=await hs(r,c,u);if(!m)throw await async function(e){return await us(e)==V}(r)?new d(la):new d(na);c&&h>1&&Ss(Ua);const y=It(m);let g=vs(y,12),E=vs(y,16);const F=m.offset,b=As(y,20),S=F+j+b,R=r.size-S;R>u&&Ss(Da),R>0&&yi(o,Da);let D=As(y,4);const x=r.re||0;let T,A,v,C,N,I=As(y,6),U=As(y,10),k=0,W=X;const q=E==M||g==M||U==L||I==L;if(E!=M&&I!=L&&(E+=ls(r,I)),q){const e=m.offset>=K?await mi(r,m.offset-K,K):ge,t=It(e);if(e.length==K&&vs(t,0)==G){E=ls(r,vs(t,4))+Cs(t,8);let e=await mi(r,E,X),i=It(e);const c=m.offset-K-X;if((e.length<X||vs(i,0)!=J)&&E!=c&&c>=0){const t=E;E=c,E>t&&(k=E-t),e=await mi(r,E,X),i=It(e)}if(e.length<X||vs(i,0)!=J)throw new d(ra);if(v=!0,C=Cs(i,4)>44,C){const e=a.min(Cs(i,4)-44,r.size-E-X);e>0&&(W+=e,N=function(e){const t={rawExtensibleData:e};if(e.length>=28){const r=It(e),o=As(r,26);n.assign(t,{compressionMethod:As(r,0),compressedSize:Cs(r,2),uncompressedSize:Cs(r,10),encryptionAlgorithm:As(r,18),bitLength:As(r,20),flags:As(r,22),hashAlgorithm:As(r,24),hashData:e.subarray(28,28+o)})}return t}(await mi(r,E+X,e)))}D==L?D=vs(i,16):D!=vs(i,16)&&bs(s,o,Ia),I==L?I=vs(i,20):I!=vs(i,20)&&bs(s,o,Ia),U==L?U=Cs(i,32):U!=Cs(i,32)&&bs(s,o,Ia),g==M?g=Cs(i,40):g!=Cs(i,40)&&bs(s,o,Ia),E=ls(r,I)+Cs(i,48)+k}else if(E==M||g==M||I==L)throw new d(ra)}let H=g;const Q=m.offset-(v?W+K:0);if(E>=r.size&&(k=r.size-E-g-j,E=r.size-g-j),x!=D)throw new d(la);if(E<0)throw new d(ta);let _=0,$=await mi(r,E,g),ee=It($);if(g){if($.length<4)throw new d(ta);let e=Q-g;if(E!=e&&I==D){const t=vs(ee,_)==Y||Boolean(N&&N.compressedSize)||Ka(ee);let n=!t;if(e>=0&&e+4<=r.size){const o=await Qa(r,e);if(t)n=o;else if(!o){const t=await async function(e,t){const n=a.max(0,t-65541),r=await mi(e,n,t-n),o=It(r);for(let e=r.length-6;e>=0;e--)if(vs(o,e)==P&&e+6+As(o,e+4)==r.length)return n+e}(r,Q),n=t-g;t!==fe&&n>=0&&await Qa(r,n)&&(e=n)}}if(n){const n=E;if(E=e,$=await mi(r,E,g),ee=It($),E>n)k+=E-n,T=t;else{bs(s,o,va);const e=E-n;if($.length>=Z){const t=vs(ee,42);!await _a(r,t,B)&&await _a(r,t+e,B)&&(k+=e)}}}}}const te=Q-E;if(g!=te&&te>=0&&I==D&&(g=te,$=await mi(r,E,g),ee=It($)),E<0||E>=r.size)throw new d(ta);t.directoryOffset=E,t.directoryLength=H;const ne=zs(t,e,"decryptCentralDirectory");let ce,le;if(ne&&U&&$.length>=4&&vs(ee,0)!=Y&&(C||Ka(ee))){const e=function(e,t,n){const r=e&&e.compressedSize?e.compressedSize:t;return r>0&&r<=n?r:n}(N,H,$.length);le=$.subarray(e),$=await ne($.subarray(0,e),N),ee=It($),H=$.length,ce=!0}N&&!ce&&($.length<4||vs(ee,0)==Y)&&yi(o,Ra),A=E;const ue=Rs(t,e,"filenameEncoding"),de=Rs(t,e,"commentEncoding"),we=new l;let pe,me=-1;const he=!s&&!v;!U&&he&&(U=Xa(ee,$,_),U&&yi(o,za));for(let i=0;i<U;i++){const c=new ja(r,t.options);if(_+Z>$.length||vs(ee,_)!=Y){if(0==i&&!ce&&(C||Ka(ee)))throw new d(wa);throw new d(oa)}es(c,ee,_+6);const l=Boolean(c.bitFlag.languageEncodingFlag),u=_+Z,m=u+c.filenameLength+c.extraFieldLength,h=As(ee,_+4),y=!(h>>8),g=h>>8==3,E=As(ee,_+32),F=m+E,b=new w($.subarray(u,F)),S=b.subarray(0,c.filenameLength),R=b.subarray(c.filenameLength+c.extraFieldLength),D=l||!ue&&bo(S),x=l||!de&&bo(R),T=vs(ee,_+38),v=T&O,N={readOnly:Boolean(1&v),hidden:Boolean(2&v),system:Boolean(4&v),directory:Boolean(16&v),archive:Boolean(32&v)},I=vs(ee,_+42),W=zs(t,e,"decodeText")||Fo,M=D?Va:ue||qa,B=x?Va:de||qa;let V=W(S,M,ke);V===fe&&(V=Fo(S,M));let q,P=W(R,B,We);P===fe&&(P=Fo(R,B)),n.assign(c,{index:i,we:ce,versionMadeBy:h,msDosCompatible:y,zip64:!1,compressedSize:0,uncompressedSize:0,pe:E,offset:I,diskNumberStart:As(ee,_+34),internalFileAttributes:As(ee,_+36),externalFileAttributes:T,msdosAttributesRaw:v,msdosAttributes:N,rawFilename:S,filenameUTF8:D,commentUTF8:x,rawExtraField:b.subarray(c.filenameLength,c.filenameLength+c.extraFieldLength),rawComment:R,filename:V,comment:P});try{q=ts(c,c,ee,_+6)}catch(e){if(s||e.message!=aa)throw e;c.me=!0,yi(o,Ca,c.filename)}if(V=c.filename,p){const e=p(V);e!==fe&&(V=c.filename=e)}if(ps(V,f)){const e=new d(pa);throw e.filename=V,e}q&&yi(o,Sa,V),c.offset+=k;const H=ls(r,c.diskNumberStart)+c.offset;A=a.min(H,A),H<me&&yi(o,Ea,V),me=H,(c.version&O)>63&&yi(o,Fa,V),32&~c.rawBitFlag||yi(o,ba,V),we.has(c.filename)&&(pe=!0),we.add(c.filename);const J=c.externalFileAttributes>>16&L;c.unixMode===fe&&16877&J&&(c.unixMode=J);const G=Boolean(c.unixMode&ie),j=Boolean(c.unixMode&ae),K=Boolean(512&c.unixMode),X=40960==((c.unixMode===fe?J:c.unixMode)&re),Q=c.unixMode!==fe&&(c.unixMode&re)==oe||(J&re)==oe||y&&N.directory||c.filename.endsWith(se),te=!X&&!Q&&(c.unixMode!==fe?!!(73&c.unixMode):g&&!!(73&J));n.assign(c,{setuid:G,setgid:j,sticky:K,symlink:X,unixExternalUpper:J,executable:te,directory:Q,zipCrypto:c.encrypted&&!c.extraFieldAES});const ne=new _i(c);if(ne.getData=(e,n)=>c.getData(e,ne,t.se,n),ne.arrayBuffer=async e=>{const r=new z,o=Yn(r.readable).then(e=>e.arrayBuffer());return o.catch(()=>{}),await c.getData(r,ne,t.se,n.assign({},e,{preventClose:!1})),o},_=F,i==U-1&&he){const e=Xa(ee,$,_);e&&(U+=e,yi(o,za))}const{onprogress:le}=e;if(le)try{await le(i+1,U,new _i(c))}catch{}yield ne}let ye=_,Ee=$a($.subarray(_))||(ce?$a(le):fe);if(!Ee&&!ce){const e=E+_,t=a.min(Q-e,65541);t>=6&&(Ee=$a(await mi(r,e,t)))}Ee&&(t.digitalSignature=Ee,ye=_+6+Ee.length),(_!=H&&ye!=H||!ce&&_!=g&&ye!=g)&&bs(s,o,Aa),pe&&bs(s,o,Na);const Fe=Rs(t,e,"extractPrependedData"),be=Rs(t,e,"extractAppendedData"),Se=(s||Fe)&&U&&4==A&&await async function(e){const t=await us(e);return t==V||808471376==t}(r)?4:0;return s&&(k>0||U&&A>Se)&&Ss(xa),(k>0||U&&A>4)&&yi(o,xa),T&&yi(o,Ta),Fe&&(t.prependedData=A>Se?await mi(r,Se,A-Se):ge),t.comment=b?await mi(r,F+j,b):ge,be&&(t.appendedData=S<r.size?await mi(r,S,r.size-S):ge),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){const{reader:e}=this;e.readUint8Array||!e.readable||e.readable.locked||await e.readable.cancel()}[Ee](){return this.close()}}class Ga{constructor(e={}){let r;const{readable:o,writable:i}=new z({start(e){r=e}}),a=new Ja(o,e),s=a.getEntriesGenerator(),c=new l;this.readable=new D({async pull(e){const{done:t,value:r}=await s.next();if(t)return e.close();const o=function(e,t){const{readable:n,writable:r}=new z;let o;const i={cancel:async e=>{t.delete(i),await(o?o.cancel(e):n.cancel(e))}};return i.readable=new D({async pull(a){o||(o=n.getReader(),t.add(i),async function(){try{await e.getData(r,{preventClose:!1})}catch(e){try{await r.abort(e)}catch{}}finally{t.delete(i)}}());const{done:s,value:c}=await o.read();s?a.close():a.enqueue(c)},cancel:e=>i.cancel(e)},{highWaterMark:0}),i}(r,c),i={...r,readable:o.readable};delete i.getData,n.defineProperties(i,{localDirectory:{get:()=>r.localDirectory,enumerable:!0},warnings:{get:()=>r.warnings,enumerable:!0}}),e.enqueue(i)},async cancel(e){const n=t.from(c);c.clear(),r.error(e),await g.allSettled(n.map(t=>t.cancel(e))),await g.allSettled([s.return(),a.close()])}}),this.writable=i}}async function Za(e,t={}){if(e=new ui(e),await wi(e),e.size!==fe&&e.readUint8Array||(e=new qo(await Yn(e.readable)),await wi(e)),e.size<j)return!1;const n=ds(t,{}),r=n!=Oe,o=ms(t[Ie],n),{fe:i,de:a}=await hs(e,r,o);if(!i||n==Me&&a>1)return!1;const s=As(It(i),20),c=i.offset+j+s;return e.size-c<=o}class ja{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,r,o={}){const i=this;if(i.me)throw new d(aa);const s=dt(),{reader:c,index:l,offset:u,diskNumberStart:f,extraFieldAES:w,extraFieldZip64:p,compressionMethod:m,bitFlag:h,rawBitFlag:y,crc32:g,rawLastModDate:E,uncompressedSize:F,compressedSize:b}=i,{dataDescriptor:S}=h,R=t.localDirectory={},z=t.warnings=[],D=ls(c,f)+u,T=await mi(c,D,ce),A=It(T);let v=Rs(i,o,Fe),C=Rs(i,o,be);const N=Ke(Rs(i,o,Se)),I=Boolean(N),U=!0===N;if(je(v,C),v=v&&v.length?v:fe,C=C&&C.length?C:fe,w&&99!=w.originalCompressionMethod)throw new d(jn);if(T.length<ce||vs(A,0)!=B)throw new d(ia);es(R,A,4);const{extraFieldLength:k,filenameLength:W}=R,M=R.dataOffset=D+ce+W+k,L=Rs(i,o,"checkLocalDirectory"),V=ds(o,i.options),q=function(e,t){return e===fe?t!=Oe:Boolean(e)}(L,V),P=Rs(i,o,"checkLocalFilename"),Y=function(e,t){return e===fe?t==Me:Boolean(e)}(P===fe?L:P,V);let H=ge;if(Y&&(W||k)){const e=await mi(c,D+ce,W+k);H=e.subarray(0,W),R.rawExtraField=e.subarray(W)}else R.rawExtraField=k?await mi(c,D+ce+W,k):ge;Y&&(R.rawFilename=H),ts(i,R,A,4,!0)&&yi(z,Sa),function(e,t,n,r,o){const{rawFilename:i}=e,a=!o,s=e.we&&!(8192&~t.rawBitFlag);!r||s||n.length==i.length&&!n.some((e,t)=>e!=i[t])||bs(a,o,ka),(2121&t.rawBitFlag)!=(2121&e.rawBitFlag)&&bs(a,o,Wa),t.compressionMethod!=e.compressionMethod&&bs(a,o,Ma),t.bitFlag.dataDescriptor||s||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||bs(a,o,La)}(i,R,H,Y,q?fe:z);const{lastAccessDate:J,creationDate:G,uid:Z,gid:j}=R;J&&(t.lastAccessDate=J),G&&(t.creationDate=G),Z!==fe&&t.uid===fe&&(t.uid=Z),j!==fe&&t.gid===fe&&(t.gid=j);const K=Rs(i,o,"checkPasswordOnly"),X=i.encrypted&&(!U||K),Q=X&&!w;if(U||(t.zipCrypto=Q),X&&!(64&~i.rawBitFlag))throw new d(ca);const _=I?fe:_n(m);if(0!=m&&8!=m&&9!=m&&!_&&!I)throw new d(jn);if(X){if(!Q&&(w.strength<1||w.strength>3))throw new d(ca);if(!v&&!C)throw new d(sa)}if(M+b>c.size)throw new d(fa);const $=b,ee=Ge(Rs(i,o,Re));Ze(ee);let te=Rs(i,o,"checkOverlappingEntry");const ne=Rs(i,o,"checkOverlappingEntryOnly");ne&&(te=!0);const{onstart:re,onprogress:oe,onend:ie}=o,ae=0!=m&&!I,se=I?b-ea(X,Q,w&&w.strength):F,le=9==m;let ue=Rs(i,o,De);le&&(ue=!1);const de=Rs(i,o,"checkCrc32"),we=(de===fe?Rs(i,o,"checkSignature"):de)&&!I&&(!X||Q||w&&1==w.vendorVersion),pe={options:{codecType:Nr,password:v,rawPassword:C,zipCrypto:Q,encryptionStrength:w&&w.strength,checkCrc32:we,checkAuthenticationCode:Rs(i,o,"checkAuthenticationCode"),passwordVerification:Q&&(S?E>>>8&O:g>>>24&O),outputSize:se,crc32:g,compressed:ae,encrypted:X,useWebWorkers:Rs(i,o,ze),useCompressionStream:ue,deflate64:le,format:_?_.format:fe,codecURI:_?_.codecURI:fe,compressionMethod:m,rawBitFlag:y,checkPasswordOnly:K},config:s,A:{signal:ee,size:$,onstart:re,onprogress:oe,onend:ie}};let me,he,ye;te&&await async function({reader:e,he:t,index:n,offset:r,crc32:o,compressedSize:i,uncompressedSize:a,dataOffset:s,dataDescriptor:c,extraFieldZip64:l,se:u}){let f=0;if(c){const n=Boolean(l),r=It(await mi(e,s+i,24)),c=[[n,!0],[n,!1],[!n,!0],[!n,!1]].map(([e,t])=>ss(r,e,t)).filter(e=>e&&e.compressedSize==i&&e.uncompressedSize==a),u=c.find(e=>e.crc32==o)||c[0]||ss(r,n,!0)||ss(r,n,!1);u?(t.localDirectory.dataDescriptor=u,f=cs(u.zip64,u.signature)):f=cs(n,!1)}const w={start:r,end:s+i+f,he:t},{ce:p,le:m,ue:h}=u;if(!p.has(n)){const e=function(e,t){let n=0,r=e.length;for(;n<r;){const o=n+r>>>1;e[o].start<t.start?n=o+1:r=o}const o=e[n-1],i=e[n];return o&&as(t,o)?o:i&&as(t,i)?i:void 0}(m,w)||h.find(e=>as(w,e));if(e){const t=new d(ua);throw t.overlappingEntry=e.he,t}p.add(n),h.push(w),h.length*h.length>m.length&&(h.sort((e,t)=>e.start-t.start),u.le=function(e,t){const n=[];let r=0,o=0;for(;r<e.length||o<t.length;)o==t.length||r<e.length&&e[r].start<t[o].start?n.push(e[r++]):n.push(t[o++]);return n}(m,h),h.length=0)}}({reader:c,he:t,index:l,offset:D,crc32:g,compressedSize:b,uncompressedSize:F,dataOffset:M,dataDescriptor:S||R.bitFlag.dataDescriptor,extraFieldZip64:p||R.extraFieldZip64,se:r});try{if(!ne){K&&(e=new x),e=new fi(e),await wi(e,function(e,t,n){return a.min(e,n?1032*t:t)}(se,b,ae)),({writable:me}=e);const t=Pn(c.createReadable({offset:M,size:$})),{outputSize:r}=await uo({readable:t,writable:me},pe);if(Ze(ee),r!=se)throw n.assign(new d(nr),{outputSize:r});e.size+=r}}catch(t){const{outputSize:n}=pe;if(n!==fe?e.size+=n:Ut(t)&&t.outputSize!==fe&&(e.size+=t.outputSize),!K||!Ut(t)||t.message!=fn)throw he=t,ye=!0,t}finally{if((di(e)||!Rs(i,o,xe))&&me&&!me.locked){const e=me.getWriter();if(ye)try{await e.abort(he)}catch{}else await e.close()}}return K||ne?fe:e.getData?e.getData():me}}function Ka(e){const t=a.min(e.byteLength,1024)-3;for(let n=0;n<t;n++)if(134630224==vs(e,n))return!0;return!1}function Xa(e,t,n){let r=0;for(;n+Z<=t.length&&vs(e,n)==Y;)n+=Z+As(e,n+28)+As(e,n+30)+As(e,n+32),r++;return r%65536?0:r}function Qa(e,t){return _a(e,t,Y)}async function _a(e,t,n){return!(t<0||t+4>e.size)&&vs(It(await mi(e,t,4)),0)==n}function $a(e){if(e.length>=6){const t=It(e);if(vs(t,0)==P){const n=As(t,4);if(6+n<=e.length)return new w(e.subarray(6,6+n))}}}function es(e,t,r){const o=e.rawBitFlag=As(t,r+2),i=!(1&~o),a=vs(t,r+6);n.assign(e,{encrypted:i,version:As(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&ne)==ne},rawLastModDate:a,lastModDate:Ds(a),filenameLength:As(t,r+22),extraFieldLength:As(t,r+24)})}function ts(e,t,r,o,i){const{rawExtraField:a}=t,l=t.extraField=new c,u=It(a);let f=0,w=!1;try{for(;f<a.length;){const e=As(u,f),t=As(u,f+2);l.set(e,{type:e,data:a.slice(f+4,f+4+t)}),f+=4+t}}catch{w=!0}f>a.length&&(w=!0);const p=As(r,o+4);n.assign(t,{signature:vs(r,o+10),crc32:vs(r,o+10),compressedSize:vs(r,o+14),uncompressedSize:vs(r,o+18)});const m=l.get(1);if(m)(function(e,t,n){t.zip64=!0;const r=It(e.data),o=Pa.filter(([e,n])=>t[e]==n),i=o.reduce((e,[,t])=>e+Ya[t].bytes,0);if(e.data.length<i){if(n)return!1;throw new d(aa)}const a=[];try{for(let e=0,t=0;e<o.length;e++){const[,n]=o[e],i=Ya[n];a.push(i.ae(r,t)),t+=i.bytes}}catch(e){if(n)return!1;throw e}return o.forEach(([n],r)=>{t[n]=e[n]=a[r]}),!0})(m,t,i)||(w=!0),t.extraFieldZip64=m;else if(Pa.some(([e,n])=>t[e]==n)){if(!i)throw new d(aa);w=!0}const h=l.get(28789);h&&(ns(h,gi,Ei,t,e),t.extraFieldUnicodePath=h);const y=l.get(25461);y&&(ns(y,Fi,bi,t,e),t.extraFieldUnicodeComment=y);const g=l.get(Q);g&&(99==p||t.encrypted)&&g.data.length>=7?(function(e,t,r){const o=It(e.data),i=Ts(o,4);n.assign(e,{vendorVersion:Ts(o,0),vendorId:Ts(o,2),strength:i,originalCompressionMethod:r,compressionMethod:As(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=fe)}(g,t,p),t.extraFieldAES=g):(g&&(w=!0),t.compressionMethod=p);const E=l.get(13);E&&(rs(E,t),t.extraFieldPkwareUnix=E);const F=l.get(22613);F&&(rs(F,t),t.extraFieldUnixType1=F);const b=l.get(_);b&&(function(e,t,n){if(!e.data.length)return;const r=It(e.data),o=Ts(r,0),i=[],a=[];n?(1&~o||(i.push(xi),a.push(Ti)),2&~o||(i.push(Ai),a.push(vi)),4&~o||(i.push(Ci),a.push(Ni))):e.data.length>=5&&(i.push(xi),a.push(Ti));let c=1;i.forEach((n,o)=>{if(e.data.length>=c+4){const i=vs(r,c);t[n]=e[n]=new s(1e3*(0|i));const l=a[o];e[l]=i}c+=4})}(b,t,i),t.extraFieldExtendedTimestamp=b);const S=l.get(10);S&&(function(e,t){const r=It(e.data);let o,i=4;try{for(;i<e.data.length&&!o;){const t=As(r,i),n=As(r,i+2);1==t&&(o=e.data.slice(i+4,i+4+n)),i+=4+n}}catch{}if(o&&24==o.length){const r=It(o),i=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),s=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:i,rawLastAccessDate:a,rawCreationDate:s});const c={lastModDate:xs(i),lastAccessDate:xs(a),creationDate:xs(s)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:a,rawCreationDate:s})}}(S,t),t.extraFieldNTFS=S);const R=l.get(ee);let z;R&&(z=os(R,t,!0),t.extraFieldInfoZip=R);const D=l.get(te);D&&(os(D,z?{}:t,!1),t.extraFieldUnix=D);const x=l.get($);return x&&(t.extraFieldUSDZ=x),w}function ns(e,t,r,o,i){if(e.data.length<5)return void(e.valid=!1);const a=It(e.data),s=new Yt;s.append(i[r]);const c=It(new w(4));c.setUint32(0,s.get(),!0);const l=vs(a,1),u=Ts(a,0);n.assign(e,{version:u,[t]:Fo(e.data.subarray(5)),valid:1==u&&!i.bitFlag.languageEncodingFlag&&l==vs(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function rs(e,t){if(e.data.length<8)return;const r=It(e.data),o={lastAccessDate:new s(1e3*(0|vs(r,0))),lastModDate:new s(1e3*(0|vs(r,4)))};e.data.length>=12&&(o.uid=As(r,8),o.gid=As(r,10)),n.assign(e,o),n.assign(t,o)}function os(e,t,r){try{const o=It(e.data);let i,a;if(r){let t=0;const r=Ts(o,t++),s=Ts(o,t++);i=is(e.data.subarray(t,t+s)),t+=s;const c=Ts(o,t++);a=is(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:i,gid:a})}else e.data.length>=4&&(i=As(o,0),a=As(o,2),n.assign(e,{uid:i,gid:a}));return i!==fe&&(t.uid=i),a!==fe&&(t.gid=a),i!==fe||a!==fe}catch{}}function is(e){const t=new w(4);return t.set(e,0),new h(t.buffer,t.byteOffset,4).getUint32(0,!0)}function as(e,t){return e.start<t.end&&t.start<e.end}function ss(e,t,n){const r=n?4:0;if(e.byteLength<cs(t,n)||n&&vs(e,0)!=q)return fe;const o=vs(e,r);let i,a;try{t?(i=Cs(e,r+4),a=Cs(e,r+12)):(i=vs(e,r+4),a=vs(e,r+8))}catch{return fe}return{signature:n,zip64:t,crc32:o,compressedSize:i,uncompressedSize:a}}function cs(e,t){return(e?20:12)+(t?4:0)}function ls(e,t){return e.ie?e.ie(t):0}async function us(e){return vs(It(await mi(e,0,4)))}function fs(e){return e===Me||e===Le||e===Oe}function ds(e,t){return ws(e,ws(t,Le))}function ws(e,t){const n=e.strictness;if(n!==fe){if(!fs(n))throw new d(ma);return n}const r=e.checkAmbiguity;return r===fe?t:r?Me:t==Oe?Oe:Le}function ps(e,t){if(t==Oe)return!1;const n=e.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(Ba.test(e)||e.startsWith("/")||e.startsWith("\\")||Oa.test(e))||t==Me&&(n.includes(".")||n.includes("")||e.includes("\0"))}function ms(e,t){if(e!==fe){const t=_e(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new d(ya);return t}return t==Me?0:t==Oe?1/0:L}async function hs(e,t,n){const{size:r}=e,o=a.min(r,65557),i={ye:64};let s,c,l=0;for await(const[n,a,u,f,d]of ys(e,o)){const o=As(n,f+20);if(d+j+o==r){const o=await Es(e,n,a,f,d,r,i);if(2==o){if(s||(s=gs(u,f,d)),l++,!t||l>1)break}else 1!=o||c||(c=gs(u,f,d))}}return s||(s=c),s||(s=await async function(e,t,n){const{size:r}=e,o=a.min(r,t==1/0?r:65557+t);let i,s;for await(const[t,a,c,l,u]of ys(e,o)){const o=gs(c,l,u);i||(i=o);const f=await Es(e,t,a,l,u,r,n);if(2==f)return o;1!=f||s||(s=o)}return s||i}(e,n,i)),{fe:s,de:l}}async function*ys(e,t){const n=e.size-t,r=await mi(e,n,t),o=It(r);for(let e=r.length-j;e>=0;e--)vs(o,e)==H&&(yield[o,n,r,e,n+e])}function gs(e,t,n){return{offset:n,buffer:new w(e.subarray(t,t+j)).buffer}}async function Es(e,t,n,r,o,i,a){const s=As(t,r+10),c=vs(t,r+12),l=vs(t,r+16);if(s==L||c==M||l==M)return await Fs(e,t,n,o-K,i,a)==G?2:0;if(!s&&!c)return 1;const u=As(t,r+6);for(const r of[o-c,ls(e,u)+l])if(await Fs(e,t,n,r,i,a)==Y)return 2;return 0}async function Fs(e,t,n,r,o,i){return r<0||r+4>o?fe:r>=n?vs(t,r-n):i.ye>0?(i.ye--,vs(It(await mi(e,r,4)),0)):fe}function bs(e,t,n){e?Ss(n):yi(t,n)}function Ss(e){const t=new d(da);throw t.reason=e,t}function Rs(e,t,n){return t[n]===fe?e.options[n]:t[n]}function zs(e,t,n){return Je(Rs(e,t,n))}function Ds(e){const t=(4294901760&e)>>16,n=e&L,r=new s(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<ue?ue:r}function xs(e){return new s(o(e/i(1e4)-i(116444736e5)))}function Ts(e,t){return e.getUint8(t)}function As(e,t){return e.getUint16(t,!0)}function vs(e,t){return e.getUint32(t,!0)}function Cs(e,t){const n=e.getBigUint64(t,!0);if(n>Ha)throw new d(ga);return o(n)}var Ns=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:da,ERR_BAD_FORMAT:ta,ERR_CENTRAL_DIRECTORY_NOT_FOUND:oa,ERR_CODEC_OUT_OF_MEMORY:or,ERR_ENCRYPTED:sa,ERR_ENCRYPTED_CENTRAL_DIRECTORY:wa,ERR_ENTRY_DATA_OUT_OF_BOUNDS:fa,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:ra,ERR_EOCDR_NOT_FOUND:na,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:aa,ERR_INVALID_AUTHENTICATION_CODE:un,ERR_INVALID_COMPRESSED_DATA:rr,ERR_INVALID_CRC32:ir,ERR_INVALID_FILENAME_VALIDATION:ha,ERR_INVALID_MAX_APPENDED_DATA_SIZE:ya,ERR_INVALID_PASSWORD:ln,ERR_INVALID_STRICTNESS:ma,ERR_INVALID_UNCOMPRESSED_SIZE:nr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:ia,ERR_OVERLAPPING_ENTRY:ua,ERR_SPLIT_ZIP_FILE:la,ERR_UNSAFE_FILENAME:pa,ERR_UNSUPPORTED_COMPRESSION:jn,ERR_UNSUPPORTED_ENCRYPTION:ca,ERR_UNSUPPORTED_UINT64:ga,ERR_WORKER_STARTUP_TIMEOUT:kr,WARNING_APPENDED_DATA:Da,WARNING_COMPRESSED_PATCHED_DATA:ba,WARNING_DUPLICATE_FILENAME:Na,WARNING_MALFORMED_EXTRA_FIELD:Sa,WARNING_MISMATCHED_CENTRAL_DIRECTORY_OFFSET:va,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Wa,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:Ma,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:La,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:ka,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:Ia,WARNING_MISSING_ZIP64_EXTRA_FIELD:Ca,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:Ua,WARNING_PREPENDED_CENTRAL_DIRECTORY:Ta,WARNING_PREPENDED_DATA:xa,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Aa,WARNING_UNKNOWN_VERSION:Fa,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Ra,WARNING_UNSORTED_CENTRAL_DIRECTORY:Ea,WARNING_WRAPPED_ENTRIES_COUNT:za,ZipReader:Ja,ZipReaderStream:Ga,isZipFile:Za});const Is="File already exists",Us="Zip file comment exceeds 64KB",ks="Invalid zip file comment (must be a Uint8Array)",Ws="File entry comment exceeds 64KB",Ms="Invalid file entry comment (must be a string)",Ls="Invalid date (must be a valid Date instance)",Os="File entry name exceeds 64KB",Bs="Version exceeds 65535",Vs="The strength must equal 1, 2, or 3",qs="Encryption is not supported in USDZ files",Ps="Split zip files are not supported in USDZ files",Ys="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",Hs="Invalid extra field (must be a Map)",Js="Invalid extra field type (must be integer 0..65535)",Gs="Invalid extra field data (must be a Uint8Array)",Zs="Extra field data exceeds 64KB",js=-2147483648,Ks=2147483647,Xs=i(0),Qs=i("0x7fffffffffffffff"),_s="Zip64 is not supported (set the 'zip64' option to 'true')",$s="Undefined uncompressed size",ec="Undefined compression method",tc="Undefined CRC32",nc="Undefined reader",rc="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",oc="Zip file not empty",ic="Invalid uid (must be integer 0..2^32-1)",ac="Invalid gid (must be integer 0..2^32-1)",sc="Invalid UNIX mode (must be integer 0..65535)",cc="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",lc="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",uc="Invalid msdosAttributesRaw (must be integer 0..255)",fc="Invalid msdosAttributes (must be an object with boolean flags)",dc="Invalid level (must be integer 0..9)",wc="Signature data exceeds 64KB",pc="Invalid entry option (must be an entry returned by ZipReader#getEntries())",mc="The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set",hc="compression unavailable",yc="clamped last modification date",gc=new w([7,0,2,0,65,69,3,0,0]),Ec="infozip",Fc="unix",bc=[8,9,5,3];let Sc=0;const Rc=[];class zc{constructor(e,t={}){e=new fi(e);const{availableSize:r=de,maxSize:o=de}=e,i=r>0&&r!==de&&o>0&&o!==de;if(i&&t[Ne])throw new d(Ps);n.assign(this,{writer:e,ge:i,options:t,Ee:new c,Fe:new l,offset:t[Ce]===fe?e.size||e.writable.size||0:t[Ce],be:t[Ce]===fe?0:t[Ce]-(e.size||e.writable.size||0),Se:new l,Re:[],warnings:[],ze:0,De:0,xe:fe,Te:!1})}prependZip(e){return Tc(this,async function(e,t){if(e.Fe.size)throw new d(oc);await e.Ae(t)}(this,e))}appendZip(e,t={}){return Tc(this,this.Ae(e,t))}async Ae(e,r={}){const o=this,{Se:i,Fe:a,Ee:s}=o,u=Je(r.filter);for(;i.size;)await g.allSettled(t.from(i));let f;const w=new g(e=>f=e);i.add(w);const p=[];let m;try{e=new ui(e),await wi(e),e.size!==fe&&e.readUint8Array||(e=new qo(await Yn(e.readable)),await wi(e));const{ZipReader:r}=await g.resolve().then(function(){return Ns}),i=new r(e),f=await i.getEntries(),w=[];for(const e of f)u&&!await u(e)||w.push(e);await i.close(),await wi(o.writer);const{directoryOffset:h}=i;w.forEach(({filename:e})=>{if(a.has(e))throw new d(Is);a.add(e),p.push(e)}),o.ve=!0;const{Ce:y}=o;o.Ce=new g(e=>m=()=>{o.ve=!1,e()}),await y,o.ge&&(delete o.ge,await async function(e){return It(await mi(e,0,4)).getUint32(0,!0)==V}(e)||(await Hc(o.writer,Pc()),o.offset+=4));const E=await async function(e,n,r,o,i,a){const{writer:s}=e,u=new c;if(s.closeDisk||a){const c=t.from(r).sort((e,t)=>qc(n,e)-qc(n,t)),f=function(e,n,r){const o=new t(n.length);let i=r;for(let t=n.length-1;t>=0;t--){const r=qc(e,n[t]),a=n[t+1];a&&qc(e,a)>r&&(i=qc(e,a)),o[t]=i}return o}(n,c,i),d=new l(o);let w,p=0;for(let t=0;t<c.length;t++){const r=c[t];if(d.has(r)){const o=qc(n,r);o<p?u.set(r,w):(a||await Bc(e,n,p,o-p),s.closeDisk&&Mc(s,await Vc(n,o))&&await s.closeDisk(),w={offset:Lc(e,s),diskNumberStart:kc(s)},u.set(r,w),await Bc(e,n,o,f[t]-o),p=f[t])}}a||await Bc(e,n,p,i-p)}else{const t=e.offset;await Bc(e,n,0,i),r.forEach(e=>u.set(e,{offset:t+qc(n,e),diskNumberStart:0}))}return u}(o,e,f,w,h,Boolean(u));w.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,bitFlag:i,encrypted:a,uncompressedSize:c,compressedSize:l,extraFieldZip64:u}=e;let{compressionMethod:f,rawExtraField:d}=e;const{level:w,languageEncodingFlag:p,dataDescriptor:m}=i;d=Oc(d||ge),e.extraFieldAES&&(f=99);const h=al(d),y=Boolean(u)&&u.uncompressedSize!==fe,g=Boolean(u)&&u.compressedSize!==fe,F=-7&ll(w,p,m,a,f)|w<<1,{Ne:b,Ie:S}=sl({version:t,bitFlag:F,compressionMethod:f,uncompressedSize:c,compressedSize:l,rawLastModDate:r,rawFilename:o,Ue:g,ke:y,extraFieldLength:h}),{crc32:R}=e;R!==fe&&rl(S,10,R);const{offset:z,diskNumberStart:D}=E.get(e);n.assign(e,{We:!0,ke:y,Ue:g,offset:z,diskNumberStart:D,Me:!1,Le:ge,Oe:ge,Be:ge,Ve:ge,qe:ge,Pe:ge,rawExtraField:d,Ye:ge,Ne:b,Ie:S}),s.set(e.filename,e)})}catch(e){throw p.forEach(e=>a.delete(e)),e}finally{f(),i.delete(w),m&&m()}}add(e="",r,l={}){const u=this,{Se:f}=u,p=async function(e,r,l,u){const f=(u=n.assign({},u))[Ue];if(f!==fe){const{He:r,Je:o}=function(e,r,o){if(null===e||typeof e!=me||t.isArray(e))throw new d(pc);const{externalFileAttributes:i,versionMadeBy:l,comment:u,lastModDate:f,rawLastModDate:w,creationDate:p,lastAccessDate:m,uncompressedSize:h,encrypted:y,zipCrypto:g,crc32:E,compressionMethod:F,extraFieldAES:b,extraFieldUnix:S,internalFileAttributes:R,extraField:z,bitFlag:D,directory:x,uid:T,gid:A}=e,v={externalFileAttributes:i,versionMadeBy:l,comment:u,lastModDate:f,creationDate:p,lastAccessDate:m,internalFileAttributes:R,directory:x};D&&D.languageEncodingFlag&&(v[Ae]=!0);const C=function(e){if(e){const t=new c;if(e.forEach((e,n)=>{$i.has(n)||t.set(n,e.data)}),t.size)return t}}(z);C&&(v[Gi]=C),T===fe&&A===fe||n.assign(v,{uid:T,gid:A,unixExtraFieldType:S?Fc:Ec});const N={};if(r&&!x)if(n.assign(N,{uncompressedSize:h,crc32:E,compressionMethod:F}),r!==Be&&n.assign(N,{encrypted:y,zipCrypto:g,encryptionStrength:b?b.strength:fe}),D&&(N.dataDescriptor=D.dataDescriptor,N[Te]=bc[D.level]),o===fe)N.rawLastModDate=w;else if(r!==Be&&g&&(!D||D.dataDescriptor)&&o instanceof s&&function(e){let t=new s(2e3*a.ceil(a.floor(e.getTime()/1e3)/2));return t<ue?t=ue:t>le&&(t=le),(t.getHours()<<3|t.getMinutes()>>3)&O}(o)!=(w>>>8&O))throw new d(mc);return{He:v,Je:N}}(f,Ke(Kc(e,u,Se)),Kc(e,u,xi));delete u[Ue],u=n.assign(r,o,u)}if(Kc(e,u,Pi)&&!r.endsWith(se)&&(r+=se),e.Fe.has(r))throw new d(Is);e.Fe.add(r),Sc<dt().maxWorkers?Sc++:await new g(e=>Rc.push(e));try{return await async function(e,r,c,l){const u=function(e,n,r){let o=Kc(e,r,Mi),i=Kc(e,r,Vi,o?20:768);const a=Kc(e,r,Yi),s=_c(e,r,"uid"),c=_c(e,r,"gid");let l=_c(e,r,Zi),u=Kc(e,r,"unixExtraFieldType"),f=Kc(e,r,ji),w=Kc(e,r,Ki),p=Kc(e,r,Xi);if(Qe(s,M,ic),Qe(c,M,ac),Qe(l,L,sc),u!==fe&&u!==Ec&&u!==Fc)throw new d(cc);if(u===Fc&&(s!==fe&&s>L||c!==fe&&c>L))throw new d(lc);u!==fe||s===fe&&c===fe||(u=Ec);let m=_c(e,r,ki),h=Kc(e,r,Wi);const y=m!==fe||h!==fe;if(s!==fe||c!==fe||l!==fe||u||a?(o=!1,i=i&O|768):y&&(o=!0,i&=O),Qe(m,O,uc),h&&(typeof h!==me||t.isArray(h)))throw new d(fc);if(i>L)throw new d(Bs);let g=Kc(e,r,Ui);const E=g!==fe;E||(g=0),!r[Pi]&&n.endsWith(se)&&(r[Pi]=!0);const F=Kc(e,r,Pi);if(F?(n.endsWith(se)||(n+=se),E||(g=16,o||(g|=16877<<16))):o||E||(g=a?493<<16:27525120),!o){const e=l!==fe||Boolean(f||w||p);l=l===fe?g>>16&L:l&L,f?l|=ie:f=Boolean(l&ie),w?l|=ae:w=Boolean(l&ae),p?l|=512:p=Boolean(512&l),E&&!e||(F?l=-61441&l|oe:l&re||(l|=32768),g=(l&L)<<16|g&L)}({msdosAttributesRaw:m,msdosAttributes:h}=function(e,t){if(e!==fe)e&=O;else if(t!==fe){const{readOnly:n,hidden:r,system:o,directory:i,archive:a}=t;let s=0;n&&(s|=1),r&&(s|=2),o&&(s|=4),i&&(s|=16),a&&(s|=32),e=s&O}return t===fe&&(t={readOnly:Boolean(1&e),hidden:Boolean(2&e),system:Boolean(4&e),directory:Boolean(16&e),archive:Boolean(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}}(m,h)),y&&(g=g&M|m&O);const b=g>>16&L,S=l!==fe&&40960==(l&re);return{name:n,Ge:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:g,unixExternalUpper:b,uid:s,gid:c,unixMode:l,unixExtraFieldType:u,symlink:S,setuid:f,setgid:w,sticky:p,msdosAttributesRaw:m,msdosAttributes:h}}}(e,r,l);({name:r}=u);const f=function(e,t,n){const r=Qc(e,n,"encodeText")||Jt;let i=r(t,ke);if(i===fe&&(i=Jt(t)),al(i)>L)throw new d(Os);const a=n[Fi]||"";if(typeof a!=he)throw new d(Ms);let c=r(a,We);if(c===fe&&(c=Jt(a)),al(c)>L)throw new d(Ws);const l=Kc(e,n,Bi);if(l!==fe&&l>L)throw new d(Bs);const u=Xc(e,n,xi,new s),f=Kc(e,n,Ti),w=Xc(e,n,Ai),p=Xc(e,n,Ci),m=Kc(e,n,Ii,0),h=Ke(Kc(e,n,Se)),y=Boolean(h),g=!0===h;let E=Kc(e,n,Fe),F=Kc(e,n,be);je(E,F),E=E&&E.length?E:fe,F=F&&F.length?F:fe;const b=_c(e,n,"encryptionStrength",3),S=Kc(e,n,qi),R=Kc(e,n,"extendedTimestamp",!0),z=Kc(e,n,"ntfsTimestamp"),D=Kc(e,n,"keepOrder",!0),x=Kc(e,n,ze),T=Kc(e,n,"bufferedWrite"),A=Qc(e,n,"createTempStream"),v=Kc(e,n,"dataDescriptorSignature",!0),C=Ge(Kc(e,n,Re));Ze(C);const N=Kc(e,n,Ae,!cl(i)||!cl(c)),I=Kc(e,n,Hi),U=y||I===fe?fe:_n(I);if(!y&&I!==fe&&0!==I&&8!==I&&!U)throw new d(jn);let k=_c(e,n,Te);if(Qe(k,9,dc),e.options[Ne]){if(E!==fe||F!==fe)throw new d(qs);k===fe&&I===fe&&(k=0)}y&&(k=_e(n[Te]));let W=Kc(e,n,De),M=Kc(e,n,ve);T&&M===fe&&(M=!1),(M===fe||S&&!g)&&(M=!0),k!==fe&&6!=k&&(W=!1);const O=Kc(e,n,Li);if(!(S||E===fe&&F===fe||o.isInteger(b)&&b>=1&&b<=3))throw new d(Vs);const B=Cc(n[Gi]),V=Cc(n.localExtraField),q=Cc(n.centralExtraField);return{comment:a,Ge:{rawFilename:i,rawComment:c,version:l,lastModDate:u,rawLastModDate:f,lastAccessDate:w,creationDate:p,internalFileAttributes:m,Ze:y,je:g,password:E,rawPassword:F,encryptionStrength:b,zipCrypto:S,extendedTimestamp:R,ntfsTimestamp:z,keepOrder:D,useWebWorkers:x,bufferedWrite:T,createTempStream:A,dataDescriptorSignature:v,signal:C,useUnicodeFileNames:N,compressionMethod:I,format:U?U.format:fe,codecURI:U?U.codecURI:fe,Ke:U?U.versionNeeded:fe,level:k,useCompressionStream:W,dataDescriptor:M,zip64:O,rawExtraField:B,Xe:V,Ye:q}}}(e,r,l),{comment:p}=f,m=l[Gi];e.Ee.set(r,fe);const h=e.xe,y={};let E,F;f.Ge.keepOrder&&(y.Qe=new g(e=>E=e)),e.xe=y;try{const{Ge:t}=f;0==t.level||t.compressionMethod!==fe||t.Ze||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;return!(!n||n.requiresModule)||!(!mr(t)&&(r=t,!pr(r,cr)))||!!n&&await Br();var r}(dt())||(t.level=0,yi(e.warnings,hc,r));const o=await async function(e,t,{Ge:r},o){if(r.Ze&&!t&&!Kc(e,o,Pi))throw new d(nc);let i;if(t){if(t=new ui(t),await wi(t),!t.readUint8Array&&!t.readable)throw new d(rc);({size:i}=t)}return n.assign({reader:t},function(e,t,n,r,o){const{Ze:i,je:a,zipCrypto:s,password:c,rawPassword:l,encryptionStrength:u}=r;let{dataDescriptor:f,zip64:w,level:p,compressionMethod:m}=r,h=0,y=0,g=!1;if(i&&t){if(y=o[Si],y===fe)throw new d($s);if(m===fe)throw new d(ec)}const E=!0===w,F=Kc(e,o,Oi);if(t&&a&&!F&&al(c,l))throw new d(Ys);const b=t&&(Boolean(c&&al(c)||l&&al(l))||a&&F);t||(p=0,m=0);const S=ea(b,s,u);t&&(i?(o.uncompressedSize=y,h=n===fe?$c(y)+S:n+(a?0:S)):n===fe?(f=!0,(w||w===fe)&&(w=g=!0,h=4294967296)):(o.uncompressedSize=y=n,h=(el(m,p)?$c(y):y)+S));const R=!(b||t&&(0!==n||i)||el(m,p));R&&Kc(e,o,ve)===fe&&(f=!1);const z=E||g||y>=M,D=E||h>=M;if(z||D){if(!1===w)throw new d(_s);w=!0}return w=w||!1,{_e:h,Ge:{dataDescriptor:f,$e:R,zip64:w,We:E,et:g,ke:z,Ue:D,uncompressedSize:y,level:p,compressionMethod:m,encrypted:b}}}(e,Boolean(t),i,r,o))}(e,c,f,l);({reader:c}=o);const p=Wc(e.writer),m=kc(e.writer);let b=l.crc32===fe?l[Ji]:l.crc32;const S=o.Ge.encrypted&&!t.zipCrypto;if(t.Ze&&!t.je&&S&&(b=fe),t.Ze&&c&&!S&&b===fe)throw new d(tc);const R=function(e){const{rawFilename:t,lastModDate:n,rawLastModDate:r,lastAccessDate:o,creationDate:i,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:f,dataDescriptor:w,directory:p,rawExtraField:m,Xe:h,encryptionStrength:y,extendedTimestamp:g,ntfsTimestamp:E,Ze:F,encrypted:b,ke:S,Ue:R,uncompressedSize:z,et:D,crc32:x}=e;let{version:T,compressionMethod:A}=e;const v=!p&&el(A,c);let C;const N=F||!v,I=l&&(e.bufferedWrite||!w||!S&&!R||N&&!D),U=I||l&&w&&(S||R);if(l&&(S||R)){const e=20,t=Uc(e);if(t.nt(1),t.nt(e-4),C=t.ot,I&&(t.it(z),N)){const e=ea(b,u,y);t.it(F?0:z+e)}}else C=ge;let k,W,M,O,V,q,P;if(b&&!u){const e=Uc(al(gc)+2);e.nt(Q),e.st(gc),k=e.ot,k[8]=y}else k=ge;if(g){const e=Zc(n),t=(Y=e)>=js&&Y<=Ks;if(t){const t=9+(o?4:0)+(i?4:0),n=Uc(t);O=1+(o?2:0)+(i?4:0),V=e,n.nt(_),n.nt(t-4),n.ct(O),n.lt(e),o&&n.lt(jc(Zc(o))),i&&n.lt(jc(Zc(i))),M=n.ot}else M=ge;if(E===fe?!t||Boolean(o||i):E)try{const e=Gc(n),t=Uc(36);t.nt(10),t.nt(32),t.ut(4),t.nt(1),t.nt(24),t.it(e),t.it(o?Gc(o):e),t.it(i?Gc(i):e),W=t.ot}catch{W=ge}else W=ge}else W=M=ge;var Y;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=Ec||t===fe&&n===fe)if(r!=Fc||t===fe&&n===fe)q=P=ge;else{const e=Uc(8);e.nt(te),e.nt(4),e.nt((t===fe?0:t)&L),e.nt((n===fe?0:n)&L),q=e.ot;const r=Uc(4);r.nt(te),r.nt(0),P=r.ot}else{const e=Ic(t===fe?0:t),r=Ic(n===fe?0:n),o=3+e.length+r.length,i=Uc(4+o);i.nt(ee),i.nt(o),i.ct(1),i.ct(e.length),i.st(e),i.ct(r.length),i.st(r),q=P=i.ot}}catch{q=P=ge}A===fe&&(A=v?8:0),T===fe&&(T=0!=A||p||b?20:10);const{Ke:H}=e;v&&H!==fe&&(T=T>H?T:H),l&&(T=T>45?T:45),b&&!u&&(T=T>51?T:51,F&&x!==fe&&(k[4]=1),nl(It(k),9,A),A=99);const J=U?al(C):0,G=J+al(k,M,W,q,m,h);if(G+(e[Ne]?67:0)>L)throw new d(Zs);const Z=new s(2e3*a.ceil(a.floor(n.getTime()/1e3)/2)),j=Z<ue?ue:Z>le?le:Z,K=al(M)?new s(1e3*Zc(n)):al(W)?n:j,{Ne:X,Ie:$,rawLastModDate:ne}=sl({version:T,bitFlag:ll(c,f,w,b,A),compressionMethod:A,uncompressedSize:z,lastModDate:j,rawLastModDate:r,rawFilename:t,Ue:R,ke:S,extraFieldLength:G}),re=Uc(ce+al(t)+G),oe=re.ot,ie=It(oe);return re.lt(B),re.st(X),re.st(t),U&&re.st(C),re.st(k),re.st(M),re.st(W),re.st(q),re.st(m),re.st(h),w&&(R||rl(ie,18,0),S||rl(ie,22,0)),{ft:oe,wt:ie,Ne:X,Ie:$,lastModDate:K,ht:K===j&&Z.getTime()!=j.getTime(),rawLastModDate:ne,encrypted:b,compressed:v,version:T,compressionMethod:A,yt:O,gt:V,Le:ge,Et:J,Be:M,Ve:W,qe:q,Pe:P,Oe:k,extraFieldLength:G}}(l=n.assign({},l,u.Ge,f.Ge,o.Ge,{signature:l[Ji],crc32:b,offset:e.offset-p,diskNumberStart:m,[Ne]:e.options[Ne]}));R.ht&&yi(e.warnings,yc,r);const D=function({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r,o=ge,i=0,a=e?20:12;return n&&(a+=4),t&&(o=new w(a),r=It(o),n&&(i=4,rl(r,0,q))),{Ft:o,bt:r,St:i}}(l),x=al(R.ft,D.Ft);F=await async function(e,t,r,o,a){const{Ee:s,writer:c}=e,{keepOrder:l,dataDescriptor:u,$e:f,signal:w}=a,{Rt:p,he:m,zt:h,Dt:y}=o,E=e.options[Ne];let F,b,S,R,D,x,T,A=m,v=0;const C=l&&h?h.Qe:fe;s.set(t,A);try{a.bufferedWrite||!l||e.ve||e.ze||e.De||!u&&!f?(F=!0,e.ze++,T=a.createTempStream?await a.createTempStream():new z(fe,fe,{highWaterMark:de}),T.size=0,await wi(c)):(b=!0,e.De++,T=c,await C,await N()),await wi(T);const m=Wc(c);e.ge&&!F&&await Yc(e,c),E&&!F&&Nc(o,e.offset-m);const{ft:h}=p;F||await I();const y=kc(c),S=Lc(e,c);if(A.diskNumberStart=y,F||(D=!0,x=c.size,await Hc(T,h)),A=await async function(e,t,{diskNumberStart:r,Qe:o},a,s,c){const{Rt:l,xt:u,Tt:f}=a,{Ne:w,Ie:p,lastModDate:m,rawLastModDate:h,encrypted:y,compressed:g,version:E,compressionMethod:F,Le:b,Et:S,Be:R,yt:z,gt:D,Ve:x,qe:T,Pe:A,Oe:v}=l,{Ft:C}=u,{rawFilename:N,lastAccessDate:I,creationDate:U,password:k,rawPassword:W,level:L,useUnicodeFileNames:B,zip64:V,We:q,ke:P,Ue:Y,zipCrypto:H,dataDescriptor:J,directory:G,executable:Z,versionMadeBy:j,rawComment:K,rawExtraField:X,Ye:Q,useWebWorkers:_,onstart:$,onprogress:ee,onend:te,signal:ne,encryptionStrength:re,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:ae,externalFileAttributes:se,uid:ce,gid:le,unixMode:ue,symlink:de,setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:ge,useCompressionStream:Ee,Ze:Fe,je:be,format:Se,codecURI:Re}=c,ze={Qe:o,versionMadeBy:j,zip64:V,We:q,directory:Boolean(G),executable:Boolean(Z),filenameUTF8:Boolean(B),rawFilename:N,commentUTF8:Boolean(B),rawComment:K,Le:b,Et:S,Be:R,Ve:x,qe:T,Pe:A,Oe:v,rawExtraField:X,Ye:Q,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:ae,externalFileAttributes:se,diskNumberStart:r,uid:ce,gid:le,unixMode:ue,symlink:Boolean(de),setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:ge};let{crc32:De,uncompressedSize:xe}=c,Te=0;Fe||(xe=0);const{writable:Ae}=t;if(e){const n=e.size,r=Pn(hi(e,{size:n})),o={options:{codecType:Cr,inputSize:n,level:L,rawPassword:W,password:k,encryptionStrength:re,zipCrypto:y&&H,passwordVerification:y&&H&&h>>8&O,computeCrc32:!Fe,compressed:g&&!Fe,encrypted:y&&!be,useWebWorkers:_,useCompressionStream:Ee,format:Se,codecURI:Re,compressionMethod:F},config:s,A:{signal:ne,size:n,onstart:$,onprogress:ee,onend:te}};try{const e=await uo({readable:r,writable:Ae},o);if(Te=e.outputSize,t.size+=Te,Ze(ne),Fe||(xe=e.inputSize,y&&!H||(De=e.crc32)),!Y&&Te>=M||!P&&xe>=M)throw new d(_s)}catch(e){const{outputSize:n}=o;throw n!==fe?t.size+=n:Ut(e)&&e.outputSize!==fe&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,Rt:r,xt:o},{zip64:a,zipCrypto:s,Ze:c,dataDescriptor:l}){const{Ie:u,encrypted:f}=r,{bt:d,St:w}=o;f&&!s&&!c||e===fe||(rl(u,10,e),l&&rl(d,w,e)),a?l&&(ol(d,w+4,i(t)),ol(d,w+12,i(n))):(rl(u,14,t),rl(u,18,n),l&&(rl(d,w+4,t),rl(d,w+8,n)))}({crc32:De,compressedSize:Te,uncompressedSize:xe,Rt:l,xt:u},c),J&&await Hc(t,C),n.assign(ze,{uncompressedSize:xe,compressedSize:Te,lastModDate:m,rawLastModDate:h,creationDate:U,lastAccessDate:I,encrypted:Boolean(y),zipCrypto:Boolean(H),size:f+Te,compressionMethod:F,version:E,Ne:w,Ie:p,signature:De,crc32:!y||H||Fe?De:fe,yt:z,gt:D,ke:P,Ue:Y}),ze}(r,T,A,o,dt(),a),F||(D=!1),s.set(t,A),A.filename=t,F){if(await g.all([T.writable.getWriter().close(),C]),await N(),e.ge&&await Yc(e,c),R=!0,x=c.size,await I(),A.diskNumberStart=kc(c),A.offset=Lc(e,c),E){const t=o.Tt;Nc(o,e.offset-Wc(c)),A.size+=o.Tt-t}!function({rawFilename:e,encrypted:t,zip64:n,Et:r,crc32:o,compressedSize:a,uncompressedSize:s,ke:c,Ue:l},u,{dataDescriptor:f,Ze:d}){if(f||((!t||d&&o!==fe)&&rl(u,14,o),l||rl(u,18,a),c||rl(u,22,s)),n&&r){const t=ce+al(e)+4;ol(u,t,i(s)),ol(u,t+8,i(a))}}(A,p.wt,a),await Hc(c,p.ft),await Jc(T.readable,c,w,e=>v+=e),c.size+=T.size,R=!1}else A.diskNumberStart=y,A.offset=S;return e.offset+=A.size,A}catch(n){if(R||D){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-x,F&&(e.offset+=v)}throw s.delete(t),n}finally{if(F&&e.ze--,b&&e.De--,y&&y(C),S&&S(),F&&T&&T.dispose)try{await T.dispose()}catch{}}async function N(){e.ve=!0;const{Ce:t}=e;e.Ce=new g(t=>S=()=>{e.ve=!1,t()}),await t}async function I(){Mc(c,al(p.ft))&&await c.closeDisk()}}(e,r,c,{Rt:R,xt:D,Tt:x,he:y,zt:h,Dt:E},l)}catch(t){throw e.Ee.delete(r),t}finally{E&&E(h&&h.Qe)}return n.assign(F,{name:r,comment:p,extraField:m}),new _i(F)}(e,r,l,u)}catch(t){throw e.Fe.delete(r),t}finally{const e=Rc.shift();e?e():Sc--}}(u,e,r,l);f.add(p);const m=()=>f.delete(p);return g.prototype.then.call(p,m,m),Tc(u,p)}remove(e){const{Fe:t,Ee:n}=this;if(typeof e==he&&(e=n.get(e)),e&&e.filename!==fe){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=ge,n={}){const r=this,{Se:o,writer:a}=this,{writable:s}=a;if(r.Te)return xc(a);if(!(e instanceof w))throw new d(ks);if(al(e)>L)throw new d(Us);for(;o.size;)await g.allSettled(t.from(o));await g.allSettled(r.Re.map(e=>e.At));const c=r.Re.filter(e=>e.vt&&!e.Ct);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.Ct=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const{Nt:o,It:a}=function(e){let t=0,n=!1;for(const[,r]of e){const{rawFilename:e,Oe:o,rawComment:i,Ve:a,Pe:s,rawExtraField:c,Ye:l,yt:u,gt:f,We:w,uncompressedSize:p,compressedSize:m}=r;let{ke:h,Ue:y}=r;w||(h&&p<M&&(h=r.ke=!1),y&&m<M&&(y=r.Ue=!1)),n=n||h||y;const g=r.offset>=M,E=r.diskNumberStart>=L;let F,b;if(g||E||h||y){const e=4+(h?8:0)+(y?8:0)+(g?8:0)+(E?4:0),t=Uc(e);t.nt(1),t.nt(e-4),h&&t.it(p),y&&t.it(m),g&&t.it(r.offset),E&&t.lt(r.diskNumberStart),F=t.ot}else F=ge;if(r.Le=F,r.Ut=g,r.Me=E,f===fe)b=ge;else{const e=Uc(9);e.nt(_),e.nt(5),e.ct(u),e.lt(f),b=e.ot}r.Be=b;const S=al(F,o,a,s,b,c,l);if(S>L)throw new d(Zs);t+=Z+al(e,i)+S}return{Nt:t,It:n}}(e.Ee),{kt:s,Wt:c,Mt:l}=await async function(e,n,r){const{Ee:o,writer:i}=e,a=new w(n);await wi(i);let s=0,c=0,l=kc(i),u=Wc(i),f=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:d,Le:w,Oe:p,Be:m,Ve:h,Pe:y,rawExtraField:g,Ye:E,rawComment:F,versionMadeBy:b,Ne:S,Ie:R,ke:z,Ue:D,Me:x,Ut:T,internalFileAttributes:A,externalFileAttributes:v,diskNumberStart:C,uncompressedSize:N,compressedSize:I}=n,U=al(w,p,m,h,y,g,E),k=Z+al(d,F)+U;Mc(i,s+k-c)&&(await Hc(i,a.slice(c,s)),c=s,f=0,await i.closeDisk()),0==e&&(l=kc(i),u=Wc(i)),z||rl(R,18,N),D||rl(R,14,I),(T||x)&&n.version<45&&nl(R,0,45);const W=Uc(k);if(W.lt(Y),W.nt(b),W.st(S.subarray(0,24)),W.nt(U),W.nt(al(F)),W.nt(x?L:C),W.nt(A),W.lt(v),W.lt(T?M:t),W.st(d),W.st(w),W.st(p),W.st(m),W.st(h),W.st(y),W.st(g),W.st(E),W.st(F),il(a,W.ot,s),s+=k,f++,r.onprogress)try{await r.onprogress(e+1,o.size,new _i(n))}catch{}}return await Hc(i,c?a.slice(c):a),{kt:{diskNumber:l,diskOffset:u},Wt:{diskNumber:kc(i),Lt:f},Mt:a}}(e,o,r),u=await async function(e,t,n){const r=Qc(e,n,"signCentralDirectory");if(r){const n=await r(t),o=al(n);if(o>L)throw new d(wc);const i=Uc(6+o);i.lt(P),i.nt(o),i.st(n);const{writer:a}=e;return Mc(a,al(i.ot))&&await a.closeDisk(),await Hc(a,i.ot),6+o}return 0}(e,l,r);await async function(e,t,n,r){const{writer:o}=e,{kt:a,Wt:s,Ot:c,It:l}=r;let{Nt:u}=r,f=e.Ee.size,w=a.diskNumber,p=Lc(e,a);const m=al(t);if(m>L)throw new d(Us);let h=Kc(e,n,Li),y=kc(o);if(Mc(o,(h?98:j)+m)&&y++,p>=M||u>=M||f>=L||y>=L){if(!1===h)throw new d(_s);h=!0}else h===fe&&l&&(h=!0);const g=Uc(h?98:j);Mc(o,al(g.ot)+m)&&await o.closeDisk(),y=kc(o);let E=y==s.diskNumber?s.Lt:0;h&&(g.lt(J),g.it(44),g.nt(45),g.nt(45),g.lt(y),g.lt(w),g.it(E),g.it(f),g.it(u),g.it(p),g.lt(G),g.lt(y),g.it(i(Lc(e,o))+i(u)+i(c)),g.lt(y+1),Kc(e,n,"supportZip64SplitFile",!0)&&(y=L,w=L),E=L,f=L,p=M,u=M),g.lt(H),g.nt(y),g.nt(w),g.nt(E),g.nt(f),g.lt(u),g.lt(p),g.nt(m),await Hc(o,g.ot),m&&await Hc(o,t)}(e,n,r,{kt:s,Wt:c,Nt:o,Ot:u,It:a})}(r,e,n),r.Te=!0,!di(a)&&Kc(r,n,xe)||await s.getWriter().close(),xc(a)}[Ee](){return this.close()}}class Dc extends g{then(e,t){const{Bt:n}=this;return n&&(n.Ct=!0),super.then(e,t)}}function xc(e){return e.getData?e.getData():e.writable}function Tc(e,t){const r=new Dc((e,n)=>g.prototype.then.call(t,e,n)),o={};return r.Bt=o,o.At=g.prototype.then.call(r,fe,e=>n.assign(o,{vt:!0,error:e})),e.Re.push(o),r}async function Ac(e,t){try{await e.writer.writable.abort(t)}catch{}}function vc(e,t,n){e.Se.add(t),t.catch(e=>{try{n(e)}catch{}})}function Cc(e){if(!e)return ge;if(!(e instanceof c))throw new d(Hs);let t=0,n=0;e.forEach((e,n)=>{if(Xe(n,L,Js),!(e instanceof w))throw new d(Gs);if(al(e)>L)throw new d(Zs);t+=4+al(e)});const r=new w(t),o=It(r);return e.forEach((e,t)=>{nl(o,n,t),nl(o,n+2,al(e)),il(r,e,n+4),n+=4+al(e)}),r}function Nc(e,t){const{Rt:n}=e;let{ft:r,extraFieldLength:o}=n,i=64-(t+al(r))%64;i<4&&(i+=64);const a=new w(i),s=It(a);nl(s,0,$),nl(s,2,i-4);const c=r;n.ft=r=new w(al(c)+i),il(r,c),il(r,a,al(c));const l=It(r);nl(l,28,o+i),n.wt=l,e.Tt+=i}function Ic(e){const t=new w(4);It(t).setUint32(0,e,!0);let n=4;for(;n>1&&0===t[n-1];)n--;return t.subarray(0,n)}function Uc(e){const t=new w(e),n=It(t);let r=0;return{ot:t,ct:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},nt:e=>{nl(n,r,e),r+=2},lt:e=>{rl(n,r,e),r+=4},it:e=>{ol(n,r,i(e)),r+=8},st:e=>{il(t,e,r),r+=al(e)},ut:e=>r+=e}}function kc(e){const{diskNumber:t=0}=e;return t}function Wc(e){const{diskOffset:t=0}=e;return t}function Mc(e,t){const{availableSize:n=de}=e;return t>n}function Lc(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.be:0)}function Oc(e){const t=It(e);let n=0;for(;n+4<=al(e);){const r=4+tl(t,n+2);if(1==tl(t,n))return Oc(Ct(e.subarray(0,n),e.subarray(a.min(n+r,al(e)))));n+=r}return e}async function Bc(e,t,n,r){if(r>0){const{writer:o}=e;let i=0;try{await Jc(hi(t,{offset:n,size:r}),o,fe,e=>i+=e)}catch(t){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}throw t}finally{o.size+=i,e.offset+=i}}}async function Vc(e,t){const n=await mi(e,t,ce);if(al(n)<ce)return ce;const r=It(n);return ce+tl(r,26)+tl(r,28)}function qc(e,{offset:t,diskNumberStart:n}){return t+(e.ie?e.ie(n):0)}function Pc(){const e=new w(4);return rl(It(e),0,V),e}async function Yc(e,t){delete e.ge,await Hc(t,Pc()),e.offset+=4}async function Hc(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=al(t),await r.write(t)}finally{r.releaseLock()}}async function Jc(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new x({async write(e){await o.ready,await o.write(e),r(al(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function Gc(e){if(e){const t=(i(e.getTime())+i(116444736e5))*i(1e4);return t<Xs?Xs:t>Qs?Qs:t}}function Zc(e){return a.floor(e.getTime()/1e3)}function jc(e){return a.min(Ks,a.max(js,e))}function Kc(e,t,n,r){const o=t[n]===fe?e.options[n]:t[n];return o===fe?r:o}function Xc(e,t,n,r){const i=Kc(e,t,n,r);if(null===i)return r;if(i!==fe&&(typeof i.getTime!=pe||o.isNaN(i.getTime())))throw new d(Ls);return i}function Qc(e,t,n){return Je(Kc(e,t,n))}function _c(e,t,n,r){return _e(Kc(e,t,n,r))}function $c(e){return e+5*(a.floor(e/16383)+1)}function el(e,t){return e===fe?t===fe||t>0:0!==e}function tl(e,t){return e.getUint16(t,!0)}function nl(e,t,n){e.setUint16(t,n,!0)}function rl(e,t,n){e.setUint32(t,n,!0)}function ol(e,t,n){e.setBigUint64(t,n,!0)}function il(e,t,n){e.set(t,n)}function al(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function sl({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:a,rawFilename:s,Ue:c,ke:l,extraFieldLength:u}){const f=Uc(26),d=f.ot,w=It(d);if(f.nt(e),f.nt(t),f.nt(n),a===fe){const e=new m(1),t=It(e);nl(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),nl(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),a=e[0]}return f.lt(a),f.ut(4),c||o!==fe?f.lt(c?M:o):f.ut(4),l||r!==fe?f.lt(l?M:r):f.ut(4),f.nt(al(s)),f.nt(u),{Ne:d,Ie:w,rawLastModDate:a}}function cl(e){return e.every(e=>e>=32&&e<=126)}function ll(e,t,n,r,o){let i=0;return t&&(i|=ne),n&&(i|=8),8!=o&&9!=o||(e>=0&&e<=3&&(i|=6),e>3&&e<=5&&(i|=4),9==e&&(i|=2)),r&&(i|=1),i}function ul(e,t){if(!e)return!1;const{supportedFormats:n}=e;return n?n.includes(t):pr(e,t)}const fl=1048576,dl=".zip.js-temp",wl=1048576,pl=1048576,ml=".zip.js-temp",hl="createSyncAccessHandle is only available in dedicated workers";try{gt({baseURI:void 0===b&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===b?location.href:W&&"SCRIPT"===W.tagName.toUpperCase()&&W.src||new f("zip-legacy.min.js",b.baseURI).href})}catch{}At(gt),e.BlobReader=qo,e.BlobWriter=Po,e.Data64URIReader=class extends Lo{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{Vt:e,qt:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{qt:n,Vt:r}=this,o=new w(t),i=4*a.floor(e/3),s=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);let l=0;for(let e=c;e<c+t&&e<s.length;e++)o[e-c]=s.charCodeAt(e),l++;return l<o.length?o.subarray(0,l):o}},e.Data64URIWriter=class extends Oo{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",Pt:""})}writeUint8Array(e){const t=this;let n,o=t.Pt;const i=t.Pt.length;for(t.Pt="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.Pt+=r.fromCharCode(e[n]);o.length>2?t.data+=R(o):t.Pt=o+t.Pt}getData(){return this.data+R(this.Pt)}},e.ERR_ABORTED=He,e.ERR_AMBIGUOUS_ARCHIVE=da,e.ERR_BAD_FORMAT=ta,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=oa,e.ERR_CODEC_OUT_OF_MEMORY=or,e.ERR_DUPLICATED_NAME=Is,e.ERR_ENCRYPTED=sa,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=wa,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=fa,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=ra,e.ERR_EOCDR_NOT_FOUND=na,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=aa,e.ERR_HTTP_RANGE=zo,e.ERR_HTTP_RESOURCE_CHANGED=Do,e.ERR_HTTP_STATUS=Ro,e.ERR_INVALID_AUTHENTICATION_CODE=un,e.ERR_INVALID_BASE_URI=tt,e.ERR_INVALID_CODEC_DEFINITION=Jn,e.ERR_INVALID_CODEC_MODULE=Zn,e.ERR_INVALID_COMMENT=Us,e.ERR_INVALID_COMMENT_TYPE=ks,e.ERR_INVALID_COMPRESSED_DATA=rr,e.ERR_INVALID_CRC32=ir,e.ERR_INVALID_DATE=Ls,e.ERR_INVALID_ENCRYPTION_STRENGTH=Vs,e.ERR_INVALID_ENTRY=pc,e.ERR_INVALID_ENTRY_COMMENT=Ws,e.ERR_INVALID_ENTRY_COMMENT_TYPE=Ms,e.ERR_INVALID_ENTRY_NAME=Os,e.ERR_INVALID_EXTRAFIELD=Hs,e.ERR_INVALID_EXTRAFIELD_DATA=Zs,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=Gs,e.ERR_INVALID_EXTRAFIELD_TYPE=Js,e.ERR_INVALID_FILENAME_VALIDATION=ha,e.ERR_INVALID_FUNCTION_OPTION=Ve,e.ERR_INVALID_GID=ac,e.ERR_INVALID_LEVEL=dc,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=ya,e.ERR_INVALID_MAX_WORKERS=et,e.ERR_INVALID_MSDOS_ATTRIBUTES=uc,e.ERR_INVALID_MSDOS_DATA=fc,e.ERR_INVALID_PASSWORD=ln,e.ERR_INVALID_PASSWORD_TYPE=Pe,e.ERR_INVALID_PASS_THROUGH_VALUE=Ye,e.ERR_INVALID_READER=rc,e.ERR_INVALID_SIGNAL=qe,e.ERR_INVALID_SIGNATURE_DATA=wc,e.ERR_INVALID_STRICTNESS=ma,e.ERR_INVALID_UID=ic,e.ERR_INVALID_UNCOMPRESSED_SIZE=nr,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=cc,e.ERR_INVALID_UNIX_ID_SIZE=lc,e.ERR_INVALID_UNIX_MODE=sc,e.ERR_INVALID_URI=nt,e.ERR_INVALID_VERSION=Bs,e.ERR_ITERATOR_COMPLETED_TOO_SOON=xo,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=ia,e.ERR_OVERLAPPING_ENTRY=ua,e.ERR_RESERVED_COMPRESSION_METHOD=Gn,e.ERR_SPLIT_ZIP_FILE=la,e.ERR_UNDEFINED_COMPRESSION_METHOD=ec,e.ERR_UNDEFINED_CRC32=tc,e.ERR_UNDEFINED_READER=nc,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=$s,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=pa,e.ERR_UNSUPPORTED_COMPRESSION=jn,e.ERR_UNSUPPORTED_CONTEXT=hl,e.ERR_UNSUPPORTED_CRYPTO_API=dn,e.ERR_UNSUPPORTED_ENCRYPTION=ca,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=Ys,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=qs,e.ERR_UNSUPPORTED_FORMAT=_s,e.ERR_UNSUPPORTED_SPLIT_USDZ=Ps,e.ERR_UNSUPPORTED_UINT64=ga,e.ERR_WORKER_STARTUP_TIMEOUT=kr,e.ERR_WRITER_NOT_INITIALIZED=To,e.ERR_WRITER_SIZE_NOT_WRITABLE=Ao,e.ERR_ZIP_CRYPTO_LAST_MOD_DATE=mc,e.ERR_ZIP_NOT_EMPTY=oc,e.HttpRangeReader=class extends si{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=si,e.Reader=Lo,e.SplitDataReader=ci,e.SplitDataWriter=li,e.TextReader=class extends qo{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends Po{constructor(e){super(),n.assign(this,{encoding:e,Yt:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,Yt:t}=this,n=await super.getData();return n.text&&t?n.text():function(e,t){return So(e,t,!1)}(new w(await n.arrayBuffer()),e)}},e.Uint8ArrayReader=class extends Lo{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{ot:e,size:e.length})}readUint8Array(e,t){return this.ot.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Oo{constructor(e){super(),this.Ht=e||262144}init(e=0){n.assign(this,{offset:0,ot:new w(e>0?e:this.Ht)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.ot.length){let e=t.ot.length?2*t.ot.length:t.Ht;for(;e<n;)e*=2;const r=t.ot;t.ot=new w(e),t.ot.set(r)}t.ot.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.ot.length?this.ot:this.ot.slice(0,this.offset)}},e.VERSION="2.20.0",e.WARNING_APPENDED_DATA=Da,e.WARNING_CLAMPED_LAST_MODIFICATION_DATE=yc,e.WARNING_COMPRESSED_PATCHED_DATA=ba,e.WARNING_COMPRESSION_UNAVAILABLE=hc,e.WARNING_DUPLICATE_FILENAME=Na,e.WARNING_MALFORMED_EXTRA_FIELD=Sa,e.WARNING_MISMATCHED_CENTRAL_DIRECTORY_OFFSET=va,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=Wa,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=Ma,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=La,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME=ka,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=Ia,e.WARNING_MISSING_ZIP64_EXTRA_FIELD=Ca,e.WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY=Ua,e.WARNING_PREPENDED_CENTRAL_DIRECTORY=Ta,e.WARNING_PREPENDED_DATA=xa,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=Aa,e.WARNING_UNKNOWN_VERSION=Fa,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=Ra,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=Ea,e.WARNING_WRAPPED_ENTRIES_COUNT=za,e.Writer=Oo,e.ZipReader=Ja,e.ZipReaderStream=Ga,e.ZipWriter=zc,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new z;this.readable=t,this.zipWriter=new zc(n,e),this.Se=new l}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:o}=new z({start(e){n=e},flush:()=>{!async function(){try{await t.close()}catch(e){await Ac(t,e)}}()}});return vc(this,this.zipWriter.add(e,r),e=>n.error(e)),{readable:this.readable,writable:o}}writable(e){let t;const{readable:n,writable:r}=new z({start(e){t=e}});return vc(this,this.zipWriter.add(e,n),e=>t.error(e)),r}async close(e,n={}){const{zipWriter:r}=this,o=(await g.allSettled(t.from(this.Se))).filter(e=>"rejected"==e.status).map(e=>e.reason);if(o.length){const[e]=o;try{e.entryErrors=o}catch{}throw await Ac(r,e),e}try{return await r.close(e,n)}catch(e){throw await Ac(r,e),e}}},e.configure=function(e){n.assign(ft,mt(yt(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=wl}=e;return function(){const e=[];let n,r,o,i=0,a=!1;const s=new x({async write(o){a?await n.write(o):(e.push(o),i+=o.length,i>t&&await async function(){const t=new z;r=Yn(t.readable),n=t.writable.getWriter(),a=!0;for(const t of e)await n.write(t);e.length=0}())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:s,readable:new D({async pull(t){if(a){if(!o){const e=await r;o=e.stream().getReader()}const{value:e,done:n}=await o.read();n?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){o&&await o.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(n){try{await n.abort()}catch{}n=null}r&&(r.catch(()=>{}),r=null),e.length=0}}}},e.createOPFSTempStream=function(e={}){const{thresholdBytes:n=fl,directoryName:r=dl,getDirectory:o=()=>v.storage.getDirectory()}=e;let i;function a(){return i||(i=g.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return function(){const e=[];let r,o,i,s,c=0,l=!1;const u=new x({async write(s){l?await i.write(s):(e.push(s),c+=s.length,c>n&&await async function(){const n=await a();r=S.randomUUID?S.randomUUID():t.from(S.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join(""),o=await n.getFileHandle(r,{create:!0}),i=(await o.createWritable()).getWriter(),l=!0;for(const t of e)await i.write(t);e.length=0}())},async close(){i&&(await i.close(),i=null)}});let f=0;return{writable:u,readable:new D({async pull(t){if(l){if(!s){const e=await o.getFile();s=e.stream().getReader()}const{value:e,done:n}=await s.read();n?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){s&&await s.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await a();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=pl,directoryName:r=ml,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d(hl);const i=o||(()=>v.storage.getDirectory());let s;function c(){return s||(s=g.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),s}return function(){const e=[];let r,o,i=0,s=!1,l=0,u=0;const f=new x({async write(a){s?(o.write(a,{at:l}),l+=a.length):(e.push(a),i+=a.length,i>n&&await async function(){const n=await c();r=S.randomUUID?S.randomUUID():t.from(S.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join("");const i=await n.getFileHandle(r,{create:!0});o=await i.createSyncAccessHandle(),s=!0;for(const t of e)o.write(t,{at:l}),l+=t.length;e.length=0}())},close(){o&&o.flush()}});let d=0;return{writable:f,readable:new D({pull(t){if(s){const e=l-u;if(e<=0)return void t.close();const n=new w(a.min(524288,e)),r=o.read(n,{at:u});r?(u+=r,t.enqueue(n.subarray(0,r))):t.close()}else d<e.length?t.enqueue(e[d++]):t.close()}},{highWaterMark:0}),dispose:async function(){if(o){try{o.close()}catch{}o=null}if(r){try{const e=await c();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=function(){return"application/octet-stream"},e.getRegisteredCodecs=$n,e.getSupportedCompressionMethods=function(){const{CompressionStream:e,DecompressionStream:t,CompressionStreamFallback:n,DecompressionStreamFallback:r}=dt(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:ul(n,ar)||ul(e,ar)||ul(e,cr),decompression:ul(r,ar)||ul(t,ar)||ul(t,cr),registered:!1},{compressionMethod:9,compression:!1,decompression:ul(r,sr)||ul(t,sr),registered:!1}];for(const e of $n()){const t=er(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==pe:fe,decompression:t?typeof t.DecompressionStream==pe:fe,registered:!0})}return o},e.isZipFile=Za,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:i,DecompressionStream:a,versionNeeded:s}=e;if(!o.isInteger(t)||t<0||t>L||typeof n!=he||!n.length)throw new d(Jn);if(Kn.includes(t))throw new d(Gn);const c=typeof i==pe||typeof a==pe;if(!(c||typeof r==he&&r.length))throw new d(Jn);Xn.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:s}),c&&tr(n,{CompressionStream:i,DecompressionStream:a})},e.resetConfiguration=function(){for(const e of ut)delete ft[e];n.assign(ft,ot)},e.terminateWorkers=async function(){await g.allSettled([mo(),...io.map(e=>(go(e),e.terminate()))]),Wr=fe,Mr=!1},e.unregisterCodec=function(e){const t=Xn.get(e);if(t){let n;Xn.delete(e),Xn.forEach(e=>n=n||e.format==t.format),n||Qn.delete(t.format)}}});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})}(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:o,BigInt:i,Math:a,Date:s,Map:c,Set:l,Response:u,URL:f,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:m,DataView:h,Blob:y,Promise:g,TextEncoder:E,TextDecoder:F,document:b,crypto:S,btoa:R,TransformStream:z,ReadableStream:D,WritableStream:x,CompressionStream:T,DecompressionStream:A,navigator:v,Worker:C,Symbol:N,setTimeout:I,clearTimeout:U,structuredClone:k}="undefined"!=typeof globalThis?globalThis:self;var W=void 0!==b?b.currentScript:null;const M=4294967295,L=65535,O=255,B=67324752,V=134695760,q=V,P=84233040,Y=33639248,H=101010256,J=101075792,Z=117853008,G=46,j=22,K=20,X=56,Q=39169,_=21589,$=6534,ee=30837,te=30805,ne=2048,re=8192,oe=61440,ie=16384,ae=2048,se=1024,ce="/",le=30,ue=new s(2107,11,31,23,59,58),fe=new s(1980,0,1),de=void 0,we=1/0,pe="Local file header not found",me="Overlapping entry found",he="Zip64 extra field not found",ye="undefined",ge="function",Ee="object",Fe="string",be="boolean",Se=new w,Re=N.asyncDispose||N(),ze="password",De="rawPassword",xe="passThrough",Te="signal",Ae="checkAmbiguity",ve="useWebWorkers",Ce="useCompressionStream",Ne="preventClose",Ie="level",Ue="useUnicodeFileNames",ke="dataDescriptor",We="offset",Me="usdz",Le="strictness",Oe="maxAppendedDataSize",Be="entry",Ve="filename",qe="comment",Pe="strict",Ye="balanced",He="tolerant",Je="compressed",Ze="Invalid option (must be a function)",Ge="Invalid signal (must be an AbortSignal instance)",je="Invalid password (password must be a string, rawPassword must be a Uint8Array)",Ke="Invalid passThrough option (must be a boolean or 'compressed')",Xe="The operation was aborted";function Qe(e){if(e&&typeof e!=ge)throw new d(Ze);return e}function _e(e){if(e&&(typeof e.addEventListener!=ge||typeof e.aborted!=be))throw new d(Ge);return e||de}function $e(e){if(e&&e.aborted)throw e.reason===de?new DOMException(Xe,"AbortError"):e.reason}function et(e,t){if(e&&typeof e!=Fe||t&&!(t instanceof w))throw new d(je)}function tt(e){if(e!==de&&typeof e!=be&&e!==Je)throw new d(Ke);return e}function nt(e,t,n){if(!o.isInteger(e)||e<0||e>t)throw new d(n)}function rt(e,t,n){e!==de&&nt(e,t,n)}function ot(e){return typeof e==Fe&&e.trim()?o(e):e}const it=262144,at="Invalid maxWorkers (must be an integer greater than 0)",st="Invalid baseURI (must be a string)",ct="Invalid URI (must be a string or a function returning a string)";let lt=2;try{typeof v!=ye&&v.hardwareConcurrency&&(lt=v.hardwareConcurrency)}catch{}const ut={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:it,maxWorkers:lt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof T!=ye&&T,DecompressionStream:typeof A!=ye&&A},ft="maxWorkers",dt="baseURI",wt=["wasmURI","workerURI"],pt=["chunkSize",ft,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],mt=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],ht=[dt,...wt,"useCompressionStream","useWebWorkers","transferStreams",...pt,...mt],yt={...ut};function gt(){return yt}function Et(e){return Ft(e.chunkSize)}function Ft(e){return e=ot(e),o.isInteger(e)&&e>=1?a.max(e,64):it}function bt(e){const t={};for(const n of ht){const r=e[n];r!==de&&(t[n]=St(n,r))}return t}function St(e,t){if(pt.includes(e)){if(t=ot(t),e==ft&&(!o.isInteger(t)||t<1))throw new d(at)}else if(mt.includes(e))Qe(t);else if(e==dt){if(t&&typeof t!=Fe)throw new d(st)}else if(wt.includes(e)&&t&&typeof t!=Fe&&typeof t!=ge)throw new d(ct);return t}function Rt(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===de&&r===de)return e;const o=n.assign({},e);return o.CompressionStreamFallback===de&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===de&&(o.DecompressionStreamFallback=r),o}function zt(e){const t=bt(Rt(e));n.assign(ut,t),n.assign(yt,t)}const Dt=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258],xt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],Tt=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],At=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],vt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],Ct=new w(288);Ct.fill(8,0,144),Ct.fill(9,144,256),Ct.fill(7,256,280),Ct.fill(8,280,288);const Nt=new w(30).fill(5);function It(e){const t=new p(16);for(const n of e)t[n]++;t[0]=0;const n=new p(17);for(let e=1;e<=15;e++)n[e+1]=n[e]+t[e];const r=new p(e.length);for(let t=0;t<e.length;t++)e[t]&&(r[n[e[t]]++]=t);return{o:t,symbols:r}}const Ut="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",kt=(Wt=()=>function(e){let t=0,n=0,r=0,o=new w(1024),i=0,a=0;for(;!a;){a=c(1);const e=c(2);if(0==e)l();else if(1==e)u(It(Ct),It(Nt));else{if(2!=e)throw new d("invalid deflate block type");u(...f())}}return o.subarray(0,i);function s(){if(t>=e.length)throw new d("unexpected end of deflate data");return e[t++]}function c(e){for(;r<e;)n|=s()<<r,r+=8;const t=n&(1<<e)-1;return n>>>=e,r-=e,t}function l(){n=0,r=0;const e=s()|s()<<8;t+=2,m(i+e);for(let t=0;t<e;t++)o[i++]=s()}function u(e,t){let n=p(e);for(;256!=n;){if(n<256)m(i+1),o[i++]=n;else{const e=n-257,r=Dt[e]+c(xt[e]),a=p(t),s=Tt[a]+c(At[a]);m(i+r);const l=i-s;for(let e=0;e<r;e++)o[i++]=o[l+e]}n=p(e)}}function f(){const e=c(5)+257,t=c(5)+1,n=c(4)+4,r=new w(19);for(let e=0;e<n;e++)r[vt[e]]=c(3);const o=It(r),i=new w(e+t);let a=0;for(;a<i.length;){const e=p(o);if(e<16)i[a++]=e;else if(16==e){const e=i[a-1];let t=c(2)+3;for(;t--;)i[a++]=e}else a+=17==e?c(3)+3:c(7)+11}return[It(i.subarray(0,e)),It(i.subarray(e))]}function p(e){const{o:t,symbols:n}=e;let r=0,o=0,i=0;for(let e=1;e<=15;e++){r|=c(1);const a=t[e];if(r-o<a)return n[i+(r-o)];i+=a,o=o+a<<1,r<<=1}throw new d("invalid huffman code")}function m(e){if(o.length<e){let t=2*o.length;for(;t<e;)t*=2;const n=new w(t);n.set(o.subarray(0,i)),o=n}}}(function(e){const t=(e=r(e).replace(/[^A-Za-z0-9+/=]/g,"")).length,n=[];for(let r=0;r<t;r+=4){const t=Ut.indexOf(e[r])<<18|Ut.indexOf(e[r+1])<<12|(63&Ut.indexOf(e[r+2]))<<6|63&Ut.indexOf(e[r+3]);n.push(t>>16&255),"="!==e[r+2]&&n.push(t>>8&255),"="!==e[r+3]&&n.push(255&t)}return new w(n)}("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")),e=>e({workerURI:e=>{const t="text/javascript";let n=Wt();if("string"==typeof n&&(n=(new E).encode(n)),e){const e=new y([n],{type:t});return f.createObjectURL(e)}return"data:"+t+";base64,"+function(e){let t="";const n=e.length;let r=0;for(;r+2<n;r+=3){const n=e[r]<<16|e[r+1]<<8|e[r+2];t+=Ut[n>>18&63]+Ut[n>>12&63]+Ut[n>>6&63]+Ut[63&n]}const o=n-r;if(1===o){const n=e[r]<<16;t+=Ut[n>>18&63]+Ut[n>>12&63]+"=="}else if(2===o){const n=e[r]<<16|e[r+1]<<8;t+=Ut[n>>18&63]+Ut[n>>12&63]+Ut[n>>6&63]+"="}return t}(n)}}));var Wt;function Mt(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function Lt(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function Ot(e){return new h(e.buffer,e.byteOffset,e.byteLength)}function Bt(e){return Boolean(e)&&"object"==typeof e}const Vt=[[],[],[],[],[],[],[],[]];for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=1&t?t>>>1^3988292384:t>>>1;Vt[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){const n=Vt[t-1][e];Vt[t][e]=n>>>8^Vt[0][255&n]}const[qt,Pt,Yt,Ht,Jt,Zt,Gt,jt]=Vt;class Kt{constructor(e){this.l=e||-1}append(e){let t=0|this.l;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const o=new h(e.buffer,e.byteOffset,n),i=n-8;for(;r<=i;r+=8){const e=t^o.getInt32(r,!0),n=o.getInt32(r+4,!0);t=jt[255&e]^Gt[e>>>8&255]^Zt[e>>>16&255]^Jt[e>>>24&255]^Ht[255&n]^Yt[n>>>8&255]^Pt[n>>>16&255]^qt[n>>>24&255]}}for(;r<n;r++)t=t>>>8^qt[255&(t^e[r])];this.l=t}get(){return~this.l}}class Xt extends z{constructor(){let e;const t=new Kt;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function Qt(e){if(typeof E==ye){e=unescape(encodeURIComponent(e));const t=new w(e.length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new E).encode(e)}const _t=64,$t=20,en=new w([128]),tn=new w(1),nn=new Int32Array([1732584193,4023233417,2562383102,271733878,3285377520]),rn=new w(256),on=new Int32Array(256),an=new Int32Array(256),sn=new Int32Array(256),cn=new Int32Array(256);let ln=!1;function un(e){const t=function(){const e=new Int32Array(nn),t=new Int32Array(16),n=new w(_t),r=new h(n.buffer),o=new w(8);let i=0,s=0;return{update:c,digest:function(){const t=8*s,n=a.floor(t/4294967296),r=t>>>0;for(c(en,0,1);56!=i;)c(tn,0,1);o[0]=n>>>24,o[1]=n>>>16,o[2]=n>>>8,o[3]=n,o[4]=r>>>24,o[5]=r>>>16,o[6]=r>>>8,o[7]=r,c(o,0,8);const l=new w($t),u=new h(l.buffer);for(let t=0;t<e.length;t++)u.setInt32(4*t,e[t]);return e.set(nn),i=0,s=0,l}};function c(e,t,o){const a=t+o;if(s+=o,i){for(;t<a&&i<_t;)n[i++]=e[t++];i==_t&&(l(r,0),i=0)}if(t+_t<=a){const n=new h(e.buffer,e.byteOffset,e.byteLength);for(;t+_t<=a;t+=_t)l(n,t)}for(;t<a;)n[i++]=e[t++]}function l(n,r){for(let e=0;e<16;e++)t[e]=n.getInt32(r+4*e);let o,i=e[0],a=e[1],s=e[2],c=e[3],l=e[4];for(let e=0;e<15;e+=5)l=(i<<5|i>>>27)+((s^c)&a^c)+l+1518500249+t[e]|0,a=a<<30|a>>>2,c=(l<<5|l>>>27)+((a^s)&i^s)+c+1518500249+t[e+1]|0,i=i<<30|i>>>2,s=(c<<5|c>>>27)+((i^a)&l^a)+s+1518500249+t[e+2]|0,l=l<<30|l>>>2,a=(s<<5|s>>>27)+((l^i)&c^i)+a+1518500249+t[e+3]|0,c=c<<30|c>>>2,i=(a<<5|a>>>27)+((c^l)&s^l)+i+1518500249+t[e+4]|0,s=s<<30|s>>>2;l=(i<<5|i>>>27)+((s^c)&a^c)+l+1518500249+t[15]|0,a=a<<30|a>>>2,o=t[13]^t[8]^t[2]^t[0],o=o<<1|o>>>31,t[0]=o,c=(l<<5|l>>>27)+((a^s)&i^s)+c+1518500249+o|0,i=i<<30|i>>>2,o=t[14]^t[9]^t[3]^t[1],o=o<<1|o>>>31,t[1]=o,s=(c<<5|c>>>27)+((i^a)&l^a)+s+1518500249+o|0,l=l<<30|l>>>2,o=t[15]^t[10]^t[4]^t[2],o=o<<1|o>>>31,t[2]=o,a=(s<<5|s>>>27)+((l^i)&c^i)+a+1518500249+o|0,c=c<<30|c>>>2,o=t[0]^t[11]^t[5]^t[3],o=o<<1|o>>>31,t[3]=o,i=(a<<5|a>>>27)+((c^l)&s^l)+i+1518500249+o|0,s=s<<30|s>>>2;for(let e=20;e<40;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,l=(i<<5|i>>>27)+(a^s^c)+l+1859775393+o|0,a=a<<30|a>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(l<<5|l>>>27)+(i^a^s)+c+1859775393+o|0,i=i<<30|i>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,s=(c<<5|c>>>27)+(l^i^a)+s+1859775393+o|0,l=l<<30|l>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,a=(s<<5|s>>>27)+(c^l^i)+a+1859775393+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,i=(a<<5|a>>>27)+(s^c^l)+i+1859775393+o|0,s=s<<30|s>>>2;for(let e=40;e<60;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,l=(i<<5|i>>>27)+(a&s|(a|s)&c)+l+2400959708+o|0,a=a<<30|a>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(l<<5|l>>>27)+(i&a|(i|a)&s)+c+2400959708+o|0,i=i<<30|i>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,s=(c<<5|c>>>27)+(l&i|(l|i)&a)+s+2400959708+o|0,l=l<<30|l>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,a=(s<<5|s>>>27)+(c&l|(c|l)&i)+a+2400959708+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,i=(a<<5|a>>>27)+(s&c|(s|c)&l)+i+2400959708+o|0,s=s<<30|s>>>2;for(let e=60;e<80;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,l=(i<<5|i>>>27)+(a^s^c)+l+3395469782+o|0,a=a<<30|a>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(l<<5|l>>>27)+(i^a^s)+c+3395469782+o|0,i=i<<30|i>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,s=(c<<5|c>>>27)+(l^i^a)+s+3395469782+o|0,l=l<<30|l>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,a=(s<<5|s>>>27)+(c^l^i)+a+3395469782+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,i=(a<<5|a>>>27)+(s^c^l)+i+3395469782+o|0,s=s<<30|s>>>2;e[0]=e[0]+i|0,e[1]=e[1]+a|0,e[2]=e[2]+s|0,e[3]=e[3]+c|0,e[4]=e[4]+l|0}}(),n=new w(_t),r=new w(_t);e.length>_t&&(t.update(e,0,e.length),e=t.digest());for(let t=0;t<_t;t++){const o=t<e.length?e[t]:0;n[t]=54^o,r[t]=92^o}return t.update(n,0,_t),{update(e,n,r){t.update(e,n,r)},digest(){const e=t.digest();t.update(r,0,_t),t.update(e,0,$t);const o=t.digest();return t.update(n,0,_t),o}}}function fn(e){return rn[e>>>24]<<24|rn[e>>>16&255]<<16|rn[e>>>8&255]<<8|rn[255&e]}function dn(e){return e<<24|(65280&e)<<8|e>>>8&65280|e>>>24}function wn(e){return 255&(e<<1^27*(e>>7))}const pn=typeof S!=ye&&typeof S.getRandomValues==ge,mn="Invalid password",hn="Invalid authentication code",yn="zipjs-abort-check-password",gn="Crypto API not supported";function En(e){if(pn)return S.getRandomValues(e);throw new d(gn)}const Fn={name:"PBKDF2"},bn=n.assign({hash:{name:"HMAC"}},Fn),Sn=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Fn),Rn=["deriveBits"],zn=[8,12,16],Dn=[16,24,32],xn=10,Tn=typeof S!=ye,An=Tn&&S.subtle;let vn=Tn&&typeof An!=ye&&typeof An.importKey==ge&&typeof An.deriveBits==ge;class Cn extends z{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){const i={};super({start(){In(i,e,t,n)},async transform(e,t){const{password:n,strength:o,m:a,ready:s}=i;if(n?(await async function(e,t,n,r){const o=await Mn(e,t,n,On(r,0,zn[t])),i=On(r,zn[t]);if(o[0]!=i[0]||o[1]!=i[1])throw Wn(e),new d(mn)}(i,o,n,On(e,0,zn[o]+2)),e=On(e,zn[o]+2),r?(Wn(i),t.error(new d(yn))):a()):await s,i.h)return;const c=new w(e.length-xn-(e.length-xn)%16);t.enqueue(kn(i,e,c,0,xn,!0))},async flush(e){const{F:t,S:n,ready:r}=i;if(t){if(await r,i.h)return;const a=On(n,n.length-xn),s=new w(On(n,0,n.length-xn));t.process(s,!0);const c=t.digest();let l=n.length<xn?1:0;for(let e=0;e<xn;e++)l|=c[e]^a[e];if(l&&o)return void e.error(new d(hn));e.enqueue(s)}}}),Un(this,i)}}class Nn extends z{constructor({password:e,rawPassword:t,encryptionStrength:n}){const r={};super({start(){In(r,e,t,n)},async transform(e,t){const{password:n,strength:o,m:i,ready:a}=r;let s=Se;if(n?(s=await async function(e,t,n){const r=En(new w(zn[t]));return Mt(r,await Mn(e,t,n,r))}(r,o,n),i()):await a,r.h)return;const c=new w(s.length+e.length-e.length%16);c.set(s,0),t.enqueue(kn(r,e,c,s.length,0,!1))},async flush(e){const{F:t,S:n,ready:o}=r;if(t){if(await o,r.h)return;const i=new w(n);t.process(i,!1);const a=On(t.digest(),0,xn);e.enqueue(Mt(i,a))}}}),Un(this,r)}}function In(e,t,r,o){n.assign(e,{ready:new g(t=>e.m=t),password:Ln(t,r),strength:o-1,S:Se,h:!1})}function Un(e,t){const r=e.readable.getReader(),o=new D({async pull(e){try{const{value:t,done:n}=await r.read();n?e.close():e.enqueue(t)}catch(e){throw Wn(t),r.cancel(e).catch(()=>{}),e}},cancel:e=>(Wn(t),r.cancel(e))});n.defineProperty(e,"readable",{get:()=>o})}function kn(e,t,n,r,o,i){const{F:a,S:s}=e;s.length&&(t=Mt(s,t));const c=t.length-o,l=c-c%16;if(n=function(e,t){if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e}(n,r+l),l){const e=On(n,r,r+l);e.set(On(t,0,l)),a.process(e,i)}return e.S=On(t,l),n}function Wn(e){const{F:t}=e;e.h=!0,t&&t.dispose&&t.dispose()}async function Mn(e,t,r,o){e.password=null;const i=Dn[t],s=await async function(e,t,r){if(vn)try{const o=await An.importKey("raw",e,bn,!1,Rn);return new w(await An.deriveBits(n.assign({salt:t},Sn),o,8*r))}catch{vn=!1}return function(e,t,n,r){const o=un(e),i=new w(r),s=new w(t.length+4),c=new h(s.buffer);s.set(t);for(let e=1,n=0;n<r;e++,n+=$t){c.setUint32(t.length,e),o.update(s,0,s.length);let l=o.digest();const u=l.slice();for(let e=1;e<1e3;e++){o.update(l,0,$t),l=o.digest();for(let e=0;e<$t;e++)u[e]^=l[e]}i.set(u.subarray(0,a.min($t,r-n)),n)}return i}(e,t,0,r)}(r,o,2*i+2);return e.F=function(e,t){!function(){if(!ln){let e=1,t=1;do{e=255&(e^e<<1^(128&e?27:0)),t=255&(t^t<<1),t=255&(t^t<<2),t=255&(t^t<<4),128&t&&(t^=9),rn[e]=255&(t^(t<<1|t>>7)^(t<<2|t>>6)^(t<<3|t>>5)^(t<<4|t>>4)^99)}while(1!=e);rn[0]=99;for(let e=0;e<256;e++){const t=rn[e],n=wn(t),r=n<<24|t<<16|t<<8|n^t;on[e]=r,an[e]=r>>>8|r<<24,sn[e]=r>>>16|r<<16,cn[e]=r>>>24|r<<8}ln=!0}}();const n=new Int32Array(60),r=function(e,t){const n=e.length>>2,r=n+6,o=4*(r+1);let i=1;for(let r=0;r<n;r++)t[r]=e[4*r]<<24|e[4*r+1]<<16|e[4*r+2]<<8|e[4*r+3];for(let e=n;e<o;e++){let r=t[e-1];e%n==0?(r=fn(r<<8|r>>>24)^i<<24,i=wn(i)):n>6&&e%n==4&&(r=fn(r)),t[e]=t[e-n]^r}return r}(e,n),o=new Int32Array(4),i=un(t);let a=0,s=0,c=0,l=0;return{process(e,t){t&&i.update(e,0,e.length),function(e){const t=new h(e.buffer,e.byteOffset,e.byteLength),n=e.length;let r=0;for(;r+16<=n;r+=16)u(),t.setInt32(r,t.getInt32(r)^o[0]),t.setInt32(r+4,t.getInt32(r+4)^o[1]),t.setInt32(r+8,t.getInt32(r+8)^o[2]),t.setInt32(r+12,t.getInt32(r+12)^o[3]);if(r<n){u();for(let t=0;r<n;r++,t++)e[r]^=o[t>>2]>>>24-8*(3&t)}}(e),t||i.update(e,0,e.length)},digest:()=>i.digest()};function u(){a=a+1|0,a||(s=s+1|0,s||(c=c+1|0,c||(l=l+1|0)));let e=dn(a)^n[0],t=dn(s)^n[1],i=dn(c)^n[2],u=dn(l)^n[3],f=on[e>>>24]^an[t>>>16&255]^sn[i>>>8&255]^cn[255&u]^n[4],d=on[t>>>24]^an[i>>>16&255]^sn[u>>>8&255]^cn[255&e]^n[5],w=on[i>>>24]^an[u>>>16&255]^sn[e>>>8&255]^cn[255&t]^n[6],p=on[u>>>24]^an[e>>>16&255]^sn[t>>>8&255]^cn[255&i]^n[7];e=on[f>>>24]^an[d>>>16&255]^sn[w>>>8&255]^cn[255&p]^n[8],t=on[d>>>24]^an[w>>>16&255]^sn[p>>>8&255]^cn[255&f]^n[9],i=on[w>>>24]^an[p>>>16&255]^sn[f>>>8&255]^cn[255&d]^n[10],u=on[p>>>24]^an[f>>>16&255]^sn[d>>>8&255]^cn[255&w]^n[11],f=on[e>>>24]^an[t>>>16&255]^sn[i>>>8&255]^cn[255&u]^n[12],d=on[t>>>24]^an[i>>>16&255]^sn[u>>>8&255]^cn[255&e]^n[13],w=on[i>>>24]^an[u>>>16&255]^sn[e>>>8&255]^cn[255&t]^n[14],p=on[u>>>24]^an[e>>>16&255]^sn[t>>>8&255]^cn[255&i]^n[15],e=on[f>>>24]^an[d>>>16&255]^sn[w>>>8&255]^cn[255&p]^n[16],t=on[d>>>24]^an[w>>>16&255]^sn[p>>>8&255]^cn[255&f]^n[17],i=on[w>>>24]^an[p>>>16&255]^sn[f>>>8&255]^cn[255&d]^n[18],u=on[p>>>24]^an[f>>>16&255]^sn[d>>>8&255]^cn[255&w]^n[19],f=on[e>>>24]^an[t>>>16&255]^sn[i>>>8&255]^cn[255&u]^n[20],d=on[t>>>24]^an[i>>>16&255]^sn[u>>>8&255]^cn[255&e]^n[21],w=on[i>>>24]^an[u>>>16&255]^sn[e>>>8&255]^cn[255&t]^n[22],p=on[u>>>24]^an[e>>>16&255]^sn[t>>>8&255]^cn[255&i]^n[23],e=on[f>>>24]^an[d>>>16&255]^sn[w>>>8&255]^cn[255&p]^n[24],t=on[d>>>24]^an[w>>>16&255]^sn[p>>>8&255]^cn[255&f]^n[25],i=on[w>>>24]^an[p>>>16&255]^sn[f>>>8&255]^cn[255&d]^n[26],u=on[p>>>24]^an[f>>>16&255]^sn[d>>>8&255]^cn[255&w]^n[27],f=on[e>>>24]^an[t>>>16&255]^sn[i>>>8&255]^cn[255&u]^n[28],d=on[t>>>24]^an[i>>>16&255]^sn[u>>>8&255]^cn[255&e]^n[29],w=on[i>>>24]^an[u>>>16&255]^sn[e>>>8&255]^cn[255&t]^n[30],p=on[u>>>24]^an[e>>>16&255]^sn[t>>>8&255]^cn[255&i]^n[31],e=on[f>>>24]^an[d>>>16&255]^sn[w>>>8&255]^cn[255&p]^n[32],t=on[d>>>24]^an[w>>>16&255]^sn[p>>>8&255]^cn[255&f]^n[33],i=on[w>>>24]^an[p>>>16&255]^sn[f>>>8&255]^cn[255&d]^n[34],u=on[p>>>24]^an[f>>>16&255]^sn[d>>>8&255]^cn[255&w]^n[35],f=on[e>>>24]^an[t>>>16&255]^sn[i>>>8&255]^cn[255&u]^n[36],d=on[t>>>24]^an[i>>>16&255]^sn[u>>>8&255]^cn[255&e]^n[37],w=on[i>>>24]^an[u>>>16&255]^sn[e>>>8&255]^cn[255&t]^n[38],p=on[u>>>24]^an[e>>>16&255]^sn[t>>>8&255]^cn[255&i]^n[39];let m=40;r>10&&(e=on[f>>>24]^an[d>>>16&255]^sn[w>>>8&255]^cn[255&p]^n[40],t=on[d>>>24]^an[w>>>16&255]^sn[p>>>8&255]^cn[255&f]^n[41],i=on[w>>>24]^an[p>>>16&255]^sn[f>>>8&255]^cn[255&d]^n[42],u=on[p>>>24]^an[f>>>16&255]^sn[d>>>8&255]^cn[255&w]^n[43],f=on[e>>>24]^an[t>>>16&255]^sn[i>>>8&255]^cn[255&u]^n[44],d=on[t>>>24]^an[i>>>16&255]^sn[u>>>8&255]^cn[255&e]^n[45],w=on[i>>>24]^an[u>>>16&255]^sn[e>>>8&255]^cn[255&t]^n[46],p=on[u>>>24]^an[e>>>16&255]^sn[t>>>8&255]^cn[255&i]^n[47],m=48),r>12&&(e=on[f>>>24]^an[d>>>16&255]^sn[w>>>8&255]^cn[255&p]^n[48],t=on[d>>>24]^an[w>>>16&255]^sn[p>>>8&255]^cn[255&f]^n[49],i=on[w>>>24]^an[p>>>16&255]^sn[f>>>8&255]^cn[255&d]^n[50],u=on[p>>>24]^an[f>>>16&255]^sn[d>>>8&255]^cn[255&w]^n[51],f=on[e>>>24]^an[t>>>16&255]^sn[i>>>8&255]^cn[255&u]^n[52],d=on[t>>>24]^an[i>>>16&255]^sn[u>>>8&255]^cn[255&e]^n[53],w=on[i>>>24]^an[u>>>16&255]^sn[e>>>8&255]^cn[255&t]^n[54],p=on[u>>>24]^an[e>>>16&255]^sn[t>>>8&255]^cn[255&i]^n[55],m=56),o[0]=(rn[f>>>24]<<24|rn[d>>>16&255]<<16|rn[w>>>8&255]<<8|rn[255&p])^n[m],o[1]=(rn[d>>>24]<<24|rn[w>>>16&255]<<16|rn[p>>>8&255]<<8|rn[255&f])^n[m+1],o[2]=(rn[w>>>24]<<24|rn[p>>>16&255]<<16|rn[f>>>8&255]<<8|rn[255&d])^n[m+2],o[3]=(rn[p>>>24]<<24|rn[f>>>16&255]<<16|rn[d>>>8&255]<<8|rn[255&w])^n[m+3]}}(On(s,0,i),On(s,i,2*i)),e.h&&Wn(e),On(s,2*i)}function Ln(e,t){return t===de?Qt(e):t}function On(e,t,n){return e.subarray(t,n)}class Bn extends z{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){qn(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=Pn(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t[11]^n.passwordVerification))throw new d(mn);e=e.subarray(12)}r?t.error(new d(yn)):t.enqueue(Pn(n,e))}})}}class Vn extends z{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){qn(this,e,t,n)},transform(e,t){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=En(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Yn(n,t),0),o=12}else r=new w(e.length),o=0;r.set(Yn(n,e),o),t.enqueue(r)}})}}function qn(e,t,r,o){n.assign(e,{password:t,rawPassword:r,passwordVerification:o}),function(e,t,r){const o=[305419896,591751049,878082192];if(n.assign(e,{R:o,D:new Kt(o[0]),T:new Kt(o[2])}),r)for(let t=0;t<r.length;t++)Hn(e,r[t]);else for(let n=0;n<t.length;n++)Hn(e,t.charCodeAt(n))}(e,t,r)}function Pn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=Jn(e)^t[r],Hn(e,n[r]);return n}function Yn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=Jn(e)^t[r],Hn(e,t[r]);return n}function Hn(e,t){let[,n]=e.R;e.D.append([t]);const r=~e.D.get();n=Gn(a.imul(Gn(n+Zn(r)),134775813)+1),e.T.append([n>>>24]);const o=~e.T.get();e.R=[r,n,o]}function Jn(e){const t=2|e.R[2];return Zn(a.imul(t,1^t)>>>8)}function Zn(e){return 255&e}function Gn(e){return 4294967295&e}function jn(e){if(e instanceof D)return e;const t=e.getReader();return new D({async pull(e){try{const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)}catch(e){throw t.cancel(e).catch(()=>{}),e}},cancel:e=>t.cancel(e)})}function Kn(e,t){e=jn(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=ge||new y([]).stream()instanceof D)return new u(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new x({write(e){r.push(e)}})).then(()=>new y(r,n))}function Xn(e){if(e instanceof x)return e;const t=e.getWriter();return new x({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const Qn="Invalid codec definition",_n="Reserved compression method",$n="Invalid codec module",er="Compression method not supported",tr=[0,8,9,99],nr=new c,rr=new c;function or(e){return nr.get(e)}function ir(){return t.from(nr.values(),e=>n.assign({},e,rr.get(e.format)))}function ar(e){return rr.get(e)}function sr(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=ge&&typeof r!=ge)throw new d($n);rr.set(e,{CompressionStream:n,DecompressionStream:r})}const cr="Invalid uncompressed size",lr="Invalid compressed data",ur="Codec out of memory",fr="Invalid CRC32",dr="deflate-raw",wr="deflate64-raw",pr="gzip",mr=[31,139,8];class hr extends z{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:a,zipCrypto:s,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:d,inputSize:w}=e,p=this;let m,y,g,E=super.readable;const F=f&&ar(f),b=zr(a,r,n),S=c&&o&&!u&&!F&&(!i||s)&&Boolean(b);if(i&&!s||!c||S||(m=new Xt,E=xr(E,m)),o)if(F)E=Tr(E,Rr(F.CompressionStream,f,{level:l,chunkSize:t,compressionMethod:d,uncompressedSize:w}));else if(S)g=new yr,E=Tr(E,new b(pr,{level:l,chunkSize:t})),E=xr(E,g);else try{E=Dr(E,a,{level:l,chunkSize:t},r,n)}catch(e){if(!a&&n)throw Ir(e);let t;try{t=new r(pr)}catch{throw Ir(e)}E=Tr(E,t),E=xr(E,new yr)}i&&(s?E=xr(E,new Vn(e)):(y=new Nn(e),E=xr(E,y))),Sr(p,E,()=>{i&&!s||!c||(p.crc32=S?g.crc32:new h(m.value.buffer).getUint32(0))})}}class yr extends z{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=a.min(t,e.length);if(t-=n,!(e=e.subarray(n)).length)return}const o=n.length+e.length;if(o<=8)return void(n=Mt(n,e));const i=o-8,s=a.min(i,n.length);r.enqueue(Mt(n.subarray(0,s),e.subarray(0,i-s))),n=Mt(n.subarray(s),e.subarray(i-s))},flush(){const t=Ot(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class gr extends z{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:a,crc32:s,compressed:c,useCompressionStream:u,deflate64:f,format:p,compressionMethod:m,rawBitFlag:y,outputSize:E}=e;let F,b,S,R=super.readable;if(i&&(o?R=xr(R,new Bn(e)):(b=new Cn(e),R=xr(R,b))),c){const e=new l,o=p&&ar(p);let i;if(o)R=Tr(R,Rr(o.DecompressionStream,p,{chunkSize:t,compressionMethod:m,rawBitFlag:y,uncompressedSize:E}),e);else{const o=zr(u,r,n);if(a&&!f&&s!==de&&E!==de&&o)try{i=new o(pr,{chunkSize:t})}catch{i=de}if(!i)try{R=Dr(R,u,{chunkSize:t,deflate64:f},r,n,e)}catch(e){if(f||E===de||!u&&n)throw Ir(e);try{i=new r(pr)}catch{throw Ir(e)}}}i?(S=!0,R=function(e,t,n,r,o){const i=t.writable.getWriter(),a=t.readable.getReader(),s=r===de?new Kt:de;let c,l,u=0,f=!1,p=!1;const m=new D({start(e){l=e},pull(){E()},cancel:e=>(p=!0,E(),a.cancel(e))});return async function(){const t=e.getReader();try{const e=new w(10);for(e.set(mr),await i.write(e);;){await y(),await i.ready;const{value:e,done:n}=await Cr(t,o);if(n)break;await i.write(e)}s&&await i.write(new w(0));const a=new w(8),c=Ot(a);c.setUint32(0,s?s.get():r,!0),c.setUint32(4,n,!0),f=!0,await i.write(a),await i.close()}catch(e){await Ar(i,e),await vr(t,e)}}(),async function(){try{for(;;){const{value:e,done:t}=await h();if(t)break;if(u+=e.length,u>n)throw new d(cr);s&&s.append(e),l.enqueue(e)}p||(p=!0,l.close())}catch(e){!function(e){p||(p=!0,l.error(e),E())}(e),await vr(a,e)}}(),m;function h(){return a.read().catch(e=>{if(f){if(!s)throw kr(e,fr);if(u!=n)throw kr(e,cr);return{done:!0}}throw Nr(e,o)})}function y(){if(!p&&l.desiredSize<=0)return new g(e=>c=e)}function E(){if(c){const e=c;c=de,e()}}}(R,i,E,s,e)):R=function(e,t){const n=e.getReader();return new D({async pull(e){try{const{value:t,done:r}=await n.read();r?e.close():e.enqueue(t)}catch(e){throw await vr(n,e),Nr(e,t)}},cancel:e=>n.cancel(e)})}(R,e)}a&&!S&&(F=new Xt,R=xr(R,F)),Sr(this,R,()=>{if(F){const e=new h(F.value.buffer).getUint32(0,!1);if(s!=e)throw new d(fr)}})}}const Er=new c;function Fr(e,t){if(!e)return!1;let n=Er.get(e);n||(n=new c,Er.set(e,n));let r=n.get(t);if(r===de){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function br(e){return Fr(e,dr)}function Sr(e,t,r){t=xr(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Rr(e,t,n){if(!e)throw new d(er);return new e(t,n)}function zr(e,t,n){return e&&t?t:n&&n.requiresModule?n:void 0}function Dr(e,t,n,r,o,i){const a=t&&r?r:o||r,s=n.deflate64?wr:dr;let c;try{c=new a(s,n)}catch(e){if(!t||!o||a==o)throw e;c=new o(s,n)}return Tr(e,c,i)}function xr(e,t){return jn(e).pipeThrough(t)}function Tr(e,t,n){const r=t.writable.getWriter(),o=e.getReader();return async function(){try{for(;;){await r.ready;const e=await Cr(o,n);if(e.done){await r.close();break}await r.write(e.value)}}catch(e){await Ar(r,e),await vr(o,e)}}(),t.readable}async function Ar(e,t){try{await e.abort(t)}catch{}}async function vr(e,t){try{await e.cancel(t)}catch{}}function Cr(e,t){const n=e.read();return t?n.catch(e=>{throw t.add(e),e}):n}function Nr(e,t){return t.has(e)?e:kr(e,Ur(e)?ur:lr)}function Ir(e){return Ur(e)?kr(e,ur):e}function Ur(e){return Bt(e)&&"Z_MEM_ERROR"==e.code}function kr(e,t){const n=new d(t);return n.cause=e,n}const Wr="data",Mr="deflate",Lr="inflate";class Or extends z{constructor(e,t){super({});const r=this,{codecType:o}=e;let i;o.startsWith(Mr)?i=hr:o.startsWith(Lr)&&(i=gr),r.outputSize=0;let a=0;const s=new i(e,t),c=super.readable,l=new z({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:a})}}),u=new z({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==de&&r.outputSize>e.outputSize))throw new d(cr)},flush(){const{crc32:e}=s;n.assign(r,{crc32:e,inputSize:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(s).pipeThrough(u)})}}class Br extends z{constructor(e){const t=[];let r=0,i=0;function a(){const n=new w(e);let o=0;for(;o<e;){const r=t[0],i=e-o;r.length<=i?(n.set(r,o),o+=r.length,t.shift()):(n.set(r.subarray(0,i),o),t[0]=r.subarray(i),o+=i)}return r-=e,n}(!o.isFinite(e)||e<1)&&(e=262144),super({transform(n,o){for(t.push(n),r+=n.length;r>e;)i+=e,o.enqueue(a())},flush(e){r&&(i+=r,e.enqueue(function(e,t){const n=new w(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(t,r)))}}),n.defineProperty(this,"outputSize",{get:()=>i})}}const Vr="Worker startup timeout";let qr,Pr,Yr,Hr=()=>{};async function Jr(){if(Hr)try{return await void 0,!0}catch{}return!1}function Zr(e){e.createWorker?Pr=!0:qr=!1}class Gr{constructor(e,{readable:t,writable:r},o,i){const{options:a,config:s,A:c,useWebWorkers:l,workerURI:u}=o;let{createWorker:f}=o;const{signal:d}=c;return Pr&&(f=de),n.assign(e,{v:!0,C:(e.C||0)+1,readable:t.pipeThrough(new Br(Et(s))).pipeThrough(new jr(c),{signal:d}),writable:r,options:n.assign({},a),N:o,workerURI:u,createWorker:f,terminate:()=>new g(t=>{const{I:n,v:r}=e;r?(e.U=e.U||[],e.U.push(t)):(n&&(n.terminate(),e.I=null),t()),e.W=null}),M(){if(e.v){const{U:t,I:n}=e;t&&(e.U=null,n&&(e.L=!0,n.terminate())),e.v=!1;const r=i(e);t&&t.forEach(e=>e(r))}}}),qr===de&&(qr=typeof C!=ye),(l&&Yr&&(qr&&u||f)?Yr:Xr)(e,s)}}class jr extends z{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await Kr(e,n)},async transform(e,r){o+=e.length,t&&await Kr(t,o,n),r.enqueue(e)},async flush(){r&&await Kr(r,o)}})}}async function Kr(e,...t){try{await e(...t)}catch{}}function Xr(e,t){return{run:()=>Qr(e,t)}}async function Qr({options:e,readable:t,writable:n,M:r,N:o},i){let a,s,c;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(Mr),n=t?i.CompressionStreamFallback:i.DecompressionStreamFallback,r=t?i.CompressionStream:i.DecompressionStream;e.useCompressionStream?n&&n.requiresModule&&!br(r)&&await l():await l()||n&&!n.requiresModule||(e.useCompressionStream=!0)}e.encrypted&&!e.zipCrypto&&await l(),a=new Or(e,i),s=new Br(Et(i));const{signal:r}=o.A;await t.pipeThrough(a).pipeThrough(s).pipeTo(n,{preventClose:!0,preventAbort:!0,signal:r});const{crc32:c,inputSize:u,outputSize:f}=a;return{crc32:c,inputSize:u,outputSize:f}}catch(e){if(a){const t=s?s.outputSize:0;if(o.outputSize=t,Bt(e))try{e.outputSize=t}catch{}}throw e}finally{r()}function l(){return c||(c=Jr()),c}}const _r={type:"module"},$r="error",eo="abort";let to,no,ro;var oo;function io(e){const{reader:t}=e;t&&t.releaseLock(),e.reader=null,e.writer=null}function ao(e){const{I:t}=e;if(t)try{t.terminate()}catch{}e.W=null}function so(e,t,r,o,i=!0){const{createWorker:a}=r;let s,c,l;if(a)s=a();else if(no===de||to!==e){const n=typeof e==ge;c=n?e(i):e;const a=c.startsWith("data:"),u=c.startsWith("blob:");if(a||u){o===de&&(o=!1),o&&(l=_r);try{s=new C(c,l)}catch(i){if(u)try{f.revokeObjectURL(c)}catch{}if(n&&u)return so(e,t,r,o,!1);if(o)throw i;return so(e,t,r,!0,!1)}}else{o===de&&(o=!0),o&&(l=_r);try{c=new f(c,t)}catch{}try{s=new C(c,l)}catch(n){if(o)return so(e,t,r,!1,i);throw n}}to=e,no=c,ro=l}else s=new C(no,ro);return s.addEventListener("message",e=>{r.O=!0,co(r),async function({data:e},t){const{type:r,value:o,messageId:i,result:a,error:s,errorValue:c}=e,{reader:l,writer:u,B:f,V:p,M:m,C:h}=t,y=()=>t.C!=h;try{if(s)g(function(e,t){const{message:r,stack:o,code:i,name:a,outputSize:s,cause:c,codecImportFailed:l}=e;let u;if(u=t?t.value:n.assign(new d(r),{stack:o,code:i,name:a}),Bt(u))try{s!==de&&(u.outputSize=s),l&&(u.codecImportFailed=!0),c&&(Bt(u.cause)||(u.cause=n.assign(new d(c.message),{name:c.name})),c.code!==de&&u.cause.code!==c.code&&(u.cause.code=c.code)),t&&(u.name!==a&&(u.name=a),u.code!==i&&(u.code=i))}catch{}return u}(s,c));else{if("pull"==r){const{value:e,done:n}=await l.read();y()||uo({type:Wr,value:e,done:n,messageId:i},t)}if(r==Wr){const e=new w(o);await u.ready,await u.write(e),y()||uo({type:"ack",messageId:i},t)}"close"==r&&function(e){y()||(f(e),E(),m())}(a)}}catch(s){y()||(ao(t),g(s))}function g(e){y()||(p(e),E(),Bt(e)&&e.codecImportFailed||m())}function E(){u&&u.releaseLock()}}(e,r)}),s.addEventListener($r,e=>lo(e,r)),s.addEventListener("messageerror",e=>lo(e,r)),s}function co(e){const{P:t}=e;t&&(U(t),e.P=null)}function lo(e,t){e.preventDefault&&e.preventDefault(),co(t);const{O:r,V:o,writer:i,M:a}=t;ao(t),r||(t.I=null);let s=e.error||new d(e.message||$r);r||(s=n.assign(new d(s.message||$r),{Y:!0}),t.H=s),o&&(o(s),i&&i.releaseLock(),r&&a())}function uo(e,{I:t,writer:n}){try{const{value:n}=e;if(n){e.value=Lt(n);try{t.postMessage(e,[e.value.buffer])}catch{t.postMessage(e)}}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}oo=function(e,t){const{baseURI:r,chunkSize:i,workerStartupTimeout:a}=t;let{wasmURI:s}=t;if(!e.W){let c;typeof s==ge&&(s=s());try{c=so(e.workerURI,r,e)}catch{return Zr(e),Xr(e,t)}n.assign(e,{I:c,O:!1,L:!1,H:null,W:{run:async()=>{try{return await async function(e,t){if(!e.I){const{H:t}=e;e.H=null;const n=t||new d(Vr);throw n.Y=!0,n}let r,i;const a=new g((t,n)=>{r=t,i=t=>{const{outputSize:r,N:o}=e;if(o.outputSize=r,Bt(t))try{t.outputSize=r}catch{}n(t)}});n.assign(e,{reader:null,writer:null,outputSize:0,J:!1,Z:null,B:r,V:i,result:a});const{readable:s,options:c}=e,{writable:l,closed:u,G:f}=function(e,t){const r=new AbortController;let o;const{writable:i,readable:a}=new z({transform(e,n){t.outputSize+=e.length,n.enqueue(e)}}),s=a.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:r.signal});s.catch(e=>{o||n.assign(t,{J:!0,Z:e})});const{signal:c}=t.N.A;if(c){const e=()=>r.abort(c.reason),t=()=>c.removeEventListener(eo,e);c.addEventListener(eo,e),s.then(t,t)}return{writable:i,closed:s,G:()=>{o=!0,r.abort()}}}(e.writable,e);try{uo({type:"start",options:c,config:t},e)}catch(t){f();try{await u}catch{}throw e.M(),t}n.assign(e,{reader:s.getReader(),writer:l.getWriter()});const{workerStartupTimeout:w}=t;!e.O&&o.isFinite(w)&&w>=0&&(e.P=I(()=>function(e){if(e.P=null,e.O)return;const{V:t,writer:n}=e;if(ao(e),e.I=null,t){const e=new d(Vr);e.Y=!0,t(e),n&&n.releaseLock()}}(e),w));try{const e=await a;return await p(),await u,e}catch(t){await p(),f();try{await u}catch{}const{outputSize:n,N:r,J:o,Z:i}=e;r.outputSize=n;const a=Bt(t)&&(t.codecImportFailed||t.Y),s=o&&!a?i:t;if(Bt(s))try{s.outputSize=n}catch{}throw s}async function p(){if(!l.locked)try{await l.getWriter().close()}catch{}}}(e,{chunkSize:i,wasmURI:s,baseURI:r,workerStartupTimeout:a})}catch(n){if(n&&n.Y)return Zr(e),io(e),Qr(e,t);if(n&&n.codecImportFailed){if(e.reader)return io(e),Qr(e,t);e.M()}throw n}}}})}return e.W},Yr=oo;let fo=[];const wo=[];let po,mo,ho=0;async function yo(e,t){const{options:n,config:r}=t,{useWebWorkers:i,useCompressionStream:a,compressed:s,checkCrc32:c,computeCrc32:l,encrypted:u,format:d,codecURI:w}=n,{workerURI:p,createWorker:m,maxWorkers:h}=r;d&&(w&&(n.codecURI=function(e,t){try{return new f(e,t).toString()}catch{return e}}(w,r.baseURI)),await async function(e,t){!rr.has(e)&&t&&sr(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(d,n.codecURI));const y=!(s||c||l||u),E=d===de||Boolean(n.codecURI);return t.useWebWorkers=!y&&E&&(i||i===de&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&p?p:de,t.createWorker=t.useWebWorkers&&m?m:de,n.useCompressionStream=a||a===de&&r.useCompressionStream,(await async function(){const n=fo.find(e=>!e.v);if(n)return zo(n),new Gr(n,e,t,F);if(fo.length<h){const n={j:ho};return ho++,fo.push(n),new Gr(n,e,t,F)}return new g(n=>{wo.push({resolve:n,stream:e,N:t}),mo=r.workerStarvationTimeout,go()})}()).run();function F(e){if(Eo(),e.L)return e.L=!1,bo();if(wo.length){const[{resolve:t,stream:n,N:r}]=wo.splice(0,1);t(new Gr(e,n,r,F)),go()}else e.I?(zo(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.K=I(async()=>{fo=fo.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}(e,t)):fo=fo.filter(t=>t!=e)}}function go(){!po&&wo.length&&o.isFinite(mo)&&mo>=0&&(po=I(Fo,mo))}function Eo(){po&&(U(po),po=null)}function Fo(){if(po=null,wo.length){const[{resolve:e,stream:t,N:n}]=wo.splice(0,1);e(new Gr({},t,So(n),Ro)),go()}}function bo(){const e=wo.splice(0).map(({resolve:e,stream:t,N:n})=>new g(r=>{e(new Gr({},t,So(n),()=>{Ro(),r()}))}));return Eo(),g.all(e)}function So(e){return n.assign({},e,{useWebWorkers:!1,workerURI:de,createWorker:de})}function Ro(){Eo(),go()}function zo(e){const{K:t}=e;t&&(U(t),e.K=null)}const Do="\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 xo(e,t){return Ao(e,t,!0)}function To(e){if(!e.some(e=>e>127))return!1;try{return new F("utf-8",{fatal:!0}).decode(e),!0}catch{return!1}}function Ao(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?function(e){let t="";for(let n=0;n<e.length;n++)t+=Do[e[n]];return t}(e):new F(t,{ignoreBOM:n}).decode(e)}const vo="HTTP error ",Co="HTTP Range not supported",No="HTTP resource changed",Io="Writer iterator completed too soon",Uo="Writer not initialized",ko="Invalid writer (size must be writable)",Wo="Content-Range",Mo="Range",Lo="GET",Oo="bytes",Bo=16777216,Vo="writable",qo=N();class Po{constructor(){this.size=0}init(){this.initialized=!0}}class Yo extends Po{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=Et(gt())}={}){const r=this;let o=0;return n=Ft(n),new D({async pull(i){const s=t===de?n:a.min(n,t-o),c=await bi(r,e+o,s);c.length&&(i.enqueue(c),o+=c.length),(t!==de&&o>=t||!c.length&&s)&&i.close()}})}}class Ho extends Po{constructor(){super();const e=this,t=new x({write(t){if(!e.initialized)throw new d(Uo);return e.writeUint8Array(Lt(t))}});n.defineProperty(e,Vo,{get:()=>t})}writeUint8Array(){}}let Jo,Zo;class Go extends Yo{constructor(e){super(),n.assign(this,{X:e,size:e.size}),Zo||(Zo=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,n=await e.read();for(;!n.done;)t+=n.value.length,n=await e.read();Jo=1==t}catch{Jo=!1}})())}createReadable(e){const{X:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};if(typeof t.stream==ge){if(!r&&o>=n)return jn(t.stream());if(Jo)return jn(t.slice(r,r+o).stream())}return super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=!e&&r>=n.size?n.X:n.X.slice(e,r);let i=await o.arrayBuffer();return i.byteLength>t&&(i=i.slice(e,r)),new w(i)}}class jo extends Po{constructor(e){super();const t=this,r=new z;n.defineProperty(t,Vo,{get:()=>r.writable}),t.contentType=e,t._=Kn(r.readable,e),t._.catch(()=>{})}getData(){return this._}}class Ko extends Yo{constructor(e,t){super(),Qo(this,e,t)}async init(){await _o(this,fi,si),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:o,$:i}=t;if((n||r)&&o!==de){const{offset:n=0,size:r=o-n}=e||{},s=i&&n>=o-i.length;if(r>0&&n<o&&!s)return function(e,t,n){let r,o=t,i=0,s=n;return new D({start:()=>c(),async pull(e){r||await c();const{value:t,done:n}=await r.read();if(n)throw new d(Co);const o=t.length>i?t.subarray(0,i):t;i-=o.length,s-=o.length,o.length&&e.enqueue(o),i||(await async function(){const e=r;r=de,await e.cancel()}(),s||e.close())},cancel:e=>r&&r.cancel(e)});async function c(){const t=a.min(e.maximumRangeSize,s),n=await fi(Lo,e,ii(e,o,t));if(206!=n.status)throw new d(Co);const c=ei(n);if(c!==de&&c!=o)throw new d(Co);oi(e,n),ri(e,n),o+=t,i=t,r=n.body.getReader()}}(t,n,a.min(r,o-n))}return super.createReadable(e)}readUint8Array(e,t){return $o(this,e,t,fi,si)}}class Xo extends Yo{constructor(e,t){super(),Qo(this,e,t)}async init(){await _o(this,di,ci),super.init()}readUint8Array(e,t){return $o(this,e,t,di,ci)}}function Qo(e,t,r){const{preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s,checkResourceChanges:c=!0,maximumRangeSize:l=Bo,fetch:u}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(e,{url:t,options:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s,checkResourceChanges:c,maximumRangeSize:l,fetch:u})}async function _o(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s}=e;if(function(e){const{baseURI:t}=gt(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n}(r)&&(i||a)&&(typeof o==ye||o)){const r=await t(Lo,e,ii(e,s?-65557:void 0)),o=r.headers.get("Accept-Ranges");if(!(a||o&&o.toLowerCase()==Oo))throw new d(Co);{let o;s&&206==r.status&&(o=new w(await r.arrayBuffer())),ri(e,r);const i=ti(r);i===de?await ui(e,t,n):e.size=i,o&&o.length&&ei(r)===e.size-o.length&&(e.$=o)}}else await ui(e,t,n)}async function $o(e,t,n,r,o){const{useRangeHeader:i,forceRangeRequests:a,$:s,size:c,options:l}=e;if(i||a){if(t>=c||0===n)return Se;{if(t+n>c&&(n=c-t),s&&t>=c-s.length){const e=t-(c-s.length);return s.slice(e,e+n)}const o=await r(Lo,e,ii(e,t,n));if(206!=o.status)throw new d(Co);const i=ei(o);if(i!==de&&i!=t)throw new d(Co);oi(e,o),ri(e,o);const a=new w(await o.arrayBuffer());if(a.length!=n)throw new d(Co);return a}}{const{data:r}=e;return r||await o(e,l),e.data.subarray(t,t+n)}}function ei(e){const t=e.headers.get(Wo);if(t){const e=o(t.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e))return e}}function ti(e){const t=e.headers.get(Wo);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=o(e);if(!o.isNaN(t))return t}}}function ni({headers:e}){return{ee:e.get("Etag")||de,lastModified:e.get("Last-Modified")||de}}function ri(e,t){const{checkResourceChanges:n,te:r}=e;n&&!r&&206==t.status&&(e.te=ni(t))}function oi(e,t){const{checkResourceChanges:r,te:o,size:i}=e;if(r){const e=ti(t);if(e!==de&&i!==de&&e!=i)throw new d(No);if(o){const e=ni(t);if(n.entries(o).some(([t,n])=>n!==de&&e[t]!==de&&n!=e[t]))throw new d(No)}}}function ii(e,t=0,r=1){return n.assign({},ai(e),{[Mo]:Oo+"="+(t<0?t:t+"-"+(t+r-1))})}function ai({options:e}){const{headers:t}=e;if(t)return N.iterator in t?n.fromEntries(t):t}async function si(e){await li(e,fi)}async function ci(e){await li(e,di)}async function li(e,t){const n=await t(Lo,e,ai(e));e.data=new w(await n.arrayBuffer()),e.size=e.data.length}async function ui(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,ai(e)),i=r.headers.get("Content-Length");i&&!r.headers.get("Content-Encoding")?e.size=o(i):await n(e,e.options)}}async function fi(e,{fetch:t=fetch,options:r,url:o},i){const a=await t(o,n.assign({},r,{method:e,headers:i}));if(a.status>=200&&a.status<=299)return a;throw 416==a.status?new d(Co):new d(vo+(a.statusText||a.status))}function di(e,{url:t},r){return new g((o,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status>=200&&a.status<=299){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),o({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new d(Co):new d(vo+(a.statusText||a.status)))},!1),a.addEventListener("error",e=>i(e.detail?e.detail.error:new d("Network error")),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()})}class wi extends Yo{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Xo(e,t):new Ko(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(e){return this.reader.createReadable(e)}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class pi extends Yo{constructor(e){super(),this.ne=e}async init(){const e=this;e.re=0;const t=e.ne=await g.all(e.ne.map(Fi));e.oe=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}ie(e){const{oe:t,size:n}=this,r=t[e];return r===de?n:r}async readUint8Array(e,t){const n=this,{ne:r}=this;let o,i=0,s=e;for(;r[i]&&s>=r[i].size;)s-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(s+t<=r)o=await bi(c,s,t);else{const i=r-s;o=Mt(await bi(c,s,i),await n.readUint8Array(e+i,t-i))}}else o=Se;return n.re=a.max(i,n.re),o}}class mi extends Po{constructor(e,t=4294967295){super();const r=this;let o,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const s=new x({async write(t){if(t===qo)return void(a&&await l());const{availableSize:n}=r;if(a)t.length>=n?(await c(t.subarray(0,n)),await l(),t.length>n&&await this.write(t.subarray(n))):await c(t);else{const{value:n,done:s}=await e.next();if(s&&!n)throw new d(Io);o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await Ei(o),i=n.writable,a=i.getWriter(),await this.write(t)}},async close(){a&&(await a.ready,await u())},async abort(e){a&&await a.abort(e)}});async function c(e){const t=e.length;t&&(await a.ready,await a.write(e),o.size+=t,r.availableSize-=t)}async function l(){await u(),r.diskOffset+=o.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function u(){await a.close()}n.defineProperty(r,Vo,{get:()=>s})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(qo)}finally{e.releaseLock()}}}class hi{constructor(e){return t.isArray(e)&&(e=new pi(e)),(e instanceof D||typeof e.getReader==ge)&&(e={readable:jn(e)}),e}}class yi{constructor(e){e.writable===de&&typeof e.next==ge&&(e=new mi(e)),(e instanceof x||typeof e.getWriter==ge)&&(e={writable:Xn(e)});try{e.size=e.size===de?0:e.size}catch{throw new d(ko)}return e}}function gi(e){return Boolean(e&&e.getData)}async function Ei(e,t){if(!e.init||e.initialized)return g.resolve();await e.init(t)}async function Fi(e){return e=new hi(e),await Ei(e),e.size!==de&&e.readUint8Array||(e=new Go(await Kn(e.readable)),await Ei(e)),e}function bi(e,t,n){return e.readUint8Array(t,n)}function Si(e,t){return e.createReadable?e.createReadable(t):e.readUint8Array?Yo.prototype.createReadable.call(e,t):e.readable}function Ri(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==de&&(r.filename=n),e.push(r)}}const zi="filename",Di="rawFilename",xi="comment",Ti="rawComment",Ai="uncompressedSize",vi="compressedSize",Ci="offset",Ni="diskNumberStart",Ii="lastModDate",Ui="rawLastModDate",ki="lastAccessDate",Wi="rawLastAccessDate",Mi="creationDate",Li="rawCreationDate",Oi="internalFileAttributes",Bi="externalFileAttributes",Vi="msdosAttributesRaw",qi="msdosAttributes",Pi="msDosCompatible",Yi="zip64",Hi="encrypted",Ji="version",Zi="versionMadeBy",Gi="zipCrypto",ji="directory",Ki="executable",Xi="compressionMethod",Qi="signature",_i="extraField",$i="unixMode",ea="setuid",ta="setgid",na="sticky",ra=[zi,Di,Ai,vi,Ii,Ui,xi,Ti,ki,Wi,Mi,Li,Ci,Ni,Oi,Bi,Vi,qi,Pi,Yi,Hi,Ji,Zi,Gi,ji,Ki,"symlink",Xi,Qi,"crc32",_i,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",$i,"unixExternalUpper",ea,ta,na,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class oa{constructor(e){ra.forEach(t=>this[t]=e[t])}}const ia=new l([1,Q,10,_,28789,25461,$,ee,te,22613,13]);function aa(e,t,n){return e?t?12:16+4*n: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="File contains encrypted entry",da="Encryption method not supported",wa="Split zip file",pa="Entry data out of bounds",ma="Ambiguous archive",ha="Encrypted central directory is not supported",ya="Unsafe filename",ga="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",Ea="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Fa="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",ba="64-bit value exceeds Number.MAX_SAFE_INTEGER",Sa="unsorted central directory",Ra="unknown version needed to extract",za="compressed patched data",Da="malformed extra field",xa="unknown zip64 extensible data",Ta="wrapped entries count",Aa="appended data",va="prepended data",Ca="prepended central directory",Na="trailing central directory data",Ia="mismatched central directory offset",Ua="missing zip64 extra field",ka="duplicate filename",Wa="mismatched zip64 end of central directory record",Ma="multiple end of central directory records",La="mismatched local file header (filename)",Oa="mismatched local file header (general purpose bit flag)",Ba="mismatched local file header (compression method)",Va="mismatched local file header (crc32 or sizes)",qa=/^[a-zA-Z]:/,Pa=/(^|[\\/])\.\.([\\/]|$)/,Ya="utf-8",Ha="cp437",Ja=[[Ai,M],[vi,M],[Ci,M],[Ni,L]],Za={[L]:{ae:Us,bytes:4},[M]:{ae:ks,bytes:8}},Ga=i(o.MAX_SAFE_INTEGER);class ja{constructor(e,t={}){n.assign(this,{reader:new hi(e),options:t,se:{ce:new l,le:[],ue:[]},fe:new WeakSet})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await Ei(r),r.size!==de&&r.readUint8Array||(r=new Go(await Kn(r.readable)),await Ei(r)),r.size<j)throw new d(sa);const i=t.warnings=[],s=hs(e,t.options),c=s==Pe,u=s!=He,f=Es(Ts(t,e,Oe),s),p=function(e,t){if(e===de)return t;if(!ms(e))throw new d(Ea);return e}(Ts(t,e,"filenameValidation"),s),m=Ts(t,e,"normalizeFilename"),{de:h,we:y}=await Fs(r,u,f);if(!h)throw await async function(e){return await ps(e)==V}(r)?new d(wa):new d(ca);u&&y>1&&xs(Ma);const g=Ot(h);let E=Us(g,12),F=Us(g,16);const b=h.offset,S=Is(g,20),R=b+j+S,D=r.size-R;D>f&&xs(Aa),D>0&&Ri(i,Aa);let x=Is(g,4);const T=r.re||0;let A,v,C,N,I,U=Is(g,6),k=Is(g,10),W=0,q=X;const H=F==M||E==M||k==L||U==L;if(F!=M&&U!=L&&(F+=ws(r,U)),H){const e=h.offset>=K?await bi(r,h.offset-K,K):Se,t=Ot(e);if(e.length==K&&Us(t,0)==Z){F=ws(r,Us(t,4))+ks(t,8);let e=await bi(r,F,X),s=Ot(e);if(e.length<X||Us(s,0)!=J){const t=h.offset-K;let n=t-X;if(await ts(r,n,J)||(n=await async function(e,t){const n=a.max(0,t-65591),r=await bi(e,n,t-n),i=Ot(r);for(let e=r.length-X;e>=0;e--)if(Us(i,e)==J&&e+12+o(i.getBigUint64(e+4,!0))==r.length)return n+e}(r,t)),n!==de&&n>=0&&F!=n){const t=F;F=n,F>t&&(W=F-t),e=await bi(r,F,X),s=Ot(e)}}if(e.length<X||Us(s,0)!=J)throw new d(la);if(C=!0,N=ks(s,4)>44,N){const e=a.min(ks(s,4)-44,r.size-F-X);e>0&&(q+=e,I=function(e){const t={rawExtensibleData:e};if(e.length>=28){const r=Ot(e),o=Is(r,26);n.assign(t,{compressionMethod:Is(r,0),compressedSize:ks(r,2),uncompressedSize:ks(r,10),encryptionAlgorithm:Is(r,18),bitLength:Is(r,20),flags:Is(r,22),hashAlgorithm:Is(r,24),hashData:e.subarray(28,28+o)})}return t}(await bi(r,F+X,e)))}x==L?x=Us(s,16):x!=Us(s,16)&&Ds(c,i,Wa),U==L?U=Us(s,20):U!=Us(s,20)&&Ds(c,i,Wa),k==L?k=ks(s,32):k!=ks(s,32)&&Ds(c,i,Wa),E==M?E=ks(s,40):E!=ks(s,40)&&Ds(c,i,Wa),F=ws(r,U)+ks(s,48)+W}else if(F==M||E==M||U==L)throw new d(la)}let Q=E;const _=h.offset-(C?q+K:0);if(T!=x)throw new d(wa);if(F<0)throw new d(sa);let $=0,ee=F<r.size?await bi(r,F,E):Se,te=Ot(ee);if(E){let e=_-E;if(F!=e&&U==x){const t=ee.length>=4&&(Us(te,$)==Y||Boolean(I&&I.compressedSize)||_a(te));if(!t&&e<0)throw new d(sa);let n=!t;if(e>=0&&e+4<=r.size){let o=await es(r,e);if(!o){const t=await async function(e,t){const n=a.max(0,t-65541),r=await bi(e,n,t-n),o=Ot(r);for(let e=r.length-6;e>=0;e--)if(Us(o,e)==P&&e+6+Is(o,e+4)==r.length)return n+e}(r,_),n=t-E;t!==de&&n>=0&&await es(r,n)&&(e=n,o=!0)}t&&(n=o)}if(n&&e!=F){const n=F;F=e,ee=await bi(r,F,E),te=Ot(ee);const o=F-n,s=function(e,t){if(e.length<G)return de;const n=Us(t,42);if(n!=M)return n;let r=G+Is(t,28);const o=a.min(r+Is(t,30),e.length);for(;r+4<=o;){const e=Is(t,r),n=Is(t,r+2);if(1==e){let e=r+4;return Us(t,24)==M&&(e+=8),Us(t,20)==M&&(e+=8),e+8<=o?ks(t,e):de}r+=4+n}return de}(ee,te),l=s!==de&&await ts(r,s,B),u=s!==de&&await ts(r,s+o,B);o>0&&(!l||u)?(W+=o,A=t):(Ds(c,i,Ia),o<0&&!l&&u&&(W+=o))}}if(ee.length<4)throw new d(sa)}else!k&&F<_&&U==x&&(W+=_-F,F=_);const ne=_-F;if(E!=ne&&ne>=0&&U==x&&(E=ne,ee=await bi(r,F,E),te=Ot(ee)),F<0||F>=r.size)throw new d(sa);t.directoryOffset=F,t.directoryLength=Q;const re=As(t,e,"decryptCentralDirectory");let le,ue;if(re&&k&&ee.length>=4&&Us(te,0)!=Y&&(N||_a(te))){const e=function(e,t,n){const r=e&&e.compressedSize?e.compressedSize:t;return r>0&&r<=n?r:n}(I,Q,ee.length);ue=ee.subarray(e),ee=await re(ee.subarray(0,e),I),te=Ot(ee),Q=ee.length,le=!0}I&&!le&&(ee.length<4||Us(te,0)==Y)&&Ri(i,xa),v=F;const fe=Ts(t,e,"filenameEncoding"),we=Ts(t,e,"commentEncoding"),pe=new l;let me,ye=-1;const ge=!c&&!C;!k&&ge&&(k=$a(te,ee,$),k&&Ri(i,Ta));const Ee=n.assign({},t.options,e,{[Le]:s});delete Ee[Ae];for(let o=0;o<k;o++){const s=new Qa(r,Ee);if($+G>ee.length||Us(te,$)!=Y){if(0==o&&!le&&(N||_a(te)))throw new d(ha);throw new d(ua)}rs(s,te,$+6);const l=Boolean(s.bitFlag.languageEncodingFlag),u=$+G,f=u+s.filenameLength+s.extraFieldLength,h=Is(te,$+4),y=!(h>>8),g=h>>8==3,E=Is(te,$+32),F=f+E,b=new w(ee.subarray(u,F)),S=b.subarray(0,s.filenameLength),R=b.subarray(s.filenameLength+s.extraFieldLength),D=l||!fe&&To(S),x=l||!we&&To(R),T=Us(te,$+38),A=T&O,C={readOnly:Boolean(1&A),hidden:Boolean(2&A),system:Boolean(4&A),directory:Boolean(16&A),archive:Boolean(32&A)},I=Us(te,$+42),U=As(t,e,"decodeText")||xo,B=D?Ya:fe||Ha,V=x?Ya:we||Ha;let q=U(S,B,Ve);q===de&&(q=xo(S,B));let P,H=U(R,V,qe);H===de&&(H=xo(R,V)),n.assign(s,{index:o,pe:le,versionMadeBy:h,msDosCompatible:y,zip64:!1,compressedSize:0,uncompressedSize:0,me:E,offset:I,diskNumberStart:Is(te,$+34),internalFileAttributes:Is(te,$+36),externalFileAttributes:T,msdosAttributesRaw:A,msdosAttributes:C,rawFilename:S,filenameUTF8:D,commentUTF8:x,rawExtraField:b.subarray(s.filenameLength,s.filenameLength+s.extraFieldLength),rawComment:R,filename:q,comment:H});try{P=os(s,s,te,$+6)}catch(e){if(c||e.message!=he)throw e;s.he=!0,Ri(i,Ua,s.filename)}if(q=s.filename,m){const e=m(q);e!==de&&(q=s.filename=e)}if(gs(q,p)){const e=new d(ya);throw e.filename=q,e}if(P&&Ri(i,Da,q),s.he&&s.offset==M)v=0;else{s.offset+=W;const e=ws(r,s.diskNumberStart)+s.offset;v=a.min(e,v),e<ye&&Ri(i,Sa,q),ye=e}(s.version&O)>63&&Ri(i,Ra,q),32&~s.rawBitFlag||Ri(i,za,q),pe.has(s.filename)&&(me=!0),pe.add(s.filename);const J=s.externalFileAttributes>>16&L;s.unixMode===de&&16877&J&&(s.unixMode=J);const Z=Boolean(s.unixMode&ae),j=Boolean(s.unixMode&se),K=Boolean(512&s.unixMode),X=40960==((s.unixMode===de?J:s.unixMode)&oe),Q=s.unixMode!==de&&(s.unixMode&oe)==ie||(J&oe)==ie||y&&C.directory||s.filename.endsWith(ce),_=!X&&!Q&&(s.unixMode!==de?!!(73&s.unixMode):g&&!!(73&J));n.assign(s,{setuid:Z,setgid:j,sticky:K,symlink:X,unixExternalUpper:J,executable:_,directory:Q,zipCrypto:s.encrypted&&!s.extraFieldAES});const ne=new oa(s);if(s.he&&t.fe.add(ne),ne.getData=(e,n)=>s.getData(e,ne,t,n),ne.arrayBuffer=async e=>{const r=new z,o=Kn(r.readable).then(e=>e.arrayBuffer());return o.catch(()=>{}),await s.getData(r,ne,t,n.assign({},e,{preventClose:!1})),o},$=F,o==k-1&&ge){const e=$a(te,ee,$);e&&(k+=e,Ri(i,Ta))}const{onprogress:re}=e;if(re)try{await re(o+1,k,new oa(s))}catch{}yield ne}let Fe=$,be=ns(ee.subarray($))||(le?ns(ue):de);if(!be&&!le){const e=F+$,t=a.min(_-e,65541);t>=6&&(be=ns(await bi(r,e,t)))}be&&(t.digitalSignature=be,Fe=$+6+be.length),($!=Q&&Fe!=Q||!le&&$!=E&&Fe!=E)&&Ds(c,i,Na),me&&Ds(c,i,ka);const Re=Ts(t,e,"extractPrependedData"),ze=Ts(t,e,"extractAppendedData"),De=(c||Re)&&k&&4==v&&await async function(e){const t=await ps(e);return t==V||808471376==t}(r)?4:0;return c&&(W>0||k&&v>De)&&xs(va),(W>0||k&&v>4)&&Ri(i,va),A&&Ri(i,Ca),Re&&(t.prependedData=v>De?await bi(r,De,v-De):Se),t.comment=S?await bi(r,b+j,S):Se,ze&&(t.appendedData=R<r.size?await bi(r,R,r.size-R):Se),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){const{reader:e}=this;e.readUint8Array||!e.readable||e.readable.locked||await e.readable.cancel()}[Re](){return this.close()}}class Ka{constructor(e={}){let r;const{readable:o,writable:i}=new z({start(e){r=e}}),a=new ja(o,e),s=a.getEntriesGenerator(),c=new l;this.readable=new D({async pull(e){const{done:t,value:r}=await s.next();if(t)return e.close();const o=function(e,t){const{readable:n,writable:r}=new z;let o;const i={cancel:async e=>{t.delete(i),await(o?o.cancel(e):n.cancel(e))}};return i.readable=new D({async pull(a){o||(o=n.getReader(),t.add(i),async function(){try{await e.getData(r,{preventClose:!1})}catch(e){try{await r.abort(e)}catch{}}finally{t.delete(i)}}());const{done:s,value:c}=await o.read();s?a.close():a.enqueue(c)},cancel:e=>i.cancel(e)},{highWaterMark:0}),i}(r,c),i={...r,readable:o.readable};delete i.getData,n.defineProperties(i,{localDirectory:{get:()=>r.localDirectory,enumerable:!0},warnings:{get:()=>r.warnings,enumerable:!0}}),e.enqueue(i)},async cancel(e){const n=t.from(c);c.clear(),r.error(e),await g.allSettled(n.map(t=>t.cancel(e))),await g.allSettled([s.return(),a.close()])}}),this.writable=i}}async function Xa(e,t={}){if(e=new hi(e),await Ei(e),e.size!==de&&e.readUint8Array||(e=new Go(await Kn(e.readable)),await Ei(e)),e.size<j)return!1;const n=hs(t,{}),r=n!=He,o=Es(t[Oe],n),{de:i,we:a}=await Fs(e,r,o);if(!i||n==Pe&&a>1)return!1;const s=Is(Ot(i),20),c=i.offset+j+s;return e.size-c<=o}class Qa{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,r,o={}){const i=this,{se:s,directoryOffset:c}=r;if(i.he)throw new d(he);const l=gt(),{reader:u,index:f,offset:w,diskNumberStart:p,extraFieldAES:m,extraFieldZip64:h,compressionMethod:y,bitFlag:g,rawBitFlag:E,crc32:F,rawLastModDate:b,uncompressedSize:S,compressedSize:R}=i,{dataDescriptor:z}=g,D=t.localDirectory={},T=t.warnings=[],A=ws(u,p)+w,v=await bi(u,A,le),C=Ot(v);let N=Ts(i,o,ze),I=Ts(i,o,De);const U=tt(Ts(i,o,xe)),k=Boolean(U),W=!0===U;if(et(N,I),N=N&&N.length?N:de,I=I&&I.length?I:de,m&&99!=m.originalCompressionMethod)throw new d(er);if(v.length<le||Us(C,0)!=B)throw new d(pe);rs(D,C,4);const{extraFieldLength:M,filenameLength:L}=D,V=D.dataOffset=A+le+L+M,q=Ts(i,o,"checkLocalDirectory"),P=hs(o,i.options),Y=function(e,t){return e===de?t!=He:Boolean(e)}(q,P),H=Ts(i,o,"checkLocalFilename"),J=function(e,t){return e===de?t==Pe:Boolean(e)}(H===de?q:H,P);let Z=Se;if(J&&(L||M)){const e=await bi(u,A+le,L+M);Z=e.subarray(0,L),D.rawExtraField=e.subarray(L)}else D.rawExtraField=M?await bi(u,A+le+L,M):Se;J&&(D.rawFilename=Z),os(i,D,C,4,!0)&&Ri(T,Da),function(e,t,n,r,o){const{rawFilename:i}=e,a=!o,s=e.pe&&(t.rawBitFlag&re)==re;!r||s||n.length==i.length&&!n.some((e,t)=>e!=i[t])||Ds(a,o,La),(2121&t.rawBitFlag)!=(2121&e.rawBitFlag)&&Ds(a,o,Oa),t.compressionMethod!=e.compressionMethod&&Ds(a,o,Ba),t.bitFlag.dataDescriptor||s||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||Ds(a,o,Va)}(i,D,Z,J,Y?de:T);const{lastAccessDate:G,creationDate:j,uid:K,gid:X}=D;G&&t.lastAccessDate===de&&(t.lastAccessDate=G),j&&t.creationDate===de&&(t.creationDate=j),K!==de&&t.uid===de&&(t.uid=K),X!==de&&t.gid===de&&(t.gid=X);const Q=Ts(i,o,"checkPasswordOnly"),_=i.encrypted&&(!W||Q),$=_&&!m;if(W||(t.zipCrypto=$),_&&!(64&~i.rawBitFlag))throw new d(da);const ee=k?de:or(y);if(0!=y&&8!=y&&9!=y&&!ee&&!k)throw new d(er);if(_){if(!$&&(m.strength<1||m.strength>3))throw new d(da);if(!N&&!I)throw new d(fa)}if(V+R>a.min(u.size,c))throw new d(pa);const te=R,ne=_e(Ts(i,o,Te));$e(ne);let oe=Ts(i,o,"checkOverlappingEntry");const ie=Ts(i,o,"checkOverlappingEntryOnly");ie&&(oe=!0);const{onstart:ae,onprogress:se,onend:ce}=o,ue=0!=y&&!k,fe=k?R-aa(_,$,m&&m.strength):S,we=9==y;let ye=Ts(i,o,Ce);we&&(ye=!1);const ge=Ts(i,o,"checkCrc32"),Ee=(ge===de?Ts(i,o,"checkSignature"):ge)&&!k&&(!_||$||m&&1==m.vendorVersion),Fe={options:{codecType:Lr,password:N,rawPassword:I,zipCrypto:$,encryptionStrength:m&&m.strength,checkCrc32:Ee,checkAuthenticationCode:Ts(i,o,"checkAuthenticationCode"),passwordVerification:$&&(z?b>>>8&O:F>>>24&O),outputSize:fe,crc32:F,compressed:ue,encrypted:_,useWebWorkers:Ts(i,o,ve),useCompressionStream:ye,deflate64:we,format:ee?ee.format:de,codecURI:ee?ee.codecURI:de,compressionMethod:y,rawBitFlag:E,checkPasswordOnly:Q},config:l,A:{signal:ne,size:te,onstart:ae,onprogress:se,onend:ce}};let be,Re,Ae;oe&&(await async function({reader:e,ye:t,index:n,offset:r,crc32:o,compressedSize:i,uncompressedSize:a,dataOffset:s,dataDescriptor:c,extraFieldZip64:l,se:u}){let f=0;if(c){const n=Boolean(l),r=await us(e,s+i,{crc32:o,compressedSize:i,uncompressedSize:a,zip64:n});r?(t.localDirectory.dataDescriptor=r,f=ds(r.zip64,r.signature)):f=ds(n,!1)}const w={start:r,end:s+i+f,ye:t},{ce:p,le:m,ue:h}=u;if(!p.has(n)){const e=function(e,t){let n=0,r=e.length;for(;n<r;){const o=n+r>>>1;e[o].start<t.start?n=o+1:r=o}const o=e[n-1],i=e[n];return o&&ls(t,o)?o:i&&ls(t,i)?i:void 0}(m,w)||h.find(e=>ls(w,e));if(e){const t=new d(me);throw t.overlappingEntry=e.ye,t}p.add(n),h.push(w),h.length*h.length>m.length&&(h.sort((e,t)=>e.start-t.start),u.le=function(e,t){const n=[];let r=0,o=0;for(;r<e.length||o<t.length;)o==t.length||r<e.length&&e[r].start<t[o].start?n.push(e[r++]):n.push(t[o++]);return n}(m,h),h.length=0)}}({reader:u,ye:t,index:f,offset:A,crc32:F,compressedSize:R,uncompressedSize:S,dataOffset:V,dataDescriptor:z||D.bitFlag.dataDescriptor,extraFieldZip64:h||D.extraFieldZip64,se:s}),function(e,t,n){const{dataDescriptor:r}=t,o=e.pe&&(t.rawBitFlag&re)==re;r&&!o&&(e.crc32!==de&&r.crc32!=e.crc32||r.compressedSize!=e.compressedSize||r.uncompressedSize!=e.uncompressedSize)&&Ds(!n,n,Va)}(i,D,Y?de:T));try{if(!ie){Q&&(e=new x),e=new yi(e),await Ei(e,function(e,t,n){return a.min(e,n?1032*t:t)}(fe,R,ue)),({writable:be}=e);const t=jn(u.createReadable({offset:V,size:te})),{outputSize:r}=await yo({readable:t,writable:be},Fe);if($e(ne),r!=fe)throw n.assign(new d(cr),{outputSize:r});e.size+=r}}catch(t){if(Bt(t)&&t.outputSize!==de&&(e.size+=t.outputSize),!Q||!Bt(t)||t.message!=yn)throw Re=t,Ae=!0,t}finally{if((gi(e)||!Ts(i,o,Ne))&&be&&!be.locked){const e=be.getWriter();if(Ae)try{await e.abort(Re)}catch{}else await e.close()}}return Q||ie?de:e.getData?e.getData():be}}function _a(e){return e.byteLength>=4&&134630224==Us(e,0)}function $a(e,t,n){let r=0;for(;n+G<=t.length&&Us(e,n)==Y;)n+=G+Is(e,n+28)+Is(e,n+30)+Is(e,n+32),r++;return r%65536?0:r}function es(e,t){return ts(e,t,Y)}async function ts(e,t,n){return!(t<0||t+4>e.size)&&Us(Ot(await bi(e,t,4)),0)==n}function ns(e){if(e.length>=6){const t=Ot(e);if(Us(t,0)==P){const n=Is(t,4);if(6+n<=e.length)return new w(e.subarray(6,6+n))}}}function rs(e,t,r){const o=e.rawBitFlag=Is(t,r+2),i=!(1&~o),a=Us(t,r+6);n.assign(e,{encrypted:i,version:Is(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&ne)==ne},rawLastModDate:a,lastModDate:vs(a),filenameLength:Is(t,r+22),extraFieldLength:Is(t,r+24)})}function os(e,t,r,o,i){const{rawExtraField:a}=t,l=t.extraField=new c,u=Ot(a);let f=0,w=!1;try{for(;f<a.length;){const e=Is(u,f),t=Is(u,f+2);l.set(e,{type:e,data:a.slice(f+4,f+4+t)}),f+=4+t}}catch{w=!0}f>a.length&&(w=!0);const p=Is(r,o+4);n.assign(t,{signature:Us(r,o+10),crc32:Us(r,o+10),compressedSize:Us(r,o+14),uncompressedSize:Us(r,o+18)});const m=l.get(1);let h;m?(function(e,t,n){t.zip64=!0;const r=Ot(e.data),o=Ja.filter(([e,n])=>t[e]==n),i=o.reduce((e,[,t])=>e+Za[t].bytes,0);if(e.data.length<i){if(n)return!1;throw new d(he)}const a=[];try{for(let e=0,t=0;e<o.length;e++){const[,n]=o[e],i=Za[n];a.push(i.ae(r,t)),t+=i.bytes}}catch(e){if(n)return!1;throw e}return o.forEach(([n],r)=>{t[n]=e[n]=a[r]}),!0}(m,t,i)||(w=!0),t.extraFieldZip64=m):Ja.some(([e,n])=>t[e]==n)&&(i?w=!0:h=!0);const y=l.get(28789);y&&(is(y,zi,Di,t,e),t.extraFieldUnicodePath=y);const g=l.get(25461);g&&(is(g,xi,Ti,t,e),t.extraFieldUnicodeComment=g);const E=l.get(Q);E&&(99==p||t.encrypted)&&E.data.length>=7?(function(e,t,r){const o=Ot(e.data),i=Ns(o,4);n.assign(e,{vendorVersion:Ns(o,0),vendorId:Ns(o,2),strength:i,originalCompressionMethod:r,compressionMethod:Is(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=de)}(E,t,p),t.extraFieldAES=E):(E&&(w=!0),t.compressionMethod=p);const F=l.get(13);F&&(as(F,t),t.extraFieldPkwareUnix=F);const b=l.get(22613);b&&(as(b,t),t.extraFieldUnixType1=b);const S=l.get(_);S&&(function(e,t,n){if(!e.data.length)return;const r=Ot(e.data),o=Ns(r,0),i=[],a=[];n?(1&~o||(i.push(Ii),a.push(Ui)),2&~o||(i.push(ki),a.push(Wi)),4&~o||(i.push(Mi),a.push(Li))):e.data.length>=5&&(i.push(Ii),a.push(Ui));let c=1;i.forEach((n,o)=>{if(e.data.length>=c+4){const i=Us(r,c);t[n]=e[n]=new s(1e3*(0|i));const l=a[o];e[l]=i}c+=4})}(S,t,i),t.extraFieldExtendedTimestamp=S);const R=l.get(10);R&&(function(e,t){const r=Ot(e.data);let o,i=4;try{for(;i<e.data.length&&!o;){const t=Is(r,i),n=Is(r,i+2);1==t&&(o=e.data.slice(i+4,i+4+n)),i+=4+n}}catch{}if(o&&24==o.length){const r=Ot(o),i=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),s=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:i,rawLastAccessDate:a,rawCreationDate:s});const c={lastModDate:Cs(i),lastAccessDate:Cs(a),creationDate:Cs(s)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:a,rawCreationDate:s})}}(R,t),t.extraFieldNTFS=R);const z=l.get(ee);let D;z&&(D=ss(z,t,!0),t.extraFieldInfoZip=z);const x=l.get(te);x&&(ss(x,D?{}:t,!1),t.extraFieldUnix=x);const T=l.get($);if(T&&(t.extraFieldUSDZ=T),h)throw new d(he);return w}function is(e,t,r,o,i){if(e.data.length<5)return void(e.valid=!1);const a=Ot(e.data),s=new Kt;s.append(i[r]);const c=Ot(new w(4));c.setUint32(0,s.get(),!0);const l=Us(a,1),u=Ns(a,0);n.assign(e,{version:u,[t]:xo(e.data.subarray(5)),valid:1==u&&!i.bitFlag.languageEncodingFlag&&l==Us(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function as(e,t){if(e.data.length<8)return;const r=Ot(e.data),o={lastAccessDate:new s(1e3*(0|Us(r,0))),lastModDate:new s(1e3*(0|Us(r,4)))};e.data.length>=12&&(o.uid=Is(r,8),o.gid=Is(r,10)),n.assign(e,o),n.assign(t,o)}function ss(e,t,r){try{const o=Ot(e.data);let i,a;if(r){let t=0;const r=Ns(o,t++),s=Ns(o,t++);i=cs(e.data.subarray(t,t+s)),t+=s;const c=Ns(o,t++);a=cs(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:i,gid:a})}else e.data.length>=4&&(i=Is(o,0),a=Is(o,2),n.assign(e,{uid:i,gid:a}));return i!==de&&(t.uid=i),a!==de&&(t.gid=a),i!==de||a!==de}catch{}}function cs(e){const t=new w(4);return t.set(e,0),new h(t.buffer,t.byteOffset,4).getUint32(0,!0)}function ls(e,t){return e.start<t.end&&t.start<e.end}async function us(e,t,{crc32:n,compressedSize:r,uncompressedSize:o,zip64:i}){const s=a.min(24,a.max(0,e.size-t)),c=Ot(s?await bi(e,t,s):Se),l=[[i,!0],[i,!1],[!i,!0],[!i,!1]].map(([e,t])=>fs(c,e,t)).filter(e=>e&&e.compressedSize==r&&e.uncompressedSize==o);return l.find(e=>e.crc32==n)||l[0]||fs(c,i,!0)||fs(c,i,!1)}function fs(e,t,n){const r=n?4:0;if(e.byteLength<ds(t,n)||n&&Us(e,0)!=q)return de;const o=Us(e,r);let i,a;try{t?(i=ks(e,r+4),a=ks(e,r+12)):(i=Us(e,r+4),a=Us(e,r+8))}catch{return de}return{signature:n,zip64:t,crc32:o,compressedSize:i,uncompressedSize:a}}function ds(e,t){return(e?20:12)+(t?4:0)}function ws(e,t){return e.ie?e.ie(t):0}async function ps(e){return Us(Ot(await bi(e,0,4)))}function ms(e){return e===Pe||e===Ye||e===He}function hs(e,t){return ys(e,ys(t,Ye))}function ys(e,t){const n=e[Le];if(n!==de){if(!ms(n))throw new d(ga);return n}const r=e[Ae];return r===de?t:r?Pe:t==He?He:Ye}function gs(e,t){if(t==He)return!1;const n=e.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(Pa.test(e)||e.startsWith("/")||e.startsWith("\\")||qa.test(e))||t==Pe&&(n.includes(".")||n.includes("")||e.includes("\0"))}function Es(e,t){if(e!==de){const t=ot(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new d(Fa);return t}return t==Pe?0:t==He?1/0:L}async function Fs(e,t,n){const{size:r}=e,o=a.min(r,65557),i={ge:64};let s,c,l=0;for await(const[n,a,u,f,d]of bs(e,o)){const o=Is(n,f+20);if(d+j+o==r){const o=await Rs(e,n,a,f,d,r,i);if(2==o){if(s||(s=Ss(u,f,d)),l++,!t||l>1)break}else 1!=o||c||(c=Ss(u,f,d))}}return s||(s=c),s||(s=await async function(e,t,n){const{size:r}=e,o=a.min(r,t==1/0?r:65557+t);let i,s;for await(const[t,a,c,l,u]of bs(e,o)){const o=Ss(c,l,u);i||(i=o);const f=await Rs(e,t,a,l,u,r,n);if(2==f)return o;1!=f||s||(s=o)}return s||i}(e,n,i)),{de:s,we:l}}async function*bs(e,t){const n=e.size-t,r=await bi(e,n,t),o=Ot(r);for(let e=r.length-j;e>=0;e--)Us(o,e)==H&&(yield[o,n,r,e,n+e])}function Ss(e,t,n){return{offset:n,buffer:new w(e.subarray(t,t+j)).buffer}}async function Rs(e,t,n,r,o,i,a){const s=Is(t,r+10),c=Us(t,r+12),l=Us(t,r+16);if(s==L||c==M||l==M)return await zs(e,t,n,o-K,i,a)==Z?2:0;if(!s&&!c)return 1;const u=Is(t,r+6);for(const r of[o-c,ws(e,u)+l])if(await zs(e,t,n,r,i,a)==Y)return 2;return 0}async function zs(e,t,n,r,o,i){return r<0||r+4>o?de:r>=n?Us(t,r-n):i.ge>0?(i.ge--,Us(Ot(await bi(e,r,4)),0)):de}function Ds(e,t,n){e?xs(n):Ri(t,n)}function xs(e){const t=new d(ma);throw t.reason=e,t}function Ts(e,t,n){return t[n]===de?e.options[n]:t[n]}function As(e,t,n){return Qe(Ts(e,t,n))}function vs(e){const t=(4294901760&e)>>16,n=e&L,r=new s(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<fe?fe:r}function Cs(e){return new s(o(e/i(1e4)-i(116444736e5)))}function Ns(e,t){return e.getUint8(t)}function Is(e,t){return e.getUint16(t,!0)}function Us(e,t){return e.getUint32(t,!0)}function ks(e,t){const n=e.getBigUint64(t,!0);if(n>Ga)throw new d(ba);return o(n)}var Ws=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:ma,ERR_BAD_FORMAT:sa,ERR_CENTRAL_DIRECTORY_NOT_FOUND:ua,ERR_CODEC_OUT_OF_MEMORY:ur,ERR_ENCRYPTED:fa,ERR_ENCRYPTED_CENTRAL_DIRECTORY:ha,ERR_ENTRY_DATA_OUT_OF_BOUNDS:pa,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:la,ERR_EOCDR_NOT_FOUND:ca,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:he,ERR_INVALID_AUTHENTICATION_CODE:hn,ERR_INVALID_COMPRESSED_DATA:lr,ERR_INVALID_CRC32:fr,ERR_INVALID_FILENAME_VALIDATION:Ea,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Fa,ERR_INVALID_PASSWORD:mn,ERR_INVALID_STRICTNESS:ga,ERR_INVALID_UNCOMPRESSED_SIZE:cr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:pe,ERR_OVERLAPPING_ENTRY:me,ERR_SPLIT_ZIP_FILE:wa,ERR_UNSAFE_FILENAME:ya,ERR_UNSUPPORTED_COMPRESSION:er,ERR_UNSUPPORTED_ENCRYPTION:da,ERR_UNSUPPORTED_UINT64:ba,ERR_WORKER_STARTUP_TIMEOUT:Vr,WARNING_APPENDED_DATA:Aa,WARNING_COMPRESSED_PATCHED_DATA:za,WARNING_DUPLICATE_FILENAME:ka,WARNING_MALFORMED_EXTRA_FIELD:Da,WARNING_MISMATCHED_CENTRAL_DIRECTORY_OFFSET:Ia,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Oa,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:Ba,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:Va,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:La,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:Wa,WARNING_MISSING_ZIP64_EXTRA_FIELD:Ua,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:Ma,WARNING_PREPENDED_CENTRAL_DIRECTORY:Ca,WARNING_PREPENDED_DATA:va,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Na,WARNING_UNKNOWN_VERSION:Ra,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:xa,WARNING_UNSORTED_CENTRAL_DIRECTORY:Sa,WARNING_WRAPPED_ENTRIES_COUNT:Ta,ZipReader:ja,ZipReaderStream:Ka,Ee:async function(e,t,{crc32:n,compressedSize:r,uncompressedSize:o,extraFieldZip64:i}){const a=await us(e,t,{crc32:n,compressedSize:r,uncompressedSize:o,zip64:Boolean(i)});if(a&&a.compressedSize==r&&a.uncompressedSize==o)return ds(a.zip64,a.signature)},isZipFile:Xa});const Ms="File already exists",Ls="Zip file comment exceeds 64KB",Os="Invalid zip file comment (must be a Uint8Array)",Bs="File entry comment exceeds 64KB",Vs="Invalid file entry comment (must be a string)",qs="Invalid date (must be a valid Date instance)",Ps="File entry name exceeds 64KB",Ys="Version exceeds 65535",Hs="The strength must equal 1, 2, or 3",Js="Encryption is not supported in USDZ files",Zs="Split zip files are not supported in USDZ files",Gs="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",js="Invalid extra field (must be a Map)",Ks="Invalid extra field type (must be integer 0..65535)",Xs="Invalid extra field data (must be a Uint8Array)",Qs="Extra field data exceeds 64KB",_s=-2147483648,$s=2147483647,ec=i(0),tc=i("0x7fffffffffffffff"),nc="Zip64 is not supported (set the 'zip64' option to 'true')",rc="Undefined uncompressed size",oc="Undefined compression method",ic="Undefined CRC32",ac="Undefined reader",sc="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",cc="Zip file not empty",lc="Invalid uid (must be integer 0..2^32-1)",uc="Invalid gid (must be integer 0..2^32-1)",fc="Invalid UNIX mode (must be integer 0..65535)",dc="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",wc="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",pc="Invalid msdosAttributesRaw (must be integer 0..255)",mc="Invalid msdosAttributes (must be an object with boolean flags)",hc="Invalid level (must be integer 0..9)",yc="Signature data exceeds 64KB",gc="Invalid entry option (must be an entry returned by ZipReader#getEntries())",Ec="The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set",Fc="compression unavailable",bc="clamped last modification date",Sc=new w([7,0,2,0,65,69,3,0,0]),Rc="infozip",zc="unix",Dc=[8,9,5,3];let xc=0;const Tc=[];class Ac{constructor(e,t={}){e=new yi(e);const{availableSize:r=we,maxSize:o=we}=e,i=r>0&&r!==we&&o>0&&o!==we;if(i&&t[Me])throw new d(Zs);n.assign(this,{writer:e,Fe:i,options:t,be:new c,Se:new l,offset:t[We]===de?e.size||e.writable.size||0:t[We],Re:t[We]===de?0:t[We]-(e.size||e.writable.size||0),ze:new l,De:[],warnings:[],xe:0,Te:0,Ae:de,ve:!1})}prependZip(e){return Nc(this,async function(e,t){if(e.Se.size)throw new d(cc);await Ic(e,t)}(this,e))}appendZip(e,t={}){return Nc(this,Ic(this,e,t))}add(e="",r,l={}){const u=this,{ze:f}=u,p=async function(e,r,l,u){const f=(u=n.assign({},u))[Be];if(f!==de){const{Ce:r,Ne:o}=function(e,r,o){if(null===e||typeof e!=Ee||t.isArray(e))throw new d(gc);const{externalFileAttributes:i,versionMadeBy:l,comment:u,lastModDate:f,rawLastModDate:w,creationDate:p,lastAccessDate:m,uncompressedSize:h,encrypted:y,zipCrypto:g,crc32:E,compressionMethod:F,extraFieldAES:b,extraFieldUnix:S,internalFileAttributes:R,extraField:z,bitFlag:D,directory:x,uid:T,gid:A}=e,v={externalFileAttributes:i,versionMadeBy:l,comment:u,lastModDate:f,creationDate:p,lastAccessDate:m,internalFileAttributes:R,directory:x};D&&D.languageEncodingFlag&&(v[Ue]=!0);const C=function(e){if(e){const t=new c;if(e.forEach((e,n)=>{ia.has(n)||t.set(n,e.data)}),t.size)return t}}(z);C&&(v[_i]=C),T===de&&A===de||n.assign(v,{uid:T,gid:A,unixExtraFieldType:S?zc:Rc});const N={};if(r&&!x)if(n.assign(N,{uncompressedSize:h,crc32:E,compressionMethod:F}),r!==Je&&n.assign(N,{encrypted:y,zipCrypto:g,encryptionStrength:b?b.strength:de}),D&&(N.dataDescriptor=D.dataDescriptor,N[Ie]=Dc[D.level]),o===de)N.rawLastModDate=w;else if(r!==Je&&g&&(!D||D.dataDescriptor)&&o instanceof s&&function(e){let t=new s(2e3*a.ceil(a.floor(e.getTime()/1e3)/2));return t<fe?t=fe:t>ue&&(t=ue),(t.getHours()<<3|t.getMinutes()>>3)&O}(o)!=(w>>>8&O))throw new d(Ec);return{Ce:v,Ne:N}}(f,tt(el(e,u,xe)),el(e,u,Ii));delete u[Be],u=n.assign(r,o,u)}if(el(e,u,ji)&&!r.endsWith(ce)&&(r+=ce),e.Se.has(r))throw new d(Ms);e.Se.add(r),xc<gt().maxWorkers?xc++:await new g(e=>Tc.push(e));try{return await async function(e,r,c,l){const u=function(e,n,r){let o=el(e,r,Pi),i=el(e,r,Zi,o?20:768);const a=el(e,r,Ki),s=rl(e,r,"uid"),c=rl(e,r,"gid");let l=rl(e,r,$i),u=el(e,r,"unixExtraFieldType"),f=el(e,r,ea),w=el(e,r,ta),p=el(e,r,na);if(rt(s,M,lc),rt(c,M,uc),rt(l,L,fc),u!==de&&u!==Rc&&u!==zc)throw new d(dc);if(u===zc&&(s!==de&&s>L||c!==de&&c>L))throw new d(wc);u!==de||s===de&&c===de||(u=Rc);let m=rl(e,r,Vi),h=el(e,r,qi);const y=m!==de||h!==de;if(s!==de||c!==de||l!==de||u||a?(o=!1,i=i&O|768):y&&(o=!0,i&=O),rt(m,O,pc),h&&(typeof h!==Ee||t.isArray(h)))throw new d(mc);if(i>L)throw new d(Ys);let g=el(e,r,Bi);const E=g!==de;E||(g=0),!r[ji]&&n.endsWith(ce)&&(r[ji]=!0);const F=el(e,r,ji);if(F?(n.endsWith(ce)||(n+=ce),E||(g=16,o||(g|=16877<<16))):o||E||(g=a?493<<16:27525120),!o){const e=l!==de||Boolean(f||w||p);l=l===de?g>>16&L:l&L,f?l|=ae:f=Boolean(l&ae),w?l|=se:w=Boolean(l&se),p?l|=512:p=Boolean(512&l),E&&!e||(F?l=-61441&l|ie:l&oe||(l|=32768),g=(l&L)<<16|g&L)}({msdosAttributesRaw:m,msdosAttributes:h}=function(e,t){if(e!==de)e&=O;else if(t!==de){const{readOnly:n,hidden:r,system:o,directory:i,archive:a}=t;let s=0;n&&(s|=1),r&&(s|=2),o&&(s|=4),i&&(s|=16),a&&(s|=32),e=s&O}return t===de&&(t={readOnly:Boolean(1&e),hidden:Boolean(2&e),system:Boolean(4&e),directory:Boolean(16&e),archive:Boolean(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}}(m,h)),y&&(g=g&M|m&O);const b=g>>16&L,S=l!==de&&40960==(l&oe);return{name:n,Ie:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:g,unixExternalUpper:b,uid:s,gid:c,unixMode:l,unixExtraFieldType:u,symlink:S,setuid:f,setgid:w,sticky:p,msdosAttributesRaw:m,msdosAttributes:h}}}(e,r,l);({name:r}=u);const f=function(e,t,n){const r=nl(e,n,"encodeText")||Qt;let i=r(t,Ve);if(i===de&&(i=Qt(t)),dl(i)>L)throw new d(Ps);const a=n[xi]||"";if(typeof a!=Fe)throw new d(Vs);let c=r(a,qe);if(c===de&&(c=Qt(a)),dl(c)>L)throw new d(Bs);const l=el(e,n,Ji);if(l!==de&&l>L)throw new d(Ys);const u=tl(e,n,Ii,new s),f=el(e,n,Ui),w=tl(e,n,ki),p=tl(e,n,Mi),m=el(e,n,Oi,0),h=tt(el(e,n,xe)),y=Boolean(h),g=!0===h;let E=el(e,n,ze),F=el(e,n,De);et(E,F),E=E&&E.length?E:de,F=F&&F.length?F:de;const b=rl(e,n,"encryptionStrength",3),S=el(e,n,Gi),R=el(e,n,"extendedTimestamp",!0),z=el(e,n,"ntfsTimestamp"),D=el(e,n,"keepOrder",!0),x=el(e,n,ve),T=el(e,n,"bufferedWrite"),A=nl(e,n,"createTempStream"),v=el(e,n,"dataDescriptorSignature",!0),C=_e(el(e,n,Te));$e(C);const N=el(e,n,Ue,!pl(i)||!pl(c)),I=el(e,n,Xi),U=y||I===de?de:or(I);if(!y&&I!==de&&0!==I&&8!==I&&!U)throw new d(er);let k=rl(e,n,Ie);if(rt(k,9,hc),e.options[Me]){if(E!==de||F!==de)throw new d(Js);k===de&&I===de&&(k=0)}y&&(k=ot(n[Ie]));let W=el(e,n,Ce),M=el(e,n,ke);T&&M===de&&(M=!1),(M===de||S&&!g)&&(M=!0),k!==de&&6!=k&&(W=!1);const O=el(e,n,Yi);if(!(S||E===de&&F===de||o.isInteger(b)&&b>=1&&b<=3))throw new d(Hs);const B=Wc(n[_i]),V=Wc(n.localExtraField),q=Wc(n.centralExtraField);return{comment:a,Ie:{rawFilename:i,rawComment:c,version:l,lastModDate:u,rawLastModDate:f,lastAccessDate:w,creationDate:p,internalFileAttributes:m,Ue:y,ke:g,password:E,rawPassword:F,encryptionStrength:b,zipCrypto:S,extendedTimestamp:R,ntfsTimestamp:z,keepOrder:D,useWebWorkers:x,bufferedWrite:T,createTempStream:A,dataDescriptorSignature:v,signal:C,useUnicodeFileNames:N,compressionMethod:I,format:U?U.format:de,codecURI:U?U.codecURI:de,We:U?U.versionNeeded:de,level:k,useCompressionStream:W,dataDescriptor:M,zip64:O,rawExtraField:B,Me:V,Le:q}}}(e,r,l),{comment:p}=f,m=l[_i];e.be.set(r,de);const h=e.Ae,y={};let E,F;f.Ie.keepOrder&&(y.Oe=new g(e=>E=e)),e.Ae=y;try{const{Ie:t}=f;0==t.level||t.compressionMethod!==de||t.Ue||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;return!(!n||n.requiresModule)||!(!br(t)&&(r=t,!Fr(r,pr)))||!!n&&await Jr();var r}(gt())||(t.level=0,Ri(e.warnings,Fc,r));const o=await async function(e,t,{Ie:r},o){if(r.Ue&&!t&&!el(e,o,ji))throw new d(ac);let i;if(t){if(t=new hi(t),await Ei(t),!t.readUint8Array&&!t.readable)throw new d(sc);({size:i}=t)}return n.assign({reader:t},function(e,t,n,r,o){const{Ue:i,ke:a,zipCrypto:s,password:c,rawPassword:l,encryptionStrength:u}=r;let{dataDescriptor:f,zip64:w,level:p,compressionMethod:m}=r,h=0,y=0,g=!1;if(i&&t){if(y=o[Ai],y===de)throw new d(rc);if(m===de)throw new d(oc)}const E=!0===w,F=el(e,o,Hi);if(t&&a&&!F&&dl(c,l))throw new d(Gs);const b=t&&(Boolean(c&&dl(c)||l&&dl(l))||a&&F);t||(p=0,m=0);const S=aa(b,s,u);t&&(i?(o.uncompressedSize=y,h=n===de?ol(y)+S:n+(a?0:S)):n===de?(f=!0,(w||w===de)&&(w=g=!0,h=4294967296)):(o.uncompressedSize=y=n,h=(il(m,p)?ol(y):y)+S));const R=!(b||t&&(0!==n||i)||il(m,p));R&&el(e,o,ke)===de&&(f=!1);const z=E||g||y>=M,D=E||h>=M;if(z||D){if(!1===w)throw new d(nc);w=!0}return w=w||!1,{Be:h,Ie:{dataDescriptor:f,Ve:R,zip64:w,qe:E,Pe:g,Ye:z,He:D,uncompressedSize:y,level:p,compressionMethod:m,encrypted:b}}}(e,Boolean(t),i,r,o))}(e,c,f,l);({reader:c}=o);const p=Vc(e.writer),m=Bc(e.writer);let b=l.crc32===de?l[Qi]:l.crc32;const S=o.Ie.encrypted&&!t.zipCrypto;if(t.Ue&&!t.ke&&S&&(b=de),t.Ue&&c&&!S&&b===de)throw new d(ic);const R=function(e){const{rawFilename:t,lastModDate:n,rawLastModDate:r,lastAccessDate:o,creationDate:i,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:f,dataDescriptor:w,directory:p,rawExtraField:m,Me:h,encryptionStrength:y,extendedTimestamp:g,ntfsTimestamp:E,Ue:F,encrypted:b,Ye:S,He:R,uncompressedSize:z,Pe:D,crc32:x}=e;let{version:T,compressionMethod:A}=e;const v=!p&&il(A,c);let C;const N=F||!v,I=l&&(e.bufferedWrite||!w||!S&&!R||N&&!D),U=I||l&&w&&(S||R);if(l&&(S||R)){const e=20,t=Oc(e);if(t.Je(1),t.Je(e-4),C=t.Ze,I&&(t.Ge(z),N)){const e=aa(b,u,y);t.Ge(F?0:z+e)}}else C=Se;let k,W,M,O,V,q,P;if(b&&!u){const e=Oc(dl(Sc)+2);e.Je(Q),e.je(Sc),k=e.Ze,k[8]=y}else k=Se;if(g){const e=_c(n),t=(Y=e)>=_s&&Y<=$s;if(t){const t=9+(o?4:0)+(i?4:0),n=Oc(t);O=1+(o?2:0)+(i?4:0),V=e,n.Je(_),n.Je(t-4),n.Ke(O),n.Xe(e),o&&n.Xe($c(_c(o))),i&&n.Xe($c(_c(i))),M=n.Ze}else M=Se;if(E===de?!t||Boolean(o||i):E)try{const e=Qc(n),t=Oc(36);t.Je(10),t.Je(32),t.Qe(4),t.Je(1),t.Je(24),t.Ge(e),t.Ge(o?Qc(o):e),t.Ge(i?Qc(i):e),W=t.Ze}catch{W=Se}else W=Se}else W=M=Se;var Y;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=Rc||t===de&&n===de)if(r!=zc||t===de&&n===de)q=P=Se;else{const e=Oc(8);e.Je(te),e.Je(4),e.Je((t===de?0:t)&L),e.Je((n===de?0:n)&L),q=e.Ze;const r=Oc(4);r.Je(te),r.Je(0),P=r.Ze}else{const e=Lc(t===de?0:t),r=Lc(n===de?0:n),o=3+e.length+r.length,i=Oc(4+o);i.Je(ee),i.Je(o),i.Ke(1),i.Ke(e.length),i.je(e),i.Ke(r.length),i.je(r),q=P=i.Ze}}catch{q=P=Se}A===de&&(A=v?8:0),T===de&&(T=0!=A||p||b?20:10);const{We:H}=e;v&&H!==de&&(T=T>H?T:H),l&&(T=T>45?T:45),b&&!u&&(T=T>51?T:51,F&&x!==de&&(k[4]=1),cl(Ot(k),9,A),A=99);const J=U?dl(C):0,Z=J+dl(k,M,W,q,m,h);if(Z+(e[Me]?67:0)>L)throw new d(Qs);const G=new s(2e3*a.ceil(a.floor(n.getTime()/1e3)/2)),j=G<fe?fe:G>ue?ue:G,K=dl(M)?new s(1e3*_c(n)):dl(W)?n:j,{_e:X,$e:$,rawLastModDate:ne}=wl({version:T,bitFlag:ml(c,f,w,b,A),compressionMethod:A,uncompressedSize:z,lastModDate:j,rawLastModDate:r,rawFilename:t,He:R,Ye:S,extraFieldLength:Z}),re=Oc(le+dl(t)+Z),oe=re.Ze,ie=Ot(oe);return re.Xe(B),re.je(X),re.je(t),U&&re.je(C),re.je(k),re.je(M),re.je(W),re.je(q),re.je(m),re.je(h),w&&(R||ll(ie,18,0),S||ll(ie,22,0)),{et:oe,nt:ie,_e:X,$e:$,lastModDate:K,ot:K===j&&G.getTime()!=j.getTime(),rawLastModDate:ne,encrypted:b,compressed:v,version:T,compressionMethod:A,it:O,st:V,ct:Se,lt:J,ut:M,ft:W,wt:q,ht:P,yt:k,extraFieldLength:Z}}(l=n.assign({},l,u.Ie,f.Ie,o.Ie,{signature:l[Qi],crc32:b,offset:e.offset-p,diskNumberStart:m,[Me]:e.options[Me]}));R.ot&&Ri(e.warnings,bc,r);const D=function({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r,o=Se,i=0,a=e?20:12;return n&&(a+=4),t&&(o=new w(a),r=Ot(o),n&&(i=4,ll(r,0,q))),{gt:o,Et:r,Ft:i}}(l),x=dl(R.et,D.gt);F=await async function(e,t,r,o,a){const{be:s,writer:c}=e,{keepOrder:l,dataDescriptor:u,Ve:f,signal:w}=a,{bt:p,ye:m,St:h,Rt:y}=o,E=e.options[Me];let F,b,S,R,D,x,T,A=m,v=0;const C=l&&h?h.Oe:de;s.set(t,A);try{a.bufferedWrite||!l||e.zt||e.xe||e.Te||!u&&!f?(F=!0,e.xe++,T=a.createTempStream?await a.createTempStream():new z(de,de,{highWaterMark:we}),T.size=0,await Ei(c)):(b=!0,e.Te++,T=c,await C,await N()),await Ei(T);const m=Vc(c);e.Fe&&!F&&await jc(e,c),E&&!F&&Mc(o,e.offset-m);const{et:h}=p;F||await I();const y=Bc(c),S=Pc(e,c);if(A.diskNumberStart=y,F||(D=!0,x=c.size,await Kc(T,h)),A=await async function(e,t,{diskNumberStart:r,Oe:o},a,s,c){const{bt:l,Dt:u,xt:f}=a,{_e:w,$e:p,lastModDate:m,rawLastModDate:h,encrypted:y,compressed:g,version:E,compressionMethod:F,ct:b,lt:S,ut:R,it:z,st:D,ft:x,wt:T,ht:A,yt:v}=l,{gt:C}=u,{rawFilename:N,lastAccessDate:I,creationDate:U,password:k,rawPassword:W,level:L,useUnicodeFileNames:B,zip64:V,qe:q,Ye:P,He:Y,zipCrypto:H,dataDescriptor:J,directory:Z,executable:G,versionMadeBy:j,rawComment:K,rawExtraField:X,Le:Q,useWebWorkers:_,onstart:$,onprogress:ee,onend:te,signal:ne,encryptionStrength:re,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:ae,externalFileAttributes:se,uid:ce,gid:le,unixMode:ue,symlink:fe,setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:ge,useCompressionStream:Ee,Ue:Fe,ke:be,format:Se,codecURI:Re}=c,ze={Oe:o,versionMadeBy:j,zip64:V,qe:q,directory:Boolean(Z),executable:Boolean(G),filenameUTF8:Boolean(B),rawFilename:N,commentUTF8:Boolean(B),rawComment:K,ct:b,lt:S,ut:R,ft:x,wt:T,ht:A,yt:v,rawExtraField:X,Le:Q,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:ae,externalFileAttributes:se,diskNumberStart:r,uid:ce,gid:le,unixMode:ue,symlink:Boolean(fe),setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:ge};let{crc32:De,uncompressedSize:xe}=c,Te=0;Fe||(xe=0);const{writable:Ae}=t;if(e){const n=e.size,r=jn(Si(e,{size:n})),o={options:{codecType:Mr,inputSize:n,level:L,rawPassword:W,password:k,encryptionStrength:re,zipCrypto:y&&H,passwordVerification:y&&H&&h>>8&O,computeCrc32:!Fe,compressed:g&&!Fe,encrypted:y&&!be,useWebWorkers:_,useCompressionStream:Ee,format:Se,codecURI:Re,compressionMethod:F},config:s,A:{signal:ne,size:n,onstart:$,onprogress:ee,onend:te}};try{const e=await yo({readable:r,writable:Ae},o);if(Te=e.outputSize,t.size+=Te,$e(ne),Fe||(xe=e.inputSize,y&&!H||(De=e.crc32)),!Y&&Te>=M||!P&&xe>=M)throw new d(nc)}catch(e){const{outputSize:n}=o;throw n!==de?t.size+=n:Bt(e)&&e.outputSize!==de&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,bt:r,Dt:o},{zip64:a,zipCrypto:s,Ue:c,dataDescriptor:l}){const{$e:u,encrypted:f}=r,{Et:d,Ft:w}=o;f&&!s&&!c||e===de||(ll(u,10,e),l&&ll(d,w,e)),a?l&&(ul(d,w+4,i(t)),ul(d,w+12,i(n))):(ll(u,14,t),ll(u,18,n),l&&(ll(d,w+4,t),ll(d,w+8,n)))}({crc32:De,compressedSize:Te,uncompressedSize:xe,bt:l,Dt:u},c),J&&await Kc(t,C),n.assign(ze,{uncompressedSize:xe,compressedSize:Te,lastModDate:m,rawLastModDate:h,creationDate:U,lastAccessDate:I,encrypted:Boolean(y),zipCrypto:Boolean(H),size:f+Te,compressionMethod:F,version:E,_e:w,$e:p,signature:De,crc32:!y||H||Fe?De:de,it:z,st:D,Ye:P,He:Y}),ze}(r,T,A,o,gt(),a),F||(D=!1),s.set(t,A),A.filename=t,F){if(await g.all([T.writable.getWriter().close(),C]),await N(),e.Fe&&await jc(e,c),R=!0,x=c.size,await I(),A.diskNumberStart=Bc(c),A.offset=Pc(e,c),E){const t=o.xt;Mc(o,e.offset-Vc(c)),A.size+=o.xt-t}!function({rawFilename:e,encrypted:t,zip64:n,lt:r,crc32:o,compressedSize:a,uncompressedSize:s,Ye:c,He:l},u,{dataDescriptor:f,Ue:d}){if(f||((!t||d&&o!==de)&&ll(u,14,o),l||ll(u,18,a),c||ll(u,22,s)),n&&r){const t=le+dl(e)+4;ul(u,t,i(s)),ul(u,t+8,i(a))}}(A,p.nt,a),await Kc(c,p.et),await Xc(T.readable,c,w,e=>v+=e),c.size+=T.size,R=!1}else A.diskNumberStart=y,A.offset=S;return e.offset+=A.size,A}catch(n){if(R||D){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-x,F&&(e.offset+=v)}throw s.delete(t),n}finally{if(F&&e.xe--,b&&e.Te--,y&&y(C),S&&S(),F&&T&&T.dispose)try{await T.dispose()}catch{}}async function N(){e.zt=!0;const{Tt:t}=e;e.Tt=new g(t=>S=()=>{e.zt=!1,t()}),await t}async function I(){qc(c,dl(p.et))&&await c.closeDisk()}}(e,r,c,{bt:R,Dt:D,xt:x,ye:y,St:h,Rt:E},l)}catch(t){throw e.be.delete(r),t}finally{E&&E(h&&h.Oe)}return n.assign(F,{name:r,comment:p,extraField:m}),new oa(F)}(e,r,l,u)}catch(t){throw e.Se.delete(r),t}finally{const e=Tc.shift();e?e():xc--}}(u,e,r,l);f.add(p);const m=()=>f.delete(p);return g.prototype.then.call(p,m,m),Nc(u,p)}remove(e){const{Se:t,be:n}=this;if(typeof e==Fe&&(e=n.get(e)),e&&e.filename!==de){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=Se,n={}){const r=this,{ze:o,writer:a}=this,{writable:s}=a;if(r.ve)return Cc(a);if(!(e instanceof w))throw new d(Os);if(dl(e)>L)throw new d(Ls);for(;o.size;)await g.allSettled(t.from(o));await g.allSettled(r.De.map(e=>e.At));const c=r.De.filter(e=>e.vt&&!e.Ct);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.Ct=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const{Nt:o,It:a}=function(e){let t=0,n=!1;for(const[,r]of e){const{rawFilename:e,yt:o,rawComment:i,ft:a,ht:s,rawExtraField:c,Le:l,it:u,st:f,qe:w,uncompressedSize:p,compressedSize:m}=r;let{Ye:h,He:y}=r;w||(h&&p<M&&(h=r.Ye=!1),y&&m<M&&(y=r.He=!1)),n=n||h||y;const g=r.offset>=M,E=r.diskNumberStart>=L;let F,b;if(g||E||h||y){const e=4+(h?8:0)+(y?8:0)+(g?8:0)+(E?4:0),t=Oc(e);t.Je(1),t.Je(e-4),h&&t.Ge(p),y&&t.Ge(m),g&&t.Ge(r.offset),E&&t.Xe(r.diskNumberStart),F=t.Ze}else F=Se;if(r.ct=F,r.Ut=g,r.kt=E,f===de)b=Se;else{const e=Oc(9);e.Je(_),e.Je(5),e.Ke(u),e.Xe(f),b=e.Ze}r.ut=b;const S=dl(F,o,a,s,b,c,l);if(S>L)throw new d(Qs);t+=G+dl(e,i)+S}return{Nt:t,It:n}}(e.be),{Wt:s,Mt:c,Lt:l}=await async function(e,n,r){const{be:o,writer:i}=e,a=new w(n);await Ei(i);let s=0,c=0,l=Bc(i),u=Vc(i),f=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:d,ct:w,yt:p,ut:m,ft:h,ht:y,rawExtraField:g,Le:E,rawComment:F,versionMadeBy:b,_e:S,$e:R,Ye:z,He:D,kt:x,Ut:T,internalFileAttributes:A,externalFileAttributes:v,diskNumberStart:C,uncompressedSize:N,compressedSize:I}=n,U=dl(w,p,m,h,y,g,E),k=G+dl(d,F)+U;qc(i,s+k-c)&&(await Kc(i,a.slice(c,s)),c=s,f=0,await i.closeDisk()),0==e&&(l=Bc(i),u=Vc(i)),z||ll(R,18,N),D||ll(R,14,I),(T||x)&&n.version<45&&cl(R,0,45);const W=Oc(k);if(W.Xe(Y),W.Je(b),W.je(S.subarray(0,24)),W.Je(U),W.Je(dl(F)),W.Je(x?L:C),W.Je(A),W.Xe(v),W.Xe(T?M:t),W.je(d),W.je(w),W.je(p),W.je(m),W.je(h),W.je(y),W.je(g),W.je(E),W.je(F),fl(a,W.Ze,s),s+=k,f++,r.onprogress)try{await r.onprogress(e+1,o.size,new oa(n))}catch{}}return await Kc(i,c?a.slice(c):a),{Wt:{diskNumber:l,diskOffset:u},Mt:{diskNumber:Bc(i),Ot:f},Lt:a}}(e,o,r),u=await async function(e,t,n){const r=nl(e,n,"signCentralDirectory");if(r){const n=await r(t),o=dl(n);if(o>L)throw new d(yc);const i=Oc(6+o);i.Xe(P),i.Je(o),i.je(n);const{writer:a}=e;return qc(a,dl(i.Ze))&&await a.closeDisk(),await Kc(a,i.Ze),6+o}return 0}(e,l,r);await async function(e,t,n,r){const{writer:o}=e,{Wt:a,Mt:s,Bt:c,It:l}=r;let{Nt:u}=r,f=e.be.size,w=a.diskNumber,p=Pc(e,a);const m=dl(t);if(m>L)throw new d(Ls);let h=el(e,n,Yi),y=Bc(o);if(qc(o,(h?98:j)+m)&&y++,p>=M||u>=M||f>=L||y>=L){if(!1===h)throw new d(nc);h=!0}else h===de&&l&&(h=!0);const g=Oc(h?98:j);qc(o,dl(g.Ze)+m)&&await o.closeDisk(),y=Bc(o);let E=y==s.diskNumber?s.Ot:0;h&&(g.Xe(J),g.Ge(44),g.Je(45),g.Je(45),g.Xe(y),g.Xe(w),g.Ge(E),g.Ge(f),g.Ge(u),g.Ge(p),g.Xe(Z),g.Xe(y),g.Ge(i(Pc(e,o))+i(u)+i(c)),g.Xe(y+1),el(e,n,"supportZip64SplitFile",!0)&&(y=L,w=L),E=L,f=L,p=M,u=M),g.Xe(H),g.Je(y),g.Je(w),g.Je(E),g.Je(f),g.Xe(u),g.Xe(p),g.Je(m),await Kc(o,g.Ze),m&&await Kc(o,t)}(e,n,r,{Wt:s,Mt:c,Nt:o,Bt:u,It:a})}(r,e,n),r.ve=!0,!gi(a)&&el(r,n,Ne)||await s.getWriter().close(),Cc(a)}[Re](){return this.close()}}class vc extends g{then(e,t){const{Vt:n}=this;return n&&(n.Ct=!0),super.then(e,t)}}function Cc(e){return e.getData?e.getData():e.writable}function Nc(e,t){const r=new vc((e,n)=>g.prototype.then.call(t,e,n)),o={};return r.Vt=o,o.At=g.prototype.then.call(r,de,e=>n.assign(o,{vt:!0,error:e})),e.De.push(o),r}async function Ic(e,r,o={}){const{ze:i,Se:s,be:u}=e,f=Qe(o.filter);for(;i.size;)await g.allSettled(t.from(i));let w;const p=new g(e=>w=e);i.add(p);const m=[];let h;try{r=new hi(r),await Ei(r),r.size!==de&&r.readUint8Array||(r=new Go(await Kn(r.readable)),await Ei(r));const{ZipReader:o,Ee:i}=await g.resolve().then(function(){return Ws}),w=new o(r),p=await w.getEntries(),y=[];for(const e of p)f&&!await f(e)||y.push(e);await w.close(),await Ei(e.writer);const{directoryOffset:E,fe:F}=w;y.forEach(e=>{const{filename:t}=e;if(F.has(e))throw new d(he);if(s.has(t))throw new d(Ms);s.add(t),m.push(t)}),e.zt=!0;const{Tt:b}=e;e.Tt=new g(t=>h=()=>{e.zt=!1,t()}),await b,e.Fe&&(delete e.Fe,!f&&await async function(e){return sl(Ot(await bi(e,0,4)),0)==V}(r)||(await Kc(e.writer,Gc()),e.offset+=4));const S=await async function(e,n,r,o,i,s,u){const{writer:f}=e,w=new c;if(f.closeDisk||s){const p=t.from(r).sort((e,t)=>Zc(n,e)-Zc(n,t)),m=function(e,n,r){const o=new t(n.length);let i=r;for(let t=n.length-1;t>=0;t--){const s=Zc(e,n[t]),c=n[t+1];c&&Zc(e,c)>s&&(i=a.min(Zc(e,c),r)),o[t]=i}return o}(n,p,i),h=new l(o),y=new c;for(let e=0;e<p.length;e++){const t=p[e];if(h.has(t)){const r=Zc(n,t),o=await Jc(n,r);if(o===de)throw new d(pe);let i=r+o+t.compressedSize;if(t.bitFlag.dataDescriptor){const r=await u(n,i,t);i=r===de?a.max(i,m[e]):i+r}if(i>m[e])throw new d(me);m[e]=i,y.set(t,o)}}let g,E=0;for(let t=0;t<p.length;t++){const r=p[t];if(h.has(r)){const o=Zc(n,r);o<E?w.set(r,g):(s||await Hc(e,n,E,o-E),f.closeDisk&&qc(f,y.get(r))&&await f.closeDisk(),g={offset:Pc(e,f),diskNumberStart:Bc(f)},w.set(r,g),await Hc(e,n,o,m[t]-o),E=m[t])}}s||await Hc(e,n,E,i-E)}else{const t=e.offset;await Hc(e,n,0,i),r.forEach(e=>w.set(e,{offset:t+Zc(n,e),diskNumberStart:0}))}return w}(e,r,p,y,E,Boolean(f),i);y.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,rawBitFlag:i,uncompressedSize:a,compressedSize:s,extraFieldZip64:c}=e;let{compressionMethod:l,rawExtraField:f}=e;f=Yc(f||Se),e.extraFieldAES&&(l=99);const d=dl(f),w=Boolean(c)&&c.uncompressedSize!==de,p=Boolean(c)&&c.compressedSize!==de,{_e:m,$e:h}=wl({version:t,bitFlag:i,compressionMethod:l,uncompressedSize:a,compressedSize:s,rawLastModDate:r,rawFilename:o,He:p,Ye:w,extraFieldLength:d}),{crc32:y}=e;y!==de&&ll(h,10,y);const{offset:g,diskNumberStart:E}=S.get(e);n.assign(e,{qe:!0,Ye:w,He:p,offset:g,diskNumberStart:E,kt:!1,ct:Se,yt:Se,ut:Se,ft:Se,wt:Se,ht:Se,rawExtraField:f,Le:Se,_e:m,$e:h}),u.set(e.filename,e)})}catch(e){throw m.forEach(e=>s.delete(e)),e}finally{w(),i.delete(p),h&&h()}}async function Uc(e,t){try{await e.writer.writable.abort(t)}catch{}}function kc(e,t,n){e.ze.add(t),t.catch(e=>{try{n(e)}catch{}})}function Wc(e){if(!e)return Se;if(!(e instanceof c))throw new d(js);let t=0,n=0;e.forEach((e,n)=>{if(nt(n,L,Ks),!(e instanceof w))throw new d(Xs);if(dl(e)>L)throw new d(Qs);t+=4+dl(e)});const r=new w(t),o=Ot(r);return e.forEach((e,t)=>{cl(o,n,t),cl(o,n+2,dl(e)),fl(r,e,n+4),n+=4+dl(e)}),r}function Mc(e,t){const{bt:n}=e;let{et:r,extraFieldLength:o}=n,i=64-(t+dl(r))%64;i<4&&(i+=64);const a=new w(i),s=Ot(a);cl(s,0,$),cl(s,2,i-4);const c=r;n.et=r=new w(dl(c)+i),fl(r,c),fl(r,a,dl(c));const l=Ot(r);cl(l,28,o+i),n.nt=l,e.xt+=i}function Lc(e){const t=new w(4);Ot(t).setUint32(0,e,!0);let n=4;for(;n>1&&0===t[n-1];)n--;return t.subarray(0,n)}function Oc(e){const t=new w(e),n=Ot(t);let r=0;return{Ze:t,Ke:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},Je:e=>{cl(n,r,e),r+=2},Xe:e=>{ll(n,r,e),r+=4},Ge:e=>{ul(n,r,i(e)),r+=8},je:e=>{fl(t,e,r),r+=dl(e)},Qe:e=>r+=e}}function Bc(e){const{diskNumber:t=0}=e;return t}function Vc(e){const{diskOffset:t=0}=e;return t}function qc(e,t){const{availableSize:n=we}=e;return t>n}function Pc(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.Re:0)}function Yc(e){const t=Ot(e);let n=0;for(;n+4<=dl(e);){const r=4+al(t,n+2);if(1==al(t,n))return Yc(Mt(e.subarray(0,n),e.subarray(a.min(n+r,dl(e)))));n+=r}return e}async function Hc(e,t,n,r){if(r>0){const{writer:o}=e;let i=0;try{await Xc(Si(t,{offset:n,size:r}),o,de,e=>i+=e)}catch(t){if(i){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}}throw t}finally{o.size+=i,e.offset+=i}}}async function Jc(e,t){const n=t>=0&&t+le<=e.size?await bi(e,t,le):Se;if(dl(n)<le)return de;const r=Ot(n);return sl(r,0)!=B?de:le+al(r,26)+al(r,28)}function Zc(e,{offset:t,diskNumberStart:n}){return t+(e.ie?e.ie(n):0)}function Gc(){const e=new w(4);return ll(Ot(e),0,V),e}async function jc(e,t){delete e.Fe,await Kc(t,Gc()),e.offset+=4}async function Kc(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=dl(t),await r.write(t)}finally{r.releaseLock()}}async function Xc(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new x({async write(e){await o.ready,await o.write(e),r(dl(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function Qc(e){if(e){const t=(i(e.getTime())+i(116444736e5))*i(1e4);return t<ec?ec:t>tc?tc:t}}function _c(e){return a.floor(e.getTime()/1e3)}function $c(e){return a.min($s,a.max(_s,e))}function el(e,t,n,r){const o=t[n]===de?e.options[n]:t[n];return o===de?r:o}function tl(e,t,n,r){const i=el(e,t,n,r);if(null===i)return r;if(i!==de&&(typeof i.getTime!=ge||o.isNaN(i.getTime())))throw new d(qs);return i}function nl(e,t,n){return Qe(el(e,t,n))}function rl(e,t,n,r){return ot(el(e,t,n,r))}function ol(e){return e+5*(a.floor(e/16383)+1)}function il(e,t){return e===de?t===de||t>0:0!==e}function al(e,t){return e.getUint16(t,!0)}function sl(e,t){return e.getUint32(t,!0)}function cl(e,t,n){e.setUint16(t,n,!0)}function ll(e,t,n){e.setUint32(t,n,!0)}function ul(e,t,n){e.setBigUint64(t,n,!0)}function fl(e,t,n){e.set(t,n)}function dl(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function wl({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:a,rawFilename:s,He:c,Ye:l,extraFieldLength:u}){const f=Oc(26),d=f.Ze,w=Ot(d);if(f.Je(e),f.Je(t),f.Je(n),a===de){const e=new m(1),t=Ot(e);cl(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),cl(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),a=e[0]}return f.Xe(a),f.Qe(4),c||o!==de?f.Xe(c?M:o):f.Qe(4),l||r!==de?f.Xe(l?M:r):f.Qe(4),f.Je(dl(s)),f.Je(u),{_e:d,$e:w,rawLastModDate:a}}function pl(e){return e.every(e=>e>=32&&e<=126)}function ml(e,t,n,r,o){let i=0;return t&&(i|=ne),n&&(i|=8),8!=o&&9!=o||(e>=0&&e<=3&&(i|=6),e>3&&e<=5&&(i|=4),9==e&&(i|=2)),r&&(i|=1),i}function hl(e,t){if(!e)return!1;const{supportedFormats:n}=e;return n?n.includes(t):Fr(e,t)}const yl=1048576,gl=".zip.js-temp",El=1048576,Fl=1048576,bl=".zip.js-temp",Sl="createSyncAccessHandle is only available in dedicated workers";try{zt({baseURI:void 0===b&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===b?location.href:W&&"SCRIPT"===W.tagName.toUpperCase()&&W.src||new f("zip-legacy.min.js",b.baseURI).href})}catch{}kt(zt),e.BlobReader=Go,e.BlobWriter=jo,e.Data64URIReader=class extends Yo{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{qt:e,Pt:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{Pt:n,qt:r}=this,o=new w(t),i=4*a.floor(e/3),s=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);let l=0;for(let e=c;e<c+t&&e<s.length;e++)o[e-c]=s.charCodeAt(e),l++;return l<o.length?o.subarray(0,l):o}},e.Data64URIWriter=class extends Ho{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",Yt:""})}writeUint8Array(e){const t=this;let n,o=t.Yt;const i=t.Yt.length;for(t.Yt="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.Yt+=r.fromCharCode(e[n]);o.length>2?t.data+=R(o):t.Yt=o+t.Yt}getData(){return this.data+R(this.Yt)}},e.ERR_ABORTED=Xe,e.ERR_AMBIGUOUS_ARCHIVE=ma,e.ERR_BAD_FORMAT=sa,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=ua,e.ERR_CODEC_OUT_OF_MEMORY=ur,e.ERR_DUPLICATED_NAME=Ms,e.ERR_ENCRYPTED=fa,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=ha,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=pa,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=la,e.ERR_EOCDR_NOT_FOUND=ca,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=he,e.ERR_HTTP_RANGE=Co,e.ERR_HTTP_RESOURCE_CHANGED=No,e.ERR_HTTP_STATUS=vo,e.ERR_INVALID_AUTHENTICATION_CODE=hn,e.ERR_INVALID_BASE_URI=st,e.ERR_INVALID_CODEC_DEFINITION=Qn,e.ERR_INVALID_CODEC_MODULE=$n,e.ERR_INVALID_COMMENT=Ls,e.ERR_INVALID_COMMENT_TYPE=Os,e.ERR_INVALID_COMPRESSED_DATA=lr,e.ERR_INVALID_CRC32=fr,e.ERR_INVALID_DATE=qs,e.ERR_INVALID_ENCRYPTION_STRENGTH=Hs,e.ERR_INVALID_ENTRY=gc,e.ERR_INVALID_ENTRY_COMMENT=Bs,e.ERR_INVALID_ENTRY_COMMENT_TYPE=Vs,e.ERR_INVALID_ENTRY_NAME=Ps,e.ERR_INVALID_EXTRAFIELD=js,e.ERR_INVALID_EXTRAFIELD_DATA=Qs,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=Xs,e.ERR_INVALID_EXTRAFIELD_TYPE=Ks,e.ERR_INVALID_FILENAME_VALIDATION=Ea,e.ERR_INVALID_FUNCTION_OPTION=Ze,e.ERR_INVALID_GID=uc,e.ERR_INVALID_LEVEL=hc,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=Fa,e.ERR_INVALID_MAX_WORKERS=at,e.ERR_INVALID_MSDOS_ATTRIBUTES=pc,e.ERR_INVALID_MSDOS_DATA=mc,e.ERR_INVALID_PASSWORD=mn,e.ERR_INVALID_PASSWORD_TYPE=je,e.ERR_INVALID_PASS_THROUGH_VALUE=Ke,e.ERR_INVALID_READER=sc,e.ERR_INVALID_SIGNAL=Ge,e.ERR_INVALID_SIGNATURE_DATA=yc,e.ERR_INVALID_STRICTNESS=ga,e.ERR_INVALID_UID=lc,e.ERR_INVALID_UNCOMPRESSED_SIZE=cr,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=dc,e.ERR_INVALID_UNIX_ID_SIZE=wc,e.ERR_INVALID_UNIX_MODE=fc,e.ERR_INVALID_URI=ct,e.ERR_INVALID_VERSION=Ys,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Io,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=pe,e.ERR_OVERLAPPING_ENTRY=me,e.ERR_RESERVED_COMPRESSION_METHOD=_n,e.ERR_SPLIT_ZIP_FILE=wa,e.ERR_UNDEFINED_COMPRESSION_METHOD=oc,e.ERR_UNDEFINED_CRC32=ic,e.ERR_UNDEFINED_READER=ac,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=rc,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=ya,e.ERR_UNSUPPORTED_COMPRESSION=er,e.ERR_UNSUPPORTED_CONTEXT=Sl,e.ERR_UNSUPPORTED_CRYPTO_API=gn,e.ERR_UNSUPPORTED_ENCRYPTION=da,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=Gs,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=Js,e.ERR_UNSUPPORTED_FORMAT=nc,e.ERR_UNSUPPORTED_SPLIT_USDZ=Zs,e.ERR_UNSUPPORTED_UINT64=ba,e.ERR_WORKER_STARTUP_TIMEOUT=Vr,e.ERR_WRITER_NOT_INITIALIZED=Uo,e.ERR_WRITER_SIZE_NOT_WRITABLE=ko,e.ERR_ZIP_CRYPTO_LAST_MOD_DATE=Ec,e.ERR_ZIP_NOT_EMPTY=cc,e.HttpRangeReader=class extends wi{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=wi,e.Reader=Yo,e.SplitDataReader=pi,e.SplitDataWriter=mi,e.TextReader=class extends Go{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends jo{constructor(e){super(),n.assign(this,{encoding:e,Ht:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,Ht:t}=this,n=await super.getData();return n.text&&t?n.text():function(e,t){return Ao(e,t,!1)}(new w(await n.arrayBuffer()),e)}},e.Uint8ArrayReader=class extends Yo{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{Ze:e,size:e.length})}readUint8Array(e,t){return this.Ze.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Ho{constructor(e){super(),this.Jt=e||262144}init(e=0){n.assign(this,{offset:0,Ze:new w(e>0?e:this.Jt)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.Ze.length){let e=t.Ze.length?2*t.Ze.length:t.Jt;for(;e<n;)e*=2;const r=t.Ze;t.Ze=new w(e),t.Ze.set(r)}t.Ze.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.Ze.length?this.Ze:this.Ze.slice(0,this.offset)}},e.VERSION="2.21.0",e.WARNING_APPENDED_DATA=Aa,e.WARNING_CLAMPED_LAST_MODIFICATION_DATE=bc,e.WARNING_COMPRESSED_PATCHED_DATA=za,e.WARNING_COMPRESSION_UNAVAILABLE=Fc,e.WARNING_DUPLICATE_FILENAME=ka,e.WARNING_MALFORMED_EXTRA_FIELD=Da,e.WARNING_MISMATCHED_CENTRAL_DIRECTORY_OFFSET=Ia,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=Oa,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=Ba,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=Va,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME=La,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=Wa,e.WARNING_MISSING_ZIP64_EXTRA_FIELD=Ua,e.WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY=Ma,e.WARNING_PREPENDED_CENTRAL_DIRECTORY=Ca,e.WARNING_PREPENDED_DATA=va,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=Na,e.WARNING_UNKNOWN_VERSION=Ra,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=xa,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=Sa,e.WARNING_WRAPPED_ENTRIES_COUNT=Ta,e.Writer=Ho,e.ZipReader=ja,e.ZipReaderStream=Ka,e.ZipWriter=Ac,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new z;this.readable=t,this.zipWriter=new Ac(n,e),this.ze=new l}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:o}=new z({start(e){n=e},flush:()=>{!async function(){try{await t.close()}catch(e){await Uc(t,e)}}()}});return kc(this,this.zipWriter.add(e,r),e=>n.error(e)),{readable:this.readable,writable:o}}writable(e){let t;const{readable:n,writable:r}=new z({start(e){t=e}});return kc(this,this.zipWriter.add(e,n),e=>t.error(e)),r}async close(e,n={}){const{zipWriter:r}=this,o=(await g.allSettled(t.from(this.ze))).filter(e=>"rejected"==e.status).map(e=>e.reason);if(o.length){const[e]=o;try{e.entryErrors=o}catch{}throw await Uc(r,e),e}try{return await r.close(e,n)}catch(e){throw await Uc(r,e),e}}},e.configure=function(e){n.assign(yt,bt(Rt(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=El}=e;return function(){const e=[];let n,r,o,i=0,a=!1;const s=new x({async write(o){a?await n.write(o):(e.push(o),i+=o.length,i>t&&await async function(){const t=new z;r=Kn(t.readable),n=t.writable.getWriter(),a=!0;for(const t of e)await n.write(t);e.length=0}())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:s,readable:new D({async pull(t){if(a){if(!o){const e=await r;o=e.stream().getReader()}const{value:e,done:n}=await o.read();n?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){o&&await o.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(n){try{await n.abort()}catch{}n=null}r&&(r.catch(()=>{}),r=null),e.length=0}}}},e.createOPFSTempStream=function(e={}){const{thresholdBytes:n=yl,directoryName:r=gl,getDirectory:o=()=>v.storage.getDirectory()}=e;let i;function a(){return i||(i=g.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return function(){const e=[];let r,o,i,s,c=0,l=!1;const u=new x({async write(s){l?await i.write(s):(e.push(s),c+=s.length,c>n&&await async function(){const n=await a();r=S.randomUUID?S.randomUUID():t.from(S.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join(""),o=await n.getFileHandle(r,{create:!0}),i=(await o.createWritable()).getWriter(),l=!0;for(const t of e)await i.write(t);e.length=0}())},async close(){i&&(await i.close(),i=null)}});let f=0;return{writable:u,readable:new D({async pull(t){if(l){if(!s){const e=await o.getFile();s=e.stream().getReader()}const{value:e,done:n}=await s.read();n?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){s&&await s.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await a();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=Fl,directoryName:r=bl,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d(Sl);const i=o||(()=>v.storage.getDirectory());let s;function c(){return s||(s=g.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),s}return function(){const e=[];let r,o,i=0,s=!1,l=0,u=0;const f=new x({async write(a){s?(o.write(a,{at:l}),l+=a.length):(e.push(a),i+=a.length,i>n&&await async function(){const n=await c();r=S.randomUUID?S.randomUUID():t.from(S.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join("");const i=await n.getFileHandle(r,{create:!0});o=await i.createSyncAccessHandle(),s=!0;for(const t of e)o.write(t,{at:l}),l+=t.length;e.length=0}())},close(){o&&o.flush()}});let d=0;return{writable:f,readable:new D({pull(t){if(s){const e=l-u;if(e<=0)return void t.close();const n=new w(a.min(524288,e)),r=o.read(n,{at:u});r?(u+=r,t.enqueue(n.subarray(0,r))):t.close()}else d<e.length?t.enqueue(e[d++]):t.close()}},{highWaterMark:0}),dispose:async function(){if(o){try{o.close()}catch{}o=null}if(r){try{const e=await c();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=function(){return"application/octet-stream"},e.getRegisteredCodecs=ir,e.getSupportedCompressionMethods=function(){const{CompressionStream:e,DecompressionStream:t,CompressionStreamFallback:n,DecompressionStreamFallback:r}=gt(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:hl(n,dr)||hl(e,dr)||hl(e,pr),decompression:hl(r,dr)||hl(t,dr)||hl(t,pr),registered:!1},{compressionMethod:9,compression:!1,decompression:hl(r,wr)||hl(t,wr),registered:!1}];for(const e of ir()){const t=ar(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==ge:de,decompression:t?typeof t.DecompressionStream==ge:de,registered:!0})}return o},e.isZipFile=Xa,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:i,DecompressionStream:a,versionNeeded:s}=e;if(!o.isInteger(t)||t<0||t>L||typeof n!=Fe||!n.length)throw new d(Qn);if(tr.includes(t))throw new d(_n);const c=typeof i==ge||typeof a==ge;if(!(c||typeof r==Fe&&r.length))throw new d(Qn);nr.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:s}),c&&sr(n,{CompressionStream:i,DecompressionStream:a})},e.resetConfiguration=function(){for(const e of ht)delete yt[e];n.assign(yt,ut)},e.terminateWorkers=async function(){await g.allSettled([bo(),...fo.map(e=>(zo(e),e.terminate()))]),qr=de,Pr=!1},e.unregisterCodec=function(e){const t=nr.get(e);if(t){let n;nr.delete(e),nr.forEach(e=>n=n||e.format==t.format),n||rr.delete(t.format)}}});