@zip.js/zip.js 2.8.44 → 2.8.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/deno.json +21 -1
- package/dist/zip-core-external.js +138 -123
- package/dist/zip-core-external.min.js +1 -1
- package/dist/zip-core.js +137 -96
- package/dist/zip-core.min.js +1 -1
- package/dist/zip-fs-core-external.js +190 -131
- package/dist/zip-fs-core-external.min.js +1 -1
- package/dist/zip-fs-core.js +189 -104
- package/dist/zip-fs-core.min.js +1 -1
- package/dist/zip-fs-external.js +211 -1725
- package/dist/zip-fs-external.min.js +1 -1
- package/dist/zip-fs-native.js +212 -1700
- package/dist/zip-fs-native.min.js +1 -1
- package/dist/zip-fs.js +211 -1699
- package/dist/zip-fs.min.js +1 -1
- package/dist/zip-legacy.js +139 -98
- package/dist/zip-legacy.min.js +1 -1
- package/dist/zip-native.js +139 -98
- package/dist/zip-native.min.js +1 -1
- package/dist/zip-web-worker-native.js +1 -1
- package/dist/zip-web-worker.js +1 -1
- package/dist/zip.js +138 -97
- package/dist/zip.min.js +1 -1
- package/eslint.config.mjs +31 -2
- package/index-native.cjs +212 -1700
- package/index-native.min.js +1 -1
- package/index.cjs +211 -1699
- package/index.d.cts +49 -1
- package/index.d.ts +49 -1
- package/index.min.js +1 -1
- package/lib/core/codec-worker.js +2 -2
- package/lib/core/constants.js +4 -0
- package/lib/core/options.js +2 -0
- package/lib/core/streams/aes-crypto-stream.js +15 -18
- package/lib/core/streams/codec-stream.js +2 -2
- package/lib/core/streams/zip-entry-stream.js +5 -10
- package/lib/core/util/mime-type-data.js +3 -0
- package/lib/core/util/mime-type.js +23 -1596
- package/lib/core/web-worker-base.js +2 -2
- package/lib/core/web-worker-inline-native.js +1 -1
- package/lib/core/web-worker-inline-wasm.js +1 -1
- package/lib/core/zip-entry.js +8 -1
- package/lib/core/zip-fs.js +62 -5
- package/lib/core/zip-reader.js +45 -17
- package/lib/core/zip-writer.js +58 -44
- package/lib/zip-core-external.js +2 -0
- package/lib/zip-fs-core-external.js +2 -0
- package/lib/zip-fs-external.js +2 -0
- package/lib/zip-mime-types.js +2 -0
- package/package.json +9 -3
- package/worker-message-property-names.js +1 -1
package/index-native.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=4294967295,t=65535,r=255,n=67324752,a=134695760,s=a,i=33639248,o=101010256,c=101075792,d=117853008,l=22,f=20,m=21589,u=2048,p=16384,w=2048,h=1024,x="/",v=30,b=new Date(2107,11,31,23,59,58),y=new Date(1980,0,1),g=void 0,k=1/0,z="undefined",S="function",E=new Uint8Array;let F=2;try{typeof navigator!=z&&navigator.hardwareConcurrency&&(F=navigator.hardwareConcurrency)}catch{}const R={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:F,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof CompressionStream!=z&&CompressionStream,DecompressionStream:typeof DecompressionStream!=z&&DecompressionStream},j=["baseURI","wasmURI","workerURI","chunkSize","maxWorkers","terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout","useCompressionStream","useWebWorkers","transferStreams","CompressionStream","DecompressionStream","CompressionStreamZlib","DecompressionStreamZlib"],U={...R};function D(){return U}function O(e){return Math.max(e.chunkSize,64)}function M(e){for(const t of j){const r=e[t];r!==g&&(U[t]=r)}}function A(e){for(const t of j){const r=e[t];r!==g&&(R[t]=r)}M(e)}function T(){for(const e of j)delete U[e];Object.assign(U,R)}const C=[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],N=[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],P=[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],W=[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],I=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],V=new Uint8Array(288);V.fill(8,0,144),V.fill(9,144,256),V.fill(7,256,280),V.fill(8,280,288);const Z=new Uint8Array(30).fill(5);function L(e){const t=new Uint16Array(16);for(const r of e)t[r]++;t[0]=0;const r=new Uint16Array(17);for(let e=1;15>=e;e++)r[e+1]=r[e]+t[e];const n=new Uint16Array(e.length);for(let t=0;t<e.length;t++)e[t]&&(n[r[e[t]]++]=t);return{o:t,symbols:n}}const B="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",H="Invalid codec definition",Y="Reserved compression method",G="Invalid codec module",q="string",K=[0,8,9,99],J=new Map,X=new Map;function Q(e={}){const{compressionMethod:r,format:n,codecURI:a,CompressionStream:s,DecompressionStream:i,versionNeeded:o}=e;if(!Number.isInteger(r)||0>r||r>t||typeof n!=q||!n.length)throw Error(H);if(K.includes(r))throw Error(Y);const c=typeof s==S||typeof i==S;if(!(c||typeof a==q&&a.length))throw Error(H);J.set(r,{compressionMethod:r,format:n,codecURI:a,versionNeeded:o}),c&&te(n,{CompressionStream:s,DecompressionStream:i})}function _(e){const t=J.get(e);if(t){let r;J.delete(e),J.forEach(e=>r=r||e.format==t.format),r||X.delete(t.format)}}function $(e){return J.get(e)}function ee(e){return X.get(e)}function te(e,t){const{CompressionStream:r,DecompressionStream:n}=t;if(typeof r!=S&&typeof n!=S)throw Error(G);X.set(e,{CompressionStream:r,DecompressionStream:n})}const re=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?t>>>1^3988292384:t>>>1;re[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){const r=re[t-1][e];re[t][e]=r>>>8^re[0][255&r]}const[ne,ae,se,ie,oe,ce,de,le]=re;class fe{constructor(e){this.l=e||-1}append(e){let t=0|this.l;const r=0|e.length;let n=0;if(r>=8&&e.buffer){const a=new DataView(e.buffer,e.byteOffset,r),s=r-8;for(;s>=n;n+=8){const e=t^a.getInt32(n,!0),r=a.getInt32(n+4,!0);t=le[255&e]^de[e>>>8&255]^ce[e>>>16&255]^oe[e>>>24&255]^ie[255&r]^se[r>>>8&255]^ae[r>>>16&255]^ne[r>>>24&255]}}for(;r>n;n++)t=t>>>8^ne[255&(t^e[n])];this.l=t}get(){return~this.l}}class me extends TransformStream{constructor(){let e;const t=new fe;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new Uint8Array(4);new DataView(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}function ue(e){if(typeof TextEncoder==z){e=unescape(encodeURIComponent(e));const t=new Uint8Array(e.length);for(let r=0;r<t.length;r++)t[r]=e.charCodeAt(r);return t}return(new TextEncoder).encode(e)}function pe(e,t){const r=new Uint8Array(e.length+t.length);return r.set(e),r.set(t,e.length),r}function we(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new Uint8Array(e):e}function he(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}const xe={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const r=e[e.length-1],n=xe.m(r);return 32===n?e.concat(t):xe.h(t,n,0|r,e.slice(0,e.length-1))},v(e){const t=e.length;if(0===t)return 0;const r=e[t-1];return 32*(t-1)+xe.m(r)},S(e,t){if(32*e.length<t)return e;const r=(e=e.slice(0,Math.ceil(t/32))).length;return t&=31,r>0&&t&&(e[r-1]=xe.F(t,e[r-1]&2147483648>>t-1,1)),e},F:(e,t,r)=>32===e?t:(r?0|t:t<<32-e)+1099511627776*e,m:e=>Math.round(e/1099511627776)||32,h(e,t,r,n){for(void 0===n&&(n=[]);t>=32;t-=32)n.push(r),r=0;if(0===t)return n.concat(e);for(let a=0;a<e.length;a++)n.push(r|e[a]>>>t),r=e[a]<<32-t;const a=e.length?e[e.length-1]:0,s=xe.m(a);return n.push(xe.F(t+s&31,t+s>32?r:n.pop(),1)),n}},ve={bytes:{R(e){const t=xe.v(e)/8,r=new Uint8Array(t);let n;for(let a=0;t>a;a++)3&a||(n=e[a/4]),r[a]=n>>>24,n<<=8;return r},j(e){const t=[];let r,n=0;for(r=0;r<e.length;r++)n=n<<8|e[r],3&~r||(t.push(n),n=0);return 3&r&&t.push(xe.F(8*(3&r),n)),t}}},be=class{constructor(e){const t=this;t.blockSize=512,t.U=[1732584193,4023233417,2562383102,271733878,3285377520],t.D=[1518500249,1859775393,2400959708,3395469782],e?(t.O=e.O.slice(0),t.M=e.M.slice(0),t.A=e.A):t.reset()}reset(){const e=this;return e.O=e.U.slice(0),e.M=[],e.A=0,e}update(e){const t=this;"string"==typeof e&&(e=ve.T.j(e));const r=t.M=xe.concat(t.M,e),n=t.A,a=t.A=n+xe.v(e);if(a>9007199254740991)throw Error("Cannot hash more than 2^53 - 1 bits");const s=new Uint32Array(r);let i=0;for(let e=t.blockSize+n-(t.blockSize+n&t.blockSize-1);a>=e;e+=t.blockSize)t.C(s.subarray(16*i,16*(i+1))),i+=1;return r.splice(0,16*i),t}N(){const e=this;let t=e.M;const r=e.O;t=xe.concat(t,[xe.F(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(Math.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.C(t.splice(0,16));return e.reset(),r}P(e,t,r,n){return e>19?e>39?e>59?e>79?void 0:t^r^n:t&r|t&n|r&n:t^r^n:t&r|~t&n}W(e,t){return t<<e|t>>>32-e}C(e){const t=this,r=t.O,n=Array(80);for(let t=0;16>t;t++)n[t]=e[t];let a=r[0],s=r[1],i=r[2],o=r[3],c=r[4];for(let e=0;79>=e;e++){16>e||(n[e]=t.W(1,n[e-3]^n[e-8]^n[e-14]^n[e-16]));const r=t.W(5,a)+t.P(e,s,i,o)+c+n[e]+t.D[Math.floor(e/20)]|0;c=o,o=i,i=t.W(30,s),s=a,a=r}r[0]=r[0]+a|0,r[1]=r[1]+s|0,r[2]=r[2]+i|0,r[3]=r[3]+o|0,r[4]=r[4]+c|0}},ye={importKey:e=>new ye.I(ve.bytes.j(e)),V(e,t,r,n){if(r=r||1e4,0>n||0>r)throw Error("invalid params to pbkdf2");const a=1+(n>>5)<<2;let s,i,o,c,d;const l=new ArrayBuffer(a),f=new DataView(l);let m=0;const u=xe;for(t=ve.bytes.j(t),d=1;(a||1)>m;d++){for(s=i=e.encrypt(u.concat(t,[d])),o=1;r>o;o++)for(i=e.encrypt(i),c=0;c<i.length;c++)s[c]^=i[c];for(o=0;(a||1)>m&&o<s.length;o++)f.setInt32(m,s[o]),m+=4}return l.slice(0,n/8)},I:class{constructor(e){const t=this,r=t.Z=be,n=[[],[]];t.L=[new r,new r];const a=t.L[0].blockSize/32;e.length>a&&(e=(new r).update(e).N());for(let t=0;a>t;t++)n[0][t]=909522486^e[t],n[1][t]=1549556828^e[t];t.L[0].update(n[0]),t.L[1].update(n[1]),t.B=new r(t.L[0])}reset(){const e=this;e.B=new e.Z(e.L[0]),e.H=!1}update(e){this.H=!0,this.B.update(e)}digest(){const e=this,t=e.B.N(),r=new e.Z(e.L[1]).update(t).N();return e.reset(),r}encrypt(e){if(this.H)throw Error("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},ge=typeof crypto!=z&&typeof crypto.getRandomValues==S,ke="Invalid password",ze="Invalid signature",Se=ze,Ee="zipjs-abort-check-password";function Fe(e){if(ge)return crypto.getRandomValues(e);throw Error("Crypto API not supported")}const Re=16,je={name:"PBKDF2"},Ue=Object.assign({hash:{name:"HMAC"}},je),De=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},je),Oe=["deriveBits"],Me=[8,12,16],Ae=[16,24,32],Te=10,Ce=[0,0,0,0],Ne=typeof crypto!=z,Pe=Ne&&crypto.subtle,We=Ne&&typeof Pe!=z,Ie=ve.bytes,Ve=class{constructor(e){const t=this;t.Y=[[[],[],[],[],[]],[[],[],[],[],[]]],t.Y[0][0][0]||t.G();const r=t.Y[0][4],n=t.Y[1],a=e.length;let s,i,o,c=1;if(4!==a&&6!==a&&8!==a)throw Error("invalid aes key size");for(t.D=[i=e.slice(0),o=[]],s=a;4*a+28>s;s++){let e=i[s-1];(s%a===0||8===a&&s%a===4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],s%a===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),i[s]=i[s-a]^e}for(let e=0;s;e++,s--){const t=i[3&e?s:s-4];o[e]=4>=s||4>e?t:n[0][r[t>>>24]]^n[1][r[t>>16&255]]^n[2][r[t>>8&255]]^n[3][r[255&t]]}}encrypt(e){return this.K(e,0)}decrypt(e){return this.K(e,1)}G(){const e=this.Y[0],t=this.Y[1],r=e[4],n=t[4],a=[],s=[];let i,o,c,d;for(let e=0;256>e;e++)s[(a[e]=e<<1^283*(e>>7))^e]=e;for(let l=i=0;!r[l];l^=o||1,i=s[i]||1){let s=i^i<<1^i<<2^i<<3^i<<4;s=s>>8^255&s^99,r[l]=s,n[s]=l,d=a[c=a[o=a[l]]];let f=16843009*d^65537*c^257*o^16843008*l,m=257*a[s]^16843008*s;for(let r=0;4>r;r++)e[r][l]=m=m<<24^m>>>8,t[r][s]=f=f<<24^f>>>8}for(let r=0;5>r;r++)e[r]=e[r].slice(0),t[r]=t[r].slice(0)}K(e,t){if(4!==e.length)throw Error("invalid aes block size");const r=this.D[t],n=r.length/4-2,a=[0,0,0,0],s=this.Y[t],i=s[0],o=s[1],c=s[2],d=s[3],l=s[4];let f,m,u,p=e[0]^r[0],w=e[t?3:1]^r[1],h=e[2]^r[2],x=e[t?1:3]^r[3],v=4;for(let e=0;n>e;e++)f=i[p>>>24]^o[w>>16&255]^c[h>>8&255]^d[255&x]^r[v],m=i[w>>>24]^o[h>>16&255]^c[x>>8&255]^d[255&p]^r[v+1],u=i[h>>>24]^o[x>>16&255]^c[p>>8&255]^d[255&w]^r[v+2],x=i[x>>>24]^o[p>>16&255]^c[w>>8&255]^d[255&h]^r[v+3],v+=4,p=f,w=m,h=u;for(let e=0;4>e;e++)a[t?3&-e:e]=l[p>>>24]<<24^l[w>>16&255]<<16^l[h>>8&255]<<8^l[255&x]^r[v++],f=p,p=w,w=h,h=x,x=f;return a}},Ze=class{constructor(e,t){this.J=e,this.X=t,this._=t}reset(){this._=this.X}update(e){return this.$(this.J,e,this._)}ee(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,r=e>>8&255,n=255&e;255===t?(t=0,255===r?(r=0,255===n?n=0:++n):++r):++t,e=0,e+=t<<16,e+=r<<8,e+=n}return e}te(e){0===(e[0]=this.ee(e[0]))&&(e[1]=this.ee(e[1]))}$(e,t,r){let n;if(!(n=t.length))return[];const a=xe.v(t);for(let a=0;n>a;a+=4){this.te(r);const n=e.encrypt(r);t[a]^=n[0],t[a+1]^=n[1],t[a+2]^=n[2],t[a+3]^=n[3]}return xe.S(t,a)}},Le=ye.I;let Be=Ne&&We&&typeof Pe.importKey==S,He=Ne&&We&&typeof Pe.deriveBits==S;class Ye extends TransformStream{constructor({password:e,rawPassword:t,encryptionStrength:r,checkPasswordOnly:n,checkAuthenticationCode:a=!0}){super({start(){qe(this,e,t,r)},async transform(e,t){const r=this,{password:a,strength:s,re:i,ready:o}=r;a?(await(async(e,t,r,n)=>{const a=await Je(e,t,r,Qe(n,0,Me[t])),s=Qe(n,Me[t]);if(a[0]!=s[0]||a[1]!=s[1])throw Error(ke)})(r,s,a,Qe(e,0,Me[s]+2)),e=Qe(e,Me[s]+2),n?t.error(Error(Ee)):i()):await o;const c=new Uint8Array(e.length-Te-(e.length-Te)%Re);t.enqueue(Ke(r,e,c,0,Te,!0))},async flush(e){const{ne:t,ae:r,pending:n,ready:s}=this;if(r&&t){await s;const i=Qe(n,0,n.length-Te),o=Qe(n,n.length-Te);let c=E;if(i.length){const e=$e(Ie,i);r.update(e);const n=t.update(e);c=_e(Ie,n)}const d=Qe(_e(Ie,r.digest()),0,Te);let l=n.length<Te?1:0;for(let e=0;Te>e;e++)l|=d[e]^o[e];if(l&&a)throw Error(Se);e.enqueue(c)}}})}}class Ge extends TransformStream{constructor({password:e,rawPassword:t,encryptionStrength:r}){let n;super({start(){qe(this,e,t,r)},async transform(e,t){const r=this,{password:n,strength:a,re:s,ready:i}=r;let o=E;n?(o=await(async(e,t,r)=>{const n=Fe(new Uint8Array(Me[t]));return pe(n,await Je(e,t,r,n))})(r,a,n),s()):await i;const c=new Uint8Array(o.length+e.length-e.length%Re);c.set(o,0),t.enqueue(Ke(r,e,c,o.length,0))},async flush(e){const{ne:t,ae:r,pending:a,ready:s}=this;if(r&&t){await s;let i=E;if(a.length){const e=t.update($e(Ie,a));r.update(e),i=_e(Ie,e)}n.signature=_e(Ie,r.digest()).slice(0,Te),e.enqueue(pe(i,n.signature))}}}),n=this}}function qe(e,t,r,n){Object.assign(e,{ready:new Promise(t=>e.re=t),password:Xe(t,r),strength:n-1,pending:E})}function Ke(e,t,r,n,a,s){const{ne:i,ae:o,pending:c}=e;c.length&&(t=pe(c,t));const d=t.length-a;let l;for(r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new Uint8Array(t)).set(r,0)}return e})(r,n+(d-d%Re)),l=0;d-Re>=l;l+=Re){const e=$e(Ie,Qe(t,l,l+Re));s&&o.update(e);const a=i.update(e);s||o.update(a),r.set(_e(Ie,a),l+n)}return e.pending=Qe(t,l),r}async function Je(e,t,r,n){e.password=null;const a=await(async(e,t,r,n,a)=>{if(!Be)return ye.importKey(t);try{return await Pe.importKey("raw",t,r,!1,a)}catch{return Be=!1,ye.importKey(t)}})(0,r,Ue,0,Oe),s=await(async(e,t,r)=>{if(!He)return ye.V(t,e.salt,De.iterations,r);try{return await Pe.deriveBits(e,t,r)}catch{return He=!1,ye.V(t,e.salt,De.iterations,r)}})(Object.assign({salt:n},De),a,8*(2*Ae[t]+2)),i=new Uint8Array(s),o=$e(Ie,Qe(i,0,Ae[t])),c=$e(Ie,Qe(i,Ae[t],2*Ae[t])),d=Qe(i,2*Ae[t]);return Object.assign(e,{keys:{key:o,se:c,passwordVerification:d},ne:new Ze(new Ve(o),Array.from(Ce)),ae:new Le(c)}),d}function Xe(e,t){return t===g?ue(e):t}function Qe(e,t,r){return e.subarray(t,r)}function _e(e,t){return e.R(t)}function $e(e,t){return e.j(t)}class et extends TransformStream{constructor({password:e,rawPassword:t,passwordVerification:r,checkPasswordOnly:n}){super({start(){rt(this,e,t,r)},transform(e,t){const r=this;if(r.password||r.rawPassword){const t=nt(r,e.subarray(0,12));if(r.password=r.rawPassword=null,0!=(t[11]^r.passwordVerification))throw Error(ke);e=e.subarray(12)}n?t.error(Error(Ee)):t.enqueue(nt(r,e))}})}}class tt extends TransformStream{constructor({password:e,rawPassword:t,passwordVerification:r}){super({start(){rt(this,e,t,r)},transform(e,t){const r=this;let n,a;if(r.password||r.rawPassword){r.password=r.rawPassword=null;const t=Fe(new Uint8Array(12));t[11]=r.passwordVerification,n=new Uint8Array(e.length+t.length),n.set(at(r,t),0),a=12}else n=new Uint8Array(e.length),a=0;n.set(at(r,e),a),t.enqueue(n)}})}}function rt(e,t,r,n){Object.assign(e,{password:t,rawPassword:r,passwordVerification:n}),((e,t,r)=>{const n=[305419896,591751049,878082192];if(Object.assign(e,{keys:n,ie:new fe(n[0]),oe:new fe(n[2])}),r)for(let t=0;t<r.length;t++)st(e,r[t]);else for(let r=0;r<t.length;r++)st(e,t.charCodeAt(r))})(e,t,r)}function nt(e,t){const r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=it(e)^t[n],st(e,r[n]);return r}function at(e,t){const r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=it(e)^t[n],st(e,t[n]);return r}function st(e,t){let[,r]=e.keys;e.ie.append([t]);const n=~e.ie.get();r=ct(Math.imul(ct(r+ot(n)),134775813)+1),e.oe.append([r>>>24]);const a=~e.oe.get();e.keys=[n,r,a]}function it(e){const t=2|e.keys[2];return ot(Math.imul(t,1^t)>>>8)}function ot(e){return 255&e}function ct(e){return 4294967295&e}function dt(e){if(e instanceof ReadableStream)return e;const t=e.getReader();return new ReadableStream({async pull(e){const{value:r,done:n}=await t.read();n?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})}function lt(e){if(e instanceof WritableStream)return e;const t=e.getWriter();return new WritableStream({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const ft="Invalid uncompressed size",mt="Invalid compressed data",ut=ze,pt="deflate-raw",wt="gzip",ht=[31,139,8];class xt extends TransformStream{constructor(e,{chunkSize:t,CompressionStreamZlib:r,CompressionStream:n}){super({});const{compressed:a,encrypted:s,useCompressionStream:i,zipCrypto:o,computeCrc32:c,level:d,deflate64:l,format:f,compressionMethod:m}=e,u=this;let p,w,h,x=super.readable;const v=f&&ee(f),b=c&&a&&!l&&!v&&(!s||o)&&!(!i||!n);if(s&&!o||!c||b||(p=new me,x=Ft(x,p)),a)if(v)x=Rt(x,St(v.CompressionStream,f,{level:d,chunkSize:t,compressionMethod:m}));else if(b)h=new vt,x=Rt(x,new n(wt)),x=Ft(x,h);else try{x=Et(x,i,{level:d,chunkSize:t},n,r)}catch(e){let t;try{t=new n(wt)}catch{throw e}x=Rt(x,t),x=Ft(x,new vt)}s&&(o?x=Ft(x,new tt(e)):(w=new Ge(e),x=Ft(x,w))),zt(u,x,()=>{let e;s&&!o&&(e=w.signature),s&&!o||!c||(e=b?h.signature:new DataView(p.value.buffer).getUint32(0)),u.signature=e})}}class vt extends TransformStream{constructor(){let e,t=10,r=new Uint8Array(0);super({transform(e,n){if(t){const r=Math.min(t,e.length);if(t-=r,!(e=e.subarray(r)).length)return}const a=r.length+e.length;if(8>=a)return void(r=pe(r,e));const s=a-8,i=Math.min(s,r.length);n.enqueue(pe(r.subarray(0,i),e.subarray(0,s-i))),r=pe(r.subarray(i),e.subarray(s-i))},flush(){const t=he(r);e.signature=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class bt extends TransformStream{constructor(e,{chunkSize:t,DecompressionStreamZlib:r,DecompressionStream:n}){super({});const{zipCrypto:a,encrypted:s,checkCrc32:i,signature:o,compressed:c,useCompressionStream:d,deflate64:l,format:f,compressionMethod:m,rawBitFlag:u,outputSize:p}=e;let w,h,x=super.readable;if(s&&(a?x=Ft(x,new et(e)):(h=new Ye(e),x=Ft(x,h))),c){const e=f&&ee(f);if(e)x=Rt(x,St(e.DecompressionStream,f,{chunkSize:t,compressionMethod:m,rawBitFlag:u,uncompressedSize:p}));else try{x=Et(x,d,{chunkSize:t,deflate64:l},n,r)}catch(e){if(l||p===g)throw e;let t;try{t=new n(wt)}catch{throw e}x=((e,t,r)=>{const n=new fe;let a,s,i,o=0,c=!1;const d=new Promise((e,t)=>{s=e,i=t});d.catch(()=>{}),r||s();const l=new TransformStream({start(e){const t=new Uint8Array(10);t.set(ht),e.enqueue(t)},transform(e,t){t.enqueue(e)},async flush(e){c=!0,m();try{await d}finally{u()}const t=new Uint8Array(8),a=he(t);a.setUint32(0,n.get(),!0),a.setUint32(4,r,!0),e.enqueue(t)},cancel(e){i(e)}}),f=new TransformStream({transform(e,t){n.append(e),o+=e.length,r>o?c&&m():s(),t.enqueue(e)},cancel(e){i(e)}});return e=Ft(e,l),Ft(e=Rt(e,t),f);function m(){u(),a=setTimeout(()=>i(Error(ft)),5e3)}function u(){clearTimeout(a)}})(x,t,p)}x=(e=>{const t=e.getReader();return new ReadableStream({async pull(e){let r;try{r=await t.read()}catch(e){if(e&&e.message)throw e;const t=Error(mt);throw t.cause=e,t}const{value:n,done:a}=r;a?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})})(x)}i&&(w=new me,x=Ft(x,w)),zt(this,x,()=>{if(i){const e=new DataView(w.value.buffer);if(o!=e.getUint32(0,!1))throw Error(ut)}})}}const yt=new Map;function gt(e,t){if(!e)return!1;let r=yt.get(e);r||(r=new Map,yt.set(e,r));let n=r.get(t);if(n===g){try{new e(t),n=!0}catch{n=!1}r.set(t,n)}return n}function kt(e){return gt(e,pt)}function zt(e,t,r){t=Ft(t,new TransformStream({flush:r})),Object.defineProperty(e,"readable",{get:()=>t})}function St(e,t,r){if(!e)throw Error("Compression method not supported");return new e(t,r)}function Et(e,t,r,n,a){const s=t&&n?n:a||n,i=r.deflate64?"deflate64-raw":pt;let o;try{o=new s(i,r)}catch(e){if(!t||!a||s==a)throw e;o=new a(i,r)}return Rt(e,o)}function Ft(e,t){return dt(e).pipeThrough(t)}function Rt(e,t){const r=t.writable.getWriter(),n=e.getReader();return(async()=>{try{for(;;){await r.ready;const e=await n.read();if(e.done){await r.close();break}await r.write(e.value)}}catch(e){await(async(e,t)=>{try{await e.abort(t)}catch{}})(r,e),await(async(e,t)=>{try{await e.cancel(t)}catch{}})(n,e)}})(),t.readable}const jt="data",Ut="deflate",Dt="inflate";class Ot extends TransformStream{constructor(e,t){super({});const r=this,{codecType:n}=e;let a;n.startsWith(Ut)?a=xt:n.startsWith(Dt)&&(a=bt),r.outputSize=0;let s=0;const i=new a(e,t),o=super.readable,c=new TransformStream({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){Object.assign(r,{inputSize:s})}}),d=new TransformStream({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==g&&r.outputSize>e.outputSize))throw Error(ft)},flush(){const{signature:e}=i;Object.assign(r,{signature:e,inputSize:s})}});Object.defineProperty(r,"readable",{get:()=>o.pipeThrough(c).pipeThrough(i).pipeThrough(d)})}}class Mt extends TransformStream{constructor(e){const t=[];let r=0;function n(){const n=new Uint8Array(e);let a=0;for(;e>a;){const r=t[0],s=e-a;r.length>s?(n.set(r.subarray(0,s),a),t[0]=r.subarray(s),a+=s):(n.set(r,a),a+=r.length,t.shift())}return r-=e,n}Number.isFinite(e)&&e>=1||(e=65536),super({transform(a,s){for(t.push(a),r+=a.length;r>e;)s.enqueue(n())},flush(e){r&&e.enqueue(((e,t)=>{const r=new Uint8Array(t);let n=0;for(const t of e)r.set(t,n),n+=t.length;return r})(t,r))}})}}const At={type:"module"},Tt="error";let Ct,Nt,Pt,Wt,It=!0;try{It=typeof structuredClone==S&&structuredClone(new DOMException("","AbortError")).code!==g}catch{}class Vt{constructor(e,{readable:t,writable:r},{options:n,config:a,ce:s,useWebWorkers:i,transferStreams:o,workerURI:c},d){const{signal:l}=s;return Object.assign(e,{de:!0,le:(e.le||0)+1,readable:t.pipeThrough(new Mt(O(a))).pipeThrough(new Zt(s),{signal:l}),writable:r,options:Object.assign({},n),workerURI:c,transferStreams:o,terminate:()=>new Promise(t=>{const{fe:r,de:n}=e;r?(n?e.me=t:(r.terminate(),t()),e.ue=null):t()}),pe(){if(e.de){const{me:t}=e;t&&(e.me=null,e.we=!0,e.fe.terminate(),t()),e.de=!1,d(e)}}}),Ct===g&&(Ct=typeof Worker!=z),(i&&Ct?Ht:Bt)(e,a)}}class Zt extends TransformStream{constructor({onstart:e,onprogress:t,size:r,onend:n}){let a=0;super({async start(){e&&await Lt(e,r)},async transform(e,n){a+=e.length,t&&await Lt(t,a,r),n.enqueue(e)},async flush(){n&&await Lt(n,a)}})}}async function Lt(e,...t){try{await e(...t)}catch{}}function Bt(e,t){return{run:()=>Yt(e,t)}}function Ht(e,t){const{baseURI:r,chunkSize:n,workerStartupTimeout:a}=t;let{wasmURI:s}=t;if(!e.ue){let i;typeof s==S&&(s=s());try{i=qt(e.workerURI,r,e)}catch{return Ct=!1,Bt(e,t)}Object.assign(e,{fe:i,he:!1,we:!1,ue:{run:async()=>{try{return await(async(e,t)=>{let r,n;const a=new Promise((e,t)=>{r=e,n=t});Object.assign(e,{reader:null,writer:null,xe:r,ve:n,result:a});const{readable:s,options:i}=e,{writable:o,closed:c,be:d}=(e=>{const t=new AbortController,{writable:r,readable:n}=new TransformStream,a=n.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return a.catch(()=>{}),{writable:r,closed:a,be:()=>t.abort()}})(e.writable);let l;try{l=Xt({type:"start",options:i,config:t,readable:s,writable:o},e)}catch(t){d();try{await c}catch{}throw e.pe(),t}l||Object.assign(e,{reader:s.getReader(),writer:o.getWriter()});const{workerStartupTimeout:f}=t;e.he||!Number.isFinite(f)||0>f||(e.ye=setTimeout(()=>(e=>{if(e.ye=null,e.he)return;const{ve:t,writer:r}=e;if(Gt(e),e.fe=null,t){const e=Error("Worker startup timeout");e.ge=!0,t(e),r&&r.releaseLock()}})(e),f));try{const e=await a;return await m(),await c,e}catch(e){await m(),d();try{await c}catch{}throw e}async function m(){if(!l&&!o.locked)try{await o.getWriter().close()}catch{}}})(e,{chunkSize:n,wasmURI:s,baseURI:r,workerStartupTimeout:a})}catch(r){if(r&&r.ge){Ct=!1;const{reader:r}=e;return r&&r.releaseLock(),e.reader=null,e.writer=null,Yt(e,t)}throw r}}}})}return e.ue}async function Yt({options:e,readable:t,writable:r,pe:n},a){let s;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(Ut),r=t?a.CompressionStreamZlib:a.DecompressionStreamZlib,n=t?a.CompressionStream:a.DecompressionStream;if(e.useCompressionStream){if(r&&r.ke&&!kt(n))try{await void 0}catch{}}else try{await void 0}catch{r&&!r.ke||(e.useCompressionStream=!0)}}s=new Ot(e,a),await t.pipeThrough(s).pipeThrough(new Mt(O(a))).pipeTo(r,{preventClose:!0,preventAbort:!0});const{signature:n,inputSize:i,outputSize:o}=s;return{signature:n,inputSize:i,outputSize:o}}catch(e){throw s&&(e.outputSize=s.outputSize),e}finally{n()}}function Gt(e){const{fe:t}=e;if(t)try{t.terminate()}catch{}e.ue=null}function qt(e,t,r,n,a=!0){let s,i,o;if(Pt===g||Nt!==e){const c=typeof e==S;i=c?e(a):e;const d=i.startsWith("data:"),l=i.startsWith("blob:");if(d||l){n===g&&(n=!1),n&&(o=At);try{s=new Worker(i,o)}catch(a){if(l)try{URL.revokeObjectURL(i)}catch{}if(c&&l)return qt(e,t,r,n,!1);if(n)throw a;return qt(e,t,r,!0,!1)}}else{n===g&&(n=!0),n&&(o=At);try{i=new URL(i,t)}catch{}try{s=new Worker(i,o)}catch(s){if(n)throw s;return qt(e,t,r,!1,a)}}Nt=e,Pt=i,Wt=o}else s=new Worker(Pt,Wt);return s.addEventListener("message",e=>{r.he=!0,Kt(r),(async({data:e},t)=>{const{type:r,value:n,messageId:a,result:s,error:i}=e,{reader:o,writer:c,xe:d,ve:l,pe:f,le:m}=t,u=()=>t.le!=m;try{if(i){const{message:e,stack:t,code:r,name:n,outputSize:a,cause:s}=i,o=Error(e);Object.assign(o,{stack:t,code:r,name:n,outputSize:a}),s&&(o.cause=Object.assign(Error(s.message),{name:s.name})),p(o)}else{if("pull"==r){const{value:e,done:r}=await o.read();u()||Xt({type:jt,value:e,done:r,messageId:a},t)}r==jt&&(await c.ready,await c.write(new Uint8Array(n)),u()||Xt({type:"ack",messageId:a},t)),"close"==r&&p(null,s)}}catch(i){u()||(Gt(t),p(i))}function p(e,t){u()||(e?l(e):d(t),c&&c.releaseLock(),f())}})(e,r)}),s.addEventListener(Tt,e=>Jt(e,r)),s.addEventListener("messageerror",e=>Jt(e,r)),s}function Kt(e){const{ye:t}=e;t&&(clearTimeout(t),e.ye=null)}function Jt(e,t){e.preventDefault&&e.preventDefault(),Kt(t);const{he:r,ve:n,writer:a,pe:s}=t;if(Gt(t),r||(t.fe=null),n){let t=e.error||Error(e.message||Tt);r||(t=Object.assign(Error(t.message||Tt),{ge:!0})),n(t),a&&a.releaseLock(),r&&s()}}function Xt(e,{fe:t,writer:r,transferStreams:n,he:a}){try{const{value:r,readable:s,writable:i}=e,o=[];if(r&&(e.value=we(r),o.push(e.value.buffer)),n&&It&&a?(s&&o.push(s),i&&o.push(i)):e.readable=e.writable=null,o.length)try{return t.postMessage(e,o),!0}catch{It=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw r&&r.releaseLock(),e}}let Qt=[];const _t=[];let $t,er,tr=0;async function rr(e,t){const{options:r,config:n}=t,{transferStreams:a,useWebWorkers:s,useCompressionStream:i,compressed:o,checkCrc32:c,computeCrc32:d,encrypted:l,format:f,codecURI:m}=r,{workerURI:u,maxWorkers:p}=n;f&&(m&&(r.codecURI=((e,t)=>{try{return new URL(e,t).toString()}catch{return e}})(m,n.baseURI)),await(async(e,t)=>{!X.has(e)&&t&&te(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))})(f,r.codecURI)),t.transferStreams=a||a===g&&n.transferStreams;const w=!(o||c||d||l),h=f===g||!!r.codecURI;return t.useWebWorkers=!w&&h&&(s||s===g&&n.useWebWorkers),t.workerURI=t.useWebWorkers&&u?u:g,r.useCompressionStream=i||i===g&&n.useCompressionStream,(await(async()=>{const r=Qt.find(e=>!e.de);if(r)return or(r),new Vt(r,e,t,x);if(Qt.length<p){const r={ze:tr};return tr++,Qt.push(r),new Vt(r,e,t,x)}return new Promise(r=>{_t.push({resolve:r,stream:e,Se:t}),er=n.workerStarvationTimeout,nr()})})()).run();function x(e){if(ar(),_t.length){const[{resolve:t,stream:r,Se:n}]=_t.splice(0,1);t(new Vt(e,r,n,x)),nr()}else e.fe?(or(e),((e,t)=>{const{config:r}=t,{terminateWorkerTimeout:n}=r;Number.isFinite(n)&&n>=0&&(e.we?e.we=!1:e.Ee=setTimeout(async()=>{Qt=Qt.filter(t=>t!=e);try{await e.terminate()}catch{}},n))})(e,t)):Qt=Qt.filter(t=>t!=e)}}function nr(){!$t&&_t.length&&Number.isFinite(er)&&er>=0&&($t=setTimeout(sr,er))}function ar(){$t&&(clearTimeout($t),$t=null)}function sr(){if($t=null,_t.length){const[{resolve:e,stream:t,Se:r}]=_t.splice(0,1),n=Object.assign({},r,{useWebWorkers:!1,workerURI:g});e(new Vt({},t,n,ir)),nr()}}function ir(){ar(),nr()}function or(e){const{Ee:t}=e;t&&(clearTimeout(t),e.Ee=null)}async function cr(){await Promise.allSettled(Qt.map(e=>(or(e),e.terminate()))),Ct=g}const dr="HTTP error ",lr="HTTP Range not supported",fr="HTTP resource changed",mr="Writer iterator completed too soon",ur="Writer not initialized",pr="Content-Range",wr="Range",hr="GET",xr="bytes",vr=16777216,br="writable",yr=Symbol();class gr{constructor(){this.size=0}init(){this.initialized=!0}}class kr extends gr{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:r=O(D())}={}){const n=this;let a=0;return new ReadableStream({async pull(s){const i=t===g?r:Math.min(r,t-a),o=await an(n,e+a,i);s.enqueue(o),a+r>t||t===g&&!o.length&&i?s.close():a+=r}})}}class zr extends gr{constructor(){super();const e=this,t=new WritableStream({write(t){if(!e.initialized)throw Error(ur);return e.writeUint8Array(we(t))}});Object.defineProperty(e,br,{get:()=>t})}writeUint8Array(){}}class Sr extends kr{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;Object.assign(this,{dataURI:e,Fe:r,size:Math.floor(.75*(t-r))})}readUint8Array(e,t){const{Fe:r,dataURI:n}=this,a=new Uint8Array(t),s=4*Math.floor(e/3),i=atob(n.substring(s+r,4*Math.ceil((e+t)/3)+r)),o=e-3*Math.floor(s/4);let c=0;for(let e=o;o+t>e&&e<i.length;e++)a[e-o]=i.charCodeAt(e),c++;return c<a.length?a.subarray(0,c):a}}class Er extends zr{constructor(e){super(),Object.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let r,n=t.pending;const a=t.pending.length;for(t.pending="",r=0;r<3*Math.floor((a+e.length)/3)-a;r++)n+=String.fromCharCode(e[r]);for(;r<e.length;r++)t.pending+=String.fromCharCode(e[r]);n.length>2?t.data+=btoa(n):t.pending=n+t.pending}getData(){return this.data+btoa(this.pending)}}let Fr,Rr;class jr extends kr{constructor(e){super(),Object.assign(this,{blob:e,size:e.size}),Rr||(Rr=(async()=>{try{const e=new Blob([new Uint8Array(3)]).slice(1,2).stream().getReader();let t=0,r=await e.read();for(;!r.done;)t+=r.value.length,r=await e.read();Fr=1==t}catch{Fr=!1}})())}createReadable(e){const{blob:t,size:r}=this,{offset:n=0,size:a=r-n}=e||{};return n||r>a?Fr?dt(t.slice(n,n+a).stream()):super.createReadable(e):dt(t.stream())}async readUint8Array(e,t){const r=this,n=e+t,a=e||n<r.size?r.blob.slice(e,n):r.blob;let s=await a.arrayBuffer();return s.byteLength>t&&(s=s.slice(e,n)),new Uint8Array(s)}}class Ur extends gr{constructor(e){super();const t=this,r=new TransformStream;if(Object.defineProperty(t,br,{get:()=>r.writable}),typeof Blob.prototype.stream!=S||new Blob([]).stream()instanceof ReadableStream){const n=[];e&&n.push(["Content-Type",e]),t.blob=new Response(r.readable,{headers:n}).blob()}else{const n=[];t.blob=r.readable.pipeTo(new WritableStream({write(e){n.push(e)}})).then(()=>new Blob(n,{type:e}))}t.blob.catch(()=>{})}getData(){return this.blob}}class Dr extends jr{constructor(e){super(new Blob([e],{type:"text/plain"}))}}class Or extends Ur{constructor(e){super(e),Object.assign(this,{encoding:e,Re:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,Re:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new Promise((n,a)=>{Object.assign(t,{onload:({target:e})=>n(e.result),onerror:()=>a(t.error)}),t.readAsText(r,e)})}}}class Mr extends kr{constructor(e,t){super(),Tr(this,e,t)}async init(){await Cr(this,qr,Br),super.init()}createReadable(e){const t=this,{useRangeHeader:r,forceRangeRequests:n,size:a}=t;if((r||n)&&a!==g){const{offset:r=0,size:n=a-r}=e||{};if(n>0&&a>r)return((e,t,r)=>{let n,a=t,s=0,i=r;return new ReadableStream({start:()=>o(),async pull(e){n||await o();const{value:t,done:r}=await n.read();if(r)throw Error(lr);const a=t.length>s?t.subarray(0,s):t;s-=a.length,i-=a.length,a.length&&e.enqueue(a),s||(await(async()=>{const e=n;n=g,await e.cancel()})(),i||e.close())},cancel:e=>n&&n.cancel(e)});async function o(){const t=Math.min(e.maximumRangeSize,i),r=await qr(hr,e,Zr(e,a,t));if(206!=r.status)throw Error(lr);const o=r.headers.get(pr);if(o){const e=Number(o.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(e)&&e!=a)throw Error(lr)}Vr(e,r),Ir(e,r),a+=t,s=t,n=r.body.getReader()}})(t,r,Math.min(n,a-r))}return super.createReadable(e)}readUint8Array(e,t){return Nr(this,e,t,qr,Br)}}class Ar extends kr{constructor(e,t){super(),Tr(this,e,t)}async init(){await Cr(this,Kr,Hr),super.init()}readUint8Array(e,t){return Nr(this,e,t,Kr,Hr)}}function Tr(e,t,r){const{preventHeadRequest:n,useRangeHeader:a,forceRangeRequests:s,combineSizeEocd:i,checkResourceChanges:o=!0,maximumRangeSize:c=vr,fetch:d}=r;delete(r=Object.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,Object.assign(e,{url:t,options:r,preventHeadRequest:n,useRangeHeader:a,forceRangeRequests:s,combineSizeEocd:i,checkResourceChanges:o,maximumRangeSize:c,fetch:d})}async function Cr(e,t,r){const{url:n,preventHeadRequest:a,useRangeHeader:s,forceRangeRequests:i,combineSizeEocd:o}=e;if((e=>{const{baseURI:t}=D(),{protocol:r}=new URL(e,t);return"http:"==r||"https:"==r})(n)&&(s||i)&&(void 0===a||a)){const n=await t(hr,e,Zr(e,o?-22:void 0)),a=n.headers.get("Accept-Ranges");if(!(i||a&&a.toLowerCase()==xr))throw Error(lr);{if(o){const t=new Uint8Array(await n.arrayBuffer());206==n.status&&t.length==l&&(e.je=t)}Ir(e,n);const a=Pr(n);a===g?await Gr(e,t,r):e.size=a}}else await Gr(e,t,r)}async function Nr(e,t,r,n,a){const{useRangeHeader:s,forceRangeRequests:i,je:o,size:c,options:d}=e;if(s||i){if(o&&t==c-l&&r==l)return o;if(c>t&&0!==r){t+r>c&&(r=c-t);const a=await n(hr,e,Zr(e,t,r));if(206!=a.status)throw Error(lr);const s=a.headers.get(pr);if(s){const e=Number(s.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(e)&&e!=t)throw Error(lr)}Vr(e,a),Ir(e,a);const i=new Uint8Array(await a.arrayBuffer());if(i.length!=r)throw Error(lr);return i}return E}{const{data:n}=e;return n||await a(e,d),e.data.subarray(t,t+r)}}function Pr(e){const t=e.headers.get(pr);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=Number(e);if(!Number.isNaN(t))return t}}}function Wr({headers:e}){return{Ue:e.get("Etag")||g,lastModified:e.get("Last-Modified")||g}}function Ir(e,t){const{checkResourceChanges:r,De:n}=e;r&&!n&&206==t.status&&(e.De=Wr(t))}function Vr(e,t){const{checkResourceChanges:r,De:n,size:a}=e;if(r){const e=Pr(t);if(e!==g&&a!==g&&e!=a)throw Error(fr);if(n){const e=Wr(t);if(Object.entries(n).some(([t,r])=>r!==g&&e[t]!==g&&r!=e[t]))throw Error(fr)}}}function Zr(e,t=0,r=1){return Object.assign({},Lr(e),{[wr]:xr+"="+(0>t?t:t+"-"+(t+r-1))})}function Lr({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?Object.fromEntries(t):t}async function Br(e){await Yr(e,qr)}async function Hr(e){await Yr(e,Kr)}async function Yr(e,t){const r=await t(hr,e,Lr(e));e.data=new Uint8Array(await r.arrayBuffer()),e.size=e.data.length}async function Gr(e,t,r){if(e.preventHeadRequest)await r(e,e.options);else{const n=await t("HEAD",e,Lr(e)),a=n.headers.get("Content-Length");a&&!n.headers.get("Content-Encoding")?e.size=Number(a):await r(e,e.options)}}async function qr(e,{fetch:t=fetch,options:r,url:n},a){const s=await t(n,Object.assign({},r,{method:e,headers:a}));if(400>s.status)return s;throw 416==s.status?Error(lr):Error(dr+(s.statusText||s.status))}function Kr(e,{url:t},r){return new Promise((n,a)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const r=t.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(r)}),n({status:s.status,arrayBuffer:()=>s.response,headers:new Map(e)})}else a(416==s.status?Error(lr):Error(dr+(s.statusText||s.status)))},!1),s.addEventListener("error",e=>a(e.detail?e.detail.error:Error("Network error")),!1),s.open(e,t),r)for(const e of Object.entries(r))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()})}class Jr extends kr{constructor(e,t={}){super(),Object.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Ar(e,t):new Mr(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 Xr extends Jr{constructor(e,t={}){super(e,Object.assign({},t,{useRangeHeader:!0}))}}class Qr extends kr{constructor(e){super(),e=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),Object.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class _r extends zr{constructor(e){super(),this.defaultBufferSize=e||262144}init(e=0){Object.assign(this,{offset:0,array:new Uint8Array(e>0?e:this.defaultBufferSize)}),super.init()}writeUint8Array(e){const t=this,r=t.offset+e.length;if(r>t.array.length){let e=t.array.length?2*t.array.length:t.defaultBufferSize;for(;r>e;)e*=2;const n=t.array;t.array=new Uint8Array(e),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.array.length?this.array:this.array.slice(0,this.offset)}}class $r extends kr{constructor(e){super(),this.Oe=e}async init(){const e=this,{Oe:t}=e;e.Me=0,await Promise.all(t.map(e=>nn(e))),e.Ae=t.map(t=>{const r=e.size;return e.size+=t.size,r}),super.init()}Te(e){const{Ae:t,size:r}=this,n=t[e];return n===g?r:n}async readUint8Array(e,t){const r=this,{Oe:n}=this;let a,s=0,i=e;for(;n[s]&&i>=n[s].size;)i-=n[s].size,s++;const o=n[s];if(o){const n=o.size;if(i+t>n){const s=n-i;a=pe(await an(o,i,s),await r.readUint8Array(e+s,t-s))}else a=await an(o,i,t)}else a=E;return r.Me=Math.max(s,r.Me),a}}class en extends gr{constructor(e,t=4294967295){super();const r=this;let n,a,s;Object.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const i=new WritableStream({async write(t){if(t===yr)return void(s&&await c());const{availableSize:i}=r;if(s)t.length<i?await o(t):(await o(t.subarray(0,i)),await c(),t.length>i&&await this.write(t.subarray(i)));else{const{value:i,done:o}=await e.next();if(o&&!i)throw Error(mr);n=i,n.size=0,n.maxSize&&(r.maxSize=n.maxSize),r.availableSize=r.maxSize,await nn(n),a=i.writable,s=a.getWriter(),await this.write(t)}},async close(){s&&(await s.ready,await d())},async abort(e){s&&await s.abort(e)}});async function o(e){const t=e.length;t&&(await s.ready,await s.write(e),n.size+=t,r.availableSize-=t)}async function c(){await d(),r.diskOffset+=n.size,r.diskNumber++,s=null,r.availableSize=r.maxSize}async function d(){await s.close()}Object.defineProperty(r,br,{get:()=>i})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(yr)}finally{e.releaseLock()}}}class tn{constructor(e){return Array.isArray(e)&&(e=new $r(e)),(e instanceof ReadableStream||typeof e.getReader==S)&&(e={readable:dt(e)}),e}}class rn{constructor(e){return e.writable===g&&typeof e.next==S&&(e=new en(e)),(e instanceof WritableStream||typeof e.getWriter==S)&&(e={writable:lt(e)}),e.size===g&&(e.size=0),e}}async function nn(e,t){if(!e.init||e.initialized)return Promise.resolve();await e.init(t)}function an(e,t,r){return e.readUint8Array(t,r)}const sn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function on(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let r=0;r<e.length;r++)t+=sn[e[r]];return t}})(e):new TextDecoder(t,{ignoreBOM:!0}).decode(e)}const cn="filename",dn="rawFilename",ln="comment",fn="rawComment",mn="uncompressedSize",un="compressedSize",pn="offset",wn="diskNumberStart",hn="lastModDate",xn="rawLastModDate",vn="lastAccessDate",bn="creationDate",yn="rawCreationDate",gn="internalFileAttributes",kn="externalFileAttributes",zn="msdosAttributesRaw",Sn="msdosAttributes",En="msDosCompatible",Fn="zip64",Rn="encrypted",jn="version",Un="versionMadeBy",Dn="zipCrypto",On="directory",Mn="executable",An="compressionMethod",Tn="signature",Cn="extraField",Nn="unixMode",Pn="setuid",Wn="setgid",In="sticky",Vn=[cn,dn,mn,un,hn,xn,ln,fn,vn,bn,yn,pn,wn,gn,kn,zn,Sn,En,Fn,Rn,jn,Un,Dn,On,Mn,An,Tn,"crc32",Cn,"extraFieldUnix","extraFieldInfoZip","uid","gid",Nn,Pn,Wn,In,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class Zn{constructor(e){Vn.forEach(t=>this[t]=e[t])}}const Ln="password",Bn="rawPassword",Hn="passThrough",Yn="signal",Gn="checkAmbiguity",qn="useWebWorkers",Kn="useCompressionStream",Jn="transferStreams",Xn="preventClose",Qn="offset",_n="usdz",$n="strictness",ea="strict",ta="tolerant",ra="File format is not recognized",na="End of central directory not found",aa="End of Zip64 central directory locator not found",sa="Central directory header not found",ia="Local file header not found",oa="Zip64 extra field not found",ca="File contains encrypted entry",da="Encryption method not supported",la="Compression method not supported",fa="Split zip file",ma="Overlapping entry found",ua="Ambiguous archive",pa="Encrypted central directory is not supported",wa="utf-8",ha="cp437",xa=[[mn,e],[un,e],[pn,e],[wn,t]],va={[t]:{Ce:Ha,bytes:4},[e]:{Ce:Ya,bytes:8}};class ba{constructor(e,t={}){Object.assign(this,{reader:new tn(e),options:t,config:D(),Ne:new Map})}async*getEntriesGenerator(n={}){const s=this;let{reader:o}=s;const{config:m}=s;if(await nn(o),o.size!==g&&o.readUint8Array||(o=new jr(await new Response(o.readable).blob()),await nn(o)),o.size<l)throw Error(ra);const u=Ua(Ia(s,n,$n),Ia(s,n,Gn)),v=u==ea,b=u!=ta,y=((e,r)=>e!==g?e:r==ea?0:r==ta?1/0:t)(Ia(s,n,"maxAppendedDataSize"),u),{Pe:k,We:z}=await(async(e,t,r)=>{const{size:n}=e,a=Math.min(n,65557),s={count:Da};let i,o,c=0;for await(const[r,d,f,m,u]of Ta(e,a)){const a=Ba(r,m+20);if(u+l+a==n){const a=await Na(e,r,d,m,u,n,s);if(a==Aa){if(i||(i=Ca(f,m,u)),c++,!t||c>1)break}else a!=Ma||o||(o=Ca(f,m,u))}}return i||(i=o),i||(i=await(async(e,t,r)=>{const{size:n}=e,a=Math.min(n,t==1/0?n:65557+t);let s,i;for await(const[t,o,c,d,l]of Ta(e,a)){const a=Ca(c,d,l);s||(s=a);const f=await Na(e,t,o,d,l,n,r);if(f==Aa)return a;f!=Ma||i||(i=a)}return i||s})(e,r,s)),{Pe:i,We:c}})(o,b,y);if(!k)throw Ha(he(await an(o,0,4)))==a?Error(fa):Error(na);b&&z>1&&Wa("multiple end of central directory records");const S=he(k);let F=Ha(S,12),R=Ha(S,16);const j=k.offset,U=Ba(S,20),D=j+l+U;o.size-D>y&&Wa("appended data");let O=Ba(S,4);const M=o.Me||0;let A,T,C,N=Ba(S,6),P=Ba(S,10),W=0;const I=R==e||F==e||P==t||N==t;if(R!=e&&N!=t&&(R+=ja(o,N)),I){const r=k.offset<f?E:await an(o,k.offset-f,f),n=he(r);if(r.length==f&&Ha(n,0)==d){R=ja(o,Ha(n,4))+Ya(n,8);let r=await an(o,R,56),a=he(r);const s=k.offset-f-56;if((56>r.length||Ha(a,0)!=c)&&R!=s&&s>=0){const e=R;R=s,R>e&&(W=R-e),r=await an(o,R,56),a=he(r)}if(56>r.length||Ha(a,0)!=c)throw Error(aa);T=!0,C=Ya(a,4)>44,O==t?O=Ha(a,16):v&&O!=Ha(a,16)&&Wa("mismatched zip64 end of central directory record"),N==t?N=Ha(a,20):v&&N!=Ha(a,20)&&Wa("mismatched zip64 end of central directory record"),P==t?P=Ya(a,32):v&&P!=Ya(a,32)&&Wa("mismatched zip64 end of central directory record"),F==e?F=Ya(a,40):v&&F!=Ya(a,40)&&Wa("mismatched zip64 end of central directory record"),R=ja(o,N)+Ya(a,48)+W}}const V=F,Z=k.offset-(T?76:0);if(R<o.size||(W=o.size-R-F-l,R=o.size-F-l),M!=O)throw Error(fa);if(0>R)throw Error(ra);let L=0,B=await an(o,R,F),H=he(B);if(F){if(4>B.length)throw Error(ra);const e=Z-F;if(R!=e&&N==O){let t=!(Ha(H,L)==i);if(t||0>e||e+4>o.size||(t=Ha(he(await an(o,e,4)),0)==i),t){const t=R;R=e,R>t&&(W+=R-t),B=await an(o,R,F),H=he(B)}}}const Y=Z-R;if(F==Y||0>Y||N!=O||(F=Y,B=await an(o,R,F),H=he(B)),0>R||R>=o.size)throw Error(ra);A=R;const G=Ia(s,n,"filenameEncoding"),q=Ia(s,n,"commentEncoding"),K=v?new Set:g;let J;for(let e=0;P>e;e++){const a=new ga(o,m,s.options);if(L+46>B.length||Ha(H,L)!=i){if(0==e&&(C||ka(H)))throw Error(pa);throw Error(sa)}za(a,H,L+6);const c=!!a.bitFlag.languageEncodingFlag,d=L+46,l=d+a.filenameLength,f=l+a.extraFieldLength,u=Ba(H,L+4),b=!(u>>8),y=u>>8==3,k=B.subarray(d,l),z=Ba(H,L+32),S=f+z,E=B.subarray(f,S),F=c,R=c,j=Ha(H,L+38),U=j&r,D={readOnly:!!(1&U),hidden:!!(2&U),system:!!(4&U),directory:!!(16&U),archive:!!(32&U)},O=Ha(H,L+42),M=Ia(s,n,"decodeText")||on,T=F?wa:G||ha,N=R?wa:q||ha;let I=M(k,T);I===g&&(I=on(k,T));let V=M(E,N);V===g&&(V=on(E,N)),Object.assign(a,{index:e,versionMadeBy:u,msDosCompatible:b,compressedSize:0,uncompressedSize:0,Ie:z,offset:O,diskNumberStart:Ba(H,L+34),internalFileAttributes:Ba(H,L+36),externalFileAttributes:j,msdosAttributesRaw:U,msdosAttributes:D,rawFilename:k,filenameUTF8:F,commentUTF8:R,rawExtraField:B.subarray(l,f),rawComment:E,filename:I,comment:V}),Sa(a,a,H,L+6),a.offset+=W,A=Math.min(ja(o,a.diskNumberStart)+a.offset,A),v&&(K.has(a.filename)&&(J=!0),K.add(a.filename));const Z=a.externalFileAttributes>>16&t;a.unixMode===g&&16877&Z&&(a.unixMode=Z);const Y=!!(a.unixMode&w),X=!!(a.unixMode&h),Q=!!(512&a.unixMode),_=a.unixMode!==g?!!(73&a.unixMode):y&&!!(73&Z),$=a.unixMode!==g&&(61440&a.unixMode)==p,ee=(61440&Z)==p;Object.assign(a,{setuid:Y,setgid:X,sticky:Q,unixExternalUpper:Z,internalFileAttribute:a.internalFileAttributes,externalFileAttribute:a.externalFileAttributes,executable:_,directory:$||ee||b&&D.directory||a.filename.endsWith(x)&&!a.uncompressedSize,zipCrypto:a.encrypted&&!a.extraFieldAES});const te=new Zn(a);te.getData=(e,t)=>a.getData(e,te,s.Ne,t),te.arrayBuffer=async e=>{const t=new TransformStream,[r]=await Promise.all([new Response(t.readable).arrayBuffer(),a.getData(t,te,s.Ne,e)]);return r},L=S;const{onprogress:re}=n;if(re)try{await re(e+1,P,new Zn(a))}catch{}yield te}v&&L!=V&&Wa("trailing central directory data"),J&&Wa("duplicate filename"),v&&(W||P&&A>0)&&Wa("prepended data");const X=Ia(s,n,"extractPrependedData"),Q=Ia(s,n,"extractAppendedData");return X&&(s.prependedData=A>0?await an(o,0,A):E),s.comment=U?await an(o,j+l,U):E,Q&&(s.appendedData=D<o.size?await an(o,D,o.size-D):E),!0}async getEntries(e={}){const t=[];for await(const r of this.getEntriesGenerator(e))t.push(r);return t}async close(){}}class ya{constructor(e={}){const{readable:t,writable:r}=new TransformStream,n=new ba(t,e).getEntriesGenerator();this.readable=new ReadableStream({async pull(e){const{done:t,value:r}=await n.next();if(t)return e.close();const a={...r,readable:(()=>{const{readable:e,writable:t}=new TransformStream;if(r.getData)return(async()=>{try{await r.getData(t)}catch(e){try{await t.abort(e)}catch{}}})(),e})()};delete a.getData,e.enqueue(a)}}),this.writable=r}}let ga=class{constructor(e,t,r){Object.assign(this,{reader:e,config:t,options:r})}async getData(e,t,a,i={}){const o=this,{reader:c,index:d,offset:l,diskNumberStart:f,extraFieldAES:m,extraFieldZip64:u,compressionMethod:p,config:w,bitFlag:h,rawBitFlag:x,signature:b,rawLastModDate:y,uncompressedSize:k,compressedSize:z}=o,{dataDescriptor:S}=h,F=t.localDirectory={},R=ja(c,f)+l,j=await an(c,R,v),U=he(j);let D=Ia(o,i,Ln),O=Ia(o,i,Bn);const M=Ia(o,i,Hn);if(D=D&&D.length&&D,O=O&&O.length&&O,m&&99!=m.originalCompressionMethod)throw Error(la);if(j.length<v||Ha(U,0)!=n)throw Error(ia);za(F,U,4);const{extraFieldLength:A,filenameLength:T}=F,C=Ua(Ia(o,i,$n),Ia(o,i,Gn))==ea;let N=E;if(C&&(T||A)){const e=await an(c,R+v,T+A);N=e.subarray(0,T),F.rawExtraField=e.subarray(T)}else F.rawExtraField=A?await an(c,R+v+T,A):E;Sa(o,F,U,4,!0),C&&((e,t,r)=>{const{rawFilename:n}=e;(r.length!=n.length||r.some((e,t)=>e!=n[t]))&&Wa("mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&Wa("mismatched local file header (general purpose bit flag)"),t.compressionMethod!=e.compressionMethod&&Wa("mismatched local file header (compression method)"),t.bitFlag.dataDescriptor||!(t.signature||t.compressedSize||t.uncompressedSize)||t.signature==e.signature&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||Wa("mismatched local file header (signature or sizes)")})(o,F,N);const{lastAccessDate:P,creationDate:W}=F;P&&(t.lastAccessDate=P),W&&(t.creationDate=W);const I=o.encrypted&&F.encrypted&&!M,V=I&&!m;if(M||(t.zipCrypto=V),I&&!(64&~F.rawBitFlag))throw Error(da);const Z=M?g:$(p);if(0!=p&&8!=p&&9!=p&&!Z&&!M)throw Error(la);if(I){if(!V&&(1>m.strength||m.strength>3))throw Error(da);if(!D&&!O)throw Error(ca)}const L=R+v+T+A,B=z,H=dt(c.createReadable({offset:L,size:B})),Y=Ia(o,i,Yn),G=Ia(o,i,"checkPasswordOnly");let q=Ia(o,i,"checkOverlappingEntry");const K=Ia(o,i,"checkOverlappingEntryOnly");K&&(q=!0);const{onstart:J,onprogress:X,onend:Q}=i,_=9==p;let ee=Ia(o,i,Kn);_&&(ee=!1);const te=Ia(o,i,"checkCrc32"),re=(te===g?Ia(o,i,"checkSignature"):te)&&!M&&(!I||V||m&&1==m.vendorVersion),ne={options:{codecType:Dt,password:D,rawPassword:O,zipCrypto:V,encryptionStrength:m&&m.strength,checkCrc32:re,checkAuthenticationCode:Ia(o,i,"checkAuthenticationCode"),passwordVerification:V&&(S?y>>>8&r:b>>>24&r),outputSize:M?z:k,signature:b,compressed:0!=p&&!M,encrypted:I,useWebWorkers:Ia(o,i,qn),useCompressionStream:ee,transferStreams:Ia(o,i,Jn),deflate64:_,format:Z?Z.format:g,codecURI:Z?Z.codecURI:g,compressionMethod:p,rawBitFlag:x,checkPasswordOnly:G},config:w,ce:{signal:Y,size:B,onstart:J,onprogress:X,onend:Q}};let ae;q&&await(async({reader:e,Ve:t,index:r,offset:n,signature:a,compressedSize:i,uncompressedSize:o,Ze:c,dataDescriptor:d,extraFieldZip64:l,Ne:f})=>{let m=0;if(d&&(m=l?20:12),m){const r=await an(e,c+i,m+4);if(r.length==m+4&&Ha(he(r),0)==s){const e=Ha(he(r),4);let n,s;l?(n=Ya(he(r),8),s=Ya(he(r),16)):(n=Ha(he(r),8),s=Ha(he(r),12)),(t.encrypted&&!t.zipCrypto||e==a)&&n==i&&s==o&&(m+=4)}}const u={start:n,end:c+i+m,Ve:t};for(const[e,t]of f)if(e!=r&&u.start<t.end&&t.start<u.end){const e=Error(ma);throw e.Le=t.Ve,e}f.set(r,u)})({reader:c,Ve:t,index:d,offset:R,signature:b,compressedSize:z,uncompressedSize:k,Ze:L,dataDescriptor:S||F.bitFlag.dataDescriptor,extraFieldZip64:u||F.extraFieldZip64,Ne:a});try{if(!K){G&&(e=new WritableStream),e=new rn(e),await nn(e,M?z:k),({writable:ae}=e);const{outputSize:t}=await rr({readable:H,writable:ae},ne);if(e.size+=t,t!=(M?z:k))throw Error(ft)}}catch(t){if(t.outputSize!==g&&(e.size+=t.outputSize),!G||t.message!=Ee)throw t}finally{Ia(o,i,Xn)||!ae||ae.locked||await ae.getWriter().close()}return G||K?g:e.getData?e.getData():ae}};function ka(e){const t=Math.min(e.byteLength,1024)-3;for(let r=0;t>r;r++)if(134630224==Ha(e,r))return!0;return!1}function za(e,t,r){const n=e.rawBitFlag=Ba(t,r+2),a=!(1&~n),s=Ha(t,r+6);Object.assign(e,{encrypted:a,version:Ba(t,r),bitFlag:{level:(6&n)>>1,dataDescriptor:!(8&~n),languageEncodingFlag:(n&u)==u},rawLastModDate:s,lastModDate:Va(s),filenameLength:Ba(t,r+22),extraFieldLength:Ba(t,r+24)})}function Sa(e,t,r,n,a){const{rawExtraField:s}=t,i=t.extraField=new Map,o=he(s);let c=0;try{for(;c<s.length;){const e=Ba(o,c),t=Ba(o,c+2);i.set(e,{type:e,data:s.slice(c+4,c+4+t)}),c+=4+t}}catch{}const d=Ba(r,n+4);Object.assign(t,{signature:Ha(r,n+10),crc32:Ha(r,n+10),compressedSize:Ha(r,n+14),uncompressedSize:Ha(r,n+18)});const l=i.get(1);l&&(((e,t)=>{t.zip64=!0;const r=he(e.data),n=xa.filter(([e,r])=>t[e]==r),a=n.reduce((e,[,t])=>e+va[t].bytes,0);if(e.data.length<a)throw Error(oa);for(let a=0,s=0;a<n.length;a++){const[i,o]=n[a],c=va[o];t[i]=e[i]=c.Ce(r,s),s+=c.bytes}})(l,t),t.extraFieldZip64=l);const f=i.get(28789);f&&(Ea(f,cn,dn,t,e),t.extraFieldUnicodePath=f);const u=i.get(25461);u&&(Ea(u,ln,fn,t,e),t.extraFieldUnicodeComment=u);const p=i.get(39169);p&&p.data.length>=7?(((e,t,r)=>{const n=he(e.data),a=La(n,4);Object.assign(e,{vendorVersion:La(n,0),vendorId:La(n,2),strength:a,originalCompressionMethod:r,compressionMethod:Ba(n,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=g)})(p,t,d),t.extraFieldAES=p):t.compressionMethod=d;const w=i.get(10);w&&(((e,t)=>{const r=he(e.data);let n,a=4;try{for(;a<e.data.length&&!n;){const t=Ba(r,a),s=Ba(r,a+2);1==t&&(n=e.data.slice(a+4,a+4+s)),a+=4+s}}catch{}if(n&&24==n.length){const r=he(n),a=r.getBigUint64(0,!0),s=r.getBigUint64(8,!0),i=r.getBigUint64(16,!0);Object.assign(e,{rawLastModDate:a,rawLastAccessDate:s,rawCreationDate:i});const o={lastModDate:Za(a),lastAccessDate:Za(s),creationDate:Za(i)};Object.assign(e,o),Object.assign(t,o)}})(w,t),t.extraFieldNTFS=w);const h=i.get(30805);if(h)Fa(h,t,!1),t.extraFieldUnix=h;else{const e=i.get(30837);e&&(Fa(e,t,!0),t.extraFieldInfoZip=e)}const x=i.get(m);x&&(((e,t,r)=>{if(!e.data.length)return;const n=he(e.data),a=La(n,0),s=[],i=[];r?(1&~a||(s.push(hn),i.push(xn)),2&~a||(s.push(vn),i.push("rawLastAccessDate")),4&~a||(s.push(bn),i.push(yn))):5>e.data.length||(s.push(hn),i.push(xn));let o=1;s.forEach((r,a)=>{if(e.data.length>=o+4){const s=Ha(n,o);t[r]=e[r]=new Date(1e3*(0|s));const c=i[a];e[c]=s}o+=4})})(x,t,a),t.extraFieldExtendedTimestamp=x);const v=i.get(6534);v&&(t.extraFieldUSDZ=v)}function Ea(e,t,r,n,a){if(5>e.data.length)return void(e.valid=!1);const s=he(e.data),i=new fe;i.append(a[r]);const o=he(new Uint8Array(4));o.setUint32(0,i.get(),!0);const c=Ha(s,1);Object.assign(e,{version:La(s,0),[t]:on(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&c==Ha(o,0)}),e.valid&&(n[t]=e[t],n[t+"UTF8"]=!0)}function Fa(e,t,r){try{const n=he(e.data);let a,s;if(r){let t=0;const r=La(n,t++),i=La(n,t++);a=Ra(e.data.subarray(t,t+i)),t+=i;const o=La(n,t++);s=Ra(e.data.subarray(t,t+o)),Object.assign(e,{version:r,uid:a,gid:s})}else 4>e.data.length||(a=Ba(n,0),s=Ba(n,2),Object.assign(e,{uid:a,gid:s}));a!==g&&(t.uid=a),s!==g&&(t.gid=s)}catch{}}function Ra(e){const t=new Uint8Array(4);return t.set(e,0),new DataView(t.buffer,t.byteOffset,4).getUint32(0,!0)}function ja(e,t){return e.Te?e.Te(t):0}function Ua(e,t){return e===g?t?ea:"balanced":e}const Da=64,Oa=0,Ma=1,Aa=2;async function*Ta(e,t){const r=e.size-t,n=await an(e,r,t),a=he(n);for(let e=n.length-l;e>=0;e--)Ha(a,e)==o&&(yield[a,r,n,e,r+e])}function Ca(e,t,r){return{offset:r,buffer:e.slice(t,t+l).buffer}}async function Na(r,n,a,s,o,c,l){const m=Ba(n,s+10),u=Ha(n,s+12),p=Ha(n,s+16);if(m==t||u==e||p==e)return await Pa(r,n,a,o-f,c,l)==d?Aa:Oa;if(!m&&!u)return Ma;const w=Ba(n,s+6);for(const e of[o-u,ja(r,w)+p])if(await Pa(r,n,a,e,c,l)==i)return Aa;return Oa}async function Pa(e,t,r,n,a,s){return 0>n||n+4>a?g:r>n?s.count>0?(s.count--,Ha(he(await an(e,n,4)),0)):g:Ha(t,n-r)}function Wa(e){const t=Error(ua);throw t.reason=e,t}function Ia(e,t,r){return t[r]===g?e.options[r]:t[r]}function Va(e){const r=(4294901760&e)>>16,n=e&t;return new Date(1980+((65024&r)>>9),((480&r)>>5)-1,31&r,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}function Za(e){return new Date(Number(e/BigInt(1e4)-BigInt(116444736e5)))}function La(e,t){return e.getUint8(t)}function Ba(e,t){return e.getUint16(t,!0)}function Ha(e,t){return e.getUint32(t,!0)}function Ya(e,t){return Number(e.getBigUint64(t,!0))}var Ga=Object.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:ua,ERR_BAD_FORMAT:ra,ERR_CENTRAL_DIRECTORY_NOT_FOUND:sa,ERR_ENCRYPTED:ca,ERR_ENCRYPTED_CENTRAL_DIRECTORY:pa,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:aa,ERR_EOCDR_NOT_FOUND:na,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:oa,ERR_INVALID_AUTHENTICATION_CODE:Se,ERR_INVALID_COMPRESSED_DATA:mt,ERR_INVALID_CRC32:ut,ERR_INVALID_PASSWORD:ke,ERR_INVALID_SIGNATURE:ze,ERR_INVALID_UNCOMPRESSED_SIZE:ft,ERR_LOCAL_FILE_HEADER_NOT_FOUND:ia,ERR_OVERLAPPING_ENTRY:ma,ERR_SPLIT_ZIP_FILE:fa,ERR_UNSUPPORTED_COMPRESSION:la,ERR_UNSUPPORTED_ENCRYPTION:da,ZipReader:ba,ZipReaderStream:ya});const qa="File already exists",Ka="Zip file comment exceeds 64KB",Ja="File entry comment exceeds 64KB",Xa="File entry name exceeds 64KB",Qa="Version exceeds 65535",_a="The strength must equal 1, 2, or 3",$a="Encryption is not supported in USDZ files",es="Extra field type exceeds 65535",ts="Extra field data exceeds 64KB",rs=-2147483648,ns=2147483647,as=BigInt(0),ss=BigInt("0x7fffffffffffffff"),is="Zip64 is not supported (set the 'zip64' option to 'true')",os="Undefined uncompressed size",cs="Undefined reader",ds="Zip file not empty",ls=new Uint8Array([7,0,2,0,65,69,3,0,0]),fs="infozip",ms="unix";let us=0;const ps=[];class ws{constructor(e,t={}){e=new rn(e);const{availableSize:r=k,maxSize:n=k}=e;Object.assign(this,{writer:e,Be:r>0&&r!==k&&n>0&&n!==k,options:t,config:D(),files:new Map,He:new Set,offset:t[Qn]===g?e.size||e.writable.size||0:t[Qn],Ye:t[Qn]===g?0:t[Qn]-(e.size||e.writable.size||0),Ge:new Set,qe:0,Ke:g})}async prependZip(t){if(this.He.size)throw Error(ds);t=new tn(t),await nn(t);const{ZipReader:r}=await Promise.resolve().then(()=>Ga),n=new r(t.readable),a=await n.getEntries();await n.close(),await nn(this.writer),await t.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=t.size,this.He=new Set(a.map(e=>e.filename)),this.files=new Map(a.map(t=>{const{version:r,rawLastModDate:n,lastAccessDate:a,creationDate:s,rawFilename:i,bitFlag:o,encrypted:c,uncompressedSize:d,compressedSize:l,zip64:f}=t;let{compressionMethod:m,Je:u,Xe:p,Qe:w,_e:h,$e:x,rawExtraField:v}=t;const{level:b,languageEncodingFlag:y,dataDescriptor:k}=o;u=u||E,p=p||E,w=w||E,h=h||E,x=x||E,v=v||E,t.extraFieldAES&&(m=99);const z=Ns(u,p,w,h,x,v),S=f&&d>=e,F=f&&l>=e,R=-7&Ws(b,y,k,c,m)|b<<1,{et:j,nt:U}=Ps({version:r,bitFlag:R,compressionMethod:m,uncompressedSize:d,compressedSize:l,rawLastModDate:n,rawFilename:i,st:F,it:S,extraFieldLength:z}),{signature:D}=t;return D!==g&&As(U,10,D),Object.assign(t,{it:S,st:F,ot:f&&t.offset>=e,diskNumberStart:0,ct:!1,Je:u,Xe:p,Qe:w,_e:h,$e:x,rawExtraField:v,extendedTimestamp:w.length>0||h.length>0,lt:1+(a?2:0)+(s?4:0),et:j,nt:U}),[t.filename,t]}))}async add(i="",o,c={}){const d=this;c=Object.assign({},c);const{Ge:l,config:f}=d;let u,z;us<f.maxWorkers?us++:await new Promise(e=>ps.push(e));try{if(i=i.trim(),Ds(d,c,On)&&!i.endsWith(x)&&(i+=x),d.He.has(i))throw Error(qa);return d.He.add(i),z=!0,u=(async(i,o,c,d)=>{const l=((n,a,s)=>{a=a.trim();let i=Ds(n,s,En),o=Ds(n,s,Un,i?20:768);const c=Ds(n,s,Mn),d=Ds(n,s,"uid"),l=Ds(n,s,"gid");let f=Ds(n,s,Nn),m=Ds(n,s,"unixExtraFieldType"),u=Ds(n,s,Pn),v=Ds(n,s,Wn),b=Ds(n,s,In);if(d!==g&&(0>d||d>e))throw Error("Invalid uid (must be integer 0..2^32-1)");if(l!==g&&(0>l||l>e))throw Error("Invalid gid (must be integer 0..2^32-1)");if(f!==g&&(0>f||f>t))throw Error("Invalid UNIX mode (must be integer 0..65535)");if(m!==g&&m!==fs&&m!==ms)throw Error("Invalid unixExtraFieldType (must be 'infozip' or 'unix')");if(m===ms&&(d!==g&&d>t||l!==g&&l>t))throw Error("uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)");m!==g||d===g&&l===g||(m=fs);let y=Ds(n,s,zn),k=Ds(n,s,Sn);const z=y!==g||k!==g;if(d!==g||l!==g||f!==g||m?(i=!1,o=o&t|768):z&&(i=!0,o&=r),y!==g&&(0>y||y>r))throw Error("Invalid msdosAttributesRaw (must be integer 0..255)");if(k&&"object"!=typeof k)throw Error("Invalid msdosAttributes (must be an object with boolean flags)");if(o>t)throw Error(Qa);let S=Ds(n,s,kn);const E=S!==g;E||(S=0),!s[On]&&a.endsWith(x)&&(s[On]=!0);const F=Ds(n,s,On);let R;if(F?(a.endsWith(x)||(a+=x),E||(S=16,i||(S|=16877<<16))):i||E||(S=c?493<<16:27525120),!i){const e=f!==g||!!(u||v||b);R=S>>16&t,f=f===g?R:f&t,u?f|=w:u=!!(f&w),v?f|=h:v=!!(f&h),b?f|=512:b=!!(512&f),E&&!e||(F&&(f|=p),S=(f&t)<<16|S&t)}return({msdosAttributesRaw:y,msdosAttributes:k}=((e,t)=>{if(e!==g)e&=r;else if(t!==g){const{readOnly:n,hidden:a,system:s,directory:i,archive:o}=t;let c=0;n&&(c|=1),a&&(c|=2),s&&(c|=4),i&&(c|=16),o&&(c|=32),e=c&r}return t===g&&(t={readOnly:!!(1&e),hidden:!!(2&e),system:!!(4&e),directory:!!(16&e),archive:!!(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}})(y,k)),z&&(S=S&e|y&r),{name:a,ft:{versionMadeBy:o,msDosCompatible:i,externalFileAttributes:S,unixExternalUpper:R,uid:d,gid:l,unixMode:f,unixExtraFieldType:m,setuid:u,setgid:v,sticky:b,msdosAttributesRaw:y,msdosAttributes:k}}})(i,o,d);({name:o}=l);const f=((e,r,n)=>{const a=Ds(e,n,"encodeText",ue);let s=a(r);if(s===g&&(s=ue(r)),Ns(s)>t)throw Error(Xa);const i=n[ln]||"";let o=a(i);if(o===g&&(o=ue(i)),Ns(o)>t)throw Error(Ja);const c=Ds(e,n,jn,20);if(c>t)throw Error(Qa);const d=Ds(e,n,hn,new Date),l=Ds(e,n,vn),f=Ds(e,n,bn),m=Ds(e,n,gn,0),u=Ds(e,n,Hn);let p,w;u||(p=Ds(e,n,Ln),w=Ds(e,n,Bn));const h=Ds(e,n,"encryptionStrength",3),x=Ds(e,n,Dn),v=Ds(e,n,"extendedTimestamp",!0),b=Ds(e,n,"ntfsTimestamp"),y=Ds(e,n,"keepOrder",!0),k=Ds(e,n,qn),z=Ds(e,n,Jn),S=Ds(e,n,"bufferedWrite"),F=Ds(e,n,"createTempStream"),R=Ds(e,n,"dataDescriptorSignature",!0),j=Ds(e,n,Yn),U=Ds(e,n,"useUnicodeFileNames",!0),D=Ds(e,n,An),O=u||D===g?g:$(D);if(!u&&D!==g&&0!==D&&8!==D&&!O)throw Error("Compression method not supported");let M=Ds(e,n,"level");if(e.options[_n]){if(p!==g||w!==g)throw Error($a);M===g&&D===g&&(M=0)}let A=Ds(e,n,Kn),T=Ds(e,n,"dataDescriptor");S&&T===g&&(T=!1),(T===g||x)&&(T=!0),M!==g&&6!=M&&(A=!1);const C=Ds(e,n,Fn);if(!x&&(p!==g||w!==g)&&(1>h||h>3))throw Error(_a);let N=E;const P=n[Cn];if(P){let e=0,r=0;P.forEach(t=>e+=4+Ns(t)),N=new Uint8Array(e);const n=he(N);P.forEach((e,a)=>{if(a>t)throw Error(es);if(Ns(e)>t)throw Error(ts);Ms(n,r,a),Ms(n,r+2,Ns(e)),Cs(N,e,r+4),r+=4+Ns(e)})}return{comment:i,ft:{rawFilename:s,rawComment:o,version:c,lastModDate:d,lastAccessDate:l,creationDate:f,internalFileAttributes:m,passThrough:u,password:p,rawPassword:w,encryptionStrength:h,zipCrypto:x,extendedTimestamp:v,ntfsTimestamp:b,keepOrder:y,useWebWorkers:k,transferStreams:z,bufferedWrite:S,createTempStream:F,dataDescriptorSignature:R,signal:j,useUnicodeFileNames:U,compressionMethod:D,format:O?O.format:g,codecURI:O?O.codecURI:g,ut:O?O.versionNeeded:g,level:M,useCompressionStream:A,dataDescriptor:T,zip64:C,rawExtraField:N}}})(i,o,d),{comment:u}=f,z=d[Cn];let S;i.files.set(o,g);try{const{ft:u}=f;0==u.level||u.compressionMethod!==g||u.passThrough||await(async e=>{const{CompressionStream:t,CompressionStreamZlib:r}=e;if(r&&!r.ke)return!0;if(kt(t)||gt(t,wt))return!0;if(r)try{return await void 0,!0}catch{return!1}return!1})(i.config)||(u.level=0);const p=await(async(t,r,{ft:n},a)=>{const{passThrough:s,zipCrypto:i,password:o,rawPassword:c,encryptionStrength:d}=n;let{dataDescriptor:l,zip64:f,level:m,compressionMethod:u}=n,p=0,w=0;if(s){if(!r)throw Error(cs);if(w=a[mn],w===g)throw Error(os)}const h=!0===f,x=Ds(t,a,Rn),v=!!r&&(!!(o&&Ns(o)||c&&Ns(c))||s&&x);r||(m=0,u=0);const b=v?i?12:16+4*d:0;r&&(r=new tn(r),await nn(r),s?(a.uncompressedSize=w,p=Os(w)+b):r.size===g?(l=!0,(f||f===g)&&(f=!0,w=p=4294967296)):(a.uncompressedSize=w=r.size,p=Os(w)+b));const y=h||w>=e,k=h||p>=e;if(y||k){if(!1===f)throw Error(is);f=!0}return f=f||!1,{reader:r,ft:{dataDescriptor:l,zip64:f,it:y,st:k,uncompressedSize:w,level:m,compressionMethod:u,encrypted:v}}})(i,c,f,d);({reader:c}=p);const w=ks(i.writer),h=gs(i.writer),x=(e=>{const{rawFilename:r,lastModDate:a,lastAccessDate:s,creationDate:i,level:o,zip64:c,zipCrypto:d,useUnicodeFileNames:l,dataDescriptor:f,directory:u,rawExtraField:p,encryptionStrength:w,extendedTimestamp:h,ntfsTimestamp:x,passThrough:k,encrypted:z,it:S,st:F,uncompressedSize:R}=e;let{version:j,compressionMethod:U}=e;const D=!u&&(U===g?o===g||o>0:0!==U);let O;const M=k||!D,A=c&&(e.bufferedWrite||!f||!S&&!F||M),T=A||c&&f&&(S||F);if(c&&(S||F)){const e=20,t=ys(e);if(t.uint16(1),t.uint16(e-4),O=t.array,A&&(t.wt(R),M)){const e=z?d?12:16+4*w:0;t.wt(k?0:R+e)}}else O=E;let C,N,P,W,I;if(z&&!d){const e=ys(Ns(ls)+2);e.uint16(39169),e.bytes(ls),C=e.array,C[8]=w}else C=E;if(h){const e=Rs(a),t=js(e);if(t){const t=9+(s?4:0)+(i?4:0),r=ys(t);W=1+(s?2:0)+(i?4:0),r.uint16(m),r.uint16(t-4),r.uint8(W),r.uint32(e),s&&r.uint32(Us(Rs(s))),i&&r.uint32(Us(Rs(i))),P=r.array}else P=E;if(x===g?!t||s||i:x)try{const e=Fs(a),t=ys(36);t.uint16(10),t.uint16(32),t.ht(4),t.uint16(1),t.uint16(24),t.wt(e),t.wt(s?Fs(s):e),t.wt(i?Fs(i):e),N=t.array}catch{N=E}else N=E}else N=P=E;try{const{uid:r,gid:n,unixExtraFieldType:a}=e;if(a!=fs||r===g&&n===g)if(a!=ms||r===g&&n===g)I=E;else{const e=ys(8);e.uint16(30805),e.uint16(4),e.uint16((r===g?0:r)&t),e.uint16((n===g?0:n)&t),I=e.array}else{const e=bs(r),t=bs(n),a=3+e.length+t.length,s=ys(4+a);s.uint16(30837),s.uint16(a),s.uint8(1),s.uint8(e.length),s.bytes(e),s.uint8(t.length),s.bytes(t),I=s.array}}catch{I=E}U===g&&(U=D?8:0);const{ut:V}=e;D&&V!==g&&(j=j>V?j:V),c&&(j=j>45?j:45),z&&!d&&(j=j>51?j:51,C[9]=U,U=99);const Z=T?Ns(O):0,L=Z+Ns(C,P,N,I,p);if(L>t)throw Error(ts);const B=new Date(2e3*Math.ceil(Math.floor(a.getTime()/1e3)/2)),{et:H,nt:Y,rawLastModDate:G}=Ps({version:j,bitFlag:Ws(o,l,f,z,U),compressionMethod:U,uncompressedSize:R,lastModDate:y>B?y:B>b?b:B,rawFilename:r,st:F,it:S,extraFieldLength:L}),q=ys(v+Ns(r)+L),K=q.array,J=he(K);return q.uint32(n),q.bytes(H),q.bytes(r),T&&q.bytes(O),q.bytes(C),q.bytes(P),q.bytes(N),q.bytes(I),q.bytes(p),f&&(F||As(J,18,0),S||As(J,22,0)),{xt:K,vt:J,et:H,nt:Y,lastModDate:a,rawLastModDate:G,encrypted:z,compressed:D,version:j,compressionMethod:U,lt:W,Je:E,bt:Z,Qe:P,_e:N,$e:I,Xe:C,extraFieldLength:L}})(d=Object.assign({},d,l.ft,f.ft,p.ft,{internalFileAttribute:f.ft.internalFileAttributes,externalFileAttribute:l.ft.externalFileAttributes,signature:d[Tn],offset:i.offset-w,diskNumberStart:h})),z=(({zip64:e,dataDescriptor:t,dataDescriptorSignature:r})=>{let n,a=E,i=0,o=e?20:12;return r&&(o+=4),t&&(a=new Uint8Array(o),n=he(a),r&&(i=4,As(n,0,s))),{yt:a,gt:n,kt:i}})(d),F=Ns(x.xt,z.yt);S=await(async(t,n,s,i,o)=>{const{files:c,writer:d}=t,{keepOrder:l,dataDescriptor:f,signal:m}=o,{zt:u}=i,p=t.options[_n],w=t.Ke;let h,x,b,y,z,S,E,F={},R=0;c.set(n,F),t.Ke=F;try{let x;l&&(x=w&&w.lock,F.lock=new Promise(e=>b=e)),o.bufferedWrite||!l||t.St||t.qe||!f?(h=!0,t.qe++,E=o.createTempStream?await o.createTempStream():new TransformStream(g,g,{highWaterMark:k}),E.size=0,await nn(d)):(E=d,await j()),await nn(E);const D=ks(d);if(t.Be){delete t.Be;const e=new Uint8Array(4);As(he(e),0,a),await Es(d,e),t.offset+=4}p&&!h&&vs(i,t.offset-D);const{xt:O}=u;h||(await x,await U());const M=gs(d),A=Ss(t,d);if(F.diskNumberStart=M,h||(z=!0,S=d.size,await Es(E,O)),F=await(async(t,n,{diskNumberStart:a,lock:s},i,o,c)=>{const{zt:d,Et:l,Ft:f}=i,{et:m,nt:u,lastModDate:p,rawLastModDate:w,encrypted:h,compressed:x,version:v,compressionMethod:b,Je:y,bt:k,Qe:z,lt:S,_e:E,$e:F,Xe:R}=d,{yt:j}=l,{rawFilename:U,lastAccessDate:D,creationDate:O,password:M,rawPassword:A,level:T,zip64:C,it:N,st:P,zipCrypto:W,dataDescriptor:I,directory:V,executable:Z,versionMadeBy:L,rawComment:B,rawExtraField:H,useWebWorkers:Y,transferStreams:G,onstart:q,onprogress:K,onend:J,signal:X,encryptionStrength:Q,extendedTimestamp:_,msDosCompatible:$,internalFileAttributes:ee,externalFileAttributes:te,uid:re,gid:ne,unixMode:ae,setuid:se,setgid:ie,sticky:oe,unixExternalUpper:ce,msdosAttributesRaw:de,msdosAttributes:le,useCompressionStream:fe,passThrough:me,format:ue,codecURI:pe}=c,we={lock:s,versionMadeBy:L,zip64:C,directory:!!V,executable:!!Z,filenameUTF8:!0,rawFilename:U,commentUTF8:!0,rawComment:B,Je:y,bt:k,Qe:z,_e:E,$e:F,Xe:R,rawExtraField:H,extendedTimestamp:_,msDosCompatible:$,internalFileAttributes:ee,externalFileAttributes:te,diskNumberStart:a,uid:re,gid:ne,unixMode:ae,setuid:se,setgid:ie,sticky:oe,unixExternalUpper:ce,msdosAttributesRaw:de,msdosAttributes:le};let{crc32:he,uncompressedSize:xe}=c;he===g&&({signature:he}=c);let ve=0;me||(xe=0);const{writable:be}=n;if(t){const a=dt(t.createReadable?t.createReadable():t.readable),s=t.size,i={options:{codecType:Ut,level:T,rawPassword:A,password:M,encryptionStrength:Q,zipCrypto:h&&W,passwordVerification:h&&W&&w>>8&r,computeCrc32:!me,compressed:x&&!me,encrypted:h&&!me,useWebWorkers:Y,useCompressionStream:fe,transferStreams:G,format:ue,codecURI:pe,compressionMethod:b},config:o,ce:{signal:X,size:s,onstart:q,onprogress:K,onend:J}};try{const t=await rr({readable:a,writable:be},i);if(ve=t.outputSize,n.size+=ve,me||(xe=t.inputSize,h&&!W||(he=t.signature)),!P&&ve>=e||!N&&xe>=e)throw Error(is)}catch(e){throw e.outputSize!==g&&(n.size+=e.outputSize),e}}return(({signature:e,compressedSize:t,uncompressedSize:r,zt:n,Et:a},{zip64:s,zipCrypto:i,dataDescriptor:o})=>{const{nt:c,encrypted:d}=n,{gt:l,kt:f}=a;d&&!i||e===g||(As(c,10,e),o&&As(l,f,e)),s?o&&(Ts(l,f+4,BigInt(t)),Ts(l,f+12,BigInt(r))):(As(c,14,t),As(c,18,r),o&&(As(l,f+4,t),As(l,f+8,r)))})({signature:he,compressedSize:ve,uncompressedSize:xe,zt:d,Et:l},c),I&&await Es(n,j),Object.assign(we,{uncompressedSize:xe,compressedSize:ve,lastModDate:p,rawLastModDate:w,creationDate:O,lastAccessDate:D,encrypted:h,zipCrypto:W,size:f+ve,compressionMethod:b,version:v,et:m,nt:u,signature:he,crc32:h&&!W?g:he,lt:S,it:N,st:P}),we})(s,E,F,i,t.config,o),h||(z=!1),c.set(n,F),F.filename=n,h){if(await Promise.all([E.writable.getWriter().close(),x]),await j(),y=!0,S=d.size,await U(),F.diskNumberStart=gs(d),F.offset=Ss(t,d),p){const e=i.Ft;vs(i,t.offset-ks(d)),F.size+=i.Ft-e}(({rawFilename:e,encrypted:t,zip64:r,bt:n,signature:a,compressedSize:s,uncompressedSize:i,it:o,st:c},d,{dataDescriptor:l})=>{if(l||(t||As(d,14,a),c||As(d,18,s),o||As(d,22,i)),r&&n){const t=v+Ns(e)+4;Ts(d,t,BigInt(i)),Ts(d,t+8,BigInt(s))}})(F,u.vt,o),await Es(d,u.xt),await(async(e,t,r)=>{const n=t.writable.getWriter();try{await e.pipeTo(new WritableStream({async write(e){var t;await n.ready,await n.write(e),t=Ns(e),R+=t}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{n.releaseLock()}})(E.readable,d,m),d.size+=E.size,y=!1}else F.diskNumberStart=M,F.offset=A;return t.offset+=F.size,F}catch(e){if(y||z){if(t.hasCorruptedEntries=!0,e)try{e.corruptedEntry=!0}catch{}t.offset+=d.size-S,h&&(t.offset+=R)}throw c.delete(n),e}finally{if(h&&t.qe--,b&&b(),x&&x(),h&&E&&E.dispose)try{await E.dispose()}catch{}}async function j(){t.St=!0;const{Rt:e}=t;t.Rt=new Promise(e=>x=()=>{t.St=!1,e()}),await e}async function U(){zs(d,Ns(u.xt))&&await d.closeDisk()}})(i,o,c,{zt:x,Et:z,Ft:F},d)}catch(e){throw i.files.delete(o),e}return Object.assign(S,{name:o,comment:u,extraField:z}),new Zn(S)})(d,i,o,c),l.add(u),await u}catch(e){throw z&&d.He.delete(i),e}finally{l.delete(u);const e=ps.shift();e?e():us--}}remove(e){const{He:t,files:r}=this;if("string"==typeof e&&(e=r.get(e)),e&&e.filename!==g){const{filename:n}=e;if(t.has(n)&&r.has(n))return t.delete(n),r.delete(n),!0}return!1}async close(r=E,n={}){const{Ge:a,writer:s}=this,{writable:f}=s;if(Ns(r)>t)throw Error(Ka);for(;a.size;)await Promise.allSettled(Array.from(a));return await(async(r,n,a)=>{const s=(r=>{let n=0;for(const[,a]of r){const{rawFilename:r,Xe:s,rawComment:i,_e:o,$e:c,rawExtraField:d,extendedTimestamp:l,lt:f,lastModDate:u,it:p,st:w,uncompressedSize:h,compressedSize:x}=a,v=a.offset>=e,b=a.diskNumberStart>=t;let y,g;if(v||b||p||w){const e=4+(p?8:0)+(w?8:0)+(v?8:0)+(b?4:0),t=ys(e);t.uint16(1),t.uint16(e-4),p&&t.wt(h),w&&t.wt(x),v&&t.wt(a.offset),b&&t.uint32(a.diskNumberStart),y=t.array}else y=E;a.Je=y,a.ot=v,a.ct=b;const k=Rs(u);if(l&&js(k)){const e=ys(9);e.uint16(m),e.uint16(5),e.uint8(f),e.uint32(k),g=e.array}else g=E;a.Qe=g;const z=Ns(y,s,o,c,g,d);if(z>t)throw Error(ts);n+=46+Ns(r,i)+z}return n})(r.files),f=await(async(r,n,a)=>{const{files:s,writer:o}=r,c=new Uint8Array(n);await nn(o);let d=0,l=0,f=gs(o),m=ks(o);for(const[r,n]of Array.from(s.values()).entries()){const{offset:u,rawFilename:p,Je:w,Xe:h,Qe:x,_e:v,$e:b,rawExtraField:y,rawComment:g,versionMadeBy:k,et:z,nt:S,it:E,st:F,ct:R,ot:j,internalFileAttributes:U,externalFileAttributes:D,diskNumberStart:O,uncompressedSize:M,compressedSize:A}=n,T=Ns(w,h,x,v,b,y),C=46+Ns(p,g)+T;zs(o,d+C-l)&&(await Es(o,c.slice(l,d)),l=d,await o.closeDisk()),0==r&&(f=gs(o),m=ks(o)),E||As(S,18,M),F||As(S,14,A),(j||R)&&45>n.version&&Ms(S,0,45);const N=ys(C);if(N.uint32(i),N.uint16(k),N.bytes(z.subarray(0,24)),N.uint16(T),N.uint16(Ns(g)),N.uint16(R?t:O),N.uint16(U),N.uint32(D),N.uint32(j?e:u),N.bytes(p),N.bytes(w),N.bytes(h),N.bytes(x),N.bytes(v),N.bytes(b),N.bytes(y),N.bytes(g),Cs(c,N.array,d),d+=C,a.onprogress)try{await a.onprogress(r+1,s.size,new Zn(n))}catch{}}return await Es(o,l?c.slice(l):c),{diskNumber:f,diskOffset:m}})(r,s,a);await(async(r,n,a,s)=>{const{writer:i}=r,{jt:f}=s;let{Ut:m}=s,u=r.files.size,p=f.diskNumber,w=Ss(r,f),h=gs(i);zs(i,l)&&h++;let x=Ds(r,a,Fn);if(!(e>w&&e>m&&t>u&&t>h)){if(!1===x)throw Error(is);x=!0}const v=Ns(n);if(v>t)throw Error(Ka);const b=ys(x?98:l);zs(i,Ns(b.array)+v)&&await i.closeDisk(),h=gs(i),x&&(b.uint32(c),b.wt(44),b.uint16(45),b.uint16(45),b.uint32(h),b.uint32(p),b.wt(u),b.wt(u),b.wt(m),b.wt(w),b.uint32(d),b.uint32(h),b.wt(BigInt(Ss(r,i))+BigInt(m)),b.uint32(h+1),Ds(r,a,"supportZip64SplitFile",!0)&&(h=t,p=t),u=t,w=e,m=e),b.uint32(o),b.uint16(h),b.uint16(p),b.uint16(u),b.uint16(u),b.uint32(m),b.uint32(w),b.uint16(v),await Es(i,b.array),v&&await Es(i,n)})(r,n,a,{jt:f,Ut:s})})(this,r,n),Ds(this,n,Xn)||await f.getWriter().close(),s.getData?s.getData():f}}class hs{constructor(e={}){const{readable:t,writable:r}=new TransformStream;this.readable=t,this.zipWriter=new ws(r,e),this.Ge=new Set}transform(e){const t=this.zipWriter;let r;const{readable:n,writable:a}=new TransformStream({start(e){r=e},flush:()=>{(async()=>{try{await t.close()}catch(e){try{await t.writer.writable.abort(e)}catch{}}})()}});return xs(this,this.zipWriter.add(e,n),e=>r.error(e)),{readable:this.readable,writable:a}}writable(e){let t;const{readable:r,writable:n}=new TransformStream({start(e){t=e}});return xs(this,this.zipWriter.add(e,r),e=>t.error(e)),n}async close(e,t={}){return await Promise.all(Array.from(this.Ge)),this.zipWriter.close(e,t)}}function xs(e,t,r){e.Ge.add(t),t.catch(e=>{try{r(e)}catch{}})}function vs(e,t){const{zt:r}=e;let{xt:n,extraFieldLength:a}=r,s=64-(t+Ns(n))%64;4>s&&(s+=64);const i=new Uint8Array(s),o=he(i);Ms(o,0,6534),Ms(o,2,s-4);const c=n;r.xt=n=new Uint8Array(Ns(c)+s),Cs(n,c),Cs(n,i,Ns(c));const d=he(n);Ms(d,28,a+s),r.vt=d,e.Ft+=s}function bs(e){if(e===g)return E;{const t=new Uint8Array(4);he(t).setUint32(0,e,!0);let r=4;for(;r>1&&0===t[r-1];)r--;return t.subarray(0,r)}}function ys(e){const t=new Uint8Array(e),r=he(t);let n=0;return{array:t,uint8:e=>{((e,t,r)=>{e.setUint8(t,r)})(r,n,e),n+=1},uint16:e=>{Ms(r,n,e),n+=2},uint32:e=>{As(r,n,e),n+=4},wt:e=>{Ts(r,n,BigInt(e)),n+=8},bytes:e=>{Cs(t,e,n),n+=Ns(e)},ht:e=>n+=e}}function gs(e){const{diskNumber:t=0}=e;return t}function ks(e){const{diskOffset:t=0}=e;return t}function zs(e,t){const{availableSize:r=k}=e;return t>r}function Ss(e,{diskNumber:t=0,diskOffset:r=0}){return e.offset-r-(t?e.Ye:0)}async function Es(e,t){const{writable:r}=e,n=r.getWriter();try{await n.ready,e.size+=Ns(t),await n.write(t)}finally{n.releaseLock()}}function Fs(e){if(e){const t=(BigInt(e.getTime())+BigInt(116444736e5))*BigInt(1e4);return as>t?as:t>ss?ss:t}}function Rs(e){return Math.floor(e.getTime()/1e3)}function js(e){return e>=rs&&ns>=e}function Us(e){return Math.min(ns,Math.max(rs,e))}function Ds(e,t,r,n){const a=t[r]===g?e.options[r]:t[r];return a===g?n:a}function Os(e){return e+5*(Math.floor(e/16383)+1)}function Ms(e,t,r){e.setUint16(t,r,!0)}function As(e,t,r){e.setUint32(t,r,!0)}function Ts(e,t,r){e.setBigUint64(t,r,!0)}function Cs(e,t,r){e.set(t,r)}function Ns(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Ps({version:t,bitFlag:r,compressionMethod:n,uncompressedSize:a,compressedSize:s,lastModDate:i,rawLastModDate:o,rawFilename:c,st:d,it:l,extraFieldLength:f}){const m=ys(26),u=m.array,p=he(u);if(m.uint16(t),m.uint16(r),m.uint16(n),o===g){const e=new Uint32Array(1),t=he(e);Ms(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Ms(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),o=e[0]}return m.uint32(o),m.ht(4),d||s!==g?m.uint32(d?e:s):m.ht(4),l||a!==g?m.uint32(l?e:a):m.ht(4),m.uint16(Ns(c)),m.uint16(f),{et:u,nt:p,rawLastModDate:o}}function Ws(e,t,r,n,a){let s=0;return t&&(s|=u),r&&(s|=8),8!=a&&9!=a||(0>e||e>3||(s|=6),e>3&&5>=e&&(s|=4),9==e&&(s|=2)),n&&(s|=1),s}const Is=1048576,Vs=".zip.js-temp";function Zs(e={}){const{thresholdBytes:t=Is,directoryName:r=Vs,getDirectory:n=()=>navigator.storage.getDirectory()}=e;let a;function s(){return a||(a=Promise.resolve(n()).then(e=>e.getDirectoryHandle(r,{create:!0}))),a}return()=>{const e=[];let r,n,a,i,o=0,c=!1;const d=new WritableStream({async write(i){c?await a.write(i):(e.push(i),o+=i.length,o>t&&await(async()=>{const t=await s();r=crypto.randomUUID(),n=await t.getFileHandle(r,{create:!0}),a=(await n.createWritable()).getWriter(),c=!0;for(const t of e)await a.write(t);e.length=0})())},async close(){a&&(await a.close(),a=null)}});let l=0;return{writable:d,readable:new ReadableStream({async pull(t){if(c){if(!i){const e=await n.getFile();i=e.stream().getReader()}const{value:e,done:r}=await i.read();r?t.close():t.enqueue(e)}else l<e.length?t.enqueue(e[l++]):t.close()},async cancel(e){i&&await i.cancel(e)}},{highWaterMark:0}),dispose:async()=>{if(a){try{await a.close()}catch{}a=null}if(r){try{const e=await s();await e.removeEntry(r)}catch{}n=r=null}e.length=0}}}}const Ls=1048576;function Bs(e={}){const{thresholdBytes:t=Ls}=e;return()=>{const e=[];let r,n,a,s=0,i=!1;const o=new WritableStream({async write(a){i?await r.write(a):(e.push(a),s+=a.length,s>t&&await(async()=>{const t=new TransformStream;n=new Response(t.readable).blob(),r=t.writable.getWriter(),i=!0;for(const t of e)await r.write(t);e.length=0})())},async close(){r&&(await r.close(),r=null)}});let c=0;return{writable:o,readable:new ReadableStream({async pull(t){if(i){if(!a){const e=await n;a=e.stream().getReader()}const{value:e,done:r}=await a.read();r?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){a&&await a.cancel(e)}},{highWaterMark:0}),dispose:async()=>{if(r){try{await r.abort()}catch{}r=null}n&&(n.catch(()=>{}),n=null),e.length=0}}}}const Hs=1048576,Ys=".zip.js-temp";function Gs(e={}){const{thresholdBytes:t=Hs,directoryName:r=Ys,getDirectory:n}=e;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw Error("createSyncAccessHandle is only available in dedicated workers");const a=n||(()=>navigator.storage.getDirectory());let s;function i(){return s||(s=Promise.resolve(a()).then(e=>e.getDirectoryHandle(r,{create:!0}))),s}return()=>{const e=[];let r,n,a=0,s=!1,o=0,c=0;const d=new WritableStream({async write(c){s?(n.write(c,{at:o}),o+=c.length):(e.push(c),a+=c.length,a>t&&await(async()=>{const t=await i();r=crypto.randomUUID();const a=await t.getFileHandle(r,{create:!0});n=await a.createSyncAccessHandle(),s=!0;for(const t of e)n.write(t,{at:o}),o+=t.length;e.length=0})())},close(){n&&n.flush()}});let l=0;return{writable:d,readable:new ReadableStream({pull(t){if(s){const e=o-c;if(0>=e)return void t.close();const r=new Uint8Array(Math.min(524288,e)),a=n.read(r,{at:c});a?(c+=a,t.enqueue(r.subarray(0,a))):t.close()}else l<e.length?t.enqueue(e[l++]):t.close()}},{highWaterMark:0}),dispose:async()=>{if(n){try{n.close()}catch{}n=null}if(r){try{const e=await i();await e.removeEntry(r)}catch{}r=null}e.length=0}}}}try{A({baseURI:import.meta.url})}catch{}var{Uint8Array:qs,Uint16Array:Ks,Int32Array:Js,TransformStream:Xs,Math:Qs,Error:_s,Array:$s}=globalThis,ei=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],ti=new qs(0),ri=new Ks(0),ni=[];for(let e=0;6>e;e++)ni.push(e,0==e?8:4);ni.push(0,1);var ai=[];for(let e=0;14>e;e++)ai.push(e,0==e?4:2);var si=new Ks([0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576]),ii=new Ks([0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0]);function oi(e,t,r,n,a){if(0==a)return;let s=e instanceof qs?e:new qs(e.buffer,e.byteOffset,e.byteLength),i=r instanceof qs?r.subarray(n,n+a):new qs(r.buffer,r.byteOffset+n,a);s.set(i,t)}function ci(e,t,r){0!=r&&(e instanceof qs?e:new qs(e.buffer,e.byteOffset,e.byteLength)).fill(0,t,t+r)}function di(){return{Dt:ti,Ot:0,Mt:0,At:0,Tt:ti,Ct:0,Nt:0,Pt:0,Wt:"",t:0,i:0,It:0,Vt:void 0}}function li(e,t){let r=1<<t;return{o:e,u:new qs(r),Zt:r,Lt:t,k:0,Bt:0,p:0,Ht:0}}function fi(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],a=e[r+1];for(let e=0;a>e;e++)t.push(n)}return new Ks(t)}var mi=class{constructor(e,t){this.Yt=e,this.Gt=t,this.qt=0}},ui=class{constructor(e,t,r,n,a){this.Kt=e,this.q=t,this.Jt=r,this.Xt=n,this.Qt=a}};function pi(e){return Zi[-6>e||e>2?9:2-e]||""}function wi(e,t){try{e.Wt=pi(t)}catch(r){e.Wt="zlib error "+t+" ("+r+")"}return t}function hi(e,t){let r=e>>>0,n=0;for(let e=0;t>e;e++)n=n<<1|1&r,r>>>=1;return n}function xi(e,t){e._t[e.$t++]=t}function vi(e,t){xi(e,255&t),xi(e,t>>>8&255)}function bi(e,t,r){let n=255&r,a=65535&t,s=e.er+e.rr;return e._t[s]=255&a,e._t[s+1]=a>>>8&255,e._t[s+2]=n,e.rr+=3,a=a-1&65535,e.ar[Ji[n]+Ai+1].nr++,e.sr[ki(a)].nr++,e.rr==e.ir}function yi(e,t){let r=255&t,n=e.er+e.rr;return e._t[n]=0,e._t[n+1]=0,e._t[n+2]=r,e.rr+=3,e.ar[r].nr++,e.rr==e.ir}function gi(e){return e.Zt-Oi}function ki(e){return 256>e?Xi[e]:Xi[256+(e>>7)]}function zi(e){let t=ji+7,r=1<<t,n=(1<<t)-1,a=Qs.floor((t+Ui-1)/Ui),s=1<<8+ji;return{...li(e,15),o:e,cr:42,dr:0,lr:void 0,mr:32767,ur:t,pr:r,wr:n,vr:a,yr:new Ks(32768),gr:new Ks(r),kr:s,_t:new qs(32768),zr:0,Sr:32768,$t:0,Er:0,Fr:0,Rr:0,jr:0,Ur:0,Dr:-2,Or:0,Mr:0,Ar:0,Tr:0,Cr:0,Nr:0,Pr:0,Wr:0,Ir:0,Vr:0,Zr:0,Lr:0,Br:0,Hr:0,Yr:new Js(2*Ti+1),Gr:new qs(2*Ti+1),qr:new Ks(Wi+1),rr:0,ir:0,Kr:ti,er:0,Jr:0,Xr:0,Qr:8,_r:32768,$r:0,en:0,tn:0,ar:new $s(Pi).fill(0).map(()=>({nr:0,rn:0,nn:0,an:0})),sr:new $s(2*Ci+1).fill(0).map(()=>({nr:0,rn:0,nn:0,an:0})),sn:new $s(2*Ni+1).fill(0).map(()=>({nr:0,rn:0,nn:0,an:0})),cn:Fi(),dn:Fi(),ln:Fi()}}function Si(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],a=e[r+1],s=Ei();s.rn=n,s.an=a,t.push(s)}return t}function Ei(){return{nr:0,rn:0,nn:0,an:0}}function Fi(){return new mi([],new ui(null,ti,0,0,0))}function Ri(e){let{code:t,length:r}=(e=>{let t=Qs.max(...e),r=new $s(t+1).fill(0);for(let t of e)t>0&&r[t]++;let n=new $s(e.length).fill(0),a=new $s(t+1).fill(0),s=0;for(let e=1;t>=e;e++)s=s+r[e-1]<<1,a[e]=s;for(let t=0;t<e.length;t++){let r=e[t];0!=r&&(n[t]=a[r]++)}return{code:n,length:e}})(e),n=new Ks(2*e.length),a=0;for(let s=0;s<e.length;s++){let e=r[s]||0,i=t[s]||0;n[a++]=e?hi(i,e):0,n[a++]=e}return new Ks(n)}var ji=8,Ui=3,Di=258,Oi=Di+Ui+1,Mi=Di,Ai=256,Ti=Ai+1+29,Ci=30,Ni=19,Pi=2*Ti+1,Wi=15,Ii=256,Vi=-1,Zi=["need dictionary","stream end","","file error","stream error","data error","insufficient memory","buffer error",""],Li=fi(ni),Bi=fi(ai),Hi=new Ks(19);Hi[16]=2,Hi[17]=3,Hi[18]=7;var Yi=Ri((()=>{let e=new $s(288).fill(0);for(let t=0;143>=t;t++)e[t]=8;for(let t=144;255>=t;t++)e[t]=9;for(let t=256;279>=t;t++)e[t]=7;for(let t=280;287>=t;t++)e[t]=8;return e})()),Gi=Ri(new $s(30).fill(5)),qi=Si(Yi),Ki=Si(Gi),Ji=((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let a=t[n]?1<<t[n]:1,s=e[n]+a-1;s>r&&(r=s)}258>r&&(r=258);let n=new qs(r+1);for(let a=0;r>=a;a++)for(let r=0;r<e.length;r++){let s=t[r]?1<<t[r]:1,i=e[r];if(a>=i&&i+s-1>=a){n[a]=r;break}}let a=0;for(let r=0;r<e.length-1;r++){let n=t[r]?1<<t[r]:1,s=e[r]+n-1;s>a&&(a=s)}return n[a]=e.length-1,n})(ii,Li),Xi=(e=>{let t=new qs(512),r=e.length-1;for(let n=0;256>n;n++)t[n]=n>r?e[r]:e[n];for(let n=256;r>=n;n++){let r=n>>7;t[256+(r>255?255:r)]=e[n]}for(let e=257;512>e;e++)0==t[e]&&(t[e]=t[e-1]);return t})(((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let a=t[n]?1<<t[n]:1,s=e[n]+a-1;s>r&&(r=s)}let n=new qs(r+1);for(let a=0;r>=a;a++)for(let r=0;r<e.length;r++){let s=t[r]?1<<t[r]:1,i=e[r];if(a>=i&&i+s-1>=a){n[a]=r;break}}return n})(si,Bi));function Qi(e,t,r){if(void 0===t||void 0===r)return 1;let n=65535&e,a=e>>>16&65535,s=0;for(;r>0;){let e=r>2e3?2e3:r;r-=e;do{n=n+t[s++]|0,a=a+n|0}while(--e);n%=65521,a%=65521}return(a<<16|n)>>>0}var _i=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?3988292384^t>>>1:t>>>1;_i[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){let r=_i[t-1][e];_i[t][e]=r>>>8^_i[0][255&r]}var[$i,eo,to,ro,no,ao,so,io]=_i;function oo(e=0,t,r){if(!t)return 0;void 0===r&&(r=t.length);let n=0|~e,a=0;if((r=Qs.min(r,t.length))>=8){let e=new DataView(t.buffer,t.byteOffset,r),s=r-8;for(;s>=a;a+=8){let t=n^e.getInt32(a,!0),r=e.getInt32(a+4,!0);n=io[255&t]^so[t>>>8&255]^ao[t>>>16&255]^no[t>>>24&255]^ro[255&r]^to[r>>>8&255]^eo[r>>>16&255]^$i[r>>>24&255]}}for(;r>a;a++)n=n>>>8^$i[255&(n^t[a])];return(4294967295^n)>>>0}function co(e){16==e.Ht?(vi(e,e.p),e.p=0,e.Ht=0):e.Ht>=8&&(xi(e,e.p),e.p>>=8,e.Ht-=8)}function lo(e){e.Ht>8?vi(e,e.p):e.Ht>0&&xi(e,e.p),e.Jr=1+(e.Ht-1&7),e.p=0,e.Ht=0}function fo(e,t,r){e.Ht>16-r?(e.p=65535&(e.p|t<<e.Ht),vi(e,e.p),e.p=t>>16-e.Ht&65535,e.Ht+=r-16):(e.p=65535&(e.p|t<<e.Ht),e.Ht+=r)}function mo(e){for(let t=0;t<e.ar.length;t++)e.ar[t].nr=0;for(let t=0;t<e.sr.length;t++)e.sr[t].nr=0;for(let t=0;t<e.sn.length;t++)e.sn[t].nr=0;e.ar[Ii].nr=1,e.Fr=e.Rr=0,e.rr=e.jr=0}function uo(e,t,r){return r=e.Yr[1],e.Yr[1]=e.Yr[e.en--],wo(e,t,1),r}function po(e,t,r,n){return e[t].nr<e[r].nr||e[t].nr==e[r].nr&&n[t]<=n[r]}function wo(e,t,r){let n=e.Yr[r],a=r<<1;for(;a<=e.en&&(a<e.en&&po(t,e.Yr[a+1],e.Yr[a],e.Gr)&&a++,!po(t,n,e.Yr[a],e.Gr));)e.Yr[r]=e.Yr[a],r=a,a<<=1;e.Yr[r]=n}function ho(e,t){let r,n,a,s=t.Yt,i=t.Gt.Kt,o=t.Gt.Xt,c=-1;for(e.en=0,e.tn=Pi,r=0;o>r;r++)0!=s[r].nr?(e.Yr[++e.en]=c=r,e.Gr[r]=0):s[r].an=0;for(;2>e.en;)a=e.Yr[++e.en]=2>c?++c:0,s[a].nr=1,e.Gr[a]=0,e.Fr--,i&&(e.Rr-=i[a].an);for(t.qt=c,r=Qs.floor(e.en/2);r>=1;r--)wo(e,s,r);a=o;do{r=uo(e,s,r),n=e.Yr[1],e.Yr[--e.tn]=r,e.Yr[--e.tn]=n,s[a].nr=s[r].nr+s[n].nr,e.Gr[a]=(e.Gr[r]<e.Gr[n]?e.Gr[n]:e.Gr[r])+1,s[r].nn=s[n].nn=a,e.Yr[1]=a++,wo(e,s,1)}while(e.en>=2);e.Yr[--e.tn]=e.Yr[1],((e,t)=>{let r,n,a,s,i,o,c=t.Yt,d=t.qt,l=t.Gt.Kt,f=t.Gt.q,m=t.Gt.Jt,u=t.Gt.Qt,p=0;for(s=0;Wi>=s;s++)e.qr[s]=0;for(c[e.Yr[e.tn]].an=0,r=e.tn+1;Pi>r;r++)n=e.Yr[r],s=c[c[n].nn].an+1,s>u&&(s=u,p++),c[n].an=s,d>=n&&(e.qr[s]++,i=0,n>=m&&(i=f[n-m]),o=c[n].nr,e.Fr+=o*(s+i),l&&(e.Rr+=o*(l[n].an+i)));if(0!=p){do{for(s=u-1;0==e.qr[s];)s--;e.qr[s]--,e.qr[s+1]+=2,e.qr[u]--,p-=2}while(p>0);for(s=u;0!=s;s--)for(n=e.qr[s];0!=n;)a=e.Yr[--r],d>=a&&(c[a].an!=s&&(e.Fr+=(s-c[a].an)*c[a].nr,c[a].an=s),n--)}})(e,t),((e,t,r)=>{let n,a,s=[],i=0;for(n=1;Wi>=n;n++)i=i+r[n-1]<<1,s[n]=i;for(a=0;t>=a;a++){let t=e[a].an;0!=t&&(e[a].rn=hi(s[t]++,t))}})(s,t.qt,e.qr)}function xo(e,t,r){let n,a,s=-1,i=t[0].an,o=0,c=7,d=4;for(0==i&&(c=138,d=3),t[r+1].an=65535,n=0;r>=n;n++)a=i,i=t[n+1].an,(++o>=c||a!=i)&&(d>o?e.sn[a].nr+=o:0!=a?(a!=s&&e.sn[a].nr++,e.sn[16].nr++):o>10?e.sn[18].nr++:e.sn[17].nr++,o=0,s=a,0==i?(c=138,d=3):a==i?(c=6,d=3):(c=7,d=4))}function vo(e,t,r){let n,a=-1,s=t[0].an,i=0,o=7,c=4;0==s&&(o=138,c=3);for(let d=0;r>=d;d++)if(n=s,s=t[d+1].an,++i>=o||n!=s){if(c>i)do{fo(e,e.sn[n].rn,e.sn[n].an)}while(0!=--i);else 0!=n?(n!=a&&(fo(e,e.sn[n].rn,e.sn[n].an),i--),fo(e,e.sn[16].rn,e.sn[16].an),fo(e,i-3,2)):i>10?(fo(e,e.sn[18].rn,e.sn[18].an),fo(e,i-11,7)):(fo(e,e.sn[17].rn,e.sn[17].an),fo(e,i-3,3));i=0,a=n,0==s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4)}}function bo(e,t,r,n,a=0){fo(e,0+n,3),lo(e),vi(e,r),vi(e,~r),r&&t&&oi(e._t,e.$t,t,a,r),e.$t+=r}function yo(e,t,r){let n,a,s,i,o=0;if(0!=e.rr)do{n=255&e.Kr[o],n+=(255&e.Kr[o+1])<<8,a=e.Kr[o+2],o+=3,0==n?fo(e,t[a].rn,t[a].an):(s=Ji[a],fo(e,t[s+Ai+1].rn,t[s+Ai+1].an),i=Li[s],0!=i&&(a-=ii[s],fo(e,a,i)),n--,s=ki(n),fo(e,r[s].rn,r[s].an),i=Bi[s],0!=i&&(n-=si[s],fo(e,n,i)))}while(o<e.rr);fo(e,t[Ii].rn,t[Ii].an)}var go=[{fn:Vo,un:0,pn:0,wn:0,hn:0},{fn:Zo,un:4,pn:4,wn:8,hn:4},{fn:Zo,un:4,pn:5,wn:16,hn:8},{fn:Zo,un:4,pn:6,wn:32,hn:32},{fn:Lo,un:4,pn:4,wn:16,hn:16},{fn:Lo,un:8,pn:16,wn:32,hn:32},{fn:Lo,un:8,pn:16,wn:128,hn:128},{fn:Lo,un:8,pn:32,wn:128,hn:256},{fn:Lo,un:32,pn:128,wn:258,hn:1024},{fn:Lo,un:32,pn:258,wn:258,hn:4096}];function ko(e){return 2*e-(e>4?9:0)}function zo(e,t,r){return((t<<e.vr^r)&e.wr)>>>0}function So(e,t){e.Wr=zo(e,e.Wr,e.u[t+(Ui-1)]);let r=e.yr[t&e.mr]=e.gr[e.Wr];return e.gr[e.Wr]=t,r}function Eo(e){e.gr[e.pr-1]=0,ci(e.gr,0,(e.pr-1)*e.gr.BYTES_PER_ELEMENT)}function Fo(e){let t,r,n=e.Zt;for(t=e.pr;t>0;)t--,r=e.gr[t],e.gr[t]=n>r?0:r-n;for(t=n;t>0;)t--,r=e.yr[t],e.yr[t]=n>r?0:r-n}function Ro(e,t,r,n){let a=e.Mt;return a>n&&(a=n),0==a?0:(e.Mt-=a,oi(t,r,e.Dt,e.Ot,a),1==e.Vt.dr?e.i=Qi(e.i,new qs(t.buffer,t.byteOffset+r,a),a):2==e.Vt.dr&&(e.i=oo(e.i,new qs(t.buffer,t.byteOffset+r,a),a)),e.Ot+=a,e.At+=a,a)}function jo(e){let t,r,n=e.Zt;do{if(r=e._r-e.Ar-e.Mr,0==r&&0==e.Mr&&0==e.Ar?r=n:-1==r&&r--,e.Mr>=n+gi(e)&&(oi(e.u,0,e.u,n,n-r),e.$r-=n,e.Mr-=n,e.Or-=n,e.Ur>e.Mr&&(e.Ur=e.Mr),Fo(e),r+=n),0==e.o.Mt)break;if(t=Ro(e.o,e.u,e.Mr+e.Ar,r),e.Ar+=t,e.Ar+e.Ur>=Ui){let t=e.Mr-e.Ur;for(e.Wr=e.u[t],e.Wr=zo(e,e.Wr,e.u[t+1]);e.Ur&&(e.Wr=zo(e,e.Wr,e.u[t+Ui-1]),e.yr[t&e.mr]=e.gr[e.Wr],e.gr[e.Wr]=t,t++,e.Ur--,e.Ar+e.Ur>=Ui););}}while(e.Ar<Oi&&0!=e.o.Mt);if(e.k<e._r){let t,r=e.Mr+e.Ar;e.k<r?(t=e._r-r,t>Mi&&(t=Mi),ci(e.u,r,t),e.k=r+t):e.k<r+Mi&&(t=r+Mi-e.k,t>e._r-e.k&&(t=e._r-e.k),ci(e.u,e.k,t),e.k+=t)}}function Uo(e){if(null==e)return!0;let t=e.Vt;return!t||t.o!=e||42!=t.cr&&57!=t.cr&&69!=t.cr&&73!=t.cr&&91!=t.cr&&103!=t.cr&&113!=t.cr&&666!=t.cr}function Do(e,t){xi(e,t>>8),xi(e,255&t)}function Oo(e){let t,r=e.Vt;(e=>{co(e)})(r),t=r.$t,t>e.Nt&&(t=e.Nt),0!=t&&(oi(e.Tt,e.Ct,r._t,r.Er,t),e.Ct+=t,r.Er+=t,e.Pt+=t,e.Nt-=t,r.$t-=t,0==r.$t&&(r.Er=r.zr))}function Mo(e,t){let r=e.Vt;r.lr&&r.lr.xn&&(e.i=oo(e.i,new qs(r._t.buffer,r.zr+t,r.$t-t),r.$t-t))}function Ao(e,t){let r,n=e.Vt;if(Uo(e)||t>5||0>t)return wi(e,-2);if(!e.Tt||0!=e.Mt&&!e.Dt||666==n.cr&&4!=t)return wi(e,-2);if(0==e.Nt)return wi(e,-5);if(r=n.Dr,n.Dr=t,0!=n.$t){if(Oo(e),0==e.Nt)return n.Dr=Vi,0}else if(0==e.Mt&&ko(t)<=ko(r)&&4!=t)return wi(e,-5);if(666==n.cr&&0!=e.Mt)return wi(e,-5);if(42==n.cr&&0==n.dr&&(n.cr=113),42==n.cr){let t,r=8+(n.Lt-8<<4)<<8;if(t=n.Vr>=2||2>n.Ir?0:6>n.Ir?1:6==n.Ir?2:3,r|=t<<6,0!=n.Mr&&(r|=32),r+=31-r%31,Do(n,r),0!=n.Mr&&(Do(n,e.i>>16),Do(n,65535&e.i)),e.i=1,n.cr=113,Oo(e),0!=n.$t)return n.Dr=Vi,0}if(57==n.cr)if(e.i=oo(0),xi(n,31),xi(n,139),xi(n,8),n.lr)xi(n,(n.lr.vn?1:0)+(n.lr.xn?2:0)+(null==n.lr.bn?0:4)+(null==n.lr.yn?0:8)+(null==n.lr.gn?0:16)),xi(n,255&n.lr.kn),xi(n,n.lr.kn>>>8&255),xi(n,n.lr.kn>>>16&255),xi(n,n.lr.kn>>>24&255),xi(n,9==n.Ir?2:n.Vr>=2||2>n.Ir?4:0),xi(n,255&n.lr.zn),null!=n.lr.bn&&(xi(n,255&n.lr.Sn),xi(n,n.lr.Sn>>>8&255)),n.lr.xn&&(e.i=oo(e.i,n._t,n.$t)),n.Xr=0,n.cr=69;else if(xi(n,0),xi(n,0),xi(n,0),xi(n,0),xi(n,0),xi(n,9==n.Ir?2:n.Vr>=2||2>n.Ir?4:0),xi(n,255),n.cr=113,Oo(e),0!=n.$t)return n.Dr=Vi,0;if(69==n.cr){if(n.lr&&null!=n.lr.bn){let t=n.$t,r=(65535&n.lr.Sn)-n.Xr;for(;n.$t+r>n.Sr;){let a=n.Sr-n.$t;if(oi(n._t,n.$t,n.lr.bn,n.Xr,a),n.$t=n.Sr,Mo(e,t),n.Xr+=a,Oo(e),0!=n.$t)return n.Dr=Vi,0;t=0,r-=a}oi(n._t,n.$t,n.lr.bn,n.Xr,r),n.$t+=r,Mo(e,t),n.Xr=0}n.cr=73}if(73==n.cr){if(n.lr&&n.lr.yn&&n.lr.yn.length){let t,r=n.$t;do{if(n.$t==n.Sr){if(Mo(e,r),Oo(e),0!=n.$t)return n.Dr=Vi,0;r=0}t=n.lr.yn[n.Xr++],xi(n,t)}while(0!=t);Mo(e,r),n.Xr=0}n.cr=91}if(91==n.cr){if(n.lr&&n.lr.gn&&n.lr.gn.length){let t,r=n.$t;do{if(n.$t==n.Sr){if(Mo(e,r),Oo(e),0!=n.$t)return n.Dr=Vi,0;r=0}t=n.lr.gn[n.Xr++],xi(n,t)}while(0!=t);Mo(e,r)}n.cr=103}if(103==n.cr){if(n.lr&&n.lr.xn){if(n.$t+2>n.Sr&&(Oo(e),0!=n.$t))return n.Dr=Vi,0;xi(n,255&e.i),xi(n,e.i>>>8&255),e.i=oo(0)}if(n.cr=113,Oo(e),0!=n.$t)return n.Dr=Vi,0}if(0!=e.Mt||0!=n.Ar||0!=t&&666!=n.cr){let r=0==n.Ir?Vo(n,t):2==n.Vr?((e,t)=>{let r=!1;for(;;){if(0==e.Ar&&(jo(e),0==e.Ar)){if(0==t)return 0;break}if(e.Tr=0,r=yi(e,e.u[e.Mr]),e.Ar--,e.Mr++,r){let t=Po(e,!1);if(null!=t)return t}}if(e.Ur=0,4==t)return Po(e,!0)??3;if(e.rr){let t=Po(e,!1);if(null!=t)return t}return 1})(n,t):3==n.Vr?((e,t)=>{let r,n,a,s;for(;;){if(e.Ar<=Di){if(jo(e),e.Ar<=Di&&0==t)return 0;if(0==e.Ar)break}if(e.Tr=0,e.Ar>=Ui&&e.Mr>0&&(a=e.Mr-1,n=e.u[a],n==++a&&n==++a&&n==++a)){s=e.Mr+Di;do{}while(n==++a&&n==++a&&n==++a&&n==++a&&n==++a&&n==++a&&n==++a&&n==++a&&s>a);e.Tr=Di-(s-a),e.Tr>e.Ar&&(e.Tr=e.Ar)}if(e.Tr<Ui?(r=yi(e,e.u[e.Mr]),e.Ar--,e.Mr++):(e.Mr,e.Mr,e.Tr,r=bi(e,1,e.Tr-Ui),e.Ar-=e.Tr,e.Mr+=e.Tr,e.Tr=0),r){let t=Po(e,!1);if(null!=t)return t}}if(e.Ur=0,4==t)return Po(e,!0)??3;if(e.rr){let t=Po(e,!1);if(null!=t)return t}return 1})(n,t):go[n.Ir].fn(n,t);if((2==r||3==r)&&(n.cr=666),0==r||2==r)return 0==e.Nt&&(n.Dr=Vi),0;if(1==r&&(1==t?(e=>{fo(e,2,3),fo(e,qi[Ii].rn,qi[Ii].an),co(e)})(n):5!=t&&(bo(n,null,0,0),3==t&&(Eo(n),0==n.Ar&&(n.Mr=0,n.Or=0,n.Ur=0))),Oo(e),0==e.Nt))return n.Dr=Vi,0}return 4!=t?0:n.dr>0?(2==n.dr?(xi(n,255&e.i),xi(n,e.i>>>8&255),xi(n,e.i>>>16&255),xi(n,e.i>>>24&255),xi(n,255&e.At),xi(n,e.At>>>8&255),xi(n,e.At>>>16&255),xi(n,e.At>>>24&255)):(Do(n,e.i>>>16&65535),Do(n,65535&e.i)),Oo(e),n.dr>0&&(n.dr=-n.dr),0!=n.$t?0:1):1}function To(e){if(Uo(e))return-2;let t=e.Vt,r=t.cr;return t.u=ti,t.yr=ri,t.gr=ri,t._t=ti,t.Kr=ti,t.Yr=new Js(0),t.Gr=ti,t.qr=ri,t.ar.length=0,t.sr.length=0,t.sn.length=0,t.lr=void 0,t.zr=0,t.Er=0,t.er=0,113==r?-3:0}function Co(e,t){let r,n,a=e.Br,s=e.Mr,i=e.Cr,o=e.Lr,c=e.Mr>gi(e)?e.Mr-gi(e):0,d=e.yr,l=e.mr,f=e.u,m=e.Ar,u=m>Di?Di:m,p=f[s],w=f[s+1],h=f[s+i-1],x=f[s+i];i>=e.Zr&&(a>>=2),o>m&&(o=m);do{if(r=t,f[r+i]!=x||f[r+i-1]!=h||f[r]!=p||f[r+1]!=w)continue;let a=2;for(;u>a&&f[s+a]==f[r+a];)a++;if(n=a,n>i){if(e.$r=t,i=n,n>=o)break;h=f[s+i-1],x=f[s+i]}}while((t=d[t&l])>c&&0!=--a);return i>m?m:i}function No(e,t){((e,t,r,n,a=0)=>{let s,i,o=0;e.Ir>0?(2==e.o.t&&(e.o.t=(e=>{let t,r=4093624447;for(t=0;31>=t;t++,r>>=1)if(1&r&&0!=e.ar[t].nr)return 0;if(0!=e.ar[9].nr||0!=e.ar[10].nr||0!=e.ar[13].nr)return 1;for(t=32;Ai>t;t++)if(0!=e.ar[t].nr)return 1;return 0})(e)),ho(e,e.cn),ho(e,e.dn),o=(e=>{let t;for(xo(e,e.ar,e.cn.qt),xo(e,e.sr,e.dn.qt),ho(e,e.ln),t=Ni-1;t>=3&&0==e.sn[ei[t]].an;t--);return e.Fr+=3*(t+1)+5+5+4,t})(e),s=e.Fr+3+7>>3,i=e.Rr+3+7>>3,(s>=i||4==e.Vr)&&(s=i)):s=i=r+5,s>=r+4&&t?bo(e,t,r,n,a):i==s?(fo(e,2+n,3),yo(e,qi,Ki)):(fo(e,4+n,3),((e,t,r,n)=>{let a;for(fo(e,t-257,5),fo(e,r-1,5),fo(e,n-4,4),a=0;n>a;a++)fo(e,e.sn[ei[a]].an,3);vo(e,e.ar,t-1),vo(e,e.sr,r-1)})(e,e.cn.qt+1,e.dn.qt+1,o+1),yo(e,e.ar,e.sr)),mo(e),n&&lo(e)})(e,e.u,e.Mr-e.Or,t,e.Or),e.Or=e.Mr,Oo(e.o)}function Po(e,t){return No(e,t?1:0),0==e.o.Nt?t?2:0:null}var Wo=65535;function Io(e,t){return t>e?e:t}function Vo(e,t){let r,n,a,s=Io(e.Sr-5,e.Zt),i=0,o=e.o.Mt;do{if(r=Wo,a=e.Ht+42>>3,e.o.Nt<a||(a=e.o.Nt-a,n=e.Mr-e.Or,r>n+e.o.Mt&&(r=n+e.o.Mt),r>a&&(r=a),s>r&&(0==r&&4!=t||0==t||r!=n+e.o.Mt)))break;i=4==t&&r==n+e.o.Mt?1:0,bo(e,null,0,i),e._t[e.$t-4]=r,e._t[e.$t-3]=r>>8,e._t[e.$t-2]=~r,e._t[e.$t-1]=~r>>8,Oo(e.o),n&&(n>r&&(n=r),oi(e.o.Tt,e.o.Ct,e.u,e.Or,n),e.o.Ct+=n,e.o.Nt-=n,e.o.Pt+=n,e.Or+=n,r-=n),r&&(Ro(e.o,e.o.Tt,e.o.Ct,r),e.o.Ct+=r,e.o.Nt-=r,e.o.Pt+=r)}while(0==i);if(o-=e.o.Mt,o){if(o<e.Zt)e._r-e.Mr<=o&&(e.Mr-=e.Zt,oi(e.u,0,e.u,e.Zt,e.Mr),2>e.jr&&e.jr++,e.Ur>e.Mr&&(e.Ur=e.Mr)),oi(e.u,e.Mr,e.o.Dt,e.o.Ot-o,o),e.Mr+=o,e.Ur+=Io(o,e.Zt-e.Ur);else{e.jr=2;let t=e.o.Ot-e.Zt;oi(e.u,0,e.o.Dt,t,e.Zt),e.Mr=e.Zt,e.Ur=e.Mr}e.Or=e.Mr}return e.k<e.Mr&&(e.k=e.Mr),i?(e.Jr=8,3):0!=t&&4!=t&&0==e.o.Mt&&e.Mr==e.Or?1:(a=e._r-e.Mr,e.o.Mt>a&&e.Or>=e.Zt&&(e.Or-=e.Zt,e.Mr-=e.Zt,oi(e.u,0,e.u,e.Zt,e.Mr),2>e.jr&&e.jr++,a+=e.Zt,e.Ur>e.Mr&&(e.Ur=e.Mr)),a>e.o.Mt&&(a=e.o.Mt),a&&(Ro(e.o,e.u,e.Mr,a),e.Mr+=a,e.Ur+=Io(a,e.Zt-e.Ur)),e.k<e.Mr&&(e.k=e.Mr),a=e.Ht+42>>3,a=Io(e.Sr-a,Wo),s=Io(a,e.Zt),n=e.Mr-e.Or,(n>=s||(n||4==t)&&0!=t&&0==e.o.Mt&&a>=n)&&(r=Io(n,a),i=4==t&&0==e.o.Mt&&r==n?1:0,bo(e,e.u,r,i,e.Or),e.Or+=r,Oo(e.o)),i&&(e.Jr=8),i?2:0)}function Zo(e,t){let r,n=!1;for(;;){if(e.Ar<Oi){if(jo(e),e.Ar<Oi&&0==t)return 0;if(0==e.Ar)break}if(r=0,e.Ar>=Ui&&(r=So(e,e.Mr)),0!=r&&e.Mr-r<=gi(e)&&(e.Tr=Co(e,r)),e.Tr<Ui)n=yi(e,e.u[e.Mr]),e.Ar--,e.Mr++;else if(e.Mr,e.$r,e.Tr,n=bi(e,e.Mr-e.$r,e.Tr-Ui),e.Ar-=e.Tr,e.Tr>e.Hr||e.Ar<Ui)e.Mr+=e.Tr,e.Tr=0,e.Wr=e.u[e.Mr],e.Wr=zo(e,e.Wr,e.u[e.Mr+1]);else{e.Tr--;do{e.Mr++,r=So(e,e.Mr)}while(0!=--e.Tr);e.Mr++}if(n){let t=Po(e,!1);if(null!=t)return t}}if(e.Ur=e.Mr<Ui-1?e.Mr:Ui-1,4==t)return Po(e,!0)??3;if(e.rr){let t=Po(e,!1);if(null!=t)return t}return 1}function Lo(e,t){let r,n=!1;for(;;){if(e.Ar<Oi){if(jo(e),e.Ar<Oi&&0==t)return 0;if(0==e.Ar)break}if(r=0,e.Ar>=Ui&&(r=So(e,e.Mr)),e.Cr=e.Tr,e.Nr=e.$r,e.Tr=Ui-1,0!=r&&e.Cr<e.Hr&&e.Mr-r<=gi(e)&&(e.Tr=Co(e,r),5>=e.Tr&&(1==e.Vr||e.Tr==Ui&&e.Mr-e.$r>4096)&&(e.Tr=Ui-1)),e.Cr<Ui||e.Tr>e.Cr)if(e.Pr){if(n=yi(e,e.u[e.Mr-1]),n&&No(e,0),e.Mr++,e.Ar--,0==e.o.Nt)return 0}else e.Pr=1,e.Mr++,e.Ar--;else{let t=e.Mr+e.Ar-Ui;e.Mr,e.Nr,e.Cr,n=bi(e,e.Mr-1-e.Nr,e.Cr-Ui),e.Ar-=e.Cr-1,e.Cr-=2;do{++e.Mr<=t&&(r=So(e,e.Mr))}while(0!=--e.Cr);if(e.Pr=0,e.Tr=Ui-1,e.Mr++,n){let t=Po(e,!1);if(null!=t)return t}}}if(e.Pr&&(n=yi(e,e.u[e.Mr-1]),e.Pr=0),e.Ur=e.Mr<Ui-1?e.Mr:Ui-1,4==t)return Po(e,!0)??3;if(e.rr){let t=Po(e,!1);if(null!=t)return t}return 1}var Bo=852,Ho=si.map(e=>e+1),Yo=ii.subarray(0,-1).map(e=>e+3),Go=ai.map(ac),qo=ai.map(sc);Go.push(64,2),qo.push(142,2);var Ko=ni.slice(0,-2).map(ac),Jo=ni.slice(0,-2).map(sc);Ko.push(16,1,73,1,200,1),Jo.push(144,1,72,1,78,1);var Xo=new Ks([...Yo,258,0,0]),Qo=new Ks([...Yo,3,0,0]),_o=fi(Ko),$o=fi(Jo),ec=new Ks([...Ho,0,0]),tc=new Ks([...Ho,32769,49153]),rc=fi(Go),nc=fi(qo);function ac(e,t){return t%2?e:e+16}function sc(e,t){return t%2?e:e+128}function ic(e,t){let r,n=e.Vt,a=e.Ot,s=e.Ct,i=e.Dt,o=e.Tt,c=n.u,d=n.p>>>0,l=n.Ht>>>0,f=n.En,m=n.tt,u=(1<<n.Fn)-1,p=(1<<n.rt)-1,w=n.Zt>>>0,h=n.k>>>0,x=n.Bt>>>0,v=n.Rn,b=s-(t-e.Nt),y=s+(e.Nt-257),g=a+(e.Mt-5),k=0,z=0,S=0,E=0;e:do{for(;15>l;){if(a>=i.length)break e;d+=i[a++]<<l,l+=8}for(r=f[d&u];;){if(S=r>>>16&255,d>>>=S,l-=S,S=r>>>24,0==S){o[s++]=65535&r;break}if(16&S){if(k=65535&r,S&=15,S){for(;S>l;){if(a>=i.length){n.jn=16200;break e}d+=i[a++]<<l,l+=8}k+=d&(1<<S)-1,d>>>=S,l-=S}for(;15>l;){if(a>=i.length){n.jn=16200;break e}d+=i[a++]<<l,l+=8}for(r=m[d&p];;){if(S=r>>>16&255,d>>>=S,l-=S,S=r>>>24,16&S){if(z=65535&r,S&=15,S){for(;S>l;){if(a>=i.length){n.jn=16200;break e}d+=i[a++]<<l,l+=8}z+=d&(1<<S)-1,d>>>=S,l-=S}let t=k,f=s-b;if(z>f){let r=z-f;if(r>h&&v){e.Wt="invalid distance too far back",n.jn=16209;break e}if(0==x){if(E=w-r,r>=t){for(let e=0;t>e;++e)o[s++]=c[E++];continue e}for(let e=0;r>e;++e)o[s++]=c[E++];t-=r,E=s-z}else if(r>x){E=w+x-r;let e=r-x;if(e>=t){for(let e=0;t>e;++e)o[s++]=c[E++];continue e}for(let t=0;e>t;++t)o[s++]=c[E++];if(t-=e,E=0,t>x){for(let e=0;x>e;++e)o[s++]=c[E++];t-=x,E=s-z}}else{if(E=x-r,r>=t){for(let e=0;t>e;++e)o[s++]=c[E++];continue e}for(let e=0;r>e;++e)o[s++]=c[E++];t-=r,E=s-z}for(;t>2;)o[s++]=o[E++],o[s++]=o[E++],o[s++]=o[E++],t-=3;t&&(o[s++]=o[E++],t>1&&(o[s++]=o[E++]))}else{for(E=s-z;t>2;)o[s++]=o[E++],o[s++]=o[E++],o[s++]=o[E++],t-=3;t&&(o[s++]=o[E++],t>1&&(o[s++]=o[E++]))}break}if(64&S){e.Wt="invalid distance code",n.jn=16209;break e}r=m[(65535&r)+(d&(1<<S)-1)]}break}if(64&S){if(32&S){n.jn=16191;break e}e.Wt="invalid literal/length code",n.jn=16209;break e}r=f[(65535&r)+(d&(1<<S)-1)]}}while(g>a&&y>s);let F=l>>3;a-=F,l-=F<<3,d&=(1<<l)-1,e.Ot=a,e.Ct=s,e.Mt=g>a?g-a+5:5-(a-g),e.Nt=y>s?y-s+257:257-(s-y),n.p=d>>>0,n.Ht=l>>>0}var oc=new Js(0);function cc(e,t){let r=oc,n=t?1446:1444;return{...li(e,0),o:e,jn:16180,Un:!1,dr:0,Dn:!1,On:0,Mn:0,An:0,Tn:0,u:ti,Cn:0,dt:0,bn:0,En:r,tt:r,Fn:0,rt:0,Nn:0,Pn:0,Wn:0,In:0,Vn:r,Zn:new Ks(320),Ln:new Ks(288),Bn:new Js(n),Hn:0,Rn:!0,Yn:0,Gn:0,qn:t}}function dc(e,t,r){return e<<24|t<<16|r}function lc(e=0,t=0,r=0){return dc(e,t,r)}function fc(e=1){return dc(64,e,0)}function mc(e){return(255&e)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>24&255}var uc={qn:!1,Kn:Xo,Jn:_o,Xn:ec,Qn:rc,_n:20,$n:257,ea:0,ta:592,ra:!1,na:!0},pc={qn:!0,Kn:Qo,Jn:$o,Xn:tc,Qn:nc,_n:19,$n:256,ea:-1,ta:594,ra:!0,na:!1};function wc(e,t,r,n,a,s,i,o){let c,d,l,f,m,u,p,w,h,x,v,b,y,g,k,z,S,E,F,R=new Ks(16),j=new Ks(16),U=o?pc:uc;for(c=0;15>=c;c++)R[c]=0;for(d=0;r>d;d++)R[t[d]]++;for(m=a.aa,f=15;f>=1&&0==R[f];f--);if(m>f&&(m=f),0==f)return U.na?(k=fc(1),n.aa[0]=k,n.aa[1]=k,a.aa=1,0):-1;for(l=1;f>l&&0==R[l];l++);for(l>m&&(m=l),w=1,c=1;15>=c;c++)if(w<<=1,w-=R[c],0>w)return-1;if(w>0&&(0==e||1!=f))return-1;for(j[1]=0,c=1;15>c;c++)j[c+1]=j[c]+R[c];for(d=0;r>d;d++)0!=t[d]&&(s[j[t[d]]++]=d);switch(e){case 0:S=E=s,F=U._n;break;case 1:S=U.Kn,E=U.Jn,F=U.$n;break;default:S=U.Xn,E=U.Qn,F=U.ea}if(x=0,d=0,c=l,z=i.aa,u=m,p=0,y=-1,h=1<<m,g=h-1,1==e&&(U.ra?h>=Bo:h>Bo)||2==e&&(U.ra?h>=U.ta:h>U.ta))return 1;for(;;){k=hc(s,d,c,p,e,S,E,F,U.qn),v=1<<c-p,b=1<<u,l=b;do{b-=v;let e=(x>>p)+b;n.aa[z+e]=k}while(0!=b);for(v=1<<c-1;x&v;)v>>=1;if(0!=v?(x&=v-1,x+=v):x=0,d++,0==--R[c]){if(c==f)break;c=t[s[d]]}if(c>m&&(x&g)!=y){for(0==p&&(p=m),z+=1<<u,u=c-p,w=1<<u;f>u+p&&(w-=R[u+p],w>0);)u++,w<<=1;if(h+=1<<u,1==e&&(U.ra?h>=Bo:h>Bo)||2==e&&(U.ra?h>=U.ta:h>U.ta))return 1;y=x&g,n.aa[i.aa+y]=dc(u,m,z-i.aa)}}if(0!=x)for(k=fc(c-p);0!=x;){for(0!=p&&(x&g)!=y&&(p=0,c=m,z=i.aa,u=m,k=fc(c)),n.aa[z+(x>>p)]=k,v=1<<c-1;x&v;)v>>=1;0!=v?(x&=v-1,x+=v):x=0}return i.aa+=h,a.aa=m,0}function hc(e,t,r,n,a,s,i,o,c){let d;if(c?e[t]<o:e[t]+1<o)d=lc(0,r-n,e[t]);else if(c?e[t]>o:e[t]>=o)if(c&&1==a){let a=e[t]-257;d=lc(i[a],r-n,s[a])}else{let a=c?e[t]:e[t]-o;d=lc(i[a],r-n,s[a])}else d=((e=0)=>dc(96,e,0))(r-n);return d}var xc=new Js(0),vc={sa:!0,ia:new Js(544),oa:xc,ca:xc},bc={sa:!0,ia:new Js(544),oa:xc,ca:xc};function yc(e){let t;return!(e&&(t=e.Vt,!(!t||t.o!=e||t.qn&&(16191>t.jn||t.jn>16209)||!t.qn&&(16180>t.jn||t.jn>16211))))}function gc(e){let t=e.qn?bc:vc,r={aa:0};if(t.sa){let n,a,s;for(n=0;144>n;)e.Zn[n++]=8;for(;256>n;)e.Zn[n++]=9;for(;280>n;)e.Zn[n++]=7;for(;288>n;)e.Zn[n++]=8;t.ia.fill(0),s=t.ia,t.oa=s,a=9;let i={aa:s},o={aa:a},c={aa:0};for(wc(1,e.Zn,288,i,o,e.Ln,c,e.qn),s=i.aa,a=o.aa,e.Hn=c.aa,n=0;32>n;)e.Zn[n++]=5;a=5;let d=c.aa,l={aa:s},f={aa:a};r.aa=d,wc(2,e.Zn,32,l,f,e.Ln,r,e.qn),t.ca=s.slice(d),t.sa=!1}e.En=t.oa,e.Fn=9,e.tt=t.ca,e.rt=5,e.Hn=r.aa}var kc=class extends _s{constructor(){super("Need more input")}};function zc(e,t){let r,n,a,s,i,o,c,d,l,f,m,u,p,w,h,x,v,b=new qs(4);if(yc(e)||!e.Tt||!e.Dt&&0!=e.Mt)return-2;o=0,d=0,c=0,l=0,n=ti,a=0,s=ti,i=0,r=e.Vt,16191==r.jn&&(r.jn=16192),S(),f=o,m=c,v=0;try{for(;;)switch(r.jn){case 16180:if(0==r.dr){r.jn=16192;break}if(j(16),2&r.dr&&35615==d){0==r.Lt&&(r.Lt=15),r.An=oo(0),r.An=k(r.An,d),F(),r.jn=16181;break}if(r.lr&&(r.lr.da=-1),!(1&r.dr)||((U(8)<<8)+(d>>8))%31){e.Wt="incorrect header check",r.jn=16209;break}if(8!=U(4)){e.Wt="unknown compression method",r.jn=16209;break}if(D(4),x=U(4)+8,0==r.Lt&&(r.Lt=x),x>15||x>r.Lt){e.Wt="invalid window size",r.jn=16209;break}r.Mn=1<<x,r.On=0,e.i=r.An=Qi(0),r.jn=512&d?16189:16191,F();break;case 16181:if(j(16),r.On=d,8!=(255&r.On)){e.Wt="unknown compression method",r.jn=16209;break}if(57344&r.On){e.Wt="unknown header flags set",r.jn=16209;break}r.lr&&(r.lr.vn=d>>8&1),512&r.On&&4&r.dr&&(r.An=k(r.An,d)),F(),r.jn=16182;case 16182:j(32),r.lr&&(r.lr.kn=d),512&r.On&&4&r.dr&&(r.An=z(r.An,d)),F(),r.jn=16183;case 16183:j(16),r.lr&&(r.lr.la=255&d,r.lr.zn=d>>8),512&r.On&&4&r.dr&&(r.An=k(r.An,d)),F(),r.jn=16184;case 16184:1024&r.On?(j(16),r.Cn=d,r.lr&&(r.lr.Sn=d),512&r.On&&4&r.dr&&(r.An=k(r.An,d)),F()):r.lr&&(r.lr.bn=ti),r.jn=16185;case 16185:if(1024&r.On&&(u=r.Cn,u>o&&(u=o),u&&(r.lr&&r.lr.bn&&r.lr.fa&&(x=r.lr.Sn-r.Cn)<r.lr.fa&&oi(r.lr.bn,x,n,a,u),512&r.On&&4&r.dr&&(r.An=oo(r.An,n.subarray(a,a+u),u)),o-=u,a+=u,r.Cn-=u),r.Cn))return y();r.Cn=0,r.jn=16186;case 16186:if(2048&r.On){if(0==o)return y();u=0;do{x=n[a+u++],r.lr&&r.lr.ma&&r.Cn<r.lr.ma&&(r.lr.yn[r.Cn++]=x)}while(x&&o>u);if(512&r.On&&4&r.dr&&(r.An=oo(r.An,n.subarray(a,a+u),u)),o-=u,a+=u,x)return y()}else r.lr&&(r.lr.yn=ti);r.Cn=0,r.jn=16187;case 16187:if(4096&r.On){if(0==o)return y();u=0;do{x=n[a+u++],r.lr&&r.lr.ua&&r.Cn<r.lr.ua&&(r.lr.gn[r.Cn++]=x)}while(x&&o>u);if(512&r.On&&4&r.dr&&(r.An=oo(r.An,n.subarray(a,a+u),u)),o-=u,a+=u,x)return y()}else r.lr&&(r.lr.gn=ti);r.jn=16188;case 16188:if(512&r.On){if(j(16),4&r.dr&&d!=(65535&r.An)){e.Wt="header crc mismatch",r.jn=16209;break}F()}r.lr&&(r.lr.xn=r.On>>9&1,r.lr.da=1),e.i=r.An=oo(0),r.jn=16191;break;case 16189:j(32),e.i=r.An=mc(d),F(),r.jn=16190;case 16190:if(!r.Dn)return E(),2;e.i=r.An=Qi(0),r.jn=16191;case 16191:if(5==t||6==t)return y();case 16192:if(r.Un){O(),r.jn=16206;break}switch(j(3),r.Un=!!U(1),D(1),U(2)){case 0:r.jn=16193;break;case 1:if(gc(r),r.jn=16199,6==t)return D(2),y();break;case 2:r.jn=16196;break;case 3:e.Wt="invalid block type",r.jn=16209}D(2);break;case 16193:if(O(),j(32),(65535&d)!=(d>>>16^65535)){e.Wt="invalid stored block lengths",r.jn=16209;break}if(r.Cn=65535&d,F(),r.jn=16194,6==t)return y();case 16194:r.jn=16195;case 16195:if(u=r.Cn,u){if(u>o&&(u=o),u>c&&(u=c),0==u)return y();oi(s,i,n,a,u),o-=u,a+=u,c-=u,i+=u,r.Cn-=u;break}r.jn=16191;break;case 16196:if(j(14),r.Pn=U(5)+257,D(5),r.Wn=U(5)+1,D(5),r.Nn=U(4)+4,D(4),r.Pn>286||!r.qn&&r.Wn>30){e.Wt=r.qn?"too many length":"too many length or distance symbols",r.jn=16209;break}r.In=0,r.jn=16197;case 16197:for(;r.In<r.Nn;)j(3),r.Zn[ei[r.In++]]=U(3),D(3);for(;19>r.In;)r.Zn[ei[r.In++]]=0;r.Vn=r.Bn,r.En=r.tt=r.Vn,r.Fn=7;let f={aa:r.Vn},b={aa:r.Fn},M={aa:0};if(v=wc(0,r.Zn,19,f,b,r.Ln,M,r.qn),r.Vn=f.aa,r.Fn=b.aa,v){e.Wt="invalid code lengths set",r.jn=16209;break}r.In=0,r.jn=16198;case 16198:for(;r.In<r.Pn+r.Wn;){for(;w=r.En[U(r.Fn)],(w>>>16&255)>l;)R();if(16>(65535&w))D(w>>>16&255),r.Zn[r.In++]=65535&w;else{if(16==(65535&w)){if(j(2+(w>>>16&255)),D(w>>>16&255),0==r.In){e.Wt="invalid bit length repeat",r.jn=16209;break}x=r.Zn[r.In-1],u=3+U(2),D(2)}else 17==(65535&w)?(j(3+(w>>>16&255)),D(w>>>16&255),x=0,u=3+U(3),D(3)):(j(7+(w>>>16&255)),D(w>>>16&255),x=0,u=11+U(7),D(7));if(r.In+u>r.Pn+r.Wn){e.Wt="invalid bit length repeat",r.jn=16209;break}for(;u--;)r.Zn[r.In++]=x}}if(16209==r.jn)break;if(0==r.Zn[256]){e.Wt="invalid code -- missing end-of-block",r.jn=16209;break}r.Vn=r.Bn,r.Fn=9;let A={aa:r.Vn},T={aa:r.Fn},C={aa:0};v=wc(1,r.Zn,r.Pn,A,T,r.Ln,C,r.qn),r.Vn=A.aa,r.Fn=T.aa;let N=C.aa;if(r.En=r.Vn.slice(0,N),v){e.Wt="invalid literal/lengths set",r.jn=16209;break}r.rt=6;let P=r.Zn.subarray(r.Pn,r.Pn+r.Wn),W={aa:r.Vn},I={aa:r.rt},V={aa:N};if(v=wc(2,P,r.Wn,W,I,r.Ln,V,r.qn),r.Vn=W.aa,r.rt=I.aa,r.tt=r.Vn.slice(N),v){e.Wt="invalid distances set",r.jn=16209;break}if(r.jn=16199,6==t)return y();case 16199:r.jn=16200;case 16200:if(!r.qn&&o>=6&&c>=258){E(),ic(e,m),S(),16191==r.jn&&(r.Yn=-1);break}for(r.Yn=0;w=r.En[U(r.Fn)],(w>>>16&255)>l;)R();if(w>>>24&&!(w>>>24&240)){for(h=w;w=r.En[(65535&h)+(U((h>>>16&255)+(h>>>24))>>(h>>>16&255))],(h>>>16&255)+(w>>>16&255)>l;)R();D(h>>>16&255),r.Yn+=h>>>16&255}if(D(w>>>16&255),r.Yn+=w>>>16&255,r.Cn=65535&w,!(w>>>24)){r.jn=16205;break}if(w>>>24&32){r.Yn=-1,r.jn=16191;break}if(w>>>24&64){e.Wt="invalid literal/length code",r.jn=16209;break}r.bn=w>>>24&(r.qn?31:15),r.jn=16201;case 16201:r.bn&&(j(r.bn),r.Cn+=U(r.bn),D(r.bn),r.Yn+=r.bn),r.Gn=r.Cn,r.jn=16202;case 16202:for(;w=r.tt[U(r.rt)],(w>>>16&255)>l;)R();if(!(w>>>24&240)){for(h=w;w=r.tt[(65535&h)+(U((h>>>16&255)+(h>>>24))>>(h>>>16&255))],(h>>>16&255)+(w>>>16&255)>l;)R();D(h>>>16&255),r.Yn+=h>>>16&255}if(D(w>>>16&255),r.Yn+=w>>>16&255,w>>>24&64){e.Wt="invalid distance code",r.jn=16209;break}r.dt=65535&w,r.bn=w>>>24&15,r.jn=16203;case 16203:r.bn&&(j(r.bn),r.dt+=U(r.bn),D(r.bn),r.Yn+=r.bn),r.jn=16204;case 16204:if(0==c)return y();if(u=m-c,r.dt>u){if(u=r.dt-u,u>r.k&&r.Rn){e.Wt="invalid distance too far back",r.jn=16209;break}u>r.Bt?(u-=r.Bt,p=r.Zt-u):p=r.Bt-u,u>r.Cn&&(u=r.Cn),u>c&&(u=c);for(let e=0;u>e;++e)s[i]=255&r.u[p],++i,++p}else{p=i-r.dt,u=r.Cn,u>c&&(u=c);for(let e=0;u>e;++e)s[i]=s[p],++i,++p}u>c&&(u=c),c-=u,r.Cn-=u,0==r.Cn&&(r.jn=16200);break;case 16205:if(0==c)return y();s[i++]=r.Cn,c--,r.jn=16200;break;case 16206:if(r.dr){if(j(32),m-=c,e.Pt+=m,r.Tn+=m,4&r.dr&&m){let t=s.subarray(i-m,i);e.i=r.An=g(r.An,t,m)}if(m=c,4&r.dr&&(r.On?d:mc(d)>>>0)!=r.An){e.Wt="incorrect data check",r.jn=16209;break}F()}r.jn=16207;case 16207:if(r.dr&&r.On){if(j(32),4&r.dr&&d!=(4294967295&r.Tn)){e.Wt="incorrect length check",r.jn=16209;break}F()}r.jn=16208;case 16208:return v=1,y();case 16209:return v=-3,y();case 16210:return-4;default:return-2}}catch(e){if(e instanceof kc)return y();throw e}function y(){if(E(),r.Zt||m!=e.Nt&&16209>r.jn&&(r.qn?16208>r.jn:16206>r.jn)||4!=t){let t=m-e.Nt;if(((e,t,r)=>{let n=e.Vt;if(!(n.u&&0!=n.u.length||(n.u=new qs(1<<n.Lt),n.u)))return 1;if(0==n.Zt&&(n.Zt=1<<n.Lt,n.Bt=0,n.k=0),r<n.Zt){let e=n.Zt-n.Bt;e>r&&(e=r),oi(n.u,n.Bt,t,t.length-r,e),(r-=e)?(oi(n.u,0,t,t.length-r,r),n.Bt=r,n.k=n.Zt):(n.Bt+=e,n.Bt==n.Zt&&(n.Bt=0),n.k<n.Zt&&(n.k+=e))}else oi(n.u,0,t,t.length-n.Zt,n.Zt),n.Bt=0,n.k=n.Zt;return 0})(e,e.Tt.subarray(e.Ct-t,e.Ct),t))return r.jn=16210,-4}return f-=e.Mt,m-=e.Nt,e.At+=f,e.Pt+=m,r.Tn+=m,4&r.dr&&m&&(e.i=r.An=g(r.An,e.Tt.subarray(e.Ct-m,e.Ct),m)),e.t=r.Ht+(r.Un?64:0)+(16191==r.jn?128:0)+(16199==r.jn||16194==r.jn?256:0),(0==f&&0==m&&0==v||4==t&&0==v)&&(v=-5),v}function g(e,t,n){return r.On?oo(e,t,n):Qi(e,t,n)}function k(e,t){return b[0]=255&t,b[1]=t>>>8&255,oo(e,b,2)>>>0}function z(e,t){return b[0]=255&t,b[1]=t>>>8&255,b[2]=t>>>16&255,b[3]=t>>>24&255,oo(e,b,4)>>>0}function S(){s=e.Tt,i=e.Ct,c=e.Nt,n=e.Dt,a=e.Ot,o=e.Mt,d=r.p,l=r.Ht}function E(){e.Tt=s,e.Ct=i,e.Nt=c,e.Dt=n,e.Ot=a,e.Mt=o,r.p=d,r.Ht=l}function F(){d=0,l=0}function R(){if(0==o)throw new kc;o--,d+=(255&n[a])<<l,a++,d>>>=0,l+=8}function j(e){for(;e>l;)R()}function U(e){return d&(1<<e)-1}function D(e){d>>>=e,l-=e}function O(){d>>>=7&l,l-=7&l}}function Sc(e){return yc(e)?-2:0}var Ec=65536,Fc=class{constructor(e=16,t=Ec){this.pa=[],this.wa=e;for(let r=0;r<Qs.min(e,4);r++)this.pa.push(new qs(t))}ha(e=Ec){for(let t=this.pa.length-1;t>=0;t--){let r=this.pa[t];if(r.length>=e)return this.pa.splice(t,1),r}return new qs(e)}release(e){this.pa.length<this.wa&&this.pa.push(e)}};function Rc(e){let t=new Fc(32,Ec),r=null;function n(){let t=e.xa(),r=e.va(t);if(0!=r&&0!=r)throw new _s("init failed: "+r);return{o:t}}function a(e){try{t.release(e)}catch{}}return new Xs({start(){},transform(s,i){r||(r=n());let o=r.o;if(r.ba)return;let c=0;for(;c<s.length;){let n=Qs.min(s.length-c,32768),d=s.subarray(c,c+n);for(o.Dt=d,o.Ot=0,o.Mt=d.length;o.Mt>0;){let n=t.ha(),s=!1;try{o.Tt=n,o.Ct=0,o.Nt=n.length;let a=e.ya(o,0),c=n.length-o.Nt;if(c>0){let e=!1,r={ga:n.subarray(0,c),release:()=>{e||(e=!0,t.release(n))}};s=!0,i.enqueue(r)}if(1==a){r.ba=!0;break}if(0!=a)throw new _s("process error: "+a)}finally{s||a(n)}}if(r.ba)break;c+=n}},flush(s){if(r&&r.ba)return;r||(r=n());let i=r.o;for(;;){let r=t.ha(),n=!1;try{i.Tt=r,i.Ct=0,i.Nt=r.length;let a=e.ya(i,4),o=r.length-i.Nt;if(o>0){let e=!1,a={ga:r.subarray(0,o),release:()=>{e||(e=!0,t.release(r))}};n=!0,s.enqueue(a)}if(1==a)break;if(0!=a)throw new _s("finalization error: "+a)}finally{n||a(r)}}let o=e.ka(i);if(0!=o&&0!=o)throw new _s("end failed: "+o)}})}function jc(){return new Xs({start(){},transform(e,t){try{t.enqueue(e.ga.slice(0))}finally{e.release()}},flush(){}})}A({workerURI:"./core/web-worker-native.js",wasmURI:null,CompressionStreamZlib:class{constructor(e="deflate",t){let r=function(e="deflate",t){let r="gzip"==e?31:"deflate-raw"==e?-15:15,n=t&&"number"==typeof t.level?t.level:-1;return Rc({xa:()=>(()=>{let e=di();return e.Vt=zi(e),e})(),va:e=>((e,t,r=8,n=15,a=ji,s=0)=>{let i=1;if(!e)return-2;if(e.Wt="",-1==t&&(t=6),0>n){if(i=0,-15>n)return-2;n=-n}else n>15&&(i=2,n-=16);if(1>a||a>9||8!=r||8>n||n>15||0>t||t>9||0>s||s>4||8==n&&1!=i)return-2;8==n&&(n=9);let o=zi(e);return o?(e.Vt=o,o.o=e,o.cr=42,o.dr=i,o.lr=void 0,o.Lt=n,o.Zt=1<<o.Lt,o.mr=o.Zt-1,o.ur=a+7,o.pr=1<<o.ur,o.wr=o.pr-1,o.vr=(o.ur+Ui-1)/Ui,o.u=new qs(2*o.Zt),o.yr=new Ks(o.Zt),o.gr=new Ks(o.pr),o.k=0,o.kr=1<<a+6,o._t=new qs(4*o.kr),o.Sr=4*o.kr,o.u&&o.yr&&o.gr&&o._t?(o.Kr=o._t.subarray(o.kr),o.er=o.zr+o.kr,o.ir=3*(o.kr-1),o.Ir=t,o.Vr=s,o.Qr=r,(e=>{let t=(e=>{let t;return Uo(e)?-2:(e.At=e.Pt=0,e.Wt="",e.t=2,t=e.Vt,t.$t=0,t.Er=t.zr,0>t.dr&&(t.dr=-t.dr),t.cr=2==t.dr?57:42,e.i=2==t.dr?oo(0):Qi(0),t.Dr=-2,(e=>{if(e.ar&&e.ar.length>=Pi)for(let t=0;Pi>t;t++)e.ar[t]=Ei();else{e.ar=[];for(let t=0;Pi>t;t++)e.ar.push(Ei())}if(e.sr&&e.sr.length>=2*Ci+1)for(let t=0;2*Ci+1>t;t++)e.sr[t]=Ei();else{e.sr=[];for(let t=0;2*Ci+1>t;t++)e.sr.push(Ei())}if(e.sn&&e.sn.length>=2*Ni+1)for(let t=0;2*Ni+1>t;t++)e.sn[t]=Ei();else{e.sn=[];for(let t=0;2*Ni+1>t;t++)e.sn.push(Ei())}e.cn=new mi(e.ar,new ui(qi,Li,Ai+1,Ti,Wi)),e.dn=new mi(e.sr,new ui(Ki,Bi,0,Ci,Wi)),e.ln=new mi(e.sn,new ui(null,Hi,0,Ni,7)),e.p=0,e.Ht=0,e.Jr=0,mo(e)})(t),0)})(e);return 0==t&&(e=>{e._r=2*e.Zt,Eo(e),e.Hr=go[e.Ir].pn,e.Zr=go[e.Ir].un,e.Lr=go[e.Ir].wn,e.Br=go[e.Ir].hn,e.Mr=0,e.Or=0,e.Ar=0,e.Ur=0,e.Tr=e.Cr=Ui-1,e.Pr=0,e.Wr=0})(e.Vt),t})(e)):(o.cr=666,e.Wt=pi(-4),To(e),-4)):-4})(e,n,8,r,8,0),ya:Ao,ka:To})}(e,t);this.writable=r.writable,this.readable=r.readable.pipeThrough(jc())}},DecompressionStreamZlib:class{constructor(e="deflate"){let t=((e="deflate")=>{let t="gzip"==e?31:"deflate-raw"==e?-15:"deflate64-raw"==e?-16:15;return Rc({xa:()=>(()=>{let e=di();return e.Vt=cc(e,!1),e})(),va:e=>function(e,t){let r,n;if(!e)return-2;e.Wt="";let a=-16==t;return n=cc(e,a),e.Vt=n,n.o=e,n.jn=a?16191:16180,r=((e,t)=>{let r,n;if(yc(e))return-2;if(n=e.Vt,0>t){if(-16>t)return-2;r=0,n.qn=-16==t,t=-t}else r=5+(t>>4),n.qn=!1,48>t&&(t&=15);let a=n.qn?16:15;return t&&(8>t||t>a)?-2:(n.u.length>0&&n.Lt!=t&&(n.u=ti),n.dr=r,n.Lt=t,(e=>{let t;return yc(e)?-2:(t=e.Vt,t.Zt=0,t.k=0,t.Bt=0,(e=>{let t;return yc(e)?-2:(t=e.Vt,e.At=e.Pt=t.Tn=0,e.Wt="",t.dr&&(e.i=1&t.dr),t.jn=t.qn?16191:16180,t.Un=!1,t.Dn=!1,t.On=-1,t.Mn=t.qn?65536:32768,delete t.lr,t.p=0,t.Ht=0,t.En=t.Bn,t.tt=t.Bn,t.Vn=t.Bn,t.Rn=!0,t.Yn=-1,0)})(e))})(e))})(e,t),r}(e,t),ya:zc,ka:Sc})})(e);this.writable=t.writable,this.readable=t.readable.pipeThrough(jc())}}});const Uc="Entry filename already exists";class Dc{constructor(e,t,r,n){const a=this;if(e.root&&n&&n.getChildByName(t))throw Error(Uc);r||(r={}),Object.assign(a,{fs:e,name:t,data:r.data,options:r.options,id:e.za++,parent:n,children:[],uncompressedSize:r.uncompressedSize||0,passThrough:r.passThrough}),!n&&e.root||(e.entries[a.id]=a),n&&a.parent.children.push(a)}moveTo(e){this.fs.move(this,e)}getFullname(){return this.getRelativeName()}getRelativeName(e=this.fs.root){let t=this.name,r=this.parent;for(;r&&r!=e;)t=(r.name?r.name+"/":"")+t,r=r.parent;return t}isDescendantOf(e){let t=this.parent;for(;t&&t.id!=e.id;)t=t.parent;return!!t}rename(e){const t=this.parent;if(t&&t.getChildByName(e))throw Error(Uc);this.name=e}}class Oc extends Dc{constructor(e,t,r,n){super(e,t,r,n);const a=this;a.Reader=r.Reader,a.Writer=r.Writer,r.getData&&(a.getData=r.getData)}clone(){return new Oc(this.fs,this.name,this)}async getData(e,t={}){const r=this;if(!e||e.constructor==r.Writer&&r.data)return r.data;{const n=r.reader=Pc(r.Reader,r.data,t),a=r.data?r.data.uncompressedSize:n.size;await Promise.all([nn(n),nn(e,a)]);const{readable:s}=n;return r.uncompressedSize=n.size,await s.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return!(!this.data||!this.data.encrypted)}async checkPassword(e,t={}){const r=this;if(!r.isPasswordProtected())return!0;try{return await r.data.getData(null,Object.assign({},t,{password:e,checkPasswordOnly:!0})),!0}catch(e){if(e.message==ke)return!1;throw e}}getText(e,t){return this.getData(new Or(e),t)}getBlob(e,t){return this.getData(new Ur(e),t)}getData64URI(e,t){return this.getData(new Er(e),t)}getUint8Array(e){return this.getData(new _r,e)}getWritable(e=new WritableStream,t){return this.getData({writable:e},t)}async getArrayBuffer(e){return we(await this.getUint8Array(e)).buffer}replaceBlob(e){Object.assign(this,{data:e,Reader:jr,Writer:Ur,reader:null})}replaceText(e){Object.assign(this,{data:e,Reader:Dr,Writer:Or,reader:null})}replaceData64URI(e){Object.assign(this,{data:e,Reader:Sr,Writer:Er,reader:null})}replaceUint8Array(e){Object.assign(this,{data:e,Reader:Qr,Writer:_r,reader:null})}replaceReadable(e){Object.assign(this,{data:null,Reader:Cc(e),Writer:null,reader:null})}}class Mc extends Dc{constructor(e,t,r,n){super(e,t,r,n),this.directory=!0}clone(e){const t=this,r=new Mc(t.fs,t.name,t);return e&&(r.children=t.children.map(t=>{const n=t.clone(e);return n.parent=r,n})),r}addDirectory(e,t){return Bc(this,e,{options:t},!0)}addText(e,t,r={}){return Bc(this,e,{data:t,Reader:Dr,Writer:Or,options:r,uncompressedSize:t.length})}addBlob(e,t,r={}){return Bc(this,e,{data:t,Reader:jr,Writer:Ur,options:r,uncompressedSize:t.size})}addData64URI(e,t,r={}){let n=t.length;for(;"="==t.charAt(n-1);)n--;const a=t.indexOf(",")+1;return Bc(this,e,{data:t,Reader:Sr,Writer:Er,options:r,uncompressedSize:Math.floor(.75*(n-a))})}addUint8Array(e,t,r={}){return Bc(this,e,{data:t,Reader:Qr,Writer:_r,options:r,uncompressedSize:t.length})}addHttpContent(e,t,r={}){return Bc(this,e,{data:t,Reader:class extends Jr{constructor(e){super(e,r)}},options:r})}addReadable(e,t,r={}){return Bc(this,e,{Reader:Cc(t),options:r})}addFileSystemEntry(e,t={}){return Vc(this,e,t)}addFileSystemHandle(e,t={}){return Vc(this,e,t)}addFile(e,t={}){return(t=Object.assign({},t)).lastModDate||(t.lastModDate=new Date(e.lastModified)),Bc(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}Sa(e,t){return Bc(this,e,t)}importBlob(e,t){return this.importZip(new jr(e),t)}importData64URI(e,t){return this.importZip(new Sr(e),t)}importUint8Array(e,t){return this.importZip(new Qr(e),t)}importHttpContent(e,t){return this.importZip(new Jr(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new Ur(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new Er(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new _r,e)}async exportWritable(e=new WritableStream,t={}){return await this.exportZip({writable:e},t),e}exportFileSystemHandle(e,t={}){return(async(e,t,r)=>{const n=Tc([e],"uncompressedSize"),a=new Map;return await s(e,t),t;async function s(e,t){if(r.concurrent){const r=(await Promise.allSettled(e.children.map(e=>i(e,t)))).find(e=>"rejected"==e.status);if(r)throw r.reason}else for(const r of e.children)await i(r,t)}async function i(e,t){try{if(e.directory){const r=await t.getDirectoryHandle(e.name,{create:!0});await s(e,r)}else{const s=await t.getFileHandle(e.name,{create:!0}),i=await s.createWritable();await e.getData({writable:i},Object.assign({},r,{onprogress:async t=>{if(r.onprogress){a.set(e.id,t);try{await r.onprogress(Array.from(a.values()).reduce((e,t)=>e+t,0),n)}catch{}}}}))}}catch(t){throw Error(t.message+(e?" ("+e.name+")":""),{cause:t})}}})(this,e,t)}async importZip(e,t={}){await nn(e);const r=new ba(e,t),n=[],a=await r.getEntries();for(const e of a){let r=this;try{const a=e.filename.split("/"),s=a.pop();if(a.forEach(e=>{const t=r;if(r=r.getChildByName(e),r){if(!r.directory)throw Error(Uc)}else r=new Mc(this.fs,e,{data:null},t),n.push(r)}),e.directory){let t=r;if(s)if(t=r.getChildByName(s),t){if(!t.directory)throw Error(Uc)}else t=new Mc(this.fs,s,{data:null},r),n.push(t);t==this||t.data||(t.data=e)}else n.push(Bc(r,s,{data:e,Reader:Nc(Object.assign({},t)),uncompressedSize:e.uncompressedSize,passThrough:t.passThrough}))}catch(t){try{t.cause={entry:e}}catch{}throw t}}return n}async exportZip(e,t={}){const r=this;(t=Object.assign({},t)).bufferedWrite===g&&(t.bufferedWrite=!0);const[n]=await Promise.all([Wc(r,t.readerOptions),nn(e)]),a=new ws(e,t);return await(async(e,t,r,n,a)=>{const s=t,i=new Map;await async function e(t,o){async function c(o){const c=n.relativePath?o.getRelativeName(s):o.getFullname(),d=o.options||{};let l={};if(o.data instanceof Zn){const{externalFileAttributes:e,versionMadeBy:t,comment:r,lastModDate:n,creationDate:a,lastAccessDate:s,uncompressedSize:i,encrypted:c,zipCrypto:d,signature:f,compressionMethod:m,extraFieldAES:u}=o.data;if(l={externalFileAttributes:e,versionMadeBy:t,comment:r,lastModDate:n,creationDate:a,lastAccessDate:s},o.passThrough){let e,t;0===m&&(e=0),u&&(t=u.strength),l=Object.assign(l,{passThrough:!0,encrypted:c,zipCrypto:d,signature:f,uncompressedSize:i,level:e,encryptionStrength:t,compressionMethod:m})}}await t.add(c,a.get(o),Object.assign({},n,l,d,{directory:o.directory,onprogress:async e=>{if(n.onprogress){i.set(c,e);try{await n.onprogress(Array.from(i.values()).reduce((e,t)=>e+t),r)}catch{}}}})),await e(t,o)}await(async()=>{if(n.bufferedWrite){const e=(await Promise.allSettled(o.children.map(c))).find(e=>"rejected"==e.status);if(e)throw e.reason}else for(const e of o.children)await c(e)})()}(e,t)})(a,r,Tc([r],"uncompressedSize"),t,n),await a.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let r=0;r<t.length;r++){const n=t[r];if(n.name==e)return n}}isPasswordProtected(){const e=this.children;for(let t=0;t<e.length;t++)if(e[t].isPasswordProtected())return!0;return!1}async checkPassword(e,t={}){const r=this.children;return!(await Promise.all(r.map(r=>r.checkPassword(e,t)))).includes(!1)}}const Ac={FS:class{constructor(){Lc(this)}get children(){return this.root.children}remove(e){Ic(e);const t=[e];for(;t.length;){const e=t.pop();this.entries[e.id]=null;for(const r of e.children)t.push(r)}e.parent=g}move(e,t){if(e==this.root)throw Error("Root directory cannot be moved");if(!t.directory)throw Error("Target entry is not a directory");if(t.isDescendantOf(e))throw Error("Entry is a ancestor of target entry");if(e!=t){const r=t.getChildByName(e.name);if(r){if(r!=e)throw Error(Uc)}else Ic(e),e.parent=t,t.children.push(e),((e,t)=>{const r=[t];for(;r.length;){const t=r.pop();e.entries[t.id]=t;for(const e of t.children)r.push(e)}})(this,e)}}find(e){const t=e.split("/");let r=this.root;for(let e=0;r&&e<t.length;e++)r=r.getChildByName(t[e]);return r||(r=this.entries.find(t=>t&&(t==this.root||t.isDescendantOf(this.root))&&t.getRelativeName()==e)),r}getById(e){return this.entries[e]}getChildByName(e){return this.root.getChildByName(e)}addDirectory(e,t){return this.root.addDirectory(e,t)}addText(e,t,r){return this.root.addText(e,t,r)}addBlob(e,t,r){return this.root.addBlob(e,t,r)}addData64URI(e,t,r){return this.root.addData64URI(e,t,r)}addUint8Array(e,t,r){return this.root.addUint8Array(e,t,r)}addHttpContent(e,t,r){return this.root.addHttpContent(e,t,r)}addReadable(e,t,r){return this.root.addReadable(e,t,r)}addFileSystemEntry(e,t){return this.root.addFileSystemEntry(e,t)}addFileSystemHandle(e,t){return this.root.addFileSystemHandle(e,t)}addFile(e,t){return this.root.addFile(e,t)}Sa(e,t){return this.root.Sa(e,t)}importBlob(e,t){return Lc(this),this.root.importBlob(e,t)}importData64URI(e,t){return Lc(this),this.root.importData64URI(e,t)}importUint8Array(e,t){return Lc(this),this.root.importUint8Array(e,t)}importHttpContent(e,t){return Lc(this),this.root.importHttpContent(e,t)}importReadable(e,t){return Lc(this),this.root.importReadable(e,t)}importZip(e,t){return Lc(this),this.root.importZip(e,t)}exportBlob(e){return this.root.exportBlob(e)}exportData64URI(e){return this.root.exportData64URI(e)}exportUint8Array(e){return this.root.exportUint8Array(e)}exportWritable(e,t){return this.root.exportWritable(e,t)}exportFileSystemHandle(e,t){return this.root.exportFileSystemHandle(e,t)}exportZip(e,t){return this.root.exportZip(e,t)}isPasswordProtected(){return this.root.isPasswordProtected()}checkPassword(e,t){return this.root.checkPassword(e,t)}},ZipDirectoryEntry:Mc,ZipFileEntry:Oc};function Tc(e,t){let r=0;const n=Array.from(e);for(;n.length;){const e=n.pop();r+=e[t]||0;for(const t of e.children)n.push(t)}return r}function Cc(e){let t;return()=>{if(t)throw Error("Readable stream already consumed");return t=!0,{readable:e}}}function Nc(e){return class extends kr{constructor(e,t={}){super(),this.entry=e,this.options=t}async init(){const t=this;t.size=t.entry.uncompressedSize;const r=await t.entry.getData(new Ur,Object.assign({},e,t.options));t.data=r,t.Ea=new jr(r),super.init()}readUint8Array(e,t){return this.Ea.readUint8Array(e,t)}}}function Pc(e,t,r){return e.prototype?new e(t,r):e(t,r)}async function Wc(e,t){const r=[],n=[e],a=new Map;for(;n.length;){const e=n.pop();for(const t of e.children)t.directory?n.push(t):r.push(t)}return await Promise.all(r.map(async e=>{const r=e.reader=Pc(e.Reader,e.data,t);a.set(e,r);try{await nn(r)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch{}throw t}r.size!==g&&(e.uncompressedSize=r.size)})),a}function Ic(e){if(e.parent){const t=e.parent.children;t.forEach((r,n)=>{r.id==e.id&&t.splice(n,1)})}}function Vc(e,t,r){return async function e(t,n,a){if(n)try{if((n.isFile||n.isDirectory)&&(n=await Zc(n)),"file"==n.kind){const e=await n.getFile();a.push(t.Sa(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:Object.assign({},{lastModDate:new Date(e.lastModified)},r),uncompressedSize:e.size}))}else if("directory"==n.kind){const r=t.addDirectory(n.name);a.push(r);for await(const t of n.values())await e(r,t,a)}}catch(e){const t=e.message+(n?" ("+n.name+")":"");throw Error(t,{cause:e})}return a}(e,t,[])}async function Zc(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new Promise((t,r)=>e.file(t,r))),e.isDirectory){t.kind="directory";const r=await(async e=>{const t=[];function r(e,n,a){e.readEntries(async s=>{if(s.length){for(const e of s)t.push(await Zc(e));r(e,n,a)}else n(t)},a)}return await new Promise((t,n)=>r(e.createReader(),t,n)),{[Symbol.iterator](){let e=0;return{next(){const r={value:t[e],done:e==t.length};return e++,r}}}}})(e);t.values=()=>r}return t}function Lc(e){e.entries=[],e.za=0,e.root=new Mc(e)}function Bc(e,t,r,n){if(e.directory)return n?new Mc(e.fs,t,r,e):new Oc(e.fs,t,r,e);throw Error("Parent entry is not a directory")}const Hc={application:{"andrew-inset":"ez",annodex:"anx","atom+xml":"atom","atomcat+xml":"atomcat","atomserv+xml":"atomsrv",bbolin:"lin","cu-seeme":"cu","davmount+xml":"davmount",dsptype:"tsp",ecmascript:["es","ecma"],futuresplash:"spl",hta:"hta","java-archive":"jar","java-serialized-object":"ser","java-vm":"class",m3g:"m3g","mac-binhex40":"hqx",mathematica:["nb","ma","mb"],msaccess:"mdb",msword:["doc","dot","wiz"],mxf:"mxf",oda:"oda",ogg:"ogx",pdf:"pdf","pgp-keys":"key","pgp-signature":["asc","sig"],"pics-rules":"prf",postscript:["ps","ai","eps","epsi","epsf","eps2","eps3"],rar:"rar","rdf+xml":"rdf","rss+xml":"rss",rtf:"rtf","xhtml+xml":["xhtml","xht"],xml:["xml","xsl","xsd","xpdl"],"xspf+xml":"xspf",zip:"zip","vnd.android.package-archive":"apk","vnd.cinderella":"cdy","vnd.google-earth.kml+xml":"kml","vnd.google-earth.kmz":"kmz","vnd.mozilla.xul+xml":"xul","vnd.ms-excel":["xls","xlb","xlt","xlm","xla","xlc","xlw"],"vnd.ms-pki.seccat":"cat","vnd.ms-pki.stl":"stl","vnd.ms-powerpoint":["ppt","pps","pot","ppa","pwz"],"vnd.oasis.opendocument.chart":"odc","vnd.oasis.opendocument.database":"odb","vnd.oasis.opendocument.formula":"odf","vnd.oasis.opendocument.graphics":"odg","vnd.oasis.opendocument.graphics-template":"otg","vnd.oasis.opendocument.image":"odi","vnd.oasis.opendocument.presentation":"odp","vnd.oasis.opendocument.presentation-template":"otp","vnd.oasis.opendocument.spreadsheet":"ods","vnd.oasis.opendocument.spreadsheet-template":"ots","vnd.oasis.opendocument.text":"odt","vnd.oasis.opendocument.text-master":["odm","otm"],"vnd.oasis.opendocument.text-template":"ott","vnd.oasis.opendocument.text-web":"oth","vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","vnd.openxmlformats-officedocument.spreadsheetml.template":"xltx","vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","vnd.openxmlformats-officedocument.presentationml.slideshow":"ppsx","vnd.openxmlformats-officedocument.presentationml.template":"potx","vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","vnd.openxmlformats-officedocument.wordprocessingml.template":"dotx","vnd.smaf":"mmf","vnd.stardivision.calc":"sdc","vnd.stardivision.chart":"sds","vnd.stardivision.draw":"sda","vnd.stardivision.impress":"sdd","vnd.stardivision.math":["sdf","smf"],"vnd.stardivision.writer":["sdw","vor"],"vnd.stardivision.writer-global":"sgl","vnd.sun.xml.calc":"sxc","vnd.sun.xml.calc.template":"stc","vnd.sun.xml.draw":"sxd","vnd.sun.xml.draw.template":"std","vnd.sun.xml.impress":"sxi","vnd.sun.xml.impress.template":"sti","vnd.sun.xml.math":"sxm","vnd.sun.xml.writer":"sxw","vnd.sun.xml.writer.global":"sxg","vnd.sun.xml.writer.template":"stw","vnd.symbian.install":["sis","sisx"],"vnd.visio":["vsd","vst","vss","vsw","vsdx","vssx","vstx","vssm","vstm"],"vnd.wap.wbxml":"wbxml","vnd.wap.wmlc":"wmlc","vnd.wap.wmlscriptc":"wmlsc","vnd.wordperfect":"wpd","vnd.wordperfect5.1":"wp5","x-123":"wk","x-7z-compressed":"7z","x-abiword":"abw","x-apple-diskimage":"dmg","x-bcpio":"bcpio","x-bittorrent":"torrent","x-cbr":["cbr","cba","cbt","cb7"],"x-cbz":"cbz","x-cdf":["cdf","cda"],"x-cdlink":"vcd","x-chess-pgn":"pgn","x-cpio":"cpio","x-csh":"csh","x-director":["dir","dxr","cst","cct","cxt","w3d","fgd","swa"],"x-dms":"dms","x-doom":"wad","x-dvi":"dvi","x-httpd-eruby":"rhtml","x-freemind":"mm","x-gnumeric":"gnumeric","x-go-sgf":"sgf","x-graphing-calculator":"gcf","x-gtar":["gtar","taz"],"x-hdf":"hdf","x-httpd-php":["phtml","pht","php"],"x-httpd-php-source":"phps","x-httpd-php3":"php3","x-httpd-php3-preprocessed":"php3p","x-httpd-php4":"php4","x-httpd-php5":"php5","x-ica":"ica","x-info":"info","x-internet-signup":["ins","isp"],"x-iphone":"iii","x-iso9660-image":"iso","x-java-jnlp-file":"jnlp","x-jmol":"jmz","x-killustrator":"kil","x-latex":"latex","x-lyx":"lyx","x-lzx":"lzx","x-maker":["frm","fb","fbdoc"],"x-ms-wmd":"wmd","x-msdos-program":["com","exe","bat","dll"],"x-netcdf":["nc"],"x-ns-proxy-autoconfig":["pac","dat"],"x-nwc":"nwc","x-object":"o","x-oz-application":"oza","x-pkcs7-certreqresp":"p7r","x-python-code":["pyc","pyo"],"x-qgis":["qgs","shp","shx"],"x-quicktimeplayer":"qtl","x-redhat-package-manager":["rpm","rpa"],"x-ruby":"rb","x-sh":"sh","x-shar":"shar","x-shockwave-flash":["swf","swfl"],"x-silverlight":"scr","x-stuffit":"sit","x-sv4cpio":"sv4cpio","x-sv4crc":"sv4crc","x-tar":"tar","x-tex-gf":"gf","x-tex-pk":"pk","x-texinfo":["texinfo","texi"],"x-trash":["~","%","bak","old","sik"],"x-ustar":"ustar","x-wais-source":"src","x-wingz":"wz","x-x509-ca-cert":["crt","der","cer"],"x-xcf":"xcf","x-xfig":"fig","x-xpinstall":"xpi",applixware:"aw","atomsvc+xml":"atomsvc","ccxml+xml":"ccxml","cdmi-capability":"cdmia","cdmi-container":"cdmic","cdmi-domain":"cdmid","cdmi-object":"cdmio","cdmi-queue":"cdmiq","docbook+xml":"dbk","dssc+der":"dssc","dssc+xml":"xdssc","emma+xml":"emma","epub+zip":"epub",exi:"exi","font-tdpfr":"pfr","gml+xml":"gml","gpx+xml":"gpx",gxf:"gxf",hyperstudio:"stk","inkml+xml":["ink","inkml"],ipfix:"ipfix","jsonml+json":"jsonml","lost+xml":"lostxml","mads+xml":"mads",marc:"mrc","marcxml+xml":"mrcx","mathml+xml":["mathml","mml"],mbox:"mbox","mediaservercontrol+xml":"mscml","metalink+xml":"metalink","metalink4+xml":"meta4","mets+xml":"mets","mods+xml":"mods",mp21:["m21","mp21"],mp4:"mp4s","oebps-package+xml":"opf","omdoc+xml":"omdoc",onenote:["onetoc","onetoc2","onetmp","onepkg"],oxps:"oxps","patch-ops-error+xml":"xer","pgp-encrypted":"pgp",pkcs10:"p10","pkcs7-mime":["p7m","p7c"],"pkcs7-signature":"p7s",pkcs8:"p8","pkix-attr-cert":"ac","pkix-crl":"crl","pkix-pkipath":"pkipath",pkixcmp:"pki","pls+xml":"pls","prs.cww":"cww","pskc+xml":"pskcxml","reginfo+xml":"rif","relax-ng-compact-syntax":"rnc","resource-lists+xml":"rl","resource-lists-diff+xml":"rld","rls-services+xml":"rs","rpki-ghostbusters":"gbr","rpki-manifest":"mft","rpki-roa":"roa","rsd+xml":"rsd","sbml+xml":"sbml","scvp-cv-request":"scq","scvp-cv-response":"scs","scvp-vp-request":"spq","scvp-vp-response":"spp",sdp:"sdp","set-payment-initiation":"setpay","set-registration-initiation":"setreg","shf+xml":"shf","sparql-query":"rq","sparql-results+xml":"srx",srgs:"gram","srgs+xml":"grxml","sru+xml":"sru","ssdl+xml":"ssdl","ssml+xml":"ssml","tei+xml":["tei","teicorpus"],"thraud+xml":"tfi","timestamped-data":"tsd","vnd.3gpp.pic-bw-large":"plb","vnd.3gpp.pic-bw-small":"psb","vnd.3gpp.pic-bw-var":"pvb","vnd.3gpp2.tcap":"tcap","vnd.3m.post-it-notes":"pwn","vnd.accpac.simply.aso":"aso","vnd.accpac.simply.imp":"imp","vnd.acucobol":"acu","vnd.acucorp":["atc","acutc"],"vnd.adobe.air-application-installer-package+zip":"air","vnd.adobe.formscentral.fcdt":"fcdt","vnd.adobe.fxp":["fxp","fxpl"],"vnd.adobe.xdp+xml":"xdp","vnd.adobe.xfdf":"xfdf","vnd.ahead.space":"ahead","vnd.airzip.filesecure.azf":"azf","vnd.airzip.filesecure.azs":"azs","vnd.amazon.ebook":"azw","vnd.americandynamics.acc":"acc","vnd.amiga.ami":"ami","vnd.anser-web-certificate-issue-initiation":"cii","vnd.anser-web-funds-transfer-initiation":"fti","vnd.antix.game-component":"atx","vnd.apple.installer+xml":"mpkg","vnd.apple.mpegurl":"m3u8","vnd.aristanetworks.swi":"swi","vnd.astraea-software.iota":"iota","vnd.audiograph":"aep","vnd.blueice.multipass":"mpm","vnd.bmi":"bmi","vnd.businessobjects":"rep","vnd.chemdraw+xml":"cdxml","vnd.chipnuts.karaoke-mmd":"mmd","vnd.claymore":"cla","vnd.cloanto.rp9":"rp9","vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"vnd.cluetrust.cartomobile-config":"c11amc","vnd.cluetrust.cartomobile-config-pkg":"c11amz","vnd.commonspace":"csp","vnd.contact.cmsg":"cdbcmsg","vnd.cosmocaller":"cmc","vnd.crick.clicker":"clkx","vnd.crick.clicker.keyboard":"clkk","vnd.crick.clicker.palette":"clkp","vnd.crick.clicker.template":"clkt","vnd.crick.clicker.wordbank":"clkw","vnd.criticaltools.wbs+xml":"wbs","vnd.ctc-posml":"pml","vnd.cups-ppd":"ppd","vnd.curl.car":"car","vnd.curl.pcurl":"pcurl","vnd.dart":"dart","vnd.data-vision.rdz":"rdz","vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"vnd.dece.ttml+xml":["uvt","uvvt"],"vnd.dece.unspecified":["uvx","uvvx"],"vnd.dece.zip":["uvz","uvvz"],"vnd.denovo.fcselayout-link":"fe_launch","vnd.dna":"dna","vnd.dolby.mlp":"mlp","vnd.dpgraph":"dpg","vnd.dreamfactory":"dfac","vnd.ds-keypoint":"kpxx","vnd.dvb.ait":"ait","vnd.dvb.service":"svc","vnd.dynageo":"geo","vnd.ecowin.chart":"mag","vnd.enliven":"nml","vnd.epson.esf":"esf","vnd.epson.msf":"msf","vnd.epson.quickanime":"qam","vnd.epson.salt":"slt","vnd.epson.ssf":"ssf","vnd.eszigno3+xml":["es3","et3"],"vnd.ezpix-album":"ez2","vnd.ezpix-package":"ez3","vnd.fdf":"fdf","vnd.fdsn.mseed":"mseed","vnd.fdsn.seed":["seed","dataless"],"vnd.flographit":"gph","vnd.fluxtime.clip":"ftc","vnd.framemaker":["fm","frame","maker","book"],"vnd.frogans.fnc":"fnc","vnd.frogans.ltf":"ltf","vnd.fsc.weblaunch":"fsc","vnd.fujitsu.oasys":"oas","vnd.fujitsu.oasys2":"oa2","vnd.fujitsu.oasys3":"oa3","vnd.fujitsu.oasysgp":"fg5","vnd.fujitsu.oasysprs":"bh2","vnd.fujixerox.ddd":"ddd","vnd.fujixerox.docuworks":"xdw","vnd.fujixerox.docuworks.binder":"xbd","vnd.fuzzysheet":"fzs","vnd.genomatix.tuxedo":"txd","vnd.geogebra.file":"ggb","vnd.geogebra.tool":"ggt","vnd.geometry-explorer":["gex","gre"],"vnd.geonext":"gxt","vnd.geoplan":"g2w","vnd.geospace":"g3w","vnd.gmx":"gmx","vnd.grafeq":["gqf","gqs"],"vnd.groove-account":"gac","vnd.groove-help":"ghf","vnd.groove-identity-message":"gim","vnd.groove-injector":"grv","vnd.groove-tool-message":"gtm","vnd.groove-tool-template":"tpl","vnd.groove-vcard":"vcg","vnd.hal+xml":"hal","vnd.handheld-entertainment+xml":"zmm","vnd.hbci":"hbci","vnd.hhe.lesson-player":"les","vnd.hp-hpgl":"hpgl","vnd.hp-hpid":"hpid","vnd.hp-hps":"hps","vnd.hp-jlyt":"jlt","vnd.hp-pcl":"pcl","vnd.hp-pclxl":"pclxl","vnd.hydrostatix.sof-data":"sfd-hdstx","vnd.ibm.minipay":"mpy","vnd.ibm.modcap":["afp","listafp","list3820"],"vnd.ibm.rights-management":"irm","vnd.ibm.secure-container":"sc","vnd.iccprofile":["icc","icm"],"vnd.igloader":"igl","vnd.immervision-ivp":"ivp","vnd.immervision-ivu":"ivu","vnd.insors.igm":"igm","vnd.intercon.formnet":["xpw","xpx"],"vnd.intergeo":"i2g","vnd.intu.qbo":"qbo","vnd.intu.qfx":"qfx","vnd.ipunplugged.rcprofile":"rcprofile","vnd.irepository.package+xml":"irp","vnd.is-xpr":"xpr","vnd.isac.fcs":"fcs","vnd.jam":"jam","vnd.jcp.javame.midlet-rms":"rms","vnd.jisp":"jisp","vnd.joost.joda-archive":"joda","vnd.kahootz":["ktz","ktr"],"vnd.kde.karbon":"karbon","vnd.kde.kchart":"chrt","vnd.kde.kformula":"kfo","vnd.kde.kivio":"flw","vnd.kde.kontour":"kon","vnd.kde.kpresenter":["kpr","kpt"],"vnd.kde.kspread":"ksp","vnd.kde.kword":["kwd","kwt"],"vnd.kenameaapp":"htke","vnd.kidspiration":"kia","vnd.kinar":["kne","knp"],"vnd.koan":["skp","skd","skt","skm"],"vnd.kodak-descriptor":"sse","vnd.las.las+xml":"lasxml","vnd.llamagraphics.life-balance.desktop":"lbd","vnd.llamagraphics.life-balance.exchange+xml":"lbe","vnd.lotus-1-2-3":"123","vnd.lotus-approach":"apr","vnd.lotus-freelance":"pre","vnd.lotus-notes":"nsf","vnd.lotus-organizer":"org","vnd.lotus-screencam":"scm","vnd.lotus-wordpro":"lwp","vnd.macports.portpkg":"portpkg","vnd.mcd":"mcd","vnd.medcalcdata":"mc1","vnd.mediastation.cdkey":"cdkey","vnd.mfer":"mwf","vnd.mfmp":"mfm","vnd.micrografx.flo":"flo","vnd.micrografx.igx":"igx","vnd.mif":"mif","vnd.mobius.daf":"daf","vnd.mobius.dis":"dis","vnd.mobius.mbk":"mbk","vnd.mobius.mqy":"mqy","vnd.mobius.msl":"msl","vnd.mobius.plc":"plc","vnd.mobius.txf":"txf","vnd.mophun.application":"mpn","vnd.mophun.certificate":"mpc","vnd.ms-artgalry":"cil","vnd.ms-cab-compressed":"cab","vnd.ms-excel.addin.macroenabled.12":"xlam","vnd.ms-excel.sheet.binary.macroenabled.12":"xlsb","vnd.ms-excel.sheet.macroenabled.12":"xlsm","vnd.ms-excel.template.macroenabled.12":"xltm","vnd.ms-fontobject":"eot","vnd.ms-htmlhelp":"chm","vnd.ms-ims":"ims","vnd.ms-lrm":"lrm","vnd.ms-officetheme":"thmx","vnd.ms-powerpoint.addin.macroenabled.12":"ppam","vnd.ms-powerpoint.presentation.macroenabled.12":"pptm","vnd.ms-powerpoint.slide.macroenabled.12":"sldm","vnd.ms-powerpoint.slideshow.macroenabled.12":"ppsm","vnd.ms-powerpoint.template.macroenabled.12":"potm","vnd.ms-project":["mpp","mpt"],"vnd.ms-word.document.macroenabled.12":"docm","vnd.ms-word.template.macroenabled.12":"dotm","vnd.ms-works":["wps","wks","wcm","wdb"],"vnd.ms-wpl":"wpl","vnd.ms-xpsdocument":"xps","vnd.mseq":"mseq","vnd.musician":"mus","vnd.muvee.style":"msty","vnd.mynfc":"taglet","vnd.neurolanguage.nlu":"nlu","vnd.nitf":["ntf","nitf"],"vnd.noblenet-directory":"nnd","vnd.noblenet-sealer":"nns","vnd.noblenet-web":"nnw","vnd.nokia.n-gage.data":"ngdat","vnd.nokia.n-gage.symbian.install":"n-gage","vnd.nokia.radio-preset":"rpst","vnd.nokia.radio-presets":"rpss","vnd.novadigm.edm":"edm","vnd.novadigm.edx":"edx","vnd.novadigm.ext":"ext","vnd.oasis.opendocument.chart-template":"otc","vnd.oasis.opendocument.formula-template":"odft","vnd.oasis.opendocument.image-template":"oti","vnd.olpc-sugar":"xo","vnd.oma.dd2+xml":"dd2","vnd.openofficeorg.extension":"oxt","vnd.openxmlformats-officedocument.presentationml.slide":"sldx","vnd.osgeo.mapguide.package":"mgp","vnd.osgi.dp":"dp","vnd.osgi.subsystem":"esa","vnd.palm":["pdb","pqa","oprc"],"vnd.pawaafile":"paw","vnd.pg.format":"str","vnd.pg.osasli":"ei6","vnd.picsel":"efif","vnd.pmi.widget":"wg","vnd.pocketlearn":"plf","vnd.powerbuilder6":"pbd","vnd.previewsystems.box":"box","vnd.proteus.magazine":"mgz","vnd.publishare-delta-tree":"qps","vnd.pvi.ptid1":"ptid","vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"vnd.realvnc.bed":"bed","vnd.recordare.musicxml":"mxl","vnd.recordare.musicxml+xml":"musicxml","vnd.rig.cryptonote":"cryptonote","vnd.rn-realmedia":"rm","vnd.rn-realmedia-vbr":"rmvb","vnd.route66.link66+xml":"link66","vnd.sailingtracker.track":"st","vnd.seemail":"see","vnd.sema":"sema","vnd.semd":"semd","vnd.semf":"semf","vnd.shana.informed.formdata":"ifm","vnd.shana.informed.formtemplate":"itp","vnd.shana.informed.interchange":"iif","vnd.shana.informed.package":"ipk","vnd.simtech-mindmapper":["twd","twds"],"vnd.smart.teacher":"teacher","vnd.solent.sdkm+xml":["sdkm","sdkd"],"vnd.spotfire.dxp":"dxp","vnd.spotfire.sfs":"sfs","vnd.stepmania.package":"smzip","vnd.stepmania.stepchart":"sm","vnd.sus-calendar":["sus","susp"],"vnd.svd":"svd","vnd.syncml+xml":"xsm","vnd.syncml.dm+wbxml":"bdm","vnd.syncml.dm+xml":"xdm","vnd.tao.intent-module-archive":"tao","vnd.tcpdump.pcap":["pcap","cap","dmp"],"vnd.tmobile-livetv":"tmo","vnd.trid.tpt":"tpt","vnd.triscape.mxs":"mxs","vnd.trueapp":"tra","vnd.ufdl":["ufd","ufdl"],"vnd.uiq.theme":"utz","vnd.umajin":"umj","vnd.unity":"unityweb","vnd.uoml+xml":"uoml","vnd.vcx":"vcx","vnd.visionary":"vis","vnd.vsf":"vsf","vnd.webturbo":"wtb","vnd.wolfram.player":"nbp","vnd.wqd":"wqd","vnd.wt.stf":"stf","vnd.xara":"xar","vnd.xfdl":"xfdl","vnd.yamaha.hv-dic":"hvd","vnd.yamaha.hv-script":"hvs","vnd.yamaha.hv-voice":"hvp","vnd.yamaha.openscoreformat":"osf","vnd.yamaha.openscoreformat.osfpvg+xml":"osfpvg","vnd.yamaha.smaf-audio":"saf","vnd.yamaha.smaf-phrase":"spf","vnd.yellowriver-custom-menu":"cmp","vnd.zul":["zir","zirz"],"vnd.zzazz.deck+xml":"zaz","voicexml+xml":"vxml",widget:"wgt",winhlp:"hlp","wsdl+xml":"wsdl","wspolicy+xml":"wspolicy","x-ace-compressed":"ace","x-authorware-bin":["aab","x32","u32","vox"],"x-authorware-map":"aam","x-authorware-seg":"aas","x-blorb":["blb","blorb"],"x-bzip":"bz","x-bzip2":["bz2","boz"],"x-cfs-compressed":"cfs","x-chat":"chat","x-conference":"nsc","x-dgc-compressed":"dgc","x-dtbncx+xml":"ncx","x-dtbook+xml":"dtb","x-dtbresource+xml":"res","x-eva":"eva","x-font-bdf":"bdf","x-font-ghostscript":"gsf","x-font-linux-psf":"psf","x-font-pcf":"pcf","x-font-snf":"snf","x-font-ttf":["ttf","ttc"],"x-font-type1":["pfa","pfb","pfm","afm"],"x-freearc":"arc","x-gca-compressed":"gca","x-glulx":"ulx","x-gramps-xml":"gramps","x-install-instructions":"install","x-lzh-compressed":["lzh","lha"],"x-mie":"mie","x-mobipocket-ebook":["prc","mobi"],"x-ms-application":"application","x-ms-shortcut":"lnk","x-ms-xbap":"xbap","x-msbinder":"obd","x-mscardfile":"crd","x-msclip":"clp","x-ms-installer":"msi","x-msmediaview":["mvb","m13","m14"],"x-msmetafile":["wmf","wmz","emf","emz"],"x-msmoney":"mny","x-mspublisher":"pub","x-msschedule":"scd","x-msterminal":"trm","x-mswrite":"wri","x-nzb":"nzb","x-pkcs12":["p12","pfx"],"x-pkcs7-certificates":["p7b","spc"],"x-research-info-systems":"ris","x-silverlight-app":"xap","x-sql":"sql","x-stuffitx":"sitx","x-subrip":"srt","x-t3vm-image":"t3","x-tex-tfm":"tfm","x-tgif":"obj","x-xliff+xml":"xlf","x-xz":"xz","x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"xaml+xml":"xaml","xcap-diff+xml":"xdf","xenc+xml":"xenc","xml-dtd":"dtd","xop+xml":"xop","xproc+xml":"xpl","xslt+xml":"xslt","xv+xml":["mxml","xhvml","xvml","xvm"],yang:"yang","yin+xml":"yin",envoy:"evy",fractals:"fif","internet-property-stream":"acx",olescript:"axs","vnd.ms-outlook":"msg","vnd.ms-pkicertstore":"sst","x-compress":"z","x-perfmon":["pma","pmc","pmr","pmw"],"ynd.ms-pkipko":"pko",gzip:["gz","tgz"],"smil+xml":["smi","smil"],"vnd.debian.binary-package":["deb","udeb"],"vnd.hzn-3d-crossword":"x3d","vnd.sqlite3":["db","sqlite","sqlite3","db-wal","sqlite-wal","db-shm","sqlite-shm"],"vnd.wap.sic":"sic","vnd.wap.slc":"slc","x-krita":["kra","krz"],"x-perl":["pm","pl"],yaml:["yaml","yml"]},audio:{amr:"amr","amr-wb":"awb",annodex:"axa",basic:["au","snd"],flac:"flac",midi:["mid","midi","kar","rmi"],mpeg:["mpga","mpega","mp3","m4a","mp2a","m2a","m3a"],mpegurl:"m3u",ogg:["oga","ogg","spx"],"prs.sid":"sid","x-aiff":"aifc","x-gsm":"gsm","x-ms-wma":"wma","x-ms-wax":"wax","x-pn-realaudio":"ram","x-realaudio":"ra","x-sd2":"sd2",adpcm:"adp",mp4:"mp4a",s3m:"s3m",silk:"sil","vnd.dece.audio":["uva","uvva"],"vnd.digital-winds":"eol","vnd.dra":"dra","vnd.dts":"dts","vnd.dts.hd":"dtshd","vnd.lucent.voice":"lvp","vnd.ms-playready.media.pya":"pya","vnd.nuera.ecelp4800":"ecelp4800","vnd.nuera.ecelp7470":"ecelp7470","vnd.nuera.ecelp9600":"ecelp9600","vnd.rip":"rip",webm:"weba","x-caf":"caf","x-matroska":"mka","x-pn-realaudio-plugin":"rmp",xm:"xm",aac:"aac",aiff:["aiff","aif","aff"],opus:"opus",wav:"wav"},chemical:{"x-alchemy":"alc","x-cache":["cac","cache"],"x-cache-csf":"csf","x-cactvs-binary":["cbin","cascii","ctab"],"x-cdx":"cdx","x-chem3d":"c3d","x-cif":"cif","x-cmdf":"cmdf","x-cml":"cml","x-compass":"cpa","x-crossfire":"bsd","x-csml":["csml","csm"],"x-ctx":"ctx","x-cxf":["cxf","cef"],"x-embl-dl-nucleotide":["emb","embl"],"x-gamess-input":["inp","gam","gamin"],"x-gaussian-checkpoint":["fch","fchk"],"x-gaussian-cube":"cub","x-gaussian-input":["gau","gjc","gjf"],"x-gaussian-log":"gal","x-gcg8-sequence":"gcg","x-genbank":"gen","x-hin":"hin","x-isostar":["istr","ist"],"x-jcamp-dx":["jdx","dx"],"x-kinemage":"kin","x-macmolecule":"mcm","x-macromodel-input":"mmod","x-mdl-molfile":"mol","x-mdl-rdfile":"rd","x-mdl-rxnfile":"rxn","x-mdl-sdfile":"sd","x-mdl-tgf":"tgf","x-mmcif":"mcif","x-mol2":"mol2","x-molconn-Z":"b","x-mopac-graph":"gpt","x-mopac-input":["mop","mopcrt","zmt"],"x-mopac-out":"moo","x-ncbi-asn1":"asn","x-ncbi-asn1-ascii":["prt","ent"],"x-ncbi-asn1-binary":"val","x-rosdal":"ros","x-swissprot":"sw","x-vamas-iso14976":"vms","x-vmd":"vmd","x-xtel":"xtel","x-xyz":"xyz"},font:{otf:"otf",woff:"woff",woff2:"woff2"},image:{gif:"gif",ief:"ief",jpeg:["jpeg","jpg","jpe","jfif","jfif-tbnl","jif"],pcx:"pcx",png:"png","svg+xml":["svg","svgz"],tiff:["tiff","tif"],"vnd.djvu":["djvu","djv"],"vnd.wap.wbmp":"wbmp","x-canon-cr2":"cr2","x-canon-crw":"crw","x-cmu-raster":"ras","x-coreldraw":"cdr","x-coreldrawpattern":"pat","x-coreldrawtemplate":"cdt","x-corelphotopaint":"cpt","x-epson-erf":"erf","x-icon":"ico","x-jg":"art","x-jng":"jng","x-nikon-nef":"nef","x-olympus-orf":"orf","x-portable-anymap":"pnm","x-portable-bitmap":"pbm","x-portable-graymap":"pgm","x-portable-pixmap":"ppm","x-rgb":"rgb","x-xbitmap":"xbm","x-xpixmap":"xpm","x-xwindowdump":"xwd",bmp:"bmp",cgm:"cgm",g3fax:"g3",ktx:"ktx","prs.btif":"btif",sgi:"sgi","vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"vnd.dwg":"dwg","vnd.dxf":"dxf","vnd.fastbidsheet":"fbs","vnd.fpx":"fpx","vnd.fst":"fst","vnd.fujixerox.edmics-mmr":"mmr","vnd.fujixerox.edmics-rlc":"rlc","vnd.ms-modi":"mdi","vnd.ms-photo":"wdp","vnd.net-fpx":"npx","vnd.xiff":"xif",webp:"webp","x-3ds":"3ds","x-cmx":"cmx","x-freehand":["fh","fhc","fh4","fh5","fh7"],"x-pict":["pic","pct"],"x-tga":"tga","cis-cod":"cod",avif:["avif","avifs"],heic:["heif","heic"],pjpeg:["pjpg"],"vnd.adobe.photoshop":"psd","x-adobe-dng":"dng","x-fuji-raf":"raf","x-icns":"icns","x-kodak-dcr":"dcr","x-kodak-k25":"k25","x-kodak-kdc":"kdc","x-minolta-mrw":"mrw","x-panasonic-raw":["raw","rw2","rwl"],"x-pentax-pef":["pef","ptx"],"x-sigma-x3f":"x3f","x-sony-arw":"arw","x-sony-sr2":"sr2","x-sony-srf":"srf"},message:{rfc822:["eml","mime","mht","mhtml","nws"]},model:{iges:["igs","iges"],mesh:["msh","mesh","silo"],vrml:["wrl","vrml"],"x3d+vrml":["x3dv","x3dvz"],"x3d+xml":"x3dz","x3d+binary":["x3db","x3dbz"],"vnd.collada+xml":"dae","vnd.dwf":"dwf","vnd.gdl":"gdl","vnd.gtw":"gtw","vnd.mts":"mts","vnd.usdz+zip":"usdz","vnd.vtu":"vtu"},text:{"cache-manifest":["manifest","appcache"],calendar:["ics","icz","ifb"],css:"css",csv:"csv",h323:"323",html:["html","htm","shtml","stm"],iuls:"uls",plain:["txt","text","brf","conf","def","list","log","in","bas","diff","ksh"],richtext:"rtx",scriptlet:["sct","wsc"],texmacs:"tm","tab-separated-values":"tsv","vnd.sun.j2me.app-descriptor":"jad","vnd.wap.wml":"wml","vnd.wap.wmlscript":"wmls","x-bibtex":"bib","x-boo":"boo","x-c++hdr":["h++","hpp","hxx","hh"],"x-c++src":["c++","cpp","cxx","cc"],"x-component":"htc","x-dsrc":"d","x-diff":"patch","x-haskell":"hs","x-java":"java","x-literate-haskell":"lhs","x-moc":"moc","x-pascal":["p","pas","pp","inc"],"x-pcs-gcd":"gcd","x-python":"py","x-scala":"scala","x-setext":"etx","x-tcl":["tcl","tk"],"x-tex":["tex","ltx","sty","cls"],"x-vcalendar":"vcs","x-vcard":"vcf",n3:"n3","prs.lines.tag":"dsc",sgml:["sgml","sgm"],troff:["t","tr","roff","man","me","ms"],turtle:"ttl","uri-list":["uri","uris","urls"],vcard:"vcard","vnd.curl":"curl","vnd.curl.dcurl":"dcurl","vnd.curl.scurl":"scurl","vnd.curl.mcurl":"mcurl","vnd.dvb.subtitle":"sub","vnd.fly":"fly","vnd.fmi.flexstor":"flx","vnd.graphviz":"gv","vnd.in3d.3dml":"3dml","vnd.in3d.spot":"spot","x-asm":["s","asm"],"x-c":["c","h","dic"],"x-fortran":["f","for","f77","f90"],"x-opml":"opml","x-nfo":"nfo","x-sfv":"sfv","x-uuencode":"uu",webviewhtml:"htt",javascript:"js",json:"json",markdown:["md","markdown","mdown","markdn"],"vnd.wap.si":"si","vnd.wap.sl":"sl"},video:{"3gpp":"3gp",annodex:"axv",dl:"dl",dv:["dif","dv"],fli:"fli",gl:"gl",mpeg:["mpeg","mpg","mpe","m1v","m2v","mp2","mpa","mpv2"],mp4:["mp4","mp4v","mpg4"],quicktime:["qt","mov"],ogg:"ogv","vnd.mpegurl":["mxu","m4u"],"x-flv":"flv","x-la-asf":["lsf","lsx"],"x-mng":"mng","x-ms-asf":["asf","asx","asr"],"x-ms-wm":"wm","x-ms-wmv":"wmv","x-ms-wmx":"wmx","x-ms-wvx":"wvx","x-msvideo":"avi","x-sgi-movie":"movie","x-matroska":["mpv","mkv","mk3d","mks"],"3gpp2":"3g2",h261:"h261",h263:"h263",h264:"h264",jpeg:"jpgv",jpm:["jpm","jpgm"],mj2:["mj2","mjp2"],"vnd.dece.hd":["uvh","uvvh"],"vnd.dece.mobile":["uvm","uvvm"],"vnd.dece.pd":["uvp","uvvp"],"vnd.dece.sd":["uvs","uvvs"],"vnd.dece.video":["uvv","uvvv"],"vnd.dvb.file":"dvb","vnd.fvt":"fvt","vnd.ms-playready.media.pyv":"pyv","vnd.uvvu.mp4":["uvu","uvvu"],"vnd.vivo":"viv",webm:"webm","x-f4v":"f4v","x-m4v":"m4v","x-ms-vob":"vob","x-smv":"smv",mp2t:"ts"},"x-conference":{"x-cooltalk":"ice"},"x-world":{"x-vrml":["vrm","flr","wrz","xaf","xof"]}};let Yc;function Gc(e){return e&&(()=>{if(!Yc){Yc={};for(const e of Object.keys(Hc))for(const t of Object.keys(Hc[e])){const r=Hc[e][t];if("string"==typeof r)Yc[r]=e+"/"+t;else for(let n=0;n<r.length;n++)Yc[r[n]]=e+"/"+t}}return Yc})()[e.split(".").pop().toLowerCase()]||"application/octet-stream"}A({workerURI:e=>{const t="text/javascript",r=(e=>{let t=0,r=0,n=0,a=new Uint8Array(1024),s=0,i=0;for(;!i;){i=c(1);const e=c(2);if(0==e)d();else if(1==e)l(L(V),L(Z));else{if(2!=e)throw Error("invalid deflate block type");l(...f())}}return a.subarray(0,s);function o(){if(t>=e.length)throw Error("unexpected end of deflate data");return e[t++]}function c(e){for(;e>n;)r|=o()<<n,n+=8;const t=r&(1<<e)-1;return r>>>=e,n-=e,t}function d(){r=0,n=0;const e=o()|o()<<8;t+=2,u(s+e);for(let t=0;e>t;t++)a[s++]=o()}function l(e,t){let r=m(e);for(;256!=r;){if(256>r)u(s+1),a[s++]=r;else{const e=r-257,n=C[e]+c(N[e]),i=m(t),o=P[i]+c(W[i]);u(s+n);const d=s-o;for(let e=0;n>e;e++)a[s++]=a[d+e]}r=m(e)}}function f(){const e=c(5)+257,t=c(5)+1,r=c(4)+4,n=new Uint8Array(19);for(let e=0;r>e;e++)n[I[e]]=c(3);const a=L(n),s=new Uint8Array(e+t);let i=0;for(;i<s.length;){const e=m(a);if(16>e)s[i++]=e;else if(16==e){const e=s[i-1];let t=c(2)+3;for(;t--;)s[i++]=e}else i+=17==e?c(3)+3:c(7)+11}return[L(s.subarray(0,e)),L(s.subarray(e))]}function m(e){const{o:t,symbols:r}=e;let n=0,a=0,s=0;for(let e=1;15>=e;e++){n|=c(1);const i=t[e];if(i>n-a)return r[s+(n-a)];s+=i,a=a+i<<1,n<<=1}throw Error("invalid huffman code")}function u(e){if(a.length<e){let t=2*a.length;for(;e>t;)t*=2;const r=new Uint8Array(t);r.set(a.subarray(0,s)),a=r}}})((e=>{const t=(e=(e+"").replace(/[^A-Za-z0-9+/=]/g,"")).length,r=[];for(let n=0;t>n;n+=4){const t=B.indexOf(e[n])<<18|B.indexOf(e[n+1])<<12|(63&B.indexOf(e[n+2]))<<6|63&B.indexOf(e[n+3]);r.push(t>>16&255),"="!==e[n+2]&&r.push(t>>8&255),"="!==e[n+3]&&r.push(255&t)}return new Uint8Array(r)})("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"));if(e){const e=new Blob([r],{type:t});return URL.createObjectURL(e)}return"data:"+t+";base64,"+(e=>{let t="";const r=e.length;let n=0;for(;r>n+2;n+=3){const r=e[n]<<16|e[n+1]<<8|e[n+2];t+=B[r>>18&63]+B[r>>12&63]+B[r>>6&63]+B[63&r]}const a=r-n;if(1===a){const r=e[n]<<16;t+=B[r>>18&63]+B[r>>12&63]+"=="}else if(2===a){const r=e[n]<<16|e[n+1]<<8;t+=B[r>>18&63]+B[r>>12&63]+B[r>>6&63]+"="}return t})(r)}});export{jr as BlobReader,Ur as BlobWriter,Sr as Data64URIReader,Er as Data64URIWriter,ua as ERR_AMBIGUOUS_ARCHIVE,ra as ERR_BAD_FORMAT,sa as ERR_CENTRAL_DIRECTORY_NOT_FOUND,qa as ERR_DUPLICATED_NAME,ca as ERR_ENCRYPTED,pa as ERR_ENCRYPTED_CENTRAL_DIRECTORY,aa as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,na as ERR_EOCDR_NOT_FOUND,oa as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,lr as ERR_HTTP_RANGE,fr as ERR_HTTP_RESOURCE_CHANGED,Se as ERR_INVALID_AUTHENTICATION_CODE,H as ERR_INVALID_CODEC_DEFINITION,G as ERR_INVALID_CODEC_MODULE,Ka as ERR_INVALID_COMMENT,mt as ERR_INVALID_COMPRESSED_DATA,ut as ERR_INVALID_CRC32,_a as ERR_INVALID_ENCRYPTION_STRENGTH,Ja as ERR_INVALID_ENTRY_COMMENT,Xa as ERR_INVALID_ENTRY_NAME,ts as ERR_INVALID_EXTRAFIELD_DATA,es as ERR_INVALID_EXTRAFIELD_TYPE,ke as ERR_INVALID_PASSWORD,ze as ERR_INVALID_SIGNATURE,ft as ERR_INVALID_UNCOMPRESSED_SIZE,Qa as ERR_INVALID_VERSION,mr as ERR_ITERATOR_COMPLETED_TOO_SOON,ia as ERR_LOCAL_FILE_HEADER_NOT_FOUND,ma as ERR_OVERLAPPING_ENTRY,Y as ERR_RESERVED_COMPRESSION_METHOD,fa as ERR_SPLIT_ZIP_FILE,cs as ERR_UNDEFINED_READER,os as ERR_UNDEFINED_UNCOMPRESSED_SIZE,la as ERR_UNSUPPORTED_COMPRESSION,da as ERR_UNSUPPORTED_ENCRYPTION,$a as ERR_UNSUPPORTED_ENCRYPTION_USDZ,is as ERR_UNSUPPORTED_FORMAT,ur as ERR_WRITER_NOT_INITIALIZED,ds as ERR_ZIP_NOT_EMPTY,Xr as HttpRangeReader,Jr as HttpReader,kr as Reader,$r as SplitDataReader,en as SplitDataWriter,Dr as TextReader,Or as TextWriter,Qr as Uint8ArrayReader,_r as Uint8ArrayWriter,zr as Writer,ba as ZipReader,ya as ZipReaderStream,ws as ZipWriter,hs as ZipWriterStream,M as configure,Bs as createBlobTempStream,Zs as createOPFSTempStream,Gs as createSyncAccessHandleTempStream,Ac as fs,Gc as getMimeType,Q as registerCodec,T as resetConfiguration,cr as terminateWorkers,_ as unregisterCodec};
|
|
1
|
+
const e=4294967295,t=65535,r=255,n=67324752,a=134695760,i=a,s=33639248,o=101010256,c=101075792,l=117853008,f=22,d=20,u=39169,p=21589,m=6534,w=30837,h=30805,b=2048,y=16384,g=2048,x=1024,v="/",z=30,k=new Date(2107,11,31,23,59,58),S=new Date(1980,0,1),E=void 0,R=1/0,F="undefined",j="function",U=new Uint8Array;let O=2;try{typeof navigator!=F&&navigator.hardwareConcurrency&&(O=navigator.hardwareConcurrency)}catch{}const D={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:O,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof CompressionStream!=F&&CompressionStream,DecompressionStream:typeof DecompressionStream!=F&&DecompressionStream},C=["baseURI","wasmURI","workerURI","chunkSize","maxWorkers","terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout","useCompressionStream","useWebWorkers","transferStreams","CompressionStream","DecompressionStream","CompressionStreamZlib","DecompressionStreamZlib"],A={...D};function T(){return A}function M(e){return Math.max(e.chunkSize,64)}function P(e){for(const t of C){const r=e[t];r!==E&&(A[t]=r)}}function I(e){for(const t of C){const r=e[t];r!==E&&(D[t]=r)}P(e)}function N(){for(const e of C)delete A[e];Object.assign(A,D)}const Z=[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],W=[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],L=[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],B=[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],Y=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],H=new Uint8Array(288);H.fill(8,0,144),H.fill(9,144,256),H.fill(7,256,280),H.fill(8,280,288);const V=new Uint8Array(30).fill(5);function q(e){const t=new Uint16Array(16);for(const r of e)t[r]++;t[0]=0;const r=new Uint16Array(17);for(let e=1;15>=e;e++)r[e+1]=r[e]+t[e];const n=new Uint16Array(e.length);for(let t=0;t<e.length;t++)e[t]&&(n[r[e[t]]++]=t);return{o:t,symbols:n}}const G="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Q="Invalid codec definition",X="Reserved compression method",J="Invalid codec module",K="string",_=[0,8,9,99],$=new Map,ee=new Map;function te(e={}){const{compressionMethod:r,format:n,codecURI:a,CompressionStream:i,DecompressionStream:s,versionNeeded:o}=e;if(!Number.isInteger(r)||0>r||r>t||typeof n!=K||!n.length)throw Error(Q);if(_.includes(r))throw Error(X);const c=typeof i==j||typeof s==j;if(!(c||typeof a==K&&a.length))throw Error(Q);$.set(r,{compressionMethod:r,format:n,codecURI:a,versionNeeded:o}),c&&ie(n,{CompressionStream:i,DecompressionStream:s})}function re(e){const t=$.get(e);if(t){let r;$.delete(e),$.forEach(e=>r=r||e.format==t.format),r||ee.delete(t.format)}}function ne(e){return $.get(e)}function ae(e){return ee.get(e)}function ie(e,t){const{CompressionStream:r,DecompressionStream:n}=t;if(typeof r!=j&&typeof n!=j)throw Error(J);ee.set(e,{CompressionStream:r,DecompressionStream:n})}const se=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?t>>>1^3988292384:t>>>1;se[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){const r=se[t-1][e];se[t][e]=r>>>8^se[0][255&r]}const[oe,ce,le,fe,de,ue,pe,me]=se;class we{constructor(e){this.l=e||-1}append(e){let t=0|this.l;const r=0|e.length;let n=0;if(r>=8&&e.buffer){const a=new DataView(e.buffer,e.byteOffset,r),i=r-8;for(;i>=n;n+=8){const e=t^a.getInt32(n,!0),r=a.getInt32(n+4,!0);t=me[255&e]^pe[e>>>8&255]^ue[e>>>16&255]^de[e>>>24&255]^fe[255&r]^le[r>>>8&255]^ce[r>>>16&255]^oe[r>>>24&255]}}for(;r>n;n++)t=t>>>8^oe[255&(t^e[n])];this.l=t}get(){return~this.l}}class he extends TransformStream{constructor(){let e;const t=new we;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new Uint8Array(4);new DataView(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}function be(e){if(typeof TextEncoder==F){e=unescape(encodeURIComponent(e));const t=new Uint8Array(e.length);for(let r=0;r<t.length;r++)t[r]=e.charCodeAt(r);return t}return(new TextEncoder).encode(e)}function ye(e,t){const r=new Uint8Array(e.length+t.length);return r.set(e),r.set(t,e.length),r}function ge(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new Uint8Array(e):e}function xe(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}const ve={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const r=e[e.length-1],n=ve.m(r);return 32===n?e.concat(t):ve.h(t,n,0|r,e.slice(0,e.length-1))},v(e){const t=e.length;if(0===t)return 0;const r=e[t-1];return 32*(t-1)+ve.m(r)},S(e,t){if(32*e.length<t)return e;const r=(e=e.slice(0,Math.ceil(t/32))).length;return t&=31,r>0&&t&&(e[r-1]=ve.R(t,e[r-1]&2147483648>>t-1,1)),e},R:(e,t,r)=>32===e?t:(r?0|t:t<<32-e)+1099511627776*e,m:e=>Math.round(e/1099511627776)||32,h(e,t,r,n){for(void 0===n&&(n=[]);t>=32;t-=32)n.push(r),r=0;if(0===t)return n.concat(e);for(let a=0;a<e.length;a++)n.push(r|e[a]>>>t),r=e[a]<<32-t;const a=e.length?e[e.length-1]:0,i=ve.m(a);return n.push(ve.R(t+i&31,t+i>32?r:n.pop(),1)),n}},ze={bytes:{F(e){const t=ve.v(e)/8,r=new Uint8Array(t);let n;for(let a=0;t>a;a++)3&a||(n=e[a/4]),r[a]=n>>>24,n<<=8;return r},j(e){const t=[];let r,n=0;for(r=0;r<e.length;r++)n=n<<8|e[r],3&~r||(t.push(n),n=0);return 3&r&&t.push(ve.R(8*(3&r),n)),t}}},ke=class{constructor(e){const t=this;t.blockSize=512,t.U=[1732584193,4023233417,2562383102,271733878,3285377520],t.O=[1518500249,1859775393,2400959708,3395469782],e?(t.D=e.D.slice(0),t.C=e.C.slice(0),t.A=e.A):t.reset()}reset(){const e=this;return e.D=e.U.slice(0),e.C=[],e.A=0,e}update(e){const t=this;"string"==typeof e&&(e=ze.T.j(e));const r=t.C=ve.concat(t.C,e),n=t.A,a=t.A=n+ve.v(e);if(a>9007199254740991)throw Error("Cannot hash more than 2^53 - 1 bits");const i=new Uint32Array(r);let s=0;for(let e=t.blockSize+n-(t.blockSize+n&t.blockSize-1);a>=e;e+=t.blockSize)t.M(i.subarray(16*s,16*(s+1))),s+=1;return r.splice(0,16*s),t}P(){const e=this;let t=e.C;const r=e.D;t=ve.concat(t,[ve.R(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(Math.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.M(t.splice(0,16));return e.reset(),r}I(e,t,r,n){return e>19?e>39?e>59?e>79?void 0:t^r^n:t&r|t&n|r&n:t^r^n:t&r|~t&n}N(e,t){return t<<e|t>>>32-e}M(e){const t=this,r=t.D,n=Array(80);for(let t=0;16>t;t++)n[t]=e[t];let a=r[0],i=r[1],s=r[2],o=r[3],c=r[4];for(let e=0;79>=e;e++){16>e||(n[e]=t.N(1,n[e-3]^n[e-8]^n[e-14]^n[e-16]));const r=t.N(5,a)+t.I(e,i,s,o)+c+n[e]+t.O[Math.floor(e/20)]|0;c=o,o=s,s=t.N(30,i),i=a,a=r}r[0]=r[0]+a|0,r[1]=r[1]+i|0,r[2]=r[2]+s|0,r[3]=r[3]+o|0,r[4]=r[4]+c|0}},Se={importKey:e=>new Se.Z(ze.bytes.j(e)),W(e,t,r,n){if(r=r||1e4,0>n||0>r)throw Error("invalid params to pbkdf2");const a=1+(n>>5)<<2;let i,s,o,c,l;const f=new ArrayBuffer(a),d=new DataView(f);let u=0;const p=ve;for(t=ze.bytes.j(t),l=1;(a||1)>u;l++){for(i=s=e.encrypt(p.concat(t,[l])),o=1;r>o;o++)for(s=e.encrypt(s),c=0;c<s.length;c++)i[c]^=s[c];for(o=0;(a||1)>u&&o<i.length;o++)d.setInt32(u,i[o]),u+=4}return f.slice(0,n/8)},Z:class{constructor(e){const t=this,r=t.L=ke,n=[[],[]];t.B=[new r,new r];const a=t.B[0].blockSize/32;e.length>a&&(e=(new r).update(e).P());for(let t=0;a>t;t++)n[0][t]=909522486^e[t],n[1][t]=1549556828^e[t];t.B[0].update(n[0]),t.B[1].update(n[1]),t.Y=new r(t.B[0])}reset(){const e=this;e.Y=new e.L(e.B[0]),e.H=!1}update(e){this.H=!0,this.Y.update(e)}digest(){const e=this,t=e.Y.P(),r=new e.L(e.B[1]).update(t).P();return e.reset(),r}encrypt(e){if(this.H)throw Error("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Ee=typeof crypto!=F&&typeof crypto.getRandomValues==j,Re="Invalid password",Fe="Invalid signature",je=Fe,Ue="zipjs-abort-check-password";function Oe(e){if(Ee)return crypto.getRandomValues(e);throw Error("Crypto API not supported")}const De=16,Ce={name:"PBKDF2"},Ae=Object.assign({hash:{name:"HMAC"}},Ce),Te=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},Ce),Me=["deriveBits"],Pe=[8,12,16],Ie=[16,24,32],Ne=10,Ze=[0,0,0,0],We=typeof crypto!=F,Le=We&&crypto.subtle,Be=We&&typeof Le!=F,Ye=ze.bytes,He=class{constructor(e){const t=this;t.V=[[[],[],[],[],[]],[[],[],[],[],[]]],t.V[0][0][0]||t.G();const r=t.V[0][4],n=t.V[1],a=e.length;let i,s,o,c=1;if(4!==a&&6!==a&&8!==a)throw Error("invalid aes key size");for(t.O=[s=e.slice(0),o=[]],i=a;4*a+28>i;i++){let e=s[i-1];(i%a===0||8===a&&i%a===4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],i%a===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),s[i]=s[i-a]^e}for(let e=0;i;e++,i--){const t=s[3&e?i:i-4];o[e]=4>=i||4>e?t:n[0][r[t>>>24]]^n[1][r[t>>16&255]]^n[2][r[t>>8&255]]^n[3][r[255&t]]}}encrypt(e){return this.X(e,0)}decrypt(e){return this.X(e,1)}G(){const e=this.V[0],t=this.V[1],r=e[4],n=t[4],a=[],i=[];let s,o,c,l;for(let e=0;256>e;e++)i[(a[e]=e<<1^283*(e>>7))^e]=e;for(let f=s=0;!r[f];f^=o||1,s=i[s]||1){let i=s^s<<1^s<<2^s<<3^s<<4;i=i>>8^255&i^99,r[f]=i,n[i]=f,l=a[c=a[o=a[f]]];let d=16843009*l^65537*c^257*o^16843008*f,u=257*a[i]^16843008*i;for(let r=0;4>r;r++)e[r][f]=u=u<<24^u>>>8,t[r][i]=d=d<<24^d>>>8}for(let r=0;5>r;r++)e[r]=e[r].slice(0),t[r]=t[r].slice(0)}X(e,t){if(4!==e.length)throw Error("invalid aes block size");const r=this.O[t],n=r.length/4-2,a=[0,0,0,0],i=this.V[t],s=i[0],o=i[1],c=i[2],l=i[3],f=i[4];let d,u,p,m=e[0]^r[0],w=e[t?3:1]^r[1],h=e[2]^r[2],b=e[t?1:3]^r[3],y=4;for(let e=0;n>e;e++)d=s[m>>>24]^o[w>>16&255]^c[h>>8&255]^l[255&b]^r[y],u=s[w>>>24]^o[h>>16&255]^c[b>>8&255]^l[255&m]^r[y+1],p=s[h>>>24]^o[b>>16&255]^c[m>>8&255]^l[255&w]^r[y+2],b=s[b>>>24]^o[m>>16&255]^c[w>>8&255]^l[255&h]^r[y+3],y+=4,m=d,w=u,h=p;for(let e=0;4>e;e++)a[t?3&-e:e]=f[m>>>24]<<24^f[w>>16&255]<<16^f[h>>8&255]<<8^f[255&b]^r[y++],d=m,m=w,w=h,h=b,b=d;return a}},Ve=class{constructor(e,t){this.J=e,this.K=t,this._=t}reset(){this._=this.K}update(e){return this.$(this.J,e,this._)}ee(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,r=e>>8&255,n=255&e;255===t?(t=0,255===r?(r=0,255===n?n=0:++n):++r):++t,e=0,e+=t<<16,e+=r<<8,e+=n}return e}te(e){0===(e[0]=this.ee(e[0]))&&(e[1]=this.ee(e[1]))}$(e,t,r){let n;if(!(n=t.length))return[];const a=ve.v(t);for(let a=0;n>a;a+=4){this.te(r);const n=e.encrypt(r);t[a]^=n[0],t[a+1]^=n[1],t[a+2]^=n[2],t[a+3]^=n[3]}return ve.S(t,a)}},qe=Se.Z;let Ge=We&&Be&&typeof Le.importKey==j,Qe=We&&Be&&typeof Le.deriveBits==j;class Xe extends TransformStream{constructor({password:e,rawPassword:t,encryptionStrength:r,checkPasswordOnly:n,checkAuthenticationCode:a=!0}){super({start(){Ke(this,e,t,r)},async transform(e,t){const r=this,{password:a,strength:i,re:s,ready:o}=r;a?(await(async(e,t,r,n)=>{const a=await $e(e,t,r,tt(n,0,Pe[t])),i=tt(n,Pe[t]);if(a[0]!=i[0]||a[1]!=i[1])throw Error(Re)})(r,i,a,tt(e,0,Pe[i]+2)),e=tt(e,Pe[i]+2),n?t.error(Error(Ue)):s()):await o;const c=new Uint8Array(e.length-Ne-(e.length-Ne)%De);t.enqueue(_e(r,e,c,0,Ne,!0))},async flush(e){const{ne:t,ae:r,pending:n,ready:i}=this;if(r&&t){await i;const s=tt(n,0,n.length-Ne),o=tt(n,n.length-Ne);let c=U;if(s.length){const e=nt(Ye,s);r.update(e);const n=t.update(e);c=rt(Ye,n)}const l=tt(rt(Ye,r.digest()),0,Ne);let f=n.length<Ne?1:0;for(let e=0;Ne>e;e++)f|=l[e]^o[e];if(f&&a)throw Error(je);e.enqueue(c)}}})}}class Je extends TransformStream{constructor({password:e,rawPassword:t,encryptionStrength:r}){super({start(){Ke(this,e,t,r)},async transform(e,t){const r=this,{password:n,strength:a,re:i,ready:s}=r;let o=U;n?(o=await(async(e,t,r)=>{const n=Oe(new Uint8Array(Pe[t]));return ye(n,await $e(e,t,r,n))})(r,a,n),i()):await s;const c=new Uint8Array(o.length+e.length-e.length%De);c.set(o,0),t.enqueue(_e(r,e,c,o.length,0))},async flush(e){const{ne:t,ae:r,pending:n,ready:a}=this;if(r&&t){await a;let i=U;if(n.length){const e=t.update(nt(Ye,n));r.update(e),i=rt(Ye,e)}const s=rt(Ye,r.digest()).slice(0,Ne);e.enqueue(ye(i,s))}}})}}function Ke(e,t,r,n){Object.assign(e,{ready:new Promise(t=>e.re=t),password:et(t,r),strength:n-1,pending:U})}function _e(e,t,r,n,a,i){const{ne:s,ae:o,pending:c}=e;c.length&&(t=ye(c,t));const l=t.length-a;let f;for(r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new Uint8Array(t)).set(r,0)}return e})(r,n+(l-l%De)),f=0;l-De>=f;f+=De){const e=nt(Ye,tt(t,f,f+De));i&&o.update(e);const a=s.update(e);i||o.update(a),r.set(rt(Ye,a),f+n)}return e.pending=tt(t,f),r}async function $e(e,t,r,n){e.password=null;const a=await(async(e,t,r,n,a)=>{if(!Ge)return Se.importKey(t);try{return await Le.importKey("raw",t,r,!1,a)}catch{return Ge=!1,Se.importKey(t)}})(0,r,Ae,0,Me),i=await(async(e,t,r)=>{if(!Qe)return Se.W(t,e.salt,Te.iterations,r);try{return await Le.deriveBits(e,t,r)}catch{return Qe=!1,Se.W(t,e.salt,Te.iterations,r)}})(Object.assign({salt:n},Te),a,8*(2*Ie[t]+2)),s=new Uint8Array(i),o=nt(Ye,tt(s,0,Ie[t])),c=nt(Ye,tt(s,Ie[t],2*Ie[t])),l=tt(s,2*Ie[t]);return Object.assign(e,{keys:{key:o,ie:c,passwordVerification:l},ne:new Ve(new He(o),Array.from(Ze)),ae:new qe(c)}),l}function et(e,t){return t===E?be(e):t}function tt(e,t,r){return e.subarray(t,r)}function rt(e,t){return e.F(t)}function nt(e,t){return e.j(t)}class at extends TransformStream{constructor({password:e,rawPassword:t,passwordVerification:r,checkPasswordOnly:n}){super({start(){st(this,e,t,r)},transform(e,t){const r=this;if(r.password||r.rawPassword){const t=ot(r,e.subarray(0,12));if(r.password=r.rawPassword=null,0!=(t[11]^r.passwordVerification))throw Error(Re);e=e.subarray(12)}n?t.error(Error(Ue)):t.enqueue(ot(r,e))}})}}class it extends TransformStream{constructor({password:e,rawPassword:t,passwordVerification:r}){super({start(){st(this,e,t,r)},transform(e,t){const r=this;let n,a;if(r.password||r.rawPassword){r.password=r.rawPassword=null;const t=Oe(new Uint8Array(12));t[11]=r.passwordVerification,n=new Uint8Array(e.length+t.length),n.set(ct(r,t),0),a=12}else n=new Uint8Array(e.length),a=0;n.set(ct(r,e),a),t.enqueue(n)}})}}function st(e,t,r,n){Object.assign(e,{password:t,rawPassword:r,passwordVerification:n}),((e,t,r)=>{const n=[305419896,591751049,878082192];if(Object.assign(e,{keys:n,se:new we(n[0]),oe:new we(n[2])}),r)for(let t=0;t<r.length;t++)lt(e,r[t]);else for(let r=0;r<t.length;r++)lt(e,t.charCodeAt(r))})(e,t,r)}function ot(e,t){const r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=ft(e)^t[n],lt(e,r[n]);return r}function ct(e,t){const r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=ft(e)^t[n],lt(e,t[n]);return r}function lt(e,t){let[,r]=e.keys;e.se.append([t]);const n=~e.se.get();r=ut(Math.imul(ut(r+dt(n)),134775813)+1),e.oe.append([r>>>24]);const a=~e.oe.get();e.keys=[n,r,a]}function ft(e){const t=2|e.keys[2];return dt(Math.imul(t,1^t)>>>8)}function dt(e){return 255&e}function ut(e){return 4294967295&e}function pt(e){if(e instanceof ReadableStream)return e;const t=e.getReader();return new ReadableStream({async pull(e){const{value:r,done:n}=await t.read();n?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})}function mt(e){if(e instanceof WritableStream)return e;const t=e.getWriter();return new WritableStream({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const wt="Invalid uncompressed size",ht="Invalid compressed data",bt=Fe,yt="deflate-raw",gt="gzip",xt=[31,139,8];class vt extends TransformStream{constructor(e,{chunkSize:t,CompressionStreamZlib:r,CompressionStream:n}){super({});const{compressed:a,encrypted:i,useCompressionStream:s,zipCrypto:o,computeCrc32:c,level:l,deflate64:f,format:d,compressionMethod:u}=e,p=this;let m,w,h,b=super.readable;const y=d&&ae(d),g=c&&a&&!f&&!y&&(!i||o)&&!(!s||!n);if(i&&!o||!c||g||(m=new he,b=Ot(b,m)),a)if(y)b=Dt(b,jt(y.CompressionStream,d,{level:l,chunkSize:t,compressionMethod:u}));else if(g)h=new zt,b=Dt(b,new n(gt)),b=Ot(b,h);else try{b=Ut(b,s,{level:l,chunkSize:t},n,r)}catch(e){let t;try{t=new n(gt)}catch{throw e}b=Dt(b,t),b=Ot(b,new zt)}i&&(o?b=Ot(b,new it(e)):(w=new Je(e),b=Ot(b,w))),Ft(p,b,()=>{i&&!o||!c||(p.crc32=g?h.crc32:new DataView(m.value.buffer).getUint32(0))})}}class zt extends TransformStream{constructor(){let e,t=10,r=new Uint8Array(0);super({transform(e,n){if(t){const r=Math.min(t,e.length);if(t-=r,!(e=e.subarray(r)).length)return}const a=r.length+e.length;if(8>=a)return void(r=ye(r,e));const i=a-8,s=Math.min(i,r.length);n.enqueue(ye(r.subarray(0,s),e.subarray(0,i-s))),r=ye(r.subarray(s),e.subarray(i-s))},flush(){const t=xe(r);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class kt extends TransformStream{constructor(e,{chunkSize:t,DecompressionStreamZlib:r,DecompressionStream:n}){super({});const{zipCrypto:a,encrypted:i,checkCrc32:s,crc32:o,compressed:c,useCompressionStream:l,deflate64:f,format:d,compressionMethod:u,rawBitFlag:p,outputSize:m}=e;let w,h,b=super.readable;if(i&&(a?b=Ot(b,new at(e)):(h=new Xe(e),b=Ot(b,h))),c){const e=d&&ae(d);if(e)b=Dt(b,jt(e.DecompressionStream,d,{chunkSize:t,compressionMethod:u,rawBitFlag:p,uncompressedSize:m}));else try{b=Ut(b,l,{chunkSize:t,deflate64:f},n,r)}catch(e){if(f||m===E)throw e;let t;try{t=new n(gt)}catch{throw e}b=((e,t,r)=>{const n=new we;let a,i,s,o=0,c=!1;const l=new Promise((e,t)=>{i=e,s=t});l.catch(()=>{}),r||i();const f=new TransformStream({start(e){const t=new Uint8Array(10);t.set(xt),e.enqueue(t)},transform(e,t){t.enqueue(e)},async flush(e){c=!0,u();try{await l}finally{p()}const t=new Uint8Array(8),a=xe(t);a.setUint32(0,n.get(),!0),a.setUint32(4,r,!0),e.enqueue(t)},cancel(e){s(e)}}),d=new TransformStream({transform(e,t){n.append(e),o+=e.length,r>o?c&&u():i(),t.enqueue(e)},cancel(e){s(e)}});return e=Ot(e,f),Ot(e=Dt(e,t),d);function u(){p(),a=setTimeout(()=>s(Error(wt)),5e3)}function p(){clearTimeout(a)}})(b,t,m)}b=(e=>{const t=e.getReader();return new ReadableStream({async pull(e){let r;try{r=await t.read()}catch(e){if(e&&e.message)throw e;const t=Error(ht);throw t.cause=e,t}const{value:n,done:a}=r;a?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})})(b)}s&&(w=new he,b=Ot(b,w)),Ft(this,b,()=>{if(s){const e=new DataView(w.value.buffer);if(o!=e.getUint32(0,!1))throw Error(bt)}})}}const St=new Map;function Et(e,t){if(!e)return!1;let r=St.get(e);r||(r=new Map,St.set(e,r));let n=r.get(t);if(n===E){try{new e(t),n=!0}catch{n=!1}r.set(t,n)}return n}function Rt(e){return Et(e,yt)}function Ft(e,t,r){t=Ot(t,new TransformStream({flush:r})),Object.defineProperty(e,"readable",{get:()=>t})}function jt(e,t,r){if(!e)throw Error("Compression method not supported");return new e(t,r)}function Ut(e,t,r,n,a){const i=t&&n?n:a||n,s=r.deflate64?"deflate64-raw":yt;let o;try{o=new i(s,r)}catch(e){if(!t||!a||i==a)throw e;o=new a(s,r)}return Dt(e,o)}function Ot(e,t){return pt(e).pipeThrough(t)}function Dt(e,t){const r=t.writable.getWriter(),n=e.getReader();return(async()=>{try{for(;;){await r.ready;const e=await n.read();if(e.done){await r.close();break}await r.write(e.value)}}catch(e){await(async(e,t)=>{try{await e.abort(t)}catch{}})(r,e),await(async(e,t)=>{try{await e.cancel(t)}catch{}})(n,e)}})(),t.readable}const Ct="data",At="deflate",Tt="inflate";class Mt extends TransformStream{constructor(e,t){super({});const r=this,{codecType:n}=e;let a;n.startsWith(At)?a=vt:n.startsWith(Tt)&&(a=kt),r.outputSize=0;let i=0;const s=new a(e,t),o=super.readable,c=new TransformStream({transform(e,t){e&&e.length&&(i+=e.length,t.enqueue(e))},flush(){Object.assign(r,{inputSize:i})}}),l=new TransformStream({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==E&&r.outputSize>e.outputSize))throw Error(wt)},flush(){const{crc32:e}=s;Object.assign(r,{crc32:e,inputSize:i})}});Object.defineProperty(r,"readable",{get:()=>o.pipeThrough(c).pipeThrough(s).pipeThrough(l)})}}class Pt extends TransformStream{constructor(e){const t=[];let r=0;function n(){const n=new Uint8Array(e);let a=0;for(;e>a;){const r=t[0],i=e-a;r.length>i?(n.set(r.subarray(0,i),a),t[0]=r.subarray(i),a+=i):(n.set(r,a),a+=r.length,t.shift())}return r-=e,n}Number.isFinite(e)&&e>=1||(e=65536),super({transform(a,i){for(t.push(a),r+=a.length;r>e;)i.enqueue(n())},flush(e){r&&e.enqueue(((e,t)=>{const r=new Uint8Array(t);let n=0;for(const t of e)r.set(t,n),n+=t.length;return r})(t,r))}})}}const It={type:"module"},Nt="error";let Zt,Wt,Lt,Bt,Yt=!0;try{Yt=typeof structuredClone==j&&structuredClone(new DOMException("","AbortError")).code!==E}catch{}class Ht{constructor(e,{readable:t,writable:r},{options:n,config:a,ce:i,useWebWorkers:s,transferStreams:o,workerURI:c},l){const{signal:f}=i;return Object.assign(e,{le:!0,fe:(e.fe||0)+1,readable:t.pipeThrough(new Pt(M(a))).pipeThrough(new Vt(i),{signal:f}),writable:r,options:Object.assign({},n),workerURI:c,transferStreams:o,terminate:()=>new Promise(t=>{const{de:r,le:n}=e;r?(n?e.ue=t:(r.terminate(),t()),e.pe=null):t()}),me(){if(e.le){const{ue:t}=e;t&&(e.ue=null,e.we=!0,e.de.terminate(),t()),e.le=!1,l(e)}}}),Zt===E&&(Zt=typeof Worker!=F),(s&&Zt?Qt:Gt)(e,a)}}class Vt extends TransformStream{constructor({onstart:e,onprogress:t,size:r,onend:n}){let a=0;super({async start(){e&&await qt(e,r)},async transform(e,n){a+=e.length,t&&await qt(t,a,r),n.enqueue(e)},async flush(){n&&await qt(n,a)}})}}async function qt(e,...t){try{await e(...t)}catch{}}function Gt(e,t){return{run:()=>Xt(e,t)}}function Qt(e,t){const{baseURI:r,chunkSize:n,workerStartupTimeout:a}=t;let{wasmURI:i}=t;if(!e.pe){let s;typeof i==j&&(i=i());try{s=Kt(e.workerURI,r,e)}catch{return Zt=!1,Gt(e,t)}Object.assign(e,{de:s,he:!1,we:!1,pe:{run:async()=>{try{return await(async(e,t)=>{let r,n;const a=new Promise((e,t)=>{r=e,n=t});Object.assign(e,{reader:null,writer:null,be:r,ye:n,result:a});const{readable:i,options:s}=e,{writable:o,closed:c,ge:l}=(e=>{const t=new AbortController,{writable:r,readable:n}=new TransformStream,a=n.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return a.catch(()=>{}),{writable:r,closed:a,ge:()=>t.abort()}})(e.writable);let f;try{f=er({type:"start",options:s,config:t,readable:i,writable:o},e)}catch(t){l();try{await c}catch{}throw e.me(),t}f||Object.assign(e,{reader:i.getReader(),writer:o.getWriter()});const{workerStartupTimeout:d}=t;e.he||!Number.isFinite(d)||0>d||(e.xe=setTimeout(()=>(e=>{if(e.xe=null,e.he)return;const{ye:t,writer:r}=e;if(Jt(e),e.de=null,t){const e=Error("Worker startup timeout");e.ve=!0,t(e),r&&r.releaseLock()}})(e),d));try{const e=await a;return await u(),await c,e}catch(e){await u(),l();try{await c}catch{}throw e}async function u(){if(!f&&!o.locked)try{await o.getWriter().close()}catch{}}})(e,{chunkSize:n,wasmURI:i,baseURI:r,workerStartupTimeout:a})}catch(r){if(r&&r.ve){Zt=!1;const{reader:r}=e;return r&&r.releaseLock(),e.reader=null,e.writer=null,Xt(e,t)}throw r}}}})}return e.pe}async function Xt({options:e,readable:t,writable:r,me:n},a){let i;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(At),r=t?a.CompressionStreamZlib:a.DecompressionStreamZlib,n=t?a.CompressionStream:a.DecompressionStream;if(e.useCompressionStream){if(r&&r.ze&&!Rt(n))try{await void 0}catch{}}else try{await void 0}catch{r&&!r.ze||(e.useCompressionStream=!0)}}i=new Mt(e,a),await t.pipeThrough(i).pipeThrough(new Pt(M(a))).pipeTo(r,{preventClose:!0,preventAbort:!0});const{crc32:n,inputSize:s,outputSize:o}=i;return{crc32:n,inputSize:s,outputSize:o}}catch(e){throw i&&(e.outputSize=i.outputSize),e}finally{n()}}function Jt(e){const{de:t}=e;if(t)try{t.terminate()}catch{}e.pe=null}function Kt(e,t,r,n,a=!0){let i,s,o;if(Lt===E||Wt!==e){const c=typeof e==j;s=c?e(a):e;const l=s.startsWith("data:"),f=s.startsWith("blob:");if(l||f){n===E&&(n=!1),n&&(o=It);try{i=new Worker(s,o)}catch(a){if(f)try{URL.revokeObjectURL(s)}catch{}if(c&&f)return Kt(e,t,r,n,!1);if(n)throw a;return Kt(e,t,r,!0,!1)}}else{n===E&&(n=!0),n&&(o=It);try{s=new URL(s,t)}catch{}try{i=new Worker(s,o)}catch(i){if(n)throw i;return Kt(e,t,r,!1,a)}}Wt=e,Lt=s,Bt=o}else i=new Worker(Lt,Bt);return i.addEventListener("message",e=>{r.he=!0,_t(r),(async({data:e},t)=>{const{type:r,value:n,messageId:a,result:i,error:s}=e,{reader:o,writer:c,be:l,ye:f,me:d,fe:u}=t,p=()=>t.fe!=u;try{if(s){const{message:e,stack:t,code:r,name:n,outputSize:a,cause:i}=s,o=Error(e);Object.assign(o,{stack:t,code:r,name:n,outputSize:a}),i&&(o.cause=Object.assign(Error(i.message),{name:i.name})),m(o)}else{if("pull"==r){const{value:e,done:r}=await o.read();p()||er({type:Ct,value:e,done:r,messageId:a},t)}r==Ct&&(await c.ready,await c.write(new Uint8Array(n)),p()||er({type:"ack",messageId:a},t)),"close"==r&&m(null,i)}}catch(s){p()||(Jt(t),m(s))}function m(e,t){p()||(e?f(e):l(t),c&&c.releaseLock(),d())}})(e,r)}),i.addEventListener(Nt,e=>$t(e,r)),i.addEventListener("messageerror",e=>$t(e,r)),i}function _t(e){const{xe:t}=e;t&&(clearTimeout(t),e.xe=null)}function $t(e,t){e.preventDefault&&e.preventDefault(),_t(t);const{he:r,ye:n,writer:a,me:i}=t;if(Jt(t),r||(t.de=null),n){let t=e.error||Error(e.message||Nt);r||(t=Object.assign(Error(t.message||Nt),{ve:!0})),n(t),a&&a.releaseLock(),r&&i()}}function er(e,{de:t,writer:r,transferStreams:n,he:a}){try{const{value:r,readable:i,writable:s}=e,o=[];if(r&&(e.value=ge(r),o.push(e.value.buffer)),n&&Yt&&a?(i&&o.push(i),s&&o.push(s)):e.readable=e.writable=null,o.length)try{return t.postMessage(e,o),!0}catch{Yt=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw r&&r.releaseLock(),e}}let tr=[];const rr=[];let nr,ar,ir=0;async function sr(e,t){const{options:r,config:n}=t,{transferStreams:a,useWebWorkers:i,useCompressionStream:s,compressed:o,checkCrc32:c,computeCrc32:l,encrypted:f,format:d,codecURI:u}=r,{workerURI:p,maxWorkers:m}=n;d&&(u&&(r.codecURI=((e,t)=>{try{return new URL(e,t).toString()}catch{return e}})(u,n.baseURI)),await(async(e,t)=>{!ee.has(e)&&t&&ie(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))})(d,r.codecURI)),t.transferStreams=a||a===E&&n.transferStreams;const w=!(o||c||l||f),h=d===E||!!r.codecURI;return t.useWebWorkers=!w&&h&&(i||i===E&&n.useWebWorkers),t.workerURI=t.useWebWorkers&&p?p:E,r.useCompressionStream=s||s===E&&n.useCompressionStream,(await(async()=>{const r=tr.find(e=>!e.le);if(r)return dr(r),new Ht(r,e,t,b);if(tr.length<m){const r={ke:ir};return ir++,tr.push(r),new Ht(r,e,t,b)}return new Promise(r=>{rr.push({resolve:r,stream:e,Se:t}),ar=n.workerStarvationTimeout,or()})})()).run();function b(e){if(cr(),rr.length){const[{resolve:t,stream:r,Se:n}]=rr.splice(0,1);t(new Ht(e,r,n,b)),or()}else e.de?(dr(e),((e,t)=>{const{config:r}=t,{terminateWorkerTimeout:n}=r;Number.isFinite(n)&&n>=0&&(e.we?e.we=!1:e.Ee=setTimeout(async()=>{tr=tr.filter(t=>t!=e);try{await e.terminate()}catch{}},n))})(e,t)):tr=tr.filter(t=>t!=e)}}function or(){!nr&&rr.length&&Number.isFinite(ar)&&ar>=0&&(nr=setTimeout(lr,ar))}function cr(){nr&&(clearTimeout(nr),nr=null)}function lr(){if(nr=null,rr.length){const[{resolve:e,stream:t,Se:r}]=rr.splice(0,1),n=Object.assign({},r,{useWebWorkers:!1,workerURI:E});e(new Ht({},t,n,fr)),or()}}function fr(){cr(),or()}function dr(e){const{Ee:t}=e;t&&(clearTimeout(t),e.Ee=null)}async function ur(){await Promise.allSettled(tr.map(e=>(dr(e),e.terminate()))),Zt=E}const pr="HTTP error ",mr="HTTP Range not supported",wr="HTTP resource changed",hr="Writer iterator completed too soon",br="Writer not initialized",yr="Content-Range",gr="Range",xr="GET",vr="bytes",zr=16777216,kr="writable",Sr=Symbol();class Er{constructor(){this.size=0}init(){this.initialized=!0}}class Rr extends Er{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:r=M(T())}={}){const n=this;let a=0;return new ReadableStream({async pull(i){const s=t===E?r:Math.min(r,t-a),o=await ln(n,e+a,s);i.enqueue(o),a+r>t||t===E&&!o.length&&s?i.close():a+=r}})}}class Fr extends Er{constructor(){super();const e=this,t=new WritableStream({write(t){if(!e.initialized)throw Error(br);return e.writeUint8Array(ge(t))}});Object.defineProperty(e,kr,{get:()=>t})}writeUint8Array(){}}class jr extends Rr{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;Object.assign(this,{dataURI:e,Re:r,size:Math.floor(.75*(t-r))})}readUint8Array(e,t){const{Re:r,dataURI:n}=this,a=new Uint8Array(t),i=4*Math.floor(e/3),s=atob(n.substring(i+r,4*Math.ceil((e+t)/3)+r)),o=e-3*Math.floor(i/4);let c=0;for(let e=o;o+t>e&&e<s.length;e++)a[e-o]=s.charCodeAt(e),c++;return c<a.length?a.subarray(0,c):a}}class Ur extends Fr{constructor(e){super(),Object.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let r,n=t.pending;const a=t.pending.length;for(t.pending="",r=0;r<3*Math.floor((a+e.length)/3)-a;r++)n+=String.fromCharCode(e[r]);for(;r<e.length;r++)t.pending+=String.fromCharCode(e[r]);n.length>2?t.data+=btoa(n):t.pending=n+t.pending}getData(){return this.data+btoa(this.pending)}}let Or,Dr;class Cr extends Rr{constructor(e){super(),Object.assign(this,{blob:e,size:e.size}),Dr||(Dr=(async()=>{try{const e=new Blob([new Uint8Array(3)]).slice(1,2).stream().getReader();let t=0,r=await e.read();for(;!r.done;)t+=r.value.length,r=await e.read();Or=1==t}catch{Or=!1}})())}createReadable(e){const{blob:t,size:r}=this,{offset:n=0,size:a=r-n}=e||{};return n||r>a?Or?pt(t.slice(n,n+a).stream()):super.createReadable(e):pt(t.stream())}async readUint8Array(e,t){const r=this,n=e+t,a=e||n<r.size?r.blob.slice(e,n):r.blob;let i=await a.arrayBuffer();return i.byteLength>t&&(i=i.slice(e,n)),new Uint8Array(i)}}class Ar extends Er{constructor(e){super();const t=this,r=new TransformStream;if(Object.defineProperty(t,kr,{get:()=>r.writable}),typeof Blob.prototype.stream!=j||new Blob([]).stream()instanceof ReadableStream){const n=[];e&&n.push(["Content-Type",e]),t.blob=new Response(r.readable,{headers:n}).blob()}else{const n=[];t.blob=r.readable.pipeTo(new WritableStream({write(e){n.push(e)}})).then(()=>new Blob(n,{type:e}))}t.blob.catch(()=>{})}getData(){return this.blob}}class Tr extends Cr{constructor(e){super(new Blob([e],{type:"text/plain"}))}}class Mr extends Ar{constructor(e){super(e),Object.assign(this,{encoding:e,Fe:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,Fe:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new Promise((n,a)=>{Object.assign(t,{onload:({target:e})=>n(e.result),onerror:()=>a(t.error)}),t.readAsText(r,e)})}}}class Pr extends Rr{constructor(e,t){super(),Nr(this,e,t)}async init(){await Zr(this,Kr,Gr),super.init()}createReadable(e){const t=this,{useRangeHeader:r,forceRangeRequests:n,size:a}=t;if((r||n)&&a!==E){const{offset:r=0,size:n=a-r}=e||{};if(n>0&&a>r)return((e,t,r)=>{let n,a=t,i=0,s=r;return new ReadableStream({start:()=>o(),async pull(e){n||await o();const{value:t,done:r}=await n.read();if(r)throw Error(mr);const a=t.length>i?t.subarray(0,i):t;i-=a.length,s-=a.length,a.length&&e.enqueue(a),i||(await(async()=>{const e=n;n=E,await e.cancel()})(),s||e.close())},cancel:e=>n&&n.cancel(e)});async function o(){const t=Math.min(e.maximumRangeSize,s),r=await Kr(xr,e,Vr(e,a,t));if(206!=r.status)throw Error(mr);const o=r.headers.get(yr);if(o){const e=Number(o.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(e)&&e!=a)throw Error(mr)}Hr(e,r),Yr(e,r),a+=t,i=t,n=r.body.getReader()}})(t,r,Math.min(n,a-r))}return super.createReadable(e)}readUint8Array(e,t){return Wr(this,e,t,Kr,Gr)}}class Ir extends Rr{constructor(e,t){super(),Nr(this,e,t)}async init(){await Zr(this,_r,Qr),super.init()}readUint8Array(e,t){return Wr(this,e,t,_r,Qr)}}function Nr(e,t,r){const{preventHeadRequest:n,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:s,checkResourceChanges:o=!0,maximumRangeSize:c=zr,fetch:l}=r;delete(r=Object.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,Object.assign(e,{url:t,options:r,preventHeadRequest:n,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:s,checkResourceChanges:o,maximumRangeSize:c,fetch:l})}async function Zr(e,t,r){const{url:n,preventHeadRequest:a,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:o}=e;if((e=>{const{baseURI:t}=T(),{protocol:r}=new URL(e,t);return"http:"==r||"https:"==r})(n)&&(i||s)&&(void 0===a||a)){const n=await t(xr,e,Vr(e,o?-22:void 0)),a=n.headers.get("Accept-Ranges");if(!(s||a&&a.toLowerCase()==vr))throw Error(mr);{if(o){const t=new Uint8Array(await n.arrayBuffer());206==n.status&&t.length==f&&(e.je=t)}Yr(e,n);const a=Lr(n);a===E?await Jr(e,t,r):e.size=a}}else await Jr(e,t,r)}async function Wr(e,t,r,n,a){const{useRangeHeader:i,forceRangeRequests:s,je:o,size:c,options:l}=e;if(i||s){if(o&&t==c-f&&r==f)return o;if(c>t&&0!==r){t+r>c&&(r=c-t);const a=await n(xr,e,Vr(e,t,r));if(206!=a.status)throw Error(mr);const i=a.headers.get(yr);if(i){const e=Number(i.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(e)&&e!=t)throw Error(mr)}Hr(e,a),Yr(e,a);const s=new Uint8Array(await a.arrayBuffer());if(s.length!=r)throw Error(mr);return s}return U}{const{data:n}=e;return n||await a(e,l),e.data.subarray(t,t+r)}}function Lr(e){const t=e.headers.get(yr);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=Number(e);if(!Number.isNaN(t))return t}}}function Br({headers:e}){return{Ue:e.get("Etag")||E,lastModified:e.get("Last-Modified")||E}}function Yr(e,t){const{checkResourceChanges:r,Oe:n}=e;r&&!n&&206==t.status&&(e.Oe=Br(t))}function Hr(e,t){const{checkResourceChanges:r,Oe:n,size:a}=e;if(r){const e=Lr(t);if(e!==E&&a!==E&&e!=a)throw Error(wr);if(n){const e=Br(t);if(Object.entries(n).some(([t,r])=>r!==E&&e[t]!==E&&r!=e[t]))throw Error(wr)}}}function Vr(e,t=0,r=1){return Object.assign({},qr(e),{[gr]:vr+"="+(0>t?t:t+"-"+(t+r-1))})}function qr({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?Object.fromEntries(t):t}async function Gr(e){await Xr(e,Kr)}async function Qr(e){await Xr(e,_r)}async function Xr(e,t){const r=await t(xr,e,qr(e));e.data=new Uint8Array(await r.arrayBuffer()),e.size=e.data.length}async function Jr(e,t,r){if(e.preventHeadRequest)await r(e,e.options);else{const n=await t("HEAD",e,qr(e)),a=n.headers.get("Content-Length");a&&!n.headers.get("Content-Encoding")?e.size=Number(a):await r(e,e.options)}}async function Kr(e,{fetch:t=fetch,options:r,url:n},a){const i=await t(n,Object.assign({},r,{method:e,headers:a}));if(400>i.status)return i;throw 416==i.status?Error(mr):Error(pr+(i.statusText||i.status))}function _r(e,{url:t},r){return new Promise((n,a)=>{const i=new XMLHttpRequest;if(i.addEventListener("load",()=>{if(400>i.status){const e=[];i.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const r=t.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(r)}),n({status:i.status,arrayBuffer:()=>i.response,headers:new Map(e)})}else a(416==i.status?Error(mr):Error(pr+(i.statusText||i.status)))},!1),i.addEventListener("error",e=>a(e.detail?e.detail.error:Error("Network error")),!1),i.open(e,t),r)for(const e of Object.entries(r))i.setRequestHeader(e[0],e[1]);i.responseType="arraybuffer",i.send()})}class $r extends Rr{constructor(e,t={}){super(),Object.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Ir(e,t):new Pr(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 en extends $r{constructor(e,t={}){super(e,Object.assign({},t,{useRangeHeader:!0}))}}class tn extends Rr{constructor(e){super(),e=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),Object.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class rn extends Fr{constructor(e){super(),this.defaultBufferSize=e||262144}init(e=0){Object.assign(this,{offset:0,array:new Uint8Array(e>0?e:this.defaultBufferSize)}),super.init()}writeUint8Array(e){const t=this,r=t.offset+e.length;if(r>t.array.length){let e=t.array.length?2*t.array.length:t.defaultBufferSize;for(;r>e;)e*=2;const n=t.array;t.array=new Uint8Array(e),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.array.length?this.array:this.array.slice(0,this.offset)}}class nn extends Rr{constructor(e){super(),this.De=e}async init(){const e=this,{De:t}=e;e.Ce=0,await Promise.all(t.map(e=>cn(e))),e.Ae=t.map(t=>{const r=e.size;return e.size+=t.size,r}),super.init()}Te(e){const{Ae:t,size:r}=this,n=t[e];return n===E?r:n}async readUint8Array(e,t){const r=this,{De:n}=this;let a,i=0,s=e;for(;n[i]&&s>=n[i].size;)s-=n[i].size,i++;const o=n[i];if(o){const n=o.size;if(s+t>n){const i=n-s;a=ye(await ln(o,s,i),await r.readUint8Array(e+i,t-i))}else a=await ln(o,s,t)}else a=U;return r.Ce=Math.max(i,r.Ce),a}}class an extends Er{constructor(e,t=4294967295){super();const r=this;let n,a,i;Object.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const s=new WritableStream({async write(t){if(t===Sr)return void(i&&await c());const{availableSize:s}=r;if(i)t.length<s?await o(t):(await o(t.subarray(0,s)),await c(),t.length>s&&await this.write(t.subarray(s)));else{const{value:s,done:o}=await e.next();if(o&&!s)throw Error(hr);n=s,n.size=0,n.maxSize&&(r.maxSize=n.maxSize),r.availableSize=r.maxSize,await cn(n),a=s.writable,i=a.getWriter(),await this.write(t)}},async close(){i&&(await i.ready,await l())},async abort(e){i&&await i.abort(e)}});async function o(e){const t=e.length;t&&(await i.ready,await i.write(e),n.size+=t,r.availableSize-=t)}async function c(){await l(),r.diskOffset+=n.size,r.diskNumber++,i=null,r.availableSize=r.maxSize}async function l(){await i.close()}Object.defineProperty(r,kr,{get:()=>s})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(Sr)}finally{e.releaseLock()}}}class sn{constructor(e){return Array.isArray(e)&&(e=new nn(e)),(e instanceof ReadableStream||typeof e.getReader==j)&&(e={readable:pt(e)}),e}}class on{constructor(e){return e.writable===E&&typeof e.next==j&&(e=new an(e)),(e instanceof WritableStream||typeof e.getWriter==j)&&(e={writable:mt(e)}),e.size===E&&(e.size=0),e}}async function cn(e,t){if(!e.init||e.initialized)return Promise.resolve();await e.init(t)}function ln(e,t,r){return e.readUint8Array(t,r)}const fn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function dn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let r=0;r<e.length;r++)t+=fn[e[r]];return t}})(e):new TextDecoder(t,{ignoreBOM:!0}).decode(e)}const un="filename",pn="rawFilename",mn="comment",wn="rawComment",hn="uncompressedSize",bn="compressedSize",yn="offset",gn="diskNumberStart",xn="lastModDate",vn="rawLastModDate",zn="lastAccessDate",kn="rawLastAccessDate",Sn="creationDate",En="rawCreationDate",Rn="internalFileAttributes",Fn="externalFileAttributes",jn="msdosAttributesRaw",Un="msdosAttributes",On="msDosCompatible",Dn="zip64",Cn="encrypted",An="version",Tn="versionMadeBy",Mn="zipCrypto",Pn="directory",In="executable",Nn="compressionMethod",Zn="signature",Wn="extraField",Ln="unixMode",Bn="setuid",Yn="setgid",Hn="sticky",Vn=[un,pn,hn,bn,xn,vn,mn,wn,zn,kn,Sn,En,yn,gn,Rn,Fn,jn,Un,On,Dn,Cn,An,Tn,Mn,Pn,In,Nn,Zn,"crc32",Wn,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",Ln,Bn,Yn,Hn,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class qn{constructor(e){Vn.forEach(t=>this[t]=e[t])}}const Gn="password",Qn="rawPassword",Xn="passThrough",Jn="signal",Kn="checkAmbiguity",_n="useWebWorkers",$n="useCompressionStream",ea="transferStreams",ta="preventClose",ra="offset",na="usdz",aa="strictness",ia="strict",sa="tolerant",oa="File format is not recognized",ca="End of central directory not found",la="End of Zip64 central directory locator not found",fa="Central directory header not found",da="Local file header not found",ua="Zip64 extra field not found",pa="File contains encrypted entry",ma="Encryption method not supported",wa="Compression method not supported",ha="Split zip file",ba="Overlapping entry found",ya="Ambiguous archive",ga="Encrypted central directory is not supported",xa="utf-8",va="cp437",za=[[hn,e],[bn,e],[yn,e],[gn,t]],ka={[t]:{Me:Ja,bytes:4},[e]:{Me:Ka,bytes:8}};class Sa{constructor(e,t={}){Object.assign(this,{reader:new sn(e),options:t,config:T(),Pe:new Map})}async*getEntriesGenerator(n={}){const i=this;let{reader:o}=i;const{config:u}=i;if(await cn(o),o.size!==E&&o.readUint8Array||(o=new Cr(await new Response(o.readable).blob()),await cn(o)),o.size<f)throw Error(oa);const p=Ma(Va(i,n,aa),Va(i,n,Kn)),m=p==ia,w=p!=sa,h=((e,r)=>e!==E?e:r==ia?0:r==sa?1/0:t)(Va(i,n,"maxAppendedDataSize"),p),{Ie:b,Ne:z}=await(async(e,t,r)=>{const{size:n}=e,a=Math.min(n,65557),i={count:Pa};let s,o,c=0;for await(const[r,l,d,u,p]of Wa(e,a)){const a=Xa(r,u+20);if(p+f+a==n){const a=await Ba(e,r,l,u,p,n,i);if(a==Za){if(s||(s=La(d,u,p)),c++,!t||c>1)break}else a!=Na||o||(o=La(d,u,p))}}return s||(s=o),s||(s=await(async(e,t,r)=>{const{size:n}=e,a=Math.min(n,t==1/0?n:65557+t);let i,s;for await(const[t,o,c,l,f]of Wa(e,a)){const a=La(c,l,f);i||(i=a);const d=await Ba(e,t,o,l,f,n,r);if(d==Za)return a;d!=Na||s||(s=a)}return s||i})(e,r,i)),{Ie:s,Ne:c}})(o,w,h);if(!b)throw Ja(xe(await ln(o,0,4)))==a?Error(ha):Error(ca);w&&z>1&&Ha("multiple end of central directory records");const k=xe(b);let S=Ja(k,12),R=Ja(k,16);const F=b.offset,j=Xa(k,20),O=F+f+j;o.size-O>h&&Ha("appended data");let D=Xa(k,4);const C=o.Ce||0;let A,T,M,P=Xa(k,6),I=Xa(k,10),N=0;const Z=R==e||S==e||I==t||P==t;if(R!=e&&P!=t&&(R+=Ta(o,P)),Z){const r=b.offset<d?U:await ln(o,b.offset-d,d),n=xe(r);if(r.length==d&&Ja(n,0)==l){R=Ta(o,Ja(n,4))+Ka(n,8);let r=await ln(o,R,56),a=xe(r);const i=b.offset-d-56;if((56>r.length||Ja(a,0)!=c)&&R!=i&&i>=0){const e=R;R=i,R>e&&(N=R-e),r=await ln(o,R,56),a=xe(r)}if(56>r.length||Ja(a,0)!=c)throw Error(la);T=!0,M=Ka(a,4)>44,D==t?D=Ja(a,16):m&&D!=Ja(a,16)&&Ha("mismatched zip64 end of central directory record"),P==t?P=Ja(a,20):m&&P!=Ja(a,20)&&Ha("mismatched zip64 end of central directory record"),I==t?I=Ka(a,32):m&&I!=Ka(a,32)&&Ha("mismatched zip64 end of central directory record"),S==e?S=Ka(a,40):m&&S!=Ka(a,40)&&Ha("mismatched zip64 end of central directory record"),R=Ta(o,P)+Ka(a,48)+N}}const W=S,L=b.offset-(T?76:0);if(R<o.size||(N=o.size-R-S-f,R=o.size-S-f),C!=D)throw Error(ha);if(0>R)throw Error(oa);let B=0,Y=await ln(o,R,S),H=xe(Y);if(S){if(4>Y.length)throw Error(oa);const e=L-S;if(R!=e&&P==D){let t=!(Ja(H,B)==s);if(t||0>e||e+4>o.size||(t=Ja(xe(await ln(o,e,4)),0)==s),t){const t=R;R=e,R>t&&(N+=R-t),Y=await ln(o,R,S),H=xe(Y)}}}const V=L-R;if(S==V||0>V||P!=D||(S=V,Y=await ln(o,R,S),H=xe(Y)),0>R||R>=o.size)throw Error(oa);A=R;const q=Va(i,n,"filenameEncoding"),G=Va(i,n,"commentEncoding"),Q=m?new Set:E;let X;for(let e=0;I>e;e++){const a=new Ra(o,u,i.options);if(B+46>Y.length||Ja(H,B)!=s){if(0==e&&(M||Fa(H)))throw Error(ga);throw Error(fa)}ja(a,H,B+6);const c=!!a.bitFlag.languageEncodingFlag,l=B+46,f=l+a.filenameLength,d=f+a.extraFieldLength,p=Xa(H,B+4),w=!(p>>8),h=p>>8==3,b=Y.subarray(l,f),z=Xa(H,B+32),k=d+z,S=Y.subarray(d,k),R=c,F=c,j=Ja(H,B+38),U=j&r,O={readOnly:!!(1&U),hidden:!!(2&U),system:!!(4&U),directory:!!(16&U),archive:!!(32&U)},D=Ja(H,B+42),C=Va(i,n,"decodeText")||dn,T=R?xa:q||va,P=F?xa:G||va;let Z=C(b,T);Z===E&&(Z=dn(b,T));let W=C(S,P);W===E&&(W=dn(S,P)),Object.assign(a,{index:e,versionMadeBy:p,msDosCompatible:w,compressedSize:0,uncompressedSize:0,Ze:z,offset:D,diskNumberStart:Xa(H,B+34),internalFileAttributes:Xa(H,B+36),externalFileAttributes:j,msdosAttributesRaw:U,msdosAttributes:O,rawFilename:b,filenameUTF8:R,commentUTF8:F,rawExtraField:Y.subarray(f,d),rawComment:S,filename:Z,comment:W}),Ua(a,a,H,B+6),a.offset+=N,A=Math.min(Ta(o,a.diskNumberStart)+a.offset,A),m&&(Q.has(a.filename)&&(X=!0),Q.add(a.filename));const L=a.externalFileAttributes>>16&t;a.unixMode===E&&16877&L&&(a.unixMode=L);const V=!!(a.unixMode&g),J=!!(a.unixMode&x),K=!!(512&a.unixMode),_=a.unixMode!==E?!!(73&a.unixMode):h&&!!(73&L),$=a.unixMode!==E&&(61440&a.unixMode)==y,ee=(61440&L)==y;Object.assign(a,{setuid:V,setgid:J,sticky:K,unixExternalUpper:L,internalFileAttribute:a.internalFileAttributes,externalFileAttribute:a.externalFileAttributes,executable:_,directory:$||ee||w&&O.directory||a.filename.endsWith(v)&&!a.uncompressedSize,zipCrypto:a.encrypted&&!a.extraFieldAES});const te=new qn(a);te.getData=(e,t)=>a.getData(e,te,i.Pe,t),te.arrayBuffer=async e=>{const t=new TransformStream,[r]=await Promise.all([new Response(t.readable).arrayBuffer(),a.getData(t,te,i.Pe,e)]);return r},B=k;const{onprogress:re}=n;if(re)try{await re(e+1,I,new qn(a))}catch{}yield te}m&&B!=W&&Ha("trailing central directory data"),X&&Ha("duplicate filename"),m&&(N||I&&A>0)&&Ha("prepended data");const J=Va(i,n,"extractPrependedData"),K=Va(i,n,"extractAppendedData");return J&&(i.prependedData=A>0?await ln(o,0,A):U),i.comment=j?await ln(o,F+f,j):U,K&&(i.appendedData=O<o.size?await ln(o,O,o.size-O):U),!0}async getEntries(e={}){const t=[];for await(const r of this.getEntriesGenerator(e))t.push(r);return t}async close(){}}class Ea{constructor(e={}){const{readable:t,writable:r}=new TransformStream,n=new Sa(t,e).getEntriesGenerator();this.readable=new ReadableStream({async pull(e){const{done:t,value:r}=await n.next();if(t)return e.close();const a={...r,readable:(()=>{const{readable:e,writable:t}=new TransformStream;if(r.getData)return(async()=>{try{await r.getData(t)}catch(e){try{await t.abort(e)}catch{}}})(),e})()};delete a.getData,e.enqueue(a)}}),this.writable=r}}let Ra=class{constructor(e,t,r){Object.assign(this,{reader:e,config:t,options:r})}async getData(e,t,a,s={}){const o=this,{reader:c,index:l,offset:f,diskNumberStart:d,extraFieldAES:u,extraFieldZip64:p,compressionMethod:m,config:w,bitFlag:h,rawBitFlag:b,crc32:y,rawLastModDate:g,uncompressedSize:x,compressedSize:v}=o,{dataDescriptor:k}=h,S=t.localDirectory={},R=Ta(c,d)+f,F=await ln(c,R,z),j=xe(F);let O=Va(o,s,Gn),D=Va(o,s,Qn);const C=Va(o,s,Xn);if(O=O&&O.length&&O,D=D&&D.length&&D,u&&99!=u.originalCompressionMethod)throw Error(wa);if(F.length<z||Ja(j,0)!=n)throw Error(da);ja(S,j,4);const{extraFieldLength:A,filenameLength:T}=S,M=Ma(Va(o,s,aa),Va(o,s,Kn))==ia;let P=U;if(M&&(T||A)){const e=await ln(c,R+z,T+A);P=e.subarray(0,T),S.rawExtraField=e.subarray(T)}else S.rawExtraField=A?await ln(c,R+z+T,A):U;Ua(o,S,j,4,!0),M&&((e,t,r)=>{const{rawFilename:n}=e;(r.length!=n.length||r.some((e,t)=>e!=n[t]))&&Ha("mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&Ha("mismatched local file header (general purpose bit flag)"),t.compressionMethod!=e.compressionMethod&&Ha("mismatched local file header (compression method)"),t.bitFlag.dataDescriptor||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||Ha("mismatched local file header (crc32 or sizes)")})(o,S,P);const{lastAccessDate:I,creationDate:N}=S;I&&(t.lastAccessDate=I),N&&(t.creationDate=N);const Z=o.encrypted&&S.encrypted&&!C,W=Z&&!u;if(C||(t.zipCrypto=W),Z&&!(64&~S.rawBitFlag))throw Error(ma);const L=C?E:ne(m);if(0!=m&&8!=m&&9!=m&&!L&&!C)throw Error(wa);if(Z){if(!W&&(1>u.strength||u.strength>3))throw Error(ma);if(!O&&!D)throw Error(pa)}const B=R+z+T+A,Y=v,H=pt(c.createReadable({offset:B,size:Y})),V=Va(o,s,Jn),q=Va(o,s,"checkPasswordOnly");let G=Va(o,s,"checkOverlappingEntry");const Q=Va(o,s,"checkOverlappingEntryOnly");Q&&(G=!0);const{onstart:X,onprogress:J,onend:K}=s,_=9==m;let $=Va(o,s,$n);_&&($=!1);const ee=Va(o,s,"checkCrc32"),te=(ee===E?Va(o,s,"checkSignature"):ee)&&!C&&(!Z||W||u&&1==u.vendorVersion),re={options:{codecType:Tt,password:O,rawPassword:D,zipCrypto:W,encryptionStrength:u&&u.strength,checkCrc32:te,checkAuthenticationCode:Va(o,s,"checkAuthenticationCode"),passwordVerification:W&&(k?g>>>8&r:y>>>24&r),outputSize:C?v:x,crc32:y,compressed:0!=m&&!C,encrypted:Z,useWebWorkers:Va(o,s,_n),useCompressionStream:$,transferStreams:Va(o,s,ea),deflate64:_,format:L?L.format:E,codecURI:L?L.codecURI:E,compressionMethod:m,rawBitFlag:b,checkPasswordOnly:q},config:w,ce:{signal:V,size:Y,onstart:X,onprogress:J,onend:K}};let ae;G&&await(async({reader:e,We:t,index:r,offset:n,crc32:a,compressedSize:s,uncompressedSize:o,Le:c,dataDescriptor:l,extraFieldZip64:f,Pe:d})=>{let u=0;if(l&&(u=f?20:12),u){const r=await ln(e,c+s,u+4);if(r.length==u+4&&Ja(xe(r),0)==i){const e=Ja(xe(r),4);let n,i;f?(n=Ka(xe(r),8),i=Ka(xe(r),16)):(n=Ja(xe(r),8),i=Ja(xe(r),12)),(t.encrypted&&!t.zipCrypto||e==a)&&n==s&&i==o&&(u+=4)}}const p={start:n,end:c+s+u,We:t};for(const[e,t]of d)if(e!=r&&p.start<t.end&&t.start<p.end){const e=Error(ba);throw e.Be=t.We,e}d.set(r,p)})({reader:c,We:t,index:l,offset:R,crc32:y,compressedSize:v,uncompressedSize:x,Le:B,dataDescriptor:k||S.bitFlag.dataDescriptor,extraFieldZip64:p||S.extraFieldZip64,Pe:a});try{if(!Q){q&&(e=new WritableStream),e=new on(e),await cn(e,C?v:x),({writable:ae}=e);const{outputSize:t}=await sr({readable:H,writable:ae},re);if(e.size+=t,t!=(C?v:x))throw Error(wt)}}catch(t){if(t.outputSize!==E&&(e.size+=t.outputSize),!q||t.message!=Ue)throw t}finally{Va(o,s,ta)||!ae||ae.locked||await ae.getWriter().close()}return q||Q?E:e.getData?e.getData():ae}};function Fa(e){const t=Math.min(e.byteLength,1024)-3;for(let r=0;t>r;r++)if(134630224==Ja(e,r))return!0;return!1}function ja(e,t,r){const n=e.rawBitFlag=Xa(t,r+2),a=!(1&~n),i=Ja(t,r+6);Object.assign(e,{encrypted:a,version:Xa(t,r),bitFlag:{level:(6&n)>>1,dataDescriptor:!(8&~n),languageEncodingFlag:(n&b)==b},rawLastModDate:i,lastModDate:qa(i),filenameLength:Xa(t,r+22),extraFieldLength:Xa(t,r+24)})}function Ua(e,t,r,n,a){const{rawExtraField:i}=t,s=t.extraField=new Map,o=xe(i);let c=0;try{for(;c<i.length;){const e=Xa(o,c),t=Xa(o,c+2);s.set(e,{type:e,data:i.slice(c+4,c+4+t)}),c+=4+t}}catch{}const l=Xa(r,n+4);Object.assign(t,{signature:Ja(r,n+10),crc32:Ja(r,n+10),compressedSize:Ja(r,n+14),uncompressedSize:Ja(r,n+18)});const f=s.get(1);f&&(((e,t)=>{t.zip64=!0;const r=xe(e.data),n=za.filter(([e,r])=>t[e]==r),a=n.reduce((e,[,t])=>e+ka[t].bytes,0);if(e.data.length<a)throw Error(ua);for(let a=0,i=0;a<n.length;a++){const[s,o]=n[a],c=ka[o];t[s]=e[s]=c.Me(r,i),i+=c.bytes}})(f,t),t.extraFieldZip64=f);const d=s.get(28789);d&&(Oa(d,un,pn,t,e),t.extraFieldUnicodePath=d);const b=s.get(25461);b&&(Oa(b,mn,wn,t,e),t.extraFieldUnicodeComment=b);const y=s.get(u);y&&y.data.length>=7?(((e,t,r)=>{const n=xe(e.data),a=Qa(n,4);Object.assign(e,{vendorVersion:Qa(n,0),vendorId:Qa(n,2),strength:a,originalCompressionMethod:r,compressionMethod:Xa(n,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=E)})(y,t,l),t.extraFieldAES=y):t.compressionMethod=l;const g=s.get(13);g&&(Da(g,t),t.extraFieldPkwareUnix=g);const x=s.get(22613);x&&(Da(x,t),t.extraFieldUnixType1=x);const v=s.get(10);v&&(((e,t)=>{const r=xe(e.data);let n,a=4;try{for(;a<e.data.length&&!n;){const t=Xa(r,a),i=Xa(r,a+2);1==t&&(n=e.data.slice(a+4,a+4+i)),a+=4+i}}catch{}if(n&&24==n.length){const r=xe(n),a=r.getBigUint64(0,!0),i=r.getBigUint64(8,!0),s=r.getBigUint64(16,!0);Object.assign(e,{rawLastModDate:a,rawLastAccessDate:i,rawCreationDate:s});const o={lastModDate:Ga(a),lastAccessDate:Ga(i),creationDate:Ga(s)};Object.assign(e,o),Object.assign(t,o)}})(v,t),t.extraFieldNTFS=v);const z=s.get(h);if(z)Ca(z,t,!1),t.extraFieldUnix=z;else{const e=s.get(w);e&&(Ca(e,t,!0),t.extraFieldInfoZip=e)}const k=s.get(p);k&&(((e,t,r)=>{if(!e.data.length)return;const n=xe(e.data),a=Qa(n,0),i=[],s=[];r?(1&~a||(i.push(xn),s.push(vn)),2&~a||(i.push(zn),s.push(kn)),4&~a||(i.push(Sn),s.push(En))):5>e.data.length||(i.push(xn),s.push(vn));let o=1;i.forEach((r,a)=>{if(e.data.length>=o+4){const i=Ja(n,o);t[r]=e[r]=new Date(1e3*(0|i));const c=s[a];e[c]=i}o+=4})})(k,t,a),t.extraFieldExtendedTimestamp=k);const S=s.get(m);S&&(t.extraFieldUSDZ=S)}function Oa(e,t,r,n,a){if(5>e.data.length)return void(e.valid=!1);const i=xe(e.data),s=new we;s.append(a[r]);const o=xe(new Uint8Array(4));o.setUint32(0,s.get(),!0);const c=Ja(i,1);Object.assign(e,{version:Qa(i,0),[t]:dn(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&c==Ja(o,0)}),e.valid&&(n[t]=e[t],n[t+"UTF8"]=!0)}function Da(e,t){if(8>e.data.length)return;const r=xe(e.data),n={lastAccessDate:new Date(1e3*Ja(r,0)),lastModDate:new Date(1e3*Ja(r,4))};12>e.data.length||(n.uid=Xa(r,8),n.gid=Xa(r,10)),Object.assign(e,n),Object.assign(t,n)}function Ca(e,t,r){try{const n=xe(e.data);let a,i;if(r){let t=0;const r=Qa(n,t++),s=Qa(n,t++);a=Aa(e.data.subarray(t,t+s)),t+=s;const o=Qa(n,t++);i=Aa(e.data.subarray(t,t+o)),Object.assign(e,{version:r,uid:a,gid:i})}else 4>e.data.length||(a=Xa(n,0),i=Xa(n,2),Object.assign(e,{uid:a,gid:i}));a!==E&&(t.uid=a),i!==E&&(t.gid=i)}catch{}}function Aa(e){const t=new Uint8Array(4);return t.set(e,0),new DataView(t.buffer,t.byteOffset,4).getUint32(0,!0)}function Ta(e,t){return e.Te?e.Te(t):0}function Ma(e,t){return e===E?t?ia:"balanced":e}const Pa=64,Ia=0,Na=1,Za=2;async function*Wa(e,t){const r=e.size-t,n=await ln(e,r,t),a=xe(n);for(let e=n.length-f;e>=0;e--)Ja(a,e)==o&&(yield[a,r,n,e,r+e])}function La(e,t,r){return{offset:r,buffer:e.slice(t,t+f).buffer}}async function Ba(r,n,a,i,o,c,f){const u=Xa(n,i+10),p=Ja(n,i+12),m=Ja(n,i+16);if(u==t||p==e||m==e)return await Ya(r,n,a,o-d,c,f)==l?Za:Ia;if(!u&&!p)return Na;const w=Xa(n,i+6);for(const e of[o-p,Ta(r,w)+m])if(await Ya(r,n,a,e,c,f)==s)return Za;return Ia}async function Ya(e,t,r,n,a,i){return 0>n||n+4>a?E:r>n?i.count>0?(i.count--,Ja(xe(await ln(e,n,4)),0)):E:Ja(t,n-r)}function Ha(e){const t=Error(ya);throw t.reason=e,t}function Va(e,t,r){return t[r]===E?e.options[r]:t[r]}function qa(e){const r=(4294901760&e)>>16,n=e&t;return new Date(1980+((65024&r)>>9),((480&r)>>5)-1,31&r,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}function Ga(e){return new Date(Number(e/BigInt(1e4)-BigInt(116444736e5)))}function Qa(e,t){return e.getUint8(t)}function Xa(e,t){return e.getUint16(t,!0)}function Ja(e,t){return e.getUint32(t,!0)}function Ka(e,t){return Number(e.getBigUint64(t,!0))}var _a=Object.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:ya,ERR_BAD_FORMAT:oa,ERR_CENTRAL_DIRECTORY_NOT_FOUND:fa,ERR_ENCRYPTED:pa,ERR_ENCRYPTED_CENTRAL_DIRECTORY:ga,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:la,ERR_EOCDR_NOT_FOUND:ca,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:ua,ERR_INVALID_AUTHENTICATION_CODE:je,ERR_INVALID_COMPRESSED_DATA:ht,ERR_INVALID_CRC32:bt,ERR_INVALID_PASSWORD:Re,ERR_INVALID_SIGNATURE:Fe,ERR_INVALID_UNCOMPRESSED_SIZE:wt,ERR_LOCAL_FILE_HEADER_NOT_FOUND:da,ERR_OVERLAPPING_ENTRY:ba,ERR_SPLIT_ZIP_FILE:ha,ERR_UNSUPPORTED_COMPRESSION:wa,ERR_UNSUPPORTED_ENCRYPTION:ma,ZipReader:Sa,ZipReaderStream:Ea});const $a="File already exists",ei="Zip file comment exceeds 64KB",ti="File entry comment exceeds 64KB",ri="File entry name exceeds 64KB",ni="Version exceeds 65535",ai="The strength must equal 1, 2, or 3",ii="Encryption is not supported in USDZ files",si="Extra field type exceeds 65535",oi="Extra field data exceeds 64KB",ci=-2147483648,li=2147483647,fi=BigInt(0),di=BigInt("0x7fffffffffffffff"),ui="Zip64 is not supported (set the 'zip64' option to 'true')",pi="Undefined uncompressed size",mi="Undefined reader",wi="Zip file not empty",hi=new Uint8Array([7,0,2,0,65,69,3,0,0]),bi="infozip",yi="unix";let gi=0;const xi=[];class vi{constructor(e,t={}){e=new on(e);const{availableSize:r=R,maxSize:n=R}=e;Object.assign(this,{writer:e,Ye:r>0&&r!==R&&n>0&&n!==R,options:t,config:T(),files:new Map,He:new Set,offset:t[ra]===E?e.size||e.writable.size||0:t[ra],Ve:t[ra]===E?0:t[ra]-(e.size||e.writable.size||0),qe:new Set,Ge:0,Qe:E})}async prependZip(t){if(this.He.size)throw Error(wi);t=new sn(t),await cn(t);const{ZipReader:r}=await Promise.resolve().then(()=>_a),n=new r(t.readable),a=await n.getEntries();await n.close(),await cn(this.writer),await t.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=t.size,this.He=new Set(a.map(e=>e.filename)),this.files=new Map(a.map(t=>{const{version:r,rawLastModDate:n,lastAccessDate:a,creationDate:i,rawFilename:s,bitFlag:o,encrypted:c,uncompressedSize:l,compressedSize:f,zip64:d}=t;let{compressionMethod:u,Xe:p,Je:m,Ke:w,_e:h,$e:b,rawExtraField:y}=t;const{level:g,languageEncodingFlag:x,dataDescriptor:v}=o;p=p||U,m=m||U,w=w||U,h=h||U,b=b||U,y=y||U,t.extraFieldAES&&(u=99);const z=Yi(p,m,w,h,b,y),k=d&&l>=e,S=d&&f>=e,R=-7&Vi(g,x,v,c,u)|g<<1,{et:F,nt:j}=Hi({version:r,bitFlag:R,compressionMethod:u,uncompressedSize:l,compressedSize:f,rawLastModDate:n,rawFilename:s,it:S,st:k,extraFieldLength:z}),{crc32:O}=t;return O!==E&&Wi(j,10,O),Object.assign(t,{st:k,it:S,ot:d&&t.offset>=e,diskNumberStart:0,ct:!1,Xe:p,Je:m,Ke:w,_e:h,$e:b,rawExtraField:y,extendedTimestamp:w.length>0||h.length>0,lt:1+(a?2:0)+(i?4:0),et:F,nt:j}),[t.filename,t]}))}async add(s="",o,c={}){const l=this;c=Object.assign({},c);const{qe:f,config:d}=l;let m,b;gi<d.maxWorkers?gi++:await new Promise(e=>xi.push(e));try{if(s=s.trim(),Ii(l,c,Pn)&&!s.endsWith(v)&&(s+=v),l.He.has(s))throw Error($a);return l.He.add(s),b=!0,m=(async(s,o,c,l)=>{const f=((n,a,i)=>{a=a.trim();let s=Ii(n,i,On),o=Ii(n,i,Tn,s?20:768);const c=Ii(n,i,In),l=Ii(n,i,"uid"),f=Ii(n,i,"gid");let d=Ii(n,i,Ln),u=Ii(n,i,"unixExtraFieldType"),p=Ii(n,i,Bn),m=Ii(n,i,Yn),w=Ii(n,i,Hn);if(l!==E&&(0>l||l>e))throw Error("Invalid uid (must be integer 0..2^32-1)");if(f!==E&&(0>f||f>e))throw Error("Invalid gid (must be integer 0..2^32-1)");if(d!==E&&(0>d||d>t))throw Error("Invalid UNIX mode (must be integer 0..65535)");if(u!==E&&u!==bi&&u!==yi)throw Error("Invalid unixExtraFieldType (must be 'infozip' or 'unix')");if(u===yi&&(l!==E&&l>t||f!==E&&f>t))throw Error("uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)");u!==E||l===E&&f===E||(u=bi);let h=Ii(n,i,jn),b=Ii(n,i,Un);const z=h!==E||b!==E;if(l!==E||f!==E||d!==E||u?(s=!1,o=o&t|768):z&&(s=!0,o&=r),h!==E&&(0>h||h>r))throw Error("Invalid msdosAttributesRaw (must be integer 0..255)");if(b&&"object"!=typeof b)throw Error("Invalid msdosAttributes (must be an object with boolean flags)");if(o>t)throw Error(ni);let k=Ii(n,i,Fn);const S=k!==E;S||(k=0),!i[Pn]&&a.endsWith(v)&&(i[Pn]=!0);const R=Ii(n,i,Pn);let F;if(R?(a.endsWith(v)||(a+=v),S||(k=16,s||(k|=16877<<16))):s||S||(k=c?493<<16:27525120),!s){const e=d!==E||!!(p||m||w);F=k>>16&t,d=d===E?F:d&t,p?d|=g:p=!!(d&g),m?d|=x:m=!!(d&x),w?d|=512:w=!!(512&d),S&&!e||(R&&(d|=y),k=(d&t)<<16|k&t)}return({msdosAttributesRaw:h,msdosAttributes:b}=((e,t)=>{if(e!==E)e&=r;else if(t!==E){const{readOnly:n,hidden:a,system:i,directory:s,archive:o}=t;let c=0;n&&(c|=1),a&&(c|=2),i&&(c|=4),s&&(c|=16),o&&(c|=32),e=c&r}return t===E&&(t={readOnly:!!(1&e),hidden:!!(2&e),system:!!(4&e),directory:!!(16&e),archive:!!(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}})(h,b)),z&&(k=k&e|h&r),{name:a,ft:{versionMadeBy:o,msDosCompatible:s,externalFileAttributes:k,unixExternalUpper:F,uid:l,gid:f,unixMode:d,unixExtraFieldType:u,setuid:p,setgid:m,sticky:w,msdosAttributesRaw:h,msdosAttributes:b}}})(s,o,l);({name:o}=f);const d=((e,r,n)=>{const a=Ii(e,n,"encodeText",be);let i=a(r);if(i===E&&(i=be(r)),Yi(i)>t)throw Error(ri);const s=n[mn]||"";let o=a(s);if(o===E&&(o=be(s)),Yi(o)>t)throw Error(ti);const c=Ii(e,n,An,20);if(c>t)throw Error(ni);const l=Ii(e,n,xn,new Date),f=Ii(e,n,zn),d=Ii(e,n,Sn),u=Ii(e,n,Rn,0),p=Ii(e,n,Xn);let m,w;p||(m=Ii(e,n,Gn),w=Ii(e,n,Qn));const h=Ii(e,n,"encryptionStrength",3),b=Ii(e,n,Mn),y=Ii(e,n,"extendedTimestamp",!0),g=Ii(e,n,"ntfsTimestamp"),x=Ii(e,n,"keepOrder",!0),v=Ii(e,n,_n),z=Ii(e,n,ea),k=Ii(e,n,"bufferedWrite"),S=Ii(e,n,"createTempStream"),R=Ii(e,n,"dataDescriptorSignature",!0),F=Ii(e,n,Jn),j=Ii(e,n,"useUnicodeFileNames",!0),U=Ii(e,n,Nn),O=p||U===E?E:ne(U);if(!p&&U!==E&&0!==U&&8!==U&&!O)throw Error("Compression method not supported");let D=Ii(e,n,"level");if(e.options[na]){if(m!==E||w!==E)throw Error(ii);D===E&&U===E&&(D=0)}let C=Ii(e,n,$n),A=Ii(e,n,"dataDescriptor");k&&A===E&&(A=!1),(A===E||b)&&(A=!0),D!==E&&6!=D&&(C=!1);const T=Ii(e,n,Dn);if(!b&&(m!==E||w!==E)&&(1>h||h>3))throw Error(ai);const M=Si(n[Wn]),P=Si(n.localExtraField);return{comment:s,ft:{rawFilename:i,rawComment:o,version:c,lastModDate:l,lastAccessDate:f,creationDate:d,internalFileAttributes:u,passThrough:p,password:m,rawPassword:w,encryptionStrength:h,zipCrypto:b,extendedTimestamp:y,ntfsTimestamp:g,keepOrder:x,useWebWorkers:v,transferStreams:z,bufferedWrite:k,createTempStream:S,dataDescriptorSignature:R,signal:F,useUnicodeFileNames:j,compressionMethod:U,format:O?O.format:E,codecURI:O?O.codecURI:E,ut:O?O.versionNeeded:E,level:D,useCompressionStream:C,dataDescriptor:A,zip64:T,rawExtraField:M,wt:P}}})(s,o,l),{comment:m}=d,b=l[Wn];let F;s.files.set(o,E);try{const{ft:m}=d;0==m.level||m.compressionMethod!==E||m.passThrough||await(async e=>{const{CompressionStream:t,CompressionStreamZlib:r}=e;if(r&&!r.ze)return!0;if(Rt(t)||Et(t,gt))return!0;if(r)try{return await void 0,!0}catch{return!1}return!1})(s.config)||(m.level=0);const b=await(async(t,r,{ft:n},a)=>{const{passThrough:i,zipCrypto:s,password:o,rawPassword:c,encryptionStrength:l}=n;let{dataDescriptor:f,zip64:d,level:u,compressionMethod:p}=n,m=0,w=0;if(i){if(!r)throw Error(mi);if(w=a[hn],w===E)throw Error(pi)}const h=!0===d,b=Ii(t,a,Cn),y=!!r&&(!!(o&&Yi(o)||c&&Yi(c))||i&&b);r||(u=0,p=0);const g=y?s?12:16+4*l:0;r&&(r=new sn(r),await cn(r),i?(a.uncompressedSize=w,m=Ni(w)+g):r.size===E?(f=!0,(d||d===E)&&(d=!0,w=m=4294967296)):(a.uncompressedSize=w=r.size,m=Ni(w)+g));const x=h||w>=e,v=h||m>=e;if(x||v){if(!1===d)throw Error(ui);d=!0}return d=d||!1,{reader:r,ft:{dataDescriptor:f,zip64:d,st:x,it:v,uncompressedSize:w,level:u,compressionMethod:p,encrypted:y}}})(s,c,d,l);({reader:c}=b);const y=Ui(s.writer),g=ji(s.writer),x=(e=>{const{rawFilename:r,lastModDate:a,lastAccessDate:i,creationDate:s,level:o,zip64:c,zipCrypto:l,useUnicodeFileNames:f,dataDescriptor:d,directory:m,rawExtraField:b,wt:y,encryptionStrength:g,extendedTimestamp:x,ntfsTimestamp:v,passThrough:R,encrypted:F,st:j,it:O,uncompressedSize:D,crc32:C}=e;let{version:A,compressionMethod:T}=e;const M=!m&&(T===E?o===E||o>0:0!==T);let P;const I=R||!M,N=c&&(e.bufferedWrite||!d||!j&&!O||I),Z=N||c&&d&&(j||O);if(c&&(j||O)){const e=20,t=Fi(e);if(t.uint16(1),t.uint16(e-4),P=t.array,N&&(t.ht(D),I)){const e=F?l?12:16+4*g:0;t.ht(R?0:D+e)}}else P=U;let W,L,B,Y,H;if(F&&!l){const e=Fi(Yi(hi)+2);e.uint16(u),e.bytes(hi),W=e.array,W[8]=g}else W=U;if(x){const e=Ti(a),t=Mi(e);if(t){const t=9+(i?4:0)+(s?4:0),r=Fi(t);Y=1+(i?2:0)+(s?4:0),r.uint16(p),r.uint16(t-4),r.uint8(Y),r.uint32(e),i&&r.uint32(Pi(Ti(i))),s&&r.uint32(Pi(Ti(s))),B=r.array}else B=U;if(v===E?!t||i||s:v)try{const e=Ai(a),t=Fi(36);t.uint16(10),t.uint16(32),t.bt(4),t.uint16(1),t.uint16(24),t.ht(e),t.ht(i?Ai(i):e),t.ht(s?Ai(s):e),L=t.array}catch{L=U}else L=U}else L=B=U;try{const{uid:r,gid:n,unixExtraFieldType:a}=e;if(a!=bi||r===E&&n===E)if(a!=yi||r===E&&n===E)H=U;else{const e=Fi(8);e.uint16(h),e.uint16(4),e.uint16((r===E?0:r)&t),e.uint16((n===E?0:n)&t),H=e.array}else{const e=Ri(r),t=Ri(n),a=3+e.length+t.length,i=Fi(4+a);i.uint16(w),i.uint16(a),i.uint8(1),i.uint8(e.length),i.bytes(e),i.uint8(t.length),i.bytes(t),H=i.array}}catch{H=U}T===E&&(T=M?8:0);const{ut:V}=e;M&&V!==E&&(A=A>V?A:V),c&&(A=A>45?A:45),F&&!l&&(A=A>51?A:51,R&&C!==E&&(W[4]=1),W[9]=T,T=99);const q=Z?Yi(P):0,G=q+Yi(W,B,L,H,b,y);if(G>t)throw Error(oi);const Q=new Date(2e3*Math.ceil(Math.floor(a.getTime()/1e3)/2)),{et:X,nt:J,rawLastModDate:K}=Hi({version:A,bitFlag:Vi(o,f,d,F,T),compressionMethod:T,uncompressedSize:D,lastModDate:S>Q?S:Q>k?k:Q,rawFilename:r,it:O,st:j,extraFieldLength:G}),_=Fi(z+Yi(r)+G),$=_.array,ee=xe($);return _.uint32(n),_.bytes(X),_.bytes(r),Z&&_.bytes(P),_.bytes(W),_.bytes(B),_.bytes(L),_.bytes(H),_.bytes(b),_.bytes(y),d&&(O||Wi(ee,18,0),j||Wi(ee,22,0)),{yt:$,gt:ee,et:X,nt:J,lastModDate:a,rawLastModDate:K,encrypted:F,compressed:M,version:A,compressionMethod:T,lt:Y,Xe:U,xt:q,Ke:B,_e:L,$e:H,Je:W,extraFieldLength:G}})(l=Object.assign({},l,f.ft,d.ft,b.ft,{internalFileAttribute:d.ft.internalFileAttributes,externalFileAttribute:f.ft.externalFileAttributes,signature:l[Zn],crc32:l.crc32===E?l[Zn]:l.crc32,offset:s.offset-y,diskNumberStart:g})),v=(({zip64:e,dataDescriptor:t,dataDescriptorSignature:r})=>{let n,a=U,s=0,o=e?20:12;return r&&(o+=4),t&&(a=new Uint8Array(o),n=xe(a),r&&(s=4,Wi(n,0,i))),{vt:a,zt:n,kt:s}})(l),j=Yi(x.yt,v.vt);F=await(async(t,n,i,s,o)=>{const{files:c,writer:l}=t,{keepOrder:f,dataDescriptor:d,signal:u}=o,{St:p}=s,m=t.options[na],w=t.Qe;let h,b,y,g,x,v,k,S={},F=0;c.set(n,S),t.Qe=S;try{let b;f&&(b=w&&w.lock,S.lock=new Promise(e=>y=e)),o.bufferedWrite||!f||t.Et||t.Ge||!d?(h=!0,t.Ge++,k=o.createTempStream?await o.createTempStream():new TransformStream(E,E,{highWaterMark:R}),k.size=0,await cn(l)):(k=l,await j()),await cn(k);const O=Ui(l);if(t.Ye){delete t.Ye;const e=new Uint8Array(4);Wi(xe(e),0,a),await Ci(l,e),t.offset+=4}m&&!h&&Ei(s,t.offset-O);const{yt:D}=p;h||(await b,await U());const C=ji(l),A=Di(t,l);if(S.diskNumberStart=C,h||(x=!0,v=l.size,await Ci(k,D)),S=await(async(t,n,{diskNumberStart:a,lock:i},s,o,c)=>{const{St:l,Rt:f,Ft:d}=s,{et:u,nt:p,lastModDate:m,rawLastModDate:w,encrypted:h,compressed:b,version:y,compressionMethod:g,Xe:x,xt:v,Ke:z,lt:k,_e:S,$e:R,Je:F}=l,{vt:j}=f,{rawFilename:U,lastAccessDate:O,creationDate:D,password:C,rawPassword:A,level:T,zip64:M,st:P,it:I,zipCrypto:N,dataDescriptor:Z,directory:W,executable:L,versionMadeBy:B,rawComment:Y,rawExtraField:H,useWebWorkers:V,transferStreams:q,onstart:G,onprogress:Q,onend:X,signal:J,encryptionStrength:K,extendedTimestamp:_,msDosCompatible:$,internalFileAttributes:ee,externalFileAttributes:te,uid:re,gid:ne,unixMode:ae,setuid:ie,setgid:se,sticky:oe,unixExternalUpper:ce,msdosAttributesRaw:le,msdosAttributes:fe,useCompressionStream:de,passThrough:ue,format:pe,codecURI:me}=c,we={lock:i,versionMadeBy:B,zip64:M,directory:!!W,executable:!!L,filenameUTF8:!0,rawFilename:U,commentUTF8:!0,rawComment:Y,Xe:x,xt:v,Ke:z,_e:S,$e:R,Je:F,rawExtraField:H,extendedTimestamp:_,msDosCompatible:$,internalFileAttributes:ee,externalFileAttributes:te,diskNumberStart:a,uid:re,gid:ne,unixMode:ae,setuid:ie,setgid:se,sticky:oe,unixExternalUpper:ce,msdosAttributesRaw:le,msdosAttributes:fe};let{crc32:he,uncompressedSize:be}=c,ye=0;ue||(be=0);const{writable:ge}=n;if(t){const a=pt(t.createReadable?t.createReadable():t.readable),i=t.size,s={options:{codecType:At,level:T,rawPassword:A,password:C,encryptionStrength:K,zipCrypto:h&&N,passwordVerification:h&&N&&w>>8&r,computeCrc32:!ue,compressed:b&&!ue,encrypted:h&&!ue,useWebWorkers:V,useCompressionStream:de,transferStreams:q,format:pe,codecURI:me,compressionMethod:g},config:o,ce:{signal:J,size:i,onstart:G,onprogress:Q,onend:X}};try{const t=await sr({readable:a,writable:ge},s);if(ye=t.outputSize,n.size+=ye,ue||(be=t.inputSize,h&&!N||(he=t.crc32)),!I&&ye>=e||!P&&be>=e)throw Error(ui)}catch(e){throw e.outputSize!==E&&(n.size+=e.outputSize),e}}return(({crc32:e,compressedSize:t,uncompressedSize:r,St:n,Rt:a},{zip64:i,zipCrypto:s,passThrough:o,dataDescriptor:c})=>{const{nt:l,encrypted:f}=n,{zt:d,kt:u}=a;f&&!s&&!o||e===E||(Wi(l,10,e),c&&Wi(d,u,e)),i?c&&(Li(d,u+4,BigInt(t)),Li(d,u+12,BigInt(r))):(Wi(l,14,t),Wi(l,18,r),c&&(Wi(d,u+4,t),Wi(d,u+8,r)))})({crc32:he,compressedSize:ye,uncompressedSize:be,St:l,Rt:f},c),Z&&await Ci(n,j),Object.assign(we,{uncompressedSize:be,compressedSize:ye,lastModDate:m,rawLastModDate:w,creationDate:D,lastAccessDate:O,encrypted:h,zipCrypto:N,size:d+ye,compressionMethod:g,version:y,et:u,nt:p,signature:he,crc32:!h||N||ue?he:E,lt:k,st:P,it:I}),we})(i,k,S,s,t.config,o),h||(x=!1),c.set(n,S),S.filename=n,h){if(await Promise.all([k.writable.getWriter().close(),b]),await j(),g=!0,v=l.size,await U(),S.diskNumberStart=ji(l),S.offset=Di(t,l),m){const e=s.Ft;Ei(s,t.offset-Ui(l)),S.size+=s.Ft-e}(({rawFilename:e,encrypted:t,zip64:r,xt:n,crc32:a,compressedSize:i,uncompressedSize:s,st:o,it:c},l,{dataDescriptor:f,passThrough:d})=>{if(f||((!t||d&&a!==E)&&Wi(l,14,a),c||Wi(l,18,i),o||Wi(l,22,s)),r&&n){const t=z+Yi(e)+4;Li(l,t,BigInt(s)),Li(l,t+8,BigInt(i))}})(S,p.gt,o),await Ci(l,p.yt),await(async(e,t,r)=>{const n=t.writable.getWriter();try{await e.pipeTo(new WritableStream({async write(e){var t;await n.ready,await n.write(e),t=Yi(e),F+=t}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{n.releaseLock()}})(k.readable,l,u),l.size+=k.size,g=!1}else S.diskNumberStart=C,S.offset=A;return t.offset+=S.size,S}catch(e){if(g||x){if(t.hasCorruptedEntries=!0,e)try{e.corruptedEntry=!0}catch{}t.offset+=l.size-v,h&&(t.offset+=F)}throw c.delete(n),e}finally{if(h&&t.Ge--,y&&y(),b&&b(),h&&k&&k.dispose)try{await k.dispose()}catch{}}async function j(){t.Et=!0;const{jt:e}=t;t.jt=new Promise(e=>b=()=>{t.Et=!1,e()}),await e}async function U(){Oi(l,Yi(p.yt))&&await l.closeDisk()}})(s,o,c,{St:x,Rt:v,Ft:j},l)}catch(e){throw s.files.delete(o),e}return Object.assign(F,{name:o,comment:m,extraField:b}),new qn(F)})(l,s,o,c),f.add(m),await m}catch(e){throw b&&l.He.delete(s),e}finally{f.delete(m);const e=xi.shift();e?e():gi--}}remove(e){const{He:t,files:r}=this;if("string"==typeof e&&(e=r.get(e)),e&&e.filename!==E){const{filename:n}=e;if(t.has(n)&&r.has(n))return t.delete(n),r.delete(n),!0}return!1}async close(r=U,n={}){const{qe:a,writer:i}=this,{writable:d}=i;if(Yi(r)>t)throw Error(ei);for(;a.size;)await Promise.allSettled(Array.from(a));return await(async(r,n,a)=>{const i=(r=>{let n=0;for(const[,a]of r){const{rawFilename:r,Je:i,rawComment:s,_e:o,$e:c,rawExtraField:l,extendedTimestamp:f,lt:d,lastModDate:u,st:m,it:w,uncompressedSize:h,compressedSize:b}=a,y=a.offset>=e,g=a.diskNumberStart>=t;let x,v;if(y||g||m||w){const e=4+(m?8:0)+(w?8:0)+(y?8:0)+(g?4:0),t=Fi(e);t.uint16(1),t.uint16(e-4),m&&t.ht(h),w&&t.ht(b),y&&t.ht(a.offset),g&&t.uint32(a.diskNumberStart),x=t.array}else x=U;a.Xe=x,a.ot=y,a.ct=g;const z=Ti(u);if(f&&Mi(z)){const e=Fi(9);e.uint16(p),e.uint16(5),e.uint8(d),e.uint32(z),v=e.array}else v=U;a.Ke=v;const k=Yi(x,i,o,c,v,l);if(k>t)throw Error(oi);n+=46+Yi(r,s)+k}return n})(r.files),d=await(async(r,n,a)=>{const{files:i,writer:o}=r,c=new Uint8Array(n);await cn(o);let l=0,f=0,d=ji(o),u=Ui(o);for(const[r,n]of Array.from(i.values()).entries()){const{offset:p,rawFilename:m,Xe:w,Je:h,Ke:b,_e:y,$e:g,rawExtraField:x,rawComment:v,versionMadeBy:z,et:k,nt:S,st:E,it:R,ct:F,ot:j,internalFileAttributes:U,externalFileAttributes:O,diskNumberStart:D,uncompressedSize:C,compressedSize:A}=n,T=Yi(w,h,b,y,g,x),M=46+Yi(m,v)+T;Oi(o,l+M-f)&&(await Ci(o,c.slice(f,l)),f=l,await o.closeDisk()),0==r&&(d=ji(o),u=Ui(o)),E||Wi(S,18,C),R||Wi(S,14,A),(j||F)&&45>n.version&&Zi(S,0,45);const P=Fi(M);if(P.uint32(s),P.uint16(z),P.bytes(k.subarray(0,24)),P.uint16(T),P.uint16(Yi(v)),P.uint16(F?t:D),P.uint16(U),P.uint32(O),P.uint32(j?e:p),P.bytes(m),P.bytes(w),P.bytes(h),P.bytes(b),P.bytes(y),P.bytes(g),P.bytes(x),P.bytes(v),Bi(c,P.array,l),l+=M,a.onprogress)try{await a.onprogress(r+1,i.size,new qn(n))}catch{}}return await Ci(o,f?c.slice(f):c),{diskNumber:d,diskOffset:u}})(r,i,a);await(async(r,n,a,i)=>{const{writer:s}=r,{Ut:d}=i;let{Ot:u}=i,p=r.files.size,m=d.diskNumber,w=Di(r,d),h=ji(s);Oi(s,f)&&h++;let b=Ii(r,a,Dn);if(!(e>w&&e>u&&t>p&&t>h)){if(!1===b)throw Error(ui);b=!0}const y=Yi(n);if(y>t)throw Error(ei);const g=Fi(b?98:f);Oi(s,Yi(g.array)+y)&&await s.closeDisk(),h=ji(s),b&&(g.uint32(c),g.ht(44),g.uint16(45),g.uint16(45),g.uint32(h),g.uint32(m),g.ht(p),g.ht(p),g.ht(u),g.ht(w),g.uint32(l),g.uint32(h),g.ht(BigInt(Di(r,s))+BigInt(u)),g.uint32(h+1),Ii(r,a,"supportZip64SplitFile",!0)&&(h=t,m=t),p=t,w=e,u=e),g.uint32(o),g.uint16(h),g.uint16(m),g.uint16(p),g.uint16(p),g.uint32(u),g.uint32(w),g.uint16(y),await Ci(s,g.array),y&&await Ci(s,n)})(r,n,a,{Ut:d,Ot:i})})(this,r,n),Ii(this,n,ta)||await d.getWriter().close(),i.getData?i.getData():d}}class zi{constructor(e={}){const{readable:t,writable:r}=new TransformStream;this.readable=t,this.zipWriter=new vi(r,e),this.qe=new Set}transform(e){const t=this.zipWriter;let r;const{readable:n,writable:a}=new TransformStream({start(e){r=e},flush:()=>{(async()=>{try{await t.close()}catch(e){try{await t.writer.writable.abort(e)}catch{}}})()}});return ki(this,this.zipWriter.add(e,n),e=>r.error(e)),{readable:this.readable,writable:a}}writable(e){let t;const{readable:r,writable:n}=new TransformStream({start(e){t=e}});return ki(this,this.zipWriter.add(e,r),e=>t.error(e)),n}async close(e,t={}){return await Promise.all(Array.from(this.qe)),this.zipWriter.close(e,t)}}function ki(e,t,r){e.qe.add(t),t.catch(e=>{try{r(e)}catch{}})}function Si(e){if(!e)return U;let r=0,n=0;e.forEach(e=>r+=4+Yi(e));const a=new Uint8Array(r),i=xe(a);return e.forEach((e,r)=>{if(r>t)throw Error(si);if(Yi(e)>t)throw Error(oi);Zi(i,n,r),Zi(i,n+2,Yi(e)),Bi(a,e,n+4),n+=4+Yi(e)}),a}function Ei(e,t){const{St:r}=e;let{yt:n,extraFieldLength:a}=r,i=64-(t+Yi(n))%64;4>i&&(i+=64);const s=new Uint8Array(i),o=xe(s);Zi(o,0,m),Zi(o,2,i-4);const c=n;r.yt=n=new Uint8Array(Yi(c)+i),Bi(n,c),Bi(n,s,Yi(c));const l=xe(n);Zi(l,28,a+i),r.gt=l,e.Ft+=i}function Ri(e){if(e===E)return U;{const t=new Uint8Array(4);xe(t).setUint32(0,e,!0);let r=4;for(;r>1&&0===t[r-1];)r--;return t.subarray(0,r)}}function Fi(e){const t=new Uint8Array(e),r=xe(t);let n=0;return{array:t,uint8:e=>{((e,t,r)=>{e.setUint8(t,r)})(r,n,e),n+=1},uint16:e=>{Zi(r,n,e),n+=2},uint32:e=>{Wi(r,n,e),n+=4},ht:e=>{Li(r,n,BigInt(e)),n+=8},bytes:e=>{Bi(t,e,n),n+=Yi(e)},bt:e=>n+=e}}function ji(e){const{diskNumber:t=0}=e;return t}function Ui(e){const{diskOffset:t=0}=e;return t}function Oi(e,t){const{availableSize:r=R}=e;return t>r}function Di(e,{diskNumber:t=0,diskOffset:r=0}){return e.offset-r-(t?e.Ve:0)}async function Ci(e,t){const{writable:r}=e,n=r.getWriter();try{await n.ready,e.size+=Yi(t),await n.write(t)}finally{n.releaseLock()}}function Ai(e){if(e){const t=(BigInt(e.getTime())+BigInt(116444736e5))*BigInt(1e4);return fi>t?fi:t>di?di:t}}function Ti(e){return Math.floor(e.getTime()/1e3)}function Mi(e){return e>=ci&&li>=e}function Pi(e){return Math.min(li,Math.max(ci,e))}function Ii(e,t,r,n){const a=t[r]===E?e.options[r]:t[r];return a===E?n:a}function Ni(e){return e+5*(Math.floor(e/16383)+1)}function Zi(e,t,r){e.setUint16(t,r,!0)}function Wi(e,t,r){e.setUint32(t,r,!0)}function Li(e,t,r){e.setBigUint64(t,r,!0)}function Bi(e,t,r){e.set(t,r)}function Yi(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Hi({version:t,bitFlag:r,compressionMethod:n,uncompressedSize:a,compressedSize:i,lastModDate:s,rawLastModDate:o,rawFilename:c,it:l,st:f,extraFieldLength:d}){const u=Fi(26),p=u.array,m=xe(p);if(u.uint16(t),u.uint16(r),u.uint16(n),o===E){const e=new Uint32Array(1),t=xe(e);Zi(t,0,(s.getHours()<<6|s.getMinutes())<<5|s.getSeconds()/2),Zi(t,2,(s.getFullYear()-1980<<4|s.getMonth()+1)<<5|s.getDate()),o=e[0]}return u.uint32(o),u.bt(4),l||i!==E?u.uint32(l?e:i):u.bt(4),f||a!==E?u.uint32(f?e:a):u.bt(4),u.uint16(Yi(c)),u.uint16(d),{et:p,nt:m,rawLastModDate:o}}function Vi(e,t,r,n,a){let i=0;return t&&(i|=b),r&&(i|=8),8!=a&&9!=a||(0>e||e>3||(i|=6),e>3&&5>=e&&(i|=4),9==e&&(i|=2)),n&&(i|=1),i}const qi=1048576,Gi=".zip.js-temp";function Qi(e={}){const{thresholdBytes:t=qi,directoryName:r=Gi,getDirectory:n=()=>navigator.storage.getDirectory()}=e;let a;function i(){return a||(a=Promise.resolve(n()).then(e=>e.getDirectoryHandle(r,{create:!0}))),a}return()=>{const e=[];let r,n,a,s,o=0,c=!1;const l=new WritableStream({async write(s){c?await a.write(s):(e.push(s),o+=s.length,o>t&&await(async()=>{const t=await i();r=crypto.randomUUID(),n=await t.getFileHandle(r,{create:!0}),a=(await n.createWritable()).getWriter(),c=!0;for(const t of e)await a.write(t);e.length=0})())},async close(){a&&(await a.close(),a=null)}});let f=0;return{writable:l,readable:new ReadableStream({async pull(t){if(c){if(!s){const e=await n.getFile();s=e.stream().getReader()}const{value:e,done:r}=await s.read();r?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()=>{if(a){try{await a.close()}catch{}a=null}if(r){try{const e=await i();await e.removeEntry(r)}catch{}n=r=null}e.length=0}}}}const Xi=1048576;function Ji(e={}){const{thresholdBytes:t=Xi}=e;return()=>{const e=[];let r,n,a,i=0,s=!1;const o=new WritableStream({async write(a){s?await r.write(a):(e.push(a),i+=a.length,i>t&&await(async()=>{const t=new TransformStream;n=new Response(t.readable).blob(),r=t.writable.getWriter(),s=!0;for(const t of e)await r.write(t);e.length=0})())},async close(){r&&(await r.close(),r=null)}});let c=0;return{writable:o,readable:new ReadableStream({async pull(t){if(s){if(!a){const e=await n;a=e.stream().getReader()}const{value:e,done:r}=await a.read();r?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){a&&await a.cancel(e)}},{highWaterMark:0}),dispose:async()=>{if(r){try{await r.abort()}catch{}r=null}n&&(n.catch(()=>{}),n=null),e.length=0}}}}const Ki=1048576,_i=".zip.js-temp";function $i(e={}){const{thresholdBytes:t=Ki,directoryName:r=_i,getDirectory:n}=e;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw Error("createSyncAccessHandle is only available in dedicated workers");const a=n||(()=>navigator.storage.getDirectory());let i;function s(){return i||(i=Promise.resolve(a()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return()=>{const e=[];let r,n,a=0,i=!1,o=0,c=0;const l=new WritableStream({async write(c){i?(n.write(c,{at:o}),o+=c.length):(e.push(c),a+=c.length,a>t&&await(async()=>{const t=await s();r=crypto.randomUUID();const a=await t.getFileHandle(r,{create:!0});n=await a.createSyncAccessHandle(),i=!0;for(const t of e)n.write(t,{at:o}),o+=t.length;e.length=0})())},close(){n&&n.flush()}});let f=0;return{writable:l,readable:new ReadableStream({pull(t){if(i){const e=o-c;if(0>=e)return void t.close();const r=new Uint8Array(Math.min(524288,e)),a=n.read(r,{at:c});a?(c+=a,t.enqueue(r.subarray(0,a))):t.close()}else f<e.length?t.enqueue(e[f++]):t.close()}},{highWaterMark:0}),dispose:async()=>{if(n){try{n.close()}catch{}n=null}if(r){try{const e=await s();await e.removeEntry(r)}catch{}r=null}e.length=0}}}}try{I({baseURI:import.meta.url})}catch{}var{Uint8Array:es,Uint16Array:ts,Int32Array:rs,TransformStream:ns,Math:as,Error:is,Array:ss}=globalThis,os=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],cs=new es(0),ls=new ts(0),fs=[];for(let e=0;6>e;e++)fs.push(e,0==e?8:4);fs.push(0,1);var ds=[];for(let e=0;14>e;e++)ds.push(e,0==e?4:2);var us=new ts([0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576]),ps=new ts([0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0]);function ms(e,t,r,n,a){if(0==a)return;let i=e instanceof es?e:new es(e.buffer,e.byteOffset,e.byteLength),s=r instanceof es?r.subarray(n,n+a):new es(r.buffer,r.byteOffset+n,a);i.set(s,t)}function ws(e,t,r){0!=r&&(e instanceof es?e:new es(e.buffer,e.byteOffset,e.byteLength)).fill(0,t,t+r)}function hs(){return{Dt:cs,Ct:0,At:0,Tt:0,Mt:cs,Pt:0,It:0,Nt:0,Zt:"",t:0,i:0,Wt:0,Lt:void 0}}function bs(e,t){let r=1<<t;return{o:e,u:new es(r),Bt:r,Yt:t,k:0,Ht:0,p:0,Vt:0}}function ys(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],a=e[r+1];for(let e=0;a>e;e++)t.push(n)}return new ts(t)}var gs=class{constructor(e,t){this.qt=e,this.Gt=t,this.Qt=0}},xs=class{constructor(e,t,r,n,a){this.Xt=e,this.q=t,this.Jt=r,this.Kt=n,this._t=a}};function vs(e){return Qs[-6>e||e>2?9:2-e]||""}function zs(e,t){try{e.Zt=vs(t)}catch(r){e.Zt="zlib error "+t+" ("+r+")"}return t}function ks(e,t){let r=e>>>0,n=0;for(let e=0;t>e;e++)n=n<<1|1&r,r>>>=1;return n}function Ss(e,t){e.$t[e.er++]=t}function Es(e,t){Ss(e,255&t),Ss(e,t>>>8&255)}function Rs(e,t,r){let n=255&r,a=65535&t,i=e.rr+e.nr;return e.$t[i]=255&a,e.$t[i+1]=a>>>8&255,e.$t[i+2]=n,e.nr+=3,a=a-1&65535,e.ir[ro[n]+Ws+1].ar++,e.sr[Us(a)].ar++,e.nr==e.cr}function Fs(e,t){let r=255&t,n=e.rr+e.nr;return e.$t[n]=0,e.$t[n+1]=0,e.$t[n+2]=r,e.nr+=3,e.ir[r].ar++,e.nr==e.cr}function js(e){return e.Bt-Ns}function Us(e){return 256>e?no[e]:no[256+(e>>7)]}function Os(e){let t=Ms+7,r=1<<t,n=(1<<t)-1,a=as.floor((t+Ps-1)/Ps),i=1<<8+Ms;return{...bs(e,15),o:e,lr:42,dr:0,ur:void 0,pr:32767,mr:t,wr:r,yr:n,gr:a,vr:new ts(32768),zr:new ts(r),kr:i,$t:new es(32768),Sr:0,Er:32768,er:0,Rr:0,Fr:0,jr:0,Ur:0,Or:0,Dr:-2,Cr:0,Ar:0,Tr:0,Mr:0,Pr:0,Ir:0,Nr:0,Zr:0,Wr:0,Lr:0,Br:0,Yr:0,Hr:0,Vr:0,qr:new rs(2*Ls+1),Gr:new es(2*Ls+1),Qr:new ts(Vs+1),nr:0,cr:0,Xr:cs,rr:0,Jr:0,Kr:0,_r:8,$r:32768,en:0,tn:0,rn:0,ir:new ss(Hs).fill(0).map(()=>({ar:0,nn:0,an:0,sn:0})),sr:new ss(2*Bs+1).fill(0).map(()=>({ar:0,nn:0,an:0,sn:0})),cn:new ss(2*Ys+1).fill(0).map(()=>({ar:0,nn:0,an:0,sn:0})),ln:As(),fn:As(),dn:As()}}function Ds(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],a=e[r+1],i=Cs();i.nn=n,i.sn=a,t.push(i)}return t}function Cs(){return{ar:0,nn:0,an:0,sn:0}}function As(){return new gs([],new xs(null,cs,0,0,0))}function Ts(e){let{code:t,length:r}=(e=>{let t=as.max(...e),r=new ss(t+1).fill(0);for(let t of e)t>0&&r[t]++;let n=new ss(e.length).fill(0),a=new ss(t+1).fill(0),i=0;for(let e=1;t>=e;e++)i=i+r[e-1]<<1,a[e]=i;for(let t=0;t<e.length;t++){let r=e[t];0!=r&&(n[t]=a[r]++)}return{code:n,length:e}})(e),n=new ts(2*e.length),a=0;for(let i=0;i<e.length;i++){let e=r[i]||0,s=t[i]||0;n[a++]=e?ks(s,e):0,n[a++]=e}return new ts(n)}var Ms=8,Ps=3,Is=258,Ns=Is+Ps+1,Zs=Is,Ws=256,Ls=Ws+1+29,Bs=30,Ys=19,Hs=2*Ls+1,Vs=15,qs=256,Gs=-1,Qs=["need dictionary","stream end","","file error","stream error","data error","insufficient memory","buffer error",""],Xs=ys(fs),Js=ys(ds),Ks=new ts(19);Ks[16]=2,Ks[17]=3,Ks[18]=7;var _s=Ts((()=>{let e=new ss(288).fill(0);for(let t=0;143>=t;t++)e[t]=8;for(let t=144;255>=t;t++)e[t]=9;for(let t=256;279>=t;t++)e[t]=7;for(let t=280;287>=t;t++)e[t]=8;return e})()),$s=Ts(new ss(30).fill(5)),eo=Ds(_s),to=Ds($s),ro=((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let a=t[n]?1<<t[n]:1,i=e[n]+a-1;i>r&&(r=i)}258>r&&(r=258);let n=new es(r+1);for(let a=0;r>=a;a++)for(let r=0;r<e.length;r++){let i=t[r]?1<<t[r]:1,s=e[r];if(a>=s&&s+i-1>=a){n[a]=r;break}}let a=0;for(let r=0;r<e.length-1;r++){let n=t[r]?1<<t[r]:1,i=e[r]+n-1;i>a&&(a=i)}return n[a]=e.length-1,n})(ps,Xs),no=(e=>{let t=new es(512),r=e.length-1;for(let n=0;256>n;n++)t[n]=n>r?e[r]:e[n];for(let n=256;r>=n;n++){let r=n>>7;t[256+(r>255?255:r)]=e[n]}for(let e=257;512>e;e++)0==t[e]&&(t[e]=t[e-1]);return t})(((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let a=t[n]?1<<t[n]:1,i=e[n]+a-1;i>r&&(r=i)}let n=new es(r+1);for(let a=0;r>=a;a++)for(let r=0;r<e.length;r++){let i=t[r]?1<<t[r]:1,s=e[r];if(a>=s&&s+i-1>=a){n[a]=r;break}}return n})(us,Js));function ao(e,t,r){if(void 0===t||void 0===r)return 1;let n=65535&e,a=e>>>16&65535,i=0;for(;r>0;){let e=r>2e3?2e3:r;r-=e;do{n=n+t[i++]|0,a=a+n|0}while(--e);n%=65521,a%=65521}return(a<<16|n)>>>0}var io=[[],[],[],[],[],[],[],[]];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?3988292384^t>>>1:t>>>1;io[0][e]=t}for(let e=0;256>e;e++)for(let t=1;8>t;t++){let r=io[t-1][e];io[t][e]=r>>>8^io[0][255&r]}var[so,oo,co,lo,fo,uo,po,mo]=io;function wo(e=0,t,r){if(!t)return 0;void 0===r&&(r=t.length);let n=0|~e,a=0;if((r=as.min(r,t.length))>=8){let e=new DataView(t.buffer,t.byteOffset,r),i=r-8;for(;i>=a;a+=8){let t=n^e.getInt32(a,!0),r=e.getInt32(a+4,!0);n=mo[255&t]^po[t>>>8&255]^uo[t>>>16&255]^fo[t>>>24&255]^lo[255&r]^co[r>>>8&255]^oo[r>>>16&255]^so[r>>>24&255]}}for(;r>a;a++)n=n>>>8^so[255&(n^t[a])];return(4294967295^n)>>>0}function ho(e){16==e.Vt?(Es(e,e.p),e.p=0,e.Vt=0):e.Vt>=8&&(Ss(e,e.p),e.p>>=8,e.Vt-=8)}function bo(e){e.Vt>8?Es(e,e.p):e.Vt>0&&Ss(e,e.p),e.Jr=1+(e.Vt-1&7),e.p=0,e.Vt=0}function yo(e,t,r){e.Vt>16-r?(e.p=65535&(e.p|t<<e.Vt),Es(e,e.p),e.p=t>>16-e.Vt&65535,e.Vt+=r-16):(e.p=65535&(e.p|t<<e.Vt),e.Vt+=r)}function go(e){for(let t=0;t<e.ir.length;t++)e.ir[t].ar=0;for(let t=0;t<e.sr.length;t++)e.sr[t].ar=0;for(let t=0;t<e.cn.length;t++)e.cn[t].ar=0;e.ir[qs].ar=1,e.Fr=e.jr=0,e.nr=e.Ur=0}function xo(e,t,r){return r=e.qr[1],e.qr[1]=e.qr[e.tn--],zo(e,t,1),r}function vo(e,t,r,n){return e[t].ar<e[r].ar||e[t].ar==e[r].ar&&n[t]<=n[r]}function zo(e,t,r){let n=e.qr[r],a=r<<1;for(;a<=e.tn&&(a<e.tn&&vo(t,e.qr[a+1],e.qr[a],e.Gr)&&a++,!vo(t,n,e.qr[a],e.Gr));)e.qr[r]=e.qr[a],r=a,a<<=1;e.qr[r]=n}function ko(e,t){let r,n,a,i=t.qt,s=t.Gt.Xt,o=t.Gt.Kt,c=-1;for(e.tn=0,e.rn=Hs,r=0;o>r;r++)0!=i[r].ar?(e.qr[++e.tn]=c=r,e.Gr[r]=0):i[r].sn=0;for(;2>e.tn;)a=e.qr[++e.tn]=2>c?++c:0,i[a].ar=1,e.Gr[a]=0,e.Fr--,s&&(e.jr-=s[a].sn);for(t.Qt=c,r=as.floor(e.tn/2);r>=1;r--)zo(e,i,r);a=o;do{r=xo(e,i,r),n=e.qr[1],e.qr[--e.rn]=r,e.qr[--e.rn]=n,i[a].ar=i[r].ar+i[n].ar,e.Gr[a]=(e.Gr[r]<e.Gr[n]?e.Gr[n]:e.Gr[r])+1,i[r].an=i[n].an=a,e.qr[1]=a++,zo(e,i,1)}while(e.tn>=2);e.qr[--e.rn]=e.qr[1],((e,t)=>{let r,n,a,i,s,o,c=t.qt,l=t.Qt,f=t.Gt.Xt,d=t.Gt.q,u=t.Gt.Jt,p=t.Gt._t,m=0;for(i=0;Vs>=i;i++)e.Qr[i]=0;for(c[e.qr[e.rn]].sn=0,r=e.rn+1;Hs>r;r++)n=e.qr[r],i=c[c[n].an].sn+1,i>p&&(i=p,m++),c[n].sn=i,l>=n&&(e.Qr[i]++,s=0,n>=u&&(s=d[n-u]),o=c[n].ar,e.Fr+=o*(i+s),f&&(e.jr+=o*(f[n].sn+s)));if(0!=m){do{for(i=p-1;0==e.Qr[i];)i--;e.Qr[i]--,e.Qr[i+1]+=2,e.Qr[p]--,m-=2}while(m>0);for(i=p;0!=i;i--)for(n=e.Qr[i];0!=n;)a=e.qr[--r],l>=a&&(c[a].sn!=i&&(e.Fr+=(i-c[a].sn)*c[a].ar,c[a].sn=i),n--)}})(e,t),((e,t,r)=>{let n,a,i=[],s=0;for(n=1;Vs>=n;n++)s=s+r[n-1]<<1,i[n]=s;for(a=0;t>=a;a++){let t=e[a].sn;0!=t&&(e[a].nn=ks(i[t]++,t))}})(i,t.Qt,e.Qr)}function So(e,t,r){let n,a,i=-1,s=t[0].sn,o=0,c=7,l=4;for(0==s&&(c=138,l=3),t[r+1].sn=65535,n=0;r>=n;n++)a=s,s=t[n+1].sn,(++o>=c||a!=s)&&(l>o?e.cn[a].ar+=o:0!=a?(a!=i&&e.cn[a].ar++,e.cn[16].ar++):o>10?e.cn[18].ar++:e.cn[17].ar++,o=0,i=a,0==s?(c=138,l=3):a==s?(c=6,l=3):(c=7,l=4))}function Eo(e,t,r){let n,a=-1,i=t[0].sn,s=0,o=7,c=4;0==i&&(o=138,c=3);for(let l=0;r>=l;l++)if(n=i,i=t[l+1].sn,++s>=o||n!=i){if(c>s)do{yo(e,e.cn[n].nn,e.cn[n].sn)}while(0!=--s);else 0!=n?(n!=a&&(yo(e,e.cn[n].nn,e.cn[n].sn),s--),yo(e,e.cn[16].nn,e.cn[16].sn),yo(e,s-3,2)):s>10?(yo(e,e.cn[18].nn,e.cn[18].sn),yo(e,s-11,7)):(yo(e,e.cn[17].nn,e.cn[17].sn),yo(e,s-3,3));s=0,a=n,0==i?(o=138,c=3):n==i?(o=6,c=3):(o=7,c=4)}}function Ro(e,t,r,n,a=0){yo(e,0+n,3),bo(e),Es(e,r),Es(e,~r),r&&t&&ms(e.$t,e.er,t,a,r),e.er+=r}function Fo(e,t,r){let n,a,i,s,o=0;if(0!=e.nr)do{n=255&e.Xr[o],n+=(255&e.Xr[o+1])<<8,a=e.Xr[o+2],o+=3,0==n?yo(e,t[a].nn,t[a].sn):(i=ro[a],yo(e,t[i+Ws+1].nn,t[i+Ws+1].sn),s=Xs[i],0!=s&&(a-=ps[i],yo(e,a,s)),n--,i=Us(n),yo(e,r[i].nn,r[i].sn),s=Js[i],0!=s&&(n-=us[i],yo(e,n,s)))}while(o<e.nr);yo(e,t[qs].nn,t[qs].sn)}var jo=[{un:Go,pn:0,wn:0,hn:0,bn:0},{un:Qo,pn:4,wn:4,hn:8,bn:4},{un:Qo,pn:4,wn:5,hn:16,bn:8},{un:Qo,pn:4,wn:6,hn:32,bn:32},{un:Xo,pn:4,wn:4,hn:16,bn:16},{un:Xo,pn:8,wn:16,hn:32,bn:32},{un:Xo,pn:8,wn:16,hn:128,bn:128},{un:Xo,pn:8,wn:32,hn:128,bn:256},{un:Xo,pn:32,wn:128,hn:258,bn:1024},{un:Xo,pn:32,wn:258,hn:258,bn:4096}];function Uo(e){return 2*e-(e>4?9:0)}function Oo(e,t,r){return((t<<e.gr^r)&e.yr)>>>0}function Do(e,t){e.Zr=Oo(e,e.Zr,e.u[t+(Ps-1)]);let r=e.vr[t&e.pr]=e.zr[e.Zr];return e.zr[e.Zr]=t,r}function Co(e){e.zr[e.wr-1]=0,ws(e.zr,0,(e.wr-1)*e.zr.BYTES_PER_ELEMENT)}function Ao(e){let t,r,n=e.Bt;for(t=e.wr;t>0;)t--,r=e.zr[t],e.zr[t]=n>r?0:r-n;for(t=n;t>0;)t--,r=e.vr[t],e.vr[t]=n>r?0:r-n}function To(e,t,r,n){let a=e.At;return a>n&&(a=n),0==a?0:(e.At-=a,ms(t,r,e.Dt,e.Ct,a),1==e.Lt.dr?e.i=ao(e.i,new es(t.buffer,t.byteOffset+r,a),a):2==e.Lt.dr&&(e.i=wo(e.i,new es(t.buffer,t.byteOffset+r,a),a)),e.Ct+=a,e.Tt+=a,a)}function Mo(e){let t,r,n=e.Bt;do{if(r=e.$r-e.Tr-e.Ar,0==r&&0==e.Ar&&0==e.Tr?r=n:-1==r&&r--,e.Ar>=n+js(e)&&(ms(e.u,0,e.u,n,n-r),e.en-=n,e.Ar-=n,e.Cr-=n,e.Or>e.Ar&&(e.Or=e.Ar),Ao(e),r+=n),0==e.o.At)break;if(t=To(e.o,e.u,e.Ar+e.Tr,r),e.Tr+=t,e.Tr+e.Or>=Ps){let t=e.Ar-e.Or;for(e.Zr=e.u[t],e.Zr=Oo(e,e.Zr,e.u[t+1]);e.Or&&(e.Zr=Oo(e,e.Zr,e.u[t+Ps-1]),e.vr[t&e.pr]=e.zr[e.Zr],e.zr[e.Zr]=t,t++,e.Or--,e.Tr+e.Or>=Ps););}}while(e.Tr<Ns&&0!=e.o.At);if(e.k<e.$r){let t,r=e.Ar+e.Tr;e.k<r?(t=e.$r-r,t>Zs&&(t=Zs),ws(e.u,r,t),e.k=r+t):e.k<r+Zs&&(t=r+Zs-e.k,t>e.$r-e.k&&(t=e.$r-e.k),ws(e.u,e.k,t),e.k+=t)}}function Po(e){if(null==e)return!0;let t=e.Lt;return!t||t.o!=e||42!=t.lr&&57!=t.lr&&69!=t.lr&&73!=t.lr&&91!=t.lr&&103!=t.lr&&113!=t.lr&&666!=t.lr}function Io(e,t){Ss(e,t>>8),Ss(e,255&t)}function No(e){let t,r=e.Lt;(e=>{ho(e)})(r),t=r.er,t>e.It&&(t=e.It),0!=t&&(ms(e.Mt,e.Pt,r.$t,r.Rr,t),e.Pt+=t,r.Rr+=t,e.Nt+=t,e.It-=t,r.er-=t,0==r.er&&(r.Rr=r.Sr))}function Zo(e,t){let r=e.Lt;r.ur&&r.ur.yn&&(e.i=wo(e.i,new es(r.$t.buffer,r.Sr+t,r.er-t),r.er-t))}function Wo(e,t){let r,n=e.Lt;if(Po(e)||t>5||0>t)return zs(e,-2);if(!e.Mt||0!=e.At&&!e.Dt||666==n.lr&&4!=t)return zs(e,-2);if(0==e.It)return zs(e,-5);if(r=n.Dr,n.Dr=t,0!=n.er){if(No(e),0==e.It)return n.Dr=Gs,0}else if(0==e.At&&Uo(t)<=Uo(r)&&4!=t)return zs(e,-5);if(666==n.lr&&0!=e.At)return zs(e,-5);if(42==n.lr&&0==n.dr&&(n.lr=113),42==n.lr){let t,r=8+(n.Yt-8<<4)<<8;if(t=n.Lr>=2||2>n.Wr?0:6>n.Wr?1:6==n.Wr?2:3,r|=t<<6,0!=n.Ar&&(r|=32),r+=31-r%31,Io(n,r),0!=n.Ar&&(Io(n,e.i>>16),Io(n,65535&e.i)),e.i=1,n.lr=113,No(e),0!=n.er)return n.Dr=Gs,0}if(57==n.lr)if(e.i=wo(0),Ss(n,31),Ss(n,139),Ss(n,8),n.ur)Ss(n,(n.ur.gn?1:0)+(n.ur.yn?2:0)+(null==n.ur.xn?0:4)+(null==n.ur.vn?0:8)+(null==n.ur.zn?0:16)),Ss(n,255&n.ur.kn),Ss(n,n.ur.kn>>>8&255),Ss(n,n.ur.kn>>>16&255),Ss(n,n.ur.kn>>>24&255),Ss(n,9==n.Wr?2:n.Lr>=2||2>n.Wr?4:0),Ss(n,255&n.ur.Sn),null!=n.ur.xn&&(Ss(n,255&n.ur.En),Ss(n,n.ur.En>>>8&255)),n.ur.yn&&(e.i=wo(e.i,n.$t,n.er)),n.Kr=0,n.lr=69;else if(Ss(n,0),Ss(n,0),Ss(n,0),Ss(n,0),Ss(n,0),Ss(n,9==n.Wr?2:n.Lr>=2||2>n.Wr?4:0),Ss(n,255),n.lr=113,No(e),0!=n.er)return n.Dr=Gs,0;if(69==n.lr){if(n.ur&&null!=n.ur.xn){let t=n.er,r=(65535&n.ur.En)-n.Kr;for(;n.er+r>n.Er;){let a=n.Er-n.er;if(ms(n.$t,n.er,n.ur.xn,n.Kr,a),n.er=n.Er,Zo(e,t),n.Kr+=a,No(e),0!=n.er)return n.Dr=Gs,0;t=0,r-=a}ms(n.$t,n.er,n.ur.xn,n.Kr,r),n.er+=r,Zo(e,t),n.Kr=0}n.lr=73}if(73==n.lr){if(n.ur&&n.ur.vn&&n.ur.vn.length){let t,r=n.er;do{if(n.er==n.Er){if(Zo(e,r),No(e),0!=n.er)return n.Dr=Gs,0;r=0}t=n.ur.vn[n.Kr++],Ss(n,t)}while(0!=t);Zo(e,r),n.Kr=0}n.lr=91}if(91==n.lr){if(n.ur&&n.ur.zn&&n.ur.zn.length){let t,r=n.er;do{if(n.er==n.Er){if(Zo(e,r),No(e),0!=n.er)return n.Dr=Gs,0;r=0}t=n.ur.zn[n.Kr++],Ss(n,t)}while(0!=t);Zo(e,r)}n.lr=103}if(103==n.lr){if(n.ur&&n.ur.yn){if(n.er+2>n.Er&&(No(e),0!=n.er))return n.Dr=Gs,0;Ss(n,255&e.i),Ss(n,e.i>>>8&255),e.i=wo(0)}if(n.lr=113,No(e),0!=n.er)return n.Dr=Gs,0}if(0!=e.At||0!=n.Tr||0!=t&&666!=n.lr){let r=0==n.Wr?Go(n,t):2==n.Lr?((e,t)=>{let r=!1;for(;;){if(0==e.Tr&&(Mo(e),0==e.Tr)){if(0==t)return 0;break}if(e.Mr=0,r=Fs(e,e.u[e.Ar]),e.Tr--,e.Ar++,r){let t=Ho(e,!1);if(null!=t)return t}}if(e.Or=0,4==t)return Ho(e,!0)??3;if(e.nr){let t=Ho(e,!1);if(null!=t)return t}return 1})(n,t):3==n.Lr?((e,t)=>{let r,n,a,i;for(;;){if(e.Tr<=Is){if(Mo(e),e.Tr<=Is&&0==t)return 0;if(0==e.Tr)break}if(e.Mr=0,e.Tr>=Ps&&e.Ar>0&&(a=e.Ar-1,n=e.u[a],n==++a&&n==++a&&n==++a)){i=e.Ar+Is;do{}while(n==++a&&n==++a&&n==++a&&n==++a&&n==++a&&n==++a&&n==++a&&n==++a&&i>a);e.Mr=Is-(i-a),e.Mr>e.Tr&&(e.Mr=e.Tr)}if(e.Mr<Ps?(r=Fs(e,e.u[e.Ar]),e.Tr--,e.Ar++):(e.Ar,e.Ar,e.Mr,r=Rs(e,1,e.Mr-Ps),e.Tr-=e.Mr,e.Ar+=e.Mr,e.Mr=0),r){let t=Ho(e,!1);if(null!=t)return t}}if(e.Or=0,4==t)return Ho(e,!0)??3;if(e.nr){let t=Ho(e,!1);if(null!=t)return t}return 1})(n,t):jo[n.Wr].un(n,t);if((2==r||3==r)&&(n.lr=666),0==r||2==r)return 0==e.It&&(n.Dr=Gs),0;if(1==r&&(1==t?(e=>{yo(e,2,3),yo(e,eo[qs].nn,eo[qs].sn),ho(e)})(n):5!=t&&(Ro(n,null,0,0),3==t&&(Co(n),0==n.Tr&&(n.Ar=0,n.Cr=0,n.Or=0))),No(e),0==e.It))return n.Dr=Gs,0}return 4!=t?0:n.dr>0?(2==n.dr?(Ss(n,255&e.i),Ss(n,e.i>>>8&255),Ss(n,e.i>>>16&255),Ss(n,e.i>>>24&255),Ss(n,255&e.Tt),Ss(n,e.Tt>>>8&255),Ss(n,e.Tt>>>16&255),Ss(n,e.Tt>>>24&255)):(Io(n,e.i>>>16&65535),Io(n,65535&e.i)),No(e),n.dr>0&&(n.dr=-n.dr),0!=n.er?0:1):1}function Lo(e){if(Po(e))return-2;let t=e.Lt,r=t.lr;return t.u=cs,t.vr=ls,t.zr=ls,t.$t=cs,t.Xr=cs,t.qr=new rs(0),t.Gr=cs,t.Qr=ls,t.ir.length=0,t.sr.length=0,t.cn.length=0,t.ur=void 0,t.Sr=0,t.Rr=0,t.rr=0,113==r?-3:0}function Bo(e,t){let r,n,a=e.Hr,i=e.Ar,s=e.Pr,o=e.Yr,c=e.Ar>js(e)?e.Ar-js(e):0,l=e.vr,f=e.pr,d=e.u,u=e.Tr,p=u>Is?Is:u,m=d[i],w=d[i+1],h=d[i+s-1],b=d[i+s];s>=e.Br&&(a>>=2),o>u&&(o=u);do{if(r=t,d[r+s]!=b||d[r+s-1]!=h||d[r]!=m||d[r+1]!=w)continue;let a=2;for(;p>a&&d[i+a]==d[r+a];)a++;if(n=a,n>s){if(e.en=t,s=n,n>=o)break;h=d[i+s-1],b=d[i+s]}}while((t=l[t&f])>c&&0!=--a);return s>u?u:s}function Yo(e,t){((e,t,r,n,a=0)=>{let i,s,o=0;e.Wr>0?(2==e.o.t&&(e.o.t=(e=>{let t,r=4093624447;for(t=0;31>=t;t++,r>>=1)if(1&r&&0!=e.ir[t].ar)return 0;if(0!=e.ir[9].ar||0!=e.ir[10].ar||0!=e.ir[13].ar)return 1;for(t=32;Ws>t;t++)if(0!=e.ir[t].ar)return 1;return 0})(e)),ko(e,e.ln),ko(e,e.fn),o=(e=>{let t;for(So(e,e.ir,e.ln.Qt),So(e,e.sr,e.fn.Qt),ko(e,e.dn),t=Ys-1;t>=3&&0==e.cn[os[t]].sn;t--);return e.Fr+=3*(t+1)+5+5+4,t})(e),i=e.Fr+3+7>>3,s=e.jr+3+7>>3,(i>=s||4==e.Lr)&&(i=s)):i=s=r+5,i>=r+4&&t?Ro(e,t,r,n,a):s==i?(yo(e,2+n,3),Fo(e,eo,to)):(yo(e,4+n,3),((e,t,r,n)=>{let a;for(yo(e,t-257,5),yo(e,r-1,5),yo(e,n-4,4),a=0;n>a;a++)yo(e,e.cn[os[a]].sn,3);Eo(e,e.ir,t-1),Eo(e,e.sr,r-1)})(e,e.ln.Qt+1,e.fn.Qt+1,o+1),Fo(e,e.ir,e.sr)),go(e),n&&bo(e)})(e,e.u,e.Ar-e.Cr,t,e.Cr),e.Cr=e.Ar,No(e.o)}function Ho(e,t){return Yo(e,t?1:0),0==e.o.It?t?2:0:null}var Vo=65535;function qo(e,t){return t>e?e:t}function Go(e,t){let r,n,a,i=qo(e.Er-5,e.Bt),s=0,o=e.o.At;do{if(r=Vo,a=e.Vt+42>>3,e.o.It<a||(a=e.o.It-a,n=e.Ar-e.Cr,r>n+e.o.At&&(r=n+e.o.At),r>a&&(r=a),i>r&&(0==r&&4!=t||0==t||r!=n+e.o.At)))break;s=4==t&&r==n+e.o.At?1:0,Ro(e,null,0,s),e.$t[e.er-4]=r,e.$t[e.er-3]=r>>8,e.$t[e.er-2]=~r,e.$t[e.er-1]=~r>>8,No(e.o),n&&(n>r&&(n=r),ms(e.o.Mt,e.o.Pt,e.u,e.Cr,n),e.o.Pt+=n,e.o.It-=n,e.o.Nt+=n,e.Cr+=n,r-=n),r&&(To(e.o,e.o.Mt,e.o.Pt,r),e.o.Pt+=r,e.o.It-=r,e.o.Nt+=r)}while(0==s);if(o-=e.o.At,o){if(o<e.Bt)e.$r-e.Ar<=o&&(e.Ar-=e.Bt,ms(e.u,0,e.u,e.Bt,e.Ar),2>e.Ur&&e.Ur++,e.Or>e.Ar&&(e.Or=e.Ar)),ms(e.u,e.Ar,e.o.Dt,e.o.Ct-o,o),e.Ar+=o,e.Or+=qo(o,e.Bt-e.Or);else{e.Ur=2;let t=e.o.Ct-e.Bt;ms(e.u,0,e.o.Dt,t,e.Bt),e.Ar=e.Bt,e.Or=e.Ar}e.Cr=e.Ar}return e.k<e.Ar&&(e.k=e.Ar),s?(e.Jr=8,3):0!=t&&4!=t&&0==e.o.At&&e.Ar==e.Cr?1:(a=e.$r-e.Ar,e.o.At>a&&e.Cr>=e.Bt&&(e.Cr-=e.Bt,e.Ar-=e.Bt,ms(e.u,0,e.u,e.Bt,e.Ar),2>e.Ur&&e.Ur++,a+=e.Bt,e.Or>e.Ar&&(e.Or=e.Ar)),a>e.o.At&&(a=e.o.At),a&&(To(e.o,e.u,e.Ar,a),e.Ar+=a,e.Or+=qo(a,e.Bt-e.Or)),e.k<e.Ar&&(e.k=e.Ar),a=e.Vt+42>>3,a=qo(e.Er-a,Vo),i=qo(a,e.Bt),n=e.Ar-e.Cr,(n>=i||(n||4==t)&&0!=t&&0==e.o.At&&a>=n)&&(r=qo(n,a),s=4==t&&0==e.o.At&&r==n?1:0,Ro(e,e.u,r,s,e.Cr),e.Cr+=r,No(e.o)),s&&(e.Jr=8),s?2:0)}function Qo(e,t){let r,n=!1;for(;;){if(e.Tr<Ns){if(Mo(e),e.Tr<Ns&&0==t)return 0;if(0==e.Tr)break}if(r=0,e.Tr>=Ps&&(r=Do(e,e.Ar)),0!=r&&e.Ar-r<=js(e)&&(e.Mr=Bo(e,r)),e.Mr<Ps)n=Fs(e,e.u[e.Ar]),e.Tr--,e.Ar++;else if(e.Ar,e.en,e.Mr,n=Rs(e,e.Ar-e.en,e.Mr-Ps),e.Tr-=e.Mr,e.Mr>e.Vr||e.Tr<Ps)e.Ar+=e.Mr,e.Mr=0,e.Zr=e.u[e.Ar],e.Zr=Oo(e,e.Zr,e.u[e.Ar+1]);else{e.Mr--;do{e.Ar++,r=Do(e,e.Ar)}while(0!=--e.Mr);e.Ar++}if(n){let t=Ho(e,!1);if(null!=t)return t}}if(e.Or=e.Ar<Ps-1?e.Ar:Ps-1,4==t)return Ho(e,!0)??3;if(e.nr){let t=Ho(e,!1);if(null!=t)return t}return 1}function Xo(e,t){let r,n=!1;for(;;){if(e.Tr<Ns){if(Mo(e),e.Tr<Ns&&0==t)return 0;if(0==e.Tr)break}if(r=0,e.Tr>=Ps&&(r=Do(e,e.Ar)),e.Pr=e.Mr,e.Ir=e.en,e.Mr=Ps-1,0!=r&&e.Pr<e.Vr&&e.Ar-r<=js(e)&&(e.Mr=Bo(e,r),5>=e.Mr&&(1==e.Lr||e.Mr==Ps&&e.Ar-e.en>4096)&&(e.Mr=Ps-1)),e.Pr<Ps||e.Mr>e.Pr)if(e.Nr){if(n=Fs(e,e.u[e.Ar-1]),n&&Yo(e,0),e.Ar++,e.Tr--,0==e.o.It)return 0}else e.Nr=1,e.Ar++,e.Tr--;else{let t=e.Ar+e.Tr-Ps;e.Ar,e.Ir,e.Pr,n=Rs(e,e.Ar-1-e.Ir,e.Pr-Ps),e.Tr-=e.Pr-1,e.Pr-=2;do{++e.Ar<=t&&(r=Do(e,e.Ar))}while(0!=--e.Pr);if(e.Nr=0,e.Mr=Ps-1,e.Ar++,n){let t=Ho(e,!1);if(null!=t)return t}}}if(e.Nr&&(n=Fs(e,e.u[e.Ar-1]),e.Nr=0),e.Or=e.Ar<Ps-1?e.Ar:Ps-1,4==t)return Ho(e,!0)??3;if(e.nr){let t=Ho(e,!1);if(null!=t)return t}return 1}var Jo=852,Ko=us.map(e=>e+1),_o=ps.subarray(0,-1).map(e=>e+3),$o=ds.map(dc),ec=ds.map(uc);$o.push(64,2),ec.push(142,2);var tc=fs.slice(0,-2).map(dc),rc=fs.slice(0,-2).map(uc);tc.push(16,1,73,1,200,1),rc.push(144,1,72,1,78,1);var nc=new ts([..._o,258,0,0]),ac=new ts([..._o,3,0,0]),ic=ys(tc),sc=ys(rc),oc=new ts([...Ko,0,0]),cc=new ts([...Ko,32769,49153]),lc=ys($o),fc=ys(ec);function dc(e,t){return t%2?e:e+16}function uc(e,t){return t%2?e:e+128}function pc(e,t){let r,n=e.Lt,a=e.Ct,i=e.Pt,s=e.Dt,o=e.Mt,c=n.u,l=n.p>>>0,f=n.Vt>>>0,d=n.Rn,u=n.tt,p=(1<<n.Fn)-1,m=(1<<n.rt)-1,w=n.Bt>>>0,h=n.k>>>0,b=n.Ht>>>0,y=n.jn,g=i-(t-e.It),x=i+(e.It-257),v=a+(e.At-5),z=0,k=0,S=0,E=0;e:do{for(;15>f;){if(a>=s.length)break e;l+=s[a++]<<f,f+=8}for(r=d[l&p];;){if(S=r>>>16&255,l>>>=S,f-=S,S=r>>>24,0==S){o[i++]=65535&r;break}if(16&S){if(z=65535&r,S&=15,S){for(;S>f;){if(a>=s.length){n.Un=16200;break e}l+=s[a++]<<f,f+=8}z+=l&(1<<S)-1,l>>>=S,f-=S}for(;15>f;){if(a>=s.length){n.Un=16200;break e}l+=s[a++]<<f,f+=8}for(r=u[l&m];;){if(S=r>>>16&255,l>>>=S,f-=S,S=r>>>24,16&S){if(k=65535&r,S&=15,S){for(;S>f;){if(a>=s.length){n.Un=16200;break e}l+=s[a++]<<f,f+=8}k+=l&(1<<S)-1,l>>>=S,f-=S}let t=z,d=i-g;if(k>d){let r=k-d;if(r>h&&y){e.Zt="invalid distance too far back",n.Un=16209;break e}if(0==b){if(E=w-r,r>=t){for(let e=0;t>e;++e)o[i++]=c[E++];continue e}for(let e=0;r>e;++e)o[i++]=c[E++];t-=r,E=i-k}else if(r>b){E=w+b-r;let e=r-b;if(e>=t){for(let e=0;t>e;++e)o[i++]=c[E++];continue e}for(let t=0;e>t;++t)o[i++]=c[E++];if(t-=e,E=0,t>b){for(let e=0;b>e;++e)o[i++]=c[E++];t-=b,E=i-k}}else{if(E=b-r,r>=t){for(let e=0;t>e;++e)o[i++]=c[E++];continue e}for(let e=0;r>e;++e)o[i++]=c[E++];t-=r,E=i-k}for(;t>2;)o[i++]=o[E++],o[i++]=o[E++],o[i++]=o[E++],t-=3;t&&(o[i++]=o[E++],t>1&&(o[i++]=o[E++]))}else{for(E=i-k;t>2;)o[i++]=o[E++],o[i++]=o[E++],o[i++]=o[E++],t-=3;t&&(o[i++]=o[E++],t>1&&(o[i++]=o[E++]))}break}if(64&S){e.Zt="invalid distance code",n.Un=16209;break e}r=u[(65535&r)+(l&(1<<S)-1)]}break}if(64&S){if(32&S){n.Un=16191;break e}e.Zt="invalid literal/length code",n.Un=16209;break e}r=d[(65535&r)+(l&(1<<S)-1)]}}while(v>a&&x>i);let R=f>>3;a-=R,f-=R<<3,l&=(1<<f)-1,e.Ct=a,e.Pt=i,e.At=v>a?v-a+5:5-(a-v),e.It=x>i?x-i+257:257-(i-x),n.p=l>>>0,n.Vt=f>>>0}var mc=new rs(0);function wc(e,t){let r=mc,n=t?1446:1444;return{...bs(e,0),o:e,Un:16180,On:!1,dr:0,Dn:!1,Cn:0,An:0,Tn:0,Mn:0,u:cs,Pn:0,dt:0,xn:0,Rn:r,tt:r,Fn:0,rt:0,In:0,Nn:0,Zn:0,Wn:0,Ln:r,Bn:new ts(320),Yn:new ts(288),Hn:new rs(n),Vn:0,jn:!0,qn:0,Gn:0,Qn:t}}function hc(e,t,r){return e<<24|t<<16|r}function bc(e=0,t=0,r=0){return hc(e,t,r)}function yc(e=1){return hc(64,e,0)}function gc(e){return(255&e)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>24&255}var xc={Qn:!1,Xn:nc,Jn:ic,Kn:oc,_n:lc,$n:20,ea:257,ta:0,ra:592,na:!1,aa:!0},vc={Qn:!0,Xn:ac,Jn:sc,Kn:cc,_n:fc,$n:19,ea:256,ta:-1,ra:594,na:!0,aa:!1};function zc(e,t,r,n,a,i,s,o){let c,l,f,d,u,p,m,w,h,b,y,g,x,v,z,k,S,E,R,F=new ts(16),j=new ts(16),U=o?vc:xc;for(c=0;15>=c;c++)F[c]=0;for(l=0;r>l;l++)F[t[l]]++;for(u=a.ia,d=15;d>=1&&0==F[d];d--);if(u>d&&(u=d),0==d)return U.aa?(z=yc(1),n.ia[0]=z,n.ia[1]=z,a.ia=1,0):-1;for(f=1;d>f&&0==F[f];f++);for(f>u&&(u=f),w=1,c=1;15>=c;c++)if(w<<=1,w-=F[c],0>w)return-1;if(w>0&&(0==e||1!=d))return-1;for(j[1]=0,c=1;15>c;c++)j[c+1]=j[c]+F[c];for(l=0;r>l;l++)0!=t[l]&&(i[j[t[l]]++]=l);switch(e){case 0:S=E=i,R=U.$n;break;case 1:S=U.Xn,E=U.Jn,R=U.ea;break;default:S=U.Kn,E=U._n,R=U.ta}if(b=0,l=0,c=f,k=s.ia,p=u,m=0,x=-1,h=1<<u,v=h-1,1==e&&(U.na?h>=Jo:h>Jo)||2==e&&(U.na?h>=U.ra:h>U.ra))return 1;for(;;){z=kc(i,l,c,m,e,S,E,R,U.Qn),y=1<<c-m,g=1<<p,f=g;do{g-=y;let e=(b>>m)+g;n.ia[k+e]=z}while(0!=g);for(y=1<<c-1;b&y;)y>>=1;if(0!=y?(b&=y-1,b+=y):b=0,l++,0==--F[c]){if(c==d)break;c=t[i[l]]}if(c>u&&(b&v)!=x){for(0==m&&(m=u),k+=1<<p,p=c-m,w=1<<p;d>p+m&&(w-=F[p+m],w>0);)p++,w<<=1;if(h+=1<<p,1==e&&(U.na?h>=Jo:h>Jo)||2==e&&(U.na?h>=U.ra:h>U.ra))return 1;x=b&v,n.ia[s.ia+x]=hc(p,u,k-s.ia)}}if(0!=b)for(z=yc(c-m);0!=b;){for(0!=m&&(b&v)!=x&&(m=0,c=u,k=s.ia,p=u,z=yc(c)),n.ia[k+(b>>m)]=z,y=1<<c-1;b&y;)y>>=1;0!=y?(b&=y-1,b+=y):b=0}return s.ia+=h,a.ia=u,0}function kc(e,t,r,n,a,i,s,o,c){let l;if(c?e[t]<o:e[t]+1<o)l=bc(0,r-n,e[t]);else if(c?e[t]>o:e[t]>=o)if(c&&1==a){let a=e[t]-257;l=bc(s[a],r-n,i[a])}else{let a=c?e[t]:e[t]-o;l=bc(s[a],r-n,i[a])}else l=((e=0)=>hc(96,e,0))(r-n);return l}var Sc=new rs(0),Ec={sa:!0,oa:new rs(544),ca:Sc,la:Sc},Rc={sa:!0,oa:new rs(544),ca:Sc,la:Sc};function Fc(e){let t;return!(e&&(t=e.Lt,!(!t||t.o!=e||t.Qn&&(16191>t.Un||t.Un>16209)||!t.Qn&&(16180>t.Un||t.Un>16211))))}function jc(e){let t=e.Qn?Rc:Ec,r={ia:0};if(t.sa){let n,a,i;for(n=0;144>n;)e.Bn[n++]=8;for(;256>n;)e.Bn[n++]=9;for(;280>n;)e.Bn[n++]=7;for(;288>n;)e.Bn[n++]=8;t.oa.fill(0),i=t.oa,t.ca=i,a=9;let s={ia:i},o={ia:a},c={ia:0};for(zc(1,e.Bn,288,s,o,e.Yn,c,e.Qn),i=s.ia,a=o.ia,e.Vn=c.ia,n=0;32>n;)e.Bn[n++]=5;a=5;let l=c.ia,f={ia:i},d={ia:a};r.ia=l,zc(2,e.Bn,32,f,d,e.Yn,r,e.Qn),t.la=i.slice(l),t.sa=!1}e.Rn=t.ca,e.Fn=9,e.tt=t.la,e.rt=5,e.Vn=r.ia}var Uc=class extends is{constructor(){super("Need more input")}};function Oc(e,t){let r,n,a,i,s,o,c,l,f,d,u,p,m,w,h,b,y,g=new es(4);if(Fc(e)||!e.Mt||!e.Dt&&0!=e.At)return-2;o=0,l=0,c=0,f=0,n=cs,a=0,i=cs,s=0,r=e.Lt,16191==r.Un&&(r.Un=16192),S(),d=o,u=c,y=0;try{for(;;)switch(r.Un){case 16180:if(0==r.dr){r.Un=16192;break}if(j(16),2&r.dr&&35615==l){0==r.Yt&&(r.Yt=15),r.Tn=wo(0),r.Tn=z(r.Tn,l),R(),r.Un=16181;break}if(r.ur&&(r.ur.fa=-1),!(1&r.dr)||((U(8)<<8)+(l>>8))%31){e.Zt="incorrect header check",r.Un=16209;break}if(8!=U(4)){e.Zt="unknown compression method",r.Un=16209;break}if(O(4),b=U(4)+8,0==r.Yt&&(r.Yt=b),b>15||b>r.Yt){e.Zt="invalid window size",r.Un=16209;break}r.An=1<<b,r.Cn=0,e.i=r.Tn=ao(0),r.Un=512&l?16189:16191,R();break;case 16181:if(j(16),r.Cn=l,8!=(255&r.Cn)){e.Zt="unknown compression method",r.Un=16209;break}if(57344&r.Cn){e.Zt="unknown header flags set",r.Un=16209;break}r.ur&&(r.ur.gn=l>>8&1),512&r.Cn&&4&r.dr&&(r.Tn=z(r.Tn,l)),R(),r.Un=16182;case 16182:j(32),r.ur&&(r.ur.kn=l),512&r.Cn&&4&r.dr&&(r.Tn=k(r.Tn,l)),R(),r.Un=16183;case 16183:j(16),r.ur&&(r.ur.da=255&l,r.ur.Sn=l>>8),512&r.Cn&&4&r.dr&&(r.Tn=z(r.Tn,l)),R(),r.Un=16184;case 16184:1024&r.Cn?(j(16),r.Pn=l,r.ur&&(r.ur.En=l),512&r.Cn&&4&r.dr&&(r.Tn=z(r.Tn,l)),R()):r.ur&&(r.ur.xn=cs),r.Un=16185;case 16185:if(1024&r.Cn&&(p=r.Pn,p>o&&(p=o),p&&(r.ur&&r.ur.xn&&r.ur.ua&&(b=r.ur.En-r.Pn)<r.ur.ua&&ms(r.ur.xn,b,n,a,p),512&r.Cn&&4&r.dr&&(r.Tn=wo(r.Tn,n.subarray(a,a+p),p)),o-=p,a+=p,r.Pn-=p),r.Pn))return x();r.Pn=0,r.Un=16186;case 16186:if(2048&r.Cn){if(0==o)return x();p=0;do{b=n[a+p++],r.ur&&r.ur.pa&&r.Pn<r.ur.pa&&(r.ur.vn[r.Pn++]=b)}while(b&&o>p);if(512&r.Cn&&4&r.dr&&(r.Tn=wo(r.Tn,n.subarray(a,a+p),p)),o-=p,a+=p,b)return x()}else r.ur&&(r.ur.vn=cs);r.Pn=0,r.Un=16187;case 16187:if(4096&r.Cn){if(0==o)return x();p=0;do{b=n[a+p++],r.ur&&r.ur.ma&&r.Pn<r.ur.ma&&(r.ur.zn[r.Pn++]=b)}while(b&&o>p);if(512&r.Cn&&4&r.dr&&(r.Tn=wo(r.Tn,n.subarray(a,a+p),p)),o-=p,a+=p,b)return x()}else r.ur&&(r.ur.zn=cs);r.Un=16188;case 16188:if(512&r.Cn){if(j(16),4&r.dr&&l!=(65535&r.Tn)){e.Zt="header crc mismatch",r.Un=16209;break}R()}r.ur&&(r.ur.yn=r.Cn>>9&1,r.ur.fa=1),e.i=r.Tn=wo(0),r.Un=16191;break;case 16189:j(32),e.i=r.Tn=gc(l),R(),r.Un=16190;case 16190:if(!r.Dn)return E(),2;e.i=r.Tn=ao(0),r.Un=16191;case 16191:if(5==t||6==t)return x();case 16192:if(r.On){D(),r.Un=16206;break}switch(j(3),r.On=!!U(1),O(1),U(2)){case 0:r.Un=16193;break;case 1:if(jc(r),r.Un=16199,6==t)return O(2),x();break;case 2:r.Un=16196;break;case 3:e.Zt="invalid block type",r.Un=16209}O(2);break;case 16193:if(D(),j(32),(65535&l)!=(l>>>16^65535)){e.Zt="invalid stored block lengths",r.Un=16209;break}if(r.Pn=65535&l,R(),r.Un=16194,6==t)return x();case 16194:r.Un=16195;case 16195:if(p=r.Pn,p){if(p>o&&(p=o),p>c&&(p=c),0==p)return x();ms(i,s,n,a,p),o-=p,a+=p,c-=p,s+=p,r.Pn-=p;break}r.Un=16191;break;case 16196:if(j(14),r.Nn=U(5)+257,O(5),r.Zn=U(5)+1,O(5),r.In=U(4)+4,O(4),r.Nn>286||!r.Qn&&r.Zn>30){e.Zt=r.Qn?"too many length":"too many length or distance symbols",r.Un=16209;break}r.Wn=0,r.Un=16197;case 16197:for(;r.Wn<r.In;)j(3),r.Bn[os[r.Wn++]]=U(3),O(3);for(;19>r.Wn;)r.Bn[os[r.Wn++]]=0;r.Ln=r.Hn,r.Rn=r.tt=r.Ln,r.Fn=7;let d={ia:r.Ln},g={ia:r.Fn},C={ia:0};if(y=zc(0,r.Bn,19,d,g,r.Yn,C,r.Qn),r.Ln=d.ia,r.Fn=g.ia,y){e.Zt="invalid code lengths set",r.Un=16209;break}r.Wn=0,r.Un=16198;case 16198:for(;r.Wn<r.Nn+r.Zn;){for(;w=r.Rn[U(r.Fn)],(w>>>16&255)>f;)F();if(16>(65535&w))O(w>>>16&255),r.Bn[r.Wn++]=65535&w;else{if(16==(65535&w)){if(j(2+(w>>>16&255)),O(w>>>16&255),0==r.Wn){e.Zt="invalid bit length repeat",r.Un=16209;break}b=r.Bn[r.Wn-1],p=3+U(2),O(2)}else 17==(65535&w)?(j(3+(w>>>16&255)),O(w>>>16&255),b=0,p=3+U(3),O(3)):(j(7+(w>>>16&255)),O(w>>>16&255),b=0,p=11+U(7),O(7));if(r.Wn+p>r.Nn+r.Zn){e.Zt="invalid bit length repeat",r.Un=16209;break}for(;p--;)r.Bn[r.Wn++]=b}}if(16209==r.Un)break;if(0==r.Bn[256]){e.Zt="invalid code -- missing end-of-block",r.Un=16209;break}r.Ln=r.Hn,r.Fn=9;let A={ia:r.Ln},T={ia:r.Fn},M={ia:0};y=zc(1,r.Bn,r.Nn,A,T,r.Yn,M,r.Qn),r.Ln=A.ia,r.Fn=T.ia;let P=M.ia;if(r.Rn=r.Ln.slice(0,P),y){e.Zt="invalid literal/lengths set",r.Un=16209;break}r.rt=6;let I=r.Bn.subarray(r.Nn,r.Nn+r.Zn),N={ia:r.Ln},Z={ia:r.rt},W={ia:P};if(y=zc(2,I,r.Zn,N,Z,r.Yn,W,r.Qn),r.Ln=N.ia,r.rt=Z.ia,r.tt=r.Ln.slice(P),y){e.Zt="invalid distances set",r.Un=16209;break}if(r.Un=16199,6==t)return x();case 16199:r.Un=16200;case 16200:if(!r.Qn&&o>=6&&c>=258){E(),pc(e,u),S(),16191==r.Un&&(r.qn=-1);break}for(r.qn=0;w=r.Rn[U(r.Fn)],(w>>>16&255)>f;)F();if(w>>>24&&!(w>>>24&240)){for(h=w;w=r.Rn[(65535&h)+(U((h>>>16&255)+(h>>>24))>>(h>>>16&255))],(h>>>16&255)+(w>>>16&255)>f;)F();O(h>>>16&255),r.qn+=h>>>16&255}if(O(w>>>16&255),r.qn+=w>>>16&255,r.Pn=65535&w,!(w>>>24)){r.Un=16205;break}if(w>>>24&32){r.qn=-1,r.Un=16191;break}if(w>>>24&64){e.Zt="invalid literal/length code",r.Un=16209;break}r.xn=w>>>24&(r.Qn?31:15),r.Un=16201;case 16201:r.xn&&(j(r.xn),r.Pn+=U(r.xn),O(r.xn),r.qn+=r.xn),r.Gn=r.Pn,r.Un=16202;case 16202:for(;w=r.tt[U(r.rt)],(w>>>16&255)>f;)F();if(!(w>>>24&240)){for(h=w;w=r.tt[(65535&h)+(U((h>>>16&255)+(h>>>24))>>(h>>>16&255))],(h>>>16&255)+(w>>>16&255)>f;)F();O(h>>>16&255),r.qn+=h>>>16&255}if(O(w>>>16&255),r.qn+=w>>>16&255,w>>>24&64){e.Zt="invalid distance code",r.Un=16209;break}r.dt=65535&w,r.xn=w>>>24&15,r.Un=16203;case 16203:r.xn&&(j(r.xn),r.dt+=U(r.xn),O(r.xn),r.qn+=r.xn),r.Un=16204;case 16204:if(0==c)return x();if(p=u-c,r.dt>p){if(p=r.dt-p,p>r.k&&r.jn){e.Zt="invalid distance too far back",r.Un=16209;break}p>r.Ht?(p-=r.Ht,m=r.Bt-p):m=r.Ht-p,p>r.Pn&&(p=r.Pn),p>c&&(p=c);for(let e=0;p>e;++e)i[s]=255&r.u[m],++s,++m}else{m=s-r.dt,p=r.Pn,p>c&&(p=c);for(let e=0;p>e;++e)i[s]=i[m],++s,++m}p>c&&(p=c),c-=p,r.Pn-=p,0==r.Pn&&(r.Un=16200);break;case 16205:if(0==c)return x();i[s++]=r.Pn,c--,r.Un=16200;break;case 16206:if(r.dr){if(j(32),u-=c,e.Nt+=u,r.Mn+=u,4&r.dr&&u){let t=i.subarray(s-u,s);e.i=r.Tn=v(r.Tn,t,u)}if(u=c,4&r.dr&&(r.Cn?l:gc(l)>>>0)!=r.Tn){e.Zt="incorrect data check",r.Un=16209;break}R()}r.Un=16207;case 16207:if(r.dr&&r.Cn){if(j(32),4&r.dr&&l!=(4294967295&r.Mn)){e.Zt="incorrect length check",r.Un=16209;break}R()}r.Un=16208;case 16208:return y=1,x();case 16209:return y=-3,x();case 16210:return-4;default:return-2}}catch(e){if(e instanceof Uc)return x();throw e}function x(){if(E(),r.Bt||u!=e.It&&16209>r.Un&&(r.Qn?16208>r.Un:16206>r.Un)||4!=t){let t=u-e.It;if(((e,t,r)=>{let n=e.Lt;if(!(n.u&&0!=n.u.length||(n.u=new es(1<<n.Yt),n.u)))return 1;if(0==n.Bt&&(n.Bt=1<<n.Yt,n.Ht=0,n.k=0),r<n.Bt){let e=n.Bt-n.Ht;e>r&&(e=r),ms(n.u,n.Ht,t,t.length-r,e),(r-=e)?(ms(n.u,0,t,t.length-r,r),n.Ht=r,n.k=n.Bt):(n.Ht+=e,n.Ht==n.Bt&&(n.Ht=0),n.k<n.Bt&&(n.k+=e))}else ms(n.u,0,t,t.length-n.Bt,n.Bt),n.Ht=0,n.k=n.Bt;return 0})(e,e.Mt.subarray(e.Pt-t,e.Pt),t))return r.Un=16210,-4}return d-=e.At,u-=e.It,e.Tt+=d,e.Nt+=u,r.Mn+=u,4&r.dr&&u&&(e.i=r.Tn=v(r.Tn,e.Mt.subarray(e.Pt-u,e.Pt),u)),e.t=r.Vt+(r.On?64:0)+(16191==r.Un?128:0)+(16199==r.Un||16194==r.Un?256:0),(0==d&&0==u&&0==y||4==t&&0==y)&&(y=-5),y}function v(e,t,n){return r.Cn?wo(e,t,n):ao(e,t,n)}function z(e,t){return g[0]=255&t,g[1]=t>>>8&255,wo(e,g,2)>>>0}function k(e,t){return g[0]=255&t,g[1]=t>>>8&255,g[2]=t>>>16&255,g[3]=t>>>24&255,wo(e,g,4)>>>0}function S(){i=e.Mt,s=e.Pt,c=e.It,n=e.Dt,a=e.Ct,o=e.At,l=r.p,f=r.Vt}function E(){e.Mt=i,e.Pt=s,e.It=c,e.Dt=n,e.Ct=a,e.At=o,r.p=l,r.Vt=f}function R(){l=0,f=0}function F(){if(0==o)throw new Uc;o--,l+=(255&n[a])<<f,a++,l>>>=0,f+=8}function j(e){for(;e>f;)F()}function U(e){return l&(1<<e)-1}function O(e){l>>>=e,f-=e}function D(){l>>>=7&f,f-=7&f}}function Dc(e){return Fc(e)?-2:0}var Cc=65536,Ac=class{constructor(e=16,t=Cc){this.wa=[],this.ha=e;for(let r=0;r<as.min(e,4);r++)this.wa.push(new es(t))}ba(e=Cc){for(let t=this.wa.length-1;t>=0;t--){let r=this.wa[t];if(r.length>=e)return this.wa.splice(t,1),r}return new es(e)}release(e){this.wa.length<this.ha&&this.wa.push(e)}};function Tc(e){let t=new Ac(32,Cc),r=null;function n(){let t=e.ya(),r=e.ga(t);if(0!=r&&0!=r)throw new is("init failed: "+r);return{o:t}}function a(e){try{t.release(e)}catch{}}return new ns({start(){},transform(i,s){r||(r=n());let o=r.o;if(r.xa)return;let c=0;for(;c<i.length;){let n=as.min(i.length-c,32768),l=i.subarray(c,c+n);for(o.Dt=l,o.Ct=0,o.At=l.length;o.At>0;){let n=t.ba(),i=!1;try{o.Mt=n,o.Pt=0,o.It=n.length;let a=e.va(o,0),c=n.length-o.It;if(c>0){let e=!1,r={za:n.subarray(0,c),release:()=>{e||(e=!0,t.release(n))}};i=!0,s.enqueue(r)}if(1==a){r.xa=!0;break}if(0!=a)throw new is("process error: "+a)}finally{i||a(n)}}if(r.xa)break;c+=n}},flush(i){if(r&&r.xa)return;r||(r=n());let s=r.o;for(;;){let r=t.ba(),n=!1;try{s.Mt=r,s.Pt=0,s.It=r.length;let a=e.va(s,4),o=r.length-s.It;if(o>0){let e=!1,a={za:r.subarray(0,o),release:()=>{e||(e=!0,t.release(r))}};n=!0,i.enqueue(a)}if(1==a)break;if(0!=a)throw new is("finalization error: "+a)}finally{n||a(r)}}let o=e.ka(s);if(0!=o&&0!=o)throw new is("end failed: "+o)}})}function Mc(){return new ns({start(){},transform(e,t){try{t.enqueue(e.za.slice(0))}finally{e.release()}},flush(){}})}I({workerURI:"./core/web-worker-native.js",wasmURI:null,CompressionStreamZlib:class{constructor(e="deflate",t){let r=function(e="deflate",t){let r="gzip"==e?31:"deflate-raw"==e?-15:15,n=t&&"number"==typeof t.level?t.level:-1;return Tc({ya:()=>(()=>{let e=hs();return e.Lt=Os(e),e})(),ga:e=>((e,t,r=8,n=15,a=Ms,i=0)=>{let s=1;if(!e)return-2;if(e.Zt="",-1==t&&(t=6),0>n){if(s=0,-15>n)return-2;n=-n}else n>15&&(s=2,n-=16);if(1>a||a>9||8!=r||8>n||n>15||0>t||t>9||0>i||i>4||8==n&&1!=s)return-2;8==n&&(n=9);let o=Os(e);return o?(e.Lt=o,o.o=e,o.lr=42,o.dr=s,o.ur=void 0,o.Yt=n,o.Bt=1<<o.Yt,o.pr=o.Bt-1,o.mr=a+7,o.wr=1<<o.mr,o.yr=o.wr-1,o.gr=(o.mr+Ps-1)/Ps,o.u=new es(2*o.Bt),o.vr=new ts(o.Bt),o.zr=new ts(o.wr),o.k=0,o.kr=1<<a+6,o.$t=new es(4*o.kr),o.Er=4*o.kr,o.u&&o.vr&&o.zr&&o.$t?(o.Xr=o.$t.subarray(o.kr),o.rr=o.Sr+o.kr,o.cr=3*(o.kr-1),o.Wr=t,o.Lr=i,o._r=r,(e=>{let t=(e=>{let t;return Po(e)?-2:(e.Tt=e.Nt=0,e.Zt="",e.t=2,t=e.Lt,t.er=0,t.Rr=t.Sr,0>t.dr&&(t.dr=-t.dr),t.lr=2==t.dr?57:42,e.i=2==t.dr?wo(0):ao(0),t.Dr=-2,(e=>{if(e.ir&&e.ir.length>=Hs)for(let t=0;Hs>t;t++)e.ir[t]=Cs();else{e.ir=[];for(let t=0;Hs>t;t++)e.ir.push(Cs())}if(e.sr&&e.sr.length>=2*Bs+1)for(let t=0;2*Bs+1>t;t++)e.sr[t]=Cs();else{e.sr=[];for(let t=0;2*Bs+1>t;t++)e.sr.push(Cs())}if(e.cn&&e.cn.length>=2*Ys+1)for(let t=0;2*Ys+1>t;t++)e.cn[t]=Cs();else{e.cn=[];for(let t=0;2*Ys+1>t;t++)e.cn.push(Cs())}e.ln=new gs(e.ir,new xs(eo,Xs,Ws+1,Ls,Vs)),e.fn=new gs(e.sr,new xs(to,Js,0,Bs,Vs)),e.dn=new gs(e.cn,new xs(null,Ks,0,Ys,7)),e.p=0,e.Vt=0,e.Jr=0,go(e)})(t),0)})(e);return 0==t&&(e=>{e.$r=2*e.Bt,Co(e),e.Vr=jo[e.Wr].wn,e.Br=jo[e.Wr].pn,e.Yr=jo[e.Wr].hn,e.Hr=jo[e.Wr].bn,e.Ar=0,e.Cr=0,e.Tr=0,e.Or=0,e.Mr=e.Pr=Ps-1,e.Nr=0,e.Zr=0})(e.Lt),t})(e)):(o.lr=666,e.Zt=vs(-4),Lo(e),-4)):-4})(e,n,8,r,8,0),va:Wo,ka:Lo})}(e,t);this.writable=r.writable,this.readable=r.readable.pipeThrough(Mc())}},DecompressionStreamZlib:class{constructor(e="deflate"){let t=((e="deflate")=>{let t="gzip"==e?31:"deflate-raw"==e?-15:"deflate64-raw"==e?-16:15;return Tc({ya:()=>(()=>{let e=hs();return e.Lt=wc(e,!1),e})(),ga:e=>function(e,t){let r,n;if(!e)return-2;e.Zt="";let a=-16==t;return n=wc(e,a),e.Lt=n,n.o=e,n.Un=a?16191:16180,r=((e,t)=>{let r,n;if(Fc(e))return-2;if(n=e.Lt,0>t){if(-16>t)return-2;r=0,n.Qn=-16==t,t=-t}else r=5+(t>>4),n.Qn=!1,48>t&&(t&=15);let a=n.Qn?16:15;return t&&(8>t||t>a)?-2:(n.u.length>0&&n.Yt!=t&&(n.u=cs),n.dr=r,n.Yt=t,(e=>{let t;return Fc(e)?-2:(t=e.Lt,t.Bt=0,t.k=0,t.Ht=0,(e=>{let t;return Fc(e)?-2:(t=e.Lt,e.Tt=e.Nt=t.Mn=0,e.Zt="",t.dr&&(e.i=1&t.dr),t.Un=t.Qn?16191:16180,t.On=!1,t.Dn=!1,t.Cn=-1,t.An=t.Qn?65536:32768,delete t.ur,t.p=0,t.Vt=0,t.Rn=t.Hn,t.tt=t.Hn,t.Ln=t.Hn,t.jn=!0,t.qn=-1,0)})(e))})(e))})(e,t),r}(e,t),va:Oc,ka:Dc})})(e);this.writable=t.writable,this.readable=t.readable.pipeThrough(Mc())}}});const Pc="Entry filename already exists",Ic=new Set([1,u,10,p,28789,25461,m,w,h,22613,13]);class Nc{constructor(e,t,r,n){const a=this;if(e.root&&n&&n.getChildByName(t))throw Error(Pc);r||(r={}),Object.assign(a,{fs:e,name:t,data:r.data,options:r.options,id:e.Sa++,parent:n,children:[],uncompressedSize:r.uncompressedSize||0,passThrough:r.passThrough}),!n&&e.root||(e.entries[a.id]=a),n&&a.parent.children.push(a)}moveTo(e){this.fs.move(this,e)}getFullname(){return this.getRelativeName()}getRelativeName(e=this.fs.root){let t=this.name,r=this.parent;for(;r&&r!=e;)t=(r.name?r.name+"/":"")+t,r=r.parent;return t}isDescendantOf(e){let t=this.parent;for(;t&&t.id!=e.id;)t=t.parent;return!!t}rename(e){const t=this.parent;if(t&&t.getChildByName(e))throw Error(Pc);this.name=e}}class Zc extends Nc{constructor(e,t,r,n){super(e,t,r,n);const a=this;a.Reader=r.Reader,a.Writer=r.Writer,r.getData&&(a.getData=r.getData)}clone(){return new Zc(this.fs,this.name,this)}async getData(e,t={}){const r=this;if(!e||e.constructor==r.Writer&&r.data)return r.data;{const n=r.reader=Vc(r.Reader,r.data,t),a=r.data?r.data.uncompressedSize:n.size;await Promise.all([cn(n),cn(e,a)]);const{readable:i}=n;return r.uncompressedSize=n.size,await i.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return!(!this.data||!this.data.encrypted)}async checkPassword(e,t={}){const r=this;if(!r.isPasswordProtected())return!0;try{return await r.data.getData(null,Object.assign({},t,{password:e,checkPasswordOnly:!0})),!0}catch(e){if(e.message==Re)return!1;throw e}}getText(e,t){return this.getData(new Mr(e),t)}getBlob(e,t){return this.getData(new Ar(e),t)}getData64URI(e,t){return this.getData(new Ur(e),t)}getUint8Array(e){return this.getData(new rn,e)}getWritable(e=new WritableStream,t){return this.getData({writable:e},t)}async getArrayBuffer(e){return ge(await this.getUint8Array(e)).buffer}replaceBlob(e){Object.assign(this,{data:e,Reader:Cr,Writer:Ar,reader:null})}replaceText(e){Object.assign(this,{data:e,Reader:Tr,Writer:Mr,reader:null})}replaceData64URI(e){Object.assign(this,{data:e,Reader:jr,Writer:Ur,reader:null})}replaceUint8Array(e){Object.assign(this,{data:e,Reader:tn,Writer:rn,reader:null})}replaceReadable(e){Object.assign(this,{data:null,Reader:Yc(e),Writer:null,reader:null})}}class Wc extends Nc{constructor(e,t,r,n){super(e,t,r,n),this.directory=!0}clone(e){const t=this,r=new Wc(t.fs,t.name,t);return e&&(r.children=t.children.map(t=>{const n=t.clone(e);return n.parent=r,n})),r}addDirectory(e,t){return Kc(this,e,{options:t},!0)}addText(e,t,r={}){return Kc(this,e,{data:t,Reader:Tr,Writer:Mr,options:r,uncompressedSize:t.length})}addBlob(e,t,r={}){return Kc(this,e,{data:t,Reader:Cr,Writer:Ar,options:r,uncompressedSize:t.size})}addData64URI(e,t,r={}){let n=t.length;for(;"="==t.charAt(n-1);)n--;const a=t.indexOf(",")+1;return Kc(this,e,{data:t,Reader:jr,Writer:Ur,options:r,uncompressedSize:Math.floor(.75*(n-a))})}addUint8Array(e,t,r={}){return Kc(this,e,{data:t,Reader:tn,Writer:rn,options:r,uncompressedSize:t.length})}addHttpContent(e,t,r={}){return Kc(this,e,{data:t,Reader:class extends $r{constructor(e){super(e,r)}},options:r})}addReadable(e,t,r={}){return Kc(this,e,{Reader:Yc(t),options:r})}addFileSystemEntry(e,t={}){return Qc(this,e,t)}addFileSystemHandle(e,t={}){return Qc(this,e,t)}addFile(e,t={}){return(t=Object.assign({},t)).lastModDate||(t.lastModDate=new Date(e.lastModified)),Kc(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}Ea(e,t){return Kc(this,e,t)}importBlob(e,t){return this.importZip(new Cr(e),t)}importData64URI(e,t){return this.importZip(new jr(e),t)}importUint8Array(e,t){return this.importZip(new tn(e),t)}importHttpContent(e,t){return this.importZip(new $r(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new Ar(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new Ur(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new rn,e)}async exportWritable(e=new WritableStream,t={}){return await this.exportZip({writable:e},t),e}exportFileSystemHandle(e,t={}){return(async(e,t,r)=>{const n=Bc([e],"uncompressedSize"),a=new Map;return await i(e,t),t;async function i(e,t){if(r.concurrent){const r=(await Promise.allSettled(e.children.map(e=>s(e,t)))).find(e=>"rejected"==e.status);if(r)throw r.reason}else for(const r of e.children)await s(r,t)}async function s(e,t){try{if(e.directory){const r=await t.getDirectoryHandle(e.name,{create:!0});await i(e,r)}else{const i=await t.getFileHandle(e.name,{create:!0}),s=await i.createWritable();await e.getData({writable:s},Object.assign({},r,{onprogress:async t=>{if(r.onprogress){a.set(e.id,t);try{await r.onprogress(Array.from(a.values()).reduce((e,t)=>e+t,0),n)}catch{}}}}))}}catch(t){throw Error(t.message+(e?" ("+e.name+")":""),{cause:t})}}})(this,e,t)}async importZip(e,t={}){await cn(e);const r=new Sa(e,t),n=[],a=await r.getEntries();for(const e of a){let r=this;try{const a=e.filename.split("/"),i=a.pop();if(a.forEach(e=>{const t=r;if(r=r.getChildByName(e),r){if(!r.directory)throw Error(Pc)}else r=new Wc(this.fs,e,{data:null},t),n.push(r)}),e.directory){let t=r;if(i)if(t=r.getChildByName(i),t){if(!t.directory)throw Error(Pc)}else t=new Wc(this.fs,i,{data:null},r),n.push(t);t==this||t.data||(t.data=e)}else n.push(Kc(r,i,{data:e,Reader:Hc(Object.assign({},t)),uncompressedSize:e.uncompressedSize,passThrough:t.passThrough}))}catch(t){try{t.cause={entry:e}}catch{}throw t}}return n}async exportZip(e,t={}){const r=this;(t=Object.assign({},t)).bufferedWrite===E&&(t.bufferedWrite=!0);const[n]=await Promise.all([qc(r,t.readerOptions),cn(e)]),a=new vi(e,t);return await(async(e,t,r,n,a)=>{const i=t,s=new Map;await async function e(t,o){async function c(o){const c=n.relativePath?o.getRelativeName(i):o.getFullname(),l=o.options||{};let f={};if(o.data instanceof qn){const{externalFileAttributes:e,versionMadeBy:t,comment:r,lastModDate:a,creationDate:i,lastAccessDate:s,uncompressedSize:c,encrypted:l,zipCrypto:d,crc32:u,compressionMethod:p,extraFieldAES:m,internalFileAttributes:w,extraField:h,uid:b,gid:y}=o.data;f={externalFileAttributes:e,versionMadeBy:t,comment:r,lastModDate:a,creationDate:i,lastAccessDate:s,internalFileAttributes:w};const g=(e=>{if(e){const t=new Map;if(e.forEach((e,r)=>{Ic.has(r)||t.set(r,e.data)}),t.size)return t}})(h);if(g&&(f.extraField=g),b===E&&y===E||Object.assign(f,{uid:b,gid:y,unixExtraFieldType:n.unixExtraFieldType||"infozip"}),o.passThrough){let e,t;0===p&&(e=0),m&&(t=m.strength),f=Object.assign(f,{passThrough:!0,encrypted:l,zipCrypto:d,crc32:u,uncompressedSize:c,level:e,encryptionStrength:t,compressionMethod:p})}}await t.add(c,a.get(o),Object.assign({},n,f,l,{directory:o.directory,onprogress:async e=>{if(n.onprogress){s.set(c,e);try{await n.onprogress(Array.from(s.values()).reduce((e,t)=>e+t),r)}catch{}}}})),await e(t,o)}await(async()=>{if(n.bufferedWrite){const e=(await Promise.allSettled(o.children.map(c))).find(e=>"rejected"==e.status);if(e)throw e.reason}else for(const e of o.children)await c(e)})()}(e,t)})(a,r,Bc([r],"uncompressedSize"),t,n),await a.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let r=0;r<t.length;r++){const n=t[r];if(n.name==e)return n}}isPasswordProtected(){const e=this.children;for(let t=0;t<e.length;t++)if(e[t].isPasswordProtected())return!0;return!1}async checkPassword(e,t={}){const r=this.children;return!(await Promise.all(r.map(r=>r.checkPassword(e,t)))).includes(!1)}}const Lc={FS:class{constructor(){Jc(this)}get children(){return this.root.children}remove(e){Gc(e);const t=[e];for(;t.length;){const e=t.pop();this.entries[e.id]=null;for(const r of e.children)t.push(r)}e.parent=E}move(e,t){if(e==this.root)throw Error("Root directory cannot be moved");if(!t.directory)throw Error("Target entry is not a directory");if(t.isDescendantOf(e))throw Error("Entry is a ancestor of target entry");if(e!=t){const r=t.getChildByName(e.name);if(r){if(r!=e)throw Error(Pc)}else Gc(e),e.parent=t,t.children.push(e),((e,t)=>{const r=[t];for(;r.length;){const t=r.pop();e.entries[t.id]=t;for(const e of t.children)r.push(e)}})(this,e)}}find(e){const t=e.split("/");let r=this.root;for(let e=0;r&&e<t.length;e++)r=r.getChildByName(t[e]);return r||(r=this.entries.find(t=>t&&(t==this.root||t.isDescendantOf(this.root))&&t.getRelativeName()==e)),r}getById(e){return this.entries[e]}getChildByName(e){return this.root.getChildByName(e)}addDirectory(e,t){return this.root.addDirectory(e,t)}addText(e,t,r){return this.root.addText(e,t,r)}addBlob(e,t,r){return this.root.addBlob(e,t,r)}addData64URI(e,t,r){return this.root.addData64URI(e,t,r)}addUint8Array(e,t,r){return this.root.addUint8Array(e,t,r)}addHttpContent(e,t,r){return this.root.addHttpContent(e,t,r)}addReadable(e,t,r){return this.root.addReadable(e,t,r)}addFileSystemEntry(e,t){return this.root.addFileSystemEntry(e,t)}addFileSystemHandle(e,t){return this.root.addFileSystemHandle(e,t)}addFile(e,t){return this.root.addFile(e,t)}Ea(e,t){return this.root.Ea(e,t)}importBlob(e,t){return Jc(this),this.root.importBlob(e,t)}importData64URI(e,t){return Jc(this),this.root.importData64URI(e,t)}importUint8Array(e,t){return Jc(this),this.root.importUint8Array(e,t)}importHttpContent(e,t){return Jc(this),this.root.importHttpContent(e,t)}importReadable(e,t){return Jc(this),this.root.importReadable(e,t)}importZip(e,t){return Jc(this),this.root.importZip(e,t)}exportBlob(e){return this.root.exportBlob(e)}exportData64URI(e){return this.root.exportData64URI(e)}exportUint8Array(e){return this.root.exportUint8Array(e)}exportWritable(e,t){return this.root.exportWritable(e,t)}exportFileSystemHandle(e,t){return this.root.exportFileSystemHandle(e,t)}exportZip(e,t){return this.root.exportZip(e,t)}isPasswordProtected(){return this.root.isPasswordProtected()}checkPassword(e,t){return this.root.checkPassword(e,t)}},ZipDirectoryEntry:Wc,ZipFileEntry:Zc};function Bc(e,t){let r=0;const n=Array.from(e);for(;n.length;){const e=n.pop();r+=e[t]||0;for(const t of e.children)n.push(t)}return r}function Yc(e){let t;return()=>{if(t)throw Error("Readable stream already consumed");return t=!0,{readable:e}}}function Hc(e){return class extends Rr{constructor(e,t={}){super(),this.entry=e,this.options=t}async init(){const t=this;t.size=t.entry.uncompressedSize;const r=await t.entry.getData(new Ar,Object.assign({},e,t.options));t.data=r,t.Ra=new Cr(r),super.init()}readUint8Array(e,t){return this.Ra.readUint8Array(e,t)}}}function Vc(e,t,r){return e.prototype?new e(t,r):e(t,r)}async function qc(e,t){const r=[],n=[e],a=new Map;for(;n.length;){const e=n.pop();for(const t of e.children)t.directory?n.push(t):r.push(t)}return await Promise.all(r.map(async e=>{const r=e.reader=Vc(e.Reader,e.data,t);a.set(e,r);try{await cn(r)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch{}throw t}r.size!==E&&(e.uncompressedSize=r.size)})),a}function Gc(e){if(e.parent){const t=e.parent.children;t.forEach((r,n)=>{r.id==e.id&&t.splice(n,1)})}}function Qc(e,t,r){return async function e(t,n,a){if(n)try{if((n.isFile||n.isDirectory)&&(n=await Xc(n)),"file"==n.kind){const e=await n.getFile();a.push(t.Ea(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:Object.assign({},{lastModDate:new Date(e.lastModified)},r),uncompressedSize:e.size}))}else if("directory"==n.kind){const r=t.addDirectory(n.name);a.push(r);for await(const t of n.values())await e(r,t,a)}}catch(e){const t=e.message+(n?" ("+n.name+")":"");throw Error(t,{cause:e})}return a}(e,t,[])}async function Xc(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new Promise((t,r)=>e.file(t,r))),e.isDirectory){t.kind="directory";const r=await(async e=>{const t=[];function r(e,n,a){e.readEntries(async i=>{if(i.length){for(const e of i)t.push(await Xc(e));r(e,n,a)}else n(t)},a)}return await new Promise((t,n)=>r(e.createReader(),t,n)),{[Symbol.iterator](){let e=0;return{next(){const r={value:t[e],done:e==t.length};return e++,r}}}}})(e);t.values=()=>r}return t}function Jc(e){e.entries=[],e.Sa=0,e.root=new Wc(e)}function Kc(e,t,r,n){if(e.directory)return n?new Wc(e.fs,t,r,e):new Zc(e.fs,t,r,e);throw Error("Parent entry is not a directory")}let _c;function $c(e){return e&&(_c||(_c=(()=>{const e=Object.create(null);for(const t of"application:0andrew-inset ez,2nodex anx,1pplixware aw,1tom!,4cat!,4serv! atomsrv,5vc!,0bbolin lin,0ccxml!,1dmi-capability cdmia,6ontainer cdmic,5domain cdmid,5object cdmio,5queue cdmiq,1u-seeme cu,0davmount!,1ocbook! dbk,1sptype tsp,2sc+der,4! xdssc,0ecmascript es ecma,1mma!,1nvoy evy,1pub+zip,1xi,0font-tdpfr pfr,1ractals fif,1uturesplash spl,0gml!,1px!,1xf,1zip gz tgz,0hta,1yperstudio stk,0inkml! ink inkml,2ternet-property-stream acx,1pfix,0java-archive jar,5serialized-object ser,5vm class,1sonml+json,0lost! lostxml,0m3g,1ac-binhex40 hqx,2ds!,2rc mrc,4xml! mrcx,2thematica nb ma mb,4ml! mathml mml,1box,1ediaservercontrol! mscml,2talink!,84! meta4,3s!,1ods!,1p21 m21 mp21,24 mp4s,1saccess mdb,2word doc dot wiz,1xf,0oda,1ebps-package! opf,1gg ogx,1lescript axs,1mdoc!,1nenote onetoc onetoc2 onetmp onepkg,1xps,0patch-ops-error! xer,1df,1gp-encrypted pgp,4keys key,4signature asc sig,1ics-rules prf,1kcs10 p10,47-mime p7m p7c,6signature p7s,48 p8,2ix-attr-cert ac,5crl crl,5pkipath pkipath,4cmp pki,1ls!,1ostscript ps ai eps epsi epsf eps2 eps3,1rs.cww cww,1skc! pskcxml,0rar,1df!,1eginfo! rif,2lax-ng-compact-syntax rnc,2source-lists! rl,e-diff! rld,1ls-services! rs,1pki-ghostbusters gbr,5manifest mft,5roa roa,1sd!,2s!,1tf,0sbml!,1cvp-cv-request scq,asponse scs,5vp-request spq,asponse spp,1dp,1et-payment-initiation setpay,4registration-initiation setreg,1hf!,1mil! smi smil,1parql-query rq,7results! srx,1rgs gram,4! grxml,2u!,1sdl!,2ml!,0tei! tei teicorpus,1hraud! tfi,1imestamped-data tsd,0vnd.3gpp.pic-bw-large plb,gsmall psb,gvar pvb,82.tcap tcap,5m.post-it-notes pwn,4accpac.simply.aso aso,iimp imp,6ucobol acu,9rp atc acutc,5dobe.air-application-installer-package+zip air,aformscentral.fcdt fcdt,bxp fxp fxpl,axdp! xdp,bfdf xfdf,5head.space ahead,5irzip.filesecure.azf azf,os azs,5mazon.ebook azw,6ericandynamics.acc acc,6iga.ami ami,5ndroid.package-archive apk,6ser-web-certificate-issue-initiation cii,efunds-transfer-initiation fti,6tix.game-component atx,5pple.installer! mpkg,ampegurl m3u8,5ristanetworks.swi swi,5straea-software.iota iota,5udiograph aep,4blueice.multipass mpm,5mi bmi,5usinessobjects rep,4chemdraw! cdxml,6ipnuts.karaoke-mmd mmd,5inderella cdy,5laymore cla,6oanto.rp9 rp9,7nk.c4group c4g c4d c4f c4p c4u,6uetrust.cartomobile-config c11amc,w-pkg c11amz,5ommonspace csp,6ntact.cmsg cdbcmsg,6smocaller cmc,5rick.clicker clkx,h.keyboard clkk,ipalette clkp,itemplate clkt,iwordbank clkw,7ticaltools.wbs! wbs,5tc-posml pml,5ups-ppd ppd,6rl.car car,9pcurl pcurl,4dart dart,6ta-vision.rdz rdz,5ebian.binary-package deb udeb,6ce.data uvf uvvf uvd uvvd,9ttml! uvt uvvt,9unspecified uvx uvvx,9zip uvz uvvz,6novo.fcselayout-link fe_launch,5na dna,5olby.mlp mlp,5pgraph dpg,5reamfactory dfac,5s-keypoint kpxx,5vb.ait ait,8service svc,5ynageo geo,4ecowin.chart mag,5nliven nml,5pson.esf esf,amsf msf,aquickanime qam,asalt slt,bsf ssf,5szigno3! es3 et3,5zpix-album ez2,apackage ez3,4fdf fdf,6sn.mseed mseed,9seed seed dataless,5lographit gph,6uxtime.clip ftc,5ramemaker fm frame maker book,6ogans.fnc fnc,cltf ltf,5sc.weblaunch fsc,5ujitsu.oasys oas,h2 oa2,h3 oa3,hgp fg5,hprs bh2,8xerox.ddd ddd,focuworks xdw,n.binder xbd,6zzysheet fzs,4genomatix.tuxedo txd,6ogebra.file ggb,dtool ggt,7metry-explorer gex gre,7next gxt,7plan g2w,7space g3w,5mx gmx,5oogle-earth.kml! kml,jz kmz,5rafeq gqf gqs,6oove-account gac,bhelp ghf,bidentity-message gim,cnjector grv,btool-message gtm,gtemplate tpl,bvcard vcg,4hal! hal,6ndheld-entertainment! zmm,5bci hbci,5he.lesson-player les,5p-hpgl hpgl,9id hpid,9s hps,7jlyt jlt,7pcl pcl,axl pclxl,5ydrostatix.sof-data sfd-hdstx,5zn-3d-crossword x3d,4ibm.minipay mpy,9odcap afp listafp list3820,8rights-management irm,8secure-container sc,5ccprofile icc icm,5gloader igl,5mmervision-ivp ivp,iu ivu,5nsors.igm igm,6tercon.formnet xpw xpx,9geo i2g,7u.qbo qbo,afx qfx,5punplugged.rcprofile rcprofile,5repository.package! irp,5s-xpr xpr,6ac.fcs fcs,4jam jam,5cp.javame.midlet-rms rms,5isp jisp,5oost.joda-archive joda,4kahootz ktz ktr,5de.karbon karbon,9chart chrt,9formula kfo,9ivio flw,9ontour kon,9presenter kpr kpt,9spread ksp,9word kwd kwt,5enameaapp htke,5idspiration kia,6nar kne knp,5oan skp skd skt skm,6dak-descriptor sse,4las.las! lasxml,5lamagraphics.life-balance.desktop lbd,vexchange! lbe,5otus-1-2-3 123,aapproach apr,afreelance pre,anotes nsf,aorganizer org,ascreencam scm,awordpro lwp,4macports.portpkg portpkg,5cd mcd,5edcalcdata mc1,7iastation.cdkey cdkey,5fer mwf,6mp mfm,5icrografx.flo flo,figx igx,6f mif,5obius.daf daf,cis dis,bmbk mbk,cqy mqy,csl msl,bplc plc,btxf txf,6phun.application mpn,bcertificate mpc,6zilla.xul! xul,5s-artgalry cil,7cab-compressed cab,7excel xls xlb xlt xlm xla xlc xlw,c.addin.macroenabled.12 xlam,dsheet.binary.macroenabled.12 xlsb,jmacroenabled.12 xlsm,dtemplate.macroenabled.12 xltm,7fontobject eot,7htmlhelp chm,7ims ims,7lrm lrm,7officetheme thmx,8utlook msg,7pki.seccat cat,ctl stl,acertstore sst,8owerpoint ppt pps pot ppa pwz,h.addin.macroenabled.12 ppam,ipresentation.macroenabled.12 pptm,islide.macroenabled.12 sldm,nshow.macroenabled.12 ppsm,itemplate.macroenabled.12 potm,8roject mpp mpt,7word.document.macroenabled.12 docm,ctemplate.macroenabled.12 dotm,aks wps wks wcm wdb,8pl wpl,7xpsdocument xps,6eq mseq,5usician mus,6vee.style msty,5ynfc taglet,4neurolanguage.nlu nlu,5itf ntf nitf,5oblenet-directory nnd,dsealer nns,dweb nnw,6kia.n-gage.data ngdat,hsymbian.install n-gage,aradio-preset rpst,ms rpss,6vadigm.edm edm,fx edx,ext ext,4oasis.opendocument.chart odc,s-template otc,ndatabase odb,nformula odf,u-template odft,ngraphics odg,v-template otg,nimage odi,s-template oti,npresentation odp,z-template otp,nspreadsheet ods,y-template ots,ntext odt,r-master odm otm,stemplate ott,sweb oth,5lpc-sugar xo,5ma.dd2! dd2,5penofficeorg.extension oxt,8xmlformats-officedocument.presentationml.presentation pptx,zresentationml.slide sldx,zresentationml.slideshow ppsx,zresentationml.template potx,yspreadsheetml.sheet xlsx,zpreadsheetml.template xltx,ywordprocessingml.document docx,zordprocessingml.template dotx,5sgeo.mapguide.package mgp,7i.dp dp,9subsystem esa,4palm pdb pqa oprc,6waafile paw,5g.format str,7osasli ei6,5icsel efif,5mi.widget wg,5ocketlearn plf,6werbuilder6 pbd,5reviewsystems.box box,6oteus.magazine mgz,5ublishare-delta-tree qps,5vi.ptid1 ptid,4quark.quarkxpress qxd qxt qwd qwt qxl qxb,4realvnc.bed bed,6cordare.musicxml mxl,m! musicxml,5ig.cryptonote cryptonote,5n-realmedia rm,g-vbr rmvb,5oute66.link66! link66,4sailingtracker.track st,5eemail see,6ma sema,7d semd,7f semf,5hana.informed.formdata ifm,ntemplate itp,jinterchange iif,jpackage ipk,5imtech-mindmapper twd twds,5maf mmf,7rt.teacher teacher,5olent.sdkm! sdkm sdkd,5potfire.dxp dxp,dsfs sfs,5qlite3 db sqlite sqlite3 db-wal sqlite-wal db-shm sqlite-shm,5tardivision.calc sdc,ihart sds,hdraw sda,himpress sdd,hmath sdf smf,hwriter sdw vor,n-global sgl,6epmania.package smzip,estepchart sm,5un.xml.calc sxc,g.template stc,cdraw sxd,g.template std,cimpress sxi,j.template sti,cmath sxm,cwriter sxw,i.global sxg,jtemplate stw,6s-calendar sus susp,5vd svd,5ymbian.install sis sisx,6ncml! xsm,a.dm+wbxml bdm,d! xdm,4tao.intent-module-archive tao,5cpdump.pcap pcap cap dmp,5mobile-livetv tmo,5rid.tpt tpt,7scape.mxs mxs,6ueapp tra,4ufdl ufd ufdl,5iq.theme utz,5majin umj,5nity unityweb,5oml! uoml,4vcx vcx,5isio vsd vst vss vsw vsdx vssx vstx vssm vstm,9nary vis,5sf vsf,4wap.sic sic,9lc slc,8wbxml wbxml,9mlc wmlc,bscriptc wmlsc,5ebturbo wtb,5olfram.player nbp,6rdperfect wpd,f5.1 wp5,5qd wqd,5t.stf stf,4xara xar,5fdl xfdl,4yamaha.hv-dic hvd,escript hvs,evoice hvp,bopenscoreformat osf,q.osfpvg! osfpvg,bsmaf-audio saf,gphrase spf,5ellowriver-custom-menu cmp,4zul zir zirz,5zazz.deck! zaz,1oicexml! vxml,0widget wgt,2nhlp hlp,1sdl!,2policy!,0x-123 wk,27z-compressed 7z,2abiword abw,3ce-compressed ace,3pple-diskimage dmg,3uthorware-bin aab x32 u32 vox,dmap aam,dseg aas,2bcpio bcpio,3ittorrent torrent,3lorb blb blorb,3zip bz,62 bz2 boz,2cbr cbr cba cbt cb7,4z cbz,3df cdf cda,4link vcd,3fs-compressed cfs,3hat chat,4ess-pgn pgn,3ompress z,4nference nsc,3pio cpio,3sh csh,2dgc-compressed dgc,3irector dir dxr cst cct cxt w3d fgd swa,3ms dms,3oom wad,3tbncx! ncx,5ook! dtb,5resource! res,3vi dvi,2eva eva,2font-bdf bdf,7ghostscript gsf,7linux-psf psf,7pcf pcf,7snf snf,7ttf ttf ttc,8ype1 pfa pfb pfm afm,3reearc arc,6mind mm,2gca-compressed gca,3lulx ulx,3numeric gnumeric,3o-sgf sgf,3ramps-xml gramps,5phing-calculator gcf,3tar gtar taz,2hdf hdf,3ttpd-eruby rhtml,8php phtml pht php,b-source phps,b3 php3,c-preprocessed php3p,b4 php4,b5 php5,2ica ica,3nfo info,4stall-instructions install,4ternet-signup ins isp,3phone iii,3so9660-image iso,2java-jnlp-file jnlp,3mol jmz,2killustrator kil,3rita kra krz,2latex latex,3yx lyx,3zh-compressed lzh lha,4x lzx,2maker frm fb fbdoc,3ie mie,3obipocket-ebook prc mobi,3s-application application,5installer msi,5shortcut lnk,5wmd wmd,5xbap xbap,4binder obd,4cardfile crd,5lip clp,4dos-program com exe bat dll,4mediaview mvb m13 m14,6tafile wmf wmz emf emz,5oney mny,4publisher pub,4schedule scd,4terminal trm,4write wri,2netcdf nc,3s-proxy-autoconfig pac dat,3wc nwc,3zb nzb,2object o,3z-application oza,2perfmon pma pmc pmr pmw,5l pm pl,3kcs12 p12 pfx,67-certificates p7b spc,creqresp p7r,3ython-code pyc pyo,2qgis qgs shp shx,3uicktimeplayer qtl,2redhat-package-manager rpm rpa,4search-info-systems ris,3uby rb,2sh sh,4ar shar,4ockwave-flash swf swfl,3ilverlight scr,d-app xap,3ql sql,3tuffit sit,9x sitx,3ubrip srt,3v4cpio sv4cpio,6rc sv4crc,2t3vm-image t3,3ar tar,3ex-gf gf,6pk pk,6tfm tfm,5info texinfo texi,3gif obj,3rash ~ % bak old sik,2ustar ustar,2wais-source src,3ingz wz,2x509-ca-cert crt der cer,3cf xcf,3fig fig,3liff! xlf,3pinstall xpi,3z xz,2zmachine z1 z2 z3 z4 z5 z6 z7 z8,1aml!,1cap-diff! xdf,1enc!,1html! xhtml xht,1ml xml xsl xsd xpdl,3-dtd dtd,1op!,1proc! xpl,1slt!,2pf!,1v! mxml xhvml xvml xvm,0yaml yaml yml,2ng,1in!,1nd.ms-pkipko pko,0zip;audio:0aac,1dpcm adp,1iff aiff aif aff,1mr,3-wb awb,1nnodex axa,0basic au snd,0flac,0midi mid midi kar rmi,1p4 mp4a,2eg mpga mpega mp3 m4a mp2a m2a m3a,4url m3u,0ogg oga ogg spx,1pus,0prs.sid sid,0s3m,1ilk sil,0vnd.dece.audio uva uvva,5igital-winds eol,5ra dra,5ts dts,7.hd dtshd,4lucent.voice lvp,4ms-playready.media.pya pya,4nuera.ecelp4800 ecelp4800,f7470 ecelp7470,f9600 ecelp9600,4rip rip,0wav,1ebm weba,0x-aiff aifc,2caf caf,2gsm gsm,2matroska mka,3s-wax wax,6ma wma,2pn-realaudio ram,e-plugin rmp,2realaudio ra,2sd2 sd2,1m;chemical:0x-alchemy alc,2cache cac cache,7-csf csf,5tvs-binary cbin cascii ctab,3dx cdx,3hem3d c3d,3if cif,3mdf cmdf,4l cml,3ompass cpa,3rossfire bsd,3sml csml csm,3tx ctx,3xf cxf cef,2embl-dl-nucleotide emb embl,2gamess-input inp gam gamin,4ussian-checkpoint fch fchk,cube cub,binput gau gjc gjf,blog gal,3cg8-sequence gcg,3enbank gen,2hin hin,2isostar istr ist,2jcamp-dx jdx dx,2kinemage kin,2macmolecule mcm,5romodel-input mmod,3dl-molfile mol,6rdfile rd,7xnfile rxn,6sdfile sd,6tgf tgf,3mcif mcif,3ol2 mol2,5conn-Z b,4pac-graph gpt,8input mop mopcrt zmt,8out moo,2ncbi-asn1 asn,b-ascii prt ent,cbinary val,2rosdal ros,2swissprot sw,2vamas-iso14976 vms,3md vmd,2xtel xtel,3yz xyz;font:0otf,0woff,42;image:0avif avif avifs,0bmp,0cgm,1is-cod cod,0g3fax g3,1if,0heic heif heic,0ief,0jpeg jpeg jpg jpe jfif jfif-tbnl jif,0ktx,0pcx,1jpeg pjpg,1ng,1rs.btif btif,0sgi,1vg! svg svgz,0tiff tiff tif,0vnd.adobe.photoshop psd,4dece.graphic uvi uvvi uvg uvvg,5jvu djvu djv,5wg dwg,5xf dxf,4fastbidsheet fbs,5px fpx,5st fst,5ujixerox.edmics-mmr mmr,lrlc rlc,4ms-modi mdi,7photo wdp,4net-fpx npx,4wap.wbmp wbmp,4xiff xif,0webp,0x-3ds 3ds,2adobe-dng dng,2canon-cr2 cr2,aw crw,3mu-raster ras,4x cmx,3oreldraw cdr,bpattern pat,btemplate cdt,7photopaint cpt,2epson-erf erf,2freehand fh fhc fh4 fh5 fh7,3uji-raf raf,2icns icns,4on ico,2jg art,3ng jng,2kodak-dcr dcr,8k25 k25,9dc kdc,2minolta-mrw mrw,2nikon-nef nef,2olympus-orf orf,2panasonic-raw raw rw2 rwl,3entax-pef pef ptx,3ict pic pct,3ortable-anymap pnm,bbitmap pbm,bgraymap pgm,bpixmap ppm,2rgb rgb,2sigma-x3f x3f,3ony-arw arw,7sr2 sr2,9f srf,2tga tga,2xbitmap xbm,3pixmap xpm,3windowdump xwd;message:0rfc822 eml mime mht mhtml nws;model:0iges igs iges,0mesh msh mesh silo,0vnd.collada! dae,4dwf dwf,4gdl gdl,5tw gtw,4mts mts,4usdz+zip usdz,4vtu vtu,1rml wrl vrml,0x3d+binary x3db x3dbz,4vrml x3dv x3dvz,3! x3dz;text:0cache-manifest manifest appcache,2lendar ics icz ifb,1ss,2v,0h323 323,1tml html htm shtml stm,0iuls uls,0javascript js,1son,0markdown md markdown mdown markdn,0n3,0plain txt text brf conf def list log in bas diff ksh,1rs.lines.tag dsc,0richtext rtx,0scriptlet sct wsc,1gml sgml sgm,0tab-separated-values tsv,1exmacs tm,1roff t tr roff man me ms,1urtle ttl,0uri-list uri uris urls,0vcard,1nd.curl curl,8.dcurl dcurl,9mcurl mcurl,9scurl scurl,4dvb.subtitle sub,4fly fly,5mi.flexstor flx,4graphviz gv,4in3d.3dml 3dml,9spot spot,4sun.j2me.app-descriptor jad,4wap.si si,9l sl,8wml wml,bscript wmls,0webviewhtml htt,0x-asm s asm,2bibtex bib,3oo boo,2c c h dic,3++hdr h++ hpp hxx hh,5src c++ cpp cxx cc,3omponent htc,2diff patch,3src d,2fortran f for f77 f90,2haskell hs,2java java,2literate-haskell lhs,2moc moc,2nfo nfo,2opml opml,2pascal p pas pp inc,3cs-gcd gcd,3ython py,2scala scala,3etext etx,3fv sfv,2tcl tcl tk,3ex tex ltx sty cls,2uuencode uu,2vcalendar vcs,5rd vcf;video:03gpp 3gp,42 3g2,0annodex axv,0dl,1v dif dv,0fli,0gl,0h261,33,34,0jpeg jpgv,2m jpm jpgm,0mj2 mj2 mjp2,1p2t ts,24 mp4 mp4v mpg4,2eg mpeg mpg mpe m1v m2v mp2 mpa mpv2,0ogg ogv,0quicktime qt mov,0vnd.dece.hd uvh uvvh,9mobile uvm uvvm,9pd uvp uvvp,9sd uvs uvvs,9video uvv uvvv,5vb.file dvb,4fvt fvt,4mpegurl mxu m4u,5s-playready.media.pyv pyv,4uvvu.mp4 uvu uvvu,4vivo viv,0webm,0x-f4v f4v,3lv flv,2la-asf lsf lsx,2m4v m4v,3atroska mpv mkv mk3d mks,3ng mng,3s-asf asf asx asr,5vob vob,5wm wm,7v wmv,7x wmx,6vx wvx,4video avi,2sgi-movie movie,3mv smv;x-conference:0x-cooltalk ice;x-world:0x-vrml vrm flr wrz xaf xof".split(";")){const r=t.indexOf(":"),n=t.slice(0,r);let a="";for(const i of t.slice(r+1).split(",")){const t=i.split(" "),r=a.slice(0,Number.parseInt(t[0][0],36))+t[0].slice(1);a=r;const s=r.replace(/!/g,"+xml"),o=t.length>1?t.slice(1):[s.split("+")[0]];for(const t of o)e[t]=n+"/"+s}}return e})()),_c)[e.split(".").pop().toLowerCase()]||"application/octet-stream"}I({workerURI:e=>{const t="text/javascript",r=(e=>{let t=0,r=0,n=0,a=new Uint8Array(1024),i=0,s=0;for(;!s;){s=c(1);const e=c(2);if(0==e)l();else if(1==e)f(q(H),q(V));else{if(2!=e)throw Error("invalid deflate block type");f(...d())}}return a.subarray(0,i);function o(){if(t>=e.length)throw Error("unexpected end of deflate data");return e[t++]}function c(e){for(;e>n;)r|=o()<<n,n+=8;const t=r&(1<<e)-1;return r>>>=e,n-=e,t}function l(){r=0,n=0;const e=o()|o()<<8;t+=2,p(i+e);for(let t=0;e>t;t++)a[i++]=o()}function f(e,t){let r=u(e);for(;256!=r;){if(256>r)p(i+1),a[i++]=r;else{const e=r-257,n=Z[e]+c(W[e]),s=u(t),o=L[s]+c(B[s]);p(i+n);const l=i-o;for(let e=0;n>e;e++)a[i++]=a[l+e]}r=u(e)}}function d(){const e=c(5)+257,t=c(5)+1,r=c(4)+4,n=new Uint8Array(19);for(let e=0;r>e;e++)n[Y[e]]=c(3);const a=q(n),i=new Uint8Array(e+t);let s=0;for(;s<i.length;){const e=u(a);if(16>e)i[s++]=e;else if(16==e){const e=i[s-1];let t=c(2)+3;for(;t--;)i[s++]=e}else s+=17==e?c(3)+3:c(7)+11}return[q(i.subarray(0,e)),q(i.subarray(e))]}function u(e){const{o:t,symbols:r}=e;let n=0,a=0,i=0;for(let e=1;15>=e;e++){n|=c(1);const s=t[e];if(s>n-a)return r[i+(n-a)];i+=s,a=a+s<<1,n<<=1}throw Error("invalid huffman code")}function p(e){if(a.length<e){let t=2*a.length;for(;e>t;)t*=2;const r=new Uint8Array(t);r.set(a.subarray(0,i)),a=r}}})((e=>{const t=(e=(e+"").replace(/[^A-Za-z0-9+/=]/g,"")).length,r=[];for(let n=0;t>n;n+=4){const t=G.indexOf(e[n])<<18|G.indexOf(e[n+1])<<12|(63&G.indexOf(e[n+2]))<<6|63&G.indexOf(e[n+3]);r.push(t>>16&255),"="!==e[n+2]&&r.push(t>>8&255),"="!==e[n+3]&&r.push(255&t)}return new Uint8Array(r)})("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"));if(e){const e=new Blob([r],{type:t});return URL.createObjectURL(e)}return"data:"+t+";base64,"+(e=>{let t="";const r=e.length;let n=0;for(;r>n+2;n+=3){const r=e[n]<<16|e[n+1]<<8|e[n+2];t+=G[r>>18&63]+G[r>>12&63]+G[r>>6&63]+G[63&r]}const a=r-n;if(1===a){const r=e[n]<<16;t+=G[r>>18&63]+G[r>>12&63]+"=="}else if(2===a){const r=e[n]<<16|e[n+1]<<8;t+=G[r>>18&63]+G[r>>12&63]+G[r>>6&63]+"="}return t})(r)}});export{Cr as BlobReader,Ar as BlobWriter,jr as Data64URIReader,Ur as Data64URIWriter,ya as ERR_AMBIGUOUS_ARCHIVE,oa as ERR_BAD_FORMAT,fa as ERR_CENTRAL_DIRECTORY_NOT_FOUND,$a as ERR_DUPLICATED_NAME,pa as ERR_ENCRYPTED,ga as ERR_ENCRYPTED_CENTRAL_DIRECTORY,la as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,ca as ERR_EOCDR_NOT_FOUND,ua as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,mr as ERR_HTTP_RANGE,wr as ERR_HTTP_RESOURCE_CHANGED,je as ERR_INVALID_AUTHENTICATION_CODE,Q as ERR_INVALID_CODEC_DEFINITION,J as ERR_INVALID_CODEC_MODULE,ei as ERR_INVALID_COMMENT,ht as ERR_INVALID_COMPRESSED_DATA,bt as ERR_INVALID_CRC32,ai as ERR_INVALID_ENCRYPTION_STRENGTH,ti as ERR_INVALID_ENTRY_COMMENT,ri as ERR_INVALID_ENTRY_NAME,oi as ERR_INVALID_EXTRAFIELD_DATA,si as ERR_INVALID_EXTRAFIELD_TYPE,Re as ERR_INVALID_PASSWORD,Fe as ERR_INVALID_SIGNATURE,wt as ERR_INVALID_UNCOMPRESSED_SIZE,ni as ERR_INVALID_VERSION,hr as ERR_ITERATOR_COMPLETED_TOO_SOON,da as ERR_LOCAL_FILE_HEADER_NOT_FOUND,ba as ERR_OVERLAPPING_ENTRY,X as ERR_RESERVED_COMPRESSION_METHOD,ha as ERR_SPLIT_ZIP_FILE,mi as ERR_UNDEFINED_READER,pi as ERR_UNDEFINED_UNCOMPRESSED_SIZE,wa as ERR_UNSUPPORTED_COMPRESSION,ma as ERR_UNSUPPORTED_ENCRYPTION,ii as ERR_UNSUPPORTED_ENCRYPTION_USDZ,ui as ERR_UNSUPPORTED_FORMAT,br as ERR_WRITER_NOT_INITIALIZED,wi as ERR_ZIP_NOT_EMPTY,en as HttpRangeReader,$r as HttpReader,Rr as Reader,nn as SplitDataReader,an as SplitDataWriter,Tr as TextReader,Mr as TextWriter,tn as Uint8ArrayReader,rn as Uint8ArrayWriter,Fr as Writer,Sa as ZipReader,Ea as ZipReaderStream,vi as ZipWriter,zi as ZipWriterStream,P as configure,Ji as createBlobTempStream,Qi as createOPFSTempStream,$i as createSyncAccessHandleTempStream,Lc as fs,$c as getMimeType,te as registerCodec,N as resetConfiguration,ur as terminateWorkers,re as unregisterCodec};
|