@zip.js/zip.js 2.8.4 → 2.8.6
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 +1 -1
- package/dist/README.md +2 -2
- package/dist/zip-core.js +2 -2
- package/dist/zip-core.min.js +1 -1
- package/dist/zip-fs-core.js +2 -2
- package/dist/zip-fs-core.min.js +1 -1
- package/dist/zip-fs-native.js +4 -4
- package/dist/zip-fs-native.min.js +1 -1
- package/dist/zip-fs.js +4 -4
- package/dist/zip-fs.min.js +1 -1
- package/dist/zip-legacy.js +4 -4
- package/dist/zip-legacy.min.js +1 -1
- package/dist/zip-native.js +4 -4
- package/dist/zip-native.min.js +1 -1
- package/dist/zip.js +4 -4
- package/dist/zip.min.js +1 -1
- package/index-native.cjs +4 -4
- package/index-native.min.js +1 -1
- package/index.cjs +4 -4
- package/index.d.ts +1 -1
- package/index.min.js +1 -1
- package/lib/core/codec-worker.js +1 -1
- package/lib/core/configuration.js +1 -1
- package/lib/core/web-worker-inline-native.js +1 -1
- package/lib/core/web-worker-inline-template-native.js +43 -0
- package/lib/core/web-worker-inline-template.js +10 -7
- package/lib/core/web-worker-inline-wasm.js +1 -1
- package/lib/core/zlib-streams-inline-template.js +9 -2
- package/lib/core/zlib-streams-inline.js +1 -1
- package/package.json +1 -1
package/dist/zip-fs-core.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,function(e){"use strict";const{Array:t,Object:r,String:s,Number:n,BigInt:a,Math:i,Date:o,Map:c,Set:l,Response:d,URL:u,Error:p,Uint8Array:f,Uint16Array:h,Uint32Array:w,DataView:m,Blob:g,Promise:y,TextEncoder:b,TextDecoder:z,document:S,crypto:x,btoa:F,TransformStream:D,ReadableStream:k,WritableStream:E,CompressionStream:v,DecompressionStream:A,navigator:R,Worker:C}="undefined"!=typeof globalThis?globalThis:this||self,T=4294967295,U=65535,W=67324752,_=134695760,M=_,N=33639248,B=101010256,L=101075792,O=117853008,I=22,H=21589,P=2048,Z="/",V=30,q=new o(2107,11,31),K=new o(1980,0,1),j=void 0,G="undefined",X="function";let Y=2;try{typeof R!=G&&R.hardwareConcurrency&&(Y=R.hardwareConcurrency)}catch{}const J={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib/zlib-streams.wasm",chunkSize:65536,maxWorkers:Y,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,CompressionStream:typeof v!=G&&v,DecompressionStream:typeof A!=G&&A},Q=r.assign({},J);function $(){return Q}function ee(e){return i.max(e.chunkSize,64)}const te="HTTP error ",re="HTTP Range not supported",se="Range",ne="GET",ae="bytes",ie=65536,oe="writable";class ce{constructor(){this.size=0}init(){this.initialized=!0}}class le extends ce{get readable(){const e=this,{chunkSize:t=ie}=e,r=new k({start(){this.chunkOffset=0},async pull(s){const{offset:n=0,size:a,diskNumberStart:o}=r,{chunkOffset:c}=this,l=a===j?t:i.min(t,a-c),d=await Le(e,n+c,l,o);s.enqueue(d),c+t>a||a===j&&!d.length&&l?s.close():this.chunkOffset+=t}});return r}}class de extends ce{constructor(){super();const e=this,t=new E({write(t){if(!e.initialized)throw new p("Writer not initialized");return e.writeUint8Array(t)}});r.defineProperty(e,oe,{get:()=>t})}writeUint8Array(){}}class ue extends le{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const s=e.indexOf(",")+1;r.assign(this,{dataURI:e,dataStart:s,size:i.floor(.75*(t-s))})}readUint8Array(e,t){const{dataStart:r,dataURI:s}=this,n=new f(t),a=4*i.floor(e/3),o=atob(s.substring(a+r,4*i.ceil((e+t)/3)+r)),c=e-3*i.floor(a/4);let l=0;for(let e=c;c+t>e&&e<o.length;e++)n[e-c]=o.charCodeAt(e),l++;return l<n.length?n.subarray(0,l):n}}class pe extends de{constructor(e){super(),r.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let r=0,n=t.pending;const a=t.pending.length;for(t.pending="",r=0;r<3*i.floor((a+e.length)/3)-a;r++)n+=s.fromCharCode(e[r]);for(;r<e.length;r++)t.pending+=s.fromCharCode(e[r]);n.length&&(n.length>2?t.data+=F(n):t.pending+=n)}getData(){return this.data+F(this.pending)}}class fe extends le{constructor(e){super(),r.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const r=this,s=e+t,n=e||s<r.size?r.blob.slice(e,s):r.blob;let a=await n.arrayBuffer();return a.byteLength>t&&(a=a.slice(e,s)),new f(a)}}class he extends ce{constructor(e){super();const t=new D,s=[];e&&s.push(["Content-Type",e]),r.defineProperty(this,oe,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:s}).blob()}getData(){return this.blob}}class we extends fe{constructor(e){super(new g([e],{type:"text/plain"}))}}class me extends he{constructor(e){super(e),r.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,s=await super.getData();if(s.text&&t)return s.text();{const t=new FileReader;return new y((n,a)=>{r.assign(t,{onload:({target:e})=>n(e.result),onerror:()=>a(t.error)}),t.readAsText(s,e)})}}}class ge extends le{constructor(e,t){super(),be(this,e,t)}async init(){await ze(this,Ae,De),super.init()}readUint8Array(e,t){return Se(this,e,t,Ae,De)}}class ye extends le{constructor(e,t){super(),be(this,e,t)}async init(){await ze(this,Re,ke),super.init()}readUint8Array(e,t){return Se(this,e,t,Re,ke)}}function be(e,t,s){const{preventHeadRequest:n,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:o}=s;delete(s=r.assign({},s)).preventHeadRequest,delete s.useRangeHeader,delete s.forceRangeRequests,delete s.combineSizeEocd,delete s.useXHR,r.assign(e,{url:t,options:s,preventHeadRequest:n,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:o})}async function ze(e,t,r){const{url:s,preventHeadRequest:a,useRangeHeader:i,forceRangeRequests:o,combineSizeEocd:c}=e;if((e=>{const{baseURI:t}=$(),{protocol:r}=new u(e,t);return"http:"==r||"https:"==r})(s)&&(i||o)&&(void 0===a||a)){const s=await t(ne,e,xe(e,c?-22:void 0)),a=s.headers.get("Accept-Ranges");if(!(o||a&&a.toLowerCase()==ae))throw new p(re);{let a;c&&(e.eocdCache=new f(await s.arrayBuffer()));const i=s.headers.get("Content-Range");if(i){const e=i.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=n(t))}}a===j?await ve(e,t,r):e.size=a}}else await ve(e,t,r)}async function Se(e,t,r,s,n){const{useRangeHeader:a,forceRangeRequests:i,eocdCache:o,size:c,options:l}=e;if(a||i){if(o&&t==c-I&&r==I)return o;if(c>t){t+r>c&&(r=c-t);const n=await s(ne,e,xe(e,t,r));if(206!=n.status)throw new p(re);return new f(await n.arrayBuffer())}return new f}{const{data:s}=e;return s||await n(e,l),new f(e.data.subarray(t,t+r))}}function xe(e,t=0,s=1){return r.assign({},Fe(e),{[se]:ae+"="+(0>t?t:t+"-"+(t+s-1))})}function Fe({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?r.fromEntries(t):t}async function De(e){await Ee(e,Ae)}async function ke(e){await Ee(e,Re)}async function Ee(e,t){const r=await t(ne,e,Fe(e));e.data=new f(await r.arrayBuffer()),e.size||(e.size=e.data.length)}async function ve(e,t,r){if(e.preventHeadRequest)await r(e,e.options);else{const s=(await t("HEAD",e,Fe(e))).headers.get("Content-Length");s?e.size=n(s):await r(e,e.options)}}async function Ae(e,{options:t,url:s},n){const a=await fetch(s,r.assign({},t,{method:e,headers:n}));if(400>a.status)return a;throw 416==a.status?new p(re):new p(te+(a.statusText||a.status))}function Re(e,{url:t},s){return new y((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 c(e)})}else a(416==i.status?new p(re):new p(te+(i.statusText||i.status)))},!1),i.addEventListener("error",e=>a(e.detail?e.detail.error:new p("Network error")),!1),i.open(e,t),s)for(const e of r.entries(s))i.setRequestHeader(e[0],e[1]);i.responseType="arraybuffer",i.send()})}class Ce extends le{constructor(e,t={}){super(),r.assign(this,{url:e,reader:t.useXHR?new ye(e,t):new ge(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Te extends le{constructor(e){super(),e=new f(e.buffer,e.byteOffset,e.byteLength),r.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class Ue extends de{init(e=0){r.assign(this,{offset:0,array:new f(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const r=t.array;t.array=new f(r.length+e.length),t.array.set(r)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}}class We extends le{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await y.all(t.map(async(r,s)=>{await r.init(),s!=t.length-1&&(e.lastDiskOffset+=r.size),e.size+=r.size})),super.init()}async readUint8Array(e,t,r=0){const s=this,{readers:n}=this;let a,o=r;-1==o&&(o=n.length-1);let c=e;for(;n[o]&&c>=n[o].size;)c-=n[o].size,o++;const l=n[o];if(l){const n=l.size;if(c+t>n){const i=n-c;a=new f(t);const o=await Le(l,c,i);a.set(o,0);const d=await s.readUint8Array(e+i,t-i,r);a.set(d,i),o.length+d.length<t&&(a=a.subarray(0,o.length+d.length))}else a=await Le(l,c,t)}else a=new f;return s.lastDiskNumber=i.max(o,s.lastDiskNumber),a}}class _e extends ce{constructor(e,t=4294967295){super();const s=this;let n,a,i;r.assign(s,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new E({async write(t){const{availableSize:r}=s;if(i)t.length<r?await c(t):(await c(t.subarray(0,r)),await l(),s.diskOffset+=n.size,s.diskNumber++,i=null,await this.write(t.subarray(r)));else{const{value:r,done:o}=await e.next();if(o&&!r)throw new p("Writer iterator completed too soon");n=r,n.size=0,n.maxSize&&(s.maxSize=n.maxSize),s.availableSize=s.maxSize,await Be(n),a=r.writable,i=a.getWriter(),await this.write(t)}},async close(){await i.ready,await l()}});async function c(e){const t=e.length;t&&(await i.ready,await i.write(e),n.size+=t,s.size+=t,s.availableSize-=t)}async function l(){await i.close()}r.defineProperty(s,oe,{get:()=>o})}}class Me{constructor(e){return t.isArray(e)&&(e=new We(e)),e instanceof k&&(e={readable:e}),e}}class Ne{constructor(e){return e.writable===j&&typeof e.next==X&&(e=new _e(e)),e instanceof E&&(e={writable:e}),e.size===j&&(e.size=0),e instanceof _e||r.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}}async function Be(e,t){if(!e.init||e.initialized)return y.resolve();await e.init(t)}function Le(e,t,r,s){return e.readUint8Array(t,r,s)}const Oe=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;Oe[e]=t}class Ie{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let r=0,s=0|e.length;s>r;r++)t=t>>>8^Oe[255&(t^e[r])];this.crc=t}get(){return~this.crc}}class He extends D{constructor(){let e;const t=new Ie;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new f(4);new m(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}function Pe(e){if(typeof b==G){const t=new f((e=unescape(encodeURIComponent(e))).length);for(let r=0;r<t.length;r++)t[r]=e.charCodeAt(r);return t}return(new b).encode(e)}const Ze={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const r=e[e.length-1],s=Ze.getPartial(r);return 32===s?e.concat(t):Ze._shiftRight(t,s,0|r,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const r=e[t-1];return 32*(t-1)+Ze.getPartial(r)},clamp(e,t){if(32*e.length<t)return e;const r=(e=e.slice(0,i.ceil(t/32))).length;return t&=31,r>0&&t&&(e[r-1]=Ze.partial(t,e[r-1]&2147483648>>t-1,1)),e},partial:(e,t,r)=>32===e?t:(r?0|t:t<<32-e)+1099511627776*e,getPartial:e=>i.round(e/1099511627776)||32,_shiftRight(e,t,r,s){for(void 0===s&&(s=[]);t>=32;t-=32)s.push(r),r=0;if(0===t)return s.concat(e);for(let n=0;n<e.length;n++)s.push(r|e[n]>>>t),r=e[n]<<32-t;const n=e.length?e[e.length-1]:0,a=Ze.getPartial(n);return s.push(Ze.partial(t+a&31,t+a>32?r:s.pop(),1)),s}},Ve={bytes:{fromBits(e){const t=Ze.bitLength(e)/8,r=new f(t);let s;for(let n=0;t>n;n++)3&n||(s=e[n/4]),r[n]=s>>>24,s<<=8;return r},toBits(e){const t=[];let r,s=0;for(r=0;r<e.length;r++)s=s<<8|e[r],3&~r||(t.push(s),s=0);return 3&r&&t.push(Ze.partial(8*(3&r),s)),t}}},qe=class{constructor(e){const t=this;t.blockSize=512,t._init=[1732584193,4023233417,2562383102,271733878,3285377520],t._key=[1518500249,1859775393,2400959708,3395469782],e?(t._h=e._h.slice(0),t._buffer=e._buffer.slice(0),t._length=e._length):t.reset()}reset(){const e=this;return e._h=e._init.slice(0),e._buffer=[],e._length=0,e}update(e){const t=this;"string"==typeof e&&(e=Ve.utf8String.toBits(e));const r=t._buffer=Ze.concat(t._buffer,e),s=t._length,n=t._length=s+Ze.bitLength(e);if(n>9007199254740991)throw new p("Cannot hash more than 2^53 - 1 bits");const a=new w(r);let i=0;for(let e=t.blockSize+s-(t.blockSize+s&t.blockSize-1);n>=e;e+=t.blockSize)t._block(a.subarray(16*i,16*(i+1))),i+=1;return r.splice(0,16*i),t}finalize(){const e=this;let t=e._buffer;const r=e._h;t=Ze.concat(t,[Ze.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(i.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),r}_f(e,t,r,s){return e>19?e>39?e>59?e>79?void 0:t^r^s:t&r|t&s|r&s:t^r^s:t&r|~t&s}_S(e,t){return t<<e|t>>>32-e}_block(e){const r=this,s=r._h,n=t(80);for(let t=0;16>t;t++)n[t]=e[t];let a=s[0],o=s[1],c=s[2],l=s[3],d=s[4];for(let e=0;79>=e;e++){16>e||(n[e]=r._S(1,n[e-3]^n[e-8]^n[e-14]^n[e-16]));const t=r._S(5,a)+r._f(e,o,c,l)+d+n[e]+r._key[i.floor(e/20)]|0;d=l,l=c,c=r._S(30,o),o=a,a=t}s[0]=s[0]+a|0,s[1]=s[1]+o|0,s[2]=s[2]+c|0,s[3]=s[3]+l|0,s[4]=s[4]+d|0}},Ke={getRandomValues(e){const t=new w(e.buffer),r=e=>{let t=987654321;const r=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&r,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&r)&r)/4294967296+.5)*(i.random()>.5?1:-1))};for(let s,n=0;n<e.length;n+=4){const e=r(4294967296*(s||i.random()));s=987654071*e(),t[n/4]=4294967296*e()|0}return e}},je={importKey:e=>new je.hmacSha1(Ve.bytes.toBits(e)),pbkdf2(e,t,r,s){if(r=r||1e4,0>s||0>r)throw new p("invalid params to pbkdf2");const n=1+(s>>5)<<2;let a,i,o,c,l;const d=new ArrayBuffer(n),u=new m(d);let f=0;const h=Ze;for(t=Ve.bytes.toBits(t),l=1;(n||1)>f;l++){for(a=i=e.encrypt(h.concat(t,[l])),o=1;r>o;o++)for(i=e.encrypt(i),c=0;c<i.length;c++)a[c]^=i[c];for(o=0;(n||1)>f&&o<a.length;o++)u.setInt32(f,a[o]),f+=4}return d.slice(0,s/8)},hmacSha1:class{constructor(e){const t=this,r=t._hash=qe,s=[[],[]];t._baseHash=[new r,new r];const n=t._baseHash[0].blockSize/32;e.length>n&&(e=(new r).update(e).finalize());for(let t=0;n>t;t++)s[0][t]=909522486^e[t],s[1][t]=1549556828^e[t];t._baseHash[0].update(s[0]),t._baseHash[1].update(s[1]),t._resultHash=new r(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),r=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),r}encrypt(e){if(this._updated)throw new p("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Ge=typeof x!=G&&typeof x.getRandomValues==X,Xe="Invalid password",Ye="Invalid signature",Je="zipjs-abort-check-password";function Qe(e){return Ge?x.getRandomValues(e):Ke.getRandomValues(e)}const $e=16,et={name:"PBKDF2"},tt=r.assign({hash:{name:"HMAC"}},et),rt=r.assign({iterations:1e3,hash:{name:"SHA-1"}},et),st=["deriveBits"],nt=[8,12,16],at=[16,24,32],it=10,ot=[0,0,0,0],ct=typeof x!=G,lt=ct&&x.subtle,dt=ct&&typeof lt!=G,ut=Ve.bytes,pt=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const r=t._tables[0][4],s=t._tables[1],n=e.length;let a,i,o,c=1;if(4!==n&&6!==n&&8!==n)throw new p("invalid aes key size");for(t._key=[i=e.slice(0),o=[]],a=n;4*n+28>a;a++){let e=i[a-1];(a%n===0||8===n&&a%n===4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],a%n===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),i[a]=i[a-n]^e}for(let e=0;a;e++,a--){const t=i[3&e?a:a-4];o[e]=4>=a||4>e?t:s[0][r[t>>>24]]^s[1][r[t>>16&255]]^s[2][r[t>>8&255]]^s[3][r[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],r=e[4],s=t[4],n=[],a=[];let i,o,c,l;for(let e=0;256>e;e++)a[(n[e]=e<<1^283*(e>>7))^e]=e;for(let d=i=0;!r[d];d^=o||1,i=a[i]||1){let a=i^i<<1^i<<2^i<<3^i<<4;a=a>>8^255&a^99,r[d]=a,s[a]=d,l=n[c=n[o=n[d]]];let u=16843009*l^65537*c^257*o^16843008*d,p=257*n[a]^16843008*a;for(let r=0;4>r;r++)e[r][d]=p=p<<24^p>>>8,t[r][a]=u=u<<24^u>>>8}for(let r=0;5>r;r++)e[r]=e[r].slice(0),t[r]=t[r].slice(0)}_crypt(e,t){if(4!==e.length)throw new p("invalid aes block size");const r=this._key[t],s=r.length/4-2,n=[0,0,0,0],a=this._tables[t],i=a[0],o=a[1],c=a[2],l=a[3],d=a[4];let u,f,h,w=e[0]^r[0],m=e[t?3:1]^r[1],g=e[2]^r[2],y=e[t?1:3]^r[3],b=4;for(let e=0;s>e;e++)u=i[w>>>24]^o[m>>16&255]^c[g>>8&255]^l[255&y]^r[b],f=i[m>>>24]^o[g>>16&255]^c[y>>8&255]^l[255&w]^r[b+1],h=i[g>>>24]^o[y>>16&255]^c[w>>8&255]^l[255&m]^r[b+2],y=i[y>>>24]^o[w>>16&255]^c[m>>8&255]^l[255&g]^r[b+3],b+=4,w=u,m=f,g=h;for(let e=0;4>e;e++)n[t?3&-e:e]=d[w>>>24]<<24^d[m>>16&255]<<16^d[g>>8&255]<<8^d[255&y]^r[b++],u=w,w=m,m=g,g=y,y=u;return n}},ft=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,r=e>>8&255,s=255&e;255===t?(t=0,255===r?(r=0,255===s?s=0:++s):++r):++t,e=0,e+=t<<16,e+=r<<8,e+=s}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,r){let s;if(!(s=t.length))return[];const n=Ze.bitLength(t);for(let n=0;s>n;n+=4){this.incCounter(r);const s=e.encrypt(r);t[n]^=s[0],t[n+1]^=s[1],t[n+2]^=s[2],t[n+3]^=s[3]}return Ze.clamp(t,n)}},ht=je.hmacSha1;let wt=ct&&dt&&typeof lt.importKey==X,mt=ct&&dt&&typeof lt.deriveBits==X;class gt extends D{constructor({password:e,rawPassword:t,signed:s,encryptionStrength:n,checkPasswordOnly:a}){super({start(){r.assign(this,{ready:new y(e=>this.resolveReady=e),password:St(e,t),signed:s,strength:n-1,pending:new f})},async transform(e,t){const r=this,{password:s,strength:n,resolveReady:i,ready:o}=r;s?(await(async(e,t,r,s)=>{const n=await zt(e,t,r,Ft(s,0,nt[t])),a=Ft(s,nt[t]);if(n[0]!=a[0]||n[1]!=a[1])throw new p(Xe)})(r,n,s,Ft(e,0,nt[n]+2)),e=Ft(e,nt[n]+2),a?t.error(new p(Je)):i()):await o;const c=new f(e.length-it-(e.length-it)%$e);t.enqueue(bt(r,e,c,0,it,!0))},async flush(e){const{signed:t,ctr:r,hmac:s,pending:n,ready:a}=this;if(s&&r){await a;const i=Ft(n,0,n.length-it),o=Ft(n,n.length-it);let c=new f;if(i.length){const e=kt(ut,i);s.update(e);const t=r.update(e);c=Dt(ut,t)}if(t){const e=Ft(Dt(ut,s.digest()),0,it);for(let t=0;it>t;t++)if(e[t]!=o[t])throw new p(Ye)}e.enqueue(c)}}})}}class yt extends D{constructor({password:e,rawPassword:t,encryptionStrength:s}){let n;super({start(){r.assign(this,{ready:new y(e=>this.resolveReady=e),password:St(e,t),strength:s-1,pending:new f})},async transform(e,t){const r=this,{password:s,strength:n,resolveReady:a,ready:i}=r;let o=new f;s?(o=await(async(e,t,r)=>{const s=Qe(new f(nt[t]));return xt(s,await zt(e,t,r,s))})(r,n,s),a()):await i;const c=new f(o.length+e.length-e.length%$e);c.set(o,0),t.enqueue(bt(r,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:r,pending:s,ready:a}=this;if(r&&t){await a;let i=new f;if(s.length){const e=t.update(kt(ut,s));r.update(e),i=Dt(ut,e)}n.signature=Dt(ut,r.digest()).slice(0,it),e.enqueue(xt(i,n.signature))}}}),n=this}}function bt(e,t,r,s,n,a){const{ctr:i,hmac:o,pending:c}=e,l=t.length-n;let d;for(c.length&&(t=xt(c,t),r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new f(t)).set(r,0)}return e})(r,l-l%$e)),d=0;l-$e>=d;d+=$e){const e=kt(ut,Ft(t,d,d+$e));a&&o.update(e);const n=i.update(e);a||o.update(n),r.set(Dt(ut,n),d+s)}return e.pending=Ft(t,d),r}async function zt(e,s,n,a){e.password=null;const i=await(async(e,t,r,s,n)=>{if(!wt)return je.importKey(t);try{return await lt.importKey("raw",t,r,!1,n)}catch{return wt=!1,je.importKey(t)}})(0,n,tt,0,st),o=await(async(e,t,r)=>{if(!mt)return je.pbkdf2(t,e.salt,rt.iterations,r);try{return await lt.deriveBits(e,t,r)}catch{return mt=!1,je.pbkdf2(t,e.salt,rt.iterations,r)}})(r.assign({salt:a},rt),i,8*(2*at[s]+2)),c=new f(o),l=kt(ut,Ft(c,0,at[s])),d=kt(ut,Ft(c,at[s],2*at[s])),u=Ft(c,2*at[s]);return r.assign(e,{keys:{key:l,authentication:d,passwordVerification:u},ctr:new ft(new pt(l),t.from(ot)),hmac:new ht(d)}),u}function St(e,t){return t===j?Pe(e):t}function xt(e,t){let r=e;return e.length+t.length&&(r=new f(e.length+t.length),r.set(e,0),r.set(t,e.length)),r}function Ft(e,t,r){return e.subarray(t,r)}function Dt(e,t){return e.fromBits(t)}function kt(e,t){return e.toBits(t)}class Et extends D{constructor({password:e,passwordVerification:t,checkPasswordOnly:s}){super({start(){r.assign(this,{password:e,passwordVerification:t}),Ct(this,e)},transform(e,t){const r=this;if(r.password){const t=At(r,e.subarray(0,12));if(r.password=null,t.at(-1)!=r.passwordVerification)throw new p(Xe);e=e.subarray(12)}s?t.error(new p(Je)):t.enqueue(At(r,e))}})}}class vt extends D{constructor({password:e,passwordVerification:t}){super({start(){r.assign(this,{password:e,passwordVerification:t}),Ct(this,e)},transform(e,t){const r=this;let s,n;if(r.password){r.password=null;const t=Qe(new f(12));t[11]=r.passwordVerification,s=new f(e.length+t.length),s.set(Rt(r,t),0),n=12}else s=new f(e.length),n=0;s.set(Rt(r,e),n),t.enqueue(s)}})}}function At(e,t){const r=new f(t.length);for(let s=0;s<t.length;s++)r[s]=Ut(e)^t[s],Tt(e,r[s]);return r}function Rt(e,t){const r=new f(t.length);for(let s=0;s<t.length;s++)r[s]=Ut(e)^t[s],Tt(e,t[s]);return r}function Ct(e,t){const s=[305419896,591751049,878082192];r.assign(e,{keys:s,crcKey0:new Ie(s[0]),crcKey2:new Ie(s[2])});for(let r=0;r<t.length;r++)Tt(e,t.charCodeAt(r))}function Tt(e,t){let[r,s,n]=e.keys;e.crcKey0.append([t]),r=~e.crcKey0.get(),s=_t(i.imul(_t(s+Wt(r)),134775813)+1),e.crcKey2.append([s>>>24]),n=~e.crcKey2.get(),e.keys=[r,s,n]}function Ut(e){const t=2|e.keys[2];return Wt(i.imul(t,1^t)>>>8)}function Wt(e){return 255&e}function _t(e){return 4294967295&e}const Mt="Invalid uncompressed size";class Nt extends D{constructor(e,{chunkSize:t,CompressionStreamZlib:r,CompressionStream:s}){super({});const{compressed:n,encrypted:a,useCompressionStream:i,zipCrypto:o,signed:c,level:l}=e,d=this;let u,p,f=super.readable;a&&!o||!c||(u=new He,f=It(f,u)),n&&(f=Ot(f,i,{level:l,chunkSize:t},s,r,s)),a&&(o?f=It(f,new vt(e)):(p=new yt(e),f=It(f,p))),Lt(d,f,()=>{let e;a&&!o&&(e=p.signature),a&&!o||!c||(e=new m(u.value.buffer).getUint32(0)),d.signature=e})}}class Bt extends D{constructor(e,{chunkSize:t,DecompressionStreamZlib:r,DecompressionStream:s}){super({});const{zipCrypto:n,encrypted:a,signed:i,signature:o,compressed:c,useCompressionStream:l,deflate64:d}=e;let u,f,h=super.readable;a&&(n?h=It(h,new Et(e)):(f=new gt(e),h=It(h,f))),c&&(h=Ot(h,l,{chunkSize:t,deflate64:d},s,r,s)),a&&!n||!i||(u=new He,h=It(h,u)),Lt(this,h,()=>{if((!a||n)&&i){const e=new m(u.value.buffer);if(o!=e.getUint32(0,!1))throw new p(Ye)}})}}function Lt(e,t,s){t=It(t,new D({flush:s})),r.defineProperty(e,"readable",{get:()=>t})}function Ot(e,t,r,s,n,a){const i=t&&s?s:n||a,o=r.deflate64?"deflate64-raw":"deflate-raw";try{e=It(e,new i(o,r))}catch(s){if(!t)throw s;if(n)e=It(e,new n(o,r));else{if(!a)throw s;e=It(e,new a(o,r))}}return e}function It(e,t){return e.pipeThrough(t)}const Ht="data",Pt="close",Zt="deflate",Vt="inflate";class qt extends D{constructor(e,t){super({});const s=this,{codecType:n}=e;let a;n.startsWith(Zt)?a=Nt:n.startsWith(Vt)&&(a=Bt),s.outputSize=0;let i=0;const o=new a(e,t),c=super.readable,l=new D({transform(e,t){e&&e.length&&(i+=e.length,t.enqueue(e))},flush(){r.assign(s,{inputSize:i})}}),d=new D({transform(t,r){if(t&&t.length&&(r.enqueue(t),s.outputSize+=t.length,e.outputSize!==j&&s.outputSize>e.outputSize))throw new p(Mt)},flush(){const{signature:e}=o;r.assign(s,{signature:e,inputSize:i})}});r.defineProperty(s,"readable",{get:()=>c.pipeThrough(l).pipeThrough(o).pipeThrough(d)})}}class Kt extends D{constructor(e){let t;super({transform:function r(s,n){if(t){const e=new f(t.length+s.length);e.set(t),e.set(s,t.length),s=e,t=null}s.length>e?(n.enqueue(s.slice(0,e)),r(s.slice(e),n)):t=s},flush(e){t&&t.length&&e.enqueue(t)}})}}let jt=typeof C!=G;class Gt{constructor(e,{readable:t,writable:s},{options:n,config:a,streamOptions:i,useWebWorkers:o,transferStreams:c,workerURI:l},d){const{signal:u}=i;return r.assign(e,{busy:!0,readable:t.pipeThrough(new Kt(a.chunkSize)).pipeThrough(new Xt(i),{signal:u}),writable:s,options:r.assign({},n),workerURI:l,transferStreams:c,terminate:()=>new y(t=>{const{worker:r,busy:s}=e;r?(s?e.resolveTerminated=t:(r.terminate(),t()),e.interface=null):t()}),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,d(e)}}),(o&&jt?Qt:Jt)(e,a)}}class Xt extends D{constructor({onstart:e,onprogress:t,size:r,onend:s}){let n=0;super({async start(){e&&await Yt(e,r)},async transform(e,s){n+=e.length,t&&await Yt(t,n,r),s.enqueue(e)},async flush(){s&&await Yt(s,n)}})}}async function Yt(e,...t){try{await e(...t)}catch{}}function Jt(e,t){return{run:()=>(async({options:e,readable:t,writable:r,onTaskFinished:s},n)=>{let a;try{if(!e.useCompressionStream)try{await void 0}catch{e.useCompressionStream=!0}a=new qt(e,n),await t.pipeThrough(a).pipeTo(r,{preventClose:!0,preventAbort:!0});const{signature:s,inputSize:i,outputSize:o}=a;return{signature:s,inputSize:i,outputSize:o}}catch(e){throw a&&(e.outputSize=a.outputSize),e}finally{s()}})(e,t)}}function Qt(e,t){const{baseURI:s,chunkSize:n}=t;let{wasmURI:a}=t;if(!e.interface){let i;typeof a==X&&(a=a());try{i=((e,t,s)=>{const n={type:"module"};let a,i;if(typeof e==X&&(e=e()),e.startsWith("data:")||e.startsWith("blob:"))try{i=new C(e)}catch{i=new C(e,n)}else{try{a=new u(e,t)}catch{a=e}i=new C(a,n)}return i.addEventListener("message",e=>(async({data:e},t)=>{const{type:s,value:n,messageId:a,result:i,error:o}=e,{reader:c,writer:l,resolveResult:d,rejectResult:u,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:s,name:n,outputSize:a}=o,i=new p(e);r.assign(i,{stack:t,code:s,name:n,outputSize:a}),w(i)}else{if("pull"==s){const{value:e,done:r}=await c.read();er({type:Ht,value:e,done:r,messageId:a},t)}s==Ht&&(await l.ready,await l.write(new f(n)),er({type:"ack",messageId:a},t)),s==Pt&&w(null,i)}}catch(o){er({type:Pt,messageId:a},t),w(o)}function w(e,t){e?u(e):d(t),l&&l.releaseLock(),h()}})(e,s)),i})(e.workerURI,s,e)}catch{return jt=!1,Jt(e,t)}r.assign(e,{worker:i,interface:{run:()=>(async(e,t)=>{let s,n;const a=new y((e,t)=>{s=e,n=t});r.assign(e,{reader:null,writer:null,resolveResult:s,rejectResult:n,result:a});const{readable:i,options:o}=e,{writable:c,closed:l}=(e=>{let t;const r=new y(e=>t=e);return{writable:new E({async write(t){const r=e.getWriter();await r.ready,await r.write(t),r.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:r}})(e.writable),d=er({type:"start",options:o,config:t,readable:i,writable:c},e);d||r.assign(e,{reader:i.getReader(),writer:c.getWriter()});const u=await a;return d||await c.getWriter().close(),await l,u})(e,{chunkSize:n,wasmURI:a,baseURI:s})}})}return e.interface}let $t=!0;function er(e,{worker:t,writer:r,onTaskFinished:s,transferStreams:n}){try{const{value:r,readable:s,writable:a}=e,i=[];if(r&&(r.byteLength<r.buffer.byteLength?e.value=r.buffer.slice(0,r.byteLength):e.value=r.buffer,i.push(e.value)),n&&$t?(s&&i.push(s),a&&i.push(a)):e.readable=e.writable=null,i.length)try{return t.postMessage(e,i),!0}catch{$t=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw r&&r.releaseLock(),s(),e}}let tr=[];const rr=[];let sr=0;async function nr(e,t){const{options:r,config:s}=t,{transferStreams:a,useWebWorkers:i,useCompressionStream:o,compressed:c,signed:l,encrypted:d}=r,{workerURI:u,maxWorkers:p}=s;t.transferStreams=a||a===j;const f=!(c||l||d||t.transferStreams);return t.useWebWorkers=!f&&(i||i===j&&s.useWebWorkers),t.workerURI=t.useWebWorkers&&u?u:j,r.useCompressionStream=o||o===j&&s.useCompressionStream,(await(async()=>{const r=tr.find(e=>!e.busy);if(r)return ar(r),new Gt(r,e,t,h);if(tr.length<p){const r={indexWorker:sr};return sr++,tr.push(r),new Gt(r,e,t,h)}return new y(r=>rr.push({resolve:r,stream:e,workerOptions:t}))})()).run();function h(e){if(rr.length){const[{resolve:t,stream:r,workerOptions:s}]=rr.splice(0,1);t(new Gt(e,r,s,h))}else e.worker?(ar(e),((e,t)=>{const{config:r}=t,{terminateWorkerTimeout:s}=r;n.isFinite(s)&&s>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout(async()=>{tr=tr.filter(t=>t!=e);try{await e.terminate()}catch{}},s))})(e,t)):tr=tr.filter(t=>t!=e)}}function ar(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const ir="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function or(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let r=0;r<e.length;r++)t+=ir[e[r]];return t}})(e):new z(t).decode(e)}const cr="filename",lr="rawFilename",dr="comment",ur="rawComment",pr="uncompressedSize",fr="compressedSize",hr="offset",wr="diskNumberStart",mr="lastModDate",gr="rawLastModDate",yr="lastAccessDate",br="creationDate",zr="internalFileAttributes",Sr="externalFileAttributes",xr="msDosCompatible",Fr="zip64",Dr="encrypted",kr="version",Er="versionMadeBy",vr="zipCrypto",Ar="directory",Rr="executable",Cr="compressionMethod",Tr="signature",Ur="extraField",Wr=[cr,lr,fr,pr,mr,gr,dr,ur,yr,br,hr,wr,wr,zr,Sr,xr,Fr,Dr,kr,Er,vr,Ar,Rr,Cr,Tr,Ur,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class _r{constructor(e){Wr.forEach(t=>this[t]=e[t])}}const Mr="password",Nr="rawPassword",Br="passThrough",Lr="signal",Or="useWebWorkers",Ir="useCompressionStream",Hr="preventClose",Pr="supportZip64SplitFile",Zr="offset",Vr="usdz",qr="File format is not recognized",Kr="Compression method not supported",jr="Split zip file",Gr="utf-8",Xr="cp437",Yr=[[pr,T],[fr,T],[hr,T],[wr,U]],Jr={[U]:{getValue:cs,bytes:4},[T]:{getValue:ls,bytes:8}};class Qr{constructor(e,t={}){r.assign(this,{reader:new Me(e),options:t,config:$(),readRanges:[]})}async*getEntriesGenerator(e={}){const t=this;let{reader:s}=t;const{config:n}=t;if(await Be(s),s.size!==j&&s.readUint8Array||(s=new fe(await new d(s.readable).blob()),await Be(s)),s.size<I)throw new p(qr);s.chunkSize=ee(n);const a=await(async(e,t,r)=>{const s=new f(4);var n;return n=t,ds(s).setUint32(0,n,!0),await a(22)||await a(i.min(1048582,r));async function a(t){const n=r-t,a=await Le(e,n,t);for(let e=a.length-22;e>=0;e--)if(a[e]==s[0]&&a[e+1]==s[1]&&a[e+2]==s[2]&&a[e+3]==s[3])return{offset:n+e,buffer:a.slice(e,e+22).buffer}}})(s,B,s.size);if(!a)throw cs(ds(await Le(s,0,4)))==_?new p(jr):new p("End of central directory not found");const o=ds(a);let c=cs(o,12),l=cs(o,16);const u=a.offset,h=os(o,20),w=u+I+h;let m=os(o,4);const g=s.lastDiskNumber||0;let b=os(o,6),z=os(o,8),S=0,x=0;if(l==T||c==T||z==U||b==U){const e=ds(await Le(s,a.offset-20,20));if(cs(e,0)==O){l=ls(e,8);let t=await Le(s,l,56,-1),r=ds(t);const n=a.offset-20-56;if(cs(r,0)!=L&&l!=n){const e=l;l=n,l>e&&(S=l-e),t=await Le(s,l,56,-1),r=ds(t)}if(cs(r,0)!=L)throw new p("End of Zip64 central directory locator not found");m==U&&(m=cs(r,16)),b==U&&(b=cs(r,20)),z==U&&(z=ls(r,32)),c==T&&(c=ls(r,40)),l-=c}}if(l<s.size||(S=s.size-l-c-I,l=s.size-c-I),g!=m)throw new p(jr);if(0>l)throw new p(qr);let F=0,k=await Le(s,l,c,b),E=ds(k);if(c){const e=a.offset-c;if(cs(E,F)!=N&&l!=e){const t=l;l=e,l>t&&(S+=l-t),k=await Le(s,l,c,b),E=ds(k)}}const v=a.offset-l-(s.lastDiskOffset||0);if(c==v||0>v||(c=v,k=await Le(s,l,c,b),E=ds(k)),0>l||l>=s.size)throw new p(qr);const A=ss(t,e,"filenameEncoding"),R=ss(t,e,"commentEncoding");for(let a=0;z>a;a++){const o=new $r(s,n,t.options);if(cs(E,F)!=N)throw new p("Central directory header not found");es(o,E,F+6);const c=!!o.bitFlag.languageEncodingFlag,l=F+46,u=l+o.filenameLength,f=u+o.extraFieldLength,h=os(E,F+4),w=!(h>>8),m=h>>8==3,g=k.subarray(l,u),b=os(E,F+32),v=f+b,C=k.subarray(f,v),T=c,U=c,W=cs(E,F+38),_=w&&!(16&~is(E,F+38))||m&&16384==(W>>16&61440)||g.length&&47==g.at(-1),M=m&&!!(W>>16&73),B=cs(E,F+42)+S;r.assign(o,{versionMadeBy:h,msDosCompatible:w,compressedSize:0,uncompressedSize:0,commentLength:b,directory:_,offset:B,diskNumberStart:os(E,F+34),internalFileAttributes:os(E,F+36),externalFileAttributes:W,rawFilename:g,filenameUTF8:T,commentUTF8:U,rawExtraField:k.subarray(u,f),executable:M}),o.internalFileAttribute=o.internalFileAttributes,o.externalFileAttribute=o.externalFileAttributes;const L=ss(t,e,"decodeText")||or,O=T?Gr:A||Xr,I=U?Gr:R||Xr;let H=L(g,O);H===j&&(H=or(g,O));let P=L(C,I);P===j&&(P=or(C,I)),r.assign(o,{rawComment:C,filename:H,comment:P,directory:_||H.endsWith(Z)}),x=i.max(B,x),ts(o,o,E,F+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const V=new _r(o);V.getData=(e,r)=>o.getData(e,V,t.readRanges,r),V.arrayBuffer=async e=>{const r=new D,[s]=await y.all([new d(r.readable).arrayBuffer(),o.getData(r,V,t.readRanges,e)]);return s},F=v;const{onprogress:q}=e;if(q)try{await q(a+1,z,new _r(o))}catch{}yield V}const C=ss(t,e,"extractPrependedData"),W=ss(t,e,"extractAppendedData");return C&&(t.prependedData=x>0?await Le(s,0,x):new f),t.comment=h?await Le(s,u+I,h):new f,W&&(t.appendedData=w<s.size?await Le(s,w,s.size-w):new f),!0}async getEntries(e={}){const t=[];for await(const r of this.getEntriesGenerator(e))t.push(r);return t}async close(){}}let $r=class{constructor(e,t,s){r.assign(this,{reader:e,config:t,options:s})}async getData(e,t,s,n={}){const a=this,{reader:i,offset:o,diskNumberStart:c,extraFieldAES:l,extraFieldZip64:d,compressionMethod:u,config:h,bitFlag:w,signature:m,rawLastModDate:g,uncompressedSize:y,compressedSize:b}=a,{dataDescriptor:z}=w,S=t.localDirectory={},x=ds(await Le(i,o,V,c));let F=ss(a,n,Mr),D=ss(a,n,Nr);const k=ss(a,n,Br);if(F=F&&F.length&&F,D=D&&D.length&&D,l&&99!=l.originalCompressionMethod)throw new p(Kr);if(0!=u&&8!=u&&9!=u&&!k)throw new p(Kr);if(cs(x,0)!=W)throw new p("Local file header not found");es(S,x,4);const{extraFieldLength:v,filenameLength:A,lastAccessDate:R,creationDate:C}=S;S.rawExtraField=v?await Le(i,o+V+A,v,c):new f,ts(a,S,x,4,!0),r.assign(t,{lastAccessDate:R,creationDate:C});const T=a.encrypted&&S.encrypted&&!k,U=T&&!l;if(k||(t.zipCrypto=U),T){if(!U&&l.strength===j)throw new p("Encryption method not supported");if(!F&&!D)throw new p("File contains encrypted entry")}const _=o+V+A+v,N=b,B=i.readable;r.assign(B,{diskNumberStart:c,offset:_,size:N});const L=ss(a,n,Lr),O=ss(a,n,"checkPasswordOnly");let I=ss(a,n,"checkOverlappingEntry");const H=ss(a,n,"checkOverlappingEntryOnly");H&&(I=!0);const{onstart:P,onprogress:Z,onend:q}=n,K=9==u;let G=ss(a,n,Ir);K&&(G=!1);const X={options:{codecType:Vt,password:F,rawPassword:D,zipCrypto:U,encryptionStrength:l&&l.strength,signed:ss(a,n,"checkSignature")&&!k,passwordVerification:U&&(z?g>>>8&255:m>>>24&255),outputSize:k?b:y,signature:m,compressed:0!=u&&!k,encrypted:a.encrypted&&!k,useWebWorkers:ss(a,n,Or),useCompressionStream:G,transferStreams:ss(a,n,"transferStreams"),deflate64:K,checkPasswordOnly:O},config:h,streamOptions:{signal:L,size:N,onstart:P,onprogress:Z,onend:q}};let Y;I&&await(async({reader:e,fileEntry:t,offset:r,diskNumberStart:s,signature:n,compressedSize:a,uncompressedSize:i,dataOffset:o,dataDescriptor:c,extraFieldZip64:l,readRanges:d})=>{let u=0;if(s)for(let t=0;s>t;t++)u+=e.readers[t].size;let f=0;if(c&&(f=l?20:12),f){const r=await Le(e,o+a,f+4,s);if(cs(ds(r),0)==M){const e=cs(ds(r),4);let s,o;l?(s=ls(ds(r),8),o=ls(ds(r),16)):(s=cs(ds(r),8),o=cs(ds(r),12)),(t.encrypted&&!t.zipCrypto||e==n)&&s==a&&o==i&&(f+=4)}}const h={start:u+r,end:u+o+a+f,fileEntry:t};for(const e of d)if(e.fileEntry!=t&&h.start>=e.start&&h.start<e.end){const t=new p("Overlapping entry found");throw t.overlappingEntry=e.fileEntry,t}d.push(h)})({reader:i,fileEntry:t,offset:o,diskNumberStart:c,signature:m,compressedSize:b,uncompressedSize:y,dataOffset:_,dataDescriptor:z||S.bitFlag.dataDescriptor,extraFieldZip64:d||S.extraFieldZip64,readRanges:s});try{if(!H){O&&(e=new E),e=new Ne(e),await Be(e,k?b:y),({writable:Y}=e);const{outputSize:t}=await nr({readable:B,writable:Y},X);if(e.size+=t,t!=(k?b:y))throw new p(Mt)}}catch(t){if(t.outputSize!==j&&(e.size+=t.outputSize),!O||t.message!=Je)throw t}finally{ss(a,n,Hr)||!Y||Y.locked||await Y.getWriter().close()}return O||H?j:e.getData?e.getData():Y}};function es(e,t,s){const n=e.rawBitFlag=os(t,s+2),a=!(1&~n),i=cs(t,s+6);r.assign(e,{encrypted:a,version:os(t,s),bitFlag:{level:(6&n)>>1,dataDescriptor:!(8&~n),languageEncodingFlag:(n&P)==P},rawLastModDate:i,lastModDate:ns(i),filenameLength:os(t,s+22),extraFieldLength:os(t,s+24)})}function ts(e,t,s,n,a){const{rawExtraField:i}=t,l=t.extraField=new c,d=ds(new f(i));let u=0;try{for(;u<i.length;){const e=os(d,u),t=os(d,u+2);l.set(e,{type:e,data:i.slice(u+4,u+4+t)}),u+=4+t}}catch{}const h=os(s,n+4);r.assign(t,{signature:cs(s,n+10),compressedSize:cs(s,n+14),uncompressedSize:cs(s,n+18)});const w=l.get(1);w&&(((e,t)=>{t.zip64=!0;const r=ds(e.data),s=Yr.filter(([e,r])=>t[e]==r);for(let n=0,a=0;n<s.length;n++){const[i,o]=s[n];if(t[i]==o){const s=Jr[o];t[i]=e[i]=s.getValue(r,a),a+=s.bytes}else if(e[i])throw new p("Zip64 extra field not found")}})(w,t),t.extraFieldZip64=w);const m=l.get(28789);m&&(rs(m,cr,lr,t,e),t.extraFieldUnicodePath=m);const g=l.get(25461);g&&(rs(g,dr,ur,t,e),t.extraFieldUnicodeComment=g);const y=l.get(39169);y?(((e,t,s)=>{const n=ds(e.data),a=is(n,4);r.assign(e,{vendorVersion:is(n,0),vendorId:is(n,2),strength:a,originalCompressionMethod:s,compressionMethod:os(n,5)}),t.compressionMethod=e.compressionMethod})(y,t,h),t.extraFieldAES=y):t.compressionMethod=h;const b=l.get(10);b&&(((e,t)=>{const s=ds(e.data);let n,a=4;try{for(;a<e.data.length&&!n;){const t=os(s,a),r=os(s,a+2);1==t&&(n=e.data.slice(a+4,a+4+r)),a+=4+r}}catch{}try{if(n&&24==n.length){const s=ds(n),a=s.getBigUint64(0,!0),i=s.getBigUint64(8,!0),o=s.getBigUint64(16,!0);r.assign(e,{rawLastModDate:a,rawLastAccessDate:i,rawCreationDate:o});const c={lastModDate:as(a),lastAccessDate:as(i),creationDate:as(o)};r.assign(e,c),r.assign(t,c)}}catch{}})(b,t),t.extraFieldNTFS=b);const z=l.get(H);z&&(((e,t,r)=>{const s=ds(e.data),n=is(s,0),a=[],i=[];r?(1&~n||(a.push(mr),i.push(gr)),2&~n||(a.push(yr),i.push("rawLastAccessDate")),4&~n||(a.push(br),i.push("rawCreationDate"))):5>e.data.length||(a.push(mr),i.push(gr));let c=1;a.forEach((r,n)=>{if(e.data.length>=c+4){const a=cs(s,c);t[r]=e[r]=new o(1e3*a);const l=i[n];e[l]=a}c+=4})})(z,t,a),t.extraFieldExtendedTimestamp=z);const S=l.get(6534);S&&(t.extraFieldUSDZ=S)}function rs(e,t,s,n,a){const i=ds(e.data),o=new Ie;o.append(a[s]);const c=ds(new f(4));c.setUint32(0,o.get(),!0);const l=cs(i,1);r.assign(e,{version:is(i,0),[t]:or(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&l==cs(c,0)}),e.valid&&(n[t]=e[t],n[t+"UTF8"]=!0)}function ss(e,t,r){return t[r]===j?e.options[r]:t[r]}function ns(e){const t=(4294901760&e)>>16,r=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&r)>>11,(2016&r)>>5,2*(31&r),0)}catch{}}function as(e){return new o(n(e/a(1e4)-a(116444736e5)))}function is(e,t){return e.getUint8(t)}function os(e,t){return e.getUint16(t,!0)}function cs(e,t){return e.getUint32(t,!0)}function ls(e,t){return n(e.getBigUint64(t,!0))}function ds(e){return new m(e.buffer)}const us="Version exceeds 65535",ps="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",fs=new f([7,0,2,0,65,69,3,0,0]);let hs=0;const ws=[];class ms{constructor(e,t={}){const s=(e=new Ne(e)).availableSize!==j&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==j&&e.maxSize>0&&e.maxSize!==1/0;r.assign(this,{writer:e,addSplitZipSignature:s,options:t,config:$(),files:new c,filenames:new l,offset:t[Zr]===j?e.size||e.writable.size||0:t[Zr],pendingEntriesSize:0,pendingAddFileCalls:new l,bufferedWrites:0})}async prependZip(e){if(this.filenames.size)throw new p("Zip file not empty");e=new Me(e);const t=new Qr(e.readable),s=await t.getEntries();await t.close(),await e.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=e.size,this.filenames=new l(s.map(e=>e.filename)),this.files=new c(s.map(e=>{const{version:t,compressionMethod:s,lastModDate:n,lastAccessDate:a,creationDate:i,rawFilename:o,bitFlag:c,encrypted:l,uncompressedSize:d,compressedSize:u,diskOffset:p,diskNumber:h,zip64:w}=e;let{rawExtraFieldZip64:m,rawExtraFieldAES:g,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:b,rawExtraField:z}=e;const{level:S,languageEncodingFlag:x,dataDescriptor:F}=c;m=m||new f,g=g||new f,y=y||new f,b=b||new f,z=z||new f;const D=As(m,g,y,b,z),k=w&&d>T,E=w&&u>T,{headerArray:v,headerView:A}=Rs({version:t,bitFlag:Cs(S,x,F,l,s),compressionMethod:s,uncompressedSize:d,compressedSize:u,lastModDate:n,rawFilename:o,zip64CompressedSize:E,zip64UncompressedSize:k,extraFieldLength:D});return r.assign(e,{zip64UncompressedSize:k,zip64CompressedSize:E,zip64Offset:w&&this.offset-p>T,zip64DiskNumberStart:w&&h>U,rawExtraFieldZip64:m,rawExtraFieldAES:g,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:b,rawExtraField:z,extendedTimestamp:y.length>0||b.length>0,extraFieldExtendedTimestampFlag:1+(a?2:0)+(i?4:0),headerArray:v,headerView:A}),[e.filename,e]}))}async add(e="",s,n={}){const c=this,{pendingAddFileCalls:l,config:u}=c;let w;hs<u.maxWorkers?hs++:await new y(e=>ws.push(e));try{if(e=e.trim(),c.filenames.has(e))throw new p("File already exists");return c.filenames.add(e),w=(async(e,s,n,c)=>{s=s.trim();const l=zs(e,c,xr),u=zs(e,c,Er,l?20:768),w=zs(e,c,Rr);if(u>U)throw new p(us);let m=zs(e,c,Sr,0);!c[Ar]&&s.endsWith(Z)&&(c[Ar]=!0),zs(e,c,Ar)?(s.endsWith(Z)||(s+=Z),0===m&&(m=16,l||(m|=16877<<16))):l||0!==m||(m=w?493<<16:27525120);const g=zs(e,c,"encodeText",Pe);let b=g(s);if(b===j&&(b=Pe(s)),As(b)>U)throw new p("File entry name exceeds 64KB");const z=c[dr]||"";let S=g(z);if(S===j&&(S=Pe(z)),As(S)>U)throw new p("File entry comment exceeds 64KB");const x=zs(e,c,kr,20);if(x>U)throw new p(us);const F=zs(e,c,mr,new o),k=zs(e,c,yr),E=zs(e,c,br),v=zs(e,c,zr,0),A=zs(e,c,Br);let R,C;A||(R=zs(e,c,Mr),C=zs(e,c,Nr));const N=zs(e,c,"encryptionStrength",3),B=zs(e,c,vr),L=zs(e,c,"extendedTimestamp",!0),O=zs(e,c,"keepOrder",!0),I=zs(e,c,Or),P=zs(e,c,"bufferedWrite"),G=zs(e,c,"dataDescriptorSignature",!1),X=zs(e,c,Lr),Y=zs(e,c,"useUnicodeFileNames",!0),J=zs(e,c,Cr);let Q=zs(e,c,"level"),$=zs(e,c,Ir),te=zs(e,c,"dataDescriptor");P&&te===j&&(te=!1),(te===j||B)&&(te=!0),Q!==j&&6!=Q&&($=!1),$||e.config.CompressionStream!==j||e.config.CompressionStreamZlib!==j||(Q=0);let re=zs(e,c,Fr);if(!B&&(R!==j||C!==j)&&(1>N||N>3))throw new p("The strength must equal 1, 2, or 3");let se=new f;const ne=c[Ur];if(ne){let e=0,t=0;ne.forEach(t=>e+=4+As(t)),se=new f(e),ne.forEach((e,r)=>{if(r>U)throw new p("Extra field type exceeds 65535");if(As(e)>U)throw new p("Extra field data exceeds 64KB");Es(se,new h([r]),t),Es(se,new h([As(e)]),t+2),Es(se,e,t+4),t+=4+As(e)})}let ae=0,ie=0,oe=0;if(A&&(oe=c[pr],oe===j))throw new p("Undefined uncompressed size");const ce=!0===re;n&&(n=new Me(n),await Be(n),A?(c.uncompressedSize=oe,ae=Ss(oe)):n.size===j?(te=!0,(re||re===j)&&(re=!0,oe=ae=4294967296)):(c.uncompressedSize=oe=n.size,ae=Ss(oe)));const{diskOffset:le,diskNumber:de,maxSize:ue}=e.writer,pe=ce||oe>T,fe=ce||ae>T,he=ce||e.offset+e.pendingEntriesSize-le>T,we=zs(e,c,Pr,!0)&&ce||de+i.ceil(e.pendingEntriesSize/ue)>U;if(he||pe||fe||we){if(!1===re||!O)throw new p(ps);re=!0}re=re||!1;const me=zs(e,c,Dr),ge=(e=>{const{rawFilename:t,lastModDate:r,lastAccessDate:s,creationDate:n,level:o,zip64:c,zipCrypto:l,useUnicodeFileNames:d,dataDescriptor:u,directory:p,rawExtraField:h,encryptionStrength:w,extendedTimestamp:m,passThrough:g,encrypted:y,zip64UncompressedSize:b,zip64CompressedSize:z,zip64Offset:S,zip64DiskNumberStart:x,uncompressedSize:F,offset:D,diskNumberStart:k}=e;let{version:E,compressionMethod:v}=e;const A=!p&&(o>0||o===j&&0!==v);let R;const C=g||!A,T=c&&(e.bufferedWrite||!b&&!z||C);if(c){let e=4;b&&(e+=8),z&&(e+=8),S&&(e+=8),x&&(e+=4),R=new f(e);const t=vs(R);if(Fs(t,0,1),Fs(t,2,As(R)-4),T){const e=vs(R);let t=4;b&&(ks(e,t,a(F)),t+=8),z&&C&&(ks(e,t,a(F)),t+=8),S&&(ks(e,t,a(D)),t+=8),x&&(Ds(e,t,k),t+=4)}}else R=new f;let U,_,M,N;if(y&&!l){U=new f(As(fs)+2);const e=vs(U);Fs(e,0,39169),Es(U,fs,2),xs(e,8,w)}else U=new f;if(m){M=new f(9+(s?4:0)+(n?4:0));const e=vs(M);Fs(e,0,H),Fs(e,2,As(M)-4),N=1+(s?2:0)+(n?4:0),xs(e,4,N);let t=5;Ds(e,t,i.floor(r.getTime()/1e3)),t+=4,s&&(Ds(e,t,i.floor(s.getTime()/1e3)),t+=4),n&&Ds(e,t,i.floor(n.getTime()/1e3));try{_=new f(36);const e=vs(_),t=bs(r);Fs(e,0,10),Fs(e,2,32),Fs(e,8,1),Fs(e,10,24),ks(e,12,t),ks(e,20,bs(s)||t),ks(e,28,bs(n)||t)}catch{_=new f}}else _=M=new f;v===j&&(v=A?8:0),c&&(E=E>45?E:45),y&&!l&&(E=E>51?E:51,U[9]=v,v=99);const B=T?As(R):0,L=B+As(U,M,_,h),{headerArray:O,headerView:I,rawLastModDate:P}=Rs({version:E,bitFlag:Cs(o,d,u,y,v),compressionMethod:v,uncompressedSize:F,lastModDate:K>r?K:r>q?q:r,rawFilename:t,zip64CompressedSize:z,zip64UncompressedSize:b,extraFieldLength:L});let Z=V;const G=new f(Z+As(t)+L),X=vs(G);return Ds(X,0,W),Es(G,O,4),Es(G,t,Z),Z+=As(t),T&&Es(G,R,Z),Z+=B,Es(G,U,Z),Z+=As(U),Es(G,M,Z),Z+=As(M),Es(G,_,Z),Z+=As(_),Es(G,h,Z),u&&(Ds(X,18,0),Ds(X,22,0)),{localHeaderArray:G,localHeaderView:X,headerArray:O,headerView:I,lastModDate:r,rawLastModDate:P,encrypted:y,compressed:A,version:E,compressionMethod:v,extraFieldExtendedTimestampFlag:N,rawExtraFieldZip64:R,localExtraFieldZip64Length:B,rawExtraFieldExtendedTimestamp:M,rawExtraFieldNTFS:_,rawExtraFieldAES:U,extraFieldLength:L}})(c=r.assign({},c,{rawFilename:b,rawComment:S,version:x,versionMadeBy:u,lastModDate:F,lastAccessDate:k,creationDate:E,rawExtraField:se,zip64:re,zip64UncompressedSize:pe,zip64CompressedSize:fe,zip64Offset:he,zip64DiskNumberStart:we,password:R,rawPassword:C,level:Q,useWebWorkers:I,encryptionStrength:N,extendedTimestamp:L,zipCrypto:B,bufferedWrite:P,keepOrder:O,useUnicodeFileNames:Y,dataDescriptor:te,dataDescriptorSignature:G,signal:X,msDosCompatible:l,internalFileAttribute:v,internalFileAttributes:v,externalFileAttribute:m,externalFileAttributes:m,useCompressionStream:$,passThrough:A,encrypted:!!(R&&As(R)||C&&As(C))||A&&me,signature:c[Tr],compressionMethod:J,uncompressedSize:oe,offset:e.offset-le,diskNumberStart:de})),ye=(({zip64:e,dataDescriptor:t,dataDescriptorSignature:r})=>{let s,n=new f,a=0,i=e?20:12;return r&&(i+=4),t&&(n=new f(i),s=vs(n),r&&(a=4,Ds(s,0,M))),{dataDescriptorArray:n,dataDescriptorView:s,dataDescriptorOffset:a}})(c),be=As(ge.localHeaderArray,ye.dataDescriptorArray);let ze;ie=be+ae,e.options[Vr]&&(ie+=ie+64),e.pendingEntriesSize+=ie;try{ze=await(async(e,s,n,i,o)=>{const{files:c,writer:l}=e,{keepOrder:u,dataDescriptor:h,signal:w}=o,{headerInfo:m}=i,g=e.options[Vr],b=t.from(c.values()).pop();let z,S,x,F,k,E,v,A={};c.set(s,A);try{let t;u&&(t=b&&b.lock,A.lock=new y(e=>x=e)),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&u)&&h||g?(E=l,await R()):(E=new D,E.size=0,z=!0,e.bufferedWrites++,await Be(l)),await Be(E);const{writable:S,diskOffset:U}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new f(4);Ds(vs(t),0,_),await ys(l,t),e.offset+=4}g&&((e,t)=>{const{headerInfo:r}=e;let{localHeaderArray:s,extraFieldLength:n}=r,a=vs(s),i=64-(t+As(s))%64;4>i&&(i+=64);const o=new f(i),c=vs(o);Fs(c,0,6534),Fs(c,2,i-2);const l=s;r.localHeaderArray=s=new f(As(l)+i),Es(s,l),Es(s,o,As(l)),a=vs(s),Fs(a,28,n+i),e.metadataSize+=i})(i,e.offset-U);const{localHeaderView:W,localHeaderArray:M}=m;z||(await t,await C(S));const{diskNumber:N}=l;k=!0,A.diskNumberStart=N,z?v=new d(E.readable).blob():await ys(E,M),A=await(async(e,t,{diskNumberStart:s,lock:n},i,o,c)=>{const{headerInfo:l,dataDescriptorInfo:d,metadataSize:u}=i,{headerArray:p,headerView:f,lastModDate:h,rawLastModDate:w,encrypted:m,compressed:g,version:y,compressionMethod:b,rawExtraFieldZip64:z,localExtraFieldZip64Length:S,rawExtraFieldExtendedTimestamp:x,extraFieldExtendedTimestampFlag:F,rawExtraFieldNTFS:D,rawExtraFieldAES:k}=l,{dataDescriptorArray:E}=d,{rawFilename:v,lastAccessDate:A,creationDate:R,password:C,rawPassword:T,level:U,zip64:W,zip64UncompressedSize:_,zip64CompressedSize:M,zip64Offset:N,zip64DiskNumberStart:B,zipCrypto:L,dataDescriptor:O,directory:I,executable:H,versionMadeBy:P,rawComment:Z,rawExtraField:V,useWebWorkers:q,onstart:K,onprogress:G,onend:X,signal:Y,encryptionStrength:J,extendedTimestamp:Q,msDosCompatible:$,internalFileAttributes:te,externalFileAttributes:re,useCompressionStream:se,passThrough:ne}=c,ae={lock:n,versionMadeBy:P,zip64:W,directory:!!I,executable:!!H,filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:Z,rawExtraFieldZip64:z,localExtraFieldZip64Length:S,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:D,rawExtraFieldAES:k,rawExtraField:V,extendedTimestamp:Q,msDosCompatible:$,internalFileAttributes:te,externalFileAttributes:re,diskNumberStart:s};let{signature:ie,uncompressedSize:oe}=c,ce=0;ne||(oe=0);const{writable:le}=t;if(e){e.chunkSize=ee(o);const r=e.readable,s=e.size,n={options:{codecType:Zt,level:U,rawPassword:T,password:C,encryptionStrength:J,zipCrypto:m&&L,passwordVerification:m&&L&&w>>8&255,signed:!ne,compressed:g&&!ne,encrypted:m&&!ne,useWebWorkers:q,useCompressionStream:se,transferStreams:!1},config:o,streamOptions:{signal:Y,size:s,onstart:K,onprogress:G,onend:X}};try{const e=await nr({readable:r,writable:le},n);ce=e.outputSize,t.size+=ce,ne||(oe=e.inputSize,ie=e.signature)}catch(e){throw e.outputSize!==j&&(t.size+=e.outputSize),e}}return(({signature:e,compressedSize:t,uncompressedSize:r,headerInfo:s,dataDescriptorInfo:n},{zip64:i,zipCrypto:o,dataDescriptor:c})=>{const{headerView:l,encrypted:d}=s,{dataDescriptorView:u,dataDescriptorOffset:p}=n;d&&!o||e===j||(Ds(l,10,e),c&&Ds(u,p,e)),i?c&&(ks(u,p+4,a(t)),ks(u,p+12,a(r))):(Ds(l,14,t),Ds(l,18,r),c&&(Ds(u,p+4,t),Ds(u,p+8,r)))})({signature:ie,compressedSize:ce,uncompressedSize:oe,headerInfo:l,dataDescriptorInfo:d},c),O&&await ys(t,E),r.assign(ae,{uncompressedSize:oe,compressedSize:ce,lastModDate:h,rawLastModDate:w,creationDate:R,lastAccessDate:A,encrypted:m,zipCrypto:L,size:u+ce,compressionMethod:b,version:y,headerArray:p,headerView:f,signature:ie,extraFieldExtendedTimestampFlag:F,zip64UncompressedSize:_,zip64CompressedSize:M,zip64Offset:N,zip64DiskNumberStart:B}),ae})(n,E,A,i,e.config,o);const{zip64:B}=A;if(k=!1,c.set(s,A),A.filename=s,z){const[r]=await y.all([v,E.writable.getWriter().close(),t]);await R(),F=!0,A.diskNumberStart=l.diskNumber,A.offset=e.offset-l.diskOffset,B&&gs(A),(({rawFilename:e,encrypted:t,zip64:r,localExtraFieldZip64Length:s,signature:n,compressedSize:i,uncompressedSize:o,offset:c,diskNumberStart:l,zip64UncompressedSize:d,zip64CompressedSize:u,zip64Offset:p,zip64DiskNumberStart:f},h,{dataDescriptor:w})=>{if(w||(t||Ds(h,14,n),r||(Ds(h,18,i),Ds(h,22,o))),r&&s){let t=V+As(e)+4;d&&(ks(h,t,a(o)),t+=8),u&&(ks(h,t,a(i)),t+=8),p&&(ks(h,t,a(c)),t+=8),f&&Ds(h,t,l)}})(A,W,o),await C(S),await ys(l,M),await r.stream().pipeTo(S,{preventClose:!0,preventAbort:!0,signal:w}),l.size+=E.size,F=!1}else A.offset=e.offset-U,B&&gs(A);if(A.offset>T&&!B)throw new p(ps);return e.offset+=A.size,A}catch(t){if(z&&F||!z&&k){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch{}z?e.offset+=E.size:e.offset=E.size}throw c.delete(s),t}finally{z&&e.bufferedWrites--,x&&x(),S&&S()}async function R(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new y(t=>S=()=>{e.writerLocked=!1,t()}),await t}async function C(e){As(m.localHeaderArray)>l.availableSize&&(l.availableSize=0,await ys(e,new f))}})(e,s,n,{headerInfo:ge,dataDescriptorInfo:ye,metadataSize:be},c)}finally{e.pendingEntriesSize-=ie}return r.assign(ze,{name:s,comment:z,extraField:ne}),new _r(ze)})(c,e,s,n),l.add(w),await w}catch(t){throw c.filenames.delete(e),t}finally{l.delete(w);const e=ws.shift();e?e():hs--}}remove(e){const{filenames:t,files:r}=this;if("string"==typeof e&&(e=r.get(e)),e&&e.filename!==j){const{filename:s}=e;if(t.has(s)&&r.has(s))return t.delete(s),r.delete(s),!0}return!1}async close(e=new f,r={}){const{pendingAddFileCalls:s,writer:n}=this,{writable:o}=n;for(;s.size;)await y.allSettled(t.from(s));return await(async(e,r,s)=>{const{files:n,writer:o}=e,{diskOffset:c}=o;let{diskNumber:l}=o,d=0,u=0,h=e.offset-c,w=n.size;for(const[,e]of n){const{rawFilename:t,rawExtraFieldZip64:r,rawExtraFieldAES:s,rawComment:n,rawExtraFieldNTFS:a,rawExtraField:o,extendedTimestamp:c,extraFieldExtendedTimestampFlag:l,lastModDate:d}=e;let p;if(c){p=new f(9);const e=vs(p);Fs(e,0,H),Fs(e,2,5),xs(e,4,l),Ds(e,5,i.floor(d.getTime()/1e3))}else p=new f;e.rawExtraFieldExtendedTimestamp=p,u+=46+As(t,n,r,s,a,p,o)}const m=new f(u),g=vs(m);await Be(o);let y=0;for(const[e,r]of t.from(n.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:i,rawExtraFieldAES:c,rawExtraFieldExtendedTimestamp:l,rawExtraFieldNTFS:u,rawExtraField:p,rawComment:f,versionMadeBy:h,headerArray:w,headerView:b,zip64:z,zip64UncompressedSize:S,zip64CompressedSize:x,zip64DiskNumberStart:F,zip64Offset:D,internalFileAttributes:k,externalFileAttributes:E,diskNumberStart:v,uncompressedSize:A,compressedSize:R}=r,C=As(i,c,l,u,p);Ds(g,d,N),Fs(g,d+4,h),S||Ds(b,18,A),x||Ds(b,14,R),Es(m,w,d+6);let W=d+V;if(Fs(g,W,C),W+=2,Fs(g,W,As(f)),W+=2,Fs(g,W,z&&F?U:v),W+=2,Fs(g,W,k),W+=2,E&&Ds(g,W,E),W+=4,Ds(g,W,z&&D?T:t),W+=4,Es(m,a,W),W+=As(a),Es(m,i,W),W+=As(i),Es(m,c,W),W+=As(c),Es(m,l,W),W+=As(l),Es(m,u,W),W+=As(u),Es(m,p,W),W+=As(p),Es(m,f,W),d-y>o.availableSize&&(o.availableSize=0,await ys(o,m.slice(y,d)),y=d),d=W,s.onprogress)try{await s.onprogress(e+1,n.size,new _r(r))}catch{}}await ys(o,y?m.slice(y):m);let b=o.diskNumber;const{availableSize:z}=o;I>z&&b++;let S=zs(e,s,Fr);if(h>T||u>T||w>U||b>U){if(!1===S)throw new p(ps);S=!0}const x=new f(S?98:I),F=vs(x);d=0,S&&(Ds(F,0,L),ks(F,4,a(44)),Fs(F,12,45),Fs(F,14,45),Ds(F,16,b),Ds(F,20,l),ks(F,24,a(w)),ks(F,32,a(w)),ks(F,40,a(u)),ks(F,48,a(h)),Ds(F,56,O),ks(F,64,a(h)+a(u)),Ds(F,72,b+1),zs(e,s,Pr,!0)&&(b=U,l=U),w=U,h=T,u=T,d+=76),Ds(F,d,B),Fs(F,d+4,b),Fs(F,d+6,l),Fs(F,d+8,w),Fs(F,d+10,w),Ds(F,d+12,u),Ds(F,d+16,h);const D=As(r);if(D){if(D>U)throw new p("Zip file comment exceeds 64KB");Fs(F,d+20,D)}await ys(o,x),D&&await ys(o,r)})(this,e,r),zs(this,r,Hr)||await o.getWriter().close(),n.getData?n.getData():o}}function gs({compressedSize:e,uncompressedSize:t,offset:r,diskNumberStart:s,zip64UncompressedSize:n,zip64CompressedSize:i,zip64Offset:o,zip64DiskNumberStart:c,rawExtraFieldZip64:l}){const d=vs(l);let u=4;n&&(ks(d,u,a(t)),u+=8),i&&(ks(d,u,a(e)),u+=8),o&&(ks(d,u,a(r)),u+=8),c&&Ds(d,u,s)}async function ys(e,t){const{writable:r}=e,s=r.getWriter();try{await s.ready,e.size+=As(t),await s.write(t)}finally{s.releaseLock()}}function bs(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function zs(e,t,r,s){const n=t[r]===j?e.options[r]:t[r];return n===j?s:n}function Ss(e){return e+5*(i.floor(e/16383)+1)}function xs(e,t,r){e.setUint8(t,r)}function Fs(e,t,r){e.setUint16(t,r,!0)}function Ds(e,t,r){e.setUint32(t,r,!0)}function ks(e,t,r){e.setBigUint64(t,r,!0)}function Es(e,t,r){e.set(t,r)}function vs(e){return new m(e.buffer)}function As(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Rs({version:e,bitFlag:t,compressionMethod:r,uncompressedSize:s,compressedSize:n,lastModDate:a,rawFilename:i,zip64CompressedSize:o,zip64UncompressedSize:c,extraFieldLength:l}){const d=new f(26),u=vs(d);Fs(u,0,e),Fs(u,2,t),Fs(u,4,r);const p=new w(1),h=vs(p);Fs(h,0,(a.getHours()<<6|a.getMinutes())<<5|a.getSeconds()/2),Fs(h,2,(a.getFullYear()-1980<<4|a.getMonth()+1)<<5|a.getDate());const m=p[0];return Ds(u,6,m),(o||n!==j)&&Ds(u,14,o?T:n),(c||s!==j)&&Ds(u,18,c?T:s),Fs(u,22,As(i)),Fs(u,24,l),{headerArray:d,headerView:u,rawLastModDate:m}}function Cs(e,t,r,s,n){let a=0;return t&&(a|=P),r&&(a|=8),8!=n&&9!=n||(0>e||e>3||(a|=6),e>3&&5>=e&&(a|=4),9==e&&(a|=2)),s&&(a|=1),a}class Ts{constructor(e,t,s,n){const a=this;if(e.root&&n&&n.getChildByName(t))throw new p("Entry filename already exists");s||(s={}),r.assign(a,{fs:e,name:t,data:s.data,options:s.options,id:e.entries.length,parent:n,children:[],uncompressedSize:s.uncompressedSize||0,passThrough:s.passThrough}),e.entries.push(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 new p("Entry filename already exists");this.name=e}}class Us extends Ts{constructor(e,t,r,s){super(e,t,r,s);const n=this;n.Reader=r.Reader,n.Writer=r.Writer,r.getData&&(n.getData=r.getData)}clone(){return new Us(this.fs,this.name,this)}async getData(e,t={}){const r=this;if(!e||e.constructor==r.Writer&&r.data)return r.data;{const s=r.reader=new r.Reader(r.data,t),n=r.data?r.data.uncompressedSize:s.size;await y.all([Be(s),Be(e,n)]);const{readable:a}=s;return r.uncompressedSize=s.size,await a.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return this.data.encrypted}async checkPassword(e,t={}){const r=this;if(!r.isPasswordProtected())return!0;t.password=e,t.checkPasswordOnly=!0;try{return await r.data.getData(null,t),!0}catch(e){if(e.message==Xe)return!1;throw e}}getText(e,t){return this.getData(new me(e),t)}getBlob(e,t){return this.getData(new he(e),t)}getData64URI(e,t){return this.getData(new pe(e),t)}getUint8Array(e){return this.getData(new Ue,e)}getWritable(e=new E,t){return this.getData({writable:e},t)}getArrayBuffer(e){return this.data.arrayBuffer(e)}replaceBlob(e){r.assign(this,{data:e,Reader:fe,Writer:he,reader:null})}replaceText(e){r.assign(this,{data:e,Reader:we,Writer:me,reader:null})}replaceData64URI(e){r.assign(this,{data:e,Reader:ue,Writer:pe,reader:null})}replaceUint8Array(e){r.assign(this,{data:e,Reader:Te,Writer:Ue,reader:null})}replaceReadable(e){r.assign(this,{data:null,Reader:()=>({readable:e}),Writer:null,reader:null})}}class Ws extends Ts{constructor(e,t,r,s){super(e,t,r,s),this.directory=!0}clone(e){const t=this,r=new Ws(t.fs,t.name);return e&&(r.children=t.children.map(t=>{const s=t.clone(e);return s.parent=r,s})),r}addDirectory(e,t){return Hs(this,e,{options:t},!0)}addText(e,t,r={}){return Hs(this,e,{data:t,Reader:we,Writer:me,options:r,uncompressedSize:t.length})}addBlob(e,t,r={}){return Hs(this,e,{data:t,Reader:fe,Writer:he,options:r,uncompressedSize:t.size})}addData64URI(e,t,r={}){let s=t.length;for(;"="==t.charAt(s-1);)s--;const n=t.indexOf(",")+1;return Hs(this,e,{data:t,Reader:ue,Writer:pe,options:r,uncompressedSize:i.floor(.75*(s-n))})}addUint8Array(e,t,r={}){return Hs(this,e,{data:t,Reader:Te,Writer:Ue,options:r,uncompressedSize:t.length})}addHttpContent(e,t,r={}){return Hs(this,e,{data:t,Reader:class extends Ce{constructor(e){super(e,r)}},options:r})}addReadable(e,t,r={}){return Hs(this,e,{Reader:()=>({readable:t}),options:r})}addFileSystemEntry(e,t={}){return Ls(this,e,t)}addFileSystemHandle(e,t={}){return Ls(this,e,t)}addFile(e,t={}){return t.lastModDate||(t.lastModDate=new o(e.lastModified)),Hs(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}addData(e,t){return Hs(this,e,t)}importBlob(e,t){return this.importZip(new fe(e),t)}importData64URI(e,t){return this.importZip(new ue(e),t)}importUint8Array(e,t){return this.importZip(new Te(e),t)}importHttpContent(e,t){return this.importZip(new Ce(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new he(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new pe(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new Ue,e)}async exportWritable(e=new E,t={}){return await this.exportZip({writable:e},t),e}async importZip(e,t={}){await Be(e);const s=new Qr(e,t),n=[],a=await s.getEntries();for(const e of a){let s=this;try{const a=e.filename.split("/"),i=a.pop();a.forEach((t,r)=>{const i=s;s=s.getChildByName(t),s||(s=new Ws(this.fs,t,{data:r==a.length-1?e:null},i),n.push(s))}),e.directory||n.push(Hs(s,i,{data:e,Reader:Ms(r.assign({},t)),uncompressedSize:e.uncompressedSize,passThrough:t.passThrough}))}catch(t){try{t.cause={entry:e}}catch{}throw t}}return n}async exportZip(e,s){const n=this;s.bufferedWrite===j&&(s.bufferedWrite=!0),await y.all([Ns(n,s.readerOptions),Be(e)]);const a=new ms(e,s);return await(async(e,s,n,a)=>{const i=s,o=new c;await async function e(s,c){async function l(c){const l=a.relativePath?c.getRelativeName(i):c.getFullname(),d=c.options||{};let u={};if(c.data instanceof _r){const{externalFileAttributes:e,versionMadeBy:t,comment:s,lastModDate:n,creationDate:a,lastAccessDate:i,uncompressedSize:o,encrypted:l,zipCrypto:d,signature:p,compressionMethod:f,extraFieldAES:h}=c.data;if(u={externalFileAttributes:e,versionMadeBy:t,comment:s,lastModDate:n,creationDate:a,lastAccessDate:i},c.passThrough){let e,t;0===f&&(e=0),h&&(t=h.strength),u=r.assign(u,{passThrough:!0,encrypted:l,zipCrypto:d,signature:p,uncompressedSize:o,level:e,encryptionStrength:t,compressionMethod:f})}}await s.add(l,c.reader,r.assign({},a,u,d,{directory:c.directory,onprogress:async e=>{if(a.onprogress){o.set(l,e);try{await a.onprogress(t.from(o.values()).reduce((e,t)=>e+t),n)}catch{}}}})),await e(s,c)}await(async()=>{if(a.bufferedWrite)await y.allSettled(c.children.map(l));else for(const e of c.children)await l(e)})()}(e,s)})(a,n,(e=>{let t=0;return e.forEach(function e(r){t+=r.uncompressedSize,r.children&&r.children.forEach(e)}),t})([n]),s),await a.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let r=0;r<t.length;r++){const s=t[r];if(s.name==e)return s}}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 y.all(r.map(r=>r.checkPassword(e,t)))).includes(!1)}}const _s={FS:class{constructor(){Is(this)}get children(){return this.root.children}remove(e){Bs(e),this.entries[e.id]=null}move(e,t){if(e==this.root)throw new p("Root directory cannot be moved");if(!t.directory)throw new p("Target entry is not a directory");if(t.isDescendantOf(e))throw new p("Entry is a ancestor of target entry");if(e!=t){if(t.getChildByName(e.name))throw new p("Entry filename already exists");Bs(e),e.parent=t,t.children.push(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}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)}addData(e,t){return this.root.addData(e,t)}importBlob(e,t){return Is(this),this.root.importBlob(e,t)}importData64URI(e,t){return Is(this),this.root.importData64URI(e,t)}importUint8Array(e,t){return Is(this),this.root.importUint8Array(e,t)}importHttpContent(e,t){return Is(this),this.root.importHttpContent(e,t)}importReadable(e,t){return Is(this),this.root.importReadable(e,t)}importZip(e,t){return 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)}isPasswordProtected(){return this.root.isPasswordProtected()}checkPassword(e,t){return this.root.checkPassword(e,t)}},ZipDirectoryEntry:Ws,ZipFileEntry:Us};function Ms(e){return class extends le{constructor(e,t={}){super(),this.entry=e,this.options=t}async init(){const t=this;t.size=t.entry.uncompressedSize;const s=await t.entry.getData(new he,r.assign({},t.options,e));t.data=s,t.blobReader=new fe(s),super.init()}readUint8Array(e,t){return this.blobReader.readUint8Array(e,t)}}}async function Ns(e,t){e.children.length&&await y.all(e.children.map(async e=>{if(e.directory)await Ns(e,t);else{const r=e.reader=new e.Reader(e.data,t);try{await Be(r)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch{}throw t}e.uncompressedSize=r.size}}))}function Bs(e){if(e.parent){const t=e.parent.children;t.forEach((r,s)=>{r.id==e.id&&t.splice(s,1)})}}function Ls(e,t,s){return async function e(t,n,a){if(n)try{if((n.isFile||n.isDirectory)&&(n=await Os(n)),"file"==n.kind){const e=await n.getFile();a.push(t.addData(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:r.assign({},{lastModDate:new o(e.lastModified)},s),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 new p(t)}return a}(e,t,[])}async function Os(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new y((t,r)=>e.file(t,r))),e.isDirectory){t.kind="directory";const r=await(async e=>{const t=[];function r(e,s,n){e.readEntries(async a=>{if(a.length){for(const e of a)t.push(await Os(e));r(e,s,n)}else s(t)},n)}return await new y((t,s)=>r(e.createReader(),t,s)),{[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 Is(e){e.entries=[],e.root=new Ws(e)}function Hs(e,t,r,s){if(e.directory)return s?new Ws(e.fs,t,r,e):new Us(e.fs,t,r,e);throw new p("Parent entry is not a directory")}e.fs=_s});
|
|
1
|
+
((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,function(e){"use strict";const{Array:t,Object:r,String:s,Number:n,BigInt:a,Math:i,Date:o,Map:c,Set:l,Response:d,URL:u,Error:p,Uint8Array:f,Uint16Array:h,Uint32Array:w,DataView:m,Blob:g,Promise:y,TextEncoder:b,TextDecoder:z,document:S,crypto:x,btoa:F,TransformStream:D,ReadableStream:k,WritableStream:E,CompressionStream:v,DecompressionStream:A,navigator:R,Worker:C}="undefined"!=typeof globalThis?globalThis:this||self,T=4294967295,U=65535,W=67324752,_=134695760,M=_,N=33639248,B=101010256,L=101075792,O=117853008,I=22,H=21589,P=2048,Z="/",V=30,q=new o(2107,11,31),K=new o(1980,0,1),j=void 0,G="undefined",X="function";let Y=2;try{typeof R!=G&&R.hardwareConcurrency&&(Y=R.hardwareConcurrency)}catch{}const J={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:Y,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,CompressionStream:typeof v!=G&&v,DecompressionStream:typeof A!=G&&A},Q=r.assign({},J);function $(){return Q}function ee(e){return i.max(e.chunkSize,64)}const te="HTTP error ",re="HTTP Range not supported",se="Range",ne="GET",ae="bytes",ie=65536,oe="writable";class ce{constructor(){this.size=0}init(){this.initialized=!0}}class le extends ce{get readable(){const e=this,{chunkSize:t=ie}=e,r=new k({start(){this.chunkOffset=0},async pull(s){const{offset:n=0,size:a,diskNumberStart:o}=r,{chunkOffset:c}=this,l=a===j?t:i.min(t,a-c),d=await Le(e,n+c,l,o);s.enqueue(d),c+t>a||a===j&&!d.length&&l?s.close():this.chunkOffset+=t}});return r}}class de extends ce{constructor(){super();const e=this,t=new E({write(t){if(!e.initialized)throw new p("Writer not initialized");return e.writeUint8Array(t)}});r.defineProperty(e,oe,{get:()=>t})}writeUint8Array(){}}class ue extends le{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const s=e.indexOf(",")+1;r.assign(this,{dataURI:e,dataStart:s,size:i.floor(.75*(t-s))})}readUint8Array(e,t){const{dataStart:r,dataURI:s}=this,n=new f(t),a=4*i.floor(e/3),o=atob(s.substring(a+r,4*i.ceil((e+t)/3)+r)),c=e-3*i.floor(a/4);let l=0;for(let e=c;c+t>e&&e<o.length;e++)n[e-c]=o.charCodeAt(e),l++;return l<n.length?n.subarray(0,l):n}}class pe extends de{constructor(e){super(),r.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let r=0,n=t.pending;const a=t.pending.length;for(t.pending="",r=0;r<3*i.floor((a+e.length)/3)-a;r++)n+=s.fromCharCode(e[r]);for(;r<e.length;r++)t.pending+=s.fromCharCode(e[r]);n.length&&(n.length>2?t.data+=F(n):t.pending+=n)}getData(){return this.data+F(this.pending)}}class fe extends le{constructor(e){super(),r.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const r=this,s=e+t,n=e||s<r.size?r.blob.slice(e,s):r.blob;let a=await n.arrayBuffer();return a.byteLength>t&&(a=a.slice(e,s)),new f(a)}}class he extends ce{constructor(e){super();const t=new D,s=[];e&&s.push(["Content-Type",e]),r.defineProperty(this,oe,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:s}).blob()}getData(){return this.blob}}class we extends fe{constructor(e){super(new g([e],{type:"text/plain"}))}}class me extends he{constructor(e){super(e),r.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,s=await super.getData();if(s.text&&t)return s.text();{const t=new FileReader;return new y((n,a)=>{r.assign(t,{onload:({target:e})=>n(e.result),onerror:()=>a(t.error)}),t.readAsText(s,e)})}}}class ge extends le{constructor(e,t){super(),be(this,e,t)}async init(){await ze(this,Ae,De),super.init()}readUint8Array(e,t){return Se(this,e,t,Ae,De)}}class ye extends le{constructor(e,t){super(),be(this,e,t)}async init(){await ze(this,Re,ke),super.init()}readUint8Array(e,t){return Se(this,e,t,Re,ke)}}function be(e,t,s){const{preventHeadRequest:n,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:o}=s;delete(s=r.assign({},s)).preventHeadRequest,delete s.useRangeHeader,delete s.forceRangeRequests,delete s.combineSizeEocd,delete s.useXHR,r.assign(e,{url:t,options:s,preventHeadRequest:n,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:o})}async function ze(e,t,r){const{url:s,preventHeadRequest:a,useRangeHeader:i,forceRangeRequests:o,combineSizeEocd:c}=e;if((e=>{const{baseURI:t}=$(),{protocol:r}=new u(e,t);return"http:"==r||"https:"==r})(s)&&(i||o)&&(void 0===a||a)){const s=await t(ne,e,xe(e,c?-22:void 0)),a=s.headers.get("Accept-Ranges");if(!(o||a&&a.toLowerCase()==ae))throw new p(re);{let a;c&&(e.eocdCache=new f(await s.arrayBuffer()));const i=s.headers.get("Content-Range");if(i){const e=i.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=n(t))}}a===j?await ve(e,t,r):e.size=a}}else await ve(e,t,r)}async function Se(e,t,r,s,n){const{useRangeHeader:a,forceRangeRequests:i,eocdCache:o,size:c,options:l}=e;if(a||i){if(o&&t==c-I&&r==I)return o;if(c>t){t+r>c&&(r=c-t);const n=await s(ne,e,xe(e,t,r));if(206!=n.status)throw new p(re);return new f(await n.arrayBuffer())}return new f}{const{data:s}=e;return s||await n(e,l),new f(e.data.subarray(t,t+r))}}function xe(e,t=0,s=1){return r.assign({},Fe(e),{[se]:ae+"="+(0>t?t:t+"-"+(t+s-1))})}function Fe({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?r.fromEntries(t):t}async function De(e){await Ee(e,Ae)}async function ke(e){await Ee(e,Re)}async function Ee(e,t){const r=await t(ne,e,Fe(e));e.data=new f(await r.arrayBuffer()),e.size||(e.size=e.data.length)}async function ve(e,t,r){if(e.preventHeadRequest)await r(e,e.options);else{const s=(await t("HEAD",e,Fe(e))).headers.get("Content-Length");s?e.size=n(s):await r(e,e.options)}}async function Ae(e,{options:t,url:s},n){const a=await fetch(s,r.assign({},t,{method:e,headers:n}));if(400>a.status)return a;throw 416==a.status?new p(re):new p(te+(a.statusText||a.status))}function Re(e,{url:t},s){return new y((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 c(e)})}else a(416==i.status?new p(re):new p(te+(i.statusText||i.status)))},!1),i.addEventListener("error",e=>a(e.detail?e.detail.error:new p("Network error")),!1),i.open(e,t),s)for(const e of r.entries(s))i.setRequestHeader(e[0],e[1]);i.responseType="arraybuffer",i.send()})}class Ce extends le{constructor(e,t={}){super(),r.assign(this,{url:e,reader:t.useXHR?new ye(e,t):new ge(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Te extends le{constructor(e){super(),e=new f(e.buffer,e.byteOffset,e.byteLength),r.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class Ue extends de{init(e=0){r.assign(this,{offset:0,array:new f(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const r=t.array;t.array=new f(r.length+e.length),t.array.set(r)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}}class We extends le{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await y.all(t.map(async(r,s)=>{await r.init(),s!=t.length-1&&(e.lastDiskOffset+=r.size),e.size+=r.size})),super.init()}async readUint8Array(e,t,r=0){const s=this,{readers:n}=this;let a,o=r;-1==o&&(o=n.length-1);let c=e;for(;n[o]&&c>=n[o].size;)c-=n[o].size,o++;const l=n[o];if(l){const n=l.size;if(c+t>n){const i=n-c;a=new f(t);const o=await Le(l,c,i);a.set(o,0);const d=await s.readUint8Array(e+i,t-i,r);a.set(d,i),o.length+d.length<t&&(a=a.subarray(0,o.length+d.length))}else a=await Le(l,c,t)}else a=new f;return s.lastDiskNumber=i.max(o,s.lastDiskNumber),a}}class _e extends ce{constructor(e,t=4294967295){super();const s=this;let n,a,i;r.assign(s,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new E({async write(t){const{availableSize:r}=s;if(i)t.length<r?await c(t):(await c(t.subarray(0,r)),await l(),s.diskOffset+=n.size,s.diskNumber++,i=null,await this.write(t.subarray(r)));else{const{value:r,done:o}=await e.next();if(o&&!r)throw new p("Writer iterator completed too soon");n=r,n.size=0,n.maxSize&&(s.maxSize=n.maxSize),s.availableSize=s.maxSize,await Be(n),a=r.writable,i=a.getWriter(),await this.write(t)}},async close(){await i.ready,await l()}});async function c(e){const t=e.length;t&&(await i.ready,await i.write(e),n.size+=t,s.size+=t,s.availableSize-=t)}async function l(){await i.close()}r.defineProperty(s,oe,{get:()=>o})}}class Me{constructor(e){return t.isArray(e)&&(e=new We(e)),e instanceof k&&(e={readable:e}),e}}class Ne{constructor(e){return e.writable===j&&typeof e.next==X&&(e=new _e(e)),e instanceof E&&(e={writable:e}),e.size===j&&(e.size=0),e instanceof _e||r.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}}async function Be(e,t){if(!e.init||e.initialized)return y.resolve();await e.init(t)}function Le(e,t,r,s){return e.readUint8Array(t,r,s)}const Oe=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;Oe[e]=t}class Ie{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let r=0,s=0|e.length;s>r;r++)t=t>>>8^Oe[255&(t^e[r])];this.crc=t}get(){return~this.crc}}class He extends D{constructor(){let e;const t=new Ie;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new f(4);new m(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}function Pe(e){if(typeof b==G){const t=new f((e=unescape(encodeURIComponent(e))).length);for(let r=0;r<t.length;r++)t[r]=e.charCodeAt(r);return t}return(new b).encode(e)}const Ze={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const r=e[e.length-1],s=Ze.getPartial(r);return 32===s?e.concat(t):Ze._shiftRight(t,s,0|r,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const r=e[t-1];return 32*(t-1)+Ze.getPartial(r)},clamp(e,t){if(32*e.length<t)return e;const r=(e=e.slice(0,i.ceil(t/32))).length;return t&=31,r>0&&t&&(e[r-1]=Ze.partial(t,e[r-1]&2147483648>>t-1,1)),e},partial:(e,t,r)=>32===e?t:(r?0|t:t<<32-e)+1099511627776*e,getPartial:e=>i.round(e/1099511627776)||32,_shiftRight(e,t,r,s){for(void 0===s&&(s=[]);t>=32;t-=32)s.push(r),r=0;if(0===t)return s.concat(e);for(let n=0;n<e.length;n++)s.push(r|e[n]>>>t),r=e[n]<<32-t;const n=e.length?e[e.length-1]:0,a=Ze.getPartial(n);return s.push(Ze.partial(t+a&31,t+a>32?r:s.pop(),1)),s}},Ve={bytes:{fromBits(e){const t=Ze.bitLength(e)/8,r=new f(t);let s;for(let n=0;t>n;n++)3&n||(s=e[n/4]),r[n]=s>>>24,s<<=8;return r},toBits(e){const t=[];let r,s=0;for(r=0;r<e.length;r++)s=s<<8|e[r],3&~r||(t.push(s),s=0);return 3&r&&t.push(Ze.partial(8*(3&r),s)),t}}},qe=class{constructor(e){const t=this;t.blockSize=512,t._init=[1732584193,4023233417,2562383102,271733878,3285377520],t._key=[1518500249,1859775393,2400959708,3395469782],e?(t._h=e._h.slice(0),t._buffer=e._buffer.slice(0),t._length=e._length):t.reset()}reset(){const e=this;return e._h=e._init.slice(0),e._buffer=[],e._length=0,e}update(e){const t=this;"string"==typeof e&&(e=Ve.utf8String.toBits(e));const r=t._buffer=Ze.concat(t._buffer,e),s=t._length,n=t._length=s+Ze.bitLength(e);if(n>9007199254740991)throw new p("Cannot hash more than 2^53 - 1 bits");const a=new w(r);let i=0;for(let e=t.blockSize+s-(t.blockSize+s&t.blockSize-1);n>=e;e+=t.blockSize)t._block(a.subarray(16*i,16*(i+1))),i+=1;return r.splice(0,16*i),t}finalize(){const e=this;let t=e._buffer;const r=e._h;t=Ze.concat(t,[Ze.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(i.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),r}_f(e,t,r,s){return e>19?e>39?e>59?e>79?void 0:t^r^s:t&r|t&s|r&s:t^r^s:t&r|~t&s}_S(e,t){return t<<e|t>>>32-e}_block(e){const r=this,s=r._h,n=t(80);for(let t=0;16>t;t++)n[t]=e[t];let a=s[0],o=s[1],c=s[2],l=s[3],d=s[4];for(let e=0;79>=e;e++){16>e||(n[e]=r._S(1,n[e-3]^n[e-8]^n[e-14]^n[e-16]));const t=r._S(5,a)+r._f(e,o,c,l)+d+n[e]+r._key[i.floor(e/20)]|0;d=l,l=c,c=r._S(30,o),o=a,a=t}s[0]=s[0]+a|0,s[1]=s[1]+o|0,s[2]=s[2]+c|0,s[3]=s[3]+l|0,s[4]=s[4]+d|0}},Ke={getRandomValues(e){const t=new w(e.buffer),r=e=>{let t=987654321;const r=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&r,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&r)&r)/4294967296+.5)*(i.random()>.5?1:-1))};for(let s,n=0;n<e.length;n+=4){const e=r(4294967296*(s||i.random()));s=987654071*e(),t[n/4]=4294967296*e()|0}return e}},je={importKey:e=>new je.hmacSha1(Ve.bytes.toBits(e)),pbkdf2(e,t,r,s){if(r=r||1e4,0>s||0>r)throw new p("invalid params to pbkdf2");const n=1+(s>>5)<<2;let a,i,o,c,l;const d=new ArrayBuffer(n),u=new m(d);let f=0;const h=Ze;for(t=Ve.bytes.toBits(t),l=1;(n||1)>f;l++){for(a=i=e.encrypt(h.concat(t,[l])),o=1;r>o;o++)for(i=e.encrypt(i),c=0;c<i.length;c++)a[c]^=i[c];for(o=0;(n||1)>f&&o<a.length;o++)u.setInt32(f,a[o]),f+=4}return d.slice(0,s/8)},hmacSha1:class{constructor(e){const t=this,r=t._hash=qe,s=[[],[]];t._baseHash=[new r,new r];const n=t._baseHash[0].blockSize/32;e.length>n&&(e=(new r).update(e).finalize());for(let t=0;n>t;t++)s[0][t]=909522486^e[t],s[1][t]=1549556828^e[t];t._baseHash[0].update(s[0]),t._baseHash[1].update(s[1]),t._resultHash=new r(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),r=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),r}encrypt(e){if(this._updated)throw new p("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Ge=typeof x!=G&&typeof x.getRandomValues==X,Xe="Invalid password",Ye="Invalid signature",Je="zipjs-abort-check-password";function Qe(e){return Ge?x.getRandomValues(e):Ke.getRandomValues(e)}const $e=16,et={name:"PBKDF2"},tt=r.assign({hash:{name:"HMAC"}},et),rt=r.assign({iterations:1e3,hash:{name:"SHA-1"}},et),st=["deriveBits"],nt=[8,12,16],at=[16,24,32],it=10,ot=[0,0,0,0],ct=typeof x!=G,lt=ct&&x.subtle,dt=ct&&typeof lt!=G,ut=Ve.bytes,pt=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const r=t._tables[0][4],s=t._tables[1],n=e.length;let a,i,o,c=1;if(4!==n&&6!==n&&8!==n)throw new p("invalid aes key size");for(t._key=[i=e.slice(0),o=[]],a=n;4*n+28>a;a++){let e=i[a-1];(a%n===0||8===n&&a%n===4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],a%n===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),i[a]=i[a-n]^e}for(let e=0;a;e++,a--){const t=i[3&e?a:a-4];o[e]=4>=a||4>e?t:s[0][r[t>>>24]]^s[1][r[t>>16&255]]^s[2][r[t>>8&255]]^s[3][r[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],r=e[4],s=t[4],n=[],a=[];let i,o,c,l;for(let e=0;256>e;e++)a[(n[e]=e<<1^283*(e>>7))^e]=e;for(let d=i=0;!r[d];d^=o||1,i=a[i]||1){let a=i^i<<1^i<<2^i<<3^i<<4;a=a>>8^255&a^99,r[d]=a,s[a]=d,l=n[c=n[o=n[d]]];let u=16843009*l^65537*c^257*o^16843008*d,p=257*n[a]^16843008*a;for(let r=0;4>r;r++)e[r][d]=p=p<<24^p>>>8,t[r][a]=u=u<<24^u>>>8}for(let r=0;5>r;r++)e[r]=e[r].slice(0),t[r]=t[r].slice(0)}_crypt(e,t){if(4!==e.length)throw new p("invalid aes block size");const r=this._key[t],s=r.length/4-2,n=[0,0,0,0],a=this._tables[t],i=a[0],o=a[1],c=a[2],l=a[3],d=a[4];let u,f,h,w=e[0]^r[0],m=e[t?3:1]^r[1],g=e[2]^r[2],y=e[t?1:3]^r[3],b=4;for(let e=0;s>e;e++)u=i[w>>>24]^o[m>>16&255]^c[g>>8&255]^l[255&y]^r[b],f=i[m>>>24]^o[g>>16&255]^c[y>>8&255]^l[255&w]^r[b+1],h=i[g>>>24]^o[y>>16&255]^c[w>>8&255]^l[255&m]^r[b+2],y=i[y>>>24]^o[w>>16&255]^c[m>>8&255]^l[255&g]^r[b+3],b+=4,w=u,m=f,g=h;for(let e=0;4>e;e++)n[t?3&-e:e]=d[w>>>24]<<24^d[m>>16&255]<<16^d[g>>8&255]<<8^d[255&y]^r[b++],u=w,w=m,m=g,g=y,y=u;return n}},ft=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,r=e>>8&255,s=255&e;255===t?(t=0,255===r?(r=0,255===s?s=0:++s):++r):++t,e=0,e+=t<<16,e+=r<<8,e+=s}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,r){let s;if(!(s=t.length))return[];const n=Ze.bitLength(t);for(let n=0;s>n;n+=4){this.incCounter(r);const s=e.encrypt(r);t[n]^=s[0],t[n+1]^=s[1],t[n+2]^=s[2],t[n+3]^=s[3]}return Ze.clamp(t,n)}},ht=je.hmacSha1;let wt=ct&&dt&&typeof lt.importKey==X,mt=ct&&dt&&typeof lt.deriveBits==X;class gt extends D{constructor({password:e,rawPassword:t,signed:s,encryptionStrength:n,checkPasswordOnly:a}){super({start(){r.assign(this,{ready:new y(e=>this.resolveReady=e),password:St(e,t),signed:s,strength:n-1,pending:new f})},async transform(e,t){const r=this,{password:s,strength:n,resolveReady:i,ready:o}=r;s?(await(async(e,t,r,s)=>{const n=await zt(e,t,r,Ft(s,0,nt[t])),a=Ft(s,nt[t]);if(n[0]!=a[0]||n[1]!=a[1])throw new p(Xe)})(r,n,s,Ft(e,0,nt[n]+2)),e=Ft(e,nt[n]+2),a?t.error(new p(Je)):i()):await o;const c=new f(e.length-it-(e.length-it)%$e);t.enqueue(bt(r,e,c,0,it,!0))},async flush(e){const{signed:t,ctr:r,hmac:s,pending:n,ready:a}=this;if(s&&r){await a;const i=Ft(n,0,n.length-it),o=Ft(n,n.length-it);let c=new f;if(i.length){const e=kt(ut,i);s.update(e);const t=r.update(e);c=Dt(ut,t)}if(t){const e=Ft(Dt(ut,s.digest()),0,it);for(let t=0;it>t;t++)if(e[t]!=o[t])throw new p(Ye)}e.enqueue(c)}}})}}class yt extends D{constructor({password:e,rawPassword:t,encryptionStrength:s}){let n;super({start(){r.assign(this,{ready:new y(e=>this.resolveReady=e),password:St(e,t),strength:s-1,pending:new f})},async transform(e,t){const r=this,{password:s,strength:n,resolveReady:a,ready:i}=r;let o=new f;s?(o=await(async(e,t,r)=>{const s=Qe(new f(nt[t]));return xt(s,await zt(e,t,r,s))})(r,n,s),a()):await i;const c=new f(o.length+e.length-e.length%$e);c.set(o,0),t.enqueue(bt(r,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:r,pending:s,ready:a}=this;if(r&&t){await a;let i=new f;if(s.length){const e=t.update(kt(ut,s));r.update(e),i=Dt(ut,e)}n.signature=Dt(ut,r.digest()).slice(0,it),e.enqueue(xt(i,n.signature))}}}),n=this}}function bt(e,t,r,s,n,a){const{ctr:i,hmac:o,pending:c}=e,l=t.length-n;let d;for(c.length&&(t=xt(c,t),r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new f(t)).set(r,0)}return e})(r,l-l%$e)),d=0;l-$e>=d;d+=$e){const e=kt(ut,Ft(t,d,d+$e));a&&o.update(e);const n=i.update(e);a||o.update(n),r.set(Dt(ut,n),d+s)}return e.pending=Ft(t,d),r}async function zt(e,s,n,a){e.password=null;const i=await(async(e,t,r,s,n)=>{if(!wt)return je.importKey(t);try{return await lt.importKey("raw",t,r,!1,n)}catch{return wt=!1,je.importKey(t)}})(0,n,tt,0,st),o=await(async(e,t,r)=>{if(!mt)return je.pbkdf2(t,e.salt,rt.iterations,r);try{return await lt.deriveBits(e,t,r)}catch{return mt=!1,je.pbkdf2(t,e.salt,rt.iterations,r)}})(r.assign({salt:a},rt),i,8*(2*at[s]+2)),c=new f(o),l=kt(ut,Ft(c,0,at[s])),d=kt(ut,Ft(c,at[s],2*at[s])),u=Ft(c,2*at[s]);return r.assign(e,{keys:{key:l,authentication:d,passwordVerification:u},ctr:new ft(new pt(l),t.from(ot)),hmac:new ht(d)}),u}function St(e,t){return t===j?Pe(e):t}function xt(e,t){let r=e;return e.length+t.length&&(r=new f(e.length+t.length),r.set(e,0),r.set(t,e.length)),r}function Ft(e,t,r){return e.subarray(t,r)}function Dt(e,t){return e.fromBits(t)}function kt(e,t){return e.toBits(t)}class Et extends D{constructor({password:e,passwordVerification:t,checkPasswordOnly:s}){super({start(){r.assign(this,{password:e,passwordVerification:t}),Ct(this,e)},transform(e,t){const r=this;if(r.password){const t=At(r,e.subarray(0,12));if(r.password=null,t.at(-1)!=r.passwordVerification)throw new p(Xe);e=e.subarray(12)}s?t.error(new p(Je)):t.enqueue(At(r,e))}})}}class vt extends D{constructor({password:e,passwordVerification:t}){super({start(){r.assign(this,{password:e,passwordVerification:t}),Ct(this,e)},transform(e,t){const r=this;let s,n;if(r.password){r.password=null;const t=Qe(new f(12));t[11]=r.passwordVerification,s=new f(e.length+t.length),s.set(Rt(r,t),0),n=12}else s=new f(e.length),n=0;s.set(Rt(r,e),n),t.enqueue(s)}})}}function At(e,t){const r=new f(t.length);for(let s=0;s<t.length;s++)r[s]=Ut(e)^t[s],Tt(e,r[s]);return r}function Rt(e,t){const r=new f(t.length);for(let s=0;s<t.length;s++)r[s]=Ut(e)^t[s],Tt(e,t[s]);return r}function Ct(e,t){const s=[305419896,591751049,878082192];r.assign(e,{keys:s,crcKey0:new Ie(s[0]),crcKey2:new Ie(s[2])});for(let r=0;r<t.length;r++)Tt(e,t.charCodeAt(r))}function Tt(e,t){let[r,s,n]=e.keys;e.crcKey0.append([t]),r=~e.crcKey0.get(),s=_t(i.imul(_t(s+Wt(r)),134775813)+1),e.crcKey2.append([s>>>24]),n=~e.crcKey2.get(),e.keys=[r,s,n]}function Ut(e){const t=2|e.keys[2];return Wt(i.imul(t,1^t)>>>8)}function Wt(e){return 255&e}function _t(e){return 4294967295&e}const Mt="Invalid uncompressed size";class Nt extends D{constructor(e,{chunkSize:t,CompressionStreamZlib:r,CompressionStream:s}){super({});const{compressed:n,encrypted:a,useCompressionStream:i,zipCrypto:o,signed:c,level:l}=e,d=this;let u,p,f=super.readable;a&&!o||!c||(u=new He,f=It(f,u)),n&&(f=Ot(f,i,{level:l,chunkSize:t},s,r,s)),a&&(o?f=It(f,new vt(e)):(p=new yt(e),f=It(f,p))),Lt(d,f,()=>{let e;a&&!o&&(e=p.signature),a&&!o||!c||(e=new m(u.value.buffer).getUint32(0)),d.signature=e})}}class Bt extends D{constructor(e,{chunkSize:t,DecompressionStreamZlib:r,DecompressionStream:s}){super({});const{zipCrypto:n,encrypted:a,signed:i,signature:o,compressed:c,useCompressionStream:l,deflate64:d}=e;let u,f,h=super.readable;a&&(n?h=It(h,new Et(e)):(f=new gt(e),h=It(h,f))),c&&(h=Ot(h,l,{chunkSize:t,deflate64:d},s,r,s)),a&&!n||!i||(u=new He,h=It(h,u)),Lt(this,h,()=>{if((!a||n)&&i){const e=new m(u.value.buffer);if(o!=e.getUint32(0,!1))throw new p(Ye)}})}}function Lt(e,t,s){t=It(t,new D({flush:s})),r.defineProperty(e,"readable",{get:()=>t})}function Ot(e,t,r,s,n,a){const i=t&&s?s:n||a,o=r.deflate64?"deflate64-raw":"deflate-raw";try{e=It(e,new i(o,r))}catch(s){if(!t)throw s;if(n)e=It(e,new n(o,r));else{if(!a)throw s;e=It(e,new a(o,r))}}return e}function It(e,t){return e.pipeThrough(t)}const Ht="data",Pt="close",Zt="deflate",Vt="inflate";class qt extends D{constructor(e,t){super({});const s=this,{codecType:n}=e;let a;n.startsWith(Zt)?a=Nt:n.startsWith(Vt)&&(a=Bt),s.outputSize=0;let i=0;const o=new a(e,t),c=super.readable,l=new D({transform(e,t){e&&e.length&&(i+=e.length,t.enqueue(e))},flush(){r.assign(s,{inputSize:i})}}),d=new D({transform(t,r){if(t&&t.length&&(r.enqueue(t),s.outputSize+=t.length,e.outputSize!==j&&s.outputSize>e.outputSize))throw new p(Mt)},flush(){const{signature:e}=o;r.assign(s,{signature:e,inputSize:i})}});r.defineProperty(s,"readable",{get:()=>c.pipeThrough(l).pipeThrough(o).pipeThrough(d)})}}class Kt extends D{constructor(e){let t;super({transform:function r(s,n){if(t){const e=new f(t.length+s.length);e.set(t),e.set(s,t.length),s=e,t=null}s.length>e?(n.enqueue(s.slice(0,e)),r(s.slice(e),n)):t=s},flush(e){t&&t.length&&e.enqueue(t)}})}}let jt=typeof C!=G;class Gt{constructor(e,{readable:t,writable:s},{options:n,config:a,streamOptions:i,useWebWorkers:o,transferStreams:c,workerURI:l},d){const{signal:u}=i;return r.assign(e,{busy:!0,readable:t.pipeThrough(new Kt(a.chunkSize)).pipeThrough(new Xt(i),{signal:u}),writable:s,options:r.assign({},n),workerURI:l,transferStreams:c,terminate:()=>new y(t=>{const{worker:r,busy:s}=e;r?(s?e.resolveTerminated=t:(r.terminate(),t()),e.interface=null):t()}),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,d(e)}}),(o&&jt?Qt:Jt)(e,a)}}class Xt extends D{constructor({onstart:e,onprogress:t,size:r,onend:s}){let n=0;super({async start(){e&&await Yt(e,r)},async transform(e,s){n+=e.length,t&&await Yt(t,n,r),s.enqueue(e)},async flush(){s&&await Yt(s,n)}})}}async function Yt(e,...t){try{await e(...t)}catch{}}function Jt(e,t){return{run:()=>(async({options:e,readable:t,writable:r,onTaskFinished:s},n)=>{let a;try{if(!e.useCompressionStream)try{await void 0}catch{e.useCompressionStream=!0}a=new qt(e,n),await t.pipeThrough(a).pipeTo(r,{preventClose:!0,preventAbort:!0});const{signature:s,inputSize:i,outputSize:o}=a;return{signature:s,inputSize:i,outputSize:o}}catch(e){throw a&&(e.outputSize=a.outputSize),e}finally{s()}})(e,t)}}function Qt(e,t){const{baseURI:s,chunkSize:n}=t;let{wasmURI:a}=t;if(!e.interface){let i;typeof a==X&&(a=a());try{i=((e,t,s)=>{const n={type:"module"};let a,i;if(typeof e==X&&(e=e()),e.startsWith("data:")||e.startsWith("blob:"))try{i=new C(e)}catch{i=new C(e,n)}else{try{a=new u(e,t)}catch{a=e}i=new C(a,n)}return i.addEventListener("message",e=>(async({data:e},t)=>{const{type:s,value:n,messageId:a,result:i,error:o}=e,{reader:c,writer:l,resolveResult:d,rejectResult:u,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:s,name:n,outputSize:a}=o,i=new p(e);r.assign(i,{stack:t,code:s,name:n,outputSize:a}),w(i)}else{if("pull"==s){const{value:e,done:r}=await c.read();er({type:Ht,value:e,done:r,messageId:a},t)}s==Ht&&(await l.ready,await l.write(new f(n)),er({type:"ack",messageId:a},t)),s==Pt&&w(null,i)}}catch(o){er({type:Pt,messageId:a},t),w(o)}function w(e,t){e?u(e):d(t),l&&l.releaseLock(),h()}})(e,s)),i})(e.workerURI,s,e)}catch{return jt=!1,Jt(e,t)}r.assign(e,{worker:i,interface:{run:()=>(async(e,t)=>{let s,n;const a=new y((e,t)=>{s=e,n=t});r.assign(e,{reader:null,writer:null,resolveResult:s,rejectResult:n,result:a});const{readable:i,options:o}=e,{writable:c,closed:l}=(e=>{let t;const r=new y(e=>t=e);return{writable:new E({async write(t){const r=e.getWriter();await r.ready,await r.write(t),r.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:r}})(e.writable),d=er({type:"start",options:o,config:t,readable:i,writable:c},e);d||r.assign(e,{reader:i.getReader(),writer:c.getWriter()});const u=await a;return d||await c.getWriter().close(),await l,u})(e,{chunkSize:n,wasmURI:a,baseURI:s})}})}return e.interface}let $t=!0;function er(e,{worker:t,writer:r,onTaskFinished:s,transferStreams:n}){try{const{value:r,readable:s,writable:a}=e,i=[];if(r&&(r.byteLength<r.buffer.byteLength?e.value=r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength):e.value=r.buffer,i.push(e.value)),n&&$t?(s&&i.push(s),a&&i.push(a)):e.readable=e.writable=null,i.length)try{return t.postMessage(e,i),!0}catch{$t=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw r&&r.releaseLock(),s(),e}}let tr=[];const rr=[];let sr=0;async function nr(e,t){const{options:r,config:s}=t,{transferStreams:a,useWebWorkers:i,useCompressionStream:o,compressed:c,signed:l,encrypted:d}=r,{workerURI:u,maxWorkers:p}=s;t.transferStreams=a||a===j;const f=!(c||l||d||t.transferStreams);return t.useWebWorkers=!f&&(i||i===j&&s.useWebWorkers),t.workerURI=t.useWebWorkers&&u?u:j,r.useCompressionStream=o||o===j&&s.useCompressionStream,(await(async()=>{const r=tr.find(e=>!e.busy);if(r)return ar(r),new Gt(r,e,t,h);if(tr.length<p){const r={indexWorker:sr};return sr++,tr.push(r),new Gt(r,e,t,h)}return new y(r=>rr.push({resolve:r,stream:e,workerOptions:t}))})()).run();function h(e){if(rr.length){const[{resolve:t,stream:r,workerOptions:s}]=rr.splice(0,1);t(new Gt(e,r,s,h))}else e.worker?(ar(e),((e,t)=>{const{config:r}=t,{terminateWorkerTimeout:s}=r;n.isFinite(s)&&s>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout(async()=>{tr=tr.filter(t=>t!=e);try{await e.terminate()}catch{}},s))})(e,t)):tr=tr.filter(t=>t!=e)}}function ar(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const ir="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function or(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let r=0;r<e.length;r++)t+=ir[e[r]];return t}})(e):new z(t).decode(e)}const cr="filename",lr="rawFilename",dr="comment",ur="rawComment",pr="uncompressedSize",fr="compressedSize",hr="offset",wr="diskNumberStart",mr="lastModDate",gr="rawLastModDate",yr="lastAccessDate",br="creationDate",zr="internalFileAttributes",Sr="externalFileAttributes",xr="msDosCompatible",Fr="zip64",Dr="encrypted",kr="version",Er="versionMadeBy",vr="zipCrypto",Ar="directory",Rr="executable",Cr="compressionMethod",Tr="signature",Ur="extraField",Wr=[cr,lr,fr,pr,mr,gr,dr,ur,yr,br,hr,wr,wr,zr,Sr,xr,Fr,Dr,kr,Er,vr,Ar,Rr,Cr,Tr,Ur,"bitFlag","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class _r{constructor(e){Wr.forEach(t=>this[t]=e[t])}}const Mr="password",Nr="rawPassword",Br="passThrough",Lr="signal",Or="useWebWorkers",Ir="useCompressionStream",Hr="preventClose",Pr="supportZip64SplitFile",Zr="offset",Vr="usdz",qr="File format is not recognized",Kr="Compression method not supported",jr="Split zip file",Gr="utf-8",Xr="cp437",Yr=[[pr,T],[fr,T],[hr,T],[wr,U]],Jr={[U]:{getValue:cs,bytes:4},[T]:{getValue:ls,bytes:8}};class Qr{constructor(e,t={}){r.assign(this,{reader:new Me(e),options:t,config:$(),readRanges:[]})}async*getEntriesGenerator(e={}){const t=this;let{reader:s}=t;const{config:n}=t;if(await Be(s),s.size!==j&&s.readUint8Array||(s=new fe(await new d(s.readable).blob()),await Be(s)),s.size<I)throw new p(qr);s.chunkSize=ee(n);const a=await(async(e,t,r)=>{const s=new f(4);var n;return n=t,ds(s).setUint32(0,n,!0),await a(22)||await a(i.min(1048582,r));async function a(t){const n=r-t,a=await Le(e,n,t);for(let e=a.length-22;e>=0;e--)if(a[e]==s[0]&&a[e+1]==s[1]&&a[e+2]==s[2]&&a[e+3]==s[3])return{offset:n+e,buffer:a.slice(e,e+22).buffer}}})(s,B,s.size);if(!a)throw cs(ds(await Le(s,0,4)))==_?new p(jr):new p("End of central directory not found");const o=ds(a);let c=cs(o,12),l=cs(o,16);const u=a.offset,h=os(o,20),w=u+I+h;let m=os(o,4);const g=s.lastDiskNumber||0;let b=os(o,6),z=os(o,8),S=0,x=0;if(l==T||c==T||z==U||b==U){const e=ds(await Le(s,a.offset-20,20));if(cs(e,0)==O){l=ls(e,8);let t=await Le(s,l,56,-1),r=ds(t);const n=a.offset-20-56;if(cs(r,0)!=L&&l!=n){const e=l;l=n,l>e&&(S=l-e),t=await Le(s,l,56,-1),r=ds(t)}if(cs(r,0)!=L)throw new p("End of Zip64 central directory locator not found");m==U&&(m=cs(r,16)),b==U&&(b=cs(r,20)),z==U&&(z=ls(r,32)),c==T&&(c=ls(r,40)),l-=c}}if(l<s.size||(S=s.size-l-c-I,l=s.size-c-I),g!=m)throw new p(jr);if(0>l)throw new p(qr);let F=0,k=await Le(s,l,c,b),E=ds(k);if(c){const e=a.offset-c;if(cs(E,F)!=N&&l!=e){const t=l;l=e,l>t&&(S+=l-t),k=await Le(s,l,c,b),E=ds(k)}}const v=a.offset-l-(s.lastDiskOffset||0);if(c==v||0>v||(c=v,k=await Le(s,l,c,b),E=ds(k)),0>l||l>=s.size)throw new p(qr);const A=ss(t,e,"filenameEncoding"),R=ss(t,e,"commentEncoding");for(let a=0;z>a;a++){const o=new $r(s,n,t.options);if(cs(E,F)!=N)throw new p("Central directory header not found");es(o,E,F+6);const c=!!o.bitFlag.languageEncodingFlag,l=F+46,u=l+o.filenameLength,f=u+o.extraFieldLength,h=os(E,F+4),w=!(h>>8),m=h>>8==3,g=k.subarray(l,u),b=os(E,F+32),v=f+b,C=k.subarray(f,v),T=c,U=c,W=cs(E,F+38),_=w&&!(16&~is(E,F+38))||m&&16384==(W>>16&61440)||g.length&&47==g.at(-1),M=m&&!!(W>>16&73),B=cs(E,F+42)+S;r.assign(o,{versionMadeBy:h,msDosCompatible:w,compressedSize:0,uncompressedSize:0,commentLength:b,directory:_,offset:B,diskNumberStart:os(E,F+34),internalFileAttributes:os(E,F+36),externalFileAttributes:W,rawFilename:g,filenameUTF8:T,commentUTF8:U,rawExtraField:k.subarray(u,f),executable:M}),o.internalFileAttribute=o.internalFileAttributes,o.externalFileAttribute=o.externalFileAttributes;const L=ss(t,e,"decodeText")||or,O=T?Gr:A||Xr,I=U?Gr:R||Xr;let H=L(g,O);H===j&&(H=or(g,O));let P=L(C,I);P===j&&(P=or(C,I)),r.assign(o,{rawComment:C,filename:H,comment:P,directory:_||H.endsWith(Z)}),x=i.max(B,x),ts(o,o,E,F+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const V=new _r(o);V.getData=(e,r)=>o.getData(e,V,t.readRanges,r),V.arrayBuffer=async e=>{const r=new D,[s]=await y.all([new d(r.readable).arrayBuffer(),o.getData(r,V,t.readRanges,e)]);return s},F=v;const{onprogress:q}=e;if(q)try{await q(a+1,z,new _r(o))}catch{}yield V}const C=ss(t,e,"extractPrependedData"),W=ss(t,e,"extractAppendedData");return C&&(t.prependedData=x>0?await Le(s,0,x):new f),t.comment=h?await Le(s,u+I,h):new f,W&&(t.appendedData=w<s.size?await Le(s,w,s.size-w):new f),!0}async getEntries(e={}){const t=[];for await(const r of this.getEntriesGenerator(e))t.push(r);return t}async close(){}}let $r=class{constructor(e,t,s){r.assign(this,{reader:e,config:t,options:s})}async getData(e,t,s,n={}){const a=this,{reader:i,offset:o,diskNumberStart:c,extraFieldAES:l,extraFieldZip64:d,compressionMethod:u,config:h,bitFlag:w,signature:m,rawLastModDate:g,uncompressedSize:y,compressedSize:b}=a,{dataDescriptor:z}=w,S=t.localDirectory={},x=ds(await Le(i,o,V,c));let F=ss(a,n,Mr),D=ss(a,n,Nr);const k=ss(a,n,Br);if(F=F&&F.length&&F,D=D&&D.length&&D,l&&99!=l.originalCompressionMethod)throw new p(Kr);if(0!=u&&8!=u&&9!=u&&!k)throw new p(Kr);if(cs(x,0)!=W)throw new p("Local file header not found");es(S,x,4);const{extraFieldLength:v,filenameLength:A,lastAccessDate:R,creationDate:C}=S;S.rawExtraField=v?await Le(i,o+V+A,v,c):new f,ts(a,S,x,4,!0),r.assign(t,{lastAccessDate:R,creationDate:C});const T=a.encrypted&&S.encrypted&&!k,U=T&&!l;if(k||(t.zipCrypto=U),T){if(!U&&l.strength===j)throw new p("Encryption method not supported");if(!F&&!D)throw new p("File contains encrypted entry")}const _=o+V+A+v,N=b,B=i.readable;r.assign(B,{diskNumberStart:c,offset:_,size:N});const L=ss(a,n,Lr),O=ss(a,n,"checkPasswordOnly");let I=ss(a,n,"checkOverlappingEntry");const H=ss(a,n,"checkOverlappingEntryOnly");H&&(I=!0);const{onstart:P,onprogress:Z,onend:q}=n,K=9==u;let G=ss(a,n,Ir);K&&(G=!1);const X={options:{codecType:Vt,password:F,rawPassword:D,zipCrypto:U,encryptionStrength:l&&l.strength,signed:ss(a,n,"checkSignature")&&!k,passwordVerification:U&&(z?g>>>8&255:m>>>24&255),outputSize:k?b:y,signature:m,compressed:0!=u&&!k,encrypted:a.encrypted&&!k,useWebWorkers:ss(a,n,Or),useCompressionStream:G,transferStreams:ss(a,n,"transferStreams"),deflate64:K,checkPasswordOnly:O},config:h,streamOptions:{signal:L,size:N,onstart:P,onprogress:Z,onend:q}};let Y;I&&await(async({reader:e,fileEntry:t,offset:r,diskNumberStart:s,signature:n,compressedSize:a,uncompressedSize:i,dataOffset:o,dataDescriptor:c,extraFieldZip64:l,readRanges:d})=>{let u=0;if(s)for(let t=0;s>t;t++)u+=e.readers[t].size;let f=0;if(c&&(f=l?20:12),f){const r=await Le(e,o+a,f+4,s);if(cs(ds(r),0)==M){const e=cs(ds(r),4);let s,o;l?(s=ls(ds(r),8),o=ls(ds(r),16)):(s=cs(ds(r),8),o=cs(ds(r),12)),(t.encrypted&&!t.zipCrypto||e==n)&&s==a&&o==i&&(f+=4)}}const h={start:u+r,end:u+o+a+f,fileEntry:t};for(const e of d)if(e.fileEntry!=t&&h.start>=e.start&&h.start<e.end){const t=new p("Overlapping entry found");throw t.overlappingEntry=e.fileEntry,t}d.push(h)})({reader:i,fileEntry:t,offset:o,diskNumberStart:c,signature:m,compressedSize:b,uncompressedSize:y,dataOffset:_,dataDescriptor:z||S.bitFlag.dataDescriptor,extraFieldZip64:d||S.extraFieldZip64,readRanges:s});try{if(!H){O&&(e=new E),e=new Ne(e),await Be(e,k?b:y),({writable:Y}=e);const{outputSize:t}=await nr({readable:B,writable:Y},X);if(e.size+=t,t!=(k?b:y))throw new p(Mt)}}catch(t){if(t.outputSize!==j&&(e.size+=t.outputSize),!O||t.message!=Je)throw t}finally{ss(a,n,Hr)||!Y||Y.locked||await Y.getWriter().close()}return O||H?j:e.getData?e.getData():Y}};function es(e,t,s){const n=e.rawBitFlag=os(t,s+2),a=!(1&~n),i=cs(t,s+6);r.assign(e,{encrypted:a,version:os(t,s),bitFlag:{level:(6&n)>>1,dataDescriptor:!(8&~n),languageEncodingFlag:(n&P)==P},rawLastModDate:i,lastModDate:ns(i),filenameLength:os(t,s+22),extraFieldLength:os(t,s+24)})}function ts(e,t,s,n,a){const{rawExtraField:i}=t,l=t.extraField=new c,d=ds(new f(i));let u=0;try{for(;u<i.length;){const e=os(d,u),t=os(d,u+2);l.set(e,{type:e,data:i.slice(u+4,u+4+t)}),u+=4+t}}catch{}const h=os(s,n+4);r.assign(t,{signature:cs(s,n+10),compressedSize:cs(s,n+14),uncompressedSize:cs(s,n+18)});const w=l.get(1);w&&(((e,t)=>{t.zip64=!0;const r=ds(e.data),s=Yr.filter(([e,r])=>t[e]==r);for(let n=0,a=0;n<s.length;n++){const[i,o]=s[n];if(t[i]==o){const s=Jr[o];t[i]=e[i]=s.getValue(r,a),a+=s.bytes}else if(e[i])throw new p("Zip64 extra field not found")}})(w,t),t.extraFieldZip64=w);const m=l.get(28789);m&&(rs(m,cr,lr,t,e),t.extraFieldUnicodePath=m);const g=l.get(25461);g&&(rs(g,dr,ur,t,e),t.extraFieldUnicodeComment=g);const y=l.get(39169);y?(((e,t,s)=>{const n=ds(e.data),a=is(n,4);r.assign(e,{vendorVersion:is(n,0),vendorId:is(n,2),strength:a,originalCompressionMethod:s,compressionMethod:os(n,5)}),t.compressionMethod=e.compressionMethod})(y,t,h),t.extraFieldAES=y):t.compressionMethod=h;const b=l.get(10);b&&(((e,t)=>{const s=ds(e.data);let n,a=4;try{for(;a<e.data.length&&!n;){const t=os(s,a),r=os(s,a+2);1==t&&(n=e.data.slice(a+4,a+4+r)),a+=4+r}}catch{}try{if(n&&24==n.length){const s=ds(n),a=s.getBigUint64(0,!0),i=s.getBigUint64(8,!0),o=s.getBigUint64(16,!0);r.assign(e,{rawLastModDate:a,rawLastAccessDate:i,rawCreationDate:o});const c={lastModDate:as(a),lastAccessDate:as(i),creationDate:as(o)};r.assign(e,c),r.assign(t,c)}}catch{}})(b,t),t.extraFieldNTFS=b);const z=l.get(H);z&&(((e,t,r)=>{const s=ds(e.data),n=is(s,0),a=[],i=[];r?(1&~n||(a.push(mr),i.push(gr)),2&~n||(a.push(yr),i.push("rawLastAccessDate")),4&~n||(a.push(br),i.push("rawCreationDate"))):5>e.data.length||(a.push(mr),i.push(gr));let c=1;a.forEach((r,n)=>{if(e.data.length>=c+4){const a=cs(s,c);t[r]=e[r]=new o(1e3*a);const l=i[n];e[l]=a}c+=4})})(z,t,a),t.extraFieldExtendedTimestamp=z);const S=l.get(6534);S&&(t.extraFieldUSDZ=S)}function rs(e,t,s,n,a){const i=ds(e.data),o=new Ie;o.append(a[s]);const c=ds(new f(4));c.setUint32(0,o.get(),!0);const l=cs(i,1);r.assign(e,{version:is(i,0),[t]:or(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&l==cs(c,0)}),e.valid&&(n[t]=e[t],n[t+"UTF8"]=!0)}function ss(e,t,r){return t[r]===j?e.options[r]:t[r]}function ns(e){const t=(4294901760&e)>>16,r=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&r)>>11,(2016&r)>>5,2*(31&r),0)}catch{}}function as(e){return new o(n(e/a(1e4)-a(116444736e5)))}function is(e,t){return e.getUint8(t)}function os(e,t){return e.getUint16(t,!0)}function cs(e,t){return e.getUint32(t,!0)}function ls(e,t){return n(e.getBigUint64(t,!0))}function ds(e){return new m(e.buffer)}const us="Version exceeds 65535",ps="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",fs=new f([7,0,2,0,65,69,3,0,0]);let hs=0;const ws=[];class ms{constructor(e,t={}){const s=(e=new Ne(e)).availableSize!==j&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==j&&e.maxSize>0&&e.maxSize!==1/0;r.assign(this,{writer:e,addSplitZipSignature:s,options:t,config:$(),files:new c,filenames:new l,offset:t[Zr]===j?e.size||e.writable.size||0:t[Zr],pendingEntriesSize:0,pendingAddFileCalls:new l,bufferedWrites:0})}async prependZip(e){if(this.filenames.size)throw new p("Zip file not empty");e=new Me(e);const t=new Qr(e.readable),s=await t.getEntries();await t.close(),await e.readable.pipeTo(this.writer.writable,{preventClose:!0,preventAbort:!0}),this.writer.size=this.offset=e.size,this.filenames=new l(s.map(e=>e.filename)),this.files=new c(s.map(e=>{const{version:t,compressionMethod:s,lastModDate:n,lastAccessDate:a,creationDate:i,rawFilename:o,bitFlag:c,encrypted:l,uncompressedSize:d,compressedSize:u,diskOffset:p,diskNumber:h,zip64:w}=e;let{rawExtraFieldZip64:m,rawExtraFieldAES:g,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:b,rawExtraField:z}=e;const{level:S,languageEncodingFlag:x,dataDescriptor:F}=c;m=m||new f,g=g||new f,y=y||new f,b=b||new f,z=z||new f;const D=As(m,g,y,b,z),k=w&&d>T,E=w&&u>T,{headerArray:v,headerView:A}=Rs({version:t,bitFlag:Cs(S,x,F,l,s),compressionMethod:s,uncompressedSize:d,compressedSize:u,lastModDate:n,rawFilename:o,zip64CompressedSize:E,zip64UncompressedSize:k,extraFieldLength:D});return r.assign(e,{zip64UncompressedSize:k,zip64CompressedSize:E,zip64Offset:w&&this.offset-p>T,zip64DiskNumberStart:w&&h>U,rawExtraFieldZip64:m,rawExtraFieldAES:g,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:b,rawExtraField:z,extendedTimestamp:y.length>0||b.length>0,extraFieldExtendedTimestampFlag:1+(a?2:0)+(i?4:0),headerArray:v,headerView:A}),[e.filename,e]}))}async add(e="",s,n={}){const c=this,{pendingAddFileCalls:l,config:u}=c;let w;hs<u.maxWorkers?hs++:await new y(e=>ws.push(e));try{if(e=e.trim(),c.filenames.has(e))throw new p("File already exists");return c.filenames.add(e),w=(async(e,s,n,c)=>{s=s.trim();const l=zs(e,c,xr),u=zs(e,c,Er,l?20:768),w=zs(e,c,Rr);if(u>U)throw new p(us);let m=zs(e,c,Sr,0);!c[Ar]&&s.endsWith(Z)&&(c[Ar]=!0),zs(e,c,Ar)?(s.endsWith(Z)||(s+=Z),0===m&&(m=16,l||(m|=16877<<16))):l||0!==m||(m=w?493<<16:27525120);const g=zs(e,c,"encodeText",Pe);let b=g(s);if(b===j&&(b=Pe(s)),As(b)>U)throw new p("File entry name exceeds 64KB");const z=c[dr]||"";let S=g(z);if(S===j&&(S=Pe(z)),As(S)>U)throw new p("File entry comment exceeds 64KB");const x=zs(e,c,kr,20);if(x>U)throw new p(us);const F=zs(e,c,mr,new o),k=zs(e,c,yr),E=zs(e,c,br),v=zs(e,c,zr,0),A=zs(e,c,Br);let R,C;A||(R=zs(e,c,Mr),C=zs(e,c,Nr));const N=zs(e,c,"encryptionStrength",3),B=zs(e,c,vr),L=zs(e,c,"extendedTimestamp",!0),O=zs(e,c,"keepOrder",!0),I=zs(e,c,Or),P=zs(e,c,"bufferedWrite"),G=zs(e,c,"dataDescriptorSignature",!1),X=zs(e,c,Lr),Y=zs(e,c,"useUnicodeFileNames",!0),J=zs(e,c,Cr);let Q=zs(e,c,"level"),$=zs(e,c,Ir),te=zs(e,c,"dataDescriptor");P&&te===j&&(te=!1),(te===j||B)&&(te=!0),Q!==j&&6!=Q&&($=!1),$||e.config.CompressionStream!==j||e.config.CompressionStreamZlib!==j||(Q=0);let re=zs(e,c,Fr);if(!B&&(R!==j||C!==j)&&(1>N||N>3))throw new p("The strength must equal 1, 2, or 3");let se=new f;const ne=c[Ur];if(ne){let e=0,t=0;ne.forEach(t=>e+=4+As(t)),se=new f(e),ne.forEach((e,r)=>{if(r>U)throw new p("Extra field type exceeds 65535");if(As(e)>U)throw new p("Extra field data exceeds 64KB");Es(se,new h([r]),t),Es(se,new h([As(e)]),t+2),Es(se,e,t+4),t+=4+As(e)})}let ae=0,ie=0,oe=0;if(A&&(oe=c[pr],oe===j))throw new p("Undefined uncompressed size");const ce=!0===re;n&&(n=new Me(n),await Be(n),A?(c.uncompressedSize=oe,ae=Ss(oe)):n.size===j?(te=!0,(re||re===j)&&(re=!0,oe=ae=4294967296)):(c.uncompressedSize=oe=n.size,ae=Ss(oe)));const{diskOffset:le,diskNumber:de,maxSize:ue}=e.writer,pe=ce||oe>T,fe=ce||ae>T,he=ce||e.offset+e.pendingEntriesSize-le>T,we=zs(e,c,Pr,!0)&&ce||de+i.ceil(e.pendingEntriesSize/ue)>U;if(he||pe||fe||we){if(!1===re||!O)throw new p(ps);re=!0}re=re||!1;const me=zs(e,c,Dr),ge=(e=>{const{rawFilename:t,lastModDate:r,lastAccessDate:s,creationDate:n,level:o,zip64:c,zipCrypto:l,useUnicodeFileNames:d,dataDescriptor:u,directory:p,rawExtraField:h,encryptionStrength:w,extendedTimestamp:m,passThrough:g,encrypted:y,zip64UncompressedSize:b,zip64CompressedSize:z,zip64Offset:S,zip64DiskNumberStart:x,uncompressedSize:F,offset:D,diskNumberStart:k}=e;let{version:E,compressionMethod:v}=e;const A=!p&&(o>0||o===j&&0!==v);let R;const C=g||!A,T=c&&(e.bufferedWrite||!b&&!z||C);if(c){let e=4;b&&(e+=8),z&&(e+=8),S&&(e+=8),x&&(e+=4),R=new f(e);const t=vs(R);if(Fs(t,0,1),Fs(t,2,As(R)-4),T){const e=vs(R);let t=4;b&&(ks(e,t,a(F)),t+=8),z&&C&&(ks(e,t,a(F)),t+=8),S&&(ks(e,t,a(D)),t+=8),x&&(Ds(e,t,k),t+=4)}}else R=new f;let U,_,M,N;if(y&&!l){U=new f(As(fs)+2);const e=vs(U);Fs(e,0,39169),Es(U,fs,2),xs(e,8,w)}else U=new f;if(m){M=new f(9+(s?4:0)+(n?4:0));const e=vs(M);Fs(e,0,H),Fs(e,2,As(M)-4),N=1+(s?2:0)+(n?4:0),xs(e,4,N);let t=5;Ds(e,t,i.floor(r.getTime()/1e3)),t+=4,s&&(Ds(e,t,i.floor(s.getTime()/1e3)),t+=4),n&&Ds(e,t,i.floor(n.getTime()/1e3));try{_=new f(36);const e=vs(_),t=bs(r);Fs(e,0,10),Fs(e,2,32),Fs(e,8,1),Fs(e,10,24),ks(e,12,t),ks(e,20,bs(s)||t),ks(e,28,bs(n)||t)}catch{_=new f}}else _=M=new f;v===j&&(v=A?8:0),c&&(E=E>45?E:45),y&&!l&&(E=E>51?E:51,U[9]=v,v=99);const B=T?As(R):0,L=B+As(U,M,_,h),{headerArray:O,headerView:I,rawLastModDate:P}=Rs({version:E,bitFlag:Cs(o,d,u,y,v),compressionMethod:v,uncompressedSize:F,lastModDate:K>r?K:r>q?q:r,rawFilename:t,zip64CompressedSize:z,zip64UncompressedSize:b,extraFieldLength:L});let Z=V;const G=new f(Z+As(t)+L),X=vs(G);return Ds(X,0,W),Es(G,O,4),Es(G,t,Z),Z+=As(t),T&&Es(G,R,Z),Z+=B,Es(G,U,Z),Z+=As(U),Es(G,M,Z),Z+=As(M),Es(G,_,Z),Z+=As(_),Es(G,h,Z),u&&(Ds(X,18,0),Ds(X,22,0)),{localHeaderArray:G,localHeaderView:X,headerArray:O,headerView:I,lastModDate:r,rawLastModDate:P,encrypted:y,compressed:A,version:E,compressionMethod:v,extraFieldExtendedTimestampFlag:N,rawExtraFieldZip64:R,localExtraFieldZip64Length:B,rawExtraFieldExtendedTimestamp:M,rawExtraFieldNTFS:_,rawExtraFieldAES:U,extraFieldLength:L}})(c=r.assign({},c,{rawFilename:b,rawComment:S,version:x,versionMadeBy:u,lastModDate:F,lastAccessDate:k,creationDate:E,rawExtraField:se,zip64:re,zip64UncompressedSize:pe,zip64CompressedSize:fe,zip64Offset:he,zip64DiskNumberStart:we,password:R,rawPassword:C,level:Q,useWebWorkers:I,encryptionStrength:N,extendedTimestamp:L,zipCrypto:B,bufferedWrite:P,keepOrder:O,useUnicodeFileNames:Y,dataDescriptor:te,dataDescriptorSignature:G,signal:X,msDosCompatible:l,internalFileAttribute:v,internalFileAttributes:v,externalFileAttribute:m,externalFileAttributes:m,useCompressionStream:$,passThrough:A,encrypted:!!(R&&As(R)||C&&As(C))||A&&me,signature:c[Tr],compressionMethod:J,uncompressedSize:oe,offset:e.offset-le,diskNumberStart:de})),ye=(({zip64:e,dataDescriptor:t,dataDescriptorSignature:r})=>{let s,n=new f,a=0,i=e?20:12;return r&&(i+=4),t&&(n=new f(i),s=vs(n),r&&(a=4,Ds(s,0,M))),{dataDescriptorArray:n,dataDescriptorView:s,dataDescriptorOffset:a}})(c),be=As(ge.localHeaderArray,ye.dataDescriptorArray);let ze;ie=be+ae,e.options[Vr]&&(ie+=ie+64),e.pendingEntriesSize+=ie;try{ze=await(async(e,s,n,i,o)=>{const{files:c,writer:l}=e,{keepOrder:u,dataDescriptor:h,signal:w}=o,{headerInfo:m}=i,g=e.options[Vr],b=t.from(c.values()).pop();let z,S,x,F,k,E,v,A={};c.set(s,A);try{let t;u&&(t=b&&b.lock,A.lock=new y(e=>x=e)),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&u)&&h||g?(E=l,await R()):(E=new D,E.size=0,z=!0,e.bufferedWrites++,await Be(l)),await Be(E);const{writable:S,diskOffset:U}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new f(4);Ds(vs(t),0,_),await ys(l,t),e.offset+=4}g&&((e,t)=>{const{headerInfo:r}=e;let{localHeaderArray:s,extraFieldLength:n}=r,a=vs(s),i=64-(t+As(s))%64;4>i&&(i+=64);const o=new f(i),c=vs(o);Fs(c,0,6534),Fs(c,2,i-2);const l=s;r.localHeaderArray=s=new f(As(l)+i),Es(s,l),Es(s,o,As(l)),a=vs(s),Fs(a,28,n+i),e.metadataSize+=i})(i,e.offset-U);const{localHeaderView:W,localHeaderArray:M}=m;z||(await t,await C(S));const{diskNumber:N}=l;k=!0,A.diskNumberStart=N,z?v=new d(E.readable).blob():await ys(E,M),A=await(async(e,t,{diskNumberStart:s,lock:n},i,o,c)=>{const{headerInfo:l,dataDescriptorInfo:d,metadataSize:u}=i,{headerArray:p,headerView:f,lastModDate:h,rawLastModDate:w,encrypted:m,compressed:g,version:y,compressionMethod:b,rawExtraFieldZip64:z,localExtraFieldZip64Length:S,rawExtraFieldExtendedTimestamp:x,extraFieldExtendedTimestampFlag:F,rawExtraFieldNTFS:D,rawExtraFieldAES:k}=l,{dataDescriptorArray:E}=d,{rawFilename:v,lastAccessDate:A,creationDate:R,password:C,rawPassword:T,level:U,zip64:W,zip64UncompressedSize:_,zip64CompressedSize:M,zip64Offset:N,zip64DiskNumberStart:B,zipCrypto:L,dataDescriptor:O,directory:I,executable:H,versionMadeBy:P,rawComment:Z,rawExtraField:V,useWebWorkers:q,onstart:K,onprogress:G,onend:X,signal:Y,encryptionStrength:J,extendedTimestamp:Q,msDosCompatible:$,internalFileAttributes:te,externalFileAttributes:re,useCompressionStream:se,passThrough:ne}=c,ae={lock:n,versionMadeBy:P,zip64:W,directory:!!I,executable:!!H,filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:Z,rawExtraFieldZip64:z,localExtraFieldZip64Length:S,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:D,rawExtraFieldAES:k,rawExtraField:V,extendedTimestamp:Q,msDosCompatible:$,internalFileAttributes:te,externalFileAttributes:re,diskNumberStart:s};let{signature:ie,uncompressedSize:oe}=c,ce=0;ne||(oe=0);const{writable:le}=t;if(e){e.chunkSize=ee(o);const r=e.readable,s=e.size,n={options:{codecType:Zt,level:U,rawPassword:T,password:C,encryptionStrength:J,zipCrypto:m&&L,passwordVerification:m&&L&&w>>8&255,signed:!ne,compressed:g&&!ne,encrypted:m&&!ne,useWebWorkers:q,useCompressionStream:se,transferStreams:!1},config:o,streamOptions:{signal:Y,size:s,onstart:K,onprogress:G,onend:X}};try{const e=await nr({readable:r,writable:le},n);ce=e.outputSize,t.size+=ce,ne||(oe=e.inputSize,ie=e.signature)}catch(e){throw e.outputSize!==j&&(t.size+=e.outputSize),e}}return(({signature:e,compressedSize:t,uncompressedSize:r,headerInfo:s,dataDescriptorInfo:n},{zip64:i,zipCrypto:o,dataDescriptor:c})=>{const{headerView:l,encrypted:d}=s,{dataDescriptorView:u,dataDescriptorOffset:p}=n;d&&!o||e===j||(Ds(l,10,e),c&&Ds(u,p,e)),i?c&&(ks(u,p+4,a(t)),ks(u,p+12,a(r))):(Ds(l,14,t),Ds(l,18,r),c&&(Ds(u,p+4,t),Ds(u,p+8,r)))})({signature:ie,compressedSize:ce,uncompressedSize:oe,headerInfo:l,dataDescriptorInfo:d},c),O&&await ys(t,E),r.assign(ae,{uncompressedSize:oe,compressedSize:ce,lastModDate:h,rawLastModDate:w,creationDate:R,lastAccessDate:A,encrypted:m,zipCrypto:L,size:u+ce,compressionMethod:b,version:y,headerArray:p,headerView:f,signature:ie,extraFieldExtendedTimestampFlag:F,zip64UncompressedSize:_,zip64CompressedSize:M,zip64Offset:N,zip64DiskNumberStart:B}),ae})(n,E,A,i,e.config,o);const{zip64:B}=A;if(k=!1,c.set(s,A),A.filename=s,z){const[r]=await y.all([v,E.writable.getWriter().close(),t]);await R(),F=!0,A.diskNumberStart=l.diskNumber,A.offset=e.offset-l.diskOffset,B&&gs(A),(({rawFilename:e,encrypted:t,zip64:r,localExtraFieldZip64Length:s,signature:n,compressedSize:i,uncompressedSize:o,offset:c,diskNumberStart:l,zip64UncompressedSize:d,zip64CompressedSize:u,zip64Offset:p,zip64DiskNumberStart:f},h,{dataDescriptor:w})=>{if(w||(t||Ds(h,14,n),r||(Ds(h,18,i),Ds(h,22,o))),r&&s){let t=V+As(e)+4;d&&(ks(h,t,a(o)),t+=8),u&&(ks(h,t,a(i)),t+=8),p&&(ks(h,t,a(c)),t+=8),f&&Ds(h,t,l)}})(A,W,o),await C(S),await ys(l,M),await r.stream().pipeTo(S,{preventClose:!0,preventAbort:!0,signal:w}),l.size+=E.size,F=!1}else A.offset=e.offset-U,B&&gs(A);if(A.offset>T&&!B)throw new p(ps);return e.offset+=A.size,A}catch(t){if(z&&F||!z&&k){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch{}z?e.offset+=E.size:e.offset=E.size}throw c.delete(s),t}finally{z&&e.bufferedWrites--,x&&x(),S&&S()}async function R(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new y(t=>S=()=>{e.writerLocked=!1,t()}),await t}async function C(e){As(m.localHeaderArray)>l.availableSize&&(l.availableSize=0,await ys(e,new f))}})(e,s,n,{headerInfo:ge,dataDescriptorInfo:ye,metadataSize:be},c)}finally{e.pendingEntriesSize-=ie}return r.assign(ze,{name:s,comment:z,extraField:ne}),new _r(ze)})(c,e,s,n),l.add(w),await w}catch(t){throw c.filenames.delete(e),t}finally{l.delete(w);const e=ws.shift();e?e():hs--}}remove(e){const{filenames:t,files:r}=this;if("string"==typeof e&&(e=r.get(e)),e&&e.filename!==j){const{filename:s}=e;if(t.has(s)&&r.has(s))return t.delete(s),r.delete(s),!0}return!1}async close(e=new f,r={}){const{pendingAddFileCalls:s,writer:n}=this,{writable:o}=n;for(;s.size;)await y.allSettled(t.from(s));return await(async(e,r,s)=>{const{files:n,writer:o}=e,{diskOffset:c}=o;let{diskNumber:l}=o,d=0,u=0,h=e.offset-c,w=n.size;for(const[,e]of n){const{rawFilename:t,rawExtraFieldZip64:r,rawExtraFieldAES:s,rawComment:n,rawExtraFieldNTFS:a,rawExtraField:o,extendedTimestamp:c,extraFieldExtendedTimestampFlag:l,lastModDate:d}=e;let p;if(c){p=new f(9);const e=vs(p);Fs(e,0,H),Fs(e,2,5),xs(e,4,l),Ds(e,5,i.floor(d.getTime()/1e3))}else p=new f;e.rawExtraFieldExtendedTimestamp=p,u+=46+As(t,n,r,s,a,p,o)}const m=new f(u),g=vs(m);await Be(o);let y=0;for(const[e,r]of t.from(n.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:i,rawExtraFieldAES:c,rawExtraFieldExtendedTimestamp:l,rawExtraFieldNTFS:u,rawExtraField:p,rawComment:f,versionMadeBy:h,headerArray:w,headerView:b,zip64:z,zip64UncompressedSize:S,zip64CompressedSize:x,zip64DiskNumberStart:F,zip64Offset:D,internalFileAttributes:k,externalFileAttributes:E,diskNumberStart:v,uncompressedSize:A,compressedSize:R}=r,C=As(i,c,l,u,p);Ds(g,d,N),Fs(g,d+4,h),S||Ds(b,18,A),x||Ds(b,14,R),Es(m,w,d+6);let W=d+V;if(Fs(g,W,C),W+=2,Fs(g,W,As(f)),W+=2,Fs(g,W,z&&F?U:v),W+=2,Fs(g,W,k),W+=2,E&&Ds(g,W,E),W+=4,Ds(g,W,z&&D?T:t),W+=4,Es(m,a,W),W+=As(a),Es(m,i,W),W+=As(i),Es(m,c,W),W+=As(c),Es(m,l,W),W+=As(l),Es(m,u,W),W+=As(u),Es(m,p,W),W+=As(p),Es(m,f,W),d-y>o.availableSize&&(o.availableSize=0,await ys(o,m.slice(y,d)),y=d),d=W,s.onprogress)try{await s.onprogress(e+1,n.size,new _r(r))}catch{}}await ys(o,y?m.slice(y):m);let b=o.diskNumber;const{availableSize:z}=o;I>z&&b++;let S=zs(e,s,Fr);if(h>T||u>T||w>U||b>U){if(!1===S)throw new p(ps);S=!0}const x=new f(S?98:I),F=vs(x);d=0,S&&(Ds(F,0,L),ks(F,4,a(44)),Fs(F,12,45),Fs(F,14,45),Ds(F,16,b),Ds(F,20,l),ks(F,24,a(w)),ks(F,32,a(w)),ks(F,40,a(u)),ks(F,48,a(h)),Ds(F,56,O),ks(F,64,a(h)+a(u)),Ds(F,72,b+1),zs(e,s,Pr,!0)&&(b=U,l=U),w=U,h=T,u=T,d+=76),Ds(F,d,B),Fs(F,d+4,b),Fs(F,d+6,l),Fs(F,d+8,w),Fs(F,d+10,w),Ds(F,d+12,u),Ds(F,d+16,h);const D=As(r);if(D){if(D>U)throw new p("Zip file comment exceeds 64KB");Fs(F,d+20,D)}await ys(o,x),D&&await ys(o,r)})(this,e,r),zs(this,r,Hr)||await o.getWriter().close(),n.getData?n.getData():o}}function gs({compressedSize:e,uncompressedSize:t,offset:r,diskNumberStart:s,zip64UncompressedSize:n,zip64CompressedSize:i,zip64Offset:o,zip64DiskNumberStart:c,rawExtraFieldZip64:l}){const d=vs(l);let u=4;n&&(ks(d,u,a(t)),u+=8),i&&(ks(d,u,a(e)),u+=8),o&&(ks(d,u,a(r)),u+=8),c&&Ds(d,u,s)}async function ys(e,t){const{writable:r}=e,s=r.getWriter();try{await s.ready,e.size+=As(t),await s.write(t)}finally{s.releaseLock()}}function bs(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function zs(e,t,r,s){const n=t[r]===j?e.options[r]:t[r];return n===j?s:n}function Ss(e){return e+5*(i.floor(e/16383)+1)}function xs(e,t,r){e.setUint8(t,r)}function Fs(e,t,r){e.setUint16(t,r,!0)}function Ds(e,t,r){e.setUint32(t,r,!0)}function ks(e,t,r){e.setBigUint64(t,r,!0)}function Es(e,t,r){e.set(t,r)}function vs(e){return new m(e.buffer)}function As(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Rs({version:e,bitFlag:t,compressionMethod:r,uncompressedSize:s,compressedSize:n,lastModDate:a,rawFilename:i,zip64CompressedSize:o,zip64UncompressedSize:c,extraFieldLength:l}){const d=new f(26),u=vs(d);Fs(u,0,e),Fs(u,2,t),Fs(u,4,r);const p=new w(1),h=vs(p);Fs(h,0,(a.getHours()<<6|a.getMinutes())<<5|a.getSeconds()/2),Fs(h,2,(a.getFullYear()-1980<<4|a.getMonth()+1)<<5|a.getDate());const m=p[0];return Ds(u,6,m),(o||n!==j)&&Ds(u,14,o?T:n),(c||s!==j)&&Ds(u,18,c?T:s),Fs(u,22,As(i)),Fs(u,24,l),{headerArray:d,headerView:u,rawLastModDate:m}}function Cs(e,t,r,s,n){let a=0;return t&&(a|=P),r&&(a|=8),8!=n&&9!=n||(0>e||e>3||(a|=6),e>3&&5>=e&&(a|=4),9==e&&(a|=2)),s&&(a|=1),a}class Ts{constructor(e,t,s,n){const a=this;if(e.root&&n&&n.getChildByName(t))throw new p("Entry filename already exists");s||(s={}),r.assign(a,{fs:e,name:t,data:s.data,options:s.options,id:e.entries.length,parent:n,children:[],uncompressedSize:s.uncompressedSize||0,passThrough:s.passThrough}),e.entries.push(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 new p("Entry filename already exists");this.name=e}}class Us extends Ts{constructor(e,t,r,s){super(e,t,r,s);const n=this;n.Reader=r.Reader,n.Writer=r.Writer,r.getData&&(n.getData=r.getData)}clone(){return new Us(this.fs,this.name,this)}async getData(e,t={}){const r=this;if(!e||e.constructor==r.Writer&&r.data)return r.data;{const s=r.reader=new r.Reader(r.data,t),n=r.data?r.data.uncompressedSize:s.size;await y.all([Be(s),Be(e,n)]);const{readable:a}=s;return r.uncompressedSize=s.size,await a.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return this.data.encrypted}async checkPassword(e,t={}){const r=this;if(!r.isPasswordProtected())return!0;t.password=e,t.checkPasswordOnly=!0;try{return await r.data.getData(null,t),!0}catch(e){if(e.message==Xe)return!1;throw e}}getText(e,t){return this.getData(new me(e),t)}getBlob(e,t){return this.getData(new he(e),t)}getData64URI(e,t){return this.getData(new pe(e),t)}getUint8Array(e){return this.getData(new Ue,e)}getWritable(e=new E,t){return this.getData({writable:e},t)}getArrayBuffer(e){return this.data.arrayBuffer(e)}replaceBlob(e){r.assign(this,{data:e,Reader:fe,Writer:he,reader:null})}replaceText(e){r.assign(this,{data:e,Reader:we,Writer:me,reader:null})}replaceData64URI(e){r.assign(this,{data:e,Reader:ue,Writer:pe,reader:null})}replaceUint8Array(e){r.assign(this,{data:e,Reader:Te,Writer:Ue,reader:null})}replaceReadable(e){r.assign(this,{data:null,Reader:()=>({readable:e}),Writer:null,reader:null})}}class Ws extends Ts{constructor(e,t,r,s){super(e,t,r,s),this.directory=!0}clone(e){const t=this,r=new Ws(t.fs,t.name);return e&&(r.children=t.children.map(t=>{const s=t.clone(e);return s.parent=r,s})),r}addDirectory(e,t){return Hs(this,e,{options:t},!0)}addText(e,t,r={}){return Hs(this,e,{data:t,Reader:we,Writer:me,options:r,uncompressedSize:t.length})}addBlob(e,t,r={}){return Hs(this,e,{data:t,Reader:fe,Writer:he,options:r,uncompressedSize:t.size})}addData64URI(e,t,r={}){let s=t.length;for(;"="==t.charAt(s-1);)s--;const n=t.indexOf(",")+1;return Hs(this,e,{data:t,Reader:ue,Writer:pe,options:r,uncompressedSize:i.floor(.75*(s-n))})}addUint8Array(e,t,r={}){return Hs(this,e,{data:t,Reader:Te,Writer:Ue,options:r,uncompressedSize:t.length})}addHttpContent(e,t,r={}){return Hs(this,e,{data:t,Reader:class extends Ce{constructor(e){super(e,r)}},options:r})}addReadable(e,t,r={}){return Hs(this,e,{Reader:()=>({readable:t}),options:r})}addFileSystemEntry(e,t={}){return Ls(this,e,t)}addFileSystemHandle(e,t={}){return Ls(this,e,t)}addFile(e,t={}){return t.lastModDate||(t.lastModDate=new o(e.lastModified)),Hs(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}addData(e,t){return Hs(this,e,t)}importBlob(e,t){return this.importZip(new fe(e),t)}importData64URI(e,t){return this.importZip(new ue(e),t)}importUint8Array(e,t){return this.importZip(new Te(e),t)}importHttpContent(e,t){return this.importZip(new Ce(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new he(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new pe(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new Ue,e)}async exportWritable(e=new E,t={}){return await this.exportZip({writable:e},t),e}async importZip(e,t={}){await Be(e);const s=new Qr(e,t),n=[],a=await s.getEntries();for(const e of a){let s=this;try{const a=e.filename.split("/"),i=a.pop();a.forEach((t,r)=>{const i=s;s=s.getChildByName(t),s||(s=new Ws(this.fs,t,{data:r==a.length-1?e:null},i),n.push(s))}),e.directory||n.push(Hs(s,i,{data:e,Reader:Ms(r.assign({},t)),uncompressedSize:e.uncompressedSize,passThrough:t.passThrough}))}catch(t){try{t.cause={entry:e}}catch{}throw t}}return n}async exportZip(e,s){const n=this;s.bufferedWrite===j&&(s.bufferedWrite=!0),await y.all([Ns(n,s.readerOptions),Be(e)]);const a=new ms(e,s);return await(async(e,s,n,a)=>{const i=s,o=new c;await async function e(s,c){async function l(c){const l=a.relativePath?c.getRelativeName(i):c.getFullname(),d=c.options||{};let u={};if(c.data instanceof _r){const{externalFileAttributes:e,versionMadeBy:t,comment:s,lastModDate:n,creationDate:a,lastAccessDate:i,uncompressedSize:o,encrypted:l,zipCrypto:d,signature:p,compressionMethod:f,extraFieldAES:h}=c.data;if(u={externalFileAttributes:e,versionMadeBy:t,comment:s,lastModDate:n,creationDate:a,lastAccessDate:i},c.passThrough){let e,t;0===f&&(e=0),h&&(t=h.strength),u=r.assign(u,{passThrough:!0,encrypted:l,zipCrypto:d,signature:p,uncompressedSize:o,level:e,encryptionStrength:t,compressionMethod:f})}}await s.add(l,c.reader,r.assign({},a,u,d,{directory:c.directory,onprogress:async e=>{if(a.onprogress){o.set(l,e);try{await a.onprogress(t.from(o.values()).reduce((e,t)=>e+t),n)}catch{}}}})),await e(s,c)}await(async()=>{if(a.bufferedWrite)await y.allSettled(c.children.map(l));else for(const e of c.children)await l(e)})()}(e,s)})(a,n,(e=>{let t=0;return e.forEach(function e(r){t+=r.uncompressedSize,r.children&&r.children.forEach(e)}),t})([n]),s),await a.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let r=0;r<t.length;r++){const s=t[r];if(s.name==e)return s}}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 y.all(r.map(r=>r.checkPassword(e,t)))).includes(!1)}}const _s={FS:class{constructor(){Is(this)}get children(){return this.root.children}remove(e){Bs(e),this.entries[e.id]=null}move(e,t){if(e==this.root)throw new p("Root directory cannot be moved");if(!t.directory)throw new p("Target entry is not a directory");if(t.isDescendantOf(e))throw new p("Entry is a ancestor of target entry");if(e!=t){if(t.getChildByName(e.name))throw new p("Entry filename already exists");Bs(e),e.parent=t,t.children.push(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}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)}addData(e,t){return this.root.addData(e,t)}importBlob(e,t){return Is(this),this.root.importBlob(e,t)}importData64URI(e,t){return Is(this),this.root.importData64URI(e,t)}importUint8Array(e,t){return Is(this),this.root.importUint8Array(e,t)}importHttpContent(e,t){return Is(this),this.root.importHttpContent(e,t)}importReadable(e,t){return Is(this),this.root.importReadable(e,t)}importZip(e,t){return 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)}isPasswordProtected(){return this.root.isPasswordProtected()}checkPassword(e,t){return this.root.checkPassword(e,t)}},ZipDirectoryEntry:Ws,ZipFileEntry:Us};function Ms(e){return class extends le{constructor(e,t={}){super(),this.entry=e,this.options=t}async init(){const t=this;t.size=t.entry.uncompressedSize;const s=await t.entry.getData(new he,r.assign({},t.options,e));t.data=s,t.blobReader=new fe(s),super.init()}readUint8Array(e,t){return this.blobReader.readUint8Array(e,t)}}}async function Ns(e,t){e.children.length&&await y.all(e.children.map(async e=>{if(e.directory)await Ns(e,t);else{const r=e.reader=new e.Reader(e.data,t);try{await Be(r)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch{}throw t}e.uncompressedSize=r.size}}))}function Bs(e){if(e.parent){const t=e.parent.children;t.forEach((r,s)=>{r.id==e.id&&t.splice(s,1)})}}function Ls(e,t,s){return async function e(t,n,a){if(n)try{if((n.isFile||n.isDirectory)&&(n=await Os(n)),"file"==n.kind){const e=await n.getFile();a.push(t.addData(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:r.assign({},{lastModDate:new o(e.lastModified)},s),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 new p(t)}return a}(e,t,[])}async function Os(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new y((t,r)=>e.file(t,r))),e.isDirectory){t.kind="directory";const r=await(async e=>{const t=[];function r(e,s,n){e.readEntries(async a=>{if(a.length){for(const e of a)t.push(await Os(e));r(e,s,n)}else s(t)},n)}return await new y((t,s)=>r(e.createReader(),t,s)),{[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 Is(e){e.entries=[],e.root=new Ws(e)}function Hs(e,t,r,s){if(e.directory)return s?new Ws(e.fs,t,r,e):new Us(e.fs,t,r,e);throw new p("Parent entry is not a directory")}e.fs=_s});
|
package/dist/zip-fs-native.js
CHANGED
|
@@ -138,7 +138,7 @@
|
|
|
138
138
|
}
|
|
139
139
|
const DEFAULT_CONFIGURATION = {
|
|
140
140
|
workerURI: "./core/web-worker-wasm.js",
|
|
141
|
-
wasmURI: "./core/streams/zlib/zlib-streams.wasm",
|
|
141
|
+
wasmURI: "./core/streams/zlib-wasm/zlib-streams.wasm",
|
|
142
142
|
chunkSize: 64 * 1024,
|
|
143
143
|
maxWorkers,
|
|
144
144
|
terminateWorkerTimeout: 5000,
|
|
@@ -193,7 +193,7 @@
|
|
|
193
193
|
}
|
|
194
194
|
}
|
|
195
195
|
|
|
196
|
-
function e(e){e({workerURI:()=>"data:text/javascript,"+encodeURIComponent('(e=>{"function"==typeof define&&define.amd?define(e):e()})(function(){"use strict";const{Array:e,Object:t,Number:r,Math:n,Error:i,Uint8Array:o,Uint16Array:f,Uint32Array:s,Int32Array:l,Map:c,DataView:a,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:k,WritableStream:b,CompressionStream:y,DecompressionStream:m}=self,g=void 0,v="undefined",I="function",S=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;S[e]=t}class z{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let r=0,n=0|e.length;n>r;r++)t=t>>>8^S[255&(t^e[r])];this.t=t}get(){return~this.t}}class _ extends p{constructor(){let e;const t=new z;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new o(4);new a(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}const x={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const r=e[e.length-1],n=x.i(r);return 32===n?e.concat(t):x.o(t,n,0|r,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const r=e[t-1];return 32*(t-1)+x.i(r)},u(e,t){if(32*e.length<t)return e;const r=(e=e.slice(0,n.ceil(t/32))).length;return t&=31,r>0&&t&&(e[r-1]=x.h(t,e[r-1]&2147483648>>t-1,1)),e},h:(e,t,r)=>32===e?t:(r?0|t:t<<32-e)+1099511627776*e,i:e=>n.round(e/1099511627776)||32,o(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 i=0;i<e.length;i++)n.push(r|e[i]>>>t),r=e[i]<<32-t;const i=e.length?e[e.length-1]:0,o=x.i(i);return n.push(x.h(t+o&31,t+o>32?r:n.pop(),1)),n}},B={bytes:{p(e){const t=x.l(e)/8,r=new o(t);let n;for(let i=0;t>i;i++)3&i||(n=e[i/4]),r[i]=n>>>24,n<<=8;return r},k(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(x.h(8*(3&r),n)),t}}},C=class{constructor(e){const t=this;t.blockSize=512,t.m=[1732584193,4023233417,2562383102,271733878,3285377520],t.v=[1518500249,1859775393,2400959708,3395469782],e?(t.I=e.I.slice(0),t.S=e.S.slice(0),t._=e._):t.reset()}reset(){const e=this;return e.I=e.m.slice(0),e.S=[],e._=0,e}update(e){const t=this;"string"==typeof e&&(e=B.B.k(e));const r=t.S=x.concat(t.S,e),n=t._,o=t._=n+x.l(e);if(o>9007199254740991)throw new i("Cannot hash more than 2^53 - 1 bits");const f=new s(r);let l=0;for(let e=t.blockSize+n-(t.blockSize+n&t.blockSize-1);o>=e;e+=t.blockSize)t.C(f.subarray(16*l,16*(l+1))),l+=1;return r.splice(0,16*l),t}A(){const e=this;let t=e.S;const r=e.I;t=x.concat(t,[x.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(n.floor(e._/4294967296)),t.push(0|e._);t.length;)e.C(t.splice(0,16));return e.reset(),r}L(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}H(e,t){return t<<e|t>>>32-e}C(t){const r=this,i=r.I,o=e(80);for(let e=0;16>e;e++)o[e]=t[e];let f=i[0],s=i[1],l=i[2],c=i[3],a=i[4];for(let e=0;79>=e;e++){16>e||(o[e]=r.H(1,o[e-3]^o[e-8]^o[e-14]^o[e-16]));const t=r.H(5,f)+r.L(e,s,l,c)+a+o[e]+r.v[n.floor(e/20)]|0;a=c,c=l,l=r.H(30,s),s=f,f=t}i[0]=i[0]+f|0,i[1]=i[1]+s|0,i[2]=i[2]+l|0,i[3]=i[3]+c|0,i[4]=i[4]+a|0}},A={getRandomValues(e){const t=new s(e.buffer),r=e=>{let t=987654321;const r=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&r,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&r)&r)/4294967296+.5)*(n.random()>.5?1:-1))};for(let i,o=0;o<e.length;o+=4){const e=r(4294967296*(i||n.random()));i=987654071*e(),t[o/4]=4294967296*e()|0}return e}},L={importKey:e=>new L.Z(B.bytes.k(e)),U(e,t,r,n){if(r=r||1e4,0>n||0>r)throw new i("invalid params to pbkdf2");const o=1+(n>>5)<<2;let f,s,l,c,u;const w=new ArrayBuffer(o),h=new a(w);let d=0;const p=x;for(t=B.bytes.k(t),u=1;(o||1)>d;u++){for(f=s=e.encrypt(p.concat(t,[u])),l=1;r>l;l++)for(s=e.encrypt(s),c=0;c<s.length;c++)f[c]^=s[c];for(l=0;(o||1)>d&&l<f.length;l++)h.setInt32(d,f[l]),d+=4}return w.slice(0,n/8)},Z:class{constructor(e){const t=this,r=t.V=C,n=[[],[]];t.M=[new r,new r];const i=t.M[0].blockSize/32;e.length>i&&(e=(new r).update(e).A());for(let t=0;i>t;t++)n[0][t]=909522486^e[t],n[1][t]=1549556828^e[t];t.M[0].update(n[0]),t.M[1].update(n[1]),t.P=new r(t.M[0])}reset(){const e=this;e.P=new e.V(e.M[0]),e.$=!1}update(e){this.$=!0,this.P.update(e)}digest(){const e=this,t=e.P.A(),r=new e.V(e.M[1]).update(t).A();return e.reset(),r}encrypt(e){if(this.$)throw new i("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},H=typeof h!=v&&typeof h.getRandomValues==I,Z="Invalid password",U="Invalid signature",V="zipjs-abort-check-password";function E(e){return H?h.getRandomValues(e):A.getRandomValues(e)}const M=16,P={name:"PBKDF2"},$=t.assign({hash:{name:"HMAC"}},P),O=t.assign({iterations:1e3,hash:{name:"SHA-1"}},P),T=["deriveBits"],D=[8,12,16],R=[16,24,32],N=10,Q=[0,0,0,0],j=typeof h!=v,K=j&&h.subtle,q=j&&typeof K!=v,F=B.bytes,W=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const r=t.O[0][4],n=t.O[1],o=e.length;let f,s,l,c=1;if(4!==o&&6!==o&&8!==o)throw new i("invalid aes key size");for(t.v=[s=e.slice(0),l=[]],f=o;4*o+28>f;f++){let e=s[f-1];(f%o===0||8===o&&f%o===4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],f%o===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),s[f]=s[f-o]^e}for(let e=0;f;e++,f--){const t=s[3&e?f:f-4];l[e]=4>=f||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.D(e,0)}decrypt(e){return this.D(e,1)}T(){const e=this.O[0],t=this.O[1],r=e[4],n=t[4],i=[],o=[];let f,s,l,c;for(let e=0;256>e;e++)o[(i[e]=e<<1^283*(e>>7))^e]=e;for(let a=f=0;!r[a];a^=s||1,f=o[f]||1){let o=f^f<<1^f<<2^f<<3^f<<4;o=o>>8^255&o^99,r[a]=o,n[o]=a,c=i[l=i[s=i[a]]];let u=16843009*c^65537*l^257*s^16843008*a,w=257*i[o]^16843008*o;for(let r=0;4>r;r++)e[r][a]=w=w<<24^w>>>8,t[r][o]=u=u<<24^u>>>8}for(let r=0;5>r;r++)e[r]=e[r].slice(0),t[r]=t[r].slice(0)}D(e,t){if(4!==e.length)throw new i("invalid aes block size");const r=this.v[t],n=r.length/4-2,o=[0,0,0,0],f=this.O[t],s=f[0],l=f[1],c=f[2],a=f[3],u=f[4];let w,h,d,p=e[0]^r[0],k=e[t?3:1]^r[1],b=e[2]^r[2],y=e[t?1:3]^r[3],m=4;for(let e=0;n>e;e++)w=s[p>>>24]^l[k>>16&255]^c[b>>8&255]^a[255&y]^r[m],h=s[k>>>24]^l[b>>16&255]^c[y>>8&255]^a[255&p]^r[m+1],d=s[b>>>24]^l[y>>16&255]^c[p>>8&255]^a[255&k]^r[m+2],y=s[y>>>24]^l[p>>16&255]^c[k>>8&255]^a[255&b]^r[m+3],m+=4,p=w,k=h,b=d;for(let e=0;4>e;e++)o[t?3&-e:e]=u[p>>>24]<<24^u[k>>16&255]<<16^u[b>>8&255]<<8^u[255&y]^r[m++],w=p,p=k,k=b,b=y,y=w;return o}},X=class{constructor(e,t){this.R=e,this.N=t,this.j=t}reset(){this.j=this.N}update(e){return this.K(this.R,e,this.j)}q(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}F(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}K(e,t,r){let n;if(!(n=t.length))return[];const i=x.l(t);for(let i=0;n>i;i+=4){this.F(r);const n=e.encrypt(r);t[i]^=n[0],t[i+1]^=n[1],t[i+2]^=n[2],t[i+3]^=n[3]}return x.u(t,i)}},G=L.Z;let Y=j&&q&&typeof K.importKey==I,J=j&&q&&typeof K.deriveBits==I;class ee extends p{constructor({password:e,rawPassword:r,signed:n,encryptionStrength:f,checkPasswordOnly:s}){super({start(){t.assign(this,{ready:new u(e=>this.W=e),password:ie(e,r),signed:n,X:f-1,pending:new o})},async transform(e,t){const r=this,{password:n,X:f,W:l,ready:c}=r;n?(await(async(e,t,r,n)=>{const o=await ne(e,t,r,fe(n,0,D[t])),f=fe(n,D[t]);if(o[0]!=f[0]||o[1]!=f[1])throw new i(Z)})(r,f,n,fe(e,0,D[f]+2)),e=fe(e,D[f]+2),s?t.error(new i(V)):l()):await c;const a=new o(e.length-N-(e.length-N)%M);t.enqueue(re(r,e,a,0,N,!0))},async flush(e){const{signed:t,G:r,Y:n,pending:f,ready:s}=this;if(n&&r){await s;const l=fe(f,0,f.length-N),c=fe(f,f.length-N);let a=new o;if(l.length){const e=le(F,l);n.update(e);const t=r.update(e);a=se(F,t)}if(t){const e=fe(se(F,n.digest()),0,N);for(let t=0;N>t;t++)if(e[t]!=c[t])throw new i(U)}e.enqueue(a)}}})}}class te extends p{constructor({password:e,rawPassword:r,encryptionStrength:n}){let i;super({start(){t.assign(this,{ready:new u(e=>this.W=e),password:ie(e,r),X:n-1,pending:new o})},async transform(e,t){const r=this,{password:n,X:i,W:f,ready:s}=r;let l=new o;n?(l=await(async(e,t,r)=>{const n=E(new o(D[t]));return oe(n,await ne(e,t,r,n))})(r,i,n),f()):await s;const c=new o(l.length+e.length-e.length%M);c.set(l,0),t.enqueue(re(r,e,c,l.length,0))},async flush(e){const{G:t,Y:r,pending:n,ready:f}=this;if(r&&t){await f;let s=new o;if(n.length){const e=t.update(le(F,n));r.update(e),s=se(F,e)}i.signature=se(F,r.digest()).slice(0,N),e.enqueue(oe(s,i.signature))}}}),i=this}}function re(e,t,r,n,i,f){const{G:s,Y:l,pending:c}=e,a=t.length-i;let u;for(c.length&&(t=oe(c,t),r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new o(t)).set(r,0)}return e})(r,a-a%M)),u=0;a-M>=u;u+=M){const e=le(F,fe(t,u,u+M));f&&l.update(e);const i=s.update(e);f||l.update(i),r.set(se(F,i),u+n)}return e.pending=fe(t,u),r}async function ne(r,n,i,f){r.password=null;const s=await(async(e,t,r,n,i)=>{if(!Y)return L.importKey(t);try{return await K.importKey("raw",t,r,!1,i)}catch{return Y=!1,L.importKey(t)}})(0,i,$,0,T),l=await(async(e,t,r)=>{if(!J)return L.U(t,e.salt,O.iterations,r);try{return await K.deriveBits(e,t,r)}catch{return J=!1,L.U(t,e.salt,O.iterations,r)}})(t.assign({salt:f},O),s,8*(2*R[n]+2)),c=new o(l),a=le(F,fe(c,0,R[n])),u=le(F,fe(c,R[n],2*R[n])),w=fe(c,2*R[n]);return t.assign(r,{keys:{key:a,J:u,passwordVerification:w},G:new X(new W(a),e.from(Q)),Y:new G(u)}),w}function ie(e,t){return t===g?(e=>{if(typeof w==v){const t=new o((e=unescape(encodeURIComponent(e))).length);for(let r=0;r<t.length;r++)t[r]=e.charCodeAt(r);return t}return(new w).encode(e)})(e):t}function oe(e,t){let r=e;return e.length+t.length&&(r=new o(e.length+t.length),r.set(e,0),r.set(t,e.length)),r}function fe(e,t,r){return e.subarray(t,r)}function se(e,t){return e.p(t)}function le(e,t){return e.k(t)}class ce extends p{constructor({password:e,passwordVerification:r,checkPasswordOnly:n}){super({start(){t.assign(this,{password:e,passwordVerification:r}),he(this,e)},transform(e,t){const r=this;if(r.password){const t=ue(r,e.subarray(0,12));if(r.password=null,t.at(-1)!=r.passwordVerification)throw new i(Z);e=e.subarray(12)}n?t.error(new i(V)):t.enqueue(ue(r,e))}})}}class ae extends p{constructor({password:e,passwordVerification:r}){super({start(){t.assign(this,{password:e,passwordVerification:r}),he(this,e)},transform(e,t){const r=this;let n,i;if(r.password){r.password=null;const t=E(new o(12));t[11]=r.passwordVerification,n=new o(e.length+t.length),n.set(we(r,t),0),i=12}else n=new o(e.length),i=0;n.set(we(r,e),i),t.enqueue(n)}})}}function ue(e,t){const r=new o(t.length);for(let n=0;n<t.length;n++)r[n]=pe(e)^t[n],de(e,r[n]);return r}function we(e,t){const r=new o(t.length);for(let n=0;n<t.length;n++)r[n]=pe(e)^t[n],de(e,t[n]);return r}function he(e,r){const n=[305419896,591751049,878082192];t.assign(e,{keys:n,ee:new z(n[0]),te:new z(n[2])});for(let t=0;t<r.length;t++)de(e,r.charCodeAt(t))}function de(e,t){let[r,i,o]=e.keys;e.ee.append([t]),r=~e.ee.get(),i=be(n.imul(be(i+ke(r)),134775813)+1),e.te.append([i>>>24]),o=~e.te.get(),e.keys=[r,i,o]}function pe(e){const t=2|e.keys[2];return ke(n.imul(t,1^t)>>>8)}function ke(e){return 255&e}function be(e){return 4294967295&e}class ye extends p{constructor(e,{chunkSize:t,re:r,CompressionStream:n}){super({});const{compressed:i,encrypted:o,useCompressionStream:f,zipCrypto:s,signed:l,level:c}=e,u=this;let w,h,d=super.readable;o&&!s||!l||(w=new _,d=Ie(d,w)),i&&(d=ve(d,f,{level:c,chunkSize:t},n,r,n)),o&&(s?d=Ie(d,new ae(e)):(h=new te(e),d=Ie(d,h))),ge(u,d,()=>{let e;o&&!s&&(e=h.signature),o&&!s||!l||(e=new a(w.value.buffer).getUint32(0)),u.signature=e})}}class me extends p{constructor(e,{chunkSize:t,ne:r,DecompressionStream:n}){super({});const{zipCrypto:o,encrypted:f,signed:s,signature:l,compressed:c,useCompressionStream:u,ie:w}=e;let h,d,p=super.readable;f&&(o?p=Ie(p,new ce(e)):(d=new ee(e),p=Ie(p,d))),c&&(p=ve(p,u,{chunkSize:t,ie:w},n,r,n)),f&&!o||!s||(h=new _,p=Ie(p,h)),ge(this,p,()=>{if((!f||o)&&s){const e=new a(h.value.buffer);if(l!=e.getUint32(0,!1))throw new i(U)}})}}function ge(e,r,n){r=Ie(r,new p({flush:n})),t.defineProperty(e,"readable",{get:()=>r})}function ve(e,t,r,n,i,o){const f=t&&n?n:i||o,s=r.ie?"deflate64-raw":"deflate-raw";try{e=Ie(e,new f(s,r))}catch(n){if(!t)throw n;if(i)e=Ie(e,new i(s,r));else{if(!o)throw n;e=Ie(e,new o(s,r))}}return e}function Ie(e,t){return e.pipeThrough(t)}const Se="data",ze="close";class _e extends p{constructor(e,r){super({});const n=this,{codecType:o}=e;let f;o.startsWith("deflate")?f=ye:o.startsWith("inflate")&&(f=me),n.outputSize=0;let s=0;const l=new f(e,r),c=super.readable,a=new p({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){t.assign(n,{inputSize:s})}}),u=new p({transform(t,r){if(t&&t.length&&(r.enqueue(t),n.outputSize+=t.length,e.outputSize!==g&&n.outputSize>e.outputSize))throw new i("Invalid uncompressed size")},flush(){const{signature:e}=l;t.assign(n,{signature:e,inputSize:s})}});t.defineProperty(n,"readable",{get:()=>c.pipeThrough(a).pipeThrough(l).pipeThrough(u)})}}class xe extends p{constructor(e){let t;super({transform:function r(n,i){if(t){const e=new o(t.length+n.length);e.set(t),e.set(n,t.length),n=e,t=null}n.length>e?(i.enqueue(n.slice(0,e)),r(n.slice(e),i)):t=n},flush(e){t&&t.length&&e.enqueue(t)}})}}const Be=new c,Ce=new c;let Ae,Le=0;async function He(e){try{const{options:t,config:n}=e;if(!t.useCompressionStream)try{await self.initModule(e.config)}catch{t.useCompressionStream=!0}n.CompressionStream=self.CompressionStream,n.DecompressionStream=self.DecompressionStream;const i={highWaterMark:1},o=e.readable||new k({async pull(e){const t=new u(e=>Be.set(Le,e));Ze({type:"pull",messageId:Le}),Le=(Le+1)%r.MAX_SAFE_INTEGER;const{value:n,done:i}=await t;e.enqueue(n),i&&e.close()}},i),f=e.writable||new b({async write(e){let t;const n=new u(e=>t=e);Ce.set(Le,t),Ze({type:Se,value:e,messageId:Le}),Le=(Le+1)%r.MAX_SAFE_INTEGER,await n}},i),s=new _e(t,n);Ae=new AbortController;const{signal:l}=Ae;await o.pipeThrough(s).pipeThrough(new xe(n.chunkSize)).pipeTo(f,{signal:l,preventClose:!0,preventAbort:!0}),await f.getWriter().close();const{signature:c,inputSize:a,outputSize:w}=s;Ze({type:ze,result:{signature:c,inputSize:a,outputSize:w}})}catch(e){e.outputSize=0,Ue(e)}}function Ze(e){let{value:t}=e;if(t)if(t.length)try{t=new o(t),e.value=t.buffer,d(e,[e.value])}catch{d(e)}else d(e);else d(e)}function Ue(e=new i("Unknown error")){const{message:t,stack:r,code:n,name:o,outputSize:f}=e;d({error:{message:t,stack:r,code:n,name:o,outputSize:f}})}addEventListener("message",({data:e})=>{const{type:t,messageId:r,value:n,done:i}=e;try{if("start"==t&&He(e),t==Se){const e=Be.get(r);Be.delete(r),e({value:new o(n),done:i})}if("ack"==t){const e=Ce.get(r);Ce.delete(r),e()}t==ze&&Ae.abort()}catch(e){Ue(e)}});var{Uint8Array:Ve,Uint16Array:Ee,Int32Array:Me,TransformStream:Pe,Math:$e,Error:Oe,Array:Te}=globalThis,De=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],Re=new Ve(0),Ne=new Ee(0),Qe=class{constructor(e,t){this.oe=e,this.fe=t,this.se=0}},je=class{constructor(e,t,r,n,i){this.le=e,this.ce=t,this.ae=r,this.ue=n,this.we=i}};function Ke(e,t,r,n,i){if(0==i)return;let o=e instanceof Ve?e:new Ve(e.buffer,e.byteOffset,e.byteLength),f=r instanceof Ve?r.subarray(n,n+i):new Ve(r.buffer,r.byteOffset+n,i);o.set(f,t)}function qe(e,t,r){0!=r&&(e instanceof Ve?e:new Ve(e.buffer,e.byteOffset,e.byteLength)).fill(0,t,t+r)}function Fe(){return{he:Re,de:0,pe:0,ke:0,be:Re,ye:0,me:0,ge:0,ve:"",Ie:0,Se:0,ze:0,_e:void 0}}function We(e,t){let r=1<<t;return{xe:e,Be:new Ve(r),Ce:r,Ae:t,Le:0,He:0,Ze:0,Ue:0}}function Xe(e){return St[-6>e||e>2?9:2-e]||""}function Ge(e,t){try{e.ve=Xe(t)}catch(r){e.ve="zlib error "+t+" ("+r+")"}return t}function Ye(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 Je(e,t){e.Ve[e.Ee++]=t}function et(e,t){Je(e,255&t),Je(e,t>>>8&255)}function tt(e,t,r){let n=255&r,i=65535&t,o=e.Me+e.Pe;return e.Ve[o]=255&i,e.Ve[o+1]=i>>>8&255,e.Ve[o+2]=n,e.Pe+=3,i=i-1&65535,e.Oe[Vt[n]+pt+1].$e++,e.Te[it(i)].$e++,e.Pe==e.De}function rt(e,t){let r=255&t,n=e.Me+e.Pe;return e.Ve[n]=0,e.Ve[n+1]=0,e.Ve[n+2]=r,e.Pe+=3,e.Oe[r].$e++,e.Pe==e.De}function nt(e){return e.Ce-ht}function it(e){return 256>e?Et[e]:Et[256+(e>>7)]}function ot(e){let t=at+7,r=1<<t,n=(1<<t)-1,i=$e.floor((t+ut-1)/ut),o=1<<8+at;return{...We(e,15),xe:e,Re:42,Ne:0,Qe:void 0,je:32767,Ke:t,qe:r,Fe:n,We:i,Xe:new Ee(32768),Ge:new Ee(r),Ye:o,Ve:new Ve(32768),Je:0,et:32768,Ee:0,tt:0,rt:0,nt:0,it:0,ot:0,ft:-2,st:0,lt:0,ct:0,ut:0,wt:0,ht:0,dt:0,kt:0,bt:0,yt:0,gt:0,vt:0,It:0,St:0,zt:new Me(2*kt+1),_t:new Ve(2*kt+1),xt:new Ee(gt+1),Pe:0,De:0,Bt:Re,Me:0,Ct:0,At:0,Lt:8,Ht:32768,Zt:0,Ut:0,Vt:0,Oe:new Te(mt).fill(0).map(()=>({$e:0,Et:0,Mt:0,Pt:0})),Te:new Te(2*bt+1).fill(0).map(()=>({$e:0,Et:0,Mt:0,Pt:0})),$t:new Te(2*yt+1).fill(0).map(()=>({$e:0,Et:0,Mt:0,Pt:0})),Ot:lt(),Tt:lt(),Dt:lt()}}function ft(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],i=e[r+1],o=st();o.Et=n,o.Pt=i,t.push(o)}return t}function st(){return{$e:0,Et:0,Mt:0,Pt:0}}function lt(){return new Qe([],new je(null,Re,0,0,0))}function ct(e){let{code:t,length:r}=(e=>{let t=$e.max(...e),r=new Te(t+1).fill(0);for(let t of e)t>0&&r[t]++;let n=new Te(e.length).fill(0),i=new Te(t+1).fill(0),o=0;for(let e=1;t>=e;e++)o=o+r[e-1]<<1,i[e]=o;for(let t=0;t<e.length;t++){let r=e[t];0!=r&&(n[t]=i[r]++)}return{code:n,length:e}})(e),n=new Te(2*e.length),i=0;for(let o=0;o<e.length;o++){let e=r[o]||0,f=t[o]||0;n[i++]=e?Ye(f,e):0,n[i++]=e}return new Me(n)}var at=8,ut=3,wt=258,ht=wt+ut+1,dt=wt,pt=256,kt=pt+1+29,bt=30,yt=19,mt=2*kt+1,gt=15,vt=256,It=-1,St=["need dictionary","stream end","","file error","stream error","data error","insufficient memory","buffer error",""],zt=new Me([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]),_t=new Me([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]),xt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],Bt=[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],Ct=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],At=((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let i=t[n]?1<<t[n]:1,o=e[n]+i-1;o>r&&(r=o)}let n=new Ve(r+1);for(let i=0;r>=i;i++)for(let r=0;r<e.length;r++){let o=t[r]?1<<t[r]:1,f=e[r];if(i>=f&&f+o-1>=i){n[i]=r;break}}return n})(_t,Bt),Lt=ct((()=>{let e=new Te(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})()),Ht=ct(new Te(30).fill(5)),Zt=ft(Lt),Ut=ft(Ht),Vt=((e,t)=>{let r=0;for(let n=0;n<e.length;n++){let i=t[n]?1<<t[n]:1,o=e[n]+i-1;o>r&&(r=o)}258>r&&(r=258);let n=new Ve(r+1);for(let i=0;r>=i;i++)for(let r=0;r<e.length;r++){let o=t[r]?1<<t[r]:1,f=e[r];if(i>=f&&f+o-1>=i){n[i]=r;break}}return n})(zt,xt),Et=(e=>{let t=new Ve(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})(At);function Mt(e){return e%65521>>>0}function Pt(e,t,r){if(void 0===t||void 0===r)return 1;let n=e>>>16&65535;if(e&=65535,1==r)return(e+=t[0])>=65521&&(e-=65521),n+=e,n>=65521&&(n-=65521),(n<<16|e)>>>0;if(16>r){for(let i=0;r>i;i++)n+=e+=t[i];return e>=65521&&(e-=65521),n=Mt(n),(n<<16|e)>>>0}for(;r>=5552;){r-=5552;let i=$e.floor(347);do{for(let r=0;16>r;r++)n+=e+=t[r];t=t.subarray(16)}while(--i);e=Mt(e),n=Mt(n)}if(r){for(;r>=16;){r-=16;for(let r=0;16>r;r++)n+=e+=t[r];t=t.subarray(16)}for(let i=0;r>i;i++)n+=e+=t[i];e=Mt(e),n=Mt(n)}return(n<<16|e)>>>0}var $t=(()=>{let e=new Te(256);for(let t=0;256>t;t++){let r=t;for(let e=0;8>e;e++)r=1&r?3988292384^r>>>1:r>>>1;e[t]=r>>>0}return e})();function Ot(e=0,t,r){if(!t)return 0;void 0===r&&(r=t.length),r=$e.min(r,t.length),e=~e>>>0;for(let n=0;r>n;n++)e=e>>>8^$t[255&(e^t[n])];return(4294967295^e)>>>0}function Tt(e){16==e.Ue?(et(e,e.Ze),e.Ze=0,e.Ue=0):e.Ue>=8&&(Je(e,e.Ze),e.Ze>>=8,e.Ue-=8)}function Dt(e){e.Ue>8?et(e,e.Ze):e.Ue>0&&Je(e,e.Ze),e.Ct=1+(e.Ue-1&7),e.Ze=0,e.Ue=0}function Rt(e,t,r){e.Ue>16-r?(e.Ze=65535&(e.Ze|t<<e.Ue),et(e,e.Ze),e.Ze=t>>16-e.Ue&65535,e.Ue+=r-16):(e.Ze=65535&(e.Ze|t<<e.Ue),e.Ue+=r)}function Nt(e){for(let t=0;t<e.Oe.length;t++)e.Oe[t].$e=0;for(let t=0;t<e.Te.length;t++)e.Te[t].$e=0;for(let t=0;t<e.$t.length;t++)e.$t[t].$e=0;e.Oe[vt].$e=1,e.rt=e.nt=0,e.Pe=e.it=0}function Qt(e,t,r){return r=e.zt[1],e.zt[1]=e.zt[e.Ut--],Kt(e,t,1),r}function jt(e,t,r,n){return e[t].$e<e[r].$e||e[t].$e==e[r].$e&&n[t]<=n[r]}function Kt(e,t,r){let n=e.zt[r],i=r<<1;for(;i<=e.Ut&&(i<e.Ut&&jt(t,e.zt[i+1],e.zt[i],e._t)&&i++,!jt(t,n,e.zt[i],e._t));)e.zt[r]=e.zt[i],r=i,i<<=1;e.zt[r]=n}function qt(e,t){let r,n,i,o=t.oe,f=t.fe.le,s=t.fe.ue,l=-1;for(e.Ut=0,e.Vt=mt,r=0;s>r;r++)0!=o[r].$e?(e.zt[++e.Ut]=l=r,e._t[r]=0):o[r].Pt=0;for(;2>e.Ut;)i=e.zt[++e.Ut]=2>l?++l:0,o[i].$e=1,e._t[i]=0,e.rt--,f&&(e.nt-=f[i].Pt);for(t.se=l,r=$e.floor(e.Ut/2);r>=1;r--)Kt(e,o,r);i=s;do{r=Qt(e,o,r),n=e.zt[1],e.zt[--e.Vt]=r,e.zt[--e.Vt]=n,o[i].$e=o[r].$e+o[n].$e,e._t[i]=(e._t[r]<e._t[n]?e._t[n]:e._t[r])+1,o[r].Mt=o[n].Mt=i,e.zt[1]=i++,Kt(e,o,1)}while(e.Ut>=2);e.zt[--e.Vt]=e.zt[1],((e,t)=>{let r,n,i,o,f,s,l=t.oe,c=t.se,a=t.fe.le,u=t.fe.ce,w=t.fe.ae,h=t.fe.we,d=0;for(o=0;gt>=o;o++)e.xt[o]=0;for(l[e.zt[e.Vt]].Pt=0,r=e.Vt+1;mt>r;r++)n=e.zt[r],o=l[l[n].Mt].Pt+1,o>h&&(o=h,d++),l[n].Pt=o,c>=n&&(e.xt[o]++,f=0,n>=w&&(f=u[n-w]),s=l[n].$e,e.rt+=s*(o+f),a&&(e.nt+=s*(a[n].Pt+f)));if(0!=d){do{for(o=h-1;0==e.xt[o];)o--;e.xt[o]--,e.xt[o+1]+=2,e.xt[h]--,d-=2}while(d>0);for(o=h;0!=o;o--)for(n=e.xt[o];0!=n;)i=e.zt[--r],c>=i&&(l[i].Pt!=o&&(e.rt+=(o-l[i].Pt)*l[i].$e,l[i].Pt=o),n--)}})(e,t),((e,t,r)=>{let n,i,o=[],f=0;for(n=1;gt>=n;n++)f=f+r[n-1]<<1,o[n]=f;for(i=0;t>=i;i++){let t=e[i].Pt;0!=t&&(e[i].Et=Ye(o[t]++,t))}})(o,t.se,e.xt)}function Ft(e,t,r){let n,i,o=-1,f=t[0].Pt,s=0,l=7,c=4;for(0==f&&(l=138,c=3),t[r+1].Pt=65535,n=0;r>=n;n++)i=f,f=t[n+1].Pt,(++s>=l||i!=f)&&(c>s?e.$t[i].$e+=s:0!=i?(i!=o&&e.$t[i].$e++,e.$t[16].$e++):s>10?e.$t[18].$e++:e.$t[17].$e++,s=0,o=i,0==f?(l=138,c=3):i==f?(l=6,c=3):(l=7,c=4))}function Wt(e,t,r){let n,i=-1,o=t[0].Pt,f=0,s=7,l=4;0==o&&(s=138,l=3);for(let c=0;r>=c;c++)if(n=o,o=t[c+1].Pt,++f>=s||n!=o){if(l>f)do{Rt(e,e.$t[n].Et,e.$t[n].Pt)}while(0!=--f);else 0!=n?(n!=i&&(Rt(e,e.$t[n].Et,e.$t[n].Pt),f--),Rt(e,e.$t[16].Et,e.$t[16].Pt),Rt(e,f-3,2)):f>10?(Rt(e,e.$t[18].Et,e.$t[18].Pt),Rt(e,f-11,7)):(Rt(e,e.$t[17].Et,e.$t[17].Pt),Rt(e,f-3,3));f=0,i=n,0==o?(s=138,l=3):n==o?(s=6,l=3):(s=7,l=4)}}function Xt(e,t,r,n,i=0){Rt(e,0+n,3),Dt(e),et(e,r),et(e,~r),r&&t&&Ke(e.Ve,e.Ee,t,i,r),e.Ee+=r}function Gt(e,t,r){let n,i,o,f,s=0;if(0!=e.Pe)do{n=255&e.Bt[s],n+=(255&e.Bt[s+1])<<8,i=e.Bt[s+2],s+=3,0==n?Rt(e,t[i].Et,t[i].Pt):(o=Vt[i],Rt(e,t[o+pt+1].Et,t[o+pt+1].Pt),f=xt[o],0!=f&&(i-=zt[o],Rt(e,i,f)),n--,o=it(n),Rt(e,r[o].Et,r[o].Pt),f=Bt[o],0!=f&&(n-=_t[o],Rt(e,n,f)))}while(s<e.Pe);Rt(e,t[vt].Et,t[vt].Pt)}var Yt=[{Rt:br,Nt:0,Qt:0,jt:0,Kt:0},{Rt:yr,Nt:4,Qt:4,jt:8,Kt:4},{Rt:yr,Nt:5,Qt:5,jt:16,Kt:8},{Rt:yr,Nt:6,Qt:16,jt:32,Kt:32},{Rt:mr,Nt:4,Qt:4,jt:16,Kt:16},{Rt:mr,Nt:16,Qt:8,jt:16,Kt:32},{Rt:mr,Nt:16,Qt:16,jt:32,Kt:128},{Rt:mr,Nt:32,Qt:32,jt:128,Kt:256},{Rt:mr,Nt:128,Qt:128,jt:256,Kt:1024},{Rt:mr,Nt:258,Qt:258,jt:258,Kt:4096}];function Jt(e){return 2*e-(e>4?9:0)}function er(e,t,r){return((t<<e.We^r)&e.Fe)>>>0}function tr(e,t){e.kt=er(e,e.kt,e.Be[t+(ut-1)]);let r=e.Xe[t&e.je]=e.Ge[e.kt];return e.Ge[e.kt]=t,r}function rr(e){e.Ge[e.qe-1]=0,qe(e.Ge,0,(e.qe-1)*e.Ge.BYTES_PER_ELEMENT)}function nr(e){let t,r,n=e.Ce;for(t=e.qe;t>0;)t--,r=e.Ge[t],e.Ge[t]=n>r?0:r-n;for(t=n;t>0;)t--,r=e.Xe[t],e.Xe[t]=n>r?0:r-n}function ir(e,t,r,n){let i=e.pe;return i>n&&(i=n),0==i?0:(e.pe-=i,Ke(t,r,e.he,e.de,i),1==e._e.Ne?e.Se=Pt(e.Se,new Ve(t.buffer,t.byteOffset+r,i),i):2==e._e.Ne&&(e.Se=Ot(e.Se,new Ve(t.buffer,t.byteOffset+r,i),i)),e.de+=i,e.ke+=i,i)}function or(e){let t,r,n=e.Ce;do{if(r=e.Ht-e.ct-e.lt,0==r&&0==e.lt&&0==e.ct?r=n:-1==r&&r--,e.lt>=n+nt(e)&&(Ke(e.Be,0,e.Be,n,n-r),e.Zt-=n,e.lt-=n,e.st-=n,e.ot>e.lt&&(e.ot=e.lt),nr(e),r+=n),0==e.xe.pe)break;if(t=ir(e.xe,e.Be,e.lt+e.ct,r),e.ct+=t,e.ct+e.ot>=ut){let t=e.lt-e.ot;for(e.kt=e.Be[t],e.kt=er(e,e.kt,e.Be[t+1]);e.ot&&(e.kt=er(e,e.kt,e.Be[t+ut-1]),e.Xe[t&e.je]=e.Ge[e.kt],e.Ge[e.kt]=t,t++,e.ot--,e.ct+e.ot>=ut););}}while(e.ct<ht&&0!=e.xe.pe);if(e.Le<e.Ht){let t,r=e.lt+e.ct;e.Le<r?(t=e.Ht-r,t>dt&&(t=dt),qe(e.Be,r,t),e.Le=r+t):e.Le<r+dt&&(t=r+dt-e.Le,t>e.Ht-e.Le&&(t=e.Ht-e.Le),qe(e.Be,e.Le,t),e.Le+=t)}}function fr(e){if(null==e)return!0;let t=e._e;return!t||t.xe!=e||42!=t.Re&&57!=t.Re&&69!=t.Re&&73!=t.Re&&91!=t.Re&&103!=t.Re&&113!=t.Re&&666!=t.Re}function sr(e,t){Je(e,t>>8),Je(e,255&t)}function lr(e){let t,r=e._e;(e=>{Tt(e)})(r),t=r.Ee,t>e.me&&(t=e.me),0!=t&&(Ke(e.be,e.ye,r.Ve,r.tt,t),e.ye+=t,r.tt+=t,e.ge+=t,e.me-=t,r.Ee-=t,0==r.Ee&&(r.tt=r.Je))}function cr(e,t){let r=e._e;r.Qe&&r.Qe.qt&&(e.Se=Ot(e.Se,new Ve(r.Ve.buffer,r.Je+t,r.Ee-t),r.Ee-t))}function ar(e,t){let r,n=e._e;if(fr(e)||t>5||0>t)return Ge(e,-2);if(!e.be||0!=e.pe&&!e.he||666==n.Re&&4!=t)return Ge(e,-2);if(0==e.me)return Ge(e,-5);if(r=n.ft,n.ft=t,0!=n.Ee){if(lr(e),0==e.me)return n.ft=It,0}else if(0==e.pe&&Jt(t)<=Jt(r)&&4!=t)return Ge(e,-5);if(666==n.Re&&0!=e.pe)return Ge(e,-5);if(42==n.Re&&0==n.Ne&&(n.Re=113),42==n.Re){let t,r=8+(n.Ae-8<<4)<<8;if(t=n.yt>=2||2>n.bt?0:6>n.bt?1:6==n.bt?2:3,r|=t<<6,0!=n.lt&&(r|=32),r+=31-r%31,sr(n,r),0!=n.lt&&(sr(n,e.Se>>16),sr(n,65535&e.Se)),e.Se=1,n.Re=113,lr(e),0!=n.Ee)return n.ft=It,0}if(57==n.Re)if(e.Se=Ot(0),Je(n,31),Je(n,139),Je(n,8),n.Qe)Je(n,(n.Qe.Ft?1:0)+(n.Qe.qt?2:0)+(null==n.Qe.Wt?0:4)+(null==n.Qe.Xt?0:8)+(null==n.Qe.Gt?0:16)),Je(n,255&n.Qe.Yt),Je(n,n.Qe.Yt>>>8&255),Je(n,n.Qe.Yt>>>16&255),Je(n,n.Qe.Yt>>>24&255),Je(n,9==n.bt?2:n.yt>=2||2>n.bt?4:0),Je(n,255&n.Qe.Jt),null!=n.Qe.Wt&&(Je(n,255&n.Qe.er),Je(n,n.Qe.er>>>8&255)),n.Qe.qt&&(e.Se=Ot(e.Se,n.Ve,n.Ee)),n.At=0,n.Re=69;else if(Je(n,0),Je(n,0),Je(n,0),Je(n,0),Je(n,0),Je(n,9==n.bt?2:n.yt>=2||2>n.bt?4:0),Je(n,255),n.Re=113,lr(e),0!=n.Ee)return n.ft=It,0;if(69==n.Re){if(n.Qe&&null!=n.Qe.Wt){let t=n.Ee,r=(65535&n.Qe.er)-n.At;for(;n.Ee+r>n.et;){let i=n.et-n.Ee;if(Ke(n.Ve,n.Ee,n.Qe.Wt,n.At,i),n.Ee=n.et,cr(e,t),n.At+=i,lr(e),0!=n.Ee)return n.ft=It,0;t=0,r-=i}Ke(n.Ve,n.Ee,n.Qe.Wt,n.At,r),n.Ee+=r,cr(e,t),n.At=0}n.Re=73}if(73==n.Re){if(n.Qe&&n.Qe.Xt&&n.Qe.Xt.length){let t,r=n.Ee;do{if(n.Ee==n.et){if(cr(e,r),lr(e),0!=n.Ee)return n.ft=It,0;r=0}t=n.Qe.Xt[n.At++],Je(n,t)}while(0!=t);cr(e,r),n.At=0}n.Re=91}if(91==n.Re){if(n.Qe&&n.Qe.Gt&&n.Qe.Gt.length){let t,r=n.Ee;do{if(n.Ee==n.et){if(cr(e,r),lr(e),0!=n.Ee)return n.ft=It,0;r=0}t=n.Qe.Gt[n.At++],Je(n,t)}while(0!=t);cr(e,r)}n.Re=103}if(103==n.Re){if(n.Qe&&n.Qe.qt){if(n.Ee+2>n.et&&(lr(e),0!=n.Ee))return n.ft=It,0;Je(n,255&e.Se),Je(n,e.Se>>>8&255),e.Se=Ot(0)}if(n.Re=113,lr(e),0!=n.Ee)return n.ft=It,0}if(0!=e.pe||0!=n.ct||0!=t&&666!=n.Re){let r=0==n.bt?br(n,t):2==n.yt?((e,t)=>{let r=!1;for(;;){if(0==e.ct&&(or(e),0==e.ct)){if(0==t)return 0;break}if(e.ut=0,r=rt(e,e.Be[e.lt]),e.ct--,e.lt++,r){let t=dr(e,!1);if(null!=t)return t}}if(e.ot=0,4==t)return dr(e,!0)??3;if(e.Pe){let t=dr(e,!1);if(null!=t)return t}return 1})(n,t):3==n.yt?((e,t)=>{let r,n,i,o;for(;;){if(e.ct<=wt){if(or(e),e.ct<=wt&&0==t)return 0;if(0==e.ct)break}if(e.ut=0,e.ct>=ut&&e.lt>0&&(i=e.lt-1,n=e.Be[i],n==++i&&n==++i&&n==++i)){o=e.lt+wt;do{}while(n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&n==++i&&o>i);e.ut=wt-(o-i),e.ut>e.ct&&(e.ut=e.ct)}if(e.ut<ut?(r=rt(e,e.Be[e.lt]),e.ct--,e.lt++):(e.lt,e.lt,e.ut,r=tt(e,1,e.ut-ut),e.ct-=e.ut,e.lt+=e.ut,e.ut=0),r){let t=dr(e,!1);if(null!=t)return t}}if(e.ot=0,4==t)return dr(e,!0)??3;if(e.Pe){let t=dr(e,!1);if(null!=t)return t}return 1})(n,t):Yt[n.bt].Rt(n,t);if((2==r||3==r)&&(n.Re=666),0==r||2==r)return 0==e.me&&(n.ft=It),0;if(1==r&&(1==t?(e=>{Rt(e,2,3),Rt(e,Zt[vt].Et,Zt[vt].Pt),Tt(e)})(n):5!=t&&(Xt(n,null,0,0),3==t&&(rr(n),0==n.ct&&(n.lt=0,n.st=0,n.ot=0))),lr(e),0==e.me))return n.ft=It,0}return 4!=t?0:n.Ne>0?(2==n.Ne?(Je(n,255&e.Se),Je(n,e.Se>>>8&255),Je(n,e.Se>>>16&255),Je(n,e.Se>>>24&255),Je(n,255&e.ke),Je(n,e.ke>>>8&255),Je(n,e.ke>>>16&255),Je(n,e.ke>>>24&255)):(sr(n,e.Se>>>16&65535),sr(n,65535&e.Se)),lr(e),n.Ne>0&&(n.Ne=-n.Ne),0!=n.Ee?0:1):1}function ur(e){if(fr(e))return-2;let t=e._e,r=t.Re;return t.Be=Re,t.Xe=Ne,t.Ge=Ne,t.Ve=Re,t.Bt=Re,t.zt=new Me(0),t._t=Re,t.xt=Ne,t.Oe.length=0,t.Te.length=0,t.$t.length=0,t.Qe=void 0,t.Je=0,t.tt=0,t.Me=0,113==r?-3:0}function wr(e,t){let r,n,i=e.It,o=e.lt,f=e.wt,s=e.vt,l=e.lt>nt(e)?e.lt-nt(e):0,c=e.Xe,a=e.je,u=e.Be[o],w=e.Be[o+1],h=e.Be[o+f-1],d=e.Be[o+f];e.wt>=e.gt&&(i>>=2),s>e.ct&&(s=e.ct);do{if(r=t,e.Be[r+f]!=d||e.Be[r+f-1]!=h||e.Be[r]!=u||e.Be[r+1]!=w)continue;let i=$e.min(wt,e.ct),l=2;for(;i>l&&e.Be[o+l]==e.Be[r+l];)l++;if(n=l,n>f){if(e.Zt=t,f=n,n>=s)break;h=e.Be[o+f-1],d=e.Be[o+f]}}while((t=c[t&a])>l&&0!=--i);return f>e.ct?e.ct:f}function hr(e,t){((e,t,r,n,i=0)=>{let o,f,s=0;e.bt>0?(2==e.xe.Ie&&(e.xe.Ie=(e=>{let t,r=4093624447;for(t=0;31>=t;t++,r>>=1)if(1&r&&0!=e.Oe[t].$e)return 0;if(0!=e.Oe[9].$e||0!=e.Oe[10].$e||0!=e.Oe[13].$e)return 1;for(t=32;pt>t;t++)if(0!=e.Oe[t].$e)return 1;return 0})(e)),qt(e,e.Ot),qt(e,e.Tt),s=(e=>{let t;for(Ft(e,e.Oe,e.Ot.se),Ft(e,e.Te,e.Tt.se),qt(e,e.Dt),t=yt-1;t>=3&&0==e.$t[De[t]].Pt;t--);return e.rt+=14+3*(t+1),t})(e),o=e.rt+3+7>>3,f=e.nt+3+7>>3,(o>=f||4==e.yt)&&(o=f)):o=f=r+5,o>=r+4&&t?Xt(e,t,r,n,i):f==o?(Rt(e,2+n,3),Gt(e,Zt,Ut)):(Rt(e,4+n,3),((e,t,r,n)=>{let i;for(Rt(e,t-257,5),Rt(e,r-1,5),Rt(e,n-4,4),i=0;n>i;i++)Rt(e,e.$t[De[i]].Pt,3);Wt(e,e.Oe,t-1),Wt(e,e.Te,r-1)})(e,e.Ot.se+1,e.Tt.se+1,s+1),Gt(e,e.Oe,e.Te)),Nt(e),n&&Dt(e)})(e,e.Be,e.lt-e.st,t,e.st),e.st=e.lt,lr(e.xe)}function dr(e,t){return hr(e,t?1:0),0==e.xe.me?t?2:0:null}var pr=65535;function kr(e,t){return t>e?e:t}function br(e,t){let r,n,i,o=kr(e.et-5,e.Ce),f=0,s=e.xe.pe;do{if(r=pr,i=e.Ue+42>>3,e.xe.me<i||(i=e.xe.me-i,n=e.lt-e.st,r>n+e.xe.pe&&(r=n+e.xe.pe),r>i&&(r=i),o>r&&(0==r&&4!=t||0==t||r!=n+e.xe.pe)))break;f=4==t&&r==n+e.xe.pe?1:0,Xt(e,null,0,f),e.Ve[e.Ee-4]=r,e.Ve[e.Ee-3]=r>>8,e.Ve[e.Ee-2]=~r,e.Ve[e.Ee-1]=~r>>8,lr(e.xe),n&&(n>r&&(n=r),Ke(e.xe.be,e.xe.ye,e.Be,e.st,n),e.xe.ye+=n,e.xe.me-=n,e.xe.ge+=n,e.st+=n,r-=n),r&&(ir(e.xe,e.xe.be,e.xe.ye,r),e.xe.ye+=r,e.xe.me-=r,e.xe.ge+=r)}while(0==f);if(s-=e.xe.pe,s){if(s<e.Ce)e.Ht-e.lt<=s&&(e.lt-=e.Ce,Ke(e.Be,0,e.Be,e.Ce,e.lt),2>e.it&&e.it++,e.ot>e.lt&&(e.ot=e.lt)),Ke(e.Be,e.lt,e.xe.he,e.xe.de-s,s),e.lt+=s,e.ot+=kr(s,e.Ce-e.ot);else{e.it=2;let t=e.xe.de-e.Ce;Ke(e.Be,0,e.xe.he,t,e.Ce),e.lt=e.Ce,e.ot=e.lt}e.st=e.lt}return e.Le<e.lt&&(e.Le=e.lt),f?(e.Ct=8,3):0!=t&&4!=t&&0==e.xe.pe&&e.lt==e.st?1:(i=e.Ht-e.lt,e.xe.pe>i&&e.st>=e.Ce&&(e.st-=e.Ce,e.lt-=e.Ce,Ke(e.Be,0,e.Be,e.Ce,e.lt),2>e.it&&e.it++,i+=e.Ce,e.ot>e.lt&&(e.ot=e.lt)),i>e.xe.pe&&(i=e.xe.pe),i&&(ir(e.xe,e.Be,e.lt,i),e.lt+=i,e.ot+=kr(i,e.Ce-e.ot)),e.Le<e.lt&&(e.Le=e.lt),i=e.Ue+42>>3,i=kr(e.et-i,pr),o=kr(i,e.Ce),n=e.lt-e.st,(n>=o||(n||4==t)&&0!=t&&0==e.xe.pe&&i>=n)&&(r=kr(n,i),f=4==t&&0==e.xe.pe&&r==n?1:0,Xt(e,e.Be,r,f,e.st),e.st+=r,lr(e.xe)),f&&(e.Ct=8),f?2:0)}function yr(e,t){let r,n=!1;for(;;){if(e.ct<ht){if(or(e),e.ct<ht&&0==t)return 0;if(0==e.ct)break}if(r=0,e.ct>=ut&&(r=tr(e,e.lt)),0!=r&&e.lt-r<=nt(e)&&(e.ut=wr(e,r)),e.ut<ut)n=rt(e,e.Be[e.lt]),e.ct--,e.lt++;else if(e.lt,e.Zt,e.ut,n=tt(e,e.lt-e.Zt,e.ut-ut),e.ct-=e.ut,e.ut>e.St||e.ct<ut)e.lt+=e.ut,e.ut=0,e.kt=e.Be[e.lt],e.kt=er(e,e.kt,e.Be[e.lt+1]);else{e.ut--;do{e.lt++,r=tr(e,e.lt)}while(0!=--e.ut);e.lt++}if(n){let t=dr(e,!1);if(null!=t)return t}}if(e.ot=e.lt<ut-1?e.lt:ut-1,4==t)return dr(e,!0)??3;if(e.Pe){let t=dr(e,!1);if(null!=t)return t}return 1}function mr(e,t){let r,n=!1;for(;;){if(e.ct<ht){if(or(e),e.ct<ht&&0==t)return 0;if(0==e.ct)break}if(r=0,e.ct>=ut&&(r=tr(e,e.lt)),e.wt=e.ut,e.ht=e.Zt,e.ut=ut-1,0!=r&&e.wt<e.St&&e.lt-r<=nt(e)&&(e.ut=wr(e,r),5>=e.ut&&1==e.yt&&(e.ut=ut-1)),e.wt<ut||e.ut>e.wt)if(e.dt){if(n=rt(e,e.Be[e.lt-1]),n&&hr(e,0),e.lt++,e.ct--,0==e.xe.me)return 0}else e.dt=1,e.lt++,e.ct--;else{let t=e.lt+e.ct-ut;e.lt,e.ht,e.wt,n=tt(e,e.lt-1-e.ht,e.wt-ut),e.ct-=e.wt-1,e.wt-=2;do{++e.lt<=t&&(r=tr(e,e.lt))}while(0!=--e.wt);if(e.dt=0,e.ut=ut-1,e.lt++,n){let t=dr(e,!1);if(null!=t)return t}}}if(e.dt&&(n=rt(e,e.Be[e.lt-1]),e.dt=0),e.ot=e.lt<ut-1?e.lt:ut-1,4==t)return dr(e,!0)??3;if(e.Pe){let t=dr(e,!1);if(null!=t)return t}return 1}var gr=new Ee([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]),vr=Cr([16,8,17,4,18,4,19,4,20,4,21,4,16,1,73,1,200,1]),Ir=new Ee([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]),Sr=Cr([16,4,17,2,18,2,19,2,20,2,21,2,22,2,23,2,24,2,25,2,26,2,27,2,28,2,29,2,64,2]),zr=new Ee([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,3,0,0]),_r=Cr([128,8,129,4,130,4,131,4,132,4,133,4,16,1,73,1,200,1]),xr=new Ee([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,32769,49153]),Br=Cr([128,4,129,2,130,2,131,2,132,2,133,2,134,2,135,2,136,2,137,2,138,2,139,2,140,2,141,2,142,2]);function Cr(e){let t=[];for(let r=0;r<e.length;r+=2){let n=e[r],i=e[r+1];for(let e=0;i>e;e++)t.push(n)}return new Ee(t)}function Ar(e,t){let r,n=e._e,i=e.de,o=e.ye,f=e.he,s=e.be,l=n.Be,c=n.Ze>>>0,a=n.Ue>>>0,u=n.tr,w=n.rr,h=(1<<n.nr)-1,d=(1<<n.ir)-1,p=n.Ce>>>0,k=n.Le>>>0,b=n.He>>>0,y=n.sr,m=o-(t-e.me),g=o+(e.me-257),v=i+(e.pe-5),I=0,S=0,z=0,_=0;e:do{for(;15>a;){if(i>=f.length)break e;c+=f[i++]<<a,a+=8}for(r=u[c&h];;){if(z=r.lr,c>>>=z,a-=z,z=r.cr,0==z){s[o++]=r.ar;break}if(16&z){if(I=r.ar,z&=15,z){for(;z>a;){if(i>=f.length){n.ur=16200;break e}c+=f[i++]<<a,a+=8}I+=c&(1<<z)-1,c>>>=z,a-=z}for(;15>a;){if(i>=f.length){n.ur=16200;break e}c+=f[i++]<<a,a+=8}for(r=w[c&d];;){if(z=r.lr,c>>>=z,a-=z,z=r.cr,16&z){if(S=r.ar,z&=15,z){for(;z>a;){if(i>=f.length){n.ur=16200;break e}c+=f[i++]<<a,a+=8}S+=c&(1<<z)-1,c>>>=z,a-=z}let t=I,u=o-m;if(S>u){let r=S-u;if(r>k&&y){e.ve="invalid distance too far back",n.ur=16209;break e}if(0==b){if(_=p-r,r>=t){for(let e=0;t>e;++e)s[o++]=l[_++];continue e}for(let e=0;r>e;++e)s[o++]=l[_++];t-=r,_=o-S}else if(r>b){_=p+b-r;let e=r-b;if(e>=t){for(let e=0;t>e;++e)s[o++]=l[_++];continue e}for(let t=0;e>t;++t)s[o++]=l[_++];if(t-=e,_=0,t>b){for(let e=0;b>e;++e)s[o++]=l[_++];t-=b,_=o-S}}else{if(_=b-r,r>=t){for(let e=0;t>e;++e)s[o++]=l[_++];continue e}for(let e=0;r>e;++e)s[o++]=l[_++];t-=r,_=o-S}for(;t>2;)s[o++]=s[_++],s[o++]=s[_++],s[o++]=s[_++],t-=3;t&&(s[o++]=s[_++],t>1&&(s[o++]=s[_++]))}else{for(_=o-S;t>2;)s[o++]=s[_++],s[o++]=s[_++],s[o++]=s[_++],t-=3;t&&(s[o++]=s[_++],t>1&&(s[o++]=s[_++]))}break}if(64&z){e.ve="invalid distance code",n.ur=16209;break e}r=w[r.ar+(c&(1<<z)-1)]}break}if(64&z){if(32&z){n.ur=16191;break e}e.ve="invalid literal/length code",n.ur=16209;break e}r=u[r.ar+(c&(1<<z)-1)]}}while(v>i&&g>o);let x=a>>3;i-=x,a-=x<<3,c&=(1<<a)-1,e.de=i,e.ye=o,e.pe=v>i?v-i+5:5-(i-v),e.me=g>o?g-o+257:257-(o-g),n.Ze=c>>>0,n.Ue=a>>>0}function Lr(e,t){let r=[],n=t?1446:1444;return{...We(e,0),xe:e,ur:16180,wr:!1,Ne:0,hr:!1,dr:0,pr:0,kr:0,br:0,Be:Re,yr:0,mr:0,Wt:0,tr:r,rr:r,nr:0,ir:0,gr:0,vr:0,Ir:0,Sr:0,zr:r,_r:new Ee(320),Br:new Ee(288),Cr:new Te(n).fill(null).map(()=>Hr()),Ar:0,sr:!0,Lr:0,Hr:0,Zr:t}}function Hr(e=0,t=0,r=0){return{cr:e,lr:t,ar:r}}function Zr(e=1){return{cr:64,lr:e,ar:0}}function Ur(e){return(255&e)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>24&255}var Vr={Zr:!1,Ur:gr,Vr:vr,Er:Ir,Mr:Sr,Pr:20,$r:257,Or:0,Tr:592,Dr:!1,Rr:!0},Er={Zr:!0,Ur:zr,Vr:_r,Er:xr,Mr:Br,Pr:19,$r:256,Or:-1,Tr:594,Dr:!0,Rr:!1};function Mr(e,t,r,n,i,o,f,s){let l,c,a,u,w,h,d,p,k,b,y,m,g,v,I,S,z,_,x,B=new Ee(16),C=new Ee(16),A=s?Er:Vr;for(l=0;15>=l;l++)B[l]=0;for(c=0;r>c;c++)B[t[c]]++;for(w=i.Nr,u=15;u>=1&&0==B[u];u--);if(w>u&&(w=u),0==u)return A.Rr?(I=Zr(1),n.Nr[0]=I,n.Nr[1]=I,i.Nr=1,0):-1;for(a=1;u>a&&0==B[a];a++);for(a>w&&(w=a),p=1,l=1;15>=l;l++)if(p<<=1,p-=B[l],0>p)return-1;if(p>0&&(0==e||1!=u))return-1;for(C[1]=0,l=1;15>l;l++)C[l+1]=C[l]+B[l];for(c=0;r>c;c++)0!=t[c]&&(o[C[t[c]]++]=c);switch(e){case 0:z=_=o,x=A.Pr;break;case 1:z=A.Ur,_=A.Vr,x=A.$r;break;default:z=A.Er,_=A.Mr,x=A.Or}if(b=0,c=0,l=a,S=f.Nr,h=w,d=0,g=-1,k=1<<w,v=k-1,1==e&&(A.Dr?k>=852:k>852)||2==e&&(A.Dr?k>=A.Tr:k>A.Tr))return 1;for(;;){I=Pr(o,c,l,d,e,z,_,x,A.Zr),y=1<<l-d,m=1<<h,a=m;do{m-=y;let e=(b>>d)+m;n.Nr[S+e]={...I}}while(0!=m);for(y=1<<l-1;b&y;)y>>=1;if(0!=y?(b&=y-1,b+=y):b=0,c++,0==--B[l]){if(l==u)break;l=t[o[c]]}if(l>w&&(b&v)!=g){for(0==d&&(d=w),S+=1<<h,h=l-d,p=1<<h;u>h+d&&(p-=B[h+d],p>0);)h++,p<<=1;if(k+=1<<h,1==e&&(A.Dr?k>=852:k>852)||2==e&&(A.Dr?k>=A.Tr:k>A.Tr))return 1;g=b&v,n.Nr[f.Nr+g]={cr:h,lr:w,ar:S-f.Nr}}}if(0!=b)for(I=Zr(l-d);0!=b;){for(0!=d&&(b&v)!=g&&(d=0,l=w,S=f.Nr,h=w,I.lr=l),n.Nr[S+(b>>d)]={...I},y=1<<l-1;b&y;)y>>=1;0!=y?(b&=y-1,b+=y):b=0}return f.Nr+=k,i.Nr=w,0}function Pr(e,t,r,n,i,o,f,s,l){let c;if(l?e[t]<s:e[t]+1<s)c=Hr(0,r-n,e[t]);else if(l?e[t]>s:e[t]>=s)if(l&&1==i){let i=e[t]-257;c=Hr(f[i],r-n,o[i])}else{let i=l?e[t]:e[t]-s;c=Hr(f[i],r-n,o[i])}else c=((e=0)=>({cr:96,lr:e,ar:0}))(r-n);return c}var $r,Or,Tr=new Te(544),Dr=!0;function Rr(e){let t;return!(e&&(t=e._e,!(!t||t.xe!=e||t.Zr&&(16191>t.ur||t.ur>16209)||!t.Zr&&(16180>t.ur||t.ur>16211))))}function Nr(e){let t={Nr:0};if(Dr){let r,n,i;for(r=0;144>r;)e._r[r++]=8;for(;256>r;)e._r[r++]=9;for(;280>r;)e._r[r++]=7;for(;288>r;)e._r[r++]=8;for(let e=0;544>e;e++)Tr[e]=Hr();i=Tr,$r=i,n=9;let o={Nr:i},f={Nr:n},s={Nr:0};for(Mr(1,e._r,288,o,f,e.Br,s,e.Zr),i=o.Nr,n=f.Nr,e.Ar=s.Nr,r=0;32>r;)e._r[r++]=5;n=5;let l=s.Nr,c={Nr:i},a={Nr:n};t.Nr=l,Mr(2,e._r,32,c,a,e.Br,t,e.Zr),Or=i.slice(l),Dr=!1}e.tr=$r,e.nr=9,e.rr=Or,e.ir=5,e.Ar=t.Nr}var Qr=class extends Oe{constructor(){super("Need more input")}};function jr(e,t){let r,n,i,o,f,s,l,c,a,u,w,h,d,p,k,b,y,m=new Ve(4);if(Rr(e)||!e.be||!e.he&&0!=e.pe)return-2;s=0,c=0,l=0,a=0,n=Re,i=0,o=Re,f=0,r=e._e,16191==r.ur&&(r.ur=16192),z(),u=s,w=l,y=0;try{for(;;)switch(r.ur){case 16180:if(0==r.Ne){r.ur=16192;break}if(C(16),2&r.Ne&&35615==c){0==r.Ae&&(r.Ae=15),r.kr=Ot(0),r.kr=I(r.kr,c),x(),r.ur=16181;break}if(r.Qe&&(r.Qe.Qr=-1),!(1&r.Ne)||((A(8)<<8)+(c>>8))%31){e.ve="incorrect header check",r.ur=16209;break}if(8!=A(4)){e.ve="unknown compression method",r.ur=16209;break}if(L(4),b=A(4)+8,0==r.Ae&&(r.Ae=b),b>15||b>r.Ae){e.ve="invalid window size",r.ur=16209;break}r.pr=1<<b,r.dr=0,e.Se=r.kr=Pt(0),r.ur=512&c?16189:16191,x();break;case 16181:if(C(16),r.dr=c,8!=(255&r.dr)){e.ve="unknown compression method",r.ur=16209;break}if(57344&r.dr){e.ve="unknown header flags set",r.ur=16209;break}r.Qe&&(r.Qe.Ft=c>>8&1),512&r.dr&&4&r.Ne&&(r.kr=I(r.kr,c)),x(),r.ur=16182;case 16182:C(32),r.Qe&&(r.Qe.Yt=c),512&r.dr&&4&r.Ne&&(r.kr=S(r.kr,c)),x(),r.ur=16183;case 16183:C(16),r.Qe&&(r.Qe.jr=255&c,r.Qe.Jt=c>>8),512&r.dr&&4&r.Ne&&(r.kr=I(r.kr,c)),x(),r.ur=16184;case 16184:1024&r.dr?(C(16),r.yr=c,r.Qe&&(r.Qe.er=c),512&r.dr&&4&r.Ne&&(r.kr=I(r.kr,c)),x()):r.Qe&&(r.Qe.Wt=Re),r.ur=16185;case 16185:if(1024&r.dr&&(h=r.yr,h>s&&(h=s),h&&(r.Qe&&r.Qe.Wt&&r.Qe.Kr&&(b=r.Qe.er-r.yr)<r.Qe.Kr&&Ke(r.Qe.Wt,b,n,i,h),512&r.dr&&4&r.Ne&&(r.kr=Ot(r.kr,n.subarray(i,i+h),h)),s-=h,i+=h,r.yr-=h),r.yr))return g();r.yr=0,r.ur=16186;case 16186:if(2048&r.dr){if(0==s)return g();h=0;do{b=n[i+h++],r.Qe&&r.Qe.qr&&r.yr<r.Qe.qr&&(r.Qe.Xt[r.yr++]=b)}while(b&&s>h);if(512&r.dr&&4&r.Ne&&(r.kr=Ot(r.kr,n.subarray(i,i+h),h)),s-=h,i+=h,b)return g()}else r.Qe&&(r.Qe.Xt=Re);r.yr=0,r.ur=16187;case 16187:if(4096&r.dr){if(0==s)return g();h=0;do{b=n[i+h++],r.Qe&&r.Qe.Fr&&r.yr<r.Qe.Fr&&(r.Qe.Gt[r.yr++]=b)}while(b&&s>h);if(512&r.dr&&4&r.Ne&&(r.kr=Ot(r.kr,n.subarray(i,i+h),h)),s-=h,i+=h,b)return g()}else r.Qe&&(r.Qe.Gt=Re);r.ur=16188;case 16188:if(512&r.dr){if(C(16),4&r.Ne&&c!=(65535&r.kr)){e.ve="header crc mismatch",r.ur=16209;break}x()}r.Qe&&(r.Qe.qt=r.dr>>9&1,r.Qe.Qr=1),e.Se=r.kr=Ot(0),r.ur=16191;break;case 16189:C(32),e.Se=r.kr=Ur(c),x(),r.ur=16190;case 16190:if(!r.hr)return _(),2;e.Se=r.kr=Pt(0),r.ur=16191;case 16191:if(5==t||6==t)return g();case 16192:if(r.wr){H(),r.ur=16206;break}switch(C(3),r.wr=!!A(1),L(1),A(2)){case 0:r.ur=16193;break;case 1:if(Nr(r),r.ur=16199,6==t)return L(2),g();break;case 2:r.ur=16196;break;case 3:e.ve="invalid block type",r.ur=16209}L(2);break;case 16193:if(H(),C(32),(65535&c)!=(c>>>16^65535)){e.ve="invalid stored block lengths",r.ur=16209;break}if(r.yr=65535&c,x(),r.ur=16194,6==t)return g();case 16194:r.ur=16195;case 16195:if(h=r.yr,h){if(h>s&&(h=s),h>l&&(h=l),0==h)return g();Ke(o,f,n,i,h),s-=h,i+=h,l-=h,f+=h,r.yr-=h;break}r.ur=16191;break;case 16196:if(C(14),r.vr=A(5)+257,L(5),r.Ir=A(5)+1,L(5),r.gr=A(4)+4,L(4),r.vr>286||!r.Zr&&r.Ir>30){e.ve=r.Zr?"too many length":"too many length or distance symbols",r.ur=16209;break}r.Sr=0,r.ur=16197;case 16197:for(;r.Sr<r.gr;)C(3),r._r[De[r.Sr++]]=A(3),L(3);for(;19>r.Sr;)r._r[De[r.Sr++]]=0;r.zr=r.Cr,r.tr=r.rr=r.zr,r.nr=7;let u={Nr:r.zr},m={Nr:r.nr},Z={Nr:0};if(y=Mr(0,r._r,19,u,m,r.Br,Z,r.Zr),r.zr=u.Nr,r.nr=m.Nr,y){e.ve="invalid code lengths set",r.ur=16209;break}r.Sr=0,r.ur=16198;case 16198:for(;r.Sr<r.vr+r.Ir;){for(;p=r.tr[A(r.nr)],p.lr>a;)B();if(16>p.ar)L(p.lr),r._r[r.Sr++]=p.ar;else{if(16==p.ar){if(C(p.lr+2),L(p.lr),0==r.Sr){e.ve="invalid bit length repeat",r.ur=16209;break}b=r._r[r.Sr-1],h=3+A(2),L(2)}else 17==p.ar?(C(p.lr+3),L(p.lr),b=0,h=3+A(3),L(3)):(C(p.lr+7),L(p.lr),b=0,h=11+A(7),L(7));if(r.Sr+h>r.vr+r.Ir){e.ve="invalid bit length repeat",r.ur=16209;break}for(;h--;)r._r[r.Sr++]=b}}if(16209==r.ur)break;if(0==r._r[256]){e.ve="invalid code -- missing end-of-block",r.ur=16209;break}r.zr=r.Cr,r.nr=9;let U={Nr:r.zr},V={Nr:r.nr},E={Nr:0};y=Mr(1,r._r,r.vr,U,V,r.Br,E,r.Zr),r.zr=U.Nr,r.nr=V.Nr;let M=E.Nr;if(r.tr=r.zr.slice(0,M),y){e.ve="invalid literal/lengths set",r.ur=16209;break}r.ir=6;let P=r._r.subarray(r.vr,r.vr+r.Ir),$={Nr:r.zr},O={Nr:r.ir},T={Nr:M};if(y=Mr(2,P,r.Ir,$,O,r.Br,T,r.Zr),r.zr=$.Nr,r.ir=O.Nr,r.rr=r.zr.slice(M),y){e.ve="invalid distances set",r.ur=16209;break}if(r.ur=16199,6==t)return g();case 16199:r.ur=16200;case 16200:if(!r.Zr&&s>=6&&l>=258){_(),Ar(e,w),z(),16191==r.ur&&(r.Lr=-1);break}for(r.Lr=0;p=r.tr[A(r.nr)],p.lr>a;)B();if(p.cr&&!(240&p.cr)){for(k=p;p=r.tr[k.ar+(A(k.lr+k.cr)>>k.lr)],k.lr+p.lr>a;)B();L(k.lr),r.Lr+=k.lr}if(L(p.lr),r.Lr+=p.lr,r.yr=p.ar,0==p.cr){r.ur=16205;break}if(32&p.cr){r.Lr=-1,r.ur=16191;break}if(64&p.cr){e.ve="invalid literal/length code",r.ur=16209;break}r.Wt=15&p.cr,r.ur=16201;case 16201:r.Wt&&(C(r.Wt),r.yr+=A(r.Wt),L(r.Wt),r.Lr+=r.Wt),r.Hr=r.yr,r.ur=16202;case 16202:for(;p=r.rr[A(r.ir)],p.lr>a;)B();if(!(240&p.cr)){for(k=p;p=r.rr[k.ar+(A(k.lr+k.cr)>>k.lr)],k.lr+p.lr>a;)B();L(k.lr),r.Lr+=k.lr}if(L(p.lr),r.Lr+=p.lr,64&p.cr){e.ve="invalid distance code",r.ur=16209;break}r.mr=p.ar,r.Wt=15&p.cr,r.ur=16203;case 16203:r.Wt&&(C(r.Wt),r.mr+=A(r.Wt),L(r.Wt),r.Lr+=r.Wt),r.ur=16204;case 16204:if(0==l)return g();if(h=w-l,r.mr>h){if(h=r.mr-h,h>r.Le&&r.sr){e.ve="invalid distance too far back",r.ur=16209;break}h>r.He?(h-=r.He,d=r.Ce-h):d=r.He-h,h>r.yr&&(h=r.yr),h>l&&(h=l);for(let e=0;h>e;++e)o[f]=255&r.Be[d],++f,++d}else{d=f-r.mr,h=r.yr,h>l&&(h=l);for(let e=0;h>e;++e)o[f]=o[d],++f,++d}h>l&&(h=l),l-=h,r.yr-=h,0==r.yr&&(r.ur=16200);break;case 16205:if(0==l)return g();o[f++]=r.yr,l--,r.ur=16200;break;case 16206:if(r.Ne){if(C(32),w-=l,e.ge+=w,r.br+=w,4&r.Ne&&w){let t=o.subarray(f-w,f);e.Se=r.kr=v(r.kr,t,w)}if(w=l,4&r.Ne&&(r.dr?c:Ur(c)>>>0)!=r.kr){e.ve="incorrect data check",r.ur=16209;break}x()}r.ur=16207;case 16207:if(r.Ne&&r.dr){if(C(32),4&r.Ne&&c!=(4294967295&r.br)){e.ve="incorrect length check",r.ur=16209;break}x()}r.ur=16208;case 16208:return y=1,g();case 16209:return y=-3,g();case 16210:return-4;default:return-2}}catch(e){if(e instanceof Qr)return g();throw e}function g(){if(_(),r.Ce||w!=e.me&&16209>r.ur&&(r.Zr?16208>r.ur:16206>r.ur)||4!=t){let t=w-e.me;if(((e,t,r)=>{let n=e._e;if(!(n.Be&&0!=n.Be.length||(n.Be=new Ve(1<<n.Ae),n.Be)))return 1;if(0==n.Ce&&(n.Ce=1<<n.Ae,n.He=0,n.Le=0),r<n.Ce){let e=n.Ce-n.He;e>r&&(e=r),Ke(n.Be,n.He,t,t.length-r,e),(r-=e)?(Ke(n.Be,0,t,t.length-r,r),n.He=r,n.Le=n.Ce):(n.He+=e,n.He==n.Ce&&(n.He=0),n.Le<n.Ce&&(n.Le+=e))}else Ke(n.Be,0,t,t.length-n.Ce,n.Ce),n.He=0,n.Le=n.Ce;return 0})(e,e.be.subarray(e.ye-t,e.ye),t))return r.ur=16210,-4}return u-=e.pe,w-=e.me,e.ke+=u,e.ge+=w,r.br+=w,4&r.Ne&&w&&(e.Se=r.kr=v(r.kr,e.be.subarray(e.ye-w,e.ye),w)),e.Ie=r.Ue+(r.wr?64:0)+(16191==r.ur?128:0)+(16199==r.ur||16194==r.ur?256:0),(0==u&&0==w&&0==y||4==t&&0==y)&&(y=-5),y}function v(e,t,n){return r.dr?Ot(e,t,n):Pt(e,t,n)}function I(e,t){return m[0]=255&t,m[1]=t>>>8&255,Ot(e,m,2)>>>0}function S(e,t){return m[0]=255&t,m[1]=t>>>8&255,m[2]=t>>>16&255,m[3]=t>>>24&255,Ot(e,m,4)>>>0}function z(){o=e.be,f=e.ye,l=e.me,n=e.he,i=e.de,s=e.pe,c=r.Ze,a=r.Ue}function _(){e.be=o,e.ye=f,e.me=l,e.he=n,e.de=i,e.pe=s,r.Ze=c,r.Ue=a}function x(){c=0,a=0}function B(){if(0==s)throw new Qr;s--,c+=(255&n[i])<<a,i++,c>>>=0,a+=8}function C(e){for(;e>a;)B()}function A(e){return c&(1<<e)-1}function L(e){c>>>=e,a-=e}function H(){c>>>=7&a,a-=7&a}}function Kr(e){return Rr(e)?-2:0}var qr=65536,Fr=class{constructor(e=16,t=qr){this.Wr=[],this.Xr=e;for(let r=0;r<$e.min(e,4);r++)this.Wr.push(new Ve(t))}Gr(e=qr){for(let t=this.Wr.length-1;t>=0;t--){let r=this.Wr[t];if(r.length>=e)return this.Wr.splice(t,1),r}return new Ve(e)}release(e){this.Wr.length<this.Xr&&this.Wr.push(e)}};function Wr(e){let t=new Fr(32,qr),r=null;function n(e){try{t.release(e)}catch{}}return new Pe({start(){},transform(i,o){if(!r){let t=e.Yr(),n=e.Jr(t);if(0!=n&&0!=n)throw new Oe("init failed: "+n);r={xe:t}}let f=r.xe,s=0;for(;s<i.length;){let r=$e.min(i.length-s,32768),l=i.subarray(s,s+r);for(f.he=l,f.de=0,f.pe=l.length;f.pe>0;){let r=t.Gr(),i=!1;try{f.be=r,f.ye=0,f.me=r.length;let n=e.en(f,0),s=r.length-f.me;if(s>0){let e=!1,n={tn:r.subarray(0,s),release:()=>{e||(e=!0,t.release(r))}};i=!0,o.enqueue(n)}if(0!=n&&1!=n)throw new Oe("process error: "+n)}finally{i||n(r)}}s+=r}},flush(i){if(!r)return;let o=r.xe;for(;;){let r=t.Gr(),f=!1;try{o.be=r,o.ye=0,o.me=r.length;let n=e.en(o,4),s=r.length-o.me;if(s>0){let e=!1,n={tn:r.subarray(0,s),release:()=>{e||(e=!0,t.release(r))}};f=!0,i.enqueue(n)}if(1==n)break;if(0!=n)throw new Oe("finalization error: "+n)}finally{f||n(r)}}let f=e.rn(o);if(0!=f&&0!=f)throw new Oe("end failed: "+f)}})}function Xr(){return new Pe({start(){},transform(e,t){try{t.enqueue(e.tn.slice(0))}finally{e.release()}},flush(){}})}var Gr=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 Wr({Yr:()=>(()=>{let e=Fe();return e._e=ot(e),e})(),Jr:e=>((e,t,r=8,n=15,i=at,o=0)=>{let f=1;if(!e)return-2;if(e.ve="",-1==t&&(t=6),0>n){if(f=0,-15>n)return-2;n=-n}else n>15&&(f=2,n-=16);if(1>i||i>9||8!=r||8>n||n>15||0>t||t>9||0>o||o>4||8==n&&1!=f)return-2;8==n&&(n=9);let s=ot(e);return s?(e._e=s,s.xe=e,s.Re=42,s.Ne=f,s.Qe=void 0,s.Ae=n,s.Ce=1<<s.Ae,s.je=s.Ce-1,s.Ke=i+7,s.qe=1<<s.Ke,s.Fe=s.qe-1,s.We=(s.Ke+ut-1)/ut,s.Be=new Ve(2*s.Ce),s.Xe=new Ee(s.Ce),s.Ge=new Ee(s.qe),s.Le=0,s.Ye=1<<i+6,s.Ve=new Ve(4*s.Ye),s.et=4*s.Ye,s.Be&&s.Xe&&s.Ge&&s.Ve?(s.Bt=s.Ve.subarray(s.Ye),s.Me=s.Je+s.Ye,s.De=3*(s.Ye-1),s.bt=t,s.yt=o,s.Lt=r,(e=>{let t=(e=>{let t;return fr(e)?-2:(e.ke=e.ge=0,e.ve="",e.Ie=2,t=e._e,t.Ee=0,t.tt=t.Je,0>t.Ne&&(t.Ne=-t.Ne),t.Re=2==t.Ne?57:42,e.Se=2==t.Ne?Ot(0):Pt(0),t.ft=-2,(e=>{if(e.Oe&&e.Oe.length>=mt)for(let t=0;mt>t;t++)e.Oe[t]=st();else{e.Oe=[];for(let t=0;mt>t;t++)e.Oe.push(st())}if(e.Te&&e.Te.length>=2*bt+1)for(let t=0;2*bt+1>t;t++)e.Te[t]=st();else{e.Te=[];for(let t=0;2*bt+1>t;t++)e.Te.push(st())}if(e.$t&&e.$t.length>=2*yt+1)for(let t=0;2*yt+1>t;t++)e.$t[t]=st();else{e.$t=[];for(let t=0;2*yt+1>t;t++)e.$t.push(st())}e.Ot=new Qe(e.Oe,new je(Zt,xt,pt+1,kt,gt)),e.Tt=new Qe(e.Te,new je(Ut,Bt,0,bt,gt)),e.Dt=new Qe(e.$t,new je(null,Ct,0,yt,7)),e.Ze=0,e.Ue=0,e.Ct=0,Nt(e)})(t),0)})(e);return 0==t&&(e=>{e.Ht=2*e.Ce,rr(e),e.St=Yt[e.bt].Nt,e.gt=Yt[e.bt].Qt,e.vt=Yt[e.bt].jt,e.It=Yt[e.bt].Kt,e.lt=0,e.st=0,e.ct=0,e.ot=0,e.ut=e.wt=ut-1,e.dt=0,e.kt=0})(e._e),t})(e)):(s.Re=666,e.ve=Xe(-4),ur(e),-4)):-4})(e,n,8,r,8,0),en:ar,rn:ur})}(e,t);this.writable=r.writable,this.readable=r.readable.pipeThrough(Xr())}},Yr=class{constructor(e="deflate"){let t=((e="deflate")=>{let t="gzip"==e?31:"deflate-raw"==e?-15:15;return Wr({Yr:()=>(e=>{let t=Fe();return t._e=Lr(t,!!e),t})("deflate64-raw"==e),Jr:e=>function(e,t){let r,n;if(!e)return-2;e.ve="";let i=!!e._e.Zr;return n=Lr(e,i),i&&(t=-16),e._e=n,n.xe=e,n.ur=n.Zr?16191:16180,r=((e,t)=>{let r,n,i;if(Rr(e))return-2;if(n=e._e,n.Zr?(t=-16,i=16):i=15,0>t){if(-i>t)return-2;r=0,t=-t}else r=5+(t>>4),!n.Zr&&48>t&&(t&=15);return t&&(8>t||t>i)?-2:(n.Be.length>0&&n.Ae!=t&&(n.Be=Re),n.Ne=r,n.Ae=t,(e=>{let t;return Rr(e)?-2:(t=e._e,t.Ce=0,t.Le=0,t.He=0,(e=>{let t;return Rr(e)?-2:(t=e._e,e.ke=e.ge=t.br=0,e.ve="",t.Ne&&(e.Se=1&t.Ne),t.ur=t.Zr?16191:16180,t.wr=!1,t.hr=!1,t.dr=-1,t.pr=t.Zr?65536:32768,delete t.Qe,t.Ze=0,t.Ue=0,t.tr=t.Cr,t.rr=t.Cr,t.zr=t.Cr,t.sr=!0,t.Lr=-1,0)})(e))})(e))})(e,t),r}(e,t),en:jr,rn:Kr})})(e);this.writable=t.writable,this.readable=t.readable.pipeThrough(Xr())}};self.initModule=e=>{e.re=Gr,e.ne=Yr}});\n')});}
|
|
196
|
+
const A$1="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function g$1(g){let B;g({workerURI:()=>(B||(B="data:text/javascript;base64,"+(g=>{g=(g=>{const B=(g=(g+"").replace(/[^A-Za-z0-9+/=]/g,"")).length,I=[];for(let C=0;B>C;C+=4){const B=A$1.indexOf(g[C])<<18|A$1.indexOf(g[C+1])<<12|(63&A$1.indexOf(g[C+2]))<<6|63&A$1.indexOf(g[C+3]);I.push(B>>16&255),"="!==g[C+2]&&I.push(B>>8&255),"="!==g[C+3]&&I.push(255&B);}return new Uint8Array(I)})(g);let B=new Uint8Array(1024),I=0;for(let A=0;A<g.length;){const E=g[A++];if(128&E){const Q=3+(127&E),Y=g[A++]<<8|g[A++],F=I-Y;C(I+Q);for(let A=0;Q>A;A++)B[I++]=B[F+A];}else {const Q=E;C(I+Q);for(let C=0;Q>C&&A<g.length;C++)B[I++]=g[A++];}}return (g=>{let B="";const I=g.length;let C=0;for(;I>C+2;C+=3){const I=g[C]<<16|g[C+1]<<8|g[C+2];B+=A$1[I>>18&63]+A$1[I>>12&63]+A$1[I>>6&63]+A$1[63&I];}const E=I-C;if(1===E){const I=g[C]<<16;B+=A$1[I>>18&63]+A$1[I>>12&63]+"==";}else if(2===E){const I=g[C]<<16|g[C+1]<<8;B+=A$1[I>>18&63]+A$1[I>>12&63]+A$1[I>>6&63]+"=";}return B})(new Uint8Array(B.buffer.slice(0,I)));function C(A){if(B.length<A){let g=2*B.length;for(;A>g;)g*=2;const C=new Uint8Array(g);C.set(B.subarray(0,I)),B=C;}}})("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")),B)});}
|
|
197
197
|
|
|
198
198
|
/*
|
|
199
199
|
Copyright (c) 2022 Gildas Lormeau. All rights reserved.
|
|
@@ -2190,7 +2190,7 @@
|
|
|
2190
2190
|
const transferables = [];
|
|
2191
2191
|
if (value) {
|
|
2192
2192
|
if (value.byteLength < value.buffer.byteLength) {
|
|
2193
|
-
message.value = value.buffer.slice(
|
|
2193
|
+
message.value = value.buffer.slice(value.byteOffset, value.byteOffset + value.byteLength);
|
|
2194
2194
|
}
|
|
2195
2195
|
else {
|
|
2196
2196
|
message.value = value.buffer;
|
|
@@ -8197,7 +8197,7 @@
|
|
|
8197
8197
|
*/
|
|
8198
8198
|
|
|
8199
8199
|
|
|
8200
|
-
|
|
8200
|
+
g$1(configure);
|
|
8201
8201
|
|
|
8202
8202
|
exports.BlobReader = BlobReader;
|
|
8203
8203
|
exports.BlobWriter = BlobWriter;
|