1 |
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).zip={})}(this,(function(t){"use strict";const e={chunkSize:524288,maxWorkers:"undefined"!=typeof navigator&&navigator.hardwareConcurrency||2,useWebWorkers:!0,workerScripts:void 0},n=Object.assign({},e);function i(){return n}function r(t){if(void 0!==t.chunkSize&&(n.chunkSize=t.chunkSize),void 0!==t.maxWorkers&&(n.maxWorkers=t.maxWorkers),void 0!==t.useWebWorkers&&(n.useWebWorkers=t.useWebWorkers),void 0!==t.Deflate&&(n.Deflate=t.Deflate),void 0!==t.Inflate&&(n.Inflate=t.Inflate),void 0!==t.workerScripts){if(t.workerScripts.deflate){if(!Array.isArray(t.workerScripts.deflate))throw new Error("workerScripts.deflate must be an array");n.workerScripts||(n.workerScripts={}),n.workerScripts.deflate=t.workerScripts.deflate}if(t.workerScripts.inflate){if(!Array.isArray(t.workerScripts.inflate))throw new Error("workerScripts.inflate must be an array");n.workerScripts||(n.workerScripts={}),n.workerScripts.inflate=t.workerScripts.inflate}}}function a(t,e,n){return class{constructor(i){const r=this;r.codec=new t(Object.assign({},e,i)),n(r.codec,(t=>{if(r.pendingData){const e=r.pendingData;r.pendingData=new Uint8Array(e.length+t.length),r.pendingData.set(e,0),r.pendingData.set(t,e.length)}else r.pendingData=new Uint8Array(t)}))}async append(t){return this.codec.push(t),i(this)}async flush(){return this.codec.push(new Uint8Array(0),!0),i(this)}};function i(t){if(t.pendingData){const e=t.pendingData;return t.pendingData=null,e}return new Uint8Array(0)}}const s="Abort error";async function o(t,e,n,i,r,a,s){const o=Math.max(a.chunkSize,64);return async function a(d=0,u=0){const f=s.signal;if(d<r){l(f);const h=await e.readUint8Array(d+i,Math.min(o,r-d)),_=h.length;l(f);const p=await t.append(h);if(l(f),u+=await c(n,p),s.onprogress)try{s.onprogress(d+_,r)}catch(t){}return a(d+o,u)}{const e=await t.flush();return u+=await c(n,e.data),{signature:e.signature,length:u}}}()}function l(t){if(t&&t.aborted)throw new Error(s)}async function c(t,e){return e.length&&await t.writeUint8Array(e),e.length}const d="HTTP error ",u="HTTP Range not supported",f="text/plain",h="Content-Length",_="Accept-Ranges",p="HEAD",w="GET",g="bytes";class y{constructor(){this.size=0}init(){this.initialized=!0}}class b extends y{}class x extends y{writeUint8Array(t){this.size+=t.length}}class m extends b{constructor(t){super(),this.blob=t,this.size=t.size}async readUint8Array(t,e){const n=new FileReader;return new Promise(((i,r)=>{n.onload=t=>i(new Uint8Array(t.target.result)),n.onerror=r,n.readAsArrayBuffer(this.blob.slice(t,t+e))}))}}class k extends x{constructor(t){super(),this.offset=0,this.contentType=t,this.blob=new Blob([],{type:t})}async writeUint8Array(t){super.writeUint8Array(t),this.blob=new Blob([this.blob,t.buffer],{type:this.contentType}),this.offset=this.blob.size}getData(){return this.blob}}class v extends b{constructor(t,e){super(),this.url=t,this.preventHeadRequest=e.preventHeadRequest,this.useRangeHeader=e.useRangeHeader,this.forceRangeRequests=e.forceRangeRequests,this.options=Object.assign({},e),delete this.options.preventHeadRequest,delete this.options.useRangeHeader,delete this.options.forceRangeRequests,delete this.options.useXHR}async init(){if(super.init(),D(this.url)&&!this.preventHeadRequest){const t=await U(p,this.url,this.options);if(this.size=Number(t.headers.get(h)),!this.forceRangeRequests&&this.useRangeHeader&&t.headers.get(_)!=g)throw new Error(u);void 0===this.size&&await A(this,this.options)}else await A(this,this.options)}async readUint8Array(t,e){if(this.useRangeHeader){const n=await U(w,this.url,this.options,Object.assign({},this.options.headers,{HEADER_RANGE:"bytes="+t+"-"+(t+e-1)}));if(206!=n.status)throw new Error(u);return new Uint8Array(await n.arrayBuffer())}return this.data||await A(this,this.options),new Uint8Array(this.data.subarray(t,t+e))}}async function A(t,e){const n=await U(w,t.url,e);t.data=new Uint8Array(await n.arrayBuffer()),t.size||(t.size=t.data.length)}async function U(t,e,n,i){i=Object.assign({},n.headers,i);const r=await fetch(e,Object.assign({},n,{method:t,headers:i}));if(r.status<400)return r;throw new Error(d+(r.statusText||r.status))}class E extends b{constructor(t,e){super(),this.url=t,this.preventHeadRequest=e.preventHeadRequest,this.useRangeHeader=e.useRangeHeader,this.forceRangeRequests=e.forceRangeRequests}async init(){if(super.init(),D(this.url)&&!this.preventHeadRequest)return new Promise(((t,e)=>z(p,this.url,(n=>{this.size=Number(n.getResponseHeader(h)),this.useRangeHeader?this.forceRangeRequests||n.getResponseHeader(_)==g?t():e(new Error(u)):void 0===this.size?R(this,this.url).then((()=>t())).catch(e):t()}),e)));await R(this,this.url)}async readUint8Array(t,e){if(!this.useRangeHeader)return this.data||await R(this,this.url),new Uint8Array(this.data.subarray(t,t+e));if(206!=(await new Promise(((n,i)=>z(w,this.url,(t=>n(new Uint8Array(t.response))),i,[["Range","bytes="+t+"-"+(t+e-1)]])))).status)throw new Error(u)}}function R(t,e){return new Promise(((n,i)=>z(w,e,(e=>{t.data=new Uint8Array(e.response),t.size||(t.size=t.data.length),n()}),i)))}function z(t,e,n,i,r=[]){const a=new XMLHttpRequest;return a.addEventListener("load",(()=>{a.status<400?n(a):i(d+(a.statusText||a.status))}),!1),a.addEventListener("error",i,!1),a.open(t,e),r.forEach((t=>a.setRequestHeader(t[0],t[1]))),a.responseType="arraybuffer",a.send(),a}class S extends b{constructor(t,e={}){super(),this.url=t,e.useXHR?this.reader=new E(t,e):this.reader=new v(t,e)}set size(t){}get size(){return this.reader.size}async init(){super.init(),await this.reader.init()}async readUint8Array(t,e){return this.reader.readUint8Array(t,e)}}function D(t){if("undefined"!=typeof document){const e=document.createElement("a");return e.href=t,"http:"==e.protocol||"https:"==e.protocol}return/^https?:\/\//i.test(t)}const I=4294967295,F=65535,C=67324752,T=134695760,O=33639248,M=101010256,B=101075792,W=117853008,H=39169,L=2048,P="/",N=new Date(2107,11,31),j=new Date(1980,0,1),V="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");const q=[];for(let t=0;t<256;t++){let e=t;for(let t=0;t<8;t++)1&e?e=e>>>1^3988292384:e>>>=1;q[t]=e}class K{constructor(t){this.crc=t||-1}append(t){let e=0|this.crc;for(let n=0,i=0|t.length;n<i;n++)e=e>>>8^q[255&(e^t[n])];this.crc=e}get(){return~this.crc}}const G={concat(t,e){if(0===t.length||0===e.length)return t.concat(e);const n=t[t.length-1],i=G.getPartial(n);return 32===i?t.concat(e):G._shiftRight(e,i,0|n,t.slice(0,t.length-1))},bitLength(t){const e=t.length;if(0===e)return 0;const n=t[e-1];return 32*(e-1)+G.getPartial(n)},clamp(t,e){if(32*t.length<e)return t;const n=(t=t.slice(0,Math.ceil(e/32))).length;return e&=31,n>0&&e&&(t[n-1]=G.partial(e,t[n-1]&2147483648>>e-1,1)),t},partial:(t,e,n)=>32===t?e:(n?0|e:e<<32-t)+1099511627776*t,getPartial:t=>Math.round(t/1099511627776)||32,_shiftRight(t,e,n,i){for(void 0===i&&(i=[]);e>=32;e-=32)i.push(n),n=0;if(0===e)return i.concat(t);for(let r=0;r<t.length;r++)i.push(n|t[r]>>>e),n=t[r]<<32-e;const r=t.length?t[t.length-1]:0,a=G.getPartial(r);return i.push(G.partial(e+a&31,e+a>32?n:i.pop(),1)),i}},Z={bytes:{fromBits(t){const e=G.bitLength(t)/8,n=new Uint8Array(e);let i;for(let r=0;r<e;r++)0==(3&r)&&(i=t[r/4]),n[r]=i>>>24,i<<=8;return n},toBits(t){const e=[];let n,i=0;for(n=0;n<t.length;n++)i=i<<8|t[n],3==(3&n)&&(e.push(i),i=0);return 3&n&&e.push(G.partial(8*(3&n),i)),e}}},Y={sha1:function(t){t?(this._h=t._h.slice(0),this._buffer=t._buffer.slice(0),this._length=t._length):this.reset()}};Y.sha1.prototype={blockSize:512,reset:function(){const t=this;return t._h=this._init.slice(0),t._buffer=[],t._length=0,t},update:function(t){const e=this;"string"==typeof t&&(t=Z.utf8String.toBits(t));const n=e._buffer=G.concat(e._buffer,t),i=e._length,r=e._length=i+G.bitLength(t);if(r>9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");const a=new Uint32Array(n);let s=0;for(let t=e.blockSize+i-(e.blockSize+i&e.blockSize-1);t<=r;t+=e.blockSize)e._block(a.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),e},finalize:function(){const t=this;let e=t._buffer;const n=t._h;e=G.concat(e,[G.partial(1,1)]);for(let t=e.length+2;15&t;t++)e.push(0);for(e.push(Math.floor(t._length/4294967296)),e.push(0|t._length);e.length;)t._block(e.splice(0,16));return t.reset(),n},_init:[1732584193,4023233417,2562383102,271733878,3285377520],_key:[1518500249,1859775393,2400959708,3395469782],_f:function(t,e,n,i){return t<=19?e&n|~e&i:t<=39?e^n^i:t<=59?e&n|e&i|n&i:t<=79?e^n^i:void 0},_S:function(t,e){return e<<t|e>>>32-t},_block:function(t){const e=this,n=e._h,i=Array(80);for(let e=0;e<16;e++)i[e]=t[e];let r=n[0],a=n[1],s=n[2],o=n[3],l=n[4];for(let t=0;t<=79;t++){t>=16&&(i[t]=e._S(1,i[t-3]^i[t-8]^i[t-14]^i[t-16]));const n=e._S(5,r)+e._f(t,a,s,o)+l+i[t]+e._key[Math.floor(t/20)]|0;l=o,o=s,s=e._S(30,a),a=r,r=n}n[0]=n[0]+r|0,n[1]=n[1]+a|0,n[2]=n[2]+s|0,n[3]=n[3]+o|0,n[4]=n[4]+l|0}};const X={aes:class{constructor(t){const e=this;e._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],e._tables[0][0][0]||e._precompute();const n=e._tables[0][4],i=e._tables[1],r=t.length;let a,s,o,l=1;if(4!==r&&6!==r&&8!==r)throw new Error("invalid aes key size");for(e._key=[s=t.slice(0),o=[]],a=r;a<4*r+28;a++){let t=s[a-1];(a%r==0||8===r&&a%r==4)&&(t=n[t>>>24]<<24^n[t>>16&255]<<16^n[t>>8&255]<<8^n[255&t],a%r==0&&(t=t<<8^t>>>24^l<<24,l=l<<1^283*(l>>7))),s[a]=s[a-r]^t}for(let t=0;a;t++,a--){const e=s[3&t?a:a-4];o[t]=a<=4||t<4?e:i[0][n[e>>>24]]^i[1][n[e>>16&255]]^i[2][n[e>>8&255]]^i[3][n[255&e]]}}encrypt(t){return this._crypt(t,0)}decrypt(t){return this._crypt(t,1)}_precompute(){const t=this._tables[0],e=this._tables[1],n=t[4],i=e[4],r=[],a=[];let s,o,l,c;for(let t=0;t<256;t++)a[(r[t]=t<<1^283*(t>>7))^t]=t;for(let d=s=0;!n[d];d^=o||1,s=a[s]||1){let a=s^s<<1^s<<2^s<<3^s<<4;a=a>>8^255&a^99,n[d]=a,i[a]=d,c=r[l=r[o=r[d]]];let u=16843009*c^65537*l^257*o^16843008*d,f=257*r[a]^16843008*a;for(let n=0;n<4;n++)t[n][d]=f=f<<24^f>>>8,e[n][a]=u=u<<24^u>>>8}for(let n=0;n<5;n++)t[n]=t[n].slice(0),e[n]=e[n].slice(0)}_crypt(t,e){if(4!==t.length)throw new Error("invalid aes block size");const n=this._key[e],i=n.length/4-2,r=[0,0,0,0],a=this._tables[e],s=a[0],o=a[1],l=a[2],c=a[3],d=a[4];let u,f,h,_=t[0]^n[0],p=t[e?3:1]^n[1],w=t[2]^n[2],g=t[e?1:3]^n[3],y=4;for(let t=0;t<i;t++)u=s[_>>>24]^o[p>>16&255]^l[w>>8&255]^c[255&g]^n[y],f=s[p>>>24]^o[w>>16&255]^l[g>>8&255]^c[255&_]^n[y+1],h=s[w>>>24]^o[g>>16&255]^l[_>>8&255]^c[255&p]^n[y+2],g=s[g>>>24]^o[_>>16&255]^l[p>>8&255]^c[255&w]^n[y+3],y+=4,_=u,p=f,w=h;for(let t=0;t<4;t++)r[e?3&-t:t]=d[_>>>24]<<24^d[p>>16&255]<<16^d[w>>8&255]<<8^d[255&g]^n[y++],u=_,_=p,p=w,w=g,g=u;return r}}},J={ctrGladman:class{constructor(t,e){this._prf=t,this._initIv=e,this._iv=e}reset(){this._iv=this._initIv}update(t){return this.calculate(this._prf,t,this._iv)}incWord(t){if(255==(t>>24&255)){let e=t>>16&255,n=t>>8&255,i=255&t;255===e?(e=0,255===n?(n=0,255===i?i=0:++i):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=i}else t+=1<<24;return t}incCounter(t){0===(t[0]=this.incWord(t[0]))&&(t[1]=this.incWord(t[1]))}calculate(t,e,n){let i;if(!(i=e.length))return[];const r=G.bitLength(e);for(let r=0;r<i;r+=4){this.incCounter(n);const i=t.encrypt(n);e[r]^=i[0],e[r+1]^=i[1],e[r+2]^=i[2],e[r+3]^=i[3]}return G.clamp(e,r)}}},Q={hmacSha1:class{constructor(t){const e=this,n=e._hash=Y.sha1,i=[[],[]],r=n.prototype.blockSize/32;e._baseHash=[new n,new n],t.length>r&&(t=n.hash(t));for(let e=0;e<r;e++)i[0][e]=909522486^t[e],i[1][e]=1549556828^t[e];e._baseHash[0].update(i[0]),e._baseHash[1].update(i[1]),e._resultHash=new n(e._baseHash[0])}reset(){const t=this;t._resultHash=new t._hash(t._baseHash[0]),t._updated=!1}update(t){this._updated=!0,this._resultHash.update(t)}digest(){const t=this,e=t._resultHash.finalize(),n=new t._hash(t._baseHash[1]).update(e).finalize();return t.reset(),n}}},$="Invalid pasword",tt=16,et={name:"PBKDF2"},nt=Object.assign({hash:{name:"HMAC"}},et),it=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},et),rt=["deriveBits"],at=[8,12,16],st=[16,24,32],ot=10,lt=[0,0,0,0],ct=crypto.subtle,dt=Z.bytes,ut=X.aes,ft=J.ctrGladman,ht=Q.hmacSha1;class _t{constructor(t,e,n){Object.assign(this,{password:t,signed:e,strength:n-1,pendingInput:new Uint8Array(0)})}async append(t){const e=this;if(e.password){const n=bt(t,0,at[e.strength]+2);await async function(t,e,n){await gt(t,n,bt(e,0,at[t.strength]));const i=bt(e,at[t.strength]),r=t.keys.passwordVerification;if(r[0]!=i[0]||r[1]!=i[1])throw new Error($)}(e,n,e.password),e.password=null,e.aesCtrGladman=new ft(new ut(e.keys.key),Array.from(lt)),e.hmac=new ht(e.keys.authentication),t=bt(t,at[e.strength]+2)}return wt(e,t,new Uint8Array(t.length-ot-(t.length-ot)%tt),0,ot,!0)}async flush(){const t=this,e=t.pendingInput,n=bt(e,0,e.length-ot),i=bt(e,e.length-ot);let r=new Uint8Array(0);if(n.length){const e=dt.toBits(n);t.hmac.update(e);const i=t.aesCtrGladman.update(e);r=dt.fromBits(i)}let a=!0;if(t.signed){const e=bt(dt.fromBits(t.hmac.digest()),0,ot);for(let t=0;t<ot;t++)e[t]!=i[t]&&(a=!1)}return{valid:a,data:r}}}class pt{constructor(t,e){Object.assign(this,{password:t,strength:e-1,pendingInput:new Uint8Array(0)})}async append(t){const e=this;let n=new Uint8Array(0);e.password&&(n=await async function(t,e){const n=crypto.getRandomValues(new Uint8Array(at[t.strength]));return await gt(t,e,n),yt(n,t.keys.passwordVerification)}(e,e.password),e.password=null,e.aesCtrGladman=new ft(new ut(e.keys.key),Array.from(lt)),e.hmac=new ht(e.keys.authentication));const i=new Uint8Array(n.length+t.length-t.length%tt);return i.set(n,0),wt(e,t,i,n.length,0)}async flush(){const t=this;let e=new Uint8Array(0);if(t.pendingInput.length){const n=t.aesCtrGladman.update(dt.toBits(t.pendingInput));t.hmac.update(n),e=dt.fromBits(n)}const n=bt(dt.fromBits(t.hmac.digest()),0,ot);return{data:yt(e,n),signature:n}}}function wt(t,e,n,i,r,a){const s=e.length-r;let o;for(t.pendingInput.length&&(e=yt(t.pendingInput,e),n=function(t,e){if(e&&e>t.length){const n=t;(t=new Uint8Array(e)).set(n,0)}return t}(n,s-s%tt)),o=0;o<=s-tt;o+=tt){const r=dt.toBits(bt(e,o,o+tt));a&&t.hmac.update(r);const s=t.aesCtrGladman.update(r);a||t.hmac.update(s),n.set(dt.fromBits(s),o+i)}return t.pendingInput=bt(e,o),n}async function gt(t,e,n){const i=(new TextEncoder).encode(e),r=await ct.importKey("raw",i,nt,!1,rt),a=await ct.deriveBits(Object.assign({salt:n},it),r,8*(2*st[t.strength]+2)),s=new Uint8Array(a);t.keys={key:dt.toBits(bt(s,0,st[t.strength])),authentication:dt.toBits(bt(s,st[t.strength],2*st[t.strength])),passwordVerification:bt(s,2*st[t.strength])}}function yt(t,e){let n=t;return t.length+e.length&&(n=new Uint8Array(t.length+e.length),n.set(t,0),n.set(e,t.length)),n}function bt(t,e,n){return t.subarray(e,n)}const xt=12;class mt{constructor(t,e){Object.assign(this,{password:t,passwordVerification:e}),Ut(this,t)}async append(t){const e=this;if(e.password){const n=vt(e,t.subarray(0,xt));if(e.password=null,n[11]!=e.passwordVerification)throw new Error($);t=t.subarray(xt)}return vt(e,t)}async flush(){return{valid:!0,data:new Uint8Array(0)}}}class kt{constructor(t,e){Object.assign(this,{password:t,passwordVerification:e}),Ut(this,t)}async append(t){const e=this;let n,i;if(e.password){e.password=null;const r=crypto.getRandomValues(new Uint8Array(xt));r[11]=e.passwordVerification,n=new Uint8Array(t.length+r.length),n.set(At(e,r),0),i=xt}else n=new Uint8Array(t.length),i=0;return n.set(At(e,t),i),n}async flush(){return{data:new Uint8Array(0)}}}function vt(t,e){const n=new Uint8Array(e.length);for(let i=0;i<e.length;i++)n[i]=Rt(t)^e[i],Et(t,n[i]);return n}function At(t,e){const n=new Uint8Array(e.length);for(let i=0;i<e.length;i++)n[i]=Rt(t)^e[i],Et(t,e[i]);return n}function Ut(t,e){t.keys=[305419896,591751049,878082192],t.crcKey0=new K(t.keys[0]),t.crcKey2=new K(t.keys[2]);for(let n=0;n<e.length;n++)Et(t,e.charCodeAt(n))}function Et(t,e){t.crcKey0.append([e]),t.keys[0]=~t.crcKey0.get(),t.keys[1]=St(t.keys[1]+zt(t.keys[0])),t.keys[1]=St(Math.imul(t.keys[1],134775813)+1),t.crcKey2.append([t.keys[1]>>>24]),t.keys[2]=~t.crcKey2.get()}function Rt(t){const e=2|t.keys[2];return zt(Math.imul(e,1^e)>>>8)}function zt(t){return 255&t}function St(t){return 4294967295&t}const Dt="deflate",It="inflate",Ft="Invalid signature";class Ct{constructor(t,{signature:e,password:n,signed:i,compressed:r,zipCrypto:a,passwordVerification:s,encryptionStrength:o},{chunkSize:l}){const c=Boolean(n);Object.assign(this,{signature:e,encrypted:c,signed:i,compressed:r,inflate:r&&new t({chunkSize:l}),crc32:i&&new K,zipCrypto:a,decrypt:c&&a?new mt(n,s):new _t(n,i,o)})}async append(t){const e=this;return e.encrypted&&t.length&&(t=await e.decrypt.append(t)),e.compressed&&t.length&&(t=await e.inflate.append(t)),(!e.encrypted||e.zipCrypto)&&e.signed&&t.length&&e.crc32.append(t),t}async flush(){const t=this;let e,n=new Uint8Array(0);if(t.encrypted){const e=await t.decrypt.flush();if(!e.valid)throw new Error(Ft);n=e.data}if((!t.encrypted||t.zipCrypto)&&t.signed){const n=new DataView(new Uint8Array(4).buffer);if(e=t.crc32.get(),n.setUint32(0,e),t.cipher!=n.getUint32(0,!1))throw new Error(Ft)}return t.compressed&&(n=await t.inflate.append(n)||new Uint8Array(0),await t.inflate.flush()),{data:n,signature:e}}}class Tt{constructor(t,{encrypted:e,signed:n,compressed:i,level:r,zipCrypto:a,password:s,passwordVerification:o,encryptionStrength:l},{chunkSize:c}){Object.assign(this,{encrypted:e,signed:n,compressed:i,deflate:i&&new t({level:r||5,chunkSize:c}),crc32:n&&new K,zipCrypto:a,encrypt:e&&a?new kt(s,o):new pt(s,l)})}async append(t){const e=this;let n=t;return e.compressed&&t.length&&(n=await e.deflate.append(t)),e.encrypted&&n.length&&(n=await e.encrypt.append(n)),(!e.encrypted||e.zipCrypto)&&e.signed&&t.length&&e.crc32.append(t),n}async flush(){const t=this;let e,n=new Uint8Array(0);if(t.compressed&&(n=await t.deflate.flush()||new Uint8Array(0)),t.encrypted){n=await t.encrypt.append(n);const i=await t.encrypt.flush();e=i.signature;const r=new Uint8Array(n.length+i.data.length);r.set(n,0),r.set(i.data,n.length),n=r}return t.encrypted&&!t.zipCrypto||!t.signed||(e=t.crc32.get()),{data:n,signature:e}}}const Ot="init",Mt="append",Bt="flush",Wt="message";var Ht=(t,e,n,i,r,a,s)=>(Object.assign(t,{busy:!0,codecConstructor:e,options:Object.assign({},n),scripts:s,webWorker:a,onTaskFinished(){t.busy=!1;r(t)&&t.worker&&t.worker.terminate()}}),a?function(t,e){let n;t.interface||(t.worker=new Worker(new URL(t.scripts[0],"undefined"==typeof document?new(require("url").URL)("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("zip.min.js",document.baseURI).href)),t.worker.addEventListener(Wt,a,!1),t.interface={append:t=>i({type:Mt,data:t}),flush:()=>i({type:Bt})});return t.interface;async function i(i){if(!n){const n=t.options,i=t.scripts.slice(1);await r({scripts:i,type:Ot,options:n,config:{chunkSize:e.chunkSize}})}return r(i)}function r(e){const i=t.worker,r=new Promise(((t,e)=>n={resolve:t,reject:e}));try{if(e.data)try{e.data=e.data.buffer,i.postMessage(e,[e.data])}catch(t){i.postMessage(e)}else i.postMessage(e)}catch(e){n.reject(e),n=null,t.onTaskFinished()}return r}function a(e){const i=e.data;if(n){const e=i.error,r=i.type;if(e){const i=new Error(e.message);i.stack=e.stack,n.reject(i),n=null,t.onTaskFinished()}else if(r==Ot||r==Bt||r==Mt){const e=i.data;r==Bt?(n.resolve({data:new Uint8Array(e),signature:i.signature}),n=null,t.onTaskFinished()):n.resolve(e&&new Uint8Array(e))}}}}(t,i):function(t,e){const n=function(t,e,n){return e.codecType.startsWith(Dt)?new Tt(t,e,n):e.codecType.startsWith(It)?new Ct(t,e,n):void 0}(t.codecConstructor,t.options,e);return{async append(e){try{return await n.append(e)}catch(e){throw t.onTaskFinished(),e}},async flush(){try{return await n.flush()}finally{t.onTaskFinished()}}}}(t,i));let Lt=[],Pt=[];function Nt(t,e,n){const i=!(!e.compressed&&!e.signed&&!e.encrypted)&&(e.useWebWorkers||void 0===e.useWebWorkers&&n.useWebWorkers),r=i&&n.workerScripts?n.workerScripts[e.codecType]:[];if(Lt.length<n.maxWorkers){const s={};return Lt.push(s),Ht(s,t,e,n,a,i,r)}{const s=Lt.find((t=>!t.busy));return s?Ht(s,t,e,n,a,i,r):new Promise((n=>Pt.push({resolve:n,codecConstructor:t,options:e,webWorker:i,scripts:r})))}function a(t){const e=!Pt.length;if(e)Lt=Lt.filter((e=>e!=t));else{const[{resolve:e,codecConstructor:i,options:r,webWorker:s,scripts:o}]=Pt.splice(0,1);e(Ht(t,i,r,n,a,s,o))}return e}}const jt=["filename","rawFilename","directory","encrypted","compressedSize","uncompressedSize","lastModDate","rawLastModDate","comment","rawComment","signature","extraField","rawExtraField","bitFlag","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","filenameUTF8","commentUTF8","offset","zip64"];class Vt{constructor(t){jt.forEach((e=>this[e]=t[e]))}}const qt="File format is not recognized",Kt="End of central directory not found",Gt="End of Zip64 central directory not found",Zt="End of Zip64 central directory locator not found",Yt="Central directory header not found",Xt="Local file header not found",Jt="Zip64 extra field not found",Qt="File contains encrypted entry",$t="Encryption method not supported",te="Compression method not supported",ee="utf-8",ne=["uncompressedSize","compressedSize","offset"];class ie{constructor(t,e,n){Object.assign(this,{reader:t,config:e,options:n})}async getData(t,e={}){const n=this,{reader:i,offset:r,extraFieldAES:a,compressionMethod:s,config:l,bitFlag:c,signature:d,rawLastModDate:u,compressedSize:f}=n,h=n.localDirectory={};i.initialized||await i.init();const _=await pe(i,r,30),p=_e(_);let w=oe(n,e,"password");if(w=w&&w.length&&w,a&&99!=a.originalCompressionMethod)throw new Error(te);if(0!=s&&8!=s)throw new Error(te);if(fe(p,0)!=C)throw new Error(Xt);re(h,p,4);const g=r+30+h.filenameLength,y=g+h.extraFieldLength;h.rawExtraField=_.subarray(g,y),ae(n,h,p,4);const b=n.encrypted&&h.encrypted,x=b&&!a;if(b){if(!x&&void 0===a.strength)throw new Error($t);if(!w)throw new Error(Qt)}const m=await Nt(l.Inflate,{codecType:It,password:w,zipCrypto:x,encryptionStrength:a&&a.strength,signed:oe(n,e,"checkSignature"),passwordVerification:x&&(c.dataDescriptor?u>>>8&255:d>>>24&255),signature:d,compressed:0!=s,encrypted:b,useWebWorkers:oe(n,e,"useWebWorkers")},l);t.initialized||await t.init();const k=oe(n,e,"signal");return await o(m,i,t,y,f,l,{onprogress:e.onprogress,signal:k}),t.getData()}}function re(t,e,n){const i=t.rawBitFlag=ue(e,n+2),r=1==(1&i);Object.assign(t,{encrypted:r,version:ue(e,n),bitFlag:{level:(6&i)>>1,dataDescriptor:8==(8&i),languageEncodingFlag:(i&L)==L},rawLastModDate:fe(e,n+6),lastModDate:ce(t.rawLastModDate),filenameLength:ue(e,n+22),extraFieldLength:ue(e,n+24)})}function ae(t,e,n,i){const r=e.rawExtraField,a=e.extraField=new Map,s=_e(new Uint8Array(r));let o=0;try{for(;o<r.length;){const t=ue(s,o),e=ue(s,o+2);a.set(t,{type:t,data:r.slice(o+4,o+4+e)}),o+=4+e}}catch(t){}const l=ue(n,i+4);e.signature=fe(n,i+10),e.uncompressedSize=fe(n,i+18),e.compressedSize=fe(n,i+14);const c=e.extraFieldZip64=a.get(1);c&&function(t,e){e.zip64=!0;const n=_e(t.data);t.values=[];for(let e=0;e<Math.floor(t.data.length/8);e++)t.values.push(he(n,0+8*e));const i=ne.filter((t=>e[t]==I));for(let e=0;e<i.length;e++)t[i[e]]=t.values[e];ne.forEach((n=>{if(e[n]==I){if(!t||void 0===t[n])throw new Error(Jt);e[n]=t[n]}}))}(c,e);const d=e.extraFieldUnicodePath=a.get(28789);d&&se(d,"filename","rawFilename",e,t);const u=e.extraFieldUnicodeComment=a.get(25461);u&&se(u,"comment","rawComment",e,t);const f=e.extraFieldAES=a.get(39169);f?function(t,e,n){if(t){const i=_e(t.data);t.vendorVersion=de(i,0),t.vendorId=de(i,2);const r=de(i,4);t.strength=r,t.originalCompressionMethod=n,e.compressionMethod=t.compressionMethod=ue(i,5)}else e.compressionMethod=n}(f,e,l):e.compressionMethod=l}function se(t,e,n,i,r){const a=_e(t.data);t.version=de(a,0),t.signature=fe(a,1);const s=new K;s.append(r[n]);const o=_e(new Uint8Array(4));o.setUint32(0,s.get(),!0),t[e]=(new TextDecoder).decode(t.data.subarray(5)),t.valid=!r.bitFlag.languageEncodingFlag&&t.signature==fe(o,0),t.valid&&(i[e]=t[e],i[e+"UTF8"]=!0)}function oe(t,e,n){return void 0===e[n]?t.options[n]:e[n]}function le(t,e){return e&&"cp437"!=e.trim().toLowerCase()?new TextDecoder(e).decode(t):(t=>{let e="";for(let n=0;n<t.length;n++)e+=V[t[n]];return e})(t)}function ce(t){const e=(4294901760&t)>>16,n=65535&t;try{return new Date(1980+((65024&e)>>9),((480&e)>>5)-1,31&e,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(t){}}function de(t,e){return t.getUint8(e)}function ue(t,e){return t.getUint16(e,!0)}function fe(t,e){return t.getUint32(e,!0)}function he(t,e){return Number(t.getBigUint64(e,!0))}function _e(t){return new DataView(t.buffer)}function pe(t,e,n){return t.readUint8Array(e,n)}const we="File already exists",ge="Zip file comment exceeds 64KB",ye="File entry comment exceeds 64KB",be="File entry name exceeds 64KB",xe="Version exceeds 65535",me="The modification date must be between 1/1/1980 and 12/31/2107",ke="The strength must equal 1, 2, or 3",ve="Extra field type exceeds 65535",Ae="Extra field data exceeds 64KB",Ue=new Uint8Array([7,0,2,0,65,69,3,0,0]);function Ee(t,e,n){return void 0===e[n]?t.options[n]:e[n]}function Re(t,e,n){t.setUint8(e,n)}function ze(t,e,n){t.setUint16(e,n,!0)}function Se(t,e,n){t.setUint32(e,n,!0)}function De(t,e,n){t.setBigUint64(e,n,!0)}function Ie(t,e,n){t.set(e,n)}function Fe(t){return new DataView(t.buffer)}(()=>{if("function"==typeof URL.createObjectURL){const t=(()=>{const t=[];for(let e=0;e<256;e++){let n=e;for(let t=0;t<8;t++)1&n?n=n>>>1^3988292384:n>>>=1;t[e]=n}class e{constructor(t){this.crc=t||-1}append(e){let n=0|this.crc;for(let i=0,r=0|e.length;i<r;i++)n=n>>>8^t[255&(n^e[i])];this.crc=n}get(){return~this.crc}}const n={concat(t,e){if(0===t.length||0===e.length)return t.concat(e);const i=t[t.length-1],r=n.getPartial(i);return 32===r?t.concat(e):n._shiftRight(e,r,0|i,t.slice(0,t.length-1))},bitLength(t){const e=t.length;if(0===e)return 0;const i=t[e-1];return 32*(e-1)+n.getPartial(i)},clamp(t,e){if(32*t.length<e)return t;const i=(t=t.slice(0,Math.ceil(e/32))).length;return e&=31,i>0&&e&&(t[i-1]=n.partial(e,t[i-1]&2147483648>>e-1,1)),t},partial:(t,e,n)=>32===t?e:(n?0|e:e<<32-t)+1099511627776*t,getPartial:t=>Math.round(t/1099511627776)||32,_shiftRight(t,e,i,r){for(void 0===r&&(r=[]);e>=32;e-=32)r.push(i),i=0;if(0===e)return r.concat(t);for(let n=0;n<t.length;n++)r.push(i|t[n]>>>e),i=t[n]<<32-e;const a=t.length?t[t.length-1]:0,s=n.getPartial(a);return r.push(n.partial(e+s&31,e+s>32?i:r.pop(),1)),r}},i={bytes:{fromBits(t){const e=n.bitLength(t)/8,i=new Uint8Array(e);let r;for(let n=0;n<e;n++)0==(3&n)&&(r=t[n/4]),i[n]=r>>>24,r<<=8;return i},toBits(t){const e=[];let i,r=0;for(i=0;i<t.length;i++)r=r<<8|t[i],3==(3&i)&&(e.push(r),r=0);return 3&i&&e.push(n.partial(8*(3&i),r)),e}}},r={sha1:function(t){t?(this._h=t._h.slice(0),this._buffer=t._buffer.slice(0),this._length=t._length):this.reset()}};r.sha1.prototype={blockSize:512,reset:function(){const t=this;return t._h=this._init.slice(0),t._buffer=[],t._length=0,t},update:function(t){const e=this;"string"==typeof t&&(t=i.utf8String.toBits(t));const r=e._buffer=n.concat(e._buffer,t),a=e._length,s=e._length=a+n.bitLength(t);if(s>9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");const o=new Uint32Array(r);let l=0;for(let t=e.blockSize+a-(e.blockSize+a&e.blockSize-1);t<=s;t+=e.blockSize)e._block(o.subarray(16*l,16*(l+1))),l+=1;return r.splice(0,16*l),e},finalize:function(){const t=this;let e=t._buffer;const i=t._h;e=n.concat(e,[n.partial(1,1)]);for(let t=e.length+2;15&t;t++)e.push(0);for(e.push(Math.floor(t._length/4294967296)),e.push(0|t._length);e.length;)t._block(e.splice(0,16));return t.reset(),i},_init:[1732584193,4023233417,2562383102,271733878,3285377520],_key:[1518500249,1859775393,2400959708,3395469782],_f:function(t,e,n,i){return t<=19?e&n|~e&i:t<=39?e^n^i:t<=59?e&n|e&i|n&i:t<=79?e^n^i:void 0},_S:function(t,e){return e<<t|e>>>32-t},_block:function(t){const e=this,n=e._h,i=Array(80);for(let e=0;e<16;e++)i[e]=t[e];let r=n[0],a=n[1],s=n[2],o=n[3],l=n[4];for(let t=0;t<=79;t++){t>=16&&(i[t]=e._S(1,i[t-3]^i[t-8]^i[t-14]^i[t-16]));const n=e._S(5,r)+e._f(t,a,s,o)+l+i[t]+e._key[Math.floor(t/20)]|0;l=o,o=s,s=e._S(30,a),a=r,r=n}n[0]=n[0]+r|0,n[1]=n[1]+a|0,n[2]=n[2]+s|0,n[3]=n[3]+o|0,n[4]=n[4]+l|0}};const a={name:"PBKDF2"},s=Object.assign({hash:{name:"HMAC"}},a),o=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},a),l=["deriveBits"],c=[8,12,16],d=[16,24,32],u=[0,0,0,0],f=crypto.subtle,h=i.bytes,_=class{constructor(t){const e=this;e._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],e._tables[0][0][0]||e._precompute();const n=e._tables[0][4],i=e._tables[1],r=t.length;let a,s,o,l=1;if(4!==r&&6!==r&&8!==r)throw new Error("invalid aes key size");for(e._key=[s=t.slice(0),o=[]],a=r;a<4*r+28;a++){let t=s[a-1];(a%r==0||8===r&&a%r==4)&&(t=n[t>>>24]<<24^n[t>>16&255]<<16^n[t>>8&255]<<8^n[255&t],a%r==0&&(t=t<<8^t>>>24^l<<24,l=l<<1^283*(l>>7))),s[a]=s[a-r]^t}for(let t=0;a;t++,a--){const e=s[3&t?a:a-4];o[t]=a<=4||t<4?e:i[0][n[e>>>24]]^i[1][n[e>>16&255]]^i[2][n[e>>8&255]]^i[3][n[255&e]]}}encrypt(t){return this._crypt(t,0)}decrypt(t){return this._crypt(t,1)}_precompute(){const t=this._tables[0],e=this._tables[1],n=t[4],i=e[4],r=[],a=[];let s,o,l,c;for(let t=0;t<256;t++)a[(r[t]=t<<1^283*(t>>7))^t]=t;for(let d=s=0;!n[d];d^=o||1,s=a[s]||1){let a=s^s<<1^s<<2^s<<3^s<<4;a=a>>8^255&a^99,n[d]=a,i[a]=d,c=r[l=r[o=r[d]]];let u=16843009*c^65537*l^257*o^16843008*d,f=257*r[a]^16843008*a;for(let n=0;n<4;n++)t[n][d]=f=f<<24^f>>>8,e[n][a]=u=u<<24^u>>>8}for(let n=0;n<5;n++)t[n]=t[n].slice(0),e[n]=e[n].slice(0)}_crypt(t,e){if(4!==t.length)throw new Error("invalid aes block size");const n=this._key[e],i=n.length/4-2,r=[0,0,0,0],a=this._tables[e],s=a[0],o=a[1],l=a[2],c=a[3],d=a[4];let u,f,h,_=t[0]^n[0],p=t[e?3:1]^n[1],w=t[2]^n[2],g=t[e?1:3]^n[3],y=4;for(let t=0;t<i;t++)u=s[_>>>24]^o[p>>16&255]^l[w>>8&255]^c[255&g]^n[y],f=s[p>>>24]^o[w>>16&255]^l[g>>8&255]^c[255&_]^n[y+1],h=s[w>>>24]^o[g>>16&255]^l[_>>8&255]^c[255&p]^n[y+2],g=s[g>>>24]^o[_>>16&255]^l[p>>8&255]^c[255&w]^n[y+3],y+=4,_=u,p=f,w=h;for(let t=0;t<4;t++)r[e?3&-t:t]=d[_>>>24]<<24^d[p>>16&255]<<16^d[w>>8&255]<<8^d[255&g]^n[y++],u=_,_=p,p=w,w=g,g=u;return r}},p=class{constructor(t,e){this._prf=t,this._initIv=e,this._iv=e}reset(){this._iv=this._initIv}update(t){return this.calculate(this._prf,t,this._iv)}incWord(t){if(255==(t>>24&255)){let e=t>>16&255,n=t>>8&255,i=255&t;255===e?(e=0,255===n?(n=0,255===i?i=0:++i):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=i}else t+=1<<24;return t}incCounter(t){0===(t[0]=this.incWord(t[0]))&&(t[1]=this.incWord(t[1]))}calculate(t,e,i){let r;if(!(r=e.length))return[];const a=n.bitLength(e);for(let n=0;n<r;n+=4){this.incCounter(i);const r=t.encrypt(i);e[n]^=r[0],e[n+1]^=r[1],e[n+2]^=r[2],e[n+3]^=r[3]}return n.clamp(e,a)}},w=class{constructor(t){const e=this,n=e._hash=r.sha1,i=[[],[]],a=n.prototype.blockSize/32;e._baseHash=[new n,new n],t.length>a&&(t=n.hash(t));for(let e=0;e<a;e++)i[0][e]=909522486^t[e],i[1][e]=1549556828^t[e];e._baseHash[0].update(i[0]),e._baseHash[1].update(i[1]),e._resultHash=new n(e._baseHash[0])}reset(){const t=this;t._resultHash=new t._hash(t._baseHash[0]),t._updated=!1}update(t){this._updated=!0,this._resultHash.update(t)}digest(){const t=this,e=t._resultHash.finalize(),n=new t._hash(t._baseHash[1]).update(e).finalize();return t.reset(),n}};class g{constructor(t,e,n){Object.assign(this,{password:t,signed:e,strength:n-1,pendingInput:new Uint8Array(0)})}async append(t){const e=this;if(e.password){const n=k(t,0,c[e.strength]+2);await async function(t,e,n){await x(t,n,k(e,0,c[t.strength]));const i=k(e,c[t.strength]),r=t.keys.passwordVerification;if(r[0]!=i[0]||r[1]!=i[1])throw new Error("Invalid pasword")}(e,n,e.password),e.password=null,e.aesCtrGladman=new p(new _(e.keys.key),Array.from(u)),e.hmac=new w(e.keys.authentication),t=k(t,c[e.strength]+2)}return b(e,t,new Uint8Array(t.length-10-(t.length-10)%16),0,10,!0)}async flush(){const t=this,e=t.pendingInput,n=k(e,0,e.length-10),i=k(e,e.length-10);let r=new Uint8Array(0);if(n.length){const e=h.toBits(n);t.hmac.update(e);const i=t.aesCtrGladman.update(e);r=h.fromBits(i)}let a=!0;if(t.signed){const e=k(h.fromBits(t.hmac.digest()),0,10);for(let t=0;t<10;t++)e[t]!=i[t]&&(a=!1)}return{valid:a,data:r}}}class y{constructor(t,e){Object.assign(this,{password:t,strength:e-1,pendingInput:new Uint8Array(0)})}async append(t){const e=this;let n=new Uint8Array(0);e.password&&(n=await async function(t,e){const n=crypto.getRandomValues(new Uint8Array(c[t.strength]));return await x(t,e,n),m(n,t.keys.passwordVerification)}(e,e.password),e.password=null,e.aesCtrGladman=new p(new _(e.keys.key),Array.from(u)),e.hmac=new w(e.keys.authentication));const i=new Uint8Array(n.length+t.length-t.length%16);return i.set(n,0),b(e,t,i,n.length,0)}async flush(){const t=this;let e=new Uint8Array(0);if(t.pendingInput.length){const n=t.aesCtrGladman.update(h.toBits(t.pendingInput));t.hmac.update(n),e=h.fromBits(n)}const n=k(h.fromBits(t.hmac.digest()),0,10);return{data:m(e,n),signature:n}}}function b(t,e,n,i,r,a){const s=e.length-r;let o;for(t.pendingInput.length&&(e=m(t.pendingInput,e),n=function(t,e){if(e&&e>t.length){const n=t;(t=new Uint8Array(e)).set(n,0)}return t}(n,s-s%16)),o=0;o<=s-16;o+=16){const r=h.toBits(k(e,o,o+16));a&&t.hmac.update(r);const s=t.aesCtrGladman.update(r);a||t.hmac.update(s),n.set(h.fromBits(s),o+i)}return t.pendingInput=k(e,o),n}async function x(t,e,n){const i=(new TextEncoder).encode(e),r=await f.importKey("raw",i,s,!1,l),a=await f.deriveBits(Object.assign({salt:n},o),r,8*(2*d[t.strength]+2)),c=new Uint8Array(a);t.keys={key:h.toBits(k(c,0,d[t.strength])),authentication:h.toBits(k(c,d[t.strength],2*d[t.strength])),passwordVerification:k(c,2*d[t.strength])}}function m(t,e){let n=t;return t.length+e.length&&(n=new Uint8Array(t.length+e.length),n.set(t,0),n.set(e,t.length)),n}function k(t,e,n){return t.subarray(e,n)}class v{constructor(t,e){Object.assign(this,{password:t,passwordVerification:e}),R(this,t)}async append(t){const e=this;if(e.password){const n=U(e,t.subarray(0,12));if(e.password=null,n[11]!=e.passwordVerification)throw new Error("Invalid pasword");t=t.subarray(12)}return U(e,t)}async flush(){return{valid:!0,data:new Uint8Array(0)}}}class A{constructor(t,e){Object.assign(this,{password:t,passwordVerification:e}),R(this,t)}async append(t){const e=this;let n,i;if(e.password){e.password=null;const r=crypto.getRandomValues(new Uint8Array(12));r[11]=e.passwordVerification,n=new Uint8Array(t.length+r.length),n.set(E(e,r),0),i=12}else n=new Uint8Array(t.length),i=0;return n.set(E(e,t),i),n}async flush(){return{data:new Uint8Array(0)}}}function U(t,e){const n=new Uint8Array(e.length);for(let i=0;i<e.length;i++)n[i]=S(t)^e[i],z(t,n[i]);return n}function E(t,e){const n=new Uint8Array(e.length);for(let i=0;i<e.length;i++)n[i]=S(t)^e[i],z(t,e[i]);return n}function R(t,n){t.keys=[305419896,591751049,878082192],t.crcKey0=new e(t.keys[0]),t.crcKey2=new e(t.keys[2]);for(let e=0;e<n.length;e++)z(t,n.charCodeAt(e))}function z(t,e){t.crcKey0.append([e]),t.keys[0]=~t.crcKey0.get(),t.keys[1]=I(t.keys[1]+D(t.keys[0])),t.keys[1]=I(Math.imul(t.keys[1],134775813)+1),t.crcKey2.append([t.keys[1]>>>24]),t.keys[2]=~t.crcKey2.get()}function S(t){const e=2|t.keys[2];return D(Math.imul(e,1^e)>>>8)}function D(t){return 255&t}function I(t){return 4294967295&t}class F{constructor(t,{signature:n,password:i,signed:r,compressed:a,zipCrypto:s,passwordVerification:o,encryptionStrength:l},{chunkSize:c}){const d=Boolean(i);Object.assign(this,{signature:n,encrypted:d,signed:r,compressed:a,inflate:a&&new t({chunkSize:c}),crc32:r&&new e,zipCrypto:s,decrypt:d&&s?new v(i,o):new g(i,r,l)})}async append(t){const e=this;return e.encrypted&&t.length&&(t=await e.decrypt.append(t)),e.compressed&&t.length&&(t=await e.inflate.append(t)),(!e.encrypted||e.zipCrypto)&&e.signed&&t.length&&e.crc32.append(t),t}async flush(){const t=this;let e,n=new Uint8Array(0);if(t.encrypted){const e=await t.decrypt.flush();if(!e.valid)throw new Error("Invalid signature");n=e.data}if((!t.encrypted||t.zipCrypto)&&t.signed){const n=new DataView(new Uint8Array(4).buffer);if(e=t.crc32.get(),n.setUint32(0,e),t.cipher!=n.getUint32(0,!1))throw new Error("Invalid signature")}return t.compressed&&(n=await t.inflate.append(n)||new Uint8Array(0),await t.inflate.flush()),{data:n,signature:e}}}class C{constructor(t,{encrypted:n,signed:i,compressed:r,level:a,zipCrypto:s,password:o,passwordVerification:l,encryptionStrength:c},{chunkSize:d}){Object.assign(this,{encrypted:n,signed:i,compressed:r,deflate:r&&new t({level:a||5,chunkSize:d}),crc32:i&&new e,zipCrypto:s,encrypt:n&&s?new A(o,l):new y(o,c)})}async append(t){const e=this;let n=t;return e.compressed&&t.length&&(n=await e.deflate.append(t)),e.encrypted&&n.length&&(n=await e.encrypt.append(n)),(!e.encrypted||e.zipCrypto)&&e.signed&&t.length&&e.crc32.append(t),n}async flush(){const t=this;let e,n=new Uint8Array(0);if(t.compressed&&(n=await t.deflate.flush()||new Uint8Array(0)),t.encrypted){n=await t.encrypt.append(n);const i=await t.encrypt.flush();e=i.signature;const r=new Uint8Array(n.length+i.data.length);r.set(n,0),r.set(i.data,n.length),n=r}return t.encrypted&&!t.zipCrypto||!t.signed||(e=t.crc32.get()),{data:n,signature:e}}}const T={init(t){t.scripts&&t.scripts.length&&importScripts.apply(void 0,t.scripts);const e=t.options;let n;self.initCodec&&self.initCodec(),e.codecType.startsWith("deflate")?n=self.Deflate:e.codecType.startsWith("inflate")&&(n=self.Inflate),O=function(t,e,n){return e.codecType.startsWith("deflate")?new C(t,e,n):e.codecType.startsWith("inflate")?new F(t,e,n):void 0}(n,e,t.config)},append:async t=>({data:await O.append(t.data)}),flush:()=>O.flush()};let O;function M(t){return t.map((([t,e])=>new Array(t).fill(e,0,t))).flat()}addEventListener("message",(async t=>{const e=t.data,n=e.type,i=T[n];if(i)try{e.data&&(e.data=new Uint8Array(e.data));const t=await i(e)||{};if(t.type=n,t.data)try{t.data=t.data.buffer,postMessage(t,[t.data])}catch(e){postMessage(t)}else postMessage(t)}catch(t){postMessage({type:n,error:{message:t.message,stack:t.stack}})}}));const B=[0,1,2,3].concat(...M([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function W(){const t=this;function e(t,e){let n=0;do{n|=1&t,t>>>=1,n<<=1}while(--e>0);return n>>>1}t.build_tree=function(n){const i=t.dyn_tree,r=t.stat_desc.static_tree,a=t.stat_desc.elems;let s,o,l,c=-1;for(n.heap_len=0,n.heap_max=573,s=0;s<a;s++)0!==i[2*s]?(n.heap[++n.heap_len]=c=s,n.depth[s]=0):i[2*s+1]=0;for(;n.heap_len<2;)l=n.heap[++n.heap_len]=c<2?++c:0,i[2*l]=1,n.depth[l]=0,n.opt_len--,r&&(n.static_len-=r[2*l+1]);for(t.max_code=c,s=Math.floor(n.heap_len/2);s>=1;s--)n.pqdownheap(i,s);l=a;do{s=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(i,1),o=n.heap[1],n.heap[--n.heap_max]=s,n.heap[--n.heap_max]=o,i[2*l]=i[2*s]+i[2*o],n.depth[l]=Math.max(n.depth[s],n.depth[o])+1,i[2*s+1]=i[2*o+1]=l,n.heap[1]=l++,n.pqdownheap(i,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],function(e){const n=t.dyn_tree,i=t.stat_desc.static_tree,r=t.stat_desc.extra_bits,a=t.stat_desc.extra_base,s=t.stat_desc.max_length;let o,l,c,d,u,f,h=0;for(d=0;d<=15;d++)e.bl_count[d]=0;for(n[2*e.heap[e.heap_max]+1]=0,o=e.heap_max+1;o<573;o++)l=e.heap[o],d=n[2*n[2*l+1]+1]+1,d>s&&(d=s,h++),n[2*l+1]=d,l>t.max_code||(e.bl_count[d]++,u=0,l>=a&&(u=r[l-a]),f=n[2*l],e.opt_len+=f*(d+u),i&&(e.static_len+=f*(i[2*l+1]+u)));if(0!==h){do{for(d=s-1;0===e.bl_count[d];)d--;e.bl_count[d]--,e.bl_count[d+1]+=2,e.bl_count[s]--,h-=2}while(h>0);for(d=s;0!==d;d--)for(l=e.bl_count[d];0!==l;)c=e.heap[--o],c>t.max_code||(n[2*c+1]!=d&&(e.opt_len+=(d-n[2*c+1])*n[2*c],n[2*c+1]=d),l--)}}(n),function(t,n,i){const r=[];let a,s,o,l=0;for(a=1;a<=15;a++)r[a]=l=l+i[a-1]<<1;for(s=0;s<=n;s++)o=t[2*s+1],0!==o&&(t[2*s]=e(r[o]++,o))}(i,t.max_code,n.bl_count)}}function H(t,e,n,i,r){const a=this;a.static_tree=t,a.extra_bits=e,a.extra_base=n,a.elems=i,a.max_length=r}function L(t,e,n,i,r){const a=this;a.good_length=t,a.max_lazy=e,a.nice_length=n,a.max_chain=i,a.func=r}W._length_code=[0,1,2,3,4,5,6,7].concat(...M([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),W.base_length=[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],W.base_dist=[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],W.d_code=function(t){return t<256?B[t]:B[256+(t>>>7)]},W.extra_lbits=[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],W.extra_dbits=[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],W.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],W.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],H.static_ltree=[12,8,140,8,76,8,204,8,44,8,172,8,108,8,236,8,28,8,156,8,92,8,220,8,60,8,188,8,124,8,252,8,2,8,130,8,66,8,194,8,34,8,162,8,98,8,226,8,18,8,146,8,82,8,210,8,50,8,178,8,114,8,242,8,10,8,138,8,74,8,202,8,42,8,170,8,106,8,234,8,26,8,154,8,90,8,218,8,58,8,186,8,122,8,250,8,6,8,134,8,70,8,198,8,38,8,166,8,102,8,230,8,22,8,150,8,86,8,214,8,54,8,182,8,118,8,246,8,14,8,142,8,78,8,206,8,46,8,174,8,110,8,238,8,30,8,158,8,94,8,222,8,62,8,190,8,126,8,254,8,1,8,129,8,65,8,193,8,33,8,161,8,97,8,225,8,17,8,145,8,81,8,209,8,49,8,177,8,113,8,241,8,9,8,137,8,73,8,201,8,41,8,169,8,105,8,233,8,25,8,153,8,89,8,217,8,57,8,185,8,121,8,249,8,5,8,133,8,69,8,197,8,37,8,165,8,101,8,229,8,21,8,149,8,85,8,213,8,53,8,181,8,117,8,245,8,13,8,141,8,77,8,205,8,45,8,173,8,109,8,237,8,29,8,157,8,93,8,221,8,61,8,189,8,125,8,253,8,19,9,275,9,147,9,403,9,83,9,339,9,211,9,467,9,51,9,307,9,179,9,435,9,115,9,371,9,243,9,499,9,11,9,267,9,139,9,395,9,75,9,331,9,203,9,459,9,43,9,299,9,171,9,427,9,107,9,363,9,235,9,491,9,27,9,283,9,155,9,411,9,91,9,347,9,219,9,475,9,59,9,315,9,187,9,443,9,123,9,379,9,251,9,507,9,7,9,263,9,135,9,391,9,71,9,327,9,199,9,455,9,39,9,295,9,167,9,423,9,103,9,359,9,231,9,487,9,23,9,279,9,151,9,407,9,87,9,343,9,215,9,471,9,55,9,311,9,183,9,439,9,119,9,375,9,247,9,503,9,15,9,271,9,143,9,399,9,79,9,335,9,207,9,463,9,47,9,303,9,175,9,431,9,111,9,367,9,239,9,495,9,31,9,287,9,159,9,415,9,95,9,351,9,223,9,479,9,63,9,319,9,191,9,447,9,127,9,383,9,255,9,511,9,0,7,64,7,32,7,96,7,16,7,80,7,48,7,112,7,8,7,72,7,40,7,104,7,24,7,88,7,56,7,120,7,4,7,68,7,36,7,100,7,20,7,84,7,52,7,116,7,3,8,131,8,67,8,195,8,35,8,163,8,99,8,227,8],H.static_dtree=[0,5,16,5,8,5,24,5,4,5,20,5,12,5,28,5,2,5,18,5,10,5,26,5,6,5,22,5,14,5,30,5,1,5,17,5,9,5,25,5,5,5,21,5,13,5,29,5,3,5,19,5,11,5,27,5,7,5,23,5],H.static_l_desc=new H(H.static_ltree,W.extra_lbits,257,286,15),H.static_d_desc=new H(H.static_dtree,W.extra_dbits,0,30,15),H.static_bl_desc=new H(null,W.extra_blbits,0,19,7);const P=[new L(0,0,0,0,0),new L(4,4,8,4,1),new L(4,5,16,8,1),new L(4,6,32,32,1),new L(4,4,16,16,2),new L(8,16,32,32,2),new L(8,16,128,128,2),new L(8,32,128,256,2),new L(32,128,258,1024,2),new L(32,258,258,4096,2)],N=["need dictionary","stream end","","","stream error","data error","","buffer error","",""];function j(t,e,n,i){const r=t[2*e],a=t[2*n];return r<a||r==a&&i[e]<=i[n]}function V(){const t=this;let e,n,i,r,a,s,o,l,c,d,u,f,h,_,p,w,g,y,b,x,m,k,v,A,U,E,R,z,S,D,I,F,C;const T=new W,O=new W,M=new W;let B,L,V,q,K,G,Z,Y;function X(){let e;for(e=0;e<286;e++)I[2*e]=0;for(e=0;e<30;e++)F[2*e]=0;for(e=0;e<19;e++)C[2*e]=0;I[512]=1,t.opt_len=t.static_len=0,V=K=0}function J(t,e){let n,i=-1,r=t[1],a=0,s=7,o=4;0===r&&(s=138,o=3),t[2*(e+1)+1]=65535;for(let l=0;l<=e;l++)n=r,r=t[2*(l+1)+1],++a<s&&n==r||(a<o?C[2*n]+=a:0!==n?(n!=i&&C[2*n]++,C[32]++):a<=10?C[34]++:C[36]++,a=0,i=n,0===r?(s=138,o=3):n==r?(s=6,o=3):(s=7,o=4))}function Q(e){t.pending_buf[t.pending++]=e}function $(t){Q(255&t),Q(t>>>8&255)}function tt(t,e){let n;const i=e;Y>16-i?(n=t,Z|=n<<Y&65535,$(Z),Z=n>>>16-Y,Y+=i-16):(Z|=t<<Y&65535,Y+=i)}function et(t,e){const n=2*t;tt(65535&e[n],65535&e[n+1])}function nt(t,e){let n,i,r=-1,a=t[1],s=0,o=7,l=4;for(0===a&&(o=138,l=3),n=0;n<=e;n++)if(i=a,a=t[2*(n+1)+1],!(++s<o&&i==a)){if(s<l)do{et(i,C)}while(0!=--s);else 0!==i?(i!=r&&(et(i,C),s--),et(16,C),tt(s-3,2)):s<=10?(et(17,C),tt(s-3,3)):(et(18,C),tt(s-11,7));s=0,r=i,0===a?(o=138,l=3):i==a?(o=6,l=3):(o=7,l=4)}}function it(){16==Y?($(Z),Z=0,Y=0):Y>=8&&(Q(255&Z),Z>>>=8,Y-=8)}function rt(e,n){let i,r,a;if(t.pending_buf[q+2*V]=e>>>8&255,t.pending_buf[q+2*V+1]=255&e,t.pending_buf[B+V]=255&n,V++,0===e?I[2*n]++:(K++,e--,I[2*(W._length_code[n]+256+1)]++,F[2*W.d_code(e)]++),0==(8191&V)&&R>2){for(i=8*V,r=m-g,a=0;a<30;a++)i+=F[2*a]*(5+W.extra_dbits[a]);if(i>>>=3,K<Math.floor(V/2)&&i<Math.floor(r/2))return!0}return V==L-1}function at(e,n){let i,r,a,s,o=0;if(0!==V)do{i=t.pending_buf[q+2*o]<<8&65280|255&t.pending_buf[q+2*o+1],r=255&t.pending_buf[B+o],o++,0===i?et(r,e):(a=W._length_code[r],et(a+256+1,e),s=W.extra_lbits[a],0!==s&&(r-=W.base_length[a],tt(r,s)),i--,a=W.d_code(i),et(a,n),s=W.extra_dbits[a],0!==s&&(i-=W.base_dist[a],tt(i,s)))}while(o<V);et(256,e),G=e[513]}function st(){Y>8?$(Z):Y>0&&Q(255&Z),Z=0,Y=0}function ot(e,n,i){tt(0+(i?1:0),3),function(e,n,i){st(),G=8,$(n),$(~n),t.pending_buf.set(l.subarray(e,e+n),t.pending),t.pending+=n}(e,n)}function lt(e,n,i){let r,a,s=0;R>0?(T.build_tree(t),O.build_tree(t),s=function(){let e;for(J(I,T.max_code),J(F,O.max_code),M.build_tree(t),e=18;e>=3&&0===C[2*W.bl_order[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e}(),r=t.opt_len+3+7>>>3,a=t.static_len+3+7>>>3,a<=r&&(r=a)):r=a=n+5,n+4<=r&&-1!=e?ot(e,n,i):a==r?(tt(2+(i?1:0),3),at(H.static_ltree,H.static_dtree)):(tt(4+(i?1:0),3),function(t,e,n){let i;for(tt(t-257,5),tt(e-1,5),tt(n-4,4),i=0;i<n;i++)tt(C[2*W.bl_order[i]+1],3);nt(I,t-1),nt(F,e-1)}(T.max_code+1,O.max_code+1,s+1),at(I,F)),X(),i&&st()}function ct(t){lt(g>=0?g:-1,m-g,t),g=m,e.flush_pending()}function dt(){let t,n,i,r;do{if(r=c-v-m,0===r&&0===m&&0===v)r=a;else if(-1==r)r--;else if(m>=a+a-262){l.set(l.subarray(a,a+a),0),k-=a,m-=a,g-=a,t=h,i=t;do{n=65535&u[--i],u[i]=n>=a?n-a:0}while(0!=--t);t=a,i=t;do{n=65535&d[--i],d[i]=n>=a?n-a:0}while(0!=--t);r+=a}if(0===e.avail_in)return;t=e.read_buf(l,m+v,r),v+=t,v>=3&&(f=255&l[m],f=(f<<w^255&l[m+1])&p)}while(v<262&&0!==e.avail_in)}function ut(t){let e,n,i=U,r=m,s=A;const c=m>a-262?m-(a-262):0;let u=D;const f=o,h=m+258;let _=l[r+s-1],p=l[r+s];A>=S&&(i>>=2),u>v&&(u=v);do{if(e=t,l[e+s]==p&&l[e+s-1]==_&&l[e]==l[r]&&l[++e]==l[r+1]){r+=2,e++;do{}while(l[++r]==l[++e]&&l[++r]==l[++e]&&l[++r]==l[++e]&&l[++r]==l[++e]&&l[++r]==l[++e]&&l[++r]==l[++e]&&l[++r]==l[++e]&&l[++r]==l[++e]&&r<h);if(n=258-(h-r),r=h-258,n>s){if(k=t,s=n,n>=u)break;_=l[r+s-1],p=l[r+s]}}}while((t=65535&d[t&f])>c&&0!=--i);return s<=v?s:v}function ft(e){return e.total_in=e.total_out=0,e.msg=null,t.pending=0,t.pending_out=0,n=113,r=0,T.dyn_tree=I,T.stat_desc=H.static_l_desc,O.dyn_tree=F,O.stat_desc=H.static_d_desc,M.dyn_tree=C,M.stat_desc=H.static_bl_desc,Z=0,Y=0,G=8,X(),function(){c=2*a,u[h-1]=0;for(let t=0;t<h-1;t++)u[t]=0;E=P[R].max_lazy,S=P[R].good_length,D=P[R].nice_length,U=P[R].max_chain,m=0,g=0,v=0,y=A=2,x=0,f=0}(),0}t.depth=[],t.bl_count=[],t.heap=[],I=[],F=[],C=[],t.pqdownheap=function(e,n){const i=t.heap,r=i[n];let a=n<<1;for(;a<=t.heap_len&&(a<t.heap_len&&j(e,i[a+1],i[a],t.depth)&&a++,!j(e,r,i[a],t.depth));)i[n]=i[a],n=a,a<<=1;i[n]=r},t.deflateInit=function(e,n,r,c,f,g){return c||(c=8),f||(f=8),g||(g=0),e.msg=null,-1==n&&(n=6),f<1||f>9||8!=c||r<9||r>15||n<0||n>9||g<0||g>2?-2:(e.dstate=t,s=r,a=1<<s,o=a-1,_=f+7,h=1<<_,p=h-1,w=Math.floor((_+3-1)/3),l=new Uint8Array(2*a),d=[],u=[],L=1<<f+6,t.pending_buf=new Uint8Array(4*L),i=4*L,q=Math.floor(L/2),B=3*L,R=n,z=g,ft(e))},t.deflateEnd=function(){return 42!=n&&113!=n&&666!=n?-2:(t.pending_buf=null,u=null,d=null,l=null,t.dstate=null,113==n?-3:0)},t.deflateParams=function(t,e,n){let i=0;return-1==e&&(e=6),e<0||e>9||n<0||n>2?-2:(P[R].func!=P[e].func&&0!==t.total_in&&(i=t.deflate(1)),R!=e&&(R=e,E=P[R].max_lazy,S=P[R].good_length,D=P[R].nice_length,U=P[R].max_chain),z=n,i)},t.deflateSetDictionary=function(t,e,i){let r,s=i,c=0;if(!e||42!=n)return-2;if(s<3)return 0;for(s>a-262&&(s=a-262,c=i-s),l.set(e.subarray(c,c+s),0),m=s,g=s,f=255&l[0],f=(f<<w^255&l[1])&p,r=0;r<=s-3;r++)f=(f<<w^255&l[r+2])&p,d[r&o]=u[f],u[f]=r;return 0},t.deflate=function(c,_){let U,S,D,I,F;if(_>4||_<0)return-2;if(!c.next_out||!c.next_in&&0!==c.avail_in||666==n&&4!=_)return c.msg=N[4],-2;if(0===c.avail_out)return c.msg=N[7],-5;var C;if(e=c,I=r,r=_,42==n&&(S=8+(s-8<<4)<<8,D=(R-1&255)>>1,D>3&&(D=3),S|=D<<6,0!==m&&(S|=32),S+=31-S%31,n=113,Q((C=S)>>8&255),Q(255&C)),0!==t.pending){if(e.flush_pending(),0===e.avail_out)return r=-1,0}else if(0===e.avail_in&&_<=I&&4!=_)return e.msg=N[7],-5;if(666==n&&0!==e.avail_in)return c.msg=N[7],-5;if(0!==e.avail_in||0!==v||0!=_&&666!=n){switch(F=-1,P[R].func){case 0:F=function(t){let n,r=65535;for(r>i-5&&(r=i-5);;){if(v<=1){if(dt(),0===v&&0==t)return 0;if(0===v)break}if(m+=v,v=0,n=g+r,(0===m||m>=n)&&(v=m-n,m=n,ct(!1),0===e.avail_out))return 0;if(m-g>=a-262&&(ct(!1),0===e.avail_out))return 0}return ct(4==t),0===e.avail_out?4==t?2:0:4==t?3:1}(_);break;case 1:F=function(t){let n,i=0;for(;;){if(v<262){if(dt(),v<262&&0==t)return 0;if(0===v)break}if(v>=3&&(f=(f<<w^255&l[m+2])&p,i=65535&u[f],d[m&o]=u[f],u[f]=m),0!==i&&(m-i&65535)<=a-262&&2!=z&&(y=ut(i)),y>=3)if(n=rt(m-k,y-3),v-=y,y<=E&&v>=3){y--;do{m++,f=(f<<w^255&l[m+2])&p,i=65535&u[f],d[m&o]=u[f],u[f]=m}while(0!=--y);m++}else m+=y,y=0,f=255&l[m],f=(f<<w^255&l[m+1])&p;else n=rt(0,255&l[m]),v--,m++;if(n&&(ct(!1),0===e.avail_out))return 0}return ct(4==t),0===e.avail_out?4==t?2:0:4==t?3:1}(_);break;case 2:F=function(t){let n,i,r=0;for(;;){if(v<262){if(dt(),v<262&&0==t)return 0;if(0===v)break}if(v>=3&&(f=(f<<w^255&l[m+2])&p,r=65535&u[f],d[m&o]=u[f],u[f]=m),A=y,b=k,y=2,0!==r&&A<E&&(m-r&65535)<=a-262&&(2!=z&&(y=ut(r)),y<=5&&(1==z||3==y&&m-k>4096)&&(y=2)),A>=3&&y<=A){i=m+v-3,n=rt(m-1-b,A-3),v-=A-1,A-=2;do{++m<=i&&(f=(f<<w^255&l[m+2])&p,r=65535&u[f],d[m&o]=u[f],u[f]=m)}while(0!=--A);if(x=0,y=2,m++,n&&(ct(!1),0===e.avail_out))return 0}else if(0!==x){if(n=rt(0,255&l[m-1]),n&&ct(!1),m++,v--,0===e.avail_out)return 0}else x=1,m++,v--}return 0!==x&&(n=rt(0,255&l[m-1]),x=0),ct(4==t),0===e.avail_out?4==t?2:0:4==t?3:1}(_)}if(2!=F&&3!=F||(n=666),0==F||2==F)return 0===e.avail_out&&(r=-1),0;if(1==F){if(1==_)tt(2,3),et(256,H.static_ltree),it(),1+G+10-Y<9&&(tt(2,3),et(256,H.static_ltree),it()),G=7;else if(ot(0,0,!1),3==_)for(U=0;U<h;U++)u[U]=0;if(e.flush_pending(),0===e.avail_out)return r=-1,0}}return 4!=_?0:1}}function q(){const t=this;t.next_in_index=0,t.next_out_index=0,t.avail_in=0,t.total_in=0,t.avail_out=0,t.total_out=0}function K(t){const e=new q,n=t&&t.chunkSize?Math.floor(1.05*t.chunkSize):65536,i=new Uint8Array(n);let r=t?t.level:-1;void 0===r&&(r=-1),e.deflateInit(r),e.next_out=i,this.append=function(t,r){let a,s,o=0,l=0,c=0;const d=[];if(t.length){e.next_in_index=0,e.next_in=t,e.avail_in=t.length;do{if(e.next_out_index=0,e.avail_out=n,a=e.deflate(0),0!=a)throw new Error("deflating: "+e.msg);e.next_out_index&&(e.next_out_index==n?d.push(new Uint8Array(i)):d.push(i.slice(0,e.next_out_index))),c+=e.next_out_index,r&&e.next_in_index>0&&e.next_in_index!=o&&(r(e.next_in_index),o=e.next_in_index)}while(e.avail_in>0||0===e.avail_out);return d.length>1?(s=new Uint8Array(c),d.forEach((function(t){s.set(t,l),l+=t.length}))):s=d[0]||new Uint8Array(0),s}},this.flush=function(){let t,r,a=0,s=0;const o=[];do{if(e.next_out_index=0,e.avail_out=n,t=e.deflate(4),1!=t&&0!=t)throw new Error("deflating: "+e.msg);n-e.avail_out>0&&o.push(i.slice(0,e.next_out_index)),s+=e.next_out_index}while(e.avail_in>0||0===e.avail_out);return e.deflateEnd(),r=new Uint8Array(s),o.forEach((function(t){r.set(t,a),a+=t.length})),r}}q.prototype={deflateInit:function(t,e){const n=this;return n.dstate=new V,e||(e=15),n.dstate.deflateInit(n,t,e)},deflate:function(t){const e=this;return e.dstate?e.dstate.deflate(e,t):-2},deflateEnd:function(){const t=this;if(!t.dstate)return-2;const e=t.dstate.deflateEnd();return t.dstate=null,e},deflateParams:function(t,e){const n=this;return n.dstate?n.dstate.deflateParams(n,t,e):-2},deflateSetDictionary:function(t,e){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,t,e):-2},read_buf:function(t,e,n){const i=this;let r=i.avail_in;return r>n&&(r=n),0===r?0:(i.avail_in-=r,t.set(i.next_in.subarray(i.next_in_index,i.next_in_index+r),e),i.next_in_index+=r,i.total_in+=r,r)},flush_pending:function(){const t=this;let e=t.dstate.pending;e>t.avail_out&&(e=t.avail_out),0!==e&&(t.next_out.set(t.dstate.pending_buf.subarray(t.dstate.pending_out,t.dstate.pending_out+e),t.next_out_index),t.next_out_index+=e,t.dstate.pending_out+=e,t.total_out+=e,t.avail_out-=e,t.dstate.pending-=e,0===t.dstate.pending&&(t.dstate.pending_out=0))}};const G=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],Z=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],Y=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],X=[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,0,0],J=[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,112,112],Q=[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],$=[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];function tt(){let t,e,n,i,r,a;function s(t,e,s,o,l,c,d,u,f,h,_){let p,w,g,y,b,x,m,k,v,A,U,E,R,z,S;A=0,b=s;do{n[t[e+A]]++,A++,b--}while(0!==b);if(n[0]==s)return d[0]=-1,u[0]=0,0;for(k=u[0],x=1;x<=15&&0===n[x];x++);for(m=x,k<x&&(k=x),b=15;0!==b&&0===n[b];b--);for(g=b,k>b&&(k=b),u[0]=k,z=1<<x;x<b;x++,z<<=1)if((z-=n[x])<0)return-3;if((z-=n[b])<0)return-3;for(n[b]+=z,a[1]=x=0,A=1,R=2;0!=--b;)a[R]=x+=n[A],R++,A++;b=0,A=0;do{0!==(x=t[e+A])&&(_[a[x]++]=b),A++}while(++b<s);for(s=a[g],a[0]=b=0,A=0,y=-1,E=-k,r[0]=0,U=0,S=0;m<=g;m++)for(p=n[m];0!=p--;){for(;m>E+k;){if(y++,E+=k,S=g-E,S=S>k?k:S,(w=1<<(x=m-E))>p+1&&(w-=p+1,R=m,x<S))for(;++x<S&&!((w<<=1)<=n[++R]);)w-=n[R];if(S=1<<x,h[0]+S>1440)return-3;r[y]=U=h[0],h[0]+=S,0!==y?(a[y]=b,i[0]=x,i[1]=k,x=b>>>E-k,i[2]=U-r[y-1]-x,f.set(i,3*(r[y-1]+x))):d[0]=U}for(i[1]=m-E,A>=s?i[0]=192:_[A]<o?(i[0]=_[A]<256?0:96,i[2]=_[A++]):(i[0]=c[_[A]-o]+16+64,i[2]=l[_[A++]-o]),w=1<<m-E,x=b>>>E;x<S;x+=w)f.set(i,3*(U+x));for(x=1<<m-1;0!=(b&x);x>>>=1)b^=x;for(b^=x,v=(1<<E)-1;(b&v)!=a[y];)y--,E-=k,v=(1<<E)-1}return 0!==z&&1!=g?-5:0}function o(s){let o;for(t||(t=[],e=[],n=new Int32Array(16),i=[],r=new Int32Array(15),a=new Int32Array(16)),e.length<s&&(e=[]),o=0;o<s;o++)e[o]=0;for(o=0;o<16;o++)n[o]=0;for(o=0;o<3;o++)i[o]=0;r.set(n.subarray(0,15),0),a.set(n.subarray(0,16),0)}this.inflate_trees_bits=function(n,i,r,a,l){let c;return o(19),t[0]=0,c=s(n,0,19,19,null,null,r,i,a,t,e),-3==c?l.msg="oversubscribed dynamic bit lengths tree":-5!=c&&0!==i[0]||(l.msg="incomplete dynamic bit lengths tree",c=-3),c},this.inflate_trees_dynamic=function(n,i,r,a,l,c,d,u,f){let h;return o(288),t[0]=0,h=s(r,0,n,257,X,J,c,a,u,t,e),0!=h||0===a[0]?(-3==h?f.msg="oversubscribed literal/length tree":-4!=h&&(f.msg="incomplete literal/length tree",h=-3),h):(o(288),h=s(r,n,i,0,Q,$,d,l,u,t,e),0!=h||0===l[0]&&n>257?(-3==h?f.msg="oversubscribed distance tree":-5==h?(f.msg="incomplete distance tree",h=-3):-4!=h&&(f.msg="empty distance tree with lengths",h=-3),h):0)}}function et(){const t=this;let e,n,i,r,a=0,s=0,o=0,l=0,c=0,d=0,u=0,f=0,h=0,_=0;function p(t,e,n,i,r,a,s,o){let l,c,d,u,f,h,_,p,w,g,y,b,x,m,k,v;_=o.next_in_index,p=o.avail_in,f=s.bitb,h=s.bitk,w=s.write,g=w<s.read?s.read-w-1:s.end-w,y=G[t],b=G[e];do{for(;h<20;)p--,f|=(255&o.read_byte(_++))<<h,h+=8;if(l=f&y,c=n,d=i,v=3*(d+l),0!==(u=c[v]))for(;;){if(f>>=c[v+1],h-=c[v+1],0!=(16&u)){for(u&=15,x=c[v+2]+(f&G[u]),f>>=u,h-=u;h<15;)p--,f|=(255&o.read_byte(_++))<<h,h+=8;for(l=f&b,c=r,d=a,v=3*(d+l),u=c[v];;){if(f>>=c[v+1],h-=c[v+1],0!=(16&u)){for(u&=15;h<u;)p--,f|=(255&o.read_byte(_++))<<h,h+=8;if(m=c[v+2]+(f&G[u]),f>>=u,h-=u,g-=x,w>=m)k=w-m,w-k>0&&2>w-k?(s.window[w++]=s.window[k++],s.window[w++]=s.window[k++],x-=2):(s.window.set(s.window.subarray(k,k+2),w),w+=2,k+=2,x-=2);else{k=w-m;do{k+=s.end}while(k<0);if(u=s.end-k,x>u){if(x-=u,w-k>0&&u>w-k)do{s.window[w++]=s.window[k++]}while(0!=--u);else s.window.set(s.window.subarray(k,k+u),w),w+=u,k+=u,u=0;k=0}}if(w-k>0&&x>w-k)do{s.window[w++]=s.window[k++]}while(0!=--x);else s.window.set(s.window.subarray(k,k+x),w),w+=x,k+=x,x=0;break}if(0!=(64&u))return o.msg="invalid distance code",x=o.avail_in-p,x=h>>3<x?h>>3:x,p+=x,_-=x,h-=x<<3,s.bitb=f,s.bitk=h,o.avail_in=p,o.total_in+=_-o.next_in_index,o.next_in_index=_,s.write=w,-3;l+=c[v+2],l+=f&G[u],v=3*(d+l),u=c[v]}break}if(0!=(64&u))return 0!=(32&u)?(x=o.avail_in-p,x=h>>3<x?h>>3:x,p+=x,_-=x,h-=x<<3,s.bitb=f,s.bitk=h,o.avail_in=p,o.total_in+=_-o.next_in_index,o.next_in_index=_,s.write=w,1):(o.msg="invalid literal/length code",x=o.avail_in-p,x=h>>3<x?h>>3:x,p+=x,_-=x,h-=x<<3,s.bitb=f,s.bitk=h,o.avail_in=p,o.total_in+=_-o.next_in_index,o.next_in_index=_,s.write=w,-3);if(l+=c[v+2],l+=f&G[u],v=3*(d+l),0===(u=c[v])){f>>=c[v+1],h-=c[v+1],s.window[w++]=c[v+2],g--;break}}else f>>=c[v+1],h-=c[v+1],s.window[w++]=c[v+2],g--}while(g>=258&&p>=10);return x=o.avail_in-p,x=h>>3<x?h>>3:x,p+=x,_-=x,h-=x<<3,s.bitb=f,s.bitk=h,o.avail_in=p,o.total_in+=_-o.next_in_index,o.next_in_index=_,s.write=w,0}t.init=function(t,a,s,o,l,c){e=0,u=t,f=a,i=s,h=o,r=l,_=c,n=null},t.proc=function(t,w,g){let y,b,x,m,k,v,A,U=0,E=0,R=0;for(R=w.next_in_index,m=w.avail_in,U=t.bitb,E=t.bitk,k=t.write,v=k<t.read?t.read-k-1:t.end-k;;)switch(e){case 0:if(v>=258&&m>=10&&(t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,g=p(u,f,i,h,r,_,t,w),R=w.next_in_index,m=w.avail_in,U=t.bitb,E=t.bitk,k=t.write,v=k<t.read?t.read-k-1:t.end-k,0!=g)){e=1==g?7:9;break}o=u,n=i,s=h,e=1;case 1:for(y=o;E<y;){if(0===m)return t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,t.inflate_flush(w,g);g=0,m--,U|=(255&w.read_byte(R++))<<E,E+=8}if(b=3*(s+(U&G[y])),U>>>=n[b+1],E-=n[b+1],x=n[b],0===x){l=n[b+2],e=6;break}if(0!=(16&x)){c=15&x,a=n[b+2],e=2;break}if(0==(64&x)){o=x,s=b/3+n[b+2];break}if(0!=(32&x)){e=7;break}return e=9,w.msg="invalid literal/length code",g=-3,t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,t.inflate_flush(w,g);case 2:for(y=c;E<y;){if(0===m)return t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,t.inflate_flush(w,g);g=0,m--,U|=(255&w.read_byte(R++))<<E,E+=8}a+=U&G[y],U>>=y,E-=y,o=f,n=r,s=_,e=3;case 3:for(y=o;E<y;){if(0===m)return t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,t.inflate_flush(w,g);g=0,m--,U|=(255&w.read_byte(R++))<<E,E+=8}if(b=3*(s+(U&G[y])),U>>=n[b+1],E-=n[b+1],x=n[b],0!=(16&x)){c=15&x,d=n[b+2],e=4;break}if(0==(64&x)){o=x,s=b/3+n[b+2];break}return e=9,w.msg="invalid distance code",g=-3,t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,t.inflate_flush(w,g);case 4:for(y=c;E<y;){if(0===m)return t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,t.inflate_flush(w,g);g=0,m--,U|=(255&w.read_byte(R++))<<E,E+=8}d+=U&G[y],U>>=y,E-=y,e=5;case 5:for(A=k-d;A<0;)A+=t.end;for(;0!==a;){if(0===v&&(k==t.end&&0!==t.read&&(k=0,v=k<t.read?t.read-k-1:t.end-k),0===v&&(t.write=k,g=t.inflate_flush(w,g),k=t.write,v=k<t.read?t.read-k-1:t.end-k,k==t.end&&0!==t.read&&(k=0,v=k<t.read?t.read-k-1:t.end-k),0===v)))return t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,t.inflate_flush(w,g);t.window[k++]=t.window[A++],v--,A==t.end&&(A=0),a--}e=0;break;case 6:if(0===v&&(k==t.end&&0!==t.read&&(k=0,v=k<t.read?t.read-k-1:t.end-k),0===v&&(t.write=k,g=t.inflate_flush(w,g),k=t.write,v=k<t.read?t.read-k-1:t.end-k,k==t.end&&0!==t.read&&(k=0,v=k<t.read?t.read-k-1:t.end-k),0===v)))return t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,t.inflate_flush(w,g);g=0,t.window[k++]=l,v--,e=0;break;case 7:if(E>7&&(E-=8,m++,R--),t.write=k,g=t.inflate_flush(w,g),k=t.write,v=k<t.read?t.read-k-1:t.end-k,t.read!=t.write)return t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,t.inflate_flush(w,g);e=8;case 8:return g=1,t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,t.inflate_flush(w,g);case 9:return g=-3,t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,t.inflate_flush(w,g);default:return g=-2,t.bitb=U,t.bitk=E,w.avail_in=m,w.total_in+=R-w.next_in_index,w.next_in_index=R,t.write=k,t.inflate_flush(w,g)}},t.free=function(){}}tt.inflate_trees_fixed=function(t,e,n,i){return t[0]=9,e[0]=5,n[0]=Z,i[0]=Y,0};const nt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function it(t,e){const n=this;let i,r=0,a=0,s=0,o=0;const l=[0],c=[0],d=new et;let u=0,f=new Int32Array(4320);const h=new tt;n.bitk=0,n.bitb=0,n.window=new Uint8Array(e),n.end=e,n.read=0,n.write=0,n.reset=function(t,e){e&&(e[0]=0),6==r&&d.free(t),r=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(t,null),n.inflate_flush=function(t,e){let i,r,a;return r=t.next_out_index,a=n.read,i=(a<=n.write?n.write:n.end)-a,i>t.avail_out&&(i=t.avail_out),0!==i&&-5==e&&(e=0),t.avail_out-=i,t.total_out+=i,t.next_out.set(n.window.subarray(a,a+i),r),r+=i,a+=i,a==n.end&&(a=0,n.write==n.end&&(n.write=0),i=n.write-a,i>t.avail_out&&(i=t.avail_out),0!==i&&-5==e&&(e=0),t.avail_out-=i,t.total_out+=i,t.next_out.set(n.window.subarray(a,a+i),r),r+=i,a+=i),t.next_out_index=r,n.read=a,e},n.proc=function(t,e){let _,p,w,g,y,b,x,m;for(g=t.next_in_index,y=t.avail_in,p=n.bitb,w=n.bitk,b=n.write,x=b<n.read?n.read-b-1:n.end-b;;){let k,v,A,U,E,R,z,S;switch(r){case 0:for(;w<3;){if(0===y)return n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);e=0,y--,p|=(255&t.read_byte(g++))<<w,w+=8}switch(_=7&p,u=1&_,_>>>1){case 0:p>>>=3,w-=3,_=7&w,p>>>=_,w-=_,r=1;break;case 1:k=[],v=[],A=[[]],U=[[]],tt.inflate_trees_fixed(k,v,A,U),d.init(k[0],v[0],A[0],0,U[0],0),p>>>=3,w-=3,r=6;break;case 2:p>>>=3,w-=3,r=3;break;case 3:return p>>>=3,w-=3,r=9,t.msg="invalid block type",e=-3,n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e)}break;case 1:for(;w<32;){if(0===y)return n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);e=0,y--,p|=(255&t.read_byte(g++))<<w,w+=8}if((~p>>>16&65535)!=(65535&p))return r=9,t.msg="invalid stored block lengths",e=-3,n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);a=65535&p,p=w=0,r=0!==a?2:0!==u?7:0;break;case 2:if(0===y)return n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);if(0===x&&(b==n.end&&0!==n.read&&(b=0,x=b<n.read?n.read-b-1:n.end-b),0===x&&(n.write=b,e=n.inflate_flush(t,e),b=n.write,x=b<n.read?n.read-b-1:n.end-b,b==n.end&&0!==n.read&&(b=0,x=b<n.read?n.read-b-1:n.end-b),0===x)))return n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);if(e=0,_=a,_>y&&(_=y),_>x&&(_=x),n.window.set(t.read_buf(g,_),b),g+=_,y-=_,b+=_,x-=_,0!=(a-=_))break;r=0!==u?7:0;break;case 3:for(;w<14;){if(0===y)return n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);e=0,y--,p|=(255&t.read_byte(g++))<<w,w+=8}if(s=_=16383&p,(31&_)>29||(_>>5&31)>29)return r=9,t.msg="too many length or distance symbols",e=-3,n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);if(_=258+(31&_)+(_>>5&31),!i||i.length<_)i=[];else for(m=0;m<_;m++)i[m]=0;p>>>=14,w-=14,o=0,r=4;case 4:for(;o<4+(s>>>10);){for(;w<3;){if(0===y)return n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);e=0,y--,p|=(255&t.read_byte(g++))<<w,w+=8}i[nt[o++]]=7&p,p>>>=3,w-=3}for(;o<19;)i[nt[o++]]=0;if(l[0]=7,_=h.inflate_trees_bits(i,l,c,f,t),0!=_)return-3==(e=_)&&(i=null,r=9),n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);o=0,r=5;case 5:for(;_=s,!(o>=258+(31&_)+(_>>5&31));){let a,d;for(_=l[0];w<_;){if(0===y)return n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);e=0,y--,p|=(255&t.read_byte(g++))<<w,w+=8}if(_=f[3*(c[0]+(p&G[_]))+1],d=f[3*(c[0]+(p&G[_]))+2],d<16)p>>>=_,w-=_,i[o++]=d;else{for(m=18==d?7:d-14,a=18==d?11:3;w<_+m;){if(0===y)return n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);e=0,y--,p|=(255&t.read_byte(g++))<<w,w+=8}if(p>>>=_,w-=_,a+=p&G[m],p>>>=m,w-=m,m=o,_=s,m+a>258+(31&_)+(_>>5&31)||16==d&&m<1)return i=null,r=9,t.msg="invalid bit length repeat",e=-3,n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);d=16==d?i[m-1]:0;do{i[m++]=d}while(0!=--a);o=m}}if(c[0]=-1,E=[],R=[],z=[],S=[],E[0]=9,R[0]=6,_=s,_=h.inflate_trees_dynamic(257+(31&_),1+(_>>5&31),i,E,R,z,S,f,t),0!=_)return-3==_&&(i=null,r=9),e=_,n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);d.init(E[0],R[0],f,z[0],f,S[0]),r=6;case 6:if(n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,1!=(e=d.proc(n,t,e)))return n.inflate_flush(t,e);if(e=0,d.free(t),g=t.next_in_index,y=t.avail_in,p=n.bitb,w=n.bitk,b=n.write,x=b<n.read?n.read-b-1:n.end-b,0===u){r=0;break}r=7;case 7:if(n.write=b,e=n.inflate_flush(t,e),b=n.write,x=b<n.read?n.read-b-1:n.end-b,n.read!=n.write)return n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);r=8;case 8:return e=1,n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);case 9:return e=-3,n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e);default:return e=-2,n.bitb=p,n.bitk=w,t.avail_in=y,t.total_in+=g-t.next_in_index,t.next_in_index=g,n.write=b,n.inflate_flush(t,e)}}},n.free=function(t){n.reset(t,null),n.window=null,f=null},n.set_dictionary=function(t,e,i){n.window.set(t.subarray(e,e+i),0),n.read=n.write=i},n.sync_point=function(){return 1==r?1:0}}const rt=[0,0,255,255];function at(){const t=this;function e(t){return t&&t.istate?(t.total_in=t.total_out=0,t.msg=null,t.istate.mode=7,t.istate.blocks.reset(t,null),0):-2}t.mode=0,t.method=0,t.was=[0],t.need=0,t.marker=0,t.wbits=0,t.inflateEnd=function(e){return t.blocks&&t.blocks.free(e),t.blocks=null,0},t.inflateInit=function(n,i){return n.msg=null,t.blocks=null,i<8||i>15?(t.inflateEnd(n),-2):(t.wbits=i,n.istate.blocks=new it(n,1<<i),e(n),0)},t.inflate=function(t,e){let n,i;if(!t||!t.istate||!t.next_in)return-2;const r=t.istate;for(e=4==e?-5:0,n=-5;;)switch(r.mode){case 0:if(0===t.avail_in)return n;if(n=e,t.avail_in--,t.total_in++,8!=(15&(r.method=t.read_byte(t.next_in_index++)))){r.mode=13,t.msg="unknown compression method",r.marker=5;break}if(8+(r.method>>4)>r.wbits){r.mode=13,t.msg="invalid window size",r.marker=5;break}r.mode=1;case 1:if(0===t.avail_in)return n;if(n=e,t.avail_in--,t.total_in++,i=255&t.read_byte(t.next_in_index++),((r.method<<8)+i)%31!=0){r.mode=13,t.msg="incorrect header check",r.marker=5;break}if(0==(32&i)){r.mode=7;break}r.mode=2;case 2:if(0===t.avail_in)return n;n=e,t.avail_in--,t.total_in++,r.need=(255&t.read_byte(t.next_in_index++))<<24&4278190080,r.mode=3;case 3:if(0===t.avail_in)return n;n=e,t.avail_in--,t.total_in++,r.need+=(255&t.read_byte(t.next_in_index++))<<16&16711680,r.mode=4;case 4:if(0===t.avail_in)return n;n=e,t.avail_in--,t.total_in++,r.need+=(255&t.read_byte(t.next_in_index++))<<8&65280,r.mode=5;case 5:return 0===t.avail_in?n:(n=e,t.avail_in--,t.total_in++,r.need+=255&t.read_byte(t.next_in_index++),r.mode=6,2);case 6:return r.mode=13,t.msg="need dictionary",r.marker=0,-2;case 7:if(n=r.blocks.proc(t,n),-3==n){r.mode=13,r.marker=0;break}if(0==n&&(n=e),1!=n)return n;n=e,r.blocks.reset(t,r.was),r.mode=12;case 12:return 1;case 13:return-3;default:return-2}},t.inflateSetDictionary=function(t,e,n){let i=0,r=n;if(!t||!t.istate||6!=t.istate.mode)return-2;const a=t.istate;return r>=1<<a.wbits&&(r=(1<<a.wbits)-1,i=n-r),a.blocks.set_dictionary(e,i,r),a.mode=7,0},t.inflateSync=function(t){let n,i,r,a,s;if(!t||!t.istate)return-2;const o=t.istate;if(13!=o.mode&&(o.mode=13,o.marker=0),0===(n=t.avail_in))return-5;for(i=t.next_in_index,r=o.marker;0!==n&&r<4;)t.read_byte(i)==rt[r]?r++:r=0!==t.read_byte(i)?0:4-r,i++,n--;return t.total_in+=i-t.next_in_index,t.next_in_index=i,t.avail_in=n,o.marker=r,4!=r?-3:(a=t.total_in,s=t.total_out,e(t),t.total_in=a,t.total_out=s,o.mode=7,0)},t.inflateSyncPoint=function(t){return t&&t.istate&&t.istate.blocks?t.istate.blocks.sync_point():-2}}function st(){}function ot(t){const e=new st,n=t&&t.chunkSize?Math.floor(2*t.chunkSize):131072,i=new Uint8Array(n);let r=!1;e.inflateInit(),e.next_out=i,this.append=function(t,a){const s=[];let o,l,c=0,d=0,u=0;if(0!==t.length){e.next_in_index=0,e.next_in=t,e.avail_in=t.length;do{if(e.next_out_index=0,e.avail_out=n,0!==e.avail_in||r||(e.next_in_index=0,r=!0),o=e.inflate(0),r&&-5===o){if(0!==e.avail_in)throw new Error("inflating: bad input")}else if(0!==o&&1!==o)throw new Error("inflating: "+e.msg);if((r||1===o)&&e.avail_in===t.length)throw new Error("inflating: bad input");e.next_out_index&&(e.next_out_index===n?s.push(new Uint8Array(i)):s.push(i.slice(0,e.next_out_index))),u+=e.next_out_index,a&&e.next_in_index>0&&e.next_in_index!=c&&(a(e.next_in_index),c=e.next_in_index)}while(e.avail_in>0||0===e.avail_out);return s.length>1?(l=new Uint8Array(u),s.forEach((function(t){l.set(t,d),d+=t.length}))):l=s[0]||new Uint8Array(0),l}},this.flush=function(){e.inflateEnd()}}st.prototype={inflateInit:function(t){const e=this;return e.istate=new at,t||(t=15),e.istate.inflateInit(e,t)},inflate:function(t){const e=this;return e.istate?e.istate.inflate(e,t):-2},inflateEnd:function(){const t=this;if(!t.istate)return-2;const e=t.istate.inflateEnd(t);return t.istate=null,e},inflateSync:function(){const t=this;return t.istate?t.istate.inflateSync(t):-2},inflateSetDictionary:function(t,e){const n=this;return n.istate?n.istate.inflateSetDictionary(n,t,e):-2},read_byte:function(t){return this.next_in[t]},read_buf:function(t,e){return this.next_in.subarray(t,t+e)}},self.initCodec=()=>{self.Deflate=K,self.Inflate=ot}}).toString(),e=URL.createObjectURL(new Blob(["("+t+")()"],{type:"text/javascript"}));r({workerScripts:{inflate:[e],deflate:[e]}})}})(),t.BlobReader=m,t.BlobWriter=k,t.Data64URIReader=class extends b{constructor(t){super(),this.dataURI=t;let e=t.length;for(;"="==t.charAt(e-1);)e--;this.dataStart=t.indexOf(",")+1,this.size=Math.floor(.75*(e-this.dataStart))}async readUint8Array(t,e){const n=new Uint8Array(e),i=4*Math.floor(t/3),r=atob(this.dataURI.substring(i+this.dataStart,4*Math.ceil((t+e)/3)+this.dataStart)),a=t-3*Math.floor(i/4);for(let t=a;t<a+e;t++)n[t-a]=r.charCodeAt(t);return n}},t.Data64URIWriter=class extends x{constructor(t){super(),this.data="data:"+(t||"")+";base64,",this.pending=[]}async writeUint8Array(t){super.writeUint8Array(t);let e=0,n=this.pending;const i=this.pending.length;for(this.pending="",e=0;e<3*Math.floor((i+t.length)/3)-i;e++)n+=String.fromCharCode(t[e]);for(;e<t.length;e++)this.pending+=String.fromCharCode(t[e]);n.length>2?this.data+=btoa(n):this.pending=n}getData(){return this.data+btoa(this.pending)}},t.ERR_ABORT=s,t.ERR_BAD_FORMAT=qt,t.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Yt,t.ERR_DUPLICATED_NAME=we,t.ERR_ENCRYPTED=Qt,t.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Zt,t.ERR_EOCDR_NOT_FOUND=Kt,t.ERR_EOCDR_ZIP64_NOT_FOUND=Gt,t.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Jt,t.ERR_HTTP_RANGE=u,t.ERR_INVALID_COMMENT=ge,t.ERR_INVALID_DATE=me,t.ERR_INVALID_ENCRYPTION_STRENGTH=ke,t.ERR_INVALID_ENTRY_COMMENT=ye,t.ERR_INVALID_ENTRY_NAME=be,t.ERR_INVALID_EXTRAFIELD_DATA=Ae,t.ERR_INVALID_EXTRAFIELD_TYPE=ve,t.ERR_INVALID_PASSWORD=$,t.ERR_INVALID_SIGNATURE=Ft,t.ERR_INVALID_VERSION=xe,t.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Xt,t.ERR_UNSUPPORTED_COMPRESSION=te,t.ERR_UNSUPPORTED_ENCRYPTION=$t,t.HttpRangeReader=class extends S{constructor(t,e={}){e.useRangeHeader=!0,super(t,e)}},t.HttpReader=S,t.Reader=b,t.TextReader=class extends b{constructor(t){super(),this.blobReader=new m(new Blob([t],{type:f}))}async init(){super.init(),this.blobReader.init(),this.size=this.blobReader.size}async readUint8Array(t,e){return this.blobReader.readUint8Array(t,e)}},t.TextWriter=class extends x{constructor(t){super(),this.encoding=t,this.blob=new Blob([],{type:f})}async writeUint8Array(t){super.writeUint8Array(t),this.blob=new Blob([this.blob,t.buffer],{type:f})}getData(){const t=new FileReader;return new Promise(((e,n)=>{t.onload=t=>e(t.target.result),t.onerror=n,t.readAsText(this.blob,this.encoding)}))}},t.Uint8ArrayReader=class extends b{constructor(t){super(),this.array=t,this.size=t.length}async readUint8Array(t,e){return this.array.slice(t,t+e)}},t.Uint8ArrayWriter=class extends x{constructor(){super(),this.array=new Uint8Array(0)}async writeUint8Array(t){super.writeUint8Array(t);const e=this.array;this.array=new Uint8Array(e.length+t.length),this.array.set(e),this.array.set(t,e.length)}getData(){return this.array}},t.Writer=x,t.ZipReader=class{constructor(t,e={}){Object.assign(this,{reader:t,options:e,config:i()})}async getEntries(t={}){const e=this,n=e.reader;if(n.initialized||await n.init(),n.size<22)throw new Error(qt);const i=await async function(t,e,n,i,r){const a=new Uint8Array(4);!function(t,e,n){t.setUint32(e,n,!0)}(_e(a),0,e);const s=i+r;return await o(i)||await o(Math.min(s,n));async function o(e){const r=n-e,s=await pe(t,r,e);for(let t=s.length-i;t>=0;t--)if(s[t]==a[0]&&s[t+1]==a[1]&&s[t+2]==a[2]&&s[t+3]==a[3])return{offset:r+t,buffer:s.slice(t,t+i).buffer}}}(n,M,n.size,22,1048560);if(!i)throw new Error(Kt);const r=_e(i);let a=fe(r,12),s=fe(r,16),o=ue(r,8),l=0;if(s==I||o==F){const t=_e(await pe(n,i.offset-20,20));if(fe(t,0)!=W)throw new Error(Gt);s=he(t,8);let e=await pe(n,s,56),r=_e(e);const c=i.offset-20-56;if(fe(r,0)!=B&&s!=c){const t=s;s=c,l=s-t,e=await pe(n,s,56),r=_e(e)}if(fe(r,0)!=B)throw new Error(Zt);o=he(r,24),a=fe(t,4),s-=he(r,40)}if(s<0||s>=n.size)throw new Error(qt);let c=0,d=await pe(n,s,n.size-s),u=_e(d);const f=i.offset-a;if(fe(u,c)!=O&&s!=f){const t=s;s=f,l=s-t,d=await pe(n,s,n.size-s),u=_e(d)}if(s<0||s>=n.size)throw new Error(qt);const h=[];for(let i=0;i<o;i++){const i=new ie(n,e.config,e.options);if(fe(u,c)!=O)throw new Error(Yt);re(i,u,c+6);const r=Boolean(i.bitFlag.languageEncodingFlag),a=c+46,s=a+i.filenameLength,o=s+i.extraFieldLength;Object.assign(i,{compressedSize:0,uncompressedSize:0,commentLength:ue(u,c+32),directory:16==(16&de(u,c+38)),offset:fe(u,c+42)+l,rawFilename:d.subarray(a,s),filenameUTF8:r,commentUTF8:r,rawExtraField:d.subarray(s,o)});const f=o+i.commentLength;i.rawComment=d.subarray(o,f),i.filename=le(i.rawFilename,i.filenameUTF8?ee:oe(e,t,"filenameEncoding")),i.comment=le(i.rawComment,i.commentUTF8?ee:oe(e,t,"commentEncoding")),!i.directory&&i.filename.endsWith(P)&&(i.directory=!0),ae(i,i,u,c+6);const _=new Vt(i);_.getData=(t,e)=>i.getData(t,e),h.push(_),c=f}return h}async close(){}},t.ZipWriter=class{constructor(t,e={}){Object.assign(this,{writer:t,options:e,config:i(),files:new Map,offset:t.size,pendingOutputSize:0})}async add(t="",e,n={}){const i=this;if(t=t.trim(),n.directory&&!t.endsWith(P)?t+=P:n.directory=t.endsWith(P),i.files.has(t))throw new Error(we);const r=(new TextEncoder).encode(t);if(r.length>F)throw new Error(be);const a=n.comment||"",s=(new TextEncoder).encode(a);if(s.length>F)throw new Error(ye);const l=i.options.version||n.version||0;if(l>F)throw new Error(xe);const c=n.lastModDate||new Date;if(c<j||c>N)throw new Error(me);const d=Ee(i,n,"password"),u=Ee(i,n,"encryptionStrength")||3,f=Ee(i,n,"zipCrypto");if(void 0!==d&&void 0!==u&&(u<1||u>3))throw new Error(ke);let h=new Uint8Array(0);const _=n.extraField;if(_){let t=0,e=0;_.forEach((e=>t+=4+e.length)),h=new Uint8Array(t),_.forEach(((t,n)=>{if(n>F)throw new Error(ve);if(t.length>F)throw new Error(Ae);Ie(h,new Uint16Array([n]),e),Ie(h,new Uint16Array([t.length]),e+2),Ie(h,t,e+4),e+=4+t.length}))}let p=!1,w=0;const g=e&&!1!==n.zip64&&!1!==i.options.zip64;g&&(p=n.zip64||i.options.zip64,p||(e.initialized||await e.init(),w=Math.floor(1.05*e.size),i.pendingOutputSize+=w,p=i.offset>=I||w>=I||i.offset+i.pendingOutputSize>=I,await Promise.resolve()));const y=Ee(i,n,"level"),b=Ee(i,n,"useWebWorkers"),x=Ee(i,n,"bufferedWrite");let m=Ee(i,n,"keepOrder"),v=Ee(i,n,"dataDescriptor");const A=Ee(i,n,"signal");void 0===v&&(v=!0),void 0===m&&(m=!0);const U=await async function(t,e,n,i){const r=t.files,a=t.writer;let s,l;r.set(e,null);try{let c,d,u;try{i.keepOrder&&(c=t.lockPreviousFile,t.lockPreviousFile=new Promise((t=>l=t))),i.bufferedWrite||t.lockWrite||!i.dataDescriptor?(d=new k,d.init()):(t.lockWrite=new Promise((t=>s=t)),a.initialized||await a.init(),d=a),u=await async function(t,e,n,i){const{rawFilename:r,lastModDate:a,password:s,level:l,zip64:c,zipCrypto:d,dataDescriptor:u,directory:f,version:h,rawComment:_,rawExtraField:p,useWebWorkers:w,onprogress:g,signal:y,encryptionStrength:b}=i,x=Boolean(s&&s.length),m=0!==l&&!f;let k;if(x&&!d){k=new Uint8Array(Ue.length+2);const t=Fe(k);ze(t,0,H),Ie(k,Ue,2),Re(t,8,b)}else k=new Uint8Array(0);const v={version:h||20,zip64:c,directory:Boolean(f),filenameUTF8:!0,rawFilename:r,commentUTF8:!0,rawComment:_,rawExtraFieldZip64:c?new Uint8Array(28):new Uint8Array(0),rawExtraFieldAES:k,rawExtraField:p};let A=L;u&&(A|=8);let U=0;m&&(U=8);c&&(v.version=v.version>45?v.version:45);x&&(A|=1,d||(v.version=v.version>51?v.version:51,U=99,m&&(v.rawExtraFieldAES[9]=8)));const E=v.headerArray=new Uint8Array(26),R=Fe(E);ze(R,0,v.version),ze(R,2,A),ze(R,4,U);const z=new Uint32Array(1),S=Fe(z);ze(S,0,(a.getHours()<<6|a.getMinutes())<<5|a.getSeconds()/2),ze(S,2,(a.getFullYear()-1980<<4|a.getMonth()+1)<<5|a.getDate());const D=z[0];Se(R,6,D),ze(R,22,r.length),ze(R,24,0),ze(R,24,k.length+v.rawExtraField.length);const F=new Uint8Array(30+r.length+k.length+v.rawExtraField.length);let O;Se(Fe(F),0,C),Ie(F,E,4),Ie(F,r,30),Ie(F,k,30+r.length),Ie(F,v.rawExtraField,30+r.length+k.length);let M=0,B=0;if(t){M=t.size;const i=await Nt(n.Deflate,{codecType:Dt,level:l,password:s,encryptionStrength:b,zipCrypto:x&&d,passwordVerification:x&&d&&D>>8&255,signed:!0,compressed:m,encrypted:x,useWebWorkers:w},n);await e.writeUint8Array(F),t.initialized||await t.init(),O=await o(i,t,e,0,M,n,{onprogress:g,signal:y}),B=O.length}else await e.writeUint8Array(F);let W,P=new Uint8Array(0);u&&(P=new Uint8Array(c?24:16),W=Fe(P),Se(W,0,T));if(t){const t=O.signature;if(x&&!d||void 0===t||(Se(R,10,t),v.signature=t,u&&Se(W,4,t)),c){const t=Fe(v.rawExtraFieldZip64);ze(t,0,1),ze(t,2,24),Se(R,14,I),De(t,12,BigInt(B)),Se(R,18,I),De(t,4,BigInt(M)),u&&(De(W,8,BigInt(B)),De(W,16,BigInt(M)))}else Se(R,14,B),Se(R,18,M),u&&(Se(W,8,B),Se(W,12,M))}u&&await e.writeUint8Array(P);const N=F.length+B+P.length;return Object.assign(v,{compressedSize:B,uncompressedSize:M,lastModDate:a,rawLastModDate:D,encrypted:x,length:N}),v}(n,d,t.config,i)}catch(t){throw r.delete(e),t}if(r.set(e,u),d!=a){const e=d.getData(),n=new FileReader,r=new Promise(((t,i)=>{n.onload=e=>t(e.target.result),n.onerror=i,n.readAsArrayBuffer(e)})),[s]=await Promise.all([r,t.lockWrite,c]);if(!i.dataDescriptor){const t=new DataView(s);u.encrypted&&!i.zipCrypto||Se(t,14,u.signature),u.zip64?(Se(t,18,I),Se(t,22,I)):(Se(t,18,u.compressedSize),Se(t,22,u.uncompressedSize))}await a.writeUint8Array(new Uint8Array(s))}if(u.offset=t.offset,u.zip64){De(Fe(u.rawExtraFieldZip64),20,BigInt(u.offset))}return t.offset+=u.length,u}finally{l&&l(),s&&s()}}(i,t,e,Object.assign({},n,{rawFilename:r,rawComment:s,version:l,lastModDate:c,rawExtraField:h,zip64:p,password:d,level:y,useWebWorkers:b,encryptionStrength:u,zipCrypto:f,bufferedWrite:x,keepOrder:m,dataDescriptor:v,signal:A}));return g&&(i.pendingOutputSize-=w),Object.assign(U,{name:t,comment:a,extraField:_}),new Vt(U)}async close(t=new Uint8Array(0)){const e=this,n=e.writer,i=e.files;let r=0,a=0,s=e.offset,o=i.size;for(const[,t]of i)a+=46+t.rawFilename.length+t.rawComment.length+t.rawExtraFieldZip64.length+t.rawExtraFieldAES.length+t.rawExtraField.length;const l=e.options.zip64||s>=I||a>=I||o>=F,c=new Uint8Array(a+(l?98:22)),d=Fe(c);if(t.length){if(!(t.length<=F))throw new Error(ge);ze(d,r+20,t.length)}for(const[,t]of i){const{rawFilename:e,rawExtraFieldZip64:n,rawExtraFieldAES:i,rawExtraField:a,rawComment:s,version:o,headerArray:l,directory:u,zip64:f}=t,h=n.length+i.length+a.length;Se(d,r,O),ze(d,r+4,o),Ie(c,l,r+6),ze(d,r+30,h),ze(d,r+32,s.length),u&&Re(d,r+38,16),Se(d,r+42,f?I:t.offset),Ie(c,e,r+46),Ie(c,n,r+46+e.length),Ie(c,i,r+46+e.length+n.length),Ie(c,a,46+e.length+n.length+i.length),Ie(c,s,r+46+e.length+h),r+=46+e.length+h+s.length}return l&&(Se(d,r,B),De(d,r+4,BigInt(44)),ze(d,r+12,45),ze(d,r+14,45),De(d,r+24,BigInt(o)),De(d,r+32,BigInt(o)),De(d,r+40,BigInt(a)),De(d,r+48,BigInt(s)),Se(d,r+56,W),De(d,r+64,BigInt(s)+BigInt(a)),Se(d,r+72,1),o=F,s=I,a=I,r+=76),Se(d,r,M),ze(d,r+8,o),ze(d,r+10,o),Se(d,r+12,a),Se(d,r+16,s),await n.writeUint8Array(c),t.length&&await n.writeUint8Array(t),n.getData()}},t.configure=r,t.getMimeType=function(){return"application/octet-stream"},t.initShimAsyncCodec=(t,e={},n)=>({Deflate:a(t.Deflate,e.deflate,n),Inflate:a(t.Inflate,e.inflate,n)}),Object.defineProperty(t,"__esModule",{value:!0})}));
|