@zip.js/zip.js 2.16.1 → 2.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/deno.json +1 -1
- package/dist/zip-core-external.js +211 -130
- package/dist/zip-core-external.min.js +1 -1
- package/dist/zip-core.js +180 -117
- package/dist/zip-core.min.js +1 -1
- package/dist/zip-fs-core-external.js +223 -132
- package/dist/zip-fs-core-external.min.js +1 -1
- package/dist/zip-fs-core.js +192 -119
- package/dist/zip-fs-core.min.js +1 -1
- package/dist/zip-fs-external.js +223 -132
- package/dist/zip-fs-external.min.js +1 -1
- package/dist/zip-fs-native.js +194 -121
- package/dist/zip-fs-native.min.js +1 -1
- package/dist/zip-fs.js +224 -132
- package/dist/zip-fs.min.js +1 -1
- package/dist/zip-legacy.js +181 -118
- package/dist/zip-legacy.min.js +1 -1
- package/dist/zip-native.js +182 -119
- 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 +212 -130
- package/dist/zip.min.js +1 -1
- package/index-native.cjs +194 -121
- package/index-native.min.js +1 -1
- package/index.cjs +224 -132
- package/index.d.cts +87 -24
- package/index.d.ts +87 -24
- package/index.min.js +1 -1
- package/lib/core/codec-pool.js +2 -0
- package/lib/core/codec-worker-web.js +16 -3
- package/lib/core/codec-worker.js +2 -1
- package/lib/core/streams/codec-stream.js +2 -0
- package/lib/core/streams/zip-entry-stream.js +123 -102
- package/lib/core/streams/zlib-js/zlib-streams.min.js +1 -1
- package/lib/core/streams/zlib-wasm/zlib-streams.js +31 -12
- package/lib/core/version.js +1 -1
- package/lib/core/web-worker-base.js +2 -2
- package/lib/core/web-worker-inline-native.js +1 -1
- package/lib/core/web-worker-inline-wasm.js +1 -1
- package/lib/core/zip-fs.js +16 -3
- package/lib/core/zip-reader.js +40 -11
- package/lib/core/zip-writer.js +1 -0
- package/lib/zip-core-reader.js +1 -0
- package/package.json +1 -1
package/dist/zip-legacy.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})}(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:o,BigInt:a,Math:i,Date:s,Map:c,Set:u,Response:l,URL:f,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:h,DataView:m,Blob:y,Promise:g,TextEncoder:S,TextDecoder:E,document:b,crypto:x,btoa:z,TransformStream:F,ReadableStream:A,WritableStream:C,CompressionStream:D,DecompressionStream:R,navigator:v,Worker:L,Symbol:N,setTimeout:k,clearTimeout:I,structuredClone:U}="undefined"!=typeof globalThis?globalThis:self;var T=void 0!==b?b.currentScript:null;const O=4294967295,V=65535,W=255,M=67324752,B=134695760,K=B,q=84233040,P=33639248,J=101010256,Z=101075792,H=117853008,G=46,Y=22,X=20,j=56,Q=39169,_=21589,$=6534,ee=30837,te=30805,ne=2048,re=61440,oe=16384,ae=2048,ie=1024,se="/",ce=30,ue=new s(2107,11,31,23,59,58),le=new s(1980,0,1),fe=void 0,de=1/0,we="undefined",pe="function",he="object",me="string",ye="boolean",ge=new w,Se=N.asyncDispose||N(),Ee="password",be="rawPassword",xe="passThrough",ze="signal",Fe="useWebWorkers",Ae="useCompressionStream",Ce="transferStreams",De="preventClose",Re="level",ve="useUnicodeFileNames",Le="dataDescriptor",Ne="offset",ke="usdz",Ie="maxAppendedDataSize",Ue="entry",Te="filename",Oe="comment",Ve="strict",We="balanced",Me="tolerant",Be="compressed",Ke="Invalid option (must be a function)",qe="Invalid signal (must be an AbortSignal instance)",Pe="Invalid password (password must be a string, rawPassword must be a Uint8Array)",Je="Invalid passThrough option (must be a boolean or 'compressed')",Ze="The operation was aborted";function He(e){if(e&&typeof e!=pe)throw new d(Ke);return e}function Ge(e){if(e&&(typeof e.addEventListener!=pe||typeof e.aborted!=ye))throw new d(qe);return e||fe}function Ye(e){if(e&&e.aborted)throw e.reason===fe?new DOMException(Ze,"AbortError"):e.reason}function Xe(e,t){if(e&&typeof e!=me||t&&!(t instanceof w))throw new d(Pe)}function je(e){if(e!==fe&&typeof e!=ye&&e!==Be)throw new d(Je);return e}function Qe(e,t,n){if(!o.isInteger(e)||e<0||e>t)throw new d(n)}function _e(e,t,n){e!==fe&&Qe(e,t,n)}function $e(e){return typeof e==me&&e.trim()?o(e):e}const et="Invalid maxWorkers (must be an integer greater than 0)",tt="Invalid baseURI (must be a string)",nt="Invalid URI (must be a string or a function returning a string)";let rt=2;try{typeof v!=we&&v.hardwareConcurrency&&(rt=v.hardwareConcurrency)}catch{}const ot={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:rt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof D!=we&&D,DecompressionStream:typeof R!=we&&R},at="maxWorkers",it="baseURI",st=["wasmURI","workerURI"],ct=["chunkSize",at,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],ut=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],lt=[it,...st,"useCompressionStream","useWebWorkers","transferStreams",...ct,...ut],ft={...ot};function dt(){return ft}function wt(e){return pt(e.chunkSize)}function pt(e){return e=$e(e),o.isInteger(e)&&e>=1?i.max(e,64):65536}function ht(e){const t={};for(const n of lt){const r=e[n];r!==fe&&(t[n]=mt(n,r))}return t}function mt(e,t){if(ct.includes(e)){if(t=$e(t),e==at&&(!o.isInteger(t)||t<1))throw new d(et)}else if(ut.includes(e))He(t);else if(e==it){if(t&&typeof t!=me)throw new d(tt)}else if(st.includes(e)&&t&&typeof t!=me&&typeof t!=pe)throw new d(nt);return t}function yt(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===fe&&r===fe)return e;const o=n.assign({},e);return o.CompressionStreamFallback===fe&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===fe&&(o.DecompressionStreamFallback=r),o}function gt(e){const t=ht(yt(e));n.assign(ot,t),n.assign(ft,t)}const St=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258],Et=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],bt=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],xt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],zt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],Ft=new w(288);Ft.fill(8,0,144),Ft.fill(9,144,256),Ft.fill(7,256,280),Ft.fill(8,280,288);const At=new w(30).fill(5);function Ct(e){const t=new p(16);for(const n of e)t[n]++;t[0]=0;const n=new p(17);for(let e=1;e<=15;e++)n[e+1]=n[e]+t[e];const r=new p(e.length);for(let t=0;t<e.length;t++)e[t]&&(r[n[e[t]]++]=t);return{o:t,symbols:r}}const Dt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Rt=(vt=()=>function(e){let t=0,n=0,r=0,o=new w(1024),a=0,i=0;for(;!i;){i=c(1);const e=c(2);if(0==e)u();else if(1==e)l(Ct(Ft),Ct(At));else{if(2!=e)throw new d("invalid deflate block type");l(...f())}}return o.subarray(0,a);function s(){if(t>=e.length)throw new d("unexpected end of deflate data");return e[t++]}function c(e){for(;r<e;)n|=s()<<r,r+=8;const t=n&(1<<e)-1;return n>>>=e,r-=e,t}function u(){n=0,r=0;const e=s()|s()<<8;t+=2,h(a+e);for(let t=0;t<e;t++)o[a++]=s()}function l(e,t){let n=p(e);for(;256!=n;){if(n<256)h(a+1),o[a++]=n;else{const e=n-257,r=St[e]+c(Et[e]),i=p(t),s=bt[i]+c(xt[i]);h(a+r);const u=a-s;for(let e=0;e<r;e++)o[a++]=o[u+e]}n=p(e)}}function f(){const e=c(5)+257,t=c(5)+1,n=c(4)+4,r=new w(19);for(let e=0;e<n;e++)r[zt[e]]=c(3);const o=Ct(r),a=new w(e+t);let i=0;for(;i<a.length;){const e=p(o);if(e<16)a[i++]=e;else if(16==e){const e=a[i-1];let t=c(2)+3;for(;t--;)a[i++]=e}else i+=17==e?c(3)+3:c(7)+11}return[Ct(a.subarray(0,e)),Ct(a.subarray(e))]}function p(e){const{o:t,symbols:n}=e;let r=0,o=0,a=0;for(let e=1;e<=15;e++){r|=c(1);const i=t[e];if(r-o<i)return n[a+(r-o)];a+=i,o=o+i<<1,r<<=1}throw new d("invalid huffman code")}function h(e){if(o.length<e){let t=2*o.length;for(;t<e;)t*=2;const n=new w(t);n.set(o.subarray(0,a)),o=n}}}(function(e){const t=(e=r(e).replace(/[^A-Za-z0-9+/=]/g,"")).length,n=[];for(let r=0;r<t;r+=4){const t=Dt.indexOf(e[r])<<18|Dt.indexOf(e[r+1])<<12|(63&Dt.indexOf(e[r+2]))<<6|63&Dt.indexOf(e[r+3]);n.push(t>>16&255),"="!==e[r+2]&&n.push(t>>8&255),"="!==e[r+3]&&n.push(255&t)}return new w(n)}("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")),e=>e({workerURI:e=>{const t="text/javascript";let n=vt();if("string"==typeof n&&(n=(new S).encode(n)),e){const e=new y([n],{type:t});return f.createObjectURL(e)}return"data:"+t+";base64,"+function(e){let t="";const n=e.length;let r=0;for(;r+2<n;r+=3){const n=e[r]<<16|e[r+1]<<8|e[r+2];t+=Dt[n>>18&63]+Dt[n>>12&63]+Dt[n>>6&63]+Dt[63&n]}const o=n-r;if(1===o){const n=e[r]<<16;t+=Dt[n>>18&63]+Dt[n>>12&63]+"=="}else if(2===o){const n=e[r]<<16|e[r+1]<<8;t+=Dt[n>>18&63]+Dt[n>>12&63]+Dt[n>>6&63]+"="}return t}(n)}}));var vt;function Lt(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function Nt(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function kt(e){return new m(e.buffer,e.byteOffset,e.byteLength)}function It(e){return Boolean(e)&&"object"==typeof e}const Ut=[[],[],[],[],[],[],[],[]];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;Ut[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){const n=Ut[t-1][e];Ut[t][e]=n>>>8^Ut[0][255&n]}const[Tt,Ot,Vt,Wt,Mt,Bt,Kt,qt]=Ut;class Pt{constructor(e){this.l=e||-1}append(e){let t=0|this.l;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const o=new m(e.buffer,e.byteOffset,n),a=n-8;for(;r<=a;r+=8){const e=t^o.getInt32(r,!0),n=o.getInt32(r+4,!0);t=qt[255&e]^Kt[e>>>8&255]^Bt[e>>>16&255]^Mt[e>>>24&255]^Wt[255&n]^Vt[n>>>8&255]^Ot[n>>>16&255]^Tt[n>>>24&255]}}for(;r<n;r++)t=t>>>8^Tt[255&(t^e[r])];this.l=t}get(){return~this.l}}class Jt extends F{constructor(){let e;const t=new Pt;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new m(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function Zt(e){if(typeof S==we){e=unescape(encodeURIComponent(e));const t=new w(e.length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new S).encode(e)}const Ht=64,Gt=20,Yt=new w([128]),Xt=new w(1),jt=new Int32Array([1732584193,4023233417,2562383102,271733878,3285377520]),Qt=new w(256),_t=new Int32Array(256),$t=new Int32Array(256),en=new Int32Array(256),tn=new Int32Array(256);let nn=!1;function rn(e){const t=function(){const e=new Int32Array(jt),t=new Int32Array(16),n=new w(Ht),r=new m(n.buffer),o=new w(8);let a=0,s=0;return{update:c,digest:function(){const t=8*s,n=i.floor(t/4294967296),r=t>>>0;for(c(Yt,0,1);56!=a;)c(Xt,0,1);o[0]=n>>>24,o[1]=n>>>16,o[2]=n>>>8,o[3]=n,o[4]=r>>>24,o[5]=r>>>16,o[6]=r>>>8,o[7]=r,c(o,0,8);const u=new w(Gt),l=new m(u.buffer);for(let t=0;t<e.length;t++)l.setInt32(4*t,e[t]);return e.set(jt),a=0,s=0,u}};function c(e,t,o){const i=t+o;if(s+=o,a){for(;t<i&&a<Ht;)n[a++]=e[t++];a==Ht&&(u(r,0),a=0)}if(t+Ht<=i){const n=new m(e.buffer,e.byteOffset,e.byteLength);for(;t+Ht<=i;t+=Ht)u(n,t)}for(;t<i;)n[a++]=e[t++]}function u(n,r){for(let e=0;e<16;e++)t[e]=n.getInt32(r+4*e);let o,a=e[0],i=e[1],s=e[2],c=e[3],u=e[4];for(let e=0;e<15;e+=5)u=(a<<5|a>>>27)+((s^c)&i^c)+u+1518500249+t[e]|0,i=i<<30|i>>>2,c=(u<<5|u>>>27)+((i^s)&a^s)+c+1518500249+t[e+1]|0,a=a<<30|a>>>2,s=(c<<5|c>>>27)+((a^i)&u^i)+s+1518500249+t[e+2]|0,u=u<<30|u>>>2,i=(s<<5|s>>>27)+((u^a)&c^a)+i+1518500249+t[e+3]|0,c=c<<30|c>>>2,a=(i<<5|i>>>27)+((c^u)&s^u)+a+1518500249+t[e+4]|0,s=s<<30|s>>>2;u=(a<<5|a>>>27)+((s^c)&i^c)+u+1518500249+t[15]|0,i=i<<30|i>>>2,o=t[13]^t[8]^t[2]^t[0],o=o<<1|o>>>31,t[0]=o,c=(u<<5|u>>>27)+((i^s)&a^s)+c+1518500249+o|0,a=a<<30|a>>>2,o=t[14]^t[9]^t[3]^t[1],o=o<<1|o>>>31,t[1]=o,s=(c<<5|c>>>27)+((a^i)&u^i)+s+1518500249+o|0,u=u<<30|u>>>2,o=t[15]^t[10]^t[4]^t[2],o=o<<1|o>>>31,t[2]=o,i=(s<<5|s>>>27)+((u^a)&c^a)+i+1518500249+o|0,c=c<<30|c>>>2,o=t[0]^t[11]^t[5]^t[3],o=o<<1|o>>>31,t[3]=o,a=(i<<5|i>>>27)+((c^u)&s^u)+a+1518500249+o|0,s=s<<30|s>>>2;for(let e=20;e<40;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,u=(a<<5|a>>>27)+(i^s^c)+u+1859775393+o|0,i=i<<30|i>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(u<<5|u>>>27)+(a^i^s)+c+1859775393+o|0,a=a<<30|a>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,s=(c<<5|c>>>27)+(u^a^i)+s+1859775393+o|0,u=u<<30|u>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,i=(s<<5|s>>>27)+(c^u^a)+i+1859775393+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,a=(i<<5|i>>>27)+(s^c^u)+a+1859775393+o|0,s=s<<30|s>>>2;for(let e=40;e<60;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,u=(a<<5|a>>>27)+(i&s|(i|s)&c)+u+2400959708+o|0,i=i<<30|i>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(u<<5|u>>>27)+(a&i|(a|i)&s)+c+2400959708+o|0,a=a<<30|a>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,s=(c<<5|c>>>27)+(u&a|(u|a)&i)+s+2400959708+o|0,u=u<<30|u>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,i=(s<<5|s>>>27)+(c&u|(c|u)&a)+i+2400959708+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,a=(i<<5|i>>>27)+(s&c|(s|c)&u)+a+2400959708+o|0,s=s<<30|s>>>2;for(let e=60;e<80;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,u=(a<<5|a>>>27)+(i^s^c)+u+3395469782+o|0,i=i<<30|i>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(u<<5|u>>>27)+(a^i^s)+c+3395469782+o|0,a=a<<30|a>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,s=(c<<5|c>>>27)+(u^a^i)+s+3395469782+o|0,u=u<<30|u>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,i=(s<<5|s>>>27)+(c^u^a)+i+3395469782+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,a=(i<<5|i>>>27)+(s^c^u)+a+3395469782+o|0,s=s<<30|s>>>2;e[0]=e[0]+a|0,e[1]=e[1]+i|0,e[2]=e[2]+s|0,e[3]=e[3]+c|0,e[4]=e[4]+u|0}}(),n=new w(Ht),r=new w(Ht);e.length>Ht&&(t.update(e,0,e.length),e=t.digest());for(let t=0;t<Ht;t++){const o=t<e.length?e[t]:0;n[t]=54^o,r[t]=92^o}return t.update(n,0,Ht),{update(e,n,r){t.update(e,n,r)},digest(){const e=t.digest();t.update(r,0,Ht),t.update(e,0,Gt);const o=t.digest();return t.update(n,0,Ht),o}}}function on(e){return Qt[e>>>24]<<24|Qt[e>>>16&255]<<16|Qt[e>>>8&255]<<8|Qt[255&e]}function an(e){return e<<24|(65280&e)<<8|e>>>8&65280|e>>>24}function sn(e){return 255&(e<<1^27*(e>>7))}const cn=typeof x!=we&&typeof x.getRandomValues==pe,un="Invalid password",ln="Invalid authentication code",fn="zipjs-abort-check-password",dn="Crypto API not supported";function wn(e){if(cn)return x.getRandomValues(e);throw new d(dn)}const pn={name:"PBKDF2"},hn=n.assign({hash:{name:"HMAC"}},pn),mn=n.assign({iterations:1e3,hash:{name:"SHA-1"}},pn),yn=["deriveBits"],gn=[8,12,16],Sn=[16,24,32],En=10,bn=typeof x!=we,xn=bn&&x.subtle;let zn=bn&&typeof xn!=we&&typeof xn.importKey==pe&&typeof xn.deriveBits==pe;class Fn extends F{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){const a={};super({start(){Cn(a,e,t,n)},async transform(e,t){const{password:n,strength:o,h:i,ready:s}=a;if(n?(await async function(e,t,n,r){const o=await Ln(e,t,n,kn(r,0,gn[t])),a=kn(r,gn[t]);if(o[0]!=a[0]||o[1]!=a[1])throw vn(e),new d(un)}(a,o,n,kn(e,0,gn[o]+2)),e=kn(e,gn[o]+2),r?(vn(a),t.error(new d(fn))):i()):await s,a.m)return;const c=new w(e.length-En-(e.length-En)%16);t.enqueue(Rn(a,e,c,0,En,!0))},async flush(e){const{S:t,F:n,ready:r}=a;if(t){if(await r,a.m)return;const i=kn(n,n.length-En),s=new w(kn(n,0,n.length-En));t.process(s,!0);const c=t.digest();let u=n.length<En?1:0;for(let e=0;e<En;e++)u|=c[e]^i[e];if(u&&o)return void e.error(new d(ln));e.enqueue(s)}}}),Dn(this,a)}}class An extends F{constructor({password:e,rawPassword:t,encryptionStrength:n}){const r={};super({start(){Cn(r,e,t,n)},async transform(e,t){const{password:n,strength:o,h:a,ready:i}=r;let s=ge;if(n?(s=await async function(e,t,n){const r=wn(new w(gn[t]));return Lt(r,await Ln(e,t,n,r))}(r,o,n),a()):await i,r.m)return;const c=new w(s.length+e.length-e.length%16);c.set(s,0),t.enqueue(Rn(r,e,c,s.length,0,!1))},async flush(e){const{S:t,F:n,ready:o}=r;if(t){if(await o,r.m)return;const a=new w(n);t.process(a,!1);const i=kn(t.digest(),0,En);e.enqueue(Lt(a,i))}}}),Dn(this,r)}}function Cn(e,t,r,o){n.assign(e,{ready:new g(t=>e.h=t),password:Nn(t,r),strength:o-1,F:ge,m:!1})}function Dn(e,t){const r=e.readable.getReader(),o=new A({async pull(e){try{const{value:t,done:n}=await r.read();n?e.close():e.enqueue(t)}catch(e){throw vn(t),r.cancel(e).catch(()=>{}),e}},cancel:e=>(vn(t),r.cancel(e))});n.defineProperty(e,"readable",{get:()=>o})}function Rn(e,t,n,r,o,a){const{S:i,F:s}=e;s.length&&(t=Lt(s,t));const c=t.length-o,u=c-c%16;if(n=function(e,t){if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e}(n,r+u),u){const e=kn(n,r,r+u);e.set(kn(t,0,u)),i.process(e,a)}return e.F=kn(t,u),n}function vn(e){const{S:t}=e;e.m=!0,t&&t.dispose&&t.dispose()}async function Ln(e,t,r,o){e.password=null;const a=Sn[t],s=await async function(e,t,r){if(zn)try{const o=await xn.importKey("raw",e,hn,!1,yn);return new w(await xn.deriveBits(n.assign({salt:t},mn),o,8*r))}catch{zn=!1}return function(e,t,n,r){const o=rn(e),a=new w(r),s=new w(t.length+4),c=new m(s.buffer);s.set(t);for(let e=1,n=0;n<r;e++,n+=Gt){c.setUint32(t.length,e),o.update(s,0,s.length);let u=o.digest();const l=u.slice();for(let e=1;e<1e3;e++){o.update(u,0,Gt),u=o.digest();for(let e=0;e<Gt;e++)l[e]^=u[e]}a.set(l.subarray(0,i.min(Gt,r-n)),n)}return a}(e,t,0,r)}(r,o,2*a+2);return e.S=function(e,t){!function(){if(!nn){let e=1,t=1;do{e=255&(e^e<<1^(128&e?27:0)),t=255&(t^t<<1),t=255&(t^t<<2),t=255&(t^t<<4),128&t&&(t^=9),Qt[e]=255&(t^(t<<1|t>>7)^(t<<2|t>>6)^(t<<3|t>>5)^(t<<4|t>>4)^99)}while(1!=e);Qt[0]=99;for(let e=0;e<256;e++){const t=Qt[e],n=sn(t),r=n<<24|t<<16|t<<8|n^t;_t[e]=r,$t[e]=r>>>8|r<<24,en[e]=r>>>16|r<<16,tn[e]=r>>>24|r<<8}nn=!0}}();const n=new Int32Array(60),r=function(e,t){const n=e.length>>2,r=n+6,o=4*(r+1);let a=1;for(let r=0;r<n;r++)t[r]=e[4*r]<<24|e[4*r+1]<<16|e[4*r+2]<<8|e[4*r+3];for(let e=n;e<o;e++){let r=t[e-1];e%n==0?(r=on(r<<8|r>>>24)^a<<24,a=sn(a)):n>6&&e%n==4&&(r=on(r)),t[e]=t[e-n]^r}return r}(e,n),o=new Int32Array(4),a=rn(t);let i=0,s=0,c=0,u=0;return{process(e,t){t&&a.update(e,0,e.length),function(e){const t=new m(e.buffer,e.byteOffset,e.byteLength),n=e.length;let r=0;for(;r+16<=n;r+=16)l(),t.setInt32(r,t.getInt32(r)^o[0]),t.setInt32(r+4,t.getInt32(r+4)^o[1]),t.setInt32(r+8,t.getInt32(r+8)^o[2]),t.setInt32(r+12,t.getInt32(r+12)^o[3]);if(r<n){l();for(let t=0;r<n;r++,t++)e[r]^=o[t>>2]>>>24-8*(3&t)}}(e),t||a.update(e,0,e.length)},digest:()=>a.digest()};function l(){i=i+1|0,i||(s=s+1|0,s||(c=c+1|0,c||(u=u+1|0)));let e=an(i)^n[0],t=an(s)^n[1],a=an(c)^n[2],l=an(u)^n[3],f=_t[e>>>24]^$t[t>>>16&255]^en[a>>>8&255]^tn[255&l]^n[4],d=_t[t>>>24]^$t[a>>>16&255]^en[l>>>8&255]^tn[255&e]^n[5],w=_t[a>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[6],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&a]^n[7];e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[8],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[9],a=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[10],l=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[11],f=_t[e>>>24]^$t[t>>>16&255]^en[a>>>8&255]^tn[255&l]^n[12],d=_t[t>>>24]^$t[a>>>16&255]^en[l>>>8&255]^tn[255&e]^n[13],w=_t[a>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[14],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&a]^n[15],e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[16],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[17],a=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[18],l=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[19],f=_t[e>>>24]^$t[t>>>16&255]^en[a>>>8&255]^tn[255&l]^n[20],d=_t[t>>>24]^$t[a>>>16&255]^en[l>>>8&255]^tn[255&e]^n[21],w=_t[a>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[22],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&a]^n[23],e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[24],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[25],a=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[26],l=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[27],f=_t[e>>>24]^$t[t>>>16&255]^en[a>>>8&255]^tn[255&l]^n[28],d=_t[t>>>24]^$t[a>>>16&255]^en[l>>>8&255]^tn[255&e]^n[29],w=_t[a>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[30],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&a]^n[31],e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[32],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[33],a=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[34],l=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[35],f=_t[e>>>24]^$t[t>>>16&255]^en[a>>>8&255]^tn[255&l]^n[36],d=_t[t>>>24]^$t[a>>>16&255]^en[l>>>8&255]^tn[255&e]^n[37],w=_t[a>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[38],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&a]^n[39];let h=40;r>10&&(e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[40],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[41],a=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[42],l=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[43],f=_t[e>>>24]^$t[t>>>16&255]^en[a>>>8&255]^tn[255&l]^n[44],d=_t[t>>>24]^$t[a>>>16&255]^en[l>>>8&255]^tn[255&e]^n[45],w=_t[a>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[46],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&a]^n[47],h=48),r>12&&(e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[48],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[49],a=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[50],l=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[51],f=_t[e>>>24]^$t[t>>>16&255]^en[a>>>8&255]^tn[255&l]^n[52],d=_t[t>>>24]^$t[a>>>16&255]^en[l>>>8&255]^tn[255&e]^n[53],w=_t[a>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[54],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&a]^n[55],h=56),o[0]=(Qt[f>>>24]<<24|Qt[d>>>16&255]<<16|Qt[w>>>8&255]<<8|Qt[255&p])^n[h],o[1]=(Qt[d>>>24]<<24|Qt[w>>>16&255]<<16|Qt[p>>>8&255]<<8|Qt[255&f])^n[h+1],o[2]=(Qt[w>>>24]<<24|Qt[p>>>16&255]<<16|Qt[f>>>8&255]<<8|Qt[255&d])^n[h+2],o[3]=(Qt[p>>>24]<<24|Qt[f>>>16&255]<<16|Qt[d>>>8&255]<<8|Qt[255&w])^n[h+3]}}(kn(s,0,a),kn(s,a,2*a)),e.m&&vn(e),kn(s,2*a)}function Nn(e,t){return t===fe?Zt(e):t}function kn(e,t,n){return e.subarray(t,n)}class In extends F{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){Tn(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=On(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t[11]^n.passwordVerification))throw new d(un);e=e.subarray(12)}r?t.error(new d(fn)):t.enqueue(On(n,e))}})}}class Un extends F{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){Tn(this,e,t,n)},transform(e,t){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=wn(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Vn(n,t),0),o=12}else r=new w(e.length),o=0;r.set(Vn(n,e),o),t.enqueue(r)}})}}function Tn(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,{A:o,C:new Pt(o[0]),D:new Pt(o[2])}),r)for(let t=0;t<r.length;t++)Wn(e,r[t]);else for(let n=0;n<t.length;n++)Wn(e,t.charCodeAt(n))}(e,t,r)}function On(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=Mn(e)^t[r],Wn(e,n[r]);return n}function Vn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=Mn(e)^t[r],Wn(e,t[r]);return n}function Wn(e,t){let[,n]=e.A;e.C.append([t]);const r=~e.C.get();n=Kn(i.imul(Kn(n+Bn(r)),134775813)+1),e.D.append([n>>>24]);const o=~e.D.get();e.A=[r,n,o]}function Mn(e){const t=2|e.A[2];return Bn(i.imul(t,1^t)>>>8)}function Bn(e){return 255&e}function Kn(e){return 4294967295&e}function qn(e){if(e instanceof A)return e;const t=e.getReader();return new A({async pull(e){try{const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)}catch(e){throw t.cancel(e).catch(()=>{}),e}},cancel:e=>t.cancel(e)})}function Pn(e,t){e=qn(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=pe||new y([]).stream()instanceof A)return new l(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new C({write(e){r.push(e)}})).then(()=>new y(r,n))}function Jn(e){if(e instanceof C)return e;const t=e.getWriter();return new C({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const Zn="Invalid codec definition",Hn="Reserved compression method",Gn="Invalid codec module",Yn="Compression method not supported",Xn=[0,8,9,99],jn=new c,Qn=new c;function _n(e){return jn.get(e)}function $n(){return t.from(jn.values(),e=>n.assign({},e,Qn.get(e.format)))}function er(e){return Qn.get(e)}function tr(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=pe&&typeof r!=pe)throw new d(Gn);Qn.set(e,{CompressionStream:n,DecompressionStream:r})}const nr="Invalid uncompressed size",rr="Invalid compressed data",or="Invalid CRC32",ar="deflate-raw",ir="deflate64-raw",sr="gzip",cr=[31,139,8];class ur extends F{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:a,useCompressionStream:i,zipCrypto:s,computeCrc32:c,level:u,deflate64:l,format:f,compressionMethod:d,inputSize:w}=e,p=this;let h,y,g,S=super.readable;const E=f&&er(f),b=yr(i,r,n),x=c&&o&&!l&&!E&&(!a||s)&&Boolean(b);if(a&&!s||!c||x||(h=new Jt,S=Sr(S,h)),o)if(E)S=Er(S,mr(E.CompressionStream,f,{level:u,chunkSize:t,compressionMethod:d,uncompressedSize:w}));else if(x)g=new lr,S=Er(S,new b(sr,{level:u,chunkSize:t})),S=Sr(S,g);else try{S=gr(S,i,{level:u,chunkSize:t},r,n)}catch(e){if(!i&&n)throw e;let t;try{t=new r(sr)}catch{throw e}S=Er(S,t),S=Sr(S,new lr)}a&&(s?S=Sr(S,new Un(e)):(y=new An(e),S=Sr(S,y))),hr(p,S,()=>{a&&!s||!c||(p.crc32=x?g.crc32:new m(h.value.buffer).getUint32(0))})}}class lr extends F{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=i.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=Lt(n,e));const a=o-8,s=i.min(a,n.length);r.enqueue(Lt(n.subarray(0,s),e.subarray(0,a-s))),n=Lt(n.subarray(s),e.subarray(a-s))},flush(){const t=kt(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class fr extends F{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:a,checkCrc32:i,crc32:s,compressed:c,useCompressionStream:u,deflate64:l,format:f,compressionMethod:p,rawBitFlag:h,outputSize:y}=e;let S,E,b,x=super.readable;if(a&&(o?x=Sr(x,new In(e)):(E=new Fn(e),x=Sr(x,E))),c){const e=f&&er(f);if(e)x=Er(x,mr(e.DecompressionStream,f,{chunkSize:t,compressionMethod:p,rawBitFlag:h,uncompressedSize:y}));else{let e;const o=yr(u,r,n);if(i&&!l&&s!==fe&&y!==fe&&o)try{e=new o(sr,{chunkSize:t})}catch{e=fe}if(!e)try{x=gr(x,u,{chunkSize:t,deflate64:l},r,n)}catch(t){if(l||y===fe||!u&&n)throw t;try{e=new r(sr)}catch{throw t}}e&&(b=!0,x=function(e,t,n,r){const o=t.writable.getWriter(),a=t.readable.getReader(),i=r===fe?new Pt:fe;let s,c,u=0,l=!1,f=!1,p=!1,h=0,m=!1;const y=new g((e,t)=>{s=e,c=t});return y.catch(()=>{}),async function(){const t=e.getReader();try{const e=new w(10);for(e.set(cr),await o.write(e);;){await o.ready;const{value:e,done:n}=await t.read();if(n)break;await o.write(e)}l=!0,i&&(m&&E(),await y);const a=new w(8),s=kt(a);s.setUint32(0,i?i.get():r,!0),s.setUint32(4,n,!0),f=!0,await o.write(a),await o.close()}catch(e){await br(o,e),await xr(t,e)}}(),new A({async pull(e){try{const{value:t,done:r}=await function(){h++,m=!0;const e=a.read();return e.then(S,S),l&&i&&E(),e}();if(r)e.close();else{if(u+=t.length,u>n)throw new d(nr);i&&i.append(t),e.enqueue(t)}}catch(e){throw c(e),await xr(a,e),f?function(e){const t=new d(u==n?or:nr);return t.cause=e,t}(e):e}},cancel:e=>(c(e),a.cancel(e))});function S(){m=!1}async function E(){if(!p){p=!0;const e=h;await new g(e=>{const{port1:t,port2:n}=new MessageChannel;n.onmessage=()=>{t.close(),n.close(),e()},t.postMessage(fe)}),p=!1,m&&(h==e?s():E())}}}(x,e,y,s))}x=function(e){const t=e.getReader();return new A({async pull(e){try{const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)}catch(e){if(await xr(t,e),e&&e.message)throw e;const n=new d(rr);throw n.cause=e,n}},cancel:e=>t.cancel(e)})}(x)}i&&!b&&(S=new Jt,x=Sr(x,S)),hr(this,x,()=>{if(S){const e=new m(S.value.buffer).getUint32(0,!1);if(s!=e)throw new d(or)}})}}const dr=new c;function wr(e,t){if(!e)return!1;let n=dr.get(e);n||(n=new c,dr.set(e,n));let r=n.get(t);if(r===fe){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function pr(e){return wr(e,ar)}function hr(e,t,r){t=Sr(t,new F({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function mr(e,t,n){if(!e)throw new d(Yn);return new e(t,n)}function yr(e,t,n){return e&&t?t:n&&n.requiresModule?n:void 0}function gr(e,t,n,r,o){const a=t&&r?r:o||r,i=n.deflate64?ir:ar;let s;try{s=new a(i,n)}catch(e){if(!t||!o||a==o)throw e;s=new o(i,n)}return Er(e,s)}function Sr(e,t){return qn(e).pipeThrough(t)}function Er(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 br(n,e),await xr(r,e)}}(),t.readable}async function br(e,t){try{await e.abort(t)}catch{}}async function xr(e,t){try{await e.cancel(t)}catch{}}const zr="data",Fr="deflate",Ar="inflate";class Cr extends F{constructor(e,t){super({});const r=this,{codecType:o}=e;let a;o.startsWith(Fr)?a=ur:o.startsWith(Ar)&&(a=fr),r.outputSize=0;let i=0;const s=new a(e,t),c=super.readable,u=new F({transform(e,t){e&&e.length&&(i+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:i})}}),l=new F({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==fe&&r.outputSize>e.outputSize))throw new d(nr)},flush(){const{crc32:e}=s;n.assign(r,{crc32:e,inputSize:i})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(u).pipeThrough(s).pipeThrough(l)})}}class Dr extends F{constructor(e){const t=[];let r=0,a=0;function i(){const n=new w(e);let o=0;for(;o<e;){const r=t[0],a=e-o;r.length<=a?(n.set(r,o),o+=r.length,t.shift()):(n.set(r.subarray(0,a),o),t[0]=r.subarray(a),o+=a)}return r-=e,n}(!o.isFinite(e)||e<1)&&(e=65536),super({transform(n,o){for(t.push(n),r+=n.length;r>e;)a+=e,o.enqueue(i())},flush(e){r&&(a+=r,e.enqueue(function(e,t){const n=new w(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(t,r)))}}),n.defineProperty(this,"outputSize",{get:()=>a})}}const Rr="Worker startup timeout";let vr,Lr,Nr,kr=()=>{};async function Ir(){if(kr)try{return await void 0,!0}catch{}return!1}function Ur(e){e.createWorker?Lr=!0:vr=!1}class Tr{constructor(e,{readable:t,writable:r},o,a){const{options:i,config:s,R:c,useWebWorkers:u,transferStreams:l,workerURI:f}=o;let{createWorker:d}=o;const{signal:w}=c;return Lr&&(d=fe),n.assign(e,{v:!0,L:(e.L||0)+1,readable:t.pipeThrough(new Dr(wt(s))).pipeThrough(new Or(c),{signal:w}),writable:r,options:n.assign({},i),N:o,workerURI:f,createWorker:d,transferStreams:l,terminate:()=>new g(t=>{const{I:n,v:r}=e;r?(e.U=e.U||[],e.U.push(t)):(n&&(n.terminate(),e.I=null),t()),e.T=null}),O(){if(e.v){const{U:t,I:n}=e;t&&(e.U=null,n&&(e.V=!0,n.terminate())),e.v=!1;const r=a(e);t&&t.forEach(e=>e(r))}}}),vr===fe&&(vr=typeof L!=we),(u&&Nr&&(vr&&f||d)?Nr:Wr)(e,s)}}class Or extends F{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await Vr(e,n)},async transform(e,r){o+=e.length,t&&await Vr(t,o,n),r.enqueue(e)},async flush(){r&&await Vr(r,o)}})}}async function Vr(e,...t){try{await e(...t)}catch{}}function Wr(e,t){return{run:()=>Mr(e,t)}}async function Mr({options:e,readable:t,writable:n,O:r,N:o},a){let i,s,c;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(Fr),n=t?a.CompressionStreamFallback:a.DecompressionStreamFallback,r=t?a.CompressionStream:a.DecompressionStream;e.useCompressionStream?n&&n.requiresModule&&!pr(r)&&await u():await u()||n&&!n.requiresModule||(e.useCompressionStream=!0)}e.encrypted&&!e.zipCrypto&&await u(),i=new Cr(e,a),s=new Dr(wt(a)),await t.pipeThrough(i).pipeThrough(s).pipeTo(n,{preventClose:!0,preventAbort:!0});const{crc32:r,inputSize:o,outputSize:c}=i;return{crc32:r,inputSize:o,outputSize:c}}catch(e){if(i){const t=s?s.outputSize:0;if(o.outputSize=t,It(e))try{e.outputSize=t}catch{}}throw e}finally{r()}function u(){return c||(c=Ir()),c}}const Br={type:"module"},Kr="error";let qr,Pr,Jr,Zr=!0;try{Zr=typeof U==pe&&U(new DOMException("","AbortError")).code!==fe}catch{}var Hr;function Gr(e){const{reader:t}=e;t&&t.releaseLock(),e.reader=null,e.writer=null}function Yr(e){const{I:t}=e;if(t)try{t.terminate()}catch{}e.T=null}function Xr(e,t,r,o,a=!0){const{createWorker:i}=r;let s,c,u;if(i)s=i();else if(Pr===fe||qr!==e){const n=typeof e==pe;c=n?e(a):e;const i=c.startsWith("data:"),l=c.startsWith("blob:");if(i||l){o===fe&&(o=!1),o&&(u=Br);try{s=new L(c,u)}catch(a){if(l)try{f.revokeObjectURL(c)}catch{}if(n&&l)return Xr(e,t,r,o,!1);if(o)throw a;return Xr(e,t,r,!0,!1)}}else{o===fe&&(o=!0),o&&(u=Br);try{c=new f(c,t)}catch{}try{s=new L(c,u)}catch(n){if(o)return Xr(e,t,r,!1,a);throw n}}qr=e,Pr=c,Jr=u}else s=new L(Pr,Jr);return s.addEventListener("message",e=>{r.W=!0,jr(r),async function({data:e},t){const{type:r,value:o,messageId:a,result:i,error:s,errorValue:c}=e,{reader:u,writer:l,M:f,B:p,O:h,L:m}=t,y=()=>t.L!=m;try{if(s)g(function(e,t){const{message:r,stack:o,code:a,name:i,outputSize:s,cause:c,codecImportFailed:u}=e;let l;if(t?l=t.value:(l=n.assign(new d(r),{stack:o,code:a,name:i}),c&&(l.cause=n.assign(new d(c.message),{name:c.name}))),It(l))try{s!==fe&&(l.outputSize=s),u&&(l.codecImportFailed=!0),t&&(l.name!==i&&(l.name=i),l.code!==a&&(l.code=a))}catch{}return l}(s,c));else{if("pull"==r){const{value:e,done:n}=await u.read();y()||_r({type:zr,value:e,done:n,messageId:a},t)}if(r==zr){const e=new w(o);await l.ready,await l.write(e),y()||_r({type:"ack",messageId:a},t)}"close"==r&&function(e){y()||(f(e),S(),h())}(i)}}catch(s){y()||(Yr(t),g(s))}function g(e){y()||(p(e),S(),It(e)&&e.codecImportFailed||h())}function S(){l&&l.releaseLock()}}(e,r)}),s.addEventListener(Kr,e=>Qr(e,r)),s.addEventListener("messageerror",e=>Qr(e,r)),s}function jr(e){const{K:t}=e;t&&(I(t),e.K=null)}function Qr(e,t){e.preventDefault&&e.preventDefault(),jr(t);const{W:r,B:o,writer:a,O:i}=t;Yr(t),r||(t.I=null);let s=e.error||new d(e.message||Kr);r||(s=n.assign(new d(s.message||Kr),{P:!0}),t.J=s),o&&(o(s),a&&a.releaseLock(),r&&i())}function _r(e,{I:t,writer:n,transferStreams:r,W:o}){try{const{value:n,readable:a,writable:i}=e,s=[];if(n&&(e.value=Nt(n),s.push(e.value.buffer)),r&&Zr&&o?(a&&s.push(a),i&&s.push(i)):e.readable=e.writable=null,s.length)try{return t.postMessage(e,s),!0}catch{Zr=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}Hr=function(e,t){const{baseURI:r,chunkSize:a,workerStartupTimeout:i}=t;let{wasmURI:s}=t;if(!e.T){let c;typeof s==pe&&(s=s());try{c=Xr(e.workerURI,r,e)}catch{return Ur(e),Wr(e,t)}n.assign(e,{I:c,W:!1,V:!1,J:null,T:{run:async()=>{try{return await async function(e,t){if(!e.I){const{J:t}=e;e.J=null;const n=t||new d(Rr);throw n.P=!0,n}let r,a;const i=new g((t,n)=>{r=t,a=t=>{const{outputSize:r,N:o}=e;if(o.outputSize=r,It(t))try{t.outputSize=r}catch{}n(t)}});n.assign(e,{reader:null,writer:null,outputSize:0,Z:!1,H:null,M:r,B:a,result:i});const{readable:s,options:c}=e,{writable:u,closed:l,G:f}=function(e,t){const r=new AbortController;let o;const{writable:a,readable:i}=new F({transform(e,n){t.outputSize+=e.length,n.enqueue(e)}}),s=i.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:r.signal});return s.catch(e=>{o||n.assign(t,{Z:!0,H:e})}),{writable:a,closed:s,G:()=>{o=!0,r.abort()}}}(e.writable,e);let w;try{w=_r({type:"start",options:c,config:t,readable:s,writable:u},e)}catch(t){f();try{await l}catch{}throw e.O(),t}w||n.assign(e,{reader:s.getReader(),writer:u.getWriter()});const{workerStartupTimeout:p}=t;!e.W&&o.isFinite(p)&&p>=0&&(e.K=k(()=>function(e){if(e.K=null,e.W)return;const{B:t,writer:n}=e;if(Yr(e),e.I=null,t){const e=new d(Rr);e.P=!0,t(e),n&&n.releaseLock()}}(e),p));try{const e=await i;return await h(),await l,e}catch(t){await h(),f();try{await l}catch{}const{outputSize:n,N:r,Z:o,H:a}=e;r.outputSize=n;const i=It(t)&&(t.codecImportFailed||t.P),s=o&&!i?a:t;if(It(s))try{s.outputSize=n}catch{}throw s}async function h(){if(!w&&!u.locked)try{await u.getWriter().close()}catch{}}}(e,{chunkSize:a,wasmURI:s,baseURI:r,workerStartupTimeout:i})}catch(n){if(n&&n.P)return Ur(e),Gr(e),Mr(e,t);if(n&&n.codecImportFailed){if(e.reader)return Gr(e),Mr(e,t);e.O()}throw n}}}})}return e.T},Nr=Hr;let $r=[];const eo=[];let to,no,ro=0;async function oo(e,t){const{options:n,config:r}=t,{transferStreams:a,useWebWorkers:i,useCompressionStream:s,compressed:c,checkCrc32:u,computeCrc32:l,encrypted:d,format:w,codecURI:p}=n,{workerURI:h,createWorker:m,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){!Qn.has(e)&&t&&tr(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(w,n.codecURI)),t.transferStreams=!w&&(a||a===fe&&r.transferStreams);const S=!(c||u||l||d),E=w===fe||Boolean(n.codecURI);return t.useWebWorkers=!S&&E&&(i||i===fe&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&h?h:fe,t.createWorker=t.useWebWorkers&&m?m:fe,n.useCompressionStream=s||s===fe&&r.useCompressionStream,(await async function(){const n=$r.find(e=>!e.v);if(n)return fo(n),new Tr(n,e,t,b);if($r.length<y){const n={Y:ro};return ro++,$r.push(n),new Tr(n,e,t,b)}return new g(n=>{eo.push({resolve:n,stream:e,N:t}),no=r.workerStarvationTimeout,ao()})}()).run();function b(e){if(io(),e.V)return e.V=!1,co();if(eo.length){const[{resolve:t,stream:n,N:r}]=eo.splice(0,1);t(new Tr(e,n,r,b)),ao()}else e.I?(fo(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.X=k(async()=>{$r=$r.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}(e,t)):$r=$r.filter(t=>t!=e)}}function ao(){!to&&eo.length&&o.isFinite(no)&&no>=0&&(to=k(so,no))}function io(){to&&(I(to),to=null)}function so(){if(to=null,eo.length){const[{resolve:e,stream:t,N:n}]=eo.splice(0,1);e(new Tr({},t,uo(n),lo)),ao()}}function co(){const e=eo.splice(0).map(({resolve:e,stream:t,N:n})=>new g(r=>{e(new Tr({},t,uo(n),()=>{lo(),r()}))}));return io(),g.all(e)}function uo(e){return n.assign({},e,{useWebWorkers:!1,workerURI:fe,createWorker:fe})}function lo(){io(),ao()}function fo(e){const{X:t}=e;t&&(I(t),e.X=null)}const wo="\0\u263a\u263b\u2665\u2666\u2663\u2660\u2022\u25d8\u25cb\u25d9\u2642\u2640\u266a\u266b\u263c\u25ba\u25c4\u2195\u203c\xb6\xa7\u25ac\u21a8\u2191\u2193\u2192\u2190\u221f\u2194\u25b2\u25bc !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xa2\xa3\xa5\u20a7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\u2310\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0".split("");function po(e,t){return mo(e,t,!0)}function ho(e){if(!e.some(e=>e>127))return!1;try{return new E("utf-8",{fatal:!0}).decode(e),!0}catch{return!1}}function mo(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?function(e){let t="";for(let n=0;n<e.length;n++)t+=wo[e[n]];return t}(e):new E(t,{ignoreBOM:n}).decode(e)}const yo="HTTP error ",go="HTTP Range not supported",So="HTTP resource changed",Eo="Writer iterator completed too soon",bo="Writer not initialized",xo="Invalid writer (size must be writable)",zo="Content-Range",Fo="Range",Ao="GET",Co="bytes",Do=16777216,Ro="writable",vo=N();class Lo{constructor(){this.size=0}init(){this.initialized=!0}}class No extends Lo{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=wt(dt())}={}){const r=this;let o=0;return n=pt(n),new A({async pull(a){const s=t===fe?n:i.min(n,t-o),c=await ua(r,e+o,s);c.length&&(a.enqueue(c),o+=c.length),(t!==fe&&o>=t||!c.length&&s)&&a.close()}})}}class ko extends Lo{constructor(){super();const e=this,t=new C({write(t){if(!e.initialized)throw new d(bo);return e.writeUint8Array(Nt(t))}});n.defineProperty(e,Ro,{get:()=>t})}writeUint8Array(){}}let Io,Uo;class To extends No{constructor(e){super(),n.assign(this,{j:e,size:e.size}),Uo||(Uo=(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();Io=1==t}catch{Io=!1}})())}createReadable(e){const{j:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};if(typeof t.stream==pe){if(!r&&o>=n)return qn(t.stream());if(Io)return qn(t.slice(r,r+o).stream())}return super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=!e&&r>=n.size?n.j:n.j.slice(e,r);let a=await o.arrayBuffer();return a.byteLength>t&&(a=a.slice(e,r)),new w(a)}}class Oo extends Lo{constructor(e){super();const t=this,r=new F;n.defineProperty(t,Ro,{get:()=>r.writable}),t.contentType=e,t._=Pn(r.readable,e),t._.catch(()=>{})}getData(){return this._}}class Vo extends No{constructor(e,t){super(),Mo(this,e,t)}async init(){await Bo(this,$o,Xo),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:o,$:a}=t;if((n||r)&&o!==fe){const{offset:n=0,size:r=o-n}=e||{},s=a&&n>=o-a.length;if(r>0&&n<o&&!s)return function(e,t,n){let r,o=t,a=0,s=n;return new A({start:()=>c(),async pull(e){r||await c();const{value:t,done:n}=await r.read();if(n)throw new d(go);const o=t.length>a?t.subarray(0,a):t;a-=o.length,s-=o.length,o.length&&e.enqueue(o),a||(await async function(){const e=r;r=fe,await e.cancel()}(),s||e.close())},cancel:e=>r&&r.cancel(e)});async function c(){const t=i.min(e.maximumRangeSize,s),n=await $o(Ao,e,Go(e,o,t));if(206!=n.status)throw new d(go);const c=qo(n);if(c!==fe&&c!=o)throw new d(go);Ho(e,n),Zo(e,n),o+=t,a=t,r=n.body.getReader()}}(t,n,i.min(r,o-n))}return super.createReadable(e)}readUint8Array(e,t){return Ko(this,e,t,$o,Xo)}}class Wo extends No{constructor(e,t){super(),Mo(this,e,t)}async init(){await Bo(this,ea,jo),super.init()}readUint8Array(e,t){return Ko(this,e,t,ea,jo)}}function Mo(e,t,r){const{preventHeadRequest:o,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:s,checkResourceChanges:c=!0,maximumRangeSize:u=Do,fetch:l}=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:a,forceRangeRequests:i,combineSizeEocd:s,checkResourceChanges:c,maximumRangeSize:u,fetch:l})}async function Bo(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:s}=e;if(function(e){const{baseURI:t}=dt(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n}(r)&&(a||i)&&(typeof o==we||o)){const r=await t(Ao,e,Go(e,s?-65557:void 0)),o=r.headers.get("Accept-Ranges");if(!(i||o&&o.toLowerCase()==Co))throw new d(go);{let o;s&&206==r.status&&(o=new w(await r.arrayBuffer())),Zo(e,r);const a=Po(r);a===fe?await _o(e,t,n):e.size=a,o&&o.length&&qo(r)===e.size-o.length&&(e.$=o)}}else await _o(e,t,n)}async function Ko(e,t,n,r,o){const{useRangeHeader:a,forceRangeRequests:i,$:s,size:c,options:u}=e;if(a||i){if(t>=c||0===n)return ge;{if(t+n>c&&(n=c-t),s&&t>=c-s.length){const e=t-(c-s.length);return s.slice(e,e+n)}const o=await r(Ao,e,Go(e,t,n));if(206!=o.status)throw new d(go);const a=qo(o);if(a!==fe&&a!=t)throw new d(go);Ho(e,o),Zo(e,o);const i=new w(await o.arrayBuffer());if(i.length!=n)throw new d(go);return i}}{const{data:r}=e;return r||await o(e,u),e.data.subarray(t,t+n)}}function qo(e){const t=e.headers.get(zo);if(t){const e=o(t.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e))return e}}function Po(e){const t=e.headers.get(zo);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=o(e);if(!o.isNaN(t))return t}}}function Jo({headers:e}){return{ee:e.get("Etag")||fe,lastModified:e.get("Last-Modified")||fe}}function Zo(e,t){const{checkResourceChanges:n,te:r}=e;n&&!r&&206==t.status&&(e.te=Jo(t))}function Ho(e,t){const{checkResourceChanges:r,te:o,size:a}=e;if(r){const e=Po(t);if(e!==fe&&a!==fe&&e!=a)throw new d(So);if(o){const e=Jo(t);if(n.entries(o).some(([t,n])=>n!==fe&&e[t]!==fe&&n!=e[t]))throw new d(So)}}}function Go(e,t=0,r=1){return n.assign({},Yo(e),{[Fo]:Co+"="+(t<0?t:t+"-"+(t+r-1))})}function Yo({options:e}){const{headers:t}=e;if(t)return N.iterator in t?n.fromEntries(t):t}async function Xo(e){await Qo(e,$o)}async function jo(e){await Qo(e,ea)}async function Qo(e,t){const n=await t(Ao,e,Yo(e));e.data=new w(await n.arrayBuffer()),e.size=e.data.length}async function _o(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,Yo(e)),a=r.headers.get("Content-Length");a&&!r.headers.get("Content-Encoding")?e.size=o(a):await n(e,e.options)}}async function $o(e,{fetch:t=fetch,options:r,url:o},a){const i=await t(o,n.assign({},r,{method:e,headers:a}));if(i.status>=200&&i.status<=299)return i;throw 416==i.status?new d(go):new d(yo+(i.statusText||i.status))}function ea(e,{url:t},r){return new g((o,a)=>{const i=new XMLHttpRequest;if(i.addEventListener("load",()=>{if(i.status>=200&&i.status<=299){const e=[];i.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:i.status,arrayBuffer:()=>i.response,headers:new c(e)})}else a(416==i.status?new d(go):new d(yo+(i.statusText||i.status)))},!1),i.addEventListener("error",e=>a(e.detail?e.detail.error:new d("Network error")),!1),i.open(e,t),r)for(const e of n.entries(r))i.setRequestHeader(e[0],e[1]);i.responseType="arraybuffer",i.send()})}class ta extends No{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Wo(e,t):new Vo(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 na extends No{constructor(e){super(),this.ne=e}async init(){const e=this;e.re=0;const t=e.ne=await g.all(e.ne.map(ca));e.oe=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}ae(e){const{oe:t,size:n}=this,r=t[e];return r===fe?n:r}async readUint8Array(e,t){const n=this,{ne:r}=this;let o,a=0,s=e;for(;r[a]&&s>=r[a].size;)s-=r[a].size,a++;const c=r[a];if(c){const r=c.size;if(s+t<=r)o=await ua(c,s,t);else{const a=r-s;o=Lt(await ua(c,s,a),await n.readUint8Array(e+a,t-a))}}else o=ge;return n.re=i.max(a,n.re),o}}class ra extends Lo{constructor(e,t=4294967295){super();const r=this;let o,a,i;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const s=new C({async write(t){if(t===vo)return void(i&&await u());const{availableSize:n}=r;if(i)t.length>=n?(await c(t.subarray(0,n)),await u(),t.length>n&&await this.write(t.subarray(n))):await c(t);else{const{value:n,done:s}=await e.next();if(s&&!n)throw new d(Eo);o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await sa(o),a=n.writable,i=a.getWriter(),await this.write(t)}},async close(){i&&(await i.ready,await l())},async abort(e){i&&await i.abort(e)}});async function c(e){const t=e.length;t&&(await i.ready,await i.write(e),o.size+=t,r.availableSize-=t)}async function u(){await l(),r.diskOffset+=o.size,r.diskNumber++,i=null,r.availableSize=r.maxSize}async function l(){await i.close()}n.defineProperty(r,Ro,{get:()=>s})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(vo)}finally{e.releaseLock()}}}class oa{constructor(e){return t.isArray(e)&&(e=new na(e)),(e instanceof A||typeof e.getReader==pe)&&(e={readable:qn(e)}),e}}class aa{constructor(e){e.writable===fe&&typeof e.next==pe&&(e=new ra(e)),(e instanceof C||typeof e.getWriter==pe)&&(e={writable:Jn(e)});try{e.size=e.size===fe?0:e.size}catch{throw new d(xo)}return e}}function ia(e){return Boolean(e&&e.getData)}async function sa(e,t){if(!e.init||e.initialized)return g.resolve();await e.init(t)}async function ca(e){return e=new oa(e),await sa(e),e.size!==fe&&e.readUint8Array||(e=new To(await Pn(e.readable)),await sa(e)),e}function ua(e,t,n){return e.readUint8Array(t,n)}function la(e,t){return e.createReadable?e.createReadable(t):e.readUint8Array?No.prototype.createReadable.call(e,t):e.readable}function fa(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==fe&&(r.filename=n),e.push(r)}}const da="filename",wa="rawFilename",pa="comment",ha="rawComment",ma="uncompressedSize",ya="compressedSize",ga="offset",Sa="diskNumberStart",Ea="lastModDate",ba="rawLastModDate",xa="lastAccessDate",za="rawLastAccessDate",Fa="creationDate",Aa="rawCreationDate",Ca="internalFileAttributes",Da="externalFileAttributes",Ra="msdosAttributesRaw",va="msdosAttributes",La="msDosCompatible",Na="zip64",ka="encrypted",Ia="version",Ua="versionMadeBy",Ta="zipCrypto",Oa="directory",Va="executable",Wa="compressionMethod",Ma="signature",Ba="extraField",Ka="unixMode",qa="setuid",Pa="setgid",Ja="sticky",Za=[da,wa,ma,ya,Ea,ba,pa,ha,xa,za,Fa,Aa,ga,Sa,Ca,Da,Ra,va,La,Na,ka,Ia,Ua,Ta,Oa,Va,"symlink",Wa,Ma,"crc32",Ba,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",Ka,"unixExternalUpper",qa,Pa,Ja,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class Ha{constructor(e){Za.forEach(t=>this[t]=e[t])}}const Ga=new u([1,Q,10,_,28789,25461,$,ee,te,22613,13]);function Ya(e,t,n){return e?t?12:16+4*n:0}const Xa="File format is not recognized",ja="End of central directory not found",Qa="End of Zip64 central directory locator not found",_a="Central directory header not found",$a="Local file header not found",ei="Zip64 extra field not found",ti="File contains encrypted entry",ni="Encryption method not supported",ri="Split zip file",oi="Overlapping entry found",ai="Entry data out of bounds",ii="Ambiguous archive",si="Encrypted central directory is not supported",ci="Unsafe filename",ui="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",li="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",fi="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",di="64-bit value exceeds Number.MAX_SAFE_INTEGER",wi="unsorted central directory",pi="unknown version needed to extract",hi="compressed patched data",mi="malformed extra field",yi="unknown zip64 extensible data",gi="wrapped entries count",Si="appended data",Ei="prepended data",bi="prepended central directory",xi="trailing central directory data",zi="duplicate filename",Fi="mismatched zip64 end of central directory record",Ai="multiple end of central directory records",Ci="mismatched local file header (filename)",Di="mismatched local file header (general purpose bit flag)",Ri="mismatched local file header (compression method)",vi="mismatched local file header (crc32 or sizes)",Li=/^[a-zA-Z]:/,Ni=/(^|[\\/])\.\.([\\/]|$)/,ki="utf-8",Ii="cp437",Ui=[[ma,O],[ya,O],[ga,O],[Sa,V]],Ti={[V]:{ie:gs,bytes:4},[O]:{ie:Ss,bytes:8}},Oi=a(o.MAX_SAFE_INTEGER);class Vi{constructor(e,t={}){n.assign(this,{reader:new oa(e),options:t,se:{ce:new u,ue:[],le:[]}})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await sa(r),r.size!==fe&&r.readUint8Array||(r=new To(await Pn(r.readable)),await sa(r)),r.size<Y)throw new d(Xa);const o=t.warnings=[],a=ts(e,t.options),s=a==Ve,c=a!=Me,l=os(ds(t,e,Ie),a),f=function(e,t){if(e===fe)return t;if(!es(e))throw new d(li);return e}(ds(t,e,"filenameValidation"),a),p=ds(t,e,"normalizeFilename"),{fe:h,de:m}=await as(r,c,l);if(!h)throw await async function(e){return await $i(e)==B}(r)?new d(ri):new d(ja);c&&m>1&&fs(Ai);const y=kt(h);let g=gs(y,12),S=gs(y,16);const E=h.offset,b=ys(y,20),x=E+Y+b,z=r.size-x;z>l&&fs(Si),z>0&&fa(o,Si);let A=ys(y,4);const C=r.re||0;let D,R,v,L,N,k=ys(y,6),I=ys(y,10),U=0,T=j;const M=S==O||g==O||I==V||k==V;if(S!=O&&k!=V&&(S+=_i(r,k)),M){const e=h.offset>=X?await ua(r,h.offset-X,X):ge,t=kt(e);if(e.length==X&&gs(t,0)==H){S=_i(r,gs(t,4))+Ss(t,8);let e=await ua(r,S,j),a=kt(e);const c=h.offset-X-j;if((e.length<j||gs(a,0)!=Z)&&S!=c&&c>=0){const t=S;S=c,S>t&&(U=S-t),e=await ua(r,S,j),a=kt(e)}if(e.length<j||gs(a,0)!=Z)throw new d(Qa);if(v=!0,L=Ss(a,4)>44,L){const e=i.min(Ss(a,4)-44,r.size-S-j);e>0&&(T+=e,N=function(e){const t={rawExtensibleData:e};if(e.length>=28){const r=kt(e),o=ys(r,26);n.assign(t,{compressionMethod:ys(r,0),compressedSize:Ss(r,2),uncompressedSize:Ss(r,10),encryptionAlgorithm:ys(r,18),bitLength:ys(r,20),flags:ys(r,22),hashAlgorithm:ys(r,24),hashData:e.subarray(28,28+o)})}return t}(await ua(r,S+j,e)))}A==V?A=gs(a,16):A!=gs(a,16)&&ls(s,o,Fi),k==V?k=gs(a,20):k!=gs(a,20)&&ls(s,o,Fi),I==V?I=Ss(a,32):I!=Ss(a,32)&&ls(s,o,Fi),g==O?g=Ss(a,40):g!=Ss(a,40)&&ls(s,o,Fi),S=_i(r,k)+Ss(a,48)+U}}let K=g;const q=h.offset-(v?T+X:0);if(S>=r.size&&(U=r.size-S-g-Y,S=r.size-g-Y),C!=A)throw new d(ri);if(S<0)throw new d(Xa);let J=0,Q=await ua(r,S,g),_=kt(Q);if(g){if(Q.length<4)throw new d(Xa);const e=q-g;if(S!=e&&k==A){const t=gs(_,J)==P||Boolean(N&&N.compressedSize)||Ki(_);let n=!t;if(!n&&e>=0&&e+4<=r.size&&(n=gs(kt(await ua(r,e,4)),0)==P),n){const n=S;S=e,S>n&&(U+=S-n,D=t),Q=await ua(r,S,g),_=kt(Q)}}}const $=q-S;if(g!=$&&$>=0&&k==A&&(g=$,Q=await ua(r,S,g),_=kt(Q)),S<0||S>=r.size)throw new d(Xa);t.directoryOffset=S,t.directoryLength=K;const ee=ws(t,e,"decryptCentralDirectory");let te,ne;if(ee&&I&&Q.length>=4&&gs(_,0)!=P&&(L||Ki(_))){const e=function(e,t,n){const r=e&&e.compressedSize?e.compressedSize:t;return r>0&&r<=n?r:n}(N,K,Q.length);ne=Q.subarray(e),Q=await ee(Q.subarray(0,e),N),_=kt(Q),K=Q.length,te=!0}N&&!te&&(Q.length<4||gs(_,0)==P)&&fa(o,yi),R=S;const ce=ds(t,e,"filenameEncoding"),ue=ds(t,e,"commentEncoding"),le=new u;let de,we=-1;const pe=!s&&!v;!I&&pe&&(I=qi(_,Q,J),I&&fa(o,gi));for(let a=0;a<I;a++){const s=new Bi(r,t.options);if(J+G>Q.length||gs(_,J)!=P){if(0==a&&!te&&(L||Ki(_)))throw new d(si);throw new d(_a)}Ji(s,_,J+6);const c=Boolean(s.bitFlag.languageEncodingFlag),u=J+G,l=u+s.filenameLength+s.extraFieldLength,h=ys(_,J+4),m=!(h>>8),y=h>>8==3,g=ys(_,J+32),S=l+g,E=new w(Q.subarray(u,S)),b=E.subarray(0,s.filenameLength),x=E.subarray(s.filenameLength+s.extraFieldLength),z=c||!ce&&ho(b),A=c||!ue&&ho(x),C=gs(_,J+38),D=C&W,v={readOnly:Boolean(1&D),hidden:Boolean(2&D),system:Boolean(4&D),directory:Boolean(16&D),archive:Boolean(32&D)},N=gs(_,J+42),k=ws(t,e,"decodeText")||po,T=z?ki:ce||Ii,O=A?ki:ue||Ii;let M=k(b,T,Te);if(M===fe&&(M=po(b,T)),p){const e=p(M);e!==fe&&(M=e)}if(rs(M,f)){const e=new d(ci);throw e.filename=M,e}let B=k(x,O,Oe);B===fe&&(B=po(x,O)),n.assign(s,{index:a,we:te,versionMadeBy:h,msDosCompatible:m,zip64:!1,compressedSize:0,uncompressedSize:0,pe:g,offset:N,diskNumberStart:ys(_,J+34),internalFileAttributes:ys(_,J+36),externalFileAttributes:C,msdosAttributesRaw:D,msdosAttributes:v,rawFilename:b,filenameUTF8:z,commentUTF8:A,rawExtraField:E.subarray(s.filenameLength,s.filenameLength+s.extraFieldLength),rawComment:x,filename:M,comment:B}),Zi(s,s,_,J+6)&&fa(o,mi,M),s.offset+=U;const K=_i(r,s.diskNumberStart)+s.offset;R=i.min(K,R),K<we&&fa(o,wi,M),we=K,(s.version&W)>63&&fa(o,pi,M),32&~s.rawBitFlag||fa(o,hi,M),le.has(s.filename)&&(de=!0),le.add(s.filename);const q=s.externalFileAttributes>>16&V;s.unixMode===fe&&16877&q&&(s.unixMode=q);const Z=Boolean(s.unixMode&ae),H=Boolean(s.unixMode&ie),Y=Boolean(512&s.unixMode),X=40960==((s.unixMode===fe?q:s.unixMode)&re),j=!X&&(s.unixMode!==fe?!!(73&s.unixMode):y&&!!(73&q)),$=s.unixMode!==fe&&(s.unixMode&re)==oe,ee=(q&re)==oe;n.assign(s,{setuid:Z,setgid:H,sticky:Y,symlink:X,unixExternalUpper:q,executable:j,directory:$||ee||m&&v.directory||s.filename.endsWith(se),zipCrypto:s.encrypted&&!s.extraFieldAES});const ne=new Ha(s);if(ne.getData=(e,n)=>s.getData(e,ne,t.se,n),ne.arrayBuffer=async e=>{const r=new F,o=Pn(r.readable).then(e=>e.arrayBuffer());return o.catch(()=>{}),await s.getData(r,ne,t.se,n.assign({},e,{preventClose:!1})),o},J=S,a==I-1&&pe){const e=qi(_,Q,J);e&&(I+=e,fa(o,gi))}const{onprogress:he}=e;if(he)try{await he(a+1,I,new Ha(s))}catch{}yield ne}let he=J,me=Pi(Q.subarray(J))||(te?Pi(ne):fe);if(!me&&!te){const e=S+J,t=i.min(q-e,65541);t>=6&&(me=Pi(await ua(r,e,t)))}me&&(t.digitalSignature=me,he=J+6+me.length),(J!=K&&he!=K||!te&&J!=g&&he!=g)&&ls(s,o,xi),de&&ls(s,o,zi);const ye=ds(t,e,"extractPrependedData"),Se=ds(t,e,"extractAppendedData"),Ee=(s||ye)&&I&&4==R&&await async function(e){const t=await $i(e);return t==B||808471376==t}(r)?4:0;return s&&(U||I&&R>Ee)&&fs(Ei),(U||I&&R>4)&&fa(o,Ei),D&&fa(o,bi),ye&&(t.prependedData=R>Ee?await ua(r,Ee,R-Ee):ge),t.comment=b?await ua(r,E+Y,b):ge,Se&&(t.appendedData=x<r.size?await ua(r,x,r.size-x):ge),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){const{reader:e}=this;e.readUint8Array||!e.readable||e.readable.locked||await e.readable.cancel()}[Se](){return this.close()}}class Wi{constructor(e={}){let r;const{readable:o,writable:a}=new F({start(e){r=e}}),i=new Vi(o,e),s=i.getEntriesGenerator(),c=new u;this.readable=new A({async pull(e){const{done:t,value:r}=await s.next();if(t)return e.close();const o=function(e,t){const{readable:n,writable:r}=new F;let o;const a={cancel:async e=>{t.delete(a),await(o?o.cancel(e):n.cancel(e))}};return a.readable=new A({async pull(i){o||(o=n.getReader(),t.add(a),async function(){try{await e.getData(r,{preventClose:!1})}catch(e){try{await r.abort(e)}catch{}}finally{t.delete(a)}}());const{done:s,value:c}=await o.read();s?i.close():i.enqueue(c)},cancel:e=>a.cancel(e)},{highWaterMark:0}),a}(r,c),a={...r,readable:o.readable};delete a.getData,n.defineProperties(a,{localDirectory:{get:()=>r.localDirectory,enumerable:!0},warnings:{get:()=>r.warnings,enumerable:!0}}),e.enqueue(a)},async cancel(e){const n=t.from(c);c.clear(),r.error(e),await g.allSettled(n.map(t=>t.cancel(e))),await g.allSettled([s.return(),i.close()])}}),this.writable=a}}async function Mi(e,t={}){if(e=new oa(e),await sa(e),e.size!==fe&&e.readUint8Array||(e=new To(await Pn(e.readable)),await sa(e)),e.size<Y)return!1;const n=ts(t,{}),r=n!=Me,o=os(t[Ie],n),{fe:a,de:i}=await as(e,r,o);if(!a||n==Ve&&i>1)return!1;const s=ys(kt(a),20),c=a.offset+Y+s;return e.size-c<=o}class Bi{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,r,o={}){const a=this,s=dt(),{reader:c,index:u,offset:l,diskNumberStart:f,extraFieldAES:w,extraFieldZip64:p,compressionMethod:h,bitFlag:m,rawBitFlag:y,crc32:g,rawLastModDate:S,uncompressedSize:E,compressedSize:b}=a,{dataDescriptor:x}=m,z=t.localDirectory={},F=t.warnings=[],A=_i(c,f)+l,D=await ua(c,A,ce),R=kt(D);let v=ds(a,o,Ee),L=ds(a,o,be);const N=je(ds(a,o,xe)),k=Boolean(N),I=!0===N;if(Xe(v,L),v=v&&v.length?v:fe,L=L&&L.length?L:fe,w&&99!=w.originalCompressionMethod)throw new d(Yn);if(D.length<ce||gs(R,0)!=M)throw new d($a);Ji(z,R,4);const{extraFieldLength:U,filenameLength:T}=z,O=z.dataOffset=A+ce+T+U,V=ds(a,o,"checkLocalDirectory"),B=ts(o,a.options),q=function(e,t){return e===fe?t!=Me:Boolean(e)}(V,B),P=ds(a,o,"checkLocalFilename"),J=function(e,t){return e===fe?t==Ve:Boolean(e)}(P===fe?V:P,B);let Z=ge;if(J&&(T||U)){const e=await ua(c,A+ce,T+U);Z=e.subarray(0,T),z.rawExtraField=e.subarray(T)}else z.rawExtraField=U?await ua(c,A+ce+T,U):ge;J&&(z.rawFilename=Z),Zi(a,z,R,4,!0)&&fa(F,mi),function(e,t,n,r,o){const{rawFilename:a}=e,i=!o,s=e.we&&!(8192&~t.rawBitFlag);!r||s||n.length==a.length&&!n.some((e,t)=>e!=a[t])||ls(i,o,Ci),(2057&t.rawBitFlag)!=(2057&e.rawBitFlag)&&ls(i,o,Di),t.compressionMethod!=e.compressionMethod&&ls(i,o,Ri),t.bitFlag.dataDescriptor||s||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||ls(i,o,vi)}(a,z,Z,J,q?fe:F);const{lastAccessDate:H,creationDate:G,uid:Y,gid:X}=z;H&&(t.lastAccessDate=H),G&&(t.creationDate=G),Y!==fe&&t.uid===fe&&(t.uid=Y),X!==fe&&t.gid===fe&&(t.gid=X);const j=ds(a,o,"checkPasswordOnly"),Q=a.encrypted&&z.encrypted&&(!I||j),_=Q&&!w;if(I||(t.zipCrypto=_),Q&&!(64&~z.rawBitFlag))throw new d(ni);const $=k?fe:_n(h);if(0!=h&&8!=h&&9!=h&&!$&&!k)throw new d(Yn);if(Q){if(!_&&(w.strength<1||w.strength>3))throw new d(ni);if(!v&&!L)throw new d(ti)}if(O+b>c.size)throw new d(ai);const ee=b,te=Ge(ds(a,o,ze));Ye(te);let ne=ds(a,o,"checkOverlappingEntry");const re=ds(a,o,"checkOverlappingEntryOnly");re&&(ne=!0);const{onstart:oe,onprogress:ae,onend:ie}=o,se=0!=h&&!k,ue=k?b-Ya(Q,_,w&&w.strength):E,le=9==h;let de=ds(a,o,Ae);le&&(de=!1);const we=ds(a,o,"checkCrc32"),pe=(we===fe?ds(a,o,"checkSignature"):we)&&!k&&(!Q||_||w&&1==w.vendorVersion),he={options:{codecType:Ar,password:v,rawPassword:L,zipCrypto:_,encryptionStrength:w&&w.strength,checkCrc32:pe,checkAuthenticationCode:ds(a,o,"checkAuthenticationCode"),passwordVerification:_&&(x?S>>>8&W:g>>>24&W),outputSize:ue,crc32:g,compressed:se,encrypted:Q,useWebWorkers:ds(a,o,Fe),useCompressionStream:de,transferStreams:ds(a,o,Ce),deflate64:le,format:$?$.format:fe,codecURI:$?$.codecURI:fe,compressionMethod:h,rawBitFlag:y,checkPasswordOnly:j},config:s,R:{signal:te,size:ee,onstart:oe,onprogress:ae,onend:ie}};let me,ye,Se;ne&&await async function({reader:e,he:t,index:n,offset:r,crc32:o,compressedSize:a,uncompressedSize:i,dataOffset:s,dataDescriptor:c,extraFieldZip64:u,se:l}){let f=0;if(c&&(f=u?20:12),f){const n=await ua(e,s+a,f+4),r=kt(n);let c=n.length==f+4&&gs(r,0)==K;if(c){const e=Qi(r,4,u);(t.encrypted&&!t.zipCrypto||e.crc32==o)&&e.compressedSize==a&&e.uncompressedSize==i?f+=4:c=!1}if(n.length>=f){const e=Qi(r,c?4:0,u);e.signature=c,t.localDirectory.dataDescriptor=e}}const w={start:r,end:s+a+f,he:t},{ce:p,ue:h,le:m}=l;if(!p.has(n)){const e=function(e,t){let n=0,r=e.length;for(;n<r;){const o=n+r>>>1;e[o].start<t.start?n=o+1:r=o}const o=e[n-1],a=e[n];return o&&ji(t,o)?o:a&&ji(t,a)?a:void 0}(h,w)||m.find(e=>ji(w,e));if(e){const t=new d(oi);throw t.overlappingEntry=e.he,t}p.add(n),m.push(w),m.length*m.length>h.length&&(m.sort((e,t)=>e.start-t.start),l.ue=function(e,t){const n=[];let r=0,o=0;for(;r<e.length||o<t.length;)o==t.length||r<e.length&&e[r].start<t[o].start?n.push(e[r++]):n.push(t[o++]);return n}(h,m),m.length=0)}}({reader:c,he:t,index:u,offset:A,crc32:g,compressedSize:b,uncompressedSize:E,dataOffset:O,dataDescriptor:x||z.bitFlag.dataDescriptor,extraFieldZip64:p||z.extraFieldZip64,se:r});try{if(!re){j&&(e=new C),e=new aa(e),await sa(e,function(e,t,n){return i.min(e,n?1032*t:t)}(ue,b,se)),({writable:me}=e);const t=qn(c.createReadable({offset:O,size:ee})),{outputSize:r}=await oo({readable:t,writable:me},he);if(r!=ue)throw n.assign(new d(nr),{outputSize:r});e.size+=r}}catch(t){const{outputSize:n}=he;if(n!==fe?e.size+=n:It(t)&&t.outputSize!==fe&&(e.size+=t.outputSize),!j||!It(t)||t.message!=fn)throw ye=t,Se=!0,t}finally{if((ia(e)||!ds(a,o,De))&&me&&!me.locked){const e=me.getWriter();if(Se)try{await e.abort(ye)}catch{}else await e.close()}}return j||re?fe:e.getData?e.getData():me}}function Ki(e){const t=i.min(e.byteLength,1024)-3;for(let n=0;n<t;n++)if(134630224==gs(e,n))return!0;return!1}function qi(e,t,n){let r=0;for(;n+G<=t.length&&gs(e,n)==P;)n+=G+ys(e,n+28)+ys(e,n+30)+ys(e,n+32),r++;return r%65536?0:r}function Pi(e){if(e.length>=6){const t=kt(e);if(gs(t,0)==q){const n=ys(t,4);if(6+n<=e.length)return new w(e.subarray(6,6+n))}}}function Ji(e,t,r){const o=e.rawBitFlag=ys(t,r+2),a=!(1&~o),i=gs(t,r+6);n.assign(e,{encrypted:a,version:ys(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&ne)==ne},rawLastModDate:i,lastModDate:ps(i),filenameLength:ys(t,r+22),extraFieldLength:ys(t,r+24)})}function Zi(e,t,r,o,a){const{rawExtraField:i}=t,u=t.extraField=new c,l=kt(i);let f=0,w=!1;try{for(;f<i.length;){const e=ys(l,f),t=ys(l,f+2);u.set(e,{type:e,data:i.slice(f+4,f+4+t)}),f+=4+t}}catch{w=!0}f>i.length&&(w=!0);const p=ys(r,o+4);n.assign(t,{signature:gs(r,o+10),crc32:gs(r,o+10),compressedSize:gs(r,o+14),uncompressedSize:gs(r,o+18)});const h=u.get(1);h&&(function(e,t){t.zip64=!0;const n=kt(e.data),r=Ui.filter(([e,n])=>t[e]==n),o=r.reduce((e,[,t])=>e+Ti[t].bytes,0);if(e.data.length<o)throw new d(ei);for(let o=0,a=0;o<r.length;o++){const[i,s]=r[o],c=Ti[s];t[i]=e[i]=c.ie(n,a),a+=c.bytes}}(h,t),t.extraFieldZip64=h);const m=u.get(28789);m&&(Hi(m,da,wa,t,e),t.extraFieldUnicodePath=m);const y=u.get(25461);y&&(Hi(y,pa,ha,t,e),t.extraFieldUnicodeComment=y);const g=u.get(Q);g&&g.data.length>=7?(function(e,t,r){const o=kt(e.data),a=ms(o,4);n.assign(e,{vendorVersion:ms(o,0),vendorId:ms(o,2),strength:a,originalCompressionMethod:r,compressionMethod:ys(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=fe)}(g,t,p),t.extraFieldAES=g):t.compressionMethod=p;const S=u.get(13);S&&(Gi(S,t),t.extraFieldPkwareUnix=S);const E=u.get(22613);E&&(Gi(E,t),t.extraFieldUnixType1=E);const b=u.get(10);b&&(function(e,t){const r=kt(e.data);let o,a=4;try{for(;a<e.data.length&&!o;){const t=ys(r,a),n=ys(r,a+2);1==t&&(o=e.data.slice(a+4,a+4+n)),a+=4+n}}catch{}if(o&&24==o.length){const r=kt(o),a=r.getBigUint64(0,!0),i=r.getBigUint64(8,!0),s=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:a,rawLastAccessDate:i,rawCreationDate:s});const c={lastModDate:hs(a),lastAccessDate:hs(i),creationDate:hs(s)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:i,rawCreationDate:s})}}(b,t),t.extraFieldNTFS=b);const x=u.get(te);let z;if(x&&(z=Yi(x,t,!1),t.extraFieldUnix=x),!z){const e=u.get(ee);e&&(Yi(e,t,!0),t.extraFieldInfoZip=e)}const F=u.get(_);F&&(function(e,t,n){if(!e.data.length)return;const r=kt(e.data),o=ms(r,0),a=[],i=[];n?(1&~o||(a.push(Ea),i.push(ba)),2&~o||(a.push(xa),i.push(za)),4&~o||(a.push(Fa),i.push(Aa))):e.data.length>=5&&(a.push(Ea),i.push(ba));let c=1;a.forEach((n,o)=>{if(e.data.length>=c+4){const a=gs(r,c);t[n]=e[n]=new s(1e3*(0|a));const u=i[o];e[u]=a}c+=4})}(F,t,a),t.extraFieldExtendedTimestamp=F);const A=u.get($);return A&&(t.extraFieldUSDZ=A),w}function Hi(e,t,r,o,a){if(e.data.length<5)return void(e.valid=!1);const i=kt(e.data),s=new Pt;s.append(a[r]);const c=kt(new w(4));c.setUint32(0,s.get(),!0);const u=gs(i,1),l=ms(i,0);n.assign(e,{version:l,[t]:po(e.data.subarray(5)),valid:1==l&&!a.bitFlag.languageEncodingFlag&&u==gs(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function Gi(e,t){if(e.data.length<8)return;const r=kt(e.data),o={lastAccessDate:new s(1e3*(0|gs(r,0))),lastModDate:new s(1e3*(0|gs(r,4)))};e.data.length>=12&&(o.uid=ys(r,8),o.gid=ys(r,10)),n.assign(e,o),n.assign(t,o)}function Yi(e,t,r){try{const o=kt(e.data);let a,i;if(r){let t=0;const r=ms(o,t++),s=ms(o,t++);a=Xi(e.data.subarray(t,t+s)),t+=s;const c=ms(o,t++);i=Xi(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:a,gid:i})}else e.data.length>=4&&(a=ys(o,0),i=ys(o,2),n.assign(e,{uid:a,gid:i}));return a!==fe&&(t.uid=a),i!==fe&&(t.gid=i),a!==fe||i!==fe}catch{}}function Xi(e){const t=new w(4);return t.set(e,0),new m(t.buffer,t.byteOffset,4).getUint32(0,!0)}function ji(e,t){return e.start<t.end&&t.start<e.end}function Qi(e,t,n){const r=gs(e,t);let o,a;return n?(o=Ss(e,t+4),a=Ss(e,t+12)):(o=gs(e,t+4),a=gs(e,t+8)),{crc32:r,compressedSize:o,uncompressedSize:a}}function _i(e,t){return e.ae?e.ae(t):0}async function $i(e){return gs(kt(await ua(e,0,4)))}function es(e){return e===Ve||e===We||e===Me}function ts(e,t){return ns(e,ns(t,We))}function ns(e,t){const n=e.strictness;if(n!==fe){if(!es(n))throw new d(ui);return n}const r=e.checkAmbiguity;return r===fe?t:r?Ve:t==Me?Me:We}function rs(e,t){if(t==Me)return!1;const n=e.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(Ni.test(e)||e.startsWith("/")||e.startsWith("\\")||Li.test(e))||t==Ve&&(n.includes(".")||n.includes("")||e.includes("\0"))}function os(e,t){if(e!==fe){const t=$e(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new d(fi);return t}return t==Ve?0:t==Me?1/0:V}async function as(e,t,n){const{size:r}=e,o=i.min(r,65557),a={me:64};let s,c,u=0;for await(const[n,i,l,f,d]of is(e,o)){const o=ys(n,f+20);if(d+Y+o==r){const o=await cs(e,n,i,f,d,r,a);if(2==o){if(s||(s=ss(l,f,d)),u++,!t||u>1)break}else 1!=o||c||(c=ss(l,f,d))}}return s||(s=c),s||(s=await async function(e,t,n){const{size:r}=e,o=i.min(r,t==1/0?r:65557+t);let a,s;for await(const[t,i,c,u,l]of is(e,o)){const o=ss(c,u,l);a||(a=o);const f=await cs(e,t,i,u,l,r,n);if(2==f)return o;1!=f||s||(s=o)}return s||a}(e,n,a)),{fe:s,de:u}}async function*is(e,t){const n=e.size-t,r=await ua(e,n,t),o=kt(r);for(let e=r.length-Y;e>=0;e--)gs(o,e)==J&&(yield[o,n,r,e,n+e])}function ss(e,t,n){return{offset:n,buffer:new w(e.subarray(t,t+Y)).buffer}}async function cs(e,t,n,r,o,a,i){const s=ys(t,r+10),c=gs(t,r+12),u=gs(t,r+16);if(s==V||c==O||u==O)return await us(e,t,n,o-X,a,i)==H?2:0;if(!s&&!c)return 1;const l=ys(t,r+6);for(const r of[o-c,_i(e,l)+u])if(await us(e,t,n,r,a,i)==P)return 2;return 0}async function us(e,t,n,r,o,a){return r<0||r+4>o?fe:r>=n?gs(t,r-n):a.me>0?(a.me--,gs(kt(await ua(e,r,4)),0)):fe}function ls(e,t,n){e?fs(n):fa(t,n)}function fs(e){const t=new d(ii);throw t.reason=e,t}function ds(e,t,n){return t[n]===fe?e.options[n]:t[n]}function ws(e,t,n){return He(ds(e,t,n))}function ps(e){const t=(4294901760&e)>>16,n=e&V,r=new s(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<le?le:r}function hs(e){return new s(o(e/a(1e4)-a(116444736e5)))}function ms(e,t){return e.getUint8(t)}function ys(e,t){return e.getUint16(t,!0)}function gs(e,t){return e.getUint32(t,!0)}function Ss(e,t){const n=e.getBigUint64(t,!0);if(n>Oi)throw new d(di);return o(n)}var Es=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:ii,ERR_BAD_FORMAT:Xa,ERR_CENTRAL_DIRECTORY_NOT_FOUND:_a,ERR_ENCRYPTED:ti,ERR_ENCRYPTED_CENTRAL_DIRECTORY:si,ERR_ENTRY_DATA_OUT_OF_BOUNDS:ai,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Qa,ERR_EOCDR_NOT_FOUND:ja,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:ei,ERR_INVALID_AUTHENTICATION_CODE:ln,ERR_INVALID_COMPRESSED_DATA:rr,ERR_INVALID_CRC32:or,ERR_INVALID_FILENAME_VALIDATION:li,ERR_INVALID_MAX_APPENDED_DATA_SIZE:fi,ERR_INVALID_PASSWORD:un,ERR_INVALID_STRICTNESS:ui,ERR_INVALID_UNCOMPRESSED_SIZE:nr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:$a,ERR_OVERLAPPING_ENTRY:oi,ERR_SPLIT_ZIP_FILE:ri,ERR_UNSAFE_FILENAME:ci,ERR_UNSUPPORTED_COMPRESSION:Yn,ERR_UNSUPPORTED_ENCRYPTION:ni,ERR_UNSUPPORTED_UINT64:di,ERR_WORKER_STARTUP_TIMEOUT:Rr,WARNING_APPENDED_DATA:Si,WARNING_COMPRESSED_PATCHED_DATA:hi,WARNING_DUPLICATE_FILENAME:zi,WARNING_MALFORMED_EXTRA_FIELD:mi,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Di,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:Ri,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:vi,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:Ci,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:Fi,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:Ai,WARNING_PREPENDED_CENTRAL_DIRECTORY:bi,WARNING_PREPENDED_DATA:Ei,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:xi,WARNING_UNKNOWN_VERSION:pi,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:yi,WARNING_UNSORTED_CENTRAL_DIRECTORY:wi,WARNING_WRAPPED_ENTRIES_COUNT:gi,ZipReader:Vi,ZipReaderStream:Wi,isZipFile:Mi});const bs="File already exists",xs="Zip file comment exceeds 64KB",zs="Invalid zip file comment (must be a Uint8Array)",Fs="File entry comment exceeds 64KB",As="Invalid file entry comment (must be a string)",Cs="Invalid date (must be a valid Date instance)",Ds="File entry name exceeds 64KB",Rs="Version exceeds 65535",vs="The strength must equal 1, 2, or 3",Ls="Encryption is not supported in USDZ files",Ns="Split zip files are not supported in USDZ files",ks="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",Is="Invalid extra field (must be a Map)",Us="Invalid extra field type (must be integer 0..65535)",Ts="Invalid extra field data (must be a Uint8Array)",Os="Extra field data exceeds 64KB",Vs=-2147483648,Ws=2147483647,Ms=a(0),Bs=a("0x7fffffffffffffff"),Ks="Zip64 is not supported (set the 'zip64' option to 'true')",qs="Undefined uncompressed size",Ps="Undefined compression method",Js="Undefined CRC32",Zs="Undefined reader",Hs="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",Gs="Zip file not empty",Ys="Invalid uid (must be integer 0..2^32-1)",Xs="Invalid gid (must be integer 0..2^32-1)",js="Invalid UNIX mode (must be integer 0..65535)",Qs="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",_s="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",$s="Invalid msdosAttributesRaw (must be integer 0..255)",ec="Invalid msdosAttributes (must be an object with boolean flags)",tc="Invalid level (must be integer 0..9)",nc="Signature data exceeds 64KB",rc="Invalid entry option (must be an entry returned by ZipReader#getEntries())",oc="The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set",ac="compression unavailable",ic="clamped last modification date",sc=new w([7,0,2,0,65,69,3,0,0]),cc="infozip",uc="unix",lc=[8,9,5,3];let fc=0;const dc=[];class wc{constructor(e,t={}){e=new aa(e);const{availableSize:r=de,maxSize:o=de}=e,a=r>0&&r!==de&&o>0&&o!==de;if(a&&t[ke])throw new d(Ns);n.assign(this,{writer:e,ye:a,options:t,ge:new c,Se:new u,offset:t[Ne]===fe?e.size||e.writable.size||0:t[Ne],Ee:t[Ne]===fe?0:t[Ne]-(e.size||e.writable.size||0),be:new u,xe:[],warnings:[],ze:0,Fe:0,Ae:fe,Ce:!1})}prependZip(e){return mc(this,async function(e,t){if(e.Se.size)throw new d(Gs);await e.De(t)}(this,e))}appendZip(e){return mc(this,this.De(e))}async De(e){const r=this,{be:o,Se:a,ge:i}=r;for(;o.size;)await g.allSettled(t.from(o));let s;const u=new g(e=>s=e);o.add(u);const l=[];let f;try{e=new oa(e),await sa(e),e.size!==fe&&e.readUint8Array||(e=new To(await Pn(e.readable)),await sa(e));const{ZipReader:o}=await g.resolve().then(function(){return Es}),s=new o(e),u=await s.getEntries();await s.close(),await sa(r.writer);const{directoryOffset:w}=s;u.forEach(({filename:e})=>{if(a.has(e))throw new d(bs);a.add(e),l.push(e)}),r.Re=!0;const{ve:p}=r;r.ve=new g(e=>f=()=>{r.Re=!1,e()}),await p,r.ye&&(delete r.ye,await async function(e){return kt(await ua(e,0,4)).getUint32(0,!0)==B}(e)||(await Ic(r.writer,Nc()),r.offset+=4));const h=await async function(e,n,r,o){const{writer:a}=e,i=new c;if(a.closeDisk){const s=t.from(r).sort((e,t)=>Lc(n,e)-Lc(n,t));let c=0;for(const t of s){const r=Lc(n,t);await Rc(e,n,c,r-c),Ac(a,await vc(n,r))&&await a.closeDisk(),i.set(t,{offset:Cc(e,a),diskNumberStart:zc(a)}),c=r}await Rc(e,n,c,o-c)}else{const t=e.offset;await Rc(e,n,0,o),r.forEach(e=>i.set(e,{offset:t+Lc(n,e),diskNumberStart:0}))}return i}(r,e,u,w);u.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,bitFlag:a,encrypted:s,uncompressedSize:c,compressedSize:u,extraFieldZip64:l}=e;let{compressionMethod:f,rawExtraField:d}=e;const{level:w,languageEncodingFlag:p,dataDescriptor:m}=a;d=Dc(d||ge),e.extraFieldAES&&(f=99);const y=Xc(d),g=Boolean(l)&&l.uncompressedSize!==fe,S=Boolean(l)&&l.compressedSize!==fe,E=-7&_c(w,p,m,s,f)|w<<1,{Le:b,Ne:x}=jc({version:t,bitFlag:E,compressionMethod:f,uncompressedSize:c,compressedSize:u,rawLastModDate:r,rawFilename:o,ke:S,Ie:g,extraFieldLength:y}),{crc32:z}=e;z!==fe&&Hc(x,10,z);const{offset:F,diskNumberStart:A}=h.get(e);n.assign(e,{Ue:!0,Ie:g,ke:S,offset:F,diskNumberStart:A,Te:!1,Oe:ge,Ve:ge,We:ge,Me:ge,Be:ge,rawExtraField:d,Ke:ge,Le:b,Ne:x}),i.set(e.filename,e)})}catch(e){throw l.forEach(e=>a.delete(e)),e}finally{s(),o.delete(u),f&&f()}}add(e="",r,u={}){const l=this,{be:f}=l,p=async function(e,r,u,l){const f=(l=n.assign({},l))[Ue];if(f!==fe){const{qe:r,Pe:o}=function(e,r,o){if(null===e||typeof e!=he||t.isArray(e))throw new d(rc);const{externalFileAttributes:a,versionMadeBy:u,comment:l,lastModDate:f,rawLastModDate:w,creationDate:p,lastAccessDate:h,uncompressedSize:m,encrypted:y,zipCrypto:g,crc32:S,compressionMethod:E,extraFieldAES:b,extraFieldUnix:x,internalFileAttributes:z,extraField:F,bitFlag:A,directory:C,uid:D,gid:R}=e,v={externalFileAttributes:a,versionMadeBy:u,comment:l,lastModDate:f,creationDate:p,lastAccessDate:h,internalFileAttributes:z,directory:C};A&&A.languageEncodingFlag&&(v[ve]=!0);const L=function(e){if(e){const t=new c;if(e.forEach((e,n)=>{Ga.has(n)||t.set(n,e.data)}),t.size)return t}}(F);L&&(v[Ba]=L),D===fe&&R===fe||n.assign(v,{uid:D,gid:R,unixExtraFieldType:x?uc:cc});const N={};if(r&&!C)if(n.assign(N,{uncompressedSize:m,crc32:S,compressionMethod:E}),r!==Be&&n.assign(N,{encrypted:y,zipCrypto:g,encryptionStrength:b?b.strength:fe}),A&&(N.dataDescriptor=A.dataDescriptor,N[Re]=lc[A.level]),o===fe)N.rawLastModDate=w;else if(r!==Be&&g&&(!A||A.dataDescriptor)&&o instanceof s&&function(e){let t=new s(2e3*i.ceil(i.floor(e.getTime()/1e3)/2));return t<le?t=le:t>ue&&(t=ue),(t.getHours()<<3|t.getMinutes()>>3)&W}(o)!=(w>>>8&W))throw new d(oc);return{qe:v,Pe:N}}(f,je(Wc(e,l,xe)),Wc(e,l,Ea));delete l[Ue],l=n.assign(r,o,l)}if(Wc(e,l,Oa)&&!r.endsWith(se)&&(r+=se),e.Se.has(r))throw new d(bs);e.Se.add(r),fc<dt().maxWorkers?fc++:await new g(e=>dc.push(e));try{return await async function(e,r,c,u){const l=function(e,n,r){let o=Wc(e,r,La),a=Wc(e,r,Ua,o?20:768);const i=Wc(e,r,Va),s=Kc(e,r,"uid"),c=Kc(e,r,"gid");let u=Kc(e,r,Ka),l=Wc(e,r,"unixExtraFieldType"),f=Wc(e,r,qa),w=Wc(e,r,Pa),p=Wc(e,r,Ja);if(_e(s,O,Ys),_e(c,O,Xs),_e(u,V,js),l!==fe&&l!==cc&&l!==uc)throw new d(Qs);if(l===uc&&(s!==fe&&s>V||c!==fe&&c>V))throw new d(_s);l!==fe||s===fe&&c===fe||(l=cc);let h=Kc(e,r,Ra),m=Wc(e,r,va);const y=h!==fe||m!==fe;if(s!==fe||c!==fe||u!==fe||l||i?(o=!1,a=a&W|768):y&&(o=!0,a&=W),_e(h,W,$s),m&&(typeof m!==he||t.isArray(m)))throw new d(ec);if(a>V)throw new d(Rs);let g=Wc(e,r,Da);const S=g!==fe;S||(g=0),!r[Oa]&&n.endsWith(se)&&(r[Oa]=!0);const E=Wc(e,r,Oa);if(E?(n.endsWith(se)||(n+=se),S||(g=16,o||(g|=16877<<16))):o||S||(g=i?493<<16:27525120),!o){const e=u!==fe||Boolean(f||w||p);u=u===fe?g>>16&V:u&V,f?u|=ae:f=Boolean(u&ae),w?u|=ie:w=Boolean(u&ie),p?u|=512:p=Boolean(512&u),S&&!e||(E?u=-61441&u|oe:u&re||(u|=32768),g=(u&V)<<16|g&V)}({msdosAttributesRaw:h,msdosAttributes:m}=function(e,t){if(e!==fe)e&=W;else if(t!==fe){const{readOnly:n,hidden:r,system:o,directory:a,archive:i}=t;let s=0;n&&(s|=1),r&&(s|=2),o&&(s|=4),a&&(s|=16),i&&(s|=32),e=s&W}return t===fe&&(t={readOnly:Boolean(1&e),hidden:Boolean(2&e),system:Boolean(4&e),directory:Boolean(16&e),archive:Boolean(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}}(h,m)),y&&(g=g&O|h&W);const b=g>>16&V,x=u!==fe&&40960==(u&re);return{name:n,Je:{versionMadeBy:a,msDosCompatible:Boolean(o),externalFileAttributes:g,unixExternalUpper:b,uid:s,gid:c,unixMode:u,unixExtraFieldType:l,symlink:x,setuid:f,setgid:w,sticky:p,msdosAttributesRaw:h,msdosAttributes:m}}}(e,r,u);({name:r}=l);const f=function(e,t,n){const r=Bc(e,n,"encodeText")||Zt;let a=r(t,Te);if(a===fe&&(a=Zt(t)),Xc(a)>V)throw new d(Ds);const i=n[pa]||"";if(typeof i!=me)throw new d(As);let c=r(i,Oe);if(c===fe&&(c=Zt(i)),Xc(c)>V)throw new d(Fs);const u=Wc(e,n,Ia);if(u!==fe&&u>V)throw new d(Rs);const l=Mc(e,n,Ea,new s),f=Wc(e,n,ba),w=Mc(e,n,xa),p=Mc(e,n,Fa),h=Wc(e,n,Ca,0),m=je(Wc(e,n,xe)),y=Boolean(m),g=!0===m;let S=Wc(e,n,Ee),E=Wc(e,n,be);Xe(S,E),S=S&&S.length?S:fe,E=E&&E.length?E:fe;const b=Kc(e,n,"encryptionStrength",3),x=Wc(e,n,Ta),z=Wc(e,n,"extendedTimestamp",!0),F=Wc(e,n,"ntfsTimestamp"),A=Wc(e,n,"keepOrder",!0),C=Wc(e,n,Fe),D=Wc(e,n,Ce),R=Wc(e,n,"bufferedWrite"),v=Bc(e,n,"createTempStream"),L=Wc(e,n,"dataDescriptorSignature",!0),N=Ge(Wc(e,n,ze));Ye(N);const k=Wc(e,n,ve,!Qc(a)||!Qc(c)),I=Wc(e,n,Wa),U=y||I===fe?fe:_n(I);if(!y&&I!==fe&&0!==I&&8!==I&&!U)throw new d(Yn);let T=Kc(e,n,Re);if(_e(T,9,tc),e.options[ke]){if(S!==fe||E!==fe)throw new d(Ls);T===fe&&I===fe&&(T=0)}y&&(T=$e(n[Re]));let O=Wc(e,n,Ae),W=Wc(e,n,Le);R&&W===fe&&(W=!1),(W===fe||x&&!g)&&(W=!0),T!==fe&&6!=T&&(O=!1);const M=Wc(e,n,Na);if(!(x||S===fe&&E===fe||o.isInteger(b)&&b>=1&&b<=3))throw new d(vs);const B=Sc(n[Ba]),K=Sc(n.localExtraField),q=Sc(n.centralExtraField);return{comment:i,Je:{rawFilename:a,rawComment:c,version:u,lastModDate:l,rawLastModDate:f,lastAccessDate:w,creationDate:p,internalFileAttributes:h,Ze:y,He:g,password:S,rawPassword:E,encryptionStrength:b,zipCrypto:x,extendedTimestamp:z,ntfsTimestamp:F,keepOrder:A,useWebWorkers:C,transferStreams:D,bufferedWrite:R,createTempStream:v,dataDescriptorSignature:L,signal:N,useUnicodeFileNames:k,compressionMethod:I,format:U?U.format:fe,codecURI:U?U.codecURI:fe,Ge:U?U.versionNeeded:fe,level:T,useCompressionStream:O,dataDescriptor:W,zip64:M,rawExtraField:B,Ye:K,Ke:q}}}(e,r,u),{comment:p}=f,h=u[Ba];e.ge.set(r,fe);const m=e.Ae,y={};let S,E;f.Je.keepOrder&&(y.Xe=new g(e=>S=e)),e.Ae=y;try{const{Je:t}=f;0==t.level||t.compressionMethod!==fe||t.Ze||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;return!(!n||n.requiresModule)||!(!pr(t)&&(r=t,!wr(r,sr)))||!!n&&await Ir();var r}(dt())||(t.level=0,fa(e.warnings,ac,r));const o=await async function(e,t,{Je:r},o){if(r.Ze&&!t&&!Wc(e,o,Oa))throw new d(Zs);let a;if(t){if(t=new oa(t),await sa(t),!t.readable&&!t.readUint8Array)throw new d(Hs);({size:a}=t)}return n.assign({reader:t},function(e,t,n,r,o){const{Ze:a,He:i,zipCrypto:s,password:c,rawPassword:u,encryptionStrength:l}=r;let{dataDescriptor:f,zip64:w,level:p,compressionMethod:h}=r,m=0,y=0,g=!1;if(a&&t){if(y=o[ma],y===fe)throw new d(qs);if(h===fe)throw new d(Ps)}const S=!0===w,E=Wc(e,o,ka);if(t&&i&&!E&&Xc(c,u))throw new d(ks);const b=t&&(Boolean(c&&Xc(c)||u&&Xc(u))||i&&E);t||(p=0,h=0);const x=Ya(b,s,l);t&&(a?(o.uncompressedSize=y,m=n===fe?qc(y)+x:n+(i?0:x)):n===fe?(f=!0,(w||w===fe)&&(w=g=!0,m=4294967296)):(o.uncompressedSize=y=n,m=(Pc(h,p)?qc(y):y)+x));const z=!(b||t&&(0!==n||a)||Pc(h,p));z&&Wc(e,o,Le)===fe&&(f=!1);const F=S||g||y>=O,A=S||m>=O;if(F||A){if(!1===w)throw new d(Ks);w=!0}return w=w||!1,{je:m,Je:{dataDescriptor:f,Qe:z,zip64:w,Ue:S,_e:g,Ie:F,ke:A,uncompressedSize:y,level:p,compressionMethod:h,encrypted:b}}}(e,Boolean(t),a,r,o))}(e,c,f,u);({reader:c}=o);const p=Fc(e.writer),h=zc(e.writer);let b=u.crc32===fe?u[Ma]:u.crc32;const x=o.Je.encrypted&&!t.zipCrypto;if(t.Ze&&!t.He&&x&&(b=fe),t.Ze&&c&&!x&&b===fe)throw new d(Js);const z=function(e){const{rawFilename:t,lastModDate:n,rawLastModDate:r,lastAccessDate:o,creationDate:a,level:c,zip64:u,zipCrypto:l,useUnicodeFileNames:f,dataDescriptor:w,directory:p,rawExtraField:h,Ye:m,encryptionStrength:y,extendedTimestamp:g,ntfsTimestamp:S,Ze:E,encrypted:b,Ie:x,ke:z,uncompressedSize:F,_e:A,crc32:C}=e;let{version:D,compressionMethod:R}=e;const v=!p&&Pc(R,c);let L;const N=E||!v,k=u&&(e.bufferedWrite||!w||!x&&!z||N&&!A),I=k||u&&w&&(x||z);if(u&&(x||z)){const e=20,t=xc(e);if(t.$e(1),t.$e(e-4),L=t.et,k&&(t.nt(F),N)){const e=Ya(b,l,y);t.nt(E?0:F+e)}}else L=ge;let U,T,O,W,B,K;if(b&&!l){const e=xc(Xc(sc)+2);e.$e(Q),e.ot(sc),U=e.et,U[8]=y}else U=ge;if(g){const e=Oc(n),t=(q=e)>=Vs&&q<=Ws;if(t){const t=9+(o?4:0)+(a?4:0),n=xc(t);W=1+(o?2:0)+(a?4:0),B=e,n.$e(_),n.$e(t-4),n.it(W),n.st(e),o&&n.st(Vc(Oc(o))),a&&n.st(Vc(Oc(a))),O=n.et}else O=ge;if(S===fe?!t||Boolean(o||a):S)try{const e=Tc(n),t=xc(36);t.$e(10),t.$e(32),t.ct(4),t.$e(1),t.$e(24),t.nt(e),t.nt(o?Tc(o):e),t.nt(a?Tc(a):e),T=t.et}catch{T=ge}else T=ge}else T=O=ge;var q;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=cc||t===fe&&n===fe)if(r!=uc||t===fe&&n===fe)K=ge;else{const e=xc(8);e.$e(te),e.$e(4),e.$e((t===fe?0:t)&V),e.$e((n===fe?0:n)&V),K=e.et}else{const e=bc(t===fe?0:t),r=bc(n===fe?0:n),o=3+e.length+r.length,a=xc(4+o);a.$e(ee),a.$e(o),a.it(1),a.it(e.length),a.ot(e),a.it(r.length),a.ot(r),K=a.et}}catch{K=ge}R===fe&&(R=v?8:0),D===fe&&(D=0!=R||p||b?20:10);const{Ge:P}=e;v&&P!==fe&&(D=D>P?D:P),u&&(D=D>45?D:45),b&&!l&&(D=D>51?D:51,E&&C!==fe&&(U[4]=1),Zc(kt(U),9,R),R=99);const J=I?Xc(L):0,Z=J+Xc(U,O,T,K,h,m);if(Z+(e[ke]?67:0)>V)throw new d(Os);const H=new s(2e3*i.ceil(i.floor(n.getTime()/1e3)/2)),G=H<le?le:H>ue?ue:H,Y=Xc(O)?new s(1e3*Oc(n)):Xc(T)?n:G,{Le:X,Ne:j,rawLastModDate:$}=jc({version:D,bitFlag:_c(c,f,w,b,R),compressionMethod:R,uncompressedSize:F,lastModDate:G,rawLastModDate:r,rawFilename:t,ke:z,Ie:x,extraFieldLength:Z}),ne=xc(ce+Xc(t)+Z),re=ne.et,oe=kt(re);return ne.st(M),ne.ot(X),ne.ot(t),I&&ne.ot(L),ne.ot(U),ne.ot(O),ne.ot(T),ne.ot(K),ne.ot(h),ne.ot(m),w&&(z||Hc(oe,18,0),x||Hc(oe,22,0)),{ut:re,lt:oe,Le:X,Ne:j,lastModDate:Y,ft:Y===G&&H.getTime()!=G.getTime(),rawLastModDate:$,encrypted:b,compressed:v,version:D,compressionMethod:R,wt:W,ht:B,Oe:ge,yt:J,We:O,Me:T,Be:K,Ve:U,extraFieldLength:Z}}(u=n.assign({},u,l.Je,f.Je,o.Je,{signature:u[Ma],crc32:b,offset:e.offset-p,diskNumberStart:h,[ke]:e.options[ke]}));z.ft&&fa(e.warnings,ic,r);const A=function({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r,o=ge,a=0,i=e?20:12;return n&&(i+=4),t&&(o=new w(i),r=kt(o),n&&(a=4,Hc(r,0,K))),{gt:o,St:r,Et:a}}(u),C=Xc(z.ut,A.gt);E=await async function(e,t,r,o,i){const{ge:s,writer:c}=e,{keepOrder:u,dataDescriptor:l,Qe:f,signal:w}=i,{bt:p,he:h,xt:m,zt:y}=o,S=e.options[ke];let E,b,x,z,A,C,D,R=h,v=0;const L=u&&m?m.Xe:fe;s.set(t,R);try{i.bufferedWrite||!u||e.Re||e.ze||e.Fe||!l&&!f?(E=!0,e.ze++,D=i.createTempStream?await i.createTempStream():new F(fe,fe,{highWaterMark:de}),D.size=0,await sa(c)):(b=!0,e.Fe++,D=c,await L,await N()),await sa(D);const h=Fc(c);e.ye&&!E&&await kc(e,c),S&&!E&&Ec(o,e.offset-h);const{ut:m}=p;E||await k();const y=zc(c),x=Cc(e,c);if(R.diskNumberStart=y,E||(A=!0,C=c.size,await Ic(D,m)),R=await async function(e,t,{diskNumberStart:r,Xe:o},i,s,c){const{bt:u,Ft:l,At:f}=i,{Le:w,Ne:p,lastModDate:h,rawLastModDate:m,encrypted:y,compressed:g,version:S,compressionMethod:E,Oe:b,yt:x,We:z,wt:F,ht:A,Me:C,Be:D,Ve:R}=u,{gt:v}=l,{rawFilename:L,lastAccessDate:N,creationDate:k,password:I,rawPassword:U,level:T,useUnicodeFileNames:V,zip64:M,Ue:B,Ie:K,ke:q,zipCrypto:P,dataDescriptor:J,directory:Z,executable:H,versionMadeBy:G,rawComment:Y,rawExtraField:X,Ke:j,useWebWorkers:Q,transferStreams:_,onstart:$,onprogress:ee,onend:te,signal:ne,encryptionStrength:re,extendedTimestamp:oe,msDosCompatible:ae,internalFileAttributes:ie,externalFileAttributes:se,uid:ce,gid:ue,unixMode:le,symlink:de,setuid:we,setgid:pe,sticky:he,unixExternalUpper:me,msdosAttributesRaw:ye,msdosAttributes:ge,useCompressionStream:Se,Ze:Ee,He:be,format:xe,codecURI:ze}=c,Fe={Xe:o,versionMadeBy:G,zip64:M,Ue:B,directory:Boolean(Z),executable:Boolean(H),filenameUTF8:Boolean(V),rawFilename:L,commentUTF8:Boolean(V),rawComment:Y,Oe:b,yt:x,We:z,Me:C,Be:D,Ve:R,rawExtraField:X,Ke:j,extendedTimestamp:oe,msDosCompatible:ae,internalFileAttributes:ie,externalFileAttributes:se,diskNumberStart:r,uid:ce,gid:ue,unixMode:le,symlink:Boolean(de),setuid:we,setgid:pe,sticky:he,unixExternalUpper:me,msdosAttributesRaw:ye,msdosAttributes:ge};let{crc32:Ae,uncompressedSize:Ce}=c,De=0;Ee||(Ce=0);const{writable:Re}=t;if(e){const n=e.size,r=qn(la(e,{size:n})),o={options:{codecType:Fr,inputSize:n,level:T,rawPassword:U,password:I,encryptionStrength:re,zipCrypto:y&&P,passwordVerification:y&&P&&m>>8&W,computeCrc32:!Ee,compressed:g&&!Ee,encrypted:y&&!be,useWebWorkers:Q,useCompressionStream:Se,transferStreams:_,format:xe,codecURI:ze,compressionMethod:E},config:s,R:{signal:ne,size:n,onstart:$,onprogress:ee,onend:te}};try{const e=await oo({readable:r,writable:Re},o);if(De=e.outputSize,t.size+=De,Ee||(Ce=e.inputSize,y&&!P||(Ae=e.crc32)),!q&&De>=O||!K&&Ce>=O)throw new d(Ks)}catch(e){const{outputSize:n}=o;throw n!==fe?t.size+=n:It(e)&&e.outputSize!==fe&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,bt:r,Ft:o},{zip64:i,zipCrypto:s,Ze:c,dataDescriptor:u}){const{Ne:l,encrypted:f}=r,{St:d,Et:w}=o;f&&!s&&!c||e===fe||(Hc(l,10,e),u&&Hc(d,w,e)),i?u&&(Gc(d,w+4,a(t)),Gc(d,w+12,a(n))):(Hc(l,14,t),Hc(l,18,n),u&&(Hc(d,w+4,t),Hc(d,w+8,n)))}({crc32:Ae,compressedSize:De,uncompressedSize:Ce,bt:u,Ft:l},c),J&&await Ic(t,v),n.assign(Fe,{uncompressedSize:Ce,compressedSize:De,lastModDate:h,rawLastModDate:m,creationDate:k,lastAccessDate:N,encrypted:Boolean(y),zipCrypto:Boolean(P),size:f+De,compressionMethod:E,version:S,Le:w,Ne:p,signature:Ae,crc32:!y||P||Ee?Ae:fe,wt:F,ht:A,Ie:K,ke:q}),Fe}(r,D,R,o,dt(),i),E||(A=!1),s.set(t,R),R.filename=t,E){if(await g.all([D.writable.getWriter().close(),L]),await N(),e.ye&&await kc(e,c),z=!0,C=c.size,await k(),R.diskNumberStart=zc(c),R.offset=Cc(e,c),S){const t=o.At;Ec(o,e.offset-Fc(c)),R.size+=o.At-t}!function({rawFilename:e,encrypted:t,zip64:n,yt:r,crc32:o,compressedSize:i,uncompressedSize:s,Ie:c,ke:u},l,{dataDescriptor:f,Ze:d}){if(f||((!t||d&&o!==fe)&&Hc(l,14,o),u||Hc(l,18,i),c||Hc(l,22,s)),n&&r){const t=ce+Xc(e)+4;Gc(l,t,a(s)),Gc(l,t+8,a(i))}}(R,p.lt,i),await Ic(c,p.ut),await Uc(D.readable,c,w,e=>v+=e),c.size+=D.size,z=!1}else R.diskNumberStart=y,R.offset=x;return e.offset+=R.size,R}catch(n){if(z||A){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-C,E&&(e.offset+=v)}throw s.delete(t),n}finally{if(E&&e.ze--,b&&e.Fe--,y&&y(L),x&&x(),E&&D&&D.dispose)try{await D.dispose()}catch{}}async function N(){e.Re=!0;const{ve:t}=e;e.ve=new g(t=>x=()=>{e.Re=!1,t()}),await t}async function k(){Ac(c,Xc(p.ut))&&await c.closeDisk()}}(e,r,c,{bt:z,Ft:A,At:C,he:y,xt:m,zt:S},u)}catch(t){throw e.ge.delete(r),t}finally{S&&S(m&&m.Xe)}return n.assign(E,{name:r,comment:p,extraField:h}),new Ha(E)}(e,r,u,l)}catch(t){throw e.Se.delete(r),t}finally{const e=dc.shift();e?e():fc--}}(l,e,r,u);f.add(p);const h=()=>f.delete(p);return g.prototype.then.call(p,h,h),mc(l,p)}remove(e){const{Se:t,ge:n}=this;if(typeof e==me&&(e=n.get(e)),e&&e.filename!==fe){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=ge,n={}){const r=this,{be:o,writer:i}=this,{writable:s}=i;if(r.Ce)return hc(i);if(!(e instanceof w))throw new d(zs);if(Xc(e)>V)throw new d(xs);for(;o.size;)await g.allSettled(t.from(o));await g.allSettled(r.xe.map(e=>e.Ct));const c=r.xe.filter(e=>e.Dt&&!e.Rt);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.Rt=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const{vt:o,Lt:i}=function(e){let t=0,n=!1;for(const[,r]of e){const{rawFilename:e,Ve:o,rawComment:a,Me:i,Be:s,rawExtraField:c,Ke:u,wt:l,ht:f,Ue:w,uncompressedSize:p,compressedSize:h}=r;let{Ie:m,ke:y}=r;w||(m&&p<O&&(m=r.Ie=!1),y&&h<O&&(y=r.ke=!1)),n=n||m||y;const g=r.offset>=O,S=r.diskNumberStart>=V;let E,b;if(g||S||m||y){const e=4+(m?8:0)+(y?8:0)+(g?8:0)+(S?4:0),t=xc(e);t.$e(1),t.$e(e-4),m&&t.nt(p),y&&t.nt(h),g&&t.nt(r.offset),S&&t.st(r.diskNumberStart),E=t.et}else E=ge;if(r.Oe=E,r.Nt=g,r.Te=S,f===fe)b=ge;else{const e=xc(9);e.$e(_),e.$e(5),e.it(l),e.st(f),b=e.et}r.We=b;const x=Xc(E,o,i,s,b,c,u);if(x>V)throw new d(Os);t+=G+Xc(e,a)+x}return{vt:t,Lt:n}}(e.ge),{kt:s,It:c,Ut:u}=await async function(e,n,r){const{ge:o,writer:a}=e,i=new w(n);await sa(a);let s=0,c=0,u=zc(a),l=Fc(a),f=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:d,Oe:w,Ve:p,We:h,Me:m,Be:y,rawExtraField:g,Ke:S,rawComment:E,versionMadeBy:b,Le:x,Ne:z,Ie:F,ke:A,Te:C,Nt:D,internalFileAttributes:R,externalFileAttributes:v,diskNumberStart:L,uncompressedSize:N,compressedSize:k}=n,I=Xc(w,p,h,m,y,g,S),U=G+Xc(d,E)+I;Ac(a,s+U-c)&&(await Ic(a,i.slice(c,s)),c=s,f=0,await a.closeDisk()),0==e&&(u=zc(a),l=Fc(a)),F||Hc(z,18,N),A||Hc(z,14,k),(D||C)&&n.version<45&&Zc(z,0,45);const T=xc(U);if(T.st(P),T.$e(b),T.ot(x.subarray(0,24)),T.$e(I),T.$e(Xc(E)),T.$e(C?V:L),T.$e(R),T.st(v),T.st(D?O:t),T.ot(d),T.ot(w),T.ot(p),T.ot(h),T.ot(m),T.ot(y),T.ot(g),T.ot(S),T.ot(E),Yc(i,T.et,s),s+=U,f++,r.onprogress)try{await r.onprogress(e+1,o.size,new Ha(n))}catch{}}return await Ic(a,c?i.slice(c):i),{kt:{diskNumber:u,diskOffset:l},It:{diskNumber:zc(a),Tt:f},Ut:i}}(e,o,r),l=await async function(e,t,n){const r=Bc(e,n,"signCentralDirectory");if(r){const n=await r(t),o=Xc(n);if(o>V)throw new d(nc);const a=xc(6+o);a.st(q),a.$e(o),a.ot(n);const{writer:i}=e;return Ac(i,Xc(a.et))&&await i.closeDisk(),await Ic(i,a.et),6+o}return 0}(e,u,r);await async function(e,t,n,r){const{writer:o}=e,{kt:i,It:s,Ot:c,Lt:u}=r;let{vt:l}=r,f=e.ge.size,w=i.diskNumber,p=Cc(e,i);const h=Xc(t);if(h>V)throw new d(xs);let m=Wc(e,n,Na),y=zc(o);if(Ac(o,(m?98:Y)+h)&&y++,p>=O||l>=O||f>=V||y>=V){if(!1===m)throw new d(Ks);m=!0}else m===fe&&u&&(m=!0);const g=xc(m?98:Y);Ac(o,Xc(g.et)+h)&&await o.closeDisk(),y=zc(o);let S=y==s.diskNumber?s.Tt:0;m&&(g.st(Z),g.nt(44),g.$e(45),g.$e(45),g.st(y),g.st(w),g.nt(S),g.nt(f),g.nt(l),g.nt(p),g.st(H),g.st(y),g.nt(a(Cc(e,o))+a(l)+a(c)),g.st(y+1),Wc(e,n,"supportZip64SplitFile",!0)&&(y=V,w=V),S=V,f=V,p=O,l=O),g.st(J),g.$e(y),g.$e(w),g.$e(S),g.$e(f),g.st(l),g.st(p),g.$e(h),await Ic(o,g.et),h&&await Ic(o,t)}(e,n,r,{kt:s,It:c,vt:o,Ot:l,Lt:i})}(r,e,n),r.Ce=!0,!ia(i)&&Wc(r,n,De)||await s.getWriter().close(),hc(i)}[Se](){return this.close()}}class pc extends g{then(e,t){const{Vt:n}=this;return n&&(n.Rt=!0),super.then(e,t)}}function hc(e){return e.getData?e.getData():e.writable}function mc(e,t){const r=new pc((e,n)=>g.prototype.then.call(t,e,n)),o={};return r.Vt=o,o.Ct=g.prototype.then.call(r,fe,e=>n.assign(o,{Dt:!0,error:e})),e.xe.push(o),r}async function yc(e,t){try{await e.writer.writable.abort(t)}catch{}}function gc(e,t,n){e.be.add(t),t.catch(e=>{try{n(e)}catch{}})}function Sc(e){if(!e)return ge;if(!(e instanceof c))throw new d(Is);let t=0,n=0;e.forEach((e,n)=>{if(Qe(n,V,Us),!(e instanceof w))throw new d(Ts);if(Xc(e)>V)throw new d(Os);t+=4+Xc(e)});const r=new w(t),o=kt(r);return e.forEach((e,t)=>{Zc(o,n,t),Zc(o,n+2,Xc(e)),Yc(r,e,n+4),n+=4+Xc(e)}),r}function Ec(e,t){const{bt:n}=e;let{ut:r,extraFieldLength:o}=n,a=64-(t+Xc(r))%64;a<4&&(a+=64);const i=new w(a),s=kt(i);Zc(s,0,$),Zc(s,2,a-4);const c=r;n.ut=r=new w(Xc(c)+a),Yc(r,c),Yc(r,i,Xc(c));const u=kt(r);Zc(u,28,o+a),n.lt=u,e.At+=a}function bc(e){const t=new w(4);kt(t).setUint32(0,e,!0);let n=4;for(;n>1&&0===t[n-1];)n--;return t.subarray(0,n)}function xc(e){const t=new w(e),n=kt(t);let r=0;return{et:t,it:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},$e:e=>{Zc(n,r,e),r+=2},st:e=>{Hc(n,r,e),r+=4},nt:e=>{Gc(n,r,a(e)),r+=8},ot:e=>{Yc(t,e,r),r+=Xc(e)},ct:e=>r+=e}}function zc(e){const{diskNumber:t=0}=e;return t}function Fc(e){const{diskOffset:t=0}=e;return t}function Ac(e,t){const{availableSize:n=de}=e;return t>n}function Cc(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.Ee:0)}function Dc(e){const t=kt(e);let n=0;for(;n+4<=Xc(e);){const r=4+Jc(t,n+2);if(1==Jc(t,n))return Dc(Lt(e.subarray(0,n),e.subarray(i.min(n+r,Xc(e)))));n+=r}return e}async function Rc(e,t,n,r){if(r>0){const{writer:o}=e;let a=0;try{await Uc(la(t,{offset:n,size:r}),o,fe,e=>a+=e)}catch(t){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}throw t}finally{o.size+=a,e.offset+=a}}}async function vc(e,t){const n=await ua(e,t,ce);if(Xc(n)<ce)return ce;const r=kt(n);return ce+Jc(r,26)+Jc(r,28)}function Lc(e,{offset:t,diskNumberStart:n}){return t+(e.ae?e.ae(n):0)}function Nc(){const e=new w(4);return Hc(kt(e),0,B),e}async function kc(e,t){delete e.ye,await Ic(t,Nc()),e.offset+=4}async function Ic(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=Xc(t),await r.write(t)}finally{r.releaseLock()}}async function Uc(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new C({async write(e){await o.ready,await o.write(e),r(Xc(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function Tc(e){if(e){const t=(a(e.getTime())+a(116444736e5))*a(1e4);return t<Ms?Ms:t>Bs?Bs:t}}function Oc(e){return i.floor(e.getTime()/1e3)}function Vc(e){return i.min(Ws,i.max(Vs,e))}function Wc(e,t,n,r){const o=t[n]===fe?e.options[n]:t[n];return o===fe?r:o}function Mc(e,t,n,r){const a=Wc(e,t,n,r);if(null===a)return r;if(a!==fe&&(typeof a.getTime!=pe||o.isNaN(a.getTime())))throw new d(Cs);return a}function Bc(e,t,n){return He(Wc(e,t,n))}function Kc(e,t,n,r){return $e(Wc(e,t,n,r))}function qc(e){return e+5*(i.floor(e/16383)+1)}function Pc(e,t){return e===fe?t===fe||t>0:0!==e}function Jc(e,t){return e.getUint16(t,!0)}function Zc(e,t,n){e.setUint16(t,n,!0)}function Hc(e,t,n){e.setUint32(t,n,!0)}function Gc(e,t,n){e.setBigUint64(t,n,!0)}function Yc(e,t,n){e.set(t,n)}function Xc(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function jc({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:a,rawLastModDate:i,rawFilename:s,ke:c,Ie:u,extraFieldLength:l}){const f=xc(26),d=f.et,w=kt(d);if(f.$e(e),f.$e(t),f.$e(n),i===fe){const e=new h(1),t=kt(e);Zc(t,0,(a.getHours()<<6|a.getMinutes())<<5|a.getSeconds()/2),Zc(t,2,(a.getFullYear()-1980<<4|a.getMonth()+1)<<5|a.getDate()),i=e[0]}return f.st(i),f.ct(4),c||o!==fe?f.st(c?O:o):f.ct(4),u||r!==fe?f.st(u?O:r):f.ct(4),f.$e(Xc(s)),f.$e(l),{Le:d,Ne:w,rawLastModDate:i}}function Qc(e){return e.every(e=>e>=32&&e<=126)}function _c(e,t,n,r,o){let a=0;return t&&(a|=ne),n&&(a|=8),8!=o&&9!=o||(e>=0&&e<=3&&(a|=6),e>3&&e<=5&&(a|=4),9==e&&(a|=2)),r&&(a|=1),a}function $c(e,t){if(!e)return!1;const{supportedFormats:n}=e;return n?n.includes(t):wr(e,t)}const eu=1048576,tu=".zip.js-temp",nu=1048576,ru=1048576,ou=".zip.js-temp",au="createSyncAccessHandle is only available in dedicated workers";try{gt({baseURI:void 0===b&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===b?location.href:T&&"SCRIPT"===T.tagName.toUpperCase()&&T.src||new f("zip-legacy.min.js",b.baseURI).href})}catch{}Rt(gt),e.BlobReader=To,e.BlobWriter=Oo,e.Data64URIReader=class extends No{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{Wt:e,Mt:r,size:i.floor(.75*(t-r))})}readUint8Array(e,t){const{Mt:n,Wt:r}=this,o=new w(t),a=4*i.floor(e/3),s=atob(r.substring(a+n,4*i.ceil((e+t)/3)+n)),c=e-3*i.floor(a/4);let u=0;for(let e=c;e<c+t&&e<s.length;e++)o[e-c]=s.charCodeAt(e),u++;return u<o.length?o.subarray(0,u):o}},e.Data64URIWriter=class extends ko{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",Bt:""})}writeUint8Array(e){const t=this;let n,o=t.Bt;const a=t.Bt.length;for(t.Bt="",n=0;n<3*i.floor((a+e.length)/3)-a;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.Bt+=r.fromCharCode(e[n]);o.length>2?t.data+=z(o):t.Bt=o+t.Bt}getData(){return this.data+z(this.Bt)}},e.ERR_ABORTED=Ze,e.ERR_AMBIGUOUS_ARCHIVE=ii,e.ERR_BAD_FORMAT=Xa,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=_a,e.ERR_DUPLICATED_NAME=bs,e.ERR_ENCRYPTED=ti,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=si,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=ai,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Qa,e.ERR_EOCDR_NOT_FOUND=ja,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=ei,e.ERR_HTTP_RANGE=go,e.ERR_HTTP_RESOURCE_CHANGED=So,e.ERR_HTTP_STATUS=yo,e.ERR_INVALID_AUTHENTICATION_CODE=ln,e.ERR_INVALID_BASE_URI=tt,e.ERR_INVALID_CODEC_DEFINITION=Zn,e.ERR_INVALID_CODEC_MODULE=Gn,e.ERR_INVALID_COMMENT=xs,e.ERR_INVALID_COMMENT_TYPE=zs,e.ERR_INVALID_COMPRESSED_DATA=rr,e.ERR_INVALID_CRC32=or,e.ERR_INVALID_DATE=Cs,e.ERR_INVALID_ENCRYPTION_STRENGTH=vs,e.ERR_INVALID_ENTRY=rc,e.ERR_INVALID_ENTRY_COMMENT=Fs,e.ERR_INVALID_ENTRY_COMMENT_TYPE=As,e.ERR_INVALID_ENTRY_NAME=Ds,e.ERR_INVALID_EXTRAFIELD=Is,e.ERR_INVALID_EXTRAFIELD_DATA=Os,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=Ts,e.ERR_INVALID_EXTRAFIELD_TYPE=Us,e.ERR_INVALID_FILENAME_VALIDATION=li,e.ERR_INVALID_FUNCTION_OPTION=Ke,e.ERR_INVALID_GID=Xs,e.ERR_INVALID_LEVEL=tc,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=fi,e.ERR_INVALID_MAX_WORKERS=et,e.ERR_INVALID_MSDOS_ATTRIBUTES=$s,e.ERR_INVALID_MSDOS_DATA=ec,e.ERR_INVALID_PASSWORD=un,e.ERR_INVALID_PASSWORD_TYPE=Pe,e.ERR_INVALID_PASS_THROUGH_VALUE=Je,e.ERR_INVALID_READER=Hs,e.ERR_INVALID_SIGNAL=qe,e.ERR_INVALID_SIGNATURE_DATA=nc,e.ERR_INVALID_STRICTNESS=ui,e.ERR_INVALID_UID=Ys,e.ERR_INVALID_UNCOMPRESSED_SIZE=nr,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=Qs,e.ERR_INVALID_UNIX_ID_SIZE=_s,e.ERR_INVALID_UNIX_MODE=js,e.ERR_INVALID_URI=nt,e.ERR_INVALID_VERSION=Rs,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Eo,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=$a,e.ERR_OVERLAPPING_ENTRY=oi,e.ERR_RESERVED_COMPRESSION_METHOD=Hn,e.ERR_SPLIT_ZIP_FILE=ri,e.ERR_UNDEFINED_COMPRESSION_METHOD=Ps,e.ERR_UNDEFINED_CRC32=Js,e.ERR_UNDEFINED_READER=Zs,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=qs,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=ci,e.ERR_UNSUPPORTED_COMPRESSION=Yn,e.ERR_UNSUPPORTED_CONTEXT=au,e.ERR_UNSUPPORTED_CRYPTO_API=dn,e.ERR_UNSUPPORTED_ENCRYPTION=ni,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=ks,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=Ls,e.ERR_UNSUPPORTED_FORMAT=Ks,e.ERR_UNSUPPORTED_SPLIT_USDZ=Ns,e.ERR_UNSUPPORTED_UINT64=di,e.ERR_WORKER_STARTUP_TIMEOUT=Rr,e.ERR_WRITER_NOT_INITIALIZED=bo,e.ERR_WRITER_SIZE_NOT_WRITABLE=xo,e.ERR_ZIP_CRYPTO_LAST_MOD_DATE=oc,e.ERR_ZIP_NOT_EMPTY=Gs,e.HttpRangeReader=class extends ta{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=ta,e.Reader=No,e.SplitDataReader=na,e.SplitDataWriter=ra,e.TextReader=class extends To{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends Oo{constructor(e){super(),n.assign(this,{encoding:e,Kt:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,Kt:t}=this,n=await super.getData();return n.text&&t?n.text():function(e,t){return mo(e,t,!1)}(new w(await n.arrayBuffer()),e)}},e.Uint8ArrayReader=class extends No{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{et:e,size:e.length})}readUint8Array(e,t){return this.et.slice(e,e+t)}},e.Uint8ArrayWriter=class extends ko{constructor(e){super(),this.qt=e||262144}init(e=0){n.assign(this,{offset:0,et:new w(e>0?e:this.qt)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.et.length){let e=t.et.length?2*t.et.length:t.qt;for(;e<n;)e*=2;const r=t.et;t.et=new w(e),t.et.set(r)}t.et.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.et.length?this.et:this.et.slice(0,this.offset)}},e.VERSION="2.16.1",e.WARNING_APPENDED_DATA=Si,e.WARNING_CLAMPED_LAST_MODIFICATION_DATE=ic,e.WARNING_COMPRESSED_PATCHED_DATA=hi,e.WARNING_COMPRESSION_UNAVAILABLE=ac,e.WARNING_DUPLICATE_FILENAME=zi,e.WARNING_MALFORMED_EXTRA_FIELD=mi,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=Di,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=Ri,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=vi,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME=Ci,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=Fi,e.WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY=Ai,e.WARNING_PREPENDED_CENTRAL_DIRECTORY=bi,e.WARNING_PREPENDED_DATA=Ei,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=xi,e.WARNING_UNKNOWN_VERSION=pi,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=yi,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=wi,e.WARNING_WRAPPED_ENTRIES_COUNT=gi,e.Writer=ko,e.ZipReader=Vi,e.ZipReaderStream=Wi,e.ZipWriter=wc,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new F;this.readable=t,this.zipWriter=new wc(n,e),this.be=new u}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 yc(t,e)}}()}});return gc(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 gc(this,this.zipWriter.add(e,n),e=>t.error(e)),r}async close(e,n={}){const{zipWriter:r}=this,o=(await g.allSettled(t.from(this.be))).filter(e=>"rejected"==e.status).map(e=>e.reason);if(o.length){const[e]=o;try{e.entryErrors=o}catch{}throw await yc(r,e),e}try{return await r.close(e,n)}catch(e){throw await yc(r,e),e}}},e.configure=function(e){n.assign(ft,ht(yt(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=nu}=e;return function(){const e=[];let n,r,o,a=0,i=!1;const s=new C({async write(o){i?await n.write(o):(e.push(o),a+=o.length,a>t&&await async function(){const t=new F;r=Pn(t.readable),n=t.writable.getWriter(),i=!0;for(const t of e)await n.write(t);e.length=0}())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:s,readable:new A({async pull(t){if(i){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=eu,directoryName:r=tu,getDirectory:o=()=>v.storage.getDirectory()}=e;let a;function i(){return a||(a=g.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),a}return function(){const e=[];let r,o,a,s,c=0,u=!1;const l=new C({async write(s){u?await a.write(s):(e.push(s),c+=s.length,c>n&&await async function(){const n=await i();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}),a=(await o.createWritable()).getWriter(),u=!0;for(const t of e)await a.write(t);e.length=0}())},async close(){a&&(await a.close(),a=null)}});let f=0;return{writable:l,readable:new A({async pull(t){if(u){if(!s){const e=await o.getFile();s=e.stream().getReader()}const{value:e,done:n}=await s.read();n?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){s&&await s.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(a){try{await a.close()}catch{}a=null}if(r){try{const e=await i();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=ru,directoryName:r=ou,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d(au);const a=o||(()=>v.storage.getDirectory());let s;function c(){return s||(s=g.resolve(a()).then(e=>e.getDirectoryHandle(r,{create:!0}))),s}return function(){const e=[];let r,o,a=0,s=!1,u=0,l=0;const f=new C({async write(i){s?(o.write(i,{at:u}),u+=i.length):(e.push(i),a+=i.length,a>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 a=await n.getFileHandle(r,{create:!0});o=await a.createSyncAccessHandle(),s=!0;for(const t of e)o.write(t,{at:u}),u+=t.length;e.length=0}())},close(){o&&o.flush()}});let d=0;return{writable:f,readable:new A({pull(t){if(s){const e=u-l;if(e<=0)return void t.close();const n=new w(i.min(524288,e)),r=o.read(n,{at:l});r?(l+=r,t.enqueue(n.subarray(0,r))):t.close()}else d<e.length?t.enqueue(e[d++]):t.close()}},{highWaterMark:0}),dispose:async function(){if(o){try{o.close()}catch{}o=null}if(r){try{const e=await c();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=function(){return"application/octet-stream"},e.getRegisteredCodecs=$n,e.getSupportedCompressionMethods=function(){const{CompressionStream:e,DecompressionStream:t,CompressionStreamFallback:n,DecompressionStreamFallback:r}=dt(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:$c(n,ar)||$c(e,ar)||$c(e,sr),decompression:$c(r,ar)||$c(t,ar)||$c(t,sr),registered:!1},{compressionMethod:9,compression:!1,decompression:$c(r,ir)||$c(t,ir),registered:!1}];for(const e of $n()){const t=er(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==pe:fe,decompression:t?typeof t.DecompressionStream==pe:fe,registered:!0})}return o},e.isZipFile=Mi,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:a,DecompressionStream:i,versionNeeded:s}=e;if(!o.isInteger(t)||t<0||t>V||typeof n!=me||!n.length)throw new d(Zn);if(Xn.includes(t))throw new d(Hn);const c=typeof a==pe||typeof i==pe;if(!(c||typeof r==me&&r.length))throw new d(Zn);jn.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:s}),c&&tr(n,{CompressionStream:a,DecompressionStream:i})},e.resetConfiguration=function(){for(const e of lt)delete ft[e];n.assign(ft,ot)},e.terminateWorkers=async function(){await g.allSettled([co(),...$r.map(e=>(fo(e),e.terminate()))]),vr=fe,Lr=!1},e.unregisterCodec=function(e){const t=jn.get(e);if(t){let n;jn.delete(e),jn.forEach(e=>n=n||e.format==t.format),n||Qn.delete(t.format)}}});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})}(this,function(e){"use strict";const{Array:t,Object:n,String:r,Number:o,BigInt:i,Math:a,Date:s,Map:c,Set:u,Response:l,URL:f,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:m,DataView:h,Blob:y,Promise:g,TextEncoder:S,TextDecoder:E,document:b,crypto:z,btoa:D,TransformStream:x,ReadableStream:C,WritableStream:F,CompressionStream:R,DecompressionStream:A,navigator:N,Worker:U,Symbol:L,setTimeout:T,clearTimeout:v,structuredClone:I}="undefined"!=typeof globalThis?globalThis:self;var O=void 0!==b?b.currentScript:null;const k=4294967295,M=65535,B=255,V=67324752,W=134695760,Z=W,q=84233040,H=33639248,K=101010256,P=101075792,Y=117853008,G=46,j=22,X=20,Q=56,J=39169,_=21589,$=6534,ee=30837,te=30805,ne=2048,re=61440,oe=16384,ie=2048,ae=1024,se="/",ce=30,ue=new s(2107,11,31,23,59,58),le=new s(1980,0,1),fe=void 0,de=1/0,we="undefined",pe="function",me="object",he="string",ye="boolean",ge=new w,Se=L.asyncDispose||L(),Ee="password",be="rawPassword",ze="passThrough",De="signal",xe="useWebWorkers",Ce="useCompressionStream",Fe="transferStreams",Re="preventClose",Ae="level",Ne="useUnicodeFileNames",Ue="dataDescriptor",Le="offset",Te="usdz",ve="maxAppendedDataSize",Ie="entry",Oe="filename",ke="comment",Me="strict",Be="balanced",Ve="tolerant",We="compressed",Ze="Invalid option (must be a function)",qe="Invalid signal (must be an AbortSignal instance)",He="Invalid password (password must be a string, rawPassword must be a Uint8Array)",Ke="Invalid passThrough option (must be a boolean or 'compressed')",Pe="The operation was aborted";function Ye(e){if(e&&typeof e!=pe)throw new d(Ze);return e}function Ge(e){if(e&&(typeof e.addEventListener!=pe||typeof e.aborted!=ye))throw new d(qe);return e||fe}function je(e){if(e&&e.aborted)throw e.reason===fe?new DOMException(Pe,"AbortError"):e.reason}function Xe(e,t){if(e&&typeof e!=he||t&&!(t instanceof w))throw new d(He)}function Qe(e){if(e!==fe&&typeof e!=ye&&e!==We)throw new d(Ke);return e}function Je(e,t,n){if(!o.isInteger(e)||e<0||e>t)throw new d(n)}function _e(e,t,n){e!==fe&&Je(e,t,n)}function $e(e){return typeof e==he&&e.trim()?o(e):e}const et="Invalid maxWorkers (must be an integer greater than 0)",tt="Invalid baseURI (must be a string)",nt="Invalid URI (must be a string or a function returning a string)";let rt=2;try{typeof N!=we&&N.hardwareConcurrency&&(rt=N.hardwareConcurrency)}catch{}const ot={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:rt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof R!=we&&R,DecompressionStream:typeof A!=we&&A},it="maxWorkers",at="baseURI",st=["wasmURI","workerURI"],ct=["chunkSize",it,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],ut=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],lt=[at,...st,"useCompressionStream","useWebWorkers","transferStreams",...ct,...ut],ft={...ot};function dt(){return ft}function wt(e){return pt(e.chunkSize)}function pt(e){return e=$e(e),o.isInteger(e)&&e>=1?a.max(e,64):65536}function mt(e){const t={};for(const n of lt){const r=e[n];r!==fe&&(t[n]=ht(n,r))}return t}function ht(e,t){if(ct.includes(e)){if(t=$e(t),e==it&&(!o.isInteger(t)||t<1))throw new d(et)}else if(ut.includes(e))Ye(t);else if(e==at){if(t&&typeof t!=he)throw new d(tt)}else if(st.includes(e)&&t&&typeof t!=he&&typeof t!=pe)throw new d(nt);return t}function yt(e){e=e||{};const{CompressionStreamZlib:t,DecompressionStreamZlib:r}=e;if(t===fe&&r===fe)return e;const o=n.assign({},e);return o.CompressionStreamFallback===fe&&(o.CompressionStreamFallback=t),o.DecompressionStreamFallback===fe&&(o.DecompressionStreamFallback=r),o}function gt(e){const t=mt(yt(e));n.assign(ot,t),n.assign(ft,t)}const St=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258],Et=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],bt=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],zt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Dt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],xt=new w(288);xt.fill(8,0,144),xt.fill(9,144,256),xt.fill(7,256,280),xt.fill(8,280,288);const Ct=new w(30).fill(5);function Ft(e){const t=new p(16);for(const n of e)t[n]++;t[0]=0;const n=new p(17);for(let e=1;e<=15;e++)n[e+1]=n[e]+t[e];const r=new p(e.length);for(let t=0;t<e.length;t++)e[t]&&(r[n[e[t]]++]=t);return{o:t,symbols:r}}const Rt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",At=(Nt=()=>function(e){let t=0,n=0,r=0,o=new w(1024),i=0,a=0;for(;!a;){a=c(1);const e=c(2);if(0==e)u();else if(1==e)l(Ft(xt),Ft(Ct));else{if(2!=e)throw new d("invalid deflate block type");l(...f())}}return o.subarray(0,i);function s(){if(t>=e.length)throw new d("unexpected end of deflate data");return e[t++]}function c(e){for(;r<e;)n|=s()<<r,r+=8;const t=n&(1<<e)-1;return n>>>=e,r-=e,t}function u(){n=0,r=0;const e=s()|s()<<8;t+=2,m(i+e);for(let t=0;t<e;t++)o[i++]=s()}function l(e,t){let n=p(e);for(;256!=n;){if(n<256)m(i+1),o[i++]=n;else{const e=n-257,r=St[e]+c(Et[e]),a=p(t),s=bt[a]+c(zt[a]);m(i+r);const u=i-s;for(let e=0;e<r;e++)o[i++]=o[u+e]}n=p(e)}}function f(){const e=c(5)+257,t=c(5)+1,n=c(4)+4,r=new w(19);for(let e=0;e<n;e++)r[Dt[e]]=c(3);const o=Ft(r),i=new w(e+t);let a=0;for(;a<i.length;){const e=p(o);if(e<16)i[a++]=e;else if(16==e){const e=i[a-1];let t=c(2)+3;for(;t--;)i[a++]=e}else a+=17==e?c(3)+3:c(7)+11}return[Ft(i.subarray(0,e)),Ft(i.subarray(e))]}function p(e){const{o:t,symbols:n}=e;let r=0,o=0,i=0;for(let e=1;e<=15;e++){r|=c(1);const a=t[e];if(r-o<a)return n[i+(r-o)];i+=a,o=o+a<<1,r<<=1}throw new d("invalid huffman code")}function m(e){if(o.length<e){let t=2*o.length;for(;t<e;)t*=2;const n=new w(t);n.set(o.subarray(0,i)),o=n}}}(function(e){const t=(e=r(e).replace(/[^A-Za-z0-9+/=]/g,"")).length,n=[];for(let r=0;r<t;r+=4){const t=Rt.indexOf(e[r])<<18|Rt.indexOf(e[r+1])<<12|(63&Rt.indexOf(e[r+2]))<<6|63&Rt.indexOf(e[r+3]);n.push(t>>16&255),"="!==e[r+2]&&n.push(t>>8&255),"="!==e[r+3]&&n.push(255&t)}return new w(n)}("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")),e=>e({workerURI:e=>{const t="text/javascript";let n=Nt();if("string"==typeof n&&(n=(new S).encode(n)),e){const e=new y([n],{type:t});return f.createObjectURL(e)}return"data:"+t+";base64,"+function(e){let t="";const n=e.length;let r=0;for(;r+2<n;r+=3){const n=e[r]<<16|e[r+1]<<8|e[r+2];t+=Rt[n>>18&63]+Rt[n>>12&63]+Rt[n>>6&63]+Rt[63&n]}const o=n-r;if(1===o){const n=e[r]<<16;t+=Rt[n>>18&63]+Rt[n>>12&63]+"=="}else if(2===o){const n=e[r]<<16|e[r+1]<<8;t+=Rt[n>>18&63]+Rt[n>>12&63]+Rt[n>>6&63]+"="}return t}(n)}}));var Nt;function Ut(e,t){const n=new w(e.length+t.length);return n.set(e),n.set(t,e.length),n}function Lt(e){return e.byteOffset||e.byteLength!=e.buffer.byteLength?new w(e):e}function Tt(e){return new h(e.buffer,e.byteOffset,e.byteLength)}function vt(e){return Boolean(e)&&"object"==typeof e}const It=[[],[],[],[],[],[],[],[]];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;It[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){const n=It[t-1][e];It[t][e]=n>>>8^It[0][255&n]}const[Ot,kt,Mt,Bt,Vt,Wt,Zt,qt]=It;class Ht{constructor(e){this.l=e||-1}append(e){let t=0|this.l;const n=0|e.length;let r=0;if(n>=8&&e.buffer){const o=new h(e.buffer,e.byteOffset,n),i=n-8;for(;r<=i;r+=8){const e=t^o.getInt32(r,!0),n=o.getInt32(r+4,!0);t=qt[255&e]^Zt[e>>>8&255]^Wt[e>>>16&255]^Vt[e>>>24&255]^Bt[255&n]^Mt[n>>>8&255]^kt[n>>>16&255]^Ot[n>>>24&255]}}for(;r<n;r++)t=t>>>8^Ot[255&(t^e[r])];this.l=t}get(){return~this.l}}class Kt extends x{constructor(){let e;const t=new Ht;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 Pt(e){if(typeof S==we){e=unescape(encodeURIComponent(e));const t=new w(e.length);for(let n=0;n<t.length;n++)t[n]=e.charCodeAt(n);return t}return(new S).encode(e)}const Yt=64,Gt=20,jt=new w([128]),Xt=new w(1),Qt=new Int32Array([1732584193,4023233417,2562383102,271733878,3285377520]),Jt=new w(256),_t=new Int32Array(256),$t=new Int32Array(256),en=new Int32Array(256),tn=new Int32Array(256);let nn=!1;function rn(e){const t=function(){const e=new Int32Array(Qt),t=new Int32Array(16),n=new w(Yt),r=new h(n.buffer),o=new w(8);let i=0,s=0;return{update:c,digest:function(){const t=8*s,n=a.floor(t/4294967296),r=t>>>0;for(c(jt,0,1);56!=i;)c(Xt,0,1);o[0]=n>>>24,o[1]=n>>>16,o[2]=n>>>8,o[3]=n,o[4]=r>>>24,o[5]=r>>>16,o[6]=r>>>8,o[7]=r,c(o,0,8);const u=new w(Gt),l=new h(u.buffer);for(let t=0;t<e.length;t++)l.setInt32(4*t,e[t]);return e.set(Qt),i=0,s=0,u}};function c(e,t,o){const a=t+o;if(s+=o,i){for(;t<a&&i<Yt;)n[i++]=e[t++];i==Yt&&(u(r,0),i=0)}if(t+Yt<=a){const n=new h(e.buffer,e.byteOffset,e.byteLength);for(;t+Yt<=a;t+=Yt)u(n,t)}for(;t<a;)n[i++]=e[t++]}function u(n,r){for(let e=0;e<16;e++)t[e]=n.getInt32(r+4*e);let o,i=e[0],a=e[1],s=e[2],c=e[3],u=e[4];for(let e=0;e<15;e+=5)u=(i<<5|i>>>27)+((s^c)&a^c)+u+1518500249+t[e]|0,a=a<<30|a>>>2,c=(u<<5|u>>>27)+((a^s)&i^s)+c+1518500249+t[e+1]|0,i=i<<30|i>>>2,s=(c<<5|c>>>27)+((i^a)&u^a)+s+1518500249+t[e+2]|0,u=u<<30|u>>>2,a=(s<<5|s>>>27)+((u^i)&c^i)+a+1518500249+t[e+3]|0,c=c<<30|c>>>2,i=(a<<5|a>>>27)+((c^u)&s^u)+i+1518500249+t[e+4]|0,s=s<<30|s>>>2;u=(i<<5|i>>>27)+((s^c)&a^c)+u+1518500249+t[15]|0,a=a<<30|a>>>2,o=t[13]^t[8]^t[2]^t[0],o=o<<1|o>>>31,t[0]=o,c=(u<<5|u>>>27)+((a^s)&i^s)+c+1518500249+o|0,i=i<<30|i>>>2,o=t[14]^t[9]^t[3]^t[1],o=o<<1|o>>>31,t[1]=o,s=(c<<5|c>>>27)+((i^a)&u^a)+s+1518500249+o|0,u=u<<30|u>>>2,o=t[15]^t[10]^t[4]^t[2],o=o<<1|o>>>31,t[2]=o,a=(s<<5|s>>>27)+((u^i)&c^i)+a+1518500249+o|0,c=c<<30|c>>>2,o=t[0]^t[11]^t[5]^t[3],o=o<<1|o>>>31,t[3]=o,i=(a<<5|a>>>27)+((c^u)&s^u)+i+1518500249+o|0,s=s<<30|s>>>2;for(let e=20;e<40;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,u=(i<<5|i>>>27)+(a^s^c)+u+1859775393+o|0,a=a<<30|a>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(u<<5|u>>>27)+(i^a^s)+c+1859775393+o|0,i=i<<30|i>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,s=(c<<5|c>>>27)+(u^i^a)+s+1859775393+o|0,u=u<<30|u>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,a=(s<<5|s>>>27)+(c^u^i)+a+1859775393+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,i=(a<<5|a>>>27)+(s^c^u)+i+1859775393+o|0,s=s<<30|s>>>2;for(let e=40;e<60;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,u=(i<<5|i>>>27)+(a&s|(a|s)&c)+u+2400959708+o|0,a=a<<30|a>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(u<<5|u>>>27)+(i&a|(i|a)&s)+c+2400959708+o|0,i=i<<30|i>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,s=(c<<5|c>>>27)+(u&i|(u|i)&a)+s+2400959708+o|0,u=u<<30|u>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,a=(s<<5|s>>>27)+(c&u|(c|u)&i)+a+2400959708+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,i=(a<<5|a>>>27)+(s&c|(s|c)&u)+i+2400959708+o|0,s=s<<30|s>>>2;for(let e=60;e<80;e+=5)o=t[e-3&15]^t[e-8&15]^t[e-14&15]^t[15&e],o=o<<1|o>>>31,t[15&e]=o,u=(i<<5|i>>>27)+(a^s^c)+u+3395469782+o|0,a=a<<30|a>>>2,o=t[e-2&15]^t[e-7&15]^t[e-13&15]^t[e+1&15],o=o<<1|o>>>31,t[e+1&15]=o,c=(u<<5|u>>>27)+(i^a^s)+c+3395469782+o|0,i=i<<30|i>>>2,o=t[e-1&15]^t[e-6&15]^t[e-12&15]^t[e+2&15],o=o<<1|o>>>31,t[e+2&15]=o,s=(c<<5|c>>>27)+(u^i^a)+s+3395469782+o|0,u=u<<30|u>>>2,o=t[15&e]^t[e-5&15]^t[e-11&15]^t[e+3&15],o=o<<1|o>>>31,t[e+3&15]=o,a=(s<<5|s>>>27)+(c^u^i)+a+3395469782+o|0,c=c<<30|c>>>2,o=t[e+1&15]^t[e-4&15]^t[e-10&15]^t[e+4&15],o=o<<1|o>>>31,t[e+4&15]=o,i=(a<<5|a>>>27)+(s^c^u)+i+3395469782+o|0,s=s<<30|s>>>2;e[0]=e[0]+i|0,e[1]=e[1]+a|0,e[2]=e[2]+s|0,e[3]=e[3]+c|0,e[4]=e[4]+u|0}}(),n=new w(Yt),r=new w(Yt);e.length>Yt&&(t.update(e,0,e.length),e=t.digest());for(let t=0;t<Yt;t++){const o=t<e.length?e[t]:0;n[t]=54^o,r[t]=92^o}return t.update(n,0,Yt),{update(e,n,r){t.update(e,n,r)},digest(){const e=t.digest();t.update(r,0,Yt),t.update(e,0,Gt);const o=t.digest();return t.update(n,0,Yt),o}}}function on(e){return Jt[e>>>24]<<24|Jt[e>>>16&255]<<16|Jt[e>>>8&255]<<8|Jt[255&e]}function an(e){return e<<24|(65280&e)<<8|e>>>8&65280|e>>>24}function sn(e){return 255&(e<<1^27*(e>>7))}const cn=typeof z!=we&&typeof z.getRandomValues==pe,un="Invalid password",ln="Invalid authentication code",fn="zipjs-abort-check-password",dn="Crypto API not supported";function wn(e){if(cn)return z.getRandomValues(e);throw new d(dn)}const pn={name:"PBKDF2"},mn=n.assign({hash:{name:"HMAC"}},pn),hn=n.assign({iterations:1e3,hash:{name:"SHA-1"}},pn),yn=["deriveBits"],gn=[8,12,16],Sn=[16,24,32],En=10,bn=typeof z!=we,zn=bn&&z.subtle;let Dn=bn&&typeof zn!=we&&typeof zn.importKey==pe&&typeof zn.deriveBits==pe;class xn extends x{constructor({password:e,rawPassword:t,encryptionStrength:n,checkPasswordOnly:r,checkAuthenticationCode:o=!0}){const i={};super({start(){Fn(i,e,t,n)},async transform(e,t){const{password:n,strength:o,m:a,ready:s}=i;if(n?(await async function(e,t,n,r){const o=await Un(e,t,n,Tn(r,0,gn[t])),i=Tn(r,gn[t]);if(o[0]!=i[0]||o[1]!=i[1])throw Nn(e),new d(un)}(i,o,n,Tn(e,0,gn[o]+2)),e=Tn(e,gn[o]+2),r?(Nn(i),t.error(new d(fn))):a()):await s,i.h)return;const c=new w(e.length-En-(e.length-En)%16);t.enqueue(An(i,e,c,0,En,!0))},async flush(e){const{S:t,D:n,ready:r}=i;if(t){if(await r,i.h)return;const a=Tn(n,n.length-En),s=new w(Tn(n,0,n.length-En));t.process(s,!0);const c=t.digest();let u=n.length<En?1:0;for(let e=0;e<En;e++)u|=c[e]^a[e];if(u&&o)return void e.error(new d(ln));e.enqueue(s)}}}),Rn(this,i)}}class Cn extends x{constructor({password:e,rawPassword:t,encryptionStrength:n}){const r={};super({start(){Fn(r,e,t,n)},async transform(e,t){const{password:n,strength:o,m:i,ready:a}=r;let s=ge;if(n?(s=await async function(e,t,n){const r=wn(new w(gn[t]));return Ut(r,await Un(e,t,n,r))}(r,o,n),i()):await a,r.h)return;const c=new w(s.length+e.length-e.length%16);c.set(s,0),t.enqueue(An(r,e,c,s.length,0,!1))},async flush(e){const{S:t,D:n,ready:o}=r;if(t){if(await o,r.h)return;const i=new w(n);t.process(i,!1);const a=Tn(t.digest(),0,En);e.enqueue(Ut(i,a))}}}),Rn(this,r)}}function Fn(e,t,r,o){n.assign(e,{ready:new g(t=>e.m=t),password:Ln(t,r),strength:o-1,D:ge,h:!1})}function Rn(e,t){const r=e.readable.getReader(),o=new C({async pull(e){try{const{value:t,done:n}=await r.read();n?e.close():e.enqueue(t)}catch(e){throw Nn(t),r.cancel(e).catch(()=>{}),e}},cancel:e=>(Nn(t),r.cancel(e))});n.defineProperty(e,"readable",{get:()=>o})}function An(e,t,n,r,o,i){const{S:a,D:s}=e;s.length&&(t=Ut(s,t));const c=t.length-o,u=c-c%16;if(n=function(e,t){if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e}(n,r+u),u){const e=Tn(n,r,r+u);e.set(Tn(t,0,u)),a.process(e,i)}return e.D=Tn(t,u),n}function Nn(e){const{S:t}=e;e.h=!0,t&&t.dispose&&t.dispose()}async function Un(e,t,r,o){e.password=null;const i=Sn[t],s=await async function(e,t,r){if(Dn)try{const o=await zn.importKey("raw",e,mn,!1,yn);return new w(await zn.deriveBits(n.assign({salt:t},hn),o,8*r))}catch{Dn=!1}return function(e,t,n,r){const o=rn(e),i=new w(r),s=new w(t.length+4),c=new h(s.buffer);s.set(t);for(let e=1,n=0;n<r;e++,n+=Gt){c.setUint32(t.length,e),o.update(s,0,s.length);let u=o.digest();const l=u.slice();for(let e=1;e<1e3;e++){o.update(u,0,Gt),u=o.digest();for(let e=0;e<Gt;e++)l[e]^=u[e]}i.set(l.subarray(0,a.min(Gt,r-n)),n)}return i}(e,t,0,r)}(r,o,2*i+2);return e.S=function(e,t){!function(){if(!nn){let e=1,t=1;do{e=255&(e^e<<1^(128&e?27:0)),t=255&(t^t<<1),t=255&(t^t<<2),t=255&(t^t<<4),128&t&&(t^=9),Jt[e]=255&(t^(t<<1|t>>7)^(t<<2|t>>6)^(t<<3|t>>5)^(t<<4|t>>4)^99)}while(1!=e);Jt[0]=99;for(let e=0;e<256;e++){const t=Jt[e],n=sn(t),r=n<<24|t<<16|t<<8|n^t;_t[e]=r,$t[e]=r>>>8|r<<24,en[e]=r>>>16|r<<16,tn[e]=r>>>24|r<<8}nn=!0}}();const n=new Int32Array(60),r=function(e,t){const n=e.length>>2,r=n+6,o=4*(r+1);let i=1;for(let r=0;r<n;r++)t[r]=e[4*r]<<24|e[4*r+1]<<16|e[4*r+2]<<8|e[4*r+3];for(let e=n;e<o;e++){let r=t[e-1];e%n==0?(r=on(r<<8|r>>>24)^i<<24,i=sn(i)):n>6&&e%n==4&&(r=on(r)),t[e]=t[e-n]^r}return r}(e,n),o=new Int32Array(4),i=rn(t);let a=0,s=0,c=0,u=0;return{process(e,t){t&&i.update(e,0,e.length),function(e){const t=new h(e.buffer,e.byteOffset,e.byteLength),n=e.length;let r=0;for(;r+16<=n;r+=16)l(),t.setInt32(r,t.getInt32(r)^o[0]),t.setInt32(r+4,t.getInt32(r+4)^o[1]),t.setInt32(r+8,t.getInt32(r+8)^o[2]),t.setInt32(r+12,t.getInt32(r+12)^o[3]);if(r<n){l();for(let t=0;r<n;r++,t++)e[r]^=o[t>>2]>>>24-8*(3&t)}}(e),t||i.update(e,0,e.length)},digest:()=>i.digest()};function l(){a=a+1|0,a||(s=s+1|0,s||(c=c+1|0,c||(u=u+1|0)));let e=an(a)^n[0],t=an(s)^n[1],i=an(c)^n[2],l=an(u)^n[3],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&l]^n[4],d=_t[t>>>24]^$t[i>>>16&255]^en[l>>>8&255]^tn[255&e]^n[5],w=_t[i>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[6],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[7];e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[8],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[9],i=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[10],l=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[11],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&l]^n[12],d=_t[t>>>24]^$t[i>>>16&255]^en[l>>>8&255]^tn[255&e]^n[13],w=_t[i>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[14],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[15],e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[16],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[17],i=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[18],l=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[19],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&l]^n[20],d=_t[t>>>24]^$t[i>>>16&255]^en[l>>>8&255]^tn[255&e]^n[21],w=_t[i>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[22],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[23],e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[24],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[25],i=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[26],l=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[27],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&l]^n[28],d=_t[t>>>24]^$t[i>>>16&255]^en[l>>>8&255]^tn[255&e]^n[29],w=_t[i>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[30],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[31],e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[32],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[33],i=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[34],l=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[35],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&l]^n[36],d=_t[t>>>24]^$t[i>>>16&255]^en[l>>>8&255]^tn[255&e]^n[37],w=_t[i>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[38],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[39];let m=40;r>10&&(e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[40],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[41],i=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[42],l=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[43],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&l]^n[44],d=_t[t>>>24]^$t[i>>>16&255]^en[l>>>8&255]^tn[255&e]^n[45],w=_t[i>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[46],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[47],m=48),r>12&&(e=_t[f>>>24]^$t[d>>>16&255]^en[w>>>8&255]^tn[255&p]^n[48],t=_t[d>>>24]^$t[w>>>16&255]^en[p>>>8&255]^tn[255&f]^n[49],i=_t[w>>>24]^$t[p>>>16&255]^en[f>>>8&255]^tn[255&d]^n[50],l=_t[p>>>24]^$t[f>>>16&255]^en[d>>>8&255]^tn[255&w]^n[51],f=_t[e>>>24]^$t[t>>>16&255]^en[i>>>8&255]^tn[255&l]^n[52],d=_t[t>>>24]^$t[i>>>16&255]^en[l>>>8&255]^tn[255&e]^n[53],w=_t[i>>>24]^$t[l>>>16&255]^en[e>>>8&255]^tn[255&t]^n[54],p=_t[l>>>24]^$t[e>>>16&255]^en[t>>>8&255]^tn[255&i]^n[55],m=56),o[0]=(Jt[f>>>24]<<24|Jt[d>>>16&255]<<16|Jt[w>>>8&255]<<8|Jt[255&p])^n[m],o[1]=(Jt[d>>>24]<<24|Jt[w>>>16&255]<<16|Jt[p>>>8&255]<<8|Jt[255&f])^n[m+1],o[2]=(Jt[w>>>24]<<24|Jt[p>>>16&255]<<16|Jt[f>>>8&255]<<8|Jt[255&d])^n[m+2],o[3]=(Jt[p>>>24]<<24|Jt[f>>>16&255]<<16|Jt[d>>>8&255]<<8|Jt[255&w])^n[m+3]}}(Tn(s,0,i),Tn(s,i,2*i)),e.h&&Nn(e),Tn(s,2*i)}function Ln(e,t){return t===fe?Pt(e):t}function Tn(e,t,n){return e.subarray(t,n)}class vn extends x{constructor({password:e,rawPassword:t,passwordVerification:n,checkPasswordOnly:r}){super({start(){On(this,e,t,n)},transform(e,t){const n=this;if(n.password||n.rawPassword){const t=kn(n,e.subarray(0,12));if(n.password=n.rawPassword=null,0!=(t[11]^n.passwordVerification))throw new d(un);e=e.subarray(12)}r?t.error(new d(fn)):t.enqueue(kn(n,e))}})}}class In extends x{constructor({password:e,rawPassword:t,passwordVerification:n}){super({start(){On(this,e,t,n)},transform(e,t){const n=this;let r,o;if(n.password||n.rawPassword){n.password=n.rawPassword=null;const t=wn(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Mn(n,t),0),o=12}else r=new w(e.length),o=0;r.set(Mn(n,e),o),t.enqueue(r)}})}}function On(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,{C:o,F:new Ht(o[0]),R:new Ht(o[2])}),r)for(let t=0;t<r.length;t++)Bn(e,r[t]);else for(let n=0;n<t.length;n++)Bn(e,t.charCodeAt(n))}(e,t,r)}function kn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=Vn(e)^t[r],Bn(e,n[r]);return n}function Mn(e,t){const n=new w(t.length);for(let r=0;r<t.length;r++)n[r]=Vn(e)^t[r],Bn(e,t[r]);return n}function Bn(e,t){let[,n]=e.C;e.F.append([t]);const r=~e.F.get();n=Zn(a.imul(Zn(n+Wn(r)),134775813)+1),e.R.append([n>>>24]);const o=~e.R.get();e.C=[r,n,o]}function Vn(e){const t=2|e.C[2];return Wn(a.imul(t,1^t)>>>8)}function Wn(e){return 255&e}function Zn(e){return 4294967295&e}function qn(e){if(e instanceof C)return e;const t=e.getReader();return new C({async pull(e){try{const{value:n,done:r}=await t.read();r?e.close():e.enqueue(n)}catch(e){throw t.cancel(e).catch(()=>{}),e}},cancel:e=>t.cancel(e)})}function Hn(e,t){e=qn(e);const n=t?{type:t}:{};if(typeof y.prototype.stream!=pe||new y([]).stream()instanceof C)return new l(e).blob().then(e=>t?new y([e],n):e);const r=[];return e.pipeTo(new F({write(e){r.push(e)}})).then(()=>new y(r,n))}function Kn(e){if(e instanceof F)return e;const t=e.getWriter();return new F({write:e=>t.write(e),close:()=>t.close(),abort:e=>t.abort(e)})}const Pn="Invalid codec definition",Yn="Reserved compression method",Gn="Invalid codec module",jn="Compression method not supported",Xn=[0,8,9,99],Qn=new c,Jn=new c;function _n(e){return Qn.get(e)}function $n(){return t.from(Qn.values(),e=>n.assign({},e,Jn.get(e.format)))}function er(e){return Jn.get(e)}function tr(e,t){const{CompressionStream:n,DecompressionStream:r}=t;if(typeof n!=pe&&typeof r!=pe)throw new d(Gn);Jn.set(e,{CompressionStream:n,DecompressionStream:r})}const nr="Invalid uncompressed size",rr="Invalid compressed data",or="Codec out of memory",ir="Invalid CRC32",ar="deflate-raw",sr="deflate64-raw",cr="gzip",ur=[31,139,8];class lr extends x{constructor(e,{chunkSize:t,CompressionStreamFallback:n,CompressionStream:r}){super({});const{compressed:o,encrypted:i,useCompressionStream:a,zipCrypto:s,computeCrc32:c,level:u,deflate64:l,format:f,compressionMethod:d,inputSize:w}=e,p=this;let m,y,g,S=super.readable;const E=f&&er(f),b=gr(a,r,n),z=c&&o&&!l&&!E&&(!i||s)&&Boolean(b);if(i&&!s||!c||z||(m=new Kt,S=Er(S,m)),o)if(E)S=br(S,yr(E.CompressionStream,f,{level:u,chunkSize:t,compressionMethod:d,uncompressedSize:w}));else if(z)g=new fr,S=br(S,new b(cr,{level:u,chunkSize:t})),S=Er(S,g);else try{S=Sr(S,a,{level:u,chunkSize:t},r,n)}catch(e){if(!a&&n)throw Fr(e);let t;try{t=new r(cr)}catch{throw Fr(e)}S=br(S,t),S=Er(S,new fr)}i&&(s?S=Er(S,new In(e)):(y=new Cn(e),S=Er(S,y))),hr(p,S,()=>{i&&!s||!c||(p.crc32=z?g.crc32:new h(m.value.buffer).getUint32(0))})}}class fr extends x{constructor(){let e,t=10,n=new w(0);super({transform(e,r){if(t){const n=a.min(t,e.length);if(t-=n,!(e=e.subarray(n)).length)return}const o=n.length+e.length;if(o<=8)return void(n=Ut(n,e));const i=o-8,s=a.min(i,n.length);r.enqueue(Ut(n.subarray(0,s),e.subarray(0,i-s))),n=Ut(n.subarray(s),e.subarray(i-s))},flush(){const t=Tt(n);e.crc32=t.getUint32(0,!0),e.uncompressedSize=t.getUint32(4,!0)}}),e=this}}class dr extends x{constructor(e,{chunkSize:t,DecompressionStreamFallback:n,DecompressionStream:r}){super({});const{zipCrypto:o,encrypted:i,checkCrc32:a,crc32:s,compressed:c,useCompressionStream:l,deflate64:f,format:p,compressionMethod:m,rawBitFlag:y,outputSize:S}=e;let E,b,z,D=super.readable;if(i&&(o?D=Er(D,new vn(e)):(b=new xn(e),D=Er(D,b))),c){const e=new u,o=p&&er(p);let i;if(o)D=br(D,yr(o.DecompressionStream,p,{chunkSize:t,compressionMethod:m,rawBitFlag:y,uncompressedSize:S}),e);else{const o=gr(l,r,n);if(a&&!f&&s!==fe&&S!==fe&&o)try{i=new o(cr,{chunkSize:t})}catch{i=fe}if(!i)try{D=Sr(D,l,{chunkSize:t,deflate64:f},r,n,e)}catch(e){if(f||S===fe||!l&&n)throw Fr(e);try{i=new r(cr)}catch{throw Fr(e)}}}i?(z=!0,D=function(e,t,n,r,o){const i=t.writable.getWriter(),a=t.readable.getReader(),s=r===fe?new Ht:fe;let c,u,l=0,f=!1,p=!1;const m=new C({start(e){u=e},pull(){S()},cancel:e=>(p=!0,S(),a.cancel(e))});return async function(){const t=e.getReader();try{const e=new w(10);for(e.set(ur),await i.write(e);;){await y(),await i.ready;const{value:e,done:n}=await xr(t,o);if(n)break;await i.write(e)}s&&await i.write(new w(0));const a=new w(8),c=Tt(a);c.setUint32(0,s?s.get():r,!0),c.setUint32(4,n,!0),f=!0,await i.write(a),await i.close()}catch(e){await zr(i,e),await Dr(t,e)}}(),async function(){try{for(;;){const{value:e,done:t}=await h();if(t)break;if(l+=e.length,l>n)throw new d(nr);s&&s.append(e),u.enqueue(e)}p||(p=!0,u.close())}catch(e){!function(e){p||(p=!0,u.error(e),S())}(e),await Dr(a,e)}}(),m;function h(){return a.read().catch(e=>{if(f){if(!s)throw Ar(e,ir);if(l!=n)throw Ar(e,nr);return{done:!0}}throw Cr(e,o)})}function y(){if(!p&&u.desiredSize<=0)return new g(e=>c=e)}function S(){if(c){const e=c;c=fe,e()}}}(D,i,S,s,e)):D=function(e,t){const n=e.getReader();return new C({async pull(e){try{const{value:t,done:r}=await n.read();r?e.close():e.enqueue(t)}catch(e){throw await Dr(n,e),Cr(e,t)}},cancel:e=>n.cancel(e)})}(D,e)}a&&!z&&(E=new Kt,D=Er(D,E)),hr(this,D,()=>{if(E){const e=new h(E.value.buffer).getUint32(0,!1);if(s!=e)throw new d(ir)}})}}const wr=new c;function pr(e,t){if(!e)return!1;let n=wr.get(e);n||(n=new c,wr.set(e,n));let r=n.get(t);if(r===fe){try{new e(t),r=!0}catch{r=!1}n.set(t,r)}return r}function mr(e){return pr(e,ar)}function hr(e,t,r){t=Er(t,new x({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function yr(e,t,n){if(!e)throw new d(jn);return new e(t,n)}function gr(e,t,n){return e&&t?t:n&&n.requiresModule?n:void 0}function Sr(e,t,n,r,o,i){const a=t&&r?r:o||r,s=n.deflate64?sr:ar;let c;try{c=new a(s,n)}catch(e){if(!t||!o||a==o)throw e;c=new o(s,n)}return br(e,c,i)}function Er(e,t){return qn(e).pipeThrough(t)}function br(e,t,n){const r=t.writable.getWriter(),o=e.getReader();return async function(){try{for(;;){await r.ready;const e=await xr(o,n);if(e.done){await r.close();break}await r.write(e.value)}}catch(e){await zr(r,e),await Dr(o,e)}}(),t.readable}async function zr(e,t){try{await e.abort(t)}catch{}}async function Dr(e,t){try{await e.cancel(t)}catch{}}function xr(e,t){const n=e.read();return t?n.catch(e=>{throw t.add(e),e}):n}function Cr(e,t){return t.has(e)?e:Ar(e,Rr(e)?or:rr)}function Fr(e){return Rr(e)?Ar(e,or):e}function Rr(e){return vt(e)&&"Z_MEM_ERROR"==e.code}function Ar(e,t){const n=new d(t);return n.cause=e,n}const Nr="data",Ur="deflate",Lr="inflate";class Tr extends x{constructor(e,t){super({});const r=this,{codecType:o}=e;let i;o.startsWith(Ur)?i=lr:o.startsWith(Lr)&&(i=dr),r.outputSize=0;let a=0;const s=new i(e,t),c=super.readable,u=new x({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:a})}}),l=new x({transform(t,n){if(t&&t.length&&(n.enqueue(t),r.outputSize+=t.length,e.outputSize!==fe&&r.outputSize>e.outputSize))throw new d(nr)},flush(){const{crc32:e}=s;n.assign(r,{crc32:e,inputSize:a})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(u).pipeThrough(s).pipeThrough(l)})}}class vr extends x{constructor(e){const t=[];let r=0,i=0;function a(){const n=new w(e);let o=0;for(;o<e;){const r=t[0],i=e-o;r.length<=i?(n.set(r,o),o+=r.length,t.shift()):(n.set(r.subarray(0,i),o),t[0]=r.subarray(i),o+=i)}return r-=e,n}(!o.isFinite(e)||e<1)&&(e=65536),super({transform(n,o){for(t.push(n),r+=n.length;r>e;)i+=e,o.enqueue(a())},flush(e){r&&(i+=r,e.enqueue(function(e,t){const n=new w(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(t,r)))}}),n.defineProperty(this,"outputSize",{get:()=>i})}}const Ir="Worker startup timeout";let Or,kr,Mr,Br=()=>{};async function Vr(){if(Br)try{return await void 0,!0}catch{}return!1}function Wr(e){e.createWorker?kr=!0:Or=!1}class Zr{constructor(e,{readable:t,writable:r},o,i){const{options:a,config:s,A:c,useWebWorkers:u,transferStreams:l,workerURI:f}=o;let{createWorker:d}=o;const{signal:w}=c;return kr&&(d=fe),n.assign(e,{N:!0,U:(e.U||0)+1,readable:t.pipeThrough(new vr(wt(s))).pipeThrough(new qr(c),{signal:w}),writable:r,options:n.assign({},a),L:o,workerURI:f,createWorker:d,transferStreams:l,terminate:()=>new g(t=>{const{T:n,N:r}=e;r?(e.v=e.v||[],e.v.push(t)):(n&&(n.terminate(),e.T=null),t()),e.I=null}),O(){if(e.N){const{v:t,T:n}=e;t&&(e.v=null,n&&(e.M=!0,n.terminate())),e.N=!1;const r=i(e);t&&t.forEach(e=>e(r))}}}),Or===fe&&(Or=typeof U!=we),(u&&Mr&&(Or&&f||d)?Mr:Kr)(e,s)}}class qr extends x{constructor({onstart:e,onprogress:t,size:n,onend:r}){let o=0;super({async start(){e&&await Hr(e,n)},async transform(e,r){o+=e.length,t&&await Hr(t,o,n),r.enqueue(e)},async flush(){r&&await Hr(r,o)}})}}async function Hr(e,...t){try{await e(...t)}catch{}}function Kr(e,t){return{run:()=>Pr(e,t)}}async function Pr({options:e,readable:t,writable:n,O:r,L:o},i){let a,s,c;try{if(e.compressed&&!e.format){const t=e.codecType.startsWith(Ur),n=t?i.CompressionStreamFallback:i.DecompressionStreamFallback,r=t?i.CompressionStream:i.DecompressionStream;e.useCompressionStream?n&&n.requiresModule&&!mr(r)&&await u():await u()||n&&!n.requiresModule||(e.useCompressionStream=!0)}e.encrypted&&!e.zipCrypto&&await u(),a=new Tr(e,i),s=new vr(wt(i));const{signal:r}=o.A;await t.pipeThrough(a).pipeThrough(s).pipeTo(n,{preventClose:!0,preventAbort:!0,signal:r});const{crc32:c,inputSize:l,outputSize:f}=a;return{crc32:c,inputSize:l,outputSize:f}}catch(e){if(a){const t=s?s.outputSize:0;if(o.outputSize=t,vt(e))try{e.outputSize=t}catch{}}throw e}finally{r()}function u(){return c||(c=Vr()),c}}const Yr={type:"module"},Gr="error",jr="abort";let Xr,Qr,Jr,_r=!0;try{_r=typeof I==pe&&I(new DOMException("","AbortError")).code!==fe}catch{}var $r;function eo(e){const{reader:t}=e;t&&t.releaseLock(),e.reader=null,e.writer=null}function to(e){const{T:t}=e;if(t)try{t.terminate()}catch{}e.I=null}function no(e,t,r,o,i=!0){const{createWorker:a}=r;let s,c,u;if(a)s=a();else if(Qr===fe||Xr!==e){const n=typeof e==pe;c=n?e(i):e;const a=c.startsWith("data:"),l=c.startsWith("blob:");if(a||l){o===fe&&(o=!1),o&&(u=Yr);try{s=new U(c,u)}catch(i){if(l)try{f.revokeObjectURL(c)}catch{}if(n&&l)return no(e,t,r,o,!1);if(o)throw i;return no(e,t,r,!0,!1)}}else{o===fe&&(o=!0),o&&(u=Yr);try{c=new f(c,t)}catch{}try{s=new U(c,u)}catch(n){if(o)return no(e,t,r,!1,i);throw n}}Xr=e,Qr=c,Jr=u}else s=new U(Qr,Jr);return s.addEventListener("message",e=>{r.B=!0,ro(r),async function({data:e},t){const{type:r,value:o,messageId:i,result:a,error:s,errorValue:c}=e,{reader:u,writer:l,V:f,W:p,O:m,U:h}=t,y=()=>t.U!=h;try{if(s)g(function(e,t){const{message:r,stack:o,code:i,name:a,outputSize:s,cause:c,codecImportFailed:u}=e;let l;if(l=t?t.value:n.assign(new d(r),{stack:o,code:i,name:a}),vt(l))try{s!==fe&&(l.outputSize=s),u&&(l.codecImportFailed=!0),c&&(vt(l.cause)||(l.cause=n.assign(new d(c.message),{name:c.name})),c.code!==fe&&l.cause.code!==c.code&&(l.cause.code=c.code)),t&&(l.name!==a&&(l.name=a),l.code!==i&&(l.code=i))}catch{}return l}(s,c));else{if("pull"==r){const{value:e,done:n}=await u.read();y()||io({type:Nr,value:e,done:n,messageId:i},t)}if(r==Nr){const e=new w(o);await l.ready,await l.write(e),y()||io({type:"ack",messageId:i},t)}"close"==r&&function(e){y()||(f(e),S(),m())}(a)}}catch(s){y()||(to(t),g(s))}function g(e){y()||(p(e),S(),vt(e)&&e.codecImportFailed||m())}function S(){l&&l.releaseLock()}}(e,r)}),s.addEventListener(Gr,e=>oo(e,r)),s.addEventListener("messageerror",e=>oo(e,r)),s}function ro(e){const{Z:t}=e;t&&(v(t),e.Z=null)}function oo(e,t){e.preventDefault&&e.preventDefault(),ro(t);const{B:r,W:o,writer:i,O:a}=t;to(t),r||(t.T=null);let s=e.error||new d(e.message||Gr);r||(s=n.assign(new d(s.message||Gr),{H:!0}),t.K=s),o&&(o(s),i&&i.releaseLock(),r&&a())}function io(e,{T:t,writer:n,transferStreams:r,B:o}){try{const{value:n,readable:i,writable:a}=e,s=[];if(n&&(e.value=Lt(n),s.push(e.value.buffer)),r&&_r&&o?(i&&s.push(i),a&&s.push(a)):e.readable=e.writable=null,s.length)try{return t.postMessage(e,s),!0}catch{_r=!1,e.readable=e.writable=null,t.postMessage(e)}else t.postMessage(e)}catch(e){throw n&&n.releaseLock(),e}}$r=function(e,t){const{baseURI:r,chunkSize:i,workerStartupTimeout:a}=t;let{wasmURI:s}=t;if(!e.I){let c;typeof s==pe&&(s=s());try{c=no(e.workerURI,r,e)}catch{return Wr(e),Kr(e,t)}n.assign(e,{T:c,B:!1,M:!1,K:null,I:{run:async()=>{try{return await async function(e,t){if(!e.T){const{K:t}=e;e.K=null;const n=t||new d(Ir);throw n.H=!0,n}let r,i;const a=new g((t,n)=>{r=t,i=t=>{const{outputSize:r,L:o}=e;if(o.outputSize=r,vt(t))try{t.outputSize=r}catch{}n(t)}});n.assign(e,{reader:null,writer:null,outputSize:0,P:!1,Y:null,V:r,W:i,result:a});const{readable:s,options:c}=e,{writable:u,closed:l,G:f}=function(e,t){const r=new AbortController;let o;const{writable:i,readable:a}=new x({transform(e,n){t.outputSize+=e.length,n.enqueue(e)}}),s=a.pipeTo(e,{preventClose:!0,preventAbort:!0,signal:r.signal});s.catch(e=>{o||n.assign(t,{P:!0,Y:e})});const{signal:c}=t.L.A;if(c){const e=()=>r.abort(c.reason),t=()=>c.removeEventListener(jr,e);c.addEventListener(jr,e),s.then(t,t)}return{writable:i,closed:s,G:()=>{o=!0,r.abort()}}}(e.writable,e);let w;try{w=io({type:"start",options:c,config:t,readable:s,writable:u},e)}catch(t){f();try{await l}catch{}throw e.O(),t}w||n.assign(e,{reader:s.getReader(),writer:u.getWriter()});const{workerStartupTimeout:p}=t;!e.B&&o.isFinite(p)&&p>=0&&(e.Z=T(()=>function(e){if(e.Z=null,e.B)return;const{W:t,writer:n}=e;if(to(e),e.T=null,t){const e=new d(Ir);e.H=!0,t(e),n&&n.releaseLock()}}(e),p));try{const e=await a;return await m(),await l,e}catch(t){await m(),f();try{await l}catch{}const{outputSize:n,L:r,P:o,Y:i}=e;r.outputSize=n;const a=vt(t)&&(t.codecImportFailed||t.H),s=o&&!a?i:t;if(vt(s))try{s.outputSize=n}catch{}throw s}async function m(){if(!w&&!u.locked)try{await u.getWriter().close()}catch{}}}(e,{chunkSize:i,wasmURI:s,baseURI:r,workerStartupTimeout:a})}catch(n){if(n&&n.H)return Wr(e),eo(e),Pr(e,t);if(n&&n.codecImportFailed){if(e.reader)return eo(e),Pr(e,t);e.O()}throw n}}}})}return e.I},Mr=$r;let ao=[];const so=[];let co,uo,lo=0;async function fo(e,t){const{options:n,config:r}=t,{transferStreams:i,useWebWorkers:a,useCompressionStream:s,compressed:c,checkCrc32:u,computeCrc32:l,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){!Jn.has(e)&&t&&tr(e,await(import(/* webpackIgnore: true */ /* @vite-ignore */t)))}(w,n.codecURI)),t.transferStreams=!w&&(i||i===fe&&r.transferStreams);const S=!(c||u||l||d),E=w===fe||Boolean(n.codecURI);return t.useWebWorkers=!S&&E&&(a||a===fe&&r.useWebWorkers),t.workerURI=t.useWebWorkers&&m?m:fe,t.createWorker=t.useWebWorkers&&h?h:fe,n.useCompressionStream=s||s===fe&&r.useCompressionStream,(await async function(){const n=ao.find(e=>!e.N);if(n)return So(n),new Zr(n,e,t,b);if(ao.length<y){const n={j:lo};return lo++,ao.push(n),new Zr(n,e,t,b)}return new g(n=>{so.push({resolve:n,stream:e,L:t}),uo=r.workerStarvationTimeout,wo()})}()).run();function b(e){if(po(),e.M)return e.M=!1,ho();if(so.length){const[{resolve:t,stream:n,L:r}]=so.splice(0,1);t(new Zr(e,n,r,b)),wo()}else e.T?(So(e),function(e,t){const{config:n}=t,{terminateWorkerTimeout:r}=n;o.isFinite(r)&&r>=0&&(e.X=T(async()=>{ao=ao.filter(t=>t!=e);try{await e.terminate()}catch{}},r))}(e,t)):ao=ao.filter(t=>t!=e)}}function wo(){!co&&so.length&&o.isFinite(uo)&&uo>=0&&(co=T(mo,uo))}function po(){co&&(v(co),co=null)}function mo(){if(co=null,so.length){const[{resolve:e,stream:t,L:n}]=so.splice(0,1);e(new Zr({},t,yo(n),go)),wo()}}function ho(){const e=so.splice(0).map(({resolve:e,stream:t,L:n})=>new g(r=>{e(new Zr({},t,yo(n),()=>{go(),r()}))}));return po(),g.all(e)}function yo(e){return n.assign({},e,{useWebWorkers:!1,workerURI:fe,createWorker:fe})}function go(){po(),wo()}function So(e){const{X:t}=e;t&&(v(t),e.X=null)}const Eo="\0\u263a\u263b\u2665\u2666\u2663\u2660\u2022\u25d8\u25cb\u25d9\u2642\u2640\u266a\u266b\u263c\u25ba\u25c4\u2195\u203c\xb6\xa7\u25ac\u21a8\u2191\u2193\u2192\u2190\u221f\u2194\u25b2\u25bc !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u2302\xc7\xfc\xe9\xe2\xe4\xe0\xe5\xe7\xea\xeb\xe8\xef\xee\xec\xc4\xc5\xc9\xe6\xc6\xf4\xf6\xf2\xfb\xf9\xff\xd6\xdc\xa2\xa3\xa5\u20a7\u0192\xe1\xed\xf3\xfa\xf1\xd1\xaa\xba\xbf\u2310\xac\xbd\xbc\xa1\xab\xbb\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255d\u255c\u255b\u2510\u2514\u2534\u252c\u251c\u2500\u253c\u255e\u255f\u255a\u2554\u2569\u2566\u2560\u2550\u256c\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256b\u256a\u2518\u250c\u2588\u2584\u258c\u2590\u2580\u03b1\xdf\u0393\u03c0\u03a3\u03c3\xb5\u03c4\u03a6\u0398\u03a9\u03b4\u221e\u03c6\u03b5\u2229\u2261\xb1\u2265\u2264\u2320\u2321\xf7\u2248\xb0\u2219\xb7\u221a\u207f\xb2\u25a0\xa0".split("");function bo(e,t){return Do(e,t,!0)}function zo(e){if(!e.some(e=>e>127))return!1;try{return new E("utf-8",{fatal:!0}).decode(e),!0}catch{return!1}}function Do(e,t,n){return t&&"cp437"==t.trim().toLowerCase()?function(e){let t="";for(let n=0;n<e.length;n++)t+=Eo[e[n]];return t}(e):new E(t,{ignoreBOM:n}).decode(e)}const xo="HTTP error ",Co="HTTP Range not supported",Fo="HTTP resource changed",Ro="Writer iterator completed too soon",Ao="Writer not initialized",No="Invalid writer (size must be writable)",Uo="Content-Range",Lo="Range",To="GET",vo="bytes",Io=16777216,Oo="writable",ko=L();class Mo{constructor(){this.size=0}init(){this.initialized=!0}}class Bo extends Mo{get readable(){return this.createReadable()}createReadable({offset:e=0,size:t,chunkSize:n=wt(dt())}={}){const r=this;let o=0;return n=pt(n),new C({async pull(i){const s=t===fe?n:a.min(n,t-o),c=await hi(r,e+o,s);c.length&&(i.enqueue(c),o+=c.length),(t!==fe&&o>=t||!c.length&&s)&&i.close()}})}}class Vo extends Mo{constructor(){super();const e=this,t=new F({write(t){if(!e.initialized)throw new d(Ao);return e.writeUint8Array(Lt(t))}});n.defineProperty(e,Oo,{get:()=>t})}writeUint8Array(){}}let Wo,Zo;class qo extends Bo{constructor(e){super(),n.assign(this,{J:e,size:e.size}),Zo||(Zo=(async()=>{try{const e=new y([new w(3)]).slice(1,2).stream().getReader();let t=0,n=await e.read();for(;!n.done;)t+=n.value.length,n=await e.read();Wo=1==t}catch{Wo=!1}})())}createReadable(e){const{J:t,size:n}=this,{offset:r=0,size:o=n-r}=e||{};if(typeof t.stream==pe){if(!r&&o>=n)return qn(t.stream());if(Wo)return qn(t.slice(r,r+o).stream())}return super.createReadable(e)}async readUint8Array(e,t){const n=this,r=e+t,o=!e&&r>=n.size?n.J:n.J.slice(e,r);let i=await o.arrayBuffer();return i.byteLength>t&&(i=i.slice(e,r)),new w(i)}}class Ho extends Mo{constructor(e){super();const t=this,r=new x;n.defineProperty(t,Oo,{get:()=>r.writable}),t.contentType=e,t._=Hn(r.readable,e),t._.catch(()=>{})}getData(){return this._}}class Ko extends Bo{constructor(e,t){super(),Yo(this,e,t)}async init(){await Go(this,ai,ni),super.init()}createReadable(e){const t=this,{useRangeHeader:n,forceRangeRequests:r,size:o,$:i}=t;if((n||r)&&o!==fe){const{offset:n=0,size:r=o-n}=e||{},s=i&&n>=o-i.length;if(r>0&&n<o&&!s)return function(e,t,n){let r,o=t,i=0,s=n;return new C({start:()=>c(),async pull(e){r||await c();const{value:t,done:n}=await r.read();if(n)throw new d(Co);const o=t.length>i?t.subarray(0,i):t;i-=o.length,s-=o.length,o.length&&e.enqueue(o),i||(await async function(){const e=r;r=fe,await e.cancel()}(),s||e.close())},cancel:e=>r&&r.cancel(e)});async function c(){const t=a.min(e.maximumRangeSize,s),n=await ai(To,e,ei(e,o,t));if(206!=n.status)throw new d(Co);const c=Xo(n);if(c!==fe&&c!=o)throw new d(Co);$o(e,n),_o(e,n),o+=t,i=t,r=n.body.getReader()}}(t,n,a.min(r,o-n))}return super.createReadable(e)}readUint8Array(e,t){return jo(this,e,t,ai,ni)}}class Po extends Bo{constructor(e,t){super(),Yo(this,e,t)}async init(){await Go(this,si,ri),super.init()}readUint8Array(e,t){return jo(this,e,t,si,ri)}}function Yo(e,t,r){const{preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s,checkResourceChanges:c=!0,maximumRangeSize:u=Io,fetch:l}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,n.assign(e,{url:t,options:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s,checkResourceChanges:c,maximumRangeSize:u,fetch:l})}async function Go(e,t,n){const{url:r,preventHeadRequest:o,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:s}=e;if(function(e){const{baseURI:t}=dt(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n}(r)&&(i||a)&&(typeof o==we||o)){const r=await t(To,e,ei(e,s?-65557:void 0)),o=r.headers.get("Accept-Ranges");if(!(a||o&&o.toLowerCase()==vo))throw new d(Co);{let o;s&&206==r.status&&(o=new w(await r.arrayBuffer())),_o(e,r);const i=Qo(r);i===fe?await ii(e,t,n):e.size=i,o&&o.length&&Xo(r)===e.size-o.length&&(e.$=o)}}else await ii(e,t,n)}async function jo(e,t,n,r,o){const{useRangeHeader:i,forceRangeRequests:a,$:s,size:c,options:u}=e;if(i||a){if(t>=c||0===n)return ge;{if(t+n>c&&(n=c-t),s&&t>=c-s.length){const e=t-(c-s.length);return s.slice(e,e+n)}const o=await r(To,e,ei(e,t,n));if(206!=o.status)throw new d(Co);const i=Xo(o);if(i!==fe&&i!=t)throw new d(Co);$o(e,o),_o(e,o);const a=new w(await o.arrayBuffer());if(a.length!=n)throw new d(Co);return a}}{const{data:r}=e;return r||await o(e,u),e.data.subarray(t,t+n)}}function Xo(e){const t=e.headers.get(Uo);if(t){const e=o(t.trim().split(/[\s-]+/)[1]);if(!o.isNaN(e))return e}}function Qo(e){const t=e.headers.get(Uo);if(t){const e=t.trim().split(/\s*\/\s*/)[1];if(e&&"*"!=e){const t=o(e);if(!o.isNaN(t))return t}}}function Jo({headers:e}){return{ee:e.get("Etag")||fe,lastModified:e.get("Last-Modified")||fe}}function _o(e,t){const{checkResourceChanges:n,te:r}=e;n&&!r&&206==t.status&&(e.te=Jo(t))}function $o(e,t){const{checkResourceChanges:r,te:o,size:i}=e;if(r){const e=Qo(t);if(e!==fe&&i!==fe&&e!=i)throw new d(Fo);if(o){const e=Jo(t);if(n.entries(o).some(([t,n])=>n!==fe&&e[t]!==fe&&n!=e[t]))throw new d(Fo)}}}function ei(e,t=0,r=1){return n.assign({},ti(e),{[Lo]:vo+"="+(t<0?t:t+"-"+(t+r-1))})}function ti({options:e}){const{headers:t}=e;if(t)return L.iterator in t?n.fromEntries(t):t}async function ni(e){await oi(e,ai)}async function ri(e){await oi(e,si)}async function oi(e,t){const n=await t(To,e,ti(e));e.data=new w(await n.arrayBuffer()),e.size=e.data.length}async function ii(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=await t("HEAD",e,ti(e)),i=r.headers.get("Content-Length");i&&!r.headers.get("Content-Encoding")?e.size=o(i):await n(e,e.options)}}async function ai(e,{fetch:t=fetch,options:r,url:o},i){const a=await t(o,n.assign({},r,{method:e,headers:i}));if(a.status>=200&&a.status<=299)return a;throw 416==a.status?new d(Co):new d(xo+(a.statusText||a.status))}function si(e,{url:t},r){return new g((o,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status>=200&&a.status<=299){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,e=>e.toUpperCase()),e.push(n)}),o({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new d(Co):new d(xo+(a.statusText||a.status)))},!1),a.addEventListener("error",e=>i(e.detail?e.detail.error:new d("Network error")),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()})}class ci extends Bo{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR&&!t.fetch?new Po(e,t):new Ko(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(e){return this.reader.createReadable(e)}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class ui extends Bo{constructor(e){super(),this.ne=e}async init(){const e=this;e.re=0;const t=e.ne=await g.all(e.ne.map(mi));e.oe=t.map(t=>{const n=e.size;return e.size+=t.size,n}),super.init()}ie(e){const{oe:t,size:n}=this,r=t[e];return r===fe?n:r}async readUint8Array(e,t){const n=this,{ne:r}=this;let o,i=0,s=e;for(;r[i]&&s>=r[i].size;)s-=r[i].size,i++;const c=r[i];if(c){const r=c.size;if(s+t<=r)o=await hi(c,s,t);else{const i=r-s;o=Ut(await hi(c,s,i),await n.readUint8Array(e+i,t-i))}}else o=ge;return n.re=a.max(i,n.re),o}}class li extends Mo{constructor(e,t=4294967295){super();const r=this;let o,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const s=new F({async write(t){if(t===ko)return void(a&&await u());const{availableSize:n}=r;if(a)t.length>=n?(await c(t.subarray(0,n)),await u(),t.length>n&&await this.write(t.subarray(n))):await c(t);else{const{value:n,done:s}=await e.next();if(s&&!n)throw new d(Ro);o=n,o.size=0,o.maxSize&&(r.maxSize=o.maxSize),r.availableSize=r.maxSize,await pi(o),i=n.writable,a=i.getWriter(),await this.write(t)}},async close(){a&&(await a.ready,await l())},async abort(e){a&&await a.abort(e)}});async function c(e){const t=e.length;t&&(await a.ready,await a.write(e),o.size+=t,r.availableSize-=t)}async function u(){await l(),r.diskOffset+=o.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function l(){await a.close()}n.defineProperty(r,Oo,{get:()=>s})}async closeDisk(){const e=this.writable.getWriter();try{await e.ready,await e.write(ko)}finally{e.releaseLock()}}}class fi{constructor(e){return t.isArray(e)&&(e=new ui(e)),(e instanceof C||typeof e.getReader==pe)&&(e={readable:qn(e)}),e}}class di{constructor(e){e.writable===fe&&typeof e.next==pe&&(e=new li(e)),(e instanceof F||typeof e.getWriter==pe)&&(e={writable:Kn(e)});try{e.size=e.size===fe?0:e.size}catch{throw new d(No)}return e}}function wi(e){return Boolean(e&&e.getData)}async function pi(e,t){if(!e.init||e.initialized)return g.resolve();await e.init(t)}async function mi(e){return e=new fi(e),await pi(e),e.size!==fe&&e.readUint8Array||(e=new qo(await Hn(e.readable)),await pi(e)),e}function hi(e,t,n){return e.readUint8Array(t,n)}function yi(e,t){return e.createReadable?e.createReadable(t):e.readUint8Array?Bo.prototype.createReadable.call(e,t):e.readable}function gi(e,t,n){if(!e.some(e=>e.reason==t)){const r={reason:t};n!==fe&&(r.filename=n),e.push(r)}}const Si="filename",Ei="rawFilename",bi="comment",zi="rawComment",Di="uncompressedSize",xi="compressedSize",Ci="offset",Fi="diskNumberStart",Ri="lastModDate",Ai="rawLastModDate",Ni="lastAccessDate",Ui="rawLastAccessDate",Li="creationDate",Ti="rawCreationDate",vi="internalFileAttributes",Ii="externalFileAttributes",Oi="msdosAttributesRaw",ki="msdosAttributes",Mi="msDosCompatible",Bi="zip64",Vi="encrypted",Wi="version",Zi="versionMadeBy",qi="zipCrypto",Hi="directory",Ki="executable",Pi="compressionMethod",Yi="signature",Gi="extraField",ji="unixMode",Xi="setuid",Qi="setgid",Ji="sticky",_i=[Si,Ei,Di,xi,Ri,Ai,bi,zi,Ni,Ui,Li,Ti,Ci,Fi,vi,Ii,Oi,ki,Mi,Bi,Vi,Wi,Zi,qi,Hi,Ki,"symlink",Pi,Yi,"crc32",Gi,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",ji,"unixExternalUpper",Xi,Qi,Ji,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class $i{constructor(e){_i.forEach(t=>this[t]=e[t])}}const ea=new u([1,J,10,_,28789,25461,$,ee,te,22613,13]);function ta(e,t,n){return e?t?12:16+4*n:0}const na="File format is not recognized",ra="End of central directory not found",oa="End of Zip64 central directory locator not found",ia="Central directory header not found",aa="Local file header not found",sa="Zip64 extra field not found",ca="File contains encrypted entry",ua="Encryption method not supported",la="Split zip file",fa="Overlapping entry found",da="Entry data out of bounds",wa="Ambiguous archive",pa="Encrypted central directory is not supported",ma="Unsafe filename",ha="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",ya="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",ga="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Sa="64-bit value exceeds Number.MAX_SAFE_INTEGER",Ea="unsorted central directory",ba="unknown version needed to extract",za="compressed patched data",Da="malformed extra field",xa="unknown zip64 extensible data",Ca="wrapped entries count",Fa="appended data",Ra="prepended data",Aa="prepended central directory",Na="trailing central directory data",Ua="duplicate filename",La="mismatched zip64 end of central directory record",Ta="multiple end of central directory records",va="mismatched local file header (filename)",Ia="mismatched local file header (general purpose bit flag)",Oa="mismatched local file header (compression method)",ka="mismatched local file header (crc32 or sizes)",Ma=/^[a-zA-Z]:/,Ba=/(^|[\\/])\.\.([\\/]|$)/,Va="utf-8",Wa="cp437",Za=[[Di,k],[xi,k],[Ci,k],[Fi,M]],qa={[M]:{ae:Cs,bytes:4},[k]:{ae:Fs,bytes:8}},Ha=i(o.MAX_SAFE_INTEGER);class Ka{constructor(e,t={}){n.assign(this,{reader:new fi(e),options:t,se:{ce:new u,ue:[],le:[]}})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;if(await pi(r),r.size!==fe&&r.readUint8Array||(r=new qo(await Hn(r.readable)),await pi(r)),r.size<j)throw new d(na);const o=t.warnings=[],i=cs(e,t.options),s=i==Me,c=i!=Ve,l=fs(Ss(t,e,ve),i),f=function(e,t){if(e===fe)return t;if(!ss(e))throw new d(ya);return e}(Ss(t,e,"filenameValidation"),i),p=Ss(t,e,"normalizeFilename"),{fe:m,de:h}=await ds(r,c,l);if(!m)throw await async function(e){return await as(e)==W}(r)?new d(la):new d(ra);c&&h>1&&gs(Ta);const y=Tt(m);let g=Cs(y,12),S=Cs(y,16);const E=m.offset,b=xs(y,20),z=E+j+b,D=r.size-z;D>l&&gs(Fa),D>0&&gi(o,Fa);let C=xs(y,4);const F=r.re||0;let R,A,N,U,L,T=xs(y,6),v=xs(y,10),I=0,O=Q;const V=S==k||g==k||v==M||T==M;if(S!=k&&T!=M&&(S+=is(r,T)),V){const e=m.offset>=X?await hi(r,m.offset-X,X):ge,t=Tt(e);if(e.length==X&&Cs(t,0)==Y){S=is(r,Cs(t,4))+Fs(t,8);let e=await hi(r,S,Q),i=Tt(e);const c=m.offset-X-Q;if((e.length<Q||Cs(i,0)!=P)&&S!=c&&c>=0){const t=S;S=c,S>t&&(I=S-t),e=await hi(r,S,Q),i=Tt(e)}if(e.length<Q||Cs(i,0)!=P)throw new d(oa);if(N=!0,U=Fs(i,4)>44,U){const e=a.min(Fs(i,4)-44,r.size-S-Q);e>0&&(O+=e,L=function(e){const t={rawExtensibleData:e};if(e.length>=28){const r=Tt(e),o=xs(r,26);n.assign(t,{compressionMethod:xs(r,0),compressedSize:Fs(r,2),uncompressedSize:Fs(r,10),encryptionAlgorithm:xs(r,18),bitLength:xs(r,20),flags:xs(r,22),hashAlgorithm:xs(r,24),hashData:e.subarray(28,28+o)})}return t}(await hi(r,S+Q,e)))}C==M?C=Cs(i,16):C!=Cs(i,16)&&ys(s,o,La),T==M?T=Cs(i,20):T!=Cs(i,20)&&ys(s,o,La),v==M?v=Fs(i,32):v!=Fs(i,32)&&ys(s,o,La),g==k?g=Fs(i,40):g!=Fs(i,40)&&ys(s,o,La),S=is(r,T)+Fs(i,48)+I}}let Z=g;const q=m.offset-(N?O+X:0);if(S>=r.size&&(I=r.size-S-g-j,S=r.size-g-j),F!=C)throw new d(la);if(S<0)throw new d(na);let K=0,J=await hi(r,S,g),_=Tt(J);if(g){if(J.length<4)throw new d(na);const e=q-g;if(S!=e&&T==C){const t=Cs(_,K)==H||Boolean(L&&L.compressedSize)||ja(_);let n=!t;if(!n&&e>=0&&e+4<=r.size&&(n=Cs(Tt(await hi(r,e,4)),0)==H),n){const n=S;S=e,S>n&&(I+=S-n,R=t),J=await hi(r,S,g),_=Tt(J)}}}const $=q-S;if(g!=$&&$>=0&&T==C&&(g=$,J=await hi(r,S,g),_=Tt(J)),S<0||S>=r.size)throw new d(na);t.directoryOffset=S,t.directoryLength=Z;const ee=Es(t,e,"decryptCentralDirectory");let te,ne;if(ee&&v&&J.length>=4&&Cs(_,0)!=H&&(U||ja(_))){const e=function(e,t,n){const r=e&&e.compressedSize?e.compressedSize:t;return r>0&&r<=n?r:n}(L,Z,J.length);ne=J.subarray(e),J=await ee(J.subarray(0,e),L),_=Tt(J),Z=J.length,te=!0}L&&!te&&(J.length<4||Cs(_,0)==H)&&gi(o,xa),A=S;const ce=Ss(t,e,"filenameEncoding"),ue=Ss(t,e,"commentEncoding"),le=new u;let de,we=-1;const pe=!s&&!N;!v&&pe&&(v=Xa(_,J,K),v&&gi(o,Ca));for(let i=0;i<v;i++){const s=new Ga(r,t.options);if(K+G>J.length||Cs(_,K)!=H){if(0==i&&!te&&(U||ja(_)))throw new d(pa);throw new d(ia)}Ja(s,_,K+6);const c=Boolean(s.bitFlag.languageEncodingFlag),u=K+G,l=u+s.filenameLength+s.extraFieldLength,m=xs(_,K+4),h=!(m>>8),y=m>>8==3,g=xs(_,K+32),S=l+g,E=new w(J.subarray(u,S)),b=E.subarray(0,s.filenameLength),z=E.subarray(s.filenameLength+s.extraFieldLength),D=c||!ce&&zo(b),C=c||!ue&&zo(z),F=Cs(_,K+38),R=F&B,N={readOnly:Boolean(1&R),hidden:Boolean(2&R),system:Boolean(4&R),directory:Boolean(16&R),archive:Boolean(32&R)},L=Cs(_,K+42),T=Es(t,e,"decodeText")||bo,O=D?Va:ce||Wa,k=C?Va:ue||Wa;let V=T(b,O,Oe);if(V===fe&&(V=bo(b,O)),p){const e=p(V);e!==fe&&(V=e)}if(ls(V,f)){const e=new d(ma);throw e.filename=V,e}let W=T(z,k,ke);W===fe&&(W=bo(z,k)),n.assign(s,{index:i,we:te,versionMadeBy:m,msDosCompatible:h,zip64:!1,compressedSize:0,uncompressedSize:0,pe:g,offset:L,diskNumberStart:xs(_,K+34),internalFileAttributes:xs(_,K+36),externalFileAttributes:F,msdosAttributesRaw:R,msdosAttributes:N,rawFilename:b,filenameUTF8:D,commentUTF8:C,rawExtraField:E.subarray(s.filenameLength,s.filenameLength+s.extraFieldLength),rawComment:z,filename:V,comment:W}),_a(s,s,_,K+6)&&gi(o,Da,V),s.offset+=I;const Z=is(r,s.diskNumberStart)+s.offset;A=a.min(Z,A),Z<we&&gi(o,Ea,V),we=Z,(s.version&B)>63&&gi(o,ba,V),32&~s.rawBitFlag||gi(o,za,V),le.has(s.filename)&&(de=!0),le.add(s.filename);const q=s.externalFileAttributes>>16&M;s.unixMode===fe&&16877&q&&(s.unixMode=q);const P=Boolean(s.unixMode&ie),Y=Boolean(s.unixMode&ae),j=Boolean(512&s.unixMode),X=40960==((s.unixMode===fe?q:s.unixMode)&re),Q=!X&&(s.unixMode!==fe?!!(73&s.unixMode):y&&!!(73&q)),$=s.unixMode!==fe&&(s.unixMode&re)==oe,ee=(q&re)==oe;n.assign(s,{setuid:P,setgid:Y,sticky:j,symlink:X,unixExternalUpper:q,executable:Q,directory:$||ee||h&&N.directory||s.filename.endsWith(se),zipCrypto:s.encrypted&&!s.extraFieldAES});const ne=new $i(s);if(ne.getData=(e,n)=>s.getData(e,ne,t.se,n),ne.arrayBuffer=async e=>{const r=new x,o=Hn(r.readable).then(e=>e.arrayBuffer());return o.catch(()=>{}),await s.getData(r,ne,t.se,n.assign({},e,{preventClose:!1})),o},K=S,i==v-1&&pe){const e=Xa(_,J,K);e&&(v+=e,gi(o,Ca))}const{onprogress:me}=e;if(me)try{await me(i+1,v,new $i(s))}catch{}yield ne}let me=K,he=Qa(J.subarray(K))||(te?Qa(ne):fe);if(!he&&!te){const e=S+K,t=a.min(q-e,65541);t>=6&&(he=Qa(await hi(r,e,t)))}he&&(t.digitalSignature=he,me=K+6+he.length),(K!=Z&&me!=Z||!te&&K!=g&&me!=g)&&ys(s,o,Na),de&&ys(s,o,Ua);const ye=Ss(t,e,"extractPrependedData"),Se=Ss(t,e,"extractAppendedData"),Ee=(s||ye)&&v&&4==A&&await async function(e){const t=await as(e);return t==W||808471376==t}(r)?4:0;return s&&(I||v&&A>Ee)&&gs(Ra),(I||v&&A>4)&&gi(o,Ra),R&&gi(o,Aa),ye&&(t.prependedData=A>Ee?await hi(r,Ee,A-Ee):ge),t.comment=b?await hi(r,E+j,b):ge,Se&&(t.appendedData=z<r.size?await hi(r,z,r.size-z):ge),!0}async getEntries(e={}){const t=[];for await(const n of this.getEntriesGenerator(e))t.push(n);return t}async close(){const{reader:e}=this;e.readUint8Array||!e.readable||e.readable.locked||await e.readable.cancel()}[Se](){return this.close()}}class Pa{constructor(e={}){let r;const{readable:o,writable:i}=new x({start(e){r=e}}),a=new Ka(o,e),s=a.getEntriesGenerator(),c=new u;this.readable=new C({async pull(e){const{done:t,value:r}=await s.next();if(t)return e.close();const o=function(e,t){const{readable:n,writable:r}=new x;let o;const i={cancel:async e=>{t.delete(i),await(o?o.cancel(e):n.cancel(e))}};return i.readable=new C({async pull(a){o||(o=n.getReader(),t.add(i),async function(){try{await e.getData(r,{preventClose:!1})}catch(e){try{await r.abort(e)}catch{}}finally{t.delete(i)}}());const{done:s,value:c}=await o.read();s?a.close():a.enqueue(c)},cancel:e=>i.cancel(e)},{highWaterMark:0}),i}(r,c),i={...r,readable:o.readable};delete i.getData,n.defineProperties(i,{localDirectory:{get:()=>r.localDirectory,enumerable:!0},warnings:{get:()=>r.warnings,enumerable:!0}}),e.enqueue(i)},async cancel(e){const n=t.from(c);c.clear(),r.error(e),await g.allSettled(n.map(t=>t.cancel(e))),await g.allSettled([s.return(),a.close()])}}),this.writable=i}}async function Ya(e,t={}){if(e=new fi(e),await pi(e),e.size!==fe&&e.readUint8Array||(e=new qo(await Hn(e.readable)),await pi(e)),e.size<j)return!1;const n=cs(t,{}),r=n!=Ve,o=fs(t[ve],n),{fe:i,de:a}=await ds(e,r,o);if(!i||n==Me&&a>1)return!1;const s=xs(Tt(i),20),c=i.offset+j+s;return e.size-c<=o}class Ga{constructor(e,t){n.assign(this,{reader:e,options:t})}async getData(e,t,r,o={}){const i=this,s=dt(),{reader:c,index:u,offset:l,diskNumberStart:f,extraFieldAES:w,extraFieldZip64:p,compressionMethod:m,bitFlag:h,rawBitFlag:y,crc32:g,rawLastModDate:S,uncompressedSize:E,compressedSize:b}=i,{dataDescriptor:z}=h,D=t.localDirectory={},x=t.warnings=[],C=is(c,f)+l,R=await hi(c,C,ce),A=Tt(R);let N=Ss(i,o,Ee),U=Ss(i,o,be);const L=Qe(Ss(i,o,ze)),T=Boolean(L),v=!0===L;if(Xe(N,U),N=N&&N.length?N:fe,U=U&&U.length?U:fe,w&&99!=w.originalCompressionMethod)throw new d(jn);if(R.length<ce||Cs(A,0)!=V)throw new d(aa);Ja(D,A,4);const{extraFieldLength:I,filenameLength:O}=D,k=D.dataOffset=C+ce+O+I,M=Ss(i,o,"checkLocalDirectory"),W=cs(o,i.options),q=function(e,t){return e===fe?t!=Ve:Boolean(e)}(M,W),H=Ss(i,o,"checkLocalFilename"),K=function(e,t){return e===fe?t==Me:Boolean(e)}(H===fe?M:H,W);let P=ge;if(K&&(O||I)){const e=await hi(c,C+ce,O+I);P=e.subarray(0,O),D.rawExtraField=e.subarray(O)}else D.rawExtraField=I?await hi(c,C+ce+O,I):ge;K&&(D.rawFilename=P),_a(i,D,A,4,!0)&&gi(x,Da),function(e,t,n,r,o){const{rawFilename:i}=e,a=!o,s=e.we&&!(8192&~t.rawBitFlag);!r||s||n.length==i.length&&!n.some((e,t)=>e!=i[t])||ys(a,o,va),(2121&t.rawBitFlag)!=(2121&e.rawBitFlag)&&ys(a,o,Ia),t.compressionMethod!=e.compressionMethod&&ys(a,o,Oa),t.bitFlag.dataDescriptor||s||!(t.crc32||t.compressedSize||t.uncompressedSize)||t.crc32==e.crc32&&t.compressedSize==e.compressedSize&&t.uncompressedSize==e.uncompressedSize||ys(a,o,ka)}(i,D,P,K,q?fe:x);const{lastAccessDate:Y,creationDate:G,uid:j,gid:X}=D;Y&&(t.lastAccessDate=Y),G&&(t.creationDate=G),j!==fe&&t.uid===fe&&(t.uid=j),X!==fe&&t.gid===fe&&(t.gid=X);const Q=Ss(i,o,"checkPasswordOnly"),J=i.encrypted&&(!v||Q),_=J&&!w;if(v||(t.zipCrypto=_),J&&!(64&~i.rawBitFlag))throw new d(ua);const $=T?fe:_n(m);if(0!=m&&8!=m&&9!=m&&!$&&!T)throw new d(jn);if(J){if(!_&&(w.strength<1||w.strength>3))throw new d(ua);if(!N&&!U)throw new d(ca)}if(k+b>c.size)throw new d(da);const ee=b,te=Ge(Ss(i,o,De));je(te);let ne=Ss(i,o,"checkOverlappingEntry");const re=Ss(i,o,"checkOverlappingEntryOnly");re&&(ne=!0);const{onstart:oe,onprogress:ie,onend:ae}=o,se=0!=m&&!T,ue=T?b-ta(J,_,w&&w.strength):E,le=9==m;let de=Ss(i,o,Ce);le&&(de=!1);const we=Ss(i,o,"checkCrc32"),pe=(we===fe?Ss(i,o,"checkSignature"):we)&&!T&&(!J||_||w&&1==w.vendorVersion),me={options:{codecType:Lr,password:N,rawPassword:U,zipCrypto:_,encryptionStrength:w&&w.strength,checkCrc32:pe,checkAuthenticationCode:Ss(i,o,"checkAuthenticationCode"),passwordVerification:_&&(z?S>>>8&B:g>>>24&B),outputSize:ue,crc32:g,compressed:se,encrypted:J,useWebWorkers:Ss(i,o,xe),useCompressionStream:de,transferStreams:Ss(i,o,Fe),deflate64:le,format:$?$.format:fe,codecURI:$?$.codecURI:fe,compressionMethod:m,rawBitFlag:y,checkPasswordOnly:Q},config:s,A:{signal:te,size:ee,onstart:oe,onprogress:ie,onend:ae}};let he,ye,Se;ne&&await async function({reader:e,me:t,index:n,offset:r,crc32:o,compressedSize:i,uncompressedSize:a,dataOffset:s,dataDescriptor:c,extraFieldZip64:u,se:l}){let f=0;if(c&&(f=u?20:12),f){const n=await hi(e,s+i,f+4),r=Tt(n);let c=n.length==f+4&&Cs(r,0)==Z;if(c){const e=os(r,4,u);(t.encrypted&&!t.zipCrypto||e.crc32==o)&&e.compressedSize==i&&e.uncompressedSize==a?f+=4:c=!1}if(n.length>=f){const e=os(r,c?4:0,u);e.signature=c,t.localDirectory.dataDescriptor=e}}const w={start:r,end:s+i+f,me:t},{ce:p,ue:m,le:h}=l;if(!p.has(n)){const e=function(e,t){let n=0,r=e.length;for(;n<r;){const o=n+r>>>1;e[o].start<t.start?n=o+1:r=o}const o=e[n-1],i=e[n];return o&&rs(t,o)?o:i&&rs(t,i)?i:void 0}(m,w)||h.find(e=>rs(w,e));if(e){const t=new d(fa);throw t.overlappingEntry=e.me,t}p.add(n),h.push(w),h.length*h.length>m.length&&(h.sort((e,t)=>e.start-t.start),l.ue=function(e,t){const n=[];let r=0,o=0;for(;r<e.length||o<t.length;)o==t.length||r<e.length&&e[r].start<t[o].start?n.push(e[r++]):n.push(t[o++]);return n}(m,h),h.length=0)}}({reader:c,me:t,index:u,offset:C,crc32:g,compressedSize:b,uncompressedSize:E,dataOffset:k,dataDescriptor:z||D.bitFlag.dataDescriptor,extraFieldZip64:p||D.extraFieldZip64,se:r});try{if(!re){Q&&(e=new F),e=new di(e),await pi(e,function(e,t,n){return a.min(e,n?1032*t:t)}(ue,b,se)),({writable:he}=e);const t=qn(c.createReadable({offset:k,size:ee})),{outputSize:r}=await fo({readable:t,writable:he},me);if(je(te),r!=ue)throw n.assign(new d(nr),{outputSize:r});e.size+=r}}catch(t){const{outputSize:n}=me;if(n!==fe?e.size+=n:vt(t)&&t.outputSize!==fe&&(e.size+=t.outputSize),!Q||!vt(t)||t.message!=fn)throw ye=t,Se=!0,t}finally{if((wi(e)||!Ss(i,o,Re))&&he&&!he.locked){const e=he.getWriter();if(Se)try{await e.abort(ye)}catch{}else await e.close()}}return Q||re?fe:e.getData?e.getData():he}}function ja(e){const t=a.min(e.byteLength,1024)-3;for(let n=0;n<t;n++)if(134630224==Cs(e,n))return!0;return!1}function Xa(e,t,n){let r=0;for(;n+G<=t.length&&Cs(e,n)==H;)n+=G+xs(e,n+28)+xs(e,n+30)+xs(e,n+32),r++;return r%65536?0:r}function Qa(e){if(e.length>=6){const t=Tt(e);if(Cs(t,0)==q){const n=xs(t,4);if(6+n<=e.length)return new w(e.subarray(6,6+n))}}}function Ja(e,t,r){const o=e.rawBitFlag=xs(t,r+2),i=!(1&~o),a=Cs(t,r+6);n.assign(e,{encrypted:i,version:xs(t,r),bitFlag:{level:(6&o)>>1,dataDescriptor:!(8&~o),languageEncodingFlag:(o&ne)==ne},rawLastModDate:a,lastModDate:bs(a),filenameLength:xs(t,r+22),extraFieldLength:xs(t,r+24)})}function _a(e,t,r,o,i){const{rawExtraField:a}=t,u=t.extraField=new c,l=Tt(a);let f=0,w=!1;try{for(;f<a.length;){const e=xs(l,f),t=xs(l,f+2);u.set(e,{type:e,data:a.slice(f+4,f+4+t)}),f+=4+t}}catch{w=!0}f>a.length&&(w=!0);const p=xs(r,o+4);n.assign(t,{signature:Cs(r,o+10),crc32:Cs(r,o+10),compressedSize:Cs(r,o+14),uncompressedSize:Cs(r,o+18)});const m=u.get(1);if(m)(function(e,t,n){t.zip64=!0;const r=Tt(e.data),o=Za.filter(([e,n])=>t[e]==n),i=o.reduce((e,[,t])=>e+qa[t].bytes,0);if(e.data.length<i){if(n)return!1;throw new d(sa)}const a=[];try{for(let e=0,t=0;e<o.length;e++){const[,n]=o[e],i=qa[n];a.push(i.ae(r,t)),t+=i.bytes}}catch(e){if(n)return!1;throw e}return o.forEach(([n],r)=>{t[n]=e[n]=a[r]}),!0})(m,t,i)||(w=!0),t.extraFieldZip64=m;else if(Za.some(([e,n])=>t[e]==n)){if(!i)throw new d(sa);w=!0}const h=u.get(28789);h&&($a(h,Si,Ei,t,e),t.extraFieldUnicodePath=h);const y=u.get(25461);y&&($a(y,bi,zi,t,e),t.extraFieldUnicodeComment=y);const g=u.get(J);g&&(99==p||t.encrypted)&&g.data.length>=7?(function(e,t,r){const o=Tt(e.data),i=Ds(o,4);n.assign(e,{vendorVersion:Ds(o,0),vendorId:Ds(o,2),strength:i,originalCompressionMethod:r,compressionMethod:xs(o,5)}),t.compressionMethod=e.compressionMethod,1!=e.vendorVersion&&(t.crc32=fe)}(g,t,p),t.extraFieldAES=g):(g&&(w=!0),t.compressionMethod=p);const S=u.get(13);S&&(es(S,t),t.extraFieldPkwareUnix=S);const E=u.get(22613);E&&(es(E,t),t.extraFieldUnixType1=E);const b=u.get(10);b&&(function(e,t){const r=Tt(e.data);let o,i=4;try{for(;i<e.data.length&&!o;){const t=xs(r,i),n=xs(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),a=r.getBigUint64(8,!0),s=r.getBigUint64(16,!0);n.assign(e,{rawLastModDate:i,rawLastAccessDate:a,rawCreationDate:s});const c={lastModDate:zs(i),lastAccessDate:zs(a),creationDate:zs(s)};n.assign(e,c),n.assign(t,c,{rawLastAccessDate:a,rawCreationDate:s})}}(b,t),t.extraFieldNTFS=b);const z=u.get(te);let D;if(z&&(D=ts(z,t,!1),t.extraFieldUnix=z),!D){const e=u.get(ee);e&&(ts(e,t,!0),t.extraFieldInfoZip=e)}const x=u.get(_);x&&(function(e,t,n){if(!e.data.length)return;const r=Tt(e.data),o=Ds(r,0),i=[],a=[];n?(1&~o||(i.push(Ri),a.push(Ai)),2&~o||(i.push(Ni),a.push(Ui)),4&~o||(i.push(Li),a.push(Ti))):e.data.length>=5&&(i.push(Ri),a.push(Ai));let c=1;i.forEach((n,o)=>{if(e.data.length>=c+4){const i=Cs(r,c);t[n]=e[n]=new s(1e3*(0|i));const u=a[o];e[u]=i}c+=4})}(x,t,i),t.extraFieldExtendedTimestamp=x);const C=u.get($);return C&&(t.extraFieldUSDZ=C),w}function $a(e,t,r,o,i){if(e.data.length<5)return void(e.valid=!1);const a=Tt(e.data),s=new Ht;s.append(i[r]);const c=Tt(new w(4));c.setUint32(0,s.get(),!0);const u=Cs(a,1),l=Ds(a,0);n.assign(e,{version:l,[t]:bo(e.data.subarray(5)),valid:1==l&&!i.bitFlag.languageEncodingFlag&&u==Cs(c,0)}),e.valid&&(o[t]=e[t],o[t+"UTF8"]=!0)}function es(e,t){if(e.data.length<8)return;const r=Tt(e.data),o={lastAccessDate:new s(1e3*(0|Cs(r,0))),lastModDate:new s(1e3*(0|Cs(r,4)))};e.data.length>=12&&(o.uid=xs(r,8),o.gid=xs(r,10)),n.assign(e,o),n.assign(t,o)}function ts(e,t,r){try{const o=Tt(e.data);let i,a;if(r){let t=0;const r=Ds(o,t++),s=Ds(o,t++);i=ns(e.data.subarray(t,t+s)),t+=s;const c=Ds(o,t++);a=ns(e.data.subarray(t,t+c)),n.assign(e,{version:r,uid:i,gid:a})}else e.data.length>=4&&(i=xs(o,0),a=xs(o,2),n.assign(e,{uid:i,gid:a}));return i!==fe&&(t.uid=i),a!==fe&&(t.gid=a),i!==fe||a!==fe}catch{}}function ns(e){const t=new w(4);return t.set(e,0),new h(t.buffer,t.byteOffset,4).getUint32(0,!0)}function rs(e,t){return e.start<t.end&&t.start<e.end}function os(e,t,n){const r=Cs(e,t);let o,i;return n?(o=Fs(e,t+4),i=Fs(e,t+12)):(o=Cs(e,t+4),i=Cs(e,t+8)),{crc32:r,compressedSize:o,uncompressedSize:i}}function is(e,t){return e.ie?e.ie(t):0}async function as(e){return Cs(Tt(await hi(e,0,4)))}function ss(e){return e===Me||e===Be||e===Ve}function cs(e,t){return us(e,us(t,Be))}function us(e,t){const n=e.strictness;if(n!==fe){if(!ss(n))throw new d(ha);return n}const r=e.checkAmbiguity;return r===fe?t:r?Me:t==Ve?Ve:Be}function ls(e,t){if(t==Ve)return!1;const n=e.split("/");return n.length>1&&""===n[n.length-1]&&n.pop(),!!(Ba.test(e)||e.startsWith("/")||e.startsWith("\\")||Ma.test(e))||t==Me&&(n.includes(".")||n.includes("")||e.includes("\0"))}function fs(e,t){if(e!==fe){const t=$e(e);if("number"!=typeof t||o.isNaN(t)||t<0)throw new d(ga);return t}return t==Me?0:t==Ve?1/0:M}async function ds(e,t,n){const{size:r}=e,o=a.min(r,65557),i={he:64};let s,c,u=0;for await(const[n,a,l,f,d]of ws(e,o)){const o=xs(n,f+20);if(d+j+o==r){const o=await ms(e,n,a,f,d,r,i);if(2==o){if(s||(s=ps(l,f,d)),u++,!t||u>1)break}else 1!=o||c||(c=ps(l,f,d))}}return s||(s=c),s||(s=await async function(e,t,n){const{size:r}=e,o=a.min(r,t==1/0?r:65557+t);let i,s;for await(const[t,a,c,u,l]of ws(e,o)){const o=ps(c,u,l);i||(i=o);const f=await ms(e,t,a,u,l,r,n);if(2==f)return o;1!=f||s||(s=o)}return s||i}(e,n,i)),{fe:s,de:u}}async function*ws(e,t){const n=e.size-t,r=await hi(e,n,t),o=Tt(r);for(let e=r.length-j;e>=0;e--)Cs(o,e)==K&&(yield[o,n,r,e,n+e])}function ps(e,t,n){return{offset:n,buffer:new w(e.subarray(t,t+j)).buffer}}async function ms(e,t,n,r,o,i,a){const s=xs(t,r+10),c=Cs(t,r+12),u=Cs(t,r+16);if(s==M||c==k||u==k)return await hs(e,t,n,o-X,i,a)==Y?2:0;if(!s&&!c)return 1;const l=xs(t,r+6);for(const r of[o-c,is(e,l)+u])if(await hs(e,t,n,r,i,a)==H)return 2;return 0}async function hs(e,t,n,r,o,i){return r<0||r+4>o?fe:r>=n?Cs(t,r-n):i.he>0?(i.he--,Cs(Tt(await hi(e,r,4)),0)):fe}function ys(e,t,n){e?gs(n):gi(t,n)}function gs(e){const t=new d(wa);throw t.reason=e,t}function Ss(e,t,n){return t[n]===fe?e.options[n]:t[n]}function Es(e,t,n){return Ye(Ss(e,t,n))}function bs(e){const t=(4294901760&e)>>16,n=e&M,r=new s(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return r<le?le:r}function zs(e){return new s(o(e/i(1e4)-i(116444736e5)))}function Ds(e,t){return e.getUint8(t)}function xs(e,t){return e.getUint16(t,!0)}function Cs(e,t){return e.getUint32(t,!0)}function Fs(e,t){const n=e.getBigUint64(t,!0);if(n>Ha)throw new d(Sa);return o(n)}var Rs=n.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:wa,ERR_BAD_FORMAT:na,ERR_CENTRAL_DIRECTORY_NOT_FOUND:ia,ERR_CODEC_OUT_OF_MEMORY:or,ERR_ENCRYPTED:ca,ERR_ENCRYPTED_CENTRAL_DIRECTORY:pa,ERR_ENTRY_DATA_OUT_OF_BOUNDS:da,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:oa,ERR_EOCDR_NOT_FOUND:ra,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:sa,ERR_INVALID_AUTHENTICATION_CODE:ln,ERR_INVALID_COMPRESSED_DATA:rr,ERR_INVALID_CRC32:ir,ERR_INVALID_FILENAME_VALIDATION:ya,ERR_INVALID_MAX_APPENDED_DATA_SIZE:ga,ERR_INVALID_PASSWORD:un,ERR_INVALID_STRICTNESS:ha,ERR_INVALID_UNCOMPRESSED_SIZE:nr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:aa,ERR_OVERLAPPING_ENTRY:fa,ERR_SPLIT_ZIP_FILE:la,ERR_UNSAFE_FILENAME:ma,ERR_UNSUPPORTED_COMPRESSION:jn,ERR_UNSUPPORTED_ENCRYPTION:ua,ERR_UNSUPPORTED_UINT64:Sa,ERR_WORKER_STARTUP_TIMEOUT:Ir,WARNING_APPENDED_DATA:Fa,WARNING_COMPRESSED_PATCHED_DATA:za,WARNING_DUPLICATE_FILENAME:Ua,WARNING_MALFORMED_EXTRA_FIELD:Da,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:Ia,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:Oa,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:ka,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:va,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:La,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:Ta,WARNING_PREPENDED_CENTRAL_DIRECTORY:Aa,WARNING_PREPENDED_DATA:Ra,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Na,WARNING_UNKNOWN_VERSION:ba,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:xa,WARNING_UNSORTED_CENTRAL_DIRECTORY:Ea,WARNING_WRAPPED_ENTRIES_COUNT:Ca,ZipReader:Ka,ZipReaderStream:Pa,isZipFile:Ya});const As="File already exists",Ns="Zip file comment exceeds 64KB",Us="Invalid zip file comment (must be a Uint8Array)",Ls="File entry comment exceeds 64KB",Ts="Invalid file entry comment (must be a string)",vs="Invalid date (must be a valid Date instance)",Is="File entry name exceeds 64KB",Os="Version exceeds 65535",ks="The strength must equal 1, 2, or 3",Ms="Encryption is not supported in USDZ files",Bs="Split zip files are not supported in USDZ files",Vs="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",Ws="Invalid extra field (must be a Map)",Zs="Invalid extra field type (must be integer 0..65535)",qs="Invalid extra field data (must be a Uint8Array)",Hs="Extra field data exceeds 64KB",Ks=-2147483648,Ps=2147483647,Ys=i(0),Gs=i("0x7fffffffffffffff"),js="Zip64 is not supported (set the 'zip64' option to 'true')",Xs="Undefined uncompressed size",Qs="Undefined compression method",Js="Undefined CRC32",_s="Undefined reader",$s="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",ec="Zip file not empty",tc="Invalid uid (must be integer 0..2^32-1)",nc="Invalid gid (must be integer 0..2^32-1)",rc="Invalid UNIX mode (must be integer 0..65535)",oc="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",ic="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",ac="Invalid msdosAttributesRaw (must be integer 0..255)",sc="Invalid msdosAttributes (must be an object with boolean flags)",cc="Invalid level (must be integer 0..9)",uc="Signature data exceeds 64KB",lc="Invalid entry option (must be an entry returned by ZipReader#getEntries())",fc="The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set",dc="compression unavailable",wc="clamped last modification date",pc=new w([7,0,2,0,65,69,3,0,0]),mc="infozip",hc="unix",yc=[8,9,5,3];let gc=0;const Sc=[];class Ec{constructor(e,t={}){e=new di(e);const{availableSize:r=de,maxSize:o=de}=e,i=r>0&&r!==de&&o>0&&o!==de;if(i&&t[Te])throw new d(Bs);n.assign(this,{writer:e,ye:i,options:t,ge:new c,Se:new u,offset:t[Le]===fe?e.size||e.writable.size||0:t[Le],Ee:t[Le]===fe?0:t[Le]-(e.size||e.writable.size||0),be:new u,ze:[],warnings:[],De:0,xe:0,Ce:fe,Fe:!1})}prependZip(e){return Dc(this,async function(e,t){if(e.Se.size)throw new d(ec);await e.Re(t)}(this,e))}appendZip(e){return Dc(this,this.Re(e))}async Re(e){const r=this,{be:o,Se:i,ge:a}=r;for(;o.size;)await g.allSettled(t.from(o));let s;const u=new g(e=>s=e);o.add(u);const l=[];let f;try{e=new fi(e),await pi(e),e.size!==fe&&e.readUint8Array||(e=new qo(await Hn(e.readable)),await pi(e));const{ZipReader:o}=await g.resolve().then(function(){return Rs}),s=new o(e),u=await s.getEntries();await s.close(),await pi(r.writer);const{directoryOffset:w}=s;u.forEach(({filename:e})=>{if(i.has(e))throw new d(As);i.add(e),l.push(e)}),r.Ae=!0;const{Ne:p}=r;r.Ne=new g(e=>f=()=>{r.Ae=!1,e()}),await p,r.ye&&(delete r.ye,await async function(e){return Tt(await hi(e,0,4)).getUint32(0,!0)==W}(e)||(await Wc(r.writer,Bc()),r.offset+=4));const m=await async function(e,n,r,o){const{writer:i}=e,a=new c;if(i.closeDisk){const s=t.from(r).sort((e,t)=>Mc(n,e)-Mc(n,t));let c=0;for(const t of s){const r=Mc(n,t);await Oc(e,n,c,r-c),Tc(i,await kc(n,r))&&await i.closeDisk(),a.set(t,{offset:vc(e,i),diskNumberStart:Uc(i)}),c=r}await Oc(e,n,c,o-c)}else{const t=e.offset;await Oc(e,n,0,o),r.forEach(e=>a.set(e,{offset:t+Mc(n,e),diskNumberStart:0}))}return a}(r,e,u,w);u.forEach(e=>{const{version:t,rawLastModDate:r,rawFilename:o,bitFlag:i,encrypted:s,uncompressedSize:c,compressedSize:u,extraFieldZip64:l}=e;let{compressionMethod:f,rawExtraField:d}=e;const{level:w,languageEncodingFlag:p,dataDescriptor:h}=i;d=Ic(d||ge),e.extraFieldAES&&(f=99);const y=nu(d),g=Boolean(l)&&l.uncompressedSize!==fe,S=Boolean(l)&&l.compressedSize!==fe,E=-7&iu(w,p,h,s,f)|w<<1,{Ue:b,Le:z}=ru({version:t,bitFlag:E,compressionMethod:f,uncompressedSize:c,compressedSize:u,rawLastModDate:r,rawFilename:o,Te:S,ve:g,extraFieldLength:y}),{crc32:D}=e;D!==fe&&$c(z,10,D);const{offset:x,diskNumberStart:C}=m.get(e);n.assign(e,{Ie:!0,ve:g,Te:S,offset:x,diskNumberStart:C,Oe:!1,ke:ge,Me:ge,Be:ge,Ve:ge,We:ge,rawExtraField:d,Ze:ge,Ue:b,Le:z}),a.set(e.filename,e)})}catch(e){throw l.forEach(e=>i.delete(e)),e}finally{s(),o.delete(u),f&&f()}}add(e="",r,u={}){const l=this,{be:f}=l,p=async function(e,r,u,l){const f=(l=n.assign({},l))[Ie];if(f!==fe){const{qe:r,He:o}=function(e,r,o){if(null===e||typeof e!=me||t.isArray(e))throw new d(lc);const{externalFileAttributes:i,versionMadeBy:u,comment:l,lastModDate:f,rawLastModDate:w,creationDate:p,lastAccessDate:m,uncompressedSize:h,encrypted:y,zipCrypto:g,crc32:S,compressionMethod:E,extraFieldAES:b,extraFieldUnix:z,internalFileAttributes:D,extraField:x,bitFlag:C,directory:F,uid:R,gid:A}=e,N={externalFileAttributes:i,versionMadeBy:u,comment:l,lastModDate:f,creationDate:p,lastAccessDate:m,internalFileAttributes:D,directory:F};C&&C.languageEncodingFlag&&(N[Ne]=!0);const U=function(e){if(e){const t=new c;if(e.forEach((e,n)=>{ea.has(n)||t.set(n,e.data)}),t.size)return t}}(x);U&&(N[Gi]=U),R===fe&&A===fe||n.assign(N,{uid:R,gid:A,unixExtraFieldType:z?hc:mc});const L={};if(r&&!F)if(n.assign(L,{uncompressedSize:h,crc32:S,compressionMethod:E}),r!==We&&n.assign(L,{encrypted:y,zipCrypto:g,encryptionStrength:b?b.strength:fe}),C&&(L.dataDescriptor=C.dataDescriptor,L[Ae]=yc[C.level]),o===fe)L.rawLastModDate=w;else if(r!==We&&g&&(!C||C.dataDescriptor)&&o instanceof s&&function(e){let t=new s(2e3*a.ceil(a.floor(e.getTime()/1e3)/2));return t<le?t=le:t>ue&&(t=ue),(t.getHours()<<3|t.getMinutes()>>3)&B}(o)!=(w>>>8&B))throw new d(fc);return{qe:N,He:L}}(f,Qe(Pc(e,l,ze)),Pc(e,l,Ri));delete l[Ie],l=n.assign(r,o,l)}if(Pc(e,l,Hi)&&!r.endsWith(se)&&(r+=se),e.Se.has(r))throw new d(As);e.Se.add(r),gc<dt().maxWorkers?gc++:await new g(e=>Sc.push(e));try{return await async function(e,r,c,u){const l=function(e,n,r){let o=Pc(e,r,Mi),i=Pc(e,r,Zi,o?20:768);const a=Pc(e,r,Ki),s=jc(e,r,"uid"),c=jc(e,r,"gid");let u=jc(e,r,ji),l=Pc(e,r,"unixExtraFieldType"),f=Pc(e,r,Xi),w=Pc(e,r,Qi),p=Pc(e,r,Ji);if(_e(s,k,tc),_e(c,k,nc),_e(u,M,rc),l!==fe&&l!==mc&&l!==hc)throw new d(oc);if(l===hc&&(s!==fe&&s>M||c!==fe&&c>M))throw new d(ic);l!==fe||s===fe&&c===fe||(l=mc);let m=jc(e,r,Oi),h=Pc(e,r,ki);const y=m!==fe||h!==fe;if(s!==fe||c!==fe||u!==fe||l||a?(o=!1,i=i&B|768):y&&(o=!0,i&=B),_e(m,B,ac),h&&(typeof h!==me||t.isArray(h)))throw new d(sc);if(i>M)throw new d(Os);let g=Pc(e,r,Ii);const S=g!==fe;S||(g=0),!r[Hi]&&n.endsWith(se)&&(r[Hi]=!0);const E=Pc(e,r,Hi);if(E?(n.endsWith(se)||(n+=se),S||(g=16,o||(g|=16877<<16))):o||S||(g=a?493<<16:27525120),!o){const e=u!==fe||Boolean(f||w||p);u=u===fe?g>>16&M:u&M,f?u|=ie:f=Boolean(u&ie),w?u|=ae:w=Boolean(u&ae),p?u|=512:p=Boolean(512&u),S&&!e||(E?u=-61441&u|oe:u&re||(u|=32768),g=(u&M)<<16|g&M)}({msdosAttributesRaw:m,msdosAttributes:h}=function(e,t){if(e!==fe)e&=B;else if(t!==fe){const{readOnly:n,hidden:r,system:o,directory:i,archive:a}=t;let s=0;n&&(s|=1),r&&(s|=2),o&&(s|=4),i&&(s|=16),a&&(s|=32),e=s&B}return t===fe&&(t={readOnly:Boolean(1&e),hidden:Boolean(2&e),system:Boolean(4&e),directory:Boolean(16&e),archive:Boolean(32&e)}),{msdosAttributesRaw:e,msdosAttributes:t}}(m,h)),y&&(g=g&k|m&B);const b=g>>16&M,z=u!==fe&&40960==(u&re);return{name:n,Ke:{versionMadeBy:i,msDosCompatible:Boolean(o),externalFileAttributes:g,unixExternalUpper:b,uid:s,gid:c,unixMode:u,unixExtraFieldType:l,symlink:z,setuid:f,setgid:w,sticky:p,msdosAttributesRaw:m,msdosAttributes:h}}}(e,r,u);({name:r}=l);const f=function(e,t,n){const r=Gc(e,n,"encodeText")||Pt;let i=r(t,Oe);if(i===fe&&(i=Pt(t)),nu(i)>M)throw new d(Is);const a=n[bi]||"";if(typeof a!=he)throw new d(Ts);let c=r(a,ke);if(c===fe&&(c=Pt(a)),nu(c)>M)throw new d(Ls);const u=Pc(e,n,Wi);if(u!==fe&&u>M)throw new d(Os);const l=Yc(e,n,Ri,new s),f=Pc(e,n,Ai),w=Yc(e,n,Ni),p=Yc(e,n,Li),m=Pc(e,n,vi,0),h=Qe(Pc(e,n,ze)),y=Boolean(h),g=!0===h;let S=Pc(e,n,Ee),E=Pc(e,n,be);Xe(S,E),S=S&&S.length?S:fe,E=E&&E.length?E:fe;const b=jc(e,n,"encryptionStrength",3),z=Pc(e,n,qi),D=Pc(e,n,"extendedTimestamp",!0),x=Pc(e,n,"ntfsTimestamp"),C=Pc(e,n,"keepOrder",!0),F=Pc(e,n,xe),R=Pc(e,n,Fe),A=Pc(e,n,"bufferedWrite"),N=Gc(e,n,"createTempStream"),U=Pc(e,n,"dataDescriptorSignature",!0),L=Ge(Pc(e,n,De));je(L);const T=Pc(e,n,Ne,!ou(i)||!ou(c)),v=Pc(e,n,Pi),I=y||v===fe?fe:_n(v);if(!y&&v!==fe&&0!==v&&8!==v&&!I)throw new d(jn);let O=jc(e,n,Ae);if(_e(O,9,cc),e.options[Te]){if(S!==fe||E!==fe)throw new d(Ms);O===fe&&v===fe&&(O=0)}y&&(O=$e(n[Ae]));let k=Pc(e,n,Ce),B=Pc(e,n,Ue);A&&B===fe&&(B=!1),(B===fe||z&&!g)&&(B=!0),O!==fe&&6!=O&&(k=!1);const V=Pc(e,n,Bi);if(!(z||S===fe&&E===fe||o.isInteger(b)&&b>=1&&b<=3))throw new d(ks);const W=Fc(n[Gi]),Z=Fc(n.localExtraField),q=Fc(n.centralExtraField);return{comment:a,Ke:{rawFilename:i,rawComment:c,version:u,lastModDate:l,rawLastModDate:f,lastAccessDate:w,creationDate:p,internalFileAttributes:m,Pe:y,Ye:g,password:S,rawPassword:E,encryptionStrength:b,zipCrypto:z,extendedTimestamp:D,ntfsTimestamp:x,keepOrder:C,useWebWorkers:F,transferStreams:R,bufferedWrite:A,createTempStream:N,dataDescriptorSignature:U,signal:L,useUnicodeFileNames:T,compressionMethod:v,format:I?I.format:fe,codecURI:I?I.codecURI:fe,Ge:I?I.versionNeeded:fe,level:O,useCompressionStream:k,dataDescriptor:B,zip64:V,rawExtraField:W,je:Z,Ze:q}}}(e,r,u),{comment:p}=f,m=u[Gi];e.ge.set(r,fe);const h=e.Ce,y={};let S,E;f.Ke.keepOrder&&(y.Xe=new g(e=>S=e)),e.Ce=y;try{const{Ke:t}=f;0==t.level||t.compressionMethod!==fe||t.Pe||await async function(e){const{CompressionStream:t,CompressionStreamFallback:n}=e;return!(!n||n.requiresModule)||!(!mr(t)&&(r=t,!pr(r,cr)))||!!n&&await Vr();var r}(dt())||(t.level=0,gi(e.warnings,dc,r));const o=await async function(e,t,{Ke:r},o){if(r.Pe&&!t&&!Pc(e,o,Hi))throw new d(_s);let i;if(t){if(t=new fi(t),await pi(t),!t.readable&&!t.readUint8Array)throw new d($s);({size:i}=t)}return n.assign({reader:t},function(e,t,n,r,o){const{Pe:i,Ye:a,zipCrypto:s,password:c,rawPassword:u,encryptionStrength:l}=r;let{dataDescriptor:f,zip64:w,level:p,compressionMethod:m}=r,h=0,y=0,g=!1;if(i&&t){if(y=o[Di],y===fe)throw new d(Xs);if(m===fe)throw new d(Qs)}const S=!0===w,E=Pc(e,o,Vi);if(t&&a&&!E&&nu(c,u))throw new d(Vs);const b=t&&(Boolean(c&&nu(c)||u&&nu(u))||a&&E);t||(p=0,m=0);const z=ta(b,s,l);t&&(i?(o.uncompressedSize=y,h=n===fe?Xc(y)+z:n+(a?0:z)):n===fe?(f=!0,(w||w===fe)&&(w=g=!0,h=4294967296)):(o.uncompressedSize=y=n,h=(Qc(m,p)?Xc(y):y)+z));const D=!(b||t&&(0!==n||i)||Qc(m,p));D&&Pc(e,o,Ue)===fe&&(f=!1);const x=S||g||y>=k,C=S||h>=k;if(x||C){if(!1===w)throw new d(js);w=!0}return w=w||!1,{Qe:h,Ke:{dataDescriptor:f,Je:D,zip64:w,Ie:S,_e:g,ve:x,Te:C,uncompressedSize:y,level:p,compressionMethod:m,encrypted:b}}}(e,Boolean(t),i,r,o))}(e,c,f,u);({reader:c}=o);const p=Lc(e.writer),m=Uc(e.writer);let b=u.crc32===fe?u[Yi]:u.crc32;const z=o.Ke.encrypted&&!t.zipCrypto;if(t.Pe&&!t.Ye&&z&&(b=fe),t.Pe&&c&&!z&&b===fe)throw new d(Js);const D=function(e){const{rawFilename:t,lastModDate:n,rawLastModDate:r,lastAccessDate:o,creationDate:i,level:c,zip64:u,zipCrypto:l,useUnicodeFileNames:f,dataDescriptor:w,directory:p,rawExtraField:m,je:h,encryptionStrength:y,extendedTimestamp:g,ntfsTimestamp:S,Pe:E,encrypted:b,ve:z,Te:D,uncompressedSize:x,_e:C,crc32:F}=e;let{version:R,compressionMethod:A}=e;const N=!p&&Qc(A,c);let U;const L=E||!N,T=u&&(e.bufferedWrite||!w||!z&&!D||L&&!C),v=T||u&&w&&(z||D);if(u&&(z||D)){const e=20,t=Nc(e);if(t.$e(1),t.$e(e-4),U=t.et,T&&(t.nt(x),L)){const e=ta(b,l,y);t.nt(E?0:x+e)}}else U=ge;let I,O,k,B,W,Z;if(b&&!l){const e=Nc(nu(pc)+2);e.$e(J),e.ot(pc),I=e.et,I[8]=y}else I=ge;if(g){const e=Hc(n),t=(q=e)>=Ks&&q<=Ps;if(t){const t=9+(o?4:0)+(i?4:0),n=Nc(t);B=1+(o?2:0)+(i?4:0),W=e,n.$e(_),n.$e(t-4),n.it(B),n.st(e),o&&n.st(Kc(Hc(o))),i&&n.st(Kc(Hc(i))),k=n.et}else k=ge;if(S===fe?!t||Boolean(o||i):S)try{const e=qc(n),t=Nc(36);t.$e(10),t.$e(32),t.ct(4),t.$e(1),t.$e(24),t.nt(e),t.nt(o?qc(o):e),t.nt(i?qc(i):e),O=t.et}catch{O=ge}else O=ge}else O=k=ge;var q;try{const{uid:t,gid:n,unixExtraFieldType:r}=e;if(r!=mc||t===fe&&n===fe)if(r!=hc||t===fe&&n===fe)Z=ge;else{const e=Nc(8);e.$e(te),e.$e(4),e.$e((t===fe?0:t)&M),e.$e((n===fe?0:n)&M),Z=e.et}else{const e=Ac(t===fe?0:t),r=Ac(n===fe?0:n),o=3+e.length+r.length,i=Nc(4+o);i.$e(ee),i.$e(o),i.it(1),i.it(e.length),i.ot(e),i.it(r.length),i.ot(r),Z=i.et}}catch{Z=ge}A===fe&&(A=N?8:0),R===fe&&(R=0!=A||p||b?20:10);const{Ge:H}=e;N&&H!==fe&&(R=R>H?R:H),u&&(R=R>45?R:45),b&&!l&&(R=R>51?R:51,E&&F!==fe&&(I[4]=1),_c(Tt(I),9,A),A=99);const K=v?nu(U):0,P=K+nu(I,k,O,Z,m,h);if(P+(e[Te]?67:0)>M)throw new d(Hs);const Y=new s(2e3*a.ceil(a.floor(n.getTime()/1e3)/2)),G=Y<le?le:Y>ue?ue:Y,j=nu(k)?new s(1e3*Hc(n)):nu(O)?n:G,{Ue:X,Le:Q,rawLastModDate:$}=ru({version:R,bitFlag:iu(c,f,w,b,A),compressionMethod:A,uncompressedSize:x,lastModDate:G,rawLastModDate:r,rawFilename:t,Te:D,ve:z,extraFieldLength:P}),ne=Nc(ce+nu(t)+P),re=ne.et,oe=Tt(re);return ne.st(V),ne.ot(X),ne.ot(t),v&&ne.ot(U),ne.ot(I),ne.ot(k),ne.ot(O),ne.ot(Z),ne.ot(m),ne.ot(h),w&&(D||$c(oe,18,0),z||$c(oe,22,0)),{ut:re,lt:oe,Ue:X,Le:Q,lastModDate:j,ft:j===G&&Y.getTime()!=G.getTime(),rawLastModDate:$,encrypted:b,compressed:N,version:R,compressionMethod:A,wt:B,ht:W,ke:ge,yt:K,Be:k,Ve:O,We:Z,Me:I,extraFieldLength:P}}(u=n.assign({},u,l.Ke,f.Ke,o.Ke,{signature:u[Yi],crc32:b,offset:e.offset-p,diskNumberStart:m,[Te]:e.options[Te]}));D.ft&&gi(e.warnings,wc,r);const C=function({zip64:e,dataDescriptor:t,dataDescriptorSignature:n}){let r,o=ge,i=0,a=e?20:12;return n&&(a+=4),t&&(o=new w(a),r=Tt(o),n&&(i=4,$c(r,0,Z))),{gt:o,St:r,Et:i}}(u),F=nu(D.ut,C.gt);E=await async function(e,t,r,o,a){const{ge:s,writer:c}=e,{keepOrder:u,dataDescriptor:l,Je:f,signal:w}=a,{bt:p,me:m,zt:h,Dt:y}=o,S=e.options[Te];let E,b,z,D,C,F,R,A=m,N=0;const U=u&&h?h.Xe:fe;s.set(t,A);try{a.bufferedWrite||!u||e.Ae||e.De||e.xe||!l&&!f?(E=!0,e.De++,R=a.createTempStream?await a.createTempStream():new x(fe,fe,{highWaterMark:de}),R.size=0,await pi(c)):(b=!0,e.xe++,R=c,await U,await L()),await pi(R);const m=Lc(c);e.ye&&!E&&await Vc(e,c),S&&!E&&Rc(o,e.offset-m);const{ut:h}=p;E||await T();const y=Uc(c),z=vc(e,c);if(A.diskNumberStart=y,E||(C=!0,F=c.size,await Wc(R,h)),A=await async function(e,t,{diskNumberStart:r,Xe:o},a,s,c){const{bt:u,xt:l,Ct:f}=a,{Ue:w,Le:p,lastModDate:m,rawLastModDate:h,encrypted:y,compressed:g,version:S,compressionMethod:E,ke:b,yt:z,Be:D,wt:x,ht:C,Ve:F,We:R,Me:A}=u,{gt:N}=l,{rawFilename:U,lastAccessDate:L,creationDate:T,password:v,rawPassword:I,level:O,useUnicodeFileNames:M,zip64:V,Ie:W,ve:Z,Te:q,zipCrypto:H,dataDescriptor:K,directory:P,executable:Y,versionMadeBy:G,rawComment:j,rawExtraField:X,Ze:Q,useWebWorkers:J,transferStreams:_,onstart:$,onprogress:ee,onend:te,signal:ne,encryptionStrength:re,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:ae,externalFileAttributes:se,uid:ce,gid:ue,unixMode:le,symlink:de,setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:ge,useCompressionStream:Se,Pe:Ee,Ye:be,format:ze,codecURI:De}=c,xe={Xe:o,versionMadeBy:G,zip64:V,Ie:W,directory:Boolean(P),executable:Boolean(Y),filenameUTF8:Boolean(M),rawFilename:U,commentUTF8:Boolean(M),rawComment:j,ke:b,yt:z,Be:D,Ve:F,We:R,Me:A,rawExtraField:X,Ze:Q,extendedTimestamp:oe,msDosCompatible:ie,internalFileAttributes:ae,externalFileAttributes:se,diskNumberStart:r,uid:ce,gid:ue,unixMode:le,symlink:Boolean(de),setuid:we,setgid:pe,sticky:me,unixExternalUpper:he,msdosAttributesRaw:ye,msdosAttributes:ge};let{crc32:Ce,uncompressedSize:Fe}=c,Re=0;Ee||(Fe=0);const{writable:Ae}=t;if(e){const n=e.size,r=qn(yi(e,{size:n})),o={options:{codecType:Ur,inputSize:n,level:O,rawPassword:I,password:v,encryptionStrength:re,zipCrypto:y&&H,passwordVerification:y&&H&&h>>8&B,computeCrc32:!Ee,compressed:g&&!Ee,encrypted:y&&!be,useWebWorkers:J,useCompressionStream:Se,transferStreams:_,format:ze,codecURI:De,compressionMethod:E},config:s,A:{signal:ne,size:n,onstart:$,onprogress:ee,onend:te}};try{const e=await fo({readable:r,writable:Ae},o);if(Re=e.outputSize,t.size+=Re,je(ne),Ee||(Fe=e.inputSize,y&&!H||(Ce=e.crc32)),!q&&Re>=k||!Z&&Fe>=k)throw new d(js)}catch(e){const{outputSize:n}=o;throw n!==fe?t.size+=n:vt(e)&&e.outputSize!==fe&&(t.size+=e.outputSize),e}}return function({crc32:e,compressedSize:t,uncompressedSize:n,bt:r,xt:o},{zip64:a,zipCrypto:s,Pe:c,dataDescriptor:u}){const{Le:l,encrypted:f}=r,{St:d,Et:w}=o;f&&!s&&!c||e===fe||($c(l,10,e),u&&$c(d,w,e)),a?u&&(eu(d,w+4,i(t)),eu(d,w+12,i(n))):($c(l,14,t),$c(l,18,n),u&&($c(d,w+4,t),$c(d,w+8,n)))}({crc32:Ce,compressedSize:Re,uncompressedSize:Fe,bt:u,xt:l},c),K&&await Wc(t,N),n.assign(xe,{uncompressedSize:Fe,compressedSize:Re,lastModDate:m,rawLastModDate:h,creationDate:T,lastAccessDate:L,encrypted:Boolean(y),zipCrypto:Boolean(H),size:f+Re,compressionMethod:E,version:S,Ue:w,Le:p,signature:Ce,crc32:!y||H||Ee?Ce:fe,wt:x,ht:C,ve:Z,Te:q}),xe}(r,R,A,o,dt(),a),E||(C=!1),s.set(t,A),A.filename=t,E){if(await g.all([R.writable.getWriter().close(),U]),await L(),e.ye&&await Vc(e,c),D=!0,F=c.size,await T(),A.diskNumberStart=Uc(c),A.offset=vc(e,c),S){const t=o.Ct;Rc(o,e.offset-Lc(c)),A.size+=o.Ct-t}!function({rawFilename:e,encrypted:t,zip64:n,yt:r,crc32:o,compressedSize:a,uncompressedSize:s,ve:c,Te:u},l,{dataDescriptor:f,Pe:d}){if(f||((!t||d&&o!==fe)&&$c(l,14,o),u||$c(l,18,a),c||$c(l,22,s)),n&&r){const t=ce+nu(e)+4;eu(l,t,i(s)),eu(l,t+8,i(a))}}(A,p.lt,a),await Wc(c,p.ut),await Zc(R.readable,c,w,e=>N+=e),c.size+=R.size,D=!1}else A.diskNumberStart=y,A.offset=z;return e.offset+=A.size,A}catch(n){if(D||C){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch{}e.offset+=c.size-F,E&&(e.offset+=N)}throw s.delete(t),n}finally{if(E&&e.De--,b&&e.xe--,y&&y(U),z&&z(),E&&R&&R.dispose)try{await R.dispose()}catch{}}async function L(){e.Ae=!0;const{Ne:t}=e;e.Ne=new g(t=>z=()=>{e.Ae=!1,t()}),await t}async function T(){Tc(c,nu(p.ut))&&await c.closeDisk()}}(e,r,c,{bt:D,xt:C,Ct:F,me:y,zt:h,Dt:S},u)}catch(t){throw e.ge.delete(r),t}finally{S&&S(h&&h.Xe)}return n.assign(E,{name:r,comment:p,extraField:m}),new $i(E)}(e,r,u,l)}catch(t){throw e.Se.delete(r),t}finally{const e=Sc.shift();e?e():gc--}}(l,e,r,u);f.add(p);const m=()=>f.delete(p);return g.prototype.then.call(p,m,m),Dc(l,p)}remove(e){const{Se:t,ge:n}=this;if(typeof e==he&&(e=n.get(e)),e&&e.filename!==fe){const{filename:r}=e;if(t.has(r)&&n.has(r))return t.delete(r),n.delete(r),!0}return!1}async close(e=ge,n={}){const r=this,{be:o,writer:a}=this,{writable:s}=a;if(r.Fe)return zc(a);if(!(e instanceof w))throw new d(Us);if(nu(e)>M)throw new d(Ns);for(;o.size;)await g.allSettled(t.from(o));await g.allSettled(r.ze.map(e=>e.Ft));const c=r.ze.filter(e=>e.Rt&&!e.At);if(c.length){const e=c.map(e=>e.error);c.forEach(e=>e.At=!0);const[t]=e;try{t.entryErrors=e}catch{}throw t}return await async function(e,n,r){const{Nt:o,Ut:a}=function(e){let t=0,n=!1;for(const[,r]of e){const{rawFilename:e,Me:o,rawComment:i,Ve:a,We:s,rawExtraField:c,Ze:u,wt:l,ht:f,Ie:w,uncompressedSize:p,compressedSize:m}=r;let{ve:h,Te:y}=r;w||(h&&p<k&&(h=r.ve=!1),y&&m<k&&(y=r.Te=!1)),n=n||h||y;const g=r.offset>=k,S=r.diskNumberStart>=M;let E,b;if(g||S||h||y){const e=4+(h?8:0)+(y?8:0)+(g?8:0)+(S?4:0),t=Nc(e);t.$e(1),t.$e(e-4),h&&t.nt(p),y&&t.nt(m),g&&t.nt(r.offset),S&&t.st(r.diskNumberStart),E=t.et}else E=ge;if(r.ke=E,r.Lt=g,r.Oe=S,f===fe)b=ge;else{const e=Nc(9);e.$e(_),e.$e(5),e.it(l),e.st(f),b=e.et}r.Be=b;const z=nu(E,o,a,s,b,c,u);if(z>M)throw new d(Hs);t+=G+nu(e,i)+z}return{Nt:t,Ut:n}}(e.ge),{Tt:s,vt:c,It:u}=await async function(e,n,r){const{ge:o,writer:i}=e,a=new w(n);await pi(i);let s=0,c=0,u=Uc(i),l=Lc(i),f=0;for(const[e,n]of t.from(o.values()).entries()){const{offset:t,rawFilename:d,ke:w,Me:p,Be:m,Ve:h,We:y,rawExtraField:g,Ze:S,rawComment:E,versionMadeBy:b,Ue:z,Le:D,ve:x,Te:C,Oe:F,Lt:R,internalFileAttributes:A,externalFileAttributes:N,diskNumberStart:U,uncompressedSize:L,compressedSize:T}=n,v=nu(w,p,m,h,y,g,S),I=G+nu(d,E)+v;Tc(i,s+I-c)&&(await Wc(i,a.slice(c,s)),c=s,f=0,await i.closeDisk()),0==e&&(u=Uc(i),l=Lc(i)),x||$c(D,18,L),C||$c(D,14,T),(R||F)&&n.version<45&&_c(D,0,45);const O=Nc(I);if(O.st(H),O.$e(b),O.ot(z.subarray(0,24)),O.$e(v),O.$e(nu(E)),O.$e(F?M:U),O.$e(A),O.st(N),O.st(R?k:t),O.ot(d),O.ot(w),O.ot(p),O.ot(m),O.ot(h),O.ot(y),O.ot(g),O.ot(S),O.ot(E),tu(a,O.et,s),s+=I,f++,r.onprogress)try{await r.onprogress(e+1,o.size,new $i(n))}catch{}}return await Wc(i,c?a.slice(c):a),{Tt:{diskNumber:u,diskOffset:l},vt:{diskNumber:Uc(i),Ot:f},It:a}}(e,o,r),l=await async function(e,t,n){const r=Gc(e,n,"signCentralDirectory");if(r){const n=await r(t),o=nu(n);if(o>M)throw new d(uc);const i=Nc(6+o);i.st(q),i.$e(o),i.ot(n);const{writer:a}=e;return Tc(a,nu(i.et))&&await a.closeDisk(),await Wc(a,i.et),6+o}return 0}(e,u,r);await async function(e,t,n,r){const{writer:o}=e,{Tt:a,vt:s,kt:c,Ut:u}=r;let{Nt:l}=r,f=e.ge.size,w=a.diskNumber,p=vc(e,a);const m=nu(t);if(m>M)throw new d(Ns);let h=Pc(e,n,Bi),y=Uc(o);if(Tc(o,(h?98:j)+m)&&y++,p>=k||l>=k||f>=M||y>=M){if(!1===h)throw new d(js);h=!0}else h===fe&&u&&(h=!0);const g=Nc(h?98:j);Tc(o,nu(g.et)+m)&&await o.closeDisk(),y=Uc(o);let S=y==s.diskNumber?s.Ot:0;h&&(g.st(P),g.nt(44),g.$e(45),g.$e(45),g.st(y),g.st(w),g.nt(S),g.nt(f),g.nt(l),g.nt(p),g.st(Y),g.st(y),g.nt(i(vc(e,o))+i(l)+i(c)),g.st(y+1),Pc(e,n,"supportZip64SplitFile",!0)&&(y=M,w=M),S=M,f=M,p=k,l=k),g.st(K),g.$e(y),g.$e(w),g.$e(S),g.$e(f),g.st(l),g.st(p),g.$e(m),await Wc(o,g.et),m&&await Wc(o,t)}(e,n,r,{Tt:s,vt:c,Nt:o,kt:l,Ut:a})}(r,e,n),r.Fe=!0,!wi(a)&&Pc(r,n,Re)||await s.getWriter().close(),zc(a)}[Se](){return this.close()}}class bc extends g{then(e,t){const{Mt:n}=this;return n&&(n.At=!0),super.then(e,t)}}function zc(e){return e.getData?e.getData():e.writable}function Dc(e,t){const r=new bc((e,n)=>g.prototype.then.call(t,e,n)),o={};return r.Mt=o,o.Ft=g.prototype.then.call(r,fe,e=>n.assign(o,{Rt:!0,error:e})),e.ze.push(o),r}async function xc(e,t){try{await e.writer.writable.abort(t)}catch{}}function Cc(e,t,n){e.be.add(t),t.catch(e=>{try{n(e)}catch{}})}function Fc(e){if(!e)return ge;if(!(e instanceof c))throw new d(Ws);let t=0,n=0;e.forEach((e,n)=>{if(Je(n,M,Zs),!(e instanceof w))throw new d(qs);if(nu(e)>M)throw new d(Hs);t+=4+nu(e)});const r=new w(t),o=Tt(r);return e.forEach((e,t)=>{_c(o,n,t),_c(o,n+2,nu(e)),tu(r,e,n+4),n+=4+nu(e)}),r}function Rc(e,t){const{bt:n}=e;let{ut:r,extraFieldLength:o}=n,i=64-(t+nu(r))%64;i<4&&(i+=64);const a=new w(i),s=Tt(a);_c(s,0,$),_c(s,2,i-4);const c=r;n.ut=r=new w(nu(c)+i),tu(r,c),tu(r,a,nu(c));const u=Tt(r);_c(u,28,o+i),n.lt=u,e.Ct+=i}function Ac(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 Nc(e){const t=new w(e),n=Tt(t);let r=0;return{et:t,it:e=>{!function(e,t,n){e.setUint8(t,n)}(n,r,e),r+=1},$e:e=>{_c(n,r,e),r+=2},st:e=>{$c(n,r,e),r+=4},nt:e=>{eu(n,r,i(e)),r+=8},ot:e=>{tu(t,e,r),r+=nu(e)},ct:e=>r+=e}}function Uc(e){const{diskNumber:t=0}=e;return t}function Lc(e){const{diskOffset:t=0}=e;return t}function Tc(e,t){const{availableSize:n=de}=e;return t>n}function vc(e,{diskNumber:t=0,diskOffset:n=0}){return e.offset-n-(t?e.Ee:0)}function Ic(e){const t=Tt(e);let n=0;for(;n+4<=nu(e);){const r=4+Jc(t,n+2);if(1==Jc(t,n))return Ic(Ut(e.subarray(0,n),e.subarray(a.min(n+r,nu(e)))));n+=r}return e}async function Oc(e,t,n,r){if(r>0){const{writer:o}=e;let i=0;try{await Zc(yi(t,{offset:n,size:r}),o,fe,e=>i+=e)}catch(t){e.hasCorruptedEntries=!0;try{t.corruptedEntry=!0}catch{}throw t}finally{o.size+=i,e.offset+=i}}}async function kc(e,t){const n=await hi(e,t,ce);if(nu(n)<ce)return ce;const r=Tt(n);return ce+Jc(r,26)+Jc(r,28)}function Mc(e,{offset:t,diskNumberStart:n}){return t+(e.ie?e.ie(n):0)}function Bc(){const e=new w(4);return $c(Tt(e),0,W),e}async function Vc(e,t){delete e.ye,await Wc(t,Bc()),e.offset+=4}async function Wc(e,t){const{writable:n}=e,r=n.getWriter();try{await r.ready,e.size+=nu(t),await r.write(t)}finally{r.releaseLock()}}async function Zc(e,t,n,r){const o=t.writable.getWriter();try{await e.pipeTo(new F({async write(e){await o.ready,await o.write(e),r(nu(e))}}),{preventClose:!0,preventAbort:!0,signal:n})}finally{o.releaseLock()}}function qc(e){if(e){const t=(i(e.getTime())+i(116444736e5))*i(1e4);return t<Ys?Ys:t>Gs?Gs:t}}function Hc(e){return a.floor(e.getTime()/1e3)}function Kc(e){return a.min(Ps,a.max(Ks,e))}function Pc(e,t,n,r){const o=t[n]===fe?e.options[n]:t[n];return o===fe?r:o}function Yc(e,t,n,r){const i=Pc(e,t,n,r);if(null===i)return r;if(i!==fe&&(typeof i.getTime!=pe||o.isNaN(i.getTime())))throw new d(vs);return i}function Gc(e,t,n){return Ye(Pc(e,t,n))}function jc(e,t,n,r){return $e(Pc(e,t,n,r))}function Xc(e){return e+5*(a.floor(e/16383)+1)}function Qc(e,t){return e===fe?t===fe||t>0:0!==e}function Jc(e,t){return e.getUint16(t,!0)}function _c(e,t,n){e.setUint16(t,n,!0)}function $c(e,t,n){e.setUint32(t,n,!0)}function eu(e,t,n){e.setBigUint64(t,n,!0)}function tu(e,t,n){e.set(t,n)}function nu(...e){let t=0;return e.forEach(e=>e&&(t+=e.length)),t}function ru({version:e,bitFlag:t,compressionMethod:n,uncompressedSize:r,compressedSize:o,lastModDate:i,rawLastModDate:a,rawFilename:s,Te:c,ve:u,extraFieldLength:l}){const f=Nc(26),d=f.et,w=Tt(d);if(f.$e(e),f.$e(t),f.$e(n),a===fe){const e=new m(1),t=Tt(e);_c(t,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),_c(t,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),a=e[0]}return f.st(a),f.ct(4),c||o!==fe?f.st(c?k:o):f.ct(4),u||r!==fe?f.st(u?k:r):f.ct(4),f.$e(nu(s)),f.$e(l),{Ue:d,Le:w,rawLastModDate:a}}function ou(e){return e.every(e=>e>=32&&e<=126)}function iu(e,t,n,r,o){let i=0;return t&&(i|=ne),n&&(i|=8),8!=o&&9!=o||(e>=0&&e<=3&&(i|=6),e>3&&e<=5&&(i|=4),9==e&&(i|=2)),r&&(i|=1),i}function au(e,t){if(!e)return!1;const{supportedFormats:n}=e;return n?n.includes(t):pr(e,t)}const su=1048576,cu=".zip.js-temp",uu=1048576,lu=1048576,fu=".zip.js-temp",du="createSyncAccessHandle is only available in dedicated workers";try{gt({baseURI:void 0===b&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===b?location.href:O&&"SCRIPT"===O.tagName.toUpperCase()&&O.src||new f("zip-legacy.min.js",b.baseURI).href})}catch{}At(gt),e.BlobReader=qo,e.BlobWriter=Ho,e.Data64URIReader=class extends Bo{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{Bt:e,Vt:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{Vt:n,Bt:r}=this,o=new w(t),i=4*a.floor(e/3),s=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);let u=0;for(let e=c;e<c+t&&e<s.length;e++)o[e-c]=s.charCodeAt(e),u++;return u<o.length?o.subarray(0,u):o}},e.Data64URIWriter=class extends Vo{constructor(e){super(),n.assign(this,{contentType:e,data:"data:"+(e||"")+";base64,",Wt:""})}writeUint8Array(e){const t=this;let n,o=t.Wt;const i=t.Wt.length;for(t.Wt="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)o+=r.fromCharCode(e[n]);for(;n<e.length;n++)t.Wt+=r.fromCharCode(e[n]);o.length>2?t.data+=D(o):t.Wt=o+t.Wt}getData(){return this.data+D(this.Wt)}},e.ERR_ABORTED=Pe,e.ERR_AMBIGUOUS_ARCHIVE=wa,e.ERR_BAD_FORMAT=na,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=ia,e.ERR_CODEC_OUT_OF_MEMORY=or,e.ERR_DUPLICATED_NAME=As,e.ERR_ENCRYPTED=ca,e.ERR_ENCRYPTED_CENTRAL_DIRECTORY=pa,e.ERR_ENTRY_DATA_OUT_OF_BOUNDS=da,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=oa,e.ERR_EOCDR_NOT_FOUND=ra,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=sa,e.ERR_HTTP_RANGE=Co,e.ERR_HTTP_RESOURCE_CHANGED=Fo,e.ERR_HTTP_STATUS=xo,e.ERR_INVALID_AUTHENTICATION_CODE=ln,e.ERR_INVALID_BASE_URI=tt,e.ERR_INVALID_CODEC_DEFINITION=Pn,e.ERR_INVALID_CODEC_MODULE=Gn,e.ERR_INVALID_COMMENT=Ns,e.ERR_INVALID_COMMENT_TYPE=Us,e.ERR_INVALID_COMPRESSED_DATA=rr,e.ERR_INVALID_CRC32=ir,e.ERR_INVALID_DATE=vs,e.ERR_INVALID_ENCRYPTION_STRENGTH=ks,e.ERR_INVALID_ENTRY=lc,e.ERR_INVALID_ENTRY_COMMENT=Ls,e.ERR_INVALID_ENTRY_COMMENT_TYPE=Ts,e.ERR_INVALID_ENTRY_NAME=Is,e.ERR_INVALID_EXTRAFIELD=Ws,e.ERR_INVALID_EXTRAFIELD_DATA=Hs,e.ERR_INVALID_EXTRAFIELD_DATA_TYPE=qs,e.ERR_INVALID_EXTRAFIELD_TYPE=Zs,e.ERR_INVALID_FILENAME_VALIDATION=ya,e.ERR_INVALID_FUNCTION_OPTION=Ze,e.ERR_INVALID_GID=nc,e.ERR_INVALID_LEVEL=cc,e.ERR_INVALID_MAX_APPENDED_DATA_SIZE=ga,e.ERR_INVALID_MAX_WORKERS=et,e.ERR_INVALID_MSDOS_ATTRIBUTES=ac,e.ERR_INVALID_MSDOS_DATA=sc,e.ERR_INVALID_PASSWORD=un,e.ERR_INVALID_PASSWORD_TYPE=He,e.ERR_INVALID_PASS_THROUGH_VALUE=Ke,e.ERR_INVALID_READER=$s,e.ERR_INVALID_SIGNAL=qe,e.ERR_INVALID_SIGNATURE_DATA=uc,e.ERR_INVALID_STRICTNESS=ha,e.ERR_INVALID_UID=tc,e.ERR_INVALID_UNCOMPRESSED_SIZE=nr,e.ERR_INVALID_UNIX_EXTRA_FIELD_TYPE=oc,e.ERR_INVALID_UNIX_ID_SIZE=ic,e.ERR_INVALID_UNIX_MODE=rc,e.ERR_INVALID_URI=nt,e.ERR_INVALID_VERSION=Os,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Ro,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=aa,e.ERR_OVERLAPPING_ENTRY=fa,e.ERR_RESERVED_COMPRESSION_METHOD=Yn,e.ERR_SPLIT_ZIP_FILE=la,e.ERR_UNDEFINED_COMPRESSION_METHOD=Qs,e.ERR_UNDEFINED_CRC32=Js,e.ERR_UNDEFINED_READER=_s,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=Xs,e.ERR_UNDETERMINED_SIZE="Undetermined size",e.ERR_UNSAFE_FILENAME=ma,e.ERR_UNSUPPORTED_COMPRESSION=jn,e.ERR_UNSUPPORTED_CONTEXT=du,e.ERR_UNSUPPORTED_CRYPTO_API=dn,e.ERR_UNSUPPORTED_ENCRYPTION=ua,e.ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH=Vs,e.ERR_UNSUPPORTED_ENCRYPTION_USDZ=Ms,e.ERR_UNSUPPORTED_FORMAT=js,e.ERR_UNSUPPORTED_SPLIT_USDZ=Bs,e.ERR_UNSUPPORTED_UINT64=Sa,e.ERR_WORKER_STARTUP_TIMEOUT=Ir,e.ERR_WRITER_NOT_INITIALIZED=Ao,e.ERR_WRITER_SIZE_NOT_WRITABLE=No,e.ERR_ZIP_CRYPTO_LAST_MOD_DATE=fc,e.ERR_ZIP_NOT_EMPTY=ec,e.HttpRangeReader=class extends ci{constructor(e,t={}){super(e,n.assign({},t,{useRangeHeader:!0}))}},e.HttpReader=ci,e.Reader=Bo,e.SplitDataReader=ui,e.SplitDataWriter=li,e.TextReader=class extends qo{constructor(e){super(new y([e],{type:"text/plain"}))}},e.TextWriter=class extends Ho{constructor(e){super(),n.assign(this,{encoding:e,Zt:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,Zt:t}=this,n=await super.getData();return n.text&&t?n.text():function(e,t){return Do(e,t,!1)}(new w(await n.arrayBuffer()),e)}},e.Uint8ArrayReader=class extends Bo{constructor(e){super(),e=new w(e.buffer,e.byteOffset,e.byteLength),n.assign(this,{et:e,size:e.length})}readUint8Array(e,t){return this.et.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Vo{constructor(e){super(),this.qt=e||262144}init(e=0){n.assign(this,{offset:0,et:new w(e>0?e:this.qt)}),super.init()}writeUint8Array(e){const t=this,n=t.offset+e.length;if(n>t.et.length){let e=t.et.length?2*t.et.length:t.qt;for(;e<n;)e*=2;const r=t.et;t.et=new w(e),t.et.set(r)}t.et.set(e,t.offset),t.offset+=e.length}getData(){return this.offset===this.et.length?this.et:this.et.slice(0,this.offset)}},e.VERSION="2.18.0",e.WARNING_APPENDED_DATA=Fa,e.WARNING_CLAMPED_LAST_MODIFICATION_DATE=wc,e.WARNING_COMPRESSED_PATCHED_DATA=za,e.WARNING_COMPRESSION_UNAVAILABLE=dc,e.WARNING_DUPLICATE_FILENAME=Ua,e.WARNING_MALFORMED_EXTRA_FIELD=Da,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG=Ia,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD=Oa,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES=ka,e.WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME=va,e.WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY=La,e.WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY=Ta,e.WARNING_PREPENDED_CENTRAL_DIRECTORY=Aa,e.WARNING_PREPENDED_DATA=Ra,e.WARNING_TRAILING_CENTRAL_DIRECTORY_DATA=Na,e.WARNING_UNKNOWN_VERSION=ba,e.WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA=xa,e.WARNING_UNSORTED_CENTRAL_DIRECTORY=Ea,e.WARNING_WRAPPED_ENTRIES_COUNT=Ca,e.Writer=Vo,e.ZipReader=Ka,e.ZipReaderStream=Pa,e.ZipWriter=Ec,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new x;this.readable=t,this.zipWriter=new Ec(n,e),this.be=new u}transform(e){const t=this.zipWriter;let n;const{readable:r,writable:o}=new x({start(e){n=e},flush:()=>{!async function(){try{await t.close()}catch(e){await xc(t,e)}}()}});return Cc(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 x({start(e){t=e}});return Cc(this,this.zipWriter.add(e,n),e=>t.error(e)),r}async close(e,n={}){const{zipWriter:r}=this,o=(await g.allSettled(t.from(this.be))).filter(e=>"rejected"==e.status).map(e=>e.reason);if(o.length){const[e]=o;try{e.entryErrors=o}catch{}throw await xc(r,e),e}try{return await r.close(e,n)}catch(e){throw await xc(r,e),e}}},e.configure=function(e){n.assign(ft,mt(yt(e)))},e.createBlobTempStream=function(e={}){const{thresholdBytes:t=uu}=e;return function(){const e=[];let n,r,o,i=0,a=!1;const s=new F({async write(o){a?await n.write(o):(e.push(o),i+=o.length,i>t&&await async function(){const t=new x;r=Hn(t.readable),n=t.writable.getWriter(),a=!0;for(const t of e)await n.write(t);e.length=0}())},async close(){n&&(await n.close(),n=null)}});let c=0;return{writable:s,readable:new C({async pull(t){if(a){if(!o){const e=await r;o=e.stream().getReader()}const{value:e,done:n}=await o.read();n?t.close():t.enqueue(e)}else c<e.length?t.enqueue(e[c++]):t.close()},async cancel(e){o&&await o.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(n){try{await n.abort()}catch{}n=null}r&&(r.catch(()=>{}),r=null),e.length=0}}}},e.createOPFSTempStream=function(e={}){const{thresholdBytes:n=su,directoryName:r=cu,getDirectory:o=()=>N.storage.getDirectory()}=e;let i;function a(){return i||(i=g.resolve(o()).then(e=>e.getDirectoryHandle(r,{create:!0}))),i}return function(){const e=[];let r,o,i,s,c=0,u=!1;const l=new F({async write(s){u?await i.write(s):(e.push(s),c+=s.length,c>n&&await async function(){const n=await a();r=z.randomUUID?z.randomUUID():t.from(z.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join(""),o=await n.getFileHandle(r,{create:!0}),i=(await o.createWritable()).getWriter(),u=!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:l,readable:new C({async pull(t){if(u){if(!s){const e=await o.getFile();s=e.stream().getReader()}const{value:e,done:n}=await s.read();n?t.close():t.enqueue(e)}else f<e.length?t.enqueue(e[f++]):t.close()},async cancel(e){s&&await s.cancel(e)}},{highWaterMark:0}),dispose:async function(){if(i){try{await i.close()}catch{}i=null}if(r){try{const e=await a();await e.removeEntry(r)}catch{}o=r=null}e.length=0}}}},e.createSyncAccessHandleTempStream=function(e={}){const{thresholdBytes:n=lu,directoryName:r=fu,getDirectory:o}=e;if(!(o||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new d(du);const i=o||(()=>N.storage.getDirectory());let s;function c(){return s||(s=g.resolve(i()).then(e=>e.getDirectoryHandle(r,{create:!0}))),s}return function(){const e=[];let r,o,i=0,s=!1,u=0,l=0;const f=new F({async write(a){s?(o.write(a,{at:u}),u+=a.length):(e.push(a),i+=a.length,i>n&&await async function(){const n=await c();r=z.randomUUID?z.randomUUID():t.from(z.getRandomValues(new w(16)),e=>e.toString(16).padStart(2,"0")).join("");const i=await n.getFileHandle(r,{create:!0});o=await i.createSyncAccessHandle(),s=!0;for(const t of e)o.write(t,{at:u}),u+=t.length;e.length=0}())},close(){o&&o.flush()}});let d=0;return{writable:f,readable:new C({pull(t){if(s){const e=u-l;if(e<=0)return void t.close();const n=new w(a.min(524288,e)),r=o.read(n,{at:l});r?(l+=r,t.enqueue(n.subarray(0,r))):t.close()}else d<e.length?t.enqueue(e[d++]):t.close()}},{highWaterMark:0}),dispose:async function(){if(o){try{o.close()}catch{}o=null}if(r){try{const e=await c();await e.removeEntry(r)}catch{}r=null}e.length=0}}}},e.getMimeType=function(){return"application/octet-stream"},e.getRegisteredCodecs=$n,e.getSupportedCompressionMethods=function(){const{CompressionStream:e,DecompressionStream:t,CompressionStreamFallback:n,DecompressionStreamFallback:r}=dt(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:au(n,ar)||au(e,ar)||au(e,cr),decompression:au(r,ar)||au(t,ar)||au(t,cr),registered:!1},{compressionMethod:9,compression:!1,decompression:au(r,sr)||au(t,sr),registered:!1}];for(const e of $n()){const t=er(e.format);o.push({compressionMethod:e.compressionMethod,compression:t?typeof t.CompressionStream==pe:fe,decompression:t?typeof t.DecompressionStream==pe:fe,registered:!0})}return o},e.isZipFile=Ya,e.registerCodec=function(e={}){const{compressionMethod:t,format:n,codecURI:r,CompressionStream:i,DecompressionStream:a,versionNeeded:s}=e;if(!o.isInteger(t)||t<0||t>M||typeof n!=he||!n.length)throw new d(Pn);if(Xn.includes(t))throw new d(Yn);const c=typeof i==pe||typeof a==pe;if(!(c||typeof r==he&&r.length))throw new d(Pn);Qn.set(t,{compressionMethod:t,format:n,codecURI:r,versionNeeded:s}),c&&tr(n,{CompressionStream:i,DecompressionStream:a})},e.resetConfiguration=function(){for(const e of lt)delete ft[e];n.assign(ft,ot)},e.terminateWorkers=async function(){await g.allSettled([ho(),...ao.map(e=>(So(e),e.terminate()))]),Or=fe,kr=!1},e.unregisterCodec=function(e){const t=Qn.get(e);if(t){let n;Qn.delete(e),Qn.forEach(e=>n=n||e.format==t.format),n||Jn.delete(t.format)}}});
|