@zip.js/zip.js 2.18.2 → 2.20.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.
Files changed (45) hide show
  1. package/BENCHMARKS.md +172 -144
  2. package/deno.json +1 -1
  3. package/dist/zip-core-external.js +192 -120
  4. package/dist/zip-core-external.min.js +1 -1
  5. package/dist/zip-core.js +193 -119
  6. package/dist/zip-core.min.js +1 -1
  7. package/dist/zip-fs-core-external.js +192 -120
  8. package/dist/zip-fs-core-external.min.js +1 -1
  9. package/dist/zip-fs-core.js +193 -119
  10. package/dist/zip-fs-core.min.js +1 -1
  11. package/dist/zip-fs-external.js +192 -120
  12. package/dist/zip-fs-external.min.js +1 -1
  13. package/dist/zip-fs-native.js +195 -121
  14. package/dist/zip-fs-native.min.js +1 -1
  15. package/dist/zip-fs.js +194 -120
  16. package/dist/zip-fs.min.js +1 -1
  17. package/dist/zip-legacy.js +195 -121
  18. package/dist/zip-legacy.min.js +1 -1
  19. package/dist/zip-native.js +195 -121
  20. package/dist/zip-native.min.js +1 -1
  21. package/dist/zip-web-worker-native.js +1 -1
  22. package/dist/zip-web-worker.js +1 -1
  23. package/dist/zip.js +194 -120
  24. package/dist/zip.min.js +1 -1
  25. package/index-native.cjs +195 -121
  26. package/index-native.min.js +1 -1
  27. package/index.cjs +194 -120
  28. package/index.d.cts +95 -26
  29. package/index.d.ts +95 -26
  30. package/index.min.js +1 -1
  31. package/lib/core/codec-pool.js +1 -2
  32. package/lib/core/codec-worker-web.js +11 -39
  33. package/lib/core/codec-worker.js +1 -2
  34. package/lib/core/configuration.js +1 -1
  35. package/lib/core/options.js +0 -2
  36. package/lib/core/streams/codec-stream.js +1 -1
  37. package/lib/core/version.js +1 -1
  38. package/lib/core/web-worker-base.js +2 -3
  39. package/lib/core/web-worker-inline-native.js +1 -1
  40. package/lib/core/web-worker-inline-wasm.js +1 -1
  41. package/lib/core/zip-reader.js +100 -40
  42. package/lib/core/zip-writer.js +75 -34
  43. package/lib/zip-core-reader.js +2 -0
  44. package/package.json +1 -1
  45. package/worker-message-property-names.js +1 -1
@@ -1 +1 @@
1
- const t=4294967295,e=65535,r=255,n=67324752,o=134695760,a=o,i=84233040,s=33639248,c=101010256,u=101075792,l=117853008,f=46,w=22,d=20,p=56,m=39169,h=21589,y=6534,E=30837,b=30805,S=2048,g=61440,A=16384,R=2048,D=1024,x="/",F=30,z=new Date(2107,11,31,23,59,58),I=new Date(1980,0,1),U=void 0,O=1/0,T="undefined",C="function",k="object",M="string",v="boolean",N=new Uint8Array,_=Symbol.asyncDispose||Symbol(),L="password",B="rawPassword",P="passThrough",j="signal",W="useWebWorkers",V="useCompressionStream",Z="transferStreams",H="preventClose",G="level",Y="useUnicodeFileNames",K="dataDescriptor",q="offset",X="usdz",$="maxAppendedDataSize",J="entry",Q="filename",tt="comment",et="strict",rt="balanced",nt="tolerant",ot="compressed",at="Invalid option (must be a function)",it="Invalid signal (must be an AbortSignal instance)",st="Invalid password (password must be a string, rawPassword must be a Uint8Array)",ct="Invalid passThrough option (must be a boolean or 'compressed')",ut="The operation was aborted";function lt(t){if(t&&typeof t!=C)throw new Error(at);return t}function ft(t){if(t&&(typeof t.addEventListener!=C||typeof t.aborted!=v))throw new Error(it);return t||U}function wt(t){if(t&&t.aborted)throw t.reason===U?new DOMException(ut,"AbortError"):t.reason}function dt(t,e){if(t&&typeof t!=M||e&&!(e instanceof Uint8Array))throw new Error(st)}function pt(t){if(t!==U&&typeof t!=v&&t!==ot)throw new Error(ct);return t}function mt(t,e,r){if(!Number.isInteger(t)||t<0||t>e)throw new Error(r)}function ht(t,e,r){t!==U&&mt(t,e,r)}function yt(t){return typeof t==M&&t.trim()?Number(t):t}const Et="Invalid maxWorkers (must be an integer greater than 0)",bt="Invalid baseURI (must be a string)",St="Invalid URI (must be a string or a function returning a string)";let gt=2;try{typeof navigator!=T&&navigator.hardwareConcurrency&&(gt=navigator.hardwareConcurrency)}catch{}const At={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:65536,maxWorkers:gt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof CompressionStream!=T&&CompressionStream,DecompressionStream:typeof DecompressionStream!=T&&DecompressionStream},Rt="maxWorkers",Dt="baseURI",xt=["wasmURI","workerURI"],Ft=["chunkSize",Rt,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],zt=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],It=[Dt,...xt,"useCompressionStream","useWebWorkers","transferStreams",...Ft,...zt],Ut={...At};function Ot(){return Ut}function Tt(t){return Ct(t.chunkSize)}function Ct(t){return t=yt(t),Number.isInteger(t)&&t>=1?Math.max(t,64):65536}function kt(t){Object.assign(Ut,Mt(Nt(t)))}function Mt(t){const e={};for(const r of It){const n=t[r];n!==U&&(e[r]=vt(r,n))}return e}function vt(t,e){if(Ft.includes(t)){if(e=yt(e),t==Rt&&(!Number.isInteger(e)||e<1))throw new Error(Et)}else if(zt.includes(t))lt(e);else if(t==Dt){if(e&&typeof e!=M)throw new Error(bt)}else if(xt.includes(t)&&e&&typeof e!=M&&typeof e!=C)throw new Error(St);return e}function Nt(t){t=t||{};const{CompressionStreamZlib:e,DecompressionStreamZlib:r}=t;if(e===U&&r===U)return t;const n=Object.assign({},t);return n.CompressionStreamFallback===U&&(n.CompressionStreamFallback=e),n.DecompressionStreamFallback===U&&(n.DecompressionStreamFallback=r),n}function _t(t){const e=Mt(Nt(t));Object.assign(At,e),Object.assign(Ut,e)}function Lt(){for(const t of It)delete Ut[t];Object.assign(Ut,At)}function Bt(t,e){const r=new Uint8Array(t.length+e.length);return r.set(t),r.set(e,t.length),r}function Pt(t){return t.byteOffset||t.byteLength!=t.buffer.byteLength?new Uint8Array(t):t}function jt(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function Wt(t){return Boolean(t)&&"object"==typeof t}const Vt=[[],[],[],[],[],[],[],[]];for(let t=0;t<256;t++){let e=t;for(let t=0;t<8;t++)e=1&e?e>>>1^3988292384:e>>>1;Vt[0][t]=e}for(let t=0;t<256;t++)for(let e=1;e<8;e++){const r=Vt[e-1][t];Vt[e][t]=r>>>8^Vt[0][255&r]}const[Zt,Ht,Gt,Yt,Kt,qt,Xt,$t]=Vt;class Jt{constructor(t){this.o=t||-1}append(t){let e=0|this.o;const r=0|t.length;let n=0;if(r>=8&&t.buffer){const o=new DataView(t.buffer,t.byteOffset,r),a=r-8;for(;n<=a;n+=8){const t=e^o.getInt32(n,!0),r=o.getInt32(n+4,!0);e=$t[255&t]^Xt[t>>>8&255]^qt[t>>>16&255]^Kt[t>>>24&255]^Yt[255&r]^Gt[r>>>8&255]^Ht[r>>>16&255]^Zt[r>>>24&255]}}for(;n<r;n++)e=e>>>8^Zt[255&(e^t[n])];this.o=e}get(){return~this.o}}class Qt extends TransformStream{constructor(){let t;const e=new Jt;super({transform(t,r){e.append(t),r.enqueue(t)},flush(){const r=new Uint8Array(4);new DataView(r.buffer).setUint32(0,e.get()),t.value=r}}),t=this}}function te(t){if(typeof TextEncoder==T){t=unescape(encodeURIComponent(t));const e=new Uint8Array(t.length);for(let r=0;r<e.length;r++)e[r]=t.charCodeAt(r);return e}return(new TextEncoder).encode(t)}const ee=64,re=20,ne=new Uint8Array([128]),oe=new Uint8Array(1),ae=new Int32Array([1732584193,4023233417,2562383102,271733878,3285377520]),ie=new Uint8Array(256),se=new Int32Array(256),ce=new Int32Array(256),ue=new Int32Array(256),le=new Int32Array(256);let fe=!1;function we(t,e){!function(){if(!fe){let t=1,e=1;do{t=255&(t^t<<1^(128&t?27:0)),e=255&(e^e<<1),e=255&(e^e<<2),e=255&(e^e<<4),128&e&&(e^=9),ie[t]=255&(e^(e<<1|e>>7)^(e<<2|e>>6)^(e<<3|e>>5)^(e<<4|e>>4)^99)}while(1!=t);ie[0]=99;for(let t=0;t<256;t++){const e=ie[t],r=he(e),n=r<<24|e<<16|e<<8|r^e;se[t]=n,ce[t]=n>>>8|n<<24,ue[t]=n>>>16|n<<16,le[t]=n>>>24|n<<8}fe=!0}}();const r=new Int32Array(60),n=function(t,e){const r=t.length>>2,n=r+6,o=4*(n+1);let a=1;for(let n=0;n<r;n++)e[n]=t[4*n]<<24|t[4*n+1]<<16|t[4*n+2]<<8|t[4*n+3];for(let t=r;t<o;t++){let n=e[t-1];t%r==0?(n=pe(n<<8|n>>>24)^a<<24,a=he(a)):r>6&&t%r==4&&(n=pe(n)),e[t]=e[t-r]^n}return n}(t,r),o=new Int32Array(4),a=de(e);let i=0,s=0,c=0,u=0;return{process(t,e){e&&a.update(t,0,t.length),function(t){const e=new DataView(t.buffer,t.byteOffset,t.byteLength),r=t.length;let n=0;for(;n+16<=r;n+=16)l(),e.setInt32(n,e.getInt32(n)^o[0]),e.setInt32(n+4,e.getInt32(n+4)^o[1]),e.setInt32(n+8,e.getInt32(n+8)^o[2]),e.setInt32(n+12,e.getInt32(n+12)^o[3]);if(n<r){l();for(let e=0;n<r;n++,e++)t[n]^=o[e>>2]>>>24-8*(3&e)}}(t),e||a.update(t,0,t.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 t=me(i)^r[0],e=me(s)^r[1],a=me(c)^r[2],l=me(u)^r[3],f=se[t>>>24]^ce[e>>>16&255]^ue[a>>>8&255]^le[255&l]^r[4],w=se[e>>>24]^ce[a>>>16&255]^ue[l>>>8&255]^le[255&t]^r[5],d=se[a>>>24]^ce[l>>>16&255]^ue[t>>>8&255]^le[255&e]^r[6],p=se[l>>>24]^ce[t>>>16&255]^ue[e>>>8&255]^le[255&a]^r[7];t=se[f>>>24]^ce[w>>>16&255]^ue[d>>>8&255]^le[255&p]^r[8],e=se[w>>>24]^ce[d>>>16&255]^ue[p>>>8&255]^le[255&f]^r[9],a=se[d>>>24]^ce[p>>>16&255]^ue[f>>>8&255]^le[255&w]^r[10],l=se[p>>>24]^ce[f>>>16&255]^ue[w>>>8&255]^le[255&d]^r[11],f=se[t>>>24]^ce[e>>>16&255]^ue[a>>>8&255]^le[255&l]^r[12],w=se[e>>>24]^ce[a>>>16&255]^ue[l>>>8&255]^le[255&t]^r[13],d=se[a>>>24]^ce[l>>>16&255]^ue[t>>>8&255]^le[255&e]^r[14],p=se[l>>>24]^ce[t>>>16&255]^ue[e>>>8&255]^le[255&a]^r[15],t=se[f>>>24]^ce[w>>>16&255]^ue[d>>>8&255]^le[255&p]^r[16],e=se[w>>>24]^ce[d>>>16&255]^ue[p>>>8&255]^le[255&f]^r[17],a=se[d>>>24]^ce[p>>>16&255]^ue[f>>>8&255]^le[255&w]^r[18],l=se[p>>>24]^ce[f>>>16&255]^ue[w>>>8&255]^le[255&d]^r[19],f=se[t>>>24]^ce[e>>>16&255]^ue[a>>>8&255]^le[255&l]^r[20],w=se[e>>>24]^ce[a>>>16&255]^ue[l>>>8&255]^le[255&t]^r[21],d=se[a>>>24]^ce[l>>>16&255]^ue[t>>>8&255]^le[255&e]^r[22],p=se[l>>>24]^ce[t>>>16&255]^ue[e>>>8&255]^le[255&a]^r[23],t=se[f>>>24]^ce[w>>>16&255]^ue[d>>>8&255]^le[255&p]^r[24],e=se[w>>>24]^ce[d>>>16&255]^ue[p>>>8&255]^le[255&f]^r[25],a=se[d>>>24]^ce[p>>>16&255]^ue[f>>>8&255]^le[255&w]^r[26],l=se[p>>>24]^ce[f>>>16&255]^ue[w>>>8&255]^le[255&d]^r[27],f=se[t>>>24]^ce[e>>>16&255]^ue[a>>>8&255]^le[255&l]^r[28],w=se[e>>>24]^ce[a>>>16&255]^ue[l>>>8&255]^le[255&t]^r[29],d=se[a>>>24]^ce[l>>>16&255]^ue[t>>>8&255]^le[255&e]^r[30],p=se[l>>>24]^ce[t>>>16&255]^ue[e>>>8&255]^le[255&a]^r[31],t=se[f>>>24]^ce[w>>>16&255]^ue[d>>>8&255]^le[255&p]^r[32],e=se[w>>>24]^ce[d>>>16&255]^ue[p>>>8&255]^le[255&f]^r[33],a=se[d>>>24]^ce[p>>>16&255]^ue[f>>>8&255]^le[255&w]^r[34],l=se[p>>>24]^ce[f>>>16&255]^ue[w>>>8&255]^le[255&d]^r[35],f=se[t>>>24]^ce[e>>>16&255]^ue[a>>>8&255]^le[255&l]^r[36],w=se[e>>>24]^ce[a>>>16&255]^ue[l>>>8&255]^le[255&t]^r[37],d=se[a>>>24]^ce[l>>>16&255]^ue[t>>>8&255]^le[255&e]^r[38],p=se[l>>>24]^ce[t>>>16&255]^ue[e>>>8&255]^le[255&a]^r[39];let m=40;n>10&&(t=se[f>>>24]^ce[w>>>16&255]^ue[d>>>8&255]^le[255&p]^r[40],e=se[w>>>24]^ce[d>>>16&255]^ue[p>>>8&255]^le[255&f]^r[41],a=se[d>>>24]^ce[p>>>16&255]^ue[f>>>8&255]^le[255&w]^r[42],l=se[p>>>24]^ce[f>>>16&255]^ue[w>>>8&255]^le[255&d]^r[43],f=se[t>>>24]^ce[e>>>16&255]^ue[a>>>8&255]^le[255&l]^r[44],w=se[e>>>24]^ce[a>>>16&255]^ue[l>>>8&255]^le[255&t]^r[45],d=se[a>>>24]^ce[l>>>16&255]^ue[t>>>8&255]^le[255&e]^r[46],p=se[l>>>24]^ce[t>>>16&255]^ue[e>>>8&255]^le[255&a]^r[47],m=48),n>12&&(t=se[f>>>24]^ce[w>>>16&255]^ue[d>>>8&255]^le[255&p]^r[48],e=se[w>>>24]^ce[d>>>16&255]^ue[p>>>8&255]^le[255&f]^r[49],a=se[d>>>24]^ce[p>>>16&255]^ue[f>>>8&255]^le[255&w]^r[50],l=se[p>>>24]^ce[f>>>16&255]^ue[w>>>8&255]^le[255&d]^r[51],f=se[t>>>24]^ce[e>>>16&255]^ue[a>>>8&255]^le[255&l]^r[52],w=se[e>>>24]^ce[a>>>16&255]^ue[l>>>8&255]^le[255&t]^r[53],d=se[a>>>24]^ce[l>>>16&255]^ue[t>>>8&255]^le[255&e]^r[54],p=se[l>>>24]^ce[t>>>16&255]^ue[e>>>8&255]^le[255&a]^r[55],m=56),o[0]=(ie[f>>>24]<<24|ie[w>>>16&255]<<16|ie[d>>>8&255]<<8|ie[255&p])^r[m],o[1]=(ie[w>>>24]<<24|ie[d>>>16&255]<<16|ie[p>>>8&255]<<8|ie[255&f])^r[m+1],o[2]=(ie[d>>>24]<<24|ie[p>>>16&255]<<16|ie[f>>>8&255]<<8|ie[255&w])^r[m+2],o[3]=(ie[p>>>24]<<24|ie[f>>>16&255]<<16|ie[w>>>8&255]<<8|ie[255&d])^r[m+3]}}function de(t){const e=function(){const t=new Int32Array(ae),e=new Int32Array(16),r=new Uint8Array(ee),n=new DataView(r.buffer),o=new Uint8Array(8);let a=0,i=0;return{update:s,digest:function(){const e=8*i,r=Math.floor(e/4294967296),n=e>>>0;for(s(ne,0,1);56!=a;)s(oe,0,1);o[0]=r>>>24,o[1]=r>>>16,o[2]=r>>>8,o[3]=r,o[4]=n>>>24,o[5]=n>>>16,o[6]=n>>>8,o[7]=n,s(o,0,8);const c=new Uint8Array(re),u=new DataView(c.buffer);for(let e=0;e<t.length;e++)u.setInt32(4*e,t[e]);return t.set(ae),a=0,i=0,c}};function s(t,e,o){const s=e+o;if(i+=o,a){for(;e<s&&a<ee;)r[a++]=t[e++];a==ee&&(c(n,0),a=0)}if(e+ee<=s){const r=new DataView(t.buffer,t.byteOffset,t.byteLength);for(;e+ee<=s;e+=ee)c(r,e)}for(;e<s;)r[a++]=t[e++]}function c(r,n){for(let t=0;t<16;t++)e[t]=r.getInt32(n+4*t);let o,a=t[0],i=t[1],s=t[2],c=t[3],u=t[4];for(let t=0;t<15;t+=5)u=(a<<5|a>>>27)+((s^c)&i^c)+u+1518500249+e[t]|0,i=i<<30|i>>>2,c=(u<<5|u>>>27)+((i^s)&a^s)+c+1518500249+e[t+1]|0,a=a<<30|a>>>2,s=(c<<5|c>>>27)+((a^i)&u^i)+s+1518500249+e[t+2]|0,u=u<<30|u>>>2,i=(s<<5|s>>>27)+((u^a)&c^a)+i+1518500249+e[t+3]|0,c=c<<30|c>>>2,a=(i<<5|i>>>27)+((c^u)&s^u)+a+1518500249+e[t+4]|0,s=s<<30|s>>>2;u=(a<<5|a>>>27)+((s^c)&i^c)+u+1518500249+e[15]|0,i=i<<30|i>>>2,o=e[13]^e[8]^e[2]^e[0],o=o<<1|o>>>31,e[0]=o,c=(u<<5|u>>>27)+((i^s)&a^s)+c+1518500249+o|0,a=a<<30|a>>>2,o=e[14]^e[9]^e[3]^e[1],o=o<<1|o>>>31,e[1]=o,s=(c<<5|c>>>27)+((a^i)&u^i)+s+1518500249+o|0,u=u<<30|u>>>2,o=e[15]^e[10]^e[4]^e[2],o=o<<1|o>>>31,e[2]=o,i=(s<<5|s>>>27)+((u^a)&c^a)+i+1518500249+o|0,c=c<<30|c>>>2,o=e[0]^e[11]^e[5]^e[3],o=o<<1|o>>>31,e[3]=o,a=(i<<5|i>>>27)+((c^u)&s^u)+a+1518500249+o|0,s=s<<30|s>>>2;for(let t=20;t<40;t+=5)o=e[t-3&15]^e[t-8&15]^e[t-14&15]^e[15&t],o=o<<1|o>>>31,e[15&t]=o,u=(a<<5|a>>>27)+(i^s^c)+u+1859775393+o|0,i=i<<30|i>>>2,o=e[t-2&15]^e[t-7&15]^e[t-13&15]^e[t+1&15],o=o<<1|o>>>31,e[t+1&15]=o,c=(u<<5|u>>>27)+(a^i^s)+c+1859775393+o|0,a=a<<30|a>>>2,o=e[t-1&15]^e[t-6&15]^e[t-12&15]^e[t+2&15],o=o<<1|o>>>31,e[t+2&15]=o,s=(c<<5|c>>>27)+(u^a^i)+s+1859775393+o|0,u=u<<30|u>>>2,o=e[15&t]^e[t-5&15]^e[t-11&15]^e[t+3&15],o=o<<1|o>>>31,e[t+3&15]=o,i=(s<<5|s>>>27)+(c^u^a)+i+1859775393+o|0,c=c<<30|c>>>2,o=e[t+1&15]^e[t-4&15]^e[t-10&15]^e[t+4&15],o=o<<1|o>>>31,e[t+4&15]=o,a=(i<<5|i>>>27)+(s^c^u)+a+1859775393+o|0,s=s<<30|s>>>2;for(let t=40;t<60;t+=5)o=e[t-3&15]^e[t-8&15]^e[t-14&15]^e[15&t],o=o<<1|o>>>31,e[15&t]=o,u=(a<<5|a>>>27)+(i&s|(i|s)&c)+u+2400959708+o|0,i=i<<30|i>>>2,o=e[t-2&15]^e[t-7&15]^e[t-13&15]^e[t+1&15],o=o<<1|o>>>31,e[t+1&15]=o,c=(u<<5|u>>>27)+(a&i|(a|i)&s)+c+2400959708+o|0,a=a<<30|a>>>2,o=e[t-1&15]^e[t-6&15]^e[t-12&15]^e[t+2&15],o=o<<1|o>>>31,e[t+2&15]=o,s=(c<<5|c>>>27)+(u&a|(u|a)&i)+s+2400959708+o|0,u=u<<30|u>>>2,o=e[15&t]^e[t-5&15]^e[t-11&15]^e[t+3&15],o=o<<1|o>>>31,e[t+3&15]=o,i=(s<<5|s>>>27)+(c&u|(c|u)&a)+i+2400959708+o|0,c=c<<30|c>>>2,o=e[t+1&15]^e[t-4&15]^e[t-10&15]^e[t+4&15],o=o<<1|o>>>31,e[t+4&15]=o,a=(i<<5|i>>>27)+(s&c|(s|c)&u)+a+2400959708+o|0,s=s<<30|s>>>2;for(let t=60;t<80;t+=5)o=e[t-3&15]^e[t-8&15]^e[t-14&15]^e[15&t],o=o<<1|o>>>31,e[15&t]=o,u=(a<<5|a>>>27)+(i^s^c)+u+3395469782+o|0,i=i<<30|i>>>2,o=e[t-2&15]^e[t-7&15]^e[t-13&15]^e[t+1&15],o=o<<1|o>>>31,e[t+1&15]=o,c=(u<<5|u>>>27)+(a^i^s)+c+3395469782+o|0,a=a<<30|a>>>2,o=e[t-1&15]^e[t-6&15]^e[t-12&15]^e[t+2&15],o=o<<1|o>>>31,e[t+2&15]=o,s=(c<<5|c>>>27)+(u^a^i)+s+3395469782+o|0,u=u<<30|u>>>2,o=e[15&t]^e[t-5&15]^e[t-11&15]^e[t+3&15],o=o<<1|o>>>31,e[t+3&15]=o,i=(s<<5|s>>>27)+(c^u^a)+i+3395469782+o|0,c=c<<30|c>>>2,o=e[t+1&15]^e[t-4&15]^e[t-10&15]^e[t+4&15],o=o<<1|o>>>31,e[t+4&15]=o,a=(i<<5|i>>>27)+(s^c^u)+a+3395469782+o|0,s=s<<30|s>>>2;t[0]=t[0]+a|0,t[1]=t[1]+i|0,t[2]=t[2]+s|0,t[3]=t[3]+c|0,t[4]=t[4]+u|0}}(),r=new Uint8Array(ee),n=new Uint8Array(ee);t.length>ee&&(e.update(t,0,t.length),t=e.digest());for(let e=0;e<ee;e++){const o=e<t.length?t[e]:0;r[e]=54^o,n[e]=92^o}return e.update(r,0,ee),{update(t,r,n){e.update(t,r,n)},digest(){const t=e.digest();e.update(n,0,ee),e.update(t,0,re);const o=e.digest();return e.update(r,0,ee),o}}}function pe(t){return ie[t>>>24]<<24|ie[t>>>16&255]<<16|ie[t>>>8&255]<<8|ie[255&t]}function me(t){return t<<24|(65280&t)<<8|t>>>8&65280|t>>>24}function he(t){return 255&(t<<1^27*(t>>7))}const ye=typeof crypto!=T&&typeof crypto.getRandomValues==C,Ee="Invalid password",be="Invalid authentication code",Se="zipjs-abort-check-password",ge="Crypto API not supported";function Ae(t){if(ye)return crypto.getRandomValues(t);throw new Error(ge)}const Re={name:"PBKDF2"},De=Object.assign({hash:{name:"HMAC"}},Re),xe=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},Re),Fe=["deriveBits"],ze=[8,12,16],Ie=[16,24,32],Ue=10,Oe=typeof crypto!=T,Te=Oe&&crypto.subtle;let Ce=Oe&&typeof Te!=T&&typeof Te.importKey==C&&typeof Te.deriveBits==C,ke=we;class Me extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r,checkPasswordOnly:n,checkAuthenticationCode:o=!0}){const a={};super({start(){Ne(a,t,e,r)},async transform(t,e){const{password:r,strength:o,l:i,ready:s}=a;if(r?(await async function(t,e,r,n){const o=await Pe(t,e,r,We(n,0,ze[e])),a=We(n,ze[e]);if(o[0]!=a[0]||o[1]!=a[1])throw Be(t),new Error(Ee)}(a,o,r,We(t,0,ze[o]+2)),t=We(t,ze[o]+2),n?(Be(a),e.error(new Error(Se))):i()):await s,a.m)return;const c=new Uint8Array(t.length-Ue-(t.length-Ue)%16);e.enqueue(Le(a,t,c,0,Ue,!0))},async flush(t){const{h:e,S:r,ready:n}=a;if(e){if(await n,a.m)return;const i=We(r,r.length-Ue),s=new Uint8Array(We(r,0,r.length-Ue));e.process(s,!0);const c=e.digest();let u=r.length<Ue?1:0;for(let t=0;t<Ue;t++)u|=c[t]^i[t];if(u&&o)return void t.error(new Error(be));t.enqueue(s)}}}),_e(this,a)}}class ve extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r}){const n={};super({start(){Ne(n,t,e,r)},async transform(t,e){const{password:r,strength:o,l:a,ready:i}=n;let s=N;if(r?(s=await async function(t,e,r){const n=Ae(new Uint8Array(ze[e]));return Bt(n,await Pe(t,e,r,n))}(n,o,r),a()):await i,n.m)return;const c=new Uint8Array(s.length+t.length-t.length%16);c.set(s,0),e.enqueue(Le(n,t,c,s.length,0,!1))},async flush(t){const{h:e,S:r,ready:o}=n;if(e){if(await o,n.m)return;const a=new Uint8Array(r);e.process(a,!1);const i=We(e.digest(),0,Ue);t.enqueue(Bt(a,i))}}}),_e(this,n)}}function Ne(t,e,r,n){Object.assign(t,{ready:new Promise(e=>t.l=e),password:je(e,r),strength:n-1,S:N,m:!1})}function _e(t,e){const r=t.readable.getReader(),n=new ReadableStream({async pull(t){try{const{value:e,done:n}=await r.read();n?t.close():t.enqueue(e)}catch(t){throw Be(e),r.cancel(t).catch(()=>{}),t}},cancel:t=>(Be(e),r.cancel(t))});Object.defineProperty(t,"readable",{get:()=>n})}function Le(t,e,r,n,o,a){const{h:i,S:s}=t;s.length&&(e=Bt(s,e));const c=e.length-o,u=c-c%16;if(r=function(t,e){if(e&&e>t.length){const r=t;(t=new Uint8Array(e)).set(r,0)}return t}(r,n+u),u){const t=We(r,n,n+u);t.set(We(e,0,u)),i.process(t,a)}return t.S=We(e,u),r}function Be(t){const{h:e}=t;t.m=!0,e&&e.dispose&&e.dispose()}async function Pe(t,e,r,n){t.password=null;const o=Ie[e],a=await async function(t,e,r){if(Ce)try{const n=await Te.importKey("raw",t,De,!1,Fe);return new Uint8Array(await Te.deriveBits(Object.assign({salt:e},xe),n,8*r))}catch{Ce=!1}return function(t,e,r,n){const o=de(t),a=new Uint8Array(n),i=new Uint8Array(e.length+4),s=new DataView(i.buffer);i.set(e);for(let t=1,r=0;r<n;t++,r+=re){s.setUint32(e.length,t),o.update(i,0,i.length);let c=o.digest();const u=c.slice();for(let t=1;t<1e3;t++){o.update(c,0,re),c=o.digest();for(let t=0;t<re;t++)u[t]^=c[t]}a.set(u.subarray(0,Math.min(re,n-r)),r)}return a}(t,e,0,r)}(r,n,2*o+2);return t.h=ke(We(a,0,o),We(a,o,2*o)),t.m&&Be(t),We(a,2*o)}function je(t,e){return e===U?te(t):e}function We(t,e,r){return t.subarray(e,r)}class Ve extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r,checkPasswordOnly:n}){super({start(){He(this,t,e,r)},transform(t,e){const r=this;if(r.password||r.rawPassword){const e=Ge(r,t.subarray(0,12));if(r.password=r.rawPassword=null,0!=(e[11]^r.passwordVerification))throw new Error(Ee);t=t.subarray(12)}n?e.error(new Error(Se)):e.enqueue(Ge(r,t))}})}}class Ze extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r}){super({start(){He(this,t,e,r)},transform(t,e){const r=this;let n,o;if(r.password||r.rawPassword){r.password=r.rawPassword=null;const e=Ae(new Uint8Array(12));e[11]=r.passwordVerification,n=new Uint8Array(t.length+e.length),n.set(Ye(r,e),0),o=12}else n=new Uint8Array(t.length),o=0;n.set(Ye(r,t),o),e.enqueue(n)}})}}function He(t,e,r,n){Object.assign(t,{password:e,rawPassword:r,passwordVerification:n}),function(t,e,r){const n=[305419896,591751049,878082192];if(Object.assign(t,{A:n,R:new Jt(n[0]),D:new Jt(n[2])}),r)for(let e=0;e<r.length;e++)Ke(t,r[e]);else for(let r=0;r<e.length;r++)Ke(t,e.charCodeAt(r))}(t,e,r)}function Ge(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=qe(t)^e[n],Ke(t,r[n]);return r}function Ye(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=qe(t)^e[n],Ke(t,e[n]);return r}function Ke(t,e){let[,r]=t.A;t.R.append([e]);const n=~t.R.get();r=$e(Math.imul($e(r+Xe(n)),134775813)+1),t.D.append([r>>>24]);const o=~t.D.get();t.A=[n,r,o]}function qe(t){const e=2|t.A[2];return Xe(Math.imul(e,1^e)>>>8)}function Xe(t){return 255&t}function $e(t){return 4294967295&t}function Je(t){if(t instanceof ReadableStream)return t;const e=t.getReader();return new ReadableStream({async pull(t){try{const{value:r,done:n}=await e.read();n?t.close():t.enqueue(r)}catch(t){throw e.cancel(t).catch(()=>{}),t}},cancel:t=>e.cancel(t)})}function Qe(t,e){t=Je(t);const r=e?{type:e}:{};if(typeof Blob.prototype.stream!=C||new Blob([]).stream()instanceof ReadableStream)return new Response(t).blob().then(t=>e?new Blob([t],r):t);const n=[];return t.pipeTo(new WritableStream({write(t){n.push(t)}})).then(()=>new Blob(n,r))}function tr(t){if(t instanceof WritableStream)return t;const e=t.getWriter();return new WritableStream({write:t=>e.write(t),close:()=>e.close(),abort:t=>e.abort(t)})}const er="Invalid codec definition",rr="Reserved compression method",nr="Invalid codec module",or="Compression method not supported",ar=[0,8,9,99],ir=new Map,sr=new Map;function cr(t={}){const{compressionMethod:r,format:n,codecURI:o,CompressionStream:a,DecompressionStream:i,versionNeeded:s}=t;if(!Number.isInteger(r)||r<0||r>e||typeof n!=M||!n.length)throw new Error(er);if(ar.includes(r))throw new Error(rr);const c=typeof a==C||typeof i==C;if(!(c||typeof o==M&&o.length))throw new Error(er);ir.set(r,{compressionMethod:r,format:n,codecURI:o,versionNeeded:s}),c&&dr(n,{CompressionStream:a,DecompressionStream:i})}function ur(t){const e=ir.get(t);if(e){let r;ir.delete(t),ir.forEach(t=>r=r||t.format==e.format),r||sr.delete(e.format)}}function lr(t){return ir.get(t)}function fr(){return Array.from(ir.values(),t=>Object.assign({},t,sr.get(t.format)))}function wr(t){return sr.get(t)}function dr(t,e){const{CompressionStream:r,DecompressionStream:n}=e;if(typeof r!=C&&typeof n!=C)throw new Error(nr);sr.set(t,{CompressionStream:r,DecompressionStream:n})}const pr="Invalid uncompressed size",mr="Invalid compressed data",hr="Codec out of memory",yr="Invalid CRC32",Er="deflate-raw",br="deflate64-raw",Sr="gzip",gr=[31,139,8];class Ar extends TransformStream{constructor(t,{chunkSize:e,CompressionStreamFallback:r,CompressionStream:n}){super({});const{compressed:o,encrypted:a,useCompressionStream:i,zipCrypto:s,computeCrc32:c,level:u,deflate64:l,format:f,compressionMethod:w,inputSize:d}=t,p=this;let m,h,y,E=super.readable;const b=f&&wr(f),S=Or(i,n,r),g=c&&o&&!l&&!b&&(!a||s)&&Boolean(S);if(a&&!s||!c||g||(m=new Qt,E=Cr(E,m)),o)if(b)E=kr(E,Ur(b.CompressionStream,f,{level:u,chunkSize:e,compressionMethod:w,uncompressedSize:d}));else if(g)y=new Rr,E=kr(E,new S(Sr,{level:u,chunkSize:e})),E=Cr(E,y);else try{E=Tr(E,i,{level:u,chunkSize:e},n,r)}catch(t){if(!i&&r)throw Lr(t);let e;try{e=new n(Sr)}catch{throw Lr(t)}E=kr(E,e),E=Cr(E,new Rr)}a&&(s?E=Cr(E,new Ze(t)):(h=new ve(t),E=Cr(E,h))),Ir(p,E,()=>{a&&!s||!c||(p.crc32=g?y.crc32:new DataView(m.value.buffer).getUint32(0))})}}class Rr extends TransformStream{constructor(){let t,e=10,r=new Uint8Array(0);super({transform(t,n){if(e){const r=Math.min(e,t.length);if(e-=r,!(t=t.subarray(r)).length)return}const o=r.length+t.length;if(o<=8)return void(r=Bt(r,t));const a=o-8,i=Math.min(a,r.length);n.enqueue(Bt(r.subarray(0,i),t.subarray(0,a-i))),r=Bt(r.subarray(i),t.subarray(a-i))},flush(){const e=jt(r);t.crc32=e.getUint32(0,!0),t.uncompressedSize=e.getUint32(4,!0)}}),t=this}}class Dr extends TransformStream{constructor(t,{chunkSize:e,DecompressionStreamFallback:r,DecompressionStream:n}){super({});const{zipCrypto:o,encrypted:a,checkCrc32:i,crc32:s,compressed:c,useCompressionStream:u,deflate64:l,format:f,compressionMethod:w,rawBitFlag:d,outputSize:p}=t;let m,h,y,E=super.readable;if(a&&(o?E=Cr(E,new Ve(t)):(h=new Me(t),E=Cr(E,h))),c){const t=new Set,o=f&&wr(f);let a;if(o)E=kr(E,Ur(o.DecompressionStream,f,{chunkSize:e,compressionMethod:w,rawBitFlag:d,uncompressedSize:p}),t);else{const o=Or(u,n,r);if(i&&!l&&s!==U&&p!==U&&o)try{a=new o(Sr,{chunkSize:e})}catch{a=U}if(!a)try{E=Tr(E,u,{chunkSize:e,deflate64:l},n,r,t)}catch(t){if(l||p===U||!u&&r)throw Lr(t);try{a=new n(Sr)}catch{throw Lr(t)}}}a?(y=!0,E=function(t,e,r,n,o){const a=e.writable.getWriter(),i=e.readable.getReader(),s=n===U?new Jt:U;let c,u,l=0,f=!1,w=!1;const d=new ReadableStream({start(t){u=t},pull(){h()},cancel:t=>(w=!0,h(),i.cancel(t))});return async function(){const e=t.getReader();try{const t=new Uint8Array(10);for(t.set(gr),await a.write(t);;){await m(),await a.ready;const{value:t,done:r}=await Nr(e,o);if(r)break;await a.write(t)}s&&await a.write(new Uint8Array(0));const i=new Uint8Array(8),c=jt(i);c.setUint32(0,s?s.get():n,!0),c.setUint32(4,r,!0),f=!0,await a.write(i),await a.close()}catch(t){await Mr(a,t),await vr(e,t)}}(),async function(){try{for(;;){const{value:t,done:e}=await p();if(e)break;if(l+=t.length,l>r)throw new Error(pr);s&&s.append(t),u.enqueue(t)}w||(w=!0,u.close())}catch(t){!function(t){w||(w=!0,u.error(t),h())}(t),await vr(i,t)}}(),d;function p(){return i.read().catch(t=>{if(f){if(!s)throw Pr(t,yr);if(l!=r)throw Pr(t,pr);return{done:!0}}throw _r(t,o)})}function m(){if(!w&&u.desiredSize<=0)return new Promise(t=>c=t)}function h(){if(c){const t=c;c=U,t()}}}(E,a,p,s,t)):E=function(t,e){const r=t.getReader();return new ReadableStream({async pull(t){try{const{value:e,done:n}=await r.read();n?t.close():t.enqueue(e)}catch(t){throw await vr(r,t),_r(t,e)}},cancel:t=>r.cancel(t)})}(E,t)}i&&!y&&(m=new Qt,E=Cr(E,m)),Ir(this,E,()=>{if(m){const t=new DataView(m.value.buffer).getUint32(0,!1);if(s!=t)throw new Error(yr)}})}}const xr=new Map;function Fr(t,e){if(!t)return!1;let r=xr.get(t);r||(r=new Map,xr.set(t,r));let n=r.get(e);if(n===U){try{new t(e),n=!0}catch{n=!1}r.set(e,n)}return n}function zr(t){return Fr(t,Er)}function Ir(t,e,r){e=Cr(e,new TransformStream({flush:r})),Object.defineProperty(t,"readable",{get:()=>e})}function Ur(t,e,r){if(!t)throw new Error(or);return new t(e,r)}function Or(t,e,r){return t&&e?e:r&&r.requiresModule?r:void 0}function Tr(t,e,r,n,o,a){const i=e&&n?n:o||n,s=r.deflate64?br:Er;let c;try{c=new i(s,r)}catch(t){if(!e||!o||i==o)throw t;c=new o(s,r)}return kr(t,c,a)}function Cr(t,e){return Je(t).pipeThrough(e)}function kr(t,e,r){const n=e.writable.getWriter(),o=t.getReader();return async function(){try{for(;;){await n.ready;const t=await Nr(o,r);if(t.done){await n.close();break}await n.write(t.value)}}catch(t){await Mr(n,t),await vr(o,t)}}(),e.readable}async function Mr(t,e){try{await t.abort(e)}catch{}}async function vr(t,e){try{await t.cancel(e)}catch{}}function Nr(t,e){const r=t.read();return e?r.catch(t=>{throw e.add(t),t}):r}function _r(t,e){return e.has(t)?t:Pr(t,Br(t)?hr:mr)}function Lr(t){return Br(t)?Pr(t,hr):t}function Br(t){return Wt(t)&&"Z_MEM_ERROR"==t.code}function Pr(t,e){const r=new Error(e);return r.cause=t,r}const jr="data",Wr="deflate",Vr="inflate";class Zr extends TransformStream{constructor(t,e){super({});const r=this,{codecType:n}=t;let o;n.startsWith(Wr)?o=Ar:n.startsWith(Vr)&&(o=Dr),r.outputSize=0;let a=0;const i=new o(t,e),s=super.readable,c=new TransformStream({transform(t,e){t&&t.length&&(a+=t.length,e.enqueue(t))},flush(){Object.assign(r,{inputSize:a})}}),u=new TransformStream({transform(e,n){if(e&&e.length&&(n.enqueue(e),r.outputSize+=e.length,t.outputSize!==U&&r.outputSize>t.outputSize))throw new Error(pr)},flush(){const{crc32:t}=i;Object.assign(r,{crc32:t,inputSize:a})}});Object.defineProperty(r,"readable",{get:()=>s.pipeThrough(c).pipeThrough(i).pipeThrough(u)})}}class Hr extends TransformStream{constructor(t){const e=[];let r=0,n=0;function o(){const n=new Uint8Array(t);let o=0;for(;o<t;){const r=e[0],a=t-o;r.length<=a?(n.set(r,o),o+=r.length,e.shift()):(n.set(r.subarray(0,a),o),e[0]=r.subarray(a),o+=a)}return r-=t,n}(!Number.isFinite(t)||t<1)&&(t=65536),super({transform(a,i){for(e.push(a),r+=a.length;r>t;)n+=t,i.enqueue(o())},flush(t){r&&(n+=r,t.enqueue(function(t,e){const r=new Uint8Array(e);let n=0;for(const e of t)r.set(e,n),n+=e.length;return r}(e,r)))}}),Object.defineProperty(this,"outputSize",{get:()=>n})}}const Gr="Worker startup timeout";let Yr,Kr,qr,Xr=()=>{};async function $r(t){if(Xr)try{return await Xr(t),!0}catch{}return!1}function Jr(t){t.createWorker?Kr=!0:Yr=!1}class Qr{constructor(t,{readable:e,writable:r},n,o){const{options:a,config:i,F:s,useWebWorkers:c,transferStreams:u,workerURI:l}=n;let{createWorker:f}=n;const{signal:w}=s;return Kr&&(f=U),Object.assign(t,{I:!0,U:(t.U||0)+1,readable:e.pipeThrough(new Hr(Tt(i))).pipeThrough(new tn(s),{signal:w}),writable:r,options:Object.assign({},a),O:n,workerURI:l,createWorker:f,transferStreams:u,terminate:()=>new Promise(e=>{const{T:r,I:n}=t;n?(t.C=t.C||[],t.C.push(e)):(r&&(r.terminate(),t.T=null),e()),t.M=null}),v(){if(t.I){const{C:e,T:r}=t;e&&(t.C=null,r&&(t.N=!0,r.terminate())),t.I=!1;const n=o(t);e&&e.forEach(t=>t(n))}}}),Yr===U&&(Yr=typeof Worker!=T),(c&&qr&&(Yr&&l||f)?qr:rn)(t,i)}}class tn extends TransformStream{constructor({onstart:t,onprogress:e,size:r,onend:n}){let o=0;super({async start(){t&&await en(t,r)},async transform(t,n){o+=t.length,e&&await en(e,o,r),n.enqueue(t)},async flush(){n&&await en(n,o)}})}}async function en(t,...e){try{await t(...e)}catch{}}function rn(t,e){return{run:()=>nn(t,e)}}async function nn({options:t,readable:e,writable:r,v:n,O:o},a){let i,s,c;try{if(t.compressed&&!t.format){const e=t.codecType.startsWith(Wr),r=e?a.CompressionStreamFallback:a.DecompressionStreamFallback,n=e?a.CompressionStream:a.DecompressionStream;t.useCompressionStream?r&&r.requiresModule&&!zr(n)&&await u():await u()||r&&!r.requiresModule||(t.useCompressionStream=!0)}t.encrypted&&!t.zipCrypto&&await u(),i=new Zr(t,a),s=new Hr(Tt(a));const{signal:n}=o.F;await e.pipeThrough(i).pipeThrough(s).pipeTo(r,{preventClose:!0,preventAbort:!0,signal:n});const{crc32:c,inputSize:l,outputSize:f}=i;return{crc32:c,inputSize:l,outputSize:f}}catch(t){if(i){const e=s?s.outputSize:0;if(o.outputSize=e,Wt(t))try{t.outputSize=e}catch{}}throw t}finally{n()}function u(){return c||(c=$r(a)),c}}const on={type:"module"},an="error",sn="abort";let cn,un,ln,fn=!0;try{fn=typeof structuredClone==C&&structuredClone(new DOMException("","AbortError")).code!==U}catch{}var wn;function dn(t){const{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function pn(t){const{T:e}=t;if(e)try{e.terminate()}catch{}t.M=null}function mn(t,e,r,n,o=!0){const{createWorker:a}=r;let i,s,c;if(a)i=a();else if(un===U||cn!==t){const a=typeof t==C;s=a?t(o):t;const u=s.startsWith("data:"),l=s.startsWith("blob:");if(u||l){n===U&&(n=!1),n&&(c=on);try{i=new Worker(s,c)}catch(o){if(l)try{URL.revokeObjectURL(s)}catch{}if(a&&l)return mn(t,e,r,n,!1);if(n)throw o;return mn(t,e,r,!0,!1)}}else{n===U&&(n=!0),n&&(c=on);try{s=new URL(s,e)}catch{}try{i=new Worker(s,c)}catch(a){if(n)return mn(t,e,r,!1,o);throw a}}cn=t,un=s,ln=c}else i=new Worker(un,ln);return i.addEventListener("message",t=>{r._=!0,hn(r),async function({data:t},e){const{type:r,value:n,messageId:o,result:a,error:i,errorValue:s}=t,{reader:c,writer:u,L:l,B:f,v:w,U:d}=e,p=()=>e.U!=d;try{if(i)m(function(t,e){const{message:r,stack:n,code:o,name:a,outputSize:i,cause:s,codecImportFailed:c}=t;let u;if(u=e?e.value:Object.assign(new Error(r),{stack:n,code:o,name:a}),Wt(u))try{i!==U&&(u.outputSize=i),c&&(u.codecImportFailed=!0),s&&(Wt(u.cause)||(u.cause=Object.assign(new Error(s.message),{name:s.name})),s.code!==U&&u.cause.code!==s.code&&(u.cause.code=s.code)),e&&(u.name!==a&&(u.name=a),u.code!==o&&(u.code=o))}catch{}return u}(i,s));else{if("pull"==r){const{value:t,done:r}=await c.read();p()||En({type:jr,value:t,done:r,messageId:o},e)}if(r==jr){const t=new Uint8Array(n);await u.ready,await u.write(t),p()||En({type:"ack",messageId:o},e)}"close"==r&&function(t){p()||(l(t),h(),w())}(a)}}catch(i){p()||(pn(e),m(i))}function m(t){p()||(f(t),h(),Wt(t)&&t.codecImportFailed||w())}function h(){u&&u.releaseLock()}}(t,r)}),i.addEventListener(an,t=>yn(t,r)),i.addEventListener("messageerror",t=>yn(t,r)),i}function hn(t){const{P:e}=t;e&&(clearTimeout(e),t.P=null)}function yn(t,e){t.preventDefault&&t.preventDefault(),hn(e);const{_:r,B:n,writer:o,v:a}=e;pn(e),r||(e.T=null);let i=t.error||new Error(t.message||an);r||(i=Object.assign(new Error(i.message||an),{j:!0}),e.W=i),n&&(n(i),o&&o.releaseLock(),r&&a())}function En(t,{T:e,writer:r,transferStreams:n,_:o}){try{const{value:r,readable:a,writable:i}=t,s=[];if(r&&(t.value=Pt(r),s.push(t.value.buffer)),n&&fn&&o?(a&&s.push(a),i&&s.push(i)):t.readable=t.writable=null,s.length)try{return e.postMessage(t,s),!0}catch{fn=!1,t.readable=t.writable=null,e.postMessage(t)}else e.postMessage(t)}catch(t){throw r&&r.releaseLock(),t}}wn=function(t,e){const{baseURI:r,chunkSize:n,workerStartupTimeout:o}=e;let{wasmURI:a}=e;if(!t.M){let i;typeof a==C&&(a=a());try{i=mn(t.workerURI,r,t)}catch{return Jr(t),rn(t,e)}Object.assign(t,{T:i,_:!1,N:!1,W:null,M:{run:async()=>{try{return await async function(t,e){if(!t.T){const{W:e}=t;t.W=null;const r=e||new Error(Gr);throw r.j=!0,r}let r,n;const o=new Promise((e,o)=>{r=e,n=e=>{const{outputSize:r,O:n}=t;if(n.outputSize=r,Wt(e))try{e.outputSize=r}catch{}o(e)}});Object.assign(t,{reader:null,writer:null,outputSize:0,V:!1,Z:null,L:r,B:n,result:o});const{readable:a,options:i}=t,{writable:s,closed:c,H:u}=function(t,e){const r=new AbortController;let n;const{writable:o,readable:a}=new TransformStream({transform(t,r){e.outputSize+=t.length,r.enqueue(t)}}),i=a.pipeTo(t,{preventClose:!0,preventAbort:!0,signal:r.signal});i.catch(t=>{n||Object.assign(e,{V:!0,Z:t})});const{signal:s}=e.O.F;if(s){const t=()=>r.abort(s.reason),e=()=>s.removeEventListener(sn,t);s.addEventListener(sn,t),i.then(e,e)}return{writable:o,closed:i,H:()=>{n=!0,r.abort()}}}(t.writable,t);let l;try{l=En({type:"start",options:i,config:e,readable:a,writable:s},t)}catch(e){u();try{await c}catch{}throw t.v(),e}l||Object.assign(t,{reader:a.getReader(),writer:s.getWriter()});const{workerStartupTimeout:f}=e;!t._&&Number.isFinite(f)&&f>=0&&(t.P=setTimeout(()=>function(t){if(t.P=null,t._)return;const{B:e,writer:r}=t;if(pn(t),t.T=null,e){const t=new Error(Gr);t.j=!0,e(t),r&&r.releaseLock()}}(t),f));try{const t=await o;return await w(),await c,t}catch(e){await w(),u();try{await c}catch{}const{outputSize:r,O:n,V:o,Z:a}=t;n.outputSize=r;const i=Wt(e)&&(e.codecImportFailed||e.j),s=o&&!i?a:e;if(Wt(s))try{s.outputSize=r}catch{}throw s}async function w(){if(!l&&!s.locked)try{await s.getWriter().close()}catch{}}}(t,{chunkSize:n,wasmURI:a,baseURI:r,workerStartupTimeout:o})}catch(r){if(r&&r.j)return Jr(t),dn(t),nn(t,e);if(r&&r.codecImportFailed){if(t.reader)return dn(t),nn(t,e);t.v()}throw r}}}})}return t.M},qr=wn;let bn=[];const Sn=[];let gn,An,Rn=0;async function Dn(t,e){const{options:r,config:n}=e,{transferStreams:o,useWebWorkers:a,useCompressionStream:i,compressed:s,checkCrc32:c,computeCrc32:u,encrypted:l,format:f,codecURI:w}=r,{workerURI:d,createWorker:p,maxWorkers:m}=n;f&&(w&&(r.codecURI=function(t,e){try{return new URL(t,e).toString()}catch{return t}}(w,n.baseURI)),await async function(t,e){!sr.has(t)&&e&&dr(t,await(import(/* webpackIgnore: true */ /* @vite-ignore */e)))}(f,r.codecURI)),e.transferStreams=!f&&(o||o===U&&n.transferStreams);const h=!(s||c||u||l),y=f===U||Boolean(r.codecURI);return e.useWebWorkers=!h&&y&&(a||a===U&&n.useWebWorkers),e.workerURI=e.useWebWorkers&&d?d:U,e.createWorker=e.useWebWorkers&&p?p:U,r.useCompressionStream=i||i===U&&n.useCompressionStream,(await async function(){const r=bn.find(t=>!t.I);if(r)return Tn(r),new Qr(r,t,e,E);if(bn.length<m){const r={G:Rn};return Rn++,bn.push(r),new Qr(r,t,e,E)}return new Promise(r=>{Sn.push({resolve:r,stream:t,O:e}),An=n.workerStarvationTimeout,xn()})}()).run();function E(t){if(Fn(),t.N)return t.N=!1,In();if(Sn.length){const[{resolve:e,stream:r,O:n}]=Sn.splice(0,1);e(new Qr(t,r,n,E)),xn()}else t.T?(Tn(t),function(t,e){const{config:r}=e,{terminateWorkerTimeout:n}=r;Number.isFinite(n)&&n>=0&&(t.Y=setTimeout(async()=>{bn=bn.filter(e=>e!=t);try{await t.terminate()}catch{}},n))}(t,e)):bn=bn.filter(e=>e!=t)}}function xn(){!gn&&Sn.length&&Number.isFinite(An)&&An>=0&&(gn=setTimeout(zn,An))}function Fn(){gn&&(clearTimeout(gn),gn=null)}function zn(){if(gn=null,Sn.length){const[{resolve:t,stream:e,O:r}]=Sn.splice(0,1);t(new Qr({},e,Un(r),On)),xn()}}function In(){const t=Sn.splice(0).map(({resolve:t,stream:e,O:r})=>new Promise(n=>{t(new Qr({},e,Un(r),()=>{On(),n()}))}));return Fn(),Promise.all(t)}function Un(t){return Object.assign({},t,{useWebWorkers:!1,workerURI:U,createWorker:U})}function On(){Fn(),xn()}function Tn(t){const{Y:e}=t;e&&(clearTimeout(e),t.Y=null)}const Cn="\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 kn(t,e){return vn(t,e,!0)}function Mn(t){if(!t.some(t=>t>127))return!1;try{return new TextDecoder("utf-8",{fatal:!0}).decode(t),!0}catch{return!1}}function vn(t,e,r){return e&&"cp437"==e.trim().toLowerCase()?function(t){let e="";for(let r=0;r<t.length;r++)e+=Cn[t[r]];return e}(t):new TextDecoder(e,{ignoreBOM:r}).decode(t)}const Nn="HTTP error ",_n="HTTP Range not supported",Ln="HTTP resource changed",Bn="Writer iterator completed too soon",Pn="Writer not initialized",jn="Invalid writer (size must be writable)",Wn="Content-Range",Vn="Range",Zn="GET",Hn="bytes",Gn=16777216,Yn="writable",Kn=Symbol();class qn{constructor(){this.size=0}init(){this.initialized=!0}}class Xn extends qn{get readable(){return this.createReadable()}createReadable({offset:t=0,size:e,chunkSize:r=Tt(Ot())}={}){const n=this;let o=0;return r=Ct(r),new ReadableStream({async pull(a){const i=e===U?r:Math.min(r,e-o),s=await No(n,t+o,i);s.length&&(a.enqueue(s),o+=s.length),(e!==U&&o>=e||!s.length&&i)&&a.close()}})}}class $n extends qn{constructor(){super();const t=this,e=new WritableStream({write(e){if(!t.initialized)throw new Error(Pn);return t.writeUint8Array(Pt(e))}});Object.defineProperty(t,Yn,{get:()=>e})}writeUint8Array(){}}class Jn extends Xn{constructor(t){super();let e=t.length;for(;"="==t.charAt(e-1);)e--;const r=t.indexOf(",")+1;Object.assign(this,{K:t,X:r,size:Math.floor(.75*(e-r))})}readUint8Array(t,e){const{X:r,K:n}=this,o=new Uint8Array(e),a=4*Math.floor(t/3),i=atob(n.substring(a+r,4*Math.ceil((t+e)/3)+r)),s=t-3*Math.floor(a/4);let c=0;for(let t=s;t<s+e&&t<i.length;t++)o[t-s]=i.charCodeAt(t),c++;return c<o.length?o.subarray(0,c):o}}class Qn extends $n{constructor(t){super(),Object.assign(this,{contentType:t,data:"data:"+(t||"")+";base64,",$:""})}writeUint8Array(t){const e=this;let r,n=e.$;const o=e.$.length;for(e.$="",r=0;r<3*Math.floor((o+t.length)/3)-o;r++)n+=String.fromCharCode(t[r]);for(;r<t.length;r++)e.$+=String.fromCharCode(t[r]);n.length>2?e.data+=btoa(n):e.$=n+e.$}getData(){return this.data+btoa(this.$)}}let to,eo;class ro extends Xn{constructor(t){super(),Object.assign(this,{J:t,size:t.size}),eo||(eo=(async()=>{try{const t=new Blob([new Uint8Array(3)]).slice(1,2).stream().getReader();let e=0,r=await t.read();for(;!r.done;)e+=r.value.length,r=await t.read();to=1==e}catch{to=!1}})())}createReadable(t){const{J:e,size:r}=this,{offset:n=0,size:o=r-n}=t||{};if(typeof e.stream==C){if(!n&&o>=r)return Je(e.stream());if(to)return Je(e.slice(n,n+o).stream())}return super.createReadable(t)}async readUint8Array(t,e){const r=this,n=t+e,o=!t&&n>=r.size?r.J:r.J.slice(t,n);let a=await o.arrayBuffer();return a.byteLength>e&&(a=a.slice(t,n)),new Uint8Array(a)}}class no extends qn{constructor(t){super();const e=this,r=new TransformStream;Object.defineProperty(e,Yn,{get:()=>r.writable}),e.contentType=t,e.et=Qe(r.readable,t),e.et.catch(()=>{})}getData(){return this.et}}class oo extends ro{constructor(t){super(new Blob([t],{type:"text/plain"}))}}class ao extends no{constructor(t){super(),Object.assign(this,{encoding:t,nt:!t||"utf-8"==t.toLowerCase()})}async getData(){const{encoding:t,nt:e}=this,r=await super.getData();return r.text&&e?r.text():function(t,e){return vn(t,e,!1)}(new Uint8Array(await r.arrayBuffer()),t)}}class io extends Xn{constructor(t,e){super(),co(this,t,e)}async init(){await uo(this,Ro,bo),super.init()}createReadable(t){const e=this,{useRangeHeader:r,forceRangeRequests:n,size:o,ot:a}=e;if((r||n)&&o!==U){const{offset:r=0,size:n=o-r}=t||{},i=a&&r>=o-a.length;if(n>0&&r<o&&!i)return function(t,e,r){let n,o=e,a=0,i=r;return new ReadableStream({start:()=>s(),async pull(t){n||await s();const{value:e,done:r}=await n.read();if(r)throw new Error(_n);const o=e.length>a?e.subarray(0,a):e;a-=o.length,i-=o.length,o.length&&t.enqueue(o),a||(await async function(){const t=n;n=U,await t.cancel()}(),i||t.close())},cancel:t=>n&&n.cancel(t)});async function s(){const e=Math.min(t.maximumRangeSize,i),r=await Ro(Zn,t,yo(t,o,e));if(206!=r.status)throw new Error(_n);const s=fo(r);if(s!==U&&s!=o)throw new Error(_n);ho(t,r),mo(t,r),o+=e,a=e,n=r.body.getReader()}}(e,r,Math.min(n,o-r))}return super.createReadable(t)}readUint8Array(t,e){return lo(this,t,e,Ro,bo)}}class so extends Xn{constructor(t,e){super(),co(this,t,e)}async init(){await uo(this,Do,So),super.init()}readUint8Array(t,e){return lo(this,t,e,Do,So)}}function co(t,e,r){const{preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s=!0,maximumRangeSize:c=Gn,fetch:u}=r;delete(r=Object.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,Object.assign(t,{url:e,options:r,preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s,maximumRangeSize:c,fetch:u})}async function uo(t,e,r){const{url:n,preventHeadRequest:o,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:s}=t;if(function(t){const{baseURI:e}=Ot(),{protocol:r}=new URL(t,e);return"http:"==r||"https:"==r}(n)&&(a||i)&&(typeof o==T||o)){const n=await e(Zn,t,yo(t,s?-65557:void 0)),o=n.headers.get("Accept-Ranges");if(!(i||o&&o.toLowerCase()==Hn))throw new Error(_n);{let o;s&&206==n.status&&(o=new Uint8Array(await n.arrayBuffer())),mo(t,n);const a=wo(n);a===U?await Ao(t,e,r):t.size=a,o&&o.length&&fo(n)===t.size-o.length&&(t.ot=o)}}else await Ao(t,e,r)}async function lo(t,e,r,n,o){const{useRangeHeader:a,forceRangeRequests:i,ot:s,size:c,options:u}=t;if(a||i){if(e>=c||0===r)return N;{if(e+r>c&&(r=c-e),s&&e>=c-s.length){const t=e-(c-s.length);return s.slice(t,t+r)}const o=await n(Zn,t,yo(t,e,r));if(206!=o.status)throw new Error(_n);const a=fo(o);if(a!==U&&a!=e)throw new Error(_n);ho(t,o),mo(t,o);const i=new Uint8Array(await o.arrayBuffer());if(i.length!=r)throw new Error(_n);return i}}{const{data:n}=t;return n||await o(t,u),t.data.subarray(e,e+r)}}function fo(t){const e=t.headers.get(Wn);if(e){const t=Number(e.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(t))return t}}function wo(t){const e=t.headers.get(Wn);if(e){const t=e.trim().split(/\s*\/\s*/)[1];if(t&&"*"!=t){const e=Number(t);if(!Number.isNaN(e))return e}}}function po({headers:t}){return{it:t.get("Etag")||U,lastModified:t.get("Last-Modified")||U}}function mo(t,e){const{checkResourceChanges:r,st:n}=t;r&&!n&&206==e.status&&(t.st=po(e))}function ho(t,e){const{checkResourceChanges:r,st:n,size:o}=t;if(r){const t=wo(e);if(t!==U&&o!==U&&t!=o)throw new Error(Ln);if(n){const t=po(e);if(Object.entries(n).some(([e,r])=>r!==U&&t[e]!==U&&r!=t[e]))throw new Error(Ln)}}}function yo(t,e=0,r=1){return Object.assign({},Eo(t),{[Vn]:Hn+"="+(e<0?e:e+"-"+(e+r-1))})}function Eo({options:t}){const{headers:e}=t;if(e)return Symbol.iterator in e?Object.fromEntries(e):e}async function bo(t){await go(t,Ro)}async function So(t){await go(t,Do)}async function go(t,e){const r=await e(Zn,t,Eo(t));t.data=new Uint8Array(await r.arrayBuffer()),t.size=t.data.length}async function Ao(t,e,r){if(t.preventHeadRequest)await r(t,t.options);else{const n=await e("HEAD",t,Eo(t)),o=n.headers.get("Content-Length");o&&!n.headers.get("Content-Encoding")?t.size=Number(o):await r(t,t.options)}}async function Ro(t,{fetch:e=fetch,options:r,url:n},o){const a=await e(n,Object.assign({},r,{method:t,headers:o}));if(a.status>=200&&a.status<=299)return a;throw 416==a.status?new Error(_n):new Error(Nn+(a.statusText||a.status))}function Do(t,{url:e},r){return new Promise((n,o)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status>=200&&a.status<=299){const t=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(e=>{const r=e.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,t=>t.toUpperCase()),t.push(r)}),n({status:a.status,arrayBuffer:()=>a.response,headers:new Map(t)})}else o(416==a.status?new Error(_n):new Error(Nn+(a.statusText||a.status)))},!1),a.addEventListener("error",t=>o(t.detail?t.detail.error:new Error("Network error")),!1),a.open(t,e),r)for(const t of Object.entries(r))a.setRequestHeader(t[0],t[1]);a.responseType="arraybuffer",a.send()})}class xo extends Xn{constructor(t,e={}){super(),Object.assign(this,{url:t,reader:e.useXHR&&!e.fetch?new so(t,e):new io(t,e)})}set size(t){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(t){return this.reader.createReadable(t)}readUint8Array(t,e){return this.reader.readUint8Array(t,e)}}class Fo extends xo{constructor(t,e={}){super(t,Object.assign({},e,{useRangeHeader:!0}))}}class zo extends Xn{constructor(t){super(),t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),Object.assign(this,{ct:t,size:t.length})}readUint8Array(t,e){return this.ct.slice(t,t+e)}}class Io extends $n{constructor(t){super(),this.ut=t||262144}init(t=0){Object.assign(this,{offset:0,ct:new Uint8Array(t>0?t:this.ut)}),super.init()}writeUint8Array(t){const e=this,r=e.offset+t.length;if(r>e.ct.length){let t=e.ct.length?2*e.ct.length:e.ut;for(;t<r;)t*=2;const n=e.ct;e.ct=new Uint8Array(t),e.ct.set(n)}e.ct.set(t,e.offset),e.offset+=t.length}getData(){return this.offset===this.ct.length?this.ct:this.ct.slice(0,this.offset)}}class Uo extends Xn{constructor(t){super(),this.lt=t}async init(){const t=this;t.ft=0;const e=t.lt=await Promise.all(t.lt.map(vo));t.wt=e.map(e=>{const r=t.size;return t.size+=e.size,r}),super.init()}ht(t){const{wt:e,size:r}=this,n=e[t];return n===U?r:n}async readUint8Array(t,e){const r=this,{lt:n}=this;let o,a=0,i=t;for(;n[a]&&i>=n[a].size;)i-=n[a].size,a++;const s=n[a];if(s){const n=s.size;if(i+e<=n)o=await No(s,i,e);else{const a=n-i;o=Bt(await No(s,i,a),await r.readUint8Array(t+a,e-a))}}else o=N;return r.ft=Math.max(a,r.ft),o}}class Oo extends qn{constructor(t,e=4294967295){super();const r=this;let n,o,a;Object.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});const i=new WritableStream({async write(e){if(e===Kn)return void(a&&await c());const{availableSize:i}=r;if(a)e.length>=i?(await s(e.subarray(0,i)),await c(),e.length>i&&await this.write(e.subarray(i))):await s(e);else{const{value:i,done:s}=await t.next();if(s&&!i)throw new Error(Bn);n=i,n.size=0,n.maxSize&&(r.maxSize=n.maxSize),r.availableSize=r.maxSize,await Mo(n),o=i.writable,a=o.getWriter(),await this.write(e)}},async close(){a&&(await a.ready,await u())},async abort(t){a&&await a.abort(t)}});async function s(t){const e=t.length;e&&(await a.ready,await a.write(t),n.size+=e,r.availableSize-=e)}async function c(){await u(),r.diskOffset+=n.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function u(){await a.close()}Object.defineProperty(r,Yn,{get:()=>i})}async closeDisk(){const t=this.writable.getWriter();try{await t.ready,await t.write(Kn)}finally{t.releaseLock()}}}class To{constructor(t){return Array.isArray(t)&&(t=new Uo(t)),(t instanceof ReadableStream||typeof t.getReader==C)&&(t={readable:Je(t)}),t}}class Co{constructor(t){t.writable===U&&typeof t.next==C&&(t=new Oo(t)),(t instanceof WritableStream||typeof t.getWriter==C)&&(t={writable:tr(t)});try{t.size=t.size===U?0:t.size}catch{throw new Error(jn)}return t}}function ko(t){return Boolean(t&&t.getData)}async function Mo(t,e){if(!t.init||t.initialized)return Promise.resolve();await t.init(e)}async function vo(t){return t=new To(t),await Mo(t),t.size!==U&&t.readUint8Array||(t=new ro(await Qe(t.readable)),await Mo(t)),t}function No(t,e,r){return t.readUint8Array(e,r)}function _o(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?Xn.prototype.createReadable.call(t,e):t.readable}function Lo(t,e,r){if(!t.some(t=>t.reason==e)){const n={reason:e};r!==U&&(n.filename=r),t.push(n)}}const Bo="filename",Po="rawFilename",jo="comment",Wo="rawComment",Vo="uncompressedSize",Zo="compressedSize",Ho="offset",Go="diskNumberStart",Yo="lastModDate",Ko="rawLastModDate",qo="lastAccessDate",Xo="rawLastAccessDate",$o="creationDate",Jo="rawCreationDate",Qo="internalFileAttributes",ta="externalFileAttributes",ea="msdosAttributesRaw",ra="msdosAttributes",na="msDosCompatible",oa="zip64",aa="encrypted",ia="version",sa="versionMadeBy",ca="zipCrypto",ua="directory",la="executable",fa="compressionMethod",wa="signature",da="extraField",pa="unixMode",ma="setuid",ha="setgid",ya="sticky",Ea=[Bo,Po,Vo,Zo,Yo,Ko,jo,Wo,qo,Xo,$o,Jo,Ho,Go,Qo,ta,ea,ra,na,oa,aa,ia,sa,ca,ua,la,"symlink",fa,wa,"crc32",da,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",pa,"unixExternalUpper",ma,ha,ya,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class ba{constructor(t){Ea.forEach(e=>this[e]=t[e])}}const Sa=new Set([1,m,10,h,28789,25461,y,E,b,22613,13]);function ga(t,e,r){return t?e?12:16+4*r:0}const Aa="File format is not recognized",Ra="End of central directory not found",Da="End of Zip64 central directory locator not found",xa="Central directory header not found",Fa="Local file header not found",za="Zip64 extra field not found",Ia="File contains encrypted entry",Ua="Encryption method not supported",Oa="Split zip file",Ta="Overlapping entry found",Ca="Entry data out of bounds",ka="Ambiguous archive",Ma="Encrypted central directory is not supported",va="Unsafe filename",Na="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",_a="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",La="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",Ba="64-bit value exceeds Number.MAX_SAFE_INTEGER",Pa="unsorted central directory",ja="unknown version needed to extract",Wa="compressed patched data",Va="malformed extra field",Za="unknown zip64 extensible data",Ha="wrapped entries count",Ga="appended data",Ya="prepended data",Ka="prepended central directory",qa="trailing central directory data",Xa="duplicate filename",$a="mismatched zip64 end of central directory record",Ja="multiple end of central directory records",Qa="mismatched local file header (filename)",ti="mismatched local file header (general purpose bit flag)",ei="mismatched local file header (compression method)",ri="mismatched local file header (crc32 or sizes)",ni=/^[a-zA-Z]:/,oi=/(^|[\\/])\.\.([\\/]|$)/,ai="utf-8",ii="cp437",si=[[Vo,t],[Zo,t],[Ho,t],[Go,e]],ci={[e]:{yt:Gi,bytes:4},[t]:{yt:Yi,bytes:8}},ui=BigInt(Number.MAX_SAFE_INTEGER);class li{constructor(t,e={}){Object.assign(this,{reader:new To(t),options:e,Et:{bt:new Set,St:[],gt:[]}})}async*getEntriesGenerator(n={}){const a=this;let{reader:i}=a;if(await Mo(i),i.size!==U&&i.readUint8Array||(i=new ro(await Qe(i.readable)),await Mo(i)),i.size<w)throw new Error(Aa);const c=a.warnings=[],m=Ui(n,a.options),h=m==et,y=m!=nt,E=Ci(Pi(a,n,$),m),b=function(t,e){if(t===U)return e;if(!Ii(t))throw new Error(_a);return t}(Pi(a,n,"filenameValidation"),m),S=Pi(a,n,"normalizeFilename"),{At:F,Rt:z}=await ki(i,y,E);if(!F)throw await async function(t){return await zi(t)==o}(i)?new Error(Oa):new Error(Ra);y&&z>1&&Bi(Ja);const I=jt(F);let O=Gi(I,12),T=Gi(I,16);const C=F.offset,k=Hi(I,20),M=C+w+k,v=i.size-M;v>E&&Bi(Ga),v>0&&Lo(c,Ga);let _=Hi(I,4);const L=i.ft||0;let B,P,j,W,V,Z=Hi(I,6),H=Hi(I,10),G=0,Y=p;const K=T==t||O==t||H==e||Z==e;if(T!=t&&Z!=e&&(T+=Fi(i,Z)),K){const r=F.offset>=d?await No(i,F.offset-d,d):N,n=jt(r);if(r.length==d&&Gi(n,0)==l){T=Fi(i,Gi(n,4))+Yi(n,8);let r=await No(i,T,p),o=jt(r);const a=F.offset-d-p;if((r.length<p||Gi(o,0)!=u)&&T!=a&&a>=0){const t=T;T=a,T>t&&(G=T-t),r=await No(i,T,p),o=jt(r)}if(r.length<p||Gi(o,0)!=u)throw new Error(Da);if(j=!0,W=Yi(o,4)>44,W){const t=Math.min(Yi(o,4)-44,i.size-T-p);t>0&&(Y+=t,V=function(t){const e={rawExtensibleData:t};if(t.length>=28){const r=jt(t),n=Hi(r,26);Object.assign(e,{compressionMethod:Hi(r,0),compressedSize:Yi(r,2),uncompressedSize:Yi(r,10),encryptionAlgorithm:Hi(r,18),bitLength:Hi(r,20),flags:Hi(r,22),hashAlgorithm:Hi(r,24),hashData:t.subarray(28,28+n)})}return e}(await No(i,T+p,t)))}_==e?_=Gi(o,16):_!=Gi(o,16)&&Li(h,c,$a),Z==e?Z=Gi(o,20):Z!=Gi(o,20)&&Li(h,c,$a),H==e?H=Yi(o,32):H!=Yi(o,32)&&Li(h,c,$a),O==t?O=Yi(o,40):O!=Yi(o,40)&&Li(h,c,$a),T=Fi(i,Z)+Yi(o,48)+G}}let q=O;const X=F.offset-(j?Y+d:0);if(T>=i.size&&(G=i.size-T-O-w,T=i.size-O-w),L!=_)throw new Error(Oa);if(T<0)throw new Error(Aa);let J=0,rt=await No(i,T,O),ot=jt(rt);if(O){if(rt.length<4)throw new Error(Aa);const t=X-O;if(T!=t&&Z==_){const e=Gi(ot,J)==s||Boolean(V&&V.compressedSize)||pi(ot);let r=!e;if(!r&&t>=0&&t+4<=i.size&&(r=Gi(jt(await No(i,t,4)),0)==s),r){const r=T;T=t,T>r&&(G+=T-r,B=e),rt=await No(i,T,O),ot=jt(rt)}}}const at=X-T;if(O!=at&&at>=0&&Z==_&&(O=at,rt=await No(i,T,O),ot=jt(rt)),T<0||T>=i.size)throw new Error(Aa);a.directoryOffset=T,a.directoryLength=q;const it=ji(a,n,"decryptCentralDirectory");let st,ct;if(it&&H&&rt.length>=4&&Gi(ot,0)!=s&&(W||pi(ot))){const t=function(t,e,r){const n=t&&t.compressedSize?t.compressedSize:e;return n>0&&n<=r?n:r}(V,q,rt.length);ct=rt.subarray(t),rt=await it(rt.subarray(0,t),V),ot=jt(rt),q=rt.length,st=!0}V&&!st&&(rt.length<4||Gi(ot,0)==s)&&Lo(c,Za),P=T;const ut=Pi(a,n,"filenameEncoding"),lt=Pi(a,n,"commentEncoding"),ft=new Set;let wt,dt=-1;const pt=!h&&!j;!H&&pt&&(H=mi(ot,rt,J),H&&Lo(c,Ha));for(let t=0;t<H;t++){const o=new di(i,a.options);if(J+f>rt.length||Gi(ot,J)!=s){if(0==t&&!st&&(W||pi(ot)))throw new Error(Ma);throw new Error(xa)}yi(o,ot,J+6);const u=Boolean(o.bitFlag.languageEncodingFlag),l=J+f,w=l+o.filenameLength+o.extraFieldLength,d=Hi(ot,J+4),p=!(d>>8),m=d>>8==3,h=Hi(ot,J+32),y=w+h,E=new Uint8Array(rt.subarray(l,y)),F=E.subarray(0,o.filenameLength),z=E.subarray(o.filenameLength+o.extraFieldLength),I=u||!ut&&Mn(F),O=u||!lt&&Mn(z),T=Gi(ot,J+38),C=T&r,k={readOnly:Boolean(1&C),hidden:Boolean(2&C),system:Boolean(4&C),directory:Boolean(16&C),archive:Boolean(32&C)},M=Gi(ot,J+42),v=ji(a,n,"decodeText")||kn,N=I?ai:ut||ii,_=O?ai:lt||ii;let L=v(F,N,Q);if(L===U&&(L=kn(F,N)),S){const t=S(L);t!==U&&(L=t)}if(Ti(L,b)){const t=new Error(va);throw t.filename=L,t}let B=v(z,_,tt);B===U&&(B=kn(z,_)),Object.assign(o,{index:t,Dt:st,versionMadeBy:d,msDosCompatible:p,zip64:!1,compressedSize:0,uncompressedSize:0,xt:h,offset:M,diskNumberStart:Hi(ot,J+34),internalFileAttributes:Hi(ot,J+36),externalFileAttributes:T,msdosAttributesRaw:C,msdosAttributes:k,rawFilename:F,filenameUTF8:I,commentUTF8:O,rawExtraField:E.subarray(o.filenameLength,o.filenameLength+o.extraFieldLength),rawComment:z,filename:L,comment:B}),Ei(o,o,ot,J+6)&&Lo(c,Va,L),o.offset+=G;const j=Fi(i,o.diskNumberStart)+o.offset;P=Math.min(j,P),j<dt&&Lo(c,Pa,L),dt=j,(o.version&r)>63&&Lo(c,ja,L),32&~o.rawBitFlag||Lo(c,Wa,L),ft.has(o.filename)&&(wt=!0),ft.add(o.filename);const V=o.externalFileAttributes>>16&e;o.unixMode===U&&16877&V&&(o.unixMode=V);const Z=Boolean(o.unixMode&R),Y=Boolean(o.unixMode&D),K=Boolean(512&o.unixMode),q=40960==((o.unixMode===U?V:o.unixMode)&g),X=!q&&(o.unixMode!==U?!!(73&o.unixMode):m&&!!(73&V)),$=o.unixMode!==U&&(o.unixMode&g)==A,et=(V&g)==A;Object.assign(o,{setuid:Z,setgid:Y,sticky:K,symlink:q,unixExternalUpper:V,executable:X,directory:$||et||p&&k.directory||o.filename.endsWith(x),zipCrypto:o.encrypted&&!o.extraFieldAES});const nt=new ba(o);if(nt.getData=(t,e)=>o.getData(t,nt,a.Et,e),nt.arrayBuffer=async t=>{const e=new TransformStream,r=Qe(e.readable).then(t=>t.arrayBuffer());return r.catch(()=>{}),await o.getData(e,nt,a.Et,Object.assign({},t,{preventClose:!1})),r},J=y,t==H-1&&pt){const t=mi(ot,rt,J);t&&(H+=t,Lo(c,Ha))}const{onprogress:at}=n;if(at)try{await at(t+1,H,new ba(o))}catch{}yield nt}let mt=J,ht=hi(rt.subarray(J))||(st?hi(ct):U);if(!ht&&!st){const t=T+J,e=Math.min(X-t,65541);e>=6&&(ht=hi(await No(i,t,e)))}ht&&(a.digitalSignature=ht,mt=J+6+ht.length),(J!=q&&mt!=q||!st&&J!=O&&mt!=O)&&Li(h,c,qa),wt&&Li(h,c,Xa);const yt=Pi(a,n,"extractPrependedData"),Et=Pi(a,n,"extractAppendedData"),bt=(h||yt)&&H&&4==P&&await async function(t){const e=await zi(t);return e==o||808471376==e}(i)?4:0;return h&&(G||H&&P>bt)&&Bi(Ya),(G||H&&P>4)&&Lo(c,Ya),B&&Lo(c,Ka),yt&&(a.prependedData=P>bt?await No(i,bt,P-bt):N),a.comment=k?await No(i,C+w,k):N,Et&&(a.appendedData=M<i.size?await No(i,M,i.size-M):N),!0}async getEntries(t={}){const e=[];for await(const r of this.getEntriesGenerator(t))e.push(r);return e}async close(){const{reader:t}=this;t.readUint8Array||!t.readable||t.readable.locked||await t.readable.cancel()}[_](){return this.close()}}class fi{constructor(t={}){let e;const{readable:r,writable:n}=new TransformStream({start(t){e=t}}),o=new li(r,t),a=o.getEntriesGenerator(),i=new Set;this.readable=new ReadableStream({async pull(t){const{done:e,value:r}=await a.next();if(e)return t.close();const n=function(t,e){const{readable:r,writable:n}=new TransformStream;let o;const a={cancel:async t=>{e.delete(a),await(o?o.cancel(t):r.cancel(t))}};return a.readable=new ReadableStream({async pull(i){o||(o=r.getReader(),e.add(a),async function(){try{await t.getData(n,{preventClose:!1})}catch(t){try{await n.abort(t)}catch{}}finally{e.delete(a)}}());const{done:s,value:c}=await o.read();s?i.close():i.enqueue(c)},cancel:t=>a.cancel(t)},{highWaterMark:0}),a}(r,i),o={...r,readable:n.readable};delete o.getData,Object.defineProperties(o,{localDirectory:{get:()=>r.localDirectory,enumerable:!0},warnings:{get:()=>r.warnings,enumerable:!0}}),t.enqueue(o)},async cancel(t){const r=Array.from(i);i.clear(),e.error(t),await Promise.allSettled(r.map(e=>e.cancel(t))),await Promise.allSettled([a.return(),o.close()])}}),this.writable=n}}async function wi(t,e={}){if(t=new To(t),await Mo(t),t.size!==U&&t.readUint8Array||(t=new ro(await Qe(t.readable)),await Mo(t)),t.size<w)return!1;const r=Ui(e,{}),n=r!=nt,o=Ci(e[$],r),{At:a,Rt:i}=await ki(t,n,o);if(!a||r==et&&i>1)return!1;const s=Hi(jt(a),20),c=a.offset+w+s;return t.size-c<=o}class di{constructor(t,e){Object.assign(this,{reader:t,options:e})}async getData(t,e,o,a={}){const i=this,s=Ot(),{reader:c,index:u,offset:l,diskNumberStart:f,extraFieldAES:w,extraFieldZip64:d,compressionMethod:p,bitFlag:m,rawBitFlag:h,crc32:y,rawLastModDate:E,uncompressedSize:b,compressedSize:S}=i,{dataDescriptor:g}=m,A=e.localDirectory={},R=e.warnings=[],D=Fi(c,f)+l,x=await No(c,D,F),z=jt(x);let I=Pi(i,a,L),O=Pi(i,a,B);const T=pt(Pi(i,a,P)),C=Boolean(T),k=!0===T;if(dt(I,O),I=I&&I.length?I:U,O=O&&O.length?O:U,w&&99!=w.originalCompressionMethod)throw new Error(or);if(x.length<F||Gi(z,0)!=n)throw new Error(Fa);yi(A,z,4);const{extraFieldLength:M,filenameLength:v}=A,_=A.dataOffset=D+F+v+M,G=Pi(i,a,"checkLocalDirectory"),Y=Ui(a,i.options),K=function(t,e){return t===U?e!=nt:Boolean(t)}(G,Y),q=Pi(i,a,"checkLocalFilename"),X=function(t,e){return t===U?e==et:Boolean(t)}(q===U?G:q,Y);let $=N;if(X&&(v||M)){const t=await No(c,D+F,v+M);$=t.subarray(0,v),A.rawExtraField=t.subarray(v)}else A.rawExtraField=M?await No(c,D+F+v,M):N;X&&(A.rawFilename=$),Ei(i,A,z,4,!0)&&Lo(R,Va),function(t,e,r,n,o){const{rawFilename:a}=t,i=!o,s=t.Dt&&!(8192&~e.rawBitFlag);!n||s||r.length==a.length&&!r.some((t,e)=>t!=a[e])||Li(i,o,Qa),(2121&e.rawBitFlag)!=(2121&t.rawBitFlag)&&Li(i,o,ti),e.compressionMethod!=t.compressionMethod&&Li(i,o,ei),e.bitFlag.dataDescriptor||s||!(e.crc32||e.compressedSize||e.uncompressedSize)||e.crc32==t.crc32&&e.compressedSize==t.compressedSize&&e.uncompressedSize==t.uncompressedSize||Li(i,o,ri)}(i,A,$,X,K?U:R);const{lastAccessDate:J,creationDate:Q,uid:tt,gid:rt}=A;J&&(e.lastAccessDate=J),Q&&(e.creationDate=Q),tt!==U&&e.uid===U&&(e.uid=tt),rt!==U&&e.gid===U&&(e.gid=rt);const ot=Pi(i,a,"checkPasswordOnly"),at=i.encrypted&&(!k||ot),it=at&&!w;if(k||(e.zipCrypto=it),at&&!(64&~i.rawBitFlag))throw new Error(Ua);const st=C?U:lr(p);if(0!=p&&8!=p&&9!=p&&!st&&!C)throw new Error(or);if(at){if(!it&&(w.strength<1||w.strength>3))throw new Error(Ua);if(!I&&!O)throw new Error(Ia)}if(_+S>c.size)throw new Error(Ca);const ct=S,ut=ft(Pi(i,a,j));wt(ut);let lt=Pi(i,a,"checkOverlappingEntry");const mt=Pi(i,a,"checkOverlappingEntryOnly");mt&&(lt=!0);const{onstart:ht,onprogress:yt,onend:Et}=a,bt=0!=p&&!C,St=C?S-ga(at,it,w&&w.strength):b,gt=9==p;let At=Pi(i,a,V);gt&&(At=!1);const Rt=Pi(i,a,"checkCrc32"),Dt=(Rt===U?Pi(i,a,"checkSignature"):Rt)&&!C&&(!at||it||w&&1==w.vendorVersion),xt={options:{codecType:Vr,password:I,rawPassword:O,zipCrypto:it,encryptionStrength:w&&w.strength,checkCrc32:Dt,checkAuthenticationCode:Pi(i,a,"checkAuthenticationCode"),passwordVerification:it&&(g?E>>>8&r:y>>>24&r),outputSize:St,crc32:y,compressed:bt,encrypted:at,useWebWorkers:Pi(i,a,W),useCompressionStream:At,transferStreams:Pi(i,a,Z),deflate64:gt,format:st?st.format:U,codecURI:st?st.codecURI:U,compressionMethod:p,rawBitFlag:h,checkPasswordOnly:ot},config:s,F:{signal:ut,size:ct,onstart:ht,onprogress:yt,onend:Et}};let Ft,zt,It;lt&&await async function({reader:t,Ft:e,index:r,offset:n,crc32:o,compressedSize:a,uncompressedSize:i,dataOffset:s,dataDescriptor:c,extraFieldZip64:u,Et:l}){let f=0;if(c){const r=Boolean(u),n=jt(await No(t,s+a,24)),c=[[r,!0],[r,!1],[!r,!0],[!r,!1]].map(([t,e])=>Di(n,t,e)).filter(t=>t&&t.compressedSize==a&&t.uncompressedSize==i),l=c.find(t=>t.crc32==o)||c[0]||Di(n,r,!0)||Di(n,r,!1);l?(e.localDirectory.dataDescriptor=l,f=xi(l.zip64,l.signature)):f=xi(r,!1)}const w={start:n,end:s+a+f,Ft:e},{bt:d,St:p,gt:m}=l;if(!d.has(r)){const t=function(t,e){let r=0,n=t.length;for(;r<n;){const o=r+n>>>1;t[o].start<e.start?r=o+1:n=o}const o=t[r-1],a=t[r];return o&&Ri(e,o)?o:a&&Ri(e,a)?a:void 0}(p,w)||m.find(t=>Ri(w,t));if(t){const e=new Error(Ta);throw e.overlappingEntry=t.Ft,e}d.add(r),m.push(w),m.length*m.length>p.length&&(m.sort((t,e)=>t.start-e.start),l.St=function(t,e){const r=[];let n=0,o=0;for(;n<t.length||o<e.length;)o==e.length||n<t.length&&t[n].start<e[o].start?r.push(t[n++]):r.push(e[o++]);return r}(p,m),m.length=0)}}({reader:c,Ft:e,index:u,offset:D,crc32:y,compressedSize:S,uncompressedSize:b,dataOffset:_,dataDescriptor:g||A.bitFlag.dataDescriptor,extraFieldZip64:d||A.extraFieldZip64,Et:o});try{if(!mt){ot&&(t=new WritableStream),t=new Co(t),await Mo(t,function(t,e,r){return Math.min(t,r?1032*e:e)}(St,S,bt)),({writable:Ft}=t);const e=Je(c.createReadable({offset:_,size:ct})),{outputSize:r}=await Dn({readable:e,writable:Ft},xt);if(wt(ut),r!=St)throw Object.assign(new Error(pr),{outputSize:r});t.size+=r}}catch(e){const{outputSize:r}=xt;if(r!==U?t.size+=r:Wt(e)&&e.outputSize!==U&&(t.size+=e.outputSize),!ot||!Wt(e)||e.message!=Se)throw zt=e,It=!0,e}finally{if((ko(t)||!Pi(i,a,H))&&Ft&&!Ft.locked){const t=Ft.getWriter();if(It)try{await t.abort(zt)}catch{}else await t.close()}}return ot||mt?U:t.getData?t.getData():Ft}}function pi(t){const e=Math.min(t.byteLength,1024)-3;for(let r=0;r<e;r++)if(134630224==Gi(t,r))return!0;return!1}function mi(t,e,r){let n=0;for(;r+f<=e.length&&Gi(t,r)==s;)r+=f+Hi(t,r+28)+Hi(t,r+30)+Hi(t,r+32),n++;return n%65536?0:n}function hi(t){if(t.length>=6){const e=jt(t);if(Gi(e,0)==i){const r=Hi(e,4);if(6+r<=t.length)return new Uint8Array(t.subarray(6,6+r))}}}function yi(t,e,r){const n=t.rawBitFlag=Hi(e,r+2),o=!(1&~n),a=Gi(e,r+6);Object.assign(t,{encrypted:o,version:Hi(e,r),bitFlag:{level:(6&n)>>1,dataDescriptor:!(8&~n),languageEncodingFlag:(n&S)==S},rawLastModDate:a,lastModDate:Wi(a),filenameLength:Hi(e,r+22),extraFieldLength:Hi(e,r+24)})}function Ei(t,e,r,n,o){const{rawExtraField:a}=e,i=e.extraField=new Map,s=jt(a);let c=0,u=!1;try{for(;c<a.length;){const t=Hi(s,c),e=Hi(s,c+2);i.set(t,{type:t,data:a.slice(c+4,c+4+e)}),c+=4+e}}catch{u=!0}c>a.length&&(u=!0);const l=Hi(r,n+4);Object.assign(e,{signature:Gi(r,n+10),crc32:Gi(r,n+10),compressedSize:Gi(r,n+14),uncompressedSize:Gi(r,n+18)});const f=i.get(1);if(f)(function(t,e,r){e.zip64=!0;const n=jt(t.data),o=si.filter(([t,r])=>e[t]==r),a=o.reduce((t,[,e])=>t+ci[e].bytes,0);if(t.data.length<a){if(r)return!1;throw new Error(za)}const i=[];try{for(let t=0,e=0;t<o.length;t++){const[,r]=o[t],a=ci[r];i.push(a.yt(n,e)),e+=a.bytes}}catch(t){if(r)return!1;throw t}return o.forEach(([r],n)=>{e[r]=t[r]=i[n]}),!0})(f,e,o)||(u=!0),e.extraFieldZip64=f;else if(si.some(([t,r])=>e[t]==r)){if(!o)throw new Error(za);u=!0}const w=i.get(28789);w&&(bi(w,Bo,Po,e,t),e.extraFieldUnicodePath=w);const d=i.get(25461);d&&(bi(d,jo,Wo,e,t),e.extraFieldUnicodeComment=d);const p=i.get(m);p&&(99==l||e.encrypted)&&p.data.length>=7?(function(t,e,r){const n=jt(t.data),o=Zi(n,4);Object.assign(t,{vendorVersion:Zi(n,0),vendorId:Zi(n,2),strength:o,originalCompressionMethod:r,compressionMethod:Hi(n,5)}),e.compressionMethod=t.compressionMethod,1!=t.vendorVersion&&(e.crc32=U)}(p,e,l),e.extraFieldAES=p):(p&&(u=!0),e.compressionMethod=l);const S=i.get(13);S&&(Si(S,e),e.extraFieldPkwareUnix=S);const g=i.get(22613);g&&(Si(g,e),e.extraFieldUnixType1=g);const A=i.get(10);A&&(function(t,e){const r=jt(t.data);let n,o=4;try{for(;o<t.data.length&&!n;){const e=Hi(r,o),a=Hi(r,o+2);1==e&&(n=t.data.slice(o+4,o+4+a)),o+=4+a}}catch{}if(n&&24==n.length){const r=jt(n),o=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),i=r.getBigUint64(16,!0);Object.assign(t,{rawLastModDate:o,rawLastAccessDate:a,rawCreationDate:i});const s={lastModDate:Vi(o),lastAccessDate:Vi(a),creationDate:Vi(i)};Object.assign(t,s),Object.assign(e,s,{rawLastAccessDate:a,rawCreationDate:i})}}(A,e),e.extraFieldNTFS=A);const R=i.get(b);let D;if(R&&(D=gi(R,e,!1),e.extraFieldUnix=R),!D){const t=i.get(E);t&&(gi(t,e,!0),e.extraFieldInfoZip=t)}const x=i.get(h);x&&(function(t,e,r){if(!t.data.length)return;const n=jt(t.data),o=Zi(n,0),a=[],i=[];r?(1&~o||(a.push(Yo),i.push(Ko)),2&~o||(a.push(qo),i.push(Xo)),4&~o||(a.push($o),i.push(Jo))):t.data.length>=5&&(a.push(Yo),i.push(Ko));let s=1;a.forEach((r,o)=>{if(t.data.length>=s+4){const a=Gi(n,s);e[r]=t[r]=new Date(1e3*(0|a));const c=i[o];t[c]=a}s+=4})}(x,e,o),e.extraFieldExtendedTimestamp=x);const F=i.get(y);return F&&(e.extraFieldUSDZ=F),u}function bi(t,e,r,n,o){if(t.data.length<5)return void(t.valid=!1);const a=jt(t.data),i=new Jt;i.append(o[r]);const s=jt(new Uint8Array(4));s.setUint32(0,i.get(),!0);const c=Gi(a,1),u=Zi(a,0);Object.assign(t,{version:u,[e]:kn(t.data.subarray(5)),valid:1==u&&!o.bitFlag.languageEncodingFlag&&c==Gi(s,0)}),t.valid&&(n[e]=t[e],n[e+"UTF8"]=!0)}function Si(t,e){if(t.data.length<8)return;const r=jt(t.data),n={lastAccessDate:new Date(1e3*(0|Gi(r,0))),lastModDate:new Date(1e3*(0|Gi(r,4)))};t.data.length>=12&&(n.uid=Hi(r,8),n.gid=Hi(r,10)),Object.assign(t,n),Object.assign(e,n)}function gi(t,e,r){try{const n=jt(t.data);let o,a;if(r){let e=0;const r=Zi(n,e++),i=Zi(n,e++);o=Ai(t.data.subarray(e,e+i)),e+=i;const s=Zi(n,e++);a=Ai(t.data.subarray(e,e+s)),Object.assign(t,{version:r,uid:o,gid:a})}else t.data.length>=4&&(o=Hi(n,0),a=Hi(n,2),Object.assign(t,{uid:o,gid:a}));return o!==U&&(e.uid=o),a!==U&&(e.gid=a),o!==U||a!==U}catch{}}function Ai(t){const e=new Uint8Array(4);return e.set(t,0),new DataView(e.buffer,e.byteOffset,4).getUint32(0,!0)}function Ri(t,e){return t.start<e.end&&e.start<t.end}function Di(t,e,r){const n=r?4:0;if(t.byteLength<xi(e,r)||r&&Gi(t,0)!=a)return U;const o=Gi(t,n);let i,s;try{e?(i=Yi(t,n+4),s=Yi(t,n+12)):(i=Gi(t,n+4),s=Gi(t,n+8))}catch{return U}return{signature:r,zip64:e,crc32:o,compressedSize:i,uncompressedSize:s}}function xi(t,e){return(t?20:12)+(e?4:0)}function Fi(t,e){return t.ht?t.ht(e):0}async function zi(t){return Gi(jt(await No(t,0,4)))}function Ii(t){return t===et||t===rt||t===nt}function Ui(t,e){return Oi(t,Oi(e,rt))}function Oi(t,e){const r=t.strictness;if(r!==U){if(!Ii(r))throw new Error(Na);return r}const n=t.checkAmbiguity;return n===U?e:n?et:e==nt?nt:rt}function Ti(t,e){if(e==nt)return!1;const r=t.split("/");return r.length>1&&""===r[r.length-1]&&r.pop(),!!(oi.test(t)||t.startsWith("/")||t.startsWith("\\")||ni.test(t))||e==et&&(r.includes(".")||r.includes("")||t.includes("\0"))}function Ci(t,r){if(t!==U){const e=yt(t);if("number"!=typeof e||Number.isNaN(e)||e<0)throw new Error(La);return e}return r==et?0:r==nt?1/0:e}async function ki(t,e,r){const{size:n}=t,o=Math.min(n,65557),a={zt:64};let i,s,c=0;for await(const[r,u,l,f,d]of Mi(t,o)){const o=Hi(r,f+20);if(d+w+o==n){const o=await Ni(t,r,u,f,d,n,a);if(2==o){if(i||(i=vi(l,f,d)),c++,!e||c>1)break}else 1!=o||s||(s=vi(l,f,d))}}return i||(i=s),i||(i=await async function(t,e,r){const{size:n}=t,o=Math.min(n,e==1/0?n:65557+e);let a,i;for await(const[e,s,c,u,l]of Mi(t,o)){const o=vi(c,u,l);a||(a=o);const f=await Ni(t,e,s,u,l,n,r);if(2==f)return o;1!=f||i||(i=o)}return i||a}(t,r,a)),{At:i,Rt:c}}async function*Mi(t,e){const r=t.size-e,n=await No(t,r,e),o=jt(n);for(let t=n.length-w;t>=0;t--)Gi(o,t)==c&&(yield[o,r,n,t,r+t])}function vi(t,e,r){return{offset:r,buffer:new Uint8Array(t.subarray(e,e+w)).buffer}}async function Ni(r,n,o,a,i,c,u){const f=Hi(n,a+10),w=Gi(n,a+12),p=Gi(n,a+16);if(f==e||w==t||p==t)return await _i(r,n,o,i-d,c,u)==l?2:0;if(!f&&!w)return 1;const m=Hi(n,a+6);for(const t of[i-w,Fi(r,m)+p])if(await _i(r,n,o,t,c,u)==s)return 2;return 0}async function _i(t,e,r,n,o,a){return n<0||n+4>o?U:n>=r?Gi(e,n-r):a.zt>0?(a.zt--,Gi(jt(await No(t,n,4)),0)):U}function Li(t,e,r){t?Bi(r):Lo(e,r)}function Bi(t){const e=new Error(ka);throw e.reason=t,e}function Pi(t,e,r){return e[r]===U?t.options[r]:e[r]}function ji(t,e,r){return lt(Pi(t,e,r))}function Wi(t){const r=(4294901760&t)>>16,n=t&e,o=new Date(1980+((65024&r)>>9),((480&r)>>5)-1,31&r,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return o<I?I:o}function Vi(t){return new Date(Number(t/BigInt(1e4)-BigInt(116444736e5)))}function Zi(t,e){return t.getUint8(e)}function Hi(t,e){return t.getUint16(e,!0)}function Gi(t,e){return t.getUint32(e,!0)}function Yi(t,e){const r=t.getBigUint64(e,!0);if(r>ui)throw new Error(Ba);return Number(r)}var Ki=Object.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:ka,ERR_BAD_FORMAT:Aa,ERR_CENTRAL_DIRECTORY_NOT_FOUND:xa,ERR_CODEC_OUT_OF_MEMORY:hr,ERR_ENCRYPTED:Ia,ERR_ENCRYPTED_CENTRAL_DIRECTORY:Ma,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Ca,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Da,ERR_EOCDR_NOT_FOUND:Ra,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:za,ERR_INVALID_AUTHENTICATION_CODE:be,ERR_INVALID_COMPRESSED_DATA:mr,ERR_INVALID_CRC32:yr,ERR_INVALID_FILENAME_VALIDATION:_a,ERR_INVALID_MAX_APPENDED_DATA_SIZE:La,ERR_INVALID_PASSWORD:Ee,ERR_INVALID_STRICTNESS:Na,ERR_INVALID_UNCOMPRESSED_SIZE:pr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:Fa,ERR_OVERLAPPING_ENTRY:Ta,ERR_SPLIT_ZIP_FILE:Oa,ERR_UNSAFE_FILENAME:va,ERR_UNSUPPORTED_COMPRESSION:or,ERR_UNSUPPORTED_ENCRYPTION:Ua,ERR_UNSUPPORTED_UINT64:Ba,ERR_WORKER_STARTUP_TIMEOUT:Gr,WARNING_APPENDED_DATA:Ga,WARNING_COMPRESSED_PATCHED_DATA:Wa,WARNING_DUPLICATE_FILENAME:Xa,WARNING_MALFORMED_EXTRA_FIELD:Va,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:ti,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:ei,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:ri,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:Qa,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:$a,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:Ja,WARNING_PREPENDED_CENTRAL_DIRECTORY:Ka,WARNING_PREPENDED_DATA:Ya,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:qa,WARNING_UNKNOWN_VERSION:ja,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Za,WARNING_UNSORTED_CENTRAL_DIRECTORY:Pa,WARNING_WRAPPED_ENTRIES_COUNT:Ha,ZipReader:li,ZipReaderStream:fi,isZipFile:wi});const qi="File already exists",Xi="Zip file comment exceeds 64KB",$i="Invalid zip file comment (must be a Uint8Array)",Ji="File entry comment exceeds 64KB",Qi="Invalid file entry comment (must be a string)",ts="Invalid date (must be a valid Date instance)",es="File entry name exceeds 64KB",rs="Version exceeds 65535",ns="The strength must equal 1, 2, or 3",os="Encryption is not supported in USDZ files",as="Split zip files are not supported in USDZ files",is="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",ss="Invalid extra field (must be a Map)",cs="Invalid extra field type (must be integer 0..65535)",us="Invalid extra field data (must be a Uint8Array)",ls="Extra field data exceeds 64KB",fs=-2147483648,ws=2147483647,ds=BigInt(0),ps=BigInt("0x7fffffffffffffff"),ms="Zip64 is not supported (set the 'zip64' option to 'true')",hs="Undefined uncompressed size",ys="Undefined compression method",Es="Undefined CRC32",bs="Undetermined size",Ss="Undefined reader",gs="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",As="Zip file not empty",Rs="Invalid uid (must be integer 0..2^32-1)",Ds="Invalid gid (must be integer 0..2^32-1)",xs="Invalid UNIX mode (must be integer 0..65535)",Fs="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",zs="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",Is="Invalid msdosAttributesRaw (must be integer 0..255)",Us="Invalid msdosAttributes (must be an object with boolean flags)",Os="Invalid level (must be integer 0..9)",Ts="Signature data exceeds 64KB",Cs="Invalid entry option (must be an entry returned by ZipReader#getEntries())",ks="The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set",Ms="compression unavailable",vs="clamped last modification date",Ns=new Uint8Array([7,0,2,0,65,69,3,0,0]),_s="infozip",Ls="unix",Bs=[8,9,5,3];let Ps=0;const js=[];class Ws{constructor(t,e={}){t=new Co(t);const{availableSize:r=O,maxSize:n=O}=t,o=r>0&&r!==O&&n>0&&n!==O;if(o&&e[X])throw new Error(as);Object.assign(this,{writer:t,It:o,options:e,Ut:new Map,Ot:new Set,offset:e[q]===U?t.size||t.writable.size||0:e[q],Tt:e[q]===U?0:e[q]-(t.size||t.writable.size||0),Ct:new Set,kt:[],warnings:[],Mt:0,vt:0,Nt:U,_t:!1})}prependZip(t){return Gs(this,async function(t,e){if(t.Ot.size)throw new Error(As);await t.Lt(e)}(this,t))}appendZip(t){return Gs(this,this.Lt(t))}async Lt(t){const e=this,{Ct:r,Ot:n,Ut:a}=e;for(;r.size;)await Promise.allSettled(Array.from(r));let i;const s=new Promise(t=>i=t);r.add(s);const c=[];let u;try{t=new To(t),await Mo(t),t.size!==U&&t.readUint8Array||(t=new ro(await Qe(t.readable)),await Mo(t));const{ZipReader:r}=await Promise.resolve().then(function(){return Ki}),i=new r(t),s=await i.getEntries();await i.close(),await Mo(e.writer);const{directoryOffset:l}=i;s.forEach(({filename:t})=>{if(n.has(t))throw new Error(qi);n.add(t),c.push(t)}),e.Bt=!0;const{Pt:f}=e;e.Pt=new Promise(t=>u=()=>{e.Bt=!1,t()}),await f,e.It&&(delete e.It,await async function(t){return jt(await No(t,0,4)).getUint32(0,!0)==o}(t)||(await uc(e.writer,sc()),e.offset+=4));const w=await async function(t,e,r,n){const{writer:o}=t,a=new Map;if(o.closeDisk){const i=Array.from(r).sort((t,r)=>ic(e,t)-ic(e,r));let s=0;for(const r of i){const n=ic(e,r);await oc(t,e,s,n-s),ec(o,await ac(e,n))&&await o.closeDisk(),a.set(r,{offset:rc(t,o),diskNumberStart:Qs(o)}),s=n}await oc(t,e,s,n-s)}else{const o=t.offset;await oc(t,e,0,n),r.forEach(t=>a.set(t,{offset:o+ic(e,t),diskNumberStart:0}))}return a}(e,t,s,l);s.forEach(t=>{const{version:e,rawLastModDate:r,rawFilename:n,bitFlag:o,encrypted:i,uncompressedSize:s,compressedSize:c,extraFieldZip64:u}=t;let{compressionMethod:l,rawExtraField:f}=t;const{level:d,languageEncodingFlag:p,dataDescriptor:m}=o;f=nc(f||N),t.extraFieldAES&&(l=99);const h=xc(f),y=Boolean(u)&&u.uncompressedSize!==U,E=Boolean(u)&&u.compressedSize!==U,b=-7&Ic(d,p,m,i,l)|d<<1,{jt:S,Wt:g}=Fc({version:e,bitFlag:b,compressionMethod:l,uncompressedSize:s,compressedSize:c,rawLastModDate:r,rawFilename:n,Vt:E,Zt:y,extraFieldLength:h}),{crc32:A}=t;A!==U&&Ac(g,10,A);const{offset:R,diskNumberStart:D}=w.get(t);Object.assign(t,{Ht:!0,Zt:y,Vt:E,offset:R,diskNumberStart:D,Gt:!1,Yt:N,Kt:N,qt:N,Xt:N,$t:N,rawExtraField:f,Jt:N,jt:S,Wt:g}),a.set(t.filename,t)})}catch(t){throw c.forEach(t=>n.delete(t)),t}finally{i(),r.delete(s),u&&u()}}add(o="",i,s={}){const c=this,{Ct:u}=c,l=async function(o,i,s,c){const u=(c=Object.assign({},c))[J];if(u!==U){const{Qt:t,te:e}=function(t,e,n){if(null===t||typeof t!=k||Array.isArray(t))throw new Error(Cs);const{externalFileAttributes:o,versionMadeBy:a,comment:i,lastModDate:s,rawLastModDate:c,creationDate:u,lastAccessDate:l,uncompressedSize:f,encrypted:w,zipCrypto:d,crc32:p,compressionMethod:m,extraFieldAES:h,extraFieldUnix:y,internalFileAttributes:E,extraField:b,bitFlag:S,directory:g,uid:A,gid:R}=t,D={externalFileAttributes:o,versionMadeBy:a,comment:i,lastModDate:s,creationDate:u,lastAccessDate:l,internalFileAttributes:E,directory:g};S&&S.languageEncodingFlag&&(D[Y]=!0);const x=function(t){if(t){const e=new Map;if(t.forEach((t,r)=>{Sa.has(r)||e.set(r,t.data)}),e.size)return e}}(b);x&&(D[da]=x),A===U&&R===U||Object.assign(D,{uid:A,gid:R,unixExtraFieldType:y?Ls:_s});const F={};if(e&&!g)if(Object.assign(F,{uncompressedSize:f,crc32:p,compressionMethod:m}),e!==ot&&Object.assign(F,{encrypted:w,zipCrypto:d,encryptionStrength:h?h.strength:U}),S&&(F.dataDescriptor=S.dataDescriptor,F[G]=Bs[S.level]),n===U)F.rawLastModDate=c;else if(e!==ot&&d&&(!S||S.dataDescriptor)&&n instanceof Date&&function(t){let e=new Date(2e3*Math.ceil(Math.floor(t.getTime()/1e3)/2));return e<I?e=I:e>z&&(e=z),(e.getHours()<<3|e.getMinutes()>>3)&r}(n)!=(c>>>8&r))throw new Error(ks);return{Qt:D,te:F}}(u,pt(pc(o,c,P)),pc(o,c,Yo));delete c[J],c=Object.assign(t,e,c)}if(pc(o,c,ua)&&!i.endsWith(x)&&(i+=x),o.Ot.has(i))throw new Error(qi);o.Ot.add(i),Ps<Ot().maxWorkers?Ps++:await new Promise(t=>js.push(t));try{return await async function(o,i,s,c){const u=function(n,o,a){let i=pc(n,a,na),s=pc(n,a,sa,i?20:768);const c=pc(n,a,la),u=yc(n,a,"uid"),l=yc(n,a,"gid");let f=yc(n,a,pa),w=pc(n,a,"unixExtraFieldType"),d=pc(n,a,ma),p=pc(n,a,ha),m=pc(n,a,ya);if(ht(u,t,Rs),ht(l,t,Ds),ht(f,e,xs),w!==U&&w!==_s&&w!==Ls)throw new Error(Fs);if(w===Ls&&(u!==U&&u>e||l!==U&&l>e))throw new Error(zs);w!==U||u===U&&l===U||(w=_s);let h=yc(n,a,ea),y=pc(n,a,ra);const E=h!==U||y!==U;if(u!==U||l!==U||f!==U||w||c?(i=!1,s=s&r|768):E&&(i=!0,s&=r),ht(h,r,Is),y&&(typeof y!==k||Array.isArray(y)))throw new Error(Us);if(s>e)throw new Error(rs);let b=pc(n,a,ta);const S=b!==U;S||(b=0),!a[ua]&&o.endsWith(x)&&(a[ua]=!0);const F=pc(n,a,ua);if(F?(o.endsWith(x)||(o+=x),S||(b=16,i||(b|=16877<<16))):i||S||(b=c?493<<16:27525120),!i){const t=f!==U||Boolean(d||p||m);f=f===U?b>>16&e:f&e,d?f|=R:d=Boolean(f&R),p?f|=D:p=Boolean(f&D),m?f|=512:m=Boolean(512&f),S&&!t||(F?f=-61441&f|A:f&g||(f|=32768),b=(f&e)<<16|b&e)}({msdosAttributesRaw:h,msdosAttributes:y}=function(t,e){if(t!==U)t&=r;else if(e!==U){const{readOnly:n,hidden:o,system:a,directory:i,archive:s}=e;let c=0;n&&(c|=1),o&&(c|=2),a&&(c|=4),i&&(c|=16),s&&(c|=32),t=c&r}return e===U&&(e={readOnly:Boolean(1&t),hidden:Boolean(2&t),system:Boolean(4&t),directory:Boolean(16&t),archive:Boolean(32&t)}),{msdosAttributesRaw:t,msdosAttributes:e}}(h,y)),E&&(b=b&t|h&r);const z=b>>16&e,I=f!==U&&40960==(f&g);return{name:o,ee:{versionMadeBy:s,msDosCompatible:Boolean(i),externalFileAttributes:b,unixExternalUpper:z,uid:u,gid:l,unixMode:f,unixExtraFieldType:w,symlink:I,setuid:d,setgid:p,sticky:m,msdosAttributesRaw:h,msdosAttributes:y}}}(o,i,c);({name:i}=u);const l=function(t,r,n){const o=hc(t,n,"encodeText")||te;let a=o(r,Q);if(a===U&&(a=te(r)),xc(a)>e)throw new Error(es);const i=n[jo]||"";if(typeof i!=M)throw new Error(Qi);let s=o(i,tt);if(s===U&&(s=te(i)),xc(s)>e)throw new Error(Ji);const c=pc(t,n,ia);if(c!==U&&c>e)throw new Error(rs);const u=mc(t,n,Yo,new Date),l=pc(t,n,Ko),f=mc(t,n,qo),w=mc(t,n,$o),d=pc(t,n,Qo,0),p=pt(pc(t,n,P)),m=Boolean(p),h=!0===p;let y=pc(t,n,L),E=pc(t,n,B);dt(y,E),y=y&&y.length?y:U,E=E&&E.length?E:U;const b=yc(t,n,"encryptionStrength",3),S=pc(t,n,ca),g=pc(t,n,"extendedTimestamp",!0),A=pc(t,n,"ntfsTimestamp"),R=pc(t,n,"keepOrder",!0),D=pc(t,n,W),x=pc(t,n,Z),F=pc(t,n,"bufferedWrite"),z=hc(t,n,"createTempStream"),I=pc(t,n,"dataDescriptorSignature",!0),O=ft(pc(t,n,j));wt(O);const T=pc(t,n,Y,!zc(a)||!zc(s)),C=pc(t,n,fa),k=m||C===U?U:lr(C);if(!m&&C!==U&&0!==C&&8!==C&&!k)throw new Error(or);let v=yc(t,n,G);if(ht(v,9,Os),t.options[X]){if(y!==U||E!==U)throw new Error(os);v===U&&C===U&&(v=0)}m&&(v=yt(n[G]));let N=pc(t,n,V),_=pc(t,n,K);F&&_===U&&(_=!1),(_===U||S&&!h)&&(_=!0),v!==U&&6!=v&&(N=!1);const H=pc(t,n,oa);if(!(S||y===U&&E===U||Number.isInteger(b)&&b>=1&&b<=3))throw new Error(ns);const q=qs(n[da]),$=qs(n.localExtraField),J=qs(n.centralExtraField);return{comment:i,ee:{rawFilename:a,rawComment:s,version:c,lastModDate:u,rawLastModDate:l,lastAccessDate:f,creationDate:w,internalFileAttributes:d,re:m,ne:h,password:y,rawPassword:E,encryptionStrength:b,zipCrypto:S,extendedTimestamp:g,ntfsTimestamp:A,keepOrder:R,useWebWorkers:D,transferStreams:x,bufferedWrite:F,createTempStream:z,dataDescriptorSignature:I,signal:O,useUnicodeFileNames:T,compressionMethod:C,format:k?k.format:U,codecURI:k?k.codecURI:U,oe:k?k.versionNeeded:U,level:v,useCompressionStream:N,dataDescriptor:_,zip64:H,rawExtraField:q,ae:$,Jt:J}}}(o,i,c),{comment:f}=l,w=c[da];o.Ut.set(i,U);const d=o.Nt,p={};let y,S;l.ee.keepOrder&&(p.ie=new Promise(t=>y=t)),o.Nt=p;try{const{ee:f}=l;0==f.level||f.compressionMethod!==U||f.re||await async function(t){const{CompressionStream:e,CompressionStreamFallback:r}=t;return!(!r||r.requiresModule)||!(!zr(e)&&(n=e,!Fr(n,Sr)))||!!r&&await $r(t);var n}(Ot())||(f.level=0,Lo(o.warnings,Ms,i));const w=await async function(e,r,{ee:n},o){if(n.re&&!r&&!pc(e,o,ua))throw new Error(Ss);let a;if(r){if(r=new To(r),await Mo(r),!r.readable&&!r.readUint8Array)throw new Error(gs);({size:a}=r)}return Object.assign({reader:r},function(e,r,n,o,a){const{re:i,ne:s,zipCrypto:c,password:u,rawPassword:l,encryptionStrength:f}=o;let{dataDescriptor:w,zip64:d,level:p,compressionMethod:m}=o,h=0,y=0,E=!1;if(i&&r){if(y=a[Vo],y===U)throw new Error(hs);if(m===U)throw new Error(ys)}const b=!0===d,S=pc(e,a,aa);if(r&&s&&!S&&xc(u,l))throw new Error(is);const g=r&&(Boolean(u&&xc(u)||l&&xc(l))||s&&S);r||(p=0,m=0);const A=ga(g,c,f);r&&(i?(a.uncompressedSize=y,h=n===U?Ec(y)+A:n+(s?0:A)):n===U?(w=!0,(d||d===U)&&(d=E=!0,h=4294967296)):(a.uncompressedSize=y=n,h=(bc(m,p)?Ec(y):y)+A));const R=!(g||r&&(0!==n||i)||bc(m,p));R&&pc(e,a,K)===U&&(w=!1);const D=b||E||y>=t,x=b||h>=t;if(D||x){if(!1===d)throw new Error(ms);d=!0}return d=d||!1,{se:h,ee:{dataDescriptor:w,ce:R,zip64:d,Ht:b,ue:E,Zt:D,Vt:x,uncompressedSize:y,level:p,compressionMethod:m,encrypted:g}}}(e,Boolean(r),a,n,o))}(o,s,l,c);({reader:s}=w);const g=tc(o.writer),A=Qs(o.writer);let R=c.crc32===U?c[wa]:c.crc32;const D=w.ee.encrypted&&!f.zipCrypto;if(f.re&&!f.ne&&D&&(R=U),f.re&&s&&!D&&R===U)throw new Error(Es);const x=function(t){const{rawFilename:r,lastModDate:o,rawLastModDate:a,lastAccessDate:i,creationDate:s,level:c,zip64:u,zipCrypto:l,useUnicodeFileNames:f,dataDescriptor:w,directory:d,rawExtraField:p,ae:y,encryptionStrength:S,extendedTimestamp:g,ntfsTimestamp:A,re:R,encrypted:D,Zt:x,Vt:O,uncompressedSize:T,ue:C,crc32:k}=t;let{version:M,compressionMethod:v}=t;const _=!d&&bc(v,c);let L;const B=R||!_,P=u&&(t.bufferedWrite||!w||!x&&!O||B&&!C),j=P||u&&w&&(x||O);if(u&&(x||O)){const t=20,e=Js(t);if(e.le(1),e.le(t-4),L=e.ct,P&&(e.fe(T),B)){const t=ga(D,l,S);e.fe(R?0:T+t)}}else L=N;let W,V,Z,H,G,Y;if(D&&!l){const t=Js(xc(Ns)+2);t.le(m),t.we(Ns),W=t.ct,W[8]=S}else W=N;if(g){const t=wc(o),e=(K=t)>=fs&&K<=ws;if(e){const e=9+(i?4:0)+(s?4:0),r=Js(e);H=1+(i?2:0)+(s?4:0),G=t,r.le(h),r.le(e-4),r.de(H),r.pe(t),i&&r.pe(dc(wc(i))),s&&r.pe(dc(wc(s))),Z=r.ct}else Z=N;if(A===U?!e||Boolean(i||s):A)try{const t=fc(o),e=Js(36);e.le(10),e.le(32),e.me(4),e.le(1),e.le(24),e.fe(t),e.fe(i?fc(i):t),e.fe(s?fc(s):t),V=e.ct}catch{V=N}else V=N}else V=Z=N;var K;try{const{uid:r,gid:n,unixExtraFieldType:o}=t;if(o!=_s||r===U&&n===U)if(o!=Ls||r===U&&n===U)Y=N;else{const t=Js(8);t.le(b),t.le(4),t.le((r===U?0:r)&e),t.le((n===U?0:n)&e),Y=t.ct}else{const t=$s(r===U?0:r),e=$s(n===U?0:n),o=3+t.length+e.length,a=Js(4+o);a.le(E),a.le(o),a.de(1),a.de(t.length),a.we(t),a.de(e.length),a.we(e),Y=a.ct}}catch{Y=N}v===U&&(v=_?8:0),M===U&&(M=0!=v||d||D?20:10);const{oe:q}=t;_&&q!==U&&(M=M>q?M:q),u&&(M=M>45?M:45),D&&!l&&(M=M>51?M:51,R&&k!==U&&(W[4]=1),gc(jt(W),9,v),v=99);const $=j?xc(L):0,J=$+xc(W,Z,V,Y,p,y);if(J+(t[X]?67:0)>e)throw new Error(ls);const Q=new Date(2e3*Math.ceil(Math.floor(o.getTime()/1e3)/2)),tt=Q<I?I:Q>z?z:Q,et=xc(Z)?new Date(1e3*wc(o)):xc(V)?o:tt,{jt:rt,Wt:nt,rawLastModDate:ot}=Fc({version:M,bitFlag:Ic(c,f,w,D,v),compressionMethod:v,uncompressedSize:T,lastModDate:tt,rawLastModDate:a,rawFilename:r,Vt:O,Zt:x,extraFieldLength:J}),at=Js(F+xc(r)+J),it=at.ct,st=jt(it);return at.pe(n),at.we(rt),at.we(r),j&&at.we(L),at.we(W),at.we(Z),at.we(V),at.we(Y),at.we(p),at.we(y),w&&(O||Ac(st,18,0),x||Ac(st,22,0)),{he:it,ye:st,jt:rt,Wt:nt,lastModDate:et,Ee:et===tt&&Q.getTime()!=tt.getTime(),rawLastModDate:ot,encrypted:D,compressed:_,version:M,compressionMethod:v,be:H,Se:G,Yt:N,ge:$,qt:Z,Xt:V,$t:Y,Kt:W,extraFieldLength:J}}(c=Object.assign({},c,u.ee,l.ee,w.ee,{signature:c[wa],crc32:R,offset:o.offset-g,diskNumberStart:A,[X]:o.options[X]}));x.Ee&&Lo(o.warnings,vs,i);const T=function({zip64:t,dataDescriptor:e,dataDescriptorSignature:r}){let n,o=N,i=0,s=t?20:12;return r&&(s+=4),e&&(o=new Uint8Array(s),n=jt(o),r&&(i=4,Ac(n,0,a))),{Ae:o,Re:n,De:i}}(c),C=xc(x.he,T.Ae);S=await async function(e,n,o,a,i){const{Ut:s,writer:c}=e,{keepOrder:u,dataDescriptor:l,ce:f,signal:w}=i,{xe:d,Ft:p,Fe:m,ze:h}=a,y=e.options[X];let E,b,S,g,A,R,D,x=p,z=0;const I=u&&m?m.ie:U;s.set(n,x);try{i.bufferedWrite||!u||e.Bt||e.Mt||e.vt||!l&&!f?(E=!0,e.Mt++,D=i.createTempStream?await i.createTempStream():new TransformStream(U,U,{highWaterMark:O}),D.size=0,await Mo(c)):(b=!0,e.vt++,D=c,await I,await T()),await Mo(D);const p=tc(c);e.It&&!E&&await cc(e,c),y&&!E&&Xs(a,e.offset-p);const{he:m}=d;E||await C();const h=Qs(c),S=rc(e,c);if(x.diskNumberStart=h,E||(A=!0,R=c.size,await uc(D,m)),x=await async function(e,n,{diskNumberStart:o,ie:a},i,s,c){const{xe:u,Ie:l,Ue:f}=i,{jt:w,Wt:d,lastModDate:p,rawLastModDate:m,encrypted:h,compressed:y,version:E,compressionMethod:b,Yt:S,ge:g,qt:A,be:R,Se:D,Xt:x,$t:F,Kt:z}=u,{Ae:I}=l,{rawFilename:O,lastAccessDate:T,creationDate:C,password:k,rawPassword:M,level:v,useUnicodeFileNames:N,zip64:_,Ht:L,Zt:B,Vt:P,zipCrypto:j,dataDescriptor:W,directory:V,executable:Z,versionMadeBy:H,rawComment:G,rawExtraField:Y,Jt:K,useWebWorkers:q,transferStreams:X,onstart:$,onprogress:J,onend:Q,signal:tt,encryptionStrength:et,extendedTimestamp:rt,msDosCompatible:nt,internalFileAttributes:ot,externalFileAttributes:at,uid:it,gid:st,unixMode:ct,symlink:ut,setuid:lt,setgid:ft,sticky:dt,unixExternalUpper:pt,msdosAttributesRaw:mt,msdosAttributes:ht,useCompressionStream:yt,re:Et,ne:bt,format:St,codecURI:gt}=c,At={ie:a,versionMadeBy:H,zip64:_,Ht:L,directory:Boolean(V),executable:Boolean(Z),filenameUTF8:Boolean(N),rawFilename:O,commentUTF8:Boolean(N),rawComment:G,Yt:S,ge:g,qt:A,Xt:x,$t:F,Kt:z,rawExtraField:Y,Jt:K,extendedTimestamp:rt,msDosCompatible:nt,internalFileAttributes:ot,externalFileAttributes:at,diskNumberStart:o,uid:it,gid:st,unixMode:ct,symlink:Boolean(ut),setuid:lt,setgid:ft,sticky:dt,unixExternalUpper:pt,msdosAttributesRaw:mt,msdosAttributes:ht};let{crc32:Rt,uncompressedSize:Dt}=c,xt=0;Et||(Dt=0);const{writable:Ft}=n;if(e){const o=e.size,a=Je(_o(e,{size:o})),i={options:{codecType:Wr,inputSize:o,level:v,rawPassword:M,password:k,encryptionStrength:et,zipCrypto:h&&j,passwordVerification:h&&j&&m>>8&r,computeCrc32:!Et,compressed:y&&!Et,encrypted:h&&!bt,useWebWorkers:q,useCompressionStream:yt,transferStreams:X,format:St,codecURI:gt,compressionMethod:b},config:s,F:{signal:tt,size:o,onstart:$,onprogress:J,onend:Q}};try{const e=await Dn({readable:a,writable:Ft},i);if(xt=e.outputSize,n.size+=xt,wt(tt),Et||(Dt=e.inputSize,h&&!j||(Rt=e.crc32)),!P&&xt>=t||!B&&Dt>=t)throw new Error(ms)}catch(t){const{outputSize:e}=i;throw e!==U?n.size+=e:Wt(t)&&t.outputSize!==U&&(n.size+=t.outputSize),t}}return function({crc32:t,compressedSize:e,uncompressedSize:r,xe:n,Ie:o},{zip64:a,zipCrypto:i,re:s,dataDescriptor:c}){const{Wt:u,encrypted:l}=n,{Re:f,De:w}=o;l&&!i&&!s||t===U||(Ac(u,10,t),c&&Ac(f,w,t)),a?c&&(Rc(f,w+4,BigInt(e)),Rc(f,w+12,BigInt(r))):(Ac(u,14,e),Ac(u,18,r),c&&(Ac(f,w+4,e),Ac(f,w+8,r)))}({crc32:Rt,compressedSize:xt,uncompressedSize:Dt,xe:u,Ie:l},c),W&&await uc(n,I),Object.assign(At,{uncompressedSize:Dt,compressedSize:xt,lastModDate:p,rawLastModDate:m,creationDate:C,lastAccessDate:T,encrypted:Boolean(h),zipCrypto:Boolean(j),size:f+xt,compressionMethod:b,version:E,jt:w,Wt:d,signature:Rt,crc32:!h||j||Et?Rt:U,be:R,Se:D,Zt:B,Vt:P}),At}(o,D,x,a,Ot(),i),E||(A=!1),s.set(n,x),x.filename=n,E){if(await Promise.all([D.writable.getWriter().close(),I]),await T(),e.It&&await cc(e,c),g=!0,R=c.size,await C(),x.diskNumberStart=Qs(c),x.offset=rc(e,c),y){const t=a.Ue;Xs(a,e.offset-tc(c)),x.size+=a.Ue-t}!function({rawFilename:t,encrypted:e,zip64:r,ge:n,crc32:o,compressedSize:a,uncompressedSize:i,Zt:s,Vt:c},u,{dataDescriptor:l,re:f}){if(l||((!e||f&&o!==U)&&Ac(u,14,o),c||Ac(u,18,a),s||Ac(u,22,i)),r&&n){const e=F+xc(t)+4;Rc(u,e,BigInt(i)),Rc(u,e+8,BigInt(a))}}(x,d.ye,i),await uc(c,d.he),await lc(D.readable,c,w,t=>z+=t),c.size+=D.size,g=!1}else x.diskNumberStart=h,x.offset=S;return e.offset+=x.size,x}catch(t){if(g||A){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch{}e.offset+=c.size-R,E&&(e.offset+=z)}throw s.delete(n),t}finally{if(E&&e.Mt--,b&&e.vt--,h&&h(I),S&&S(),E&&D&&D.dispose)try{await D.dispose()}catch{}}async function T(){e.Bt=!0;const{Pt:t}=e;e.Pt=new Promise(t=>S=()=>{e.Bt=!1,t()}),await t}async function C(){ec(c,xc(d.he))&&await c.closeDisk()}}(o,i,s,{xe:x,Ie:T,Ue:C,Ft:p,Fe:d,ze:y},c)}catch(t){throw o.Ut.delete(i),t}finally{y&&y(d&&d.ie)}return Object.assign(S,{name:i,comment:f,extraField:w}),new ba(S)}(o,i,s,c)}catch(t){throw o.Ot.delete(i),t}finally{const t=js.shift();t?t():Ps--}}(c,o,i,s);u.add(l);const f=()=>u.delete(l);return Promise.prototype.then.call(l,f,f),Gs(c,l)}remove(t){const{Ot:e,Ut:r}=this;if(typeof t==M&&(t=r.get(t)),t&&t.filename!==U){const{filename:n}=t;if(e.has(n)&&r.has(n))return e.delete(n),r.delete(n),!0}return!1}async close(r=N,n={}){const o=this,{Ct:a,writer:d}=this,{writable:p}=d;if(o._t)return Hs(d);if(!(r instanceof Uint8Array))throw new Error($i);if(xc(r)>e)throw new Error(Xi);for(;a.size;)await Promise.allSettled(Array.from(a));await Promise.allSettled(o.kt.map(t=>t.Oe));const m=o.kt.filter(t=>t.Te&&!t.Ce);if(m.length){const t=m.map(t=>t.error);m.forEach(t=>t.Ce=!0);const[e]=t;try{e.entryErrors=t}catch{}throw e}return await async function(r,n,o){const{ke:a,Me:d}=function(r){let n=0,o=!1;for(const[,a]of r){const{rawFilename:r,Kt:i,rawComment:s,Xt:c,$t:u,rawExtraField:l,Jt:w,be:d,Se:p,Ht:m,uncompressedSize:y,compressedSize:E}=a;let{Zt:b,Vt:S}=a;m||(b&&y<t&&(b=a.Zt=!1),S&&E<t&&(S=a.Vt=!1)),o=o||b||S;const g=a.offset>=t,A=a.diskNumberStart>=e;let R,D;if(g||A||b||S){const t=4+(b?8:0)+(S?8:0)+(g?8:0)+(A?4:0),e=Js(t);e.le(1),e.le(t-4),b&&e.fe(y),S&&e.fe(E),g&&e.fe(a.offset),A&&e.pe(a.diskNumberStart),R=e.ct}else R=N;if(a.Yt=R,a.ve=g,a.Gt=A,p===U)D=N;else{const t=Js(9);t.le(h),t.le(5),t.de(d),t.pe(p),D=t.ct}a.qt=D;const x=xc(R,i,c,u,D,l,w);if(x>e)throw new Error(ls);n+=f+xc(r,s)+x}return{ke:n,Me:o}}(r.Ut),{Ne:p,_e:m,Le:y}=await async function(r,n,o){const{Ut:a,writer:i}=r,c=new Uint8Array(n);await Mo(i);let u=0,l=0,w=Qs(i),d=tc(i),p=0;for(const[r,n]of Array.from(a.values()).entries()){const{offset:m,rawFilename:h,Yt:y,Kt:E,qt:b,Xt:S,$t:g,rawExtraField:A,Jt:R,rawComment:D,versionMadeBy:x,jt:F,Wt:z,Zt:I,Vt:U,Gt:O,ve:T,internalFileAttributes:C,externalFileAttributes:k,diskNumberStart:M,uncompressedSize:v,compressedSize:N}=n,_=xc(y,E,b,S,g,A,R),L=f+xc(h,D)+_;ec(i,u+L-l)&&(await uc(i,c.slice(l,u)),l=u,p=0,await i.closeDisk()),0==r&&(w=Qs(i),d=tc(i)),I||Ac(z,18,v),U||Ac(z,14,N),(T||O)&&n.version<45&&gc(z,0,45);const B=Js(L);if(B.pe(s),B.le(x),B.we(F.subarray(0,24)),B.le(_),B.le(xc(D)),B.le(O?e:M),B.le(C),B.pe(k),B.pe(T?t:m),B.we(h),B.we(y),B.we(E),B.we(b),B.we(S),B.we(g),B.we(A),B.we(R),B.we(D),Dc(c,B.ct,u),u+=L,p++,o.onprogress)try{await o.onprogress(r+1,a.size,new ba(n))}catch{}}return await uc(i,l?c.slice(l):c),{Ne:{diskNumber:w,diskOffset:d},_e:{diskNumber:Qs(i),Be:p},Le:c}}(r,a,o),E=await async function(t,r,n){const o=hc(t,n,"signCentralDirectory");if(o){const n=await o(r),a=xc(n);if(a>e)throw new Error(Ts);const s=Js(6+a);s.pe(i),s.le(a),s.we(n);const{writer:c}=t;return ec(c,xc(s.ct))&&await c.closeDisk(),await uc(c,s.ct),6+a}return 0}(r,y,o);await async function(r,n,o,a){const{writer:i}=r,{Ne:s,_e:f,Pe:d,Me:p}=a;let{ke:m}=a,h=r.Ut.size,y=s.diskNumber,E=rc(r,s);const b=xc(n);if(b>e)throw new Error(Xi);let S=pc(r,o,oa),g=Qs(i);if(ec(i,(S?98:w)+b)&&g++,E>=t||m>=t||h>=e||g>=e){if(!1===S)throw new Error(ms);S=!0}else S===U&&p&&(S=!0);const A=Js(S?98:w);ec(i,xc(A.ct)+b)&&await i.closeDisk(),g=Qs(i);let R=g==f.diskNumber?f.Be:0;S&&(A.pe(u),A.fe(44),A.le(45),A.le(45),A.pe(g),A.pe(y),A.fe(R),A.fe(h),A.fe(m),A.fe(E),A.pe(l),A.pe(g),A.fe(BigInt(rc(r,i))+BigInt(m)+BigInt(d)),A.pe(g+1),pc(r,o,"supportZip64SplitFile",!0)&&(g=e,y=e),R=e,h=e,E=t,m=t),A.pe(c),A.le(g),A.le(y),A.le(R),A.le(h),A.pe(m),A.pe(E),A.le(b),await uc(i,A.ct),b&&await uc(i,n)}(r,n,o,{Ne:p,_e:m,ke:a,Pe:E,Me:d})}(o,r,n),o._t=!0,!ko(d)&&pc(o,n,H)||await p.getWriter().close(),Hs(d)}[_](){return this.close()}}class Vs{constructor(t={}){const{readable:e,writable:r}=new TransformStream;this.readable=e,this.zipWriter=new Ws(r,t),this.Ct=new Set}transform(t){const e=this.zipWriter;let r;const{readable:n,writable:o}=new TransformStream({start(t){r=t},flush:()=>{!async function(){try{await e.close()}catch(t){await Ys(e,t)}}()}});return Ks(this,this.zipWriter.add(t,n),t=>r.error(t)),{readable:this.readable,writable:o}}writable(t){let e;const{readable:r,writable:n}=new TransformStream({start(t){e=t}});return Ks(this,this.zipWriter.add(t,r),t=>e.error(t)),n}async close(t,e={}){const{zipWriter:r}=this,n=(await Promise.allSettled(Array.from(this.Ct))).filter(t=>"rejected"==t.status).map(t=>t.reason);if(n.length){const[t]=n;try{t.entryErrors=n}catch{}throw await Ys(r,t),t}try{return await r.close(t,e)}catch(t){throw await Ys(r,t),t}}}class Zs extends Promise{then(t,e){const{je:r}=this;return r&&(r.Ce=!0),super.then(t,e)}}function Hs(t){return t.getData?t.getData():t.writable}function Gs(t,e){const r=new Zs((t,r)=>Promise.prototype.then.call(e,t,r)),n={};return r.je=n,n.Oe=Promise.prototype.then.call(r,U,t=>Object.assign(n,{Te:!0,error:t})),t.kt.push(n),r}async function Ys(t,e){try{await t.writer.writable.abort(e)}catch{}}function Ks(t,e,r){t.Ct.add(e),e.catch(t=>{try{r(t)}catch{}})}function qs(t){if(!t)return N;if(!(t instanceof Map))throw new Error(ss);let r=0,n=0;t.forEach((t,n)=>{if(mt(n,e,cs),!(t instanceof Uint8Array))throw new Error(us);if(xc(t)>e)throw new Error(ls);r+=4+xc(t)});const o=new Uint8Array(r),a=jt(o);return t.forEach((t,e)=>{gc(a,n,e),gc(a,n+2,xc(t)),Dc(o,t,n+4),n+=4+xc(t)}),o}function Xs(t,e){const{xe:r}=t;let{he:n,extraFieldLength:o}=r,a=64-(e+xc(n))%64;a<4&&(a+=64);const i=new Uint8Array(a),s=jt(i);gc(s,0,y),gc(s,2,a-4);const c=n;r.he=n=new Uint8Array(xc(c)+a),Dc(n,c),Dc(n,i,xc(c));const u=jt(n);gc(u,28,o+a),r.ye=u,t.Ue+=a}function $s(t){const e=new Uint8Array(4);jt(e).setUint32(0,t,!0);let r=4;for(;r>1&&0===e[r-1];)r--;return e.subarray(0,r)}function Js(t){const e=new Uint8Array(t),r=jt(e);let n=0;return{ct:e,de:t=>{!function(t,e,r){t.setUint8(e,r)}(r,n,t),n+=1},le:t=>{gc(r,n,t),n+=2},pe:t=>{Ac(r,n,t),n+=4},fe:t=>{Rc(r,n,BigInt(t)),n+=8},we:t=>{Dc(e,t,n),n+=xc(t)},me:t=>n+=t}}function Qs(t){const{diskNumber:e=0}=t;return e}function tc(t){const{diskOffset:e=0}=t;return e}function ec(t,e){const{availableSize:r=O}=t;return e>r}function rc(t,{diskNumber:e=0,diskOffset:r=0}){return t.offset-r-(e?t.Tt:0)}function nc(t){const e=jt(t);let r=0;for(;r+4<=xc(t);){const n=4+Sc(e,r+2);if(1==Sc(e,r))return nc(Bt(t.subarray(0,r),t.subarray(Math.min(r+n,xc(t)))));r+=n}return t}async function oc(t,e,r,n){if(n>0){const{writer:o}=t;let a=0;try{await lc(_o(e,{offset:r,size:n}),o,U,t=>a+=t)}catch(e){t.hasCorruptedEntries=!0;try{e.corruptedEntry=!0}catch{}throw e}finally{o.size+=a,t.offset+=a}}}async function ac(t,e){const r=await No(t,e,F);if(xc(r)<F)return F;const n=jt(r);return F+Sc(n,26)+Sc(n,28)}function ic(t,{offset:e,diskNumberStart:r}){return e+(t.ht?t.ht(r):0)}function sc(){const t=new Uint8Array(4);return Ac(jt(t),0,o),t}async function cc(t,e){delete t.It,await uc(e,sc()),t.offset+=4}async function uc(t,e){const{writable:r}=t,n=r.getWriter();try{await n.ready,t.size+=xc(e),await n.write(e)}finally{n.releaseLock()}}async function lc(t,e,r,n){const o=e.writable.getWriter();try{await t.pipeTo(new WritableStream({async write(t){await o.ready,await o.write(t),n(xc(t))}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{o.releaseLock()}}function fc(t){if(t){const e=(BigInt(t.getTime())+BigInt(116444736e5))*BigInt(1e4);return e<ds?ds:e>ps?ps:e}}function wc(t){return Math.floor(t.getTime()/1e3)}function dc(t){return Math.min(ws,Math.max(fs,t))}function pc(t,e,r,n){const o=e[r]===U?t.options[r]:e[r];return o===U?n:o}function mc(t,e,r,n){const o=pc(t,e,r,n);if(null===o)return n;if(o!==U&&(typeof o.getTime!=C||Number.isNaN(o.getTime())))throw new Error(ts);return o}function hc(t,e,r){return lt(pc(t,e,r))}function yc(t,e,r,n){return yt(pc(t,e,r,n))}function Ec(t){return t+5*(Math.floor(t/16383)+1)}function bc(t,e){return t===U?e===U||e>0:0!==t}function Sc(t,e){return t.getUint16(e,!0)}function gc(t,e,r){t.setUint16(e,r,!0)}function Ac(t,e,r){t.setUint32(e,r,!0)}function Rc(t,e,r){t.setBigUint64(e,r,!0)}function Dc(t,e,r){t.set(e,r)}function xc(...t){let e=0;return t.forEach(t=>t&&(e+=t.length)),e}function Fc({version:e,bitFlag:r,compressionMethod:n,uncompressedSize:o,compressedSize:a,lastModDate:i,rawLastModDate:s,rawFilename:c,Vt:u,Zt:l,extraFieldLength:f}){const w=Js(26),d=w.ct,p=jt(d);if(w.le(e),w.le(r),w.le(n),s===U){const t=new Uint32Array(1),e=jt(t);gc(e,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),gc(e,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),s=t[0]}return w.pe(s),w.me(4),u||a!==U?w.pe(u?t:a):w.me(4),l||o!==U?w.pe(l?t:o):w.me(4),w.le(xc(c)),w.le(f),{jt:d,Wt:p,rawLastModDate:s}}function zc(t){return t.every(t=>t>=32&&t<=126)}function Ic(t,e,r,n,o){let a=0;return e&&(a|=S),r&&(a|=8),8!=o&&9!=o||(t>=0&&t<=3&&(a|=6),t>3&&t<=5&&(a|=4),9==t&&(a|=2)),n&&(a|=1),a}function Uc(){return"application/octet-stream"}function Oc(){const{CompressionStream:t,DecompressionStream:e,CompressionStreamFallback:r,DecompressionStreamFallback:n}=Ot(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:Tc(r,Er)||Tc(t,Er)||Tc(t,Sr),decompression:Tc(n,Er)||Tc(e,Er)||Tc(e,Sr),registered:!1},{compressionMethod:9,compression:!1,decompression:Tc(n,br)||Tc(e,br),registered:!1}];for(const t of fr()){const e=wr(t.format);o.push({compressionMethod:t.compressionMethod,compression:e?typeof e.CompressionStream==C:U,decompression:e?typeof e.DecompressionStream==C:U,registered:!0})}return o}function Tc(t,e){if(!t)return!1;const{supportedFormats:r}=t;return r?r.includes(e):Fr(t,e)}const Cc="2.18.2",kc=1048576,Mc=".zip.js-temp";function vc(t={}){const{thresholdBytes:e=kc,directoryName:r=Mc,getDirectory:n=()=>navigator.storage.getDirectory()}=t;let o;function a(){return o||(o=Promise.resolve(n()).then(t=>t.getDirectoryHandle(r,{create:!0}))),o}return function(){const t=[];let r,n,o,i,s=0,c=!1;const u=new WritableStream({async write(i){c?await o.write(i):(t.push(i),s+=i.length,s>e&&await async function(){const e=await a();r=crypto.randomUUID?crypto.randomUUID():Array.from(crypto.getRandomValues(new Uint8Array(16)),t=>t.toString(16).padStart(2,"0")).join(""),n=await e.getFileHandle(r,{create:!0}),o=(await n.createWritable()).getWriter(),c=!0;for(const e of t)await o.write(e);t.length=0}())},async close(){o&&(await o.close(),o=null)}});let l=0;return{writable:u,readable:new ReadableStream({async pull(e){if(c){if(!i){const t=await n.getFile();i=t.stream().getReader()}const{value:t,done:r}=await i.read();r?e.close():e.enqueue(t)}else l<t.length?e.enqueue(t[l++]):e.close()},async cancel(t){i&&await i.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(o){try{await o.close()}catch{}o=null}if(r){try{const t=await a();await t.removeEntry(r)}catch{}n=r=null}t.length=0}}}}const Nc=1048576;function _c(t={}){const{thresholdBytes:e=Nc}=t;return function(){const t=[];let r,n,o,a=0,i=!1;const s=new WritableStream({async write(o){i?await r.write(o):(t.push(o),a+=o.length,a>e&&await async function(){const e=new TransformStream;n=Qe(e.readable),r=e.writable.getWriter(),i=!0;for(const e of t)await r.write(e);t.length=0}())},async close(){r&&(await r.close(),r=null)}});let c=0;return{writable:s,readable:new ReadableStream({async pull(e){if(i){if(!o){const t=await n;o=t.stream().getReader()}const{value:t,done:r}=await o.read();r?e.close():e.enqueue(t)}else c<t.length?e.enqueue(t[c++]):e.close()},async cancel(t){o&&await o.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(r){try{await r.abort()}catch{}r=null}n&&(n.catch(()=>{}),n=null),t.length=0}}}}const Lc=1048576,Bc=".zip.js-temp",Pc="createSyncAccessHandle is only available in dedicated workers";function jc(t={}){const{thresholdBytes:e=Lc,directoryName:r=Bc,getDirectory:n}=t;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new Error(Pc);const o=n||(()=>navigator.storage.getDirectory());let a;function i(){return a||(a=Promise.resolve(o()).then(t=>t.getDirectoryHandle(r,{create:!0}))),a}return function(){const t=[];let r,n,o=0,a=!1,s=0,c=0;const u=new WritableStream({async write(c){a?(n.write(c,{at:s}),s+=c.length):(t.push(c),o+=c.length,o>e&&await async function(){const e=await i();r=crypto.randomUUID?crypto.randomUUID():Array.from(crypto.getRandomValues(new Uint8Array(16)),t=>t.toString(16).padStart(2,"0")).join("");const o=await e.getFileHandle(r,{create:!0});n=await o.createSyncAccessHandle(),a=!0;for(const e of t)n.write(e,{at:s}),s+=e.length;t.length=0}())},close(){n&&n.flush()}});let l=0;const f=new ReadableStream({pull(e){if(a){const t=s-c;if(t<=0)return void e.close();const r=new Uint8Array(Math.min(524288,t)),o=n.read(r,{at:c});o?(c+=o,e.enqueue(r.subarray(0,o))):e.close()}else l<t.length?e.enqueue(t[l++]):e.close()}},{highWaterMark:0});return{writable:u,readable:f,dispose:async function(){if(n){try{n.close()}catch{}n=null}if(r){try{const t=await i();await t.removeEntry(r)}catch{}r=null}t.length=0}}}}try{_t({baseURI:import.meta.url})}catch{}const Wc="deflate",Vc="deflate-raw",Zc="deflate64-raw",Hc="gzip",Gc=[Wc,Vc,Hc],Yc=[Wc,Vc,Hc,Zc];let Kc,qc,Xc,$c,Jc;function Qc(t,e){return-4===e&&(t.code="Z_MEM_ERROR"),t}function tu(t,e,r={}){if(!(t?Gc:Yc).includes(e))throw new TypeError("Unsupported format: "+e);if(!Kc){const t=new Error("WASM module not loaded");throw t.cause=Jc,t}const n="number"==typeof r.level?r.level:-1,o="number"==typeof r.outBuffer?r.outBuffer:65536,a="number"==typeof r.inBufferSize?r.inBufferSize:65536,i={We:0,in:0,inBufferSize:0,Ve:0,Ze:!1};let s,c,u,l,f=!0,w=!1;return function(){try{let r;if(i.We=qc(o),i.in=qc(a),i.inBufferSize=a,!i.We||!i.in)throw Qc(new Error("allocation failed"),-4);if(t?(i.He=Kc.deflate_process,i.Ge=Kc.deflate_last_consumed,i.Ye=Kc.deflate_end,i.Ve=Kc.deflate_new(),r=e===Hc?Kc.deflate_init_gzip(i.Ve,n):e===Vc?Kc.deflate_init_raw(i.Ve,n):Kc.deflate_init(i.Ve,n)):e===Zc?(i.He=Kc.inflate9_process,i.Ge=Kc.inflate9_last_consumed,i.Ye=Kc.inflate9_end,i.Ve=Kc.inflate9_new(),r=Kc.inflate9_init_raw(i.Ve)):(i.He=Kc.inflate_process,i.Ge=Kc.inflate_last_consumed,i.Ye=Kc.inflate_end,i.Ve=Kc.inflate_new(),r=e===Vc?Kc.inflate_init_raw(i.Ve):e===Hc?Kc.inflate_init_gzip(i.Ve):Kc.inflate_init(i.Ve)),0!==r)throw Qc(new Error("init failed:"+r),r)}catch(t){throw m(i),t}}(),{readable:new ReadableStream({start(t){s=t},pull(){f=!1,p()},cancel(t){w=!0,l=t,m(i),c.error(t),p()}},{highWaterMark:0}),writable:new WritableStream({start(t){c=t},async write(t){if(f&&await new Promise(t=>u=t),w)throw l;try{!function(t){const e=new Uint8Array($c.buffer),r=i.He,n=i.Ge,a=i.We;let s=0;for(;s<t.length;){if(i.Ze)throw new Error("trailing data after the end of the stream");const c=Math.min(t.length-s,32768);if((!i.in||i.inBufferSize<c)&&(i.in&&Xc&&(Xc(i.in),i.in=0),i.in=qc(c),i.inBufferSize=c,!i.in))throw Qc(new Error("allocation failed"),-4);e.set(t.subarray(s,s+c),i.in);const u=r(i.Ve,i.in,c,a,o,0),l=u>>24&255,f=128&l?l-256:l;if(f<0)throw Qc(new Error("process error:"+f),f);const w=16777215&u;w&&d(e.slice(a,a+w));const p=n(i.Ve);if(1===l)i.Ze=!0;else if(0===p&&0===w)break;s+=p}}(t)}catch(t){throw m(i),s.error(t),t}},close(){if(w)return;try{!function(){const t=new Uint8Array($c.buffer),e=i.He,r=i.We;for(;;){const n=e(i.Ve,0,0,r,o,4),a=n>>24&255,s=128&a?a-256:a;if(s<0)throw Qc(new Error("process error:"+s),s);const c=16777215&n;if(c&&d(t.slice(r,r+c)),1===a||0===c)break}}()}catch(t){throw m(i),s.error(t),t}const t=m(i);if(0!==t){const e=Qc(new Error("end error:"+t),t);throw s.error(e),e}s.close()},abort(t){m(i),s.error(t)}},{highWaterMark:1})};function d(t){f=!0,s.enqueue(t)}function p(){if(u){const t=u;u=null,t()}}function m(t){let e=0;return t.Ve&&t.Ye&&(e=t.Ye(t.Ve)),t.Ve=0,t.in&&Xc&&Xc(t.in),t.in=0,t.We&&Xc&&Xc(t.We),t.We=0,e}}class eu{constructor(t=Wc,e){return tu(!0,t,e)}}class ru{constructor(t=Wc,e){return tu(!1,t,e)}}eu.requiresModule=!0,ru.requiresModule=!0,eu.supportedFormats=Gc,ru.supportedFormats=Yc;const nu=65536;let ou,au;function iu(t){return new Uint8Array(t.memory.buffer)}let su,cu=!1;var uu;async function lu(){await async function(){await Promise.allSettled([In(),...bn.map(t=>(Tn(t),t.terminate()))]),Yr=U,Kr=!1}(),su=null,cu=!1,Kc=qc=Xc=$c=Jc=null,ou=null,au=0}uu=function(t,e){const r=ou;let n=r?function(t,e,r){au||(au=t.malloc(nu));const n=au?t.aes_hmac_new():0;if(n){const o=iu(t);if(o.set(e,au),o.set(r,au+e.length),t.aes_hmac_init(n,au,e.length,au+e.length,r.length))return t.aes_hmac_end(n,0),0}return n}(r,t,e):0;if(!n)return we(t,e);const o=au;return{process(t,e){for(let a=0;a<t.length;a+=nu){const i=t.subarray(a,a+nu),s=iu(r);s.set(i,o),r.aes_hmac_process(n,o,i.length,e?1:0),i.set(s.subarray(o,o+i.length))}},digest:()=>(r.aes_hmac_end(n,o),n=0,iu(r).slice(o,o+20)),dispose(){n&&(r.aes_hmac_end(n,0),n=0)}}},ke=uu||we,function({Ke:t}){Xr=t}({Ke:t=>{if(!su){let{wasmURI:e}=t;typeof e==C&&(e=e()),su=async function(t,{baseURI:e}){if(!cu)try{await async function(t,e){let r,n;try{try{n=new URL(t,e)}catch{}const o=await fetch(n);r=await o.arrayBuffer()}catch(e){if(!t.startsWith("data:application/wasm;base64,"))throw e;r=function(t){const e=t.split(",")[1],r=atob(e),n=r.length,o=new Uint8Array(n);for(let t=0;t<n;++t)o[t]=r.charCodeAt(t);return o.buffer}(t)}const o=await WebAssembly.instantiate(r);var a;(function(t){if(Kc=t,({malloc:qc,free:Xc,memory:$c}=Kc),"function"!=typeof qc||"function"!=typeof Xc||!$c)throw Kc=qc=Xc=$c=null,new Error("Invalid WASM module")})(o.instance.exports),typeof(a=o.instance.exports).aes_hmac_new==C&&(ou=a,au=0)}(t,e),cu=!0}catch(t){throw function(t){Jc=t}(t),t}}(e,t).catch(t=>{throw su=null,t})}return su}}),_t({CompressionStreamFallback:eu,DecompressionStreamFallback:ru}),_t({workerURI:new URL("./zip-web-worker.js",import.meta.url).href,wasmURI:new URL("./zip-module.wasm",import.meta.url).href});export{ro as BlobReader,no as BlobWriter,Jn as Data64URIReader,Qn as Data64URIWriter,ut as ERR_ABORTED,ka as ERR_AMBIGUOUS_ARCHIVE,Aa as ERR_BAD_FORMAT,xa as ERR_CENTRAL_DIRECTORY_NOT_FOUND,hr as ERR_CODEC_OUT_OF_MEMORY,qi as ERR_DUPLICATED_NAME,Ia as ERR_ENCRYPTED,Ma as ERR_ENCRYPTED_CENTRAL_DIRECTORY,Ca as ERR_ENTRY_DATA_OUT_OF_BOUNDS,Da as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,Ra as ERR_EOCDR_NOT_FOUND,za as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,_n as ERR_HTTP_RANGE,Ln as ERR_HTTP_RESOURCE_CHANGED,Nn as ERR_HTTP_STATUS,be as ERR_INVALID_AUTHENTICATION_CODE,bt as ERR_INVALID_BASE_URI,er as ERR_INVALID_CODEC_DEFINITION,nr as ERR_INVALID_CODEC_MODULE,Xi as ERR_INVALID_COMMENT,$i as ERR_INVALID_COMMENT_TYPE,mr as ERR_INVALID_COMPRESSED_DATA,yr as ERR_INVALID_CRC32,ts as ERR_INVALID_DATE,ns as ERR_INVALID_ENCRYPTION_STRENGTH,Cs as ERR_INVALID_ENTRY,Ji as ERR_INVALID_ENTRY_COMMENT,Qi as ERR_INVALID_ENTRY_COMMENT_TYPE,es as ERR_INVALID_ENTRY_NAME,ss as ERR_INVALID_EXTRAFIELD,ls as ERR_INVALID_EXTRAFIELD_DATA,us as ERR_INVALID_EXTRAFIELD_DATA_TYPE,cs as ERR_INVALID_EXTRAFIELD_TYPE,_a as ERR_INVALID_FILENAME_VALIDATION,at as ERR_INVALID_FUNCTION_OPTION,Ds as ERR_INVALID_GID,Os as ERR_INVALID_LEVEL,La as ERR_INVALID_MAX_APPENDED_DATA_SIZE,Et as ERR_INVALID_MAX_WORKERS,Is as ERR_INVALID_MSDOS_ATTRIBUTES,Us as ERR_INVALID_MSDOS_DATA,Ee as ERR_INVALID_PASSWORD,st as ERR_INVALID_PASSWORD_TYPE,ct as ERR_INVALID_PASS_THROUGH_VALUE,gs as ERR_INVALID_READER,it as ERR_INVALID_SIGNAL,Ts as ERR_INVALID_SIGNATURE_DATA,Na as ERR_INVALID_STRICTNESS,Rs as ERR_INVALID_UID,pr as ERR_INVALID_UNCOMPRESSED_SIZE,Fs as ERR_INVALID_UNIX_EXTRA_FIELD_TYPE,zs as ERR_INVALID_UNIX_ID_SIZE,xs as ERR_INVALID_UNIX_MODE,St as ERR_INVALID_URI,rs as ERR_INVALID_VERSION,Bn as ERR_ITERATOR_COMPLETED_TOO_SOON,Fa as ERR_LOCAL_FILE_HEADER_NOT_FOUND,Ta as ERR_OVERLAPPING_ENTRY,rr as ERR_RESERVED_COMPRESSION_METHOD,Oa as ERR_SPLIT_ZIP_FILE,ys as ERR_UNDEFINED_COMPRESSION_METHOD,Es as ERR_UNDEFINED_CRC32,Ss as ERR_UNDEFINED_READER,hs as ERR_UNDEFINED_UNCOMPRESSED_SIZE,bs as ERR_UNDETERMINED_SIZE,va as ERR_UNSAFE_FILENAME,or as ERR_UNSUPPORTED_COMPRESSION,Pc as ERR_UNSUPPORTED_CONTEXT,ge as ERR_UNSUPPORTED_CRYPTO_API,Ua as ERR_UNSUPPORTED_ENCRYPTION,is as ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH,os as ERR_UNSUPPORTED_ENCRYPTION_USDZ,ms as ERR_UNSUPPORTED_FORMAT,as as ERR_UNSUPPORTED_SPLIT_USDZ,Ba as ERR_UNSUPPORTED_UINT64,Gr as ERR_WORKER_STARTUP_TIMEOUT,Pn as ERR_WRITER_NOT_INITIALIZED,jn as ERR_WRITER_SIZE_NOT_WRITABLE,ks as ERR_ZIP_CRYPTO_LAST_MOD_DATE,As as ERR_ZIP_NOT_EMPTY,Fo as HttpRangeReader,xo as HttpReader,Xn as Reader,Uo as SplitDataReader,Oo as SplitDataWriter,oo as TextReader,ao as TextWriter,zo as Uint8ArrayReader,Io as Uint8ArrayWriter,Cc as VERSION,Ga as WARNING_APPENDED_DATA,vs as WARNING_CLAMPED_LAST_MODIFICATION_DATE,Wa as WARNING_COMPRESSED_PATCHED_DATA,Ms as WARNING_COMPRESSION_UNAVAILABLE,Xa as WARNING_DUPLICATE_FILENAME,Va as WARNING_MALFORMED_EXTRA_FIELD,ti as WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG,ei as WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD,ri as WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES,Qa as WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME,$a as WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY,Ja as WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY,Ka as WARNING_PREPENDED_CENTRAL_DIRECTORY,Ya as WARNING_PREPENDED_DATA,qa as WARNING_TRAILING_CENTRAL_DIRECTORY_DATA,ja as WARNING_UNKNOWN_VERSION,Za as WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA,Pa as WARNING_UNSORTED_CENTRAL_DIRECTORY,Ha as WARNING_WRAPPED_ENTRIES_COUNT,$n as Writer,li as ZipReader,fi as ZipReaderStream,Ws as ZipWriter,Vs as ZipWriterStream,kt as configure,_c as createBlobTempStream,vc as createOPFSTempStream,jc as createSyncAccessHandleTempStream,Uc as getMimeType,fr as getRegisteredCodecs,Oc as getSupportedCompressionMethods,wi as isZipFile,cr as registerCodec,Lt as resetConfiguration,lu as terminateWorkers,ur as unregisterCodec};
1
+ const t=4294967295,e=65535,r=255,n=67324752,o=134695760,a=o,i=84233040,s=33639248,c=101010256,l=101075792,u=117853008,f=46,w=22,d=20,p=56,m=39169,h=21589,y=6534,E=30837,b=30805,S=2048,g=61440,A=16384,R=2048,x=1024,D="/",F=30,z=new Date(2107,11,31,23,59,58),I=new Date(1980,0,1),U=void 0,T=1/0,O="undefined",C="function",k="object",M="string",N="boolean",v=new Uint8Array,_=Symbol.asyncDispose||Symbol(),L="password",B="rawPassword",P="passThrough",W="signal",j="useWebWorkers",V="useCompressionStream",Z="preventClose",H="level",G="useUnicodeFileNames",Y="dataDescriptor",K="offset",q="usdz",X="maxAppendedDataSize",$="entry",J="filename",Q="comment",tt="strict",et="balanced",rt="tolerant",nt="compressed",ot="Invalid option (must be a function)",at="Invalid signal (must be an AbortSignal instance)",it="Invalid password (password must be a string, rawPassword must be a Uint8Array)",st="Invalid passThrough option (must be a boolean or 'compressed')",ct="The operation was aborted";function lt(t){if(t&&typeof t!=C)throw new Error(ot);return t}function ut(t){if(t&&(typeof t.addEventListener!=C||typeof t.aborted!=N))throw new Error(at);return t||U}function ft(t){if(t&&t.aborted)throw t.reason===U?new DOMException(ct,"AbortError"):t.reason}function wt(t,e){if(t&&typeof t!=M||e&&!(e instanceof Uint8Array))throw new Error(it)}function dt(t){if(t!==U&&typeof t!=N&&t!==nt)throw new Error(st);return t}function pt(t,e,r){if(!Number.isInteger(t)||t<0||t>e)throw new Error(r)}function mt(t,e,r){t!==U&&pt(t,e,r)}function ht(t){return typeof t==M&&t.trim()?Number(t):t}const yt=262144,Et="Invalid maxWorkers (must be an integer greater than 0)",bt="Invalid baseURI (must be a string)",St="Invalid URI (must be a string or a function returning a string)";let gt=2;try{typeof navigator!=O&&navigator.hardwareConcurrency&&(gt=navigator.hardwareConcurrency)}catch{}const At={workerURI:"./core/web-worker-wasm.js",wasmURI:"./core/streams/zlib-wasm/zlib-streams.wasm",chunkSize:yt,maxWorkers:gt,terminateWorkerTimeout:5e3,workerStarvationTimeout:5e3,workerStartupTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,transferStreams:!0,CompressionStream:typeof CompressionStream!=O&&CompressionStream,DecompressionStream:typeof DecompressionStream!=O&&DecompressionStream},Rt="maxWorkers",xt="baseURI",Dt=["wasmURI","workerURI"],Ft=["chunkSize",Rt,"terminateWorkerTimeout","workerStarvationTimeout","workerStartupTimeout"],zt=["createWorker","CompressionStream","DecompressionStream","CompressionStreamFallback","DecompressionStreamFallback"],It=[xt,...Dt,"useCompressionStream","useWebWorkers","transferStreams",...Ft,...zt],Ut={...At};function Tt(){return Ut}function Ot(t){return Ct(t.chunkSize)}function Ct(t){return t=ht(t),Number.isInteger(t)&&t>=1?Math.max(t,64):yt}function kt(t){Object.assign(Ut,Mt(vt(t)))}function Mt(t){const e={};for(const r of It){const n=t[r];n!==U&&(e[r]=Nt(r,n))}return e}function Nt(t,e){if(Ft.includes(t)){if(e=ht(e),t==Rt&&(!Number.isInteger(e)||e<1))throw new Error(Et)}else if(zt.includes(t))lt(e);else if(t==xt){if(e&&typeof e!=M)throw new Error(bt)}else if(Dt.includes(t)&&e&&typeof e!=M&&typeof e!=C)throw new Error(St);return e}function vt(t){t=t||{};const{CompressionStreamZlib:e,DecompressionStreamZlib:r}=t;if(e===U&&r===U)return t;const n=Object.assign({},t);return n.CompressionStreamFallback===U&&(n.CompressionStreamFallback=e),n.DecompressionStreamFallback===U&&(n.DecompressionStreamFallback=r),n}function _t(t){const e=Mt(vt(t));Object.assign(At,e),Object.assign(Ut,e)}function Lt(){for(const t of It)delete Ut[t];Object.assign(Ut,At)}function Bt(t,e){const r=new Uint8Array(t.length+e.length);return r.set(t),r.set(e,t.length),r}function Pt(t){return t.byteOffset||t.byteLength!=t.buffer.byteLength?new Uint8Array(t):t}function Wt(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function jt(t){return Boolean(t)&&"object"==typeof t}const Vt=[[],[],[],[],[],[],[],[]];for(let t=0;t<256;t++){let e=t;for(let t=0;t<8;t++)e=1&e?e>>>1^3988292384:e>>>1;Vt[0][t]=e}for(let t=0;t<256;t++)for(let e=1;e<8;e++){const r=Vt[e-1][t];Vt[e][t]=r>>>8^Vt[0][255&r]}const[Zt,Ht,Gt,Yt,Kt,qt,Xt,$t]=Vt;class Jt{constructor(t){this.o=t||-1}append(t){let e=0|this.o;const r=0|t.length;let n=0;if(r>=8&&t.buffer){const o=new DataView(t.buffer,t.byteOffset,r),a=r-8;for(;n<=a;n+=8){const t=e^o.getInt32(n,!0),r=o.getInt32(n+4,!0);e=$t[255&t]^Xt[t>>>8&255]^qt[t>>>16&255]^Kt[t>>>24&255]^Yt[255&r]^Gt[r>>>8&255]^Ht[r>>>16&255]^Zt[r>>>24&255]}}for(;n<r;n++)e=e>>>8^Zt[255&(e^t[n])];this.o=e}get(){return~this.o}}class Qt extends TransformStream{constructor(){let t;const e=new Jt;super({transform(t,r){e.append(t),r.enqueue(t)},flush(){const r=new Uint8Array(4);new DataView(r.buffer).setUint32(0,e.get()),t.value=r}}),t=this}}function te(t){if(typeof TextEncoder==O){t=unescape(encodeURIComponent(t));const e=new Uint8Array(t.length);for(let r=0;r<e.length;r++)e[r]=t.charCodeAt(r);return e}return(new TextEncoder).encode(t)}const ee=64,re=20,ne=new Uint8Array([128]),oe=new Uint8Array(1),ae=new Int32Array([1732584193,4023233417,2562383102,271733878,3285377520]),ie=new Uint8Array(256),se=new Int32Array(256),ce=new Int32Array(256),le=new Int32Array(256),ue=new Int32Array(256);let fe=!1;function we(t,e){!function(){if(!fe){let t=1,e=1;do{t=255&(t^t<<1^(128&t?27:0)),e=255&(e^e<<1),e=255&(e^e<<2),e=255&(e^e<<4),128&e&&(e^=9),ie[t]=255&(e^(e<<1|e>>7)^(e<<2|e>>6)^(e<<3|e>>5)^(e<<4|e>>4)^99)}while(1!=t);ie[0]=99;for(let t=0;t<256;t++){const e=ie[t],r=he(e),n=r<<24|e<<16|e<<8|r^e;se[t]=n,ce[t]=n>>>8|n<<24,le[t]=n>>>16|n<<16,ue[t]=n>>>24|n<<8}fe=!0}}();const r=new Int32Array(60),n=function(t,e){const r=t.length>>2,n=r+6,o=4*(n+1);let a=1;for(let n=0;n<r;n++)e[n]=t[4*n]<<24|t[4*n+1]<<16|t[4*n+2]<<8|t[4*n+3];for(let t=r;t<o;t++){let n=e[t-1];t%r==0?(n=pe(n<<8|n>>>24)^a<<24,a=he(a)):r>6&&t%r==4&&(n=pe(n)),e[t]=e[t-r]^n}return n}(t,r),o=new Int32Array(4),a=de(e);let i=0,s=0,c=0,l=0;return{process(t,e){e&&a.update(t,0,t.length),function(t){const e=new DataView(t.buffer,t.byteOffset,t.byteLength),r=t.length;let n=0;for(;n+16<=r;n+=16)u(),e.setInt32(n,e.getInt32(n)^o[0]),e.setInt32(n+4,e.getInt32(n+4)^o[1]),e.setInt32(n+8,e.getInt32(n+8)^o[2]),e.setInt32(n+12,e.getInt32(n+12)^o[3]);if(n<r){u();for(let e=0;n<r;n++,e++)t[n]^=o[e>>2]>>>24-8*(3&e)}}(t),e||a.update(t,0,t.length)},digest:()=>a.digest()};function u(){i=i+1|0,i||(s=s+1|0,s||(c=c+1|0,c||(l=l+1|0)));let t=me(i)^r[0],e=me(s)^r[1],a=me(c)^r[2],u=me(l)^r[3],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[4],w=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[5],d=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[6],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[7];t=se[f>>>24]^ce[w>>>16&255]^le[d>>>8&255]^ue[255&p]^r[8],e=se[w>>>24]^ce[d>>>16&255]^le[p>>>8&255]^ue[255&f]^r[9],a=se[d>>>24]^ce[p>>>16&255]^le[f>>>8&255]^ue[255&w]^r[10],u=se[p>>>24]^ce[f>>>16&255]^le[w>>>8&255]^ue[255&d]^r[11],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[12],w=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[13],d=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[14],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[15],t=se[f>>>24]^ce[w>>>16&255]^le[d>>>8&255]^ue[255&p]^r[16],e=se[w>>>24]^ce[d>>>16&255]^le[p>>>8&255]^ue[255&f]^r[17],a=se[d>>>24]^ce[p>>>16&255]^le[f>>>8&255]^ue[255&w]^r[18],u=se[p>>>24]^ce[f>>>16&255]^le[w>>>8&255]^ue[255&d]^r[19],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[20],w=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[21],d=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[22],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[23],t=se[f>>>24]^ce[w>>>16&255]^le[d>>>8&255]^ue[255&p]^r[24],e=se[w>>>24]^ce[d>>>16&255]^le[p>>>8&255]^ue[255&f]^r[25],a=se[d>>>24]^ce[p>>>16&255]^le[f>>>8&255]^ue[255&w]^r[26],u=se[p>>>24]^ce[f>>>16&255]^le[w>>>8&255]^ue[255&d]^r[27],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[28],w=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[29],d=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[30],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[31],t=se[f>>>24]^ce[w>>>16&255]^le[d>>>8&255]^ue[255&p]^r[32],e=se[w>>>24]^ce[d>>>16&255]^le[p>>>8&255]^ue[255&f]^r[33],a=se[d>>>24]^ce[p>>>16&255]^le[f>>>8&255]^ue[255&w]^r[34],u=se[p>>>24]^ce[f>>>16&255]^le[w>>>8&255]^ue[255&d]^r[35],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[36],w=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[37],d=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[38],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[39];let m=40;n>10&&(t=se[f>>>24]^ce[w>>>16&255]^le[d>>>8&255]^ue[255&p]^r[40],e=se[w>>>24]^ce[d>>>16&255]^le[p>>>8&255]^ue[255&f]^r[41],a=se[d>>>24]^ce[p>>>16&255]^le[f>>>8&255]^ue[255&w]^r[42],u=se[p>>>24]^ce[f>>>16&255]^le[w>>>8&255]^ue[255&d]^r[43],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[44],w=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[45],d=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[46],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[47],m=48),n>12&&(t=se[f>>>24]^ce[w>>>16&255]^le[d>>>8&255]^ue[255&p]^r[48],e=se[w>>>24]^ce[d>>>16&255]^le[p>>>8&255]^ue[255&f]^r[49],a=se[d>>>24]^ce[p>>>16&255]^le[f>>>8&255]^ue[255&w]^r[50],u=se[p>>>24]^ce[f>>>16&255]^le[w>>>8&255]^ue[255&d]^r[51],f=se[t>>>24]^ce[e>>>16&255]^le[a>>>8&255]^ue[255&u]^r[52],w=se[e>>>24]^ce[a>>>16&255]^le[u>>>8&255]^ue[255&t]^r[53],d=se[a>>>24]^ce[u>>>16&255]^le[t>>>8&255]^ue[255&e]^r[54],p=se[u>>>24]^ce[t>>>16&255]^le[e>>>8&255]^ue[255&a]^r[55],m=56),o[0]=(ie[f>>>24]<<24|ie[w>>>16&255]<<16|ie[d>>>8&255]<<8|ie[255&p])^r[m],o[1]=(ie[w>>>24]<<24|ie[d>>>16&255]<<16|ie[p>>>8&255]<<8|ie[255&f])^r[m+1],o[2]=(ie[d>>>24]<<24|ie[p>>>16&255]<<16|ie[f>>>8&255]<<8|ie[255&w])^r[m+2],o[3]=(ie[p>>>24]<<24|ie[f>>>16&255]<<16|ie[w>>>8&255]<<8|ie[255&d])^r[m+3]}}function de(t){const e=function(){const t=new Int32Array(ae),e=new Int32Array(16),r=new Uint8Array(ee),n=new DataView(r.buffer),o=new Uint8Array(8);let a=0,i=0;return{update:s,digest:function(){const e=8*i,r=Math.floor(e/4294967296),n=e>>>0;for(s(ne,0,1);56!=a;)s(oe,0,1);o[0]=r>>>24,o[1]=r>>>16,o[2]=r>>>8,o[3]=r,o[4]=n>>>24,o[5]=n>>>16,o[6]=n>>>8,o[7]=n,s(o,0,8);const c=new Uint8Array(re),l=new DataView(c.buffer);for(let e=0;e<t.length;e++)l.setInt32(4*e,t[e]);return t.set(ae),a=0,i=0,c}};function s(t,e,o){const s=e+o;if(i+=o,a){for(;e<s&&a<ee;)r[a++]=t[e++];a==ee&&(c(n,0),a=0)}if(e+ee<=s){const r=new DataView(t.buffer,t.byteOffset,t.byteLength);for(;e+ee<=s;e+=ee)c(r,e)}for(;e<s;)r[a++]=t[e++]}function c(r,n){for(let t=0;t<16;t++)e[t]=r.getInt32(n+4*t);let o,a=t[0],i=t[1],s=t[2],c=t[3],l=t[4];for(let t=0;t<15;t+=5)l=(a<<5|a>>>27)+((s^c)&i^c)+l+1518500249+e[t]|0,i=i<<30|i>>>2,c=(l<<5|l>>>27)+((i^s)&a^s)+c+1518500249+e[t+1]|0,a=a<<30|a>>>2,s=(c<<5|c>>>27)+((a^i)&l^i)+s+1518500249+e[t+2]|0,l=l<<30|l>>>2,i=(s<<5|s>>>27)+((l^a)&c^a)+i+1518500249+e[t+3]|0,c=c<<30|c>>>2,a=(i<<5|i>>>27)+((c^l)&s^l)+a+1518500249+e[t+4]|0,s=s<<30|s>>>2;l=(a<<5|a>>>27)+((s^c)&i^c)+l+1518500249+e[15]|0,i=i<<30|i>>>2,o=e[13]^e[8]^e[2]^e[0],o=o<<1|o>>>31,e[0]=o,c=(l<<5|l>>>27)+((i^s)&a^s)+c+1518500249+o|0,a=a<<30|a>>>2,o=e[14]^e[9]^e[3]^e[1],o=o<<1|o>>>31,e[1]=o,s=(c<<5|c>>>27)+((a^i)&l^i)+s+1518500249+o|0,l=l<<30|l>>>2,o=e[15]^e[10]^e[4]^e[2],o=o<<1|o>>>31,e[2]=o,i=(s<<5|s>>>27)+((l^a)&c^a)+i+1518500249+o|0,c=c<<30|c>>>2,o=e[0]^e[11]^e[5]^e[3],o=o<<1|o>>>31,e[3]=o,a=(i<<5|i>>>27)+((c^l)&s^l)+a+1518500249+o|0,s=s<<30|s>>>2;for(let t=20;t<40;t+=5)o=e[t-3&15]^e[t-8&15]^e[t-14&15]^e[15&t],o=o<<1|o>>>31,e[15&t]=o,l=(a<<5|a>>>27)+(i^s^c)+l+1859775393+o|0,i=i<<30|i>>>2,o=e[t-2&15]^e[t-7&15]^e[t-13&15]^e[t+1&15],o=o<<1|o>>>31,e[t+1&15]=o,c=(l<<5|l>>>27)+(a^i^s)+c+1859775393+o|0,a=a<<30|a>>>2,o=e[t-1&15]^e[t-6&15]^e[t-12&15]^e[t+2&15],o=o<<1|o>>>31,e[t+2&15]=o,s=(c<<5|c>>>27)+(l^a^i)+s+1859775393+o|0,l=l<<30|l>>>2,o=e[15&t]^e[t-5&15]^e[t-11&15]^e[t+3&15],o=o<<1|o>>>31,e[t+3&15]=o,i=(s<<5|s>>>27)+(c^l^a)+i+1859775393+o|0,c=c<<30|c>>>2,o=e[t+1&15]^e[t-4&15]^e[t-10&15]^e[t+4&15],o=o<<1|o>>>31,e[t+4&15]=o,a=(i<<5|i>>>27)+(s^c^l)+a+1859775393+o|0,s=s<<30|s>>>2;for(let t=40;t<60;t+=5)o=e[t-3&15]^e[t-8&15]^e[t-14&15]^e[15&t],o=o<<1|o>>>31,e[15&t]=o,l=(a<<5|a>>>27)+(i&s|(i|s)&c)+l+2400959708+o|0,i=i<<30|i>>>2,o=e[t-2&15]^e[t-7&15]^e[t-13&15]^e[t+1&15],o=o<<1|o>>>31,e[t+1&15]=o,c=(l<<5|l>>>27)+(a&i|(a|i)&s)+c+2400959708+o|0,a=a<<30|a>>>2,o=e[t-1&15]^e[t-6&15]^e[t-12&15]^e[t+2&15],o=o<<1|o>>>31,e[t+2&15]=o,s=(c<<5|c>>>27)+(l&a|(l|a)&i)+s+2400959708+o|0,l=l<<30|l>>>2,o=e[15&t]^e[t-5&15]^e[t-11&15]^e[t+3&15],o=o<<1|o>>>31,e[t+3&15]=o,i=(s<<5|s>>>27)+(c&l|(c|l)&a)+i+2400959708+o|0,c=c<<30|c>>>2,o=e[t+1&15]^e[t-4&15]^e[t-10&15]^e[t+4&15],o=o<<1|o>>>31,e[t+4&15]=o,a=(i<<5|i>>>27)+(s&c|(s|c)&l)+a+2400959708+o|0,s=s<<30|s>>>2;for(let t=60;t<80;t+=5)o=e[t-3&15]^e[t-8&15]^e[t-14&15]^e[15&t],o=o<<1|o>>>31,e[15&t]=o,l=(a<<5|a>>>27)+(i^s^c)+l+3395469782+o|0,i=i<<30|i>>>2,o=e[t-2&15]^e[t-7&15]^e[t-13&15]^e[t+1&15],o=o<<1|o>>>31,e[t+1&15]=o,c=(l<<5|l>>>27)+(a^i^s)+c+3395469782+o|0,a=a<<30|a>>>2,o=e[t-1&15]^e[t-6&15]^e[t-12&15]^e[t+2&15],o=o<<1|o>>>31,e[t+2&15]=o,s=(c<<5|c>>>27)+(l^a^i)+s+3395469782+o|0,l=l<<30|l>>>2,o=e[15&t]^e[t-5&15]^e[t-11&15]^e[t+3&15],o=o<<1|o>>>31,e[t+3&15]=o,i=(s<<5|s>>>27)+(c^l^a)+i+3395469782+o|0,c=c<<30|c>>>2,o=e[t+1&15]^e[t-4&15]^e[t-10&15]^e[t+4&15],o=o<<1|o>>>31,e[t+4&15]=o,a=(i<<5|i>>>27)+(s^c^l)+a+3395469782+o|0,s=s<<30|s>>>2;t[0]=t[0]+a|0,t[1]=t[1]+i|0,t[2]=t[2]+s|0,t[3]=t[3]+c|0,t[4]=t[4]+l|0}}(),r=new Uint8Array(ee),n=new Uint8Array(ee);t.length>ee&&(e.update(t,0,t.length),t=e.digest());for(let e=0;e<ee;e++){const o=e<t.length?t[e]:0;r[e]=54^o,n[e]=92^o}return e.update(r,0,ee),{update(t,r,n){e.update(t,r,n)},digest(){const t=e.digest();e.update(n,0,ee),e.update(t,0,re);const o=e.digest();return e.update(r,0,ee),o}}}function pe(t){return ie[t>>>24]<<24|ie[t>>>16&255]<<16|ie[t>>>8&255]<<8|ie[255&t]}function me(t){return t<<24|(65280&t)<<8|t>>>8&65280|t>>>24}function he(t){return 255&(t<<1^27*(t>>7))}const ye=typeof crypto!=O&&typeof crypto.getRandomValues==C,Ee="Invalid password",be="Invalid authentication code",Se="zipjs-abort-check-password",ge="Crypto API not supported";function Ae(t){if(ye)return crypto.getRandomValues(t);throw new Error(ge)}const Re={name:"PBKDF2"},xe=Object.assign({hash:{name:"HMAC"}},Re),De=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},Re),Fe=["deriveBits"],ze=[8,12,16],Ie=[16,24,32],Ue=10,Te=typeof crypto!=O,Oe=Te&&crypto.subtle;let Ce=Te&&typeof Oe!=O&&typeof Oe.importKey==C&&typeof Oe.deriveBits==C,ke=we;class Me extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r,checkPasswordOnly:n,checkAuthenticationCode:o=!0}){const a={};super({start(){ve(a,t,e,r)},async transform(t,e){const{password:r,strength:o,l:i,ready:s}=a;if(r?(await async function(t,e,r,n){const o=await Pe(t,e,r,je(n,0,ze[e])),a=je(n,ze[e]);if(o[0]!=a[0]||o[1]!=a[1])throw Be(t),new Error(Ee)}(a,o,r,je(t,0,ze[o]+2)),t=je(t,ze[o]+2),n?(Be(a),e.error(new Error(Se))):i()):await s,a.m)return;const c=new Uint8Array(t.length-Ue-(t.length-Ue)%16);e.enqueue(Le(a,t,c,0,Ue,!0))},async flush(t){const{h:e,S:r,ready:n}=a;if(e){if(await n,a.m)return;const i=je(r,r.length-Ue),s=new Uint8Array(je(r,0,r.length-Ue));e.process(s,!0);const c=e.digest();let l=r.length<Ue?1:0;for(let t=0;t<Ue;t++)l|=c[t]^i[t];if(l&&o)return void t.error(new Error(be));t.enqueue(s)}}}),_e(this,a)}}class Ne extends TransformStream{constructor({password:t,rawPassword:e,encryptionStrength:r}){const n={};super({start(){ve(n,t,e,r)},async transform(t,e){const{password:r,strength:o,l:a,ready:i}=n;let s=v;if(r?(s=await async function(t,e,r){const n=Ae(new Uint8Array(ze[e]));return Bt(n,await Pe(t,e,r,n))}(n,o,r),a()):await i,n.m)return;const c=new Uint8Array(s.length+t.length-t.length%16);c.set(s,0),e.enqueue(Le(n,t,c,s.length,0,!1))},async flush(t){const{h:e,S:r,ready:o}=n;if(e){if(await o,n.m)return;const a=new Uint8Array(r);e.process(a,!1);const i=je(e.digest(),0,Ue);t.enqueue(Bt(a,i))}}}),_e(this,n)}}function ve(t,e,r,n){Object.assign(t,{ready:new Promise(e=>t.l=e),password:We(e,r),strength:n-1,S:v,m:!1})}function _e(t,e){const r=t.readable.getReader(),n=new ReadableStream({async pull(t){try{const{value:e,done:n}=await r.read();n?t.close():t.enqueue(e)}catch(t){throw Be(e),r.cancel(t).catch(()=>{}),t}},cancel:t=>(Be(e),r.cancel(t))});Object.defineProperty(t,"readable",{get:()=>n})}function Le(t,e,r,n,o,a){const{h:i,S:s}=t;s.length&&(e=Bt(s,e));const c=e.length-o,l=c-c%16;if(r=function(t,e){if(e&&e>t.length){const r=t;(t=new Uint8Array(e)).set(r,0)}return t}(r,n+l),l){const t=je(r,n,n+l);t.set(je(e,0,l)),i.process(t,a)}return t.S=je(e,l),r}function Be(t){const{h:e}=t;t.m=!0,e&&e.dispose&&e.dispose()}async function Pe(t,e,r,n){t.password=null;const o=Ie[e],a=await async function(t,e,r){if(Ce)try{const n=await Oe.importKey("raw",t,xe,!1,Fe);return new Uint8Array(await Oe.deriveBits(Object.assign({salt:e},De),n,8*r))}catch{Ce=!1}return function(t,e,r,n){const o=de(t),a=new Uint8Array(n),i=new Uint8Array(e.length+4),s=new DataView(i.buffer);i.set(e);for(let t=1,r=0;r<n;t++,r+=re){s.setUint32(e.length,t),o.update(i,0,i.length);let c=o.digest();const l=c.slice();for(let t=1;t<1e3;t++){o.update(c,0,re),c=o.digest();for(let t=0;t<re;t++)l[t]^=c[t]}a.set(l.subarray(0,Math.min(re,n-r)),r)}return a}(t,e,0,r)}(r,n,2*o+2);return t.h=ke(je(a,0,o),je(a,o,2*o)),t.m&&Be(t),je(a,2*o)}function We(t,e){return e===U?te(t):e}function je(t,e,r){return t.subarray(e,r)}class Ve extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r,checkPasswordOnly:n}){super({start(){He(this,t,e,r)},transform(t,e){const r=this;if(r.password||r.rawPassword){const e=Ge(r,t.subarray(0,12));if(r.password=r.rawPassword=null,0!=(e[11]^r.passwordVerification))throw new Error(Ee);t=t.subarray(12)}n?e.error(new Error(Se)):e.enqueue(Ge(r,t))}})}}class Ze extends TransformStream{constructor({password:t,rawPassword:e,passwordVerification:r}){super({start(){He(this,t,e,r)},transform(t,e){const r=this;let n,o;if(r.password||r.rawPassword){r.password=r.rawPassword=null;const e=Ae(new Uint8Array(12));e[11]=r.passwordVerification,n=new Uint8Array(t.length+e.length),n.set(Ye(r,e),0),o=12}else n=new Uint8Array(t.length),o=0;n.set(Ye(r,t),o),e.enqueue(n)}})}}function He(t,e,r,n){Object.assign(t,{password:e,rawPassword:r,passwordVerification:n}),function(t,e,r){const n=[305419896,591751049,878082192];if(Object.assign(t,{A:n,R:new Jt(n[0]),D:new Jt(n[2])}),r)for(let e=0;e<r.length;e++)Ke(t,r[e]);else for(let r=0;r<e.length;r++)Ke(t,e.charCodeAt(r))}(t,e,r)}function Ge(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=qe(t)^e[n],Ke(t,r[n]);return r}function Ye(t,e){const r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=qe(t)^e[n],Ke(t,e[n]);return r}function Ke(t,e){let[,r]=t.A;t.R.append([e]);const n=~t.R.get();r=$e(Math.imul($e(r+Xe(n)),134775813)+1),t.D.append([r>>>24]);const o=~t.D.get();t.A=[n,r,o]}function qe(t){const e=2|t.A[2];return Xe(Math.imul(e,1^e)>>>8)}function Xe(t){return 255&t}function $e(t){return 4294967295&t}function Je(t){if(t instanceof ReadableStream)return t;const e=t.getReader();return new ReadableStream({async pull(t){try{const{value:r,done:n}=await e.read();n?t.close():t.enqueue(r)}catch(t){throw e.cancel(t).catch(()=>{}),t}},cancel:t=>e.cancel(t)})}function Qe(t,e){t=Je(t);const r=e?{type:e}:{};if(typeof Blob.prototype.stream!=C||new Blob([]).stream()instanceof ReadableStream)return new Response(t).blob().then(t=>e?new Blob([t],r):t);const n=[];return t.pipeTo(new WritableStream({write(t){n.push(t)}})).then(()=>new Blob(n,r))}function tr(t){if(t instanceof WritableStream)return t;const e=t.getWriter();return new WritableStream({write:t=>e.write(t),close:()=>e.close(),abort:t=>e.abort(t)})}const er="Invalid codec definition",rr="Reserved compression method",nr="Invalid codec module",or="Compression method not supported",ar=[0,8,9,99],ir=new Map,sr=new Map;function cr(t={}){const{compressionMethod:r,format:n,codecURI:o,CompressionStream:a,DecompressionStream:i,versionNeeded:s}=t;if(!Number.isInteger(r)||r<0||r>e||typeof n!=M||!n.length)throw new Error(er);if(ar.includes(r))throw new Error(rr);const c=typeof a==C||typeof i==C;if(!(c||typeof o==M&&o.length))throw new Error(er);ir.set(r,{compressionMethod:r,format:n,codecURI:o,versionNeeded:s}),c&&dr(n,{CompressionStream:a,DecompressionStream:i})}function lr(t){const e=ir.get(t);if(e){let r;ir.delete(t),ir.forEach(t=>r=r||t.format==e.format),r||sr.delete(e.format)}}function ur(t){return ir.get(t)}function fr(){return Array.from(ir.values(),t=>Object.assign({},t,sr.get(t.format)))}function wr(t){return sr.get(t)}function dr(t,e){const{CompressionStream:r,DecompressionStream:n}=e;if(typeof r!=C&&typeof n!=C)throw new Error(nr);sr.set(t,{CompressionStream:r,DecompressionStream:n})}const pr="Invalid uncompressed size",mr="Invalid compressed data",hr="Codec out of memory",yr="Invalid CRC32",Er="deflate-raw",br="deflate64-raw",Sr="gzip",gr=[31,139,8];class Ar extends TransformStream{constructor(t,{chunkSize:e,CompressionStreamFallback:r,CompressionStream:n}){super({});const{compressed:o,encrypted:a,useCompressionStream:i,zipCrypto:s,computeCrc32:c,level:l,deflate64:u,format:f,compressionMethod:w,inputSize:d}=t,p=this;let m,h,y,E=super.readable;const b=f&&wr(f),S=Tr(i,n,r),g=c&&o&&!u&&!b&&(!a||s)&&Boolean(S);if(a&&!s||!c||g||(m=new Qt,E=Cr(E,m)),o)if(b)E=kr(E,Ur(b.CompressionStream,f,{level:l,chunkSize:e,compressionMethod:w,uncompressedSize:d}));else if(g)y=new Rr,E=kr(E,new S(Sr,{level:l,chunkSize:e})),E=Cr(E,y);else try{E=Or(E,i,{level:l,chunkSize:e},n,r)}catch(t){if(!i&&r)throw Lr(t);let e;try{e=new n(Sr)}catch{throw Lr(t)}E=kr(E,e),E=Cr(E,new Rr)}a&&(s?E=Cr(E,new Ze(t)):(h=new Ne(t),E=Cr(E,h))),Ir(p,E,()=>{a&&!s||!c||(p.crc32=g?y.crc32:new DataView(m.value.buffer).getUint32(0))})}}class Rr extends TransformStream{constructor(){let t,e=10,r=new Uint8Array(0);super({transform(t,n){if(e){const r=Math.min(e,t.length);if(e-=r,!(t=t.subarray(r)).length)return}const o=r.length+t.length;if(o<=8)return void(r=Bt(r,t));const a=o-8,i=Math.min(a,r.length);n.enqueue(Bt(r.subarray(0,i),t.subarray(0,a-i))),r=Bt(r.subarray(i),t.subarray(a-i))},flush(){const e=Wt(r);t.crc32=e.getUint32(0,!0),t.uncompressedSize=e.getUint32(4,!0)}}),t=this}}class xr extends TransformStream{constructor(t,{chunkSize:e,DecompressionStreamFallback:r,DecompressionStream:n}){super({});const{zipCrypto:o,encrypted:a,checkCrc32:i,crc32:s,compressed:c,useCompressionStream:l,deflate64:u,format:f,compressionMethod:w,rawBitFlag:d,outputSize:p}=t;let m,h,y,E=super.readable;if(a&&(o?E=Cr(E,new Ve(t)):(h=new Me(t),E=Cr(E,h))),c){const t=new Set,o=f&&wr(f);let a;if(o)E=kr(E,Ur(o.DecompressionStream,f,{chunkSize:e,compressionMethod:w,rawBitFlag:d,uncompressedSize:p}),t);else{const o=Tr(l,n,r);if(i&&!u&&s!==U&&p!==U&&o)try{a=new o(Sr,{chunkSize:e})}catch{a=U}if(!a)try{E=Or(E,l,{chunkSize:e,deflate64:u},n,r,t)}catch(t){if(u||p===U||!l&&r)throw Lr(t);try{a=new n(Sr)}catch{throw Lr(t)}}}a?(y=!0,E=function(t,e,r,n,o){const a=e.writable.getWriter(),i=e.readable.getReader(),s=n===U?new Jt:U;let c,l,u=0,f=!1,w=!1;const d=new ReadableStream({start(t){l=t},pull(){h()},cancel:t=>(w=!0,h(),i.cancel(t))});return async function(){const e=t.getReader();try{const t=new Uint8Array(10);for(t.set(gr),await a.write(t);;){await m(),await a.ready;const{value:t,done:r}=await vr(e,o);if(r)break;await a.write(t)}s&&await a.write(new Uint8Array(0));const i=new Uint8Array(8),c=Wt(i);c.setUint32(0,s?s.get():n,!0),c.setUint32(4,r,!0),f=!0,await a.write(i),await a.close()}catch(t){await Mr(a,t),await Nr(e,t)}}(),async function(){try{for(;;){const{value:t,done:e}=await p();if(e)break;if(u+=t.length,u>r)throw new Error(pr);s&&s.append(t),l.enqueue(t)}w||(w=!0,l.close())}catch(t){!function(t){w||(w=!0,l.error(t),h())}(t),await Nr(i,t)}}(),d;function p(){return i.read().catch(t=>{if(f){if(!s)throw Pr(t,yr);if(u!=r)throw Pr(t,pr);return{done:!0}}throw _r(t,o)})}function m(){if(!w&&l.desiredSize<=0)return new Promise(t=>c=t)}function h(){if(c){const t=c;c=U,t()}}}(E,a,p,s,t)):E=function(t,e){const r=t.getReader();return new ReadableStream({async pull(t){try{const{value:e,done:n}=await r.read();n?t.close():t.enqueue(e)}catch(t){throw await Nr(r,t),_r(t,e)}},cancel:t=>r.cancel(t)})}(E,t)}i&&!y&&(m=new Qt,E=Cr(E,m)),Ir(this,E,()=>{if(m){const t=new DataView(m.value.buffer).getUint32(0,!1);if(s!=t)throw new Error(yr)}})}}const Dr=new Map;function Fr(t,e){if(!t)return!1;let r=Dr.get(t);r||(r=new Map,Dr.set(t,r));let n=r.get(e);if(n===U){try{new t(e),n=!0}catch{n=!1}r.set(e,n)}return n}function zr(t){return Fr(t,Er)}function Ir(t,e,r){e=Cr(e,new TransformStream({flush:r})),Object.defineProperty(t,"readable",{get:()=>e})}function Ur(t,e,r){if(!t)throw new Error(or);return new t(e,r)}function Tr(t,e,r){return t&&e?e:r&&r.requiresModule?r:void 0}function Or(t,e,r,n,o,a){const i=e&&n?n:o||n,s=r.deflate64?br:Er;let c;try{c=new i(s,r)}catch(t){if(!e||!o||i==o)throw t;c=new o(s,r)}return kr(t,c,a)}function Cr(t,e){return Je(t).pipeThrough(e)}function kr(t,e,r){const n=e.writable.getWriter(),o=t.getReader();return async function(){try{for(;;){await n.ready;const t=await vr(o,r);if(t.done){await n.close();break}await n.write(t.value)}}catch(t){await Mr(n,t),await Nr(o,t)}}(),e.readable}async function Mr(t,e){try{await t.abort(e)}catch{}}async function Nr(t,e){try{await t.cancel(e)}catch{}}function vr(t,e){const r=t.read();return e?r.catch(t=>{throw e.add(t),t}):r}function _r(t,e){return e.has(t)?t:Pr(t,Br(t)?hr:mr)}function Lr(t){return Br(t)?Pr(t,hr):t}function Br(t){return jt(t)&&"Z_MEM_ERROR"==t.code}function Pr(t,e){const r=new Error(e);return r.cause=t,r}const Wr="data",jr="deflate",Vr="inflate";class Zr extends TransformStream{constructor(t,e){super({});const r=this,{codecType:n}=t;let o;n.startsWith(jr)?o=Ar:n.startsWith(Vr)&&(o=xr),r.outputSize=0;let a=0;const i=new o(t,e),s=super.readable,c=new TransformStream({transform(t,e){t&&t.length&&(a+=t.length,e.enqueue(t))},flush(){Object.assign(r,{inputSize:a})}}),l=new TransformStream({transform(e,n){if(e&&e.length&&(n.enqueue(e),r.outputSize+=e.length,t.outputSize!==U&&r.outputSize>t.outputSize))throw new Error(pr)},flush(){const{crc32:t}=i;Object.assign(r,{crc32:t,inputSize:a})}});Object.defineProperty(r,"readable",{get:()=>s.pipeThrough(c).pipeThrough(i).pipeThrough(l)})}}class Hr extends TransformStream{constructor(t){const e=[];let r=0,n=0;function o(){const n=new Uint8Array(t);let o=0;for(;o<t;){const r=e[0],a=t-o;r.length<=a?(n.set(r,o),o+=r.length,e.shift()):(n.set(r.subarray(0,a),o),e[0]=r.subarray(a),o+=a)}return r-=t,n}(!Number.isFinite(t)||t<1)&&(t=262144),super({transform(a,i){for(e.push(a),r+=a.length;r>t;)n+=t,i.enqueue(o())},flush(t){r&&(n+=r,t.enqueue(function(t,e){const r=new Uint8Array(e);let n=0;for(const e of t)r.set(e,n),n+=e.length;return r}(e,r)))}}),Object.defineProperty(this,"outputSize",{get:()=>n})}}const Gr="Worker startup timeout";let Yr,Kr,qr,Xr=()=>{};async function $r(t){if(Xr)try{return await Xr(t),!0}catch{}return!1}function Jr(t){t.createWorker?Kr=!0:Yr=!1}class Qr{constructor(t,{readable:e,writable:r},n,o){const{options:a,config:i,F:s,useWebWorkers:c,workerURI:l}=n;let{createWorker:u}=n;const{signal:f}=s;return Kr&&(u=U),Object.assign(t,{I:!0,U:(t.U||0)+1,readable:e.pipeThrough(new Hr(Ot(i))).pipeThrough(new tn(s),{signal:f}),writable:r,options:Object.assign({},a),T:n,workerURI:l,createWorker:u,terminate:()=>new Promise(e=>{const{O:r,I:n}=t;n?(t.C=t.C||[],t.C.push(e)):(r&&(r.terminate(),t.O=null),e()),t.M=null}),N(){if(t.I){const{C:e,O:r}=t;e&&(t.C=null,r&&(t.v=!0,r.terminate())),t.I=!1;const n=o(t);e&&e.forEach(t=>t(n))}}}),Yr===U&&(Yr=typeof Worker!=O),(c&&qr&&(Yr&&l||u)?qr:rn)(t,i)}}class tn extends TransformStream{constructor({onstart:t,onprogress:e,size:r,onend:n}){let o=0;super({async start(){t&&await en(t,r)},async transform(t,n){o+=t.length,e&&await en(e,o,r),n.enqueue(t)},async flush(){n&&await en(n,o)}})}}async function en(t,...e){try{await t(...e)}catch{}}function rn(t,e){return{run:()=>nn(t,e)}}async function nn({options:t,readable:e,writable:r,N:n,T:o},a){let i,s,c;try{if(t.compressed&&!t.format){const e=t.codecType.startsWith(jr),r=e?a.CompressionStreamFallback:a.DecompressionStreamFallback,n=e?a.CompressionStream:a.DecompressionStream;t.useCompressionStream?r&&r.requiresModule&&!zr(n)&&await l():await l()||r&&!r.requiresModule||(t.useCompressionStream=!0)}t.encrypted&&!t.zipCrypto&&await l(),i=new Zr(t,a),s=new Hr(Ot(a));const{signal:n}=o.F;await e.pipeThrough(i).pipeThrough(s).pipeTo(r,{preventClose:!0,preventAbort:!0,signal:n});const{crc32:c,inputSize:u,outputSize:f}=i;return{crc32:c,inputSize:u,outputSize:f}}catch(t){if(i){const e=s?s.outputSize:0;if(o.outputSize=e,jt(t))try{t.outputSize=e}catch{}}throw t}finally{n()}function l(){return c||(c=$r(a)),c}}const on={type:"module"},an="error",sn="abort";let cn,ln,un;var fn;function wn(t){const{reader:e}=t;e&&e.releaseLock(),t.reader=null,t.writer=null}function dn(t){const{O:e}=t;if(e)try{e.terminate()}catch{}t.M=null}function pn(t,e,r,n,o=!0){const{createWorker:a}=r;let i,s,c;if(a)i=a();else if(ln===U||cn!==t){const a=typeof t==C;s=a?t(o):t;const l=s.startsWith("data:"),u=s.startsWith("blob:");if(l||u){n===U&&(n=!1),n&&(c=on);try{i=new Worker(s,c)}catch(o){if(u)try{URL.revokeObjectURL(s)}catch{}if(a&&u)return pn(t,e,r,n,!1);if(n)throw o;return pn(t,e,r,!0,!1)}}else{n===U&&(n=!0),n&&(c=on);try{s=new URL(s,e)}catch{}try{i=new Worker(s,c)}catch(a){if(n)return pn(t,e,r,!1,o);throw a}}cn=t,ln=s,un=c}else i=new Worker(ln,un);return i.addEventListener("message",t=>{r._=!0,mn(r),async function({data:t},e){const{type:r,value:n,messageId:o,result:a,error:i,errorValue:s}=t,{reader:c,writer:l,L:u,B:f,N:w,U:d}=e,p=()=>e.U!=d;try{if(i)m(function(t,e){const{message:r,stack:n,code:o,name:a,outputSize:i,cause:s,codecImportFailed:c}=t;let l;if(l=e?e.value:Object.assign(new Error(r),{stack:n,code:o,name:a}),jt(l))try{i!==U&&(l.outputSize=i),c&&(l.codecImportFailed=!0),s&&(jt(l.cause)||(l.cause=Object.assign(new Error(s.message),{name:s.name})),s.code!==U&&l.cause.code!==s.code&&(l.cause.code=s.code)),e&&(l.name!==a&&(l.name=a),l.code!==o&&(l.code=o))}catch{}return l}(i,s));else{if("pull"==r){const{value:t,done:r}=await c.read();p()||yn({type:Wr,value:t,done:r,messageId:o},e)}if(r==Wr){const t=new Uint8Array(n);await l.ready,await l.write(t),p()||yn({type:"ack",messageId:o},e)}"close"==r&&function(t){p()||(u(t),h(),w())}(a)}}catch(i){p()||(dn(e),m(i))}function m(t){p()||(f(t),h(),jt(t)&&t.codecImportFailed||w())}function h(){l&&l.releaseLock()}}(t,r)}),i.addEventListener(an,t=>hn(t,r)),i.addEventListener("messageerror",t=>hn(t,r)),i}function mn(t){const{P:e}=t;e&&(clearTimeout(e),t.P=null)}function hn(t,e){t.preventDefault&&t.preventDefault(),mn(e);const{_:r,B:n,writer:o,N:a}=e;dn(e),r||(e.O=null);let i=t.error||new Error(t.message||an);r||(i=Object.assign(new Error(i.message||an),{W:!0}),e.j=i),n&&(n(i),o&&o.releaseLock(),r&&a())}function yn(t,{O:e,writer:r}){try{const{value:r}=t;if(r){t.value=Pt(r);try{e.postMessage(t,[t.value.buffer])}catch{e.postMessage(t)}}else e.postMessage(t)}catch(t){throw r&&r.releaseLock(),t}}fn=function(t,e){const{baseURI:r,chunkSize:n,workerStartupTimeout:o}=e;let{wasmURI:a}=e;if(!t.M){let i;typeof a==C&&(a=a());try{i=pn(t.workerURI,r,t)}catch{return Jr(t),rn(t,e)}Object.assign(t,{O:i,_:!1,v:!1,j:null,M:{run:async()=>{try{return await async function(t,e){if(!t.O){const{j:e}=t;t.j=null;const r=e||new Error(Gr);throw r.W=!0,r}let r,n;const o=new Promise((e,o)=>{r=e,n=e=>{const{outputSize:r,T:n}=t;if(n.outputSize=r,jt(e))try{e.outputSize=r}catch{}o(e)}});Object.assign(t,{reader:null,writer:null,outputSize:0,V:!1,Z:null,L:r,B:n,result:o});const{readable:a,options:i}=t,{writable:s,closed:c,H:l}=function(t,e){const r=new AbortController;let n;const{writable:o,readable:a}=new TransformStream({transform(t,r){e.outputSize+=t.length,r.enqueue(t)}}),i=a.pipeTo(t,{preventClose:!0,preventAbort:!0,signal:r.signal});i.catch(t=>{n||Object.assign(e,{V:!0,Z:t})});const{signal:s}=e.T.F;if(s){const t=()=>r.abort(s.reason),e=()=>s.removeEventListener(sn,t);s.addEventListener(sn,t),i.then(e,e)}return{writable:o,closed:i,H:()=>{n=!0,r.abort()}}}(t.writable,t);try{yn({type:"start",options:i,config:e},t)}catch(e){l();try{await c}catch{}throw t.N(),e}Object.assign(t,{reader:a.getReader(),writer:s.getWriter()});const{workerStartupTimeout:u}=e;!t._&&Number.isFinite(u)&&u>=0&&(t.P=setTimeout(()=>function(t){if(t.P=null,t._)return;const{B:e,writer:r}=t;if(dn(t),t.O=null,e){const t=new Error(Gr);t.W=!0,e(t),r&&r.releaseLock()}}(t),u));try{const t=await o;return await f(),await c,t}catch(e){await f(),l();try{await c}catch{}const{outputSize:r,T:n,V:o,Z:a}=t;n.outputSize=r;const i=jt(e)&&(e.codecImportFailed||e.W),s=o&&!i?a:e;if(jt(s))try{s.outputSize=r}catch{}throw s}async function f(){if(!s.locked)try{await s.getWriter().close()}catch{}}}(t,{chunkSize:n,wasmURI:a,baseURI:r,workerStartupTimeout:o})}catch(r){if(r&&r.W)return Jr(t),wn(t),nn(t,e);if(r&&r.codecImportFailed){if(t.reader)return wn(t),nn(t,e);t.N()}throw r}}}})}return t.M},qr=fn;let En=[];const bn=[];let Sn,gn,An=0;async function Rn(t,e){const{options:r,config:n}=e,{useWebWorkers:o,useCompressionStream:a,compressed:i,checkCrc32:s,computeCrc32:c,encrypted:l,format:u,codecURI:f}=r,{workerURI:w,createWorker:d,maxWorkers:p}=n;u&&(f&&(r.codecURI=function(t,e){try{return new URL(t,e).toString()}catch{return t}}(f,n.baseURI)),await async function(t,e){!sr.has(t)&&e&&dr(t,await(import(/* webpackIgnore: true */ /* @vite-ignore */e)))}(u,r.codecURI));const m=!(i||s||c||l),h=u===U||Boolean(r.codecURI);return e.useWebWorkers=!m&&h&&(o||o===U&&n.useWebWorkers),e.workerURI=e.useWebWorkers&&w?w:U,e.createWorker=e.useWebWorkers&&d?d:U,r.useCompressionStream=a||a===U&&n.useCompressionStream,(await async function(){const r=En.find(t=>!t.I);if(r)return Tn(r),new Qr(r,t,e,y);if(En.length<p){const r={G:An};return An++,En.push(r),new Qr(r,t,e,y)}return new Promise(r=>{bn.push({resolve:r,stream:t,T:e}),gn=n.workerStarvationTimeout,xn()})}()).run();function y(t){if(Dn(),t.v)return t.v=!1,zn();if(bn.length){const[{resolve:e,stream:r,T:n}]=bn.splice(0,1);e(new Qr(t,r,n,y)),xn()}else t.O?(Tn(t),function(t,e){const{config:r}=e,{terminateWorkerTimeout:n}=r;Number.isFinite(n)&&n>=0&&(t.Y=setTimeout(async()=>{En=En.filter(e=>e!=t);try{await t.terminate()}catch{}},n))}(t,e)):En=En.filter(e=>e!=t)}}function xn(){!Sn&&bn.length&&Number.isFinite(gn)&&gn>=0&&(Sn=setTimeout(Fn,gn))}function Dn(){Sn&&(clearTimeout(Sn),Sn=null)}function Fn(){if(Sn=null,bn.length){const[{resolve:t,stream:e,T:r}]=bn.splice(0,1);t(new Qr({},e,In(r),Un)),xn()}}function zn(){const t=bn.splice(0).map(({resolve:t,stream:e,T:r})=>new Promise(n=>{t(new Qr({},e,In(r),()=>{Un(),n()}))}));return Dn(),Promise.all(t)}function In(t){return Object.assign({},t,{useWebWorkers:!1,workerURI:U,createWorker:U})}function Un(){Dn(),xn()}function Tn(t){const{Y:e}=t;e&&(clearTimeout(e),t.Y=null)}const On="\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 Cn(t,e){return Mn(t,e,!0)}function kn(t){if(!t.some(t=>t>127))return!1;try{return new TextDecoder("utf-8",{fatal:!0}).decode(t),!0}catch{return!1}}function Mn(t,e,r){return e&&"cp437"==e.trim().toLowerCase()?function(t){let e="";for(let r=0;r<t.length;r++)e+=On[t[r]];return e}(t):new TextDecoder(e,{ignoreBOM:r}).decode(t)}const Nn="HTTP error ",vn="HTTP Range not supported",_n="HTTP resource changed",Ln="Writer iterator completed too soon",Bn="Writer not initialized",Pn="Invalid writer (size must be writable)",Wn="Content-Range",jn="Range",Vn="GET",Zn="bytes",Hn=16777216,Gn="writable",Yn=Symbol();class Kn{constructor(){this.size=0}init(){this.initialized=!0}}class qn extends Kn{get readable(){return this.createReadable()}createReadable({offset:t=0,size:e,chunkSize:r=Ot(Tt())}={}){const n=this;let o=0;return r=Ct(r),new ReadableStream({async pull(a){const i=e===U?r:Math.min(r,e-o),s=await No(n,t+o,i);s.length&&(a.enqueue(s),o+=s.length),(e!==U&&o>=e||!s.length&&i)&&a.close()}})}}class Xn extends Kn{constructor(){super();const t=this,e=new WritableStream({write(e){if(!t.initialized)throw new Error(Bn);return t.writeUint8Array(Pt(e))}});Object.defineProperty(t,Gn,{get:()=>e})}writeUint8Array(){}}class $n extends qn{constructor(t){super();let e=t.length;for(;"="==t.charAt(e-1);)e--;const r=t.indexOf(",")+1;Object.assign(this,{K:t,X:r,size:Math.floor(.75*(e-r))})}readUint8Array(t,e){const{X:r,K:n}=this,o=new Uint8Array(e),a=4*Math.floor(t/3),i=atob(n.substring(a+r,4*Math.ceil((t+e)/3)+r)),s=t-3*Math.floor(a/4);let c=0;for(let t=s;t<s+e&&t<i.length;t++)o[t-s]=i.charCodeAt(t),c++;return c<o.length?o.subarray(0,c):o}}class Jn extends Xn{constructor(t){super(),Object.assign(this,{contentType:t,data:"data:"+(t||"")+";base64,",$:""})}writeUint8Array(t){const e=this;let r,n=e.$;const o=e.$.length;for(e.$="",r=0;r<3*Math.floor((o+t.length)/3)-o;r++)n+=String.fromCharCode(t[r]);for(;r<t.length;r++)e.$+=String.fromCharCode(t[r]);n.length>2?e.data+=btoa(n):e.$=n+e.$}getData(){return this.data+btoa(this.$)}}let Qn,to;class eo extends qn{constructor(t){super(),Object.assign(this,{J:t,size:t.size}),to||(to=(async()=>{try{const t=new Blob([new Uint8Array(3)]).slice(1,2).stream().getReader();let e=0,r=await t.read();for(;!r.done;)e+=r.value.length,r=await t.read();Qn=1==e}catch{Qn=!1}})())}createReadable(t){const{J:e,size:r}=this,{offset:n=0,size:o=r-n}=t||{};if(typeof e.stream==C){if(!n&&o>=r)return Je(e.stream());if(Qn)return Je(e.slice(n,n+o).stream())}return super.createReadable(t)}async readUint8Array(t,e){const r=this,n=t+e,o=!t&&n>=r.size?r.J:r.J.slice(t,n);let a=await o.arrayBuffer();return a.byteLength>e&&(a=a.slice(t,n)),new Uint8Array(a)}}class ro extends Kn{constructor(t){super();const e=this,r=new TransformStream;Object.defineProperty(e,Gn,{get:()=>r.writable}),e.contentType=t,e.et=Qe(r.readable,t),e.et.catch(()=>{})}getData(){return this.et}}class no extends eo{constructor(t){super(new Blob([t],{type:"text/plain"}))}}class oo extends ro{constructor(t){super(),Object.assign(this,{encoding:t,nt:!t||"utf-8"==t.toLowerCase()})}async getData(){const{encoding:t,nt:e}=this,r=await super.getData();return r.text&&e?r.text():function(t,e){return Mn(t,e,!1)}(new Uint8Array(await r.arrayBuffer()),t)}}class ao extends qn{constructor(t,e){super(),so(this,t,e)}async init(){await co(this,Ao,Eo),super.init()}createReadable(t){const e=this,{useRangeHeader:r,forceRangeRequests:n,size:o,ot:a}=e;if((r||n)&&o!==U){const{offset:r=0,size:n=o-r}=t||{},i=a&&r>=o-a.length;if(n>0&&r<o&&!i)return function(t,e,r){let n,o=e,a=0,i=r;return new ReadableStream({start:()=>s(),async pull(t){n||await s();const{value:e,done:r}=await n.read();if(r)throw new Error(vn);const o=e.length>a?e.subarray(0,a):e;a-=o.length,i-=o.length,o.length&&t.enqueue(o),a||(await async function(){const t=n;n=U,await t.cancel()}(),i||t.close())},cancel:t=>n&&n.cancel(t)});async function s(){const e=Math.min(t.maximumRangeSize,i),r=await Ao(Vn,t,ho(t,o,e));if(206!=r.status)throw new Error(vn);const s=uo(r);if(s!==U&&s!=o)throw new Error(vn);mo(t,r),po(t,r),o+=e,a=e,n=r.body.getReader()}}(e,r,Math.min(n,o-r))}return super.createReadable(t)}readUint8Array(t,e){return lo(this,t,e,Ao,Eo)}}class io extends qn{constructor(t,e){super(),so(this,t,e)}async init(){await co(this,Ro,bo),super.init()}readUint8Array(t,e){return lo(this,t,e,Ro,bo)}}function so(t,e,r){const{preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s=!0,maximumRangeSize:c=Hn,fetch:l}=r;delete(r=Object.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.checkResourceChanges,delete r.maximumRangeSize,delete r.useXHR,delete r.fetch,Object.assign(t,{url:e,options:r,preventHeadRequest:n,useRangeHeader:o,forceRangeRequests:a,combineSizeEocd:i,checkResourceChanges:s,maximumRangeSize:c,fetch:l})}async function co(t,e,r){const{url:n,preventHeadRequest:o,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:s}=t;if(function(t){const{baseURI:e}=Tt(),{protocol:r}=new URL(t,e);return"http:"==r||"https:"==r}(n)&&(a||i)&&(typeof o==O||o)){const n=await e(Vn,t,ho(t,s?-65557:void 0)),o=n.headers.get("Accept-Ranges");if(!(i||o&&o.toLowerCase()==Zn))throw new Error(vn);{let o;s&&206==n.status&&(o=new Uint8Array(await n.arrayBuffer())),po(t,n);const a=fo(n);a===U?await go(t,e,r):t.size=a,o&&o.length&&uo(n)===t.size-o.length&&(t.ot=o)}}else await go(t,e,r)}async function lo(t,e,r,n,o){const{useRangeHeader:a,forceRangeRequests:i,ot:s,size:c,options:l}=t;if(a||i){if(e>=c||0===r)return v;{if(e+r>c&&(r=c-e),s&&e>=c-s.length){const t=e-(c-s.length);return s.slice(t,t+r)}const o=await n(Vn,t,ho(t,e,r));if(206!=o.status)throw new Error(vn);const a=uo(o);if(a!==U&&a!=e)throw new Error(vn);mo(t,o),po(t,o);const i=new Uint8Array(await o.arrayBuffer());if(i.length!=r)throw new Error(vn);return i}}{const{data:n}=t;return n||await o(t,l),t.data.subarray(e,e+r)}}function uo(t){const e=t.headers.get(Wn);if(e){const t=Number(e.trim().split(/[\s-]+/)[1]);if(!Number.isNaN(t))return t}}function fo(t){const e=t.headers.get(Wn);if(e){const t=e.trim().split(/\s*\/\s*/)[1];if(t&&"*"!=t){const e=Number(t);if(!Number.isNaN(e))return e}}}function wo({headers:t}){return{it:t.get("Etag")||U,lastModified:t.get("Last-Modified")||U}}function po(t,e){const{checkResourceChanges:r,st:n}=t;r&&!n&&206==e.status&&(t.st=wo(e))}function mo(t,e){const{checkResourceChanges:r,st:n,size:o}=t;if(r){const t=fo(e);if(t!==U&&o!==U&&t!=o)throw new Error(_n);if(n){const t=wo(e);if(Object.entries(n).some(([e,r])=>r!==U&&t[e]!==U&&r!=t[e]))throw new Error(_n)}}}function ho(t,e=0,r=1){return Object.assign({},yo(t),{[jn]:Zn+"="+(e<0?e:e+"-"+(e+r-1))})}function yo({options:t}){const{headers:e}=t;if(e)return Symbol.iterator in e?Object.fromEntries(e):e}async function Eo(t){await So(t,Ao)}async function bo(t){await So(t,Ro)}async function So(t,e){const r=await e(Vn,t,yo(t));t.data=new Uint8Array(await r.arrayBuffer()),t.size=t.data.length}async function go(t,e,r){if(t.preventHeadRequest)await r(t,t.options);else{const n=await e("HEAD",t,yo(t)),o=n.headers.get("Content-Length");o&&!n.headers.get("Content-Encoding")?t.size=Number(o):await r(t,t.options)}}async function Ao(t,{fetch:e=fetch,options:r,url:n},o){const a=await e(n,Object.assign({},r,{method:t,headers:o}));if(a.status>=200&&a.status<=299)return a;throw 416==a.status?new Error(vn):new Error(Nn+(a.statusText||a.status))}function Ro(t,{url:e},r){return new Promise((n,o)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",()=>{if(a.status>=200&&a.status<=299){const t=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(e=>{const r=e.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,t=>t.toUpperCase()),t.push(r)}),n({status:a.status,arrayBuffer:()=>a.response,headers:new Map(t)})}else o(416==a.status?new Error(vn):new Error(Nn+(a.statusText||a.status)))},!1),a.addEventListener("error",t=>o(t.detail?t.detail.error:new Error("Network error")),!1),a.open(t,e),r)for(const t of Object.entries(r))a.setRequestHeader(t[0],t[1]);a.responseType="arraybuffer",a.send()})}class xo extends qn{constructor(t,e={}){super(),Object.assign(this,{url:t,reader:e.useXHR&&!e.fetch?new io(t,e):new ao(t,e)})}set size(t){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}createReadable(t){return this.reader.createReadable(t)}readUint8Array(t,e){return this.reader.readUint8Array(t,e)}}class Do extends xo{constructor(t,e={}){super(t,Object.assign({},e,{useRangeHeader:!0}))}}class Fo extends qn{constructor(t){super(),t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),Object.assign(this,{ct:t,size:t.length})}readUint8Array(t,e){return this.ct.slice(t,t+e)}}class zo extends Xn{constructor(t){super(),this.lt=t||262144}init(t=0){Object.assign(this,{offset:0,ct:new Uint8Array(t>0?t:this.lt)}),super.init()}writeUint8Array(t){const e=this,r=e.offset+t.length;if(r>e.ct.length){let t=e.ct.length?2*e.ct.length:e.lt;for(;t<r;)t*=2;const n=e.ct;e.ct=new Uint8Array(t),e.ct.set(n)}e.ct.set(t,e.offset),e.offset+=t.length}getData(){return this.offset===this.ct.length?this.ct:this.ct.slice(0,this.offset)}}class Io extends qn{constructor(t){super(),this.ut=t}async init(){const t=this;t.ft=0;const e=t.ut=await Promise.all(t.ut.map(Mo));t.wt=e.map(e=>{const r=t.size;return t.size+=e.size,r}),super.init()}ht(t){const{wt:e,size:r}=this,n=e[t];return n===U?r:n}async readUint8Array(t,e){const r=this,{ut:n}=this;let o,a=0,i=t;for(;n[a]&&i>=n[a].size;)i-=n[a].size,a++;const s=n[a];if(s){const n=s.size;if(i+e<=n)o=await No(s,i,e);else{const a=n-i;o=Bt(await No(s,i,a),await r.readUint8Array(t+a,e-a))}}else o=v;return r.ft=Math.max(a,r.ft),o}}class Uo extends Kn{constructor(t,e=4294967295){super();const r=this;let n,o,a;Object.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:e,availableSize:e});const i=new WritableStream({async write(e){if(e===Yn)return void(a&&await c());const{availableSize:i}=r;if(a)e.length>=i?(await s(e.subarray(0,i)),await c(),e.length>i&&await this.write(e.subarray(i))):await s(e);else{const{value:i,done:s}=await t.next();if(s&&!i)throw new Error(Ln);n=i,n.size=0,n.maxSize&&(r.maxSize=n.maxSize),r.availableSize=r.maxSize,await ko(n),o=i.writable,a=o.getWriter(),await this.write(e)}},async close(){a&&(await a.ready,await l())},async abort(t){a&&await a.abort(t)}});async function s(t){const e=t.length;e&&(await a.ready,await a.write(t),n.size+=e,r.availableSize-=e)}async function c(){await l(),r.diskOffset+=n.size,r.diskNumber++,a=null,r.availableSize=r.maxSize}async function l(){await a.close()}Object.defineProperty(r,Gn,{get:()=>i})}async closeDisk(){const t=this.writable.getWriter();try{await t.ready,await t.write(Yn)}finally{t.releaseLock()}}}class To{constructor(t){return Array.isArray(t)&&(t=new Io(t)),(t instanceof ReadableStream||typeof t.getReader==C)&&(t={readable:Je(t)}),t}}class Oo{constructor(t){t.writable===U&&typeof t.next==C&&(t=new Uo(t)),(t instanceof WritableStream||typeof t.getWriter==C)&&(t={writable:tr(t)});try{t.size=t.size===U?0:t.size}catch{throw new Error(Pn)}return t}}function Co(t){return Boolean(t&&t.getData)}async function ko(t,e){if(!t.init||t.initialized)return Promise.resolve();await t.init(e)}async function Mo(t){return t=new To(t),await ko(t),t.size!==U&&t.readUint8Array||(t=new eo(await Qe(t.readable)),await ko(t)),t}function No(t,e,r){return t.readUint8Array(e,r)}function vo(t,e){return t.createReadable?t.createReadable(e):t.readUint8Array?qn.prototype.createReadable.call(t,e):t.readable}function _o(t,e,r){if(!t.some(t=>t.reason==e)){const n={reason:e};r!==U&&(n.filename=r),t.push(n)}}const Lo="filename",Bo="rawFilename",Po="comment",Wo="rawComment",jo="uncompressedSize",Vo="compressedSize",Zo="offset",Ho="diskNumberStart",Go="lastModDate",Yo="rawLastModDate",Ko="lastAccessDate",qo="rawLastAccessDate",Xo="creationDate",$o="rawCreationDate",Jo="internalFileAttributes",Qo="externalFileAttributes",ta="msdosAttributesRaw",ea="msdosAttributes",ra="msDosCompatible",na="zip64",oa="encrypted",aa="version",ia="versionMadeBy",sa="zipCrypto",ca="directory",la="executable",ua="compressionMethod",fa="signature",wa="extraField",da="unixMode",pa="setuid",ma="setgid",ha="sticky",ya=[Lo,Bo,jo,Vo,Go,Yo,Po,Wo,Ko,qo,Xo,$o,Zo,Ho,Jo,Qo,ta,ea,ra,na,oa,aa,ia,sa,ca,la,"symlink",ua,fa,"crc32",wa,"extraFieldUnix","extraFieldInfoZip","extraFieldUnixType1","extraFieldPkwareUnix","uid","gid",da,"unixExternalUpper",pa,ma,ha,"bitFlag","rawBitFlag","filenameLength","extraFieldLength","filenameUTF8","commentUTF8","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp","extraFieldUSDZ"];class Ea{constructor(t){ya.forEach(e=>this[e]=t[e])}}const ba=new Set([1,m,10,h,28789,25461,y,E,b,22613,13]);function Sa(t,e,r){return t?e?12:16+4*r:0}const ga="File format is not recognized",Aa="End of central directory not found",Ra="End of Zip64 central directory locator not found",xa="Central directory header not found",Da="Local file header not found",Fa="Zip64 extra field not found",za="File contains encrypted entry",Ia="Encryption method not supported",Ua="Split zip file",Ta="Overlapping entry found",Oa="Entry data out of bounds",Ca="Ambiguous archive",ka="Encrypted central directory is not supported",Ma="Unsafe filename",Na="Invalid strictness (must be 'strict', 'balanced' or 'tolerant')",va="Invalid filenameValidation (must be 'strict', 'balanced' or 'tolerant')",_a="Invalid maxAppendedDataSize (must be a number greater than or equal to 0)",La="64-bit value exceeds Number.MAX_SAFE_INTEGER",Ba="unsorted central directory",Pa="unknown version needed to extract",Wa="compressed patched data",ja="malformed extra field",Va="unknown zip64 extensible data",Za="wrapped entries count",Ha="appended data",Ga="prepended data",Ya="prepended central directory",Ka="trailing central directory data",qa="mismatched central directory offset",Xa="missing zip64 extra field",$a="duplicate filename",Ja="mismatched zip64 end of central directory record",Qa="multiple end of central directory records",ti="mismatched local file header (filename)",ei="mismatched local file header (general purpose bit flag)",ri="mismatched local file header (compression method)",ni="mismatched local file header (crc32 or sizes)",oi=/^[a-zA-Z]:/,ai=/(^|[\\/])\.\.([\\/]|$)/,ii="utf-8",si="cp437",ci=[[jo,t],[Vo,t],[Zo,t],[Ho,e]],li={[e]:{yt:qi,bytes:4},[t]:{yt:Xi,bytes:8}},ui=BigInt(Number.MAX_SAFE_INTEGER);class fi{constructor(t,e={}){Object.assign(this,{reader:new To(t),options:e,Et:{bt:new Set,St:[],gt:[]}})}async*getEntriesGenerator(a={}){const c=this;let{reader:m}=c;if(await ko(m),m.size!==U&&m.readUint8Array||(m=new eo(await Qe(m.readable)),await ko(m)),m.size<w)throw new Error(ga);const h=c.warnings=[],y=Ci(a,c.options),E=y==tt,b=y!=rt,S=Ni(Vi(c,a,X),y),F=function(t,e){if(t===U)return e;if(!Oi(t))throw new Error(va);return t}(Vi(c,a,"filenameValidation"),y),z=Vi(c,a,"normalizeFilename"),{At:I,Rt:T}=await vi(m,b,S);if(!I)throw await async function(t){return await Ti(t)==o}(m)?new Error(Ua):new Error(Aa);b&&T>1&&ji(Qa);const O=Wt(I);let C=qi(O,12),k=qi(O,16);const M=I.offset,N=Ki(O,20),_=M+w+N,L=m.size-_;L>S&&ji(Ha),L>0&&_o(h,Ha);let B=Ki(O,4);const P=m.ft||0;let W,j,V,Z,H,G=Ki(O,6),Y=Ki(O,10),K=0,q=p;const $=k==t||C==t||Y==e||G==e;if(k!=t&&G!=e&&(k+=Ui(m,G)),$){const r=I.offset>=d?await No(m,I.offset-d,d):v,n=Wt(r);if(r.length==d&&qi(n,0)==u){k=Ui(m,qi(n,4))+Xi(n,8);let r=await No(m,k,p),o=Wt(r);const a=I.offset-d-p;if((r.length<p||qi(o,0)!=l)&&k!=a&&a>=0){const t=k;k=a,k>t&&(K=k-t),r=await No(m,k,p),o=Wt(r)}if(r.length<p||qi(o,0)!=l)throw new Error(Ra);if(V=!0,Z=Xi(o,4)>44,Z){const t=Math.min(Xi(o,4)-44,m.size-k-p);t>0&&(q+=t,H=function(t){const e={rawExtensibleData:t};if(t.length>=28){const r=Wt(t),n=Ki(r,26);Object.assign(e,{compressionMethod:Ki(r,0),compressedSize:Xi(r,2),uncompressedSize:Xi(r,10),encryptionAlgorithm:Ki(r,18),bitLength:Ki(r,20),flags:Ki(r,22),hashAlgorithm:Ki(r,24),hashData:t.subarray(28,28+n)})}return e}(await No(m,k+p,t)))}B==e?B=qi(o,16):B!=qi(o,16)&&Wi(E,h,Ja),G==e?G=qi(o,20):G!=qi(o,20)&&Wi(E,h,Ja),Y==e?Y=Xi(o,32):Y!=Xi(o,32)&&Wi(E,h,Ja),C==t?C=Xi(o,40):C!=Xi(o,40)&&Wi(E,h,Ja),k=Ui(m,G)+Xi(o,48)+K}else if(k==t||C==t||G==e)throw new Error(Ra)}let et=C;const nt=I.offset-(V?q+d:0);if(k>=m.size&&(K=m.size-k-C-w,k=m.size-C-w),P!=B)throw new Error(Ua);if(k<0)throw new Error(ga);let ot=0,at=await No(m,k,C),it=Wt(at);if(C){if(at.length<4)throw new Error(ga);let t=nt-C;if(k!=t&&G==B){const e=qi(it,ot)==s||Boolean(H&&H.compressedSize)||mi(it);let r=!e;if(t>=0&&t+4<=m.size){const n=await yi(m,t);if(e)r=n;else if(!n){const e=await async function(t,e){const r=Math.max(0,e-65541),n=await No(t,r,e-r),o=Wt(n);for(let t=n.length-6;t>=0;t--)if(qi(o,t)==i&&t+6+Ki(o,t+4)==n.length)return r+t}(m,nt),r=e-C;e!==U&&r>=0&&await yi(m,r)&&(t=r)}}if(r){const r=k;if(k=t,at=await No(m,k,C),it=Wt(at),k>r)K+=k-r,W=e;else{Wi(E,h,qa);const t=k-r;if(at.length>=f){const e=qi(it,42);!await Ei(m,e,n)&&await Ei(m,e+t,n)&&(K+=t)}}}}}const st=nt-k;if(C!=st&&st>=0&&G==B&&(C=st,at=await No(m,k,C),it=Wt(at)),k<0||k>=m.size)throw new Error(ga);c.directoryOffset=k,c.directoryLength=et;const ct=Zi(c,a,"decryptCentralDirectory");let lt,ut;if(ct&&Y&&at.length>=4&&qi(it,0)!=s&&(Z||mi(it))){const t=function(t,e,r){const n=t&&t.compressedSize?t.compressedSize:e;return n>0&&n<=r?n:r}(H,et,at.length);ut=at.subarray(t),at=await ct(at.subarray(0,t),H),it=Wt(at),et=at.length,lt=!0}H&&!lt&&(at.length<4||qi(it,0)==s)&&_o(h,Va),j=k;const ft=Vi(c,a,"filenameEncoding"),wt=Vi(c,a,"commentEncoding"),dt=new Set;let pt,mt=-1;const ht=!E&&!V;!Y&&ht&&(Y=hi(it,at,ot),Y&&_o(h,Za));for(let t=0;t<Y;t++){const n=new pi(m,c.options);if(ot+f>at.length||qi(it,ot)!=s){if(0==t&&!lt&&(Z||mi(it)))throw new Error(ka);throw new Error(xa)}Si(n,it,ot+6);const o=Boolean(n.bitFlag.languageEncodingFlag),i=ot+f,l=i+n.filenameLength+n.extraFieldLength,u=Ki(it,ot+4),w=!(u>>8),d=u>>8==3,p=Ki(it,ot+32),y=l+p,b=new Uint8Array(at.subarray(i,y)),S=b.subarray(0,n.filenameLength),I=b.subarray(n.filenameLength+n.extraFieldLength),T=o||!ft&&kn(S),O=o||!wt&&kn(I),C=qi(it,ot+38),k=C&r,M={readOnly:Boolean(1&k),hidden:Boolean(2&k),system:Boolean(4&k),directory:Boolean(16&k),archive:Boolean(32&k)},N=qi(it,ot+42),v=Zi(c,a,"decodeText")||Cn,_=T?ii:ft||si,L=O?ii:wt||si;let B=v(S,_,J);B===U&&(B=Cn(S,_));let P,W=v(I,L,Q);W===U&&(W=Cn(I,L)),Object.assign(n,{index:t,xt:lt,versionMadeBy:u,msDosCompatible:w,zip64:!1,compressedSize:0,uncompressedSize:0,Dt:p,offset:N,diskNumberStart:Ki(it,ot+34),internalFileAttributes:Ki(it,ot+36),externalFileAttributes:C,msdosAttributesRaw:k,msdosAttributes:M,rawFilename:S,filenameUTF8:T,commentUTF8:O,rawExtraField:b.subarray(n.filenameLength,n.filenameLength+n.extraFieldLength),rawComment:I,filename:B,comment:W});try{P=gi(n,n,it,ot+6)}catch(t){if(E||t.message!=Fa)throw t;n.Ft=!0,_o(h,Xa,n.filename)}if(B=n.filename,z){const t=z(B);t!==U&&(B=n.filename=t)}if(Mi(B,F)){const t=new Error(Ma);throw t.filename=B,t}P&&_o(h,ja,B),n.offset+=K;const V=Ui(m,n.diskNumberStart)+n.offset;j=Math.min(V,j),V<mt&&_o(h,Ba,B),mt=V,(n.version&r)>63&&_o(h,Pa,B),32&~n.rawBitFlag||_o(h,Wa,B),dt.has(n.filename)&&(pt=!0),dt.add(n.filename);const H=n.externalFileAttributes>>16&e;n.unixMode===U&&16877&H&&(n.unixMode=H);const G=Boolean(n.unixMode&R),q=Boolean(n.unixMode&x),X=Boolean(512&n.unixMode),$=40960==((n.unixMode===U?H:n.unixMode)&g),tt=n.unixMode!==U&&(n.unixMode&g)==A||(H&g)==A||w&&M.directory||n.filename.endsWith(D),et=!$&&!tt&&(n.unixMode!==U?!!(73&n.unixMode):d&&!!(73&H));Object.assign(n,{setuid:G,setgid:q,sticky:X,symlink:$,unixExternalUpper:H,executable:et,directory:tt,zipCrypto:n.encrypted&&!n.extraFieldAES});const rt=new Ea(n);if(rt.getData=(t,e)=>n.getData(t,rt,c.Et,e),rt.arrayBuffer=async t=>{const e=new TransformStream,r=Qe(e.readable).then(t=>t.arrayBuffer());return r.catch(()=>{}),await n.getData(e,rt,c.Et,Object.assign({},t,{preventClose:!1})),r},ot=y,t==Y-1&&ht){const t=hi(it,at,ot);t&&(Y+=t,_o(h,Za))}const{onprogress:nt}=a;if(nt)try{await nt(t+1,Y,new Ea(n))}catch{}yield rt}let yt=ot,Et=bi(at.subarray(ot))||(lt?bi(ut):U);if(!Et&&!lt){const t=k+ot,e=Math.min(nt-t,65541);e>=6&&(Et=bi(await No(m,t,e)))}Et&&(c.digitalSignature=Et,yt=ot+6+Et.length),(ot!=et&&yt!=et||!lt&&ot!=C&&yt!=C)&&Wi(E,h,Ka),pt&&Wi(E,h,$a);const bt=Vi(c,a,"extractPrependedData"),St=Vi(c,a,"extractAppendedData"),gt=(E||bt)&&Y&&4==j&&await async function(t){const e=await Ti(t);return e==o||808471376==e}(m)?4:0;return E&&(K>0||Y&&j>gt)&&ji(Ga),(K>0||Y&&j>4)&&_o(h,Ga),W&&_o(h,Ya),bt&&(c.prependedData=j>gt?await No(m,gt,j-gt):v),c.comment=N?await No(m,M+w,N):v,St&&(c.appendedData=_<m.size?await No(m,_,m.size-_):v),!0}async getEntries(t={}){const e=[];for await(const r of this.getEntriesGenerator(t))e.push(r);return e}async close(){const{reader:t}=this;t.readUint8Array||!t.readable||t.readable.locked||await t.readable.cancel()}[_](){return this.close()}}class wi{constructor(t={}){let e;const{readable:r,writable:n}=new TransformStream({start(t){e=t}}),o=new fi(r,t),a=o.getEntriesGenerator(),i=new Set;this.readable=new ReadableStream({async pull(t){const{done:e,value:r}=await a.next();if(e)return t.close();const n=function(t,e){const{readable:r,writable:n}=new TransformStream;let o;const a={cancel:async t=>{e.delete(a),await(o?o.cancel(t):r.cancel(t))}};return a.readable=new ReadableStream({async pull(i){o||(o=r.getReader(),e.add(a),async function(){try{await t.getData(n,{preventClose:!1})}catch(t){try{await n.abort(t)}catch{}}finally{e.delete(a)}}());const{done:s,value:c}=await o.read();s?i.close():i.enqueue(c)},cancel:t=>a.cancel(t)},{highWaterMark:0}),a}(r,i),o={...r,readable:n.readable};delete o.getData,Object.defineProperties(o,{localDirectory:{get:()=>r.localDirectory,enumerable:!0},warnings:{get:()=>r.warnings,enumerable:!0}}),t.enqueue(o)},async cancel(t){const r=Array.from(i);i.clear(),e.error(t),await Promise.allSettled(r.map(e=>e.cancel(t))),await Promise.allSettled([a.return(),o.close()])}}),this.writable=n}}async function di(t,e={}){if(t=new To(t),await ko(t),t.size!==U&&t.readUint8Array||(t=new eo(await Qe(t.readable)),await ko(t)),t.size<w)return!1;const r=Ci(e,{}),n=r!=rt,o=Ni(e[X],r),{At:a,Rt:i}=await vi(t,n,o);if(!a||r==tt&&i>1)return!1;const s=Ki(Wt(a),20),c=a.offset+w+s;return t.size-c<=o}class pi{constructor(t,e){Object.assign(this,{reader:t,options:e})}async getData(t,e,o,a={}){const i=this;if(i.Ft)throw new Error(Fa);const s=Tt(),{reader:c,index:l,offset:u,diskNumberStart:f,extraFieldAES:w,extraFieldZip64:d,compressionMethod:p,bitFlag:m,rawBitFlag:h,crc32:y,rawLastModDate:E,uncompressedSize:b,compressedSize:S}=i,{dataDescriptor:g}=m,A=e.localDirectory={},R=e.warnings=[],x=Ui(c,f)+u,D=await No(c,x,F),z=Wt(D);let I=Vi(i,a,L),T=Vi(i,a,B);const O=dt(Vi(i,a,P)),C=Boolean(O),k=!0===O;if(wt(I,T),I=I&&I.length?I:U,T=T&&T.length?T:U,w&&99!=w.originalCompressionMethod)throw new Error(or);if(D.length<F||qi(z,0)!=n)throw new Error(Da);Si(A,z,4);const{extraFieldLength:M,filenameLength:N}=A,_=A.dataOffset=x+F+N+M,H=Vi(i,a,"checkLocalDirectory"),G=Ci(a,i.options),Y=function(t,e){return t===U?e!=rt:Boolean(t)}(H,G),K=Vi(i,a,"checkLocalFilename"),q=function(t,e){return t===U?e==tt:Boolean(t)}(K===U?H:K,G);let X=v;if(q&&(N||M)){const t=await No(c,x+F,N+M);X=t.subarray(0,N),A.rawExtraField=t.subarray(N)}else A.rawExtraField=M?await No(c,x+F+N,M):v;q&&(A.rawFilename=X),gi(i,A,z,4,!0)&&_o(R,ja),function(t,e,r,n,o){const{rawFilename:a}=t,i=!o,s=t.xt&&!(8192&~e.rawBitFlag);!n||s||r.length==a.length&&!r.some((t,e)=>t!=a[e])||Wi(i,o,ti),(2121&e.rawBitFlag)!=(2121&t.rawBitFlag)&&Wi(i,o,ei),e.compressionMethod!=t.compressionMethod&&Wi(i,o,ri),e.bitFlag.dataDescriptor||s||!(e.crc32||e.compressedSize||e.uncompressedSize)||e.crc32==t.crc32&&e.compressedSize==t.compressedSize&&e.uncompressedSize==t.uncompressedSize||Wi(i,o,ni)}(i,A,X,q,Y?U:R);const{lastAccessDate:$,creationDate:J,uid:Q,gid:et}=A;$&&(e.lastAccessDate=$),J&&(e.creationDate=J),Q!==U&&e.uid===U&&(e.uid=Q),et!==U&&e.gid===U&&(e.gid=et);const nt=Vi(i,a,"checkPasswordOnly"),ot=i.encrypted&&(!k||nt),at=ot&&!w;if(k||(e.zipCrypto=at),ot&&!(64&~i.rawBitFlag))throw new Error(Ia);const it=C?U:ur(p);if(0!=p&&8!=p&&9!=p&&!it&&!C)throw new Error(or);if(ot){if(!at&&(w.strength<1||w.strength>3))throw new Error(Ia);if(!I&&!T)throw new Error(za)}if(_+S>c.size)throw new Error(Oa);const st=S,ct=ut(Vi(i,a,W));ft(ct);let lt=Vi(i,a,"checkOverlappingEntry");const pt=Vi(i,a,"checkOverlappingEntryOnly");pt&&(lt=!0);const{onstart:mt,onprogress:ht,onend:yt}=a,Et=0!=p&&!C,bt=C?S-Sa(ot,at,w&&w.strength):b,St=9==p;let gt=Vi(i,a,V);St&&(gt=!1);const At=Vi(i,a,"checkCrc32"),Rt=(At===U?Vi(i,a,"checkSignature"):At)&&!C&&(!ot||at||w&&1==w.vendorVersion),xt={options:{codecType:Vr,password:I,rawPassword:T,zipCrypto:at,encryptionStrength:w&&w.strength,checkCrc32:Rt,checkAuthenticationCode:Vi(i,a,"checkAuthenticationCode"),passwordVerification:at&&(g?E>>>8&r:y>>>24&r),outputSize:bt,crc32:y,compressed:Et,encrypted:ot,useWebWorkers:Vi(i,a,j),useCompressionStream:gt,deflate64:St,format:it?it.format:U,codecURI:it?it.codecURI:U,compressionMethod:p,rawBitFlag:h,checkPasswordOnly:nt},config:s,F:{signal:ct,size:st,onstart:mt,onprogress:ht,onend:yt}};let Dt,Ft,zt;lt&&await async function({reader:t,zt:e,index:r,offset:n,crc32:o,compressedSize:a,uncompressedSize:i,dataOffset:s,dataDescriptor:c,extraFieldZip64:l,Et:u}){let f=0;if(c){const r=Boolean(l),n=Wt(await No(t,s+a,24)),c=[[r,!0],[r,!1],[!r,!0],[!r,!1]].map(([t,e])=>zi(n,t,e)).filter(t=>t&&t.compressedSize==a&&t.uncompressedSize==i),u=c.find(t=>t.crc32==o)||c[0]||zi(n,r,!0)||zi(n,r,!1);u?(e.localDirectory.dataDescriptor=u,f=Ii(u.zip64,u.signature)):f=Ii(r,!1)}const w={start:n,end:s+a+f,zt:e},{bt:d,St:p,gt:m}=u;if(!d.has(r)){const t=function(t,e){let r=0,n=t.length;for(;r<n;){const o=r+n>>>1;t[o].start<e.start?r=o+1:n=o}const o=t[r-1],a=t[r];return o&&Fi(e,o)?o:a&&Fi(e,a)?a:void 0}(p,w)||m.find(t=>Fi(w,t));if(t){const e=new Error(Ta);throw e.overlappingEntry=t.zt,e}d.add(r),m.push(w),m.length*m.length>p.length&&(m.sort((t,e)=>t.start-e.start),u.St=function(t,e){const r=[];let n=0,o=0;for(;n<t.length||o<e.length;)o==e.length||n<t.length&&t[n].start<e[o].start?r.push(t[n++]):r.push(e[o++]);return r}(p,m),m.length=0)}}({reader:c,zt:e,index:l,offset:x,crc32:y,compressedSize:S,uncompressedSize:b,dataOffset:_,dataDescriptor:g||A.bitFlag.dataDescriptor,extraFieldZip64:d||A.extraFieldZip64,Et:o});try{if(!pt){nt&&(t=new WritableStream),t=new Oo(t),await ko(t,function(t,e,r){return Math.min(t,r?1032*e:e)}(bt,S,Et)),({writable:Dt}=t);const e=Je(c.createReadable({offset:_,size:st})),{outputSize:r}=await Rn({readable:e,writable:Dt},xt);if(ft(ct),r!=bt)throw Object.assign(new Error(pr),{outputSize:r});t.size+=r}}catch(e){const{outputSize:r}=xt;if(r!==U?t.size+=r:jt(e)&&e.outputSize!==U&&(t.size+=e.outputSize),!nt||!jt(e)||e.message!=Se)throw Ft=e,zt=!0,e}finally{if((Co(t)||!Vi(i,a,Z))&&Dt&&!Dt.locked){const t=Dt.getWriter();if(zt)try{await t.abort(Ft)}catch{}else await t.close()}}return nt||pt?U:t.getData?t.getData():Dt}}function mi(t){const e=Math.min(t.byteLength,1024)-3;for(let r=0;r<e;r++)if(134630224==qi(t,r))return!0;return!1}function hi(t,e,r){let n=0;for(;r+f<=e.length&&qi(t,r)==s;)r+=f+Ki(t,r+28)+Ki(t,r+30)+Ki(t,r+32),n++;return n%65536?0:n}function yi(t,e){return Ei(t,e,s)}async function Ei(t,e,r){return!(e<0||e+4>t.size)&&qi(Wt(await No(t,e,4)),0)==r}function bi(t){if(t.length>=6){const e=Wt(t);if(qi(e,0)==i){const r=Ki(e,4);if(6+r<=t.length)return new Uint8Array(t.subarray(6,6+r))}}}function Si(t,e,r){const n=t.rawBitFlag=Ki(e,r+2),o=!(1&~n),a=qi(e,r+6);Object.assign(t,{encrypted:o,version:Ki(e,r),bitFlag:{level:(6&n)>>1,dataDescriptor:!(8&~n),languageEncodingFlag:(n&S)==S},rawLastModDate:a,lastModDate:Hi(a),filenameLength:Ki(e,r+22),extraFieldLength:Ki(e,r+24)})}function gi(t,e,r,n,o){const{rawExtraField:a}=e,i=e.extraField=new Map,s=Wt(a);let c=0,l=!1;try{for(;c<a.length;){const t=Ki(s,c),e=Ki(s,c+2);i.set(t,{type:t,data:a.slice(c+4,c+4+e)}),c+=4+e}}catch{l=!0}c>a.length&&(l=!0);const u=Ki(r,n+4);Object.assign(e,{signature:qi(r,n+10),crc32:qi(r,n+10),compressedSize:qi(r,n+14),uncompressedSize:qi(r,n+18)});const f=i.get(1);if(f)(function(t,e,r){e.zip64=!0;const n=Wt(t.data),o=ci.filter(([t,r])=>e[t]==r),a=o.reduce((t,[,e])=>t+li[e].bytes,0);if(t.data.length<a){if(r)return!1;throw new Error(Fa)}const i=[];try{for(let t=0,e=0;t<o.length;t++){const[,r]=o[t],a=li[r];i.push(a.yt(n,e)),e+=a.bytes}}catch(t){if(r)return!1;throw t}return o.forEach(([r],n)=>{e[r]=t[r]=i[n]}),!0})(f,e,o)||(l=!0),e.extraFieldZip64=f;else if(ci.some(([t,r])=>e[t]==r)){if(!o)throw new Error(Fa);l=!0}const w=i.get(28789);w&&(Ai(w,Lo,Bo,e,t),e.extraFieldUnicodePath=w);const d=i.get(25461);d&&(Ai(d,Po,Wo,e,t),e.extraFieldUnicodeComment=d);const p=i.get(m);p&&(99==u||e.encrypted)&&p.data.length>=7?(function(t,e,r){const n=Wt(t.data),o=Yi(n,4);Object.assign(t,{vendorVersion:Yi(n,0),vendorId:Yi(n,2),strength:o,originalCompressionMethod:r,compressionMethod:Ki(n,5)}),e.compressionMethod=t.compressionMethod,1!=t.vendorVersion&&(e.crc32=U)}(p,e,u),e.extraFieldAES=p):(p&&(l=!0),e.compressionMethod=u);const S=i.get(13);S&&(Ri(S,e),e.extraFieldPkwareUnix=S);const g=i.get(22613);g&&(Ri(g,e),e.extraFieldUnixType1=g);const A=i.get(h);A&&(function(t,e,r){if(!t.data.length)return;const n=Wt(t.data),o=Yi(n,0),a=[],i=[];r?(1&~o||(a.push(Go),i.push(Yo)),2&~o||(a.push(Ko),i.push(qo)),4&~o||(a.push(Xo),i.push($o))):t.data.length>=5&&(a.push(Go),i.push(Yo));let s=1;a.forEach((r,o)=>{if(t.data.length>=s+4){const a=qi(n,s);e[r]=t[r]=new Date(1e3*(0|a));const c=i[o];t[c]=a}s+=4})}(A,e,o),e.extraFieldExtendedTimestamp=A);const R=i.get(10);R&&(function(t,e){const r=Wt(t.data);let n,o=4;try{for(;o<t.data.length&&!n;){const e=Ki(r,o),a=Ki(r,o+2);1==e&&(n=t.data.slice(o+4,o+4+a)),o+=4+a}}catch{}if(n&&24==n.length){const r=Wt(n),o=r.getBigUint64(0,!0),a=r.getBigUint64(8,!0),i=r.getBigUint64(16,!0);Object.assign(t,{rawLastModDate:o,rawLastAccessDate:a,rawCreationDate:i});const s={lastModDate:Gi(o),lastAccessDate:Gi(a),creationDate:Gi(i)};Object.assign(t,s),Object.assign(e,s,{rawLastAccessDate:a,rawCreationDate:i})}}(R,e),e.extraFieldNTFS=R);const x=i.get(E);let D;x&&(D=xi(x,e,!0),e.extraFieldInfoZip=x);const F=i.get(b);F&&(xi(F,D?{}:e,!1),e.extraFieldUnix=F);const z=i.get(y);return z&&(e.extraFieldUSDZ=z),l}function Ai(t,e,r,n,o){if(t.data.length<5)return void(t.valid=!1);const a=Wt(t.data),i=new Jt;i.append(o[r]);const s=Wt(new Uint8Array(4));s.setUint32(0,i.get(),!0);const c=qi(a,1),l=Yi(a,0);Object.assign(t,{version:l,[e]:Cn(t.data.subarray(5)),valid:1==l&&!o.bitFlag.languageEncodingFlag&&c==qi(s,0)}),t.valid&&(n[e]=t[e],n[e+"UTF8"]=!0)}function Ri(t,e){if(t.data.length<8)return;const r=Wt(t.data),n={lastAccessDate:new Date(1e3*(0|qi(r,0))),lastModDate:new Date(1e3*(0|qi(r,4)))};t.data.length>=12&&(n.uid=Ki(r,8),n.gid=Ki(r,10)),Object.assign(t,n),Object.assign(e,n)}function xi(t,e,r){try{const n=Wt(t.data);let o,a;if(r){let e=0;const r=Yi(n,e++),i=Yi(n,e++);o=Di(t.data.subarray(e,e+i)),e+=i;const s=Yi(n,e++);a=Di(t.data.subarray(e,e+s)),Object.assign(t,{version:r,uid:o,gid:a})}else t.data.length>=4&&(o=Ki(n,0),a=Ki(n,2),Object.assign(t,{uid:o,gid:a}));return o!==U&&(e.uid=o),a!==U&&(e.gid=a),o!==U||a!==U}catch{}}function Di(t){const e=new Uint8Array(4);return e.set(t,0),new DataView(e.buffer,e.byteOffset,4).getUint32(0,!0)}function Fi(t,e){return t.start<e.end&&e.start<t.end}function zi(t,e,r){const n=r?4:0;if(t.byteLength<Ii(e,r)||r&&qi(t,0)!=a)return U;const o=qi(t,n);let i,s;try{e?(i=Xi(t,n+4),s=Xi(t,n+12)):(i=qi(t,n+4),s=qi(t,n+8))}catch{return U}return{signature:r,zip64:e,crc32:o,compressedSize:i,uncompressedSize:s}}function Ii(t,e){return(t?20:12)+(e?4:0)}function Ui(t,e){return t.ht?t.ht(e):0}async function Ti(t){return qi(Wt(await No(t,0,4)))}function Oi(t){return t===tt||t===et||t===rt}function Ci(t,e){return ki(t,ki(e,et))}function ki(t,e){const r=t.strictness;if(r!==U){if(!Oi(r))throw new Error(Na);return r}const n=t.checkAmbiguity;return n===U?e:n?tt:e==rt?rt:et}function Mi(t,e){if(e==rt)return!1;const r=t.split("/");return r.length>1&&""===r[r.length-1]&&r.pop(),!!(ai.test(t)||t.startsWith("/")||t.startsWith("\\")||oi.test(t))||e==tt&&(r.includes(".")||r.includes("")||t.includes("\0"))}function Ni(t,r){if(t!==U){const e=ht(t);if("number"!=typeof e||Number.isNaN(e)||e<0)throw new Error(_a);return e}return r==tt?0:r==rt?1/0:e}async function vi(t,e,r){const{size:n}=t,o=Math.min(n,65557),a={It:64};let i,s,c=0;for await(const[r,l,u,f,d]of _i(t,o)){const o=Ki(r,f+20);if(d+w+o==n){const o=await Bi(t,r,l,f,d,n,a);if(2==o){if(i||(i=Li(u,f,d)),c++,!e||c>1)break}else 1!=o||s||(s=Li(u,f,d))}}return i||(i=s),i||(i=await async function(t,e,r){const{size:n}=t,o=Math.min(n,e==1/0?n:65557+e);let a,i;for await(const[e,s,c,l,u]of _i(t,o)){const o=Li(c,l,u);a||(a=o);const f=await Bi(t,e,s,l,u,n,r);if(2==f)return o;1!=f||i||(i=o)}return i||a}(t,r,a)),{At:i,Rt:c}}async function*_i(t,e){const r=t.size-e,n=await No(t,r,e),o=Wt(n);for(let t=n.length-w;t>=0;t--)qi(o,t)==c&&(yield[o,r,n,t,r+t])}function Li(t,e,r){return{offset:r,buffer:new Uint8Array(t.subarray(e,e+w)).buffer}}async function Bi(r,n,o,a,i,c,l){const f=Ki(n,a+10),w=qi(n,a+12),p=qi(n,a+16);if(f==e||w==t||p==t)return await Pi(r,n,o,i-d,c,l)==u?2:0;if(!f&&!w)return 1;const m=Ki(n,a+6);for(const t of[i-w,Ui(r,m)+p])if(await Pi(r,n,o,t,c,l)==s)return 2;return 0}async function Pi(t,e,r,n,o,a){return n<0||n+4>o?U:n>=r?qi(e,n-r):a.It>0?(a.It--,qi(Wt(await No(t,n,4)),0)):U}function Wi(t,e,r){t?ji(r):_o(e,r)}function ji(t){const e=new Error(Ca);throw e.reason=t,e}function Vi(t,e,r){return e[r]===U?t.options[r]:e[r]}function Zi(t,e,r){return lt(Vi(t,e,r))}function Hi(t){const r=(4294901760&t)>>16,n=t&e,o=new Date(1980+((65024&r)>>9),((480&r)>>5)-1,31&r,(63488&n)>>11,(2016&n)>>5,2*(31&n),0);return o<I?I:o}function Gi(t){return new Date(Number(t/BigInt(1e4)-BigInt(116444736e5)))}function Yi(t,e){return t.getUint8(e)}function Ki(t,e){return t.getUint16(e,!0)}function qi(t,e){return t.getUint32(e,!0)}function Xi(t,e){const r=t.getBigUint64(e,!0);if(r>ui)throw new Error(La);return Number(r)}var $i=Object.freeze({__proto__:null,ERR_AMBIGUOUS_ARCHIVE:Ca,ERR_BAD_FORMAT:ga,ERR_CENTRAL_DIRECTORY_NOT_FOUND:xa,ERR_CODEC_OUT_OF_MEMORY:hr,ERR_ENCRYPTED:za,ERR_ENCRYPTED_CENTRAL_DIRECTORY:ka,ERR_ENTRY_DATA_OUT_OF_BOUNDS:Oa,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Ra,ERR_EOCDR_NOT_FOUND:Aa,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Fa,ERR_INVALID_AUTHENTICATION_CODE:be,ERR_INVALID_COMPRESSED_DATA:mr,ERR_INVALID_CRC32:yr,ERR_INVALID_FILENAME_VALIDATION:va,ERR_INVALID_MAX_APPENDED_DATA_SIZE:_a,ERR_INVALID_PASSWORD:Ee,ERR_INVALID_STRICTNESS:Na,ERR_INVALID_UNCOMPRESSED_SIZE:pr,ERR_LOCAL_FILE_HEADER_NOT_FOUND:Da,ERR_OVERLAPPING_ENTRY:Ta,ERR_SPLIT_ZIP_FILE:Ua,ERR_UNSAFE_FILENAME:Ma,ERR_UNSUPPORTED_COMPRESSION:or,ERR_UNSUPPORTED_ENCRYPTION:Ia,ERR_UNSUPPORTED_UINT64:La,ERR_WORKER_STARTUP_TIMEOUT:Gr,WARNING_APPENDED_DATA:Ha,WARNING_COMPRESSED_PATCHED_DATA:Wa,WARNING_DUPLICATE_FILENAME:$a,WARNING_MALFORMED_EXTRA_FIELD:ja,WARNING_MISMATCHED_CENTRAL_DIRECTORY_OFFSET:qa,WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG:ei,WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD:ri,WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES:ni,WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME:ti,WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY:Ja,WARNING_MISSING_ZIP64_EXTRA_FIELD:Xa,WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY:Qa,WARNING_PREPENDED_CENTRAL_DIRECTORY:Ya,WARNING_PREPENDED_DATA:Ga,WARNING_TRAILING_CENTRAL_DIRECTORY_DATA:Ka,WARNING_UNKNOWN_VERSION:Pa,WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA:Va,WARNING_UNSORTED_CENTRAL_DIRECTORY:Ba,WARNING_WRAPPED_ENTRIES_COUNT:Za,ZipReader:fi,ZipReaderStream:wi,isZipFile:di});const Ji="File already exists",Qi="Zip file comment exceeds 64KB",ts="Invalid zip file comment (must be a Uint8Array)",es="File entry comment exceeds 64KB",rs="Invalid file entry comment (must be a string)",ns="Invalid date (must be a valid Date instance)",os="File entry name exceeds 64KB",as="Version exceeds 65535",is="The strength must equal 1, 2, or 3",ss="Encryption is not supported in USDZ files",cs="Split zip files are not supported in USDZ files",ls="Encryption is not supported when the 'passThrough' option is set to true (use 'compressed' instead)",us="Invalid extra field (must be a Map)",fs="Invalid extra field type (must be integer 0..65535)",ws="Invalid extra field data (must be a Uint8Array)",ds="Extra field data exceeds 64KB",ps=-2147483648,ms=2147483647,hs=BigInt(0),ys=BigInt("0x7fffffffffffffff"),Es="Zip64 is not supported (set the 'zip64' option to 'true')",bs="Undefined uncompressed size",Ss="Undefined compression method",gs="Undefined CRC32",As="Undetermined size",Rs="Undefined reader",xs="Invalid reader (must be a Reader instance, a ReadableStream instance, or an object with a 'readable' property)",Ds="Zip file not empty",Fs="Invalid uid (must be integer 0..2^32-1)",zs="Invalid gid (must be integer 0..2^32-1)",Is="Invalid UNIX mode (must be integer 0..65535)",Us="Invalid unixExtraFieldType (must be 'infozip' or 'unix')",Ts="uid/gid must be 0..65535 for unixExtraFieldType 'unix' (use 'infozip' for larger ids)",Os="Invalid msdosAttributesRaw (must be integer 0..255)",Cs="Invalid msdosAttributes (must be an object with boolean flags)",ks="Invalid level (must be integer 0..9)",Ms="Signature data exceeds 64KB",Ns="Invalid entry option (must be an entry returned by ZipReader#getEntries())",vs="The last modification date of an entry encrypted with ZipCrypto cannot be changed when passThrough is set",_s="compression unavailable",Ls="clamped last modification date",Bs=new Uint8Array([7,0,2,0,65,69,3,0,0]),Ps="infozip",Ws="unix",js=[8,9,5,3];let Vs=0;const Zs=[];class Hs{constructor(t,e={}){t=new Oo(t);const{availableSize:r=T,maxSize:n=T}=t,o=r>0&&r!==T&&n>0&&n!==T;if(o&&e[q])throw new Error(cs);Object.assign(this,{writer:t,Ut:o,options:e,Tt:new Map,Ot:new Set,offset:e[K]===U?t.size||t.writable.size||0:e[K],Ct:e[K]===U?0:e[K]-(t.size||t.writable.size||0),kt:new Set,Mt:[],warnings:[],Nt:0,vt:0,_t:U,Lt:!1})}prependZip(t){return qs(this,async function(t,e){if(t.Ot.size)throw new Error(Ds);await t.Bt(e)}(this,t))}appendZip(t,e={}){return qs(this,this.Bt(t,e))}async Bt(t,e={}){const r=this,{kt:n,Ot:a,Tt:i}=r,s=lt(e.filter);for(;n.size;)await Promise.allSettled(Array.from(n));let c;const l=new Promise(t=>c=t);n.add(l);const u=[];let f;try{t=new To(t),await ko(t),t.size!==U&&t.readUint8Array||(t=new eo(await Qe(t.readable)),await ko(t));const{ZipReader:e}=await Promise.resolve().then(function(){return $i}),n=new e(t),c=await n.getEntries(),l=[];for(const t of c)s&&!await s(t)||l.push(t);await n.close(),await ko(r.writer);const{directoryOffset:w}=n;l.forEach(({filename:t})=>{if(a.has(t))throw new Error(Ji);a.add(t),u.push(t)}),r.Pt=!0;const{Wt:d}=r;r.Wt=new Promise(t=>f=()=>{r.Pt=!1,t()}),await d,r.Ut&&(delete r.Ut,await async function(t){return Wt(await No(t,0,4)).getUint32(0,!0)==o}(t)||(await wc(r.writer,uc()),r.offset+=4));const p=await async function(t,e,r,n,o,a){const{writer:i}=t,s=new Map;if(i.closeDisk||a){const c=Array.from(r).sort((t,r)=>lc(e,t)-lc(e,r)),l=function(t,e,r){const n=new Array(e.length);let o=r;for(let r=e.length-1;r>=0;r--){const a=lc(t,e[r]),i=e[r+1];i&&lc(t,i)>a&&(o=lc(t,i)),n[r]=o}return n}(e,c,o),u=new Set(n);let f,w=0;for(let r=0;r<c.length;r++){const n=c[r];if(u.has(n)){const o=lc(e,n);o<w?s.set(n,f):(a||await sc(t,e,w,o-w),i.closeDisk&&oc(i,await cc(e,o))&&await i.closeDisk(),f={offset:ac(t,i),diskNumberStart:rc(i)},s.set(n,f),await sc(t,e,o,l[r]-o),w=l[r])}}a||await sc(t,e,w,o-w)}else{const n=t.offset;await sc(t,e,0,o),r.forEach(t=>s.set(t,{offset:n+lc(e,t),diskNumberStart:0}))}return s}(r,t,c,l,w,Boolean(s));l.forEach(t=>{const{version:e,rawLastModDate:r,rawFilename:n,bitFlag:o,encrypted:a,uncompressedSize:s,compressedSize:c,extraFieldZip64:l}=t;let{compressionMethod:u,rawExtraField:f}=t;const{level:w,languageEncodingFlag:d,dataDescriptor:m}=o;f=ic(f||v),t.extraFieldAES&&(u=99);const h=Ic(f),y=Boolean(l)&&l.uncompressedSize!==U,E=Boolean(l)&&l.compressedSize!==U,b=-7&Oc(w,d,m,a,u)|w<<1,{jt:S,Vt:g}=Uc({version:e,bitFlag:b,compressionMethod:u,uncompressedSize:s,compressedSize:c,rawLastModDate:r,rawFilename:n,Zt:E,Ht:y,extraFieldLength:h}),{crc32:A}=t;A!==U&&Dc(g,10,A);const{offset:R,diskNumberStart:x}=p.get(t);Object.assign(t,{Gt:!0,Ht:y,Zt:E,offset:R,diskNumberStart:x,Yt:!1,Kt:v,qt:v,Xt:v,$t:v,Jt:v,Qt:v,rawExtraField:f,te:v,jt:S,Vt:g}),i.set(t.filename,t)})}catch(t){throw u.forEach(t=>a.delete(t)),t}finally{c(),n.delete(l),f&&f()}}add(o="",i,s={}){const c=this,{kt:l}=c,u=async function(o,i,s,c){const l=(c=Object.assign({},c))[$];if(l!==U){const{ee:t,re:e}=function(t,e,n){if(null===t||typeof t!=k||Array.isArray(t))throw new Error(Ns);const{externalFileAttributes:o,versionMadeBy:a,comment:i,lastModDate:s,rawLastModDate:c,creationDate:l,lastAccessDate:u,uncompressedSize:f,encrypted:w,zipCrypto:d,crc32:p,compressionMethod:m,extraFieldAES:h,extraFieldUnix:y,internalFileAttributes:E,extraField:b,bitFlag:S,directory:g,uid:A,gid:R}=t,x={externalFileAttributes:o,versionMadeBy:a,comment:i,lastModDate:s,creationDate:l,lastAccessDate:u,internalFileAttributes:E,directory:g};S&&S.languageEncodingFlag&&(x[G]=!0);const D=function(t){if(t){const e=new Map;if(t.forEach((t,r)=>{ba.has(r)||e.set(r,t.data)}),e.size)return e}}(b);D&&(x[wa]=D),A===U&&R===U||Object.assign(x,{uid:A,gid:R,unixExtraFieldType:y?Ws:Ps});const F={};if(e&&!g)if(Object.assign(F,{uncompressedSize:f,crc32:p,compressionMethod:m}),e!==nt&&Object.assign(F,{encrypted:w,zipCrypto:d,encryptionStrength:h?h.strength:U}),S&&(F.dataDescriptor=S.dataDescriptor,F[H]=js[S.level]),n===U)F.rawLastModDate=c;else if(e!==nt&&d&&(!S||S.dataDescriptor)&&n instanceof Date&&function(t){let e=new Date(2e3*Math.ceil(Math.floor(t.getTime()/1e3)/2));return e<I?e=I:e>z&&(e=z),(e.getHours()<<3|e.getMinutes()>>3)&r}(n)!=(c>>>8&r))throw new Error(vs);return{ee:x,re:F}}(l,dt(yc(o,c,P)),yc(o,c,Go));delete c[$],c=Object.assign(t,e,c)}if(yc(o,c,ca)&&!i.endsWith(D)&&(i+=D),o.Ot.has(i))throw new Error(Ji);o.Ot.add(i),Vs<Tt().maxWorkers?Vs++:await new Promise(t=>Zs.push(t));try{return await async function(o,i,s,c){const l=function(n,o,a){let i=yc(n,a,ra),s=yc(n,a,ia,i?20:768);const c=yc(n,a,la),l=Sc(n,a,"uid"),u=Sc(n,a,"gid");let f=Sc(n,a,da),w=yc(n,a,"unixExtraFieldType"),d=yc(n,a,pa),p=yc(n,a,ma),m=yc(n,a,ha);if(mt(l,t,Fs),mt(u,t,zs),mt(f,e,Is),w!==U&&w!==Ps&&w!==Ws)throw new Error(Us);if(w===Ws&&(l!==U&&l>e||u!==U&&u>e))throw new Error(Ts);w!==U||l===U&&u===U||(w=Ps);let h=Sc(n,a,ta),y=yc(n,a,ea);const E=h!==U||y!==U;if(l!==U||u!==U||f!==U||w||c?(i=!1,s=s&r|768):E&&(i=!0,s&=r),mt(h,r,Os),y&&(typeof y!==k||Array.isArray(y)))throw new Error(Cs);if(s>e)throw new Error(as);let b=yc(n,a,Qo);const S=b!==U;S||(b=0),!a[ca]&&o.endsWith(D)&&(a[ca]=!0);const F=yc(n,a,ca);if(F?(o.endsWith(D)||(o+=D),S||(b=16,i||(b|=16877<<16))):i||S||(b=c?493<<16:27525120),!i){const t=f!==U||Boolean(d||p||m);f=f===U?b>>16&e:f&e,d?f|=R:d=Boolean(f&R),p?f|=x:p=Boolean(f&x),m?f|=512:m=Boolean(512&f),S&&!t||(F?f=-61441&f|A:f&g||(f|=32768),b=(f&e)<<16|b&e)}({msdosAttributesRaw:h,msdosAttributes:y}=function(t,e){if(t!==U)t&=r;else if(e!==U){const{readOnly:n,hidden:o,system:a,directory:i,archive:s}=e;let c=0;n&&(c|=1),o&&(c|=2),a&&(c|=4),i&&(c|=16),s&&(c|=32),t=c&r}return e===U&&(e={readOnly:Boolean(1&t),hidden:Boolean(2&t),system:Boolean(4&t),directory:Boolean(16&t),archive:Boolean(32&t)}),{msdosAttributesRaw:t,msdosAttributes:e}}(h,y)),E&&(b=b&t|h&r);const z=b>>16&e,I=f!==U&&40960==(f&g);return{name:o,ne:{versionMadeBy:s,msDosCompatible:Boolean(i),externalFileAttributes:b,unixExternalUpper:z,uid:l,gid:u,unixMode:f,unixExtraFieldType:w,symlink:I,setuid:d,setgid:p,sticky:m,msdosAttributesRaw:h,msdosAttributes:y}}}(o,i,c);({name:i}=l);const u=function(t,r,n){const o=bc(t,n,"encodeText")||te;let a=o(r,J);if(a===U&&(a=te(r)),Ic(a)>e)throw new Error(os);const i=n[Po]||"";if(typeof i!=M)throw new Error(rs);let s=o(i,Q);if(s===U&&(s=te(i)),Ic(s)>e)throw new Error(es);const c=yc(t,n,aa);if(c!==U&&c>e)throw new Error(as);const l=Ec(t,n,Go,new Date),u=yc(t,n,Yo),f=Ec(t,n,Ko),w=Ec(t,n,Xo),d=yc(t,n,Jo,0),p=dt(yc(t,n,P)),m=Boolean(p),h=!0===p;let y=yc(t,n,L),E=yc(t,n,B);wt(y,E),y=y&&y.length?y:U,E=E&&E.length?E:U;const b=Sc(t,n,"encryptionStrength",3),S=yc(t,n,sa),g=yc(t,n,"extendedTimestamp",!0),A=yc(t,n,"ntfsTimestamp"),R=yc(t,n,"keepOrder",!0),x=yc(t,n,j),D=yc(t,n,"bufferedWrite"),F=bc(t,n,"createTempStream"),z=yc(t,n,"dataDescriptorSignature",!0),I=ut(yc(t,n,W));ft(I);const T=yc(t,n,G,!Tc(a)||!Tc(s)),O=yc(t,n,ua),C=m||O===U?U:ur(O);if(!m&&O!==U&&0!==O&&8!==O&&!C)throw new Error(or);let k=Sc(t,n,H);if(mt(k,9,ks),t.options[q]){if(y!==U||E!==U)throw new Error(ss);k===U&&O===U&&(k=0)}m&&(k=ht(n[H]));let N=yc(t,n,V),v=yc(t,n,Y);D&&v===U&&(v=!1),(v===U||S&&!h)&&(v=!0),k!==U&&6!=k&&(N=!1);const _=yc(t,n,na);if(!(S||y===U&&E===U||Number.isInteger(b)&&b>=1&&b<=3))throw new Error(is);const Z=Js(n[wa]),K=Js(n.localExtraField),X=Js(n.centralExtraField);return{comment:i,ne:{rawFilename:a,rawComment:s,version:c,lastModDate:l,rawLastModDate:u,lastAccessDate:f,creationDate:w,internalFileAttributes:d,oe:m,ae:h,password:y,rawPassword:E,encryptionStrength:b,zipCrypto:S,extendedTimestamp:g,ntfsTimestamp:A,keepOrder:R,useWebWorkers:x,bufferedWrite:D,createTempStream:F,dataDescriptorSignature:z,signal:I,useUnicodeFileNames:T,compressionMethod:O,format:C?C.format:U,codecURI:C?C.codecURI:U,ie:C?C.versionNeeded:U,level:k,useCompressionStream:N,dataDescriptor:v,zip64:_,rawExtraField:Z,se:K,te:X}}}(o,i,c),{comment:f}=u,w=c[wa];o.Tt.set(i,U);const d=o._t,p={};let y,S;u.ne.keepOrder&&(p.ce=new Promise(t=>y=t)),o._t=p;try{const{ne:f}=u;0==f.level||f.compressionMethod!==U||f.oe||await async function(t){const{CompressionStream:e,CompressionStreamFallback:r}=t;return!(!r||r.requiresModule)||!(!zr(e)&&(n=e,!Fr(n,Sr)))||!!r&&await $r(t);var n}(Tt())||(f.level=0,_o(o.warnings,_s,i));const w=await async function(e,r,{ne:n},o){if(n.oe&&!r&&!yc(e,o,ca))throw new Error(Rs);let a;if(r){if(r=new To(r),await ko(r),!r.readUint8Array&&!r.readable)throw new Error(xs);({size:a}=r)}return Object.assign({reader:r},function(e,r,n,o,a){const{oe:i,ae:s,zipCrypto:c,password:l,rawPassword:u,encryptionStrength:f}=o;let{dataDescriptor:w,zip64:d,level:p,compressionMethod:m}=o,h=0,y=0,E=!1;if(i&&r){if(y=a[jo],y===U)throw new Error(bs);if(m===U)throw new Error(Ss)}const b=!0===d,S=yc(e,a,oa);if(r&&s&&!S&&Ic(l,u))throw new Error(ls);const g=r&&(Boolean(l&&Ic(l)||u&&Ic(u))||s&&S);r||(p=0,m=0);const A=Sa(g,c,f);r&&(i?(a.uncompressedSize=y,h=n===U?gc(y)+A:n+(s?0:A)):n===U?(w=!0,(d||d===U)&&(d=E=!0,h=4294967296)):(a.uncompressedSize=y=n,h=(Ac(m,p)?gc(y):y)+A));const R=!(g||r&&(0!==n||i)||Ac(m,p));R&&yc(e,a,Y)===U&&(w=!1);const x=b||E||y>=t,D=b||h>=t;if(x||D){if(!1===d)throw new Error(Es);d=!0}return d=d||!1,{le:h,ne:{dataDescriptor:w,ue:R,zip64:d,Gt:b,fe:E,Ht:x,Zt:D,uncompressedSize:y,level:p,compressionMethod:m,encrypted:g}}}(e,Boolean(r),a,n,o))}(o,s,u,c);({reader:s}=w);const g=nc(o.writer),A=rc(o.writer);let R=c.crc32===U?c[fa]:c.crc32;const x=w.ne.encrypted&&!f.zipCrypto;if(f.oe&&!f.ae&&x&&(R=U),f.oe&&s&&!x&&R===U)throw new Error(gs);const D=function(t){const{rawFilename:r,lastModDate:o,rawLastModDate:a,lastAccessDate:i,creationDate:s,level:c,zip64:l,zipCrypto:u,useUnicodeFileNames:f,dataDescriptor:w,directory:d,rawExtraField:p,se:y,encryptionStrength:S,extendedTimestamp:g,ntfsTimestamp:A,oe:R,encrypted:x,Ht:D,Zt:T,uncompressedSize:O,fe:C,crc32:k}=t;let{version:M,compressionMethod:N}=t;const _=!d&&Ac(N,c);let L;const B=R||!_,P=l&&(t.bufferedWrite||!w||!D&&!T||B&&!C),W=P||l&&w&&(D||T);if(l&&(D||T)){const t=20,e=ec(t);if(e.we(1),e.we(t-4),L=e.ct,P&&(e.de(O),B)){const t=Sa(x,u,S);e.de(R?0:O+t)}}else L=v;let j,V,Z,H,G,Y,K;if(x&&!u){const t=ec(Ic(Bs)+2);t.we(m),t.pe(Bs),j=t.ct,j[8]=S}else j=v;if(g){const t=mc(o),e=(X=t)>=ps&&X<=ms;if(e){const e=9+(i?4:0)+(s?4:0),r=ec(e);H=1+(i?2:0)+(s?4:0),G=t,r.we(h),r.we(e-4),r.me(H),r.he(t),i&&r.he(hc(mc(i))),s&&r.he(hc(mc(s))),Z=r.ct}else Z=v;if(A===U?!e||Boolean(i||s):A)try{const t=pc(o),e=ec(36);e.we(10),e.we(32),e.ye(4),e.we(1),e.we(24),e.de(t),e.de(i?pc(i):t),e.de(s?pc(s):t),V=e.ct}catch{V=v}else V=v}else V=Z=v;var X;try{const{uid:r,gid:n,unixExtraFieldType:o}=t;if(o!=Ps||r===U&&n===U)if(o!=Ws||r===U&&n===U)Y=K=v;else{const t=ec(8);t.we(b),t.we(4),t.we((r===U?0:r)&e),t.we((n===U?0:n)&e),Y=t.ct;const o=ec(4);o.we(b),o.we(0),K=o.ct}else{const t=tc(r===U?0:r),e=tc(n===U?0:n),o=3+t.length+e.length,a=ec(4+o);a.we(E),a.we(o),a.me(1),a.me(t.length),a.pe(t),a.me(e.length),a.pe(e),Y=K=a.ct}}catch{Y=K=v}N===U&&(N=_?8:0),M===U&&(M=0!=N||d||x?20:10);const{ie:$}=t;_&&$!==U&&(M=M>$?M:$),l&&(M=M>45?M:45),x&&!u&&(M=M>51?M:51,R&&k!==U&&(j[4]=1),xc(Wt(j),9,N),N=99);const J=W?Ic(L):0,Q=J+Ic(j,Z,V,Y,p,y);if(Q+(t[q]?67:0)>e)throw new Error(ds);const tt=new Date(2e3*Math.ceil(Math.floor(o.getTime()/1e3)/2)),et=tt<I?I:tt>z?z:tt,rt=Ic(Z)?new Date(1e3*mc(o)):Ic(V)?o:et,{jt:nt,Vt:ot,rawLastModDate:at}=Uc({version:M,bitFlag:Oc(c,f,w,x,N),compressionMethod:N,uncompressedSize:O,lastModDate:et,rawLastModDate:a,rawFilename:r,Zt:T,Ht:D,extraFieldLength:Q}),it=ec(F+Ic(r)+Q),st=it.ct,ct=Wt(st);return it.he(n),it.pe(nt),it.pe(r),W&&it.pe(L),it.pe(j),it.pe(Z),it.pe(V),it.pe(Y),it.pe(p),it.pe(y),w&&(T||Dc(ct,18,0),D||Dc(ct,22,0)),{Ee:st,be:ct,jt:nt,Vt:ot,lastModDate:rt,Se:rt===et&&tt.getTime()!=et.getTime(),rawLastModDate:at,encrypted:x,compressed:_,version:M,compressionMethod:N,ge:H,Ae:G,Kt:v,Re:J,Xt:Z,$t:V,Jt:Y,Qt:K,qt:j,extraFieldLength:Q}}(c=Object.assign({},c,l.ne,u.ne,w.ne,{signature:c[fa],crc32:R,offset:o.offset-g,diskNumberStart:A,[q]:o.options[q]}));D.Se&&_o(o.warnings,Ls,i);const O=function({zip64:t,dataDescriptor:e,dataDescriptorSignature:r}){let n,o=v,i=0,s=t?20:12;return r&&(s+=4),e&&(o=new Uint8Array(s),n=Wt(o),r&&(i=4,Dc(n,0,a))),{xe:o,De:n,Fe:i}}(c),C=Ic(D.Ee,O.xe);S=await async function(e,n,o,a,i){const{Tt:s,writer:c}=e,{keepOrder:l,dataDescriptor:u,ue:f,signal:w}=i,{ze:d,zt:p,Ie:m,Ue:h}=a,y=e.options[q];let E,b,S,g,A,R,x,D=p,z=0;const I=l&&m?m.ce:U;s.set(n,D);try{i.bufferedWrite||!l||e.Pt||e.Nt||e.vt||!u&&!f?(E=!0,e.Nt++,x=i.createTempStream?await i.createTempStream():new TransformStream(U,U,{highWaterMark:T}),x.size=0,await ko(c)):(b=!0,e.vt++,x=c,await I,await O()),await ko(x);const p=nc(c);e.Ut&&!E&&await fc(e,c),y&&!E&&Qs(a,e.offset-p);const{Ee:m}=d;E||await C();const h=rc(c),S=ac(e,c);if(D.diskNumberStart=h,E||(A=!0,R=c.size,await wc(x,m)),D=await async function(e,n,{diskNumberStart:o,ce:a},i,s,c){const{ze:l,Te:u,Oe:f}=i,{jt:w,Vt:d,lastModDate:p,rawLastModDate:m,encrypted:h,compressed:y,version:E,compressionMethod:b,Kt:S,Re:g,Xt:A,ge:R,Ae:x,$t:D,Jt:F,Qt:z,qt:I}=l,{xe:T}=u,{rawFilename:O,lastAccessDate:C,creationDate:k,password:M,rawPassword:N,level:v,useUnicodeFileNames:_,zip64:L,Gt:B,Ht:P,Zt:W,zipCrypto:j,dataDescriptor:V,directory:Z,executable:H,versionMadeBy:G,rawComment:Y,rawExtraField:K,te:q,useWebWorkers:X,onstart:$,onprogress:J,onend:Q,signal:tt,encryptionStrength:et,extendedTimestamp:rt,msDosCompatible:nt,internalFileAttributes:ot,externalFileAttributes:at,uid:it,gid:st,unixMode:ct,symlink:lt,setuid:ut,setgid:wt,sticky:dt,unixExternalUpper:pt,msdosAttributesRaw:mt,msdosAttributes:ht,useCompressionStream:yt,oe:Et,ae:bt,format:St,codecURI:gt}=c,At={ce:a,versionMadeBy:G,zip64:L,Gt:B,directory:Boolean(Z),executable:Boolean(H),filenameUTF8:Boolean(_),rawFilename:O,commentUTF8:Boolean(_),rawComment:Y,Kt:S,Re:g,Xt:A,$t:D,Jt:F,Qt:z,qt:I,rawExtraField:K,te:q,extendedTimestamp:rt,msDosCompatible:nt,internalFileAttributes:ot,externalFileAttributes:at,diskNumberStart:o,uid:it,gid:st,unixMode:ct,symlink:Boolean(lt),setuid:ut,setgid:wt,sticky:dt,unixExternalUpper:pt,msdosAttributesRaw:mt,msdosAttributes:ht};let{crc32:Rt,uncompressedSize:xt}=c,Dt=0;Et||(xt=0);const{writable:Ft}=n;if(e){const o=e.size,a=Je(vo(e,{size:o})),i={options:{codecType:jr,inputSize:o,level:v,rawPassword:N,password:M,encryptionStrength:et,zipCrypto:h&&j,passwordVerification:h&&j&&m>>8&r,computeCrc32:!Et,compressed:y&&!Et,encrypted:h&&!bt,useWebWorkers:X,useCompressionStream:yt,format:St,codecURI:gt,compressionMethod:b},config:s,F:{signal:tt,size:o,onstart:$,onprogress:J,onend:Q}};try{const e=await Rn({readable:a,writable:Ft},i);if(Dt=e.outputSize,n.size+=Dt,ft(tt),Et||(xt=e.inputSize,h&&!j||(Rt=e.crc32)),!W&&Dt>=t||!P&&xt>=t)throw new Error(Es)}catch(t){const{outputSize:e}=i;throw e!==U?n.size+=e:jt(t)&&t.outputSize!==U&&(n.size+=t.outputSize),t}}return function({crc32:t,compressedSize:e,uncompressedSize:r,ze:n,Te:o},{zip64:a,zipCrypto:i,oe:s,dataDescriptor:c}){const{Vt:l,encrypted:u}=n,{De:f,Fe:w}=o;u&&!i&&!s||t===U||(Dc(l,10,t),c&&Dc(f,w,t)),a?c&&(Fc(f,w+4,BigInt(e)),Fc(f,w+12,BigInt(r))):(Dc(l,14,e),Dc(l,18,r),c&&(Dc(f,w+4,e),Dc(f,w+8,r)))}({crc32:Rt,compressedSize:Dt,uncompressedSize:xt,ze:l,Te:u},c),V&&await wc(n,T),Object.assign(At,{uncompressedSize:xt,compressedSize:Dt,lastModDate:p,rawLastModDate:m,creationDate:k,lastAccessDate:C,encrypted:Boolean(h),zipCrypto:Boolean(j),size:f+Dt,compressionMethod:b,version:E,jt:w,Vt:d,signature:Rt,crc32:!h||j||Et?Rt:U,ge:R,Ae:x,Ht:P,Zt:W}),At}(o,x,D,a,Tt(),i),E||(A=!1),s.set(n,D),D.filename=n,E){if(await Promise.all([x.writable.getWriter().close(),I]),await O(),e.Ut&&await fc(e,c),g=!0,R=c.size,await C(),D.diskNumberStart=rc(c),D.offset=ac(e,c),y){const t=a.Oe;Qs(a,e.offset-nc(c)),D.size+=a.Oe-t}!function({rawFilename:t,encrypted:e,zip64:r,Re:n,crc32:o,compressedSize:a,uncompressedSize:i,Ht:s,Zt:c},l,{dataDescriptor:u,oe:f}){if(u||((!e||f&&o!==U)&&Dc(l,14,o),c||Dc(l,18,a),s||Dc(l,22,i)),r&&n){const e=F+Ic(t)+4;Fc(l,e,BigInt(i)),Fc(l,e+8,BigInt(a))}}(D,d.be,i),await wc(c,d.Ee),await dc(x.readable,c,w,t=>z+=t),c.size+=x.size,g=!1}else D.diskNumberStart=h,D.offset=S;return e.offset+=D.size,D}catch(t){if(g||A){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch{}e.offset+=c.size-R,E&&(e.offset+=z)}throw s.delete(n),t}finally{if(E&&e.Nt--,b&&e.vt--,h&&h(I),S&&S(),E&&x&&x.dispose)try{await x.dispose()}catch{}}async function O(){e.Pt=!0;const{Wt:t}=e;e.Wt=new Promise(t=>S=()=>{e.Pt=!1,t()}),await t}async function C(){oc(c,Ic(d.Ee))&&await c.closeDisk()}}(o,i,s,{ze:D,Te:O,Oe:C,zt:p,Ie:d,Ue:y},c)}catch(t){throw o.Tt.delete(i),t}finally{y&&y(d&&d.ce)}return Object.assign(S,{name:i,comment:f,extraField:w}),new Ea(S)}(o,i,s,c)}catch(t){throw o.Ot.delete(i),t}finally{const t=Zs.shift();t?t():Vs--}}(c,o,i,s);l.add(u);const f=()=>l.delete(u);return Promise.prototype.then.call(u,f,f),qs(c,u)}remove(t){const{Ot:e,Tt:r}=this;if(typeof t==M&&(t=r.get(t)),t&&t.filename!==U){const{filename:n}=t;if(e.has(n)&&r.has(n))return e.delete(n),r.delete(n),!0}return!1}async close(r=v,n={}){const o=this,{kt:a,writer:d}=this,{writable:p}=d;if(o.Lt)return Ks(d);if(!(r instanceof Uint8Array))throw new Error(ts);if(Ic(r)>e)throw new Error(Qi);for(;a.size;)await Promise.allSettled(Array.from(a));await Promise.allSettled(o.Mt.map(t=>t.Ce));const m=o.Mt.filter(t=>t.ke&&!t.Me);if(m.length){const t=m.map(t=>t.error);m.forEach(t=>t.Me=!0);const[e]=t;try{e.entryErrors=t}catch{}throw e}return await async function(r,n,o){const{Ne:a,ve:d}=function(r){let n=0,o=!1;for(const[,a]of r){const{rawFilename:r,qt:i,rawComment:s,$t:c,Qt:l,rawExtraField:u,te:w,ge:d,Ae:p,Gt:m,uncompressedSize:y,compressedSize:E}=a;let{Ht:b,Zt:S}=a;m||(b&&y<t&&(b=a.Ht=!1),S&&E<t&&(S=a.Zt=!1)),o=o||b||S;const g=a.offset>=t,A=a.diskNumberStart>=e;let R,x;if(g||A||b||S){const t=4+(b?8:0)+(S?8:0)+(g?8:0)+(A?4:0),e=ec(t);e.we(1),e.we(t-4),b&&e.de(y),S&&e.de(E),g&&e.de(a.offset),A&&e.he(a.diskNumberStart),R=e.ct}else R=v;if(a.Kt=R,a._e=g,a.Yt=A,p===U)x=v;else{const t=ec(9);t.we(h),t.we(5),t.me(d),t.he(p),x=t.ct}a.Xt=x;const D=Ic(R,i,c,l,x,u,w);if(D>e)throw new Error(ds);n+=f+Ic(r,s)+D}return{Ne:n,ve:o}}(r.Tt),{Le:p,Be:m,Pe:y}=await async function(r,n,o){const{Tt:a,writer:i}=r,c=new Uint8Array(n);await ko(i);let l=0,u=0,w=rc(i),d=nc(i),p=0;for(const[r,n]of Array.from(a.values()).entries()){const{offset:m,rawFilename:h,Kt:y,qt:E,Xt:b,$t:S,Qt:g,rawExtraField:A,te:R,rawComment:x,versionMadeBy:D,jt:F,Vt:z,Ht:I,Zt:U,Yt:T,_e:O,internalFileAttributes:C,externalFileAttributes:k,diskNumberStart:M,uncompressedSize:N,compressedSize:v}=n,_=Ic(y,E,b,S,g,A,R),L=f+Ic(h,x)+_;oc(i,l+L-u)&&(await wc(i,c.slice(u,l)),u=l,p=0,await i.closeDisk()),0==r&&(w=rc(i),d=nc(i)),I||Dc(z,18,N),U||Dc(z,14,v),(O||T)&&n.version<45&&xc(z,0,45);const B=ec(L);if(B.he(s),B.we(D),B.pe(F.subarray(0,24)),B.we(_),B.we(Ic(x)),B.we(T?e:M),B.we(C),B.he(k),B.he(O?t:m),B.pe(h),B.pe(y),B.pe(E),B.pe(b),B.pe(S),B.pe(g),B.pe(A),B.pe(R),B.pe(x),zc(c,B.ct,l),l+=L,p++,o.onprogress)try{await o.onprogress(r+1,a.size,new Ea(n))}catch{}}return await wc(i,u?c.slice(u):c),{Le:{diskNumber:w,diskOffset:d},Be:{diskNumber:rc(i),We:p},Pe:c}}(r,a,o),E=await async function(t,r,n){const o=bc(t,n,"signCentralDirectory");if(o){const n=await o(r),a=Ic(n);if(a>e)throw new Error(Ms);const s=ec(6+a);s.he(i),s.we(a),s.pe(n);const{writer:c}=t;return oc(c,Ic(s.ct))&&await c.closeDisk(),await wc(c,s.ct),6+a}return 0}(r,y,o);await async function(r,n,o,a){const{writer:i}=r,{Le:s,Be:f,je:d,ve:p}=a;let{Ne:m}=a,h=r.Tt.size,y=s.diskNumber,E=ac(r,s);const b=Ic(n);if(b>e)throw new Error(Qi);let S=yc(r,o,na),g=rc(i);if(oc(i,(S?98:w)+b)&&g++,E>=t||m>=t||h>=e||g>=e){if(!1===S)throw new Error(Es);S=!0}else S===U&&p&&(S=!0);const A=ec(S?98:w);oc(i,Ic(A.ct)+b)&&await i.closeDisk(),g=rc(i);let R=g==f.diskNumber?f.We:0;S&&(A.he(l),A.de(44),A.we(45),A.we(45),A.he(g),A.he(y),A.de(R),A.de(h),A.de(m),A.de(E),A.he(u),A.he(g),A.de(BigInt(ac(r,i))+BigInt(m)+BigInt(d)),A.he(g+1),yc(r,o,"supportZip64SplitFile",!0)&&(g=e,y=e),R=e,h=e,E=t,m=t),A.he(c),A.we(g),A.we(y),A.we(R),A.we(h),A.he(m),A.he(E),A.we(b),await wc(i,A.ct),b&&await wc(i,n)}(r,n,o,{Le:p,Be:m,Ne:a,je:E,ve:d})}(o,r,n),o.Lt=!0,!Co(d)&&yc(o,n,Z)||await p.getWriter().close(),Ks(d)}[_](){return this.close()}}class Gs{constructor(t={}){const{readable:e,writable:r}=new TransformStream;this.readable=e,this.zipWriter=new Hs(r,t),this.kt=new Set}transform(t){const e=this.zipWriter;let r;const{readable:n,writable:o}=new TransformStream({start(t){r=t},flush:()=>{!async function(){try{await e.close()}catch(t){await Xs(e,t)}}()}});return $s(this,this.zipWriter.add(t,n),t=>r.error(t)),{readable:this.readable,writable:o}}writable(t){let e;const{readable:r,writable:n}=new TransformStream({start(t){e=t}});return $s(this,this.zipWriter.add(t,r),t=>e.error(t)),n}async close(t,e={}){const{zipWriter:r}=this,n=(await Promise.allSettled(Array.from(this.kt))).filter(t=>"rejected"==t.status).map(t=>t.reason);if(n.length){const[t]=n;try{t.entryErrors=n}catch{}throw await Xs(r,t),t}try{return await r.close(t,e)}catch(t){throw await Xs(r,t),t}}}class Ys extends Promise{then(t,e){const{Ve:r}=this;return r&&(r.Me=!0),super.then(t,e)}}function Ks(t){return t.getData?t.getData():t.writable}function qs(t,e){const r=new Ys((t,r)=>Promise.prototype.then.call(e,t,r)),n={};return r.Ve=n,n.Ce=Promise.prototype.then.call(r,U,t=>Object.assign(n,{ke:!0,error:t})),t.Mt.push(n),r}async function Xs(t,e){try{await t.writer.writable.abort(e)}catch{}}function $s(t,e,r){t.kt.add(e),e.catch(t=>{try{r(t)}catch{}})}function Js(t){if(!t)return v;if(!(t instanceof Map))throw new Error(us);let r=0,n=0;t.forEach((t,n)=>{if(pt(n,e,fs),!(t instanceof Uint8Array))throw new Error(ws);if(Ic(t)>e)throw new Error(ds);r+=4+Ic(t)});const o=new Uint8Array(r),a=Wt(o);return t.forEach((t,e)=>{xc(a,n,e),xc(a,n+2,Ic(t)),zc(o,t,n+4),n+=4+Ic(t)}),o}function Qs(t,e){const{ze:r}=t;let{Ee:n,extraFieldLength:o}=r,a=64-(e+Ic(n))%64;a<4&&(a+=64);const i=new Uint8Array(a),s=Wt(i);xc(s,0,y),xc(s,2,a-4);const c=n;r.Ee=n=new Uint8Array(Ic(c)+a),zc(n,c),zc(n,i,Ic(c));const l=Wt(n);xc(l,28,o+a),r.be=l,t.Oe+=a}function tc(t){const e=new Uint8Array(4);Wt(e).setUint32(0,t,!0);let r=4;for(;r>1&&0===e[r-1];)r--;return e.subarray(0,r)}function ec(t){const e=new Uint8Array(t),r=Wt(e);let n=0;return{ct:e,me:t=>{!function(t,e,r){t.setUint8(e,r)}(r,n,t),n+=1},we:t=>{xc(r,n,t),n+=2},he:t=>{Dc(r,n,t),n+=4},de:t=>{Fc(r,n,BigInt(t)),n+=8},pe:t=>{zc(e,t,n),n+=Ic(t)},ye:t=>n+=t}}function rc(t){const{diskNumber:e=0}=t;return e}function nc(t){const{diskOffset:e=0}=t;return e}function oc(t,e){const{availableSize:r=T}=t;return e>r}function ac(t,{diskNumber:e=0,diskOffset:r=0}){return t.offset-r-(e?t.Ct:0)}function ic(t){const e=Wt(t);let r=0;for(;r+4<=Ic(t);){const n=4+Rc(e,r+2);if(1==Rc(e,r))return ic(Bt(t.subarray(0,r),t.subarray(Math.min(r+n,Ic(t)))));r+=n}return t}async function sc(t,e,r,n){if(n>0){const{writer:o}=t;let a=0;try{await dc(vo(e,{offset:r,size:n}),o,U,t=>a+=t)}catch(e){t.hasCorruptedEntries=!0;try{e.corruptedEntry=!0}catch{}throw e}finally{o.size+=a,t.offset+=a}}}async function cc(t,e){const r=await No(t,e,F);if(Ic(r)<F)return F;const n=Wt(r);return F+Rc(n,26)+Rc(n,28)}function lc(t,{offset:e,diskNumberStart:r}){return e+(t.ht?t.ht(r):0)}function uc(){const t=new Uint8Array(4);return Dc(Wt(t),0,o),t}async function fc(t,e){delete t.Ut,await wc(e,uc()),t.offset+=4}async function wc(t,e){const{writable:r}=t,n=r.getWriter();try{await n.ready,t.size+=Ic(e),await n.write(e)}finally{n.releaseLock()}}async function dc(t,e,r,n){const o=e.writable.getWriter();try{await t.pipeTo(new WritableStream({async write(t){await o.ready,await o.write(t),n(Ic(t))}}),{preventClose:!0,preventAbort:!0,signal:r})}finally{o.releaseLock()}}function pc(t){if(t){const e=(BigInt(t.getTime())+BigInt(116444736e5))*BigInt(1e4);return e<hs?hs:e>ys?ys:e}}function mc(t){return Math.floor(t.getTime()/1e3)}function hc(t){return Math.min(ms,Math.max(ps,t))}function yc(t,e,r,n){const o=e[r]===U?t.options[r]:e[r];return o===U?n:o}function Ec(t,e,r,n){const o=yc(t,e,r,n);if(null===o)return n;if(o!==U&&(typeof o.getTime!=C||Number.isNaN(o.getTime())))throw new Error(ns);return o}function bc(t,e,r){return lt(yc(t,e,r))}function Sc(t,e,r,n){return ht(yc(t,e,r,n))}function gc(t){return t+5*(Math.floor(t/16383)+1)}function Ac(t,e){return t===U?e===U||e>0:0!==t}function Rc(t,e){return t.getUint16(e,!0)}function xc(t,e,r){t.setUint16(e,r,!0)}function Dc(t,e,r){t.setUint32(e,r,!0)}function Fc(t,e,r){t.setBigUint64(e,r,!0)}function zc(t,e,r){t.set(e,r)}function Ic(...t){let e=0;return t.forEach(t=>t&&(e+=t.length)),e}function Uc({version:e,bitFlag:r,compressionMethod:n,uncompressedSize:o,compressedSize:a,lastModDate:i,rawLastModDate:s,rawFilename:c,Zt:l,Ht:u,extraFieldLength:f}){const w=ec(26),d=w.ct,p=Wt(d);if(w.we(e),w.we(r),w.we(n),s===U){const t=new Uint32Array(1),e=Wt(t);xc(e,0,(i.getHours()<<6|i.getMinutes())<<5|i.getSeconds()/2),xc(e,2,(i.getFullYear()-1980<<4|i.getMonth()+1)<<5|i.getDate()),s=t[0]}return w.he(s),w.ye(4),l||a!==U?w.he(l?t:a):w.ye(4),u||o!==U?w.he(u?t:o):w.ye(4),w.we(Ic(c)),w.we(f),{jt:d,Vt:p,rawLastModDate:s}}function Tc(t){return t.every(t=>t>=32&&t<=126)}function Oc(t,e,r,n,o){let a=0;return e&&(a|=S),r&&(a|=8),8!=o&&9!=o||(t>=0&&t<=3&&(a|=6),t>3&&t<=5&&(a|=4),9==t&&(a|=2)),n&&(a|=1),a}function Cc(){return"application/octet-stream"}function kc(){const{CompressionStream:t,DecompressionStream:e,CompressionStreamFallback:r,DecompressionStreamFallback:n}=Tt(),o=[{compressionMethod:0,compression:!0,decompression:!0,registered:!1},{compressionMethod:8,compression:Mc(r,Er)||Mc(t,Er)||Mc(t,Sr),decompression:Mc(n,Er)||Mc(e,Er)||Mc(e,Sr),registered:!1},{compressionMethod:9,compression:!1,decompression:Mc(n,br)||Mc(e,br),registered:!1}];for(const t of fr()){const e=wr(t.format);o.push({compressionMethod:t.compressionMethod,compression:e?typeof e.CompressionStream==C:U,decompression:e?typeof e.DecompressionStream==C:U,registered:!0})}return o}function Mc(t,e){if(!t)return!1;const{supportedFormats:r}=t;return r?r.includes(e):Fr(t,e)}const Nc="2.20.0",vc=1048576,_c=".zip.js-temp";function Lc(t={}){const{thresholdBytes:e=vc,directoryName:r=_c,getDirectory:n=()=>navigator.storage.getDirectory()}=t;let o;function a(){return o||(o=Promise.resolve(n()).then(t=>t.getDirectoryHandle(r,{create:!0}))),o}return function(){const t=[];let r,n,o,i,s=0,c=!1;const l=new WritableStream({async write(i){c?await o.write(i):(t.push(i),s+=i.length,s>e&&await async function(){const e=await a();r=crypto.randomUUID?crypto.randomUUID():Array.from(crypto.getRandomValues(new Uint8Array(16)),t=>t.toString(16).padStart(2,"0")).join(""),n=await e.getFileHandle(r,{create:!0}),o=(await n.createWritable()).getWriter(),c=!0;for(const e of t)await o.write(e);t.length=0}())},async close(){o&&(await o.close(),o=null)}});let u=0;return{writable:l,readable:new ReadableStream({async pull(e){if(c){if(!i){const t=await n.getFile();i=t.stream().getReader()}const{value:t,done:r}=await i.read();r?e.close():e.enqueue(t)}else u<t.length?e.enqueue(t[u++]):e.close()},async cancel(t){i&&await i.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(o){try{await o.close()}catch{}o=null}if(r){try{const t=await a();await t.removeEntry(r)}catch{}n=r=null}t.length=0}}}}const Bc=1048576;function Pc(t={}){const{thresholdBytes:e=Bc}=t;return function(){const t=[];let r,n,o,a=0,i=!1;const s=new WritableStream({async write(o){i?await r.write(o):(t.push(o),a+=o.length,a>e&&await async function(){const e=new TransformStream;n=Qe(e.readable),r=e.writable.getWriter(),i=!0;for(const e of t)await r.write(e);t.length=0}())},async close(){r&&(await r.close(),r=null)}});let c=0;return{writable:s,readable:new ReadableStream({async pull(e){if(i){if(!o){const t=await n;o=t.stream().getReader()}const{value:t,done:r}=await o.read();r?e.close():e.enqueue(t)}else c<t.length?e.enqueue(t[c++]):e.close()},async cancel(t){o&&await o.cancel(t)}},{highWaterMark:0}),dispose:async function(){if(r){try{await r.abort()}catch{}r=null}n&&(n.catch(()=>{}),n=null),t.length=0}}}}const Wc=1048576,jc=".zip.js-temp",Vc="createSyncAccessHandle is only available in dedicated workers";function Zc(t={}){const{thresholdBytes:e=Wc,directoryName:r=jc,getDirectory:n}=t;if(!(n||"undefined"!=typeof FileSystemFileHandle&&FileSystemFileHandle.prototype.createSyncAccessHandle))throw new Error(Vc);const o=n||(()=>navigator.storage.getDirectory());let a;function i(){return a||(a=Promise.resolve(o()).then(t=>t.getDirectoryHandle(r,{create:!0}))),a}return function(){const t=[];let r,n,o=0,a=!1,s=0,c=0;const l=new WritableStream({async write(c){a?(n.write(c,{at:s}),s+=c.length):(t.push(c),o+=c.length,o>e&&await async function(){const e=await i();r=crypto.randomUUID?crypto.randomUUID():Array.from(crypto.getRandomValues(new Uint8Array(16)),t=>t.toString(16).padStart(2,"0")).join("");const o=await e.getFileHandle(r,{create:!0});n=await o.createSyncAccessHandle(),a=!0;for(const e of t)n.write(e,{at:s}),s+=e.length;t.length=0}())},close(){n&&n.flush()}});let u=0;const f=new ReadableStream({pull(e){if(a){const t=s-c;if(t<=0)return void e.close();const r=new Uint8Array(Math.min(524288,t)),o=n.read(r,{at:c});o?(c+=o,e.enqueue(r.subarray(0,o))):e.close()}else u<t.length?e.enqueue(t[u++]):e.close()}},{highWaterMark:0});return{writable:l,readable:f,dispose:async function(){if(n){try{n.close()}catch{}n=null}if(r){try{const t=await i();await t.removeEntry(r)}catch{}r=null}t.length=0}}}}try{_t({baseURI:import.meta.url})}catch{}const Hc="deflate",Gc="deflate-raw",Yc="deflate64-raw",Kc="gzip",qc=[Hc,Gc,Kc],Xc=[Hc,Gc,Kc,Yc];let $c,Jc,Qc,tl,el;function rl(t,e){return-4===e&&(t.code="Z_MEM_ERROR"),t}function nl(t,e,r={}){if(!(t?qc:Xc).includes(e))throw new TypeError("Unsupported format: "+e);if(!$c){const t=new Error("WASM module not loaded");throw t.cause=el,t}const n="number"==typeof r.level?r.level:-1,o="number"==typeof r.outBuffer?r.outBuffer:65536,a="number"==typeof r.inBufferSize?r.inBufferSize:65536,i={Ze:0,in:0,inBufferSize:0,He:0,Ge:!1};let s,c,l,u,f=!0,w=!1;return function(){try{let r;if(i.Ze=Jc(o),i.in=Jc(a),i.inBufferSize=a,!i.Ze||!i.in)throw rl(new Error("allocation failed"),-4);if(t?(i.Ye=$c.deflate_process,i.Ke=$c.deflate_last_consumed,i.qe=$c.deflate_end,i.He=$c.deflate_new(),r=e===Kc?$c.deflate_init_gzip(i.He,n):e===Gc?$c.deflate_init_raw(i.He,n):$c.deflate_init(i.He,n)):e===Yc?(i.Ye=$c.inflate9_process,i.Ke=$c.inflate9_last_consumed,i.qe=$c.inflate9_end,i.He=$c.inflate9_new(),r=$c.inflate9_init_raw(i.He)):(i.Ye=$c.inflate_process,i.Ke=$c.inflate_last_consumed,i.qe=$c.inflate_end,i.He=$c.inflate_new(),r=e===Gc?$c.inflate_init_raw(i.He):e===Kc?$c.inflate_init_gzip(i.He):$c.inflate_init(i.He)),0!==r)throw rl(new Error("init failed:"+r),r)}catch(t){throw m(i),t}}(),{readable:new ReadableStream({start(t){s=t},pull(){f=!1,p()},cancel(t){w=!0,u=t,m(i),c.error(t),p()}},{highWaterMark:0}),writable:new WritableStream({start(t){c=t},async write(t){if(f&&await new Promise(t=>l=t),w)throw u;try{!function(t){const e=new Uint8Array(tl.buffer),r=i.Ye,n=i.Ke,a=i.Ze;let s=0;for(;s<t.length;){if(i.Ge)throw new Error("trailing data after the end of the stream");const c=Math.min(t.length-s,32768);if((!i.in||i.inBufferSize<c)&&(i.in&&Qc&&(Qc(i.in),i.in=0),i.in=Jc(c),i.inBufferSize=c,!i.in))throw rl(new Error("allocation failed"),-4);e.set(t.subarray(s,s+c),i.in);const l=r(i.He,i.in,c,a,o,0),u=l>>24&255,f=128&u?u-256:u;if(f<0)throw rl(new Error("process error:"+f),f);const w=16777215&l;w&&d(e.slice(a,a+w));const p=n(i.He);if(1===u)i.Ge=!0;else if(0===p&&0===w)break;s+=p}}(t)}catch(t){throw m(i),s.error(t),t}},close(){if(w)return;try{!function(){const t=new Uint8Array(tl.buffer),e=i.Ye,r=i.Ze;for(;;){const n=e(i.He,0,0,r,o,4),a=n>>24&255,s=128&a?a-256:a;if(s<0)throw rl(new Error("process error:"+s),s);const c=16777215&n;if(c&&d(t.slice(r,r+c)),1===a||0===c)break}}()}catch(t){throw m(i),s.error(t),t}const t=m(i);if(0!==t){const e=rl(new Error("end error:"+t),t);throw s.error(e),e}s.close()},abort(t){m(i),s.error(t)}},{highWaterMark:1})};function d(t){f=!0,s.enqueue(t)}function p(){if(l){const t=l;l=null,t()}}function m(t){let e=0;return t.He&&t.qe&&(e=t.qe(t.He)),t.He=0,t.in&&Qc&&Qc(t.in),t.in=0,t.Ze&&Qc&&Qc(t.Ze),t.Ze=0,e}}class ol{constructor(t=Hc,e){return nl(!0,t,e)}}class al{constructor(t=Hc,e){return nl(!1,t,e)}}ol.requiresModule=!0,al.requiresModule=!0,ol.supportedFormats=qc,al.supportedFormats=Xc;const il=65536;let sl,cl;function ll(t){return new Uint8Array(t.memory.buffer)}let ul,fl=!1;var wl;async function dl(){await async function(){await Promise.allSettled([zn(),...En.map(t=>(Tn(t),t.terminate()))]),Yr=U,Kr=!1}(),ul=null,fl=!1,$c=Jc=Qc=tl=el=null,sl=null,cl=0}wl=function(t,e){const r=sl;let n=r?function(t,e,r){cl||(cl=t.malloc(il));const n=cl?t.aes_hmac_new():0;if(n){const o=ll(t);if(o.set(e,cl),o.set(r,cl+e.length),t.aes_hmac_init(n,cl,e.length,cl+e.length,r.length))return t.aes_hmac_end(n,0),0}return n}(r,t,e):0;if(!n)return we(t,e);const o=cl;return{process(t,e){for(let a=0;a<t.length;a+=il){const i=t.subarray(a,a+il),s=ll(r);s.set(i,o),r.aes_hmac_process(n,o,i.length,e?1:0),i.set(s.subarray(o,o+i.length))}},digest:()=>(r.aes_hmac_end(n,o),n=0,ll(r).slice(o,o+20)),dispose(){n&&(r.aes_hmac_end(n,0),n=0)}}},ke=wl||we,function({Xe:t}){Xr=t}({Xe:t=>{if(!ul){let{wasmURI:e}=t;typeof e==C&&(e=e()),ul=async function(t,{baseURI:e}){if(!fl)try{await async function(t,e){let r,n;try{try{n=new URL(t,e)}catch{}const o=await fetch(n);r=await o.arrayBuffer()}catch(e){if(!t.startsWith("data:application/wasm;base64,"))throw e;r=function(t){const e=t.split(",")[1],r=atob(e),n=r.length,o=new Uint8Array(n);for(let t=0;t<n;++t)o[t]=r.charCodeAt(t);return o.buffer}(t)}const o=await WebAssembly.instantiate(r);var a;(function(t){if($c=t,({malloc:Jc,free:Qc,memory:tl}=$c),"function"!=typeof Jc||"function"!=typeof Qc||!tl)throw $c=Jc=Qc=tl=null,new Error("Invalid WASM module")})(o.instance.exports),typeof(a=o.instance.exports).aes_hmac_new==C&&(sl=a,cl=0)}(t,e),fl=!0}catch(t){throw function(t){el=t}(t),t}}(e,t).catch(t=>{throw ul=null,t})}return ul}}),_t({CompressionStreamFallback:ol,DecompressionStreamFallback:al}),_t({workerURI:new URL("./zip-web-worker.js",import.meta.url).href,wasmURI:new URL("./zip-module.wasm",import.meta.url).href});export{eo as BlobReader,ro as BlobWriter,$n as Data64URIReader,Jn as Data64URIWriter,ct as ERR_ABORTED,Ca as ERR_AMBIGUOUS_ARCHIVE,ga as ERR_BAD_FORMAT,xa as ERR_CENTRAL_DIRECTORY_NOT_FOUND,hr as ERR_CODEC_OUT_OF_MEMORY,Ji as ERR_DUPLICATED_NAME,za as ERR_ENCRYPTED,ka as ERR_ENCRYPTED_CENTRAL_DIRECTORY,Oa as ERR_ENTRY_DATA_OUT_OF_BOUNDS,Ra as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,Aa as ERR_EOCDR_NOT_FOUND,Fa as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,vn as ERR_HTTP_RANGE,_n as ERR_HTTP_RESOURCE_CHANGED,Nn as ERR_HTTP_STATUS,be as ERR_INVALID_AUTHENTICATION_CODE,bt as ERR_INVALID_BASE_URI,er as ERR_INVALID_CODEC_DEFINITION,nr as ERR_INVALID_CODEC_MODULE,Qi as ERR_INVALID_COMMENT,ts as ERR_INVALID_COMMENT_TYPE,mr as ERR_INVALID_COMPRESSED_DATA,yr as ERR_INVALID_CRC32,ns as ERR_INVALID_DATE,is as ERR_INVALID_ENCRYPTION_STRENGTH,Ns as ERR_INVALID_ENTRY,es as ERR_INVALID_ENTRY_COMMENT,rs as ERR_INVALID_ENTRY_COMMENT_TYPE,os as ERR_INVALID_ENTRY_NAME,us as ERR_INVALID_EXTRAFIELD,ds as ERR_INVALID_EXTRAFIELD_DATA,ws as ERR_INVALID_EXTRAFIELD_DATA_TYPE,fs as ERR_INVALID_EXTRAFIELD_TYPE,va as ERR_INVALID_FILENAME_VALIDATION,ot as ERR_INVALID_FUNCTION_OPTION,zs as ERR_INVALID_GID,ks as ERR_INVALID_LEVEL,_a as ERR_INVALID_MAX_APPENDED_DATA_SIZE,Et as ERR_INVALID_MAX_WORKERS,Os as ERR_INVALID_MSDOS_ATTRIBUTES,Cs as ERR_INVALID_MSDOS_DATA,Ee as ERR_INVALID_PASSWORD,it as ERR_INVALID_PASSWORD_TYPE,st as ERR_INVALID_PASS_THROUGH_VALUE,xs as ERR_INVALID_READER,at as ERR_INVALID_SIGNAL,Ms as ERR_INVALID_SIGNATURE_DATA,Na as ERR_INVALID_STRICTNESS,Fs as ERR_INVALID_UID,pr as ERR_INVALID_UNCOMPRESSED_SIZE,Us as ERR_INVALID_UNIX_EXTRA_FIELD_TYPE,Ts as ERR_INVALID_UNIX_ID_SIZE,Is as ERR_INVALID_UNIX_MODE,St as ERR_INVALID_URI,as as ERR_INVALID_VERSION,Ln as ERR_ITERATOR_COMPLETED_TOO_SOON,Da as ERR_LOCAL_FILE_HEADER_NOT_FOUND,Ta as ERR_OVERLAPPING_ENTRY,rr as ERR_RESERVED_COMPRESSION_METHOD,Ua as ERR_SPLIT_ZIP_FILE,Ss as ERR_UNDEFINED_COMPRESSION_METHOD,gs as ERR_UNDEFINED_CRC32,Rs as ERR_UNDEFINED_READER,bs as ERR_UNDEFINED_UNCOMPRESSED_SIZE,As as ERR_UNDETERMINED_SIZE,Ma as ERR_UNSAFE_FILENAME,or as ERR_UNSUPPORTED_COMPRESSION,Vc as ERR_UNSUPPORTED_CONTEXT,ge as ERR_UNSUPPORTED_CRYPTO_API,Ia as ERR_UNSUPPORTED_ENCRYPTION,ls as ERR_UNSUPPORTED_ENCRYPTION_PASS_THROUGH,ss as ERR_UNSUPPORTED_ENCRYPTION_USDZ,Es as ERR_UNSUPPORTED_FORMAT,cs as ERR_UNSUPPORTED_SPLIT_USDZ,La as ERR_UNSUPPORTED_UINT64,Gr as ERR_WORKER_STARTUP_TIMEOUT,Bn as ERR_WRITER_NOT_INITIALIZED,Pn as ERR_WRITER_SIZE_NOT_WRITABLE,vs as ERR_ZIP_CRYPTO_LAST_MOD_DATE,Ds as ERR_ZIP_NOT_EMPTY,Do as HttpRangeReader,xo as HttpReader,qn as Reader,Io as SplitDataReader,Uo as SplitDataWriter,no as TextReader,oo as TextWriter,Fo as Uint8ArrayReader,zo as Uint8ArrayWriter,Nc as VERSION,Ha as WARNING_APPENDED_DATA,Ls as WARNING_CLAMPED_LAST_MODIFICATION_DATE,Wa as WARNING_COMPRESSED_PATCHED_DATA,_s as WARNING_COMPRESSION_UNAVAILABLE,$a as WARNING_DUPLICATE_FILENAME,ja as WARNING_MALFORMED_EXTRA_FIELD,qa as WARNING_MISMATCHED_CENTRAL_DIRECTORY_OFFSET,ei as WARNING_MISMATCHED_LOCAL_FILE_HEADER_BIT_FLAG,ri as WARNING_MISMATCHED_LOCAL_FILE_HEADER_COMPRESSION_METHOD,ni as WARNING_MISMATCHED_LOCAL_FILE_HEADER_CRC32_OR_SIZES,ti as WARNING_MISMATCHED_LOCAL_FILE_HEADER_FILENAME,Ja as WARNING_MISMATCHED_ZIP64_END_OF_CENTRAL_DIRECTORY,Xa as WARNING_MISSING_ZIP64_EXTRA_FIELD,Qa as WARNING_MULTIPLE_END_OF_CENTRAL_DIRECTORY,Ya as WARNING_PREPENDED_CENTRAL_DIRECTORY,Ga as WARNING_PREPENDED_DATA,Ka as WARNING_TRAILING_CENTRAL_DIRECTORY_DATA,Pa as WARNING_UNKNOWN_VERSION,Va as WARNING_UNKNOWN_ZIP64_EXTENSIBLE_DATA,Ba as WARNING_UNSORTED_CENTRAL_DIRECTORY,Za as WARNING_WRAPPED_ENTRIES_COUNT,Xn as Writer,fi as ZipReader,wi as ZipReaderStream,Hs as ZipWriter,Gs as ZipWriterStream,kt as configure,Pc as createBlobTempStream,Lc as createOPFSTempStream,Zc as createSyncAccessHandleTempStream,Cc as getMimeType,fr as getRegisteredCodecs,kc as getSupportedCompressionMethods,di as isZipFile,cr as registerCodec,Lt as resetConfiguration,dl as terminateWorkers,lr as unregisterCodec};