From 98a88675228a8b1538f9d3310dd82fa9b03092e9 Mon Sep 17 00:00:00 2001 From: Gildas Date: Thu, 30 Jan 2025 19:21:21 +0100 Subject: [PATCH] update built scripts --- dist/zip-fs-full.js | 145 ++++++++++++++++++------------ dist/zip-fs-full.min.js | 2 +- dist/zip-fs.js | 137 ++++++++++++++++++---------- dist/zip-fs.min.js | 2 +- dist/zip-full.js | 132 ++++++++++++++++----------- dist/zip-full.min.js | 2 +- dist/zip-no-worker-deflate.min.js | 2 +- dist/zip-no-worker-inflate.min.js | 2 +- dist/zip-no-worker.min.js | 2 +- dist/zip.js | 124 ++++++++++++++++--------- dist/zip.min.js | 2 +- index.cjs | 145 ++++++++++++++++++------------ index.min.js | 2 +- 13 files changed, 437 insertions(+), 262 deletions(-) diff --git a/dist/zip-fs-full.js b/dist/zip-fs-full.js index 8db843dc..e1108cb1 100644 --- a/dist/zip-fs-full.js +++ b/dist/zip-fs-full.js @@ -1246,7 +1246,6 @@ } // Copy as much as possible from input to output: - // eslint-disable-next-line no-constant-condition while (true) { // Fill the win as much as possible: if (lookahead <= 1) { @@ -1341,7 +1340,6 @@ // We check for insufficient lookahead only every 8th comparison; // the 256th check will be made at strstart+258. - // eslint-disable-next-line no-empty do { // empty block } while (win[++scan] == win[++match] && win[++scan] == win[++match] && win[++scan] == win[++match] @@ -1377,7 +1375,6 @@ let hash_head = 0; // head of the hash chain let bflush; // set if current block must be flushed - // eslint-disable-next-line no-constant-condition while (true) { // Make sure that we always have enough lookahead, except // at the end of the input file. We need MAX_MATCH bytes @@ -1484,7 +1481,6 @@ let max_insert; // Process the input block. - // eslint-disable-next-line no-constant-condition while (true) { // Make sure that we always have enough lookahead, except // at the end of the input file. We need MAX_MATCH bytes @@ -2834,7 +2830,6 @@ m = q < s.read ? s.read - q - 1 : s.end - q; // process input and output based on current state - // eslint-disable-next-line no-constant-condition while (true) { switch (mode) { // waiting for "i:"=input, "o:"=output, "x:"=nothing @@ -3325,7 +3320,6 @@ // process input based on current state // DEBUG dtree - // eslint-disable-next-line no-constant-condition while (true) { let bl, bd, tl, td, bl_, bd_, tl_, td_; switch (mode) { @@ -3602,7 +3596,6 @@ mode = DTREE; /* falls through */ case DTREE: - // eslint-disable-next-line no-constant-condition while (true) { t = table; if (index >= 258 + (t & 0x1f) + ((t >> 5) & 0x1f)) { @@ -3910,7 +3903,6 @@ const istate = z.istate; f = f == Z_FINISH ? Z_BUF_ERROR : Z_OK; r = Z_BUF_ERROR; - // eslint-disable-next-line no-constant-condition while (true) { switch (istate.mode) { case METHOD: @@ -4290,6 +4282,8 @@ const BITFLAG_DATA_DESCRIPTOR = 0x0008; const BITFLAG_LANG_ENCODING_FLAG = 0x0800; const FILE_ATTR_MSDOS_DIR_MASK = 0x10; + const FILE_ATTR_UNIX_DIR_MASK = 0x4000; + const FILE_ATTR_UNIX_EXECUTABLE_MASK = 0o111; const VERSION_DEFLATE = 0x14; const VERSION_ZIP64 = 0x2D; @@ -4390,7 +4384,8 @@ if (typeof navigator != UNDEFINED_TYPE && navigator.hardwareConcurrency) { maxWorkers = navigator.hardwareConcurrency; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } const DEFAULT_CONFIGURATION = { @@ -7396,7 +7391,8 @@ if (IMPORT_KEY_SUPPORTED) { try { return await subtle.importKey(format, password, algorithm, extractable, keyUsages); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { IMPORT_KEY_SUPPORTED = false; return misc.importKey(password); } @@ -7409,7 +7405,8 @@ if (DERIVE_BITS_SUPPORTED) { try { return await subtle.deriveBits(algorithm, baseKey, length); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { DERIVE_BITS_SUPPORTED = false; return misc.pbkdf2(baseKey, algorithm.salt, DERIVED_BITS_ALGORITHM.iterations, length); } @@ -7727,11 +7724,13 @@ try { const CompressionStream = useCompressionStream && CodecStreamNative ? CodecStreamNative : CodecStream; readable = pipeThrough(readable, new CompressionStream(COMPRESSION_FORMAT, options)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { if (useCompressionStream) { try { readable = pipeThrough(readable, new CodecStream(COMPRESSION_FORMAT, options)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { return readable; } } else { @@ -7974,7 +7973,8 @@ async function callHandler(handler, ...parameters) { try { await handler(...parameters); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -7991,7 +7991,8 @@ let worker; try { worker = getWebWorker(workerData.scripts[0], baseURL, workerData); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { WEB_WORKERS_SUPPORTED = false; return createWorkerInterface(workerData, config); } @@ -8094,13 +8095,15 @@ } try { scriptUrl = new URL(url, baseURL); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { scriptUrl = url; } if (classicWorkersSupported) { try { worker = new Worker(scriptUrl); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { classicWorkersSupported = false; worker = new Worker(scriptUrl, workerOptions); } @@ -8138,7 +8141,8 @@ try { worker.postMessage(message, transferables); return true; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { transferStreamsSupported = false; message.readable = message.writable = null; worker.postMessage(message); @@ -8281,7 +8285,8 @@ pool = pool.filter(data => data != workerData); try { await workerData.terminate(); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } }, terminateWorkerTimeout); @@ -8686,7 +8691,7 @@ combineSizeEocd } = httpReader; if (isHttpFamily(url) && (useRangeHeader || forceRangeRequests) && (typeof preventHeadRequest == "undefined" || preventHeadRequest)) { - const response = await sendRequest(HTTP_METHOD_GET, httpReader, getRangeHeaders(httpReader, combineSizeEocd ? -END_OF_CENTRAL_DIR_LENGTH : undefined)); + const response = await sendRequest(HTTP_METHOD_GET, httpReader, getRangeHeaders(httpReader, combineSizeEocd ? -22 : undefined)); if (!forceRangeRequests && response.headers.get(HTTP_HEADER_ACCEPT_RANGES) != HTTP_RANGE_UNIT) { throw new Error(ERR_HTTP_RANGE); } else { @@ -9209,7 +9214,9 @@ const PROPERTY_NAME_CREATION_DATE = "creationDate"; const PROPERTY_NAME_RAW_CREATION_DATE = "rawCreationDate"; const PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE = "internalFileAttribute"; + const PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES = "internalFileAttributes"; const PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE = "externalFileAttribute"; + const PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES = "externalFileAttributes"; const PROPERTY_NAME_MS_DOS_COMPATIBLE = "msDosCompatible"; const PROPERTY_NAME_ZIP64 = "zip64"; const PROPERTY_NAME_ENCRYPTED = "encrypted"; @@ -9221,10 +9228,7 @@ PROPERTY_NAME_FILENAME, PROPERTY_NAME_RAW_FILENAME, PROPERTY_NAME_COMPPRESSED_SIZE, PROPERTY_NAME_UNCOMPPRESSED_SIZE, PROPERTY_NAME_LAST_MODIFICATION_DATE, PROPERTY_NAME_RAW_LAST_MODIFICATION_DATE, PROPERTY_NAME_COMMENT, PROPERTY_NAME_RAW_COMMENT, PROPERTY_NAME_LAST_ACCESS_DATE, PROPERTY_NAME_CREATION_DATE, PROPERTY_NAME_OFFSET, PROPERTY_NAME_DISK_NUMBER_START, - PROPERTY_NAME_DISK_NUMBER_START, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, - PROPERTY_NAME_MS_DOS_COMPATIBLE, PROPERTY_NAME_ZIP64, PROPERTY_NAME_ENCRYPTED, PROPERTY_NAME_VERSION, PROPERTY_NAME_VERSION_MADE_BY, - PROPERTY_NAME_ZIPCRYPTO, "directory", "bitFlag", "signature", "filenameUTF8", "commentUTF8", "compressionMethod", "extraField", "rawExtraField", - "extraFieldZip64", "extraFieldUnicodePath", "extraFieldUnicodeComment", "extraFieldAES", "extraFieldNTFS", "extraFieldExtendedTimestamp"]; + PROPERTY_NAME_DISK_NUMBER_START, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES, PROPERTY_NAME_MS_DOS_COMPATIBLE, PROPERTY_NAME_ZIP64, PROPERTY_NAME_ENCRYPTED, PROPERTY_NAME_VERSION, PROPERTY_NAME_VERSION_MADE_BY, PROPERTY_NAME_ZIPCRYPTO, "directory", "executable", "bitFlag", "signature", "filenameUTF8", "commentUTF8", "compressionMethod", "extraField", "rawExtraField", "extraFieldZip64", "extraFieldUnicodePath", "extraFieldUnicodeComment", "extraFieldAES", "extraFieldNTFS", "extraFieldExtendedTimestamp"]; class Entry { @@ -9415,14 +9419,20 @@ const extraFieldOffset = filenameOffset + fileEntry.filenameLength; const commentOffset = extraFieldOffset + fileEntry.extraFieldLength; const versionMadeBy = getUint16(directoryView, offset + 4); - const msDosCompatible = (versionMadeBy & 0) == 0; + const msDosCompatible = versionMadeBy >> 8 == 0; + const unixCompatible = versionMadeBy >> 8 == 3; const rawFilename = directoryArray.subarray(filenameOffset, extraFieldOffset); const commentLength = getUint16(directoryView, offset + 32); const endOffset = commentOffset + commentLength; const rawComment = directoryArray.subarray(commentOffset, endOffset); const filenameUTF8 = languageEncodingFlag; const commentUTF8 = languageEncodingFlag; - const directory = msDosCompatible && ((getUint8(directoryView, offset + 38) & FILE_ATTR_MSDOS_DIR_MASK) == FILE_ATTR_MSDOS_DIR_MASK); + const externalFileAttributes = getUint32(directoryView, offset + 38); + const directory = + (msDosCompatible && ((getUint8(directoryView, offset + 38) & FILE_ATTR_MSDOS_DIR_MASK) == FILE_ATTR_MSDOS_DIR_MASK)) || + (unixCompatible && (((externalFileAttributes >> 16) & FILE_ATTR_UNIX_DIR_MASK) == FILE_ATTR_UNIX_DIR_MASK)) || + (rawFilename.length && rawFilename[rawFilename.length - 1] == DIRECTORY_SIGNATURE.charCodeAt(0)); + const executable = (unixCompatible && (((externalFileAttributes >> 16) & FILE_ATTR_UNIX_EXECUTABLE_MASK) == FILE_ATTR_UNIX_EXECUTABLE_MASK)); const offsetFileEntry = getUint32(directoryView, offset + 42) + prependedDataLength; Object.assign(fileEntry, { versionMadeBy, @@ -9433,13 +9443,16 @@ directory, offset: offsetFileEntry, diskNumberStart: getUint16(directoryView, offset + 34), - internalFileAttribute: getUint16(directoryView, offset + 36), - externalFileAttribute: getUint32(directoryView, offset + 38), + internalFileAttributes: getUint16(directoryView, offset + 36), + externalFileAttributes, rawFilename, filenameUTF8, commentUTF8, - rawExtraField: directoryArray.subarray(extraFieldOffset, commentOffset) + rawExtraField: directoryArray.subarray(extraFieldOffset, commentOffset), + executable }); + fileEntry.internalFileAttribute = fileEntry.internalFileAttributes; + fileEntry.externalFileAttribute = fileEntry.externalFileAttributes; const decode = getOptionValue$1(zipReader, options, "decodeText") || decodeText; const rawFilenameEncoding = filenameUTF8 ? CHARSET_UTF8 : filenameEncoding || CHARSET_CP437; const rawCommentEncoding = commentUTF8 ? CHARSET_UTF8 : commentEncoding || CHARSET_CP437; @@ -9467,7 +9480,8 @@ if (onprogress) { try { await onprogress(indexFile + 1, filesLength, new Entry(fileEntry)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -9679,7 +9693,8 @@ }); offsetExtraField += 4 + size; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } const compressionMethod = getUint16(dataView, offset + 4); @@ -9786,7 +9801,8 @@ } offsetExtraField += 4 + attributeSize; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } try { @@ -9807,7 +9823,8 @@ Object.assign(extraFieldNTFS, extraFieldData); Object.assign(directory, extraFieldData); } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -9876,7 +9893,8 @@ const date = (timeRaw & 0xffff0000) >> 16, time = timeRaw & 0x0000ffff; try { return new Date(1980 + ((date & 0xFE00) >> 9), ((date & 0x01E0) >> 5) - 1, date & 0x001F, (time & 0xF800) >> 11, (time & 0x07E0) >> 5, (time & 0x001F) * 2, 0); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -10088,8 +10106,14 @@ const lastAccessDate = getOptionValue(zipWriter, options, PROPERTY_NAME_LAST_ACCESS_DATE); const creationDate = getOptionValue(zipWriter, options, PROPERTY_NAME_CREATION_DATE); const msDosCompatible = getOptionValue(zipWriter, options, PROPERTY_NAME_MS_DOS_COMPATIBLE, true); - const internalFileAttribute = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, 0); - const externalFileAttribute = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, 0); + let internalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES, 0); + if (internalFileAttributes === 0) { + internalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, 0); + } + let externalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES, 0); + if (externalFileAttributes === 0) { + externalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, 0); + } const passThrough = getOptionValue(zipWriter, options, "passThrough"); let password, rawPassword; if (!passThrough) { @@ -10205,8 +10229,10 @@ dataDescriptorSignature, signal, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttribute: internalFileAttributes, + internalFileAttributes, + externalFileAttribute: externalFileAttributes, + externalFileAttributes, useCompressionStream, passThrough, encrypted: Boolean((password && getLength(password)) || (rawPassword && getLength(rawPassword))) || (passThrough && encrypted), @@ -10327,7 +10353,8 @@ if (error) { try { error.corruptedEntry = true; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -10420,8 +10447,8 @@ encryptionStrength, extendedTimestamp, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, useCompressionStream, passThrough } = options; @@ -10440,8 +10467,8 @@ rawExtraField, extendedTimestamp, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, diskNumberStart }; let { @@ -10601,7 +10628,8 @@ setBigUint64(extraFieldNTFSView, 12, lastModTimeNTFS); setBigUint64(extraFieldNTFSView, 20, getTimeNTFS(lastAccessDate) || lastModTimeNTFS); setBigUint64(extraFieldNTFSView, 28, getTimeNTFS(creationDate) || lastModTimeNTFS); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { rawExtraFieldNTFS = new Uint8Array(); } } else { @@ -10896,8 +10924,8 @@ zip64DiskNumberStart, zip64Offset, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, diskNumberStart, uncompressedSize, compressedSize @@ -10916,9 +10944,9 @@ setUint16(directoryView, offset + 30, extraFieldLength); setUint16(directoryView, offset + 32, getLength(rawComment)); setUint16(directoryView, offset + 34, zip64 && zip64DiskNumberStart ? MAX_16_BITS : diskNumberStart); - setUint16(directoryView, offset + 36, internalFileAttribute); - if (externalFileAttribute) { - setUint32(directoryView, offset + 38, externalFileAttribute); + setUint16(directoryView, offset + 36, internalFileAttributes); + if (externalFileAttributes) { + setUint32(directoryView, offset + 38, externalFileAttributes); } else if (directory && msDosCompatible) { setUint8(directoryView, offset + 38, FILE_ATTR_MSDOS_DIR_MASK); } @@ -10940,7 +10968,8 @@ if (options.onprogress) { try { await options.onprogress(indexFileEntry + 1, files.size, new Entry(fileEntry)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -11463,7 +11492,8 @@ error.cause = { entry }; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } throw error; @@ -11720,7 +11750,8 @@ error.cause = { entry: child }; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } throw error; @@ -11766,7 +11797,7 @@ let zipEntryOptions = {}; if (child.data instanceof Entry) { const { - externalFileAttribute, + externalFileAttributes, versionMadeBy, comment, lastModDate, @@ -11780,7 +11811,7 @@ extraFieldAES } = child.data; zipEntryOptions = { - externalFileAttribute, + externalFileAttributes, versionMadeBy, comment, lastModDate, @@ -11815,7 +11846,8 @@ entryOffsets.set(name, indexProgress); try { await options.onprogress(Array.from(entryOffsets.values()).reduce((previousValue, currentValue) => previousValue + currentValue), totalSize); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -11960,7 +11992,8 @@ let baseURL; try { baseURL = (typeof document === 'undefined' && typeof location === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : typeof document === 'undefined' ? location.href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('zip-fs-full.js', document.baseURI).href)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } configure({ baseURL }); diff --git a/dist/zip-fs-full.min.js b/dist/zip-fs-full.min.js index 72cc5514..d324b4a6 100644 --- a/dist/zip-fs-full.min.js +++ b/dist/zip-fs-full.min.js @@ -1 +1 @@ -((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:r,Number:i,BigInt:s,Math:a,Date:o,Map:l,Set:c,Response:d,URL:f,Error:u,Uint8Array:p,Uint16Array:m,Uint32Array:h,DataView:w,Blob:g,Promise:x,TextEncoder:b,TextDecoder:v,document:y,crypto:_,btoa:k,TransformStream:z,ReadableStream:S,WritableStream:A,CompressionStream:D,DecompressionStream:C,navigator:R,Worker:E}="undefined"!=typeof globalThis?globalThis:this||self;var F=void 0!==y?y.currentScript:null;const W=-2;function T(e){return q(e.map((([e,n])=>new t(e).fill(n,0,e))))}function q(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?q(n):n)),[])}const U=[0,1,2,3].concat(...T([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function L(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,i=e.stat_desc.static_tree,s=e.stat_desc.elems;let o,l,c,d=-1;for(n.heap_len=0,n.heap_max=573,o=0;s>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=d=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>d?++d:0,r[2*c]=1,n.depth[c]=0,n.opt_len--,i&&(n.static_len-=i[2*c+1]);for(e.max_code=d,o=a.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);c=s;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),l=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=l,r[2*c]=r[2*o]+r[2*l],n.depth[c]=a.max(n.depth[o],n.depth[l])+1,r[2*o+1]=r[2*l+1]=c,n.heap[1]=c++,n.pqdownheap(r,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,r=e.stat_desc.static_tree,i=e.stat_desc.extra_bits,s=e.stat_desc.extra_base,a=e.stat_desc.max_length;let o,l,c,d,f,u,p=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)l=t.heap[o],d=n[2*n[2*l+1]+1]+1,d>a&&(d=a,p++),n[2*l+1]=d,l>e.max_code||(t.bl_count[d]++,f=0,s>l||(f=i[l-s]),u=n[2*l],t.opt_len+=u*(d+f),r&&(t.static_len+=u*(r[2*l+1]+f)));if(0!==p){do{for(d=a-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[a]--,p-=2}while(p>0);for(d=a;0!==d;d--)for(l=t.bl_count[d];0!==l;)c=t.heap[--o],c>e.max_code||(n[2*c+1]!=d&&(t.opt_len+=(d-n[2*c+1])*n[2*c],n[2*c+1]=d),l--)}})(n),((e,n,r)=>{const i=[];let s,a,o,l=0;for(s=1;15>=s;s++)i[s]=l=l+r[s-1]<<1;for(a=0;n>=a;a++)o=e[2*a+1],0!==o&&(e[2*a]=t(i[o]++,o))})(r,e.max_code,n.bl_count)}}function I(e,t,n,r,i){const s=this;s.static_tree=e,s.extra_bits=t,s.extra_base=n,s.elems=r,s.max_length=i}L._length_code=[0,1,2,3,4,5,6,7].concat(...T([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),L.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],L.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],L.d_code=e=>256>e?U[e]:U[256+(e>>>7)],L.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],L.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],L.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],L.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const N=T([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=q([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,N[t]])));const j=T([[30,5]]);function P(e,t,n,r,i){const s=this;s.good_length=e,s.max_lazy=t,s.nice_length=n,s.max_chain=r,s.func=i}I.static_dtree=q([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,j[t]]))),I.static_l_desc=new I(I.static_ltree,L.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,L.extra_dbits,0,30,15),I.static_bl_desc=new I(null,L.extra_blbits,0,19,7);const O=[new P(0,0,0,0,0),new P(4,4,8,4,1),new P(4,5,16,8,1),new P(4,6,32,32,1),new P(4,4,16,16,2),new P(8,16,32,32,2),new P(8,16,128,128,2),new P(8,32,128,256,2),new P(32,128,258,1024,2),new P(32,258,258,4096,2)],H=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],M=113,B=666,Z=262;function V(e,t,n,r){const i=e[2*t],s=e[2*n];return s>i||i==s&&r[t]<=r[n]}function K(){const e=this;let t,n,r,i,s,o,l,c,d,f,u,h,w,g,x,b,v,y,_,k,z,S,A,D,C,R,E,F,T,q,U,N,j;const P=new L,K=new L,G=new L;let X,Y,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)U[2*t]=0;for(t=0;30>t;t++)N[2*t]=0;for(t=0;19>t;t++)j[2*t]=0;U[512]=1,e.opt_len=e.static_len=0,Y=J=0}function ne(e,t){let n,r=-1,i=e[1],s=0,a=7,o=4;0===i&&(a=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)n=i,i=e[2*(l+1)+1],++ss?j[2*n]+=s:0!==n?(n!=r&&j[2*n]++,j[32]++):s>10?j[36]++:j[34]++,s=0,r=n,0===i?(a=138,o=3):n==i?(a=6,o=3):(a=7,o=4))}function re(t){e.pending_buf[e.pending++]=t}function ie(e){re(255&e),re(e>>>8&255)}function se(e,t){let n;const r=t;ee>16-r?(n=e,$|=n<>>16-ee,ee+=r-16):($|=e<=n;n++)if(r=s,s=e[2*(n+1)+1],++a>=o||r!=s){if(l>a)do{ae(r,j)}while(0!=--a);else 0!==r?(r!=i&&(ae(r,j),a--),ae(16,j),se(a-3,2)):a>10?(ae(18,j),se(a-11,7)):(ae(17,j),se(a-3,3));a=0,i=r,0===s?(o=138,l=3):r==s?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(ie($),$=0,ee=0):8>ee||(re(255&$),$>>>=8,ee-=8)}function ce(t,n){let r,i,s;if(e.dist_buf[Y]=t,e.lc_buf[Y]=255&n,Y++,0===t?U[2*n]++:(J++,t--,U[2*(L._length_code[n]+256+1)]++,N[2*L.d_code(t)]++),!(8191&Y)&&E>2){for(r=8*Y,i=z-v,s=0;30>s;s++)r+=N[2*s]*(5+L.extra_dbits[s]);if(r>>>=3,Jo);ae(256,t),Q=t[513]}function fe(){ee>8?ie($):ee>0&&re(255&$),$=0,ee=0}function ue(t,n,r){se(0+(r?1:0),3),((t,n)=>{fe(),Q=8,ie(n),ie(~n),e.pending_buf.set(c.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function pe(n){((t,n,r)=>{let i,s,a=0;E>0?(P.build_tree(e),K.build_tree(e),a=(()=>{let t;for(ne(U,P.max_code),ne(N,K.max_code),G.build_tree(e),t=18;t>=3&&0===j[2*L.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),i=e.opt_len+3+7>>>3,s=e.static_len+3+7>>>3,s>i||(i=s)):i=s=n+5,n+4>i||-1==t?s==i?(se(2+(r?1:0),3),de(I.static_ltree,I.static_dtree)):(se(4+(r?1:0),3),((e,t,n)=>{let r;for(se(e-257,5),se(t-1,5),se(n-4,4),r=0;n>r;r++)se(j[2*L.bl_order[r]+1],3);oe(U,e-1),oe(N,t-1)})(P.max_code+1,K.max_code+1,a+1),de(U,N)):ue(t,n,r),te(),r&&fe()})(0>v?-1:v,z-v,n),v=z,t.flush_pending()}function me(){let e,n,r,i;do{if(i=d-A-z,0===i&&0===z&&0===A)i=s;else if(-1==i)i--;else if(z>=s+s-Z){c.set(c.subarray(s,s+s),0),S-=s,z-=s,v-=s,e=w,r=e;do{n=65535&u[--r],u[r]=s>n?0:n-s}while(0!=--e);e=s,r=e;do{n=65535&f[--r],f[r]=s>n?0:n-s}while(0!=--e);i+=s}if(0===t.avail_in)return;e=t.read_buf(c,z+A,i),A+=e,3>A||(h=255&c[z],h=(h<A&&0!==t.avail_in)}function he(e){let t,n,r=C,i=z,a=D;const o=z>s-Z?z-(s-Z):0;let d=q;const u=l,p=z+258;let m=c[i+a-1],h=c[i+a];T>D||(r>>=2),d>A&&(d=A);do{if(t=e,c[t+a]==h&&c[t+a-1]==m&&c[t]==c[i]&&c[++t]==c[i+1]){i+=2,t++;do{}while(c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&p>i);if(n=258-(p-i),i=p-258,n>a){if(S=e,a=n,n>=d)break;m=c[i+a-1],h=c[i+a]}}}while((e=65535&f[e&u])>o&&0!=--r);return a>A?A:a}e.depth=[],e.bl_count=[],e.heap=[],U=[],N=[],j=[],e.pqdownheap=(t,n)=>{const r=e.heap,i=r[n];let s=n<<1;for(;s<=e.heap_len&&(s(L||(L=8),H||(H=8),B||(B=0),t.msg=null,-1==_&&(_=6),1>H||H>9||8!=L||9>S||S>15||0>_||_>9||0>B||B>2?W:(t.dstate=e,o=S,s=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=M,i=0,P.dyn_tree=U,P.stat_desc=I.static_l_desc,K.dyn_tree=N,K.stat_desc=I.static_d_desc,G.dyn_tree=j,G.stat_desc=I.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*s,u[w-1]=0;for(let e=0;w-1>e;e++)u[e]=0;R=O[E].max_lazy,T=O[E].good_length,q=O[E].nice_length,C=O[E].max_chain,z=0,v=0,A=0,y=D=2,k=0,h=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=M&&n!=B?W:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,u=null,f=null,c=null,e.dstate=null,n==M?-3:0),e.deflateParams=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?W:(O[E].func!=O[t].func&&0!==e.total_in&&(r=e.deflate(1)),E!=t&&(E=t,R=O[E].max_lazy,T=O[E].good_length,q=O[E].nice_length,C=O[E].max_chain),F=n,r)},e.deflateSetDictionary=(e,t,r)=>{let i,a=r,o=0;if(!t||42!=n)return W;if(3>a)return 0;for(a>s-Z&&(a=s-Z,o=r-a),c.set(t.subarray(o,o+a),0),z=a,v=a,h=255&c[0],h=(h<=i;i++)h=(h<{let p,m,g,C,T;if(d>4||0>d)return W;if(!a.next_out||!a.next_in&&0!==a.avail_in||n==B&&4!=d)return a.msg=H[4],W;if(0===a.avail_out)return a.msg=H[7],-5;var q;if(t=a,C=i,i=d,42==n&&(m=8+(o-8<<4)<<8,g=(E-1&255)>>1,g>3&&(g=3),m|=g<<6,0!==z&&(m|=32),m+=31-m%31,n=M,re((q=m)>>8&255),re(255&q)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return i=-1,0}else if(0===t.avail_in&&C>=d&&4!=d)return t.msg=H[7],-5;if(n==B&&0!==t.avail_in)return a.msg=H[7],-5;if(0!==t.avail_in||0!==A||0!=d&&n!=B){switch(T=-1,O[E].func){case 0:T=(e=>{let n,i=65535;for(i>r-5&&(i=r-5);;){if(1>=A){if(me(),0===A&&0==e)return 0;if(0===A)break}if(z+=A,A=0,n=v+i,(0===z||z>=n)&&(A=z-n,z=n,pe(!1),0===t.avail_out))return 0;if(z-v>=s-Z&&(pe(!1),0===t.avail_out))return 0}return pe(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 1:T=(e=>{let n,r=0;for(;;){if(Z>A){if(me(),Z>A&&0==e)return 0;if(0===A)break}if(3>A||(h=(h<s-Z||2!=F&&(y=he(r)),3>y)n=ce(0,255&c[z]),A--,z++;else if(n=ce(z-S,y-3),A-=y,y>R||3>A)z+=y,y=0,h=255&c[z],h=(h<{let n,r,i=0;for(;;){if(Z>A){if(me(),Z>A&&0==e)return 0;if(0===A)break}if(3>A||(h=(h<D&&s-Z>=(z-i&65535)&&(2!=F&&(y=he(i)),5>=y&&(1==F||3==y&&z-S>4096)&&(y=2)),3>D||y>D)if(0!==k){if(n=ce(0,255&c[z-1]),n&&pe(!1),z++,A--,0===t.avail_out)return 0}else k=1,z++,A--;else{r=z+A-3,n=ce(z-1-_,D-3),A-=D-1,D-=2;do{++z>r||(h=(h<1+Q+10-ee&&(se(2,3),ae(256,I.static_ltree),le()),Q=7;else if(ue(0,0,!1),3==d)for(p=0;w>p;p++)u[p]=0;if(t.flush_pending(),0===t.avail_out)return i=-1,0}}return 4!=d?0:1}}function G(){const e=this;e.next_in_index=0,e.next_out_index=0,e.avail_in=0,e.total_in=0,e.avail_out=0,e.total_out=0}G.prototype={deflateInit(e,t){const n=this;return n.dstate=new K,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):W},deflateEnd(){const e=this;if(!e.dstate)return W;const t=e.dstate.deflateEnd();return e.dstate=null,t},deflateParams(e,t){const n=this;return n.dstate?n.dstate.deflateParams(n,e,t):W},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):W},read_buf(e,t,n){const r=this;let i=r.avail_in;return i>n&&(i=n),0===i?0:(r.avail_in-=i,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),t),r.next_in_index+=i,r.total_in+=i,i)},flush_pending(){const e=this;let t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),0!==t&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,0===e.dstate.pending&&(e.dstate.pending_out=0))}};const X=-2,Y=-3,J=-5,Q=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],$=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ee=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],te=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],ne=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],re=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],ie=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function se(){let e,t,n,r,i,s;function a(e,t,a,o,l,c,d,f,u,p,m){let h,w,g,x,b,v,y,_,k,z,S,A,D,C,R;z=0,b=a;do{n[e[t+z]]++,z++,b--}while(0!==b);if(n[0]==a)return d[0]=-1,f[0]=0,0;for(_=f[0],v=1;15>=v&&0===n[v];v++);for(y=v,v>_&&(_=v),b=15;0!==b&&0===n[b];b--);for(g=b,_>b&&(_=b),f[0]=_,C=1<v;v++,C<<=1)if(0>(C-=n[v]))return Y;if(0>(C-=n[b]))return Y;for(n[b]+=C,s[1]=v=0,z=1,D=2;0!=--b;)s[D]=v+=n[z],D++,z++;b=0,z=0;do{0!==(v=e[t+z])&&(m[s[v]++]=b),z++}while(++b=y;y++)for(h=n[y];0!=h--;){for(;y>A+_;){if(x++,A+=_,R=g-A,R=R>_?_:R,(w=1<<(v=y-A))>h+1&&(w-=h+1,D=y,R>v))for(;++vn[++D];)w-=n[D];if(R=1<1440)return Y;i[x]=S=p[0],p[0]+=R,0!==x?(s[x]=b,r[0]=v,r[1]=_,v=b>>>A-_,r[2]=S-i[x-1]-v,u.set(r,3*(i[x-1]+v))):d[0]=S}for(r[1]=y-A,a>z?m[z]m[z]?0:96,r[2]=m[z++]):(r[0]=c[m[z]-o]+16+64,r[2]=l[m[z++]-o]):r[0]=192,w=1<>>A;R>v;v+=w)u.set(r,3*(S+v));for(v=1<>>=1)b^=v;for(b^=v,k=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)r[o]=0;i.set(n.subarray(0,15),0),s.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,r,i,s,l)=>{let c;return o(19),e[0]=0,c=a(n,0,19,19,null,null,i,r,s,e,t),c==Y?l.msg="oversubscribed dynamic bit lengths tree":c!=J&&0!==r[0]||(l.msg="incomplete dynamic bit lengths tree",c=Y),c},this.inflate_trees_dynamic=(n,r,i,s,l,c,d,f,u)=>{let p;return o(288),e[0]=0,p=a(i,0,n,257,te,ne,c,s,f,e,t),0!=p||0===s[0]?(p==Y?u.msg="oversubscribed literal/length tree":-4!=p&&(u.msg="incomplete literal/length tree",p=Y),p):(o(288),p=a(i,n,r,0,re,ie,d,l,f,e,t),0!=p||0===l[0]&&n>257?(p==Y?u.msg="oversubscribed distance tree":p==J?(u.msg="incomplete distance tree",p=Y):-4!=p&&(u.msg="empty distance tree with lengths",p=Y),p):0)}}function ae(){const e=this;let t,n,r,i,s=0,a=0,o=0,l=0,c=0,d=0,f=0,u=0,p=0,m=0;function h(e,t,n,r,i,s,a,o){let l,c,d,f,u,p,m,h,w,g,x,b,v,y,_,k;m=o.next_in_index,h=o.avail_in,u=a.bitb,p=a.bitk,w=a.write,g=wp;)h--,u|=(255&o.read_byte(m++))<>=c[k+1],p-=c[k+1],16&f){for(f&=15,v=c[k+2]+(u&Q[f]),u>>=f,p-=f;15>p;)h--,u|=(255&o.read_byte(m++))<>=c[k+1],p-=c[k+1],16&f){for(f&=15;f>p;)h--,u|=(255&o.read_byte(m++))<>=f,p-=f,g-=v,y>w){_=w-y;do{_+=a.end}while(0>_);if(f=a.end-_,v>f){if(v-=f,w-_>0&&f>w-_)do{a.win[w++]=a.win[_++]}while(0!=--f);else a.win.set(a.win.subarray(_,_+f),w),w+=f,_+=f,f=0;_=0}}else _=w-y,w-_>0&&2>w-_?(a.win[w++]=a.win[_++],a.win[w++]=a.win[_++],v-=2):(a.win.set(a.win.subarray(_,_+2),w),w+=2,_+=2,v-=2);if(w-_>0&&v>w-_)do{a.win[w++]=a.win[_++]}while(0!=--v);else a.win.set(a.win.subarray(_,_+v),w),w+=v,_+=v,v=0;break}if(64&f)return o.msg="invalid distance code",v=o.avail_in-h,v=v>p>>3?p>>3:v,h+=v,m-=v,p-=v<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,Y;l+=c[k+2],l+=u&Q[f],k=3*(d+l),f=c[k]}break}if(64&f)return 32&f?(v=o.avail_in-h,v=v>p>>3?p>>3:v,h+=v,m-=v,p-=v<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,1):(o.msg="invalid literal/length code",v=o.avail_in-h,v=v>p>>3?p>>3:v,h+=v,m-=v,p-=v<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,Y);if(l+=c[k+2],l+=u&Q[f],k=3*(d+l),0===(f=c[k])){u>>=c[k+1],p-=c[k+1],a.win[w++]=c[k+2],g--;break}}else u>>=c[k+1],p-=c[k+1],a.win[w++]=c[k+2],g--}while(g>=258&&h>=10);return v=o.avail_in-h,v=v>p>>3?p>>3:v,h+=v,m-=v,p-=v<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,0}e.init=(e,s,a,o,l,c)=>{t=0,f=e,u=s,r=a,p=o,i=l,m=c,n=null},e.proc=(e,w,g)=>{let x,b,v,y,_,k,z,S=0,A=0,D=0;for(D=w.next_in_index,y=w.avail_in,S=e.bitb,A=e.bitk,_=e.write,k=_=258&&y>=10&&(e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,g=h(f,u,r,p,i,m,e,w),D=w.next_in_index,y=w.avail_in,S=e.bitb,A=e.bitk,_=e.write,k=_A;){if(0===y)return e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,g);g=0,y--,S|=(255&w.read_byte(D++))<>>=n[b+1],A-=n[b+1],v=n[b],0===v){l=n[b+2],t=6;break}if(16&v){c=15&v,s=n[b+2],t=2;break}if(!(64&v)){o=v,a=b/3+n[b+2];break}if(32&v){t=7;break}return t=9,w.msg="invalid literal/length code",g=Y,e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,g);case 2:for(x=c;x>A;){if(0===y)return e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,g);g=0,y--,S|=(255&w.read_byte(D++))<>=x,A-=x,o=u,n=i,a=m,t=3;case 3:for(x=o;x>A;){if(0===y)return e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,g);g=0,y--,S|=(255&w.read_byte(D++))<>=n[b+1],A-=n[b+1],v=n[b],16&v){c=15&v,d=n[b+2],t=4;break}if(!(64&v)){o=v,a=b/3+n[b+2];break}return t=9,w.msg="invalid distance code",g=Y,e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,g);case 4:for(x=c;x>A;){if(0===y)return e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,g);g=0,y--,S|=(255&w.read_byte(D++))<>=x,A-=x,t=5;case 5:for(z=_-d;0>z;)z+=e.end;for(;0!==s;){if(0===k&&(_==e.end&&0!==e.read&&(_=0,k=_7&&(A-=8,y++,D--),e.write=_,g=e.inflate_flush(w,g),_=e.write,k=_{}}se.inflate_trees_fixed=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=$,r[0]=ee,0);const oe=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function le(e,t){const n=this;let r,i=0,s=0,a=0,o=0;const l=[0],c=[0],d=new ae;let f=0,u=new Int32Array(4320);const m=new se;n.bitk=0,n.bitb=0,n.win=new p(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==i&&d.free(e),i=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let r,i,s;return i=e.next_out_index,s=n.read,r=(s>n.write?n.end:n.write)-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==J&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r,s==n.end&&(s=0,n.write==n.end&&(n.write=0),r=n.write-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==J&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r),e.next_out_index=i,n.read=s,t},n.proc=(e,t)=>{let p,h,w,g,x,b,v,y;for(g=e.next_in_index,x=e.avail_in,h=n.bitb,w=n.bitk,b=n.write,v=bw;){if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,x--,h|=(255&e.read_byte(g++))<>>1){case 0:h>>>=3,w-=3,p=7&w,h>>>=p,w-=p,i=1;break;case 1:_=[],k=[],z=[[]],S=[[]],se.inflate_trees_fixed(_,k,z,S),d.init(_[0],k[0],z[0],0,S[0],0),h>>>=3,w-=3,i=6;break;case 2:h>>>=3,w-=3,i=3;break;case 3:return h>>>=3,w-=3,i=9,e.msg="invalid block type",t=Y,n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t)}break;case 1:for(;32>w;){if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,x--,h|=(255&e.read_byte(g++))<>>16&65535)!=(65535&h))return i=9,e.msg="invalid stored block lengths",t=Y,n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);s=65535&h,h=w=0,i=0!==s?2:0!==f?7:0;break;case 2:if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);if(0===v&&(b==n.end&&0!==n.read&&(b=0,v=bx&&(p=x),p>v&&(p=v),n.win.set(e.read_buf(g,p),b),g+=p,x-=p,b+=p,v-=p,0!=(s-=p))break;i=0!==f?7:0;break;case 3:for(;14>w;){if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,x--,h|=(255&e.read_byte(g++))<29||(p>>5&31)>29)return i=9,e.msg="too many length or distance symbols",t=Y,n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);if(p=258+(31&p)+(p>>5&31),!r||r.lengthy;y++)r[y]=0;h>>>=14,w-=14,o=0,i=4;case 4:for(;4+(a>>>10)>o;){for(;3>w;){if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,x--,h|=(255&e.read_byte(g++))<>>=3,w-=3}for(;19>o;)r[oe[o++]]=0;if(l[0]=7,p=m.inflate_trees_bits(r,l,c,u,e),0!=p)return(t=p)==Y&&(r=null,i=9),n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);o=0,i=5;case 5:for(;p=a,258+(31&p)+(p>>5&31)>o;){let s,d;for(p=l[0];p>w;){if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,x--,h|=(255&e.read_byte(g++))<d)h>>>=p,w-=p,r[o++]=d;else{for(y=18==d?7:d-14,s=18==d?11:3;p+y>w;){if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,x--,h|=(255&e.read_byte(g++))<>>=p,w-=p,s+=h&Q[y],h>>>=y,w-=y,y=o,p=a,y+s>258+(31&p)+(p>>5&31)||16==d&&1>y)return r=null,i=9,e.msg="invalid bit length repeat",t=Y,n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);d=16==d?r[y-1]:0;do{r[y++]=d}while(0!=--s);o=y}}if(c[0]=-1,A=[],D=[],C=[],R=[],A[0]=9,D[0]=6,p=a,p=m.inflate_trees_dynamic(257+(31&p),1+(p>>5&31),r,A,D,C,R,u,e),0!=p)return p==Y&&(r=null,i=9),t=p,n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);d.init(A[0],D[0],u,C[0],u,R[0]),i=6;case 6:if(n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),g=e.next_in_index,x=e.avail_in,h=n.bitb,w=n.bitk,b=n.write,v=b{n.reset(e,null),n.win=null,u=null},n.set_dictionary=(e,t,r)=>{n.win.set(e.subarray(t,t+r),0),n.read=n.write=r},n.sync_point=()=>1==i?1:0}const ce=13,de=[0,0,255,255];function fe(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):X}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,r)=>(n.msg=null,e.blocks=null,8>r||r>15?(e.inflateEnd(n),X):(e.wbits=r,n.istate.blocks=new le(n,1<{let n,r;if(!e||!e.istate||!e.next_in)return X;const i=e.istate;for(t=4==t?J:0,n=J;;)switch(i.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(i.method=e.read_byte(e.next_in_index++)))){i.mode=ce,e.msg="unknown compression method",i.marker=5;break}if(8+(i.method>>4)>i.wbits){i.mode=ce,e.msg="invalid win size",i.marker=5;break}i.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,r=255&e.read_byte(e.next_in_index++),((i.method<<8)+r)%31!=0){i.mode=ce,e.msg="incorrect header check",i.marker=5;break}if(!(32&r)){i.mode=7;break}i.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,i.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,i.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,i.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,i.need+=255&e.read_byte(e.next_in_index++),i.mode=6,2);case 6:return i.mode=ce,e.msg="need dictionary",i.marker=0,X;case 7:if(n=i.blocks.proc(e,n),n==Y){i.mode=ce,i.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,i.blocks.reset(e,i.was),i.mode=12;case 12:return e.avail_in=0,1;case ce:return Y;default:return X}},e.inflateSetDictionary=(e,t,n)=>{let r=0,i=n;if(!e||!e.istate||6!=e.istate.mode)return X;const s=e.istate;return i<1<{let n,r,i,s,a;if(!e||!e.istate)return X;const o=e.istate;if(o.mode!=ce&&(o.mode=ce,o.marker=0),0===(n=e.avail_in))return J;for(r=e.next_in_index,i=o.marker;0!==n&&4>i;)e.read_byte(r)==de[i]?i++:i=0!==e.read_byte(r)?0:4-i,r++,n--;return e.total_in+=r-e.next_in_index,e.next_in_index=r,e.avail_in=n,o.marker=i,4!=i?Y:(s=e.total_in,a=e.total_out,t(e),e.total_in=s,e.total_out=a,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():X}function ue(){}ue.prototype={inflateInit(e){const t=this;return t.istate=new fe,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):X},inflateEnd(){const e=this;if(!e.istate)return X;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):X},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):X},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const pe=4294967295,me=65535,he=67324752,we=134695760,ge=we,xe=33639248,be=101010256,ve=101075792,ye=117853008,_e=22,ke=21589,ze=2048,Se="/",Ae=new o(2107,11,31),De=new o(1980,0,1),Ce=void 0,Re="undefined",Ee="function";class Fe{constructor(e){return class extends z{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}let We=2;try{typeof R!=Re&&R.hardwareConcurrency&&(We=R.hardwareConcurrency)}catch(e){}const Te={chunkSize:524288,maxWorkers:We,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:Ce,CompressionStreamNative:typeof D!=Re&&D,DecompressionStreamNative:typeof C!=Re&&C},qe=n.assign({},Te);function Ue(){return qe}function Le(e){return a.max(e.chunkSize,64)}function Ie(e){const{baseURL:n,chunkSize:r,maxWorkers:i,terminateWorkerTimeout:s,useCompressionStream:a,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:f,workerScripts:p}=e;if(Ne("baseURL",n),Ne("chunkSize",r),Ne("maxWorkers",i),Ne("terminateWorkerTimeout",s),Ne("useCompressionStream",a),Ne("useWebWorkers",o),l&&(qe.CompressionStream=new Fe(l)),c&&(qe.DecompressionStream=new Fe(c)),Ne("CompressionStream",d),Ne("DecompressionStream",f),p!==Ce){const{deflate:e,inflate:n}=p;if((e||n)&&(qe.workerScripts||(qe.workerScripts={})),e){if(!t.isArray(e))throw new u("workerScripts.deflate must be an array");qe.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new u("workerScripts.inflate must be an array");qe.workerScripts.inflate=n}}}function Ne(e,t){t!==Ce&&(qe[e]=t)}const je={application:{"andrew-inset":"ez",annodex:"anx","atom+xml":"atom","atomcat+xml":"atomcat","atomserv+xml":"atomsrv",bbolin:"lin","cu-seeme":"cu","davmount+xml":"davmount",dsptype:"tsp",ecmascript:["es","ecma"],futuresplash:"spl",hta:"hta","java-archive":"jar","java-serialized-object":"ser","java-vm":"class",m3g:"m3g","mac-binhex40":"hqx",mathematica:["nb","ma","mb"],msaccess:"mdb",msword:["doc","dot","wiz"],mxf:"mxf",oda:"oda",ogg:"ogx",pdf:"pdf","pgp-keys":"key","pgp-signature":["asc","sig"],"pics-rules":"prf",postscript:["ps","ai","eps","epsi","epsf","eps2","eps3"],rar:"rar","rdf+xml":"rdf","rss+xml":"rss",rtf:"rtf","xhtml+xml":["xhtml","xht"],xml:["xml","xsl","xsd","xpdl"],"xspf+xml":"xspf",zip:"zip","vnd.android.package-archive":"apk","vnd.cinderella":"cdy","vnd.google-earth.kml+xml":"kml","vnd.google-earth.kmz":"kmz","vnd.mozilla.xul+xml":"xul","vnd.ms-excel":["xls","xlb","xlt","xlm","xla","xlc","xlw"],"vnd.ms-pki.seccat":"cat","vnd.ms-pki.stl":"stl","vnd.ms-powerpoint":["ppt","pps","pot","ppa","pwz"],"vnd.oasis.opendocument.chart":"odc","vnd.oasis.opendocument.database":"odb","vnd.oasis.opendocument.formula":"odf","vnd.oasis.opendocument.graphics":"odg","vnd.oasis.opendocument.graphics-template":"otg","vnd.oasis.opendocument.image":"odi","vnd.oasis.opendocument.presentation":"odp","vnd.oasis.opendocument.presentation-template":"otp","vnd.oasis.opendocument.spreadsheet":"ods","vnd.oasis.opendocument.spreadsheet-template":"ots","vnd.oasis.opendocument.text":"odt","vnd.oasis.opendocument.text-master":["odm","otm"],"vnd.oasis.opendocument.text-template":"ott","vnd.oasis.opendocument.text-web":"oth","vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","vnd.openxmlformats-officedocument.spreadsheetml.template":"xltx","vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","vnd.openxmlformats-officedocument.presentationml.slideshow":"ppsx","vnd.openxmlformats-officedocument.presentationml.template":"potx","vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","vnd.openxmlformats-officedocument.wordprocessingml.template":"dotx","vnd.smaf":"mmf","vnd.stardivision.calc":"sdc","vnd.stardivision.chart":"sds","vnd.stardivision.draw":"sda","vnd.stardivision.impress":"sdd","vnd.stardivision.math":["sdf","smf"],"vnd.stardivision.writer":["sdw","vor"],"vnd.stardivision.writer-global":"sgl","vnd.sun.xml.calc":"sxc","vnd.sun.xml.calc.template":"stc","vnd.sun.xml.draw":"sxd","vnd.sun.xml.draw.template":"std","vnd.sun.xml.impress":"sxi","vnd.sun.xml.impress.template":"sti","vnd.sun.xml.math":"sxm","vnd.sun.xml.writer":"sxw","vnd.sun.xml.writer.global":"sxg","vnd.sun.xml.writer.template":"stw","vnd.symbian.install":["sis","sisx"],"vnd.visio":["vsd","vst","vss","vsw","vsdx","vssx","vstx","vssm","vstm"],"vnd.wap.wbxml":"wbxml","vnd.wap.wmlc":"wmlc","vnd.wap.wmlscriptc":"wmlsc","vnd.wordperfect":"wpd","vnd.wordperfect5.1":"wp5","x-123":"wk","x-7z-compressed":"7z","x-abiword":"abw","x-apple-diskimage":"dmg","x-bcpio":"bcpio","x-bittorrent":"torrent","x-cbr":["cbr","cba","cbt","cb7"],"x-cbz":"cbz","x-cdf":["cdf","cda"],"x-cdlink":"vcd","x-chess-pgn":"pgn","x-cpio":"cpio","x-csh":"csh","x-director":["dir","dxr","cst","cct","cxt","w3d","fgd","swa"],"x-dms":"dms","x-doom":"wad","x-dvi":"dvi","x-httpd-eruby":"rhtml","x-font":"pcf.Z","x-freemind":"mm","x-gnumeric":"gnumeric","x-go-sgf":"sgf","x-graphing-calculator":"gcf","x-gtar":["gtar","taz"],"x-hdf":"hdf","x-httpd-php":["phtml","pht","php"],"x-httpd-php-source":"phps","x-httpd-php3":"php3","x-httpd-php3-preprocessed":"php3p","x-httpd-php4":"php4","x-httpd-php5":"php5","x-ica":"ica","x-info":"info","x-internet-signup":["ins","isp"],"x-iphone":"iii","x-iso9660-image":"iso","x-java-jnlp-file":"jnlp","x-jmol":"jmz","x-killustrator":"kil","x-latex":"latex","x-lyx":"lyx","x-lzx":"lzx","x-maker":["frm","fb","fbdoc"],"x-ms-wmd":"wmd","x-msdos-program":["com","exe","bat","dll"],"x-netcdf":["nc"],"x-ns-proxy-autoconfig":["pac","dat"],"x-nwc":"nwc","x-object":"o","x-oz-application":"oza","x-pkcs7-certreqresp":"p7r","x-python-code":["pyc","pyo"],"x-qgis":["qgs","shp","shx"],"x-quicktimeplayer":"qtl","x-redhat-package-manager":["rpm","rpa"],"x-ruby":"rb","x-sh":"sh","x-shar":"shar","x-shockwave-flash":["swf","swfl"],"x-silverlight":"scr","x-stuffit":"sit","x-sv4cpio":"sv4cpio","x-sv4crc":"sv4crc","x-tar":"tar","x-tex-gf":"gf","x-tex-pk":"pk","x-texinfo":["texinfo","texi"],"x-trash":["~","%","bak","old","sik"],"x-ustar":"ustar","x-wais-source":"src","x-wingz":"wz","x-x509-ca-cert":["crt","der","cer"],"x-xcf":"xcf","x-xfig":"fig","x-xpinstall":"xpi",applixware:"aw","atomsvc+xml":"atomsvc","ccxml+xml":"ccxml","cdmi-capability":"cdmia","cdmi-container":"cdmic","cdmi-domain":"cdmid","cdmi-object":"cdmio","cdmi-queue":"cdmiq","docbook+xml":"dbk","dssc+der":"dssc","dssc+xml":"xdssc","emma+xml":"emma","epub+zip":"epub",exi:"exi","font-tdpfr":"pfr","gml+xml":"gml","gpx+xml":"gpx",gxf:"gxf",hyperstudio:"stk","inkml+xml":["ink","inkml"],ipfix:"ipfix","jsonml+json":"jsonml","lost+xml":"lostxml","mads+xml":"mads",marc:"mrc","marcxml+xml":"mrcx","mathml+xml":["mathml","mml"],mbox:"mbox","mediaservercontrol+xml":"mscml","metalink+xml":"metalink","metalink4+xml":"meta4","mets+xml":"mets","mods+xml":"mods",mp21:["m21","mp21"],mp4:"mp4s","oebps-package+xml":"opf","omdoc+xml":"omdoc",onenote:["onetoc","onetoc2","onetmp","onepkg"],oxps:"oxps","patch-ops-error+xml":"xer","pgp-encrypted":"pgp",pkcs10:"p10","pkcs7-mime":["p7m","p7c"],"pkcs7-signature":"p7s",pkcs8:"p8","pkix-attr-cert":"ac","pkix-crl":"crl","pkix-pkipath":"pkipath",pkixcmp:"pki","pls+xml":"pls","prs.cww":"cww","pskc+xml":"pskcxml","reginfo+xml":"rif","relax-ng-compact-syntax":"rnc","resource-lists+xml":"rl","resource-lists-diff+xml":"rld","rls-services+xml":"rs","rpki-ghostbusters":"gbr","rpki-manifest":"mft","rpki-roa":"roa","rsd+xml":"rsd","sbml+xml":"sbml","scvp-cv-request":"scq","scvp-cv-response":"scs","scvp-vp-request":"spq","scvp-vp-response":"spp",sdp:"sdp","set-payment-initiation":"setpay","set-registration-initiation":"setreg","shf+xml":"shf","sparql-query":"rq","sparql-results+xml":"srx",srgs:"gram","srgs+xml":"grxml","sru+xml":"sru","ssdl+xml":"ssdl","ssml+xml":"ssml","tei+xml":["tei","teicorpus"],"thraud+xml":"tfi","timestamped-data":"tsd","vnd.3gpp.pic-bw-large":"plb","vnd.3gpp.pic-bw-small":"psb","vnd.3gpp.pic-bw-var":"pvb","vnd.3gpp2.tcap":"tcap","vnd.3m.post-it-notes":"pwn","vnd.accpac.simply.aso":"aso","vnd.accpac.simply.imp":"imp","vnd.acucobol":"acu","vnd.acucorp":["atc","acutc"],"vnd.adobe.air-application-installer-package+zip":"air","vnd.adobe.formscentral.fcdt":"fcdt","vnd.adobe.fxp":["fxp","fxpl"],"vnd.adobe.xdp+xml":"xdp","vnd.adobe.xfdf":"xfdf","vnd.ahead.space":"ahead","vnd.airzip.filesecure.azf":"azf","vnd.airzip.filesecure.azs":"azs","vnd.amazon.ebook":"azw","vnd.americandynamics.acc":"acc","vnd.amiga.ami":"ami","vnd.anser-web-certificate-issue-initiation":"cii","vnd.anser-web-funds-transfer-initiation":"fti","vnd.antix.game-component":"atx","vnd.apple.installer+xml":"mpkg","vnd.apple.mpegurl":"m3u8","vnd.aristanetworks.swi":"swi","vnd.astraea-software.iota":"iota","vnd.audiograph":"aep","vnd.blueice.multipass":"mpm","vnd.bmi":"bmi","vnd.businessobjects":"rep","vnd.chemdraw+xml":"cdxml","vnd.chipnuts.karaoke-mmd":"mmd","vnd.claymore":"cla","vnd.cloanto.rp9":"rp9","vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"vnd.cluetrust.cartomobile-config":"c11amc","vnd.cluetrust.cartomobile-config-pkg":"c11amz","vnd.commonspace":"csp","vnd.contact.cmsg":"cdbcmsg","vnd.cosmocaller":"cmc","vnd.crick.clicker":"clkx","vnd.crick.clicker.keyboard":"clkk","vnd.crick.clicker.palette":"clkp","vnd.crick.clicker.template":"clkt","vnd.crick.clicker.wordbank":"clkw","vnd.criticaltools.wbs+xml":"wbs","vnd.ctc-posml":"pml","vnd.cups-ppd":"ppd","vnd.curl.car":"car","vnd.curl.pcurl":"pcurl","vnd.dart":"dart","vnd.data-vision.rdz":"rdz","vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"vnd.dece.ttml+xml":["uvt","uvvt"],"vnd.dece.unspecified":["uvx","uvvx"],"vnd.dece.zip":["uvz","uvvz"],"vnd.denovo.fcselayout-link":"fe_launch","vnd.dna":"dna","vnd.dolby.mlp":"mlp","vnd.dpgraph":"dpg","vnd.dreamfactory":"dfac","vnd.ds-keypoint":"kpxx","vnd.dvb.ait":"ait","vnd.dvb.service":"svc","vnd.dynageo":"geo","vnd.ecowin.chart":"mag","vnd.enliven":"nml","vnd.epson.esf":"esf","vnd.epson.msf":"msf","vnd.epson.quickanime":"qam","vnd.epson.salt":"slt","vnd.epson.ssf":"ssf","vnd.eszigno3+xml":["es3","et3"],"vnd.ezpix-album":"ez2","vnd.ezpix-package":"ez3","vnd.fdf":"fdf","vnd.fdsn.mseed":"mseed","vnd.fdsn.seed":["seed","dataless"],"vnd.flographit":"gph","vnd.fluxtime.clip":"ftc","vnd.framemaker":["fm","frame","maker","book"],"vnd.frogans.fnc":"fnc","vnd.frogans.ltf":"ltf","vnd.fsc.weblaunch":"fsc","vnd.fujitsu.oasys":"oas","vnd.fujitsu.oasys2":"oa2","vnd.fujitsu.oasys3":"oa3","vnd.fujitsu.oasysgp":"fg5","vnd.fujitsu.oasysprs":"bh2","vnd.fujixerox.ddd":"ddd","vnd.fujixerox.docuworks":"xdw","vnd.fujixerox.docuworks.binder":"xbd","vnd.fuzzysheet":"fzs","vnd.genomatix.tuxedo":"txd","vnd.geogebra.file":"ggb","vnd.geogebra.tool":"ggt","vnd.geometry-explorer":["gex","gre"],"vnd.geonext":"gxt","vnd.geoplan":"g2w","vnd.geospace":"g3w","vnd.gmx":"gmx","vnd.grafeq":["gqf","gqs"],"vnd.groove-account":"gac","vnd.groove-help":"ghf","vnd.groove-identity-message":"gim","vnd.groove-injector":"grv","vnd.groove-tool-message":"gtm","vnd.groove-tool-template":"tpl","vnd.groove-vcard":"vcg","vnd.hal+xml":"hal","vnd.handheld-entertainment+xml":"zmm","vnd.hbci":"hbci","vnd.hhe.lesson-player":"les","vnd.hp-hpgl":"hpgl","vnd.hp-hpid":"hpid","vnd.hp-hps":"hps","vnd.hp-jlyt":"jlt","vnd.hp-pcl":"pcl","vnd.hp-pclxl":"pclxl","vnd.hydrostatix.sof-data":"sfd-hdstx","vnd.ibm.minipay":"mpy","vnd.ibm.modcap":["afp","listafp","list3820"],"vnd.ibm.rights-management":"irm","vnd.ibm.secure-container":"sc","vnd.iccprofile":["icc","icm"],"vnd.igloader":"igl","vnd.immervision-ivp":"ivp","vnd.immervision-ivu":"ivu","vnd.insors.igm":"igm","vnd.intercon.formnet":["xpw","xpx"],"vnd.intergeo":"i2g","vnd.intu.qbo":"qbo","vnd.intu.qfx":"qfx","vnd.ipunplugged.rcprofile":"rcprofile","vnd.irepository.package+xml":"irp","vnd.is-xpr":"xpr","vnd.isac.fcs":"fcs","vnd.jam":"jam","vnd.jcp.javame.midlet-rms":"rms","vnd.jisp":"jisp","vnd.joost.joda-archive":"joda","vnd.kahootz":["ktz","ktr"],"vnd.kde.karbon":"karbon","vnd.kde.kchart":"chrt","vnd.kde.kformula":"kfo","vnd.kde.kivio":"flw","vnd.kde.kontour":"kon","vnd.kde.kpresenter":["kpr","kpt"],"vnd.kde.kspread":"ksp","vnd.kde.kword":["kwd","kwt"],"vnd.kenameaapp":"htke","vnd.kidspiration":"kia","vnd.kinar":["kne","knp"],"vnd.koan":["skp","skd","skt","skm"],"vnd.kodak-descriptor":"sse","vnd.las.las+xml":"lasxml","vnd.llamagraphics.life-balance.desktop":"lbd","vnd.llamagraphics.life-balance.exchange+xml":"lbe","vnd.lotus-1-2-3":"123","vnd.lotus-approach":"apr","vnd.lotus-freelance":"pre","vnd.lotus-notes":"nsf","vnd.lotus-organizer":"org","vnd.lotus-screencam":"scm","vnd.lotus-wordpro":"lwp","vnd.macports.portpkg":"portpkg","vnd.mcd":"mcd","vnd.medcalcdata":"mc1","vnd.mediastation.cdkey":"cdkey","vnd.mfer":"mwf","vnd.mfmp":"mfm","vnd.micrografx.flo":"flo","vnd.micrografx.igx":"igx","vnd.mif":"mif","vnd.mobius.daf":"daf","vnd.mobius.dis":"dis","vnd.mobius.mbk":"mbk","vnd.mobius.mqy":"mqy","vnd.mobius.msl":"msl","vnd.mobius.plc":"plc","vnd.mobius.txf":"txf","vnd.mophun.application":"mpn","vnd.mophun.certificate":"mpc","vnd.ms-artgalry":"cil","vnd.ms-cab-compressed":"cab","vnd.ms-excel.addin.macroenabled.12":"xlam","vnd.ms-excel.sheet.binary.macroenabled.12":"xlsb","vnd.ms-excel.sheet.macroenabled.12":"xlsm","vnd.ms-excel.template.macroenabled.12":"xltm","vnd.ms-fontobject":"eot","vnd.ms-htmlhelp":"chm","vnd.ms-ims":"ims","vnd.ms-lrm":"lrm","vnd.ms-officetheme":"thmx","vnd.ms-powerpoint.addin.macroenabled.12":"ppam","vnd.ms-powerpoint.presentation.macroenabled.12":"pptm","vnd.ms-powerpoint.slide.macroenabled.12":"sldm","vnd.ms-powerpoint.slideshow.macroenabled.12":"ppsm","vnd.ms-powerpoint.template.macroenabled.12":"potm","vnd.ms-project":["mpp","mpt"],"vnd.ms-word.document.macroenabled.12":"docm","vnd.ms-word.template.macroenabled.12":"dotm","vnd.ms-works":["wps","wks","wcm","wdb"],"vnd.ms-wpl":"wpl","vnd.ms-xpsdocument":"xps","vnd.mseq":"mseq","vnd.musician":"mus","vnd.muvee.style":"msty","vnd.mynfc":"taglet","vnd.neurolanguage.nlu":"nlu","vnd.nitf":["ntf","nitf"],"vnd.noblenet-directory":"nnd","vnd.noblenet-sealer":"nns","vnd.noblenet-web":"nnw","vnd.nokia.n-gage.data":"ngdat","vnd.nokia.n-gage.symbian.install":"n-gage","vnd.nokia.radio-preset":"rpst","vnd.nokia.radio-presets":"rpss","vnd.novadigm.edm":"edm","vnd.novadigm.edx":"edx","vnd.novadigm.ext":"ext","vnd.oasis.opendocument.chart-template":"otc","vnd.oasis.opendocument.formula-template":"odft","vnd.oasis.opendocument.image-template":"oti","vnd.olpc-sugar":"xo","vnd.oma.dd2+xml":"dd2","vnd.openofficeorg.extension":"oxt","vnd.openxmlformats-officedocument.presentationml.slide":"sldx","vnd.osgeo.mapguide.package":"mgp","vnd.osgi.dp":"dp","vnd.osgi.subsystem":"esa","vnd.palm":["pdb","pqa","oprc"],"vnd.pawaafile":"paw","vnd.pg.format":"str","vnd.pg.osasli":"ei6","vnd.picsel":"efif","vnd.pmi.widget":"wg","vnd.pocketlearn":"plf","vnd.powerbuilder6":"pbd","vnd.previewsystems.box":"box","vnd.proteus.magazine":"mgz","vnd.publishare-delta-tree":"qps","vnd.pvi.ptid1":"ptid","vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"vnd.realvnc.bed":"bed","vnd.recordare.musicxml":"mxl","vnd.recordare.musicxml+xml":"musicxml","vnd.rig.cryptonote":"cryptonote","vnd.rn-realmedia":"rm","vnd.rn-realmedia-vbr":"rmvb","vnd.route66.link66+xml":"link66","vnd.sailingtracker.track":"st","vnd.seemail":"see","vnd.sema":"sema","vnd.semd":"semd","vnd.semf":"semf","vnd.shana.informed.formdata":"ifm","vnd.shana.informed.formtemplate":"itp","vnd.shana.informed.interchange":"iif","vnd.shana.informed.package":"ipk","vnd.simtech-mindmapper":["twd","twds"],"vnd.smart.teacher":"teacher","vnd.solent.sdkm+xml":["sdkm","sdkd"],"vnd.spotfire.dxp":"dxp","vnd.spotfire.sfs":"sfs","vnd.stepmania.package":"smzip","vnd.stepmania.stepchart":"sm","vnd.sus-calendar":["sus","susp"],"vnd.svd":"svd","vnd.syncml+xml":"xsm","vnd.syncml.dm+wbxml":"bdm","vnd.syncml.dm+xml":"xdm","vnd.tao.intent-module-archive":"tao","vnd.tcpdump.pcap":["pcap","cap","dmp"],"vnd.tmobile-livetv":"tmo","vnd.trid.tpt":"tpt","vnd.triscape.mxs":"mxs","vnd.trueapp":"tra","vnd.ufdl":["ufd","ufdl"],"vnd.uiq.theme":"utz","vnd.umajin":"umj","vnd.unity":"unityweb","vnd.uoml+xml":"uoml","vnd.vcx":"vcx","vnd.visionary":"vis","vnd.vsf":"vsf","vnd.webturbo":"wtb","vnd.wolfram.player":"nbp","vnd.wqd":"wqd","vnd.wt.stf":"stf","vnd.xara":"xar","vnd.xfdl":"xfdl","vnd.yamaha.hv-dic":"hvd","vnd.yamaha.hv-script":"hvs","vnd.yamaha.hv-voice":"hvp","vnd.yamaha.openscoreformat":"osf","vnd.yamaha.openscoreformat.osfpvg+xml":"osfpvg","vnd.yamaha.smaf-audio":"saf","vnd.yamaha.smaf-phrase":"spf","vnd.yellowriver-custom-menu":"cmp","vnd.zul":["zir","zirz"],"vnd.zzazz.deck+xml":"zaz","voicexml+xml":"vxml",widget:"wgt",winhlp:"hlp","wsdl+xml":"wsdl","wspolicy+xml":"wspolicy","x-ace-compressed":"ace","x-authorware-bin":["aab","x32","u32","vox"],"x-authorware-map":"aam","x-authorware-seg":"aas","x-blorb":["blb","blorb"],"x-bzip":"bz","x-bzip2":["bz2","boz"],"x-cfs-compressed":"cfs","x-chat":"chat","x-conference":"nsc","x-dgc-compressed":"dgc","x-dtbncx+xml":"ncx","x-dtbook+xml":"dtb","x-dtbresource+xml":"res","x-eva":"eva","x-font-bdf":"bdf","x-font-ghostscript":"gsf","x-font-linux-psf":"psf","x-font-pcf":"pcf","x-font-snf":"snf","x-font-ttf":["ttf","ttc"],"x-font-type1":["pfa","pfb","pfm","afm"],"x-freearc":"arc","x-gca-compressed":"gca","x-glulx":"ulx","x-gramps-xml":"gramps","x-install-instructions":"install","x-lzh-compressed":["lzh","lha"],"x-mie":"mie","x-mobipocket-ebook":["prc","mobi"],"x-ms-application":"application","x-ms-shortcut":"lnk","x-ms-xbap":"xbap","x-msbinder":"obd","x-mscardfile":"crd","x-msclip":"clp","application/x-ms-installer":"msi","x-msmediaview":["mvb","m13","m14"],"x-msmetafile":["wmf","wmz","emf","emz"],"x-msmoney":"mny","x-mspublisher":"pub","x-msschedule":"scd","x-msterminal":"trm","x-mswrite":"wri","x-nzb":"nzb","x-pkcs12":["p12","pfx"],"x-pkcs7-certificates":["p7b","spc"],"x-research-info-systems":"ris","x-silverlight-app":"xap","x-sql":"sql","x-stuffitx":"sitx","x-subrip":"srt","x-t3vm-image":"t3","x-tex-tfm":"tfm","x-tgif":"obj","x-xliff+xml":"xlf","x-xz":"xz","x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"xaml+xml":"xaml","xcap-diff+xml":"xdf","xenc+xml":"xenc","xml-dtd":"dtd","xop+xml":"xop","xproc+xml":"xpl","xslt+xml":"xslt","xv+xml":["mxml","xhvml","xvml","xvm"],yang:"yang","yin+xml":"yin",envoy:"evy",fractals:"fif","internet-property-stream":"acx",olescript:"axs","vnd.ms-outlook":"msg","vnd.ms-pkicertstore":"sst","x-compress":"z","x-perfmon":["pma","pmc","pmr","pmw"],"ynd.ms-pkipko":"pko",gzip:["gz","tgz"],"smil+xml":["smi","smil"],"vnd.debian.binary-package":["deb","udeb"],"vnd.hzn-3d-crossword":"x3d","vnd.sqlite3":["db","sqlite","sqlite3","db-wal","sqlite-wal","db-shm","sqlite-shm"],"vnd.wap.sic":"sic","vnd.wap.slc":"slc","x-krita":["kra","krz"],"x-perl":["pm","pl"],yaml:["yaml","yml"]},audio:{amr:"amr","amr-wb":"awb",annodex:"axa",basic:["au","snd"],flac:"flac",midi:["mid","midi","kar","rmi"],mpeg:["mpga","mpega","mp3","m4a","mp2a","m2a","m3a"],mpegurl:"m3u",ogg:["oga","ogg","spx"],"prs.sid":"sid","x-aiff":"aifc","x-gsm":"gsm","x-ms-wma":"wma","x-ms-wax":"wax","x-pn-realaudio":"ram","x-realaudio":"ra","x-sd2":"sd2",adpcm:"adp",mp4:"mp4a",s3m:"s3m",silk:"sil","vnd.dece.audio":["uva","uvva"],"vnd.digital-winds":"eol","vnd.dra":"dra","vnd.dts":"dts","vnd.dts.hd":"dtshd","vnd.lucent.voice":"lvp","vnd.ms-playready.media.pya":"pya","vnd.nuera.ecelp4800":"ecelp4800","vnd.nuera.ecelp7470":"ecelp7470","vnd.nuera.ecelp9600":"ecelp9600","vnd.rip":"rip",webm:"weba","x-caf":"caf","x-matroska":"mka","x-pn-realaudio-plugin":"rmp",xm:"xm",aac:"aac",aiff:["aiff","aif","aff"],opus:"opus",wav:"wav"},chemical:{"x-alchemy":"alc","x-cache":["cac","cache"],"x-cache-csf":"csf","x-cactvs-binary":["cbin","cascii","ctab"],"x-cdx":"cdx","x-chem3d":"c3d","x-cif":"cif","x-cmdf":"cmdf","x-cml":"cml","x-compass":"cpa","x-crossfire":"bsd","x-csml":["csml","csm"],"x-ctx":"ctx","x-cxf":["cxf","cef"],"x-embl-dl-nucleotide":["emb","embl"],"x-gamess-input":["inp","gam","gamin"],"x-gaussian-checkpoint":["fch","fchk"],"x-gaussian-cube":"cub","x-gaussian-input":["gau","gjc","gjf"],"x-gaussian-log":"gal","x-gcg8-sequence":"gcg","x-genbank":"gen","x-hin":"hin","x-isostar":["istr","ist"],"x-jcamp-dx":["jdx","dx"],"x-kinemage":"kin","x-macmolecule":"mcm","x-macromodel-input":"mmod","x-mdl-molfile":"mol","x-mdl-rdfile":"rd","x-mdl-rxnfile":"rxn","x-mdl-sdfile":"sd","x-mdl-tgf":"tgf","x-mmcif":"mcif","x-mol2":"mol2","x-molconn-Z":"b","x-mopac-graph":"gpt","x-mopac-input":["mop","mopcrt","zmt"],"x-mopac-out":"moo","x-ncbi-asn1":"asn","x-ncbi-asn1-ascii":["prt","ent"],"x-ncbi-asn1-binary":"val","x-rosdal":"ros","x-swissprot":"sw","x-vamas-iso14976":"vms","x-vmd":"vmd","x-xtel":"xtel","x-xyz":"xyz"},font:{otf:"otf",woff:"woff",woff2:"woff2"},image:{gif:"gif",ief:"ief",jpeg:["jpeg","jpg","jpe","jfif","jfif-tbnl","jif"],pcx:"pcx",png:"png","svg+xml":["svg","svgz"],tiff:["tiff","tif"],"vnd.djvu":["djvu","djv"],"vnd.wap.wbmp":"wbmp","x-canon-cr2":"cr2","x-canon-crw":"crw","x-cmu-raster":"ras","x-coreldraw":"cdr","x-coreldrawpattern":"pat","x-coreldrawtemplate":"cdt","x-corelphotopaint":"cpt","x-epson-erf":"erf","x-icon":"ico","x-jg":"art","x-jng":"jng","x-nikon-nef":"nef","x-olympus-orf":"orf","x-portable-anymap":"pnm","x-portable-bitmap":"pbm","x-portable-graymap":"pgm","x-portable-pixmap":"ppm","x-rgb":"rgb","x-xbitmap":"xbm","x-xpixmap":"xpm","x-xwindowdump":"xwd",bmp:"bmp",cgm:"cgm",g3fax:"g3",ktx:"ktx","prs.btif":"btif",sgi:"sgi","vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"vnd.dwg":"dwg","vnd.dxf":"dxf","vnd.fastbidsheet":"fbs","vnd.fpx":"fpx","vnd.fst":"fst","vnd.fujixerox.edmics-mmr":"mmr","vnd.fujixerox.edmics-rlc":"rlc","vnd.ms-modi":"mdi","vnd.ms-photo":"wdp","vnd.net-fpx":"npx","vnd.xiff":"xif",webp:"webp","x-3ds":"3ds","x-cmx":"cmx","x-freehand":["fh","fhc","fh4","fh5","fh7"],"x-pict":["pic","pct"],"x-tga":"tga","cis-cod":"cod",avif:"avifs",heic:["heif","heic"],pjpeg:["pjpg"],"vnd.adobe.photoshop":"psd","x-adobe-dng":"dng","x-fuji-raf":"raf","x-icns":"icns","x-kodak-dcr":"dcr","x-kodak-k25":"k25","x-kodak-kdc":"kdc","x-minolta-mrw":"mrw","x-panasonic-raw":["raw","rw2","rwl"],"x-pentax-pef":["pef","ptx"],"x-sigma-x3f":"x3f","x-sony-arw":"arw","x-sony-sr2":"sr2","x-sony-srf":"srf"},message:{rfc822:["eml","mime","mht","mhtml","nws"]},model:{iges:["igs","iges"],mesh:["msh","mesh","silo"],vrml:["wrl","vrml"],"x3d+vrml":["x3dv","x3dvz"],"x3d+xml":"x3dz","x3d+binary":["x3db","x3dbz"],"vnd.collada+xml":"dae","vnd.dwf":"dwf","vnd.gdl":"gdl","vnd.gtw":"gtw","vnd.mts":"mts","vnd.usdz+zip":"usdz","vnd.vtu":"vtu"},text:{"cache-manifest":["manifest","appcache"],calendar:["ics","icz","ifb"],css:"css",csv:"csv",h323:"323",html:["html","htm","shtml","stm"],iuls:"uls",plain:["txt","text","brf","conf","def","list","log","in","bas","diff","ksh"],richtext:"rtx",scriptlet:["sct","wsc"],texmacs:"tm","tab-separated-values":"tsv","vnd.sun.j2me.app-descriptor":"jad","vnd.wap.wml":"wml","vnd.wap.wmlscript":"wmls","x-bibtex":"bib","x-boo":"boo","x-c++hdr":["h++","hpp","hxx","hh"],"x-c++src":["c++","cpp","cxx","cc"],"x-component":"htc","x-dsrc":"d","x-diff":"patch","x-haskell":"hs","x-java":"java","x-literate-haskell":"lhs","x-moc":"moc","x-pascal":["p","pas","pp","inc"],"x-pcs-gcd":"gcd","x-python":"py","x-scala":"scala","x-setext":"etx","x-tcl":["tcl","tk"],"x-tex":["tex","ltx","sty","cls"],"x-vcalendar":"vcs","x-vcard":"vcf",n3:"n3","prs.lines.tag":"dsc",sgml:["sgml","sgm"],troff:["t","tr","roff","man","me","ms"],turtle:"ttl","uri-list":["uri","uris","urls"],vcard:"vcard","vnd.curl":"curl","vnd.curl.dcurl":"dcurl","vnd.curl.scurl":"scurl","vnd.curl.mcurl":"mcurl","vnd.dvb.subtitle":"sub","vnd.fly":"fly","vnd.fmi.flexstor":"flx","vnd.graphviz":"gv","vnd.in3d.3dml":"3dml","vnd.in3d.spot":"spot","x-asm":["s","asm"],"x-c":["c","h","dic"],"x-fortran":["f","for","f77","f90"],"x-opml":"opml","x-nfo":"nfo","x-sfv":"sfv","x-uuencode":"uu",webviewhtml:"htt",javascript:"js",json:"json",markdown:["md","markdown","mdown","markdn"],"vnd.wap.si":"si","vnd.wap.sl":"sl"},video:{avif:"avif","3gpp":"3gp",annodex:"axv",dl:"dl",dv:["dif","dv"],fli:"fli",gl:"gl",mpeg:["mpeg","mpg","mpe","m1v","m2v","mp2","mpa","mpv2"],mp4:["mp4","mp4v","mpg4"],quicktime:["qt","mov"],ogg:"ogv","vnd.mpegurl":["mxu","m4u"],"x-flv":"flv","x-la-asf":["lsf","lsx"],"x-mng":"mng","x-ms-asf":["asf","asx","asr"],"x-ms-wm":"wm","x-ms-wmv":"wmv","x-ms-wmx":"wmx","x-ms-wvx":"wvx","x-msvideo":"avi","x-sgi-movie":"movie","x-matroska":["mpv","mkv","mk3d","mks"],"3gpp2":"3g2",h261:"h261",h263:"h263",h264:"h264",jpeg:"jpgv",jpm:["jpm","jpgm"],mj2:["mj2","mjp2"],"vnd.dece.hd":["uvh","uvvh"],"vnd.dece.mobile":["uvm","uvvm"],"vnd.dece.pd":["uvp","uvvp"],"vnd.dece.sd":["uvs","uvvs"],"vnd.dece.video":["uvv","uvvv"],"vnd.dvb.file":"dvb","vnd.fvt":"fvt","vnd.ms-playready.media.pyv":"pyv","vnd.uvvu.mp4":["uvu","uvvu"],"vnd.vivo":"viv",webm:"webm","x-f4v":"f4v","x-m4v":"m4v","x-ms-vob":"vob","x-smv":"smv",mp2t:"ts"},"x-conference":{"x-cooltalk":"ice"},"x-world":{"x-vrml":["vrm","flr","wrz","xaf","xof"]}},Pe=(()=>{const e={};for(const t of n.keys(je))for(const r of n.keys(je[t])){const n=je[t][r];if("string"==typeof n)e[n]=t+"/"+r;else for(let i=0;ie;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;Oe[e]=t}class He{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^Oe[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Me extends z{constructor(){let e;const t=new He;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new p(4);new w(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function Be(e){if(typeof b==Re){const t=new p((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=Ze.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>a.round(e/1099511627776)||32,_shiftRight(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let i=0;i>>t),n=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=Ze.getPartial(i);return r.push(Ze.partial(t+s&31,t+s>32?n:r.pop(),1)),r}},Ve={bytes:{fromBits(e){const t=Ze.bitLength(e)/8,n=new p(t);let r;for(let i=0;t>i;i++)3&i||(r=e[i/4]),n[i]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new u("Cannot hash more than 2^53 - 1 bits");const s=new h(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=Ze.concat(t,[Ze.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}_S(e,t){return t<>>32-e}_block(e){const n=this,r=n._h,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let s=r[0],o=r[1],l=r[2],c=r[3],d=r[4];for(let e=0;79>=e;e++){16>e||(i[e]=n._S(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n._S(5,s)+n._f(e,o,l,c)+d+i[e]+n._key[a.floor(e/20)]|0;d=c,c=l,l=n._S(30,o),o=s,s=t}r[0]=r[0]+s|0,r[1]=r[1]+o|0,r[2]=r[2]+l|0,r[3]=r[3]+c|0,r[4]=r[4]+d|0}},Ge={getRandomValues(e){const t=new h(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(a.random()>.5?1:-1))};for(let r,i=0;inew Xe.hmacSha1(Ve.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new u("invalid params to pbkdf2");const i=1+(r>>5)<<2;let s,a,o,l,c;const d=new ArrayBuffer(i),f=new w(d);let p=0;const m=Ze;for(t=Ve.bytes.toBits(t),c=1;(i||1)>p;c++){for(s=a=e.encrypt(m.concat(t,[c])),o=1;n>o;o++)for(a=e.encrypt(a),l=0;lp&&oi&&(e=(new n).update(e).finalize());for(let t=0;i>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new u("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Ye=typeof _!=Re&&typeof _.getRandomValues==Ee,Je="Invalid password",Qe="Invalid signature",$e="zipjs-abort-check-password";function et(e){return Ye?_.getRandomValues(e):Ge.getRandomValues(e)}const tt=16,nt={name:"PBKDF2"},rt=n.assign({hash:{name:"HMAC"}},nt),it=n.assign({iterations:1e3,hash:{name:"SHA-1"}},nt),st=["deriveBits"],at=[8,12,16],ot=[16,24,32],lt=10,ct=[0,0,0,0],dt=typeof _!=Re,ft=dt&&_.subtle,ut=dt&&typeof ft!=Re,pt=Ve.bytes,mt=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],i=e.length;let s,a,o,l=1;if(4!==i&&6!==i&&8!==i)throw new u("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],s=i;4*i+28>s;s++){let e=a[s-1];(s%i==0||8===i&&s%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],s%i==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),a[s]=a[s-i]^e}for(let e=0;s;e++,s--){const t=a[3&e?s:s-4];o[e]=4>=s||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],i=[],s=[];let a,o,l,c;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let d=a=0;!n[d];d^=o||1,a=s[a]||1){let s=a^a<<1^a<<2^a<<3^a<<4;s=s>>8^255&s^99,n[d]=s,r[s]=d,c=i[l=i[o=i[d]]];let f=16843009*c^65537*l^257*o^16843008*d,u=257*i[s]^16843008*s;for(let n=0;4>n;n++)e[n][d]=u=u<<24^u>>>8,t[n][s]=f=f<<24^f>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new u("invalid aes block size");const n=this._key[t],r=n.length/4-2,i=[0,0,0,0],s=this._tables[t],a=s[0],o=s[1],l=s[2],c=s[3],d=s[4];let f,p,m,h=e[0]^n[0],w=e[t?3:1]^n[1],g=e[2]^n[2],x=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)f=a[h>>>24]^o[w>>16&255]^l[g>>8&255]^c[255&x]^n[b],p=a[w>>>24]^o[g>>16&255]^l[x>>8&255]^c[255&h]^n[b+1],m=a[g>>>24]^o[x>>16&255]^l[h>>8&255]^c[255&w]^n[b+2],x=a[x>>>24]^o[h>>16&255]^l[w>>8&255]^c[255&g]^n[b+3],b+=4,h=f,w=p,g=m;for(let e=0;4>e;e++)i[t?3&-e:e]=d[h>>>24]<<24^d[w>>16&255]<<16^d[g>>8&255]<<8^d[255&x]^n[b++],f=h,h=w,w=g,g=x,x=f;return i}},ht=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];const i=Ze.bitLength(t);for(let i=0;r>i;i+=4){this.incCounter(n);const r=e.encrypt(n);t[i]^=r[0],t[i+1]^=r[1],t[i+2]^=r[2],t[i+3]^=r[3]}return Ze.clamp(t,i)}},wt=Xe.hmacSha1;let gt=dt&&ut&&typeof ft.importKey==Ee,xt=dt&&ut&&typeof ft.deriveBits==Ee;class bt extends z{constructor({password:e,rawPassword:t,signed:r,encryptionStrength:i,checkPasswordOnly:s}){super({start(){n.assign(this,{ready:new x((e=>this.resolveReady=e)),password:kt(e,t),signed:r,strength:i-1,pending:new p})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const i=await _t(e,t,n,St(r,0,at[t])),s=St(r,at[t]);if(i[0]!=s[0]||i[1]!=s[1])throw new u(Je)})(n,i,r,St(e,0,at[i]+2)),e=St(e,at[i]+2),s?t.error(new u($e)):a()):await o;const l=new p(e.length-lt-(e.length-lt)%tt);t.enqueue(yt(n,e,l,0,lt,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:i,ready:s}=this;if(r&&n){await s;const a=St(i,0,i.length-lt),o=St(i,i.length-lt);let l=new p;if(a.length){const e=Dt(pt,a);r.update(e);const t=n.update(e);l=At(pt,t)}if(t){const e=St(At(pt,r.digest()),0,lt);for(let t=0;lt>t;t++)if(e[t]!=o[t])throw new u(Qe)}e.enqueue(l)}}})}}class vt extends z{constructor({password:e,rawPassword:t,encryptionStrength:r}){let i;super({start(){n.assign(this,{ready:new x((e=>this.resolveReady=e)),password:kt(e,t),strength:r-1,pending:new p})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:s,ready:a}=n;let o=new p;r?(o=await(async(e,t,n)=>{const r=et(new p(at[t]));return zt(r,await _t(e,t,n,r))})(n,i,r),s()):await a;const l=new p(o.length+e.length-e.length%tt);l.set(o,0),t.enqueue(yt(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:s}=this;if(n&&t){await s;let a=new p;if(r.length){const e=t.update(Dt(pt,r));n.update(e),a=At(pt,e)}i.signature=At(pt,n.digest()).slice(0,lt),e.enqueue(zt(a,i.signature))}}}),i=this}}function yt(e,t,n,r,i,s){const{ctr:a,hmac:o,pending:l}=e,c=t.length-i;let d;for(l.length&&(t=zt(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new p(t)).set(n,0)}return e})(n,c-c%tt)),d=0;c-tt>=d;d+=tt){const e=Dt(pt,St(t,d,d+tt));s&&o.update(e);const i=a.update(e);s||o.update(i),n.set(At(pt,i),d+r)}return e.pending=St(t,d),n}async function _t(e,r,i,s){e.password=null;const a=await(async(e,t,n,r,i)=>{if(!gt)return Xe.importKey(t);try{return await ft.importKey("raw",t,n,!1,i)}catch(e){return gt=!1,Xe.importKey(t)}})(0,i,rt,0,st),o=await(async(e,t,n)=>{if(!xt)return Xe.pbkdf2(t,e.salt,it.iterations,n);try{return await ft.deriveBits(e,t,n)}catch(r){return xt=!1,Xe.pbkdf2(t,e.salt,it.iterations,n)}})(n.assign({salt:s},it),a,8*(2*ot[r]+2)),l=new p(o),c=Dt(pt,St(l,0,ot[r])),d=Dt(pt,St(l,ot[r],2*ot[r])),f=St(l,2*ot[r]);return n.assign(e,{keys:{key:c,authentication:d,passwordVerification:f},ctr:new ht(new mt(c),t.from(ct)),hmac:new wt(d)}),f}function kt(e,t){return t===Ce?Be(e):t}function zt(e,t){let n=e;return e.length+t.length&&(n=new p(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function St(e,t,n){return e.subarray(t,n)}function At(e,t){return e.fromBits(t)}function Dt(e,t){return e.toBits(t)}class Ct extends z{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Wt(this,e)},transform(e,t){const n=this;if(n.password){const t=Et(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new u(Je);e=e.subarray(12)}r?t.error(new u($e)):t.enqueue(Et(n,e))}})}}class Rt extends z{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Wt(this,e)},transform(e,t){const n=this;let r,i;if(n.password){n.password=null;const t=et(new p(12));t[11]=n.passwordVerification,r=new p(e.length+t.length),r.set(Ft(n,t),0),i=12}else r=new p(e.length),i=0;r.set(Ft(n,e),i),t.enqueue(r)}})}}function Et(e,t){const n=new p(t.length);for(let r=0;r>>24]),i=~e.crcKey2.get(),e.keys=[n,r,i]}function qt(e){const t=2|e.keys[2];return Ut(a.imul(t,1^t)>>>8)}function Ut(e){return 255&e}function Lt(e){return 4294967295&e}const It="deflate-raw";class Nt extends z{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:i,encrypted:s,useCompressionStream:a,zipCrypto:o,signed:l,level:c}=e,d=this;let f,u,p=Pt(super.readable);s&&!o||!l||(f=new Me,p=Mt(p,f)),i&&(p=Ht(p,a,{level:c,chunkSize:t},r,n)),s&&(o?p=Mt(p,new Rt(e)):(u=new vt(e),p=Mt(p,u))),Ot(d,p,(()=>{let e;s&&!o&&(e=u.signature),s&&!o||!l||(e=new w(f.value.buffer).getUint32(0)),d.signature=e}))}}class jt extends z{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:s,signed:a,signature:o,compressed:l,useCompressionStream:c}=e;let d,f,p=Pt(super.readable);s&&(i?p=Mt(p,new Ct(e)):(f=new bt(e),p=Mt(p,f))),l&&(p=Ht(p,c,{chunkSize:t},r,n)),s&&!i||!a||(d=new Me,p=Mt(p,d)),Ot(this,p,(()=>{if((!s||i)&&a){const e=new w(d.value.buffer);if(o!=e.getUint32(0,!1))throw new u(Qe)}}))}}function Pt(e){return Mt(e,new z({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function Ot(e,t,r){t=Mt(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Ht(e,t,n,r,i){try{e=Mt(e,new(t&&r?r:i)(It,n))}catch(r){if(!t)return e;try{e=Mt(e,new i(It,n))}catch(t){return e}}return e}function Mt(e,t){return e.pipeThrough(t)}const Bt="data",Zt="close",Vt="deflate",Kt="inflate";class Gt extends z{constructor(e,t){super({});const r=this,{codecType:i}=e;let s;i.startsWith(Vt)?s=Nt:i.startsWith(Kt)&&(s=jt);let a=0,o=0;const l=new s(e,t),c=super.readable,d=new z({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:o})}}),f=new z({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=l;n.assign(r,{signature:e,outputSize:a,inputSize:o})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(d).pipeThrough(l).pipeThrough(f)})}}class Xt extends z{constructor(e){let t;super({transform:function n(r,i){if(t){const e=new p(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(i.enqueue(r.slice(0,e)),n(r.slice(e),i)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}let Yt=typeof E!=Re;class Jt{constructor(e,{readable:t,writable:r},{options:i,config:s,streamOptions:a,useWebWorkers:o,transferStreams:l,scripts:c},d){const{signal:f}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Xt(s.chunkSize)).pipeThrough(new Qt(t,a),{signal:f}),writable:r,options:n.assign({},i),scripts:c,transferStreams:l,terminate:()=>new x((t=>{const{worker:n,busy:r}=e;n?(r?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,d(e)}}),(o&&Yt?tn:en)(e,s)}}class Qt extends z{constructor(e,{onstart:t,onprogress:n,size:r,onend:i}){let s=0;super({async start(){t&&await $t(t,r)},async transform(e,t){s+=e.length,n&&await $t(n,s,r),t.enqueue(e)},async flush(){e.size=s,i&&await $t(i,s)}})}}async function $t(e,...t){try{await e(...t)}catch(e){}}function en(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},i)=>{try{const r=new Gt(e,i);await t.pipeThrough(r).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:s,inputSize:a,outputSize:o}=r;return{signature:s,inputSize:a,outputSize:o}}finally{r()}})(e,t)}}function tn(e,t){const{baseURL:r,chunkSize:i}=t;if(!e.interface){let s;try{s=((e,t,r)=>{const i={type:"module"};let s,a;typeof e==Ee&&(e=e());try{s=new f(e,t)}catch(t){s=e}if(nn)try{a=new E(s)}catch(e){nn=!1,a=new E(s,i)}else a=new E(s,i);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:i,messageId:s,result:a,error:o}=e,{reader:l,writer:c,resolveResult:d,rejectResult:f,onTaskFinished:m}=t;try{if(o){const{message:e,stack:t,code:r,name:i}=o,s=new u(e);n.assign(s,{stack:t,code:r,name:i}),h(s)}else{if("pull"==r){const{value:e,done:n}=await l.read();sn({type:Bt,value:e,done:n,messageId:s},t)}r==Bt&&(await c.ready,await c.write(new p(i)),sn({type:"ack",messageId:s},t)),r==Zt&&h(null,a)}}catch(o){sn({type:Zt,messageId:s},t),h(o)}function h(e,t){e?f(e):d(t),c&&c.releaseLock(),m()}})(e,r))),a})(e.scripts[0],r,e)}catch(n){return Yt=!1,en(e,t)}n.assign(e,{worker:s,interface:{run:()=>(async(e,t)=>{let r,i;const s=new x(((e,t)=>{r=e,i=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:i,result:s});const{readable:a,options:o,scripts:l}=e,{writable:c,closed:d}=(e=>{let t;const n=new x((e=>t=e));return{writable:new A({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),f=sn({type:"start",scripts:l.slice(1),options:o,config:t,readable:a,writable:c},e);f||n.assign(e,{reader:a.getReader(),writer:c.getWriter()});const u=await s;return f||await c.getWriter().close(),await d,u})(e,{chunkSize:i})}})}return e.interface}let nn=!0,rn=!0;function sn(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:i}){try{const{value:n,readable:r,writable:s}=e,a=[];if(n&&(n.byteLength{const n=an.find((e=>!e.busy));if(n)return dn(n),new Jt(n,e,t,h);if(an.lengthon.push({resolve:n,stream:e,workerOptions:t})))})()).run();function h(e){if(on.length){const[{resolve:t,stream:n,workerOptions:r}]=on.splice(0,1);t(new Jt(e,n,r,h))}else e.worker?(dn(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;i.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{an=an.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),r))})(e,t)):an=an.filter((t=>t!=e))}}function dn(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}function fn(e,t,r){return class{constructor(i){const s=this;var a,o;a=i,o="level",(typeof n.hasOwn===Ee?n.hasOwn(a,o):a.hasOwnProperty(o))&&i.level===Ce&&delete i.level,s.codec=new e(n.assign({},t,i)),r(s.codec,(e=>{if(s.pendingData){const t=s.pendingData;s.pendingData=new p(t.length+e.length);const{pendingData:n}=s;n.set(t,0),n.set(e,t.length)}else s.pendingData=new p(e)}))}append(e){return this.codec.push(e),i(this)}flush(){return this.codec.push(new p,!0),i(this)}};function i(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new p}}const un="HTTP error ",pn="HTTP Range not supported",mn="Writer iterator completed too soon",hn="Range",wn="GET",gn="bytes",xn=65536,bn="writable";class vn{constructor(){this.size=0}init(){this.initialized=!0}}class yn extends vn{get readable(){const e=this,{chunkSize:t=xn}=e,n=new S({start(){this.chunkOffset=0},async pull(r){const{offset:i=0,size:s,diskNumberStart:o}=n,{chunkOffset:l}=this;r.enqueue(await Yn(e,i+l,a.min(t,s-l),o)),l+t>s?r.close():this.chunkOffset+=t}});return n}}class _n extends vn{constructor(){super();const e=this,t=new A({write:t=>e.writeUint8Array(t)});n.defineProperty(e,bn,{get:()=>t})}writeUint8Array(){}}class kn extends yn{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,i=new p(t),s=4*a.floor(e/3),o=atob(r.substring(s+n,4*a.ceil((e+t)/3)+n)),l=e-3*a.floor(s/4);for(let e=l;l+t>e;e++)i[e-l]=o.charCodeAt(e);return i}}class zn extends _n{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,i=t.pending;const s=t.pending.length;for(t.pending="",n=0;n<3*a.floor((s+e.length)/3)-s;n++)i+=r.fromCharCode(e[n]);for(;n2?t.data+=k(i):t.pending=i}getData(){return this.data+k(this.pending)}}class Sn extends yn{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,i=e||rt&&(s=s.slice(e,r)),new p(s)}}class An extends vn{constructor(e){super();const t=new z,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,bn,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Dn extends Sn{constructor(e){super(new g([e],{type:"text/plain"}))}}class Cn extends An{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new x(((i,s)=>{n.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>s(t.error)}),t.readAsText(r,e)}))}}}class Rn extends yn{constructor(e,t){super(),Fn(this,e,t)}async init(){await Wn(this,Pn,Ln),super.init()}readUint8Array(e,t){return Tn(this,e,t,Pn,Ln)}}class En extends yn{constructor(e,t){super(),Fn(this,e,t)}async init(){await Wn(this,On,In),super.init()}readUint8Array(e,t){return Tn(this,e,t,On,In)}}function Fn(e,t,r){const{preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o})}async function Wn(e,t,n){const{url:r,preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:o,combineSizeEocd:l}=e;if((e=>{const{baseURL:t}=Ue(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n})(r)&&(a||o)&&(void 0===s||s)){const r=await t(wn,e,qn(e,l?-22:void 0));if(!o&&r.headers.get("Accept-Ranges")!=gn)throw new u(pn);{let s;l&&(e.eocdCache=new p(await r.arrayBuffer()));const a=r.headers.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(s=i(t))}}s===Ce?await jn(e,t,n):e.size=s}}else await jn(e,t,n)}async function Tn(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,eocdCache:o,size:l,options:c}=e;if(s||a){if(o&&t==l-_e&&n==_e)return o;const i=await r(wn,e,qn(e,t,n));if(206!=i.status)throw new u(pn);return new p(await i.arrayBuffer())}{const{data:r}=e;return r||await i(e,c),new p(e.data.subarray(t,t+n))}}function qn(e,t=0,r=1){return n.assign({},Un(e),{[hn]:gn+"="+(0>t?t:t+"-"+(t+r-1))})}function Un({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Ln(e){await Nn(e,Pn)}async function In(e){await Nn(e,On)}async function Nn(e,t){const n=await t(wn,e,Un(e));e.data=new p(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function jn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Un(e))).headers.get("Content-Length");r?e.size=i(r):await n(e,e.options)}}async function Pn(e,{options:t,url:r},i){const s=await fetch(r,n.assign({},t,{method:e,headers:i}));if(400>s.status)return s;throw 416==s.status?new u(pn):new u(un+(s.statusText||s.status))}function On(e,{url:t},r){return new x(((i,s)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),i({status:a.status,arrayBuffer:()=>a.response,headers:new l(e)})}else s(416==a.status?new u(pn):new u(un+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>s(e.detail?e.detail.error:new u("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class Hn extends yn{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new En(e,t):new Rn(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Mn extends yn{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class Bn extends _n{init(e=0){n.assign(this,{offset:0,array:new p(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new p(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}}class Zn extends yn{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await x.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:i}=this;let s,o=n;-1==o&&(o=i.length-1);let l=e;for(;l>=i[o].size;)l-=i[o].size,o++;const c=i[o],d=c.size;if(l+t>d){const i=d-l;s=new p(t),s.set(await Yn(c,l,i)),s.set(await r.readUint8Array(e+i,t-i,n),i)}else s=await Yn(c,l,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),s}}class Vn extends vn{constructor(e,t=4294967295){super();const r=this;let i,s,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new A({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function Kn(e,t){if(!e.init||e.initialized)return x.resolve();await e.init(t)}function Gn(e){return t.isArray(e)&&(e=new Zn(e)),e instanceof S&&(e={readable:e}),e}function Xn(e){e.writable===Ce&&typeof e.next==Ee&&(e=new Vn(e)),e instanceof A&&(e={writable:e});const{writable:t}=e;return t.size===Ce&&(t.size=0),e instanceof Vn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function Yn(e,t,n,r){return e.readUint8Array(t,n,r)}const Jn=Zn,Qn=Vn,$n="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function er(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const kr="File format is not recognized",zr="End of central directory not found",Sr="End of Zip64 central directory locator not found",Ar="Central directory header not found",Dr="Local file header not found",Cr="Zip64 extra field not found",Rr="File contains encrypted entry",Er="Encryption method not supported",Fr="Compression method not supported",Wr="Split zip file",Tr="utf-8",qr="cp437",Ur=[[sr,pe],[ar,pe],[or,pe],[lr,me]],Lr={[me]:{getValue:Kr,bytes:4},[pe]:{getValue:Gr,bytes:8}};class Ir{constructor(e,t={}){n.assign(this,{reader:Gn(e),options:t,config:Ue()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:i}=t;if(await Kn(r),r.size!==Ce&&r.readUint8Array||(r=new Sn(await new d(r.readable).blob()),await Kn(r)),r.size<_e)throw new u(kr);r.chunkSize=Le(i);const s=await(async(e,t,n)=>{const r=new p(4);var i;return i=t,Xr(r).setUint32(0,i,!0),await s(22)||await s(a.min(1048582,n));async function s(t){const i=n-t,s=await Yn(e,i,t);for(let e=s.length-22;e>=0;e--)if(s[e]==r[0]&&s[e+1]==r[1]&&s[e+2]==r[2]&&s[e+3]==r[3])return{offset:i+e,buffer:s.slice(e,e+22).buffer}}})(r,be,r.size);if(!s)throw Kr(Xr(await Yn(r,0,4)))==we?new u(Wr):new u(zr);const o=Xr(s);let l=Kr(o,12),c=Kr(o,16);const f=s.offset,m=Vr(o,20),h=f+_e+m;let w=Vr(o,4);const g=r.lastDiskNumber||0;let x=Vr(o,6),b=Vr(o,8),v=0,y=0;if(c==pe||l==pe||b==me||x==me){const e=Xr(await Yn(r,s.offset-20,20));if(Kr(e,0)==ye){c=Gr(e,8);let t=await Yn(r,c,56,-1),n=Xr(t);const i=s.offset-20-56;if(Kr(n,0)!=ve&&c!=i){const e=c;c=i,v=c-e,t=await Yn(r,c,56,-1),n=Xr(t)}if(Kr(n,0)!=ve)throw new u(Sr);w==me&&(w=Kr(n,16)),x==me&&(x=Kr(n,20)),b==me&&(b=Gr(n,32)),l==pe&&(l=Gr(n,40)),c-=l}}if(cc)throw new u(kr);let _=0,k=await Yn(r,c,l,x),z=Xr(k);if(l){const e=s.offset-l;if(Kr(z,_)!=xe&&c!=e){const t=c;c=e,v+=c-t,k=await Yn(r,c,l,x),z=Xr(k)}}const S=s.offset-c-(r.lastDiskOffset||0);if(l==S||0>S||(l=S,k=await Yn(r,c,l,x),z=Xr(k)),0>c||c>=r.size)throw new u(kr);const A=Hr(t,e,"filenameEncoding"),D=Hr(t,e,"commentEncoding");for(let s=0;b>s;s++){const o=new Nr(r,i,t.options);if(Kr(z,_)!=xe)throw new u(Ar);jr(o,z,_+6);const l=!!o.bitFlag.languageEncodingFlag,c=_+46,d=c+o.filenameLength,f=d+o.extraFieldLength,p=Vr(z,_+4),m=!0,h=k.subarray(c,d),w=Vr(z,_+32),g=f+w,x=k.subarray(f,g),S=l,C=l,R=m&&!(16&~Zr(z,_+38)),E=Kr(z,_+42)+v;n.assign(o,{versionMadeBy:p,msDosCompatible:m,compressedSize:0,uncompressedSize:0,commentLength:w,directory:R,offset:E,diskNumberStart:Vr(z,_+34),internalFileAttribute:Vr(z,_+36),externalFileAttribute:Kr(z,_+38),rawFilename:h,filenameUTF8:S,commentUTF8:C,rawExtraField:k.subarray(d,f)});const F=Hr(t,e,"decodeText")||er,W=S?Tr:A||qr,T=C?Tr:D||qr;let q=F(h,W);q===Ce&&(q=er(h,W));let U=F(x,T);U===Ce&&(U=er(x,T)),n.assign(o,{rawComment:x,filename:q,comment:U,directory:R||q.endsWith(Se)}),y=a.max(E,y),Pr(o,o,z,_+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const L=new _r(o);L.getData=(e,t)=>o.getData(e,L,t),_=g;const{onprogress:I}=e;if(I)try{await I(s+1,b,new _r(o))}catch(e){}yield L}const C=Hr(t,e,"extractPrependedData"),R=Hr(t,e,"extractAppendedData");return C&&(t.prependedData=y>0?await Yn(r,0,y):new p),t.comment=m?await Yn(r,f+_e,m):new p,R&&(t.appendedData=h>>8&255:m>>>24&255),signature:m,compressed:0!=c&&!_,encrypted:i.encrypted&&!_,useWebWorkers:Hr(i,r,"useWebWorkers"),useCompressionStream:Hr(i,r,"useCompressionStream"),transferStreams:Hr(i,r,"transferStreams"),checkPasswordOnly:E},config:d,streamOptions:{signal:R,size:D,onstart:W,onprogress:T,onend:q}};let L=0;try{({outputSize:L}=await cn({readable:C,writable:F},U))}catch(e){if(!E||e.message!=$e)throw e}finally{const e=Hr(i,r,"preventClose");F.size+=L,e||F.locked||await F.getWriter().close()}return E?Ce:e.getData?e.getData():F}};function jr(e,t,r){const i=e.rawBitFlag=Vr(t,r+2),s=!(1&~i),a=Kr(t,r+6);n.assign(e,{encrypted:s,version:Vr(t,r),bitFlag:{level:(6&i)>>1,dataDescriptor:!(8&~i),languageEncodingFlag:(i&ze)==ze},rawLastModDate:a,lastModDate:Mr(a),filenameLength:Vr(t,r+22),extraFieldLength:Vr(t,r+24)})}function Pr(e,t,r,i,s){const{rawExtraField:a}=t,c=t.extraField=new l,d=Xr(new p(a));let f=0;try{for(;f{t.zip64=!0;const n=Xr(e.data),r=Ur.filter((([e,n])=>t[e]==n));for(let i=0,s=0;i{const i=Xr(e.data),s=Zr(i,4);n.assign(e,{vendorVersion:Zr(i,0),vendorId:Zr(i,2),strength:s,originalCompressionMethod:r,compressionMethod:Vr(i,5)}),t.compressionMethod=e.compressionMethod})(x,t,m),t.extraFieldAES=x):t.compressionMethod=m;const b=c.get(10);b&&(((e,t)=>{const r=Xr(e.data);let i,s=4;try{for(;s{const r=Xr(e.data),i=Zr(r,0),s=[],a=[];n?(1&~i||(s.push(cr),a.push(dr)),2&~i||(s.push(fr),a.push("rawLastAccessDate")),4&~i||(s.push(ur),a.push("rawCreationDate"))):5>e.data.length||(s.push(cr),a.push(dr));let l=1;s.forEach(((n,i)=>{if(e.data.length>=l+4){const s=Kr(r,l);t[n]=e[n]=new o(1e3*s);const c=a[i];e[c]=s}l+=4}))})(v,t,s),t.extraFieldExtendedTimestamp=v);const y=c.get(6534);y&&(t.extraFieldUSDZ=y)}function Or(e,t,r,i,s){const a=Xr(e.data),o=new He;o.append(s[r]);const l=Xr(new p(4));l.setUint32(0,o.get(),!0);const c=Kr(a,1);n.assign(e,{version:Zr(a,0),[t]:er(e.data.subarray(5)),valid:!s.bitFlag.languageEncodingFlag&&c==Kr(l,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function Hr(e,t,n){return t[n]===Ce?e.options[n]:t[n]}function Mr(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Br(e){return new o(i(e/s(1e4)-s(116444736e5)))}function Zr(e,t){return e.getUint8(t)}function Vr(e,t){return e.getUint16(t,!0)}function Kr(e,t){return e.getUint32(t,!0)}function Gr(e,t){return i(e.getBigUint64(t,!0))}function Xr(e){return new w(e.buffer)}const Yr="File already exists",Jr="Zip file comment exceeds 64KB",Qr="File entry comment exceeds 64KB",$r="File entry name exceeds 64KB",ei="Version exceeds 65535",ti="The strength must equal 1, 2, or 3",ni="Extra field type exceeds 65535",ri="Extra field data exceeds 64KB",ii="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",si="Undefined uncompressed size",ai=new p([7,0,2,0,65,69,3,0,0]);let oi=0;const li=[];class ci{constructor(e,t={}){const r=(e=Xn(e)).availableSize!==Ce&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==Ce&&e.maxSize>0&&e.maxSize!==1/0;n.assign(this,{writer:e,addSplitZipSignature:r,options:t,config:Ue(),files:new l,filenames:new c,offset:t.offset===Ce?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new c,bufferedWrites:0})}async add(e="",r,i={}){const l=this,{pendingAddFileCalls:c,config:f}=l;let g;oili.push(e)));try{if(e=e.trim(),l.filenames.has(e))throw new u(Yr);return l.filenames.add(e),g=(async(e,r,i,l)=>{r=r.trim(),l.directory&&!r.endsWith(Se)?r+=Se:l.directory=r.endsWith(Se);const c=ui(e,l,"encodeText",Be);let f=c(r);if(f===Ce&&(f=Be(r)),vi(f)>me)throw new u($r);const g=l.comment||"";let b=c(g);if(b===Ce&&(b=Be(g)),vi(b)>me)throw new u(Qr);const v=ui(e,l,xr,20);if(v>me)throw new u(ei);const y=ui(e,l,br,20);if(y>me)throw new u(ei);const _=ui(e,l,cr,new o),k=ui(e,l,fr),S=ui(e,l,ur),A=ui(e,l,hr,!0),D=ui(e,l,pr,0),C=ui(e,l,mr,0),R=ui(e,l,"passThrough");let E,F;R||(E=ui(e,l,"password"),F=ui(e,l,"rawPassword"));const W=ui(e,l,"encryptionStrength",3),T=ui(e,l,vr),q=ui(e,l,"extendedTimestamp",!0),U=ui(e,l,"keepOrder",!0),L=ui(e,l,"level"),I=ui(e,l,"useWebWorkers"),N=ui(e,l,"bufferedWrite"),j=ui(e,l,"dataDescriptorSignature",!1),P=ui(e,l,"signal"),O=ui(e,l,"useUnicodeFileNames",!0),H=ui(e,l,"useCompressionStream"),M=ui(e,l,"compressionMethod");let B=ui(e,l,"dataDescriptor",!0),Z=ui(e,l,wr);if(!T&&(E!==Ce||F!==Ce)&&(1>W||W>3))throw new u(ti);let V=new p;const{extraField:K}=l;if(K){let e=0,t=0;K.forEach((t=>e+=4+vi(t))),V=new p(e),K.forEach(((e,n)=>{if(n>me)throw new u(ni);if(vi(e)>me)throw new u(ri);xi(V,new m([n]),t),xi(V,new m([vi(e)]),t+2),xi(V,e,t+4),t+=4+vi(e)}))}let G=0,X=0,Y=0;if(R&&(({uncompressedSize:Y}=l),Y===Ce))throw new u(si);const J=!0===Z;i&&(i=Gn(i),await Kn(i),R?G=pi(Y):i.size===Ce?(B=!0,(Z||Z===Ce)&&(Z=!0,Y=G=4294967296)):(Y=i.size,G=pi(Y)));const{diskOffset:Q,diskNumber:$,maxSize:ee}=e.writer,te=J||Y>pe,ne=J||G>pe,re=J||e.offset+e.pendingEntriesSize-Q>pe,ie=ui(e,l,"supportZip64SplitFile",!0)&&J||$+a.ceil(e.pendingEntriesSize/ee)>me;if(re||te||ne||ie){if(!1===Z||!U)throw new u(ii);Z=!0}Z=Z||!1;const se=ui(e,l,gr),{signature:ae}=l,oe=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:i,level:s,zip64:o,zipCrypto:l,useUnicodeFileNames:c,dataDescriptor:d,directory:f,rawExtraField:u,encryptionStrength:m,extendedTimestamp:w,encrypted:g}=e;let{version:x,compressionMethod:b}=e;const v=!f&&(s>0||s===Ce&&0!==b);let y,_,k,z;if(g&&!l){y=new p(vi(ai)+2);const e=bi(y);hi(e,0,39169),xi(y,ai,2),mi(e,8,m)}else y=new p;if(w){k=new p(9+(r?4:0)+(i?4:0));const e=bi(k);hi(e,0,ke),hi(e,2,vi(k)-4),z=1+(r?2:0)+(i?4:0),mi(e,4,z);let t=5;wi(e,t,a.floor(n.getTime()/1e3)),t+=4,r&&(wi(e,t,a.floor(r.getTime()/1e3)),t+=4),i&&wi(e,t,a.floor(i.getTime()/1e3));try{_=new p(36);const e=bi(_),t=fi(n);hi(e,0,10),hi(e,2,32),hi(e,8,1),hi(e,10,24),gi(e,12,t),gi(e,20,fi(r)||t),gi(e,28,fi(i)||t)}catch(e){_=new p}}else _=k=new p;let S=0;c&&(S|=ze),d&&(S|=8),b===Ce&&(b=v?8:0),8==b&&(s>=1&&3>s&&(S|=6),s>=3&&5>s&&(S|=1),9===s&&(S|=2)),o&&(x=x>45?x:45),g&&(S|=1,l||(x=x>51?x:51,y[9]=b,b=99));const A=new p(26),D=bi(A);hi(D,0,x),hi(D,2,S),hi(D,4,b);const C=new h(1),R=bi(C);let E;E=De>n?De:n>Ae?Ae:n,hi(R,0,(E.getHours()<<6|E.getMinutes())<<5|E.getSeconds()/2),hi(R,2,(E.getFullYear()-1980<<4|E.getMonth()+1)<<5|E.getDate());const F=C[0];wi(D,6,F),hi(D,22,vi(t));const W=vi(y,k,_,u);hi(D,24,W);const T=new p(30+vi(t)+W);return wi(bi(T),0,he),xi(T,A,4),xi(T,t,30),xi(T,y,30+vi(t)),xi(T,k,30+vi(t,y)),xi(T,_,30+vi(t,y,k)),xi(T,u,30+vi(t,y,k,_)),{localHeaderArray:T,headerArray:A,headerView:D,lastModDate:n,rawLastModDate:F,encrypted:g,compressed:v,version:x,compressionMethod:b,extraFieldExtendedTimestampFlag:z,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:_,rawExtraFieldAES:y,extraFieldLength:W}})(l=n.assign({},l,{rawFilename:f,rawComment:b,version:v,versionMadeBy:y,lastModDate:_,lastAccessDate:k,creationDate:S,rawExtraField:V,zip64:Z,zip64UncompressedSize:te,zip64CompressedSize:ne,zip64Offset:re,zip64DiskNumberStart:ie,password:E,rawPassword:F,level:H||e.config.CompressionStream!==Ce||e.config.CompressionStreamNative!==Ce?L:0,useWebWorkers:I,encryptionStrength:W,extendedTimestamp:q,zipCrypto:T,bufferedWrite:N,keepOrder:U,useUnicodeFileNames:O,dataDescriptor:B,dataDescriptorSignature:j,signal:P,msDosCompatible:A,internalFileAttribute:D,externalFileAttribute:C,useCompressionStream:H,passThrough:R,encrypted:!!(E&&vi(E)||F&&vi(F))||R&&se,signature:ae,compressionMethod:M})),le=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let i,s=new p,a=0;return n&&(s=new p(t?r?24:20:r?16:12),i=bi(s),r&&(a=4,wi(i,0,ge))),{dataDescriptorArray:s,dataDescriptorView:i,dataDescriptorOffset:a}})(l),ce=vi(oe.localHeaderArray,le.dataDescriptorArray);let de;X=ce+G,e.options.usdz&&(X+=X+64),e.pendingEntriesSize+=X;try{de=await(async(e,r,i,a,o)=>{const{files:l,writer:c}=e,{keepOrder:f,dataDescriptor:m,signal:h}=o,{headerInfo:g}=a,{usdz:b}=e.options,v=t.from(l.values()).pop();let y,_,k,S,A,D,C,R={};l.set(r,R);try{let t;f&&(t=v&&v.lock,R.lock=new x((e=>k=e))),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&f)&&m||b?(D=c,await E()):(D=new z,C=new d(D.readable).blob(),D.writable.size=0,y=!0,e.bufferedWrites++,await Kn(c)),await Kn(D);const{writable:g}=c;let{diskOffset:_}=c;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new p(4);wi(bi(t),0,we),await di(g,t),e.offset+=4}b&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:r,extraFieldLength:i}=n,s=bi(r),a=64-(t+vi(r))%64;4>a&&(a+=64);const o=new p(a),l=bi(o);hi(l,0,6534),hi(l,2,a-2);const c=r;n.localHeaderArray=r=new p(vi(c)+a),xi(r,c),xi(r,o,vi(c)),s=bi(r),hi(s,28,i+a),e.metadataSize+=a})(a,e.offset-_),y||(await t,await F(g));const{diskNumber:W}=c;if(A=!0,R.diskNumberStart=W,R=await(async(e,t,{diskNumberStart:r,lock:i},a,o,l)=>{const{headerInfo:c,dataDescriptorInfo:d,metadataSize:f}=a,{localHeaderArray:u,headerArray:m,lastModDate:h,rawLastModDate:w,encrypted:g,compressed:x,version:b,compressionMethod:v,rawExtraFieldExtendedTimestamp:y,extraFieldExtendedTimestampFlag:_,rawExtraFieldNTFS:k,rawExtraFieldAES:z}=c,{dataDescriptorArray:S}=d,{rawFilename:A,lastAccessDate:D,creationDate:C,password:R,rawPassword:E,level:F,zip64:W,zip64UncompressedSize:T,zip64CompressedSize:q,zip64Offset:U,zip64DiskNumberStart:L,zipCrypto:I,dataDescriptor:N,directory:j,versionMadeBy:P,rawComment:O,rawExtraField:H,useWebWorkers:M,onstart:B,onprogress:Z,onend:V,signal:K,encryptionStrength:G,extendedTimestamp:X,msDosCompatible:Y,internalFileAttribute:J,externalFileAttribute:Q,useCompressionStream:$,passThrough:ee}=l,te={lock:i,versionMadeBy:P,zip64:W,directory:!!j,filenameUTF8:!0,rawFilename:A,commentUTF8:!0,rawComment:O,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:k,rawExtraFieldAES:z,rawExtraField:H,extendedTimestamp:X,msDosCompatible:Y,internalFileAttribute:J,externalFileAttribute:Q,diskNumberStart:r};let{signature:ne,uncompressedSize:re}=l,ie=0;ee||(re=0);const{writable:se}=t;if(e){e.chunkSize=Le(o),await di(se,u);const t=e.readable,n=t.size=e.size,r={options:{codecType:Vt,level:F,rawPassword:E,password:R,encryptionStrength:G,zipCrypto:g&&I,passwordVerification:g&&I&&w>>8&255,signed:!ee,compressed:x&&!ee,encrypted:g&&!ee,useWebWorkers:M,useCompressionStream:$,transferStreams:!1},config:o,streamOptions:{signal:K,size:n,onstart:B,onprogress:Z,onend:V}},i=await cn({readable:t,writable:se},r);ie=i.outputSize,ee||(re=i.inputSize,ne=i.signature),se.size+=re}else await di(se,u);let ae;if(W){let e=4;T&&(e+=8),q&&(e+=8),U&&(e+=8),L&&(e+=4),ae=new p(e)}else ae=new p;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:i,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:d}=o,{dataDescriptorView:f,dataDescriptorOffset:u}=l,{zip64:p,zip64UncompressedSize:m,zip64CompressedSize:h,zipCrypto:w,dataDescriptor:g}=t;if(d&&!w||n===Ce||(wi(c,10,n),g&&wi(f,u,n)),p){const e=bi(r);hi(e,0,1),hi(e,2,vi(r)-4);let t=4;m&&(wi(c,18,pe),gi(e,t,s(a)),t+=8),h&&(wi(c,14,pe),gi(e,t,s(i))),g&&(gi(f,u+4,s(i)),gi(f,u+12,s(a)))}else wi(c,14,i),wi(c,18,a),g&&(wi(f,u+4,i),wi(f,u+8,a))})({signature:ne,rawExtraFieldZip64:ae,compressedSize:ie,uncompressedSize:re,headerInfo:c,dataDescriptorInfo:d},l),N&&await di(se,S),n.assign(te,{uncompressedSize:re,compressedSize:ie,lastModDate:h,rawLastModDate:w,creationDate:C,lastAccessDate:D,encrypted:g,zipCrypto:I,size:f+ie,compressionMethod:v,version:b,headerArray:m,signature:ne,rawExtraFieldZip64:ae,extraFieldExtendedTimestampFlag:_,zip64UncompressedSize:T,zip64CompressedSize:q,zip64Offset:U,zip64DiskNumberStart:L}),te})(i,D,R,a,e.config,o),A=!1,l.set(r,R),R.filename=r,y){await D.writable.getWriter().close();let e=await C;await t,await E(),S=!0,m||(e=await(async(e,t,n,{zipCrypto:r})=>{let i;i=await t.slice(0,26).arrayBuffer(),26!=i.byteLength&&(i=i.slice(0,26));const s=new w(i);return e.encrypted&&!r||wi(s,14,e.signature),e.zip64?(wi(s,18,pe),wi(s,22,pe)):(wi(s,18,e.compressedSize),wi(s,22,e.uncompressedSize)),await di(n,new p(i)),t.slice(i.byteLength)})(R,e,g,o)),await F(g),R.diskNumberStart=c.diskNumber,_=c.diskOffset,await e.stream().pipeTo(g,{preventClose:!0,preventAbort:!0,signal:h}),g.size+=e.size,S=!1}if(R.offset=e.offset-_,R.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:i}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,d=bi(n);let f=4;a&&(f+=8),o&&(f+=8),l&&(gi(d,f,s(r)),f+=8),c&&wi(d,f,i)})(R,o);else if(R.offset>pe)throw new u(ii);return e.offset+=R.size,R}catch(t){if(y&&S||!y&&A){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}y?e.offset+=D.writable.size:e.offset=D.writable.size}throw l.delete(r),t}finally{y&&e.bufferedWrites--,k&&k(),_&&_()}async function E(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new x((t=>_=()=>{e.writerLocked=!1,t()})),await t}async function F(e){vi(g.localHeaderArray)>c.availableSize&&(c.availableSize=0,await di(e,new p))}})(e,r,i,{headerInfo:oe,dataDescriptorInfo:le,metadataSize:ce},l)}finally{e.pendingEntriesSize-=X}return n.assign(de,{name:r,comment:g,extraField:K}),new _r(de)})(l,e,r,i),c.add(g),await g}catch(t){throw l.filenames.delete(e),t}finally{c.delete(g);const e=li.shift();e?e():oi--}}async close(e=new p,n={}){const{pendingAddFileCalls:r,writer:i}=this,{writable:o}=i;for(;r.size;)await x.allSettled(t.from(r));return await(async(e,n,r)=>{const{files:i,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:d}=o,f=0,m=0,h=e.offset-l,w=i.size;for(const[,e]of i){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:r,rawComment:i,rawExtraFieldNTFS:s,rawExtraField:o,extendedTimestamp:l,extraFieldExtendedTimestampFlag:c,lastModDate:d}=e;let f;if(l){f=new p(9);const e=bi(f);hi(e,0,ke),hi(e,2,5),mi(e,4,c),wi(e,5,a.floor(d.getTime()/1e3))}else f=new p;e.rawExtraFieldCDExtendedTimestamp=f,m+=46+vi(t,i,n,r,s,f,o)}const g=new p(m),x=bi(g);await Kn(o);let b=0;for(const[e,n]of t.from(i.values()).entries()){const{offset:t,rawFilename:s,rawExtraFieldZip64:a,rawExtraFieldAES:l,rawExtraFieldCDExtendedTimestamp:d,rawExtraFieldNTFS:u,rawExtraField:p,rawComment:m,versionMadeBy:h,headerArray:w,directory:v,zip64:y,zip64UncompressedSize:_,zip64CompressedSize:k,zip64DiskNumberStart:z,zip64Offset:S,msDosCompatible:A,internalFileAttribute:D,externalFileAttribute:C,diskNumberStart:R,uncompressedSize:E,compressedSize:F}=n,W=vi(a,l,d,u,p);wi(x,f,xe),hi(x,f+4,h);const T=bi(w);_||wi(T,18,E),k||wi(T,14,F),xi(g,w,f+6),hi(x,f+30,W),hi(x,f+32,vi(m)),hi(x,f+34,y&&z?me:R),hi(x,f+36,D),C?wi(x,f+38,C):v&&A&&mi(x,f+38,16),wi(x,f+42,y&&S?pe:t),xi(g,s,f+46),xi(g,a,f+46+vi(s)),xi(g,l,f+46+vi(s,a)),xi(g,d,f+46+vi(s,a,l)),xi(g,u,f+46+vi(s,a,l,d)),xi(g,p,f+46+vi(s,a,l,d,u)),xi(g,m,f+46+vi(s)+W);const q=46+vi(s,m)+W;if(f-b>o.availableSize&&(o.availableSize=0,await di(c,g.slice(b,f)),b=f),f+=q,r.onprogress)try{await r.onprogress(e+1,i.size,new _r(n))}catch(e){}}await di(c,b?g.slice(b):g);let v=o.diskNumber;const{availableSize:y}=o;_e>y&&v++;let _=ui(e,r,wr);if(h>pe||m>pe||w>me||v>me){if(!1===_)throw new u(ii);_=!0}const k=new p(_?98:_e),z=bi(k);f=0,_&&(wi(z,0,ve),gi(z,4,s(44)),hi(z,12,45),hi(z,14,45),wi(z,16,v),wi(z,20,d),gi(z,24,s(w)),gi(z,32,s(w)),gi(z,40,s(m)),gi(z,48,s(h)),wi(z,56,ye),gi(z,64,s(h)+s(m)),wi(z,72,v+1),ui(e,r,"supportZip64SplitFile",!0)&&(v=me,d=me),w=me,h=pe,m=pe,f+=76),wi(z,f,be),hi(z,f+4,v),hi(z,f+6,d),hi(z,f+8,w),hi(z,f+10,w),wi(z,f+12,m),wi(z,f+16,h);const S=vi(n);if(S){if(S>me)throw new u(Jr);hi(z,f+20,S)}await di(c,k),S&&await di(c,n)})(this,e,n),ui(this,n,"preventClose")||await o.getWriter().close(),i.getData?i.getData():o}}async function di(e,t){const n=e.getWriter();try{await n.ready,e.size+=vi(t),await n.write(t)}finally{n.releaseLock()}}function fi(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function ui(e,t,n,r){const i=t[n]===Ce?e.options[n]:t[n];return i===Ce?r:i}function pi(e){return e+5*(a.floor(e/16383)+1)}function mi(e,t,n){e.setUint8(t,n)}function hi(e,t,n){e.setUint16(t,n,!0)}function wi(e,t,n){e.setUint32(t,n,!0)}function gi(e,t,n){e.setBigUint64(t,n,!0)}function xi(e,t,n){e.set(t,n)}function bi(e){return new w(e.buffer)}function vi(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}class yi{constructor(e,t,r,i){const s=this;if(e.root&&i&&i.getChildByName(t))throw new u("Entry filename already exists");r||(r={}),n.assign(s,{fs:e,name:t,data:r.data,options:r.options,id:e.entries.length,parent:i,children:[],uncompressedSize:r.uncompressedSize||0,passThrough:r.passThrough}),e.entries.push(s),i&&s.parent.children.push(s)}moveTo(e){this.fs.move(this,e)}getFullname(){return this.getRelativeName()}getRelativeName(e=this.fs.root){let t=this.name,n=this.parent;for(;n&&n!=e;)t=(n.name?n.name+"/":"")+t,n=n.parent;return t}isDescendantOf(e){let t=this.parent;for(;t&&t.id!=e.id;)t=t.parent;return!!t}rename(e){const t=this.parent;if(t&&t.getChildByName(e))throw new u("Entry filename already exists");this.name=e}}class _i extends yi{constructor(e,t,n,r){super(e,t,n,r);const i=this;i.Reader=n.Reader,i.Writer=n.Writer,n.getData&&(i.getData=n.getData)}clone(){return new _i(this.fs,this.name,this)}async getData(e,t={}){const n=this;if(!e||e.constructor==n.Writer&&n.data)return n.data;{const r=n.reader=new n.Reader(n.data,t),i=n.data?n.data.uncompressedSize:r.size;await x.all([Kn(r),Kn(e,i)]);const s=r.readable;return s.size=n.uncompressedSize=r.size,await s.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return this.data.encrypted}async checkPassword(e,t={}){const n=this;if(!n.isPasswordProtected())return!0;t.password=e,t.checkPasswordOnly=!0;try{return await n.data.getData(null,t),!0}catch(e){if(e.message==Je)return!1;throw e}}getText(e,t){return this.getData(new Cn(e),t)}getBlob(e,t){return this.getData(new An(e),t)}getData64URI(e,t){return this.getData(new zn(e),t)}getUint8Array(e){return this.getData(new Bn,e)}getWritable(e=new A,t){return this.getData({writable:e},t)}replaceBlob(e){n.assign(this,{data:e,Reader:Sn,Writer:An,reader:null})}replaceText(e){n.assign(this,{data:e,Reader:Dn,Writer:Cn,reader:null})}replaceData64URI(e){n.assign(this,{data:e,Reader:kn,Writer:zn,reader:null})}replaceUint8Array(e){n.assign(this,{data:e,Reader:Mn,Writer:Bn,reader:null})}replaceReadable(e){n.assign(this,{data:null,Reader:()=>({readable:e}),Writer:null,reader:null})}}class ki extends yi{constructor(e,t,n,r){super(e,t,n,r),this.directory=!0}clone(e){const t=this,n=new ki(t.fs,t.name);return e&&(n.children=t.children.map((t=>{const r=t.clone(e);return r.parent=n,r}))),n}addDirectory(e,t){return Fi(this,e,{options:t},!0)}addText(e,t,n={}){return Fi(this,e,{data:t,Reader:Dn,Writer:Cn,options:n,uncompressedSize:t.length})}addBlob(e,t,n={}){return Fi(this,e,{data:t,Reader:Sn,Writer:An,options:n,uncompressedSize:t.size})}addData64URI(e,t,n={}){let r=t.length;for(;"="==t.charAt(r-1);)r--;const i=t.indexOf(",")+1;return Fi(this,e,{data:t,Reader:kn,Writer:zn,options:n,uncompressedSize:a.floor(.75*(r-i))})}addUint8Array(e,t,n={}){return Fi(this,e,{data:t,Reader:Mn,Writer:Bn,options:n,uncompressedSize:t.length})}addHttpContent(e,t,n={}){return Fi(this,e,{data:t,Reader:class extends Hn{constructor(e){super(e,n)}},options:n})}addReadable(e,t,n={}){return Fi(this,e,{Reader:()=>({readable:t}),options:n})}addFileSystemEntry(e,t={}){return Ci(this,e,t)}addFileSystemHandle(e,t={}){return Ci(this,e,t)}addFile(e,t={}){return t.lastModDate||(t.lastModDate=new o(e.lastModified)),Fi(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}addData(e,t){return Fi(this,e,t)}importBlob(e,t){return this.importZip(new Sn(e),t)}importData64URI(e,t){return this.importZip(new kn(e),t)}importUint8Array(e,t){return this.importZip(new Mn(e),t)}importHttpContent(e,t){return this.importZip(new Hn(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new An(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new zn(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new Bn,e)}async exportWritable(e=new A,t={}){return await this.exportZip({writable:e},t),e}async importZip(e,t={}){await Kn(e);const r=new Ir(e,t),i=[],s=await r.getEntries();for(const e of s){let r=this;try{const s=e.filename.split("/"),a=s.pop();s.forEach(((t,n)=>{const a=r;r=r.getChildByName(t),r||(r=new ki(this.fs,t,{data:n==s.length-1?e:null},a),i.push(r))})),e.directory||i.push(Fi(r,a,{data:e,Reader:Si(n.assign({},t)),uncompressedSize:e.uncompressedSize,passThrough:t.passThrough}))}catch(t){try{t.cause={entry:e}}catch(e){}throw t}}return i}async exportZip(e,r){const i=this;r.bufferedWrite===Ce&&(r.bufferedWrite=!0),await x.all([Ai(i,r.readerOptions),Kn(e)]);const s=new ci(e,r);return await(async(e,r,i,s)=>{const a=r,o=new l;await async function e(r,l){async function c(l){const c=s.relativePath?l.getRelativeName(a):l.getFullname(),d=l.options||{};let f={};if(l.data instanceof _r){const{externalFileAttribute:e,versionMadeBy:t,comment:r,lastModDate:i,creationDate:s,lastAccessDate:a,uncompressedSize:o,encrypted:c,zipCrypto:d,signature:u,compressionMethod:p,extraFieldAES:m}=l.data;if(f={externalFileAttribute:e,versionMadeBy:t,comment:r,lastModDate:i,creationDate:s,lastAccessDate:a},l.passThrough){let e,t;0===p&&(e=0),m&&(t=m.strength),f=n.assign(f,{passThrough:!0,encrypted:c,zipCrypto:d,signature:u,uncompressedSize:o,level:e,encryptionStrength:t,compressionMethod:p})}}await r.add(c,l.reader,n.assign({directory:l.directory},n.assign({},s,f,d,{onprogress:async e=>{if(s.onprogress){o.set(c,e);try{await s.onprogress(t.from(o.values()).reduce(((e,t)=>e+t)),i)}catch(e){}}}}))),await e(r,l)}await(async()=>{if(s.bufferedWrite)await x.allSettled(l.children.map(c));else for(const e of l.children)await c(e)})()}(e,r)})(s,i,(e=>{let t=0;return e.forEach((function e(n){t+=n.uncompressedSize,n.children&&n.children.forEach(e)})),t})([i]),r),await s.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let n=0;nn.checkPassword(e,t))))).includes(!1)}}const zi={FS:class{constructor(){Ei(this)}get children(){return this.root.children}remove(e){Di(e),this.entries[e.id]=null}move(e,t){if(e==this.root)throw new u("Root directory cannot be moved");if(!t.directory)throw new u("Target entry is not a directory");if(t.isDescendantOf(e))throw new u("Entry is a ancestor of target entry");if(e!=t){if(t.getChildByName(e.name))throw new u("Entry filename already exists");Di(e),e.parent=t,t.children.push(e)}}find(e){const t=e.split("/");let n=this.root;for(let e=0;n&&e{if(e.directory)await Ai(e,t);else{const n=e.reader=new e.Reader(e.data,t);try{await Kn(n)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch(e){}throw t}e.uncompressedSize=n.size}})))}function Di(e){if(e.parent){const t=e.parent.children;t.forEach(((n,r)=>{n.id==e.id&&t.splice(r,1)}))}}function Ci(e,t,r){return async function e(t,i,s){if(i)try{if((i.isFile||i.isDirectory)&&(i=await Ri(i)),"file"==i.kind){const e=await i.getFile();s.push(t.addData(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:n.assign({},{lastModDate:new o(e.lastModified)},r),uncompressedSize:e.size}))}else if("directory"==i.kind){const n=t.addDirectory(i.name);s.push(n);for await(const t of i.values())await e(n,t,s)}}catch(e){const t=e.message+(i?" ("+i.name+")":"");throw new u(t)}return s}(e,t,[])}async function Ri(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new x(((t,n)=>e.file(t,n)))),e.isDirectory){t.kind="directory";const n=await(async e=>{const t=[];function n(e,r,i){e.readEntries((async s=>{if(s.length){for(const e of s)t.push(await Ri(e));n(e,r,i)}else r(t)}),i)}return await new x(((t,r)=>n(e.createReader(),t,r))),{[Symbol.iterator](){let e=0;return{next(){const n={value:t[e],done:e===t.length};return e++,n}}}}})(e);t.values=()=>n}return t}function Ei(e){e.entries=[],e.root=new ki(e)}function Fi(e,t,n,r){if(e.directory)return r?new ki(e.fs,t,n,e):new _i(e.fs,t,n,e);throw new u("Parent entry is not a directory")}let Wi;try{Wi=void 0===y&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===y?location.href:F&&"SCRIPT"===F.tagName.toUpperCase()&&F.src||new f("zip-fs-full.min.js",y.baseURI).href}catch(e){}Ie({baseURL:Wi}),((e,t={})=>{const n='const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self,k=void 0,v="undefined",S="function";class z{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const C=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;C[e]=t}class x{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^C[255&(t^e[n])];this.t=t}get(){return~this.t}}class A extends p{constructor(){let e;const t=new x;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const _={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=_.i(n);return 32===r?e.concat(t):_.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+_.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=_.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=_.i(s);return r.push(_.h(t+i&31,t+i>32?n:r.pop(),1)),r}},I={bytes:{p(e){const t=_.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},m(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}P(){const e=this;let t=e.C;const n=e.S;t=_.concat(t,[_.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.I(t.splice(0,16));return e.reset(),n}D(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}V(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.V(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.V(5,o)+n.D(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.V(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},D={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew V.R(I.bytes.m(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=_;for(t=I.bytes.m(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).P());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.U[0].update(r[0]),t.U[1].update(r[1]),t.K=new n(t.U[0])}reset(){const e=this;e.K=new e.M(e.U[0]),e.N=!1}update(e){this.N=!0,this.K.update(e)}digest(){const e=this,t=e.K.P(),n=new e.M(e.U[1]).update(t).P();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},R=typeof h!=v&&typeof h.getRandomValues==S,B="Invalid password",E="Invalid signature",M="zipjs-abort-check-password";function U(e){return R?h.getRandomValues(e):D.getRandomValues(e)}const K=16,N={name:"PBKDF2"},O=t.assign({hash:{name:"HMAC"}},N),T=t.assign({iterations:1e3,hash:{name:"SHA-1"}},N),W=["deriveBits"],j=[8,12,16],H=[16,24,32],L=10,F=[0,0,0,0],q=typeof h!=v,G=q&&h.subtle,J=q&&typeof G!=v,Q=I.bytes,X=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},Y=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=_.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return _.u(t,s)}},Z=V.R;let $=q&&J&&typeof G.importKey==S,ee=q&&J&&typeof G.deriveBits==S;class te extends p{constructor({password:e,rawPassword:n,signed:r,encryptionStrength:o,checkPasswordOnly:c}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),signed:r,X:o-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:o,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await se(e,t,n,ce(r,0,j[t])),o=ce(r,j[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(B)})(n,o,r,ce(e,0,j[o]+2)),e=ce(e,j[o]+2),c?t.error(new s(M)):f()):await a;const l=new i(e.length-L-(e.length-L)%K);t.enqueue(re(n,e,l,0,L,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;if(r&&n){await c;const f=ce(o,0,o.length-L),a=ce(o,o.length-L);let l=new i;if(f.length){const e=ae(Q,f);r.update(e);const t=n.update(e);l=fe(Q,t)}if(t){const e=ce(fe(Q,r.digest()),0,L);for(let t=0;L>t;t++)if(e[t]!=a[t])throw new s(E)}e.enqueue(l)}}})}}class ne extends p{constructor({password:e,rawPassword:n,encryptionStrength:r}){let s;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=U(new i(j[t]));return oe(r,await se(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%K);a.set(f,0),t.enqueue(re(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:r,ready:o}=this;if(n&&t){await o;let c=new i;if(r.length){const e=t.update(ae(Q,r));n.update(e),c=fe(Q,e)}s.signature=fe(Q,n.digest()).slice(0,L),e.enqueue(oe(c,s.signature))}}}),s=this}}function re(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=oe(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%K)),u=0;l-K>=u;u+=K){const e=ae(Q,ce(t,u,u+K));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(fe(Q,s),u+r)}return e.pending=ce(t,u),n}async function se(n,r,s,o){n.password=null;const c=await(async(e,t,n,r,s)=>{if(!$)return V.importKey(t);try{return await G.importKey("raw",t,n,!1,s)}catch(e){return $=!1,V.importKey(t)}})(0,s,O,0,W),f=await(async(e,t,n)=>{if(!ee)return V.B(t,e.salt,T.iterations,n);try{return await G.deriveBits(e,t,n)}catch(r){return ee=!1,V.B(t,e.salt,T.iterations,n)}})(t.assign({salt:o},T),c,8*(2*H[r]+2)),a=new i(f),l=ae(Q,ce(a,0,H[r])),u=ae(Q,ce(a,H[r],2*H[r])),w=ce(a,2*H[r]);return t.assign(n,{keys:{key:l,$:u,passwordVerification:w},Y:new Y(new X(l),e.from(F)),Z:new Z(u)}),w}function ie(e,t){return t===k?(e=>{if(typeof w==v){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),i=~e.te.get(),e.keys=[n,s,i]}function ye(e){const t=2|e.keys[2];return me(r.imul(t,1^t)>>>8)}function me(e){return 255&e}function be(e){return 4294967295&e}const ge="deflate-raw";class ke extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=Se(super.readable);i&&!c||!f||(w=new A,d=xe(d,w)),s&&(d=Ce(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=xe(d,new ue(e)):(h=new ne(e),d=xe(d,h))),ze(u,d,(()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ve extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=Se(super.readable);o&&(i?d=xe(d,new le(e)):(h=new te(e),d=xe(d,h))),a&&(d=Ce(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new A,d=xe(d,w)),ze(this,d,(()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(E)}}))}}function Se(e){return xe(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ze(e,n,r){n=xe(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Ce(e,t,n,r,s){try{e=xe(e,new(t&&r?r:s)(ge,n))}catch(r){if(!t)return e;try{e=xe(e,new s(ge,n))}catch(t){return e}}return e}function xe(e,t){return e.pipeThrough(t)}const Ae="data",_e="close";class Ie extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=ke:s.startsWith("inflate")&&(i=ve);let o=0,c=0;const f=new i(e,n),a=super.readable,l=new p({transform(e,t){e&&e.length&&(c+=e.length,t.enqueue(e))},flush(){t.assign(r,{inputSize:c})}}),u=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=f;t.assign(r,{signature:e,outputSize:o,inputSize:c})}});t.defineProperty(r,"readable",{get:()=>a.pipeThrough(l).pipeThrough(f).pipeThrough(u)})}}class Pe extends p{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new i(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}const De=new a,Ve=new a;let Re,Be=0,Ee=!0;async function Me(e){try{const{options:t,scripts:r,config:s}=e;if(r&&r.length)try{Ee?importScripts.apply(k,r):await Ue(r)}catch(e){Ee=!1,await Ue(r)}self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new z(self.Deflate)),self.Inflate&&(s.DecompressionStream=new z(self.Inflate));const i={highWaterMark:1},o=e.readable||new y({async pull(e){const t=new u((e=>De.set(Be,e)));Ke({type:"pull",messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ve.set(Be,t),Ke({type:Ae,value:e,messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new Ie(t,s);Re=new AbortController;const{signal:a}=Re;await o.pipeThrough(f).pipeThrough(new Pe(s.chunkSize)).pipeTo(c,{signal:a,preventClose:!0,preventAbort:!0}),await c.getWriter().close();const{signature:l,inputSize:w,outputSize:h}=f;Ke({type:_e,result:{signature:l,inputSize:w,outputSize:h}})}catch(e){Ne(e)}}async function Ue(e){for(const t of e)await import(t)}function Ke(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Ne(e=new s("Unknown error")){const{message:t,stack:n,code:r,name:i}=e;d({error:{message:t,stack:n,code:r,name:i}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&Me(e),t==Ae){const e=De.get(n);De.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ve.get(n);Ve.delete(n),e()}t==_e&&Re.abort()}catch(e){Ne(e)}}));const Oe=-2;function Te(t){return We(t.map((([t,n])=>new e(t).fill(n,0,t))))}function We(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?We(n):n)),[])}const je=[0,1,2,3].concat(...Te([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function He(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Le(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}He.ge=[0,1,2,3,4,5,6,7].concat(...Te([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),He.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],He.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],He.Se=e=>256>e?je[e]:je[256+(e>>>7)],He.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],He.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],He.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],He.Ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Fe=Te([[144,8],[112,9],[24,7],[8,8]]);Le._e=We([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Fe[t]])));const qe=Te([[30,5]]);function Ge(e,t,n,r,s){const i=this;i.Ie=e,i.Pe=t,i.De=n,i.Ve=r,i.Re=s}Le.Be=We([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,qe[t]]))),Le.Ee=new Le(Le._e,He.ze,257,286,15),Le.Me=new Le(Le.Be,He.Ce,0,30,15),Le.Ue=new Le(null,He.xe,0,19,7);const Je=[new Ge(0,0,0,0,0),new Ge(4,4,8,4,1),new Ge(4,5,16,8,1),new Ge(4,6,32,32,1),new Ge(4,4,16,16,2),new Ge(8,16,32,32,2),new Ge(8,16,128,128,2),new Ge(8,32,128,256,2),new Ge(32,128,258,1024,2),new Ge(32,258,258,4096,2)],Qe=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Xe=113,Ye=666,Ze=262;function $e(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function et(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,A,_,I,P,D,V,R,B,E,M,U;const K=new He,N=new He,O=new He;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)U[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?U[2*n]+=i:0!==n?(n!=r&&U[2*n]++,U[32]++):i>10?U[36]++:U[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ke[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,U)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,U),o--),Y(16,U),X(o-3,2)):o>10?(Y(18,U),X(o-11,7)):(Y(17,U),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(He.ge[n]+256+1)]++,M[2*He.Se(t)]++),!(8191&W)&&D>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+He.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ke.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;D>0?(K.ne(e),N.ne(e),o=(()=>{let t;for(G(E,K.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===U[2*He.Ae[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Le._e,Le.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(U[2*He.Ae[r]+1],3);Z(E,e-1),Z(M,t-1)})(K.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-A-C,0===s&&0===C&&0===A)s=f;else if(-1==s)s--;else if(C>=f+f-Ze){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+A,s),A+=e,3>A||(p=255&u[C],p=(p<A&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=_;const o=C>f-Ze?C-(f-Ze):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>_||(r>>=2),c>A&&(c=A);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>A?A:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],U=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Oe:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=Xe,c=0,K.re=E,K.ie=Le.Ee,N.re=M,N.ie=Le.Me,O.re=U,O.ie=Le.Ue,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve,C=0,k=0,A=0,v=_=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=Xe&&n!=Ye?Oe:(e.Oe=null,e.Ne=null,e.Ke=null,d=null,h=null,u=null,e.Fe=null,n==Xe?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Oe:(Je[D].Re!=Je[t].Re&&0!==e.qe&&(r=e.Ye(1)),D!=t&&(D=t,P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve),V=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Oe;if(3>i)return 0;for(i>f-Ze&&(i=f-Ze,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Oe;if(!r.$e||!r.et&&0!==r.We||n==Ye&&4!=i)return r.Le=Qe[4],Oe;if(0===r.tt)return r.Le=Qe[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(D-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=Xe,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=Qe[7],-5;if(n==Ye&&0!==t.We)return r.Le=Qe[7],-5;if(0!==t.We||0!==A||0!=i&&n!=Ye){switch(R=-1,Je[D].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=A){if(ie(),0===A&&0==e)return 0;if(0===A)break}if(C+=A,A=0,n=k+r,(0===C||C>=n)&&(A=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Ze&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<f-Ze||2!=V&&(v=oe(r)),3>v)n=ee(0,255&u[C]),A--,C++;else if(n=ee(C-x,v-3),A-=v,v>P||3>A)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<_&&f-Ze>=(C-s&65535)&&(2!=V&&(v=oe(s)),5>=v&&(1==V||3==v&&C-x>4096)&&(v=2)),3>_||v>_)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,A--,0===t.tt)return 0}else z=1,C++,A--;else{r=C+A-3,n=ee(C-1-S,_-3),A-=_-1,_-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Le._e),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function tt(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function nt(e){const t=new tt,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}tt.prototype={He(e,t){const n=this;return n.Fe=new et,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Oe},Qe(){const e=this;if(!e.Fe)return Oe;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Oe},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Oe},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ke.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const rt=-2,st=-3,it=-5,ot=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],ct=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ft=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],at=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],lt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ut=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],wt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ht(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,A,_,I,P;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return st;if(0>(I-=n[g]))return st;for(n[g]+=I,i[1]=k=0,C=1,_=2;0!=--g;)i[_]=k+=n[C],_++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>A+S;){if(b++,A+=S,P=m-A,P=P>S?S:P,(y=1<<(k=v-A))>p+1&&(y-=p+1,_=v,P>k))for(;++kn[++_];)y-=n[_];if(P=1<1440)return st;s[b]=x=h[0],h[0]+=P,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>A-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-A,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>A;P>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<c;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==st?f.Le="oversubscribed dynamic bit lengths tree":a!=it&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=st),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,at,lt,a,i,u,e,t),0!=h||0===i[0]?(h==st?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=st),h):(c(288),h=o(s,n,r,0,ut,wt,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==st?w.Le="oversubscribed distance tree":h==it?(w.Le="incomplete distance tree",h=st):-4!=h&&(w.Le="empty distance tree with lengths",h=st),h):0)}}function dt(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15,k=a[z+2]+(w&ot[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(64&u)return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st;f+=a[z+2],f+=w&ot[u],z=3*(l+f),u=a[z]}break}if(64&u)return 32&u?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st);if(f+=a[z+2],f+=w&ot[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,A=0,_=0;for(_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,m=p(u,w,r,h,s,d,e,y),_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=SA;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>>=n[g+1],A-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(16&k){a=15&k,i=n[g+2],t=2;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}if(32&k){t=7;break}return t=9,y.Le="invalid literal/length code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 2:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=n[g+1],A-=n[g+1],k=n[g],16&k){a=15&k,l=n[g+2],t=4;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 4:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(A-=8,v++,_--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ht.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=ct,r[0]=ft,0);const pt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function yt(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new dt;let h=0,d=new f(4320);const p=new ht;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ht.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[pt[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==st&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&ot[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,A=[],_=[],I=[],P=[],A[0]=9,_[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,A,_,I,P,d,e),0!=i)return i==st&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(A[0],_[0],d,I[0],d,P[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const mt=13,bt=[0,0,255,255];function gt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):rt}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),rt):(e.zt=r,n.gt.kt=new yt(n,1<{let n,r;if(!e||!e.gt||!e.et)return rt;const s=e.gt;for(t=4==t?it:0,n=it;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=mt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=mt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=mt,e.Le="incorrect header check",s.marker=5;break}if(!(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=mt,e.Le="need dictionary",s.marker=0,rt;case 7:if(n=s.kt.ut(e,n),n==st){s.mode=mt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case mt:return st;default:return rt}},e._t=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return rt;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return rt;const c=e.gt;if(c.mode!=mt&&(c.mode=mt,c.marker=0),0===(n=e.We))return it;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==bt[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?st:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Pt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():rt}function kt(){}function vt(e){const t=new kt,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t.At(0),c&&a===it){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}kt.prototype={xt(e){const t=this;return t.gt=new gt,e||(e=15),t.gt.xt(t,e)},At(e){const t=this;return t.gt?t.gt.At(t,e):rt},Ct(){const e=this;if(!e.gt)return rt;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):rt},_t(e,t){const n=this;return n.gt?n.gt._t(n,e,t):rt},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=nt,self.Inflate=vt};\n',r=()=>t.useDataURI?"data:text/javascript,"+encodeURIComponent(n):f.createObjectURL(new g([n],{type:"text/javascript"}));e({workerScripts:{inflate:[r],deflate:[r]}})})(Ie),Ie({Deflate:function(e){const t=new G,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(a.floor(r/16383)+1);var r;const i=new p(n);let s=e?e.level:-1;void 0===s&&(s=-1),t.deflateInit(s),t.next_out=i,this.append=(e,r)=>{let s,a,o=0,l=0,c=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,s=t.deflate(0),0!=s)throw new u("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?d.push(new p(i)):d.push(i.subarray(0,t.next_out_index))),c+=t.next_out_index,r&&t.next_in_index>0&&t.next_in_index!=o&&(r(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(a=new p(c),d.forEach((e=>{a.set(e,l),l+=e.length}))):a=d[0]?new p(d[0]):new p,a}},this.flush=()=>{let e,r,s=0,a=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw new u("deflating: "+t.msg);n-t.avail_out>0&&o.push(i.slice(0,t.next_out_index)),a+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new p(a),o.forEach((e=>{r.set(e,s),s+=e.length})),r}},Inflate:function(e){const t=new ue,n=e&&e.chunkSize?a.floor(2*e.chunkSize):131072,r=new p(n);let i=!1;t.inflateInit(),t.next_out=r,this.append=(e,s)=>{const a=[];let o,l,c=0,d=0,f=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||i||(t.next_in_index=0,i=!0),o=t.inflate(0),i&&o===J){if(0!==t.avail_in)throw new u("inflating: bad input")}else if(0!==o&&1!==o)throw new u("inflating: "+t.msg);if((i||1===o)&&t.avail_in===e.length)throw new u("inflating: bad input");t.next_out_index&&(t.next_out_index===n?a.push(new p(r)):a.push(r.subarray(0,t.next_out_index))),f+=t.next_out_index,s&&t.next_in_index>0&&t.next_in_index!=c&&(s(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return a.length>1?(l=new p(f),a.forEach((e=>{l.set(e,d),d+=e.length}))):l=a[0]?new p(a[0]):new p,l}},this.flush=()=>{t.inflateEnd()}}}),e.BlobReader=Sn,e.BlobWriter=An,e.Data64URIReader=kn,e.Data64URIWriter=zn,e.ERR_BAD_FORMAT=kr,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Ar,e.ERR_DUPLICATED_NAME=Yr,e.ERR_ENCRYPTED=Rr,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Sr,e.ERR_EOCDR_NOT_FOUND=zr,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Cr,e.ERR_HTTP_RANGE=pn,e.ERR_INVALID_COMMENT=Jr,e.ERR_INVALID_ENCRYPTION_STRENGTH=ti,e.ERR_INVALID_ENTRY_COMMENT=Qr,e.ERR_INVALID_ENTRY_NAME=$r,e.ERR_INVALID_EXTRAFIELD_DATA=ri,e.ERR_INVALID_EXTRAFIELD_TYPE=ni,e.ERR_INVALID_PASSWORD=Je,e.ERR_INVALID_SIGNATURE=Qe,e.ERR_INVALID_VERSION=ei,e.ERR_ITERATOR_COMPLETED_TOO_SOON=mn,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Dr,e.ERR_SPLIT_ZIP_FILE=Wr,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=si,e.ERR_UNSUPPORTED_COMPRESSION=Fr,e.ERR_UNSUPPORTED_ENCRYPTION=Er,e.ERR_UNSUPPORTED_FORMAT=ii,e.HttpRangeReader=class extends Hn{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Hn,e.Reader=yn,e.SplitDataReader=Zn,e.SplitDataWriter=Vn,e.SplitZipReader=Jn,e.SplitZipWriter=Qn,e.TextReader=Dn,e.TextWriter=Cn,e.Uint8ArrayReader=Mn,e.Uint8ArrayWriter=Bn,e.Writer=_n,e.ZipReader=Ir,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:n}=new z,r=new Ir(t,e).getEntriesGenerator();this.readable=new S({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const i={...n,readable:(()=>{const{readable:e,writable:t}=new z;if(n.getData)return n.getData(t),e})()};delete i.getData,e.enqueue(i)}}),this.writable=n}},e.ZipWriter=ci,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new z;this.readable=t,this.zipWriter=new ci(n,e)}transform(e){const{readable:t,writable:n}=new z({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new z;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=Ie,e.fs=zi,e.getMimeType=e=>e&&Pe[e.split(".").pop().toLowerCase()]||"application/octet-stream",e.initShimAsyncCodec=(e,t={},n)=>({Deflate:fn(e.Deflate,t.deflate,n),Inflate:fn(e.Inflate,t.inflate,n)}),e.terminateWorkers=async()=>{await x.allSettled(an.map((e=>(dn(e),e.terminate()))))}})); +((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:r,Number:i,BigInt:s,Math:a,Date:o,Map:l,Set:c,Response:d,URL:f,Error:u,Uint8Array:p,Uint16Array:m,Uint32Array:h,DataView:w,Blob:g,Promise:x,TextEncoder:b,TextDecoder:v,document:y,crypto:_,btoa:k,TransformStream:z,ReadableStream:S,WritableStream:A,CompressionStream:D,DecompressionStream:C,navigator:R,Worker:F}="undefined"!=typeof globalThis?globalThis:this||self;var E=void 0!==y?y.currentScript:null;const W=-2;function T(e){return q(e.map((([e,n])=>new t(e).fill(n,0,e))))}function q(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?q(n):n)),[])}const U=[0,1,2,3].concat(...T([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function L(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,i=e.stat_desc.static_tree,s=e.stat_desc.elems;let o,l,c,d=-1;for(n.heap_len=0,n.heap_max=573,o=0;s>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=d=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>d?++d:0,r[2*c]=1,n.depth[c]=0,n.opt_len--,i&&(n.static_len-=i[2*c+1]);for(e.max_code=d,o=a.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);c=s;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),l=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=l,r[2*c]=r[2*o]+r[2*l],n.depth[c]=a.max(n.depth[o],n.depth[l])+1,r[2*o+1]=r[2*l+1]=c,n.heap[1]=c++,n.pqdownheap(r,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,r=e.stat_desc.static_tree,i=e.stat_desc.extra_bits,s=e.stat_desc.extra_base,a=e.stat_desc.max_length;let o,l,c,d,f,u,p=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)l=t.heap[o],d=n[2*n[2*l+1]+1]+1,d>a&&(d=a,p++),n[2*l+1]=d,l>e.max_code||(t.bl_count[d]++,f=0,s>l||(f=i[l-s]),u=n[2*l],t.opt_len+=u*(d+f),r&&(t.static_len+=u*(r[2*l+1]+f)));if(0!==p){do{for(d=a-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[a]--,p-=2}while(p>0);for(d=a;0!==d;d--)for(l=t.bl_count[d];0!==l;)c=t.heap[--o],c>e.max_code||(n[2*c+1]!=d&&(t.opt_len+=(d-n[2*c+1])*n[2*c],n[2*c+1]=d),l--)}})(n),((e,n,r)=>{const i=[];let s,a,o,l=0;for(s=1;15>=s;s++)i[s]=l=l+r[s-1]<<1;for(a=0;n>=a;a++)o=e[2*a+1],0!==o&&(e[2*a]=t(i[o]++,o))})(r,e.max_code,n.bl_count)}}function I(e,t,n,r,i){const s=this;s.static_tree=e,s.extra_bits=t,s.extra_base=n,s.elems=r,s.max_length=i}L._length_code=[0,1,2,3,4,5,6,7].concat(...T([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),L.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],L.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],L.d_code=e=>256>e?U[e]:U[256+(e>>>7)],L.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],L.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],L.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],L.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const N=T([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=q([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,N[t]])));const j=T([[30,5]]);function P(e,t,n,r,i){const s=this;s.good_length=e,s.max_lazy=t,s.nice_length=n,s.max_chain=r,s.func=i}I.static_dtree=q([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,j[t]]))),I.static_l_desc=new I(I.static_ltree,L.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,L.extra_dbits,0,30,15),I.static_bl_desc=new I(null,L.extra_blbits,0,19,7);const O=[new P(0,0,0,0,0),new P(4,4,8,4,1),new P(4,5,16,8,1),new P(4,6,32,32,1),new P(4,4,16,16,2),new P(8,16,32,32,2),new P(8,16,128,128,2),new P(8,32,128,256,2),new P(32,128,258,1024,2),new P(32,258,258,4096,2)],H=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],M=113,B=666,Z=262;function V(e,t,n,r){const i=e[2*t],s=e[2*n];return s>i||i==s&&r[t]<=r[n]}function K(){const e=this;let t,n,r,i,s,o,l,c,d,f,u,h,w,g,x,b,v,y,_,k,z,S,A,D,C,R,F,E,T,q,U,N,j;const P=new L,K=new L,G=new L;let X,Y,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)U[2*t]=0;for(t=0;30>t;t++)N[2*t]=0;for(t=0;19>t;t++)j[2*t]=0;U[512]=1,e.opt_len=e.static_len=0,Y=J=0}function ne(e,t){let n,r=-1,i=e[1],s=0,a=7,o=4;0===i&&(a=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)n=i,i=e[2*(l+1)+1],++ss?j[2*n]+=s:0!==n?(n!=r&&j[2*n]++,j[32]++):s>10?j[36]++:j[34]++,s=0,r=n,0===i?(a=138,o=3):n==i?(a=6,o=3):(a=7,o=4))}function re(t){e.pending_buf[e.pending++]=t}function ie(e){re(255&e),re(e>>>8&255)}function se(e,t){let n;const r=t;ee>16-r?(n=e,$|=n<>>16-ee,ee+=r-16):($|=e<=n;n++)if(r=s,s=e[2*(n+1)+1],++a>=o||r!=s){if(l>a)do{ae(r,j)}while(0!=--a);else 0!==r?(r!=i&&(ae(r,j),a--),ae(16,j),se(a-3,2)):a>10?(ae(18,j),se(a-11,7)):(ae(17,j),se(a-3,3));a=0,i=r,0===s?(o=138,l=3):r==s?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(ie($),$=0,ee=0):8>ee||(re(255&$),$>>>=8,ee-=8)}function ce(t,n){let r,i,s;if(e.dist_buf[Y]=t,e.lc_buf[Y]=255&n,Y++,0===t?U[2*n]++:(J++,t--,U[2*(L._length_code[n]+256+1)]++,N[2*L.d_code(t)]++),!(8191&Y)&&F>2){for(r=8*Y,i=z-v,s=0;30>s;s++)r+=N[2*s]*(5+L.extra_dbits[s]);if(r>>>=3,Jo);ae(256,t),Q=t[513]}function fe(){ee>8?ie($):ee>0&&re(255&$),$=0,ee=0}function ue(t,n,r){se(0+(r?1:0),3),((t,n)=>{fe(),Q=8,ie(n),ie(~n),e.pending_buf.set(c.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function pe(n){((t,n,r)=>{let i,s,a=0;F>0?(P.build_tree(e),K.build_tree(e),a=(()=>{let t;for(ne(U,P.max_code),ne(N,K.max_code),G.build_tree(e),t=18;t>=3&&0===j[2*L.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),i=e.opt_len+3+7>>>3,s=e.static_len+3+7>>>3,s>i||(i=s)):i=s=n+5,n+4>i||-1==t?s==i?(se(2+(r?1:0),3),de(I.static_ltree,I.static_dtree)):(se(4+(r?1:0),3),((e,t,n)=>{let r;for(se(e-257,5),se(t-1,5),se(n-4,4),r=0;n>r;r++)se(j[2*L.bl_order[r]+1],3);oe(U,e-1),oe(N,t-1)})(P.max_code+1,K.max_code+1,a+1),de(U,N)):ue(t,n,r),te(),r&&fe()})(0>v?-1:v,z-v,n),v=z,t.flush_pending()}function me(){let e,n,r,i;do{if(i=d-A-z,0===i&&0===z&&0===A)i=s;else if(-1==i)i--;else if(z>=s+s-Z){c.set(c.subarray(s,s+s),0),S-=s,z-=s,v-=s,e=w,r=e;do{n=65535&u[--r],u[r]=s>n?0:n-s}while(0!=--e);e=s,r=e;do{n=65535&f[--r],f[r]=s>n?0:n-s}while(0!=--e);i+=s}if(0===t.avail_in)return;e=t.read_buf(c,z+A,i),A+=e,3>A||(h=255&c[z],h=(h<A&&0!==t.avail_in)}function he(e){let t,n,r=C,i=z,a=D;const o=z>s-Z?z-(s-Z):0;let d=q;const u=l,p=z+258;let m=c[i+a-1],h=c[i+a];T>D||(r>>=2),d>A&&(d=A);do{if(t=e,c[t+a]==h&&c[t+a-1]==m&&c[t]==c[i]&&c[++t]==c[i+1]){i+=2,t++;do{}while(c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&p>i);if(n=258-(p-i),i=p-258,n>a){if(S=e,a=n,n>=d)break;m=c[i+a-1],h=c[i+a]}}}while((e=65535&f[e&u])>o&&0!=--r);return a>A?A:a}e.depth=[],e.bl_count=[],e.heap=[],U=[],N=[],j=[],e.pqdownheap=(t,n)=>{const r=e.heap,i=r[n];let s=n<<1;for(;s<=e.heap_len&&(s(L||(L=8),H||(H=8),B||(B=0),t.msg=null,-1==_&&(_=6),1>H||H>9||8!=L||9>S||S>15||0>_||_>9||0>B||B>2?W:(t.dstate=e,o=S,s=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=M,i=0,P.dyn_tree=U,P.stat_desc=I.static_l_desc,K.dyn_tree=N,K.stat_desc=I.static_d_desc,G.dyn_tree=j,G.stat_desc=I.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*s,u[w-1]=0;for(let e=0;w-1>e;e++)u[e]=0;R=O[F].max_lazy,T=O[F].good_length,q=O[F].nice_length,C=O[F].max_chain,z=0,v=0,A=0,y=D=2,k=0,h=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=M&&n!=B?W:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,u=null,f=null,c=null,e.dstate=null,n==M?-3:0),e.deflateParams=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?W:(O[F].func!=O[t].func&&0!==e.total_in&&(r=e.deflate(1)),F!=t&&(F=t,R=O[F].max_lazy,T=O[F].good_length,q=O[F].nice_length,C=O[F].max_chain),E=n,r)},e.deflateSetDictionary=(e,t,r)=>{let i,a=r,o=0;if(!t||42!=n)return W;if(3>a)return 0;for(a>s-Z&&(a=s-Z,o=r-a),c.set(t.subarray(o,o+a),0),z=a,v=a,h=255&c[0],h=(h<=i;i++)h=(h<{let p,m,g,C,T;if(d>4||0>d)return W;if(!a.next_out||!a.next_in&&0!==a.avail_in||n==B&&4!=d)return a.msg=H[4],W;if(0===a.avail_out)return a.msg=H[7],-5;var q;if(t=a,C=i,i=d,42==n&&(m=8+(o-8<<4)<<8,g=(F-1&255)>>1,g>3&&(g=3),m|=g<<6,0!==z&&(m|=32),m+=31-m%31,n=M,re((q=m)>>8&255),re(255&q)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return i=-1,0}else if(0===t.avail_in&&C>=d&&4!=d)return t.msg=H[7],-5;if(n==B&&0!==t.avail_in)return a.msg=H[7],-5;if(0!==t.avail_in||0!==A||0!=d&&n!=B){switch(T=-1,O[F].func){case 0:T=(e=>{let n,i=65535;for(i>r-5&&(i=r-5);;){if(1>=A){if(me(),0===A&&0==e)return 0;if(0===A)break}if(z+=A,A=0,n=v+i,(0===z||z>=n)&&(A=z-n,z=n,pe(!1),0===t.avail_out))return 0;if(z-v>=s-Z&&(pe(!1),0===t.avail_out))return 0}return pe(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 1:T=(e=>{let n,r=0;for(;;){if(Z>A){if(me(),Z>A&&0==e)return 0;if(0===A)break}if(3>A||(h=(h<s-Z||2!=E&&(y=he(r)),3>y)n=ce(0,255&c[z]),A--,z++;else if(n=ce(z-S,y-3),A-=y,y>R||3>A)z+=y,y=0,h=255&c[z],h=(h<{let n,r,i=0;for(;;){if(Z>A){if(me(),Z>A&&0==e)return 0;if(0===A)break}if(3>A||(h=(h<D&&s-Z>=(z-i&65535)&&(2!=E&&(y=he(i)),5>=y&&(1==E||3==y&&z-S>4096)&&(y=2)),3>D||y>D)if(0!==k){if(n=ce(0,255&c[z-1]),n&&pe(!1),z++,A--,0===t.avail_out)return 0}else k=1,z++,A--;else{r=z+A-3,n=ce(z-1-_,D-3),A-=D-1,D-=2;do{++z>r||(h=(h<1+Q+10-ee&&(se(2,3),ae(256,I.static_ltree),le()),Q=7;else if(ue(0,0,!1),3==d)for(p=0;w>p;p++)u[p]=0;if(t.flush_pending(),0===t.avail_out)return i=-1,0}}return 4!=d?0:1}}function G(){const e=this;e.next_in_index=0,e.next_out_index=0,e.avail_in=0,e.total_in=0,e.avail_out=0,e.total_out=0}G.prototype={deflateInit(e,t){const n=this;return n.dstate=new K,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):W},deflateEnd(){const e=this;if(!e.dstate)return W;const t=e.dstate.deflateEnd();return e.dstate=null,t},deflateParams(e,t){const n=this;return n.dstate?n.dstate.deflateParams(n,e,t):W},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):W},read_buf(e,t,n){const r=this;let i=r.avail_in;return i>n&&(i=n),0===i?0:(r.avail_in-=i,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),t),r.next_in_index+=i,r.total_in+=i,i)},flush_pending(){const e=this;let t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),0!==t&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,0===e.dstate.pending&&(e.dstate.pending_out=0))}};const X=-2,Y=-3,J=-5,Q=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],$=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ee=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],te=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],ne=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],re=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],ie=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function se(){let e,t,n,r,i,s;function a(e,t,a,o,l,c,d,f,u,p,m){let h,w,g,x,b,v,y,_,k,z,S,A,D,C,R;z=0,b=a;do{n[e[t+z]]++,z++,b--}while(0!==b);if(n[0]==a)return d[0]=-1,f[0]=0,0;for(_=f[0],v=1;15>=v&&0===n[v];v++);for(y=v,v>_&&(_=v),b=15;0!==b&&0===n[b];b--);for(g=b,_>b&&(_=b),f[0]=_,C=1<v;v++,C<<=1)if(0>(C-=n[v]))return Y;if(0>(C-=n[b]))return Y;for(n[b]+=C,s[1]=v=0,z=1,D=2;0!=--b;)s[D]=v+=n[z],D++,z++;b=0,z=0;do{0!==(v=e[t+z])&&(m[s[v]++]=b),z++}while(++b=y;y++)for(h=n[y];0!=h--;){for(;y>A+_;){if(x++,A+=_,R=g-A,R=R>_?_:R,(w=1<<(v=y-A))>h+1&&(w-=h+1,D=y,R>v))for(;++vn[++D];)w-=n[D];if(R=1<1440)return Y;i[x]=S=p[0],p[0]+=R,0!==x?(s[x]=b,r[0]=v,r[1]=_,v=b>>>A-_,r[2]=S-i[x-1]-v,u.set(r,3*(i[x-1]+v))):d[0]=S}for(r[1]=y-A,a>z?m[z]m[z]?0:96,r[2]=m[z++]):(r[0]=c[m[z]-o]+16+64,r[2]=l[m[z++]-o]):r[0]=192,w=1<>>A;R>v;v+=w)u.set(r,3*(S+v));for(v=1<>>=1)b^=v;for(b^=v,k=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)r[o]=0;i.set(n.subarray(0,15),0),s.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,r,i,s,l)=>{let c;return o(19),e[0]=0,c=a(n,0,19,19,null,null,i,r,s,e,t),c==Y?l.msg="oversubscribed dynamic bit lengths tree":c!=J&&0!==r[0]||(l.msg="incomplete dynamic bit lengths tree",c=Y),c},this.inflate_trees_dynamic=(n,r,i,s,l,c,d,f,u)=>{let p;return o(288),e[0]=0,p=a(i,0,n,257,te,ne,c,s,f,e,t),0!=p||0===s[0]?(p==Y?u.msg="oversubscribed literal/length tree":-4!=p&&(u.msg="incomplete literal/length tree",p=Y),p):(o(288),p=a(i,n,r,0,re,ie,d,l,f,e,t),0!=p||0===l[0]&&n>257?(p==Y?u.msg="oversubscribed distance tree":p==J?(u.msg="incomplete distance tree",p=Y):-4!=p&&(u.msg="empty distance tree with lengths",p=Y),p):0)}}function ae(){const e=this;let t,n,r,i,s=0,a=0,o=0,l=0,c=0,d=0,f=0,u=0,p=0,m=0;function h(e,t,n,r,i,s,a,o){let l,c,d,f,u,p,m,h,w,g,x,b,v,y,_,k;m=o.next_in_index,h=o.avail_in,u=a.bitb,p=a.bitk,w=a.write,g=wp;)h--,u|=(255&o.read_byte(m++))<>=c[k+1],p-=c[k+1],16&f){for(f&=15,v=c[k+2]+(u&Q[f]),u>>=f,p-=f;15>p;)h--,u|=(255&o.read_byte(m++))<>=c[k+1],p-=c[k+1],16&f){for(f&=15;f>p;)h--,u|=(255&o.read_byte(m++))<>=f,p-=f,g-=v,y>w){_=w-y;do{_+=a.end}while(0>_);if(f=a.end-_,v>f){if(v-=f,w-_>0&&f>w-_)do{a.win[w++]=a.win[_++]}while(0!=--f);else a.win.set(a.win.subarray(_,_+f),w),w+=f,_+=f,f=0;_=0}}else _=w-y,w-_>0&&2>w-_?(a.win[w++]=a.win[_++],a.win[w++]=a.win[_++],v-=2):(a.win.set(a.win.subarray(_,_+2),w),w+=2,_+=2,v-=2);if(w-_>0&&v>w-_)do{a.win[w++]=a.win[_++]}while(0!=--v);else a.win.set(a.win.subarray(_,_+v),w),w+=v,_+=v,v=0;break}if(64&f)return o.msg="invalid distance code",v=o.avail_in-h,v=v>p>>3?p>>3:v,h+=v,m-=v,p-=v<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,Y;l+=c[k+2],l+=u&Q[f],k=3*(d+l),f=c[k]}break}if(64&f)return 32&f?(v=o.avail_in-h,v=v>p>>3?p>>3:v,h+=v,m-=v,p-=v<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,1):(o.msg="invalid literal/length code",v=o.avail_in-h,v=v>p>>3?p>>3:v,h+=v,m-=v,p-=v<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,Y);if(l+=c[k+2],l+=u&Q[f],k=3*(d+l),0===(f=c[k])){u>>=c[k+1],p-=c[k+1],a.win[w++]=c[k+2],g--;break}}else u>>=c[k+1],p-=c[k+1],a.win[w++]=c[k+2],g--}while(g>=258&&h>=10);return v=o.avail_in-h,v=v>p>>3?p>>3:v,h+=v,m-=v,p-=v<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,0}e.init=(e,s,a,o,l,c)=>{t=0,f=e,u=s,r=a,p=o,i=l,m=c,n=null},e.proc=(e,w,g)=>{let x,b,v,y,_,k,z,S=0,A=0,D=0;for(D=w.next_in_index,y=w.avail_in,S=e.bitb,A=e.bitk,_=e.write,k=_=258&&y>=10&&(e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,g=h(f,u,r,p,i,m,e,w),D=w.next_in_index,y=w.avail_in,S=e.bitb,A=e.bitk,_=e.write,k=_A;){if(0===y)return e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,g);g=0,y--,S|=(255&w.read_byte(D++))<>>=n[b+1],A-=n[b+1],v=n[b],0===v){l=n[b+2],t=6;break}if(16&v){c=15&v,s=n[b+2],t=2;break}if(!(64&v)){o=v,a=b/3+n[b+2];break}if(32&v){t=7;break}return t=9,w.msg="invalid literal/length code",g=Y,e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,g);case 2:for(x=c;x>A;){if(0===y)return e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,g);g=0,y--,S|=(255&w.read_byte(D++))<>=x,A-=x,o=u,n=i,a=m,t=3;case 3:for(x=o;x>A;){if(0===y)return e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,g);g=0,y--,S|=(255&w.read_byte(D++))<>=n[b+1],A-=n[b+1],v=n[b],16&v){c=15&v,d=n[b+2],t=4;break}if(!(64&v)){o=v,a=b/3+n[b+2];break}return t=9,w.msg="invalid distance code",g=Y,e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,g);case 4:for(x=c;x>A;){if(0===y)return e.bitb=S,e.bitk=A,w.avail_in=y,w.total_in+=D-w.next_in_index,w.next_in_index=D,e.write=_,e.inflate_flush(w,g);g=0,y--,S|=(255&w.read_byte(D++))<>=x,A-=x,t=5;case 5:for(z=_-d;0>z;)z+=e.end;for(;0!==s;){if(0===k&&(_==e.end&&0!==e.read&&(_=0,k=_7&&(A-=8,y++,D--),e.write=_,g=e.inflate_flush(w,g),_=e.write,k=_{}}se.inflate_trees_fixed=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=$,r[0]=ee,0);const oe=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function le(e,t){const n=this;let r,i=0,s=0,a=0,o=0;const l=[0],c=[0],d=new ae;let f=0,u=new Int32Array(4320);const m=new se;n.bitk=0,n.bitb=0,n.win=new p(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==i&&d.free(e),i=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let r,i,s;return i=e.next_out_index,s=n.read,r=(s>n.write?n.end:n.write)-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==J&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r,s==n.end&&(s=0,n.write==n.end&&(n.write=0),r=n.write-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==J&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r),e.next_out_index=i,n.read=s,t},n.proc=(e,t)=>{let p,h,w,g,x,b,v,y;for(g=e.next_in_index,x=e.avail_in,h=n.bitb,w=n.bitk,b=n.write,v=bw;){if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,x--,h|=(255&e.read_byte(g++))<>>1){case 0:h>>>=3,w-=3,p=7&w,h>>>=p,w-=p,i=1;break;case 1:_=[],k=[],z=[[]],S=[[]],se.inflate_trees_fixed(_,k,z,S),d.init(_[0],k[0],z[0],0,S[0],0),h>>>=3,w-=3,i=6;break;case 2:h>>>=3,w-=3,i=3;break;case 3:return h>>>=3,w-=3,i=9,e.msg="invalid block type",t=Y,n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t)}break;case 1:for(;32>w;){if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,x--,h|=(255&e.read_byte(g++))<>>16&65535)!=(65535&h))return i=9,e.msg="invalid stored block lengths",t=Y,n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);s=65535&h,h=w=0,i=0!==s?2:0!==f?7:0;break;case 2:if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);if(0===v&&(b==n.end&&0!==n.read&&(b=0,v=bx&&(p=x),p>v&&(p=v),n.win.set(e.read_buf(g,p),b),g+=p,x-=p,b+=p,v-=p,0!=(s-=p))break;i=0!==f?7:0;break;case 3:for(;14>w;){if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,x--,h|=(255&e.read_byte(g++))<29||(p>>5&31)>29)return i=9,e.msg="too many length or distance symbols",t=Y,n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);if(p=258+(31&p)+(p>>5&31),!r||r.lengthy;y++)r[y]=0;h>>>=14,w-=14,o=0,i=4;case 4:for(;4+(a>>>10)>o;){for(;3>w;){if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,x--,h|=(255&e.read_byte(g++))<>>=3,w-=3}for(;19>o;)r[oe[o++]]=0;if(l[0]=7,p=m.inflate_trees_bits(r,l,c,u,e),0!=p)return(t=p)==Y&&(r=null,i=9),n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);o=0,i=5;case 5:for(;p=a,258+(31&p)+(p>>5&31)>o;){let s,d;for(p=l[0];p>w;){if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,x--,h|=(255&e.read_byte(g++))<d)h>>>=p,w-=p,r[o++]=d;else{for(y=18==d?7:d-14,s=18==d?11:3;p+y>w;){if(0===x)return n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);t=0,x--,h|=(255&e.read_byte(g++))<>>=p,w-=p,s+=h&Q[y],h>>>=y,w-=y,y=o,p=a,y+s>258+(31&p)+(p>>5&31)||16==d&&1>y)return r=null,i=9,e.msg="invalid bit length repeat",t=Y,n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);d=16==d?r[y-1]:0;do{r[y++]=d}while(0!=--s);o=y}}if(c[0]=-1,A=[],D=[],C=[],R=[],A[0]=9,D[0]=6,p=a,p=m.inflate_trees_dynamic(257+(31&p),1+(p>>5&31),r,A,D,C,R,u,e),0!=p)return p==Y&&(r=null,i=9),t=p,n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,n.inflate_flush(e,t);d.init(A[0],D[0],u,C[0],u,R[0]),i=6;case 6:if(n.bitb=h,n.bitk=w,e.avail_in=x,e.total_in+=g-e.next_in_index,e.next_in_index=g,n.write=b,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),g=e.next_in_index,x=e.avail_in,h=n.bitb,w=n.bitk,b=n.write,v=b{n.reset(e,null),n.win=null,u=null},n.set_dictionary=(e,t,r)=>{n.win.set(e.subarray(t,t+r),0),n.read=n.write=r},n.sync_point=()=>1==i?1:0}const ce=13,de=[0,0,255,255];function fe(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):X}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,r)=>(n.msg=null,e.blocks=null,8>r||r>15?(e.inflateEnd(n),X):(e.wbits=r,n.istate.blocks=new le(n,1<{let n,r;if(!e||!e.istate||!e.next_in)return X;const i=e.istate;for(t=4==t?J:0,n=J;;)switch(i.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(i.method=e.read_byte(e.next_in_index++)))){i.mode=ce,e.msg="unknown compression method",i.marker=5;break}if(8+(i.method>>4)>i.wbits){i.mode=ce,e.msg="invalid win size",i.marker=5;break}i.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,r=255&e.read_byte(e.next_in_index++),((i.method<<8)+r)%31!=0){i.mode=ce,e.msg="incorrect header check",i.marker=5;break}if(!(32&r)){i.mode=7;break}i.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,i.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,i.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,i.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,i.need+=255&e.read_byte(e.next_in_index++),i.mode=6,2);case 6:return i.mode=ce,e.msg="need dictionary",i.marker=0,X;case 7:if(n=i.blocks.proc(e,n),n==Y){i.mode=ce,i.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,i.blocks.reset(e,i.was),i.mode=12;case 12:return e.avail_in=0,1;case ce:return Y;default:return X}},e.inflateSetDictionary=(e,t,n)=>{let r=0,i=n;if(!e||!e.istate||6!=e.istate.mode)return X;const s=e.istate;return i<1<{let n,r,i,s,a;if(!e||!e.istate)return X;const o=e.istate;if(o.mode!=ce&&(o.mode=ce,o.marker=0),0===(n=e.avail_in))return J;for(r=e.next_in_index,i=o.marker;0!==n&&4>i;)e.read_byte(r)==de[i]?i++:i=0!==e.read_byte(r)?0:4-i,r++,n--;return e.total_in+=r-e.next_in_index,e.next_in_index=r,e.avail_in=n,o.marker=i,4!=i?Y:(s=e.total_in,a=e.total_out,t(e),e.total_in=s,e.total_out=a,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():X}function ue(){}ue.prototype={inflateInit(e){const t=this;return t.istate=new fe,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):X},inflateEnd(){const e=this;if(!e.istate)return X;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):X},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):X},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const pe=4294967295,me=65535,he=67324752,we=134695760,ge=we,xe=33639248,be=101010256,ve=101075792,ye=117853008,_e=22,ke=21589,ze=2048,Se="/",Ae=new o(2107,11,31),De=new o(1980,0,1),Ce=void 0,Re="undefined",Fe="function";class Ee{constructor(e){return class extends z{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}let We=2;try{typeof R!=Re&&R.hardwareConcurrency&&(We=R.hardwareConcurrency)}catch(e){}const Te={chunkSize:524288,maxWorkers:We,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:Ce,CompressionStreamNative:typeof D!=Re&&D,DecompressionStreamNative:typeof C!=Re&&C},qe=n.assign({},Te);function Ue(){return qe}function Le(e){return a.max(e.chunkSize,64)}function Ie(e){const{baseURL:n,chunkSize:r,maxWorkers:i,terminateWorkerTimeout:s,useCompressionStream:a,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:f,workerScripts:p}=e;if(Ne("baseURL",n),Ne("chunkSize",r),Ne("maxWorkers",i),Ne("terminateWorkerTimeout",s),Ne("useCompressionStream",a),Ne("useWebWorkers",o),l&&(qe.CompressionStream=new Ee(l)),c&&(qe.DecompressionStream=new Ee(c)),Ne("CompressionStream",d),Ne("DecompressionStream",f),p!==Ce){const{deflate:e,inflate:n}=p;if((e||n)&&(qe.workerScripts||(qe.workerScripts={})),e){if(!t.isArray(e))throw new u("workerScripts.deflate must be an array");qe.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new u("workerScripts.inflate must be an array");qe.workerScripts.inflate=n}}}function Ne(e,t){t!==Ce&&(qe[e]=t)}const je={application:{"andrew-inset":"ez",annodex:"anx","atom+xml":"atom","atomcat+xml":"atomcat","atomserv+xml":"atomsrv",bbolin:"lin","cu-seeme":"cu","davmount+xml":"davmount",dsptype:"tsp",ecmascript:["es","ecma"],futuresplash:"spl",hta:"hta","java-archive":"jar","java-serialized-object":"ser","java-vm":"class",m3g:"m3g","mac-binhex40":"hqx",mathematica:["nb","ma","mb"],msaccess:"mdb",msword:["doc","dot","wiz"],mxf:"mxf",oda:"oda",ogg:"ogx",pdf:"pdf","pgp-keys":"key","pgp-signature":["asc","sig"],"pics-rules":"prf",postscript:["ps","ai","eps","epsi","epsf","eps2","eps3"],rar:"rar","rdf+xml":"rdf","rss+xml":"rss",rtf:"rtf","xhtml+xml":["xhtml","xht"],xml:["xml","xsl","xsd","xpdl"],"xspf+xml":"xspf",zip:"zip","vnd.android.package-archive":"apk","vnd.cinderella":"cdy","vnd.google-earth.kml+xml":"kml","vnd.google-earth.kmz":"kmz","vnd.mozilla.xul+xml":"xul","vnd.ms-excel":["xls","xlb","xlt","xlm","xla","xlc","xlw"],"vnd.ms-pki.seccat":"cat","vnd.ms-pki.stl":"stl","vnd.ms-powerpoint":["ppt","pps","pot","ppa","pwz"],"vnd.oasis.opendocument.chart":"odc","vnd.oasis.opendocument.database":"odb","vnd.oasis.opendocument.formula":"odf","vnd.oasis.opendocument.graphics":"odg","vnd.oasis.opendocument.graphics-template":"otg","vnd.oasis.opendocument.image":"odi","vnd.oasis.opendocument.presentation":"odp","vnd.oasis.opendocument.presentation-template":"otp","vnd.oasis.opendocument.spreadsheet":"ods","vnd.oasis.opendocument.spreadsheet-template":"ots","vnd.oasis.opendocument.text":"odt","vnd.oasis.opendocument.text-master":["odm","otm"],"vnd.oasis.opendocument.text-template":"ott","vnd.oasis.opendocument.text-web":"oth","vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","vnd.openxmlformats-officedocument.spreadsheetml.template":"xltx","vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","vnd.openxmlformats-officedocument.presentationml.slideshow":"ppsx","vnd.openxmlformats-officedocument.presentationml.template":"potx","vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","vnd.openxmlformats-officedocument.wordprocessingml.template":"dotx","vnd.smaf":"mmf","vnd.stardivision.calc":"sdc","vnd.stardivision.chart":"sds","vnd.stardivision.draw":"sda","vnd.stardivision.impress":"sdd","vnd.stardivision.math":["sdf","smf"],"vnd.stardivision.writer":["sdw","vor"],"vnd.stardivision.writer-global":"sgl","vnd.sun.xml.calc":"sxc","vnd.sun.xml.calc.template":"stc","vnd.sun.xml.draw":"sxd","vnd.sun.xml.draw.template":"std","vnd.sun.xml.impress":"sxi","vnd.sun.xml.impress.template":"sti","vnd.sun.xml.math":"sxm","vnd.sun.xml.writer":"sxw","vnd.sun.xml.writer.global":"sxg","vnd.sun.xml.writer.template":"stw","vnd.symbian.install":["sis","sisx"],"vnd.visio":["vsd","vst","vss","vsw","vsdx","vssx","vstx","vssm","vstm"],"vnd.wap.wbxml":"wbxml","vnd.wap.wmlc":"wmlc","vnd.wap.wmlscriptc":"wmlsc","vnd.wordperfect":"wpd","vnd.wordperfect5.1":"wp5","x-123":"wk","x-7z-compressed":"7z","x-abiword":"abw","x-apple-diskimage":"dmg","x-bcpio":"bcpio","x-bittorrent":"torrent","x-cbr":["cbr","cba","cbt","cb7"],"x-cbz":"cbz","x-cdf":["cdf","cda"],"x-cdlink":"vcd","x-chess-pgn":"pgn","x-cpio":"cpio","x-csh":"csh","x-director":["dir","dxr","cst","cct","cxt","w3d","fgd","swa"],"x-dms":"dms","x-doom":"wad","x-dvi":"dvi","x-httpd-eruby":"rhtml","x-font":"pcf.Z","x-freemind":"mm","x-gnumeric":"gnumeric","x-go-sgf":"sgf","x-graphing-calculator":"gcf","x-gtar":["gtar","taz"],"x-hdf":"hdf","x-httpd-php":["phtml","pht","php"],"x-httpd-php-source":"phps","x-httpd-php3":"php3","x-httpd-php3-preprocessed":"php3p","x-httpd-php4":"php4","x-httpd-php5":"php5","x-ica":"ica","x-info":"info","x-internet-signup":["ins","isp"],"x-iphone":"iii","x-iso9660-image":"iso","x-java-jnlp-file":"jnlp","x-jmol":"jmz","x-killustrator":"kil","x-latex":"latex","x-lyx":"lyx","x-lzx":"lzx","x-maker":["frm","fb","fbdoc"],"x-ms-wmd":"wmd","x-msdos-program":["com","exe","bat","dll"],"x-netcdf":["nc"],"x-ns-proxy-autoconfig":["pac","dat"],"x-nwc":"nwc","x-object":"o","x-oz-application":"oza","x-pkcs7-certreqresp":"p7r","x-python-code":["pyc","pyo"],"x-qgis":["qgs","shp","shx"],"x-quicktimeplayer":"qtl","x-redhat-package-manager":["rpm","rpa"],"x-ruby":"rb","x-sh":"sh","x-shar":"shar","x-shockwave-flash":["swf","swfl"],"x-silverlight":"scr","x-stuffit":"sit","x-sv4cpio":"sv4cpio","x-sv4crc":"sv4crc","x-tar":"tar","x-tex-gf":"gf","x-tex-pk":"pk","x-texinfo":["texinfo","texi"],"x-trash":["~","%","bak","old","sik"],"x-ustar":"ustar","x-wais-source":"src","x-wingz":"wz","x-x509-ca-cert":["crt","der","cer"],"x-xcf":"xcf","x-xfig":"fig","x-xpinstall":"xpi",applixware:"aw","atomsvc+xml":"atomsvc","ccxml+xml":"ccxml","cdmi-capability":"cdmia","cdmi-container":"cdmic","cdmi-domain":"cdmid","cdmi-object":"cdmio","cdmi-queue":"cdmiq","docbook+xml":"dbk","dssc+der":"dssc","dssc+xml":"xdssc","emma+xml":"emma","epub+zip":"epub",exi:"exi","font-tdpfr":"pfr","gml+xml":"gml","gpx+xml":"gpx",gxf:"gxf",hyperstudio:"stk","inkml+xml":["ink","inkml"],ipfix:"ipfix","jsonml+json":"jsonml","lost+xml":"lostxml","mads+xml":"mads",marc:"mrc","marcxml+xml":"mrcx","mathml+xml":["mathml","mml"],mbox:"mbox","mediaservercontrol+xml":"mscml","metalink+xml":"metalink","metalink4+xml":"meta4","mets+xml":"mets","mods+xml":"mods",mp21:["m21","mp21"],mp4:"mp4s","oebps-package+xml":"opf","omdoc+xml":"omdoc",onenote:["onetoc","onetoc2","onetmp","onepkg"],oxps:"oxps","patch-ops-error+xml":"xer","pgp-encrypted":"pgp",pkcs10:"p10","pkcs7-mime":["p7m","p7c"],"pkcs7-signature":"p7s",pkcs8:"p8","pkix-attr-cert":"ac","pkix-crl":"crl","pkix-pkipath":"pkipath",pkixcmp:"pki","pls+xml":"pls","prs.cww":"cww","pskc+xml":"pskcxml","reginfo+xml":"rif","relax-ng-compact-syntax":"rnc","resource-lists+xml":"rl","resource-lists-diff+xml":"rld","rls-services+xml":"rs","rpki-ghostbusters":"gbr","rpki-manifest":"mft","rpki-roa":"roa","rsd+xml":"rsd","sbml+xml":"sbml","scvp-cv-request":"scq","scvp-cv-response":"scs","scvp-vp-request":"spq","scvp-vp-response":"spp",sdp:"sdp","set-payment-initiation":"setpay","set-registration-initiation":"setreg","shf+xml":"shf","sparql-query":"rq","sparql-results+xml":"srx",srgs:"gram","srgs+xml":"grxml","sru+xml":"sru","ssdl+xml":"ssdl","ssml+xml":"ssml","tei+xml":["tei","teicorpus"],"thraud+xml":"tfi","timestamped-data":"tsd","vnd.3gpp.pic-bw-large":"plb","vnd.3gpp.pic-bw-small":"psb","vnd.3gpp.pic-bw-var":"pvb","vnd.3gpp2.tcap":"tcap","vnd.3m.post-it-notes":"pwn","vnd.accpac.simply.aso":"aso","vnd.accpac.simply.imp":"imp","vnd.acucobol":"acu","vnd.acucorp":["atc","acutc"],"vnd.adobe.air-application-installer-package+zip":"air","vnd.adobe.formscentral.fcdt":"fcdt","vnd.adobe.fxp":["fxp","fxpl"],"vnd.adobe.xdp+xml":"xdp","vnd.adobe.xfdf":"xfdf","vnd.ahead.space":"ahead","vnd.airzip.filesecure.azf":"azf","vnd.airzip.filesecure.azs":"azs","vnd.amazon.ebook":"azw","vnd.americandynamics.acc":"acc","vnd.amiga.ami":"ami","vnd.anser-web-certificate-issue-initiation":"cii","vnd.anser-web-funds-transfer-initiation":"fti","vnd.antix.game-component":"atx","vnd.apple.installer+xml":"mpkg","vnd.apple.mpegurl":"m3u8","vnd.aristanetworks.swi":"swi","vnd.astraea-software.iota":"iota","vnd.audiograph":"aep","vnd.blueice.multipass":"mpm","vnd.bmi":"bmi","vnd.businessobjects":"rep","vnd.chemdraw+xml":"cdxml","vnd.chipnuts.karaoke-mmd":"mmd","vnd.claymore":"cla","vnd.cloanto.rp9":"rp9","vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"vnd.cluetrust.cartomobile-config":"c11amc","vnd.cluetrust.cartomobile-config-pkg":"c11amz","vnd.commonspace":"csp","vnd.contact.cmsg":"cdbcmsg","vnd.cosmocaller":"cmc","vnd.crick.clicker":"clkx","vnd.crick.clicker.keyboard":"clkk","vnd.crick.clicker.palette":"clkp","vnd.crick.clicker.template":"clkt","vnd.crick.clicker.wordbank":"clkw","vnd.criticaltools.wbs+xml":"wbs","vnd.ctc-posml":"pml","vnd.cups-ppd":"ppd","vnd.curl.car":"car","vnd.curl.pcurl":"pcurl","vnd.dart":"dart","vnd.data-vision.rdz":"rdz","vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"vnd.dece.ttml+xml":["uvt","uvvt"],"vnd.dece.unspecified":["uvx","uvvx"],"vnd.dece.zip":["uvz","uvvz"],"vnd.denovo.fcselayout-link":"fe_launch","vnd.dna":"dna","vnd.dolby.mlp":"mlp","vnd.dpgraph":"dpg","vnd.dreamfactory":"dfac","vnd.ds-keypoint":"kpxx","vnd.dvb.ait":"ait","vnd.dvb.service":"svc","vnd.dynageo":"geo","vnd.ecowin.chart":"mag","vnd.enliven":"nml","vnd.epson.esf":"esf","vnd.epson.msf":"msf","vnd.epson.quickanime":"qam","vnd.epson.salt":"slt","vnd.epson.ssf":"ssf","vnd.eszigno3+xml":["es3","et3"],"vnd.ezpix-album":"ez2","vnd.ezpix-package":"ez3","vnd.fdf":"fdf","vnd.fdsn.mseed":"mseed","vnd.fdsn.seed":["seed","dataless"],"vnd.flographit":"gph","vnd.fluxtime.clip":"ftc","vnd.framemaker":["fm","frame","maker","book"],"vnd.frogans.fnc":"fnc","vnd.frogans.ltf":"ltf","vnd.fsc.weblaunch":"fsc","vnd.fujitsu.oasys":"oas","vnd.fujitsu.oasys2":"oa2","vnd.fujitsu.oasys3":"oa3","vnd.fujitsu.oasysgp":"fg5","vnd.fujitsu.oasysprs":"bh2","vnd.fujixerox.ddd":"ddd","vnd.fujixerox.docuworks":"xdw","vnd.fujixerox.docuworks.binder":"xbd","vnd.fuzzysheet":"fzs","vnd.genomatix.tuxedo":"txd","vnd.geogebra.file":"ggb","vnd.geogebra.tool":"ggt","vnd.geometry-explorer":["gex","gre"],"vnd.geonext":"gxt","vnd.geoplan":"g2w","vnd.geospace":"g3w","vnd.gmx":"gmx","vnd.grafeq":["gqf","gqs"],"vnd.groove-account":"gac","vnd.groove-help":"ghf","vnd.groove-identity-message":"gim","vnd.groove-injector":"grv","vnd.groove-tool-message":"gtm","vnd.groove-tool-template":"tpl","vnd.groove-vcard":"vcg","vnd.hal+xml":"hal","vnd.handheld-entertainment+xml":"zmm","vnd.hbci":"hbci","vnd.hhe.lesson-player":"les","vnd.hp-hpgl":"hpgl","vnd.hp-hpid":"hpid","vnd.hp-hps":"hps","vnd.hp-jlyt":"jlt","vnd.hp-pcl":"pcl","vnd.hp-pclxl":"pclxl","vnd.hydrostatix.sof-data":"sfd-hdstx","vnd.ibm.minipay":"mpy","vnd.ibm.modcap":["afp","listafp","list3820"],"vnd.ibm.rights-management":"irm","vnd.ibm.secure-container":"sc","vnd.iccprofile":["icc","icm"],"vnd.igloader":"igl","vnd.immervision-ivp":"ivp","vnd.immervision-ivu":"ivu","vnd.insors.igm":"igm","vnd.intercon.formnet":["xpw","xpx"],"vnd.intergeo":"i2g","vnd.intu.qbo":"qbo","vnd.intu.qfx":"qfx","vnd.ipunplugged.rcprofile":"rcprofile","vnd.irepository.package+xml":"irp","vnd.is-xpr":"xpr","vnd.isac.fcs":"fcs","vnd.jam":"jam","vnd.jcp.javame.midlet-rms":"rms","vnd.jisp":"jisp","vnd.joost.joda-archive":"joda","vnd.kahootz":["ktz","ktr"],"vnd.kde.karbon":"karbon","vnd.kde.kchart":"chrt","vnd.kde.kformula":"kfo","vnd.kde.kivio":"flw","vnd.kde.kontour":"kon","vnd.kde.kpresenter":["kpr","kpt"],"vnd.kde.kspread":"ksp","vnd.kde.kword":["kwd","kwt"],"vnd.kenameaapp":"htke","vnd.kidspiration":"kia","vnd.kinar":["kne","knp"],"vnd.koan":["skp","skd","skt","skm"],"vnd.kodak-descriptor":"sse","vnd.las.las+xml":"lasxml","vnd.llamagraphics.life-balance.desktop":"lbd","vnd.llamagraphics.life-balance.exchange+xml":"lbe","vnd.lotus-1-2-3":"123","vnd.lotus-approach":"apr","vnd.lotus-freelance":"pre","vnd.lotus-notes":"nsf","vnd.lotus-organizer":"org","vnd.lotus-screencam":"scm","vnd.lotus-wordpro":"lwp","vnd.macports.portpkg":"portpkg","vnd.mcd":"mcd","vnd.medcalcdata":"mc1","vnd.mediastation.cdkey":"cdkey","vnd.mfer":"mwf","vnd.mfmp":"mfm","vnd.micrografx.flo":"flo","vnd.micrografx.igx":"igx","vnd.mif":"mif","vnd.mobius.daf":"daf","vnd.mobius.dis":"dis","vnd.mobius.mbk":"mbk","vnd.mobius.mqy":"mqy","vnd.mobius.msl":"msl","vnd.mobius.plc":"plc","vnd.mobius.txf":"txf","vnd.mophun.application":"mpn","vnd.mophun.certificate":"mpc","vnd.ms-artgalry":"cil","vnd.ms-cab-compressed":"cab","vnd.ms-excel.addin.macroenabled.12":"xlam","vnd.ms-excel.sheet.binary.macroenabled.12":"xlsb","vnd.ms-excel.sheet.macroenabled.12":"xlsm","vnd.ms-excel.template.macroenabled.12":"xltm","vnd.ms-fontobject":"eot","vnd.ms-htmlhelp":"chm","vnd.ms-ims":"ims","vnd.ms-lrm":"lrm","vnd.ms-officetheme":"thmx","vnd.ms-powerpoint.addin.macroenabled.12":"ppam","vnd.ms-powerpoint.presentation.macroenabled.12":"pptm","vnd.ms-powerpoint.slide.macroenabled.12":"sldm","vnd.ms-powerpoint.slideshow.macroenabled.12":"ppsm","vnd.ms-powerpoint.template.macroenabled.12":"potm","vnd.ms-project":["mpp","mpt"],"vnd.ms-word.document.macroenabled.12":"docm","vnd.ms-word.template.macroenabled.12":"dotm","vnd.ms-works":["wps","wks","wcm","wdb"],"vnd.ms-wpl":"wpl","vnd.ms-xpsdocument":"xps","vnd.mseq":"mseq","vnd.musician":"mus","vnd.muvee.style":"msty","vnd.mynfc":"taglet","vnd.neurolanguage.nlu":"nlu","vnd.nitf":["ntf","nitf"],"vnd.noblenet-directory":"nnd","vnd.noblenet-sealer":"nns","vnd.noblenet-web":"nnw","vnd.nokia.n-gage.data":"ngdat","vnd.nokia.n-gage.symbian.install":"n-gage","vnd.nokia.radio-preset":"rpst","vnd.nokia.radio-presets":"rpss","vnd.novadigm.edm":"edm","vnd.novadigm.edx":"edx","vnd.novadigm.ext":"ext","vnd.oasis.opendocument.chart-template":"otc","vnd.oasis.opendocument.formula-template":"odft","vnd.oasis.opendocument.image-template":"oti","vnd.olpc-sugar":"xo","vnd.oma.dd2+xml":"dd2","vnd.openofficeorg.extension":"oxt","vnd.openxmlformats-officedocument.presentationml.slide":"sldx","vnd.osgeo.mapguide.package":"mgp","vnd.osgi.dp":"dp","vnd.osgi.subsystem":"esa","vnd.palm":["pdb","pqa","oprc"],"vnd.pawaafile":"paw","vnd.pg.format":"str","vnd.pg.osasli":"ei6","vnd.picsel":"efif","vnd.pmi.widget":"wg","vnd.pocketlearn":"plf","vnd.powerbuilder6":"pbd","vnd.previewsystems.box":"box","vnd.proteus.magazine":"mgz","vnd.publishare-delta-tree":"qps","vnd.pvi.ptid1":"ptid","vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"vnd.realvnc.bed":"bed","vnd.recordare.musicxml":"mxl","vnd.recordare.musicxml+xml":"musicxml","vnd.rig.cryptonote":"cryptonote","vnd.rn-realmedia":"rm","vnd.rn-realmedia-vbr":"rmvb","vnd.route66.link66+xml":"link66","vnd.sailingtracker.track":"st","vnd.seemail":"see","vnd.sema":"sema","vnd.semd":"semd","vnd.semf":"semf","vnd.shana.informed.formdata":"ifm","vnd.shana.informed.formtemplate":"itp","vnd.shana.informed.interchange":"iif","vnd.shana.informed.package":"ipk","vnd.simtech-mindmapper":["twd","twds"],"vnd.smart.teacher":"teacher","vnd.solent.sdkm+xml":["sdkm","sdkd"],"vnd.spotfire.dxp":"dxp","vnd.spotfire.sfs":"sfs","vnd.stepmania.package":"smzip","vnd.stepmania.stepchart":"sm","vnd.sus-calendar":["sus","susp"],"vnd.svd":"svd","vnd.syncml+xml":"xsm","vnd.syncml.dm+wbxml":"bdm","vnd.syncml.dm+xml":"xdm","vnd.tao.intent-module-archive":"tao","vnd.tcpdump.pcap":["pcap","cap","dmp"],"vnd.tmobile-livetv":"tmo","vnd.trid.tpt":"tpt","vnd.triscape.mxs":"mxs","vnd.trueapp":"tra","vnd.ufdl":["ufd","ufdl"],"vnd.uiq.theme":"utz","vnd.umajin":"umj","vnd.unity":"unityweb","vnd.uoml+xml":"uoml","vnd.vcx":"vcx","vnd.visionary":"vis","vnd.vsf":"vsf","vnd.webturbo":"wtb","vnd.wolfram.player":"nbp","vnd.wqd":"wqd","vnd.wt.stf":"stf","vnd.xara":"xar","vnd.xfdl":"xfdl","vnd.yamaha.hv-dic":"hvd","vnd.yamaha.hv-script":"hvs","vnd.yamaha.hv-voice":"hvp","vnd.yamaha.openscoreformat":"osf","vnd.yamaha.openscoreformat.osfpvg+xml":"osfpvg","vnd.yamaha.smaf-audio":"saf","vnd.yamaha.smaf-phrase":"spf","vnd.yellowriver-custom-menu":"cmp","vnd.zul":["zir","zirz"],"vnd.zzazz.deck+xml":"zaz","voicexml+xml":"vxml",widget:"wgt",winhlp:"hlp","wsdl+xml":"wsdl","wspolicy+xml":"wspolicy","x-ace-compressed":"ace","x-authorware-bin":["aab","x32","u32","vox"],"x-authorware-map":"aam","x-authorware-seg":"aas","x-blorb":["blb","blorb"],"x-bzip":"bz","x-bzip2":["bz2","boz"],"x-cfs-compressed":"cfs","x-chat":"chat","x-conference":"nsc","x-dgc-compressed":"dgc","x-dtbncx+xml":"ncx","x-dtbook+xml":"dtb","x-dtbresource+xml":"res","x-eva":"eva","x-font-bdf":"bdf","x-font-ghostscript":"gsf","x-font-linux-psf":"psf","x-font-pcf":"pcf","x-font-snf":"snf","x-font-ttf":["ttf","ttc"],"x-font-type1":["pfa","pfb","pfm","afm"],"x-freearc":"arc","x-gca-compressed":"gca","x-glulx":"ulx","x-gramps-xml":"gramps","x-install-instructions":"install","x-lzh-compressed":["lzh","lha"],"x-mie":"mie","x-mobipocket-ebook":["prc","mobi"],"x-ms-application":"application","x-ms-shortcut":"lnk","x-ms-xbap":"xbap","x-msbinder":"obd","x-mscardfile":"crd","x-msclip":"clp","application/x-ms-installer":"msi","x-msmediaview":["mvb","m13","m14"],"x-msmetafile":["wmf","wmz","emf","emz"],"x-msmoney":"mny","x-mspublisher":"pub","x-msschedule":"scd","x-msterminal":"trm","x-mswrite":"wri","x-nzb":"nzb","x-pkcs12":["p12","pfx"],"x-pkcs7-certificates":["p7b","spc"],"x-research-info-systems":"ris","x-silverlight-app":"xap","x-sql":"sql","x-stuffitx":"sitx","x-subrip":"srt","x-t3vm-image":"t3","x-tex-tfm":"tfm","x-tgif":"obj","x-xliff+xml":"xlf","x-xz":"xz","x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"xaml+xml":"xaml","xcap-diff+xml":"xdf","xenc+xml":"xenc","xml-dtd":"dtd","xop+xml":"xop","xproc+xml":"xpl","xslt+xml":"xslt","xv+xml":["mxml","xhvml","xvml","xvm"],yang:"yang","yin+xml":"yin",envoy:"evy",fractals:"fif","internet-property-stream":"acx",olescript:"axs","vnd.ms-outlook":"msg","vnd.ms-pkicertstore":"sst","x-compress":"z","x-perfmon":["pma","pmc","pmr","pmw"],"ynd.ms-pkipko":"pko",gzip:["gz","tgz"],"smil+xml":["smi","smil"],"vnd.debian.binary-package":["deb","udeb"],"vnd.hzn-3d-crossword":"x3d","vnd.sqlite3":["db","sqlite","sqlite3","db-wal","sqlite-wal","db-shm","sqlite-shm"],"vnd.wap.sic":"sic","vnd.wap.slc":"slc","x-krita":["kra","krz"],"x-perl":["pm","pl"],yaml:["yaml","yml"]},audio:{amr:"amr","amr-wb":"awb",annodex:"axa",basic:["au","snd"],flac:"flac",midi:["mid","midi","kar","rmi"],mpeg:["mpga","mpega","mp3","m4a","mp2a","m2a","m3a"],mpegurl:"m3u",ogg:["oga","ogg","spx"],"prs.sid":"sid","x-aiff":"aifc","x-gsm":"gsm","x-ms-wma":"wma","x-ms-wax":"wax","x-pn-realaudio":"ram","x-realaudio":"ra","x-sd2":"sd2",adpcm:"adp",mp4:"mp4a",s3m:"s3m",silk:"sil","vnd.dece.audio":["uva","uvva"],"vnd.digital-winds":"eol","vnd.dra":"dra","vnd.dts":"dts","vnd.dts.hd":"dtshd","vnd.lucent.voice":"lvp","vnd.ms-playready.media.pya":"pya","vnd.nuera.ecelp4800":"ecelp4800","vnd.nuera.ecelp7470":"ecelp7470","vnd.nuera.ecelp9600":"ecelp9600","vnd.rip":"rip",webm:"weba","x-caf":"caf","x-matroska":"mka","x-pn-realaudio-plugin":"rmp",xm:"xm",aac:"aac",aiff:["aiff","aif","aff"],opus:"opus",wav:"wav"},chemical:{"x-alchemy":"alc","x-cache":["cac","cache"],"x-cache-csf":"csf","x-cactvs-binary":["cbin","cascii","ctab"],"x-cdx":"cdx","x-chem3d":"c3d","x-cif":"cif","x-cmdf":"cmdf","x-cml":"cml","x-compass":"cpa","x-crossfire":"bsd","x-csml":["csml","csm"],"x-ctx":"ctx","x-cxf":["cxf","cef"],"x-embl-dl-nucleotide":["emb","embl"],"x-gamess-input":["inp","gam","gamin"],"x-gaussian-checkpoint":["fch","fchk"],"x-gaussian-cube":"cub","x-gaussian-input":["gau","gjc","gjf"],"x-gaussian-log":"gal","x-gcg8-sequence":"gcg","x-genbank":"gen","x-hin":"hin","x-isostar":["istr","ist"],"x-jcamp-dx":["jdx","dx"],"x-kinemage":"kin","x-macmolecule":"mcm","x-macromodel-input":"mmod","x-mdl-molfile":"mol","x-mdl-rdfile":"rd","x-mdl-rxnfile":"rxn","x-mdl-sdfile":"sd","x-mdl-tgf":"tgf","x-mmcif":"mcif","x-mol2":"mol2","x-molconn-Z":"b","x-mopac-graph":"gpt","x-mopac-input":["mop","mopcrt","zmt"],"x-mopac-out":"moo","x-ncbi-asn1":"asn","x-ncbi-asn1-ascii":["prt","ent"],"x-ncbi-asn1-binary":"val","x-rosdal":"ros","x-swissprot":"sw","x-vamas-iso14976":"vms","x-vmd":"vmd","x-xtel":"xtel","x-xyz":"xyz"},font:{otf:"otf",woff:"woff",woff2:"woff2"},image:{gif:"gif",ief:"ief",jpeg:["jpeg","jpg","jpe","jfif","jfif-tbnl","jif"],pcx:"pcx",png:"png","svg+xml":["svg","svgz"],tiff:["tiff","tif"],"vnd.djvu":["djvu","djv"],"vnd.wap.wbmp":"wbmp","x-canon-cr2":"cr2","x-canon-crw":"crw","x-cmu-raster":"ras","x-coreldraw":"cdr","x-coreldrawpattern":"pat","x-coreldrawtemplate":"cdt","x-corelphotopaint":"cpt","x-epson-erf":"erf","x-icon":"ico","x-jg":"art","x-jng":"jng","x-nikon-nef":"nef","x-olympus-orf":"orf","x-portable-anymap":"pnm","x-portable-bitmap":"pbm","x-portable-graymap":"pgm","x-portable-pixmap":"ppm","x-rgb":"rgb","x-xbitmap":"xbm","x-xpixmap":"xpm","x-xwindowdump":"xwd",bmp:"bmp",cgm:"cgm",g3fax:"g3",ktx:"ktx","prs.btif":"btif",sgi:"sgi","vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"vnd.dwg":"dwg","vnd.dxf":"dxf","vnd.fastbidsheet":"fbs","vnd.fpx":"fpx","vnd.fst":"fst","vnd.fujixerox.edmics-mmr":"mmr","vnd.fujixerox.edmics-rlc":"rlc","vnd.ms-modi":"mdi","vnd.ms-photo":"wdp","vnd.net-fpx":"npx","vnd.xiff":"xif",webp:"webp","x-3ds":"3ds","x-cmx":"cmx","x-freehand":["fh","fhc","fh4","fh5","fh7"],"x-pict":["pic","pct"],"x-tga":"tga","cis-cod":"cod",avif:"avifs",heic:["heif","heic"],pjpeg:["pjpg"],"vnd.adobe.photoshop":"psd","x-adobe-dng":"dng","x-fuji-raf":"raf","x-icns":"icns","x-kodak-dcr":"dcr","x-kodak-k25":"k25","x-kodak-kdc":"kdc","x-minolta-mrw":"mrw","x-panasonic-raw":["raw","rw2","rwl"],"x-pentax-pef":["pef","ptx"],"x-sigma-x3f":"x3f","x-sony-arw":"arw","x-sony-sr2":"sr2","x-sony-srf":"srf"},message:{rfc822:["eml","mime","mht","mhtml","nws"]},model:{iges:["igs","iges"],mesh:["msh","mesh","silo"],vrml:["wrl","vrml"],"x3d+vrml":["x3dv","x3dvz"],"x3d+xml":"x3dz","x3d+binary":["x3db","x3dbz"],"vnd.collada+xml":"dae","vnd.dwf":"dwf","vnd.gdl":"gdl","vnd.gtw":"gtw","vnd.mts":"mts","vnd.usdz+zip":"usdz","vnd.vtu":"vtu"},text:{"cache-manifest":["manifest","appcache"],calendar:["ics","icz","ifb"],css:"css",csv:"csv",h323:"323",html:["html","htm","shtml","stm"],iuls:"uls",plain:["txt","text","brf","conf","def","list","log","in","bas","diff","ksh"],richtext:"rtx",scriptlet:["sct","wsc"],texmacs:"tm","tab-separated-values":"tsv","vnd.sun.j2me.app-descriptor":"jad","vnd.wap.wml":"wml","vnd.wap.wmlscript":"wmls","x-bibtex":"bib","x-boo":"boo","x-c++hdr":["h++","hpp","hxx","hh"],"x-c++src":["c++","cpp","cxx","cc"],"x-component":"htc","x-dsrc":"d","x-diff":"patch","x-haskell":"hs","x-java":"java","x-literate-haskell":"lhs","x-moc":"moc","x-pascal":["p","pas","pp","inc"],"x-pcs-gcd":"gcd","x-python":"py","x-scala":"scala","x-setext":"etx","x-tcl":["tcl","tk"],"x-tex":["tex","ltx","sty","cls"],"x-vcalendar":"vcs","x-vcard":"vcf",n3:"n3","prs.lines.tag":"dsc",sgml:["sgml","sgm"],troff:["t","tr","roff","man","me","ms"],turtle:"ttl","uri-list":["uri","uris","urls"],vcard:"vcard","vnd.curl":"curl","vnd.curl.dcurl":"dcurl","vnd.curl.scurl":"scurl","vnd.curl.mcurl":"mcurl","vnd.dvb.subtitle":"sub","vnd.fly":"fly","vnd.fmi.flexstor":"flx","vnd.graphviz":"gv","vnd.in3d.3dml":"3dml","vnd.in3d.spot":"spot","x-asm":["s","asm"],"x-c":["c","h","dic"],"x-fortran":["f","for","f77","f90"],"x-opml":"opml","x-nfo":"nfo","x-sfv":"sfv","x-uuencode":"uu",webviewhtml:"htt",javascript:"js",json:"json",markdown:["md","markdown","mdown","markdn"],"vnd.wap.si":"si","vnd.wap.sl":"sl"},video:{avif:"avif","3gpp":"3gp",annodex:"axv",dl:"dl",dv:["dif","dv"],fli:"fli",gl:"gl",mpeg:["mpeg","mpg","mpe","m1v","m2v","mp2","mpa","mpv2"],mp4:["mp4","mp4v","mpg4"],quicktime:["qt","mov"],ogg:"ogv","vnd.mpegurl":["mxu","m4u"],"x-flv":"flv","x-la-asf":["lsf","lsx"],"x-mng":"mng","x-ms-asf":["asf","asx","asr"],"x-ms-wm":"wm","x-ms-wmv":"wmv","x-ms-wmx":"wmx","x-ms-wvx":"wvx","x-msvideo":"avi","x-sgi-movie":"movie","x-matroska":["mpv","mkv","mk3d","mks"],"3gpp2":"3g2",h261:"h261",h263:"h263",h264:"h264",jpeg:"jpgv",jpm:["jpm","jpgm"],mj2:["mj2","mjp2"],"vnd.dece.hd":["uvh","uvvh"],"vnd.dece.mobile":["uvm","uvvm"],"vnd.dece.pd":["uvp","uvvp"],"vnd.dece.sd":["uvs","uvvs"],"vnd.dece.video":["uvv","uvvv"],"vnd.dvb.file":"dvb","vnd.fvt":"fvt","vnd.ms-playready.media.pyv":"pyv","vnd.uvvu.mp4":["uvu","uvvu"],"vnd.vivo":"viv",webm:"webm","x-f4v":"f4v","x-m4v":"m4v","x-ms-vob":"vob","x-smv":"smv",mp2t:"ts"},"x-conference":{"x-cooltalk":"ice"},"x-world":{"x-vrml":["vrm","flr","wrz","xaf","xof"]}},Pe=(()=>{const e={};for(const t of n.keys(je))for(const r of n.keys(je[t])){const n=je[t][r];if("string"==typeof n)e[n]=t+"/"+r;else for(let i=0;ie;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;Oe[e]=t}class He{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^Oe[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Me extends z{constructor(){let e;const t=new He;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new p(4);new w(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function Be(e){if(typeof b==Re){const t=new p((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=Ze.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>a.round(e/1099511627776)||32,_shiftRight(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let i=0;i>>t),n=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=Ze.getPartial(i);return r.push(Ze.partial(t+s&31,t+s>32?n:r.pop(),1)),r}},Ve={bytes:{fromBits(e){const t=Ze.bitLength(e)/8,n=new p(t);let r;for(let i=0;t>i;i++)3&i||(r=e[i/4]),n[i]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new u("Cannot hash more than 2^53 - 1 bits");const s=new h(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=Ze.concat(t,[Ze.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}_S(e,t){return t<>>32-e}_block(e){const n=this,r=n._h,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let s=r[0],o=r[1],l=r[2],c=r[3],d=r[4];for(let e=0;79>=e;e++){16>e||(i[e]=n._S(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n._S(5,s)+n._f(e,o,l,c)+d+i[e]+n._key[a.floor(e/20)]|0;d=c,c=l,l=n._S(30,o),o=s,s=t}r[0]=r[0]+s|0,r[1]=r[1]+o|0,r[2]=r[2]+l|0,r[3]=r[3]+c|0,r[4]=r[4]+d|0}},Ge={getRandomValues(e){const t=new h(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(a.random()>.5?1:-1))};for(let r,i=0;inew Xe.hmacSha1(Ve.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new u("invalid params to pbkdf2");const i=1+(r>>5)<<2;let s,a,o,l,c;const d=new ArrayBuffer(i),f=new w(d);let p=0;const m=Ze;for(t=Ve.bytes.toBits(t),c=1;(i||1)>p;c++){for(s=a=e.encrypt(m.concat(t,[c])),o=1;n>o;o++)for(a=e.encrypt(a),l=0;lp&&oi&&(e=(new n).update(e).finalize());for(let t=0;i>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new u("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Ye=typeof _!=Re&&typeof _.getRandomValues==Fe,Je="Invalid password",Qe="Invalid signature",$e="zipjs-abort-check-password";function et(e){return Ye?_.getRandomValues(e):Ge.getRandomValues(e)}const tt=16,nt={name:"PBKDF2"},rt=n.assign({hash:{name:"HMAC"}},nt),it=n.assign({iterations:1e3,hash:{name:"SHA-1"}},nt),st=["deriveBits"],at=[8,12,16],ot=[16,24,32],lt=10,ct=[0,0,0,0],dt=typeof _!=Re,ft=dt&&_.subtle,ut=dt&&typeof ft!=Re,pt=Ve.bytes,mt=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],i=e.length;let s,a,o,l=1;if(4!==i&&6!==i&&8!==i)throw new u("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],s=i;4*i+28>s;s++){let e=a[s-1];(s%i==0||8===i&&s%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],s%i==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),a[s]=a[s-i]^e}for(let e=0;s;e++,s--){const t=a[3&e?s:s-4];o[e]=4>=s||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],i=[],s=[];let a,o,l,c;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let d=a=0;!n[d];d^=o||1,a=s[a]||1){let s=a^a<<1^a<<2^a<<3^a<<4;s=s>>8^255&s^99,n[d]=s,r[s]=d,c=i[l=i[o=i[d]]];let f=16843009*c^65537*l^257*o^16843008*d,u=257*i[s]^16843008*s;for(let n=0;4>n;n++)e[n][d]=u=u<<24^u>>>8,t[n][s]=f=f<<24^f>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new u("invalid aes block size");const n=this._key[t],r=n.length/4-2,i=[0,0,0,0],s=this._tables[t],a=s[0],o=s[1],l=s[2],c=s[3],d=s[4];let f,p,m,h=e[0]^n[0],w=e[t?3:1]^n[1],g=e[2]^n[2],x=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)f=a[h>>>24]^o[w>>16&255]^l[g>>8&255]^c[255&x]^n[b],p=a[w>>>24]^o[g>>16&255]^l[x>>8&255]^c[255&h]^n[b+1],m=a[g>>>24]^o[x>>16&255]^l[h>>8&255]^c[255&w]^n[b+2],x=a[x>>>24]^o[h>>16&255]^l[w>>8&255]^c[255&g]^n[b+3],b+=4,h=f,w=p,g=m;for(let e=0;4>e;e++)i[t?3&-e:e]=d[h>>>24]<<24^d[w>>16&255]<<16^d[g>>8&255]<<8^d[255&x]^n[b++],f=h,h=w,w=g,g=x,x=f;return i}},ht=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];const i=Ze.bitLength(t);for(let i=0;r>i;i+=4){this.incCounter(n);const r=e.encrypt(n);t[i]^=r[0],t[i+1]^=r[1],t[i+2]^=r[2],t[i+3]^=r[3]}return Ze.clamp(t,i)}},wt=Xe.hmacSha1;let gt=dt&&ut&&typeof ft.importKey==Fe,xt=dt&&ut&&typeof ft.deriveBits==Fe;class bt extends z{constructor({password:e,rawPassword:t,signed:r,encryptionStrength:i,checkPasswordOnly:s}){super({start(){n.assign(this,{ready:new x((e=>this.resolveReady=e)),password:kt(e,t),signed:r,strength:i-1,pending:new p})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const i=await _t(e,t,n,St(r,0,at[t])),s=St(r,at[t]);if(i[0]!=s[0]||i[1]!=s[1])throw new u(Je)})(n,i,r,St(e,0,at[i]+2)),e=St(e,at[i]+2),s?t.error(new u($e)):a()):await o;const l=new p(e.length-lt-(e.length-lt)%tt);t.enqueue(yt(n,e,l,0,lt,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:i,ready:s}=this;if(r&&n){await s;const a=St(i,0,i.length-lt),o=St(i,i.length-lt);let l=new p;if(a.length){const e=Dt(pt,a);r.update(e);const t=n.update(e);l=At(pt,t)}if(t){const e=St(At(pt,r.digest()),0,lt);for(let t=0;lt>t;t++)if(e[t]!=o[t])throw new u(Qe)}e.enqueue(l)}}})}}class vt extends z{constructor({password:e,rawPassword:t,encryptionStrength:r}){let i;super({start(){n.assign(this,{ready:new x((e=>this.resolveReady=e)),password:kt(e,t),strength:r-1,pending:new p})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:s,ready:a}=n;let o=new p;r?(o=await(async(e,t,n)=>{const r=et(new p(at[t]));return zt(r,await _t(e,t,n,r))})(n,i,r),s()):await a;const l=new p(o.length+e.length-e.length%tt);l.set(o,0),t.enqueue(yt(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:s}=this;if(n&&t){await s;let a=new p;if(r.length){const e=t.update(Dt(pt,r));n.update(e),a=At(pt,e)}i.signature=At(pt,n.digest()).slice(0,lt),e.enqueue(zt(a,i.signature))}}}),i=this}}function yt(e,t,n,r,i,s){const{ctr:a,hmac:o,pending:l}=e,c=t.length-i;let d;for(l.length&&(t=zt(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new p(t)).set(n,0)}return e})(n,c-c%tt)),d=0;c-tt>=d;d+=tt){const e=Dt(pt,St(t,d,d+tt));s&&o.update(e);const i=a.update(e);s||o.update(i),n.set(At(pt,i),d+r)}return e.pending=St(t,d),n}async function _t(e,r,i,s){e.password=null;const a=await(async(e,t,n,r,i)=>{if(!gt)return Xe.importKey(t);try{return await ft.importKey("raw",t,n,!1,i)}catch(e){return gt=!1,Xe.importKey(t)}})(0,i,rt,0,st),o=await(async(e,t,n)=>{if(!xt)return Xe.pbkdf2(t,e.salt,it.iterations,n);try{return await ft.deriveBits(e,t,n)}catch(r){return xt=!1,Xe.pbkdf2(t,e.salt,it.iterations,n)}})(n.assign({salt:s},it),a,8*(2*ot[r]+2)),l=new p(o),c=Dt(pt,St(l,0,ot[r])),d=Dt(pt,St(l,ot[r],2*ot[r])),f=St(l,2*ot[r]);return n.assign(e,{keys:{key:c,authentication:d,passwordVerification:f},ctr:new ht(new mt(c),t.from(ct)),hmac:new wt(d)}),f}function kt(e,t){return t===Ce?Be(e):t}function zt(e,t){let n=e;return e.length+t.length&&(n=new p(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function St(e,t,n){return e.subarray(t,n)}function At(e,t){return e.fromBits(t)}function Dt(e,t){return e.toBits(t)}class Ct extends z{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Wt(this,e)},transform(e,t){const n=this;if(n.password){const t=Ft(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new u(Je);e=e.subarray(12)}r?t.error(new u($e)):t.enqueue(Ft(n,e))}})}}class Rt extends z{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Wt(this,e)},transform(e,t){const n=this;let r,i;if(n.password){n.password=null;const t=et(new p(12));t[11]=n.passwordVerification,r=new p(e.length+t.length),r.set(Et(n,t),0),i=12}else r=new p(e.length),i=0;r.set(Et(n,e),i),t.enqueue(r)}})}}function Ft(e,t){const n=new p(t.length);for(let r=0;r>>24]),i=~e.crcKey2.get(),e.keys=[n,r,i]}function qt(e){const t=2|e.keys[2];return Ut(a.imul(t,1^t)>>>8)}function Ut(e){return 255&e}function Lt(e){return 4294967295&e}const It="deflate-raw";class Nt extends z{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:i,encrypted:s,useCompressionStream:a,zipCrypto:o,signed:l,level:c}=e,d=this;let f,u,p=Pt(super.readable);s&&!o||!l||(f=new Me,p=Mt(p,f)),i&&(p=Ht(p,a,{level:c,chunkSize:t},r,n)),s&&(o?p=Mt(p,new Rt(e)):(u=new vt(e),p=Mt(p,u))),Ot(d,p,(()=>{let e;s&&!o&&(e=u.signature),s&&!o||!l||(e=new w(f.value.buffer).getUint32(0)),d.signature=e}))}}class jt extends z{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:s,signed:a,signature:o,compressed:l,useCompressionStream:c}=e;let d,f,p=Pt(super.readable);s&&(i?p=Mt(p,new Ct(e)):(f=new bt(e),p=Mt(p,f))),l&&(p=Ht(p,c,{chunkSize:t},r,n)),s&&!i||!a||(d=new Me,p=Mt(p,d)),Ot(this,p,(()=>{if((!s||i)&&a){const e=new w(d.value.buffer);if(o!=e.getUint32(0,!1))throw new u(Qe)}}))}}function Pt(e){return Mt(e,new z({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function Ot(e,t,r){t=Mt(t,new z({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Ht(e,t,n,r,i){try{e=Mt(e,new(t&&r?r:i)(It,n))}catch(r){if(!t)return e;try{e=Mt(e,new i(It,n))}catch(t){return e}}return e}function Mt(e,t){return e.pipeThrough(t)}const Bt="data",Zt="close",Vt="deflate",Kt="inflate";class Gt extends z{constructor(e,t){super({});const r=this,{codecType:i}=e;let s;i.startsWith(Vt)?s=Nt:i.startsWith(Kt)&&(s=jt);let a=0,o=0;const l=new s(e,t),c=super.readable,d=new z({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:o})}}),f=new z({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=l;n.assign(r,{signature:e,outputSize:a,inputSize:o})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(d).pipeThrough(l).pipeThrough(f)})}}class Xt extends z{constructor(e){let t;super({transform:function n(r,i){if(t){const e=new p(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(i.enqueue(r.slice(0,e)),n(r.slice(e),i)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}let Yt=typeof F!=Re;class Jt{constructor(e,{readable:t,writable:r},{options:i,config:s,streamOptions:a,useWebWorkers:o,transferStreams:l,scripts:c},d){const{signal:f}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Xt(s.chunkSize)).pipeThrough(new Qt(t,a),{signal:f}),writable:r,options:n.assign({},i),scripts:c,transferStreams:l,terminate:()=>new x((t=>{const{worker:n,busy:r}=e;n?(r?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,d(e)}}),(o&&Yt?tn:en)(e,s)}}class Qt extends z{constructor(e,{onstart:t,onprogress:n,size:r,onend:i}){let s=0;super({async start(){t&&await $t(t,r)},async transform(e,t){s+=e.length,n&&await $t(n,s,r),t.enqueue(e)},async flush(){e.size=s,i&&await $t(i,s)}})}}async function $t(e,...t){try{await e(...t)}catch(e){}}function en(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},i)=>{try{const r=new Gt(e,i);await t.pipeThrough(r).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:s,inputSize:a,outputSize:o}=r;return{signature:s,inputSize:a,outputSize:o}}finally{r()}})(e,t)}}function tn(e,t){const{baseURL:r,chunkSize:i}=t;if(!e.interface){let s;try{s=((e,t,r)=>{const i={type:"module"};let s,a;typeof e==Fe&&(e=e());try{s=new f(e,t)}catch(t){s=e}if(nn)try{a=new F(s)}catch(e){nn=!1,a=new F(s,i)}else a=new F(s,i);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:i,messageId:s,result:a,error:o}=e,{reader:l,writer:c,resolveResult:d,rejectResult:f,onTaskFinished:m}=t;try{if(o){const{message:e,stack:t,code:r,name:i}=o,s=new u(e);n.assign(s,{stack:t,code:r,name:i}),h(s)}else{if("pull"==r){const{value:e,done:n}=await l.read();sn({type:Bt,value:e,done:n,messageId:s},t)}r==Bt&&(await c.ready,await c.write(new p(i)),sn({type:"ack",messageId:s},t)),r==Zt&&h(null,a)}}catch(o){sn({type:Zt,messageId:s},t),h(o)}function h(e,t){e?f(e):d(t),c&&c.releaseLock(),m()}})(e,r))),a})(e.scripts[0],r,e)}catch(n){return Yt=!1,en(e,t)}n.assign(e,{worker:s,interface:{run:()=>(async(e,t)=>{let r,i;const s=new x(((e,t)=>{r=e,i=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:i,result:s});const{readable:a,options:o,scripts:l}=e,{writable:c,closed:d}=(e=>{let t;const n=new x((e=>t=e));return{writable:new A({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),f=sn({type:"start",scripts:l.slice(1),options:o,config:t,readable:a,writable:c},e);f||n.assign(e,{reader:a.getReader(),writer:c.getWriter()});const u=await s;return f||await c.getWriter().close(),await d,u})(e,{chunkSize:i})}})}return e.interface}let nn=!0,rn=!0;function sn(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:i}){try{const{value:n,readable:r,writable:s}=e,a=[];if(n&&(n.byteLength{const n=an.find((e=>!e.busy));if(n)return dn(n),new Jt(n,e,t,h);if(an.lengthon.push({resolve:n,stream:e,workerOptions:t})))})()).run();function h(e){if(on.length){const[{resolve:t,stream:n,workerOptions:r}]=on.splice(0,1);t(new Jt(e,n,r,h))}else e.worker?(dn(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;i.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{an=an.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),r))})(e,t)):an=an.filter((t=>t!=e))}}function dn(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}function fn(e,t,r){return class{constructor(i){const s=this;var a,o;a=i,o="level",(typeof n.hasOwn===Fe?n.hasOwn(a,o):a.hasOwnProperty(o))&&i.level===Ce&&delete i.level,s.codec=new e(n.assign({},t,i)),r(s.codec,(e=>{if(s.pendingData){const t=s.pendingData;s.pendingData=new p(t.length+e.length);const{pendingData:n}=s;n.set(t,0),n.set(e,t.length)}else s.pendingData=new p(e)}))}append(e){return this.codec.push(e),i(this)}flush(){return this.codec.push(new p,!0),i(this)}};function i(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new p}}const un="HTTP error ",pn="HTTP Range not supported",mn="Writer iterator completed too soon",hn="Range",wn="GET",gn="bytes",xn=65536,bn="writable";class vn{constructor(){this.size=0}init(){this.initialized=!0}}class yn extends vn{get readable(){const e=this,{chunkSize:t=xn}=e,n=new S({start(){this.chunkOffset=0},async pull(r){const{offset:i=0,size:s,diskNumberStart:o}=n,{chunkOffset:l}=this;r.enqueue(await Yn(e,i+l,a.min(t,s-l),o)),l+t>s?r.close():this.chunkOffset+=t}});return n}}class _n extends vn{constructor(){super();const e=this,t=new A({write:t=>e.writeUint8Array(t)});n.defineProperty(e,bn,{get:()=>t})}writeUint8Array(){}}class kn extends yn{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,i=new p(t),s=4*a.floor(e/3),o=atob(r.substring(s+n,4*a.ceil((e+t)/3)+n)),l=e-3*a.floor(s/4);for(let e=l;l+t>e;e++)i[e-l]=o.charCodeAt(e);return i}}class zn extends _n{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,i=t.pending;const s=t.pending.length;for(t.pending="",n=0;n<3*a.floor((s+e.length)/3)-s;n++)i+=r.fromCharCode(e[n]);for(;n2?t.data+=k(i):t.pending=i}getData(){return this.data+k(this.pending)}}class Sn extends yn{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,i=e||rt&&(s=s.slice(e,r)),new p(s)}}class An extends vn{constructor(e){super();const t=new z,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,bn,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Dn extends Sn{constructor(e){super(new g([e],{type:"text/plain"}))}}class Cn extends An{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new x(((i,s)=>{n.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>s(t.error)}),t.readAsText(r,e)}))}}}class Rn extends yn{constructor(e,t){super(),En(this,e,t)}async init(){await Wn(this,Pn,Ln),super.init()}readUint8Array(e,t){return Tn(this,e,t,Pn,Ln)}}class Fn extends yn{constructor(e,t){super(),En(this,e,t)}async init(){await Wn(this,On,In),super.init()}readUint8Array(e,t){return Tn(this,e,t,On,In)}}function En(e,t,r){const{preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o})}async function Wn(e,t,n){const{url:r,preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:o,combineSizeEocd:l}=e;if((e=>{const{baseURL:t}=Ue(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n})(r)&&(a||o)&&(void 0===s||s)){const r=await t(wn,e,qn(e,l?-22:void 0));if(!o&&r.headers.get("Accept-Ranges")!=gn)throw new u(pn);{let s;l&&(e.eocdCache=new p(await r.arrayBuffer()));const a=r.headers.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(s=i(t))}}s===Ce?await jn(e,t,n):e.size=s}}else await jn(e,t,n)}async function Tn(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,eocdCache:o,size:l,options:c}=e;if(s||a){if(o&&t==l-_e&&n==_e)return o;const i=await r(wn,e,qn(e,t,n));if(206!=i.status)throw new u(pn);return new p(await i.arrayBuffer())}{const{data:r}=e;return r||await i(e,c),new p(e.data.subarray(t,t+n))}}function qn(e,t=0,r=1){return n.assign({},Un(e),{[hn]:gn+"="+(0>t?t:t+"-"+(t+r-1))})}function Un({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Ln(e){await Nn(e,Pn)}async function In(e){await Nn(e,On)}async function Nn(e,t){const n=await t(wn,e,Un(e));e.data=new p(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function jn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Un(e))).headers.get("Content-Length");r?e.size=i(r):await n(e,e.options)}}async function Pn(e,{options:t,url:r},i){const s=await fetch(r,n.assign({},t,{method:e,headers:i}));if(400>s.status)return s;throw 416==s.status?new u(pn):new u(un+(s.statusText||s.status))}function On(e,{url:t},r){return new x(((i,s)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),i({status:a.status,arrayBuffer:()=>a.response,headers:new l(e)})}else s(416==a.status?new u(pn):new u(un+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>s(e.detail?e.detail.error:new u("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class Hn extends yn{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Fn(e,t):new Rn(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Mn extends yn{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class Bn extends _n{init(e=0){n.assign(this,{offset:0,array:new p(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new p(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}}class Zn extends yn{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await x.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:i}=this;let s,o=n;-1==o&&(o=i.length-1);let l=e;for(;l>=i[o].size;)l-=i[o].size,o++;const c=i[o],d=c.size;if(l+t>d){const i=d-l;s=new p(t),s.set(await Yn(c,l,i)),s.set(await r.readUint8Array(e+i,t-i,n),i)}else s=await Yn(c,l,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),s}}class Vn extends vn{constructor(e,t=4294967295){super();const r=this;let i,s,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new A({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function Kn(e,t){if(!e.init||e.initialized)return x.resolve();await e.init(t)}function Gn(e){return t.isArray(e)&&(e=new Zn(e)),e instanceof S&&(e={readable:e}),e}function Xn(e){e.writable===Ce&&typeof e.next==Fe&&(e=new Vn(e)),e instanceof A&&(e={writable:e});const{writable:t}=e;return t.size===Ce&&(t.size=0),e instanceof Vn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function Yn(e,t,n,r){return e.readUint8Array(t,n,r)}const Jn=Zn,Qn=Vn,$n="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function er(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const Sr="File format is not recognized",Ar="End of central directory not found",Dr="End of Zip64 central directory locator not found",Cr="Central directory header not found",Rr="Local file header not found",Fr="Zip64 extra field not found",Er="File contains encrypted entry",Wr="Encryption method not supported",Tr="Compression method not supported",qr="Split zip file",Ur="utf-8",Lr="cp437",Ir=[[sr,pe],[ar,pe],[or,pe],[lr,me]],Nr={[me]:{getValue:Xr,bytes:4},[pe]:{getValue:Yr,bytes:8}};class jr{constructor(e,t={}){n.assign(this,{reader:Gn(e),options:t,config:Ue()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:i}=t;if(await Kn(r),r.size!==Ce&&r.readUint8Array||(r=new Sn(await new d(r.readable).blob()),await Kn(r)),r.size<_e)throw new u(Sr);r.chunkSize=Le(i);const s=await(async(e,t,n)=>{const r=new p(4);var i;return i=t,Jr(r).setUint32(0,i,!0),await s(22)||await s(a.min(1048582,n));async function s(t){const i=n-t,s=await Yn(e,i,t);for(let e=s.length-22;e>=0;e--)if(s[e]==r[0]&&s[e+1]==r[1]&&s[e+2]==r[2]&&s[e+3]==r[3])return{offset:i+e,buffer:s.slice(e,e+22).buffer}}})(r,be,r.size);if(!s)throw Xr(Jr(await Yn(r,0,4)))==we?new u(qr):new u(Ar);const o=Jr(s);let l=Xr(o,12),c=Xr(o,16);const f=s.offset,m=Gr(o,20),h=f+_e+m;let w=Gr(o,4);const g=r.lastDiskNumber||0;let x=Gr(o,6),b=Gr(o,8),v=0,y=0;if(c==pe||l==pe||b==me||x==me){const e=Jr(await Yn(r,s.offset-20,20));if(Xr(e,0)==ye){c=Yr(e,8);let t=await Yn(r,c,56,-1),n=Jr(t);const i=s.offset-20-56;if(Xr(n,0)!=ve&&c!=i){const e=c;c=i,v=c-e,t=await Yn(r,c,56,-1),n=Jr(t)}if(Xr(n,0)!=ve)throw new u(Dr);w==me&&(w=Xr(n,16)),x==me&&(x=Xr(n,20)),b==me&&(b=Yr(n,32)),l==pe&&(l=Yr(n,40)),c-=l}}if(cc)throw new u(Sr);let _=0,k=await Yn(r,c,l,x),z=Jr(k);if(l){const e=s.offset-l;if(Xr(z,_)!=xe&&c!=e){const t=c;c=e,v+=c-t,k=await Yn(r,c,l,x),z=Jr(k)}}const S=s.offset-c-(r.lastDiskOffset||0);if(l==S||0>S||(l=S,k=await Yn(r,c,l,x),z=Jr(k)),0>c||c>=r.size)throw new u(Sr);const A=Br(t,e,"filenameEncoding"),D=Br(t,e,"commentEncoding");for(let s=0;b>s;s++){const o=new Pr(r,i,t.options);if(Xr(z,_)!=xe)throw new u(Cr);Or(o,z,_+6);const l=!!o.bitFlag.languageEncodingFlag,c=_+46,d=c+o.filenameLength,f=d+o.extraFieldLength,p=Gr(z,_+4),m=!(p>>8),h=p>>8==3,w=k.subarray(c,d),g=Gr(z,_+32),x=f+g,S=k.subarray(f,x),C=l,R=l,F=Xr(z,_+38),E=m&&!(16&~Kr(z,_+38))||h&&!(16384&~(F>>16))||w.length&&47==w[w.length-1],W=h&&!(73&~(F>>16)),T=Xr(z,_+42)+v;n.assign(o,{versionMadeBy:p,msDosCompatible:m,compressedSize:0,uncompressedSize:0,commentLength:g,directory:E,offset:T,diskNumberStart:Gr(z,_+34),internalFileAttributes:Gr(z,_+36),externalFileAttributes:F,rawFilename:w,filenameUTF8:C,commentUTF8:R,rawExtraField:k.subarray(d,f),executable:W}),o.internalFileAttribute=o.internalFileAttributes,o.externalFileAttribute=o.externalFileAttributes;const q=Br(t,e,"decodeText")||er,U=C?Ur:A||Lr,L=R?Ur:D||Lr;let I=q(w,U);I===Ce&&(I=er(w,U));let N=q(S,L);N===Ce&&(N=er(S,L)),n.assign(o,{rawComment:S,filename:I,comment:N,directory:E||I.endsWith(Se)}),y=a.max(T,y),Hr(o,o,z,_+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const j=new zr(o);j.getData=(e,t)=>o.getData(e,j,t),_=x;const{onprogress:P}=e;if(P)try{await P(s+1,b,new zr(o))}catch(e){}yield j}const C=Br(t,e,"extractPrependedData"),R=Br(t,e,"extractAppendedData");return C&&(t.prependedData=y>0?await Yn(r,0,y):new p),t.comment=m?await Yn(r,f+_e,m):new p,R&&(t.appendedData=h>>8&255:m>>>24&255),signature:m,compressed:0!=c&&!_,encrypted:i.encrypted&&!_,useWebWorkers:Br(i,r,"useWebWorkers"),useCompressionStream:Br(i,r,"useCompressionStream"),transferStreams:Br(i,r,"transferStreams"),checkPasswordOnly:F},config:d,streamOptions:{signal:R,size:D,onstart:W,onprogress:T,onend:q}};let L=0;try{({outputSize:L}=await cn({readable:C,writable:E},U))}catch(e){if(!F||e.message!=$e)throw e}finally{const e=Br(i,r,"preventClose");E.size+=L,e||E.locked||await E.getWriter().close()}return F?Ce:e.getData?e.getData():E}};function Or(e,t,r){const i=e.rawBitFlag=Gr(t,r+2),s=!(1&~i),a=Xr(t,r+6);n.assign(e,{encrypted:s,version:Gr(t,r),bitFlag:{level:(6&i)>>1,dataDescriptor:!(8&~i),languageEncodingFlag:(i&ze)==ze},rawLastModDate:a,lastModDate:Zr(a),filenameLength:Gr(t,r+22),extraFieldLength:Gr(t,r+24)})}function Hr(e,t,r,i,s){const{rawExtraField:a}=t,c=t.extraField=new l,d=Jr(new p(a));let f=0;try{for(;f{t.zip64=!0;const n=Jr(e.data),r=Ir.filter((([e,n])=>t[e]==n));for(let i=0,s=0;i{const i=Jr(e.data),s=Kr(i,4);n.assign(e,{vendorVersion:Kr(i,0),vendorId:Kr(i,2),strength:s,originalCompressionMethod:r,compressionMethod:Gr(i,5)}),t.compressionMethod=e.compressionMethod})(x,t,m),t.extraFieldAES=x):t.compressionMethod=m;const b=c.get(10);b&&(((e,t)=>{const r=Jr(e.data);let i,s=4;try{for(;s{const r=Jr(e.data),i=Kr(r,0),s=[],a=[];n?(1&~i||(s.push(cr),a.push(dr)),2&~i||(s.push(fr),a.push("rawLastAccessDate")),4&~i||(s.push(ur),a.push("rawCreationDate"))):5>e.data.length||(s.push(cr),a.push(dr));let l=1;s.forEach(((n,i)=>{if(e.data.length>=l+4){const s=Xr(r,l);t[n]=e[n]=new o(1e3*s);const c=a[i];e[c]=s}l+=4}))})(v,t,s),t.extraFieldExtendedTimestamp=v);const y=c.get(6534);y&&(t.extraFieldUSDZ=y)}function Mr(e,t,r,i,s){const a=Jr(e.data),o=new He;o.append(s[r]);const l=Jr(new p(4));l.setUint32(0,o.get(),!0);const c=Xr(a,1);n.assign(e,{version:Kr(a,0),[t]:er(e.data.subarray(5)),valid:!s.bitFlag.languageEncodingFlag&&c==Xr(l,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function Br(e,t,n){return t[n]===Ce?e.options[n]:t[n]}function Zr(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Vr(e){return new o(i(e/s(1e4)-s(116444736e5)))}function Kr(e,t){return e.getUint8(t)}function Gr(e,t){return e.getUint16(t,!0)}function Xr(e,t){return e.getUint32(t,!0)}function Yr(e,t){return i(e.getBigUint64(t,!0))}function Jr(e){return new w(e.buffer)}const Qr="File already exists",$r="Zip file comment exceeds 64KB",ei="File entry comment exceeds 64KB",ti="File entry name exceeds 64KB",ni="Version exceeds 65535",ri="The strength must equal 1, 2, or 3",ii="Extra field type exceeds 65535",si="Extra field data exceeds 64KB",ai="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",oi="Undefined uncompressed size",li=new p([7,0,2,0,65,69,3,0,0]);let ci=0;const di=[];class fi{constructor(e,t={}){const r=(e=Xn(e)).availableSize!==Ce&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==Ce&&e.maxSize>0&&e.maxSize!==1/0;n.assign(this,{writer:e,addSplitZipSignature:r,options:t,config:Ue(),files:new l,filenames:new c,offset:t.offset===Ce?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new c,bufferedWrites:0})}async add(e="",r,i={}){const l=this,{pendingAddFileCalls:c,config:f}=l;let g;cidi.push(e)));try{if(e=e.trim(),l.filenames.has(e))throw new u(Qr);return l.filenames.add(e),g=(async(e,r,i,l)=>{r=r.trim(),l.directory&&!r.endsWith(Se)?r+=Se:l.directory=r.endsWith(Se);const c=mi(e,l,"encodeText",Be);let f=c(r);if(f===Ce&&(f=Be(r)),_i(f)>me)throw new u(ti);const g=l.comment||"";let b=c(g);if(b===Ce&&(b=Be(g)),_i(b)>me)throw new u(ei);const v=mi(e,l,vr,20);if(v>me)throw new u(ni);const y=mi(e,l,yr,20);if(y>me)throw new u(ni);const _=mi(e,l,cr,new o),k=mi(e,l,fr),S=mi(e,l,ur),A=mi(e,l,gr,!0);let D=mi(e,l,mr,0);0===D&&(D=mi(e,l,pr,0));let C=mi(e,l,wr,0);0===C&&(C=mi(e,l,hr,0));const R=mi(e,l,"passThrough");let F,E;R||(F=mi(e,l,"password"),E=mi(e,l,"rawPassword"));const W=mi(e,l,"encryptionStrength",3),T=mi(e,l,_r),q=mi(e,l,"extendedTimestamp",!0),U=mi(e,l,"keepOrder",!0),L=mi(e,l,"level"),I=mi(e,l,"useWebWorkers"),N=mi(e,l,"bufferedWrite"),j=mi(e,l,"dataDescriptorSignature",!1),P=mi(e,l,"signal"),O=mi(e,l,"useUnicodeFileNames",!0),H=mi(e,l,"useCompressionStream"),M=mi(e,l,"compressionMethod");let B=mi(e,l,"dataDescriptor",!0),Z=mi(e,l,xr);if(!T&&(F!==Ce||E!==Ce)&&(1>W||W>3))throw new u(ri);let V=new p;const{extraField:K}=l;if(K){let e=0,t=0;K.forEach((t=>e+=4+_i(t))),V=new p(e),K.forEach(((e,n)=>{if(n>me)throw new u(ii);if(_i(e)>me)throw new u(si);vi(V,new m([n]),t),vi(V,new m([_i(e)]),t+2),vi(V,e,t+4),t+=4+_i(e)}))}let G=0,X=0,Y=0;if(R&&(({uncompressedSize:Y}=l),Y===Ce))throw new u(oi);const J=!0===Z;i&&(i=Gn(i),await Kn(i),R?G=hi(Y):i.size===Ce?(B=!0,(Z||Z===Ce)&&(Z=!0,Y=G=4294967296)):(Y=i.size,G=hi(Y)));const{diskOffset:Q,diskNumber:$,maxSize:ee}=e.writer,te=J||Y>pe,ne=J||G>pe,re=J||e.offset+e.pendingEntriesSize-Q>pe,ie=mi(e,l,"supportZip64SplitFile",!0)&&J||$+a.ceil(e.pendingEntriesSize/ee)>me;if(re||te||ne||ie){if(!1===Z||!U)throw new u(ai);Z=!0}Z=Z||!1;const se=mi(e,l,br),{signature:ae}=l,oe=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:i,level:s,zip64:o,zipCrypto:l,useUnicodeFileNames:c,dataDescriptor:d,directory:f,rawExtraField:u,encryptionStrength:m,extendedTimestamp:w,encrypted:g}=e;let{version:x,compressionMethod:b}=e;const v=!f&&(s>0||s===Ce&&0!==b);let y,_,k,z;if(g&&!l){y=new p(_i(li)+2);const e=yi(y);gi(e,0,39169),vi(y,li,2),wi(e,8,m)}else y=new p;if(w){k=new p(9+(r?4:0)+(i?4:0));const e=yi(k);gi(e,0,ke),gi(e,2,_i(k)-4),z=1+(r?2:0)+(i?4:0),wi(e,4,z);let t=5;xi(e,t,a.floor(n.getTime()/1e3)),t+=4,r&&(xi(e,t,a.floor(r.getTime()/1e3)),t+=4),i&&xi(e,t,a.floor(i.getTime()/1e3));try{_=new p(36);const e=yi(_),t=pi(n);gi(e,0,10),gi(e,2,32),gi(e,8,1),gi(e,10,24),bi(e,12,t),bi(e,20,pi(r)||t),bi(e,28,pi(i)||t)}catch(e){_=new p}}else _=k=new p;let S=0;c&&(S|=ze),d&&(S|=8),b===Ce&&(b=v?8:0),8==b&&(s>=1&&3>s&&(S|=6),s>=3&&5>s&&(S|=1),9===s&&(S|=2)),o&&(x=x>45?x:45),g&&(S|=1,l||(x=x>51?x:51,y[9]=b,b=99));const A=new p(26),D=yi(A);gi(D,0,x),gi(D,2,S),gi(D,4,b);const C=new h(1),R=yi(C);let F;F=De>n?De:n>Ae?Ae:n,gi(R,0,(F.getHours()<<6|F.getMinutes())<<5|F.getSeconds()/2),gi(R,2,(F.getFullYear()-1980<<4|F.getMonth()+1)<<5|F.getDate());const E=C[0];xi(D,6,E),gi(D,22,_i(t));const W=_i(y,k,_,u);gi(D,24,W);const T=new p(30+_i(t)+W);return xi(yi(T),0,he),vi(T,A,4),vi(T,t,30),vi(T,y,30+_i(t)),vi(T,k,30+_i(t,y)),vi(T,_,30+_i(t,y,k)),vi(T,u,30+_i(t,y,k,_)),{localHeaderArray:T,headerArray:A,headerView:D,lastModDate:n,rawLastModDate:E,encrypted:g,compressed:v,version:x,compressionMethod:b,extraFieldExtendedTimestampFlag:z,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:_,rawExtraFieldAES:y,extraFieldLength:W}})(l=n.assign({},l,{rawFilename:f,rawComment:b,version:v,versionMadeBy:y,lastModDate:_,lastAccessDate:k,creationDate:S,rawExtraField:V,zip64:Z,zip64UncompressedSize:te,zip64CompressedSize:ne,zip64Offset:re,zip64DiskNumberStart:ie,password:F,rawPassword:E,level:H||e.config.CompressionStream!==Ce||e.config.CompressionStreamNative!==Ce?L:0,useWebWorkers:I,encryptionStrength:W,extendedTimestamp:q,zipCrypto:T,bufferedWrite:N,keepOrder:U,useUnicodeFileNames:O,dataDescriptor:B,dataDescriptorSignature:j,signal:P,msDosCompatible:A,internalFileAttribute:D,internalFileAttributes:D,externalFileAttribute:C,externalFileAttributes:C,useCompressionStream:H,passThrough:R,encrypted:!!(F&&_i(F)||E&&_i(E))||R&&se,signature:ae,compressionMethod:M})),le=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let i,s=new p,a=0;return n&&(s=new p(t?r?24:20:r?16:12),i=yi(s),r&&(a=4,xi(i,0,ge))),{dataDescriptorArray:s,dataDescriptorView:i,dataDescriptorOffset:a}})(l),ce=_i(oe.localHeaderArray,le.dataDescriptorArray);let de;X=ce+G,e.options.usdz&&(X+=X+64),e.pendingEntriesSize+=X;try{de=await(async(e,r,i,a,o)=>{const{files:l,writer:c}=e,{keepOrder:f,dataDescriptor:m,signal:h}=o,{headerInfo:g}=a,{usdz:b}=e.options,v=t.from(l.values()).pop();let y,_,k,S,A,D,C,R={};l.set(r,R);try{let t;f&&(t=v&&v.lock,R.lock=new x((e=>k=e))),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&f)&&m||b?(D=c,await F()):(D=new z,C=new d(D.readable).blob(),D.writable.size=0,y=!0,e.bufferedWrites++,await Kn(c)),await Kn(D);const{writable:g}=c;let{diskOffset:_}=c;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new p(4);xi(yi(t),0,we),await ui(g,t),e.offset+=4}b&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:r,extraFieldLength:i}=n,s=yi(r),a=64-(t+_i(r))%64;4>a&&(a+=64);const o=new p(a),l=yi(o);gi(l,0,6534),gi(l,2,a-2);const c=r;n.localHeaderArray=r=new p(_i(c)+a),vi(r,c),vi(r,o,_i(c)),s=yi(r),gi(s,28,i+a),e.metadataSize+=a})(a,e.offset-_),y||(await t,await E(g));const{diskNumber:W}=c;if(A=!0,R.diskNumberStart=W,R=await(async(e,t,{diskNumberStart:r,lock:i},a,o,l)=>{const{headerInfo:c,dataDescriptorInfo:d,metadataSize:f}=a,{localHeaderArray:u,headerArray:m,lastModDate:h,rawLastModDate:w,encrypted:g,compressed:x,version:b,compressionMethod:v,rawExtraFieldExtendedTimestamp:y,extraFieldExtendedTimestampFlag:_,rawExtraFieldNTFS:k,rawExtraFieldAES:z}=c,{dataDescriptorArray:S}=d,{rawFilename:A,lastAccessDate:D,creationDate:C,password:R,rawPassword:F,level:E,zip64:W,zip64UncompressedSize:T,zip64CompressedSize:q,zip64Offset:U,zip64DiskNumberStart:L,zipCrypto:I,dataDescriptor:N,directory:j,versionMadeBy:P,rawComment:O,rawExtraField:H,useWebWorkers:M,onstart:B,onprogress:Z,onend:V,signal:K,encryptionStrength:G,extendedTimestamp:X,msDosCompatible:Y,internalFileAttributes:J,externalFileAttributes:Q,useCompressionStream:$,passThrough:ee}=l,te={lock:i,versionMadeBy:P,zip64:W,directory:!!j,filenameUTF8:!0,rawFilename:A,commentUTF8:!0,rawComment:O,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:k,rawExtraFieldAES:z,rawExtraField:H,extendedTimestamp:X,msDosCompatible:Y,internalFileAttributes:J,externalFileAttributes:Q,diskNumberStart:r};let{signature:ne,uncompressedSize:re}=l,ie=0;ee||(re=0);const{writable:se}=t;if(e){e.chunkSize=Le(o),await ui(se,u);const t=e.readable,n=t.size=e.size,r={options:{codecType:Vt,level:E,rawPassword:F,password:R,encryptionStrength:G,zipCrypto:g&&I,passwordVerification:g&&I&&w>>8&255,signed:!ee,compressed:x&&!ee,encrypted:g&&!ee,useWebWorkers:M,useCompressionStream:$,transferStreams:!1},config:o,streamOptions:{signal:K,size:n,onstart:B,onprogress:Z,onend:V}},i=await cn({readable:t,writable:se},r);ie=i.outputSize,ee||(re=i.inputSize,ne=i.signature),se.size+=re}else await ui(se,u);let ae;if(W){let e=4;T&&(e+=8),q&&(e+=8),U&&(e+=8),L&&(e+=4),ae=new p(e)}else ae=new p;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:i,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:d}=o,{dataDescriptorView:f,dataDescriptorOffset:u}=l,{zip64:p,zip64UncompressedSize:m,zip64CompressedSize:h,zipCrypto:w,dataDescriptor:g}=t;if(d&&!w||n===Ce||(xi(c,10,n),g&&xi(f,u,n)),p){const e=yi(r);gi(e,0,1),gi(e,2,_i(r)-4);let t=4;m&&(xi(c,18,pe),bi(e,t,s(a)),t+=8),h&&(xi(c,14,pe),bi(e,t,s(i))),g&&(bi(f,u+4,s(i)),bi(f,u+12,s(a)))}else xi(c,14,i),xi(c,18,a),g&&(xi(f,u+4,i),xi(f,u+8,a))})({signature:ne,rawExtraFieldZip64:ae,compressedSize:ie,uncompressedSize:re,headerInfo:c,dataDescriptorInfo:d},l),N&&await ui(se,S),n.assign(te,{uncompressedSize:re,compressedSize:ie,lastModDate:h,rawLastModDate:w,creationDate:C,lastAccessDate:D,encrypted:g,zipCrypto:I,size:f+ie,compressionMethod:v,version:b,headerArray:m,signature:ne,rawExtraFieldZip64:ae,extraFieldExtendedTimestampFlag:_,zip64UncompressedSize:T,zip64CompressedSize:q,zip64Offset:U,zip64DiskNumberStart:L}),te})(i,D,R,a,e.config,o),A=!1,l.set(r,R),R.filename=r,y){await D.writable.getWriter().close();let e=await C;await t,await F(),S=!0,m||(e=await(async(e,t,n,{zipCrypto:r})=>{let i;i=await t.slice(0,26).arrayBuffer(),26!=i.byteLength&&(i=i.slice(0,26));const s=new w(i);return e.encrypted&&!r||xi(s,14,e.signature),e.zip64?(xi(s,18,pe),xi(s,22,pe)):(xi(s,18,e.compressedSize),xi(s,22,e.uncompressedSize)),await ui(n,new p(i)),t.slice(i.byteLength)})(R,e,g,o)),await E(g),R.diskNumberStart=c.diskNumber,_=c.diskOffset,await e.stream().pipeTo(g,{preventClose:!0,preventAbort:!0,signal:h}),g.size+=e.size,S=!1}if(R.offset=e.offset-_,R.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:i}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,d=yi(n);let f=4;a&&(f+=8),o&&(f+=8),l&&(bi(d,f,s(r)),f+=8),c&&xi(d,f,i)})(R,o);else if(R.offset>pe)throw new u(ai);return e.offset+=R.size,R}catch(t){if(y&&S||!y&&A){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}y?e.offset+=D.writable.size:e.offset=D.writable.size}throw l.delete(r),t}finally{y&&e.bufferedWrites--,k&&k(),_&&_()}async function F(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new x((t=>_=()=>{e.writerLocked=!1,t()})),await t}async function E(e){_i(g.localHeaderArray)>c.availableSize&&(c.availableSize=0,await ui(e,new p))}})(e,r,i,{headerInfo:oe,dataDescriptorInfo:le,metadataSize:ce},l)}finally{e.pendingEntriesSize-=X}return n.assign(de,{name:r,comment:g,extraField:K}),new zr(de)})(l,e,r,i),c.add(g),await g}catch(t){throw l.filenames.delete(e),t}finally{c.delete(g);const e=di.shift();e?e():ci--}}async close(e=new p,n={}){const{pendingAddFileCalls:r,writer:i}=this,{writable:o}=i;for(;r.size;)await x.allSettled(t.from(r));return await(async(e,n,r)=>{const{files:i,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:d}=o,f=0,m=0,h=e.offset-l,w=i.size;for(const[,e]of i){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:r,rawComment:i,rawExtraFieldNTFS:s,rawExtraField:o,extendedTimestamp:l,extraFieldExtendedTimestampFlag:c,lastModDate:d}=e;let f;if(l){f=new p(9);const e=yi(f);gi(e,0,ke),gi(e,2,5),wi(e,4,c),xi(e,5,a.floor(d.getTime()/1e3))}else f=new p;e.rawExtraFieldCDExtendedTimestamp=f,m+=46+_i(t,i,n,r,s,f,o)}const g=new p(m),x=yi(g);await Kn(o);let b=0;for(const[e,n]of t.from(i.values()).entries()){const{offset:t,rawFilename:s,rawExtraFieldZip64:a,rawExtraFieldAES:l,rawExtraFieldCDExtendedTimestamp:d,rawExtraFieldNTFS:u,rawExtraField:p,rawComment:m,versionMadeBy:h,headerArray:w,directory:v,zip64:y,zip64UncompressedSize:_,zip64CompressedSize:k,zip64DiskNumberStart:z,zip64Offset:S,msDosCompatible:A,internalFileAttributes:D,externalFileAttributes:C,diskNumberStart:R,uncompressedSize:F,compressedSize:E}=n,W=_i(a,l,d,u,p);xi(x,f,xe),gi(x,f+4,h);const T=yi(w);_||xi(T,18,F),k||xi(T,14,E),vi(g,w,f+6),gi(x,f+30,W),gi(x,f+32,_i(m)),gi(x,f+34,y&&z?me:R),gi(x,f+36,D),C?xi(x,f+38,C):v&&A&&wi(x,f+38,16),xi(x,f+42,y&&S?pe:t),vi(g,s,f+46),vi(g,a,f+46+_i(s)),vi(g,l,f+46+_i(s,a)),vi(g,d,f+46+_i(s,a,l)),vi(g,u,f+46+_i(s,a,l,d)),vi(g,p,f+46+_i(s,a,l,d,u)),vi(g,m,f+46+_i(s)+W);const q=46+_i(s,m)+W;if(f-b>o.availableSize&&(o.availableSize=0,await ui(c,g.slice(b,f)),b=f),f+=q,r.onprogress)try{await r.onprogress(e+1,i.size,new zr(n))}catch(e){}}await ui(c,b?g.slice(b):g);let v=o.diskNumber;const{availableSize:y}=o;_e>y&&v++;let _=mi(e,r,xr);if(h>pe||m>pe||w>me||v>me){if(!1===_)throw new u(ai);_=!0}const k=new p(_?98:_e),z=yi(k);f=0,_&&(xi(z,0,ve),bi(z,4,s(44)),gi(z,12,45),gi(z,14,45),xi(z,16,v),xi(z,20,d),bi(z,24,s(w)),bi(z,32,s(w)),bi(z,40,s(m)),bi(z,48,s(h)),xi(z,56,ye),bi(z,64,s(h)+s(m)),xi(z,72,v+1),mi(e,r,"supportZip64SplitFile",!0)&&(v=me,d=me),w=me,h=pe,m=pe,f+=76),xi(z,f,be),gi(z,f+4,v),gi(z,f+6,d),gi(z,f+8,w),gi(z,f+10,w),xi(z,f+12,m),xi(z,f+16,h);const S=_i(n);if(S){if(S>me)throw new u($r);gi(z,f+20,S)}await ui(c,k),S&&await ui(c,n)})(this,e,n),mi(this,n,"preventClose")||await o.getWriter().close(),i.getData?i.getData():o}}async function ui(e,t){const n=e.getWriter();try{await n.ready,e.size+=_i(t),await n.write(t)}finally{n.releaseLock()}}function pi(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function mi(e,t,n,r){const i=t[n]===Ce?e.options[n]:t[n];return i===Ce?r:i}function hi(e){return e+5*(a.floor(e/16383)+1)}function wi(e,t,n){e.setUint8(t,n)}function gi(e,t,n){e.setUint16(t,n,!0)}function xi(e,t,n){e.setUint32(t,n,!0)}function bi(e,t,n){e.setBigUint64(t,n,!0)}function vi(e,t,n){e.set(t,n)}function yi(e){return new w(e.buffer)}function _i(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}class ki{constructor(e,t,r,i){const s=this;if(e.root&&i&&i.getChildByName(t))throw new u("Entry filename already exists");r||(r={}),n.assign(s,{fs:e,name:t,data:r.data,options:r.options,id:e.entries.length,parent:i,children:[],uncompressedSize:r.uncompressedSize||0,passThrough:r.passThrough}),e.entries.push(s),i&&s.parent.children.push(s)}moveTo(e){this.fs.move(this,e)}getFullname(){return this.getRelativeName()}getRelativeName(e=this.fs.root){let t=this.name,n=this.parent;for(;n&&n!=e;)t=(n.name?n.name+"/":"")+t,n=n.parent;return t}isDescendantOf(e){let t=this.parent;for(;t&&t.id!=e.id;)t=t.parent;return!!t}rename(e){const t=this.parent;if(t&&t.getChildByName(e))throw new u("Entry filename already exists");this.name=e}}class zi extends ki{constructor(e,t,n,r){super(e,t,n,r);const i=this;i.Reader=n.Reader,i.Writer=n.Writer,n.getData&&(i.getData=n.getData)}clone(){return new zi(this.fs,this.name,this)}async getData(e,t={}){const n=this;if(!e||e.constructor==n.Writer&&n.data)return n.data;{const r=n.reader=new n.Reader(n.data,t),i=n.data?n.data.uncompressedSize:r.size;await x.all([Kn(r),Kn(e,i)]);const s=r.readable;return s.size=n.uncompressedSize=r.size,await s.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return this.data.encrypted}async checkPassword(e,t={}){const n=this;if(!n.isPasswordProtected())return!0;t.password=e,t.checkPasswordOnly=!0;try{return await n.data.getData(null,t),!0}catch(e){if(e.message==Je)return!1;throw e}}getText(e,t){return this.getData(new Cn(e),t)}getBlob(e,t){return this.getData(new An(e),t)}getData64URI(e,t){return this.getData(new zn(e),t)}getUint8Array(e){return this.getData(new Bn,e)}getWritable(e=new A,t){return this.getData({writable:e},t)}replaceBlob(e){n.assign(this,{data:e,Reader:Sn,Writer:An,reader:null})}replaceText(e){n.assign(this,{data:e,Reader:Dn,Writer:Cn,reader:null})}replaceData64URI(e){n.assign(this,{data:e,Reader:kn,Writer:zn,reader:null})}replaceUint8Array(e){n.assign(this,{data:e,Reader:Mn,Writer:Bn,reader:null})}replaceReadable(e){n.assign(this,{data:null,Reader:()=>({readable:e}),Writer:null,reader:null})}}class Si extends ki{constructor(e,t,n,r){super(e,t,n,r),this.directory=!0}clone(e){const t=this,n=new Si(t.fs,t.name);return e&&(n.children=t.children.map((t=>{const r=t.clone(e);return r.parent=n,r}))),n}addDirectory(e,t){return Ti(this,e,{options:t},!0)}addText(e,t,n={}){return Ti(this,e,{data:t,Reader:Dn,Writer:Cn,options:n,uncompressedSize:t.length})}addBlob(e,t,n={}){return Ti(this,e,{data:t,Reader:Sn,Writer:An,options:n,uncompressedSize:t.size})}addData64URI(e,t,n={}){let r=t.length;for(;"="==t.charAt(r-1);)r--;const i=t.indexOf(",")+1;return Ti(this,e,{data:t,Reader:kn,Writer:zn,options:n,uncompressedSize:a.floor(.75*(r-i))})}addUint8Array(e,t,n={}){return Ti(this,e,{data:t,Reader:Mn,Writer:Bn,options:n,uncompressedSize:t.length})}addHttpContent(e,t,n={}){return Ti(this,e,{data:t,Reader:class extends Hn{constructor(e){super(e,n)}},options:n})}addReadable(e,t,n={}){return Ti(this,e,{Reader:()=>({readable:t}),options:n})}addFileSystemEntry(e,t={}){return Fi(this,e,t)}addFileSystemHandle(e,t={}){return Fi(this,e,t)}addFile(e,t={}){return t.lastModDate||(t.lastModDate=new o(e.lastModified)),Ti(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}addData(e,t){return Ti(this,e,t)}importBlob(e,t){return this.importZip(new Sn(e),t)}importData64URI(e,t){return this.importZip(new kn(e),t)}importUint8Array(e,t){return this.importZip(new Mn(e),t)}importHttpContent(e,t){return this.importZip(new Hn(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new An(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new zn(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new Bn,e)}async exportWritable(e=new A,t={}){return await this.exportZip({writable:e},t),e}async importZip(e,t={}){await Kn(e);const r=new jr(e,t),i=[],s=await r.getEntries();for(const e of s){let r=this;try{const s=e.filename.split("/"),a=s.pop();s.forEach(((t,n)=>{const a=r;r=r.getChildByName(t),r||(r=new Si(this.fs,t,{data:n==s.length-1?e:null},a),i.push(r))})),e.directory||i.push(Ti(r,a,{data:e,Reader:Di(n.assign({},t)),uncompressedSize:e.uncompressedSize,passThrough:t.passThrough}))}catch(t){try{t.cause={entry:e}}catch(e){}throw t}}return i}async exportZip(e,r){const i=this;r.bufferedWrite===Ce&&(r.bufferedWrite=!0),await x.all([Ci(i,r.readerOptions),Kn(e)]);const s=new fi(e,r);return await(async(e,r,i,s)=>{const a=r,o=new l;await async function e(r,l){async function c(l){const c=s.relativePath?l.getRelativeName(a):l.getFullname(),d=l.options||{};let f={};if(l.data instanceof zr){const{externalFileAttributes:e,versionMadeBy:t,comment:r,lastModDate:i,creationDate:s,lastAccessDate:a,uncompressedSize:o,encrypted:c,zipCrypto:d,signature:u,compressionMethod:p,extraFieldAES:m}=l.data;if(f={externalFileAttributes:e,versionMadeBy:t,comment:r,lastModDate:i,creationDate:s,lastAccessDate:a},l.passThrough){let e,t;0===p&&(e=0),m&&(t=m.strength),f=n.assign(f,{passThrough:!0,encrypted:c,zipCrypto:d,signature:u,uncompressedSize:o,level:e,encryptionStrength:t,compressionMethod:p})}}await r.add(c,l.reader,n.assign({directory:l.directory},n.assign({},s,f,d,{onprogress:async e=>{if(s.onprogress){o.set(c,e);try{await s.onprogress(t.from(o.values()).reduce(((e,t)=>e+t)),i)}catch(e){}}}}))),await e(r,l)}await(async()=>{if(s.bufferedWrite)await x.allSettled(l.children.map(c));else for(const e of l.children)await c(e)})()}(e,r)})(s,i,(e=>{let t=0;return e.forEach((function e(n){t+=n.uncompressedSize,n.children&&n.children.forEach(e)})),t})([i]),r),await s.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let n=0;nn.checkPassword(e,t))))).includes(!1)}}const Ai={FS:class{constructor(){Wi(this)}get children(){return this.root.children}remove(e){Ri(e),this.entries[e.id]=null}move(e,t){if(e==this.root)throw new u("Root directory cannot be moved");if(!t.directory)throw new u("Target entry is not a directory");if(t.isDescendantOf(e))throw new u("Entry is a ancestor of target entry");if(e!=t){if(t.getChildByName(e.name))throw new u("Entry filename already exists");Ri(e),e.parent=t,t.children.push(e)}}find(e){const t=e.split("/");let n=this.root;for(let e=0;n&&e{if(e.directory)await Ci(e,t);else{const n=e.reader=new e.Reader(e.data,t);try{await Kn(n)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch(e){}throw t}e.uncompressedSize=n.size}})))}function Ri(e){if(e.parent){const t=e.parent.children;t.forEach(((n,r)=>{n.id==e.id&&t.splice(r,1)}))}}function Fi(e,t,r){return async function e(t,i,s){if(i)try{if((i.isFile||i.isDirectory)&&(i=await Ei(i)),"file"==i.kind){const e=await i.getFile();s.push(t.addData(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:n.assign({},{lastModDate:new o(e.lastModified)},r),uncompressedSize:e.size}))}else if("directory"==i.kind){const n=t.addDirectory(i.name);s.push(n);for await(const t of i.values())await e(n,t,s)}}catch(e){const t=e.message+(i?" ("+i.name+")":"");throw new u(t)}return s}(e,t,[])}async function Ei(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new x(((t,n)=>e.file(t,n)))),e.isDirectory){t.kind="directory";const n=await(async e=>{const t=[];function n(e,r,i){e.readEntries((async s=>{if(s.length){for(const e of s)t.push(await Ei(e));n(e,r,i)}else r(t)}),i)}return await new x(((t,r)=>n(e.createReader(),t,r))),{[Symbol.iterator](){let e=0;return{next(){const n={value:t[e],done:e===t.length};return e++,n}}}}})(e);t.values=()=>n}return t}function Wi(e){e.entries=[],e.root=new Si(e)}function Ti(e,t,n,r){if(e.directory)return r?new Si(e.fs,t,n,e):new zi(e.fs,t,n,e);throw new u("Parent entry is not a directory")}let qi;try{qi=void 0===y&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===y?location.href:E&&"SCRIPT"===E.tagName.toUpperCase()&&E.src||new f("zip-fs-full.min.js",y.baseURI).href}catch(e){}Ie({baseURL:qi}),((e,t={})=>{const n='const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self,k=void 0,v="undefined",S="function";class z{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const C=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;C[e]=t}class x{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^C[255&(t^e[n])];this.t=t}get(){return~this.t}}class A extends p{constructor(){let e;const t=new x;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const _={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=_.i(n);return 32===r?e.concat(t):_.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+_.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=_.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=_.i(s);return r.push(_.h(t+i&31,t+i>32?n:r.pop(),1)),r}},I={bytes:{p(e){const t=_.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},m(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}P(){const e=this;let t=e.C;const n=e.S;t=_.concat(t,[_.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.I(t.splice(0,16));return e.reset(),n}D(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}V(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.V(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.V(5,o)+n.D(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.V(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},D={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew V.R(I.bytes.m(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=_;for(t=I.bytes.m(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).P());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.U[0].update(r[0]),t.U[1].update(r[1]),t.K=new n(t.U[0])}reset(){const e=this;e.K=new e.M(e.U[0]),e.N=!1}update(e){this.N=!0,this.K.update(e)}digest(){const e=this,t=e.K.P(),n=new e.M(e.U[1]).update(t).P();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},R=typeof h!=v&&typeof h.getRandomValues==S,B="Invalid password",E="Invalid signature",M="zipjs-abort-check-password";function U(e){return R?h.getRandomValues(e):D.getRandomValues(e)}const K=16,N={name:"PBKDF2"},O=t.assign({hash:{name:"HMAC"}},N),T=t.assign({iterations:1e3,hash:{name:"SHA-1"}},N),W=["deriveBits"],j=[8,12,16],H=[16,24,32],L=10,F=[0,0,0,0],q=typeof h!=v,G=q&&h.subtle,J=q&&typeof G!=v,Q=I.bytes,X=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},Y=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=_.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return _.u(t,s)}},Z=V.R;let $=q&&J&&typeof G.importKey==S,ee=q&&J&&typeof G.deriveBits==S;class te extends p{constructor({password:e,rawPassword:n,signed:r,encryptionStrength:o,checkPasswordOnly:c}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),signed:r,X:o-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:o,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await se(e,t,n,ce(r,0,j[t])),o=ce(r,j[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(B)})(n,o,r,ce(e,0,j[o]+2)),e=ce(e,j[o]+2),c?t.error(new s(M)):f()):await a;const l=new i(e.length-L-(e.length-L)%K);t.enqueue(re(n,e,l,0,L,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;if(r&&n){await c;const f=ce(o,0,o.length-L),a=ce(o,o.length-L);let l=new i;if(f.length){const e=ae(Q,f);r.update(e);const t=n.update(e);l=fe(Q,t)}if(t){const e=ce(fe(Q,r.digest()),0,L);for(let t=0;L>t;t++)if(e[t]!=a[t])throw new s(E)}e.enqueue(l)}}})}}class ne extends p{constructor({password:e,rawPassword:n,encryptionStrength:r}){let s;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=U(new i(j[t]));return oe(r,await se(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%K);a.set(f,0),t.enqueue(re(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:r,ready:o}=this;if(n&&t){await o;let c=new i;if(r.length){const e=t.update(ae(Q,r));n.update(e),c=fe(Q,e)}s.signature=fe(Q,n.digest()).slice(0,L),e.enqueue(oe(c,s.signature))}}}),s=this}}function re(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=oe(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%K)),u=0;l-K>=u;u+=K){const e=ae(Q,ce(t,u,u+K));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(fe(Q,s),u+r)}return e.pending=ce(t,u),n}async function se(n,r,s,o){n.password=null;const c=await(async(e,t,n,r,s)=>{if(!$)return V.importKey(t);try{return await G.importKey("raw",t,n,!1,s)}catch(e){return $=!1,V.importKey(t)}})(0,s,O,0,W),f=await(async(e,t,n)=>{if(!ee)return V.B(t,e.salt,T.iterations,n);try{return await G.deriveBits(e,t,n)}catch(r){return ee=!1,V.B(t,e.salt,T.iterations,n)}})(t.assign({salt:o},T),c,8*(2*H[r]+2)),a=new i(f),l=ae(Q,ce(a,0,H[r])),u=ae(Q,ce(a,H[r],2*H[r])),w=ce(a,2*H[r]);return t.assign(n,{keys:{key:l,$:u,passwordVerification:w},Y:new Y(new X(l),e.from(F)),Z:new Z(u)}),w}function ie(e,t){return t===k?(e=>{if(typeof w==v){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),i=~e.te.get(),e.keys=[n,s,i]}function ye(e){const t=2|e.keys[2];return me(r.imul(t,1^t)>>>8)}function me(e){return 255&e}function be(e){return 4294967295&e}const ge="deflate-raw";class ke extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=Se(super.readable);i&&!c||!f||(w=new A,d=xe(d,w)),s&&(d=Ce(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=xe(d,new ue(e)):(h=new ne(e),d=xe(d,h))),ze(u,d,(()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ve extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=Se(super.readable);o&&(i?d=xe(d,new le(e)):(h=new te(e),d=xe(d,h))),a&&(d=Ce(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new A,d=xe(d,w)),ze(this,d,(()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(E)}}))}}function Se(e){return xe(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ze(e,n,r){n=xe(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Ce(e,t,n,r,s){try{e=xe(e,new(t&&r?r:s)(ge,n))}catch(r){if(!t)return e;try{e=xe(e,new s(ge,n))}catch(t){return e}}return e}function xe(e,t){return e.pipeThrough(t)}const Ae="data",_e="close";class Ie extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=ke:s.startsWith("inflate")&&(i=ve);let o=0,c=0;const f=new i(e,n),a=super.readable,l=new p({transform(e,t){e&&e.length&&(c+=e.length,t.enqueue(e))},flush(){t.assign(r,{inputSize:c})}}),u=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=f;t.assign(r,{signature:e,outputSize:o,inputSize:c})}});t.defineProperty(r,"readable",{get:()=>a.pipeThrough(l).pipeThrough(f).pipeThrough(u)})}}class Pe extends p{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new i(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}const De=new a,Ve=new a;let Re,Be=0,Ee=!0;async function Me(e){try{const{options:t,scripts:r,config:s}=e;if(r&&r.length)try{Ee?importScripts.apply(k,r):await Ue(r)}catch(e){Ee=!1,await Ue(r)}self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new z(self.Deflate)),self.Inflate&&(s.DecompressionStream=new z(self.Inflate));const i={highWaterMark:1},o=e.readable||new y({async pull(e){const t=new u((e=>De.set(Be,e)));Ke({type:"pull",messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ve.set(Be,t),Ke({type:Ae,value:e,messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new Ie(t,s);Re=new AbortController;const{signal:a}=Re;await o.pipeThrough(f).pipeThrough(new Pe(s.chunkSize)).pipeTo(c,{signal:a,preventClose:!0,preventAbort:!0}),await c.getWriter().close();const{signature:l,inputSize:w,outputSize:h}=f;Ke({type:_e,result:{signature:l,inputSize:w,outputSize:h}})}catch(e){Ne(e)}}async function Ue(e){for(const t of e)await import(t)}function Ke(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Ne(e=new s("Unknown error")){const{message:t,stack:n,code:r,name:i}=e;d({error:{message:t,stack:n,code:r,name:i}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&Me(e),t==Ae){const e=De.get(n);De.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ve.get(n);Ve.delete(n),e()}t==_e&&Re.abort()}catch(e){Ne(e)}}));const Oe=-2;function Te(t){return We(t.map((([t,n])=>new e(t).fill(n,0,t))))}function We(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?We(n):n)),[])}const je=[0,1,2,3].concat(...Te([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function He(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Le(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}He.ge=[0,1,2,3,4,5,6,7].concat(...Te([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),He.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],He.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],He.Se=e=>256>e?je[e]:je[256+(e>>>7)],He.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],He.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],He.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],He.Ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Fe=Te([[144,8],[112,9],[24,7],[8,8]]);Le._e=We([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Fe[t]])));const qe=Te([[30,5]]);function Ge(e,t,n,r,s){const i=this;i.Ie=e,i.Pe=t,i.De=n,i.Ve=r,i.Re=s}Le.Be=We([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,qe[t]]))),Le.Ee=new Le(Le._e,He.ze,257,286,15),Le.Me=new Le(Le.Be,He.Ce,0,30,15),Le.Ue=new Le(null,He.xe,0,19,7);const Je=[new Ge(0,0,0,0,0),new Ge(4,4,8,4,1),new Ge(4,5,16,8,1),new Ge(4,6,32,32,1),new Ge(4,4,16,16,2),new Ge(8,16,32,32,2),new Ge(8,16,128,128,2),new Ge(8,32,128,256,2),new Ge(32,128,258,1024,2),new Ge(32,258,258,4096,2)],Qe=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Xe=113,Ye=666,Ze=262;function $e(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function et(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,A,_,I,P,D,V,R,B,E,M,U;const K=new He,N=new He,O=new He;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)U[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?U[2*n]+=i:0!==n?(n!=r&&U[2*n]++,U[32]++):i>10?U[36]++:U[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ke[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,U)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,U),o--),Y(16,U),X(o-3,2)):o>10?(Y(18,U),X(o-11,7)):(Y(17,U),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(He.ge[n]+256+1)]++,M[2*He.Se(t)]++),!(8191&W)&&D>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+He.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ke.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;D>0?(K.ne(e),N.ne(e),o=(()=>{let t;for(G(E,K.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===U[2*He.Ae[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Le._e,Le.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(U[2*He.Ae[r]+1],3);Z(E,e-1),Z(M,t-1)})(K.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-A-C,0===s&&0===C&&0===A)s=f;else if(-1==s)s--;else if(C>=f+f-Ze){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+A,s),A+=e,3>A||(p=255&u[C],p=(p<A&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=_;const o=C>f-Ze?C-(f-Ze):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>_||(r>>=2),c>A&&(c=A);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>A?A:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],U=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Oe:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=Xe,c=0,K.re=E,K.ie=Le.Ee,N.re=M,N.ie=Le.Me,O.re=U,O.ie=Le.Ue,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve,C=0,k=0,A=0,v=_=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=Xe&&n!=Ye?Oe:(e.Oe=null,e.Ne=null,e.Ke=null,d=null,h=null,u=null,e.Fe=null,n==Xe?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Oe:(Je[D].Re!=Je[t].Re&&0!==e.qe&&(r=e.Ye(1)),D!=t&&(D=t,P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve),V=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Oe;if(3>i)return 0;for(i>f-Ze&&(i=f-Ze,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Oe;if(!r.$e||!r.et&&0!==r.We||n==Ye&&4!=i)return r.Le=Qe[4],Oe;if(0===r.tt)return r.Le=Qe[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(D-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=Xe,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=Qe[7],-5;if(n==Ye&&0!==t.We)return r.Le=Qe[7],-5;if(0!==t.We||0!==A||0!=i&&n!=Ye){switch(R=-1,Je[D].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=A){if(ie(),0===A&&0==e)return 0;if(0===A)break}if(C+=A,A=0,n=k+r,(0===C||C>=n)&&(A=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Ze&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<f-Ze||2!=V&&(v=oe(r)),3>v)n=ee(0,255&u[C]),A--,C++;else if(n=ee(C-x,v-3),A-=v,v>P||3>A)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<_&&f-Ze>=(C-s&65535)&&(2!=V&&(v=oe(s)),5>=v&&(1==V||3==v&&C-x>4096)&&(v=2)),3>_||v>_)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,A--,0===t.tt)return 0}else z=1,C++,A--;else{r=C+A-3,n=ee(C-1-S,_-3),A-=_-1,_-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Le._e),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function tt(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function nt(e){const t=new tt,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}tt.prototype={He(e,t){const n=this;return n.Fe=new et,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Oe},Qe(){const e=this;if(!e.Fe)return Oe;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Oe},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Oe},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ke.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const rt=-2,st=-3,it=-5,ot=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],ct=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ft=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],at=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],lt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ut=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],wt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ht(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,A,_,I,P;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return st;if(0>(I-=n[g]))return st;for(n[g]+=I,i[1]=k=0,C=1,_=2;0!=--g;)i[_]=k+=n[C],_++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>A+S;){if(b++,A+=S,P=m-A,P=P>S?S:P,(y=1<<(k=v-A))>p+1&&(y-=p+1,_=v,P>k))for(;++kn[++_];)y-=n[_];if(P=1<1440)return st;s[b]=x=h[0],h[0]+=P,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>A-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-A,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>A;P>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<c;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==st?f.Le="oversubscribed dynamic bit lengths tree":a!=it&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=st),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,at,lt,a,i,u,e,t),0!=h||0===i[0]?(h==st?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=st),h):(c(288),h=o(s,n,r,0,ut,wt,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==st?w.Le="oversubscribed distance tree":h==it?(w.Le="incomplete distance tree",h=st):-4!=h&&(w.Le="empty distance tree with lengths",h=st),h):0)}}function dt(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15,k=a[z+2]+(w&ot[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(64&u)return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st;f+=a[z+2],f+=w&ot[u],z=3*(l+f),u=a[z]}break}if(64&u)return 32&u?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st);if(f+=a[z+2],f+=w&ot[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,A=0,_=0;for(_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,m=p(u,w,r,h,s,d,e,y),_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=SA;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>>=n[g+1],A-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(16&k){a=15&k,i=n[g+2],t=2;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}if(32&k){t=7;break}return t=9,y.Le="invalid literal/length code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 2:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=n[g+1],A-=n[g+1],k=n[g],16&k){a=15&k,l=n[g+2],t=4;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 4:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(A-=8,v++,_--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ht.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=ct,r[0]=ft,0);const pt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function yt(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new dt;let h=0,d=new f(4320);const p=new ht;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ht.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[pt[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==st&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&ot[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,A=[],_=[],I=[],P=[],A[0]=9,_[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,A,_,I,P,d,e),0!=i)return i==st&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(A[0],_[0],d,I[0],d,P[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const mt=13,bt=[0,0,255,255];function gt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):rt}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),rt):(e.zt=r,n.gt.kt=new yt(n,1<{let n,r;if(!e||!e.gt||!e.et)return rt;const s=e.gt;for(t=4==t?it:0,n=it;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=mt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=mt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=mt,e.Le="incorrect header check",s.marker=5;break}if(!(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=mt,e.Le="need dictionary",s.marker=0,rt;case 7:if(n=s.kt.ut(e,n),n==st){s.mode=mt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case mt:return st;default:return rt}},e._t=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return rt;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return rt;const c=e.gt;if(c.mode!=mt&&(c.mode=mt,c.marker=0),0===(n=e.We))return it;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==bt[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?st:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Pt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():rt}function kt(){}function vt(e){const t=new kt,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t.At(0),c&&a===it){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}kt.prototype={xt(e){const t=this;return t.gt=new gt,e||(e=15),t.gt.xt(t,e)},At(e){const t=this;return t.gt?t.gt.At(t,e):rt},Ct(){const e=this;if(!e.gt)return rt;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):rt},_t(e,t){const n=this;return n.gt?n.gt._t(n,e,t):rt},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=nt,self.Inflate=vt};\n',r=()=>t.useDataURI?"data:text/javascript,"+encodeURIComponent(n):f.createObjectURL(new g([n],{type:"text/javascript"}));e({workerScripts:{inflate:[r],deflate:[r]}})})(Ie),Ie({Deflate:function(e){const t=new G,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(a.floor(r/16383)+1);var r;const i=new p(n);let s=e?e.level:-1;void 0===s&&(s=-1),t.deflateInit(s),t.next_out=i,this.append=(e,r)=>{let s,a,o=0,l=0,c=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,s=t.deflate(0),0!=s)throw new u("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?d.push(new p(i)):d.push(i.subarray(0,t.next_out_index))),c+=t.next_out_index,r&&t.next_in_index>0&&t.next_in_index!=o&&(r(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(a=new p(c),d.forEach((e=>{a.set(e,l),l+=e.length}))):a=d[0]?new p(d[0]):new p,a}},this.flush=()=>{let e,r,s=0,a=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw new u("deflating: "+t.msg);n-t.avail_out>0&&o.push(i.slice(0,t.next_out_index)),a+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new p(a),o.forEach((e=>{r.set(e,s),s+=e.length})),r}},Inflate:function(e){const t=new ue,n=e&&e.chunkSize?a.floor(2*e.chunkSize):131072,r=new p(n);let i=!1;t.inflateInit(),t.next_out=r,this.append=(e,s)=>{const a=[];let o,l,c=0,d=0,f=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||i||(t.next_in_index=0,i=!0),o=t.inflate(0),i&&o===J){if(0!==t.avail_in)throw new u("inflating: bad input")}else if(0!==o&&1!==o)throw new u("inflating: "+t.msg);if((i||1===o)&&t.avail_in===e.length)throw new u("inflating: bad input");t.next_out_index&&(t.next_out_index===n?a.push(new p(r)):a.push(r.subarray(0,t.next_out_index))),f+=t.next_out_index,s&&t.next_in_index>0&&t.next_in_index!=c&&(s(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return a.length>1?(l=new p(f),a.forEach((e=>{l.set(e,d),d+=e.length}))):l=a[0]?new p(a[0]):new p,l}},this.flush=()=>{t.inflateEnd()}}}),e.BlobReader=Sn,e.BlobWriter=An,e.Data64URIReader=kn,e.Data64URIWriter=zn,e.ERR_BAD_FORMAT=Sr,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Cr,e.ERR_DUPLICATED_NAME=Qr,e.ERR_ENCRYPTED=Er,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Dr,e.ERR_EOCDR_NOT_FOUND=Ar,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Fr,e.ERR_HTTP_RANGE=pn,e.ERR_INVALID_COMMENT=$r,e.ERR_INVALID_ENCRYPTION_STRENGTH=ri,e.ERR_INVALID_ENTRY_COMMENT=ei,e.ERR_INVALID_ENTRY_NAME=ti,e.ERR_INVALID_EXTRAFIELD_DATA=si,e.ERR_INVALID_EXTRAFIELD_TYPE=ii,e.ERR_INVALID_PASSWORD=Je,e.ERR_INVALID_SIGNATURE=Qe,e.ERR_INVALID_VERSION=ni,e.ERR_ITERATOR_COMPLETED_TOO_SOON=mn,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Rr,e.ERR_SPLIT_ZIP_FILE=qr,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=oi,e.ERR_UNSUPPORTED_COMPRESSION=Tr,e.ERR_UNSUPPORTED_ENCRYPTION=Wr,e.ERR_UNSUPPORTED_FORMAT=ai,e.HttpRangeReader=class extends Hn{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Hn,e.Reader=yn,e.SplitDataReader=Zn,e.SplitDataWriter=Vn,e.SplitZipReader=Jn,e.SplitZipWriter=Qn,e.TextReader=Dn,e.TextWriter=Cn,e.Uint8ArrayReader=Mn,e.Uint8ArrayWriter=Bn,e.Writer=_n,e.ZipReader=jr,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:n}=new z,r=new jr(t,e).getEntriesGenerator();this.readable=new S({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const i={...n,readable:(()=>{const{readable:e,writable:t}=new z;if(n.getData)return n.getData(t),e})()};delete i.getData,e.enqueue(i)}}),this.writable=n}},e.ZipWriter=fi,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new z;this.readable=t,this.zipWriter=new fi(n,e)}transform(e){const{readable:t,writable:n}=new z({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new z;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=Ie,e.fs=Ai,e.getMimeType=e=>e&&Pe[e.split(".").pop().toLowerCase()]||"application/octet-stream",e.initShimAsyncCodec=(e,t={},n)=>({Deflate:fn(e.Deflate,t.deflate,n),Inflate:fn(e.Inflate,t.inflate,n)}),e.terminateWorkers=async()=>{await x.allSettled(an.map((e=>(dn(e),e.terminate()))))}})); diff --git a/dist/zip-fs.js b/dist/zip-fs.js index 5cf9baf1..2b57e80c 100644 --- a/dist/zip-fs.js +++ b/dist/zip-fs.js @@ -67,6 +67,8 @@ const BITFLAG_DATA_DESCRIPTOR = 0x0008; const BITFLAG_LANG_ENCODING_FLAG = 0x0800; const FILE_ATTR_MSDOS_DIR_MASK = 0x10; + const FILE_ATTR_UNIX_DIR_MASK = 0x4000; + const FILE_ATTR_UNIX_EXECUTABLE_MASK = 0o111; const VERSION_DEFLATE = 0x14; const VERSION_ZIP64 = 0x2D; @@ -167,7 +169,8 @@ if (typeof navigator != UNDEFINED_TYPE && navigator.hardwareConcurrency) { maxWorkers = navigator.hardwareConcurrency; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } const DEFAULT_CONFIGURATION = { @@ -1605,7 +1608,8 @@ if (IMPORT_KEY_SUPPORTED) { try { return await subtle.importKey(format, password, algorithm, extractable, keyUsages); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { IMPORT_KEY_SUPPORTED = false; return misc.importKey(password); } @@ -1618,7 +1622,8 @@ if (DERIVE_BITS_SUPPORTED) { try { return await subtle.deriveBits(algorithm, baseKey, length); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { DERIVE_BITS_SUPPORTED = false; return misc.pbkdf2(baseKey, algorithm.salt, DERIVED_BITS_ALGORITHM.iterations, length); } @@ -1936,11 +1941,13 @@ try { const CompressionStream = useCompressionStream && CodecStreamNative ? CodecStreamNative : CodecStream; readable = pipeThrough(readable, new CompressionStream(COMPRESSION_FORMAT, options)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { if (useCompressionStream) { try { readable = pipeThrough(readable, new CodecStream(COMPRESSION_FORMAT, options)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { return readable; } } else { @@ -2183,7 +2190,8 @@ async function callHandler(handler, ...parameters) { try { await handler(...parameters); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -2200,7 +2208,8 @@ let worker; try { worker = getWebWorker(workerData.scripts[0], baseURL, workerData); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { WEB_WORKERS_SUPPORTED = false; return createWorkerInterface(workerData, config); } @@ -2303,13 +2312,15 @@ } try { scriptUrl = new URL(url, baseURL); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { scriptUrl = url; } if (classicWorkersSupported) { try { worker = new Worker(scriptUrl); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { classicWorkersSupported = false; worker = new Worker(scriptUrl, workerOptions); } @@ -2347,7 +2358,8 @@ try { worker.postMessage(message, transferables); return true; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { transferStreamsSupported = false; message.readable = message.writable = null; worker.postMessage(message); @@ -2490,7 +2502,8 @@ pool = pool.filter(data => data != workerData); try { await workerData.terminate(); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } }, terminateWorkerTimeout); @@ -2831,7 +2844,7 @@ combineSizeEocd } = httpReader; if (isHttpFamily(url) && (useRangeHeader || forceRangeRequests) && (typeof preventHeadRequest == "undefined" || preventHeadRequest)) { - const response = await sendRequest(HTTP_METHOD_GET, httpReader, getRangeHeaders(httpReader, combineSizeEocd ? -END_OF_CENTRAL_DIR_LENGTH : undefined)); + const response = await sendRequest(HTTP_METHOD_GET, httpReader, getRangeHeaders(httpReader, combineSizeEocd ? -22 : undefined)); if (!forceRangeRequests && response.headers.get(HTTP_HEADER_ACCEPT_RANGES) != HTTP_RANGE_UNIT) { throw new Error(ERR_HTTP_RANGE); } else { @@ -3354,7 +3367,9 @@ const PROPERTY_NAME_CREATION_DATE = "creationDate"; const PROPERTY_NAME_RAW_CREATION_DATE = "rawCreationDate"; const PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE = "internalFileAttribute"; + const PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES = "internalFileAttributes"; const PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE = "externalFileAttribute"; + const PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES = "externalFileAttributes"; const PROPERTY_NAME_MS_DOS_COMPATIBLE = "msDosCompatible"; const PROPERTY_NAME_ZIP64 = "zip64"; const PROPERTY_NAME_ENCRYPTED = "encrypted"; @@ -3366,10 +3381,7 @@ PROPERTY_NAME_FILENAME, PROPERTY_NAME_RAW_FILENAME, PROPERTY_NAME_COMPPRESSED_SIZE, PROPERTY_NAME_UNCOMPPRESSED_SIZE, PROPERTY_NAME_LAST_MODIFICATION_DATE, PROPERTY_NAME_RAW_LAST_MODIFICATION_DATE, PROPERTY_NAME_COMMENT, PROPERTY_NAME_RAW_COMMENT, PROPERTY_NAME_LAST_ACCESS_DATE, PROPERTY_NAME_CREATION_DATE, PROPERTY_NAME_OFFSET, PROPERTY_NAME_DISK_NUMBER_START, - PROPERTY_NAME_DISK_NUMBER_START, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, - PROPERTY_NAME_MS_DOS_COMPATIBLE, PROPERTY_NAME_ZIP64, PROPERTY_NAME_ENCRYPTED, PROPERTY_NAME_VERSION, PROPERTY_NAME_VERSION_MADE_BY, - PROPERTY_NAME_ZIPCRYPTO, "directory", "bitFlag", "signature", "filenameUTF8", "commentUTF8", "compressionMethod", "extraField", "rawExtraField", - "extraFieldZip64", "extraFieldUnicodePath", "extraFieldUnicodeComment", "extraFieldAES", "extraFieldNTFS", "extraFieldExtendedTimestamp"]; + PROPERTY_NAME_DISK_NUMBER_START, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES, PROPERTY_NAME_MS_DOS_COMPATIBLE, PROPERTY_NAME_ZIP64, PROPERTY_NAME_ENCRYPTED, PROPERTY_NAME_VERSION, PROPERTY_NAME_VERSION_MADE_BY, PROPERTY_NAME_ZIPCRYPTO, "directory", "executable", "bitFlag", "signature", "filenameUTF8", "commentUTF8", "compressionMethod", "extraField", "rawExtraField", "extraFieldZip64", "extraFieldUnicodePath", "extraFieldUnicodeComment", "extraFieldAES", "extraFieldNTFS", "extraFieldExtendedTimestamp"]; class Entry { @@ -3560,14 +3572,20 @@ const extraFieldOffset = filenameOffset + fileEntry.filenameLength; const commentOffset = extraFieldOffset + fileEntry.extraFieldLength; const versionMadeBy = getUint16(directoryView, offset + 4); - const msDosCompatible = (versionMadeBy & 0) == 0; + const msDosCompatible = versionMadeBy >> 8 == 0; + const unixCompatible = versionMadeBy >> 8 == 3; const rawFilename = directoryArray.subarray(filenameOffset, extraFieldOffset); const commentLength = getUint16(directoryView, offset + 32); const endOffset = commentOffset + commentLength; const rawComment = directoryArray.subarray(commentOffset, endOffset); const filenameUTF8 = languageEncodingFlag; const commentUTF8 = languageEncodingFlag; - const directory = msDosCompatible && ((getUint8(directoryView, offset + 38) & FILE_ATTR_MSDOS_DIR_MASK) == FILE_ATTR_MSDOS_DIR_MASK); + const externalFileAttributes = getUint32(directoryView, offset + 38); + const directory = + (msDosCompatible && ((getUint8(directoryView, offset + 38) & FILE_ATTR_MSDOS_DIR_MASK) == FILE_ATTR_MSDOS_DIR_MASK)) || + (unixCompatible && (((externalFileAttributes >> 16) & FILE_ATTR_UNIX_DIR_MASK) == FILE_ATTR_UNIX_DIR_MASK)) || + (rawFilename.length && rawFilename[rawFilename.length - 1] == DIRECTORY_SIGNATURE.charCodeAt(0)); + const executable = (unixCompatible && (((externalFileAttributes >> 16) & FILE_ATTR_UNIX_EXECUTABLE_MASK) == FILE_ATTR_UNIX_EXECUTABLE_MASK)); const offsetFileEntry = getUint32(directoryView, offset + 42) + prependedDataLength; Object.assign(fileEntry, { versionMadeBy, @@ -3578,13 +3596,16 @@ directory, offset: offsetFileEntry, diskNumberStart: getUint16(directoryView, offset + 34), - internalFileAttribute: getUint16(directoryView, offset + 36), - externalFileAttribute: getUint32(directoryView, offset + 38), + internalFileAttributes: getUint16(directoryView, offset + 36), + externalFileAttributes, rawFilename, filenameUTF8, commentUTF8, - rawExtraField: directoryArray.subarray(extraFieldOffset, commentOffset) + rawExtraField: directoryArray.subarray(extraFieldOffset, commentOffset), + executable }); + fileEntry.internalFileAttribute = fileEntry.internalFileAttributes; + fileEntry.externalFileAttribute = fileEntry.externalFileAttributes; const decode = getOptionValue$1(zipReader, options, "decodeText") || decodeText; const rawFilenameEncoding = filenameUTF8 ? CHARSET_UTF8 : filenameEncoding || CHARSET_CP437; const rawCommentEncoding = commentUTF8 ? CHARSET_UTF8 : commentEncoding || CHARSET_CP437; @@ -3612,7 +3633,8 @@ if (onprogress) { try { await onprogress(indexFile + 1, filesLength, new Entry(fileEntry)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -3824,7 +3846,8 @@ }); offsetExtraField += 4 + size; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } const compressionMethod = getUint16(dataView, offset + 4); @@ -3931,7 +3954,8 @@ } offsetExtraField += 4 + attributeSize; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } try { @@ -3952,7 +3976,8 @@ Object.assign(extraFieldNTFS, extraFieldData); Object.assign(directory, extraFieldData); } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -4021,7 +4046,8 @@ const date = (timeRaw & 0xffff0000) >> 16, time = timeRaw & 0x0000ffff; try { return new Date(1980 + ((date & 0xFE00) >> 9), ((date & 0x01E0) >> 5) - 1, date & 0x001F, (time & 0xF800) >> 11, (time & 0x07E0) >> 5, (time & 0x001F) * 2, 0); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -4233,8 +4259,14 @@ const lastAccessDate = getOptionValue(zipWriter, options, PROPERTY_NAME_LAST_ACCESS_DATE); const creationDate = getOptionValue(zipWriter, options, PROPERTY_NAME_CREATION_DATE); const msDosCompatible = getOptionValue(zipWriter, options, PROPERTY_NAME_MS_DOS_COMPATIBLE, true); - const internalFileAttribute = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, 0); - const externalFileAttribute = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, 0); + let internalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES, 0); + if (internalFileAttributes === 0) { + internalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, 0); + } + let externalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES, 0); + if (externalFileAttributes === 0) { + externalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, 0); + } const passThrough = getOptionValue(zipWriter, options, "passThrough"); let password, rawPassword; if (!passThrough) { @@ -4350,8 +4382,10 @@ dataDescriptorSignature, signal, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttribute: internalFileAttributes, + internalFileAttributes, + externalFileAttribute: externalFileAttributes, + externalFileAttributes, useCompressionStream, passThrough, encrypted: Boolean((password && getLength(password)) || (rawPassword && getLength(rawPassword))) || (passThrough && encrypted), @@ -4472,7 +4506,8 @@ if (error) { try { error.corruptedEntry = true; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -4565,8 +4600,8 @@ encryptionStrength, extendedTimestamp, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, useCompressionStream, passThrough } = options; @@ -4585,8 +4620,8 @@ rawExtraField, extendedTimestamp, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, diskNumberStart }; let { @@ -4746,7 +4781,8 @@ setBigUint64(extraFieldNTFSView, 12, lastModTimeNTFS); setBigUint64(extraFieldNTFSView, 20, getTimeNTFS(lastAccessDate) || lastModTimeNTFS); setBigUint64(extraFieldNTFSView, 28, getTimeNTFS(creationDate) || lastModTimeNTFS); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { rawExtraFieldNTFS = new Uint8Array(); } } else { @@ -5041,8 +5077,8 @@ zip64DiskNumberStart, zip64Offset, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, diskNumberStart, uncompressedSize, compressedSize @@ -5061,9 +5097,9 @@ setUint16(directoryView, offset + 30, extraFieldLength); setUint16(directoryView, offset + 32, getLength(rawComment)); setUint16(directoryView, offset + 34, zip64 && zip64DiskNumberStart ? MAX_16_BITS : diskNumberStart); - setUint16(directoryView, offset + 36, internalFileAttribute); - if (externalFileAttribute) { - setUint32(directoryView, offset + 38, externalFileAttribute); + setUint16(directoryView, offset + 36, internalFileAttributes); + if (externalFileAttributes) { + setUint32(directoryView, offset + 38, externalFileAttributes); } else if (directory && msDosCompatible) { setUint8(directoryView, offset + 38, FILE_ATTR_MSDOS_DIR_MASK); } @@ -5085,7 +5121,8 @@ if (options.onprogress) { try { await options.onprogress(indexFileEntry + 1, files.size, new Entry(fileEntry)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -5608,7 +5645,8 @@ error.cause = { entry }; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } throw error; @@ -5865,7 +5903,8 @@ error.cause = { entry: child }; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } throw error; @@ -5911,7 +5950,7 @@ let zipEntryOptions = {}; if (child.data instanceof Entry) { const { - externalFileAttribute, + externalFileAttributes, versionMadeBy, comment, lastModDate, @@ -5925,7 +5964,7 @@ extraFieldAES } = child.data; zipEntryOptions = { - externalFileAttribute, + externalFileAttributes, versionMadeBy, comment, lastModDate, @@ -5960,7 +5999,8 @@ entryOffsets.set(name, indexProgress); try { await options.onprogress(Array.from(entryOffsets.values()).reduce((previousValue, currentValue) => previousValue + currentValue), totalSize); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -6105,7 +6145,8 @@ let baseURL; try { baseURL = (typeof document === 'undefined' && typeof location === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : typeof document === 'undefined' ? location.href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('zip-fs.js', document.baseURI).href)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } configure({ baseURL }); diff --git a/dist/zip-fs.min.js b/dist/zip-fs.min.js index 3768caa1..996986a2 100644 --- a/dist/zip-fs.min.js +++ b/dist/zip-fs.min.js @@ -1 +1 @@ -((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:r,Number:s,BigInt:i,Math:a,Date:o,Map:c,Set:l,Response:u,URL:d,Error:f,Uint8Array:h,Uint16Array:w,Uint32Array:p,DataView:g,Blob:m,Promise:y,TextEncoder:b,TextDecoder:S,document:k,crypto:z,btoa:x,TransformStream:v,ReadableStream:A,WritableStream:C,CompressionStream:D,DecompressionStream:R,navigator:_,Worker:W}="undefined"!=typeof globalThis?globalThis:this||self;var F=void 0!==k?k.currentScript:null;const E=4294967295,T=65535,U=67324752,L=134695760,I=L,N=33639248,O=101010256,P=101075792,q=117853008,H=22,M=21589,B=2048,V="/",Z=new o(2107,11,31),K=new o(1980,0,1),G=void 0,X="undefined",Y="function";class j{constructor(e){return class extends v{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}let J=2;try{typeof _!=X&&_.hardwareConcurrency&&(J=_.hardwareConcurrency)}catch(e){}const Q={chunkSize:524288,maxWorkers:J,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:G,CompressionStreamNative:typeof D!=X&&D,DecompressionStreamNative:typeof R!=X&&R},$=n.assign({},Q);function ee(){return $}function te(e){return a.max(e.chunkSize,64)}function ne(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:u,DecompressionStream:d,workerScripts:h}=e;if(re("baseURL",n),re("chunkSize",r),re("maxWorkers",s),re("terminateWorkerTimeout",i),re("useCompressionStream",a),re("useWebWorkers",o),c&&($.CompressionStream=new j(c)),l&&($.DecompressionStream=new j(l)),re("CompressionStream",u),re("DecompressionStream",d),h!==G){const{deflate:e,inflate:n}=h;if((e||n)&&($.workerScripts||($.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");$.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");$.workerScripts.inflate=n}}}function re(e,t){t!==G&&($[e]=t)}function se(e,t,r){return class{constructor(s){const i=this;var a,o;a=s,o="level",(typeof n.hasOwn===Y?n.hasOwn(a,o):a.hasOwnProperty(o))&&s.level===G&&delete s.level,i.codec=new e(n.assign({},t,s)),r(i.codec,(e=>{if(i.pendingData){const t=i.pendingData;i.pendingData=new h(t.length+e.length);const{pendingData:n}=i;n.set(t,0),n.set(e,t.length)}else i.pendingData=new h(e)}))}append(e){return this.codec.push(e),s(this)}flush(){return this.codec.push(new h,!0),s(this)}};function s(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new h}}const ie=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;ie[e]=t}class ae{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^ie[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class oe extends v{constructor(){let e;const t=new ae;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new h(4);new g(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function ce(e){if(typeof b==X){const t=new h((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=le.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>a.round(e/1099511627776)||32,_shiftRight(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=le.getPartial(s);return r.push(le.partial(t+i&31,t+i>32?n:r.pop(),1)),r}},ue={bytes:{fromBits(e){const t=le.bitLength(e)/8,n=new h(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const i=new p(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);s>=e;e+=t.blockSize)t._block(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=le.concat(t,[le.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}_S(e,t){return t<>>32-e}_block(e){const n=this,r=n._h,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let i=r[0],o=r[1],c=r[2],l=r[3],u=r[4];for(let e=0;79>=e;e++){16>e||(s[e]=n._S(1,s[e-3]^s[e-8]^s[e-14]^s[e-16]));const t=n._S(5,i)+n._f(e,o,c,l)+u+s[e]+n._key[a.floor(e/20)]|0;u=l,l=c,c=n._S(30,o),o=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},fe={getRandomValues(e){const t=new p(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(a.random()>.5?1:-1))};for(let r,s=0;snew he.hmacSha1(ue.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new f("invalid params to pbkdf2");const s=1+(r>>5)<<2;let i,a,o,c,l;const u=new ArrayBuffer(s),d=new g(u);let h=0;const w=le;for(t=ue.bytes.toBits(t),l=1;(s||1)>h;l++){for(i=a=e.encrypt(w.concat(t,[l])),o=1;n>o;o++)for(a=e.encrypt(a),c=0;ch&&os&&(e=(new n).update(e).finalize());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},we=typeof z!=X&&typeof z.getRandomValues==Y,pe="Invalid password",ge="Invalid signature",me="zipjs-abort-check-password";function ye(e){return we?z.getRandomValues(e):fe.getRandomValues(e)}const be=16,Se={name:"PBKDF2"},ke=n.assign({hash:{name:"HMAC"}},Se),ze=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Se),xe=["deriveBits"],ve=[8,12,16],Ae=[16,24,32],Ce=10,De=[0,0,0,0],Re=typeof z!=X,_e=Re&&z.subtle,We=Re&&typeof _e!=X,Fe=ue.bytes,Ee=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],s=e.length;let i,a,o,c=1;if(4!==s&&6!==s&&8!==s)throw new f("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],i=s;4*s+28>i;i++){let e=a[i-1];(i%s==0||8===s&&i%s==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%s==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[i]=a[i-s]^e}for(let e=0;i;e++,i--){const t=a[3&e?i:i-4];o[e]=4>=i||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],s=[],i=[];let a,o,c,l;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=o||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=s[c=s[o=s[u]]];let d=16843009*l^65537*c^257*o^16843008*u,f=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][u]=f=f<<24^f>>>8,t[n][i]=d=d<<24^d>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],r=n.length/4-2,s=[0,0,0,0],i=this._tables[t],a=i[0],o=i[1],c=i[2],l=i[3],u=i[4];let d,h,w,p=e[0]^n[0],g=e[t?3:1]^n[1],m=e[2]^n[2],y=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)d=a[p>>>24]^o[g>>16&255]^c[m>>8&255]^l[255&y]^n[b],h=a[g>>>24]^o[m>>16&255]^c[y>>8&255]^l[255&p]^n[b+1],w=a[m>>>24]^o[y>>16&255]^c[p>>8&255]^l[255&g]^n[b+2],y=a[y>>>24]^o[p>>16&255]^c[g>>8&255]^l[255&m]^n[b+3],b+=4,p=d,g=h,m=w;for(let e=0;4>e;e++)s[t?3&-e:e]=u[p>>>24]<<24^u[g>>16&255]<<16^u[m>>8&255]<<8^u[255&y]^n[b++],d=p,p=g,g=m,m=y,y=d;return s}},Te=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];const s=le.bitLength(t);for(let s=0;r>s;s+=4){this.incCounter(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return le.clamp(t,s)}},Ue=he.hmacSha1;let Le=Re&&We&&typeof _e.importKey==Y,Ie=Re&&We&&typeof _e.deriveBits==Y;class Ne extends v{constructor({password:e,rawPassword:t,signed:r,encryptionStrength:s,checkPasswordOnly:i}){super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:He(e,t),signed:r,strength:s-1,pending:new h})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const s=await qe(e,t,n,Be(r,0,ve[t])),i=Be(r,ve[t]);if(s[0]!=i[0]||s[1]!=i[1])throw new f(pe)})(n,s,r,Be(e,0,ve[s]+2)),e=Be(e,ve[s]+2),i?t.error(new f(me)):a()):await o;const c=new h(e.length-Ce-(e.length-Ce)%be);t.enqueue(Pe(n,e,c,0,Ce,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:i}=this;if(r&&n){await i;const a=Be(s,0,s.length-Ce),o=Be(s,s.length-Ce);let c=new h;if(a.length){const e=Ze(Fe,a);r.update(e);const t=n.update(e);c=Ve(Fe,t)}if(t){const e=Be(Ve(Fe,r.digest()),0,Ce);for(let t=0;Ce>t;t++)if(e[t]!=o[t])throw new f(ge)}e.enqueue(c)}}})}}class Oe extends v{constructor({password:e,rawPassword:t,encryptionStrength:r}){let s;super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:He(e,t),strength:r-1,pending:new h})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:i,ready:a}=n;let o=new h;r?(o=await(async(e,t,n)=>{const r=ye(new h(ve[t]));return Me(r,await qe(e,t,n,r))})(n,s,r),i()):await a;const c=new h(o.length+e.length-e.length%be);c.set(o,0),t.enqueue(Pe(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:i}=this;if(n&&t){await i;let a=new h;if(r.length){const e=t.update(Ze(Fe,r));n.update(e),a=Ve(Fe,e)}s.signature=Ve(Fe,n.digest()).slice(0,Ce),e.enqueue(Me(a,s.signature))}}}),s=this}}function Pe(e,t,n,r,s,i){const{ctr:a,hmac:o,pending:c}=e,l=t.length-s;let u;for(c.length&&(t=Me(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new h(t)).set(n,0)}return e})(n,l-l%be)),u=0;l-be>=u;u+=be){const e=Ze(Fe,Be(t,u,u+be));i&&o.update(e);const s=a.update(e);i||o.update(s),n.set(Ve(Fe,s),u+r)}return e.pending=Be(t,u),n}async function qe(e,r,s,i){e.password=null;const a=await(async(e,t,n,r,s)=>{if(!Le)return he.importKey(t);try{return await _e.importKey("raw",t,n,!1,s)}catch(e){return Le=!1,he.importKey(t)}})(0,s,ke,0,xe),o=await(async(e,t,n)=>{if(!Ie)return he.pbkdf2(t,e.salt,ze.iterations,n);try{return await _e.deriveBits(e,t,n)}catch(r){return Ie=!1,he.pbkdf2(t,e.salt,ze.iterations,n)}})(n.assign({salt:i},ze),a,8*(2*Ae[r]+2)),c=new h(o),l=Ze(Fe,Be(c,0,Ae[r])),u=Ze(Fe,Be(c,Ae[r],2*Ae[r])),d=Be(c,2*Ae[r]);return n.assign(e,{keys:{key:l,authentication:u,passwordVerification:d},ctr:new Te(new Ee(l),t.from(De)),hmac:new Ue(u)}),d}function He(e,t){return t===G?ce(e):t}function Me(e,t){let n=e;return e.length+t.length&&(n=new h(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Be(e,t,n){return e.subarray(t,n)}function Ve(e,t){return e.fromBits(t)}function Ze(e,t){return e.toBits(t)}class Ke extends v{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),je(this,e)},transform(e,t){const n=this;if(n.password){const t=Xe(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(pe);e=e.subarray(12)}r?t.error(new f(me)):t.enqueue(Xe(n,e))}})}}class Ge extends v{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),je(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=ye(new h(12));t[11]=n.passwordVerification,r=new h(e.length+t.length),r.set(Ye(n,t),0),s=12}else r=new h(e.length),s=0;r.set(Ye(n,e),s),t.enqueue(r)}})}}function Xe(e,t){const n=new h(t.length);for(let r=0;r>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function Qe(e){const t=2|e.keys[2];return $e(a.imul(t,1^t)>>>8)}function $e(e){return 255&e}function et(e){return 4294967295&e}const tt="deflate-raw";class nt extends v{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:a,zipCrypto:o,signed:c,level:l}=e,u=this;let d,f,h=st(super.readable);i&&!o||!c||(d=new oe,h=ot(h,d)),s&&(h=at(h,a,{level:l,chunkSize:t},r,n)),i&&(o?h=ot(h,new Ge(e)):(f=new Oe(e),h=ot(h,f))),it(u,h,(()=>{let e;i&&!o&&(e=f.signature),i&&!o||!c||(e=new g(d.value.buffer).getUint32(0)),u.signature=e}))}}class rt extends v{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:i,signed:a,signature:o,compressed:c,useCompressionStream:l}=e;let u,d,h=st(super.readable);i&&(s?h=ot(h,new Ke(e)):(d=new Ne(e),h=ot(h,d))),c&&(h=at(h,l,{chunkSize:t},r,n)),i&&!s||!a||(u=new oe,h=ot(h,u)),it(this,h,(()=>{if((!i||s)&&a){const e=new g(u.value.buffer);if(o!=e.getUint32(0,!1))throw new f(ge)}}))}}function st(e){return ot(e,new v({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function it(e,t,r){t=ot(t,new v({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function at(e,t,n,r,s){try{e=ot(e,new(t&&r?r:s)(tt,n))}catch(r){if(!t)return e;try{e=ot(e,new s(tt,n))}catch(t){return e}}return e}function ot(e,t){return e.pipeThrough(t)}const ct="data",lt="close",ut="deflate",dt="inflate";class ft extends v{constructor(e,t){super({});const r=this,{codecType:s}=e;let i;s.startsWith(ut)?i=nt:s.startsWith(dt)&&(i=rt);let a=0,o=0;const c=new i(e,t),l=super.readable,u=new v({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:o})}}),d=new v({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;n.assign(r,{signature:e,outputSize:a,inputSize:o})}});n.defineProperty(r,"readable",{get:()=>l.pipeThrough(u).pipeThrough(c).pipeThrough(d)})}}class ht extends v{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new h(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}let wt=typeof W!=X;class pt{constructor(e,{readable:t,writable:r},{options:s,config:i,streamOptions:a,useWebWorkers:o,transferStreams:c,scripts:l},u){const{signal:d}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new ht(i.chunkSize)).pipeThrough(new gt(t,a),{signal:d}),writable:r,options:n.assign({},s),scripts:l,transferStreams:c,terminate:()=>new y((t=>{const{worker:n,busy:r}=e;n?(r?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,u(e)}}),(o&&wt?bt:yt)(e,i)}}class gt extends v{constructor(e,{onstart:t,onprogress:n,size:r,onend:s}){let i=0;super({async start(){t&&await mt(t,r)},async transform(e,t){i+=e.length,n&&await mt(n,i,r),t.enqueue(e)},async flush(){e.size=i,s&&await mt(s,i)}})}}async function mt(e,...t){try{await e(...t)}catch(e){}}function yt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{try{const r=new ft(e,s);await t.pipeThrough(r).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:i,inputSize:a,outputSize:o}=r;return{signature:i,inputSize:a,outputSize:o}}finally{r()}})(e,t)}}function bt(e,t){const{baseURL:r,chunkSize:s}=t;if(!e.interface){let i;try{i=((e,t,r)=>{const s={type:"module"};let i,a;typeof e==Y&&(e=e());try{i=new d(e,t)}catch(t){i=e}if(St)try{a=new W(i)}catch(e){St=!1,a=new W(i,s)}else a=new W(i,s);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:s,messageId:i,result:a,error:o}=e,{reader:c,writer:l,resolveResult:u,rejectResult:d,onTaskFinished:w}=t;try{if(o){const{message:e,stack:t,code:r,name:s}=o,i=new f(e);n.assign(i,{stack:t,code:r,name:s}),p(i)}else{if("pull"==r){const{value:e,done:n}=await c.read();zt({type:ct,value:e,done:n,messageId:i},t)}r==ct&&(await l.ready,await l.write(new h(s)),zt({type:"ack",messageId:i},t)),r==lt&&p(null,a)}}catch(o){zt({type:lt,messageId:i},t),p(o)}function p(e,t){e?d(e):u(t),l&&l.releaseLock(),w()}})(e,r))),a})(e.scripts[0],r,e)}catch(n){return wt=!1,yt(e,t)}n.assign(e,{worker:i,interface:{run:()=>(async(e,t)=>{let r,s;const i=new y(((e,t)=>{r=e,s=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:s,result:i});const{readable:a,options:o,scripts:c}=e,{writable:l,closed:u}=(e=>{let t;const n=new y((e=>t=e));return{writable:new C({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),d=zt({type:"start",scripts:c.slice(1),options:o,config:t,readable:a,writable:l},e);d||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const f=await i;return d||await l.getWriter().close(),await u,f})(e,{chunkSize:s})}})}return e.interface}let St=!0,kt=!0;function zt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{const{value:n,readable:r,writable:i}=e,a=[];if(n&&(n.byteLength{const n=xt.find((e=>!e.busy));if(n)return Dt(n),new pt(n,e,t,p);if(xt.lengthvt.push({resolve:n,stream:e,workerOptions:t})))})()).run();function p(e){if(vt.length){const[{resolve:t,stream:n,workerOptions:r}]=vt.splice(0,1);t(new pt(e,n,r,p))}else e.worker?(Dt(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;s.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{xt=xt.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),r))})(e,t)):xt=xt.filter((t=>t!=e))}}function Dt(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const Rt="HTTP error ",_t="HTTP Range not supported",Wt="Writer iterator completed too soon",Ft="Range",Et="GET",Tt="bytes",Ut=65536,Lt="writable";class It{constructor(){this.size=0}init(){this.initialized=!0}}class Nt extends It{get readable(){const e=this,{chunkSize:t=Ut}=e,n=new A({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:i,diskNumberStart:o}=n,{chunkOffset:c}=this;r.enqueue(await hn(e,s+c,a.min(t,i-c),o)),c+t>i?r.close():this.chunkOffset+=t}});return n}}class Ot extends It{constructor(){super();const e=this,t=new C({write:t=>e.writeUint8Array(t)});n.defineProperty(e,Lt,{get:()=>t})}writeUint8Array(){}}class Pt extends Nt{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,s=new h(t),i=4*a.floor(e/3),o=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);for(let e=c;c+t>e;e++)s[e-c]=o.charCodeAt(e);return s}}class qt extends Ot{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,s=t.pending;const i=t.pending.length;for(t.pending="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)s+=r.fromCharCode(e[n]);for(;n2?t.data+=x(s):t.pending=s}getData(){return this.data+x(this.pending)}}class Ht extends Nt{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||rt&&(i=i.slice(e,r)),new h(i)}}class Mt extends It{constructor(e){super();const t=new v,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,Lt,{get:()=>t.writable}),this.blob=new u(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Bt extends Ht{constructor(e){super(new m([e],{type:"text/plain"}))}}class Vt extends Mt{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new y(((s,i)=>{n.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>i(t.error)}),t.readAsText(r,e)}))}}}class Zt extends Nt{constructor(e,t){super(),Gt(this,e,t)}async init(){await Xt(this,nn,Qt),super.init()}readUint8Array(e,t){return Yt(this,e,t,nn,Qt)}}class Kt extends Nt{constructor(e,t){super(),Gt(this,e,t)}async init(){await Xt(this,rn,$t),super.init()}readUint8Array(e,t){return Yt(this,e,t,rn,$t)}}function Gt(e,t,r){const{preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:o}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:o})}async function Xt(e,t,n){const{url:r,preventHeadRequest:i,useRangeHeader:a,forceRangeRequests:o,combineSizeEocd:c}=e;if((e=>{const{baseURL:t}=ee(),{protocol:n}=new d(e,t);return"http:"==n||"https:"==n})(r)&&(a||o)&&(void 0===i||i)){const r=await t(Et,e,jt(e,c?-22:void 0));if(!o&&r.headers.get("Accept-Ranges")!=Tt)throw new f(_t);{let i;c&&(e.eocdCache=new h(await r.arrayBuffer()));const a=r.headers.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(i=s(t))}}i===G?await tn(e,t,n):e.size=i}}else await tn(e,t,n)}async function Yt(e,t,n,r,s){const{useRangeHeader:i,forceRangeRequests:a,eocdCache:o,size:c,options:l}=e;if(i||a){if(o&&t==c-H&&n==H)return o;const s=await r(Et,e,jt(e,t,n));if(206!=s.status)throw new f(_t);return new h(await s.arrayBuffer())}{const{data:r}=e;return r||await s(e,l),new h(e.data.subarray(t,t+n))}}function jt(e,t=0,r=1){return n.assign({},Jt(e),{[Ft]:Tt+"="+(0>t?t:t+"-"+(t+r-1))})}function Jt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Qt(e){await en(e,nn)}async function $t(e){await en(e,rn)}async function en(e,t){const n=await t(Et,e,Jt(e));e.data=new h(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function tn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Jt(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function nn(e,{options:t,url:r},s){const i=await fetch(r,n.assign({},t,{method:e,headers:s}));if(400>i.status)return i;throw 416==i.status?new f(_t):new f(Rt+(i.statusText||i.status))}function rn(e,{url:t},r){return new y(((s,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),s({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new f(_t):new f(Rt+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>i(e.detail?e.detail.error:new f("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class sn extends Nt{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Kt(e,t):new Zt(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class an extends Nt{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class on extends Ot{init(e=0){n.assign(this,{offset:0,array:new h(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new h(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}}class cn extends Nt{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await y.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:s}=this;let i,o=n;-1==o&&(o=s.length-1);let c=e;for(;c>=s[o].size;)c-=s[o].size,o++;const l=s[o],u=l.size;if(c+t>u){const s=u-c;i=new h(t),i.set(await hn(l,c,s)),i.set(await r.readUint8Array(e+s,t-s,n),s)}else i=await hn(l,c,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),i}}class ln extends It{constructor(e,t=4294967295){super();const r=this;let s,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new C({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function un(e,t){if(!e.init||e.initialized)return y.resolve();await e.init(t)}function dn(e){return t.isArray(e)&&(e=new cn(e)),e instanceof A&&(e={readable:e}),e}function fn(e){e.writable===G&&typeof e.next==Y&&(e=new ln(e)),e instanceof C&&(e={writable:e});const{writable:t}=e;return t.size===G&&(t.size=0),e instanceof ln||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function hn(e,t,n,r){return e.readUint8Array(t,n,r)}const wn=cn,pn=ln,gn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function mn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const qn="File format is not recognized",Hn="End of central directory not found",Mn="End of Zip64 central directory locator not found",Bn="Central directory header not found",Vn="Local file header not found",Zn="Zip64 extra field not found",Kn="File contains encrypted entry",Gn="Encryption method not supported",Xn="Compression method not supported",Yn="Split zip file",jn="utf-8",Jn="cp437",Qn=[[zn,E],[xn,E],[vn,E],[An,T]],$n={[T]:{getValue:ur,bytes:4},[E]:{getValue:dr,bytes:8}};class er{constructor(e,t={}){n.assign(this,{reader:dn(e),options:t,config:ee()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:s}=t;if(await un(r),r.size!==G&&r.readUint8Array||(r=new Ht(await new u(r.readable).blob()),await un(r)),r.size{const r=new h(4);var s;return s=t,fr(r).setUint32(0,s,!0),await i(22)||await i(a.min(1048582,n));async function i(t){const s=n-t,i=await hn(e,s,t);for(let e=i.length-22;e>=0;e--)if(i[e]==r[0]&&i[e+1]==r[1]&&i[e+2]==r[2]&&i[e+3]==r[3])return{offset:s+e,buffer:i.slice(e,e+22).buffer}}})(r,O,r.size);if(!i)throw ur(fr(await hn(r,0,4)))==L?new f(Yn):new f(Hn);const o=fr(i);let c=ur(o,12),l=ur(o,16);const d=i.offset,w=lr(o,20),p=d+H+w;let g=lr(o,4);const m=r.lastDiskNumber||0;let y=lr(o,6),b=lr(o,8),S=0,k=0;if(l==E||c==E||b==T||y==T){const e=fr(await hn(r,i.offset-20,20));if(ur(e,0)==q){l=dr(e,8);let t=await hn(r,l,56,-1),n=fr(t);const s=i.offset-20-56;if(ur(n,0)!=P&&l!=s){const e=l;l=s,S=l-e,t=await hn(r,l,56,-1),n=fr(t)}if(ur(n,0)!=P)throw new f(Mn);g==T&&(g=ur(n,16)),y==T&&(y=ur(n,20)),b==T&&(b=dr(n,32)),c==E&&(c=dr(n,40)),l-=c}}if(ll)throw new f(qn);let z=0,x=await hn(r,l,c,y),v=fr(x);if(c){const e=i.offset-c;if(ur(v,z)!=N&&l!=e){const t=l;l=e,S+=l-t,x=await hn(r,l,c,y),v=fr(x)}}const A=i.offset-l-(r.lastDiskOffset||0);if(c==A||0>A||(c=A,x=await hn(r,l,c,y),v=fr(x)),0>l||l>=r.size)throw new f(qn);const C=ir(t,e,"filenameEncoding"),D=ir(t,e,"commentEncoding");for(let i=0;b>i;i++){const o=new tr(r,s,t.options);if(ur(v,z)!=N)throw new f(Bn);nr(o,v,z+6);const c=!!o.bitFlag.languageEncodingFlag,l=z+46,u=l+o.filenameLength,d=u+o.extraFieldLength,h=lr(v,z+4),w=!0,p=x.subarray(l,u),g=lr(v,z+32),m=d+g,y=x.subarray(d,m),A=c,R=c,_=w&&!(16&~cr(v,z+38)),W=ur(v,z+42)+S;n.assign(o,{versionMadeBy:h,msDosCompatible:w,compressedSize:0,uncompressedSize:0,commentLength:g,directory:_,offset:W,diskNumberStart:lr(v,z+34),internalFileAttribute:lr(v,z+36),externalFileAttribute:ur(v,z+38),rawFilename:p,filenameUTF8:A,commentUTF8:R,rawExtraField:x.subarray(u,d)});const F=ir(t,e,"decodeText")||mn,E=A?jn:C||Jn,T=R?jn:D||Jn;let U=F(p,E);U===G&&(U=mn(p,E));let L=F(y,T);L===G&&(L=mn(y,T)),n.assign(o,{rawComment:y,filename:U,comment:L,directory:_||U.endsWith(V)}),k=a.max(W,k),rr(o,o,v,z+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const I=new Pn(o);I.getData=(e,t)=>o.getData(e,I,t),z=m;const{onprogress:O}=e;if(O)try{await O(i+1,b,new Pn(o))}catch(e){}yield I}const R=ir(t,e,"extractPrependedData"),_=ir(t,e,"extractAppendedData");return R&&(t.prependedData=k>0?await hn(r,0,k):new h),t.comment=w?await hn(r,d+H,w):new h,_&&(t.appendedData=p>>8&255:w>>>24&255),signature:w,compressed:0!=l&&!z,encrypted:s.encrypted&&!z,useWebWorkers:ir(s,r,"useWebWorkers"),useCompressionStream:ir(s,r,"useCompressionStream"),transferStreams:ir(s,r,"transferStreams"),checkPasswordOnly:W},config:u,streamOptions:{signal:_,size:D,onstart:E,onprogress:T,onend:L}};let N=0;try{({outputSize:N}=await Ct({readable:R,writable:F},I))}catch(e){if(!W||e.message!=me)throw e}finally{const e=ir(s,r,"preventClose");F.size+=N,e||F.locked||await F.getWriter().close()}return W?G:e.getData?e.getData():F}};function nr(e,t,r){const s=e.rawBitFlag=lr(t,r+2),i=!(1&~s),a=ur(t,r+6);n.assign(e,{encrypted:i,version:lr(t,r),bitFlag:{level:(6&s)>>1,dataDescriptor:!(8&~s),languageEncodingFlag:(s&B)==B},rawLastModDate:a,lastModDate:ar(a),filenameLength:lr(t,r+22),extraFieldLength:lr(t,r+24)})}function rr(e,t,r,s,i){const{rawExtraField:a}=t,l=t.extraField=new c,u=fr(new h(a));let d=0;try{for(;d{t.zip64=!0;const n=fr(e.data),r=Qn.filter((([e,n])=>t[e]==n));for(let s=0,i=0;s{const s=fr(e.data),i=cr(s,4);n.assign(e,{vendorVersion:cr(s,0),vendorId:cr(s,2),strength:i,originalCompressionMethod:r,compressionMethod:lr(s,5)}),t.compressionMethod=e.compressionMethod})(y,t,w),t.extraFieldAES=y):t.compressionMethod=w;const b=l.get(10);b&&(((e,t)=>{const r=fr(e.data);let s,i=4;try{for(;i{const r=fr(e.data),s=cr(r,0),i=[],a=[];n?(1&~s||(i.push(Cn),a.push(Dn)),2&~s||(i.push(Rn),a.push("rawLastAccessDate")),4&~s||(i.push(_n),a.push("rawCreationDate"))):5>e.data.length||(i.push(Cn),a.push(Dn));let c=1;i.forEach(((n,s)=>{if(e.data.length>=c+4){const i=ur(r,c);t[n]=e[n]=new o(1e3*i);const l=a[s];e[l]=i}c+=4}))})(S,t,i),t.extraFieldExtendedTimestamp=S);const k=l.get(6534);k&&(t.extraFieldUSDZ=k)}function sr(e,t,r,s,i){const a=fr(e.data),o=new ae;o.append(i[r]);const c=fr(new h(4));c.setUint32(0,o.get(),!0);const l=ur(a,1);n.assign(e,{version:cr(a,0),[t]:mn(e.data.subarray(5)),valid:!i.bitFlag.languageEncodingFlag&&l==ur(c,0)}),e.valid&&(s[t]=e[t],s[t+"UTF8"]=!0)}function ir(e,t,n){return t[n]===G?e.options[n]:t[n]}function ar(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function or(e){return new o(s(e/i(1e4)-i(116444736e5)))}function cr(e,t){return e.getUint8(t)}function lr(e,t){return e.getUint16(t,!0)}function ur(e,t){return e.getUint32(t,!0)}function dr(e,t){return s(e.getBigUint64(t,!0))}function fr(e){return new g(e.buffer)}const hr="File already exists",wr="Zip file comment exceeds 64KB",pr="File entry comment exceeds 64KB",gr="File entry name exceeds 64KB",mr="Version exceeds 65535",yr="The strength must equal 1, 2, or 3",br="Extra field type exceeds 65535",Sr="Extra field data exceeds 64KB",kr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",zr="Undefined uncompressed size",xr=new h([7,0,2,0,65,69,3,0,0]);let vr=0;const Ar=[];class Cr{constructor(e,t={}){const r=(e=fn(e)).availableSize!==G&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==G&&e.maxSize>0&&e.maxSize!==1/0;n.assign(this,{writer:e,addSplitZipSignature:r,options:t,config:ee(),files:new c,filenames:new l,offset:t.offset===G?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new l,bufferedWrites:0})}async add(e="",r,s={}){const c=this,{pendingAddFileCalls:l,config:d}=c;let m;vrAr.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new f(hr);return c.filenames.add(e),m=(async(e,r,s,c)=>{r=r.trim(),c.directory&&!r.endsWith(V)?r+=V:c.directory=r.endsWith(V);const l=_r(e,c,"encodeText",ce);let d=l(r);if(d===G&&(d=ce(r)),Nr(d)>T)throw new f(gr);const m=c.comment||"";let b=l(m);if(b===G&&(b=ce(m)),Nr(b)>T)throw new f(pr);const S=_r(e,c,Ln,20);if(S>T)throw new f(mr);const k=_r(e,c,In,20);if(k>T)throw new f(mr);const z=_r(e,c,Cn,new o),x=_r(e,c,Rn),A=_r(e,c,_n),C=_r(e,c,En,!0),D=_r(e,c,Wn,0),R=_r(e,c,Fn,0),_=_r(e,c,"passThrough");let W,F;_||(W=_r(e,c,"password"),F=_r(e,c,"rawPassword"));const N=_r(e,c,"encryptionStrength",3),O=_r(e,c,Nn),P=_r(e,c,"extendedTimestamp",!0),q=_r(e,c,"keepOrder",!0),H=_r(e,c,"level"),X=_r(e,c,"useWebWorkers"),Y=_r(e,c,"bufferedWrite"),j=_r(e,c,"dataDescriptorSignature",!1),J=_r(e,c,"signal"),Q=_r(e,c,"useUnicodeFileNames",!0),$=_r(e,c,"useCompressionStream"),ee=_r(e,c,"compressionMethod");let ne=_r(e,c,"dataDescriptor",!0),re=_r(e,c,Tn);if(!O&&(W!==G||F!==G)&&(1>N||N>3))throw new f(yr);let se=new h;const{extraField:ie}=c;if(ie){let e=0,t=0;ie.forEach((t=>e+=4+Nr(t))),se=new h(e),ie.forEach(((e,n)=>{if(n>T)throw new f(br);if(Nr(e)>T)throw new f(Sr);Lr(se,new w([n]),t),Lr(se,new w([Nr(e)]),t+2),Lr(se,e,t+4),t+=4+Nr(e)}))}let ae=0,oe=0,le=0;if(_&&(({uncompressedSize:le}=c),le===G))throw new f(zr);const ue=!0===re;s&&(s=dn(s),await un(s),_?ae=Wr(le):s.size===G?(ne=!0,(re||re===G)&&(re=!0,le=ae=4294967296)):(le=s.size,ae=Wr(le)));const{diskOffset:de,diskNumber:fe,maxSize:he}=e.writer,we=ue||le>E,pe=ue||ae>E,ge=ue||e.offset+e.pendingEntriesSize-de>E,me=_r(e,c,"supportZip64SplitFile",!0)&&ue||fe+a.ceil(e.pendingEntriesSize/he)>T;if(ge||we||pe||me){if(!1===re||!q)throw new f(kr);re=!0}re=re||!1;const ye=_r(e,c,Un),{signature:be}=c,Se=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,level:i,zip64:o,zipCrypto:c,useUnicodeFileNames:l,dataDescriptor:u,directory:d,rawExtraField:f,encryptionStrength:w,extendedTimestamp:g,encrypted:m}=e;let{version:y,compressionMethod:b}=e;const S=!d&&(i>0||i===G&&0!==b);let k,z,x,v;if(m&&!c){k=new h(Nr(xr)+2);const e=Ir(k);Er(e,0,39169),Lr(k,xr,2),Fr(e,8,w)}else k=new h;if(g){x=new h(9+(r?4:0)+(s?4:0));const e=Ir(x);Er(e,0,M),Er(e,2,Nr(x)-4),v=1+(r?2:0)+(s?4:0),Fr(e,4,v);let t=5;Tr(e,t,a.floor(n.getTime()/1e3)),t+=4,r&&(Tr(e,t,a.floor(r.getTime()/1e3)),t+=4),s&&Tr(e,t,a.floor(s.getTime()/1e3));try{z=new h(36);const e=Ir(z),t=Rr(n);Er(e,0,10),Er(e,2,32),Er(e,8,1),Er(e,10,24),Ur(e,12,t),Ur(e,20,Rr(r)||t),Ur(e,28,Rr(s)||t)}catch(e){z=new h}}else z=x=new h;let A=0;l&&(A|=B),u&&(A|=8),b===G&&(b=S?8:0),8==b&&(i>=1&&3>i&&(A|=6),i>=3&&5>i&&(A|=1),9===i&&(A|=2)),o&&(y=y>45?y:45),m&&(A|=1,c||(y=y>51?y:51,k[9]=b,b=99));const C=new h(26),D=Ir(C);Er(D,0,y),Er(D,2,A),Er(D,4,b);const R=new p(1),_=Ir(R);let W;W=K>n?K:n>Z?Z:n,Er(_,0,(W.getHours()<<6|W.getMinutes())<<5|W.getSeconds()/2),Er(_,2,(W.getFullYear()-1980<<4|W.getMonth()+1)<<5|W.getDate());const F=R[0];Tr(D,6,F),Er(D,22,Nr(t));const E=Nr(k,x,z,f);Er(D,24,E);const T=new h(30+Nr(t)+E);return Tr(Ir(T),0,U),Lr(T,C,4),Lr(T,t,30),Lr(T,k,30+Nr(t)),Lr(T,x,30+Nr(t,k)),Lr(T,z,30+Nr(t,k,x)),Lr(T,f,30+Nr(t,k,x,z)),{localHeaderArray:T,headerArray:C,headerView:D,lastModDate:n,rawLastModDate:F,encrypted:m,compressed:S,version:y,compressionMethod:b,extraFieldExtendedTimestampFlag:v,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:z,rawExtraFieldAES:k,extraFieldLength:E}})(c=n.assign({},c,{rawFilename:d,rawComment:b,version:S,versionMadeBy:k,lastModDate:z,lastAccessDate:x,creationDate:A,rawExtraField:se,zip64:re,zip64UncompressedSize:we,zip64CompressedSize:pe,zip64Offset:ge,zip64DiskNumberStart:me,password:W,rawPassword:F,level:$||e.config.CompressionStream!==G||e.config.CompressionStreamNative!==G?H:0,useWebWorkers:X,encryptionStrength:N,extendedTimestamp:P,zipCrypto:O,bufferedWrite:Y,keepOrder:q,useUnicodeFileNames:Q,dataDescriptor:ne,dataDescriptorSignature:j,signal:J,msDosCompatible:C,internalFileAttribute:D,externalFileAttribute:R,useCompressionStream:$,passThrough:_,encrypted:!!(W&&Nr(W)||F&&Nr(F))||_&&ye,signature:be,compressionMethod:ee})),ke=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let s,i=new h,a=0;return n&&(i=new h(t?r?24:20:r?16:12),s=Ir(i),r&&(a=4,Tr(s,0,I))),{dataDescriptorArray:i,dataDescriptorView:s,dataDescriptorOffset:a}})(c),ze=Nr(Se.localHeaderArray,ke.dataDescriptorArray);let xe;oe=ze+ae,e.options.usdz&&(oe+=oe+64),e.pendingEntriesSize+=oe;try{xe=await(async(e,r,s,a,o)=>{const{files:c,writer:l}=e,{keepOrder:d,dataDescriptor:w,signal:p}=o,{headerInfo:m}=a,{usdz:b}=e.options,S=t.from(c.values()).pop();let k,z,x,A,C,D,R,_={};c.set(r,_);try{let t;d&&(t=S&&S.lock,_.lock=new y((e=>x=e))),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&d)&&w||b?(D=l,await W()):(D=new v,R=new u(D.readable).blob(),D.writable.size=0,k=!0,e.bufferedWrites++,await un(l)),await un(D);const{writable:m}=l;let{diskOffset:z}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new h(4);Tr(Ir(t),0,L),await Dr(m,t),e.offset+=4}b&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:r,extraFieldLength:s}=n,i=Ir(r),a=64-(t+Nr(r))%64;4>a&&(a+=64);const o=new h(a),c=Ir(o);Er(c,0,6534),Er(c,2,a-2);const l=r;n.localHeaderArray=r=new h(Nr(l)+a),Lr(r,l),Lr(r,o,Nr(l)),i=Ir(r),Er(i,28,s+a),e.metadataSize+=a})(a,e.offset-z),k||(await t,await F(m));const{diskNumber:T}=l;if(C=!0,_.diskNumberStart=T,_=await(async(e,t,{diskNumberStart:r,lock:s},a,o,c)=>{const{headerInfo:l,dataDescriptorInfo:u,metadataSize:d}=a,{localHeaderArray:f,headerArray:w,lastModDate:p,rawLastModDate:g,encrypted:m,compressed:y,version:b,compressionMethod:S,rawExtraFieldExtendedTimestamp:k,extraFieldExtendedTimestampFlag:z,rawExtraFieldNTFS:x,rawExtraFieldAES:v}=l,{dataDescriptorArray:A}=u,{rawFilename:C,lastAccessDate:D,creationDate:R,password:_,rawPassword:W,level:F,zip64:T,zip64UncompressedSize:U,zip64CompressedSize:L,zip64Offset:I,zip64DiskNumberStart:N,zipCrypto:O,dataDescriptor:P,directory:q,versionMadeBy:H,rawComment:M,rawExtraField:B,useWebWorkers:V,onstart:Z,onprogress:K,onend:X,signal:Y,encryptionStrength:j,extendedTimestamp:J,msDosCompatible:Q,internalFileAttribute:$,externalFileAttribute:ee,useCompressionStream:ne,passThrough:re}=c,se={lock:s,versionMadeBy:H,zip64:T,directory:!!q,filenameUTF8:!0,rawFilename:C,commentUTF8:!0,rawComment:M,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:x,rawExtraFieldAES:v,rawExtraField:B,extendedTimestamp:J,msDosCompatible:Q,internalFileAttribute:$,externalFileAttribute:ee,diskNumberStart:r};let{signature:ie,uncompressedSize:ae}=c,oe=0;re||(ae=0);const{writable:ce}=t;if(e){e.chunkSize=te(o),await Dr(ce,f);const t=e.readable,n=t.size=e.size,r={options:{codecType:ut,level:F,rawPassword:W,password:_,encryptionStrength:j,zipCrypto:m&&O,passwordVerification:m&&O&&g>>8&255,signed:!re,compressed:y&&!re,encrypted:m&&!re,useWebWorkers:V,useCompressionStream:ne,transferStreams:!1},config:o,streamOptions:{signal:Y,size:n,onstart:Z,onprogress:K,onend:X}},s=await Ct({readable:t,writable:ce},r);oe=s.outputSize,re||(ae=s.inputSize,ie=s.signature),ce.size+=ae}else await Dr(ce,f);let le;if(T){let e=4;U&&(e+=8),L&&(e+=8),I&&(e+=8),N&&(e+=4),le=new h(e)}else le=new h;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:s,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:c}=e,{headerView:l,encrypted:u}=o,{dataDescriptorView:d,dataDescriptorOffset:f}=c,{zip64:h,zip64UncompressedSize:w,zip64CompressedSize:p,zipCrypto:g,dataDescriptor:m}=t;if(u&&!g||n===G||(Tr(l,10,n),m&&Tr(d,f,n)),h){const e=Ir(r);Er(e,0,1),Er(e,2,Nr(r)-4);let t=4;w&&(Tr(l,18,E),Ur(e,t,i(a)),t+=8),p&&(Tr(l,14,E),Ur(e,t,i(s))),m&&(Ur(d,f+4,i(s)),Ur(d,f+12,i(a)))}else Tr(l,14,s),Tr(l,18,a),m&&(Tr(d,f+4,s),Tr(d,f+8,a))})({signature:ie,rawExtraFieldZip64:le,compressedSize:oe,uncompressedSize:ae,headerInfo:l,dataDescriptorInfo:u},c),P&&await Dr(ce,A),n.assign(se,{uncompressedSize:ae,compressedSize:oe,lastModDate:p,rawLastModDate:g,creationDate:R,lastAccessDate:D,encrypted:m,zipCrypto:O,size:d+oe,compressionMethod:S,version:b,headerArray:w,signature:ie,rawExtraFieldZip64:le,extraFieldExtendedTimestampFlag:z,zip64UncompressedSize:U,zip64CompressedSize:L,zip64Offset:I,zip64DiskNumberStart:N}),se})(s,D,_,a,e.config,o),C=!1,c.set(r,_),_.filename=r,k){await D.writable.getWriter().close();let e=await R;await t,await W(),A=!0,w||(e=await(async(e,t,n,{zipCrypto:r})=>{let s;s=await t.slice(0,26).arrayBuffer(),26!=s.byteLength&&(s=s.slice(0,26));const i=new g(s);return e.encrypted&&!r||Tr(i,14,e.signature),e.zip64?(Tr(i,18,E),Tr(i,22,E)):(Tr(i,18,e.compressedSize),Tr(i,22,e.uncompressedSize)),await Dr(n,new h(s)),t.slice(s.byteLength)})(_,e,m,o)),await F(m),_.diskNumberStart=l.diskNumber,z=l.diskOffset,await e.stream().pipeTo(m,{preventClose:!0,preventAbort:!0,signal:p}),m.size+=e.size,A=!1}if(_.offset=e.offset-z,_.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:s}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:c,zip64DiskNumberStart:l}=t,u=Ir(n);let d=4;a&&(d+=8),o&&(d+=8),c&&(Ur(u,d,i(r)),d+=8),l&&Tr(u,d,s)})(_,o);else if(_.offset>E)throw new f(kr);return e.offset+=_.size,_}catch(t){if(k&&A||!k&&C){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}k?e.offset+=D.writable.size:e.offset=D.writable.size}throw c.delete(r),t}finally{k&&e.bufferedWrites--,x&&x(),z&&z()}async function W(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new y((t=>z=()=>{e.writerLocked=!1,t()})),await t}async function F(e){Nr(m.localHeaderArray)>l.availableSize&&(l.availableSize=0,await Dr(e,new h))}})(e,r,s,{headerInfo:Se,dataDescriptorInfo:ke,metadataSize:ze},c)}finally{e.pendingEntriesSize-=oe}return n.assign(xe,{name:r,comment:m,extraField:ie}),new Pn(xe)})(c,e,r,s),l.add(m),await m}catch(t){throw c.filenames.delete(e),t}finally{l.delete(m);const e=Ar.shift();e?e():vr--}}async close(e=new h,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await y.allSettled(t.from(r));return await(async(e,n,r)=>{const{files:s,writer:o}=e,{diskOffset:c,writable:l}=o;let{diskNumber:u}=o,d=0,w=0,p=e.offset-c,g=s.size;for(const[,e]of s){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:r,rawComment:s,rawExtraFieldNTFS:i,rawExtraField:o,extendedTimestamp:c,extraFieldExtendedTimestampFlag:l,lastModDate:u}=e;let d;if(c){d=new h(9);const e=Ir(d);Er(e,0,M),Er(e,2,5),Fr(e,4,l),Tr(e,5,a.floor(u.getTime()/1e3))}else d=new h;e.rawExtraFieldCDExtendedTimestamp=d,w+=46+Nr(t,s,n,r,i,d,o)}const m=new h(w),y=Ir(m);await un(o);let b=0;for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:i,rawExtraFieldZip64:a,rawExtraFieldAES:c,rawExtraFieldCDExtendedTimestamp:u,rawExtraFieldNTFS:f,rawExtraField:h,rawComment:w,versionMadeBy:p,headerArray:g,directory:S,zip64:k,zip64UncompressedSize:z,zip64CompressedSize:x,zip64DiskNumberStart:v,zip64Offset:A,msDosCompatible:C,internalFileAttribute:D,externalFileAttribute:R,diskNumberStart:_,uncompressedSize:W,compressedSize:F}=n,U=Nr(a,c,u,f,h);Tr(y,d,N),Er(y,d+4,p);const L=Ir(g);z||Tr(L,18,W),x||Tr(L,14,F),Lr(m,g,d+6),Er(y,d+30,U),Er(y,d+32,Nr(w)),Er(y,d+34,k&&v?T:_),Er(y,d+36,D),R?Tr(y,d+38,R):S&&C&&Fr(y,d+38,16),Tr(y,d+42,k&&A?E:t),Lr(m,i,d+46),Lr(m,a,d+46+Nr(i)),Lr(m,c,d+46+Nr(i,a)),Lr(m,u,d+46+Nr(i,a,c)),Lr(m,f,d+46+Nr(i,a,c,u)),Lr(m,h,d+46+Nr(i,a,c,u,f)),Lr(m,w,d+46+Nr(i)+U);const I=46+Nr(i,w)+U;if(d-b>o.availableSize&&(o.availableSize=0,await Dr(l,m.slice(b,d)),b=d),d+=I,r.onprogress)try{await r.onprogress(e+1,s.size,new Pn(n))}catch(e){}}await Dr(l,b?m.slice(b):m);let S=o.diskNumber;const{availableSize:k}=o;H>k&&S++;let z=_r(e,r,Tn);if(p>E||w>E||g>T||S>T){if(!1===z)throw new f(kr);z=!0}const x=new h(z?98:H),v=Ir(x);d=0,z&&(Tr(v,0,P),Ur(v,4,i(44)),Er(v,12,45),Er(v,14,45),Tr(v,16,S),Tr(v,20,u),Ur(v,24,i(g)),Ur(v,32,i(g)),Ur(v,40,i(w)),Ur(v,48,i(p)),Tr(v,56,q),Ur(v,64,i(p)+i(w)),Tr(v,72,S+1),_r(e,r,"supportZip64SplitFile",!0)&&(S=T,u=T),g=T,p=E,w=E,d+=76),Tr(v,d,O),Er(v,d+4,S),Er(v,d+6,u),Er(v,d+8,g),Er(v,d+10,g),Tr(v,d+12,w),Tr(v,d+16,p);const A=Nr(n);if(A){if(A>T)throw new f(wr);Er(v,d+20,A)}await Dr(l,x),A&&await Dr(l,n)})(this,e,n),_r(this,n,"preventClose")||await o.getWriter().close(),s.getData?s.getData():o}}async function Dr(e,t){const n=e.getWriter();try{await n.ready,e.size+=Nr(t),await n.write(t)}finally{n.releaseLock()}}function Rr(e){if(e)return(i(e.getTime())+i(116444736e5))*i(1e4)}function _r(e,t,n,r){const s=t[n]===G?e.options[n]:t[n];return s===G?r:s}function Wr(e){return e+5*(a.floor(e/16383)+1)}function Fr(e,t,n){e.setUint8(t,n)}function Er(e,t,n){e.setUint16(t,n,!0)}function Tr(e,t,n){e.setUint32(t,n,!0)}function Ur(e,t,n){e.setBigUint64(t,n,!0)}function Lr(e,t,n){e.set(t,n)}function Ir(e){return new g(e.buffer)}function Nr(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}class Or{constructor(e,t,r,s){const i=this;if(e.root&&s&&s.getChildByName(t))throw new f("Entry filename already exists");r||(r={}),n.assign(i,{fs:e,name:t,data:r.data,options:r.options,id:e.entries.length,parent:s,children:[],uncompressedSize:r.uncompressedSize||0,passThrough:r.passThrough}),e.entries.push(i),s&&i.parent.children.push(i)}moveTo(e){this.fs.move(this,e)}getFullname(){return this.getRelativeName()}getRelativeName(e=this.fs.root){let t=this.name,n=this.parent;for(;n&&n!=e;)t=(n.name?n.name+"/":"")+t,n=n.parent;return t}isDescendantOf(e){let t=this.parent;for(;t&&t.id!=e.id;)t=t.parent;return!!t}rename(e){const t=this.parent;if(t&&t.getChildByName(e))throw new f("Entry filename already exists");this.name=e}}class Pr extends Or{constructor(e,t,n,r){super(e,t,n,r);const s=this;s.Reader=n.Reader,s.Writer=n.Writer,n.getData&&(s.getData=n.getData)}clone(){return new Pr(this.fs,this.name,this)}async getData(e,t={}){const n=this;if(!e||e.constructor==n.Writer&&n.data)return n.data;{const r=n.reader=new n.Reader(n.data,t),s=n.data?n.data.uncompressedSize:r.size;await y.all([un(r),un(e,s)]);const i=r.readable;return i.size=n.uncompressedSize=r.size,await i.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return this.data.encrypted}async checkPassword(e,t={}){const n=this;if(!n.isPasswordProtected())return!0;t.password=e,t.checkPasswordOnly=!0;try{return await n.data.getData(null,t),!0}catch(e){if(e.message==pe)return!1;throw e}}getText(e,t){return this.getData(new Vt(e),t)}getBlob(e,t){return this.getData(new Mt(e),t)}getData64URI(e,t){return this.getData(new qt(e),t)}getUint8Array(e){return this.getData(new on,e)}getWritable(e=new C,t){return this.getData({writable:e},t)}replaceBlob(e){n.assign(this,{data:e,Reader:Ht,Writer:Mt,reader:null})}replaceText(e){n.assign(this,{data:e,Reader:Bt,Writer:Vt,reader:null})}replaceData64URI(e){n.assign(this,{data:e,Reader:Pt,Writer:qt,reader:null})}replaceUint8Array(e){n.assign(this,{data:e,Reader:an,Writer:on,reader:null})}replaceReadable(e){n.assign(this,{data:null,Reader:()=>({readable:e}),Writer:null,reader:null})}}class qr extends Or{constructor(e,t,n,r){super(e,t,n,r),this.directory=!0}clone(e){const t=this,n=new qr(t.fs,t.name);return e&&(n.children=t.children.map((t=>{const r=t.clone(e);return r.parent=n,r}))),n}addDirectory(e,t){return Xr(this,e,{options:t},!0)}addText(e,t,n={}){return Xr(this,e,{data:t,Reader:Bt,Writer:Vt,options:n,uncompressedSize:t.length})}addBlob(e,t,n={}){return Xr(this,e,{data:t,Reader:Ht,Writer:Mt,options:n,uncompressedSize:t.size})}addData64URI(e,t,n={}){let r=t.length;for(;"="==t.charAt(r-1);)r--;const s=t.indexOf(",")+1;return Xr(this,e,{data:t,Reader:Pt,Writer:qt,options:n,uncompressedSize:a.floor(.75*(r-s))})}addUint8Array(e,t,n={}){return Xr(this,e,{data:t,Reader:an,Writer:on,options:n,uncompressedSize:t.length})}addHttpContent(e,t,n={}){return Xr(this,e,{data:t,Reader:class extends sn{constructor(e){super(e,n)}},options:n})}addReadable(e,t,n={}){return Xr(this,e,{Reader:()=>({readable:t}),options:n})}addFileSystemEntry(e,t={}){return Zr(this,e,t)}addFileSystemHandle(e,t={}){return Zr(this,e,t)}addFile(e,t={}){return t.lastModDate||(t.lastModDate=new o(e.lastModified)),Xr(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}addData(e,t){return Xr(this,e,t)}importBlob(e,t){return this.importZip(new Ht(e),t)}importData64URI(e,t){return this.importZip(new Pt(e),t)}importUint8Array(e,t){return this.importZip(new an(e),t)}importHttpContent(e,t){return this.importZip(new sn(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new Mt(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new qt(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new on,e)}async exportWritable(e=new C,t={}){return await this.exportZip({writable:e},t),e}async importZip(e,t={}){await un(e);const r=new er(e,t),s=[],i=await r.getEntries();for(const e of i){let r=this;try{const i=e.filename.split("/"),a=i.pop();i.forEach(((t,n)=>{const a=r;r=r.getChildByName(t),r||(r=new qr(this.fs,t,{data:n==i.length-1?e:null},a),s.push(r))})),e.directory||s.push(Xr(r,a,{data:e,Reader:Mr(n.assign({},t)),uncompressedSize:e.uncompressedSize,passThrough:t.passThrough}))}catch(t){try{t.cause={entry:e}}catch(e){}throw t}}return s}async exportZip(e,r){const s=this;r.bufferedWrite===G&&(r.bufferedWrite=!0),await y.all([Br(s,r.readerOptions),un(e)]);const i=new Cr(e,r);return await(async(e,r,s,i)=>{const a=r,o=new c;await async function e(r,c){async function l(c){const l=i.relativePath?c.getRelativeName(a):c.getFullname(),u=c.options||{};let d={};if(c.data instanceof Pn){const{externalFileAttribute:e,versionMadeBy:t,comment:r,lastModDate:s,creationDate:i,lastAccessDate:a,uncompressedSize:o,encrypted:l,zipCrypto:u,signature:f,compressionMethod:h,extraFieldAES:w}=c.data;if(d={externalFileAttribute:e,versionMadeBy:t,comment:r,lastModDate:s,creationDate:i,lastAccessDate:a},c.passThrough){let e,t;0===h&&(e=0),w&&(t=w.strength),d=n.assign(d,{passThrough:!0,encrypted:l,zipCrypto:u,signature:f,uncompressedSize:o,level:e,encryptionStrength:t,compressionMethod:h})}}await r.add(l,c.reader,n.assign({directory:c.directory},n.assign({},i,d,u,{onprogress:async e=>{if(i.onprogress){o.set(l,e);try{await i.onprogress(t.from(o.values()).reduce(((e,t)=>e+t)),s)}catch(e){}}}}))),await e(r,c)}await(async()=>{if(i.bufferedWrite)await y.allSettled(c.children.map(l));else for(const e of c.children)await l(e)})()}(e,r)})(i,s,(e=>{let t=0;return e.forEach((function e(n){t+=n.uncompressedSize,n.children&&n.children.forEach(e)})),t})([s]),r),await i.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let n=0;nn.checkPassword(e,t))))).includes(!1)}}const Hr={FS:class{constructor(){Gr(this)}get children(){return this.root.children}remove(e){Vr(e),this.entries[e.id]=null}move(e,t){if(e==this.root)throw new f("Root directory cannot be moved");if(!t.directory)throw new f("Target entry is not a directory");if(t.isDescendantOf(e))throw new f("Entry is a ancestor of target entry");if(e!=t){if(t.getChildByName(e.name))throw new f("Entry filename already exists");Vr(e),e.parent=t,t.children.push(e)}}find(e){const t=e.split("/");let n=this.root;for(let e=0;n&&e{if(e.directory)await Br(e,t);else{const n=e.reader=new e.Reader(e.data,t);try{await un(n)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch(e){}throw t}e.uncompressedSize=n.size}})))}function Vr(e){if(e.parent){const t=e.parent.children;t.forEach(((n,r)=>{n.id==e.id&&t.splice(r,1)}))}}function Zr(e,t,r){return async function e(t,s,i){if(s)try{if((s.isFile||s.isDirectory)&&(s=await Kr(s)),"file"==s.kind){const e=await s.getFile();i.push(t.addData(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:n.assign({},{lastModDate:new o(e.lastModified)},r),uncompressedSize:e.size}))}else if("directory"==s.kind){const n=t.addDirectory(s.name);i.push(n);for await(const t of s.values())await e(n,t,i)}}catch(e){const t=e.message+(s?" ("+s.name+")":"");throw new f(t)}return i}(e,t,[])}async function Kr(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new y(((t,n)=>e.file(t,n)))),e.isDirectory){t.kind="directory";const n=await(async e=>{const t=[];function n(e,r,s){e.readEntries((async i=>{if(i.length){for(const e of i)t.push(await Kr(e));n(e,r,s)}else r(t)}),s)}return await new y(((t,r)=>n(e.createReader(),t,r))),{[Symbol.iterator](){let e=0;return{next(){const n={value:t[e],done:e===t.length};return e++,n}}}}})(e);t.values=()=>n}return t}function Gr(e){e.entries=[],e.root=new qr(e)}function Xr(e,t,n,r){if(e.directory)return r?new qr(e.fs,t,n,e):new Pr(e.fs,t,n,e);throw new f("Parent entry is not a directory")}let Yr;try{Yr=void 0===k&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===k?location.href:F&&"SCRIPT"===F.tagName.toUpperCase()&&F.src||new d("zip-fs.min.js",k.baseURI).href}catch(e){}ne({baseURL:Yr}),((e,t={})=>{const n='const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self,k=void 0,v="undefined",S="function";class z{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const C=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;C[e]=t}class x{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^C[255&(t^e[n])];this.t=t}get(){return~this.t}}class A extends p{constructor(){let e;const t=new x;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const _={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=_.i(n);return 32===r?e.concat(t):_.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+_.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=_.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=_.i(s);return r.push(_.h(t+i&31,t+i>32?n:r.pop(),1)),r}},I={bytes:{p(e){const t=_.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},m(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}P(){const e=this;let t=e.C;const n=e.S;t=_.concat(t,[_.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.I(t.splice(0,16));return e.reset(),n}D(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}V(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.V(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.V(5,o)+n.D(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.V(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},D={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew V.R(I.bytes.m(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=_;for(t=I.bytes.m(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).P());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.U[0].update(r[0]),t.U[1].update(r[1]),t.K=new n(t.U[0])}reset(){const e=this;e.K=new e.M(e.U[0]),e.N=!1}update(e){this.N=!0,this.K.update(e)}digest(){const e=this,t=e.K.P(),n=new e.M(e.U[1]).update(t).P();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},R=typeof h!=v&&typeof h.getRandomValues==S,B="Invalid password",E="Invalid signature",M="zipjs-abort-check-password";function U(e){return R?h.getRandomValues(e):D.getRandomValues(e)}const K=16,N={name:"PBKDF2"},O=t.assign({hash:{name:"HMAC"}},N),T=t.assign({iterations:1e3,hash:{name:"SHA-1"}},N),W=["deriveBits"],j=[8,12,16],H=[16,24,32],L=10,F=[0,0,0,0],q=typeof h!=v,G=q&&h.subtle,J=q&&typeof G!=v,Q=I.bytes,X=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},Y=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=_.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return _.u(t,s)}},Z=V.R;let $=q&&J&&typeof G.importKey==S,ee=q&&J&&typeof G.deriveBits==S;class te extends p{constructor({password:e,rawPassword:n,signed:r,encryptionStrength:o,checkPasswordOnly:c}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),signed:r,X:o-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:o,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await se(e,t,n,ce(r,0,j[t])),o=ce(r,j[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(B)})(n,o,r,ce(e,0,j[o]+2)),e=ce(e,j[o]+2),c?t.error(new s(M)):f()):await a;const l=new i(e.length-L-(e.length-L)%K);t.enqueue(re(n,e,l,0,L,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;if(r&&n){await c;const f=ce(o,0,o.length-L),a=ce(o,o.length-L);let l=new i;if(f.length){const e=ae(Q,f);r.update(e);const t=n.update(e);l=fe(Q,t)}if(t){const e=ce(fe(Q,r.digest()),0,L);for(let t=0;L>t;t++)if(e[t]!=a[t])throw new s(E)}e.enqueue(l)}}})}}class ne extends p{constructor({password:e,rawPassword:n,encryptionStrength:r}){let s;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=U(new i(j[t]));return oe(r,await se(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%K);a.set(f,0),t.enqueue(re(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:r,ready:o}=this;if(n&&t){await o;let c=new i;if(r.length){const e=t.update(ae(Q,r));n.update(e),c=fe(Q,e)}s.signature=fe(Q,n.digest()).slice(0,L),e.enqueue(oe(c,s.signature))}}}),s=this}}function re(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=oe(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%K)),u=0;l-K>=u;u+=K){const e=ae(Q,ce(t,u,u+K));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(fe(Q,s),u+r)}return e.pending=ce(t,u),n}async function se(n,r,s,o){n.password=null;const c=await(async(e,t,n,r,s)=>{if(!$)return V.importKey(t);try{return await G.importKey("raw",t,n,!1,s)}catch(e){return $=!1,V.importKey(t)}})(0,s,O,0,W),f=await(async(e,t,n)=>{if(!ee)return V.B(t,e.salt,T.iterations,n);try{return await G.deriveBits(e,t,n)}catch(r){return ee=!1,V.B(t,e.salt,T.iterations,n)}})(t.assign({salt:o},T),c,8*(2*H[r]+2)),a=new i(f),l=ae(Q,ce(a,0,H[r])),u=ae(Q,ce(a,H[r],2*H[r])),w=ce(a,2*H[r]);return t.assign(n,{keys:{key:l,$:u,passwordVerification:w},Y:new Y(new X(l),e.from(F)),Z:new Z(u)}),w}function ie(e,t){return t===k?(e=>{if(typeof w==v){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),i=~e.te.get(),e.keys=[n,s,i]}function ye(e){const t=2|e.keys[2];return me(r.imul(t,1^t)>>>8)}function me(e){return 255&e}function be(e){return 4294967295&e}const ge="deflate-raw";class ke extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=Se(super.readable);i&&!c||!f||(w=new A,d=xe(d,w)),s&&(d=Ce(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=xe(d,new ue(e)):(h=new ne(e),d=xe(d,h))),ze(u,d,(()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ve extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=Se(super.readable);o&&(i?d=xe(d,new le(e)):(h=new te(e),d=xe(d,h))),a&&(d=Ce(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new A,d=xe(d,w)),ze(this,d,(()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(E)}}))}}function Se(e){return xe(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ze(e,n,r){n=xe(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Ce(e,t,n,r,s){try{e=xe(e,new(t&&r?r:s)(ge,n))}catch(r){if(!t)return e;try{e=xe(e,new s(ge,n))}catch(t){return e}}return e}function xe(e,t){return e.pipeThrough(t)}const Ae="data",_e="close";class Ie extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=ke:s.startsWith("inflate")&&(i=ve);let o=0,c=0;const f=new i(e,n),a=super.readable,l=new p({transform(e,t){e&&e.length&&(c+=e.length,t.enqueue(e))},flush(){t.assign(r,{inputSize:c})}}),u=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=f;t.assign(r,{signature:e,outputSize:o,inputSize:c})}});t.defineProperty(r,"readable",{get:()=>a.pipeThrough(l).pipeThrough(f).pipeThrough(u)})}}class Pe extends p{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new i(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}const De=new a,Ve=new a;let Re,Be=0,Ee=!0;async function Me(e){try{const{options:t,scripts:r,config:s}=e;if(r&&r.length)try{Ee?importScripts.apply(k,r):await Ue(r)}catch(e){Ee=!1,await Ue(r)}self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new z(self.Deflate)),self.Inflate&&(s.DecompressionStream=new z(self.Inflate));const i={highWaterMark:1},o=e.readable||new y({async pull(e){const t=new u((e=>De.set(Be,e)));Ke({type:"pull",messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ve.set(Be,t),Ke({type:Ae,value:e,messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new Ie(t,s);Re=new AbortController;const{signal:a}=Re;await o.pipeThrough(f).pipeThrough(new Pe(s.chunkSize)).pipeTo(c,{signal:a,preventClose:!0,preventAbort:!0}),await c.getWriter().close();const{signature:l,inputSize:w,outputSize:h}=f;Ke({type:_e,result:{signature:l,inputSize:w,outputSize:h}})}catch(e){Ne(e)}}async function Ue(e){for(const t of e)await import(t)}function Ke(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Ne(e=new s("Unknown error")){const{message:t,stack:n,code:r,name:i}=e;d({error:{message:t,stack:n,code:r,name:i}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&Me(e),t==Ae){const e=De.get(n);De.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ve.get(n);Ve.delete(n),e()}t==_e&&Re.abort()}catch(e){Ne(e)}}));const Oe=-2;function Te(t){return We(t.map((([t,n])=>new e(t).fill(n,0,t))))}function We(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?We(n):n)),[])}const je=[0,1,2,3].concat(...Te([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function He(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Le(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}He.ge=[0,1,2,3,4,5,6,7].concat(...Te([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),He.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],He.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],He.Se=e=>256>e?je[e]:je[256+(e>>>7)],He.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],He.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],He.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],He.Ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Fe=Te([[144,8],[112,9],[24,7],[8,8]]);Le._e=We([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Fe[t]])));const qe=Te([[30,5]]);function Ge(e,t,n,r,s){const i=this;i.Ie=e,i.Pe=t,i.De=n,i.Ve=r,i.Re=s}Le.Be=We([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,qe[t]]))),Le.Ee=new Le(Le._e,He.ze,257,286,15),Le.Me=new Le(Le.Be,He.Ce,0,30,15),Le.Ue=new Le(null,He.xe,0,19,7);const Je=[new Ge(0,0,0,0,0),new Ge(4,4,8,4,1),new Ge(4,5,16,8,1),new Ge(4,6,32,32,1),new Ge(4,4,16,16,2),new Ge(8,16,32,32,2),new Ge(8,16,128,128,2),new Ge(8,32,128,256,2),new Ge(32,128,258,1024,2),new Ge(32,258,258,4096,2)],Qe=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Xe=113,Ye=666,Ze=262;function $e(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function et(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,A,_,I,P,D,V,R,B,E,M,U;const K=new He,N=new He,O=new He;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)U[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?U[2*n]+=i:0!==n?(n!=r&&U[2*n]++,U[32]++):i>10?U[36]++:U[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ke[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,U)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,U),o--),Y(16,U),X(o-3,2)):o>10?(Y(18,U),X(o-11,7)):(Y(17,U),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(He.ge[n]+256+1)]++,M[2*He.Se(t)]++),!(8191&W)&&D>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+He.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ke.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;D>0?(K.ne(e),N.ne(e),o=(()=>{let t;for(G(E,K.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===U[2*He.Ae[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Le._e,Le.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(U[2*He.Ae[r]+1],3);Z(E,e-1),Z(M,t-1)})(K.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-A-C,0===s&&0===C&&0===A)s=f;else if(-1==s)s--;else if(C>=f+f-Ze){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+A,s),A+=e,3>A||(p=255&u[C],p=(p<A&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=_;const o=C>f-Ze?C-(f-Ze):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>_||(r>>=2),c>A&&(c=A);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>A?A:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],U=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Oe:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=Xe,c=0,K.re=E,K.ie=Le.Ee,N.re=M,N.ie=Le.Me,O.re=U,O.ie=Le.Ue,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve,C=0,k=0,A=0,v=_=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=Xe&&n!=Ye?Oe:(e.Oe=null,e.Ne=null,e.Ke=null,d=null,h=null,u=null,e.Fe=null,n==Xe?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Oe:(Je[D].Re!=Je[t].Re&&0!==e.qe&&(r=e.Ye(1)),D!=t&&(D=t,P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve),V=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Oe;if(3>i)return 0;for(i>f-Ze&&(i=f-Ze,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Oe;if(!r.$e||!r.et&&0!==r.We||n==Ye&&4!=i)return r.Le=Qe[4],Oe;if(0===r.tt)return r.Le=Qe[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(D-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=Xe,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=Qe[7],-5;if(n==Ye&&0!==t.We)return r.Le=Qe[7],-5;if(0!==t.We||0!==A||0!=i&&n!=Ye){switch(R=-1,Je[D].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=A){if(ie(),0===A&&0==e)return 0;if(0===A)break}if(C+=A,A=0,n=k+r,(0===C||C>=n)&&(A=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Ze&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<f-Ze||2!=V&&(v=oe(r)),3>v)n=ee(0,255&u[C]),A--,C++;else if(n=ee(C-x,v-3),A-=v,v>P||3>A)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<_&&f-Ze>=(C-s&65535)&&(2!=V&&(v=oe(s)),5>=v&&(1==V||3==v&&C-x>4096)&&(v=2)),3>_||v>_)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,A--,0===t.tt)return 0}else z=1,C++,A--;else{r=C+A-3,n=ee(C-1-S,_-3),A-=_-1,_-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Le._e),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function tt(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function nt(e){const t=new tt,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}tt.prototype={He(e,t){const n=this;return n.Fe=new et,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Oe},Qe(){const e=this;if(!e.Fe)return Oe;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Oe},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Oe},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ke.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const rt=-2,st=-3,it=-5,ot=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],ct=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ft=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],at=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],lt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ut=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],wt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ht(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,A,_,I,P;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return st;if(0>(I-=n[g]))return st;for(n[g]+=I,i[1]=k=0,C=1,_=2;0!=--g;)i[_]=k+=n[C],_++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>A+S;){if(b++,A+=S,P=m-A,P=P>S?S:P,(y=1<<(k=v-A))>p+1&&(y-=p+1,_=v,P>k))for(;++kn[++_];)y-=n[_];if(P=1<1440)return st;s[b]=x=h[0],h[0]+=P,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>A-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-A,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>A;P>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<c;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==st?f.Le="oversubscribed dynamic bit lengths tree":a!=it&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=st),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,at,lt,a,i,u,e,t),0!=h||0===i[0]?(h==st?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=st),h):(c(288),h=o(s,n,r,0,ut,wt,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==st?w.Le="oversubscribed distance tree":h==it?(w.Le="incomplete distance tree",h=st):-4!=h&&(w.Le="empty distance tree with lengths",h=st),h):0)}}function dt(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15,k=a[z+2]+(w&ot[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(64&u)return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st;f+=a[z+2],f+=w&ot[u],z=3*(l+f),u=a[z]}break}if(64&u)return 32&u?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st);if(f+=a[z+2],f+=w&ot[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,A=0,_=0;for(_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,m=p(u,w,r,h,s,d,e,y),_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=SA;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>>=n[g+1],A-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(16&k){a=15&k,i=n[g+2],t=2;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}if(32&k){t=7;break}return t=9,y.Le="invalid literal/length code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 2:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=n[g+1],A-=n[g+1],k=n[g],16&k){a=15&k,l=n[g+2],t=4;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 4:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(A-=8,v++,_--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ht.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=ct,r[0]=ft,0);const pt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function yt(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new dt;let h=0,d=new f(4320);const p=new ht;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ht.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[pt[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==st&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&ot[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,A=[],_=[],I=[],P=[],A[0]=9,_[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,A,_,I,P,d,e),0!=i)return i==st&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(A[0],_[0],d,I[0],d,P[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const mt=13,bt=[0,0,255,255];function gt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):rt}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),rt):(e.zt=r,n.gt.kt=new yt(n,1<{let n,r;if(!e||!e.gt||!e.et)return rt;const s=e.gt;for(t=4==t?it:0,n=it;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=mt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=mt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=mt,e.Le="incorrect header check",s.marker=5;break}if(!(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=mt,e.Le="need dictionary",s.marker=0,rt;case 7:if(n=s.kt.ut(e,n),n==st){s.mode=mt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case mt:return st;default:return rt}},e._t=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return rt;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return rt;const c=e.gt;if(c.mode!=mt&&(c.mode=mt,c.marker=0),0===(n=e.We))return it;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==bt[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?st:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Pt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():rt}function kt(){}function vt(e){const t=new kt,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t.At(0),c&&a===it){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}kt.prototype={xt(e){const t=this;return t.gt=new gt,e||(e=15),t.gt.xt(t,e)},At(e){const t=this;return t.gt?t.gt.At(t,e):rt},Ct(){const e=this;if(!e.gt)return rt;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):rt},_t(e,t){const n=this;return n.gt?n.gt._t(n,e,t):rt},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=nt,self.Inflate=vt};\n',r=()=>t.useDataURI?"data:text/javascript,"+encodeURIComponent(n):d.createObjectURL(new m([n],{type:"text/javascript"}));e({workerScripts:{inflate:[r],deflate:[r]}})})(ne),e.BlobReader=Ht,e.BlobWriter=Mt,e.Data64URIReader=Pt,e.Data64URIWriter=qt,e.ERR_BAD_FORMAT=qn,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Bn,e.ERR_DUPLICATED_NAME=hr,e.ERR_ENCRYPTED=Kn,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Mn,e.ERR_EOCDR_NOT_FOUND=Hn,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Zn,e.ERR_HTTP_RANGE=_t,e.ERR_INVALID_COMMENT=wr,e.ERR_INVALID_ENCRYPTION_STRENGTH=yr,e.ERR_INVALID_ENTRY_COMMENT=pr,e.ERR_INVALID_ENTRY_NAME=gr,e.ERR_INVALID_EXTRAFIELD_DATA=Sr,e.ERR_INVALID_EXTRAFIELD_TYPE=br,e.ERR_INVALID_PASSWORD=pe,e.ERR_INVALID_SIGNATURE=ge,e.ERR_INVALID_VERSION=mr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Wt,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Vn,e.ERR_SPLIT_ZIP_FILE=Yn,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=zr,e.ERR_UNSUPPORTED_COMPRESSION=Xn,e.ERR_UNSUPPORTED_ENCRYPTION=Gn,e.ERR_UNSUPPORTED_FORMAT=kr,e.HttpRangeReader=class extends sn{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=sn,e.Reader=Nt,e.SplitDataReader=cn,e.SplitDataWriter=ln,e.SplitZipReader=wn,e.SplitZipWriter=pn,e.TextReader=Bt,e.TextWriter=Vt,e.Uint8ArrayReader=an,e.Uint8ArrayWriter=on,e.Writer=Ot,e.ZipReader=er,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:n}=new v,r=new er(t,e).getEntriesGenerator();this.readable=new A({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const s={...n,readable:(()=>{const{readable:e,writable:t}=new v;if(n.getData)return n.getData(t),e})()};delete s.getData,e.enqueue(s)}}),this.writable=n}},e.ZipWriter=Cr,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new v;this.readable=t,this.zipWriter=new Cr(n,e)}transform(e){const{readable:t,writable:n}=new v({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new v;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=ne,e.fs=Hr,e.getMimeType=()=>"application/octet-stream",e.initReader=dn,e.initShimAsyncCodec=(e,t={},n)=>({Deflate:se(e.Deflate,t.deflate,n),Inflate:se(e.Inflate,t.inflate,n)}),e.initStream=un,e.initWriter=fn,e.readUint8Array=hn,e.terminateWorkers=async()=>{await y.allSettled(xt.map((e=>(Dt(e),e.terminate()))))}})); +((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:r,Number:s,BigInt:i,Math:a,Date:o,Map:c,Set:l,Response:u,URL:d,Error:f,Uint8Array:h,Uint16Array:w,Uint32Array:p,DataView:g,Blob:m,Promise:y,TextEncoder:b,TextDecoder:S,document:k,crypto:z,btoa:x,TransformStream:v,ReadableStream:A,WritableStream:C,CompressionStream:D,DecompressionStream:R,navigator:_,Worker:F}="undefined"!=typeof globalThis?globalThis:this||self;var W=void 0!==k?k.currentScript:null;const E=4294967295,T=65535,U=67324752,L=134695760,I=L,N=33639248,O=101010256,P=101075792,q=117853008,H=22,M=21589,B=2048,V="/",Z=new o(2107,11,31),K=new o(1980,0,1),G=void 0,X="undefined",Y="function";class j{constructor(e){return class extends v{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}let J=2;try{typeof _!=X&&_.hardwareConcurrency&&(J=_.hardwareConcurrency)}catch(e){}const Q={chunkSize:524288,maxWorkers:J,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:G,CompressionStreamNative:typeof D!=X&&D,DecompressionStreamNative:typeof R!=X&&R},$=n.assign({},Q);function ee(){return $}function te(e){return a.max(e.chunkSize,64)}function ne(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:u,DecompressionStream:d,workerScripts:h}=e;if(re("baseURL",n),re("chunkSize",r),re("maxWorkers",s),re("terminateWorkerTimeout",i),re("useCompressionStream",a),re("useWebWorkers",o),c&&($.CompressionStream=new j(c)),l&&($.DecompressionStream=new j(l)),re("CompressionStream",u),re("DecompressionStream",d),h!==G){const{deflate:e,inflate:n}=h;if((e||n)&&($.workerScripts||($.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");$.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");$.workerScripts.inflate=n}}}function re(e,t){t!==G&&($[e]=t)}function se(e,t,r){return class{constructor(s){const i=this;var a,o;a=s,o="level",(typeof n.hasOwn===Y?n.hasOwn(a,o):a.hasOwnProperty(o))&&s.level===G&&delete s.level,i.codec=new e(n.assign({},t,s)),r(i.codec,(e=>{if(i.pendingData){const t=i.pendingData;i.pendingData=new h(t.length+e.length);const{pendingData:n}=i;n.set(t,0),n.set(e,t.length)}else i.pendingData=new h(e)}))}append(e){return this.codec.push(e),s(this)}flush(){return this.codec.push(new h,!0),s(this)}};function s(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new h}}const ie=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;ie[e]=t}class ae{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^ie[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class oe extends v{constructor(){let e;const t=new ae;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new h(4);new g(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function ce(e){if(typeof b==X){const t=new h((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=le.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>a.round(e/1099511627776)||32,_shiftRight(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=le.getPartial(s);return r.push(le.partial(t+i&31,t+i>32?n:r.pop(),1)),r}},ue={bytes:{fromBits(e){const t=le.bitLength(e)/8,n=new h(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const i=new p(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);s>=e;e+=t.blockSize)t._block(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=le.concat(t,[le.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}_S(e,t){return t<>>32-e}_block(e){const n=this,r=n._h,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let i=r[0],o=r[1],c=r[2],l=r[3],u=r[4];for(let e=0;79>=e;e++){16>e||(s[e]=n._S(1,s[e-3]^s[e-8]^s[e-14]^s[e-16]));const t=n._S(5,i)+n._f(e,o,c,l)+u+s[e]+n._key[a.floor(e/20)]|0;u=l,l=c,c=n._S(30,o),o=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},fe={getRandomValues(e){const t=new p(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(a.random()>.5?1:-1))};for(let r,s=0;snew he.hmacSha1(ue.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new f("invalid params to pbkdf2");const s=1+(r>>5)<<2;let i,a,o,c,l;const u=new ArrayBuffer(s),d=new g(u);let h=0;const w=le;for(t=ue.bytes.toBits(t),l=1;(s||1)>h;l++){for(i=a=e.encrypt(w.concat(t,[l])),o=1;n>o;o++)for(a=e.encrypt(a),c=0;ch&&os&&(e=(new n).update(e).finalize());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},we=typeof z!=X&&typeof z.getRandomValues==Y,pe="Invalid password",ge="Invalid signature",me="zipjs-abort-check-password";function ye(e){return we?z.getRandomValues(e):fe.getRandomValues(e)}const be=16,Se={name:"PBKDF2"},ke=n.assign({hash:{name:"HMAC"}},Se),ze=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Se),xe=["deriveBits"],ve=[8,12,16],Ae=[16,24,32],Ce=10,De=[0,0,0,0],Re=typeof z!=X,_e=Re&&z.subtle,Fe=Re&&typeof _e!=X,We=ue.bytes,Ee=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],s=e.length;let i,a,o,c=1;if(4!==s&&6!==s&&8!==s)throw new f("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],i=s;4*s+28>i;i++){let e=a[i-1];(i%s==0||8===s&&i%s==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%s==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[i]=a[i-s]^e}for(let e=0;i;e++,i--){const t=a[3&e?i:i-4];o[e]=4>=i||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],s=[],i=[];let a,o,c,l;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=o||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=s[c=s[o=s[u]]];let d=16843009*l^65537*c^257*o^16843008*u,f=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][u]=f=f<<24^f>>>8,t[n][i]=d=d<<24^d>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],r=n.length/4-2,s=[0,0,0,0],i=this._tables[t],a=i[0],o=i[1],c=i[2],l=i[3],u=i[4];let d,h,w,p=e[0]^n[0],g=e[t?3:1]^n[1],m=e[2]^n[2],y=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)d=a[p>>>24]^o[g>>16&255]^c[m>>8&255]^l[255&y]^n[b],h=a[g>>>24]^o[m>>16&255]^c[y>>8&255]^l[255&p]^n[b+1],w=a[m>>>24]^o[y>>16&255]^c[p>>8&255]^l[255&g]^n[b+2],y=a[y>>>24]^o[p>>16&255]^c[g>>8&255]^l[255&m]^n[b+3],b+=4,p=d,g=h,m=w;for(let e=0;4>e;e++)s[t?3&-e:e]=u[p>>>24]<<24^u[g>>16&255]<<16^u[m>>8&255]<<8^u[255&y]^n[b++],d=p,p=g,g=m,m=y,y=d;return s}},Te=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];const s=le.bitLength(t);for(let s=0;r>s;s+=4){this.incCounter(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return le.clamp(t,s)}},Ue=he.hmacSha1;let Le=Re&&Fe&&typeof _e.importKey==Y,Ie=Re&&Fe&&typeof _e.deriveBits==Y;class Ne extends v{constructor({password:e,rawPassword:t,signed:r,encryptionStrength:s,checkPasswordOnly:i}){super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:He(e,t),signed:r,strength:s-1,pending:new h})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const s=await qe(e,t,n,Be(r,0,ve[t])),i=Be(r,ve[t]);if(s[0]!=i[0]||s[1]!=i[1])throw new f(pe)})(n,s,r,Be(e,0,ve[s]+2)),e=Be(e,ve[s]+2),i?t.error(new f(me)):a()):await o;const c=new h(e.length-Ce-(e.length-Ce)%be);t.enqueue(Pe(n,e,c,0,Ce,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:i}=this;if(r&&n){await i;const a=Be(s,0,s.length-Ce),o=Be(s,s.length-Ce);let c=new h;if(a.length){const e=Ze(We,a);r.update(e);const t=n.update(e);c=Ve(We,t)}if(t){const e=Be(Ve(We,r.digest()),0,Ce);for(let t=0;Ce>t;t++)if(e[t]!=o[t])throw new f(ge)}e.enqueue(c)}}})}}class Oe extends v{constructor({password:e,rawPassword:t,encryptionStrength:r}){let s;super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:He(e,t),strength:r-1,pending:new h})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:i,ready:a}=n;let o=new h;r?(o=await(async(e,t,n)=>{const r=ye(new h(ve[t]));return Me(r,await qe(e,t,n,r))})(n,s,r),i()):await a;const c=new h(o.length+e.length-e.length%be);c.set(o,0),t.enqueue(Pe(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:i}=this;if(n&&t){await i;let a=new h;if(r.length){const e=t.update(Ze(We,r));n.update(e),a=Ve(We,e)}s.signature=Ve(We,n.digest()).slice(0,Ce),e.enqueue(Me(a,s.signature))}}}),s=this}}function Pe(e,t,n,r,s,i){const{ctr:a,hmac:o,pending:c}=e,l=t.length-s;let u;for(c.length&&(t=Me(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new h(t)).set(n,0)}return e})(n,l-l%be)),u=0;l-be>=u;u+=be){const e=Ze(We,Be(t,u,u+be));i&&o.update(e);const s=a.update(e);i||o.update(s),n.set(Ve(We,s),u+r)}return e.pending=Be(t,u),n}async function qe(e,r,s,i){e.password=null;const a=await(async(e,t,n,r,s)=>{if(!Le)return he.importKey(t);try{return await _e.importKey("raw",t,n,!1,s)}catch(e){return Le=!1,he.importKey(t)}})(0,s,ke,0,xe),o=await(async(e,t,n)=>{if(!Ie)return he.pbkdf2(t,e.salt,ze.iterations,n);try{return await _e.deriveBits(e,t,n)}catch(r){return Ie=!1,he.pbkdf2(t,e.salt,ze.iterations,n)}})(n.assign({salt:i},ze),a,8*(2*Ae[r]+2)),c=new h(o),l=Ze(We,Be(c,0,Ae[r])),u=Ze(We,Be(c,Ae[r],2*Ae[r])),d=Be(c,2*Ae[r]);return n.assign(e,{keys:{key:l,authentication:u,passwordVerification:d},ctr:new Te(new Ee(l),t.from(De)),hmac:new Ue(u)}),d}function He(e,t){return t===G?ce(e):t}function Me(e,t){let n=e;return e.length+t.length&&(n=new h(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Be(e,t,n){return e.subarray(t,n)}function Ve(e,t){return e.fromBits(t)}function Ze(e,t){return e.toBits(t)}class Ke extends v{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),je(this,e)},transform(e,t){const n=this;if(n.password){const t=Xe(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(pe);e=e.subarray(12)}r?t.error(new f(me)):t.enqueue(Xe(n,e))}})}}class Ge extends v{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),je(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=ye(new h(12));t[11]=n.passwordVerification,r=new h(e.length+t.length),r.set(Ye(n,t),0),s=12}else r=new h(e.length),s=0;r.set(Ye(n,e),s),t.enqueue(r)}})}}function Xe(e,t){const n=new h(t.length);for(let r=0;r>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function Qe(e){const t=2|e.keys[2];return $e(a.imul(t,1^t)>>>8)}function $e(e){return 255&e}function et(e){return 4294967295&e}const tt="deflate-raw";class nt extends v{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:a,zipCrypto:o,signed:c,level:l}=e,u=this;let d,f,h=st(super.readable);i&&!o||!c||(d=new oe,h=ot(h,d)),s&&(h=at(h,a,{level:l,chunkSize:t},r,n)),i&&(o?h=ot(h,new Ge(e)):(f=new Oe(e),h=ot(h,f))),it(u,h,(()=>{let e;i&&!o&&(e=f.signature),i&&!o||!c||(e=new g(d.value.buffer).getUint32(0)),u.signature=e}))}}class rt extends v{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:i,signed:a,signature:o,compressed:c,useCompressionStream:l}=e;let u,d,h=st(super.readable);i&&(s?h=ot(h,new Ke(e)):(d=new Ne(e),h=ot(h,d))),c&&(h=at(h,l,{chunkSize:t},r,n)),i&&!s||!a||(u=new oe,h=ot(h,u)),it(this,h,(()=>{if((!i||s)&&a){const e=new g(u.value.buffer);if(o!=e.getUint32(0,!1))throw new f(ge)}}))}}function st(e){return ot(e,new v({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function it(e,t,r){t=ot(t,new v({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function at(e,t,n,r,s){try{e=ot(e,new(t&&r?r:s)(tt,n))}catch(r){if(!t)return e;try{e=ot(e,new s(tt,n))}catch(t){return e}}return e}function ot(e,t){return e.pipeThrough(t)}const ct="data",lt="close",ut="deflate",dt="inflate";class ft extends v{constructor(e,t){super({});const r=this,{codecType:s}=e;let i;s.startsWith(ut)?i=nt:s.startsWith(dt)&&(i=rt);let a=0,o=0;const c=new i(e,t),l=super.readable,u=new v({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:o})}}),d=new v({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;n.assign(r,{signature:e,outputSize:a,inputSize:o})}});n.defineProperty(r,"readable",{get:()=>l.pipeThrough(u).pipeThrough(c).pipeThrough(d)})}}class ht extends v{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new h(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}let wt=typeof F!=X;class pt{constructor(e,{readable:t,writable:r},{options:s,config:i,streamOptions:a,useWebWorkers:o,transferStreams:c,scripts:l},u){const{signal:d}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new ht(i.chunkSize)).pipeThrough(new gt(t,a),{signal:d}),writable:r,options:n.assign({},s),scripts:l,transferStreams:c,terminate:()=>new y((t=>{const{worker:n,busy:r}=e;n?(r?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,u(e)}}),(o&&wt?bt:yt)(e,i)}}class gt extends v{constructor(e,{onstart:t,onprogress:n,size:r,onend:s}){let i=0;super({async start(){t&&await mt(t,r)},async transform(e,t){i+=e.length,n&&await mt(n,i,r),t.enqueue(e)},async flush(){e.size=i,s&&await mt(s,i)}})}}async function mt(e,...t){try{await e(...t)}catch(e){}}function yt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{try{const r=new ft(e,s);await t.pipeThrough(r).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:i,inputSize:a,outputSize:o}=r;return{signature:i,inputSize:a,outputSize:o}}finally{r()}})(e,t)}}function bt(e,t){const{baseURL:r,chunkSize:s}=t;if(!e.interface){let i;try{i=((e,t,r)=>{const s={type:"module"};let i,a;typeof e==Y&&(e=e());try{i=new d(e,t)}catch(t){i=e}if(St)try{a=new F(i)}catch(e){St=!1,a=new F(i,s)}else a=new F(i,s);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:s,messageId:i,result:a,error:o}=e,{reader:c,writer:l,resolveResult:u,rejectResult:d,onTaskFinished:w}=t;try{if(o){const{message:e,stack:t,code:r,name:s}=o,i=new f(e);n.assign(i,{stack:t,code:r,name:s}),p(i)}else{if("pull"==r){const{value:e,done:n}=await c.read();zt({type:ct,value:e,done:n,messageId:i},t)}r==ct&&(await l.ready,await l.write(new h(s)),zt({type:"ack",messageId:i},t)),r==lt&&p(null,a)}}catch(o){zt({type:lt,messageId:i},t),p(o)}function p(e,t){e?d(e):u(t),l&&l.releaseLock(),w()}})(e,r))),a})(e.scripts[0],r,e)}catch(n){return wt=!1,yt(e,t)}n.assign(e,{worker:i,interface:{run:()=>(async(e,t)=>{let r,s;const i=new y(((e,t)=>{r=e,s=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:s,result:i});const{readable:a,options:o,scripts:c}=e,{writable:l,closed:u}=(e=>{let t;const n=new y((e=>t=e));return{writable:new C({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),d=zt({type:"start",scripts:c.slice(1),options:o,config:t,readable:a,writable:l},e);d||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const f=await i;return d||await l.getWriter().close(),await u,f})(e,{chunkSize:s})}})}return e.interface}let St=!0,kt=!0;function zt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{const{value:n,readable:r,writable:i}=e,a=[];if(n&&(n.byteLength{const n=xt.find((e=>!e.busy));if(n)return Dt(n),new pt(n,e,t,p);if(xt.lengthvt.push({resolve:n,stream:e,workerOptions:t})))})()).run();function p(e){if(vt.length){const[{resolve:t,stream:n,workerOptions:r}]=vt.splice(0,1);t(new pt(e,n,r,p))}else e.worker?(Dt(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;s.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{xt=xt.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),r))})(e,t)):xt=xt.filter((t=>t!=e))}}function Dt(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const Rt="HTTP error ",_t="HTTP Range not supported",Ft="Writer iterator completed too soon",Wt="Range",Et="GET",Tt="bytes",Ut=65536,Lt="writable";class It{constructor(){this.size=0}init(){this.initialized=!0}}class Nt extends It{get readable(){const e=this,{chunkSize:t=Ut}=e,n=new A({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:i,diskNumberStart:o}=n,{chunkOffset:c}=this;r.enqueue(await hn(e,s+c,a.min(t,i-c),o)),c+t>i?r.close():this.chunkOffset+=t}});return n}}class Ot extends It{constructor(){super();const e=this,t=new C({write:t=>e.writeUint8Array(t)});n.defineProperty(e,Lt,{get:()=>t})}writeUint8Array(){}}class Pt extends Nt{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,s=new h(t),i=4*a.floor(e/3),o=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);for(let e=c;c+t>e;e++)s[e-c]=o.charCodeAt(e);return s}}class qt extends Ot{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,s=t.pending;const i=t.pending.length;for(t.pending="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)s+=r.fromCharCode(e[n]);for(;n2?t.data+=x(s):t.pending=s}getData(){return this.data+x(this.pending)}}class Ht extends Nt{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||rt&&(i=i.slice(e,r)),new h(i)}}class Mt extends It{constructor(e){super();const t=new v,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,Lt,{get:()=>t.writable}),this.blob=new u(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Bt extends Ht{constructor(e){super(new m([e],{type:"text/plain"}))}}class Vt extends Mt{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new y(((s,i)=>{n.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>i(t.error)}),t.readAsText(r,e)}))}}}class Zt extends Nt{constructor(e,t){super(),Gt(this,e,t)}async init(){await Xt(this,nn,Qt),super.init()}readUint8Array(e,t){return Yt(this,e,t,nn,Qt)}}class Kt extends Nt{constructor(e,t){super(),Gt(this,e,t)}async init(){await Xt(this,rn,$t),super.init()}readUint8Array(e,t){return Yt(this,e,t,rn,$t)}}function Gt(e,t,r){const{preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:o}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:o})}async function Xt(e,t,n){const{url:r,preventHeadRequest:i,useRangeHeader:a,forceRangeRequests:o,combineSizeEocd:c}=e;if((e=>{const{baseURL:t}=ee(),{protocol:n}=new d(e,t);return"http:"==n||"https:"==n})(r)&&(a||o)&&(void 0===i||i)){const r=await t(Et,e,jt(e,c?-22:void 0));if(!o&&r.headers.get("Accept-Ranges")!=Tt)throw new f(_t);{let i;c&&(e.eocdCache=new h(await r.arrayBuffer()));const a=r.headers.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(i=s(t))}}i===G?await tn(e,t,n):e.size=i}}else await tn(e,t,n)}async function Yt(e,t,n,r,s){const{useRangeHeader:i,forceRangeRequests:a,eocdCache:o,size:c,options:l}=e;if(i||a){if(o&&t==c-H&&n==H)return o;const s=await r(Et,e,jt(e,t,n));if(206!=s.status)throw new f(_t);return new h(await s.arrayBuffer())}{const{data:r}=e;return r||await s(e,l),new h(e.data.subarray(t,t+n))}}function jt(e,t=0,r=1){return n.assign({},Jt(e),{[Wt]:Tt+"="+(0>t?t:t+"-"+(t+r-1))})}function Jt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Qt(e){await en(e,nn)}async function $t(e){await en(e,rn)}async function en(e,t){const n=await t(Et,e,Jt(e));e.data=new h(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function tn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Jt(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function nn(e,{options:t,url:r},s){const i=await fetch(r,n.assign({},t,{method:e,headers:s}));if(400>i.status)return i;throw 416==i.status?new f(_t):new f(Rt+(i.statusText||i.status))}function rn(e,{url:t},r){return new y(((s,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),s({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new f(_t):new f(Rt+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>i(e.detail?e.detail.error:new f("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class sn extends Nt{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Kt(e,t):new Zt(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class an extends Nt{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class on extends Ot{init(e=0){n.assign(this,{offset:0,array:new h(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new h(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}}class cn extends Nt{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await y.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:s}=this;let i,o=n;-1==o&&(o=s.length-1);let c=e;for(;c>=s[o].size;)c-=s[o].size,o++;const l=s[o],u=l.size;if(c+t>u){const s=u-c;i=new h(t),i.set(await hn(l,c,s)),i.set(await r.readUint8Array(e+s,t-s,n),s)}else i=await hn(l,c,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),i}}class ln extends It{constructor(e,t=4294967295){super();const r=this;let s,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new C({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function un(e,t){if(!e.init||e.initialized)return y.resolve();await e.init(t)}function dn(e){return t.isArray(e)&&(e=new cn(e)),e instanceof A&&(e={readable:e}),e}function fn(e){e.writable===G&&typeof e.next==Y&&(e=new ln(e)),e instanceof C&&(e={writable:e});const{writable:t}=e;return t.size===G&&(t.size=0),e instanceof ln||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function hn(e,t,n,r){return e.readUint8Array(t,n,r)}const wn=cn,pn=ln,gn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function mn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const Mn="File format is not recognized",Bn="End of central directory not found",Vn="End of Zip64 central directory locator not found",Zn="Central directory header not found",Kn="Local file header not found",Gn="Zip64 extra field not found",Xn="File contains encrypted entry",Yn="Encryption method not supported",jn="Compression method not supported",Jn="Split zip file",Qn="utf-8",$n="cp437",er=[[zn,E],[xn,E],[vn,E],[An,T]],tr={[T]:{getValue:fr,bytes:4},[E]:{getValue:hr,bytes:8}};class nr{constructor(e,t={}){n.assign(this,{reader:dn(e),options:t,config:ee()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:s}=t;if(await un(r),r.size!==G&&r.readUint8Array||(r=new Ht(await new u(r.readable).blob()),await un(r)),r.size{const r=new h(4);var s;return s=t,wr(r).setUint32(0,s,!0),await i(22)||await i(a.min(1048582,n));async function i(t){const s=n-t,i=await hn(e,s,t);for(let e=i.length-22;e>=0;e--)if(i[e]==r[0]&&i[e+1]==r[1]&&i[e+2]==r[2]&&i[e+3]==r[3])return{offset:s+e,buffer:i.slice(e,e+22).buffer}}})(r,O,r.size);if(!i)throw fr(wr(await hn(r,0,4)))==L?new f(Jn):new f(Bn);const o=wr(i);let c=fr(o,12),l=fr(o,16);const d=i.offset,w=dr(o,20),p=d+H+w;let g=dr(o,4);const m=r.lastDiskNumber||0;let y=dr(o,6),b=dr(o,8),S=0,k=0;if(l==E||c==E||b==T||y==T){const e=wr(await hn(r,i.offset-20,20));if(fr(e,0)==q){l=hr(e,8);let t=await hn(r,l,56,-1),n=wr(t);const s=i.offset-20-56;if(fr(n,0)!=P&&l!=s){const e=l;l=s,S=l-e,t=await hn(r,l,56,-1),n=wr(t)}if(fr(n,0)!=P)throw new f(Vn);g==T&&(g=fr(n,16)),y==T&&(y=fr(n,20)),b==T&&(b=hr(n,32)),c==E&&(c=hr(n,40)),l-=c}}if(ll)throw new f(Mn);let z=0,x=await hn(r,l,c,y),v=wr(x);if(c){const e=i.offset-c;if(fr(v,z)!=N&&l!=e){const t=l;l=e,S+=l-t,x=await hn(r,l,c,y),v=wr(x)}}const A=i.offset-l-(r.lastDiskOffset||0);if(c==A||0>A||(c=A,x=await hn(r,l,c,y),v=wr(x)),0>l||l>=r.size)throw new f(Mn);const C=or(t,e,"filenameEncoding"),D=or(t,e,"commentEncoding");for(let i=0;b>i;i++){const o=new rr(r,s,t.options);if(fr(v,z)!=N)throw new f(Zn);sr(o,v,z+6);const c=!!o.bitFlag.languageEncodingFlag,l=z+46,u=l+o.filenameLength,d=u+o.extraFieldLength,h=dr(v,z+4),w=!(h>>8),p=h>>8==3,g=x.subarray(l,u),m=dr(v,z+32),y=d+m,A=x.subarray(d,y),R=c,_=c,F=fr(v,z+38),W=w&&!(16&~ur(v,z+38))||p&&!(16384&~(F>>16))||g.length&&47==g[g.length-1],E=p&&!(73&~(F>>16)),T=fr(v,z+42)+S;n.assign(o,{versionMadeBy:h,msDosCompatible:w,compressedSize:0,uncompressedSize:0,commentLength:m,directory:W,offset:T,diskNumberStart:dr(v,z+34),internalFileAttributes:dr(v,z+36),externalFileAttributes:F,rawFilename:g,filenameUTF8:R,commentUTF8:_,rawExtraField:x.subarray(u,d),executable:E}),o.internalFileAttribute=o.internalFileAttributes,o.externalFileAttribute=o.externalFileAttributes;const U=or(t,e,"decodeText")||mn,L=R?Qn:C||$n,I=_?Qn:D||$n;let O=U(g,L);O===G&&(O=mn(g,L));let P=U(A,I);P===G&&(P=mn(A,I)),n.assign(o,{rawComment:A,filename:O,comment:P,directory:W||O.endsWith(V)}),k=a.max(T,k),ir(o,o,v,z+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const q=new Hn(o);q.getData=(e,t)=>o.getData(e,q,t),z=y;const{onprogress:H}=e;if(H)try{await H(i+1,b,new Hn(o))}catch(e){}yield q}const R=or(t,e,"extractPrependedData"),_=or(t,e,"extractAppendedData");return R&&(t.prependedData=k>0?await hn(r,0,k):new h),t.comment=w?await hn(r,d+H,w):new h,_&&(t.appendedData=p>>8&255:w>>>24&255),signature:w,compressed:0!=l&&!z,encrypted:s.encrypted&&!z,useWebWorkers:or(s,r,"useWebWorkers"),useCompressionStream:or(s,r,"useCompressionStream"),transferStreams:or(s,r,"transferStreams"),checkPasswordOnly:F},config:u,streamOptions:{signal:_,size:D,onstart:E,onprogress:T,onend:L}};let N=0;try{({outputSize:N}=await Ct({readable:R,writable:W},I))}catch(e){if(!F||e.message!=me)throw e}finally{const e=or(s,r,"preventClose");W.size+=N,e||W.locked||await W.getWriter().close()}return F?G:e.getData?e.getData():W}};function sr(e,t,r){const s=e.rawBitFlag=dr(t,r+2),i=!(1&~s),a=fr(t,r+6);n.assign(e,{encrypted:i,version:dr(t,r),bitFlag:{level:(6&s)>>1,dataDescriptor:!(8&~s),languageEncodingFlag:(s&B)==B},rawLastModDate:a,lastModDate:cr(a),filenameLength:dr(t,r+22),extraFieldLength:dr(t,r+24)})}function ir(e,t,r,s,i){const{rawExtraField:a}=t,l=t.extraField=new c,u=wr(new h(a));let d=0;try{for(;d{t.zip64=!0;const n=wr(e.data),r=er.filter((([e,n])=>t[e]==n));for(let s=0,i=0;s{const s=wr(e.data),i=ur(s,4);n.assign(e,{vendorVersion:ur(s,0),vendorId:ur(s,2),strength:i,originalCompressionMethod:r,compressionMethod:dr(s,5)}),t.compressionMethod=e.compressionMethod})(y,t,w),t.extraFieldAES=y):t.compressionMethod=w;const b=l.get(10);b&&(((e,t)=>{const r=wr(e.data);let s,i=4;try{for(;i{const r=wr(e.data),s=ur(r,0),i=[],a=[];n?(1&~s||(i.push(Cn),a.push(Dn)),2&~s||(i.push(Rn),a.push("rawLastAccessDate")),4&~s||(i.push(_n),a.push("rawCreationDate"))):5>e.data.length||(i.push(Cn),a.push(Dn));let c=1;i.forEach(((n,s)=>{if(e.data.length>=c+4){const i=fr(r,c);t[n]=e[n]=new o(1e3*i);const l=a[s];e[l]=i}c+=4}))})(S,t,i),t.extraFieldExtendedTimestamp=S);const k=l.get(6534);k&&(t.extraFieldUSDZ=k)}function ar(e,t,r,s,i){const a=wr(e.data),o=new ae;o.append(i[r]);const c=wr(new h(4));c.setUint32(0,o.get(),!0);const l=fr(a,1);n.assign(e,{version:ur(a,0),[t]:mn(e.data.subarray(5)),valid:!i.bitFlag.languageEncodingFlag&&l==fr(c,0)}),e.valid&&(s[t]=e[t],s[t+"UTF8"]=!0)}function or(e,t,n){return t[n]===G?e.options[n]:t[n]}function cr(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function lr(e){return new o(s(e/i(1e4)-i(116444736e5)))}function ur(e,t){return e.getUint8(t)}function dr(e,t){return e.getUint16(t,!0)}function fr(e,t){return e.getUint32(t,!0)}function hr(e,t){return s(e.getBigUint64(t,!0))}function wr(e){return new g(e.buffer)}const pr="File already exists",gr="Zip file comment exceeds 64KB",mr="File entry comment exceeds 64KB",yr="File entry name exceeds 64KB",br="Version exceeds 65535",Sr="The strength must equal 1, 2, or 3",kr="Extra field type exceeds 65535",zr="Extra field data exceeds 64KB",xr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",vr="Undefined uncompressed size",Ar=new h([7,0,2,0,65,69,3,0,0]);let Cr=0;const Dr=[];class Rr{constructor(e,t={}){const r=(e=fn(e)).availableSize!==G&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==G&&e.maxSize>0&&e.maxSize!==1/0;n.assign(this,{writer:e,addSplitZipSignature:r,options:t,config:ee(),files:new c,filenames:new l,offset:t.offset===G?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new l,bufferedWrites:0})}async add(e="",r,s={}){const c=this,{pendingAddFileCalls:l,config:d}=c;let m;CrDr.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new f(pr);return c.filenames.add(e),m=(async(e,r,s,c)=>{r=r.trim(),c.directory&&!r.endsWith(V)?r+=V:c.directory=r.endsWith(V);const l=Wr(e,c,"encodeText",ce);let d=l(r);if(d===G&&(d=ce(r)),Pr(d)>T)throw new f(yr);const m=c.comment||"";let b=l(m);if(b===G&&(b=ce(m)),Pr(b)>T)throw new f(mr);const S=Wr(e,c,Nn,20);if(S>T)throw new f(br);const k=Wr(e,c,On,20);if(k>T)throw new f(br);const z=Wr(e,c,Cn,new o),x=Wr(e,c,Rn),A=Wr(e,c,_n),C=Wr(e,c,Un,!0);let D=Wr(e,c,Wn,0);0===D&&(D=Wr(e,c,Fn,0));let R=Wr(e,c,Tn,0);0===R&&(R=Wr(e,c,En,0));const _=Wr(e,c,"passThrough");let F,W;_||(F=Wr(e,c,"password"),W=Wr(e,c,"rawPassword"));const N=Wr(e,c,"encryptionStrength",3),O=Wr(e,c,Pn),P=Wr(e,c,"extendedTimestamp",!0),q=Wr(e,c,"keepOrder",!0),H=Wr(e,c,"level"),X=Wr(e,c,"useWebWorkers"),Y=Wr(e,c,"bufferedWrite"),j=Wr(e,c,"dataDescriptorSignature",!1),J=Wr(e,c,"signal"),Q=Wr(e,c,"useUnicodeFileNames",!0),$=Wr(e,c,"useCompressionStream"),ee=Wr(e,c,"compressionMethod");let ne=Wr(e,c,"dataDescriptor",!0),re=Wr(e,c,Ln);if(!O&&(F!==G||W!==G)&&(1>N||N>3))throw new f(Sr);let se=new h;const{extraField:ie}=c;if(ie){let e=0,t=0;ie.forEach((t=>e+=4+Pr(t))),se=new h(e),ie.forEach(((e,n)=>{if(n>T)throw new f(kr);if(Pr(e)>T)throw new f(zr);Nr(se,new w([n]),t),Nr(se,new w([Pr(e)]),t+2),Nr(se,e,t+4),t+=4+Pr(e)}))}let ae=0,oe=0,le=0;if(_&&(({uncompressedSize:le}=c),le===G))throw new f(vr);const ue=!0===re;s&&(s=dn(s),await un(s),_?ae=Er(le):s.size===G?(ne=!0,(re||re===G)&&(re=!0,le=ae=4294967296)):(le=s.size,ae=Er(le)));const{diskOffset:de,diskNumber:fe,maxSize:he}=e.writer,we=ue||le>E,pe=ue||ae>E,ge=ue||e.offset+e.pendingEntriesSize-de>E,me=Wr(e,c,"supportZip64SplitFile",!0)&&ue||fe+a.ceil(e.pendingEntriesSize/he)>T;if(ge||we||pe||me){if(!1===re||!q)throw new f(xr);re=!0}re=re||!1;const ye=Wr(e,c,In),{signature:be}=c,Se=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,level:i,zip64:o,zipCrypto:c,useUnicodeFileNames:l,dataDescriptor:u,directory:d,rawExtraField:f,encryptionStrength:w,extendedTimestamp:g,encrypted:m}=e;let{version:y,compressionMethod:b}=e;const S=!d&&(i>0||i===G&&0!==b);let k,z,x,v;if(m&&!c){k=new h(Pr(Ar)+2);const e=Or(k);Ur(e,0,39169),Nr(k,Ar,2),Tr(e,8,w)}else k=new h;if(g){x=new h(9+(r?4:0)+(s?4:0));const e=Or(x);Ur(e,0,M),Ur(e,2,Pr(x)-4),v=1+(r?2:0)+(s?4:0),Tr(e,4,v);let t=5;Lr(e,t,a.floor(n.getTime()/1e3)),t+=4,r&&(Lr(e,t,a.floor(r.getTime()/1e3)),t+=4),s&&Lr(e,t,a.floor(s.getTime()/1e3));try{z=new h(36);const e=Or(z),t=Fr(n);Ur(e,0,10),Ur(e,2,32),Ur(e,8,1),Ur(e,10,24),Ir(e,12,t),Ir(e,20,Fr(r)||t),Ir(e,28,Fr(s)||t)}catch(e){z=new h}}else z=x=new h;let A=0;l&&(A|=B),u&&(A|=8),b===G&&(b=S?8:0),8==b&&(i>=1&&3>i&&(A|=6),i>=3&&5>i&&(A|=1),9===i&&(A|=2)),o&&(y=y>45?y:45),m&&(A|=1,c||(y=y>51?y:51,k[9]=b,b=99));const C=new h(26),D=Or(C);Ur(D,0,y),Ur(D,2,A),Ur(D,4,b);const R=new p(1),_=Or(R);let F;F=K>n?K:n>Z?Z:n,Ur(_,0,(F.getHours()<<6|F.getMinutes())<<5|F.getSeconds()/2),Ur(_,2,(F.getFullYear()-1980<<4|F.getMonth()+1)<<5|F.getDate());const W=R[0];Lr(D,6,W),Ur(D,22,Pr(t));const E=Pr(k,x,z,f);Ur(D,24,E);const T=new h(30+Pr(t)+E);return Lr(Or(T),0,U),Nr(T,C,4),Nr(T,t,30),Nr(T,k,30+Pr(t)),Nr(T,x,30+Pr(t,k)),Nr(T,z,30+Pr(t,k,x)),Nr(T,f,30+Pr(t,k,x,z)),{localHeaderArray:T,headerArray:C,headerView:D,lastModDate:n,rawLastModDate:W,encrypted:m,compressed:S,version:y,compressionMethod:b,extraFieldExtendedTimestampFlag:v,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:z,rawExtraFieldAES:k,extraFieldLength:E}})(c=n.assign({},c,{rawFilename:d,rawComment:b,version:S,versionMadeBy:k,lastModDate:z,lastAccessDate:x,creationDate:A,rawExtraField:se,zip64:re,zip64UncompressedSize:we,zip64CompressedSize:pe,zip64Offset:ge,zip64DiskNumberStart:me,password:F,rawPassword:W,level:$||e.config.CompressionStream!==G||e.config.CompressionStreamNative!==G?H:0,useWebWorkers:X,encryptionStrength:N,extendedTimestamp:P,zipCrypto:O,bufferedWrite:Y,keepOrder:q,useUnicodeFileNames:Q,dataDescriptor:ne,dataDescriptorSignature:j,signal:J,msDosCompatible:C,internalFileAttribute:D,internalFileAttributes:D,externalFileAttribute:R,externalFileAttributes:R,useCompressionStream:$,passThrough:_,encrypted:!!(F&&Pr(F)||W&&Pr(W))||_&&ye,signature:be,compressionMethod:ee})),ke=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let s,i=new h,a=0;return n&&(i=new h(t?r?24:20:r?16:12),s=Or(i),r&&(a=4,Lr(s,0,I))),{dataDescriptorArray:i,dataDescriptorView:s,dataDescriptorOffset:a}})(c),ze=Pr(Se.localHeaderArray,ke.dataDescriptorArray);let xe;oe=ze+ae,e.options.usdz&&(oe+=oe+64),e.pendingEntriesSize+=oe;try{xe=await(async(e,r,s,a,o)=>{const{files:c,writer:l}=e,{keepOrder:d,dataDescriptor:w,signal:p}=o,{headerInfo:m}=a,{usdz:b}=e.options,S=t.from(c.values()).pop();let k,z,x,A,C,D,R,_={};c.set(r,_);try{let t;d&&(t=S&&S.lock,_.lock=new y((e=>x=e))),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&d)&&w||b?(D=l,await F()):(D=new v,R=new u(D.readable).blob(),D.writable.size=0,k=!0,e.bufferedWrites++,await un(l)),await un(D);const{writable:m}=l;let{diskOffset:z}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new h(4);Lr(Or(t),0,L),await _r(m,t),e.offset+=4}b&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:r,extraFieldLength:s}=n,i=Or(r),a=64-(t+Pr(r))%64;4>a&&(a+=64);const o=new h(a),c=Or(o);Ur(c,0,6534),Ur(c,2,a-2);const l=r;n.localHeaderArray=r=new h(Pr(l)+a),Nr(r,l),Nr(r,o,Pr(l)),i=Or(r),Ur(i,28,s+a),e.metadataSize+=a})(a,e.offset-z),k||(await t,await W(m));const{diskNumber:T}=l;if(C=!0,_.diskNumberStart=T,_=await(async(e,t,{diskNumberStart:r,lock:s},a,o,c)=>{const{headerInfo:l,dataDescriptorInfo:u,metadataSize:d}=a,{localHeaderArray:f,headerArray:w,lastModDate:p,rawLastModDate:g,encrypted:m,compressed:y,version:b,compressionMethod:S,rawExtraFieldExtendedTimestamp:k,extraFieldExtendedTimestampFlag:z,rawExtraFieldNTFS:x,rawExtraFieldAES:v}=l,{dataDescriptorArray:A}=u,{rawFilename:C,lastAccessDate:D,creationDate:R,password:_,rawPassword:F,level:W,zip64:T,zip64UncompressedSize:U,zip64CompressedSize:L,zip64Offset:I,zip64DiskNumberStart:N,zipCrypto:O,dataDescriptor:P,directory:q,versionMadeBy:H,rawComment:M,rawExtraField:B,useWebWorkers:V,onstart:Z,onprogress:K,onend:X,signal:Y,encryptionStrength:j,extendedTimestamp:J,msDosCompatible:Q,internalFileAttributes:$,externalFileAttributes:ee,useCompressionStream:ne,passThrough:re}=c,se={lock:s,versionMadeBy:H,zip64:T,directory:!!q,filenameUTF8:!0,rawFilename:C,commentUTF8:!0,rawComment:M,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:x,rawExtraFieldAES:v,rawExtraField:B,extendedTimestamp:J,msDosCompatible:Q,internalFileAttributes:$,externalFileAttributes:ee,diskNumberStart:r};let{signature:ie,uncompressedSize:ae}=c,oe=0;re||(ae=0);const{writable:ce}=t;if(e){e.chunkSize=te(o),await _r(ce,f);const t=e.readable,n=t.size=e.size,r={options:{codecType:ut,level:W,rawPassword:F,password:_,encryptionStrength:j,zipCrypto:m&&O,passwordVerification:m&&O&&g>>8&255,signed:!re,compressed:y&&!re,encrypted:m&&!re,useWebWorkers:V,useCompressionStream:ne,transferStreams:!1},config:o,streamOptions:{signal:Y,size:n,onstart:Z,onprogress:K,onend:X}},s=await Ct({readable:t,writable:ce},r);oe=s.outputSize,re||(ae=s.inputSize,ie=s.signature),ce.size+=ae}else await _r(ce,f);let le;if(T){let e=4;U&&(e+=8),L&&(e+=8),I&&(e+=8),N&&(e+=4),le=new h(e)}else le=new h;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:s,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:c}=e,{headerView:l,encrypted:u}=o,{dataDescriptorView:d,dataDescriptorOffset:f}=c,{zip64:h,zip64UncompressedSize:w,zip64CompressedSize:p,zipCrypto:g,dataDescriptor:m}=t;if(u&&!g||n===G||(Lr(l,10,n),m&&Lr(d,f,n)),h){const e=Or(r);Ur(e,0,1),Ur(e,2,Pr(r)-4);let t=4;w&&(Lr(l,18,E),Ir(e,t,i(a)),t+=8),p&&(Lr(l,14,E),Ir(e,t,i(s))),m&&(Ir(d,f+4,i(s)),Ir(d,f+12,i(a)))}else Lr(l,14,s),Lr(l,18,a),m&&(Lr(d,f+4,s),Lr(d,f+8,a))})({signature:ie,rawExtraFieldZip64:le,compressedSize:oe,uncompressedSize:ae,headerInfo:l,dataDescriptorInfo:u},c),P&&await _r(ce,A),n.assign(se,{uncompressedSize:ae,compressedSize:oe,lastModDate:p,rawLastModDate:g,creationDate:R,lastAccessDate:D,encrypted:m,zipCrypto:O,size:d+oe,compressionMethod:S,version:b,headerArray:w,signature:ie,rawExtraFieldZip64:le,extraFieldExtendedTimestampFlag:z,zip64UncompressedSize:U,zip64CompressedSize:L,zip64Offset:I,zip64DiskNumberStart:N}),se})(s,D,_,a,e.config,o),C=!1,c.set(r,_),_.filename=r,k){await D.writable.getWriter().close();let e=await R;await t,await F(),A=!0,w||(e=await(async(e,t,n,{zipCrypto:r})=>{let s;s=await t.slice(0,26).arrayBuffer(),26!=s.byteLength&&(s=s.slice(0,26));const i=new g(s);return e.encrypted&&!r||Lr(i,14,e.signature),e.zip64?(Lr(i,18,E),Lr(i,22,E)):(Lr(i,18,e.compressedSize),Lr(i,22,e.uncompressedSize)),await _r(n,new h(s)),t.slice(s.byteLength)})(_,e,m,o)),await W(m),_.diskNumberStart=l.diskNumber,z=l.diskOffset,await e.stream().pipeTo(m,{preventClose:!0,preventAbort:!0,signal:p}),m.size+=e.size,A=!1}if(_.offset=e.offset-z,_.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:s}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:c,zip64DiskNumberStart:l}=t,u=Or(n);let d=4;a&&(d+=8),o&&(d+=8),c&&(Ir(u,d,i(r)),d+=8),l&&Lr(u,d,s)})(_,o);else if(_.offset>E)throw new f(xr);return e.offset+=_.size,_}catch(t){if(k&&A||!k&&C){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}k?e.offset+=D.writable.size:e.offset=D.writable.size}throw c.delete(r),t}finally{k&&e.bufferedWrites--,x&&x(),z&&z()}async function F(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new y((t=>z=()=>{e.writerLocked=!1,t()})),await t}async function W(e){Pr(m.localHeaderArray)>l.availableSize&&(l.availableSize=0,await _r(e,new h))}})(e,r,s,{headerInfo:Se,dataDescriptorInfo:ke,metadataSize:ze},c)}finally{e.pendingEntriesSize-=oe}return n.assign(xe,{name:r,comment:m,extraField:ie}),new Hn(xe)})(c,e,r,s),l.add(m),await m}catch(t){throw c.filenames.delete(e),t}finally{l.delete(m);const e=Dr.shift();e?e():Cr--}}async close(e=new h,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await y.allSettled(t.from(r));return await(async(e,n,r)=>{const{files:s,writer:o}=e,{diskOffset:c,writable:l}=o;let{diskNumber:u}=o,d=0,w=0,p=e.offset-c,g=s.size;for(const[,e]of s){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:r,rawComment:s,rawExtraFieldNTFS:i,rawExtraField:o,extendedTimestamp:c,extraFieldExtendedTimestampFlag:l,lastModDate:u}=e;let d;if(c){d=new h(9);const e=Or(d);Ur(e,0,M),Ur(e,2,5),Tr(e,4,l),Lr(e,5,a.floor(u.getTime()/1e3))}else d=new h;e.rawExtraFieldCDExtendedTimestamp=d,w+=46+Pr(t,s,n,r,i,d,o)}const m=new h(w),y=Or(m);await un(o);let b=0;for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:i,rawExtraFieldZip64:a,rawExtraFieldAES:c,rawExtraFieldCDExtendedTimestamp:u,rawExtraFieldNTFS:f,rawExtraField:h,rawComment:w,versionMadeBy:p,headerArray:g,directory:S,zip64:k,zip64UncompressedSize:z,zip64CompressedSize:x,zip64DiskNumberStart:v,zip64Offset:A,msDosCompatible:C,internalFileAttributes:D,externalFileAttributes:R,diskNumberStart:_,uncompressedSize:F,compressedSize:W}=n,U=Pr(a,c,u,f,h);Lr(y,d,N),Ur(y,d+4,p);const L=Or(g);z||Lr(L,18,F),x||Lr(L,14,W),Nr(m,g,d+6),Ur(y,d+30,U),Ur(y,d+32,Pr(w)),Ur(y,d+34,k&&v?T:_),Ur(y,d+36,D),R?Lr(y,d+38,R):S&&C&&Tr(y,d+38,16),Lr(y,d+42,k&&A?E:t),Nr(m,i,d+46),Nr(m,a,d+46+Pr(i)),Nr(m,c,d+46+Pr(i,a)),Nr(m,u,d+46+Pr(i,a,c)),Nr(m,f,d+46+Pr(i,a,c,u)),Nr(m,h,d+46+Pr(i,a,c,u,f)),Nr(m,w,d+46+Pr(i)+U);const I=46+Pr(i,w)+U;if(d-b>o.availableSize&&(o.availableSize=0,await _r(l,m.slice(b,d)),b=d),d+=I,r.onprogress)try{await r.onprogress(e+1,s.size,new Hn(n))}catch(e){}}await _r(l,b?m.slice(b):m);let S=o.diskNumber;const{availableSize:k}=o;H>k&&S++;let z=Wr(e,r,Ln);if(p>E||w>E||g>T||S>T){if(!1===z)throw new f(xr);z=!0}const x=new h(z?98:H),v=Or(x);d=0,z&&(Lr(v,0,P),Ir(v,4,i(44)),Ur(v,12,45),Ur(v,14,45),Lr(v,16,S),Lr(v,20,u),Ir(v,24,i(g)),Ir(v,32,i(g)),Ir(v,40,i(w)),Ir(v,48,i(p)),Lr(v,56,q),Ir(v,64,i(p)+i(w)),Lr(v,72,S+1),Wr(e,r,"supportZip64SplitFile",!0)&&(S=T,u=T),g=T,p=E,w=E,d+=76),Lr(v,d,O),Ur(v,d+4,S),Ur(v,d+6,u),Ur(v,d+8,g),Ur(v,d+10,g),Lr(v,d+12,w),Lr(v,d+16,p);const A=Pr(n);if(A){if(A>T)throw new f(gr);Ur(v,d+20,A)}await _r(l,x),A&&await _r(l,n)})(this,e,n),Wr(this,n,"preventClose")||await o.getWriter().close(),s.getData?s.getData():o}}async function _r(e,t){const n=e.getWriter();try{await n.ready,e.size+=Pr(t),await n.write(t)}finally{n.releaseLock()}}function Fr(e){if(e)return(i(e.getTime())+i(116444736e5))*i(1e4)}function Wr(e,t,n,r){const s=t[n]===G?e.options[n]:t[n];return s===G?r:s}function Er(e){return e+5*(a.floor(e/16383)+1)}function Tr(e,t,n){e.setUint8(t,n)}function Ur(e,t,n){e.setUint16(t,n,!0)}function Lr(e,t,n){e.setUint32(t,n,!0)}function Ir(e,t,n){e.setBigUint64(t,n,!0)}function Nr(e,t,n){e.set(t,n)}function Or(e){return new g(e.buffer)}function Pr(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}class qr{constructor(e,t,r,s){const i=this;if(e.root&&s&&s.getChildByName(t))throw new f("Entry filename already exists");r||(r={}),n.assign(i,{fs:e,name:t,data:r.data,options:r.options,id:e.entries.length,parent:s,children:[],uncompressedSize:r.uncompressedSize||0,passThrough:r.passThrough}),e.entries.push(i),s&&i.parent.children.push(i)}moveTo(e){this.fs.move(this,e)}getFullname(){return this.getRelativeName()}getRelativeName(e=this.fs.root){let t=this.name,n=this.parent;for(;n&&n!=e;)t=(n.name?n.name+"/":"")+t,n=n.parent;return t}isDescendantOf(e){let t=this.parent;for(;t&&t.id!=e.id;)t=t.parent;return!!t}rename(e){const t=this.parent;if(t&&t.getChildByName(e))throw new f("Entry filename already exists");this.name=e}}class Hr extends qr{constructor(e,t,n,r){super(e,t,n,r);const s=this;s.Reader=n.Reader,s.Writer=n.Writer,n.getData&&(s.getData=n.getData)}clone(){return new Hr(this.fs,this.name,this)}async getData(e,t={}){const n=this;if(!e||e.constructor==n.Writer&&n.data)return n.data;{const r=n.reader=new n.Reader(n.data,t),s=n.data?n.data.uncompressedSize:r.size;await y.all([un(r),un(e,s)]);const i=r.readable;return i.size=n.uncompressedSize=r.size,await i.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return this.data.encrypted}async checkPassword(e,t={}){const n=this;if(!n.isPasswordProtected())return!0;t.password=e,t.checkPasswordOnly=!0;try{return await n.data.getData(null,t),!0}catch(e){if(e.message==pe)return!1;throw e}}getText(e,t){return this.getData(new Vt(e),t)}getBlob(e,t){return this.getData(new Mt(e),t)}getData64URI(e,t){return this.getData(new qt(e),t)}getUint8Array(e){return this.getData(new on,e)}getWritable(e=new C,t){return this.getData({writable:e},t)}replaceBlob(e){n.assign(this,{data:e,Reader:Ht,Writer:Mt,reader:null})}replaceText(e){n.assign(this,{data:e,Reader:Bt,Writer:Vt,reader:null})}replaceData64URI(e){n.assign(this,{data:e,Reader:Pt,Writer:qt,reader:null})}replaceUint8Array(e){n.assign(this,{data:e,Reader:an,Writer:on,reader:null})}replaceReadable(e){n.assign(this,{data:null,Reader:()=>({readable:e}),Writer:null,reader:null})}}class Mr extends qr{constructor(e,t,n,r){super(e,t,n,r),this.directory=!0}clone(e){const t=this,n=new Mr(t.fs,t.name);return e&&(n.children=t.children.map((t=>{const r=t.clone(e);return r.parent=n,r}))),n}addDirectory(e,t){return jr(this,e,{options:t},!0)}addText(e,t,n={}){return jr(this,e,{data:t,Reader:Bt,Writer:Vt,options:n,uncompressedSize:t.length})}addBlob(e,t,n={}){return jr(this,e,{data:t,Reader:Ht,Writer:Mt,options:n,uncompressedSize:t.size})}addData64URI(e,t,n={}){let r=t.length;for(;"="==t.charAt(r-1);)r--;const s=t.indexOf(",")+1;return jr(this,e,{data:t,Reader:Pt,Writer:qt,options:n,uncompressedSize:a.floor(.75*(r-s))})}addUint8Array(e,t,n={}){return jr(this,e,{data:t,Reader:an,Writer:on,options:n,uncompressedSize:t.length})}addHttpContent(e,t,n={}){return jr(this,e,{data:t,Reader:class extends sn{constructor(e){super(e,n)}},options:n})}addReadable(e,t,n={}){return jr(this,e,{Reader:()=>({readable:t}),options:n})}addFileSystemEntry(e,t={}){return Gr(this,e,t)}addFileSystemHandle(e,t={}){return Gr(this,e,t)}addFile(e,t={}){return t.lastModDate||(t.lastModDate=new o(e.lastModified)),jr(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}addData(e,t){return jr(this,e,t)}importBlob(e,t){return this.importZip(new Ht(e),t)}importData64URI(e,t){return this.importZip(new Pt(e),t)}importUint8Array(e,t){return this.importZip(new an(e),t)}importHttpContent(e,t){return this.importZip(new sn(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new Mt(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new qt(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new on,e)}async exportWritable(e=new C,t={}){return await this.exportZip({writable:e},t),e}async importZip(e,t={}){await un(e);const r=new nr(e,t),s=[],i=await r.getEntries();for(const e of i){let r=this;try{const i=e.filename.split("/"),a=i.pop();i.forEach(((t,n)=>{const a=r;r=r.getChildByName(t),r||(r=new Mr(this.fs,t,{data:n==i.length-1?e:null},a),s.push(r))})),e.directory||s.push(jr(r,a,{data:e,Reader:Vr(n.assign({},t)),uncompressedSize:e.uncompressedSize,passThrough:t.passThrough}))}catch(t){try{t.cause={entry:e}}catch(e){}throw t}}return s}async exportZip(e,r){const s=this;r.bufferedWrite===G&&(r.bufferedWrite=!0),await y.all([Zr(s,r.readerOptions),un(e)]);const i=new Rr(e,r);return await(async(e,r,s,i)=>{const a=r,o=new c;await async function e(r,c){async function l(c){const l=i.relativePath?c.getRelativeName(a):c.getFullname(),u=c.options||{};let d={};if(c.data instanceof Hn){const{externalFileAttributes:e,versionMadeBy:t,comment:r,lastModDate:s,creationDate:i,lastAccessDate:a,uncompressedSize:o,encrypted:l,zipCrypto:u,signature:f,compressionMethod:h,extraFieldAES:w}=c.data;if(d={externalFileAttributes:e,versionMadeBy:t,comment:r,lastModDate:s,creationDate:i,lastAccessDate:a},c.passThrough){let e,t;0===h&&(e=0),w&&(t=w.strength),d=n.assign(d,{passThrough:!0,encrypted:l,zipCrypto:u,signature:f,uncompressedSize:o,level:e,encryptionStrength:t,compressionMethod:h})}}await r.add(l,c.reader,n.assign({directory:c.directory},n.assign({},i,d,u,{onprogress:async e=>{if(i.onprogress){o.set(l,e);try{await i.onprogress(t.from(o.values()).reduce(((e,t)=>e+t)),s)}catch(e){}}}}))),await e(r,c)}await(async()=>{if(i.bufferedWrite)await y.allSettled(c.children.map(l));else for(const e of c.children)await l(e)})()}(e,r)})(i,s,(e=>{let t=0;return e.forEach((function e(n){t+=n.uncompressedSize,n.children&&n.children.forEach(e)})),t})([s]),r),await i.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let n=0;nn.checkPassword(e,t))))).includes(!1)}}const Br={FS:class{constructor(){Yr(this)}get children(){return this.root.children}remove(e){Kr(e),this.entries[e.id]=null}move(e,t){if(e==this.root)throw new f("Root directory cannot be moved");if(!t.directory)throw new f("Target entry is not a directory");if(t.isDescendantOf(e))throw new f("Entry is a ancestor of target entry");if(e!=t){if(t.getChildByName(e.name))throw new f("Entry filename already exists");Kr(e),e.parent=t,t.children.push(e)}}find(e){const t=e.split("/");let n=this.root;for(let e=0;n&&e{if(e.directory)await Zr(e,t);else{const n=e.reader=new e.Reader(e.data,t);try{await un(n)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch(e){}throw t}e.uncompressedSize=n.size}})))}function Kr(e){if(e.parent){const t=e.parent.children;t.forEach(((n,r)=>{n.id==e.id&&t.splice(r,1)}))}}function Gr(e,t,r){return async function e(t,s,i){if(s)try{if((s.isFile||s.isDirectory)&&(s=await Xr(s)),"file"==s.kind){const e=await s.getFile();i.push(t.addData(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:n.assign({},{lastModDate:new o(e.lastModified)},r),uncompressedSize:e.size}))}else if("directory"==s.kind){const n=t.addDirectory(s.name);i.push(n);for await(const t of s.values())await e(n,t,i)}}catch(e){const t=e.message+(s?" ("+s.name+")":"");throw new f(t)}return i}(e,t,[])}async function Xr(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new y(((t,n)=>e.file(t,n)))),e.isDirectory){t.kind="directory";const n=await(async e=>{const t=[];function n(e,r,s){e.readEntries((async i=>{if(i.length){for(const e of i)t.push(await Xr(e));n(e,r,s)}else r(t)}),s)}return await new y(((t,r)=>n(e.createReader(),t,r))),{[Symbol.iterator](){let e=0;return{next(){const n={value:t[e],done:e===t.length};return e++,n}}}}})(e);t.values=()=>n}return t}function Yr(e){e.entries=[],e.root=new Mr(e)}function jr(e,t,n,r){if(e.directory)return r?new Mr(e.fs,t,n,e):new Hr(e.fs,t,n,e);throw new f("Parent entry is not a directory")}let Jr;try{Jr=void 0===k&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===k?location.href:W&&"SCRIPT"===W.tagName.toUpperCase()&&W.src||new d("zip-fs.min.js",k.baseURI).href}catch(e){}ne({baseURL:Jr}),((e,t={})=>{const n='const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self,k=void 0,v="undefined",S="function";class z{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const C=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;C[e]=t}class x{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^C[255&(t^e[n])];this.t=t}get(){return~this.t}}class A extends p{constructor(){let e;const t=new x;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const _={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=_.i(n);return 32===r?e.concat(t):_.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+_.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=_.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=_.i(s);return r.push(_.h(t+i&31,t+i>32?n:r.pop(),1)),r}},I={bytes:{p(e){const t=_.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},m(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}P(){const e=this;let t=e.C;const n=e.S;t=_.concat(t,[_.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.I(t.splice(0,16));return e.reset(),n}D(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}V(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.V(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.V(5,o)+n.D(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.V(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},D={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew V.R(I.bytes.m(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=_;for(t=I.bytes.m(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).P());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.U[0].update(r[0]),t.U[1].update(r[1]),t.K=new n(t.U[0])}reset(){const e=this;e.K=new e.M(e.U[0]),e.N=!1}update(e){this.N=!0,this.K.update(e)}digest(){const e=this,t=e.K.P(),n=new e.M(e.U[1]).update(t).P();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},R=typeof h!=v&&typeof h.getRandomValues==S,B="Invalid password",E="Invalid signature",M="zipjs-abort-check-password";function U(e){return R?h.getRandomValues(e):D.getRandomValues(e)}const K=16,N={name:"PBKDF2"},O=t.assign({hash:{name:"HMAC"}},N),T=t.assign({iterations:1e3,hash:{name:"SHA-1"}},N),W=["deriveBits"],j=[8,12,16],H=[16,24,32],L=10,F=[0,0,0,0],q=typeof h!=v,G=q&&h.subtle,J=q&&typeof G!=v,Q=I.bytes,X=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},Y=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=_.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return _.u(t,s)}},Z=V.R;let $=q&&J&&typeof G.importKey==S,ee=q&&J&&typeof G.deriveBits==S;class te extends p{constructor({password:e,rawPassword:n,signed:r,encryptionStrength:o,checkPasswordOnly:c}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),signed:r,X:o-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:o,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await se(e,t,n,ce(r,0,j[t])),o=ce(r,j[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(B)})(n,o,r,ce(e,0,j[o]+2)),e=ce(e,j[o]+2),c?t.error(new s(M)):f()):await a;const l=new i(e.length-L-(e.length-L)%K);t.enqueue(re(n,e,l,0,L,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;if(r&&n){await c;const f=ce(o,0,o.length-L),a=ce(o,o.length-L);let l=new i;if(f.length){const e=ae(Q,f);r.update(e);const t=n.update(e);l=fe(Q,t)}if(t){const e=ce(fe(Q,r.digest()),0,L);for(let t=0;L>t;t++)if(e[t]!=a[t])throw new s(E)}e.enqueue(l)}}})}}class ne extends p{constructor({password:e,rawPassword:n,encryptionStrength:r}){let s;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=U(new i(j[t]));return oe(r,await se(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%K);a.set(f,0),t.enqueue(re(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:r,ready:o}=this;if(n&&t){await o;let c=new i;if(r.length){const e=t.update(ae(Q,r));n.update(e),c=fe(Q,e)}s.signature=fe(Q,n.digest()).slice(0,L),e.enqueue(oe(c,s.signature))}}}),s=this}}function re(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=oe(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%K)),u=0;l-K>=u;u+=K){const e=ae(Q,ce(t,u,u+K));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(fe(Q,s),u+r)}return e.pending=ce(t,u),n}async function se(n,r,s,o){n.password=null;const c=await(async(e,t,n,r,s)=>{if(!$)return V.importKey(t);try{return await G.importKey("raw",t,n,!1,s)}catch(e){return $=!1,V.importKey(t)}})(0,s,O,0,W),f=await(async(e,t,n)=>{if(!ee)return V.B(t,e.salt,T.iterations,n);try{return await G.deriveBits(e,t,n)}catch(r){return ee=!1,V.B(t,e.salt,T.iterations,n)}})(t.assign({salt:o},T),c,8*(2*H[r]+2)),a=new i(f),l=ae(Q,ce(a,0,H[r])),u=ae(Q,ce(a,H[r],2*H[r])),w=ce(a,2*H[r]);return t.assign(n,{keys:{key:l,$:u,passwordVerification:w},Y:new Y(new X(l),e.from(F)),Z:new Z(u)}),w}function ie(e,t){return t===k?(e=>{if(typeof w==v){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),i=~e.te.get(),e.keys=[n,s,i]}function ye(e){const t=2|e.keys[2];return me(r.imul(t,1^t)>>>8)}function me(e){return 255&e}function be(e){return 4294967295&e}const ge="deflate-raw";class ke extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=Se(super.readable);i&&!c||!f||(w=new A,d=xe(d,w)),s&&(d=Ce(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=xe(d,new ue(e)):(h=new ne(e),d=xe(d,h))),ze(u,d,(()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ve extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=Se(super.readable);o&&(i?d=xe(d,new le(e)):(h=new te(e),d=xe(d,h))),a&&(d=Ce(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new A,d=xe(d,w)),ze(this,d,(()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(E)}}))}}function Se(e){return xe(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ze(e,n,r){n=xe(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Ce(e,t,n,r,s){try{e=xe(e,new(t&&r?r:s)(ge,n))}catch(r){if(!t)return e;try{e=xe(e,new s(ge,n))}catch(t){return e}}return e}function xe(e,t){return e.pipeThrough(t)}const Ae="data",_e="close";class Ie extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=ke:s.startsWith("inflate")&&(i=ve);let o=0,c=0;const f=new i(e,n),a=super.readable,l=new p({transform(e,t){e&&e.length&&(c+=e.length,t.enqueue(e))},flush(){t.assign(r,{inputSize:c})}}),u=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=f;t.assign(r,{signature:e,outputSize:o,inputSize:c})}});t.defineProperty(r,"readable",{get:()=>a.pipeThrough(l).pipeThrough(f).pipeThrough(u)})}}class Pe extends p{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new i(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}const De=new a,Ve=new a;let Re,Be=0,Ee=!0;async function Me(e){try{const{options:t,scripts:r,config:s}=e;if(r&&r.length)try{Ee?importScripts.apply(k,r):await Ue(r)}catch(e){Ee=!1,await Ue(r)}self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new z(self.Deflate)),self.Inflate&&(s.DecompressionStream=new z(self.Inflate));const i={highWaterMark:1},o=e.readable||new y({async pull(e){const t=new u((e=>De.set(Be,e)));Ke({type:"pull",messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ve.set(Be,t),Ke({type:Ae,value:e,messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new Ie(t,s);Re=new AbortController;const{signal:a}=Re;await o.pipeThrough(f).pipeThrough(new Pe(s.chunkSize)).pipeTo(c,{signal:a,preventClose:!0,preventAbort:!0}),await c.getWriter().close();const{signature:l,inputSize:w,outputSize:h}=f;Ke({type:_e,result:{signature:l,inputSize:w,outputSize:h}})}catch(e){Ne(e)}}async function Ue(e){for(const t of e)await import(t)}function Ke(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Ne(e=new s("Unknown error")){const{message:t,stack:n,code:r,name:i}=e;d({error:{message:t,stack:n,code:r,name:i}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&Me(e),t==Ae){const e=De.get(n);De.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ve.get(n);Ve.delete(n),e()}t==_e&&Re.abort()}catch(e){Ne(e)}}));const Oe=-2;function Te(t){return We(t.map((([t,n])=>new e(t).fill(n,0,t))))}function We(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?We(n):n)),[])}const je=[0,1,2,3].concat(...Te([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function He(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Le(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}He.ge=[0,1,2,3,4,5,6,7].concat(...Te([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),He.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],He.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],He.Se=e=>256>e?je[e]:je[256+(e>>>7)],He.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],He.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],He.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],He.Ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Fe=Te([[144,8],[112,9],[24,7],[8,8]]);Le._e=We([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Fe[t]])));const qe=Te([[30,5]]);function Ge(e,t,n,r,s){const i=this;i.Ie=e,i.Pe=t,i.De=n,i.Ve=r,i.Re=s}Le.Be=We([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,qe[t]]))),Le.Ee=new Le(Le._e,He.ze,257,286,15),Le.Me=new Le(Le.Be,He.Ce,0,30,15),Le.Ue=new Le(null,He.xe,0,19,7);const Je=[new Ge(0,0,0,0,0),new Ge(4,4,8,4,1),new Ge(4,5,16,8,1),new Ge(4,6,32,32,1),new Ge(4,4,16,16,2),new Ge(8,16,32,32,2),new Ge(8,16,128,128,2),new Ge(8,32,128,256,2),new Ge(32,128,258,1024,2),new Ge(32,258,258,4096,2)],Qe=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Xe=113,Ye=666,Ze=262;function $e(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function et(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,A,_,I,P,D,V,R,B,E,M,U;const K=new He,N=new He,O=new He;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)U[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?U[2*n]+=i:0!==n?(n!=r&&U[2*n]++,U[32]++):i>10?U[36]++:U[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ke[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,U)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,U),o--),Y(16,U),X(o-3,2)):o>10?(Y(18,U),X(o-11,7)):(Y(17,U),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(He.ge[n]+256+1)]++,M[2*He.Se(t)]++),!(8191&W)&&D>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+He.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ke.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;D>0?(K.ne(e),N.ne(e),o=(()=>{let t;for(G(E,K.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===U[2*He.Ae[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Le._e,Le.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(U[2*He.Ae[r]+1],3);Z(E,e-1),Z(M,t-1)})(K.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-A-C,0===s&&0===C&&0===A)s=f;else if(-1==s)s--;else if(C>=f+f-Ze){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+A,s),A+=e,3>A||(p=255&u[C],p=(p<A&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=_;const o=C>f-Ze?C-(f-Ze):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>_||(r>>=2),c>A&&(c=A);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>A?A:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],U=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Oe:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=Xe,c=0,K.re=E,K.ie=Le.Ee,N.re=M,N.ie=Le.Me,O.re=U,O.ie=Le.Ue,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve,C=0,k=0,A=0,v=_=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=Xe&&n!=Ye?Oe:(e.Oe=null,e.Ne=null,e.Ke=null,d=null,h=null,u=null,e.Fe=null,n==Xe?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Oe:(Je[D].Re!=Je[t].Re&&0!==e.qe&&(r=e.Ye(1)),D!=t&&(D=t,P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve),V=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Oe;if(3>i)return 0;for(i>f-Ze&&(i=f-Ze,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Oe;if(!r.$e||!r.et&&0!==r.We||n==Ye&&4!=i)return r.Le=Qe[4],Oe;if(0===r.tt)return r.Le=Qe[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(D-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=Xe,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=Qe[7],-5;if(n==Ye&&0!==t.We)return r.Le=Qe[7],-5;if(0!==t.We||0!==A||0!=i&&n!=Ye){switch(R=-1,Je[D].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=A){if(ie(),0===A&&0==e)return 0;if(0===A)break}if(C+=A,A=0,n=k+r,(0===C||C>=n)&&(A=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Ze&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<f-Ze||2!=V&&(v=oe(r)),3>v)n=ee(0,255&u[C]),A--,C++;else if(n=ee(C-x,v-3),A-=v,v>P||3>A)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<_&&f-Ze>=(C-s&65535)&&(2!=V&&(v=oe(s)),5>=v&&(1==V||3==v&&C-x>4096)&&(v=2)),3>_||v>_)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,A--,0===t.tt)return 0}else z=1,C++,A--;else{r=C+A-3,n=ee(C-1-S,_-3),A-=_-1,_-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Le._e),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function tt(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function nt(e){const t=new tt,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}tt.prototype={He(e,t){const n=this;return n.Fe=new et,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Oe},Qe(){const e=this;if(!e.Fe)return Oe;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Oe},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Oe},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ke.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const rt=-2,st=-3,it=-5,ot=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],ct=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ft=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],at=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],lt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ut=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],wt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ht(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,A,_,I,P;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return st;if(0>(I-=n[g]))return st;for(n[g]+=I,i[1]=k=0,C=1,_=2;0!=--g;)i[_]=k+=n[C],_++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>A+S;){if(b++,A+=S,P=m-A,P=P>S?S:P,(y=1<<(k=v-A))>p+1&&(y-=p+1,_=v,P>k))for(;++kn[++_];)y-=n[_];if(P=1<1440)return st;s[b]=x=h[0],h[0]+=P,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>A-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-A,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>A;P>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<c;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==st?f.Le="oversubscribed dynamic bit lengths tree":a!=it&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=st),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,at,lt,a,i,u,e,t),0!=h||0===i[0]?(h==st?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=st),h):(c(288),h=o(s,n,r,0,ut,wt,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==st?w.Le="oversubscribed distance tree":h==it?(w.Le="incomplete distance tree",h=st):-4!=h&&(w.Le="empty distance tree with lengths",h=st),h):0)}}function dt(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15,k=a[z+2]+(w&ot[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(64&u)return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st;f+=a[z+2],f+=w&ot[u],z=3*(l+f),u=a[z]}break}if(64&u)return 32&u?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st);if(f+=a[z+2],f+=w&ot[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,A=0,_=0;for(_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,m=p(u,w,r,h,s,d,e,y),_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=SA;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>>=n[g+1],A-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(16&k){a=15&k,i=n[g+2],t=2;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}if(32&k){t=7;break}return t=9,y.Le="invalid literal/length code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 2:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=n[g+1],A-=n[g+1],k=n[g],16&k){a=15&k,l=n[g+2],t=4;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 4:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(A-=8,v++,_--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ht.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=ct,r[0]=ft,0);const pt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function yt(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new dt;let h=0,d=new f(4320);const p=new ht;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ht.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[pt[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==st&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&ot[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,A=[],_=[],I=[],P=[],A[0]=9,_[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,A,_,I,P,d,e),0!=i)return i==st&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(A[0],_[0],d,I[0],d,P[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const mt=13,bt=[0,0,255,255];function gt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):rt}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),rt):(e.zt=r,n.gt.kt=new yt(n,1<{let n,r;if(!e||!e.gt||!e.et)return rt;const s=e.gt;for(t=4==t?it:0,n=it;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=mt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=mt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=mt,e.Le="incorrect header check",s.marker=5;break}if(!(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=mt,e.Le="need dictionary",s.marker=0,rt;case 7:if(n=s.kt.ut(e,n),n==st){s.mode=mt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case mt:return st;default:return rt}},e._t=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return rt;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return rt;const c=e.gt;if(c.mode!=mt&&(c.mode=mt,c.marker=0),0===(n=e.We))return it;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==bt[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?st:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Pt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():rt}function kt(){}function vt(e){const t=new kt,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t.At(0),c&&a===it){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}kt.prototype={xt(e){const t=this;return t.gt=new gt,e||(e=15),t.gt.xt(t,e)},At(e){const t=this;return t.gt?t.gt.At(t,e):rt},Ct(){const e=this;if(!e.gt)return rt;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):rt},_t(e,t){const n=this;return n.gt?n.gt._t(n,e,t):rt},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=nt,self.Inflate=vt};\n',r=()=>t.useDataURI?"data:text/javascript,"+encodeURIComponent(n):d.createObjectURL(new m([n],{type:"text/javascript"}));e({workerScripts:{inflate:[r],deflate:[r]}})})(ne),e.BlobReader=Ht,e.BlobWriter=Mt,e.Data64URIReader=Pt,e.Data64URIWriter=qt,e.ERR_BAD_FORMAT=Mn,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Zn,e.ERR_DUPLICATED_NAME=pr,e.ERR_ENCRYPTED=Xn,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=Vn,e.ERR_EOCDR_NOT_FOUND=Bn,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Gn,e.ERR_HTTP_RANGE=_t,e.ERR_INVALID_COMMENT=gr,e.ERR_INVALID_ENCRYPTION_STRENGTH=Sr,e.ERR_INVALID_ENTRY_COMMENT=mr,e.ERR_INVALID_ENTRY_NAME=yr,e.ERR_INVALID_EXTRAFIELD_DATA=zr,e.ERR_INVALID_EXTRAFIELD_TYPE=kr,e.ERR_INVALID_PASSWORD=pe,e.ERR_INVALID_SIGNATURE=ge,e.ERR_INVALID_VERSION=br,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Ft,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Kn,e.ERR_SPLIT_ZIP_FILE=Jn,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=vr,e.ERR_UNSUPPORTED_COMPRESSION=jn,e.ERR_UNSUPPORTED_ENCRYPTION=Yn,e.ERR_UNSUPPORTED_FORMAT=xr,e.HttpRangeReader=class extends sn{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=sn,e.Reader=Nt,e.SplitDataReader=cn,e.SplitDataWriter=ln,e.SplitZipReader=wn,e.SplitZipWriter=pn,e.TextReader=Bt,e.TextWriter=Vt,e.Uint8ArrayReader=an,e.Uint8ArrayWriter=on,e.Writer=Ot,e.ZipReader=nr,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:n}=new v,r=new nr(t,e).getEntriesGenerator();this.readable=new A({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const s={...n,readable:(()=>{const{readable:e,writable:t}=new v;if(n.getData)return n.getData(t),e})()};delete s.getData,e.enqueue(s)}}),this.writable=n}},e.ZipWriter=Rr,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new v;this.readable=t,this.zipWriter=new Rr(n,e)}transform(e){const{readable:t,writable:n}=new v({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new v;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=ne,e.fs=Br,e.getMimeType=()=>"application/octet-stream",e.initReader=dn,e.initShimAsyncCodec=(e,t={},n)=>({Deflate:se(e.Deflate,t.deflate,n),Inflate:se(e.Inflate,t.inflate,n)}),e.initStream=un,e.initWriter=fn,e.readUint8Array=hn,e.terminateWorkers=async()=>{await y.allSettled(xt.map((e=>(Dt(e),e.terminate()))))}})); diff --git a/dist/zip-full.js b/dist/zip-full.js index a248f4b7..ccd6cd3b 100644 --- a/dist/zip-full.js +++ b/dist/zip-full.js @@ -1246,7 +1246,6 @@ } // Copy as much as possible from input to output: - // eslint-disable-next-line no-constant-condition while (true) { // Fill the win as much as possible: if (lookahead <= 1) { @@ -1341,7 +1340,6 @@ // We check for insufficient lookahead only every 8th comparison; // the 256th check will be made at strstart+258. - // eslint-disable-next-line no-empty do { // empty block } while (win[++scan] == win[++match] && win[++scan] == win[++match] && win[++scan] == win[++match] @@ -1377,7 +1375,6 @@ let hash_head = 0; // head of the hash chain let bflush; // set if current block must be flushed - // eslint-disable-next-line no-constant-condition while (true) { // Make sure that we always have enough lookahead, except // at the end of the input file. We need MAX_MATCH bytes @@ -1484,7 +1481,6 @@ let max_insert; // Process the input block. - // eslint-disable-next-line no-constant-condition while (true) { // Make sure that we always have enough lookahead, except // at the end of the input file. We need MAX_MATCH bytes @@ -2834,7 +2830,6 @@ m = q < s.read ? s.read - q - 1 : s.end - q; // process input and output based on current state - // eslint-disable-next-line no-constant-condition while (true) { switch (mode) { // waiting for "i:"=input, "o:"=output, "x:"=nothing @@ -3325,7 +3320,6 @@ // process input based on current state // DEBUG dtree - // eslint-disable-next-line no-constant-condition while (true) { let bl, bd, tl, td, bl_, bd_, tl_, td_; switch (mode) { @@ -3602,7 +3596,6 @@ mode = DTREE; /* falls through */ case DTREE: - // eslint-disable-next-line no-constant-condition while (true) { t = table; if (index >= 258 + (t & 0x1f) + ((t >> 5) & 0x1f)) { @@ -3910,7 +3903,6 @@ const istate = z.istate; f = f == Z_FINISH ? Z_BUF_ERROR : Z_OK; r = Z_BUF_ERROR; - // eslint-disable-next-line no-constant-condition while (true) { switch (istate.mode) { case METHOD: @@ -4290,6 +4282,8 @@ const BITFLAG_DATA_DESCRIPTOR = 0x0008; const BITFLAG_LANG_ENCODING_FLAG = 0x0800; const FILE_ATTR_MSDOS_DIR_MASK = 0x10; + const FILE_ATTR_UNIX_DIR_MASK = 0x4000; + const FILE_ATTR_UNIX_EXECUTABLE_MASK = 0o111; const VERSION_DEFLATE = 0x14; const VERSION_ZIP64 = 0x2D; @@ -4390,7 +4384,8 @@ if (typeof navigator != UNDEFINED_TYPE && navigator.hardwareConcurrency) { maxWorkers = navigator.hardwareConcurrency; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } const DEFAULT_CONFIGURATION = { @@ -5828,7 +5823,8 @@ if (IMPORT_KEY_SUPPORTED) { try { return await subtle.importKey(format, password, algorithm, extractable, keyUsages); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { IMPORT_KEY_SUPPORTED = false; return misc.importKey(password); } @@ -5841,7 +5837,8 @@ if (DERIVE_BITS_SUPPORTED) { try { return await subtle.deriveBits(algorithm, baseKey, length); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { DERIVE_BITS_SUPPORTED = false; return misc.pbkdf2(baseKey, algorithm.salt, DERIVED_BITS_ALGORITHM.iterations, length); } @@ -6159,11 +6156,13 @@ try { const CompressionStream = useCompressionStream && CodecStreamNative ? CodecStreamNative : CodecStream; readable = pipeThrough(readable, new CompressionStream(COMPRESSION_FORMAT, options)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { if (useCompressionStream) { try { readable = pipeThrough(readable, new CodecStream(COMPRESSION_FORMAT, options)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { return readable; } } else { @@ -6406,7 +6405,8 @@ async function callHandler(handler, ...parameters) { try { await handler(...parameters); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -6423,7 +6423,8 @@ let worker; try { worker = getWebWorker(workerData.scripts[0], baseURL, workerData); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { WEB_WORKERS_SUPPORTED = false; return createWorkerInterface(workerData, config); } @@ -6526,13 +6527,15 @@ } try { scriptUrl = new URL(url, baseURL); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { scriptUrl = url; } if (classicWorkersSupported) { try { worker = new Worker(scriptUrl); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { classicWorkersSupported = false; worker = new Worker(scriptUrl, workerOptions); } @@ -6570,7 +6573,8 @@ try { worker.postMessage(message, transferables); return true; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { transferStreamsSupported = false; message.readable = message.writable = null; worker.postMessage(message); @@ -6713,7 +6717,8 @@ pool = pool.filter(data => data != workerData); try { await workerData.terminate(); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } }, terminateWorkerTimeout); @@ -7054,7 +7059,7 @@ combineSizeEocd } = httpReader; if (isHttpFamily(url) && (useRangeHeader || forceRangeRequests) && (typeof preventHeadRequest == "undefined" || preventHeadRequest)) { - const response = await sendRequest(HTTP_METHOD_GET, httpReader, getRangeHeaders(httpReader, combineSizeEocd ? -END_OF_CENTRAL_DIR_LENGTH : undefined)); + const response = await sendRequest(HTTP_METHOD_GET, httpReader, getRangeHeaders(httpReader, combineSizeEocd ? -22 : undefined)); if (!forceRangeRequests && response.headers.get(HTTP_HEADER_ACCEPT_RANGES) != HTTP_RANGE_UNIT) { throw new Error(ERR_HTTP_RANGE); } else { @@ -7577,7 +7582,9 @@ const PROPERTY_NAME_CREATION_DATE = "creationDate"; const PROPERTY_NAME_RAW_CREATION_DATE = "rawCreationDate"; const PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE = "internalFileAttribute"; + const PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES = "internalFileAttributes"; const PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE = "externalFileAttribute"; + const PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES = "externalFileAttributes"; const PROPERTY_NAME_MS_DOS_COMPATIBLE = "msDosCompatible"; const PROPERTY_NAME_ZIP64 = "zip64"; const PROPERTY_NAME_ENCRYPTED = "encrypted"; @@ -7589,10 +7596,7 @@ PROPERTY_NAME_FILENAME, PROPERTY_NAME_RAW_FILENAME, PROPERTY_NAME_COMPPRESSED_SIZE, PROPERTY_NAME_UNCOMPPRESSED_SIZE, PROPERTY_NAME_LAST_MODIFICATION_DATE, PROPERTY_NAME_RAW_LAST_MODIFICATION_DATE, PROPERTY_NAME_COMMENT, PROPERTY_NAME_RAW_COMMENT, PROPERTY_NAME_LAST_ACCESS_DATE, PROPERTY_NAME_CREATION_DATE, PROPERTY_NAME_OFFSET, PROPERTY_NAME_DISK_NUMBER_START, - PROPERTY_NAME_DISK_NUMBER_START, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, - PROPERTY_NAME_MS_DOS_COMPATIBLE, PROPERTY_NAME_ZIP64, PROPERTY_NAME_ENCRYPTED, PROPERTY_NAME_VERSION, PROPERTY_NAME_VERSION_MADE_BY, - PROPERTY_NAME_ZIPCRYPTO, "directory", "bitFlag", "signature", "filenameUTF8", "commentUTF8", "compressionMethod", "extraField", "rawExtraField", - "extraFieldZip64", "extraFieldUnicodePath", "extraFieldUnicodeComment", "extraFieldAES", "extraFieldNTFS", "extraFieldExtendedTimestamp"]; + PROPERTY_NAME_DISK_NUMBER_START, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES, PROPERTY_NAME_MS_DOS_COMPATIBLE, PROPERTY_NAME_ZIP64, PROPERTY_NAME_ENCRYPTED, PROPERTY_NAME_VERSION, PROPERTY_NAME_VERSION_MADE_BY, PROPERTY_NAME_ZIPCRYPTO, "directory", "executable", "bitFlag", "signature", "filenameUTF8", "commentUTF8", "compressionMethod", "extraField", "rawExtraField", "extraFieldZip64", "extraFieldUnicodePath", "extraFieldUnicodeComment", "extraFieldAES", "extraFieldNTFS", "extraFieldExtendedTimestamp"]; class Entry { @@ -7783,14 +7787,20 @@ const extraFieldOffset = filenameOffset + fileEntry.filenameLength; const commentOffset = extraFieldOffset + fileEntry.extraFieldLength; const versionMadeBy = getUint16(directoryView, offset + 4); - const msDosCompatible = (versionMadeBy & 0) == 0; + const msDosCompatible = versionMadeBy >> 8 == 0; + const unixCompatible = versionMadeBy >> 8 == 3; const rawFilename = directoryArray.subarray(filenameOffset, extraFieldOffset); const commentLength = getUint16(directoryView, offset + 32); const endOffset = commentOffset + commentLength; const rawComment = directoryArray.subarray(commentOffset, endOffset); const filenameUTF8 = languageEncodingFlag; const commentUTF8 = languageEncodingFlag; - const directory = msDosCompatible && ((getUint8(directoryView, offset + 38) & FILE_ATTR_MSDOS_DIR_MASK) == FILE_ATTR_MSDOS_DIR_MASK); + const externalFileAttributes = getUint32(directoryView, offset + 38); + const directory = + (msDosCompatible && ((getUint8(directoryView, offset + 38) & FILE_ATTR_MSDOS_DIR_MASK) == FILE_ATTR_MSDOS_DIR_MASK)) || + (unixCompatible && (((externalFileAttributes >> 16) & FILE_ATTR_UNIX_DIR_MASK) == FILE_ATTR_UNIX_DIR_MASK)) || + (rawFilename.length && rawFilename[rawFilename.length - 1] == DIRECTORY_SIGNATURE.charCodeAt(0)); + const executable = (unixCompatible && (((externalFileAttributes >> 16) & FILE_ATTR_UNIX_EXECUTABLE_MASK) == FILE_ATTR_UNIX_EXECUTABLE_MASK)); const offsetFileEntry = getUint32(directoryView, offset + 42) + prependedDataLength; Object.assign(fileEntry, { versionMadeBy, @@ -7801,13 +7811,16 @@ directory, offset: offsetFileEntry, diskNumberStart: getUint16(directoryView, offset + 34), - internalFileAttribute: getUint16(directoryView, offset + 36), - externalFileAttribute: getUint32(directoryView, offset + 38), + internalFileAttributes: getUint16(directoryView, offset + 36), + externalFileAttributes, rawFilename, filenameUTF8, commentUTF8, - rawExtraField: directoryArray.subarray(extraFieldOffset, commentOffset) + rawExtraField: directoryArray.subarray(extraFieldOffset, commentOffset), + executable }); + fileEntry.internalFileAttribute = fileEntry.internalFileAttributes; + fileEntry.externalFileAttribute = fileEntry.externalFileAttributes; const decode = getOptionValue$1(zipReader, options, "decodeText") || decodeText; const rawFilenameEncoding = filenameUTF8 ? CHARSET_UTF8 : filenameEncoding || CHARSET_CP437; const rawCommentEncoding = commentUTF8 ? CHARSET_UTF8 : commentEncoding || CHARSET_CP437; @@ -7835,7 +7848,8 @@ if (onprogress) { try { await onprogress(indexFile + 1, filesLength, new Entry(fileEntry)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -8047,7 +8061,8 @@ }); offsetExtraField += 4 + size; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } const compressionMethod = getUint16(dataView, offset + 4); @@ -8154,7 +8169,8 @@ } offsetExtraField += 4 + attributeSize; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } try { @@ -8175,7 +8191,8 @@ Object.assign(extraFieldNTFS, extraFieldData); Object.assign(directory, extraFieldData); } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -8244,7 +8261,8 @@ const date = (timeRaw & 0xffff0000) >> 16, time = timeRaw & 0x0000ffff; try { return new Date(1980 + ((date & 0xFE00) >> 9), ((date & 0x01E0) >> 5) - 1, date & 0x001F, (time & 0xF800) >> 11, (time & 0x07E0) >> 5, (time & 0x001F) * 2, 0); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -8456,8 +8474,14 @@ const lastAccessDate = getOptionValue(zipWriter, options, PROPERTY_NAME_LAST_ACCESS_DATE); const creationDate = getOptionValue(zipWriter, options, PROPERTY_NAME_CREATION_DATE); const msDosCompatible = getOptionValue(zipWriter, options, PROPERTY_NAME_MS_DOS_COMPATIBLE, true); - const internalFileAttribute = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, 0); - const externalFileAttribute = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, 0); + let internalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES, 0); + if (internalFileAttributes === 0) { + internalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, 0); + } + let externalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES, 0); + if (externalFileAttributes === 0) { + externalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, 0); + } const passThrough = getOptionValue(zipWriter, options, "passThrough"); let password, rawPassword; if (!passThrough) { @@ -8573,8 +8597,10 @@ dataDescriptorSignature, signal, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttribute: internalFileAttributes, + internalFileAttributes, + externalFileAttribute: externalFileAttributes, + externalFileAttributes, useCompressionStream, passThrough, encrypted: Boolean((password && getLength(password)) || (rawPassword && getLength(rawPassword))) || (passThrough && encrypted), @@ -8695,7 +8721,8 @@ if (error) { try { error.corruptedEntry = true; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -8788,8 +8815,8 @@ encryptionStrength, extendedTimestamp, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, useCompressionStream, passThrough } = options; @@ -8808,8 +8835,8 @@ rawExtraField, extendedTimestamp, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, diskNumberStart }; let { @@ -8969,7 +8996,8 @@ setBigUint64(extraFieldNTFSView, 12, lastModTimeNTFS); setBigUint64(extraFieldNTFSView, 20, getTimeNTFS(lastAccessDate) || lastModTimeNTFS); setBigUint64(extraFieldNTFSView, 28, getTimeNTFS(creationDate) || lastModTimeNTFS); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { rawExtraFieldNTFS = new Uint8Array(); } } else { @@ -9264,8 +9292,8 @@ zip64DiskNumberStart, zip64Offset, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, diskNumberStart, uncompressedSize, compressedSize @@ -9284,9 +9312,9 @@ setUint16(directoryView, offset + 30, extraFieldLength); setUint16(directoryView, offset + 32, getLength(rawComment)); setUint16(directoryView, offset + 34, zip64 && zip64DiskNumberStart ? MAX_16_BITS : diskNumberStart); - setUint16(directoryView, offset + 36, internalFileAttribute); - if (externalFileAttribute) { - setUint32(directoryView, offset + 38, externalFileAttribute); + setUint16(directoryView, offset + 36, internalFileAttributes); + if (externalFileAttributes) { + setUint32(directoryView, offset + 38, externalFileAttributes); } else if (directory && msDosCompatible) { setUint8(directoryView, offset + 38, FILE_ATTR_MSDOS_DIR_MASK); } @@ -9308,7 +9336,8 @@ if (options.onprogress) { try { await options.onprogress(indexFileEntry + 1, files.size, new Entry(fileEntry)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -9463,7 +9492,8 @@ let baseURL; try { baseURL = (typeof document === 'undefined' && typeof location === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : typeof document === 'undefined' ? location.href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('zip-full.js', document.baseURI).href)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } e(configure); diff --git a/dist/zip-full.min.js b/dist/zip-full.min.js index 610d7d9c..ffeaf58a 100644 --- a/dist/zip-full.min.js +++ b/dist/zip-full.min.js @@ -1 +1 @@ -((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:r,Number:i,BigInt:s,Math:a,Date:o,Map:l,Set:c,Response:u,URL:f,Error:d,Uint8Array:w,Uint16Array:h,Uint32Array:p,DataView:g,Blob:_,Promise:m,TextEncoder:b,TextDecoder:y,document:x,crypto:k,btoa:S,TransformStream:v,ReadableStream:z,WritableStream:A,CompressionStream:C,DecompressionStream:D,navigator:E,Worker:W}="undefined"!=typeof globalThis?globalThis:this||self;var R=void 0!==x?x.currentScript:null;const F=-2;function T(e){return L(e.map((([e,n])=>new t(e).fill(n,0,e))))}function L(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?L(n):n)),[])}const U=[0,1,2,3].concat(...T([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function I(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,i=e.stat_desc.static_tree,s=e.stat_desc.elems;let o,l,c,u=-1;for(n.heap_len=0,n.heap_max=573,o=0;s>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=u=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>u?++u:0,r[2*c]=1,n.depth[c]=0,n.opt_len--,i&&(n.static_len-=i[2*c+1]);for(e.max_code=u,o=a.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);c=s;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),l=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=l,r[2*c]=r[2*o]+r[2*l],n.depth[c]=a.max(n.depth[o],n.depth[l])+1,r[2*o+1]=r[2*l+1]=c,n.heap[1]=c++,n.pqdownheap(r,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,r=e.stat_desc.static_tree,i=e.stat_desc.extra_bits,s=e.stat_desc.extra_base,a=e.stat_desc.max_length;let o,l,c,u,f,d,w=0;for(u=0;15>=u;u++)t.bl_count[u]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)l=t.heap[o],u=n[2*n[2*l+1]+1]+1,u>a&&(u=a,w++),n[2*l+1]=u,l>e.max_code||(t.bl_count[u]++,f=0,s>l||(f=i[l-s]),d=n[2*l],t.opt_len+=d*(u+f),r&&(t.static_len+=d*(r[2*l+1]+f)));if(0!==w){do{for(u=a-1;0===t.bl_count[u];)u--;t.bl_count[u]--,t.bl_count[u+1]+=2,t.bl_count[a]--,w-=2}while(w>0);for(u=a;0!==u;u--)for(l=t.bl_count[u];0!==l;)c=t.heap[--o],c>e.max_code||(n[2*c+1]!=u&&(t.opt_len+=(u-n[2*c+1])*n[2*c],n[2*c+1]=u),l--)}})(n),((e,n,r)=>{const i=[];let s,a,o,l=0;for(s=1;15>=s;s++)i[s]=l=l+r[s-1]<<1;for(a=0;n>=a;a++)o=e[2*a+1],0!==o&&(e[2*a]=t(i[o]++,o))})(r,e.max_code,n.bl_count)}}function N(e,t,n,r,i){const s=this;s.static_tree=e,s.extra_bits=t,s.extra_base=n,s.elems=r,s.max_length=i}I._length_code=[0,1,2,3,4,5,6,7].concat(...T([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),I.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],I.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],I.d_code=e=>256>e?U[e]:U[256+(e>>>7)],I.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],I.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],I.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],I.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const q=T([[144,8],[112,9],[24,7],[8,8]]);N.static_ltree=L([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,q[t]])));const O=T([[30,5]]);function P(e,t,n,r,i){const s=this;s.good_length=e,s.max_lazy=t,s.nice_length=n,s.max_chain=r,s.func=i}N.static_dtree=L([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,O[t]]))),N.static_l_desc=new N(N.static_ltree,I.extra_lbits,257,286,15),N.static_d_desc=new N(N.static_dtree,I.extra_dbits,0,30,15),N.static_bl_desc=new N(null,I.extra_blbits,0,19,7);const H=[new P(0,0,0,0,0),new P(4,4,8,4,1),new P(4,5,16,8,1),new P(4,6,32,32,1),new P(4,4,16,16,2),new P(8,16,32,32,2),new P(8,16,128,128,2),new P(8,32,128,256,2),new P(32,128,258,1024,2),new P(32,258,258,4096,2)],M=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],B=113,V=666,Z=262;function K(e,t,n,r){const i=e[2*t],s=e[2*n];return s>i||i==s&&r[t]<=r[n]}function G(){const e=this;let t,n,r,i,s,o,l,c,u,f,d,p,g,_,m,b,y,x,k,S,v,z,A,C,D,E,W,R,T,L,U,q,O;const P=new I,G=new I,X=new I;let Y,j,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)U[2*t]=0;for(t=0;30>t;t++)q[2*t]=0;for(t=0;19>t;t++)O[2*t]=0;U[512]=1,e.opt_len=e.static_len=0,j=J=0}function ne(e,t){let n,r=-1,i=e[1],s=0,a=7,o=4;0===i&&(a=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)n=i,i=e[2*(l+1)+1],++ss?O[2*n]+=s:0!==n?(n!=r&&O[2*n]++,O[32]++):s>10?O[36]++:O[34]++,s=0,r=n,0===i?(a=138,o=3):n==i?(a=6,o=3):(a=7,o=4))}function re(t){e.pending_buf[e.pending++]=t}function ie(e){re(255&e),re(e>>>8&255)}function se(e,t){let n;const r=t;ee>16-r?(n=e,$|=n<>>16-ee,ee+=r-16):($|=e<=n;n++)if(r=s,s=e[2*(n+1)+1],++a>=o||r!=s){if(l>a)do{ae(r,O)}while(0!=--a);else 0!==r?(r!=i&&(ae(r,O),a--),ae(16,O),se(a-3,2)):a>10?(ae(18,O),se(a-11,7)):(ae(17,O),se(a-3,3));a=0,i=r,0===s?(o=138,l=3):r==s?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(ie($),$=0,ee=0):8>ee||(re(255&$),$>>>=8,ee-=8)}function ce(t,n){let r,i,s;if(e.dist_buf[j]=t,e.lc_buf[j]=255&n,j++,0===t?U[2*n]++:(J++,t--,U[2*(I._length_code[n]+256+1)]++,q[2*I.d_code(t)]++),!(8191&j)&&W>2){for(r=8*j,i=v-y,s=0;30>s;s++)r+=q[2*s]*(5+I.extra_dbits[s]);if(r>>>=3,Jo);ae(256,t),Q=t[513]}function fe(){ee>8?ie($):ee>0&&re(255&$),$=0,ee=0}function de(t,n,r){se(0+(r?1:0),3),((t,n)=>{fe(),Q=8,ie(n),ie(~n),e.pending_buf.set(c.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function we(n){((t,n,r)=>{let i,s,a=0;W>0?(P.build_tree(e),G.build_tree(e),a=(()=>{let t;for(ne(U,P.max_code),ne(q,G.max_code),X.build_tree(e),t=18;t>=3&&0===O[2*I.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),i=e.opt_len+3+7>>>3,s=e.static_len+3+7>>>3,s>i||(i=s)):i=s=n+5,n+4>i||-1==t?s==i?(se(2+(r?1:0),3),ue(N.static_ltree,N.static_dtree)):(se(4+(r?1:0),3),((e,t,n)=>{let r;for(se(e-257,5),se(t-1,5),se(n-4,4),r=0;n>r;r++)se(O[2*I.bl_order[r]+1],3);oe(U,e-1),oe(q,t-1)})(P.max_code+1,G.max_code+1,a+1),ue(U,q)):de(t,n,r),te(),r&&fe()})(0>y?-1:y,v-y,n),y=v,t.flush_pending()}function he(){let e,n,r,i;do{if(i=u-A-v,0===i&&0===v&&0===A)i=s;else if(-1==i)i--;else if(v>=s+s-Z){c.set(c.subarray(s,s+s),0),z-=s,v-=s,y-=s,e=g,r=e;do{n=65535&d[--r],d[r]=s>n?0:n-s}while(0!=--e);e=s,r=e;do{n=65535&f[--r],f[r]=s>n?0:n-s}while(0!=--e);i+=s}if(0===t.avail_in)return;e=t.read_buf(c,v+A,i),A+=e,3>A||(p=255&c[v],p=(p<A&&0!==t.avail_in)}function pe(e){let t,n,r=D,i=v,a=C;const o=v>s-Z?v-(s-Z):0;let u=L;const d=l,w=v+258;let h=c[i+a-1],p=c[i+a];T>C||(r>>=2),u>A&&(u=A);do{if(t=e,c[t+a]==p&&c[t+a-1]==h&&c[t]==c[i]&&c[++t]==c[i+1]){i+=2,t++;do{}while(c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&w>i);if(n=258-(w-i),i=w-258,n>a){if(z=e,a=n,n>=u)break;h=c[i+a-1],p=c[i+a]}}}while((e=65535&f[e&d])>o&&0!=--r);return a>A?A:a}e.depth=[],e.bl_count=[],e.heap=[],U=[],q=[],O=[],e.pqdownheap=(t,n)=>{const r=e.heap,i=r[n];let s=n<<1;for(;s<=e.heap_len&&(s(I||(I=8),M||(M=8),V||(V=0),t.msg=null,-1==k&&(k=6),1>M||M>9||8!=I||9>z||z>15||0>k||k>9||0>V||V>2?F:(t.dstate=e,o=z,s=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=B,i=0,P.dyn_tree=U,P.stat_desc=N.static_l_desc,G.dyn_tree=q,G.stat_desc=N.static_d_desc,X.dyn_tree=O,X.stat_desc=N.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{u=2*s,d[g-1]=0;for(let e=0;g-1>e;e++)d[e]=0;E=H[W].max_lazy,T=H[W].good_length,L=H[W].nice_length,D=H[W].max_chain,v=0,y=0,A=0,x=C=2,S=0,p=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=B&&n!=V?F:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,d=null,f=null,c=null,e.dstate=null,n==B?-3:0),e.deflateParams=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?F:(H[W].func!=H[t].func&&0!==e.total_in&&(r=e.deflate(1)),W!=t&&(W=t,E=H[W].max_lazy,T=H[W].good_length,L=H[W].nice_length,D=H[W].max_chain),R=n,r)},e.deflateSetDictionary=(e,t,r)=>{let i,a=r,o=0;if(!t||42!=n)return F;if(3>a)return 0;for(a>s-Z&&(a=s-Z,o=r-a),c.set(t.subarray(o,o+a),0),v=a,y=a,p=255&c[0],p=(p<=i;i++)p=(p<{let w,h,_,D,T;if(u>4||0>u)return F;if(!a.next_out||!a.next_in&&0!==a.avail_in||n==V&&4!=u)return a.msg=M[4],F;if(0===a.avail_out)return a.msg=M[7],-5;var L;if(t=a,D=i,i=u,42==n&&(h=8+(o-8<<4)<<8,_=(W-1&255)>>1,_>3&&(_=3),h|=_<<6,0!==v&&(h|=32),h+=31-h%31,n=B,re((L=h)>>8&255),re(255&L)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return i=-1,0}else if(0===t.avail_in&&D>=u&&4!=u)return t.msg=M[7],-5;if(n==V&&0!==t.avail_in)return a.msg=M[7],-5;if(0!==t.avail_in||0!==A||0!=u&&n!=V){switch(T=-1,H[W].func){case 0:T=(e=>{let n,i=65535;for(i>r-5&&(i=r-5);;){if(1>=A){if(he(),0===A&&0==e)return 0;if(0===A)break}if(v+=A,A=0,n=y+i,(0===v||v>=n)&&(A=v-n,v=n,we(!1),0===t.avail_out))return 0;if(v-y>=s-Z&&(we(!1),0===t.avail_out))return 0}return we(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(u);break;case 1:T=(e=>{let n,r=0;for(;;){if(Z>A){if(he(),Z>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<s-Z||2!=R&&(x=pe(r)),3>x)n=ce(0,255&c[v]),A--,v++;else if(n=ce(v-z,x-3),A-=x,x>E||3>A)v+=x,x=0,p=255&c[v],p=(p<{let n,r,i=0;for(;;){if(Z>A){if(he(),Z>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<C&&s-Z>=(v-i&65535)&&(2!=R&&(x=pe(i)),5>=x&&(1==R||3==x&&v-z>4096)&&(x=2)),3>C||x>C)if(0!==S){if(n=ce(0,255&c[v-1]),n&&we(!1),v++,A--,0===t.avail_out)return 0}else S=1,v++,A--;else{r=v+A-3,n=ce(v-1-k,C-3),A-=C-1,C-=2;do{++v>r||(p=(p<1+Q+10-ee&&(se(2,3),ae(256,N.static_ltree),le()),Q=7;else if(de(0,0,!1),3==u)for(w=0;g>w;w++)d[w]=0;if(t.flush_pending(),0===t.avail_out)return i=-1,0}}return 4!=u?0:1}}function X(){const e=this;e.next_in_index=0,e.next_out_index=0,e.avail_in=0,e.total_in=0,e.avail_out=0,e.total_out=0}X.prototype={deflateInit(e,t){const n=this;return n.dstate=new G,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):F},deflateEnd(){const e=this;if(!e.dstate)return F;const t=e.dstate.deflateEnd();return e.dstate=null,t},deflateParams(e,t){const n=this;return n.dstate?n.dstate.deflateParams(n,e,t):F},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):F},read_buf(e,t,n){const r=this;let i=r.avail_in;return i>n&&(i=n),0===i?0:(r.avail_in-=i,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),t),r.next_in_index+=i,r.total_in+=i,i)},flush_pending(){const e=this;let t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),0!==t&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,0===e.dstate.pending&&(e.dstate.pending_out=0))}};const Y=-2,j=-3,J=-5,Q=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],$=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ee=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],te=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],ne=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],re=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],ie=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function se(){let e,t,n,r,i,s;function a(e,t,a,o,l,c,u,f,d,w,h){let p,g,_,m,b,y,x,k,S,v,z,A,C,D,E;v=0,b=a;do{n[e[t+v]]++,v++,b--}while(0!==b);if(n[0]==a)return u[0]=-1,f[0]=0,0;for(k=f[0],y=1;15>=y&&0===n[y];y++);for(x=y,y>k&&(k=y),b=15;0!==b&&0===n[b];b--);for(_=b,k>b&&(k=b),f[0]=k,D=1<y;y++,D<<=1)if(0>(D-=n[y]))return j;if(0>(D-=n[b]))return j;for(n[b]+=D,s[1]=y=0,v=1,C=2;0!=--b;)s[C]=y+=n[v],C++,v++;b=0,v=0;do{0!==(y=e[t+v])&&(h[s[y]++]=b),v++}while(++b=x;x++)for(p=n[x];0!=p--;){for(;x>A+k;){if(m++,A+=k,E=_-A,E=E>k?k:E,(g=1<<(y=x-A))>p+1&&(g-=p+1,C=x,E>y))for(;++yn[++C];)g-=n[C];if(E=1<1440)return j;i[m]=z=w[0],w[0]+=E,0!==m?(s[m]=b,r[0]=y,r[1]=k,y=b>>>A-k,r[2]=z-i[m-1]-y,d.set(r,3*(i[m-1]+y))):u[0]=z}for(r[1]=x-A,a>v?h[v]h[v]?0:96,r[2]=h[v++]):(r[0]=c[h[v]-o]+16+64,r[2]=l[h[v++]-o]):r[0]=192,g=1<>>A;E>y;y+=g)d.set(r,3*(z+y));for(y=1<>>=1)b^=y;for(b^=y,S=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)r[o]=0;i.set(n.subarray(0,15),0),s.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,r,i,s,l)=>{let c;return o(19),e[0]=0,c=a(n,0,19,19,null,null,i,r,s,e,t),c==j?l.msg="oversubscribed dynamic bit lengths tree":c!=J&&0!==r[0]||(l.msg="incomplete dynamic bit lengths tree",c=j),c},this.inflate_trees_dynamic=(n,r,i,s,l,c,u,f,d)=>{let w;return o(288),e[0]=0,w=a(i,0,n,257,te,ne,c,s,f,e,t),0!=w||0===s[0]?(w==j?d.msg="oversubscribed literal/length tree":-4!=w&&(d.msg="incomplete literal/length tree",w=j),w):(o(288),w=a(i,n,r,0,re,ie,u,l,f,e,t),0!=w||0===l[0]&&n>257?(w==j?d.msg="oversubscribed distance tree":w==J?(d.msg="incomplete distance tree",w=j):-4!=w&&(d.msg="empty distance tree with lengths",w=j),w):0)}}function ae(){const e=this;let t,n,r,i,s=0,a=0,o=0,l=0,c=0,u=0,f=0,d=0,w=0,h=0;function p(e,t,n,r,i,s,a,o){let l,c,u,f,d,w,h,p,g,_,m,b,y,x,k,S;h=o.next_in_index,p=o.avail_in,d=a.bitb,w=a.bitk,g=a.write,_=gw;)p--,d|=(255&o.read_byte(h++))<>=c[S+1],w-=c[S+1],16&f){for(f&=15,y=c[S+2]+(d&Q[f]),d>>=f,w-=f;15>w;)p--,d|=(255&o.read_byte(h++))<>=c[S+1],w-=c[S+1],16&f){for(f&=15;f>w;)p--,d|=(255&o.read_byte(h++))<>=f,w-=f,_-=y,x>g){k=g-x;do{k+=a.end}while(0>k);if(f=a.end-k,y>f){if(y-=f,g-k>0&&f>g-k)do{a.win[g++]=a.win[k++]}while(0!=--f);else a.win.set(a.win.subarray(k,k+f),g),g+=f,k+=f,f=0;k=0}}else k=g-x,g-k>0&&2>g-k?(a.win[g++]=a.win[k++],a.win[g++]=a.win[k++],y-=2):(a.win.set(a.win.subarray(k,k+2),g),g+=2,k+=2,y-=2);if(g-k>0&&y>g-k)do{a.win[g++]=a.win[k++]}while(0!=--y);else a.win.set(a.win.subarray(k,k+y),g),g+=y,k+=y,y=0;break}if(64&f)return o.msg="invalid distance code",y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=g,j;l+=c[S+2],l+=d&Q[f],S=3*(u+l),f=c[S]}break}if(64&f)return 32&f?(y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=g,1):(o.msg="invalid literal/length code",y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=g,j);if(l+=c[S+2],l+=d&Q[f],S=3*(u+l),0===(f=c[S])){d>>=c[S+1],w-=c[S+1],a.win[g++]=c[S+2],_--;break}}else d>>=c[S+1],w-=c[S+1],a.win[g++]=c[S+2],_--}while(_>=258&&p>=10);return y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=g,0}e.init=(e,s,a,o,l,c)=>{t=0,f=e,d=s,r=a,w=o,i=l,h=c,n=null},e.proc=(e,g,_)=>{let m,b,y,x,k,S,v,z=0,A=0,C=0;for(C=g.next_in_index,x=g.avail_in,z=e.bitb,A=e.bitk,k=e.write,S=k=258&&x>=10&&(e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,_=p(f,d,r,w,i,h,e,g),C=g.next_in_index,x=g.avail_in,z=e.bitb,A=e.bitk,k=e.write,S=kA;){if(0===x)return e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,e.inflate_flush(g,_);_=0,x--,z|=(255&g.read_byte(C++))<>>=n[b+1],A-=n[b+1],y=n[b],0===y){l=n[b+2],t=6;break}if(16&y){c=15&y,s=n[b+2],t=2;break}if(!(64&y)){o=y,a=b/3+n[b+2];break}if(32&y){t=7;break}return t=9,g.msg="invalid literal/length code",_=j,e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,e.inflate_flush(g,_);case 2:for(m=c;m>A;){if(0===x)return e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,e.inflate_flush(g,_);_=0,x--,z|=(255&g.read_byte(C++))<>=m,A-=m,o=d,n=i,a=h,t=3;case 3:for(m=o;m>A;){if(0===x)return e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,e.inflate_flush(g,_);_=0,x--,z|=(255&g.read_byte(C++))<>=n[b+1],A-=n[b+1],y=n[b],16&y){c=15&y,u=n[b+2],t=4;break}if(!(64&y)){o=y,a=b/3+n[b+2];break}return t=9,g.msg="invalid distance code",_=j,e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,e.inflate_flush(g,_);case 4:for(m=c;m>A;){if(0===x)return e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,e.inflate_flush(g,_);_=0,x--,z|=(255&g.read_byte(C++))<>=m,A-=m,t=5;case 5:for(v=k-u;0>v;)v+=e.end;for(;0!==s;){if(0===S&&(k==e.end&&0!==e.read&&(k=0,S=k7&&(A-=8,x++,C--),e.write=k,_=e.inflate_flush(g,_),k=e.write,S=k{}}se.inflate_trees_fixed=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=$,r[0]=ee,0);const oe=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function le(e,t){const n=this;let r,i=0,s=0,a=0,o=0;const l=[0],c=[0],u=new ae;let f=0,d=new Int32Array(4320);const h=new se;n.bitk=0,n.bitb=0,n.win=new w(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==i&&u.free(e),i=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let r,i,s;return i=e.next_out_index,s=n.read,r=(s>n.write?n.end:n.write)-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==J&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r,s==n.end&&(s=0,n.write==n.end&&(n.write=0),r=n.write-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==J&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r),e.next_out_index=i,n.read=s,t},n.proc=(e,t)=>{let w,p,g,_,m,b,y,x;for(_=e.next_in_index,m=e.avail_in,p=n.bitb,g=n.bitk,b=n.write,y=bg;){if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(_++))<>>1){case 0:p>>>=3,g-=3,w=7&g,p>>>=w,g-=w,i=1;break;case 1:k=[],S=[],v=[[]],z=[[]],se.inflate_trees_fixed(k,S,v,z),u.init(k[0],S[0],v[0],0,z[0],0),p>>>=3,g-=3,i=6;break;case 2:p>>>=3,g-=3,i=3;break;case 3:return p>>>=3,g-=3,i=9,e.msg="invalid block type",t=j,n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t)}break;case 1:for(;32>g;){if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(_++))<>>16&65535)!=(65535&p))return i=9,e.msg="invalid stored block lengths",t=j,n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);s=65535&p,p=g=0,i=0!==s?2:0!==f?7:0;break;case 2:if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);if(0===y&&(b==n.end&&0!==n.read&&(b=0,y=bm&&(w=m),w>y&&(w=y),n.win.set(e.read_buf(_,w),b),_+=w,m-=w,b+=w,y-=w,0!=(s-=w))break;i=0!==f?7:0;break;case 3:for(;14>g;){if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(_++))<29||(w>>5&31)>29)return i=9,e.msg="too many length or distance symbols",t=j,n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);if(w=258+(31&w)+(w>>5&31),!r||r.lengthx;x++)r[x]=0;p>>>=14,g-=14,o=0,i=4;case 4:for(;4+(a>>>10)>o;){for(;3>g;){if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(_++))<>>=3,g-=3}for(;19>o;)r[oe[o++]]=0;if(l[0]=7,w=h.inflate_trees_bits(r,l,c,d,e),0!=w)return(t=w)==j&&(r=null,i=9),n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);o=0,i=5;case 5:for(;w=a,258+(31&w)+(w>>5&31)>o;){let s,u;for(w=l[0];w>g;){if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(_++))<u)p>>>=w,g-=w,r[o++]=u;else{for(x=18==u?7:u-14,s=18==u?11:3;w+x>g;){if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(_++))<>>=w,g-=w,s+=p&Q[x],p>>>=x,g-=x,x=o,w=a,x+s>258+(31&w)+(w>>5&31)||16==u&&1>x)return r=null,i=9,e.msg="invalid bit length repeat",t=j,n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);u=16==u?r[x-1]:0;do{r[x++]=u}while(0!=--s);o=x}}if(c[0]=-1,A=[],C=[],D=[],E=[],A[0]=9,C[0]=6,w=a,w=h.inflate_trees_dynamic(257+(31&w),1+(w>>5&31),r,A,C,D,E,d,e),0!=w)return w==j&&(r=null,i=9),t=w,n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);u.init(A[0],C[0],d,D[0],d,E[0]),i=6;case 6:if(n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,1!=(t=u.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,u.free(e),_=e.next_in_index,m=e.avail_in,p=n.bitb,g=n.bitk,b=n.write,y=b{n.reset(e,null),n.win=null,d=null},n.set_dictionary=(e,t,r)=>{n.win.set(e.subarray(t,t+r),0),n.read=n.write=r},n.sync_point=()=>1==i?1:0}const ce=13,ue=[0,0,255,255];function fe(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):Y}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,r)=>(n.msg=null,e.blocks=null,8>r||r>15?(e.inflateEnd(n),Y):(e.wbits=r,n.istate.blocks=new le(n,1<{let n,r;if(!e||!e.istate||!e.next_in)return Y;const i=e.istate;for(t=4==t?J:0,n=J;;)switch(i.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(i.method=e.read_byte(e.next_in_index++)))){i.mode=ce,e.msg="unknown compression method",i.marker=5;break}if(8+(i.method>>4)>i.wbits){i.mode=ce,e.msg="invalid win size",i.marker=5;break}i.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,r=255&e.read_byte(e.next_in_index++),((i.method<<8)+r)%31!=0){i.mode=ce,e.msg="incorrect header check",i.marker=5;break}if(!(32&r)){i.mode=7;break}i.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,i.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,i.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,i.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,i.need+=255&e.read_byte(e.next_in_index++),i.mode=6,2);case 6:return i.mode=ce,e.msg="need dictionary",i.marker=0,Y;case 7:if(n=i.blocks.proc(e,n),n==j){i.mode=ce,i.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,i.blocks.reset(e,i.was),i.mode=12;case 12:return e.avail_in=0,1;case ce:return j;default:return Y}},e.inflateSetDictionary=(e,t,n)=>{let r=0,i=n;if(!e||!e.istate||6!=e.istate.mode)return Y;const s=e.istate;return i<1<{let n,r,i,s,a;if(!e||!e.istate)return Y;const o=e.istate;if(o.mode!=ce&&(o.mode=ce,o.marker=0),0===(n=e.avail_in))return J;for(r=e.next_in_index,i=o.marker;0!==n&&4>i;)e.read_byte(r)==ue[i]?i++:i=0!==e.read_byte(r)?0:4-i,r++,n--;return e.total_in+=r-e.next_in_index,e.next_in_index=r,e.avail_in=n,o.marker=i,4!=i?j:(s=e.total_in,a=e.total_out,t(e),e.total_in=s,e.total_out=a,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():Y}function de(){}de.prototype={inflateInit(e){const t=this;return t.istate=new fe,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):Y},inflateEnd(){const e=this;if(!e.istate)return Y;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):Y},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):Y},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const we=4294967295,he=65535,pe=67324752,ge=134695760,_e=ge,me=33639248,be=101010256,ye=101075792,xe=117853008,ke=22,Se=21589,ve=2048,ze="/",Ae=new o(2107,11,31),Ce=new o(1980,0,1),De=void 0,Ee="undefined",We="function";class Re{constructor(e){return class extends v{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}let Fe=2;try{typeof E!=Ee&&E.hardwareConcurrency&&(Fe=E.hardwareConcurrency)}catch(e){}const Te={chunkSize:524288,maxWorkers:Fe,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:De,CompressionStreamNative:typeof C!=Ee&&C,DecompressionStreamNative:typeof D!=Ee&&D},Le=n.assign({},Te);function Ue(){return Le}function Ie(e){return a.max(e.chunkSize,64)}function Ne(e){const{baseURL:n,chunkSize:r,maxWorkers:i,terminateWorkerTimeout:s,useCompressionStream:a,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:u,DecompressionStream:f,workerScripts:w}=e;if(qe("baseURL",n),qe("chunkSize",r),qe("maxWorkers",i),qe("terminateWorkerTimeout",s),qe("useCompressionStream",a),qe("useWebWorkers",o),l&&(Le.CompressionStream=new Re(l)),c&&(Le.DecompressionStream=new Re(c)),qe("CompressionStream",u),qe("DecompressionStream",f),w!==De){const{deflate:e,inflate:n}=w;if((e||n)&&(Le.workerScripts||(Le.workerScripts={})),e){if(!t.isArray(e))throw new d("workerScripts.deflate must be an array");Le.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new d("workerScripts.inflate must be an array");Le.workerScripts.inflate=n}}}function qe(e,t){t!==De&&(Le[e]=t)}function Oe(e,t,r){return class{constructor(i){const s=this;var a,o;a=i,o="level",(typeof n.hasOwn===We?n.hasOwn(a,o):a.hasOwnProperty(o))&&i.level===De&&delete i.level,s.codec=new e(n.assign({},t,i)),r(s.codec,(e=>{if(s.pendingData){const t=s.pendingData;s.pendingData=new w(t.length+e.length);const{pendingData:n}=s;n.set(t,0),n.set(e,t.length)}else s.pendingData=new w(e)}))}append(e){return this.codec.push(e),i(this)}flush(){return this.codec.push(new w,!0),i(this)}};function i(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new w}}const Pe=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;Pe[e]=t}class He{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^Pe[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Me extends v{constructor(){let e;const t=new He;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new g(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function Be(e){if(typeof b==Ee){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=Ve.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>a.round(e/1099511627776)||32,_shiftRight(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let i=0;i>>t),n=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=Ve.getPartial(i);return r.push(Ve.partial(t+s&31,t+s>32?n:r.pop(),1)),r}},Ze={bytes:{fromBits(e){const t=Ve.bitLength(e)/8,n=new w(t);let r;for(let i=0;t>i;i++)3&i||(r=e[i/4]),n[i]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const s=new p(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=Ve.concat(t,[Ve.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}_S(e,t){return t<>>32-e}_block(e){const n=this,r=n._h,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let s=r[0],o=r[1],l=r[2],c=r[3],u=r[4];for(let e=0;79>=e;e++){16>e||(i[e]=n._S(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n._S(5,s)+n._f(e,o,l,c)+u+i[e]+n._key[a.floor(e/20)]|0;u=c,c=l,l=n._S(30,o),o=s,s=t}r[0]=r[0]+s|0,r[1]=r[1]+o|0,r[2]=r[2]+l|0,r[3]=r[3]+c|0,r[4]=r[4]+u|0}},Ge={getRandomValues(e){const t=new p(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(a.random()>.5?1:-1))};for(let r,i=0;inew Xe.hmacSha1(Ze.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new d("invalid params to pbkdf2");const i=1+(r>>5)<<2;let s,a,o,l,c;const u=new ArrayBuffer(i),f=new g(u);let w=0;const h=Ve;for(t=Ze.bytes.toBits(t),c=1;(i||1)>w;c++){for(s=a=e.encrypt(h.concat(t,[c])),o=1;n>o;o++)for(a=e.encrypt(a),l=0;lw&&oi&&(e=(new n).update(e).finalize());for(let t=0;i>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Ye=typeof k!=Ee&&typeof k.getRandomValues==We,je="Invalid password",Je="Invalid signature",Qe="zipjs-abort-check-password";function $e(e){return Ye?k.getRandomValues(e):Ge.getRandomValues(e)}const et=16,tt={name:"PBKDF2"},nt=n.assign({hash:{name:"HMAC"}},tt),rt=n.assign({iterations:1e3,hash:{name:"SHA-1"}},tt),it=["deriveBits"],st=[8,12,16],at=[16,24,32],ot=10,lt=[0,0,0,0],ct=typeof k!=Ee,ut=ct&&k.subtle,ft=ct&&typeof ut!=Ee,dt=Ze.bytes,wt=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],i=e.length;let s,a,o,l=1;if(4!==i&&6!==i&&8!==i)throw new d("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],s=i;4*i+28>s;s++){let e=a[s-1];(s%i==0||8===i&&s%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],s%i==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),a[s]=a[s-i]^e}for(let e=0;s;e++,s--){const t=a[3&e?s:s-4];o[e]=4>=s||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],i=[],s=[];let a,o,l,c;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=o||1,a=s[a]||1){let s=a^a<<1^a<<2^a<<3^a<<4;s=s>>8^255&s^99,n[u]=s,r[s]=u,c=i[l=i[o=i[u]]];let f=16843009*c^65537*l^257*o^16843008*u,d=257*i[s]^16843008*s;for(let n=0;4>n;n++)e[n][u]=d=d<<24^d>>>8,t[n][s]=f=f<<24^f>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new d("invalid aes block size");const n=this._key[t],r=n.length/4-2,i=[0,0,0,0],s=this._tables[t],a=s[0],o=s[1],l=s[2],c=s[3],u=s[4];let f,w,h,p=e[0]^n[0],g=e[t?3:1]^n[1],_=e[2]^n[2],m=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)f=a[p>>>24]^o[g>>16&255]^l[_>>8&255]^c[255&m]^n[b],w=a[g>>>24]^o[_>>16&255]^l[m>>8&255]^c[255&p]^n[b+1],h=a[_>>>24]^o[m>>16&255]^l[p>>8&255]^c[255&g]^n[b+2],m=a[m>>>24]^o[p>>16&255]^l[g>>8&255]^c[255&_]^n[b+3],b+=4,p=f,g=w,_=h;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[g>>16&255]<<16^u[_>>8&255]<<8^u[255&m]^n[b++],f=p,p=g,g=_,_=m,m=f;return i}},ht=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];const i=Ve.bitLength(t);for(let i=0;r>i;i+=4){this.incCounter(n);const r=e.encrypt(n);t[i]^=r[0],t[i+1]^=r[1],t[i+2]^=r[2],t[i+3]^=r[3]}return Ve.clamp(t,i)}},pt=Xe.hmacSha1;let gt=ct&&ft&&typeof ut.importKey==We,_t=ct&&ft&&typeof ut.deriveBits==We;class mt extends v{constructor({password:e,rawPassword:t,signed:r,encryptionStrength:i,checkPasswordOnly:s}){super({start(){n.assign(this,{ready:new m((e=>this.resolveReady=e)),password:kt(e,t),signed:r,strength:i-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const i=await xt(e,t,n,vt(r,0,st[t])),s=vt(r,st[t]);if(i[0]!=s[0]||i[1]!=s[1])throw new d(je)})(n,i,r,vt(e,0,st[i]+2)),e=vt(e,st[i]+2),s?t.error(new d(Qe)):a()):await o;const l=new w(e.length-ot-(e.length-ot)%et);t.enqueue(yt(n,e,l,0,ot,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:i,ready:s}=this;if(r&&n){await s;const a=vt(i,0,i.length-ot),o=vt(i,i.length-ot);let l=new w;if(a.length){const e=At(dt,a);r.update(e);const t=n.update(e);l=zt(dt,t)}if(t){const e=vt(zt(dt,r.digest()),0,ot);for(let t=0;ot>t;t++)if(e[t]!=o[t])throw new d(Je)}e.enqueue(l)}}})}}class bt extends v{constructor({password:e,rawPassword:t,encryptionStrength:r}){let i;super({start(){n.assign(this,{ready:new m((e=>this.resolveReady=e)),password:kt(e,t),strength:r-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:s,ready:a}=n;let o=new w;r?(o=await(async(e,t,n)=>{const r=$e(new w(st[t]));return St(r,await xt(e,t,n,r))})(n,i,r),s()):await a;const l=new w(o.length+e.length-e.length%et);l.set(o,0),t.enqueue(yt(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:s}=this;if(n&&t){await s;let a=new w;if(r.length){const e=t.update(At(dt,r));n.update(e),a=zt(dt,e)}i.signature=zt(dt,n.digest()).slice(0,ot),e.enqueue(St(a,i.signature))}}}),i=this}}function yt(e,t,n,r,i,s){const{ctr:a,hmac:o,pending:l}=e,c=t.length-i;let u;for(l.length&&(t=St(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e})(n,c-c%et)),u=0;c-et>=u;u+=et){const e=At(dt,vt(t,u,u+et));s&&o.update(e);const i=a.update(e);s||o.update(i),n.set(zt(dt,i),u+r)}return e.pending=vt(t,u),n}async function xt(e,r,i,s){e.password=null;const a=await(async(e,t,n,r,i)=>{if(!gt)return Xe.importKey(t);try{return await ut.importKey("raw",t,n,!1,i)}catch(e){return gt=!1,Xe.importKey(t)}})(0,i,nt,0,it),o=await(async(e,t,n)=>{if(!_t)return Xe.pbkdf2(t,e.salt,rt.iterations,n);try{return await ut.deriveBits(e,t,n)}catch(r){return _t=!1,Xe.pbkdf2(t,e.salt,rt.iterations,n)}})(n.assign({salt:s},rt),a,8*(2*at[r]+2)),l=new w(o),c=At(dt,vt(l,0,at[r])),u=At(dt,vt(l,at[r],2*at[r])),f=vt(l,2*at[r]);return n.assign(e,{keys:{key:c,authentication:u,passwordVerification:f},ctr:new ht(new wt(c),t.from(lt)),hmac:new pt(u)}),f}function kt(e,t){return t===De?Be(e):t}function St(e,t){let n=e;return e.length+t.length&&(n=new w(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function vt(e,t,n){return e.subarray(t,n)}function zt(e,t){return e.fromBits(t)}function At(e,t){return e.toBits(t)}class Ct extends v{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Rt(this,e)},transform(e,t){const n=this;if(n.password){const t=Et(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new d(je);e=e.subarray(12)}r?t.error(new d(Qe)):t.enqueue(Et(n,e))}})}}class Dt extends v{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Rt(this,e)},transform(e,t){const n=this;let r,i;if(n.password){n.password=null;const t=$e(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Wt(n,t),0),i=12}else r=new w(e.length),i=0;r.set(Wt(n,e),i),t.enqueue(r)}})}}function Et(e,t){const n=new w(t.length);for(let r=0;r>>24]),i=~e.crcKey2.get(),e.keys=[n,r,i]}function Tt(e){const t=2|e.keys[2];return Lt(a.imul(t,1^t)>>>8)}function Lt(e){return 255&e}function Ut(e){return 4294967295&e}const It="deflate-raw";class Nt extends v{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:i,encrypted:s,useCompressionStream:a,zipCrypto:o,signed:l,level:c}=e,u=this;let f,d,w=Ot(super.readable);s&&!o||!l||(f=new Me,w=Mt(w,f)),i&&(w=Ht(w,a,{level:c,chunkSize:t},r,n)),s&&(o?w=Mt(w,new Dt(e)):(d=new bt(e),w=Mt(w,d))),Pt(u,w,(()=>{let e;s&&!o&&(e=d.signature),s&&!o||!l||(e=new g(f.value.buffer).getUint32(0)),u.signature=e}))}}class qt extends v{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:s,signed:a,signature:o,compressed:l,useCompressionStream:c}=e;let u,f,w=Ot(super.readable);s&&(i?w=Mt(w,new Ct(e)):(f=new mt(e),w=Mt(w,f))),l&&(w=Ht(w,c,{chunkSize:t},r,n)),s&&!i||!a||(u=new Me,w=Mt(w,u)),Pt(this,w,(()=>{if((!s||i)&&a){const e=new g(u.value.buffer);if(o!=e.getUint32(0,!1))throw new d(Je)}}))}}function Ot(e){return Mt(e,new v({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function Pt(e,t,r){t=Mt(t,new v({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Ht(e,t,n,r,i){try{e=Mt(e,new(t&&r?r:i)(It,n))}catch(r){if(!t)return e;try{e=Mt(e,new i(It,n))}catch(t){return e}}return e}function Mt(e,t){return e.pipeThrough(t)}const Bt="data",Vt="close",Zt="deflate",Kt="inflate";class Gt extends v{constructor(e,t){super({});const r=this,{codecType:i}=e;let s;i.startsWith(Zt)?s=Nt:i.startsWith(Kt)&&(s=qt);let a=0,o=0;const l=new s(e,t),c=super.readable,u=new v({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:o})}}),f=new v({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=l;n.assign(r,{signature:e,outputSize:a,inputSize:o})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(u).pipeThrough(l).pipeThrough(f)})}}class Xt extends v{constructor(e){let t;super({transform:function n(r,i){if(t){const e=new w(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(i.enqueue(r.slice(0,e)),n(r.slice(e),i)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}let Yt=typeof W!=Ee;class jt{constructor(e,{readable:t,writable:r},{options:i,config:s,streamOptions:a,useWebWorkers:o,transferStreams:l,scripts:c},u){const{signal:f}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Xt(s.chunkSize)).pipeThrough(new Jt(t,a),{signal:f}),writable:r,options:n.assign({},i),scripts:c,transferStreams:l,terminate:()=>new m((t=>{const{worker:n,busy:r}=e;n?(r?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,u(e)}}),(o&&Yt?en:$t)(e,s)}}class Jt extends v{constructor(e,{onstart:t,onprogress:n,size:r,onend:i}){let s=0;super({async start(){t&&await Qt(t,r)},async transform(e,t){s+=e.length,n&&await Qt(n,s,r),t.enqueue(e)},async flush(){e.size=s,i&&await Qt(i,s)}})}}async function Qt(e,...t){try{await e(...t)}catch(e){}}function $t(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},i)=>{try{const r=new Gt(e,i);await t.pipeThrough(r).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:s,inputSize:a,outputSize:o}=r;return{signature:s,inputSize:a,outputSize:o}}finally{r()}})(e,t)}}function en(e,t){const{baseURL:r,chunkSize:i}=t;if(!e.interface){let s;try{s=((e,t,r)=>{const i={type:"module"};let s,a;typeof e==We&&(e=e());try{s=new f(e,t)}catch(t){s=e}if(tn)try{a=new W(s)}catch(e){tn=!1,a=new W(s,i)}else a=new W(s,i);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:i,messageId:s,result:a,error:o}=e,{reader:l,writer:c,resolveResult:u,rejectResult:f,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:r,name:i}=o,s=new d(e);n.assign(s,{stack:t,code:r,name:i}),p(s)}else{if("pull"==r){const{value:e,done:n}=await l.read();rn({type:Bt,value:e,done:n,messageId:s},t)}r==Bt&&(await c.ready,await c.write(new w(i)),rn({type:"ack",messageId:s},t)),r==Vt&&p(null,a)}}catch(o){rn({type:Vt,messageId:s},t),p(o)}function p(e,t){e?f(e):u(t),c&&c.releaseLock(),h()}})(e,r))),a})(e.scripts[0],r,e)}catch(n){return Yt=!1,$t(e,t)}n.assign(e,{worker:s,interface:{run:()=>(async(e,t)=>{let r,i;const s=new m(((e,t)=>{r=e,i=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:i,result:s});const{readable:a,options:o,scripts:l}=e,{writable:c,closed:u}=(e=>{let t;const n=new m((e=>t=e));return{writable:new A({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),f=rn({type:"start",scripts:l.slice(1),options:o,config:t,readable:a,writable:c},e);f||n.assign(e,{reader:a.getReader(),writer:c.getWriter()});const d=await s;return f||await c.getWriter().close(),await u,d})(e,{chunkSize:i})}})}return e.interface}let tn=!0,nn=!0;function rn(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:i}){try{const{value:n,readable:r,writable:s}=e,a=[];if(n&&(n.byteLength{const n=sn.find((e=>!e.busy));if(n)return cn(n),new jt(n,e,t,p);if(sn.lengthan.push({resolve:n,stream:e,workerOptions:t})))})()).run();function p(e){if(an.length){const[{resolve:t,stream:n,workerOptions:r}]=an.splice(0,1);t(new jt(e,n,r,p))}else e.worker?(cn(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;i.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{sn=sn.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),r))})(e,t)):sn=sn.filter((t=>t!=e))}}function cn(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const un="HTTP error ",fn="HTTP Range not supported",dn="Writer iterator completed too soon",wn="Range",hn="GET",pn="bytes",gn=65536,_n="writable";class mn{constructor(){this.size=0}init(){this.initialized=!0}}class bn extends mn{get readable(){const e=this,{chunkSize:t=gn}=e,n=new z({start(){this.chunkOffset=0},async pull(r){const{offset:i=0,size:s,diskNumberStart:o}=n,{chunkOffset:l}=this;r.enqueue(await Mn(e,i+l,a.min(t,s-l),o)),l+t>s?r.close():this.chunkOffset+=t}});return n}}class yn extends mn{constructor(){super();const e=this,t=new A({write:t=>e.writeUint8Array(t)});n.defineProperty(e,_n,{get:()=>t})}writeUint8Array(){}}class xn extends bn{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,i=e||rt&&(s=s.slice(e,r)),new w(s)}}class kn extends mn{constructor(e){super();const t=new v,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,_n,{get:()=>t.writable}),this.blob=new u(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Sn extends bn{constructor(e,t){super(),zn(this,e,t)}async init(){await An(this,Ln,Wn),super.init()}readUint8Array(e,t){return Cn(this,e,t,Ln,Wn)}}class vn extends bn{constructor(e,t){super(),zn(this,e,t)}async init(){await An(this,Un,Rn),super.init()}readUint8Array(e,t){return Cn(this,e,t,Un,Rn)}}function zn(e,t,r){const{preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o})}async function An(e,t,n){const{url:r,preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:o,combineSizeEocd:l}=e;if((e=>{const{baseURL:t}=Ue(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n})(r)&&(a||o)&&(void 0===s||s)){const r=await t(hn,e,Dn(e,l?-22:void 0));if(!o&&r.headers.get("Accept-Ranges")!=pn)throw new d(fn);{let s;l&&(e.eocdCache=new w(await r.arrayBuffer()));const a=r.headers.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(s=i(t))}}s===De?await Tn(e,t,n):e.size=s}}else await Tn(e,t,n)}async function Cn(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,eocdCache:o,size:l,options:c}=e;if(s||a){if(o&&t==l-ke&&n==ke)return o;const i=await r(hn,e,Dn(e,t,n));if(206!=i.status)throw new d(fn);return new w(await i.arrayBuffer())}{const{data:r}=e;return r||await i(e,c),new w(e.data.subarray(t,t+n))}}function Dn(e,t=0,r=1){return n.assign({},En(e),{[wn]:pn+"="+(0>t?t:t+"-"+(t+r-1))})}function En({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Wn(e){await Fn(e,Ln)}async function Rn(e){await Fn(e,Un)}async function Fn(e,t){const n=await t(hn,e,En(e));e.data=new w(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Tn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,En(e))).headers.get("Content-Length");r?e.size=i(r):await n(e,e.options)}}async function Ln(e,{options:t,url:r},i){const s=await fetch(r,n.assign({},t,{method:e,headers:i}));if(400>s.status)return s;throw 416==s.status?new d(fn):new d(un+(s.statusText||s.status))}function Un(e,{url:t},r){return new m(((i,s)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),i({status:a.status,arrayBuffer:()=>a.response,headers:new l(e)})}else s(416==a.status?new d(fn):new d(un+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>s(e.detail?e.detail.error:new d("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class In extends bn{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new vn(e,t):new Sn(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Nn extends bn{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await m.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:i}=this;let s,o=n;-1==o&&(o=i.length-1);let l=e;for(;l>=i[o].size;)l-=i[o].size,o++;const c=i[o],u=c.size;if(l+t>u){const i=u-l;s=new w(t),s.set(await Mn(c,l,i)),s.set(await r.readUint8Array(e+i,t-i,n),i)}else s=await Mn(c,l,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),s}}class qn extends mn{constructor(e,t=4294967295){super();const r=this;let i,s,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new A({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function On(e,t){if(!e.init||e.initialized)return m.resolve();await e.init(t)}function Pn(e){return t.isArray(e)&&(e=new Nn(e)),e instanceof z&&(e={readable:e}),e}function Hn(e){e.writable===De&&typeof e.next==We&&(e=new qn(e)),e instanceof A&&(e={writable:e});const{writable:t}=e;return t.size===De&&(t.size=0),e instanceof qn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function Mn(e,t,n,r){return e.readUint8Array(t,n,r)}const Bn=Nn,Vn=qn,Zn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Kn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const pr="File format is not recognized",gr="End of central directory not found",_r="End of Zip64 central directory locator not found",mr="Central directory header not found",br="Local file header not found",yr="Zip64 extra field not found",xr="File contains encrypted entry",kr="Encryption method not supported",Sr="Compression method not supported",vr="Split zip file",zr="utf-8",Ar="cp437",Cr=[[Jn,we],[Qn,we],[$n,we],[er,he]],Dr={[he]:{getValue:Or,bytes:4},[we]:{getValue:Pr,bytes:8}};class Er{constructor(e,t={}){n.assign(this,{reader:Pn(e),options:t,config:Ue()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:i}=t;if(await On(r),r.size!==De&&r.readUint8Array||(r=new xn(await new u(r.readable).blob()),await On(r)),r.size{const r=new w(4);var i;return i=t,Hr(r).setUint32(0,i,!0),await s(22)||await s(a.min(1048582,n));async function s(t){const i=n-t,s=await Mn(e,i,t);for(let e=s.length-22;e>=0;e--)if(s[e]==r[0]&&s[e+1]==r[1]&&s[e+2]==r[2]&&s[e+3]==r[3])return{offset:i+e,buffer:s.slice(e,e+22).buffer}}})(r,be,r.size);if(!s)throw Or(Hr(await Mn(r,0,4)))==ge?new d(vr):new d(gr);const o=Hr(s);let l=Or(o,12),c=Or(o,16);const f=s.offset,h=qr(o,20),p=f+ke+h;let g=qr(o,4);const _=r.lastDiskNumber||0;let m=qr(o,6),b=qr(o,8),y=0,x=0;if(c==we||l==we||b==he||m==he){const e=Hr(await Mn(r,s.offset-20,20));if(Or(e,0)==xe){c=Pr(e,8);let t=await Mn(r,c,56,-1),n=Hr(t);const i=s.offset-20-56;if(Or(n,0)!=ye&&c!=i){const e=c;c=i,y=c-e,t=await Mn(r,c,56,-1),n=Hr(t)}if(Or(n,0)!=ye)throw new d(_r);g==he&&(g=Or(n,16)),m==he&&(m=Or(n,20)),b==he&&(b=Pr(n,32)),l==we&&(l=Pr(n,40)),c-=l}}if(cc)throw new d(pr);let k=0,S=await Mn(r,c,l,m),v=Hr(S);if(l){const e=s.offset-l;if(Or(v,k)!=me&&c!=e){const t=c;c=e,y+=c-t,S=await Mn(r,c,l,m),v=Hr(S)}}const z=s.offset-c-(r.lastDiskOffset||0);if(l==z||0>z||(l=z,S=await Mn(r,c,l,m),v=Hr(S)),0>c||c>=r.size)throw new d(pr);const A=Lr(t,e,"filenameEncoding"),C=Lr(t,e,"commentEncoding");for(let s=0;b>s;s++){const o=new Wr(r,i,t.options);if(Or(v,k)!=me)throw new d(mr);Rr(o,v,k+6);const l=!!o.bitFlag.languageEncodingFlag,c=k+46,u=c+o.filenameLength,f=u+o.extraFieldLength,w=qr(v,k+4),h=!0,p=S.subarray(c,u),g=qr(v,k+32),_=f+g,m=S.subarray(f,_),z=l,D=l,E=h&&!(16&~Nr(v,k+38)),W=Or(v,k+42)+y;n.assign(o,{versionMadeBy:w,msDosCompatible:h,compressedSize:0,uncompressedSize:0,commentLength:g,directory:E,offset:W,diskNumberStart:qr(v,k+34),internalFileAttribute:qr(v,k+36),externalFileAttribute:Or(v,k+38),rawFilename:p,filenameUTF8:z,commentUTF8:D,rawExtraField:S.subarray(u,f)});const R=Lr(t,e,"decodeText")||Kn,F=z?zr:A||Ar,T=D?zr:C||Ar;let L=R(p,F);L===De&&(L=Kn(p,F));let U=R(m,T);U===De&&(U=Kn(m,T)),n.assign(o,{rawComment:m,filename:L,comment:U,directory:E||L.endsWith(ze)}),x=a.max(W,x),Fr(o,o,v,k+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const I=new hr(o);I.getData=(e,t)=>o.getData(e,I,t),k=_;const{onprogress:N}=e;if(N)try{await N(s+1,b,new hr(o))}catch(e){}yield I}const D=Lr(t,e,"extractPrependedData"),E=Lr(t,e,"extractAppendedData");return D&&(t.prependedData=x>0?await Mn(r,0,x):new w),t.comment=h?await Mn(r,f+ke,h):new w,E&&(t.appendedData=p>>8&255:h>>>24&255),signature:h,compressed:0!=c&&!k,encrypted:i.encrypted&&!k,useWebWorkers:Lr(i,r,"useWebWorkers"),useCompressionStream:Lr(i,r,"useCompressionStream"),transferStreams:Lr(i,r,"transferStreams"),checkPasswordOnly:W},config:u,streamOptions:{signal:E,size:C,onstart:F,onprogress:T,onend:L}};let I=0;try{({outputSize:I}=await ln({readable:D,writable:R},U))}catch(e){if(!W||e.message!=Qe)throw e}finally{const e=Lr(i,r,"preventClose");R.size+=I,e||R.locked||await R.getWriter().close()}return W?De:e.getData?e.getData():R}}function Rr(e,t,r){const i=e.rawBitFlag=qr(t,r+2),s=!(1&~i),a=Or(t,r+6);n.assign(e,{encrypted:s,version:qr(t,r),bitFlag:{level:(6&i)>>1,dataDescriptor:!(8&~i),languageEncodingFlag:(i&ve)==ve},rawLastModDate:a,lastModDate:Ur(a),filenameLength:qr(t,r+22),extraFieldLength:qr(t,r+24)})}function Fr(e,t,r,i,s){const{rawExtraField:a}=t,c=t.extraField=new l,u=Hr(new w(a));let f=0;try{for(;f{t.zip64=!0;const n=Hr(e.data),r=Cr.filter((([e,n])=>t[e]==n));for(let i=0,s=0;i{const i=Hr(e.data),s=Nr(i,4);n.assign(e,{vendorVersion:Nr(i,0),vendorId:Nr(i,2),strength:s,originalCompressionMethod:r,compressionMethod:qr(i,5)}),t.compressionMethod=e.compressionMethod})(m,t,h),t.extraFieldAES=m):t.compressionMethod=h;const b=c.get(10);b&&(((e,t)=>{const r=Hr(e.data);let i,s=4;try{for(;s{const r=Hr(e.data),i=Nr(r,0),s=[],a=[];n?(1&~i||(s.push(tr),a.push(nr)),2&~i||(s.push(rr),a.push("rawLastAccessDate")),4&~i||(s.push(ir),a.push("rawCreationDate"))):5>e.data.length||(s.push(tr),a.push(nr));let l=1;s.forEach(((n,i)=>{if(e.data.length>=l+4){const s=Or(r,l);t[n]=e[n]=new o(1e3*s);const c=a[i];e[c]=s}l+=4}))})(y,t,s),t.extraFieldExtendedTimestamp=y);const x=c.get(6534);x&&(t.extraFieldUSDZ=x)}function Tr(e,t,r,i,s){const a=Hr(e.data),o=new He;o.append(s[r]);const l=Hr(new w(4));l.setUint32(0,o.get(),!0);const c=Or(a,1);n.assign(e,{version:Nr(a,0),[t]:Kn(e.data.subarray(5)),valid:!s.bitFlag.languageEncodingFlag&&c==Or(l,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function Lr(e,t,n){return t[n]===De?e.options[n]:t[n]}function Ur(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Ir(e){return new o(i(e/s(1e4)-s(116444736e5)))}function Nr(e,t){return e.getUint8(t)}function qr(e,t){return e.getUint16(t,!0)}function Or(e,t){return e.getUint32(t,!0)}function Pr(e,t){return i(e.getBigUint64(t,!0))}function Hr(e){return new g(e.buffer)}const Mr="File already exists",Br="Zip file comment exceeds 64KB",Vr="File entry comment exceeds 64KB",Zr="File entry name exceeds 64KB",Kr="Version exceeds 65535",Gr="The strength must equal 1, 2, or 3",Xr="Extra field type exceeds 65535",Yr="Extra field data exceeds 64KB",jr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Jr="Undefined uncompressed size",Qr=new w([7,0,2,0,65,69,3,0,0]);let $r=0;const ei=[];class ti{constructor(e,t={}){const r=(e=Hn(e)).availableSize!==De&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==De&&e.maxSize>0&&e.maxSize!==1/0;n.assign(this,{writer:e,addSplitZipSignature:r,options:t,config:Ue(),files:new l,filenames:new c,offset:t.offset===De?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new c,bufferedWrites:0})}async add(e="",r,i={}){const l=this,{pendingAddFileCalls:c,config:f}=l;let _;$rei.push(e)));try{if(e=e.trim(),l.filenames.has(e))throw new d(Mr);return l.filenames.add(e),_=(async(e,r,i,l)=>{r=r.trim(),l.directory&&!r.endsWith(ze)?r+=ze:l.directory=r.endsWith(ze);const c=ii(e,l,"encodeText",Be);let f=c(r);if(f===De&&(f=Be(r)),di(f)>he)throw new d(Zr);const _=l.comment||"";let b=c(_);if(b===De&&(b=Be(_)),di(b)>he)throw new d(Vr);const y=ii(e,l,ur,20);if(y>he)throw new d(Kr);const x=ii(e,l,fr,20);if(x>he)throw new d(Kr);const k=ii(e,l,tr,new o),S=ii(e,l,rr),z=ii(e,l,ir),A=ii(e,l,or,!0),C=ii(e,l,sr,0),D=ii(e,l,ar,0),E=ii(e,l,"passThrough");let W,R;E||(W=ii(e,l,"password"),R=ii(e,l,"rawPassword"));const F=ii(e,l,"encryptionStrength",3),T=ii(e,l,dr),L=ii(e,l,"extendedTimestamp",!0),U=ii(e,l,"keepOrder",!0),I=ii(e,l,"level"),N=ii(e,l,"useWebWorkers"),q=ii(e,l,"bufferedWrite"),O=ii(e,l,"dataDescriptorSignature",!1),P=ii(e,l,"signal"),H=ii(e,l,"useUnicodeFileNames",!0),M=ii(e,l,"useCompressionStream"),B=ii(e,l,"compressionMethod");let V=ii(e,l,"dataDescriptor",!0),Z=ii(e,l,lr);if(!T&&(W!==De||R!==De)&&(1>F||F>3))throw new d(Gr);let K=new w;const{extraField:G}=l;if(G){let e=0,t=0;G.forEach((t=>e+=4+di(t))),K=new w(e),G.forEach(((e,n)=>{if(n>he)throw new d(Xr);if(di(e)>he)throw new d(Yr);ui(K,new h([n]),t),ui(K,new h([di(e)]),t+2),ui(K,e,t+4),t+=4+di(e)}))}let X=0,Y=0,j=0;if(E&&(({uncompressedSize:j}=l),j===De))throw new d(Jr);const J=!0===Z;i&&(i=Pn(i),await On(i),E?X=si(j):i.size===De?(V=!0,(Z||Z===De)&&(Z=!0,j=X=4294967296)):(j=i.size,X=si(j)));const{diskOffset:Q,diskNumber:$,maxSize:ee}=e.writer,te=J||j>we,ne=J||X>we,re=J||e.offset+e.pendingEntriesSize-Q>we,ie=ii(e,l,"supportZip64SplitFile",!0)&&J||$+a.ceil(e.pendingEntriesSize/ee)>he;if(re||te||ne||ie){if(!1===Z||!U)throw new d(jr);Z=!0}Z=Z||!1;const se=ii(e,l,cr),{signature:ae}=l,oe=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:i,level:s,zip64:o,zipCrypto:l,useUnicodeFileNames:c,dataDescriptor:u,directory:f,rawExtraField:d,encryptionStrength:h,extendedTimestamp:g,encrypted:_}=e;let{version:m,compressionMethod:b}=e;const y=!f&&(s>0||s===De&&0!==b);let x,k,S,v;if(_&&!l){x=new w(di(Qr)+2);const e=fi(x);oi(e,0,39169),ui(x,Qr,2),ai(e,8,h)}else x=new w;if(g){S=new w(9+(r?4:0)+(i?4:0));const e=fi(S);oi(e,0,Se),oi(e,2,di(S)-4),v=1+(r?2:0)+(i?4:0),ai(e,4,v);let t=5;li(e,t,a.floor(n.getTime()/1e3)),t+=4,r&&(li(e,t,a.floor(r.getTime()/1e3)),t+=4),i&&li(e,t,a.floor(i.getTime()/1e3));try{k=new w(36);const e=fi(k),t=ri(n);oi(e,0,10),oi(e,2,32),oi(e,8,1),oi(e,10,24),ci(e,12,t),ci(e,20,ri(r)||t),ci(e,28,ri(i)||t)}catch(e){k=new w}}else k=S=new w;let z=0;c&&(z|=ve),u&&(z|=8),b===De&&(b=y?8:0),8==b&&(s>=1&&3>s&&(z|=6),s>=3&&5>s&&(z|=1),9===s&&(z|=2)),o&&(m=m>45?m:45),_&&(z|=1,l||(m=m>51?m:51,x[9]=b,b=99));const A=new w(26),C=fi(A);oi(C,0,m),oi(C,2,z),oi(C,4,b);const D=new p(1),E=fi(D);let W;W=Ce>n?Ce:n>Ae?Ae:n,oi(E,0,(W.getHours()<<6|W.getMinutes())<<5|W.getSeconds()/2),oi(E,2,(W.getFullYear()-1980<<4|W.getMonth()+1)<<5|W.getDate());const R=D[0];li(C,6,R),oi(C,22,di(t));const F=di(x,S,k,d);oi(C,24,F);const T=new w(30+di(t)+F);return li(fi(T),0,pe),ui(T,A,4),ui(T,t,30),ui(T,x,30+di(t)),ui(T,S,30+di(t,x)),ui(T,k,30+di(t,x,S)),ui(T,d,30+di(t,x,S,k)),{localHeaderArray:T,headerArray:A,headerView:C,lastModDate:n,rawLastModDate:R,encrypted:_,compressed:y,version:m,compressionMethod:b,extraFieldExtendedTimestampFlag:v,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:x,extraFieldLength:F}})(l=n.assign({},l,{rawFilename:f,rawComment:b,version:y,versionMadeBy:x,lastModDate:k,lastAccessDate:S,creationDate:z,rawExtraField:K,zip64:Z,zip64UncompressedSize:te,zip64CompressedSize:ne,zip64Offset:re,zip64DiskNumberStart:ie,password:W,rawPassword:R,level:M||e.config.CompressionStream!==De||e.config.CompressionStreamNative!==De?I:0,useWebWorkers:N,encryptionStrength:F,extendedTimestamp:L,zipCrypto:T,bufferedWrite:q,keepOrder:U,useUnicodeFileNames:H,dataDescriptor:V,dataDescriptorSignature:O,signal:P,msDosCompatible:A,internalFileAttribute:C,externalFileAttribute:D,useCompressionStream:M,passThrough:E,encrypted:!!(W&&di(W)||R&&di(R))||E&&se,signature:ae,compressionMethod:B})),le=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let i,s=new w,a=0;return n&&(s=new w(t?r?24:20:r?16:12),i=fi(s),r&&(a=4,li(i,0,_e))),{dataDescriptorArray:s,dataDescriptorView:i,dataDescriptorOffset:a}})(l),ce=di(oe.localHeaderArray,le.dataDescriptorArray);let ue;Y=ce+X,e.options.usdz&&(Y+=Y+64),e.pendingEntriesSize+=Y;try{ue=await(async(e,r,i,a,o)=>{const{files:l,writer:c}=e,{keepOrder:f,dataDescriptor:h,signal:p}=o,{headerInfo:_}=a,{usdz:b}=e.options,y=t.from(l.values()).pop();let x,k,S,z,A,C,D,E={};l.set(r,E);try{let t;f&&(t=y&&y.lock,E.lock=new m((e=>S=e))),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&f)&&h||b?(C=c,await W()):(C=new v,D=new u(C.readable).blob(),C.writable.size=0,x=!0,e.bufferedWrites++,await On(c)),await On(C);const{writable:_}=c;let{diskOffset:k}=c;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new w(4);li(fi(t),0,ge),await ni(_,t),e.offset+=4}b&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:r,extraFieldLength:i}=n,s=fi(r),a=64-(t+di(r))%64;4>a&&(a+=64);const o=new w(a),l=fi(o);oi(l,0,6534),oi(l,2,a-2);const c=r;n.localHeaderArray=r=new w(di(c)+a),ui(r,c),ui(r,o,di(c)),s=fi(r),oi(s,28,i+a),e.metadataSize+=a})(a,e.offset-k),x||(await t,await R(_));const{diskNumber:F}=c;if(A=!0,E.diskNumberStart=F,E=await(async(e,t,{diskNumberStart:r,lock:i},a,o,l)=>{const{headerInfo:c,dataDescriptorInfo:u,metadataSize:f}=a,{localHeaderArray:d,headerArray:h,lastModDate:p,rawLastModDate:g,encrypted:_,compressed:m,version:b,compressionMethod:y,rawExtraFieldExtendedTimestamp:x,extraFieldExtendedTimestampFlag:k,rawExtraFieldNTFS:S,rawExtraFieldAES:v}=c,{dataDescriptorArray:z}=u,{rawFilename:A,lastAccessDate:C,creationDate:D,password:E,rawPassword:W,level:R,zip64:F,zip64UncompressedSize:T,zip64CompressedSize:L,zip64Offset:U,zip64DiskNumberStart:I,zipCrypto:N,dataDescriptor:q,directory:O,versionMadeBy:P,rawComment:H,rawExtraField:M,useWebWorkers:B,onstart:V,onprogress:Z,onend:K,signal:G,encryptionStrength:X,extendedTimestamp:Y,msDosCompatible:j,internalFileAttribute:J,externalFileAttribute:Q,useCompressionStream:$,passThrough:ee}=l,te={lock:i,versionMadeBy:P,zip64:F,directory:!!O,filenameUTF8:!0,rawFilename:A,commentUTF8:!0,rawComment:H,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:S,rawExtraFieldAES:v,rawExtraField:M,extendedTimestamp:Y,msDosCompatible:j,internalFileAttribute:J,externalFileAttribute:Q,diskNumberStart:r};let{signature:ne,uncompressedSize:re}=l,ie=0;ee||(re=0);const{writable:se}=t;if(e){e.chunkSize=Ie(o),await ni(se,d);const t=e.readable,n=t.size=e.size,r={options:{codecType:Zt,level:R,rawPassword:W,password:E,encryptionStrength:X,zipCrypto:_&&N,passwordVerification:_&&N&&g>>8&255,signed:!ee,compressed:m&&!ee,encrypted:_&&!ee,useWebWorkers:B,useCompressionStream:$,transferStreams:!1},config:o,streamOptions:{signal:G,size:n,onstart:V,onprogress:Z,onend:K}},i=await ln({readable:t,writable:se},r);ie=i.outputSize,ee||(re=i.inputSize,ne=i.signature),se.size+=re}else await ni(se,d);let ae;if(F){let e=4;T&&(e+=8),L&&(e+=8),U&&(e+=8),I&&(e+=4),ae=new w(e)}else ae=new w;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:i,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:u}=o,{dataDescriptorView:f,dataDescriptorOffset:d}=l,{zip64:w,zip64UncompressedSize:h,zip64CompressedSize:p,zipCrypto:g,dataDescriptor:_}=t;if(u&&!g||n===De||(li(c,10,n),_&&li(f,d,n)),w){const e=fi(r);oi(e,0,1),oi(e,2,di(r)-4);let t=4;h&&(li(c,18,we),ci(e,t,s(a)),t+=8),p&&(li(c,14,we),ci(e,t,s(i))),_&&(ci(f,d+4,s(i)),ci(f,d+12,s(a)))}else li(c,14,i),li(c,18,a),_&&(li(f,d+4,i),li(f,d+8,a))})({signature:ne,rawExtraFieldZip64:ae,compressedSize:ie,uncompressedSize:re,headerInfo:c,dataDescriptorInfo:u},l),q&&await ni(se,z),n.assign(te,{uncompressedSize:re,compressedSize:ie,lastModDate:p,rawLastModDate:g,creationDate:D,lastAccessDate:C,encrypted:_,zipCrypto:N,size:f+ie,compressionMethod:y,version:b,headerArray:h,signature:ne,rawExtraFieldZip64:ae,extraFieldExtendedTimestampFlag:k,zip64UncompressedSize:T,zip64CompressedSize:L,zip64Offset:U,zip64DiskNumberStart:I}),te})(i,C,E,a,e.config,o),A=!1,l.set(r,E),E.filename=r,x){await C.writable.getWriter().close();let e=await D;await t,await W(),z=!0,h||(e=await(async(e,t,n,{zipCrypto:r})=>{let i;i=await t.slice(0,26).arrayBuffer(),26!=i.byteLength&&(i=i.slice(0,26));const s=new g(i);return e.encrypted&&!r||li(s,14,e.signature),e.zip64?(li(s,18,we),li(s,22,we)):(li(s,18,e.compressedSize),li(s,22,e.uncompressedSize)),await ni(n,new w(i)),t.slice(i.byteLength)})(E,e,_,o)),await R(_),E.diskNumberStart=c.diskNumber,k=c.diskOffset,await e.stream().pipeTo(_,{preventClose:!0,preventAbort:!0,signal:p}),_.size+=e.size,z=!1}if(E.offset=e.offset-k,E.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:i}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,u=fi(n);let f=4;a&&(f+=8),o&&(f+=8),l&&(ci(u,f,s(r)),f+=8),c&&li(u,f,i)})(E,o);else if(E.offset>we)throw new d(jr);return e.offset+=E.size,E}catch(t){if(x&&z||!x&&A){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}x?e.offset+=C.writable.size:e.offset=C.writable.size}throw l.delete(r),t}finally{x&&e.bufferedWrites--,S&&S(),k&&k()}async function W(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new m((t=>k=()=>{e.writerLocked=!1,t()})),await t}async function R(e){di(_.localHeaderArray)>c.availableSize&&(c.availableSize=0,await ni(e,new w))}})(e,r,i,{headerInfo:oe,dataDescriptorInfo:le,metadataSize:ce},l)}finally{e.pendingEntriesSize-=Y}return n.assign(ue,{name:r,comment:_,extraField:G}),new hr(ue)})(l,e,r,i),c.add(_),await _}catch(t){throw l.filenames.delete(e),t}finally{c.delete(_);const e=ei.shift();e?e():$r--}}async close(e=new w,n={}){const{pendingAddFileCalls:r,writer:i}=this,{writable:o}=i;for(;r.size;)await m.allSettled(t.from(r));return await(async(e,n,r)=>{const{files:i,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:u}=o,f=0,h=0,p=e.offset-l,g=i.size;for(const[,e]of i){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:r,rawComment:i,rawExtraFieldNTFS:s,rawExtraField:o,extendedTimestamp:l,extraFieldExtendedTimestampFlag:c,lastModDate:u}=e;let f;if(l){f=new w(9);const e=fi(f);oi(e,0,Se),oi(e,2,5),ai(e,4,c),li(e,5,a.floor(u.getTime()/1e3))}else f=new w;e.rawExtraFieldCDExtendedTimestamp=f,h+=46+di(t,i,n,r,s,f,o)}const _=new w(h),m=fi(_);await On(o);let b=0;for(const[e,n]of t.from(i.values()).entries()){const{offset:t,rawFilename:s,rawExtraFieldZip64:a,rawExtraFieldAES:l,rawExtraFieldCDExtendedTimestamp:u,rawExtraFieldNTFS:d,rawExtraField:w,rawComment:h,versionMadeBy:p,headerArray:g,directory:y,zip64:x,zip64UncompressedSize:k,zip64CompressedSize:S,zip64DiskNumberStart:v,zip64Offset:z,msDosCompatible:A,internalFileAttribute:C,externalFileAttribute:D,diskNumberStart:E,uncompressedSize:W,compressedSize:R}=n,F=di(a,l,u,d,w);li(m,f,me),oi(m,f+4,p);const T=fi(g);k||li(T,18,W),S||li(T,14,R),ui(_,g,f+6),oi(m,f+30,F),oi(m,f+32,di(h)),oi(m,f+34,x&&v?he:E),oi(m,f+36,C),D?li(m,f+38,D):y&&A&&ai(m,f+38,16),li(m,f+42,x&&z?we:t),ui(_,s,f+46),ui(_,a,f+46+di(s)),ui(_,l,f+46+di(s,a)),ui(_,u,f+46+di(s,a,l)),ui(_,d,f+46+di(s,a,l,u)),ui(_,w,f+46+di(s,a,l,u,d)),ui(_,h,f+46+di(s)+F);const L=46+di(s,h)+F;if(f-b>o.availableSize&&(o.availableSize=0,await ni(c,_.slice(b,f)),b=f),f+=L,r.onprogress)try{await r.onprogress(e+1,i.size,new hr(n))}catch(e){}}await ni(c,b?_.slice(b):_);let y=o.diskNumber;const{availableSize:x}=o;ke>x&&y++;let k=ii(e,r,lr);if(p>we||h>we||g>he||y>he){if(!1===k)throw new d(jr);k=!0}const S=new w(k?98:ke),v=fi(S);f=0,k&&(li(v,0,ye),ci(v,4,s(44)),oi(v,12,45),oi(v,14,45),li(v,16,y),li(v,20,u),ci(v,24,s(g)),ci(v,32,s(g)),ci(v,40,s(h)),ci(v,48,s(p)),li(v,56,xe),ci(v,64,s(p)+s(h)),li(v,72,y+1),ii(e,r,"supportZip64SplitFile",!0)&&(y=he,u=he),g=he,p=we,h=we,f+=76),li(v,f,be),oi(v,f+4,y),oi(v,f+6,u),oi(v,f+8,g),oi(v,f+10,g),li(v,f+12,h),li(v,f+16,p);const z=di(n);if(z){if(z>he)throw new d(Br);oi(v,f+20,z)}await ni(c,S),z&&await ni(c,n)})(this,e,n),ii(this,n,"preventClose")||await o.getWriter().close(),i.getData?i.getData():o}}async function ni(e,t){const n=e.getWriter();try{await n.ready,e.size+=di(t),await n.write(t)}finally{n.releaseLock()}}function ri(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function ii(e,t,n,r){const i=t[n]===De?e.options[n]:t[n];return i===De?r:i}function si(e){return e+5*(a.floor(e/16383)+1)}function ai(e,t,n){e.setUint8(t,n)}function oi(e,t,n){e.setUint16(t,n,!0)}function li(e,t,n){e.setUint32(t,n,!0)}function ci(e,t,n){e.setBigUint64(t,n,!0)}function ui(e,t,n){e.set(t,n)}function fi(e){return new g(e.buffer)}function di(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}let wi;try{wi=void 0===x&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===x?location.href:R&&"SCRIPT"===R.tagName.toUpperCase()&&R.src||new f("zip-full.min.js",x.baseURI).href}catch(e){}((e,t={})=>{const n='const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self,k=void 0,v="undefined",S="function";class z{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const C=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;C[e]=t}class x{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^C[255&(t^e[n])];this.t=t}get(){return~this.t}}class A extends p{constructor(){let e;const t=new x;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const _={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=_.i(n);return 32===r?e.concat(t):_.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+_.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=_.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=_.i(s);return r.push(_.h(t+i&31,t+i>32?n:r.pop(),1)),r}},I={bytes:{p(e){const t=_.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},m(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}P(){const e=this;let t=e.C;const n=e.S;t=_.concat(t,[_.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.I(t.splice(0,16));return e.reset(),n}D(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}V(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.V(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.V(5,o)+n.D(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.V(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},D={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew V.R(I.bytes.m(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=_;for(t=I.bytes.m(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).P());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.U[0].update(r[0]),t.U[1].update(r[1]),t.K=new n(t.U[0])}reset(){const e=this;e.K=new e.M(e.U[0]),e.N=!1}update(e){this.N=!0,this.K.update(e)}digest(){const e=this,t=e.K.P(),n=new e.M(e.U[1]).update(t).P();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},R=typeof h!=v&&typeof h.getRandomValues==S,B="Invalid password",E="Invalid signature",M="zipjs-abort-check-password";function U(e){return R?h.getRandomValues(e):D.getRandomValues(e)}const K=16,N={name:"PBKDF2"},O=t.assign({hash:{name:"HMAC"}},N),T=t.assign({iterations:1e3,hash:{name:"SHA-1"}},N),W=["deriveBits"],j=[8,12,16],H=[16,24,32],L=10,F=[0,0,0,0],q=typeof h!=v,G=q&&h.subtle,J=q&&typeof G!=v,Q=I.bytes,X=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},Y=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=_.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return _.u(t,s)}},Z=V.R;let $=q&&J&&typeof G.importKey==S,ee=q&&J&&typeof G.deriveBits==S;class te extends p{constructor({password:e,rawPassword:n,signed:r,encryptionStrength:o,checkPasswordOnly:c}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),signed:r,X:o-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:o,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await se(e,t,n,ce(r,0,j[t])),o=ce(r,j[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(B)})(n,o,r,ce(e,0,j[o]+2)),e=ce(e,j[o]+2),c?t.error(new s(M)):f()):await a;const l=new i(e.length-L-(e.length-L)%K);t.enqueue(re(n,e,l,0,L,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;if(r&&n){await c;const f=ce(o,0,o.length-L),a=ce(o,o.length-L);let l=new i;if(f.length){const e=ae(Q,f);r.update(e);const t=n.update(e);l=fe(Q,t)}if(t){const e=ce(fe(Q,r.digest()),0,L);for(let t=0;L>t;t++)if(e[t]!=a[t])throw new s(E)}e.enqueue(l)}}})}}class ne extends p{constructor({password:e,rawPassword:n,encryptionStrength:r}){let s;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=U(new i(j[t]));return oe(r,await se(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%K);a.set(f,0),t.enqueue(re(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:r,ready:o}=this;if(n&&t){await o;let c=new i;if(r.length){const e=t.update(ae(Q,r));n.update(e),c=fe(Q,e)}s.signature=fe(Q,n.digest()).slice(0,L),e.enqueue(oe(c,s.signature))}}}),s=this}}function re(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=oe(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%K)),u=0;l-K>=u;u+=K){const e=ae(Q,ce(t,u,u+K));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(fe(Q,s),u+r)}return e.pending=ce(t,u),n}async function se(n,r,s,o){n.password=null;const c=await(async(e,t,n,r,s)=>{if(!$)return V.importKey(t);try{return await G.importKey("raw",t,n,!1,s)}catch(e){return $=!1,V.importKey(t)}})(0,s,O,0,W),f=await(async(e,t,n)=>{if(!ee)return V.B(t,e.salt,T.iterations,n);try{return await G.deriveBits(e,t,n)}catch(r){return ee=!1,V.B(t,e.salt,T.iterations,n)}})(t.assign({salt:o},T),c,8*(2*H[r]+2)),a=new i(f),l=ae(Q,ce(a,0,H[r])),u=ae(Q,ce(a,H[r],2*H[r])),w=ce(a,2*H[r]);return t.assign(n,{keys:{key:l,$:u,passwordVerification:w},Y:new Y(new X(l),e.from(F)),Z:new Z(u)}),w}function ie(e,t){return t===k?(e=>{if(typeof w==v){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),i=~e.te.get(),e.keys=[n,s,i]}function ye(e){const t=2|e.keys[2];return me(r.imul(t,1^t)>>>8)}function me(e){return 255&e}function be(e){return 4294967295&e}const ge="deflate-raw";class ke extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=Se(super.readable);i&&!c||!f||(w=new A,d=xe(d,w)),s&&(d=Ce(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=xe(d,new ue(e)):(h=new ne(e),d=xe(d,h))),ze(u,d,(()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ve extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=Se(super.readable);o&&(i?d=xe(d,new le(e)):(h=new te(e),d=xe(d,h))),a&&(d=Ce(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new A,d=xe(d,w)),ze(this,d,(()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(E)}}))}}function Se(e){return xe(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ze(e,n,r){n=xe(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Ce(e,t,n,r,s){try{e=xe(e,new(t&&r?r:s)(ge,n))}catch(r){if(!t)return e;try{e=xe(e,new s(ge,n))}catch(t){return e}}return e}function xe(e,t){return e.pipeThrough(t)}const Ae="data",_e="close";class Ie extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=ke:s.startsWith("inflate")&&(i=ve);let o=0,c=0;const f=new i(e,n),a=super.readable,l=new p({transform(e,t){e&&e.length&&(c+=e.length,t.enqueue(e))},flush(){t.assign(r,{inputSize:c})}}),u=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=f;t.assign(r,{signature:e,outputSize:o,inputSize:c})}});t.defineProperty(r,"readable",{get:()=>a.pipeThrough(l).pipeThrough(f).pipeThrough(u)})}}class Pe extends p{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new i(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}const De=new a,Ve=new a;let Re,Be=0,Ee=!0;async function Me(e){try{const{options:t,scripts:r,config:s}=e;if(r&&r.length)try{Ee?importScripts.apply(k,r):await Ue(r)}catch(e){Ee=!1,await Ue(r)}self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new z(self.Deflate)),self.Inflate&&(s.DecompressionStream=new z(self.Inflate));const i={highWaterMark:1},o=e.readable||new y({async pull(e){const t=new u((e=>De.set(Be,e)));Ke({type:"pull",messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ve.set(Be,t),Ke({type:Ae,value:e,messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new Ie(t,s);Re=new AbortController;const{signal:a}=Re;await o.pipeThrough(f).pipeThrough(new Pe(s.chunkSize)).pipeTo(c,{signal:a,preventClose:!0,preventAbort:!0}),await c.getWriter().close();const{signature:l,inputSize:w,outputSize:h}=f;Ke({type:_e,result:{signature:l,inputSize:w,outputSize:h}})}catch(e){Ne(e)}}async function Ue(e){for(const t of e)await import(t)}function Ke(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Ne(e=new s("Unknown error")){const{message:t,stack:n,code:r,name:i}=e;d({error:{message:t,stack:n,code:r,name:i}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&Me(e),t==Ae){const e=De.get(n);De.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ve.get(n);Ve.delete(n),e()}t==_e&&Re.abort()}catch(e){Ne(e)}}));const Oe=-2;function Te(t){return We(t.map((([t,n])=>new e(t).fill(n,0,t))))}function We(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?We(n):n)),[])}const je=[0,1,2,3].concat(...Te([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function He(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Le(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}He.ge=[0,1,2,3,4,5,6,7].concat(...Te([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),He.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],He.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],He.Se=e=>256>e?je[e]:je[256+(e>>>7)],He.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],He.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],He.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],He.Ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Fe=Te([[144,8],[112,9],[24,7],[8,8]]);Le._e=We([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Fe[t]])));const qe=Te([[30,5]]);function Ge(e,t,n,r,s){const i=this;i.Ie=e,i.Pe=t,i.De=n,i.Ve=r,i.Re=s}Le.Be=We([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,qe[t]]))),Le.Ee=new Le(Le._e,He.ze,257,286,15),Le.Me=new Le(Le.Be,He.Ce,0,30,15),Le.Ue=new Le(null,He.xe,0,19,7);const Je=[new Ge(0,0,0,0,0),new Ge(4,4,8,4,1),new Ge(4,5,16,8,1),new Ge(4,6,32,32,1),new Ge(4,4,16,16,2),new Ge(8,16,32,32,2),new Ge(8,16,128,128,2),new Ge(8,32,128,256,2),new Ge(32,128,258,1024,2),new Ge(32,258,258,4096,2)],Qe=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Xe=113,Ye=666,Ze=262;function $e(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function et(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,A,_,I,P,D,V,R,B,E,M,U;const K=new He,N=new He,O=new He;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)U[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?U[2*n]+=i:0!==n?(n!=r&&U[2*n]++,U[32]++):i>10?U[36]++:U[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ke[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,U)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,U),o--),Y(16,U),X(o-3,2)):o>10?(Y(18,U),X(o-11,7)):(Y(17,U),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(He.ge[n]+256+1)]++,M[2*He.Se(t)]++),!(8191&W)&&D>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+He.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ke.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;D>0?(K.ne(e),N.ne(e),o=(()=>{let t;for(G(E,K.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===U[2*He.Ae[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Le._e,Le.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(U[2*He.Ae[r]+1],3);Z(E,e-1),Z(M,t-1)})(K.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-A-C,0===s&&0===C&&0===A)s=f;else if(-1==s)s--;else if(C>=f+f-Ze){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+A,s),A+=e,3>A||(p=255&u[C],p=(p<A&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=_;const o=C>f-Ze?C-(f-Ze):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>_||(r>>=2),c>A&&(c=A);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>A?A:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],U=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Oe:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=Xe,c=0,K.re=E,K.ie=Le.Ee,N.re=M,N.ie=Le.Me,O.re=U,O.ie=Le.Ue,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve,C=0,k=0,A=0,v=_=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=Xe&&n!=Ye?Oe:(e.Oe=null,e.Ne=null,e.Ke=null,d=null,h=null,u=null,e.Fe=null,n==Xe?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Oe:(Je[D].Re!=Je[t].Re&&0!==e.qe&&(r=e.Ye(1)),D!=t&&(D=t,P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve),V=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Oe;if(3>i)return 0;for(i>f-Ze&&(i=f-Ze,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Oe;if(!r.$e||!r.et&&0!==r.We||n==Ye&&4!=i)return r.Le=Qe[4],Oe;if(0===r.tt)return r.Le=Qe[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(D-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=Xe,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=Qe[7],-5;if(n==Ye&&0!==t.We)return r.Le=Qe[7],-5;if(0!==t.We||0!==A||0!=i&&n!=Ye){switch(R=-1,Je[D].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=A){if(ie(),0===A&&0==e)return 0;if(0===A)break}if(C+=A,A=0,n=k+r,(0===C||C>=n)&&(A=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Ze&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<f-Ze||2!=V&&(v=oe(r)),3>v)n=ee(0,255&u[C]),A--,C++;else if(n=ee(C-x,v-3),A-=v,v>P||3>A)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<_&&f-Ze>=(C-s&65535)&&(2!=V&&(v=oe(s)),5>=v&&(1==V||3==v&&C-x>4096)&&(v=2)),3>_||v>_)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,A--,0===t.tt)return 0}else z=1,C++,A--;else{r=C+A-3,n=ee(C-1-S,_-3),A-=_-1,_-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Le._e),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function tt(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function nt(e){const t=new tt,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}tt.prototype={He(e,t){const n=this;return n.Fe=new et,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Oe},Qe(){const e=this;if(!e.Fe)return Oe;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Oe},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Oe},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ke.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const rt=-2,st=-3,it=-5,ot=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],ct=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ft=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],at=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],lt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ut=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],wt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ht(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,A,_,I,P;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return st;if(0>(I-=n[g]))return st;for(n[g]+=I,i[1]=k=0,C=1,_=2;0!=--g;)i[_]=k+=n[C],_++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>A+S;){if(b++,A+=S,P=m-A,P=P>S?S:P,(y=1<<(k=v-A))>p+1&&(y-=p+1,_=v,P>k))for(;++kn[++_];)y-=n[_];if(P=1<1440)return st;s[b]=x=h[0],h[0]+=P,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>A-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-A,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>A;P>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<c;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==st?f.Le="oversubscribed dynamic bit lengths tree":a!=it&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=st),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,at,lt,a,i,u,e,t),0!=h||0===i[0]?(h==st?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=st),h):(c(288),h=o(s,n,r,0,ut,wt,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==st?w.Le="oversubscribed distance tree":h==it?(w.Le="incomplete distance tree",h=st):-4!=h&&(w.Le="empty distance tree with lengths",h=st),h):0)}}function dt(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15,k=a[z+2]+(w&ot[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(64&u)return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st;f+=a[z+2],f+=w&ot[u],z=3*(l+f),u=a[z]}break}if(64&u)return 32&u?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st);if(f+=a[z+2],f+=w&ot[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,A=0,_=0;for(_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,m=p(u,w,r,h,s,d,e,y),_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=SA;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>>=n[g+1],A-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(16&k){a=15&k,i=n[g+2],t=2;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}if(32&k){t=7;break}return t=9,y.Le="invalid literal/length code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 2:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=n[g+1],A-=n[g+1],k=n[g],16&k){a=15&k,l=n[g+2],t=4;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 4:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(A-=8,v++,_--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ht.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=ct,r[0]=ft,0);const pt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function yt(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new dt;let h=0,d=new f(4320);const p=new ht;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ht.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[pt[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==st&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&ot[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,A=[],_=[],I=[],P=[],A[0]=9,_[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,A,_,I,P,d,e),0!=i)return i==st&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(A[0],_[0],d,I[0],d,P[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const mt=13,bt=[0,0,255,255];function gt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):rt}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),rt):(e.zt=r,n.gt.kt=new yt(n,1<{let n,r;if(!e||!e.gt||!e.et)return rt;const s=e.gt;for(t=4==t?it:0,n=it;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=mt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=mt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=mt,e.Le="incorrect header check",s.marker=5;break}if(!(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=mt,e.Le="need dictionary",s.marker=0,rt;case 7:if(n=s.kt.ut(e,n),n==st){s.mode=mt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case mt:return st;default:return rt}},e._t=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return rt;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return rt;const c=e.gt;if(c.mode!=mt&&(c.mode=mt,c.marker=0),0===(n=e.We))return it;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==bt[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?st:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Pt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():rt}function kt(){}function vt(e){const t=new kt,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t.At(0),c&&a===it){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}kt.prototype={xt(e){const t=this;return t.gt=new gt,e||(e=15),t.gt.xt(t,e)},At(e){const t=this;return t.gt?t.gt.At(t,e):rt},Ct(){const e=this;if(!e.gt)return rt;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):rt},_t(e,t){const n=this;return n.gt?n.gt._t(n,e,t):rt},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=nt,self.Inflate=vt};\n',r=()=>t.useDataURI?"data:text/javascript,"+encodeURIComponent(n):f.createObjectURL(new _([n],{type:"text/javascript"}));e({workerScripts:{inflate:[r],deflate:[r]}})})(Ne),Ne({Deflate:function(e){const t=new X,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(a.floor(r/16383)+1);var r;const i=new w(n);let s=e?e.level:-1;void 0===s&&(s=-1),t.deflateInit(s),t.next_out=i,this.append=(e,r)=>{let s,a,o=0,l=0,c=0;const u=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,s=t.deflate(0),0!=s)throw new d("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?u.push(new w(i)):u.push(i.subarray(0,t.next_out_index))),c+=t.next_out_index,r&&t.next_in_index>0&&t.next_in_index!=o&&(r(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return u.length>1?(a=new w(c),u.forEach((e=>{a.set(e,l),l+=e.length}))):a=u[0]?new w(u[0]):new w,a}},this.flush=()=>{let e,r,s=0,a=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw new d("deflating: "+t.msg);n-t.avail_out>0&&o.push(i.slice(0,t.next_out_index)),a+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new w(a),o.forEach((e=>{r.set(e,s),s+=e.length})),r}},Inflate:function(e){const t=new de,n=e&&e.chunkSize?a.floor(2*e.chunkSize):131072,r=new w(n);let i=!1;t.inflateInit(),t.next_out=r,this.append=(e,s)=>{const a=[];let o,l,c=0,u=0,f=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||i||(t.next_in_index=0,i=!0),o=t.inflate(0),i&&o===J){if(0!==t.avail_in)throw new d("inflating: bad input")}else if(0!==o&&1!==o)throw new d("inflating: "+t.msg);if((i||1===o)&&t.avail_in===e.length)throw new d("inflating: bad input");t.next_out_index&&(t.next_out_index===n?a.push(new w(r)):a.push(r.subarray(0,t.next_out_index))),f+=t.next_out_index,s&&t.next_in_index>0&&t.next_in_index!=c&&(s(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return a.length>1?(l=new w(f),a.forEach((e=>{l.set(e,u),u+=e.length}))):l=a[0]?new w(a[0]):new w,l}},this.flush=()=>{t.inflateEnd()}},baseURL:wi}),e.BlobReader=xn,e.BlobWriter=kn,e.Data64URIReader=class extends bn{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,i=new w(t),s=4*a.floor(e/3),o=atob(r.substring(s+n,4*a.ceil((e+t)/3)+n)),l=e-3*a.floor(s/4);for(let e=l;l+t>e;e++)i[e-l]=o.charCodeAt(e);return i}},e.Data64URIWriter=class extends yn{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,i=t.pending;const s=t.pending.length;for(t.pending="",n=0;n<3*a.floor((s+e.length)/3)-s;n++)i+=r.fromCharCode(e[n]);for(;n2?t.data+=S(i):t.pending=i}getData(){return this.data+S(this.pending)}},e.ERR_BAD_FORMAT=pr,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=mr,e.ERR_DUPLICATED_NAME=Mr,e.ERR_ENCRYPTED=xr,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=_r,e.ERR_EOCDR_NOT_FOUND=gr,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=yr,e.ERR_HTTP_RANGE=fn,e.ERR_INVALID_COMMENT=Br,e.ERR_INVALID_ENCRYPTION_STRENGTH=Gr,e.ERR_INVALID_ENTRY_COMMENT=Vr,e.ERR_INVALID_ENTRY_NAME=Zr,e.ERR_INVALID_EXTRAFIELD_DATA=Yr,e.ERR_INVALID_EXTRAFIELD_TYPE=Xr,e.ERR_INVALID_PASSWORD=je,e.ERR_INVALID_SIGNATURE=Je,e.ERR_INVALID_VERSION=Kr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=dn,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=br,e.ERR_SPLIT_ZIP_FILE=vr,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=Jr,e.ERR_UNSUPPORTED_COMPRESSION=Sr,e.ERR_UNSUPPORTED_ENCRYPTION=kr,e.ERR_UNSUPPORTED_FORMAT=jr,e.HttpRangeReader=class extends In{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=In,e.Reader=bn,e.SplitDataReader=Nn,e.SplitDataWriter=qn,e.SplitZipReader=Bn,e.SplitZipWriter=Vn,e.TextReader=class extends xn{constructor(e){super(new _([e],{type:"text/plain"}))}},e.TextWriter=class extends kn{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new m(((i,s)=>{n.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>s(t.error)}),t.readAsText(r,e)}))}}},e.Uint8ArrayReader=class extends bn{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends yn{init(e=0){n.assign(this,{offset:0,array:new w(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new w(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=yn,e.ZipReader=Er,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:n}=new v,r=new Er(t,e).getEntriesGenerator();this.readable=new z({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const i={...n,readable:(()=>{const{readable:e,writable:t}=new v;if(n.getData)return n.getData(t),e})()};delete i.getData,e.enqueue(i)}}),this.writable=n}},e.ZipWriter=ti,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new v;this.readable=t,this.zipWriter=new ti(n,e)}transform(e){const{readable:t,writable:n}=new v({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new v;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=Ne,e.getMimeType=()=>"application/octet-stream",e.initReader=Pn,e.initShimAsyncCodec=(e,t={},n)=>({Deflate:Oe(e.Deflate,t.deflate,n),Inflate:Oe(e.Inflate,t.inflate,n)}),e.initStream=On,e.initWriter=Hn,e.readUint8Array=Mn,e.terminateWorkers=async()=>{await m.allSettled(sn.map((e=>(cn(e),e.terminate()))))}})); +((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:r,Number:i,BigInt:s,Math:a,Date:o,Map:l,Set:c,Response:u,URL:f,Error:d,Uint8Array:w,Uint16Array:h,Uint32Array:p,DataView:g,Blob:_,Promise:m,TextEncoder:b,TextDecoder:y,document:x,crypto:k,btoa:S,TransformStream:v,ReadableStream:z,WritableStream:A,CompressionStream:C,DecompressionStream:D,navigator:E,Worker:F}="undefined"!=typeof globalThis?globalThis:this||self;var W=void 0!==x?x.currentScript:null;const R=-2;function T(e){return L(e.map((([e,n])=>new t(e).fill(n,0,e))))}function L(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?L(n):n)),[])}const U=[0,1,2,3].concat(...T([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function I(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,i=e.stat_desc.static_tree,s=e.stat_desc.elems;let o,l,c,u=-1;for(n.heap_len=0,n.heap_max=573,o=0;s>o;o++)0!==r[2*o]?(n.heap[++n.heap_len]=u=o,n.depth[o]=0):r[2*o+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>u?++u:0,r[2*c]=1,n.depth[c]=0,n.opt_len--,i&&(n.static_len-=i[2*c+1]);for(e.max_code=u,o=a.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(r,o);c=s;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),l=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=l,r[2*c]=r[2*o]+r[2*l],n.depth[c]=a.max(n.depth[o],n.depth[l])+1,r[2*o+1]=r[2*l+1]=c,n.heap[1]=c++,n.pqdownheap(r,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,r=e.stat_desc.static_tree,i=e.stat_desc.extra_bits,s=e.stat_desc.extra_base,a=e.stat_desc.max_length;let o,l,c,u,f,d,w=0;for(u=0;15>=u;u++)t.bl_count[u]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)l=t.heap[o],u=n[2*n[2*l+1]+1]+1,u>a&&(u=a,w++),n[2*l+1]=u,l>e.max_code||(t.bl_count[u]++,f=0,s>l||(f=i[l-s]),d=n[2*l],t.opt_len+=d*(u+f),r&&(t.static_len+=d*(r[2*l+1]+f)));if(0!==w){do{for(u=a-1;0===t.bl_count[u];)u--;t.bl_count[u]--,t.bl_count[u+1]+=2,t.bl_count[a]--,w-=2}while(w>0);for(u=a;0!==u;u--)for(l=t.bl_count[u];0!==l;)c=t.heap[--o],c>e.max_code||(n[2*c+1]!=u&&(t.opt_len+=(u-n[2*c+1])*n[2*c],n[2*c+1]=u),l--)}})(n),((e,n,r)=>{const i=[];let s,a,o,l=0;for(s=1;15>=s;s++)i[s]=l=l+r[s-1]<<1;for(a=0;n>=a;a++)o=e[2*a+1],0!==o&&(e[2*a]=t(i[o]++,o))})(r,e.max_code,n.bl_count)}}function N(e,t,n,r,i){const s=this;s.static_tree=e,s.extra_bits=t,s.extra_base=n,s.elems=r,s.max_length=i}I._length_code=[0,1,2,3,4,5,6,7].concat(...T([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),I.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],I.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],I.d_code=e=>256>e?U[e]:U[256+(e>>>7)],I.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],I.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],I.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],I.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const q=T([[144,8],[112,9],[24,7],[8,8]]);N.static_ltree=L([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,q[t]])));const O=T([[30,5]]);function P(e,t,n,r,i){const s=this;s.good_length=e,s.max_lazy=t,s.nice_length=n,s.max_chain=r,s.func=i}N.static_dtree=L([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,O[t]]))),N.static_l_desc=new N(N.static_ltree,I.extra_lbits,257,286,15),N.static_d_desc=new N(N.static_dtree,I.extra_dbits,0,30,15),N.static_bl_desc=new N(null,I.extra_blbits,0,19,7);const H=[new P(0,0,0,0,0),new P(4,4,8,4,1),new P(4,5,16,8,1),new P(4,6,32,32,1),new P(4,4,16,16,2),new P(8,16,32,32,2),new P(8,16,128,128,2),new P(8,32,128,256,2),new P(32,128,258,1024,2),new P(32,258,258,4096,2)],M=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],B=113,V=666,Z=262;function K(e,t,n,r){const i=e[2*t],s=e[2*n];return s>i||i==s&&r[t]<=r[n]}function G(){const e=this;let t,n,r,i,s,o,l,c,u,f,d,p,g,_,m,b,y,x,k,S,v,z,A,C,D,E,F,W,T,L,U,q,O;const P=new I,G=new I,X=new I;let Y,j,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)U[2*t]=0;for(t=0;30>t;t++)q[2*t]=0;for(t=0;19>t;t++)O[2*t]=0;U[512]=1,e.opt_len=e.static_len=0,j=J=0}function ne(e,t){let n,r=-1,i=e[1],s=0,a=7,o=4;0===i&&(a=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)n=i,i=e[2*(l+1)+1],++ss?O[2*n]+=s:0!==n?(n!=r&&O[2*n]++,O[32]++):s>10?O[36]++:O[34]++,s=0,r=n,0===i?(a=138,o=3):n==i?(a=6,o=3):(a=7,o=4))}function re(t){e.pending_buf[e.pending++]=t}function ie(e){re(255&e),re(e>>>8&255)}function se(e,t){let n;const r=t;ee>16-r?(n=e,$|=n<>>16-ee,ee+=r-16):($|=e<=n;n++)if(r=s,s=e[2*(n+1)+1],++a>=o||r!=s){if(l>a)do{ae(r,O)}while(0!=--a);else 0!==r?(r!=i&&(ae(r,O),a--),ae(16,O),se(a-3,2)):a>10?(ae(18,O),se(a-11,7)):(ae(17,O),se(a-3,3));a=0,i=r,0===s?(o=138,l=3):r==s?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(ie($),$=0,ee=0):8>ee||(re(255&$),$>>>=8,ee-=8)}function ce(t,n){let r,i,s;if(e.dist_buf[j]=t,e.lc_buf[j]=255&n,j++,0===t?U[2*n]++:(J++,t--,U[2*(I._length_code[n]+256+1)]++,q[2*I.d_code(t)]++),!(8191&j)&&F>2){for(r=8*j,i=v-y,s=0;30>s;s++)r+=q[2*s]*(5+I.extra_dbits[s]);if(r>>>=3,Jo);ae(256,t),Q=t[513]}function fe(){ee>8?ie($):ee>0&&re(255&$),$=0,ee=0}function de(t,n,r){se(0+(r?1:0),3),((t,n)=>{fe(),Q=8,ie(n),ie(~n),e.pending_buf.set(c.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function we(n){((t,n,r)=>{let i,s,a=0;F>0?(P.build_tree(e),G.build_tree(e),a=(()=>{let t;for(ne(U,P.max_code),ne(q,G.max_code),X.build_tree(e),t=18;t>=3&&0===O[2*I.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),i=e.opt_len+3+7>>>3,s=e.static_len+3+7>>>3,s>i||(i=s)):i=s=n+5,n+4>i||-1==t?s==i?(se(2+(r?1:0),3),ue(N.static_ltree,N.static_dtree)):(se(4+(r?1:0),3),((e,t,n)=>{let r;for(se(e-257,5),se(t-1,5),se(n-4,4),r=0;n>r;r++)se(O[2*I.bl_order[r]+1],3);oe(U,e-1),oe(q,t-1)})(P.max_code+1,G.max_code+1,a+1),ue(U,q)):de(t,n,r),te(),r&&fe()})(0>y?-1:y,v-y,n),y=v,t.flush_pending()}function he(){let e,n,r,i;do{if(i=u-A-v,0===i&&0===v&&0===A)i=s;else if(-1==i)i--;else if(v>=s+s-Z){c.set(c.subarray(s,s+s),0),z-=s,v-=s,y-=s,e=g,r=e;do{n=65535&d[--r],d[r]=s>n?0:n-s}while(0!=--e);e=s,r=e;do{n=65535&f[--r],f[r]=s>n?0:n-s}while(0!=--e);i+=s}if(0===t.avail_in)return;e=t.read_buf(c,v+A,i),A+=e,3>A||(p=255&c[v],p=(p<A&&0!==t.avail_in)}function pe(e){let t,n,r=D,i=v,a=C;const o=v>s-Z?v-(s-Z):0;let u=L;const d=l,w=v+258;let h=c[i+a-1],p=c[i+a];T>C||(r>>=2),u>A&&(u=A);do{if(t=e,c[t+a]==p&&c[t+a-1]==h&&c[t]==c[i]&&c[++t]==c[i+1]){i+=2,t++;do{}while(c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&c[++i]==c[++t]&&w>i);if(n=258-(w-i),i=w-258,n>a){if(z=e,a=n,n>=u)break;h=c[i+a-1],p=c[i+a]}}}while((e=65535&f[e&d])>o&&0!=--r);return a>A?A:a}e.depth=[],e.bl_count=[],e.heap=[],U=[],q=[],O=[],e.pqdownheap=(t,n)=>{const r=e.heap,i=r[n];let s=n<<1;for(;s<=e.heap_len&&(s(I||(I=8),M||(M=8),V||(V=0),t.msg=null,-1==k&&(k=6),1>M||M>9||8!=I||9>z||z>15||0>k||k>9||0>V||V>2?R:(t.dstate=e,o=z,s=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=B,i=0,P.dyn_tree=U,P.stat_desc=N.static_l_desc,G.dyn_tree=q,G.stat_desc=N.static_d_desc,X.dyn_tree=O,X.stat_desc=N.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{u=2*s,d[g-1]=0;for(let e=0;g-1>e;e++)d[e]=0;E=H[F].max_lazy,T=H[F].good_length,L=H[F].nice_length,D=H[F].max_chain,v=0,y=0,A=0,x=C=2,S=0,p=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=B&&n!=V?R:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,d=null,f=null,c=null,e.dstate=null,n==B?-3:0),e.deflateParams=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?R:(H[F].func!=H[t].func&&0!==e.total_in&&(r=e.deflate(1)),F!=t&&(F=t,E=H[F].max_lazy,T=H[F].good_length,L=H[F].nice_length,D=H[F].max_chain),W=n,r)},e.deflateSetDictionary=(e,t,r)=>{let i,a=r,o=0;if(!t||42!=n)return R;if(3>a)return 0;for(a>s-Z&&(a=s-Z,o=r-a),c.set(t.subarray(o,o+a),0),v=a,y=a,p=255&c[0],p=(p<=i;i++)p=(p<{let w,h,_,D,T;if(u>4||0>u)return R;if(!a.next_out||!a.next_in&&0!==a.avail_in||n==V&&4!=u)return a.msg=M[4],R;if(0===a.avail_out)return a.msg=M[7],-5;var L;if(t=a,D=i,i=u,42==n&&(h=8+(o-8<<4)<<8,_=(F-1&255)>>1,_>3&&(_=3),h|=_<<6,0!==v&&(h|=32),h+=31-h%31,n=B,re((L=h)>>8&255),re(255&L)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return i=-1,0}else if(0===t.avail_in&&D>=u&&4!=u)return t.msg=M[7],-5;if(n==V&&0!==t.avail_in)return a.msg=M[7],-5;if(0!==t.avail_in||0!==A||0!=u&&n!=V){switch(T=-1,H[F].func){case 0:T=(e=>{let n,i=65535;for(i>r-5&&(i=r-5);;){if(1>=A){if(he(),0===A&&0==e)return 0;if(0===A)break}if(v+=A,A=0,n=y+i,(0===v||v>=n)&&(A=v-n,v=n,we(!1),0===t.avail_out))return 0;if(v-y>=s-Z&&(we(!1),0===t.avail_out))return 0}return we(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(u);break;case 1:T=(e=>{let n,r=0;for(;;){if(Z>A){if(he(),Z>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<s-Z||2!=W&&(x=pe(r)),3>x)n=ce(0,255&c[v]),A--,v++;else if(n=ce(v-z,x-3),A-=x,x>E||3>A)v+=x,x=0,p=255&c[v],p=(p<{let n,r,i=0;for(;;){if(Z>A){if(he(),Z>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<C&&s-Z>=(v-i&65535)&&(2!=W&&(x=pe(i)),5>=x&&(1==W||3==x&&v-z>4096)&&(x=2)),3>C||x>C)if(0!==S){if(n=ce(0,255&c[v-1]),n&&we(!1),v++,A--,0===t.avail_out)return 0}else S=1,v++,A--;else{r=v+A-3,n=ce(v-1-k,C-3),A-=C-1,C-=2;do{++v>r||(p=(p<1+Q+10-ee&&(se(2,3),ae(256,N.static_ltree),le()),Q=7;else if(de(0,0,!1),3==u)for(w=0;g>w;w++)d[w]=0;if(t.flush_pending(),0===t.avail_out)return i=-1,0}}return 4!=u?0:1}}function X(){const e=this;e.next_in_index=0,e.next_out_index=0,e.avail_in=0,e.total_in=0,e.avail_out=0,e.total_out=0}X.prototype={deflateInit(e,t){const n=this;return n.dstate=new G,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):R},deflateEnd(){const e=this;if(!e.dstate)return R;const t=e.dstate.deflateEnd();return e.dstate=null,t},deflateParams(e,t){const n=this;return n.dstate?n.dstate.deflateParams(n,e,t):R},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):R},read_buf(e,t,n){const r=this;let i=r.avail_in;return i>n&&(i=n),0===i?0:(r.avail_in-=i,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),t),r.next_in_index+=i,r.total_in+=i,i)},flush_pending(){const e=this;let t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),0!==t&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,0===e.dstate.pending&&(e.dstate.pending_out=0))}};const Y=-2,j=-3,J=-5,Q=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],$=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ee=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],te=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],ne=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],re=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],ie=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function se(){let e,t,n,r,i,s;function a(e,t,a,o,l,c,u,f,d,w,h){let p,g,_,m,b,y,x,k,S,v,z,A,C,D,E;v=0,b=a;do{n[e[t+v]]++,v++,b--}while(0!==b);if(n[0]==a)return u[0]=-1,f[0]=0,0;for(k=f[0],y=1;15>=y&&0===n[y];y++);for(x=y,y>k&&(k=y),b=15;0!==b&&0===n[b];b--);for(_=b,k>b&&(k=b),f[0]=k,D=1<y;y++,D<<=1)if(0>(D-=n[y]))return j;if(0>(D-=n[b]))return j;for(n[b]+=D,s[1]=y=0,v=1,C=2;0!=--b;)s[C]=y+=n[v],C++,v++;b=0,v=0;do{0!==(y=e[t+v])&&(h[s[y]++]=b),v++}while(++b=x;x++)for(p=n[x];0!=p--;){for(;x>A+k;){if(m++,A+=k,E=_-A,E=E>k?k:E,(g=1<<(y=x-A))>p+1&&(g-=p+1,C=x,E>y))for(;++yn[++C];)g-=n[C];if(E=1<1440)return j;i[m]=z=w[0],w[0]+=E,0!==m?(s[m]=b,r[0]=y,r[1]=k,y=b>>>A-k,r[2]=z-i[m-1]-y,d.set(r,3*(i[m-1]+y))):u[0]=z}for(r[1]=x-A,a>v?h[v]h[v]?0:96,r[2]=h[v++]):(r[0]=c[h[v]-o]+16+64,r[2]=l[h[v++]-o]):r[0]=192,g=1<>>A;E>y;y+=g)d.set(r,3*(z+y));for(y=1<>>=1)b^=y;for(b^=y,S=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)r[o]=0;i.set(n.subarray(0,15),0),s.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,r,i,s,l)=>{let c;return o(19),e[0]=0,c=a(n,0,19,19,null,null,i,r,s,e,t),c==j?l.msg="oversubscribed dynamic bit lengths tree":c!=J&&0!==r[0]||(l.msg="incomplete dynamic bit lengths tree",c=j),c},this.inflate_trees_dynamic=(n,r,i,s,l,c,u,f,d)=>{let w;return o(288),e[0]=0,w=a(i,0,n,257,te,ne,c,s,f,e,t),0!=w||0===s[0]?(w==j?d.msg="oversubscribed literal/length tree":-4!=w&&(d.msg="incomplete literal/length tree",w=j),w):(o(288),w=a(i,n,r,0,re,ie,u,l,f,e,t),0!=w||0===l[0]&&n>257?(w==j?d.msg="oversubscribed distance tree":w==J?(d.msg="incomplete distance tree",w=j):-4!=w&&(d.msg="empty distance tree with lengths",w=j),w):0)}}function ae(){const e=this;let t,n,r,i,s=0,a=0,o=0,l=0,c=0,u=0,f=0,d=0,w=0,h=0;function p(e,t,n,r,i,s,a,o){let l,c,u,f,d,w,h,p,g,_,m,b,y,x,k,S;h=o.next_in_index,p=o.avail_in,d=a.bitb,w=a.bitk,g=a.write,_=gw;)p--,d|=(255&o.read_byte(h++))<>=c[S+1],w-=c[S+1],16&f){for(f&=15,y=c[S+2]+(d&Q[f]),d>>=f,w-=f;15>w;)p--,d|=(255&o.read_byte(h++))<>=c[S+1],w-=c[S+1],16&f){for(f&=15;f>w;)p--,d|=(255&o.read_byte(h++))<>=f,w-=f,_-=y,x>g){k=g-x;do{k+=a.end}while(0>k);if(f=a.end-k,y>f){if(y-=f,g-k>0&&f>g-k)do{a.win[g++]=a.win[k++]}while(0!=--f);else a.win.set(a.win.subarray(k,k+f),g),g+=f,k+=f,f=0;k=0}}else k=g-x,g-k>0&&2>g-k?(a.win[g++]=a.win[k++],a.win[g++]=a.win[k++],y-=2):(a.win.set(a.win.subarray(k,k+2),g),g+=2,k+=2,y-=2);if(g-k>0&&y>g-k)do{a.win[g++]=a.win[k++]}while(0!=--y);else a.win.set(a.win.subarray(k,k+y),g),g+=y,k+=y,y=0;break}if(64&f)return o.msg="invalid distance code",y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=g,j;l+=c[S+2],l+=d&Q[f],S=3*(u+l),f=c[S]}break}if(64&f)return 32&f?(y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=g,1):(o.msg="invalid literal/length code",y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=g,j);if(l+=c[S+2],l+=d&Q[f],S=3*(u+l),0===(f=c[S])){d>>=c[S+1],w-=c[S+1],a.win[g++]=c[S+2],_--;break}}else d>>=c[S+1],w-=c[S+1],a.win[g++]=c[S+2],_--}while(_>=258&&p>=10);return y=o.avail_in-p,y=y>w>>3?w>>3:y,p+=y,h-=y,w-=y<<3,a.bitb=d,a.bitk=w,o.avail_in=p,o.total_in+=h-o.next_in_index,o.next_in_index=h,a.write=g,0}e.init=(e,s,a,o,l,c)=>{t=0,f=e,d=s,r=a,w=o,i=l,h=c,n=null},e.proc=(e,g,_)=>{let m,b,y,x,k,S,v,z=0,A=0,C=0;for(C=g.next_in_index,x=g.avail_in,z=e.bitb,A=e.bitk,k=e.write,S=k=258&&x>=10&&(e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,_=p(f,d,r,w,i,h,e,g),C=g.next_in_index,x=g.avail_in,z=e.bitb,A=e.bitk,k=e.write,S=kA;){if(0===x)return e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,e.inflate_flush(g,_);_=0,x--,z|=(255&g.read_byte(C++))<>>=n[b+1],A-=n[b+1],y=n[b],0===y){l=n[b+2],t=6;break}if(16&y){c=15&y,s=n[b+2],t=2;break}if(!(64&y)){o=y,a=b/3+n[b+2];break}if(32&y){t=7;break}return t=9,g.msg="invalid literal/length code",_=j,e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,e.inflate_flush(g,_);case 2:for(m=c;m>A;){if(0===x)return e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,e.inflate_flush(g,_);_=0,x--,z|=(255&g.read_byte(C++))<>=m,A-=m,o=d,n=i,a=h,t=3;case 3:for(m=o;m>A;){if(0===x)return e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,e.inflate_flush(g,_);_=0,x--,z|=(255&g.read_byte(C++))<>=n[b+1],A-=n[b+1],y=n[b],16&y){c=15&y,u=n[b+2],t=4;break}if(!(64&y)){o=y,a=b/3+n[b+2];break}return t=9,g.msg="invalid distance code",_=j,e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,e.inflate_flush(g,_);case 4:for(m=c;m>A;){if(0===x)return e.bitb=z,e.bitk=A,g.avail_in=x,g.total_in+=C-g.next_in_index,g.next_in_index=C,e.write=k,e.inflate_flush(g,_);_=0,x--,z|=(255&g.read_byte(C++))<>=m,A-=m,t=5;case 5:for(v=k-u;0>v;)v+=e.end;for(;0!==s;){if(0===S&&(k==e.end&&0!==e.read&&(k=0,S=k7&&(A-=8,x++,C--),e.write=k,_=e.inflate_flush(g,_),k=e.write,S=k{}}se.inflate_trees_fixed=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=$,r[0]=ee,0);const oe=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function le(e,t){const n=this;let r,i=0,s=0,a=0,o=0;const l=[0],c=[0],u=new ae;let f=0,d=new Int32Array(4320);const h=new se;n.bitk=0,n.bitb=0,n.win=new w(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==i&&u.free(e),i=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let r,i,s;return i=e.next_out_index,s=n.read,r=(s>n.write?n.end:n.write)-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==J&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r,s==n.end&&(s=0,n.write==n.end&&(n.write=0),r=n.write-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==J&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r),e.next_out_index=i,n.read=s,t},n.proc=(e,t)=>{let w,p,g,_,m,b,y,x;for(_=e.next_in_index,m=e.avail_in,p=n.bitb,g=n.bitk,b=n.write,y=bg;){if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(_++))<>>1){case 0:p>>>=3,g-=3,w=7&g,p>>>=w,g-=w,i=1;break;case 1:k=[],S=[],v=[[]],z=[[]],se.inflate_trees_fixed(k,S,v,z),u.init(k[0],S[0],v[0],0,z[0],0),p>>>=3,g-=3,i=6;break;case 2:p>>>=3,g-=3,i=3;break;case 3:return p>>>=3,g-=3,i=9,e.msg="invalid block type",t=j,n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t)}break;case 1:for(;32>g;){if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(_++))<>>16&65535)!=(65535&p))return i=9,e.msg="invalid stored block lengths",t=j,n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);s=65535&p,p=g=0,i=0!==s?2:0!==f?7:0;break;case 2:if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);if(0===y&&(b==n.end&&0!==n.read&&(b=0,y=bm&&(w=m),w>y&&(w=y),n.win.set(e.read_buf(_,w),b),_+=w,m-=w,b+=w,y-=w,0!=(s-=w))break;i=0!==f?7:0;break;case 3:for(;14>g;){if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(_++))<29||(w>>5&31)>29)return i=9,e.msg="too many length or distance symbols",t=j,n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);if(w=258+(31&w)+(w>>5&31),!r||r.lengthx;x++)r[x]=0;p>>>=14,g-=14,o=0,i=4;case 4:for(;4+(a>>>10)>o;){for(;3>g;){if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(_++))<>>=3,g-=3}for(;19>o;)r[oe[o++]]=0;if(l[0]=7,w=h.inflate_trees_bits(r,l,c,d,e),0!=w)return(t=w)==j&&(r=null,i=9),n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);o=0,i=5;case 5:for(;w=a,258+(31&w)+(w>>5&31)>o;){let s,u;for(w=l[0];w>g;){if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(_++))<u)p>>>=w,g-=w,r[o++]=u;else{for(x=18==u?7:u-14,s=18==u?11:3;w+x>g;){if(0===m)return n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);t=0,m--,p|=(255&e.read_byte(_++))<>>=w,g-=w,s+=p&Q[x],p>>>=x,g-=x,x=o,w=a,x+s>258+(31&w)+(w>>5&31)||16==u&&1>x)return r=null,i=9,e.msg="invalid bit length repeat",t=j,n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);u=16==u?r[x-1]:0;do{r[x++]=u}while(0!=--s);o=x}}if(c[0]=-1,A=[],C=[],D=[],E=[],A[0]=9,C[0]=6,w=a,w=h.inflate_trees_dynamic(257+(31&w),1+(w>>5&31),r,A,C,D,E,d,e),0!=w)return w==j&&(r=null,i=9),t=w,n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,n.inflate_flush(e,t);u.init(A[0],C[0],d,D[0],d,E[0]),i=6;case 6:if(n.bitb=p,n.bitk=g,e.avail_in=m,e.total_in+=_-e.next_in_index,e.next_in_index=_,n.write=b,1!=(t=u.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,u.free(e),_=e.next_in_index,m=e.avail_in,p=n.bitb,g=n.bitk,b=n.write,y=b{n.reset(e,null),n.win=null,d=null},n.set_dictionary=(e,t,r)=>{n.win.set(e.subarray(t,t+r),0),n.read=n.write=r},n.sync_point=()=>1==i?1:0}const ce=13,ue=[0,0,255,255];function fe(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):Y}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,r)=>(n.msg=null,e.blocks=null,8>r||r>15?(e.inflateEnd(n),Y):(e.wbits=r,n.istate.blocks=new le(n,1<{let n,r;if(!e||!e.istate||!e.next_in)return Y;const i=e.istate;for(t=4==t?J:0,n=J;;)switch(i.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(i.method=e.read_byte(e.next_in_index++)))){i.mode=ce,e.msg="unknown compression method",i.marker=5;break}if(8+(i.method>>4)>i.wbits){i.mode=ce,e.msg="invalid win size",i.marker=5;break}i.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,r=255&e.read_byte(e.next_in_index++),((i.method<<8)+r)%31!=0){i.mode=ce,e.msg="incorrect header check",i.marker=5;break}if(!(32&r)){i.mode=7;break}i.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,i.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,i.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,i.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,i.need+=255&e.read_byte(e.next_in_index++),i.mode=6,2);case 6:return i.mode=ce,e.msg="need dictionary",i.marker=0,Y;case 7:if(n=i.blocks.proc(e,n),n==j){i.mode=ce,i.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,i.blocks.reset(e,i.was),i.mode=12;case 12:return e.avail_in=0,1;case ce:return j;default:return Y}},e.inflateSetDictionary=(e,t,n)=>{let r=0,i=n;if(!e||!e.istate||6!=e.istate.mode)return Y;const s=e.istate;return i<1<{let n,r,i,s,a;if(!e||!e.istate)return Y;const o=e.istate;if(o.mode!=ce&&(o.mode=ce,o.marker=0),0===(n=e.avail_in))return J;for(r=e.next_in_index,i=o.marker;0!==n&&4>i;)e.read_byte(r)==ue[i]?i++:i=0!==e.read_byte(r)?0:4-i,r++,n--;return e.total_in+=r-e.next_in_index,e.next_in_index=r,e.avail_in=n,o.marker=i,4!=i?j:(s=e.total_in,a=e.total_out,t(e),e.total_in=s,e.total_out=a,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():Y}function de(){}de.prototype={inflateInit(e){const t=this;return t.istate=new fe,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):Y},inflateEnd(){const e=this;if(!e.istate)return Y;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):Y},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):Y},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const we=4294967295,he=65535,pe=67324752,ge=134695760,_e=ge,me=33639248,be=101010256,ye=101075792,xe=117853008,ke=22,Se=21589,ve=2048,ze="/",Ae=new o(2107,11,31),Ce=new o(1980,0,1),De=void 0,Ee="undefined",Fe="function";class We{constructor(e){return class extends v{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}let Re=2;try{typeof E!=Ee&&E.hardwareConcurrency&&(Re=E.hardwareConcurrency)}catch(e){}const Te={chunkSize:524288,maxWorkers:Re,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:De,CompressionStreamNative:typeof C!=Ee&&C,DecompressionStreamNative:typeof D!=Ee&&D},Le=n.assign({},Te);function Ue(){return Le}function Ie(e){return a.max(e.chunkSize,64)}function Ne(e){const{baseURL:n,chunkSize:r,maxWorkers:i,terminateWorkerTimeout:s,useCompressionStream:a,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:u,DecompressionStream:f,workerScripts:w}=e;if(qe("baseURL",n),qe("chunkSize",r),qe("maxWorkers",i),qe("terminateWorkerTimeout",s),qe("useCompressionStream",a),qe("useWebWorkers",o),l&&(Le.CompressionStream=new We(l)),c&&(Le.DecompressionStream=new We(c)),qe("CompressionStream",u),qe("DecompressionStream",f),w!==De){const{deflate:e,inflate:n}=w;if((e||n)&&(Le.workerScripts||(Le.workerScripts={})),e){if(!t.isArray(e))throw new d("workerScripts.deflate must be an array");Le.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new d("workerScripts.inflate must be an array");Le.workerScripts.inflate=n}}}function qe(e,t){t!==De&&(Le[e]=t)}function Oe(e,t,r){return class{constructor(i){const s=this;var a,o;a=i,o="level",(typeof n.hasOwn===Fe?n.hasOwn(a,o):a.hasOwnProperty(o))&&i.level===De&&delete i.level,s.codec=new e(n.assign({},t,i)),r(s.codec,(e=>{if(s.pendingData){const t=s.pendingData;s.pendingData=new w(t.length+e.length);const{pendingData:n}=s;n.set(t,0),n.set(e,t.length)}else s.pendingData=new w(e)}))}append(e){return this.codec.push(e),i(this)}flush(){return this.codec.push(new w,!0),i(this)}};function i(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new w}}const Pe=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;Pe[e]=t}class He{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^Pe[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Me extends v{constructor(){let e;const t=new He;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new g(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function Be(e){if(typeof b==Ee){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=Ve.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>a.round(e/1099511627776)||32,_shiftRight(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let i=0;i>>t),n=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=Ve.getPartial(i);return r.push(Ve.partial(t+s&31,t+s>32?n:r.pop(),1)),r}},Ze={bytes:{fromBits(e){const t=Ve.bitLength(e)/8,n=new w(t);let r;for(let i=0;t>i;i++)3&i||(r=e[i/4]),n[i]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const s=new p(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=Ve.concat(t,[Ve.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}_S(e,t){return t<>>32-e}_block(e){const n=this,r=n._h,i=t(80);for(let t=0;16>t;t++)i[t]=e[t];let s=r[0],o=r[1],l=r[2],c=r[3],u=r[4];for(let e=0;79>=e;e++){16>e||(i[e]=n._S(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n._S(5,s)+n._f(e,o,l,c)+u+i[e]+n._key[a.floor(e/20)]|0;u=c,c=l,l=n._S(30,o),o=s,s=t}r[0]=r[0]+s|0,r[1]=r[1]+o|0,r[2]=r[2]+l|0,r[3]=r[3]+c|0,r[4]=r[4]+u|0}},Ge={getRandomValues(e){const t=new p(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(a.random()>.5?1:-1))};for(let r,i=0;inew Xe.hmacSha1(Ze.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new d("invalid params to pbkdf2");const i=1+(r>>5)<<2;let s,a,o,l,c;const u=new ArrayBuffer(i),f=new g(u);let w=0;const h=Ve;for(t=Ze.bytes.toBits(t),c=1;(i||1)>w;c++){for(s=a=e.encrypt(h.concat(t,[c])),o=1;n>o;o++)for(a=e.encrypt(a),l=0;lw&&oi&&(e=(new n).update(e).finalize());for(let t=0;i>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Ye=typeof k!=Ee&&typeof k.getRandomValues==Fe,je="Invalid password",Je="Invalid signature",Qe="zipjs-abort-check-password";function $e(e){return Ye?k.getRandomValues(e):Ge.getRandomValues(e)}const et=16,tt={name:"PBKDF2"},nt=n.assign({hash:{name:"HMAC"}},tt),rt=n.assign({iterations:1e3,hash:{name:"SHA-1"}},tt),it=["deriveBits"],st=[8,12,16],at=[16,24,32],ot=10,lt=[0,0,0,0],ct=typeof k!=Ee,ut=ct&&k.subtle,ft=ct&&typeof ut!=Ee,dt=Ze.bytes,wt=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],i=e.length;let s,a,o,l=1;if(4!==i&&6!==i&&8!==i)throw new d("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],s=i;4*i+28>s;s++){let e=a[s-1];(s%i==0||8===i&&s%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],s%i==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),a[s]=a[s-i]^e}for(let e=0;s;e++,s--){const t=a[3&e?s:s-4];o[e]=4>=s||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],i=[],s=[];let a,o,l,c;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=o||1,a=s[a]||1){let s=a^a<<1^a<<2^a<<3^a<<4;s=s>>8^255&s^99,n[u]=s,r[s]=u,c=i[l=i[o=i[u]]];let f=16843009*c^65537*l^257*o^16843008*u,d=257*i[s]^16843008*s;for(let n=0;4>n;n++)e[n][u]=d=d<<24^d>>>8,t[n][s]=f=f<<24^f>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new d("invalid aes block size");const n=this._key[t],r=n.length/4-2,i=[0,0,0,0],s=this._tables[t],a=s[0],o=s[1],l=s[2],c=s[3],u=s[4];let f,w,h,p=e[0]^n[0],g=e[t?3:1]^n[1],_=e[2]^n[2],m=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)f=a[p>>>24]^o[g>>16&255]^l[_>>8&255]^c[255&m]^n[b],w=a[g>>>24]^o[_>>16&255]^l[m>>8&255]^c[255&p]^n[b+1],h=a[_>>>24]^o[m>>16&255]^l[p>>8&255]^c[255&g]^n[b+2],m=a[m>>>24]^o[p>>16&255]^l[g>>8&255]^c[255&_]^n[b+3],b+=4,p=f,g=w,_=h;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[g>>16&255]<<16^u[_>>8&255]<<8^u[255&m]^n[b++],f=p,p=g,g=_,_=m,m=f;return i}},ht=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];const i=Ve.bitLength(t);for(let i=0;r>i;i+=4){this.incCounter(n);const r=e.encrypt(n);t[i]^=r[0],t[i+1]^=r[1],t[i+2]^=r[2],t[i+3]^=r[3]}return Ve.clamp(t,i)}},pt=Xe.hmacSha1;let gt=ct&&ft&&typeof ut.importKey==Fe,_t=ct&&ft&&typeof ut.deriveBits==Fe;class mt extends v{constructor({password:e,rawPassword:t,signed:r,encryptionStrength:i,checkPasswordOnly:s}){super({start(){n.assign(this,{ready:new m((e=>this.resolveReady=e)),password:kt(e,t),signed:r,strength:i-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const i=await xt(e,t,n,vt(r,0,st[t])),s=vt(r,st[t]);if(i[0]!=s[0]||i[1]!=s[1])throw new d(je)})(n,i,r,vt(e,0,st[i]+2)),e=vt(e,st[i]+2),s?t.error(new d(Qe)):a()):await o;const l=new w(e.length-ot-(e.length-ot)%et);t.enqueue(yt(n,e,l,0,ot,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:i,ready:s}=this;if(r&&n){await s;const a=vt(i,0,i.length-ot),o=vt(i,i.length-ot);let l=new w;if(a.length){const e=At(dt,a);r.update(e);const t=n.update(e);l=zt(dt,t)}if(t){const e=vt(zt(dt,r.digest()),0,ot);for(let t=0;ot>t;t++)if(e[t]!=o[t])throw new d(Je)}e.enqueue(l)}}})}}class bt extends v{constructor({password:e,rawPassword:t,encryptionStrength:r}){let i;super({start(){n.assign(this,{ready:new m((e=>this.resolveReady=e)),password:kt(e,t),strength:r-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:s,ready:a}=n;let o=new w;r?(o=await(async(e,t,n)=>{const r=$e(new w(st[t]));return St(r,await xt(e,t,n,r))})(n,i,r),s()):await a;const l=new w(o.length+e.length-e.length%et);l.set(o,0),t.enqueue(yt(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:s}=this;if(n&&t){await s;let a=new w;if(r.length){const e=t.update(At(dt,r));n.update(e),a=zt(dt,e)}i.signature=zt(dt,n.digest()).slice(0,ot),e.enqueue(St(a,i.signature))}}}),i=this}}function yt(e,t,n,r,i,s){const{ctr:a,hmac:o,pending:l}=e,c=t.length-i;let u;for(l.length&&(t=St(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e})(n,c-c%et)),u=0;c-et>=u;u+=et){const e=At(dt,vt(t,u,u+et));s&&o.update(e);const i=a.update(e);s||o.update(i),n.set(zt(dt,i),u+r)}return e.pending=vt(t,u),n}async function xt(e,r,i,s){e.password=null;const a=await(async(e,t,n,r,i)=>{if(!gt)return Xe.importKey(t);try{return await ut.importKey("raw",t,n,!1,i)}catch(e){return gt=!1,Xe.importKey(t)}})(0,i,nt,0,it),o=await(async(e,t,n)=>{if(!_t)return Xe.pbkdf2(t,e.salt,rt.iterations,n);try{return await ut.deriveBits(e,t,n)}catch(r){return _t=!1,Xe.pbkdf2(t,e.salt,rt.iterations,n)}})(n.assign({salt:s},rt),a,8*(2*at[r]+2)),l=new w(o),c=At(dt,vt(l,0,at[r])),u=At(dt,vt(l,at[r],2*at[r])),f=vt(l,2*at[r]);return n.assign(e,{keys:{key:c,authentication:u,passwordVerification:f},ctr:new ht(new wt(c),t.from(lt)),hmac:new pt(u)}),f}function kt(e,t){return t===De?Be(e):t}function St(e,t){let n=e;return e.length+t.length&&(n=new w(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function vt(e,t,n){return e.subarray(t,n)}function zt(e,t){return e.fromBits(t)}function At(e,t){return e.toBits(t)}class Ct extends v{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Wt(this,e)},transform(e,t){const n=this;if(n.password){const t=Et(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new d(je);e=e.subarray(12)}r?t.error(new d(Qe)):t.enqueue(Et(n,e))}})}}class Dt extends v{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Wt(this,e)},transform(e,t){const n=this;let r,i;if(n.password){n.password=null;const t=$e(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Ft(n,t),0),i=12}else r=new w(e.length),i=0;r.set(Ft(n,e),i),t.enqueue(r)}})}}function Et(e,t){const n=new w(t.length);for(let r=0;r>>24]),i=~e.crcKey2.get(),e.keys=[n,r,i]}function Tt(e){const t=2|e.keys[2];return Lt(a.imul(t,1^t)>>>8)}function Lt(e){return 255&e}function Ut(e){return 4294967295&e}const It="deflate-raw";class Nt extends v{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:i,encrypted:s,useCompressionStream:a,zipCrypto:o,signed:l,level:c}=e,u=this;let f,d,w=Ot(super.readable);s&&!o||!l||(f=new Me,w=Mt(w,f)),i&&(w=Ht(w,a,{level:c,chunkSize:t},r,n)),s&&(o?w=Mt(w,new Dt(e)):(d=new bt(e),w=Mt(w,d))),Pt(u,w,(()=>{let e;s&&!o&&(e=d.signature),s&&!o||!l||(e=new g(f.value.buffer).getUint32(0)),u.signature=e}))}}class qt extends v{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:s,signed:a,signature:o,compressed:l,useCompressionStream:c}=e;let u,f,w=Ot(super.readable);s&&(i?w=Mt(w,new Ct(e)):(f=new mt(e),w=Mt(w,f))),l&&(w=Ht(w,c,{chunkSize:t},r,n)),s&&!i||!a||(u=new Me,w=Mt(w,u)),Pt(this,w,(()=>{if((!s||i)&&a){const e=new g(u.value.buffer);if(o!=e.getUint32(0,!1))throw new d(Je)}}))}}function Ot(e){return Mt(e,new v({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function Pt(e,t,r){t=Mt(t,new v({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function Ht(e,t,n,r,i){try{e=Mt(e,new(t&&r?r:i)(It,n))}catch(r){if(!t)return e;try{e=Mt(e,new i(It,n))}catch(t){return e}}return e}function Mt(e,t){return e.pipeThrough(t)}const Bt="data",Vt="close",Zt="deflate",Kt="inflate";class Gt extends v{constructor(e,t){super({});const r=this,{codecType:i}=e;let s;i.startsWith(Zt)?s=Nt:i.startsWith(Kt)&&(s=qt);let a=0,o=0;const l=new s(e,t),c=super.readable,u=new v({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:o})}}),f=new v({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=l;n.assign(r,{signature:e,outputSize:a,inputSize:o})}});n.defineProperty(r,"readable",{get:()=>c.pipeThrough(u).pipeThrough(l).pipeThrough(f)})}}class Xt extends v{constructor(e){let t;super({transform:function n(r,i){if(t){const e=new w(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(i.enqueue(r.slice(0,e)),n(r.slice(e),i)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}let Yt=typeof F!=Ee;class jt{constructor(e,{readable:t,writable:r},{options:i,config:s,streamOptions:a,useWebWorkers:o,transferStreams:l,scripts:c},u){const{signal:f}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Xt(s.chunkSize)).pipeThrough(new Jt(t,a),{signal:f}),writable:r,options:n.assign({},i),scripts:c,transferStreams:l,terminate:()=>new m((t=>{const{worker:n,busy:r}=e;n?(r?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,u(e)}}),(o&&Yt?en:$t)(e,s)}}class Jt extends v{constructor(e,{onstart:t,onprogress:n,size:r,onend:i}){let s=0;super({async start(){t&&await Qt(t,r)},async transform(e,t){s+=e.length,n&&await Qt(n,s,r),t.enqueue(e)},async flush(){e.size=s,i&&await Qt(i,s)}})}}async function Qt(e,...t){try{await e(...t)}catch(e){}}function $t(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},i)=>{try{const r=new Gt(e,i);await t.pipeThrough(r).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:s,inputSize:a,outputSize:o}=r;return{signature:s,inputSize:a,outputSize:o}}finally{r()}})(e,t)}}function en(e,t){const{baseURL:r,chunkSize:i}=t;if(!e.interface){let s;try{s=((e,t,r)=>{const i={type:"module"};let s,a;typeof e==Fe&&(e=e());try{s=new f(e,t)}catch(t){s=e}if(tn)try{a=new F(s)}catch(e){tn=!1,a=new F(s,i)}else a=new F(s,i);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:i,messageId:s,result:a,error:o}=e,{reader:l,writer:c,resolveResult:u,rejectResult:f,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:r,name:i}=o,s=new d(e);n.assign(s,{stack:t,code:r,name:i}),p(s)}else{if("pull"==r){const{value:e,done:n}=await l.read();rn({type:Bt,value:e,done:n,messageId:s},t)}r==Bt&&(await c.ready,await c.write(new w(i)),rn({type:"ack",messageId:s},t)),r==Vt&&p(null,a)}}catch(o){rn({type:Vt,messageId:s},t),p(o)}function p(e,t){e?f(e):u(t),c&&c.releaseLock(),h()}})(e,r))),a})(e.scripts[0],r,e)}catch(n){return Yt=!1,$t(e,t)}n.assign(e,{worker:s,interface:{run:()=>(async(e,t)=>{let r,i;const s=new m(((e,t)=>{r=e,i=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:i,result:s});const{readable:a,options:o,scripts:l}=e,{writable:c,closed:u}=(e=>{let t;const n=new m((e=>t=e));return{writable:new A({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),f=rn({type:"start",scripts:l.slice(1),options:o,config:t,readable:a,writable:c},e);f||n.assign(e,{reader:a.getReader(),writer:c.getWriter()});const d=await s;return f||await c.getWriter().close(),await u,d})(e,{chunkSize:i})}})}return e.interface}let tn=!0,nn=!0;function rn(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:i}){try{const{value:n,readable:r,writable:s}=e,a=[];if(n&&(n.byteLength{const n=sn.find((e=>!e.busy));if(n)return cn(n),new jt(n,e,t,p);if(sn.lengthan.push({resolve:n,stream:e,workerOptions:t})))})()).run();function p(e){if(an.length){const[{resolve:t,stream:n,workerOptions:r}]=an.splice(0,1);t(new jt(e,n,r,p))}else e.worker?(cn(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;i.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{sn=sn.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),r))})(e,t)):sn=sn.filter((t=>t!=e))}}function cn(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const un="HTTP error ",fn="HTTP Range not supported",dn="Writer iterator completed too soon",wn="Range",hn="GET",pn="bytes",gn=65536,_n="writable";class mn{constructor(){this.size=0}init(){this.initialized=!0}}class bn extends mn{get readable(){const e=this,{chunkSize:t=gn}=e,n=new z({start(){this.chunkOffset=0},async pull(r){const{offset:i=0,size:s,diskNumberStart:o}=n,{chunkOffset:l}=this;r.enqueue(await Mn(e,i+l,a.min(t,s-l),o)),l+t>s?r.close():this.chunkOffset+=t}});return n}}class yn extends mn{constructor(){super();const e=this,t=new A({write:t=>e.writeUint8Array(t)});n.defineProperty(e,_n,{get:()=>t})}writeUint8Array(){}}class xn extends bn{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,i=e||rt&&(s=s.slice(e,r)),new w(s)}}class kn extends mn{constructor(e){super();const t=new v,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,_n,{get:()=>t.writable}),this.blob=new u(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Sn extends bn{constructor(e,t){super(),zn(this,e,t)}async init(){await An(this,Ln,Fn),super.init()}readUint8Array(e,t){return Cn(this,e,t,Ln,Fn)}}class vn extends bn{constructor(e,t){super(),zn(this,e,t)}async init(){await An(this,Un,Wn),super.init()}readUint8Array(e,t){return Cn(this,e,t,Un,Wn)}}function zn(e,t,r){const{preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o})}async function An(e,t,n){const{url:r,preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:o,combineSizeEocd:l}=e;if((e=>{const{baseURL:t}=Ue(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n})(r)&&(a||o)&&(void 0===s||s)){const r=await t(hn,e,Dn(e,l?-22:void 0));if(!o&&r.headers.get("Accept-Ranges")!=pn)throw new d(fn);{let s;l&&(e.eocdCache=new w(await r.arrayBuffer()));const a=r.headers.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(s=i(t))}}s===De?await Tn(e,t,n):e.size=s}}else await Tn(e,t,n)}async function Cn(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,eocdCache:o,size:l,options:c}=e;if(s||a){if(o&&t==l-ke&&n==ke)return o;const i=await r(hn,e,Dn(e,t,n));if(206!=i.status)throw new d(fn);return new w(await i.arrayBuffer())}{const{data:r}=e;return r||await i(e,c),new w(e.data.subarray(t,t+n))}}function Dn(e,t=0,r=1){return n.assign({},En(e),{[wn]:pn+"="+(0>t?t:t+"-"+(t+r-1))})}function En({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Fn(e){await Rn(e,Ln)}async function Wn(e){await Rn(e,Un)}async function Rn(e,t){const n=await t(hn,e,En(e));e.data=new w(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Tn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,En(e))).headers.get("Content-Length");r?e.size=i(r):await n(e,e.options)}}async function Ln(e,{options:t,url:r},i){const s=await fetch(r,n.assign({},t,{method:e,headers:i}));if(400>s.status)return s;throw 416==s.status?new d(fn):new d(un+(s.statusText||s.status))}function Un(e,{url:t},r){return new m(((i,s)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),i({status:a.status,arrayBuffer:()=>a.response,headers:new l(e)})}else s(416==a.status?new d(fn):new d(un+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>s(e.detail?e.detail.error:new d("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class In extends bn{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new vn(e,t):new Sn(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Nn extends bn{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await m.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:i}=this;let s,o=n;-1==o&&(o=i.length-1);let l=e;for(;l>=i[o].size;)l-=i[o].size,o++;const c=i[o],u=c.size;if(l+t>u){const i=u-l;s=new w(t),s.set(await Mn(c,l,i)),s.set(await r.readUint8Array(e+i,t-i,n),i)}else s=await Mn(c,l,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),s}}class qn extends mn{constructor(e,t=4294967295){super();const r=this;let i,s,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new A({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function On(e,t){if(!e.init||e.initialized)return m.resolve();await e.init(t)}function Pn(e){return t.isArray(e)&&(e=new Nn(e)),e instanceof z&&(e={readable:e}),e}function Hn(e){e.writable===De&&typeof e.next==Fe&&(e=new qn(e)),e instanceof A&&(e={writable:e});const{writable:t}=e;return t.size===De&&(t.size=0),e instanceof qn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function Mn(e,t,n,r){return e.readUint8Array(t,n,r)}const Bn=Nn,Vn=qn,Zn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Kn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const _r="File format is not recognized",mr="End of central directory not found",br="End of Zip64 central directory locator not found",yr="Central directory header not found",xr="Local file header not found",kr="Zip64 extra field not found",Sr="File contains encrypted entry",vr="Encryption method not supported",zr="Compression method not supported",Ar="Split zip file",Cr="utf-8",Dr="cp437",Er=[[Jn,we],[Qn,we],[$n,we],[er,he]],Fr={[he]:{getValue:Hr,bytes:4},[we]:{getValue:Mr,bytes:8}};class Wr{constructor(e,t={}){n.assign(this,{reader:Pn(e),options:t,config:Ue()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:i}=t;if(await On(r),r.size!==De&&r.readUint8Array||(r=new xn(await new u(r.readable).blob()),await On(r)),r.size{const r=new w(4);var i;return i=t,Br(r).setUint32(0,i,!0),await s(22)||await s(a.min(1048582,n));async function s(t){const i=n-t,s=await Mn(e,i,t);for(let e=s.length-22;e>=0;e--)if(s[e]==r[0]&&s[e+1]==r[1]&&s[e+2]==r[2]&&s[e+3]==r[3])return{offset:i+e,buffer:s.slice(e,e+22).buffer}}})(r,be,r.size);if(!s)throw Hr(Br(await Mn(r,0,4)))==ge?new d(Ar):new d(mr);const o=Br(s);let l=Hr(o,12),c=Hr(o,16);const f=s.offset,h=Pr(o,20),p=f+ke+h;let g=Pr(o,4);const _=r.lastDiskNumber||0;let m=Pr(o,6),b=Pr(o,8),y=0,x=0;if(c==we||l==we||b==he||m==he){const e=Br(await Mn(r,s.offset-20,20));if(Hr(e,0)==xe){c=Mr(e,8);let t=await Mn(r,c,56,-1),n=Br(t);const i=s.offset-20-56;if(Hr(n,0)!=ye&&c!=i){const e=c;c=i,y=c-e,t=await Mn(r,c,56,-1),n=Br(t)}if(Hr(n,0)!=ye)throw new d(br);g==he&&(g=Hr(n,16)),m==he&&(m=Hr(n,20)),b==he&&(b=Mr(n,32)),l==we&&(l=Mr(n,40)),c-=l}}if(cc)throw new d(_r);let k=0,S=await Mn(r,c,l,m),v=Br(S);if(l){const e=s.offset-l;if(Hr(v,k)!=me&&c!=e){const t=c;c=e,y+=c-t,S=await Mn(r,c,l,m),v=Br(S)}}const z=s.offset-c-(r.lastDiskOffset||0);if(l==z||0>z||(l=z,S=await Mn(r,c,l,m),v=Br(S)),0>c||c>=r.size)throw new d(_r);const A=Ir(t,e,"filenameEncoding"),C=Ir(t,e,"commentEncoding");for(let s=0;b>s;s++){const o=new Rr(r,i,t.options);if(Hr(v,k)!=me)throw new d(yr);Tr(o,v,k+6);const l=!!o.bitFlag.languageEncodingFlag,c=k+46,u=c+o.filenameLength,f=u+o.extraFieldLength,w=Pr(v,k+4),h=!(w>>8),p=w>>8==3,g=S.subarray(c,u),_=Pr(v,k+32),m=f+_,z=S.subarray(f,m),D=l,E=l,F=Hr(v,k+38),W=h&&!(16&~Or(v,k+38))||p&&!(16384&~(F>>16))||g.length&&47==g[g.length-1],R=p&&!(73&~(F>>16)),T=Hr(v,k+42)+y;n.assign(o,{versionMadeBy:w,msDosCompatible:h,compressedSize:0,uncompressedSize:0,commentLength:_,directory:W,offset:T,diskNumberStart:Pr(v,k+34),internalFileAttributes:Pr(v,k+36),externalFileAttributes:F,rawFilename:g,filenameUTF8:D,commentUTF8:E,rawExtraField:S.subarray(u,f),executable:R}),o.internalFileAttribute=o.internalFileAttributes,o.externalFileAttribute=o.externalFileAttributes;const L=Ir(t,e,"decodeText")||Kn,U=D?Cr:A||Dr,I=E?Cr:C||Dr;let N=L(g,U);N===De&&(N=Kn(g,U));let q=L(z,I);q===De&&(q=Kn(z,I)),n.assign(o,{rawComment:z,filename:N,comment:q,directory:W||N.endsWith(ze)}),x=a.max(T,x),Lr(o,o,v,k+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const O=new gr(o);O.getData=(e,t)=>o.getData(e,O,t),k=m;const{onprogress:P}=e;if(P)try{await P(s+1,b,new gr(o))}catch(e){}yield O}const D=Ir(t,e,"extractPrependedData"),E=Ir(t,e,"extractAppendedData");return D&&(t.prependedData=x>0?await Mn(r,0,x):new w),t.comment=h?await Mn(r,f+ke,h):new w,E&&(t.appendedData=p>>8&255:h>>>24&255),signature:h,compressed:0!=c&&!k,encrypted:i.encrypted&&!k,useWebWorkers:Ir(i,r,"useWebWorkers"),useCompressionStream:Ir(i,r,"useCompressionStream"),transferStreams:Ir(i,r,"transferStreams"),checkPasswordOnly:F},config:u,streamOptions:{signal:E,size:C,onstart:R,onprogress:T,onend:L}};let I=0;try{({outputSize:I}=await ln({readable:D,writable:W},U))}catch(e){if(!F||e.message!=Qe)throw e}finally{const e=Ir(i,r,"preventClose");W.size+=I,e||W.locked||await W.getWriter().close()}return F?De:e.getData?e.getData():W}}function Tr(e,t,r){const i=e.rawBitFlag=Pr(t,r+2),s=!(1&~i),a=Hr(t,r+6);n.assign(e,{encrypted:s,version:Pr(t,r),bitFlag:{level:(6&i)>>1,dataDescriptor:!(8&~i),languageEncodingFlag:(i&ve)==ve},rawLastModDate:a,lastModDate:Nr(a),filenameLength:Pr(t,r+22),extraFieldLength:Pr(t,r+24)})}function Lr(e,t,r,i,s){const{rawExtraField:a}=t,c=t.extraField=new l,u=Br(new w(a));let f=0;try{for(;f{t.zip64=!0;const n=Br(e.data),r=Er.filter((([e,n])=>t[e]==n));for(let i=0,s=0;i{const i=Br(e.data),s=Or(i,4);n.assign(e,{vendorVersion:Or(i,0),vendorId:Or(i,2),strength:s,originalCompressionMethod:r,compressionMethod:Pr(i,5)}),t.compressionMethod=e.compressionMethod})(m,t,h),t.extraFieldAES=m):t.compressionMethod=h;const b=c.get(10);b&&(((e,t)=>{const r=Br(e.data);let i,s=4;try{for(;s{const r=Br(e.data),i=Or(r,0),s=[],a=[];n?(1&~i||(s.push(tr),a.push(nr)),2&~i||(s.push(rr),a.push("rawLastAccessDate")),4&~i||(s.push(ir),a.push("rawCreationDate"))):5>e.data.length||(s.push(tr),a.push(nr));let l=1;s.forEach(((n,i)=>{if(e.data.length>=l+4){const s=Hr(r,l);t[n]=e[n]=new o(1e3*s);const c=a[i];e[c]=s}l+=4}))})(y,t,s),t.extraFieldExtendedTimestamp=y);const x=c.get(6534);x&&(t.extraFieldUSDZ=x)}function Ur(e,t,r,i,s){const a=Br(e.data),o=new He;o.append(s[r]);const l=Br(new w(4));l.setUint32(0,o.get(),!0);const c=Hr(a,1);n.assign(e,{version:Or(a,0),[t]:Kn(e.data.subarray(5)),valid:!s.bitFlag.languageEncodingFlag&&c==Hr(l,0)}),e.valid&&(i[t]=e[t],i[t+"UTF8"]=!0)}function Ir(e,t,n){return t[n]===De?e.options[n]:t[n]}function Nr(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function qr(e){return new o(i(e/s(1e4)-s(116444736e5)))}function Or(e,t){return e.getUint8(t)}function Pr(e,t){return e.getUint16(t,!0)}function Hr(e,t){return e.getUint32(t,!0)}function Mr(e,t){return i(e.getBigUint64(t,!0))}function Br(e){return new g(e.buffer)}const Vr="File already exists",Zr="Zip file comment exceeds 64KB",Kr="File entry comment exceeds 64KB",Gr="File entry name exceeds 64KB",Xr="Version exceeds 65535",Yr="The strength must equal 1, 2, or 3",jr="Extra field type exceeds 65535",Jr="Extra field data exceeds 64KB",Qr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",$r="Undefined uncompressed size",ei=new w([7,0,2,0,65,69,3,0,0]);let ti=0;const ni=[];class ri{constructor(e,t={}){const r=(e=Hn(e)).availableSize!==De&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==De&&e.maxSize>0&&e.maxSize!==1/0;n.assign(this,{writer:e,addSplitZipSignature:r,options:t,config:Ue(),files:new l,filenames:new c,offset:t.offset===De?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new c,bufferedWrites:0})}async add(e="",r,i={}){const l=this,{pendingAddFileCalls:c,config:f}=l;let _;tini.push(e)));try{if(e=e.trim(),l.filenames.has(e))throw new d(Vr);return l.filenames.add(e),_=(async(e,r,i,l)=>{r=r.trim(),l.directory&&!r.endsWith(ze)?r+=ze:l.directory=r.endsWith(ze);const c=ai(e,l,"encodeText",Be);let f=c(r);if(f===De&&(f=Be(r)),hi(f)>he)throw new d(Gr);const _=l.comment||"";let b=c(_);if(b===De&&(b=Be(_)),hi(b)>he)throw new d(Kr);const y=ai(e,l,dr,20);if(y>he)throw new d(Xr);const x=ai(e,l,wr,20);if(x>he)throw new d(Xr);const k=ai(e,l,tr,new o),S=ai(e,l,rr),z=ai(e,l,ir),A=ai(e,l,cr,!0);let C=ai(e,l,ar,0);0===C&&(C=ai(e,l,sr,0));let D=ai(e,l,lr,0);0===D&&(D=ai(e,l,or,0));const E=ai(e,l,"passThrough");let F,W;E||(F=ai(e,l,"password"),W=ai(e,l,"rawPassword"));const R=ai(e,l,"encryptionStrength",3),T=ai(e,l,hr),L=ai(e,l,"extendedTimestamp",!0),U=ai(e,l,"keepOrder",!0),I=ai(e,l,"level"),N=ai(e,l,"useWebWorkers"),q=ai(e,l,"bufferedWrite"),O=ai(e,l,"dataDescriptorSignature",!1),P=ai(e,l,"signal"),H=ai(e,l,"useUnicodeFileNames",!0),M=ai(e,l,"useCompressionStream"),B=ai(e,l,"compressionMethod");let V=ai(e,l,"dataDescriptor",!0),Z=ai(e,l,ur);if(!T&&(F!==De||W!==De)&&(1>R||R>3))throw new d(Yr);let K=new w;const{extraField:G}=l;if(G){let e=0,t=0;G.forEach((t=>e+=4+hi(t))),K=new w(e),G.forEach(((e,n)=>{if(n>he)throw new d(jr);if(hi(e)>he)throw new d(Jr);di(K,new h([n]),t),di(K,new h([hi(e)]),t+2),di(K,e,t+4),t+=4+hi(e)}))}let X=0,Y=0,j=0;if(E&&(({uncompressedSize:j}=l),j===De))throw new d($r);const J=!0===Z;i&&(i=Pn(i),await On(i),E?X=oi(j):i.size===De?(V=!0,(Z||Z===De)&&(Z=!0,j=X=4294967296)):(j=i.size,X=oi(j)));const{diskOffset:Q,diskNumber:$,maxSize:ee}=e.writer,te=J||j>we,ne=J||X>we,re=J||e.offset+e.pendingEntriesSize-Q>we,ie=ai(e,l,"supportZip64SplitFile",!0)&&J||$+a.ceil(e.pendingEntriesSize/ee)>he;if(re||te||ne||ie){if(!1===Z||!U)throw new d(Qr);Z=!0}Z=Z||!1;const se=ai(e,l,fr),{signature:ae}=l,oe=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:i,level:s,zip64:o,zipCrypto:l,useUnicodeFileNames:c,dataDescriptor:u,directory:f,rawExtraField:d,encryptionStrength:h,extendedTimestamp:g,encrypted:_}=e;let{version:m,compressionMethod:b}=e;const y=!f&&(s>0||s===De&&0!==b);let x,k,S,v;if(_&&!l){x=new w(hi(ei)+2);const e=wi(x);ci(e,0,39169),di(x,ei,2),li(e,8,h)}else x=new w;if(g){S=new w(9+(r?4:0)+(i?4:0));const e=wi(S);ci(e,0,Se),ci(e,2,hi(S)-4),v=1+(r?2:0)+(i?4:0),li(e,4,v);let t=5;ui(e,t,a.floor(n.getTime()/1e3)),t+=4,r&&(ui(e,t,a.floor(r.getTime()/1e3)),t+=4),i&&ui(e,t,a.floor(i.getTime()/1e3));try{k=new w(36);const e=wi(k),t=si(n);ci(e,0,10),ci(e,2,32),ci(e,8,1),ci(e,10,24),fi(e,12,t),fi(e,20,si(r)||t),fi(e,28,si(i)||t)}catch(e){k=new w}}else k=S=new w;let z=0;c&&(z|=ve),u&&(z|=8),b===De&&(b=y?8:0),8==b&&(s>=1&&3>s&&(z|=6),s>=3&&5>s&&(z|=1),9===s&&(z|=2)),o&&(m=m>45?m:45),_&&(z|=1,l||(m=m>51?m:51,x[9]=b,b=99));const A=new w(26),C=wi(A);ci(C,0,m),ci(C,2,z),ci(C,4,b);const D=new p(1),E=wi(D);let F;F=Ce>n?Ce:n>Ae?Ae:n,ci(E,0,(F.getHours()<<6|F.getMinutes())<<5|F.getSeconds()/2),ci(E,2,(F.getFullYear()-1980<<4|F.getMonth()+1)<<5|F.getDate());const W=D[0];ui(C,6,W),ci(C,22,hi(t));const R=hi(x,S,k,d);ci(C,24,R);const T=new w(30+hi(t)+R);return ui(wi(T),0,pe),di(T,A,4),di(T,t,30),di(T,x,30+hi(t)),di(T,S,30+hi(t,x)),di(T,k,30+hi(t,x,S)),di(T,d,30+hi(t,x,S,k)),{localHeaderArray:T,headerArray:A,headerView:C,lastModDate:n,rawLastModDate:W,encrypted:_,compressed:y,version:m,compressionMethod:b,extraFieldExtendedTimestampFlag:v,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:x,extraFieldLength:R}})(l=n.assign({},l,{rawFilename:f,rawComment:b,version:y,versionMadeBy:x,lastModDate:k,lastAccessDate:S,creationDate:z,rawExtraField:K,zip64:Z,zip64UncompressedSize:te,zip64CompressedSize:ne,zip64Offset:re,zip64DiskNumberStart:ie,password:F,rawPassword:W,level:M||e.config.CompressionStream!==De||e.config.CompressionStreamNative!==De?I:0,useWebWorkers:N,encryptionStrength:R,extendedTimestamp:L,zipCrypto:T,bufferedWrite:q,keepOrder:U,useUnicodeFileNames:H,dataDescriptor:V,dataDescriptorSignature:O,signal:P,msDosCompatible:A,internalFileAttribute:C,internalFileAttributes:C,externalFileAttribute:D,externalFileAttributes:D,useCompressionStream:M,passThrough:E,encrypted:!!(F&&hi(F)||W&&hi(W))||E&&se,signature:ae,compressionMethod:B})),le=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let i,s=new w,a=0;return n&&(s=new w(t?r?24:20:r?16:12),i=wi(s),r&&(a=4,ui(i,0,_e))),{dataDescriptorArray:s,dataDescriptorView:i,dataDescriptorOffset:a}})(l),ce=hi(oe.localHeaderArray,le.dataDescriptorArray);let ue;Y=ce+X,e.options.usdz&&(Y+=Y+64),e.pendingEntriesSize+=Y;try{ue=await(async(e,r,i,a,o)=>{const{files:l,writer:c}=e,{keepOrder:f,dataDescriptor:h,signal:p}=o,{headerInfo:_}=a,{usdz:b}=e.options,y=t.from(l.values()).pop();let x,k,S,z,A,C,D,E={};l.set(r,E);try{let t;f&&(t=y&&y.lock,E.lock=new m((e=>S=e))),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&f)&&h||b?(C=c,await F()):(C=new v,D=new u(C.readable).blob(),C.writable.size=0,x=!0,e.bufferedWrites++,await On(c)),await On(C);const{writable:_}=c;let{diskOffset:k}=c;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new w(4);ui(wi(t),0,ge),await ii(_,t),e.offset+=4}b&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:r,extraFieldLength:i}=n,s=wi(r),a=64-(t+hi(r))%64;4>a&&(a+=64);const o=new w(a),l=wi(o);ci(l,0,6534),ci(l,2,a-2);const c=r;n.localHeaderArray=r=new w(hi(c)+a),di(r,c),di(r,o,hi(c)),s=wi(r),ci(s,28,i+a),e.metadataSize+=a})(a,e.offset-k),x||(await t,await W(_));const{diskNumber:R}=c;if(A=!0,E.diskNumberStart=R,E=await(async(e,t,{diskNumberStart:r,lock:i},a,o,l)=>{const{headerInfo:c,dataDescriptorInfo:u,metadataSize:f}=a,{localHeaderArray:d,headerArray:h,lastModDate:p,rawLastModDate:g,encrypted:_,compressed:m,version:b,compressionMethod:y,rawExtraFieldExtendedTimestamp:x,extraFieldExtendedTimestampFlag:k,rawExtraFieldNTFS:S,rawExtraFieldAES:v}=c,{dataDescriptorArray:z}=u,{rawFilename:A,lastAccessDate:C,creationDate:D,password:E,rawPassword:F,level:W,zip64:R,zip64UncompressedSize:T,zip64CompressedSize:L,zip64Offset:U,zip64DiskNumberStart:I,zipCrypto:N,dataDescriptor:q,directory:O,versionMadeBy:P,rawComment:H,rawExtraField:M,useWebWorkers:B,onstart:V,onprogress:Z,onend:K,signal:G,encryptionStrength:X,extendedTimestamp:Y,msDosCompatible:j,internalFileAttributes:J,externalFileAttributes:Q,useCompressionStream:$,passThrough:ee}=l,te={lock:i,versionMadeBy:P,zip64:R,directory:!!O,filenameUTF8:!0,rawFilename:A,commentUTF8:!0,rawComment:H,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:S,rawExtraFieldAES:v,rawExtraField:M,extendedTimestamp:Y,msDosCompatible:j,internalFileAttributes:J,externalFileAttributes:Q,diskNumberStart:r};let{signature:ne,uncompressedSize:re}=l,ie=0;ee||(re=0);const{writable:se}=t;if(e){e.chunkSize=Ie(o),await ii(se,d);const t=e.readable,n=t.size=e.size,r={options:{codecType:Zt,level:W,rawPassword:F,password:E,encryptionStrength:X,zipCrypto:_&&N,passwordVerification:_&&N&&g>>8&255,signed:!ee,compressed:m&&!ee,encrypted:_&&!ee,useWebWorkers:B,useCompressionStream:$,transferStreams:!1},config:o,streamOptions:{signal:G,size:n,onstart:V,onprogress:Z,onend:K}},i=await ln({readable:t,writable:se},r);ie=i.outputSize,ee||(re=i.inputSize,ne=i.signature),se.size+=re}else await ii(se,d);let ae;if(R){let e=4;T&&(e+=8),L&&(e+=8),U&&(e+=8),I&&(e+=4),ae=new w(e)}else ae=new w;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:i,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:u}=o,{dataDescriptorView:f,dataDescriptorOffset:d}=l,{zip64:w,zip64UncompressedSize:h,zip64CompressedSize:p,zipCrypto:g,dataDescriptor:_}=t;if(u&&!g||n===De||(ui(c,10,n),_&&ui(f,d,n)),w){const e=wi(r);ci(e,0,1),ci(e,2,hi(r)-4);let t=4;h&&(ui(c,18,we),fi(e,t,s(a)),t+=8),p&&(ui(c,14,we),fi(e,t,s(i))),_&&(fi(f,d+4,s(i)),fi(f,d+12,s(a)))}else ui(c,14,i),ui(c,18,a),_&&(ui(f,d+4,i),ui(f,d+8,a))})({signature:ne,rawExtraFieldZip64:ae,compressedSize:ie,uncompressedSize:re,headerInfo:c,dataDescriptorInfo:u},l),q&&await ii(se,z),n.assign(te,{uncompressedSize:re,compressedSize:ie,lastModDate:p,rawLastModDate:g,creationDate:D,lastAccessDate:C,encrypted:_,zipCrypto:N,size:f+ie,compressionMethod:y,version:b,headerArray:h,signature:ne,rawExtraFieldZip64:ae,extraFieldExtendedTimestampFlag:k,zip64UncompressedSize:T,zip64CompressedSize:L,zip64Offset:U,zip64DiskNumberStart:I}),te})(i,C,E,a,e.config,o),A=!1,l.set(r,E),E.filename=r,x){await C.writable.getWriter().close();let e=await D;await t,await F(),z=!0,h||(e=await(async(e,t,n,{zipCrypto:r})=>{let i;i=await t.slice(0,26).arrayBuffer(),26!=i.byteLength&&(i=i.slice(0,26));const s=new g(i);return e.encrypted&&!r||ui(s,14,e.signature),e.zip64?(ui(s,18,we),ui(s,22,we)):(ui(s,18,e.compressedSize),ui(s,22,e.uncompressedSize)),await ii(n,new w(i)),t.slice(i.byteLength)})(E,e,_,o)),await W(_),E.diskNumberStart=c.diskNumber,k=c.diskOffset,await e.stream().pipeTo(_,{preventClose:!0,preventAbort:!0,signal:p}),_.size+=e.size,z=!1}if(E.offset=e.offset-k,E.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:i}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,u=wi(n);let f=4;a&&(f+=8),o&&(f+=8),l&&(fi(u,f,s(r)),f+=8),c&&ui(u,f,i)})(E,o);else if(E.offset>we)throw new d(Qr);return e.offset+=E.size,E}catch(t){if(x&&z||!x&&A){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}x?e.offset+=C.writable.size:e.offset=C.writable.size}throw l.delete(r),t}finally{x&&e.bufferedWrites--,S&&S(),k&&k()}async function F(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new m((t=>k=()=>{e.writerLocked=!1,t()})),await t}async function W(e){hi(_.localHeaderArray)>c.availableSize&&(c.availableSize=0,await ii(e,new w))}})(e,r,i,{headerInfo:oe,dataDescriptorInfo:le,metadataSize:ce},l)}finally{e.pendingEntriesSize-=Y}return n.assign(ue,{name:r,comment:_,extraField:G}),new gr(ue)})(l,e,r,i),c.add(_),await _}catch(t){throw l.filenames.delete(e),t}finally{c.delete(_);const e=ni.shift();e?e():ti--}}async close(e=new w,n={}){const{pendingAddFileCalls:r,writer:i}=this,{writable:o}=i;for(;r.size;)await m.allSettled(t.from(r));return await(async(e,n,r)=>{const{files:i,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:u}=o,f=0,h=0,p=e.offset-l,g=i.size;for(const[,e]of i){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:r,rawComment:i,rawExtraFieldNTFS:s,rawExtraField:o,extendedTimestamp:l,extraFieldExtendedTimestampFlag:c,lastModDate:u}=e;let f;if(l){f=new w(9);const e=wi(f);ci(e,0,Se),ci(e,2,5),li(e,4,c),ui(e,5,a.floor(u.getTime()/1e3))}else f=new w;e.rawExtraFieldCDExtendedTimestamp=f,h+=46+hi(t,i,n,r,s,f,o)}const _=new w(h),m=wi(_);await On(o);let b=0;for(const[e,n]of t.from(i.values()).entries()){const{offset:t,rawFilename:s,rawExtraFieldZip64:a,rawExtraFieldAES:l,rawExtraFieldCDExtendedTimestamp:u,rawExtraFieldNTFS:d,rawExtraField:w,rawComment:h,versionMadeBy:p,headerArray:g,directory:y,zip64:x,zip64UncompressedSize:k,zip64CompressedSize:S,zip64DiskNumberStart:v,zip64Offset:z,msDosCompatible:A,internalFileAttributes:C,externalFileAttributes:D,diskNumberStart:E,uncompressedSize:F,compressedSize:W}=n,R=hi(a,l,u,d,w);ui(m,f,me),ci(m,f+4,p);const T=wi(g);k||ui(T,18,F),S||ui(T,14,W),di(_,g,f+6),ci(m,f+30,R),ci(m,f+32,hi(h)),ci(m,f+34,x&&v?he:E),ci(m,f+36,C),D?ui(m,f+38,D):y&&A&&li(m,f+38,16),ui(m,f+42,x&&z?we:t),di(_,s,f+46),di(_,a,f+46+hi(s)),di(_,l,f+46+hi(s,a)),di(_,u,f+46+hi(s,a,l)),di(_,d,f+46+hi(s,a,l,u)),di(_,w,f+46+hi(s,a,l,u,d)),di(_,h,f+46+hi(s)+R);const L=46+hi(s,h)+R;if(f-b>o.availableSize&&(o.availableSize=0,await ii(c,_.slice(b,f)),b=f),f+=L,r.onprogress)try{await r.onprogress(e+1,i.size,new gr(n))}catch(e){}}await ii(c,b?_.slice(b):_);let y=o.diskNumber;const{availableSize:x}=o;ke>x&&y++;let k=ai(e,r,ur);if(p>we||h>we||g>he||y>he){if(!1===k)throw new d(Qr);k=!0}const S=new w(k?98:ke),v=wi(S);f=0,k&&(ui(v,0,ye),fi(v,4,s(44)),ci(v,12,45),ci(v,14,45),ui(v,16,y),ui(v,20,u),fi(v,24,s(g)),fi(v,32,s(g)),fi(v,40,s(h)),fi(v,48,s(p)),ui(v,56,xe),fi(v,64,s(p)+s(h)),ui(v,72,y+1),ai(e,r,"supportZip64SplitFile",!0)&&(y=he,u=he),g=he,p=we,h=we,f+=76),ui(v,f,be),ci(v,f+4,y),ci(v,f+6,u),ci(v,f+8,g),ci(v,f+10,g),ui(v,f+12,h),ui(v,f+16,p);const z=hi(n);if(z){if(z>he)throw new d(Zr);ci(v,f+20,z)}await ii(c,S),z&&await ii(c,n)})(this,e,n),ai(this,n,"preventClose")||await o.getWriter().close(),i.getData?i.getData():o}}async function ii(e,t){const n=e.getWriter();try{await n.ready,e.size+=hi(t),await n.write(t)}finally{n.releaseLock()}}function si(e){if(e)return(s(e.getTime())+s(116444736e5))*s(1e4)}function ai(e,t,n,r){const i=t[n]===De?e.options[n]:t[n];return i===De?r:i}function oi(e){return e+5*(a.floor(e/16383)+1)}function li(e,t,n){e.setUint8(t,n)}function ci(e,t,n){e.setUint16(t,n,!0)}function ui(e,t,n){e.setUint32(t,n,!0)}function fi(e,t,n){e.setBigUint64(t,n,!0)}function di(e,t,n){e.set(t,n)}function wi(e){return new g(e.buffer)}function hi(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}let pi;try{pi=void 0===x&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===x?location.href:W&&"SCRIPT"===W.tagName.toUpperCase()&&W.src||new f("zip-full.min.js",x.baseURI).href}catch(e){}((e,t={})=>{const n='const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self,k=void 0,v="undefined",S="function";class z{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const C=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;C[e]=t}class x{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^C[255&(t^e[n])];this.t=t}get(){return~this.t}}class A extends p{constructor(){let e;const t=new x;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const _={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=_.i(n);return 32===r?e.concat(t):_.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+_.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=_.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=_.i(s);return r.push(_.h(t+i&31,t+i>32?n:r.pop(),1)),r}},I={bytes:{p(e){const t=_.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},m(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}P(){const e=this;let t=e.C;const n=e.S;t=_.concat(t,[_.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.I(t.splice(0,16));return e.reset(),n}D(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}V(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.V(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.V(5,o)+n.D(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.V(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},D={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew V.R(I.bytes.m(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=_;for(t=I.bytes.m(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).P());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.U[0].update(r[0]),t.U[1].update(r[1]),t.K=new n(t.U[0])}reset(){const e=this;e.K=new e.M(e.U[0]),e.N=!1}update(e){this.N=!0,this.K.update(e)}digest(){const e=this,t=e.K.P(),n=new e.M(e.U[1]).update(t).P();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},R=typeof h!=v&&typeof h.getRandomValues==S,B="Invalid password",E="Invalid signature",M="zipjs-abort-check-password";function U(e){return R?h.getRandomValues(e):D.getRandomValues(e)}const K=16,N={name:"PBKDF2"},O=t.assign({hash:{name:"HMAC"}},N),T=t.assign({iterations:1e3,hash:{name:"SHA-1"}},N),W=["deriveBits"],j=[8,12,16],H=[16,24,32],L=10,F=[0,0,0,0],q=typeof h!=v,G=q&&h.subtle,J=q&&typeof G!=v,Q=I.bytes,X=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},Y=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=_.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return _.u(t,s)}},Z=V.R;let $=q&&J&&typeof G.importKey==S,ee=q&&J&&typeof G.deriveBits==S;class te extends p{constructor({password:e,rawPassword:n,signed:r,encryptionStrength:o,checkPasswordOnly:c}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),signed:r,X:o-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:o,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await se(e,t,n,ce(r,0,j[t])),o=ce(r,j[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(B)})(n,o,r,ce(e,0,j[o]+2)),e=ce(e,j[o]+2),c?t.error(new s(M)):f()):await a;const l=new i(e.length-L-(e.length-L)%K);t.enqueue(re(n,e,l,0,L,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;if(r&&n){await c;const f=ce(o,0,o.length-L),a=ce(o,o.length-L);let l=new i;if(f.length){const e=ae(Q,f);r.update(e);const t=n.update(e);l=fe(Q,t)}if(t){const e=ce(fe(Q,r.digest()),0,L);for(let t=0;L>t;t++)if(e[t]!=a[t])throw new s(E)}e.enqueue(l)}}})}}class ne extends p{constructor({password:e,rawPassword:n,encryptionStrength:r}){let s;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=U(new i(j[t]));return oe(r,await se(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%K);a.set(f,0),t.enqueue(re(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:r,ready:o}=this;if(n&&t){await o;let c=new i;if(r.length){const e=t.update(ae(Q,r));n.update(e),c=fe(Q,e)}s.signature=fe(Q,n.digest()).slice(0,L),e.enqueue(oe(c,s.signature))}}}),s=this}}function re(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=oe(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%K)),u=0;l-K>=u;u+=K){const e=ae(Q,ce(t,u,u+K));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(fe(Q,s),u+r)}return e.pending=ce(t,u),n}async function se(n,r,s,o){n.password=null;const c=await(async(e,t,n,r,s)=>{if(!$)return V.importKey(t);try{return await G.importKey("raw",t,n,!1,s)}catch(e){return $=!1,V.importKey(t)}})(0,s,O,0,W),f=await(async(e,t,n)=>{if(!ee)return V.B(t,e.salt,T.iterations,n);try{return await G.deriveBits(e,t,n)}catch(r){return ee=!1,V.B(t,e.salt,T.iterations,n)}})(t.assign({salt:o},T),c,8*(2*H[r]+2)),a=new i(f),l=ae(Q,ce(a,0,H[r])),u=ae(Q,ce(a,H[r],2*H[r])),w=ce(a,2*H[r]);return t.assign(n,{keys:{key:l,$:u,passwordVerification:w},Y:new Y(new X(l),e.from(F)),Z:new Z(u)}),w}function ie(e,t){return t===k?(e=>{if(typeof w==v){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),i=~e.te.get(),e.keys=[n,s,i]}function ye(e){const t=2|e.keys[2];return me(r.imul(t,1^t)>>>8)}function me(e){return 255&e}function be(e){return 4294967295&e}const ge="deflate-raw";class ke extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=Se(super.readable);i&&!c||!f||(w=new A,d=xe(d,w)),s&&(d=Ce(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=xe(d,new ue(e)):(h=new ne(e),d=xe(d,h))),ze(u,d,(()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ve extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=Se(super.readable);o&&(i?d=xe(d,new le(e)):(h=new te(e),d=xe(d,h))),a&&(d=Ce(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new A,d=xe(d,w)),ze(this,d,(()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(E)}}))}}function Se(e){return xe(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ze(e,n,r){n=xe(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Ce(e,t,n,r,s){try{e=xe(e,new(t&&r?r:s)(ge,n))}catch(r){if(!t)return e;try{e=xe(e,new s(ge,n))}catch(t){return e}}return e}function xe(e,t){return e.pipeThrough(t)}const Ae="data",_e="close";class Ie extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=ke:s.startsWith("inflate")&&(i=ve);let o=0,c=0;const f=new i(e,n),a=super.readable,l=new p({transform(e,t){e&&e.length&&(c+=e.length,t.enqueue(e))},flush(){t.assign(r,{inputSize:c})}}),u=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=f;t.assign(r,{signature:e,outputSize:o,inputSize:c})}});t.defineProperty(r,"readable",{get:()=>a.pipeThrough(l).pipeThrough(f).pipeThrough(u)})}}class Pe extends p{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new i(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}const De=new a,Ve=new a;let Re,Be=0,Ee=!0;async function Me(e){try{const{options:t,scripts:r,config:s}=e;if(r&&r.length)try{Ee?importScripts.apply(k,r):await Ue(r)}catch(e){Ee=!1,await Ue(r)}self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new z(self.Deflate)),self.Inflate&&(s.DecompressionStream=new z(self.Inflate));const i={highWaterMark:1},o=e.readable||new y({async pull(e){const t=new u((e=>De.set(Be,e)));Ke({type:"pull",messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ve.set(Be,t),Ke({type:Ae,value:e,messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new Ie(t,s);Re=new AbortController;const{signal:a}=Re;await o.pipeThrough(f).pipeThrough(new Pe(s.chunkSize)).pipeTo(c,{signal:a,preventClose:!0,preventAbort:!0}),await c.getWriter().close();const{signature:l,inputSize:w,outputSize:h}=f;Ke({type:_e,result:{signature:l,inputSize:w,outputSize:h}})}catch(e){Ne(e)}}async function Ue(e){for(const t of e)await import(t)}function Ke(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Ne(e=new s("Unknown error")){const{message:t,stack:n,code:r,name:i}=e;d({error:{message:t,stack:n,code:r,name:i}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&Me(e),t==Ae){const e=De.get(n);De.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ve.get(n);Ve.delete(n),e()}t==_e&&Re.abort()}catch(e){Ne(e)}}));const Oe=-2;function Te(t){return We(t.map((([t,n])=>new e(t).fill(n,0,t))))}function We(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?We(n):n)),[])}const je=[0,1,2,3].concat(...Te([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function He(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Le(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}He.ge=[0,1,2,3,4,5,6,7].concat(...Te([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),He.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],He.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],He.Se=e=>256>e?je[e]:je[256+(e>>>7)],He.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],He.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],He.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],He.Ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Fe=Te([[144,8],[112,9],[24,7],[8,8]]);Le._e=We([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Fe[t]])));const qe=Te([[30,5]]);function Ge(e,t,n,r,s){const i=this;i.Ie=e,i.Pe=t,i.De=n,i.Ve=r,i.Re=s}Le.Be=We([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,qe[t]]))),Le.Ee=new Le(Le._e,He.ze,257,286,15),Le.Me=new Le(Le.Be,He.Ce,0,30,15),Le.Ue=new Le(null,He.xe,0,19,7);const Je=[new Ge(0,0,0,0,0),new Ge(4,4,8,4,1),new Ge(4,5,16,8,1),new Ge(4,6,32,32,1),new Ge(4,4,16,16,2),new Ge(8,16,32,32,2),new Ge(8,16,128,128,2),new Ge(8,32,128,256,2),new Ge(32,128,258,1024,2),new Ge(32,258,258,4096,2)],Qe=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Xe=113,Ye=666,Ze=262;function $e(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function et(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,A,_,I,P,D,V,R,B,E,M,U;const K=new He,N=new He,O=new He;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)U[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?U[2*n]+=i:0!==n?(n!=r&&U[2*n]++,U[32]++):i>10?U[36]++:U[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ke[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,U)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,U),o--),Y(16,U),X(o-3,2)):o>10?(Y(18,U),X(o-11,7)):(Y(17,U),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(He.ge[n]+256+1)]++,M[2*He.Se(t)]++),!(8191&W)&&D>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+He.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ke.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;D>0?(K.ne(e),N.ne(e),o=(()=>{let t;for(G(E,K.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===U[2*He.Ae[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Le._e,Le.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(U[2*He.Ae[r]+1],3);Z(E,e-1),Z(M,t-1)})(K.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-A-C,0===s&&0===C&&0===A)s=f;else if(-1==s)s--;else if(C>=f+f-Ze){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+A,s),A+=e,3>A||(p=255&u[C],p=(p<A&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=_;const o=C>f-Ze?C-(f-Ze):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>_||(r>>=2),c>A&&(c=A);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>A?A:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],U=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Oe:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=Xe,c=0,K.re=E,K.ie=Le.Ee,N.re=M,N.ie=Le.Me,O.re=U,O.ie=Le.Ue,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve,C=0,k=0,A=0,v=_=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=Xe&&n!=Ye?Oe:(e.Oe=null,e.Ne=null,e.Ke=null,d=null,h=null,u=null,e.Fe=null,n==Xe?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Oe:(Je[D].Re!=Je[t].Re&&0!==e.qe&&(r=e.Ye(1)),D!=t&&(D=t,P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve),V=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Oe;if(3>i)return 0;for(i>f-Ze&&(i=f-Ze,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Oe;if(!r.$e||!r.et&&0!==r.We||n==Ye&&4!=i)return r.Le=Qe[4],Oe;if(0===r.tt)return r.Le=Qe[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(D-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=Xe,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=Qe[7],-5;if(n==Ye&&0!==t.We)return r.Le=Qe[7],-5;if(0!==t.We||0!==A||0!=i&&n!=Ye){switch(R=-1,Je[D].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=A){if(ie(),0===A&&0==e)return 0;if(0===A)break}if(C+=A,A=0,n=k+r,(0===C||C>=n)&&(A=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Ze&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<f-Ze||2!=V&&(v=oe(r)),3>v)n=ee(0,255&u[C]),A--,C++;else if(n=ee(C-x,v-3),A-=v,v>P||3>A)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<_&&f-Ze>=(C-s&65535)&&(2!=V&&(v=oe(s)),5>=v&&(1==V||3==v&&C-x>4096)&&(v=2)),3>_||v>_)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,A--,0===t.tt)return 0}else z=1,C++,A--;else{r=C+A-3,n=ee(C-1-S,_-3),A-=_-1,_-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Le._e),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function tt(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function nt(e){const t=new tt,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}tt.prototype={He(e,t){const n=this;return n.Fe=new et,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Oe},Qe(){const e=this;if(!e.Fe)return Oe;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Oe},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Oe},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ke.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const rt=-2,st=-3,it=-5,ot=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],ct=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ft=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],at=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],lt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ut=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],wt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ht(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,A,_,I,P;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return st;if(0>(I-=n[g]))return st;for(n[g]+=I,i[1]=k=0,C=1,_=2;0!=--g;)i[_]=k+=n[C],_++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>A+S;){if(b++,A+=S,P=m-A,P=P>S?S:P,(y=1<<(k=v-A))>p+1&&(y-=p+1,_=v,P>k))for(;++kn[++_];)y-=n[_];if(P=1<1440)return st;s[b]=x=h[0],h[0]+=P,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>A-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-A,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>A;P>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<c;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==st?f.Le="oversubscribed dynamic bit lengths tree":a!=it&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=st),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,at,lt,a,i,u,e,t),0!=h||0===i[0]?(h==st?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=st),h):(c(288),h=o(s,n,r,0,ut,wt,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==st?w.Le="oversubscribed distance tree":h==it?(w.Le="incomplete distance tree",h=st):-4!=h&&(w.Le="empty distance tree with lengths",h=st),h):0)}}function dt(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15,k=a[z+2]+(w&ot[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(64&u)return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st;f+=a[z+2],f+=w&ot[u],z=3*(l+f),u=a[z]}break}if(64&u)return 32&u?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st);if(f+=a[z+2],f+=w&ot[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,A=0,_=0;for(_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,m=p(u,w,r,h,s,d,e,y),_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=SA;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>>=n[g+1],A-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(16&k){a=15&k,i=n[g+2],t=2;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}if(32&k){t=7;break}return t=9,y.Le="invalid literal/length code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 2:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=n[g+1],A-=n[g+1],k=n[g],16&k){a=15&k,l=n[g+2],t=4;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 4:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(A-=8,v++,_--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ht.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=ct,r[0]=ft,0);const pt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function yt(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new dt;let h=0,d=new f(4320);const p=new ht;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ht.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[pt[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==st&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&ot[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,A=[],_=[],I=[],P=[],A[0]=9,_[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,A,_,I,P,d,e),0!=i)return i==st&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(A[0],_[0],d,I[0],d,P[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const mt=13,bt=[0,0,255,255];function gt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):rt}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),rt):(e.zt=r,n.gt.kt=new yt(n,1<{let n,r;if(!e||!e.gt||!e.et)return rt;const s=e.gt;for(t=4==t?it:0,n=it;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=mt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=mt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=mt,e.Le="incorrect header check",s.marker=5;break}if(!(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=mt,e.Le="need dictionary",s.marker=0,rt;case 7:if(n=s.kt.ut(e,n),n==st){s.mode=mt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case mt:return st;default:return rt}},e._t=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return rt;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return rt;const c=e.gt;if(c.mode!=mt&&(c.mode=mt,c.marker=0),0===(n=e.We))return it;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==bt[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?st:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Pt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():rt}function kt(){}function vt(e){const t=new kt,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t.At(0),c&&a===it){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}kt.prototype={xt(e){const t=this;return t.gt=new gt,e||(e=15),t.gt.xt(t,e)},At(e){const t=this;return t.gt?t.gt.At(t,e):rt},Ct(){const e=this;if(!e.gt)return rt;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):rt},_t(e,t){const n=this;return n.gt?n.gt._t(n,e,t):rt},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=nt,self.Inflate=vt};\n',r=()=>t.useDataURI?"data:text/javascript,"+encodeURIComponent(n):f.createObjectURL(new _([n],{type:"text/javascript"}));e({workerScripts:{inflate:[r],deflate:[r]}})})(Ne),Ne({Deflate:function(e){const t=new X,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(a.floor(r/16383)+1);var r;const i=new w(n);let s=e?e.level:-1;void 0===s&&(s=-1),t.deflateInit(s),t.next_out=i,this.append=(e,r)=>{let s,a,o=0,l=0,c=0;const u=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,s=t.deflate(0),0!=s)throw new d("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?u.push(new w(i)):u.push(i.subarray(0,t.next_out_index))),c+=t.next_out_index,r&&t.next_in_index>0&&t.next_in_index!=o&&(r(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return u.length>1?(a=new w(c),u.forEach((e=>{a.set(e,l),l+=e.length}))):a=u[0]?new w(u[0]):new w,a}},this.flush=()=>{let e,r,s=0,a=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw new d("deflating: "+t.msg);n-t.avail_out>0&&o.push(i.slice(0,t.next_out_index)),a+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new w(a),o.forEach((e=>{r.set(e,s),s+=e.length})),r}},Inflate:function(e){const t=new de,n=e&&e.chunkSize?a.floor(2*e.chunkSize):131072,r=new w(n);let i=!1;t.inflateInit(),t.next_out=r,this.append=(e,s)=>{const a=[];let o,l,c=0,u=0,f=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||i||(t.next_in_index=0,i=!0),o=t.inflate(0),i&&o===J){if(0!==t.avail_in)throw new d("inflating: bad input")}else if(0!==o&&1!==o)throw new d("inflating: "+t.msg);if((i||1===o)&&t.avail_in===e.length)throw new d("inflating: bad input");t.next_out_index&&(t.next_out_index===n?a.push(new w(r)):a.push(r.subarray(0,t.next_out_index))),f+=t.next_out_index,s&&t.next_in_index>0&&t.next_in_index!=c&&(s(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return a.length>1?(l=new w(f),a.forEach((e=>{l.set(e,u),u+=e.length}))):l=a[0]?new w(a[0]):new w,l}},this.flush=()=>{t.inflateEnd()}},baseURL:pi}),e.BlobReader=xn,e.BlobWriter=kn,e.Data64URIReader=class extends bn{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,i=new w(t),s=4*a.floor(e/3),o=atob(r.substring(s+n,4*a.ceil((e+t)/3)+n)),l=e-3*a.floor(s/4);for(let e=l;l+t>e;e++)i[e-l]=o.charCodeAt(e);return i}},e.Data64URIWriter=class extends yn{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,i=t.pending;const s=t.pending.length;for(t.pending="",n=0;n<3*a.floor((s+e.length)/3)-s;n++)i+=r.fromCharCode(e[n]);for(;n2?t.data+=S(i):t.pending=i}getData(){return this.data+S(this.pending)}},e.ERR_BAD_FORMAT=_r,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=yr,e.ERR_DUPLICATED_NAME=Vr,e.ERR_ENCRYPTED=Sr,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=br,e.ERR_EOCDR_NOT_FOUND=mr,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=kr,e.ERR_HTTP_RANGE=fn,e.ERR_INVALID_COMMENT=Zr,e.ERR_INVALID_ENCRYPTION_STRENGTH=Yr,e.ERR_INVALID_ENTRY_COMMENT=Kr,e.ERR_INVALID_ENTRY_NAME=Gr,e.ERR_INVALID_EXTRAFIELD_DATA=Jr,e.ERR_INVALID_EXTRAFIELD_TYPE=jr,e.ERR_INVALID_PASSWORD=je,e.ERR_INVALID_SIGNATURE=Je,e.ERR_INVALID_VERSION=Xr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=dn,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=xr,e.ERR_SPLIT_ZIP_FILE=Ar,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=$r,e.ERR_UNSUPPORTED_COMPRESSION=zr,e.ERR_UNSUPPORTED_ENCRYPTION=vr,e.ERR_UNSUPPORTED_FORMAT=Qr,e.HttpRangeReader=class extends In{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=In,e.Reader=bn,e.SplitDataReader=Nn,e.SplitDataWriter=qn,e.SplitZipReader=Bn,e.SplitZipWriter=Vn,e.TextReader=class extends xn{constructor(e){super(new _([e],{type:"text/plain"}))}},e.TextWriter=class extends kn{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new m(((i,s)=>{n.assign(t,{onload:({target:e})=>i(e.result),onerror:()=>s(t.error)}),t.readAsText(r,e)}))}}},e.Uint8ArrayReader=class extends bn{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends yn{init(e=0){n.assign(this,{offset:0,array:new w(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new w(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=yn,e.ZipReader=Wr,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:n}=new v,r=new Wr(t,e).getEntriesGenerator();this.readable=new z({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const i={...n,readable:(()=>{const{readable:e,writable:t}=new v;if(n.getData)return n.getData(t),e})()};delete i.getData,e.enqueue(i)}}),this.writable=n}},e.ZipWriter=ri,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new v;this.readable=t,this.zipWriter=new ri(n,e)}transform(e){const{readable:t,writable:n}=new v({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new v;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=Ne,e.getMimeType=()=>"application/octet-stream",e.initReader=Pn,e.initShimAsyncCodec=(e,t={},n)=>({Deflate:Oe(e.Deflate,t.deflate,n),Inflate:Oe(e.Inflate,t.inflate,n)}),e.initStream=On,e.initWriter=Hn,e.readUint8Array=Mn,e.terminateWorkers=async()=>{await m.allSettled(sn.map((e=>(cn(e),e.terminate()))))}})); diff --git a/dist/zip-no-worker-deflate.min.js b/dist/zip-no-worker-deflate.min.js index 1b3dbf83..f30d391c 100644 --- a/dist/zip-no-worker-deflate.min.js +++ b/dist/zip-no-worker-deflate.min.js @@ -1 +1 @@ -((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:r,String:n,Number:s,BigInt:a,Math:i,Date:o,Map:l,Set:c,Response:d,URL:u,Error:f,Uint8Array:p,Uint16Array:h,Uint32Array:w,DataView:m,Blob:g,Promise:_,TextEncoder:y,TextDecoder:b,document:x,crypto:S,btoa:z,TransformStream:k,ReadableStream:v,WritableStream:E,CompressionStream:R,DecompressionStream:D,navigator:T,Worker:F}="undefined"!=typeof globalThis?globalThis:this||self,A=-2;function C(e){return W(e.map((([e,r])=>new t(e).fill(r,0,e))))}function W(e){return e.reduce(((e,r)=>e.concat(t.isArray(r)?W(r):r)),[])}const N=[0,1,2,3].concat(...C([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function U(){const e=this;function t(e,t){let r=0;do{r|=1&e,e>>>=1,r<<=1}while(--t>0);return r>>>1}e.build_tree=r=>{const n=e.dyn_tree,s=e.stat_desc.static_tree,a=e.stat_desc.elems;let o,l,c,d=-1;for(r.heap_len=0,r.heap_max=573,o=0;a>o;o++)0!==n[2*o]?(r.heap[++r.heap_len]=d=o,r.depth[o]=0):n[2*o+1]=0;for(;2>r.heap_len;)c=r.heap[++r.heap_len]=2>d?++d:0,n[2*c]=1,r.depth[c]=0,r.opt_len--,s&&(r.static_len-=s[2*c+1]);for(e.max_code=d,o=i.floor(r.heap_len/2);o>=1;o--)r.pqdownheap(n,o);c=a;do{o=r.heap[1],r.heap[1]=r.heap[r.heap_len--],r.pqdownheap(n,1),l=r.heap[1],r.heap[--r.heap_max]=o,r.heap[--r.heap_max]=l,n[2*c]=n[2*o]+n[2*l],r.depth[c]=i.max(r.depth[o],r.depth[l])+1,n[2*o+1]=n[2*l+1]=c,r.heap[1]=c++,r.pqdownheap(n,1)}while(r.heap_len>=2);r.heap[--r.heap_max]=r.heap[1],(t=>{const r=e.dyn_tree,n=e.stat_desc.static_tree,s=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,i=e.stat_desc.max_length;let o,l,c,d,u,f,p=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(r[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)l=t.heap[o],d=r[2*r[2*l+1]+1]+1,d>i&&(d=i,p++),r[2*l+1]=d,l>e.max_code||(t.bl_count[d]++,u=0,a>l||(u=s[l-a]),f=r[2*l],t.opt_len+=f*(d+u),n&&(t.static_len+=f*(n[2*l+1]+u)));if(0!==p){do{for(d=i-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[i]--,p-=2}while(p>0);for(d=i;0!==d;d--)for(l=t.bl_count[d];0!==l;)c=t.heap[--o],c>e.max_code||(r[2*c+1]!=d&&(t.opt_len+=(d-r[2*c+1])*r[2*c],r[2*c+1]=d),l--)}})(r),((e,r,n)=>{const s=[];let a,i,o,l=0;for(a=1;15>=a;a++)s[a]=l=l+n[a-1]<<1;for(i=0;r>=i;i++)o=e[2*i+1],0!==o&&(e[2*i]=t(s[o]++,o))})(n,e.max_code,r.bl_count)}}function I(e,t,r,n,s){const a=this;a.static_tree=e,a.extra_bits=t,a.extra_base=r,a.elems=n,a.max_length=s}U._length_code=[0,1,2,3,4,5,6,7].concat(...C([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),U.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],U.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],U.d_code=e=>256>e?N[e]:N[256+(e>>>7)],U.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],U.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],U.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],U.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const L=C([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=W([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,L[t]])));const O=C([[30,5]]);function H(e,t,r,n,s){const a=this;a.good_length=e,a.max_lazy=t,a.nice_length=r,a.max_chain=n,a.func=s}I.static_dtree=W([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,O[t]]))),I.static_l_desc=new I(I.static_ltree,U.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,U.extra_dbits,0,30,15),I.static_bl_desc=new I(null,U.extra_blbits,0,19,7);const M=[new H(0,0,0,0,0),new H(4,4,8,4,1),new H(4,5,16,8,1),new H(4,6,32,32,1),new H(4,4,16,16,2),new H(8,16,32,32,2),new H(8,16,128,128,2),new H(8,32,128,256,2),new H(32,128,258,1024,2),new H(32,258,258,4096,2)],q=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],P=113,B=666,V=262;function Z(e,t,r,n){const s=e[2*t],a=e[2*r];return a>s||s==a&&n[t]<=n[r]}function K(){const e=this;let t,r,n,s,a,o,l,c,d,u,f,w,m,g,_,y,b,x,S,z,k,v,E,R,D,T,F,C,W,N,L,O,H;const K=new U,j=new U,X=new U;let Y,G,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)L[2*t]=0;for(t=0;30>t;t++)O[2*t]=0;for(t=0;19>t;t++)H[2*t]=0;L[512]=1,e.opt_len=e.static_len=0,G=J=0}function re(e,t){let r,n=-1,s=e[1],a=0,i=7,o=4;0===s&&(i=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)r=s,s=e[2*(l+1)+1],++aa?H[2*r]+=a:0!==r?(r!=n&&H[2*r]++,H[32]++):a>10?H[36]++:H[34]++,a=0,n=r,0===s?(i=138,o=3):r==s?(i=6,o=3):(i=7,o=4))}function ne(t){e.pending_buf[e.pending++]=t}function se(e){ne(255&e),ne(e>>>8&255)}function ae(e,t){let r;const n=t;ee>16-n?(r=e,$|=r<>>16-ee,ee+=n-16):($|=e<=r;r++)if(n=a,a=e[2*(r+1)+1],++i>=o||n!=a){if(l>i)do{ie(n,H)}while(0!=--i);else 0!==n?(n!=s&&(ie(n,H),i--),ie(16,H),ae(i-3,2)):i>10?(ie(18,H),ae(i-11,7)):(ie(17,H),ae(i-3,3));i=0,s=n,0===a?(o=138,l=3):n==a?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(se($),$=0,ee=0):8>ee||(ne(255&$),$>>>=8,ee-=8)}function ce(t,r){let n,s,a;if(e.dist_buf[G]=t,e.lc_buf[G]=255&r,G++,0===t?L[2*r]++:(J++,t--,L[2*(U._length_code[r]+256+1)]++,O[2*U.d_code(t)]++),!(8191&G)&&F>2){for(n=8*G,s=k-b,a=0;30>a;a++)n+=O[2*a]*(5+U.extra_dbits[a]);if(n>>>=3,Jo);ie(256,t),Q=t[513]}function ue(){ee>8?se($):ee>0&&ne(255&$),$=0,ee=0}function fe(t,r,n){ae(0+(n?1:0),3),((t,r)=>{ue(),Q=8,se(r),se(~r),e.pending_buf.set(c.subarray(t,t+r),e.pending),e.pending+=r})(t,r)}function pe(r){((t,r,n)=>{let s,a,i=0;F>0?(K.build_tree(e),j.build_tree(e),i=(()=>{let t;for(re(L,K.max_code),re(O,j.max_code),X.build_tree(e),t=18;t>=3&&0===H[2*U.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),s=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a>s||(s=a)):s=a=r+5,r+4>s||-1==t?a==s?(ae(2+(n?1:0),3),de(I.static_ltree,I.static_dtree)):(ae(4+(n?1:0),3),((e,t,r)=>{let n;for(ae(e-257,5),ae(t-1,5),ae(r-4,4),n=0;r>n;n++)ae(H[2*U.bl_order[n]+1],3);oe(L,e-1),oe(O,t-1)})(K.max_code+1,j.max_code+1,i+1),de(L,O)):fe(t,r,n),te(),n&&ue()})(0>b?-1:b,k-b,r),b=k,t.flush_pending()}function he(){let e,r,n,s;do{if(s=d-E-k,0===s&&0===k&&0===E)s=a;else if(-1==s)s--;else if(k>=a+a-V){c.set(c.subarray(a,a+a),0),v-=a,k-=a,b-=a,e=m,n=e;do{r=65535&f[--n],f[n]=a>r?0:r-a}while(0!=--e);e=a,n=e;do{r=65535&u[--n],u[n]=a>r?0:r-a}while(0!=--e);s+=a}if(0===t.avail_in)return;e=t.read_buf(c,k+E,s),E+=e,3>E||(w=255&c[k],w=(w<E&&0!==t.avail_in)}function we(e){let t,r,n=D,s=k,i=R;const o=k>a-V?k-(a-V):0;let d=N;const f=l,p=k+258;let h=c[s+i-1],w=c[s+i];W>R||(n>>=2),d>E&&(d=E);do{if(t=e,c[t+i]==w&&c[t+i-1]==h&&c[t]==c[s]&&c[++t]==c[s+1]){s+=2,t++;do{}while(c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&p>s);if(r=258-(p-s),s=p-258,r>i){if(v=e,i=r,r>=d)break;h=c[s+i-1],w=c[s+i]}}}while((e=65535&u[e&f])>o&&0!=--n);return i>E?E:i}e.depth=[],e.bl_count=[],e.heap=[],L=[],O=[],H=[],e.pqdownheap=(t,r)=>{const n=e.heap,s=n[r];let a=r<<1;for(;a<=e.heap_len&&(a(U||(U=8),q||(q=8),B||(B=0),t.msg=null,-1==S&&(S=6),1>q||q>9||8!=U||9>v||v>15||0>S||S>9||0>B||B>2?A:(t.dstate=e,o=v,a=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,r=P,s=0,K.dyn_tree=L,K.stat_desc=I.static_l_desc,j.dyn_tree=O,j.stat_desc=I.static_d_desc,X.dyn_tree=H,X.stat_desc=I.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*a,f[m-1]=0;for(let e=0;m-1>e;e++)f[e]=0;T=M[F].max_lazy,W=M[F].good_length,N=M[F].nice_length,D=M[F].max_chain,k=0,b=0,E=0,x=R=2,z=0,w=0})(),0))(t))),e.deflateEnd=()=>42!=r&&r!=P&&r!=B?A:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,c=null,e.dstate=null,r==P?-3:0),e.deflateParams=(e,t,r)=>{let n=0;return-1==t&&(t=6),0>t||t>9||0>r||r>2?A:(M[F].func!=M[t].func&&0!==e.total_in&&(n=e.deflate(1)),F!=t&&(F=t,T=M[F].max_lazy,W=M[F].good_length,N=M[F].nice_length,D=M[F].max_chain),C=r,n)},e.deflateSetDictionary=(e,t,n)=>{let s,i=n,o=0;if(!t||42!=r)return A;if(3>i)return 0;for(i>a-V&&(i=a-V,o=n-i),c.set(t.subarray(o,o+i),0),k=i,b=i,w=255&c[0],w=(w<=s;s++)w=(w<{let p,h,g,D,W;if(d>4||0>d)return A;if(!i.next_out||!i.next_in&&0!==i.avail_in||r==B&&4!=d)return i.msg=q[4],A;if(0===i.avail_out)return i.msg=q[7],-5;var N;if(t=i,D=s,s=d,42==r&&(h=8+(o-8<<4)<<8,g=(F-1&255)>>1,g>3&&(g=3),h|=g<<6,0!==k&&(h|=32),h+=31-h%31,r=P,ne((N=h)>>8&255),ne(255&N)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return s=-1,0}else if(0===t.avail_in&&D>=d&&4!=d)return t.msg=q[7],-5;if(r==B&&0!==t.avail_in)return i.msg=q[7],-5;if(0!==t.avail_in||0!==E||0!=d&&r!=B){switch(W=-1,M[F].func){case 0:W=(e=>{let r,s=65535;for(s>n-5&&(s=n-5);;){if(1>=E){if(he(),0===E&&0==e)return 0;if(0===E)break}if(k+=E,E=0,r=b+s,(0===k||k>=r)&&(E=k-r,k=r,pe(!1),0===t.avail_out))return 0;if(k-b>=a-V&&(pe(!1),0===t.avail_out))return 0}return pe(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 1:W=(e=>{let r,n=0;for(;;){if(V>E){if(he(),V>E&&0==e)return 0;if(0===E)break}if(3>E||(w=(w<a-V||2!=C&&(x=we(n)),3>x)r=ce(0,255&c[k]),E--,k++;else if(r=ce(k-v,x-3),E-=x,x>T||3>E)k+=x,x=0,w=255&c[k],w=(w<{let r,n,s=0;for(;;){if(V>E){if(he(),V>E&&0==e)return 0;if(0===E)break}if(3>E||(w=(w<R&&a-V>=(k-s&65535)&&(2!=C&&(x=we(s)),5>=x&&(1==C||3==x&&k-v>4096)&&(x=2)),3>R||x>R)if(0!==z){if(r=ce(0,255&c[k-1]),r&&pe(!1),k++,E--,0===t.avail_out)return 0}else z=1,k++,E--;else{n=k+E-3,r=ce(k-1-S,R-3),E-=R-1,R-=2;do{++k>n||(w=(w<1+Q+10-ee&&(ae(2,3),ie(256,I.static_ltree),le()),Q=7;else if(fe(0,0,!1),3==d)for(p=0;m>p;p++)f[p]=0;if(t.flush_pending(),0===t.avail_out)return s=-1,0}}return 4!=d?0:1}}function j(){const e=this;e.next_in_index=0,e.next_out_index=0,e.avail_in=0,e.total_in=0,e.avail_out=0,e.total_out=0}j.prototype={deflateInit(e,t){const r=this;return r.dstate=new K,t||(t=15),r.dstate.deflateInit(r,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):A},deflateEnd(){const e=this;if(!e.dstate)return A;const t=e.dstate.deflateEnd();return e.dstate=null,t},deflateParams(e,t){const r=this;return r.dstate?r.dstate.deflateParams(r,e,t):A},deflateSetDictionary(e,t){const r=this;return r.dstate?r.dstate.deflateSetDictionary(r,e,t):A},read_buf(e,t,r){const n=this;let s=n.avail_in;return s>r&&(s=r),0===s?0:(n.avail_in-=s,e.set(n.next_in.subarray(n.next_in_index,n.next_in_index+s),t),n.next_in_index+=s,n.total_in+=s,s)},flush_pending(){const e=this;let t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),0!==t&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,0===e.dstate.pending&&(e.dstate.pending_out=0))}};const X=4294967295,Y=65535,G=134695760,J=G,Q=new o(2107,11,31),$=new o(1980,0,1),ee=void 0,te="undefined",re="function";class ne{constructor(e){return class extends k{constructor(t,r){const n=new e(r);super({transform(e,t){t.enqueue(n.append(e))},flush(e){const t=n.flush();t&&e.enqueue(t)}})}}}}let se=2;try{typeof T!=te&&T.hardwareConcurrency&&(se=T.hardwareConcurrency)}catch(e){}const ae={chunkSize:524288,maxWorkers:se,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:ee,CompressionStreamNative:typeof R!=te&&R,DecompressionStreamNative:typeof D!=te&&D},ie=r.assign({},ae);function oe(){return ie}function le(e){const{baseURL:r,chunkSize:n,maxWorkers:s,terminateWorkerTimeout:a,useCompressionStream:i,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:u,workerScripts:p}=e;if(ce("baseURL",r),ce("chunkSize",n),ce("maxWorkers",s),ce("terminateWorkerTimeout",a),ce("useCompressionStream",i),ce("useWebWorkers",o),l&&(ie.CompressionStream=new ne(l)),c&&(ie.DecompressionStream=new ne(c)),ce("CompressionStream",d),ce("DecompressionStream",u),p!==ee){const{deflate:e,inflate:r}=p;if((e||r)&&(ie.workerScripts||(ie.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");ie.workerScripts.deflate=e}if(r){if(!t.isArray(r))throw new f("workerScripts.inflate must be an array");ie.workerScripts.inflate=r}}}function ce(e,t){t!==ee&&(ie[e]=t)}const de=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;de[e]=t}class ue{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let r=0,n=0|e.length;n>r;r++)t=t>>>8^de[255&(t^e[r])];this.crc=t}get(){return~this.crc}}class fe extends k{constructor(){let e;const t=new ue;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new p(4);new m(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}function pe(e){if(typeof y==te){const t=new p((e=unescape(encodeURIComponent(e))).length);for(let r=0;r0&&t&&(e[r-1]=he.partial(t,e[r-1]&2147483648>>t-1,1)),e},partial:(e,t,r)=>32===e?t:(r?0|t:t<<32-e)+1099511627776*e,getPartial:e=>i.round(e/1099511627776)||32,_shiftRight(e,t,r,n){for(void 0===n&&(n=[]);t>=32;t-=32)n.push(r),r=0;if(0===t)return n.concat(e);for(let s=0;s>>t),r=e[s]<<32-t;const s=e.length?e[e.length-1]:0,a=he.getPartial(s);return n.push(he.partial(t+a&31,t+a>32?r:n.pop(),1)),n}},we={bytes:{fromBits(e){const t=he.bitLength(e)/8,r=new p(t);let n;for(let s=0;t>s;s++)3&s||(n=e[s/4]),r[s]=n>>>24,n<<=8;return r},toBits(e){const t=[];let r,n=0;for(r=0;r9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new w(r);let i=0;for(let e=t.blockSize+n-(t.blockSize+n&t.blockSize-1);s>=e;e+=t.blockSize)t._block(a.subarray(16*i,16*(i+1))),i+=1;return r.splice(0,16*i),t}finalize(){const e=this;let t=e._buffer;const r=e._h;t=he.concat(t,[he.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(i.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),r}_f(e,t,r,n){return e>19?e>39?e>59?e>79?void 0:t^r^n:t&r|t&n|r&n:t^r^n:t&r|~t&n}_S(e,t){return t<>>32-e}_block(e){const r=this,n=r._h,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let a=n[0],o=n[1],l=n[2],c=n[3],d=n[4];for(let e=0;79>=e;e++){16>e||(s[e]=r._S(1,s[e-3]^s[e-8]^s[e-14]^s[e-16]));const t=r._S(5,a)+r._f(e,o,l,c)+d+s[e]+r._key[i.floor(e/20)]|0;d=c,c=l,l=r._S(30,o),o=a,a=t}n[0]=n[0]+a|0,n[1]=n[1]+o|0,n[2]=n[2]+l|0,n[3]=n[3]+c|0,n[4]=n[4]+d|0}},ge={getRandomValues(e){const t=new w(e.buffer),r=e=>{let t=987654321;const r=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&r,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&r)&r)/4294967296+.5)*(i.random()>.5?1:-1))};for(let n,s=0;snew _e.hmacSha1(we.bytes.toBits(e)),pbkdf2(e,t,r,n){if(r=r||1e4,0>n||0>r)throw new f("invalid params to pbkdf2");const s=1+(n>>5)<<2;let a,i,o,l,c;const d=new ArrayBuffer(s),u=new m(d);let p=0;const h=he;for(t=we.bytes.toBits(t),c=1;(s||1)>p;c++){for(a=i=e.encrypt(h.concat(t,[c])),o=1;r>o;o++)for(i=e.encrypt(i),l=0;lp&&os&&(e=(new r).update(e).finalize());for(let t=0;s>t;t++)n[0][t]=909522486^e[t],n[1][t]=1549556828^e[t];t._baseHash[0].update(n[0]),t._baseHash[1].update(n[1]),t._resultHash=new r(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),r=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),r}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},ye=typeof S!=te&&typeof S.getRandomValues==re,be="Invalid password",xe="Invalid signature",Se="zipjs-abort-check-password";function ze(e){return ye?S.getRandomValues(e):ge.getRandomValues(e)}const ke=16,ve={name:"PBKDF2"},Ee=r.assign({hash:{name:"HMAC"}},ve),Re=r.assign({iterations:1e3,hash:{name:"SHA-1"}},ve),De=["deriveBits"],Te=[8,12,16],Fe=[16,24,32],Ae=10,Ce=[0,0,0,0],We=typeof S!=te,Ne=We&&S.subtle,Ue=We&&typeof Ne!=te,Ie=we.bytes,Le=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const r=t._tables[0][4],n=t._tables[1],s=e.length;let a,i,o,l=1;if(4!==s&&6!==s&&8!==s)throw new f("invalid aes key size");for(t._key=[i=e.slice(0),o=[]],a=s;4*s+28>a;a++){let e=i[a-1];(a%s==0||8===s&&a%s==4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],a%s==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),i[a]=i[a-s]^e}for(let e=0;a;e++,a--){const t=i[3&e?a:a-4];o[e]=4>=a||4>e?t:n[0][r[t>>>24]]^n[1][r[t>>16&255]]^n[2][r[t>>8&255]]^n[3][r[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],r=e[4],n=t[4],s=[],a=[];let i,o,l,c;for(let e=0;256>e;e++)a[(s[e]=e<<1^283*(e>>7))^e]=e;for(let d=i=0;!r[d];d^=o||1,i=a[i]||1){let a=i^i<<1^i<<2^i<<3^i<<4;a=a>>8^255&a^99,r[d]=a,n[a]=d,c=s[l=s[o=s[d]]];let u=16843009*c^65537*l^257*o^16843008*d,f=257*s[a]^16843008*a;for(let r=0;4>r;r++)e[r][d]=f=f<<24^f>>>8,t[r][a]=u=u<<24^u>>>8}for(let r=0;5>r;r++)e[r]=e[r].slice(0),t[r]=t[r].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const r=this._key[t],n=r.length/4-2,s=[0,0,0,0],a=this._tables[t],i=a[0],o=a[1],l=a[2],c=a[3],d=a[4];let u,p,h,w=e[0]^r[0],m=e[t?3:1]^r[1],g=e[2]^r[2],_=e[t?1:3]^r[3],y=4;for(let e=0;n>e;e++)u=i[w>>>24]^o[m>>16&255]^l[g>>8&255]^c[255&_]^r[y],p=i[m>>>24]^o[g>>16&255]^l[_>>8&255]^c[255&w]^r[y+1],h=i[g>>>24]^o[_>>16&255]^l[w>>8&255]^c[255&m]^r[y+2],_=i[_>>>24]^o[w>>16&255]^l[m>>8&255]^c[255&g]^r[y+3],y+=4,w=u,m=p,g=h;for(let e=0;4>e;e++)s[t?3&-e:e]=d[w>>>24]<<24^d[m>>16&255]<<16^d[g>>8&255]<<8^d[255&_]^r[y++],u=w,w=m,m=g,g=_,_=u;return s}},Oe=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,r=e>>8&255,n=255&e;255===t?(t=0,255===r?(r=0,255===n?n=0:++n):++r):++t,e=0,e+=t<<16,e+=r<<8,e+=n}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,r){let n;if(!(n=t.length))return[];const s=he.bitLength(t);for(let s=0;n>s;s+=4){this.incCounter(r);const n=e.encrypt(r);t[s]^=n[0],t[s+1]^=n[1],t[s+2]^=n[2],t[s+3]^=n[3]}return he.clamp(t,s)}},He=_e.hmacSha1;let Me=We&&Ue&&typeof Ne.importKey==re,qe=We&&Ue&&typeof Ne.deriveBits==re;class Pe extends k{constructor({password:e,rawPassword:t,signed:n,encryptionStrength:s,checkPasswordOnly:a}){super({start(){r.assign(this,{ready:new _((e=>this.resolveReady=e)),password:Ke(e,t),signed:n,strength:s-1,pending:new p})},async transform(e,t){const r=this,{password:n,strength:s,resolveReady:i,ready:o}=r;n?(await(async(e,t,r,n)=>{const s=await Ze(e,t,r,Xe(n,0,Te[t])),a=Xe(n,Te[t]);if(s[0]!=a[0]||s[1]!=a[1])throw new f(be)})(r,s,n,Xe(e,0,Te[s]+2)),e=Xe(e,Te[s]+2),a?t.error(new f(Se)):i()):await o;const l=new p(e.length-Ae-(e.length-Ae)%ke);t.enqueue(Ve(r,e,l,0,Ae,!0))},async flush(e){const{signed:t,ctr:r,hmac:n,pending:s,ready:a}=this;if(n&&r){await a;const i=Xe(s,0,s.length-Ae),o=Xe(s,s.length-Ae);let l=new p;if(i.length){const e=Ge(Ie,i);n.update(e);const t=r.update(e);l=Ye(Ie,t)}if(t){const e=Xe(Ye(Ie,n.digest()),0,Ae);for(let t=0;Ae>t;t++)if(e[t]!=o[t])throw new f(xe)}e.enqueue(l)}}})}}class Be extends k{constructor({password:e,rawPassword:t,encryptionStrength:n}){let s;super({start(){r.assign(this,{ready:new _((e=>this.resolveReady=e)),password:Ke(e,t),strength:n-1,pending:new p})},async transform(e,t){const r=this,{password:n,strength:s,resolveReady:a,ready:i}=r;let o=new p;n?(o=await(async(e,t,r)=>{const n=ze(new p(Te[t]));return je(n,await Ze(e,t,r,n))})(r,s,n),a()):await i;const l=new p(o.length+e.length-e.length%ke);l.set(o,0),t.enqueue(Ve(r,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:r,pending:n,ready:a}=this;if(r&&t){await a;let i=new p;if(n.length){const e=t.update(Ge(Ie,n));r.update(e),i=Ye(Ie,e)}s.signature=Ye(Ie,r.digest()).slice(0,Ae),e.enqueue(je(i,s.signature))}}}),s=this}}function Ve(e,t,r,n,s,a){const{ctr:i,hmac:o,pending:l}=e,c=t.length-s;let d;for(l.length&&(t=je(l,t),r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new p(t)).set(r,0)}return e})(r,c-c%ke)),d=0;c-ke>=d;d+=ke){const e=Ge(Ie,Xe(t,d,d+ke));a&&o.update(e);const s=i.update(e);a||o.update(s),r.set(Ye(Ie,s),d+n)}return e.pending=Xe(t,d),r}async function Ze(e,n,s,a){e.password=null;const i=await(async(e,t,r,n,s)=>{if(!Me)return _e.importKey(t);try{return await Ne.importKey("raw",t,r,!1,s)}catch(e){return Me=!1,_e.importKey(t)}})(0,s,Ee,0,De),o=await(async(e,t,r)=>{if(!qe)return _e.pbkdf2(t,e.salt,Re.iterations,r);try{return await Ne.deriveBits(e,t,r)}catch(n){return qe=!1,_e.pbkdf2(t,e.salt,Re.iterations,r)}})(r.assign({salt:a},Re),i,8*(2*Fe[n]+2)),l=new p(o),c=Ge(Ie,Xe(l,0,Fe[n])),d=Ge(Ie,Xe(l,Fe[n],2*Fe[n])),u=Xe(l,2*Fe[n]);return r.assign(e,{keys:{key:c,authentication:d,passwordVerification:u},ctr:new Oe(new Le(c),t.from(Ce)),hmac:new He(d)}),u}function Ke(e,t){return t===ee?pe(e):t}function je(e,t){let r=e;return e.length+t.length&&(r=new p(e.length+t.length),r.set(e,0),r.set(t,e.length)),r}function Xe(e,t,r){return e.subarray(t,r)}function Ye(e,t){return e.fromBits(t)}function Ge(e,t){return e.toBits(t)}class Je extends k{constructor({password:e,passwordVerification:t,checkPasswordOnly:n}){super({start(){r.assign(this,{password:e,passwordVerification:t}),tt(this,e)},transform(e,t){const r=this;if(r.password){const t=$e(r,e.subarray(0,12));if(r.password=null,t[11]!=r.passwordVerification)throw new f(be);e=e.subarray(12)}n?t.error(new f(Se)):t.enqueue($e(r,e))}})}}class Qe extends k{constructor({password:e,passwordVerification:t}){super({start(){r.assign(this,{password:e,passwordVerification:t}),tt(this,e)},transform(e,t){const r=this;let n,s;if(r.password){r.password=null;const t=ze(new p(12));t[11]=r.passwordVerification,n=new p(e.length+t.length),n.set(et(r,t),0),s=12}else n=new p(e.length),s=0;n.set(et(r,e),s),t.enqueue(n)}})}}function $e(e,t){const r=new p(t.length);for(let n=0;n>>24]),s=~e.crcKey2.get(),e.keys=[r,n,s]}function nt(e){const t=2|e.keys[2];return st(i.imul(t,1^t)>>>8)}function st(e){return 255&e}function at(e){return 4294967295&e}const it="deflate-raw";class ot extends k{constructor(e,{chunkSize:t,CompressionStream:r,CompressionStreamNative:n}){super({});const{compressed:s,encrypted:a,useCompressionStream:i,zipCrypto:o,signed:l,level:c}=e,d=this;let u,f,p=ct(super.readable);a&&!o||!l||(u=new fe,p=ft(p,u)),s&&(p=ut(p,i,{level:c,chunkSize:t},n,r)),a&&(o?p=ft(p,new Qe(e)):(f=new Be(e),p=ft(p,f))),dt(d,p,(()=>{let e;a&&!o&&(e=f.signature),a&&!o||!l||(e=new m(u.value.buffer).getUint32(0)),d.signature=e}))}}class lt extends k{constructor(e,{chunkSize:t,DecompressionStream:r,DecompressionStreamNative:n}){super({});const{zipCrypto:s,encrypted:a,signed:i,signature:o,compressed:l,useCompressionStream:c}=e;let d,u,p=ct(super.readable);a&&(s?p=ft(p,new Je(e)):(u=new Pe(e),p=ft(p,u))),l&&(p=ut(p,c,{chunkSize:t},n,r)),a&&!s||!i||(d=new fe,p=ft(p,d)),dt(this,p,(()=>{if((!a||s)&&i){const e=new m(d.value.buffer);if(o!=e.getUint32(0,!1))throw new f(xe)}}))}}function ct(e){return ft(e,new k({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function dt(e,t,n){t=ft(t,new k({flush:n})),r.defineProperty(e,"readable",{get:()=>t})}function ut(e,t,r,n,s){try{e=ft(e,new(t&&n?n:s)(it,r))}catch(n){if(!t)return e;try{e=ft(e,new s(it,r))}catch(t){return e}}return e}function ft(e,t){return e.pipeThrough(t)}const pt="data",ht="close",wt="deflate";class mt extends k{constructor(e,t){super({});const n=this,{codecType:s}=e;let a;s.startsWith(wt)?a=ot:s.startsWith("inflate")&&(a=lt);let i=0,o=0;const l=new a(e,t),c=super.readable,d=new k({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){r.assign(n,{inputSize:o})}}),u=new k({transform(e,t){e&&e.length&&(i+=e.length,t.enqueue(e))},flush(){const{signature:e}=l;r.assign(n,{signature:e,outputSize:i,inputSize:o})}});r.defineProperty(n,"readable",{get:()=>c.pipeThrough(d).pipeThrough(l).pipeThrough(u)})}}class gt extends k{constructor(e){let t;super({transform:function r(n,s){if(t){const e=new p(t.length+n.length);e.set(t),e.set(n,t.length),n=e,t=null}n.length>e?(s.enqueue(n.slice(0,e)),r(n.slice(e),s)):t=n},flush(e){t&&t.length&&e.enqueue(t)}})}}let _t=typeof F!=te;class yt{constructor(e,{readable:t,writable:n},{options:s,config:a,streamOptions:i,useWebWorkers:o,transferStreams:l,scripts:c},d){const{signal:u}=i;return r.assign(e,{busy:!0,readable:t.pipeThrough(new gt(a.chunkSize)).pipeThrough(new bt(t,i),{signal:u}),writable:n,options:r.assign({},s),scripts:c,transferStreams:l,terminate:()=>new _((t=>{const{worker:r,busy:n}=e;r?(n?e.resolveTerminated=t:(r.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,d(e)}}),(o&&_t?zt:St)(e,a)}}class bt extends k{constructor(e,{onstart:t,onprogress:r,size:n,onend:s}){let a=0;super({async start(){t&&await xt(t,n)},async transform(e,t){a+=e.length,r&&await xt(r,a,n),t.enqueue(e)},async flush(){e.size=a,s&&await xt(s,a)}})}}async function xt(e,...t){try{await e(...t)}catch(e){}}function St(e,t){return{run:()=>(async({options:e,readable:t,writable:r,onTaskFinished:n},s)=>{try{const n=new mt(e,s);await t.pipeThrough(n).pipeTo(r,{preventClose:!0,preventAbort:!0});const{signature:a,inputSize:i,outputSize:o}=n;return{signature:a,inputSize:i,outputSize:o}}finally{n()}})(e,t)}}function zt(e,t){const{baseURL:n,chunkSize:s}=t;if(!e.interface){let a;try{a=((e,t,n)=>{const s={type:"module"};let a,i;typeof e==re&&(e=e());try{a=new u(e,t)}catch(t){a=e}if(kt)try{i=new F(a)}catch(e){kt=!1,i=new F(a,s)}else i=new F(a,s);return i.addEventListener("message",(e=>(async({data:e},t)=>{const{type:n,value:s,messageId:a,result:i,error:o}=e,{reader:l,writer:c,resolveResult:d,rejectResult:u,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:n,name:s}=o,a=new f(e);r.assign(a,{stack:t,code:n,name:s}),w(a)}else{if("pull"==n){const{value:e,done:r}=await l.read();Et({type:pt,value:e,done:r,messageId:a},t)}n==pt&&(await c.ready,await c.write(new p(s)),Et({type:"ack",messageId:a},t)),n==ht&&w(null,i)}}catch(o){Et({type:ht,messageId:a},t),w(o)}function w(e,t){e?u(e):d(t),c&&c.releaseLock(),h()}})(e,n))),i})(e.scripts[0],n,e)}catch(r){return _t=!1,St(e,t)}r.assign(e,{worker:a,interface:{run:()=>(async(e,t)=>{let n,s;const a=new _(((e,t)=>{n=e,s=t}));r.assign(e,{reader:null,writer:null,resolveResult:n,rejectResult:s,result:a});const{readable:i,options:o,scripts:l}=e,{writable:c,closed:d}=(e=>{let t;const r=new _((e=>t=e));return{writable:new E({async write(t){const r=e.getWriter();await r.ready,await r.write(t),r.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:r}})(e.writable),u=Et({type:"start",scripts:l.slice(1),options:o,config:t,readable:i,writable:c},e);u||r.assign(e,{reader:i.getReader(),writer:c.getWriter()});const f=await a;return u||await c.getWriter().close(),await d,f})(e,{chunkSize:s})}})}return e.interface}let kt=!0,vt=!0;function Et(e,{worker:t,writer:r,onTaskFinished:n,transferStreams:s}){try{const{value:r,readable:n,writable:a}=e,i=[];if(r&&(r.byteLengtha?n.close():this.chunkOffset+=t}});return r}}class qt extends Ht{constructor(){super();const e=this,t=new E({write:t=>e.writeUint8Array(t)});r.defineProperty(e,Ot,{get:()=>t})}writeUint8Array(){}}class Pt extends Mt{constructor(e){super(),r.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const r=this,n=e+t,s=e||nt&&(a=a.slice(e,n)),new p(a)}}class Bt extends Ht{constructor(e){super();const t=new k,n=[];e&&n.push(["Content-Type",e]),r.defineProperty(this,Ot,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:n}).blob()}getData(){return this.blob}}class Vt extends Mt{constructor(e,t){super(),Kt(this,e,t)}async init(){await jt(this,tr,Jt),super.init()}readUint8Array(e,t){return Xt(this,e,t,tr,Jt)}}class Zt extends Mt{constructor(e,t){super(),Kt(this,e,t)}async init(){await jt(this,rr,Qt),super.init()}readUint8Array(e,t){return Xt(this,e,t,rr,Qt)}}function Kt(e,t,n){const{preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:o}=n;delete(n=r.assign({},n)).preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.combineSizeEocd,delete n.useXHR,r.assign(e,{url:t,options:n,preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:o})}async function jt(e,t,r){const{url:n,preventHeadRequest:a,useRangeHeader:i,forceRangeRequests:o,combineSizeEocd:l}=e;if((e=>{const{baseURL:t}=oe(),{protocol:r}=new u(e,t);return"http:"==r||"https:"==r})(n)&&(i||o)&&(void 0===a||a)){const n=await t(Ut,e,Yt(e,l?-22:void 0));if(!o&&n.headers.get("Accept-Ranges")!=It)throw new f(Ct);{let a;l&&(e.eocdCache=new p(await n.arrayBuffer()));const i=n.headers.get("Content-Range");if(i){const e=i.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=s(t))}}a===ee?await er(e,t,r):e.size=a}}else await er(e,t,r)}async function Xt(e,t,r,n,s){const{useRangeHeader:a,forceRangeRequests:i,eocdCache:o,size:l,options:c}=e;if(a||i){if(o&&t==l-22&&22==r)return o;const s=await n(Ut,e,Yt(e,t,r));if(206!=s.status)throw new f(Ct);return new p(await s.arrayBuffer())}{const{data:n}=e;return n||await s(e,c),new p(e.data.subarray(t,t+r))}}function Yt(e,t=0,n=1){return r.assign({},Gt(e),{[Nt]:It+"="+(0>t?t:t+"-"+(t+n-1))})}function Gt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?r.fromEntries(t):t}async function Jt(e){await $t(e,tr)}async function Qt(e){await $t(e,rr)}async function $t(e,t){const r=await t(Ut,e,Gt(e));e.data=new p(await r.arrayBuffer()),e.size||(e.size=e.data.length)}async function er(e,t,r){if(e.preventHeadRequest)await r(e,e.options);else{const n=(await t("HEAD",e,Gt(e))).headers.get("Content-Length");n?e.size=s(n):await r(e,e.options)}}async function tr(e,{options:t,url:n},s){const a=await fetch(n,r.assign({},t,{method:e,headers:s}));if(400>a.status)return a;throw 416==a.status?new f(Ct):new f(At+(a.statusText||a.status))}function rr(e,{url:t},n){return new _(((s,a)=>{const i=new XMLHttpRequest;if(i.addEventListener("load",(()=>{if(400>i.status){const e=[];i.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const r=t.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(r)})),s({status:i.status,arrayBuffer:()=>i.response,headers:new l(e)})}else a(416==i.status?new f(Ct):new f(At+(i.statusText||i.status)))}),!1),i.addEventListener("error",(e=>a(e.detail?e.detail.error:new f("Network error"))),!1),i.open(e,t),n)for(const e of r.entries(n))i.setRequestHeader(e[0],e[1]);i.responseType="arraybuffer",i.send()}))}class nr extends Mt{constructor(e,t={}){super(),r.assign(this,{url:e,reader:t.useXHR?new Zt(e,t):new Vt(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class sr extends Mt{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await _.all(t.map((async(r,n)=>{await r.init(),n!=t.length-1&&(e.lastDiskOffset+=r.size),e.size+=r.size}))),super.init()}async readUint8Array(e,t,r=0){const n=this,{readers:s}=this;let a,o=r;-1==o&&(o=s.length-1);let l=e;for(;l>=s[o].size;)l-=s[o].size,o++;const c=s[o],d=c.size;if(l+t>d){const s=d-l;a=new p(t),a.set(await cr(c,l,s)),a.set(await n.readUint8Array(e+s,t-s,r),s)}else a=await cr(c,l,t);return n.lastDiskNumber=i.max(o,n.lastDiskNumber),a}}class ar extends Ht{constructor(e,t=4294967295){super();const n=this;let s,a,i;r.assign(n,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new E({async write(t){const{availableSize:r}=n;if(i)t.lengtho})}}async function ir(e,t){if(!e.init||e.initialized)return _.resolve();await e.init(t)}function or(e){return t.isArray(e)&&(e=new sr(e)),e instanceof v&&(e={readable:e}),e}function lr(e){e.writable===ee&&typeof e.next==re&&(e=new ar(e)),e instanceof E&&(e={writable:e});const{writable:t}=e;return t.size===ee&&(t.size=0),e instanceof ar||r.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function cr(e,t,r,n){return e.readUint8Array(t,r,n)}const dr=sr,ur=ar,fr="diskNumberStart",pr="lastModDate",hr="lastAccessDate",wr="creationDate",mr="internalFileAttribute",gr="externalFileAttribute",_r="msDosCompatible",yr="zip64",br="encrypted",xr="version",Sr="versionMadeBy",zr="zipCrypto",kr=["filename","rawFilename","compressedSize","uncompressedSize",pr,"rawLastModDate","comment","rawComment",hr,wr,"offset",fr,fr,mr,gr,_r,yr,br,xr,Sr,zr,"directory","bitFlag","signature","filenameUTF8","commentUTF8","compressionMethod","extraField","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class vr{constructor(e){kr.forEach((t=>this[t]=e[t]))}}const Er="File already exists",Rr="Zip file comment exceeds 64KB",Dr="File entry comment exceeds 64KB",Tr="File entry name exceeds 64KB",Fr="Version exceeds 65535",Ar="The strength must equal 1, 2, or 3",Cr="Extra field type exceeds 65535",Wr="Extra field data exceeds 64KB",Nr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Ur="Undefined uncompressed size",Ir=new p([7,0,2,0,65,69,3,0,0]);let Lr=0;const Or=[];class Hr{constructor(e,t={}){const n=(e=lr(e)).availableSize!==ee&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==ee&&e.maxSize>0&&e.maxSize!==1/0;r.assign(this,{writer:e,addSplitZipSignature:n,options:t,config:oe(),files:new l,filenames:new c,offset:t.offset===ee?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new c,bufferedWrites:0})}async add(e="",n,l={}){const c=this,{pendingAddFileCalls:u,config:g}=c;let y;LrOr.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new f(Er);return c.filenames.add(e),y=(async(e,n,l,c)=>{n=n.trim(),c.directory&&!n.endsWith("/")?n+="/":c.directory=n.endsWith("/");const u=Pr(e,c,"encodeText",pe);let g=u(n);if(g===ee&&(g=pe(n)),Gr(g)>Y)throw new f(Tr);const y=c.comment||"";let b=u(y);if(b===ee&&(b=pe(y)),Gr(b)>Y)throw new f(Dr);const x=Pr(e,c,xr,20);if(x>Y)throw new f(Fr);const S=Pr(e,c,Sr,20);if(S>Y)throw new f(Fr);const z=Pr(e,c,pr,new o),v=Pr(e,c,hr),E=Pr(e,c,wr),R=Pr(e,c,_r,!0),D=Pr(e,c,mr,0),T=Pr(e,c,gr,0),F=Pr(e,c,"passThrough");let A,C;F||(A=Pr(e,c,"password"),C=Pr(e,c,"rawPassword"));const W=Pr(e,c,"encryptionStrength",3),N=Pr(e,c,zr),U=Pr(e,c,"extendedTimestamp",!0),I=Pr(e,c,"keepOrder",!0),L=Pr(e,c,"level"),O=Pr(e,c,"useWebWorkers"),H=Pr(e,c,"bufferedWrite"),M=Pr(e,c,"dataDescriptorSignature",!1),q=Pr(e,c,"signal"),P=Pr(e,c,"useUnicodeFileNames",!0),B=Pr(e,c,"useCompressionStream"),V=Pr(e,c,"compressionMethod");let Z=Pr(e,c,"dataDescriptor",!0),K=Pr(e,c,yr);if(!N&&(A!==ee||C!==ee)&&(1>W||W>3))throw new f(Ar);let j=new p;const{extraField:te}=c;if(te){let e=0,t=0;te.forEach((t=>e+=4+Gr(t))),j=new p(e),te.forEach(((e,r)=>{if(r>Y)throw new f(Cr);if(Gr(e)>Y)throw new f(Wr);Xr(j,new h([r]),t),Xr(j,new h([Gr(e)]),t+2),Xr(j,e,t+4),t+=4+Gr(e)}))}let re=0,ne=0,se=0;if(F&&(({uncompressedSize:se}=c),se===ee))throw new f(Ur);const ae=!0===K;l&&(l=or(l),await ir(l),F?re=Br(se):l.size===ee?(Z=!0,(K||K===ee)&&(K=!0,se=re=4294967296)):(se=l.size,re=Br(se)));const{diskOffset:ie,diskNumber:oe,maxSize:le}=e.writer,ce=ae||se>X,de=ae||re>X,ue=ae||e.offset+e.pendingEntriesSize-ie>X,fe=Pr(e,c,"supportZip64SplitFile",!0)&&ae||oe+i.ceil(e.pendingEntriesSize/le)>Y;if(ue||ce||de||fe){if(!1===K||!I)throw new f(Nr);K=!0}K=K||!1;const he=Pr(e,c,br),{signature:we}=c,me=(e=>{const{rawFilename:t,lastModDate:r,lastAccessDate:n,creationDate:s,level:a,zip64:o,zipCrypto:l,useUnicodeFileNames:c,dataDescriptor:d,directory:u,rawExtraField:f,encryptionStrength:h,extendedTimestamp:m,encrypted:g}=e;let{version:_,compressionMethod:y}=e;const b=!u&&(a>0||a===ee&&0!==y);let x,S,z,k;if(g&&!l){x=new p(Gr(Ir)+2);const e=Yr(x);Zr(e,0,39169),Xr(x,Ir,2),Vr(e,8,h)}else x=new p;if(m){z=new p(9+(n?4:0)+(s?4:0));const e=Yr(z);Zr(e,0,21589),Zr(e,2,Gr(z)-4),k=1+(n?2:0)+(s?4:0),Vr(e,4,k);let t=5;Kr(e,t,i.floor(r.getTime()/1e3)),t+=4,n&&(Kr(e,t,i.floor(n.getTime()/1e3)),t+=4),s&&Kr(e,t,i.floor(s.getTime()/1e3));try{S=new p(36);const e=Yr(S),t=qr(r);Zr(e,0,10),Zr(e,2,32),Zr(e,8,1),Zr(e,10,24),jr(e,12,t),jr(e,20,qr(n)||t),jr(e,28,qr(s)||t)}catch(e){S=new p}}else S=z=new p;let v=0;c&&(v|=2048),d&&(v|=8),y===ee&&(y=b?8:0),8==y&&(a>=1&&3>a&&(v|=6),a>=3&&5>a&&(v|=1),9===a&&(v|=2)),o&&(_=_>45?_:45),g&&(v|=1,l||(_=_>51?_:51,x[9]=y,y=99));const E=new p(26),R=Yr(E);Zr(R,0,_),Zr(R,2,v),Zr(R,4,y);const D=new w(1),T=Yr(D);let F;F=$>r?$:r>Q?Q:r,Zr(T,0,(F.getHours()<<6|F.getMinutes())<<5|F.getSeconds()/2),Zr(T,2,(F.getFullYear()-1980<<4|F.getMonth()+1)<<5|F.getDate());const A=D[0];Kr(R,6,A),Zr(R,22,Gr(t));const C=Gr(x,z,S,f);Zr(R,24,C);const W=new p(30+Gr(t)+C);return Kr(Yr(W),0,67324752),Xr(W,E,4),Xr(W,t,30),Xr(W,x,30+Gr(t)),Xr(W,z,30+Gr(t,x)),Xr(W,S,30+Gr(t,x,z)),Xr(W,f,30+Gr(t,x,z,S)),{localHeaderArray:W,headerArray:E,headerView:R,lastModDate:r,rawLastModDate:A,encrypted:g,compressed:b,version:_,compressionMethod:y,extraFieldExtendedTimestampFlag:k,rawExtraFieldExtendedTimestamp:z,rawExtraFieldNTFS:S,rawExtraFieldAES:x,extraFieldLength:C}})(c=r.assign({},c,{rawFilename:g,rawComment:b,version:x,versionMadeBy:S,lastModDate:z,lastAccessDate:v,creationDate:E,rawExtraField:j,zip64:K,zip64UncompressedSize:ce,zip64CompressedSize:de,zip64Offset:ue,zip64DiskNumberStart:fe,password:A,rawPassword:C,level:B||e.config.CompressionStream!==ee||e.config.CompressionStreamNative!==ee?L:0,useWebWorkers:O,encryptionStrength:W,extendedTimestamp:U,zipCrypto:N,bufferedWrite:H,keepOrder:I,useUnicodeFileNames:P,dataDescriptor:Z,dataDescriptorSignature:M,signal:q,msDosCompatible:R,internalFileAttribute:D,externalFileAttribute:T,useCompressionStream:B,passThrough:F,encrypted:!!(A&&Gr(A)||C&&Gr(C))||F&&he,signature:we,compressionMethod:V})),ge=(e=>{const{zip64:t,dataDescriptor:r,dataDescriptorSignature:n}=e;let s,a=new p,i=0;return r&&(a=new p(t?n?24:20:n?16:12),s=Yr(a),n&&(i=4,Kr(s,0,J))),{dataDescriptorArray:a,dataDescriptorView:s,dataDescriptorOffset:i}})(c),_e=Gr(me.localHeaderArray,ge.dataDescriptorArray);let ye;ne=_e+re,e.options.usdz&&(ne+=ne+64),e.pendingEntriesSize+=ne;try{ye=await(async(e,n,o,l,c)=>{const{files:u,writer:h}=e,{keepOrder:w,dataDescriptor:g,signal:y}=c,{headerInfo:b}=l,{usdz:x}=e.options,S=t.from(u.values()).pop();let z,v,E,R,D,T,F,A={};u.set(n,A);try{let t;w&&(t=S&&S.lock,A.lock=new _((e=>E=e))),!(c.bufferedWrite||e.writerLocked||e.bufferedWrites&&w)&&g||x?(T=h,await C()):(T=new k,F=new d(T.readable).blob(),T.writable.size=0,z=!0,e.bufferedWrites++,await ir(h)),await ir(T);const{writable:b}=h;let{diskOffset:v}=h;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new p(4);Kr(Yr(t),0,G),await Mr(b,t),e.offset+=4}x&&((e,t)=>{const{headerInfo:r}=e;let{localHeaderArray:n,extraFieldLength:s}=r,a=Yr(n),i=64-(t+Gr(n))%64;4>i&&(i+=64);const o=new p(i),l=Yr(o);Zr(l,0,6534),Zr(l,2,i-2);const c=n;r.localHeaderArray=n=new p(Gr(c)+i),Xr(n,c),Xr(n,o,Gr(c)),a=Yr(n),Zr(a,28,s+i),e.metadataSize+=i})(l,e.offset-v),z||(await t,await W(b));const{diskNumber:N}=h;if(D=!0,A.diskNumberStart=N,A=await(async(e,t,{diskNumberStart:n,lock:o},l,c,d)=>{const{headerInfo:u,dataDescriptorInfo:f,metadataSize:h}=l,{localHeaderArray:w,headerArray:m,lastModDate:g,rawLastModDate:y,encrypted:b,compressed:x,version:S,compressionMethod:z,rawExtraFieldExtendedTimestamp:k,extraFieldExtendedTimestampFlag:v,rawExtraFieldNTFS:E,rawExtraFieldAES:R}=u,{dataDescriptorArray:D}=f,{rawFilename:T,lastAccessDate:F,creationDate:A,password:C,rawPassword:W,level:N,zip64:U,zip64UncompressedSize:I,zip64CompressedSize:L,zip64Offset:O,zip64DiskNumberStart:H,zipCrypto:M,dataDescriptor:q,directory:P,versionMadeBy:B,rawComment:V,rawExtraField:Z,useWebWorkers:K,onstart:j,onprogress:Y,onend:G,signal:J,encryptionStrength:Q,extendedTimestamp:$,msDosCompatible:te,internalFileAttribute:re,externalFileAttribute:ne,useCompressionStream:se,passThrough:ae}=d,ie={lock:o,versionMadeBy:B,zip64:U,directory:!!P,filenameUTF8:!0,rawFilename:T,commentUTF8:!0,rawComment:V,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:E,rawExtraFieldAES:R,rawExtraField:Z,extendedTimestamp:$,msDosCompatible:te,internalFileAttribute:re,externalFileAttribute:ne,diskNumberStart:n};let{signature:oe,uncompressedSize:le}=d,ce=0;ae||(le=0);const{writable:de}=t;if(e){e.chunkSize=(e=>i.max(e.chunkSize,64))(c),await Mr(de,w);const t=e.readable,r=t.size=e.size,n={options:{codecType:wt,level:N,rawPassword:W,password:C,encryptionStrength:Q,zipCrypto:b&&M,passwordVerification:b&&M&&y>>8&255,signed:!ae,compressed:x&&!ae,encrypted:b&&!ae,useWebWorkers:K,useCompressionStream:se,transferStreams:!1},config:c,streamOptions:{signal:J,size:r,onstart:j,onprogress:Y,onend:G}},a=await(async(e,t)=>{const{options:r,config:n}=t,{transferStreams:a,useWebWorkers:i,useCompressionStream:o,codecType:l,compressed:c,signed:d,encrypted:u}=r,{workerScripts:f,maxWorkers:p}=n;t.transferStreams=a||a===ee;const h=!(c||d||u||t.transferStreams);return t.useWebWorkers=!h&&(i||i===ee&&n.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[l]:[],r.useCompressionStream=o||o===ee&&n.useCompressionStream,(await(async()=>{const r=Rt.find((e=>!e.busy));if(r)return Ft(r),new yt(r,e,t,w);if(Rt.lengthDt.push({resolve:r,stream:e,workerOptions:t})))})()).run();function w(e){if(Dt.length){const[{resolve:t,stream:r,workerOptions:n}]=Dt.splice(0,1);t(new yt(e,r,n,w))}else e.worker?(Ft(e),((e,t)=>{const{config:r}=t,{terminateWorkerTimeout:n}=r;s.isFinite(n)&&n>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{Rt=Rt.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),n))})(e,t)):Rt=Rt.filter((t=>t!=e))}})({readable:t,writable:de},n);ce=a.outputSize,ae||(le=a.inputSize,oe=a.signature),de.size+=le}else await Mr(de,w);let ue;if(U){let e=4;I&&(e+=8),L&&(e+=8),O&&(e+=8),H&&(e+=4),ue=new p(e)}else ue=new p;return((e,t)=>{const{signature:r,rawExtraFieldZip64:n,compressedSize:s,uncompressedSize:i,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:d}=o,{dataDescriptorView:u,dataDescriptorOffset:f}=l,{zip64:p,zip64UncompressedSize:h,zip64CompressedSize:w,zipCrypto:m,dataDescriptor:g}=t;if(d&&!m||r===ee||(Kr(c,10,r),g&&Kr(u,f,r)),p){const e=Yr(n);Zr(e,0,1),Zr(e,2,Gr(n)-4);let t=4;h&&(Kr(c,18,X),jr(e,t,a(i)),t+=8),w&&(Kr(c,14,X),jr(e,t,a(s))),g&&(jr(u,f+4,a(s)),jr(u,f+12,a(i)))}else Kr(c,14,s),Kr(c,18,i),g&&(Kr(u,f+4,s),Kr(u,f+8,i))})({signature:oe,rawExtraFieldZip64:ue,compressedSize:ce,uncompressedSize:le,headerInfo:u,dataDescriptorInfo:f},d),q&&await Mr(de,D),r.assign(ie,{uncompressedSize:le,compressedSize:ce,lastModDate:g,rawLastModDate:y,creationDate:A,lastAccessDate:F,encrypted:b,zipCrypto:M,size:h+ce,compressionMethod:z,version:S,headerArray:m,signature:oe,rawExtraFieldZip64:ue,extraFieldExtendedTimestampFlag:v,zip64UncompressedSize:I,zip64CompressedSize:L,zip64Offset:O,zip64DiskNumberStart:H}),ie})(o,T,A,l,e.config,c),D=!1,u.set(n,A),A.filename=n,z){await T.writable.getWriter().close();let e=await F;await t,await C(),R=!0,g||(e=await(async(e,t,r,{zipCrypto:n})=>{let s;s=await t.slice(0,26).arrayBuffer(),26!=s.byteLength&&(s=s.slice(0,26));const a=new m(s);return e.encrypted&&!n||Kr(a,14,e.signature),e.zip64?(Kr(a,18,X),Kr(a,22,X)):(Kr(a,18,e.compressedSize),Kr(a,22,e.uncompressedSize)),await Mr(r,new p(s)),t.slice(s.byteLength)})(A,e,b,c)),await W(b),A.diskNumberStart=h.diskNumber,v=h.diskOffset,await e.stream().pipeTo(b,{preventClose:!0,preventAbort:!0,signal:y}),b.size+=e.size,R=!1}if(A.offset=e.offset-v,A.zip64)((e,t)=>{const{rawExtraFieldZip64:r,offset:n,diskNumberStart:s}=e,{zip64UncompressedSize:i,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,d=Yr(r);let u=4;i&&(u+=8),o&&(u+=8),l&&(jr(d,u,a(n)),u+=8),c&&Kr(d,u,s)})(A,c);else if(A.offset>X)throw new f(Nr);return e.offset+=A.size,A}catch(t){if(z&&R||!z&&D){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}z?e.offset+=T.writable.size:e.offset=T.writable.size}throw u.delete(n),t}finally{z&&e.bufferedWrites--,E&&E(),v&&v()}async function C(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new _((t=>v=()=>{e.writerLocked=!1,t()})),await t}async function W(e){Gr(b.localHeaderArray)>h.availableSize&&(h.availableSize=0,await Mr(e,new p))}})(e,n,l,{headerInfo:me,dataDescriptorInfo:ge,metadataSize:_e},c)}finally{e.pendingEntriesSize-=ne}return r.assign(ye,{name:n,comment:y,extraField:te}),new vr(ye)})(c,e,n,l),u.add(y),await y}catch(t){throw c.filenames.delete(e),t}finally{u.delete(y);const e=Or.shift();e?e():Lr--}}async close(e=new p,r={}){const{pendingAddFileCalls:n,writer:s}=this,{writable:o}=s;for(;n.size;)await _.allSettled(t.from(n));return await(async(e,r,n)=>{const{files:s,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:d}=o,u=0,h=0,w=e.offset-l,m=s.size;for(const[,e]of s){const{rawFilename:t,rawExtraFieldZip64:r,rawExtraFieldAES:n,rawComment:s,rawExtraFieldNTFS:a,rawExtraField:o,extendedTimestamp:l,extraFieldExtendedTimestampFlag:c,lastModDate:d}=e;let u;if(l){u=new p(9);const e=Yr(u);Zr(e,0,21589),Zr(e,2,5),Vr(e,4,c),Kr(e,5,i.floor(d.getTime()/1e3))}else u=new p;e.rawExtraFieldCDExtendedTimestamp=u,h+=46+Gr(t,s,r,n,a,u,o)}const g=new p(h),_=Yr(g);await ir(o);let y=0;for(const[e,r]of t.from(s.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:i,rawExtraFieldAES:l,rawExtraFieldCDExtendedTimestamp:d,rawExtraFieldNTFS:f,rawExtraField:p,rawComment:h,versionMadeBy:w,headerArray:m,directory:b,zip64:x,zip64UncompressedSize:S,zip64CompressedSize:z,zip64DiskNumberStart:k,zip64Offset:v,msDosCompatible:E,internalFileAttribute:R,externalFileAttribute:D,diskNumberStart:T,uncompressedSize:F,compressedSize:A}=r,C=Gr(i,l,d,f,p);Kr(_,u,33639248),Zr(_,u+4,w);const W=Yr(m);S||Kr(W,18,F),z||Kr(W,14,A),Xr(g,m,u+6),Zr(_,u+30,C),Zr(_,u+32,Gr(h)),Zr(_,u+34,x&&k?Y:T),Zr(_,u+36,R),D?Kr(_,u+38,D):b&&E&&Vr(_,u+38,16),Kr(_,u+42,x&&v?X:t),Xr(g,a,u+46),Xr(g,i,u+46+Gr(a)),Xr(g,l,u+46+Gr(a,i)),Xr(g,d,u+46+Gr(a,i,l)),Xr(g,f,u+46+Gr(a,i,l,d)),Xr(g,p,u+46+Gr(a,i,l,d,f)),Xr(g,h,u+46+Gr(a)+C);const N=46+Gr(a,h)+C;if(u-y>o.availableSize&&(o.availableSize=0,await Mr(c,g.slice(y,u)),y=u),u+=N,n.onprogress)try{await n.onprogress(e+1,s.size,new vr(r))}catch(e){}}await Mr(c,y?g.slice(y):g);let b=o.diskNumber;const{availableSize:x}=o;22>x&&b++;let S=Pr(e,n,yr);if(w>X||h>X||m>Y||b>Y){if(!1===S)throw new f(Nr);S=!0}const z=new p(S?98:22),k=Yr(z);u=0,S&&(Kr(k,0,101075792),jr(k,4,a(44)),Zr(k,12,45),Zr(k,14,45),Kr(k,16,b),Kr(k,20,d),jr(k,24,a(m)),jr(k,32,a(m)),jr(k,40,a(h)),jr(k,48,a(w)),Kr(k,56,117853008),jr(k,64,a(w)+a(h)),Kr(k,72,b+1),Pr(e,n,"supportZip64SplitFile",!0)&&(b=Y,d=Y),m=Y,w=X,h=X,u+=76),Kr(k,u,101010256),Zr(k,u+4,b),Zr(k,u+6,d),Zr(k,u+8,m),Zr(k,u+10,m),Kr(k,u+12,h),Kr(k,u+16,w);const v=Gr(r);if(v){if(v>Y)throw new f(Rr);Zr(k,u+20,v)}await Mr(c,z),v&&await Mr(c,r)})(this,e,r),Pr(this,r,"preventClose")||await o.getWriter().close(),s.getData?s.getData():o}}async function Mr(e,t){const r=e.getWriter();try{await r.ready,e.size+=Gr(t),await r.write(t)}finally{r.releaseLock()}}function qr(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function Pr(e,t,r,n){const s=t[r]===ee?e.options[r]:t[r];return s===ee?n:s}function Br(e){return e+5*(i.floor(e/16383)+1)}function Vr(e,t,r){e.setUint8(t,r)}function Zr(e,t,r){e.setUint16(t,r,!0)}function Kr(e,t,r){e.setUint32(t,r,!0)}function jr(e,t,r){e.setBigUint64(t,r,!0)}function Xr(e,t,r){e.set(t,r)}function Yr(e){return new m(e.buffer)}function Gr(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}le({Deflate:function(e){const t=new j,r=(n=e&&e.chunkSize?e.chunkSize:65536)+5*(i.floor(n/16383)+1);var n;const s=new p(r);let a=e?e.level:-1;void 0===a&&(a=-1),t.deflateInit(a),t.next_out=s,this.append=(e,n)=>{let a,i,o=0,l=0,c=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=r,a=t.deflate(0),0!=a)throw new f("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==r?d.push(new p(s)):d.push(s.subarray(0,t.next_out_index))),c+=t.next_out_index,n&&t.next_in_index>0&&t.next_in_index!=o&&(n(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(i=new p(c),d.forEach((e=>{i.set(e,l),l+=e.length}))):i=d[0]?new p(d[0]):new p,i}},this.flush=()=>{let e,n,a=0,i=0;const o=[];do{if(t.next_out_index=0,t.avail_out=r,e=t.deflate(4),1!=e&&0!=e)throw new f("deflating: "+t.msg);r-t.avail_out>0&&o.push(s.slice(0,t.next_out_index)),i+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),n=new p(i),o.forEach((e=>{n.set(e,a),a+=e.length})),n}}}),e.BlobReader=Pt,e.BlobWriter=Bt,e.Data64URIReader=class extends Mt{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const n=e.indexOf(",")+1;r.assign(this,{dataURI:e,dataStart:n,size:i.floor(.75*(t-n))})}readUint8Array(e,t){const{dataStart:r,dataURI:n}=this,s=new p(t),a=4*i.floor(e/3),o=atob(n.substring(a+r,4*i.ceil((e+t)/3)+r)),l=e-3*i.floor(a/4);for(let e=l;l+t>e;e++)s[e-l]=o.charCodeAt(e);return s}},e.Data64URIWriter=class extends qt{constructor(e){super(),r.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let r=0,s=t.pending;const a=t.pending.length;for(t.pending="",r=0;r<3*i.floor((a+e.length)/3)-a;r++)s+=n.fromCharCode(e[r]);for(;r2?t.data+=z(s):t.pending=s}getData(){return this.data+z(this.pending)}},e.ERR_DUPLICATED_NAME=Er,e.ERR_HTTP_RANGE=Ct,e.ERR_INVALID_COMMENT=Rr,e.ERR_INVALID_ENCRYPTION_STRENGTH=Ar,e.ERR_INVALID_ENTRY_COMMENT=Dr,e.ERR_INVALID_ENTRY_NAME=Tr,e.ERR_INVALID_EXTRAFIELD_DATA=Wr,e.ERR_INVALID_EXTRAFIELD_TYPE=Cr,e.ERR_INVALID_VERSION=Fr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Wt,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=Ur,e.ERR_UNSUPPORTED_FORMAT=Nr,e.HttpRangeReader=class extends nr{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=nr,e.Reader=Mt,e.SplitDataReader=sr,e.SplitDataWriter=ar,e.SplitZipReader=dr,e.SplitZipWriter=ur,e.TextReader=class extends Pt{constructor(e){super(new g([e],{type:"text/plain"}))}},e.TextWriter=class extends Bt{constructor(e){super(e),r.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,n=await super.getData();if(n.text&&t)return n.text();{const t=new FileReader;return new _(((s,a)=>{r.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>a(t.error)}),t.readAsText(n,e)}))}}},e.Uint8ArrayReader=class extends Mt{constructor(e){super(),r.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends qt{init(e=0){r.assign(this,{offset:0,array:new p(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const r=t.array;t.array=new p(r.length+e.length),t.array.set(r)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=qt,e.ZipWriter=Hr,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:r}=new k;this.readable=t,this.zipWriter=new Hr(r,e)}transform(e){const{readable:t,writable:r}=new k({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:r}}writable(e){const{readable:t,writable:r}=new k;return this.zipWriter.add(e,t),r}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=le,e.getMimeType=()=>"application/octet-stream",e.initReader=or,e.initStream=ir,e.initWriter=lr,e.readUint8Array=cr,e.terminateWorkers=async()=>{await _.allSettled(Rt.map((e=>(Ft(e),e.terminate()))))}})); +((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:r,String:n,Number:s,BigInt:a,Math:i,Date:o,Map:l,Set:c,Response:d,URL:u,Error:f,Uint8Array:p,Uint16Array:h,Uint32Array:w,DataView:m,Blob:g,Promise:_,TextEncoder:b,TextDecoder:y,document:x,crypto:S,btoa:z,TransformStream:k,ReadableStream:v,WritableStream:E,CompressionStream:R,DecompressionStream:D,navigator:T,Worker:F}="undefined"!=typeof globalThis?globalThis:this||self,A=-2;function C(e){return W(e.map((([e,r])=>new t(e).fill(r,0,e))))}function W(e){return e.reduce(((e,r)=>e.concat(t.isArray(r)?W(r):r)),[])}const N=[0,1,2,3].concat(...C([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function U(){const e=this;function t(e,t){let r=0;do{r|=1&e,e>>>=1,r<<=1}while(--t>0);return r>>>1}e.build_tree=r=>{const n=e.dyn_tree,s=e.stat_desc.static_tree,a=e.stat_desc.elems;let o,l,c,d=-1;for(r.heap_len=0,r.heap_max=573,o=0;a>o;o++)0!==n[2*o]?(r.heap[++r.heap_len]=d=o,r.depth[o]=0):n[2*o+1]=0;for(;2>r.heap_len;)c=r.heap[++r.heap_len]=2>d?++d:0,n[2*c]=1,r.depth[c]=0,r.opt_len--,s&&(r.static_len-=s[2*c+1]);for(e.max_code=d,o=i.floor(r.heap_len/2);o>=1;o--)r.pqdownheap(n,o);c=a;do{o=r.heap[1],r.heap[1]=r.heap[r.heap_len--],r.pqdownheap(n,1),l=r.heap[1],r.heap[--r.heap_max]=o,r.heap[--r.heap_max]=l,n[2*c]=n[2*o]+n[2*l],r.depth[c]=i.max(r.depth[o],r.depth[l])+1,n[2*o+1]=n[2*l+1]=c,r.heap[1]=c++,r.pqdownheap(n,1)}while(r.heap_len>=2);r.heap[--r.heap_max]=r.heap[1],(t=>{const r=e.dyn_tree,n=e.stat_desc.static_tree,s=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,i=e.stat_desc.max_length;let o,l,c,d,u,f,p=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(r[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)l=t.heap[o],d=r[2*r[2*l+1]+1]+1,d>i&&(d=i,p++),r[2*l+1]=d,l>e.max_code||(t.bl_count[d]++,u=0,a>l||(u=s[l-a]),f=r[2*l],t.opt_len+=f*(d+u),n&&(t.static_len+=f*(n[2*l+1]+u)));if(0!==p){do{for(d=i-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[i]--,p-=2}while(p>0);for(d=i;0!==d;d--)for(l=t.bl_count[d];0!==l;)c=t.heap[--o],c>e.max_code||(r[2*c+1]!=d&&(t.opt_len+=(d-r[2*c+1])*r[2*c],r[2*c+1]=d),l--)}})(r),((e,r,n)=>{const s=[];let a,i,o,l=0;for(a=1;15>=a;a++)s[a]=l=l+n[a-1]<<1;for(i=0;r>=i;i++)o=e[2*i+1],0!==o&&(e[2*i]=t(s[o]++,o))})(n,e.max_code,r.bl_count)}}function I(e,t,r,n,s){const a=this;a.static_tree=e,a.extra_bits=t,a.extra_base=r,a.elems=n,a.max_length=s}U._length_code=[0,1,2,3,4,5,6,7].concat(...C([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),U.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],U.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],U.d_code=e=>256>e?N[e]:N[256+(e>>>7)],U.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],U.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],U.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],U.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const L=C([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=W([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,L[t]])));const O=C([[30,5]]);function H(e,t,r,n,s){const a=this;a.good_length=e,a.max_lazy=t,a.nice_length=r,a.max_chain=n,a.func=s}I.static_dtree=W([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,O[t]]))),I.static_l_desc=new I(I.static_ltree,U.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,U.extra_dbits,0,30,15),I.static_bl_desc=new I(null,U.extra_blbits,0,19,7);const M=[new H(0,0,0,0,0),new H(4,4,8,4,1),new H(4,5,16,8,1),new H(4,6,32,32,1),new H(4,4,16,16,2),new H(8,16,32,32,2),new H(8,16,128,128,2),new H(8,32,128,256,2),new H(32,128,258,1024,2),new H(32,258,258,4096,2)],q=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],P=113,B=666,V=262;function Z(e,t,r,n){const s=e[2*t],a=e[2*r];return a>s||s==a&&n[t]<=n[r]}function K(){const e=this;let t,r,n,s,a,o,l,c,d,u,f,w,m,g,_,b,y,x,S,z,k,v,E,R,D,T,F,C,W,N,L,O,H;const K=new U,j=new U,X=new U;let Y,G,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)L[2*t]=0;for(t=0;30>t;t++)O[2*t]=0;for(t=0;19>t;t++)H[2*t]=0;L[512]=1,e.opt_len=e.static_len=0,G=J=0}function re(e,t){let r,n=-1,s=e[1],a=0,i=7,o=4;0===s&&(i=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)r=s,s=e[2*(l+1)+1],++aa?H[2*r]+=a:0!==r?(r!=n&&H[2*r]++,H[32]++):a>10?H[36]++:H[34]++,a=0,n=r,0===s?(i=138,o=3):r==s?(i=6,o=3):(i=7,o=4))}function ne(t){e.pending_buf[e.pending++]=t}function se(e){ne(255&e),ne(e>>>8&255)}function ae(e,t){let r;const n=t;ee>16-n?(r=e,$|=r<>>16-ee,ee+=n-16):($|=e<=r;r++)if(n=a,a=e[2*(r+1)+1],++i>=o||n!=a){if(l>i)do{ie(n,H)}while(0!=--i);else 0!==n?(n!=s&&(ie(n,H),i--),ie(16,H),ae(i-3,2)):i>10?(ie(18,H),ae(i-11,7)):(ie(17,H),ae(i-3,3));i=0,s=n,0===a?(o=138,l=3):n==a?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(se($),$=0,ee=0):8>ee||(ne(255&$),$>>>=8,ee-=8)}function ce(t,r){let n,s,a;if(e.dist_buf[G]=t,e.lc_buf[G]=255&r,G++,0===t?L[2*r]++:(J++,t--,L[2*(U._length_code[r]+256+1)]++,O[2*U.d_code(t)]++),!(8191&G)&&F>2){for(n=8*G,s=k-y,a=0;30>a;a++)n+=O[2*a]*(5+U.extra_dbits[a]);if(n>>>=3,Jo);ie(256,t),Q=t[513]}function ue(){ee>8?se($):ee>0&&ne(255&$),$=0,ee=0}function fe(t,r,n){ae(0+(n?1:0),3),((t,r)=>{ue(),Q=8,se(r),se(~r),e.pending_buf.set(c.subarray(t,t+r),e.pending),e.pending+=r})(t,r)}function pe(r){((t,r,n)=>{let s,a,i=0;F>0?(K.build_tree(e),j.build_tree(e),i=(()=>{let t;for(re(L,K.max_code),re(O,j.max_code),X.build_tree(e),t=18;t>=3&&0===H[2*U.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),s=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a>s||(s=a)):s=a=r+5,r+4>s||-1==t?a==s?(ae(2+(n?1:0),3),de(I.static_ltree,I.static_dtree)):(ae(4+(n?1:0),3),((e,t,r)=>{let n;for(ae(e-257,5),ae(t-1,5),ae(r-4,4),n=0;r>n;n++)ae(H[2*U.bl_order[n]+1],3);oe(L,e-1),oe(O,t-1)})(K.max_code+1,j.max_code+1,i+1),de(L,O)):fe(t,r,n),te(),n&&ue()})(0>y?-1:y,k-y,r),y=k,t.flush_pending()}function he(){let e,r,n,s;do{if(s=d-E-k,0===s&&0===k&&0===E)s=a;else if(-1==s)s--;else if(k>=a+a-V){c.set(c.subarray(a,a+a),0),v-=a,k-=a,y-=a,e=m,n=e;do{r=65535&f[--n],f[n]=a>r?0:r-a}while(0!=--e);e=a,n=e;do{r=65535&u[--n],u[n]=a>r?0:r-a}while(0!=--e);s+=a}if(0===t.avail_in)return;e=t.read_buf(c,k+E,s),E+=e,3>E||(w=255&c[k],w=(w<E&&0!==t.avail_in)}function we(e){let t,r,n=D,s=k,i=R;const o=k>a-V?k-(a-V):0;let d=N;const f=l,p=k+258;let h=c[s+i-1],w=c[s+i];W>R||(n>>=2),d>E&&(d=E);do{if(t=e,c[t+i]==w&&c[t+i-1]==h&&c[t]==c[s]&&c[++t]==c[s+1]){s+=2,t++;do{}while(c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&c[++s]==c[++t]&&p>s);if(r=258-(p-s),s=p-258,r>i){if(v=e,i=r,r>=d)break;h=c[s+i-1],w=c[s+i]}}}while((e=65535&u[e&f])>o&&0!=--n);return i>E?E:i}e.depth=[],e.bl_count=[],e.heap=[],L=[],O=[],H=[],e.pqdownheap=(t,r)=>{const n=e.heap,s=n[r];let a=r<<1;for(;a<=e.heap_len&&(a(U||(U=8),q||(q=8),B||(B=0),t.msg=null,-1==S&&(S=6),1>q||q>9||8!=U||9>v||v>15||0>S||S>9||0>B||B>2?A:(t.dstate=e,o=v,a=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,r=P,s=0,K.dyn_tree=L,K.stat_desc=I.static_l_desc,j.dyn_tree=O,j.stat_desc=I.static_d_desc,X.dyn_tree=H,X.stat_desc=I.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*a,f[m-1]=0;for(let e=0;m-1>e;e++)f[e]=0;T=M[F].max_lazy,W=M[F].good_length,N=M[F].nice_length,D=M[F].max_chain,k=0,y=0,E=0,x=R=2,z=0,w=0})(),0))(t))),e.deflateEnd=()=>42!=r&&r!=P&&r!=B?A:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,c=null,e.dstate=null,r==P?-3:0),e.deflateParams=(e,t,r)=>{let n=0;return-1==t&&(t=6),0>t||t>9||0>r||r>2?A:(M[F].func!=M[t].func&&0!==e.total_in&&(n=e.deflate(1)),F!=t&&(F=t,T=M[F].max_lazy,W=M[F].good_length,N=M[F].nice_length,D=M[F].max_chain),C=r,n)},e.deflateSetDictionary=(e,t,n)=>{let s,i=n,o=0;if(!t||42!=r)return A;if(3>i)return 0;for(i>a-V&&(i=a-V,o=n-i),c.set(t.subarray(o,o+i),0),k=i,y=i,w=255&c[0],w=(w<=s;s++)w=(w<{let p,h,g,D,W;if(d>4||0>d)return A;if(!i.next_out||!i.next_in&&0!==i.avail_in||r==B&&4!=d)return i.msg=q[4],A;if(0===i.avail_out)return i.msg=q[7],-5;var N;if(t=i,D=s,s=d,42==r&&(h=8+(o-8<<4)<<8,g=(F-1&255)>>1,g>3&&(g=3),h|=g<<6,0!==k&&(h|=32),h+=31-h%31,r=P,ne((N=h)>>8&255),ne(255&N)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return s=-1,0}else if(0===t.avail_in&&D>=d&&4!=d)return t.msg=q[7],-5;if(r==B&&0!==t.avail_in)return i.msg=q[7],-5;if(0!==t.avail_in||0!==E||0!=d&&r!=B){switch(W=-1,M[F].func){case 0:W=(e=>{let r,s=65535;for(s>n-5&&(s=n-5);;){if(1>=E){if(he(),0===E&&0==e)return 0;if(0===E)break}if(k+=E,E=0,r=y+s,(0===k||k>=r)&&(E=k-r,k=r,pe(!1),0===t.avail_out))return 0;if(k-y>=a-V&&(pe(!1),0===t.avail_out))return 0}return pe(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 1:W=(e=>{let r,n=0;for(;;){if(V>E){if(he(),V>E&&0==e)return 0;if(0===E)break}if(3>E||(w=(w<a-V||2!=C&&(x=we(n)),3>x)r=ce(0,255&c[k]),E--,k++;else if(r=ce(k-v,x-3),E-=x,x>T||3>E)k+=x,x=0,w=255&c[k],w=(w<{let r,n,s=0;for(;;){if(V>E){if(he(),V>E&&0==e)return 0;if(0===E)break}if(3>E||(w=(w<R&&a-V>=(k-s&65535)&&(2!=C&&(x=we(s)),5>=x&&(1==C||3==x&&k-v>4096)&&(x=2)),3>R||x>R)if(0!==z){if(r=ce(0,255&c[k-1]),r&&pe(!1),k++,E--,0===t.avail_out)return 0}else z=1,k++,E--;else{n=k+E-3,r=ce(k-1-S,R-3),E-=R-1,R-=2;do{++k>n||(w=(w<1+Q+10-ee&&(ae(2,3),ie(256,I.static_ltree),le()),Q=7;else if(fe(0,0,!1),3==d)for(p=0;m>p;p++)f[p]=0;if(t.flush_pending(),0===t.avail_out)return s=-1,0}}return 4!=d?0:1}}function j(){const e=this;e.next_in_index=0,e.next_out_index=0,e.avail_in=0,e.total_in=0,e.avail_out=0,e.total_out=0}j.prototype={deflateInit(e,t){const r=this;return r.dstate=new K,t||(t=15),r.dstate.deflateInit(r,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):A},deflateEnd(){const e=this;if(!e.dstate)return A;const t=e.dstate.deflateEnd();return e.dstate=null,t},deflateParams(e,t){const r=this;return r.dstate?r.dstate.deflateParams(r,e,t):A},deflateSetDictionary(e,t){const r=this;return r.dstate?r.dstate.deflateSetDictionary(r,e,t):A},read_buf(e,t,r){const n=this;let s=n.avail_in;return s>r&&(s=r),0===s?0:(n.avail_in-=s,e.set(n.next_in.subarray(n.next_in_index,n.next_in_index+s),t),n.next_in_index+=s,n.total_in+=s,s)},flush_pending(){const e=this;let t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),0!==t&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,0===e.dstate.pending&&(e.dstate.pending_out=0))}};const X=4294967295,Y=65535,G=134695760,J=G,Q=new o(2107,11,31),$=new o(1980,0,1),ee=void 0,te="undefined",re="function";class ne{constructor(e){return class extends k{constructor(t,r){const n=new e(r);super({transform(e,t){t.enqueue(n.append(e))},flush(e){const t=n.flush();t&&e.enqueue(t)}})}}}}let se=2;try{typeof T!=te&&T.hardwareConcurrency&&(se=T.hardwareConcurrency)}catch(e){}const ae={chunkSize:524288,maxWorkers:se,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:ee,CompressionStreamNative:typeof R!=te&&R,DecompressionStreamNative:typeof D!=te&&D},ie=r.assign({},ae);function oe(){return ie}function le(e){const{baseURL:r,chunkSize:n,maxWorkers:s,terminateWorkerTimeout:a,useCompressionStream:i,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:u,workerScripts:p}=e;if(ce("baseURL",r),ce("chunkSize",n),ce("maxWorkers",s),ce("terminateWorkerTimeout",a),ce("useCompressionStream",i),ce("useWebWorkers",o),l&&(ie.CompressionStream=new ne(l)),c&&(ie.DecompressionStream=new ne(c)),ce("CompressionStream",d),ce("DecompressionStream",u),p!==ee){const{deflate:e,inflate:r}=p;if((e||r)&&(ie.workerScripts||(ie.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");ie.workerScripts.deflate=e}if(r){if(!t.isArray(r))throw new f("workerScripts.inflate must be an array");ie.workerScripts.inflate=r}}}function ce(e,t){t!==ee&&(ie[e]=t)}const de=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;de[e]=t}class ue{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let r=0,n=0|e.length;n>r;r++)t=t>>>8^de[255&(t^e[r])];this.crc=t}get(){return~this.crc}}class fe extends k{constructor(){let e;const t=new ue;super({transform(e,r){t.append(e),r.enqueue(e)},flush(){const r=new p(4);new m(r.buffer).setUint32(0,t.get()),e.value=r}}),e=this}}function pe(e){if(typeof b==te){const t=new p((e=unescape(encodeURIComponent(e))).length);for(let r=0;r0&&t&&(e[r-1]=he.partial(t,e[r-1]&2147483648>>t-1,1)),e},partial:(e,t,r)=>32===e?t:(r?0|t:t<<32-e)+1099511627776*e,getPartial:e=>i.round(e/1099511627776)||32,_shiftRight(e,t,r,n){for(void 0===n&&(n=[]);t>=32;t-=32)n.push(r),r=0;if(0===t)return n.concat(e);for(let s=0;s>>t),r=e[s]<<32-t;const s=e.length?e[e.length-1]:0,a=he.getPartial(s);return n.push(he.partial(t+a&31,t+a>32?r:n.pop(),1)),n}},we={bytes:{fromBits(e){const t=he.bitLength(e)/8,r=new p(t);let n;for(let s=0;t>s;s++)3&s||(n=e[s/4]),r[s]=n>>>24,n<<=8;return r},toBits(e){const t=[];let r,n=0;for(r=0;r9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new w(r);let i=0;for(let e=t.blockSize+n-(t.blockSize+n&t.blockSize-1);s>=e;e+=t.blockSize)t._block(a.subarray(16*i,16*(i+1))),i+=1;return r.splice(0,16*i),t}finalize(){const e=this;let t=e._buffer;const r=e._h;t=he.concat(t,[he.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(i.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),r}_f(e,t,r,n){return e>19?e>39?e>59?e>79?void 0:t^r^n:t&r|t&n|r&n:t^r^n:t&r|~t&n}_S(e,t){return t<>>32-e}_block(e){const r=this,n=r._h,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let a=n[0],o=n[1],l=n[2],c=n[3],d=n[4];for(let e=0;79>=e;e++){16>e||(s[e]=r._S(1,s[e-3]^s[e-8]^s[e-14]^s[e-16]));const t=r._S(5,a)+r._f(e,o,l,c)+d+s[e]+r._key[i.floor(e/20)]|0;d=c,c=l,l=r._S(30,o),o=a,a=t}n[0]=n[0]+a|0,n[1]=n[1]+o|0,n[2]=n[2]+l|0,n[3]=n[3]+c|0,n[4]=n[4]+d|0}},ge={getRandomValues(e){const t=new w(e.buffer),r=e=>{let t=987654321;const r=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&r,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&r)&r)/4294967296+.5)*(i.random()>.5?1:-1))};for(let n,s=0;snew _e.hmacSha1(we.bytes.toBits(e)),pbkdf2(e,t,r,n){if(r=r||1e4,0>n||0>r)throw new f("invalid params to pbkdf2");const s=1+(n>>5)<<2;let a,i,o,l,c;const d=new ArrayBuffer(s),u=new m(d);let p=0;const h=he;for(t=we.bytes.toBits(t),c=1;(s||1)>p;c++){for(a=i=e.encrypt(h.concat(t,[c])),o=1;r>o;o++)for(i=e.encrypt(i),l=0;lp&&os&&(e=(new r).update(e).finalize());for(let t=0;s>t;t++)n[0][t]=909522486^e[t],n[1][t]=1549556828^e[t];t._baseHash[0].update(n[0]),t._baseHash[1].update(n[1]),t._resultHash=new r(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),r=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),r}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},be=typeof S!=te&&typeof S.getRandomValues==re,ye="Invalid password",xe="Invalid signature",Se="zipjs-abort-check-password";function ze(e){return be?S.getRandomValues(e):ge.getRandomValues(e)}const ke=16,ve={name:"PBKDF2"},Ee=r.assign({hash:{name:"HMAC"}},ve),Re=r.assign({iterations:1e3,hash:{name:"SHA-1"}},ve),De=["deriveBits"],Te=[8,12,16],Fe=[16,24,32],Ae=10,Ce=[0,0,0,0],We=typeof S!=te,Ne=We&&S.subtle,Ue=We&&typeof Ne!=te,Ie=we.bytes,Le=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const r=t._tables[0][4],n=t._tables[1],s=e.length;let a,i,o,l=1;if(4!==s&&6!==s&&8!==s)throw new f("invalid aes key size");for(t._key=[i=e.slice(0),o=[]],a=s;4*s+28>a;a++){let e=i[a-1];(a%s==0||8===s&&a%s==4)&&(e=r[e>>>24]<<24^r[e>>16&255]<<16^r[e>>8&255]<<8^r[255&e],a%s==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),i[a]=i[a-s]^e}for(let e=0;a;e++,a--){const t=i[3&e?a:a-4];o[e]=4>=a||4>e?t:n[0][r[t>>>24]]^n[1][r[t>>16&255]]^n[2][r[t>>8&255]]^n[3][r[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],r=e[4],n=t[4],s=[],a=[];let i,o,l,c;for(let e=0;256>e;e++)a[(s[e]=e<<1^283*(e>>7))^e]=e;for(let d=i=0;!r[d];d^=o||1,i=a[i]||1){let a=i^i<<1^i<<2^i<<3^i<<4;a=a>>8^255&a^99,r[d]=a,n[a]=d,c=s[l=s[o=s[d]]];let u=16843009*c^65537*l^257*o^16843008*d,f=257*s[a]^16843008*a;for(let r=0;4>r;r++)e[r][d]=f=f<<24^f>>>8,t[r][a]=u=u<<24^u>>>8}for(let r=0;5>r;r++)e[r]=e[r].slice(0),t[r]=t[r].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const r=this._key[t],n=r.length/4-2,s=[0,0,0,0],a=this._tables[t],i=a[0],o=a[1],l=a[2],c=a[3],d=a[4];let u,p,h,w=e[0]^r[0],m=e[t?3:1]^r[1],g=e[2]^r[2],_=e[t?1:3]^r[3],b=4;for(let e=0;n>e;e++)u=i[w>>>24]^o[m>>16&255]^l[g>>8&255]^c[255&_]^r[b],p=i[m>>>24]^o[g>>16&255]^l[_>>8&255]^c[255&w]^r[b+1],h=i[g>>>24]^o[_>>16&255]^l[w>>8&255]^c[255&m]^r[b+2],_=i[_>>>24]^o[w>>16&255]^l[m>>8&255]^c[255&g]^r[b+3],b+=4,w=u,m=p,g=h;for(let e=0;4>e;e++)s[t?3&-e:e]=d[w>>>24]<<24^d[m>>16&255]<<16^d[g>>8&255]<<8^d[255&_]^r[b++],u=w,w=m,m=g,g=_,_=u;return s}},Oe=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,r=e>>8&255,n=255&e;255===t?(t=0,255===r?(r=0,255===n?n=0:++n):++r):++t,e=0,e+=t<<16,e+=r<<8,e+=n}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,r){let n;if(!(n=t.length))return[];const s=he.bitLength(t);for(let s=0;n>s;s+=4){this.incCounter(r);const n=e.encrypt(r);t[s]^=n[0],t[s+1]^=n[1],t[s+2]^=n[2],t[s+3]^=n[3]}return he.clamp(t,s)}},He=_e.hmacSha1;let Me=We&&Ue&&typeof Ne.importKey==re,qe=We&&Ue&&typeof Ne.deriveBits==re;class Pe extends k{constructor({password:e,rawPassword:t,signed:n,encryptionStrength:s,checkPasswordOnly:a}){super({start(){r.assign(this,{ready:new _((e=>this.resolveReady=e)),password:Ke(e,t),signed:n,strength:s-1,pending:new p})},async transform(e,t){const r=this,{password:n,strength:s,resolveReady:i,ready:o}=r;n?(await(async(e,t,r,n)=>{const s=await Ze(e,t,r,Xe(n,0,Te[t])),a=Xe(n,Te[t]);if(s[0]!=a[0]||s[1]!=a[1])throw new f(ye)})(r,s,n,Xe(e,0,Te[s]+2)),e=Xe(e,Te[s]+2),a?t.error(new f(Se)):i()):await o;const l=new p(e.length-Ae-(e.length-Ae)%ke);t.enqueue(Ve(r,e,l,0,Ae,!0))},async flush(e){const{signed:t,ctr:r,hmac:n,pending:s,ready:a}=this;if(n&&r){await a;const i=Xe(s,0,s.length-Ae),o=Xe(s,s.length-Ae);let l=new p;if(i.length){const e=Ge(Ie,i);n.update(e);const t=r.update(e);l=Ye(Ie,t)}if(t){const e=Xe(Ye(Ie,n.digest()),0,Ae);for(let t=0;Ae>t;t++)if(e[t]!=o[t])throw new f(xe)}e.enqueue(l)}}})}}class Be extends k{constructor({password:e,rawPassword:t,encryptionStrength:n}){let s;super({start(){r.assign(this,{ready:new _((e=>this.resolveReady=e)),password:Ke(e,t),strength:n-1,pending:new p})},async transform(e,t){const r=this,{password:n,strength:s,resolveReady:a,ready:i}=r;let o=new p;n?(o=await(async(e,t,r)=>{const n=ze(new p(Te[t]));return je(n,await Ze(e,t,r,n))})(r,s,n),a()):await i;const l=new p(o.length+e.length-e.length%ke);l.set(o,0),t.enqueue(Ve(r,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:r,pending:n,ready:a}=this;if(r&&t){await a;let i=new p;if(n.length){const e=t.update(Ge(Ie,n));r.update(e),i=Ye(Ie,e)}s.signature=Ye(Ie,r.digest()).slice(0,Ae),e.enqueue(je(i,s.signature))}}}),s=this}}function Ve(e,t,r,n,s,a){const{ctr:i,hmac:o,pending:l}=e,c=t.length-s;let d;for(l.length&&(t=je(l,t),r=((e,t)=>{if(t&&t>e.length){const r=e;(e=new p(t)).set(r,0)}return e})(r,c-c%ke)),d=0;c-ke>=d;d+=ke){const e=Ge(Ie,Xe(t,d,d+ke));a&&o.update(e);const s=i.update(e);a||o.update(s),r.set(Ye(Ie,s),d+n)}return e.pending=Xe(t,d),r}async function Ze(e,n,s,a){e.password=null;const i=await(async(e,t,r,n,s)=>{if(!Me)return _e.importKey(t);try{return await Ne.importKey("raw",t,r,!1,s)}catch(e){return Me=!1,_e.importKey(t)}})(0,s,Ee,0,De),o=await(async(e,t,r)=>{if(!qe)return _e.pbkdf2(t,e.salt,Re.iterations,r);try{return await Ne.deriveBits(e,t,r)}catch(n){return qe=!1,_e.pbkdf2(t,e.salt,Re.iterations,r)}})(r.assign({salt:a},Re),i,8*(2*Fe[n]+2)),l=new p(o),c=Ge(Ie,Xe(l,0,Fe[n])),d=Ge(Ie,Xe(l,Fe[n],2*Fe[n])),u=Xe(l,2*Fe[n]);return r.assign(e,{keys:{key:c,authentication:d,passwordVerification:u},ctr:new Oe(new Le(c),t.from(Ce)),hmac:new He(d)}),u}function Ke(e,t){return t===ee?pe(e):t}function je(e,t){let r=e;return e.length+t.length&&(r=new p(e.length+t.length),r.set(e,0),r.set(t,e.length)),r}function Xe(e,t,r){return e.subarray(t,r)}function Ye(e,t){return e.fromBits(t)}function Ge(e,t){return e.toBits(t)}class Je extends k{constructor({password:e,passwordVerification:t,checkPasswordOnly:n}){super({start(){r.assign(this,{password:e,passwordVerification:t}),tt(this,e)},transform(e,t){const r=this;if(r.password){const t=$e(r,e.subarray(0,12));if(r.password=null,t[11]!=r.passwordVerification)throw new f(ye);e=e.subarray(12)}n?t.error(new f(Se)):t.enqueue($e(r,e))}})}}class Qe extends k{constructor({password:e,passwordVerification:t}){super({start(){r.assign(this,{password:e,passwordVerification:t}),tt(this,e)},transform(e,t){const r=this;let n,s;if(r.password){r.password=null;const t=ze(new p(12));t[11]=r.passwordVerification,n=new p(e.length+t.length),n.set(et(r,t),0),s=12}else n=new p(e.length),s=0;n.set(et(r,e),s),t.enqueue(n)}})}}function $e(e,t){const r=new p(t.length);for(let n=0;n>>24]),s=~e.crcKey2.get(),e.keys=[r,n,s]}function nt(e){const t=2|e.keys[2];return st(i.imul(t,1^t)>>>8)}function st(e){return 255&e}function at(e){return 4294967295&e}const it="deflate-raw";class ot extends k{constructor(e,{chunkSize:t,CompressionStream:r,CompressionStreamNative:n}){super({});const{compressed:s,encrypted:a,useCompressionStream:i,zipCrypto:o,signed:l,level:c}=e,d=this;let u,f,p=ct(super.readable);a&&!o||!l||(u=new fe,p=ft(p,u)),s&&(p=ut(p,i,{level:c,chunkSize:t},n,r)),a&&(o?p=ft(p,new Qe(e)):(f=new Be(e),p=ft(p,f))),dt(d,p,(()=>{let e;a&&!o&&(e=f.signature),a&&!o||!l||(e=new m(u.value.buffer).getUint32(0)),d.signature=e}))}}class lt extends k{constructor(e,{chunkSize:t,DecompressionStream:r,DecompressionStreamNative:n}){super({});const{zipCrypto:s,encrypted:a,signed:i,signature:o,compressed:l,useCompressionStream:c}=e;let d,u,p=ct(super.readable);a&&(s?p=ft(p,new Je(e)):(u=new Pe(e),p=ft(p,u))),l&&(p=ut(p,c,{chunkSize:t},n,r)),a&&!s||!i||(d=new fe,p=ft(p,d)),dt(this,p,(()=>{if((!a||s)&&i){const e=new m(d.value.buffer);if(o!=e.getUint32(0,!1))throw new f(xe)}}))}}function ct(e){return ft(e,new k({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function dt(e,t,n){t=ft(t,new k({flush:n})),r.defineProperty(e,"readable",{get:()=>t})}function ut(e,t,r,n,s){try{e=ft(e,new(t&&n?n:s)(it,r))}catch(n){if(!t)return e;try{e=ft(e,new s(it,r))}catch(t){return e}}return e}function ft(e,t){return e.pipeThrough(t)}const pt="data",ht="close",wt="deflate";class mt extends k{constructor(e,t){super({});const n=this,{codecType:s}=e;let a;s.startsWith(wt)?a=ot:s.startsWith("inflate")&&(a=lt);let i=0,o=0;const l=new a(e,t),c=super.readable,d=new k({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){r.assign(n,{inputSize:o})}}),u=new k({transform(e,t){e&&e.length&&(i+=e.length,t.enqueue(e))},flush(){const{signature:e}=l;r.assign(n,{signature:e,outputSize:i,inputSize:o})}});r.defineProperty(n,"readable",{get:()=>c.pipeThrough(d).pipeThrough(l).pipeThrough(u)})}}class gt extends k{constructor(e){let t;super({transform:function r(n,s){if(t){const e=new p(t.length+n.length);e.set(t),e.set(n,t.length),n=e,t=null}n.length>e?(s.enqueue(n.slice(0,e)),r(n.slice(e),s)):t=n},flush(e){t&&t.length&&e.enqueue(t)}})}}let _t=typeof F!=te;class bt{constructor(e,{readable:t,writable:n},{options:s,config:a,streamOptions:i,useWebWorkers:o,transferStreams:l,scripts:c},d){const{signal:u}=i;return r.assign(e,{busy:!0,readable:t.pipeThrough(new gt(a.chunkSize)).pipeThrough(new yt(t,i),{signal:u}),writable:n,options:r.assign({},s),scripts:c,transferStreams:l,terminate:()=>new _((t=>{const{worker:r,busy:n}=e;r?(n?e.resolveTerminated=t:(r.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,d(e)}}),(o&&_t?zt:St)(e,a)}}class yt extends k{constructor(e,{onstart:t,onprogress:r,size:n,onend:s}){let a=0;super({async start(){t&&await xt(t,n)},async transform(e,t){a+=e.length,r&&await xt(r,a,n),t.enqueue(e)},async flush(){e.size=a,s&&await xt(s,a)}})}}async function xt(e,...t){try{await e(...t)}catch(e){}}function St(e,t){return{run:()=>(async({options:e,readable:t,writable:r,onTaskFinished:n},s)=>{try{const n=new mt(e,s);await t.pipeThrough(n).pipeTo(r,{preventClose:!0,preventAbort:!0});const{signature:a,inputSize:i,outputSize:o}=n;return{signature:a,inputSize:i,outputSize:o}}finally{n()}})(e,t)}}function zt(e,t){const{baseURL:n,chunkSize:s}=t;if(!e.interface){let a;try{a=((e,t,n)=>{const s={type:"module"};let a,i;typeof e==re&&(e=e());try{a=new u(e,t)}catch(t){a=e}if(kt)try{i=new F(a)}catch(e){kt=!1,i=new F(a,s)}else i=new F(a,s);return i.addEventListener("message",(e=>(async({data:e},t)=>{const{type:n,value:s,messageId:a,result:i,error:o}=e,{reader:l,writer:c,resolveResult:d,rejectResult:u,onTaskFinished:h}=t;try{if(o){const{message:e,stack:t,code:n,name:s}=o,a=new f(e);r.assign(a,{stack:t,code:n,name:s}),w(a)}else{if("pull"==n){const{value:e,done:r}=await l.read();Et({type:pt,value:e,done:r,messageId:a},t)}n==pt&&(await c.ready,await c.write(new p(s)),Et({type:"ack",messageId:a},t)),n==ht&&w(null,i)}}catch(o){Et({type:ht,messageId:a},t),w(o)}function w(e,t){e?u(e):d(t),c&&c.releaseLock(),h()}})(e,n))),i})(e.scripts[0],n,e)}catch(r){return _t=!1,St(e,t)}r.assign(e,{worker:a,interface:{run:()=>(async(e,t)=>{let n,s;const a=new _(((e,t)=>{n=e,s=t}));r.assign(e,{reader:null,writer:null,resolveResult:n,rejectResult:s,result:a});const{readable:i,options:o,scripts:l}=e,{writable:c,closed:d}=(e=>{let t;const r=new _((e=>t=e));return{writable:new E({async write(t){const r=e.getWriter();await r.ready,await r.write(t),r.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:r}})(e.writable),u=Et({type:"start",scripts:l.slice(1),options:o,config:t,readable:i,writable:c},e);u||r.assign(e,{reader:i.getReader(),writer:c.getWriter()});const f=await a;return u||await c.getWriter().close(),await d,f})(e,{chunkSize:s})}})}return e.interface}let kt=!0,vt=!0;function Et(e,{worker:t,writer:r,onTaskFinished:n,transferStreams:s}){try{const{value:r,readable:n,writable:a}=e,i=[];if(r&&(r.byteLengtha?n.close():this.chunkOffset+=t}});return r}}class qt extends Ht{constructor(){super();const e=this,t=new E({write:t=>e.writeUint8Array(t)});r.defineProperty(e,Ot,{get:()=>t})}writeUint8Array(){}}class Pt extends Mt{constructor(e){super(),r.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const r=this,n=e+t,s=e||nt&&(a=a.slice(e,n)),new p(a)}}class Bt extends Ht{constructor(e){super();const t=new k,n=[];e&&n.push(["Content-Type",e]),r.defineProperty(this,Ot,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:n}).blob()}getData(){return this.blob}}class Vt extends Mt{constructor(e,t){super(),Kt(this,e,t)}async init(){await jt(this,tr,Jt),super.init()}readUint8Array(e,t){return Xt(this,e,t,tr,Jt)}}class Zt extends Mt{constructor(e,t){super(),Kt(this,e,t)}async init(){await jt(this,rr,Qt),super.init()}readUint8Array(e,t){return Xt(this,e,t,rr,Qt)}}function Kt(e,t,n){const{preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:o}=n;delete(n=r.assign({},n)).preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.combineSizeEocd,delete n.useXHR,r.assign(e,{url:t,options:n,preventHeadRequest:s,useRangeHeader:a,forceRangeRequests:i,combineSizeEocd:o})}async function jt(e,t,r){const{url:n,preventHeadRequest:a,useRangeHeader:i,forceRangeRequests:o,combineSizeEocd:l}=e;if((e=>{const{baseURL:t}=oe(),{protocol:r}=new u(e,t);return"http:"==r||"https:"==r})(n)&&(i||o)&&(void 0===a||a)){const n=await t(Ut,e,Yt(e,l?-22:void 0));if(!o&&n.headers.get("Accept-Ranges")!=It)throw new f(Ct);{let a;l&&(e.eocdCache=new p(await n.arrayBuffer()));const i=n.headers.get("Content-Range");if(i){const e=i.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=s(t))}}a===ee?await er(e,t,r):e.size=a}}else await er(e,t,r)}async function Xt(e,t,r,n,s){const{useRangeHeader:a,forceRangeRequests:i,eocdCache:o,size:l,options:c}=e;if(a||i){if(o&&t==l-22&&22==r)return o;const s=await n(Ut,e,Yt(e,t,r));if(206!=s.status)throw new f(Ct);return new p(await s.arrayBuffer())}{const{data:n}=e;return n||await s(e,c),new p(e.data.subarray(t,t+r))}}function Yt(e,t=0,n=1){return r.assign({},Gt(e),{[Nt]:It+"="+(0>t?t:t+"-"+(t+n-1))})}function Gt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?r.fromEntries(t):t}async function Jt(e){await $t(e,tr)}async function Qt(e){await $t(e,rr)}async function $t(e,t){const r=await t(Ut,e,Gt(e));e.data=new p(await r.arrayBuffer()),e.size||(e.size=e.data.length)}async function er(e,t,r){if(e.preventHeadRequest)await r(e,e.options);else{const n=(await t("HEAD",e,Gt(e))).headers.get("Content-Length");n?e.size=s(n):await r(e,e.options)}}async function tr(e,{options:t,url:n},s){const a=await fetch(n,r.assign({},t,{method:e,headers:s}));if(400>a.status)return a;throw 416==a.status?new f(Ct):new f(At+(a.statusText||a.status))}function rr(e,{url:t},n){return new _(((s,a)=>{const i=new XMLHttpRequest;if(i.addEventListener("load",(()=>{if(400>i.status){const e=[];i.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const r=t.trim().split(/\s*:\s*/);r[0]=r[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(r)})),s({status:i.status,arrayBuffer:()=>i.response,headers:new l(e)})}else a(416==i.status?new f(Ct):new f(At+(i.statusText||i.status)))}),!1),i.addEventListener("error",(e=>a(e.detail?e.detail.error:new f("Network error"))),!1),i.open(e,t),n)for(const e of r.entries(n))i.setRequestHeader(e[0],e[1]);i.responseType="arraybuffer",i.send()}))}class nr extends Mt{constructor(e,t={}){super(),r.assign(this,{url:e,reader:t.useXHR?new Zt(e,t):new Vt(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class sr extends Mt{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await _.all(t.map((async(r,n)=>{await r.init(),n!=t.length-1&&(e.lastDiskOffset+=r.size),e.size+=r.size}))),super.init()}async readUint8Array(e,t,r=0){const n=this,{readers:s}=this;let a,o=r;-1==o&&(o=s.length-1);let l=e;for(;l>=s[o].size;)l-=s[o].size,o++;const c=s[o],d=c.size;if(l+t>d){const s=d-l;a=new p(t),a.set(await cr(c,l,s)),a.set(await n.readUint8Array(e+s,t-s,r),s)}else a=await cr(c,l,t);return n.lastDiskNumber=i.max(o,n.lastDiskNumber),a}}class ar extends Ht{constructor(e,t=4294967295){super();const n=this;let s,a,i;r.assign(n,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new E({async write(t){const{availableSize:r}=n;if(i)t.lengtho})}}async function ir(e,t){if(!e.init||e.initialized)return _.resolve();await e.init(t)}function or(e){return t.isArray(e)&&(e=new sr(e)),e instanceof v&&(e={readable:e}),e}function lr(e){e.writable===ee&&typeof e.next==re&&(e=new ar(e)),e instanceof E&&(e={writable:e});const{writable:t}=e;return t.size===ee&&(t.size=0),e instanceof ar||r.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function cr(e,t,r,n){return e.readUint8Array(t,r,n)}const dr=sr,ur=ar,fr="diskNumberStart",pr="lastModDate",hr="lastAccessDate",wr="creationDate",mr="internalFileAttribute",gr="internalFileAttributes",_r="externalFileAttribute",br="externalFileAttributes",yr="msDosCompatible",xr="zip64",Sr="encrypted",zr="version",kr="versionMadeBy",vr="zipCrypto",Er=["filename","rawFilename","compressedSize","uncompressedSize",pr,"rawLastModDate","comment","rawComment",hr,wr,"offset",fr,fr,mr,gr,_r,br,yr,xr,Sr,zr,kr,vr,"directory","executable","bitFlag","signature","filenameUTF8","commentUTF8","compressionMethod","extraField","rawExtraField","extraFieldZip64","extraFieldUnicodePath","extraFieldUnicodeComment","extraFieldAES","extraFieldNTFS","extraFieldExtendedTimestamp"];class Rr{constructor(e){Er.forEach((t=>this[t]=e[t]))}}const Dr="File already exists",Tr="Zip file comment exceeds 64KB",Fr="File entry comment exceeds 64KB",Ar="File entry name exceeds 64KB",Cr="Version exceeds 65535",Wr="The strength must equal 1, 2, or 3",Nr="Extra field type exceeds 65535",Ur="Extra field data exceeds 64KB",Ir="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Lr="Undefined uncompressed size",Or=new p([7,0,2,0,65,69,3,0,0]);let Hr=0;const Mr=[];class qr{constructor(e,t={}){const n=(e=lr(e)).availableSize!==ee&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==ee&&e.maxSize>0&&e.maxSize!==1/0;r.assign(this,{writer:e,addSplitZipSignature:n,options:t,config:oe(),files:new l,filenames:new c,offset:t.offset===ee?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new c,bufferedWrites:0})}async add(e="",n,l={}){const c=this,{pendingAddFileCalls:u,config:g}=c;let b;HrMr.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new f(Dr);return c.filenames.add(e),b=(async(e,n,l,c)=>{n=n.trim(),c.directory&&!n.endsWith("/")?n+="/":c.directory=n.endsWith("/");const u=Vr(e,c,"encodeText",pe);let g=u(n);if(g===ee&&(g=pe(n)),Qr(g)>Y)throw new f(Ar);const b=c.comment||"";let y=u(b);if(y===ee&&(y=pe(b)),Qr(y)>Y)throw new f(Fr);const x=Vr(e,c,zr,20);if(x>Y)throw new f(Cr);const S=Vr(e,c,kr,20);if(S>Y)throw new f(Cr);const z=Vr(e,c,pr,new o),v=Vr(e,c,hr),E=Vr(e,c,wr),R=Vr(e,c,yr,!0);let D=Vr(e,c,gr,0);0===D&&(D=Vr(e,c,mr,0));let T=Vr(e,c,br,0);0===T&&(T=Vr(e,c,_r,0));const F=Vr(e,c,"passThrough");let A,C;F||(A=Vr(e,c,"password"),C=Vr(e,c,"rawPassword"));const W=Vr(e,c,"encryptionStrength",3),N=Vr(e,c,vr),U=Vr(e,c,"extendedTimestamp",!0),I=Vr(e,c,"keepOrder",!0),L=Vr(e,c,"level"),O=Vr(e,c,"useWebWorkers"),H=Vr(e,c,"bufferedWrite"),M=Vr(e,c,"dataDescriptorSignature",!1),q=Vr(e,c,"signal"),P=Vr(e,c,"useUnicodeFileNames",!0),B=Vr(e,c,"useCompressionStream"),V=Vr(e,c,"compressionMethod");let Z=Vr(e,c,"dataDescriptor",!0),K=Vr(e,c,xr);if(!N&&(A!==ee||C!==ee)&&(1>W||W>3))throw new f(Wr);let j=new p;const{extraField:te}=c;if(te){let e=0,t=0;te.forEach((t=>e+=4+Qr(t))),j=new p(e),te.forEach(((e,r)=>{if(r>Y)throw new f(Nr);if(Qr(e)>Y)throw new f(Ur);Gr(j,new h([r]),t),Gr(j,new h([Qr(e)]),t+2),Gr(j,e,t+4),t+=4+Qr(e)}))}let re=0,ne=0,se=0;if(F&&(({uncompressedSize:se}=c),se===ee))throw new f(Lr);const ae=!0===K;l&&(l=or(l),await ir(l),F?re=Zr(se):l.size===ee?(Z=!0,(K||K===ee)&&(K=!0,se=re=4294967296)):(se=l.size,re=Zr(se)));const{diskOffset:ie,diskNumber:oe,maxSize:le}=e.writer,ce=ae||se>X,de=ae||re>X,ue=ae||e.offset+e.pendingEntriesSize-ie>X,fe=Vr(e,c,"supportZip64SplitFile",!0)&&ae||oe+i.ceil(e.pendingEntriesSize/le)>Y;if(ue||ce||de||fe){if(!1===K||!I)throw new f(Ir);K=!0}K=K||!1;const he=Vr(e,c,Sr),{signature:we}=c,me=(e=>{const{rawFilename:t,lastModDate:r,lastAccessDate:n,creationDate:s,level:a,zip64:o,zipCrypto:l,useUnicodeFileNames:c,dataDescriptor:d,directory:u,rawExtraField:f,encryptionStrength:h,extendedTimestamp:m,encrypted:g}=e;let{version:_,compressionMethod:b}=e;const y=!u&&(a>0||a===ee&&0!==b);let x,S,z,k;if(g&&!l){x=new p(Qr(Or)+2);const e=Jr(x);jr(e,0,39169),Gr(x,Or,2),Kr(e,8,h)}else x=new p;if(m){z=new p(9+(n?4:0)+(s?4:0));const e=Jr(z);jr(e,0,21589),jr(e,2,Qr(z)-4),k=1+(n?2:0)+(s?4:0),Kr(e,4,k);let t=5;Xr(e,t,i.floor(r.getTime()/1e3)),t+=4,n&&(Xr(e,t,i.floor(n.getTime()/1e3)),t+=4),s&&Xr(e,t,i.floor(s.getTime()/1e3));try{S=new p(36);const e=Jr(S),t=Br(r);jr(e,0,10),jr(e,2,32),jr(e,8,1),jr(e,10,24),Yr(e,12,t),Yr(e,20,Br(n)||t),Yr(e,28,Br(s)||t)}catch(e){S=new p}}else S=z=new p;let v=0;c&&(v|=2048),d&&(v|=8),b===ee&&(b=y?8:0),8==b&&(a>=1&&3>a&&(v|=6),a>=3&&5>a&&(v|=1),9===a&&(v|=2)),o&&(_=_>45?_:45),g&&(v|=1,l||(_=_>51?_:51,x[9]=b,b=99));const E=new p(26),R=Jr(E);jr(R,0,_),jr(R,2,v),jr(R,4,b);const D=new w(1),T=Jr(D);let F;F=$>r?$:r>Q?Q:r,jr(T,0,(F.getHours()<<6|F.getMinutes())<<5|F.getSeconds()/2),jr(T,2,(F.getFullYear()-1980<<4|F.getMonth()+1)<<5|F.getDate());const A=D[0];Xr(R,6,A),jr(R,22,Qr(t));const C=Qr(x,z,S,f);jr(R,24,C);const W=new p(30+Qr(t)+C);return Xr(Jr(W),0,67324752),Gr(W,E,4),Gr(W,t,30),Gr(W,x,30+Qr(t)),Gr(W,z,30+Qr(t,x)),Gr(W,S,30+Qr(t,x,z)),Gr(W,f,30+Qr(t,x,z,S)),{localHeaderArray:W,headerArray:E,headerView:R,lastModDate:r,rawLastModDate:A,encrypted:g,compressed:y,version:_,compressionMethod:b,extraFieldExtendedTimestampFlag:k,rawExtraFieldExtendedTimestamp:z,rawExtraFieldNTFS:S,rawExtraFieldAES:x,extraFieldLength:C}})(c=r.assign({},c,{rawFilename:g,rawComment:y,version:x,versionMadeBy:S,lastModDate:z,lastAccessDate:v,creationDate:E,rawExtraField:j,zip64:K,zip64UncompressedSize:ce,zip64CompressedSize:de,zip64Offset:ue,zip64DiskNumberStart:fe,password:A,rawPassword:C,level:B||e.config.CompressionStream!==ee||e.config.CompressionStreamNative!==ee?L:0,useWebWorkers:O,encryptionStrength:W,extendedTimestamp:U,zipCrypto:N,bufferedWrite:H,keepOrder:I,useUnicodeFileNames:P,dataDescriptor:Z,dataDescriptorSignature:M,signal:q,msDosCompatible:R,internalFileAttribute:D,internalFileAttributes:D,externalFileAttribute:T,externalFileAttributes:T,useCompressionStream:B,passThrough:F,encrypted:!!(A&&Qr(A)||C&&Qr(C))||F&&he,signature:we,compressionMethod:V})),ge=(e=>{const{zip64:t,dataDescriptor:r,dataDescriptorSignature:n}=e;let s,a=new p,i=0;return r&&(a=new p(t?n?24:20:n?16:12),s=Jr(a),n&&(i=4,Xr(s,0,J))),{dataDescriptorArray:a,dataDescriptorView:s,dataDescriptorOffset:i}})(c),_e=Qr(me.localHeaderArray,ge.dataDescriptorArray);let be;ne=_e+re,e.options.usdz&&(ne+=ne+64),e.pendingEntriesSize+=ne;try{be=await(async(e,n,o,l,c)=>{const{files:u,writer:h}=e,{keepOrder:w,dataDescriptor:g,signal:b}=c,{headerInfo:y}=l,{usdz:x}=e.options,S=t.from(u.values()).pop();let z,v,E,R,D,T,F,A={};u.set(n,A);try{let t;w&&(t=S&&S.lock,A.lock=new _((e=>E=e))),!(c.bufferedWrite||e.writerLocked||e.bufferedWrites&&w)&&g||x?(T=h,await C()):(T=new k,F=new d(T.readable).blob(),T.writable.size=0,z=!0,e.bufferedWrites++,await ir(h)),await ir(T);const{writable:y}=h;let{diskOffset:v}=h;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new p(4);Xr(Jr(t),0,G),await Pr(y,t),e.offset+=4}x&&((e,t)=>{const{headerInfo:r}=e;let{localHeaderArray:n,extraFieldLength:s}=r,a=Jr(n),i=64-(t+Qr(n))%64;4>i&&(i+=64);const o=new p(i),l=Jr(o);jr(l,0,6534),jr(l,2,i-2);const c=n;r.localHeaderArray=n=new p(Qr(c)+i),Gr(n,c),Gr(n,o,Qr(c)),a=Jr(n),jr(a,28,s+i),e.metadataSize+=i})(l,e.offset-v),z||(await t,await W(y));const{diskNumber:N}=h;if(D=!0,A.diskNumberStart=N,A=await(async(e,t,{diskNumberStart:n,lock:o},l,c,d)=>{const{headerInfo:u,dataDescriptorInfo:f,metadataSize:h}=l,{localHeaderArray:w,headerArray:m,lastModDate:g,rawLastModDate:b,encrypted:y,compressed:x,version:S,compressionMethod:z,rawExtraFieldExtendedTimestamp:k,extraFieldExtendedTimestampFlag:v,rawExtraFieldNTFS:E,rawExtraFieldAES:R}=u,{dataDescriptorArray:D}=f,{rawFilename:T,lastAccessDate:F,creationDate:A,password:C,rawPassword:W,level:N,zip64:U,zip64UncompressedSize:I,zip64CompressedSize:L,zip64Offset:O,zip64DiskNumberStart:H,zipCrypto:M,dataDescriptor:q,directory:P,versionMadeBy:B,rawComment:V,rawExtraField:Z,useWebWorkers:K,onstart:j,onprogress:Y,onend:G,signal:J,encryptionStrength:Q,extendedTimestamp:$,msDosCompatible:te,internalFileAttributes:re,externalFileAttributes:ne,useCompressionStream:se,passThrough:ae}=d,ie={lock:o,versionMadeBy:B,zip64:U,directory:!!P,filenameUTF8:!0,rawFilename:T,commentUTF8:!0,rawComment:V,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:E,rawExtraFieldAES:R,rawExtraField:Z,extendedTimestamp:$,msDosCompatible:te,internalFileAttributes:re,externalFileAttributes:ne,diskNumberStart:n};let{signature:oe,uncompressedSize:le}=d,ce=0;ae||(le=0);const{writable:de}=t;if(e){e.chunkSize=(e=>i.max(e.chunkSize,64))(c),await Pr(de,w);const t=e.readable,r=t.size=e.size,n={options:{codecType:wt,level:N,rawPassword:W,password:C,encryptionStrength:Q,zipCrypto:y&&M,passwordVerification:y&&M&&b>>8&255,signed:!ae,compressed:x&&!ae,encrypted:y&&!ae,useWebWorkers:K,useCompressionStream:se,transferStreams:!1},config:c,streamOptions:{signal:J,size:r,onstart:j,onprogress:Y,onend:G}},a=await(async(e,t)=>{const{options:r,config:n}=t,{transferStreams:a,useWebWorkers:i,useCompressionStream:o,codecType:l,compressed:c,signed:d,encrypted:u}=r,{workerScripts:f,maxWorkers:p}=n;t.transferStreams=a||a===ee;const h=!(c||d||u||t.transferStreams);return t.useWebWorkers=!h&&(i||i===ee&&n.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[l]:[],r.useCompressionStream=o||o===ee&&n.useCompressionStream,(await(async()=>{const r=Rt.find((e=>!e.busy));if(r)return Ft(r),new bt(r,e,t,w);if(Rt.lengthDt.push({resolve:r,stream:e,workerOptions:t})))})()).run();function w(e){if(Dt.length){const[{resolve:t,stream:r,workerOptions:n}]=Dt.splice(0,1);t(new bt(e,r,n,w))}else e.worker?(Ft(e),((e,t)=>{const{config:r}=t,{terminateWorkerTimeout:n}=r;s.isFinite(n)&&n>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{Rt=Rt.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),n))})(e,t)):Rt=Rt.filter((t=>t!=e))}})({readable:t,writable:de},n);ce=a.outputSize,ae||(le=a.inputSize,oe=a.signature),de.size+=le}else await Pr(de,w);let ue;if(U){let e=4;I&&(e+=8),L&&(e+=8),O&&(e+=8),H&&(e+=4),ue=new p(e)}else ue=new p;return((e,t)=>{const{signature:r,rawExtraFieldZip64:n,compressedSize:s,uncompressedSize:i,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:d}=o,{dataDescriptorView:u,dataDescriptorOffset:f}=l,{zip64:p,zip64UncompressedSize:h,zip64CompressedSize:w,zipCrypto:m,dataDescriptor:g}=t;if(d&&!m||r===ee||(Xr(c,10,r),g&&Xr(u,f,r)),p){const e=Jr(n);jr(e,0,1),jr(e,2,Qr(n)-4);let t=4;h&&(Xr(c,18,X),Yr(e,t,a(i)),t+=8),w&&(Xr(c,14,X),Yr(e,t,a(s))),g&&(Yr(u,f+4,a(s)),Yr(u,f+12,a(i)))}else Xr(c,14,s),Xr(c,18,i),g&&(Xr(u,f+4,s),Xr(u,f+8,i))})({signature:oe,rawExtraFieldZip64:ue,compressedSize:ce,uncompressedSize:le,headerInfo:u,dataDescriptorInfo:f},d),q&&await Pr(de,D),r.assign(ie,{uncompressedSize:le,compressedSize:ce,lastModDate:g,rawLastModDate:b,creationDate:A,lastAccessDate:F,encrypted:y,zipCrypto:M,size:h+ce,compressionMethod:z,version:S,headerArray:m,signature:oe,rawExtraFieldZip64:ue,extraFieldExtendedTimestampFlag:v,zip64UncompressedSize:I,zip64CompressedSize:L,zip64Offset:O,zip64DiskNumberStart:H}),ie})(o,T,A,l,e.config,c),D=!1,u.set(n,A),A.filename=n,z){await T.writable.getWriter().close();let e=await F;await t,await C(),R=!0,g||(e=await(async(e,t,r,{zipCrypto:n})=>{let s;s=await t.slice(0,26).arrayBuffer(),26!=s.byteLength&&(s=s.slice(0,26));const a=new m(s);return e.encrypted&&!n||Xr(a,14,e.signature),e.zip64?(Xr(a,18,X),Xr(a,22,X)):(Xr(a,18,e.compressedSize),Xr(a,22,e.uncompressedSize)),await Pr(r,new p(s)),t.slice(s.byteLength)})(A,e,y,c)),await W(y),A.diskNumberStart=h.diskNumber,v=h.diskOffset,await e.stream().pipeTo(y,{preventClose:!0,preventAbort:!0,signal:b}),y.size+=e.size,R=!1}if(A.offset=e.offset-v,A.zip64)((e,t)=>{const{rawExtraFieldZip64:r,offset:n,diskNumberStart:s}=e,{zip64UncompressedSize:i,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,d=Jr(r);let u=4;i&&(u+=8),o&&(u+=8),l&&(Yr(d,u,a(n)),u+=8),c&&Xr(d,u,s)})(A,c);else if(A.offset>X)throw new f(Ir);return e.offset+=A.size,A}catch(t){if(z&&R||!z&&D){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}z?e.offset+=T.writable.size:e.offset=T.writable.size}throw u.delete(n),t}finally{z&&e.bufferedWrites--,E&&E(),v&&v()}async function C(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new _((t=>v=()=>{e.writerLocked=!1,t()})),await t}async function W(e){Qr(y.localHeaderArray)>h.availableSize&&(h.availableSize=0,await Pr(e,new p))}})(e,n,l,{headerInfo:me,dataDescriptorInfo:ge,metadataSize:_e},c)}finally{e.pendingEntriesSize-=ne}return r.assign(be,{name:n,comment:b,extraField:te}),new Rr(be)})(c,e,n,l),u.add(b),await b}catch(t){throw c.filenames.delete(e),t}finally{u.delete(b);const e=Mr.shift();e?e():Hr--}}async close(e=new p,r={}){const{pendingAddFileCalls:n,writer:s}=this,{writable:o}=s;for(;n.size;)await _.allSettled(t.from(n));return await(async(e,r,n)=>{const{files:s,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:d}=o,u=0,h=0,w=e.offset-l,m=s.size;for(const[,e]of s){const{rawFilename:t,rawExtraFieldZip64:r,rawExtraFieldAES:n,rawComment:s,rawExtraFieldNTFS:a,rawExtraField:o,extendedTimestamp:l,extraFieldExtendedTimestampFlag:c,lastModDate:d}=e;let u;if(l){u=new p(9);const e=Jr(u);jr(e,0,21589),jr(e,2,5),Kr(e,4,c),Xr(e,5,i.floor(d.getTime()/1e3))}else u=new p;e.rawExtraFieldCDExtendedTimestamp=u,h+=46+Qr(t,s,r,n,a,u,o)}const g=new p(h),_=Jr(g);await ir(o);let b=0;for(const[e,r]of t.from(s.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:i,rawExtraFieldAES:l,rawExtraFieldCDExtendedTimestamp:d,rawExtraFieldNTFS:f,rawExtraField:p,rawComment:h,versionMadeBy:w,headerArray:m,directory:y,zip64:x,zip64UncompressedSize:S,zip64CompressedSize:z,zip64DiskNumberStart:k,zip64Offset:v,msDosCompatible:E,internalFileAttributes:R,externalFileAttributes:D,diskNumberStart:T,uncompressedSize:F,compressedSize:A}=r,C=Qr(i,l,d,f,p);Xr(_,u,33639248),jr(_,u+4,w);const W=Jr(m);S||Xr(W,18,F),z||Xr(W,14,A),Gr(g,m,u+6),jr(_,u+30,C),jr(_,u+32,Qr(h)),jr(_,u+34,x&&k?Y:T),jr(_,u+36,R),D?Xr(_,u+38,D):y&&E&&Kr(_,u+38,16),Xr(_,u+42,x&&v?X:t),Gr(g,a,u+46),Gr(g,i,u+46+Qr(a)),Gr(g,l,u+46+Qr(a,i)),Gr(g,d,u+46+Qr(a,i,l)),Gr(g,f,u+46+Qr(a,i,l,d)),Gr(g,p,u+46+Qr(a,i,l,d,f)),Gr(g,h,u+46+Qr(a)+C);const N=46+Qr(a,h)+C;if(u-b>o.availableSize&&(o.availableSize=0,await Pr(c,g.slice(b,u)),b=u),u+=N,n.onprogress)try{await n.onprogress(e+1,s.size,new Rr(r))}catch(e){}}await Pr(c,b?g.slice(b):g);let y=o.diskNumber;const{availableSize:x}=o;22>x&&y++;let S=Vr(e,n,xr);if(w>X||h>X||m>Y||y>Y){if(!1===S)throw new f(Ir);S=!0}const z=new p(S?98:22),k=Jr(z);u=0,S&&(Xr(k,0,101075792),Yr(k,4,a(44)),jr(k,12,45),jr(k,14,45),Xr(k,16,y),Xr(k,20,d),Yr(k,24,a(m)),Yr(k,32,a(m)),Yr(k,40,a(h)),Yr(k,48,a(w)),Xr(k,56,117853008),Yr(k,64,a(w)+a(h)),Xr(k,72,y+1),Vr(e,n,"supportZip64SplitFile",!0)&&(y=Y,d=Y),m=Y,w=X,h=X,u+=76),Xr(k,u,101010256),jr(k,u+4,y),jr(k,u+6,d),jr(k,u+8,m),jr(k,u+10,m),Xr(k,u+12,h),Xr(k,u+16,w);const v=Qr(r);if(v){if(v>Y)throw new f(Tr);jr(k,u+20,v)}await Pr(c,z),v&&await Pr(c,r)})(this,e,r),Vr(this,r,"preventClose")||await o.getWriter().close(),s.getData?s.getData():o}}async function Pr(e,t){const r=e.getWriter();try{await r.ready,e.size+=Qr(t),await r.write(t)}finally{r.releaseLock()}}function Br(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function Vr(e,t,r,n){const s=t[r]===ee?e.options[r]:t[r];return s===ee?n:s}function Zr(e){return e+5*(i.floor(e/16383)+1)}function Kr(e,t,r){e.setUint8(t,r)}function jr(e,t,r){e.setUint16(t,r,!0)}function Xr(e,t,r){e.setUint32(t,r,!0)}function Yr(e,t,r){e.setBigUint64(t,r,!0)}function Gr(e,t,r){e.set(t,r)}function Jr(e){return new m(e.buffer)}function Qr(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}le({Deflate:function(e){const t=new j,r=(n=e&&e.chunkSize?e.chunkSize:65536)+5*(i.floor(n/16383)+1);var n;const s=new p(r);let a=e?e.level:-1;void 0===a&&(a=-1),t.deflateInit(a),t.next_out=s,this.append=(e,n)=>{let a,i,o=0,l=0,c=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=r,a=t.deflate(0),0!=a)throw new f("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==r?d.push(new p(s)):d.push(s.subarray(0,t.next_out_index))),c+=t.next_out_index,n&&t.next_in_index>0&&t.next_in_index!=o&&(n(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(i=new p(c),d.forEach((e=>{i.set(e,l),l+=e.length}))):i=d[0]?new p(d[0]):new p,i}},this.flush=()=>{let e,n,a=0,i=0;const o=[];do{if(t.next_out_index=0,t.avail_out=r,e=t.deflate(4),1!=e&&0!=e)throw new f("deflating: "+t.msg);r-t.avail_out>0&&o.push(s.slice(0,t.next_out_index)),i+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),n=new p(i),o.forEach((e=>{n.set(e,a),a+=e.length})),n}}}),e.BlobReader=Pt,e.BlobWriter=Bt,e.Data64URIReader=class extends Mt{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const n=e.indexOf(",")+1;r.assign(this,{dataURI:e,dataStart:n,size:i.floor(.75*(t-n))})}readUint8Array(e,t){const{dataStart:r,dataURI:n}=this,s=new p(t),a=4*i.floor(e/3),o=atob(n.substring(a+r,4*i.ceil((e+t)/3)+r)),l=e-3*i.floor(a/4);for(let e=l;l+t>e;e++)s[e-l]=o.charCodeAt(e);return s}},e.Data64URIWriter=class extends qt{constructor(e){super(),r.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let r=0,s=t.pending;const a=t.pending.length;for(t.pending="",r=0;r<3*i.floor((a+e.length)/3)-a;r++)s+=n.fromCharCode(e[r]);for(;r2?t.data+=z(s):t.pending=s}getData(){return this.data+z(this.pending)}},e.ERR_DUPLICATED_NAME=Dr,e.ERR_HTTP_RANGE=Ct,e.ERR_INVALID_COMMENT=Tr,e.ERR_INVALID_ENCRYPTION_STRENGTH=Wr,e.ERR_INVALID_ENTRY_COMMENT=Fr,e.ERR_INVALID_ENTRY_NAME=Ar,e.ERR_INVALID_EXTRAFIELD_DATA=Ur,e.ERR_INVALID_EXTRAFIELD_TYPE=Nr,e.ERR_INVALID_VERSION=Cr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Wt,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=Lr,e.ERR_UNSUPPORTED_FORMAT=Ir,e.HttpRangeReader=class extends nr{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=nr,e.Reader=Mt,e.SplitDataReader=sr,e.SplitDataWriter=ar,e.SplitZipReader=dr,e.SplitZipWriter=ur,e.TextReader=class extends Pt{constructor(e){super(new g([e],{type:"text/plain"}))}},e.TextWriter=class extends Bt{constructor(e){super(e),r.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,n=await super.getData();if(n.text&&t)return n.text();{const t=new FileReader;return new _(((s,a)=>{r.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>a(t.error)}),t.readAsText(n,e)}))}}},e.Uint8ArrayReader=class extends Mt{constructor(e){super(),r.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends qt{init(e=0){r.assign(this,{offset:0,array:new p(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const r=t.array;t.array=new p(r.length+e.length),t.array.set(r)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=qt,e.ZipWriter=qr,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:r}=new k;this.readable=t,this.zipWriter=new qr(r,e)}transform(e){const{readable:t,writable:r}=new k({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:r}}writable(e){const{readable:t,writable:r}=new k;return this.zipWriter.add(e,t),r}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=le,e.getMimeType=()=>"application/octet-stream",e.initReader=or,e.initStream=ir,e.initWriter=lr,e.readUint8Array=cr,e.terminateWorkers=async()=>{await _.allSettled(Rt.map((e=>(Ft(e),e.terminate()))))}})); diff --git a/dist/zip-no-worker-inflate.min.js b/dist/zip-no-worker-inflate.min.js index dc4caf0c..7dee9e37 100644 --- a/dist/zip-no-worker-inflate.min.js +++ b/dist/zip-no-worker-inflate.min.js @@ -1 +1 @@ -((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:i,Number:r,BigInt:a,Math:s,Date:o,Map:l,Set:c,Response:d,URL:u,Error:f,Uint8Array:h,Uint16Array:w,Uint32Array:_,DataView:p,Blob:b,Promise:g,TextEncoder:m,TextDecoder:y,document:x,crypto:k,btoa:v,TransformStream:S,ReadableStream:z,WritableStream:R,CompressionStream:D,DecompressionStream:T,navigator:E,Worker:A}="undefined"!=typeof globalThis?globalThis:this||self,C=-2,F=-3,U=-5,W=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],L=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],O=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],I=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],N=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],P=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],H=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function q(){let e,t,n,i,r,a;function s(e,t,s,o,l,c,d,u,f,h,w){let _,p,b,g,m,y,x,k,v,S,z,R,D,T,E;S=0,m=s;do{n[e[t+S]]++,S++,m--}while(0!==m);if(n[0]==s)return d[0]=-1,u[0]=0,0;for(k=u[0],y=1;15>=y&&0===n[y];y++);for(x=y,y>k&&(k=y),m=15;0!==m&&0===n[m];m--);for(b=m,k>m&&(k=m),u[0]=k,T=1<y;y++,T<<=1)if(0>(T-=n[y]))return F;if(0>(T-=n[m]))return F;for(n[m]+=T,a[1]=y=0,S=1,D=2;0!=--m;)a[D]=y+=n[S],D++,S++;m=0,S=0;do{0!==(y=e[t+S])&&(w[a[y]++]=m),S++}while(++m=x;x++)for(_=n[x];0!=_--;){for(;x>R+k;){if(g++,R+=k,E=b-R,E=E>k?k:E,(p=1<<(y=x-R))>_+1&&(p-=_+1,D=x,E>y))for(;++yn[++D];)p-=n[D];if(E=1<1440)return F;r[g]=z=h[0],h[0]+=E,0!==g?(a[g]=m,i[0]=y,i[1]=k,y=m>>>R-k,i[2]=z-r[g-1]-y,f.set(i,3*(r[g-1]+y))):d[0]=z}for(i[1]=x-R,s>S?w[S]w[S]?0:96,i[2]=w[S++]):(i[0]=c[w[S]-o]+16+64,i[2]=l[w[S++]-o]):i[0]=192,p=1<>>R;E>y;y+=p)f.set(i,3*(z+y));for(y=1<>>=1)m^=y;for(m^=y,v=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)i[o]=0;r.set(n.subarray(0,15),0),a.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,i,r,a,l)=>{let c;return o(19),e[0]=0,c=s(n,0,19,19,null,null,r,i,a,e,t),c==F?l.msg="oversubscribed dynamic bit lengths tree":c!=U&&0!==i[0]||(l.msg="incomplete dynamic bit lengths tree",c=F),c},this.inflate_trees_dynamic=(n,i,r,a,l,c,d,u,f)=>{let h;return o(288),e[0]=0,h=s(r,0,n,257,I,N,c,a,u,e,t),0!=h||0===a[0]?(h==F?f.msg="oversubscribed literal/length tree":-4!=h&&(f.msg="incomplete literal/length tree",h=F),h):(o(288),h=s(r,n,i,0,P,H,d,l,u,e,t),0!=h||0===l[0]&&n>257?(h==F?f.msg="oversubscribed distance tree":h==U?(f.msg="incomplete distance tree",h=F):-4!=h&&(f.msg="empty distance tree with lengths",h=F),h):0)}}function B(){const e=this;let t,n,i,r,a=0,s=0,o=0,l=0,c=0,d=0,u=0,f=0,h=0,w=0;function _(e,t,n,i,r,a,s,o){let l,c,d,u,f,h,w,_,p,b,g,m,y,x,k,v;w=o.next_in_index,_=o.avail_in,f=s.bitb,h=s.bitk,p=s.write,b=ph;)_--,f|=(255&o.read_byte(w++))<>=c[v+1],h-=c[v+1],16&u){for(u&=15,y=c[v+2]+(f&W[u]),f>>=u,h-=u;15>h;)_--,f|=(255&o.read_byte(w++))<>=c[v+1],h-=c[v+1],16&u){for(u&=15;u>h;)_--,f|=(255&o.read_byte(w++))<>=u,h-=u,b-=y,x>p){k=p-x;do{k+=s.end}while(0>k);if(u=s.end-k,y>u){if(y-=u,p-k>0&&u>p-k)do{s.win[p++]=s.win[k++]}while(0!=--u);else s.win.set(s.win.subarray(k,k+u),p),p+=u,k+=u,u=0;k=0}}else k=p-x,p-k>0&&2>p-k?(s.win[p++]=s.win[k++],s.win[p++]=s.win[k++],y-=2):(s.win.set(s.win.subarray(k,k+2),p),p+=2,k+=2,y-=2);if(p-k>0&&y>p-k)do{s.win[p++]=s.win[k++]}while(0!=--y);else s.win.set(s.win.subarray(k,k+y),p),p+=y,k+=y,y=0;break}if(64&u)return o.msg="invalid distance code",y=o.avail_in-_,y=y>h>>3?h>>3:y,_+=y,w-=y,h-=y<<3,s.bitb=f,s.bitk=h,o.avail_in=_,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=p,F;l+=c[v+2],l+=f&W[u],v=3*(d+l),u=c[v]}break}if(64&u)return 32&u?(y=o.avail_in-_,y=y>h>>3?h>>3:y,_+=y,w-=y,h-=y<<3,s.bitb=f,s.bitk=h,o.avail_in=_,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=p,1):(o.msg="invalid literal/length code",y=o.avail_in-_,y=y>h>>3?h>>3:y,_+=y,w-=y,h-=y<<3,s.bitb=f,s.bitk=h,o.avail_in=_,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=p,F);if(l+=c[v+2],l+=f&W[u],v=3*(d+l),0===(u=c[v])){f>>=c[v+1],h-=c[v+1],s.win[p++]=c[v+2],b--;break}}else f>>=c[v+1],h-=c[v+1],s.win[p++]=c[v+2],b--}while(b>=258&&_>=10);return y=o.avail_in-_,y=y>h>>3?h>>3:y,_+=y,w-=y,h-=y<<3,s.bitb=f,s.bitk=h,o.avail_in=_,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=p,0}e.init=(e,a,s,o,l,c)=>{t=0,u=e,f=a,i=s,h=o,r=l,w=c,n=null},e.proc=(e,p,b)=>{let g,m,y,x,k,v,S,z=0,R=0,D=0;for(D=p.next_in_index,x=p.avail_in,z=e.bitb,R=e.bitk,k=e.write,v=k=258&&x>=10&&(e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,b=_(u,f,i,h,r,w,e,p),D=p.next_in_index,x=p.avail_in,z=e.bitb,R=e.bitk,k=e.write,v=kR;){if(0===x)return e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,z|=(255&p.read_byte(D++))<>>=n[m+1],R-=n[m+1],y=n[m],0===y){l=n[m+2],t=6;break}if(16&y){c=15&y,a=n[m+2],t=2;break}if(!(64&y)){o=y,s=m/3+n[m+2];break}if(32&y){t=7;break}return t=9,p.msg="invalid literal/length code",b=F,e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);case 2:for(g=c;g>R;){if(0===x)return e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,z|=(255&p.read_byte(D++))<>=g,R-=g,o=f,n=r,s=w,t=3;case 3:for(g=o;g>R;){if(0===x)return e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,z|=(255&p.read_byte(D++))<>=n[m+1],R-=n[m+1],y=n[m],16&y){c=15&y,d=n[m+2],t=4;break}if(!(64&y)){o=y,s=m/3+n[m+2];break}return t=9,p.msg="invalid distance code",b=F,e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);case 4:for(g=c;g>R;){if(0===x)return e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,z|=(255&p.read_byte(D++))<>=g,R-=g,t=5;case 5:for(S=k-d;0>S;)S+=e.end;for(;0!==a;){if(0===v&&(k==e.end&&0!==e.read&&(k=0,v=k7&&(R-=8,x++,D--),e.write=k,b=e.inflate_flush(p,b),k=e.write,v=k{}}q.inflate_trees_fixed=(e,t,n,i)=>(e[0]=9,t[0]=5,n[0]=L,i[0]=O,0);const M=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function V(e,t){const n=this;let i,r=0,a=0,s=0,o=0;const l=[0],c=[0],d=new B;let u=0,f=new Int32Array(4320);const w=new q;n.bitk=0,n.bitb=0,n.win=new h(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==r&&d.free(e),r=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let i,r,a;return r=e.next_out_index,a=n.read,i=(a>n.write?n.end:n.write)-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==U&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i,a==n.end&&(a=0,n.write==n.end&&(n.write=0),i=n.write-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==U&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i),e.next_out_index=r,n.read=a,t},n.proc=(e,t)=>{let h,_,p,b,g,m,y,x;for(b=e.next_in_index,g=e.avail_in,_=n.bitb,p=n.bitk,m=n.write,y=mp;){if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,_|=(255&e.read_byte(b++))<>>1){case 0:_>>>=3,p-=3,h=7&p,_>>>=h,p-=h,r=1;break;case 1:k=[],v=[],S=[[]],z=[[]],q.inflate_trees_fixed(k,v,S,z),d.init(k[0],v[0],S[0],0,z[0],0),_>>>=3,p-=3,r=6;break;case 2:_>>>=3,p-=3,r=3;break;case 3:return _>>>=3,p-=3,r=9,e.msg="invalid block type",t=F,n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t)}break;case 1:for(;32>p;){if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,_|=(255&e.read_byte(b++))<>>16&65535)!=(65535&_))return r=9,e.msg="invalid stored block lengths",t=F,n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);a=65535&_,_=p=0,r=0!==a?2:0!==u?7:0;break;case 2:if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(0===y&&(m==n.end&&0!==n.read&&(m=0,y=mg&&(h=g),h>y&&(h=y),n.win.set(e.read_buf(b,h),m),b+=h,g-=h,m+=h,y-=h,0!=(a-=h))break;r=0!==u?7:0;break;case 3:for(;14>p;){if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,_|=(255&e.read_byte(b++))<29||(h>>5&31)>29)return r=9,e.msg="too many length or distance symbols",t=F,n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(h=258+(31&h)+(h>>5&31),!i||i.lengthx;x++)i[x]=0;_>>>=14,p-=14,o=0,r=4;case 4:for(;4+(s>>>10)>o;){for(;3>p;){if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,_|=(255&e.read_byte(b++))<>>=3,p-=3}for(;19>o;)i[M[o++]]=0;if(l[0]=7,h=w.inflate_trees_bits(i,l,c,f,e),0!=h)return(t=h)==F&&(i=null,r=9),n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);o=0,r=5;case 5:for(;h=s,258+(31&h)+(h>>5&31)>o;){let a,d;for(h=l[0];h>p;){if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,_|=(255&e.read_byte(b++))<d)_>>>=h,p-=h,i[o++]=d;else{for(x=18==d?7:d-14,a=18==d?11:3;h+x>p;){if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,_|=(255&e.read_byte(b++))<>>=h,p-=h,a+=_&W[x],_>>>=x,p-=x,x=o,h=s,x+a>258+(31&h)+(h>>5&31)||16==d&&1>x)return i=null,r=9,e.msg="invalid bit length repeat",t=F,n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d=16==d?i[x-1]:0;do{i[x++]=d}while(0!=--a);o=x}}if(c[0]=-1,R=[],D=[],T=[],E=[],R[0]=9,D[0]=6,h=s,h=w.inflate_trees_dynamic(257+(31&h),1+(h>>5&31),i,R,D,T,E,f,e),0!=h)return h==F&&(i=null,r=9),t=h,n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d.init(R[0],D[0],f,T[0],f,E[0]),r=6;case 6:if(n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),b=e.next_in_index,g=e.avail_in,_=n.bitb,p=n.bitk,m=n.write,y=m{n.reset(e,null),n.win=null,f=null},n.set_dictionary=(e,t,i)=>{n.win.set(e.subarray(t,t+i),0),n.read=n.write=i},n.sync_point=()=>1==r?1:0}const K=13,Z=[0,0,255,255];function G(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):C}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,i)=>(n.msg=null,e.blocks=null,8>i||i>15?(e.inflateEnd(n),C):(e.wbits=i,n.istate.blocks=new V(n,1<{let n,i;if(!e||!e.istate||!e.next_in)return C;const r=e.istate;for(t=4==t?U:0,n=U;;)switch(r.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(r.method=e.read_byte(e.next_in_index++)))){r.mode=K,e.msg="unknown compression method",r.marker=5;break}if(8+(r.method>>4)>r.wbits){r.mode=K,e.msg="invalid win size",r.marker=5;break}r.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,i=255&e.read_byte(e.next_in_index++),((r.method<<8)+i)%31!=0){r.mode=K,e.msg="incorrect header check",r.marker=5;break}if(!(32&i)){r.mode=7;break}r.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,r.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,r.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,r.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,r.need+=255&e.read_byte(e.next_in_index++),r.mode=6,2);case 6:return r.mode=K,e.msg="need dictionary",r.marker=0,C;case 7:if(n=r.blocks.proc(e,n),n==F){r.mode=K,r.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,r.blocks.reset(e,r.was),r.mode=12;case 12:return e.avail_in=0,1;case K:return F;default:return C}},e.inflateSetDictionary=(e,t,n)=>{let i=0,r=n;if(!e||!e.istate||6!=e.istate.mode)return C;const a=e.istate;return r<1<{let n,i,r,a,s;if(!e||!e.istate)return C;const o=e.istate;if(o.mode!=K&&(o.mode=K,o.marker=0),0===(n=e.avail_in))return U;for(i=e.next_in_index,r=o.marker;0!==n&&4>r;)e.read_byte(i)==Z[r]?r++:r=0!==e.read_byte(i)?0:4-r,i++,n--;return e.total_in+=i-e.next_in_index,e.next_in_index=i,e.avail_in=n,o.marker=r,4!=r?F:(a=e.total_in,s=e.total_out,t(e),e.total_in=a,e.total_out=s,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():C}function j(){}j.prototype={inflateInit(e){const t=this;return t.istate=new G,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):C},inflateEnd(){const e=this;if(!e.istate)return C;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):C},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):C},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const X=4294967295,Y=65535,J=33639248,Q=101075792,$=22,ee=void 0,te="undefined",ne="function";class ie{constructor(e){return class extends S{constructor(t,n){const i=new e(n);super({transform(e,t){t.enqueue(i.append(e))},flush(e){const t=i.flush();t&&e.enqueue(t)}})}}}}let re=2;try{typeof E!=te&&E.hardwareConcurrency&&(re=E.hardwareConcurrency)}catch(e){}const ae={chunkSize:524288,maxWorkers:re,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:ee,CompressionStreamNative:typeof D!=te&&D,DecompressionStreamNative:typeof T!=te&&T},se=n.assign({},ae);function oe(){return se}function le(e){const{baseURL:n,chunkSize:i,maxWorkers:r,terminateWorkerTimeout:a,useCompressionStream:s,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:u,workerScripts:h}=e;if(ce("baseURL",n),ce("chunkSize",i),ce("maxWorkers",r),ce("terminateWorkerTimeout",a),ce("useCompressionStream",s),ce("useWebWorkers",o),l&&(se.CompressionStream=new ie(l)),c&&(se.DecompressionStream=new ie(c)),ce("CompressionStream",d),ce("DecompressionStream",u),h!==ee){const{deflate:e,inflate:n}=h;if((e||n)&&(se.workerScripts||(se.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");se.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");se.workerScripts.inflate=n}}}function ce(e,t){t!==ee&&(se[e]=t)}const de=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;de[e]=t}class ue{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,i=0|e.length;i>n;n++)t=t>>>8^de[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class fe extends S{constructor(){let e;const t=new ue;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new h(4);new p(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const he={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],i=he.getPartial(n);return 32===i?e.concat(t):he._shiftRight(t,i,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+he.getPartial(n)},clamp(e,t){if(32*e.length0&&t&&(e[n-1]=he.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>s.round(e/1099511627776)||32,_shiftRight(e,t,n,i){for(void 0===i&&(i=[]);t>=32;t-=32)i.push(n),n=0;if(0===t)return i.concat(e);for(let r=0;r>>t),n=e[r]<<32-t;const r=e.length?e[e.length-1]:0,a=he.getPartial(r);return i.push(he.partial(t+a&31,t+a>32?n:i.pop(),1)),i}},we={bytes:{fromBits(e){const t=he.bitLength(e)/8,n=new h(t);let i;for(let r=0;t>r;r++)3&r||(i=e[r/4]),n[r]=i>>>24,i<<=8;return n},toBits(e){const t=[];let n,i=0;for(n=0;n9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new _(n);let s=0;for(let e=t.blockSize+i-(t.blockSize+i&t.blockSize-1);r>=e;e+=t.blockSize)t._block(a.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=he.concat(t,[he.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,i){return e>19?e>39?e>59?e>79?void 0:t^n^i:t&n|t&i|n&i:t^n^i:t&n|~t&i}_S(e,t){return t<>>32-e}_block(e){const n=this,i=n._h,r=t(80);for(let t=0;16>t;t++)r[t]=e[t];let a=i[0],o=i[1],l=i[2],c=i[3],d=i[4];for(let e=0;79>=e;e++){16>e||(r[e]=n._S(1,r[e-3]^r[e-8]^r[e-14]^r[e-16]));const t=n._S(5,a)+n._f(e,o,l,c)+d+r[e]+n._key[s.floor(e/20)]|0;d=c,c=l,l=n._S(30,o),o=a,a=t}i[0]=i[0]+a|0,i[1]=i[1]+o|0,i[2]=i[2]+l|0,i[3]=i[3]+c|0,i[4]=i[4]+d|0}},pe={getRandomValues(e){const t=new _(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(s.random()>.5?1:-1))};for(let i,r=0;rnew be.hmacSha1(we.bytes.toBits(e)),pbkdf2(e,t,n,i){if(n=n||1e4,0>i||0>n)throw new f("invalid params to pbkdf2");const r=1+(i>>5)<<2;let a,s,o,l,c;const d=new ArrayBuffer(r),u=new p(d);let h=0;const w=he;for(t=we.bytes.toBits(t),c=1;(r||1)>h;c++){for(a=s=e.encrypt(w.concat(t,[c])),o=1;n>o;o++)for(s=e.encrypt(s),l=0;lh&&or&&(e=(new n).update(e).finalize());for(let t=0;r>t;t++)i[0][t]=909522486^e[t],i[1][t]=1549556828^e[t];t._baseHash[0].update(i[0]),t._baseHash[1].update(i[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},ge=typeof k!=te&&typeof k.getRandomValues==ne,me="Invalid password",ye="Invalid signature",xe="zipjs-abort-check-password";function ke(e){return ge?k.getRandomValues(e):pe.getRandomValues(e)}const ve=16,Se={name:"PBKDF2"},ze=n.assign({hash:{name:"HMAC"}},Se),Re=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Se),De=["deriveBits"],Te=[8,12,16],Ee=[16,24,32],Ae=10,Ce=[0,0,0,0],Fe=typeof k!=te,Ue=Fe&&k.subtle,We=Fe&&typeof Ue!=te,Le=we.bytes,Oe=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],i=t._tables[1],r=e.length;let a,s,o,l=1;if(4!==r&&6!==r&&8!==r)throw new f("invalid aes key size");for(t._key=[s=e.slice(0),o=[]],a=r;4*r+28>a;a++){let e=s[a-1];(a%r==0||8===r&&a%r==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],a%r==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),s[a]=s[a-r]^e}for(let e=0;a;e++,a--){const t=s[3&e?a:a-4];o[e]=4>=a||4>e?t:i[0][n[t>>>24]]^i[1][n[t>>16&255]]^i[2][n[t>>8&255]]^i[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],i=t[4],r=[],a=[];let s,o,l,c;for(let e=0;256>e;e++)a[(r[e]=e<<1^283*(e>>7))^e]=e;for(let d=s=0;!n[d];d^=o||1,s=a[s]||1){let a=s^s<<1^s<<2^s<<3^s<<4;a=a>>8^255&a^99,n[d]=a,i[a]=d,c=r[l=r[o=r[d]]];let u=16843009*c^65537*l^257*o^16843008*d,f=257*r[a]^16843008*a;for(let n=0;4>n;n++)e[n][d]=f=f<<24^f>>>8,t[n][a]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],i=n.length/4-2,r=[0,0,0,0],a=this._tables[t],s=a[0],o=a[1],l=a[2],c=a[3],d=a[4];let u,h,w,_=e[0]^n[0],p=e[t?3:1]^n[1],b=e[2]^n[2],g=e[t?1:3]^n[3],m=4;for(let e=0;i>e;e++)u=s[_>>>24]^o[p>>16&255]^l[b>>8&255]^c[255&g]^n[m],h=s[p>>>24]^o[b>>16&255]^l[g>>8&255]^c[255&_]^n[m+1],w=s[b>>>24]^o[g>>16&255]^l[_>>8&255]^c[255&p]^n[m+2],g=s[g>>>24]^o[_>>16&255]^l[p>>8&255]^c[255&b]^n[m+3],m+=4,_=u,p=h,b=w;for(let e=0;4>e;e++)r[t?3&-e:e]=d[_>>>24]<<24^d[p>>16&255]<<16^d[b>>8&255]<<8^d[255&g]^n[m++],u=_,_=p,p=b,b=g,g=u;return r}},Ie=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,i=255&e;255===t?(t=0,255===n?(n=0,255===i?i=0:++i):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=i}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let i;if(!(i=t.length))return[];const r=he.bitLength(t);for(let r=0;i>r;r+=4){this.incCounter(n);const i=e.encrypt(n);t[r]^=i[0],t[r+1]^=i[1],t[r+2]^=i[2],t[r+3]^=i[3]}return he.clamp(t,r)}},Ne=be.hmacSha1;let Pe=Fe&&We&&typeof Ue.importKey==ne,He=Fe&&We&&typeof Ue.deriveBits==ne;class qe extends S{constructor({password:e,rawPassword:t,signed:i,encryptionStrength:r,checkPasswordOnly:a}){super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:Ke(e,t),signed:i,strength:r-1,pending:new h})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:s,ready:o}=n;i?(await(async(e,t,n,i)=>{const r=await Ve(e,t,n,Ge(i,0,Te[t])),a=Ge(i,Te[t]);if(r[0]!=a[0]||r[1]!=a[1])throw new f(me)})(n,r,i,Ge(e,0,Te[r]+2)),e=Ge(e,Te[r]+2),a?t.error(new f(xe)):s()):await o;const l=new h(e.length-Ae-(e.length-Ae)%ve);t.enqueue(Me(n,e,l,0,Ae,!0))},async flush(e){const{signed:t,ctr:n,hmac:i,pending:r,ready:a}=this;if(i&&n){await a;const s=Ge(r,0,r.length-Ae),o=Ge(r,r.length-Ae);let l=new h;if(s.length){const e=Xe(Le,s);i.update(e);const t=n.update(e);l=je(Le,t)}if(t){const e=Ge(je(Le,i.digest()),0,Ae);for(let t=0;Ae>t;t++)if(e[t]!=o[t])throw new f(ye)}e.enqueue(l)}}})}}class Be extends S{constructor({password:e,rawPassword:t,encryptionStrength:i}){let r;super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:Ke(e,t),strength:i-1,pending:new h})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:a,ready:s}=n;let o=new h;i?(o=await(async(e,t,n)=>{const i=ke(new h(Te[t]));return Ze(i,await Ve(e,t,n,i))})(n,r,i),a()):await s;const l=new h(o.length+e.length-e.length%ve);l.set(o,0),t.enqueue(Me(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:i,ready:a}=this;if(n&&t){await a;let s=new h;if(i.length){const e=t.update(Xe(Le,i));n.update(e),s=je(Le,e)}r.signature=je(Le,n.digest()).slice(0,Ae),e.enqueue(Ze(s,r.signature))}}}),r=this}}function Me(e,t,n,i,r,a){const{ctr:s,hmac:o,pending:l}=e,c=t.length-r;let d;for(l.length&&(t=Ze(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new h(t)).set(n,0)}return e})(n,c-c%ve)),d=0;c-ve>=d;d+=ve){const e=Xe(Le,Ge(t,d,d+ve));a&&o.update(e);const r=s.update(e);a||o.update(r),n.set(je(Le,r),d+i)}return e.pending=Ge(t,d),n}async function Ve(e,i,r,a){e.password=null;const s=await(async(e,t,n,i,r)=>{if(!Pe)return be.importKey(t);try{return await Ue.importKey("raw",t,n,!1,r)}catch(e){return Pe=!1,be.importKey(t)}})(0,r,ze,0,De),o=await(async(e,t,n)=>{if(!He)return be.pbkdf2(t,e.salt,Re.iterations,n);try{return await Ue.deriveBits(e,t,n)}catch(i){return He=!1,be.pbkdf2(t,e.salt,Re.iterations,n)}})(n.assign({salt:a},Re),s,8*(2*Ee[i]+2)),l=new h(o),c=Xe(Le,Ge(l,0,Ee[i])),d=Xe(Le,Ge(l,Ee[i],2*Ee[i])),u=Ge(l,2*Ee[i]);return n.assign(e,{keys:{key:c,authentication:d,passwordVerification:u},ctr:new Ie(new Oe(c),t.from(Ce)),hmac:new Ne(d)}),u}function Ke(e,t){return t===ee?(e=>{if(typeof m==te){const t=new h((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),r=~e.crcKey2.get(),e.keys=[n,i,r]}function nt(e){const t=2|e.keys[2];return it(s.imul(t,1^t)>>>8)}function it(e){return 255&e}function rt(e){return 4294967295&e}const at="deflate-raw";class st extends S{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:i}){super({});const{compressed:r,encrypted:a,useCompressionStream:s,zipCrypto:o,signed:l,level:c}=e,d=this;let u,f,h=lt(super.readable);a&&!o||!l||(u=new fe,h=ut(h,u)),r&&(h=dt(h,s,{level:c,chunkSize:t},i,n)),a&&(o?h=ut(h,new Je(e)):(f=new Be(e),h=ut(h,f))),ct(d,h,(()=>{let e;a&&!o&&(e=f.signature),a&&!o||!l||(e=new p(u.value.buffer).getUint32(0)),d.signature=e}))}}class ot extends S{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:i}){super({});const{zipCrypto:r,encrypted:a,signed:s,signature:o,compressed:l,useCompressionStream:c}=e;let d,u,h=lt(super.readable);a&&(r?h=ut(h,new Ye(e)):(u=new qe(e),h=ut(h,u))),l&&(h=dt(h,c,{chunkSize:t},i,n)),a&&!r||!s||(d=new fe,h=ut(h,d)),ct(this,h,(()=>{if((!a||r)&&s){const e=new p(d.value.buffer);if(o!=e.getUint32(0,!1))throw new f(ye)}}))}}function lt(e){return ut(e,new S({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ct(e,t,i){t=ut(t,new S({flush:i})),n.defineProperty(e,"readable",{get:()=>t})}function dt(e,t,n,i,r){try{e=ut(e,new(t&&i?i:r)(at,n))}catch(i){if(!t)return e;try{e=ut(e,new r(at,n))}catch(t){return e}}return e}function ut(e,t){return e.pipeThrough(t)}const ft="data",ht="close",wt="inflate";class _t extends S{constructor(e,t){super({});const i=this,{codecType:r}=e;let a;r.startsWith("deflate")?a=st:r.startsWith(wt)&&(a=ot);let s=0,o=0;const l=new a(e,t),c=super.readable,d=new S({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(i,{inputSize:o})}}),u=new S({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){const{signature:e}=l;n.assign(i,{signature:e,outputSize:s,inputSize:o})}});n.defineProperty(i,"readable",{get:()=>c.pipeThrough(d).pipeThrough(l).pipeThrough(u)})}}class pt extends S{constructor(e){let t;super({transform:function n(i,r){if(t){const e=new h(t.length+i.length);e.set(t),e.set(i,t.length),i=e,t=null}i.length>e?(r.enqueue(i.slice(0,e)),n(i.slice(e),r)):t=i},flush(e){t&&t.length&&e.enqueue(t)}})}}let bt=typeof A!=te;class gt{constructor(e,{readable:t,writable:i},{options:r,config:a,streamOptions:s,useWebWorkers:o,transferStreams:l,scripts:c},d){const{signal:u}=s;return n.assign(e,{busy:!0,readable:t.pipeThrough(new pt(a.chunkSize)).pipeThrough(new mt(t,s),{signal:u}),writable:i,options:n.assign({},r),scripts:c,transferStreams:l,terminate:()=>new g((t=>{const{worker:n,busy:i}=e;n?(i?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,d(e)}}),(o&&bt?kt:xt)(e,a)}}class mt extends S{constructor(e,{onstart:t,onprogress:n,size:i,onend:r}){let a=0;super({async start(){t&&await yt(t,i)},async transform(e,t){a+=e.length,n&&await yt(n,a,i),t.enqueue(e)},async flush(){e.size=a,r&&await yt(r,a)}})}}async function yt(e,...t){try{await e(...t)}catch(e){}}function xt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:i},r)=>{try{const i=new _t(e,r);await t.pipeThrough(i).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:a,inputSize:s,outputSize:o}=i;return{signature:a,inputSize:s,outputSize:o}}finally{i()}})(e,t)}}function kt(e,t){const{baseURL:i,chunkSize:r}=t;if(!e.interface){let a;try{a=((e,t,i)=>{const r={type:"module"};let a,s;typeof e==ne&&(e=e());try{a=new u(e,t)}catch(t){a=e}if(vt)try{s=new A(a)}catch(e){vt=!1,s=new A(a,r)}else s=new A(a,r);return s.addEventListener("message",(e=>(async({data:e},t)=>{const{type:i,value:r,messageId:a,result:s,error:o}=e,{reader:l,writer:c,resolveResult:d,rejectResult:u,onTaskFinished:w}=t;try{if(o){const{message:e,stack:t,code:i,name:r}=o,a=new f(e);n.assign(a,{stack:t,code:i,name:r}),_(a)}else{if("pull"==i){const{value:e,done:n}=await l.read();zt({type:ft,value:e,done:n,messageId:a},t)}i==ft&&(await c.ready,await c.write(new h(r)),zt({type:"ack",messageId:a},t)),i==ht&&_(null,s)}}catch(o){zt({type:ht,messageId:a},t),_(o)}function _(e,t){e?u(e):d(t),c&&c.releaseLock(),w()}})(e,i))),s})(e.scripts[0],i,e)}catch(n){return bt=!1,xt(e,t)}n.assign(e,{worker:a,interface:{run:()=>(async(e,t)=>{let i,r;const a=new g(((e,t)=>{i=e,r=t}));n.assign(e,{reader:null,writer:null,resolveResult:i,rejectResult:r,result:a});const{readable:s,options:o,scripts:l}=e,{writable:c,closed:d}=(e=>{let t;const n=new g((e=>t=e));return{writable:new R({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),u=zt({type:"start",scripts:l.slice(1),options:o,config:t,readable:s,writable:c},e);u||n.assign(e,{reader:s.getReader(),writer:c.getWriter()});const f=await a;return u||await c.getWriter().close(),await d,f})(e,{chunkSize:r})}})}return e.interface}let vt=!0,St=!0;function zt(e,{worker:t,writer:n,onTaskFinished:i,transferStreams:r}){try{const{value:n,readable:i,writable:a}=e,s=[];if(n&&(n.byteLengtha?i.close():this.chunkOffset+=t}});return n}}class Ht extends Nt{constructor(){super();const e=this,t=new R({write:t=>e.writeUint8Array(t)});n.defineProperty(e,It,{get:()=>t})}writeUint8Array(){}}class qt extends Pt{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,i=e+t,r=e||it&&(a=a.slice(e,i)),new h(a)}}class Bt extends Nt{constructor(e){super();const t=new S,i=[];e&&i.push(["Content-Type",e]),n.defineProperty(this,It,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:i}).blob()}getData(){return this.blob}}class Mt extends Pt{constructor(e,t){super(),Kt(this,e,t)}async init(){await Zt(this,en,Yt),super.init()}readUint8Array(e,t){return Gt(this,e,t,en,Yt)}}class Vt extends Pt{constructor(e,t){super(),Kt(this,e,t)}async init(){await Zt(this,tn,Jt),super.init()}readUint8Array(e,t){return Gt(this,e,t,tn,Jt)}}function Kt(e,t,i){const{preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s,combineSizeEocd:o}=i;delete(i=n.assign({},i)).preventHeadRequest,delete i.useRangeHeader,delete i.forceRangeRequests,delete i.combineSizeEocd,delete i.useXHR,n.assign(e,{url:t,options:i,preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s,combineSizeEocd:o})}async function Zt(e,t,n){const{url:i,preventHeadRequest:a,useRangeHeader:s,forceRangeRequests:o,combineSizeEocd:l}=e;if((e=>{const{baseURL:t}=oe(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(i)&&(s||o)&&(void 0===a||a)){const i=await t(Wt,e,jt(e,l?-22:void 0));if(!o&&i.headers.get("Accept-Ranges")!=Lt)throw new f(Ct);{let a;l&&(e.eocdCache=new h(await i.arrayBuffer()));const s=i.headers.get("Content-Range");if(s){const e=s.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=r(t))}}a===ee?await $t(e,t,n):e.size=a}}else await $t(e,t,n)}async function Gt(e,t,n,i,r){const{useRangeHeader:a,forceRangeRequests:s,eocdCache:o,size:l,options:c}=e;if(a||s){if(o&&t==l-$&&n==$)return o;const r=await i(Wt,e,jt(e,t,n));if(206!=r.status)throw new f(Ct);return new h(await r.arrayBuffer())}{const{data:i}=e;return i||await r(e,c),new h(e.data.subarray(t,t+n))}}function jt(e,t=0,i=1){return n.assign({},Xt(e),{[Ut]:Lt+"="+(0>t?t:t+"-"+(t+i-1))})}function Xt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Yt(e){await Qt(e,en)}async function Jt(e){await Qt(e,tn)}async function Qt(e,t){const n=await t(Wt,e,Xt(e));e.data=new h(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function $t(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const i=(await t("HEAD",e,Xt(e))).headers.get("Content-Length");i?e.size=r(i):await n(e,e.options)}}async function en(e,{options:t,url:i},r){const a=await fetch(i,n.assign({},t,{method:e,headers:r}));if(400>a.status)return a;throw 416==a.status?new f(Ct):new f(At+(a.statusText||a.status))}function tn(e,{url:t},i){return new g(((r,a)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",(()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),r({status:s.status,arrayBuffer:()=>s.response,headers:new l(e)})}else a(416==s.status?new f(Ct):new f(At+(s.statusText||s.status)))}),!1),s.addEventListener("error",(e=>a(e.detail?e.detail.error:new f("Network error"))),!1),s.open(e,t),i)for(const e of n.entries(i))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()}))}class nn extends Pt{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Vt(e,t):new Mt(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class rn extends Pt{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await g.all(t.map((async(n,i)=>{await n.init(),i!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const i=this,{readers:r}=this;let a,o=n;-1==o&&(o=r.length-1);let l=e;for(;l>=r[o].size;)l-=r[o].size,o++;const c=r[o],d=c.size;if(l+t>d){const r=d-l;a=new h(t),a.set(await cn(c,l,r)),a.set(await i.readUint8Array(e+r,t-r,n),r)}else a=await cn(c,l,t);return i.lastDiskNumber=s.max(o,i.lastDiskNumber),a}}class an extends Nt{constructor(e,t=4294967295){super();const i=this;let r,a,s;n.assign(i,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new R({async write(t){const{availableSize:n}=i;if(s)t.lengtho})}}async function sn(e,t){if(!e.init||e.initialized)return g.resolve();await e.init(t)}function on(e){return t.isArray(e)&&(e=new rn(e)),e instanceof z&&(e={readable:e}),e}function ln(e){e.writable===ee&&typeof e.next==ne&&(e=new an(e)),e instanceof R&&(e={writable:e});const{writable:t}=e;return t.size===ee&&(t.size=0),e instanceof an||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function cn(e,t,n,i){return e.readUint8Array(t,n,i)}const dn=rn,un=an,fn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function hn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const Tn="File format is not recognized",En="End of central directory not found",An="End of Zip64 central directory locator not found",Cn="Central directory header not found",Fn="Local file header not found",Un="Zip64 extra field not found",Wn="File contains encrypted entry",Ln="Encryption method not supported",On="Compression method not supported",In="Split zip file",Nn="utf-8",Pn="cp437",Hn=[[gn,X],[mn,X],[yn,X],[xn,Y]],qn={[Y]:{getValue:Qn,bytes:4},[X]:{getValue:$n,bytes:8}};class Bn{constructor(e,t={}){n.assign(this,{reader:on(e),options:t,config:oe()})}async*getEntriesGenerator(e={}){const t=this;let{reader:i}=t;const{config:r}=t;if(await sn(i),i.size!==ee&&i.readUint8Array||(i=new qt(await new d(i.readable).blob()),await sn(i)),i.size<$)throw new f(Tn);i.chunkSize=(e=>s.max(e.chunkSize,64))(r);const a=await(async(e,t,n)=>{const i=new h(4);return ei(i).setUint32(0,101010256,!0),await r(22)||await r(s.min(1048582,n));async function r(t){const r=n-t,a=await cn(e,r,t);for(let e=a.length-22;e>=0;e--)if(a[e]==i[0]&&a[e+1]==i[1]&&a[e+2]==i[2]&&a[e+3]==i[3])return{offset:r+e,buffer:a.slice(e,e+22).buffer}}})(i,0,i.size);if(!a)throw 134695760==Qn(ei(await cn(i,0,4)))?new f(In):new f(En);const o=ei(a);let l=Qn(o,12),c=Qn(o,16);const u=a.offset,w=Jn(o,20),_=u+$+w;let p=Jn(o,4);const b=i.lastDiskNumber||0;let g=Jn(o,6),m=Jn(o,8),y=0,x=0;if(c==X||l==X||m==Y||g==Y){const e=ei(await cn(i,a.offset-20,20));if(117853008==Qn(e,0)){c=$n(e,8);let t=await cn(i,c,56,-1),n=ei(t);const r=a.offset-20-56;if(Qn(n,0)!=Q&&c!=r){const e=c;c=r,y=c-e,t=await cn(i,c,56,-1),n=ei(t)}if(Qn(n,0)!=Q)throw new f(An);p==Y&&(p=Qn(n,16)),g==Y&&(g=Qn(n,20)),m==Y&&(m=$n(n,32)),l==X&&(l=$n(n,40)),c-=l}}if(cc)throw new f(Tn);let k=0,v=await cn(i,c,l,g),S=ei(v);if(l){const e=a.offset-l;if(Qn(S,k)!=J&&c!=e){const t=c;c=e,y+=c-t,v=await cn(i,c,l,g),S=ei(v)}}const z=a.offset-c-(i.lastDiskOffset||0);if(l==z||0>z||(l=z,v=await cn(i,c,l,g),S=ei(v)),0>c||c>=i.size)throw new f(Tn);const R=Gn(t,e,"filenameEncoding"),D=Gn(t,e,"commentEncoding");for(let a=0;m>a;a++){const o=new Mn(i,r,t.options);if(Qn(S,k)!=J)throw new f(Cn);Vn(o,S,k+6);const l=!!o.bitFlag.languageEncodingFlag,c=k+46,d=c+o.filenameLength,u=d+o.extraFieldLength,h=Jn(S,k+4),w=!0,_=v.subarray(c,d),p=Jn(S,k+32),b=u+p,g=v.subarray(u,b),z=l,T=l,E=w&&!(16&~Yn(S,k+38)),A=Qn(S,k+42)+y;n.assign(o,{versionMadeBy:h,msDosCompatible:w,compressedSize:0,uncompressedSize:0,commentLength:p,directory:E,offset:A,diskNumberStart:Jn(S,k+34),internalFileAttribute:Jn(S,k+36),externalFileAttribute:Qn(S,k+38),rawFilename:_,filenameUTF8:z,commentUTF8:T,rawExtraField:v.subarray(d,u)});const C=Gn(t,e,"decodeText")||hn,F=z?Nn:R||Pn,U=T?Nn:D||Pn;let W=C(_,F);W===ee&&(W=hn(_,F));let L=C(g,U);L===ee&&(L=hn(g,U)),n.assign(o,{rawComment:g,filename:W,comment:L,directory:E||W.endsWith("/")}),x=s.max(A,x),Kn(o,o,S,k+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const O=new Dn(o);O.getData=(e,t)=>o.getData(e,O,t),k=b;const{onprogress:I}=e;if(I)try{await I(a+1,m,new Dn(o))}catch(e){}yield O}const T=Gn(t,e,"extractPrependedData"),E=Gn(t,e,"extractAppendedData");return T&&(t.prependedData=x>0?await cn(i,0,x):new h),t.comment=w?await cn(i,u+$,w):new h,E&&(t.appendedData=_>>8&255:_>>>24&255),signature:_,compressed:0!=d&&!S,encrypted:a.encrypted&&!S,useWebWorkers:Gn(a,i,"useWebWorkers"),useCompressionStream:Gn(a,i,"useCompressionStream"),transferStreams:Gn(a,i,"transferStreams"),checkPasswordOnly:F},config:u,streamOptions:{signal:C,size:E,onstart:W,onprogress:L,onend:O}};let N=0;try{({outputSize:N}=await(async(e,t)=>{const{options:n,config:i}=t,{transferStreams:a,useWebWorkers:s,useCompressionStream:o,codecType:l,compressed:c,signed:d,encrypted:u}=n,{workerScripts:f,maxWorkers:h}=i;t.transferStreams=a||a===ee;const w=!(c||d||u||t.transferStreams);return t.useWebWorkers=!w&&(s||s===ee&&i.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[l]:[],n.useCompressionStream=o||o===ee&&i.useCompressionStream,(await(async()=>{const n=Rt.find((e=>!e.busy));if(n)return Et(n),new gt(n,e,t,_);if(Rt.lengthDt.push({resolve:n,stream:e,workerOptions:t})))})()).run();function _(e){if(Dt.length){const[{resolve:t,stream:n,workerOptions:i}]=Dt.splice(0,1);t(new gt(e,n,i,_))}else e.worker?(Et(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:i}=n;r.isFinite(i)&&i>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{Rt=Rt.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),i))})(e,t)):Rt=Rt.filter((t=>t!=e))}})({readable:A,writable:U},I))}catch(e){if(!F||e.message!=xe)throw e}finally{const e=Gn(a,i,"preventClose");U.size+=N,e||U.locked||await U.getWriter().close()}return F?ee:e.getData?e.getData():U}}function Vn(e,t,i){const r=e.rawBitFlag=Jn(t,i+2),a=!(1&~r),s=Qn(t,i+6);n.assign(e,{encrypted:a,version:Jn(t,i),bitFlag:{level:(6&r)>>1,dataDescriptor:!(8&~r),languageEncodingFlag:!(2048&~r)},rawLastModDate:s,lastModDate:jn(s),filenameLength:Jn(t,i+22),extraFieldLength:Jn(t,i+24)})}function Kn(e,t,i,r,a){const{rawExtraField:s}=t,c=t.extraField=new l,d=ei(new h(s));let u=0;try{for(;u{t.zip64=!0;const n=ei(e.data),i=Hn.filter((([e,n])=>t[e]==n));for(let r=0,a=0;r{const r=ei(e.data),a=Yn(r,4);n.assign(e,{vendorVersion:Yn(r,0),vendorId:Yn(r,2),strength:a,originalCompressionMethod:i,compressionMethod:Jn(r,5)}),t.compressionMethod=e.compressionMethod})(g,t,w),t.extraFieldAES=g):t.compressionMethod=w;const m=c.get(10);m&&(((e,t)=>{const i=ei(e.data);let r,a=4;try{for(;a{const i=ei(e.data),r=Yn(i,0),a=[],s=[];n?(1&~r||(a.push(kn),s.push(vn)),2&~r||(a.push(Sn),s.push("rawLastAccessDate")),4&~r||(a.push(zn),s.push("rawCreationDate"))):5>e.data.length||(a.push(kn),s.push(vn));let l=1;a.forEach(((n,r)=>{if(e.data.length>=l+4){const a=Qn(i,l);t[n]=e[n]=new o(1e3*a);const c=s[r];e[c]=a}l+=4}))})(y,t,a),t.extraFieldExtendedTimestamp=y);const x=c.get(6534);x&&(t.extraFieldUSDZ=x)}function Zn(e,t,i,r,a){const s=ei(e.data),o=new ue;o.append(a[i]);const l=ei(new h(4));l.setUint32(0,o.get(),!0);const c=Qn(s,1);n.assign(e,{version:Yn(s,0),[t]:hn(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&c==Qn(l,0)}),e.valid&&(r[t]=e[t],r[t+"UTF8"]=!0)}function Gn(e,t,n){return t[n]===ee?e.options[n]:t[n]}function jn(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Xn(e){return new o(r(e/a(1e4)-a(116444736e5)))}function Yn(e,t){return e.getUint8(t)}function Jn(e,t){return e.getUint16(t,!0)}function Qn(e,t){return e.getUint32(t,!0)}function $n(e,t){return r(e.getBigUint64(t,!0))}function ei(e){return new p(e.buffer)}le({Inflate:function(e){const t=new j,n=e&&e.chunkSize?s.floor(2*e.chunkSize):131072,i=new h(n);let r=!1;t.inflateInit(),t.next_out=i,this.append=(e,a)=>{const s=[];let o,l,c=0,d=0,u=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||r||(t.next_in_index=0,r=!0),o=t.inflate(0),r&&o===U){if(0!==t.avail_in)throw new f("inflating: bad input")}else if(0!==o&&1!==o)throw new f("inflating: "+t.msg);if((r||1===o)&&t.avail_in===e.length)throw new f("inflating: bad input");t.next_out_index&&(t.next_out_index===n?s.push(new h(i)):s.push(i.subarray(0,t.next_out_index))),u+=t.next_out_index,a&&t.next_in_index>0&&t.next_in_index!=c&&(a(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return s.length>1?(l=new h(u),s.forEach((e=>{l.set(e,d),d+=e.length}))):l=s[0]?new h(s[0]):new h,l}},this.flush=()=>{t.inflateEnd()}}}),e.BlobReader=qt,e.BlobWriter=Bt,e.Data64URIReader=class extends Pt{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const i=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:i,size:s.floor(.75*(t-i))})}readUint8Array(e,t){const{dataStart:n,dataURI:i}=this,r=new h(t),a=4*s.floor(e/3),o=atob(i.substring(a+n,4*s.ceil((e+t)/3)+n)),l=e-3*s.floor(a/4);for(let e=l;l+t>e;e++)r[e-l]=o.charCodeAt(e);return r}},e.Data64URIWriter=class extends Ht{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,r=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*s.floor((a+e.length)/3)-a;n++)r+=i.fromCharCode(e[n]);for(;n2?t.data+=v(r):t.pending=r}getData(){return this.data+v(this.pending)}},e.ERR_BAD_FORMAT=Tn,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Cn,e.ERR_ENCRYPTED=Wn,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=An,e.ERR_EOCDR_NOT_FOUND=En,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Un,e.ERR_HTTP_RANGE=Ct,e.ERR_INVALID_PASSWORD=me,e.ERR_INVALID_SIGNATURE=ye,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Ft,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Fn,e.ERR_SPLIT_ZIP_FILE=In,e.ERR_UNSUPPORTED_COMPRESSION=On,e.ERR_UNSUPPORTED_ENCRYPTION=Ln,e.HttpRangeReader=class extends nn{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=nn,e.Reader=Pt,e.SplitDataReader=rn,e.SplitDataWriter=an,e.SplitZipReader=dn,e.SplitZipWriter=un,e.TextReader=class extends qt{constructor(e){super(new b([e],{type:"text/plain"}))}},e.TextWriter=class extends Bt{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,i=await super.getData();if(i.text&&t)return i.text();{const t=new FileReader;return new g(((r,a)=>{n.assign(t,{onload:({target:e})=>r(e.result),onerror:()=>a(t.error)}),t.readAsText(i,e)}))}}},e.Uint8ArrayReader=class extends Pt{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Ht{init(e=0){n.assign(this,{offset:0,array:new h(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new h(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=Ht,e.ZipReader=Bn,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:n}=new S,i=new Bn(t,e).getEntriesGenerator();this.readable=new z({async pull(e){const{done:t,value:n}=await i.next();if(t)return e.close();const r={...n,readable:(()=>{const{readable:e,writable:t}=new S;if(n.getData)return n.getData(t),e})()};delete r.getData,e.enqueue(r)}}),this.writable=n}},e.configure=le,e.getMimeType=()=>"application/octet-stream",e.initReader=on,e.initStream=sn,e.initWriter=ln,e.readUint8Array=cn,e.terminateWorkers=async()=>{await g.allSettled(Rt.map((e=>(Et(e),e.terminate()))))}})); +((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:i,Number:r,BigInt:a,Math:s,Date:o,Map:l,Set:c,Response:u,URL:d,Error:f,Uint8Array:h,Uint16Array:w,Uint32Array:_,DataView:p,Blob:b,Promise:g,TextEncoder:m,TextDecoder:y,document:x,crypto:k,btoa:v,TransformStream:S,ReadableStream:z,WritableStream:R,CompressionStream:D,DecompressionStream:T,navigator:E,Worker:A}="undefined"!=typeof globalThis?globalThis:this||self,F=-2,C=-3,U=-5,W=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],L=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],O=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],I=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],N=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],P=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],H=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function q(){let e,t,n,i,r,a;function s(e,t,s,o,l,c,u,d,f,h,w){let _,p,b,g,m,y,x,k,v,S,z,R,D,T,E;S=0,m=s;do{n[e[t+S]]++,S++,m--}while(0!==m);if(n[0]==s)return u[0]=-1,d[0]=0,0;for(k=d[0],y=1;15>=y&&0===n[y];y++);for(x=y,y>k&&(k=y),m=15;0!==m&&0===n[m];m--);for(b=m,k>m&&(k=m),d[0]=k,T=1<y;y++,T<<=1)if(0>(T-=n[y]))return C;if(0>(T-=n[m]))return C;for(n[m]+=T,a[1]=y=0,S=1,D=2;0!=--m;)a[D]=y+=n[S],D++,S++;m=0,S=0;do{0!==(y=e[t+S])&&(w[a[y]++]=m),S++}while(++m=x;x++)for(_=n[x];0!=_--;){for(;x>R+k;){if(g++,R+=k,E=b-R,E=E>k?k:E,(p=1<<(y=x-R))>_+1&&(p-=_+1,D=x,E>y))for(;++yn[++D];)p-=n[D];if(E=1<1440)return C;r[g]=z=h[0],h[0]+=E,0!==g?(a[g]=m,i[0]=y,i[1]=k,y=m>>>R-k,i[2]=z-r[g-1]-y,f.set(i,3*(r[g-1]+y))):u[0]=z}for(i[1]=x-R,s>S?w[S]w[S]?0:96,i[2]=w[S++]):(i[0]=c[w[S]-o]+16+64,i[2]=l[w[S++]-o]):i[0]=192,p=1<>>R;E>y;y+=p)f.set(i,3*(z+y));for(y=1<>>=1)m^=y;for(m^=y,v=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)i[o]=0;r.set(n.subarray(0,15),0),a.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,i,r,a,l)=>{let c;return o(19),e[0]=0,c=s(n,0,19,19,null,null,r,i,a,e,t),c==C?l.msg="oversubscribed dynamic bit lengths tree":c!=U&&0!==i[0]||(l.msg="incomplete dynamic bit lengths tree",c=C),c},this.inflate_trees_dynamic=(n,i,r,a,l,c,u,d,f)=>{let h;return o(288),e[0]=0,h=s(r,0,n,257,I,N,c,a,d,e,t),0!=h||0===a[0]?(h==C?f.msg="oversubscribed literal/length tree":-4!=h&&(f.msg="incomplete literal/length tree",h=C),h):(o(288),h=s(r,n,i,0,P,H,u,l,d,e,t),0!=h||0===l[0]&&n>257?(h==C?f.msg="oversubscribed distance tree":h==U?(f.msg="incomplete distance tree",h=C):-4!=h&&(f.msg="empty distance tree with lengths",h=C),h):0)}}function B(){const e=this;let t,n,i,r,a=0,s=0,o=0,l=0,c=0,u=0,d=0,f=0,h=0,w=0;function _(e,t,n,i,r,a,s,o){let l,c,u,d,f,h,w,_,p,b,g,m,y,x,k,v;w=o.next_in_index,_=o.avail_in,f=s.bitb,h=s.bitk,p=s.write,b=ph;)_--,f|=(255&o.read_byte(w++))<>=c[v+1],h-=c[v+1],16&d){for(d&=15,y=c[v+2]+(f&W[d]),f>>=d,h-=d;15>h;)_--,f|=(255&o.read_byte(w++))<>=c[v+1],h-=c[v+1],16&d){for(d&=15;d>h;)_--,f|=(255&o.read_byte(w++))<>=d,h-=d,b-=y,x>p){k=p-x;do{k+=s.end}while(0>k);if(d=s.end-k,y>d){if(y-=d,p-k>0&&d>p-k)do{s.win[p++]=s.win[k++]}while(0!=--d);else s.win.set(s.win.subarray(k,k+d),p),p+=d,k+=d,d=0;k=0}}else k=p-x,p-k>0&&2>p-k?(s.win[p++]=s.win[k++],s.win[p++]=s.win[k++],y-=2):(s.win.set(s.win.subarray(k,k+2),p),p+=2,k+=2,y-=2);if(p-k>0&&y>p-k)do{s.win[p++]=s.win[k++]}while(0!=--y);else s.win.set(s.win.subarray(k,k+y),p),p+=y,k+=y,y=0;break}if(64&d)return o.msg="invalid distance code",y=o.avail_in-_,y=y>h>>3?h>>3:y,_+=y,w-=y,h-=y<<3,s.bitb=f,s.bitk=h,o.avail_in=_,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=p,C;l+=c[v+2],l+=f&W[d],v=3*(u+l),d=c[v]}break}if(64&d)return 32&d?(y=o.avail_in-_,y=y>h>>3?h>>3:y,_+=y,w-=y,h-=y<<3,s.bitb=f,s.bitk=h,o.avail_in=_,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=p,1):(o.msg="invalid literal/length code",y=o.avail_in-_,y=y>h>>3?h>>3:y,_+=y,w-=y,h-=y<<3,s.bitb=f,s.bitk=h,o.avail_in=_,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=p,C);if(l+=c[v+2],l+=f&W[d],v=3*(u+l),0===(d=c[v])){f>>=c[v+1],h-=c[v+1],s.win[p++]=c[v+2],b--;break}}else f>>=c[v+1],h-=c[v+1],s.win[p++]=c[v+2],b--}while(b>=258&&_>=10);return y=o.avail_in-_,y=y>h>>3?h>>3:y,_+=y,w-=y,h-=y<<3,s.bitb=f,s.bitk=h,o.avail_in=_,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=p,0}e.init=(e,a,s,o,l,c)=>{t=0,d=e,f=a,i=s,h=o,r=l,w=c,n=null},e.proc=(e,p,b)=>{let g,m,y,x,k,v,S,z=0,R=0,D=0;for(D=p.next_in_index,x=p.avail_in,z=e.bitb,R=e.bitk,k=e.write,v=k=258&&x>=10&&(e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,b=_(d,f,i,h,r,w,e,p),D=p.next_in_index,x=p.avail_in,z=e.bitb,R=e.bitk,k=e.write,v=kR;){if(0===x)return e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,z|=(255&p.read_byte(D++))<>>=n[m+1],R-=n[m+1],y=n[m],0===y){l=n[m+2],t=6;break}if(16&y){c=15&y,a=n[m+2],t=2;break}if(!(64&y)){o=y,s=m/3+n[m+2];break}if(32&y){t=7;break}return t=9,p.msg="invalid literal/length code",b=C,e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);case 2:for(g=c;g>R;){if(0===x)return e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,z|=(255&p.read_byte(D++))<>=g,R-=g,o=f,n=r,s=w,t=3;case 3:for(g=o;g>R;){if(0===x)return e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,z|=(255&p.read_byte(D++))<>=n[m+1],R-=n[m+1],y=n[m],16&y){c=15&y,u=n[m+2],t=4;break}if(!(64&y)){o=y,s=m/3+n[m+2];break}return t=9,p.msg="invalid distance code",b=C,e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);case 4:for(g=c;g>R;){if(0===x)return e.bitb=z,e.bitk=R,p.avail_in=x,p.total_in+=D-p.next_in_index,p.next_in_index=D,e.write=k,e.inflate_flush(p,b);b=0,x--,z|=(255&p.read_byte(D++))<>=g,R-=g,t=5;case 5:for(S=k-u;0>S;)S+=e.end;for(;0!==a;){if(0===v&&(k==e.end&&0!==e.read&&(k=0,v=k7&&(R-=8,x++,D--),e.write=k,b=e.inflate_flush(p,b),k=e.write,v=k{}}q.inflate_trees_fixed=(e,t,n,i)=>(e[0]=9,t[0]=5,n[0]=L,i[0]=O,0);const M=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function V(e,t){const n=this;let i,r=0,a=0,s=0,o=0;const l=[0],c=[0],u=new B;let d=0,f=new Int32Array(4320);const w=new q;n.bitk=0,n.bitb=0,n.win=new h(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==r&&u.free(e),r=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let i,r,a;return r=e.next_out_index,a=n.read,i=(a>n.write?n.end:n.write)-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==U&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i,a==n.end&&(a=0,n.write==n.end&&(n.write=0),i=n.write-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==U&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i),e.next_out_index=r,n.read=a,t},n.proc=(e,t)=>{let h,_,p,b,g,m,y,x;for(b=e.next_in_index,g=e.avail_in,_=n.bitb,p=n.bitk,m=n.write,y=mp;){if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,_|=(255&e.read_byte(b++))<>>1){case 0:_>>>=3,p-=3,h=7&p,_>>>=h,p-=h,r=1;break;case 1:k=[],v=[],S=[[]],z=[[]],q.inflate_trees_fixed(k,v,S,z),u.init(k[0],v[0],S[0],0,z[0],0),_>>>=3,p-=3,r=6;break;case 2:_>>>=3,p-=3,r=3;break;case 3:return _>>>=3,p-=3,r=9,e.msg="invalid block type",t=C,n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t)}break;case 1:for(;32>p;){if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,_|=(255&e.read_byte(b++))<>>16&65535)!=(65535&_))return r=9,e.msg="invalid stored block lengths",t=C,n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);a=65535&_,_=p=0,r=0!==a?2:0!==d?7:0;break;case 2:if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(0===y&&(m==n.end&&0!==n.read&&(m=0,y=mg&&(h=g),h>y&&(h=y),n.win.set(e.read_buf(b,h),m),b+=h,g-=h,m+=h,y-=h,0!=(a-=h))break;r=0!==d?7:0;break;case 3:for(;14>p;){if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,_|=(255&e.read_byte(b++))<29||(h>>5&31)>29)return r=9,e.msg="too many length or distance symbols",t=C,n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(h=258+(31&h)+(h>>5&31),!i||i.lengthx;x++)i[x]=0;_>>>=14,p-=14,o=0,r=4;case 4:for(;4+(s>>>10)>o;){for(;3>p;){if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,_|=(255&e.read_byte(b++))<>>=3,p-=3}for(;19>o;)i[M[o++]]=0;if(l[0]=7,h=w.inflate_trees_bits(i,l,c,f,e),0!=h)return(t=h)==C&&(i=null,r=9),n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);o=0,r=5;case 5:for(;h=s,258+(31&h)+(h>>5&31)>o;){let a,u;for(h=l[0];h>p;){if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,_|=(255&e.read_byte(b++))<u)_>>>=h,p-=h,i[o++]=u;else{for(x=18==u?7:u-14,a=18==u?11:3;h+x>p;){if(0===g)return n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,_|=(255&e.read_byte(b++))<>>=h,p-=h,a+=_&W[x],_>>>=x,p-=x,x=o,h=s,x+a>258+(31&h)+(h>>5&31)||16==u&&1>x)return i=null,r=9,e.msg="invalid bit length repeat",t=C,n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);u=16==u?i[x-1]:0;do{i[x++]=u}while(0!=--a);o=x}}if(c[0]=-1,R=[],D=[],T=[],E=[],R[0]=9,D[0]=6,h=s,h=w.inflate_trees_dynamic(257+(31&h),1+(h>>5&31),i,R,D,T,E,f,e),0!=h)return h==C&&(i=null,r=9),t=h,n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);u.init(R[0],D[0],f,T[0],f,E[0]),r=6;case 6:if(n.bitb=_,n.bitk=p,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,1!=(t=u.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,u.free(e),b=e.next_in_index,g=e.avail_in,_=n.bitb,p=n.bitk,m=n.write,y=m{n.reset(e,null),n.win=null,f=null},n.set_dictionary=(e,t,i)=>{n.win.set(e.subarray(t,t+i),0),n.read=n.write=i},n.sync_point=()=>1==r?1:0}const K=13,Z=[0,0,255,255];function G(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):F}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,i)=>(n.msg=null,e.blocks=null,8>i||i>15?(e.inflateEnd(n),F):(e.wbits=i,n.istate.blocks=new V(n,1<{let n,i;if(!e||!e.istate||!e.next_in)return F;const r=e.istate;for(t=4==t?U:0,n=U;;)switch(r.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(r.method=e.read_byte(e.next_in_index++)))){r.mode=K,e.msg="unknown compression method",r.marker=5;break}if(8+(r.method>>4)>r.wbits){r.mode=K,e.msg="invalid win size",r.marker=5;break}r.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,i=255&e.read_byte(e.next_in_index++),((r.method<<8)+i)%31!=0){r.mode=K,e.msg="incorrect header check",r.marker=5;break}if(!(32&i)){r.mode=7;break}r.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,r.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,r.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,r.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,r.need+=255&e.read_byte(e.next_in_index++),r.mode=6,2);case 6:return r.mode=K,e.msg="need dictionary",r.marker=0,F;case 7:if(n=r.blocks.proc(e,n),n==C){r.mode=K,r.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,r.blocks.reset(e,r.was),r.mode=12;case 12:return e.avail_in=0,1;case K:return C;default:return F}},e.inflateSetDictionary=(e,t,n)=>{let i=0,r=n;if(!e||!e.istate||6!=e.istate.mode)return F;const a=e.istate;return r<1<{let n,i,r,a,s;if(!e||!e.istate)return F;const o=e.istate;if(o.mode!=K&&(o.mode=K,o.marker=0),0===(n=e.avail_in))return U;for(i=e.next_in_index,r=o.marker;0!==n&&4>r;)e.read_byte(i)==Z[r]?r++:r=0!==e.read_byte(i)?0:4-r,i++,n--;return e.total_in+=i-e.next_in_index,e.next_in_index=i,e.avail_in=n,o.marker=r,4!=r?C:(a=e.total_in,s=e.total_out,t(e),e.total_in=a,e.total_out=s,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():F}function j(){}j.prototype={inflateInit(e){const t=this;return t.istate=new G,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):F},inflateEnd(){const e=this;if(!e.istate)return F;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):F},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):F},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const X=4294967295,Y=65535,J=33639248,Q=101075792,$=22,ee=void 0,te="undefined",ne="function";class ie{constructor(e){return class extends S{constructor(t,n){const i=new e(n);super({transform(e,t){t.enqueue(i.append(e))},flush(e){const t=i.flush();t&&e.enqueue(t)}})}}}}let re=2;try{typeof E!=te&&E.hardwareConcurrency&&(re=E.hardwareConcurrency)}catch(e){}const ae={chunkSize:524288,maxWorkers:re,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:ee,CompressionStreamNative:typeof D!=te&&D,DecompressionStreamNative:typeof T!=te&&T},se=n.assign({},ae);function oe(){return se}function le(e){const{baseURL:n,chunkSize:i,maxWorkers:r,terminateWorkerTimeout:a,useCompressionStream:s,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:u,DecompressionStream:d,workerScripts:h}=e;if(ce("baseURL",n),ce("chunkSize",i),ce("maxWorkers",r),ce("terminateWorkerTimeout",a),ce("useCompressionStream",s),ce("useWebWorkers",o),l&&(se.CompressionStream=new ie(l)),c&&(se.DecompressionStream=new ie(c)),ce("CompressionStream",u),ce("DecompressionStream",d),h!==ee){const{deflate:e,inflate:n}=h;if((e||n)&&(se.workerScripts||(se.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");se.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");se.workerScripts.inflate=n}}}function ce(e,t){t!==ee&&(se[e]=t)}const ue=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;ue[e]=t}class de{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,i=0|e.length;i>n;n++)t=t>>>8^ue[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class fe extends S{constructor(){let e;const t=new de;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new h(4);new p(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const he={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],i=he.getPartial(n);return 32===i?e.concat(t):he._shiftRight(t,i,0|n,e.slice(0,e.length-1))},bitLength(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+he.getPartial(n)},clamp(e,t){if(32*e.length0&&t&&(e[n-1]=he.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>s.round(e/1099511627776)||32,_shiftRight(e,t,n,i){for(void 0===i&&(i=[]);t>=32;t-=32)i.push(n),n=0;if(0===t)return i.concat(e);for(let r=0;r>>t),n=e[r]<<32-t;const r=e.length?e[e.length-1]:0,a=he.getPartial(r);return i.push(he.partial(t+a&31,t+a>32?n:i.pop(),1)),i}},we={bytes:{fromBits(e){const t=he.bitLength(e)/8,n=new h(t);let i;for(let r=0;t>r;r++)3&r||(i=e[r/4]),n[r]=i>>>24,i<<=8;return n},toBits(e){const t=[];let n,i=0;for(n=0;n9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new _(n);let s=0;for(let e=t.blockSize+i-(t.blockSize+i&t.blockSize-1);r>=e;e+=t.blockSize)t._block(a.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=he.concat(t,[he.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,i){return e>19?e>39?e>59?e>79?void 0:t^n^i:t&n|t&i|n&i:t^n^i:t&n|~t&i}_S(e,t){return t<>>32-e}_block(e){const n=this,i=n._h,r=t(80);for(let t=0;16>t;t++)r[t]=e[t];let a=i[0],o=i[1],l=i[2],c=i[3],u=i[4];for(let e=0;79>=e;e++){16>e||(r[e]=n._S(1,r[e-3]^r[e-8]^r[e-14]^r[e-16]));const t=n._S(5,a)+n._f(e,o,l,c)+u+r[e]+n._key[s.floor(e/20)]|0;u=c,c=l,l=n._S(30,o),o=a,a=t}i[0]=i[0]+a|0,i[1]=i[1]+o|0,i[2]=i[2]+l|0,i[3]=i[3]+c|0,i[4]=i[4]+u|0}},pe={getRandomValues(e){const t=new _(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(s.random()>.5?1:-1))};for(let i,r=0;rnew be.hmacSha1(we.bytes.toBits(e)),pbkdf2(e,t,n,i){if(n=n||1e4,0>i||0>n)throw new f("invalid params to pbkdf2");const r=1+(i>>5)<<2;let a,s,o,l,c;const u=new ArrayBuffer(r),d=new p(u);let h=0;const w=he;for(t=we.bytes.toBits(t),c=1;(r||1)>h;c++){for(a=s=e.encrypt(w.concat(t,[c])),o=1;n>o;o++)for(s=e.encrypt(s),l=0;lh&&or&&(e=(new n).update(e).finalize());for(let t=0;r>t;t++)i[0][t]=909522486^e[t],i[1][t]=1549556828^e[t];t._baseHash[0].update(i[0]),t._baseHash[1].update(i[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},ge=typeof k!=te&&typeof k.getRandomValues==ne,me="Invalid password",ye="Invalid signature",xe="zipjs-abort-check-password";function ke(e){return ge?k.getRandomValues(e):pe.getRandomValues(e)}const ve=16,Se={name:"PBKDF2"},ze=n.assign({hash:{name:"HMAC"}},Se),Re=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Se),De=["deriveBits"],Te=[8,12,16],Ee=[16,24,32],Ae=10,Fe=[0,0,0,0],Ce=typeof k!=te,Ue=Ce&&k.subtle,We=Ce&&typeof Ue!=te,Le=we.bytes,Oe=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],i=t._tables[1],r=e.length;let a,s,o,l=1;if(4!==r&&6!==r&&8!==r)throw new f("invalid aes key size");for(t._key=[s=e.slice(0),o=[]],a=r;4*r+28>a;a++){let e=s[a-1];(a%r==0||8===r&&a%r==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],a%r==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),s[a]=s[a-r]^e}for(let e=0;a;e++,a--){const t=s[3&e?a:a-4];o[e]=4>=a||4>e?t:i[0][n[t>>>24]]^i[1][n[t>>16&255]]^i[2][n[t>>8&255]]^i[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],i=t[4],r=[],a=[];let s,o,l,c;for(let e=0;256>e;e++)a[(r[e]=e<<1^283*(e>>7))^e]=e;for(let u=s=0;!n[u];u^=o||1,s=a[s]||1){let a=s^s<<1^s<<2^s<<3^s<<4;a=a>>8^255&a^99,n[u]=a,i[a]=u,c=r[l=r[o=r[u]]];let d=16843009*c^65537*l^257*o^16843008*u,f=257*r[a]^16843008*a;for(let n=0;4>n;n++)e[n][u]=f=f<<24^f>>>8,t[n][a]=d=d<<24^d>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],i=n.length/4-2,r=[0,0,0,0],a=this._tables[t],s=a[0],o=a[1],l=a[2],c=a[3],u=a[4];let d,h,w,_=e[0]^n[0],p=e[t?3:1]^n[1],b=e[2]^n[2],g=e[t?1:3]^n[3],m=4;for(let e=0;i>e;e++)d=s[_>>>24]^o[p>>16&255]^l[b>>8&255]^c[255&g]^n[m],h=s[p>>>24]^o[b>>16&255]^l[g>>8&255]^c[255&_]^n[m+1],w=s[b>>>24]^o[g>>16&255]^l[_>>8&255]^c[255&p]^n[m+2],g=s[g>>>24]^o[_>>16&255]^l[p>>8&255]^c[255&b]^n[m+3],m+=4,_=d,p=h,b=w;for(let e=0;4>e;e++)r[t?3&-e:e]=u[_>>>24]<<24^u[p>>16&255]<<16^u[b>>8&255]<<8^u[255&g]^n[m++],d=_,_=p,p=b,b=g,g=d;return r}},Ie=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,i=255&e;255===t?(t=0,255===n?(n=0,255===i?i=0:++i):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=i}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let i;if(!(i=t.length))return[];const r=he.bitLength(t);for(let r=0;i>r;r+=4){this.incCounter(n);const i=e.encrypt(n);t[r]^=i[0],t[r+1]^=i[1],t[r+2]^=i[2],t[r+3]^=i[3]}return he.clamp(t,r)}},Ne=be.hmacSha1;let Pe=Ce&&We&&typeof Ue.importKey==ne,He=Ce&&We&&typeof Ue.deriveBits==ne;class qe extends S{constructor({password:e,rawPassword:t,signed:i,encryptionStrength:r,checkPasswordOnly:a}){super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:Ke(e,t),signed:i,strength:r-1,pending:new h})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:s,ready:o}=n;i?(await(async(e,t,n,i)=>{const r=await Ve(e,t,n,Ge(i,0,Te[t])),a=Ge(i,Te[t]);if(r[0]!=a[0]||r[1]!=a[1])throw new f(me)})(n,r,i,Ge(e,0,Te[r]+2)),e=Ge(e,Te[r]+2),a?t.error(new f(xe)):s()):await o;const l=new h(e.length-Ae-(e.length-Ae)%ve);t.enqueue(Me(n,e,l,0,Ae,!0))},async flush(e){const{signed:t,ctr:n,hmac:i,pending:r,ready:a}=this;if(i&&n){await a;const s=Ge(r,0,r.length-Ae),o=Ge(r,r.length-Ae);let l=new h;if(s.length){const e=Xe(Le,s);i.update(e);const t=n.update(e);l=je(Le,t)}if(t){const e=Ge(je(Le,i.digest()),0,Ae);for(let t=0;Ae>t;t++)if(e[t]!=o[t])throw new f(ye)}e.enqueue(l)}}})}}class Be extends S{constructor({password:e,rawPassword:t,encryptionStrength:i}){let r;super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:Ke(e,t),strength:i-1,pending:new h})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:a,ready:s}=n;let o=new h;i?(o=await(async(e,t,n)=>{const i=ke(new h(Te[t]));return Ze(i,await Ve(e,t,n,i))})(n,r,i),a()):await s;const l=new h(o.length+e.length-e.length%ve);l.set(o,0),t.enqueue(Me(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:i,ready:a}=this;if(n&&t){await a;let s=new h;if(i.length){const e=t.update(Xe(Le,i));n.update(e),s=je(Le,e)}r.signature=je(Le,n.digest()).slice(0,Ae),e.enqueue(Ze(s,r.signature))}}}),r=this}}function Me(e,t,n,i,r,a){const{ctr:s,hmac:o,pending:l}=e,c=t.length-r;let u;for(l.length&&(t=Ze(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new h(t)).set(n,0)}return e})(n,c-c%ve)),u=0;c-ve>=u;u+=ve){const e=Xe(Le,Ge(t,u,u+ve));a&&o.update(e);const r=s.update(e);a||o.update(r),n.set(je(Le,r),u+i)}return e.pending=Ge(t,u),n}async function Ve(e,i,r,a){e.password=null;const s=await(async(e,t,n,i,r)=>{if(!Pe)return be.importKey(t);try{return await Ue.importKey("raw",t,n,!1,r)}catch(e){return Pe=!1,be.importKey(t)}})(0,r,ze,0,De),o=await(async(e,t,n)=>{if(!He)return be.pbkdf2(t,e.salt,Re.iterations,n);try{return await Ue.deriveBits(e,t,n)}catch(i){return He=!1,be.pbkdf2(t,e.salt,Re.iterations,n)}})(n.assign({salt:a},Re),s,8*(2*Ee[i]+2)),l=new h(o),c=Xe(Le,Ge(l,0,Ee[i])),u=Xe(Le,Ge(l,Ee[i],2*Ee[i])),d=Ge(l,2*Ee[i]);return n.assign(e,{keys:{key:c,authentication:u,passwordVerification:d},ctr:new Ie(new Oe(c),t.from(Fe)),hmac:new Ne(u)}),d}function Ke(e,t){return t===ee?(e=>{if(typeof m==te){const t=new h((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),r=~e.crcKey2.get(),e.keys=[n,i,r]}function nt(e){const t=2|e.keys[2];return it(s.imul(t,1^t)>>>8)}function it(e){return 255&e}function rt(e){return 4294967295&e}const at="deflate-raw";class st extends S{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:i}){super({});const{compressed:r,encrypted:a,useCompressionStream:s,zipCrypto:o,signed:l,level:c}=e,u=this;let d,f,h=lt(super.readable);a&&!o||!l||(d=new fe,h=dt(h,d)),r&&(h=ut(h,s,{level:c,chunkSize:t},i,n)),a&&(o?h=dt(h,new Je(e)):(f=new Be(e),h=dt(h,f))),ct(u,h,(()=>{let e;a&&!o&&(e=f.signature),a&&!o||!l||(e=new p(d.value.buffer).getUint32(0)),u.signature=e}))}}class ot extends S{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:i}){super({});const{zipCrypto:r,encrypted:a,signed:s,signature:o,compressed:l,useCompressionStream:c}=e;let u,d,h=lt(super.readable);a&&(r?h=dt(h,new Ye(e)):(d=new qe(e),h=dt(h,d))),l&&(h=ut(h,c,{chunkSize:t},i,n)),a&&!r||!s||(u=new fe,h=dt(h,u)),ct(this,h,(()=>{if((!a||r)&&s){const e=new p(u.value.buffer);if(o!=e.getUint32(0,!1))throw new f(ye)}}))}}function lt(e){return dt(e,new S({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ct(e,t,i){t=dt(t,new S({flush:i})),n.defineProperty(e,"readable",{get:()=>t})}function ut(e,t,n,i,r){try{e=dt(e,new(t&&i?i:r)(at,n))}catch(i){if(!t)return e;try{e=dt(e,new r(at,n))}catch(t){return e}}return e}function dt(e,t){return e.pipeThrough(t)}const ft="data",ht="close",wt="inflate";class _t extends S{constructor(e,t){super({});const i=this,{codecType:r}=e;let a;r.startsWith("deflate")?a=st:r.startsWith(wt)&&(a=ot);let s=0,o=0;const l=new a(e,t),c=super.readable,u=new S({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(i,{inputSize:o})}}),d=new S({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){const{signature:e}=l;n.assign(i,{signature:e,outputSize:s,inputSize:o})}});n.defineProperty(i,"readable",{get:()=>c.pipeThrough(u).pipeThrough(l).pipeThrough(d)})}}class pt extends S{constructor(e){let t;super({transform:function n(i,r){if(t){const e=new h(t.length+i.length);e.set(t),e.set(i,t.length),i=e,t=null}i.length>e?(r.enqueue(i.slice(0,e)),n(i.slice(e),r)):t=i},flush(e){t&&t.length&&e.enqueue(t)}})}}let bt=typeof A!=te;class gt{constructor(e,{readable:t,writable:i},{options:r,config:a,streamOptions:s,useWebWorkers:o,transferStreams:l,scripts:c},u){const{signal:d}=s;return n.assign(e,{busy:!0,readable:t.pipeThrough(new pt(a.chunkSize)).pipeThrough(new mt(t,s),{signal:d}),writable:i,options:n.assign({},r),scripts:c,transferStreams:l,terminate:()=>new g((t=>{const{worker:n,busy:i}=e;n?(i?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,u(e)}}),(o&&bt?kt:xt)(e,a)}}class mt extends S{constructor(e,{onstart:t,onprogress:n,size:i,onend:r}){let a=0;super({async start(){t&&await yt(t,i)},async transform(e,t){a+=e.length,n&&await yt(n,a,i),t.enqueue(e)},async flush(){e.size=a,r&&await yt(r,a)}})}}async function yt(e,...t){try{await e(...t)}catch(e){}}function xt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:i},r)=>{try{const i=new _t(e,r);await t.pipeThrough(i).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:a,inputSize:s,outputSize:o}=i;return{signature:a,inputSize:s,outputSize:o}}finally{i()}})(e,t)}}function kt(e,t){const{baseURL:i,chunkSize:r}=t;if(!e.interface){let a;try{a=((e,t,i)=>{const r={type:"module"};let a,s;typeof e==ne&&(e=e());try{a=new d(e,t)}catch(t){a=e}if(vt)try{s=new A(a)}catch(e){vt=!1,s=new A(a,r)}else s=new A(a,r);return s.addEventListener("message",(e=>(async({data:e},t)=>{const{type:i,value:r,messageId:a,result:s,error:o}=e,{reader:l,writer:c,resolveResult:u,rejectResult:d,onTaskFinished:w}=t;try{if(o){const{message:e,stack:t,code:i,name:r}=o,a=new f(e);n.assign(a,{stack:t,code:i,name:r}),_(a)}else{if("pull"==i){const{value:e,done:n}=await l.read();zt({type:ft,value:e,done:n,messageId:a},t)}i==ft&&(await c.ready,await c.write(new h(r)),zt({type:"ack",messageId:a},t)),i==ht&&_(null,s)}}catch(o){zt({type:ht,messageId:a},t),_(o)}function _(e,t){e?d(e):u(t),c&&c.releaseLock(),w()}})(e,i))),s})(e.scripts[0],i,e)}catch(n){return bt=!1,xt(e,t)}n.assign(e,{worker:a,interface:{run:()=>(async(e,t)=>{let i,r;const a=new g(((e,t)=>{i=e,r=t}));n.assign(e,{reader:null,writer:null,resolveResult:i,rejectResult:r,result:a});const{readable:s,options:o,scripts:l}=e,{writable:c,closed:u}=(e=>{let t;const n=new g((e=>t=e));return{writable:new R({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),d=zt({type:"start",scripts:l.slice(1),options:o,config:t,readable:s,writable:c},e);d||n.assign(e,{reader:s.getReader(),writer:c.getWriter()});const f=await a;return d||await c.getWriter().close(),await u,f})(e,{chunkSize:r})}})}return e.interface}let vt=!0,St=!0;function zt(e,{worker:t,writer:n,onTaskFinished:i,transferStreams:r}){try{const{value:n,readable:i,writable:a}=e,s=[];if(n&&(n.byteLengtha?i.close():this.chunkOffset+=t}});return n}}class Ht extends Nt{constructor(){super();const e=this,t=new R({write:t=>e.writeUint8Array(t)});n.defineProperty(e,It,{get:()=>t})}writeUint8Array(){}}class qt extends Pt{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,i=e+t,r=e||it&&(a=a.slice(e,i)),new h(a)}}class Bt extends Nt{constructor(e){super();const t=new S,i=[];e&&i.push(["Content-Type",e]),n.defineProperty(this,It,{get:()=>t.writable}),this.blob=new u(t.readable,{headers:i}).blob()}getData(){return this.blob}}class Mt extends Pt{constructor(e,t){super(),Kt(this,e,t)}async init(){await Zt(this,en,Yt),super.init()}readUint8Array(e,t){return Gt(this,e,t,en,Yt)}}class Vt extends Pt{constructor(e,t){super(),Kt(this,e,t)}async init(){await Zt(this,tn,Jt),super.init()}readUint8Array(e,t){return Gt(this,e,t,tn,Jt)}}function Kt(e,t,i){const{preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s,combineSizeEocd:o}=i;delete(i=n.assign({},i)).preventHeadRequest,delete i.useRangeHeader,delete i.forceRangeRequests,delete i.combineSizeEocd,delete i.useXHR,n.assign(e,{url:t,options:i,preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s,combineSizeEocd:o})}async function Zt(e,t,n){const{url:i,preventHeadRequest:a,useRangeHeader:s,forceRangeRequests:o,combineSizeEocd:l}=e;if((e=>{const{baseURL:t}=oe(),{protocol:n}=new d(e,t);return"http:"==n||"https:"==n})(i)&&(s||o)&&(void 0===a||a)){const i=await t(Wt,e,jt(e,l?-22:void 0));if(!o&&i.headers.get("Accept-Ranges")!=Lt)throw new f(Ft);{let a;l&&(e.eocdCache=new h(await i.arrayBuffer()));const s=i.headers.get("Content-Range");if(s){const e=s.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=r(t))}}a===ee?await $t(e,t,n):e.size=a}}else await $t(e,t,n)}async function Gt(e,t,n,i,r){const{useRangeHeader:a,forceRangeRequests:s,eocdCache:o,size:l,options:c}=e;if(a||s){if(o&&t==l-$&&n==$)return o;const r=await i(Wt,e,jt(e,t,n));if(206!=r.status)throw new f(Ft);return new h(await r.arrayBuffer())}{const{data:i}=e;return i||await r(e,c),new h(e.data.subarray(t,t+n))}}function jt(e,t=0,i=1){return n.assign({},Xt(e),{[Ut]:Lt+"="+(0>t?t:t+"-"+(t+i-1))})}function Xt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Yt(e){await Qt(e,en)}async function Jt(e){await Qt(e,tn)}async function Qt(e,t){const n=await t(Wt,e,Xt(e));e.data=new h(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function $t(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const i=(await t("HEAD",e,Xt(e))).headers.get("Content-Length");i?e.size=r(i):await n(e,e.options)}}async function en(e,{options:t,url:i},r){const a=await fetch(i,n.assign({},t,{method:e,headers:r}));if(400>a.status)return a;throw 416==a.status?new f(Ft):new f(At+(a.statusText||a.status))}function tn(e,{url:t},i){return new g(((r,a)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",(()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),r({status:s.status,arrayBuffer:()=>s.response,headers:new l(e)})}else a(416==s.status?new f(Ft):new f(At+(s.statusText||s.status)))}),!1),s.addEventListener("error",(e=>a(e.detail?e.detail.error:new f("Network error"))),!1),s.open(e,t),i)for(const e of n.entries(i))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()}))}class nn extends Pt{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Vt(e,t):new Mt(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class rn extends Pt{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await g.all(t.map((async(n,i)=>{await n.init(),i!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const i=this,{readers:r}=this;let a,o=n;-1==o&&(o=r.length-1);let l=e;for(;l>=r[o].size;)l-=r[o].size,o++;const c=r[o],u=c.size;if(l+t>u){const r=u-l;a=new h(t),a.set(await cn(c,l,r)),a.set(await i.readUint8Array(e+r,t-r,n),r)}else a=await cn(c,l,t);return i.lastDiskNumber=s.max(o,i.lastDiskNumber),a}}class an extends Nt{constructor(e,t=4294967295){super();const i=this;let r,a,s;n.assign(i,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new R({async write(t){const{availableSize:n}=i;if(s)t.lengtho})}}async function sn(e,t){if(!e.init||e.initialized)return g.resolve();await e.init(t)}function on(e){return t.isArray(e)&&(e=new rn(e)),e instanceof z&&(e={readable:e}),e}function ln(e){e.writable===ee&&typeof e.next==ne&&(e=new an(e)),e instanceof R&&(e={writable:e});const{writable:t}=e;return t.size===ee&&(t.size=0),e instanceof an||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function cn(e,t,n,i){return e.readUint8Array(t,n,i)}const un=rn,dn=an,fn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function hn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const Tn="File format is not recognized",En="End of central directory not found",An="End of Zip64 central directory locator not found",Fn="Central directory header not found",Cn="Local file header not found",Un="Zip64 extra field not found",Wn="File contains encrypted entry",Ln="Encryption method not supported",On="Compression method not supported",In="Split zip file",Nn="utf-8",Pn="cp437",Hn=[[gn,X],[mn,X],[yn,X],[xn,Y]],qn={[Y]:{getValue:Qn,bytes:4},[X]:{getValue:$n,bytes:8}};class Bn{constructor(e,t={}){n.assign(this,{reader:on(e),options:t,config:oe()})}async*getEntriesGenerator(e={}){const t=this;let{reader:i}=t;const{config:r}=t;if(await sn(i),i.size!==ee&&i.readUint8Array||(i=new qt(await new u(i.readable).blob()),await sn(i)),i.size<$)throw new f(Tn);i.chunkSize=(e=>s.max(e.chunkSize,64))(r);const a=await(async(e,t,n)=>{const i=new h(4);return ei(i).setUint32(0,101010256,!0),await r(22)||await r(s.min(1048582,n));async function r(t){const r=n-t,a=await cn(e,r,t);for(let e=a.length-22;e>=0;e--)if(a[e]==i[0]&&a[e+1]==i[1]&&a[e+2]==i[2]&&a[e+3]==i[3])return{offset:r+e,buffer:a.slice(e,e+22).buffer}}})(i,0,i.size);if(!a)throw 134695760==Qn(ei(await cn(i,0,4)))?new f(In):new f(En);const o=ei(a);let l=Qn(o,12),c=Qn(o,16);const d=a.offset,w=Jn(o,20),_=d+$+w;let p=Jn(o,4);const b=i.lastDiskNumber||0;let g=Jn(o,6),m=Jn(o,8),y=0,x=0;if(c==X||l==X||m==Y||g==Y){const e=ei(await cn(i,a.offset-20,20));if(117853008==Qn(e,0)){c=$n(e,8);let t=await cn(i,c,56,-1),n=ei(t);const r=a.offset-20-56;if(Qn(n,0)!=Q&&c!=r){const e=c;c=r,y=c-e,t=await cn(i,c,56,-1),n=ei(t)}if(Qn(n,0)!=Q)throw new f(An);p==Y&&(p=Qn(n,16)),g==Y&&(g=Qn(n,20)),m==Y&&(m=$n(n,32)),l==X&&(l=$n(n,40)),c-=l}}if(cc)throw new f(Tn);let k=0,v=await cn(i,c,l,g),S=ei(v);if(l){const e=a.offset-l;if(Qn(S,k)!=J&&c!=e){const t=c;c=e,y+=c-t,v=await cn(i,c,l,g),S=ei(v)}}const z=a.offset-c-(i.lastDiskOffset||0);if(l==z||0>z||(l=z,v=await cn(i,c,l,g),S=ei(v)),0>c||c>=i.size)throw new f(Tn);const R=Gn(t,e,"filenameEncoding"),D=Gn(t,e,"commentEncoding");for(let a=0;m>a;a++){const o=new Mn(i,r,t.options);if(Qn(S,k)!=J)throw new f(Fn);Vn(o,S,k+6);const l=!!o.bitFlag.languageEncodingFlag,c=k+46,u=c+o.filenameLength,d=u+o.extraFieldLength,h=Jn(S,k+4),w=!(h>>8),_=h>>8==3,p=v.subarray(c,u),b=Jn(S,k+32),g=d+b,z=v.subarray(d,g),T=l,E=l,A=Qn(S,k+38),F=w&&!(16&~Yn(S,k+38))||_&&!(16384&~(A>>16))||p.length&&47==p[p.length-1],C=_&&!(73&~(A>>16)),U=Qn(S,k+42)+y;n.assign(o,{versionMadeBy:h,msDosCompatible:w,compressedSize:0,uncompressedSize:0,commentLength:b,directory:F,offset:U,diskNumberStart:Jn(S,k+34),internalFileAttributes:Jn(S,k+36),externalFileAttributes:A,rawFilename:p,filenameUTF8:T,commentUTF8:E,rawExtraField:v.subarray(u,d),executable:C}),o.internalFileAttribute=o.internalFileAttributes,o.externalFileAttribute=o.externalFileAttributes;const W=Gn(t,e,"decodeText")||hn,L=T?Nn:R||Pn,O=E?Nn:D||Pn;let I=W(p,L);I===ee&&(I=hn(p,L));let N=W(z,O);N===ee&&(N=hn(z,O)),n.assign(o,{rawComment:z,filename:I,comment:N,directory:F||I.endsWith("/")}),x=s.max(U,x),Kn(o,o,S,k+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const P=new Dn(o);P.getData=(e,t)=>o.getData(e,P,t),k=g;const{onprogress:H}=e;if(H)try{await H(a+1,m,new Dn(o))}catch(e){}yield P}const T=Gn(t,e,"extractPrependedData"),E=Gn(t,e,"extractAppendedData");return T&&(t.prependedData=x>0?await cn(i,0,x):new h),t.comment=w?await cn(i,d+$,w):new h,E&&(t.appendedData=_>>8&255:_>>>24&255),signature:_,compressed:0!=u&&!S,encrypted:a.encrypted&&!S,useWebWorkers:Gn(a,i,"useWebWorkers"),useCompressionStream:Gn(a,i,"useCompressionStream"),transferStreams:Gn(a,i,"transferStreams"),checkPasswordOnly:C},config:d,streamOptions:{signal:F,size:E,onstart:W,onprogress:L,onend:O}};let N=0;try{({outputSize:N}=await(async(e,t)=>{const{options:n,config:i}=t,{transferStreams:a,useWebWorkers:s,useCompressionStream:o,codecType:l,compressed:c,signed:u,encrypted:d}=n,{workerScripts:f,maxWorkers:h}=i;t.transferStreams=a||a===ee;const w=!(c||u||d||t.transferStreams);return t.useWebWorkers=!w&&(s||s===ee&&i.useWebWorkers),t.scripts=t.useWebWorkers&&f?f[l]:[],n.useCompressionStream=o||o===ee&&i.useCompressionStream,(await(async()=>{const n=Rt.find((e=>!e.busy));if(n)return Et(n),new gt(n,e,t,_);if(Rt.lengthDt.push({resolve:n,stream:e,workerOptions:t})))})()).run();function _(e){if(Dt.length){const[{resolve:t,stream:n,workerOptions:i}]=Dt.splice(0,1);t(new gt(e,n,i,_))}else e.worker?(Et(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:i}=n;r.isFinite(i)&&i>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{Rt=Rt.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),i))})(e,t)):Rt=Rt.filter((t=>t!=e))}})({readable:A,writable:U},I))}catch(e){if(!C||e.message!=xe)throw e}finally{const e=Gn(a,i,"preventClose");U.size+=N,e||U.locked||await U.getWriter().close()}return C?ee:e.getData?e.getData():U}}function Vn(e,t,i){const r=e.rawBitFlag=Jn(t,i+2),a=!(1&~r),s=Qn(t,i+6);n.assign(e,{encrypted:a,version:Jn(t,i),bitFlag:{level:(6&r)>>1,dataDescriptor:!(8&~r),languageEncodingFlag:!(2048&~r)},rawLastModDate:s,lastModDate:jn(s),filenameLength:Jn(t,i+22),extraFieldLength:Jn(t,i+24)})}function Kn(e,t,i,r,a){const{rawExtraField:s}=t,c=t.extraField=new l,u=ei(new h(s));let d=0;try{for(;d{t.zip64=!0;const n=ei(e.data),i=Hn.filter((([e,n])=>t[e]==n));for(let r=0,a=0;r{const r=ei(e.data),a=Yn(r,4);n.assign(e,{vendorVersion:Yn(r,0),vendorId:Yn(r,2),strength:a,originalCompressionMethod:i,compressionMethod:Jn(r,5)}),t.compressionMethod=e.compressionMethod})(g,t,w),t.extraFieldAES=g):t.compressionMethod=w;const m=c.get(10);m&&(((e,t)=>{const i=ei(e.data);let r,a=4;try{for(;a{const i=ei(e.data),r=Yn(i,0),a=[],s=[];n?(1&~r||(a.push(kn),s.push(vn)),2&~r||(a.push(Sn),s.push("rawLastAccessDate")),4&~r||(a.push(zn),s.push("rawCreationDate"))):5>e.data.length||(a.push(kn),s.push(vn));let l=1;a.forEach(((n,r)=>{if(e.data.length>=l+4){const a=Qn(i,l);t[n]=e[n]=new o(1e3*a);const c=s[r];e[c]=a}l+=4}))})(y,t,a),t.extraFieldExtendedTimestamp=y);const x=c.get(6534);x&&(t.extraFieldUSDZ=x)}function Zn(e,t,i,r,a){const s=ei(e.data),o=new de;o.append(a[i]);const l=ei(new h(4));l.setUint32(0,o.get(),!0);const c=Qn(s,1);n.assign(e,{version:Yn(s,0),[t]:hn(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&c==Qn(l,0)}),e.valid&&(r[t]=e[t],r[t+"UTF8"]=!0)}function Gn(e,t,n){return t[n]===ee?e.options[n]:t[n]}function jn(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Xn(e){return new o(r(e/a(1e4)-a(116444736e5)))}function Yn(e,t){return e.getUint8(t)}function Jn(e,t){return e.getUint16(t,!0)}function Qn(e,t){return e.getUint32(t,!0)}function $n(e,t){return r(e.getBigUint64(t,!0))}function ei(e){return new p(e.buffer)}le({Inflate:function(e){const t=new j,n=e&&e.chunkSize?s.floor(2*e.chunkSize):131072,i=new h(n);let r=!1;t.inflateInit(),t.next_out=i,this.append=(e,a)=>{const s=[];let o,l,c=0,u=0,d=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||r||(t.next_in_index=0,r=!0),o=t.inflate(0),r&&o===U){if(0!==t.avail_in)throw new f("inflating: bad input")}else if(0!==o&&1!==o)throw new f("inflating: "+t.msg);if((r||1===o)&&t.avail_in===e.length)throw new f("inflating: bad input");t.next_out_index&&(t.next_out_index===n?s.push(new h(i)):s.push(i.subarray(0,t.next_out_index))),d+=t.next_out_index,a&&t.next_in_index>0&&t.next_in_index!=c&&(a(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return s.length>1?(l=new h(d),s.forEach((e=>{l.set(e,u),u+=e.length}))):l=s[0]?new h(s[0]):new h,l}},this.flush=()=>{t.inflateEnd()}}}),e.BlobReader=qt,e.BlobWriter=Bt,e.Data64URIReader=class extends Pt{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const i=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:i,size:s.floor(.75*(t-i))})}readUint8Array(e,t){const{dataStart:n,dataURI:i}=this,r=new h(t),a=4*s.floor(e/3),o=atob(i.substring(a+n,4*s.ceil((e+t)/3)+n)),l=e-3*s.floor(a/4);for(let e=l;l+t>e;e++)r[e-l]=o.charCodeAt(e);return r}},e.Data64URIWriter=class extends Ht{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,r=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*s.floor((a+e.length)/3)-a;n++)r+=i.fromCharCode(e[n]);for(;n2?t.data+=v(r):t.pending=r}getData(){return this.data+v(this.pending)}},e.ERR_BAD_FORMAT=Tn,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Fn,e.ERR_ENCRYPTED=Wn,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=An,e.ERR_EOCDR_NOT_FOUND=En,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Un,e.ERR_HTTP_RANGE=Ft,e.ERR_INVALID_PASSWORD=me,e.ERR_INVALID_SIGNATURE=ye,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Ct,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Cn,e.ERR_SPLIT_ZIP_FILE=In,e.ERR_UNSUPPORTED_COMPRESSION=On,e.ERR_UNSUPPORTED_ENCRYPTION=Ln,e.HttpRangeReader=class extends nn{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=nn,e.Reader=Pt,e.SplitDataReader=rn,e.SplitDataWriter=an,e.SplitZipReader=un,e.SplitZipWriter=dn,e.TextReader=class extends qt{constructor(e){super(new b([e],{type:"text/plain"}))}},e.TextWriter=class extends Bt{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,i=await super.getData();if(i.text&&t)return i.text();{const t=new FileReader;return new g(((r,a)=>{n.assign(t,{onload:({target:e})=>r(e.result),onerror:()=>a(t.error)}),t.readAsText(i,e)}))}}},e.Uint8ArrayReader=class extends Pt{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends Ht{init(e=0){n.assign(this,{offset:0,array:new h(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new h(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=Ht,e.ZipReader=Bn,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:n}=new S,i=new Bn(t,e).getEntriesGenerator();this.readable=new z({async pull(e){const{done:t,value:n}=await i.next();if(t)return e.close();const r={...n,readable:(()=>{const{readable:e,writable:t}=new S;if(n.getData)return n.getData(t),e})()};delete r.getData,e.enqueue(r)}}),this.writable=n}},e.configure=le,e.getMimeType=()=>"application/octet-stream",e.initReader=on,e.initStream=sn,e.initWriter=ln,e.readUint8Array=cn,e.terminateWorkers=async()=>{await g.allSettled(Rt.map((e=>(Et(e),e.terminate()))))}})); diff --git a/dist/zip-no-worker.min.js b/dist/zip-no-worker.min.js index 07b453c0..1f37d95d 100644 --- a/dist/zip-no-worker.min.js +++ b/dist/zip-no-worker.min.js @@ -1 +1 @@ -((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:i,Number:r,BigInt:a,Math:s,Date:o,Map:l,Set:c,Response:d,URL:u,Error:f,Uint8Array:_,Uint16Array:w,Uint32Array:p,DataView:h,Blob:b,Promise:g,TextEncoder:m,TextDecoder:x,document:y,crypto:k,btoa:S,TransformStream:z,ReadableStream:v,WritableStream:E,CompressionStream:D,DecompressionStream:R,navigator:F,Worker:T}="undefined"!=typeof globalThis?globalThis:this||self,A=-2;function C(e){return N(e.map((([e,n])=>new t(e).fill(n,0,e))))}function N(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?N(n):n)),[])}const U=[0,1,2,3].concat(...C([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function W(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const i=e.dyn_tree,r=e.stat_desc.static_tree,a=e.stat_desc.elems;let o,l,c,d=-1;for(n.heap_len=0,n.heap_max=573,o=0;a>o;o++)0!==i[2*o]?(n.heap[++n.heap_len]=d=o,n.depth[o]=0):i[2*o+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>d?++d:0,i[2*c]=1,n.depth[c]=0,n.opt_len--,r&&(n.static_len-=r[2*c+1]);for(e.max_code=d,o=s.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(i,o);c=a;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(i,1),l=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=l,i[2*c]=i[2*o]+i[2*l],n.depth[c]=s.max(n.depth[o],n.depth[l])+1,i[2*o+1]=i[2*l+1]=c,n.heap[1]=c++,n.pqdownheap(i,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,i=e.stat_desc.static_tree,r=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,s=e.stat_desc.max_length;let o,l,c,d,u,f,_=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)l=t.heap[o],d=n[2*n[2*l+1]+1]+1,d>s&&(d=s,_++),n[2*l+1]=d,l>e.max_code||(t.bl_count[d]++,u=0,a>l||(u=r[l-a]),f=n[2*l],t.opt_len+=f*(d+u),i&&(t.static_len+=f*(i[2*l+1]+u)));if(0!==_){do{for(d=s-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[s]--,_-=2}while(_>0);for(d=s;0!==d;d--)for(l=t.bl_count[d];0!==l;)c=t.heap[--o],c>e.max_code||(n[2*c+1]!=d&&(t.opt_len+=(d-n[2*c+1])*n[2*c],n[2*c+1]=d),l--)}})(n),((e,n,i)=>{const r=[];let a,s,o,l=0;for(a=1;15>=a;a++)r[a]=l=l+i[a-1]<<1;for(s=0;n>=s;s++)o=e[2*s+1],0!==o&&(e[2*s]=t(r[o]++,o))})(i,e.max_code,n.bl_count)}}function I(e,t,n,i,r){const a=this;a.static_tree=e,a.extra_bits=t,a.extra_base=n,a.elems=i,a.max_length=r}W._length_code=[0,1,2,3,4,5,6,7].concat(...C([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),W.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],W.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],W.d_code=e=>256>e?U[e]:U[256+(e>>>7)],W.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],W.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],W.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],W.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const L=C([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=N([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,L[t]])));const O=C([[30,5]]);function M(e,t,n,i,r){const a=this;a.good_length=e,a.max_lazy=t,a.nice_length=n,a.max_chain=i,a.func=r}I.static_dtree=N([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,O[t]]))),I.static_l_desc=new I(I.static_ltree,W.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,W.extra_dbits,0,30,15),I.static_bl_desc=new I(null,W.extra_blbits,0,19,7);const P=[new M(0,0,0,0,0),new M(4,4,8,4,1),new M(4,5,16,8,1),new M(4,6,32,32,1),new M(4,4,16,16,2),new M(8,16,32,32,2),new M(8,16,128,128,2),new M(8,32,128,256,2),new M(32,128,258,1024,2),new M(32,258,258,4096,2)],H=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],B=113,q=666,V=262;function Z(e,t,n,i){const r=e[2*t],a=e[2*n];return a>r||r==a&&i[t]<=i[n]}function K(){const e=this;let t,n,i,r,a,o,l,c,d,u,f,p,h,b,g,m,x,y,k,S,z,v,E,D,R,F,T,C,N,U,L,O,M;const K=new W,Y=new W,G=new W;let X,j,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)L[2*t]=0;for(t=0;30>t;t++)O[2*t]=0;for(t=0;19>t;t++)M[2*t]=0;L[512]=1,e.opt_len=e.static_len=0,j=J=0}function ne(e,t){let n,i=-1,r=e[1],a=0,s=7,o=4;0===r&&(s=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)n=r,r=e[2*(l+1)+1],++aa?M[2*n]+=a:0!==n?(n!=i&&M[2*n]++,M[32]++):a>10?M[36]++:M[34]++,a=0,i=n,0===r?(s=138,o=3):n==r?(s=6,o=3):(s=7,o=4))}function ie(t){e.pending_buf[e.pending++]=t}function re(e){ie(255&e),ie(e>>>8&255)}function ae(e,t){let n;const i=t;ee>16-i?(n=e,$|=n<>>16-ee,ee+=i-16):($|=e<=n;n++)if(i=a,a=e[2*(n+1)+1],++s>=o||i!=a){if(l>s)do{se(i,M)}while(0!=--s);else 0!==i?(i!=r&&(se(i,M),s--),se(16,M),ae(s-3,2)):s>10?(se(18,M),ae(s-11,7)):(se(17,M),ae(s-3,3));s=0,r=i,0===a?(o=138,l=3):i==a?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(re($),$=0,ee=0):8>ee||(ie(255&$),$>>>=8,ee-=8)}function ce(t,n){let i,r,a;if(e.dist_buf[j]=t,e.lc_buf[j]=255&n,j++,0===t?L[2*n]++:(J++,t--,L[2*(W._length_code[n]+256+1)]++,O[2*W.d_code(t)]++),!(8191&j)&&T>2){for(i=8*j,r=z-x,a=0;30>a;a++)i+=O[2*a]*(5+W.extra_dbits[a]);if(i>>>=3,Jo);se(256,t),Q=t[513]}function ue(){ee>8?re($):ee>0&&ie(255&$),$=0,ee=0}function fe(t,n,i){ae(0+(i?1:0),3),((t,n)=>{ue(),Q=8,re(n),re(~n),e.pending_buf.set(c.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function _e(n){((t,n,i)=>{let r,a,s=0;T>0?(K.build_tree(e),Y.build_tree(e),s=(()=>{let t;for(ne(L,K.max_code),ne(O,Y.max_code),G.build_tree(e),t=18;t>=3&&0===M[2*W.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),r=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a>r||(r=a)):r=a=n+5,n+4>r||-1==t?a==r?(ae(2+(i?1:0),3),de(I.static_ltree,I.static_dtree)):(ae(4+(i?1:0),3),((e,t,n)=>{let i;for(ae(e-257,5),ae(t-1,5),ae(n-4,4),i=0;n>i;i++)ae(M[2*W.bl_order[i]+1],3);oe(L,e-1),oe(O,t-1)})(K.max_code+1,Y.max_code+1,s+1),de(L,O)):fe(t,n,i),te(),i&&ue()})(0>x?-1:x,z-x,n),x=z,t.flush_pending()}function we(){let e,n,i,r;do{if(r=d-E-z,0===r&&0===z&&0===E)r=a;else if(-1==r)r--;else if(z>=a+a-V){c.set(c.subarray(a,a+a),0),v-=a,z-=a,x-=a,e=h,i=e;do{n=65535&f[--i],f[i]=a>n?0:n-a}while(0!=--e);e=a,i=e;do{n=65535&u[--i],u[i]=a>n?0:n-a}while(0!=--e);r+=a}if(0===t.avail_in)return;e=t.read_buf(c,z+E,r),E+=e,3>E||(p=255&c[z],p=(p<E&&0!==t.avail_in)}function pe(e){let t,n,i=R,r=z,s=D;const o=z>a-V?z-(a-V):0;let d=U;const f=l,_=z+258;let w=c[r+s-1],p=c[r+s];N>D||(i>>=2),d>E&&(d=E);do{if(t=e,c[t+s]==p&&c[t+s-1]==w&&c[t]==c[r]&&c[++t]==c[r+1]){r+=2,t++;do{}while(c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&_>r);if(n=258-(_-r),r=_-258,n>s){if(v=e,s=n,n>=d)break;w=c[r+s-1],p=c[r+s]}}}while((e=65535&u[e&f])>o&&0!=--i);return s>E?E:s}e.depth=[],e.bl_count=[],e.heap=[],L=[],O=[],M=[],e.pqdownheap=(t,n)=>{const i=e.heap,r=i[n];let a=n<<1;for(;a<=e.heap_len&&(a(W||(W=8),H||(H=8),q||(q=0),t.msg=null,-1==k&&(k=6),1>H||H>9||8!=W||9>v||v>15||0>k||k>9||0>q||q>2?A:(t.dstate=e,o=v,a=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=B,r=0,K.dyn_tree=L,K.stat_desc=I.static_l_desc,Y.dyn_tree=O,Y.stat_desc=I.static_d_desc,G.dyn_tree=M,G.stat_desc=I.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*a,f[h-1]=0;for(let e=0;h-1>e;e++)f[e]=0;F=P[T].max_lazy,N=P[T].good_length,U=P[T].nice_length,R=P[T].max_chain,z=0,x=0,E=0,y=D=2,S=0,p=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=B&&n!=q?A:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,c=null,e.dstate=null,n==B?-3:0),e.deflateParams=(e,t,n)=>{let i=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?A:(P[T].func!=P[t].func&&0!==e.total_in&&(i=e.deflate(1)),T!=t&&(T=t,F=P[T].max_lazy,N=P[T].good_length,U=P[T].nice_length,R=P[T].max_chain),C=n,i)},e.deflateSetDictionary=(e,t,i)=>{let r,s=i,o=0;if(!t||42!=n)return A;if(3>s)return 0;for(s>a-V&&(s=a-V,o=i-s),c.set(t.subarray(o,o+s),0),z=s,x=s,p=255&c[0],p=(p<=r;r++)p=(p<{let _,w,b,R,N;if(d>4||0>d)return A;if(!s.next_out||!s.next_in&&0!==s.avail_in||n==q&&4!=d)return s.msg=H[4],A;if(0===s.avail_out)return s.msg=H[7],-5;var U;if(t=s,R=r,r=d,42==n&&(w=8+(o-8<<4)<<8,b=(T-1&255)>>1,b>3&&(b=3),w|=b<<6,0!==z&&(w|=32),w+=31-w%31,n=B,ie((U=w)>>8&255),ie(255&U)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return r=-1,0}else if(0===t.avail_in&&R>=d&&4!=d)return t.msg=H[7],-5;if(n==q&&0!==t.avail_in)return s.msg=H[7],-5;if(0!==t.avail_in||0!==E||0!=d&&n!=q){switch(N=-1,P[T].func){case 0:N=(e=>{let n,r=65535;for(r>i-5&&(r=i-5);;){if(1>=E){if(we(),0===E&&0==e)return 0;if(0===E)break}if(z+=E,E=0,n=x+r,(0===z||z>=n)&&(E=z-n,z=n,_e(!1),0===t.avail_out))return 0;if(z-x>=a-V&&(_e(!1),0===t.avail_out))return 0}return _e(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 1:N=(e=>{let n,i=0;for(;;){if(V>E){if(we(),V>E&&0==e)return 0;if(0===E)break}if(3>E||(p=(p<a-V||2!=C&&(y=pe(i)),3>y)n=ce(0,255&c[z]),E--,z++;else if(n=ce(z-v,y-3),E-=y,y>F||3>E)z+=y,y=0,p=255&c[z],p=(p<{let n,i,r=0;for(;;){if(V>E){if(we(),V>E&&0==e)return 0;if(0===E)break}if(3>E||(p=(p<D&&a-V>=(z-r&65535)&&(2!=C&&(y=pe(r)),5>=y&&(1==C||3==y&&z-v>4096)&&(y=2)),3>D||y>D)if(0!==S){if(n=ce(0,255&c[z-1]),n&&_e(!1),z++,E--,0===t.avail_out)return 0}else S=1,z++,E--;else{i=z+E-3,n=ce(z-1-k,D-3),E-=D-1,D-=2;do{++z>i||(p=(p<1+Q+10-ee&&(ae(2,3),se(256,I.static_ltree),le()),Q=7;else if(fe(0,0,!1),3==d)for(_=0;h>_;_++)f[_]=0;if(t.flush_pending(),0===t.avail_out)return r=-1,0}}return 4!=d?0:1}}function Y(){const e=this;e.next_in_index=0,e.next_out_index=0,e.avail_in=0,e.total_in=0,e.avail_out=0,e.total_out=0}Y.prototype={deflateInit(e,t){const n=this;return n.dstate=new K,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):A},deflateEnd(){const e=this;if(!e.dstate)return A;const t=e.dstate.deflateEnd();return e.dstate=null,t},deflateParams(e,t){const n=this;return n.dstate?n.dstate.deflateParams(n,e,t):A},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):A},read_buf(e,t,n){const i=this;let r=i.avail_in;return r>n&&(r=n),0===r?0:(i.avail_in-=r,e.set(i.next_in.subarray(i.next_in_index,i.next_in_index+r),t),i.next_in_index+=r,i.total_in+=r,r)},flush_pending(){const e=this;let t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),0!==t&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,0===e.dstate.pending&&(e.dstate.pending_out=0))}};const G=-2,X=-3,j=-5,J=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],Q=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],$=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],ee=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],te=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ne=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],ie=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function re(){let e,t,n,i,r,a;function s(e,t,s,o,l,c,d,u,f,_,w){let p,h,b,g,m,x,y,k,S,z,v,E,D,R,F;z=0,m=s;do{n[e[t+z]]++,z++,m--}while(0!==m);if(n[0]==s)return d[0]=-1,u[0]=0,0;for(k=u[0],x=1;15>=x&&0===n[x];x++);for(y=x,x>k&&(k=x),m=15;0!==m&&0===n[m];m--);for(b=m,k>m&&(k=m),u[0]=k,R=1<x;x++,R<<=1)if(0>(R-=n[x]))return X;if(0>(R-=n[m]))return X;for(n[m]+=R,a[1]=x=0,z=1,D=2;0!=--m;)a[D]=x+=n[z],D++,z++;m=0,z=0;do{0!==(x=e[t+z])&&(w[a[x]++]=m),z++}while(++m=y;y++)for(p=n[y];0!=p--;){for(;y>E+k;){if(g++,E+=k,F=b-E,F=F>k?k:F,(h=1<<(x=y-E))>p+1&&(h-=p+1,D=y,F>x))for(;++xn[++D];)h-=n[D];if(F=1<1440)return X;r[g]=v=_[0],_[0]+=F,0!==g?(a[g]=m,i[0]=x,i[1]=k,x=m>>>E-k,i[2]=v-r[g-1]-x,f.set(i,3*(r[g-1]+x))):d[0]=v}for(i[1]=y-E,s>z?w[z]w[z]?0:96,i[2]=w[z++]):(i[0]=c[w[z]-o]+16+64,i[2]=l[w[z++]-o]):i[0]=192,h=1<>>E;F>x;x+=h)f.set(i,3*(v+x));for(x=1<>>=1)m^=x;for(m^=x,S=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)i[o]=0;r.set(n.subarray(0,15),0),a.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,i,r,a,l)=>{let c;return o(19),e[0]=0,c=s(n,0,19,19,null,null,r,i,a,e,t),c==X?l.msg="oversubscribed dynamic bit lengths tree":c!=j&&0!==i[0]||(l.msg="incomplete dynamic bit lengths tree",c=X),c},this.inflate_trees_dynamic=(n,i,r,a,l,c,d,u,f)=>{let _;return o(288),e[0]=0,_=s(r,0,n,257,ee,te,c,a,u,e,t),0!=_||0===a[0]?(_==X?f.msg="oversubscribed literal/length tree":-4!=_&&(f.msg="incomplete literal/length tree",_=X),_):(o(288),_=s(r,n,i,0,ne,ie,d,l,u,e,t),0!=_||0===l[0]&&n>257?(_==X?f.msg="oversubscribed distance tree":_==j?(f.msg="incomplete distance tree",_=X):-4!=_&&(f.msg="empty distance tree with lengths",_=X),_):0)}}function ae(){const e=this;let t,n,i,r,a=0,s=0,o=0,l=0,c=0,d=0,u=0,f=0,_=0,w=0;function p(e,t,n,i,r,a,s,o){let l,c,d,u,f,_,w,p,h,b,g,m,x,y,k,S;w=o.next_in_index,p=o.avail_in,f=s.bitb,_=s.bitk,h=s.write,b=h_;)p--,f|=(255&o.read_byte(w++))<<_,_+=8;if(l=f&g,c=n,d=i,S=3*(d+l),0!==(u=c[S]))for(;;){if(f>>=c[S+1],_-=c[S+1],16&u){for(u&=15,x=c[S+2]+(f&J[u]),f>>=u,_-=u;15>_;)p--,f|=(255&o.read_byte(w++))<<_,_+=8;for(l=f&m,c=r,d=a,S=3*(d+l),u=c[S];;){if(f>>=c[S+1],_-=c[S+1],16&u){for(u&=15;u>_;)p--,f|=(255&o.read_byte(w++))<<_,_+=8;if(y=c[S+2]+(f&J[u]),f>>=u,_-=u,b-=x,y>h){k=h-y;do{k+=s.end}while(0>k);if(u=s.end-k,x>u){if(x-=u,h-k>0&&u>h-k)do{s.win[h++]=s.win[k++]}while(0!=--u);else s.win.set(s.win.subarray(k,k+u),h),h+=u,k+=u,u=0;k=0}}else k=h-y,h-k>0&&2>h-k?(s.win[h++]=s.win[k++],s.win[h++]=s.win[k++],x-=2):(s.win.set(s.win.subarray(k,k+2),h),h+=2,k+=2,x-=2);if(h-k>0&&x>h-k)do{s.win[h++]=s.win[k++]}while(0!=--x);else s.win.set(s.win.subarray(k,k+x),h),h+=x,k+=x,x=0;break}if(64&u)return o.msg="invalid distance code",x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,X;l+=c[S+2],l+=f&J[u],S=3*(d+l),u=c[S]}break}if(64&u)return 32&u?(x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,1):(o.msg="invalid literal/length code",x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,X);if(l+=c[S+2],l+=f&J[u],S=3*(d+l),0===(u=c[S])){f>>=c[S+1],_-=c[S+1],s.win[h++]=c[S+2],b--;break}}else f>>=c[S+1],_-=c[S+1],s.win[h++]=c[S+2],b--}while(b>=258&&p>=10);return x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,0}e.init=(e,a,s,o,l,c)=>{t=0,u=e,f=a,i=s,_=o,r=l,w=c,n=null},e.proc=(e,h,b)=>{let g,m,x,y,k,S,z,v=0,E=0,D=0;for(D=h.next_in_index,y=h.avail_in,v=e.bitb,E=e.bitk,k=e.write,S=k=258&&y>=10&&(e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,b=p(u,f,i,_,r,w,e,h),D=h.next_in_index,y=h.avail_in,v=e.bitb,E=e.bitk,k=e.write,S=kE;){if(0===y)return e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,v|=(255&h.read_byte(D++))<>>=n[m+1],E-=n[m+1],x=n[m],0===x){l=n[m+2],t=6;break}if(16&x){c=15&x,a=n[m+2],t=2;break}if(!(64&x)){o=x,s=m/3+n[m+2];break}if(32&x){t=7;break}return t=9,h.msg="invalid literal/length code",b=X,e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);case 2:for(g=c;g>E;){if(0===y)return e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,v|=(255&h.read_byte(D++))<>=g,E-=g,o=f,n=r,s=w,t=3;case 3:for(g=o;g>E;){if(0===y)return e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,v|=(255&h.read_byte(D++))<>=n[m+1],E-=n[m+1],x=n[m],16&x){c=15&x,d=n[m+2],t=4;break}if(!(64&x)){o=x,s=m/3+n[m+2];break}return t=9,h.msg="invalid distance code",b=X,e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);case 4:for(g=c;g>E;){if(0===y)return e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,v|=(255&h.read_byte(D++))<>=g,E-=g,t=5;case 5:for(z=k-d;0>z;)z+=e.end;for(;0!==a;){if(0===S&&(k==e.end&&0!==e.read&&(k=0,S=k7&&(E-=8,y++,D--),e.write=k,b=e.inflate_flush(h,b),k=e.write,S=k{}}re.inflate_trees_fixed=(e,t,n,i)=>(e[0]=9,t[0]=5,n[0]=Q,i[0]=$,0);const se=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function oe(e,t){const n=this;let i,r=0,a=0,s=0,o=0;const l=[0],c=[0],d=new ae;let u=0,f=new Int32Array(4320);const w=new re;n.bitk=0,n.bitb=0,n.win=new _(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==r&&d.free(e),r=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let i,r,a;return r=e.next_out_index,a=n.read,i=(a>n.write?n.end:n.write)-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==j&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i,a==n.end&&(a=0,n.write==n.end&&(n.write=0),i=n.write-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==j&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i),e.next_out_index=r,n.read=a,t},n.proc=(e,t)=>{let _,p,h,b,g,m,x,y;for(b=e.next_in_index,g=e.avail_in,p=n.bitb,h=n.bitk,m=n.write,x=mh;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>1){case 0:p>>>=3,h-=3,_=7&h,p>>>=_,h-=_,r=1;break;case 1:k=[],S=[],z=[[]],v=[[]],re.inflate_trees_fixed(k,S,z,v),d.init(k[0],S[0],z[0],0,v[0],0),p>>>=3,h-=3,r=6;break;case 2:p>>>=3,h-=3,r=3;break;case 3:return p>>>=3,h-=3,r=9,e.msg="invalid block type",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t)}break;case 1:for(;32>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>16&65535)!=(65535&p))return r=9,e.msg="invalid stored block lengths",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);a=65535&p,p=h=0,r=0!==a?2:0!==u?7:0;break;case 2:if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(0===x&&(m==n.end&&0!==n.read&&(m=0,x=mg&&(_=g),_>x&&(_=x),n.win.set(e.read_buf(b,_),m),b+=_,g-=_,m+=_,x-=_,0!=(a-=_))break;r=0!==u?7:0;break;case 3:for(;14>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<29||(_>>5&31)>29)return r=9,e.msg="too many length or distance symbols",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(_=258+(31&_)+(_>>5&31),!i||i.length<_)i=[];else for(y=0;_>y;y++)i[y]=0;p>>>=14,h-=14,o=0,r=4;case 4:for(;4+(s>>>10)>o;){for(;3>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>=3,h-=3}for(;19>o;)i[se[o++]]=0;if(l[0]=7,_=w.inflate_trees_bits(i,l,c,f,e),0!=_)return(t=_)==X&&(i=null,r=9),n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);o=0,r=5;case 5:for(;_=s,258+(31&_)+(_>>5&31)>o;){let a,d;for(_=l[0];_>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<d)p>>>=_,h-=_,i[o++]=d;else{for(y=18==d?7:d-14,a=18==d?11:3;_+y>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>=_,h-=_,a+=p&J[y],p>>>=y,h-=y,y=o,_=s,y+a>258+(31&_)+(_>>5&31)||16==d&&1>y)return i=null,r=9,e.msg="invalid bit length repeat",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d=16==d?i[y-1]:0;do{i[y++]=d}while(0!=--a);o=y}}if(c[0]=-1,E=[],D=[],R=[],F=[],E[0]=9,D[0]=6,_=s,_=w.inflate_trees_dynamic(257+(31&_),1+(_>>5&31),i,E,D,R,F,f,e),0!=_)return _==X&&(i=null,r=9),t=_,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d.init(E[0],D[0],f,R[0],f,F[0]),r=6;case 6:if(n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),b=e.next_in_index,g=e.avail_in,p=n.bitb,h=n.bitk,m=n.write,x=m{n.reset(e,null),n.win=null,f=null},n.set_dictionary=(e,t,i)=>{n.win.set(e.subarray(t,t+i),0),n.read=n.write=i},n.sync_point=()=>1==r?1:0}const le=13,ce=[0,0,255,255];function de(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):G}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,i)=>(n.msg=null,e.blocks=null,8>i||i>15?(e.inflateEnd(n),G):(e.wbits=i,n.istate.blocks=new oe(n,1<{let n,i;if(!e||!e.istate||!e.next_in)return G;const r=e.istate;for(t=4==t?j:0,n=j;;)switch(r.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(r.method=e.read_byte(e.next_in_index++)))){r.mode=le,e.msg="unknown compression method",r.marker=5;break}if(8+(r.method>>4)>r.wbits){r.mode=le,e.msg="invalid win size",r.marker=5;break}r.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,i=255&e.read_byte(e.next_in_index++),((r.method<<8)+i)%31!=0){r.mode=le,e.msg="incorrect header check",r.marker=5;break}if(!(32&i)){r.mode=7;break}r.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,r.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,r.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,r.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,r.need+=255&e.read_byte(e.next_in_index++),r.mode=6,2);case 6:return r.mode=le,e.msg="need dictionary",r.marker=0,G;case 7:if(n=r.blocks.proc(e,n),n==X){r.mode=le,r.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,r.blocks.reset(e,r.was),r.mode=12;case 12:return e.avail_in=0,1;case le:return X;default:return G}},e.inflateSetDictionary=(e,t,n)=>{let i=0,r=n;if(!e||!e.istate||6!=e.istate.mode)return G;const a=e.istate;return r<1<{let n,i,r,a,s;if(!e||!e.istate)return G;const o=e.istate;if(o.mode!=le&&(o.mode=le,o.marker=0),0===(n=e.avail_in))return j;for(i=e.next_in_index,r=o.marker;0!==n&&4>r;)e.read_byte(i)==ce[r]?r++:r=0!==e.read_byte(i)?0:4-r,i++,n--;return e.total_in+=i-e.next_in_index,e.next_in_index=i,e.avail_in=n,o.marker=r,4!=r?X:(a=e.total_in,s=e.total_out,t(e),e.total_in=a,e.total_out=s,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():G}function ue(){}ue.prototype={inflateInit(e){const t=this;return t.istate=new de,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):G},inflateEnd(){const e=this;if(!e.istate)return G;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):G},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):G},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const fe=4294967295,_e=65535,we=67324752,pe=134695760,he=pe,be=33639248,ge=101010256,me=101075792,xe=117853008,ye=22,ke=21589,Se=2048,ze="/",ve=new o(2107,11,31),Ee=new o(1980,0,1),De=void 0,Re="undefined",Fe="function";class Te{constructor(e){return class extends z{constructor(t,n){const i=new e(n);super({transform(e,t){t.enqueue(i.append(e))},flush(e){const t=i.flush();t&&e.enqueue(t)}})}}}}let Ae=2;try{typeof F!=Re&&F.hardwareConcurrency&&(Ae=F.hardwareConcurrency)}catch(e){}const Ce={chunkSize:524288,maxWorkers:Ae,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:De,CompressionStreamNative:typeof D!=Re&&D,DecompressionStreamNative:typeof R!=Re&&R},Ne=n.assign({},Ce);function Ue(){return Ne}function We(e){return s.max(e.chunkSize,64)}function Ie(e){const{baseURL:n,chunkSize:i,maxWorkers:r,terminateWorkerTimeout:a,useCompressionStream:s,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:u,workerScripts:_}=e;if(Le("baseURL",n),Le("chunkSize",i),Le("maxWorkers",r),Le("terminateWorkerTimeout",a),Le("useCompressionStream",s),Le("useWebWorkers",o),l&&(Ne.CompressionStream=new Te(l)),c&&(Ne.DecompressionStream=new Te(c)),Le("CompressionStream",d),Le("DecompressionStream",u),_!==De){const{deflate:e,inflate:n}=_;if((e||n)&&(Ne.workerScripts||(Ne.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");Ne.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");Ne.workerScripts.inflate=n}}}function Le(e,t){t!==De&&(Ne[e]=t)}const Oe=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;Oe[e]=t}class Me{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,i=0|e.length;i>n;n++)t=t>>>8^Oe[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Pe extends z{constructor(){let e;const t=new Me;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new _(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function He(e){if(typeof m==Re){const t=new _((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=Be.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>s.round(e/1099511627776)||32,_shiftRight(e,t,n,i){for(void 0===i&&(i=[]);t>=32;t-=32)i.push(n),n=0;if(0===t)return i.concat(e);for(let r=0;r>>t),n=e[r]<<32-t;const r=e.length?e[e.length-1]:0,a=Be.getPartial(r);return i.push(Be.partial(t+a&31,t+a>32?n:i.pop(),1)),i}},qe={bytes:{fromBits(e){const t=Be.bitLength(e)/8,n=new _(t);let i;for(let r=0;t>r;r++)3&r||(i=e[r/4]),n[r]=i>>>24,i<<=8;return n},toBits(e){const t=[];let n,i=0;for(n=0;n9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new p(n);let s=0;for(let e=t.blockSize+i-(t.blockSize+i&t.blockSize-1);r>=e;e+=t.blockSize)t._block(a.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=Be.concat(t,[Be.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,i){return e>19?e>39?e>59?e>79?void 0:t^n^i:t&n|t&i|n&i:t^n^i:t&n|~t&i}_S(e,t){return t<>>32-e}_block(e){const n=this,i=n._h,r=t(80);for(let t=0;16>t;t++)r[t]=e[t];let a=i[0],o=i[1],l=i[2],c=i[3],d=i[4];for(let e=0;79>=e;e++){16>e||(r[e]=n._S(1,r[e-3]^r[e-8]^r[e-14]^r[e-16]));const t=n._S(5,a)+n._f(e,o,l,c)+d+r[e]+n._key[s.floor(e/20)]|0;d=c,c=l,l=n._S(30,o),o=a,a=t}i[0]=i[0]+a|0,i[1]=i[1]+o|0,i[2]=i[2]+l|0,i[3]=i[3]+c|0,i[4]=i[4]+d|0}},Ze={getRandomValues(e){const t=new p(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(s.random()>.5?1:-1))};for(let i,r=0;rnew Ke.hmacSha1(qe.bytes.toBits(e)),pbkdf2(e,t,n,i){if(n=n||1e4,0>i||0>n)throw new f("invalid params to pbkdf2");const r=1+(i>>5)<<2;let a,s,o,l,c;const d=new ArrayBuffer(r),u=new h(d);let _=0;const w=Be;for(t=qe.bytes.toBits(t),c=1;(r||1)>_;c++){for(a=s=e.encrypt(w.concat(t,[c])),o=1;n>o;o++)for(s=e.encrypt(s),l=0;l_&&or&&(e=(new n).update(e).finalize());for(let t=0;r>t;t++)i[0][t]=909522486^e[t],i[1][t]=1549556828^e[t];t._baseHash[0].update(i[0]),t._baseHash[1].update(i[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Ye=typeof k!=Re&&typeof k.getRandomValues==Fe,Ge="Invalid password",Xe="Invalid signature",je="zipjs-abort-check-password";function Je(e){return Ye?k.getRandomValues(e):Ze.getRandomValues(e)}const Qe=16,$e={name:"PBKDF2"},et=n.assign({hash:{name:"HMAC"}},$e),tt=n.assign({iterations:1e3,hash:{name:"SHA-1"}},$e),nt=["deriveBits"],it=[8,12,16],rt=[16,24,32],at=10,st=[0,0,0,0],ot=typeof k!=Re,lt=ot&&k.subtle,ct=ot&&typeof lt!=Re,dt=qe.bytes,ut=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],i=t._tables[1],r=e.length;let a,s,o,l=1;if(4!==r&&6!==r&&8!==r)throw new f("invalid aes key size");for(t._key=[s=e.slice(0),o=[]],a=r;4*r+28>a;a++){let e=s[a-1];(a%r==0||8===r&&a%r==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],a%r==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),s[a]=s[a-r]^e}for(let e=0;a;e++,a--){const t=s[3&e?a:a-4];o[e]=4>=a||4>e?t:i[0][n[t>>>24]]^i[1][n[t>>16&255]]^i[2][n[t>>8&255]]^i[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],i=t[4],r=[],a=[];let s,o,l,c;for(let e=0;256>e;e++)a[(r[e]=e<<1^283*(e>>7))^e]=e;for(let d=s=0;!n[d];d^=o||1,s=a[s]||1){let a=s^s<<1^s<<2^s<<3^s<<4;a=a>>8^255&a^99,n[d]=a,i[a]=d,c=r[l=r[o=r[d]]];let u=16843009*c^65537*l^257*o^16843008*d,f=257*r[a]^16843008*a;for(let n=0;4>n;n++)e[n][d]=f=f<<24^f>>>8,t[n][a]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],i=n.length/4-2,r=[0,0,0,0],a=this._tables[t],s=a[0],o=a[1],l=a[2],c=a[3],d=a[4];let u,_,w,p=e[0]^n[0],h=e[t?3:1]^n[1],b=e[2]^n[2],g=e[t?1:3]^n[3],m=4;for(let e=0;i>e;e++)u=s[p>>>24]^o[h>>16&255]^l[b>>8&255]^c[255&g]^n[m],_=s[h>>>24]^o[b>>16&255]^l[g>>8&255]^c[255&p]^n[m+1],w=s[b>>>24]^o[g>>16&255]^l[p>>8&255]^c[255&h]^n[m+2],g=s[g>>>24]^o[p>>16&255]^l[h>>8&255]^c[255&b]^n[m+3],m+=4,p=u,h=_,b=w;for(let e=0;4>e;e++)r[t?3&-e:e]=d[p>>>24]<<24^d[h>>16&255]<<16^d[b>>8&255]<<8^d[255&g]^n[m++],u=p,p=h,h=b,b=g,g=u;return r}},ft=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,i=255&e;255===t?(t=0,255===n?(n=0,255===i?i=0:++i):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=i}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let i;if(!(i=t.length))return[];const r=Be.bitLength(t);for(let r=0;i>r;r+=4){this.incCounter(n);const i=e.encrypt(n);t[r]^=i[0],t[r+1]^=i[1],t[r+2]^=i[2],t[r+3]^=i[3]}return Be.clamp(t,r)}},_t=Ke.hmacSha1;let wt=ot&&ct&&typeof lt.importKey==Fe,pt=ot&&ct&&typeof lt.deriveBits==Fe;class ht extends z{constructor({password:e,rawPassword:t,signed:i,encryptionStrength:r,checkPasswordOnly:a}){super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:xt(e,t),signed:i,strength:r-1,pending:new _})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:s,ready:o}=n;i?(await(async(e,t,n,i)=>{const r=await mt(e,t,n,kt(i,0,it[t])),a=kt(i,it[t]);if(r[0]!=a[0]||r[1]!=a[1])throw new f(Ge)})(n,r,i,kt(e,0,it[r]+2)),e=kt(e,it[r]+2),a?t.error(new f(je)):s()):await o;const l=new _(e.length-at-(e.length-at)%Qe);t.enqueue(gt(n,e,l,0,at,!0))},async flush(e){const{signed:t,ctr:n,hmac:i,pending:r,ready:a}=this;if(i&&n){await a;const s=kt(r,0,r.length-at),o=kt(r,r.length-at);let l=new _;if(s.length){const e=zt(dt,s);i.update(e);const t=n.update(e);l=St(dt,t)}if(t){const e=kt(St(dt,i.digest()),0,at);for(let t=0;at>t;t++)if(e[t]!=o[t])throw new f(Xe)}e.enqueue(l)}}})}}class bt extends z{constructor({password:e,rawPassword:t,encryptionStrength:i}){let r;super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:xt(e,t),strength:i-1,pending:new _})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:a,ready:s}=n;let o=new _;i?(o=await(async(e,t,n)=>{const i=Je(new _(it[t]));return yt(i,await mt(e,t,n,i))})(n,r,i),a()):await s;const l=new _(o.length+e.length-e.length%Qe);l.set(o,0),t.enqueue(gt(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:i,ready:a}=this;if(n&&t){await a;let s=new _;if(i.length){const e=t.update(zt(dt,i));n.update(e),s=St(dt,e)}r.signature=St(dt,n.digest()).slice(0,at),e.enqueue(yt(s,r.signature))}}}),r=this}}function gt(e,t,n,i,r,a){const{ctr:s,hmac:o,pending:l}=e,c=t.length-r;let d;for(l.length&&(t=yt(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new _(t)).set(n,0)}return e})(n,c-c%Qe)),d=0;c-Qe>=d;d+=Qe){const e=zt(dt,kt(t,d,d+Qe));a&&o.update(e);const r=s.update(e);a||o.update(r),n.set(St(dt,r),d+i)}return e.pending=kt(t,d),n}async function mt(e,i,r,a){e.password=null;const s=await(async(e,t,n,i,r)=>{if(!wt)return Ke.importKey(t);try{return await lt.importKey("raw",t,n,!1,r)}catch(e){return wt=!1,Ke.importKey(t)}})(0,r,et,0,nt),o=await(async(e,t,n)=>{if(!pt)return Ke.pbkdf2(t,e.salt,tt.iterations,n);try{return await lt.deriveBits(e,t,n)}catch(i){return pt=!1,Ke.pbkdf2(t,e.salt,tt.iterations,n)}})(n.assign({salt:a},tt),s,8*(2*rt[i]+2)),l=new _(o),c=zt(dt,kt(l,0,rt[i])),d=zt(dt,kt(l,rt[i],2*rt[i])),u=kt(l,2*rt[i]);return n.assign(e,{keys:{key:c,authentication:d,passwordVerification:u},ctr:new ft(new ut(c),t.from(st)),hmac:new _t(d)}),u}function xt(e,t){return t===De?He(e):t}function yt(e,t){let n=e;return e.length+t.length&&(n=new _(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function kt(e,t,n){return e.subarray(t,n)}function St(e,t){return e.fromBits(t)}function zt(e,t){return e.toBits(t)}class vt extends z{constructor({password:e,passwordVerification:t,checkPasswordOnly:i}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Ft(this,e)},transform(e,t){const n=this;if(n.password){const t=Dt(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(Ge);e=e.subarray(12)}i?t.error(new f(je)):t.enqueue(Dt(n,e))}})}}class Et extends z{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Ft(this,e)},transform(e,t){const n=this;let i,r;if(n.password){n.password=null;const t=Je(new _(12));t[11]=n.passwordVerification,i=new _(e.length+t.length),i.set(Rt(n,t),0),r=12}else i=new _(e.length),r=0;i.set(Rt(n,e),r),t.enqueue(i)}})}}function Dt(e,t){const n=new _(t.length);for(let i=0;i>>24]),r=~e.crcKey2.get(),e.keys=[n,i,r]}function At(e){const t=2|e.keys[2];return Ct(s.imul(t,1^t)>>>8)}function Ct(e){return 255&e}function Nt(e){return 4294967295&e}const Ut="deflate-raw";class Wt extends z{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:i}){super({});const{compressed:r,encrypted:a,useCompressionStream:s,zipCrypto:o,signed:l,level:c}=e,d=this;let u,f,_=Lt(super.readable);a&&!o||!l||(u=new Pe,_=Pt(_,u)),r&&(_=Mt(_,s,{level:c,chunkSize:t},i,n)),a&&(o?_=Pt(_,new Et(e)):(f=new bt(e),_=Pt(_,f))),Ot(d,_,(()=>{let e;a&&!o&&(e=f.signature),a&&!o||!l||(e=new h(u.value.buffer).getUint32(0)),d.signature=e}))}}class It extends z{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:i}){super({});const{zipCrypto:r,encrypted:a,signed:s,signature:o,compressed:l,useCompressionStream:c}=e;let d,u,_=Lt(super.readable);a&&(r?_=Pt(_,new vt(e)):(u=new ht(e),_=Pt(_,u))),l&&(_=Mt(_,c,{chunkSize:t},i,n)),a&&!r||!s||(d=new Pe,_=Pt(_,d)),Ot(this,_,(()=>{if((!a||r)&&s){const e=new h(d.value.buffer);if(o!=e.getUint32(0,!1))throw new f(Xe)}}))}}function Lt(e){return Pt(e,new z({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function Ot(e,t,i){t=Pt(t,new z({flush:i})),n.defineProperty(e,"readable",{get:()=>t})}function Mt(e,t,n,i,r){try{e=Pt(e,new(t&&i?i:r)(Ut,n))}catch(i){if(!t)return e;try{e=Pt(e,new r(Ut,n))}catch(t){return e}}return e}function Pt(e,t){return e.pipeThrough(t)}const Ht="data",Bt="close",qt="deflate",Vt="inflate";class Zt extends z{constructor(e,t){super({});const i=this,{codecType:r}=e;let a;r.startsWith(qt)?a=Wt:r.startsWith(Vt)&&(a=It);let s=0,o=0;const l=new a(e,t),c=super.readable,d=new z({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(i,{inputSize:o})}}),u=new z({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){const{signature:e}=l;n.assign(i,{signature:e,outputSize:s,inputSize:o})}});n.defineProperty(i,"readable",{get:()=>c.pipeThrough(d).pipeThrough(l).pipeThrough(u)})}}class Kt extends z{constructor(e){let t;super({transform:function n(i,r){if(t){const e=new _(t.length+i.length);e.set(t),e.set(i,t.length),i=e,t=null}i.length>e?(r.enqueue(i.slice(0,e)),n(i.slice(e),r)):t=i},flush(e){t&&t.length&&e.enqueue(t)}})}}let Yt=typeof T!=Re;class Gt{constructor(e,{readable:t,writable:i},{options:r,config:a,streamOptions:s,useWebWorkers:o,transferStreams:l,scripts:c},d){const{signal:u}=s;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Kt(a.chunkSize)).pipeThrough(new Xt(t,s),{signal:u}),writable:i,options:n.assign({},r),scripts:c,transferStreams:l,terminate:()=>new g((t=>{const{worker:n,busy:i}=e;n?(i?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,d(e)}}),(o&&Yt?Qt:Jt)(e,a)}}class Xt extends z{constructor(e,{onstart:t,onprogress:n,size:i,onend:r}){let a=0;super({async start(){t&&await jt(t,i)},async transform(e,t){a+=e.length,n&&await jt(n,a,i),t.enqueue(e)},async flush(){e.size=a,r&&await jt(r,a)}})}}async function jt(e,...t){try{await e(...t)}catch(e){}}function Jt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:i},r)=>{try{const i=new Zt(e,r);await t.pipeThrough(i).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:a,inputSize:s,outputSize:o}=i;return{signature:a,inputSize:s,outputSize:o}}finally{i()}})(e,t)}}function Qt(e,t){const{baseURL:i,chunkSize:r}=t;if(!e.interface){let a;try{a=((e,t,i)=>{const r={type:"module"};let a,s;typeof e==Fe&&(e=e());try{a=new u(e,t)}catch(t){a=e}if($t)try{s=new T(a)}catch(e){$t=!1,s=new T(a,r)}else s=new T(a,r);return s.addEventListener("message",(e=>(async({data:e},t)=>{const{type:i,value:r,messageId:a,result:s,error:o}=e,{reader:l,writer:c,resolveResult:d,rejectResult:u,onTaskFinished:w}=t;try{if(o){const{message:e,stack:t,code:i,name:r}=o,a=new f(e);n.assign(a,{stack:t,code:i,name:r}),p(a)}else{if("pull"==i){const{value:e,done:n}=await l.read();tn({type:Ht,value:e,done:n,messageId:a},t)}i==Ht&&(await c.ready,await c.write(new _(r)),tn({type:"ack",messageId:a},t)),i==Bt&&p(null,s)}}catch(o){tn({type:Bt,messageId:a},t),p(o)}function p(e,t){e?u(e):d(t),c&&c.releaseLock(),w()}})(e,i))),s})(e.scripts[0],i,e)}catch(n){return Yt=!1,Jt(e,t)}n.assign(e,{worker:a,interface:{run:()=>(async(e,t)=>{let i,r;const a=new g(((e,t)=>{i=e,r=t}));n.assign(e,{reader:null,writer:null,resolveResult:i,rejectResult:r,result:a});const{readable:s,options:o,scripts:l}=e,{writable:c,closed:d}=(e=>{let t;const n=new g((e=>t=e));return{writable:new E({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),u=tn({type:"start",scripts:l.slice(1),options:o,config:t,readable:s,writable:c},e);u||n.assign(e,{reader:s.getReader(),writer:c.getWriter()});const f=await a;return u||await c.getWriter().close(),await d,f})(e,{chunkSize:r})}})}return e.interface}let $t=!0,en=!0;function tn(e,{worker:t,writer:n,onTaskFinished:i,transferStreams:r}){try{const{value:n,readable:i,writable:a}=e,s=[];if(n&&(n.byteLength{const n=nn.find((e=>!e.busy));if(n)return on(n),new Gt(n,e,t,p);if(nn.length<_){const n={indexWorker:an};return an++,nn.push(n),new Gt(n,e,t,p)}return new g((n=>rn.push({resolve:n,stream:e,workerOptions:t})))})()).run();function p(e){if(rn.length){const[{resolve:t,stream:n,workerOptions:i}]=rn.splice(0,1);t(new Gt(e,n,i,p))}else e.worker?(on(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:i}=n;r.isFinite(i)&&i>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{nn=nn.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),i))})(e,t)):nn=nn.filter((t=>t!=e))}}function on(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const ln="HTTP error ",cn="HTTP Range not supported",dn="Writer iterator completed too soon",un="Range",fn="GET",_n="bytes",wn=65536,pn="writable";class hn{constructor(){this.size=0}init(){this.initialized=!0}}class bn extends hn{get readable(){const e=this,{chunkSize:t=wn}=e,n=new v({start(){this.chunkOffset=0},async pull(i){const{offset:r=0,size:a,diskNumberStart:o}=n,{chunkOffset:l}=this;i.enqueue(await Pn(e,r+l,s.min(t,a-l),o)),l+t>a?i.close():this.chunkOffset+=t}});return n}}class gn extends hn{constructor(){super();const e=this,t=new E({write:t=>e.writeUint8Array(t)});n.defineProperty(e,pn,{get:()=>t})}writeUint8Array(){}}class mn extends bn{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,i=e+t,r=e||it&&(a=a.slice(e,i)),new _(a)}}class xn extends hn{constructor(e){super();const t=new z,i=[];e&&i.push(["Content-Type",e]),n.defineProperty(this,pn,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:i}).blob()}getData(){return this.blob}}class yn extends bn{constructor(e,t){super(),Sn(this,e,t)}async init(){await zn(this,Cn,Rn),super.init()}readUint8Array(e,t){return vn(this,e,t,Cn,Rn)}}class kn extends bn{constructor(e,t){super(),Sn(this,e,t)}async init(){await zn(this,Nn,Fn),super.init()}readUint8Array(e,t){return vn(this,e,t,Nn,Fn)}}function Sn(e,t,i){const{preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s,combineSizeEocd:o}=i;delete(i=n.assign({},i)).preventHeadRequest,delete i.useRangeHeader,delete i.forceRangeRequests,delete i.combineSizeEocd,delete i.useXHR,n.assign(e,{url:t,options:i,preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s,combineSizeEocd:o})}async function zn(e,t,n){const{url:i,preventHeadRequest:a,useRangeHeader:s,forceRangeRequests:o,combineSizeEocd:l}=e;if((e=>{const{baseURL:t}=Ue(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(i)&&(s||o)&&(void 0===a||a)){const i=await t(fn,e,En(e,l?-22:void 0));if(!o&&i.headers.get("Accept-Ranges")!=_n)throw new f(cn);{let a;l&&(e.eocdCache=new _(await i.arrayBuffer()));const s=i.headers.get("Content-Range");if(s){const e=s.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=r(t))}}a===De?await An(e,t,n):e.size=a}}else await An(e,t,n)}async function vn(e,t,n,i,r){const{useRangeHeader:a,forceRangeRequests:s,eocdCache:o,size:l,options:c}=e;if(a||s){if(o&&t==l-ye&&n==ye)return o;const r=await i(fn,e,En(e,t,n));if(206!=r.status)throw new f(cn);return new _(await r.arrayBuffer())}{const{data:i}=e;return i||await r(e,c),new _(e.data.subarray(t,t+n))}}function En(e,t=0,i=1){return n.assign({},Dn(e),{[un]:_n+"="+(0>t?t:t+"-"+(t+i-1))})}function Dn({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Rn(e){await Tn(e,Cn)}async function Fn(e){await Tn(e,Nn)}async function Tn(e,t){const n=await t(fn,e,Dn(e));e.data=new _(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function An(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const i=(await t("HEAD",e,Dn(e))).headers.get("Content-Length");i?e.size=r(i):await n(e,e.options)}}async function Cn(e,{options:t,url:i},r){const a=await fetch(i,n.assign({},t,{method:e,headers:r}));if(400>a.status)return a;throw 416==a.status?new f(cn):new f(ln+(a.statusText||a.status))}function Nn(e,{url:t},i){return new g(((r,a)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",(()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),r({status:s.status,arrayBuffer:()=>s.response,headers:new l(e)})}else a(416==s.status?new f(cn):new f(ln+(s.statusText||s.status)))}),!1),s.addEventListener("error",(e=>a(e.detail?e.detail.error:new f("Network error"))),!1),s.open(e,t),i)for(const e of n.entries(i))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()}))}class Un extends bn{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new kn(e,t):new yn(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Wn extends bn{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await g.all(t.map((async(n,i)=>{await n.init(),i!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const i=this,{readers:r}=this;let a,o=n;-1==o&&(o=r.length-1);let l=e;for(;l>=r[o].size;)l-=r[o].size,o++;const c=r[o],d=c.size;if(l+t>d){const r=d-l;a=new _(t),a.set(await Pn(c,l,r)),a.set(await i.readUint8Array(e+r,t-r,n),r)}else a=await Pn(c,l,t);return i.lastDiskNumber=s.max(o,i.lastDiskNumber),a}}class In extends hn{constructor(e,t=4294967295){super();const i=this;let r,a,s;n.assign(i,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new E({async write(t){const{availableSize:n}=i;if(s)t.lengtho})}}async function Ln(e,t){if(!e.init||e.initialized)return g.resolve();await e.init(t)}function On(e){return t.isArray(e)&&(e=new Wn(e)),e instanceof v&&(e={readable:e}),e}function Mn(e){e.writable===De&&typeof e.next==Fe&&(e=new In(e)),e instanceof E&&(e={writable:e});const{writable:t}=e;return t.size===De&&(t.size=0),e instanceof In||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function Pn(e,t,n,i){return e.readUint8Array(t,n,i)}const Hn=Wn,Bn=In,qn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Vn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const _i="File format is not recognized",wi="End of central directory not found",pi="End of Zip64 central directory locator not found",hi="Central directory header not found",bi="Local file header not found",gi="Zip64 extra field not found",mi="File contains encrypted entry",xi="Encryption method not supported",yi="Compression method not supported",ki="Split zip file",Si="utf-8",zi="cp437",vi=[[Xn,fe],[jn,fe],[Jn,fe],[Qn,_e]],Ei={[_e]:{getValue:Li,bytes:4},[fe]:{getValue:Oi,bytes:8}};class Di{constructor(e,t={}){n.assign(this,{reader:On(e),options:t,config:Ue()})}async*getEntriesGenerator(e={}){const t=this;let{reader:i}=t;const{config:r}=t;if(await Ln(i),i.size!==De&&i.readUint8Array||(i=new mn(await new d(i.readable).blob()),await Ln(i)),i.size{const i=new _(4);var r;return r=t,Mi(i).setUint32(0,r,!0),await a(22)||await a(s.min(1048582,n));async function a(t){const r=n-t,a=await Pn(e,r,t);for(let e=a.length-22;e>=0;e--)if(a[e]==i[0]&&a[e+1]==i[1]&&a[e+2]==i[2]&&a[e+3]==i[3])return{offset:r+e,buffer:a.slice(e,e+22).buffer}}})(i,ge,i.size);if(!a)throw Li(Mi(await Pn(i,0,4)))==pe?new f(ki):new f(wi);const o=Mi(a);let l=Li(o,12),c=Li(o,16);const u=a.offset,w=Ii(o,20),p=u+ye+w;let h=Ii(o,4);const b=i.lastDiskNumber||0;let g=Ii(o,6),m=Ii(o,8),x=0,y=0;if(c==fe||l==fe||m==_e||g==_e){const e=Mi(await Pn(i,a.offset-20,20));if(Li(e,0)==xe){c=Oi(e,8);let t=await Pn(i,c,56,-1),n=Mi(t);const r=a.offset-20-56;if(Li(n,0)!=me&&c!=r){const e=c;c=r,x=c-e,t=await Pn(i,c,56,-1),n=Mi(t)}if(Li(n,0)!=me)throw new f(pi);h==_e&&(h=Li(n,16)),g==_e&&(g=Li(n,20)),m==_e&&(m=Oi(n,32)),l==fe&&(l=Oi(n,40)),c-=l}}if(cc)throw new f(_i);let k=0,S=await Pn(i,c,l,g),z=Mi(S);if(l){const e=a.offset-l;if(Li(z,k)!=be&&c!=e){const t=c;c=e,x+=c-t,S=await Pn(i,c,l,g),z=Mi(S)}}const v=a.offset-c-(i.lastDiskOffset||0);if(l==v||0>v||(l=v,S=await Pn(i,c,l,g),z=Mi(S)),0>c||c>=i.size)throw new f(_i);const E=Ci(t,e,"filenameEncoding"),D=Ci(t,e,"commentEncoding");for(let a=0;m>a;a++){const o=new Ri(i,r,t.options);if(Li(z,k)!=be)throw new f(hi);Fi(o,z,k+6);const l=!!o.bitFlag.languageEncodingFlag,c=k+46,d=c+o.filenameLength,u=d+o.extraFieldLength,_=Ii(z,k+4),w=!0,p=S.subarray(c,d),h=Ii(z,k+32),b=u+h,g=S.subarray(u,b),v=l,R=l,F=w&&!(16&~Wi(z,k+38)),T=Li(z,k+42)+x;n.assign(o,{versionMadeBy:_,msDosCompatible:w,compressedSize:0,uncompressedSize:0,commentLength:h,directory:F,offset:T,diskNumberStart:Ii(z,k+34),internalFileAttribute:Ii(z,k+36),externalFileAttribute:Li(z,k+38),rawFilename:p,filenameUTF8:v,commentUTF8:R,rawExtraField:S.subarray(d,u)});const A=Ci(t,e,"decodeText")||Vn,C=v?Si:E||zi,N=R?Si:D||zi;let U=A(p,C);U===De&&(U=Vn(p,C));let W=A(g,N);W===De&&(W=Vn(g,N)),n.assign(o,{rawComment:g,filename:U,comment:W,directory:F||U.endsWith(ze)}),y=s.max(T,y),Ti(o,o,z,k+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const I=new fi(o);I.getData=(e,t)=>o.getData(e,I,t),k=b;const{onprogress:L}=e;if(L)try{await L(a+1,m,new fi(o))}catch(e){}yield I}const R=Ci(t,e,"extractPrependedData"),F=Ci(t,e,"extractAppendedData");return R&&(t.prependedData=y>0?await Pn(i,0,y):new _),t.comment=w?await Pn(i,u+ye,w):new _,F&&(t.appendedData=p>>8&255:w>>>24&255),signature:w,compressed:0!=c&&!k,encrypted:r.encrypted&&!k,useWebWorkers:Ci(r,i,"useWebWorkers"),useCompressionStream:Ci(r,i,"useCompressionStream"),transferStreams:Ci(r,i,"transferStreams"),checkPasswordOnly:T},config:d,streamOptions:{signal:F,size:D,onstart:C,onprogress:N,onend:U}};let I=0;try{({outputSize:I}=await sn({readable:R,writable:A},W))}catch(e){if(!T||e.message!=je)throw e}finally{const e=Ci(r,i,"preventClose");A.size+=I,e||A.locked||await A.getWriter().close()}return T?De:e.getData?e.getData():A}}function Fi(e,t,i){const r=e.rawBitFlag=Ii(t,i+2),a=!(1&~r),s=Li(t,i+6);n.assign(e,{encrypted:a,version:Ii(t,i),bitFlag:{level:(6&r)>>1,dataDescriptor:!(8&~r),languageEncodingFlag:(r&Se)==Se},rawLastModDate:s,lastModDate:Ni(s),filenameLength:Ii(t,i+22),extraFieldLength:Ii(t,i+24)})}function Ti(e,t,i,r,a){const{rawExtraField:s}=t,c=t.extraField=new l,d=Mi(new _(s));let u=0;try{for(;u{t.zip64=!0;const n=Mi(e.data),i=vi.filter((([e,n])=>t[e]==n));for(let r=0,a=0;r{const r=Mi(e.data),a=Wi(r,4);n.assign(e,{vendorVersion:Wi(r,0),vendorId:Wi(r,2),strength:a,originalCompressionMethod:i,compressionMethod:Ii(r,5)}),t.compressionMethod=e.compressionMethod})(g,t,w),t.extraFieldAES=g):t.compressionMethod=w;const m=c.get(10);m&&(((e,t)=>{const i=Mi(e.data);let r,a=4;try{for(;a{const i=Mi(e.data),r=Wi(i,0),a=[],s=[];n?(1&~r||(a.push($n),s.push(ei)),2&~r||(a.push(ti),s.push("rawLastAccessDate")),4&~r||(a.push(ni),s.push("rawCreationDate"))):5>e.data.length||(a.push($n),s.push(ei));let l=1;a.forEach(((n,r)=>{if(e.data.length>=l+4){const a=Li(i,l);t[n]=e[n]=new o(1e3*a);const c=s[r];e[c]=a}l+=4}))})(x,t,a),t.extraFieldExtendedTimestamp=x);const y=c.get(6534);y&&(t.extraFieldUSDZ=y)}function Ai(e,t,i,r,a){const s=Mi(e.data),o=new Me;o.append(a[i]);const l=Mi(new _(4));l.setUint32(0,o.get(),!0);const c=Li(s,1);n.assign(e,{version:Wi(s,0),[t]:Vn(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&c==Li(l,0)}),e.valid&&(r[t]=e[t],r[t+"UTF8"]=!0)}function Ci(e,t,n){return t[n]===De?e.options[n]:t[n]}function Ni(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Ui(e){return new o(r(e/a(1e4)-a(116444736e5)))}function Wi(e,t){return e.getUint8(t)}function Ii(e,t){return e.getUint16(t,!0)}function Li(e,t){return e.getUint32(t,!0)}function Oi(e,t){return r(e.getBigUint64(t,!0))}function Mi(e){return new h(e.buffer)}const Pi="File already exists",Hi="Zip file comment exceeds 64KB",Bi="File entry comment exceeds 64KB",qi="File entry name exceeds 64KB",Vi="Version exceeds 65535",Zi="The strength must equal 1, 2, or 3",Ki="Extra field type exceeds 65535",Yi="Extra field data exceeds 64KB",Gi="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Xi="Undefined uncompressed size",ji=new _([7,0,2,0,65,69,3,0,0]);let Ji=0;const Qi=[];class $i{constructor(e,t={}){const i=(e=Mn(e)).availableSize!==De&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==De&&e.maxSize>0&&e.maxSize!==1/0;n.assign(this,{writer:e,addSplitZipSignature:i,options:t,config:Ue(),files:new l,filenames:new c,offset:t.offset===De?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new c,bufferedWrites:0})}async add(e="",i,r={}){const l=this,{pendingAddFileCalls:c,config:u}=l;let b;JiQi.push(e)));try{if(e=e.trim(),l.filenames.has(e))throw new f(Pi);return l.filenames.add(e),b=(async(e,i,r,l)=>{i=i.trim(),l.directory&&!i.endsWith(ze)?i+=ze:l.directory=i.endsWith(ze);const c=nr(e,l,"encodeText",He);let u=c(i);if(u===De&&(u=He(i)),dr(u)>_e)throw new f(qi);const b=l.comment||"";let m=c(b);if(m===De&&(m=He(b)),dr(m)>_e)throw new f(Bi);const x=nr(e,l,li,20);if(x>_e)throw new f(Vi);const y=nr(e,l,ci,20);if(y>_e)throw new f(Vi);const k=nr(e,l,$n,new o),S=nr(e,l,ti),v=nr(e,l,ni),E=nr(e,l,ai,!0),D=nr(e,l,ii,0),R=nr(e,l,ri,0),F=nr(e,l,"passThrough");let T,A;F||(T=nr(e,l,"password"),A=nr(e,l,"rawPassword"));const C=nr(e,l,"encryptionStrength",3),N=nr(e,l,di),U=nr(e,l,"extendedTimestamp",!0),W=nr(e,l,"keepOrder",!0),I=nr(e,l,"level"),L=nr(e,l,"useWebWorkers"),O=nr(e,l,"bufferedWrite"),M=nr(e,l,"dataDescriptorSignature",!1),P=nr(e,l,"signal"),H=nr(e,l,"useUnicodeFileNames",!0),B=nr(e,l,"useCompressionStream"),q=nr(e,l,"compressionMethod");let V=nr(e,l,"dataDescriptor",!0),Z=nr(e,l,si);if(!N&&(T!==De||A!==De)&&(1>C||C>3))throw new f(Zi);let K=new _;const{extraField:Y}=l;if(Y){let e=0,t=0;Y.forEach((t=>e+=4+dr(t))),K=new _(e),Y.forEach(((e,n)=>{if(n>_e)throw new f(Ki);if(dr(e)>_e)throw new f(Yi);lr(K,new w([n]),t),lr(K,new w([dr(e)]),t+2),lr(K,e,t+4),t+=4+dr(e)}))}let G=0,X=0,j=0;if(F&&(({uncompressedSize:j}=l),j===De))throw new f(Xi);const J=!0===Z;r&&(r=On(r),await Ln(r),F?G=ir(j):r.size===De?(V=!0,(Z||Z===De)&&(Z=!0,j=G=4294967296)):(j=r.size,G=ir(j)));const{diskOffset:Q,diskNumber:$,maxSize:ee}=e.writer,te=J||j>fe,ne=J||G>fe,ie=J||e.offset+e.pendingEntriesSize-Q>fe,re=nr(e,l,"supportZip64SplitFile",!0)&&J||$+s.ceil(e.pendingEntriesSize/ee)>_e;if(ie||te||ne||re){if(!1===Z||!W)throw new f(Gi);Z=!0}Z=Z||!1;const ae=nr(e,l,oi),{signature:se}=l,oe=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:i,creationDate:r,level:a,zip64:o,zipCrypto:l,useUnicodeFileNames:c,dataDescriptor:d,directory:u,rawExtraField:f,encryptionStrength:w,extendedTimestamp:h,encrypted:b}=e;let{version:g,compressionMethod:m}=e;const x=!u&&(a>0||a===De&&0!==m);let y,k,S,z;if(b&&!l){y=new _(dr(ji)+2);const e=cr(y);ar(e,0,39169),lr(y,ji,2),rr(e,8,w)}else y=new _;if(h){S=new _(9+(i?4:0)+(r?4:0));const e=cr(S);ar(e,0,ke),ar(e,2,dr(S)-4),z=1+(i?2:0)+(r?4:0),rr(e,4,z);let t=5;sr(e,t,s.floor(n.getTime()/1e3)),t+=4,i&&(sr(e,t,s.floor(i.getTime()/1e3)),t+=4),r&&sr(e,t,s.floor(r.getTime()/1e3));try{k=new _(36);const e=cr(k),t=tr(n);ar(e,0,10),ar(e,2,32),ar(e,8,1),ar(e,10,24),or(e,12,t),or(e,20,tr(i)||t),or(e,28,tr(r)||t)}catch(e){k=new _}}else k=S=new _;let v=0;c&&(v|=Se),d&&(v|=8),m===De&&(m=x?8:0),8==m&&(a>=1&&3>a&&(v|=6),a>=3&&5>a&&(v|=1),9===a&&(v|=2)),o&&(g=g>45?g:45),b&&(v|=1,l||(g=g>51?g:51,y[9]=m,m=99));const E=new _(26),D=cr(E);ar(D,0,g),ar(D,2,v),ar(D,4,m);const R=new p(1),F=cr(R);let T;T=Ee>n?Ee:n>ve?ve:n,ar(F,0,(T.getHours()<<6|T.getMinutes())<<5|T.getSeconds()/2),ar(F,2,(T.getFullYear()-1980<<4|T.getMonth()+1)<<5|T.getDate());const A=R[0];sr(D,6,A),ar(D,22,dr(t));const C=dr(y,S,k,f);ar(D,24,C);const N=new _(30+dr(t)+C);return sr(cr(N),0,we),lr(N,E,4),lr(N,t,30),lr(N,y,30+dr(t)),lr(N,S,30+dr(t,y)),lr(N,k,30+dr(t,y,S)),lr(N,f,30+dr(t,y,S,k)),{localHeaderArray:N,headerArray:E,headerView:D,lastModDate:n,rawLastModDate:A,encrypted:b,compressed:x,version:g,compressionMethod:m,extraFieldExtendedTimestampFlag:z,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:y,extraFieldLength:C}})(l=n.assign({},l,{rawFilename:u,rawComment:m,version:x,versionMadeBy:y,lastModDate:k,lastAccessDate:S,creationDate:v,rawExtraField:K,zip64:Z,zip64UncompressedSize:te,zip64CompressedSize:ne,zip64Offset:ie,zip64DiskNumberStart:re,password:T,rawPassword:A,level:B||e.config.CompressionStream!==De||e.config.CompressionStreamNative!==De?I:0,useWebWorkers:L,encryptionStrength:C,extendedTimestamp:U,zipCrypto:N,bufferedWrite:O,keepOrder:W,useUnicodeFileNames:H,dataDescriptor:V,dataDescriptorSignature:M,signal:P,msDosCompatible:E,internalFileAttribute:D,externalFileAttribute:R,useCompressionStream:B,passThrough:F,encrypted:!!(T&&dr(T)||A&&dr(A))||F&&ae,signature:se,compressionMethod:q})),le=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:i}=e;let r,a=new _,s=0;return n&&(a=new _(t?i?24:20:i?16:12),r=cr(a),i&&(s=4,sr(r,0,he))),{dataDescriptorArray:a,dataDescriptorView:r,dataDescriptorOffset:s}})(l),ce=dr(oe.localHeaderArray,le.dataDescriptorArray);let de;X=ce+G,e.options.usdz&&(X+=X+64),e.pendingEntriesSize+=X;try{de=await(async(e,i,r,s,o)=>{const{files:l,writer:c}=e,{keepOrder:u,dataDescriptor:w,signal:p}=o,{headerInfo:b}=s,{usdz:m}=e.options,x=t.from(l.values()).pop();let y,k,S,v,E,D,R,F={};l.set(i,F);try{let t;u&&(t=x&&x.lock,F.lock=new g((e=>S=e))),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&u)&&w||m?(D=c,await T()):(D=new z,R=new d(D.readable).blob(),D.writable.size=0,y=!0,e.bufferedWrites++,await Ln(c)),await Ln(D);const{writable:b}=c;let{diskOffset:k}=c;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new _(4);sr(cr(t),0,pe),await er(b,t),e.offset+=4}m&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:i,extraFieldLength:r}=n,a=cr(i),s=64-(t+dr(i))%64;4>s&&(s+=64);const o=new _(s),l=cr(o);ar(l,0,6534),ar(l,2,s-2);const c=i;n.localHeaderArray=i=new _(dr(c)+s),lr(i,c),lr(i,o,dr(c)),a=cr(i),ar(a,28,r+s),e.metadataSize+=s})(s,e.offset-k),y||(await t,await A(b));const{diskNumber:C}=c;if(E=!0,F.diskNumberStart=C,F=await(async(e,t,{diskNumberStart:i,lock:r},s,o,l)=>{const{headerInfo:c,dataDescriptorInfo:d,metadataSize:u}=s,{localHeaderArray:f,headerArray:w,lastModDate:p,rawLastModDate:h,encrypted:b,compressed:g,version:m,compressionMethod:x,rawExtraFieldExtendedTimestamp:y,extraFieldExtendedTimestampFlag:k,rawExtraFieldNTFS:S,rawExtraFieldAES:z}=c,{dataDescriptorArray:v}=d,{rawFilename:E,lastAccessDate:D,creationDate:R,password:F,rawPassword:T,level:A,zip64:C,zip64UncompressedSize:N,zip64CompressedSize:U,zip64Offset:W,zip64DiskNumberStart:I,zipCrypto:L,dataDescriptor:O,directory:M,versionMadeBy:P,rawComment:H,rawExtraField:B,useWebWorkers:q,onstart:V,onprogress:Z,onend:K,signal:Y,encryptionStrength:G,extendedTimestamp:X,msDosCompatible:j,internalFileAttribute:J,externalFileAttribute:Q,useCompressionStream:$,passThrough:ee}=l,te={lock:r,versionMadeBy:P,zip64:C,directory:!!M,filenameUTF8:!0,rawFilename:E,commentUTF8:!0,rawComment:H,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:S,rawExtraFieldAES:z,rawExtraField:B,extendedTimestamp:X,msDosCompatible:j,internalFileAttribute:J,externalFileAttribute:Q,diskNumberStart:i};let{signature:ne,uncompressedSize:ie}=l,re=0;ee||(ie=0);const{writable:ae}=t;if(e){e.chunkSize=We(o),await er(ae,f);const t=e.readable,n=t.size=e.size,i={options:{codecType:qt,level:A,rawPassword:T,password:F,encryptionStrength:G,zipCrypto:b&&L,passwordVerification:b&&L&&h>>8&255,signed:!ee,compressed:g&&!ee,encrypted:b&&!ee,useWebWorkers:q,useCompressionStream:$,transferStreams:!1},config:o,streamOptions:{signal:Y,size:n,onstart:V,onprogress:Z,onend:K}},r=await sn({readable:t,writable:ae},i);re=r.outputSize,ee||(ie=r.inputSize,ne=r.signature),ae.size+=ie}else await er(ae,f);let se;if(C){let e=4;N&&(e+=8),U&&(e+=8),W&&(e+=8),I&&(e+=4),se=new _(e)}else se=new _;return((e,t)=>{const{signature:n,rawExtraFieldZip64:i,compressedSize:r,uncompressedSize:s,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:d}=o,{dataDescriptorView:u,dataDescriptorOffset:f}=l,{zip64:_,zip64UncompressedSize:w,zip64CompressedSize:p,zipCrypto:h,dataDescriptor:b}=t;if(d&&!h||n===De||(sr(c,10,n),b&&sr(u,f,n)),_){const e=cr(i);ar(e,0,1),ar(e,2,dr(i)-4);let t=4;w&&(sr(c,18,fe),or(e,t,a(s)),t+=8),p&&(sr(c,14,fe),or(e,t,a(r))),b&&(or(u,f+4,a(r)),or(u,f+12,a(s)))}else sr(c,14,r),sr(c,18,s),b&&(sr(u,f+4,r),sr(u,f+8,s))})({signature:ne,rawExtraFieldZip64:se,compressedSize:re,uncompressedSize:ie,headerInfo:c,dataDescriptorInfo:d},l),O&&await er(ae,v),n.assign(te,{uncompressedSize:ie,compressedSize:re,lastModDate:p,rawLastModDate:h,creationDate:R,lastAccessDate:D,encrypted:b,zipCrypto:L,size:u+re,compressionMethod:x,version:m,headerArray:w,signature:ne,rawExtraFieldZip64:se,extraFieldExtendedTimestampFlag:k,zip64UncompressedSize:N,zip64CompressedSize:U,zip64Offset:W,zip64DiskNumberStart:I}),te})(r,D,F,s,e.config,o),E=!1,l.set(i,F),F.filename=i,y){await D.writable.getWriter().close();let e=await R;await t,await T(),v=!0,w||(e=await(async(e,t,n,{zipCrypto:i})=>{let r;r=await t.slice(0,26).arrayBuffer(),26!=r.byteLength&&(r=r.slice(0,26));const a=new h(r);return e.encrypted&&!i||sr(a,14,e.signature),e.zip64?(sr(a,18,fe),sr(a,22,fe)):(sr(a,18,e.compressedSize),sr(a,22,e.uncompressedSize)),await er(n,new _(r)),t.slice(r.byteLength)})(F,e,b,o)),await A(b),F.diskNumberStart=c.diskNumber,k=c.diskOffset,await e.stream().pipeTo(b,{preventClose:!0,preventAbort:!0,signal:p}),b.size+=e.size,v=!1}if(F.offset=e.offset-k,F.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:i,diskNumberStart:r}=e,{zip64UncompressedSize:s,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,d=cr(n);let u=4;s&&(u+=8),o&&(u+=8),l&&(or(d,u,a(i)),u+=8),c&&sr(d,u,r)})(F,o);else if(F.offset>fe)throw new f(Gi);return e.offset+=F.size,F}catch(t){if(y&&v||!y&&E){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}y?e.offset+=D.writable.size:e.offset=D.writable.size}throw l.delete(i),t}finally{y&&e.bufferedWrites--,S&&S(),k&&k()}async function T(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new g((t=>k=()=>{e.writerLocked=!1,t()})),await t}async function A(e){dr(b.localHeaderArray)>c.availableSize&&(c.availableSize=0,await er(e,new _))}})(e,i,r,{headerInfo:oe,dataDescriptorInfo:le,metadataSize:ce},l)}finally{e.pendingEntriesSize-=X}return n.assign(de,{name:i,comment:b,extraField:Y}),new fi(de)})(l,e,i,r),c.add(b),await b}catch(t){throw l.filenames.delete(e),t}finally{c.delete(b);const e=Qi.shift();e?e():Ji--}}async close(e=new _,n={}){const{pendingAddFileCalls:i,writer:r}=this,{writable:o}=r;for(;i.size;)await g.allSettled(t.from(i));return await(async(e,n,i)=>{const{files:r,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:d}=o,u=0,w=0,p=e.offset-l,h=r.size;for(const[,e]of r){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:i,rawComment:r,rawExtraFieldNTFS:a,rawExtraField:o,extendedTimestamp:l,extraFieldExtendedTimestampFlag:c,lastModDate:d}=e;let u;if(l){u=new _(9);const e=cr(u);ar(e,0,ke),ar(e,2,5),rr(e,4,c),sr(e,5,s.floor(d.getTime()/1e3))}else u=new _;e.rawExtraFieldCDExtendedTimestamp=u,w+=46+dr(t,r,n,i,a,u,o)}const b=new _(w),g=cr(b);await Ln(o);let m=0;for(const[e,n]of t.from(r.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:s,rawExtraFieldAES:l,rawExtraFieldCDExtendedTimestamp:d,rawExtraFieldNTFS:f,rawExtraField:_,rawComment:w,versionMadeBy:p,headerArray:h,directory:x,zip64:y,zip64UncompressedSize:k,zip64CompressedSize:S,zip64DiskNumberStart:z,zip64Offset:v,msDosCompatible:E,internalFileAttribute:D,externalFileAttribute:R,diskNumberStart:F,uncompressedSize:T,compressedSize:A}=n,C=dr(s,l,d,f,_);sr(g,u,be),ar(g,u+4,p);const N=cr(h);k||sr(N,18,T),S||sr(N,14,A),lr(b,h,u+6),ar(g,u+30,C),ar(g,u+32,dr(w)),ar(g,u+34,y&&z?_e:F),ar(g,u+36,D),R?sr(g,u+38,R):x&&E&&rr(g,u+38,16),sr(g,u+42,y&&v?fe:t),lr(b,a,u+46),lr(b,s,u+46+dr(a)),lr(b,l,u+46+dr(a,s)),lr(b,d,u+46+dr(a,s,l)),lr(b,f,u+46+dr(a,s,l,d)),lr(b,_,u+46+dr(a,s,l,d,f)),lr(b,w,u+46+dr(a)+C);const U=46+dr(a,w)+C;if(u-m>o.availableSize&&(o.availableSize=0,await er(c,b.slice(m,u)),m=u),u+=U,i.onprogress)try{await i.onprogress(e+1,r.size,new fi(n))}catch(e){}}await er(c,m?b.slice(m):b);let x=o.diskNumber;const{availableSize:y}=o;ye>y&&x++;let k=nr(e,i,si);if(p>fe||w>fe||h>_e||x>_e){if(!1===k)throw new f(Gi);k=!0}const S=new _(k?98:ye),z=cr(S);u=0,k&&(sr(z,0,me),or(z,4,a(44)),ar(z,12,45),ar(z,14,45),sr(z,16,x),sr(z,20,d),or(z,24,a(h)),or(z,32,a(h)),or(z,40,a(w)),or(z,48,a(p)),sr(z,56,xe),or(z,64,a(p)+a(w)),sr(z,72,x+1),nr(e,i,"supportZip64SplitFile",!0)&&(x=_e,d=_e),h=_e,p=fe,w=fe,u+=76),sr(z,u,ge),ar(z,u+4,x),ar(z,u+6,d),ar(z,u+8,h),ar(z,u+10,h),sr(z,u+12,w),sr(z,u+16,p);const v=dr(n);if(v){if(v>_e)throw new f(Hi);ar(z,u+20,v)}await er(c,S),v&&await er(c,n)})(this,e,n),nr(this,n,"preventClose")||await o.getWriter().close(),r.getData?r.getData():o}}async function er(e,t){const n=e.getWriter();try{await n.ready,e.size+=dr(t),await n.write(t)}finally{n.releaseLock()}}function tr(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function nr(e,t,n,i){const r=t[n]===De?e.options[n]:t[n];return r===De?i:r}function ir(e){return e+5*(s.floor(e/16383)+1)}function rr(e,t,n){e.setUint8(t,n)}function ar(e,t,n){e.setUint16(t,n,!0)}function sr(e,t,n){e.setUint32(t,n,!0)}function or(e,t,n){e.setBigUint64(t,n,!0)}function lr(e,t,n){e.set(t,n)}function cr(e){return new h(e.buffer)}function dr(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}Ie({Deflate:function(e){const t=new Y,n=(i=e&&e.chunkSize?e.chunkSize:65536)+5*(s.floor(i/16383)+1);var i;const r=new _(n);let a=e?e.level:-1;void 0===a&&(a=-1),t.deflateInit(a),t.next_out=r,this.append=(e,i)=>{let a,s,o=0,l=0,c=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,a=t.deflate(0),0!=a)throw new f("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?d.push(new _(r)):d.push(r.subarray(0,t.next_out_index))),c+=t.next_out_index,i&&t.next_in_index>0&&t.next_in_index!=o&&(i(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(s=new _(c),d.forEach((e=>{s.set(e,l),l+=e.length}))):s=d[0]?new _(d[0]):new _,s}},this.flush=()=>{let e,i,a=0,s=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw new f("deflating: "+t.msg);n-t.avail_out>0&&o.push(r.slice(0,t.next_out_index)),s+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),i=new _(s),o.forEach((e=>{i.set(e,a),a+=e.length})),i}},Inflate:function(e){const t=new ue,n=e&&e.chunkSize?s.floor(2*e.chunkSize):131072,i=new _(n);let r=!1;t.inflateInit(),t.next_out=i,this.append=(e,a)=>{const s=[];let o,l,c=0,d=0,u=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||r||(t.next_in_index=0,r=!0),o=t.inflate(0),r&&o===j){if(0!==t.avail_in)throw new f("inflating: bad input")}else if(0!==o&&1!==o)throw new f("inflating: "+t.msg);if((r||1===o)&&t.avail_in===e.length)throw new f("inflating: bad input");t.next_out_index&&(t.next_out_index===n?s.push(new _(i)):s.push(i.subarray(0,t.next_out_index))),u+=t.next_out_index,a&&t.next_in_index>0&&t.next_in_index!=c&&(a(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return s.length>1?(l=new _(u),s.forEach((e=>{l.set(e,d),d+=e.length}))):l=s[0]?new _(s[0]):new _,l}},this.flush=()=>{t.inflateEnd()}}}),e.BlobReader=mn,e.BlobWriter=xn,e.Data64URIReader=class extends bn{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const i=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:i,size:s.floor(.75*(t-i))})}readUint8Array(e,t){const{dataStart:n,dataURI:i}=this,r=new _(t),a=4*s.floor(e/3),o=atob(i.substring(a+n,4*s.ceil((e+t)/3)+n)),l=e-3*s.floor(a/4);for(let e=l;l+t>e;e++)r[e-l]=o.charCodeAt(e);return r}},e.Data64URIWriter=class extends gn{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,r=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*s.floor((a+e.length)/3)-a;n++)r+=i.fromCharCode(e[n]);for(;n2?t.data+=S(r):t.pending=r}getData(){return this.data+S(this.pending)}},e.ERR_BAD_FORMAT=_i,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=hi,e.ERR_DUPLICATED_NAME=Pi,e.ERR_ENCRYPTED=mi,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=pi,e.ERR_EOCDR_NOT_FOUND=wi,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=gi,e.ERR_HTTP_RANGE=cn,e.ERR_INVALID_COMMENT=Hi,e.ERR_INVALID_ENCRYPTION_STRENGTH=Zi,e.ERR_INVALID_ENTRY_COMMENT=Bi,e.ERR_INVALID_ENTRY_NAME=qi,e.ERR_INVALID_EXTRAFIELD_DATA=Yi,e.ERR_INVALID_EXTRAFIELD_TYPE=Ki,e.ERR_INVALID_PASSWORD=Ge,e.ERR_INVALID_SIGNATURE=Xe,e.ERR_INVALID_VERSION=Vi,e.ERR_ITERATOR_COMPLETED_TOO_SOON=dn,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=bi,e.ERR_SPLIT_ZIP_FILE=ki,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=Xi,e.ERR_UNSUPPORTED_COMPRESSION=yi,e.ERR_UNSUPPORTED_ENCRYPTION=xi,e.ERR_UNSUPPORTED_FORMAT=Gi,e.HttpRangeReader=class extends Un{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Un,e.Reader=bn,e.SplitDataReader=Wn,e.SplitDataWriter=In,e.SplitZipReader=Hn,e.SplitZipWriter=Bn,e.TextReader=class extends mn{constructor(e){super(new b([e],{type:"text/plain"}))}},e.TextWriter=class extends xn{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,i=await super.getData();if(i.text&&t)return i.text();{const t=new FileReader;return new g(((r,a)=>{n.assign(t,{onload:({target:e})=>r(e.result),onerror:()=>a(t.error)}),t.readAsText(i,e)}))}}},e.Uint8ArrayReader=class extends bn{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends gn{init(e=0){n.assign(this,{offset:0,array:new _(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new _(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=gn,e.ZipReader=Di,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:n}=new z,i=new Di(t,e).getEntriesGenerator();this.readable=new v({async pull(e){const{done:t,value:n}=await i.next();if(t)return e.close();const r={...n,readable:(()=>{const{readable:e,writable:t}=new z;if(n.getData)return n.getData(t),e})()};delete r.getData,e.enqueue(r)}}),this.writable=n}},e.ZipWriter=$i,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new z;this.readable=t,this.zipWriter=new $i(n,e)}transform(e){const{readable:t,writable:n}=new z({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new z;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=Ie,e.getMimeType=()=>"application/octet-stream",e.initReader=On,e.initStream=Ln,e.initWriter=Mn,e.readUint8Array=Pn,e.terminateWorkers=async()=>{await g.allSettled(nn.map((e=>(on(e),e.terminate()))))}})); +((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:i,Number:r,BigInt:a,Math:s,Date:o,Map:l,Set:c,Response:d,URL:u,Error:f,Uint8Array:_,Uint16Array:w,Uint32Array:p,DataView:h,Blob:b,Promise:g,TextEncoder:m,TextDecoder:x,document:y,crypto:k,btoa:S,TransformStream:z,ReadableStream:v,WritableStream:E,CompressionStream:D,DecompressionStream:F,navigator:R,Worker:T}="undefined"!=typeof globalThis?globalThis:this||self,A=-2;function C(e){return N(e.map((([e,n])=>new t(e).fill(n,0,e))))}function N(e){return e.reduce(((e,n)=>e.concat(t.isArray(n)?N(n):n)),[])}const U=[0,1,2,3].concat(...C([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function W(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const i=e.dyn_tree,r=e.stat_desc.static_tree,a=e.stat_desc.elems;let o,l,c,d=-1;for(n.heap_len=0,n.heap_max=573,o=0;a>o;o++)0!==i[2*o]?(n.heap[++n.heap_len]=d=o,n.depth[o]=0):i[2*o+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>d?++d:0,i[2*c]=1,n.depth[c]=0,n.opt_len--,r&&(n.static_len-=r[2*c+1]);for(e.max_code=d,o=s.floor(n.heap_len/2);o>=1;o--)n.pqdownheap(i,o);c=a;do{o=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(i,1),l=n.heap[1],n.heap[--n.heap_max]=o,n.heap[--n.heap_max]=l,i[2*c]=i[2*o]+i[2*l],n.depth[c]=s.max(n.depth[o],n.depth[l])+1,i[2*o+1]=i[2*l+1]=c,n.heap[1]=c++,n.pqdownheap(i,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,i=e.stat_desc.static_tree,r=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,s=e.stat_desc.max_length;let o,l,c,d,u,f,_=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)l=t.heap[o],d=n[2*n[2*l+1]+1]+1,d>s&&(d=s,_++),n[2*l+1]=d,l>e.max_code||(t.bl_count[d]++,u=0,a>l||(u=r[l-a]),f=n[2*l],t.opt_len+=f*(d+u),i&&(t.static_len+=f*(i[2*l+1]+u)));if(0!==_){do{for(d=s-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[s]--,_-=2}while(_>0);for(d=s;0!==d;d--)for(l=t.bl_count[d];0!==l;)c=t.heap[--o],c>e.max_code||(n[2*c+1]!=d&&(t.opt_len+=(d-n[2*c+1])*n[2*c],n[2*c+1]=d),l--)}})(n),((e,n,i)=>{const r=[];let a,s,o,l=0;for(a=1;15>=a;a++)r[a]=l=l+i[a-1]<<1;for(s=0;n>=s;s++)o=e[2*s+1],0!==o&&(e[2*s]=t(r[o]++,o))})(i,e.max_code,n.bl_count)}}function I(e,t,n,i,r){const a=this;a.static_tree=e,a.extra_bits=t,a.extra_base=n,a.elems=i,a.max_length=r}W._length_code=[0,1,2,3,4,5,6,7].concat(...C([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),W.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],W.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],W.d_code=e=>256>e?U[e]:U[256+(e>>>7)],W.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],W.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],W.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],W.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const L=C([[144,8],[112,9],[24,7],[8,8]]);I.static_ltree=N([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,L[t]])));const O=C([[30,5]]);function M(e,t,n,i,r){const a=this;a.good_length=e,a.max_lazy=t,a.nice_length=n,a.max_chain=i,a.func=r}I.static_dtree=N([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,O[t]]))),I.static_l_desc=new I(I.static_ltree,W.extra_lbits,257,286,15),I.static_d_desc=new I(I.static_dtree,W.extra_dbits,0,30,15),I.static_bl_desc=new I(null,W.extra_blbits,0,19,7);const P=[new M(0,0,0,0,0),new M(4,4,8,4,1),new M(4,5,16,8,1),new M(4,6,32,32,1),new M(4,4,16,16,2),new M(8,16,32,32,2),new M(8,16,128,128,2),new M(8,32,128,256,2),new M(32,128,258,1024,2),new M(32,258,258,4096,2)],H=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],B=113,q=666,V=262;function Z(e,t,n,i){const r=e[2*t],a=e[2*n];return a>r||r==a&&i[t]<=i[n]}function K(){const e=this;let t,n,i,r,a,o,l,c,d,u,f,p,h,b,g,m,x,y,k,S,z,v,E,D,F,R,T,C,N,U,L,O,M;const K=new W,Y=new W,G=new W;let X,j,J,Q,$,ee;function te(){let t;for(t=0;286>t;t++)L[2*t]=0;for(t=0;30>t;t++)O[2*t]=0;for(t=0;19>t;t++)M[2*t]=0;L[512]=1,e.opt_len=e.static_len=0,j=J=0}function ne(e,t){let n,i=-1,r=e[1],a=0,s=7,o=4;0===r&&(s=138,o=3),e[2*(t+1)+1]=65535;for(let l=0;t>=l;l++)n=r,r=e[2*(l+1)+1],++aa?M[2*n]+=a:0!==n?(n!=i&&M[2*n]++,M[32]++):a>10?M[36]++:M[34]++,a=0,i=n,0===r?(s=138,o=3):n==r?(s=6,o=3):(s=7,o=4))}function ie(t){e.pending_buf[e.pending++]=t}function re(e){ie(255&e),ie(e>>>8&255)}function ae(e,t){let n;const i=t;ee>16-i?(n=e,$|=n<>>16-ee,ee+=i-16):($|=e<=n;n++)if(i=a,a=e[2*(n+1)+1],++s>=o||i!=a){if(l>s)do{se(i,M)}while(0!=--s);else 0!==i?(i!=r&&(se(i,M),s--),se(16,M),ae(s-3,2)):s>10?(se(18,M),ae(s-11,7)):(se(17,M),ae(s-3,3));s=0,r=i,0===a?(o=138,l=3):i==a?(o=6,l=3):(o=7,l=4)}}function le(){16==ee?(re($),$=0,ee=0):8>ee||(ie(255&$),$>>>=8,ee-=8)}function ce(t,n){let i,r,a;if(e.dist_buf[j]=t,e.lc_buf[j]=255&n,j++,0===t?L[2*n]++:(J++,t--,L[2*(W._length_code[n]+256+1)]++,O[2*W.d_code(t)]++),!(8191&j)&&T>2){for(i=8*j,r=z-x,a=0;30>a;a++)i+=O[2*a]*(5+W.extra_dbits[a]);if(i>>>=3,Jo);se(256,t),Q=t[513]}function ue(){ee>8?re($):ee>0&&ie(255&$),$=0,ee=0}function fe(t,n,i){ae(0+(i?1:0),3),((t,n)=>{ue(),Q=8,re(n),re(~n),e.pending_buf.set(c.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function _e(n){((t,n,i)=>{let r,a,s=0;T>0?(K.build_tree(e),Y.build_tree(e),s=(()=>{let t;for(ne(L,K.max_code),ne(O,Y.max_code),G.build_tree(e),t=18;t>=3&&0===M[2*W.bl_order[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(),r=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a>r||(r=a)):r=a=n+5,n+4>r||-1==t?a==r?(ae(2+(i?1:0),3),de(I.static_ltree,I.static_dtree)):(ae(4+(i?1:0),3),((e,t,n)=>{let i;for(ae(e-257,5),ae(t-1,5),ae(n-4,4),i=0;n>i;i++)ae(M[2*W.bl_order[i]+1],3);oe(L,e-1),oe(O,t-1)})(K.max_code+1,Y.max_code+1,s+1),de(L,O)):fe(t,n,i),te(),i&&ue()})(0>x?-1:x,z-x,n),x=z,t.flush_pending()}function we(){let e,n,i,r;do{if(r=d-E-z,0===r&&0===z&&0===E)r=a;else if(-1==r)r--;else if(z>=a+a-V){c.set(c.subarray(a,a+a),0),v-=a,z-=a,x-=a,e=h,i=e;do{n=65535&f[--i],f[i]=a>n?0:n-a}while(0!=--e);e=a,i=e;do{n=65535&u[--i],u[i]=a>n?0:n-a}while(0!=--e);r+=a}if(0===t.avail_in)return;e=t.read_buf(c,z+E,r),E+=e,3>E||(p=255&c[z],p=(p<E&&0!==t.avail_in)}function pe(e){let t,n,i=F,r=z,s=D;const o=z>a-V?z-(a-V):0;let d=U;const f=l,_=z+258;let w=c[r+s-1],p=c[r+s];N>D||(i>>=2),d>E&&(d=E);do{if(t=e,c[t+s]==p&&c[t+s-1]==w&&c[t]==c[r]&&c[++t]==c[r+1]){r+=2,t++;do{}while(c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&c[++r]==c[++t]&&_>r);if(n=258-(_-r),r=_-258,n>s){if(v=e,s=n,n>=d)break;w=c[r+s-1],p=c[r+s]}}}while((e=65535&u[e&f])>o&&0!=--i);return s>E?E:s}e.depth=[],e.bl_count=[],e.heap=[],L=[],O=[],M=[],e.pqdownheap=(t,n)=>{const i=e.heap,r=i[n];let a=n<<1;for(;a<=e.heap_len&&(a(W||(W=8),H||(H=8),q||(q=0),t.msg=null,-1==k&&(k=6),1>H||H>9||8!=W||9>v||v>15||0>k||k>9||0>q||q>2?A:(t.dstate=e,o=v,a=1<(t.total_in=t.total_out=0,t.msg=null,e.pending=0,e.pending_out=0,n=B,r=0,K.dyn_tree=L,K.stat_desc=I.static_l_desc,Y.dyn_tree=O,Y.stat_desc=I.static_d_desc,G.dyn_tree=M,G.stat_desc=I.static_bl_desc,$=0,ee=0,Q=8,te(),(()=>{d=2*a,f[h-1]=0;for(let e=0;h-1>e;e++)f[e]=0;R=P[T].max_lazy,N=P[T].good_length,U=P[T].nice_length,F=P[T].max_chain,z=0,x=0,E=0,y=D=2,S=0,p=0})(),0))(t))),e.deflateEnd=()=>42!=n&&n!=B&&n!=q?A:(e.lc_buf=null,e.dist_buf=null,e.pending_buf=null,f=null,u=null,c=null,e.dstate=null,n==B?-3:0),e.deflateParams=(e,t,n)=>{let i=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?A:(P[T].func!=P[t].func&&0!==e.total_in&&(i=e.deflate(1)),T!=t&&(T=t,R=P[T].max_lazy,N=P[T].good_length,U=P[T].nice_length,F=P[T].max_chain),C=n,i)},e.deflateSetDictionary=(e,t,i)=>{let r,s=i,o=0;if(!t||42!=n)return A;if(3>s)return 0;for(s>a-V&&(s=a-V,o=i-s),c.set(t.subarray(o,o+s),0),z=s,x=s,p=255&c[0],p=(p<=r;r++)p=(p<{let _,w,b,F,N;if(d>4||0>d)return A;if(!s.next_out||!s.next_in&&0!==s.avail_in||n==q&&4!=d)return s.msg=H[4],A;if(0===s.avail_out)return s.msg=H[7],-5;var U;if(t=s,F=r,r=d,42==n&&(w=8+(o-8<<4)<<8,b=(T-1&255)>>1,b>3&&(b=3),w|=b<<6,0!==z&&(w|=32),w+=31-w%31,n=B,ie((U=w)>>8&255),ie(255&U)),0!==e.pending){if(t.flush_pending(),0===t.avail_out)return r=-1,0}else if(0===t.avail_in&&F>=d&&4!=d)return t.msg=H[7],-5;if(n==q&&0!==t.avail_in)return s.msg=H[7],-5;if(0!==t.avail_in||0!==E||0!=d&&n!=q){switch(N=-1,P[T].func){case 0:N=(e=>{let n,r=65535;for(r>i-5&&(r=i-5);;){if(1>=E){if(we(),0===E&&0==e)return 0;if(0===E)break}if(z+=E,E=0,n=x+r,(0===z||z>=n)&&(E=z-n,z=n,_e(!1),0===t.avail_out))return 0;if(z-x>=a-V&&(_e(!1),0===t.avail_out))return 0}return _e(4==e),0===t.avail_out?4==e?2:0:4==e?3:1})(d);break;case 1:N=(e=>{let n,i=0;for(;;){if(V>E){if(we(),V>E&&0==e)return 0;if(0===E)break}if(3>E||(p=(p<a-V||2!=C&&(y=pe(i)),3>y)n=ce(0,255&c[z]),E--,z++;else if(n=ce(z-v,y-3),E-=y,y>R||3>E)z+=y,y=0,p=255&c[z],p=(p<{let n,i,r=0;for(;;){if(V>E){if(we(),V>E&&0==e)return 0;if(0===E)break}if(3>E||(p=(p<D&&a-V>=(z-r&65535)&&(2!=C&&(y=pe(r)),5>=y&&(1==C||3==y&&z-v>4096)&&(y=2)),3>D||y>D)if(0!==S){if(n=ce(0,255&c[z-1]),n&&_e(!1),z++,E--,0===t.avail_out)return 0}else S=1,z++,E--;else{i=z+E-3,n=ce(z-1-k,D-3),E-=D-1,D-=2;do{++z>i||(p=(p<1+Q+10-ee&&(ae(2,3),se(256,I.static_ltree),le()),Q=7;else if(fe(0,0,!1),3==d)for(_=0;h>_;_++)f[_]=0;if(t.flush_pending(),0===t.avail_out)return r=-1,0}}return 4!=d?0:1}}function Y(){const e=this;e.next_in_index=0,e.next_out_index=0,e.avail_in=0,e.total_in=0,e.avail_out=0,e.total_out=0}Y.prototype={deflateInit(e,t){const n=this;return n.dstate=new K,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(e){const t=this;return t.dstate?t.dstate.deflate(t,e):A},deflateEnd(){const e=this;if(!e.dstate)return A;const t=e.dstate.deflateEnd();return e.dstate=null,t},deflateParams(e,t){const n=this;return n.dstate?n.dstate.deflateParams(n,e,t):A},deflateSetDictionary(e,t){const n=this;return n.dstate?n.dstate.deflateSetDictionary(n,e,t):A},read_buf(e,t,n){const i=this;let r=i.avail_in;return r>n&&(r=n),0===r?0:(i.avail_in-=r,e.set(i.next_in.subarray(i.next_in_index,i.next_in_index+r),t),i.next_in_index+=r,i.total_in+=r,r)},flush_pending(){const e=this;let t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),0!==t&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,0===e.dstate.pending&&(e.dstate.pending_out=0))}};const G=-2,X=-3,j=-5,J=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],Q=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],$=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],ee=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],te=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ne=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],ie=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function re(){let e,t,n,i,r,a;function s(e,t,s,o,l,c,d,u,f,_,w){let p,h,b,g,m,x,y,k,S,z,v,E,D,F,R;z=0,m=s;do{n[e[t+z]]++,z++,m--}while(0!==m);if(n[0]==s)return d[0]=-1,u[0]=0,0;for(k=u[0],x=1;15>=x&&0===n[x];x++);for(y=x,x>k&&(k=x),m=15;0!==m&&0===n[m];m--);for(b=m,k>m&&(k=m),u[0]=k,F=1<x;x++,F<<=1)if(0>(F-=n[x]))return X;if(0>(F-=n[m]))return X;for(n[m]+=F,a[1]=x=0,z=1,D=2;0!=--m;)a[D]=x+=n[z],D++,z++;m=0,z=0;do{0!==(x=e[t+z])&&(w[a[x]++]=m),z++}while(++m=y;y++)for(p=n[y];0!=p--;){for(;y>E+k;){if(g++,E+=k,R=b-E,R=R>k?k:R,(h=1<<(x=y-E))>p+1&&(h-=p+1,D=y,R>x))for(;++xn[++D];)h-=n[D];if(R=1<1440)return X;r[g]=v=_[0],_[0]+=R,0!==g?(a[g]=m,i[0]=x,i[1]=k,x=m>>>E-k,i[2]=v-r[g-1]-x,f.set(i,3*(r[g-1]+x))):d[0]=v}for(i[1]=y-E,s>z?w[z]w[z]?0:96,i[2]=w[z++]):(i[0]=c[w[z]-o]+16+64,i[2]=l[w[z++]-o]):i[0]=192,h=1<>>E;R>x;x+=h)f.set(i,3*(v+x));for(x=1<>>=1)m^=x;for(m^=x,S=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)i[o]=0;r.set(n.subarray(0,15),0),a.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,i,r,a,l)=>{let c;return o(19),e[0]=0,c=s(n,0,19,19,null,null,r,i,a,e,t),c==X?l.msg="oversubscribed dynamic bit lengths tree":c!=j&&0!==i[0]||(l.msg="incomplete dynamic bit lengths tree",c=X),c},this.inflate_trees_dynamic=(n,i,r,a,l,c,d,u,f)=>{let _;return o(288),e[0]=0,_=s(r,0,n,257,ee,te,c,a,u,e,t),0!=_||0===a[0]?(_==X?f.msg="oversubscribed literal/length tree":-4!=_&&(f.msg="incomplete literal/length tree",_=X),_):(o(288),_=s(r,n,i,0,ne,ie,d,l,u,e,t),0!=_||0===l[0]&&n>257?(_==X?f.msg="oversubscribed distance tree":_==j?(f.msg="incomplete distance tree",_=X):-4!=_&&(f.msg="empty distance tree with lengths",_=X),_):0)}}function ae(){const e=this;let t,n,i,r,a=0,s=0,o=0,l=0,c=0,d=0,u=0,f=0,_=0,w=0;function p(e,t,n,i,r,a,s,o){let l,c,d,u,f,_,w,p,h,b,g,m,x,y,k,S;w=o.next_in_index,p=o.avail_in,f=s.bitb,_=s.bitk,h=s.write,b=h_;)p--,f|=(255&o.read_byte(w++))<<_,_+=8;if(l=f&g,c=n,d=i,S=3*(d+l),0!==(u=c[S]))for(;;){if(f>>=c[S+1],_-=c[S+1],16&u){for(u&=15,x=c[S+2]+(f&J[u]),f>>=u,_-=u;15>_;)p--,f|=(255&o.read_byte(w++))<<_,_+=8;for(l=f&m,c=r,d=a,S=3*(d+l),u=c[S];;){if(f>>=c[S+1],_-=c[S+1],16&u){for(u&=15;u>_;)p--,f|=(255&o.read_byte(w++))<<_,_+=8;if(y=c[S+2]+(f&J[u]),f>>=u,_-=u,b-=x,y>h){k=h-y;do{k+=s.end}while(0>k);if(u=s.end-k,x>u){if(x-=u,h-k>0&&u>h-k)do{s.win[h++]=s.win[k++]}while(0!=--u);else s.win.set(s.win.subarray(k,k+u),h),h+=u,k+=u,u=0;k=0}}else k=h-y,h-k>0&&2>h-k?(s.win[h++]=s.win[k++],s.win[h++]=s.win[k++],x-=2):(s.win.set(s.win.subarray(k,k+2),h),h+=2,k+=2,x-=2);if(h-k>0&&x>h-k)do{s.win[h++]=s.win[k++]}while(0!=--x);else s.win.set(s.win.subarray(k,k+x),h),h+=x,k+=x,x=0;break}if(64&u)return o.msg="invalid distance code",x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,X;l+=c[S+2],l+=f&J[u],S=3*(d+l),u=c[S]}break}if(64&u)return 32&u?(x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,1):(o.msg="invalid literal/length code",x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,X);if(l+=c[S+2],l+=f&J[u],S=3*(d+l),0===(u=c[S])){f>>=c[S+1],_-=c[S+1],s.win[h++]=c[S+2],b--;break}}else f>>=c[S+1],_-=c[S+1],s.win[h++]=c[S+2],b--}while(b>=258&&p>=10);return x=o.avail_in-p,x=x>_>>3?_>>3:x,p+=x,w-=x,_-=x<<3,s.bitb=f,s.bitk=_,o.avail_in=p,o.total_in+=w-o.next_in_index,o.next_in_index=w,s.write=h,0}e.init=(e,a,s,o,l,c)=>{t=0,u=e,f=a,i=s,_=o,r=l,w=c,n=null},e.proc=(e,h,b)=>{let g,m,x,y,k,S,z,v=0,E=0,D=0;for(D=h.next_in_index,y=h.avail_in,v=e.bitb,E=e.bitk,k=e.write,S=k=258&&y>=10&&(e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,b=p(u,f,i,_,r,w,e,h),D=h.next_in_index,y=h.avail_in,v=e.bitb,E=e.bitk,k=e.write,S=kE;){if(0===y)return e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,v|=(255&h.read_byte(D++))<>>=n[m+1],E-=n[m+1],x=n[m],0===x){l=n[m+2],t=6;break}if(16&x){c=15&x,a=n[m+2],t=2;break}if(!(64&x)){o=x,s=m/3+n[m+2];break}if(32&x){t=7;break}return t=9,h.msg="invalid literal/length code",b=X,e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);case 2:for(g=c;g>E;){if(0===y)return e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,v|=(255&h.read_byte(D++))<>=g,E-=g,o=f,n=r,s=w,t=3;case 3:for(g=o;g>E;){if(0===y)return e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,v|=(255&h.read_byte(D++))<>=n[m+1],E-=n[m+1],x=n[m],16&x){c=15&x,d=n[m+2],t=4;break}if(!(64&x)){o=x,s=m/3+n[m+2];break}return t=9,h.msg="invalid distance code",b=X,e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);case 4:for(g=c;g>E;){if(0===y)return e.bitb=v,e.bitk=E,h.avail_in=y,h.total_in+=D-h.next_in_index,h.next_in_index=D,e.write=k,e.inflate_flush(h,b);b=0,y--,v|=(255&h.read_byte(D++))<>=g,E-=g,t=5;case 5:for(z=k-d;0>z;)z+=e.end;for(;0!==a;){if(0===S&&(k==e.end&&0!==e.read&&(k=0,S=k7&&(E-=8,y++,D--),e.write=k,b=e.inflate_flush(h,b),k=e.write,S=k{}}re.inflate_trees_fixed=(e,t,n,i)=>(e[0]=9,t[0]=5,n[0]=Q,i[0]=$,0);const se=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function oe(e,t){const n=this;let i,r=0,a=0,s=0,o=0;const l=[0],c=[0],d=new ae;let u=0,f=new Int32Array(4320);const w=new re;n.bitk=0,n.bitb=0,n.win=new _(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==r&&d.free(e),r=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let i,r,a;return r=e.next_out_index,a=n.read,i=(a>n.write?n.end:n.write)-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==j&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i,a==n.end&&(a=0,n.write==n.end&&(n.write=0),i=n.write-a,i>e.avail_out&&(i=e.avail_out),0!==i&&t==j&&(t=0),e.avail_out-=i,e.total_out+=i,e.next_out.set(n.win.subarray(a,a+i),r),r+=i,a+=i),e.next_out_index=r,n.read=a,t},n.proc=(e,t)=>{let _,p,h,b,g,m,x,y;for(b=e.next_in_index,g=e.avail_in,p=n.bitb,h=n.bitk,m=n.write,x=mh;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>1){case 0:p>>>=3,h-=3,_=7&h,p>>>=_,h-=_,r=1;break;case 1:k=[],S=[],z=[[]],v=[[]],re.inflate_trees_fixed(k,S,z,v),d.init(k[0],S[0],z[0],0,v[0],0),p>>>=3,h-=3,r=6;break;case 2:p>>>=3,h-=3,r=3;break;case 3:return p>>>=3,h-=3,r=9,e.msg="invalid block type",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t)}break;case 1:for(;32>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>16&65535)!=(65535&p))return r=9,e.msg="invalid stored block lengths",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);a=65535&p,p=h=0,r=0!==a?2:0!==u?7:0;break;case 2:if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(0===x&&(m==n.end&&0!==n.read&&(m=0,x=mg&&(_=g),_>x&&(_=x),n.win.set(e.read_buf(b,_),m),b+=_,g-=_,m+=_,x-=_,0!=(a-=_))break;r=0!==u?7:0;break;case 3:for(;14>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<29||(_>>5&31)>29)return r=9,e.msg="too many length or distance symbols",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);if(_=258+(31&_)+(_>>5&31),!i||i.length<_)i=[];else for(y=0;_>y;y++)i[y]=0;p>>>=14,h-=14,o=0,r=4;case 4:for(;4+(s>>>10)>o;){for(;3>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>=3,h-=3}for(;19>o;)i[se[o++]]=0;if(l[0]=7,_=w.inflate_trees_bits(i,l,c,f,e),0!=_)return(t=_)==X&&(i=null,r=9),n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);o=0,r=5;case 5:for(;_=s,258+(31&_)+(_>>5&31)>o;){let a,d;for(_=l[0];_>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<d)p>>>=_,h-=_,i[o++]=d;else{for(y=18==d?7:d-14,a=18==d?11:3;_+y>h;){if(0===g)return n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);t=0,g--,p|=(255&e.read_byte(b++))<>>=_,h-=_,a+=p&J[y],p>>>=y,h-=y,y=o,_=s,y+a>258+(31&_)+(_>>5&31)||16==d&&1>y)return i=null,r=9,e.msg="invalid bit length repeat",t=X,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d=16==d?i[y-1]:0;do{i[y++]=d}while(0!=--a);o=y}}if(c[0]=-1,E=[],D=[],F=[],R=[],E[0]=9,D[0]=6,_=s,_=w.inflate_trees_dynamic(257+(31&_),1+(_>>5&31),i,E,D,F,R,f,e),0!=_)return _==X&&(i=null,r=9),t=_,n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,n.inflate_flush(e,t);d.init(E[0],D[0],f,F[0],f,R[0]),r=6;case 6:if(n.bitb=p,n.bitk=h,e.avail_in=g,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=m,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),b=e.next_in_index,g=e.avail_in,p=n.bitb,h=n.bitk,m=n.write,x=m{n.reset(e,null),n.win=null,f=null},n.set_dictionary=(e,t,i)=>{n.win.set(e.subarray(t,t+i),0),n.read=n.write=i},n.sync_point=()=>1==r?1:0}const le=13,ce=[0,0,255,255];function de(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):G}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,i)=>(n.msg=null,e.blocks=null,8>i||i>15?(e.inflateEnd(n),G):(e.wbits=i,n.istate.blocks=new oe(n,1<{let n,i;if(!e||!e.istate||!e.next_in)return G;const r=e.istate;for(t=4==t?j:0,n=j;;)switch(r.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(r.method=e.read_byte(e.next_in_index++)))){r.mode=le,e.msg="unknown compression method",r.marker=5;break}if(8+(r.method>>4)>r.wbits){r.mode=le,e.msg="invalid win size",r.marker=5;break}r.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,i=255&e.read_byte(e.next_in_index++),((r.method<<8)+i)%31!=0){r.mode=le,e.msg="incorrect header check",r.marker=5;break}if(!(32&i)){r.mode=7;break}r.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,r.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,r.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,r.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,r.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,r.need+=255&e.read_byte(e.next_in_index++),r.mode=6,2);case 6:return r.mode=le,e.msg="need dictionary",r.marker=0,G;case 7:if(n=r.blocks.proc(e,n),n==X){r.mode=le,r.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,r.blocks.reset(e,r.was),r.mode=12;case 12:return e.avail_in=0,1;case le:return X;default:return G}},e.inflateSetDictionary=(e,t,n)=>{let i=0,r=n;if(!e||!e.istate||6!=e.istate.mode)return G;const a=e.istate;return r<1<{let n,i,r,a,s;if(!e||!e.istate)return G;const o=e.istate;if(o.mode!=le&&(o.mode=le,o.marker=0),0===(n=e.avail_in))return j;for(i=e.next_in_index,r=o.marker;0!==n&&4>r;)e.read_byte(i)==ce[r]?r++:r=0!==e.read_byte(i)?0:4-r,i++,n--;return e.total_in+=i-e.next_in_index,e.next_in_index=i,e.avail_in=n,o.marker=r,4!=r?X:(a=e.total_in,s=e.total_out,t(e),e.total_in=a,e.total_out=s,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():G}function ue(){}ue.prototype={inflateInit(e){const t=this;return t.istate=new de,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):G},inflateEnd(){const e=this;if(!e.istate)return G;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):G},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):G},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const fe=4294967295,_e=65535,we=67324752,pe=134695760,he=pe,be=33639248,ge=101010256,me=101075792,xe=117853008,ye=22,ke=21589,Se=2048,ze="/",ve=new o(2107,11,31),Ee=new o(1980,0,1),De=void 0,Fe="undefined",Re="function";class Te{constructor(e){return class extends z{constructor(t,n){const i=new e(n);super({transform(e,t){t.enqueue(i.append(e))},flush(e){const t=i.flush();t&&e.enqueue(t)}})}}}}let Ae=2;try{typeof R!=Fe&&R.hardwareConcurrency&&(Ae=R.hardwareConcurrency)}catch(e){}const Ce={chunkSize:524288,maxWorkers:Ae,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:De,CompressionStreamNative:typeof D!=Fe&&D,DecompressionStreamNative:typeof F!=Fe&&F},Ne=n.assign({},Ce);function Ue(){return Ne}function We(e){return s.max(e.chunkSize,64)}function Ie(e){const{baseURL:n,chunkSize:i,maxWorkers:r,terminateWorkerTimeout:a,useCompressionStream:s,useWebWorkers:o,Deflate:l,Inflate:c,CompressionStream:d,DecompressionStream:u,workerScripts:_}=e;if(Le("baseURL",n),Le("chunkSize",i),Le("maxWorkers",r),Le("terminateWorkerTimeout",a),Le("useCompressionStream",s),Le("useWebWorkers",o),l&&(Ne.CompressionStream=new Te(l)),c&&(Ne.DecompressionStream=new Te(c)),Le("CompressionStream",d),Le("DecompressionStream",u),_!==De){const{deflate:e,inflate:n}=_;if((e||n)&&(Ne.workerScripts||(Ne.workerScripts={})),e){if(!t.isArray(e))throw new f("workerScripts.deflate must be an array");Ne.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new f("workerScripts.inflate must be an array");Ne.workerScripts.inflate=n}}}function Le(e,t){t!==De&&(Ne[e]=t)}const Oe=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;Oe[e]=t}class Me{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,i=0|e.length;i>n;n++)t=t>>>8^Oe[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class Pe extends z{constructor(){let e;const t=new Me;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new _(4);new h(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function He(e){if(typeof m==Fe){const t=new _((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=Be.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>s.round(e/1099511627776)||32,_shiftRight(e,t,n,i){for(void 0===i&&(i=[]);t>=32;t-=32)i.push(n),n=0;if(0===t)return i.concat(e);for(let r=0;r>>t),n=e[r]<<32-t;const r=e.length?e[e.length-1]:0,a=Be.getPartial(r);return i.push(Be.partial(t+a&31,t+a>32?n:i.pop(),1)),i}},qe={bytes:{fromBits(e){const t=Be.bitLength(e)/8,n=new _(t);let i;for(let r=0;t>r;r++)3&r||(i=e[r/4]),n[r]=i>>>24,i<<=8;return n},toBits(e){const t=[];let n,i=0;for(n=0;n9007199254740991)throw new f("Cannot hash more than 2^53 - 1 bits");const a=new p(n);let s=0;for(let e=t.blockSize+i-(t.blockSize+i&t.blockSize-1);r>=e;e+=t.blockSize)t._block(a.subarray(16*s,16*(s+1))),s+=1;return n.splice(0,16*s),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=Be.concat(t,[Be.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(s.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,i){return e>19?e>39?e>59?e>79?void 0:t^n^i:t&n|t&i|n&i:t^n^i:t&n|~t&i}_S(e,t){return t<>>32-e}_block(e){const n=this,i=n._h,r=t(80);for(let t=0;16>t;t++)r[t]=e[t];let a=i[0],o=i[1],l=i[2],c=i[3],d=i[4];for(let e=0;79>=e;e++){16>e||(r[e]=n._S(1,r[e-3]^r[e-8]^r[e-14]^r[e-16]));const t=n._S(5,a)+n._f(e,o,l,c)+d+r[e]+n._key[s.floor(e/20)]|0;d=c,c=l,l=n._S(30,o),o=a,a=t}i[0]=i[0]+a|0,i[1]=i[1]+o|0,i[2]=i[2]+l|0,i[3]=i[3]+c|0,i[4]=i[4]+d|0}},Ze={getRandomValues(e){const t=new p(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(s.random()>.5?1:-1))};for(let i,r=0;rnew Ke.hmacSha1(qe.bytes.toBits(e)),pbkdf2(e,t,n,i){if(n=n||1e4,0>i||0>n)throw new f("invalid params to pbkdf2");const r=1+(i>>5)<<2;let a,s,o,l,c;const d=new ArrayBuffer(r),u=new h(d);let _=0;const w=Be;for(t=qe.bytes.toBits(t),c=1;(r||1)>_;c++){for(a=s=e.encrypt(w.concat(t,[c])),o=1;n>o;o++)for(s=e.encrypt(s),l=0;l_&&or&&(e=(new n).update(e).finalize());for(let t=0;r>t;t++)i[0][t]=909522486^e[t],i[1][t]=1549556828^e[t];t._baseHash[0].update(i[0]),t._baseHash[1].update(i[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new f("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},Ye=typeof k!=Fe&&typeof k.getRandomValues==Re,Ge="Invalid password",Xe="Invalid signature",je="zipjs-abort-check-password";function Je(e){return Ye?k.getRandomValues(e):Ze.getRandomValues(e)}const Qe=16,$e={name:"PBKDF2"},et=n.assign({hash:{name:"HMAC"}},$e),tt=n.assign({iterations:1e3,hash:{name:"SHA-1"}},$e),nt=["deriveBits"],it=[8,12,16],rt=[16,24,32],at=10,st=[0,0,0,0],ot=typeof k!=Fe,lt=ot&&k.subtle,ct=ot&&typeof lt!=Fe,dt=qe.bytes,ut=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],i=t._tables[1],r=e.length;let a,s,o,l=1;if(4!==r&&6!==r&&8!==r)throw new f("invalid aes key size");for(t._key=[s=e.slice(0),o=[]],a=r;4*r+28>a;a++){let e=s[a-1];(a%r==0||8===r&&a%r==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],a%r==0&&(e=e<<8^e>>>24^l<<24,l=l<<1^283*(l>>7))),s[a]=s[a-r]^e}for(let e=0;a;e++,a--){const t=s[3&e?a:a-4];o[e]=4>=a||4>e?t:i[0][n[t>>>24]]^i[1][n[t>>16&255]]^i[2][n[t>>8&255]]^i[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],i=t[4],r=[],a=[];let s,o,l,c;for(let e=0;256>e;e++)a[(r[e]=e<<1^283*(e>>7))^e]=e;for(let d=s=0;!n[d];d^=o||1,s=a[s]||1){let a=s^s<<1^s<<2^s<<3^s<<4;a=a>>8^255&a^99,n[d]=a,i[a]=d,c=r[l=r[o=r[d]]];let u=16843009*c^65537*l^257*o^16843008*d,f=257*r[a]^16843008*a;for(let n=0;4>n;n++)e[n][d]=f=f<<24^f>>>8,t[n][a]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new f("invalid aes block size");const n=this._key[t],i=n.length/4-2,r=[0,0,0,0],a=this._tables[t],s=a[0],o=a[1],l=a[2],c=a[3],d=a[4];let u,_,w,p=e[0]^n[0],h=e[t?3:1]^n[1],b=e[2]^n[2],g=e[t?1:3]^n[3],m=4;for(let e=0;i>e;e++)u=s[p>>>24]^o[h>>16&255]^l[b>>8&255]^c[255&g]^n[m],_=s[h>>>24]^o[b>>16&255]^l[g>>8&255]^c[255&p]^n[m+1],w=s[b>>>24]^o[g>>16&255]^l[p>>8&255]^c[255&h]^n[m+2],g=s[g>>>24]^o[p>>16&255]^l[h>>8&255]^c[255&b]^n[m+3],m+=4,p=u,h=_,b=w;for(let e=0;4>e;e++)r[t?3&-e:e]=d[p>>>24]<<24^d[h>>16&255]<<16^d[b>>8&255]<<8^d[255&g]^n[m++],u=p,p=h,h=b,b=g,g=u;return r}},ft=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,i=255&e;255===t?(t=0,255===n?(n=0,255===i?i=0:++i):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=i}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let i;if(!(i=t.length))return[];const r=Be.bitLength(t);for(let r=0;i>r;r+=4){this.incCounter(n);const i=e.encrypt(n);t[r]^=i[0],t[r+1]^=i[1],t[r+2]^=i[2],t[r+3]^=i[3]}return Be.clamp(t,r)}},_t=Ke.hmacSha1;let wt=ot&&ct&&typeof lt.importKey==Re,pt=ot&&ct&&typeof lt.deriveBits==Re;class ht extends z{constructor({password:e,rawPassword:t,signed:i,encryptionStrength:r,checkPasswordOnly:a}){super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:xt(e,t),signed:i,strength:r-1,pending:new _})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:s,ready:o}=n;i?(await(async(e,t,n,i)=>{const r=await mt(e,t,n,kt(i,0,it[t])),a=kt(i,it[t]);if(r[0]!=a[0]||r[1]!=a[1])throw new f(Ge)})(n,r,i,kt(e,0,it[r]+2)),e=kt(e,it[r]+2),a?t.error(new f(je)):s()):await o;const l=new _(e.length-at-(e.length-at)%Qe);t.enqueue(gt(n,e,l,0,at,!0))},async flush(e){const{signed:t,ctr:n,hmac:i,pending:r,ready:a}=this;if(i&&n){await a;const s=kt(r,0,r.length-at),o=kt(r,r.length-at);let l=new _;if(s.length){const e=zt(dt,s);i.update(e);const t=n.update(e);l=St(dt,t)}if(t){const e=kt(St(dt,i.digest()),0,at);for(let t=0;at>t;t++)if(e[t]!=o[t])throw new f(Xe)}e.enqueue(l)}}})}}class bt extends z{constructor({password:e,rawPassword:t,encryptionStrength:i}){let r;super({start(){n.assign(this,{ready:new g((e=>this.resolveReady=e)),password:xt(e,t),strength:i-1,pending:new _})},async transform(e,t){const n=this,{password:i,strength:r,resolveReady:a,ready:s}=n;let o=new _;i?(o=await(async(e,t,n)=>{const i=Je(new _(it[t]));return yt(i,await mt(e,t,n,i))})(n,r,i),a()):await s;const l=new _(o.length+e.length-e.length%Qe);l.set(o,0),t.enqueue(gt(n,e,l,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:i,ready:a}=this;if(n&&t){await a;let s=new _;if(i.length){const e=t.update(zt(dt,i));n.update(e),s=St(dt,e)}r.signature=St(dt,n.digest()).slice(0,at),e.enqueue(yt(s,r.signature))}}}),r=this}}function gt(e,t,n,i,r,a){const{ctr:s,hmac:o,pending:l}=e,c=t.length-r;let d;for(l.length&&(t=yt(l,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new _(t)).set(n,0)}return e})(n,c-c%Qe)),d=0;c-Qe>=d;d+=Qe){const e=zt(dt,kt(t,d,d+Qe));a&&o.update(e);const r=s.update(e);a||o.update(r),n.set(St(dt,r),d+i)}return e.pending=kt(t,d),n}async function mt(e,i,r,a){e.password=null;const s=await(async(e,t,n,i,r)=>{if(!wt)return Ke.importKey(t);try{return await lt.importKey("raw",t,n,!1,r)}catch(e){return wt=!1,Ke.importKey(t)}})(0,r,et,0,nt),o=await(async(e,t,n)=>{if(!pt)return Ke.pbkdf2(t,e.salt,tt.iterations,n);try{return await lt.deriveBits(e,t,n)}catch(i){return pt=!1,Ke.pbkdf2(t,e.salt,tt.iterations,n)}})(n.assign({salt:a},tt),s,8*(2*rt[i]+2)),l=new _(o),c=zt(dt,kt(l,0,rt[i])),d=zt(dt,kt(l,rt[i],2*rt[i])),u=kt(l,2*rt[i]);return n.assign(e,{keys:{key:c,authentication:d,passwordVerification:u},ctr:new ft(new ut(c),t.from(st)),hmac:new _t(d)}),u}function xt(e,t){return t===De?He(e):t}function yt(e,t){let n=e;return e.length+t.length&&(n=new _(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function kt(e,t,n){return e.subarray(t,n)}function St(e,t){return e.fromBits(t)}function zt(e,t){return e.toBits(t)}class vt extends z{constructor({password:e,passwordVerification:t,checkPasswordOnly:i}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Rt(this,e)},transform(e,t){const n=this;if(n.password){const t=Dt(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new f(Ge);e=e.subarray(12)}i?t.error(new f(je)):t.enqueue(Dt(n,e))}})}}class Et extends z{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),Rt(this,e)},transform(e,t){const n=this;let i,r;if(n.password){n.password=null;const t=Je(new _(12));t[11]=n.passwordVerification,i=new _(e.length+t.length),i.set(Ft(n,t),0),r=12}else i=new _(e.length),r=0;i.set(Ft(n,e),r),t.enqueue(i)}})}}function Dt(e,t){const n=new _(t.length);for(let i=0;i>>24]),r=~e.crcKey2.get(),e.keys=[n,i,r]}function At(e){const t=2|e.keys[2];return Ct(s.imul(t,1^t)>>>8)}function Ct(e){return 255&e}function Nt(e){return 4294967295&e}const Ut="deflate-raw";class Wt extends z{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:i}){super({});const{compressed:r,encrypted:a,useCompressionStream:s,zipCrypto:o,signed:l,level:c}=e,d=this;let u,f,_=Lt(super.readable);a&&!o||!l||(u=new Pe,_=Pt(_,u)),r&&(_=Mt(_,s,{level:c,chunkSize:t},i,n)),a&&(o?_=Pt(_,new Et(e)):(f=new bt(e),_=Pt(_,f))),Ot(d,_,(()=>{let e;a&&!o&&(e=f.signature),a&&!o||!l||(e=new h(u.value.buffer).getUint32(0)),d.signature=e}))}}class It extends z{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:i}){super({});const{zipCrypto:r,encrypted:a,signed:s,signature:o,compressed:l,useCompressionStream:c}=e;let d,u,_=Lt(super.readable);a&&(r?_=Pt(_,new vt(e)):(u=new ht(e),_=Pt(_,u))),l&&(_=Mt(_,c,{chunkSize:t},i,n)),a&&!r||!s||(d=new Pe,_=Pt(_,d)),Ot(this,_,(()=>{if((!a||r)&&s){const e=new h(d.value.buffer);if(o!=e.getUint32(0,!1))throw new f(Xe)}}))}}function Lt(e){return Pt(e,new z({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function Ot(e,t,i){t=Pt(t,new z({flush:i})),n.defineProperty(e,"readable",{get:()=>t})}function Mt(e,t,n,i,r){try{e=Pt(e,new(t&&i?i:r)(Ut,n))}catch(i){if(!t)return e;try{e=Pt(e,new r(Ut,n))}catch(t){return e}}return e}function Pt(e,t){return e.pipeThrough(t)}const Ht="data",Bt="close",qt="deflate",Vt="inflate";class Zt extends z{constructor(e,t){super({});const i=this,{codecType:r}=e;let a;r.startsWith(qt)?a=Wt:r.startsWith(Vt)&&(a=It);let s=0,o=0;const l=new a(e,t),c=super.readable,d=new z({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(i,{inputSize:o})}}),u=new z({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){const{signature:e}=l;n.assign(i,{signature:e,outputSize:s,inputSize:o})}});n.defineProperty(i,"readable",{get:()=>c.pipeThrough(d).pipeThrough(l).pipeThrough(u)})}}class Kt extends z{constructor(e){let t;super({transform:function n(i,r){if(t){const e=new _(t.length+i.length);e.set(t),e.set(i,t.length),i=e,t=null}i.length>e?(r.enqueue(i.slice(0,e)),n(i.slice(e),r)):t=i},flush(e){t&&t.length&&e.enqueue(t)}})}}let Yt=typeof T!=Fe;class Gt{constructor(e,{readable:t,writable:i},{options:r,config:a,streamOptions:s,useWebWorkers:o,transferStreams:l,scripts:c},d){const{signal:u}=s;return n.assign(e,{busy:!0,readable:t.pipeThrough(new Kt(a.chunkSize)).pipeThrough(new Xt(t,s),{signal:u}),writable:i,options:n.assign({},r),scripts:c,transferStreams:l,terminate:()=>new g((t=>{const{worker:n,busy:i}=e;n?(i?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,d(e)}}),(o&&Yt?Qt:Jt)(e,a)}}class Xt extends z{constructor(e,{onstart:t,onprogress:n,size:i,onend:r}){let a=0;super({async start(){t&&await jt(t,i)},async transform(e,t){a+=e.length,n&&await jt(n,a,i),t.enqueue(e)},async flush(){e.size=a,r&&await jt(r,a)}})}}async function jt(e,...t){try{await e(...t)}catch(e){}}function Jt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:i},r)=>{try{const i=new Zt(e,r);await t.pipeThrough(i).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:a,inputSize:s,outputSize:o}=i;return{signature:a,inputSize:s,outputSize:o}}finally{i()}})(e,t)}}function Qt(e,t){const{baseURL:i,chunkSize:r}=t;if(!e.interface){let a;try{a=((e,t,i)=>{const r={type:"module"};let a,s;typeof e==Re&&(e=e());try{a=new u(e,t)}catch(t){a=e}if($t)try{s=new T(a)}catch(e){$t=!1,s=new T(a,r)}else s=new T(a,r);return s.addEventListener("message",(e=>(async({data:e},t)=>{const{type:i,value:r,messageId:a,result:s,error:o}=e,{reader:l,writer:c,resolveResult:d,rejectResult:u,onTaskFinished:w}=t;try{if(o){const{message:e,stack:t,code:i,name:r}=o,a=new f(e);n.assign(a,{stack:t,code:i,name:r}),p(a)}else{if("pull"==i){const{value:e,done:n}=await l.read();tn({type:Ht,value:e,done:n,messageId:a},t)}i==Ht&&(await c.ready,await c.write(new _(r)),tn({type:"ack",messageId:a},t)),i==Bt&&p(null,s)}}catch(o){tn({type:Bt,messageId:a},t),p(o)}function p(e,t){e?u(e):d(t),c&&c.releaseLock(),w()}})(e,i))),s})(e.scripts[0],i,e)}catch(n){return Yt=!1,Jt(e,t)}n.assign(e,{worker:a,interface:{run:()=>(async(e,t)=>{let i,r;const a=new g(((e,t)=>{i=e,r=t}));n.assign(e,{reader:null,writer:null,resolveResult:i,rejectResult:r,result:a});const{readable:s,options:o,scripts:l}=e,{writable:c,closed:d}=(e=>{let t;const n=new g((e=>t=e));return{writable:new E({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),u=tn({type:"start",scripts:l.slice(1),options:o,config:t,readable:s,writable:c},e);u||n.assign(e,{reader:s.getReader(),writer:c.getWriter()});const f=await a;return u||await c.getWriter().close(),await d,f})(e,{chunkSize:r})}})}return e.interface}let $t=!0,en=!0;function tn(e,{worker:t,writer:n,onTaskFinished:i,transferStreams:r}){try{const{value:n,readable:i,writable:a}=e,s=[];if(n&&(n.byteLength{const n=nn.find((e=>!e.busy));if(n)return on(n),new Gt(n,e,t,p);if(nn.length<_){const n={indexWorker:an};return an++,nn.push(n),new Gt(n,e,t,p)}return new g((n=>rn.push({resolve:n,stream:e,workerOptions:t})))})()).run();function p(e){if(rn.length){const[{resolve:t,stream:n,workerOptions:i}]=rn.splice(0,1);t(new Gt(e,n,i,p))}else e.worker?(on(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:i}=n;r.isFinite(i)&&i>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{nn=nn.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),i))})(e,t)):nn=nn.filter((t=>t!=e))}}function on(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const ln="HTTP error ",cn="HTTP Range not supported",dn="Writer iterator completed too soon",un="Range",fn="GET",_n="bytes",wn=65536,pn="writable";class hn{constructor(){this.size=0}init(){this.initialized=!0}}class bn extends hn{get readable(){const e=this,{chunkSize:t=wn}=e,n=new v({start(){this.chunkOffset=0},async pull(i){const{offset:r=0,size:a,diskNumberStart:o}=n,{chunkOffset:l}=this;i.enqueue(await Pn(e,r+l,s.min(t,a-l),o)),l+t>a?i.close():this.chunkOffset+=t}});return n}}class gn extends hn{constructor(){super();const e=this,t=new E({write:t=>e.writeUint8Array(t)});n.defineProperty(e,pn,{get:()=>t})}writeUint8Array(){}}class mn extends bn{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,i=e+t,r=e||it&&(a=a.slice(e,i)),new _(a)}}class xn extends hn{constructor(e){super();const t=new z,i=[];e&&i.push(["Content-Type",e]),n.defineProperty(this,pn,{get:()=>t.writable}),this.blob=new d(t.readable,{headers:i}).blob()}getData(){return this.blob}}class yn extends bn{constructor(e,t){super(),Sn(this,e,t)}async init(){await zn(this,Cn,Fn),super.init()}readUint8Array(e,t){return vn(this,e,t,Cn,Fn)}}class kn extends bn{constructor(e,t){super(),Sn(this,e,t)}async init(){await zn(this,Nn,Rn),super.init()}readUint8Array(e,t){return vn(this,e,t,Nn,Rn)}}function Sn(e,t,i){const{preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s,combineSizeEocd:o}=i;delete(i=n.assign({},i)).preventHeadRequest,delete i.useRangeHeader,delete i.forceRangeRequests,delete i.combineSizeEocd,delete i.useXHR,n.assign(e,{url:t,options:i,preventHeadRequest:r,useRangeHeader:a,forceRangeRequests:s,combineSizeEocd:o})}async function zn(e,t,n){const{url:i,preventHeadRequest:a,useRangeHeader:s,forceRangeRequests:o,combineSizeEocd:l}=e;if((e=>{const{baseURL:t}=Ue(),{protocol:n}=new u(e,t);return"http:"==n||"https:"==n})(i)&&(s||o)&&(void 0===a||a)){const i=await t(fn,e,En(e,l?-22:void 0));if(!o&&i.headers.get("Accept-Ranges")!=_n)throw new f(cn);{let a;l&&(e.eocdCache=new _(await i.arrayBuffer()));const s=i.headers.get("Content-Range");if(s){const e=s.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(a=r(t))}}a===De?await An(e,t,n):e.size=a}}else await An(e,t,n)}async function vn(e,t,n,i,r){const{useRangeHeader:a,forceRangeRequests:s,eocdCache:o,size:l,options:c}=e;if(a||s){if(o&&t==l-ye&&n==ye)return o;const r=await i(fn,e,En(e,t,n));if(206!=r.status)throw new f(cn);return new _(await r.arrayBuffer())}{const{data:i}=e;return i||await r(e,c),new _(e.data.subarray(t,t+n))}}function En(e,t=0,i=1){return n.assign({},Dn(e),{[un]:_n+"="+(0>t?t:t+"-"+(t+i-1))})}function Dn({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Fn(e){await Tn(e,Cn)}async function Rn(e){await Tn(e,Nn)}async function Tn(e,t){const n=await t(fn,e,Dn(e));e.data=new _(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function An(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const i=(await t("HEAD",e,Dn(e))).headers.get("Content-Length");i?e.size=r(i):await n(e,e.options)}}async function Cn(e,{options:t,url:i},r){const a=await fetch(i,n.assign({},t,{method:e,headers:r}));if(400>a.status)return a;throw 416==a.status?new f(cn):new f(ln+(a.statusText||a.status))}function Nn(e,{url:t},i){return new g(((r,a)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",(()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),r({status:s.status,arrayBuffer:()=>s.response,headers:new l(e)})}else a(416==s.status?new f(cn):new f(ln+(s.statusText||s.status)))}),!1),s.addEventListener("error",(e=>a(e.detail?e.detail.error:new f("Network error"))),!1),s.open(e,t),i)for(const e of n.entries(i))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()}))}class Un extends bn{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new kn(e,t):new yn(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class Wn extends bn{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await g.all(t.map((async(n,i)=>{await n.init(),i!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const i=this,{readers:r}=this;let a,o=n;-1==o&&(o=r.length-1);let l=e;for(;l>=r[o].size;)l-=r[o].size,o++;const c=r[o],d=c.size;if(l+t>d){const r=d-l;a=new _(t),a.set(await Pn(c,l,r)),a.set(await i.readUint8Array(e+r,t-r,n),r)}else a=await Pn(c,l,t);return i.lastDiskNumber=s.max(o,i.lastDiskNumber),a}}class In extends hn{constructor(e,t=4294967295){super();const i=this;let r,a,s;n.assign(i,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new E({async write(t){const{availableSize:n}=i;if(s)t.lengtho})}}async function Ln(e,t){if(!e.init||e.initialized)return g.resolve();await e.init(t)}function On(e){return t.isArray(e)&&(e=new Wn(e)),e instanceof v&&(e={readable:e}),e}function Mn(e){e.writable===De&&typeof e.next==Re&&(e=new In(e)),e instanceof E&&(e={writable:e});const{writable:t}=e;return t.size===De&&(t.size=0),e instanceof In||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function Pn(e,t,n,i){return e.readUint8Array(t,n,i)}const Hn=Wn,Bn=In,qn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function Vn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const pi="File format is not recognized",hi="End of central directory not found",bi="End of Zip64 central directory locator not found",gi="Central directory header not found",mi="Local file header not found",xi="Zip64 extra field not found",yi="File contains encrypted entry",ki="Encryption method not supported",Si="Compression method not supported",zi="Split zip file",vi="utf-8",Ei="cp437",Di=[[Xn,fe],[jn,fe],[Jn,fe],[Qn,_e]],Fi={[_e]:{getValue:Mi,bytes:4},[fe]:{getValue:Pi,bytes:8}};class Ri{constructor(e,t={}){n.assign(this,{reader:On(e),options:t,config:Ue()})}async*getEntriesGenerator(e={}){const t=this;let{reader:i}=t;const{config:r}=t;if(await Ln(i),i.size!==De&&i.readUint8Array||(i=new mn(await new d(i.readable).blob()),await Ln(i)),i.size{const i=new _(4);var r;return r=t,Hi(i).setUint32(0,r,!0),await a(22)||await a(s.min(1048582,n));async function a(t){const r=n-t,a=await Pn(e,r,t);for(let e=a.length-22;e>=0;e--)if(a[e]==i[0]&&a[e+1]==i[1]&&a[e+2]==i[2]&&a[e+3]==i[3])return{offset:r+e,buffer:a.slice(e,e+22).buffer}}})(i,ge,i.size);if(!a)throw Mi(Hi(await Pn(i,0,4)))==pe?new f(zi):new f(hi);const o=Hi(a);let l=Mi(o,12),c=Mi(o,16);const u=a.offset,w=Oi(o,20),p=u+ye+w;let h=Oi(o,4);const b=i.lastDiskNumber||0;let g=Oi(o,6),m=Oi(o,8),x=0,y=0;if(c==fe||l==fe||m==_e||g==_e){const e=Hi(await Pn(i,a.offset-20,20));if(Mi(e,0)==xe){c=Pi(e,8);let t=await Pn(i,c,56,-1),n=Hi(t);const r=a.offset-20-56;if(Mi(n,0)!=me&&c!=r){const e=c;c=r,x=c-e,t=await Pn(i,c,56,-1),n=Hi(t)}if(Mi(n,0)!=me)throw new f(bi);h==_e&&(h=Mi(n,16)),g==_e&&(g=Mi(n,20)),m==_e&&(m=Pi(n,32)),l==fe&&(l=Pi(n,40)),c-=l}}if(cc)throw new f(pi);let k=0,S=await Pn(i,c,l,g),z=Hi(S);if(l){const e=a.offset-l;if(Mi(z,k)!=be&&c!=e){const t=c;c=e,x+=c-t,S=await Pn(i,c,l,g),z=Hi(S)}}const v=a.offset-c-(i.lastDiskOffset||0);if(l==v||0>v||(l=v,S=await Pn(i,c,l,g),z=Hi(S)),0>c||c>=i.size)throw new f(pi);const E=Ui(t,e,"filenameEncoding"),D=Ui(t,e,"commentEncoding");for(let a=0;m>a;a++){const o=new Ti(i,r,t.options);if(Mi(z,k)!=be)throw new f(gi);Ai(o,z,k+6);const l=!!o.bitFlag.languageEncodingFlag,c=k+46,d=c+o.filenameLength,u=d+o.extraFieldLength,_=Oi(z,k+4),w=!(_>>8),p=_>>8==3,h=S.subarray(c,d),b=Oi(z,k+32),g=u+b,v=S.subarray(u,g),F=l,R=l,T=Mi(z,k+38),A=w&&!(16&~Li(z,k+38))||p&&!(16384&~(T>>16))||h.length&&47==h[h.length-1],C=p&&!(73&~(T>>16)),N=Mi(z,k+42)+x;n.assign(o,{versionMadeBy:_,msDosCompatible:w,compressedSize:0,uncompressedSize:0,commentLength:b,directory:A,offset:N,diskNumberStart:Oi(z,k+34),internalFileAttributes:Oi(z,k+36),externalFileAttributes:T,rawFilename:h,filenameUTF8:F,commentUTF8:R,rawExtraField:S.subarray(d,u),executable:C}),o.internalFileAttribute=o.internalFileAttributes,o.externalFileAttribute=o.externalFileAttributes;const U=Ui(t,e,"decodeText")||Vn,W=F?vi:E||Ei,I=R?vi:D||Ei;let L=U(h,W);L===De&&(L=Vn(h,W));let O=U(v,I);O===De&&(O=Vn(v,I)),n.assign(o,{rawComment:v,filename:L,comment:O,directory:A||L.endsWith(ze)}),y=s.max(N,y),Ci(o,o,z,k+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const M=new wi(o);M.getData=(e,t)=>o.getData(e,M,t),k=g;const{onprogress:P}=e;if(P)try{await P(a+1,m,new wi(o))}catch(e){}yield M}const F=Ui(t,e,"extractPrependedData"),R=Ui(t,e,"extractAppendedData");return F&&(t.prependedData=y>0?await Pn(i,0,y):new _),t.comment=w?await Pn(i,u+ye,w):new _,R&&(t.appendedData=p>>8&255:w>>>24&255),signature:w,compressed:0!=c&&!k,encrypted:r.encrypted&&!k,useWebWorkers:Ui(r,i,"useWebWorkers"),useCompressionStream:Ui(r,i,"useCompressionStream"),transferStreams:Ui(r,i,"transferStreams"),checkPasswordOnly:T},config:d,streamOptions:{signal:R,size:D,onstart:C,onprogress:N,onend:U}};let I=0;try{({outputSize:I}=await sn({readable:F,writable:A},W))}catch(e){if(!T||e.message!=je)throw e}finally{const e=Ui(r,i,"preventClose");A.size+=I,e||A.locked||await A.getWriter().close()}return T?De:e.getData?e.getData():A}}function Ai(e,t,i){const r=e.rawBitFlag=Oi(t,i+2),a=!(1&~r),s=Mi(t,i+6);n.assign(e,{encrypted:a,version:Oi(t,i),bitFlag:{level:(6&r)>>1,dataDescriptor:!(8&~r),languageEncodingFlag:(r&Se)==Se},rawLastModDate:s,lastModDate:Wi(s),filenameLength:Oi(t,i+22),extraFieldLength:Oi(t,i+24)})}function Ci(e,t,i,r,a){const{rawExtraField:s}=t,c=t.extraField=new l,d=Hi(new _(s));let u=0;try{for(;u{t.zip64=!0;const n=Hi(e.data),i=Di.filter((([e,n])=>t[e]==n));for(let r=0,a=0;r{const r=Hi(e.data),a=Li(r,4);n.assign(e,{vendorVersion:Li(r,0),vendorId:Li(r,2),strength:a,originalCompressionMethod:i,compressionMethod:Oi(r,5)}),t.compressionMethod=e.compressionMethod})(g,t,w),t.extraFieldAES=g):t.compressionMethod=w;const m=c.get(10);m&&(((e,t)=>{const i=Hi(e.data);let r,a=4;try{for(;a{const i=Hi(e.data),r=Li(i,0),a=[],s=[];n?(1&~r||(a.push($n),s.push(ei)),2&~r||(a.push(ti),s.push("rawLastAccessDate")),4&~r||(a.push(ni),s.push("rawCreationDate"))):5>e.data.length||(a.push($n),s.push(ei));let l=1;a.forEach(((n,r)=>{if(e.data.length>=l+4){const a=Mi(i,l);t[n]=e[n]=new o(1e3*a);const c=s[r];e[c]=a}l+=4}))})(x,t,a),t.extraFieldExtendedTimestamp=x);const y=c.get(6534);y&&(t.extraFieldUSDZ=y)}function Ni(e,t,i,r,a){const s=Hi(e.data),o=new Me;o.append(a[i]);const l=Hi(new _(4));l.setUint32(0,o.get(),!0);const c=Mi(s,1);n.assign(e,{version:Li(s,0),[t]:Vn(e.data.subarray(5)),valid:!a.bitFlag.languageEncodingFlag&&c==Mi(l,0)}),e.valid&&(r[t]=e[t],r[t+"UTF8"]=!0)}function Ui(e,t,n){return t[n]===De?e.options[n]:t[n]}function Wi(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function Ii(e){return new o(r(e/a(1e4)-a(116444736e5)))}function Li(e,t){return e.getUint8(t)}function Oi(e,t){return e.getUint16(t,!0)}function Mi(e,t){return e.getUint32(t,!0)}function Pi(e,t){return r(e.getBigUint64(t,!0))}function Hi(e){return new h(e.buffer)}const Bi="File already exists",qi="Zip file comment exceeds 64KB",Vi="File entry comment exceeds 64KB",Zi="File entry name exceeds 64KB",Ki="Version exceeds 65535",Yi="The strength must equal 1, 2, or 3",Gi="Extra field type exceeds 65535",Xi="Extra field data exceeds 64KB",ji="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Ji="Undefined uncompressed size",Qi=new _([7,0,2,0,65,69,3,0,0]);let $i=0;const er=[];class tr{constructor(e,t={}){const i=(e=Mn(e)).availableSize!==De&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==De&&e.maxSize>0&&e.maxSize!==1/0;n.assign(this,{writer:e,addSplitZipSignature:i,options:t,config:Ue(),files:new l,filenames:new c,offset:t.offset===De?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new c,bufferedWrites:0})}async add(e="",i,r={}){const l=this,{pendingAddFileCalls:c,config:u}=l;let b;$ier.push(e)));try{if(e=e.trim(),l.filenames.has(e))throw new f(Bi);return l.filenames.add(e),b=(async(e,i,r,l)=>{i=i.trim(),l.directory&&!i.endsWith(ze)?i+=ze:l.directory=i.endsWith(ze);const c=rr(e,l,"encodeText",He);let u=c(i);if(u===De&&(u=He(i)),fr(u)>_e)throw new f(Zi);const b=l.comment||"";let m=c(b);if(m===De&&(m=He(b)),fr(m)>_e)throw new f(Vi);const x=rr(e,l,di,20);if(x>_e)throw new f(Ki);const y=rr(e,l,ui,20);if(y>_e)throw new f(Ki);const k=rr(e,l,$n,new o),S=rr(e,l,ti),v=rr(e,l,ni),E=rr(e,l,oi,!0);let D=rr(e,l,ri,0);0===D&&(D=rr(e,l,ii,0));let F=rr(e,l,si,0);0===F&&(F=rr(e,l,ai,0));const R=rr(e,l,"passThrough");let T,A;R||(T=rr(e,l,"password"),A=rr(e,l,"rawPassword"));const C=rr(e,l,"encryptionStrength",3),N=rr(e,l,fi),U=rr(e,l,"extendedTimestamp",!0),W=rr(e,l,"keepOrder",!0),I=rr(e,l,"level"),L=rr(e,l,"useWebWorkers"),O=rr(e,l,"bufferedWrite"),M=rr(e,l,"dataDescriptorSignature",!1),P=rr(e,l,"signal"),H=rr(e,l,"useUnicodeFileNames",!0),B=rr(e,l,"useCompressionStream"),q=rr(e,l,"compressionMethod");let V=rr(e,l,"dataDescriptor",!0),Z=rr(e,l,li);if(!N&&(T!==De||A!==De)&&(1>C||C>3))throw new f(Yi);let K=new _;const{extraField:Y}=l;if(Y){let e=0,t=0;Y.forEach((t=>e+=4+fr(t))),K=new _(e),Y.forEach(((e,n)=>{if(n>_e)throw new f(Gi);if(fr(e)>_e)throw new f(Xi);dr(K,new w([n]),t),dr(K,new w([fr(e)]),t+2),dr(K,e,t+4),t+=4+fr(e)}))}let G=0,X=0,j=0;if(R&&(({uncompressedSize:j}=l),j===De))throw new f(Ji);const J=!0===Z;r&&(r=On(r),await Ln(r),R?G=ar(j):r.size===De?(V=!0,(Z||Z===De)&&(Z=!0,j=G=4294967296)):(j=r.size,G=ar(j)));const{diskOffset:Q,diskNumber:$,maxSize:ee}=e.writer,te=J||j>fe,ne=J||G>fe,ie=J||e.offset+e.pendingEntriesSize-Q>fe,re=rr(e,l,"supportZip64SplitFile",!0)&&J||$+s.ceil(e.pendingEntriesSize/ee)>_e;if(ie||te||ne||re){if(!1===Z||!W)throw new f(ji);Z=!0}Z=Z||!1;const ae=rr(e,l,ci),{signature:se}=l,oe=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:i,creationDate:r,level:a,zip64:o,zipCrypto:l,useUnicodeFileNames:c,dataDescriptor:d,directory:u,rawExtraField:f,encryptionStrength:w,extendedTimestamp:h,encrypted:b}=e;let{version:g,compressionMethod:m}=e;const x=!u&&(a>0||a===De&&0!==m);let y,k,S,z;if(b&&!l){y=new _(fr(Qi)+2);const e=ur(y);or(e,0,39169),dr(y,Qi,2),sr(e,8,w)}else y=new _;if(h){S=new _(9+(i?4:0)+(r?4:0));const e=ur(S);or(e,0,ke),or(e,2,fr(S)-4),z=1+(i?2:0)+(r?4:0),sr(e,4,z);let t=5;lr(e,t,s.floor(n.getTime()/1e3)),t+=4,i&&(lr(e,t,s.floor(i.getTime()/1e3)),t+=4),r&&lr(e,t,s.floor(r.getTime()/1e3));try{k=new _(36);const e=ur(k),t=ir(n);or(e,0,10),or(e,2,32),or(e,8,1),or(e,10,24),cr(e,12,t),cr(e,20,ir(i)||t),cr(e,28,ir(r)||t)}catch(e){k=new _}}else k=S=new _;let v=0;c&&(v|=Se),d&&(v|=8),m===De&&(m=x?8:0),8==m&&(a>=1&&3>a&&(v|=6),a>=3&&5>a&&(v|=1),9===a&&(v|=2)),o&&(g=g>45?g:45),b&&(v|=1,l||(g=g>51?g:51,y[9]=m,m=99));const E=new _(26),D=ur(E);or(D,0,g),or(D,2,v),or(D,4,m);const F=new p(1),R=ur(F);let T;T=Ee>n?Ee:n>ve?ve:n,or(R,0,(T.getHours()<<6|T.getMinutes())<<5|T.getSeconds()/2),or(R,2,(T.getFullYear()-1980<<4|T.getMonth()+1)<<5|T.getDate());const A=F[0];lr(D,6,A),or(D,22,fr(t));const C=fr(y,S,k,f);or(D,24,C);const N=new _(30+fr(t)+C);return lr(ur(N),0,we),dr(N,E,4),dr(N,t,30),dr(N,y,30+fr(t)),dr(N,S,30+fr(t,y)),dr(N,k,30+fr(t,y,S)),dr(N,f,30+fr(t,y,S,k)),{localHeaderArray:N,headerArray:E,headerView:D,lastModDate:n,rawLastModDate:A,encrypted:b,compressed:x,version:g,compressionMethod:m,extraFieldExtendedTimestampFlag:z,rawExtraFieldExtendedTimestamp:S,rawExtraFieldNTFS:k,rawExtraFieldAES:y,extraFieldLength:C}})(l=n.assign({},l,{rawFilename:u,rawComment:m,version:x,versionMadeBy:y,lastModDate:k,lastAccessDate:S,creationDate:v,rawExtraField:K,zip64:Z,zip64UncompressedSize:te,zip64CompressedSize:ne,zip64Offset:ie,zip64DiskNumberStart:re,password:T,rawPassword:A,level:B||e.config.CompressionStream!==De||e.config.CompressionStreamNative!==De?I:0,useWebWorkers:L,encryptionStrength:C,extendedTimestamp:U,zipCrypto:N,bufferedWrite:O,keepOrder:W,useUnicodeFileNames:H,dataDescriptor:V,dataDescriptorSignature:M,signal:P,msDosCompatible:E,internalFileAttribute:D,internalFileAttributes:D,externalFileAttribute:F,externalFileAttributes:F,useCompressionStream:B,passThrough:R,encrypted:!!(T&&fr(T)||A&&fr(A))||R&&ae,signature:se,compressionMethod:q})),le=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:i}=e;let r,a=new _,s=0;return n&&(a=new _(t?i?24:20:i?16:12),r=ur(a),i&&(s=4,lr(r,0,he))),{dataDescriptorArray:a,dataDescriptorView:r,dataDescriptorOffset:s}})(l),ce=fr(oe.localHeaderArray,le.dataDescriptorArray);let de;X=ce+G,e.options.usdz&&(X+=X+64),e.pendingEntriesSize+=X;try{de=await(async(e,i,r,s,o)=>{const{files:l,writer:c}=e,{keepOrder:u,dataDescriptor:w,signal:p}=o,{headerInfo:b}=s,{usdz:m}=e.options,x=t.from(l.values()).pop();let y,k,S,v,E,D,F,R={};l.set(i,R);try{let t;u&&(t=x&&x.lock,R.lock=new g((e=>S=e))),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&u)&&w||m?(D=c,await T()):(D=new z,F=new d(D.readable).blob(),D.writable.size=0,y=!0,e.bufferedWrites++,await Ln(c)),await Ln(D);const{writable:b}=c;let{diskOffset:k}=c;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new _(4);lr(ur(t),0,pe),await nr(b,t),e.offset+=4}m&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:i,extraFieldLength:r}=n,a=ur(i),s=64-(t+fr(i))%64;4>s&&(s+=64);const o=new _(s),l=ur(o);or(l,0,6534),or(l,2,s-2);const c=i;n.localHeaderArray=i=new _(fr(c)+s),dr(i,c),dr(i,o,fr(c)),a=ur(i),or(a,28,r+s),e.metadataSize+=s})(s,e.offset-k),y||(await t,await A(b));const{diskNumber:C}=c;if(E=!0,R.diskNumberStart=C,R=await(async(e,t,{diskNumberStart:i,lock:r},s,o,l)=>{const{headerInfo:c,dataDescriptorInfo:d,metadataSize:u}=s,{localHeaderArray:f,headerArray:w,lastModDate:p,rawLastModDate:h,encrypted:b,compressed:g,version:m,compressionMethod:x,rawExtraFieldExtendedTimestamp:y,extraFieldExtendedTimestampFlag:k,rawExtraFieldNTFS:S,rawExtraFieldAES:z}=c,{dataDescriptorArray:v}=d,{rawFilename:E,lastAccessDate:D,creationDate:F,password:R,rawPassword:T,level:A,zip64:C,zip64UncompressedSize:N,zip64CompressedSize:U,zip64Offset:W,zip64DiskNumberStart:I,zipCrypto:L,dataDescriptor:O,directory:M,versionMadeBy:P,rawComment:H,rawExtraField:B,useWebWorkers:q,onstart:V,onprogress:Z,onend:K,signal:Y,encryptionStrength:G,extendedTimestamp:X,msDosCompatible:j,internalFileAttributes:J,externalFileAttributes:Q,useCompressionStream:$,passThrough:ee}=l,te={lock:r,versionMadeBy:P,zip64:C,directory:!!M,filenameUTF8:!0,rawFilename:E,commentUTF8:!0,rawComment:H,rawExtraFieldExtendedTimestamp:y,rawExtraFieldNTFS:S,rawExtraFieldAES:z,rawExtraField:B,extendedTimestamp:X,msDosCompatible:j,internalFileAttributes:J,externalFileAttributes:Q,diskNumberStart:i};let{signature:ne,uncompressedSize:ie}=l,re=0;ee||(ie=0);const{writable:ae}=t;if(e){e.chunkSize=We(o),await nr(ae,f);const t=e.readable,n=t.size=e.size,i={options:{codecType:qt,level:A,rawPassword:T,password:R,encryptionStrength:G,zipCrypto:b&&L,passwordVerification:b&&L&&h>>8&255,signed:!ee,compressed:g&&!ee,encrypted:b&&!ee,useWebWorkers:q,useCompressionStream:$,transferStreams:!1},config:o,streamOptions:{signal:Y,size:n,onstart:V,onprogress:Z,onend:K}},r=await sn({readable:t,writable:ae},i);re=r.outputSize,ee||(ie=r.inputSize,ne=r.signature),ae.size+=ie}else await nr(ae,f);let se;if(C){let e=4;N&&(e+=8),U&&(e+=8),W&&(e+=8),I&&(e+=4),se=new _(e)}else se=new _;return((e,t)=>{const{signature:n,rawExtraFieldZip64:i,compressedSize:r,uncompressedSize:s,headerInfo:o,dataDescriptorInfo:l}=e,{headerView:c,encrypted:d}=o,{dataDescriptorView:u,dataDescriptorOffset:f}=l,{zip64:_,zip64UncompressedSize:w,zip64CompressedSize:p,zipCrypto:h,dataDescriptor:b}=t;if(d&&!h||n===De||(lr(c,10,n),b&&lr(u,f,n)),_){const e=ur(i);or(e,0,1),or(e,2,fr(i)-4);let t=4;w&&(lr(c,18,fe),cr(e,t,a(s)),t+=8),p&&(lr(c,14,fe),cr(e,t,a(r))),b&&(cr(u,f+4,a(r)),cr(u,f+12,a(s)))}else lr(c,14,r),lr(c,18,s),b&&(lr(u,f+4,r),lr(u,f+8,s))})({signature:ne,rawExtraFieldZip64:se,compressedSize:re,uncompressedSize:ie,headerInfo:c,dataDescriptorInfo:d},l),O&&await nr(ae,v),n.assign(te,{uncompressedSize:ie,compressedSize:re,lastModDate:p,rawLastModDate:h,creationDate:F,lastAccessDate:D,encrypted:b,zipCrypto:L,size:u+re,compressionMethod:x,version:m,headerArray:w,signature:ne,rawExtraFieldZip64:se,extraFieldExtendedTimestampFlag:k,zip64UncompressedSize:N,zip64CompressedSize:U,zip64Offset:W,zip64DiskNumberStart:I}),te})(r,D,R,s,e.config,o),E=!1,l.set(i,R),R.filename=i,y){await D.writable.getWriter().close();let e=await F;await t,await T(),v=!0,w||(e=await(async(e,t,n,{zipCrypto:i})=>{let r;r=await t.slice(0,26).arrayBuffer(),26!=r.byteLength&&(r=r.slice(0,26));const a=new h(r);return e.encrypted&&!i||lr(a,14,e.signature),e.zip64?(lr(a,18,fe),lr(a,22,fe)):(lr(a,18,e.compressedSize),lr(a,22,e.uncompressedSize)),await nr(n,new _(r)),t.slice(r.byteLength)})(R,e,b,o)),await A(b),R.diskNumberStart=c.diskNumber,k=c.diskOffset,await e.stream().pipeTo(b,{preventClose:!0,preventAbort:!0,signal:p}),b.size+=e.size,v=!1}if(R.offset=e.offset-k,R.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:i,diskNumberStart:r}=e,{zip64UncompressedSize:s,zip64CompressedSize:o,zip64Offset:l,zip64DiskNumberStart:c}=t,d=ur(n);let u=4;s&&(u+=8),o&&(u+=8),l&&(cr(d,u,a(i)),u+=8),c&&lr(d,u,r)})(R,o);else if(R.offset>fe)throw new f(ji);return e.offset+=R.size,R}catch(t){if(y&&v||!y&&E){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}y?e.offset+=D.writable.size:e.offset=D.writable.size}throw l.delete(i),t}finally{y&&e.bufferedWrites--,S&&S(),k&&k()}async function T(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new g((t=>k=()=>{e.writerLocked=!1,t()})),await t}async function A(e){fr(b.localHeaderArray)>c.availableSize&&(c.availableSize=0,await nr(e,new _))}})(e,i,r,{headerInfo:oe,dataDescriptorInfo:le,metadataSize:ce},l)}finally{e.pendingEntriesSize-=X}return n.assign(de,{name:i,comment:b,extraField:Y}),new wi(de)})(l,e,i,r),c.add(b),await b}catch(t){throw l.filenames.delete(e),t}finally{c.delete(b);const e=er.shift();e?e():$i--}}async close(e=new _,n={}){const{pendingAddFileCalls:i,writer:r}=this,{writable:o}=r;for(;i.size;)await g.allSettled(t.from(i));return await(async(e,n,i)=>{const{files:r,writer:o}=e,{diskOffset:l,writable:c}=o;let{diskNumber:d}=o,u=0,w=0,p=e.offset-l,h=r.size;for(const[,e]of r){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:i,rawComment:r,rawExtraFieldNTFS:a,rawExtraField:o,extendedTimestamp:l,extraFieldExtendedTimestampFlag:c,lastModDate:d}=e;let u;if(l){u=new _(9);const e=ur(u);or(e,0,ke),or(e,2,5),sr(e,4,c),lr(e,5,s.floor(d.getTime()/1e3))}else u=new _;e.rawExtraFieldCDExtendedTimestamp=u,w+=46+fr(t,r,n,i,a,u,o)}const b=new _(w),g=ur(b);await Ln(o);let m=0;for(const[e,n]of t.from(r.values()).entries()){const{offset:t,rawFilename:a,rawExtraFieldZip64:s,rawExtraFieldAES:l,rawExtraFieldCDExtendedTimestamp:d,rawExtraFieldNTFS:f,rawExtraField:_,rawComment:w,versionMadeBy:p,headerArray:h,directory:x,zip64:y,zip64UncompressedSize:k,zip64CompressedSize:S,zip64DiskNumberStart:z,zip64Offset:v,msDosCompatible:E,internalFileAttributes:D,externalFileAttributes:F,diskNumberStart:R,uncompressedSize:T,compressedSize:A}=n,C=fr(s,l,d,f,_);lr(g,u,be),or(g,u+4,p);const N=ur(h);k||lr(N,18,T),S||lr(N,14,A),dr(b,h,u+6),or(g,u+30,C),or(g,u+32,fr(w)),or(g,u+34,y&&z?_e:R),or(g,u+36,D),F?lr(g,u+38,F):x&&E&&sr(g,u+38,16),lr(g,u+42,y&&v?fe:t),dr(b,a,u+46),dr(b,s,u+46+fr(a)),dr(b,l,u+46+fr(a,s)),dr(b,d,u+46+fr(a,s,l)),dr(b,f,u+46+fr(a,s,l,d)),dr(b,_,u+46+fr(a,s,l,d,f)),dr(b,w,u+46+fr(a)+C);const U=46+fr(a,w)+C;if(u-m>o.availableSize&&(o.availableSize=0,await nr(c,b.slice(m,u)),m=u),u+=U,i.onprogress)try{await i.onprogress(e+1,r.size,new wi(n))}catch(e){}}await nr(c,m?b.slice(m):b);let x=o.diskNumber;const{availableSize:y}=o;ye>y&&x++;let k=rr(e,i,li);if(p>fe||w>fe||h>_e||x>_e){if(!1===k)throw new f(ji);k=!0}const S=new _(k?98:ye),z=ur(S);u=0,k&&(lr(z,0,me),cr(z,4,a(44)),or(z,12,45),or(z,14,45),lr(z,16,x),lr(z,20,d),cr(z,24,a(h)),cr(z,32,a(h)),cr(z,40,a(w)),cr(z,48,a(p)),lr(z,56,xe),cr(z,64,a(p)+a(w)),lr(z,72,x+1),rr(e,i,"supportZip64SplitFile",!0)&&(x=_e,d=_e),h=_e,p=fe,w=fe,u+=76),lr(z,u,ge),or(z,u+4,x),or(z,u+6,d),or(z,u+8,h),or(z,u+10,h),lr(z,u+12,w),lr(z,u+16,p);const v=fr(n);if(v){if(v>_e)throw new f(qi);or(z,u+20,v)}await nr(c,S),v&&await nr(c,n)})(this,e,n),rr(this,n,"preventClose")||await o.getWriter().close(),r.getData?r.getData():o}}async function nr(e,t){const n=e.getWriter();try{await n.ready,e.size+=fr(t),await n.write(t)}finally{n.releaseLock()}}function ir(e){if(e)return(a(e.getTime())+a(116444736e5))*a(1e4)}function rr(e,t,n,i){const r=t[n]===De?e.options[n]:t[n];return r===De?i:r}function ar(e){return e+5*(s.floor(e/16383)+1)}function sr(e,t,n){e.setUint8(t,n)}function or(e,t,n){e.setUint16(t,n,!0)}function lr(e,t,n){e.setUint32(t,n,!0)}function cr(e,t,n){e.setBigUint64(t,n,!0)}function dr(e,t,n){e.set(t,n)}function ur(e){return new h(e.buffer)}function fr(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}Ie({Deflate:function(e){const t=new Y,n=(i=e&&e.chunkSize?e.chunkSize:65536)+5*(s.floor(i/16383)+1);var i;const r=new _(n);let a=e?e.level:-1;void 0===a&&(a=-1),t.deflateInit(a),t.next_out=r,this.append=(e,i)=>{let a,s,o=0,l=0,c=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,a=t.deflate(0),0!=a)throw new f("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?d.push(new _(r)):d.push(r.subarray(0,t.next_out_index))),c+=t.next_out_index,i&&t.next_in_index>0&&t.next_in_index!=o&&(i(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(s=new _(c),d.forEach((e=>{s.set(e,l),l+=e.length}))):s=d[0]?new _(d[0]):new _,s}},this.flush=()=>{let e,i,a=0,s=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw new f("deflating: "+t.msg);n-t.avail_out>0&&o.push(r.slice(0,t.next_out_index)),s+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),i=new _(s),o.forEach((e=>{i.set(e,a),a+=e.length})),i}},Inflate:function(e){const t=new ue,n=e&&e.chunkSize?s.floor(2*e.chunkSize):131072,i=new _(n);let r=!1;t.inflateInit(),t.next_out=i,this.append=(e,a)=>{const s=[];let o,l,c=0,d=0,u=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||r||(t.next_in_index=0,r=!0),o=t.inflate(0),r&&o===j){if(0!==t.avail_in)throw new f("inflating: bad input")}else if(0!==o&&1!==o)throw new f("inflating: "+t.msg);if((r||1===o)&&t.avail_in===e.length)throw new f("inflating: bad input");t.next_out_index&&(t.next_out_index===n?s.push(new _(i)):s.push(i.subarray(0,t.next_out_index))),u+=t.next_out_index,a&&t.next_in_index>0&&t.next_in_index!=c&&(a(t.next_in_index),c=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return s.length>1?(l=new _(u),s.forEach((e=>{l.set(e,d),d+=e.length}))):l=s[0]?new _(s[0]):new _,l}},this.flush=()=>{t.inflateEnd()}}}),e.BlobReader=mn,e.BlobWriter=xn,e.Data64URIReader=class extends bn{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const i=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:i,size:s.floor(.75*(t-i))})}readUint8Array(e,t){const{dataStart:n,dataURI:i}=this,r=new _(t),a=4*s.floor(e/3),o=atob(i.substring(a+n,4*s.ceil((e+t)/3)+n)),l=e-3*s.floor(a/4);for(let e=l;l+t>e;e++)r[e-l]=o.charCodeAt(e);return r}},e.Data64URIWriter=class extends gn{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,r=t.pending;const a=t.pending.length;for(t.pending="",n=0;n<3*s.floor((a+e.length)/3)-a;n++)r+=i.fromCharCode(e[n]);for(;n2?t.data+=S(r):t.pending=r}getData(){return this.data+S(this.pending)}},e.ERR_BAD_FORMAT=pi,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=gi,e.ERR_DUPLICATED_NAME=Bi,e.ERR_ENCRYPTED=yi,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=bi,e.ERR_EOCDR_NOT_FOUND=hi,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=xi,e.ERR_HTTP_RANGE=cn,e.ERR_INVALID_COMMENT=qi,e.ERR_INVALID_ENCRYPTION_STRENGTH=Yi,e.ERR_INVALID_ENTRY_COMMENT=Vi,e.ERR_INVALID_ENTRY_NAME=Zi,e.ERR_INVALID_EXTRAFIELD_DATA=Xi,e.ERR_INVALID_EXTRAFIELD_TYPE=Gi,e.ERR_INVALID_PASSWORD=Ge,e.ERR_INVALID_SIGNATURE=Xe,e.ERR_INVALID_VERSION=Ki,e.ERR_ITERATOR_COMPLETED_TOO_SOON=dn,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=mi,e.ERR_SPLIT_ZIP_FILE=zi,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=Ji,e.ERR_UNSUPPORTED_COMPRESSION=Si,e.ERR_UNSUPPORTED_ENCRYPTION=ki,e.ERR_UNSUPPORTED_FORMAT=ji,e.HttpRangeReader=class extends Un{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=Un,e.Reader=bn,e.SplitDataReader=Wn,e.SplitDataWriter=In,e.SplitZipReader=Hn,e.SplitZipWriter=Bn,e.TextReader=class extends mn{constructor(e){super(new b([e],{type:"text/plain"}))}},e.TextWriter=class extends xn{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,i=await super.getData();if(i.text&&t)return i.text();{const t=new FileReader;return new g(((r,a)=>{n.assign(t,{onload:({target:e})=>r(e.result),onerror:()=>a(t.error)}),t.readAsText(i,e)}))}}},e.Uint8ArrayReader=class extends bn{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends gn{init(e=0){n.assign(this,{offset:0,array:new _(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new _(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=gn,e.ZipReader=Ri,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:n}=new z,i=new Ri(t,e).getEntriesGenerator();this.readable=new v({async pull(e){const{done:t,value:n}=await i.next();if(t)return e.close();const r={...n,readable:(()=>{const{readable:e,writable:t}=new z;if(n.getData)return n.getData(t),e})()};delete r.getData,e.enqueue(r)}}),this.writable=n}},e.ZipWriter=tr,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new z;this.readable=t,this.zipWriter=new tr(n,e)}transform(e){const{readable:t,writable:n}=new z({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new z;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=Ie,e.getMimeType=()=>"application/octet-stream",e.initReader=On,e.initStream=Ln,e.initWriter=Mn,e.readUint8Array=Pn,e.terminateWorkers=async()=>{await g.allSettled(nn.map((e=>(on(e),e.terminate()))))}})); diff --git a/dist/zip.js b/dist/zip.js index dcb71814..7d332937 100644 --- a/dist/zip.js +++ b/dist/zip.js @@ -67,6 +67,8 @@ const BITFLAG_DATA_DESCRIPTOR = 0x0008; const BITFLAG_LANG_ENCODING_FLAG = 0x0800; const FILE_ATTR_MSDOS_DIR_MASK = 0x10; + const FILE_ATTR_UNIX_DIR_MASK = 0x4000; + const FILE_ATTR_UNIX_EXECUTABLE_MASK = 0o111; const VERSION_DEFLATE = 0x14; const VERSION_ZIP64 = 0x2D; @@ -167,7 +169,8 @@ if (typeof navigator != UNDEFINED_TYPE && navigator.hardwareConcurrency) { maxWorkers = navigator.hardwareConcurrency; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } const DEFAULT_CONFIGURATION = { @@ -1605,7 +1608,8 @@ if (IMPORT_KEY_SUPPORTED) { try { return await subtle.importKey(format, password, algorithm, extractable, keyUsages); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { IMPORT_KEY_SUPPORTED = false; return misc.importKey(password); } @@ -1618,7 +1622,8 @@ if (DERIVE_BITS_SUPPORTED) { try { return await subtle.deriveBits(algorithm, baseKey, length); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { DERIVE_BITS_SUPPORTED = false; return misc.pbkdf2(baseKey, algorithm.salt, DERIVED_BITS_ALGORITHM.iterations, length); } @@ -1936,11 +1941,13 @@ try { const CompressionStream = useCompressionStream && CodecStreamNative ? CodecStreamNative : CodecStream; readable = pipeThrough(readable, new CompressionStream(COMPRESSION_FORMAT, options)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { if (useCompressionStream) { try { readable = pipeThrough(readable, new CodecStream(COMPRESSION_FORMAT, options)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { return readable; } } else { @@ -2183,7 +2190,8 @@ async function callHandler(handler, ...parameters) { try { await handler(...parameters); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -2200,7 +2208,8 @@ let worker; try { worker = getWebWorker(workerData.scripts[0], baseURL, workerData); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { WEB_WORKERS_SUPPORTED = false; return createWorkerInterface(workerData, config); } @@ -2303,13 +2312,15 @@ } try { scriptUrl = new URL(url, baseURL); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { scriptUrl = url; } if (classicWorkersSupported) { try { worker = new Worker(scriptUrl); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { classicWorkersSupported = false; worker = new Worker(scriptUrl, workerOptions); } @@ -2347,7 +2358,8 @@ try { worker.postMessage(message, transferables); return true; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { transferStreamsSupported = false; message.readable = message.writable = null; worker.postMessage(message); @@ -2490,7 +2502,8 @@ pool = pool.filter(data => data != workerData); try { await workerData.terminate(); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } }, terminateWorkerTimeout); @@ -2831,7 +2844,7 @@ combineSizeEocd } = httpReader; if (isHttpFamily(url) && (useRangeHeader || forceRangeRequests) && (typeof preventHeadRequest == "undefined" || preventHeadRequest)) { - const response = await sendRequest(HTTP_METHOD_GET, httpReader, getRangeHeaders(httpReader, combineSizeEocd ? -END_OF_CENTRAL_DIR_LENGTH : undefined)); + const response = await sendRequest(HTTP_METHOD_GET, httpReader, getRangeHeaders(httpReader, combineSizeEocd ? -22 : undefined)); if (!forceRangeRequests && response.headers.get(HTTP_HEADER_ACCEPT_RANGES) != HTTP_RANGE_UNIT) { throw new Error(ERR_HTTP_RANGE); } else { @@ -3354,7 +3367,9 @@ const PROPERTY_NAME_CREATION_DATE = "creationDate"; const PROPERTY_NAME_RAW_CREATION_DATE = "rawCreationDate"; const PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE = "internalFileAttribute"; + const PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES = "internalFileAttributes"; const PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE = "externalFileAttribute"; + const PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES = "externalFileAttributes"; const PROPERTY_NAME_MS_DOS_COMPATIBLE = "msDosCompatible"; const PROPERTY_NAME_ZIP64 = "zip64"; const PROPERTY_NAME_ENCRYPTED = "encrypted"; @@ -3366,10 +3381,7 @@ PROPERTY_NAME_FILENAME, PROPERTY_NAME_RAW_FILENAME, PROPERTY_NAME_COMPPRESSED_SIZE, PROPERTY_NAME_UNCOMPPRESSED_SIZE, PROPERTY_NAME_LAST_MODIFICATION_DATE, PROPERTY_NAME_RAW_LAST_MODIFICATION_DATE, PROPERTY_NAME_COMMENT, PROPERTY_NAME_RAW_COMMENT, PROPERTY_NAME_LAST_ACCESS_DATE, PROPERTY_NAME_CREATION_DATE, PROPERTY_NAME_OFFSET, PROPERTY_NAME_DISK_NUMBER_START, - PROPERTY_NAME_DISK_NUMBER_START, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, - PROPERTY_NAME_MS_DOS_COMPATIBLE, PROPERTY_NAME_ZIP64, PROPERTY_NAME_ENCRYPTED, PROPERTY_NAME_VERSION, PROPERTY_NAME_VERSION_MADE_BY, - PROPERTY_NAME_ZIPCRYPTO, "directory", "bitFlag", "signature", "filenameUTF8", "commentUTF8", "compressionMethod", "extraField", "rawExtraField", - "extraFieldZip64", "extraFieldUnicodePath", "extraFieldUnicodeComment", "extraFieldAES", "extraFieldNTFS", "extraFieldExtendedTimestamp"]; + PROPERTY_NAME_DISK_NUMBER_START, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES, PROPERTY_NAME_MS_DOS_COMPATIBLE, PROPERTY_NAME_ZIP64, PROPERTY_NAME_ENCRYPTED, PROPERTY_NAME_VERSION, PROPERTY_NAME_VERSION_MADE_BY, PROPERTY_NAME_ZIPCRYPTO, "directory", "executable", "bitFlag", "signature", "filenameUTF8", "commentUTF8", "compressionMethod", "extraField", "rawExtraField", "extraFieldZip64", "extraFieldUnicodePath", "extraFieldUnicodeComment", "extraFieldAES", "extraFieldNTFS", "extraFieldExtendedTimestamp"]; class Entry { @@ -3560,14 +3572,20 @@ const extraFieldOffset = filenameOffset + fileEntry.filenameLength; const commentOffset = extraFieldOffset + fileEntry.extraFieldLength; const versionMadeBy = getUint16(directoryView, offset + 4); - const msDosCompatible = (versionMadeBy & 0) == 0; + const msDosCompatible = versionMadeBy >> 8 == 0; + const unixCompatible = versionMadeBy >> 8 == 3; const rawFilename = directoryArray.subarray(filenameOffset, extraFieldOffset); const commentLength = getUint16(directoryView, offset + 32); const endOffset = commentOffset + commentLength; const rawComment = directoryArray.subarray(commentOffset, endOffset); const filenameUTF8 = languageEncodingFlag; const commentUTF8 = languageEncodingFlag; - const directory = msDosCompatible && ((getUint8(directoryView, offset + 38) & FILE_ATTR_MSDOS_DIR_MASK) == FILE_ATTR_MSDOS_DIR_MASK); + const externalFileAttributes = getUint32(directoryView, offset + 38); + const directory = + (msDosCompatible && ((getUint8(directoryView, offset + 38) & FILE_ATTR_MSDOS_DIR_MASK) == FILE_ATTR_MSDOS_DIR_MASK)) || + (unixCompatible && (((externalFileAttributes >> 16) & FILE_ATTR_UNIX_DIR_MASK) == FILE_ATTR_UNIX_DIR_MASK)) || + (rawFilename.length && rawFilename[rawFilename.length - 1] == DIRECTORY_SIGNATURE.charCodeAt(0)); + const executable = (unixCompatible && (((externalFileAttributes >> 16) & FILE_ATTR_UNIX_EXECUTABLE_MASK) == FILE_ATTR_UNIX_EXECUTABLE_MASK)); const offsetFileEntry = getUint32(directoryView, offset + 42) + prependedDataLength; Object.assign(fileEntry, { versionMadeBy, @@ -3578,13 +3596,16 @@ directory, offset: offsetFileEntry, diskNumberStart: getUint16(directoryView, offset + 34), - internalFileAttribute: getUint16(directoryView, offset + 36), - externalFileAttribute: getUint32(directoryView, offset + 38), + internalFileAttributes: getUint16(directoryView, offset + 36), + externalFileAttributes, rawFilename, filenameUTF8, commentUTF8, - rawExtraField: directoryArray.subarray(extraFieldOffset, commentOffset) + rawExtraField: directoryArray.subarray(extraFieldOffset, commentOffset), + executable }); + fileEntry.internalFileAttribute = fileEntry.internalFileAttributes; + fileEntry.externalFileAttribute = fileEntry.externalFileAttributes; const decode = getOptionValue$1(zipReader, options, "decodeText") || decodeText; const rawFilenameEncoding = filenameUTF8 ? CHARSET_UTF8 : filenameEncoding || CHARSET_CP437; const rawCommentEncoding = commentUTF8 ? CHARSET_UTF8 : commentEncoding || CHARSET_CP437; @@ -3612,7 +3633,8 @@ if (onprogress) { try { await onprogress(indexFile + 1, filesLength, new Entry(fileEntry)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -3824,7 +3846,8 @@ }); offsetExtraField += 4 + size; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } const compressionMethod = getUint16(dataView, offset + 4); @@ -3931,7 +3954,8 @@ } offsetExtraField += 4 + attributeSize; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } try { @@ -3952,7 +3976,8 @@ Object.assign(extraFieldNTFS, extraFieldData); Object.assign(directory, extraFieldData); } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -4021,7 +4046,8 @@ const date = (timeRaw & 0xffff0000) >> 16, time = timeRaw & 0x0000ffff; try { return new Date(1980 + ((date & 0xFE00) >> 9), ((date & 0x01E0) >> 5) - 1, date & 0x001F, (time & 0xF800) >> 11, (time & 0x07E0) >> 5, (time & 0x001F) * 2, 0); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -4233,8 +4259,14 @@ const lastAccessDate = getOptionValue(zipWriter, options, PROPERTY_NAME_LAST_ACCESS_DATE); const creationDate = getOptionValue(zipWriter, options, PROPERTY_NAME_CREATION_DATE); const msDosCompatible = getOptionValue(zipWriter, options, PROPERTY_NAME_MS_DOS_COMPATIBLE, true); - const internalFileAttribute = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, 0); - const externalFileAttribute = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, 0); + let internalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES, 0); + if (internalFileAttributes === 0) { + internalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, 0); + } + let externalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES, 0); + if (externalFileAttributes === 0) { + externalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, 0); + } const passThrough = getOptionValue(zipWriter, options, "passThrough"); let password, rawPassword; if (!passThrough) { @@ -4350,8 +4382,10 @@ dataDescriptorSignature, signal, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttribute: internalFileAttributes, + internalFileAttributes, + externalFileAttribute: externalFileAttributes, + externalFileAttributes, useCompressionStream, passThrough, encrypted: Boolean((password && getLength(password)) || (rawPassword && getLength(rawPassword))) || (passThrough && encrypted), @@ -4472,7 +4506,8 @@ if (error) { try { error.corruptedEntry = true; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -4565,8 +4600,8 @@ encryptionStrength, extendedTimestamp, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, useCompressionStream, passThrough } = options; @@ -4585,8 +4620,8 @@ rawExtraField, extendedTimestamp, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, diskNumberStart }; let { @@ -4746,7 +4781,8 @@ setBigUint64(extraFieldNTFSView, 12, lastModTimeNTFS); setBigUint64(extraFieldNTFSView, 20, getTimeNTFS(lastAccessDate) || lastModTimeNTFS); setBigUint64(extraFieldNTFSView, 28, getTimeNTFS(creationDate) || lastModTimeNTFS); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { rawExtraFieldNTFS = new Uint8Array(); } } else { @@ -5041,8 +5077,8 @@ zip64DiskNumberStart, zip64Offset, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, diskNumberStart, uncompressedSize, compressedSize @@ -5061,9 +5097,9 @@ setUint16(directoryView, offset + 30, extraFieldLength); setUint16(directoryView, offset + 32, getLength(rawComment)); setUint16(directoryView, offset + 34, zip64 && zip64DiskNumberStart ? MAX_16_BITS : diskNumberStart); - setUint16(directoryView, offset + 36, internalFileAttribute); - if (externalFileAttribute) { - setUint32(directoryView, offset + 38, externalFileAttribute); + setUint16(directoryView, offset + 36, internalFileAttributes); + if (externalFileAttributes) { + setUint32(directoryView, offset + 38, externalFileAttributes); } else if (directory && msDosCompatible) { setUint8(directoryView, offset + 38, FILE_ATTR_MSDOS_DIR_MASK); } @@ -5085,7 +5121,8 @@ if (options.onprogress) { try { await options.onprogress(indexFileEntry + 1, files.size, new Entry(fileEntry)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -5240,7 +5277,8 @@ let baseURL; try { baseURL = (typeof document === 'undefined' && typeof location === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : typeof document === 'undefined' ? location.href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('zip.js', document.baseURI).href)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } configure({ baseURL }); diff --git a/dist/zip.min.js b/dist/zip.min.js index 8fa78016..959a1f20 100644 --- a/dist/zip.min.js +++ b/dist/zip.min.js @@ -1 +1 @@ -((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:r,Number:s,BigInt:i,Math:a,Date:o,Map:c,Set:l,Response:u,URL:f,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:h,DataView:g,Blob:m,Promise:y,TextEncoder:b,TextDecoder:S,document:k,crypto:z,btoa:v,TransformStream:x,ReadableStream:A,WritableStream:C,CompressionStream:_,DecompressionStream:D,navigator:W,Worker:R}="undefined"!=typeof globalThis?globalThis:this||self;var F=void 0!==k?k.currentScript:null;const E=4294967295,T=65535,L=67324752,U=134695760,I=U,N=33639248,q=101010256,O=101075792,P=117853008,H=22,M=21589,B=2048,V="/",Z=new o(2107,11,31),K=new o(1980,0,1),G=void 0,X="undefined",Y="function";class j{constructor(e){return class extends x{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}let J=2;try{typeof W!=X&&W.hardwareConcurrency&&(J=W.hardwareConcurrency)}catch(e){}const Q={chunkSize:524288,maxWorkers:J,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:G,CompressionStreamNative:typeof _!=X&&_,DecompressionStreamNative:typeof D!=X&&D},$=n.assign({},Q);function ee(){return $}function te(e){return a.max(e.chunkSize,64)}function ne(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:u,DecompressionStream:f,workerScripts:w}=e;if(re("baseURL",n),re("chunkSize",r),re("maxWorkers",s),re("terminateWorkerTimeout",i),re("useCompressionStream",a),re("useWebWorkers",o),c&&($.CompressionStream=new j(c)),l&&($.DecompressionStream=new j(l)),re("CompressionStream",u),re("DecompressionStream",f),w!==G){const{deflate:e,inflate:n}=w;if((e||n)&&($.workerScripts||($.workerScripts={})),e){if(!t.isArray(e))throw new d("workerScripts.deflate must be an array");$.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new d("workerScripts.inflate must be an array");$.workerScripts.inflate=n}}}function re(e,t){t!==G&&($[e]=t)}function se(e,t,r){return class{constructor(s){const i=this;var a,o;a=s,o="level",(typeof n.hasOwn===Y?n.hasOwn(a,o):a.hasOwnProperty(o))&&s.level===G&&delete s.level,i.codec=new e(n.assign({},t,s)),r(i.codec,(e=>{if(i.pendingData){const t=i.pendingData;i.pendingData=new w(t.length+e.length);const{pendingData:n}=i;n.set(t,0),n.set(e,t.length)}else i.pendingData=new w(e)}))}append(e){return this.codec.push(e),s(this)}flush(){return this.codec.push(new w,!0),s(this)}};function s(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new w}}const ie=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;ie[e]=t}class ae{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^ie[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class oe extends x{constructor(){let e;const t=new ae;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new g(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function ce(e){if(typeof b==X){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=le.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>a.round(e/1099511627776)||32,_shiftRight(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=le.getPartial(s);return r.push(le.partial(t+i&31,t+i>32?n:r.pop(),1)),r}},ue={bytes:{fromBits(e){const t=le.bitLength(e)/8,n=new w(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const i=new h(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);s>=e;e+=t.blockSize)t._block(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=le.concat(t,[le.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}_S(e,t){return t<>>32-e}_block(e){const n=this,r=n._h,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let i=r[0],o=r[1],c=r[2],l=r[3],u=r[4];for(let e=0;79>=e;e++){16>e||(s[e]=n._S(1,s[e-3]^s[e-8]^s[e-14]^s[e-16]));const t=n._S(5,i)+n._f(e,o,c,l)+u+s[e]+n._key[a.floor(e/20)]|0;u=l,l=c,c=n._S(30,o),o=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},de={getRandomValues(e){const t=new h(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(a.random()>.5?1:-1))};for(let r,s=0;snew we.hmacSha1(ue.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new d("invalid params to pbkdf2");const s=1+(r>>5)<<2;let i,a,o,c,l;const u=new ArrayBuffer(s),f=new g(u);let w=0;const p=le;for(t=ue.bytes.toBits(t),l=1;(s||1)>w;l++){for(i=a=e.encrypt(p.concat(t,[l])),o=1;n>o;o++)for(a=e.encrypt(a),c=0;cw&&os&&(e=(new n).update(e).finalize());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},pe=typeof z!=X&&typeof z.getRandomValues==Y,he="Invalid password",ge="Invalid signature",me="zipjs-abort-check-password";function ye(e){return pe?z.getRandomValues(e):de.getRandomValues(e)}const be=16,Se={name:"PBKDF2"},ke=n.assign({hash:{name:"HMAC"}},Se),ze=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Se),ve=["deriveBits"],xe=[8,12,16],Ae=[16,24,32],Ce=10,_e=[0,0,0,0],De=typeof z!=X,We=De&&z.subtle,Re=De&&typeof We!=X,Fe=ue.bytes,Ee=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],s=e.length;let i,a,o,c=1;if(4!==s&&6!==s&&8!==s)throw new d("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],i=s;4*s+28>i;i++){let e=a[i-1];(i%s==0||8===s&&i%s==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%s==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[i]=a[i-s]^e}for(let e=0;i;e++,i--){const t=a[3&e?i:i-4];o[e]=4>=i||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],s=[],i=[];let a,o,c,l;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=o||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=s[c=s[o=s[u]]];let f=16843009*l^65537*c^257*o^16843008*u,d=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][u]=d=d<<24^d>>>8,t[n][i]=f=f<<24^f>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new d("invalid aes block size");const n=this._key[t],r=n.length/4-2,s=[0,0,0,0],i=this._tables[t],a=i[0],o=i[1],c=i[2],l=i[3],u=i[4];let f,w,p,h=e[0]^n[0],g=e[t?3:1]^n[1],m=e[2]^n[2],y=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)f=a[h>>>24]^o[g>>16&255]^c[m>>8&255]^l[255&y]^n[b],w=a[g>>>24]^o[m>>16&255]^c[y>>8&255]^l[255&h]^n[b+1],p=a[m>>>24]^o[y>>16&255]^c[h>>8&255]^l[255&g]^n[b+2],y=a[y>>>24]^o[h>>16&255]^c[g>>8&255]^l[255&m]^n[b+3],b+=4,h=f,g=w,m=p;for(let e=0;4>e;e++)s[t?3&-e:e]=u[h>>>24]<<24^u[g>>16&255]<<16^u[m>>8&255]<<8^u[255&y]^n[b++],f=h,h=g,g=m,m=y,y=f;return s}},Te=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];const s=le.bitLength(t);for(let s=0;r>s;s+=4){this.incCounter(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return le.clamp(t,s)}},Le=we.hmacSha1;let Ue=De&&Re&&typeof We.importKey==Y,Ie=De&&Re&&typeof We.deriveBits==Y;class Ne extends x{constructor({password:e,rawPassword:t,signed:r,encryptionStrength:s,checkPasswordOnly:i}){super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:He(e,t),signed:r,strength:s-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const s=await Pe(e,t,n,Be(r,0,xe[t])),i=Be(r,xe[t]);if(s[0]!=i[0]||s[1]!=i[1])throw new d(he)})(n,s,r,Be(e,0,xe[s]+2)),e=Be(e,xe[s]+2),i?t.error(new d(me)):a()):await o;const c=new w(e.length-Ce-(e.length-Ce)%be);t.enqueue(Oe(n,e,c,0,Ce,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:i}=this;if(r&&n){await i;const a=Be(s,0,s.length-Ce),o=Be(s,s.length-Ce);let c=new w;if(a.length){const e=Ze(Fe,a);r.update(e);const t=n.update(e);c=Ve(Fe,t)}if(t){const e=Be(Ve(Fe,r.digest()),0,Ce);for(let t=0;Ce>t;t++)if(e[t]!=o[t])throw new d(ge)}e.enqueue(c)}}})}}class qe extends x{constructor({password:e,rawPassword:t,encryptionStrength:r}){let s;super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:He(e,t),strength:r-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:i,ready:a}=n;let o=new w;r?(o=await(async(e,t,n)=>{const r=ye(new w(xe[t]));return Me(r,await Pe(e,t,n,r))})(n,s,r),i()):await a;const c=new w(o.length+e.length-e.length%be);c.set(o,0),t.enqueue(Oe(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:i}=this;if(n&&t){await i;let a=new w;if(r.length){const e=t.update(Ze(Fe,r));n.update(e),a=Ve(Fe,e)}s.signature=Ve(Fe,n.digest()).slice(0,Ce),e.enqueue(Me(a,s.signature))}}}),s=this}}function Oe(e,t,n,r,s,i){const{ctr:a,hmac:o,pending:c}=e,l=t.length-s;let u;for(c.length&&(t=Me(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e})(n,l-l%be)),u=0;l-be>=u;u+=be){const e=Ze(Fe,Be(t,u,u+be));i&&o.update(e);const s=a.update(e);i||o.update(s),n.set(Ve(Fe,s),u+r)}return e.pending=Be(t,u),n}async function Pe(e,r,s,i){e.password=null;const a=await(async(e,t,n,r,s)=>{if(!Ue)return we.importKey(t);try{return await We.importKey("raw",t,n,!1,s)}catch(e){return Ue=!1,we.importKey(t)}})(0,s,ke,0,ve),o=await(async(e,t,n)=>{if(!Ie)return we.pbkdf2(t,e.salt,ze.iterations,n);try{return await We.deriveBits(e,t,n)}catch(r){return Ie=!1,we.pbkdf2(t,e.salt,ze.iterations,n)}})(n.assign({salt:i},ze),a,8*(2*Ae[r]+2)),c=new w(o),l=Ze(Fe,Be(c,0,Ae[r])),u=Ze(Fe,Be(c,Ae[r],2*Ae[r])),f=Be(c,2*Ae[r]);return n.assign(e,{keys:{key:l,authentication:u,passwordVerification:f},ctr:new Te(new Ee(l),t.from(_e)),hmac:new Le(u)}),f}function He(e,t){return t===G?ce(e):t}function Me(e,t){let n=e;return e.length+t.length&&(n=new w(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Be(e,t,n){return e.subarray(t,n)}function Ve(e,t){return e.fromBits(t)}function Ze(e,t){return e.toBits(t)}class Ke extends x{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),je(this,e)},transform(e,t){const n=this;if(n.password){const t=Xe(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new d(he);e=e.subarray(12)}r?t.error(new d(me)):t.enqueue(Xe(n,e))}})}}class Ge extends x{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),je(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=ye(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Ye(n,t),0),s=12}else r=new w(e.length),s=0;r.set(Ye(n,e),s),t.enqueue(r)}})}}function Xe(e,t){const n=new w(t.length);for(let r=0;r>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function Qe(e){const t=2|e.keys[2];return $e(a.imul(t,1^t)>>>8)}function $e(e){return 255&e}function et(e){return 4294967295&e}const tt="deflate-raw";class nt extends x{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:a,zipCrypto:o,signed:c,level:l}=e,u=this;let f,d,w=st(super.readable);i&&!o||!c||(f=new oe,w=ot(w,f)),s&&(w=at(w,a,{level:l,chunkSize:t},r,n)),i&&(o?w=ot(w,new Ge(e)):(d=new qe(e),w=ot(w,d))),it(u,w,(()=>{let e;i&&!o&&(e=d.signature),i&&!o||!c||(e=new g(f.value.buffer).getUint32(0)),u.signature=e}))}}class rt extends x{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:i,signed:a,signature:o,compressed:c,useCompressionStream:l}=e;let u,f,w=st(super.readable);i&&(s?w=ot(w,new Ke(e)):(f=new Ne(e),w=ot(w,f))),c&&(w=at(w,l,{chunkSize:t},r,n)),i&&!s||!a||(u=new oe,w=ot(w,u)),it(this,w,(()=>{if((!i||s)&&a){const e=new g(u.value.buffer);if(o!=e.getUint32(0,!1))throw new d(ge)}}))}}function st(e){return ot(e,new x({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function it(e,t,r){t=ot(t,new x({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function at(e,t,n,r,s){try{e=ot(e,new(t&&r?r:s)(tt,n))}catch(r){if(!t)return e;try{e=ot(e,new s(tt,n))}catch(t){return e}}return e}function ot(e,t){return e.pipeThrough(t)}const ct="data",lt="close",ut="deflate",ft="inflate";class dt extends x{constructor(e,t){super({});const r=this,{codecType:s}=e;let i;s.startsWith(ut)?i=nt:s.startsWith(ft)&&(i=rt);let a=0,o=0;const c=new i(e,t),l=super.readable,u=new x({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:o})}}),f=new x({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;n.assign(r,{signature:e,outputSize:a,inputSize:o})}});n.defineProperty(r,"readable",{get:()=>l.pipeThrough(u).pipeThrough(c).pipeThrough(f)})}}class wt extends x{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new w(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}let pt=typeof R!=X;class ht{constructor(e,{readable:t,writable:r},{options:s,config:i,streamOptions:a,useWebWorkers:o,transferStreams:c,scripts:l},u){const{signal:f}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new wt(i.chunkSize)).pipeThrough(new gt(t,a),{signal:f}),writable:r,options:n.assign({},s),scripts:l,transferStreams:c,terminate:()=>new y((t=>{const{worker:n,busy:r}=e;n?(r?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,u(e)}}),(o&&pt?bt:yt)(e,i)}}class gt extends x{constructor(e,{onstart:t,onprogress:n,size:r,onend:s}){let i=0;super({async start(){t&&await mt(t,r)},async transform(e,t){i+=e.length,n&&await mt(n,i,r),t.enqueue(e)},async flush(){e.size=i,s&&await mt(s,i)}})}}async function mt(e,...t){try{await e(...t)}catch(e){}}function yt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{try{const r=new dt(e,s);await t.pipeThrough(r).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:i,inputSize:a,outputSize:o}=r;return{signature:i,inputSize:a,outputSize:o}}finally{r()}})(e,t)}}function bt(e,t){const{baseURL:r,chunkSize:s}=t;if(!e.interface){let i;try{i=((e,t,r)=>{const s={type:"module"};let i,a;typeof e==Y&&(e=e());try{i=new f(e,t)}catch(t){i=e}if(St)try{a=new R(i)}catch(e){St=!1,a=new R(i,s)}else a=new R(i,s);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:s,messageId:i,result:a,error:o}=e,{reader:c,writer:l,resolveResult:u,rejectResult:f,onTaskFinished:p}=t;try{if(o){const{message:e,stack:t,code:r,name:s}=o,i=new d(e);n.assign(i,{stack:t,code:r,name:s}),h(i)}else{if("pull"==r){const{value:e,done:n}=await c.read();zt({type:ct,value:e,done:n,messageId:i},t)}r==ct&&(await l.ready,await l.write(new w(s)),zt({type:"ack",messageId:i},t)),r==lt&&h(null,a)}}catch(o){zt({type:lt,messageId:i},t),h(o)}function h(e,t){e?f(e):u(t),l&&l.releaseLock(),p()}})(e,r))),a})(e.scripts[0],r,e)}catch(n){return pt=!1,yt(e,t)}n.assign(e,{worker:i,interface:{run:()=>(async(e,t)=>{let r,s;const i=new y(((e,t)=>{r=e,s=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:s,result:i});const{readable:a,options:o,scripts:c}=e,{writable:l,closed:u}=(e=>{let t;const n=new y((e=>t=e));return{writable:new C({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),f=zt({type:"start",scripts:c.slice(1),options:o,config:t,readable:a,writable:l},e);f||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const d=await i;return f||await l.getWriter().close(),await u,d})(e,{chunkSize:s})}})}return e.interface}let St=!0,kt=!0;function zt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{const{value:n,readable:r,writable:i}=e,a=[];if(n&&(n.byteLength{const n=vt.find((e=>!e.busy));if(n)return _t(n),new ht(n,e,t,h);if(vt.lengthxt.push({resolve:n,stream:e,workerOptions:t})))})()).run();function h(e){if(xt.length){const[{resolve:t,stream:n,workerOptions:r}]=xt.splice(0,1);t(new ht(e,n,r,h))}else e.worker?(_t(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;s.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{vt=vt.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),r))})(e,t)):vt=vt.filter((t=>t!=e))}}function _t(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const Dt="HTTP error ",Wt="HTTP Range not supported",Rt="Writer iterator completed too soon",Ft="Range",Et="GET",Tt="bytes",Lt=65536,Ut="writable";class It{constructor(){this.size=0}init(){this.initialized=!0}}class Nt extends It{get readable(){const e=this,{chunkSize:t=Lt}=e,n=new A({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:i,diskNumberStart:o}=n,{chunkOffset:c}=this;r.enqueue(await on(e,s+c,a.min(t,i-c),o)),c+t>i?r.close():this.chunkOffset+=t}});return n}}class qt extends It{constructor(){super();const e=this,t=new C({write:t=>e.writeUint8Array(t)});n.defineProperty(e,Ut,{get:()=>t})}writeUint8Array(){}}class Ot extends Nt{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||rt&&(i=i.slice(e,r)),new w(i)}}class Pt extends It{constructor(e){super();const t=new x,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,Ut,{get:()=>t.writable}),this.blob=new u(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Ht extends Nt{constructor(e,t){super(),Bt(this,e,t)}async init(){await Vt(this,Qt,Xt),super.init()}readUint8Array(e,t){return Zt(this,e,t,Qt,Xt)}}class Mt extends Nt{constructor(e,t){super(),Bt(this,e,t)}async init(){await Vt(this,$t,Yt),super.init()}readUint8Array(e,t){return Zt(this,e,t,$t,Yt)}}function Bt(e,t,r){const{preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:o}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:o})}async function Vt(e,t,n){const{url:r,preventHeadRequest:i,useRangeHeader:a,forceRangeRequests:o,combineSizeEocd:c}=e;if((e=>{const{baseURL:t}=ee(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n})(r)&&(a||o)&&(void 0===i||i)){const r=await t(Et,e,Kt(e,c?-22:void 0));if(!o&&r.headers.get("Accept-Ranges")!=Tt)throw new d(Wt);{let i;c&&(e.eocdCache=new w(await r.arrayBuffer()));const a=r.headers.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(i=s(t))}}i===G?await Jt(e,t,n):e.size=i}}else await Jt(e,t,n)}async function Zt(e,t,n,r,s){const{useRangeHeader:i,forceRangeRequests:a,eocdCache:o,size:c,options:l}=e;if(i||a){if(o&&t==c-H&&n==H)return o;const s=await r(Et,e,Kt(e,t,n));if(206!=s.status)throw new d(Wt);return new w(await s.arrayBuffer())}{const{data:r}=e;return r||await s(e,l),new w(e.data.subarray(t,t+n))}}function Kt(e,t=0,r=1){return n.assign({},Gt(e),{[Ft]:Tt+"="+(0>t?t:t+"-"+(t+r-1))})}function Gt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Xt(e){await jt(e,Qt)}async function Yt(e){await jt(e,$t)}async function jt(e,t){const n=await t(Et,e,Gt(e));e.data=new w(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Jt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Gt(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function Qt(e,{options:t,url:r},s){const i=await fetch(r,n.assign({},t,{method:e,headers:s}));if(400>i.status)return i;throw 416==i.status?new d(Wt):new d(Dt+(i.statusText||i.status))}function $t(e,{url:t},r){return new y(((s,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),s({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new d(Wt):new d(Dt+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>i(e.detail?e.detail.error:new d("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class en extends Nt{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Mt(e,t):new Ht(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class tn extends Nt{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await y.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:s}=this;let i,o=n;-1==o&&(o=s.length-1);let c=e;for(;c>=s[o].size;)c-=s[o].size,o++;const l=s[o],u=l.size;if(c+t>u){const s=u-c;i=new w(t),i.set(await on(l,c,s)),i.set(await r.readUint8Array(e+s,t-s,n),s)}else i=await on(l,c,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),i}}class nn extends It{constructor(e,t=4294967295){super();const r=this;let s,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new C({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function rn(e,t){if(!e.init||e.initialized)return y.resolve();await e.init(t)}function sn(e){return t.isArray(e)&&(e=new tn(e)),e instanceof A&&(e={readable:e}),e}function an(e){e.writable===G&&typeof e.next==Y&&(e=new nn(e)),e instanceof C&&(e={writable:e});const{writable:t}=e;return t.size===G&&(t.size=0),e instanceof nn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function on(e,t,n,r){return e.readUint8Array(t,n,r)}const cn=tn,ln=nn,un="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function fn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const Ln="File format is not recognized",Un="End of central directory not found",In="End of Zip64 central directory locator not found",Nn="Central directory header not found",qn="Local file header not found",On="Zip64 extra field not found",Pn="File contains encrypted entry",Hn="Encryption method not supported",Mn="Compression method not supported",Bn="Split zip file",Vn="utf-8",Zn="cp437",Kn=[[gn,E],[mn,E],[yn,E],[bn,T]],Gn={[T]:{getValue:sr,bytes:4},[E]:{getValue:ir,bytes:8}};class Xn{constructor(e,t={}){n.assign(this,{reader:sn(e),options:t,config:ee()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:s}=t;if(await rn(r),r.size!==G&&r.readUint8Array||(r=new Ot(await new u(r.readable).blob()),await rn(r)),r.size{const r=new w(4);var s;return s=t,ar(r).setUint32(0,s,!0),await i(22)||await i(a.min(1048582,n));async function i(t){const s=n-t,i=await on(e,s,t);for(let e=i.length-22;e>=0;e--)if(i[e]==r[0]&&i[e+1]==r[1]&&i[e+2]==r[2]&&i[e+3]==r[3])return{offset:s+e,buffer:i.slice(e,e+22).buffer}}})(r,q,r.size);if(!i)throw sr(ar(await on(r,0,4)))==U?new d(Bn):new d(Un);const o=ar(i);let c=sr(o,12),l=sr(o,16);const f=i.offset,p=rr(o,20),h=f+H+p;let g=rr(o,4);const m=r.lastDiskNumber||0;let y=rr(o,6),b=rr(o,8),S=0,k=0;if(l==E||c==E||b==T||y==T){const e=ar(await on(r,i.offset-20,20));if(sr(e,0)==P){l=ir(e,8);let t=await on(r,l,56,-1),n=ar(t);const s=i.offset-20-56;if(sr(n,0)!=O&&l!=s){const e=l;l=s,S=l-e,t=await on(r,l,56,-1),n=ar(t)}if(sr(n,0)!=O)throw new d(In);g==T&&(g=sr(n,16)),y==T&&(y=sr(n,20)),b==T&&(b=ir(n,32)),c==E&&(c=ir(n,40)),l-=c}}if(ll)throw new d(Ln);let z=0,v=await on(r,l,c,y),x=ar(v);if(c){const e=i.offset-c;if(sr(x,z)!=N&&l!=e){const t=l;l=e,S+=l-t,v=await on(r,l,c,y),x=ar(v)}}const A=i.offset-l-(r.lastDiskOffset||0);if(c==A||0>A||(c=A,v=await on(r,l,c,y),x=ar(v)),0>l||l>=r.size)throw new d(Ln);const C=$n(t,e,"filenameEncoding"),_=$n(t,e,"commentEncoding");for(let i=0;b>i;i++){const o=new Yn(r,s,t.options);if(sr(x,z)!=N)throw new d(Nn);jn(o,x,z+6);const c=!!o.bitFlag.languageEncodingFlag,l=z+46,u=l+o.filenameLength,f=u+o.extraFieldLength,w=rr(x,z+4),p=!0,h=v.subarray(l,u),g=rr(x,z+32),m=f+g,y=v.subarray(f,m),A=c,D=c,W=p&&!(16&~nr(x,z+38)),R=sr(x,z+42)+S;n.assign(o,{versionMadeBy:w,msDosCompatible:p,compressedSize:0,uncompressedSize:0,commentLength:g,directory:W,offset:R,diskNumberStart:rr(x,z+34),internalFileAttribute:rr(x,z+36),externalFileAttribute:sr(x,z+38),rawFilename:h,filenameUTF8:A,commentUTF8:D,rawExtraField:v.subarray(u,f)});const F=$n(t,e,"decodeText")||fn,E=A?Vn:C||Zn,T=D?Vn:_||Zn;let L=F(h,E);L===G&&(L=fn(h,E));let U=F(y,T);U===G&&(U=fn(y,T)),n.assign(o,{rawComment:y,filename:L,comment:U,directory:W||L.endsWith(V)}),k=a.max(R,k),Jn(o,o,x,z+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const I=new Tn(o);I.getData=(e,t)=>o.getData(e,I,t),z=m;const{onprogress:q}=e;if(q)try{await q(i+1,b,new Tn(o))}catch(e){}yield I}const D=$n(t,e,"extractPrependedData"),W=$n(t,e,"extractAppendedData");return D&&(t.prependedData=k>0?await on(r,0,k):new w),t.comment=p?await on(r,f+H,p):new w,W&&(t.appendedData=h>>8&255:p>>>24&255),signature:p,compressed:0!=l&&!z,encrypted:s.encrypted&&!z,useWebWorkers:$n(s,r,"useWebWorkers"),useCompressionStream:$n(s,r,"useCompressionStream"),transferStreams:$n(s,r,"transferStreams"),checkPasswordOnly:R},config:u,streamOptions:{signal:W,size:_,onstart:E,onprogress:T,onend:U}};let N=0;try{({outputSize:N}=await Ct({readable:D,writable:F},I))}catch(e){if(!R||e.message!=me)throw e}finally{const e=$n(s,r,"preventClose");F.size+=N,e||F.locked||await F.getWriter().close()}return R?G:e.getData?e.getData():F}}function jn(e,t,r){const s=e.rawBitFlag=rr(t,r+2),i=!(1&~s),a=sr(t,r+6);n.assign(e,{encrypted:i,version:rr(t,r),bitFlag:{level:(6&s)>>1,dataDescriptor:!(8&~s),languageEncodingFlag:(s&B)==B},rawLastModDate:a,lastModDate:er(a),filenameLength:rr(t,r+22),extraFieldLength:rr(t,r+24)})}function Jn(e,t,r,s,i){const{rawExtraField:a}=t,l=t.extraField=new c,u=ar(new w(a));let f=0;try{for(;f{t.zip64=!0;const n=ar(e.data),r=Kn.filter((([e,n])=>t[e]==n));for(let s=0,i=0;s{const s=ar(e.data),i=nr(s,4);n.assign(e,{vendorVersion:nr(s,0),vendorId:nr(s,2),strength:i,originalCompressionMethod:r,compressionMethod:rr(s,5)}),t.compressionMethod=e.compressionMethod})(y,t,p),t.extraFieldAES=y):t.compressionMethod=p;const b=l.get(10);b&&(((e,t)=>{const r=ar(e.data);let s,i=4;try{for(;i{const r=ar(e.data),s=nr(r,0),i=[],a=[];n?(1&~s||(i.push(Sn),a.push(kn)),2&~s||(i.push(zn),a.push("rawLastAccessDate")),4&~s||(i.push(vn),a.push("rawCreationDate"))):5>e.data.length||(i.push(Sn),a.push(kn));let c=1;i.forEach(((n,s)=>{if(e.data.length>=c+4){const i=sr(r,c);t[n]=e[n]=new o(1e3*i);const l=a[s];e[l]=i}c+=4}))})(S,t,i),t.extraFieldExtendedTimestamp=S);const k=l.get(6534);k&&(t.extraFieldUSDZ=k)}function Qn(e,t,r,s,i){const a=ar(e.data),o=new ae;o.append(i[r]);const c=ar(new w(4));c.setUint32(0,o.get(),!0);const l=sr(a,1);n.assign(e,{version:nr(a,0),[t]:fn(e.data.subarray(5)),valid:!i.bitFlag.languageEncodingFlag&&l==sr(c,0)}),e.valid&&(s[t]=e[t],s[t+"UTF8"]=!0)}function $n(e,t,n){return t[n]===G?e.options[n]:t[n]}function er(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function tr(e){return new o(s(e/i(1e4)-i(116444736e5)))}function nr(e,t){return e.getUint8(t)}function rr(e,t){return e.getUint16(t,!0)}function sr(e,t){return e.getUint32(t,!0)}function ir(e,t){return s(e.getBigUint64(t,!0))}function ar(e){return new g(e.buffer)}const or="File already exists",cr="Zip file comment exceeds 64KB",lr="File entry comment exceeds 64KB",ur="File entry name exceeds 64KB",fr="Version exceeds 65535",dr="The strength must equal 1, 2, or 3",wr="Extra field type exceeds 65535",pr="Extra field data exceeds 64KB",hr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",gr="Undefined uncompressed size",mr=new w([7,0,2,0,65,69,3,0,0]);let yr=0;const br=[];class Sr{constructor(e,t={}){const r=(e=an(e)).availableSize!==G&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==G&&e.maxSize>0&&e.maxSize!==1/0;n.assign(this,{writer:e,addSplitZipSignature:r,options:t,config:ee(),files:new c,filenames:new l,offset:t.offset===G?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new l,bufferedWrites:0})}async add(e="",r,s={}){const c=this,{pendingAddFileCalls:l,config:f}=c;let m;yrbr.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new d(or);return c.filenames.add(e),m=(async(e,r,s,c)=>{r=r.trim(),c.directory&&!r.endsWith(V)?r+=V:c.directory=r.endsWith(V);const l=vr(e,c,"encodeText",ce);let f=l(r);if(f===G&&(f=ce(r)),Fr(f)>T)throw new d(ur);const m=c.comment||"";let b=l(m);if(b===G&&(b=ce(m)),Fr(b)>T)throw new d(lr);const S=vr(e,c,Wn,20);if(S>T)throw new d(fr);const k=vr(e,c,Rn,20);if(k>T)throw new d(fr);const z=vr(e,c,Sn,new o),v=vr(e,c,zn),A=vr(e,c,vn),C=vr(e,c,Cn,!0),_=vr(e,c,xn,0),D=vr(e,c,An,0),W=vr(e,c,"passThrough");let R,F;W||(R=vr(e,c,"password"),F=vr(e,c,"rawPassword"));const N=vr(e,c,"encryptionStrength",3),q=vr(e,c,Fn),O=vr(e,c,"extendedTimestamp",!0),P=vr(e,c,"keepOrder",!0),H=vr(e,c,"level"),X=vr(e,c,"useWebWorkers"),Y=vr(e,c,"bufferedWrite"),j=vr(e,c,"dataDescriptorSignature",!1),J=vr(e,c,"signal"),Q=vr(e,c,"useUnicodeFileNames",!0),$=vr(e,c,"useCompressionStream"),ee=vr(e,c,"compressionMethod");let ne=vr(e,c,"dataDescriptor",!0),re=vr(e,c,_n);if(!q&&(R!==G||F!==G)&&(1>N||N>3))throw new d(dr);let se=new w;const{extraField:ie}=c;if(ie){let e=0,t=0;ie.forEach((t=>e+=4+Fr(t))),se=new w(e),ie.forEach(((e,n)=>{if(n>T)throw new d(wr);if(Fr(e)>T)throw new d(pr);Wr(se,new p([n]),t),Wr(se,new p([Fr(e)]),t+2),Wr(se,e,t+4),t+=4+Fr(e)}))}let ae=0,oe=0,le=0;if(W&&(({uncompressedSize:le}=c),le===G))throw new d(gr);const ue=!0===re;s&&(s=sn(s),await rn(s),W?ae=xr(le):s.size===G?(ne=!0,(re||re===G)&&(re=!0,le=ae=4294967296)):(le=s.size,ae=xr(le)));const{diskOffset:fe,diskNumber:de,maxSize:we}=e.writer,pe=ue||le>E,he=ue||ae>E,ge=ue||e.offset+e.pendingEntriesSize-fe>E,me=vr(e,c,"supportZip64SplitFile",!0)&&ue||de+a.ceil(e.pendingEntriesSize/we)>T;if(ge||pe||he||me){if(!1===re||!P)throw new d(hr);re=!0}re=re||!1;const ye=vr(e,c,Dn),{signature:be}=c,Se=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,level:i,zip64:o,zipCrypto:c,useUnicodeFileNames:l,dataDescriptor:u,directory:f,rawExtraField:d,encryptionStrength:p,extendedTimestamp:g,encrypted:m}=e;let{version:y,compressionMethod:b}=e;const S=!f&&(i>0||i===G&&0!==b);let k,z,v,x;if(m&&!c){k=new w(Fr(mr)+2);const e=Rr(k);Cr(e,0,39169),Wr(k,mr,2),Ar(e,8,p)}else k=new w;if(g){v=new w(9+(r?4:0)+(s?4:0));const e=Rr(v);Cr(e,0,M),Cr(e,2,Fr(v)-4),x=1+(r?2:0)+(s?4:0),Ar(e,4,x);let t=5;_r(e,t,a.floor(n.getTime()/1e3)),t+=4,r&&(_r(e,t,a.floor(r.getTime()/1e3)),t+=4),s&&_r(e,t,a.floor(s.getTime()/1e3));try{z=new w(36);const e=Rr(z),t=zr(n);Cr(e,0,10),Cr(e,2,32),Cr(e,8,1),Cr(e,10,24),Dr(e,12,t),Dr(e,20,zr(r)||t),Dr(e,28,zr(s)||t)}catch(e){z=new w}}else z=v=new w;let A=0;l&&(A|=B),u&&(A|=8),b===G&&(b=S?8:0),8==b&&(i>=1&&3>i&&(A|=6),i>=3&&5>i&&(A|=1),9===i&&(A|=2)),o&&(y=y>45?y:45),m&&(A|=1,c||(y=y>51?y:51,k[9]=b,b=99));const C=new w(26),_=Rr(C);Cr(_,0,y),Cr(_,2,A),Cr(_,4,b);const D=new h(1),W=Rr(D);let R;R=K>n?K:n>Z?Z:n,Cr(W,0,(R.getHours()<<6|R.getMinutes())<<5|R.getSeconds()/2),Cr(W,2,(R.getFullYear()-1980<<4|R.getMonth()+1)<<5|R.getDate());const F=D[0];_r(_,6,F),Cr(_,22,Fr(t));const E=Fr(k,v,z,d);Cr(_,24,E);const T=new w(30+Fr(t)+E);return _r(Rr(T),0,L),Wr(T,C,4),Wr(T,t,30),Wr(T,k,30+Fr(t)),Wr(T,v,30+Fr(t,k)),Wr(T,z,30+Fr(t,k,v)),Wr(T,d,30+Fr(t,k,v,z)),{localHeaderArray:T,headerArray:C,headerView:_,lastModDate:n,rawLastModDate:F,encrypted:m,compressed:S,version:y,compressionMethod:b,extraFieldExtendedTimestampFlag:x,rawExtraFieldExtendedTimestamp:v,rawExtraFieldNTFS:z,rawExtraFieldAES:k,extraFieldLength:E}})(c=n.assign({},c,{rawFilename:f,rawComment:b,version:S,versionMadeBy:k,lastModDate:z,lastAccessDate:v,creationDate:A,rawExtraField:se,zip64:re,zip64UncompressedSize:pe,zip64CompressedSize:he,zip64Offset:ge,zip64DiskNumberStart:me,password:R,rawPassword:F,level:$||e.config.CompressionStream!==G||e.config.CompressionStreamNative!==G?H:0,useWebWorkers:X,encryptionStrength:N,extendedTimestamp:O,zipCrypto:q,bufferedWrite:Y,keepOrder:P,useUnicodeFileNames:Q,dataDescriptor:ne,dataDescriptorSignature:j,signal:J,msDosCompatible:C,internalFileAttribute:_,externalFileAttribute:D,useCompressionStream:$,passThrough:W,encrypted:!!(R&&Fr(R)||F&&Fr(F))||W&&ye,signature:be,compressionMethod:ee})),ke=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let s,i=new w,a=0;return n&&(i=new w(t?r?24:20:r?16:12),s=Rr(i),r&&(a=4,_r(s,0,I))),{dataDescriptorArray:i,dataDescriptorView:s,dataDescriptorOffset:a}})(c),ze=Fr(Se.localHeaderArray,ke.dataDescriptorArray);let ve;oe=ze+ae,e.options.usdz&&(oe+=oe+64),e.pendingEntriesSize+=oe;try{ve=await(async(e,r,s,a,o)=>{const{files:c,writer:l}=e,{keepOrder:f,dataDescriptor:p,signal:h}=o,{headerInfo:m}=a,{usdz:b}=e.options,S=t.from(c.values()).pop();let k,z,v,A,C,_,D,W={};c.set(r,W);try{let t;f&&(t=S&&S.lock,W.lock=new y((e=>v=e))),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&f)&&p||b?(_=l,await R()):(_=new x,D=new u(_.readable).blob(),_.writable.size=0,k=!0,e.bufferedWrites++,await rn(l)),await rn(_);const{writable:m}=l;let{diskOffset:z}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new w(4);_r(Rr(t),0,U),await kr(m,t),e.offset+=4}b&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:r,extraFieldLength:s}=n,i=Rr(r),a=64-(t+Fr(r))%64;4>a&&(a+=64);const o=new w(a),c=Rr(o);Cr(c,0,6534),Cr(c,2,a-2);const l=r;n.localHeaderArray=r=new w(Fr(l)+a),Wr(r,l),Wr(r,o,Fr(l)),i=Rr(r),Cr(i,28,s+a),e.metadataSize+=a})(a,e.offset-z),k||(await t,await F(m));const{diskNumber:T}=l;if(C=!0,W.diskNumberStart=T,W=await(async(e,t,{diskNumberStart:r,lock:s},a,o,c)=>{const{headerInfo:l,dataDescriptorInfo:u,metadataSize:f}=a,{localHeaderArray:d,headerArray:p,lastModDate:h,rawLastModDate:g,encrypted:m,compressed:y,version:b,compressionMethod:S,rawExtraFieldExtendedTimestamp:k,extraFieldExtendedTimestampFlag:z,rawExtraFieldNTFS:v,rawExtraFieldAES:x}=l,{dataDescriptorArray:A}=u,{rawFilename:C,lastAccessDate:_,creationDate:D,password:W,rawPassword:R,level:F,zip64:T,zip64UncompressedSize:L,zip64CompressedSize:U,zip64Offset:I,zip64DiskNumberStart:N,zipCrypto:q,dataDescriptor:O,directory:P,versionMadeBy:H,rawComment:M,rawExtraField:B,useWebWorkers:V,onstart:Z,onprogress:K,onend:X,signal:Y,encryptionStrength:j,extendedTimestamp:J,msDosCompatible:Q,internalFileAttribute:$,externalFileAttribute:ee,useCompressionStream:ne,passThrough:re}=c,se={lock:s,versionMadeBy:H,zip64:T,directory:!!P,filenameUTF8:!0,rawFilename:C,commentUTF8:!0,rawComment:M,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:v,rawExtraFieldAES:x,rawExtraField:B,extendedTimestamp:J,msDosCompatible:Q,internalFileAttribute:$,externalFileAttribute:ee,diskNumberStart:r};let{signature:ie,uncompressedSize:ae}=c,oe=0;re||(ae=0);const{writable:ce}=t;if(e){e.chunkSize=te(o),await kr(ce,d);const t=e.readable,n=t.size=e.size,r={options:{codecType:ut,level:F,rawPassword:R,password:W,encryptionStrength:j,zipCrypto:m&&q,passwordVerification:m&&q&&g>>8&255,signed:!re,compressed:y&&!re,encrypted:m&&!re,useWebWorkers:V,useCompressionStream:ne,transferStreams:!1},config:o,streamOptions:{signal:Y,size:n,onstart:Z,onprogress:K,onend:X}},s=await Ct({readable:t,writable:ce},r);oe=s.outputSize,re||(ae=s.inputSize,ie=s.signature),ce.size+=ae}else await kr(ce,d);let le;if(T){let e=4;L&&(e+=8),U&&(e+=8),I&&(e+=8),N&&(e+=4),le=new w(e)}else le=new w;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:s,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:c}=e,{headerView:l,encrypted:u}=o,{dataDescriptorView:f,dataDescriptorOffset:d}=c,{zip64:w,zip64UncompressedSize:p,zip64CompressedSize:h,zipCrypto:g,dataDescriptor:m}=t;if(u&&!g||n===G||(_r(l,10,n),m&&_r(f,d,n)),w){const e=Rr(r);Cr(e,0,1),Cr(e,2,Fr(r)-4);let t=4;p&&(_r(l,18,E),Dr(e,t,i(a)),t+=8),h&&(_r(l,14,E),Dr(e,t,i(s))),m&&(Dr(f,d+4,i(s)),Dr(f,d+12,i(a)))}else _r(l,14,s),_r(l,18,a),m&&(_r(f,d+4,s),_r(f,d+8,a))})({signature:ie,rawExtraFieldZip64:le,compressedSize:oe,uncompressedSize:ae,headerInfo:l,dataDescriptorInfo:u},c),O&&await kr(ce,A),n.assign(se,{uncompressedSize:ae,compressedSize:oe,lastModDate:h,rawLastModDate:g,creationDate:D,lastAccessDate:_,encrypted:m,zipCrypto:q,size:f+oe,compressionMethod:S,version:b,headerArray:p,signature:ie,rawExtraFieldZip64:le,extraFieldExtendedTimestampFlag:z,zip64UncompressedSize:L,zip64CompressedSize:U,zip64Offset:I,zip64DiskNumberStart:N}),se})(s,_,W,a,e.config,o),C=!1,c.set(r,W),W.filename=r,k){await _.writable.getWriter().close();let e=await D;await t,await R(),A=!0,p||(e=await(async(e,t,n,{zipCrypto:r})=>{let s;s=await t.slice(0,26).arrayBuffer(),26!=s.byteLength&&(s=s.slice(0,26));const i=new g(s);return e.encrypted&&!r||_r(i,14,e.signature),e.zip64?(_r(i,18,E),_r(i,22,E)):(_r(i,18,e.compressedSize),_r(i,22,e.uncompressedSize)),await kr(n,new w(s)),t.slice(s.byteLength)})(W,e,m,o)),await F(m),W.diskNumberStart=l.diskNumber,z=l.diskOffset,await e.stream().pipeTo(m,{preventClose:!0,preventAbort:!0,signal:h}),m.size+=e.size,A=!1}if(W.offset=e.offset-z,W.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:s}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:c,zip64DiskNumberStart:l}=t,u=Rr(n);let f=4;a&&(f+=8),o&&(f+=8),c&&(Dr(u,f,i(r)),f+=8),l&&_r(u,f,s)})(W,o);else if(W.offset>E)throw new d(hr);return e.offset+=W.size,W}catch(t){if(k&&A||!k&&C){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}k?e.offset+=_.writable.size:e.offset=_.writable.size}throw c.delete(r),t}finally{k&&e.bufferedWrites--,v&&v(),z&&z()}async function R(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new y((t=>z=()=>{e.writerLocked=!1,t()})),await t}async function F(e){Fr(m.localHeaderArray)>l.availableSize&&(l.availableSize=0,await kr(e,new w))}})(e,r,s,{headerInfo:Se,dataDescriptorInfo:ke,metadataSize:ze},c)}finally{e.pendingEntriesSize-=oe}return n.assign(ve,{name:r,comment:m,extraField:ie}),new Tn(ve)})(c,e,r,s),l.add(m),await m}catch(t){throw c.filenames.delete(e),t}finally{l.delete(m);const e=br.shift();e?e():yr--}}async close(e=new w,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await y.allSettled(t.from(r));return await(async(e,n,r)=>{const{files:s,writer:o}=e,{diskOffset:c,writable:l}=o;let{diskNumber:u}=o,f=0,p=0,h=e.offset-c,g=s.size;for(const[,e]of s){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:r,rawComment:s,rawExtraFieldNTFS:i,rawExtraField:o,extendedTimestamp:c,extraFieldExtendedTimestampFlag:l,lastModDate:u}=e;let f;if(c){f=new w(9);const e=Rr(f);Cr(e,0,M),Cr(e,2,5),Ar(e,4,l),_r(e,5,a.floor(u.getTime()/1e3))}else f=new w;e.rawExtraFieldCDExtendedTimestamp=f,p+=46+Fr(t,s,n,r,i,f,o)}const m=new w(p),y=Rr(m);await rn(o);let b=0;for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:i,rawExtraFieldZip64:a,rawExtraFieldAES:c,rawExtraFieldCDExtendedTimestamp:u,rawExtraFieldNTFS:d,rawExtraField:w,rawComment:p,versionMadeBy:h,headerArray:g,directory:S,zip64:k,zip64UncompressedSize:z,zip64CompressedSize:v,zip64DiskNumberStart:x,zip64Offset:A,msDosCompatible:C,internalFileAttribute:_,externalFileAttribute:D,diskNumberStart:W,uncompressedSize:R,compressedSize:F}=n,L=Fr(a,c,u,d,w);_r(y,f,N),Cr(y,f+4,h);const U=Rr(g);z||_r(U,18,R),v||_r(U,14,F),Wr(m,g,f+6),Cr(y,f+30,L),Cr(y,f+32,Fr(p)),Cr(y,f+34,k&&x?T:W),Cr(y,f+36,_),D?_r(y,f+38,D):S&&C&&Ar(y,f+38,16),_r(y,f+42,k&&A?E:t),Wr(m,i,f+46),Wr(m,a,f+46+Fr(i)),Wr(m,c,f+46+Fr(i,a)),Wr(m,u,f+46+Fr(i,a,c)),Wr(m,d,f+46+Fr(i,a,c,u)),Wr(m,w,f+46+Fr(i,a,c,u,d)),Wr(m,p,f+46+Fr(i)+L);const I=46+Fr(i,p)+L;if(f-b>o.availableSize&&(o.availableSize=0,await kr(l,m.slice(b,f)),b=f),f+=I,r.onprogress)try{await r.onprogress(e+1,s.size,new Tn(n))}catch(e){}}await kr(l,b?m.slice(b):m);let S=o.diskNumber;const{availableSize:k}=o;H>k&&S++;let z=vr(e,r,_n);if(h>E||p>E||g>T||S>T){if(!1===z)throw new d(hr);z=!0}const v=new w(z?98:H),x=Rr(v);f=0,z&&(_r(x,0,O),Dr(x,4,i(44)),Cr(x,12,45),Cr(x,14,45),_r(x,16,S),_r(x,20,u),Dr(x,24,i(g)),Dr(x,32,i(g)),Dr(x,40,i(p)),Dr(x,48,i(h)),_r(x,56,P),Dr(x,64,i(h)+i(p)),_r(x,72,S+1),vr(e,r,"supportZip64SplitFile",!0)&&(S=T,u=T),g=T,h=E,p=E,f+=76),_r(x,f,q),Cr(x,f+4,S),Cr(x,f+6,u),Cr(x,f+8,g),Cr(x,f+10,g),_r(x,f+12,p),_r(x,f+16,h);const A=Fr(n);if(A){if(A>T)throw new d(cr);Cr(x,f+20,A)}await kr(l,v),A&&await kr(l,n)})(this,e,n),vr(this,n,"preventClose")||await o.getWriter().close(),s.getData?s.getData():o}}async function kr(e,t){const n=e.getWriter();try{await n.ready,e.size+=Fr(t),await n.write(t)}finally{n.releaseLock()}}function zr(e){if(e)return(i(e.getTime())+i(116444736e5))*i(1e4)}function vr(e,t,n,r){const s=t[n]===G?e.options[n]:t[n];return s===G?r:s}function xr(e){return e+5*(a.floor(e/16383)+1)}function Ar(e,t,n){e.setUint8(t,n)}function Cr(e,t,n){e.setUint16(t,n,!0)}function _r(e,t,n){e.setUint32(t,n,!0)}function Dr(e,t,n){e.setBigUint64(t,n,!0)}function Wr(e,t,n){e.set(t,n)}function Rr(e){return new g(e.buffer)}function Fr(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}let Er;try{Er=void 0===k&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===k?location.href:F&&"SCRIPT"===F.tagName.toUpperCase()&&F.src||new f("zip.min.js",k.baseURI).href}catch(e){}ne({baseURL:Er}),((e,t={})=>{const n='const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self,k=void 0,v="undefined",S="function";class z{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const C=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;C[e]=t}class x{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^C[255&(t^e[n])];this.t=t}get(){return~this.t}}class A extends p{constructor(){let e;const t=new x;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const _={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=_.i(n);return 32===r?e.concat(t):_.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+_.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=_.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=_.i(s);return r.push(_.h(t+i&31,t+i>32?n:r.pop(),1)),r}},I={bytes:{p(e){const t=_.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},m(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}P(){const e=this;let t=e.C;const n=e.S;t=_.concat(t,[_.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.I(t.splice(0,16));return e.reset(),n}D(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}V(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.V(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.V(5,o)+n.D(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.V(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},D={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew V.R(I.bytes.m(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=_;for(t=I.bytes.m(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).P());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.U[0].update(r[0]),t.U[1].update(r[1]),t.K=new n(t.U[0])}reset(){const e=this;e.K=new e.M(e.U[0]),e.N=!1}update(e){this.N=!0,this.K.update(e)}digest(){const e=this,t=e.K.P(),n=new e.M(e.U[1]).update(t).P();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},R=typeof h!=v&&typeof h.getRandomValues==S,B="Invalid password",E="Invalid signature",M="zipjs-abort-check-password";function U(e){return R?h.getRandomValues(e):D.getRandomValues(e)}const K=16,N={name:"PBKDF2"},O=t.assign({hash:{name:"HMAC"}},N),T=t.assign({iterations:1e3,hash:{name:"SHA-1"}},N),W=["deriveBits"],j=[8,12,16],H=[16,24,32],L=10,F=[0,0,0,0],q=typeof h!=v,G=q&&h.subtle,J=q&&typeof G!=v,Q=I.bytes,X=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},Y=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=_.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return _.u(t,s)}},Z=V.R;let $=q&&J&&typeof G.importKey==S,ee=q&&J&&typeof G.deriveBits==S;class te extends p{constructor({password:e,rawPassword:n,signed:r,encryptionStrength:o,checkPasswordOnly:c}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),signed:r,X:o-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:o,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await se(e,t,n,ce(r,0,j[t])),o=ce(r,j[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(B)})(n,o,r,ce(e,0,j[o]+2)),e=ce(e,j[o]+2),c?t.error(new s(M)):f()):await a;const l=new i(e.length-L-(e.length-L)%K);t.enqueue(re(n,e,l,0,L,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;if(r&&n){await c;const f=ce(o,0,o.length-L),a=ce(o,o.length-L);let l=new i;if(f.length){const e=ae(Q,f);r.update(e);const t=n.update(e);l=fe(Q,t)}if(t){const e=ce(fe(Q,r.digest()),0,L);for(let t=0;L>t;t++)if(e[t]!=a[t])throw new s(E)}e.enqueue(l)}}})}}class ne extends p{constructor({password:e,rawPassword:n,encryptionStrength:r}){let s;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=U(new i(j[t]));return oe(r,await se(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%K);a.set(f,0),t.enqueue(re(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:r,ready:o}=this;if(n&&t){await o;let c=new i;if(r.length){const e=t.update(ae(Q,r));n.update(e),c=fe(Q,e)}s.signature=fe(Q,n.digest()).slice(0,L),e.enqueue(oe(c,s.signature))}}}),s=this}}function re(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=oe(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%K)),u=0;l-K>=u;u+=K){const e=ae(Q,ce(t,u,u+K));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(fe(Q,s),u+r)}return e.pending=ce(t,u),n}async function se(n,r,s,o){n.password=null;const c=await(async(e,t,n,r,s)=>{if(!$)return V.importKey(t);try{return await G.importKey("raw",t,n,!1,s)}catch(e){return $=!1,V.importKey(t)}})(0,s,O,0,W),f=await(async(e,t,n)=>{if(!ee)return V.B(t,e.salt,T.iterations,n);try{return await G.deriveBits(e,t,n)}catch(r){return ee=!1,V.B(t,e.salt,T.iterations,n)}})(t.assign({salt:o},T),c,8*(2*H[r]+2)),a=new i(f),l=ae(Q,ce(a,0,H[r])),u=ae(Q,ce(a,H[r],2*H[r])),w=ce(a,2*H[r]);return t.assign(n,{keys:{key:l,$:u,passwordVerification:w},Y:new Y(new X(l),e.from(F)),Z:new Z(u)}),w}function ie(e,t){return t===k?(e=>{if(typeof w==v){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),i=~e.te.get(),e.keys=[n,s,i]}function ye(e){const t=2|e.keys[2];return me(r.imul(t,1^t)>>>8)}function me(e){return 255&e}function be(e){return 4294967295&e}const ge="deflate-raw";class ke extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=Se(super.readable);i&&!c||!f||(w=new A,d=xe(d,w)),s&&(d=Ce(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=xe(d,new ue(e)):(h=new ne(e),d=xe(d,h))),ze(u,d,(()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ve extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=Se(super.readable);o&&(i?d=xe(d,new le(e)):(h=new te(e),d=xe(d,h))),a&&(d=Ce(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new A,d=xe(d,w)),ze(this,d,(()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(E)}}))}}function Se(e){return xe(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ze(e,n,r){n=xe(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Ce(e,t,n,r,s){try{e=xe(e,new(t&&r?r:s)(ge,n))}catch(r){if(!t)return e;try{e=xe(e,new s(ge,n))}catch(t){return e}}return e}function xe(e,t){return e.pipeThrough(t)}const Ae="data",_e="close";class Ie extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=ke:s.startsWith("inflate")&&(i=ve);let o=0,c=0;const f=new i(e,n),a=super.readable,l=new p({transform(e,t){e&&e.length&&(c+=e.length,t.enqueue(e))},flush(){t.assign(r,{inputSize:c})}}),u=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=f;t.assign(r,{signature:e,outputSize:o,inputSize:c})}});t.defineProperty(r,"readable",{get:()=>a.pipeThrough(l).pipeThrough(f).pipeThrough(u)})}}class Pe extends p{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new i(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}const De=new a,Ve=new a;let Re,Be=0,Ee=!0;async function Me(e){try{const{options:t,scripts:r,config:s}=e;if(r&&r.length)try{Ee?importScripts.apply(k,r):await Ue(r)}catch(e){Ee=!1,await Ue(r)}self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new z(self.Deflate)),self.Inflate&&(s.DecompressionStream=new z(self.Inflate));const i={highWaterMark:1},o=e.readable||new y({async pull(e){const t=new u((e=>De.set(Be,e)));Ke({type:"pull",messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ve.set(Be,t),Ke({type:Ae,value:e,messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new Ie(t,s);Re=new AbortController;const{signal:a}=Re;await o.pipeThrough(f).pipeThrough(new Pe(s.chunkSize)).pipeTo(c,{signal:a,preventClose:!0,preventAbort:!0}),await c.getWriter().close();const{signature:l,inputSize:w,outputSize:h}=f;Ke({type:_e,result:{signature:l,inputSize:w,outputSize:h}})}catch(e){Ne(e)}}async function Ue(e){for(const t of e)await import(t)}function Ke(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Ne(e=new s("Unknown error")){const{message:t,stack:n,code:r,name:i}=e;d({error:{message:t,stack:n,code:r,name:i}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&Me(e),t==Ae){const e=De.get(n);De.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ve.get(n);Ve.delete(n),e()}t==_e&&Re.abort()}catch(e){Ne(e)}}));const Oe=-2;function Te(t){return We(t.map((([t,n])=>new e(t).fill(n,0,t))))}function We(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?We(n):n)),[])}const je=[0,1,2,3].concat(...Te([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function He(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Le(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}He.ge=[0,1,2,3,4,5,6,7].concat(...Te([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),He.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],He.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],He.Se=e=>256>e?je[e]:je[256+(e>>>7)],He.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],He.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],He.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],He.Ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Fe=Te([[144,8],[112,9],[24,7],[8,8]]);Le._e=We([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Fe[t]])));const qe=Te([[30,5]]);function Ge(e,t,n,r,s){const i=this;i.Ie=e,i.Pe=t,i.De=n,i.Ve=r,i.Re=s}Le.Be=We([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,qe[t]]))),Le.Ee=new Le(Le._e,He.ze,257,286,15),Le.Me=new Le(Le.Be,He.Ce,0,30,15),Le.Ue=new Le(null,He.xe,0,19,7);const Je=[new Ge(0,0,0,0,0),new Ge(4,4,8,4,1),new Ge(4,5,16,8,1),new Ge(4,6,32,32,1),new Ge(4,4,16,16,2),new Ge(8,16,32,32,2),new Ge(8,16,128,128,2),new Ge(8,32,128,256,2),new Ge(32,128,258,1024,2),new Ge(32,258,258,4096,2)],Qe=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Xe=113,Ye=666,Ze=262;function $e(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function et(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,A,_,I,P,D,V,R,B,E,M,U;const K=new He,N=new He,O=new He;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)U[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?U[2*n]+=i:0!==n?(n!=r&&U[2*n]++,U[32]++):i>10?U[36]++:U[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ke[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,U)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,U),o--),Y(16,U),X(o-3,2)):o>10?(Y(18,U),X(o-11,7)):(Y(17,U),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(He.ge[n]+256+1)]++,M[2*He.Se(t)]++),!(8191&W)&&D>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+He.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ke.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;D>0?(K.ne(e),N.ne(e),o=(()=>{let t;for(G(E,K.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===U[2*He.Ae[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Le._e,Le.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(U[2*He.Ae[r]+1],3);Z(E,e-1),Z(M,t-1)})(K.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-A-C,0===s&&0===C&&0===A)s=f;else if(-1==s)s--;else if(C>=f+f-Ze){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+A,s),A+=e,3>A||(p=255&u[C],p=(p<A&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=_;const o=C>f-Ze?C-(f-Ze):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>_||(r>>=2),c>A&&(c=A);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>A?A:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],U=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Oe:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=Xe,c=0,K.re=E,K.ie=Le.Ee,N.re=M,N.ie=Le.Me,O.re=U,O.ie=Le.Ue,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve,C=0,k=0,A=0,v=_=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=Xe&&n!=Ye?Oe:(e.Oe=null,e.Ne=null,e.Ke=null,d=null,h=null,u=null,e.Fe=null,n==Xe?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Oe:(Je[D].Re!=Je[t].Re&&0!==e.qe&&(r=e.Ye(1)),D!=t&&(D=t,P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve),V=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Oe;if(3>i)return 0;for(i>f-Ze&&(i=f-Ze,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Oe;if(!r.$e||!r.et&&0!==r.We||n==Ye&&4!=i)return r.Le=Qe[4],Oe;if(0===r.tt)return r.Le=Qe[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(D-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=Xe,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=Qe[7],-5;if(n==Ye&&0!==t.We)return r.Le=Qe[7],-5;if(0!==t.We||0!==A||0!=i&&n!=Ye){switch(R=-1,Je[D].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=A){if(ie(),0===A&&0==e)return 0;if(0===A)break}if(C+=A,A=0,n=k+r,(0===C||C>=n)&&(A=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Ze&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<f-Ze||2!=V&&(v=oe(r)),3>v)n=ee(0,255&u[C]),A--,C++;else if(n=ee(C-x,v-3),A-=v,v>P||3>A)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<_&&f-Ze>=(C-s&65535)&&(2!=V&&(v=oe(s)),5>=v&&(1==V||3==v&&C-x>4096)&&(v=2)),3>_||v>_)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,A--,0===t.tt)return 0}else z=1,C++,A--;else{r=C+A-3,n=ee(C-1-S,_-3),A-=_-1,_-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Le._e),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function tt(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function nt(e){const t=new tt,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}tt.prototype={He(e,t){const n=this;return n.Fe=new et,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Oe},Qe(){const e=this;if(!e.Fe)return Oe;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Oe},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Oe},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ke.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const rt=-2,st=-3,it=-5,ot=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],ct=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ft=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],at=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],lt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ut=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],wt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ht(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,A,_,I,P;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return st;if(0>(I-=n[g]))return st;for(n[g]+=I,i[1]=k=0,C=1,_=2;0!=--g;)i[_]=k+=n[C],_++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>A+S;){if(b++,A+=S,P=m-A,P=P>S?S:P,(y=1<<(k=v-A))>p+1&&(y-=p+1,_=v,P>k))for(;++kn[++_];)y-=n[_];if(P=1<1440)return st;s[b]=x=h[0],h[0]+=P,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>A-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-A,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>A;P>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<c;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==st?f.Le="oversubscribed dynamic bit lengths tree":a!=it&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=st),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,at,lt,a,i,u,e,t),0!=h||0===i[0]?(h==st?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=st),h):(c(288),h=o(s,n,r,0,ut,wt,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==st?w.Le="oversubscribed distance tree":h==it?(w.Le="incomplete distance tree",h=st):-4!=h&&(w.Le="empty distance tree with lengths",h=st),h):0)}}function dt(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15,k=a[z+2]+(w&ot[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(64&u)return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st;f+=a[z+2],f+=w&ot[u],z=3*(l+f),u=a[z]}break}if(64&u)return 32&u?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st);if(f+=a[z+2],f+=w&ot[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,A=0,_=0;for(_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,m=p(u,w,r,h,s,d,e,y),_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=SA;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>>=n[g+1],A-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(16&k){a=15&k,i=n[g+2],t=2;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}if(32&k){t=7;break}return t=9,y.Le="invalid literal/length code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 2:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=n[g+1],A-=n[g+1],k=n[g],16&k){a=15&k,l=n[g+2],t=4;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 4:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(A-=8,v++,_--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ht.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=ct,r[0]=ft,0);const pt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function yt(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new dt;let h=0,d=new f(4320);const p=new ht;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ht.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[pt[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==st&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&ot[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,A=[],_=[],I=[],P=[],A[0]=9,_[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,A,_,I,P,d,e),0!=i)return i==st&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(A[0],_[0],d,I[0],d,P[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const mt=13,bt=[0,0,255,255];function gt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):rt}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),rt):(e.zt=r,n.gt.kt=new yt(n,1<{let n,r;if(!e||!e.gt||!e.et)return rt;const s=e.gt;for(t=4==t?it:0,n=it;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=mt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=mt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=mt,e.Le="incorrect header check",s.marker=5;break}if(!(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=mt,e.Le="need dictionary",s.marker=0,rt;case 7:if(n=s.kt.ut(e,n),n==st){s.mode=mt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case mt:return st;default:return rt}},e._t=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return rt;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return rt;const c=e.gt;if(c.mode!=mt&&(c.mode=mt,c.marker=0),0===(n=e.We))return it;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==bt[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?st:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Pt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():rt}function kt(){}function vt(e){const t=new kt,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t.At(0),c&&a===it){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}kt.prototype={xt(e){const t=this;return t.gt=new gt,e||(e=15),t.gt.xt(t,e)},At(e){const t=this;return t.gt?t.gt.At(t,e):rt},Ct(){const e=this;if(!e.gt)return rt;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):rt},_t(e,t){const n=this;return n.gt?n.gt._t(n,e,t):rt},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=nt,self.Inflate=vt};\n',r=()=>t.useDataURI?"data:text/javascript,"+encodeURIComponent(n):f.createObjectURL(new m([n],{type:"text/javascript"}));e({workerScripts:{inflate:[r],deflate:[r]}})})(ne),e.BlobReader=Ot,e.BlobWriter=Pt,e.Data64URIReader=class extends Nt{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,s=new w(t),i=4*a.floor(e/3),o=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);for(let e=c;c+t>e;e++)s[e-c]=o.charCodeAt(e);return s}},e.Data64URIWriter=class extends qt{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,s=t.pending;const i=t.pending.length;for(t.pending="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)s+=r.fromCharCode(e[n]);for(;n2?t.data+=v(s):t.pending=s}getData(){return this.data+v(this.pending)}},e.ERR_BAD_FORMAT=Ln,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=Nn,e.ERR_DUPLICATED_NAME=or,e.ERR_ENCRYPTED=Pn,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=In,e.ERR_EOCDR_NOT_FOUND=Un,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=On,e.ERR_HTTP_RANGE=Wt,e.ERR_INVALID_COMMENT=cr,e.ERR_INVALID_ENCRYPTION_STRENGTH=dr,e.ERR_INVALID_ENTRY_COMMENT=lr,e.ERR_INVALID_ENTRY_NAME=ur,e.ERR_INVALID_EXTRAFIELD_DATA=pr,e.ERR_INVALID_EXTRAFIELD_TYPE=wr,e.ERR_INVALID_PASSWORD=he,e.ERR_INVALID_SIGNATURE=ge,e.ERR_INVALID_VERSION=fr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Rt,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=qn,e.ERR_SPLIT_ZIP_FILE=Bn,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=gr,e.ERR_UNSUPPORTED_COMPRESSION=Mn,e.ERR_UNSUPPORTED_ENCRYPTION=Hn,e.ERR_UNSUPPORTED_FORMAT=hr,e.HttpRangeReader=class extends en{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=en,e.Reader=Nt,e.SplitDataReader=tn,e.SplitDataWriter=nn,e.SplitZipReader=cn,e.SplitZipWriter=ln,e.TextReader=class extends Ot{constructor(e){super(new m([e],{type:"text/plain"}))}},e.TextWriter=class extends Pt{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new y(((s,i)=>{n.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>i(t.error)}),t.readAsText(r,e)}))}}},e.Uint8ArrayReader=class extends Nt{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends qt{init(e=0){n.assign(this,{offset:0,array:new w(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new w(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=qt,e.ZipReader=Xn,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:n}=new x,r=new Xn(t,e).getEntriesGenerator();this.readable=new A({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const s={...n,readable:(()=>{const{readable:e,writable:t}=new x;if(n.getData)return n.getData(t),e})()};delete s.getData,e.enqueue(s)}}),this.writable=n}},e.ZipWriter=Sr,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new x;this.readable=t,this.zipWriter=new Sr(n,e)}transform(e){const{readable:t,writable:n}=new x({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new x;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=ne,e.getMimeType=()=>"application/octet-stream",e.initReader=sn,e.initShimAsyncCodec=(e,t={},n)=>({Deflate:se(e.Deflate,t.deflate,n),Inflate:se(e.Inflate,t.inflate,n)}),e.initStream=rn,e.initWriter=an,e.readUint8Array=on,e.terminateWorkers=async()=>{await y.allSettled(vt.map((e=>(_t(e),e.terminate()))))}})); +((e,t)=>{"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).zip={})})(this,(function(e){"use strict";const{Array:t,Object:n,String:r,Number:s,BigInt:i,Math:a,Date:o,Map:c,Set:l,Response:u,URL:f,Error:d,Uint8Array:w,Uint16Array:p,Uint32Array:h,DataView:g,Blob:m,Promise:y,TextEncoder:b,TextDecoder:S,document:k,crypto:z,btoa:v,TransformStream:x,ReadableStream:A,WritableStream:C,CompressionStream:_,DecompressionStream:D,navigator:F,Worker:W}="undefined"!=typeof globalThis?globalThis:this||self;var R=void 0!==k?k.currentScript:null;const E=4294967295,T=65535,L=67324752,U=134695760,I=U,N=33639248,q=101010256,O=101075792,P=117853008,H=22,M=21589,B=2048,V="/",Z=new o(2107,11,31),K=new o(1980,0,1),G=void 0,X="undefined",Y="function";class j{constructor(e){return class extends x{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}let J=2;try{typeof F!=X&&F.hardwareConcurrency&&(J=F.hardwareConcurrency)}catch(e){}const Q={chunkSize:524288,maxWorkers:J,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:G,CompressionStreamNative:typeof _!=X&&_,DecompressionStreamNative:typeof D!=X&&D},$=n.assign({},Q);function ee(){return $}function te(e){return a.max(e.chunkSize,64)}function ne(e){const{baseURL:n,chunkSize:r,maxWorkers:s,terminateWorkerTimeout:i,useCompressionStream:a,useWebWorkers:o,Deflate:c,Inflate:l,CompressionStream:u,DecompressionStream:f,workerScripts:w}=e;if(re("baseURL",n),re("chunkSize",r),re("maxWorkers",s),re("terminateWorkerTimeout",i),re("useCompressionStream",a),re("useWebWorkers",o),c&&($.CompressionStream=new j(c)),l&&($.DecompressionStream=new j(l)),re("CompressionStream",u),re("DecompressionStream",f),w!==G){const{deflate:e,inflate:n}=w;if((e||n)&&($.workerScripts||($.workerScripts={})),e){if(!t.isArray(e))throw new d("workerScripts.deflate must be an array");$.workerScripts.deflate=e}if(n){if(!t.isArray(n))throw new d("workerScripts.inflate must be an array");$.workerScripts.inflate=n}}}function re(e,t){t!==G&&($[e]=t)}function se(e,t,r){return class{constructor(s){const i=this;var a,o;a=s,o="level",(typeof n.hasOwn===Y?n.hasOwn(a,o):a.hasOwnProperty(o))&&s.level===G&&delete s.level,i.codec=new e(n.assign({},t,s)),r(i.codec,(e=>{if(i.pendingData){const t=i.pendingData;i.pendingData=new w(t.length+e.length);const{pendingData:n}=i;n.set(t,0),n.set(e,t.length)}else i.pendingData=new w(e)}))}append(e){return this.codec.push(e),s(this)}flush(){return this.codec.push(new w,!0),s(this)}};function s(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new w}}const ie=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;ie[e]=t}class ae{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^ie[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class oe extends x{constructor(){let e;const t=new ae;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new w(4);new g(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function ce(e){if(typeof b==X){const t=new w((e=unescape(encodeURIComponent(e))).length);for(let n=0;n0&&t&&(e[n-1]=le.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>a.round(e/1099511627776)||32,_shiftRight(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=le.getPartial(s);return r.push(le.partial(t+i&31,t+i>32?n:r.pop(),1)),r}},ue={bytes:{fromBits(e){const t=le.bitLength(e)/8,n=new w(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new d("Cannot hash more than 2^53 - 1 bits");const i=new h(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);s>=e;e+=t.blockSize)t._block(i.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=le.concat(t,[le.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(a.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}_S(e,t){return t<>>32-e}_block(e){const n=this,r=n._h,s=t(80);for(let t=0;16>t;t++)s[t]=e[t];let i=r[0],o=r[1],c=r[2],l=r[3],u=r[4];for(let e=0;79>=e;e++){16>e||(s[e]=n._S(1,s[e-3]^s[e-8]^s[e-14]^s[e-16]));const t=n._S(5,i)+n._f(e,o,c,l)+u+s[e]+n._key[a.floor(e/20)]|0;u=l,l=c,c=n._S(30,o),o=i,i=t}r[0]=r[0]+i|0,r[1]=r[1]+o|0,r[2]=r[2]+c|0,r[3]=r[3]+l|0,r[4]=r[4]+u|0}},de={getRandomValues(e){const t=new h(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(a.random()>.5?1:-1))};for(let r,s=0;snew we.hmacSha1(ue.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new d("invalid params to pbkdf2");const s=1+(r>>5)<<2;let i,a,o,c,l;const u=new ArrayBuffer(s),f=new g(u);let w=0;const p=le;for(t=ue.bytes.toBits(t),l=1;(s||1)>w;l++){for(i=a=e.encrypt(p.concat(t,[l])),o=1;n>o;o++)for(a=e.encrypt(a),c=0;cw&&os&&(e=(new n).update(e).finalize());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw new d("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},pe=typeof z!=X&&typeof z.getRandomValues==Y,he="Invalid password",ge="Invalid signature",me="zipjs-abort-check-password";function ye(e){return pe?z.getRandomValues(e):de.getRandomValues(e)}const be=16,Se={name:"PBKDF2"},ke=n.assign({hash:{name:"HMAC"}},Se),ze=n.assign({iterations:1e3,hash:{name:"SHA-1"}},Se),ve=["deriveBits"],xe=[8,12,16],Ae=[16,24,32],Ce=10,_e=[0,0,0,0],De=typeof z!=X,Fe=De&&z.subtle,We=De&&typeof Fe!=X,Re=ue.bytes,Ee=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],s=e.length;let i,a,o,c=1;if(4!==s&&6!==s&&8!==s)throw new d("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],i=s;4*s+28>i;i++){let e=a[i-1];(i%s==0||8===s&&i%s==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],i%s==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[i]=a[i-s]^e}for(let e=0;i;e++,i--){const t=a[3&e?i:i-4];o[e]=4>=i||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],s=[],i=[];let a,o,c,l;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let u=a=0;!n[u];u^=o||1,a=i[a]||1){let i=a^a<<1^a<<2^a<<3^a<<4;i=i>>8^255&i^99,n[u]=i,r[i]=u,l=s[c=s[o=s[u]]];let f=16843009*l^65537*c^257*o^16843008*u,d=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][u]=d=d<<24^d>>>8,t[n][i]=f=f<<24^f>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw new d("invalid aes block size");const n=this._key[t],r=n.length/4-2,s=[0,0,0,0],i=this._tables[t],a=i[0],o=i[1],c=i[2],l=i[3],u=i[4];let f,w,p,h=e[0]^n[0],g=e[t?3:1]^n[1],m=e[2]^n[2],y=e[t?1:3]^n[3],b=4;for(let e=0;r>e;e++)f=a[h>>>24]^o[g>>16&255]^c[m>>8&255]^l[255&y]^n[b],w=a[g>>>24]^o[m>>16&255]^c[y>>8&255]^l[255&h]^n[b+1],p=a[m>>>24]^o[y>>16&255]^c[h>>8&255]^l[255&g]^n[b+2],y=a[y>>>24]^o[h>>16&255]^c[g>>8&255]^l[255&m]^n[b+3],b+=4,h=f,g=w,m=p;for(let e=0;4>e;e++)s[t?3&-e:e]=u[h>>>24]<<24^u[g>>16&255]<<16^u[m>>8&255]<<8^u[255&y]^n[b++],f=h,h=g,g=m,m=y,y=f;return s}},Te=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];const s=le.bitLength(t);for(let s=0;r>s;s+=4){this.incCounter(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return le.clamp(t,s)}},Le=we.hmacSha1;let Ue=De&&We&&typeof Fe.importKey==Y,Ie=De&&We&&typeof Fe.deriveBits==Y;class Ne extends x{constructor({password:e,rawPassword:t,signed:r,encryptionStrength:s,checkPasswordOnly:i}){super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:He(e,t),signed:r,strength:s-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const s=await Pe(e,t,n,Be(r,0,xe[t])),i=Be(r,xe[t]);if(s[0]!=i[0]||s[1]!=i[1])throw new d(he)})(n,s,r,Be(e,0,xe[s]+2)),e=Be(e,xe[s]+2),i?t.error(new d(me)):a()):await o;const c=new w(e.length-Ce-(e.length-Ce)%be);t.enqueue(Oe(n,e,c,0,Ce,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:s,ready:i}=this;if(r&&n){await i;const a=Be(s,0,s.length-Ce),o=Be(s,s.length-Ce);let c=new w;if(a.length){const e=Ze(Re,a);r.update(e);const t=n.update(e);c=Ve(Re,t)}if(t){const e=Be(Ve(Re,r.digest()),0,Ce);for(let t=0;Ce>t;t++)if(e[t]!=o[t])throw new d(ge)}e.enqueue(c)}}})}}class qe extends x{constructor({password:e,rawPassword:t,encryptionStrength:r}){let s;super({start(){n.assign(this,{ready:new y((e=>this.resolveReady=e)),password:He(e,t),strength:r-1,pending:new w})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:i,ready:a}=n;let o=new w;r?(o=await(async(e,t,n)=>{const r=ye(new w(xe[t]));return Me(r,await Pe(e,t,n,r))})(n,s,r),i()):await a;const c=new w(o.length+e.length-e.length%be);c.set(o,0),t.enqueue(Oe(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:r,ready:i}=this;if(n&&t){await i;let a=new w;if(r.length){const e=t.update(Ze(Re,r));n.update(e),a=Ve(Re,e)}s.signature=Ve(Re,n.digest()).slice(0,Ce),e.enqueue(Me(a,s.signature))}}}),s=this}}function Oe(e,t,n,r,s,i){const{ctr:a,hmac:o,pending:c}=e,l=t.length-s;let u;for(c.length&&(t=Me(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new w(t)).set(n,0)}return e})(n,l-l%be)),u=0;l-be>=u;u+=be){const e=Ze(Re,Be(t,u,u+be));i&&o.update(e);const s=a.update(e);i||o.update(s),n.set(Ve(Re,s),u+r)}return e.pending=Be(t,u),n}async function Pe(e,r,s,i){e.password=null;const a=await(async(e,t,n,r,s)=>{if(!Ue)return we.importKey(t);try{return await Fe.importKey("raw",t,n,!1,s)}catch(e){return Ue=!1,we.importKey(t)}})(0,s,ke,0,ve),o=await(async(e,t,n)=>{if(!Ie)return we.pbkdf2(t,e.salt,ze.iterations,n);try{return await Fe.deriveBits(e,t,n)}catch(r){return Ie=!1,we.pbkdf2(t,e.salt,ze.iterations,n)}})(n.assign({salt:i},ze),a,8*(2*Ae[r]+2)),c=new w(o),l=Ze(Re,Be(c,0,Ae[r])),u=Ze(Re,Be(c,Ae[r],2*Ae[r])),f=Be(c,2*Ae[r]);return n.assign(e,{keys:{key:l,authentication:u,passwordVerification:f},ctr:new Te(new Ee(l),t.from(_e)),hmac:new Le(u)}),f}function He(e,t){return t===G?ce(e):t}function Me(e,t){let n=e;return e.length+t.length&&(n=new w(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Be(e,t,n){return e.subarray(t,n)}function Ve(e,t){return e.fromBits(t)}function Ze(e,t){return e.toBits(t)}class Ke extends x{constructor({password:e,passwordVerification:t,checkPasswordOnly:r}){super({start(){n.assign(this,{password:e,passwordVerification:t}),je(this,e)},transform(e,t){const n=this;if(n.password){const t=Xe(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new d(he);e=e.subarray(12)}r?t.error(new d(me)):t.enqueue(Xe(n,e))}})}}class Ge extends x{constructor({password:e,passwordVerification:t}){super({start(){n.assign(this,{password:e,passwordVerification:t}),je(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=ye(new w(12));t[11]=n.passwordVerification,r=new w(e.length+t.length),r.set(Ye(n,t),0),s=12}else r=new w(e.length),s=0;r.set(Ye(n,e),s),t.enqueue(r)}})}}function Xe(e,t){const n=new w(t.length);for(let r=0;r>>24]),s=~e.crcKey2.get(),e.keys=[n,r,s]}function Qe(e){const t=2|e.keys[2];return $e(a.imul(t,1^t)>>>8)}function $e(e){return 255&e}function et(e){return 4294967295&e}const tt="deflate-raw";class nt extends x{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:a,zipCrypto:o,signed:c,level:l}=e,u=this;let f,d,w=st(super.readable);i&&!o||!c||(f=new oe,w=ot(w,f)),s&&(w=at(w,a,{level:l,chunkSize:t},r,n)),i&&(o?w=ot(w,new Ge(e)):(d=new qe(e),w=ot(w,d))),it(u,w,(()=>{let e;i&&!o&&(e=d.signature),i&&!o||!c||(e=new g(f.value.buffer).getUint32(0)),u.signature=e}))}}class rt extends x{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:s,encrypted:i,signed:a,signature:o,compressed:c,useCompressionStream:l}=e;let u,f,w=st(super.readable);i&&(s?w=ot(w,new Ke(e)):(f=new Ne(e),w=ot(w,f))),c&&(w=at(w,l,{chunkSize:t},r,n)),i&&!s||!a||(u=new oe,w=ot(w,u)),it(this,w,(()=>{if((!i||s)&&a){const e=new g(u.value.buffer);if(o!=e.getUint32(0,!1))throw new d(ge)}}))}}function st(e){return ot(e,new x({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function it(e,t,r){t=ot(t,new x({flush:r})),n.defineProperty(e,"readable",{get:()=>t})}function at(e,t,n,r,s){try{e=ot(e,new(t&&r?r:s)(tt,n))}catch(r){if(!t)return e;try{e=ot(e,new s(tt,n))}catch(t){return e}}return e}function ot(e,t){return e.pipeThrough(t)}const ct="data",lt="close",ut="deflate",ft="inflate";class dt extends x{constructor(e,t){super({});const r=this,{codecType:s}=e;let i;s.startsWith(ut)?i=nt:s.startsWith(ft)&&(i=rt);let a=0,o=0;const c=new i(e,t),l=super.readable,u=new x({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){n.assign(r,{inputSize:o})}}),f=new x({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;n.assign(r,{signature:e,outputSize:a,inputSize:o})}});n.defineProperty(r,"readable",{get:()=>l.pipeThrough(u).pipeThrough(c).pipeThrough(f)})}}class wt extends x{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new w(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}let pt=typeof W!=X;class ht{constructor(e,{readable:t,writable:r},{options:s,config:i,streamOptions:a,useWebWorkers:o,transferStreams:c,scripts:l},u){const{signal:f}=a;return n.assign(e,{busy:!0,readable:t.pipeThrough(new wt(i.chunkSize)).pipeThrough(new gt(t,a),{signal:f}),writable:r,options:n.assign({},s),scripts:l,transferStreams:c,terminate:()=>new y((t=>{const{worker:n,busy:r}=e;n?(r?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,u(e)}}),(o&&pt?bt:yt)(e,i)}}class gt extends x{constructor(e,{onstart:t,onprogress:n,size:r,onend:s}){let i=0;super({async start(){t&&await mt(t,r)},async transform(e,t){i+=e.length,n&&await mt(n,i,r),t.enqueue(e)},async flush(){e.size=i,s&&await mt(s,i)}})}}async function mt(e,...t){try{await e(...t)}catch(e){}}function yt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},s)=>{try{const r=new dt(e,s);await t.pipeThrough(r).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:i,inputSize:a,outputSize:o}=r;return{signature:i,inputSize:a,outputSize:o}}finally{r()}})(e,t)}}function bt(e,t){const{baseURL:r,chunkSize:s}=t;if(!e.interface){let i;try{i=((e,t,r)=>{const s={type:"module"};let i,a;typeof e==Y&&(e=e());try{i=new f(e,t)}catch(t){i=e}if(St)try{a=new W(i)}catch(e){St=!1,a=new W(i,s)}else a=new W(i,s);return a.addEventListener("message",(e=>(async({data:e},t)=>{const{type:r,value:s,messageId:i,result:a,error:o}=e,{reader:c,writer:l,resolveResult:u,rejectResult:f,onTaskFinished:p}=t;try{if(o){const{message:e,stack:t,code:r,name:s}=o,i=new d(e);n.assign(i,{stack:t,code:r,name:s}),h(i)}else{if("pull"==r){const{value:e,done:n}=await c.read();zt({type:ct,value:e,done:n,messageId:i},t)}r==ct&&(await l.ready,await l.write(new w(s)),zt({type:"ack",messageId:i},t)),r==lt&&h(null,a)}}catch(o){zt({type:lt,messageId:i},t),h(o)}function h(e,t){e?f(e):u(t),l&&l.releaseLock(),p()}})(e,r))),a})(e.scripts[0],r,e)}catch(n){return pt=!1,yt(e,t)}n.assign(e,{worker:i,interface:{run:()=>(async(e,t)=>{let r,s;const i=new y(((e,t)=>{r=e,s=t}));n.assign(e,{reader:null,writer:null,resolveResult:r,rejectResult:s,result:i});const{readable:a,options:o,scripts:c}=e,{writable:l,closed:u}=(e=>{let t;const n=new y((e=>t=e));return{writable:new C({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),f=zt({type:"start",scripts:c.slice(1),options:o,config:t,readable:a,writable:l},e);f||n.assign(e,{reader:a.getReader(),writer:l.getWriter()});const d=await i;return f||await l.getWriter().close(),await u,d})(e,{chunkSize:s})}})}return e.interface}let St=!0,kt=!0;function zt(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:s}){try{const{value:n,readable:r,writable:i}=e,a=[];if(n&&(n.byteLength{const n=vt.find((e=>!e.busy));if(n)return _t(n),new ht(n,e,t,h);if(vt.lengthxt.push({resolve:n,stream:e,workerOptions:t})))})()).run();function h(e){if(xt.length){const[{resolve:t,stream:n,workerOptions:r}]=xt.splice(0,1);t(new ht(e,n,r,h))}else e.worker?(_t(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;s.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{vt=vt.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),r))})(e,t)):vt=vt.filter((t=>t!=e))}}function _t(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}const Dt="HTTP error ",Ft="HTTP Range not supported",Wt="Writer iterator completed too soon",Rt="Range",Et="GET",Tt="bytes",Lt=65536,Ut="writable";class It{constructor(){this.size=0}init(){this.initialized=!0}}class Nt extends It{get readable(){const e=this,{chunkSize:t=Lt}=e,n=new A({start(){this.chunkOffset=0},async pull(r){const{offset:s=0,size:i,diskNumberStart:o}=n,{chunkOffset:c}=this;r.enqueue(await on(e,s+c,a.min(t,i-c),o)),c+t>i?r.close():this.chunkOffset+=t}});return n}}class qt extends It{constructor(){super();const e=this,t=new C({write:t=>e.writeUint8Array(t)});n.defineProperty(e,Ut,{get:()=>t})}writeUint8Array(){}}class Ot extends Nt{constructor(e){super(),n.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,s=e||rt&&(i=i.slice(e,r)),new w(i)}}class Pt extends It{constructor(e){super();const t=new x,r=[];e&&r.push(["Content-Type",e]),n.defineProperty(this,Ut,{get:()=>t.writable}),this.blob=new u(t.readable,{headers:r}).blob()}getData(){return this.blob}}class Ht extends Nt{constructor(e,t){super(),Bt(this,e,t)}async init(){await Vt(this,Qt,Xt),super.init()}readUint8Array(e,t){return Zt(this,e,t,Qt,Xt)}}class Mt extends Nt{constructor(e,t){super(),Bt(this,e,t)}async init(){await Vt(this,$t,Yt),super.init()}readUint8Array(e,t){return Zt(this,e,t,$t,Yt)}}function Bt(e,t,r){const{preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:o}=r;delete(r=n.assign({},r)).preventHeadRequest,delete r.useRangeHeader,delete r.forceRangeRequests,delete r.combineSizeEocd,delete r.useXHR,n.assign(e,{url:t,options:r,preventHeadRequest:s,useRangeHeader:i,forceRangeRequests:a,combineSizeEocd:o})}async function Vt(e,t,n){const{url:r,preventHeadRequest:i,useRangeHeader:a,forceRangeRequests:o,combineSizeEocd:c}=e;if((e=>{const{baseURL:t}=ee(),{protocol:n}=new f(e,t);return"http:"==n||"https:"==n})(r)&&(a||o)&&(void 0===i||i)){const r=await t(Et,e,Kt(e,c?-22:void 0));if(!o&&r.headers.get("Accept-Ranges")!=Tt)throw new d(Ft);{let i;c&&(e.eocdCache=new w(await r.arrayBuffer()));const a=r.headers.get("Content-Range");if(a){const e=a.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(i=s(t))}}i===G?await Jt(e,t,n):e.size=i}}else await Jt(e,t,n)}async function Zt(e,t,n,r,s){const{useRangeHeader:i,forceRangeRequests:a,eocdCache:o,size:c,options:l}=e;if(i||a){if(o&&t==c-H&&n==H)return o;const s=await r(Et,e,Kt(e,t,n));if(206!=s.status)throw new d(Ft);return new w(await s.arrayBuffer())}{const{data:r}=e;return r||await s(e,l),new w(e.data.subarray(t,t+n))}}function Kt(e,t=0,r=1){return n.assign({},Gt(e),{[Rt]:Tt+"="+(0>t?t:t+"-"+(t+r-1))})}function Gt({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?n.fromEntries(t):t}async function Xt(e){await jt(e,Qt)}async function Yt(e){await jt(e,$t)}async function jt(e,t){const n=await t(Et,e,Gt(e));e.data=new w(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function Jt(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,Gt(e))).headers.get("Content-Length");r?e.size=s(r):await n(e,e.options)}}async function Qt(e,{options:t,url:r},s){const i=await fetch(r,n.assign({},t,{method:e,headers:s}));if(400>i.status)return i;throw 416==i.status?new d(Ft):new d(Dt+(i.statusText||i.status))}function $t(e,{url:t},r){return new y(((s,i)=>{const a=new XMLHttpRequest;if(a.addEventListener("load",(()=>{if(400>a.status){const e=[];a.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),s({status:a.status,arrayBuffer:()=>a.response,headers:new c(e)})}else i(416==a.status?new d(Ft):new d(Dt+(a.statusText||a.status)))}),!1),a.addEventListener("error",(e=>i(e.detail?e.detail.error:new d("Network error"))),!1),a.open(e,t),r)for(const e of n.entries(r))a.setRequestHeader(e[0],e[1]);a.responseType="arraybuffer",a.send()}))}class en extends Nt{constructor(e,t={}){super(),n.assign(this,{url:e,reader:t.useXHR?new Mt(e,t):new Ht(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class tn extends Nt{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await y.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:s}=this;let i,o=n;-1==o&&(o=s.length-1);let c=e;for(;c>=s[o].size;)c-=s[o].size,o++;const l=s[o],u=l.size;if(c+t>u){const s=u-c;i=new w(t),i.set(await on(l,c,s)),i.set(await r.readUint8Array(e+s,t-s,n),s)}else i=await on(l,c,t);return r.lastDiskNumber=a.max(o,r.lastDiskNumber),i}}class nn extends It{constructor(e,t=4294967295){super();const r=this;let s,i,a;n.assign(r,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const o=new C({async write(t){const{availableSize:n}=r;if(a)t.lengtho})}}async function rn(e,t){if(!e.init||e.initialized)return y.resolve();await e.init(t)}function sn(e){return t.isArray(e)&&(e=new tn(e)),e instanceof A&&(e={readable:e}),e}function an(e){e.writable===G&&typeof e.next==Y&&(e=new nn(e)),e instanceof C&&(e={writable:e});const{writable:t}=e;return t.size===G&&(t.size=0),e instanceof nn||n.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function on(e,t,n,r){return e.readUint8Array(t,n,r)}const cn=tn,ln=nn,un="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function fn(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const In="File format is not recognized",Nn="End of central directory not found",qn="End of Zip64 central directory locator not found",On="Central directory header not found",Pn="Local file header not found",Hn="Zip64 extra field not found",Mn="File contains encrypted entry",Bn="Encryption method not supported",Vn="Compression method not supported",Zn="Split zip file",Kn="utf-8",Gn="cp437",Xn=[[gn,E],[mn,E],[yn,E],[bn,T]],Yn={[T]:{getValue:ar,bytes:4},[E]:{getValue:or,bytes:8}};class jn{constructor(e,t={}){n.assign(this,{reader:sn(e),options:t,config:ee()})}async*getEntriesGenerator(e={}){const t=this;let{reader:r}=t;const{config:s}=t;if(await rn(r),r.size!==G&&r.readUint8Array||(r=new Ot(await new u(r.readable).blob()),await rn(r)),r.size{const r=new w(4);var s;return s=t,cr(r).setUint32(0,s,!0),await i(22)||await i(a.min(1048582,n));async function i(t){const s=n-t,i=await on(e,s,t);for(let e=i.length-22;e>=0;e--)if(i[e]==r[0]&&i[e+1]==r[1]&&i[e+2]==r[2]&&i[e+3]==r[3])return{offset:s+e,buffer:i.slice(e,e+22).buffer}}})(r,q,r.size);if(!i)throw ar(cr(await on(r,0,4)))==U?new d(Zn):new d(Nn);const o=cr(i);let c=ar(o,12),l=ar(o,16);const f=i.offset,p=ir(o,20),h=f+H+p;let g=ir(o,4);const m=r.lastDiskNumber||0;let y=ir(o,6),b=ir(o,8),S=0,k=0;if(l==E||c==E||b==T||y==T){const e=cr(await on(r,i.offset-20,20));if(ar(e,0)==P){l=or(e,8);let t=await on(r,l,56,-1),n=cr(t);const s=i.offset-20-56;if(ar(n,0)!=O&&l!=s){const e=l;l=s,S=l-e,t=await on(r,l,56,-1),n=cr(t)}if(ar(n,0)!=O)throw new d(qn);g==T&&(g=ar(n,16)),y==T&&(y=ar(n,20)),b==T&&(b=or(n,32)),c==E&&(c=or(n,40)),l-=c}}if(ll)throw new d(In);let z=0,v=await on(r,l,c,y),x=cr(v);if(c){const e=i.offset-c;if(ar(x,z)!=N&&l!=e){const t=l;l=e,S+=l-t,v=await on(r,l,c,y),x=cr(v)}}const A=i.offset-l-(r.lastDiskOffset||0);if(c==A||0>A||(c=A,v=await on(r,l,c,y),x=cr(v)),0>l||l>=r.size)throw new d(In);const C=tr(t,e,"filenameEncoding"),_=tr(t,e,"commentEncoding");for(let i=0;b>i;i++){const o=new Jn(r,s,t.options);if(ar(x,z)!=N)throw new d(On);Qn(o,x,z+6);const c=!!o.bitFlag.languageEncodingFlag,l=z+46,u=l+o.filenameLength,f=u+o.extraFieldLength,w=ir(x,z+4),p=!(w>>8),h=w>>8==3,g=v.subarray(l,u),m=ir(x,z+32),y=f+m,A=v.subarray(f,y),D=c,F=c,W=ar(x,z+38),R=p&&!(16&~sr(x,z+38))||h&&!(16384&~(W>>16))||g.length&&47==g[g.length-1],E=h&&!(73&~(W>>16)),T=ar(x,z+42)+S;n.assign(o,{versionMadeBy:w,msDosCompatible:p,compressedSize:0,uncompressedSize:0,commentLength:m,directory:R,offset:T,diskNumberStart:ir(x,z+34),internalFileAttributes:ir(x,z+36),externalFileAttributes:W,rawFilename:g,filenameUTF8:D,commentUTF8:F,rawExtraField:v.subarray(u,f),executable:E}),o.internalFileAttribute=o.internalFileAttributes,o.externalFileAttribute=o.externalFileAttributes;const L=tr(t,e,"decodeText")||fn,U=D?Kn:C||Gn,I=F?Kn:_||Gn;let q=L(g,U);q===G&&(q=fn(g,U));let O=L(A,I);O===G&&(O=fn(A,I)),n.assign(o,{rawComment:A,filename:q,comment:O,directory:R||q.endsWith(V)}),k=a.max(T,k),$n(o,o,x,z+6),o.zipCrypto=o.encrypted&&!o.extraFieldAES;const P=new Un(o);P.getData=(e,t)=>o.getData(e,P,t),z=y;const{onprogress:H}=e;if(H)try{await H(i+1,b,new Un(o))}catch(e){}yield P}const D=tr(t,e,"extractPrependedData"),F=tr(t,e,"extractAppendedData");return D&&(t.prependedData=k>0?await on(r,0,k):new w),t.comment=p?await on(r,f+H,p):new w,F&&(t.appendedData=h>>8&255:p>>>24&255),signature:p,compressed:0!=l&&!z,encrypted:s.encrypted&&!z,useWebWorkers:tr(s,r,"useWebWorkers"),useCompressionStream:tr(s,r,"useCompressionStream"),transferStreams:tr(s,r,"transferStreams"),checkPasswordOnly:W},config:u,streamOptions:{signal:F,size:_,onstart:E,onprogress:T,onend:U}};let N=0;try{({outputSize:N}=await Ct({readable:D,writable:R},I))}catch(e){if(!W||e.message!=me)throw e}finally{const e=tr(s,r,"preventClose");R.size+=N,e||R.locked||await R.getWriter().close()}return W?G:e.getData?e.getData():R}}function Qn(e,t,r){const s=e.rawBitFlag=ir(t,r+2),i=!(1&~s),a=ar(t,r+6);n.assign(e,{encrypted:i,version:ir(t,r),bitFlag:{level:(6&s)>>1,dataDescriptor:!(8&~s),languageEncodingFlag:(s&B)==B},rawLastModDate:a,lastModDate:nr(a),filenameLength:ir(t,r+22),extraFieldLength:ir(t,r+24)})}function $n(e,t,r,s,i){const{rawExtraField:a}=t,l=t.extraField=new c,u=cr(new w(a));let f=0;try{for(;f{t.zip64=!0;const n=cr(e.data),r=Xn.filter((([e,n])=>t[e]==n));for(let s=0,i=0;s{const s=cr(e.data),i=sr(s,4);n.assign(e,{vendorVersion:sr(s,0),vendorId:sr(s,2),strength:i,originalCompressionMethod:r,compressionMethod:ir(s,5)}),t.compressionMethod=e.compressionMethod})(y,t,p),t.extraFieldAES=y):t.compressionMethod=p;const b=l.get(10);b&&(((e,t)=>{const r=cr(e.data);let s,i=4;try{for(;i{const r=cr(e.data),s=sr(r,0),i=[],a=[];n?(1&~s||(i.push(Sn),a.push(kn)),2&~s||(i.push(zn),a.push("rawLastAccessDate")),4&~s||(i.push(vn),a.push("rawCreationDate"))):5>e.data.length||(i.push(Sn),a.push(kn));let c=1;i.forEach(((n,s)=>{if(e.data.length>=c+4){const i=ar(r,c);t[n]=e[n]=new o(1e3*i);const l=a[s];e[l]=i}c+=4}))})(S,t,i),t.extraFieldExtendedTimestamp=S);const k=l.get(6534);k&&(t.extraFieldUSDZ=k)}function er(e,t,r,s,i){const a=cr(e.data),o=new ae;o.append(i[r]);const c=cr(new w(4));c.setUint32(0,o.get(),!0);const l=ar(a,1);n.assign(e,{version:sr(a,0),[t]:fn(e.data.subarray(5)),valid:!i.bitFlag.languageEncodingFlag&&l==ar(c,0)}),e.valid&&(s[t]=e[t],s[t+"UTF8"]=!0)}function tr(e,t,n){return t[n]===G?e.options[n]:t[n]}function nr(e){const t=(4294901760&e)>>16,n=65535&e;try{return new o(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function rr(e){return new o(s(e/i(1e4)-i(116444736e5)))}function sr(e,t){return e.getUint8(t)}function ir(e,t){return e.getUint16(t,!0)}function ar(e,t){return e.getUint32(t,!0)}function or(e,t){return s(e.getBigUint64(t,!0))}function cr(e){return new g(e.buffer)}const lr="File already exists",ur="Zip file comment exceeds 64KB",fr="File entry comment exceeds 64KB",dr="File entry name exceeds 64KB",wr="Version exceeds 65535",pr="The strength must equal 1, 2, or 3",hr="Extra field type exceeds 65535",gr="Extra field data exceeds 64KB",mr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",yr="Undefined uncompressed size",br=new w([7,0,2,0,65,69,3,0,0]);let Sr=0;const kr=[];class zr{constructor(e,t={}){const r=(e=an(e)).availableSize!==G&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==G&&e.maxSize>0&&e.maxSize!==1/0;n.assign(this,{writer:e,addSplitZipSignature:r,options:t,config:ee(),files:new c,filenames:new l,offset:t.offset===G?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new l,bufferedWrites:0})}async add(e="",r,s={}){const c=this,{pendingAddFileCalls:l,config:f}=c;let m;Srkr.push(e)));try{if(e=e.trim(),c.filenames.has(e))throw new d(lr);return c.filenames.add(e),m=(async(e,r,s,c)=>{r=r.trim(),c.directory&&!r.endsWith(V)?r+=V:c.directory=r.endsWith(V);const l=Ar(e,c,"encodeText",ce);let f=l(r);if(f===G&&(f=ce(r)),Tr(f)>T)throw new d(dr);const m=c.comment||"";let b=l(m);if(b===G&&(b=ce(m)),Tr(b)>T)throw new d(fr);const S=Ar(e,c,Rn,20);if(S>T)throw new d(wr);const k=Ar(e,c,En,20);if(k>T)throw new d(wr);const z=Ar(e,c,Sn,new o),v=Ar(e,c,zn),A=Ar(e,c,vn),C=Ar(e,c,Dn,!0);let _=Ar(e,c,An,0);0===_&&(_=Ar(e,c,xn,0));let D=Ar(e,c,_n,0);0===D&&(D=Ar(e,c,Cn,0));const F=Ar(e,c,"passThrough");let W,R;F||(W=Ar(e,c,"password"),R=Ar(e,c,"rawPassword"));const N=Ar(e,c,"encryptionStrength",3),q=Ar(e,c,Tn),O=Ar(e,c,"extendedTimestamp",!0),P=Ar(e,c,"keepOrder",!0),H=Ar(e,c,"level"),X=Ar(e,c,"useWebWorkers"),Y=Ar(e,c,"bufferedWrite"),j=Ar(e,c,"dataDescriptorSignature",!1),J=Ar(e,c,"signal"),Q=Ar(e,c,"useUnicodeFileNames",!0),$=Ar(e,c,"useCompressionStream"),ee=Ar(e,c,"compressionMethod");let ne=Ar(e,c,"dataDescriptor",!0),re=Ar(e,c,Fn);if(!q&&(W!==G||R!==G)&&(1>N||N>3))throw new d(pr);let se=new w;const{extraField:ie}=c;if(ie){let e=0,t=0;ie.forEach((t=>e+=4+Tr(t))),se=new w(e),ie.forEach(((e,n)=>{if(n>T)throw new d(hr);if(Tr(e)>T)throw new d(gr);Rr(se,new p([n]),t),Rr(se,new p([Tr(e)]),t+2),Rr(se,e,t+4),t+=4+Tr(e)}))}let ae=0,oe=0,le=0;if(F&&(({uncompressedSize:le}=c),le===G))throw new d(yr);const ue=!0===re;s&&(s=sn(s),await rn(s),F?ae=Cr(le):s.size===G?(ne=!0,(re||re===G)&&(re=!0,le=ae=4294967296)):(le=s.size,ae=Cr(le)));const{diskOffset:fe,diskNumber:de,maxSize:we}=e.writer,pe=ue||le>E,he=ue||ae>E,ge=ue||e.offset+e.pendingEntriesSize-fe>E,me=Ar(e,c,"supportZip64SplitFile",!0)&&ue||de+a.ceil(e.pendingEntriesSize/we)>T;if(ge||pe||he||me){if(!1===re||!P)throw new d(mr);re=!0}re=re||!1;const ye=Ar(e,c,Wn),{signature:be}=c,Se=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:s,level:i,zip64:o,zipCrypto:c,useUnicodeFileNames:l,dataDescriptor:u,directory:f,rawExtraField:d,encryptionStrength:p,extendedTimestamp:g,encrypted:m}=e;let{version:y,compressionMethod:b}=e;const S=!f&&(i>0||i===G&&0!==b);let k,z,v,x;if(m&&!c){k=new w(Tr(br)+2);const e=Er(k);Dr(e,0,39169),Rr(k,br,2),_r(e,8,p)}else k=new w;if(g){v=new w(9+(r?4:0)+(s?4:0));const e=Er(v);Dr(e,0,M),Dr(e,2,Tr(v)-4),x=1+(r?2:0)+(s?4:0),_r(e,4,x);let t=5;Fr(e,t,a.floor(n.getTime()/1e3)),t+=4,r&&(Fr(e,t,a.floor(r.getTime()/1e3)),t+=4),s&&Fr(e,t,a.floor(s.getTime()/1e3));try{z=new w(36);const e=Er(z),t=xr(n);Dr(e,0,10),Dr(e,2,32),Dr(e,8,1),Dr(e,10,24),Wr(e,12,t),Wr(e,20,xr(r)||t),Wr(e,28,xr(s)||t)}catch(e){z=new w}}else z=v=new w;let A=0;l&&(A|=B),u&&(A|=8),b===G&&(b=S?8:0),8==b&&(i>=1&&3>i&&(A|=6),i>=3&&5>i&&(A|=1),9===i&&(A|=2)),o&&(y=y>45?y:45),m&&(A|=1,c||(y=y>51?y:51,k[9]=b,b=99));const C=new w(26),_=Er(C);Dr(_,0,y),Dr(_,2,A),Dr(_,4,b);const D=new h(1),F=Er(D);let W;W=K>n?K:n>Z?Z:n,Dr(F,0,(W.getHours()<<6|W.getMinutes())<<5|W.getSeconds()/2),Dr(F,2,(W.getFullYear()-1980<<4|W.getMonth()+1)<<5|W.getDate());const R=D[0];Fr(_,6,R),Dr(_,22,Tr(t));const E=Tr(k,v,z,d);Dr(_,24,E);const T=new w(30+Tr(t)+E);return Fr(Er(T),0,L),Rr(T,C,4),Rr(T,t,30),Rr(T,k,30+Tr(t)),Rr(T,v,30+Tr(t,k)),Rr(T,z,30+Tr(t,k,v)),Rr(T,d,30+Tr(t,k,v,z)),{localHeaderArray:T,headerArray:C,headerView:_,lastModDate:n,rawLastModDate:R,encrypted:m,compressed:S,version:y,compressionMethod:b,extraFieldExtendedTimestampFlag:x,rawExtraFieldExtendedTimestamp:v,rawExtraFieldNTFS:z,rawExtraFieldAES:k,extraFieldLength:E}})(c=n.assign({},c,{rawFilename:f,rawComment:b,version:S,versionMadeBy:k,lastModDate:z,lastAccessDate:v,creationDate:A,rawExtraField:se,zip64:re,zip64UncompressedSize:pe,zip64CompressedSize:he,zip64Offset:ge,zip64DiskNumberStart:me,password:W,rawPassword:R,level:$||e.config.CompressionStream!==G||e.config.CompressionStreamNative!==G?H:0,useWebWorkers:X,encryptionStrength:N,extendedTimestamp:O,zipCrypto:q,bufferedWrite:Y,keepOrder:P,useUnicodeFileNames:Q,dataDescriptor:ne,dataDescriptorSignature:j,signal:J,msDosCompatible:C,internalFileAttribute:_,internalFileAttributes:_,externalFileAttribute:D,externalFileAttributes:D,useCompressionStream:$,passThrough:F,encrypted:!!(W&&Tr(W)||R&&Tr(R))||F&&ye,signature:be,compressionMethod:ee})),ke=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let s,i=new w,a=0;return n&&(i=new w(t?r?24:20:r?16:12),s=Er(i),r&&(a=4,Fr(s,0,I))),{dataDescriptorArray:i,dataDescriptorView:s,dataDescriptorOffset:a}})(c),ze=Tr(Se.localHeaderArray,ke.dataDescriptorArray);let ve;oe=ze+ae,e.options.usdz&&(oe+=oe+64),e.pendingEntriesSize+=oe;try{ve=await(async(e,r,s,a,o)=>{const{files:c,writer:l}=e,{keepOrder:f,dataDescriptor:p,signal:h}=o,{headerInfo:m}=a,{usdz:b}=e.options,S=t.from(c.values()).pop();let k,z,v,A,C,_,D,F={};c.set(r,F);try{let t;f&&(t=S&&S.lock,F.lock=new y((e=>v=e))),!(o.bufferedWrite||e.writerLocked||e.bufferedWrites&&f)&&p||b?(_=l,await W()):(_=new x,D=new u(_.readable).blob(),_.writable.size=0,k=!0,e.bufferedWrites++,await rn(l)),await rn(_);const{writable:m}=l;let{diskOffset:z}=l;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new w(4);Fr(Er(t),0,U),await vr(m,t),e.offset+=4}b&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:r,extraFieldLength:s}=n,i=Er(r),a=64-(t+Tr(r))%64;4>a&&(a+=64);const o=new w(a),c=Er(o);Dr(c,0,6534),Dr(c,2,a-2);const l=r;n.localHeaderArray=r=new w(Tr(l)+a),Rr(r,l),Rr(r,o,Tr(l)),i=Er(r),Dr(i,28,s+a),e.metadataSize+=a})(a,e.offset-z),k||(await t,await R(m));const{diskNumber:T}=l;if(C=!0,F.diskNumberStart=T,F=await(async(e,t,{diskNumberStart:r,lock:s},a,o,c)=>{const{headerInfo:l,dataDescriptorInfo:u,metadataSize:f}=a,{localHeaderArray:d,headerArray:p,lastModDate:h,rawLastModDate:g,encrypted:m,compressed:y,version:b,compressionMethod:S,rawExtraFieldExtendedTimestamp:k,extraFieldExtendedTimestampFlag:z,rawExtraFieldNTFS:v,rawExtraFieldAES:x}=l,{dataDescriptorArray:A}=u,{rawFilename:C,lastAccessDate:_,creationDate:D,password:F,rawPassword:W,level:R,zip64:T,zip64UncompressedSize:L,zip64CompressedSize:U,zip64Offset:I,zip64DiskNumberStart:N,zipCrypto:q,dataDescriptor:O,directory:P,versionMadeBy:H,rawComment:M,rawExtraField:B,useWebWorkers:V,onstart:Z,onprogress:K,onend:X,signal:Y,encryptionStrength:j,extendedTimestamp:J,msDosCompatible:Q,internalFileAttributes:$,externalFileAttributes:ee,useCompressionStream:ne,passThrough:re}=c,se={lock:s,versionMadeBy:H,zip64:T,directory:!!P,filenameUTF8:!0,rawFilename:C,commentUTF8:!0,rawComment:M,rawExtraFieldExtendedTimestamp:k,rawExtraFieldNTFS:v,rawExtraFieldAES:x,rawExtraField:B,extendedTimestamp:J,msDosCompatible:Q,internalFileAttributes:$,externalFileAttributes:ee,diskNumberStart:r};let{signature:ie,uncompressedSize:ae}=c,oe=0;re||(ae=0);const{writable:ce}=t;if(e){e.chunkSize=te(o),await vr(ce,d);const t=e.readable,n=t.size=e.size,r={options:{codecType:ut,level:R,rawPassword:W,password:F,encryptionStrength:j,zipCrypto:m&&q,passwordVerification:m&&q&&g>>8&255,signed:!re,compressed:y&&!re,encrypted:m&&!re,useWebWorkers:V,useCompressionStream:ne,transferStreams:!1},config:o,streamOptions:{signal:Y,size:n,onstart:Z,onprogress:K,onend:X}},s=await Ct({readable:t,writable:ce},r);oe=s.outputSize,re||(ae=s.inputSize,ie=s.signature),ce.size+=ae}else await vr(ce,d);let le;if(T){let e=4;L&&(e+=8),U&&(e+=8),I&&(e+=8),N&&(e+=4),le=new w(e)}else le=new w;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:s,uncompressedSize:a,headerInfo:o,dataDescriptorInfo:c}=e,{headerView:l,encrypted:u}=o,{dataDescriptorView:f,dataDescriptorOffset:d}=c,{zip64:w,zip64UncompressedSize:p,zip64CompressedSize:h,zipCrypto:g,dataDescriptor:m}=t;if(u&&!g||n===G||(Fr(l,10,n),m&&Fr(f,d,n)),w){const e=Er(r);Dr(e,0,1),Dr(e,2,Tr(r)-4);let t=4;p&&(Fr(l,18,E),Wr(e,t,i(a)),t+=8),h&&(Fr(l,14,E),Wr(e,t,i(s))),m&&(Wr(f,d+4,i(s)),Wr(f,d+12,i(a)))}else Fr(l,14,s),Fr(l,18,a),m&&(Fr(f,d+4,s),Fr(f,d+8,a))})({signature:ie,rawExtraFieldZip64:le,compressedSize:oe,uncompressedSize:ae,headerInfo:l,dataDescriptorInfo:u},c),O&&await vr(ce,A),n.assign(se,{uncompressedSize:ae,compressedSize:oe,lastModDate:h,rawLastModDate:g,creationDate:D,lastAccessDate:_,encrypted:m,zipCrypto:q,size:f+oe,compressionMethod:S,version:b,headerArray:p,signature:ie,rawExtraFieldZip64:le,extraFieldExtendedTimestampFlag:z,zip64UncompressedSize:L,zip64CompressedSize:U,zip64Offset:I,zip64DiskNumberStart:N}),se})(s,_,F,a,e.config,o),C=!1,c.set(r,F),F.filename=r,k){await _.writable.getWriter().close();let e=await D;await t,await W(),A=!0,p||(e=await(async(e,t,n,{zipCrypto:r})=>{let s;s=await t.slice(0,26).arrayBuffer(),26!=s.byteLength&&(s=s.slice(0,26));const i=new g(s);return e.encrypted&&!r||Fr(i,14,e.signature),e.zip64?(Fr(i,18,E),Fr(i,22,E)):(Fr(i,18,e.compressedSize),Fr(i,22,e.uncompressedSize)),await vr(n,new w(s)),t.slice(s.byteLength)})(F,e,m,o)),await R(m),F.diskNumberStart=l.diskNumber,z=l.diskOffset,await e.stream().pipeTo(m,{preventClose:!0,preventAbort:!0,signal:h}),m.size+=e.size,A=!1}if(F.offset=e.offset-z,F.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:s}=e,{zip64UncompressedSize:a,zip64CompressedSize:o,zip64Offset:c,zip64DiskNumberStart:l}=t,u=Er(n);let f=4;a&&(f+=8),o&&(f+=8),c&&(Wr(u,f,i(r)),f+=8),l&&Fr(u,f,s)})(F,o);else if(F.offset>E)throw new d(mr);return e.offset+=F.size,F}catch(t){if(k&&A||!k&&C){if(e.hasCorruptedEntries=!0,t)try{t.corruptedEntry=!0}catch(e){}k?e.offset+=_.writable.size:e.offset=_.writable.size}throw c.delete(r),t}finally{k&&e.bufferedWrites--,v&&v(),z&&z()}async function W(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new y((t=>z=()=>{e.writerLocked=!1,t()})),await t}async function R(e){Tr(m.localHeaderArray)>l.availableSize&&(l.availableSize=0,await vr(e,new w))}})(e,r,s,{headerInfo:Se,dataDescriptorInfo:ke,metadataSize:ze},c)}finally{e.pendingEntriesSize-=oe}return n.assign(ve,{name:r,comment:m,extraField:ie}),new Un(ve)})(c,e,r,s),l.add(m),await m}catch(t){throw c.filenames.delete(e),t}finally{l.delete(m);const e=kr.shift();e?e():Sr--}}async close(e=new w,n={}){const{pendingAddFileCalls:r,writer:s}=this,{writable:o}=s;for(;r.size;)await y.allSettled(t.from(r));return await(async(e,n,r)=>{const{files:s,writer:o}=e,{diskOffset:c,writable:l}=o;let{diskNumber:u}=o,f=0,p=0,h=e.offset-c,g=s.size;for(const[,e]of s){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:r,rawComment:s,rawExtraFieldNTFS:i,rawExtraField:o,extendedTimestamp:c,extraFieldExtendedTimestampFlag:l,lastModDate:u}=e;let f;if(c){f=new w(9);const e=Er(f);Dr(e,0,M),Dr(e,2,5),_r(e,4,l),Fr(e,5,a.floor(u.getTime()/1e3))}else f=new w;e.rawExtraFieldCDExtendedTimestamp=f,p+=46+Tr(t,s,n,r,i,f,o)}const m=new w(p),y=Er(m);await rn(o);let b=0;for(const[e,n]of t.from(s.values()).entries()){const{offset:t,rawFilename:i,rawExtraFieldZip64:a,rawExtraFieldAES:c,rawExtraFieldCDExtendedTimestamp:u,rawExtraFieldNTFS:d,rawExtraField:w,rawComment:p,versionMadeBy:h,headerArray:g,directory:S,zip64:k,zip64UncompressedSize:z,zip64CompressedSize:v,zip64DiskNumberStart:x,zip64Offset:A,msDosCompatible:C,internalFileAttributes:_,externalFileAttributes:D,diskNumberStart:F,uncompressedSize:W,compressedSize:R}=n,L=Tr(a,c,u,d,w);Fr(y,f,N),Dr(y,f+4,h);const U=Er(g);z||Fr(U,18,W),v||Fr(U,14,R),Rr(m,g,f+6),Dr(y,f+30,L),Dr(y,f+32,Tr(p)),Dr(y,f+34,k&&x?T:F),Dr(y,f+36,_),D?Fr(y,f+38,D):S&&C&&_r(y,f+38,16),Fr(y,f+42,k&&A?E:t),Rr(m,i,f+46),Rr(m,a,f+46+Tr(i)),Rr(m,c,f+46+Tr(i,a)),Rr(m,u,f+46+Tr(i,a,c)),Rr(m,d,f+46+Tr(i,a,c,u)),Rr(m,w,f+46+Tr(i,a,c,u,d)),Rr(m,p,f+46+Tr(i)+L);const I=46+Tr(i,p)+L;if(f-b>o.availableSize&&(o.availableSize=0,await vr(l,m.slice(b,f)),b=f),f+=I,r.onprogress)try{await r.onprogress(e+1,s.size,new Un(n))}catch(e){}}await vr(l,b?m.slice(b):m);let S=o.diskNumber;const{availableSize:k}=o;H>k&&S++;let z=Ar(e,r,Fn);if(h>E||p>E||g>T||S>T){if(!1===z)throw new d(mr);z=!0}const v=new w(z?98:H),x=Er(v);f=0,z&&(Fr(x,0,O),Wr(x,4,i(44)),Dr(x,12,45),Dr(x,14,45),Fr(x,16,S),Fr(x,20,u),Wr(x,24,i(g)),Wr(x,32,i(g)),Wr(x,40,i(p)),Wr(x,48,i(h)),Fr(x,56,P),Wr(x,64,i(h)+i(p)),Fr(x,72,S+1),Ar(e,r,"supportZip64SplitFile",!0)&&(S=T,u=T),g=T,h=E,p=E,f+=76),Fr(x,f,q),Dr(x,f+4,S),Dr(x,f+6,u),Dr(x,f+8,g),Dr(x,f+10,g),Fr(x,f+12,p),Fr(x,f+16,h);const A=Tr(n);if(A){if(A>T)throw new d(ur);Dr(x,f+20,A)}await vr(l,v),A&&await vr(l,n)})(this,e,n),Ar(this,n,"preventClose")||await o.getWriter().close(),s.getData?s.getData():o}}async function vr(e,t){const n=e.getWriter();try{await n.ready,e.size+=Tr(t),await n.write(t)}finally{n.releaseLock()}}function xr(e){if(e)return(i(e.getTime())+i(116444736e5))*i(1e4)}function Ar(e,t,n,r){const s=t[n]===G?e.options[n]:t[n];return s===G?r:s}function Cr(e){return e+5*(a.floor(e/16383)+1)}function _r(e,t,n){e.setUint8(t,n)}function Dr(e,t,n){e.setUint16(t,n,!0)}function Fr(e,t,n){e.setUint32(t,n,!0)}function Wr(e,t,n){e.setBigUint64(t,n,!0)}function Rr(e,t,n){e.set(t,n)}function Er(e){return new g(e.buffer)}function Tr(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}let Lr;try{Lr=void 0===k&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:void 0===k?location.href:R&&"SCRIPT"===R.tagName.toUpperCase()&&R.src||new f("zip.min.js",k.baseURI).href}catch(e){}ne({baseURL:Lr}),((e,t={})=>{const n='const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self,k=void 0,v="undefined",S="function";class z{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const C=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;C[e]=t}class x{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^C[255&(t^e[n])];this.t=t}get(){return~this.t}}class A extends p{constructor(){let e;const t=new x;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const _={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=_.i(n);return 32===r?e.concat(t):_.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+_.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=_.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=_.i(s);return r.push(_.h(t+i&31,t+i>32?n:r.pop(),1)),r}},I={bytes:{p(e){const t=_.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},m(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}P(){const e=this;let t=e.C;const n=e.S;t=_.concat(t,[_.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.I(t.splice(0,16));return e.reset(),n}D(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}V(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.V(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.V(5,o)+n.D(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.V(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},D={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew V.R(I.bytes.m(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=_;for(t=I.bytes.m(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).P());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.U[0].update(r[0]),t.U[1].update(r[1]),t.K=new n(t.U[0])}reset(){const e=this;e.K=new e.M(e.U[0]),e.N=!1}update(e){this.N=!0,this.K.update(e)}digest(){const e=this,t=e.K.P(),n=new e.M(e.U[1]).update(t).P();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},R=typeof h!=v&&typeof h.getRandomValues==S,B="Invalid password",E="Invalid signature",M="zipjs-abort-check-password";function U(e){return R?h.getRandomValues(e):D.getRandomValues(e)}const K=16,N={name:"PBKDF2"},O=t.assign({hash:{name:"HMAC"}},N),T=t.assign({iterations:1e3,hash:{name:"SHA-1"}},N),W=["deriveBits"],j=[8,12,16],H=[16,24,32],L=10,F=[0,0,0,0],q=typeof h!=v,G=q&&h.subtle,J=q&&typeof G!=v,Q=I.bytes,X=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},Y=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=_.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return _.u(t,s)}},Z=V.R;let $=q&&J&&typeof G.importKey==S,ee=q&&J&&typeof G.deriveBits==S;class te extends p{constructor({password:e,rawPassword:n,signed:r,encryptionStrength:o,checkPasswordOnly:c}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),signed:r,X:o-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:o,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await se(e,t,n,ce(r,0,j[t])),o=ce(r,j[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(B)})(n,o,r,ce(e,0,j[o]+2)),e=ce(e,j[o]+2),c?t.error(new s(M)):f()):await a;const l=new i(e.length-L-(e.length-L)%K);t.enqueue(re(n,e,l,0,L,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;if(r&&n){await c;const f=ce(o,0,o.length-L),a=ce(o,o.length-L);let l=new i;if(f.length){const e=ae(Q,f);r.update(e);const t=n.update(e);l=fe(Q,t)}if(t){const e=ce(fe(Q,r.digest()),0,L);for(let t=0;L>t;t++)if(e[t]!=a[t])throw new s(E)}e.enqueue(l)}}})}}class ne extends p{constructor({password:e,rawPassword:n,encryptionStrength:r}){let s;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=U(new i(j[t]));return oe(r,await se(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%K);a.set(f,0),t.enqueue(re(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:r,ready:o}=this;if(n&&t){await o;let c=new i;if(r.length){const e=t.update(ae(Q,r));n.update(e),c=fe(Q,e)}s.signature=fe(Q,n.digest()).slice(0,L),e.enqueue(oe(c,s.signature))}}}),s=this}}function re(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=oe(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%K)),u=0;l-K>=u;u+=K){const e=ae(Q,ce(t,u,u+K));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(fe(Q,s),u+r)}return e.pending=ce(t,u),n}async function se(n,r,s,o){n.password=null;const c=await(async(e,t,n,r,s)=>{if(!$)return V.importKey(t);try{return await G.importKey("raw",t,n,!1,s)}catch(e){return $=!1,V.importKey(t)}})(0,s,O,0,W),f=await(async(e,t,n)=>{if(!ee)return V.B(t,e.salt,T.iterations,n);try{return await G.deriveBits(e,t,n)}catch(r){return ee=!1,V.B(t,e.salt,T.iterations,n)}})(t.assign({salt:o},T),c,8*(2*H[r]+2)),a=new i(f),l=ae(Q,ce(a,0,H[r])),u=ae(Q,ce(a,H[r],2*H[r])),w=ce(a,2*H[r]);return t.assign(n,{keys:{key:l,$:u,passwordVerification:w},Y:new Y(new X(l),e.from(F)),Z:new Z(u)}),w}function ie(e,t){return t===k?(e=>{if(typeof w==v){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),i=~e.te.get(),e.keys=[n,s,i]}function ye(e){const t=2|e.keys[2];return me(r.imul(t,1^t)>>>8)}function me(e){return 255&e}function be(e){return 4294967295&e}const ge="deflate-raw";class ke extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=Se(super.readable);i&&!c||!f||(w=new A,d=xe(d,w)),s&&(d=Ce(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=xe(d,new ue(e)):(h=new ne(e),d=xe(d,h))),ze(u,d,(()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ve extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=Se(super.readable);o&&(i?d=xe(d,new le(e)):(h=new te(e),d=xe(d,h))),a&&(d=Ce(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new A,d=xe(d,w)),ze(this,d,(()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(E)}}))}}function Se(e){return xe(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ze(e,n,r){n=xe(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Ce(e,t,n,r,s){try{e=xe(e,new(t&&r?r:s)(ge,n))}catch(r){if(!t)return e;try{e=xe(e,new s(ge,n))}catch(t){return e}}return e}function xe(e,t){return e.pipeThrough(t)}const Ae="data",_e="close";class Ie extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=ke:s.startsWith("inflate")&&(i=ve);let o=0,c=0;const f=new i(e,n),a=super.readable,l=new p({transform(e,t){e&&e.length&&(c+=e.length,t.enqueue(e))},flush(){t.assign(r,{inputSize:c})}}),u=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=f;t.assign(r,{signature:e,outputSize:o,inputSize:c})}});t.defineProperty(r,"readable",{get:()=>a.pipeThrough(l).pipeThrough(f).pipeThrough(u)})}}class Pe extends p{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new i(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}const De=new a,Ve=new a;let Re,Be=0,Ee=!0;async function Me(e){try{const{options:t,scripts:r,config:s}=e;if(r&&r.length)try{Ee?importScripts.apply(k,r):await Ue(r)}catch(e){Ee=!1,await Ue(r)}self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new z(self.Deflate)),self.Inflate&&(s.DecompressionStream=new z(self.Inflate));const i={highWaterMark:1},o=e.readable||new y({async pull(e){const t=new u((e=>De.set(Be,e)));Ke({type:"pull",messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ve.set(Be,t),Ke({type:Ae,value:e,messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new Ie(t,s);Re=new AbortController;const{signal:a}=Re;await o.pipeThrough(f).pipeThrough(new Pe(s.chunkSize)).pipeTo(c,{signal:a,preventClose:!0,preventAbort:!0}),await c.getWriter().close();const{signature:l,inputSize:w,outputSize:h}=f;Ke({type:_e,result:{signature:l,inputSize:w,outputSize:h}})}catch(e){Ne(e)}}async function Ue(e){for(const t of e)await import(t)}function Ke(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Ne(e=new s("Unknown error")){const{message:t,stack:n,code:r,name:i}=e;d({error:{message:t,stack:n,code:r,name:i}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&Me(e),t==Ae){const e=De.get(n);De.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ve.get(n);Ve.delete(n),e()}t==_e&&Re.abort()}catch(e){Ne(e)}}));const Oe=-2;function Te(t){return We(t.map((([t,n])=>new e(t).fill(n,0,t))))}function We(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?We(n):n)),[])}const je=[0,1,2,3].concat(...Te([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function He(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Le(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}He.ge=[0,1,2,3,4,5,6,7].concat(...Te([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),He.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],He.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],He.Se=e=>256>e?je[e]:je[256+(e>>>7)],He.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],He.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],He.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],He.Ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Fe=Te([[144,8],[112,9],[24,7],[8,8]]);Le._e=We([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Fe[t]])));const qe=Te([[30,5]]);function Ge(e,t,n,r,s){const i=this;i.Ie=e,i.Pe=t,i.De=n,i.Ve=r,i.Re=s}Le.Be=We([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,qe[t]]))),Le.Ee=new Le(Le._e,He.ze,257,286,15),Le.Me=new Le(Le.Be,He.Ce,0,30,15),Le.Ue=new Le(null,He.xe,0,19,7);const Je=[new Ge(0,0,0,0,0),new Ge(4,4,8,4,1),new Ge(4,5,16,8,1),new Ge(4,6,32,32,1),new Ge(4,4,16,16,2),new Ge(8,16,32,32,2),new Ge(8,16,128,128,2),new Ge(8,32,128,256,2),new Ge(32,128,258,1024,2),new Ge(32,258,258,4096,2)],Qe=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Xe=113,Ye=666,Ze=262;function $e(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function et(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,A,_,I,P,D,V,R,B,E,M,U;const K=new He,N=new He,O=new He;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)U[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?U[2*n]+=i:0!==n?(n!=r&&U[2*n]++,U[32]++):i>10?U[36]++:U[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ke[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,U)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,U),o--),Y(16,U),X(o-3,2)):o>10?(Y(18,U),X(o-11,7)):(Y(17,U),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(He.ge[n]+256+1)]++,M[2*He.Se(t)]++),!(8191&W)&&D>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+He.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ke.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;D>0?(K.ne(e),N.ne(e),o=(()=>{let t;for(G(E,K.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===U[2*He.Ae[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Le._e,Le.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(U[2*He.Ae[r]+1],3);Z(E,e-1),Z(M,t-1)})(K.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-A-C,0===s&&0===C&&0===A)s=f;else if(-1==s)s--;else if(C>=f+f-Ze){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+A,s),A+=e,3>A||(p=255&u[C],p=(p<A&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=_;const o=C>f-Ze?C-(f-Ze):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>_||(r>>=2),c>A&&(c=A);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>A?A:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],U=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Oe:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=Xe,c=0,K.re=E,K.ie=Le.Ee,N.re=M,N.ie=Le.Me,O.re=U,O.ie=Le.Ue,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve,C=0,k=0,A=0,v=_=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=Xe&&n!=Ye?Oe:(e.Oe=null,e.Ne=null,e.Ke=null,d=null,h=null,u=null,e.Fe=null,n==Xe?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Oe:(Je[D].Re!=Je[t].Re&&0!==e.qe&&(r=e.Ye(1)),D!=t&&(D=t,P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve),V=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Oe;if(3>i)return 0;for(i>f-Ze&&(i=f-Ze,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Oe;if(!r.$e||!r.et&&0!==r.We||n==Ye&&4!=i)return r.Le=Qe[4],Oe;if(0===r.tt)return r.Le=Qe[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(D-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=Xe,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=Qe[7],-5;if(n==Ye&&0!==t.We)return r.Le=Qe[7],-5;if(0!==t.We||0!==A||0!=i&&n!=Ye){switch(R=-1,Je[D].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=A){if(ie(),0===A&&0==e)return 0;if(0===A)break}if(C+=A,A=0,n=k+r,(0===C||C>=n)&&(A=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Ze&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<f-Ze||2!=V&&(v=oe(r)),3>v)n=ee(0,255&u[C]),A--,C++;else if(n=ee(C-x,v-3),A-=v,v>P||3>A)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<_&&f-Ze>=(C-s&65535)&&(2!=V&&(v=oe(s)),5>=v&&(1==V||3==v&&C-x>4096)&&(v=2)),3>_||v>_)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,A--,0===t.tt)return 0}else z=1,C++,A--;else{r=C+A-3,n=ee(C-1-S,_-3),A-=_-1,_-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Le._e),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function tt(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function nt(e){const t=new tt,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}tt.prototype={He(e,t){const n=this;return n.Fe=new et,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Oe},Qe(){const e=this;if(!e.Fe)return Oe;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Oe},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Oe},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ke.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const rt=-2,st=-3,it=-5,ot=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],ct=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ft=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],at=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],lt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ut=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],wt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ht(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,A,_,I,P;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return st;if(0>(I-=n[g]))return st;for(n[g]+=I,i[1]=k=0,C=1,_=2;0!=--g;)i[_]=k+=n[C],_++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>A+S;){if(b++,A+=S,P=m-A,P=P>S?S:P,(y=1<<(k=v-A))>p+1&&(y-=p+1,_=v,P>k))for(;++kn[++_];)y-=n[_];if(P=1<1440)return st;s[b]=x=h[0],h[0]+=P,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>A-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-A,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>A;P>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<c;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==st?f.Le="oversubscribed dynamic bit lengths tree":a!=it&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=st),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,at,lt,a,i,u,e,t),0!=h||0===i[0]?(h==st?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=st),h):(c(288),h=o(s,n,r,0,ut,wt,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==st?w.Le="oversubscribed distance tree":h==it?(w.Le="incomplete distance tree",h=st):-4!=h&&(w.Le="empty distance tree with lengths",h=st),h):0)}}function dt(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15,k=a[z+2]+(w&ot[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(64&u)return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st;f+=a[z+2],f+=w&ot[u],z=3*(l+f),u=a[z]}break}if(64&u)return 32&u?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st);if(f+=a[z+2],f+=w&ot[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,A=0,_=0;for(_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,m=p(u,w,r,h,s,d,e,y),_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=SA;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>>=n[g+1],A-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(16&k){a=15&k,i=n[g+2],t=2;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}if(32&k){t=7;break}return t=9,y.Le="invalid literal/length code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 2:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=n[g+1],A-=n[g+1],k=n[g],16&k){a=15&k,l=n[g+2],t=4;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 4:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(A-=8,v++,_--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ht.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=ct,r[0]=ft,0);const pt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function yt(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new dt;let h=0,d=new f(4320);const p=new ht;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ht.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[pt[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==st&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&ot[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,A=[],_=[],I=[],P=[],A[0]=9,_[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,A,_,I,P,d,e),0!=i)return i==st&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(A[0],_[0],d,I[0],d,P[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const mt=13,bt=[0,0,255,255];function gt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):rt}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),rt):(e.zt=r,n.gt.kt=new yt(n,1<{let n,r;if(!e||!e.gt||!e.et)return rt;const s=e.gt;for(t=4==t?it:0,n=it;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=mt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=mt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=mt,e.Le="incorrect header check",s.marker=5;break}if(!(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=mt,e.Le="need dictionary",s.marker=0,rt;case 7:if(n=s.kt.ut(e,n),n==st){s.mode=mt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case mt:return st;default:return rt}},e._t=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return rt;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return rt;const c=e.gt;if(c.mode!=mt&&(c.mode=mt,c.marker=0),0===(n=e.We))return it;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==bt[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?st:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Pt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():rt}function kt(){}function vt(e){const t=new kt,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t.At(0),c&&a===it){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}kt.prototype={xt(e){const t=this;return t.gt=new gt,e||(e=15),t.gt.xt(t,e)},At(e){const t=this;return t.gt?t.gt.At(t,e):rt},Ct(){const e=this;if(!e.gt)return rt;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):rt},_t(e,t){const n=this;return n.gt?n.gt._t(n,e,t):rt},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=nt,self.Inflate=vt};\n',r=()=>t.useDataURI?"data:text/javascript,"+encodeURIComponent(n):f.createObjectURL(new m([n],{type:"text/javascript"}));e({workerScripts:{inflate:[r],deflate:[r]}})})(ne),e.BlobReader=Ot,e.BlobWriter=Pt,e.Data64URIReader=class extends Nt{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const r=e.indexOf(",")+1;n.assign(this,{dataURI:e,dataStart:r,size:a.floor(.75*(t-r))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,s=new w(t),i=4*a.floor(e/3),o=atob(r.substring(i+n,4*a.ceil((e+t)/3)+n)),c=e-3*a.floor(i/4);for(let e=c;c+t>e;e++)s[e-c]=o.charCodeAt(e);return s}},e.Data64URIWriter=class extends qt{constructor(e){super(),n.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,s=t.pending;const i=t.pending.length;for(t.pending="",n=0;n<3*a.floor((i+e.length)/3)-i;n++)s+=r.fromCharCode(e[n]);for(;n2?t.data+=v(s):t.pending=s}getData(){return this.data+v(this.pending)}},e.ERR_BAD_FORMAT=In,e.ERR_CENTRAL_DIRECTORY_NOT_FOUND=On,e.ERR_DUPLICATED_NAME=lr,e.ERR_ENCRYPTED=Mn,e.ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND=qn,e.ERR_EOCDR_NOT_FOUND=Nn,e.ERR_EXTRAFIELD_ZIP64_NOT_FOUND=Hn,e.ERR_HTTP_RANGE=Ft,e.ERR_INVALID_COMMENT=ur,e.ERR_INVALID_ENCRYPTION_STRENGTH=pr,e.ERR_INVALID_ENTRY_COMMENT=fr,e.ERR_INVALID_ENTRY_NAME=dr,e.ERR_INVALID_EXTRAFIELD_DATA=gr,e.ERR_INVALID_EXTRAFIELD_TYPE=hr,e.ERR_INVALID_PASSWORD=he,e.ERR_INVALID_SIGNATURE=ge,e.ERR_INVALID_VERSION=wr,e.ERR_ITERATOR_COMPLETED_TOO_SOON=Wt,e.ERR_LOCAL_FILE_HEADER_NOT_FOUND=Pn,e.ERR_SPLIT_ZIP_FILE=Zn,e.ERR_UNDEFINED_UNCOMPRESSED_SIZE=yr,e.ERR_UNSUPPORTED_COMPRESSION=Vn,e.ERR_UNSUPPORTED_ENCRYPTION=Bn,e.ERR_UNSUPPORTED_FORMAT=mr,e.HttpRangeReader=class extends en{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}},e.HttpReader=en,e.Reader=Nt,e.SplitDataReader=tn,e.SplitDataWriter=nn,e.SplitZipReader=cn,e.SplitZipWriter=ln,e.TextReader=class extends Ot{constructor(e){super(new m([e],{type:"text/plain"}))}},e.TextWriter=class extends Pt{constructor(e){super(e),n.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,r=await super.getData();if(r.text&&t)return r.text();{const t=new FileReader;return new y(((s,i)=>{n.assign(t,{onload:({target:e})=>s(e.result),onerror:()=>i(t.error)}),t.readAsText(r,e)}))}}},e.Uint8ArrayReader=class extends Nt{constructor(e){super(),n.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}},e.Uint8ArrayWriter=class extends qt{init(e=0){n.assign(this,{offset:0,array:new w(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new w(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}},e.Writer=qt,e.ZipReader=jn,e.ZipReaderStream=class{constructor(e={}){const{readable:t,writable:n}=new x,r=new jn(t,e).getEntriesGenerator();this.readable=new A({async pull(e){const{done:t,value:n}=await r.next();if(t)return e.close();const s={...n,readable:(()=>{const{readable:e,writable:t}=new x;if(n.getData)return n.getData(t),e})()};delete s.getData,e.enqueue(s)}}),this.writable=n}},e.ZipWriter=zr,e.ZipWriterStream=class{constructor(e={}){const{readable:t,writable:n}=new x;this.readable=t,this.zipWriter=new zr(n,e)}transform(e){const{readable:t,writable:n}=new x({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new x;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}},e.configure=ne,e.getMimeType=()=>"application/octet-stream",e.initReader=sn,e.initShimAsyncCodec=(e,t={},n)=>({Deflate:se(e.Deflate,t.deflate,n),Inflate:se(e.Inflate,t.inflate,n)}),e.initStream=rn,e.initWriter=an,e.readUint8Array=on,e.terminateWorkers=async()=>{await y.allSettled(vt.map((e=>(_t(e),e.terminate()))))}})); diff --git a/index.cjs b/index.cjs index 62c37d52..aad5f109 100644 --- a/index.cjs +++ b/index.cjs @@ -1240,7 +1240,6 @@ function Deflate() { } // Copy as much as possible from input to output: - // eslint-disable-next-line no-constant-condition while (true) { // Fill the win as much as possible: if (lookahead <= 1) { @@ -1335,7 +1334,6 @@ function Deflate() { // We check for insufficient lookahead only every 8th comparison; // the 256th check will be made at strstart+258. - // eslint-disable-next-line no-empty do { // empty block } while (win[++scan] == win[++match] && win[++scan] == win[++match] && win[++scan] == win[++match] @@ -1371,7 +1369,6 @@ function Deflate() { let hash_head = 0; // head of the hash chain let bflush; // set if current block must be flushed - // eslint-disable-next-line no-constant-condition while (true) { // Make sure that we always have enough lookahead, except // at the end of the input file. We need MAX_MATCH bytes @@ -1478,7 +1475,6 @@ function Deflate() { let max_insert; // Process the input block. - // eslint-disable-next-line no-constant-condition while (true) { // Make sure that we always have enough lookahead, except // at the end of the input file. We need MAX_MATCH bytes @@ -2828,7 +2824,6 @@ function InfCodes() { m = q < s.read ? s.read - q - 1 : s.end - q; // process input and output based on current state - // eslint-disable-next-line no-constant-condition while (true) { switch (mode) { // waiting for "i:"=input, "o:"=output, "x:"=nothing @@ -3319,7 +3314,6 @@ function InfBlocks(z, w) { // process input based on current state // DEBUG dtree - // eslint-disable-next-line no-constant-condition while (true) { let bl, bd, tl, td, bl_, bd_, tl_, td_; switch (mode) { @@ -3596,7 +3590,6 @@ function InfBlocks(z, w) { mode = DTREE; /* falls through */ case DTREE: - // eslint-disable-next-line no-constant-condition while (true) { t = table; if (index >= 258 + (t & 0x1f) + ((t >> 5) & 0x1f)) { @@ -3904,7 +3897,6 @@ function Inflate() { const istate = z.istate; f = f == Z_FINISH ? Z_BUF_ERROR : Z_OK; r = Z_BUF_ERROR; - // eslint-disable-next-line no-constant-condition while (true) { switch (istate.mode) { case METHOD: @@ -4284,6 +4276,8 @@ const BITFLAG_LEVEL = 0x06; const BITFLAG_DATA_DESCRIPTOR = 0x0008; const BITFLAG_LANG_ENCODING_FLAG = 0x0800; const FILE_ATTR_MSDOS_DIR_MASK = 0x10; +const FILE_ATTR_UNIX_DIR_MASK = 0x4000; +const FILE_ATTR_UNIX_EXECUTABLE_MASK = 0o111; const VERSION_DEFLATE = 0x14; const VERSION_ZIP64 = 0x2D; @@ -4384,7 +4378,8 @@ try { if (typeof navigator != UNDEFINED_TYPE && navigator.hardwareConcurrency) { maxWorkers = navigator.hardwareConcurrency; } -} catch (_error) { + // eslint-disable-next-line no-unused-vars +} catch (_) { // ignored } const DEFAULT_CONFIGURATION = { @@ -7390,7 +7385,8 @@ async function importKey(format, password, algorithm, extractable, keyUsages) { if (IMPORT_KEY_SUPPORTED) { try { return await subtle.importKey(format, password, algorithm, extractable, keyUsages); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { IMPORT_KEY_SUPPORTED = false; return misc.importKey(password); } @@ -7403,7 +7399,8 @@ async function deriveBits(algorithm, baseKey, length) { if (DERIVE_BITS_SUPPORTED) { try { return await subtle.deriveBits(algorithm, baseKey, length); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { DERIVE_BITS_SUPPORTED = false; return misc.pbkdf2(baseKey, algorithm.salt, DERIVED_BITS_ALGORITHM.iterations, length); } @@ -7721,11 +7718,13 @@ function pipeThroughCommpressionStream(readable, useCompressionStream, options, try { const CompressionStream = useCompressionStream && CodecStreamNative ? CodecStreamNative : CodecStream; readable = pipeThrough(readable, new CompressionStream(COMPRESSION_FORMAT, options)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { if (useCompressionStream) { try { readable = pipeThrough(readable, new CodecStream(COMPRESSION_FORMAT, options)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { return readable; } } else { @@ -7968,7 +7967,8 @@ class ProgressWatcherStream extends TransformStream { async function callHandler(handler, ...parameters) { try { await handler(...parameters); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -7985,7 +7985,8 @@ function createWebWorkerInterface(workerData, config) { let worker; try { worker = getWebWorker(workerData.scripts[0], baseURL, workerData); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { WEB_WORKERS_SUPPORTED = false; return createWorkerInterface(workerData, config); } @@ -8088,13 +8089,15 @@ function getWebWorker(url, baseURL, workerData) { } try { scriptUrl = new URL(url, baseURL); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { scriptUrl = url; } if (classicWorkersSupported) { try { worker = new Worker(scriptUrl); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { classicWorkersSupported = false; worker = new Worker(scriptUrl, workerOptions); } @@ -8132,7 +8135,8 @@ function sendMessage(message, { worker, writer, onTaskFinished, transferStreams try { worker.postMessage(message, transferables); return true; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { transferStreamsSupported = false; message.readable = message.writable = null; worker.postMessage(message); @@ -8275,7 +8279,8 @@ function terminateWorker(workerData, workerOptions) { pool = pool.filter(data => data != workerData); try { await workerData.terminate(); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } }, terminateWorkerTimeout); @@ -8680,7 +8685,7 @@ async function initHttpReader(httpReader, sendRequest, getRequestData) { combineSizeEocd } = httpReader; if (isHttpFamily(url) && (useRangeHeader || forceRangeRequests) && (typeof preventHeadRequest == "undefined" || preventHeadRequest)) { - const response = await sendRequest(HTTP_METHOD_GET, httpReader, getRangeHeaders(httpReader, combineSizeEocd ? -END_OF_CENTRAL_DIR_LENGTH : undefined)); + const response = await sendRequest(HTTP_METHOD_GET, httpReader, getRangeHeaders(httpReader, combineSizeEocd ? -22 : undefined)); if (!forceRangeRequests && response.headers.get(HTTP_HEADER_ACCEPT_RANGES) != HTTP_RANGE_UNIT) { throw new Error(ERR_HTTP_RANGE); } else { @@ -9203,7 +9208,9 @@ const PROPERTY_NAME_RAW_LAST_ACCESS_DATE = "rawLastAccessDate"; const PROPERTY_NAME_CREATION_DATE = "creationDate"; const PROPERTY_NAME_RAW_CREATION_DATE = "rawCreationDate"; const PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE = "internalFileAttribute"; +const PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES = "internalFileAttributes"; const PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE = "externalFileAttribute"; +const PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES = "externalFileAttributes"; const PROPERTY_NAME_MS_DOS_COMPATIBLE = "msDosCompatible"; const PROPERTY_NAME_ZIP64 = "zip64"; const PROPERTY_NAME_ENCRYPTED = "encrypted"; @@ -9215,10 +9222,7 @@ const PROPERTY_NAMES = [ PROPERTY_NAME_FILENAME, PROPERTY_NAME_RAW_FILENAME, PROPERTY_NAME_COMPPRESSED_SIZE, PROPERTY_NAME_UNCOMPPRESSED_SIZE, PROPERTY_NAME_LAST_MODIFICATION_DATE, PROPERTY_NAME_RAW_LAST_MODIFICATION_DATE, PROPERTY_NAME_COMMENT, PROPERTY_NAME_RAW_COMMENT, PROPERTY_NAME_LAST_ACCESS_DATE, PROPERTY_NAME_CREATION_DATE, PROPERTY_NAME_OFFSET, PROPERTY_NAME_DISK_NUMBER_START, - PROPERTY_NAME_DISK_NUMBER_START, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, - PROPERTY_NAME_MS_DOS_COMPATIBLE, PROPERTY_NAME_ZIP64, PROPERTY_NAME_ENCRYPTED, PROPERTY_NAME_VERSION, PROPERTY_NAME_VERSION_MADE_BY, - PROPERTY_NAME_ZIPCRYPTO, "directory", "bitFlag", "signature", "filenameUTF8", "commentUTF8", "compressionMethod", "extraField", "rawExtraField", - "extraFieldZip64", "extraFieldUnicodePath", "extraFieldUnicodeComment", "extraFieldAES", "extraFieldNTFS", "extraFieldExtendedTimestamp"]; + PROPERTY_NAME_DISK_NUMBER_START, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES, PROPERTY_NAME_MS_DOS_COMPATIBLE, PROPERTY_NAME_ZIP64, PROPERTY_NAME_ENCRYPTED, PROPERTY_NAME_VERSION, PROPERTY_NAME_VERSION_MADE_BY, PROPERTY_NAME_ZIPCRYPTO, "directory", "executable", "bitFlag", "signature", "filenameUTF8", "commentUTF8", "compressionMethod", "extraField", "rawExtraField", "extraFieldZip64", "extraFieldUnicodePath", "extraFieldUnicodeComment", "extraFieldAES", "extraFieldNTFS", "extraFieldExtendedTimestamp"]; class Entry { @@ -9409,14 +9413,20 @@ class ZipReader { const extraFieldOffset = filenameOffset + fileEntry.filenameLength; const commentOffset = extraFieldOffset + fileEntry.extraFieldLength; const versionMadeBy = getUint16(directoryView, offset + 4); - const msDosCompatible = (versionMadeBy & 0) == 0; + const msDosCompatible = versionMadeBy >> 8 == 0; + const unixCompatible = versionMadeBy >> 8 == 3; const rawFilename = directoryArray.subarray(filenameOffset, extraFieldOffset); const commentLength = getUint16(directoryView, offset + 32); const endOffset = commentOffset + commentLength; const rawComment = directoryArray.subarray(commentOffset, endOffset); const filenameUTF8 = languageEncodingFlag; const commentUTF8 = languageEncodingFlag; - const directory = msDosCompatible && ((getUint8(directoryView, offset + 38) & FILE_ATTR_MSDOS_DIR_MASK) == FILE_ATTR_MSDOS_DIR_MASK); + const externalFileAttributes = getUint32(directoryView, offset + 38); + const directory = + (msDosCompatible && ((getUint8(directoryView, offset + 38) & FILE_ATTR_MSDOS_DIR_MASK) == FILE_ATTR_MSDOS_DIR_MASK)) || + (unixCompatible && (((externalFileAttributes >> 16) & FILE_ATTR_UNIX_DIR_MASK) == FILE_ATTR_UNIX_DIR_MASK)) || + (rawFilename.length && rawFilename[rawFilename.length - 1] == DIRECTORY_SIGNATURE.charCodeAt(0)); + const executable = (unixCompatible && (((externalFileAttributes >> 16) & FILE_ATTR_UNIX_EXECUTABLE_MASK) == FILE_ATTR_UNIX_EXECUTABLE_MASK)); const offsetFileEntry = getUint32(directoryView, offset + 42) + prependedDataLength; Object.assign(fileEntry, { versionMadeBy, @@ -9427,13 +9437,16 @@ class ZipReader { directory, offset: offsetFileEntry, diskNumberStart: getUint16(directoryView, offset + 34), - internalFileAttribute: getUint16(directoryView, offset + 36), - externalFileAttribute: getUint32(directoryView, offset + 38), + internalFileAttributes: getUint16(directoryView, offset + 36), + externalFileAttributes, rawFilename, filenameUTF8, commentUTF8, - rawExtraField: directoryArray.subarray(extraFieldOffset, commentOffset) + rawExtraField: directoryArray.subarray(extraFieldOffset, commentOffset), + executable }); + fileEntry.internalFileAttribute = fileEntry.internalFileAttributes; + fileEntry.externalFileAttribute = fileEntry.externalFileAttributes; const decode = getOptionValue$1(zipReader, options, "decodeText") || decodeText; const rawFilenameEncoding = filenameUTF8 ? CHARSET_UTF8 : filenameEncoding || CHARSET_CP437; const rawCommentEncoding = commentUTF8 ? CHARSET_UTF8 : commentEncoding || CHARSET_CP437; @@ -9461,7 +9474,8 @@ class ZipReader { if (onprogress) { try { await onprogress(indexFile + 1, filesLength, new Entry(fileEntry)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -9673,7 +9687,8 @@ function readCommonFooter(fileEntry, directory, dataView, offset, localDirectory }); offsetExtraField += 4 + size; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } const compressionMethod = getUint16(dataView, offset + 4); @@ -9780,7 +9795,8 @@ function readExtraFieldNTFS(extraFieldNTFS, directory) { } offsetExtraField += 4 + attributeSize; } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } try { @@ -9801,7 +9817,8 @@ function readExtraFieldNTFS(extraFieldNTFS, directory) { Object.assign(extraFieldNTFS, extraFieldData); Object.assign(directory, extraFieldData); } - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -9870,7 +9887,8 @@ function getDate(timeRaw) { const date = (timeRaw & 0xffff0000) >> 16, time = timeRaw & 0x0000ffff; try { return new Date(1980 + ((date & 0xFE00) >> 9), ((date & 0x01E0) >> 5) - 1, date & 0x001F, (time & 0xF800) >> 11, (time & 0x07E0) >> 5, (time & 0x001F) * 2, 0); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -10082,8 +10100,14 @@ async function addFile(zipWriter, name, reader, options) { const lastAccessDate = getOptionValue(zipWriter, options, PROPERTY_NAME_LAST_ACCESS_DATE); const creationDate = getOptionValue(zipWriter, options, PROPERTY_NAME_CREATION_DATE); const msDosCompatible = getOptionValue(zipWriter, options, PROPERTY_NAME_MS_DOS_COMPATIBLE, true); - const internalFileAttribute = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, 0); - const externalFileAttribute = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, 0); + let internalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES, 0); + if (internalFileAttributes === 0) { + internalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTE, 0); + } + let externalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES, 0); + if (externalFileAttributes === 0) { + externalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTE, 0); + } const passThrough = getOptionValue(zipWriter, options, "passThrough"); let password, rawPassword; if (!passThrough) { @@ -10199,8 +10223,10 @@ async function addFile(zipWriter, name, reader, options) { dataDescriptorSignature, signal, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttribute: internalFileAttributes, + internalFileAttributes, + externalFileAttribute: externalFileAttributes, + externalFileAttributes, useCompressionStream, passThrough, encrypted: Boolean((password && getLength(password)) || (rawPassword && getLength(rawPassword))) || (passThrough && encrypted), @@ -10321,7 +10347,8 @@ async function getFileEntry(zipWriter, name, reader, entryInfo, options) { if (error) { try { error.corruptedEntry = true; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -10414,8 +10441,8 @@ async function createFileEntry(reader, writer, { diskNumberStart, lock }, entryI encryptionStrength, extendedTimestamp, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, useCompressionStream, passThrough } = options; @@ -10434,8 +10461,8 @@ async function createFileEntry(reader, writer, { diskNumberStart, lock }, entryI rawExtraField, extendedTimestamp, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, diskNumberStart }; let { @@ -10595,7 +10622,8 @@ function getHeaderInfo(options) { setBigUint64(extraFieldNTFSView, 12, lastModTimeNTFS); setBigUint64(extraFieldNTFSView, 20, getTimeNTFS(lastAccessDate) || lastModTimeNTFS); setBigUint64(extraFieldNTFSView, 28, getTimeNTFS(creationDate) || lastModTimeNTFS); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { rawExtraFieldNTFS = new Uint8Array(); } } else { @@ -10890,8 +10918,8 @@ async function closeFile(zipWriter, comment, options) { zip64DiskNumberStart, zip64Offset, msDosCompatible, - internalFileAttribute, - externalFileAttribute, + internalFileAttributes, + externalFileAttributes, diskNumberStart, uncompressedSize, compressedSize @@ -10910,9 +10938,9 @@ async function closeFile(zipWriter, comment, options) { setUint16(directoryView, offset + 30, extraFieldLength); setUint16(directoryView, offset + 32, getLength(rawComment)); setUint16(directoryView, offset + 34, zip64 && zip64DiskNumberStart ? MAX_16_BITS : diskNumberStart); - setUint16(directoryView, offset + 36, internalFileAttribute); - if (externalFileAttribute) { - setUint32(directoryView, offset + 38, externalFileAttribute); + setUint16(directoryView, offset + 36, internalFileAttributes); + if (externalFileAttributes) { + setUint32(directoryView, offset + 38, externalFileAttributes); } else if (directory && msDosCompatible) { setUint8(directoryView, offset + 38, FILE_ATTR_MSDOS_DIR_MASK); } @@ -10934,7 +10962,8 @@ async function closeFile(zipWriter, comment, options) { if (options.onprogress) { try { await options.onprogress(indexFileEntry + 1, files.size, new Entry(fileEntry)); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -11457,7 +11486,8 @@ class ZipDirectoryEntry extends ZipEntry { error.cause = { entry }; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } throw error; @@ -11714,7 +11744,8 @@ async function initReaders(entry, options) { error.cause = { entry: child }; - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } throw error; @@ -11760,7 +11791,7 @@ async function exportZip(zipWriter, entry, totalSize, options) { let zipEntryOptions = {}; if (child.data instanceof Entry) { const { - externalFileAttribute, + externalFileAttributes, versionMadeBy, comment, lastModDate, @@ -11774,7 +11805,7 @@ async function exportZip(zipWriter, entry, totalSize, options) { extraFieldAES } = child.data; zipEntryOptions = { - externalFileAttribute, + externalFileAttributes, versionMadeBy, comment, lastModDate, @@ -11809,7 +11840,8 @@ async function exportZip(zipWriter, entry, totalSize, options) { entryOffsets.set(name, indexProgress); try { await options.onprogress(Array.from(entryOffsets.values()).reduce((previousValue, currentValue) => previousValue + currentValue), totalSize); - } catch (_error) { + // eslint-disable-next-line no-unused-vars + } catch (_) { // ignored } } @@ -11954,7 +11986,8 @@ function addChild(parent, name, params, directory) { let baseURL; try { baseURL = (typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.cjs', document.baseURI).href)); -} catch (_error) { + // eslint-disable-next-line no-unused-vars +} catch (_) { // ignored } configure({ baseURL }); diff --git a/index.min.js b/index.min.js index dd1b11aa..d4137977 100644 --- a/index.min.js +++ b/index.min.js @@ -1 +1 @@ -const e=-2;function t(e){return n(e.map((([e,t])=>Array(e).fill(t,0,e))))}function n(e){return e.reduce(((e,t)=>e.concat(Array.isArray(t)?n(t):t)),[])}const r=[0,1,2,3].concat(...t([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function i(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,i=e.stat_desc.static_tree,s=e.stat_desc.elems;let a,o,c,l=-1;for(n.heap_len=0,n.heap_max=573,a=0;s>a;a++)0!==r[2*a]?(n.heap[++n.heap_len]=l=a,n.depth[a]=0):r[2*a+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>l?++l:0,r[2*c]=1,n.depth[c]=0,n.opt_len--,i&&(n.static_len-=i[2*c+1]);for(e.max_code=l,a=Math.floor(n.heap_len/2);a>=1;a--)n.pqdownheap(r,a);c=s;do{a=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),o=n.heap[1],n.heap[--n.heap_max]=a,n.heap[--n.heap_max]=o,r[2*c]=r[2*a]+r[2*o],n.depth[c]=Math.max(n.depth[a],n.depth[o])+1,r[2*a+1]=r[2*o+1]=c,n.heap[1]=c++,n.pqdownheap(r,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,r=e.stat_desc.static_tree,i=e.stat_desc.extra_bits,s=e.stat_desc.extra_base,a=e.stat_desc.max_length;let o,c,l,d,f,u,p=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)c=t.heap[o],d=n[2*n[2*c+1]+1]+1,d>a&&(d=a,p++),n[2*c+1]=d,c>e.max_code||(t.bl_count[d]++,f=0,s>c||(f=i[c-s]),u=n[2*c],t.opt_len+=u*(d+f),r&&(t.static_len+=u*(r[2*c+1]+f)));if(0!==p){do{for(d=a-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[a]--,p-=2}while(p>0);for(d=a;0!==d;d--)for(c=t.bl_count[d];0!==c;)l=t.heap[--o],l>e.max_code||(n[2*l+1]!=d&&(t.opt_len+=(d-n[2*l+1])*n[2*l],n[2*l+1]=d),c--)}})(n),((e,n,r)=>{const i=[];let s,a,o,c=0;for(s=1;15>=s;s++)i[s]=c=c+r[s-1]<<1;for(a=0;n>=a;a++)o=e[2*a+1],0!==o&&(e[2*a]=t(i[o]++,o))})(r,e.max_code,n.bl_count)}}function s(e,t,n,r,i){const s=this;s.static_tree=e,s.extra_bits=t,s.extra_base=n,s.elems=r,s.max_length=i}i._length_code=[0,1,2,3,4,5,6,7].concat(...t([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),i.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],i.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],i.d_code=e=>256>e?r[e]:r[256+(e>>>7)],i.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],i.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],i.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],i.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const a=t([[144,8],[112,9],[24,7],[8,8]]);s.static_ltree=n([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,a[t]])));const o=t([[30,5]]);function c(e,t,n,r,i){const s=this;s.good_length=e,s.max_lazy=t,s.nice_length=n,s.max_chain=r,s.func=i}s.static_dtree=n([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,o[t]]))),s.static_l_desc=new s(s.static_ltree,i.extra_lbits,257,286,15),s.static_d_desc=new s(s.static_dtree,i.extra_dbits,0,30,15),s.static_bl_desc=new s(null,i.extra_blbits,0,19,7);const l=[new c(0,0,0,0,0),new c(4,4,8,4,1),new c(4,5,16,8,1),new c(4,6,32,32,1),new c(4,4,16,16,2),new c(8,16,32,32,2),new c(8,16,128,128,2),new c(8,32,128,256,2),new c(32,128,258,1024,2),new c(32,258,258,4096,2)],d=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],f=113,u=666,p=262;function m(e,t,n,r){const i=e[2*t],s=e[2*n];return s>i||i==s&&r[t]<=r[n]}function h(){const t=this;let n,r,a,o,c,h,w,g,x,b,v,y,_,k,S,z,A,C,D,U,E,W,F,j,q,T,O,R,L,I,M,P,B;const H=new i,N=new i,V=new i;let Z,K,G,X,J,Y;function Q(){let e;for(e=0;286>e;e++)M[2*e]=0;for(e=0;30>e;e++)P[2*e]=0;for(e=0;19>e;e++)B[2*e]=0;M[512]=1,t.opt_len=t.static_len=0,K=G=0}function $(e,t){let n,r=-1,i=e[1],s=0,a=7,o=4;0===i&&(a=138,o=3),e[2*(t+1)+1]=65535;for(let c=0;t>=c;c++)n=i,i=e[2*(c+1)+1],++ss?B[2*n]+=s:0!==n?(n!=r&&B[2*n]++,B[32]++):s>10?B[36]++:B[34]++,s=0,r=n,0===i?(a=138,o=3):n==i?(a=6,o=3):(a=7,o=4))}function ee(e){t.pending_buf[t.pending++]=e}function te(e){ee(255&e),ee(e>>>8&255)}function ne(e,t){let n;const r=t;Y>16-r?(n=e,J|=n<>>16-Y,Y+=r-16):(J|=e<=n;n++)if(r=s,s=e[2*(n+1)+1],++a>=o||r!=s){if(c>a)do{re(r,B)}while(0!=--a);else 0!==r?(r!=i&&(re(r,B),a--),re(16,B),ne(a-3,2)):a>10?(re(18,B),ne(a-11,7)):(re(17,B),ne(a-3,3));a=0,i=r,0===s?(o=138,c=3):r==s?(o=6,c=3):(o=7,c=4)}}function se(){16==Y?(te(J),J=0,Y=0):8>Y||(ee(255&J),J>>>=8,Y-=8)}function ae(e,n){let r,s,a;if(t.dist_buf[K]=e,t.lc_buf[K]=255&n,K++,0===e?M[2*n]++:(G++,e--,M[2*(i._length_code[n]+256+1)]++,P[2*i.d_code(e)]++),!(8191&K)&&O>2){for(r=8*K,s=E-A,a=0;30>a;a++)r+=P[2*a]*(5+i.extra_dbits[a]);if(r>>>=3,Math.floor(K/2)>G&&Math.floor(s/2)>r)return!0}return K==Z-1}function oe(e,n){let r,s,a,o,c=0;if(0!==K)do{r=t.dist_buf[c],s=t.lc_buf[c],c++,0===r?re(s,e):(a=i._length_code[s],re(a+256+1,e),o=i.extra_lbits[a],0!==o&&(s-=i.base_length[a],ne(s,o)),r--,a=i.d_code(r),re(a,n),o=i.extra_dbits[a],0!==o&&(r-=i.base_dist[a],ne(r,o)))}while(K>c);re(256,e),X=e[513]}function ce(){Y>8?te(J):Y>0&&ee(255&J),J=0,Y=0}function le(e,n,r){ne(0+(r?1:0),3),((e,n)=>{ce(),X=8,te(n),te(~n),t.pending_buf.set(g.subarray(e,e+n),t.pending),t.pending+=n})(e,n)}function de(e){((e,n,r)=>{let a,o,c=0;O>0?(H.build_tree(t),N.build_tree(t),c=(()=>{let e;for($(M,H.max_code),$(P,N.max_code),V.build_tree(t),e=18;e>=3&&0===B[2*i.bl_order[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(),a=t.opt_len+3+7>>>3,o=t.static_len+3+7>>>3,o>a||(a=o)):a=o=n+5,n+4>a||-1==e?o==a?(ne(2+(r?1:0),3),oe(s.static_ltree,s.static_dtree)):(ne(4+(r?1:0),3),((e,t,n)=>{let r;for(ne(e-257,5),ne(t-1,5),ne(n-4,4),r=0;n>r;r++)ne(B[2*i.bl_order[r]+1],3);ie(M,e-1),ie(P,t-1)})(H.max_code+1,N.max_code+1,c+1),oe(M,P)):le(e,n,r),Q(),r&&ce()})(0>A?-1:A,E-A,e),A=E,n.flush_pending()}function fe(){let e,t,r,i;do{if(i=x-F-E,0===i&&0===E&&0===F)i=c;else if(-1==i)i--;else if(E>=c+c-p){g.set(g.subarray(c,c+c),0),W-=c,E-=c,A-=c,e=_,r=e;do{t=65535&v[--r],v[r]=c>t?0:t-c}while(0!=--e);e=c,r=e;do{t=65535&b[--r],b[r]=c>t?0:t-c}while(0!=--e);i+=c}if(0===n.avail_in)return;e=n.read_buf(g,E+F,i),F+=e,3>F||(y=255&g[E],y=(y<F&&0!==n.avail_in)}function ue(e){let t,n,r=q,i=E,s=j;const a=E>c-p?E-(c-p):0;let o=I;const l=w,d=E+258;let f=g[i+s-1],u=g[i+s];L>j||(r>>=2),o>F&&(o=F);do{if(t=e,g[t+s]==u&&g[t+s-1]==f&&g[t]==g[i]&&g[++t]==g[i+1]){i+=2,t++;do{}while(g[++i]==g[++t]&&g[++i]==g[++t]&&g[++i]==g[++t]&&g[++i]==g[++t]&&g[++i]==g[++t]&&g[++i]==g[++t]&&g[++i]==g[++t]&&g[++i]==g[++t]&&d>i);if(n=258-(d-i),i=d-258,n>s){if(W=e,s=n,n>=o)break;f=g[i+s-1],u=g[i+s]}}}while((e=65535&b[e&l])>a&&0!=--r);return s>F?F:s}t.depth=[],t.bl_count=[],t.heap=[],M=[],P=[],B=[],t.pqdownheap=(e,n)=>{const r=t.heap,i=r[n];let s=n<<1;for(;s<=t.heap_len&&(s(u||(u=8),p||(p=8),m||(m=0),n.msg=null,-1==i&&(i=6),1>p||p>9||8!=u||9>d||d>15||0>i||i>9||0>m||m>2?e:(n.dstate=t,h=d,c=1<(e.total_in=e.total_out=0,e.msg=null,t.pending=0,t.pending_out=0,r=f,o=0,H.dyn_tree=M,H.stat_desc=s.static_l_desc,N.dyn_tree=P,N.stat_desc=s.static_d_desc,V.dyn_tree=B,V.stat_desc=s.static_bl_desc,J=0,Y=0,X=8,Q(),(()=>{x=2*c,v[_-1]=0;for(let e=0;_-1>e;e++)v[e]=0;T=l[O].max_lazy,L=l[O].good_length,I=l[O].nice_length,q=l[O].max_chain,E=0,A=0,F=0,C=j=2,U=0,y=0})(),0))(n))),t.deflateEnd=()=>42!=r&&r!=f&&r!=u?e:(t.lc_buf=null,t.dist_buf=null,t.pending_buf=null,v=null,b=null,g=null,t.dstate=null,r==f?-3:0),t.deflateParams=(t,n,r)=>{let i=0;return-1==n&&(n=6),0>n||n>9||0>r||r>2?e:(l[O].func!=l[n].func&&0!==t.total_in&&(i=t.deflate(1)),O!=n&&(O=n,T=l[O].max_lazy,L=l[O].good_length,I=l[O].nice_length,q=l[O].max_chain),R=r,i)},t.deflateSetDictionary=(t,n,i)=>{let s,a=i,o=0;if(!n||42!=r)return e;if(3>a)return 0;for(a>c-p&&(a=c-p,o=i-a),g.set(n.subarray(o,o+a),0),E=a,A=a,y=255&g[0],y=(y<=s;s++)y=(y<{let x,k,q,L,I;if(m>4||0>m)return e;if(!i.next_out||!i.next_in&&0!==i.avail_in||r==u&&4!=m)return i.msg=d[4],e;if(0===i.avail_out)return i.msg=d[7],-5;var M;if(n=i,L=o,o=m,42==r&&(k=8+(h-8<<4)<<8,q=(O-1&255)>>1,q>3&&(q=3),k|=q<<6,0!==E&&(k|=32),k+=31-k%31,r=f,ee((M=k)>>8&255),ee(255&M)),0!==t.pending){if(n.flush_pending(),0===n.avail_out)return o=-1,0}else if(0===n.avail_in&&L>=m&&4!=m)return n.msg=d[7],-5;if(r==u&&0!==n.avail_in)return i.msg=d[7],-5;if(0!==n.avail_in||0!==F||0!=m&&r!=u){switch(I=-1,l[O].func){case 0:I=(e=>{let t,r=65535;for(r>a-5&&(r=a-5);;){if(1>=F){if(fe(),0===F&&0==e)return 0;if(0===F)break}if(E+=F,F=0,t=A+r,(0===E||E>=t)&&(F=E-t,E=t,de(!1),0===n.avail_out))return 0;if(E-A>=c-p&&(de(!1),0===n.avail_out))return 0}return de(4==e),0===n.avail_out?4==e?2:0:4==e?3:1})(m);break;case 1:I=(e=>{let t,r=0;for(;;){if(p>F){if(fe(),p>F&&0==e)return 0;if(0===F)break}if(3>F||(y=(y<c-p||2!=R&&(C=ue(r)),3>C)t=ae(0,255&g[E]),F--,E++;else if(t=ae(E-W,C-3),F-=C,C>T||3>F)E+=C,C=0,y=255&g[E],y=(y<{let t,r,i=0;for(;;){if(p>F){if(fe(),p>F&&0==e)return 0;if(0===F)break}if(3>F||(y=(y<j&&c-p>=(E-i&65535)&&(2!=R&&(C=ue(i)),5>=C&&(1==R||3==C&&E-W>4096)&&(C=2)),3>j||C>j)if(0!==U){if(t=ae(0,255&g[E-1]),t&&de(!1),E++,F--,0===n.avail_out)return 0}else U=1,E++,F--;else{r=E+F-3,t=ae(E-1-D,j-3),F-=j-1,j-=2;do{++E>r||(y=(y<1+X+10-Y&&(ne(2,3),re(256,s.static_ltree),se()),X=7;else if(le(0,0,!1),3==m)for(x=0;_>x;x++)v[x]=0;if(n.flush_pending(),0===n.avail_out)return o=-1,0}}return 4!=m?0:1}}function w(){const e=this;e.next_in_index=0,e.next_out_index=0,e.avail_in=0,e.total_in=0,e.avail_out=0,e.total_out=0}w.prototype={deflateInit(e,t){const n=this;return n.dstate=new h,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(t){const n=this;return n.dstate?n.dstate.deflate(n,t):e},deflateEnd(){const t=this;if(!t.dstate)return e;const n=t.dstate.deflateEnd();return t.dstate=null,n},deflateParams(t,n){const r=this;return r.dstate?r.dstate.deflateParams(r,t,n):e},deflateSetDictionary(t,n){const r=this;return r.dstate?r.dstate.deflateSetDictionary(r,t,n):e},read_buf(e,t,n){const r=this;let i=r.avail_in;return i>n&&(i=n),0===i?0:(r.avail_in-=i,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),t),r.next_in_index+=i,r.total_in+=i,i)},flush_pending(){const e=this;let t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),0!==t&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,0===e.dstate.pending&&(e.dstate.pending_out=0))}};const g=-2,x=-3,b=-5,v=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],y=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],_=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],k=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],S=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],z=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],A=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function C(){let e,t,n,r,i,s;function a(e,t,a,o,c,l,d,f,u,p,m){let h,w,g,v,y,_,k,S,z,A,C,D,U,E,W;A=0,y=a;do{n[e[t+A]]++,A++,y--}while(0!==y);if(n[0]==a)return d[0]=-1,f[0]=0,0;for(S=f[0],_=1;15>=_&&0===n[_];_++);for(k=_,_>S&&(S=_),y=15;0!==y&&0===n[y];y--);for(g=y,S>y&&(S=y),f[0]=S,E=1<<_;y>_;_++,E<<=1)if(0>(E-=n[_]))return x;if(0>(E-=n[y]))return x;for(n[y]+=E,s[1]=_=0,A=1,U=2;0!=--y;)s[U]=_+=n[A],U++,A++;y=0,A=0;do{0!==(_=e[t+A])&&(m[s[_]++]=y),A++}while(++y=k;k++)for(h=n[k];0!=h--;){for(;k>D+S;){if(v++,D+=S,W=g-D,W=W>S?S:W,(w=1<<(_=k-D))>h+1&&(w-=h+1,U=k,W>_))for(;++_n[++U];)w-=n[U];if(W=1<<_,p[0]+W>1440)return x;i[v]=C=p[0],p[0]+=W,0!==v?(s[v]=y,r[0]=_,r[1]=S,_=y>>>D-S,r[2]=C-i[v-1]-_,u.set(r,3*(i[v-1]+_))):d[0]=C}for(r[1]=k-D,a>A?m[A]m[A]?0:96,r[2]=m[A++]):(r[0]=l[m[A]-o]+16+64,r[2]=c[m[A++]-o]):r[0]=192,w=1<>>D;W>_;_+=w)u.set(r,3*(C+_));for(_=1<>>=1)y^=_;for(y^=_,z=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)r[o]=0;i.set(n.subarray(0,15),0),s.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,r,i,s,c)=>{let l;return o(19),e[0]=0,l=a(n,0,19,19,null,null,i,r,s,e,t),l==x?c.msg="oversubscribed dynamic bit lengths tree":l!=b&&0!==r[0]||(c.msg="incomplete dynamic bit lengths tree",l=x),l},this.inflate_trees_dynamic=(n,r,i,s,c,l,d,f,u)=>{let p;return o(288),e[0]=0,p=a(i,0,n,257,k,S,l,s,f,e,t),0!=p||0===s[0]?(p==x?u.msg="oversubscribed literal/length tree":-4!=p&&(u.msg="incomplete literal/length tree",p=x),p):(o(288),p=a(i,n,r,0,z,A,d,c,f,e,t),0!=p||0===c[0]&&n>257?(p==x?u.msg="oversubscribed distance tree":p==b?(u.msg="incomplete distance tree",p=x):-4!=p&&(u.msg="empty distance tree with lengths",p=x),p):0)}}function D(){const e=this;let t,n,r,i,s=0,a=0,o=0,c=0,l=0,d=0,f=0,u=0,p=0,m=0;function h(e,t,n,r,i,s,a,o){let c,l,d,f,u,p,m,h,w,g,b,y,_,k,S,z;m=o.next_in_index,h=o.avail_in,u=a.bitb,p=a.bitk,w=a.write,g=wp;)h--,u|=(255&o.read_byte(m++))<>=l[z+1],p-=l[z+1],16&f){for(f&=15,_=l[z+2]+(u&v[f]),u>>=f,p-=f;15>p;)h--,u|=(255&o.read_byte(m++))<>=l[z+1],p-=l[z+1],16&f){for(f&=15;f>p;)h--,u|=(255&o.read_byte(m++))<>=f,p-=f,g-=_,k>w){S=w-k;do{S+=a.end}while(0>S);if(f=a.end-S,_>f){if(_-=f,w-S>0&&f>w-S)do{a.win[w++]=a.win[S++]}while(0!=--f);else a.win.set(a.win.subarray(S,S+f),w),w+=f,S+=f,f=0;S=0}}else S=w-k,w-S>0&&2>w-S?(a.win[w++]=a.win[S++],a.win[w++]=a.win[S++],_-=2):(a.win.set(a.win.subarray(S,S+2),w),w+=2,S+=2,_-=2);if(w-S>0&&_>w-S)do{a.win[w++]=a.win[S++]}while(0!=--_);else a.win.set(a.win.subarray(S,S+_),w),w+=_,S+=_,_=0;break}if(64&f)return o.msg="invalid distance code",_=o.avail_in-h,_=_>p>>3?p>>3:_,h+=_,m-=_,p-=_<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,x;c+=l[z+2],c+=u&v[f],z=3*(d+c),f=l[z]}break}if(64&f)return 32&f?(_=o.avail_in-h,_=_>p>>3?p>>3:_,h+=_,m-=_,p-=_<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,1):(o.msg="invalid literal/length code",_=o.avail_in-h,_=_>p>>3?p>>3:_,h+=_,m-=_,p-=_<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,x);if(c+=l[z+2],c+=u&v[f],z=3*(d+c),0===(f=l[z])){u>>=l[z+1],p-=l[z+1],a.win[w++]=l[z+2],g--;break}}else u>>=l[z+1],p-=l[z+1],a.win[w++]=l[z+2],g--}while(g>=258&&h>=10);return _=o.avail_in-h,_=_>p>>3?p>>3:_,h+=_,m-=_,p-=_<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,0}e.init=(e,s,a,o,c,l)=>{t=0,f=e,u=s,r=a,p=o,i=c,m=l,n=null},e.proc=(e,w,b)=>{let y,_,k,S,z,A,C,D=0,U=0,E=0;for(E=w.next_in_index,S=w.avail_in,D=e.bitb,U=e.bitk,z=e.write,A=z=258&&S>=10&&(e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,b=h(f,u,r,p,i,m,e,w),E=w.next_in_index,S=w.avail_in,D=e.bitb,U=e.bitk,z=e.write,A=zU;){if(0===S)return e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,e.inflate_flush(w,b);b=0,S--,D|=(255&w.read_byte(E++))<>>=n[_+1],U-=n[_+1],k=n[_],0===k){c=n[_+2],t=6;break}if(16&k){l=15&k,s=n[_+2],t=2;break}if(!(64&k)){o=k,a=_/3+n[_+2];break}if(32&k){t=7;break}return t=9,w.msg="invalid literal/length code",b=x,e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,e.inflate_flush(w,b);case 2:for(y=l;y>U;){if(0===S)return e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,e.inflate_flush(w,b);b=0,S--,D|=(255&w.read_byte(E++))<>=y,U-=y,o=u,n=i,a=m,t=3;case 3:for(y=o;y>U;){if(0===S)return e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,e.inflate_flush(w,b);b=0,S--,D|=(255&w.read_byte(E++))<>=n[_+1],U-=n[_+1],k=n[_],16&k){l=15&k,d=n[_+2],t=4;break}if(!(64&k)){o=k,a=_/3+n[_+2];break}return t=9,w.msg="invalid distance code",b=x,e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,e.inflate_flush(w,b);case 4:for(y=l;y>U;){if(0===S)return e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,e.inflate_flush(w,b);b=0,S--,D|=(255&w.read_byte(E++))<>=y,U-=y,t=5;case 5:for(C=z-d;0>C;)C+=e.end;for(;0!==s;){if(0===A&&(z==e.end&&0!==e.read&&(z=0,A=z7&&(U-=8,S++,E--),e.write=z,b=e.inflate_flush(w,b),z=e.write,A=z{}}C.inflate_trees_fixed=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=y,r[0]=_,0);const U=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function E(e,t){const n=this;let r,i=0,s=0,a=0,o=0;const c=[0],l=[0],d=new D;let f=0,u=new Int32Array(4320);const p=new C;n.bitk=0,n.bitb=0,n.win=new Uint8Array(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==i&&d.free(e),i=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let r,i,s;return i=e.next_out_index,s=n.read,r=(s>n.write?n.end:n.write)-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==b&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r,s==n.end&&(s=0,n.write==n.end&&(n.write=0),r=n.write-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==b&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r),e.next_out_index=i,n.read=s,t},n.proc=(e,t)=>{let m,h,w,b,y,_,k,S;for(b=e.next_in_index,y=e.avail_in,h=n.bitb,w=n.bitk,_=n.write,k=_w;){if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);t=0,y--,h|=(255&e.read_byte(b++))<>>1){case 0:h>>>=3,w-=3,m=7&w,h>>>=m,w-=m,i=1;break;case 1:z=[],A=[],D=[[]],E=[[]],C.inflate_trees_fixed(z,A,D,E),d.init(z[0],A[0],D[0],0,E[0],0),h>>>=3,w-=3,i=6;break;case 2:h>>>=3,w-=3,i=3;break;case 3:return h>>>=3,w-=3,i=9,e.msg="invalid block type",t=x,n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t)}break;case 1:for(;32>w;){if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);t=0,y--,h|=(255&e.read_byte(b++))<>>16&65535)!=(65535&h))return i=9,e.msg="invalid stored block lengths",t=x,n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);s=65535&h,h=w=0,i=0!==s?2:0!==f?7:0;break;case 2:if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);if(0===k&&(_==n.end&&0!==n.read&&(_=0,k=_y&&(m=y),m>k&&(m=k),n.win.set(e.read_buf(b,m),_),b+=m,y-=m,_+=m,k-=m,0!=(s-=m))break;i=0!==f?7:0;break;case 3:for(;14>w;){if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);t=0,y--,h|=(255&e.read_byte(b++))<29||(m>>5&31)>29)return i=9,e.msg="too many length or distance symbols",t=x,n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);if(m=258+(31&m)+(m>>5&31),!r||r.lengthS;S++)r[S]=0;h>>>=14,w-=14,o=0,i=4;case 4:for(;4+(a>>>10)>o;){for(;3>w;){if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);t=0,y--,h|=(255&e.read_byte(b++))<>>=3,w-=3}for(;19>o;)r[U[o++]]=0;if(c[0]=7,m=p.inflate_trees_bits(r,c,l,u,e),0!=m)return(t=m)==x&&(r=null,i=9),n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);o=0,i=5;case 5:for(;m=a,258+(31&m)+(m>>5&31)>o;){let s,d;for(m=c[0];m>w;){if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);t=0,y--,h|=(255&e.read_byte(b++))<d)h>>>=m,w-=m,r[o++]=d;else{for(S=18==d?7:d-14,s=18==d?11:3;m+S>w;){if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);t=0,y--,h|=(255&e.read_byte(b++))<>>=m,w-=m,s+=h&v[S],h>>>=S,w-=S,S=o,m=a,S+s>258+(31&m)+(m>>5&31)||16==d&&1>S)return r=null,i=9,e.msg="invalid bit length repeat",t=x,n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);d=16==d?r[S-1]:0;do{r[S++]=d}while(0!=--s);o=S}}if(l[0]=-1,W=[],F=[],j=[],q=[],W[0]=9,F[0]=6,m=a,m=p.inflate_trees_dynamic(257+(31&m),1+(m>>5&31),r,W,F,j,q,u,e),0!=m)return m==x&&(r=null,i=9),t=m,n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);d.init(W[0],F[0],u,j[0],u,q[0]),i=6;case 6:if(n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),b=e.next_in_index,y=e.avail_in,h=n.bitb,w=n.bitk,_=n.write,k=_{n.reset(e,null),n.win=null,u=null},n.set_dictionary=(e,t,r)=>{n.win.set(e.subarray(t,t+r),0),n.read=n.write=r},n.sync_point=()=>1==i?1:0}const W=13,F=[0,0,255,255];function j(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):g}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,r)=>(n.msg=null,e.blocks=null,8>r||r>15?(e.inflateEnd(n),g):(e.wbits=r,n.istate.blocks=new E(n,1<{let n,r;if(!e||!e.istate||!e.next_in)return g;const i=e.istate;for(t=4==t?b:0,n=b;;)switch(i.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(i.method=e.read_byte(e.next_in_index++)))){i.mode=W,e.msg="unknown compression method",i.marker=5;break}if(8+(i.method>>4)>i.wbits){i.mode=W,e.msg="invalid win size",i.marker=5;break}i.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,r=255&e.read_byte(e.next_in_index++),((i.method<<8)+r)%31!=0){i.mode=W,e.msg="incorrect header check",i.marker=5;break}if(!(32&r)){i.mode=7;break}i.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,i.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,i.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,i.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,i.need+=255&e.read_byte(e.next_in_index++),i.mode=6,2);case 6:return i.mode=W,e.msg="need dictionary",i.marker=0,g;case 7:if(n=i.blocks.proc(e,n),n==x){i.mode=W,i.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,i.blocks.reset(e,i.was),i.mode=12;case 12:return e.avail_in=0,1;case W:return x;default:return g}},e.inflateSetDictionary=(e,t,n)=>{let r=0,i=n;if(!e||!e.istate||6!=e.istate.mode)return g;const s=e.istate;return i<1<{let n,r,i,s,a;if(!e||!e.istate)return g;const o=e.istate;if(o.mode!=W&&(o.mode=W,o.marker=0),0===(n=e.avail_in))return b;for(r=e.next_in_index,i=o.marker;0!==n&&4>i;)e.read_byte(r)==F[i]?i++:i=0!==e.read_byte(r)?0:4-i,r++,n--;return e.total_in+=r-e.next_in_index,e.next_in_index=r,e.avail_in=n,o.marker=i,4!=i?x:(s=e.total_in,a=e.total_out,t(e),e.total_in=s,e.total_out=a,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():g}function q(){}q.prototype={inflateInit(e){const t=this;return t.istate=new j,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):g},inflateEnd(){const e=this;if(!e.istate)return g;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):g},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):g},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const T=4294967295,O=65535,R=67324752,L=134695760,I=L,M=33639248,P=101010256,B=101075792,H=117853008,N=22,V=21589,Z=2048,K="/",G=new Date(2107,11,31),X=new Date(1980,0,1),J=void 0,Y="undefined",Q="function";class ${constructor(e){return class extends TransformStream{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}let ee=2;try{typeof navigator!=Y&&navigator.hardwareConcurrency&&(ee=navigator.hardwareConcurrency)}catch(e){}const te={chunkSize:524288,maxWorkers:ee,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:J,CompressionStreamNative:typeof CompressionStream!=Y&&CompressionStream,DecompressionStreamNative:typeof DecompressionStream!=Y&&DecompressionStream},ne=Object.assign({},te);function re(){return ne}function ie(e){return Math.max(e.chunkSize,64)}function se(e){const{baseURL:t,chunkSize:n,maxWorkers:r,terminateWorkerTimeout:i,useCompressionStream:s,useWebWorkers:a,Deflate:o,Inflate:c,CompressionStream:l,DecompressionStream:d,workerScripts:f}=e;if(ae("baseURL",t),ae("chunkSize",n),ae("maxWorkers",r),ae("terminateWorkerTimeout",i),ae("useCompressionStream",s),ae("useWebWorkers",a),o&&(ne.CompressionStream=new $(o)),c&&(ne.DecompressionStream=new $(c)),ae("CompressionStream",l),ae("DecompressionStream",d),f!==J){const{deflate:e,inflate:t}=f;if((e||t)&&(ne.workerScripts||(ne.workerScripts={})),e){if(!Array.isArray(e))throw Error("workerScripts.deflate must be an array");ne.workerScripts.deflate=e}if(t){if(!Array.isArray(t))throw Error("workerScripts.inflate must be an array");ne.workerScripts.inflate=t}}}function ae(e,t){t!==J&&(ne[e]=t)}const oe={application:{"andrew-inset":"ez",annodex:"anx","atom+xml":"atom","atomcat+xml":"atomcat","atomserv+xml":"atomsrv",bbolin:"lin","cu-seeme":"cu","davmount+xml":"davmount",dsptype:"tsp",ecmascript:["es","ecma"],futuresplash:"spl",hta:"hta","java-archive":"jar","java-serialized-object":"ser","java-vm":"class",m3g:"m3g","mac-binhex40":"hqx",mathematica:["nb","ma","mb"],msaccess:"mdb",msword:["doc","dot","wiz"],mxf:"mxf",oda:"oda",ogg:"ogx",pdf:"pdf","pgp-keys":"key","pgp-signature":["asc","sig"],"pics-rules":"prf",postscript:["ps","ai","eps","epsi","epsf","eps2","eps3"],rar:"rar","rdf+xml":"rdf","rss+xml":"rss",rtf:"rtf","xhtml+xml":["xhtml","xht"],xml:["xml","xsl","xsd","xpdl"],"xspf+xml":"xspf",zip:"zip","vnd.android.package-archive":"apk","vnd.cinderella":"cdy","vnd.google-earth.kml+xml":"kml","vnd.google-earth.kmz":"kmz","vnd.mozilla.xul+xml":"xul","vnd.ms-excel":["xls","xlb","xlt","xlm","xla","xlc","xlw"],"vnd.ms-pki.seccat":"cat","vnd.ms-pki.stl":"stl","vnd.ms-powerpoint":["ppt","pps","pot","ppa","pwz"],"vnd.oasis.opendocument.chart":"odc","vnd.oasis.opendocument.database":"odb","vnd.oasis.opendocument.formula":"odf","vnd.oasis.opendocument.graphics":"odg","vnd.oasis.opendocument.graphics-template":"otg","vnd.oasis.opendocument.image":"odi","vnd.oasis.opendocument.presentation":"odp","vnd.oasis.opendocument.presentation-template":"otp","vnd.oasis.opendocument.spreadsheet":"ods","vnd.oasis.opendocument.spreadsheet-template":"ots","vnd.oasis.opendocument.text":"odt","vnd.oasis.opendocument.text-master":["odm","otm"],"vnd.oasis.opendocument.text-template":"ott","vnd.oasis.opendocument.text-web":"oth","vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","vnd.openxmlformats-officedocument.spreadsheetml.template":"xltx","vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","vnd.openxmlformats-officedocument.presentationml.slideshow":"ppsx","vnd.openxmlformats-officedocument.presentationml.template":"potx","vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","vnd.openxmlformats-officedocument.wordprocessingml.template":"dotx","vnd.smaf":"mmf","vnd.stardivision.calc":"sdc","vnd.stardivision.chart":"sds","vnd.stardivision.draw":"sda","vnd.stardivision.impress":"sdd","vnd.stardivision.math":["sdf","smf"],"vnd.stardivision.writer":["sdw","vor"],"vnd.stardivision.writer-global":"sgl","vnd.sun.xml.calc":"sxc","vnd.sun.xml.calc.template":"stc","vnd.sun.xml.draw":"sxd","vnd.sun.xml.draw.template":"std","vnd.sun.xml.impress":"sxi","vnd.sun.xml.impress.template":"sti","vnd.sun.xml.math":"sxm","vnd.sun.xml.writer":"sxw","vnd.sun.xml.writer.global":"sxg","vnd.sun.xml.writer.template":"stw","vnd.symbian.install":["sis","sisx"],"vnd.visio":["vsd","vst","vss","vsw","vsdx","vssx","vstx","vssm","vstm"],"vnd.wap.wbxml":"wbxml","vnd.wap.wmlc":"wmlc","vnd.wap.wmlscriptc":"wmlsc","vnd.wordperfect":"wpd","vnd.wordperfect5.1":"wp5","x-123":"wk","x-7z-compressed":"7z","x-abiword":"abw","x-apple-diskimage":"dmg","x-bcpio":"bcpio","x-bittorrent":"torrent","x-cbr":["cbr","cba","cbt","cb7"],"x-cbz":"cbz","x-cdf":["cdf","cda"],"x-cdlink":"vcd","x-chess-pgn":"pgn","x-cpio":"cpio","x-csh":"csh","x-director":["dir","dxr","cst","cct","cxt","w3d","fgd","swa"],"x-dms":"dms","x-doom":"wad","x-dvi":"dvi","x-httpd-eruby":"rhtml","x-font":"pcf.Z","x-freemind":"mm","x-gnumeric":"gnumeric","x-go-sgf":"sgf","x-graphing-calculator":"gcf","x-gtar":["gtar","taz"],"x-hdf":"hdf","x-httpd-php":["phtml","pht","php"],"x-httpd-php-source":"phps","x-httpd-php3":"php3","x-httpd-php3-preprocessed":"php3p","x-httpd-php4":"php4","x-httpd-php5":"php5","x-ica":"ica","x-info":"info","x-internet-signup":["ins","isp"],"x-iphone":"iii","x-iso9660-image":"iso","x-java-jnlp-file":"jnlp","x-jmol":"jmz","x-killustrator":"kil","x-latex":"latex","x-lyx":"lyx","x-lzx":"lzx","x-maker":["frm","fb","fbdoc"],"x-ms-wmd":"wmd","x-msdos-program":["com","exe","bat","dll"],"x-netcdf":["nc"],"x-ns-proxy-autoconfig":["pac","dat"],"x-nwc":"nwc","x-object":"o","x-oz-application":"oza","x-pkcs7-certreqresp":"p7r","x-python-code":["pyc","pyo"],"x-qgis":["qgs","shp","shx"],"x-quicktimeplayer":"qtl","x-redhat-package-manager":["rpm","rpa"],"x-ruby":"rb","x-sh":"sh","x-shar":"shar","x-shockwave-flash":["swf","swfl"],"x-silverlight":"scr","x-stuffit":"sit","x-sv4cpio":"sv4cpio","x-sv4crc":"sv4crc","x-tar":"tar","x-tex-gf":"gf","x-tex-pk":"pk","x-texinfo":["texinfo","texi"],"x-trash":["~","%","bak","old","sik"],"x-ustar":"ustar","x-wais-source":"src","x-wingz":"wz","x-x509-ca-cert":["crt","der","cer"],"x-xcf":"xcf","x-xfig":"fig","x-xpinstall":"xpi",applixware:"aw","atomsvc+xml":"atomsvc","ccxml+xml":"ccxml","cdmi-capability":"cdmia","cdmi-container":"cdmic","cdmi-domain":"cdmid","cdmi-object":"cdmio","cdmi-queue":"cdmiq","docbook+xml":"dbk","dssc+der":"dssc","dssc+xml":"xdssc","emma+xml":"emma","epub+zip":"epub",exi:"exi","font-tdpfr":"pfr","gml+xml":"gml","gpx+xml":"gpx",gxf:"gxf",hyperstudio:"stk","inkml+xml":["ink","inkml"],ipfix:"ipfix","jsonml+json":"jsonml","lost+xml":"lostxml","mads+xml":"mads",marc:"mrc","marcxml+xml":"mrcx","mathml+xml":["mathml","mml"],mbox:"mbox","mediaservercontrol+xml":"mscml","metalink+xml":"metalink","metalink4+xml":"meta4","mets+xml":"mets","mods+xml":"mods",mp21:["m21","mp21"],mp4:"mp4s","oebps-package+xml":"opf","omdoc+xml":"omdoc",onenote:["onetoc","onetoc2","onetmp","onepkg"],oxps:"oxps","patch-ops-error+xml":"xer","pgp-encrypted":"pgp",pkcs10:"p10","pkcs7-mime":["p7m","p7c"],"pkcs7-signature":"p7s",pkcs8:"p8","pkix-attr-cert":"ac","pkix-crl":"crl","pkix-pkipath":"pkipath",pkixcmp:"pki","pls+xml":"pls","prs.cww":"cww","pskc+xml":"pskcxml","reginfo+xml":"rif","relax-ng-compact-syntax":"rnc","resource-lists+xml":"rl","resource-lists-diff+xml":"rld","rls-services+xml":"rs","rpki-ghostbusters":"gbr","rpki-manifest":"mft","rpki-roa":"roa","rsd+xml":"rsd","sbml+xml":"sbml","scvp-cv-request":"scq","scvp-cv-response":"scs","scvp-vp-request":"spq","scvp-vp-response":"spp",sdp:"sdp","set-payment-initiation":"setpay","set-registration-initiation":"setreg","shf+xml":"shf","sparql-query":"rq","sparql-results+xml":"srx",srgs:"gram","srgs+xml":"grxml","sru+xml":"sru","ssdl+xml":"ssdl","ssml+xml":"ssml","tei+xml":["tei","teicorpus"],"thraud+xml":"tfi","timestamped-data":"tsd","vnd.3gpp.pic-bw-large":"plb","vnd.3gpp.pic-bw-small":"psb","vnd.3gpp.pic-bw-var":"pvb","vnd.3gpp2.tcap":"tcap","vnd.3m.post-it-notes":"pwn","vnd.accpac.simply.aso":"aso","vnd.accpac.simply.imp":"imp","vnd.acucobol":"acu","vnd.acucorp":["atc","acutc"],"vnd.adobe.air-application-installer-package+zip":"air","vnd.adobe.formscentral.fcdt":"fcdt","vnd.adobe.fxp":["fxp","fxpl"],"vnd.adobe.xdp+xml":"xdp","vnd.adobe.xfdf":"xfdf","vnd.ahead.space":"ahead","vnd.airzip.filesecure.azf":"azf","vnd.airzip.filesecure.azs":"azs","vnd.amazon.ebook":"azw","vnd.americandynamics.acc":"acc","vnd.amiga.ami":"ami","vnd.anser-web-certificate-issue-initiation":"cii","vnd.anser-web-funds-transfer-initiation":"fti","vnd.antix.game-component":"atx","vnd.apple.installer+xml":"mpkg","vnd.apple.mpegurl":"m3u8","vnd.aristanetworks.swi":"swi","vnd.astraea-software.iota":"iota","vnd.audiograph":"aep","vnd.blueice.multipass":"mpm","vnd.bmi":"bmi","vnd.businessobjects":"rep","vnd.chemdraw+xml":"cdxml","vnd.chipnuts.karaoke-mmd":"mmd","vnd.claymore":"cla","vnd.cloanto.rp9":"rp9","vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"vnd.cluetrust.cartomobile-config":"c11amc","vnd.cluetrust.cartomobile-config-pkg":"c11amz","vnd.commonspace":"csp","vnd.contact.cmsg":"cdbcmsg","vnd.cosmocaller":"cmc","vnd.crick.clicker":"clkx","vnd.crick.clicker.keyboard":"clkk","vnd.crick.clicker.palette":"clkp","vnd.crick.clicker.template":"clkt","vnd.crick.clicker.wordbank":"clkw","vnd.criticaltools.wbs+xml":"wbs","vnd.ctc-posml":"pml","vnd.cups-ppd":"ppd","vnd.curl.car":"car","vnd.curl.pcurl":"pcurl","vnd.dart":"dart","vnd.data-vision.rdz":"rdz","vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"vnd.dece.ttml+xml":["uvt","uvvt"],"vnd.dece.unspecified":["uvx","uvvx"],"vnd.dece.zip":["uvz","uvvz"],"vnd.denovo.fcselayout-link":"fe_launch","vnd.dna":"dna","vnd.dolby.mlp":"mlp","vnd.dpgraph":"dpg","vnd.dreamfactory":"dfac","vnd.ds-keypoint":"kpxx","vnd.dvb.ait":"ait","vnd.dvb.service":"svc","vnd.dynageo":"geo","vnd.ecowin.chart":"mag","vnd.enliven":"nml","vnd.epson.esf":"esf","vnd.epson.msf":"msf","vnd.epson.quickanime":"qam","vnd.epson.salt":"slt","vnd.epson.ssf":"ssf","vnd.eszigno3+xml":["es3","et3"],"vnd.ezpix-album":"ez2","vnd.ezpix-package":"ez3","vnd.fdf":"fdf","vnd.fdsn.mseed":"mseed","vnd.fdsn.seed":["seed","dataless"],"vnd.flographit":"gph","vnd.fluxtime.clip":"ftc","vnd.framemaker":["fm","frame","maker","book"],"vnd.frogans.fnc":"fnc","vnd.frogans.ltf":"ltf","vnd.fsc.weblaunch":"fsc","vnd.fujitsu.oasys":"oas","vnd.fujitsu.oasys2":"oa2","vnd.fujitsu.oasys3":"oa3","vnd.fujitsu.oasysgp":"fg5","vnd.fujitsu.oasysprs":"bh2","vnd.fujixerox.ddd":"ddd","vnd.fujixerox.docuworks":"xdw","vnd.fujixerox.docuworks.binder":"xbd","vnd.fuzzysheet":"fzs","vnd.genomatix.tuxedo":"txd","vnd.geogebra.file":"ggb","vnd.geogebra.tool":"ggt","vnd.geometry-explorer":["gex","gre"],"vnd.geonext":"gxt","vnd.geoplan":"g2w","vnd.geospace":"g3w","vnd.gmx":"gmx","vnd.grafeq":["gqf","gqs"],"vnd.groove-account":"gac","vnd.groove-help":"ghf","vnd.groove-identity-message":"gim","vnd.groove-injector":"grv","vnd.groove-tool-message":"gtm","vnd.groove-tool-template":"tpl","vnd.groove-vcard":"vcg","vnd.hal+xml":"hal","vnd.handheld-entertainment+xml":"zmm","vnd.hbci":"hbci","vnd.hhe.lesson-player":"les","vnd.hp-hpgl":"hpgl","vnd.hp-hpid":"hpid","vnd.hp-hps":"hps","vnd.hp-jlyt":"jlt","vnd.hp-pcl":"pcl","vnd.hp-pclxl":"pclxl","vnd.hydrostatix.sof-data":"sfd-hdstx","vnd.ibm.minipay":"mpy","vnd.ibm.modcap":["afp","listafp","list3820"],"vnd.ibm.rights-management":"irm","vnd.ibm.secure-container":"sc","vnd.iccprofile":["icc","icm"],"vnd.igloader":"igl","vnd.immervision-ivp":"ivp","vnd.immervision-ivu":"ivu","vnd.insors.igm":"igm","vnd.intercon.formnet":["xpw","xpx"],"vnd.intergeo":"i2g","vnd.intu.qbo":"qbo","vnd.intu.qfx":"qfx","vnd.ipunplugged.rcprofile":"rcprofile","vnd.irepository.package+xml":"irp","vnd.is-xpr":"xpr","vnd.isac.fcs":"fcs","vnd.jam":"jam","vnd.jcp.javame.midlet-rms":"rms","vnd.jisp":"jisp","vnd.joost.joda-archive":"joda","vnd.kahootz":["ktz","ktr"],"vnd.kde.karbon":"karbon","vnd.kde.kchart":"chrt","vnd.kde.kformula":"kfo","vnd.kde.kivio":"flw","vnd.kde.kontour":"kon","vnd.kde.kpresenter":["kpr","kpt"],"vnd.kde.kspread":"ksp","vnd.kde.kword":["kwd","kwt"],"vnd.kenameaapp":"htke","vnd.kidspiration":"kia","vnd.kinar":["kne","knp"],"vnd.koan":["skp","skd","skt","skm"],"vnd.kodak-descriptor":"sse","vnd.las.las+xml":"lasxml","vnd.llamagraphics.life-balance.desktop":"lbd","vnd.llamagraphics.life-balance.exchange+xml":"lbe","vnd.lotus-1-2-3":"123","vnd.lotus-approach":"apr","vnd.lotus-freelance":"pre","vnd.lotus-notes":"nsf","vnd.lotus-organizer":"org","vnd.lotus-screencam":"scm","vnd.lotus-wordpro":"lwp","vnd.macports.portpkg":"portpkg","vnd.mcd":"mcd","vnd.medcalcdata":"mc1","vnd.mediastation.cdkey":"cdkey","vnd.mfer":"mwf","vnd.mfmp":"mfm","vnd.micrografx.flo":"flo","vnd.micrografx.igx":"igx","vnd.mif":"mif","vnd.mobius.daf":"daf","vnd.mobius.dis":"dis","vnd.mobius.mbk":"mbk","vnd.mobius.mqy":"mqy","vnd.mobius.msl":"msl","vnd.mobius.plc":"plc","vnd.mobius.txf":"txf","vnd.mophun.application":"mpn","vnd.mophun.certificate":"mpc","vnd.ms-artgalry":"cil","vnd.ms-cab-compressed":"cab","vnd.ms-excel.addin.macroenabled.12":"xlam","vnd.ms-excel.sheet.binary.macroenabled.12":"xlsb","vnd.ms-excel.sheet.macroenabled.12":"xlsm","vnd.ms-excel.template.macroenabled.12":"xltm","vnd.ms-fontobject":"eot","vnd.ms-htmlhelp":"chm","vnd.ms-ims":"ims","vnd.ms-lrm":"lrm","vnd.ms-officetheme":"thmx","vnd.ms-powerpoint.addin.macroenabled.12":"ppam","vnd.ms-powerpoint.presentation.macroenabled.12":"pptm","vnd.ms-powerpoint.slide.macroenabled.12":"sldm","vnd.ms-powerpoint.slideshow.macroenabled.12":"ppsm","vnd.ms-powerpoint.template.macroenabled.12":"potm","vnd.ms-project":["mpp","mpt"],"vnd.ms-word.document.macroenabled.12":"docm","vnd.ms-word.template.macroenabled.12":"dotm","vnd.ms-works":["wps","wks","wcm","wdb"],"vnd.ms-wpl":"wpl","vnd.ms-xpsdocument":"xps","vnd.mseq":"mseq","vnd.musician":"mus","vnd.muvee.style":"msty","vnd.mynfc":"taglet","vnd.neurolanguage.nlu":"nlu","vnd.nitf":["ntf","nitf"],"vnd.noblenet-directory":"nnd","vnd.noblenet-sealer":"nns","vnd.noblenet-web":"nnw","vnd.nokia.n-gage.data":"ngdat","vnd.nokia.n-gage.symbian.install":"n-gage","vnd.nokia.radio-preset":"rpst","vnd.nokia.radio-presets":"rpss","vnd.novadigm.edm":"edm","vnd.novadigm.edx":"edx","vnd.novadigm.ext":"ext","vnd.oasis.opendocument.chart-template":"otc","vnd.oasis.opendocument.formula-template":"odft","vnd.oasis.opendocument.image-template":"oti","vnd.olpc-sugar":"xo","vnd.oma.dd2+xml":"dd2","vnd.openofficeorg.extension":"oxt","vnd.openxmlformats-officedocument.presentationml.slide":"sldx","vnd.osgeo.mapguide.package":"mgp","vnd.osgi.dp":"dp","vnd.osgi.subsystem":"esa","vnd.palm":["pdb","pqa","oprc"],"vnd.pawaafile":"paw","vnd.pg.format":"str","vnd.pg.osasli":"ei6","vnd.picsel":"efif","vnd.pmi.widget":"wg","vnd.pocketlearn":"plf","vnd.powerbuilder6":"pbd","vnd.previewsystems.box":"box","vnd.proteus.magazine":"mgz","vnd.publishare-delta-tree":"qps","vnd.pvi.ptid1":"ptid","vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"vnd.realvnc.bed":"bed","vnd.recordare.musicxml":"mxl","vnd.recordare.musicxml+xml":"musicxml","vnd.rig.cryptonote":"cryptonote","vnd.rn-realmedia":"rm","vnd.rn-realmedia-vbr":"rmvb","vnd.route66.link66+xml":"link66","vnd.sailingtracker.track":"st","vnd.seemail":"see","vnd.sema":"sema","vnd.semd":"semd","vnd.semf":"semf","vnd.shana.informed.formdata":"ifm","vnd.shana.informed.formtemplate":"itp","vnd.shana.informed.interchange":"iif","vnd.shana.informed.package":"ipk","vnd.simtech-mindmapper":["twd","twds"],"vnd.smart.teacher":"teacher","vnd.solent.sdkm+xml":["sdkm","sdkd"],"vnd.spotfire.dxp":"dxp","vnd.spotfire.sfs":"sfs","vnd.stepmania.package":"smzip","vnd.stepmania.stepchart":"sm","vnd.sus-calendar":["sus","susp"],"vnd.svd":"svd","vnd.syncml+xml":"xsm","vnd.syncml.dm+wbxml":"bdm","vnd.syncml.dm+xml":"xdm","vnd.tao.intent-module-archive":"tao","vnd.tcpdump.pcap":["pcap","cap","dmp"],"vnd.tmobile-livetv":"tmo","vnd.trid.tpt":"tpt","vnd.triscape.mxs":"mxs","vnd.trueapp":"tra","vnd.ufdl":["ufd","ufdl"],"vnd.uiq.theme":"utz","vnd.umajin":"umj","vnd.unity":"unityweb","vnd.uoml+xml":"uoml","vnd.vcx":"vcx","vnd.visionary":"vis","vnd.vsf":"vsf","vnd.webturbo":"wtb","vnd.wolfram.player":"nbp","vnd.wqd":"wqd","vnd.wt.stf":"stf","vnd.xara":"xar","vnd.xfdl":"xfdl","vnd.yamaha.hv-dic":"hvd","vnd.yamaha.hv-script":"hvs","vnd.yamaha.hv-voice":"hvp","vnd.yamaha.openscoreformat":"osf","vnd.yamaha.openscoreformat.osfpvg+xml":"osfpvg","vnd.yamaha.smaf-audio":"saf","vnd.yamaha.smaf-phrase":"spf","vnd.yellowriver-custom-menu":"cmp","vnd.zul":["zir","zirz"],"vnd.zzazz.deck+xml":"zaz","voicexml+xml":"vxml",widget:"wgt",winhlp:"hlp","wsdl+xml":"wsdl","wspolicy+xml":"wspolicy","x-ace-compressed":"ace","x-authorware-bin":["aab","x32","u32","vox"],"x-authorware-map":"aam","x-authorware-seg":"aas","x-blorb":["blb","blorb"],"x-bzip":"bz","x-bzip2":["bz2","boz"],"x-cfs-compressed":"cfs","x-chat":"chat","x-conference":"nsc","x-dgc-compressed":"dgc","x-dtbncx+xml":"ncx","x-dtbook+xml":"dtb","x-dtbresource+xml":"res","x-eva":"eva","x-font-bdf":"bdf","x-font-ghostscript":"gsf","x-font-linux-psf":"psf","x-font-pcf":"pcf","x-font-snf":"snf","x-font-ttf":["ttf","ttc"],"x-font-type1":["pfa","pfb","pfm","afm"],"x-freearc":"arc","x-gca-compressed":"gca","x-glulx":"ulx","x-gramps-xml":"gramps","x-install-instructions":"install","x-lzh-compressed":["lzh","lha"],"x-mie":"mie","x-mobipocket-ebook":["prc","mobi"],"x-ms-application":"application","x-ms-shortcut":"lnk","x-ms-xbap":"xbap","x-msbinder":"obd","x-mscardfile":"crd","x-msclip":"clp","application/x-ms-installer":"msi","x-msmediaview":["mvb","m13","m14"],"x-msmetafile":["wmf","wmz","emf","emz"],"x-msmoney":"mny","x-mspublisher":"pub","x-msschedule":"scd","x-msterminal":"trm","x-mswrite":"wri","x-nzb":"nzb","x-pkcs12":["p12","pfx"],"x-pkcs7-certificates":["p7b","spc"],"x-research-info-systems":"ris","x-silverlight-app":"xap","x-sql":"sql","x-stuffitx":"sitx","x-subrip":"srt","x-t3vm-image":"t3","x-tex-tfm":"tfm","x-tgif":"obj","x-xliff+xml":"xlf","x-xz":"xz","x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"xaml+xml":"xaml","xcap-diff+xml":"xdf","xenc+xml":"xenc","xml-dtd":"dtd","xop+xml":"xop","xproc+xml":"xpl","xslt+xml":"xslt","xv+xml":["mxml","xhvml","xvml","xvm"],yang:"yang","yin+xml":"yin",envoy:"evy",fractals:"fif","internet-property-stream":"acx",olescript:"axs","vnd.ms-outlook":"msg","vnd.ms-pkicertstore":"sst","x-compress":"z","x-perfmon":["pma","pmc","pmr","pmw"],"ynd.ms-pkipko":"pko",gzip:["gz","tgz"],"smil+xml":["smi","smil"],"vnd.debian.binary-package":["deb","udeb"],"vnd.hzn-3d-crossword":"x3d","vnd.sqlite3":["db","sqlite","sqlite3","db-wal","sqlite-wal","db-shm","sqlite-shm"],"vnd.wap.sic":"sic","vnd.wap.slc":"slc","x-krita":["kra","krz"],"x-perl":["pm","pl"],yaml:["yaml","yml"]},audio:{amr:"amr","amr-wb":"awb",annodex:"axa",basic:["au","snd"],flac:"flac",midi:["mid","midi","kar","rmi"],mpeg:["mpga","mpega","mp3","m4a","mp2a","m2a","m3a"],mpegurl:"m3u",ogg:["oga","ogg","spx"],"prs.sid":"sid","x-aiff":"aifc","x-gsm":"gsm","x-ms-wma":"wma","x-ms-wax":"wax","x-pn-realaudio":"ram","x-realaudio":"ra","x-sd2":"sd2",adpcm:"adp",mp4:"mp4a",s3m:"s3m",silk:"sil","vnd.dece.audio":["uva","uvva"],"vnd.digital-winds":"eol","vnd.dra":"dra","vnd.dts":"dts","vnd.dts.hd":"dtshd","vnd.lucent.voice":"lvp","vnd.ms-playready.media.pya":"pya","vnd.nuera.ecelp4800":"ecelp4800","vnd.nuera.ecelp7470":"ecelp7470","vnd.nuera.ecelp9600":"ecelp9600","vnd.rip":"rip",webm:"weba","x-caf":"caf","x-matroska":"mka","x-pn-realaudio-plugin":"rmp",xm:"xm",aac:"aac",aiff:["aiff","aif","aff"],opus:"opus",wav:"wav"},chemical:{"x-alchemy":"alc","x-cache":["cac","cache"],"x-cache-csf":"csf","x-cactvs-binary":["cbin","cascii","ctab"],"x-cdx":"cdx","x-chem3d":"c3d","x-cif":"cif","x-cmdf":"cmdf","x-cml":"cml","x-compass":"cpa","x-crossfire":"bsd","x-csml":["csml","csm"],"x-ctx":"ctx","x-cxf":["cxf","cef"],"x-embl-dl-nucleotide":["emb","embl"],"x-gamess-input":["inp","gam","gamin"],"x-gaussian-checkpoint":["fch","fchk"],"x-gaussian-cube":"cub","x-gaussian-input":["gau","gjc","gjf"],"x-gaussian-log":"gal","x-gcg8-sequence":"gcg","x-genbank":"gen","x-hin":"hin","x-isostar":["istr","ist"],"x-jcamp-dx":["jdx","dx"],"x-kinemage":"kin","x-macmolecule":"mcm","x-macromodel-input":"mmod","x-mdl-molfile":"mol","x-mdl-rdfile":"rd","x-mdl-rxnfile":"rxn","x-mdl-sdfile":"sd","x-mdl-tgf":"tgf","x-mmcif":"mcif","x-mol2":"mol2","x-molconn-Z":"b","x-mopac-graph":"gpt","x-mopac-input":["mop","mopcrt","zmt"],"x-mopac-out":"moo","x-ncbi-asn1":"asn","x-ncbi-asn1-ascii":["prt","ent"],"x-ncbi-asn1-binary":"val","x-rosdal":"ros","x-swissprot":"sw","x-vamas-iso14976":"vms","x-vmd":"vmd","x-xtel":"xtel","x-xyz":"xyz"},font:{otf:"otf",woff:"woff",woff2:"woff2"},image:{gif:"gif",ief:"ief",jpeg:["jpeg","jpg","jpe","jfif","jfif-tbnl","jif"],pcx:"pcx",png:"png","svg+xml":["svg","svgz"],tiff:["tiff","tif"],"vnd.djvu":["djvu","djv"],"vnd.wap.wbmp":"wbmp","x-canon-cr2":"cr2","x-canon-crw":"crw","x-cmu-raster":"ras","x-coreldraw":"cdr","x-coreldrawpattern":"pat","x-coreldrawtemplate":"cdt","x-corelphotopaint":"cpt","x-epson-erf":"erf","x-icon":"ico","x-jg":"art","x-jng":"jng","x-nikon-nef":"nef","x-olympus-orf":"orf","x-portable-anymap":"pnm","x-portable-bitmap":"pbm","x-portable-graymap":"pgm","x-portable-pixmap":"ppm","x-rgb":"rgb","x-xbitmap":"xbm","x-xpixmap":"xpm","x-xwindowdump":"xwd",bmp:"bmp",cgm:"cgm",g3fax:"g3",ktx:"ktx","prs.btif":"btif",sgi:"sgi","vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"vnd.dwg":"dwg","vnd.dxf":"dxf","vnd.fastbidsheet":"fbs","vnd.fpx":"fpx","vnd.fst":"fst","vnd.fujixerox.edmics-mmr":"mmr","vnd.fujixerox.edmics-rlc":"rlc","vnd.ms-modi":"mdi","vnd.ms-photo":"wdp","vnd.net-fpx":"npx","vnd.xiff":"xif",webp:"webp","x-3ds":"3ds","x-cmx":"cmx","x-freehand":["fh","fhc","fh4","fh5","fh7"],"x-pict":["pic","pct"],"x-tga":"tga","cis-cod":"cod",avif:"avifs",heic:["heif","heic"],pjpeg:["pjpg"],"vnd.adobe.photoshop":"psd","x-adobe-dng":"dng","x-fuji-raf":"raf","x-icns":"icns","x-kodak-dcr":"dcr","x-kodak-k25":"k25","x-kodak-kdc":"kdc","x-minolta-mrw":"mrw","x-panasonic-raw":["raw","rw2","rwl"],"x-pentax-pef":["pef","ptx"],"x-sigma-x3f":"x3f","x-sony-arw":"arw","x-sony-sr2":"sr2","x-sony-srf":"srf"},message:{rfc822:["eml","mime","mht","mhtml","nws"]},model:{iges:["igs","iges"],mesh:["msh","mesh","silo"],vrml:["wrl","vrml"],"x3d+vrml":["x3dv","x3dvz"],"x3d+xml":"x3dz","x3d+binary":["x3db","x3dbz"],"vnd.collada+xml":"dae","vnd.dwf":"dwf","vnd.gdl":"gdl","vnd.gtw":"gtw","vnd.mts":"mts","vnd.usdz+zip":"usdz","vnd.vtu":"vtu"},text:{"cache-manifest":["manifest","appcache"],calendar:["ics","icz","ifb"],css:"css",csv:"csv",h323:"323",html:["html","htm","shtml","stm"],iuls:"uls",plain:["txt","text","brf","conf","def","list","log","in","bas","diff","ksh"],richtext:"rtx",scriptlet:["sct","wsc"],texmacs:"tm","tab-separated-values":"tsv","vnd.sun.j2me.app-descriptor":"jad","vnd.wap.wml":"wml","vnd.wap.wmlscript":"wmls","x-bibtex":"bib","x-boo":"boo","x-c++hdr":["h++","hpp","hxx","hh"],"x-c++src":["c++","cpp","cxx","cc"],"x-component":"htc","x-dsrc":"d","x-diff":"patch","x-haskell":"hs","x-java":"java","x-literate-haskell":"lhs","x-moc":"moc","x-pascal":["p","pas","pp","inc"],"x-pcs-gcd":"gcd","x-python":"py","x-scala":"scala","x-setext":"etx","x-tcl":["tcl","tk"],"x-tex":["tex","ltx","sty","cls"],"x-vcalendar":"vcs","x-vcard":"vcf",n3:"n3","prs.lines.tag":"dsc",sgml:["sgml","sgm"],troff:["t","tr","roff","man","me","ms"],turtle:"ttl","uri-list":["uri","uris","urls"],vcard:"vcard","vnd.curl":"curl","vnd.curl.dcurl":"dcurl","vnd.curl.scurl":"scurl","vnd.curl.mcurl":"mcurl","vnd.dvb.subtitle":"sub","vnd.fly":"fly","vnd.fmi.flexstor":"flx","vnd.graphviz":"gv","vnd.in3d.3dml":"3dml","vnd.in3d.spot":"spot","x-asm":["s","asm"],"x-c":["c","h","dic"],"x-fortran":["f","for","f77","f90"],"x-opml":"opml","x-nfo":"nfo","x-sfv":"sfv","x-uuencode":"uu",webviewhtml:"htt",javascript:"js",json:"json",markdown:["md","markdown","mdown","markdn"],"vnd.wap.si":"si","vnd.wap.sl":"sl"},video:{avif:"avif","3gpp":"3gp",annodex:"axv",dl:"dl",dv:["dif","dv"],fli:"fli",gl:"gl",mpeg:["mpeg","mpg","mpe","m1v","m2v","mp2","mpa","mpv2"],mp4:["mp4","mp4v","mpg4"],quicktime:["qt","mov"],ogg:"ogv","vnd.mpegurl":["mxu","m4u"],"x-flv":"flv","x-la-asf":["lsf","lsx"],"x-mng":"mng","x-ms-asf":["asf","asx","asr"],"x-ms-wm":"wm","x-ms-wmv":"wmv","x-ms-wmx":"wmx","x-ms-wvx":"wvx","x-msvideo":"avi","x-sgi-movie":"movie","x-matroska":["mpv","mkv","mk3d","mks"],"3gpp2":"3g2",h261:"h261",h263:"h263",h264:"h264",jpeg:"jpgv",jpm:["jpm","jpgm"],mj2:["mj2","mjp2"],"vnd.dece.hd":["uvh","uvvh"],"vnd.dece.mobile":["uvm","uvvm"],"vnd.dece.pd":["uvp","uvvp"],"vnd.dece.sd":["uvs","uvvs"],"vnd.dece.video":["uvv","uvvv"],"vnd.dvb.file":"dvb","vnd.fvt":"fvt","vnd.ms-playready.media.pyv":"pyv","vnd.uvvu.mp4":["uvu","uvvu"],"vnd.vivo":"viv",webm:"webm","x-f4v":"f4v","x-m4v":"m4v","x-ms-vob":"vob","x-smv":"smv",mp2t:"ts"},"x-conference":{"x-cooltalk":"ice"},"x-world":{"x-vrml":["vrm","flr","wrz","xaf","xof"]}},ce=(()=>{const e={};for(const t of Object.keys(oe))for(const n of Object.keys(oe[t])){const r=oe[t][n];if("string"==typeof r)e[r]=t+"/"+n;else for(let i=0;ie;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;de[e]=t}class fe{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^de[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class ue extends TransformStream{constructor(){let e;const t=new fe;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new Uint8Array(4);new DataView(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function pe(e){if(typeof TextEncoder==Y){e=unescape(encodeURIComponent(e));const t=new Uint8Array(e.length);for(let n=0;n0&&t&&(e[n-1]=me.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>Math.round(e/1099511627776)||32,_shiftRight(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let i=0;i>>t),n=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=me.getPartial(i);return r.push(me.partial(t+s&31,t+s>32?n:r.pop(),1)),r}},he={bytes:{fromBits(e){const t=me.bitLength(e)/8,n=new Uint8Array(t);let r;for(let i=0;t>i;i++)3&i||(r=e[i/4]),n[i]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw Error("Cannot hash more than 2^53 - 1 bits");const s=new Uint32Array(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=me.concat(t,[me.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(Math.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}_S(e,t){return t<>>32-e}_block(e){const t=this,n=t._h,r=Array(80);for(let t=0;16>t;t++)r[t]=e[t];let i=n[0],s=n[1],a=n[2],o=n[3],c=n[4];for(let e=0;79>=e;e++){16>e||(r[e]=t._S(1,r[e-3]^r[e-8]^r[e-14]^r[e-16]));const n=t._S(5,i)+t._f(e,s,a,o)+c+r[e]+t._key[Math.floor(e/20)]|0;c=o,o=a,a=t._S(30,s),s=i,i=n}n[0]=n[0]+i|0,n[1]=n[1]+s|0,n[2]=n[2]+a|0,n[3]=n[3]+o|0,n[4]=n[4]+c|0}},ge={getRandomValues(e){const t=new Uint32Array(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(Math.random()>.5?1:-1))};for(let r,i=0;inew xe.hmacSha1(he.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw Error("invalid params to pbkdf2");const i=1+(r>>5)<<2;let s,a,o,c,l;const d=new ArrayBuffer(i),f=new DataView(d);let u=0;const p=me;for(t=he.bytes.toBits(t),l=1;(i||1)>u;l++){for(s=a=e.encrypt(p.concat(t,[l])),o=1;n>o;o++)for(a=e.encrypt(a),c=0;cu&&oi&&(e=(new n).update(e).finalize());for(let t=0;i>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw Error("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},be=typeof crypto!=Y&&typeof crypto.getRandomValues==Q,ve="Invalid password",ye="Invalid signature",_e="zipjs-abort-check-password";function ke(e){return be?crypto.getRandomValues(e):ge.getRandomValues(e)}const Se=16,ze={name:"PBKDF2"},Ae=Object.assign({hash:{name:"HMAC"}},ze),Ce=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},ze),De=["deriveBits"],Ue=[8,12,16],Ee=[16,24,32],We=10,Fe=[0,0,0,0],je=typeof crypto!=Y,qe=je&&crypto.subtle,Te=je&&typeof qe!=Y,Oe=he.bytes,Re=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],i=e.length;let s,a,o,c=1;if(4!==i&&6!==i&&8!==i)throw Error("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],s=i;4*i+28>s;s++){let e=a[s-1];(s%i==0||8===i&&s%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],s%i==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[s]=a[s-i]^e}for(let e=0;s;e++,s--){const t=a[3&e?s:s-4];o[e]=4>=s||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],i=[],s=[];let a,o,c,l;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let d=a=0;!n[d];d^=o||1,a=s[a]||1){let s=a^a<<1^a<<2^a<<3^a<<4;s=s>>8^255&s^99,n[d]=s,r[s]=d,l=i[c=i[o=i[d]]];let f=16843009*l^65537*c^257*o^16843008*d,u=257*i[s]^16843008*s;for(let n=0;4>n;n++)e[n][d]=u=u<<24^u>>>8,t[n][s]=f=f<<24^f>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw Error("invalid aes block size");const n=this._key[t],r=n.length/4-2,i=[0,0,0,0],s=this._tables[t],a=s[0],o=s[1],c=s[2],l=s[3],d=s[4];let f,u,p,m=e[0]^n[0],h=e[t?3:1]^n[1],w=e[2]^n[2],g=e[t?1:3]^n[3],x=4;for(let e=0;r>e;e++)f=a[m>>>24]^o[h>>16&255]^c[w>>8&255]^l[255&g]^n[x],u=a[h>>>24]^o[w>>16&255]^c[g>>8&255]^l[255&m]^n[x+1],p=a[w>>>24]^o[g>>16&255]^c[m>>8&255]^l[255&h]^n[x+2],g=a[g>>>24]^o[m>>16&255]^c[h>>8&255]^l[255&w]^n[x+3],x+=4,m=f,h=u,w=p;for(let e=0;4>e;e++)i[t?3&-e:e]=d[m>>>24]<<24^d[h>>16&255]<<16^d[w>>8&255]<<8^d[255&g]^n[x++],f=m,m=h,h=w,w=g,g=f;return i}},Le=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];const i=me.bitLength(t);for(let i=0;r>i;i+=4){this.incCounter(n);const r=e.encrypt(n);t[i]^=r[0],t[i+1]^=r[1],t[i+2]^=r[2],t[i+3]^=r[3]}return me.clamp(t,i)}},Ie=xe.hmacSha1;let Me=je&&Te&&typeof qe.importKey==Q,Pe=je&&Te&&typeof qe.deriveBits==Q;class Be extends TransformStream{constructor({password:e,rawPassword:t,signed:n,encryptionStrength:r,checkPasswordOnly:i}){super({start(){Object.assign(this,{ready:new Promise((e=>this.resolveReady=e)),password:Ze(e,t),signed:n,strength:r-1,pending:new Uint8Array})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const i=await Ve(e,t,n,Ge(r,0,Ue[t])),s=Ge(r,Ue[t]);if(i[0]!=s[0]||i[1]!=s[1])throw Error(ve)})(n,s,r,Ge(e,0,Ue[s]+2)),e=Ge(e,Ue[s]+2),i?t.error(Error(_e)):a()):await o;const c=new Uint8Array(e.length-We-(e.length-We)%Se);t.enqueue(Ne(n,e,c,0,We,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:i,ready:s}=this;if(r&&n){await s;const a=Ge(i,0,i.length-We),o=Ge(i,i.length-We);let c=new Uint8Array;if(a.length){const e=Je(Oe,a);r.update(e);const t=n.update(e);c=Xe(Oe,t)}if(t){const e=Ge(Xe(Oe,r.digest()),0,We);for(let t=0;We>t;t++)if(e[t]!=o[t])throw Error(ye)}e.enqueue(c)}}})}}class He extends TransformStream{constructor({password:e,rawPassword:t,encryptionStrength:n}){let r;super({start(){Object.assign(this,{ready:new Promise((e=>this.resolveReady=e)),password:Ze(e,t),strength:n-1,pending:new Uint8Array})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:s,ready:a}=n;let o=new Uint8Array;r?(o=await(async(e,t,n)=>{const r=ke(new Uint8Array(Ue[t]));return Ke(r,await Ve(e,t,n,r))})(n,i,r),s()):await a;const c=new Uint8Array(o.length+e.length-e.length%Se);c.set(o,0),t.enqueue(Ne(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:i,ready:s}=this;if(n&&t){await s;let a=new Uint8Array;if(i.length){const e=t.update(Je(Oe,i));n.update(e),a=Xe(Oe,e)}r.signature=Xe(Oe,n.digest()).slice(0,We),e.enqueue(Ke(a,r.signature))}}}),r=this}}function Ne(e,t,n,r,i,s){const{ctr:a,hmac:o,pending:c}=e,l=t.length-i;let d;for(c.length&&(t=Ke(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new Uint8Array(t)).set(n,0)}return e})(n,l-l%Se)),d=0;l-Se>=d;d+=Se){const e=Je(Oe,Ge(t,d,d+Se));s&&o.update(e);const i=a.update(e);s||o.update(i),n.set(Xe(Oe,i),d+r)}return e.pending=Ge(t,d),n}async function Ve(e,t,n,r){e.password=null;const i=await(async(e,t,n,r,i)=>{if(!Me)return xe.importKey(t);try{return await qe.importKey("raw",t,n,!1,i)}catch(e){return Me=!1,xe.importKey(t)}})(0,n,Ae,0,De),s=await(async(e,t,n)=>{if(!Pe)return xe.pbkdf2(t,e.salt,Ce.iterations,n);try{return await qe.deriveBits(e,t,n)}catch(r){return Pe=!1,xe.pbkdf2(t,e.salt,Ce.iterations,n)}})(Object.assign({salt:r},Ce),i,8*(2*Ee[t]+2)),a=new Uint8Array(s),o=Je(Oe,Ge(a,0,Ee[t])),c=Je(Oe,Ge(a,Ee[t],2*Ee[t])),l=Ge(a,2*Ee[t]);return Object.assign(e,{keys:{key:o,authentication:c,passwordVerification:l},ctr:new Le(new Re(o),Array.from(Fe)),hmac:new Ie(c)}),l}function Ze(e,t){return t===J?pe(e):t}function Ke(e,t){let n=e;return e.length+t.length&&(n=new Uint8Array(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Ge(e,t,n){return e.subarray(t,n)}function Xe(e,t){return e.fromBits(t)}function Je(e,t){return e.toBits(t)}class Ye extends TransformStream{constructor({password:e,passwordVerification:t,checkPasswordOnly:n}){super({start(){Object.assign(this,{password:e,passwordVerification:t}),tt(this,e)},transform(e,t){const r=this;if(r.password){const t=$e(r,e.subarray(0,12));if(r.password=null,t[11]!=r.passwordVerification)throw Error(ve);e=e.subarray(12)}n?t.error(Error(_e)):t.enqueue($e(r,e))}})}}class Qe extends TransformStream{constructor({password:e,passwordVerification:t}){super({start(){Object.assign(this,{password:e,passwordVerification:t}),tt(this,e)},transform(e,t){const n=this;let r,i;if(n.password){n.password=null;const t=ke(new Uint8Array(12));t[11]=n.passwordVerification,r=new Uint8Array(e.length+t.length),r.set(et(n,t),0),i=12}else r=new Uint8Array(e.length),i=0;r.set(et(n,e),i),t.enqueue(r)}})}}function $e(e,t){const n=new Uint8Array(t.length);for(let r=0;r>>24]),i=~e.crcKey2.get(),e.keys=[n,r,i]}function rt(e){const t=2|e.keys[2];return it(Math.imul(t,1^t)>>>8)}function it(e){return 255&e}function st(e){return 4294967295&e}const at="deflate-raw";class ot extends TransformStream{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:i,encrypted:s,useCompressionStream:a,zipCrypto:o,signed:c,level:l}=e,d=this;let f,u,p=lt(super.readable);s&&!o||!c||(f=new ue,p=ut(p,f)),i&&(p=ft(p,a,{level:l,chunkSize:t},r,n)),s&&(o?p=ut(p,new Qe(e)):(u=new He(e),p=ut(p,u))),dt(d,p,(()=>{let e;s&&!o&&(e=u.signature),s&&!o||!c||(e=new DataView(f.value.buffer).getUint32(0)),d.signature=e}))}}class ct extends TransformStream{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:s,signed:a,signature:o,compressed:c,useCompressionStream:l}=e;let d,f,u=lt(super.readable);s&&(i?u=ut(u,new Ye(e)):(f=new Be(e),u=ut(u,f))),c&&(u=ft(u,l,{chunkSize:t},r,n)),s&&!i||!a||(d=new ue,u=ut(u,d)),dt(this,u,(()=>{if((!s||i)&&a){const e=new DataView(d.value.buffer);if(o!=e.getUint32(0,!1))throw Error(ye)}}))}}function lt(e){return ut(e,new TransformStream({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function dt(e,t,n){t=ut(t,new TransformStream({flush:n})),Object.defineProperty(e,"readable",{get:()=>t})}function ft(e,t,n,r,i){try{e=ut(e,new(t&&r?r:i)(at,n))}catch(r){if(!t)return e;try{e=ut(e,new i(at,n))}catch(t){return e}}return e}function ut(e,t){return e.pipeThrough(t)}const pt="data",mt="close",ht="deflate",wt="inflate";class gt extends TransformStream{constructor(e,t){super({});const n=this,{codecType:r}=e;let i;r.startsWith(ht)?i=ot:r.startsWith(wt)&&(i=ct);let s=0,a=0;const o=new i(e,t),c=super.readable,l=new TransformStream({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){Object.assign(n,{inputSize:a})}}),d=new TransformStream({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;Object.assign(n,{signature:e,outputSize:s,inputSize:a})}});Object.defineProperty(n,"readable",{get:()=>c.pipeThrough(l).pipeThrough(o).pipeThrough(d)})}}class xt extends TransformStream{constructor(e){let t;super({transform:function n(r,i){if(t){const e=new Uint8Array(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(i.enqueue(r.slice(0,e)),n(r.slice(e),i)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}let bt=typeof Worker!=Y;class vt{constructor(e,{readable:t,writable:n},{options:r,config:i,streamOptions:s,useWebWorkers:a,transferStreams:o,scripts:c},l){const{signal:d}=s;return Object.assign(e,{busy:!0,readable:t.pipeThrough(new xt(i.chunkSize)).pipeThrough(new yt(t,s),{signal:d}),writable:n,options:Object.assign({},r),scripts:c,transferStreams:o,terminate:()=>new Promise((t=>{const{worker:n,busy:r}=e;n?(r?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,l(e)}}),(a&&bt?St:kt)(e,i)}}class yt extends TransformStream{constructor(e,{onstart:t,onprogress:n,size:r,onend:i}){let s=0;super({async start(){t&&await _t(t,r)},async transform(e,t){s+=e.length,n&&await _t(n,s,r),t.enqueue(e)},async flush(){e.size=s,i&&await _t(i,s)}})}}async function _t(e,...t){try{await e(...t)}catch(e){}}function kt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},i)=>{try{const r=new gt(e,i);await t.pipeThrough(r).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:s,inputSize:a,outputSize:o}=r;return{signature:s,inputSize:a,outputSize:o}}finally{r()}})(e,t)}}function St(e,t){const{baseURL:n,chunkSize:r}=t;if(!e.interface){let i;try{i=((e,t,n)=>{const r={type:"module"};let i,s;typeof e==Q&&(e=e());try{i=new URL(e,t)}catch(t){i=e}if(zt)try{s=new Worker(i)}catch(e){zt=!1,s=new Worker(i,r)}else s=new Worker(i,r);return s.addEventListener("message",(e=>(async({data:e},t)=>{const{type:n,value:r,messageId:i,result:s,error:a}=e,{reader:o,writer:c,resolveResult:l,rejectResult:d,onTaskFinished:f}=t;try{if(a){const{message:e,stack:t,code:n,name:r}=a,i=Error(e);Object.assign(i,{stack:t,code:n,name:r}),u(i)}else{if("pull"==n){const{value:e,done:n}=await o.read();Ct({type:pt,value:e,done:n,messageId:i},t)}n==pt&&(await c.ready,await c.write(new Uint8Array(r)),Ct({type:"ack",messageId:i},t)),n==mt&&u(null,s)}}catch(a){Ct({type:mt,messageId:i},t),u(a)}function u(e,t){e?d(e):l(t),c&&c.releaseLock(),f()}})(e,n))),s})(e.scripts[0],n,e)}catch(n){return bt=!1,kt(e,t)}Object.assign(e,{worker:i,interface:{run:()=>(async(e,t)=>{let n,r;const i=new Promise(((e,t)=>{n=e,r=t}));Object.assign(e,{reader:null,writer:null,resolveResult:n,rejectResult:r,result:i});const{readable:s,options:a,scripts:o}=e,{writable:c,closed:l}=(e=>{let t;const n=new Promise((e=>t=e));return{writable:new WritableStream({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),d=Ct({type:"start",scripts:o.slice(1),options:a,config:t,readable:s,writable:c},e);d||Object.assign(e,{reader:s.getReader(),writer:c.getWriter()});const f=await i;return d||await c.getWriter().close(),await l,f})(e,{chunkSize:r})}})}return e.interface}let zt=!0,At=!0;function Ct(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:i}){try{const{value:n,readable:r,writable:s}=e,a=[];if(n&&(n.byteLength{const n=Dt.find((e=>!e.busy));if(n)return Ft(n),new vt(n,e,t,m);if(Dt.lengthUt.push({resolve:n,stream:e,workerOptions:t})))})()).run();function m(e){if(Ut.length){const[{resolve:t,stream:n,workerOptions:r}]=Ut.splice(0,1);t(new vt(e,n,r,m))}else e.worker?(Ft(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;Number.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{Dt=Dt.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),r))})(e,t)):Dt=Dt.filter((t=>t!=e))}}function Ft(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}async function jt(){await Promise.allSettled(Dt.map((e=>(Ft(e),e.terminate()))))}function qt(e,t={},n){return{Deflate:Tt(e.Deflate,t.deflate,n),Inflate:Tt(e.Inflate,t.inflate,n)}}function Tt(e,t,n){return class{constructor(r){const i=this;var s,a;s=r,a="level",(typeof Object.hasOwn===Q?Object.hasOwn(s,a):s.hasOwnProperty(a))&&r.level===J&&delete r.level,i.codec=new e(Object.assign({},t,r)),n(i.codec,(e=>{if(i.pendingData){const t=i.pendingData;i.pendingData=new Uint8Array(t.length+e.length);const{pendingData:n}=i;n.set(t,0),n.set(e,t.length)}else i.pendingData=new Uint8Array(e)}))}append(e){return this.codec.push(e),r(this)}flush(){return this.codec.push(new Uint8Array,!0),r(this)}};function r(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new Uint8Array}}const Ot="HTTP error ",Rt="HTTP Range not supported",Lt="Writer iterator completed too soon",It="Range",Mt="GET",Pt="bytes",Bt=65536,Ht="writable";class Nt{constructor(){this.size=0}init(){this.initialized=!0}}class Vt extends Nt{get readable(){const e=this,{chunkSize:t=Bt}=e,n=new ReadableStream({start(){this.chunkOffset=0},async pull(r){const{offset:i=0,size:s,diskNumberStart:a}=n,{chunkOffset:o}=this;r.enqueue(await _n(e,i+o,Math.min(t,s-o),a)),o+t>s?r.close():this.chunkOffset+=t}});return n}}class Zt extends Nt{constructor(){super();const e=this,t=new WritableStream({write:t=>e.writeUint8Array(t)});Object.defineProperty(e,Ht,{get:()=>t})}writeUint8Array(){}}class Kt extends Vt{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const n=e.indexOf(",")+1;Object.assign(this,{dataURI:e,dataStart:n,size:Math.floor(.75*(t-n))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,i=new Uint8Array(t),s=4*Math.floor(e/3),a=atob(r.substring(s+n,4*Math.ceil((e+t)/3)+n)),o=e-3*Math.floor(s/4);for(let e=o;o+t>e;e++)i[e-o]=a.charCodeAt(e);return i}}class Gt extends Zt{constructor(e){super(),Object.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,r=t.pending;const i=t.pending.length;for(t.pending="",n=0;n<3*Math.floor((i+e.length)/3)-i;n++)r+=String.fromCharCode(e[n]);for(;n2?t.data+=btoa(r):t.pending=r}getData(){return this.data+btoa(this.pending)}}class Xt extends Vt{constructor(e){super(),Object.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,i=e||rt&&(s=s.slice(e,r)),new Uint8Array(s)}}class Jt extends Nt{constructor(e){super();const t=new TransformStream,n=[];e&&n.push(["Content-Type",e]),Object.defineProperty(this,Ht,{get:()=>t.writable}),this.blob=new Response(t.readable,{headers:n}).blob()}getData(){return this.blob}}class Yt extends Xt{constructor(e){super(new Blob([e],{type:"text/plain"}))}}class Qt extends Jt{constructor(e){super(e),Object.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,n=await super.getData();if(n.text&&t)return n.text();{const t=new FileReader;return new Promise(((r,i)=>{Object.assign(t,{onload:({target:e})=>r(e.result),onerror:()=>i(t.error)}),t.readAsText(n,e)}))}}}class $t extends Vt{constructor(e,t){super(),tn(this,e,t)}async init(){await nn(this,fn,on),super.init()}readUint8Array(e,t){return rn(this,e,t,fn,on)}}class en extends Vt{constructor(e,t){super(),tn(this,e,t)}async init(){await nn(this,un,cn),super.init()}readUint8Array(e,t){return rn(this,e,t,un,cn)}}function tn(e,t,n){const{preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a}=n;delete(n=Object.assign({},n)).preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.combineSizeEocd,delete n.useXHR,Object.assign(e,{url:t,options:n,preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a})}async function nn(e,t,n){const{url:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o}=e;if((e=>{const{baseURL:t}=re(),{protocol:n}=new URL(e,t);return"http:"==n||"https:"==n})(r)&&(s||a)&&(void 0===i||i)){const r=await t(Mt,e,sn(e,o?-22:void 0));if(!a&&r.headers.get("Accept-Ranges")!=Pt)throw Error(Rt);{let i;o&&(e.eocdCache=new Uint8Array(await r.arrayBuffer()));const s=r.headers.get("Content-Range");if(s){const e=s.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(i=Number(t))}}i===J?await dn(e,t,n):e.size=i}}else await dn(e,t,n)}async function rn(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,eocdCache:o,size:c,options:l}=e;if(s||a){if(o&&t==c-N&&n==N)return o;const i=await r(Mt,e,sn(e,t,n));if(206!=i.status)throw Error(Rt);return new Uint8Array(await i.arrayBuffer())}{const{data:r}=e;return r||await i(e,l),new Uint8Array(e.data.subarray(t,t+n))}}function sn(e,t=0,n=1){return Object.assign({},an(e),{[It]:Pt+"="+(0>t?t:t+"-"+(t+n-1))})}function an({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?Object.fromEntries(t):t}async function on(e){await ln(e,fn)}async function cn(e){await ln(e,un)}async function ln(e,t){const n=await t(Mt,e,an(e));e.data=new Uint8Array(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function dn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,an(e))).headers.get("Content-Length");r?e.size=Number(r):await n(e,e.options)}}async function fn(e,{options:t,url:n},r){const i=await fetch(n,Object.assign({},t,{method:e,headers:r}));if(400>i.status)return i;throw 416==i.status?Error(Rt):Error(Ot+(i.statusText||i.status))}function un(e,{url:t},n){return new Promise(((r,i)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",(()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),r({status:s.status,arrayBuffer:()=>s.response,headers:new Map(e)})}else i(416==s.status?Error(Rt):Error(Ot+(s.statusText||s.status)))}),!1),s.addEventListener("error",(e=>i(e.detail?e.detail.error:Error("Network error"))),!1),s.open(e,t),n)for(const e of Object.entries(n))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()}))}class pn extends Vt{constructor(e,t={}){super(),Object.assign(this,{url:e,reader:t.useXHR?new en(e,t):new $t(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class mn extends pn{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}}class hn extends Vt{constructor(e){super(),Object.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class wn extends Zt{init(e=0){Object.assign(this,{offset:0,array:new Uint8Array(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new Uint8Array(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}}class gn extends Vt{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await Promise.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:i}=this;let s,a=n;-1==a&&(a=i.length-1);let o=e;for(;o>=i[a].size;)o-=i[a].size,a++;const c=i[a],l=c.size;if(o+t>l){const i=l-o;s=new Uint8Array(t),s.set(await _n(c,o,i)),s.set(await r.readUint8Array(e+i,t-i,n),i)}else s=await _n(c,o,t);return r.lastDiskNumber=Math.max(a,r.lastDiskNumber),s}}class xn extends Nt{constructor(e,t=4294967295){super();const n=this;let r,i,s;Object.assign(n,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const a=new WritableStream({async write(t){const{availableSize:a}=n;if(s)t.lengtha})}}async function bn(e,t){if(!e.init||e.initialized)return Promise.resolve();await e.init(t)}function vn(e){return Array.isArray(e)&&(e=new gn(e)),e instanceof ReadableStream&&(e={readable:e}),e}function yn(e){e.writable===J&&typeof e.next==Q&&(e=new xn(e)),e instanceof WritableStream&&(e={writable:e});const{writable:t}=e;return t.size===J&&(t.size=0),e instanceof xn||Object.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function _n(e,t,n,r){return e.readUint8Array(t,n,r)}const kn=gn,Sn=xn,zn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function An(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const Xn="File format is not recognized",Jn="End of central directory not found",Yn="End of Zip64 central directory locator not found",Qn="Central directory header not found",$n="Local file header not found",er="Zip64 extra field not found",tr="File contains encrypted entry",nr="Encryption method not supported",rr="Compression method not supported",ir="Split zip file",sr="utf-8",ar="cp437",or=[[Wn,T],[Fn,T],[jn,T],[qn,O]],cr={[O]:{getValue:vr,bytes:4},[T]:{getValue:yr,bytes:8}};class lr{constructor(e,t={}){Object.assign(this,{reader:vn(e),options:t,config:re()})}async*getEntriesGenerator(e={}){const t=this;let{reader:n}=t;const{config:r}=t;if(await bn(n),n.size!==J&&n.readUint8Array||(n=new Xt(await new Response(n.readable).blob()),await bn(n)),n.size{const r=new Uint8Array(4);var i;return i=t,_r(r).setUint32(0,i,!0),await s(22)||await s(Math.min(1048582,n));async function s(t){const i=n-t,s=await _n(e,i,t);for(let e=s.length-22;e>=0;e--)if(s[e]==r[0]&&s[e+1]==r[1]&&s[e+2]==r[2]&&s[e+3]==r[3])return{offset:i+e,buffer:s.slice(e,e+22).buffer}}})(n,P,n.size);if(!i)throw vr(_r(await _n(n,0,4)))==L?Error(ir):Error(Jn);const s=_r(i);let a=vr(s,12),o=vr(s,16);const c=i.offset,l=br(s,20),d=c+N+l;let f=br(s,4);const u=n.lastDiskNumber||0;let p=br(s,6),m=br(s,8),h=0,w=0;if(o==T||a==T||m==O||p==O){const e=_r(await _n(n,i.offset-20,20));if(vr(e,0)==H){o=yr(e,8);let t=await _n(n,o,56,-1),r=_r(t);const s=i.offset-20-56;if(vr(r,0)!=B&&o!=s){const e=o;o=s,h=o-e,t=await _n(n,o,56,-1),r=_r(t)}if(vr(r,0)!=B)throw Error(Yn);f==O&&(f=vr(r,16)),p==O&&(p=vr(r,20)),m==O&&(m=yr(r,32)),a==T&&(a=yr(r,40)),o-=a}}if(oo)throw Error(Xn);let g=0,x=await _n(n,o,a,p),b=_r(x);if(a){const e=i.offset-a;if(vr(b,g)!=M&&o!=e){const t=o;o=e,h+=o-t,x=await _n(n,o,a,p),b=_r(x)}}const v=i.offset-o-(n.lastDiskOffset||0);if(a==v||0>v||(a=v,x=await _n(n,o,a,p),b=_r(x)),0>o||o>=n.size)throw Error(Xn);const y=hr(t,e,"filenameEncoding"),_=hr(t,e,"commentEncoding");for(let i=0;m>i;i++){const s=new fr(n,r,t.options);if(vr(b,g)!=M)throw Error(Qn);ur(s,b,g+6);const a=!!s.bitFlag.languageEncodingFlag,o=g+46,c=o+s.filenameLength,l=c+s.extraFieldLength,d=br(b,g+4),f=!0,u=x.subarray(o,c),p=br(b,g+32),v=l+p,k=x.subarray(l,v),S=a,z=a,A=f&&!(16&~xr(b,g+38)),C=vr(b,g+42)+h;Object.assign(s,{versionMadeBy:d,msDosCompatible:f,compressedSize:0,uncompressedSize:0,commentLength:p,directory:A,offset:C,diskNumberStart:br(b,g+34),internalFileAttribute:br(b,g+36),externalFileAttribute:vr(b,g+38),rawFilename:u,filenameUTF8:S,commentUTF8:z,rawExtraField:x.subarray(c,l)});const D=hr(t,e,"decodeText")||An,U=S?sr:y||ar,E=z?sr:_||ar;let W=D(u,U);W===J&&(W=An(u,U));let F=D(k,E);F===J&&(F=An(k,E)),Object.assign(s,{rawComment:k,filename:W,comment:F,directory:A||W.endsWith(K)}),w=Math.max(C,w),pr(s,s,b,g+6),s.zipCrypto=s.encrypted&&!s.extraFieldAES;const j=new Gn(s);j.getData=(e,t)=>s.getData(e,j,t),g=v;const{onprogress:q}=e;if(q)try{await q(i+1,m,new Gn(s))}catch(e){}yield j}const k=hr(t,e,"extractPrependedData"),S=hr(t,e,"extractAppendedData");return k&&(t.prependedData=w>0?await _n(n,0,w):new Uint8Array),t.comment=l?await _n(n,c+N,l):new Uint8Array,S&&(t.appendedData=d{const{readable:e,writable:t}=new TransformStream;if(n.getData)return n.getData(t),e})()};delete i.getData,e.enqueue(i)}}),this.writable=n}}let fr=class{constructor(e,t,n){Object.assign(this,{reader:e,config:t,options:n})}async getData(e,t,n={}){const r=this,{reader:i,offset:s,diskNumberStart:a,extraFieldAES:o,compressionMethod:c,config:l,bitFlag:d,signature:f,rawLastModDate:u,uncompressedSize:p,compressedSize:m}=r,h=t.localDirectory={},w=_r(await _n(i,s,30,a));let g=hr(r,n,"password"),x=hr(r,n,"rawPassword");const b=hr(r,n,"passThrough");if(g=g&&g.length&&g,x=x&&x.length&&x,o&&99!=o.originalCompressionMethod)throw Error(rr);if(0!=c&&8!=c&&!b)throw Error(rr);if(vr(w,0)!=R)throw Error($n);ur(h,w,4),h.rawExtraField=h.extraFieldLength?await _n(i,s+30+h.filenameLength,h.extraFieldLength,a):new Uint8Array,pr(r,h,w,4,!0),Object.assign(t,{lastAccessDate:h.lastAccessDate,creationDate:h.creationDate});const v=r.encrypted&&h.encrypted&&!b,y=v&&!o;if(b||(t.zipCrypto=y),v){if(!y&&o.strength===J)throw Error(nr);if(!g&&!x)throw Error(tr)}const _=s+30+h.filenameLength+h.extraFieldLength,k=m,S=i.readable;Object.assign(S,{diskNumberStart:a,offset:_,size:k});const z=hr(r,n,"signal"),A=hr(r,n,"checkPasswordOnly");A&&(e=new WritableStream),e=yn(e),await bn(e,b?m:p);const{writable:C}=e,{onstart:D,onprogress:U,onend:E}=n,W={options:{codecType:wt,password:g,rawPassword:x,zipCrypto:y,encryptionStrength:o&&o.strength,signed:hr(r,n,"checkSignature")&&!b,passwordVerification:y&&(d.dataDescriptor?u>>>8&255:f>>>24&255),signature:f,compressed:0!=c&&!b,encrypted:r.encrypted&&!b,useWebWorkers:hr(r,n,"useWebWorkers"),useCompressionStream:hr(r,n,"useCompressionStream"),transferStreams:hr(r,n,"transferStreams"),checkPasswordOnly:A},config:l,streamOptions:{signal:z,size:k,onstart:D,onprogress:U,onend:E}};let F=0;try{({outputSize:F}=await Wt({readable:S,writable:C},W))}catch(e){if(!A||e.message!=_e)throw e}finally{const e=hr(r,n,"preventClose");C.size+=F,e||C.locked||await C.getWriter().close()}return A?J:e.getData?e.getData():C}};function ur(e,t,n){const r=e.rawBitFlag=br(t,n+2),i=!(1&~r),s=vr(t,n+6);Object.assign(e,{encrypted:i,version:br(t,n),bitFlag:{level:(6&r)>>1,dataDescriptor:!(8&~r),languageEncodingFlag:(r&Z)==Z},rawLastModDate:s,lastModDate:wr(s),filenameLength:br(t,n+22),extraFieldLength:br(t,n+24)})}function pr(e,t,n,r,i){const{rawExtraField:s}=t,a=t.extraField=new Map,o=_r(new Uint8Array(s));let c=0;try{for(;c{t.zip64=!0;const n=_r(e.data),r=or.filter((([e,n])=>t[e]==n));for(let i=0,s=0;i{const r=_r(e.data),i=xr(r,4);Object.assign(e,{vendorVersion:xr(r,0),vendorId:xr(r,2),strength:i,originalCompressionMethod:n,compressionMethod:br(r,5)}),t.compressionMethod=e.compressionMethod})(p,t,l),t.extraFieldAES=p):t.compressionMethod=l;const m=a.get(10);m&&(((e,t)=>{const n=_r(e.data);let r,i=4;try{for(;i{const r=_r(e.data),i=xr(r,0),s=[],a=[];n?(1&~i||(s.push(Tn),a.push(On)),2&~i||(s.push(Rn),a.push("rawLastAccessDate")),4&~i||(s.push(Ln),a.push("rawCreationDate"))):5>e.data.length||(s.push(Tn),a.push(On));let o=1;s.forEach(((n,i)=>{if(e.data.length>=o+4){const s=vr(r,o);t[n]=e[n]=new Date(1e3*s);const c=a[i];e[c]=s}o+=4}))})(h,t,i),t.extraFieldExtendedTimestamp=h);const w=a.get(6534);w&&(t.extraFieldUSDZ=w)}function mr(e,t,n,r,i){const s=_r(e.data),a=new fe;a.append(i[n]);const o=_r(new Uint8Array(4));o.setUint32(0,a.get(),!0);const c=vr(s,1);Object.assign(e,{version:xr(s,0),[t]:An(e.data.subarray(5)),valid:!i.bitFlag.languageEncodingFlag&&c==vr(o,0)}),e.valid&&(r[t]=e[t],r[t+"UTF8"]=!0)}function hr(e,t,n){return t[n]===J?e.options[n]:t[n]}function wr(e){const t=(4294901760&e)>>16,n=65535&e;try{return new Date(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function gr(e){return new Date(Number(e/BigInt(1e4)-BigInt(116444736e5)))}function xr(e,t){return e.getUint8(t)}function br(e,t){return e.getUint16(t,!0)}function vr(e,t){return e.getUint32(t,!0)}function yr(e,t){return Number(e.getBigUint64(t,!0))}function _r(e){return new DataView(e.buffer)}const kr="File already exists",Sr="Zip file comment exceeds 64KB",zr="File entry comment exceeds 64KB",Ar="File entry name exceeds 64KB",Cr="Version exceeds 65535",Dr="The strength must equal 1, 2, or 3",Ur="Extra field type exceeds 65535",Er="Extra field data exceeds 64KB",Wr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",Fr="Undefined uncompressed size",jr=new Uint8Array([7,0,2,0,65,69,3,0,0]);let qr=0;const Tr=[];class Or{constructor(e,t={}){const n=(e=yn(e)).availableSize!==J&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==J&&e.maxSize>0&&e.maxSize!==1/0;Object.assign(this,{writer:e,addSplitZipSignature:n,options:t,config:re(),files:new Map,filenames:new Set,offset:t.offset===J?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new Set,bufferedWrites:0})}async add(e="",t,n={}){const r=this,{pendingAddFileCalls:i,config:s}=r;let a;qrTr.push(e)));try{if(e=e.trim(),r.filenames.has(e))throw Error(kr);return r.filenames.add(e),a=(async(e,t,n,r)=>{t=t.trim(),r.directory&&!t.endsWith(K)?t+=K:r.directory=t.endsWith(K);const i=Mr(e,r,"encodeText",pe);let s=i(t);if(s===J&&(s=pe(t)),Gr(s)>O)throw Error(Ar);const a=r.comment||"";let o=i(a);if(o===J&&(o=pe(a)),Gr(o)>O)throw Error(zr);const c=Mr(e,r,Nn,20);if(c>O)throw Error(Cr);const l=Mr(e,r,Vn,20);if(l>O)throw Error(Cr);const d=Mr(e,r,Tn,new Date),f=Mr(e,r,Rn),u=Mr(e,r,Ln),p=Mr(e,r,Pn,!0),m=Mr(e,r,In,0),h=Mr(e,r,Mn,0),w=Mr(e,r,"passThrough");let g,x;w||(g=Mr(e,r,"password"),x=Mr(e,r,"rawPassword"));const b=Mr(e,r,"encryptionStrength",3),v=Mr(e,r,Zn),y=Mr(e,r,"extendedTimestamp",!0),_=Mr(e,r,"keepOrder",!0),k=Mr(e,r,"level"),S=Mr(e,r,"useWebWorkers"),z=Mr(e,r,"bufferedWrite"),A=Mr(e,r,"dataDescriptorSignature",!1),C=Mr(e,r,"signal"),D=Mr(e,r,"useUnicodeFileNames",!0),U=Mr(e,r,"useCompressionStream"),E=Mr(e,r,"compressionMethod");let W=Mr(e,r,"dataDescriptor",!0),F=Mr(e,r,Bn);if(!v&&(g!==J||x!==J)&&(1>b||b>3))throw Error(Dr);let j=new Uint8Array;const{extraField:q}=r;if(q){let e=0,t=0;q.forEach((t=>e+=4+Gr(t))),j=new Uint8Array(e),q.forEach(((e,n)=>{if(n>O)throw Error(Ur);if(Gr(e)>O)throw Error(Er);Zr(j,new Uint16Array([n]),t),Zr(j,new Uint16Array([Gr(e)]),t+2),Zr(j,e,t+4),t+=4+Gr(e)}))}let M=0,P=0,B=0;if(w&&(({uncompressedSize:B}=r),B===J))throw Error(Fr);const H=!0===F;n&&(n=vn(n),await bn(n),w?M=Pr(B):n.size===J?(W=!0,(F||F===J)&&(F=!0,B=M=4294967296)):(B=n.size,M=Pr(B)));const{diskOffset:N,diskNumber:Y,maxSize:Q}=e.writer,$=H||B>T,ee=H||M>T,te=H||e.offset+e.pendingEntriesSize-N>T,ne=Mr(e,r,"supportZip64SplitFile",!0)&&H||Y+Math.ceil(e.pendingEntriesSize/Q)>O;if(te||$||ee||ne){if(!1===F||!_)throw Error(Wr);F=!0}F=F||!1;const re=Mr(e,r,Hn),{signature:se}=r,ae=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:i,level:s,zip64:a,zipCrypto:o,useUnicodeFileNames:c,dataDescriptor:l,directory:d,rawExtraField:f,encryptionStrength:u,extendedTimestamp:p,encrypted:m}=e;let{version:h,compressionMethod:w}=e;const g=!d&&(s>0||s===J&&0!==w);let x,b,v,y;if(m&&!o){x=new Uint8Array(Gr(jr)+2);const e=Kr(x);Hr(e,0,39169),Zr(x,jr,2),Br(e,8,u)}else x=new Uint8Array;if(p){v=new Uint8Array(9+(r?4:0)+(i?4:0));const e=Kr(v);Hr(e,0,V),Hr(e,2,Gr(v)-4),y=1+(r?2:0)+(i?4:0),Br(e,4,y);let t=5;Nr(e,t,Math.floor(n.getTime()/1e3)),t+=4,r&&(Nr(e,t,Math.floor(r.getTime()/1e3)),t+=4),i&&Nr(e,t,Math.floor(i.getTime()/1e3));try{b=new Uint8Array(36);const e=Kr(b),t=Ir(n);Hr(e,0,10),Hr(e,2,32),Hr(e,8,1),Hr(e,10,24),Vr(e,12,t),Vr(e,20,Ir(r)||t),Vr(e,28,Ir(i)||t)}catch(e){b=new Uint8Array}}else b=v=new Uint8Array;let _=0;c&&(_|=Z),l&&(_|=8),w===J&&(w=g?8:0),8==w&&(s>=1&&3>s&&(_|=6),s>=3&&5>s&&(_|=1),9===s&&(_|=2)),a&&(h=h>45?h:45),m&&(_|=1,o||(h=h>51?h:51,x[9]=w,w=99));const k=new Uint8Array(26),S=Kr(k);Hr(S,0,h),Hr(S,2,_),Hr(S,4,w);const z=new Uint32Array(1),A=Kr(z);let C;C=X>n?X:n>G?G:n,Hr(A,0,(C.getHours()<<6|C.getMinutes())<<5|C.getSeconds()/2),Hr(A,2,(C.getFullYear()-1980<<4|C.getMonth()+1)<<5|C.getDate());const D=z[0];Nr(S,6,D),Hr(S,22,Gr(t));const U=Gr(x,v,b,f);Hr(S,24,U);const E=new Uint8Array(30+Gr(t)+U);return Nr(Kr(E),0,R),Zr(E,k,4),Zr(E,t,30),Zr(E,x,30+Gr(t)),Zr(E,v,30+Gr(t,x)),Zr(E,b,30+Gr(t,x,v)),Zr(E,f,30+Gr(t,x,v,b)),{localHeaderArray:E,headerArray:k,headerView:S,lastModDate:n,rawLastModDate:D,encrypted:m,compressed:g,version:h,compressionMethod:w,extraFieldExtendedTimestampFlag:y,rawExtraFieldExtendedTimestamp:v,rawExtraFieldNTFS:b,rawExtraFieldAES:x,extraFieldLength:U}})(r=Object.assign({},r,{rawFilename:s,rawComment:o,version:c,versionMadeBy:l,lastModDate:d,lastAccessDate:f,creationDate:u,rawExtraField:j,zip64:F,zip64UncompressedSize:$,zip64CompressedSize:ee,zip64Offset:te,zip64DiskNumberStart:ne,password:g,rawPassword:x,level:U||e.config.CompressionStream!==J||e.config.CompressionStreamNative!==J?k:0,useWebWorkers:S,encryptionStrength:b,extendedTimestamp:y,zipCrypto:v,bufferedWrite:z,keepOrder:_,useUnicodeFileNames:D,dataDescriptor:W,dataDescriptorSignature:A,signal:C,msDosCompatible:p,internalFileAttribute:m,externalFileAttribute:h,useCompressionStream:U,passThrough:w,encrypted:!!(g&&Gr(g)||x&&Gr(x))||w&&re,signature:se,compressionMethod:E})),oe=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let i,s=new Uint8Array,a=0;return n&&(s=new Uint8Array(t?r?24:20:r?16:12),i=Kr(s),r&&(a=4,Nr(i,0,I))),{dataDescriptorArray:s,dataDescriptorView:i,dataDescriptorOffset:a}})(r),ce=Gr(ae.localHeaderArray,oe.dataDescriptorArray);let le;P=ce+M,e.options.usdz&&(P+=P+64),e.pendingEntriesSize+=P;try{le=await(async(e,t,n,r,i)=>{const{files:s,writer:a}=e,{keepOrder:o,dataDescriptor:c,signal:l}=i,{headerInfo:d}=r,{usdz:f}=e.options,u=Array.from(s.values()).pop();let p,m,h,w,g,x,b,v={};s.set(t,v);try{let d;o&&(d=u&&u.lock,v.lock=new Promise((e=>h=e))),!(i.bufferedWrite||e.writerLocked||e.bufferedWrites&&o)&&c||f?(x=a,await y()):(x=new TransformStream,b=new Response(x.readable).blob(),x.writable.size=0,p=!0,e.bufferedWrites++,await bn(a)),await bn(x);const{writable:m}=a;let{diskOffset:k}=a;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new Uint8Array(4);Nr(Kr(t),0,L),await Lr(m,t),e.offset+=4}f&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:r,extraFieldLength:i}=n,s=Kr(r),a=64-(t+Gr(r))%64;4>a&&(a+=64);const o=new Uint8Array(a),c=Kr(o);Hr(c,0,6534),Hr(c,2,a-2);const l=r;n.localHeaderArray=r=new Uint8Array(Gr(l)+a),Zr(r,l),Zr(r,o,Gr(l)),s=Kr(r),Hr(s,28,i+a),e.metadataSize+=a})(r,e.offset-k),p||(await d,await _(m));const{diskNumber:S}=a;if(g=!0,v.diskNumberStart=S,v=await(async(e,t,{diskNumberStart:n,lock:r},i,s,a)=>{const{headerInfo:o,dataDescriptorInfo:c,metadataSize:l}=i,{localHeaderArray:d,headerArray:f,lastModDate:u,rawLastModDate:p,encrypted:m,compressed:h,version:w,compressionMethod:g,rawExtraFieldExtendedTimestamp:x,extraFieldExtendedTimestampFlag:b,rawExtraFieldNTFS:v,rawExtraFieldAES:y}=o,{dataDescriptorArray:_}=c,{rawFilename:k,lastAccessDate:S,creationDate:z,password:A,rawPassword:C,level:D,zip64:U,zip64UncompressedSize:E,zip64CompressedSize:W,zip64Offset:F,zip64DiskNumberStart:j,zipCrypto:q,dataDescriptor:O,directory:R,versionMadeBy:L,rawComment:I,rawExtraField:M,useWebWorkers:P,onstart:B,onprogress:H,onend:N,signal:V,encryptionStrength:Z,extendedTimestamp:K,msDosCompatible:G,internalFileAttribute:X,externalFileAttribute:Y,useCompressionStream:Q,passThrough:$}=a,ee={lock:r,versionMadeBy:L,zip64:U,directory:!!R,filenameUTF8:!0,rawFilename:k,commentUTF8:!0,rawComment:I,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:v,rawExtraFieldAES:y,rawExtraField:M,extendedTimestamp:K,msDosCompatible:G,internalFileAttribute:X,externalFileAttribute:Y,diskNumberStart:n};let{signature:te,uncompressedSize:ne}=a,re=0;$||(ne=0);const{writable:se}=t;if(e){e.chunkSize=ie(s),await Lr(se,d);const t=e.readable,n=t.size=e.size,r={options:{codecType:ht,level:D,rawPassword:C,password:A,encryptionStrength:Z,zipCrypto:m&&q,passwordVerification:m&&q&&p>>8&255,signed:!$,compressed:h&&!$,encrypted:m&&!$,useWebWorkers:P,useCompressionStream:Q,transferStreams:!1},config:s,streamOptions:{signal:V,size:n,onstart:B,onprogress:H,onend:N}},i=await Wt({readable:t,writable:se},r);re=i.outputSize,$||(ne=i.inputSize,te=i.signature),se.size+=ne}else await Lr(se,d);let ae;if(U){let e=4;E&&(e+=8),W&&(e+=8),F&&(e+=8),j&&(e+=4),ae=new Uint8Array(e)}else ae=new Uint8Array;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:i,uncompressedSize:s,headerInfo:a,dataDescriptorInfo:o}=e,{headerView:c,encrypted:l}=a,{dataDescriptorView:d,dataDescriptorOffset:f}=o,{zip64:u,zip64UncompressedSize:p,zip64CompressedSize:m,zipCrypto:h,dataDescriptor:w}=t;if(l&&!h||n===J||(Nr(c,10,n),w&&Nr(d,f,n)),u){const e=Kr(r);Hr(e,0,1),Hr(e,2,Gr(r)-4);let t=4;p&&(Nr(c,18,T),Vr(e,t,BigInt(s)),t+=8),m&&(Nr(c,14,T),Vr(e,t,BigInt(i))),w&&(Vr(d,f+4,BigInt(i)),Vr(d,f+12,BigInt(s)))}else Nr(c,14,i),Nr(c,18,s),w&&(Nr(d,f+4,i),Nr(d,f+8,s))})({signature:te,rawExtraFieldZip64:ae,compressedSize:re,uncompressedSize:ne,headerInfo:o,dataDescriptorInfo:c},a),O&&await Lr(se,_),Object.assign(ee,{uncompressedSize:ne,compressedSize:re,lastModDate:u,rawLastModDate:p,creationDate:z,lastAccessDate:S,encrypted:m,zipCrypto:q,size:l+re,compressionMethod:g,version:w,headerArray:f,signature:te,rawExtraFieldZip64:ae,extraFieldExtendedTimestampFlag:b,zip64UncompressedSize:E,zip64CompressedSize:W,zip64Offset:F,zip64DiskNumberStart:j}),ee})(n,x,v,r,e.config,i),g=!1,s.set(t,v),v.filename=t,p){await x.writable.getWriter().close();let e=await b;await d,await y(),w=!0,c||(e=await(async(e,t,n,{zipCrypto:r})=>{let i;i=await t.slice(0,26).arrayBuffer(),26!=i.byteLength&&(i=i.slice(0,26));const s=new DataView(i);return e.encrypted&&!r||Nr(s,14,e.signature),e.zip64?(Nr(s,18,T),Nr(s,22,T)):(Nr(s,18,e.compressedSize),Nr(s,22,e.uncompressedSize)),await Lr(n,new Uint8Array(i)),t.slice(i.byteLength)})(v,e,m,i)),await _(m),v.diskNumberStart=a.diskNumber,k=a.diskOffset,await e.stream().pipeTo(m,{preventClose:!0,preventAbort:!0,signal:l}),m.size+=e.size,w=!1}if(v.offset=e.offset-k,v.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:i}=e,{zip64UncompressedSize:s,zip64CompressedSize:a,zip64Offset:o,zip64DiskNumberStart:c}=t,l=Kr(n);let d=4;s&&(d+=8),a&&(d+=8),o&&(Vr(l,d,BigInt(r)),d+=8),c&&Nr(l,d,i)})(v,i);else if(v.offset>T)throw Error(Wr);return e.offset+=v.size,v}catch(n){if(p&&w||!p&&g){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch(e){}p?e.offset+=x.writable.size:e.offset=x.writable.size}throw s.delete(t),n}finally{p&&e.bufferedWrites--,h&&h(),m&&m()}async function y(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new Promise((t=>m=()=>{e.writerLocked=!1,t()})),await t}async function _(e){Gr(d.localHeaderArray)>a.availableSize&&(a.availableSize=0,await Lr(e,new Uint8Array))}})(e,t,n,{headerInfo:ae,dataDescriptorInfo:oe,metadataSize:ce},r)}finally{e.pendingEntriesSize-=P}return Object.assign(le,{name:t,comment:a,extraField:q}),new Gn(le)})(r,e,t,n),i.add(a),await a}catch(t){throw r.filenames.delete(e),t}finally{i.delete(a);const e=Tr.shift();e?e():qr--}}async close(e=new Uint8Array,t={}){const{pendingAddFileCalls:n,writer:r}=this,{writable:i}=r;for(;n.size;)await Promise.allSettled(Array.from(n));return await(async(e,t,n)=>{const{files:r,writer:i}=e,{diskOffset:s,writable:a}=i;let{diskNumber:o}=i,c=0,l=0,d=e.offset-s,f=r.size;for(const[,e]of r){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:r,rawComment:i,rawExtraFieldNTFS:s,rawExtraField:a,extendedTimestamp:o,extraFieldExtendedTimestampFlag:c,lastModDate:d}=e;let f;if(o){f=new Uint8Array(9);const e=Kr(f);Hr(e,0,V),Hr(e,2,5),Br(e,4,c),Nr(e,5,Math.floor(d.getTime()/1e3))}else f=new Uint8Array;e.rawExtraFieldCDExtendedTimestamp=f,l+=46+Gr(t,i,n,r,s,f,a)}const u=new Uint8Array(l),p=Kr(u);await bn(i);let m=0;for(const[e,t]of Array.from(r.values()).entries()){const{offset:s,rawFilename:o,rawExtraFieldZip64:l,rawExtraFieldAES:d,rawExtraFieldCDExtendedTimestamp:f,rawExtraFieldNTFS:h,rawExtraField:w,rawComment:g,versionMadeBy:x,headerArray:b,directory:v,zip64:y,zip64UncompressedSize:_,zip64CompressedSize:k,zip64DiskNumberStart:S,zip64Offset:z,msDosCompatible:A,internalFileAttribute:C,externalFileAttribute:D,diskNumberStart:U,uncompressedSize:E,compressedSize:W}=t,F=Gr(l,d,f,h,w);Nr(p,c,M),Hr(p,c+4,x);const j=Kr(b);_||Nr(j,18,E),k||Nr(j,14,W),Zr(u,b,c+6),Hr(p,c+30,F),Hr(p,c+32,Gr(g)),Hr(p,c+34,y&&S?O:U),Hr(p,c+36,C),D?Nr(p,c+38,D):v&&A&&Br(p,c+38,16),Nr(p,c+42,y&&z?T:s),Zr(u,o,c+46),Zr(u,l,c+46+Gr(o)),Zr(u,d,c+46+Gr(o,l)),Zr(u,f,c+46+Gr(o,l,d)),Zr(u,h,c+46+Gr(o,l,d,f)),Zr(u,w,c+46+Gr(o,l,d,f,h)),Zr(u,g,c+46+Gr(o)+F);const q=46+Gr(o,g)+F;if(c-m>i.availableSize&&(i.availableSize=0,await Lr(a,u.slice(m,c)),m=c),c+=q,n.onprogress)try{await n.onprogress(e+1,r.size,new Gn(t))}catch(e){}}await Lr(a,m?u.slice(m):u);let h=i.diskNumber;const{availableSize:w}=i;N>w&&h++;let g=Mr(e,n,Bn);if(d>T||l>T||f>O||h>O){if(!1===g)throw Error(Wr);g=!0}const x=new Uint8Array(g?98:N),b=Kr(x);c=0,g&&(Nr(b,0,B),Vr(b,4,BigInt(44)),Hr(b,12,45),Hr(b,14,45),Nr(b,16,h),Nr(b,20,o),Vr(b,24,BigInt(f)),Vr(b,32,BigInt(f)),Vr(b,40,BigInt(l)),Vr(b,48,BigInt(d)),Nr(b,56,H),Vr(b,64,BigInt(d)+BigInt(l)),Nr(b,72,h+1),Mr(e,n,"supportZip64SplitFile",!0)&&(h=O,o=O),f=O,d=T,l=T,c+=76),Nr(b,c,P),Hr(b,c+4,h),Hr(b,c+6,o),Hr(b,c+8,f),Hr(b,c+10,f),Nr(b,c+12,l),Nr(b,c+16,d);const v=Gr(t);if(v){if(v>O)throw Error(Sr);Hr(b,c+20,v)}await Lr(a,x),v&&await Lr(a,t)})(this,e,t),Mr(this,t,"preventClose")||await i.getWriter().close(),r.getData?r.getData():i}}class Rr{constructor(e={}){const{readable:t,writable:n}=new TransformStream;this.readable=t,this.zipWriter=new Or(n,e)}transform(e){const{readable:t,writable:n}=new TransformStream({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new TransformStream;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}}async function Lr(e,t){const n=e.getWriter();try{await n.ready,e.size+=Gr(t),await n.write(t)}finally{n.releaseLock()}}function Ir(e){if(e)return(BigInt(e.getTime())+BigInt(116444736e5))*BigInt(1e4)}function Mr(e,t,n,r){const i=t[n]===J?e.options[n]:t[n];return i===J?r:i}function Pr(e){return e+5*(Math.floor(e/16383)+1)}function Br(e,t,n){e.setUint8(t,n)}function Hr(e,t,n){e.setUint16(t,n,!0)}function Nr(e,t,n){e.setUint32(t,n,!0)}function Vr(e,t,n){e.setBigUint64(t,n,!0)}function Zr(e,t,n){e.set(t,n)}function Kr(e){return new DataView(e.buffer)}function Gr(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}class Xr{constructor(e,t,n,r){const i=this;if(e.root&&r&&r.getChildByName(t))throw Error("Entry filename already exists");n||(n={}),Object.assign(i,{fs:e,name:t,data:n.data,options:n.options,id:e.entries.length,parent:r,children:[],uncompressedSize:n.uncompressedSize||0,passThrough:n.passThrough}),e.entries.push(i),r&&i.parent.children.push(i)}moveTo(e){this.fs.move(this,e)}getFullname(){return this.getRelativeName()}getRelativeName(e=this.fs.root){let t=this.name,n=this.parent;for(;n&&n!=e;)t=(n.name?n.name+"/":"")+t,n=n.parent;return t}isDescendantOf(e){let t=this.parent;for(;t&&t.id!=e.id;)t=t.parent;return!!t}rename(e){const t=this.parent;if(t&&t.getChildByName(e))throw Error("Entry filename already exists");this.name=e}}class Jr extends Xr{constructor(e,t,n,r){super(e,t,n,r);const i=this;i.Reader=n.Reader,i.Writer=n.Writer,n.getData&&(i.getData=n.getData)}clone(){return new Jr(this.fs,this.name,this)}async getData(e,t={}){const n=this;if(!e||e.constructor==n.Writer&&n.data)return n.data;{const r=n.reader=new n.Reader(n.data,t),i=n.data?n.data.uncompressedSize:r.size;await Promise.all([bn(r),bn(e,i)]);const s=r.readable;return s.size=n.uncompressedSize=r.size,await s.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return this.data.encrypted}async checkPassword(e,t={}){const n=this;if(!n.isPasswordProtected())return!0;t.password=e,t.checkPasswordOnly=!0;try{return await n.data.getData(null,t),!0}catch(e){if(e.message==ve)return!1;throw e}}getText(e,t){return this.getData(new Qt(e),t)}getBlob(e,t){return this.getData(new Jt(e),t)}getData64URI(e,t){return this.getData(new Gt(e),t)}getUint8Array(e){return this.getData(new wn,e)}getWritable(e=new WritableStream,t){return this.getData({writable:e},t)}replaceBlob(e){Object.assign(this,{data:e,Reader:Xt,Writer:Jt,reader:null})}replaceText(e){Object.assign(this,{data:e,Reader:Yt,Writer:Qt,reader:null})}replaceData64URI(e){Object.assign(this,{data:e,Reader:Kt,Writer:Gt,reader:null})}replaceUint8Array(e){Object.assign(this,{data:e,Reader:hn,Writer:wn,reader:null})}replaceReadable(e){Object.assign(this,{data:null,Reader:()=>({readable:e}),Writer:null,reader:null})}}class Yr extends Xr{constructor(e,t,n,r){super(e,t,n,r),this.directory=!0}clone(e){const t=this,n=new Yr(t.fs,t.name);return e&&(n.children=t.children.map((t=>{const r=t.clone(e);return r.parent=n,r}))),n}addDirectory(e,t){return si(this,e,{options:t},!0)}addText(e,t,n={}){return si(this,e,{data:t,Reader:Yt,Writer:Qt,options:n,uncompressedSize:t.length})}addBlob(e,t,n={}){return si(this,e,{data:t,Reader:Xt,Writer:Jt,options:n,uncompressedSize:t.size})}addData64URI(e,t,n={}){let r=t.length;for(;"="==t.charAt(r-1);)r--;const i=t.indexOf(",")+1;return si(this,e,{data:t,Reader:Kt,Writer:Gt,options:n,uncompressedSize:Math.floor(.75*(r-i))})}addUint8Array(e,t,n={}){return si(this,e,{data:t,Reader:hn,Writer:wn,options:n,uncompressedSize:t.length})}addHttpContent(e,t,n={}){return si(this,e,{data:t,Reader:class extends pn{constructor(e){super(e,n)}},options:n})}addReadable(e,t,n={}){return si(this,e,{Reader:()=>({readable:t}),options:n})}addFileSystemEntry(e,t={}){return ni(this,e,t)}addFileSystemHandle(e,t={}){return ni(this,e,t)}addFile(e,t={}){return t.lastModDate||(t.lastModDate=new Date(e.lastModified)),si(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}addData(e,t){return si(this,e,t)}importBlob(e,t){return this.importZip(new Xt(e),t)}importData64URI(e,t){return this.importZip(new Kt(e),t)}importUint8Array(e,t){return this.importZip(new hn(e),t)}importHttpContent(e,t){return this.importZip(new pn(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new Jt(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new Gt(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new wn,e)}async exportWritable(e=new WritableStream,t={}){return await this.exportZip({writable:e},t),e}async importZip(e,t={}){await bn(e);const n=new lr(e,t),r=[],i=await n.getEntries();for(const e of i){let n=this;try{const i=e.filename.split("/"),s=i.pop();i.forEach(((t,s)=>{const a=n;n=n.getChildByName(t),n||(n=new Yr(this.fs,t,{data:s==i.length-1?e:null},a),r.push(n))})),e.directory||r.push(si(n,s,{data:e,Reader:$r(Object.assign({},t)),uncompressedSize:e.uncompressedSize,passThrough:t.passThrough}))}catch(t){try{t.cause={entry:e}}catch(e){}throw t}}return r}async exportZip(e,t){const n=this;t.bufferedWrite===J&&(t.bufferedWrite=!0),await Promise.all([ei(n,t.readerOptions),bn(e)]);const r=new Or(e,t);return await(async(e,t,n,r)=>{const i=t,s=new Map;await async function e(t,a){async function o(a){const o=r.relativePath?a.getRelativeName(i):a.getFullname(),c=a.options||{};let l={};if(a.data instanceof Gn){const{externalFileAttribute:e,versionMadeBy:t,comment:n,lastModDate:r,creationDate:i,lastAccessDate:s,uncompressedSize:o,encrypted:c,zipCrypto:d,signature:f,compressionMethod:u,extraFieldAES:p}=a.data;if(l={externalFileAttribute:e,versionMadeBy:t,comment:n,lastModDate:r,creationDate:i,lastAccessDate:s},a.passThrough){let e,t;0===u&&(e=0),p&&(t=p.strength),l=Object.assign(l,{passThrough:!0,encrypted:c,zipCrypto:d,signature:f,uncompressedSize:o,level:e,encryptionStrength:t,compressionMethod:u})}}await t.add(o,a.reader,Object.assign({directory:a.directory},Object.assign({},r,l,c,{onprogress:async e=>{if(r.onprogress){s.set(o,e);try{await r.onprogress(Array.from(s.values()).reduce(((e,t)=>e+t)),n)}catch(e){}}}}))),await e(t,a)}await(async()=>{if(r.bufferedWrite)await Promise.allSettled(a.children.map(o));else for(const e of a.children)await o(e)})()}(e,t)})(r,n,(e=>{let t=0;return e.forEach((function e(n){t+=n.uncompressedSize,n.children&&n.children.forEach(e)})),t})([n]),t),await r.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let n=0;nn.checkPassword(e,t))))).includes(!1)}}const Qr={FS:class{constructor(){ii(this)}get children(){return this.root.children}remove(e){ti(e),this.entries[e.id]=null}move(e,t){if(e==this.root)throw Error("Root directory cannot be moved");if(!t.directory)throw Error("Target entry is not a directory");if(t.isDescendantOf(e))throw Error("Entry is a ancestor of target entry");if(e!=t){if(t.getChildByName(e.name))throw Error("Entry filename already exists");ti(e),e.parent=t,t.children.push(e)}}find(e){const t=e.split("/");let n=this.root;for(let e=0;n&&e{if(e.directory)await ei(e,t);else{const n=e.reader=new e.Reader(e.data,t);try{await bn(n)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch(e){}throw t}e.uncompressedSize=n.size}})))}function ti(e){if(e.parent){const t=e.parent.children;t.forEach(((n,r)=>{n.id==e.id&&t.splice(r,1)}))}}function ni(e,t,n){return async function e(t,r,i){if(r)try{if((r.isFile||r.isDirectory)&&(r=await ri(r)),"file"==r.kind){const e=await r.getFile();i.push(t.addData(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:Object.assign({},{lastModDate:new Date(e.lastModified)},n),uncompressedSize:e.size}))}else if("directory"==r.kind){const n=t.addDirectory(r.name);i.push(n);for await(const t of r.values())await e(n,t,i)}}catch(e){const t=e.message+(r?" ("+r.name+")":"");throw Error(t)}return i}(e,t,[])}async function ri(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new Promise(((t,n)=>e.file(t,n)))),e.isDirectory){t.kind="directory";const n=await(async e=>{const t=[];function n(e,r,i){e.readEntries((async s=>{if(s.length){for(const e of s)t.push(await ri(e));n(e,r,i)}else r(t)}),i)}return await new Promise(((t,r)=>n(e.createReader(),t,r))),{[Symbol.iterator](){let e=0;return{next(){const n={value:t[e],done:e===t.length};return e++,n}}}}})(e);t.values=()=>n}return t}function ii(e){e.entries=[],e.root=new Yr(e)}function si(e,t,n,r){if(e.directory)return r?new Yr(e.fs,t,n,e):new Jr(e.fs,t,n,e);throw Error("Parent entry is not a directory")}let ai;try{ai=import.meta.url}catch(e){}se({baseURL:ai}),((e,t={})=>{const n='const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self,k=void 0,v="undefined",S="function";class z{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const C=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;C[e]=t}class x{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^C[255&(t^e[n])];this.t=t}get(){return~this.t}}class A extends p{constructor(){let e;const t=new x;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const _={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=_.i(n);return 32===r?e.concat(t):_.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+_.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=_.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=_.i(s);return r.push(_.h(t+i&31,t+i>32?n:r.pop(),1)),r}},I={bytes:{p(e){const t=_.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},m(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}P(){const e=this;let t=e.C;const n=e.S;t=_.concat(t,[_.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.I(t.splice(0,16));return e.reset(),n}D(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}V(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.V(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.V(5,o)+n.D(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.V(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},D={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew V.R(I.bytes.m(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=_;for(t=I.bytes.m(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).P());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.U[0].update(r[0]),t.U[1].update(r[1]),t.K=new n(t.U[0])}reset(){const e=this;e.K=new e.M(e.U[0]),e.N=!1}update(e){this.N=!0,this.K.update(e)}digest(){const e=this,t=e.K.P(),n=new e.M(e.U[1]).update(t).P();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},R=typeof h!=v&&typeof h.getRandomValues==S,B="Invalid password",E="Invalid signature",M="zipjs-abort-check-password";function U(e){return R?h.getRandomValues(e):D.getRandomValues(e)}const K=16,N={name:"PBKDF2"},O=t.assign({hash:{name:"HMAC"}},N),T=t.assign({iterations:1e3,hash:{name:"SHA-1"}},N),W=["deriveBits"],j=[8,12,16],H=[16,24,32],L=10,F=[0,0,0,0],q=typeof h!=v,G=q&&h.subtle,J=q&&typeof G!=v,Q=I.bytes,X=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},Y=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=_.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return _.u(t,s)}},Z=V.R;let $=q&&J&&typeof G.importKey==S,ee=q&&J&&typeof G.deriveBits==S;class te extends p{constructor({password:e,rawPassword:n,signed:r,encryptionStrength:o,checkPasswordOnly:c}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),signed:r,X:o-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:o,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await se(e,t,n,ce(r,0,j[t])),o=ce(r,j[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(B)})(n,o,r,ce(e,0,j[o]+2)),e=ce(e,j[o]+2),c?t.error(new s(M)):f()):await a;const l=new i(e.length-L-(e.length-L)%K);t.enqueue(re(n,e,l,0,L,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;if(r&&n){await c;const f=ce(o,0,o.length-L),a=ce(o,o.length-L);let l=new i;if(f.length){const e=ae(Q,f);r.update(e);const t=n.update(e);l=fe(Q,t)}if(t){const e=ce(fe(Q,r.digest()),0,L);for(let t=0;L>t;t++)if(e[t]!=a[t])throw new s(E)}e.enqueue(l)}}})}}class ne extends p{constructor({password:e,rawPassword:n,encryptionStrength:r}){let s;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=U(new i(j[t]));return oe(r,await se(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%K);a.set(f,0),t.enqueue(re(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:r,ready:o}=this;if(n&&t){await o;let c=new i;if(r.length){const e=t.update(ae(Q,r));n.update(e),c=fe(Q,e)}s.signature=fe(Q,n.digest()).slice(0,L),e.enqueue(oe(c,s.signature))}}}),s=this}}function re(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=oe(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%K)),u=0;l-K>=u;u+=K){const e=ae(Q,ce(t,u,u+K));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(fe(Q,s),u+r)}return e.pending=ce(t,u),n}async function se(n,r,s,o){n.password=null;const c=await(async(e,t,n,r,s)=>{if(!$)return V.importKey(t);try{return await G.importKey("raw",t,n,!1,s)}catch(e){return $=!1,V.importKey(t)}})(0,s,O,0,W),f=await(async(e,t,n)=>{if(!ee)return V.B(t,e.salt,T.iterations,n);try{return await G.deriveBits(e,t,n)}catch(r){return ee=!1,V.B(t,e.salt,T.iterations,n)}})(t.assign({salt:o},T),c,8*(2*H[r]+2)),a=new i(f),l=ae(Q,ce(a,0,H[r])),u=ae(Q,ce(a,H[r],2*H[r])),w=ce(a,2*H[r]);return t.assign(n,{keys:{key:l,$:u,passwordVerification:w},Y:new Y(new X(l),e.from(F)),Z:new Z(u)}),w}function ie(e,t){return t===k?(e=>{if(typeof w==v){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),i=~e.te.get(),e.keys=[n,s,i]}function ye(e){const t=2|e.keys[2];return me(r.imul(t,1^t)>>>8)}function me(e){return 255&e}function be(e){return 4294967295&e}const ge="deflate-raw";class ke extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=Se(super.readable);i&&!c||!f||(w=new A,d=xe(d,w)),s&&(d=Ce(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=xe(d,new ue(e)):(h=new ne(e),d=xe(d,h))),ze(u,d,(()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ve extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=Se(super.readable);o&&(i?d=xe(d,new le(e)):(h=new te(e),d=xe(d,h))),a&&(d=Ce(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new A,d=xe(d,w)),ze(this,d,(()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(E)}}))}}function Se(e){return xe(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ze(e,n,r){n=xe(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Ce(e,t,n,r,s){try{e=xe(e,new(t&&r?r:s)(ge,n))}catch(r){if(!t)return e;try{e=xe(e,new s(ge,n))}catch(t){return e}}return e}function xe(e,t){return e.pipeThrough(t)}const Ae="data",_e="close";class Ie extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=ke:s.startsWith("inflate")&&(i=ve);let o=0,c=0;const f=new i(e,n),a=super.readable,l=new p({transform(e,t){e&&e.length&&(c+=e.length,t.enqueue(e))},flush(){t.assign(r,{inputSize:c})}}),u=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=f;t.assign(r,{signature:e,outputSize:o,inputSize:c})}});t.defineProperty(r,"readable",{get:()=>a.pipeThrough(l).pipeThrough(f).pipeThrough(u)})}}class Pe extends p{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new i(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}const De=new a,Ve=new a;let Re,Be=0,Ee=!0;async function Me(e){try{const{options:t,scripts:r,config:s}=e;if(r&&r.length)try{Ee?importScripts.apply(k,r):await Ue(r)}catch(e){Ee=!1,await Ue(r)}self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new z(self.Deflate)),self.Inflate&&(s.DecompressionStream=new z(self.Inflate));const i={highWaterMark:1},o=e.readable||new y({async pull(e){const t=new u((e=>De.set(Be,e)));Ke({type:"pull",messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ve.set(Be,t),Ke({type:Ae,value:e,messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new Ie(t,s);Re=new AbortController;const{signal:a}=Re;await o.pipeThrough(f).pipeThrough(new Pe(s.chunkSize)).pipeTo(c,{signal:a,preventClose:!0,preventAbort:!0}),await c.getWriter().close();const{signature:l,inputSize:w,outputSize:h}=f;Ke({type:_e,result:{signature:l,inputSize:w,outputSize:h}})}catch(e){Ne(e)}}async function Ue(e){for(const t of e)await import(t)}function Ke(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Ne(e=new s("Unknown error")){const{message:t,stack:n,code:r,name:i}=e;d({error:{message:t,stack:n,code:r,name:i}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&Me(e),t==Ae){const e=De.get(n);De.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ve.get(n);Ve.delete(n),e()}t==_e&&Re.abort()}catch(e){Ne(e)}}));const Oe=-2;function Te(t){return We(t.map((([t,n])=>new e(t).fill(n,0,t))))}function We(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?We(n):n)),[])}const je=[0,1,2,3].concat(...Te([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function He(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Le(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}He.ge=[0,1,2,3,4,5,6,7].concat(...Te([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),He.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],He.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],He.Se=e=>256>e?je[e]:je[256+(e>>>7)],He.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],He.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],He.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],He.Ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Fe=Te([[144,8],[112,9],[24,7],[8,8]]);Le._e=We([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Fe[t]])));const qe=Te([[30,5]]);function Ge(e,t,n,r,s){const i=this;i.Ie=e,i.Pe=t,i.De=n,i.Ve=r,i.Re=s}Le.Be=We([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,qe[t]]))),Le.Ee=new Le(Le._e,He.ze,257,286,15),Le.Me=new Le(Le.Be,He.Ce,0,30,15),Le.Ue=new Le(null,He.xe,0,19,7);const Je=[new Ge(0,0,0,0,0),new Ge(4,4,8,4,1),new Ge(4,5,16,8,1),new Ge(4,6,32,32,1),new Ge(4,4,16,16,2),new Ge(8,16,32,32,2),new Ge(8,16,128,128,2),new Ge(8,32,128,256,2),new Ge(32,128,258,1024,2),new Ge(32,258,258,4096,2)],Qe=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Xe=113,Ye=666,Ze=262;function $e(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function et(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,A,_,I,P,D,V,R,B,E,M,U;const K=new He,N=new He,O=new He;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)U[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?U[2*n]+=i:0!==n?(n!=r&&U[2*n]++,U[32]++):i>10?U[36]++:U[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ke[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,U)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,U),o--),Y(16,U),X(o-3,2)):o>10?(Y(18,U),X(o-11,7)):(Y(17,U),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(He.ge[n]+256+1)]++,M[2*He.Se(t)]++),!(8191&W)&&D>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+He.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ke.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;D>0?(K.ne(e),N.ne(e),o=(()=>{let t;for(G(E,K.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===U[2*He.Ae[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Le._e,Le.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(U[2*He.Ae[r]+1],3);Z(E,e-1),Z(M,t-1)})(K.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-A-C,0===s&&0===C&&0===A)s=f;else if(-1==s)s--;else if(C>=f+f-Ze){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+A,s),A+=e,3>A||(p=255&u[C],p=(p<A&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=_;const o=C>f-Ze?C-(f-Ze):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>_||(r>>=2),c>A&&(c=A);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>A?A:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],U=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Oe:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=Xe,c=0,K.re=E,K.ie=Le.Ee,N.re=M,N.ie=Le.Me,O.re=U,O.ie=Le.Ue,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve,C=0,k=0,A=0,v=_=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=Xe&&n!=Ye?Oe:(e.Oe=null,e.Ne=null,e.Ke=null,d=null,h=null,u=null,e.Fe=null,n==Xe?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Oe:(Je[D].Re!=Je[t].Re&&0!==e.qe&&(r=e.Ye(1)),D!=t&&(D=t,P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve),V=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Oe;if(3>i)return 0;for(i>f-Ze&&(i=f-Ze,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Oe;if(!r.$e||!r.et&&0!==r.We||n==Ye&&4!=i)return r.Le=Qe[4],Oe;if(0===r.tt)return r.Le=Qe[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(D-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=Xe,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=Qe[7],-5;if(n==Ye&&0!==t.We)return r.Le=Qe[7],-5;if(0!==t.We||0!==A||0!=i&&n!=Ye){switch(R=-1,Je[D].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=A){if(ie(),0===A&&0==e)return 0;if(0===A)break}if(C+=A,A=0,n=k+r,(0===C||C>=n)&&(A=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Ze&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<f-Ze||2!=V&&(v=oe(r)),3>v)n=ee(0,255&u[C]),A--,C++;else if(n=ee(C-x,v-3),A-=v,v>P||3>A)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<_&&f-Ze>=(C-s&65535)&&(2!=V&&(v=oe(s)),5>=v&&(1==V||3==v&&C-x>4096)&&(v=2)),3>_||v>_)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,A--,0===t.tt)return 0}else z=1,C++,A--;else{r=C+A-3,n=ee(C-1-S,_-3),A-=_-1,_-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Le._e),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function tt(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function nt(e){const t=new tt,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}tt.prototype={He(e,t){const n=this;return n.Fe=new et,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Oe},Qe(){const e=this;if(!e.Fe)return Oe;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Oe},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Oe},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ke.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const rt=-2,st=-3,it=-5,ot=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],ct=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ft=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],at=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],lt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ut=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],wt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ht(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,A,_,I,P;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return st;if(0>(I-=n[g]))return st;for(n[g]+=I,i[1]=k=0,C=1,_=2;0!=--g;)i[_]=k+=n[C],_++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>A+S;){if(b++,A+=S,P=m-A,P=P>S?S:P,(y=1<<(k=v-A))>p+1&&(y-=p+1,_=v,P>k))for(;++kn[++_];)y-=n[_];if(P=1<1440)return st;s[b]=x=h[0],h[0]+=P,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>A-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-A,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>A;P>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<c;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==st?f.Le="oversubscribed dynamic bit lengths tree":a!=it&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=st),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,at,lt,a,i,u,e,t),0!=h||0===i[0]?(h==st?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=st),h):(c(288),h=o(s,n,r,0,ut,wt,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==st?w.Le="oversubscribed distance tree":h==it?(w.Le="incomplete distance tree",h=st):-4!=h&&(w.Le="empty distance tree with lengths",h=st),h):0)}}function dt(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15,k=a[z+2]+(w&ot[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(64&u)return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st;f+=a[z+2],f+=w&ot[u],z=3*(l+f),u=a[z]}break}if(64&u)return 32&u?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st);if(f+=a[z+2],f+=w&ot[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,A=0,_=0;for(_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,m=p(u,w,r,h,s,d,e,y),_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=SA;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>>=n[g+1],A-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(16&k){a=15&k,i=n[g+2],t=2;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}if(32&k){t=7;break}return t=9,y.Le="invalid literal/length code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 2:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=n[g+1],A-=n[g+1],k=n[g],16&k){a=15&k,l=n[g+2],t=4;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 4:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(A-=8,v++,_--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ht.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=ct,r[0]=ft,0);const pt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function yt(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new dt;let h=0,d=new f(4320);const p=new ht;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ht.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[pt[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==st&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&ot[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,A=[],_=[],I=[],P=[],A[0]=9,_[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,A,_,I,P,d,e),0!=i)return i==st&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(A[0],_[0],d,I[0],d,P[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const mt=13,bt=[0,0,255,255];function gt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):rt}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),rt):(e.zt=r,n.gt.kt=new yt(n,1<{let n,r;if(!e||!e.gt||!e.et)return rt;const s=e.gt;for(t=4==t?it:0,n=it;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=mt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=mt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=mt,e.Le="incorrect header check",s.marker=5;break}if(!(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=mt,e.Le="need dictionary",s.marker=0,rt;case 7:if(n=s.kt.ut(e,n),n==st){s.mode=mt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case mt:return st;default:return rt}},e._t=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return rt;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return rt;const c=e.gt;if(c.mode!=mt&&(c.mode=mt,c.marker=0),0===(n=e.We))return it;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==bt[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?st:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Pt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():rt}function kt(){}function vt(e){const t=new kt,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t.At(0),c&&a===it){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}kt.prototype={xt(e){const t=this;return t.gt=new gt,e||(e=15),t.gt.xt(t,e)},At(e){const t=this;return t.gt?t.gt.At(t,e):rt},Ct(){const e=this;if(!e.gt)return rt;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):rt},_t(e,t){const n=this;return n.gt?n.gt._t(n,e,t):rt},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=nt,self.Inflate=vt};\n',r=()=>t.useDataURI?"data:text/javascript,"+encodeURIComponent(n):URL.createObjectURL(new Blob([n],{type:"text/javascript"}));se({workerScripts:{inflate:[r],deflate:[r]}})})(),se({Deflate:function(e){const t=new w,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(Math.floor(r/16383)+1);var r;const i=new Uint8Array(n);let s=e?e.level:-1;void 0===s&&(s=-1),t.deflateInit(s),t.next_out=i,this.append=(e,r)=>{let s,a,o=0,c=0,l=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,s=t.deflate(0),0!=s)throw Error("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?d.push(new Uint8Array(i)):d.push(i.subarray(0,t.next_out_index))),l+=t.next_out_index,r&&t.next_in_index>0&&t.next_in_index!=o&&(r(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(a=new Uint8Array(l),d.forEach((e=>{a.set(e,c),c+=e.length}))):a=d[0]?new Uint8Array(d[0]):new Uint8Array,a}},this.flush=()=>{let e,r,s=0,a=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw Error("deflating: "+t.msg);n-t.avail_out>0&&o.push(i.slice(0,t.next_out_index)),a+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new Uint8Array(a),o.forEach((e=>{r.set(e,s),s+=e.length})),r}},Inflate:function(e){const t=new q,n=e&&e.chunkSize?Math.floor(2*e.chunkSize):131072,r=new Uint8Array(n);let i=!1;t.inflateInit(),t.next_out=r,this.append=(e,s)=>{const a=[];let o,c,l=0,d=0,f=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||i||(t.next_in_index=0,i=!0),o=t.inflate(0),i&&o===b){if(0!==t.avail_in)throw Error("inflating: bad input")}else if(0!==o&&1!==o)throw Error("inflating: "+t.msg);if((i||1===o)&&t.avail_in===e.length)throw Error("inflating: bad input");t.next_out_index&&(t.next_out_index===n?a.push(new Uint8Array(r)):a.push(r.subarray(0,t.next_out_index))),f+=t.next_out_index,s&&t.next_in_index>0&&t.next_in_index!=l&&(s(t.next_in_index),l=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return a.length>1?(c=new Uint8Array(f),a.forEach((e=>{c.set(e,d),d+=e.length}))):c=a[0]?new Uint8Array(a[0]):new Uint8Array,c}},this.flush=()=>{t.inflateEnd()}}});export{Xt as BlobReader,Jt as BlobWriter,Kt as Data64URIReader,Gt as Data64URIWriter,Xn as ERR_BAD_FORMAT,Qn as ERR_CENTRAL_DIRECTORY_NOT_FOUND,kr as ERR_DUPLICATED_NAME,tr as ERR_ENCRYPTED,Yn as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,Jn as ERR_EOCDR_NOT_FOUND,er as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,Rt as ERR_HTTP_RANGE,Sr as ERR_INVALID_COMMENT,Dr as ERR_INVALID_ENCRYPTION_STRENGTH,zr as ERR_INVALID_ENTRY_COMMENT,Ar as ERR_INVALID_ENTRY_NAME,Er as ERR_INVALID_EXTRAFIELD_DATA,Ur as ERR_INVALID_EXTRAFIELD_TYPE,ve as ERR_INVALID_PASSWORD,ye as ERR_INVALID_SIGNATURE,Cr as ERR_INVALID_VERSION,Lt as ERR_ITERATOR_COMPLETED_TOO_SOON,$n as ERR_LOCAL_FILE_HEADER_NOT_FOUND,ir as ERR_SPLIT_ZIP_FILE,Fr as ERR_UNDEFINED_UNCOMPRESSED_SIZE,rr as ERR_UNSUPPORTED_COMPRESSION,nr as ERR_UNSUPPORTED_ENCRYPTION,Wr as ERR_UNSUPPORTED_FORMAT,mn as HttpRangeReader,pn as HttpReader,Vt as Reader,gn as SplitDataReader,xn as SplitDataWriter,kn as SplitZipReader,Sn as SplitZipWriter,Yt as TextReader,Qt as TextWriter,hn as Uint8ArrayReader,wn as Uint8ArrayWriter,Zt as Writer,lr as ZipReader,dr as ZipReaderStream,Or as ZipWriter,Rr as ZipWriterStream,se as configure,Qr as fs,le as getMimeType,qt as initShimAsyncCodec,jt as terminateWorkers}; +const e=-2;function t(e){return n(e.map((([e,t])=>Array(e).fill(t,0,e))))}function n(e){return e.reduce(((e,t)=>e.concat(Array.isArray(t)?n(t):t)),[])}const r=[0,1,2,3].concat(...t([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function i(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=n=>{const r=e.dyn_tree,i=e.stat_desc.static_tree,s=e.stat_desc.elems;let a,o,c,l=-1;for(n.heap_len=0,n.heap_max=573,a=0;s>a;a++)0!==r[2*a]?(n.heap[++n.heap_len]=l=a,n.depth[a]=0):r[2*a+1]=0;for(;2>n.heap_len;)c=n.heap[++n.heap_len]=2>l?++l:0,r[2*c]=1,n.depth[c]=0,n.opt_len--,i&&(n.static_len-=i[2*c+1]);for(e.max_code=l,a=Math.floor(n.heap_len/2);a>=1;a--)n.pqdownheap(r,a);c=s;do{a=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(r,1),o=n.heap[1],n.heap[--n.heap_max]=a,n.heap[--n.heap_max]=o,r[2*c]=r[2*a]+r[2*o],n.depth[c]=Math.max(n.depth[a],n.depth[o])+1,r[2*a+1]=r[2*o+1]=c,n.heap[1]=c++,n.pqdownheap(r,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],(t=>{const n=e.dyn_tree,r=e.stat_desc.static_tree,i=e.stat_desc.extra_bits,s=e.stat_desc.extra_base,a=e.stat_desc.max_length;let o,c,l,d,f,u,p=0;for(d=0;15>=d;d++)t.bl_count[d]=0;for(n[2*t.heap[t.heap_max]+1]=0,o=t.heap_max+1;573>o;o++)c=t.heap[o],d=n[2*n[2*c+1]+1]+1,d>a&&(d=a,p++),n[2*c+1]=d,c>e.max_code||(t.bl_count[d]++,f=0,s>c||(f=i[c-s]),u=n[2*c],t.opt_len+=u*(d+f),r&&(t.static_len+=u*(r[2*c+1]+f)));if(0!==p){do{for(d=a-1;0===t.bl_count[d];)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[a]--,p-=2}while(p>0);for(d=a;0!==d;d--)for(c=t.bl_count[d];0!==c;)l=t.heap[--o],l>e.max_code||(n[2*l+1]!=d&&(t.opt_len+=(d-n[2*l+1])*n[2*l],n[2*l+1]=d),c--)}})(n),((e,n,r)=>{const i=[];let s,a,o,c=0;for(s=1;15>=s;s++)i[s]=c=c+r[s-1]<<1;for(a=0;n>=a;a++)o=e[2*a+1],0!==o&&(e[2*a]=t(i[o]++,o))})(r,e.max_code,n.bl_count)}}function s(e,t,n,r,i){const s=this;s.static_tree=e,s.extra_bits=t,s.extra_base=n,s.elems=r,s.max_length=i}i._length_code=[0,1,2,3,4,5,6,7].concat(...t([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),i.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],i.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],i.d_code=e=>256>e?r[e]:r[256+(e>>>7)],i.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],i.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],i.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],i.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const a=t([[144,8],[112,9],[24,7],[8,8]]);s.static_ltree=n([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,a[t]])));const o=t([[30,5]]);function c(e,t,n,r,i){const s=this;s.good_length=e,s.max_lazy=t,s.nice_length=n,s.max_chain=r,s.func=i}s.static_dtree=n([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,o[t]]))),s.static_l_desc=new s(s.static_ltree,i.extra_lbits,257,286,15),s.static_d_desc=new s(s.static_dtree,i.extra_dbits,0,30,15),s.static_bl_desc=new s(null,i.extra_blbits,0,19,7);const l=[new c(0,0,0,0,0),new c(4,4,8,4,1),new c(4,5,16,8,1),new c(4,6,32,32,1),new c(4,4,16,16,2),new c(8,16,32,32,2),new c(8,16,128,128,2),new c(8,32,128,256,2),new c(32,128,258,1024,2),new c(32,258,258,4096,2)],d=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],f=113,u=666,p=262;function m(e,t,n,r){const i=e[2*t],s=e[2*n];return s>i||i==s&&r[t]<=r[n]}function h(){const t=this;let n,r,a,o,c,h,w,g,x,b,v,y,_,k,S,z,A,C,D,U,E,W,F,j,q,T,O,R,L,I,M,P,B;const H=new i,N=new i,V=new i;let Z,K,G,X,J,Y;function Q(){let e;for(e=0;286>e;e++)M[2*e]=0;for(e=0;30>e;e++)P[2*e]=0;for(e=0;19>e;e++)B[2*e]=0;M[512]=1,t.opt_len=t.static_len=0,K=G=0}function $(e,t){let n,r=-1,i=e[1],s=0,a=7,o=4;0===i&&(a=138,o=3),e[2*(t+1)+1]=65535;for(let c=0;t>=c;c++)n=i,i=e[2*(c+1)+1],++ss?B[2*n]+=s:0!==n?(n!=r&&B[2*n]++,B[32]++):s>10?B[36]++:B[34]++,s=0,r=n,0===i?(a=138,o=3):n==i?(a=6,o=3):(a=7,o=4))}function ee(e){t.pending_buf[t.pending++]=e}function te(e){ee(255&e),ee(e>>>8&255)}function ne(e,t){let n;const r=t;Y>16-r?(n=e,J|=n<>>16-Y,Y+=r-16):(J|=e<=n;n++)if(r=s,s=e[2*(n+1)+1],++a>=o||r!=s){if(c>a)do{re(r,B)}while(0!=--a);else 0!==r?(r!=i&&(re(r,B),a--),re(16,B),ne(a-3,2)):a>10?(re(18,B),ne(a-11,7)):(re(17,B),ne(a-3,3));a=0,i=r,0===s?(o=138,c=3):r==s?(o=6,c=3):(o=7,c=4)}}function se(){16==Y?(te(J),J=0,Y=0):8>Y||(ee(255&J),J>>>=8,Y-=8)}function ae(e,n){let r,s,a;if(t.dist_buf[K]=e,t.lc_buf[K]=255&n,K++,0===e?M[2*n]++:(G++,e--,M[2*(i._length_code[n]+256+1)]++,P[2*i.d_code(e)]++),!(8191&K)&&O>2){for(r=8*K,s=E-A,a=0;30>a;a++)r+=P[2*a]*(5+i.extra_dbits[a]);if(r>>>=3,Math.floor(K/2)>G&&Math.floor(s/2)>r)return!0}return K==Z-1}function oe(e,n){let r,s,a,o,c=0;if(0!==K)do{r=t.dist_buf[c],s=t.lc_buf[c],c++,0===r?re(s,e):(a=i._length_code[s],re(a+256+1,e),o=i.extra_lbits[a],0!==o&&(s-=i.base_length[a],ne(s,o)),r--,a=i.d_code(r),re(a,n),o=i.extra_dbits[a],0!==o&&(r-=i.base_dist[a],ne(r,o)))}while(K>c);re(256,e),X=e[513]}function ce(){Y>8?te(J):Y>0&&ee(255&J),J=0,Y=0}function le(e,n,r){ne(0+(r?1:0),3),((e,n)=>{ce(),X=8,te(n),te(~n),t.pending_buf.set(g.subarray(e,e+n),t.pending),t.pending+=n})(e,n)}function de(e){((e,n,r)=>{let a,o,c=0;O>0?(H.build_tree(t),N.build_tree(t),c=(()=>{let e;for($(M,H.max_code),$(P,N.max_code),V.build_tree(t),e=18;e>=3&&0===B[2*i.bl_order[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(),a=t.opt_len+3+7>>>3,o=t.static_len+3+7>>>3,o>a||(a=o)):a=o=n+5,n+4>a||-1==e?o==a?(ne(2+(r?1:0),3),oe(s.static_ltree,s.static_dtree)):(ne(4+(r?1:0),3),((e,t,n)=>{let r;for(ne(e-257,5),ne(t-1,5),ne(n-4,4),r=0;n>r;r++)ne(B[2*i.bl_order[r]+1],3);ie(M,e-1),ie(P,t-1)})(H.max_code+1,N.max_code+1,c+1),oe(M,P)):le(e,n,r),Q(),r&&ce()})(0>A?-1:A,E-A,e),A=E,n.flush_pending()}function fe(){let e,t,r,i;do{if(i=x-F-E,0===i&&0===E&&0===F)i=c;else if(-1==i)i--;else if(E>=c+c-p){g.set(g.subarray(c,c+c),0),W-=c,E-=c,A-=c,e=_,r=e;do{t=65535&v[--r],v[r]=c>t?0:t-c}while(0!=--e);e=c,r=e;do{t=65535&b[--r],b[r]=c>t?0:t-c}while(0!=--e);i+=c}if(0===n.avail_in)return;e=n.read_buf(g,E+F,i),F+=e,3>F||(y=255&g[E],y=(y<F&&0!==n.avail_in)}function ue(e){let t,n,r=q,i=E,s=j;const a=E>c-p?E-(c-p):0;let o=I;const l=w,d=E+258;let f=g[i+s-1],u=g[i+s];L>j||(r>>=2),o>F&&(o=F);do{if(t=e,g[t+s]==u&&g[t+s-1]==f&&g[t]==g[i]&&g[++t]==g[i+1]){i+=2,t++;do{}while(g[++i]==g[++t]&&g[++i]==g[++t]&&g[++i]==g[++t]&&g[++i]==g[++t]&&g[++i]==g[++t]&&g[++i]==g[++t]&&g[++i]==g[++t]&&g[++i]==g[++t]&&d>i);if(n=258-(d-i),i=d-258,n>s){if(W=e,s=n,n>=o)break;f=g[i+s-1],u=g[i+s]}}}while((e=65535&b[e&l])>a&&0!=--r);return s>F?F:s}t.depth=[],t.bl_count=[],t.heap=[],M=[],P=[],B=[],t.pqdownheap=(e,n)=>{const r=t.heap,i=r[n];let s=n<<1;for(;s<=t.heap_len&&(s(u||(u=8),p||(p=8),m||(m=0),n.msg=null,-1==i&&(i=6),1>p||p>9||8!=u||9>d||d>15||0>i||i>9||0>m||m>2?e:(n.dstate=t,h=d,c=1<(e.total_in=e.total_out=0,e.msg=null,t.pending=0,t.pending_out=0,r=f,o=0,H.dyn_tree=M,H.stat_desc=s.static_l_desc,N.dyn_tree=P,N.stat_desc=s.static_d_desc,V.dyn_tree=B,V.stat_desc=s.static_bl_desc,J=0,Y=0,X=8,Q(),(()=>{x=2*c,v[_-1]=0;for(let e=0;_-1>e;e++)v[e]=0;T=l[O].max_lazy,L=l[O].good_length,I=l[O].nice_length,q=l[O].max_chain,E=0,A=0,F=0,C=j=2,U=0,y=0})(),0))(n))),t.deflateEnd=()=>42!=r&&r!=f&&r!=u?e:(t.lc_buf=null,t.dist_buf=null,t.pending_buf=null,v=null,b=null,g=null,t.dstate=null,r==f?-3:0),t.deflateParams=(t,n,r)=>{let i=0;return-1==n&&(n=6),0>n||n>9||0>r||r>2?e:(l[O].func!=l[n].func&&0!==t.total_in&&(i=t.deflate(1)),O!=n&&(O=n,T=l[O].max_lazy,L=l[O].good_length,I=l[O].nice_length,q=l[O].max_chain),R=r,i)},t.deflateSetDictionary=(t,n,i)=>{let s,a=i,o=0;if(!n||42!=r)return e;if(3>a)return 0;for(a>c-p&&(a=c-p,o=i-a),g.set(n.subarray(o,o+a),0),E=a,A=a,y=255&g[0],y=(y<=s;s++)y=(y<{let x,k,q,L,I;if(m>4||0>m)return e;if(!i.next_out||!i.next_in&&0!==i.avail_in||r==u&&4!=m)return i.msg=d[4],e;if(0===i.avail_out)return i.msg=d[7],-5;var M;if(n=i,L=o,o=m,42==r&&(k=8+(h-8<<4)<<8,q=(O-1&255)>>1,q>3&&(q=3),k|=q<<6,0!==E&&(k|=32),k+=31-k%31,r=f,ee((M=k)>>8&255),ee(255&M)),0!==t.pending){if(n.flush_pending(),0===n.avail_out)return o=-1,0}else if(0===n.avail_in&&L>=m&&4!=m)return n.msg=d[7],-5;if(r==u&&0!==n.avail_in)return i.msg=d[7],-5;if(0!==n.avail_in||0!==F||0!=m&&r!=u){switch(I=-1,l[O].func){case 0:I=(e=>{let t,r=65535;for(r>a-5&&(r=a-5);;){if(1>=F){if(fe(),0===F&&0==e)return 0;if(0===F)break}if(E+=F,F=0,t=A+r,(0===E||E>=t)&&(F=E-t,E=t,de(!1),0===n.avail_out))return 0;if(E-A>=c-p&&(de(!1),0===n.avail_out))return 0}return de(4==e),0===n.avail_out?4==e?2:0:4==e?3:1})(m);break;case 1:I=(e=>{let t,r=0;for(;;){if(p>F){if(fe(),p>F&&0==e)return 0;if(0===F)break}if(3>F||(y=(y<c-p||2!=R&&(C=ue(r)),3>C)t=ae(0,255&g[E]),F--,E++;else if(t=ae(E-W,C-3),F-=C,C>T||3>F)E+=C,C=0,y=255&g[E],y=(y<{let t,r,i=0;for(;;){if(p>F){if(fe(),p>F&&0==e)return 0;if(0===F)break}if(3>F||(y=(y<j&&c-p>=(E-i&65535)&&(2!=R&&(C=ue(i)),5>=C&&(1==R||3==C&&E-W>4096)&&(C=2)),3>j||C>j)if(0!==U){if(t=ae(0,255&g[E-1]),t&&de(!1),E++,F--,0===n.avail_out)return 0}else U=1,E++,F--;else{r=E+F-3,t=ae(E-1-D,j-3),F-=j-1,j-=2;do{++E>r||(y=(y<1+X+10-Y&&(ne(2,3),re(256,s.static_ltree),se()),X=7;else if(le(0,0,!1),3==m)for(x=0;_>x;x++)v[x]=0;if(n.flush_pending(),0===n.avail_out)return o=-1,0}}return 4!=m?0:1}}function w(){const e=this;e.next_in_index=0,e.next_out_index=0,e.avail_in=0,e.total_in=0,e.avail_out=0,e.total_out=0}w.prototype={deflateInit(e,t){const n=this;return n.dstate=new h,t||(t=15),n.dstate.deflateInit(n,e,t)},deflate(t){const n=this;return n.dstate?n.dstate.deflate(n,t):e},deflateEnd(){const t=this;if(!t.dstate)return e;const n=t.dstate.deflateEnd();return t.dstate=null,n},deflateParams(t,n){const r=this;return r.dstate?r.dstate.deflateParams(r,t,n):e},deflateSetDictionary(t,n){const r=this;return r.dstate?r.dstate.deflateSetDictionary(r,t,n):e},read_buf(e,t,n){const r=this;let i=r.avail_in;return i>n&&(i=n),0===i?0:(r.avail_in-=i,e.set(r.next_in.subarray(r.next_in_index,r.next_in_index+i),t),r.next_in_index+=i,r.total_in+=i,i)},flush_pending(){const e=this;let t=e.dstate.pending;t>e.avail_out&&(t=e.avail_out),0!==t&&(e.next_out.set(e.dstate.pending_buf.subarray(e.dstate.pending_out,e.dstate.pending_out+t),e.next_out_index),e.next_out_index+=t,e.dstate.pending_out+=t,e.total_out+=t,e.avail_out-=t,e.dstate.pending-=t,0===e.dstate.pending&&(e.dstate.pending_out=0))}};const g=-2,x=-3,b=-5,v=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],y=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],_=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],k=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],S=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],z=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],A=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function C(){let e,t,n,r,i,s;function a(e,t,a,o,c,l,d,f,u,p,m){let h,w,g,v,y,_,k,S,z,A,C,D,U,E,W;A=0,y=a;do{n[e[t+A]]++,A++,y--}while(0!==y);if(n[0]==a)return d[0]=-1,f[0]=0,0;for(S=f[0],_=1;15>=_&&0===n[_];_++);for(k=_,_>S&&(S=_),y=15;0!==y&&0===n[y];y--);for(g=y,S>y&&(S=y),f[0]=S,E=1<<_;y>_;_++,E<<=1)if(0>(E-=n[_]))return x;if(0>(E-=n[y]))return x;for(n[y]+=E,s[1]=_=0,A=1,U=2;0!=--y;)s[U]=_+=n[A],U++,A++;y=0,A=0;do{0!==(_=e[t+A])&&(m[s[_]++]=y),A++}while(++y=k;k++)for(h=n[k];0!=h--;){for(;k>D+S;){if(v++,D+=S,W=g-D,W=W>S?S:W,(w=1<<(_=k-D))>h+1&&(w-=h+1,U=k,W>_))for(;++_n[++U];)w-=n[U];if(W=1<<_,p[0]+W>1440)return x;i[v]=C=p[0],p[0]+=W,0!==v?(s[v]=y,r[0]=_,r[1]=S,_=y>>>D-S,r[2]=C-i[v-1]-_,u.set(r,3*(i[v-1]+_))):d[0]=C}for(r[1]=k-D,a>A?m[A]m[A]?0:96,r[2]=m[A++]):(r[0]=l[m[A]-o]+16+64,r[2]=c[m[A++]-o]):r[0]=192,w=1<>>D;W>_;_+=w)u.set(r,3*(C+_));for(_=1<>>=1)y^=_;for(y^=_,z=(1<o;o++)t[o]=0;for(o=0;16>o;o++)n[o]=0;for(o=0;3>o;o++)r[o]=0;i.set(n.subarray(0,15),0),s.set(n.subarray(0,16),0)}this.inflate_trees_bits=(n,r,i,s,c)=>{let l;return o(19),e[0]=0,l=a(n,0,19,19,null,null,i,r,s,e,t),l==x?c.msg="oversubscribed dynamic bit lengths tree":l!=b&&0!==r[0]||(c.msg="incomplete dynamic bit lengths tree",l=x),l},this.inflate_trees_dynamic=(n,r,i,s,c,l,d,f,u)=>{let p;return o(288),e[0]=0,p=a(i,0,n,257,k,S,l,s,f,e,t),0!=p||0===s[0]?(p==x?u.msg="oversubscribed literal/length tree":-4!=p&&(u.msg="incomplete literal/length tree",p=x),p):(o(288),p=a(i,n,r,0,z,A,d,c,f,e,t),0!=p||0===c[0]&&n>257?(p==x?u.msg="oversubscribed distance tree":p==b?(u.msg="incomplete distance tree",p=x):-4!=p&&(u.msg="empty distance tree with lengths",p=x),p):0)}}function D(){const e=this;let t,n,r,i,s=0,a=0,o=0,c=0,l=0,d=0,f=0,u=0,p=0,m=0;function h(e,t,n,r,i,s,a,o){let c,l,d,f,u,p,m,h,w,g,b,y,_,k,S,z;m=o.next_in_index,h=o.avail_in,u=a.bitb,p=a.bitk,w=a.write,g=wp;)h--,u|=(255&o.read_byte(m++))<>=l[z+1],p-=l[z+1],16&f){for(f&=15,_=l[z+2]+(u&v[f]),u>>=f,p-=f;15>p;)h--,u|=(255&o.read_byte(m++))<>=l[z+1],p-=l[z+1],16&f){for(f&=15;f>p;)h--,u|=(255&o.read_byte(m++))<>=f,p-=f,g-=_,k>w){S=w-k;do{S+=a.end}while(0>S);if(f=a.end-S,_>f){if(_-=f,w-S>0&&f>w-S)do{a.win[w++]=a.win[S++]}while(0!=--f);else a.win.set(a.win.subarray(S,S+f),w),w+=f,S+=f,f=0;S=0}}else S=w-k,w-S>0&&2>w-S?(a.win[w++]=a.win[S++],a.win[w++]=a.win[S++],_-=2):(a.win.set(a.win.subarray(S,S+2),w),w+=2,S+=2,_-=2);if(w-S>0&&_>w-S)do{a.win[w++]=a.win[S++]}while(0!=--_);else a.win.set(a.win.subarray(S,S+_),w),w+=_,S+=_,_=0;break}if(64&f)return o.msg="invalid distance code",_=o.avail_in-h,_=_>p>>3?p>>3:_,h+=_,m-=_,p-=_<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,x;c+=l[z+2],c+=u&v[f],z=3*(d+c),f=l[z]}break}if(64&f)return 32&f?(_=o.avail_in-h,_=_>p>>3?p>>3:_,h+=_,m-=_,p-=_<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,1):(o.msg="invalid literal/length code",_=o.avail_in-h,_=_>p>>3?p>>3:_,h+=_,m-=_,p-=_<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,x);if(c+=l[z+2],c+=u&v[f],z=3*(d+c),0===(f=l[z])){u>>=l[z+1],p-=l[z+1],a.win[w++]=l[z+2],g--;break}}else u>>=l[z+1],p-=l[z+1],a.win[w++]=l[z+2],g--}while(g>=258&&h>=10);return _=o.avail_in-h,_=_>p>>3?p>>3:_,h+=_,m-=_,p-=_<<3,a.bitb=u,a.bitk=p,o.avail_in=h,o.total_in+=m-o.next_in_index,o.next_in_index=m,a.write=w,0}e.init=(e,s,a,o,c,l)=>{t=0,f=e,u=s,r=a,p=o,i=c,m=l,n=null},e.proc=(e,w,b)=>{let y,_,k,S,z,A,C,D=0,U=0,E=0;for(E=w.next_in_index,S=w.avail_in,D=e.bitb,U=e.bitk,z=e.write,A=z=258&&S>=10&&(e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,b=h(f,u,r,p,i,m,e,w),E=w.next_in_index,S=w.avail_in,D=e.bitb,U=e.bitk,z=e.write,A=zU;){if(0===S)return e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,e.inflate_flush(w,b);b=0,S--,D|=(255&w.read_byte(E++))<>>=n[_+1],U-=n[_+1],k=n[_],0===k){c=n[_+2],t=6;break}if(16&k){l=15&k,s=n[_+2],t=2;break}if(!(64&k)){o=k,a=_/3+n[_+2];break}if(32&k){t=7;break}return t=9,w.msg="invalid literal/length code",b=x,e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,e.inflate_flush(w,b);case 2:for(y=l;y>U;){if(0===S)return e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,e.inflate_flush(w,b);b=0,S--,D|=(255&w.read_byte(E++))<>=y,U-=y,o=u,n=i,a=m,t=3;case 3:for(y=o;y>U;){if(0===S)return e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,e.inflate_flush(w,b);b=0,S--,D|=(255&w.read_byte(E++))<>=n[_+1],U-=n[_+1],k=n[_],16&k){l=15&k,d=n[_+2],t=4;break}if(!(64&k)){o=k,a=_/3+n[_+2];break}return t=9,w.msg="invalid distance code",b=x,e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,e.inflate_flush(w,b);case 4:for(y=l;y>U;){if(0===S)return e.bitb=D,e.bitk=U,w.avail_in=S,w.total_in+=E-w.next_in_index,w.next_in_index=E,e.write=z,e.inflate_flush(w,b);b=0,S--,D|=(255&w.read_byte(E++))<>=y,U-=y,t=5;case 5:for(C=z-d;0>C;)C+=e.end;for(;0!==s;){if(0===A&&(z==e.end&&0!==e.read&&(z=0,A=z7&&(U-=8,S++,E--),e.write=z,b=e.inflate_flush(w,b),z=e.write,A=z{}}C.inflate_trees_fixed=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=y,r[0]=_,0);const U=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function E(e,t){const n=this;let r,i=0,s=0,a=0,o=0;const c=[0],l=[0],d=new D;let f=0,u=new Int32Array(4320);const p=new C;n.bitk=0,n.bitb=0,n.win=new Uint8Array(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==i&&d.free(e),i=0,n.bitk=0,n.bitb=0,n.read=n.write=0},n.reset(e,null),n.inflate_flush=(e,t)=>{let r,i,s;return i=e.next_out_index,s=n.read,r=(s>n.write?n.end:n.write)-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==b&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r,s==n.end&&(s=0,n.write==n.end&&(n.write=0),r=n.write-s,r>e.avail_out&&(r=e.avail_out),0!==r&&t==b&&(t=0),e.avail_out-=r,e.total_out+=r,e.next_out.set(n.win.subarray(s,s+r),i),i+=r,s+=r),e.next_out_index=i,n.read=s,t},n.proc=(e,t)=>{let m,h,w,b,y,_,k,S;for(b=e.next_in_index,y=e.avail_in,h=n.bitb,w=n.bitk,_=n.write,k=_w;){if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);t=0,y--,h|=(255&e.read_byte(b++))<>>1){case 0:h>>>=3,w-=3,m=7&w,h>>>=m,w-=m,i=1;break;case 1:z=[],A=[],D=[[]],E=[[]],C.inflate_trees_fixed(z,A,D,E),d.init(z[0],A[0],D[0],0,E[0],0),h>>>=3,w-=3,i=6;break;case 2:h>>>=3,w-=3,i=3;break;case 3:return h>>>=3,w-=3,i=9,e.msg="invalid block type",t=x,n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t)}break;case 1:for(;32>w;){if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);t=0,y--,h|=(255&e.read_byte(b++))<>>16&65535)!=(65535&h))return i=9,e.msg="invalid stored block lengths",t=x,n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);s=65535&h,h=w=0,i=0!==s?2:0!==f?7:0;break;case 2:if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);if(0===k&&(_==n.end&&0!==n.read&&(_=0,k=_y&&(m=y),m>k&&(m=k),n.win.set(e.read_buf(b,m),_),b+=m,y-=m,_+=m,k-=m,0!=(s-=m))break;i=0!==f?7:0;break;case 3:for(;14>w;){if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);t=0,y--,h|=(255&e.read_byte(b++))<29||(m>>5&31)>29)return i=9,e.msg="too many length or distance symbols",t=x,n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);if(m=258+(31&m)+(m>>5&31),!r||r.lengthS;S++)r[S]=0;h>>>=14,w-=14,o=0,i=4;case 4:for(;4+(a>>>10)>o;){for(;3>w;){if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);t=0,y--,h|=(255&e.read_byte(b++))<>>=3,w-=3}for(;19>o;)r[U[o++]]=0;if(c[0]=7,m=p.inflate_trees_bits(r,c,l,u,e),0!=m)return(t=m)==x&&(r=null,i=9),n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);o=0,i=5;case 5:for(;m=a,258+(31&m)+(m>>5&31)>o;){let s,d;for(m=c[0];m>w;){if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);t=0,y--,h|=(255&e.read_byte(b++))<d)h>>>=m,w-=m,r[o++]=d;else{for(S=18==d?7:d-14,s=18==d?11:3;m+S>w;){if(0===y)return n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);t=0,y--,h|=(255&e.read_byte(b++))<>>=m,w-=m,s+=h&v[S],h>>>=S,w-=S,S=o,m=a,S+s>258+(31&m)+(m>>5&31)||16==d&&1>S)return r=null,i=9,e.msg="invalid bit length repeat",t=x,n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);d=16==d?r[S-1]:0;do{r[S++]=d}while(0!=--s);o=S}}if(l[0]=-1,W=[],F=[],j=[],q=[],W[0]=9,F[0]=6,m=a,m=p.inflate_trees_dynamic(257+(31&m),1+(m>>5&31),r,W,F,j,q,u,e),0!=m)return m==x&&(r=null,i=9),t=m,n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,n.inflate_flush(e,t);d.init(W[0],F[0],u,j[0],u,q[0]),i=6;case 6:if(n.bitb=h,n.bitk=w,e.avail_in=y,e.total_in+=b-e.next_in_index,e.next_in_index=b,n.write=_,1!=(t=d.proc(n,e,t)))return n.inflate_flush(e,t);if(t=0,d.free(e),b=e.next_in_index,y=e.avail_in,h=n.bitb,w=n.bitk,_=n.write,k=_{n.reset(e,null),n.win=null,u=null},n.set_dictionary=(e,t,r)=>{n.win.set(e.subarray(t,t+r),0),n.read=n.write=r},n.sync_point=()=>1==i?1:0}const W=13,F=[0,0,255,255];function j(){const e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):g}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=t=>(e.blocks&&e.blocks.free(t),e.blocks=null,0),e.inflateInit=(n,r)=>(n.msg=null,e.blocks=null,8>r||r>15?(e.inflateEnd(n),g):(e.wbits=r,n.istate.blocks=new E(n,1<{let n,r;if(!e||!e.istate||!e.next_in)return g;const i=e.istate;for(t=4==t?b:0,n=b;;)switch(i.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(i.method=e.read_byte(e.next_in_index++)))){i.mode=W,e.msg="unknown compression method",i.marker=5;break}if(8+(i.method>>4)>i.wbits){i.mode=W,e.msg="invalid win size",i.marker=5;break}i.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,r=255&e.read_byte(e.next_in_index++),((i.method<<8)+r)%31!=0){i.mode=W,e.msg="incorrect header check",i.marker=5;break}if(!(32&r)){i.mode=7;break}i.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,i.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,i.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,i.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,i.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,i.need+=255&e.read_byte(e.next_in_index++),i.mode=6,2);case 6:return i.mode=W,e.msg="need dictionary",i.marker=0,g;case 7:if(n=i.blocks.proc(e,n),n==x){i.mode=W,i.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,i.blocks.reset(e,i.was),i.mode=12;case 12:return e.avail_in=0,1;case W:return x;default:return g}},e.inflateSetDictionary=(e,t,n)=>{let r=0,i=n;if(!e||!e.istate||6!=e.istate.mode)return g;const s=e.istate;return i<1<{let n,r,i,s,a;if(!e||!e.istate)return g;const o=e.istate;if(o.mode!=W&&(o.mode=W,o.marker=0),0===(n=e.avail_in))return b;for(r=e.next_in_index,i=o.marker;0!==n&&4>i;)e.read_byte(r)==F[i]?i++:i=0!==e.read_byte(r)?0:4-i,r++,n--;return e.total_in+=r-e.next_in_index,e.next_in_index=r,e.avail_in=n,o.marker=i,4!=i?x:(s=e.total_in,a=e.total_out,t(e),e.total_in=s,e.total_out=a,o.mode=7,0)},e.inflateSyncPoint=e=>e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():g}function q(){}q.prototype={inflateInit(e){const t=this;return t.istate=new j,e||(e=15),t.istate.inflateInit(t,e)},inflate(e){const t=this;return t.istate?t.istate.inflate(t,e):g},inflateEnd(){const e=this;if(!e.istate)return g;const t=e.istate.inflateEnd(e);return e.istate=null,t},inflateSync(){const e=this;return e.istate?e.istate.inflateSync(e):g},inflateSetDictionary(e,t){const n=this;return n.istate?n.istate.inflateSetDictionary(n,e,t):g},read_byte(e){return this.next_in[e]},read_buf(e,t){return this.next_in.subarray(e,e+t)}};const T=4294967295,O=65535,R=67324752,L=134695760,I=L,M=33639248,P=101010256,B=101075792,H=117853008,N=22,V=21589,Z=2048,K="/",G=new Date(2107,11,31),X=new Date(1980,0,1),J=void 0,Y="undefined",Q="function";class ${constructor(e){return class extends TransformStream{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}let ee=2;try{typeof navigator!=Y&&navigator.hardwareConcurrency&&(ee=navigator.hardwareConcurrency)}catch(e){}const te={chunkSize:524288,maxWorkers:ee,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:J,CompressionStreamNative:typeof CompressionStream!=Y&&CompressionStream,DecompressionStreamNative:typeof DecompressionStream!=Y&&DecompressionStream},ne=Object.assign({},te);function re(){return ne}function ie(e){return Math.max(e.chunkSize,64)}function se(e){const{baseURL:t,chunkSize:n,maxWorkers:r,terminateWorkerTimeout:i,useCompressionStream:s,useWebWorkers:a,Deflate:o,Inflate:c,CompressionStream:l,DecompressionStream:d,workerScripts:f}=e;if(ae("baseURL",t),ae("chunkSize",n),ae("maxWorkers",r),ae("terminateWorkerTimeout",i),ae("useCompressionStream",s),ae("useWebWorkers",a),o&&(ne.CompressionStream=new $(o)),c&&(ne.DecompressionStream=new $(c)),ae("CompressionStream",l),ae("DecompressionStream",d),f!==J){const{deflate:e,inflate:t}=f;if((e||t)&&(ne.workerScripts||(ne.workerScripts={})),e){if(!Array.isArray(e))throw Error("workerScripts.deflate must be an array");ne.workerScripts.deflate=e}if(t){if(!Array.isArray(t))throw Error("workerScripts.inflate must be an array");ne.workerScripts.inflate=t}}}function ae(e,t){t!==J&&(ne[e]=t)}const oe={application:{"andrew-inset":"ez",annodex:"anx","atom+xml":"atom","atomcat+xml":"atomcat","atomserv+xml":"atomsrv",bbolin:"lin","cu-seeme":"cu","davmount+xml":"davmount",dsptype:"tsp",ecmascript:["es","ecma"],futuresplash:"spl",hta:"hta","java-archive":"jar","java-serialized-object":"ser","java-vm":"class",m3g:"m3g","mac-binhex40":"hqx",mathematica:["nb","ma","mb"],msaccess:"mdb",msword:["doc","dot","wiz"],mxf:"mxf",oda:"oda",ogg:"ogx",pdf:"pdf","pgp-keys":"key","pgp-signature":["asc","sig"],"pics-rules":"prf",postscript:["ps","ai","eps","epsi","epsf","eps2","eps3"],rar:"rar","rdf+xml":"rdf","rss+xml":"rss",rtf:"rtf","xhtml+xml":["xhtml","xht"],xml:["xml","xsl","xsd","xpdl"],"xspf+xml":"xspf",zip:"zip","vnd.android.package-archive":"apk","vnd.cinderella":"cdy","vnd.google-earth.kml+xml":"kml","vnd.google-earth.kmz":"kmz","vnd.mozilla.xul+xml":"xul","vnd.ms-excel":["xls","xlb","xlt","xlm","xla","xlc","xlw"],"vnd.ms-pki.seccat":"cat","vnd.ms-pki.stl":"stl","vnd.ms-powerpoint":["ppt","pps","pot","ppa","pwz"],"vnd.oasis.opendocument.chart":"odc","vnd.oasis.opendocument.database":"odb","vnd.oasis.opendocument.formula":"odf","vnd.oasis.opendocument.graphics":"odg","vnd.oasis.opendocument.graphics-template":"otg","vnd.oasis.opendocument.image":"odi","vnd.oasis.opendocument.presentation":"odp","vnd.oasis.opendocument.presentation-template":"otp","vnd.oasis.opendocument.spreadsheet":"ods","vnd.oasis.opendocument.spreadsheet-template":"ots","vnd.oasis.opendocument.text":"odt","vnd.oasis.opendocument.text-master":["odm","otm"],"vnd.oasis.opendocument.text-template":"ott","vnd.oasis.opendocument.text-web":"oth","vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","vnd.openxmlformats-officedocument.spreadsheetml.template":"xltx","vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","vnd.openxmlformats-officedocument.presentationml.slideshow":"ppsx","vnd.openxmlformats-officedocument.presentationml.template":"potx","vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","vnd.openxmlformats-officedocument.wordprocessingml.template":"dotx","vnd.smaf":"mmf","vnd.stardivision.calc":"sdc","vnd.stardivision.chart":"sds","vnd.stardivision.draw":"sda","vnd.stardivision.impress":"sdd","vnd.stardivision.math":["sdf","smf"],"vnd.stardivision.writer":["sdw","vor"],"vnd.stardivision.writer-global":"sgl","vnd.sun.xml.calc":"sxc","vnd.sun.xml.calc.template":"stc","vnd.sun.xml.draw":"sxd","vnd.sun.xml.draw.template":"std","vnd.sun.xml.impress":"sxi","vnd.sun.xml.impress.template":"sti","vnd.sun.xml.math":"sxm","vnd.sun.xml.writer":"sxw","vnd.sun.xml.writer.global":"sxg","vnd.sun.xml.writer.template":"stw","vnd.symbian.install":["sis","sisx"],"vnd.visio":["vsd","vst","vss","vsw","vsdx","vssx","vstx","vssm","vstm"],"vnd.wap.wbxml":"wbxml","vnd.wap.wmlc":"wmlc","vnd.wap.wmlscriptc":"wmlsc","vnd.wordperfect":"wpd","vnd.wordperfect5.1":"wp5","x-123":"wk","x-7z-compressed":"7z","x-abiword":"abw","x-apple-diskimage":"dmg","x-bcpio":"bcpio","x-bittorrent":"torrent","x-cbr":["cbr","cba","cbt","cb7"],"x-cbz":"cbz","x-cdf":["cdf","cda"],"x-cdlink":"vcd","x-chess-pgn":"pgn","x-cpio":"cpio","x-csh":"csh","x-director":["dir","dxr","cst","cct","cxt","w3d","fgd","swa"],"x-dms":"dms","x-doom":"wad","x-dvi":"dvi","x-httpd-eruby":"rhtml","x-font":"pcf.Z","x-freemind":"mm","x-gnumeric":"gnumeric","x-go-sgf":"sgf","x-graphing-calculator":"gcf","x-gtar":["gtar","taz"],"x-hdf":"hdf","x-httpd-php":["phtml","pht","php"],"x-httpd-php-source":"phps","x-httpd-php3":"php3","x-httpd-php3-preprocessed":"php3p","x-httpd-php4":"php4","x-httpd-php5":"php5","x-ica":"ica","x-info":"info","x-internet-signup":["ins","isp"],"x-iphone":"iii","x-iso9660-image":"iso","x-java-jnlp-file":"jnlp","x-jmol":"jmz","x-killustrator":"kil","x-latex":"latex","x-lyx":"lyx","x-lzx":"lzx","x-maker":["frm","fb","fbdoc"],"x-ms-wmd":"wmd","x-msdos-program":["com","exe","bat","dll"],"x-netcdf":["nc"],"x-ns-proxy-autoconfig":["pac","dat"],"x-nwc":"nwc","x-object":"o","x-oz-application":"oza","x-pkcs7-certreqresp":"p7r","x-python-code":["pyc","pyo"],"x-qgis":["qgs","shp","shx"],"x-quicktimeplayer":"qtl","x-redhat-package-manager":["rpm","rpa"],"x-ruby":"rb","x-sh":"sh","x-shar":"shar","x-shockwave-flash":["swf","swfl"],"x-silverlight":"scr","x-stuffit":"sit","x-sv4cpio":"sv4cpio","x-sv4crc":"sv4crc","x-tar":"tar","x-tex-gf":"gf","x-tex-pk":"pk","x-texinfo":["texinfo","texi"],"x-trash":["~","%","bak","old","sik"],"x-ustar":"ustar","x-wais-source":"src","x-wingz":"wz","x-x509-ca-cert":["crt","der","cer"],"x-xcf":"xcf","x-xfig":"fig","x-xpinstall":"xpi",applixware:"aw","atomsvc+xml":"atomsvc","ccxml+xml":"ccxml","cdmi-capability":"cdmia","cdmi-container":"cdmic","cdmi-domain":"cdmid","cdmi-object":"cdmio","cdmi-queue":"cdmiq","docbook+xml":"dbk","dssc+der":"dssc","dssc+xml":"xdssc","emma+xml":"emma","epub+zip":"epub",exi:"exi","font-tdpfr":"pfr","gml+xml":"gml","gpx+xml":"gpx",gxf:"gxf",hyperstudio:"stk","inkml+xml":["ink","inkml"],ipfix:"ipfix","jsonml+json":"jsonml","lost+xml":"lostxml","mads+xml":"mads",marc:"mrc","marcxml+xml":"mrcx","mathml+xml":["mathml","mml"],mbox:"mbox","mediaservercontrol+xml":"mscml","metalink+xml":"metalink","metalink4+xml":"meta4","mets+xml":"mets","mods+xml":"mods",mp21:["m21","mp21"],mp4:"mp4s","oebps-package+xml":"opf","omdoc+xml":"omdoc",onenote:["onetoc","onetoc2","onetmp","onepkg"],oxps:"oxps","patch-ops-error+xml":"xer","pgp-encrypted":"pgp",pkcs10:"p10","pkcs7-mime":["p7m","p7c"],"pkcs7-signature":"p7s",pkcs8:"p8","pkix-attr-cert":"ac","pkix-crl":"crl","pkix-pkipath":"pkipath",pkixcmp:"pki","pls+xml":"pls","prs.cww":"cww","pskc+xml":"pskcxml","reginfo+xml":"rif","relax-ng-compact-syntax":"rnc","resource-lists+xml":"rl","resource-lists-diff+xml":"rld","rls-services+xml":"rs","rpki-ghostbusters":"gbr","rpki-manifest":"mft","rpki-roa":"roa","rsd+xml":"rsd","sbml+xml":"sbml","scvp-cv-request":"scq","scvp-cv-response":"scs","scvp-vp-request":"spq","scvp-vp-response":"spp",sdp:"sdp","set-payment-initiation":"setpay","set-registration-initiation":"setreg","shf+xml":"shf","sparql-query":"rq","sparql-results+xml":"srx",srgs:"gram","srgs+xml":"grxml","sru+xml":"sru","ssdl+xml":"ssdl","ssml+xml":"ssml","tei+xml":["tei","teicorpus"],"thraud+xml":"tfi","timestamped-data":"tsd","vnd.3gpp.pic-bw-large":"plb","vnd.3gpp.pic-bw-small":"psb","vnd.3gpp.pic-bw-var":"pvb","vnd.3gpp2.tcap":"tcap","vnd.3m.post-it-notes":"pwn","vnd.accpac.simply.aso":"aso","vnd.accpac.simply.imp":"imp","vnd.acucobol":"acu","vnd.acucorp":["atc","acutc"],"vnd.adobe.air-application-installer-package+zip":"air","vnd.adobe.formscentral.fcdt":"fcdt","vnd.adobe.fxp":["fxp","fxpl"],"vnd.adobe.xdp+xml":"xdp","vnd.adobe.xfdf":"xfdf","vnd.ahead.space":"ahead","vnd.airzip.filesecure.azf":"azf","vnd.airzip.filesecure.azs":"azs","vnd.amazon.ebook":"azw","vnd.americandynamics.acc":"acc","vnd.amiga.ami":"ami","vnd.anser-web-certificate-issue-initiation":"cii","vnd.anser-web-funds-transfer-initiation":"fti","vnd.antix.game-component":"atx","vnd.apple.installer+xml":"mpkg","vnd.apple.mpegurl":"m3u8","vnd.aristanetworks.swi":"swi","vnd.astraea-software.iota":"iota","vnd.audiograph":"aep","vnd.blueice.multipass":"mpm","vnd.bmi":"bmi","vnd.businessobjects":"rep","vnd.chemdraw+xml":"cdxml","vnd.chipnuts.karaoke-mmd":"mmd","vnd.claymore":"cla","vnd.cloanto.rp9":"rp9","vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"vnd.cluetrust.cartomobile-config":"c11amc","vnd.cluetrust.cartomobile-config-pkg":"c11amz","vnd.commonspace":"csp","vnd.contact.cmsg":"cdbcmsg","vnd.cosmocaller":"cmc","vnd.crick.clicker":"clkx","vnd.crick.clicker.keyboard":"clkk","vnd.crick.clicker.palette":"clkp","vnd.crick.clicker.template":"clkt","vnd.crick.clicker.wordbank":"clkw","vnd.criticaltools.wbs+xml":"wbs","vnd.ctc-posml":"pml","vnd.cups-ppd":"ppd","vnd.curl.car":"car","vnd.curl.pcurl":"pcurl","vnd.dart":"dart","vnd.data-vision.rdz":"rdz","vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"vnd.dece.ttml+xml":["uvt","uvvt"],"vnd.dece.unspecified":["uvx","uvvx"],"vnd.dece.zip":["uvz","uvvz"],"vnd.denovo.fcselayout-link":"fe_launch","vnd.dna":"dna","vnd.dolby.mlp":"mlp","vnd.dpgraph":"dpg","vnd.dreamfactory":"dfac","vnd.ds-keypoint":"kpxx","vnd.dvb.ait":"ait","vnd.dvb.service":"svc","vnd.dynageo":"geo","vnd.ecowin.chart":"mag","vnd.enliven":"nml","vnd.epson.esf":"esf","vnd.epson.msf":"msf","vnd.epson.quickanime":"qam","vnd.epson.salt":"slt","vnd.epson.ssf":"ssf","vnd.eszigno3+xml":["es3","et3"],"vnd.ezpix-album":"ez2","vnd.ezpix-package":"ez3","vnd.fdf":"fdf","vnd.fdsn.mseed":"mseed","vnd.fdsn.seed":["seed","dataless"],"vnd.flographit":"gph","vnd.fluxtime.clip":"ftc","vnd.framemaker":["fm","frame","maker","book"],"vnd.frogans.fnc":"fnc","vnd.frogans.ltf":"ltf","vnd.fsc.weblaunch":"fsc","vnd.fujitsu.oasys":"oas","vnd.fujitsu.oasys2":"oa2","vnd.fujitsu.oasys3":"oa3","vnd.fujitsu.oasysgp":"fg5","vnd.fujitsu.oasysprs":"bh2","vnd.fujixerox.ddd":"ddd","vnd.fujixerox.docuworks":"xdw","vnd.fujixerox.docuworks.binder":"xbd","vnd.fuzzysheet":"fzs","vnd.genomatix.tuxedo":"txd","vnd.geogebra.file":"ggb","vnd.geogebra.tool":"ggt","vnd.geometry-explorer":["gex","gre"],"vnd.geonext":"gxt","vnd.geoplan":"g2w","vnd.geospace":"g3w","vnd.gmx":"gmx","vnd.grafeq":["gqf","gqs"],"vnd.groove-account":"gac","vnd.groove-help":"ghf","vnd.groove-identity-message":"gim","vnd.groove-injector":"grv","vnd.groove-tool-message":"gtm","vnd.groove-tool-template":"tpl","vnd.groove-vcard":"vcg","vnd.hal+xml":"hal","vnd.handheld-entertainment+xml":"zmm","vnd.hbci":"hbci","vnd.hhe.lesson-player":"les","vnd.hp-hpgl":"hpgl","vnd.hp-hpid":"hpid","vnd.hp-hps":"hps","vnd.hp-jlyt":"jlt","vnd.hp-pcl":"pcl","vnd.hp-pclxl":"pclxl","vnd.hydrostatix.sof-data":"sfd-hdstx","vnd.ibm.minipay":"mpy","vnd.ibm.modcap":["afp","listafp","list3820"],"vnd.ibm.rights-management":"irm","vnd.ibm.secure-container":"sc","vnd.iccprofile":["icc","icm"],"vnd.igloader":"igl","vnd.immervision-ivp":"ivp","vnd.immervision-ivu":"ivu","vnd.insors.igm":"igm","vnd.intercon.formnet":["xpw","xpx"],"vnd.intergeo":"i2g","vnd.intu.qbo":"qbo","vnd.intu.qfx":"qfx","vnd.ipunplugged.rcprofile":"rcprofile","vnd.irepository.package+xml":"irp","vnd.is-xpr":"xpr","vnd.isac.fcs":"fcs","vnd.jam":"jam","vnd.jcp.javame.midlet-rms":"rms","vnd.jisp":"jisp","vnd.joost.joda-archive":"joda","vnd.kahootz":["ktz","ktr"],"vnd.kde.karbon":"karbon","vnd.kde.kchart":"chrt","vnd.kde.kformula":"kfo","vnd.kde.kivio":"flw","vnd.kde.kontour":"kon","vnd.kde.kpresenter":["kpr","kpt"],"vnd.kde.kspread":"ksp","vnd.kde.kword":["kwd","kwt"],"vnd.kenameaapp":"htke","vnd.kidspiration":"kia","vnd.kinar":["kne","knp"],"vnd.koan":["skp","skd","skt","skm"],"vnd.kodak-descriptor":"sse","vnd.las.las+xml":"lasxml","vnd.llamagraphics.life-balance.desktop":"lbd","vnd.llamagraphics.life-balance.exchange+xml":"lbe","vnd.lotus-1-2-3":"123","vnd.lotus-approach":"apr","vnd.lotus-freelance":"pre","vnd.lotus-notes":"nsf","vnd.lotus-organizer":"org","vnd.lotus-screencam":"scm","vnd.lotus-wordpro":"lwp","vnd.macports.portpkg":"portpkg","vnd.mcd":"mcd","vnd.medcalcdata":"mc1","vnd.mediastation.cdkey":"cdkey","vnd.mfer":"mwf","vnd.mfmp":"mfm","vnd.micrografx.flo":"flo","vnd.micrografx.igx":"igx","vnd.mif":"mif","vnd.mobius.daf":"daf","vnd.mobius.dis":"dis","vnd.mobius.mbk":"mbk","vnd.mobius.mqy":"mqy","vnd.mobius.msl":"msl","vnd.mobius.plc":"plc","vnd.mobius.txf":"txf","vnd.mophun.application":"mpn","vnd.mophun.certificate":"mpc","vnd.ms-artgalry":"cil","vnd.ms-cab-compressed":"cab","vnd.ms-excel.addin.macroenabled.12":"xlam","vnd.ms-excel.sheet.binary.macroenabled.12":"xlsb","vnd.ms-excel.sheet.macroenabled.12":"xlsm","vnd.ms-excel.template.macroenabled.12":"xltm","vnd.ms-fontobject":"eot","vnd.ms-htmlhelp":"chm","vnd.ms-ims":"ims","vnd.ms-lrm":"lrm","vnd.ms-officetheme":"thmx","vnd.ms-powerpoint.addin.macroenabled.12":"ppam","vnd.ms-powerpoint.presentation.macroenabled.12":"pptm","vnd.ms-powerpoint.slide.macroenabled.12":"sldm","vnd.ms-powerpoint.slideshow.macroenabled.12":"ppsm","vnd.ms-powerpoint.template.macroenabled.12":"potm","vnd.ms-project":["mpp","mpt"],"vnd.ms-word.document.macroenabled.12":"docm","vnd.ms-word.template.macroenabled.12":"dotm","vnd.ms-works":["wps","wks","wcm","wdb"],"vnd.ms-wpl":"wpl","vnd.ms-xpsdocument":"xps","vnd.mseq":"mseq","vnd.musician":"mus","vnd.muvee.style":"msty","vnd.mynfc":"taglet","vnd.neurolanguage.nlu":"nlu","vnd.nitf":["ntf","nitf"],"vnd.noblenet-directory":"nnd","vnd.noblenet-sealer":"nns","vnd.noblenet-web":"nnw","vnd.nokia.n-gage.data":"ngdat","vnd.nokia.n-gage.symbian.install":"n-gage","vnd.nokia.radio-preset":"rpst","vnd.nokia.radio-presets":"rpss","vnd.novadigm.edm":"edm","vnd.novadigm.edx":"edx","vnd.novadigm.ext":"ext","vnd.oasis.opendocument.chart-template":"otc","vnd.oasis.opendocument.formula-template":"odft","vnd.oasis.opendocument.image-template":"oti","vnd.olpc-sugar":"xo","vnd.oma.dd2+xml":"dd2","vnd.openofficeorg.extension":"oxt","vnd.openxmlformats-officedocument.presentationml.slide":"sldx","vnd.osgeo.mapguide.package":"mgp","vnd.osgi.dp":"dp","vnd.osgi.subsystem":"esa","vnd.palm":["pdb","pqa","oprc"],"vnd.pawaafile":"paw","vnd.pg.format":"str","vnd.pg.osasli":"ei6","vnd.picsel":"efif","vnd.pmi.widget":"wg","vnd.pocketlearn":"plf","vnd.powerbuilder6":"pbd","vnd.previewsystems.box":"box","vnd.proteus.magazine":"mgz","vnd.publishare-delta-tree":"qps","vnd.pvi.ptid1":"ptid","vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"vnd.realvnc.bed":"bed","vnd.recordare.musicxml":"mxl","vnd.recordare.musicxml+xml":"musicxml","vnd.rig.cryptonote":"cryptonote","vnd.rn-realmedia":"rm","vnd.rn-realmedia-vbr":"rmvb","vnd.route66.link66+xml":"link66","vnd.sailingtracker.track":"st","vnd.seemail":"see","vnd.sema":"sema","vnd.semd":"semd","vnd.semf":"semf","vnd.shana.informed.formdata":"ifm","vnd.shana.informed.formtemplate":"itp","vnd.shana.informed.interchange":"iif","vnd.shana.informed.package":"ipk","vnd.simtech-mindmapper":["twd","twds"],"vnd.smart.teacher":"teacher","vnd.solent.sdkm+xml":["sdkm","sdkd"],"vnd.spotfire.dxp":"dxp","vnd.spotfire.sfs":"sfs","vnd.stepmania.package":"smzip","vnd.stepmania.stepchart":"sm","vnd.sus-calendar":["sus","susp"],"vnd.svd":"svd","vnd.syncml+xml":"xsm","vnd.syncml.dm+wbxml":"bdm","vnd.syncml.dm+xml":"xdm","vnd.tao.intent-module-archive":"tao","vnd.tcpdump.pcap":["pcap","cap","dmp"],"vnd.tmobile-livetv":"tmo","vnd.trid.tpt":"tpt","vnd.triscape.mxs":"mxs","vnd.trueapp":"tra","vnd.ufdl":["ufd","ufdl"],"vnd.uiq.theme":"utz","vnd.umajin":"umj","vnd.unity":"unityweb","vnd.uoml+xml":"uoml","vnd.vcx":"vcx","vnd.visionary":"vis","vnd.vsf":"vsf","vnd.webturbo":"wtb","vnd.wolfram.player":"nbp","vnd.wqd":"wqd","vnd.wt.stf":"stf","vnd.xara":"xar","vnd.xfdl":"xfdl","vnd.yamaha.hv-dic":"hvd","vnd.yamaha.hv-script":"hvs","vnd.yamaha.hv-voice":"hvp","vnd.yamaha.openscoreformat":"osf","vnd.yamaha.openscoreformat.osfpvg+xml":"osfpvg","vnd.yamaha.smaf-audio":"saf","vnd.yamaha.smaf-phrase":"spf","vnd.yellowriver-custom-menu":"cmp","vnd.zul":["zir","zirz"],"vnd.zzazz.deck+xml":"zaz","voicexml+xml":"vxml",widget:"wgt",winhlp:"hlp","wsdl+xml":"wsdl","wspolicy+xml":"wspolicy","x-ace-compressed":"ace","x-authorware-bin":["aab","x32","u32","vox"],"x-authorware-map":"aam","x-authorware-seg":"aas","x-blorb":["blb","blorb"],"x-bzip":"bz","x-bzip2":["bz2","boz"],"x-cfs-compressed":"cfs","x-chat":"chat","x-conference":"nsc","x-dgc-compressed":"dgc","x-dtbncx+xml":"ncx","x-dtbook+xml":"dtb","x-dtbresource+xml":"res","x-eva":"eva","x-font-bdf":"bdf","x-font-ghostscript":"gsf","x-font-linux-psf":"psf","x-font-pcf":"pcf","x-font-snf":"snf","x-font-ttf":["ttf","ttc"],"x-font-type1":["pfa","pfb","pfm","afm"],"x-freearc":"arc","x-gca-compressed":"gca","x-glulx":"ulx","x-gramps-xml":"gramps","x-install-instructions":"install","x-lzh-compressed":["lzh","lha"],"x-mie":"mie","x-mobipocket-ebook":["prc","mobi"],"x-ms-application":"application","x-ms-shortcut":"lnk","x-ms-xbap":"xbap","x-msbinder":"obd","x-mscardfile":"crd","x-msclip":"clp","application/x-ms-installer":"msi","x-msmediaview":["mvb","m13","m14"],"x-msmetafile":["wmf","wmz","emf","emz"],"x-msmoney":"mny","x-mspublisher":"pub","x-msschedule":"scd","x-msterminal":"trm","x-mswrite":"wri","x-nzb":"nzb","x-pkcs12":["p12","pfx"],"x-pkcs7-certificates":["p7b","spc"],"x-research-info-systems":"ris","x-silverlight-app":"xap","x-sql":"sql","x-stuffitx":"sitx","x-subrip":"srt","x-t3vm-image":"t3","x-tex-tfm":"tfm","x-tgif":"obj","x-xliff+xml":"xlf","x-xz":"xz","x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"xaml+xml":"xaml","xcap-diff+xml":"xdf","xenc+xml":"xenc","xml-dtd":"dtd","xop+xml":"xop","xproc+xml":"xpl","xslt+xml":"xslt","xv+xml":["mxml","xhvml","xvml","xvm"],yang:"yang","yin+xml":"yin",envoy:"evy",fractals:"fif","internet-property-stream":"acx",olescript:"axs","vnd.ms-outlook":"msg","vnd.ms-pkicertstore":"sst","x-compress":"z","x-perfmon":["pma","pmc","pmr","pmw"],"ynd.ms-pkipko":"pko",gzip:["gz","tgz"],"smil+xml":["smi","smil"],"vnd.debian.binary-package":["deb","udeb"],"vnd.hzn-3d-crossword":"x3d","vnd.sqlite3":["db","sqlite","sqlite3","db-wal","sqlite-wal","db-shm","sqlite-shm"],"vnd.wap.sic":"sic","vnd.wap.slc":"slc","x-krita":["kra","krz"],"x-perl":["pm","pl"],yaml:["yaml","yml"]},audio:{amr:"amr","amr-wb":"awb",annodex:"axa",basic:["au","snd"],flac:"flac",midi:["mid","midi","kar","rmi"],mpeg:["mpga","mpega","mp3","m4a","mp2a","m2a","m3a"],mpegurl:"m3u",ogg:["oga","ogg","spx"],"prs.sid":"sid","x-aiff":"aifc","x-gsm":"gsm","x-ms-wma":"wma","x-ms-wax":"wax","x-pn-realaudio":"ram","x-realaudio":"ra","x-sd2":"sd2",adpcm:"adp",mp4:"mp4a",s3m:"s3m",silk:"sil","vnd.dece.audio":["uva","uvva"],"vnd.digital-winds":"eol","vnd.dra":"dra","vnd.dts":"dts","vnd.dts.hd":"dtshd","vnd.lucent.voice":"lvp","vnd.ms-playready.media.pya":"pya","vnd.nuera.ecelp4800":"ecelp4800","vnd.nuera.ecelp7470":"ecelp7470","vnd.nuera.ecelp9600":"ecelp9600","vnd.rip":"rip",webm:"weba","x-caf":"caf","x-matroska":"mka","x-pn-realaudio-plugin":"rmp",xm:"xm",aac:"aac",aiff:["aiff","aif","aff"],opus:"opus",wav:"wav"},chemical:{"x-alchemy":"alc","x-cache":["cac","cache"],"x-cache-csf":"csf","x-cactvs-binary":["cbin","cascii","ctab"],"x-cdx":"cdx","x-chem3d":"c3d","x-cif":"cif","x-cmdf":"cmdf","x-cml":"cml","x-compass":"cpa","x-crossfire":"bsd","x-csml":["csml","csm"],"x-ctx":"ctx","x-cxf":["cxf","cef"],"x-embl-dl-nucleotide":["emb","embl"],"x-gamess-input":["inp","gam","gamin"],"x-gaussian-checkpoint":["fch","fchk"],"x-gaussian-cube":"cub","x-gaussian-input":["gau","gjc","gjf"],"x-gaussian-log":"gal","x-gcg8-sequence":"gcg","x-genbank":"gen","x-hin":"hin","x-isostar":["istr","ist"],"x-jcamp-dx":["jdx","dx"],"x-kinemage":"kin","x-macmolecule":"mcm","x-macromodel-input":"mmod","x-mdl-molfile":"mol","x-mdl-rdfile":"rd","x-mdl-rxnfile":"rxn","x-mdl-sdfile":"sd","x-mdl-tgf":"tgf","x-mmcif":"mcif","x-mol2":"mol2","x-molconn-Z":"b","x-mopac-graph":"gpt","x-mopac-input":["mop","mopcrt","zmt"],"x-mopac-out":"moo","x-ncbi-asn1":"asn","x-ncbi-asn1-ascii":["prt","ent"],"x-ncbi-asn1-binary":"val","x-rosdal":"ros","x-swissprot":"sw","x-vamas-iso14976":"vms","x-vmd":"vmd","x-xtel":"xtel","x-xyz":"xyz"},font:{otf:"otf",woff:"woff",woff2:"woff2"},image:{gif:"gif",ief:"ief",jpeg:["jpeg","jpg","jpe","jfif","jfif-tbnl","jif"],pcx:"pcx",png:"png","svg+xml":["svg","svgz"],tiff:["tiff","tif"],"vnd.djvu":["djvu","djv"],"vnd.wap.wbmp":"wbmp","x-canon-cr2":"cr2","x-canon-crw":"crw","x-cmu-raster":"ras","x-coreldraw":"cdr","x-coreldrawpattern":"pat","x-coreldrawtemplate":"cdt","x-corelphotopaint":"cpt","x-epson-erf":"erf","x-icon":"ico","x-jg":"art","x-jng":"jng","x-nikon-nef":"nef","x-olympus-orf":"orf","x-portable-anymap":"pnm","x-portable-bitmap":"pbm","x-portable-graymap":"pgm","x-portable-pixmap":"ppm","x-rgb":"rgb","x-xbitmap":"xbm","x-xpixmap":"xpm","x-xwindowdump":"xwd",bmp:"bmp",cgm:"cgm",g3fax:"g3",ktx:"ktx","prs.btif":"btif",sgi:"sgi","vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"vnd.dwg":"dwg","vnd.dxf":"dxf","vnd.fastbidsheet":"fbs","vnd.fpx":"fpx","vnd.fst":"fst","vnd.fujixerox.edmics-mmr":"mmr","vnd.fujixerox.edmics-rlc":"rlc","vnd.ms-modi":"mdi","vnd.ms-photo":"wdp","vnd.net-fpx":"npx","vnd.xiff":"xif",webp:"webp","x-3ds":"3ds","x-cmx":"cmx","x-freehand":["fh","fhc","fh4","fh5","fh7"],"x-pict":["pic","pct"],"x-tga":"tga","cis-cod":"cod",avif:"avifs",heic:["heif","heic"],pjpeg:["pjpg"],"vnd.adobe.photoshop":"psd","x-adobe-dng":"dng","x-fuji-raf":"raf","x-icns":"icns","x-kodak-dcr":"dcr","x-kodak-k25":"k25","x-kodak-kdc":"kdc","x-minolta-mrw":"mrw","x-panasonic-raw":["raw","rw2","rwl"],"x-pentax-pef":["pef","ptx"],"x-sigma-x3f":"x3f","x-sony-arw":"arw","x-sony-sr2":"sr2","x-sony-srf":"srf"},message:{rfc822:["eml","mime","mht","mhtml","nws"]},model:{iges:["igs","iges"],mesh:["msh","mesh","silo"],vrml:["wrl","vrml"],"x3d+vrml":["x3dv","x3dvz"],"x3d+xml":"x3dz","x3d+binary":["x3db","x3dbz"],"vnd.collada+xml":"dae","vnd.dwf":"dwf","vnd.gdl":"gdl","vnd.gtw":"gtw","vnd.mts":"mts","vnd.usdz+zip":"usdz","vnd.vtu":"vtu"},text:{"cache-manifest":["manifest","appcache"],calendar:["ics","icz","ifb"],css:"css",csv:"csv",h323:"323",html:["html","htm","shtml","stm"],iuls:"uls",plain:["txt","text","brf","conf","def","list","log","in","bas","diff","ksh"],richtext:"rtx",scriptlet:["sct","wsc"],texmacs:"tm","tab-separated-values":"tsv","vnd.sun.j2me.app-descriptor":"jad","vnd.wap.wml":"wml","vnd.wap.wmlscript":"wmls","x-bibtex":"bib","x-boo":"boo","x-c++hdr":["h++","hpp","hxx","hh"],"x-c++src":["c++","cpp","cxx","cc"],"x-component":"htc","x-dsrc":"d","x-diff":"patch","x-haskell":"hs","x-java":"java","x-literate-haskell":"lhs","x-moc":"moc","x-pascal":["p","pas","pp","inc"],"x-pcs-gcd":"gcd","x-python":"py","x-scala":"scala","x-setext":"etx","x-tcl":["tcl","tk"],"x-tex":["tex","ltx","sty","cls"],"x-vcalendar":"vcs","x-vcard":"vcf",n3:"n3","prs.lines.tag":"dsc",sgml:["sgml","sgm"],troff:["t","tr","roff","man","me","ms"],turtle:"ttl","uri-list":["uri","uris","urls"],vcard:"vcard","vnd.curl":"curl","vnd.curl.dcurl":"dcurl","vnd.curl.scurl":"scurl","vnd.curl.mcurl":"mcurl","vnd.dvb.subtitle":"sub","vnd.fly":"fly","vnd.fmi.flexstor":"flx","vnd.graphviz":"gv","vnd.in3d.3dml":"3dml","vnd.in3d.spot":"spot","x-asm":["s","asm"],"x-c":["c","h","dic"],"x-fortran":["f","for","f77","f90"],"x-opml":"opml","x-nfo":"nfo","x-sfv":"sfv","x-uuencode":"uu",webviewhtml:"htt",javascript:"js",json:"json",markdown:["md","markdown","mdown","markdn"],"vnd.wap.si":"si","vnd.wap.sl":"sl"},video:{avif:"avif","3gpp":"3gp",annodex:"axv",dl:"dl",dv:["dif","dv"],fli:"fli",gl:"gl",mpeg:["mpeg","mpg","mpe","m1v","m2v","mp2","mpa","mpv2"],mp4:["mp4","mp4v","mpg4"],quicktime:["qt","mov"],ogg:"ogv","vnd.mpegurl":["mxu","m4u"],"x-flv":"flv","x-la-asf":["lsf","lsx"],"x-mng":"mng","x-ms-asf":["asf","asx","asr"],"x-ms-wm":"wm","x-ms-wmv":"wmv","x-ms-wmx":"wmx","x-ms-wvx":"wvx","x-msvideo":"avi","x-sgi-movie":"movie","x-matroska":["mpv","mkv","mk3d","mks"],"3gpp2":"3g2",h261:"h261",h263:"h263",h264:"h264",jpeg:"jpgv",jpm:["jpm","jpgm"],mj2:["mj2","mjp2"],"vnd.dece.hd":["uvh","uvvh"],"vnd.dece.mobile":["uvm","uvvm"],"vnd.dece.pd":["uvp","uvvp"],"vnd.dece.sd":["uvs","uvvs"],"vnd.dece.video":["uvv","uvvv"],"vnd.dvb.file":"dvb","vnd.fvt":"fvt","vnd.ms-playready.media.pyv":"pyv","vnd.uvvu.mp4":["uvu","uvvu"],"vnd.vivo":"viv",webm:"webm","x-f4v":"f4v","x-m4v":"m4v","x-ms-vob":"vob","x-smv":"smv",mp2t:"ts"},"x-conference":{"x-cooltalk":"ice"},"x-world":{"x-vrml":["vrm","flr","wrz","xaf","xof"]}},ce=(()=>{const e={};for(const t of Object.keys(oe))for(const n of Object.keys(oe[t])){const r=oe[t][n];if("string"==typeof r)e[r]=t+"/"+n;else for(let i=0;ie;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;de[e]=t}class fe{constructor(e){this.crc=e||-1}append(e){let t=0|this.crc;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^de[255&(t^e[n])];this.crc=t}get(){return~this.crc}}class ue extends TransformStream{constructor(){let e;const t=new fe;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new Uint8Array(4);new DataView(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}function pe(e){if(typeof TextEncoder==Y){e=unescape(encodeURIComponent(e));const t=new Uint8Array(e.length);for(let n=0;n0&&t&&(e[n-1]=me.partial(t,e[n-1]&2147483648>>t-1,1)),e},partial:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,getPartial:e=>Math.round(e/1099511627776)||32,_shiftRight(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let i=0;i>>t),n=e[i]<<32-t;const i=e.length?e[e.length-1]:0,s=me.getPartial(i);return r.push(me.partial(t+s&31,t+s>32?n:r.pop(),1)),r}},he={bytes:{fromBits(e){const t=me.bitLength(e)/8,n=new Uint8Array(t);let r;for(let i=0;t>i;i++)3&i||(r=e[i/4]),n[i]=r>>>24,r<<=8;return n},toBits(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw Error("Cannot hash more than 2^53 - 1 bits");const s=new Uint32Array(n);let a=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t._block(s.subarray(16*a,16*(a+1))),a+=1;return n.splice(0,16*a),t}finalize(){const e=this;let t=e._buffer;const n=e._h;t=me.concat(t,[me.partial(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(Math.floor(e._length/4294967296)),t.push(0|e._length);t.length;)e._block(t.splice(0,16));return e.reset(),n}_f(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}_S(e,t){return t<>>32-e}_block(e){const t=this,n=t._h,r=Array(80);for(let t=0;16>t;t++)r[t]=e[t];let i=n[0],s=n[1],a=n[2],o=n[3],c=n[4];for(let e=0;79>=e;e++){16>e||(r[e]=t._S(1,r[e-3]^r[e-8]^r[e-14]^r[e-16]));const n=t._S(5,i)+t._f(e,s,a,o)+c+r[e]+t._key[Math.floor(e/20)]|0;c=o,o=a,a=t._S(30,s),s=i,i=n}n[0]=n[0]+i|0,n[1]=n[1]+s|0,n[2]=n[2]+a|0,n[3]=n[3]+o|0,n[4]=n[4]+c|0}},ge={getRandomValues(e){const t=new Uint32Array(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(Math.random()>.5?1:-1))};for(let r,i=0;inew xe.hmacSha1(he.bytes.toBits(e)),pbkdf2(e,t,n,r){if(n=n||1e4,0>r||0>n)throw Error("invalid params to pbkdf2");const i=1+(r>>5)<<2;let s,a,o,c,l;const d=new ArrayBuffer(i),f=new DataView(d);let u=0;const p=me;for(t=he.bytes.toBits(t),l=1;(i||1)>u;l++){for(s=a=e.encrypt(p.concat(t,[l])),o=1;n>o;o++)for(a=e.encrypt(a),c=0;cu&&oi&&(e=(new n).update(e).finalize());for(let t=0;i>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t._baseHash[0].update(r[0]),t._baseHash[1].update(r[1]),t._resultHash=new n(t._baseHash[0])}reset(){const e=this;e._resultHash=new e._hash(e._baseHash[0]),e._updated=!1}update(e){this._updated=!0,this._resultHash.update(e)}digest(){const e=this,t=e._resultHash.finalize(),n=new e._hash(e._baseHash[1]).update(t).finalize();return e.reset(),n}encrypt(e){if(this._updated)throw Error("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},be=typeof crypto!=Y&&typeof crypto.getRandomValues==Q,ve="Invalid password",ye="Invalid signature",_e="zipjs-abort-check-password";function ke(e){return be?crypto.getRandomValues(e):ge.getRandomValues(e)}const Se=16,ze={name:"PBKDF2"},Ae=Object.assign({hash:{name:"HMAC"}},ze),Ce=Object.assign({iterations:1e3,hash:{name:"SHA-1"}},ze),De=["deriveBits"],Ue=[8,12,16],Ee=[16,24,32],We=10,Fe=[0,0,0,0],je=typeof crypto!=Y,qe=je&&crypto.subtle,Te=je&&typeof qe!=Y,Oe=he.bytes,Re=class{constructor(e){const t=this;t._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],t._tables[0][0][0]||t._precompute();const n=t._tables[0][4],r=t._tables[1],i=e.length;let s,a,o,c=1;if(4!==i&&6!==i&&8!==i)throw Error("invalid aes key size");for(t._key=[a=e.slice(0),o=[]],s=i;4*i+28>s;s++){let e=a[s-1];(s%i==0||8===i&&s%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],s%i==0&&(e=e<<8^e>>>24^c<<24,c=c<<1^283*(c>>7))),a[s]=a[s-i]^e}for(let e=0;s;e++,s--){const t=a[3&e?s:s-4];o[e]=4>=s||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this._crypt(e,0)}decrypt(e){return this._crypt(e,1)}_precompute(){const e=this._tables[0],t=this._tables[1],n=e[4],r=t[4],i=[],s=[];let a,o,c,l;for(let e=0;256>e;e++)s[(i[e]=e<<1^283*(e>>7))^e]=e;for(let d=a=0;!n[d];d^=o||1,a=s[a]||1){let s=a^a<<1^a<<2^a<<3^a<<4;s=s>>8^255&s^99,n[d]=s,r[s]=d,l=i[c=i[o=i[d]]];let f=16843009*l^65537*c^257*o^16843008*d,u=257*i[s]^16843008*s;for(let n=0;4>n;n++)e[n][d]=u=u<<24^u>>>8,t[n][s]=f=f<<24^f>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}_crypt(e,t){if(4!==e.length)throw Error("invalid aes block size");const n=this._key[t],r=n.length/4-2,i=[0,0,0,0],s=this._tables[t],a=s[0],o=s[1],c=s[2],l=s[3],d=s[4];let f,u,p,m=e[0]^n[0],h=e[t?3:1]^n[1],w=e[2]^n[2],g=e[t?1:3]^n[3],x=4;for(let e=0;r>e;e++)f=a[m>>>24]^o[h>>16&255]^c[w>>8&255]^l[255&g]^n[x],u=a[h>>>24]^o[w>>16&255]^c[g>>8&255]^l[255&m]^n[x+1],p=a[w>>>24]^o[g>>16&255]^c[m>>8&255]^l[255&h]^n[x+2],g=a[g>>>24]^o[m>>16&255]^c[h>>8&255]^l[255&w]^n[x+3],x+=4,m=f,h=u,w=p;for(let e=0;4>e;e++)i[t?3&-e:e]=d[m>>>24]<<24^d[h>>16&255]<<16^d[w>>8&255]<<8^d[255&g]^n[x++],f=m,m=h,h=w,w=g,g=f;return i}},Le=class{constructor(e,t){this._prf=e,this._initIv=t,this._iv=t}reset(){this._iv=this._initIv}update(e){return this.calculate(this._prf,e,this._iv)}incWord(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}incCounter(e){0===(e[0]=this.incWord(e[0]))&&(e[1]=this.incWord(e[1]))}calculate(e,t,n){let r;if(!(r=t.length))return[];const i=me.bitLength(t);for(let i=0;r>i;i+=4){this.incCounter(n);const r=e.encrypt(n);t[i]^=r[0],t[i+1]^=r[1],t[i+2]^=r[2],t[i+3]^=r[3]}return me.clamp(t,i)}},Ie=xe.hmacSha1;let Me=je&&Te&&typeof qe.importKey==Q,Pe=je&&Te&&typeof qe.deriveBits==Q;class Be extends TransformStream{constructor({password:e,rawPassword:t,signed:n,encryptionStrength:r,checkPasswordOnly:i}){super({start(){Object.assign(this,{ready:new Promise((e=>this.resolveReady=e)),password:Ze(e,t),signed:n,strength:r-1,pending:new Uint8Array})},async transform(e,t){const n=this,{password:r,strength:s,resolveReady:a,ready:o}=n;r?(await(async(e,t,n,r)=>{const i=await Ve(e,t,n,Ge(r,0,Ue[t])),s=Ge(r,Ue[t]);if(i[0]!=s[0]||i[1]!=s[1])throw Error(ve)})(n,s,r,Ge(e,0,Ue[s]+2)),e=Ge(e,Ue[s]+2),i?t.error(Error(_e)):a()):await o;const c=new Uint8Array(e.length-We-(e.length-We)%Se);t.enqueue(Ne(n,e,c,0,We,!0))},async flush(e){const{signed:t,ctr:n,hmac:r,pending:i,ready:s}=this;if(r&&n){await s;const a=Ge(i,0,i.length-We),o=Ge(i,i.length-We);let c=new Uint8Array;if(a.length){const e=Je(Oe,a);r.update(e);const t=n.update(e);c=Xe(Oe,t)}if(t){const e=Ge(Xe(Oe,r.digest()),0,We);for(let t=0;We>t;t++)if(e[t]!=o[t])throw Error(ye)}e.enqueue(c)}}})}}class He extends TransformStream{constructor({password:e,rawPassword:t,encryptionStrength:n}){let r;super({start(){Object.assign(this,{ready:new Promise((e=>this.resolveReady=e)),password:Ze(e,t),strength:n-1,pending:new Uint8Array})},async transform(e,t){const n=this,{password:r,strength:i,resolveReady:s,ready:a}=n;let o=new Uint8Array;r?(o=await(async(e,t,n)=>{const r=ke(new Uint8Array(Ue[t]));return Ke(r,await Ve(e,t,n,r))})(n,i,r),s()):await a;const c=new Uint8Array(o.length+e.length-e.length%Se);c.set(o,0),t.enqueue(Ne(n,e,c,o.length,0))},async flush(e){const{ctr:t,hmac:n,pending:i,ready:s}=this;if(n&&t){await s;let a=new Uint8Array;if(i.length){const e=t.update(Je(Oe,i));n.update(e),a=Xe(Oe,e)}r.signature=Xe(Oe,n.digest()).slice(0,We),e.enqueue(Ke(a,r.signature))}}}),r=this}}function Ne(e,t,n,r,i,s){const{ctr:a,hmac:o,pending:c}=e,l=t.length-i;let d;for(c.length&&(t=Ke(c,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new Uint8Array(t)).set(n,0)}return e})(n,l-l%Se)),d=0;l-Se>=d;d+=Se){const e=Je(Oe,Ge(t,d,d+Se));s&&o.update(e);const i=a.update(e);s||o.update(i),n.set(Xe(Oe,i),d+r)}return e.pending=Ge(t,d),n}async function Ve(e,t,n,r){e.password=null;const i=await(async(e,t,n,r,i)=>{if(!Me)return xe.importKey(t);try{return await qe.importKey("raw",t,n,!1,i)}catch(e){return Me=!1,xe.importKey(t)}})(0,n,Ae,0,De),s=await(async(e,t,n)=>{if(!Pe)return xe.pbkdf2(t,e.salt,Ce.iterations,n);try{return await qe.deriveBits(e,t,n)}catch(r){return Pe=!1,xe.pbkdf2(t,e.salt,Ce.iterations,n)}})(Object.assign({salt:r},Ce),i,8*(2*Ee[t]+2)),a=new Uint8Array(s),o=Je(Oe,Ge(a,0,Ee[t])),c=Je(Oe,Ge(a,Ee[t],2*Ee[t])),l=Ge(a,2*Ee[t]);return Object.assign(e,{keys:{key:o,authentication:c,passwordVerification:l},ctr:new Le(new Re(o),Array.from(Fe)),hmac:new Ie(c)}),l}function Ze(e,t){return t===J?pe(e):t}function Ke(e,t){let n=e;return e.length+t.length&&(n=new Uint8Array(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function Ge(e,t,n){return e.subarray(t,n)}function Xe(e,t){return e.fromBits(t)}function Je(e,t){return e.toBits(t)}class Ye extends TransformStream{constructor({password:e,passwordVerification:t,checkPasswordOnly:n}){super({start(){Object.assign(this,{password:e,passwordVerification:t}),tt(this,e)},transform(e,t){const r=this;if(r.password){const t=$e(r,e.subarray(0,12));if(r.password=null,t[11]!=r.passwordVerification)throw Error(ve);e=e.subarray(12)}n?t.error(Error(_e)):t.enqueue($e(r,e))}})}}class Qe extends TransformStream{constructor({password:e,passwordVerification:t}){super({start(){Object.assign(this,{password:e,passwordVerification:t}),tt(this,e)},transform(e,t){const n=this;let r,i;if(n.password){n.password=null;const t=ke(new Uint8Array(12));t[11]=n.passwordVerification,r=new Uint8Array(e.length+t.length),r.set(et(n,t),0),i=12}else r=new Uint8Array(e.length),i=0;r.set(et(n,e),i),t.enqueue(r)}})}}function $e(e,t){const n=new Uint8Array(t.length);for(let r=0;r>>24]),i=~e.crcKey2.get(),e.keys=[n,r,i]}function rt(e){const t=2|e.keys[2];return it(Math.imul(t,1^t)>>>8)}function it(e){return 255&e}function st(e){return 4294967295&e}const at="deflate-raw";class ot extends TransformStream{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:i,encrypted:s,useCompressionStream:a,zipCrypto:o,signed:c,level:l}=e,d=this;let f,u,p=lt(super.readable);s&&!o||!c||(f=new ue,p=ut(p,f)),i&&(p=ft(p,a,{level:l,chunkSize:t},r,n)),s&&(o?p=ut(p,new Qe(e)):(u=new He(e),p=ut(p,u))),dt(d,p,(()=>{let e;s&&!o&&(e=u.signature),s&&!o||!c||(e=new DataView(f.value.buffer).getUint32(0)),d.signature=e}))}}class ct extends TransformStream{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:s,signed:a,signature:o,compressed:c,useCompressionStream:l}=e;let d,f,u=lt(super.readable);s&&(i?u=ut(u,new Ye(e)):(f=new Be(e),u=ut(u,f))),c&&(u=ft(u,l,{chunkSize:t},r,n)),s&&!i||!a||(d=new ue,u=ut(u,d)),dt(this,u,(()=>{if((!s||i)&&a){const e=new DataView(d.value.buffer);if(o!=e.getUint32(0,!1))throw Error(ye)}}))}}function lt(e){return ut(e,new TransformStream({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function dt(e,t,n){t=ut(t,new TransformStream({flush:n})),Object.defineProperty(e,"readable",{get:()=>t})}function ft(e,t,n,r,i){try{e=ut(e,new(t&&r?r:i)(at,n))}catch(r){if(!t)return e;try{e=ut(e,new i(at,n))}catch(t){return e}}return e}function ut(e,t){return e.pipeThrough(t)}const pt="data",mt="close",ht="deflate",wt="inflate";class gt extends TransformStream{constructor(e,t){super({});const n=this,{codecType:r}=e;let i;r.startsWith(ht)?i=ot:r.startsWith(wt)&&(i=ct);let s=0,a=0;const o=new i(e,t),c=super.readable,l=new TransformStream({transform(e,t){e&&e.length&&(a+=e.length,t.enqueue(e))},flush(){Object.assign(n,{inputSize:a})}}),d=new TransformStream({transform(e,t){e&&e.length&&(s+=e.length,t.enqueue(e))},flush(){const{signature:e}=o;Object.assign(n,{signature:e,outputSize:s,inputSize:a})}});Object.defineProperty(n,"readable",{get:()=>c.pipeThrough(l).pipeThrough(o).pipeThrough(d)})}}class xt extends TransformStream{constructor(e){let t;super({transform:function n(r,i){if(t){const e=new Uint8Array(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(i.enqueue(r.slice(0,e)),n(r.slice(e),i)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}let bt=typeof Worker!=Y;class vt{constructor(e,{readable:t,writable:n},{options:r,config:i,streamOptions:s,useWebWorkers:a,transferStreams:o,scripts:c},l){const{signal:d}=s;return Object.assign(e,{busy:!0,readable:t.pipeThrough(new xt(i.chunkSize)).pipeThrough(new yt(t,s),{signal:d}),writable:n,options:Object.assign({},r),scripts:c,transferStreams:o,terminate:()=>new Promise((t=>{const{worker:n,busy:r}=e;n?(r?e.resolveTerminated=t:(n.terminate(),t()),e.interface=null):t()})),onTaskFinished(){const{resolveTerminated:t}=e;t&&(e.resolveTerminated=null,e.terminated=!0,e.worker.terminate(),t()),e.busy=!1,l(e)}}),(a&&bt?St:kt)(e,i)}}class yt extends TransformStream{constructor(e,{onstart:t,onprogress:n,size:r,onend:i}){let s=0;super({async start(){t&&await _t(t,r)},async transform(e,t){s+=e.length,n&&await _t(n,s,r),t.enqueue(e)},async flush(){e.size=s,i&&await _t(i,s)}})}}async function _t(e,...t){try{await e(...t)}catch(e){}}function kt(e,t){return{run:()=>(async({options:e,readable:t,writable:n,onTaskFinished:r},i)=>{try{const r=new gt(e,i);await t.pipeThrough(r).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:s,inputSize:a,outputSize:o}=r;return{signature:s,inputSize:a,outputSize:o}}finally{r()}})(e,t)}}function St(e,t){const{baseURL:n,chunkSize:r}=t;if(!e.interface){let i;try{i=((e,t,n)=>{const r={type:"module"};let i,s;typeof e==Q&&(e=e());try{i=new URL(e,t)}catch(t){i=e}if(zt)try{s=new Worker(i)}catch(e){zt=!1,s=new Worker(i,r)}else s=new Worker(i,r);return s.addEventListener("message",(e=>(async({data:e},t)=>{const{type:n,value:r,messageId:i,result:s,error:a}=e,{reader:o,writer:c,resolveResult:l,rejectResult:d,onTaskFinished:f}=t;try{if(a){const{message:e,stack:t,code:n,name:r}=a,i=Error(e);Object.assign(i,{stack:t,code:n,name:r}),u(i)}else{if("pull"==n){const{value:e,done:n}=await o.read();Ct({type:pt,value:e,done:n,messageId:i},t)}n==pt&&(await c.ready,await c.write(new Uint8Array(r)),Ct({type:"ack",messageId:i},t)),n==mt&&u(null,s)}}catch(a){Ct({type:mt,messageId:i},t),u(a)}function u(e,t){e?d(e):l(t),c&&c.releaseLock(),f()}})(e,n))),s})(e.scripts[0],n,e)}catch(n){return bt=!1,kt(e,t)}Object.assign(e,{worker:i,interface:{run:()=>(async(e,t)=>{let n,r;const i=new Promise(((e,t)=>{n=e,r=t}));Object.assign(e,{reader:null,writer:null,resolveResult:n,rejectResult:r,result:i});const{readable:s,options:a,scripts:o}=e,{writable:c,closed:l}=(e=>{let t;const n=new Promise((e=>t=e));return{writable:new WritableStream({async write(t){const n=e.getWriter();await n.ready,await n.write(t),n.releaseLock()},close(){t()},abort:t=>e.getWriter().abort(t)}),closed:n}})(e.writable),d=Ct({type:"start",scripts:o.slice(1),options:a,config:t,readable:s,writable:c},e);d||Object.assign(e,{reader:s.getReader(),writer:c.getWriter()});const f=await i;return d||await c.getWriter().close(),await l,f})(e,{chunkSize:r})}})}return e.interface}let zt=!0,At=!0;function Ct(e,{worker:t,writer:n,onTaskFinished:r,transferStreams:i}){try{const{value:n,readable:r,writable:s}=e,a=[];if(n&&(n.byteLength{const n=Dt.find((e=>!e.busy));if(n)return Ft(n),new vt(n,e,t,m);if(Dt.lengthUt.push({resolve:n,stream:e,workerOptions:t})))})()).run();function m(e){if(Ut.length){const[{resolve:t,stream:n,workerOptions:r}]=Ut.splice(0,1);t(new vt(e,n,r,m))}else e.worker?(Ft(e),((e,t)=>{const{config:n}=t,{terminateWorkerTimeout:r}=n;Number.isFinite(r)&&r>=0&&(e.terminated?e.terminated=!1:e.terminateTimeout=setTimeout((async()=>{Dt=Dt.filter((t=>t!=e));try{await e.terminate()}catch(e){}}),r))})(e,t)):Dt=Dt.filter((t=>t!=e))}}function Ft(e){const{terminateTimeout:t}=e;t&&(clearTimeout(t),e.terminateTimeout=null)}async function jt(){await Promise.allSettled(Dt.map((e=>(Ft(e),e.terminate()))))}function qt(e,t={},n){return{Deflate:Tt(e.Deflate,t.deflate,n),Inflate:Tt(e.Inflate,t.inflate,n)}}function Tt(e,t,n){return class{constructor(r){const i=this;var s,a;s=r,a="level",(typeof Object.hasOwn===Q?Object.hasOwn(s,a):s.hasOwnProperty(a))&&r.level===J&&delete r.level,i.codec=new e(Object.assign({},t,r)),n(i.codec,(e=>{if(i.pendingData){const t=i.pendingData;i.pendingData=new Uint8Array(t.length+e.length);const{pendingData:n}=i;n.set(t,0),n.set(e,t.length)}else i.pendingData=new Uint8Array(e)}))}append(e){return this.codec.push(e),r(this)}flush(){return this.codec.push(new Uint8Array,!0),r(this)}};function r(e){if(e.pendingData){const t=e.pendingData;return e.pendingData=null,t}return new Uint8Array}}const Ot="HTTP error ",Rt="HTTP Range not supported",Lt="Writer iterator completed too soon",It="Range",Mt="GET",Pt="bytes",Bt=65536,Ht="writable";class Nt{constructor(){this.size=0}init(){this.initialized=!0}}class Vt extends Nt{get readable(){const e=this,{chunkSize:t=Bt}=e,n=new ReadableStream({start(){this.chunkOffset=0},async pull(r){const{offset:i=0,size:s,diskNumberStart:a}=n,{chunkOffset:o}=this;r.enqueue(await _n(e,i+o,Math.min(t,s-o),a)),o+t>s?r.close():this.chunkOffset+=t}});return n}}class Zt extends Nt{constructor(){super();const e=this,t=new WritableStream({write:t=>e.writeUint8Array(t)});Object.defineProperty(e,Ht,{get:()=>t})}writeUint8Array(){}}class Kt extends Vt{constructor(e){super();let t=e.length;for(;"="==e.charAt(t-1);)t--;const n=e.indexOf(",")+1;Object.assign(this,{dataURI:e,dataStart:n,size:Math.floor(.75*(t-n))})}readUint8Array(e,t){const{dataStart:n,dataURI:r}=this,i=new Uint8Array(t),s=4*Math.floor(e/3),a=atob(r.substring(s+n,4*Math.ceil((e+t)/3)+n)),o=e-3*Math.floor(s/4);for(let e=o;o+t>e;e++)i[e-o]=a.charCodeAt(e);return i}}class Gt extends Zt{constructor(e){super(),Object.assign(this,{data:"data:"+(e||"")+";base64,",pending:[]})}writeUint8Array(e){const t=this;let n=0,r=t.pending;const i=t.pending.length;for(t.pending="",n=0;n<3*Math.floor((i+e.length)/3)-i;n++)r+=String.fromCharCode(e[n]);for(;n2?t.data+=btoa(r):t.pending=r}getData(){return this.data+btoa(this.pending)}}class Xt extends Vt{constructor(e){super(),Object.assign(this,{blob:e,size:e.size})}async readUint8Array(e,t){const n=this,r=e+t,i=e||rt&&(s=s.slice(e,r)),new Uint8Array(s)}}class Jt extends Nt{constructor(e){super();const t=new TransformStream,n=[];e&&n.push(["Content-Type",e]),Object.defineProperty(this,Ht,{get:()=>t.writable}),this.blob=new Response(t.readable,{headers:n}).blob()}getData(){return this.blob}}class Yt extends Xt{constructor(e){super(new Blob([e],{type:"text/plain"}))}}class Qt extends Jt{constructor(e){super(e),Object.assign(this,{encoding:e,utf8:!e||"utf-8"==e.toLowerCase()})}async getData(){const{encoding:e,utf8:t}=this,n=await super.getData();if(n.text&&t)return n.text();{const t=new FileReader;return new Promise(((r,i)=>{Object.assign(t,{onload:({target:e})=>r(e.result),onerror:()=>i(t.error)}),t.readAsText(n,e)}))}}}class $t extends Vt{constructor(e,t){super(),tn(this,e,t)}async init(){await nn(this,fn,on),super.init()}readUint8Array(e,t){return rn(this,e,t,fn,on)}}class en extends Vt{constructor(e,t){super(),tn(this,e,t)}async init(){await nn(this,un,cn),super.init()}readUint8Array(e,t){return rn(this,e,t,un,cn)}}function tn(e,t,n){const{preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a}=n;delete(n=Object.assign({},n)).preventHeadRequest,delete n.useRangeHeader,delete n.forceRangeRequests,delete n.combineSizeEocd,delete n.useXHR,Object.assign(e,{url:t,options:n,preventHeadRequest:r,useRangeHeader:i,forceRangeRequests:s,combineSizeEocd:a})}async function nn(e,t,n){const{url:r,preventHeadRequest:i,useRangeHeader:s,forceRangeRequests:a,combineSizeEocd:o}=e;if((e=>{const{baseURL:t}=re(),{protocol:n}=new URL(e,t);return"http:"==n||"https:"==n})(r)&&(s||a)&&(void 0===i||i)){const r=await t(Mt,e,sn(e,o?-22:void 0));if(!a&&r.headers.get("Accept-Ranges")!=Pt)throw Error(Rt);{let i;o&&(e.eocdCache=new Uint8Array(await r.arrayBuffer()));const s=r.headers.get("Content-Range");if(s){const e=s.trim().split(/\s*\/\s*/);if(e.length){const t=e[1];t&&"*"!=t&&(i=Number(t))}}i===J?await dn(e,t,n):e.size=i}}else await dn(e,t,n)}async function rn(e,t,n,r,i){const{useRangeHeader:s,forceRangeRequests:a,eocdCache:o,size:c,options:l}=e;if(s||a){if(o&&t==c-N&&n==N)return o;const i=await r(Mt,e,sn(e,t,n));if(206!=i.status)throw Error(Rt);return new Uint8Array(await i.arrayBuffer())}{const{data:r}=e;return r||await i(e,l),new Uint8Array(e.data.subarray(t,t+n))}}function sn(e,t=0,n=1){return Object.assign({},an(e),{[It]:Pt+"="+(0>t?t:t+"-"+(t+n-1))})}function an({options:e}){const{headers:t}=e;if(t)return Symbol.iterator in t?Object.fromEntries(t):t}async function on(e){await ln(e,fn)}async function cn(e){await ln(e,un)}async function ln(e,t){const n=await t(Mt,e,an(e));e.data=new Uint8Array(await n.arrayBuffer()),e.size||(e.size=e.data.length)}async function dn(e,t,n){if(e.preventHeadRequest)await n(e,e.options);else{const r=(await t("HEAD",e,an(e))).headers.get("Content-Length");r?e.size=Number(r):await n(e,e.options)}}async function fn(e,{options:t,url:n},r){const i=await fetch(n,Object.assign({},t,{method:e,headers:r}));if(400>i.status)return i;throw 416==i.status?Error(Rt):Error(Ot+(i.statusText||i.status))}function un(e,{url:t},n){return new Promise(((r,i)=>{const s=new XMLHttpRequest;if(s.addEventListener("load",(()=>{if(400>s.status){const e=[];s.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach((t=>{const n=t.trim().split(/\s*:\s*/);n[0]=n[0].trim().replace(/^[a-z]|-[a-z]/g,(e=>e.toUpperCase())),e.push(n)})),r({status:s.status,arrayBuffer:()=>s.response,headers:new Map(e)})}else i(416==s.status?Error(Rt):Error(Ot+(s.statusText||s.status)))}),!1),s.addEventListener("error",(e=>i(e.detail?e.detail.error:Error("Network error"))),!1),s.open(e,t),n)for(const e of Object.entries(n))s.setRequestHeader(e[0],e[1]);s.responseType="arraybuffer",s.send()}))}class pn extends Vt{constructor(e,t={}){super(),Object.assign(this,{url:e,reader:t.useXHR?new en(e,t):new $t(e,t)})}set size(e){}get size(){return this.reader.size}async init(){await this.reader.init(),super.init()}readUint8Array(e,t){return this.reader.readUint8Array(e,t)}}class mn extends pn{constructor(e,t={}){t.useRangeHeader=!0,super(e,t)}}class hn extends Vt{constructor(e){super(),Object.assign(this,{array:e,size:e.length})}readUint8Array(e,t){return this.array.slice(e,e+t)}}class wn extends Zt{init(e=0){Object.assign(this,{offset:0,array:new Uint8Array(e)}),super.init()}writeUint8Array(e){const t=this;if(t.offset+e.length>t.array.length){const n=t.array;t.array=new Uint8Array(n.length+e.length),t.array.set(n)}t.array.set(e,t.offset),t.offset+=e.length}getData(){return this.array}}class gn extends Vt{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:t}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await Promise.all(t.map((async(n,r)=>{await n.init(),r!=t.length-1&&(e.lastDiskOffset+=n.size),e.size+=n.size}))),super.init()}async readUint8Array(e,t,n=0){const r=this,{readers:i}=this;let s,a=n;-1==a&&(a=i.length-1);let o=e;for(;o>=i[a].size;)o-=i[a].size,a++;const c=i[a],l=c.size;if(o+t>l){const i=l-o;s=new Uint8Array(t),s.set(await _n(c,o,i)),s.set(await r.readUint8Array(e+i,t-i,n),i)}else s=await _n(c,o,t);return r.lastDiskNumber=Math.max(a,r.lastDiskNumber),s}}class xn extends Nt{constructor(e,t=4294967295){super();const n=this;let r,i,s;Object.assign(n,{diskNumber:0,diskOffset:0,size:0,maxSize:t,availableSize:t});const a=new WritableStream({async write(t){const{availableSize:a}=n;if(s)t.lengtha})}}async function bn(e,t){if(!e.init||e.initialized)return Promise.resolve();await e.init(t)}function vn(e){return Array.isArray(e)&&(e=new gn(e)),e instanceof ReadableStream&&(e={readable:e}),e}function yn(e){e.writable===J&&typeof e.next==Q&&(e=new xn(e)),e instanceof WritableStream&&(e={writable:e});const{writable:t}=e;return t.size===J&&(t.size=0),e instanceof xn||Object.assign(e,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),e}function _n(e,t,n,r){return e.readUint8Array(t,n,r)}const kn=gn,Sn=xn,zn="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split("");function An(e,t){return t&&"cp437"==t.trim().toLowerCase()?(e=>{{let t="";for(let n=0;nthis[t]=e[t]))}}const Yn="File format is not recognized",Qn="End of central directory not found",$n="End of Zip64 central directory locator not found",er="Central directory header not found",tr="Local file header not found",nr="Zip64 extra field not found",rr="File contains encrypted entry",ir="Encryption method not supported",sr="Compression method not supported",ar="Split zip file",or="utf-8",cr="cp437",lr=[[Wn,T],[Fn,T],[jn,T],[qn,O]],dr={[O]:{getValue:_r,bytes:4},[T]:{getValue:kr,bytes:8}};class fr{constructor(e,t={}){Object.assign(this,{reader:vn(e),options:t,config:re()})}async*getEntriesGenerator(e={}){const t=this;let{reader:n}=t;const{config:r}=t;if(await bn(n),n.size!==J&&n.readUint8Array||(n=new Xt(await new Response(n.readable).blob()),await bn(n)),n.size{const r=new Uint8Array(4);var i;return i=t,Sr(r).setUint32(0,i,!0),await s(22)||await s(Math.min(1048582,n));async function s(t){const i=n-t,s=await _n(e,i,t);for(let e=s.length-22;e>=0;e--)if(s[e]==r[0]&&s[e+1]==r[1]&&s[e+2]==r[2]&&s[e+3]==r[3])return{offset:i+e,buffer:s.slice(e,e+22).buffer}}})(n,P,n.size);if(!i)throw _r(Sr(await _n(n,0,4)))==L?Error(ar):Error(Qn);const s=Sr(i);let a=_r(s,12),o=_r(s,16);const c=i.offset,l=yr(s,20),d=c+N+l;let f=yr(s,4);const u=n.lastDiskNumber||0;let p=yr(s,6),m=yr(s,8),h=0,w=0;if(o==T||a==T||m==O||p==O){const e=Sr(await _n(n,i.offset-20,20));if(_r(e,0)==H){o=kr(e,8);let t=await _n(n,o,56,-1),r=Sr(t);const s=i.offset-20-56;if(_r(r,0)!=B&&o!=s){const e=o;o=s,h=o-e,t=await _n(n,o,56,-1),r=Sr(t)}if(_r(r,0)!=B)throw Error($n);f==O&&(f=_r(r,16)),p==O&&(p=_r(r,20)),m==O&&(m=kr(r,32)),a==T&&(a=kr(r,40)),o-=a}}if(oo)throw Error(Yn);let g=0,x=await _n(n,o,a,p),b=Sr(x);if(a){const e=i.offset-a;if(_r(b,g)!=M&&o!=e){const t=o;o=e,h+=o-t,x=await _n(n,o,a,p),b=Sr(x)}}const v=i.offset-o-(n.lastDiskOffset||0);if(a==v||0>v||(a=v,x=await _n(n,o,a,p),b=Sr(x)),0>o||o>=n.size)throw Error(Yn);const y=gr(t,e,"filenameEncoding"),_=gr(t,e,"commentEncoding");for(let i=0;m>i;i++){const s=new pr(n,r,t.options);if(_r(b,g)!=M)throw Error(er);mr(s,b,g+6);const a=!!s.bitFlag.languageEncodingFlag,o=g+46,c=o+s.filenameLength,l=c+s.extraFieldLength,d=yr(b,g+4),f=!(d>>8),u=d>>8==3,p=x.subarray(o,c),v=yr(b,g+32),k=l+v,S=x.subarray(l,k),z=a,A=a,C=_r(b,g+38),D=f&&!(16&~vr(b,g+38))||u&&!(16384&~(C>>16))||p.length&&47==p[p.length-1],U=u&&!(73&~(C>>16)),E=_r(b,g+42)+h;Object.assign(s,{versionMadeBy:d,msDosCompatible:f,compressedSize:0,uncompressedSize:0,commentLength:v,directory:D,offset:E,diskNumberStart:yr(b,g+34),internalFileAttributes:yr(b,g+36),externalFileAttributes:C,rawFilename:p,filenameUTF8:z,commentUTF8:A,rawExtraField:x.subarray(c,l),executable:U}),s.internalFileAttribute=s.internalFileAttributes,s.externalFileAttribute=s.externalFileAttributes;const W=gr(t,e,"decodeText")||An,F=z?or:y||cr,j=A?or:_||cr;let q=W(p,F);q===J&&(q=An(p,F));let T=W(S,j);T===J&&(T=An(S,j)),Object.assign(s,{rawComment:S,filename:q,comment:T,directory:D||q.endsWith(K)}),w=Math.max(E,w),hr(s,s,b,g+6),s.zipCrypto=s.encrypted&&!s.extraFieldAES;const O=new Jn(s);O.getData=(e,t)=>s.getData(e,O,t),g=k;const{onprogress:R}=e;if(R)try{await R(i+1,m,new Jn(s))}catch(e){}yield O}const k=gr(t,e,"extractPrependedData"),S=gr(t,e,"extractAppendedData");return k&&(t.prependedData=w>0?await _n(n,0,w):new Uint8Array),t.comment=l?await _n(n,c+N,l):new Uint8Array,S&&(t.appendedData=d{const{readable:e,writable:t}=new TransformStream;if(n.getData)return n.getData(t),e})()};delete i.getData,e.enqueue(i)}}),this.writable=n}}let pr=class{constructor(e,t,n){Object.assign(this,{reader:e,config:t,options:n})}async getData(e,t,n={}){const r=this,{reader:i,offset:s,diskNumberStart:a,extraFieldAES:o,compressionMethod:c,config:l,bitFlag:d,signature:f,rawLastModDate:u,uncompressedSize:p,compressedSize:m}=r,h=t.localDirectory={},w=Sr(await _n(i,s,30,a));let g=gr(r,n,"password"),x=gr(r,n,"rawPassword");const b=gr(r,n,"passThrough");if(g=g&&g.length&&g,x=x&&x.length&&x,o&&99!=o.originalCompressionMethod)throw Error(sr);if(0!=c&&8!=c&&!b)throw Error(sr);if(_r(w,0)!=R)throw Error(tr);mr(h,w,4),h.rawExtraField=h.extraFieldLength?await _n(i,s+30+h.filenameLength,h.extraFieldLength,a):new Uint8Array,hr(r,h,w,4,!0),Object.assign(t,{lastAccessDate:h.lastAccessDate,creationDate:h.creationDate});const v=r.encrypted&&h.encrypted&&!b,y=v&&!o;if(b||(t.zipCrypto=y),v){if(!y&&o.strength===J)throw Error(ir);if(!g&&!x)throw Error(rr)}const _=s+30+h.filenameLength+h.extraFieldLength,k=m,S=i.readable;Object.assign(S,{diskNumberStart:a,offset:_,size:k});const z=gr(r,n,"signal"),A=gr(r,n,"checkPasswordOnly");A&&(e=new WritableStream),e=yn(e),await bn(e,b?m:p);const{writable:C}=e,{onstart:D,onprogress:U,onend:E}=n,W={options:{codecType:wt,password:g,rawPassword:x,zipCrypto:y,encryptionStrength:o&&o.strength,signed:gr(r,n,"checkSignature")&&!b,passwordVerification:y&&(d.dataDescriptor?u>>>8&255:f>>>24&255),signature:f,compressed:0!=c&&!b,encrypted:r.encrypted&&!b,useWebWorkers:gr(r,n,"useWebWorkers"),useCompressionStream:gr(r,n,"useCompressionStream"),transferStreams:gr(r,n,"transferStreams"),checkPasswordOnly:A},config:l,streamOptions:{signal:z,size:k,onstart:D,onprogress:U,onend:E}};let F=0;try{({outputSize:F}=await Wt({readable:S,writable:C},W))}catch(e){if(!A||e.message!=_e)throw e}finally{const e=gr(r,n,"preventClose");C.size+=F,e||C.locked||await C.getWriter().close()}return A?J:e.getData?e.getData():C}};function mr(e,t,n){const r=e.rawBitFlag=yr(t,n+2),i=!(1&~r),s=_r(t,n+6);Object.assign(e,{encrypted:i,version:yr(t,n),bitFlag:{level:(6&r)>>1,dataDescriptor:!(8&~r),languageEncodingFlag:(r&Z)==Z},rawLastModDate:s,lastModDate:xr(s),filenameLength:yr(t,n+22),extraFieldLength:yr(t,n+24)})}function hr(e,t,n,r,i){const{rawExtraField:s}=t,a=t.extraField=new Map,o=Sr(new Uint8Array(s));let c=0;try{for(;c{t.zip64=!0;const n=Sr(e.data),r=lr.filter((([e,n])=>t[e]==n));for(let i=0,s=0;i{const r=Sr(e.data),i=vr(r,4);Object.assign(e,{vendorVersion:vr(r,0),vendorId:vr(r,2),strength:i,originalCompressionMethod:n,compressionMethod:yr(r,5)}),t.compressionMethod=e.compressionMethod})(p,t,l),t.extraFieldAES=p):t.compressionMethod=l;const m=a.get(10);m&&(((e,t)=>{const n=Sr(e.data);let r,i=4;try{for(;i{const r=Sr(e.data),i=vr(r,0),s=[],a=[];n?(1&~i||(s.push(Tn),a.push(On)),2&~i||(s.push(Rn),a.push("rawLastAccessDate")),4&~i||(s.push(Ln),a.push("rawCreationDate"))):5>e.data.length||(s.push(Tn),a.push(On));let o=1;s.forEach(((n,i)=>{if(e.data.length>=o+4){const s=_r(r,o);t[n]=e[n]=new Date(1e3*s);const c=a[i];e[c]=s}o+=4}))})(h,t,i),t.extraFieldExtendedTimestamp=h);const w=a.get(6534);w&&(t.extraFieldUSDZ=w)}function wr(e,t,n,r,i){const s=Sr(e.data),a=new fe;a.append(i[n]);const o=Sr(new Uint8Array(4));o.setUint32(0,a.get(),!0);const c=_r(s,1);Object.assign(e,{version:vr(s,0),[t]:An(e.data.subarray(5)),valid:!i.bitFlag.languageEncodingFlag&&c==_r(o,0)}),e.valid&&(r[t]=e[t],r[t+"UTF8"]=!0)}function gr(e,t,n){return t[n]===J?e.options[n]:t[n]}function xr(e){const t=(4294901760&e)>>16,n=65535&e;try{return new Date(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}function br(e){return new Date(Number(e/BigInt(1e4)-BigInt(116444736e5)))}function vr(e,t){return e.getUint8(t)}function yr(e,t){return e.getUint16(t,!0)}function _r(e,t){return e.getUint32(t,!0)}function kr(e,t){return Number(e.getBigUint64(t,!0))}function Sr(e){return new DataView(e.buffer)}const zr="File already exists",Ar="Zip file comment exceeds 64KB",Cr="File entry comment exceeds 64KB",Dr="File entry name exceeds 64KB",Ur="Version exceeds 65535",Er="The strength must equal 1, 2, or 3",Wr="Extra field type exceeds 65535",Fr="Extra field data exceeds 64KB",jr="Zip64 is not supported (make sure 'keepOrder' is set to 'true')",qr="Undefined uncompressed size",Tr=new Uint8Array([7,0,2,0,65,69,3,0,0]);let Or=0;const Rr=[];class Lr{constructor(e,t={}){const n=(e=yn(e)).availableSize!==J&&e.availableSize>0&&e.availableSize!==1/0&&e.maxSize!==J&&e.maxSize>0&&e.maxSize!==1/0;Object.assign(this,{writer:e,addSplitZipSignature:n,options:t,config:re(),files:new Map,filenames:new Set,offset:t.offset===J?e.writable.size:t.offset,pendingEntriesSize:0,pendingAddFileCalls:new Set,bufferedWrites:0})}async add(e="",t,n={}){const r=this,{pendingAddFileCalls:i,config:s}=r;let a;OrRr.push(e)));try{if(e=e.trim(),r.filenames.has(e))throw Error(zr);return r.filenames.add(e),a=(async(e,t,n,r)=>{t=t.trim(),r.directory&&!t.endsWith(K)?t+=K:r.directory=t.endsWith(K);const i=Br(e,r,"encodeText",pe);let s=i(t);if(s===J&&(s=pe(t)),Jr(s)>O)throw Error(Dr);const a=r.comment||"";let o=i(a);if(o===J&&(o=pe(a)),Jr(o)>O)throw Error(Cr);const c=Br(e,r,Zn,20);if(c>O)throw Error(Ur);const l=Br(e,r,Kn,20);if(l>O)throw Error(Ur);const d=Br(e,r,Tn,new Date),f=Br(e,r,Rn),u=Br(e,r,Ln),p=Br(e,r,Hn,!0);let m=Br(e,r,Mn,0);0===m&&(m=Br(e,r,In,0));let h=Br(e,r,Bn,0);0===h&&(h=Br(e,r,Pn,0));const w=Br(e,r,"passThrough");let g,x;w||(g=Br(e,r,"password"),x=Br(e,r,"rawPassword"));const b=Br(e,r,"encryptionStrength",3),v=Br(e,r,Gn),y=Br(e,r,"extendedTimestamp",!0),_=Br(e,r,"keepOrder",!0),k=Br(e,r,"level"),S=Br(e,r,"useWebWorkers"),z=Br(e,r,"bufferedWrite"),A=Br(e,r,"dataDescriptorSignature",!1),C=Br(e,r,"signal"),D=Br(e,r,"useUnicodeFileNames",!0),U=Br(e,r,"useCompressionStream"),E=Br(e,r,"compressionMethod");let W=Br(e,r,"dataDescriptor",!0),F=Br(e,r,Nn);if(!v&&(g!==J||x!==J)&&(1>b||b>3))throw Error(Er);let j=new Uint8Array;const{extraField:q}=r;if(q){let e=0,t=0;q.forEach((t=>e+=4+Jr(t))),j=new Uint8Array(e),q.forEach(((e,n)=>{if(n>O)throw Error(Wr);if(Jr(e)>O)throw Error(Fr);Gr(j,new Uint16Array([n]),t),Gr(j,new Uint16Array([Jr(e)]),t+2),Gr(j,e,t+4),t+=4+Jr(e)}))}let M=0,P=0,B=0;if(w&&(({uncompressedSize:B}=r),B===J))throw Error(qr);const H=!0===F;n&&(n=vn(n),await bn(n),w?M=Hr(B):n.size===J?(W=!0,(F||F===J)&&(F=!0,B=M=4294967296)):(B=n.size,M=Hr(B)));const{diskOffset:N,diskNumber:Y,maxSize:Q}=e.writer,$=H||B>T,ee=H||M>T,te=H||e.offset+e.pendingEntriesSize-N>T,ne=Br(e,r,"supportZip64SplitFile",!0)&&H||Y+Math.ceil(e.pendingEntriesSize/Q)>O;if(te||$||ee||ne){if(!1===F||!_)throw Error(jr);F=!0}F=F||!1;const re=Br(e,r,Vn),{signature:se}=r,ae=(e=>{const{rawFilename:t,lastModDate:n,lastAccessDate:r,creationDate:i,level:s,zip64:a,zipCrypto:o,useUnicodeFileNames:c,dataDescriptor:l,directory:d,rawExtraField:f,encryptionStrength:u,extendedTimestamp:p,encrypted:m}=e;let{version:h,compressionMethod:w}=e;const g=!d&&(s>0||s===J&&0!==w);let x,b,v,y;if(m&&!o){x=new Uint8Array(Jr(Tr)+2);const e=Xr(x);Vr(e,0,39169),Gr(x,Tr,2),Nr(e,8,u)}else x=new Uint8Array;if(p){v=new Uint8Array(9+(r?4:0)+(i?4:0));const e=Xr(v);Vr(e,0,V),Vr(e,2,Jr(v)-4),y=1+(r?2:0)+(i?4:0),Nr(e,4,y);let t=5;Zr(e,t,Math.floor(n.getTime()/1e3)),t+=4,r&&(Zr(e,t,Math.floor(r.getTime()/1e3)),t+=4),i&&Zr(e,t,Math.floor(i.getTime()/1e3));try{b=new Uint8Array(36);const e=Xr(b),t=Pr(n);Vr(e,0,10),Vr(e,2,32),Vr(e,8,1),Vr(e,10,24),Kr(e,12,t),Kr(e,20,Pr(r)||t),Kr(e,28,Pr(i)||t)}catch(e){b=new Uint8Array}}else b=v=new Uint8Array;let _=0;c&&(_|=Z),l&&(_|=8),w===J&&(w=g?8:0),8==w&&(s>=1&&3>s&&(_|=6),s>=3&&5>s&&(_|=1),9===s&&(_|=2)),a&&(h=h>45?h:45),m&&(_|=1,o||(h=h>51?h:51,x[9]=w,w=99));const k=new Uint8Array(26),S=Xr(k);Vr(S,0,h),Vr(S,2,_),Vr(S,4,w);const z=new Uint32Array(1),A=Xr(z);let C;C=X>n?X:n>G?G:n,Vr(A,0,(C.getHours()<<6|C.getMinutes())<<5|C.getSeconds()/2),Vr(A,2,(C.getFullYear()-1980<<4|C.getMonth()+1)<<5|C.getDate());const D=z[0];Zr(S,6,D),Vr(S,22,Jr(t));const U=Jr(x,v,b,f);Vr(S,24,U);const E=new Uint8Array(30+Jr(t)+U);return Zr(Xr(E),0,R),Gr(E,k,4),Gr(E,t,30),Gr(E,x,30+Jr(t)),Gr(E,v,30+Jr(t,x)),Gr(E,b,30+Jr(t,x,v)),Gr(E,f,30+Jr(t,x,v,b)),{localHeaderArray:E,headerArray:k,headerView:S,lastModDate:n,rawLastModDate:D,encrypted:m,compressed:g,version:h,compressionMethod:w,extraFieldExtendedTimestampFlag:y,rawExtraFieldExtendedTimestamp:v,rawExtraFieldNTFS:b,rawExtraFieldAES:x,extraFieldLength:U}})(r=Object.assign({},r,{rawFilename:s,rawComment:o,version:c,versionMadeBy:l,lastModDate:d,lastAccessDate:f,creationDate:u,rawExtraField:j,zip64:F,zip64UncompressedSize:$,zip64CompressedSize:ee,zip64Offset:te,zip64DiskNumberStart:ne,password:g,rawPassword:x,level:U||e.config.CompressionStream!==J||e.config.CompressionStreamNative!==J?k:0,useWebWorkers:S,encryptionStrength:b,extendedTimestamp:y,zipCrypto:v,bufferedWrite:z,keepOrder:_,useUnicodeFileNames:D,dataDescriptor:W,dataDescriptorSignature:A,signal:C,msDosCompatible:p,internalFileAttribute:m,internalFileAttributes:m,externalFileAttribute:h,externalFileAttributes:h,useCompressionStream:U,passThrough:w,encrypted:!!(g&&Jr(g)||x&&Jr(x))||w&&re,signature:se,compressionMethod:E})),oe=(e=>{const{zip64:t,dataDescriptor:n,dataDescriptorSignature:r}=e;let i,s=new Uint8Array,a=0;return n&&(s=new Uint8Array(t?r?24:20:r?16:12),i=Xr(s),r&&(a=4,Zr(i,0,I))),{dataDescriptorArray:s,dataDescriptorView:i,dataDescriptorOffset:a}})(r),ce=Jr(ae.localHeaderArray,oe.dataDescriptorArray);let le;P=ce+M,e.options.usdz&&(P+=P+64),e.pendingEntriesSize+=P;try{le=await(async(e,t,n,r,i)=>{const{files:s,writer:a}=e,{keepOrder:o,dataDescriptor:c,signal:l}=i,{headerInfo:d}=r,{usdz:f}=e.options,u=Array.from(s.values()).pop();let p,m,h,w,g,x,b,v={};s.set(t,v);try{let d;o&&(d=u&&u.lock,v.lock=new Promise((e=>h=e))),!(i.bufferedWrite||e.writerLocked||e.bufferedWrites&&o)&&c||f?(x=a,await y()):(x=new TransformStream,b=new Response(x.readable).blob(),x.writable.size=0,p=!0,e.bufferedWrites++,await bn(a)),await bn(x);const{writable:m}=a;let{diskOffset:k}=a;if(e.addSplitZipSignature){delete e.addSplitZipSignature;const t=new Uint8Array(4);Zr(Xr(t),0,L),await Mr(m,t),e.offset+=4}f&&((e,t)=>{const{headerInfo:n}=e;let{localHeaderArray:r,extraFieldLength:i}=n,s=Xr(r),a=64-(t+Jr(r))%64;4>a&&(a+=64);const o=new Uint8Array(a),c=Xr(o);Vr(c,0,6534),Vr(c,2,a-2);const l=r;n.localHeaderArray=r=new Uint8Array(Jr(l)+a),Gr(r,l),Gr(r,o,Jr(l)),s=Xr(r),Vr(s,28,i+a),e.metadataSize+=a})(r,e.offset-k),p||(await d,await _(m));const{diskNumber:S}=a;if(g=!0,v.diskNumberStart=S,v=await(async(e,t,{diskNumberStart:n,lock:r},i,s,a)=>{const{headerInfo:o,dataDescriptorInfo:c,metadataSize:l}=i,{localHeaderArray:d,headerArray:f,lastModDate:u,rawLastModDate:p,encrypted:m,compressed:h,version:w,compressionMethod:g,rawExtraFieldExtendedTimestamp:x,extraFieldExtendedTimestampFlag:b,rawExtraFieldNTFS:v,rawExtraFieldAES:y}=o,{dataDescriptorArray:_}=c,{rawFilename:k,lastAccessDate:S,creationDate:z,password:A,rawPassword:C,level:D,zip64:U,zip64UncompressedSize:E,zip64CompressedSize:W,zip64Offset:F,zip64DiskNumberStart:j,zipCrypto:q,dataDescriptor:O,directory:R,versionMadeBy:L,rawComment:I,rawExtraField:M,useWebWorkers:P,onstart:B,onprogress:H,onend:N,signal:V,encryptionStrength:Z,extendedTimestamp:K,msDosCompatible:G,internalFileAttributes:X,externalFileAttributes:Y,useCompressionStream:Q,passThrough:$}=a,ee={lock:r,versionMadeBy:L,zip64:U,directory:!!R,filenameUTF8:!0,rawFilename:k,commentUTF8:!0,rawComment:I,rawExtraFieldExtendedTimestamp:x,rawExtraFieldNTFS:v,rawExtraFieldAES:y,rawExtraField:M,extendedTimestamp:K,msDosCompatible:G,internalFileAttributes:X,externalFileAttributes:Y,diskNumberStart:n};let{signature:te,uncompressedSize:ne}=a,re=0;$||(ne=0);const{writable:se}=t;if(e){e.chunkSize=ie(s),await Mr(se,d);const t=e.readable,n=t.size=e.size,r={options:{codecType:ht,level:D,rawPassword:C,password:A,encryptionStrength:Z,zipCrypto:m&&q,passwordVerification:m&&q&&p>>8&255,signed:!$,compressed:h&&!$,encrypted:m&&!$,useWebWorkers:P,useCompressionStream:Q,transferStreams:!1},config:s,streamOptions:{signal:V,size:n,onstart:B,onprogress:H,onend:N}},i=await Wt({readable:t,writable:se},r);re=i.outputSize,$||(ne=i.inputSize,te=i.signature),se.size+=ne}else await Mr(se,d);let ae;if(U){let e=4;E&&(e+=8),W&&(e+=8),F&&(e+=8),j&&(e+=4),ae=new Uint8Array(e)}else ae=new Uint8Array;return((e,t)=>{const{signature:n,rawExtraFieldZip64:r,compressedSize:i,uncompressedSize:s,headerInfo:a,dataDescriptorInfo:o}=e,{headerView:c,encrypted:l}=a,{dataDescriptorView:d,dataDescriptorOffset:f}=o,{zip64:u,zip64UncompressedSize:p,zip64CompressedSize:m,zipCrypto:h,dataDescriptor:w}=t;if(l&&!h||n===J||(Zr(c,10,n),w&&Zr(d,f,n)),u){const e=Xr(r);Vr(e,0,1),Vr(e,2,Jr(r)-4);let t=4;p&&(Zr(c,18,T),Kr(e,t,BigInt(s)),t+=8),m&&(Zr(c,14,T),Kr(e,t,BigInt(i))),w&&(Kr(d,f+4,BigInt(i)),Kr(d,f+12,BigInt(s)))}else Zr(c,14,i),Zr(c,18,s),w&&(Zr(d,f+4,i),Zr(d,f+8,s))})({signature:te,rawExtraFieldZip64:ae,compressedSize:re,uncompressedSize:ne,headerInfo:o,dataDescriptorInfo:c},a),O&&await Mr(se,_),Object.assign(ee,{uncompressedSize:ne,compressedSize:re,lastModDate:u,rawLastModDate:p,creationDate:z,lastAccessDate:S,encrypted:m,zipCrypto:q,size:l+re,compressionMethod:g,version:w,headerArray:f,signature:te,rawExtraFieldZip64:ae,extraFieldExtendedTimestampFlag:b,zip64UncompressedSize:E,zip64CompressedSize:W,zip64Offset:F,zip64DiskNumberStart:j}),ee})(n,x,v,r,e.config,i),g=!1,s.set(t,v),v.filename=t,p){await x.writable.getWriter().close();let e=await b;await d,await y(),w=!0,c||(e=await(async(e,t,n,{zipCrypto:r})=>{let i;i=await t.slice(0,26).arrayBuffer(),26!=i.byteLength&&(i=i.slice(0,26));const s=new DataView(i);return e.encrypted&&!r||Zr(s,14,e.signature),e.zip64?(Zr(s,18,T),Zr(s,22,T)):(Zr(s,18,e.compressedSize),Zr(s,22,e.uncompressedSize)),await Mr(n,new Uint8Array(i)),t.slice(i.byteLength)})(v,e,m,i)),await _(m),v.diskNumberStart=a.diskNumber,k=a.diskOffset,await e.stream().pipeTo(m,{preventClose:!0,preventAbort:!0,signal:l}),m.size+=e.size,w=!1}if(v.offset=e.offset-k,v.zip64)((e,t)=>{const{rawExtraFieldZip64:n,offset:r,diskNumberStart:i}=e,{zip64UncompressedSize:s,zip64CompressedSize:a,zip64Offset:o,zip64DiskNumberStart:c}=t,l=Xr(n);let d=4;s&&(d+=8),a&&(d+=8),o&&(Kr(l,d,BigInt(r)),d+=8),c&&Zr(l,d,i)})(v,i);else if(v.offset>T)throw Error(jr);return e.offset+=v.size,v}catch(n){if(p&&w||!p&&g){if(e.hasCorruptedEntries=!0,n)try{n.corruptedEntry=!0}catch(e){}p?e.offset+=x.writable.size:e.offset=x.writable.size}throw s.delete(t),n}finally{p&&e.bufferedWrites--,h&&h(),m&&m()}async function y(){e.writerLocked=!0;const{lockWriter:t}=e;e.lockWriter=new Promise((t=>m=()=>{e.writerLocked=!1,t()})),await t}async function _(e){Jr(d.localHeaderArray)>a.availableSize&&(a.availableSize=0,await Mr(e,new Uint8Array))}})(e,t,n,{headerInfo:ae,dataDescriptorInfo:oe,metadataSize:ce},r)}finally{e.pendingEntriesSize-=P}return Object.assign(le,{name:t,comment:a,extraField:q}),new Jn(le)})(r,e,t,n),i.add(a),await a}catch(t){throw r.filenames.delete(e),t}finally{i.delete(a);const e=Rr.shift();e?e():Or--}}async close(e=new Uint8Array,t={}){const{pendingAddFileCalls:n,writer:r}=this,{writable:i}=r;for(;n.size;)await Promise.allSettled(Array.from(n));return await(async(e,t,n)=>{const{files:r,writer:i}=e,{diskOffset:s,writable:a}=i;let{diskNumber:o}=i,c=0,l=0,d=e.offset-s,f=r.size;for(const[,e]of r){const{rawFilename:t,rawExtraFieldZip64:n,rawExtraFieldAES:r,rawComment:i,rawExtraFieldNTFS:s,rawExtraField:a,extendedTimestamp:o,extraFieldExtendedTimestampFlag:c,lastModDate:d}=e;let f;if(o){f=new Uint8Array(9);const e=Xr(f);Vr(e,0,V),Vr(e,2,5),Nr(e,4,c),Zr(e,5,Math.floor(d.getTime()/1e3))}else f=new Uint8Array;e.rawExtraFieldCDExtendedTimestamp=f,l+=46+Jr(t,i,n,r,s,f,a)}const u=new Uint8Array(l),p=Xr(u);await bn(i);let m=0;for(const[e,t]of Array.from(r.values()).entries()){const{offset:s,rawFilename:o,rawExtraFieldZip64:l,rawExtraFieldAES:d,rawExtraFieldCDExtendedTimestamp:f,rawExtraFieldNTFS:h,rawExtraField:w,rawComment:g,versionMadeBy:x,headerArray:b,directory:v,zip64:y,zip64UncompressedSize:_,zip64CompressedSize:k,zip64DiskNumberStart:S,zip64Offset:z,msDosCompatible:A,internalFileAttributes:C,externalFileAttributes:D,diskNumberStart:U,uncompressedSize:E,compressedSize:W}=t,F=Jr(l,d,f,h,w);Zr(p,c,M),Vr(p,c+4,x);const j=Xr(b);_||Zr(j,18,E),k||Zr(j,14,W),Gr(u,b,c+6),Vr(p,c+30,F),Vr(p,c+32,Jr(g)),Vr(p,c+34,y&&S?O:U),Vr(p,c+36,C),D?Zr(p,c+38,D):v&&A&&Nr(p,c+38,16),Zr(p,c+42,y&&z?T:s),Gr(u,o,c+46),Gr(u,l,c+46+Jr(o)),Gr(u,d,c+46+Jr(o,l)),Gr(u,f,c+46+Jr(o,l,d)),Gr(u,h,c+46+Jr(o,l,d,f)),Gr(u,w,c+46+Jr(o,l,d,f,h)),Gr(u,g,c+46+Jr(o)+F);const q=46+Jr(o,g)+F;if(c-m>i.availableSize&&(i.availableSize=0,await Mr(a,u.slice(m,c)),m=c),c+=q,n.onprogress)try{await n.onprogress(e+1,r.size,new Jn(t))}catch(e){}}await Mr(a,m?u.slice(m):u);let h=i.diskNumber;const{availableSize:w}=i;N>w&&h++;let g=Br(e,n,Nn);if(d>T||l>T||f>O||h>O){if(!1===g)throw Error(jr);g=!0}const x=new Uint8Array(g?98:N),b=Xr(x);c=0,g&&(Zr(b,0,B),Kr(b,4,BigInt(44)),Vr(b,12,45),Vr(b,14,45),Zr(b,16,h),Zr(b,20,o),Kr(b,24,BigInt(f)),Kr(b,32,BigInt(f)),Kr(b,40,BigInt(l)),Kr(b,48,BigInt(d)),Zr(b,56,H),Kr(b,64,BigInt(d)+BigInt(l)),Zr(b,72,h+1),Br(e,n,"supportZip64SplitFile",!0)&&(h=O,o=O),f=O,d=T,l=T,c+=76),Zr(b,c,P),Vr(b,c+4,h),Vr(b,c+6,o),Vr(b,c+8,f),Vr(b,c+10,f),Zr(b,c+12,l),Zr(b,c+16,d);const v=Jr(t);if(v){if(v>O)throw Error(Ar);Vr(b,c+20,v)}await Mr(a,x),v&&await Mr(a,t)})(this,e,t),Br(this,t,"preventClose")||await i.getWriter().close(),r.getData?r.getData():i}}class Ir{constructor(e={}){const{readable:t,writable:n}=new TransformStream;this.readable=t,this.zipWriter=new Lr(n,e)}transform(e){const{readable:t,writable:n}=new TransformStream({flush:()=>{this.zipWriter.close()}});return this.zipWriter.add(e,t),{readable:this.readable,writable:n}}writable(e){const{readable:t,writable:n}=new TransformStream;return this.zipWriter.add(e,t),n}close(e,t={}){return this.zipWriter.close(e,t)}}async function Mr(e,t){const n=e.getWriter();try{await n.ready,e.size+=Jr(t),await n.write(t)}finally{n.releaseLock()}}function Pr(e){if(e)return(BigInt(e.getTime())+BigInt(116444736e5))*BigInt(1e4)}function Br(e,t,n,r){const i=t[n]===J?e.options[n]:t[n];return i===J?r:i}function Hr(e){return e+5*(Math.floor(e/16383)+1)}function Nr(e,t,n){e.setUint8(t,n)}function Vr(e,t,n){e.setUint16(t,n,!0)}function Zr(e,t,n){e.setUint32(t,n,!0)}function Kr(e,t,n){e.setBigUint64(t,n,!0)}function Gr(e,t,n){e.set(t,n)}function Xr(e){return new DataView(e.buffer)}function Jr(...e){let t=0;return e.forEach((e=>e&&(t+=e.length))),t}class Yr{constructor(e,t,n,r){const i=this;if(e.root&&r&&r.getChildByName(t))throw Error("Entry filename already exists");n||(n={}),Object.assign(i,{fs:e,name:t,data:n.data,options:n.options,id:e.entries.length,parent:r,children:[],uncompressedSize:n.uncompressedSize||0,passThrough:n.passThrough}),e.entries.push(i),r&&i.parent.children.push(i)}moveTo(e){this.fs.move(this,e)}getFullname(){return this.getRelativeName()}getRelativeName(e=this.fs.root){let t=this.name,n=this.parent;for(;n&&n!=e;)t=(n.name?n.name+"/":"")+t,n=n.parent;return t}isDescendantOf(e){let t=this.parent;for(;t&&t.id!=e.id;)t=t.parent;return!!t}rename(e){const t=this.parent;if(t&&t.getChildByName(e))throw Error("Entry filename already exists");this.name=e}}class Qr extends Yr{constructor(e,t,n,r){super(e,t,n,r);const i=this;i.Reader=n.Reader,i.Writer=n.Writer,n.getData&&(i.getData=n.getData)}clone(){return new Qr(this.fs,this.name,this)}async getData(e,t={}){const n=this;if(!e||e.constructor==n.Writer&&n.data)return n.data;{const r=n.reader=new n.Reader(n.data,t),i=n.data?n.data.uncompressedSize:r.size;await Promise.all([bn(r),bn(e,i)]);const s=r.readable;return s.size=n.uncompressedSize=r.size,await s.pipeTo(e.writable),e.getData?e.getData():e.writable}}isPasswordProtected(){return this.data.encrypted}async checkPassword(e,t={}){const n=this;if(!n.isPasswordProtected())return!0;t.password=e,t.checkPasswordOnly=!0;try{return await n.data.getData(null,t),!0}catch(e){if(e.message==ve)return!1;throw e}}getText(e,t){return this.getData(new Qt(e),t)}getBlob(e,t){return this.getData(new Jt(e),t)}getData64URI(e,t){return this.getData(new Gt(e),t)}getUint8Array(e){return this.getData(new wn,e)}getWritable(e=new WritableStream,t){return this.getData({writable:e},t)}replaceBlob(e){Object.assign(this,{data:e,Reader:Xt,Writer:Jt,reader:null})}replaceText(e){Object.assign(this,{data:e,Reader:Yt,Writer:Qt,reader:null})}replaceData64URI(e){Object.assign(this,{data:e,Reader:Kt,Writer:Gt,reader:null})}replaceUint8Array(e){Object.assign(this,{data:e,Reader:hn,Writer:wn,reader:null})}replaceReadable(e){Object.assign(this,{data:null,Reader:()=>({readable:e}),Writer:null,reader:null})}}class $r extends Yr{constructor(e,t,n,r){super(e,t,n,r),this.directory=!0}clone(e){const t=this,n=new $r(t.fs,t.name);return e&&(n.children=t.children.map((t=>{const r=t.clone(e);return r.parent=n,r}))),n}addDirectory(e,t){return oi(this,e,{options:t},!0)}addText(e,t,n={}){return oi(this,e,{data:t,Reader:Yt,Writer:Qt,options:n,uncompressedSize:t.length})}addBlob(e,t,n={}){return oi(this,e,{data:t,Reader:Xt,Writer:Jt,options:n,uncompressedSize:t.size})}addData64URI(e,t,n={}){let r=t.length;for(;"="==t.charAt(r-1);)r--;const i=t.indexOf(",")+1;return oi(this,e,{data:t,Reader:Kt,Writer:Gt,options:n,uncompressedSize:Math.floor(.75*(r-i))})}addUint8Array(e,t,n={}){return oi(this,e,{data:t,Reader:hn,Writer:wn,options:n,uncompressedSize:t.length})}addHttpContent(e,t,n={}){return oi(this,e,{data:t,Reader:class extends pn{constructor(e){super(e,n)}},options:n})}addReadable(e,t,n={}){return oi(this,e,{Reader:()=>({readable:t}),options:n})}addFileSystemEntry(e,t={}){return ii(this,e,t)}addFileSystemHandle(e,t={}){return ii(this,e,t)}addFile(e,t={}){return t.lastModDate||(t.lastModDate=new Date(e.lastModified)),oi(this,e.name,{data:e,Reader:()=>({readable:e.stream(),size:e.size}),options:t,uncompressedSize:e.size})}addData(e,t){return oi(this,e,t)}importBlob(e,t){return this.importZip(new Xt(e),t)}importData64URI(e,t){return this.importZip(new Kt(e),t)}importUint8Array(e,t){return this.importZip(new hn(e),t)}importHttpContent(e,t){return this.importZip(new pn(e,t),t)}importReadable(e,t){return this.importZip({readable:e},t)}exportBlob(e={}){return this.exportZip(new Jt(e.mimeType||"application/zip"),e)}exportData64URI(e={}){return this.exportZip(new Gt(e.mimeType||"application/zip"),e)}exportUint8Array(e={}){return this.exportZip(new wn,e)}async exportWritable(e=new WritableStream,t={}){return await this.exportZip({writable:e},t),e}async importZip(e,t={}){await bn(e);const n=new fr(e,t),r=[],i=await n.getEntries();for(const e of i){let n=this;try{const i=e.filename.split("/"),s=i.pop();i.forEach(((t,s)=>{const a=n;n=n.getChildByName(t),n||(n=new $r(this.fs,t,{data:s==i.length-1?e:null},a),r.push(n))})),e.directory||r.push(oi(n,s,{data:e,Reader:ti(Object.assign({},t)),uncompressedSize:e.uncompressedSize,passThrough:t.passThrough}))}catch(t){try{t.cause={entry:e}}catch(e){}throw t}}return r}async exportZip(e,t){const n=this;t.bufferedWrite===J&&(t.bufferedWrite=!0),await Promise.all([ni(n,t.readerOptions),bn(e)]);const r=new Lr(e,t);return await(async(e,t,n,r)=>{const i=t,s=new Map;await async function e(t,a){async function o(a){const o=r.relativePath?a.getRelativeName(i):a.getFullname(),c=a.options||{};let l={};if(a.data instanceof Jn){const{externalFileAttributes:e,versionMadeBy:t,comment:n,lastModDate:r,creationDate:i,lastAccessDate:s,uncompressedSize:o,encrypted:c,zipCrypto:d,signature:f,compressionMethod:u,extraFieldAES:p}=a.data;if(l={externalFileAttributes:e,versionMadeBy:t,comment:n,lastModDate:r,creationDate:i,lastAccessDate:s},a.passThrough){let e,t;0===u&&(e=0),p&&(t=p.strength),l=Object.assign(l,{passThrough:!0,encrypted:c,zipCrypto:d,signature:f,uncompressedSize:o,level:e,encryptionStrength:t,compressionMethod:u})}}await t.add(o,a.reader,Object.assign({directory:a.directory},Object.assign({},r,l,c,{onprogress:async e=>{if(r.onprogress){s.set(o,e);try{await r.onprogress(Array.from(s.values()).reduce(((e,t)=>e+t)),n)}catch(e){}}}}))),await e(t,a)}await(async()=>{if(r.bufferedWrite)await Promise.allSettled(a.children.map(o));else for(const e of a.children)await o(e)})()}(e,t)})(r,n,(e=>{let t=0;return e.forEach((function e(n){t+=n.uncompressedSize,n.children&&n.children.forEach(e)})),t})([n]),t),await r.close(),e.getData?e.getData():e.writable}getChildByName(e){const t=this.children;for(let n=0;nn.checkPassword(e,t))))).includes(!1)}}const ei={FS:class{constructor(){ai(this)}get children(){return this.root.children}remove(e){ri(e),this.entries[e.id]=null}move(e,t){if(e==this.root)throw Error("Root directory cannot be moved");if(!t.directory)throw Error("Target entry is not a directory");if(t.isDescendantOf(e))throw Error("Entry is a ancestor of target entry");if(e!=t){if(t.getChildByName(e.name))throw Error("Entry filename already exists");ri(e),e.parent=t,t.children.push(e)}}find(e){const t=e.split("/");let n=this.root;for(let e=0;n&&e{if(e.directory)await ni(e,t);else{const n=e.reader=new e.Reader(e.data,t);try{await bn(n)}catch(t){try{t.entryId=e.id,t.cause={entry:e}}catch(e){}throw t}e.uncompressedSize=n.size}})))}function ri(e){if(e.parent){const t=e.parent.children;t.forEach(((n,r)=>{n.id==e.id&&t.splice(r,1)}))}}function ii(e,t,n){return async function e(t,r,i){if(r)try{if((r.isFile||r.isDirectory)&&(r=await si(r)),"file"==r.kind){const e=await r.getFile();i.push(t.addData(e.name,{Reader:()=>({readable:e.stream(),size:e.size}),options:Object.assign({},{lastModDate:new Date(e.lastModified)},n),uncompressedSize:e.size}))}else if("directory"==r.kind){const n=t.addDirectory(r.name);i.push(n);for await(const t of r.values())await e(n,t,i)}}catch(e){const t=e.message+(r?" ("+r.name+")":"");throw Error(t)}return i}(e,t,[])}async function si(e){const t={name:e.name};if(e.isFile&&(t.kind="file",t.getFile=()=>new Promise(((t,n)=>e.file(t,n)))),e.isDirectory){t.kind="directory";const n=await(async e=>{const t=[];function n(e,r,i){e.readEntries((async s=>{if(s.length){for(const e of s)t.push(await si(e));n(e,r,i)}else r(t)}),i)}return await new Promise(((t,r)=>n(e.createReader(),t,r))),{[Symbol.iterator](){let e=0;return{next(){const n={value:t[e],done:e===t.length};return e++,n}}}}})(e);t.values=()=>n}return t}function ai(e){e.entries=[],e.root=new $r(e)}function oi(e,t,n,r){if(e.directory)return r?new $r(e.fs,t,n,e):new Qr(e.fs,t,n,e);throw Error("Parent entry is not a directory")}let ci;try{ci=import.meta.url}catch(e){}se({baseURL:ci}),((e,t={})=>{const n='const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self,k=void 0,v="undefined",S="function";class z{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const C=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;C[e]=t}class x{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^C[255&(t^e[n])];this.t=t}get(){return~this.t}}class A extends p{constructor(){let e;const t=new x;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const _={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=_.i(n);return 32===r?e.concat(t):_.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+_.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=_.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=_.i(s);return r.push(_.h(t+i&31,t+i>32?n:r.pop(),1)),r}},I={bytes:{p(e){const t=_.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)3&s||(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},m(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}P(){const e=this;let t=e.C;const n=e.S;t=_.concat(t,[_.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e.A/4294967296)),t.push(0|e.A);t.length;)e.I(t.splice(0,16));return e.reset(),n}D(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}V(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.V(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.V(5,o)+n.D(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.V(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},D={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew V.R(I.bytes.m(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=_;for(t=I.bytes.m(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).P());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.U[0].update(r[0]),t.U[1].update(r[1]),t.K=new n(t.U[0])}reset(){const e=this;e.K=new e.M(e.U[0]),e.N=!1}update(e){this.N=!0,this.K.update(e)}digest(){const e=this,t=e.K.P(),n=new e.M(e.U[1]).update(t).P();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},R=typeof h!=v&&typeof h.getRandomValues==S,B="Invalid password",E="Invalid signature",M="zipjs-abort-check-password";function U(e){return R?h.getRandomValues(e):D.getRandomValues(e)}const K=16,N={name:"PBKDF2"},O=t.assign({hash:{name:"HMAC"}},N),T=t.assign({iterations:1e3,hash:{name:"SHA-1"}},N),W=["deriveBits"],j=[8,12,16],H=[16,24,32],L=10,F=[0,0,0,0],q=typeof h!=v,G=q&&h.subtle,J=q&&typeof G!=v,Q=I.bytes,X=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},Y=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255&~(e>>24))e+=1<<24;else{let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=_.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return _.u(t,s)}},Z=V.R;let $=q&&J&&typeof G.importKey==S,ee=q&&J&&typeof G.deriveBits==S;class te extends p{constructor({password:e,rawPassword:n,signed:r,encryptionStrength:o,checkPasswordOnly:c}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),signed:r,X:o-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:o,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await se(e,t,n,ce(r,0,j[t])),o=ce(r,j[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(B)})(n,o,r,ce(e,0,j[o]+2)),e=ce(e,j[o]+2),c?t.error(new s(M)):f()):await a;const l=new i(e.length-L-(e.length-L)%K);t.enqueue(re(n,e,l,0,L,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;if(r&&n){await c;const f=ce(o,0,o.length-L),a=ce(o,o.length-L);let l=new i;if(f.length){const e=ae(Q,f);r.update(e);const t=n.update(e);l=fe(Q,t)}if(t){const e=ce(fe(Q,r.digest()),0,L);for(let t=0;L>t;t++)if(e[t]!=a[t])throw new s(E)}e.enqueue(l)}}})}}class ne extends p{constructor({password:e,rawPassword:n,encryptionStrength:r}){let s;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:ie(e,n),X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=U(new i(j[t]));return oe(r,await se(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%K);a.set(f,0),t.enqueue(re(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:r,ready:o}=this;if(n&&t){await o;let c=new i;if(r.length){const e=t.update(ae(Q,r));n.update(e),c=fe(Q,e)}s.signature=fe(Q,n.digest()).slice(0,L),e.enqueue(oe(c,s.signature))}}}),s=this}}function re(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=oe(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%K)),u=0;l-K>=u;u+=K){const e=ae(Q,ce(t,u,u+K));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(fe(Q,s),u+r)}return e.pending=ce(t,u),n}async function se(n,r,s,o){n.password=null;const c=await(async(e,t,n,r,s)=>{if(!$)return V.importKey(t);try{return await G.importKey("raw",t,n,!1,s)}catch(e){return $=!1,V.importKey(t)}})(0,s,O,0,W),f=await(async(e,t,n)=>{if(!ee)return V.B(t,e.salt,T.iterations,n);try{return await G.deriveBits(e,t,n)}catch(r){return ee=!1,V.B(t,e.salt,T.iterations,n)}})(t.assign({salt:o},T),c,8*(2*H[r]+2)),a=new i(f),l=ae(Q,ce(a,0,H[r])),u=ae(Q,ce(a,H[r],2*H[r])),w=ce(a,2*H[r]);return t.assign(n,{keys:{key:l,$:u,passwordVerification:w},Y:new Y(new X(l),e.from(F)),Z:new Z(u)}),w}function ie(e,t){return t===k?(e=>{if(typeof w==v){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n>>24]),i=~e.te.get(),e.keys=[n,s,i]}function ye(e){const t=2|e.keys[2];return me(r.imul(t,1^t)>>>8)}function me(e){return 255&e}function be(e){return 4294967295&e}const ge="deflate-raw";class ke extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=Se(super.readable);i&&!c||!f||(w=new A,d=xe(d,w)),s&&(d=Ce(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=xe(d,new ue(e)):(h=new ne(e),d=xe(d,h))),ze(u,d,(()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ve extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=Se(super.readable);o&&(i?d=xe(d,new le(e)):(h=new te(e),d=xe(d,h))),a&&(d=Ce(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new A,d=xe(d,w)),ze(this,d,(()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(E)}}))}}function Se(e){return xe(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ze(e,n,r){n=xe(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Ce(e,t,n,r,s){try{e=xe(e,new(t&&r?r:s)(ge,n))}catch(r){if(!t)return e;try{e=xe(e,new s(ge,n))}catch(t){return e}}return e}function xe(e,t){return e.pipeThrough(t)}const Ae="data",_e="close";class Ie extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=ke:s.startsWith("inflate")&&(i=ve);let o=0,c=0;const f=new i(e,n),a=super.readable,l=new p({transform(e,t){e&&e.length&&(c+=e.length,t.enqueue(e))},flush(){t.assign(r,{inputSize:c})}}),u=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=f;t.assign(r,{signature:e,outputSize:o,inputSize:c})}});t.defineProperty(r,"readable",{get:()=>a.pipeThrough(l).pipeThrough(f).pipeThrough(u)})}}class Pe extends p{constructor(e){let t;super({transform:function n(r,s){if(t){const e=new i(t.length+r.length);e.set(t),e.set(r,t.length),r=e,t=null}r.length>e?(s.enqueue(r.slice(0,e)),n(r.slice(e),s)):t=r},flush(e){t&&t.length&&e.enqueue(t)}})}}const De=new a,Ve=new a;let Re,Be=0,Ee=!0;async function Me(e){try{const{options:t,scripts:r,config:s}=e;if(r&&r.length)try{Ee?importScripts.apply(k,r):await Ue(r)}catch(e){Ee=!1,await Ue(r)}self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new z(self.Deflate)),self.Inflate&&(s.DecompressionStream=new z(self.Inflate));const i={highWaterMark:1},o=e.readable||new y({async pull(e){const t=new u((e=>De.set(Be,e)));Ke({type:"pull",messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ve.set(Be,t),Ke({type:Ae,value:e,messageId:Be}),Be=(Be+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new Ie(t,s);Re=new AbortController;const{signal:a}=Re;await o.pipeThrough(f).pipeThrough(new Pe(s.chunkSize)).pipeTo(c,{signal:a,preventClose:!0,preventAbort:!0}),await c.getWriter().close();const{signature:l,inputSize:w,outputSize:h}=f;Ke({type:_e,result:{signature:l,inputSize:w,outputSize:h}})}catch(e){Ne(e)}}async function Ue(e){for(const t of e)await import(t)}function Ke(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Ne(e=new s("Unknown error")){const{message:t,stack:n,code:r,name:i}=e;d({error:{message:t,stack:n,code:r,name:i}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&Me(e),t==Ae){const e=De.get(n);De.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ve.get(n);Ve.delete(n),e()}t==_e&&Re.abort()}catch(e){Ne(e)}}));const Oe=-2;function Te(t){return We(t.map((([t,n])=>new e(t).fill(n,0,t))))}function We(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?We(n):n)),[])}const je=[0,1,2,3].concat(...Te([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function He(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Le(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}He.ge=[0,1,2,3,4,5,6,7].concat(...Te([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),He.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],He.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],He.Se=e=>256>e?je[e]:je[256+(e>>>7)],He.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],He.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],He.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],He.Ae=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Fe=Te([[144,8],[112,9],[24,7],[8,8]]);Le._e=We([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Fe[t]])));const qe=Te([[30,5]]);function Ge(e,t,n,r,s){const i=this;i.Ie=e,i.Pe=t,i.De=n,i.Ve=r,i.Re=s}Le.Be=We([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,qe[t]]))),Le.Ee=new Le(Le._e,He.ze,257,286,15),Le.Me=new Le(Le.Be,He.Ce,0,30,15),Le.Ue=new Le(null,He.xe,0,19,7);const Je=[new Ge(0,0,0,0,0),new Ge(4,4,8,4,1),new Ge(4,5,16,8,1),new Ge(4,6,32,32,1),new Ge(4,4,16,16,2),new Ge(8,16,32,32,2),new Ge(8,16,128,128,2),new Ge(8,32,128,256,2),new Ge(32,128,258,1024,2),new Ge(32,258,258,4096,2)],Qe=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],Xe=113,Ye=666,Ze=262;function $e(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function et(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,A,_,I,P,D,V,R,B,E,M,U;const K=new He,N=new He,O=new He;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)U[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?U[2*n]+=i:0!==n?(n!=r&&U[2*n]++,U[32]++):i>10?U[36]++:U[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ke[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,U)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,U),o--),Y(16,U),X(o-3,2)):o>10?(Y(18,U),X(o-11,7)):(Y(17,U),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(He.ge[n]+256+1)]++,M[2*He.Se(t)]++),!(8191&W)&&D>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+He.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ke.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;D>0?(K.ne(e),N.ne(e),o=(()=>{let t;for(G(E,K.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===U[2*He.Ae[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Le._e,Le.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(U[2*He.Ae[r]+1],3);Z(E,e-1),Z(M,t-1)})(K.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-A-C,0===s&&0===C&&0===A)s=f;else if(-1==s)s--;else if(C>=f+f-Ze){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+A,s),A+=e,3>A||(p=255&u[C],p=(p<A&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=_;const o=C>f-Ze?C-(f-Ze):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>_||(r>>=2),c>A&&(c=A);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>A?A:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],U=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Oe:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=Xe,c=0,K.re=E,K.ie=Le.Ee,N.re=M,N.ie=Le.Me,O.re=U,O.ie=Le.Ue,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve,C=0,k=0,A=0,v=_=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=Xe&&n!=Ye?Oe:(e.Oe=null,e.Ne=null,e.Ke=null,d=null,h=null,u=null,e.Fe=null,n==Xe?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Oe:(Je[D].Re!=Je[t].Re&&0!==e.qe&&(r=e.Ye(1)),D!=t&&(D=t,P=Je[D].Pe,R=Je[D].Ie,B=Je[D].De,I=Je[D].Ve),V=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Oe;if(3>i)return 0;for(i>f-Ze&&(i=f-Ze,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Oe;if(!r.$e||!r.et&&0!==r.We||n==Ye&&4!=i)return r.Le=Qe[4],Oe;if(0===r.tt)return r.Le=Qe[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(D-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=Xe,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=Qe[7],-5;if(n==Ye&&0!==t.We)return r.Le=Qe[7],-5;if(0!==t.We||0!==A||0!=i&&n!=Ye){switch(R=-1,Je[D].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=A){if(ie(),0===A&&0==e)return 0;if(0===A)break}if(C+=A,A=0,n=k+r,(0===C||C>=n)&&(A=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Ze&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<f-Ze||2!=V&&(v=oe(r)),3>v)n=ee(0,255&u[C]),A--,C++;else if(n=ee(C-x,v-3),A-=v,v>P||3>A)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Ze>A){if(ie(),Ze>A&&0==e)return 0;if(0===A)break}if(3>A||(p=(p<_&&f-Ze>=(C-s&65535)&&(2!=V&&(v=oe(s)),5>=v&&(1==V||3==v&&C-x>4096)&&(v=2)),3>_||v>_)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,A--,0===t.tt)return 0}else z=1,C++,A--;else{r=C+A-3,n=ee(C-1-S,_-3),A-=_-1,_-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Le._e),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function tt(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function nt(e){const t=new tt,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}tt.prototype={He(e,t){const n=this;return n.Fe=new et,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Oe},Qe(){const e=this;if(!e.Fe)return Oe;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Oe},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Oe},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ke.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const rt=-2,st=-3,it=-5,ot=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],ct=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],ft=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],at=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],lt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],ut=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],wt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ht(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,A,_,I,P;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return st;if(0>(I-=n[g]))return st;for(n[g]+=I,i[1]=k=0,C=1,_=2;0!=--g;)i[_]=k+=n[C],_++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>A+S;){if(b++,A+=S,P=m-A,P=P>S?S:P,(y=1<<(k=v-A))>p+1&&(y-=p+1,_=v,P>k))for(;++kn[++_];)y-=n[_];if(P=1<1440)return st;s[b]=x=h[0],h[0]+=P,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>A-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-A,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>A;P>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<c;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==st?f.Le="oversubscribed dynamic bit lengths tree":a!=it&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=st),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,at,lt,a,i,u,e,t),0!=h||0===i[0]?(h==st?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=st),h):(c(288),h=o(s,n,r,0,ut,wt,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==st?w.Le="oversubscribed distance tree":h==it?(w.Le="incomplete distance tree",h=st):-4!=h&&(w.Le="empty distance tree with lengths",h=st),h):0)}}function dt(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15,k=a[z+2]+(w&ot[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],16&u){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(64&u)return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st;f+=a[z+2],f+=w&ot[u],z=3*(l+f),u=a[z]}break}if(64&u)return 32&u?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,st);if(f+=a[z+2],f+=w&ot[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,A=0,_=0;for(_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,m=p(u,w,r,h,s,d,e,y),_=y.nt,v=y.We,x=e.ot,A=e.ct,S=e.write,z=SA;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>>=n[g+1],A-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(16&k){a=15&k,i=n[g+2],t=2;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}if(32&k){t=7;break}return t=9,y.Le="invalid literal/length code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 2:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=n[g+1],A-=n[g+1],k=n[g],16&k){a=15&k,l=n[g+2],t=4;break}if(!(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=st,e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);case 4:for(b=a;b>A;){if(0===v)return e.ot=x,e.ct=A,y.We=v,y.qe+=_-y.nt,y.nt=_,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(_++))<>=b,A-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(A-=8,v++,_--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ht.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=ct,r[0]=ft,0);const pt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function yt(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new dt;let h=0,d=new f(4320);const p=new ht;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==it&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ht.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[pt[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==st&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&ot[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=st,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,A=[],_=[],I=[],P=[],A[0]=9,_[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,A,_,I,P,d,e),0!=i)return i==st&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(A[0],_[0],d,I[0],d,P[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const mt=13,bt=[0,0,255,255];function gt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):rt}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),rt):(e.zt=r,n.gt.kt=new yt(n,1<{let n,r;if(!e||!e.gt||!e.et)return rt;const s=e.gt;for(t=4==t?it:0,n=it;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=mt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=mt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=mt,e.Le="incorrect header check",s.marker=5;break}if(!(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=mt,e.Le="need dictionary",s.marker=0,rt;case 7:if(n=s.kt.ut(e,n),n==st){s.mode=mt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case mt:return st;default:return rt}},e._t=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return rt;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return rt;const c=e.gt;if(c.mode!=mt&&(c.mode=mt,c.marker=0),0===(n=e.We))return it;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==bt[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?st:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Pt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():rt}function kt(){}function vt(e){const t=new kt,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t.At(0),c&&a===it){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}kt.prototype={xt(e){const t=this;return t.gt=new gt,e||(e=15),t.gt.xt(t,e)},At(e){const t=this;return t.gt?t.gt.At(t,e):rt},Ct(){const e=this;if(!e.gt)return rt;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):rt},_t(e,t){const n=this;return n.gt?n.gt._t(n,e,t):rt},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=nt,self.Inflate=vt};\n',r=()=>t.useDataURI?"data:text/javascript,"+encodeURIComponent(n):URL.createObjectURL(new Blob([n],{type:"text/javascript"}));se({workerScripts:{inflate:[r],deflate:[r]}})})(),se({Deflate:function(e){const t=new w,n=(r=e&&e.chunkSize?e.chunkSize:65536)+5*(Math.floor(r/16383)+1);var r;const i=new Uint8Array(n);let s=e?e.level:-1;void 0===s&&(s=-1),t.deflateInit(s),t.next_out=i,this.append=(e,r)=>{let s,a,o=0,c=0,l=0;const d=[];if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,s=t.deflate(0),0!=s)throw Error("deflating: "+t.msg);t.next_out_index&&(t.next_out_index==n?d.push(new Uint8Array(i)):d.push(i.subarray(0,t.next_out_index))),l+=t.next_out_index,r&&t.next_in_index>0&&t.next_in_index!=o&&(r(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return d.length>1?(a=new Uint8Array(l),d.forEach((e=>{a.set(e,c),c+=e.length}))):a=d[0]?new Uint8Array(d[0]):new Uint8Array,a}},this.flush=()=>{let e,r,s=0,a=0;const o=[];do{if(t.next_out_index=0,t.avail_out=n,e=t.deflate(4),1!=e&&0!=e)throw Error("deflating: "+t.msg);n-t.avail_out>0&&o.push(i.slice(0,t.next_out_index)),a+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new Uint8Array(a),o.forEach((e=>{r.set(e,s),s+=e.length})),r}},Inflate:function(e){const t=new q,n=e&&e.chunkSize?Math.floor(2*e.chunkSize):131072,r=new Uint8Array(n);let i=!1;t.inflateInit(),t.next_out=r,this.append=(e,s)=>{const a=[];let o,c,l=0,d=0,f=0;if(0!==e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=n,0!==t.avail_in||i||(t.next_in_index=0,i=!0),o=t.inflate(0),i&&o===b){if(0!==t.avail_in)throw Error("inflating: bad input")}else if(0!==o&&1!==o)throw Error("inflating: "+t.msg);if((i||1===o)&&t.avail_in===e.length)throw Error("inflating: bad input");t.next_out_index&&(t.next_out_index===n?a.push(new Uint8Array(r)):a.push(r.subarray(0,t.next_out_index))),f+=t.next_out_index,s&&t.next_in_index>0&&t.next_in_index!=l&&(s(t.next_in_index),l=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return a.length>1?(c=new Uint8Array(f),a.forEach((e=>{c.set(e,d),d+=e.length}))):c=a[0]?new Uint8Array(a[0]):new Uint8Array,c}},this.flush=()=>{t.inflateEnd()}}});export{Xt as BlobReader,Jt as BlobWriter,Kt as Data64URIReader,Gt as Data64URIWriter,Yn as ERR_BAD_FORMAT,er as ERR_CENTRAL_DIRECTORY_NOT_FOUND,zr as ERR_DUPLICATED_NAME,rr as ERR_ENCRYPTED,$n as ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND,Qn as ERR_EOCDR_NOT_FOUND,nr as ERR_EXTRAFIELD_ZIP64_NOT_FOUND,Rt as ERR_HTTP_RANGE,Ar as ERR_INVALID_COMMENT,Er as ERR_INVALID_ENCRYPTION_STRENGTH,Cr as ERR_INVALID_ENTRY_COMMENT,Dr as ERR_INVALID_ENTRY_NAME,Fr as ERR_INVALID_EXTRAFIELD_DATA,Wr as ERR_INVALID_EXTRAFIELD_TYPE,ve as ERR_INVALID_PASSWORD,ye as ERR_INVALID_SIGNATURE,Ur as ERR_INVALID_VERSION,Lt as ERR_ITERATOR_COMPLETED_TOO_SOON,tr as ERR_LOCAL_FILE_HEADER_NOT_FOUND,ar as ERR_SPLIT_ZIP_FILE,qr as ERR_UNDEFINED_UNCOMPRESSED_SIZE,sr as ERR_UNSUPPORTED_COMPRESSION,ir as ERR_UNSUPPORTED_ENCRYPTION,jr as ERR_UNSUPPORTED_FORMAT,mn as HttpRangeReader,pn as HttpReader,Vt as Reader,gn as SplitDataReader,xn as SplitDataWriter,kn as SplitZipReader,Sn as SplitZipWriter,Yt as TextReader,Qt as TextWriter,hn as Uint8ArrayReader,wn as Uint8ArrayWriter,Zt as Writer,fr as ZipReader,ur as ZipReaderStream,Lr as ZipWriter,Ir as ZipWriterStream,se as configure,ei as fs,le as getMimeType,qt as initShimAsyncCodec,jt as terminateWorkers};