@zip.js/zip.js 2.8.58 → 2.8.60
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 +2 -2
- package/dist/zip-core-external.js +295 -57
- package/dist/zip-core-external.min.js +1 -1
- package/dist/zip-core.js +286 -40
- package/dist/zip-core.min.js +1 -1
- package/dist/zip-fs-core-external.js +295 -58
- package/dist/zip-fs-core-external.min.js +1 -1
- package/dist/zip-fs-core.js +5867 -4360
- package/dist/zip-fs-core.min.js +1 -1
- package/dist/zip-fs-external.js +295 -58
- package/dist/zip-fs-external.min.js +1 -1
- package/dist/zip-fs-native.js +288 -43
- package/dist/zip-fs-native.min.js +1 -1
- package/dist/zip-fs.js +313 -58
- package/dist/zip-fs.min.js +1 -1
- package/dist/zip-legacy.js +288 -42
- package/dist/zip-legacy.min.js +1 -1
- package/dist/zip-native.js +288 -42
- package/dist/zip-native.min.js +1 -1
- package/dist/zip-web-worker-native.js +1 -1
- package/dist/zip-web-worker.js +1 -1
- package/dist/zip.js +313 -57
- package/dist/zip.min.js +1 -1
- package/index-native.cjs +288 -43
- package/index-native.min.js +1 -1
- package/index.cjs +313 -58
- package/index.d.cts +318 -2
- package/index.d.ts +318 -2
- package/index.min.js +1 -1
- package/lib/core/codec-registry.js +5 -0
- package/lib/core/compression-methods.js +93 -0
- package/lib/core/constants.js +2 -0
- package/lib/core/options.js +2 -0
- package/lib/core/streams/zip-entry-stream.js +7 -3
- package/lib/core/streams/zlib-wasm/zlib-streams.js +18 -8
- package/lib/core/version.js +31 -0
- package/lib/core/web-worker-inline-native.js +1 -1
- package/lib/core/web-worker-inline-wasm.js +1 -1
- package/lib/core/zip-reader.js +143 -33
- package/lib/core/zip-writer.js +14 -6
- package/lib/zip-core-base.js +7 -0
- package/lib/zip-core-reader.js +16 -1
- package/lib/zip-fs-core.js +32 -0
- package/package.json +3 -3
- package/sync-versions.js +26 -0
package/dist/zip-core.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).zip={})}(this,function(t){"use strict";const{Array:e,Object:n,String:r,Number:o,BigInt:i,Math:a,Date:s,Map:c,Set:l,Response:u,URL:f,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:h,DataView:m,Blob:y,Promise:S,TextEncoder:g,TextDecoder:b,document:x,crypto:z,btoa:E,TransformStream:F,ReadableStream:R,WritableStream:D,CompressionStream:k,DecompressionStream:A,navigator:v,Worker:T,Symbol:C,setTimeout:I,clearTimeout:U,structuredClone:_}="undefined"!=typeof globalThis?globalThis:this||self;var M=void 0!==x?x.currentScript:null;const N=4294967295,O=65535,L=255,B=67324752,W=134695760,P=W,V=84233040,Z=33639248,H=101010256,j=101075792,q=117853008,K=46,Y=22,G=20,X=56,J=21589,Q=2048,$=61440,tt=16384,et=2048,nt=1024,rt="/",ot=30,it=new s(2107,11,31,23,59,58),at=new s(1980,0,1),st=void 0,ct=1/0,lt="undefined",ut="function",ft="string",dt=new w,wt="password",pt="rawPassword",ht="passThrough",mt="signal",yt="useWebWorkers",St="useCompressionStream",gt="transferStreams",bt="preventClose",xt="dataDescriptor",zt="offset",Et="usdz",Ft="filename",Rt="comment",Dt="strict",kt="balanced",At="tolerant",vt="Invalid option (must be a function)",Tt="Invalid signal (must be an AbortSignal instance)",Ct="Invalid password (password must be a string, rawPassword must be a Uint8Array)";function It(t){if(t&&typeof t!=ut)throw new d(vt);return t}function Ut(t){if(t&&(typeof t.addEventListener!=ut||"boolean"!=typeof t.aborted))throw new d(Tt);return t||st}function _t(t,e){if(t&&typeof t!=ft||e&&!(e instanceof w))throw new d(Ct)}function Mt(t,e,n){if(!o.isInteger(t)||t<0||t>e)throw new d(n)}function Nt(t,e,n){t!==st&&Mt(t,e,n)}function Ot(t){return typeof t==ft&&t.trim()?o(t):t}const Lt="Invalid maxWorkers (must be an integer greater than 0)";let Bt=2;try{typeof v!=lt&&v.hardwareConcurrency&&(Bt=v.hardwareConcurrency)}catch{}const Wt={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:Bt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof k!=lt&&k,DecompressionStream:typeof A!=lt&&A},Pt="maxWorkers",Vt=["chunkSize",Pt,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],Zt=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],Ht=["baseURI","wasmURI","workerURI","useCompressionStream","useWebWorkers","transferStreams",...Vt,...Zt],jt={...Wt};function qt(){return jt}function Kt(t){return Yt(t.chunkSize)}function Yt(t){return t=Ot(t),o.isInteger(t)&&t>=1?a.max(t,64):65536}function Gt(t){const e={};for(const n of Ht){const r=t[n];r!==st&&(e[n]=Xt(n,r))}return e}function Xt(t,e){if(Vt.includes(t)){if(e=Ot(e),t==Pt&&(!o.isInteger(e)||e<1))throw new d(Lt)}else Zt.includes(t)&&It(e);return e}function Jt(t){t=t||{};const{CompressionStreamZlib:e,DecompressionStreamZlib:r}=t;if(e===st&&r===st)return t;const o=n.assign({},t);return o.CompressionStreamFallback===st&&(o.CompressionStreamFallback=e),o.DecompressionStreamFallback===st&&(o.DecompressionStreamFallback=r),o}function Qt(t,e){const n=new w(t.length+e.length);return n.set(t),n.set(e,t.length),n}function $t(t){return t.byteOffset||t.byteLength!=t.buffer.byteLength?new w(t):t}function te(t){return new m(t.buffer,t.byteOffset,t.byteLength)}const ee=[[],[],[],[],[],[],[],[]];for(let t=0;t<256;t++){let e=t;for(let t=0;t<8;t++)e=1&e?e>>>1^3988292384:e>>>1;ee[0][t]=e}for(let t=0;t<256;t++)for(let e=1;e<8;e++){const n=ee[e-1][t];ee[e][t]=n>>>8^ee[0][255&n]}const[ne,re,oe,ie,ae,se,ce,le]=ee;class ue{constructor(t){this.o=t||-1}append(t){let e=0|this.o;const n=0|t.length;let r=0;if(n>=8&&t.buffer){const o=new m(t.buffer,t.byteOffset,n),i=n-8;for(;r<=i;r+=8){const t=e^o.getInt32(r,!0),n=o.getInt32(r+4,!0);e=le[255&t]^ce[t>>>8&255]^se[t>>>16&255]^ae[t>>>24&255]^ie[255&n]^oe[n>>>8&255]^re[n>>>16&255]^ne[n>>>24&255]}}for(;r<n;r++)e=e>>>8^ne[255&(e^t[r])];this.o=e}get(){return~this.o}}class fe extends F{constructor(){let t;const e=new ue;super({transform(t,n){e.append(t),n.enqueue(t)},flush(){const n=new w(4);new m(n.buffer).setUint32(0,e.get()),t.value=n}}),t=this}}function de(t){if(typeof g==lt){t=unescape(encodeURIComponent(t));const e=new w(t.length);for(let n=0;n<e.length;n++)e[n]=t.charCodeAt(n);return e}return(new g).encode(t)}const we={concat(t,e){if(0===t.length||0===e.length)return t.concat(e);const n=t[t.length-1],r=we.l(n);return 32===r?t.concat(e):we.h(e,r,0|n,t.slice(0,t.length-1))},bitLength(t){const e=t.length;if(0===e)return 0;const n=t[e-1];return 32*(e-1)+we.l(n)},m(t,e){if(32*t.length<e)return t;const n=(t=t.slice(0,a.ceil(e/32))).length;return e&=31,n>0&&e&&(t[n-1]=we.S(e,t[n-1]&2147483648>>e-1,1)),t},S:(t,e,n)=>32===t?e:(n?0|e:e<<32-t)+1099511627776*t,l:t=>a.round(t/1099511627776)||32,h(t,e,n,r){for(void 0===r&&(r=[]);e>=32;e-=32)r.push(n),n=0;if(0===e)return r.concat(t);for(let o=0;o<t.length;o++)r.push(n|t[o]>>>e),n=t[o]<<32-e;const o=t.length?t[t.length-1]:0,i=we.l(o);return r.push(we.S(e+i&31,e+i>32?n:r.pop(),1)),r}},pe={bytes:{F(t){const e=we.bitLength(t)/8,n=new w(e);let r;for(let o=0;o<e;o++)3&o||(r=t[o/4]),n[o]=r>>>24,r<<=8;return n},R(t){const e=[];let n,r=0;for(n=0;n<t.length;n++)r=r<<8|t[n],3&~n||(e.push(r),r=0);return 3&n&&e.push(we.S(8*(3&n),r)),e}}},he=class{constructor(t){const e=this;e.blockSize=512,e.D=[1732584193,4023233417,2562383102,271733878,3285377520],e.A=[1518500249,1859775393,2400959708,3395469782],t?(e.v=t.v.slice(0),e.T=t.T.slice(0),e.C=t.C):e.reset()}reset(){const t=this;return t.v=t.D.slice(0),t.T=[],t.C=0,t}update(t){const e=this;"string"==typeof t&&(t=pe.I.R(t));const n=e.T=we.concat(e.T,t),r=e.C,o=e.C=r+we.bitLength(t);if(o>9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const i=new h(n);let a=0;for(let t=e.blockSize+r-(e.blockSize+r&e.blockSize-1);t<=o;t+=e.blockSize)e.U(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),e}_(){const t=this;let e=t.T;const n=t.v;e=we.concat(e,[we.S(1,1)]);for(let t=e.length+2;15&t;t++)e.push(0);for(e.push(a.floor(t.C/4294967296)),e.push(0|t.C);e.length;)t.U(e.splice(0,16));return t.reset(),n}M(t,e,n,r){return t<=19?e&n|~e&r:t<=39?e^n^r:t<=59?e&n|e&r|n&r:t<=79?e^n^r:void 0}N(t,e){return e<<t|e>>>32-t}U(t){const n=this,r=n.v,o=e(80);for(let e=0;e<16;e++)o[e]=t[e];let i=r[0],s=r[1],c=r[2],l=r[3],u=r[4];for(let t=0;t<=79;t++){t>=16&&(o[t]=n.N(1,o[t-3]^o[t-8]^o[t-14]^o[t-16]));const e=n.N(5,i)+n.M(t,s,c,l)+u+o[t]+n.A[a.floor(t/20)]|0;u=l,l=c,c=n.N(30,s),s=i,i=e}r[0]=r[0]+i|0,r[1]=r[1]+s|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},me={importKey:t=>new me.O(pe.bytes.R(t)),L(t,e,n,r){if(n=n||1e4,r<0||n<0)throw new d("invalid params to pbkdf2");const o=1+(r>>5)<<2;let i,a,s,c,l;const u=new ArrayBuffer(o),f=new m(u);let w=0;const p=we;for(e=pe.bytes.R(e),l=1;w<(o||1);l++){for(i=a=t.encrypt(p.concat(e,[l])),s=1;s<n;s++)for(a=t.encrypt(a),c=0;c<a.length;c++)i[c]^=a[c];for(s=0;w<(o||1)&&s<i.length;s++)f.setInt32(w,i[s]),w+=4}return u.slice(0,r/8)},O:class{constructor(t){const e=this,n=e.B=he,r=[[],[]];e.W=[new n,new n];const o=e.W[0].blockSize/32;t.length>o&&(t=(new n).update(t)._());for(let e=0;e<o;e++)r[0][e]=909522486^t[e],r[1][e]=1549556828^t[e];e.W[0].update(r[0]),e.W[1].update(r[1]),e.P=new n(e.W[0])}reset(){const t=this;t.P=new t.B(t.W[0]),t.V=!1}update(t){this.V=!0,this.P.update(t)}digest(){const t=this,e=t.P._(),n=new t.B(t.W[1]).update(e)._();return t.reset(),n}encrypt(t){if(this.V)throw new d("encrypt on already updated hmac called!");return this.update(t),this.digest(t)}}},ye=typeof z!=lt&&typeof z.getRandomValues==ut,Se="Invalid password",ge="Invalid signature",be=ge,xe="zipjs-abort-check-password",ze="Crypto API not supported";function Ee(t){if(ye)return z.getRandomValues(t);throw new d(ze)}const Fe=16,Re={name:"PBKDF2"},De=n.assign({hash:{name:"HMAC"}},Re),ke=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Re),Ae=["deriveBits"],ve=[8,12,16],Te=[16,24,32],Ce=10,Ie=[0,0,0,0],Ue=typeof z!=lt,_e=Ue&&z.subtle,Me=Ue&&typeof _e!=lt,Ne=pe.bytes,Oe=class{constructor(t){const e=this;e.Z=[[[],[],[],[],[]],[[],[],[],[],[]]],e.Z[0][0][0]||e.H();const n=e.Z[0][4],r=e.Z[1],o=t.length;let i,a,s,c=1;if(4!==o&&6!==o&&8!==o)throw new d("invalid aes key size");for(e.A=[a=t.slice(0),s=[]],i=o;i<4*o+28;i++){let t=a[i-1];(i%o===0||8===o&&i%o===4)&&(t=n[t>>>24]<<24^n[t>>16&255]<<16^n[t>>8&255]<<8^n[255&t],i%o===0&&(t=t<<8^t>>>24^c<<24,c=c<<1^283*(c>>7))),a[i]=a[i-o]^t}for(let t=0;i;t++,i--){const e=a[3&t?i:i-4];s[t]=i<=4||t<4?e:r[0][n[e>>>24]]^r[1][n[e>>16&255]]^r[2][n[e>>8&255]]^r[3][n[255&e]]}}encrypt(t){return this.j(t,0)}decrypt(t){return this.j(t,1)}H(){const t=this.Z[0],e=this.Z[1],n=t[4],r=e[4],o=[],i=[];let a,s,c,l;for(let t=0;t<256;t++)i[(o[t]=t<<1^283*(t>>7))^t]=t;for(let u=a=0;!n[u];u^=s||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=o[c=o[s=o[u]]];let f=16843009*l^65537*c^257*s^16843008*u,d=257*o[i]^16843008*i;for(let n=0;n<4;n++)t[n][u]=d=d<<24^d>>>8,e[n][i]=f=f<<24^f>>>8}for(let n=0;n<5;n++)t[n]=t[n].slice(0),e[n]=e[n].slice(0)}j(t,e){if(4!==t.length)throw new d("invalid aes block size");const n=this.A[e],r=n.length/4-2,o=[0,0,0,0],i=this.Z[e],a=i[0],s=i[1],c=i[2],l=i[3],u=i[4];let f,w,p,h=t[0]^n[0],m=t[e?3:1]^n[1],y=t[2]^n[2],S=t[e?1:3]^n[3],g=4;for(let t=0;t<r;t++)f=a[h>>>24]^s[m>>16&255]^c[y>>8&255]^l[255&S]^n[g],w=a[m>>>24]^s[y>>16&255]^c[S>>8&255]^l[255&h]^n[g+1],p=a[y>>>24]^s[S>>16&255]^c[h>>8&255]^l[255&m]^n[g+2],S=a[S>>>24]^s[h>>16&255]^c[m>>8&255]^l[255&y]^n[g+3],g+=4,h=f,m=w,y=p;for(let t=0;t<4;t++)o[e?3&-t:t]=u[h>>>24]<<24^u[m>>16&255]<<16^u[y>>8&255]<<8^u[255&S]^n[g++],f=h,h=m,m=y,y=S,S=f;return o}},Le=class{constructor(t,e){this.K=t,this.Y=e,this.G=e}reset(){this.G=this.Y}update(t){return this.X(this.K,t,this.G)}J(t){if(255&~(t>>24))t+=1<<24;else{let e=t>>16&255,n=t>>8&255,r=255&t;255===e?(e=0,255===n?(n=0,255===r?r=0:++r):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=r}return t}$(t){0===(t[0]=this.J(t[0]))&&(t[1]=this.J(t[1]))}X(t,e,n){let r;if(!(r=e.length))return[];const o=we.bitLength(e);for(let o=0;o<r;o+=4){this.$(n);const r=t.encrypt(n);e[o]^=r[0],e[o+1]^=r[1],e[o+2]^=r[2],e[o+3]^=r[3]}return we.m(e,o)}},Be=me.O;let We=Ue&&Me&&typeof _e.importKey==ut,Pe=Ue&&Me&&typeof _e.deriveBits==ut;class Ve extends F{constructor({password:t,rawPassword:e,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){super({start(){He(this,t,e,n)},async transform(t,e){const n=this,{password:o,strength:i,et:a,ready:s}=n;o?(await async function(t,e,n,r){const o=await qe(t,e,n,Ye(r,0,ve[e])),i=Ye(r,ve[e]);if(o[0]!=i[0]||o[1]!=i[1])throw new d(Se)}(n,i,o,Ye(t,0,ve[i]+2)),t=Ye(t,ve[i]+2),r?e.error(new d(xe)):a()):await s;const c=new w(t.length-Ce-(t.length-Ce)%Fe);e.enqueue(je(n,t,c,0,Ce,!0))},async flush(t){const{nt:e,ot:n,it:r,ready:i}=this;if(n&&e){await i;const a=Ye(r,0,r.length-Ce),s=Ye(r,r.length-Ce);let c=dt;if(a.length){const t=Xe(Ne,a);n.update(t);const r=e.update(t);c=Ge(Ne,r)}const l=Ye(Ge(Ne,n.digest()),0,Ce);let u=r.length<Ce?1:0;for(let t=0;t<Ce;t++)u|=l[t]^s[t];if(u&&o)throw new d(be);t.enqueue(c)}}})}}class Ze extends F{constructor({password:t,rawPassword:e,encryptionStrength:n}){super({start(){He(this,t,e,n)},async transform(t,e){const n=this,{password:r,strength:o,et:i,ready:a}=n;let s=dt;r?(s=await async function(t,e,n){const r=Ee(new w(ve[e]));return Qt(r,await qe(t,e,n,r))}(n,o,r),i()):await a;const c=new w(s.length+t.length-t.length%Fe);c.set(s,0),e.enqueue(je(n,t,c,s.length,0))},async flush(t){const{nt:e,ot:n,it:r,ready:o}=this;if(n&&e){await o;let i=dt;if(r.length){const t=e.update(Xe(Ne,r));n.update(t),i=Ge(Ne,t)}const a=Ge(Ne,n.digest()).slice(0,Ce);t.enqueue(Qt(i,a))}}})}}function He(t,e,r,o){n.assign(t,{ready:new S(e=>t.et=e),password:Ke(e,r),strength:o-1,it:dt})}function je(t,e,n,r,o,i){const{nt:a,ot:s,it:c}=t;c.length&&(e=Qt(c,e));const l=e.length-o;let u;for(n=function(t,e){if(e&&e>t.length){const n=t;(t=new w(e)).set(n,0)}return t}(n,r+(l-l%Fe)),u=0;u<=l-Fe;u+=Fe){const t=Xe(Ne,Ye(e,u,u+Fe));i&&s.update(t);const o=a.update(t);i||s.update(o),n.set(Ge(Ne,o),u+r)}return t.it=Ye(e,u),n}async function qe(t,r,o,i){t.password=null;const a=await async function(t,e,n,r,o){if(!We)return me.importKey(e);try{return await _e.importKey("raw",e,n,!1,o)}catch{return We=!1,me.importKey(e)}}(0,o,De,0,Ae),s=await async function(t,e,n){if(!Pe)return me.L(e,t.salt,ke.iterations,n);try{return await _e.deriveBits(t,e,n)}catch{return Pe=!1,me.L(e,t.salt,ke.iterations,n)}}(n.assign({salt:i},ke),a,8*(2*Te[r]+2)),c=new w(s),l=Xe(Ne,Ye(c,0,Te[r])),u=Xe(Ne,Ye(c,Te[r],2*Te[r])),f=Ye(c,2*Te[r]);return n.assign(t,{keys:{key:l,st:u,passwordVerification:f},nt:new Le(new Oe(l),e.from(Ie)),ot:new Be(u)}),f}function Ke(t,e){return e===st?de(t):e}function Ye(t,e,n){return t.subarray(e,n)}function Ge(t,e){return t.F(e)}function Xe(t,e){return t.R(e)}class Je extends F{constructor({password:t,rawPassword:e,passwordVerification:n,checkPasswordOnly:r}){super({start(){$e(this,t,e,n)},transform(t,e){const n=this;if(n.password||n.rawPassword){const e=tn(n,t.subarray(0,12));if(n.password=n.rawPassword=null,0!=(e[11]^n.passwordVerification))throw new d(Se);t=t.subarray(12)}r?e.error(new d(xe)):e.enqueue(tn(n,t))}})}}class Qe extends F{constructor({password:t,rawPassword:e,passwordVerification:n}){super({start(){$e(this,t,e,n)},transform(t,e){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const e=Ee(new w(12));e[11]=n.passwordVerification,r=new w(t.length+e.length),r.set(en(n,e),0),o=12}else r=new w(t.length),o=0;r.set(en(n,t),o),e.enqueue(r)}})}}function $e(t,e,r,o){n.assign(t,{password:e,rawPassword:r,passwordVerification:o}),function(t,e,r){const o=[305419896,591751049,878082192];if(n.assign(t,{keys:o,ct:new ue(o[0]),lt:new ue(o[2])}),r)for(let e=0;e<r.length;e++)nn(t,r[e]);else for(let n=0;n<e.length;n++)nn(t,e.charCodeAt(n))}(t,e,r)}function tn(t,e){const n=new w(e.length);for(let r=0;r<e.length;r++)n[r]=rn(t)^e[r],nn(t,n[r]);return n}function en(t,e){const n=new w(e.length);for(let r=0;r<e.length;r++)n[r]=rn(t)^e[r],nn(t,e[r]);return n}function nn(t,e){let[,n]=t.keys;t.ct.append([e]);const r=~t.ct.get();n=an(a.imul(an(n+on(r)),134775813)+1),t.lt.append([n>>>24]);const o=~t.lt.get();t.keys=[r,n,o]}function rn(t){const e=2|t.keys[2];return on(a.imul(e,1^e)>>>8)}function on(t){return 255&t}function an(t){return 4294967295&t}function sn(t){if(t instanceof R)return t;const e=t.getReader();return new R({async pull(t){const{value:n,done:r}=await e.read();r?t.close():t.enqueue(n)},cancel:t=>e.cancel(t)})}function cn(t,e){t=sn(t);const n=e?{type:e}:{};if(typeof y.prototype.stream!=ut||new y([]).stream()instanceof R)return new u(t).blob().then(t=>e?new y([t],n):t);const r=[];return t.pipeTo(new D({write(t){r.push(t)}})).then(()=>new y(r,n))}function ln(t){if(t instanceof D)return t;const e=t.getWriter();return new D({write:t=>e.write(t),close:()=>e.close(),abort:t=>e.abort(t)})}const un="Invalid codec definition",fn="Reserved compression method",dn="Invalid codec module",wn=[0,8,9,99],pn=new c,hn=new c;function mn(t){return pn.get(t)}function yn(t){return hn.get(t)}function Sn(t,e){const{CompressionStream:n,DecompressionStream:r}=e;if(typeof n!=ut&&typeof r!=ut)throw new d(dn);hn.set(t,{CompressionStream:n,DecompressionStream:r})}const gn="Invalid uncompressed size",bn="Invalid compressed data",xn=ge,zn="deflate-raw",En="gzip",Fn=[31,139,8];class Rn extends F{constructor(t,{chunkSize:e,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:a,zipCrypto:s,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:d}=t,w=this;let p,h,y,S=super.readable;const g=f&&yn(f),b=c&&o&&!u&&!g&&(!i||s)&&Boolean(a&&r);if(i&&!s||!c||b||(p=new fe,S=_n(S,p)),o)if(g)S=Mn(S,In(g.CompressionStream,f,{level:l,chunkSize:e,compressionMethod:d}));else if(b)y=new Dn,S=Mn(S,new r(En)),S=_n(S,y);else try{S=Un(S,a,{level:l,chunkSize:e},r,n)}catch(t){let e;try{e=new r(En)}catch{throw t}S=Mn(S,e),S=_n(S,new Dn)}i&&(s?S=_n(S,new Qe(t)):(h=new Ze(t),S=_n(S,h))),Cn(w,S,()=>{i&&!s||!c||(w.crc32=b?y.crc32:new m(p.value.buffer).getUint32(0))})}}class Dn extends F{constructor(){let t,e=10,n=new w(0);super({transform(t,r){if(e){const n=a.min(e,t.length);if(e-=n,!(t=t.subarray(n)).length)return}const o=n.length+t.length;if(o<=8)return void(n=Qt(n,t));const i=o-8,s=a.min(i,n.length);r.enqueue(Qt(n.subarray(0,s),t.subarray(0,i-s))),n=Qt(n.subarray(s),t.subarray(i-s))},flush(){const e=te(n);t.crc32=e.getUint32(0,!0),t.uncompressedSize=e.getUint32(4,!0)}}),t=this}}class kn extends F{constructor(t,{chunkSize:e,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:a,crc32:s,compressed:c,useCompressionStream:l,deflate64:u,format:f,compressionMethod:p,rawBitFlag:h,outputSize:y}=t;let g,b,x=super.readable;if(i&&(o?x=_n(x,new Je(t)):(b=new Ve(t),x=_n(x,b))),c){const t=f&&yn(f);if(t)x=Mn(x,In(t.DecompressionStream,f,{chunkSize:e,compressionMethod:p,rawBitFlag:h,uncompressedSize:y}));else try{x=Un(x,l,{chunkSize:e,deflate64:u},r,n)}catch(t){if(u||y===st)throw t;let e;try{e=new r(En)}catch{throw t}x=function(t,e,n){const r=new ue;let o,i,a,s=0,c=!1;const l=new S((t,e)=>{i=t,a=e});l.catch(()=>{}),n||i();const u=new F({start(t){const e=new w(10);e.set(Fn),t.enqueue(e)},transform(t,e){e.enqueue(t)},async flush(t){c=!0,p();try{await l}finally{h()}const e=new w(8),o=te(e);o.setUint32(0,r.get(),!0),o.setUint32(4,n,!0),t.enqueue(e)},cancel(t){a(t)}}),f=new F({transform(t,e){r.append(t),s+=t.length,s>=n?i():c&&p(),e.enqueue(t)},cancel(t){a(t)}});return t=_n(t,u),_n(t=Mn(t,e),f);function p(){h(),o=I(()=>a(new d(gn)),5e3)}function h(){U(o)}}(x,e,y)}x=function(t){const e=t.getReader();return new R({async pull(t){let n;try{n=await e.read()}catch(t){if(t&&t.message)throw t;const e=new d(bn);throw e.cause=t,e}const{value:r,done:o}=n;o?t.close():t.enqueue(r)},cancel:t=>e.cancel(t)})}(x)}a&&(g=new fe,x=_n(x,g)),Cn(this,x,()=>{if(a){const t=new m(g.value.buffer);if(s!=t.getUint32(0,!1))throw new d(xn)}})}}const An=new c;function vn(t,e){if(!t)return!1;let n=An.get(t);n||(n=new c,An.set(t,n));let r=n.get(e);if(r===st){try{new t(e),r=!0}catch{r=!1}n.set(e,r)}return r}function Tn(t){return vn(t,zn)}function Cn(t,e,r){e=_n(e,new F({flush:r})),n.defineProperty(t,"readable",{get:()=>e})}function In(t,e,n){if(!t)throw new d("Compression method not supported");return new t(e,n)}function Un(t,e,n,r,o){const i=e&&r?r:o||r,a=n.deflate64?"deflate64-raw":zn;let s;try{s=new i(a,n)}catch(t){if(!e||!o||i==o)throw t;s=new o(a,n)}return Mn(t,s)}function _n(t,e){return sn(t).pipeThrough(e)}function Mn(t,e){const n=e.writable.getWriter(),r=t.getReader();return async function(){try{for(;;){await n.ready;const t=await r.read();if(t.done){await n.close();break}await n.write(t.value)}}catch(t){await async function(t,e){try{await t.abort(e)}catch{}}(n,t),await async function(t,e){try{await t.cancel(e)}catch{}}(r,t)}}(),e.readable}const Nn="data",On="deflate",Ln="inflate";class Bn extends F{constructor(t,e){super({});const r=this,{codecType:o}=t;let i;o.startsWith(On)?i=Rn:o.startsWith(Ln)&&(i=kn),r.outputSize=0;let a=0;const s=new i(t,e),c=super.readable,l=new F({transform(t,e){t&&t.length&&(a+=t.length,e.enqueue(t))},flush(){n.assign(r,{inputSize:a})}}),u=new F({transform(e,n){if(e&&e.length&&(n.enqueue(e),r.outputSize+=e.length,t.outputSize!==st&&r.outputSize>t.outputSize))throw new d(gn)},flush(){const{crc32:t}=s;n.assign(r,{crc32:t,inputSize:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(s).pipeThrough(u)})}}class Wn extends F{constructor(t){const e=[];let n=0;function r(){const r=new w(t);let o=0;for(;o<t;){const n=e[0],i=t-o;n.length<=i?(r.set(n,o),o+=n.length,e.shift()):(r.set(n.subarray(0,i),o),e[0]=n.subarray(i),o+=i)}return n-=t,r}(!o.isFinite(t)||t<1)&&(t=65536),super({transform(o,i){for(e.push(o),n+=o.length;n>t;)i.enqueue(r())},flush(t){n&&t.enqueue(function(t,e){const n=new w(e);let r=0;for(const e of t)n.set(e,r),r+=e.length;return n}(e,n))}})}}const Pn="Worker startup timeout";let Vn,Zn,Hn;function jn(t){t.createWorker?Zn=!0:Vn=!1}class qn{constructor(t,{readable:e,writable:r},{options:o,config:i,ut:a,useWebWorkers:s,transferStreams:c,workerURI:l,createWorker:u},f){const{signal:d}=a;return Zn&&(u=st),n.assign(t,{ft:!0,wt:(t.wt||0)+1,readable:e.pipeThrough(new Wn(Kt(i))).pipeThrough(new Kn(a),{signal:d}),writable:r,options:n.assign({},o),workerURI:l,createWorker:u,transferStreams:c,terminate:()=>new S(e=>{const{ht:n,ft:r}=t;n?(r?t.yt=e:(n.terminate(),e()),t.St=null):e()}),gt(){if(t.ft){const{yt:e}=t;e&&(t.yt=null,t.bt=!0,t.ht.terminate(),e()),t.ft=!1,f(t)}}}),Vn===st&&(Vn=typeof T!=lt),(s&&Hn&&(Vn&&l||u)?Hn:Gn)(t,i)}}class Kn extends F{constructor({onstart:t,onprogress:e,size:n,onend:r}){let o=0;super({async start(){t&&await Yn(t,n)},async transform(t,r){o+=t.length,e&&await Yn(e,o,n),r.enqueue(t)},async flush(){r&&await Yn(r,o)}})}}async function Yn(t,...e){try{await t(...e)}catch{}}function Gn(t,e){return{run:()=>Xn(t,e)}}async function Xn({options:t,readable:e,writable:n,gt:r},o){let i;try{if(t.compressed&&!t.format){const e=t.codecType.startsWith(On),n=e?o.CompressionStreamFallback:o.DecompressionStreamFallback,r=e?o.CompressionStream:o.DecompressionStream;if(t.useCompressionStream){if(n&&n.xt&&!Tn(r))try{await void 0}catch{}}else try{await void 0}catch{n&&!n.xt||(t.useCompressionStream=!0)}}i=new Bn(t,o),await e.pipeThrough(i).pipeThrough(new Wn(Kt(o))).pipeTo(n,{preventClose:!0,preventAbort:!0});const{crc32:r,inputSize:a,outputSize:s}=i;return{crc32:r,inputSize:a,outputSize:s}}catch(t){throw i&&(t.outputSize=i.outputSize),t}finally{r()}}const Jn={type:"module"},Qn="error";let $n,tr,er,nr=!0;try{nr=typeof _==ut&&_(new DOMException("","AbortError")).code!==st}catch{}var rr;function or(t){const{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function ir(t){const{ht:e}=t;if(e)try{e.terminate()}catch{}t.St=null}function ar(t,e,r,o,i=!0){const{createWorker:a}=r;let s,c,l;if(a)s=a();else if(tr===st||$n!==t){const n=typeof t==ut;c=n?t(i):t;const a=c.startsWith("data:"),u=c.startsWith("blob:");if(a||u){o===st&&(o=!1),o&&(l=Jn);try{s=new T(c,l)}catch(i){if(u)try{f.revokeObjectURL(c)}catch{}if(n&&u)return ar(t,e,r,o,!1);if(o)throw i;return ar(t,e,r,!0,!1)}}else{o===st&&(o=!0),o&&(l=Jn);try{c=new f(c,e)}catch{}try{s=new T(c,l)}catch(n){if(o)return ar(t,e,r,!1,i);throw n}}$n=t,tr=c,er=l}else s=new T(tr,er);return s.addEventListener("message",t=>{r.zt=!0,sr(r),async function({data:t},e){const{type:r,value:o,messageId:i,result:a,error:s}=t,{reader:c,writer:l,Et:u,Ft:f,gt:p,wt:h}=e,m=()=>e.wt!=h;try{if(s){const{message:t,stack:e,code:r,name:o,outputSize:i,cause:a,codecImportFailed:c}=s,l=new d(t);n.assign(l,{stack:e,code:r,name:o,outputSize:i}),a&&(l.cause=n.assign(new d(a.message),{name:a.name})),c&&(l.codecImportFailed=!0),y(l)}else{if("pull"==r){const{value:t,done:n}=await c.read();m()||lr({type:Nn,value:t,done:n,messageId:i},e)}r==Nn&&(await l.ready,await l.write(new w(o)),m()||lr({type:"ack",messageId:i},e)),"close"==r&&y(null,a)}}catch(s){m()||(ir(e),y(s))}function y(t,e){m()||(t?f(t):u(e),l&&l.releaseLock(),t&&t.codecImportFailed||p())}}(t,r)}),s.addEventListener(Qn,t=>cr(t,r)),s.addEventListener("messageerror",t=>cr(t,r)),s}function sr(t){const{Rt:e}=t;e&&(U(e),t.Rt=null)}function cr(t,e){t.preventDefault&&t.preventDefault(),sr(e);const{zt:r,Ft:o,writer:i,gt:a}=e;ir(e),r||(e.ht=null);let s=t.error||new d(t.message||Qn);r||(s=n.assign(new d(s.message||Qn),{Dt:!0}),e.kt=s),o&&(o(s),i&&i.releaseLock(),r&&a())}function lr(t,{ht:e,writer:n,transferStreams:r,zt:o}){try{const{value:n,readable:i,writable:a}=t,s=[];if(n&&(t.value=$t(n),s.push(t.value.buffer)),r&&nr&&o?(i&&s.push(i),a&&s.push(a)):t.readable=t.writable=null,s.length)try{return e.postMessage(t,s),!0}catch{nr=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(t){throw n&&n.releaseLock(),t}}rr=function(t,e){const{baseURI:r,chunkSize:i,workerStartupTimeout:a}=e;let{wasmURI:s}=e;if(!t.St){let c;typeof s==ut&&(s=s());try{c=ar(t.workerURI,r,t)}catch{return jn(t),Gn(t,e)}n.assign(t,{ht:c,zt:!1,bt:!1,kt:null,St:{run:async()=>{try{return await async function(t,e){if(!t.ht){const{kt:e}=t;t.kt=null;const n=e||new d(Pn);throw n.Dt=!0,n}let r,i;const a=new S((t,e)=>{r=t,i=e});n.assign(t,{reader:null,writer:null,Et:r,Ft:i,result:a});const{readable:s,options:c}=t,{writable:l,closed:u,At:f}=function(t){const e=new AbortController,{writable:n,readable:r}=new F,o=r.pipeTo(t,{preventClose:!0,preventAbort:!0,signal:e.signal});return o.catch(()=>{}),{writable:n,closed:o,At:()=>e.abort()}}(t.writable);let w;try{w=lr({type:"start",options:c,config:e,readable:s,writable:l},t)}catch(e){f();try{await u}catch{}throw t.gt(),e}w||n.assign(t,{reader:s.getReader(),writer:l.getWriter()});const{workerStartupTimeout:p}=e;!t.zt&&o.isFinite(p)&&p>=0&&(t.Rt=I(()=>function(t){if(t.Rt=null,t.zt)return;const{Ft:e,writer:n}=t;if(ir(t),t.ht=null,e){const t=new d(Pn);t.Dt=!0,e(t),n&&n.releaseLock()}}(t),p));try{const t=await a;return await h(),await u,t}catch(t){await h(),f();try{await u}catch{}throw t}async function h(){if(!w&&!l.locked)try{await l.getWriter().close()}catch{}}}(t,{chunkSize:i,wasmURI:s,baseURI:r,workerStartupTimeout:a})}catch(n){if(n&&n.Dt)return jn(t),or(t),Xn(t,e);if(n&&n.codecImportFailed){if(t.reader)return or(t),Xn(t,e);t.gt()}throw n}}}})}return t.St},Hn=rr;let ur=[];const fr=[];let dr,wr,pr=0;async function hr(t,e){const{options:n,config:r}=e,{transferStreams:i,useWebWorkers:a,useCompressionStream:s,compressed:c,checkCrc32:l,computeCrc32:u,encrypted:d,format:w,codecURI:p}=n,{workerURI:h,createWorker:m,maxWorkers:y}=r;w&&(p&&(n.codecURI=function(t,e){try{return new f(t,e).toString()}catch{return t}}(p,r.baseURI)),await async function(t,e){!hn.has(t)&&e&&Sn(t,await(import(/* webpackIgnore: true */ /* @vite-ignore */e)))}(w,n.codecURI)),e.transferStreams=!w&&(i||i===st&&r.transferStreams);const g=!(c||l||u||d),b=w===st||Boolean(n.codecURI);return e.useWebWorkers=!g&&b&&(a||a===st&&r.useWebWorkers),e.workerURI=e.useWebWorkers&&h?h:st,e.createWorker=e.useWebWorkers&&m?m:st,n.useCompressionStream=s||s===st&&r.useCompressionStream,(await async function(){const n=ur.find(t=>!t.ft);if(n)return br(n),new qn(n,t,e,x);if(ur.length<y){const n={vt:pr};return pr++,ur.push(n),new qn(n,t,e,x)}return new S(n=>{fr.push({resolve:n,stream:t,Tt:e}),wr=r.workerStarvationTimeout,mr()})}()).run();function x(t){if(yr(),fr.length){const[{resolve:e,stream:n,Tt:r}]=fr.splice(0,1);e(new qn(t,n,r,x)),mr()}else t.ht?(br(t),function(t,e){const{config:n}=e,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(t.bt?t.bt=!1:t.Ct=I(async()=>{ur=ur.filter(e=>e!=t);try{await t.terminate()}catch{}},r))}(t,e)):ur=ur.filter(e=>e!=t)}}function mr(){!dr&&fr.length&&o.isFinite(wr)&&wr>=0&&(dr=I(Sr,wr))}function yr(){dr&&(U(dr),dr=null)}function Sr(){if(dr=null,fr.length){const[{resolve:t,stream:e,Tt:r}]=fr.splice(0,1),o=n.assign({},r,{useWebWorkers:!1,workerURI:st,createWorker:st});t(new qn({},e,o,gr)),mr()}}function gr(){yr(),mr()}function br(t){const{Ct:e}=t;e&&(U(e),t.Ct=null)}const xr="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split(""),zr=256==xr.length;function Er(t,e){return Fr(t,e,!0)}function Fr(t,e,n){return e&&"cp437"==e.trim().toLowerCase()?function(t){if(zr){let e="";for(let n=0;n<t.length;n++)e+=xr[t[n]];return e}return(new b).decode(t)}(t):new b(e,{ignoreBOM:n}).decode(t)}const Rr="HTTP error ",Dr="HTTP Range not supported",kr="HTTP resource changed",Ar="Writer iterator completed too soon",vr="Writer not initialized",Tr="Content-Range",Cr="Range",Ir="GET",Ur="bytes",_r=16777216,Mr="writable",Nr=C();class Or{constructor(){this.size=0}init(){this.initialized=!0}}class Lr extends Or{get readable(){return this.createReadable()}createReadable({offset:t=0,size:e,chunkSize:n=Kt(qt())}={}){const r=this;let o=0;return n=Yt(n),new R({async pull(i){const s=e===st?n:a.min(n,e-o),c=await mo(r,t+o,s);c.length&&i.enqueue(c),o+n>=e||!c.length&&s?i.close():o+=n}})}}class Br extends Or{constructor(){super();const t=this,e=new D({write(e){if(!t.initialized)throw new d(vr);return t.writeUint8Array($t(e))}});n.defineProperty(t,Mr,{get:()=>e})}writeUint8Array(){}}let Wr,Pr;class Vr extends Lr{constructor(t){super(),n.assign(this,{It:t,size:t.size}),Pr||(Pr=(async()=>{try{const t=new y([new w(3)]).slice(1,2).stream().getReader();let e=0,n=await t.read();for(;!n.done;)e+=n.value.length,n=await t.read();Wr=1==e}catch{Wr=!1}})())}createReadable(t){const{It:e,size:n}=this,{offset:r=0,size:o=n-r}=t||{};return!r&&o>=n?sn(e.stream()):Wr?sn(e.slice(r,r+o).stream()):super.createReadable(t)}async readUint8Array(t,e){const n=this,r=t+e,o=!t&&r>=n.size?n.It:n.It.slice(t,r);let i=await o.arrayBuffer();return i.byteLength>e&&(i=i.slice(t,r)),new w(i)}}class Zr extends Or{constructor(t){super();const e=this,r=new F;n.defineProperty(e,Mr,{get:()=>r.writable}),e.contentType=t,e.Ut=cn(r.readable,t),e.Ut.catch(()=>{})}getData(){return this.Ut}}class Hr extends Lr{constructor(t,e){super(),qr(this,t,e)}async init(){await Kr(this,io,eo),super.init()}createReadable(t){const e=this,{useRangeHeader:n,forceRangeRequests:r,size:i}=e;if((n||r)&&i!==st){const{offset:n=0,size:r=i-n}=t||{};if(r>0&&n<i)return function(t,e,n){let r,i=e,s=0,c=n;return new R({start:()=>l(),async pull(t){r||await l();const{value:e,done:n}=await r.read();if(n)throw new d(Dr);const o=e.length>s?e.subarray(0,s):e;s-=o.length,c-=o.length,o.length&&t.enqueue(o),s||(await async function(){const t=r;r=st,await t.cancel()}(),c||t.close())},cancel:t=>r&&r.cancel(t)});async function l(){const e=a.min(t.maximumRangeSize,c),n=await io(Ir,t,$r(t,i,e));if(206!=n.status)throw new d(Dr);const l=n.headers.get(Tr);if(l){const t=o(l.trim().split(/[\s-]+/)[1]);if(!o.isNaN(t)&&t!=i)throw new d(Dr)}Qr(t,n),Jr(t,n),i+=e,s=e,r=n.body.getReader()}}(e,n,a.min(r,i-n))}return super.createReadable(t)}readUint8Array(t,e){return Yr(this,t,e,io,eo)}}class jr extends Lr{constructor(t,e){super(),qr(this,t,e)}async init(){await Kr(this,ao,no),super.init()}readUint8Array(t,e){return Yr(this,t,e,ao,no)}}function qr(t,e,r){const{preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s,checkResourceChanges:c=!0,maximumRangeSize:l=_r,fetch:u}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(t,{url:e,options:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s,checkResourceChanges:c,maximumRangeSize:l,fetch:u})}async function Kr(t,e,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s}=t;if(function(t){const{baseURI:e}=qt(),{protocol:n}=new f(t,e);return"http:"==n||"https:"==n}(r)&&(i||a)&&(typeof o==lt||o)){const r=await e(Ir,t,$r(t,s?-22:void 0)),o=r.headers.get("Accept-Ranges");if(!(a||o&&o.toLowerCase()==Ur))throw new d(Dr);{if(s){const e=new w(await r.arrayBuffer());206==r.status&&e.length==Y&&(t._t=e)}Jr(t,r);const o=Gr(r);o===st?await oo(t,e,n):t.size=o}}else await oo(t,e,n)}async function Yr(t,e,n,r,i){const{useRangeHeader:a,forceRangeRequests:s,_t:c,size:l,options:u}=t;if(a||s){if(c&&e==l-Y&&n==Y)return c;if(e>=l||0===n)return dt;{e+n>l&&(n=l-e);const i=await r(Ir,t,$r(t,e,n));if(206!=i.status)throw new d(Dr);const a=i.headers.get(Tr);if(a){const t=o(a.trim().split(/[\s-]+/)[1]);if(!o.isNaN(t)&&t!=e)throw new d(Dr)}Qr(t,i),Jr(t,i);const s=new w(await i.arrayBuffer());if(s.length!=n)throw new d(Dr);return s}}{const{data:r}=t;return r||await i(t,u),t.data.subarray(e,e+n)}}function Gr(t){const e=t.headers.get(Tr);if(e){const t=e.trim().split(/\s*\/\s*/)[1];if(t&&"*"!=t){const e=o(t);if(!o.isNaN(e))return e}}}function Xr({headers:t}){return{Mt:t.get("Etag")||st,lastModified:t.get("Last-Modified")||st}}function Jr(t,e){const{checkResourceChanges:n,Nt:r}=t;n&&!r&&206==e.status&&(t.Nt=Xr(e))}function Qr(t,e){const{checkResourceChanges:r,Nt:o,size:i}=t;if(r){const t=Gr(e);if(t!==st&&i!==st&&t!=i)throw new d(kr);if(o){const t=Xr(e);if(n.entries(o).some(([e,n])=>n!==st&&t[e]!==st&&n!=t[e]))throw new d(kr)}}}function $r(t,e=0,r=1){return n.assign({},to(t),{[Cr]:Ur+"="+(e<0?e:e+"-"+(e+r-1))})}function to({options:t}){const{headers:e}=t;if(e)return C.iterator in e?n.fromEntries(e):e}async function eo(t){await ro(t,io)}async function no(t){await ro(t,ao)}async function ro(t,e){const n=await e(Ir,t,to(t));t.data=new w(await n.arrayBuffer()),t.size=t.data.length}async function oo(t,e,n){if(t.preventHeadRequest)await n(t,t.options);else{const r=await e("HEAD",t,to(t)),i=r.headers.get("Content-Length");i&&!r.headers.get("Content-Encoding")?t.size=o(i):await n(t,t.options)}}async function io(t,{fetch:e=fetch,options:r,url:o},i){const a=await e(o,n.assign({},r,{method:t,headers:i}));if(a.status<400)return a;throw 416==a.status?new d(Dr):new d(Rr+(a.statusText||a.status))}function ao(t,{url:e},r){return new S((o,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status<400){const t=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(e=>{const n=e.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,t=>t.toUpperCase()),t.push(n)}),o({status:a.status,arrayBuffer:()=>a.response,headers:new c(t)})}else i(416==a.status?new d(Dr):new d(Rr+(a.statusText||a.status)))},!1),a.addEventListener("error",t=>i(t.detail?t.detail.error:new d("Network error")),!1),a.open(t,e),r)for(const t of n.entries(r))a.setRequestHeader(t[0],t[1]);a.responseType="arraybuffer",a.send()})}class so extends Lr{constructor(t,e={}){super(),n.assign(this,{url:t,reader:e.useXHR&&!e.fetch?new jr(t,e):new Hr(t,e)})}set size(t){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(t){return this.reader.createReadable(t)}readUint8Array(t,e){return this.reader.readUint8Array(t,e)}}class co extends Lr{constructor(t){super(),this.Ot=t}async init(){const t=this;t.Lt=0;const e=t.Ot=await S.all(t.Ot.map(ho));t.Bt=e.map(e=>{const n=t.size;return t.size+=e.size,n}),super.init()}Wt(t){const{Bt:e,size:n}=this,r=e[t];return r===st?n:r}async readUint8Array(t,e){const n=this,{Ot:r}=this;let o,i=0,s=t;for(;r[i]&&s>=r[i].size;)s-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(s+e<=r)o=await mo(c,s,e);else{const i=r-s;o=Qt(await mo(c,s,i),await n.readUint8Array(t+i,e-i))}}else o=dt;return n.Lt=a.max(i,n.Lt),o}}class lo extends Or{constructor(t,e=4294967295){super();const r=this;let o,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});const s=new D({async write(e){if(e===Nr)return void(a&&await l());const{availableSize:n}=r;if(a)e.length>=n?(await c(e.subarray(0,n)),await l(),e.length>n&&await this.write(e.subarray(n))):await c(e);else{const{value:n,done:s}=await t.next();if(s&&!n)throw new d(Ar);o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await po(o),i=n.writable,a=i.getWriter(),await this.write(e)}},async close(){a&&(await a.ready,await u())},async abort(t){a&&await a.abort(t)}});async function c(t){const e=t.length;e&&(await a.ready,await a.write(t),o.size+=e,r.availableSize-=e)}async function l(){await u(),r.diskOffset+=o.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function u(){await a.close()}n.defineProperty(r,Mr,{get:()=>s})}async closeDisk(){const t=this.writable.getWriter();try{await t.ready,await t.write(Nr)}finally{t.releaseLock()}}}class uo{constructor(t){return e.isArray(t)&&(t=new co(t)),(t instanceof R||typeof t.getReader==ut)&&(t={readable:sn(t)}),t}}class fo{constructor(t){return t.writable===st&&typeof t.next==ut&&(t=new lo(t)),(t instanceof D||typeof t.getWriter==ut)&&(t={writable:ln(t)}),t.size===st&&(t.size=0),t}}function wo(t){return Boolean(t&&t.getData)}async function po(t,e){if(!t.init||t.initialized)return S.resolve();await t.init(e)}async function ho(t){return t=new uo(t),await po(t),t.size!==st&&t.readUint8Array||(t=new Vr(await cn(t.readable)),await po(t)),t}function mo(t,e,n){return t.readUint8Array(e,n)}function yo(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?Lr.prototype.createReadable.call(t,e):t.readable}const So="filename",go="rawFilename",bo="comment",xo="rawComment",zo="uncompressedSize",Eo="compressedSize",Fo="offset",Ro="diskNumberStart",Do="lastModDate",ko="rawLastModDate",Ao="lastAccessDate",vo="rawLastAccessDate",To="creationDate",Co="rawCreationDate",Io="internalFileAttributes",Uo="externalFileAttributes",_o="internalFileAttribute",Mo="externalFileAttribute",No="msdosAttributesRaw",Oo="msdosAttributes",Lo="msDosCompatible",Bo="zip64",Wo="encrypted",Po="version",Vo="versionMadeBy",Zo="zipCrypto",Ho="directory",jo="executable",qo="compressionMethod",Ko="signature",Yo="extraField",Go="unixMode",Xo="setuid",Jo="setgid",Qo="sticky",$o=[So,go,zo,Eo,Do,ko,bo,xo,Ao,vo,To,Co,Fo,Ro,Io,Uo,_o,Mo,No,Oo,Lo,Bo,Wo,Po,Vo,Zo,Ho,jo,"symlink",qo,Ko,"crc32",Yo,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",Go,"unixExternalUpper",Xo,Jo,Qo,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class ti{constructor(t){$o.forEach(e=>this[e]=t[e])}}const ei="File format is not recognized",ni="End of central directory not found",ri="End of Zip64 central directory locator not found",oi="Central directory header not found",ii="Local file header not found",ai="Zip64 extra field not found",si="File contains encrypted entry",ci="Encryption method not supported",li="Compression method not supported",ui="Split zip file",fi="Overlapping entry found",di="Entry data out of bounds",wi="Ambiguous archive",pi="Encrypted central directory is not supported",hi="Unsafe filename",mi="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",yi="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",Si="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",gi="64-bit value exceeds Number.MAX_SAFE_INTEGER",bi=/^[a-zA-Z]:/,xi="utf-8",zi="cp437",Ei=[[zo,N],[Eo,N],[Fo,N],[Ro,O]],Fi={[O]:{Pt:na,bytes:4},[N]:{Pt:ra,bytes:8}},Ri=i(o.MAX_SAFE_INTEGER);class Di{constructor(t,e={}){n.assign(this,{reader:new uo(t),options:e,Vt:new c})}async*getEntriesGenerator(t={}){const e=this;let{reader:r}=e;if(await po(r),r.size!==st&&r.readUint8Array||(r=new Vr(await cn(r.readable)),await po(r)),r.size<Y)throw new d(ei);const i=Vi(t,e.options),s=i==Dt,c=i!=At,u=function(t,e){if(t!==st){const e=Ot(t);if("number"!=typeof e||o.isNaN(e)||e<0)throw new d(Si);return e}return e==Dt?0:e==At?1/0:O}(Xi(e,t,"maxAppendedDataSize"),i),f=function(t,e){if(t===st)return e;if(!Pi(t))throw new d(yi);return t}(Xi(e,t,"filenameValidation"),i),w=Xi(e,t,"normalizeFilename"),{Zt:p,Ht:h}=await async function(t,e,n){const{size:r}=t,o=a.min(r,65557),i={count:64};let s,c,l=0;for await(const[n,a,u,f,d]of ji(t,o)){const o=ea(n,f+20);if(d+Y+o==r){const o=await Ki(t,n,a,f,d,r,i);if(2==o){if(s||(s=qi(u,f,d)),l++,!e||l>1)break}else 1!=o||c||(c=qi(u,f,d))}}return s||(s=c),s||(s=await async function(t,e,n){const{size:r}=t,o=a.min(r,e==1/0?r:65557+e);let i,s;for await(const[e,a,c,l,u]of ji(t,o)){const o=qi(c,l,u);i||(i=o);const f=await Ki(t,e,a,l,u,r,n);if(2==f)return o;1!=f||s||(s=o)}return s||i}(t,n,i)),{Zt:s,Ht:l}}(r,c,u);if(!p)throw await async function(t){return await Wi(t)==W}(r)?new d(ui):new d(ni);c&&h>1&&Gi("multiple end of central directory records");const m=te(p);let y=na(m,12),S=na(m,16);const g=p.offset,b=ea(m,20),x=g+Y+b;r.size-x>u&&Gi("appended data");let z=ea(m,4);const E=r.Lt||0;let R,D,k,A,v=ea(m,6),T=ea(m,10),C=0,I=X;const U=S==N||y==N||T==O||v==O;if(S!=N&&v!=O&&(S+=Bi(r,v)),U){const t=p.offset>=G?await mo(r,p.offset-G,G):dt,e=te(t);if(t.length==G&&na(e,0)==q){S=Bi(r,na(e,4))+ra(e,8);let t=await mo(r,S,X),o=te(t);const i=p.offset-G-X;if((t.length<X||na(o,0)!=j)&&S!=i&&i>=0){const e=S;S=i,S>e&&(C=S-e),t=await mo(r,S,X),o=te(t)}if(t.length<X||na(o,0)!=j)throw new d(ri);if(D=!0,k=ra(o,4)>44,k){const t=a.min(ra(o,4)-44,r.size-S-X);t>0&&(I+=t,A=function(t){const e={rawExtensibleData:t};if(t.length>=28){const r=te(t),o=ea(r,26);n.assign(e,{compressionMethod:ea(r,0),compressedSize:ra(r,2),uncompressedSize:ra(r,10),encryptionAlgorithm:ea(r,18),bitLength:ea(r,20),flags:ea(r,22),hashAlgorithm:ea(r,24),hashData:t.subarray(28,28+o)})}return e}(await mo(r,S+X,t)))}z==O?z=na(o,16):s&&z!=na(o,16)&&Gi("mismatched zip64 end of central directory record"),v==O?v=na(o,20):s&&v!=na(o,20)&&Gi("mismatched zip64 end of central directory record"),T==O?T=ra(o,32):s&&T!=ra(o,32)&&Gi("mismatched zip64 end of central directory record"),y==N?y=ra(o,40):s&&y!=ra(o,40)&&Gi("mismatched zip64 end of central directory record"),S=Bi(r,v)+ra(o,48)+C}}let _=y;const M=p.offset-(D?I+G:0);if(S>=r.size&&(C=r.size-S-y-Y,S=r.size-y-Y),E!=z)throw new d(ui);if(S<0)throw new d(ei);let B=0,P=await mo(r,S,y),V=te(P);if(y){if(P.length<4)throw new d(ei);const t=M-y;if(S!=t&&v==z){let e=!(na(V,B)==Z||Boolean(A&&A.compressedSize)||vi(V));if(!e&&t>=0&&t+4<=r.size&&(e=na(te(await mo(r,t,4)),0)==Z),e){const e=S;S=t,S>e&&(C+=S-e),P=await mo(r,S,y),V=te(P)}}}const H=M-S;if(y!=H&&H>=0&&v==z&&(y=H,P=await mo(r,S,y),V=te(P)),S<0||S>=r.size)throw new d(ei);e.directoryOffset=S,e.directoryLength=_;const J=Ji(e,t,"decryptCentralDirectory");let Q,ot;if(J&&T&&P.length>=4&&na(V,0)!=Z&&(k||vi(V))){const t=function(t,e,n){const r=t&&t.compressedSize?t.compressedSize:e;return r>0&&r<=n?r:n}(A,_,P.length);ot=P.subarray(t),P=await J(P.subarray(0,t),A),V=te(P),_=P.length,Q=!0}R=S;const it=Xi(e,t,"filenameEncoding"),at=Xi(e,t,"commentEncoding"),ct=s?new l:st;let lt;const ut=!s&&!D;!T&&ut&&(T=Ti(V,P,B));for(let o=0;o<T;o++){const i=new Ai(r,e.options);if(B+K>P.length||na(V,B)!=Z){if(0==o&&!Q&&(k||vi(V)))throw new d(pi);throw new d(oi)}Ii(i,V,B+6);const c=Boolean(i.bitFlag.languageEncodingFlag),l=B+K,u=l+i.filenameLength,p=u+i.extraFieldLength,h=ea(V,B+4),m=!(h>>8),y=h>>8==3,S=P.subarray(l,u),g=ea(V,B+32),b=p+g,x=P.subarray(p,b),z=c,E=c,D=na(V,B+38),A=D&L,v={readOnly:Boolean(1&A),hidden:Boolean(2&A),system:Boolean(4&A),directory:Boolean(16&A),archive:Boolean(32&A)},I=na(V,B+42),U=Ji(e,t,"decodeText")||Er,_=z?xi:it||zi,M=E?xi:at||zi;let N=U(S,_,Ft);if(N===st&&(N=Er(S,_)),w){const t=w(N);t!==st&&(N=t)}if(Hi(N,f)){const t=new d(hi);throw t.filename=N,t}let W=U(x,M,Rt);W===st&&(W=Er(x,M)),n.assign(i,{index:o,jt:Q,versionMadeBy:h,msDosCompatible:m,zip64:!1,compressedSize:0,uncompressedSize:0,qt:g,offset:I,diskNumberStart:ea(V,B+34),internalFileAttributes:ea(V,B+36),externalFileAttributes:D,msdosAttributesRaw:A,msdosAttributes:v,rawFilename:S,filenameUTF8:z,commentUTF8:E,rawExtraField:P.subarray(u,p),rawComment:x,filename:N,comment:W}),Ui(i,i,V,B+6),i.offset+=C,R=a.min(Bi(r,i.diskNumberStart)+i.offset,R),s&&(ct.has(i.filename)&&(lt=!0),ct.add(i.filename));const H=i.externalFileAttributes>>16&O;i.unixMode===st&&16877&H&&(i.unixMode=H);const j=Boolean(i.unixMode&et),q=Boolean(i.unixMode&nt),Y=Boolean(512&i.unixMode),G=40960==((i.unixMode===st?H:i.unixMode)&$),X=!G&&(i.unixMode!==st?!!(73&i.unixMode):y&&!!(73&H)),J=i.unixMode!==st&&(i.unixMode&$)==tt,ot=(H&$)==tt;n.assign(i,{setuid:j,setgid:q,sticky:Y,symlink:G,unixExternalUpper:H,internalFileAttribute:i.internalFileAttributes,externalFileAttribute:i.externalFileAttributes,executable:X,directory:J||ot||m&&v.directory||i.filename.endsWith(rt),zipCrypto:i.encrypted&&!i.extraFieldAES});const ft=new ti(i);ft.getData=(t,n)=>i.getData(t,ft,e.Vt,n),ft.arrayBuffer=async t=>{const n=new F,r=cn(n.readable).then(t=>t.arrayBuffer());return r.catch(()=>{}),await i.getData(n,ft,e.Vt,t),r},B=b,o==T-1&&ut&&(T+=Ti(V,P,B));const{onprogress:dt}=t;if(dt)try{await dt(o+1,T,new ti(i))}catch{}yield ft}let ft=B,wt=Ci(P.subarray(B))||(Q?Ci(ot):st);if(!wt&&!Q){const t=S+B,e=a.min(M-t,65541);e>=6&&(wt=Ci(await mo(r,t,e)))}wt&&(e.digitalSignature=wt,ft=B+6+wt.length),s&&B!=_&&ft!=_&&Gi("trailing central directory data"),lt&&Gi("duplicate filename");const pt=Xi(e,t,"extractPrependedData"),ht=Xi(e,t,"extractAppendedData"),mt=(s||pt)&&T&&4==R&&await async function(t){const e=await Wi(t);return e==W||808471376==e}(r)?4:0;return s&&(C||T&&R>mt)&&Gi("prepended data"),pt&&(e.prependedData=R>mt?await mo(r,mt,R-mt):dt),e.comment=b?await mo(r,g+Y,b):dt,ht&&(e.appendedData=x<r.size?await mo(r,x,r.size-x):dt),!0}async getEntries(t={}){const e=[];for await(const n of this.getEntriesGenerator(t))e.push(n);return e}async close(){const{reader:t}=this;t.readUint8Array||!t.readable||t.readable.locked||await t.readable.cancel()}}class ki{constructor(t={}){const{readable:e,writable:n}=new F,r=new Di(e,t).getEntriesGenerator();this.readable=new R({async pull(t){const{done:e,value:n}=await r.next();if(e)return t.close();const o={...n,readable:function(){const{readable:t,writable:e}=new F;if(n.getData)return async function(){try{await n.getData(e)}catch(t){try{await e.abort(t)}catch{}}}(),t}()};delete o.getData,t.enqueue(o)}}),this.writable=n}}class Ai{constructor(t,e){n.assign(this,{reader:t,options:e})}async getData(t,e,n,r={}){const o=this,i=qt(),{reader:s,index:c,offset:l,diskNumberStart:u,extraFieldAES:f,extraFieldZip64:w,compressionMethod:p,bitFlag:h,rawBitFlag:m,crc32:y,rawLastModDate:S,uncompressedSize:g,compressedSize:b}=o,{dataDescriptor:x}=h,z=e.localDirectory={},E=Bi(s,u)+l,F=await mo(s,E,ot),R=te(F);let k=Xi(o,r,wt),A=Xi(o,r,pt);const v=Xi(o,r,ht);if(_t(k,A),k=k&&k.length&&k,A=A&&A.length&&A,f&&99!=f.originalCompressionMethod)throw new d(li);if(F.length<ot||na(R,0)!=B)throw new d(ii);Ii(z,R,4);const{extraFieldLength:T,filenameLength:C}=z,I=z.dataOffset=E+ot+C+T,U=Xi(o,r,"checkLocalDirectory"),_=Vi(r,o.options),M=function(t,e){return t===st?e!=At:Boolean(t)}(U,_),N=function(t,e){return t===st?e==Dt:Boolean(t)}(U,_);let O=dt;if(N&&(C||T)){const t=await mo(s,E+ot,C+T);O=t.subarray(0,C),z.rawExtraField=t.subarray(C)}else z.rawExtraField=T?await mo(s,E+ot+C,T):dt;N&&(z.rawFilename=O),Ui(o,z,R,4,!0),M&&function(t,e,n,r){const{rawFilename:o}=t,i=t.jt&&!(8192&~e.rawBitFlag);!r||i||n.length==o.length&&!n.some((t,e)=>t!=o[e])||Gi("mismatched local file header (filename)"),(2057&e.rawBitFlag)!=(2057&t.rawBitFlag)&&Gi("mismatched local file header (general purpose bit flag)"),e.compressionMethod!=t.compressionMethod&&Gi("mismatched local file header (compression method)"),e.bitFlag.dataDescriptor||i||!(e.crc32||e.compressedSize||e.uncompressedSize)||e.crc32==t.crc32&&e.compressedSize==t.compressedSize&&e.uncompressedSize==t.uncompressedSize||Gi("mismatched local file header (crc32 or sizes)")}(o,z,O,N);const{lastAccessDate:W,creationDate:V,uid:Z,gid:H}=z;W&&(e.lastAccessDate=W),V&&(e.creationDate=V),Z!==st&&e.uid===st&&(e.uid=Z),H!==st&&e.gid===st&&(e.gid=H);const j=o.encrypted&&z.encrypted&&!v,q=j&&!f;if(v||(e.zipCrypto=q),j&&!(64&~z.rawBitFlag))throw new d(ci);const K=v?st:mn(p);if(0!=p&&8!=p&&9!=p&&!K&&!v)throw new d(li);if(j){if(!q&&(f.strength<1||f.strength>3))throw new d(ci);if(!k&&!A)throw new d(si)}if(I+b>s.size)throw new d(di);const Y=b,G=sn(s.createReadable({offset:I,size:Y})),X=Ut(Xi(o,r,mt)),J=Xi(o,r,"checkPasswordOnly");let Q=Xi(o,r,"checkOverlappingEntry");const $=Xi(o,r,"checkOverlappingEntryOnly");$&&(Q=!0);const{onstart:tt,onprogress:et,onend:nt}=r,rt=0!=p&&!v,it=v?b:g,at=9==p;let ct=Xi(o,r,St);at&&(ct=!1);const lt=Xi(o,r,"checkCrc32"),ut=(lt===st?Xi(o,r,"checkSignature"):lt)&&!v&&(!j||q||f&&1==f.vendorVersion),ft={options:{codecType:Ln,password:k,rawPassword:A,zipCrypto:q,encryptionStrength:f&&f.strength,checkCrc32:ut,checkAuthenticationCode:Xi(o,r,"checkAuthenticationCode"),passwordVerification:q&&(x?S>>>8&L:y>>>24&L),outputSize:it,crc32:y,compressed:rt,encrypted:j,useWebWorkers:Xi(o,r,yt),useCompressionStream:ct,transferStreams:Xi(o,r,gt),deflate64:at,format:K?K.format:st,codecURI:K?K.codecURI:st,compressionMethod:p,rawBitFlag:m,checkPasswordOnly:J},config:i,ut:{signal:X,size:Y,onstart:tt,onprogress:et,onend:nt}};let xt,zt;Q&&await async function({reader:t,Kt:e,index:n,offset:r,crc32:o,compressedSize:i,uncompressedSize:a,dataOffset:s,dataDescriptor:c,extraFieldZip64:l,Vt:u}){let f=0;if(c&&(f=l?20:12),f){const n=await mo(t,s+i,f+4),r=te(n);let c=n.length==f+4&&na(r,0)==P;if(c){const t=Li(r,4,l);(e.encrypted&&!e.zipCrypto||t.crc32==o)&&t.compressedSize==i&&t.uncompressedSize==a?f+=4:c=!1}if(n.length>=f){const t=Li(r,c?4:0,l);t.signature=c,e.localDirectory.dataDescriptor=t}}const w={start:r,end:s+i+f,Kt:e};for(const[t,e]of u)if(t!=n&&w.start<e.end&&e.start<w.end){const t=new d(fi);throw t.overlappingEntry=e.Kt,t}u.set(n,w)}({reader:s,Kt:e,index:c,offset:E,crc32:y,compressedSize:b,uncompressedSize:g,dataOffset:I,dataDescriptor:x||z.bitFlag.dataDescriptor,extraFieldZip64:w||z.extraFieldZip64,Vt:n});try{if(!$){J&&(t=new D),t=new fo(t),await po(t,function(t,e,n){return a.min(t,n?1032*e:e)}(it,b,rt)),({writable:xt}=t);const{outputSize:e}=await hr({readable:G,writable:xt},ft);if(t.size+=e,e!=it)throw new d(gn)}}catch(e){if(e.outputSize!==st&&(t.size+=e.outputSize),!J||e.message!=xe)throw zt=e,e}finally{if((wo(t)||!Xi(o,r,bt))&&xt&&!xt.locked){const t=xt.getWriter();if(zt)try{await t.abort(zt)}catch{}else await t.close()}}return J||$?st:t.getData?t.getData():xt}}function vi(t){const e=a.min(t.byteLength,1024)-3;for(let n=0;n<e;n++)if(134630224==na(t,n))return!0;return!1}function Ti(t,e,n){let r=0;for(;n+K<=e.length&&na(t,n)==Z;)n+=K+ea(t,n+28)+ea(t,n+30)+ea(t,n+32),r++;return r%65536?0:r}function Ci(t){if(t.length>=6){const e=te(t);if(na(e,0)==V){const n=ea(e,4);if(6+n<=t.length)return t.subarray(6,6+n)}}}function Ii(t,e,r){const o=t.rawBitFlag=ea(e,r+2),i=!(1&~o),a=na(e,r+6);n.assign(t,{encrypted:i,version:ea(e,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&Q)==Q},rawLastModDate:a,lastModDate:Qi(a),filenameLength:ea(e,r+22),extraFieldLength:ea(e,r+24)})}function Ui(t,e,r,o,i){const{rawExtraField:a}=e,l=e.extraField=new c,u=te(a);let f=0;try{for(;f<a.length;){const t=ea(u,f),e=ea(u,f+2);l.set(t,{type:t,data:a.slice(f+4,f+4+e)}),f+=4+e}}catch{}const w=ea(r,o+4);n.assign(e,{signature:na(r,o+10),crc32:na(r,o+10),compressedSize:na(r,o+14),uncompressedSize:na(r,o+18)});const p=l.get(1);p&&(function(t,e){e.zip64=!0;const n=te(t.data),r=Ei.filter(([t,n])=>e[t]==n),o=r.reduce((t,[,e])=>t+Fi[e].bytes,0);if(t.data.length<o)throw new d(ai);for(let o=0,i=0;o<r.length;o++){const[a,s]=r[o],c=Fi[s];e[a]=t[a]=c.Pt(n,i),i+=c.bytes}}(p,e),e.extraFieldZip64=p);const h=l.get(28789);h&&(_i(h,So,go,e,t),e.extraFieldUnicodePath=h);const m=l.get(25461);m&&(_i(m,bo,xo,e,t),e.extraFieldUnicodeComment=m);const y=l.get(39169);y&&y.data.length>=7?(function(t,e,r){const o=te(t.data),i=ta(o,4);n.assign(t,{vendorVersion:ta(o,0),vendorId:ta(o,2),strength:i,originalCompressionMethod:r,compressionMethod:ea(o,5)}),e.compressionMethod=t.compressionMethod,1!=t.vendorVersion&&(e.crc32=st)}(y,e,w),e.extraFieldAES=y):e.compressionMethod=w;const S=l.get(13);S&&(Mi(S,e),e.extraFieldPkwareUnix=S);const g=l.get(22613);g&&(Mi(g,e),e.extraFieldUnixType1=g);const b=l.get(10);b&&(function(t,e){const r=te(t.data);let o,i=4;try{for(;i<t.data.length&&!o;){const e=ea(r,i),n=ea(r,i+2);1==e&&(o=t.data.slice(i+4,i+4+n)),i+=4+n}}catch{}if(o&&24==o.length){const r=te(o),i=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),s=r.getBigUint64(16,!0);n.assign(t,{rawLastModDate:i,rawLastAccessDate:a,rawCreationDate:s});const c={lastModDate:$i(i),lastAccessDate:$i(a),creationDate:$i(s)};n.assign(t,c),n.assign(e,c,{rawLastAccessDate:a,rawCreationDate:s})}}(b,e),e.extraFieldNTFS=b);const x=l.get(30805);let z;if(x&&(z=Ni(x,e,!1),e.extraFieldUnix=x),!z){const t=l.get(30837);t&&(Ni(t,e,!0),e.extraFieldInfoZip=t)}const E=l.get(J);E&&(function(t,e,n){if(!t.data.length)return;const r=te(t.data),o=ta(r,0),i=[],a=[];n?(1&~o||(i.push(Do),a.push(ko)),2&~o||(i.push(Ao),a.push(vo)),4&~o||(i.push(To),a.push(Co))):t.data.length>=5&&(i.push(Do),a.push(ko));let c=1;i.forEach((n,o)=>{if(t.data.length>=c+4){const i=na(r,c);e[n]=t[n]=new s(1e3*(0|i));const l=a[o];t[l]=i}c+=4})}(E,e,i),e.extraFieldExtendedTimestamp=E);const F=l.get(6534);F&&(e.extraFieldUSDZ=F)}function _i(t,e,r,o,i){if(t.data.length<5)return void(t.valid=!1);const a=te(t.data),s=new ue;s.append(i[r]);const c=te(new w(4));c.setUint32(0,s.get(),!0);const l=na(a,1),u=ta(a,0);n.assign(t,{version:u,[e]:Er(t.data.subarray(5)),valid:1==u&&!i.bitFlag.languageEncodingFlag&&l==na(c,0)}),t.valid&&(o[e]=t[e],o[e+"UTF8"]=!0)}function Mi(t,e){if(t.data.length<8)return;const r=te(t.data),o={lastAccessDate:new s(1e3*(0|na(r,0))),lastModDate:new s(1e3*(0|na(r,4)))};t.data.length>=12&&(o.uid=ea(r,8),o.gid=ea(r,10)),n.assign(t,o),n.assign(e,o)}function Ni(t,e,r){try{const o=te(t.data);let i,a;if(r){let e=0;const r=ta(o,e++),s=ta(o,e++);i=Oi(t.data.subarray(e,e+s)),e+=s;const c=ta(o,e++);a=Oi(t.data.subarray(e,e+c)),n.assign(t,{version:r,uid:i,gid:a})}else t.data.length>=4&&(i=ea(o,0),a=ea(o,2),n.assign(t,{uid:i,gid:a}));return i!==st&&(e.uid=i),a!==st&&(e.gid=a),i!==st||a!==st}catch{}}function Oi(t){const e=new w(4);return e.set(t,0),new m(e.buffer,e.byteOffset,4).getUint32(0,!0)}function Li(t,e,n){const r=na(t,e);let o,i;return n?(o=ra(t,e+4),i=ra(t,e+12)):(o=na(t,e+4),i=na(t,e+8)),{crc32:r,compressedSize:o,uncompressedSize:i}}function Bi(t,e){return t.Wt?t.Wt(e):0}async function Wi(t){return na(te(await mo(t,0,4)))}function Pi(t){return t===Dt||t===kt||t===At}function Vi(t,e){return Zi(t,Zi(e,kt))}function Zi(t,e){const n=t.strictness;if(n!==st){if(!Pi(n))throw new d(mi);return n}const r=t.checkAmbiguity;return r===st?e:r?Dt:e==At?At:kt}function Hi(t,e){if(e==At)return!1;const n=t.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(n.includes("..")||t.startsWith("/")||t.startsWith("\\\\")||bi.test(t))||e==Dt&&(n.includes(".")||n.includes(""))}async function*ji(t,e){const n=t.size-e,r=await mo(t,n,e),o=te(r);for(let t=r.length-Y;t>=0;t--)na(o,t)==H&&(yield[o,n,r,t,n+t])}function qi(t,e,n){return{offset:n,buffer:t.slice(e,e+Y).buffer}}async function Ki(t,e,n,r,o,i,a){const s=ea(e,r+10),c=na(e,r+12),l=na(e,r+16);if(s==O||c==N||l==N)return await Yi(t,e,n,o-G,i,a)==q?2:0;if(!s&&!c)return 1;const u=ea(e,r+6);for(const r of[o-c,Bi(t,u)+l])if(await Yi(t,e,n,r,i,a)==Z)return 2;return 0}async function Yi(t,e,n,r,o,i){return r<0||r+4>o?st:r>=n?na(e,r-n):i.count>0?(i.count--,na(te(await mo(t,r,4)),0)):st}function Gi(t){const e=new d(wi);throw e.reason=t,e}function Xi(t,e,n){return e[n]===st?t.options[n]:e[n]}function Ji(t,e,n){return It(Xi(t,e,n))}function Qi(t){const e=(4294901760&t)>>16,n=t&O,r=new s(1980+((65024&e)>>9),((480&e)>>5)-1,31&e,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<at?at:r}function $i(t){return new s(o(t/i(1e4)-i(116444736e5)))}function ta(t,e){return t.getUint8(e)}function ea(t,e){return t.getUint16(e,!0)}function na(t,e){return t.getUint32(e,!0)}function ra(t,e){const n=t.getBigUint64(e,!0);if(n>Ri)throw new d(gi);return o(n)}var oa=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:wi,ERR_BAD_FORMAT:ei,ERR_CENTRAL_DIRECTORY_NOT_FOUND:oi,ERR_ENCRYPTED:si,ERR_ENCRYPTED_CENTRAL_DIRECTORY:pi,ERR_ENTRY_DATA_OUT_OF_BOUNDS:di,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:ri,ERR_EOCDR_NOT_FOUND:ni,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:ai,ERR_INVALID_AUTHENTICATION_CODE:be,ERR_INVALID_COMPRESSED_DATA:bn,ERR_INVALID_CRC32:xn,ERR_INVALID_FILENAME_VALIDATION:yi,ERR_INVALID_MAX_APPENDED_DATA_SIZE:Si,ERR_INVALID_PASSWORD:Se,ERR_INVALID_SIGNATURE:ge,ERR_INVALID_STRICTNESS:mi,ERR_INVALID_UNCOMPRESSED_SIZE:gn,ERR_LOCAL_FILE_HEADER_NOT_FOUND:ii,ERR_OVERLAPPING_ENTRY:fi,ERR_SPLIT_ZIP_FILE:ui,ERR_UNSAFE_FILENAME:hi,ERR_UNSUPPORTED_COMPRESSION:li,ERR_UNSUPPORTED_ENCRYPTION:ci,ERR_UNSUPPORTED_UINT64:gi,ERR_WORKER_STARTUP_TIMEOUT:Pn,ZipReader:Di,ZipReaderStream:ki});const ia="File already exists",aa="Zip file comment exceeds 64KB",sa="Invalid zip file comment (must be a Uint8Array)",ca="File entry comment exceeds 64KB",la="Invalid file entry comment (must be a string)",ua="Invalid date (must be a valid Date instance)",fa="File entry name exceeds 64KB",da="Version exceeds 65535",wa="The strength must equal 1, 2, or 3",pa="Encryption is not supported in USDZ files",ha="Encryption is not supported when the 'passThrough' option is set",ma="Invalid extra field (must be a Map)",ya="Invalid extra field type (must be integer 0..65535)",Sa="Invalid extra field data (must be a Uint8Array)",ga="Extra field data exceeds 64KB",ba=-2147483648,xa=2147483647,za=i(0),Ea=i("0x7fffffffffffffff"),Fa="Zip64 is not supported (set the 'zip64' option to 'true')",Ra="Undefined uncompressed size",Da="Undefined compression method",ka="Undefined reader",Aa="Zip file not empty",va="Invalid uid (must be integer 0..2^32-1)",Ta="Invalid gid (must be integer 0..2^32-1)",Ca="Invalid UNIX mode (must be integer 0..65535)",Ia="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Ua="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",_a="Invalid msdosAttributesRaw (must be integer 0..255)",Ma="Invalid msdosAttributes (must be an object with boolean flags)",Na="Invalid level (must be integer 0..9)",Oa="Signature data exceeds 64KB",La=new w([7,0,2,0,65,69,3,0,0]),Ba="infozip",Wa="unix";let Pa=0;const Va=[];class Za{constructor(t,e={}){t=new fo(t);const{availableSize:r=ct,maxSize:o=ct}=t,i=r>0&&r!==ct&&o>0&&o!==ct;n.assign(this,{writer:t,Yt:i,options:e,Gt:new c,Xt:new l,offset:e[zt]===st?t.size||t.writable.size||0:e[zt],Jt:e[zt]===st?0:e[zt]-(t.size||t.writable.size||0),Qt:new l,$t:[],te:0,ee:st})}prependZip(t){return ja(this,async function(t,e){if(t.Xt.size)throw new d(Aa);await t.ne(e)}(this,t))}appendZip(t){return ja(this,this.ne(t))}async ne(t){const r=this,{Qt:o,Xt:i,Gt:a}=r;for(;o.size;)await S.allSettled(e.from(o));let s;const l=new S(t=>s=t);o.add(l);const u=[];let f;try{t=new uo(t),await po(t),t.size!==st&&t.readUint8Array||(t=new Vr(await cn(t.readable)),await po(t));const{ZipReader:o}=await S.resolve().then(function(){return oa}),s=new o(t),l=await s.getEntries();await s.close(),await po(r.writer);const{directoryOffset:w}=s;l.forEach(({filename:t})=>{if(i.has(t))throw new d(ia);i.add(t),u.push(t)}),r.re=!0;const{oe:p}=r;r.oe=new S(t=>f=()=>{r.re=!1,t()}),await p,r.Yt&&(delete r.Yt,await async function(t){return te(await mo(t,0,4)).getUint32(0,!0)==W}(t)||(await cs(r.writer,as()),r.offset+=4));const h=await async function(t,n,r,o){const{writer:i}=t,a=new c;if(i.closeDisk){const s=e.from(r).sort((t,e)=>is(n,t)-is(n,e));let c=0;for(const e of s){const r=is(n,e);await rs(t,n,c,r-c),ts(i,await os(n,r))&&await i.closeDisk(),a.set(e,{offset:es(t,i),diskNumberStart:Qa(i)}),c=r}await rs(t,n,c,o-c)}else{const e=t.offset;await rs(t,n,0,o),r.forEach(t=>a.set(t,{offset:e+is(n,t),diskNumberStart:0}))}return a}(r,t,l,w);l.forEach(t=>{const{version:e,rawLastModDate:r,rawFilename:o,bitFlag:i,encrypted:s,uncompressedSize:c,compressedSize:l,extraFieldZip64:u}=t;let{compressionMethod:f,rawExtraField:d}=t;const{level:w,languageEncodingFlag:p,dataDescriptor:m}=i;d=ns(d||dt),t.extraFieldAES&&(f=99);const y=ks(d),S=Boolean(u)&&u.uncompressedSize!==st,g=Boolean(u)&&u.compressedSize!==st,b=-7&vs(w,p,m,s,f)|w<<1,{ie:x,ae:z}=As({version:e,bitFlag:b,compressionMethod:f,uncompressedSize:c,compressedSize:l,rawLastModDate:r,rawFilename:o,se:g,ce:S,extraFieldLength:y}),{crc32:E}=t;E!==st&&Fs(z,10,E);const{offset:F,diskNumberStart:R}=h.get(t);n.assign(t,{ce:S,se:g,offset:F,diskNumberStart:R,le:!1,ue:dt,fe:dt,de:dt,we:dt,pe:dt,rawExtraField:d,extendedTimestamp:!1,ie:x,ae:z}),a.set(t.filename,t)})}catch(t){throw u.forEach(t=>i.delete(t)),t}finally{s(),o.delete(l),f&&f()}}add(t="",r,c={}){const l=this,{Qt:u}=l,f=async function(t,r,c,l){if(l=n.assign({},l),r=r.trim(),ps(t,l,Ho)&&!r.endsWith(rt)&&(r+=rt),t.Xt.has(r))throw new d(ia);t.Xt.add(r),Pa<qt().maxWorkers?Pa++:await new S(t=>Va.push(t));try{return await async function(t,r,c,l){const u=function(t,n,r){n=n.trim();let o=ps(t,r,Lo),i=ps(t,r,Vo,o?20:768);const a=ps(t,r,jo),s=gs(t,r,"uid"),c=gs(t,r,"gid");let l=gs(t,r,Go),u=ps(t,r,"unixExtraFieldType"),f=ps(t,r,Xo),w=ps(t,r,Jo),p=ps(t,r,Qo);if(Nt(s,N,va),Nt(c,N,Ta),Nt(l,O,Ca),u!==st&&u!==Ba&&u!==Wa)throw new d(Ia);if(u===Wa&&(s!==st&&s>O||c!==st&&c>O))throw new d(Ua);u!==st||s===st&&c===st||(u=Ba);let h=gs(t,r,No),m=ps(t,r,Oo);const y=h!==st||m!==st;if(s!==st||c!==st||l!==st||u||a?(o=!1,i=i&L|768):y&&(o=!0,i&=L),Nt(h,L,_a),m&&("object"!=typeof m||e.isArray(m)))throw new d(Ma);if(i>O)throw new d(da);let S=ys(t,r,Uo,Mo);const g=S!==st;g||(S=0),!r[Ho]&&n.endsWith(rt)&&(r[Ho]=!0);const b=ps(t,r,Ho);if(b?(n.endsWith(rt)||(n+=rt),g||(S=16,o||(S|=16877<<16))):o||g||(S=a?493<<16:27525120),!o){const t=l!==st||Boolean(f||w||p);l=l===st?S>>16&O:l&O,f?l|=et:f=Boolean(l&et),w?l|=nt:w=Boolean(l&nt),p?l|=512:p=Boolean(512&l),g&&!t||(b?l=-61441&l|tt:l&$||(l|=32768),S=(l&O)<<16|S&O)}({msdosAttributesRaw:h,msdosAttributes:m}=function(t,e){if(t!==st)t&=L;else if(e!==st){const{readOnly:n,hidden:r,system:o,directory:i,archive:a}=e;let s=0;n&&(s|=1),r&&(s|=2),o&&(s|=4),i&&(s|=16),a&&(s|=32),t=s&L}return e===st&&(e={readOnly:Boolean(1&t),hidden:Boolean(2&t),system:Boolean(4&t),directory:Boolean(16&t),archive:Boolean(32&t)}),{msdosAttributesRaw:t,msdosAttributes:e}}(h,m)),y&&(S=S&N|h&L);const x=S>>16&O,z=l!==st&&40960==(l&$);return{name:n,he:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:S,unixExternalUpper:x,uid:s,gid:c,unixMode:l,unixExtraFieldType:u,symlink:z,setuid:f,setgid:w,sticky:p,msdosAttributesRaw:h,msdosAttributes:m}}}(t,r,l);({name:r}=u);const f=function(t,e,n){const r=ms(t,n,"encodeText")||de;let i=r(e,Ft);if(i===st&&(i=de(e)),ks(i)>O)throw new d(fa);const a=n[bo]||"";if(typeof a!=ft)throw new d(la);let c=r(a,Rt);if(c===st&&(c=de(a)),ks(c)>O)throw new d(ca);const l=ps(t,n,Po);if(l!==st&&l>O)throw new d(da);const u=hs(t,n,Do,new s),f=ps(t,n,ko),w=hs(t,n,Ao),p=hs(t,n,To),h=ys(t,n,Io,_o,0),m=ps(t,n,ht),y=ps(t,n,wt),S=ps(t,n,pt);_t(y,S);const g=gs(t,n,"encryptionStrength",3),b=ps(t,n,Zo),x=ps(t,n,"extendedTimestamp",!0),z=ps(t,n,"ntfsTimestamp"),E=ps(t,n,"keepOrder",!0),F=ps(t,n,yt),R=ps(t,n,gt),D=ps(t,n,"bufferedWrite"),k=ms(t,n,"createTempStream"),A=ps(t,n,"dataDescriptorSignature",!0),v=Ut(ps(t,n,mt)),T=ps(t,n,"useUnicodeFileNames",!0),C=ps(t,n,qo),I=m||C===st?st:mn(C);if(!m&&C!==st&&0!==C&&8!==C&&!I)throw new d("Compression method not supported");let U=gs(t,n,"level");if(Nt(U,9,Na),t.options[Et]){if(y!==st||S!==st)throw new d(pa);U===st&&C===st&&(U=0)}m&&(U=st);let _=ps(t,n,St),M=ps(t,n,xt);D&&M===st&&(M=!1),(M===st||b&&!m)&&(M=!0),U!==st&&6!=U&&(_=!1);const N=ps(t,n,Bo);if(!(b||y===st&&S===st||o.isInteger(g)&&g>=1&&g<=3))throw new d(wa);const L=Ya(n[Yo]),B=Ya(n.localExtraField);return{comment:a,he:{rawFilename:i,rawComment:c,version:l,lastModDate:u,rawLastModDate:f,lastAccessDate:w,creationDate:p,internalFileAttributes:h,passThrough:m,password:y,rawPassword:S,encryptionStrength:g,zipCrypto:b,extendedTimestamp:x,ntfsTimestamp:z,keepOrder:E,useWebWorkers:F,transferStreams:R,bufferedWrite:D,createTempStream:k,dataDescriptorSignature:A,signal:v,useUnicodeFileNames:T,compressionMethod:C,format:I?I.format:st,codecURI:I?I.codecURI:st,me:I?I.versionNeeded:st,level:U,useCompressionStream:_,dataDescriptor:M,zip64:N,rawExtraField:L,ye:B}}}(t,r,l),{comment:p}=f,h=l[Yo];let m;t.Gt.set(r,st);try{const{he:e}=f;0==e.level||e.compressionMethod!==st||e.passThrough||await async function(t){const{CompressionStream:e,CompressionStreamFallback:n}=t;if(n&&!n.xt)return!0;if(Tn(e)||vn(e,En))return!0;if(n)try{return await void 0,!0}catch{return!1}return!1}(qt())||(e.level=0);const o=await async function(t,e,{he:r},o){if(r.passThrough&&!e&&!ps(t,o,Ho))throw new d(ka);let i;return e&&(e=new uo(e),await po(e),({size:i}=e)),n.assign({reader:e},function(t,e,n,r,o){const{passThrough:i,zipCrypto:a,password:s,rawPassword:c,encryptionStrength:l}=r;let{dataDescriptor:u,zip64:f,level:w,compressionMethod:p}=r,h=0,m=0;if(i&&e){if(m=o[zo],m===st)throw new d(Ra);if(p===st)throw new d(Da)}const y=!0===f,S=ps(t,o,Wo);if(e&&i&&!S&&ks(s,c))throw new d(ha);const g=e&&(Boolean(s&&ks(s)||c&&ks(c))||i&&S);e||(w=0,p=0);const b=g?a?12:16+4*l:0;e&&(i?(o.uncompressedSize=m,h=n===st?bs(m)+b:n):n===st?(u=!0,(f||f===st)&&(f=!0,m=h=4294967296)):(o.uncompressedSize=m=n,h=(xs(p,w)?bs(m):m)+b));const x=!(g||e&&(0!==n||i)||xs(p,w));x&&!a&&ps(t,o,xt)===st&&(u=!1);const z=y||m>=N,E=y||h>=N;if(z||E){if(!1===f)throw new d(Fa);f=!0}return f=f||!1,{Se:h,he:{dataDescriptor:u,ge:x,zip64:f,ce:z,se:E,uncompressedSize:m,level:w,compressionMethod:p,encrypted:g}}}(t,Boolean(e),i,r,o))}(t,c,f,l);({reader:c}=o);const p=$a(t.writer),h=Qa(t.writer),y=function(t){const{rawFilename:e,lastModDate:n,rawLastModDate:r,lastAccessDate:o,creationDate:i,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:f,dataDescriptor:w,directory:p,rawExtraField:h,ye:m,encryptionStrength:y,extendedTimestamp:S,ntfsTimestamp:g,passThrough:b,encrypted:x,ce:z,se:E,uncompressedSize:F,crc32:R}=t;let{version:D,compressionMethod:k}=t;const A=!p&&xs(k,c);let v;const T=b||!A,C=l&&(t.bufferedWrite||!w||!z&&!E||T),I=C||l&&w&&(z||E);if(l&&(z||E)){const t=20,e=Ja(t);if(e.be(1),e.be(t-4),v=e.xe,C&&(e.ze(F),T)){const t=x?u?12:16+4*y:0;e.ze(b?0:F+t)}}else v=dt;let U,_,M,N,L;if(x&&!u){const t=Ja(ks(La)+2);t.be(39169),t.Ee(La),U=t.xe,U[8]=y}else U=dt;if(S){const t=fs(n),e=ds(t);if(e){const e=9+(o?4:0)+(i?4:0),n=Ja(e);N=1+(o?2:0)+(i?4:0),n.be(J),n.be(e-4),n.Fe(N),n.Re(t),o&&n.Re(ws(fs(o))),i&&n.Re(ws(fs(i))),M=n.xe}else M=dt;if(g===st?!e||Boolean(o||i):g)try{const t=us(n),e=Ja(36);e.be(10),e.be(32),e.De(4),e.be(1),e.be(24),e.ze(t),e.ze(o?us(o):t),e.ze(i?us(i):t),_=e.xe}catch{_=dt}else _=dt}else _=M=dt;try{const{uid:e,gid:n,unixExtraFieldType:r}=t;if(r!=Ba||e===st&&n===st)if(r!=Wa||e===st&&n===st)L=dt;else{const t=Ja(8);t.be(30805),t.be(4),t.be((e===st?0:e)&O),t.be((n===st?0:n)&O),L=t.xe}else{const t=Xa(e===st?0:e),r=Xa(n===st?0:n),o=3+t.length+r.length,i=Ja(4+o);i.be(30837),i.be(o),i.Fe(1),i.Fe(t.length),i.Ee(t),i.Fe(r.length),i.Ee(r),L=i.xe}}catch{L=dt}k===st&&(k=A?8:0),D===st&&(D=0!=k||p||x?20:10);const{me:W}=t;A&&W!==st&&(D=D>W?D:W),l&&(D=D>45?D:45),x&&!u&&(D=D>51?D:51,b&&R!==st&&(U[4]=1),Es(te(U),9,k),k=99);const P=I?ks(v):0,V=P+ks(U,M,_,L,h,m);if(V+(t[Et]?67:0)>O)throw new d(ga);const Z=new s(2e3*a.ceil(a.floor(n.getTime()/1e3)/2)),{ie:H,ae:j,rawLastModDate:q}=As({version:D,bitFlag:vs(c,f,w,x,k),compressionMethod:k,uncompressedSize:F,lastModDate:Z<at?at:Z>it?it:Z,rawLastModDate:r,rawFilename:e,se:E,ce:z,extraFieldLength:V}),K=Ja(ot+ks(e)+V),Y=K.xe,G=te(Y);return K.Re(B),K.Ee(H),K.Ee(e),I&&K.Ee(v),K.Ee(U),K.Ee(M),K.Ee(_),K.Ee(L),K.Ee(h),K.Ee(m),w&&(E||Fs(G,18,0),z||Fs(G,22,0)),{ke:Y,Ae:G,ie:H,ae:j,lastModDate:n,rawLastModDate:q,encrypted:x,compressed:A,version:D,compressionMethod:k,ve:N,ue:dt,Te:P,de:M,we:_,pe:L,fe:U,extraFieldLength:V}}(l=n.assign({},l,u.he,f.he,o.he,{signature:l[Ko],crc32:l.crc32===st?l[Ko]:l.crc32,offset:t.offset-p,diskNumberStart:h,[Et]:t.options[Et]})),g=function({zip64:t,dataDescriptor:e,dataDescriptorSignature:n}){let r,o=dt,i=0,a=t?20:12;return n&&(a+=4),e&&(o=new w(a),r=te(o),n&&(i=4,Fs(r,0,P))),{Ce:o,Ie:r,Ue:i}}(l),b=ks(y.ke,g.Ce);m=await async function(t,e,r,o,a){const{Gt:s,writer:c}=t,{keepOrder:l,dataDescriptor:u,ge:f,signal:w}=a,{_e:p}=o,h=t.options[Et],m=t.ee;let y,g,b,x,z,E,R,D={},k=0;s.set(e,D),t.ee=D;try{let g;l&&(g=m&&m.Me,D.Me=new S(t=>b=t)),a.bufferedWrite||!l||t.re||t.te||!u&&!f?(y=!0,t.te++,R=a.createTempStream?await a.createTempStream():new F(st,st,{highWaterMark:ct}),R.size=0,await po(c)):(R=c,await A()),await po(R);const T=$a(c);t.Yt&&!y&&await ss(t,c),h&&!y&&Ga(o,t.offset-T);const{ke:C}=p;y||(await g,await v());const I=Qa(c),U=es(t,c);if(D.diskNumberStart=I,y||(z=!0,E=c.size,await cs(R,C)),D=await async function(t,e,{diskNumberStart:r,Me:o},a,s,c){const{_e:l,Ne:u,Oe:f}=a,{ie:w,ae:p,lastModDate:h,rawLastModDate:m,encrypted:y,compressed:S,version:g,compressionMethod:b,ue:x,Te:z,de:E,ve:F,we:R,pe:D,fe:k}=l,{Ce:A}=u,{rawFilename:v,lastAccessDate:T,creationDate:C,password:I,rawPassword:U,level:_,zip64:M,ce:O,se:B,zipCrypto:W,dataDescriptor:P,directory:V,executable:Z,versionMadeBy:H,rawComment:j,rawExtraField:q,useWebWorkers:K,transferStreams:Y,onstart:G,onprogress:X,onend:J,signal:Q,encryptionStrength:$,extendedTimestamp:tt,msDosCompatible:et,internalFileAttributes:nt,externalFileAttributes:rt,uid:ot,gid:it,unixMode:at,symlink:ct,setuid:lt,setgid:ut,sticky:ft,unixExternalUpper:dt,msdosAttributesRaw:wt,msdosAttributes:pt,useCompressionStream:ht,passThrough:mt,format:yt,codecURI:St}=c,gt={Me:o,versionMadeBy:H,zip64:M,directory:Boolean(V),executable:Boolean(Z),filenameUTF8:!0,rawFilename:v,commentUTF8:!0,rawComment:j,ue:x,Te:z,de:E,we:R,pe:D,fe:k,rawExtraField:q,extendedTimestamp:tt,msDosCompatible:et,internalFileAttributes:nt,externalFileAttributes:rt,diskNumberStart:r,uid:ot,gid:it,unixMode:at,symlink:Boolean(ct),setuid:lt,setgid:ut,sticky:ft,unixExternalUpper:dt,msdosAttributesRaw:wt,msdosAttributes:pt};let{crc32:bt,uncompressedSize:xt}=c,zt=0;mt||(xt=0);const{writable:Et}=e;if(t){const n=sn(yo(t)),r=t.size,o={options:{codecType:On,level:_,rawPassword:U,password:I,encryptionStrength:$,zipCrypto:y&&W,passwordVerification:y&&W&&m>>8&L,computeCrc32:!mt,compressed:S&&!mt,encrypted:y&&!mt,useWebWorkers:K,useCompressionStream:ht,transferStreams:Y,format:yt,codecURI:St,compressionMethod:b},config:s,ut:{signal:Q,size:r,onstart:G,onprogress:X,onend:J}};try{const t=await hr({readable:n,writable:Et},o);if(zt=t.outputSize,e.size+=zt,mt||(xt=t.inputSize,y&&!W||(bt=t.crc32)),!B&&zt>=N||!O&&xt>=N)throw new d(Fa)}catch(t){throw t.outputSize!==st&&(e.size+=t.outputSize),t}}return function({crc32:t,compressedSize:e,uncompressedSize:n,_e:r,Ne:o},{zip64:a,zipCrypto:s,passThrough:c,dataDescriptor:l}){const{ae:u,encrypted:f}=r,{Ie:d,Ue:w}=o;f&&!s&&!c||t===st||(Fs(u,10,t),l&&Fs(d,w,t)),a?l&&(Rs(d,w+4,i(e)),Rs(d,w+12,i(n))):(Fs(u,14,e),Fs(u,18,n),l&&(Fs(d,w+4,e),Fs(d,w+8,n)))}({crc32:bt,compressedSize:zt,uncompressedSize:xt,_e:l,Ne:u},c),P&&await cs(e,A),n.assign(gt,{uncompressedSize:xt,compressedSize:zt,lastModDate:h,rawLastModDate:m,creationDate:C,lastAccessDate:T,encrypted:Boolean(y),zipCrypto:Boolean(W),size:f+zt,compressionMethod:b,version:g,ie:w,ae:p,signature:bt,crc32:!y||W||mt?bt:st,ve:F,ce:O,se:B}),gt}(r,R,D,o,qt(),a),y||(z=!1),s.set(e,D),D.filename=e,y){if(await S.all([R.writable.getWriter().close(),g]),await A(),t.Yt&&await ss(t,c),x=!0,E=c.size,await v(),D.diskNumberStart=Qa(c),D.offset=es(t,c),h){const e=o.Oe;Ga(o,t.offset-$a(c)),D.size+=o.Oe-e}!function({rawFilename:t,encrypted:e,zip64:n,Te:r,crc32:o,compressedSize:a,uncompressedSize:s,ce:c,se:l},u,{dataDescriptor:f,passThrough:d}){if(f||((!e||d&&o!==st)&&Fs(u,14,o),l||Fs(u,18,a),c||Fs(u,22,s)),n&&r){const e=ot+ks(t)+4;Rs(u,e,i(s)),Rs(u,e+8,i(a))}}(D,p.Ae,a),await cs(c,p.ke),await ls(R.readable,c,w,t=>k+=t),c.size+=R.size,x=!1}else D.diskNumberStart=I,D.offset=U;return t.offset+=D.size,D}catch(n){if(x||z){if(t.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}t.offset+=c.size-E,y&&(t.offset+=k)}throw s.delete(e),n}finally{if(y&&t.te--,b&&b(),g&&g(),y&&R&&R.dispose)try{await R.dispose()}catch{}}async function A(){t.re=!0;const{oe:e}=t;t.oe=new S(e=>g=()=>{t.re=!1,e()}),await e}async function v(){ts(c,ks(p.ke))&&await c.closeDisk()}}(t,r,c,{_e:y,Ne:g,Oe:b},l)}catch(e){throw t.Gt.delete(r),e}return n.assign(m,{name:r,comment:p,extraField:h,[_o]:m.internalFileAttributes,[Mo]:m.externalFileAttributes}),new ti(m)}(t,r,c,l)}catch(e){throw t.Xt.delete(r),e}finally{const t=Va.shift();t?t():Pa--}}(l,t,r,c);u.add(f);const p=()=>u.delete(f);return S.prototype.then.call(f,p,p),ja(l,f)}remove(t){const{Xt:e,Gt:n}=this;if(typeof t==ft&&(t=n.get(t)),t&&t.filename!==st){const{filename:r}=t;if(e.has(r)&&n.has(r))return e.delete(r),n.delete(r),!0}return!1}async close(t=dt,n={}){const r=this,{Qt:o,writer:a}=this,{writable:s}=a;if(!(t instanceof w))throw new d(sa);if(ks(t)>O)throw new d(aa);for(;o.size;)await S.allSettled(e.from(o));await S.allSettled(r.$t.map(t=>t.Le));const c=r.$t.filter(t=>t.error&&!t.Be);if(c.length){const t=c.map(t=>t.error);c.forEach(t=>t.Be=!0);const[e]=t;try{e.entryErrors=t}catch{}throw e}return await async function(t,n,r){const o=function(t){let e=0;for(const[,n]of t){const{rawFilename:t,fe:r,rawComment:o,we:i,pe:a,rawExtraField:s,extendedTimestamp:c,ve:l,lastModDate:u,ce:f,se:w,uncompressedSize:p,compressedSize:h}=n,m=n.offset>=N,y=n.diskNumberStart>=O;let S,g;if(m||y||f||w){const t=4+(f?8:0)+(w?8:0)+(m?8:0)+(y?4:0),e=Ja(t);e.be(1),e.be(t-4),f&&e.ze(p),w&&e.ze(h),m&&e.ze(n.offset),y&&e.Re(n.diskNumberStart),S=e.xe}else S=dt;n.ue=S,n.We=m,n.le=y;const b=fs(u);if(c&&ds(b)){const t=Ja(9);t.be(J),t.be(5),t.Fe(l),t.Re(b),g=t.xe}else g=dt;n.de=g;const x=ks(S,r,i,a,g,s);if(x>O)throw new d(ga);e+=K+ks(t,o)+x}return e}(t.Gt),{Pe:a,Ve:s,Ze:c}=await async function(t,n,r){const{Gt:o,writer:i}=t,a=new w(n);await po(i);let s=0,c=0,l=Qa(i),u=$a(i),f=0;for(const[t,n]of e.from(o.values()).entries()){const{offset:e,rawFilename:d,ue:w,fe:p,de:h,we:m,pe:y,rawExtraField:S,rawComment:g,versionMadeBy:b,ie:x,ae:z,ce:E,se:F,le:R,We:D,internalFileAttributes:k,externalFileAttributes:A,diskNumberStart:v,uncompressedSize:T,compressedSize:C}=n,I=ks(w,p,h,m,y,S),U=K+ks(d,g)+I;ts(i,s+U-c)&&(await cs(i,a.slice(c,s)),c=s,f=0,await i.closeDisk()),0==t&&(l=Qa(i),u=$a(i)),E||Fs(z,18,T),F||Fs(z,14,C),(D||R)&&n.version<45&&Es(z,0,45);const _=Ja(U);if(_.Re(Z),_.be(b),_.Ee(x.subarray(0,24)),_.be(I),_.be(ks(g)),_.be(R?O:v),_.be(k),_.Re(A),_.Re(D?N:e),_.Ee(d),_.Ee(w),_.Ee(p),_.Ee(h),_.Ee(m),_.Ee(y),_.Ee(S),_.Ee(g),Ds(a,_.xe,s),s+=U,f++,r.onprogress)try{await r.onprogress(t+1,o.size,new ti(n))}catch{}}return await cs(i,c?a.slice(c):a),{Pe:{diskNumber:l,diskOffset:u},Ve:{diskNumber:Qa(i),He:f},Ze:a}}(t,o,r),l=await async function(t,e,n){const r=ms(t,n,"signCentralDirectory");if(r){const n=await r(e),o=ks(n);if(o>O)throw new d(Oa);const i=Ja(6+o);i.Re(V),i.be(o),i.Ee(n);const{writer:a}=t;return ts(a,ks(i.xe))&&await a.closeDisk(),await cs(a,i.xe),6+o}return 0}(t,c,r);await async function(t,e,n,r){const{writer:o}=t,{Pe:a,Ve:s,je:c}=r;let{qe:l}=r,u=t.Gt.size,f=a.diskNumber,w=es(t,a);const p=ks(e);if(p>O)throw new d(aa);let h=ps(t,n,Bo),m=Qa(o);if(ts(o,(h?98:Y)+p)&&m++,w>=N||l>=N||u>=O||m>=O){if(!1===h)throw new d(Fa);h=!0}const y=Ja(h?98:Y);ts(o,ks(y.xe)+p)&&await o.closeDisk(),m=Qa(o);let S=m==s.diskNumber?s.He:0;h&&(y.Re(j),y.ze(44),y.be(45),y.be(45),y.Re(m),y.Re(f),y.ze(S),y.ze(u),y.ze(l),y.ze(w),y.Re(q),y.Re(m),y.ze(i(es(t,o))+i(l)+i(c)),y.Re(m+1),ps(t,n,"supportZip64SplitFile",!0)&&(m=O,f=O),S=O,u=O,w=N,l=N),y.Re(H),y.be(m),y.be(f),y.be(S),y.be(u),y.Re(l),y.Re(w),y.be(p),await cs(o,y.xe),p&&await cs(o,e)}(t,n,r,{Pe:a,Ve:s,qe:o,je:l})}(r,t,n),!wo(a)&&ps(r,n,bt)||await s.getWriter().close(),a.getData?a.getData():s}}class Ha extends S{then(t,e){const{Ke:n}=this;return n&&(n.Be=!0),super.then(t,e)}}function ja(t,e){const n=new Ha((t,n)=>S.prototype.then.call(e,t,n)),r={};return n.Ke=r,r.Le=S.prototype.then.call(n,st,t=>r.error=t),t.$t.push(r),n}async function qa(t,e){try{await t.writer.writable.abort(e)}catch{}}function Ka(t,e,n){t.Qt.add(e),e.catch(t=>{try{n(t)}catch{}})}function Ya(t){if(!t)return dt;if(!(t instanceof c))throw new d(ma);let e=0,n=0;t.forEach((t,n)=>{if(Mt(n,O,ya),!(t instanceof w))throw new d(Sa);if(ks(t)>O)throw new d(ga);e+=4+ks(t)});const r=new w(e),o=te(r);return t.forEach((t,e)=>{Es(o,n,e),Es(o,n+2,ks(t)),Ds(r,t,n+4),n+=4+ks(t)}),r}function Ga(t,e){const{_e:n}=t;let{ke:r,extraFieldLength:o}=n,i=64-(e+ks(r))%64;i<4&&(i+=64);const a=new w(i),s=te(a);Es(s,0,6534),Es(s,2,i-4);const c=r;n.ke=r=new w(ks(c)+i),Ds(r,c),Ds(r,a,ks(c));const l=te(r);Es(l,28,o+i),n.Ae=l,t.Oe+=i}function Xa(t){const e=new w(4);te(e).setUint32(0,t,!0);let n=4;for(;n>1&&0===e[n-1];)n--;return e.subarray(0,n)}function Ja(t){const e=new w(t),n=te(e);let r=0;return{xe:e,Fe:t=>{!function(t,e,n){t.setUint8(e,n)}(n,r,t),r+=1},be:t=>{Es(n,r,t),r+=2},Re:t=>{Fs(n,r,t),r+=4},ze:t=>{Rs(n,r,i(t)),r+=8},Ee:t=>{Ds(e,t,r),r+=ks(t)},De:t=>r+=t}}function Qa(t){const{diskNumber:e=0}=t;return e}function $a(t){const{diskOffset:e=0}=t;return e}function ts(t,e){const{availableSize:n=ct}=t;return e>n}function es(t,{diskNumber:e=0,diskOffset:n=0}){return t.offset-n-(e?t.Jt:0)}function ns(t){const e=te(t);let n=0;for(;n+4<=ks(t);){const r=4+zs(e,n+2);if(1==zs(e,n))return ns(Qt(t.subarray(0,n),t.subarray(a.min(n+r,ks(t)))));n+=r}return t}async function rs(t,e,n,r){if(r>0){const{writer:o}=t;let i=0;try{await ls(yo(e,{offset:n,size:r}),o,st,t=>i+=t)}catch(e){t.hasCorruptedEntries=!0;try{e.corruptedEntry=!0}catch{}throw e}finally{o.size+=i,t.offset+=i}}}async function os(t,e){const n=await mo(t,e,ot);if(ks(n)<ot)return ot;const r=te(n);return ot+zs(r,26)+zs(r,28)}function is(t,{offset:e,diskNumberStart:n}){return e+(t.Wt?t.Wt(n):0)}function as(){const t=new w(4);return Fs(te(t),0,W),t}async function ss(t,e){delete t.Yt,await cs(e,as()),t.offset+=4}async function cs(t,e){const{writable:n}=t,r=n.getWriter();try{await r.ready,t.size+=ks(e),await r.write(e)}finally{r.releaseLock()}}async function ls(t,e,n,r){const o=e.writable.getWriter();try{await t.pipeTo(new D({async write(t){await o.ready,await o.write(t),r(ks(t))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function us(t){if(t){const e=(i(t.getTime())+i(116444736e5))*i(1e4);return e<za?za:e>Ea?Ea:e}}function fs(t){return a.floor(t.getTime()/1e3)}function ds(t){return t>=ba&&t<=xa}function ws(t){return a.min(xa,a.max(ba,t))}function ps(t,e,n,r){const o=e[n]===st?t.options[n]:e[n];return o===st?r:o}function hs(t,e,n,r){const i=ps(t,e,n,r);if(null===i)return r;if(i!==st&&(typeof i.getTime!=ut||o.isNaN(i.getTime())))throw new d(ua);return i}function ms(t,e,n){return It(ps(t,e,n))}function ys(t,e,n,r,o){const i=Ss(e,n,r),a=i===st?Ss(t.options,n,r):i;return a===st?o:a}function Ss(t,e,n){return t[e]===st?t[n]:t[e]}function gs(t,e,n,r){return Ot(ps(t,e,n,r))}function bs(t){return t+5*(a.floor(t/16383)+1)}function xs(t,e){return t===st?e===st||e>0:0!==t}function zs(t,e){return t.getUint16(e,!0)}function Es(t,e,n){t.setUint16(e,n,!0)}function Fs(t,e,n){t.setUint32(e,n,!0)}function Rs(t,e,n){t.setBigUint64(e,n,!0)}function Ds(t,e,n){t.set(e,n)}function ks(...t){let e=0;return t.forEach(t=>t&&(e+=t.length)),e}function As({version:t,bitFlag:e,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:a,rawFilename:s,se:c,ce:l,extraFieldLength:u}){const f=Ja(26),d=f.xe,w=te(d);if(f.be(t),f.be(e),f.be(n),a===st){const t=new h(1),e=te(t);Es(e,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Es(e,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),a=t[0]}return f.Re(a),f.De(4),c||o!==st?f.Re(c?N:o):f.De(4),l||r!==st?f.Re(l?N:r):f.De(4),f.be(ks(s)),f.be(u),{ie:d,ae:w,rawLastModDate:a}}function vs(t,e,n,r,o){let i=0;return e&&(i|=Q),n&&(i|=8),8!=o&&9!=o||(t>=0&&t<=3&&(i|=6),t>3&&t<=5&&(i|=4),9==t&&(i|=2)),r&&(i|=1),i}const Ts=1048576,Cs=".zip.js-temp",Is=1048576,Us=1048576,_s=".zip.js-temp",Ms="createSyncAccessHandle is only available in dedicated workers";try{!function(t){const e=Gt(Jt(t));n.assign(Wt,e),n.assign(jt,e)}({baseURI:void 0===x&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===x?location.href:M&&"SCRIPT"===M.tagName.toUpperCase()&&M.src||new f("zip-core.min.js",x.baseURI).href})}catch{}t.BlobReader=Vr,t.BlobWriter=Zr,t.Data64URIReader=class extends Lr{constructor(t){super();let e=t.length;for(;"="==t.charAt(e-1);)e--;const r=t.indexOf(",")+1;n.assign(this,{Ye:t,Ge:r,size:a.floor(.75*(e-r))})}readUint8Array(t,e){const{Ge:n,Ye:r}=this,o=new w(e),i=4*a.floor(t/3),s=atob(r.substring(i+n,4*a.ceil((t+e)/3)+n)),c=t-3*a.floor(i/4);let l=0;for(let t=c;t<c+e&&t<s.length;t++)o[t-c]=s.charCodeAt(t),l++;return l<o.length?o.subarray(0,l):o}},t.Data64URIWriter=class extends Br{constructor(t){super(),n.assign(this,{contentType:t,data:"data:"+(t||"")+";base64,",Xe:""})}writeUint8Array(t){const e=this;let n,o=e.Xe;const i=e.Xe.length;for(e.Xe="",n=0;n<3*a.floor((i+t.length)/3)-i;n++)o+=r.fromCharCode(t[n]);for(;n<t.length;n++)e.Xe+=r.fromCharCode(t[n]);o.length>2?e.data+=E(o):e.Xe=o+e.Xe}getData(){return this.data+E(this.Xe)}},t.ERR_AMBIGUOUS_ARCHIVE=wi,t.ERR_BAD_FORMAT=ei,t.ERR_CENTRAL_DIRECTORY_NOT_FOUND=oi,t.ERR_DUPLICATED_NAME=ia,t.ERR_ENCRYPTED=si,t.ERR_ENCRYPTED_CENTRAL_DIRECTORY=pi,t.ERR_ENTRY_DATA_OUT_OF_BOUNDS=di,t.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=ri,t.ERR_EOCDR_NOT_FOUND=ni,t.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=ai,t.ERR_HTTP_RANGE=Dr,t.ERR_HTTP_RESOURCE_CHANGED=kr,t.ERR_INVALID_AUTHENTICATION_CODE=be,t.ERR_INVALID_CODEC_DEFINITION=un,t.ERR_INVALID_CODEC_MODULE=dn,t.ERR_INVALID_COMMENT=aa,t.ERR_INVALID_COMMENT_TYPE=sa,t.ERR_INVALID_COMPRESSED_DATA=bn,t.ERR_INVALID_CRC32=xn,t.ERR_INVALID_DATE=ua,t.ERR_INVALID_ENCRYPTION_STRENGTH=wa,t.ERR_INVALID_ENTRY_COMMENT=ca,t.ERR_INVALID_ENTRY_COMMENT_TYPE=la,t.ERR_INVALID_ENTRY_NAME=fa,t.ERR_INVALID_EXTRAFIELD=ma,t.ERR_INVALID_EXTRAFIELD_DATA=ga,t.ERR_INVALID_EXTRAFIELD_DATA_TYPE=Sa,t.ERR_INVALID_EXTRAFIELD_TYPE=ya,t.ERR_INVALID_FILENAME_VALIDATION=yi,t.ERR_INVALID_FUNCTION_OPTION=vt,t.ERR_INVALID_GID=Ta,t.ERR_INVALID_LEVEL=Na,t.ERR_INVALID_MAX_APPENDED_DATA_SIZE=Si,t.ERR_INVALID_MAX_WORKERS=Lt,t.ERR_INVALID_MSDOS_ATTRIBUTES=_a,t.ERR_INVALID_MSDOS_DATA=Ma,t.ERR_INVALID_PASSWORD=Se,t.ERR_INVALID_PASSWORD_TYPE=Ct,t.ERR_INVALID_SIGNAL=Tt,t.ERR_INVALID_SIGNATURE=ge,t.ERR_INVALID_SIGNATURE_DATA=Oa,t.ERR_INVALID_STRICTNESS=mi,t.ERR_INVALID_UID=va,t.ERR_INVALID_UNCOMPRESSED_SIZE=gn,t.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=Ia,t.ERR_INVALID_UNIX_ID_SIZE=Ua,t.ERR_INVALID_UNIX_MODE=Ca,t.ERR_INVALID_VERSION=da,t.ERR_ITERATOR_COMPLETED_TOO_SOON=Ar,t.ERR_LOCAL_FILE_HEADER_NOT_FOUND=ii,t.ERR_OVERLAPPING_ENTRY=fi,t.ERR_RESERVED_COMPRESSION_METHOD=fn,t.ERR_SPLIT_ZIP_FILE=ui,t.ERR_UNDEFINED_COMPRESSION_METHOD=Da,t.ERR_UNDEFINED_READER=ka,t.ERR_UNDEFINED_UNCOMPRESSED_SIZE=Ra,t.ERR_UNDETERMINED_SIZE="Undetermined size",t.ERR_UNSAFE_FILENAME=hi,t.ERR_UNSUPPORTED_COMPRESSION=li,t.ERR_UNSUPPORTED_CONTEXT=Ms,t.ERR_UNSUPPORTED_CRYPTO_API=ze,t.ERR_UNSUPPORTED_ENCRYPTION=ci,t.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=ha,t.ERR_UNSUPPORTED_ENCRYPTION_USDZ=pa,t.ERR_UNSUPPORTED_FORMAT=Fa,t.ERR_UNSUPPORTED_UINT64=gi,t.ERR_WORKER_STARTUP_TIMEOUT=Pn,t.ERR_WRITER_NOT_INITIALIZED=vr,t.ERR_ZIP_NOT_EMPTY=Aa,t.HttpRangeReader=class extends so{constructor(t,e={}){super(t,n.assign({},e,{useRangeHeader:!0}))}},t.HttpReader=so,t.Reader=Lr,t.SplitDataReader=co,t.SplitDataWriter=lo,t.TextReader=class extends Vr{constructor(t){super(new y([t],{type:"text/plain"}))}},t.TextWriter=class extends Zr{constructor(t){super(),n.assign(this,{encoding:t,Je:!t||"utf-8"==t.toLowerCase()})}async getData(){const{encoding:t,Je:e}=this,n=await super.getData();return n.text&&e?n.text():function(t,e){return Fr(t,e,!1)}(new w(await n.arrayBuffer()),t)}},t.Uint8ArrayReader=class extends Lr{constructor(t){super(),t=new w(t.buffer,t.byteOffset,t.byteLength),n.assign(this,{xe:t,size:t.length})}readUint8Array(t,e){return this.xe.slice(t,t+e)}},t.Uint8ArrayWriter=class extends Br{constructor(t){super(),this.Qe=t||262144}init(t=0){n.assign(this,{offset:0,xe:new w(t>0?t:this.Qe)}),super.init()}writeUint8Array(t){const e=this,n=e.offset+t.length;if(n>e.xe.length){let t=e.xe.length?2*e.xe.length:e.Qe;for(;t<n;)t*=2;const r=e.xe;e.xe=new w(t),e.xe.set(r)}e.xe.set(t,e.offset),e.offset+=t.length}getData(){return this.offset===this.xe.length?this.xe:this.xe.slice(0,this.offset)}},t.Writer=Br,t.ZipReader=Di,t.ZipReaderStream=ki,t.ZipWriter=Za,t.ZipWriterStream=class{constructor(t={}){const{readable:e,writable:n}=new F;this.readable=e,this.zipWriter=new Za(n,t),this.Qt=new l}transform(t){const e=this.zipWriter;let n;const{readable:r,writable:o}=new F({start(t){n=t},flush:()=>{!async function(){try{await e.close()}catch(t){await qa(e,t)}}()}});return Ka(this,this.zipWriter.add(t,r),t=>n.error(t)),{readable:this.readable,writable:o}}writable(t){let e;const{readable:n,writable:r}=new F({start(t){e=t}});return Ka(this,this.zipWriter.add(t,n),t=>e.error(t)),r}async close(t,n={}){const{zipWriter:r}=this,o=(await S.allSettled(e.from(this.Qt))).filter(t=>"rejected"==t.status).map(t=>t.reason);if(o.length){const[t]=o;try{t.entryErrors=o}catch{}throw await qa(r,t),t}try{return await r.close(t,n)}catch(t){throw await qa(r,t),t}}},t.configure=function(t){n.assign(jt,Gt(Jt(t)))},t.createBlobTempStream=function(t={}){const{thresholdBytes:e=Is}=t;return function(){const t=[];let n,r,o,i=0,a=!1;const s=new D({async write(o){a?await n.write(o):(t.push(o),i+=o.length,i>e&&await async function(){const e=new F;r=cn(e.readable),n=e.writable.getWriter(),a=!0;for(const e of t)await n.write(e);t.length=0}())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:s,readable:new R({async pull(e){if(a){if(!o){const t=await r;o=t.stream().getReader()}const{value:t,done:n}=await o.read();n?e.close():e.enqueue(t)}else c<t.length?e.enqueue(t[c++]):e.close()},async cancel(t){o&&await o.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(n){try{await n.abort()}catch{}n=null}r&&(r.catch(()=>{}),r=null),t.length=0}}}},t.createOPFSTempStream=function(t={}){const{thresholdBytes:n=Ts,directoryName:r=Cs,getDirectory:o=()=>v.storage.getDirectory()}=t;let i;function a(){return i||(i=S.resolve(o()).then(t=>t.getDirectoryHandle(r,{create:!0}))),i}return function(){const t=[];let r,o,i,s,c=0,l=!1;const u=new D({async write(s){l?await i.write(s):(t.push(s),c+=s.length,c>n&&await async function(){const n=await a();r=z.randomUUID?z.randomUUID():e.from(z.getRandomValues(new w(16)),t=>t.toString(16).padStart(2,"0")).join(""),o=await n.getFileHandle(r,{create:!0}),i=(await o.createWritable()).getWriter(),l=!0;for(const e of t)await i.write(e);t.length=0}())},async close(){i&&(await i.close(),i=null)}});let f=0;return{writable:u,readable:new R({async pull(e){if(l){if(!s){const t=await o.getFile();s=t.stream().getReader()}const{value:t,done:n}=await s.read();n?e.close():e.enqueue(t)}else f<t.length?e.enqueue(t[f++]):e.close()},async cancel(t){s&&await s.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const t=await a();await t.removeEntry(r)}catch{}o=r=null}t.length=0}}}},t.createSyncAccessHandleTempStream=function(t={}){const{thresholdBytes:n=Us,directoryName:r=_s,getDirectory:o}=t;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d(Ms);const i=o||(()=>v.storage.getDirectory());let s;function c(){return s||(s=S.resolve(i()).then(t=>t.getDirectoryHandle(r,{create:!0}))),s}return function(){const t=[];let r,o,i=0,s=!1,l=0,u=0;const f=new D({async write(a){s?(o.write(a,{at:l}),l+=a.length):(t.push(a),i+=a.length,i>n&&await async function(){const n=await c();r=z.randomUUID?z.randomUUID():e.from(z.getRandomValues(new w(16)),t=>t.toString(16).padStart(2,"0")).join("");const i=await n.getFileHandle(r,{create:!0});o=await i.createSyncAccessHandle(),s=!0;for(const e of t)o.write(e,{at:l}),l+=e.length;t.length=0}())},close(){o&&o.flush()}});let d=0;return{writable:f,readable:new R({pull(e){if(s){const t=l-u;if(t<=0)return void e.close();const n=new w(a.min(524288,t)),r=o.read(n,{at:u});r?(u+=r,e.enqueue(n.subarray(0,r))):e.close()}else d<t.length?e.enqueue(t[d++]):e.close()}},{highWaterMark:0}),dispose:async function(){if(o){try{o.close()}catch{}o=null}if(r){try{const t=await c();await t.removeEntry(r)}catch{}r=null}t.length=0}}}},t.getMimeType=function(){return"application/octet-stream"},t.registerCodec=function(t={}){const{compressionMethod:e,format:n,codecURI:r,CompressionStream:i,DecompressionStream:a,versionNeeded:s}=t;if(!o.isInteger(e)||e<0||e>O||typeof n!=ft||!n.length)throw new d(un);if(wn.includes(e))throw new d(fn);const c=typeof i==ut||typeof a==ut;if(!(c||typeof r==ft&&r.length))throw new d(un);pn.set(e,{compressionMethod:e,format:n,codecURI:r,versionNeeded:s}),c&&Sn(n,{CompressionStream:i,DecompressionStream:a})},t.resetConfiguration=function(){for(const t of Ht)delete jt[t];n.assign(jt,Wt)},t.terminateWorkers=async function(){await S.allSettled(ur.map(t=>(br(t),t.terminate()))),Vn=st,Zn=!1},t.unregisterCodec=function(t){const e=pn.get(t);if(e){let n;pn.delete(t),pn.forEach(t=>n=n||t.format==e.format),n||hn.delete(e.format)}}});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})}(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:o,BigInt:i,Math:s,Date:a,Map:c,Set:l,Response:u,URL:f,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:m,DataView:h,Blob:y,Promise:S,TextEncoder:E,TextDecoder:g,document:b,crypto:x,btoa:R,TransformStream:F,ReadableStream:z,WritableStream:A,CompressionStream:D,DecompressionStream:I,navigator:k,Worker:C,Symbol:T,setTimeout:_,clearTimeout:v,structuredClone:N}="undefined"!=typeof globalThis?globalThis:this||self;var U=void 0!==b?b.currentScript:null;const M=4294967295,O=65535,L=255,B=67324752,W=134695760,P=W,V=84233040,Z=33639248,H=101010256,G=101075792,j=117853008,q=46,K=22,Y=20,X=56,J=21589,Q=2048,$=61440,ee=16384,te=2048,ne=1024,re="/",oe=30,ie=new a(2107,11,31,23,59,58),se=new a(1980,0,1),ae=void 0,ce=1/0,le="undefined",ue="function",fe="string",de=new w,we="password",pe="rawPassword",me="passThrough",he="signal",ye="useWebWorkers",Se="useCompressionStream",Ee="transferStreams",ge="preventClose",be="dataDescriptor",xe="offset",Re="usdz",Fe="maxAppendedDataSize",ze="filename",Ae="comment",De="strict",Ie="balanced",ke="tolerant",Ce="Invalid option (must be a function)",Te="Invalid signal (must be an AbortSignal instance)",_e="Invalid password (password must be a string, rawPassword must be a Uint8Array)";function ve(e){if(e&&typeof e!=ue)throw new d(Ce);return e}function Ne(e){if(e&&(typeof e.addEventListener!=ue||"boolean"!=typeof e.aborted))throw new d(Te);return e||ae}function Ue(e,t){if(e&&typeof e!=fe||t&&!(t instanceof w))throw new d(_e)}function Me(e,t,n){if(!o.isInteger(e)||e<0||e>t)throw new d(n)}function Oe(e,t,n){e!==ae&&Me(e,t,n)}function Le(e){return typeof e==fe&&e.trim()?o(e):e}const Be="Invalid maxWorkers (must be an integer greater than 0)";let We=2;try{typeof k!=le&&k.hardwareConcurrency&&(We=k.hardwareConcurrency)}catch{}const Pe={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:We,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof D!=le&&D,DecompressionStream:typeof I!=le&&I},Ve="maxWorkers",Ze=["chunkSize",Ve,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],He=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],Ge=["baseURI","wasmURI","workerURI","useCompressionStream","useWebWorkers","transferStreams",...Ze,...He],je={...Pe};function qe(){return je}function Ke(e){return Ye(e.chunkSize)}function Ye(e){return e=Le(e),o.isInteger(e)&&e>=1?s.max(e,64):65536}function Xe(e){const t={};for(const n of Ge){const r=e[n];r!==ae&&(t[n]=Je(n,r))}return t}function Je(e,t){if(Ze.includes(e)){if(t=Le(t),e==Ve&&(!o.isInteger(t)||t<1))throw new d(Be)}else He.includes(e)&&ve(t);return t}function Qe(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===ae&&r===ae)return e;const o=n.assign({},e);return o.CompressionStreamFallback===ae&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===ae&&(o.DecompressionStreamFallback=r),o}function $e(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function et(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function tt(e){return new h(e.buffer,e.byteOffset,e.byteLength)}const nt=[[],[],[],[],[],[],[],[]];for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=1&t?t>>>1^3988292384:t>>>1;nt[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){const n=nt[t-1][e];nt[t][e]=n>>>8^nt[0][255&n]}const[rt,ot,it,st,at,ct,lt,ut]=nt;class ft{constructor(e){this.o=e||-1}append(e){let t=0|this.o;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const o=new h(e.buffer,e.byteOffset,n),i=n-8;for(;r<=i;r+=8){const e=t^o.getInt32(r,!0),n=o.getInt32(r+4,!0);t=ut[255&e]^lt[e>>>8&255]^ct[e>>>16&255]^at[e>>>24&255]^st[255&n]^it[n>>>8&255]^ot[n>>>16&255]^rt[n>>>24&255]}}for(;r<n;r++)t=t>>>8^rt[255&(t^e[r])];this.o=t}get(){return~this.o}}class dt extends F{constructor(){let e;const t=new ft;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function wt(e){if(typeof E==le){e=unescape(encodeURIComponent(e));const t=new w(e.length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new E).encode(e)}const pt={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=pt.l(n);return 32===r?e.concat(t):pt.m(t,r,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+pt.l(n)},h(e,t){if(32*e.length<t)return e;const n=(e=e.slice(0,s.ceil(t/32))).length;return t&=31,n>0&&t&&(e[n-1]=pt.S(t,e[n-1]&2147483648>>t-1,1)),e},S:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,l:e=>s.round(e/1099511627776)||32,m(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let o=0;o<e.length;o++)r.push(n|e[o]>>>t),n=e[o]<<32-t;const o=e.length?e[e.length-1]:0,i=pt.l(o);return r.push(pt.S(t+i&31,t+i>32?n:r.pop(),1)),r}},mt={bytes:{R(e){const t=pt.bitLength(e)/8,n=new w(t);let r;for(let o=0;o<t;o++)3&o||(r=e[o/4]),n[o]=r>>>24,r<<=8;return n},F(e){const t=[];let n,r=0;for(n=0;n<e.length;n++)r=r<<8|e[n],3&~n||(t.push(r),r=0);return 3&n&&t.push(pt.S(8*(3&n),r)),t}}},ht=class{constructor(e){const t=this;t.blockSize=512,t.A=[1732584193,4023233417,2562383102,271733878,3285377520],t.D=[1518500249,1859775393,2400959708,3395469782],e?(t.I=e.I.slice(0),t.C=e.C.slice(0),t.T=e.T):t.reset()}reset(){const e=this;return e.I=e.A.slice(0),e.C=[],e.T=0,e}update(e){const t=this;"string"==typeof e&&(e=mt._.F(e));const n=t.C=pt.concat(t.C,e),r=t.T,o=t.T=r+pt.bitLength(e);if(o>9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const i=new m(n);let s=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);e<=o;e+=t.blockSize)t.v(i.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t}N(){const e=this;let t=e.C;const n=e.I;t=pt.concat(t,[pt.S(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e.T/4294967296)),t.push(0|e.T);t.length;)e.v(t.splice(0,16));return e.reset(),n}U(e,t,n,r){return e<=19?t&n|~t&r:e<=39?t^n^r:e<=59?t&n|t&r|n&r:e<=79?t^n^r:void 0}M(e,t){return t<<e|t>>>32-e}v(e){const n=this,r=n.I,o=t(80);for(let t=0;t<16;t++)o[t]=e[t];let i=r[0],a=r[1],c=r[2],l=r[3],u=r[4];for(let e=0;e<=79;e++){e>=16&&(o[e]=n.M(1,o[e-3]^o[e-8]^o[e-14]^o[e-16]));const t=n.M(5,i)+n.U(e,a,c,l)+u+o[e]+n.D[s.floor(e/20)]|0;u=l,l=c,c=n.M(30,a),a=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+a|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},yt={importKey:e=>new yt.O(mt.bytes.F(e)),L(e,t,n,r){if(n=n||1e4,r<0||n<0)throw new d("invalid params to pbkdf2");const o=1+(r>>5)<<2;let i,s,a,c,l;const u=new ArrayBuffer(o),f=new h(u);let w=0;const p=pt;for(t=mt.bytes.F(t),l=1;w<(o||1);l++){for(i=s=e.encrypt(p.concat(t,[l])),a=1;a<n;a++)for(s=e.encrypt(s),c=0;c<s.length;c++)i[c]^=s[c];for(a=0;w<(o||1)&&a<i.length;a++)f.setInt32(w,i[a]),w+=4}return u.slice(0,r/8)},O:class{constructor(e){const t=this,n=t.B=ht,r=[[],[]];t.W=[new n,new n];const o=t.W[0].blockSize/32;e.length>o&&(e=(new n).update(e).N());for(let t=0;t<o;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.W[0].update(r[0]),t.W[1].update(r[1]),t.P=new n(t.W[0])}reset(){const e=this;e.P=new e.B(e.W[0]),e.V=!1}update(e){this.V=!0,this.P.update(e)}digest(){const e=this,t=e.P.N(),n=new e.B(e.W[1]).update(t).N();return e.reset(),n}encrypt(e){if(this.V)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},St=typeof x!=le&&typeof x.getRandomValues==ue,Et="Invalid password",gt="Invalid signature",bt=gt,xt="zipjs-abort-check-password",Rt="Crypto API not supported";function Ft(e){if(St)return x.getRandomValues(e);throw new d(Rt)}const zt=16,At={name:"PBKDF2"},Dt=n.assign({hash:{name:"HMAC"}},At),It=n.assign({iterations:1e3,hash:{name:"SHA-1"}},At),kt=["deriveBits"],Ct=[8,12,16],Tt=[16,24,32],_t=10,vt=[0,0,0,0],Nt=typeof x!=le,Ut=Nt&&x.subtle,Mt=Nt&&typeof Ut!=le,Ot=mt.bytes,Lt=class{constructor(e){const t=this;t.Z=[[[],[],[],[],[]],[[],[],[],[],[]]],t.Z[0][0][0]||t.H();const n=t.Z[0][4],r=t.Z[1],o=e.length;let i,s,a,c=1;if(4!==o&&6!==o&&8!==o)throw new d("invalid aes key size");for(t.D=[s=e.slice(0),a=[]],i=o;i<4*o+28;i++){let e=s[i-1];(i%o===0||8===o&&i%o===4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%o===0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),s[i]=s[i-o]^e}for(let e=0;i;e++,i--){const t=s[3&e?i:i-4];a[e]=i<=4||e<4?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.G(e,0)}decrypt(e){return this.G(e,1)}H(){const e=this.Z[0],t=this.Z[1],n=e[4],r=t[4],o=[],i=[];let s,a,c,l;for(let e=0;e<256;e++)i[(o[e]=e<<1^283*(e>>7))^e]=e;for(let u=s=0;!n[u];u^=a||1,s=i[s]||1){let i=s^s<<1^s<<2^s<<3^s<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=o[c=o[a=o[u]]];let f=16843009*l^65537*c^257*a^16843008*u,d=257*o[i]^16843008*i;for(let n=0;n<4;n++)e[n][u]=d=d<<24^d>>>8,t[n][i]=f=f<<24^f>>>8}for(let n=0;n<5;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}G(e,t){if(4!==e.length)throw new d("invalid aes block size");const n=this.D[t],r=n.length/4-2,o=[0,0,0,0],i=this.Z[t],s=i[0],a=i[1],c=i[2],l=i[3],u=i[4];let f,w,p,m=e[0]^n[0],h=e[t?3:1]^n[1],y=e[2]^n[2],S=e[t?1:3]^n[3],E=4;for(let e=0;e<r;e++)f=s[m>>>24]^a[h>>16&255]^c[y>>8&255]^l[255&S]^n[E],w=s[h>>>24]^a[y>>16&255]^c[S>>8&255]^l[255&m]^n[E+1],p=s[y>>>24]^a[S>>16&255]^c[m>>8&255]^l[255&h]^n[E+2],S=s[S>>>24]^a[m>>16&255]^c[h>>8&255]^l[255&y]^n[E+3],E+=4,m=f,h=w,y=p;for(let e=0;e<4;e++)o[t?3&-e:e]=u[m>>>24]<<24^u[h>>16&255]<<16^u[y>>8&255]<<8^u[255&S]^n[E++],f=m,m=h,h=y,y=S,S=f;return o}},Bt=class{constructor(e,t){this.j=e,this.K=t,this.Y=t}reset(){this.Y=this.K}update(e){return this.X(this.j,e,this.Y)}J(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}$(e){0===(e[0]=this.J(e[0]))&&(e[1]=this.J(e[1]))}X(e,t,n){let r;if(!(r=t.length))return[];const o=pt.bitLength(t);for(let o=0;o<r;o+=4){this.$(n);const r=e.encrypt(n);t[o]^=r[0],t[o+1]^=r[1],t[o+2]^=r[2],t[o+3]^=r[3]}return pt.h(t,o)}},Wt=yt.O;let Pt=Nt&&Mt&&typeof Ut.importKey==ue,Vt=Nt&&Mt&&typeof Ut.deriveBits==ue;class Zt extends F{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){super({start(){Gt(this,e,t,n)},async transform(e,t){const n=this,{password:o,strength:i,ee:s,ready:a}=n;o?(await async function(e,t,n,r){const o=await qt(e,t,n,Yt(r,0,Ct[t])),i=Yt(r,Ct[t]);if(o[0]!=i[0]||o[1]!=i[1])throw new d(Et)}(n,i,o,Yt(e,0,Ct[i]+2)),e=Yt(e,Ct[i]+2),r?t.error(new d(xt)):s()):await a;const c=new w(e.length-_t-(e.length-_t)%zt);t.enqueue(jt(n,e,c,0,_t,!0))},async flush(e){const{te:t,ne:n,re:r,ready:i}=this;if(n&&t){await i;const s=Yt(r,0,r.length-_t),a=Yt(r,r.length-_t);let c=de;if(s.length){const e=Jt(Ot,s);n.update(e);const r=t.update(e);c=Xt(Ot,r)}const l=Yt(Xt(Ot,n.digest()),0,_t);let u=r.length<_t?1:0;for(let e=0;e<_t;e++)u|=l[e]^a[e];if(u&&o)throw new d(bt);e.enqueue(c)}}})}}class Ht extends F{constructor({password:e,rawPassword:t,encryptionStrength:n}){super({start(){Gt(this,e,t,n)},async transform(e,t){const n=this,{password:r,strength:o,ee:i,ready:s}=n;let a=de;r?(a=await async function(e,t,n){const r=Ft(new w(Ct[t]));return $e(r,await qt(e,t,n,r))}(n,o,r),i()):await s;const c=new w(a.length+e.length-e.length%zt);c.set(a,0),t.enqueue(jt(n,e,c,a.length,0))},async flush(e){const{te:t,ne:n,re:r,ready:o}=this;if(n&&t){await o;let i=de;if(r.length){const e=t.update(Jt(Ot,r));n.update(e),i=Xt(Ot,e)}const s=Xt(Ot,n.digest()).slice(0,_t);e.enqueue($e(i,s))}}})}}function Gt(e,t,r,o){n.assign(e,{ready:new S(t=>e.ee=t),password:Kt(t,r),strength:o-1,re:de})}function jt(e,t,n,r,o,i){const{te:s,ne:a,re:c}=e;c.length&&(t=$e(c,t));const l=t.length-o;let u;for(n=function(e,t){if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e}(n,r+(l-l%zt)),u=0;u<=l-zt;u+=zt){const e=Jt(Ot,Yt(t,u,u+zt));i&&a.update(e);const o=s.update(e);i||a.update(o),n.set(Xt(Ot,o),u+r)}return e.re=Yt(t,u),n}async function qt(e,r,o,i){e.password=null;const s=await async function(e,t,n,r,o){if(!Pt)return yt.importKey(t);try{return await Ut.importKey("raw",t,n,!1,o)}catch{return Pt=!1,yt.importKey(t)}}(0,o,Dt,0,kt),a=await async function(e,t,n){if(!Vt)return yt.L(t,e.salt,It.iterations,n);try{return await Ut.deriveBits(e,t,n)}catch{return Vt=!1,yt.L(t,e.salt,It.iterations,n)}}(n.assign({salt:i},It),s,8*(2*Tt[r]+2)),c=new w(a),l=Jt(Ot,Yt(c,0,Tt[r])),u=Jt(Ot,Yt(c,Tt[r],2*Tt[r])),f=Yt(c,2*Tt[r]);return n.assign(e,{keys:{key:l,oe:u,passwordVerification:f},te:new Bt(new Lt(l),t.from(vt)),ne:new Wt(u)}),f}function Kt(e,t){return t===ae?wt(e):t}function Yt(e,t,n){return e.subarray(t,n)}function Xt(e,t){return e.R(t)}function Jt(e,t){return e.F(t)}class Qt extends F{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){en(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=tn(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t[11]^n.passwordVerification))throw new d(Et);e=e.subarray(12)}r?t.error(new d(xt)):t.enqueue(tn(n,e))}})}}class $t extends F{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){en(this,e,t,n)},transform(e,t){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=Ft(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(nn(n,t),0),o=12}else r=new w(e.length),o=0;r.set(nn(n,e),o),t.enqueue(r)}})}}function en(e,t,r,o){n.assign(e,{password:t,rawPassword:r,passwordVerification:o}),function(e,t,r){const o=[305419896,591751049,878082192];if(n.assign(e,{keys:o,ie:new ft(o[0]),se:new ft(o[2])}),r)for(let t=0;t<r.length;t++)rn(e,r[t]);else for(let n=0;n<t.length;n++)rn(e,t.charCodeAt(n))}(e,t,r)}function tn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=on(e)^t[r],rn(e,n[r]);return n}function nn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=on(e)^t[r],rn(e,t[r]);return n}function rn(e,t){let[,n]=e.keys;e.ie.append([t]);const r=~e.ie.get();n=an(s.imul(an(n+sn(r)),134775813)+1),e.se.append([n>>>24]);const o=~e.se.get();e.keys=[r,n,o]}function on(e){const t=2|e.keys[2];return sn(s.imul(t,1^t)>>>8)}function sn(e){return 255&e}function an(e){return 4294967295&e}function cn(e){if(e instanceof z)return e;const t=e.getReader();return new z({async pull(e){const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)},cancel:e=>t.cancel(e)})}function ln(e,t){e=cn(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=ue||new y([]).stream()instanceof z)return new u(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new A({write(e){r.push(e)}})).then(()=>new y(r,n))}function un(e){if(e instanceof A)return e;const t=e.getWriter();return new A({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const fn="Invalid codec definition",dn="Reserved compression method",wn="Invalid codec module",pn=[0,8,9,99],mn=new c,hn=new c;function yn(e){return mn.get(e)}function Sn(){return t.from(mn.values(),e=>n.assign({},e,hn.get(e.format)))}function En(e){return hn.get(e)}function gn(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=ue&&typeof r!=ue)throw new d(wn);hn.set(e,{CompressionStream:n,DecompressionStream:r})}const bn="Invalid uncompressed size",xn="Invalid compressed data",Rn=gt,Fn="deflate-raw",zn="deflate64-raw",An="gzip",Dn=[31,139,8];class In extends F{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:s,zipCrypto:a,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:d,inputSize:w}=e,p=this;let m,y,S,E=super.readable;const g=f&&En(f),b=c&&o&&!u&&!g&&(!i||a)&&Boolean(s&&r);if(i&&!a||!c||b||(m=new dt,E=On(E,m)),o)if(g)E=Ln(E,Un(g.CompressionStream,f,{level:l,chunkSize:t,compressionMethod:d,uncompressedSize:w}));else if(b)S=new kn,E=Ln(E,new r(An)),E=On(E,S);else try{E=Mn(E,s,{level:l,chunkSize:t},r,n)}catch(e){let t;try{t=new r(An)}catch{throw e}E=Ln(E,t),E=On(E,new kn)}i&&(a?E=On(E,new $t(e)):(y=new Ht(e),E=On(E,y))),Nn(p,E,()=>{i&&!a||!c||(p.crc32=b?S.crc32:new h(m.value.buffer).getUint32(0))})}}class kn extends F{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=s.min(t,e.length);if(t-=n,!(e=e.subarray(n)).length)return}const o=n.length+e.length;if(o<=8)return void(n=$e(n,e));const i=o-8,a=s.min(i,n.length);r.enqueue($e(n.subarray(0,a),e.subarray(0,i-a))),n=$e(n.subarray(a),e.subarray(i-a))},flush(){const t=tt(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class Cn extends F{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:s,crc32:a,compressed:c,useCompressionStream:l,deflate64:u,format:f,compressionMethod:p,rawBitFlag:m,outputSize:y}=e;let E,g,b=super.readable;if(i&&(o?b=On(b,new Qt(e)):(g=new Zt(e),b=On(b,g))),c){const e=f&&En(f);if(e)b=Ln(b,Un(e.DecompressionStream,f,{chunkSize:t,compressionMethod:p,rawBitFlag:m,uncompressedSize:y}));else try{b=Mn(b,l,{chunkSize:t,deflate64:u},r,n)}catch(e){if(u||y===ae)throw e;let t;try{t=new r(An)}catch{throw e}b=function(e,t,n){const r=new ft;let o,i,s,a=0,c=!1;const l=new S((e,t)=>{i=e,s=t});l.catch(()=>{}),n||i();const u=new F({start(e){const t=new w(10);t.set(Dn),e.enqueue(t)},transform(e,t){t.enqueue(e)},async flush(e){c=!0,p();try{await l}finally{m()}const t=new w(8),o=tt(t);o.setUint32(0,r.get(),!0),o.setUint32(4,n,!0),e.enqueue(t)},cancel(e){s(e)}}),f=new F({transform(e,t){r.append(e),a+=e.length,a>=n?i():c&&p(),t.enqueue(e)},cancel(e){s(e)}});return e=On(e,u),On(e=Ln(e,t),f);function p(){m(),o=_(()=>s(new d(bn)),5e3)}function m(){v(o)}}(b,t,y)}b=function(e){const t=e.getReader();return new z({async pull(e){let n;try{n=await t.read()}catch(e){if(e&&e.message)throw e;const t=new d(xn);throw t.cause=e,t}const{value:r,done:o}=n;o?e.close():e.enqueue(r)},cancel:e=>t.cancel(e)})}(b)}s&&(E=new dt,b=On(b,E)),Nn(this,b,()=>{if(s){const e=new h(E.value.buffer);if(a!=e.getUint32(0,!1))throw new d(Rn)}})}}const Tn=new c;function _n(e,t){if(!e)return!1;let n=Tn.get(e);n||(n=new c,Tn.set(e,n));let r=n.get(t);if(r===ae){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function vn(e){return _n(e,Fn)}function Nn(e,t,r){t=On(t,new F({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Un(e,t,n){if(!e)throw new d("Compression method not supported");return new e(t,n)}function Mn(e,t,n,r,o){const i=t&&r?r:o||r,s=n.deflate64?zn:Fn;let a;try{a=new i(s,n)}catch(e){if(!t||!o||i==o)throw e;a=new o(s,n)}return Ln(e,a)}function On(e,t){return cn(e).pipeThrough(t)}function Ln(e,t){const n=t.writable.getWriter(),r=e.getReader();return async function(){try{for(;;){await n.ready;const e=await r.read();if(e.done){await n.close();break}await n.write(e.value)}}catch(e){await async function(e,t){try{await e.abort(t)}catch{}}(n,e),await async function(e,t){try{await e.cancel(t)}catch{}}(r,e)}}(),t.readable}const Bn="data",Wn="deflate",Pn="inflate";class Vn extends F{constructor(e,t){super({});const r=this,{codecType:o}=e;let i;o.startsWith(Wn)?i=In:o.startsWith(Pn)&&(i=Cn),r.outputSize=0;let s=0;const a=new i(e,t),c=super.readable,l=new F({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:s})}}),u=new F({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==ae&&r.outputSize>e.outputSize))throw new d(bn)},flush(){const{crc32:e}=a;n.assign(r,{crc32:e,inputSize:s})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(l).pipeThrough(a).pipeThrough(u)})}}class Zn extends F{constructor(e){const t=[];let n=0;function r(){const r=new w(e);let o=0;for(;o<e;){const n=t[0],i=e-o;n.length<=i?(r.set(n,o),o+=n.length,t.shift()):(r.set(n.subarray(0,i),o),t[0]=n.subarray(i),o+=i)}return n-=e,r}(!o.isFinite(e)||e<1)&&(e=65536),super({transform(o,i){for(t.push(o),n+=o.length;n>e;)i.enqueue(r())},flush(e){n&&e.enqueue(function(e,t){const n=new w(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(t,n))}})}}const Hn="Worker startup timeout";let Gn,jn,qn;function Kn(e){e.createWorker?jn=!0:Gn=!1}class Yn{constructor(e,{readable:t,writable:r},{options:o,config:i,ae:s,useWebWorkers:a,transferStreams:c,workerURI:l,createWorker:u},f){const{signal:d}=s;return jn&&(u=ae),n.assign(e,{ce:!0,le:(e.le||0)+1,readable:t.pipeThrough(new Zn(Ke(i))).pipeThrough(new Xn(s),{signal:d}),writable:r,options:n.assign({},o),workerURI:l,createWorker:u,transferStreams:c,terminate:()=>new S(t=>{const{ue:n,ce:r}=e;n?(r?e.fe=t:(n.terminate(),t()),e.de=null):t()}),we(){if(e.ce){const{fe:t}=e;t&&(e.fe=null,e.pe=!0,e.ue.terminate(),t()),e.ce=!1,f(e)}}}),Gn===ae&&(Gn=typeof C!=le),(a&&qn&&(Gn&&l||u)?qn:Qn)(e,i)}}class Xn extends F{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await Jn(e,n)},async transform(e,r){o+=e.length,t&&await Jn(t,o,n),r.enqueue(e)},async flush(){r&&await Jn(r,o)}})}}async function Jn(e,...t){try{await e(...t)}catch{}}function Qn(e,t){return{run:()=>$n(e,t)}}async function $n({options:e,readable:t,writable:n,we:r},o){let i;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(Wn),n=t?o.CompressionStreamFallback:o.DecompressionStreamFallback,r=t?o.CompressionStream:o.DecompressionStream;if(e.useCompressionStream){if(n&&n.me&&!vn(r))try{await void 0}catch{}}else try{await void 0}catch{n&&!n.me||(e.useCompressionStream=!0)}}i=new Vn(e,o),await t.pipeThrough(i).pipeThrough(new Zn(Ke(o))).pipeTo(n,{preventClose:!0,preventAbort:!0});const{crc32:r,inputSize:s,outputSize:a}=i;return{crc32:r,inputSize:s,outputSize:a}}catch(e){throw i&&(e.outputSize=i.outputSize),e}finally{r()}}const er={type:"module"},tr="error";let nr,rr,or,ir=!0;try{ir=typeof N==ue&&N(new DOMException("","AbortError")).code!==ae}catch{}var sr;function ar(e){const{reader:t}=e;t&&t.releaseLock(),e.reader=null,e.writer=null}function cr(e){const{ue:t}=e;if(t)try{t.terminate()}catch{}e.de=null}function lr(e,t,r,o,i=!0){const{createWorker:s}=r;let a,c,l;if(s)a=s();else if(rr===ae||nr!==e){const n=typeof e==ue;c=n?e(i):e;const s=c.startsWith("data:"),u=c.startsWith("blob:");if(s||u){o===ae&&(o=!1),o&&(l=er);try{a=new C(c,l)}catch(i){if(u)try{f.revokeObjectURL(c)}catch{}if(n&&u)return lr(e,t,r,o,!1);if(o)throw i;return lr(e,t,r,!0,!1)}}else{o===ae&&(o=!0),o&&(l=er);try{c=new f(c,t)}catch{}try{a=new C(c,l)}catch(n){if(o)return lr(e,t,r,!1,i);throw n}}nr=e,rr=c,or=l}else a=new C(rr,or);return a.addEventListener("message",e=>{r.he=!0,ur(r),async function({data:e},t){const{type:r,value:o,messageId:i,result:s,error:a}=e,{reader:c,writer:l,ye:u,Se:f,we:p,le:m}=t,h=()=>t.le!=m;try{if(a){const{message:e,stack:t,code:r,name:o,outputSize:i,cause:s,codecImportFailed:c}=a,l=new d(e);n.assign(l,{stack:t,code:r,name:o,outputSize:i}),s&&(l.cause=n.assign(new d(s.message),{name:s.name})),c&&(l.codecImportFailed=!0),y(l)}else{if("pull"==r){const{value:e,done:n}=await c.read();h()||dr({type:Bn,value:e,done:n,messageId:i},t)}r==Bn&&(await l.ready,await l.write(new w(o)),h()||dr({type:"ack",messageId:i},t)),"close"==r&&y(null,s)}}catch(a){h()||(cr(t),y(a))}function y(e,t){h()||(e?f(e):u(t),l&&l.releaseLock(),e&&e.codecImportFailed||p())}}(e,r)}),a.addEventListener(tr,e=>fr(e,r)),a.addEventListener("messageerror",e=>fr(e,r)),a}function ur(e){const{Ee:t}=e;t&&(v(t),e.Ee=null)}function fr(e,t){e.preventDefault&&e.preventDefault(),ur(t);const{he:r,Se:o,writer:i,we:s}=t;cr(t),r||(t.ue=null);let a=e.error||new d(e.message||tr);r||(a=n.assign(new d(a.message||tr),{ge:!0}),t.be=a),o&&(o(a),i&&i.releaseLock(),r&&s())}function dr(e,{ue:t,writer:n,transferStreams:r,he:o}){try{const{value:n,readable:i,writable:s}=e,a=[];if(n&&(e.value=et(n),a.push(e.value.buffer)),r&&ir&&o?(i&&a.push(i),s&&a.push(s)):e.readable=e.writable=null,a.length)try{return t.postMessage(e,a),!0}catch{ir=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}sr=function(e,t){const{baseURI:r,chunkSize:i,workerStartupTimeout:s}=t;let{wasmURI:a}=t;if(!e.de){let c;typeof a==ue&&(a=a());try{c=lr(e.workerURI,r,e)}catch{return Kn(e),Qn(e,t)}n.assign(e,{ue:c,he:!1,pe:!1,be:null,de:{run:async()=>{try{return await async function(e,t){if(!e.ue){const{be:t}=e;e.be=null;const n=t||new d(Hn);throw n.ge=!0,n}let r,i;const s=new S((e,t)=>{r=e,i=t});n.assign(e,{reader:null,writer:null,ye:r,Se:i,result:s});const{readable:a,options:c}=e,{writable:l,closed:u,xe:f}=function(e){const t=new AbortController,{writable:n,readable:r}=new F,o=r.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:t.signal});return o.catch(()=>{}),{writable:n,closed:o,xe:()=>t.abort()}}(e.writable);let w;try{w=dr({type:"start",options:c,config:t,readable:a,writable:l},e)}catch(t){f();try{await u}catch{}throw e.we(),t}w||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const{workerStartupTimeout:p}=t;!e.he&&o.isFinite(p)&&p>=0&&(e.Ee=_(()=>function(e){if(e.Ee=null,e.he)return;const{Se:t,writer:n}=e;if(cr(e),e.ue=null,t){const e=new d(Hn);e.ge=!0,t(e),n&&n.releaseLock()}}(e),p));try{const e=await s;return await m(),await u,e}catch(e){await m(),f();try{await u}catch{}throw e}async function m(){if(!w&&!l.locked)try{await l.getWriter().close()}catch{}}}(e,{chunkSize:i,wasmURI:a,baseURI:r,workerStartupTimeout:s})}catch(n){if(n&&n.ge)return Kn(e),ar(e),$n(e,t);if(n&&n.codecImportFailed){if(e.reader)return ar(e),$n(e,t);e.we()}throw n}}}})}return e.de},qn=sr;let wr=[];const pr=[];let mr,hr,yr=0;async function Sr(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:s,useCompressionStream:a,compressed:c,checkCrc32:l,computeCrc32:u,encrypted:d,format:w,codecURI:p}=n,{workerURI:m,createWorker:h,maxWorkers:y}=r;w&&(p&&(n.codecURI=function(e,t){try{return new f(e,t).toString()}catch{return e}}(p,r.baseURI)),await async function(e,t){!hn.has(e)&&t&&gn(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(w,n.codecURI)),t.transferStreams=!w&&(i||i===ae&&r.transferStreams);const E=!(c||l||u||d),g=w===ae||Boolean(n.codecURI);return t.useWebWorkers=!E&&g&&(s||s===ae&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&m?m:ae,t.createWorker=t.useWebWorkers&&h?h:ae,n.useCompressionStream=a||a===ae&&r.useCompressionStream,(await async function(){const n=wr.find(e=>!e.ce);if(n)return Rr(n),new Yn(n,e,t,b);if(wr.length<y){const n={Re:yr};return yr++,wr.push(n),new Yn(n,e,t,b)}return new S(n=>{pr.push({resolve:n,stream:e,Fe:t}),hr=r.workerStarvationTimeout,Er()})}()).run();function b(e){if(gr(),pr.length){const[{resolve:t,stream:n,Fe:r}]=pr.splice(0,1);t(new Yn(e,n,r,b)),Er()}else e.ue?(Rr(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.pe?e.pe=!1:e.ze=_(async()=>{wr=wr.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}(e,t)):wr=wr.filter(t=>t!=e)}}function Er(){!mr&&pr.length&&o.isFinite(hr)&&hr>=0&&(mr=_(br,hr))}function gr(){mr&&(v(mr),mr=null)}function br(){if(mr=null,pr.length){const[{resolve:e,stream:t,Fe:r}]=pr.splice(0,1),o=n.assign({},r,{useWebWorkers:!1,workerURI:ae,createWorker:ae});e(new Yn({},t,o,xr)),Er()}}function xr(){gr(),Er()}function Rr(e){const{ze:t}=e;t&&(v(t),e.ze=null)}const Fr="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split(""),zr=256==Fr.length;function Ar(e,t){return Dr(e,t,!0)}function Dr(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?function(e){if(zr){let t="";for(let n=0;n<e.length;n++)t+=Fr[e[n]];return t}return(new g).decode(e)}(e):new g(t,{ignoreBOM:n}).decode(e)}const Ir="HTTP error ",kr="HTTP Range not supported",Cr="HTTP resource changed",Tr="Writer iterator completed too soon",_r="Writer not initialized",vr="Content-Range",Nr="Range",Ur="GET",Mr="bytes",Or=16777216,Lr="writable",Br=T();class Wr{constructor(){this.size=0}init(){this.initialized=!0}}class Pr extends Wr{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=Ke(qe())}={}){const r=this;let o=0;return n=Ye(n),new z({async pull(i){const a=t===ae?n:s.min(n,t-o),c=await Eo(r,e+o,a);c.length&&i.enqueue(c),o+n>=t||!c.length&&a?i.close():o+=n}})}}class Vr extends Wr{constructor(){super();const e=this,t=new A({write(t){if(!e.initialized)throw new d(_r);return e.writeUint8Array(et(t))}});n.defineProperty(e,Lr,{get:()=>t})}writeUint8Array(){}}let Zr,Hr;class Gr extends Pr{constructor(e){super(),n.assign(this,{Ae:e,size:e.size}),Hr||(Hr=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,n=await e.read();for(;!n.done;)t+=n.value.length,n=await e.read();Zr=1==t}catch{Zr=!1}})())}createReadable(e){const{Ae:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};return!r&&o>=n?cn(t.stream()):Zr?cn(t.slice(r,r+o).stream()):super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=!e&&r>=n.size?n.Ae:n.Ae.slice(e,r);let i=await o.arrayBuffer();return i.byteLength>t&&(i=i.slice(e,r)),new w(i)}}class jr extends Wr{constructor(e){super();const t=this,r=new F;n.defineProperty(t,Lr,{get:()=>r.writable}),t.contentType=e,t.De=ln(r.readable,e),t.De.catch(()=>{})}getData(){return this.De}}class qr extends Pr{constructor(e,t){super(),Yr(this,e,t)}async init(){await Xr(this,co,oo),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:i}=t;if((n||r)&&i!==ae){const{offset:n=0,size:r=i-n}=e||{};if(r>0&&n<i)return function(e,t,n){let r,i=t,a=0,c=n;return new z({start:()=>l(),async pull(e){r||await l();const{value:t,done:n}=await r.read();if(n)throw new d(kr);const o=t.length>a?t.subarray(0,a):t;a-=o.length,c-=o.length,o.length&&e.enqueue(o),a||(await async function(){const e=r;r=ae,await e.cancel()}(),c||e.close())},cancel:e=>r&&r.cancel(e)});async function l(){const t=s.min(e.maximumRangeSize,c),n=await co(Ur,e,no(e,i,t));if(206!=n.status)throw new d(kr);const l=n.headers.get(vr);if(l){const e=o(l.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=i)throw new d(kr)}to(e,n),eo(e,n),i+=t,a=t,r=n.body.getReader()}}(t,n,s.min(r,i-n))}return super.createReadable(e)}readUint8Array(e,t){return Jr(this,e,t,co,oo)}}class Kr extends Pr{constructor(e,t){super(),Yr(this,e,t)}async init(){await Xr(this,lo,io),super.init()}readUint8Array(e,t){return Jr(this,e,t,lo,io)}}function Yr(e,t,r){const{preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c=!0,maximumRangeSize:l=Or,fetch:u}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(e,{url:t,options:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a,checkResourceChanges:c,maximumRangeSize:l,fetch:u})}async function Xr(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a}=e;if(function(e){const{baseURI:t}=qe(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n}(r)&&(i||s)&&(typeof o==le||o)){const r=await t(Ur,e,no(e,a?-22:void 0)),o=r.headers.get("Accept-Ranges");if(!(s||o&&o.toLowerCase()==Mr))throw new d(kr);{if(a){const t=new w(await r.arrayBuffer());206==r.status&&t.length==K&&(e.Ie=t)}eo(e,r);const o=Qr(r);o===ae?await ao(e,t,n):e.size=o}}else await ao(e,t,n)}async function Jr(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,Ie:c,size:l,options:u}=e;if(s||a){if(c&&t==l-K&&n==K)return c;if(t>=l||0===n)return de;{t+n>l&&(n=l-t);const i=await r(Ur,e,no(e,t,n));if(206!=i.status)throw new d(kr);const s=i.headers.get(vr);if(s){const e=o(s.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e)&&e!=t)throw new d(kr)}to(e,i),eo(e,i);const a=new w(await i.arrayBuffer());if(a.length!=n)throw new d(kr);return a}}{const{data:r}=e;return r||await i(e,u),e.data.subarray(t,t+n)}}function Qr(e){const t=e.headers.get(vr);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=o(e);if(!o.isNaN(t))return t}}}function $r({headers:e}){return{ke:e.get("Etag")||ae,lastModified:e.get("Last-Modified")||ae}}function eo(e,t){const{checkResourceChanges:n,Ce:r}=e;n&&!r&&206==t.status&&(e.Ce=$r(t))}function to(e,t){const{checkResourceChanges:r,Ce:o,size:i}=e;if(r){const e=Qr(t);if(e!==ae&&i!==ae&&e!=i)throw new d(Cr);if(o){const e=$r(t);if(n.entries(o).some(([t,n])=>n!==ae&&e[t]!==ae&&n!=e[t]))throw new d(Cr)}}}function no(e,t=0,r=1){return n.assign({},ro(e),{[Nr]:Mr+"="+(t<0?t:t+"-"+(t+r-1))})}function ro({options:e}){const{headers:t}=e;if(t)return T.iterator in t?n.fromEntries(t):t}async function oo(e){await so(e,co)}async function io(e){await so(e,lo)}async function so(e,t){const n=await t(Ur,e,ro(e));e.data=new w(await n.arrayBuffer()),e.size=e.data.length}async function ao(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,ro(e)),i=r.headers.get("Content-Length");i&&!r.headers.get("Content-Encoding")?e.size=o(i):await n(e,e.options)}}async function co(e,{fetch:t=fetch,options:r,url:o},i){const s=await t(o,n.assign({},r,{method:e,headers:i}));if(s.status<400)return s;throw 416==s.status?new d(kr):new d(Ir+(s.statusText||s.status))}function lo(e,{url:t},r){return new S((o,i)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",()=>{if(s.status<400){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),o({status:s.status,arrayBuffer:()=>s.response,headers:new c(e)})}else i(416==s.status?new d(kr):new d(Ir+(s.statusText||s.status)))},!1),s.addEventListener("error",e=>i(e.detail?e.detail.error:new d("Network error")),!1),s.open(e,t),r)for(const e of n.entries(r))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()})}class uo extends Pr{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Kr(e,t):new qr(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(e){return this.reader.createReadable(e)}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class fo extends Pr{constructor(e){super(),this.Te=e}async init(){const e=this;e._e=0;const t=e.Te=await S.all(e.Te.map(So));e.ve=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}Ne(e){const{ve:t,size:n}=this,r=t[e];return r===ae?n:r}async readUint8Array(e,t){const n=this,{Te:r}=this;let o,i=0,a=e;for(;r[i]&&a>=r[i].size;)a-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(a+t<=r)o=await Eo(c,a,t);else{const i=r-a;o=$e(await Eo(c,a,i),await n.readUint8Array(e+i,t-i))}}else o=de;return n._e=s.max(i,n._e),o}}class wo extends Wr{constructor(e,t=4294967295){super();const r=this;let o,i,s;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const a=new A({async write(t){if(t===Br)return void(s&&await l());const{availableSize:n}=r;if(s)t.length>=n?(await c(t.subarray(0,n)),await l(),t.length>n&&await this.write(t.subarray(n))):await c(t);else{const{value:n,done:a}=await e.next();if(a&&!n)throw new d(Tr);o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await yo(o),i=n.writable,s=i.getWriter(),await this.write(t)}},async close(){s&&(await s.ready,await u())},async abort(e){s&&await s.abort(e)}});async function c(e){const t=e.length;t&&(await s.ready,await s.write(e),o.size+=t,r.availableSize-=t)}async function l(){await u(),r.diskOffset+=o.size,r.diskNumber++,s=null,r.availableSize=r.maxSize}async function u(){await s.close()}n.defineProperty(r,Lr,{get:()=>a})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(Br)}finally{e.releaseLock()}}}class po{constructor(e){return t.isArray(e)&&(e=new fo(e)),(e instanceof z||typeof e.getReader==ue)&&(e={readable:cn(e)}),e}}class mo{constructor(e){return e.writable===ae&&typeof e.next==ue&&(e=new wo(e)),(e instanceof A||typeof e.getWriter==ue)&&(e={writable:un(e)}),e.size===ae&&(e.size=0),e}}function ho(e){return Boolean(e&&e.getData)}async function yo(e,t){if(!e.init||e.initialized)return S.resolve();await e.init(t)}async function So(e){return e=new po(e),await yo(e),e.size!==ae&&e.readUint8Array||(e=new Gr(await ln(e.readable)),await yo(e)),e}function Eo(e,t,n){return e.readUint8Array(t,n)}function go(e,t){return e.createReadable?e.createReadable(t):e.readUint8Array?Pr.prototype.createReadable.call(e,t):e.readable}const bo="filename",xo="rawFilename",Ro="comment",Fo="rawComment",zo="uncompressedSize",Ao="compressedSize",Do="offset",Io="diskNumberStart",ko="lastModDate",Co="rawLastModDate",To="lastAccessDate",_o="rawLastAccessDate",vo="creationDate",No="rawCreationDate",Uo="internalFileAttributes",Mo="externalFileAttributes",Oo="internalFileAttribute",Lo="externalFileAttribute",Bo="msdosAttributesRaw",Wo="msdosAttributes",Po="msDosCompatible",Vo="zip64",Zo="encrypted",Ho="version",Go="versionMadeBy",jo="zipCrypto",qo="directory",Ko="executable",Yo="compressionMethod",Xo="signature",Jo="extraField",Qo="unixMode",$o="setuid",ei="setgid",ti="sticky",ni=[bo,xo,zo,Ao,ko,Co,Ro,Fo,To,_o,vo,No,Do,Io,Uo,Mo,Oo,Lo,Bo,Wo,Po,Vo,Zo,Ho,Go,jo,qo,Ko,"symlink",Yo,Xo,"crc32",Jo,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",Qo,"unixExternalUpper",$o,ei,ti,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class ri{constructor(e){ni.forEach(t=>this[t]=e[t])}}const oi="File format is not recognized",ii="End of central directory not found",si="End of Zip64 central directory locator not found",ai="Central directory header not found",ci="Local file header not found",li="Zip64 extra field not found",ui="File contains encrypted entry",fi="Encryption method not supported",di="Compression method not supported",wi="Split zip file",pi="Overlapping entry found",mi="Entry data out of bounds",hi="Ambiguous archive",yi="Encrypted central directory is not supported",Si="Unsafe filename",Ei="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",gi="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",bi="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",xi="64-bit value exceeds Number.MAX_SAFE_INTEGER",Ri="unsorted central directory",Fi="unknown version needed to extract",zi="compressed patched data",Ai="malformed extra field",Di="unknown zip64 extensible data",Ii="wrapped entries count",ki="appended data",Ci="prepended data",Ti="trailing central directory data",_i="duplicate filename",vi="mismatched zip64 end of central directory record",Ni="mismatched local file header (general purpose bit flag)",Ui="mismatched local file header (compression method)",Mi="mismatched local file header (crc32 or sizes)",Oi=/^[a-zA-Z]:/,Li="utf-8",Bi="cp437",Wi=[[zo,M],[Ao,M],[Do,M],[Io,O]],Pi={[O]:{Ue:Fs,bytes:4},[M]:{Ue:zs,bytes:8}},Vi=i(o.MAX_SAFE_INTEGER);class Zi{constructor(e,t={}){n.assign(this,{reader:new po(e),options:t,Me:new c})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await yo(r),r.size!==ae&&r.readUint8Array||(r=new Gr(await ln(r.readable)),await yo(r)),r.size<K)throw new d(oi);const o=t.warnings=[],i=ss(e,t.options),a=i==De,c=i!=ke,u=ls(Ss(t,e,Fe),i),f=function(e,t){if(e===ae)return t;if(!is(e))throw new d(gi);return e}(Ss(t,e,"filenameValidation"),i),w=Ss(t,e,"normalizeFilename"),{Oe:p,Le:m}=await us(r,c,u);if(!p)throw await async function(e){return await os(e)==W}(r)?new d(wi):new d(ii);c&&m>1&&ys("multiple end of central directory records");const h=tt(p);let y=Fs(h,12),S=Fs(h,16);const E=p.offset,g=Rs(h,20),b=E+K+g,x=r.size-b;x>u&&ys(ki),x>0&&hs(o,ki);let R=Rs(h,4);const z=r._e||0;let A,D,I,k,C=Rs(h,6),T=Rs(h,10),_=0,v=X;const N=S==M||y==M||T==O||C==O;if(S!=M&&C!=O&&(S+=rs(r,C)),N){const e=p.offset>=Y?await Eo(r,p.offset-Y,Y):de,t=tt(e);if(e.length==Y&&Fs(t,0)==j){S=rs(r,Fs(t,4))+zs(t,8);let e=await Eo(r,S,X),i=tt(e);const c=p.offset-Y-X;if((e.length<X||Fs(i,0)!=G)&&S!=c&&c>=0){const t=S;S=c,S>t&&(_=S-t),e=await Eo(r,S,X),i=tt(e)}if(e.length<X||Fs(i,0)!=G)throw new d(si);if(D=!0,I=zs(i,4)>44,I){const e=s.min(zs(i,4)-44,r.size-S-X);e>0&&(v+=e,k=function(e){const t={rawExtensibleData:e};if(e.length>=28){const r=tt(e),o=Rs(r,26);n.assign(t,{compressionMethod:Rs(r,0),compressedSize:zs(r,2),uncompressedSize:zs(r,10),encryptionAlgorithm:Rs(r,18),bitLength:Rs(r,20),flags:Rs(r,22),hashAlgorithm:Rs(r,24),hashData:e.subarray(28,28+o)})}return t}(await Eo(r,S+X,e)))}R==O?R=Fs(i,16):R!=Fs(i,16)&&ms(a,o,vi),C==O?C=Fs(i,20):C!=Fs(i,20)&&ms(a,o,vi),T==O?T=zs(i,32):T!=zs(i,32)&&ms(a,o,vi),y==M?y=zs(i,40):y!=zs(i,40)&&ms(a,o,vi),S=rs(r,C)+zs(i,48)+_}}let U=y;const B=p.offset-(D?v+Y:0);if(S>=r.size&&(_=r.size-S-y-K,S=r.size-y-K),z!=R)throw new d(wi);if(S<0)throw new d(oi);let P=0,V=await Eo(r,S,y),H=tt(V);if(y){if(V.length<4)throw new d(oi);const e=B-y;if(S!=e&&C==R){let t=!(Fs(H,P)==Z||Boolean(k&&k.compressedSize)||qi(H));if(!t&&e>=0&&e+4<=r.size&&(t=Fs(tt(await Eo(r,e,4)),0)==Z),t){const t=S;S=e,S>t&&(_+=S-t),V=await Eo(r,S,y),H=tt(V)}}}const J=B-S;if(y!=J&&J>=0&&C==R&&(y=J,V=await Eo(r,S,y),H=tt(V)),S<0||S>=r.size)throw new d(oi);t.directoryOffset=S,t.directoryLength=U;const Q=Es(t,e,"decryptCentralDirectory");let oe,ie;if(Q&&T&&V.length>=4&&Fs(H,0)!=Z&&(I||qi(H))){const e=function(e,t,n){const r=e&&e.compressedSize?e.compressedSize:t;return r>0&&r<=n?r:n}(k,U,V.length);ie=V.subarray(e),V=await Q(V.subarray(0,e),k),H=tt(V),U=V.length,oe=!0}k&&!oe&&(V.length<4||Fs(H,0)==Z)&&hs(o,Di),A=S;const se=Ss(t,e,"filenameEncoding"),ce=Ss(t,e,"commentEncoding"),le=new l;let ue,fe=-1;const we=!a&&!D;!T&&we&&(T=Ki(H,V,P),T&&hs(o,Ii));for(let i=0;i<T;i++){const a=new ji(r,t.options);if(P+q>V.length||Fs(H,P)!=Z){if(0==i&&!oe&&(I||qi(H)))throw new d(yi);throw new d(ai)}Xi(a,H,P+6);const c=Boolean(a.bitFlag.languageEncodingFlag),l=P+q,u=l+a.filenameLength,p=u+a.extraFieldLength,m=Rs(H,P+4),h=!(m>>8),y=m>>8==3,S=V.subarray(l,u),E=Rs(H,P+32),g=p+E,b=V.subarray(p,g),x=c,R=c,z=Fs(H,P+38),D=z&L,k={readOnly:Boolean(1&D),hidden:Boolean(2&D),system:Boolean(4&D),directory:Boolean(16&D),archive:Boolean(32&D)},C=Fs(H,P+42),v=Es(t,e,"decodeText")||Ar,N=x?Li:se||Bi,U=R?Li:ce||Bi;let M=v(S,N,ze);if(M===ae&&(M=Ar(S,N)),w){const e=w(M);e!==ae&&(M=e)}if(cs(M,f)){const e=new d(Si);throw e.filename=M,e}let B=v(b,U,Ae);B===ae&&(B=Ar(b,U)),n.assign(a,{index:i,Be:oe,versionMadeBy:m,msDosCompatible:h,zip64:!1,compressedSize:0,uncompressedSize:0,We:E,offset:C,diskNumberStart:Rs(H,P+34),internalFileAttributes:Rs(H,P+36),externalFileAttributes:z,msdosAttributesRaw:D,msdosAttributes:k,rawFilename:S,filenameUTF8:x,commentUTF8:R,rawExtraField:V.subarray(u,p),rawComment:b,filename:M,comment:B}),Ji(a,a,H,P+6)&&hs(o,Ai,M),a.offset+=_;const W=rs(r,a.diskNumberStart)+a.offset;A=s.min(W,A),W<fe&&hs(o,Ri,M),fe=W,(a.version&L)>63&&hs(o,Fi,M),32&~a.rawBitFlag||hs(o,zi,M),le.has(a.filename)&&(ue=!0),le.add(a.filename);const G=a.externalFileAttributes>>16&O;a.unixMode===ae&&16877&G&&(a.unixMode=G);const j=Boolean(a.unixMode&te),K=Boolean(a.unixMode&ne),Y=Boolean(512&a.unixMode),X=40960==((a.unixMode===ae?G:a.unixMode)&$),J=!X&&(a.unixMode!==ae?!!(73&a.unixMode):y&&!!(73&G)),Q=a.unixMode!==ae&&(a.unixMode&$)==ee,ie=(G&$)==ee;n.assign(a,{setuid:j,setgid:K,sticky:Y,symlink:X,unixExternalUpper:G,internalFileAttribute:a.internalFileAttributes,externalFileAttribute:a.externalFileAttributes,executable:J,directory:Q||ie||h&&k.directory||a.filename.endsWith(re),zipCrypto:a.encrypted&&!a.extraFieldAES});const de=new ri(a);if(de.getData=(e,n)=>a.getData(e,de,t.Me,n),de.arrayBuffer=async e=>{const n=new F,r=ln(n.readable).then(e=>e.arrayBuffer());return r.catch(()=>{}),await a.getData(n,de,t.Me,e),r},P=g,i==T-1&&we){const e=Ki(H,V,P);e&&(T+=e,hs(o,Ii))}const{onprogress:pe}=e;if(pe)try{await pe(i+1,T,new ri(a))}catch{}yield de}let pe=P,me=Yi(V.subarray(P))||(oe?Yi(ie):ae);if(!me&&!oe){const e=S+P,t=s.min(B-e,65541);t>=6&&(me=Yi(await Eo(r,e,t)))}me&&(t.digitalSignature=me,pe=P+6+me.length),(P!=U&&pe!=U||!oe&&P!=y&&pe!=y)&&ms(a,o,Ti),ue&&ms(a,o,_i);const he=Ss(t,e,"extractPrependedData"),ye=Ss(t,e,"extractAppendedData"),Se=(a||he)&&T&&4==A&&await async function(e){const t=await os(e);return t==W||808471376==t}(r)?4:0;return a&&(_||T&&A>Se)&&ys(Ci),(_||T&&A>4)&&hs(o,Ci),he&&(t.prependedData=A>Se?await Eo(r,Se,A-Se):de),t.comment=g?await Eo(r,E+K,g):de,ye&&(t.appendedData=b<r.size?await Eo(r,b,r.size-b):de),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){const{reader:e}=this;e.readUint8Array||!e.readable||e.readable.locked||await e.readable.cancel()}}class Hi{constructor(e={}){const{readable:t,writable:n}=new F,r=new Zi(t,e).getEntriesGenerator();this.readable=new z({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const o={...n,readable:function(){const{readable:e,writable:t}=new F;if(n.getData)return async function(){try{await n.getData(t)}catch(e){try{await t.abort(e)}catch{}}}(),e}()};delete o.getData,e.enqueue(o)}}),this.writable=n}}async function Gi(e,t={}){if(e=new po(e),await yo(e),e.size!==ae&&e.readUint8Array||(e=new Gr(await ln(e.readable)),await yo(e)),e.size<K)return!1;const n=ss(t,{}),r=n!=ke,o=ls(t[Fe],n),{Oe:i,Le:s}=await us(e,r,o);if(!i||n==De&&s>1)return!1;const a=Rs(tt(i),20),c=i.offset+K+a;return e.size-c<=o}class ji{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,n,r={}){const o=this,i=qe(),{reader:a,index:c,offset:l,diskNumberStart:u,extraFieldAES:f,extraFieldZip64:w,compressionMethod:p,bitFlag:m,rawBitFlag:h,crc32:y,rawLastModDate:S,uncompressedSize:E,compressedSize:g}=o,{dataDescriptor:b}=m,x=t.localDirectory={},R=t.warnings=[],F=rs(a,u)+l,z=await Eo(a,F,oe),D=tt(z);let I=Ss(o,r,we),k=Ss(o,r,pe);const C=Ss(o,r,me);if(Ue(I,k),I=I&&I.length&&I,k=k&&k.length&&k,f&&99!=f.originalCompressionMethod)throw new d(di);if(z.length<oe||Fs(D,0)!=B)throw new d(ci);Xi(x,D,4);const{extraFieldLength:T,filenameLength:_}=x,v=x.dataOffset=F+oe+_+T,N=Ss(o,r,"checkLocalDirectory"),U=ss(r,o.options),M=function(e,t){return e===ae?t!=ke:Boolean(e)}(N,U),O=function(e,t){return e===ae?t==De:Boolean(e)}(N,U);let W=de;if(O&&(_||T)){const e=await Eo(a,F+oe,_+T);W=e.subarray(0,_),x.rawExtraField=e.subarray(_)}else x.rawExtraField=T?await Eo(a,F+oe+_,T):de;O&&(x.rawFilename=W),Ji(o,x,D,4,!0)&&hs(R,Ai),function(e,t,n,r,o){const{rawFilename:i}=e,s=!o,a=e.Be&&!(8192&~t.rawBitFlag);!r||a||n.length==i.length&&!n.some((e,t)=>e!=i[t])||ms(s,o,"mismatched local file header (filename)"),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&ms(s,o,Ni),t.compressionMethod!=e.compressionMethod&&ms(s,o,Ui),t.bitFlag.dataDescriptor||a||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||ms(s,o,Mi)}(o,x,W,O,M?ae:R);const{lastAccessDate:V,creationDate:Z,uid:H,gid:G}=x;V&&(t.lastAccessDate=V),Z&&(t.creationDate=Z),H!==ae&&t.uid===ae&&(t.uid=H),G!==ae&&t.gid===ae&&(t.gid=G);const j=o.encrypted&&x.encrypted&&!C,q=j&&!f;if(C||(t.zipCrypto=q),j&&!(64&~x.rawBitFlag))throw new d(fi);const K=C?ae:yn(p);if(0!=p&&8!=p&&9!=p&&!K&&!C)throw new d(di);if(j){if(!q&&(f.strength<1||f.strength>3))throw new d(fi);if(!I&&!k)throw new d(ui)}if(v+g>a.size)throw new d(mi);const Y=g,X=cn(a.createReadable({offset:v,size:Y})),J=Ne(Ss(o,r,he)),Q=Ss(o,r,"checkPasswordOnly");let $=Ss(o,r,"checkOverlappingEntry");const ee=Ss(o,r,"checkOverlappingEntryOnly");ee&&($=!0);const{onstart:te,onprogress:ne,onend:re}=r,ie=0!=p&&!C,se=C?g:E,ce=9==p;let le=Ss(o,r,Se);ce&&(le=!1);const ue=Ss(o,r,"checkCrc32"),fe=(ue===ae?Ss(o,r,"checkSignature"):ue)&&!C&&(!j||q||f&&1==f.vendorVersion),be={options:{codecType:Pn,password:I,rawPassword:k,zipCrypto:q,encryptionStrength:f&&f.strength,checkCrc32:fe,checkAuthenticationCode:Ss(o,r,"checkAuthenticationCode"),passwordVerification:q&&(b?S>>>8&L:y>>>24&L),outputSize:se,crc32:y,compressed:ie,encrypted:j,useWebWorkers:Ss(o,r,ye),useCompressionStream:le,transferStreams:Ss(o,r,Ee),deflate64:ce,format:K?K.format:ae,codecURI:K?K.codecURI:ae,compressionMethod:p,rawBitFlag:h,checkPasswordOnly:Q},config:i,ae:{signal:J,size:Y,onstart:te,onprogress:ne,onend:re}};let xe,Re;$&&await async function({reader:e,Pe:t,index:n,offset:r,crc32:o,compressedSize:i,uncompressedSize:s,dataOffset:a,dataDescriptor:c,extraFieldZip64:l,Me:u}){let f=0;if(c&&(f=l?20:12),f){const n=await Eo(e,a+i,f+4),r=tt(n);let c=n.length==f+4&&Fs(r,0)==P;if(c){const e=ns(r,4,l);(t.encrypted&&!t.zipCrypto||e.crc32==o)&&e.compressedSize==i&&e.uncompressedSize==s?f+=4:c=!1}if(n.length>=f){const e=ns(r,c?4:0,l);e.signature=c,t.localDirectory.dataDescriptor=e}}const w={start:r,end:a+i+f,Pe:t};for(const[e,t]of u)if(e!=n&&w.start<t.end&&t.start<w.end){const e=new d(pi);throw e.overlappingEntry=t.Pe,e}u.set(n,w)}({reader:a,Pe:t,index:c,offset:F,crc32:y,compressedSize:g,uncompressedSize:E,dataOffset:v,dataDescriptor:b||x.bitFlag.dataDescriptor,extraFieldZip64:w||x.extraFieldZip64,Me:n});try{if(!ee){Q&&(e=new A),e=new mo(e),await yo(e,function(e,t,n){return s.min(e,n?1032*t:t)}(se,g,ie)),({writable:xe}=e);const{outputSize:t}=await Sr({readable:X,writable:xe},be);if(e.size+=t,t!=se)throw new d(bn)}}catch(t){if(t.outputSize!==ae&&(e.size+=t.outputSize),!Q||t.message!=xt)throw Re=t,t}finally{if((ho(e)||!Ss(o,r,ge))&&xe&&!xe.locked){const e=xe.getWriter();if(Re)try{await e.abort(Re)}catch{}else await e.close()}}return Q||ee?ae:e.getData?e.getData():xe}}function qi(e){const t=s.min(e.byteLength,1024)-3;for(let n=0;n<t;n++)if(134630224==Fs(e,n))return!0;return!1}function Ki(e,t,n){let r=0;for(;n+q<=t.length&&Fs(e,n)==Z;)n+=q+Rs(e,n+28)+Rs(e,n+30)+Rs(e,n+32),r++;return r%65536?0:r}function Yi(e){if(e.length>=6){const t=tt(e);if(Fs(t,0)==V){const n=Rs(t,4);if(6+n<=e.length)return e.subarray(6,6+n)}}}function Xi(e,t,r){const o=e.rawBitFlag=Rs(t,r+2),i=!(1&~o),s=Fs(t,r+6);n.assign(e,{encrypted:i,version:Rs(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&Q)==Q},rawLastModDate:s,lastModDate:gs(s),filenameLength:Rs(t,r+22),extraFieldLength:Rs(t,r+24)})}function Ji(e,t,r,o,i){const{rawExtraField:s}=t,l=t.extraField=new c,u=tt(s);let f=0,w=!1;try{for(;f<s.length;){const e=Rs(u,f),t=Rs(u,f+2);l.set(e,{type:e,data:s.slice(f+4,f+4+t)}),f+=4+t}}catch{w=!0}f>s.length&&(w=!0);const p=Rs(r,o+4);n.assign(t,{signature:Fs(r,o+10),crc32:Fs(r,o+10),compressedSize:Fs(r,o+14),uncompressedSize:Fs(r,o+18)});const m=l.get(1);m&&(function(e,t){t.zip64=!0;const n=tt(e.data),r=Wi.filter(([e,n])=>t[e]==n),o=r.reduce((e,[,t])=>e+Pi[t].bytes,0);if(e.data.length<o)throw new d(li);for(let o=0,i=0;o<r.length;o++){const[s,a]=r[o],c=Pi[a];t[s]=e[s]=c.Ue(n,i),i+=c.bytes}}(m,t),t.extraFieldZip64=m);const h=l.get(28789);h&&(Qi(h,bo,xo,t,e),t.extraFieldUnicodePath=h);const y=l.get(25461);y&&(Qi(y,Ro,Fo,t,e),t.extraFieldUnicodeComment=y);const S=l.get(39169);S&&S.data.length>=7?(function(e,t,r){const o=tt(e.data),i=xs(o,4);n.assign(e,{vendorVersion:xs(o,0),vendorId:xs(o,2),strength:i,originalCompressionMethod:r,compressionMethod:Rs(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=ae)}(S,t,p),t.extraFieldAES=S):t.compressionMethod=p;const E=l.get(13);E&&($i(E,t),t.extraFieldPkwareUnix=E);const g=l.get(22613);g&&($i(g,t),t.extraFieldUnixType1=g);const b=l.get(10);b&&(function(e,t){const r=tt(e.data);let o,i=4;try{for(;i<e.data.length&&!o;){const t=Rs(r,i),n=Rs(r,i+2);1==t&&(o=e.data.slice(i+4,i+4+n)),i+=4+n}}catch{}if(o&&24==o.length){const r=tt(o),i=r.getBigUint64(0,!0),s=r.getBigUint64(8,!0),a=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:i,rawLastAccessDate:s,rawCreationDate:a});const c={lastModDate:bs(i),lastAccessDate:bs(s),creationDate:bs(a)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:s,rawCreationDate:a})}}(b,t),t.extraFieldNTFS=b);const x=l.get(30805);let R;if(x&&(R=es(x,t,!1),t.extraFieldUnix=x),!R){const e=l.get(30837);e&&(es(e,t,!0),t.extraFieldInfoZip=e)}const F=l.get(J);F&&(function(e,t,n){if(!e.data.length)return;const r=tt(e.data),o=xs(r,0),i=[],s=[];n?(1&~o||(i.push(ko),s.push(Co)),2&~o||(i.push(To),s.push(_o)),4&~o||(i.push(vo),s.push(No))):e.data.length>=5&&(i.push(ko),s.push(Co));let c=1;i.forEach((n,o)=>{if(e.data.length>=c+4){const i=Fs(r,c);t[n]=e[n]=new a(1e3*(0|i));const l=s[o];e[l]=i}c+=4})}(F,t,i),t.extraFieldExtendedTimestamp=F);const z=l.get(6534);return z&&(t.extraFieldUSDZ=z),w}function Qi(e,t,r,o,i){if(e.data.length<5)return void(e.valid=!1);const s=tt(e.data),a=new ft;a.append(i[r]);const c=tt(new w(4));c.setUint32(0,a.get(),!0);const l=Fs(s,1),u=xs(s,0);n.assign(e,{version:u,[t]:Ar(e.data.subarray(5)),valid:1==u&&!i.bitFlag.languageEncodingFlag&&l==Fs(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function $i(e,t){if(e.data.length<8)return;const r=tt(e.data),o={lastAccessDate:new a(1e3*(0|Fs(r,0))),lastModDate:new a(1e3*(0|Fs(r,4)))};e.data.length>=12&&(o.uid=Rs(r,8),o.gid=Rs(r,10)),n.assign(e,o),n.assign(t,o)}function es(e,t,r){try{const o=tt(e.data);let i,s;if(r){let t=0;const r=xs(o,t++),a=xs(o,t++);i=ts(e.data.subarray(t,t+a)),t+=a;const c=xs(o,t++);s=ts(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:i,gid:s})}else e.data.length>=4&&(i=Rs(o,0),s=Rs(o,2),n.assign(e,{uid:i,gid:s}));return i!==ae&&(t.uid=i),s!==ae&&(t.gid=s),i!==ae||s!==ae}catch{}}function ts(e){const t=new w(4);return t.set(e,0),new h(t.buffer,t.byteOffset,4).getUint32(0,!0)}function ns(e,t,n){const r=Fs(e,t);let o,i;return n?(o=zs(e,t+4),i=zs(e,t+12)):(o=Fs(e,t+4),i=Fs(e,t+8)),{crc32:r,compressedSize:o,uncompressedSize:i}}function rs(e,t){return e.Ne?e.Ne(t):0}async function os(e){return Fs(tt(await Eo(e,0,4)))}function is(e){return e===De||e===Ie||e===ke}function ss(e,t){return as(e,as(t,Ie))}function as(e,t){const n=e.strictness;if(n!==ae){if(!is(n))throw new d(Ei);return n}const r=e.checkAmbiguity;return r===ae?t:r?De:t==ke?ke:Ie}function cs(e,t){if(t==ke)return!1;const n=e.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(n.includes("..")||e.startsWith("/")||e.startsWith("\\\\")||Oi.test(e))||t==De&&(n.includes(".")||n.includes(""))}function ls(e,t){if(e!==ae){const t=Le(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new d(bi);return t}return t==De?0:t==ke?1/0:O}async function us(e,t,n){const{size:r}=e,o=s.min(r,65557),i={count:64};let a,c,l=0;for await(const[n,s,u,f,d]of fs(e,o)){const o=Rs(n,f+20);if(d+K+o==r){const o=await ws(e,n,s,f,d,r,i);if(2==o){if(a||(a=ds(u,f,d)),l++,!t||l>1)break}else 1!=o||c||(c=ds(u,f,d))}}return a||(a=c),a||(a=await async function(e,t,n){const{size:r}=e,o=s.min(r,t==1/0?r:65557+t);let i,a;for await(const[t,s,c,l,u]of fs(e,o)){const o=ds(c,l,u);i||(i=o);const f=await ws(e,t,s,l,u,r,n);if(2==f)return o;1!=f||a||(a=o)}return a||i}(e,n,i)),{Oe:a,Le:l}}async function*fs(e,t){const n=e.size-t,r=await Eo(e,n,t),o=tt(r);for(let e=r.length-K;e>=0;e--)Fs(o,e)==H&&(yield[o,n,r,e,n+e])}function ds(e,t,n){return{offset:n,buffer:e.slice(t,t+K).buffer}}async function ws(e,t,n,r,o,i,s){const a=Rs(t,r+10),c=Fs(t,r+12),l=Fs(t,r+16);if(a==O||c==M||l==M)return await ps(e,t,n,o-Y,i,s)==j?2:0;if(!a&&!c)return 1;const u=Rs(t,r+6);for(const r of[o-c,rs(e,u)+l])if(await ps(e,t,n,r,i,s)==Z)return 2;return 0}async function ps(e,t,n,r,o,i){return r<0||r+4>o?ae:r>=n?Fs(t,r-n):i.count>0?(i.count--,Fs(tt(await Eo(e,r,4)),0)):ae}function ms(e,t,n){e?ys(n):hs(t,n)}function hs(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==ae&&(r.filename=n),e.push(r)}}function ys(e){const t=new d(hi);throw t.reason=e,t}function Ss(e,t,n){return t[n]===ae?e.options[n]:t[n]}function Es(e,t,n){return ve(Ss(e,t,n))}function gs(e){const t=(4294901760&e)>>16,n=e&O,r=new a(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<se?se:r}function bs(e){return new a(o(e/i(1e4)-i(116444736e5)))}function xs(e,t){return e.getUint8(t)}function Rs(e,t){return e.getUint16(t,!0)}function Fs(e,t){return e.getUint32(t,!0)}function zs(e,t){const n=e.getBigUint64(t,!0);if(n>Vi)throw new d(xi);return o(n)}var As=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:hi,ERR_BAD_FORMAT:oi,ERR_CENTRAL_DIRECTORY_NOT_FOUND:ai,ERR_ENCRYPTED:ui,ERR_ENCRYPTED_CENTRAL_DIRECTORY:yi,ERR_ENTRY_DATA_OUT_OF_BOUNDS:mi,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:si,ERR_EOCDR_NOT_FOUND:ii,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:li,ERR_INVALID_AUTHENTICATION_CODE:bt,ERR_INVALID_COMPRESSED_DATA:xn,ERR_INVALID_CRC32:Rn,ERR_INVALID_FILENAME_VALIDATION:gi,ERR_INVALID_MAX_APPENDED_DATA_SIZE:bi,ERR_INVALID_PASSWORD:Et,ERR_INVALID_SIGNATURE:gt,ERR_INVALID_STRICTNESS:Ei,ERR_INVALID_UNCOMPRESSED_SIZE:bn,ERR_LOCAL_FILE_HEADER_NOT_FOUND:ci,ERR_OVERLAPPING_ENTRY:pi,ERR_SPLIT_ZIP_FILE:wi,ERR_UNSAFE_FILENAME:Si,ERR_UNSUPPORTED_COMPRESSION:di,ERR_UNSUPPORTED_ENCRYPTION:fi,ERR_UNSUPPORTED_UINT64:xi,ERR_WORKER_STARTUP_TIMEOUT:Hn,WARNING_APPENDED_DATA:ki,WARNING_COMPRESSED_PATCHED_DATA:zi,WARNING_DUPLICATE_FILENAME:_i,WARNING_MALFORMED_EXTRA_FIELD:Ai,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Ni,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:Ui,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:Mi,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:vi,WARNING_PREPENDED_DATA:Ci,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Ti,WARNING_UNKNOWN_VERSION:Fi,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Di,WARNING_UNSORTED_CENTRAL_DIRECTORY:Ri,WARNING_WRAPPED_ENTRIES_COUNT:Ii,ZipReader:Zi,ZipReaderStream:Hi,isZipFile:Gi});const Ds="File already exists",Is="Zip file comment exceeds 64KB",ks="Invalid zip file comment (must be a Uint8Array)",Cs="File entry comment exceeds 64KB",Ts="Invalid file entry comment (must be a string)",_s="Invalid date (must be a valid Date instance)",vs="File entry name exceeds 64KB",Ns="Version exceeds 65535",Us="The strength must equal 1, 2, or 3",Ms="Encryption is not supported in USDZ files",Os="Encryption is not supported when the 'passThrough' option is set",Ls="Invalid extra field (must be a Map)",Bs="Invalid extra field type (must be integer 0..65535)",Ws="Invalid extra field data (must be a Uint8Array)",Ps="Extra field data exceeds 64KB",Vs=-2147483648,Zs=2147483647,Hs=i(0),Gs=i("0x7fffffffffffffff"),js="Zip64 is not supported (set the 'zip64' option to 'true')",qs="Undefined uncompressed size",Ks="Undefined compression method",Ys="Undefined reader",Xs="Zip file not empty",Js="Invalid uid (must be integer 0..2^32-1)",Qs="Invalid gid (must be integer 0..2^32-1)",$s="Invalid UNIX mode (must be integer 0..65535)",ea="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",ta="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",na="Invalid msdosAttributesRaw (must be integer 0..255)",ra="Invalid msdosAttributes (must be an object with boolean flags)",oa="Invalid level (must be integer 0..9)",ia="Signature data exceeds 64KB",sa=new w([7,0,2,0,65,69,3,0,0]),aa="infozip",ca="unix";let la=0;const ua=[];class fa{constructor(e,t={}){e=new mo(e);const{availableSize:r=ce,maxSize:o=ce}=e,i=r>0&&r!==ce&&o>0&&o!==ce;n.assign(this,{writer:e,Ve:i,options:t,Ze:new c,He:new l,offset:t[xe]===ae?e.size||e.writable.size||0:t[xe],Ge:t[xe]===ae?0:t[xe]-(e.size||e.writable.size||0),je:new l,qe:[],Ke:0,Ye:ae})}prependZip(e){return wa(this,async function(e,t){if(e.He.size)throw new d(Xs);await e.Xe(t)}(this,e))}appendZip(e){return wa(this,this.Xe(e))}async Xe(e){const r=this,{je:o,He:i,Ze:s}=r;for(;o.size;)await S.allSettled(t.from(o));let a;const l=new S(e=>a=e);o.add(l);const u=[];let f;try{e=new po(e),await yo(e),e.size!==ae&&e.readUint8Array||(e=new Gr(await ln(e.readable)),await yo(e));const{ZipReader:o}=await S.resolve().then(function(){return As}),a=new o(e),l=await a.getEntries();await a.close(),await yo(r.writer);const{directoryOffset:w}=a;l.forEach(({filename:e})=>{if(i.has(e))throw new d(Ds);i.add(e),u.push(e)}),r.Je=!0;const{Qe:p}=r;r.Qe=new S(e=>f=()=>{r.Je=!1,e()}),await p,r.Ve&&(delete r.Ve,await async function(e){return tt(await Eo(e,0,4)).getUint32(0,!0)==W}(e)||(await Ca(r.writer,Ia()),r.offset+=4));const m=await async function(e,n,r,o){const{writer:i}=e,s=new c;if(i.closeDisk){const a=t.from(r).sort((e,t)=>Da(n,e)-Da(n,t));let c=0;for(const t of a){const r=Da(n,t);await za(e,n,c,r-c),xa(i,await Aa(n,r))&&await i.closeDisk(),s.set(t,{offset:Ra(e,i),diskNumberStart:ga(i)}),c=r}await za(e,n,c,o-c)}else{const t=e.offset;await za(e,n,0,o),r.forEach(e=>s.set(e,{offset:t+Da(n,e),diskNumberStart:0}))}return s}(r,e,l,w);l.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,bitFlag:i,encrypted:a,uncompressedSize:c,compressedSize:l,extraFieldZip64:u}=e;let{compressionMethod:f,rawExtraField:d}=e;const{level:w,languageEncodingFlag:p,dataDescriptor:h}=i;d=Fa(d||de),e.extraFieldAES&&(f=99);const y=Ya(d),S=Boolean(u)&&u.uncompressedSize!==ae,E=Boolean(u)&&u.compressedSize!==ae,g=-7&Ja(w,p,h,a,f)|w<<1,{$e:b,et:x}=Xa({version:t,bitFlag:g,compressionMethod:f,uncompressedSize:c,compressedSize:l,rawLastModDate:r,rawFilename:o,nt:E,ot:S,extraFieldLength:y}),{crc32:R}=e;R!==ae&&ja(x,10,R);const{offset:F,diskNumberStart:z}=m.get(e);n.assign(e,{ot:S,nt:E,offset:F,diskNumberStart:z,it:!1,st:de,ct:de,lt:de,ut:de,ft:de,rawExtraField:d,wt:de,extendedTimestamp:!1,$e:b,et:x}),s.set(e.filename,e)})}catch(e){throw u.forEach(e=>i.delete(e)),e}finally{a(),o.delete(l),f&&f()}}add(e="",r,c={}){const l=this,{je:u}=l,f=async function(e,r,c,l){if(Ma(e,l=n.assign({},l),qo)&&!r.endsWith(re)&&(r+=re),e.He.has(r))throw new d(Ds);e.He.add(r),la<qe().maxWorkers?la++:await new S(e=>ua.push(e));try{return await async function(e,r,c,l){const u=function(e,n,r){let o=Ma(e,r,Po),i=Ma(e,r,Go,o?20:768);const s=Ma(e,r,Ko),a=Pa(e,r,"uid"),c=Pa(e,r,"gid");let l=Pa(e,r,Qo),u=Ma(e,r,"unixExtraFieldType"),f=Ma(e,r,$o),w=Ma(e,r,ei),p=Ma(e,r,ti);if(Oe(a,M,Js),Oe(c,M,Qs),Oe(l,O,$s),u!==ae&&u!==aa&&u!==ca)throw new d(ea);if(u===ca&&(a!==ae&&a>O||c!==ae&&c>O))throw new d(ta);u!==ae||a===ae&&c===ae||(u=aa);let m=Pa(e,r,Bo),h=Ma(e,r,Wo);const y=m!==ae||h!==ae;if(a!==ae||c!==ae||l!==ae||u||s?(o=!1,i=i&L|768):y&&(o=!0,i&=L),Oe(m,L,na),h&&("object"!=typeof h||t.isArray(h)))throw new d(ra);if(i>O)throw new d(Ns);let S=Ba(e,r,Mo,Lo);const E=S!==ae;E||(S=0),!r[qo]&&n.endsWith(re)&&(r[qo]=!0);const g=Ma(e,r,qo);if(g?(n.endsWith(re)||(n+=re),E||(S=16,o||(S|=16877<<16))):o||E||(S=s?493<<16:27525120),!o){const e=l!==ae||Boolean(f||w||p);l=l===ae?S>>16&O:l&O,f?l|=te:f=Boolean(l&te),w?l|=ne:w=Boolean(l&ne),p?l|=512:p=Boolean(512&l),E&&!e||(g?l=-61441&l|ee:l&$||(l|=32768),S=(l&O)<<16|S&O)}({msdosAttributesRaw:m,msdosAttributes:h}=function(e,t){if(e!==ae)e&=L;else if(t!==ae){const{readOnly:n,hidden:r,system:o,directory:i,archive:s}=t;let a=0;n&&(a|=1),r&&(a|=2),o&&(a|=4),i&&(a|=16),s&&(a|=32),e=a&L}return t===ae&&(t={readOnly:Boolean(1&e),hidden:Boolean(2&e),system:Boolean(4&e),directory:Boolean(16&e),archive:Boolean(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}}(m,h)),y&&(S=S&M|m&L);const b=S>>16&O,x=l!==ae&&40960==(l&$);return{name:n,ht:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:S,unixExternalUpper:b,uid:a,gid:c,unixMode:l,unixExtraFieldType:u,symlink:x,setuid:f,setgid:w,sticky:p,msdosAttributesRaw:m,msdosAttributes:h}}}(e,r,l);({name:r}=u);const f=function(e,t,n){const r=La(e,n,"encodeText")||wt;let i=r(t,ze);if(i===ae&&(i=wt(t)),Ya(i)>O)throw new d(vs);const s=n[Ro]||"";if(typeof s!=fe)throw new d(Ts);let c=r(s,Ae);if(c===ae&&(c=wt(s)),Ya(c)>O)throw new d(Cs);const l=Ma(e,n,Ho);if(l!==ae&&l>O)throw new d(Ns);const u=Oa(e,n,ko,new a),f=Ma(e,n,Co),w=Oa(e,n,To),p=Oa(e,n,vo),m=Ba(e,n,Uo,Oo,0),h=Ma(e,n,me),y=Ma(e,n,we),S=Ma(e,n,pe);Ue(y,S);const E=Pa(e,n,"encryptionStrength",3),g=Ma(e,n,jo),b=Ma(e,n,"extendedTimestamp",!0),x=Ma(e,n,"ntfsTimestamp"),R=Ma(e,n,"keepOrder",!0),F=Ma(e,n,ye),z=Ma(e,n,Ee),A=Ma(e,n,"bufferedWrite"),D=La(e,n,"createTempStream"),I=Ma(e,n,"dataDescriptorSignature",!0),k=Ne(Ma(e,n,he)),C=Ma(e,n,"useUnicodeFileNames",!0),T=Ma(e,n,Yo),_=h||T===ae?ae:yn(T);if(!h&&T!==ae&&0!==T&&8!==T&&!_)throw new d("Compression method not supported");let v=Pa(e,n,"level");if(Oe(v,9,oa),e.options[Re]){if(y!==ae||S!==ae)throw new d(Ms);v===ae&&T===ae&&(v=0)}h&&(v=ae);let N=Ma(e,n,Se),U=Ma(e,n,be);A&&U===ae&&(U=!1),(U===ae||g&&!h)&&(U=!0),v!==ae&&6!=v&&(N=!1);const M=Ma(e,n,Vo);if(!(g||y===ae&&S===ae||o.isInteger(E)&&E>=1&&E<=3))throw new d(Us);const L=ha(n[Jo]),B=ha(n.localExtraField),W=ha(n.centralExtraField);return{comment:s,ht:{rawFilename:i,rawComment:c,version:l,lastModDate:u,rawLastModDate:f,lastAccessDate:w,creationDate:p,internalFileAttributes:m,passThrough:h,password:y,rawPassword:S,encryptionStrength:E,zipCrypto:g,extendedTimestamp:b,ntfsTimestamp:x,keepOrder:R,useWebWorkers:F,transferStreams:z,bufferedWrite:A,createTempStream:D,dataDescriptorSignature:I,signal:k,useUnicodeFileNames:C,compressionMethod:T,format:_?_.format:ae,codecURI:_?_.codecURI:ae,yt:_?_.versionNeeded:ae,level:v,useCompressionStream:N,dataDescriptor:U,zip64:M,rawExtraField:L,St:B,wt:W}}}(e,r,l),{comment:p}=f,m=l[Jo];let h;e.Ze.set(r,ae);try{const{ht:t}=f;0==t.level||t.compressionMethod!==ae||t.passThrough||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;if(n&&!n.me)return!0;if(vn(t)||_n(t,An))return!0;if(n)try{return await void 0,!0}catch{return!1}return!1}(qe())||(t.level=0);const o=await async function(e,t,{ht:r},o){if(r.passThrough&&!t&&!Ma(e,o,qo))throw new d(Ys);let i;return t&&(t=new po(t),await yo(t),({size:i}=t)),n.assign({reader:t},function(e,t,n,r,o){const{passThrough:i,zipCrypto:s,password:a,rawPassword:c,encryptionStrength:l}=r;let{dataDescriptor:u,zip64:f,level:w,compressionMethod:p}=r,m=0,h=0;if(i&&t){if(h=o[zo],h===ae)throw new d(qs);if(p===ae)throw new d(Ks)}const y=!0===f,S=Ma(e,o,Zo);if(t&&i&&!S&&Ya(a,c))throw new d(Os);const E=t&&(Boolean(a&&Ya(a)||c&&Ya(c))||i&&S);t||(w=0,p=0);const g=E?s?12:16+4*l:0;t&&(i?(o.uncompressedSize=h,m=n===ae?Va(h)+g:n):n===ae?(u=!0,(f||f===ae)&&(f=!0,h=m=4294967296)):(o.uncompressedSize=h=n,m=(Za(p,w)?Va(h):h)+g));const b=!(E||t&&(0!==n||i)||Za(p,w));b&&!s&&Ma(e,o,be)===ae&&(u=!1);const x=y||h>=M,R=y||m>=M;if(x||R){if(!1===f)throw new d(js);f=!0}return f=f||!1,{Et:m,ht:{dataDescriptor:u,gt:b,zip64:f,ot:x,nt:R,uncompressedSize:h,level:w,compressionMethod:p,encrypted:E}}}(e,Boolean(t),i,r,o))}(e,c,f,l);({reader:c}=o);const p=ba(e.writer),m=ga(e.writer),y=function(e){const{rawFilename:t,lastModDate:n,rawLastModDate:r,lastAccessDate:o,creationDate:i,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:f,dataDescriptor:w,directory:p,rawExtraField:m,St:h,encryptionStrength:y,extendedTimestamp:S,ntfsTimestamp:E,passThrough:g,encrypted:b,ot:x,nt:R,uncompressedSize:F,crc32:z}=e;let{version:A,compressionMethod:D}=e;const I=!p&&Za(D,c);let k;const C=g||!I,T=l&&(e.bufferedWrite||!w||!x&&!R||C),_=T||l&&w&&(x||R);if(l&&(x||R)){const e=20,t=Ea(e);if(t.bt(1),t.bt(e-4),k=t.xt,T&&(t.Rt(F),C)){const e=b?u?12:16+4*y:0;t.Rt(g?0:F+e)}}else k=de;let v,N,U,M,L;if(b&&!u){const e=Ea(Ya(sa)+2);e.bt(39169),e.Ft(sa),v=e.xt,v[8]=y}else v=de;if(S){const e=va(n),t=Na(e);if(t){const t=9+(o?4:0)+(i?4:0),n=Ea(t);M=1+(o?2:0)+(i?4:0),n.bt(J),n.bt(t-4),n.zt(M),n.At(e),o&&n.At(Ua(va(o))),i&&n.At(Ua(va(i))),U=n.xt}else U=de;if(E===ae?!t||Boolean(o||i):E)try{const e=_a(n),t=Ea(36);t.bt(10),t.bt(32),t.Dt(4),t.bt(1),t.bt(24),t.Rt(e),t.Rt(o?_a(o):e),t.Rt(i?_a(i):e),N=t.xt}catch{N=de}else N=de}else N=U=de;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=aa||t===ae&&n===ae)if(r!=ca||t===ae&&n===ae)L=de;else{const e=Ea(8);e.bt(30805),e.bt(4),e.bt((t===ae?0:t)&O),e.bt((n===ae?0:n)&O),L=e.xt}else{const e=Sa(t===ae?0:t),r=Sa(n===ae?0:n),o=3+e.length+r.length,i=Ea(4+o);i.bt(30837),i.bt(o),i.zt(1),i.zt(e.length),i.Ft(e),i.zt(r.length),i.Ft(r),L=i.xt}}catch{L=de}D===ae&&(D=I?8:0),A===ae&&(A=0!=D||p||b?20:10);const{yt:W}=e;I&&W!==ae&&(A=A>W?A:W),l&&(A=A>45?A:45),b&&!u&&(A=A>51?A:51,g&&z!==ae&&(v[4]=1),Ga(tt(v),9,D),D=99);const P=_?Ya(k):0,V=P+Ya(v,U,N,L,m,h);if(V+(e[Re]?67:0)>O)throw new d(Ps);const Z=new a(2e3*s.ceil(s.floor(n.getTime()/1e3)/2)),{$e:H,et:G,rawLastModDate:j}=Xa({version:A,bitFlag:Ja(c,f,w,b,D),compressionMethod:D,uncompressedSize:F,lastModDate:Z<se?se:Z>ie?ie:Z,rawLastModDate:r,rawFilename:t,nt:R,ot:x,extraFieldLength:V}),q=Ea(oe+Ya(t)+V),K=q.xt,Y=tt(K);return q.At(B),q.Ft(H),q.Ft(t),_&&q.Ft(k),q.Ft(v),q.Ft(U),q.Ft(N),q.Ft(L),q.Ft(m),q.Ft(h),w&&(R||ja(Y,18,0),x||ja(Y,22,0)),{It:K,kt:Y,$e:H,et:G,lastModDate:n,rawLastModDate:j,encrypted:b,compressed:I,version:A,compressionMethod:D,Ct:M,st:de,Tt:P,lt:U,ut:N,ft:L,ct:v,extraFieldLength:V}}(l=n.assign({},l,u.ht,f.ht,o.ht,{signature:l[Xo],crc32:l.crc32===ae?l[Xo]:l.crc32,offset:e.offset-p,diskNumberStart:m,[Re]:e.options[Re]})),E=function({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r,o=de,i=0,s=e?20:12;return n&&(s+=4),t&&(o=new w(s),r=tt(o),n&&(i=4,ja(r,0,P))),{_t:o,vt:r,Nt:i}}(l),g=Ya(y.It,E._t);h=await async function(e,t,r,o,s){const{Ze:a,writer:c}=e,{keepOrder:l,dataDescriptor:u,gt:f,signal:w}=s,{Ut:p}=o,m=e.options[Re],h=e.Ye;let y,E,g,b,x,R,z,A={},D=0;a.set(t,A),e.Ye=A;try{let E;l&&(E=h&&h.Mt,A.Mt=new S(e=>g=e)),s.bufferedWrite||!l||e.Je||e.Ke||!u&&!f?(y=!0,e.Ke++,z=s.createTempStream?await s.createTempStream():new F(ae,ae,{highWaterMark:ce}),z.size=0,await yo(c)):(z=c,await I()),await yo(z);const C=ba(c);e.Ve&&!y&&await ka(e,c),m&&!y&&ya(o,e.offset-C);const{It:T}=p;y||(await E,await k());const _=ga(c),v=Ra(e,c);if(A.diskNumberStart=_,y||(x=!0,R=c.size,await Ca(z,T)),A=await async function(e,t,{diskNumberStart:r,Mt:o},s,a,c){const{Ut:l,Ot:u,Lt:f}=s,{$e:w,et:p,lastModDate:m,rawLastModDate:h,encrypted:y,compressed:S,version:E,compressionMethod:g,st:b,Tt:x,lt:R,Ct:F,ut:z,ft:A,ct:D}=l,{_t:I}=u,{rawFilename:k,lastAccessDate:C,creationDate:T,password:_,rawPassword:v,level:N,zip64:U,ot:O,nt:B,zipCrypto:W,dataDescriptor:P,directory:V,executable:Z,versionMadeBy:H,rawComment:G,rawExtraField:j,wt:q,useWebWorkers:K,transferStreams:Y,onstart:X,onprogress:J,onend:Q,signal:$,encryptionStrength:ee,extendedTimestamp:te,msDosCompatible:ne,internalFileAttributes:re,externalFileAttributes:oe,uid:ie,gid:se,unixMode:ce,symlink:le,setuid:ue,setgid:fe,sticky:de,unixExternalUpper:we,msdosAttributesRaw:pe,msdosAttributes:me,useCompressionStream:he,passThrough:ye,format:Se,codecURI:Ee}=c,ge={Mt:o,versionMadeBy:H,zip64:U,directory:Boolean(V),executable:Boolean(Z),filenameUTF8:!0,rawFilename:k,commentUTF8:!0,rawComment:G,st:b,Tt:x,lt:R,ut:z,ft:A,ct:D,rawExtraField:j,wt:q,extendedTimestamp:te,msDosCompatible:ne,internalFileAttributes:re,externalFileAttributes:oe,diskNumberStart:r,uid:ie,gid:se,unixMode:ce,symlink:Boolean(le),setuid:ue,setgid:fe,sticky:de,unixExternalUpper:we,msdosAttributesRaw:pe,msdosAttributes:me};let{crc32:be,uncompressedSize:xe}=c,Re=0;ye||(xe=0);const{writable:Fe}=t;if(e){const n=cn(go(e)),r=e.size,o={options:{codecType:Wn,inputSize:r,level:N,rawPassword:v,password:_,encryptionStrength:ee,zipCrypto:y&&W,passwordVerification:y&&W&&h>>8&L,computeCrc32:!ye,compressed:S&&!ye,encrypted:y&&!ye,useWebWorkers:K,useCompressionStream:he,transferStreams:Y,format:Se,codecURI:Ee,compressionMethod:g},config:a,ae:{signal:$,size:r,onstart:X,onprogress:J,onend:Q}};try{const e=await Sr({readable:n,writable:Fe},o);if(Re=e.outputSize,t.size+=Re,ye||(xe=e.inputSize,y&&!W||(be=e.crc32)),!B&&Re>=M||!O&&xe>=M)throw new d(js)}catch(e){throw e.outputSize!==ae&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,Ut:r,Ot:o},{zip64:s,zipCrypto:a,passThrough:c,dataDescriptor:l}){const{et:u,encrypted:f}=r,{vt:d,Nt:w}=o;f&&!a&&!c||e===ae||(ja(u,10,e),l&&ja(d,w,e)),s?l&&(qa(d,w+4,i(t)),qa(d,w+12,i(n))):(ja(u,14,t),ja(u,18,n),l&&(ja(d,w+4,t),ja(d,w+8,n)))}({crc32:be,compressedSize:Re,uncompressedSize:xe,Ut:l,Ot:u},c),P&&await Ca(t,I),n.assign(ge,{uncompressedSize:xe,compressedSize:Re,lastModDate:m,rawLastModDate:h,creationDate:T,lastAccessDate:C,encrypted:Boolean(y),zipCrypto:Boolean(W),size:f+Re,compressionMethod:g,version:E,$e:w,et:p,signature:be,crc32:!y||W||ye?be:ae,Ct:F,ot:O,nt:B}),ge}(r,z,A,o,qe(),s),y||(x=!1),a.set(t,A),A.filename=t,y){if(await S.all([z.writable.getWriter().close(),E]),await I(),e.Ve&&await ka(e,c),b=!0,R=c.size,await k(),A.diskNumberStart=ga(c),A.offset=Ra(e,c),m){const t=o.Lt;ya(o,e.offset-ba(c)),A.size+=o.Lt-t}!function({rawFilename:e,encrypted:t,zip64:n,Tt:r,crc32:o,compressedSize:s,uncompressedSize:a,ot:c,nt:l},u,{dataDescriptor:f,passThrough:d}){if(f||((!t||d&&o!==ae)&&ja(u,14,o),l||ja(u,18,s),c||ja(u,22,a)),n&&r){const t=oe+Ya(e)+4;qa(u,t,i(a)),qa(u,t+8,i(s))}}(A,p.kt,s),await Ca(c,p.It),await Ta(z.readable,c,w,e=>D+=e),c.size+=z.size,b=!1}else A.diskNumberStart=_,A.offset=v;return e.offset+=A.size,A}catch(n){if(b||x){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-R,y&&(e.offset+=D)}throw a.delete(t),n}finally{if(y&&e.Ke--,g&&g(),E&&E(),y&&z&&z.dispose)try{await z.dispose()}catch{}}async function I(){e.Je=!0;const{Qe:t}=e;e.Qe=new S(t=>E=()=>{e.Je=!1,t()}),await t}async function k(){xa(c,Ya(p.It))&&await c.closeDisk()}}(e,r,c,{Ut:y,Ot:E,Lt:g},l)}catch(t){throw e.Ze.delete(r),t}return n.assign(h,{name:r,comment:p,extraField:m,[Oo]:h.internalFileAttributes,[Lo]:h.externalFileAttributes}),new ri(h)}(e,r,c,l)}catch(t){throw e.He.delete(r),t}finally{const e=ua.shift();e?e():la--}}(l,e,r,c);u.add(f);const p=()=>u.delete(f);return S.prototype.then.call(f,p,p),wa(l,f)}remove(e){const{He:t,Ze:n}=this;if(typeof e==fe&&(e=n.get(e)),e&&e.filename!==ae){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=de,n={}){const r=this,{je:o,writer:s}=this,{writable:a}=s;if(!(e instanceof w))throw new d(ks);if(Ya(e)>O)throw new d(Is);for(;o.size;)await S.allSettled(t.from(o));await S.allSettled(r.qe.map(e=>e.Bt));const c=r.qe.filter(e=>e.error&&!e.Wt);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.Wt=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const o=function(e){let t=0;for(const[,n]of e){const{rawFilename:e,ct:r,rawComment:o,ut:i,ft:s,rawExtraField:a,wt:c,extendedTimestamp:l,Ct:u,lastModDate:f,ot:w,nt:p,uncompressedSize:m,compressedSize:h}=n,y=n.offset>=M,S=n.diskNumberStart>=O;let E,g;if(y||S||w||p){const e=4+(w?8:0)+(p?8:0)+(y?8:0)+(S?4:0),t=Ea(e);t.bt(1),t.bt(e-4),w&&t.Rt(m),p&&t.Rt(h),y&&t.Rt(n.offset),S&&t.At(n.diskNumberStart),E=t.xt}else E=de;n.st=E,n.Pt=y,n.it=S;const b=va(f);if(l&&Na(b)){const e=Ea(9);e.bt(J),e.bt(5),e.zt(u),e.At(b),g=e.xt}else g=de;n.lt=g;const x=Ya(E,r,i,s,g,a,c);if(x>O)throw new d(Ps);t+=q+Ya(e,o)+x}return t}(e.Ze),{Vt:s,Zt:a,Ht:c}=await async function(e,n,r){const{Ze:o,writer:i}=e,s=new w(n);await yo(i);let a=0,c=0,l=ga(i),u=ba(i),f=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:d,st:w,ct:p,lt:m,ut:h,ft:y,rawExtraField:S,wt:E,rawComment:g,versionMadeBy:b,$e:x,et:R,ot:F,nt:z,it:A,Pt:D,internalFileAttributes:I,externalFileAttributes:k,diskNumberStart:C,uncompressedSize:T,compressedSize:_}=n,v=Ya(w,p,m,h,y,S,E),N=q+Ya(d,g)+v;xa(i,a+N-c)&&(await Ca(i,s.slice(c,a)),c=a,f=0,await i.closeDisk()),0==e&&(l=ga(i),u=ba(i)),F||ja(R,18,T),z||ja(R,14,_),(D||A)&&n.version<45&&Ga(R,0,45);const U=Ea(N);if(U.At(Z),U.bt(b),U.Ft(x.subarray(0,24)),U.bt(v),U.bt(Ya(g)),U.bt(A?O:C),U.bt(I),U.At(k),U.At(D?M:t),U.Ft(d),U.Ft(w),U.Ft(p),U.Ft(m),U.Ft(h),U.Ft(y),U.Ft(S),U.Ft(E),U.Ft(g),Ka(s,U.xt,a),a+=N,f++,r.onprogress)try{await r.onprogress(e+1,o.size,new ri(n))}catch{}}return await Ca(i,c?s.slice(c):s),{Vt:{diskNumber:l,diskOffset:u},Zt:{diskNumber:ga(i),Gt:f},Ht:s}}(e,o,r),l=await async function(e,t,n){const r=La(e,n,"signCentralDirectory");if(r){const n=await r(t),o=Ya(n);if(o>O)throw new d(ia);const i=Ea(6+o);i.At(V),i.bt(o),i.Ft(n);const{writer:s}=e;return xa(s,Ya(i.xt))&&await s.closeDisk(),await Ca(s,i.xt),6+o}return 0}(e,c,r);await async function(e,t,n,r){const{writer:o}=e,{Vt:s,Zt:a,jt:c}=r;let{qt:l}=r,u=e.Ze.size,f=s.diskNumber,w=Ra(e,s);const p=Ya(t);if(p>O)throw new d(Is);let m=Ma(e,n,Vo),h=ga(o);if(xa(o,(m?98:K)+p)&&h++,w>=M||l>=M||u>=O||h>=O){if(!1===m)throw new d(js);m=!0}const y=Ea(m?98:K);xa(o,Ya(y.xt)+p)&&await o.closeDisk(),h=ga(o);let S=h==a.diskNumber?a.Gt:0;m&&(y.At(G),y.Rt(44),y.bt(45),y.bt(45),y.At(h),y.At(f),y.Rt(S),y.Rt(u),y.Rt(l),y.Rt(w),y.At(j),y.At(h),y.Rt(i(Ra(e,o))+i(l)+i(c)),y.At(h+1),Ma(e,n,"supportZip64SplitFile",!0)&&(h=O,f=O),S=O,u=O,w=M,l=M),y.At(H),y.bt(h),y.bt(f),y.bt(S),y.bt(u),y.At(l),y.At(w),y.bt(p),await Ca(o,y.xt),p&&await Ca(o,t)}(e,n,r,{Vt:s,Zt:a,qt:o,jt:l})}(r,e,n),!ho(s)&&Ma(r,n,ge)||await a.getWriter().close(),s.getData?s.getData():a}}class da extends S{then(e,t){const{Kt:n}=this;return n&&(n.Wt=!0),super.then(e,t)}}function wa(e,t){const n=new da((e,n)=>S.prototype.then.call(t,e,n)),r={};return n.Kt=r,r.Bt=S.prototype.then.call(n,ae,e=>r.error=e),e.qe.push(r),n}async function pa(e,t){try{await e.writer.writable.abort(t)}catch{}}function ma(e,t,n){e.je.add(t),t.catch(e=>{try{n(e)}catch{}})}function ha(e){if(!e)return de;if(!(e instanceof c))throw new d(Ls);let t=0,n=0;e.forEach((e,n)=>{if(Me(n,O,Bs),!(e instanceof w))throw new d(Ws);if(Ya(e)>O)throw new d(Ps);t+=4+Ya(e)});const r=new w(t),o=tt(r);return e.forEach((e,t)=>{Ga(o,n,t),Ga(o,n+2,Ya(e)),Ka(r,e,n+4),n+=4+Ya(e)}),r}function ya(e,t){const{Ut:n}=e;let{It:r,extraFieldLength:o}=n,i=64-(t+Ya(r))%64;i<4&&(i+=64);const s=new w(i),a=tt(s);Ga(a,0,6534),Ga(a,2,i-4);const c=r;n.It=r=new w(Ya(c)+i),Ka(r,c),Ka(r,s,Ya(c));const l=tt(r);Ga(l,28,o+i),n.kt=l,e.Lt+=i}function Sa(e){const t=new w(4);tt(t).setUint32(0,e,!0);let n=4;for(;n>1&&0===t[n-1];)n--;return t.subarray(0,n)}function Ea(e){const t=new w(e),n=tt(t);let r=0;return{xt:t,zt:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},bt:e=>{Ga(n,r,e),r+=2},At:e=>{ja(n,r,e),r+=4},Rt:e=>{qa(n,r,i(e)),r+=8},Ft:e=>{Ka(t,e,r),r+=Ya(e)},Dt:e=>r+=e}}function ga(e){const{diskNumber:t=0}=e;return t}function ba(e){const{diskOffset:t=0}=e;return t}function xa(e,t){const{availableSize:n=ce}=e;return t>n}function Ra(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.Ge:0)}function Fa(e){const t=tt(e);let n=0;for(;n+4<=Ya(e);){const r=4+Ha(t,n+2);if(1==Ha(t,n))return Fa($e(e.subarray(0,n),e.subarray(s.min(n+r,Ya(e)))));n+=r}return e}async function za(e,t,n,r){if(r>0){const{writer:o}=e;let i=0;try{await Ta(go(t,{offset:n,size:r}),o,ae,e=>i+=e)}catch(t){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}throw t}finally{o.size+=i,e.offset+=i}}}async function Aa(e,t){const n=await Eo(e,t,oe);if(Ya(n)<oe)return oe;const r=tt(n);return oe+Ha(r,26)+Ha(r,28)}function Da(e,{offset:t,diskNumberStart:n}){return t+(e.Ne?e.Ne(n):0)}function Ia(){const e=new w(4);return ja(tt(e),0,W),e}async function ka(e,t){delete e.Ve,await Ca(t,Ia()),e.offset+=4}async function Ca(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=Ya(t),await r.write(t)}finally{r.releaseLock()}}async function Ta(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new A({async write(e){await o.ready,await o.write(e),r(Ya(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function _a(e){if(e){const t=(i(e.getTime())+i(116444736e5))*i(1e4);return t<Hs?Hs:t>Gs?Gs:t}}function va(e){return s.floor(e.getTime()/1e3)}function Na(e){return e>=Vs&&e<=Zs}function Ua(e){return s.min(Zs,s.max(Vs,e))}function Ma(e,t,n,r){const o=t[n]===ae?e.options[n]:t[n];return o===ae?r:o}function Oa(e,t,n,r){const i=Ma(e,t,n,r);if(null===i)return r;if(i!==ae&&(typeof i.getTime!=ue||o.isNaN(i.getTime())))throw new d(_s);return i}function La(e,t,n){return ve(Ma(e,t,n))}function Ba(e,t,n,r,o){const i=Wa(t,n,r),s=i===ae?Wa(e.options,n,r):i;return s===ae?o:s}function Wa(e,t,n){return e[t]===ae?e[n]:e[t]}function Pa(e,t,n,r){return Le(Ma(e,t,n,r))}function Va(e){return e+5*(s.floor(e/16383)+1)}function Za(e,t){return e===ae?t===ae||t>0:0!==e}function Ha(e,t){return e.getUint16(t,!0)}function Ga(e,t,n){e.setUint16(t,n,!0)}function ja(e,t,n){e.setUint32(t,n,!0)}function qa(e,t,n){e.setBigUint64(t,n,!0)}function Ka(e,t,n){e.set(t,n)}function Ya(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function Xa({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:s,rawFilename:a,nt:c,ot:l,extraFieldLength:u}){const f=Ea(26),d=f.xt,w=tt(d);if(f.bt(e),f.bt(t),f.bt(n),s===ae){const e=new m(1),t=tt(e);Ga(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),Ga(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),s=e[0]}return f.At(s),f.Dt(4),c||o!==ae?f.At(c?M:o):f.Dt(4),l||r!==ae?f.At(l?M:r):f.Dt(4),f.bt(Ya(a)),f.bt(u),{$e:d,et:w,rawLastModDate:s}}function Ja(e,t,n,r,o){let i=0;return t&&(i|=Q),n&&(i|=8),8!=o&&9!=o||(e>=0&&e<=3&&(i|=6),e>3&&e<=5&&(i|=4),9==e&&(i|=2)),r&&(i|=1),i}function Qa(e,t){if(!e)return!1;const{Yt:n}=e;return n?n.includes(t):_n(e,t)}const $a=1048576,ec=".zip.js-temp",tc=1048576,nc=1048576,rc=".zip.js-temp",oc="createSyncAccessHandle is only available in dedicated workers";try{!function(e){const t=Xe(Qe(e));n.assign(Pe,t),n.assign(je,t)}({baseURI:void 0===b&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===b?location.href:U&&"SCRIPT"===U.tagName.toUpperCase()&&U.src||new f("zip-core.min.js",b.baseURI).href})}catch{}e.BlobReader=Gr,e.BlobWriter=jr,e.Data64URIReader=class extends Pr{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{Xt:e,Jt:r,size:s.floor(.75*(t-r))})}readUint8Array(e,t){const{Jt:n,Xt:r}=this,o=new w(t),i=4*s.floor(e/3),a=atob(r.substring(i+n,4*s.ceil((e+t)/3)+n)),c=e-3*s.floor(i/4);let l=0;for(let e=c;e<c+t&&e<a.length;e++)o[e-c]=a.charCodeAt(e),l++;return l<o.length?o.subarray(0,l):o}},e.Data64URIWriter=class extends Vr{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",Qt:""})}writeUint8Array(e){const t=this;let n,o=t.Qt;const i=t.Qt.length;for(t.Qt="",n=0;n<3*s.floor((i+e.length)/3)-i;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.Qt+=r.fromCharCode(e[n]);o.length>2?t.data+=R(o):t.Qt=o+t.Qt}getData(){return this.data+R(this.Qt)}},e.ERR_AMBIGUOUS_ARCHIVE=hi,e.ERR_BAD_FORMAT=oi,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=ai,e.ERR_DUPLICATED_NAME=Ds,e.ERR_ENCRYPTED=ui,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=yi,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=mi,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=si,e.ERR_EOCDR_NOT_FOUND=ii,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=li,e.ERR_HTTP_RANGE=kr,e.ERR_HTTP_RESOURCE_CHANGED=Cr,e.ERR_INVALID_AUTHENTICATION_CODE=bt,e.ERR_INVALID_CODEC_DEFINITION=fn,e.ERR_INVALID_CODEC_MODULE=wn,e.ERR_INVALID_COMMENT=Is,e.ERR_INVALID_COMMENT_TYPE=ks,e.ERR_INVALID_COMPRESSED_DATA=xn,e.ERR_INVALID_CRC32=Rn,e.ERR_INVALID_DATE=_s,e.ERR_INVALID_ENCRYPTION_STRENGTH=Us,e.ERR_INVALID_ENTRY_COMMENT=Cs,e.ERR_INVALID_ENTRY_COMMENT_TYPE=Ts,e.ERR_INVALID_ENTRY_NAME=vs,e.ERR_INVALID_EXTRAFIELD=Ls,e.ERR_INVALID_EXTRAFIELD_DATA=Ps,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=Ws,e.ERR_INVALID_EXTRAFIELD_TYPE=Bs,e.ERR_INVALID_FILENAME_VALIDATION=gi,e.ERR_INVALID_FUNCTION_OPTION=Ce,e.ERR_INVALID_GID=Qs,e.ERR_INVALID_LEVEL=oa,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=bi,e.ERR_INVALID_MAX_WORKERS=Be,e.ERR_INVALID_MSDOS_ATTRIBUTES=na,e.ERR_INVALID_MSDOS_DATA=ra,e.ERR_INVALID_PASSWORD=Et,e.ERR_INVALID_PASSWORD_TYPE=_e,e.ERR_INVALID_SIGNAL=Te,e.ERR_INVALID_SIGNATURE=gt,e.ERR_INVALID_SIGNATURE_DATA=ia,e.ERR_INVALID_STRICTNESS=Ei,e.ERR_INVALID_UID=Js,e.ERR_INVALID_UNCOMPRESSED_SIZE=bn,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=ea,e.ERR_INVALID_UNIX_ID_SIZE=ta,e.ERR_INVALID_UNIX_MODE=$s,e.ERR_INVALID_VERSION=Ns,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Tr,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=ci,e.ERR_OVERLAPPING_ENTRY=pi,e.ERR_RESERVED_COMPRESSION_METHOD=dn,e.ERR_SPLIT_ZIP_FILE=wi,e.ERR_UNDEFINED_COMPRESSION_METHOD=Ks,e.ERR_UNDEFINED_READER=Ys,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=qs,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=Si,e.ERR_UNSUPPORTED_COMPRESSION=di,e.ERR_UNSUPPORTED_CONTEXT=oc,e.ERR_UNSUPPORTED_CRYPTO_API=Rt,e.ERR_UNSUPPORTED_ENCRYPTION=fi,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=Os,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=Ms,e.ERR_UNSUPPORTED_FORMAT=js,e.ERR_UNSUPPORTED_UINT64=xi,e.ERR_WORKER_STARTUP_TIMEOUT=Hn,e.ERR_WRITER_NOT_INITIALIZED=_r,e.ERR_ZIP_NOT_EMPTY=Xs,e.HttpRangeReader=class extends uo{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=uo,e.Reader=Pr,e.SplitDataReader=fo,e.SplitDataWriter=wo,e.TextReader=class extends Gr{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends jr{constructor(e){super(),n.assign(this,{encoding:e,$t:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,$t:t}=this,n=await super.getData();return n.text&&t?n.text():function(e,t){return Dr(e,t,!1)}(new w(await n.arrayBuffer()),e)}},e.Uint8ArrayReader=class extends Pr{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{xt:e,size:e.length})}readUint8Array(e,t){return this.xt.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Vr{constructor(e){super(),this.en=e||262144}init(e=0){n.assign(this,{offset:0,xt:new w(e>0?e:this.en)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.xt.length){let e=t.xt.length?2*t.xt.length:t.en;for(;e<n;)e*=2;const r=t.xt;t.xt=new w(e),t.xt.set(r)}t.xt.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.xt.length?this.xt:this.xt.slice(0,this.offset)}},e.VERSION="2.8.60",e.WARNING_APPENDED_DATA=ki,e.WARNING_COMPRESSED_PATCHED_DATA=zi,e.WARNING_DUPLICATE_FILENAME=_i,e.WARNING_MALFORMED_EXTRA_FIELD=Ai,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=Ni,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=Ui,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=Mi,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=vi,e.WARNING_PREPENDED_DATA=Ci,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=Ti,e.WARNING_UNKNOWN_VERSION=Fi,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=Di,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=Ri,e.WARNING_WRAPPED_ENTRIES_COUNT=Ii,e.Writer=Vr,e.ZipReader=Zi,e.ZipReaderStream=Hi,e.ZipWriter=fa,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new F;this.readable=t,this.zipWriter=new fa(n,e),this.je=new l}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:o}=new F({start(e){n=e},flush:()=>{!async function(){try{await t.close()}catch(e){await pa(t,e)}}()}});return ma(this,this.zipWriter.add(e,r),e=>n.error(e)),{readable:this.readable,writable:o}}writable(e){let t;const{readable:n,writable:r}=new F({start(e){t=e}});return ma(this,this.zipWriter.add(e,n),e=>t.error(e)),r}async close(e,n={}){const{zipWriter:r}=this,o=(await S.allSettled(t.from(this.je))).filter(e=>"rejected"==e.status).map(e=>e.reason);if(o.length){const[e]=o;try{e.entryErrors=o}catch{}throw await pa(r,e),e}try{return await r.close(e,n)}catch(e){throw await pa(r,e),e}}},e.configure=function(e){n.assign(je,Xe(Qe(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=tc}=e;return function(){const e=[];let n,r,o,i=0,s=!1;const a=new A({async write(o){s?await n.write(o):(e.push(o),i+=o.length,i>t&&await async function(){const t=new F;r=ln(t.readable),n=t.writable.getWriter(),s=!0;for(const t of e)await n.write(t);e.length=0}())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:a,readable:new z({async pull(t){if(s){if(!o){const e=await r;o=e.stream().getReader()}const{value:e,done:n}=await o.read();n?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){o&&await o.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(n){try{await n.abort()}catch{}n=null}r&&(r.catch(()=>{}),r=null),e.length=0}}}},e.createOPFSTempStream=function(e={}){const{thresholdBytes:n=$a,directoryName:r=ec,getDirectory:o=()=>k.storage.getDirectory()}=e;let i;function s(){return i||(i=S.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return function(){const e=[];let r,o,i,a,c=0,l=!1;const u=new A({async write(a){l?await i.write(a):(e.push(a),c+=a.length,c>n&&await async function(){const n=await s();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join(""),o=await n.getFileHandle(r,{create:!0}),i=(await o.createWritable()).getWriter(),l=!0;for(const t of e)await i.write(t);e.length=0}())},async close(){i&&(await i.close(),i=null)}});let f=0;return{writable:u,readable:new z({async pull(t){if(l){if(!a){const e=await o.getFile();a=e.stream().getReader()}const{value:e,done:n}=await a.read();n?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){a&&await a.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await s();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=nc,directoryName:r=rc,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d(oc);const i=o||(()=>k.storage.getDirectory());let a;function c(){return a||(a=S.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),a}return function(){const e=[];let r,o,i=0,a=!1,l=0,u=0;const f=new A({async write(s){a?(o.write(s,{at:l}),l+=s.length):(e.push(s),i+=s.length,i>n&&await async function(){const n=await c();r=x.randomUUID?x.randomUUID():t.from(x.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join("");const i=await n.getFileHandle(r,{create:!0});o=await i.createSyncAccessHandle(),a=!0;for(const t of e)o.write(t,{at:l}),l+=t.length;e.length=0}())},close(){o&&o.flush()}});let d=0;return{writable:f,readable:new z({pull(t){if(a){const e=l-u;if(e<=0)return void t.close();const n=new w(s.min(524288,e)),r=o.read(n,{at:u});r?(u+=r,t.enqueue(n.subarray(0,r))):t.close()}else d<e.length?t.enqueue(e[d++]):t.close()}},{highWaterMark:0}),dispose:async function(){if(o){try{o.close()}catch{}o=null}if(r){try{const e=await c();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=function(){return"application/octet-stream"},e.getRegisteredCodecs=Sn,e.getSupportedCompressionMethods=function(){const{CompressionStream:e,DecompressionStream:t,CompressionStreamFallback:n,DecompressionStreamFallback:r}=qe(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:Qa(n,Fn)||Qa(e,Fn)||Qa(e,An),decompression:Qa(r,Fn)||Qa(t,Fn)||Qa(t,An),registered:!1},{compressionMethod:9,compression:!1,decompression:Qa(r,zn)||Qa(t,zn),registered:!1}];for(const e of Sn()){const t=En(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==ue:ae,decompression:t?typeof t.DecompressionStream==ue:ae,registered:!0})}return o},e.isZipFile=Gi,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:i,DecompressionStream:s,versionNeeded:a}=e;if(!o.isInteger(t)||t<0||t>O||typeof n!=fe||!n.length)throw new d(fn);if(pn.includes(t))throw new d(dn);const c=typeof i==ue||typeof s==ue;if(!(c||typeof r==fe&&r.length))throw new d(fn);mn.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:a}),c&&gn(n,{CompressionStream:i,DecompressionStream:s})},e.resetConfiguration=function(){for(const e of Ge)delete je[e];n.assign(je,Pe)},e.terminateWorkers=async function(){await S.allSettled(wr.map(e=>(Rr(e),e.terminate()))),Gn=ae,jn=!1},e.unregisterCodec=function(e){const t=mn.get(e);if(t){let n;mn.delete(e),mn.forEach(e=>n=n||e.format==t.format),n||hn.delete(t.format)}}});
|